Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. =================================================================== RCS file: /ftp/cvs/cvsroot/src/sys/kern/uipc_socket.c,v retrieving revision 1.147 retrieving revision 1.147.2.2 diff -u -p -r1.147 -r1.147.2.2 --- src/sys/kern/uipc_socket.c 2007/11/24 07:49:03 1.147 +++ src/sys/kern/uipc_socket.c 2007/12/26 21:39:47 1.147.2.2 @@ -1,4 +1,4 @@ -/* $NetBSD: uipc_socket.c,v 1.147 2007/11/24 07:49:03 dyoung Exp $ */ +/* $NetBSD: uipc_socket.c,v 1.147.2.2 2007/12/26 21:39:47 ad Exp $ */ /*- * Copyright (c) 2002, 2007 The NetBSD Foundation, Inc. @@ -68,7 +68,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: uipc_socket.c,v 1.147 2007/11/24 07:49:03 dyoung Exp $"); +__KERNEL_RCSID(0, "$NetBSD: uipc_socket.c,v 1.147.2.2 2007/12/26 21:39:47 ad Exp $"); #include "opt_sock_counters.h" #include "opt_sosend_loan.h" @@ -452,7 +452,7 @@ void soinit(void) { - mutex_init(&so_pendfree_lock, MUTEX_DRIVER, IPL_VM); + mutex_init(&so_pendfree_lock, MUTEX_DEFAULT, IPL_VM); cv_init(&socurkva_cv, "sokva"); /* Set the initial adjusted socket buffer size. */ @@ -580,13 +580,13 @@ sobind(struct socket *so, struct mbuf *n } int -solisten(struct socket *so, int backlog) +solisten(struct socket *so, int backlog, struct lwp *l) { int s, error; s = splsoftnet(); error = (*so->so_proto->pr_usrreq)(so, PRU_LISTEN, NULL, - NULL, NULL, NULL); + NULL, NULL, l); if (error != 0) { splx(s); return error; @@ -1795,7 +1795,7 @@ soo_kqfilter(struct file *fp, struct kno sb = &so->so_snd; break; default: - return (1); + return (EINVAL); } SLIST_INSERT_HEAD(&sb->sb_sel.sel_klist, kn, kn_selnext); sb->sb_flags |= SB_KNOTE;