On Sat, Apr 02, 2022 at 09:03:29AM -0400, Sasha Levin wrote: > This is a note to let you know that I've just added the patch titled > > virtio_blk: eliminate anonymous module_init & module_exit > > to the 5.17-stable tree which can be found at: > http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary > > The filename of the patch is: > virtio_blk-eliminate-anonymous-module_init-module_ex.patch > and it can be found in the queue-5.17 subdirectory. > > If you, or anyone else, feels it should not be added to the stable tree, > please let <stable@xxxxxxxxxxxxxxx> know about it. > I don't see how this patch qualifies for stable. Yes it's probably harmless but you never know what kind of script might be parsing e.g. System.map and changing that in the middle of stable seems like a bad idea to me. > > commit 0c0434a33667dbfedceb984ade0e7e3faeb4bfae > Author: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> > Date: Wed Mar 16 12:20:02 2022 -0700 > > virtio_blk: eliminate anonymous module_init & module_exit > > [ Upstream commit bcfe9b6cbb4438b8c1cc4bd475221652c8f9301b ] > > Eliminate anonymous module_init() and module_exit(), which can lead to > confusion or ambiguity when reading System.map, crashes/oops/bugs, > or an initcall_debug log. > > Give each of these init and exit functions unique driver-specific > names to eliminate the anonymous names. > > Example 1: (System.map) > ffffffff832fc78c t init > ffffffff832fc79e t init > ffffffff832fc8f8 t init > > Example 2: (initcall_debug log) > calling init+0x0/0x12 @ 1 > initcall init+0x0/0x12 returned 0 after 15 usecs > calling init+0x0/0x60 @ 1 > initcall init+0x0/0x60 returned 0 after 2 usecs > calling init+0x0/0x9a @ 1 > initcall init+0x0/0x9a returned 0 after 74 usecs > > Fixes: e467cde23818 ("Block driver using virtio.") > Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> > Cc: "Michael S. Tsirkin" <mst@xxxxxxxxxx> > Cc: Jason Wang <jasowang@xxxxxxxxxx> > Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx> > Cc: Stefan Hajnoczi <stefanha@xxxxxxxxxx> > Cc: virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx > Cc: Jens Axboe <axboe@xxxxxxxxx> > Cc: linux-block@xxxxxxxxxxxxxxx > Reviewed-by: Stefan Hajnoczi <stefanha@xxxxxxxxxx> > Acked-by: Jason Wang <jasowang@xxxxxxxxxx> > Reviewed-by: Ira Weiny <ira.weiny@xxxxxxxxx> > Link: https://lore.kernel.org/r/20220316192010.19001-2-rdunlap@xxxxxxxxxxxxx > Signed-off-by: Jens Axboe <axboe@xxxxxxxxx> > Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx> > > diff --git a/drivers/block/virtio_blk.c b/drivers/block/virtio_blk.c > index 8c415be86732..bf926426950d 100644 > --- a/drivers/block/virtio_blk.c > +++ b/drivers/block/virtio_blk.c > @@ -1058,7 +1058,7 @@ static struct virtio_driver virtio_blk = { > #endif > }; > > -static int __init init(void) > +static int __init virtio_blk_init(void) > { > int error; > > @@ -1084,14 +1084,14 @@ static int __init init(void) > return error; > } > > -static void __exit fini(void) > +static void __exit virtio_blk_fini(void) > { > unregister_virtio_driver(&virtio_blk); > unregister_blkdev(major, "virtblk"); > destroy_workqueue(virtblk_wq); > } > -module_init(init); > -module_exit(fini); > +module_init(virtio_blk_init); > +module_exit(virtio_blk_fini); > > MODULE_DEVICE_TABLE(virtio, id_table); > MODULE_DESCRIPTION("Virtio block driver");