From owner-p4-projects@FreeBSD.ORG Thu Nov 2 01:48:52 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0EE1116A591; Thu, 2 Nov 2006 01:48:51 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A8E4A16A58F for ; Thu, 2 Nov 2006 01:48:51 +0000 (UTC) (envelope-from mjacob@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1565143D60 for ; Thu, 2 Nov 2006 01:48:51 +0000 (GMT) (envelope-from mjacob@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id kA21mpkw011001 for ; Thu, 2 Nov 2006 01:48:51 GMT (envelope-from mjacob@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id kA21mmMU010997 for perforce@freebsd.org; Thu, 2 Nov 2006 01:48:48 GMT (envelope-from mjacob@freebsd.org) Date: Thu, 2 Nov 2006 01:48:48 GMT Message-Id: <200611020148.kA21mmMU010997@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to mjacob@freebsd.org using -f From: Matt Jacob To: Perforce Change Reviews Cc: Subject: PERFORCE change 108996 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 02 Nov 2006 01:48:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=108996 Change 108996 by mjacob@newisp on 2006/11/02 01:48:19 IFC Affected files ... .. //depot/projects/newisp/amd64/amd64/genassym.c#2 integrate .. //depot/projects/newisp/amd64/linux32/linux32_sysvec.c#3 integrate .. //depot/projects/newisp/arm/arm/elf_trampoline.c#4 integrate .. //depot/projects/newisp/arm/arm/genassym.c#2 integrate .. //depot/projects/newisp/boot/common/Makefile.inc#2 integrate .. //depot/projects/newisp/boot/common/bootstrap.h#2 integrate .. //depot/projects/newisp/boot/common/devopen.c#2 integrate .. //depot/projects/newisp/boot/efi/libefi/devicename.c#2 integrate .. //depot/projects/newisp/boot/efi/libefi/efiboot.h#2 integrate .. //depot/projects/newisp/boot/efi/libefi/efifs.c#2 integrate .. //depot/projects/newisp/boot/i386/libi386/bioscd.c#2 integrate .. //depot/projects/newisp/boot/i386/libi386/biosdisk.c#2 integrate .. //depot/projects/newisp/boot/i386/libi386/bootinfo32.c#2 integrate .. //depot/projects/newisp/boot/i386/libi386/devicename.c#2 integrate .. //depot/projects/newisp/boot/i386/libi386/libi386.h#3 integrate .. //depot/projects/newisp/boot/i386/loader/Makefile#2 integrate .. //depot/projects/newisp/boot/i386/loader/main.c#2 integrate .. //depot/projects/newisp/boot/ia64/efi/main.c#2 integrate .. //depot/projects/newisp/boot/ia64/ski/devicename.c#2 integrate .. //depot/projects/newisp/boot/ia64/ski/libski.h#2 integrate .. //depot/projects/newisp/boot/ia64/ski/main.c#2 integrate .. //depot/projects/newisp/boot/ofw/common/main.c#2 integrate .. //depot/projects/newisp/boot/ofw/libofw/libofw.h#2 integrate .. //depot/projects/newisp/boot/pc98/libpc98/bioscd.c#2 integrate .. //depot/projects/newisp/boot/pc98/libpc98/biosdisk.c#2 integrate .. //depot/projects/newisp/boot/pc98/loader/Makefile#2 integrate .. //depot/projects/newisp/boot/pc98/loader/main.c#2 integrate .. //depot/projects/newisp/boot/sparc64/loader/main.c#3 integrate .. //depot/projects/newisp/cam/cam_ccb.h#2 integrate .. //depot/projects/newisp/cam/cam_xpt.c#4 integrate .. //depot/projects/newisp/cam/scsi/scsi_da.c#5 integrate .. //depot/projects/newisp/cam/scsi/scsi_low.c#3 integrate .. //depot/projects/newisp/conf/NOTES#11 integrate .. //depot/projects/newisp/conf/files#10 integrate .. //depot/projects/newisp/conf/files.sparc64#3 integrate .. //depot/projects/newisp/conf/options#5 integrate .. //depot/projects/newisp/conf/options.sparc64#2 integrate .. //depot/projects/newisp/dev/aac/aac_cam.c#3 integrate .. //depot/projects/newisp/dev/acpi_support/acpi_aiboost.c#2 integrate .. //depot/projects/newisp/dev/acpi_support/acpi_sony.c#2 integrate .. //depot/projects/newisp/dev/advansys/advansys.c#3 integrate .. //depot/projects/newisp/dev/advansys/advlib.c#3 integrate .. //depot/projects/newisp/dev/advansys/adwcam.c#3 integrate .. //depot/projects/newisp/dev/aha/aha.c#3 integrate .. //depot/projects/newisp/dev/ahb/ahb.c#3 integrate .. //depot/projects/newisp/dev/aic/aic.c#3 integrate .. //depot/projects/newisp/dev/aic7xxx/aic79xx_osm.c#2 integrate .. //depot/projects/newisp/dev/aic7xxx/aic79xx_osm.h#2 integrate .. //depot/projects/newisp/dev/aic7xxx/aic7xxx_osm.c#3 integrate .. //depot/projects/newisp/dev/aic7xxx/aic7xxx_osm.h#2 integrate .. //depot/projects/newisp/dev/amd/amd.c#3 integrate .. //depot/projects/newisp/dev/amr/amr.c#2 integrate .. //depot/projects/newisp/dev/amr/amr_cam.c#3 integrate .. //depot/projects/newisp/dev/amr/amr_disk.c#2 integrate .. //depot/projects/newisp/dev/arcmsr/arcmsr.c#4 integrate .. //depot/projects/newisp/dev/asr/asr.c#3 integrate .. //depot/projects/newisp/dev/ata/ata-disk.c#3 integrate .. //depot/projects/newisp/dev/ata/ata-raid.c#2 integrate .. //depot/projects/newisp/dev/ata/atapi-cam.c#3 integrate .. //depot/projects/newisp/dev/buslogic/bt.c#2 integrate .. //depot/projects/newisp/dev/ciss/ciss.c#3 integrate .. //depot/projects/newisp/dev/dc/if_dc.c#4 integrate .. //depot/projects/newisp/dev/dpt/dpt_scsi.c#3 integrate .. //depot/projects/newisp/dev/em/if_em.c#11 integrate .. //depot/projects/newisp/dev/em/if_em.h#5 integrate .. //depot/projects/newisp/dev/em/if_em_hw.c#3 integrate .. //depot/projects/newisp/dev/em/if_em_hw.h#3 integrate .. //depot/projects/newisp/dev/em/if_em_osdep.h#3 integrate .. //depot/projects/newisp/dev/esp/ncr53c9x.c#3 integrate .. //depot/projects/newisp/dev/firewire/sbp.c#3 integrate .. //depot/projects/newisp/dev/iir/iir.c#3 integrate .. //depot/projects/newisp/dev/isp/isp_freebsd.c#17 integrate .. //depot/projects/newisp/dev/md/md.c#2 integrate .. //depot/projects/newisp/dev/mly/mly.c#3 integrate .. //depot/projects/newisp/dev/mpt/mpt_cam.c#7 integrate .. //depot/projects/newisp/dev/sym/sym_hipd.c#2 integrate .. //depot/projects/newisp/dev/trm/trm.c#3 integrate .. //depot/projects/newisp/dev/twa/tw_osl_cam.c#3 integrate .. //depot/projects/newisp/dev/uart/uart_kbd_sun.c#4 integrate .. //depot/projects/newisp/dev/uart/uart_kbd_sun.h#2 integrate .. //depot/projects/newisp/dev/usb/umass.c#5 integrate .. //depot/projects/newisp/geom/concat/g_concat.c#2 integrate .. //depot/projects/newisp/geom/eli/g_eli.c#3 integrate .. //depot/projects/newisp/geom/geom.h#3 integrate .. //depot/projects/newisp/geom/geom_disk.c#2 integrate .. //depot/projects/newisp/geom/geom_disk.h#2 integrate .. //depot/projects/newisp/geom/geom_gpt.c#2 integrate .. //depot/projects/newisp/geom/geom_io.c#2 integrate .. //depot/projects/newisp/geom/geom_slice.c#2 integrate .. //depot/projects/newisp/geom/journal/g_journal.c#1 branch .. //depot/projects/newisp/geom/journal/g_journal.h#1 branch .. //depot/projects/newisp/geom/journal/g_journal_ufs.c#1 branch .. //depot/projects/newisp/geom/mirror/g_mirror.c#4 integrate .. //depot/projects/newisp/geom/mirror/g_mirror.h#2 integrate .. //depot/projects/newisp/geom/mirror/g_mirror_ctl.c#2 integrate .. //depot/projects/newisp/geom/raid3/g_raid3.c#6 integrate .. //depot/projects/newisp/geom/raid3/g_raid3.h#2 integrate .. //depot/projects/newisp/geom/raid3/g_raid3_ctl.c#3 integrate .. //depot/projects/newisp/geom/shsec/g_shsec.c#2 integrate .. //depot/projects/newisp/geom/stripe/g_stripe.c#2 integrate .. //depot/projects/newisp/i386/conf/NOTES#6 integrate .. //depot/projects/newisp/i386/i386/genassym.c#2 integrate .. //depot/projects/newisp/ia64/ia64/genassym.c#2 integrate .. //depot/projects/newisp/kern/subr_disk.c#2 integrate .. //depot/projects/newisp/kern/subr_prf.c#3 integrate .. //depot/projects/newisp/kern/tty_cons.c#2 integrate .. //depot/projects/newisp/kern/tty_pts.c#3 integrate .. //depot/projects/newisp/kern/vfs_subr.c#6 integrate .. //depot/projects/newisp/modules/geom/Makefile#3 integrate .. //depot/projects/newisp/modules/geom/geom_journal/Makefile#1 branch .. //depot/projects/newisp/modules/ufs/Makefile#2 integrate .. //depot/projects/newisp/net/bridgestp.c#3 integrate .. //depot/projects/newisp/net/bridgestp.h#2 integrate .. //depot/projects/newisp/net/if_bridge.c#5 integrate .. //depot/projects/newisp/net/if_bridgevar.h#2 integrate .. //depot/projects/newisp/nfsclient/nfs_socket.c#3 integrate .. //depot/projects/newisp/pci/if_sis.c#4 integrate .. //depot/projects/newisp/pci/ncr.c#3 integrate .. //depot/projects/newisp/powerpc/powerpc/genassym.c#2 integrate .. //depot/projects/newisp/sparc64/conf/NOTES#4 integrate .. //depot/projects/newisp/sparc64/sparc64/genassym.c#3 integrate .. //depot/projects/newisp/sun4v/include/hypervisorvar.h#2 integrate .. //depot/projects/newisp/sun4v/sun4v/hcall.S#2 integrate .. //depot/projects/newisp/sys/bio.h#2 integrate .. //depot/projects/newisp/sys/cons.h#2 integrate .. //depot/projects/newisp/sys/mount.h#5 integrate .. //depot/projects/newisp/sys/pcpu.h#2 integrate .. //depot/projects/newisp/sys/vnode.h#2 integrate .. //depot/projects/newisp/ufs/ffs/ffs_extern.h#2 integrate .. //depot/projects/newisp/ufs/ffs/ffs_softdep.c#4 integrate .. //depot/projects/newisp/ufs/ffs/ffs_vfsops.c#4 integrate .. //depot/projects/newisp/ufs/ffs/fs.h#2 integrate .. //depot/projects/newisp/ufs/ufs/gjournal.h#1 branch .. //depot/projects/newisp/ufs/ufs/ufs_gjournal.c#1 branch .. //depot/projects/newisp/ufs/ufs/ufs_inode.c#2 integrate .. //depot/projects/newisp/ufs/ufs/ufs_vnops.c#5 integrate Differences ... ==== //depot/projects/newisp/amd64/amd64/genassym.c#2 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/genassym.c,v 1.157 2005/09/27 21:10:10 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/genassym.c,v 1.158 2006/11/01 04:54:49 jb Exp $"); #include "opt_compat.h" #include "opt_kstack_pages.h" @@ -185,6 +185,7 @@ ASSYM(PC_FPCURTHREAD, offsetof(struct pcpu, pc_fpcurthread)); ASSYM(PC_IDLETHREAD, offsetof(struct pcpu, pc_idlethread)); ASSYM(PC_CURPCB, offsetof(struct pcpu, pc_curpcb)); +ASSYM(PC_CONS_BUFR, offsetof(struct pcpu, pc_cons_bufr)); ASSYM(PC_CPUID, offsetof(struct pcpu, pc_cpuid)); ASSYM(PC_SCRATCH_RSP, offsetof(struct pcpu, pc_scratch_rsp)); ASSYM(PC_CURPMAP, offsetof(struct pcpu, pc_curpmap)); ==== //depot/projects/newisp/amd64/linux32/linux32_sysvec.c#3 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_sysvec.c,v 1.24 2006/09/09 16:25:25 netchild Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_sysvec.c,v 1.25 2006/10/31 17:53:02 kib Exp $"); #include "opt_compat.h" #ifndef COMPAT_IA32 @@ -868,7 +868,7 @@ */ if (sigcodesz) copyout(imgp->proc->p_sysent->sv_sigcode, - ((caddr_t)arginfo - sigcodesz), szsigcode); + ((caddr_t)arginfo - sigcodesz), sigcodesz); /* * If we have a valid auxargs ptr, prepare some room ==== //depot/projects/newisp/arm/arm/elf_trampoline.c#4 (text+ko) ==== @@ -23,11 +23,10 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.15 2006/10/30 23:23:00 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/elf_trampoline.c,v 1.16 2006/11/01 12:41:43 cognet Exp $"); #include -#include +#include #include -#include #include #include #include ==== //depot/projects/newisp/arm/arm/genassym.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/genassym.c,v 1.6 2005/10/06 11:26:37 cognet Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/genassym.c,v 1.7 2006/11/01 04:54:50 jb Exp $"); #include #include #include @@ -69,6 +69,7 @@ ASSYM(PCB_PC, offsetof(struct pcb, un_32.pcb32_pc)); ASSYM(PCB_SP, offsetof(struct pcb, un_32.pcb32_sp)); +ASSYM(PC_CONS_BUFR, offsetof(struct pcpu, pc_cons_bufr)); ASSYM(PC_CURPCB, offsetof(struct pcpu, pc_curpcb)); ASSYM(PC_CURTHREAD, offsetof(struct pcpu, pc_curthread)); ASSYM(M_LEN, offsetof(struct mbuf, m_len)); ==== //depot/projects/newisp/boot/common/Makefile.inc#2 (text+ko) ==== @@ -1,6 +1,6 @@ -# $FreeBSD: src/sys/boot/common/Makefile.inc,v 1.22 2006/05/12 04:09:52 jhb Exp $ +# $FreeBSD: src/sys/boot/common/Makefile.inc,v 1.23 2006/11/02 00:26:44 marcel Exp $ -SRCS+= bcache.c boot.c commands.c console.c devopen.c interp.c +SRCS+= boot.c commands.c console.c devopen.c interp.c SRCS+= interp_backslash.c interp_parse.c ls.c misc.c SRCS+= module.c panic.c @@ -19,6 +19,10 @@ SRCS+= dev_net.c .endif +.if defined(HAVE_BCACHE) +SRCS+= bcache.c +.endif + # Machine-independant ISA PnP .if defined(HAVE_ISABUS) SRCS+= isapnp.c ==== //depot/projects/newisp/boot/common/bootstrap.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/common/bootstrap.h,v 1.42 2005/12/18 04:52:35 marcel Exp $ + * $FreeBSD: src/sys/boot/common/bootstrap.h,v 1.43 2006/11/02 01:23:17 marcel Exp $ */ #include @@ -43,6 +43,7 @@ #define DEVT_DISK 1 #define DEVT_NET 2 #define DEVT_CD 3 + int d_unit; }; /* Commands and return values; nonzero return sets command_errmsg != NULL */ ==== //depot/projects/newisp/boot/common/devopen.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/common/devopen.c,v 1.4 2003/08/25 23:30:41 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/common/devopen.c,v 1.5 2006/11/02 00:02:22 marcel Exp $"); #include #include @@ -35,20 +35,25 @@ int devopen(struct open_file *f, const char *fname, const char **file) { - struct devdesc *dev; - int result; + struct devdesc *dev; + int result; + + result = archsw.arch_getdev((void **)&dev, fname, file); + if (result) + return (result); - if ((result = archsw.arch_getdev((void *)&dev, fname, file)) == 0) { /* get the device */ - /* point to device-specific data so that device open can use it */ - f->f_devdata = dev; - if ((result = dev->d_dev->dv_open(f, dev)) == 0) { /* try to open it */ - /* reference the devsw entry from the open_file structure */ - f->f_dev = dev->d_dev; - } else { - free(dev); /* release the device descriptor */ - } + /* point to device-specific data so that device open can use it */ + f->f_devdata = dev; + result = dev->d_dev->dv_open(f, dev); + if (result != 0) { + f->f_devdata = NULL; + free(dev); + return (result); } - return(result); + + /* reference the devsw entry from the open_file structure */ + f->f_dev = dev->d_dev; + return (0); } int ==== //depot/projects/newisp/boot/efi/libefi/devicename.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/efi/libefi/devicename.c,v 1.3 2004/01/04 23:28:16 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/efi/libefi/devicename.c,v 1.4 2006/11/02 01:23:17 marcel Exp $"); #include #include @@ -146,7 +146,7 @@ goto fail; } - idev->d_kind.efidisk.unit = unit; + idev->d_unit = unit; idev->d_kind.efidisk.slice = slice; idev->d_kind.efidisk.partition = partition; @@ -169,7 +169,7 @@ goto fail; } - idev->d_kind.netif.unit = unit; + idev->d_unit = unit; if (path != NULL) *path = (*cp == 0) ? cp : cp + 1; break; @@ -207,7 +207,7 @@ case DEVT_DISK: cp = buf; - cp += sprintf(cp, "%s%d", dev->d_dev->dv_name, dev->d_kind.efidisk.unit); + cp += sprintf(cp, "%s%d", dev->d_dev->dv_name, dev->d_unit); if (dev->d_kind.efidisk.slice > 0) cp += sprintf(cp, "s%d", dev->d_kind.efidisk.slice); if (dev->d_kind.efidisk.partition >= 0) @@ -216,7 +216,7 @@ break; case DEVT_NET: - sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_kind.netif.unit); + sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_unit); break; } return(buf); ==== //depot/projects/newisp/boot/efi/libefi/efiboot.h#2 (text+ko) ==== @@ -28,7 +28,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/efi/libefi/efiboot.h,v 1.9 2005/01/05 22:16:57 imp Exp $ + * $FreeBSD: src/sys/boot/efi/libefi/efiboot.h,v 1.10 2006/11/02 01:23:17 marcel Exp $ */ /* @@ -40,16 +40,13 @@ #define DEVT_NONE 0 #define DEVT_DISK 1 #define DEVT_NET 2 + int d_unit; EFI_HANDLE d_handle; union { struct { - int unit; int slice; int partition; } efidisk; - struct { - int unit; /* XXX net layer lives over these? */ - } netif; } d_kind; }; ==== //depot/projects/newisp/boot/efi/libefi/efifs.c#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/efi/libefi/efifs.c,v 1.8 2003/08/02 08:22:03 marcel Exp $ + * $FreeBSD: src/sys/boot/efi/libefi/efifs.c,v 1.9 2006/11/02 01:23:17 marcel Exp $ */ #include @@ -365,7 +365,7 @@ dev = va_arg(args, struct efi_devdesc*); va_end(args); - unit = dev->d_kind.efidisk.unit; + unit = dev->d_unit; if (unit < 0 || unit >= fs_handle_count) { printf("attempt to open nonexistent EFI filesystem\n"); return(ENXIO); ==== //depot/projects/newisp/boot/i386/libi386/bioscd.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/bioscd.c,v 1.8 2005/05/20 13:14:18 charnier Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/bioscd.c,v 1.9 2006/11/02 01:23:17 marcel Exp $"); /* * BIOS CD device handling for CD's that have been booted off of via no @@ -195,7 +195,7 @@ va_start(ap, f); dev = va_arg(ap, struct i386_devdesc *); va_end(ap); - if (dev->d_kind.bioscd.unit >= nbcinfo) { + if (dev->d_unit >= nbcinfo) { DEBUG("attempt to open nonexistent disk"); return(ENXIO); } @@ -230,7 +230,7 @@ if (rw != F_READ) return(EROFS); dev = (struct i386_devdesc *)devdata; - unit = dev->d_kind.bioscd.unit; + unit = dev->d_unit; blks = size / BIOSCD_SECSIZE; if (dblk % (BIOSCD_SECSIZE / DEV_BSIZE) != 0) return (EINVAL); @@ -331,7 +331,7 @@ int major; int rootdev; - unit = dev->d_kind.bioscd.unit; + unit = dev->d_unit; biosdev = bc_unit2bios(unit); DEBUG("unit %d BIOS device %d", unit, biosdev); if (biosdev == -1) /* not a BIOS device */ ==== //depot/projects/newisp/boot/i386/libi386/biosdisk.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biosdisk.c,v 1.47 2006/05/31 09:05:49 iedowse Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/biosdisk.c,v 1.48 2006/11/02 01:23:17 marcel Exp $"); /* * BIOS disk device handling. @@ -251,7 +251,7 @@ pager_output(line); /* try to open the whole disk */ - dev.d_kind.biosdisk.unit = i; + dev.d_unit = i; dev.d_kind.biosdisk.slice = -1; dev.d_kind.biosdisk.partition = -1; @@ -454,7 +454,7 @@ int error; char buf[BUFSIZE]; - if (dev->d_kind.biosdisk.unit >= nbdinfo) { + if (dev->d_unit >= nbdinfo) { DEBUG("attempt to open nonexistent disk"); return(ENXIO); } @@ -466,14 +466,14 @@ } /* Look up BIOS unit number, intialise open_disk structure */ - od->od_dkunit = dev->d_kind.biosdisk.unit; + od->od_dkunit = dev->d_unit; od->od_unit = bdinfo[od->od_dkunit].bd_unit; od->od_flags = bdinfo[od->od_dkunit].bd_flags; od->od_boff = 0; od->od_nslices = 0; error = 0; DEBUG("open '%s', unit 0x%x slice %d partition %c", - i386_fmtdev(dev), dev->d_kind.biosdisk.unit, + i386_fmtdev(dev), dev->d_unit, dev->d_kind.biosdisk.slice, dev->d_kind.biosdisk.partition + 'a'); /* Get geometry for this open (removable device may have changed) */ @@ -1177,8 +1177,8 @@ char *nip, *cp; int unitofs = 0, i, unit; - biosdev = bd_unit2bios(dev->d_kind.biosdisk.unit); - DEBUG("unit %d BIOS device %d", dev->d_kind.biosdisk.unit, biosdev); + biosdev = bd_unit2bios(dev->d_unit); + DEBUG("unit %d BIOS device %d", dev->d_unit, biosdev); if (biosdev == -1) /* not a BIOS device */ return(-1); if (bd_opendisk(&od, dev) != 0) /* oops, not a viable device */ @@ -1186,7 +1186,7 @@ if (biosdev < 0x80) { /* floppy (or emulated floppy) or ATAPI device */ - if (bdinfo[dev->d_kind.biosdisk.unit].bd_type == DT_ATAPI) { + if (bdinfo[dev->d_unit].bd_type == DT_ATAPI) { /* is an ATAPI disk */ major = WFDMAJOR; } else { ==== //depot/projects/newisp/boot/i386/libi386/bootinfo32.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/bootinfo32.c,v 1.36 2003/08/25 23:28:31 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/bootinfo32.c,v 1.37 2006/11/02 01:23:17 marcel Exp $"); #include #include @@ -172,13 +172,13 @@ switch(rootdev->d_type) { case DEVT_CD: /* Pass in BIOS device number. */ - bi.bi_bios_dev = bc_unit2bios(rootdev->d_kind.bioscd.unit); + bi.bi_bios_dev = bc_unit2bios(rootdev->d_unit); bootdevnr = bc_getdev(rootdev); break; case DEVT_DISK: /* pass in the BIOS device number of the current disk */ - bi.bi_bios_dev = bd_unit2bios(rootdev->d_kind.biosdisk.unit); + bi.bi_bios_dev = bd_unit2bios(rootdev->d_unit); bootdevnr = bd_getdev(rootdev); break; ==== //depot/projects/newisp/boot/i386/libi386/devicename.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/devicename.c,v 1.7 2005/05/27 19:28:04 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/libi386/devicename.c,v 1.8 2006/11/02 01:23:17 marcel Exp $"); #include #include @@ -142,7 +142,7 @@ goto fail; } - idev->d_kind.biosdisk.unit = unit; + idev->d_unit = unit; idev->d_kind.biosdisk.slice = slice; idev->d_kind.biosdisk.partition = partition; if (path != NULL) @@ -165,10 +165,7 @@ goto fail; } - if (dv->dv_type == DEVT_NET) - idev->d_kind.netif.unit = unit; - else - idev->d_kind.bioscd.unit = unit; + idev->d_unit = unit; if (path != NULL) *path = (*cp == 0) ? cp : cp + 1; break; @@ -205,12 +202,12 @@ break; case DEVT_CD: - sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_kind.bioscd.unit); + sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_unit); break; case DEVT_DISK: cp = buf; - cp += sprintf(cp, "%s%d", dev->d_dev->dv_name, dev->d_kind.biosdisk.unit); + cp += sprintf(cp, "%s%d", dev->d_dev->dv_name, dev->d_unit); if (dev->d_kind.biosdisk.slice > 0) cp += sprintf(cp, "s%d", dev->d_kind.biosdisk.slice); if (dev->d_kind.biosdisk.partition >= 0) @@ -219,7 +216,7 @@ break; case DEVT_NET: - sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_kind.netif.unit); + sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_unit); break; } return(buf); ==== //depot/projects/newisp/boot/i386/libi386/libi386.h#3 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/i386/libi386/libi386.h,v 1.26 2006/09/29 20:27:41 ru Exp $ + * $FreeBSD: src/sys/boot/i386/libi386/libi386.h,v 1.27 2006/11/02 01:23:17 marcel Exp $ */ @@ -36,24 +36,19 @@ { struct devsw *d_dev; int d_type; + int d_unit; union { struct { - int unit; + void *data; int slice; int partition; - void *data; } biosdisk; struct { - int unit; void *data; } bioscd; - struct - { - int unit; /* XXX net layer lives over these? */ - } netif; } d_kind; }; ==== //depot/projects/newisp/boot/i386/loader/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/boot/i386/loader/Makefile,v 1.83 2006/03/17 18:54:35 ru Exp $ +# $FreeBSD: src/sys/boot/i386/loader/Makefile,v 1.84 2006/11/02 00:26:44 marcel Exp $ .include @@ -16,6 +16,9 @@ CFLAGS+= -DLOADER_NFS_SUPPORT .endif +# Include bcache code. +HAVE_BCACHE= yes + # Enable PnP and ISA-PnP code. HAVE_PNP= yes HAVE_ISABUS= yes ==== //depot/projects/newisp/boot/i386/loader/main.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/i386/loader/main.c,v 1.37 2006/08/04 07:56:32 yar Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/i386/loader/main.c,v 1.38 2006/11/02 01:23:18 marcel Exp $"); /* * MD bootstrap main() and assorted miscellaneous @@ -201,11 +201,11 @@ if ((kargs->bootflags & KARGS_FLAGS_CD) != 0) { /* we are booting from a CD with cdboot */ new_currdev.d_dev = &bioscd; - new_currdev.d_kind.bioscd.unit = bc_bios2unit(initial_bootdev); + new_currdev.d_unit = bc_bios2unit(initial_bootdev); } else if ((kargs->bootflags & KARGS_FLAGS_PXE) != 0) { /* we are booting from pxeldr */ new_currdev.d_dev = &pxedisk; - new_currdev.d_kind.netif.unit = 0; + new_currdev.d_unit = 0; } else { /* we don't know what our boot device is */ new_currdev.d_kind.biosdisk.slice = -1; @@ -240,10 +240,10 @@ * which one we booted off of, just use disk0: as a reasonable default. */ if ((new_currdev.d_type == biosdisk.dv_type) && - ((new_currdev.d_kind.biosdisk.unit = bd_bios2unit(biosdev)) == -1)) { + ((new_currdev.d_unit = bd_bios2unit(biosdev)) == -1)) { printf("Can't work out which disk we are booting from.\n" "Guessed BIOS device 0x%x not found by probes, defaulting to disk0:\n", biosdev); - new_currdev.d_kind.biosdisk.unit = 0; + new_currdev.d_unit = 0; } env_setenv("currdev", EV_VOLATILE, i386_fmtdev(&new_currdev), i386_setcurrdev, env_nounset); ==== //depot/projects/newisp/boot/ia64/efi/main.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/ia64/efi/main.c,v 1.24 2004/11/23 05:37:47 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/ia64/efi/main.c,v 1.26 2006/11/02 01:23:18 marcel Exp $"); #include #include @@ -112,11 +112,6 @@ */ cons_probe(); - /* - * Initialise the block cache - */ - bcache_init(32, 512); /* 16k XXX tune this */ - find_pal_proc(); /* @@ -140,13 +135,13 @@ i = efifs_get_unit(img->DeviceHandle); if (i >= 0) { currdev.d_dev = devsw[0]; /* XXX disk */ - currdev.d_kind.efidisk.unit = i; + currdev.d_unit = i; /* XXX should be able to detect this, default to autoprobe */ currdev.d_kind.efidisk.slice = -1; currdev.d_kind.efidisk.partition = 0; } else { currdev.d_dev = devsw[1]; /* XXX net */ - currdev.d_kind.netif.unit = 0; /* XXX */ + currdev.d_unit = 0; /* XXX */ } currdev.d_type = currdev.d_dev->dv_type; ==== //depot/projects/newisp/boot/ia64/ski/devicename.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/ia64/ski/devicename.c,v 1.3 2004/09/24 03:53:50 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/ia64/ski/devicename.c,v 1.4 2006/11/02 01:23:18 marcel Exp $"); #include #include @@ -143,7 +143,7 @@ goto fail; } - idev->d_kind.skidisk.unit = unit; + idev->d_unit = unit; idev->d_kind.skidisk.slice = slice; idev->d_kind.skidisk.partition = partition; @@ -166,7 +166,7 @@ goto fail; } - idev->d_kind.netif.unit = unit; + idev->d_unit = unit; if (path != NULL) *path = (*cp == 0) ? cp : cp + 1; break; @@ -204,7 +204,7 @@ case DEVT_DISK: cp = buf; - cp += sprintf(cp, "%s%d", dev->d_dev->dv_name, dev->d_kind.skidisk.unit); + cp += sprintf(cp, "%s%d", dev->d_dev->dv_name, dev->d_unit); if (dev->d_kind.skidisk.slice > 0) cp += sprintf(cp, "s%d", dev->d_kind.skidisk.slice); if (dev->d_kind.skidisk.partition >= 0) @@ -213,7 +213,7 @@ break; case DEVT_NET: - sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_kind.netif.unit); + sprintf(buf, "%s%d:", dev->d_dev->dv_name, dev->d_unit); break; } return(buf); ==== //depot/projects/newisp/boot/ia64/ski/libski.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/ia64/ski/libski.h,v 1.6 2004/09/24 04:06:22 marcel Exp $ + * $FreeBSD: src/sys/boot/ia64/ski/libski.h,v 1.7 2006/11/02 01:23:18 marcel Exp $ */ /* @@ -35,15 +35,12 @@ #define DEVT_NONE 0 #define DEVT_DISK 1 #define DEVT_NET 2 + int d_unit; union { struct { - int unit; int slice; int partition; } skidisk; - struct { - int unit; /* XXX net layer lives over these? */ - } netif; } d_kind; }; ==== //depot/projects/newisp/boot/ia64/ski/main.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/ia64/ski/main.c,v 1.6 2004/09/24 04:06:22 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/ia64/ski/main.c,v 1.8 2006/11/02 01:23:18 marcel Exp $"); #include #include @@ -73,11 +73,6 @@ cons_probe(); /* - * Initialise the block cache - */ - bcache_init(32, 512); /* 16k XXX tune this */ - - /* * March through the device switch probing for things. */ for (i = 0; devsw[i] != NULL; i++) @@ -94,7 +89,7 @@ /* XXX presumes that biosdisk is first in devsw */ currdev.d_dev = devsw[0]; currdev.d_type = currdev.d_dev->dv_type; - currdev.d_kind.skidisk.unit = 0; + currdev.d_unit = 0; /* XXX should be able to detect this, default to autoprobe */ currdev.d_kind.skidisk.slice = -1; /* default to 'a' */ ==== //depot/projects/newisp/boot/ofw/common/main.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/ofw/common/main.c,v 1.7 2004/08/16 15:45:24 marius Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/ofw/common/main.c,v 1.8 2006/11/02 00:26:45 marcel Exp $"); #include #include "openfirm.h" @@ -125,11 +125,6 @@ init_heap(); /* - * Initialise the block cache - */ - bcache_init(32, 512); /* 16k XXX tune this */ - - /* * March through the device switch probing for things. */ for (i = 0; devsw[i] != NULL; i++) ==== //depot/projects/newisp/boot/ofw/libofw/libofw.h#2 (text+ko) ==== @@ -22,7 +22,7 @@ * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/boot/ofw/libofw/libofw.h,v 1.11 2005/10/20 11:14:34 marius Exp $ + * $FreeBSD: src/sys/boot/ofw/libofw/libofw.h,v 1.12 2006/11/02 01:23:18 marcel Exp $ */ #include "openfirm.h" @@ -31,6 +31,7 @@ struct ofw_devdesc { struct devsw *d_dev; int d_type; + int d_unit; ihandle_t d_handle; char d_path[256]; }; ==== //depot/projects/newisp/boot/pc98/libpc98/bioscd.c#2 (text) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/bioscd.c,v 1.1 2006/05/14 07:26:02 nyan Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/bioscd.c,v 1.2 2006/11/02 01:23:18 marcel Exp $"); /* * BIOS CD device handling for CD's that have been booted off of via no @@ -192,7 +192,7 @@ va_start(ap, f); dev = va_arg(ap, struct i386_devdesc *); va_end(ap); - if (dev->d_kind.bioscd.unit >= nbcinfo) { + if (dev->d_unit >= nbcinfo) { DEBUG("attempt to open nonexistent disk"); return(ENXIO); } @@ -227,7 +227,7 @@ if (rw != F_READ) return(EROFS); dev = (struct i386_devdesc *)devdata; - unit = dev->d_kind.bioscd.unit; + unit = dev->d_unit; blks = size / BIOSCD_SECSIZE; if (dblk % (BIOSCD_SECSIZE / DEV_BSIZE) != 0) return (EINVAL); @@ -321,7 +321,7 @@ int major; int rootdev; - unit = dev->d_kind.bioscd.unit; + unit = dev->d_unit; biosdev = bc_unit2bios(unit); DEBUG("unit %d BIOS device %d", unit, biosdev); if (biosdev == -1) /* not a BIOS device */ ==== //depot/projects/newisp/boot/pc98/libpc98/biosdisk.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/biosdisk.c,v 1.33 2005/12/21 06:09:09 nyan Exp $"); +__FBSDID("$FreeBSD: src/sys/boot/pc98/libpc98/biosdisk.c,v 1.34 2006/11/02 01:23:18 marcel Exp $"); /* * BIOS disk device handling. @@ -256,7 +256,7 @@ pager_output(line); /* try to open the whole disk */ - dev.d_kind.biosdisk.unit = i; + dev.d_unit = i; dev.d_kind.biosdisk.slice = -1; dev.d_kind.biosdisk.partition = -1; @@ -385,7 +385,7 @@ int error; char buf[BUFSIZE]; - if (dev->d_kind.biosdisk.unit >= nbdinfo) { + if (dev->d_unit >= nbdinfo) { DEBUG("attempt to open nonexistent disk"); return(ENXIO); } @@ -397,14 +397,14 @@ } /* Look up BIOS unit number, intialise open_disk structure */ - od->od_dkunit = dev->d_kind.biosdisk.unit; + od->od_dkunit = dev->d_unit; od->od_unit = bdinfo[od->od_dkunit].bd_unit; od->od_flags = bdinfo[od->od_dkunit].bd_flags; od->od_boff = 0; od->od_nslices = 0; error = 0; DEBUG("open '%s', unit 0x%x slice %d partition %c", - i386_fmtdev(dev), dev->d_kind.biosdisk.unit, + i386_fmtdev(dev), dev->d_unit, dev->d_kind.biosdisk.slice, dev->d_kind.biosdisk.partition + 'a'); /* Get geometry for this open (removable device may have changed) */ @@ -1058,8 +1058,8 @@ char *nip, *cp; int unitofs = 0, i, unit; - biosdev = bd_unit2bios(dev->d_kind.biosdisk.unit); - DEBUG("unit %d BIOS device %d", dev->d_kind.biosdisk.unit, biosdev); + biosdev = bd_unit2bios(dev->d_unit); + DEBUG("unit %d BIOS device %d", dev->d_unit, biosdev); if (biosdev == -1) /* not a BIOS device */ return(-1); if (bd_opendisk(&od, dev) != 0) /* oops, not a viable device */ @@ -1067,7 +1067,7 @@ if ((biosdev & 0xf0) == 0x90 || (biosdev & 0xf0) == 0x30) { /* floppy (or emulated floppy) or ATAPI device */ - if (bdinfo[dev->d_kind.biosdisk.unit].bd_type == DT_ATAPI) { + if (bdinfo[dev->d_unit].bd_type == DT_ATAPI) { /* is an ATAPI disk */ >>> TRUNCATED FOR MAIL (1000 lines) <<<