From owner-freebsd-virtualization@FreeBSD.ORG Tue Mar 6 19:59:55 2012 Return-Path: Delivered-To: freebsd-virtualization@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 38F7B1065678 for ; Tue, 6 Mar 2012 19:59:55 +0000 (UTC) (envelope-from zec@fer.hr) Received: from munja.zvne.fer.hr (munja.zvne.fer.hr [161.53.66.248]) by mx1.freebsd.org (Postfix) with ESMTP id B51B88FC16 for ; Tue, 6 Mar 2012 19:59:54 +0000 (UTC) Received: from sluga.fer.hr ([161.53.66.244]) by munja.zvne.fer.hr with Microsoft SMTPSVC(6.0.3790.4675); Tue, 6 Mar 2012 20:59:53 +0100 Received: from localhost ([161.53.19.8]) by sluga.fer.hr with Microsoft SMTPSVC(6.0.3790.4675); Tue, 6 Mar 2012 20:59:53 +0100 From: Marko Zec To: Monthadar Al Jaberi Date: Tue, 6 Mar 2012 20:59:31 +0100 User-Agent: KMail/1.9.10 References: In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <201203062059.31736.zec@fer.hr> X-OriginalArrivalTime: 06 Mar 2012 19:59:53.0272 (UTC) FILETIME=[B22AC380:01CCFBD3] Cc: Adrian Chadd , freebsd-virtualization@freebsd.org Subject: Re: VIMAGE + kldload wlan + kldload wtap panic X-BeenThere: freebsd-virtualization@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Discussion of various virtualization techniques FreeBSD supports." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 06 Mar 2012 19:59:55 -0000 On Tuesday 06 March 2012 20:49:38 Monthadar Al Jaberi wrote: > I added VNET_DEBUG and noticed this warning (original scan_task code): > > CURVNET_SET() recursion in sosend() line 1350, prev in kern_kldload() > 0xfffffe0002202c40 -> 0xfffffe0002202c40 > KDB: stack backtrace: > db_trace_self_wrapper() at db_trace_self_wrapper+0x2a > kdb_backtrace() at kdb_backtrace+0x37 > sosend() at sosend+0xbd > clnt_vc_call() at clnt_vc_call+0x3e6 > clnt_reconnect_call() at clnt_reconnect_call+0xf5 > newnfs_request() at newnfs_request+0x9fb > nfscl_request() at nfscl_request+0x72 > nfsrpc_lookup() at nfsrpc_lookup+0x1be > nfs_lookup() at nfs_lookup+0x297 > VOP_LOOKUP_APV() at VOP_LOOKUP_APV+0x95 > lookup() at lookup+0x3b8 > namei() at namei+0x484 > vn_open_cred() at vn_open_cred+0x1e2 > link_elf_load_file() at link_elf_load_file+0xb3 > linker_load_module() at linker_load_module+0x794 > kern_kldload() at kern_kldload+0x145 > sys_kldload() at sys_kldload+0x84 > amd64_syscall() at amd64_syscall+0x39e > Xfast_syscall() at Xfast_syscall+0xf7 You can safely ignore those. Recursing on curvnet is harmless, but in certain cases can't be avoided. When injecting new CURVNET_SET() / CURVNET_RESTORE() points in the existing code, those warnings are here to help us becoming aware that we are setting curvnet in a function which was invoked with an already valid curvnet context. Marko