forwarded errors
kernel: 2.6.11.10
Hello
Currently writting down a pci driver, I notice that "pci_register_driver(&pci_driver)" don't forward my "probe" function errors.
Actually errors are noticed in the kernel ring buffer but don't make pci_register_driver fail. It returns a zero value in any case. I traced back to the kernel in order to try to understand this problem and find the "void driver_attach(struct device_driver * drv)" function in the "linux-2.6.11.10/drivers/base/bus.c" file which, obviously, can not returns an error.
So I just wish to know why this function only print this message :
/* driver matched but the probe failed */
printk(KERN_WARNING
"%s: probe of %s failed with error %d\n",
drv->name, dev->bus_id, error);but don't return the error.
Actually I don't understand why the module is loaded (because pci_register_driver, which is called during __init, don't fail) while my pci card could not have been initialized by "probe" function because it failed for such reasons.
Thanks
Signature · 9 lines
Loïc
-------------------
hardware, n:
The parts of a computer system that can be kicked.
_______________________________________________
Kernel-janitors mailing list
[email protected]
https://lists.osdl.org/mailman/listinfo/kernel-janitorsQuoted 7 lines · Lo?c Martin
kernel: 2.6.11.10
Hello
Currently writting down a pci driver, I notice that "
pci_register_driver(&pci_driver)" don't forward my "probe" function errors.
Because you could have 0 devices at that time. And devices could be added to system after pci_register_driver is called (think hotplug).
driver != device
Quoted 14 lines
Actually errors are noticed in the kernel ring buffer but don't make
pci_register_driverfail. It returns a zero value in any case. I traced back to the kernel in order to try to understand this problem and find the "voiddriver_attach(struct device_driver * drv)" function in the "linux-2.6.11.10/drivers/base/bus.c" file which, obviously, can not returns an error.So I just wish to know why this function only print this message :
/* driver matched but the probe failed */ printk(KERN_WARNING "%s: probe of %s failed with error %d\n", drv->name, dev->bus_id, error);
Quoted 18 lines
but don't return the error.
Actually I don't understand why the module is loaded (becausepci_register_driver, which is called during__init, don't fail) while my pci card could not have been initialized by "probe" function because it failed for such reasons.Thanks
Signature · 9 lines
Lo?c ------------------- hardware, n: The parts of a computer system that can be kicked. _______________________________________________ Kernel-janitors mailing list [email protected] https://lists.osdl.org/mailman/listinfo/kernel-janitors
_______________________________________________
Kernel-janitors mailing list
[email protected]
https://lists.osdl.org/mailman/listinfo/kernel-janitors