noresume breaks next suspend [was Re: 2.6.12-rc1 swsusp broken]

From: Pavel Machek
Date: Thu Mar 31 2005 - 17:32:19 EST


Hi!

> > Yes! With this it works ok.
> >
> > > Also, could you please try sticking psmouse_reset(psmouse) call at the
> > > beginning of drivers/input/mouse/alps.c::alps_reconnect() and see if
> > > it can suspend _without_ the patch above.
> >
>
> Both patches are working for me (Dell D600). before i was unable to
> suspend to disk on this laptop (it was stuck in alps code).
>
> By the way, i have an unrelated problem:
> if the kernel was booted with the "noresume" option, it cannot be
> suspended, it fails with:
>
> swsusp: FATAL: cannot find swap device, try swapon -a!

Uh, okay, logic error, probably introduced by resume-from-initrd
patch. Does this fix it?

OTOH, perhaps refusing suspend is right thing to do. If user is
running in "safe mode" (with noresume), we don't want him to be able
to suspend...
Pavel

--- clean/kernel/power/swsusp.c 2005-03-19 00:32:32.000000000 +0100
+++ linux/kernel/power/swsusp.c 2005-04-01 00:23:15.000000000 +0200
@@ -1376,16 +1371,6 @@
{
int error;

- if (!swsusp_resume_device) {
- if (!strlen(resume_file))
- return -ENOENT;
- swsusp_resume_device = name_to_dev_t(resume_file);
- pr_debug("swsusp: Resume From Partition %s\n", resume_file);
- } else {
- pr_debug("swsusp: Resume From Partition %d:%d\n",
- MAJOR(swsusp_resume_device), MINOR(swsusp_resume_device));
- }
-
resume_bdev = open_by_devnum(swsusp_resume_device, FMODE_READ);
if (!IS_ERR(resume_bdev)) {
set_blocksize(resume_bdev, PAGE_SIZE);
--- clean/kernel/power/disk.c 2005-03-19 00:32:32.000000000 +0100
+++ linux/kernel/power/disk.c 2005-04-01 00:23:09.000000000 +0200
@@ -233,6 +237,16 @@
{
int error;

+ if (!swsusp_resume_device) {
+ if (!strlen(resume_file))
+ return -ENOENT;
+ swsusp_resume_device = name_to_dev_t(resume_file);
+ pr_debug("swsusp: Resume From Partition %s\n", resume_file);
+ } else {
+ pr_debug("swsusp: Resume From Partition %d:%d\n",
+ MAJOR(swsusp_resume_device), MINOR(swsusp_resume_device));
+ }
+
if (noresume) {
/**
* FIXME: If noresume is specified, we need to find the partition


--
People were complaining that M$ turns users into beta-testers...
...jr ghea gurz vagb qrirybcref, naq gurl frrz gb yvxr vg gung jnl!
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/