Date: Wed, 5 Apr 2006 13:31:20 -0400 (EDT) From: Stephen.Corteselli@xilinxpc.ho.lucent.com To: FreeBSD-gnats-submit@FreeBSD.org Subject: kern/95357: knlist of vmnet device is incorrectly destroyed by tapclose() Message-ID: <200604051731.k35HVKhu014188@xilinxpc.ho.lucent.com> Resent-Message-ID: <200604051740.k35HeHZS039314@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 95357 >Category: kern >Synopsis: knlist of vmnet device is incorrectly destroyed by tapclose() >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Wed Apr 05 17:40:17 GMT 2006 >Closed-Date: >Last-Modified: >Originator: Stephen Corteselli >Release: FreeBSD 7.0-CURRENT i386 >Organization: >Environment: System: FreeBSD FreeBSD 7.0-CURRENT FreeBSD 7.0-CURRENT #0: Sun Apr 2 21:34:14 EDT 2006 sc@FreeBSD:/usr/sys/i386/compile/SC i386 >Description: In sys/net/if_tap.c 1.59 2006/03/16, tapclose() unconditionally destroys the knlist initialized in tapopen(). However, the vmnet device uses the knlist after tapclose is called. This causes a panic when ifconfig'ing vmnet1 with an IP address. (if_tap.ko is needed to run the VMware 2 port.) >How-To-Repeat: kldload if_tap.ko echo -n >/dev/vmnet1 ifconfig vmnet1 1.1.1.1 >Fix: I'm not sure what the proper fix is, but I got ifconfig not to panic the system by moving the call to knlist_destroy() (line 462 of sys/net/if_tap.c) to just before line 449 (i.e., in the if statement executed if this is NOT the vmnet device. >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200604051731.k35HVKhu014188>