History

PM / hibernate: Move software_resume to late_initcall_sync

software_resume is being called after deferred_probe_initcall in drivers base. If the probing of the device that contains the resume image is deferred, and the system has been instructed to wait for it to show up, this wait will occur in software_resume. This causes a deadlock. Move software_resume into late_initcall_sync so that it happens after all the other late_initcalls.

Russ Dill committed 13 years ago

Commit d3c345d1 parent 7244cb61 file · +1 −1Browse files

Unified · Split

kernel/power/hibernate.c+1−1
@@ -846,7 +846,7 @@ static int software_resume(void) · 845 unmodified lines
846846 goto Finish;
847847 }
848848
849−late_initcall(software_resume);
849+late_initcall_sync(software_resume);
850850
851851
852852 static const char * const hibernation_modes[] = {