Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 19 Sep 2001 18:26:24 -0700
From:      Julian Elischer <julian@elischer.org>
To:        Nate Williams <nate@yogotech.com>
Cc:        John Baldwin <jhb@FreeBSD.ORG>, julian@FreeBSD.ORG, arch@FreeBSD.ORG
Subject:   Re: sigsuspend() and KSE
Message-ID:  <3BA945C0.E4738800@elischer.org>
References:  <XFMail.010919161625.jhb@FreeBSD.org> <15273.11874.366229.387658@nomad.yogotech.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Nate Williams wrote:
> 
> > /*
> >  * Suspend process until signal, providing mask to be set
> >  * in the meantime.  Note nonstandard calling convention:
> >  * libc stub passes mask, not pointer, to save a copyin.
> >  ***** XXXKSE this doesn't make sense under KSE.
> >  ***** Do we suspend the thread or all threads in the process?
> >  ***** How do we suspend threads running NOW on another processor?
> >  */
> >
> > Here's my opinion:
> >
> > sigsuspend() just suspends the current thread.  When a signal is posted, it
> > wakes up all threads blocked on sigsuspend whose mask matches that signal.  I
> > can see it still making sense, but perhaps being of limited usefulness in a
> > threaded program.
> 
> What has limited usefulness?  Being able to suspend all threads, or
> waking up all threads?

John:
In the big picture, you want a SIGSUSPEND to suspend all the threads
on all the processors for that process.
The behaviour of a program to ^Z is well defined and people will expect that
it just stops..
(not just part of it)

> 
> Nate

-- 
+------------------------------------+       ______ _  __
|   __--_|\  Julian Elischer         |       \     U \/ / hard at work in 
|  /       \ julian@elischer.org     +------>x   USA    \ a very strange
| (   OZ    )                                \___   ___ | country !
+- X_.---._/    presently in San Francisco       \_/   \\
          v

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3BA945C0.E4738800>