Opened 10 years ago

Closed 9 years ago

#5421 closed bug (fixed)

kernel_daemons are called with the lock held

Reported by: axeld Owned by: axeld
Priority: normal Milestone: R1
Component: System/Kernel Version: R1/Development
Keywords: Cc:
Blocked By: Blocking: #5462
Has a Patch: no Platform: All

Description

This does cause trouble with the legacy driver implementation, since that one calls init_driver() with the driver lock held -- if that registers a kernel daemon (like the floppy driver), a deadlock may happen.

The solution would be to either not lock when calling into the driver, or changing the kernel daemon not to lock when calling the functions.

Change History (2)

comment:1 by bonefish, 10 years ago

Blocking: 5462 added

(In #5462) In such cases please get a stack trace of the "main2" thread and, even better, try to find out why it doesn't continue.

In qemu pressing Alt-Sysreq-D doesn't work. You have to press (left) Ctrl-Alt-2 to enter the qemu monitor and execute the command sendkey alt-sysrq-d (no typo, it's really "sysrq"). Get back via Ctrl-Alt-1.

Anyway, I've seen something like this a few times already and it was always #5421. Just from the syslog its not possible to verify or disprove it, so I'm closing the ticket as a duplicate. Please reopen, when you encounter it next time and can retrieve information that suggests otherwise.

comment:2 by axeld, 9 years ago

Resolution: fixed
Status: newclosed

Fixed in hrev36209.

Note: See TracTickets for help on using tickets.