From owner-svn-src-projects@FreeBSD.ORG Wed Oct 3 02:58:55 2012 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id F05A71065675; Wed, 3 Oct 2012 02:58:55 +0000 (UTC) (envelope-from grehan@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id DB6408FC08; Wed, 3 Oct 2012 02:58:55 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q932wtrO047759; Wed, 3 Oct 2012 02:58:55 GMT (envelope-from grehan@svn.freebsd.org) Received: (from grehan@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id q932wt0r047757; Wed, 3 Oct 2012 02:58:55 GMT (envelope-from grehan@svn.freebsd.org) Message-Id: <201210030258.q932wt0r047757@svn.freebsd.org> From: Peter Grehan Date: Wed, 3 Oct 2012 02:58:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r241150 - projects/bhyve/sys/boot/userboot/userboot X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 03 Oct 2012 02:58:56 -0000 Author: grehan Date: Wed Oct 3 02:58:55 2012 New Revision: 241150 URL: http://svn.freebsd.org/changeset/base/241150 Log: Restore the ability to boot partitioned disks. The previous submit broke that by forcing raw disks, due to the use of error returns by userboot's initial disk opens. Modified: projects/bhyve/sys/boot/userboot/userboot/userboot_disk.c Modified: projects/bhyve/sys/boot/userboot/userboot/userboot_disk.c ============================================================================== --- projects/bhyve/sys/boot/userboot/userboot/userboot_disk.c Wed Oct 3 02:32:47 2012 (r241149) +++ projects/bhyve/sys/boot/userboot/userboot/userboot_disk.c Wed Oct 3 02:58:55 2012 (r241150) @@ -103,7 +103,6 @@ userdisk_open(struct open_file *f, ...) { va_list ap; struct disk_devdesc *dev; - int rc; va_start(ap, f); dev = va_arg(ap, struct disk_devdesc *); @@ -112,15 +111,11 @@ userdisk_open(struct open_file *f, ...) if (dev->d_unit < 0 || dev->d_unit >= userboot_disk_maxunit) return (EIO); - rc = disk_open(dev); - - /* - * No MBR/GPT - assume a raw disk image - */ - if (rc) + if (dev->d_slice == -1 && dev->d_partition == -1) { dev->d_offset = 0; - - return (0); + return (0); + } else + return (disk_open(dev)); } static int