From owner-cvs-src@FreeBSD.ORG Tue Jul 27 20:30:56 2004 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7D05916A4CE; Tue, 27 Jul 2004 20:30:56 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4E9A043D5C; Tue, 27 Jul 2004 20:30:56 +0000 (GMT) (envelope-from glebius@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i6RKUuAM049203; Tue, 27 Jul 2004 20:30:56 GMT (envelope-from glebius@repoman.freebsd.org) Received: (from glebius@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i6RKUuQq049202; Tue, 27 Jul 2004 20:30:56 GMT (envelope-from glebius) Message-Id: <200407272030.i6RKUuQq049202@repoman.freebsd.org> From: Gleb Smirnoff Date: Tue, 27 Jul 2004 20:30:56 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/netgraph netgraph.h ng_base.c ng_socket.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 27 Jul 2004 20:30:56 -0000 glebius 2004-07-27 20:30:56 UTC FreeBSD src repository Modified files: sys/netgraph netgraph.h ng_base.c ng_socket.c Log: When making a peer of unknown type framework tries to load module using linker_load_module(). This works OK if NGM_MKPEER message came from userland and we have process associated with thread. But when NGM_MKPEER was queued because target node was busy, linker_load_module() is called from netisr thread leading to panic. To workaround that we do not load modules by framework, instead ng_socket loads module (if this is required) before sending NGM_MKPEER. However, the race condition between return from NgSendMsg() and actual creation of node still exist and needs to be solved. PR: kern/62789 Approved by: julian Revision Changes Path 1.43 +1 -0 src/sys/netgraph/netgraph.h 1.84 +5 -19 src/sys/netgraph/ng_base.c 1.52 +34 -0 src/sys/netgraph/ng_socket.c