** Tags added: kernel-da-key -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1415178
Title: Kernel trace message when the ipr driver is rmmod from Ubuntu 14.10 guest (GTO - PCI Passthrough) Status in linux package in Ubuntu: New Bug description: pKVM version: [root@yangtze-lp1 ~]# cat /etc/issue IBM_PowerKVM release 2.1.1 build 10 alpha (pkvm2_1_1) Kernel \r on a \m (\l) Ubuntu version: root@ubuntushinner:~# uname -a Linux ubuntushinner 3.16.0-14-generic #20-Ubuntu SMP Sat Sep 6 23:45:12 UTC 2014 ppc64le ppc64le ppc64le GNU/Linux steps to reproduce: 1. rmmod the ipr driver and kernel traces are seen on the syslog. root@ubuntushinner:~# lsmod Module Size Used by pseries_rng 2849 0 ses 9046 0 enclosure 11198 1 ses rtc_generic 2249 0 ipr 140038 0 ohci_pci 6794 0 root@ubuntushinner:~# uname -a Linux ubuntushinner 3.16.0-14-generic #20-Ubuntu SMP Sat Sep 6 23:45:12 UTC 2014 ppc64le ppc64le ppc64le GNU/Linux root@ubuntushinner:~# rmmod ipr root@ubuntushinner:~# lsscsi [0:0:0:0] disk QEMU QEMU HARDDISK 2.0. /dev/sda [0:0:0:1] cd/dvd QEMU QEMU CD-ROM 2.0. /dev/sr0 syslog: Sep 9 02:57:57 ubuntushinner kernel: [ 576.546878] kernfs: can not remove 'device', no directory Sep 9 02:57:57 ubuntushinner kernel: [ 576.546903] ------------[ cut here ]------------ Sep 9 02:57:57 ubuntushinner kernel: [ 576.546906] WARNING: at /build/buildd/linux-3.16.0/fs/kernfs/dir.c:1220 Sep 9 02:57:57 ubuntushinner kernel: [ 576.546908] Modules linked in: pseries_rng ses enclosure rtc_generic ipr(-) ohci_pci Sep 9 02:57:57 ubuntushinner kernel: [ 576.546922] CPU: 1 PID: 3537 Comm: rmmod Not tainted 3.16.0-14-generic #20-Ubuntu Sep 9 02:57:57 ubuntushinner kernel: [ 576.546926] task: c0000003ebad6830 ti: c0000003e5da8000 task.ti: c0000003e5da8000 Sep 9 02:57:57 ubuntushinner kernel: [ 576.546928] NIP: c000000000350c34 LR: c000000000350c30 CTR: c000000000517a60 Sep 9 02:57:57 ubuntushinner kernel: [ 576.546931] REGS: c0000003e5dab380 TRAP: 0700 Not tainted (3.16.0-14-generic) Sep 9 02:57:57 ubuntushinner kernel: [ 576.546932] MSR: 8000000100029033 <SF,EE,ME,IR,DR,RI,LE> CR: 28088844 XER: 20000000 Sep 9 02:57:57 ubuntushinner kernel: [ 576.546942] CFAR: c0000000009fd270 SOFTE: 1 Sep 9 02:57:57 ubuntushinner kernel: [ 576.546942] GPR00: c000000000350c30 c0000003e5dab600 c0000000013d49e0 000000000000002d Sep 9 02:57:57 ubuntushinner kernel: [ 576.546942] GPR04: c000000001845db0 c000000001856618 0000000000000175 0000000000000175 Sep 9 02:57:57 ubuntushinner kernel: [ 576.546942] GPR08: c000000000e449e0 0000000000000000 0000000000000000 c000000000c41b80 Sep 9 02:57:57 ubuntushinner kernel: [ 576.546942] GPR12: 0000000000008800 c00000000fb80900 0000000000000000 00000100311e01f0 Sep 9 02:57:57 ubuntushinner kernel: [ 576.546942] GPR16: 0000000000000000 000000004c7133a0 000000004c713358 0000000000000000 Sep 9 02:57:57 ubuntushinner kernel: [ 576.546942] GPR20: 000000004c713380 000000004c7133b8 0000000000000000 000000004c713398 Sep 9 02:57:57 ubuntushinner kernel: [ 576.546942] GPR24: 0000000000000000 0000000000000001 00003fffe6f71750 c0000003e4e01d28 Sep 9 02:57:57 ubuntushinner kernel: [ 576.546942] GPR28: 0000000000000000 d000000005fe18e0 c0000003e4e01d18 0000000000000000 Sep 9 02:57:57 ubuntushinner kernel: [ 576.546980] NIP [c000000000350c34] kernfs_remove_by_name_ns+0xe4/0xf0 Sep 9 02:57:57 ubuntushinner kernel: [ 576.546984] LR [c000000000350c30] kernfs_remove_by_name_ns+0xe0/0xf0 Sep 9 02:57:57 ubuntushinner kernel: [ 576.546987] Call Trace: Sep 9 02:57:57 ubuntushinner kernel: [ 576.546990] [c0000003e5dab600] [c000000000350c30] kernfs_remove_by_name_ns+0xe0/0xf0 (unreliable) Sep 9 02:57:57 ubuntushinner kernel: [ 576.546995] [c0000003e5dab680] [c0000000003542c0] sysfs_remove_link+0x40/0x90 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547001] [c0000003e5dab6c0] [d000000005fe0de0] enclosure_remove_links.part.2+0x80/0xb0 [enclosure] Sep 9 02:57:57 ubuntushinner kernel: [ 576.547005] [c0000003e5dab730] [d000000005fe0e54] enclosure_component_release+0x44/0x70 [enclosure] Sep 9 02:57:57 ubuntushinner kernel: [ 576.547012] [c0000003e5dab760] [c000000000639360] device_release+0x60/0xf0 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547018] [c0000003e5dab7e0] [c00000000050b73c] kobject_release+0xdc/0x250 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547022] [c0000003e5dab870] [c000000000639f3c] device_unregister+0x4c/0xb0 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547025] [c0000003e5dab8e0] [d000000005fe0810] enclosure_unregister+0xb0/0x100 [enclosure] Sep 9 02:57:57 ubuntushinner kernel: [ 576.547029] [c0000003e5dab920] [d0000000060a0178] ses_intf_remove+0xb8/0x160 [ses] Sep 9 02:57:57 ubuntushinner kernel: [ 576.547032] [c0000003e5dab950] [c000000000639d84] device_del+0x104/0x270 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547036] [c0000003e5dab990] [c000000000639f2c] device_unregister+0x3c/0xb0 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547041] [c0000003e5daba00] [c0000000006bb8b4] __scsi_remove_device+0x124/0x150 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547044] [c0000003e5daba30] [c0000000006b8834] scsi_forget_host+0xa4/0xb0 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547048] [c0000003e5daba60] [c0000000006a88e4] scsi_remove_host+0xa4/0x1b0 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547054] [c0000003e5dabaa0] [d000000003b74bd0] ipr_remove+0x80/0x100 [ipr] Sep 9 02:57:57 ubuntushinner kernel: [ 576.547058] [c0000003e5dabb20] [c000000000567bb0] pci_device_remove+0x70/0x110 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547061] [c0000003e5dabb60] [c00000000063ff9c] __device_release_driver+0xac/0x130 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547064] [c0000003e5dabb90] [c000000000640e08] driver_detach+0x148/0x190 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547067] [c0000003e5dabbe0] [c00000000063fa28] bus_remove_driver+0x98/0x150 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547070] [c0000003e5dabc50] [c000000000641aac] driver_unregister+0x4c/0x80 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547074] [c0000003e5dabcc0] [c00000000056613c] pci_unregister_driver+0x4c/0x120 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547078] [c0000003e5dabd10] [d000000003b7573c] ipr_exit+0x34/0x1f18 [ipr] Sep 9 02:57:57 ubuntushinner kernel: [ 576.547083] [c0000003e5dabd40] [c00000000015ddc8] SyS_delete_module+0x228/0x280 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547087] [c0000003e5dabe30] [c00000000000a17c] syscall_exit+0x0/0x7c Sep 9 02:57:57 ubuntushinner kernel: [ 576.547089] Instruction dump: Sep 9 02:57:57 ubuntushinner kernel: [ 576.547090] e8010010 eb81ffe0 eba1ffe8 ebc1fff0 7c0803a6 ebe1fff8 4e800020 3c62ff89 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547095] 7fa4eb78 38638f40 486ac5b9 60000000 <0fe00000> 3860fffe 4bffff94 3c4c0108 Sep 9 02:57:57 ubuntushinner kernel: [ 576.547101] ---[ end trace 4a44cd6dfffd2bb9 ]--- Guest xml: [root@yangtze-lp1 ~]# virsh dumpxml GManu_Ubuntu_14_10_GTO <domain type='kvm' id='11'> <name>GManu_Ubuntu_14_10_GTO</name> <uuid>22a274f5-e9bc-4189-b4bb-5cf7f848889e</uuid> <memory unit='KiB'>17532928</memory> <currentMemory unit='KiB'>17532672</currentMemory> <vcpu placement='static'>16</vcpu> <resource> <partition>/machine</partition> </resource> <os> <type arch='ppc64' machine='pseries'>hvm</type> <boot dev='hd'/> <boot dev='cdrom'/> <boot dev='network'/> <bootmenu enable='yes'/> </os> <features> <acpi/> <apic/> <pae/> </features> <clock offset='utc'/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>restart</on_crash> <devices> <emulator>/usr/bin/qemu-kvm</emulator> <disk type='file' device='disk'> <driver name='qemu' type='qcow2'/> <source file='/var/lib/libvirt/images/manu/Ubunut_14_10_shinner.qcow2'/> <backingStore/> <target dev='sda' bus='scsi'/> <alias name='scsi0-0-0-0'/> <address type='drive' controller='0' bus='0' target='0' unit='0'/> </disk> <disk type='file' device='cdrom'> <driver name='qemu' type='raw'/> <source file='/var/lib/libvirt/images/manu/utopic-server-ppc64el.iso'/> <backingStore/> <target dev='sdb' bus='scsi'/> <readonly/> <alias name='scsi0-0-0-1'/> <address type='drive' controller='0' bus='0' target='0' unit='1'/> </disk> <controller type='usb' index='0'> <alias name='usb0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/> </controller> <controller type='pci' index='0' model='pci-root'> <alias name='pci.0'/> </controller> <controller type='scsi' index='0'> <alias name='scsi0'/> <address type='spapr-vio' reg='0x2000'/> </controller> <controller type='scsi' index='1'> <alias name='scsi1'/> <address type='spapr-vio' reg='0x3000'/> </controller> <interface type='bridge'> <mac address='52:54:00:d7:00:34'/> <source bridge='virbr0'/> <target dev='vnet1'/> <model type='virtio'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x0'/> </interface> <serial type='pty'> <source path='/dev/pts/0'/> <target port='0'/> <alias name='serial0'/> <address type='spapr-vio' reg='0x30000000'/> </serial> <console type='pty' tty='/dev/pts/0'> <source path='/dev/pts/0'/> <target type='serial' port='0'/> <alias name='serial0'/> <address type='spapr-vio' reg='0x30000000'/> </console> <hostdev mode='subsystem' type='pci' managed='yes'> <driver name='vfio'/> <source> <address domain='0x0000' bus='0x01' slot='0x00' function='0x0'/> </source> <alias name='hostdev0'/> </hostdev> <memballoon model='virtio'> <alias name='balloon0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/> </memballoon> </devices> <seclabel type='dynamic' model='selinux' relabel='yes'> <label>system_u:system_r:svirt_t:s0:c16,c940</label> <imagelabel>system_u:object_r:svirt_image_t:s0:c16,c940</imagelabel> </seclabel> </domain> We saw the similar issue when we tried to "rmmod ipr" with daul controllers configuration. Looks his guest only has one GTO adapter. Also I checked the latest kernel source code for drivers/misc/enclosure.c, it included the fix patch for dual controller case. static void enclosure_remove_links(struct enclosure_component *cdev) { char name[ENCLOSURE_NAME_SIZE]; /* * In odd circumstances, like multipath devices, something else may * already have removed the links, so check for this condition first. */ if (!cdev->dev->kobj.sd) -------------> fix patch for dual controllers return; enclosure_link_name(cdev, name); sysfs_remove_link(&cdev->dev->kobj, name); sysfs_remove_link(&cdev->cdev.kobj, "device"); } Thanks, Wendy I re-created the issue on another guest. Looks the following patch caused the issue. I need to re-build the kernel and do more debug. http://git.kernel.org/cgit/linux/kernel/git/jejb/scsi.git/commit/fs/sysfs/symlink.c?h =for-next&id=879f40d193bb3c6c13930e88e3e9d5d7baf84d19 Thanks, Wendy Here is the upstream link for the patch: http://marc.info/?l=linux-scsi&m=142145523316373&w=2 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1415178/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp