From owner-cvs-all Fri Mar 29 17:36: 7 2002 Delivered-To: cvs-all@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 3B2F737B417; Fri, 29 Mar 2002 17:36:03 -0800 (PST) Received: (from marcel@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g2U1a3586718; Fri, 29 Mar 2002 17:36:03 -0800 (PST) (envelope-from marcel) Message-Id: <200203300136.g2U1a3586718@freefall.freebsd.org> From: Marcel Moolenaar Date: Fri, 29 Mar 2002 17:36:03 -0800 (PST) To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/boot/efi/libefi efifs.c X-FreeBSD-CVS-Branch: HEAD Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG marcel 2002/03/29 17:36:03 PST Modified files: sys/boot/efi/libefi efifs.c Log: Don't blindly dereference f->f_devdata as if it's always a pointer to an efi_devdesc structure. When we're netbooting, f->f_devdata holds the address of the network socket variable. Dereferencing this caused some very unpredictable behaviour, including proper functioning. So, as a sanity check, we first make sure f->f_dev points to our own devsw. If not, the open will fail before we use f->f_devdata. This solves the netboot hangs I invariably got whenever I used the latest toolchain to compile the EFI loader. Revision Changes Path 1.5 +6 -1 src/sys/boot/efi/libefi/efifs.c To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message