Hi Seth, No, I've not reported this issue to the upstream yet. I guess somebody from our company, who works on NVMe-OF related code in the kernel, should do this.
To be honest I'm not sure that my fix is technically correct and takes into account all dependencies. So that I'm fine with reverting of 32c662c58a9b9d0c99e713a14ca323a9a91c73a0. Thank you. -- 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/1759893 Title: [18.04][config] regression: nvme and nvme_core couldn't be built as modules starting 4.15-rc2 Status in linux package in Ubuntu: Fix Committed Status in linux source package in Bionic: Fix Committed Bug description: Some regression was introduced into NVME-related kernel configuration by 32c662c58a9b9 into 4.15-rc2, which was pulled later into ubuntu- bionic.git In result, "nvme" and "nvme_core" drivers are built into the kernel, we can't build them as modules. It caused incompatibility of NMVe-OF target and initiator modules (nvmet, nvme-rdma) installed by Mellanox OFED with the inbox "nvme" driver. Root cause analysis. In the drivers/lightnvm/Kconfig file - kernel configuration for the OpenChannel SSDs (lightnvm) we have: menuconfig NVM bool "Open-Channel SSD target support" depends on BLOCK && HAS_DMA && PCI select BLK_DEV_NVME help Say Y here to get to enable Open-channel SSDs. ... It means that BLK_DEV_NVME is selected to "y" when NVM (CONFIG_NVM) is selected. NVM parameter is 2 state (on / off, i.e. "y" or "no"), it couldn't be built as a module. So that it triggers the change of BLK_DEV_NAME=y and NVME_CORE=y $ git blame drivers/lightnvm/Kconfig 32c662c58a9b9 (Rakesh Pandit 2017-10-13 14:45:55 +0200 7) depends on BLOCK && HAS_DMA && PCI 32c662c58a9b9 (Rakesh Pandit 2017-10-13 14:45:55 +0200 8) select BLK_DEV_NVME commit 32c662c58a9b9d0c99e713a14ca323a9a91c73a0 Author: Rakesh Pandit <rak...@tuxera.com> Date: Fri Oct 13 14:45:55 2017 +0200 lightnvm: include NVM Express driver if OCSSD is selected for build Because NVM needs BLK_DEV_NVME, select it automatically if we mark NVM in config file before building kernel. Also append PCI to depends as select doesn't automatically add dependencies. Signed-off-by: Rakesh Pandit <rak...@tuxera.com> Signed-off-by: Matias Bjørling <m...@bjorling.me> Signed-off-by: Jens Axboe <ax...@kernel.dk> drivers/lightnvm/Kconfig | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) $ git diff 32c662c58a9b9^1..32c662c58a9b9 diff --git a/drivers/lightnvm/Kconfig b/drivers/lightnvm/Kconfig index ead61a93cb4e..2a953efec4e1 100644 --- a/drivers/lightnvm/Kconfig +++ b/drivers/lightnvm/Kconfig @@ -4,7 +4,8 @@ menuconfig NVM bool "Open-Channel SSD target support" - depends on BLOCK && HAS_DMA + depends on BLOCK && HAS_DMA && PCI + select BLK_DEV_NVME help Say Y here to get to enable Open-channel SSDs. Proposed fix is following: diff --git a/drivers/lightnvm/Kconfig b/drivers/lightnvm/Kconfig index 2a953efec4e1..9969236314d7 100644 --- a/drivers/lightnvm/Kconfig +++ b/drivers/lightnvm/Kconfig @@ -4,8 +4,7 @@ menuconfig NVM bool "Open-Channel SSD target support" - depends on BLOCK && HAS_DMA && PCI - select BLK_DEV_NVME + depends on BLOCK && HAS_DMA && PCI && BLK_DEV_NVME help Say Y here to get to enable Open-channel SSDs. Regards, Yurii Shestakov --- AlsaDevices: total 0 crw-rw---- 1 root audio 116, 1 Mar 29 17:05 seq crw-rw---- 1 root audio 116, 33 Mar 29 17:05 timer AplayDevices: Error: [Errno 2] No such file or directory: 'aplay': 'aplay' ApportVersion: 2.20.9-0ubuntu1 Architecture: amd64 ArecordDevices: Error: [Errno 2] No such file or directory: 'arecord': 'arecord' AudioDevicesInUse: Error: command ['fuser', '-v', '/dev/snd/seq', '/dev/snd/timer'] failed with exit code 1: DistroRelease: Ubuntu 18.04 HibernationDevice: RESUME=/dev/mapper/vg2-swap_1 IwConfig: Error: [Errno 2] No such file or directory: 'iwconfig': 'iwconfig' Lsusb: Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub MachineType: QEMU Standard PC (Q35 + ICH9, 2009) Package: linux (not installed) PciMultimedia: ProcFB: ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-4.15.0-10-generic root=/dev/mapper/vg2-root ro net.ifnames=0 biosdevname=0 quiet nofb nomodeset console=ttyS0,115200n8 ProcVersionSignature: Ubuntu 4.15.0-10.11-generic 4.15.3 RelatedPackageVersions: linux-restricted-modules-4.15.0-10-generic N/A linux-backports-modules-4.15.0-10-generic N/A linux-firmware 1.173 RfKill: Error: [Errno 2] No such file or directory: 'rfkill': 'rfkill' Tags: bionic Uname: Linux 4.15.0-10-generic x86_64 UnreportableReason: The report belongs to a package that is not installed. UpgradeStatus: No upgrade log present (probably fresh install) UserGroups: _MarkForUpload: False dmi.bios.date: 01/01/2011 dmi.bios.vendor: Seabios dmi.bios.version: 0.5.1 dmi.chassis.type: 1 dmi.chassis.vendor: Bochs dmi.modalias: dmi:bvnSeabios:bvr0.5.1:bd01/01/2011:svnQEMU:pnStandardPC(Q35+ICH9,2009):pvrpc-q35-2.0:cvnBochs:ct1:cvr: dmi.product.name: Standard PC (Q35 + ICH9, 2009) dmi.product.version: pc-q35-2.0 dmi.sys.vendor: QEMU To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1759893/+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