Thread (7 messages) 7 messages, 4 authors, 2016-12-09

Re: [patch] ser_gigaset: return -ENOMEM on error instead of success

From: Tilman Schmidt <hidden>
Date: 2016-12-07 22:04:30
Also in: kernel-janitors

Hi Paul,

Am 07.12.2016 um 22:08 schrieb Paul Bolle:
On Wed, 2016-12-07 at 21:57 +0100, Tilman Schmidt wrote:
quoted
Not much of a mess, I reckon. Everything that has been allocated and
registered up to that point is properly deallocated and unregistered.
The code just fails to tell the kernel that module initialization has
failed, so the module remains loaded even though it can never be
called because it isn't hooked anywhere. That's a nuisance and a
waste of RAM, but not much more.
Yes.

But then the removal of the module, which is the only reasonable thing to do
after all this has happened, seems to trigger a WARN in driver_unregister().
And it's that WARN that I think requires the entire stable song and dance.
Ah, yes, of course, because driver_unregister() has already been run
in the failure path of module_init and is now called a second time.
Not sure how much evil that does beyond the WARN, but I agree it's
worth investigating.

Best regards,
Tilman

-- 
Tilman Schmidt                              E-Mail: tilman@imap.cc
Bonn, Germany
Nous, on a des fleurs et des bougies pour nous protéger.

Attachments

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