Message ID | 1456099568-5154-6-git-send-email-paul.gortmaker@windriver.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Sun, 21 Feb 2016, Paul Gortmaker wrote: > The Kconfig currently controlling compilation of this code is: > > arch/x86/xen/Kconfig:config XEN_PVHVM > arch/x86/xen/Kconfig: def_bool y > > ...meaning that it currently is not being built as a module by anyone. > > Lets remove the modular code that is essentially orphaned, so that > when reading the driver there is no doubt it is builtin-only. > > Since module_init translates to device_initcall in the non-modular > case, the init ordering remains unchanged with this commit. > > Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code. > > We also delete the MODULE_LICENSE tag etc. since all that information > was (or is now) contained at the top of the file in the comments. > > In removing "module" from the init fcn name, we observe a namespace > collision with the probe function, so we use "probe" in the name of > the probe function, and "init" in the registration fcn, as per > standard convention, as suggested by Stefano. > > Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> > Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com> > Cc: David Vrabel <david.vrabel@citrix.com> > Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com> > Cc: xen-devel@lists.xenproject.org > Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> Reviewed-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> > drivers/xen/platform-pci.c | 22 +++++++++------------- > 1 file changed, 9 insertions(+), 13 deletions(-) > > diff --git a/drivers/xen/platform-pci.c b/drivers/xen/platform-pci.c > index 3454973dc3bb..cf9666680c8c 100644 > --- a/drivers/xen/platform-pci.c > +++ b/drivers/xen/platform-pci.c > @@ -2,6 +2,9 @@ > * platform-pci.c > * > * Xen platform PCI device driver > + * > + * Authors: ssmith@xensource.com and stefano.stabellini@eu.citrix.com > + * > * Copyright (c) 2005, Intel Corporation. > * Copyright (c) 2007, XenSource Inc. > * Copyright (c) 2010, Citrix > @@ -24,7 +27,7 @@ > > #include <linux/interrupt.h> > #include <linux/io.h> > -#include <linux/module.h> > +#include <linux/init.h> > #include <linux/pci.h> > > #include <xen/platform_pci.h> > @@ -36,10 +39,6 @@ > > #define DRV_NAME "xen-platform-pci" > > -MODULE_AUTHOR("ssmith@xensource.com and stefano.stabellini@eu.citrix.com"); > -MODULE_DESCRIPTION("Xen platform PCI device"); > -MODULE_LICENSE("GPL"); > - > static unsigned long platform_mmio; > static unsigned long platform_mmio_alloc; > static unsigned long platform_mmiolen; > @@ -101,8 +100,8 @@ static int platform_pci_resume(struct pci_dev *pdev) > return 0; > } > > -static int platform_pci_init(struct pci_dev *pdev, > - const struct pci_device_id *ent) > +static int platform_pci_probe(struct pci_dev *pdev, > + const struct pci_device_id *ent) > { > int i, ret; > long ioaddr; > @@ -181,20 +180,17 @@ static struct pci_device_id platform_pci_tbl[] = { > {0,} > }; > > -MODULE_DEVICE_TABLE(pci, platform_pci_tbl); > - > static struct pci_driver platform_driver = { > .name = DRV_NAME, > - .probe = platform_pci_init, > + .probe = platform_pci_probe, > .id_table = platform_pci_tbl, > #ifdef CONFIG_PM > .resume_early = platform_pci_resume, > #endif > }; > > -static int __init platform_pci_module_init(void) > +static int __init platform_pci_init(void) > { > return pci_register_driver(&platform_driver); > } > - > -module_init(platform_pci_module_init); > +device_initcall(platform_pci_init); > -- > 2.6.1 >
diff --git a/drivers/xen/platform-pci.c b/drivers/xen/platform-pci.c index 3454973dc3bb..cf9666680c8c 100644 --- a/drivers/xen/platform-pci.c +++ b/drivers/xen/platform-pci.c @@ -2,6 +2,9 @@ * platform-pci.c * * Xen platform PCI device driver + * + * Authors: ssmith@xensource.com and stefano.stabellini@eu.citrix.com + * * Copyright (c) 2005, Intel Corporation. * Copyright (c) 2007, XenSource Inc. * Copyright (c) 2010, Citrix @@ -24,7 +27,7 @@ #include <linux/interrupt.h> #include <linux/io.h> -#include <linux/module.h> +#include <linux/init.h> #include <linux/pci.h> #include <xen/platform_pci.h> @@ -36,10 +39,6 @@ #define DRV_NAME "xen-platform-pci" -MODULE_AUTHOR("ssmith@xensource.com and stefano.stabellini@eu.citrix.com"); -MODULE_DESCRIPTION("Xen platform PCI device"); -MODULE_LICENSE("GPL"); - static unsigned long platform_mmio; static unsigned long platform_mmio_alloc; static unsigned long platform_mmiolen; @@ -101,8 +100,8 @@ static int platform_pci_resume(struct pci_dev *pdev) return 0; } -static int platform_pci_init(struct pci_dev *pdev, - const struct pci_device_id *ent) +static int platform_pci_probe(struct pci_dev *pdev, + const struct pci_device_id *ent) { int i, ret; long ioaddr; @@ -181,20 +180,17 @@ static struct pci_device_id platform_pci_tbl[] = { {0,} }; -MODULE_DEVICE_TABLE(pci, platform_pci_tbl); - static struct pci_driver platform_driver = { .name = DRV_NAME, - .probe = platform_pci_init, + .probe = platform_pci_probe, .id_table = platform_pci_tbl, #ifdef CONFIG_PM .resume_early = platform_pci_resume, #endif }; -static int __init platform_pci_module_init(void) +static int __init platform_pci_init(void) { return pci_register_driver(&platform_driver); } - -module_init(platform_pci_module_init); +device_initcall(platform_pci_init);
The Kconfig currently controlling compilation of this code is: arch/x86/xen/Kconfig:config XEN_PVHVM arch/x86/xen/Kconfig: def_bool y ...meaning that it currently is not being built as a module by anyone. Lets remove the modular code that is essentially orphaned, so that when reading the driver there is no doubt it is builtin-only. Since module_init translates to device_initcall in the non-modular case, the init ordering remains unchanged with this commit. Also note that MODULE_DEVICE_TABLE is a no-op for non-modular code. We also delete the MODULE_LICENSE tag etc. since all that information was (or is now) contained at the top of the file in the comments. In removing "module" from the init fcn name, we observe a namespace collision with the probe function, so we use "probe" in the name of the probe function, and "init" in the registration fcn, as per standard convention, as suggested by Stefano. Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com> Cc: David Vrabel <david.vrabel@citrix.com> Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Cc: xen-devel@lists.xenproject.org Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> --- drivers/xen/platform-pci.c | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-)