diff mbox series

[RESEND,1/2] loop: deprecate autoloading callback loop_probe()

Message ID 20230717191628.582363-2-mfo@canonical.com (mailing list archive)
State New, archived
Headers show
Series loop: fix regression from max_loop default value change | expand

Commit Message

Mauricio Faria de Oliveira July 17, 2023, 7:16 p.m. UTC
The 'probe' callback in __register_blkdev() is only used
under the CONFIG_BLOCK_LEGACY_AUTOLOAD deprecation guard.

The loop_probe() function is only used for that callback,
so guard it too, accordingly.

See commit fbdee71bb5d8 ("block: deprecate autoloading based on dev_t").

Signed-off-by: Mauricio Faria de Oliveira <mfo@canonical.com>
---
 drivers/block/loop.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

Comments

Christoph Hellwig July 20, 2023, 8:30 a.m. UTC | #1
On Mon, Jul 17, 2023 at 04:16:27PM -0300, Mauricio Faria de Oliveira wrote:
> The 'probe' callback in __register_blkdev() is only used
> under the CONFIG_BLOCK_LEGACY_AUTOLOAD deprecation guard.
> 
> The loop_probe() function is only used for that callback,
> so guard it too, accordingly.
> 
> See commit fbdee71bb5d8 ("block: deprecate autoloading based on dev_t").
> 
> Signed-off-by: Mauricio Faria de Oliveira <mfo@canonical.com>
> ---
>  drivers/block/loop.c | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/block/loop.c b/drivers/block/loop.c
> index 37511d2b2caf..7268ff71c92c 100644
> --- a/drivers/block/loop.c
> +++ b/drivers/block/loop.c
> @@ -2093,6 +2093,7 @@ static void loop_remove(struct loop_device *lo)
>  	put_disk(lo->lo_disk);
>  }
>  
> +#ifdef CONFIG_BLOCK_LEGACY_AUTOLOAD
>  static void loop_probe(dev_t dev)
>  {
>  	int idx = MINOR(dev) >> part_shift;
> @@ -2101,6 +2102,7 @@ static void loop_probe(dev_t dev)
>  		return;
>  	loop_add(idx);
>  }
> +#endif

Turn this into..

#else
#define loop_probe	NULL
#endif /* !CONFIG_BLOCK_LEGACY_AUTOLOAD */

and you can skip the pretty ugly second hunk.
Mauricio Faria de Oliveira July 20, 2023, 2:32 p.m. UTC | #2
On Thu, Jul 20, 2023 at 5:30 AM Christoph Hellwig <hch@infradead.org> wrote:
>
> On Mon, Jul 17, 2023 at 04:16:27PM -0300, Mauricio Faria de Oliveira wrote:
> > The 'probe' callback in __register_blkdev() is only used
> > under the CONFIG_BLOCK_LEGACY_AUTOLOAD deprecation guard.
> >
> > The loop_probe() function is only used for that callback,
> > so guard it too, accordingly.
> >
> > See commit fbdee71bb5d8 ("block: deprecate autoloading based on dev_t").
> >
> > Signed-off-by: Mauricio Faria de Oliveira <mfo@canonical.com>
> > ---
> >  drivers/block/loop.c | 7 ++++++-
> >  1 file changed, 6 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/block/loop.c b/drivers/block/loop.c
> > index 37511d2b2caf..7268ff71c92c 100644
> > --- a/drivers/block/loop.c
> > +++ b/drivers/block/loop.c
> > @@ -2093,6 +2093,7 @@ static void loop_remove(struct loop_device *lo)
> >       put_disk(lo->lo_disk);
> >  }
> >
> > +#ifdef CONFIG_BLOCK_LEGACY_AUTOLOAD
> >  static void loop_probe(dev_t dev)
> >  {
> >       int idx = MINOR(dev) >> part_shift;
> > @@ -2101,6 +2102,7 @@ static void loop_probe(dev_t dev)
> >               return;
> >       loop_add(idx);
> >  }
> > +#endif
>
> Turn this into..
>
> #else
> #define loop_probe      NULL
> #endif /* !CONFIG_BLOCK_LEGACY_AUTOLOAD */
>
> and you can skip the pretty ugly second hunk.
>

Thanks for reviewing and the suggestion; just sent v2.


--
Mauricio Faria de Oliveira
diff mbox series

Patch

diff --git a/drivers/block/loop.c b/drivers/block/loop.c
index 37511d2b2caf..7268ff71c92c 100644
--- a/drivers/block/loop.c
+++ b/drivers/block/loop.c
@@ -2093,6 +2093,7 @@  static void loop_remove(struct loop_device *lo)
 	put_disk(lo->lo_disk);
 }
 
+#ifdef CONFIG_BLOCK_LEGACY_AUTOLOAD
 static void loop_probe(dev_t dev)
 {
 	int idx = MINOR(dev) >> part_shift;
@@ -2101,6 +2102,7 @@  static void loop_probe(dev_t dev)
 		return;
 	loop_add(idx);
 }
+#endif
 
 static int loop_control_remove(int idx)
 {
@@ -2235,8 +2237,11 @@  static int __init loop_init(void)
 	if (err < 0)
 		goto err_out;
 
-
+#ifdef CONFIG_BLOCK_LEGACY_AUTOLOAD
 	if (__register_blkdev(LOOP_MAJOR, "loop", loop_probe)) {
+#else
+	if (register_blkdev(LOOP_MAJOR, "loop")) {
+#endif
 		err = -EIO;
 		goto misc_out;
 	}