Zhiqiang Liu <[email protected]> writes:

> In setup_namespace(), pfn|dax|btt is obtained by calling
> ndctl_region_get_**_seed(), which may return NULL. So we
> need to check whether pfn|dax|btt is NULL before accessing
> them.
>
> Signed-off-by: Zhiqiang Liu <[email protected]>
> ---
>  ndctl/namespace.c | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/ndctl/namespace.c b/ndctl/namespace.c
> index e946bb6..257384d 100644
> --- a/ndctl/namespace.c
> +++ b/ndctl/namespace.c
> @@ -549,6 +549,8 @@ static int setup_namespace(struct ndctl_region *region,
>
>       if (do_setup_pfn(ndns, p)) {
>               struct ndctl_pfn *pfn = ndctl_region_get_pfn_seed(region);
> +             if (!pfn)
> +                     return -ENXIO;
>
>               rc = check_dax_align(ndns);
>               if (rc)
> @@ -563,6 +565,8 @@ static int setup_namespace(struct ndctl_region *region,
>                       ndctl_pfn_set_namespace(pfn, NULL);
>       } else if (p->mode == NDCTL_NS_MODE_DEVDAX) {
>               struct ndctl_dax *dax = ndctl_region_get_dax_seed(region);
> +             if (!dax)
> +                     return -ENXIO;
>
>               rc = check_dax_align(ndns);
>               if (rc)
> @@ -577,7 +581,8 @@ static int setup_namespace(struct ndctl_region *region,
>                       ndctl_dax_set_namespace(dax, NULL);
>       } else if (p->mode == NDCTL_NS_MODE_SECTOR) {
>               struct ndctl_btt *btt = ndctl_region_get_btt_seed(region);
> -
> +             if (!btt)
> +                     return -ENXIO;
>               /*
>                * Handle the case of btt on a pmem namespace where the
>                * pmem kernel support is pre-v1.2 namespace labels

Minor inconsistency in the last hunk.  The empty line should come after
the return, no?

Other than that, LGTM.

Acked-by: Jeff Moyer <[email protected]>
_______________________________________________
Linux-nvdimm mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to