Re: [PATCH 3/3] EDAC: amd64_edac: decide if driver can load successfully early.

Tejun Heo
2015-03-19T16:33:39Z

Hello, Borislav.

On Thu, Mar 19, 2015 at 05:23:02PM +0100, Borislav Petkov wrote:
> On Thu, Mar 19, 2015 at 09:12:26AM -0700, Dmitry Torokhov wrote:
> > By the same token it only makes sense to load e1000e when I have e1000e
> > device loaded, but we allow it to load anyway. Or psmouse. Or pretty
> > much any other drivers (sans some platform code). The fact is that we
> > for long time have separated module loading and driver binding. Loading
> > driver even without the devices is standard behavior.
>
> FWIW, I always hated that.

You understand that there are technical reasons behind the current
behavior? This is not something people just did on a whim. We used
to have autounload and all that but over time moved away from it
because the trade-offs around the behavior shifted.

I don't get why you don't understand this. As a general rule, we
don't go and implement one-off behaviors like this because it's well
understood that things like this are more costly in the longer term.
As said multiple times before, if you think this is a class of problem
worth solving, do so properly. Please stop shell scripting in your
->probe() in kernel.

> If I detect at least one NB which is ok, I can then continue and do
> pci_register_driver(). If there are no suitable NBs, I return an error
> and don't even touch PCI.

Please don't. Consider it nacked preemptively. If you want to solve
this and can justify the added complexity, solve it in a general way -
teach it to the driver model.

Thanks.

--
tejun