| 1993 | } |
| 1994 | |
| 1995 | static void |
| 1996 | notifier_remove(struct proc *p, struct mqueue *mq, int fd) |
| 1997 | { |
| 1998 | struct mqueue_notifier *nt; |
| 1999 | |
| 2000 | mtx_assert(&mq->mq_mutex, MA_OWNED); |
| 2001 | PROC_LOCK(p); |
| 2002 | nt = notifier_search(p, fd); |
| 2003 | if (nt != NULL) { |
| 2004 | if (mq->mq_notifier == nt) |
| 2005 | mq->mq_notifier = NULL; |
| 2006 | sigqueue_take(&nt->nt_ksi); |
| 2007 | notifier_delete(p, nt); |
| 2008 | } |
| 2009 | PROC_UNLOCK(p); |
| 2010 | } |
| 2011 | |
| 2012 | static int |
| 2013 | kern_kmq_open(struct thread *td, const char *upath, int flags, mode_t mode, |
no test coverage detected