Messages in this thread | | | Date | Thu, 13 Feb 2003 14:46:30 +0100 | From | Pavel Machek <> | Subject | Re: Switch APIC (+nmi, +oprofile) to driver model |
| |
Hi!
> Here is my modified version of Pavel's latest patch to convert > apm/apic/nmi to the driver model. It's a minimalistic patch,
It looks good.
> intendended ONLY to convert the old-fashioned PM support code > to the driver model. It seems to work for me, except that > initiating a suspend (via apm --suspend) triggers a BUG_ON > somewhere in ide-disk.c, which prevents the suspend and causes a > hang at shutdown.
If you want to workaround that hang,
> @@ -1263,6 +1264,11 @@ > } > printk(KERN_CRIT "apm: suspend was vetoed, but suspending anyway.\n"); > } > + > + device_suspend(3, SUSPEND_NOTIFY); > + device_suspend(3, SUSPEND_SAVE_STATE); Kill these two lines ^
> + device_suspend(3, SUSPEND_DISABLE); > + > /* serialize with the timer interrupt */ > write_seqlock_irq(&xtime_lock); > > @@ -1283,6 +1289,8 @@ > if (err != APM_SUCCESS) > apm_error("suspend", err); > err = (err == APM_SUCCESS) ? 0 : -EIO; > + device_resume(RESUME_RESTORE_STATE); This line ^
> + device_resume(RESUME_ENABLE); > pm_send_all(PM_RESUME, (void *)0); > queue_event(APM_NORMAL_RESUME, NULL); > out: > @@ -1396,6 +1404,8 @@ > write_seqlock_irq(&xtime_lock); > set_time(); > write_sequnlock_irq(&xtime_lock); > + device_resume(RESUME_RESTORE_STATE); And this line ^.
Its not right thing to do, but it should make it work for you.
Pavel -- Casualities in World Trade Center: ~3k dead inside the building, cryptography in U.S.A. and free speech in Czech Republic. - 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/
| |