Kernel crash w/o reason

Daniel Eischen deischen at freebsd.org
Thu Dec 23 14:12:13 PST 2004


On Thu, 23 Dec 2004, Jan Engelhardt wrote:

> Hello list,
>
>
> for some reason, the Freebsd (5.3) kernel crashes whenever I do "simple
> operations", in conjunction with a (self-written) kernel module.
>
> I have trimmed the original program down from approx 120 KB to the 7 KB (lots
> of spacing and tabs :) to follow the common advise to find the shortest
> codepiece showing the problem.
> Well, you can retrieve the short prog at http://linux01.org/~jengelh/BUG.tbz2
> Both files (rpldev.c and rpld.c) seem perfectly fine, but ...
> see rpld.c for the details of the crash.
>
> Hope someone can shed some light on this.

I don't think you are suppose to leave the kernel with mutex(es)
held.  A mutex is a short term lock, and at best you are abusing
it's intended use.  Moreover, I don't think you should leave the
kernel with _any_ kernel synchronization object held.  In the case
of the mutex, the thread performing the close() may not be the
thread that did the open() and which owns the mutex.

-- 
DE



More information about the freebsd-hackers mailing list