At Sun, 06 Dec 2009 18:34:52 -0500, Jeff Mahoney wrote:
On 12/06/2009 05:30 PM, Egbert Eich wrote:
On Fri, Dec 04, 2009 at 02:45:17PM -0500, Jeff Mahoney wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
A per device blacklist would require modprobe to look at the alias list in the driver, match it against the hardware on the system and then apply the result to the blacklist. To make it general it would have to be usable for all sorts of device IDs. If we need it and the kernel people would accept such a feature (Jeff, your reply is very encouraging) I would actually implement this.
Well here's where it gets tricky. modprobe can still only pass global driver options. I suppose it would be possible to pass a blacklist=<alias> or something to work around that, but that's not what I had in mind. It could also be handled via writing to a sysfs file. All drivers support an unbind option, too. This isn't really a discussion to be had with me on this list, though. I'm not at all involved with the DRM drivers.
I've looked into 'unbind'. There doesn't seem to be a way to prevent a driver from being bound to devices when initially loaded. This is what we'd need.
Well you could do it by adding an install rule to /etc/modprobe.d so that the unbind automatically runs after the module is loaded. Sure it would be claimed initially, but is the device left in a state where the driver disassociating would cause a problem?
The problem in general is that we can't tell the kernel about rules for a module without first loading the module.
But we can know the PCI id before loading the corresponding module, at least. So, it'd be possible to load the module only when no blacklisted pci id is found in the modprobe install script. Takashi -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org