OK, I've tried my scenario again with the latest updates installed. I now have kernel 2.6.32-21-generic. I'm still able to induce a kernel panic, although It doesn't seem to happen every time. I'm using an SD card that is encrypted (using luks) and I've got Gnome to permanently remember the encryption key, so I can just insert the card without having to type the password. So, my sequence of events is: * Insert SD card. The icon for the card appears on the desktop and I can access it fine. * Suspend and then resume the laptop. At this point the dialog asking for the encryption password pops up. This shouldn't happen as Gnome should be remembering the encryption key. * Enter the password and click "connect". I then get a popup saying that the luks device in /dev/mapper already exists. * Click OK to cancel the popup. At this point there is stil an icon for the SD card on the desktop. It still seems to be a functional mount point, and I can still browse files on it. * Right click and unmount the card. This is the point that a kernel panic might occur (pasted below). In any case, there is a luks device left in /dev/mapper, and the only way I could get rid of it is by doing a "dmsetup remove". I had to repeat the cycle about three times before I eventually oopsed the kernel. Kernel panic log: Apr 28 19:57:27 cygnus kernel: [ 3200.568290] Hardware name: HP Compaq nx8220 (PY518ET#ABU) Apr 28 19:57:27 cygnus kernel: [ 3200.568294] Modules linked in: usb_storage sha256_generic mmc_block tifm_sd michael_mic arc4 lib80211_crypt_tkip lib80211_crypt_ccmp aes_i586 aes_generic rfcomm binfmt_misc sco bridge stp bnep l2cap vboxdrv dm_crypt joydev snd_intel8x0 snd_ac97_codec ac97_bus snd_pcm_oss snd_mixer_oss pcmcia snd_pcm snd_seq_dummy snd_seq_oss snd_seq_midi snd_rawmidi snd_seq_midi_event snd_seq snd_timer snd_seq_device yenta_socket tifm_7xx1 ipw2200 sdhci_pci ppdev rsrc_nonstatic btusb bluetooth snd sdhci libipw tifm_core parport_pc irda crc_ccitt pcmcia_core psmouse serio_raw led_class lib80211 soundcore snd_page_alloc lp parport fbcon tileblit font bitblit softcursor vga16fb vgastate radeon ttm drm_kms_helper ohci1394 drm ieee1394 intel_agp tg3 agpgart i2c_algo_bit video output Apr 28 19:57:27 cygnus kernel: [ 3200.568438] Pid: 11223, comm: umount Not tainted 2.6.32-21-generic #32-Ubuntu Apr 28 19:57:27 cygnus kernel: [ 3200.568444] Call Trace: Apr 28 19:57:27 cygnus kernel: [ 3200.568456] [] warn_slowpath_common+0x72/0xa0 Apr 28 19:57:27 cygnus kernel: [ 3200.568465] [] ? mark_buffer_dirty+0x70/0x90 Apr 28 19:57:27 cygnus kernel: [ 3200.568473] [] ? mark_buffer_dirty+0x70/0x90 Apr 28 19:57:27 cygnus kernel: [ 3200.568481] [] warn_slowpath_null+0x1a/0x20 Apr 28 19:57:27 cygnus kernel: [ 3200.568489] [] mark_buffer_dirty+0x70/0x90 Apr 28 19:57:27 cygnus kernel: [ 3200.568499] [] ext3_put_super+0x165/0x240 Apr 28 19:57:27 cygnus kernel: [ 3200.568509] [] ? invalidate_inodes+0xfe/0x120 Apr 28 19:57:27 cygnus kernel: [ 3200.568519] [] ? vfs_quota_off+0x0/0x20 Apr 28 19:57:27 cygnus kernel: [ 3200.568528] [] generic_shutdown_super+0x4d/0xe0 Apr 28 19:57:27 cygnus kernel: [ 3200.568536] [] kill_block_super+0x2a/0x50 Apr 28 19:57:27 cygnus kernel: [ 3200.568544] [] deactivate_super+0x64/0x90 Apr 28 19:57:27 cygnus kernel: [ 3200.568553] [] mntput_no_expire+0x8f/0xe0 Apr 28 19:57:27 cygnus kernel: [ 3200.568561] [] sys_umount+0x47/0xa0 Apr 28 19:57:27 cygnus kernel: [ 3200.568569] [] sys_oldumount+0x1e/0x20 Apr 28 19:57:27 cygnus kernel: [ 3200.568577] [] syscall_call+0x7/0xb Apr 28 19:57:27 cygnus kernel: [ 3200.568584] ---[ end trace d47954e5bc183230 ]--- Apr 28 19:57:27 cygnus kernel: [ 3200.568790] __ratelimit: 3 callbacks suppressed Apr 28 19:57:27 cygnus kernel: [ 3200.568804] lost page write due to I/O error on dm-0