Hi List,
I would like to know why calling add_disk() from a kernel thread
which is running from a work_queue would cause the work item to block
with the "D" (disk wait) state at best under kernel 2.6.17 and cause a
hard-lockup on kernel 2.6.22.1?
If I recall correctly, work items running on the work_queue are
allowed to sleep, and add_disk() is known to sleep. Did I miss out
some details such as a lock I have to acquire?
Hope to hear a reply soon.
Regards,
Othello
PS: Would like to be CC'ed comments and replies.
-