Re: swsusp broken

From: Pavel Machek (pavel_at_ucw.cz)
Date: 08/31/03

  • Next message: Joonas Koivunen: "O18.1int problems"
    Date:	Sun, 31 Aug 2003 23:02:42 +0200
    To: Mika Penttilä <mika.penttila@kolumbus.fi>
    
    

    Hi!

    > 2.6.0-test4 software suspend seems to be badly broken...looking at it
    > (relevant code included below), no wonder. pm_suspend_disk() calls
    > swsusp_save(), which is is essentially a nop. The intention was clearly
    > that after resume control would return from swsusp_save(), which isn't
    > the case, instead we return from swsusp_write(), and power down
    > again!!!

    If you want working swsusp/S3, go for -test3. This is known and
    Patrick is working on that... I hope we can just rollback
    powermanagment to -test3 state.

    > --------------------------------------------------------------------------
    > static int pm_suspend_disk(void)
    > {
    > int error;
    >
    > pr_debug("PM: Attempting to suspend to disk.\n");
    > if (pm_disk_mode == PM_DISK_FIRMWARE)
    > return pm_ops->enter(PM_SUSPEND_DISK);
    >
    > if (!have_swsusp)
    > return -EPERM;
    >
    > pr_debug("PM: snapshotting memory.\n");
    > in_suspend = 1;
    > if ((error = swsusp_save()))
    > goto Done;
    >
    > if (in_suspend) {
    > pr_debug("PM: writing image.\n");
    > error = swsusp_write();
    > if (!error)
    > error = power_down(pm_disk_mode);
    > pr_debug("PM: Power down failed.\n");
    > } else
    > pr_debug("PM: Image restored successfully.\n");
    > swsusp_free();
    > Done:
    > return error;
    > }
    > ----------------------------------------------------------------------------
    >
    > /**
    > * swsusp_save - Snapshot memory
    > */
    >
    > int swsusp_save(void)
    > {
    > #if defined (CONFIG_HIGHMEM) || defined (COFNIG_DISCONTIGMEM)
    > printk("swsusp is not supported with high- or discontig-mem.\n");
    > return -EPERM;
    > #endif
    > return 0;
    > }

    -- 
    When do you have a heart between your knees?
    [Johanka's followup: and *two* hearts?]
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at  http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at  http://www.tux.org/lkml/
    

  • Next message: Joonas Koivunen: "O18.1int problems"

    Relevant Pages