APPLIED/cmt: [SRU][Bionic][PATCH 0/1] Fix for Bionic build error (LP: #1838533)
Kleber Souza
kleber.souza at canonical.com
Thu Aug 1 07:12:04 UTC 2019
On 01.08.19 06:47, Khaled Elmously wrote:
> Applied after adding the missing "BugLink: "
>
> The bug is marked for linux-azure too - that's a mistake?
That was intended. I spotted the build failure with xenial/linux-azure,
the build is successful with bionic/linux because CONFIG_NVM is enabled
there. So I have applied the patch to xenial/linux-azure to be able
to build it for this cycle without the need for a re-spin.
>
>
>
>
> On 2019-07-31 18:28:09 , Kleber Souza wrote:
>> [Impact]
>>
>> When compiling bionic linux 4.15.0-56.62 with CONFIG_NVM disabled, it fails with:
>>
>> make[5]: *** [drivers/nvme/host/core.o] Error 1
>> make[5]: *** Waiting for unfinished jobs....
>> In file included from /tmp/kernel-kleber-57dc2e6-NQe1/build/drivers/nvme/host/multipath.c:15:0:
>> /tmp/kernel-kleber-57dc2e6-NQe1/build/drivers/nvme/host/nvme.h: In function
>> 'nvme_nvm_register_sysfs':
>> /tmp/kernel-kleber-57dc2e6-NQe1/build/drivers/nvme/host/nvme.h:502:6: error:
>> 'ctrl' undeclared (first use in this function)
>> if (ctrl->subsys->cmic & (1 << 3))
>> ^
>> /tmp/kernel-kleber-57dc2e6-NQe1/build/drivers/nvme/host/nvme.h:502:6: note:
>> each undeclared identifier is reported only once for each function it appears in
>>
>> [Fix]
>> The culprit is this patch:
>>
>> commit 993f70b886c0062fb5ec7c3c556d074bb3380b9d
>> Author: Christoph Hellwig <hch at lst.de>
>> Date: Tue Nov 20 16:57:54 2018 +0100
>>
>> nvme: warn when finding multi-port subsystems without multipathing enabled
>>
>> BugLink: https://bugs.launchpad.net/bugs/1837161
>>
>> [ Upstream commit 14a1336e6fff47dd1028b484d6c802105c58e2ee ]
>> [...]
>> --- a/drivers/nvme/host/nvme.h
>> +++ b/drivers/nvme/host/nvme.h
>> @@ -499,6 +499,9 @@ static inline int nvme_nvm_register(struct nvme_ns *ns, char *disk_name,
>> static inline void nvme_nvm_unregister(struct nvme_ns *ns) {};
>> static inline int nvme_nvm_register_sysfs(struct nvme_ns *ns)
>> {
>> + if (ctrl->subsys->cmic & (1 << 3))
>> + dev_warn(ctrl->device,
>> +"Please enable CONFIG_NVME_MULTIPATH for full support of multi-port devices.\n");
>> return 0;
>> }
>>
>> which is adding the new lines to a different function than the original upstream
>> commit:
>>
>> --- a/drivers/nvme/host/nvme.h
>> +++ b/drivers/nvme/host/nvme.h
>> @@ -531,6 +531,9 @@ static inline void nvme_mpath_check_last_path(struct nvme_ns *ns)
>> static inline int nvme_mpath_init(struct nvme_ctrl *ctrl,
>> struct nvme_id_ctrl *id)
>> {
>> + if (ctrl->subsys->cmic & (1 << 3))
>> + dev_warn(ctrl->device,
>> +"Please enable CONFIG_NVME_MULTIPATH for full support of multi-port devices.\n");
>> return 0;
>> }
>>
>> This patch was probably wrongly backported for bug #1837161 from linux-4.19.y
>> stable and not needed since bionic/linux lacks commit 0d0b660f214d (nvme: add
>> ANA support) which introduced nvme_mpath_init(). The fix is to revert this patch.
>>
>> [Test Case]
>>
>> Disabled kernel config CONFIG_NVM and compile the kernel.
>>
>> [Regression Potential]
>>
>> Low. The patch was wrongly backported and can be safely reverted.
>>
>> Kleber Sacilotto de Souza (1):
>> Revert "nvme: warn when finding multi-port subsystems without
>> multipathing enabled"
>>
>> drivers/nvme/host/nvme.h | 3 ---
>> 1 file changed, 3 deletions(-)
>>
>> --
>> 2.17.1
>>
>>
>> --
>> kernel-team mailing list
>> kernel-team at lists.ubuntu.com
>> https://lists.ubuntu.com/mailman/listinfo/kernel-team
More information about the kernel-team
mailing list