Here are my lshal before and after hibernation. I unplugged while hibernated and after wakeup it still says plugged-in. And here is the diff for quick check (diff before after): 39a40,84 > udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_3' > info.udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_3' (string) > input.product = 'Lid Switch' (string) > info.product = 'Lid Switch' (string) > linux.device_file = '/dev/input/event6' (string) > linux.subsystem = 'input' (string) > linux.hotplug_type = 2 (0x2) (int) > input.device = '/dev/input/event6' (string) > info.capabilities = {'input'} (string list) > info.category = 'input' (string) > info.parent = '/org/freedesktop/Hal/devices/computer' (string) > linux.sysfs_path = '/sys/class/input/input11/event6' (string) > > udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_2' > info.udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_2' (string) > button.has_state = false (bool) > button.type = '' (string) > info.addons = {'hald-addon-keyboard'} (string list) > input.product = 'Power Button (FF)' (string) > info.product = 'Power Button (FF)' (string) > linux.device_file = '/dev/input/event5' (string) > linux.subsystem = 'input' (string) > linux.hotplug_type = 2 (0x2) (int) > input.device = '/dev/input/event5' (string) > info.capabilities = {'input', 'input.keyboard', 'button'} (string list) > info.category = 'input' (string) > info.parent = '/org/freedesktop/Hal/devices/computer' (string) > linux.sysfs_path = '/sys/class/input/input10/event5' (string) > > udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_1' > info.udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_1' (string) > button.has_state = false (bool) > button.type = '' (string) > info.addons = {'hald-addon-keyboard'} (string list) > input.product = 'Power Button (CM)' (string) > info.product = 'Power Button (CM)' (string) > linux.device_file = '/dev/input/event7' (string) > linux.subsystem = 'input' (string) > linux.hotplug_type = 2 (0x2) (int) > input.device = '/dev/input/event7' (string) > info.capabilities = {'input', 'input.keyboard', 'button'} (string list) > info.category = 'input' (string) > info.parent = '/org/freedesktop/Hal/devices/computer' (string) > linux.sysfs_path = '/sys/class/input/input12/event7' (string) > 236,280d280 < udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_3' < info.udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_3' (string) < button.has_state = false (bool) < button.type = '' (string) < info.addons = {'hald-addon-keyboard'} (string list) < input.product = 'Power Button (CM)' (string) < info.product = 'Power Button (CM)' (string) < linux.device_file = '/dev/input/event7' (string) < linux.subsystem = 'input' (string) < linux.hotplug_type = 2 (0x2) (int) < input.device = '/dev/input/event7' (string) < info.capabilities = {'input', 'input.keyboard', 'button'} (string list) < info.category = 'input' (string) < info.parent = '/org/freedesktop/Hal/devices/computer' (string) < linux.sysfs_path = '/sys/class/input/input7/event7' (string) < < udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_2' < info.udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_2' (string) < input.product = 'Lid Switch' (string) < info.product = 'Lid Switch' (string) < linux.device_file = '/dev/input/event6' (string) < linux.subsystem = 'input' (string) < linux.hotplug_type = 2 (0x2) (int) < input.device = '/dev/input/event6' (string) < info.capabilities = {'input'} (string list) < info.category = 'input' (string) < info.parent = '/org/freedesktop/Hal/devices/computer' (string) < linux.sysfs_path = '/sys/class/input/input6/event6' (string) < < udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_1' < info.udi = '/org/freedesktop/Hal/devices/computer_logicaldev_input_1' (string) < button.has_state = false (bool) < button.type = '' (string) < info.addons = {'hald-addon-keyboard'} (string list) < input.product = 'Power Button (FF)' (string) < info.product = 'Power Button (FF)' (string) < linux.device_file = '/dev/input/event5' (string) < linux.subsystem = 'input' (string) < linux.hotplug_type = 2 (0x2) (int) < input.device = '/dev/input/event5' (string) < info.capabilities = {'input', 'input.keyboard', 'button'} (string list) < info.category = 'input' (string) < info.parent = '/org/freedesktop/Hal/devices/computer' (string) < linux.sysfs_path = '/sys/class/input/input5/event5' (string) < 1372c1372 < net.linux.ifindex = 2 (0x2) (int) --- > net.linux.ifindex = 3 (0x3) (int) 1657c1657 < usb_device.linux.device_number = 2 (0x2) (int) --- > usb_device.linux.device_number = 3 (0x3) (int) 1682c1682 < linux.device_file = '/dev/bus/usb/003/002' (string) --- > linux.device_file = '/dev/bus/usb/003/003' (string) 1685c1685 < usbraw.device = '/dev/bus/usb/003/002' (string) --- > usbraw.device = '/dev/bus/usb/003/003' (string) 1690c1690 < linux.sysfs_path = '/sys/class/usb_device/usbdev3.2' (string) --- > linux.sysfs_path = '/sys/class/usb_device/usbdev3.3' (string) 1716c1716 < usb.linux.device_number = 2 (0x2) (int) --- > usb.linux.device_number = 3 (0x3) (int) 1739c1739 < linux.sysfs_path = '/sys/class/input/input8/event8' (string) --- > linux.sysfs_path = '/sys/class/input/input9/event8' (string) 1846,1857d1845 < udi = '/org/freedesktop/Hal/devices/usb_device_0_0_0000_00_1d_1_usbraw' < info.udi = '/org/freedesktop/Hal/devices/usb_device_0_0_0000_00_1d_1_usbraw' (string) < linux.device_file = '/dev/bus/usb/002/001' (string) < linux.subsystem = 'usb_device' (string) < linux.hotplug_type = 2 (0x2) (int) < usbraw.device = '/dev/bus/usb/002/001' (string) < info.product = 'USB Raw Device Access' (string) < info.capabilities = {'usbraw'} (string list) < info.category = 'usbraw' (string) < info.parent = '/org/freedesktop/Hal/devices/usb_device_0_0_0000_00_1d_1' (string) < linux.sysfs_path = '/sys/class/usb_device/usbdev2.1' (string) < 1867c1855 < usb_device.linux.device_number = 3 (0x3) (int) --- > usb_device.linux.device_number = 4 (0x4) (int) 1892c1880 < linux.device_file = '/dev/bus/usb/002/003' (string) --- > linux.device_file = '/dev/bus/usb/002/004' (string) 1895c1883 < usbraw.device = '/dev/bus/usb/002/003' (string) --- > usbraw.device = '/dev/bus/usb/002/004' (string) 1900c1888 < linux.sysfs_path = '/sys/class/usb_device/usbdev2.3' (string) --- > linux.sysfs_path = '/sys/class/usb_device/usbdev2.4' (string) 1925c1913 < usb.linux.device_number = 3 (0x3) (int) --- > usb.linux.device_number = 4 (0x4) (int) 1935a1924,1935 > udi = '/org/freedesktop/Hal/devices/usb_device_0_0_0000_00_1d_1_usbraw' > info.udi = '/org/freedesktop/Hal/devices/usb_device_0_0_0000_00_1d_1_usbraw' (string) > linux.device_file = '/dev/bus/usb/002/001' (string) > linux.subsystem = 'usb_device' (string) > linux.hotplug_type = 2 (0x2) (int) > usbraw.device = '/dev/bus/usb/002/001' (string) > info.product = 'USB Raw Device Access' (string) > info.capabilities = {'usbraw'} (string list) > info.category = 'usbraw' (string) > info.parent = '/org/freedesktop/Hal/devices/usb_device_0_0_0000_00_1d_1' (string) > linux.sysfs_path = '/sys/class/usb_device/usbdev2.1' (string) >