linux-block.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] null_blk: add zoned config support information
@ 2019-01-04 17:06 John Pittman
  2019-01-04 21:49 ` Bart Van Assche
  0 siblings, 1 reply; 4+ messages in thread
From: John Pittman @ 2019-01-04 17:06 UTC (permalink / raw)
  To: axboe; +Cc: linux-block, loberman, bvanassche, John Pittman

If the kernel is built without CONFIG_BLK_DEV_ZONED, a modprobe
of the null_blk driver with zoned=1 fails with 'Invalid argument'.
This can be confusing to users, prompting a search as to why the
parameter is invalid. To assist in that search, add a bit more
information to the failure, additionally adding to the documentation
that CONFIG_BLK_DEV_ZONED is needed for zoned=1.

Signed-off-by: John Pittman <jpittman@redhat.com>
---
 Documentation/block/null_blk.txt | 3 ++-
 drivers/block/null_blk.h         | 1 +
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/Documentation/block/null_blk.txt b/Documentation/block/null_blk.txt
index ea2dafe49ae8..4cad1024fff7 100644
--- a/Documentation/block/null_blk.txt
+++ b/Documentation/block/null_blk.txt
@@ -88,7 +88,8 @@ shared_tags=[0/1]: Default: 0
 
 zoned=[0/1]: Default: 0
   0: Block device is exposed as a random-access block device.
-  1: Block device is exposed as a host-managed zoned block device.
+  1: Block device is exposed as a host-managed zoned block device. Requires
+     CONFIG_BLK_DEV_ZONED.
 
 zone_size=[MB]: Default: 256
   Per zone size when exposed as a zoned block device. Must be a power of two.
diff --git a/drivers/block/null_blk.h b/drivers/block/null_blk.h
index b3df2793e7cd..cab4808f14bd 100644
--- a/drivers/block/null_blk.h
+++ b/drivers/block/null_blk.h
@@ -97,6 +97,7 @@ void null_zone_reset(struct nullb_cmd *cmd, sector_t sector);
 #else
 static inline int null_zone_init(struct nullb_device *dev)
 {
+	pr_err("CONFIG_BLK_DEV_ZONED not enabled\n");
 	return -EINVAL;
 }
 static inline void null_zone_exit(struct nullb_device *dev) {}
-- 
2.17.2


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH v2] null_blk: add zoned config support information
  2019-01-04 17:06 [PATCH v2] null_blk: add zoned config support information John Pittman
@ 2019-01-04 21:49 ` Bart Van Assche
  2019-01-05 12:44   ` John Pittman
  0 siblings, 1 reply; 4+ messages in thread
From: Bart Van Assche @ 2019-01-04 21:49 UTC (permalink / raw)
  To: John Pittman, axboe; +Cc: linux-block, loberman

On Fri, 2019-01-04 at 12:06 -0500, John Pittman wrote:
> If the kernel is built without CONFIG_BLK_DEV_ZONED, a modprobe
> of the null_blk driver with zoned=1 fails with 'Invalid argument'.
> This can be confusing to users, prompting a search as to why the
> parameter is invalid. To assist in that search, add a bit more
> information to the failure, additionally adding to the documentation
> that CONFIG_BLK_DEV_ZONED is needed for zoned=1.
> 
> Signed-off-by: John Pittman <jpittman@redhat.com>
> ---
>  Documentation/block/null_blk.txt | 3 ++-
>  drivers/block/null_blk.h         | 1 +
>  2 files changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/Documentation/block/null_blk.txt b/Documentation/block/null_blk.txt
> index ea2dafe49ae8..4cad1024fff7 100644
> --- a/Documentation/block/null_blk.txt
> +++ b/Documentation/block/null_blk.txt
> @@ -88,7 +88,8 @@ shared_tags=[0/1]: Default: 0
>  
>  zoned=[0/1]: Default: 0
>    0: Block device is exposed as a random-access block device.
> -  1: Block device is exposed as a host-managed zoned block device.
> +  1: Block device is exposed as a host-managed zoned block device. Requires
> +     CONFIG_BLK_DEV_ZONED.
>  
>  zone_size=[MB]: Default: 256
>    Per zone size when exposed as a zoned block device. Must be a power of two.
> diff --git a/drivers/block/null_blk.h b/drivers/block/null_blk.h
> index b3df2793e7cd..cab4808f14bd 100644
> --- a/drivers/block/null_blk.h
> +++ b/drivers/block/null_blk.h
> @@ -97,6 +97,7 @@ void null_zone_reset(struct nullb_cmd *cmd, sector_t sector);
>  #else
>  static inline int null_zone_init(struct nullb_device *dev)
>  {
> +	pr_err("CONFIG_BLK_DEV_ZONED not enabled\n");
>  	return -EINVAL;
>  }
>  static inline void null_zone_exit(struct nullb_device *dev) {}

Reviewed-by: Bart Van Assche <bvanassche@acm.org>


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH v2] null_blk: add zoned config support information
  2019-01-04 21:49 ` Bart Van Assche
@ 2019-01-05 12:44   ` John Pittman
  2019-01-06 17:58     ` Jens Axboe
  0 siblings, 1 reply; 4+ messages in thread
From: John Pittman @ 2019-01-05 12:44 UTC (permalink / raw)
  To: Bart Van Assche; +Cc: Jens Axboe, linux-block, Laurence Oberman

Jens, Bart, It occurred to me just now that on the pr_err() message,
"null_blk: CONFIG_BLK_DEV_ZONED not enabled" is a little better
than "CONFIG_BLK_DEV_ZONED not enabled".  It was my intent
to include that 'null_blk:', but it slipped my mind at the last moment.

On Fri, Jan 4, 2019 at 4:49 PM Bart Van Assche <bvanassche@acm.org> wrote:
>
> On Fri, 2019-01-04 at 12:06 -0500, John Pittman wrote:
> > If the kernel is built without CONFIG_BLK_DEV_ZONED, a modprobe
> > of the null_blk driver with zoned=1 fails with 'Invalid argument'.
> > This can be confusing to users, prompting a search as to why the
> > parameter is invalid. To assist in that search, add a bit more
> > information to the failure, additionally adding to the documentation
> > that CONFIG_BLK_DEV_ZONED is needed for zoned=1.
> >
> > Signed-off-by: John Pittman <jpittman@redhat.com>
> > ---
> >  Documentation/block/null_blk.txt | 3 ++-
> >  drivers/block/null_blk.h         | 1 +
> >  2 files changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/Documentation/block/null_blk.txt b/Documentation/block/null_blk.txt
> > index ea2dafe49ae8..4cad1024fff7 100644
> > --- a/Documentation/block/null_blk.txt
> > +++ b/Documentation/block/null_blk.txt
> > @@ -88,7 +88,8 @@ shared_tags=[0/1]: Default: 0
> >
> >  zoned=[0/1]: Default: 0
> >    0: Block device is exposed as a random-access block device.
> > -  1: Block device is exposed as a host-managed zoned block device.
> > +  1: Block device is exposed as a host-managed zoned block device. Requires
> > +     CONFIG_BLK_DEV_ZONED.
> >
> >  zone_size=[MB]: Default: 256
> >    Per zone size when exposed as a zoned block device. Must be a power of two.
> > diff --git a/drivers/block/null_blk.h b/drivers/block/null_blk.h
> > index b3df2793e7cd..cab4808f14bd 100644
> > --- a/drivers/block/null_blk.h
> > +++ b/drivers/block/null_blk.h
> > @@ -97,6 +97,7 @@ void null_zone_reset(struct nullb_cmd *cmd, sector_t sector);
> >  #else
> >  static inline int null_zone_init(struct nullb_device *dev)
> >  {
> > +     pr_err("CONFIG_BLK_DEV_ZONED not enabled\n");
> >       return -EINVAL;
> >  }
> >  static inline void null_zone_exit(struct nullb_device *dev) {}
>
> Reviewed-by: Bart Van Assche <bvanassche@acm.org>
>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH v2] null_blk: add zoned config support information
  2019-01-05 12:44   ` John Pittman
@ 2019-01-06 17:58     ` Jens Axboe
  0 siblings, 0 replies; 4+ messages in thread
From: Jens Axboe @ 2019-01-06 17:58 UTC (permalink / raw)
  To: John Pittman, Bart Van Assche; +Cc: linux-block, Laurence Oberman

On 1/5/19 5:44 AM, John Pittman wrote:
> Jens, Bart, It occurred to me just now that on the pr_err() message,
> "null_blk: CONFIG_BLK_DEV_ZONED not enabled" is a little better
> than "CONFIG_BLK_DEV_ZONED not enabled".  It was my intent
> to include that 'null_blk:', but it slipped my mind at the last moment.

I applied it just now, and added the prefix to the error message.

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-01-06 17:58 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-01-04 17:06 [PATCH v2] null_blk: add zoned config support information John Pittman
2019-01-04 21:49 ` Bart Van Assche
2019-01-05 12:44   ` John Pittman
2019-01-06 17:58     ` Jens Axboe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).