On Mon, Oct 20, 2003 at 03:56:43PM -0500, Rob Landley scribbled: > On Monday 20 October 2003 05:45, Voicu Liviu wrote: > > Rob Landley wrote: > > >Good grief. It worked. > > > > > >echo -n disk > /sys/power/state > > > > How long does it take to do suspend to disk? [snip] > you resume (ouch). And because of that, things that should time out and > renew themselves (like dhcp leases) have to be thumped manually. > > But other than that... :) I've had some problems with swsusp, alas. Suspending worked perfectly, but resuming resulted in a series of call traces and the network interfaces being unreachable: PM: Image restored successfully. bad: scheduling while atomic! Call Trace: [] schedule+0x56c/0x580 [] pci_read+0x3d/0x50 [] schedule_timeout+0x63/0xc0 [] process_timeout+0x0/0x10 [] pci_set_power_state+0xd3/0x160 [] yenta_dev_resume+0x2d/0xc0 [yenta_socket] [] pci_device_resume+0x24/0x30 [] resume_device+0x27/0x30 [] dpm_resume+0x34/0x60 [] device_resume+0x19/0x30 [] finish+0x8/0x40 [] pmdisk_free+0x5/0x40 [] pm_suspend_disk+0x7e/0xc0 [] enter_state+0xa5/0xb0 [] state_store+0x67/0x71 [] subsys_attr_store+0x3a/0x40 [] flush_write_buffer+0x3b/0x50 [] sysfs_write_file+0x60/0x70 [] sysfs_write_file+0x0/0x70 [] vfs_write+0xd8/0x140 [] sys_write+0x42/0x70 [] syscall_call+0x7/0xb [repeated several times] hda: Wakeup request inited, waiting for !BSY... hda: start_power_step(step: 1000) blk: queue c13c2400, I/O limit 4095Mb (mask 0xffffffff) hda: completing PM request, resume hdc: Wakeup request inited, waiting for !BSY... hdc: start_power_step(step: 1000) hdc: completing PM request, resume Restarting tasks...<3>bad: scheduling while atomic! Call Trace: [] schedule+0x56c/0x580 [] wake_up_process+0x26/0x30 [] thaw_processes+0xa4/0x100 [] acpi_pm_finish+0x14/0x36 [] finish+0x16/0x40 [] pm_suspend_disk+0x7e/0xc0 [] enter_state+0xa5/0xb0 [] state_store+0x67/0x71 [] subsys_attr_store+0x3a/0x40 [] flush_write_buffer+0x3b/0x50 [] sysfs_write_file+0x60/0x70 [] sysfs_write_file+0x0/0x70 [] vfs_write+0xd8/0x140 [] sys_write+0x42/0x70 [] syscall_call+0x7/0xb done bad: scheduling while atomic! Call Trace: [] schedule+0x56c/0x580 [] sys_write+0x42/0x70 [] work_resched+0x5/0x16 bad: scheduling while atomic! Call Trace: [] schedule+0x56c/0x580 [] __is_prefetch+0x87/0x210 [] do_page_fault+0x113/0x50c [] printk+0x12c/0x180 [] sys_sched_yield+0x87/0xd0 [] coredump_wait+0x38/0xa0 [] __print_symbol+0x12c/0x170 [] do_coredump+0xf0/0x1dd [] send_signal+0x94/0x150 [] error_code+0x2d/0x38 [] specific_send_sig_info+0x93/0x100 [] __dequeue_signal+0xe5/0x190 [] dequeue_signal+0x35/0x90 [] get_signal_to_deliver+0x267/0x350 [] do_signal+0x90/0x120 [] work_resched+0x5/0x16 [] recalc_task_prio+0x8e/0x1b0 [] schedule+0x2f9/0x580 [] do_page_fault+0x0/0x50c [] do_notify_resume+0x37/0x3c [] work_notifysig+0x13/0x15 note: bash[594] exited with preempt_count 1 After that the system came back to its saved state, but I had to take the network interfaces down and bring them up in order for the network to be working back again. Config attached, kernel was vanilla test8 regards, marek