Thread (10 messages) 10 messages, 4 authors, 2021-03-30

Re: [PATCH 03/18] vfio/mdev: Simplify driver registration

From: Jason Gunthorpe <jgg@nvidia.com>
Date: 2021-03-26 12:11:38
Also in: kvm

On Tue, Mar 23, 2021 at 08:14:15PM +0100, Christoph Hellwig wrote:
quoted
 static struct mdev_driver vfio_mdev_driver = {
+	.driver = {
+		.name = "vfio_mdev",
+		.owner = THIS_MODULE,
+		.mod_name = KBUILD_MODNAME,
+	},
What is the mod_name initialization for?  
It is usually hidden and works like this:

 /* pci_register_driver() must be a macro so KBUILD_MODNAME can be expanded */
 #define pci_register_driver(driver)		\
 	__pci_register_driver(driver, THIS_MODULE, KBUILD_MODNAME)
 
 int __pci_register_driver(struct pci_driver *drv, struct module *owner,
 			  const char *mod_name)
 {
	drv->driver.owner = owner;
  	drv->driver.mod_name = mod_name;
I've not really seen that in anywere else, and the only user seems
to be module_add_driver for a rather odd case we shouldn't hit here.
vfio_mdev could be compiled built in? 

AFAICT it handles the case where THIS_MODULE==NULL so we still need to
create sysfs links to the built in module.

If it is left NULL then a few sysfs files go missing for the built in
mode but no harm done?

I think it is correct to have it

Thanks,
Jason
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help