NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: kern/41225: sys_mqueue.c mq->mq_notify_proc can disappear
The following reply was made to PR kern/41225; it has been noted by GNATS.
From: David Laight <david%l8s.co.uk@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc:
Subject: Re: kern/41225: sys_mqueue.c mq->mq_notify_proc can disappear
Date: Thu, 16 Apr 2009 07:38:23 +0100
On Wed, Apr 15, 2009 at 10:10:01PM +0000, ad%netbsd.org@localhost wrote:
> >Synopsis: sys_mqueue.c mq->mq_notify_proc can disappear
>
> Quick and dirty fix:
>
> Change mq_notify() to store a pid_t and use p_find() when sending
> signals. mqueue can send signals to unrelated processes after
> the proc exits.
Can the message queue hold a reference count againt the proc table slot ?
This would stop the slot being reused.
I guess it should also be possibly to determine that the process had died
when it tries to send a new signal - removing the need for the exithook.
Just don't do the fubar recently added to linux where kernel code
can no longer send a signal to a pid!
David
--
David Laight: david%l8s.co.uk@localhost
Home |
Main Index |
Thread Index |
Old Index