From nobody@FreeBSD.org  Thu Jan 17 21:59:09 2002
Return-Path: <nobody@FreeBSD.org>
Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21])
	by hub.freebsd.org (Postfix) with ESMTP id EE85937B41A
	for <freebsd-gnats-submit@FreeBSD.org>; Thu, 17 Jan 2002 21:59:08 -0800 (PST)
Received: (from nobody@localhost)
	by freefall.freebsd.org (8.11.6/8.11.6) id g0I5x8h90245;
	Thu, 17 Jan 2002 21:59:08 -0800 (PST)
	(envelope-from nobody)
Message-Id: <200201180559.g0I5x8h90245@freefall.freebsd.org>
Date: Thu, 17 Jan 2002 21:59:08 -0800 (PST)
From: Kip Macy <kip@eventdriven.org>
To: freebsd-gnats-submit@FreeBSD.org
Subject: The siginfo_t passed to the signal handling routine is not filled out for AIO
X-Send-Pr-Version: www-1.0

>Number:         34017
>Category:       kern
>Synopsis:       The siginfo_t passed to the signal handling routine is not filled out for AIO
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Jan 17 22:00:00 PST 2002
>Closed-Date:    Fri Nov 11 08:24:45 GMT 2005
>Last-Modified:  Fri Nov 11 08:24:45 GMT 2005
>Originator:     Kip Macy
>Release:        -CURRENT
>Organization:
Extended Solutions
>Environment:
FreeBSD weizen.extendedsolutions.com 5.0-20020106-CURRENT FreeBSD 5.0-20020106-CURRENT #0: Thu Jan 17 15:36:56 PST 2002     root@weizen.extendedsolutions.com:/usr/src/sys/i386/compile/HADES_UP  i386
FreeBSD weizen.extendedsolutions.com 5.0-20020106-CURRENT FreeBSD 5.0-20020106-CURRENT #0: Thu Jan 17 15:36:56 PST 2002     root@weizen.extendedsolutions.com:/usr/src/sys/i386/compile/HADES_UP  i386

>Description:
This happens on both CURRENT and STABLE
One can, when using AIO, enable a signal to be delivered on completion.
The siginfo_t passed to the signal handling routine that gets called on
completion is supposed to have a reference to the sigev_value that is
set when the aio_* operation is dispatched. This does not happen.

>How-To-Repeat:
run aiotest_sigio from 
http://www.eventdriven.org/aio_lat_test.tgz
There is an assertion that a value is set that fails.
>Fix:
      
>Release-Note:
>Audit-Trail:

From: Garrett Wollman <wollman@khavrinen.lcs.mit.edu>
To: Kip Macy <kip@eventdriven.org>
Cc: freebsd-gnats-submit@FreeBSD.ORG
Subject: kern/34017: The siginfo_t passed to the signal handling routine is not filled out for AIO
Date: Fri, 18 Jan 2002 12:57:56 -0500 (EST)

 <<On Thu, 17 Jan 2002 21:59:08 -0800 (PST), Kip Macy <kip@eventdriven.org> said:
 
 > One can, when using AIO, enable a signal to be delivered on completion.
 > The siginfo_t passed to the signal handling routine that gets called on
 > completion is supposed to have a reference to the sigev_value that is
 > set when the aio_* operation is dispatched. This does not happen.
 
 FreeBSD does not support POSIX real-time signals.
 
 -GAWollman
 

From: k Macy <kip_macy@yahoo.com>
To: Garrett Wollman <wollman@khavrinen.lcs.mit.edu>
Cc: freebsd-gnats-submit@FreeBSD.ORG
Subject: Re: kern/34017: The siginfo_t passed to the signal handling routine is not filled out for AIO
Date: Fri, 18 Jan 2002 12:53:00 -0800 (PST)

 Is using SIGEV_SIGNAL with AIO to deliver a SIGIO on
 completion fall under the heading of real time
 signals?
 If that is the case, SA_SIGINFO is not useful, because
 
 it gives you the same information in the (siginfo_t 
 *info) as the (int code) would contain. It is at least
 
 a bug in the documentation. In the man page it should 
 say that the siginfo_t does not get filled out, and 
 that SA_SIGINFO is just there for some level of posix 
 compatibility.
 
 If you're certain of this, this can be reclassified
 as an RFE, and I'll submit a docs bug. 
 
 
 --- Garrett Wollman <wollman@khavrinen.lcs.mit.edu>
 wrote:
 > <<On Thu, 17 Jan 2002 21:59:08 -0800 (PST), Kip Macy
 > <kip@eventdriven.org> said:
 > 
 > > One can, when using AIO, enable a signal to be
 > delivered on completion.
 > > The siginfo_t passed to the signal handling
 > routine that gets called on
 > > completion is supposed to have a reference to the
 > sigev_value that is
 > > set when the aio_* operation is dispatched. This
 > does not happen.
 > 
 > FreeBSD does not support POSIX real-time signals.
 > 
 > -GAWollman
 > 
 > 
 > 
 
 
 
 __________________________________________________
 Do You Yahoo!?
 Send FREE video emails in Yahoo! Mail!
 http://promo.yahoo.com/videomail/

From: Garrett Wollman <wollman@khavrinen.lcs.mit.edu>
To: k Macy <kip_macy@yahoo.com>
Cc: freebsd-gnats-submit@FreeBSD.ORG
Subject: Re: kern/34017: The siginfo_t passed to the signal handling routine is not filled out for AIO
Date: Fri, 18 Jan 2002 15:58:40 -0500 (EST)

 <<On Fri, 18 Jan 2002 12:53:00 -0800 (PST), k Macy <kip_macy@yahoo.com> said:
 
 > Is using SIGEV_SIGNAL with AIO to deliver a SIGIO on
 > completion fall under the heading of real time
 > signals?
 
 No.  However, SA_SIGINFO is.  FreeBSD supports SA_SIGINFO (mostly for
 VM-assisted garbage collectors) but not queued signals, and without
 queued (i.e., real-time) signals there's no place to hang the value
 you want to pass to the signal handler.
 
 -GAWollman
 

From: David Xu <davidxu@freebsd.org>
To: bug-followup@FreeBSD.org,  kip@eventdriven.org
Cc:  
Subject: Re: kern/34017: The siginfo_t passed to the signal handling routine
 is not filled out for AIO
Date: Mon, 07 Nov 2005 08:05:56 +0800

 The signal queue is now supported on FreeBSD-current,
 however we still don't support SIGEV_THREAD for aio,
 it is a bit diffcult with current aio interfaces for
 me to implement it.
 
 David Xu
 
State-Changed-From-To: open->closed 
State-Changed-By: davidxu 
State-Changed-When: Fri Nov 11 08:23:07 GMT 2005 
State-Changed-Why:  
The support is in -CURRENT, there is no plan to backport it 
to ealier versions, there is too much difference in signal 
code. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=34017 
>Unformatted:
