Re: [RFC] Input: Remove unsafe device module references

From: David Herrmann
Date: Tue Nov 01 2011 - 14:09:31 EST


On Tue, Nov 1, 2011 at 7:00 PM, Greg KH <gregkh@xxxxxxx> wrote:
> On Tue, Nov 01, 2011 at 06:52:11PM +0100, David Herrmann wrote:
>> My solution: Some parent subsystem of us must take and release this
>> module-refcnt instead of us, so this bug doesn't occur.
>
> Yes, that is the ultimate solution for something like this.
>
> But, in reality, we don't care about module unloading races as there are
> plenty of other issues involved there where things can go bad, so we
> just try the best we can :)

Ah, I am kind of relieved that I got this right. I almost started
thinking I am insane.. ;)

So your answer is that this is so unlikely that it won't be fixed? I
am fine with that, even though I wonder why stuff like "struct
file_operations" include "owner" fields to protect callbacks but
"struct device_type" does *not* include any protection of it's
"release" callback.
This is why I thought calling module_get/put() inside the driver-core
would be just consistent with other subsystems.

But if this race is fine, I will simply copy it.

> thanks,
>
> greg k-h

Sorry for the confusion and thanks for your answers.
Regards
David
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/