APPLIED/cmt: [SRU][Bionic][PATCH 0/1] Fix for Bionic build error (LP: #1838533)

Khaled Elmously khalid.elmously at canonical.com
Thu Aug 1 04:47:37 UTC 2019


Applied after adding the missing "BugLink: "

The bug is marked for linux-azure too - that's a mistake?




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