Do not forget to put the disk back.

Signed-off-by: Roman Pen <[email protected]>
Cc: Gi-Oh Kim <[email protected]>
Cc: "Rafael J. Wysocki" <[email protected]>
Cc: Len Brown <[email protected]>
Cc: Pavel Machek <[email protected]>
Cc: [email protected]
Cc: [email protected]
---
 kernel/power/hibernate.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/kernel/power/hibernate.c b/kernel/power/hibernate.c
index b7342a2..1f53dc2 100644
--- a/kernel/power/hibernate.c
+++ b/kernel/power/hibernate.c
@@ -785,8 +785,11 @@ static int software_resume(void)
         */
        if (isdigit(resume_file[0]) && resume_wait) {
                int partno;
-               while (!get_gendisk(swsusp_resume_device, &partno))
+               struct gendisk *disk;
+
+               while (!(disk = get_gendisk(swsusp_resume_device, &partno)))
                        msleep(10);
+               put_gendisk(disk);
        }
 
        if (!swsusp_resume_device) {
-- 
2.6.2

Reply via email to