|From:||"Simon 'corecode' Schubert" <corecode@xxxxxxxxxxxx>|
|Date:||Thu, 22 Feb 2007 19:49:19 +0100|
:corecode 2007/02/22 07:48:55 PST
:DragonFly src repository
: Modified files:
: sys/kern kern_sig.c : Log:
: Fix stopping of the current process, which was broken by the last commit.
: : If the current process is still far inside the kernel and is going to
: tsleep(), CURSIG()/issignal() in tsleep() have to see the pending signal;
You can't actually stop a process in tsleep, ever. The kernel might
be holding resources (such as lockmgr locks) that would never be released.
A process can only be stopped in userret() (platform/pc32/i386/trap.c).
Please make sure that those semantics are retained.
-- Serve - BSD +++ RENT this banner advert +++ ASCII Ribbon /"\ Work - Mac +++ space for low €€€ NOW!1 +++ Campaign \ / Party Enjoy Relax | http://dragonflybsd.org Against HTML \ Dude 2c 2 the max ! http://golden-apple.biz Mail + News / \
Description: OpenPGP digital signature