Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Dec 2004 17:12:06 -0500 (EST)
From:      Daniel Eischen <deischen@freebsd.org>
To:        Jan Engelhardt <jengelh@linux01.gwdg.de>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re: Kernel crash w/o reason
Message-ID:  <Pine.GSO.4.43.0412231700480.8053-100000@sea.ntplx.net>
In-Reply-To: <Pine.LNX.4.61.0412232230270.11442@yvahk01.tjqt.qr>

next in thread | previous in thread | raw e-mail | index | archive | help
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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.GSO.4.43.0412231700480.8053-100000>