Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 14 Jul 2004 13:37:36 -0700 (PDT)
From:      Don Lewis <truckman@FreeBSD.org>
To:        alfred@FreeBSD.org
Cc:        cvs-src@FreeBSD.org
Subject:   Re: cvs commit: src/sys/kern kern_event.c src/sys/sys eventvar.h
Message-ID:  <200407142037.i6EKba0E026064@gw.catspoiler.org>
In-Reply-To: <20040714191118.GF95729@elvis.mu.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 14 Jul, Alfred Perlstein wrote:
> * Doug Rabson <dfr@nlsystems.com> [040714 12:01] wrote:

>> Seems to me that the best thing to do is to defer the psigio() to a 
>> taskqueue that will run in a simpler locking environment.
> 
> I was thinking that, but I'm worried about "stale delivery",
> perhaps we need to record the generation count (process start time)
> in the sigio as well as the request sent, so that we don't send
> a signal to the wrong process.

This is already handled in the sigio infrastructure.  Both struct proc
and struct pgrp have a list of their potential sigio sources. When the
process or process group goes away, the exit code disables sigio
delivery.



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