Bug 10500
Summary: | nozomi: kernel BUG()s when card is removed | ||
---|---|---|---|
Product: | Drivers | Reporter: | Evgeni Golov (sargentd) |
Component: | PCMCIA | Assignee: | Frank Seidel (fseidel) |
Status: | REJECTED UNREPRODUCIBLE | ||
Severity: | normal | CC: | fseidel, oleg |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 2.6.25 | Subsystem: | |
Regression: | --- | Bisected commit-id: | |
Attachments: |
test patch: add flush_workqueue() to tty_exit()
test patch: try to identify the bad work_struct patch to nozomi to better handle still pending work config for kernel .2.6.25 |
Description
Evgeni Golov
2008-04-21 00:56:09 UTC
Created attachment 15864 [details]
test patch: add flush_workqueue() to tty_exit()
Well, I don't understand this code at all, but since nobody answers...
Evgeni, could you try this patch to see if it makes any difference?
In any case, nozomi.c:tty_exit() does something strange with workqueues,
tty_exit:
flush_scheduled_work();
Why?
if (dc->port[i].tty && list_empty(->hangup_work.entry)
tty_hangup(dc->port[i].tty);
I guess list_empty() means "this work is not queued". We have
work_pending(work) for that. But why do we need this check at all?
tty_hangup()->schedule_work() will fail if work_struct is queued.
Oleg.
Sorry, i am still very ill and am mostly away from mail currently. Probably next week i can also give it a look. Sorry for my bad response.. @Oleg: Can I spend you a beer or something? No more errors and my keyboard still works after the eject. The patch works (however I don't know if this is the right way - Frank has to comment on that). @Frank: health comes first, so "Gute Besserung". We have all the time of the world to fix this bug. Regards Evgeni On 04/23, bugme-daemon@bugzilla.kernel.org wrote: > > http://bugzilla.kernel.org/show_bug.cgi?id=10500 > > ------- Comment #3 from sargentd@die-welt.net 2008-04-23 11:07 ------- > @Oleg: Can I spend you a beer or something? vodka please ;) > No more errors and my keyboard > still works after the eject. The patch works Great, thanks! > (however I don't know if this is > the right way - Frank has to comment on that). Yes sure. Get better Frank! Oleg. sadly today I get the BUG()s again - dunno why I could not trigger them yesterday? Created attachment 15890 [details] test patch: try to identify the bad work_struct > sadly today I get the BUG()s the same trace? Please drop the previous patch. Could you try this one? Hopefully it can report exactly which work_struct was corrupted. Oleg. Created attachment 16156 [details]
patch to nozomi to better handle still pending work
First thanks a lot for your nice wishes :-)
I'm slowly getting better and tried some time already to reproduce this bug, but i wasn't able to trigger this problem.
Evgeni, could you please send me your kernel config? Perhaps this
would make it easier to also run into it.
Besides that, could you give this attached patch a try?
Thanks for your patience again :-)
Created attachment 16249 [details]
config for kernel .2.6.25
here is my kernel config, the patch did not help :(
Thanks for your help and patience again. Yes, the patch was utterly wrong. Sorry for that, but be sure you aren't at all forgotten! Does this bug still happen with 2.6.29-rc4? Unfortunately, I don't have the hardware anymore, so I can't test it any longer. Sorry. Hm, so as i cannot reproduce the problem with my nozomi card i for now close this bug. Feel free to reopen when you experience this again.. |