From owner-p4-projects@FreeBSD.ORG Sun Jan 8 06:38:20 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 95BE016A422; Sun, 8 Jan 2006 06:38:19 +0000 (GMT) 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 6A1E316A41F for ; Sun, 8 Jan 2006 06:38:19 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1F46543D46 for ; Sun, 8 Jan 2006 06:38:19 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k086cJ8m093278 for ; Sun, 8 Jan 2006 06:38:19 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k086cIEu093275 for perforce@freebsd.org; Sun, 8 Jan 2006 06:38:18 GMT (envelope-from kmacy@freebsd.org) Date: Sun, 8 Jan 2006 06:38:18 GMT Message-Id: <200601080638.k086cIEu093275@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 89355 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: Sun, 08 Jan 2006 06:38:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=89355 Change 89355 by kmacy@kmacy:freebsd7_xen3 on 2006/01/08 06:37:53 simplify the initvalues routine in preparation for adding back kernload Affected files ... .. //depot/projects/xen3/src/sys/i386-xen/i386-xen/xen_machdep.c#2 edit Differences ... ==== //depot/projects/xen3/src/sys/i386-xen/i386-xen/xen_machdep.c#2 (text+ko) ==== @@ -581,10 +581,13 @@ struct ringbuf_head *xen_store; /* XXX move me */ char *console_page; -/* Linux infection */ -#define PAGE_OFFSET KERNBASE -#define __pa(x) ((unsigned long)(x)-PAGE_OFFSET) #define PFN_UP(x) (((x) + PAGE_SIZE-1) >> PAGE_SHIFT) +#define VTOP(x) ((unsigned long)(x) - KERNBASE) +#define VTOPFN(x) (((unsigned long)(x) - KERNBASE) >> PAGE_SHIFT) +#define PFNTOV(x) (((unsigned long)(x) << PAGE_SHIFT) + KERNBASE) +#define PG_KERNEL (PG_V | PG_A | PG_RW | PG_M) + + void initvalues(start_info_t *startinfo) { @@ -602,7 +605,9 @@ xen_start_info = startinfo; xen_phys_machine = (unsigned long *)startinfo->mfn_list; - unsigned long tmpindex = ((__pa(xen_start_info->pt_base) >> PAGE_SHIFT) + xen_start_info->nr_pt_frames) + 3 /* number of pages allocated after the pts + 1*/; + + /* number of pages allocated after the pts + 1*/; + unsigned long tmpindex = (VTOPFN(xen_start_info->pt_base) + xen_start_info->nr_pt_frames) + 3; xendebug_flags = 0xffffffff; /* * pre-zero unused mapped pages - mapped on 4MB boundary @@ -610,10 +615,10 @@ #ifndef PAE round_tmpindex = (((tmpindex - 1) / 1024) + 1)*1024; #endif - bzero((char *)(KERNBASE + (tmpindex << PAGE_SHIFT)), (round_tmpindex - tmpindex)*PAGE_SIZE); + bzero((char *)PFNTOV(tmpindex), (round_tmpindex - tmpindex)*PAGE_SIZE); - IdlePTD = (pd_entry_t *)xpmap_ptom(__pa(startinfo->pt_base)); - KPTphys = xpmap_ptom(__pa(startinfo->pt_base + PAGE_SIZE)); + IdlePTD = (pd_entry_t *)xpmap_ptom(VTOP(startinfo->pt_base)); + KPTphys = xpmap_ptom(VTOP(startinfo->pt_base + PAGE_SIZE)); XENPRINTF("IdlePTD %p\n", IdlePTD); XENPRINTF("nr_pages: %ld shared_info: 0x%lx flags: 0x%lx pt_base: 0x%lx " "mod_start: 0x%lx mod_len: 0x%lx\n", @@ -622,26 +627,20 @@ xen_start_info->mod_start, xen_start_info->mod_len); - -#if 0 - /* Map proc0's UPAGES */ - proc0uarea = (struct user *)(KERNBASE + (tmpindex << PAGE_SHIFT)); - tmpindex += UAREA_PAGES; -#endif /* Map proc0's KSTACK */ - proc0kstack = KERNBASE + (tmpindex << PAGE_SHIFT); + proc0kstack = PFNTOV(tmpindex); tmpindex += KSTACK_PAGES; /* allocate page for gdt */ - gdt = (union descriptor *)(KERNBASE + (tmpindex << PAGE_SHIFT)); + gdt = (union descriptor *)PFNTOV(tmpindex); tmpindex++; /* allocate page for ldt */ - ldt = (union descriptor *)(KERNBASE + (tmpindex << PAGE_SHIFT)); + ldt = (union descriptor *)PFNTOV(tmpindex); tmpindex++; /* initialize page directory shadow page */ - pdir_shadow = (vm_offset_t *)(KERNBASE + (tmpindex << PAGE_SHIFT)); + pdir_shadow = (vm_offset_t *)PFNTOV(tmpindex); i686_pagezero(pdir_shadow); pdir_shadow_ma = xpmap_ptom(tmpindex << PAGE_SHIFT); PT_SET_MA(pdir_shadow, pdir_shadow_ma | PG_V | PG_A); @@ -650,7 +649,7 @@ /* setup shadow mapping first so vtomach will work */ xen_pt_pin((vm_paddr_t)pdir_shadow_ma); xen_queue_pt_update((vm_paddr_t)(IdlePTD + PTDPTDI), - pdir_shadow_ma | PG_V | PG_A | PG_RW | PG_M); + pdir_shadow_ma | PG_KERNEL); xen_queue_pt_update(pdir_shadow_ma + PTDPTDI*sizeof(vm_paddr_t), ((vm_paddr_t)IdlePTD) | PG_V | PG_A); xen_queue_pt_update(pdir_shadow_ma + KPTDI*sizeof(vm_paddr_t), @@ -661,30 +660,29 @@ #ifdef SMP -#if 0 /* allocate cpu0 private page */ - cpu0prvpage = (KERNBASE + (tmpindex << PAGE_SHIFT)); + cpu0prvpage = PFNTOV(tmpindex); tmpindex++; -#endif + /* allocate SMP page table */ - SMPpt = (unsigned long *)(KERNBASE + (tmpindex << PAGE_SHIFT)); -#if 0 + SMPpt = (unsigned long *)PFNTOV(tmpindex); + /* Map the private page into the SMP page table */ SMPpt[0] = vtomach(cpu0prvpage) | PG_RW | PG_M | PG_V | PG_A; -#endif + /* map SMP page table RO */ PT_SET_MA(SMPpt, *vtopte((vm_offset_t)SMPpt) & ~PG_RW); /* put the page table into the page directory */ xen_queue_pt_update((vm_paddr_t)(IdlePTD + MPPTDI), - xpmap_ptom((tmpindex << PAGE_SHIFT))| PG_M | PG_RW | PG_V | PG_A); + xpmap_ptom((tmpindex << PAGE_SHIFT))| PG_KERNEL); xen_queue_pt_update(pdir_shadow_ma + MPPTDI*sizeof(vm_paddr_t), xpmap_ptom((tmpindex << PAGE_SHIFT))| PG_V | PG_A); tmpindex++; #endif #ifdef PMAP_DEBUG - pteinfo_list = (pteinfo_t *)(KERNBASE + (tmpindex << PAGE_SHIFT)); + pteinfo_list = (pteinfo_t *)PFNTOV(tmpindex); tmpindex += ((xen_start_info->nr_pages >> 10) + 1)*(1 + XPQ_CALL_DEPTH*XPQ_CALL_COUNT); if (tmpindex > 980) @@ -698,25 +696,25 @@ /* allocate remainder of NKPT pages */ for (i = 0; i < NKPT-1; i++, tmpindex++) { xen_queue_pt_update((vm_paddr_t)(IdlePTD + KPTDI + i + 1), - xpmap_ptom((tmpindex << PAGE_SHIFT)| PG_M | PG_RW | PG_V | PG_A)); + xpmap_ptom((tmpindex << PAGE_SHIFT)| PG_KERNEL)); xen_queue_pt_update(pdir_shadow_ma + (KPTDI + i + 1)*sizeof(vm_paddr_t), xpmap_ptom((tmpindex << PAGE_SHIFT)| PG_V | PG_A)); } tmpindex += NKPT-1; PT_UPDATES_FLUSH(); - HYPERVISOR_shared_info = (shared_info_t *)(KERNBASE + (tmpindex << PAGE_SHIFT)); + HYPERVISOR_shared_info = (shared_info_t *)PFNTOV(tmpindex); PT_SET_MA(HYPERVISOR_shared_info, - xen_start_info->shared_info | PG_A | PG_V | PG_RW | PG_M); + xen_start_info->shared_info | PG_KERNEL); tmpindex++; - xen_store = (struct ringbuf_head *)(KERNBASE + (tmpindex << PAGE_SHIFT)); + xen_store = (struct ringbuf_head *)PFNTOV(tmpindex); PT_SET_MA(xen_store, - (xen_start_info->store_mfn << PAGE_SHIFT)| PG_A | PG_V | PG_RW | PG_M); + (xen_start_info->store_mfn << PAGE_SHIFT)| PG_KERNEL); tmpindex++; - console_page = (char *)(KERNBASE + (tmpindex << PAGE_SHIFT)); + console_page = (char *)PFNTOV(tmpindex); PT_SET_MA(console_page, - (xen_start_info->console_mfn << PAGE_SHIFT)| PG_A | PG_V | PG_RW | PG_M); + (xen_start_info->console_mfn << PAGE_SHIFT)| PG_KERNEL); tmpindex++; @@ -727,7 +725,7 @@ for (j = 0; j < npages; j++) { vm_paddr_t ma = xpmap_ptom(tmpindex << PAGE_SHIFT); tmpindex++; - PT_SET_VA_MA(SMPpt + i*npages + j, ma | PG_A | PG_V | PG_RW | PG_M, FALSE); + PT_SET_VA_MA(SMPpt + i*npages + j, ma | PG_KERNEL, FALSE); } } xen_flush_queue(); From owner-p4-projects@FreeBSD.ORG Sun Jan 8 07:05:54 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 B054F16A422; Sun, 8 Jan 2006 07:05:53 +0000 (GMT) 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 4BE9D16A41F for ; Sun, 8 Jan 2006 07:05:53 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D964643D45 for ; Sun, 8 Jan 2006 07:05:52 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0875qlS094340 for ; Sun, 8 Jan 2006 07:05:52 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0875qbm094337 for perforce@freebsd.org; Sun, 8 Jan 2006 07:05:52 GMT (envelope-from kmacy@freebsd.org) Date: Sun, 8 Jan 2006 07:05:52 GMT Message-Id: <200601080705.k0875qbm094337@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 89356 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: Sun, 08 Jan 2006 07:05:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=89356 Change 89356 by kmacy@kmacy:freebsd7_xen3 on 2006/01/08 07:05:41 make source conform to KNF now to avoid formatting changes confusing future diffs Affected files ... .. //depot/projects/xen3/src/sys/dev/xen/blkfront/blkfront.c#4 edit .. //depot/projects/xen3/src/sys/dev/xen/console/console.c#4 edit .. //depot/projects/xen3/src/sys/dev/xen/console/xencons_ring.c#2 edit .. //depot/projects/xen3/src/sys/dev/xen/evtchn/evtchn_dev.c#2 edit .. //depot/projects/xen3/src/sys/dev/xen/netfront/netfront.c#5 edit .. //depot/projects/xen3/src/sys/dev/xen/xenbus/xenbus_client.c#2 edit .. //depot/projects/xen3/src/sys/dev/xen/xenbus/xenbus_comms.c#2 edit .. //depot/projects/xen3/src/sys/dev/xen/xenbus/xenbus_dev.c#2 edit .. //depot/projects/xen3/src/sys/dev/xen/xenbus/xenbus_probe.c#2 edit .. //depot/projects/xen3/src/sys/dev/xen/xenbus/xenbus_xs.c#2 edit .. //depot/projects/xen3/src/sys/i386-xen/i386-xen/clock.c#8 edit .. //depot/projects/xen3/src/sys/i386-xen/i386-xen/xen_machdep.c#3 edit Differences ... ==== //depot/projects/xen3/src/sys/dev/xen/blkfront/blkfront.c#4 (text+ko) ==== @@ -229,8 +229,8 @@ /* Setup supplies the backend dir, virtual device. - We place an event channel and shared frame entries. - We watch backend to wait if it's ok. */ +We place an event channel and shared frame entries. +We watch backend to wait if it's ok. */ static int blkfront_probe(struct xenbus_device *dev, const struct xenbus_device_id *id) { @@ -309,7 +309,7 @@ if (err) goto out; -again: + again: xbt = xenbus_transaction_start(); if (IS_ERR(xbt)) { xenbus_dev_fatal(dev, err, "starting transaction"); @@ -392,7 +392,7 @@ info->irq = err; return 0; -fail: + fail: blkif_free(info, 0); return err; } @@ -564,7 +564,7 @@ #if 0 sc = LIST_FIRST(&xbsl_head); LIST_REMOVE(sc, entry); - /* Re-enable calldowns. */ + /* Re-enable calldowns. */ blk_start_queue(di->rq); #endif /* Kick things off immediately. */ @@ -665,7 +665,7 @@ return 1; if (gnttab_alloc_grant_references( - BLKIF_MAX_SEGMENTS_PER_REQUEST, &gref_head) < 0) { + BLKIF_MAX_SEGMENTS_PER_REQUEST, &gref_head) < 0) { gnttab_request_free_callback( &info->callback, blkif_restart_queue_callback, @@ -716,18 +716,18 @@ KASSERT( ref != -ENOSPC, ("grant_reference failed") ); gnttab_grant_foreign_access_ref( - ref, - info->xbdev->otherend_id, - buffer_ma >> PAGE_SHIFT, - ring_req->operation & 1 ); /* ??? */ + ref, + info->xbdev->otherend_id, + buffer_ma >> PAGE_SHIFT, + ring_req->operation & 1 ); /* ??? */ info->shadow[id].frame[ring_req->nr_segments] = buffer_ma >> PAGE_SHIFT; ring_req->seg[ring_req->nr_segments] = - (struct blkif_request_segment) { - .gref = ref, - .first_sect = fsect, - .last_sect = lsect }; + (struct blkif_request_segment) { + .gref = ref, + .first_sect = fsect, + .last_sect = lsect }; ring_req->nr_segments++; KASSERT((buffer_ma & (XBD_SECTOR_SIZE-1)) == 0, @@ -1003,7 +1003,7 @@ * Local variables: * mode: C * c-set-style: "BSD" - * c-basic-offset: 4 + * c-basic-offset: 8 * tab-width: 4 * indent-tabs-mode: t * End: ==== //depot/projects/xen3/src/sys/dev/xen/console/console.c#4 (text+ko) ==== @@ -85,8 +85,8 @@ static struct tty *xccons; struct xc_softc { - int xc_unit; - struct cdev *xc_dev; + int xc_unit; + struct cdev *xc_dev; }; @@ -130,12 +130,12 @@ return 0; do { if ((c = xccncheckc(dev)) == -1) { - /* polling without sleeping in Xen doesn't work well. - * Sleeping gives other things like clock a chance to - * run - */ - tsleep(&cn_mtx, PWAIT | PCATCH, "console sleep", - XC_POLLTIME); + /* polling without sleeping in Xen doesn't work well. + * Sleeping gives other things like clock a chance to + * run + */ + tsleep(&cn_mtx, PWAIT | PCATCH, "console sleep", + XC_POLLTIME); } } while(c == -1); return c; @@ -179,15 +179,15 @@ db_active || #endif panicstr; /* we're not gonna recover, so force - * flush - */ + * flush + */ if ((wp-wc) < (WBUF_SIZE-1)) { if ((wbuf[WBUF_MASK(wp++)] = c) == '\n') { wbuf[WBUF_MASK(wp++)] = '\r'; #ifdef notyet if (force_flush) - xcons_force_flush(); + xcons_force_flush(); #endif } } else if (force_flush) { @@ -250,11 +250,11 @@ if (xen_start_info->flags & SIF_INITDOMAIN) { PANIC_IF(bind_virq_to_irqhandler( - VIRQ_CONSOLE, - 0, - "console", - xencons_priv_interrupt, - INTR_TYPE_TTY) < 0); + VIRQ_CONSOLE, + 0, + "console", + xencons_priv_interrupt, + INTR_TYPE_TTY) < 0); } @@ -265,7 +265,7 @@ printf("xencons: shutdown event registration failed!\n"); TRACE_EXIT; - return (0); + return (0); } /* @@ -315,8 +315,8 @@ work_done = 1; } - if (work_done && xen_console_up) - ttwakeup(xccons); + if (work_done && xen_console_up) + ttwakeup(xccons); } void @@ -344,20 +344,20 @@ int xcopen(struct cdev *dev, int flag, int mode, struct thread *td) { - struct xc_softc *sc; - int unit = XCUNIT(dev); - struct tty *tp; - int s, error; + struct xc_softc *sc; + int unit = XCUNIT(dev); + struct tty *tp; + int s, error; - sc = (struct xc_softc *)device_get_softc( - devclass_get_device(xc_devclass, unit)); - if (sc == NULL) + sc = (struct xc_softc *)device_get_softc( + devclass_get_device(xc_devclass, unit)); + if (sc == NULL) return (ENXIO); TRACE_ENTER; - tp = dev->si_tty; - s = spltty(); - if (!ISTTYOPEN(tp)) { + tp = dev->si_tty; + s = spltty(); + if (!ISTTYOPEN(tp)) { tp->t_state |= TS_CARR_ON; ttychars(tp); tp->t_iflag = TTYDEF_IFLAG; @@ -367,62 +367,62 @@ tp->t_ispeed = tp->t_ospeed = TTYDEF_SPEED; xcparam(tp, &tp->t_termios); ttsetwater(tp); - } else if (tp->t_state & TS_XCLUDE && suser(td)) { + } else if (tp->t_state & TS_XCLUDE && suser(td)) { splx(s); return (EBUSY); - } - splx(s); + } + splx(s); - xen_console_up = 1; + xen_console_up = 1; - error = (*linesw[tp->t_line]->l_open)(dev, tp); + error = (*linesw[tp->t_line]->l_open)(dev, tp); TRACE_EXIT; - return error; + return error; } int xcclose(struct cdev *dev, int flag, int mode, struct thread *td) { - struct tty *tp = dev->si_tty; + struct tty *tp = dev->si_tty; + + if (tp == NULL) + return (0); + xen_console_up = 0; - if (tp == NULL) + spltty(); + (*linesw[tp->t_line]->l_close)(tp, flag); + tty_close(tp); + spl0(); return (0); - xen_console_up = 0; - - spltty(); - (*linesw[tp->t_line]->l_close)(tp, flag); - tty_close(tp); - spl0(); - return (0); } int xcioctl(struct cdev *dev, u_long cmd, caddr_t data, int flag, struct thread *td) { - struct tty *tp = dev->si_tty; - int error; + struct tty *tp = dev->si_tty; + int error; - error = (*linesw[tp->t_line]->l_ioctl)(tp, cmd, data, flag, td); - if (error != ENOIOCTL) - return (error); + error = (*linesw[tp->t_line]->l_ioctl)(tp, cmd, data, flag, td); + if (error != ENOIOCTL) + return (error); - error = ttioctl(tp, cmd, data, flag); + error = ttioctl(tp, cmd, data, flag); - if (error != ENOIOCTL) - return (error); + if (error != ENOIOCTL) + return (error); - return (ENOTTY); + return (ENOTTY); } static inline int __xencons_put_char(int ch) { - char _ch = (char)ch; - if ((wp - wc) == WBUF_SIZE) - return 0; - wbuf[WBUF_MASK(wp++)] = _ch; - return 1; + char _ch = (char)ch; + if ((wp - wc) == WBUF_SIZE) + return 0; + wbuf[WBUF_MASK(wp++)] = _ch; + return 1; } ==== //depot/projects/xen3/src/sys/dev/xen/console/xencons_ring.c#2 (text+ko) ==== @@ -29,7 +29,7 @@ static inline struct xencons_interface * xencons_interface(void) { - return (struct xencons_interface *)console_page; + return (struct xencons_interface *)console_page; } int ==== //depot/projects/xen3/src/sys/dev/xen/evtchn/evtchn_dev.c#2 (text+ko) ==== @@ -33,7 +33,7 @@ typedef struct evtchn_sotfc { - struct selinfo ev_rsel; + struct selinfo ev_rsel; } evtchn_softc_t; @@ -72,259 +72,259 @@ void evtchn_device_upcall(int port) { - mtx_lock(&upcall_lock); + mtx_lock(&upcall_lock); - mask_evtchn(port); - clear_evtchn(port); + mask_evtchn(port); + clear_evtchn(port); - if ( ring != NULL ) { - if ( (ring_prod - ring_cons) < EVTCHN_RING_SIZE ) { - ring[EVTCHN_RING_MASK(ring_prod)] = (uint16_t)port; - if ( ring_cons == ring_prod++ ) { - wakeup(evtchn_waddr); - } - } - else { - ring_overflow = 1; - } - } + if ( ring != NULL ) { + if ( (ring_prod - ring_cons) < EVTCHN_RING_SIZE ) { + ring[EVTCHN_RING_MASK(ring_prod)] = (uint16_t)port; + if ( ring_cons == ring_prod++ ) { + wakeup(evtchn_waddr); + } + } + else { + ring_overflow = 1; + } + } - mtx_unlock(&upcall_lock); + mtx_unlock(&upcall_lock); } static void __evtchn_reset_buffer_ring(void) { - /* Initialise the ring to empty. Clear errors. */ - ring_cons = ring_prod = ring_overflow = 0; + /* Initialise the ring to empty. Clear errors. */ + ring_cons = ring_prod = ring_overflow = 0; } static int evtchn_read(struct cdev *dev, struct uio *uio, int ioflag) { - int rc; - unsigned int count, c, p, sst = 0, bytes1 = 0, bytes2 = 0; - count = uio->uio_resid; + int rc; + unsigned int count, c, p, sst = 0, bytes1 = 0, bytes2 = 0; + count = uio->uio_resid; - count &= ~1; /* even number of bytes */ + count &= ~1; /* even number of bytes */ - if ( count == 0 ) - { - rc = 0; - goto out; - } + if ( count == 0 ) + { + rc = 0; + goto out; + } - if ( count > PAGE_SIZE ) - count = PAGE_SIZE; + if ( count > PAGE_SIZE ) + count = PAGE_SIZE; - for ( ; ; ) { - if ( (c = ring_cons) != (p = ring_prod) ) - break; + for ( ; ; ) { + if ( (c = ring_cons) != (p = ring_prod) ) + break; - if ( ring_overflow ) { - rc = EFBIG; - goto out; - } + if ( ring_overflow ) { + rc = EFBIG; + goto out; + } - if (sst != 0) { - rc = EINTR; - goto out; - } + if (sst != 0) { + rc = EINTR; + goto out; + } - /* PCATCH == check for signals before and after sleeping - * PWAIT == priority of waiting on resource - */ - sst = tsleep(evtchn_waddr, PWAIT|PCATCH, "evchwt", 10); - } + /* PCATCH == check for signals before and after sleeping + * PWAIT == priority of waiting on resource + */ + sst = tsleep(evtchn_waddr, PWAIT|PCATCH, "evchwt", 10); + } - /* Byte lengths of two chunks. Chunk split (if any) is at ring wrap. */ - if ( ((c ^ p) & EVTCHN_RING_SIZE) != 0 ) { - bytes1 = (EVTCHN_RING_SIZE - EVTCHN_RING_MASK(c)) * sizeof(uint16_t); - bytes2 = EVTCHN_RING_MASK(p) * sizeof(uint16_t); - } - else { - bytes1 = (p - c) * sizeof(uint16_t); - bytes2 = 0; - } + /* Byte lengths of two chunks. Chunk split (if any) is at ring wrap. */ + if ( ((c ^ p) & EVTCHN_RING_SIZE) != 0 ) { + bytes1 = (EVTCHN_RING_SIZE - EVTCHN_RING_MASK(c)) * sizeof(uint16_t); + bytes2 = EVTCHN_RING_MASK(p) * sizeof(uint16_t); + } + else { + bytes1 = (p - c) * sizeof(uint16_t); + bytes2 = 0; + } - /* Truncate chunks according to caller's maximum byte count. */ - if ( bytes1 > count ) { - bytes1 = count; - bytes2 = 0; - } - else if ( (bytes1 + bytes2) > count ) { - bytes2 = count - bytes1; - } + /* Truncate chunks according to caller's maximum byte count. */ + if ( bytes1 > count ) { + bytes1 = count; + bytes2 = 0; + } + else if ( (bytes1 + bytes2) > count ) { + bytes2 = count - bytes1; + } - if ( uiomove(&ring[EVTCHN_RING_MASK(c)], bytes1, uio) || - ((bytes2 != 0) && uiomove(&ring[0], bytes2, uio))) - /* keeping this around as its replacement is not equivalent - * copyout(&ring[0], &buf[bytes1], bytes2) - */ - { - rc = EFAULT; - goto out; - } + if ( uiomove(&ring[EVTCHN_RING_MASK(c)], bytes1, uio) || + ((bytes2 != 0) && uiomove(&ring[0], bytes2, uio))) + /* keeping this around as its replacement is not equivalent + * copyout(&ring[0], &buf[bytes1], bytes2) + */ + { + rc = EFAULT; + goto out; + } - ring_cons += (bytes1 + bytes2) / sizeof(uint16_t); + ring_cons += (bytes1 + bytes2) / sizeof(uint16_t); - rc = bytes1 + bytes2; + rc = bytes1 + bytes2; out: - return rc; + return rc; } static int evtchn_write(struct cdev *dev, struct uio *uio, int ioflag) { - int rc, i, count; + int rc, i, count; - count = uio->uio_resid; + count = uio->uio_resid; - uint16_t *kbuf = (uint16_t *)malloc(PAGE_SIZE, M_DEVBUF, M_WAITOK); + uint16_t *kbuf = (uint16_t *)malloc(PAGE_SIZE, M_DEVBUF, M_WAITOK); - if ( kbuf == NULL ) - return ENOMEM; + if ( kbuf == NULL ) + return ENOMEM; - count &= ~1; /* even number of bytes */ + count &= ~1; /* even number of bytes */ - if ( count == 0 ) { - rc = 0; - goto out; - } + if ( count == 0 ) { + rc = 0; + goto out; + } - if ( count > PAGE_SIZE ) - count = PAGE_SIZE; + if ( count > PAGE_SIZE ) + count = PAGE_SIZE; - if ( uiomove(kbuf, count, uio) != 0 ) { - rc = EFAULT; - goto out; - } + if ( uiomove(kbuf, count, uio) != 0 ) { + rc = EFAULT; + goto out; + } - mtx_lock_spin(&lock); - for ( i = 0; i < (count/2); i++ ) - if ( test_bit(kbuf[i], &bound_ports[0]) ) - unmask_evtchn(kbuf[i]); - mtx_unlock_spin(&lock); + mtx_lock_spin(&lock); + for ( i = 0; i < (count/2); i++ ) + if ( test_bit(kbuf[i], &bound_ports[0]) ) + unmask_evtchn(kbuf[i]); + mtx_unlock_spin(&lock); - rc = count; + rc = count; out: - free(kbuf, M_DEVBUF); - return rc; + free(kbuf, M_DEVBUF); + return rc; } static int evtchn_ioctl(struct cdev *dev, unsigned long cmd, caddr_t arg, - int mode, struct thread *td __unused) + int mode, struct thread *td __unused) { - int rc = 0; + int rc = 0; - mtx_lock_spin(&lock); + mtx_lock_spin(&lock); - switch ( cmd ) - { - case EVTCHN_RESET: - __evtchn_reset_buffer_ring(); - break; - case EVTCHN_BIND: - if ( !synch_test_and_set_bit((int)arg, &bound_ports[0]) ) - unmask_evtchn((int)arg); - else - rc = EINVAL; - break; - case EVTCHN_UNBIND: - if ( synch_test_and_clear_bit((int)arg, &bound_ports[0]) ) - mask_evtchn((int)arg); - else - rc = EINVAL; - break; - default: - rc = ENOSYS; - break; - } + switch ( cmd ) + { + case EVTCHN_RESET: + __evtchn_reset_buffer_ring(); + break; + case EVTCHN_BIND: + if ( !synch_test_and_set_bit((int)arg, &bound_ports[0]) ) + unmask_evtchn((int)arg); + else + rc = EINVAL; + break; + case EVTCHN_UNBIND: + if ( synch_test_and_clear_bit((int)arg, &bound_ports[0]) ) + mask_evtchn((int)arg); + else + rc = EINVAL; + break; + default: + rc = ENOSYS; + break; + } - mtx_unlock_spin(&lock); + mtx_unlock_spin(&lock); - return rc; + return rc; } static int evtchn_poll(struct cdev *dev, int poll_events, struct thread *td) { - evtchn_softc_t *sc; - unsigned int mask = POLLOUT | POLLWRNORM; + evtchn_softc_t *sc; + unsigned int mask = POLLOUT | POLLWRNORM; - sc = dev->si_drv1; + sc = dev->si_drv1; - if ( ring_cons != ring_prod ) - mask |= POLLIN | POLLRDNORM; - else if ( ring_overflow ) - mask = POLLERR; - else - selrecord(td, &sc->ev_rsel); + if ( ring_cons != ring_prod ) + mask |= POLLIN | POLLRDNORM; + else if ( ring_overflow ) + mask = POLLERR; + else + selrecord(td, &sc->ev_rsel); - return mask; + return mask; } static int evtchn_open(struct cdev *dev, int flag, int otyp, struct thread *td) { - uint16_t *_ring; + uint16_t *_ring; - if (flag & O_NONBLOCK) - return EBUSY; + if (flag & O_NONBLOCK) + return EBUSY; - if ( synch_test_and_set_bit(0, &evtchn_dev_inuse) ) - return EBUSY; + if ( synch_test_and_set_bit(0, &evtchn_dev_inuse) ) + return EBUSY; - if ( (_ring = (uint16_t *)malloc(PAGE_SIZE, M_DEVBUF, M_WAITOK)) == NULL ) - return ENOMEM; + if ( (_ring = (uint16_t *)malloc(PAGE_SIZE, M_DEVBUF, M_WAITOK)) == NULL ) + return ENOMEM; - mtx_lock_spin(&lock); - ring = _ring; - __evtchn_reset_buffer_ring(); - mtx_unlock_spin(&lock); + mtx_lock_spin(&lock); + ring = _ring; + __evtchn_reset_buffer_ring(); + mtx_unlock_spin(&lock); - return 0; + return 0; } static int evtchn_close(struct cdev *dev, int flag, int otyp, struct thread *td __unused) { - int i; + int i; - mtx_lock_spin(&lock); - if (ring != NULL) { - free(ring, M_DEVBUF); - ring = NULL; - } - for ( i = 0; i < NR_EVENT_CHANNELS; i++ ) - if ( synch_test_and_clear_bit(i, &bound_ports[0]) ) - mask_evtchn(i); - mtx_unlock_spin(&lock); + mtx_lock_spin(&lock); + if (ring != NULL) { + free(ring, M_DEVBUF); + ring = NULL; + } + for ( i = 0; i < NR_EVENT_CHANNELS; i++ ) + if ( synch_test_and_clear_bit(i, &bound_ports[0]) ) + mask_evtchn(i); + mtx_unlock_spin(&lock); - evtchn_dev_inuse = 0; + evtchn_dev_inuse = 0; - return 0; + return 0; } static struct cdevsw evtchn_devsw = { - d_version: D_VERSION, - d_open: evtchn_open, - d_close: evtchn_close, - d_read: evtchn_read, - d_write: evtchn_write, - d_ioctl: evtchn_ioctl, - d_poll: evtchn_poll, - d_name: "evtchn", - d_flags: 0, + d_version: D_VERSION, + d_open: evtchn_open, + d_close: evtchn_close, + d_read: evtchn_read, + d_write: evtchn_write, + d_ioctl: evtchn_ioctl, + d_poll: evtchn_poll, + d_name: "evtchn", + d_flags: 0, }; @@ -338,69 +338,53 @@ static int evtchn_init(void *dummy __unused) { - /* XXX I believe we don't need these leaving them here for now until we - * have some semblance of it working - */ -#if 0 - devfs_handle_t symlink_handle; - int err, pos; - char link_dest[64]; -#endif - mtx_init(&upcall_lock, "evtchup", NULL, MTX_DEF); + /* XXX I believe we don't need these leaving them here for now until we + * have some semblance of it working + */ + mtx_init(&upcall_lock, "evtchup", NULL, MTX_DEF); - /* (DEVFS) create '/dev/misc/evtchn'. */ - evtchn_dev = make_dev(&evtchn_devsw, 0, UID_ROOT, GID_WHEEL, 0600, "xen/evtchn"); + /* (DEVFS) create '/dev/misc/evtchn'. */ + evtchn_dev = make_dev(&evtchn_devsw, 0, UID_ROOT, GID_WHEEL, 0600, "xen/evtchn"); - mtx_init(&lock, "evch", NULL, MTX_SPIN | MTX_NOWITNESS); + mtx_init(&lock, "evch", NULL, MTX_SPIN | MTX_NOWITNESS); - evtchn_dev->si_drv1 = malloc(sizeof(evtchn_softc_t), M_DEVBUF, M_WAITOK); - bzero(evtchn_dev->si_drv1, sizeof(evtchn_softc_t)); + evtchn_dev->si_drv1 = malloc(sizeof(evtchn_softc_t), M_DEVBUF, M_WAITOK); + bzero(evtchn_dev->si_drv1, sizeof(evtchn_softc_t)); - /* XXX I don't think we need any of this rubbish */ + /* XXX I don't think we need any of this rubbish */ #if 0 - if ( err != 0 ) - { - printk(KERN_ALERT "Could not register /dev/misc/evtchn\n"); - return err; - } + if ( err != 0 ) + { + printk(KERN_ALERT "Could not register /dev/misc/evtchn\n"); + return err; + } - /* (DEVFS) create directory '/dev/xen'. */ - xen_dev_dir = devfs_mk_dir(NULL, "xen", NULL); + /* (DEVFS) create directory '/dev/xen'. */ + xen_dev_dir = devfs_mk_dir(NULL, "xen", NULL); - /* (DEVFS) &link_dest[pos] == '../misc/evtchn'. */ - pos = devfs_generate_path(evtchn_miscdev.devfs_handle, - &link_dest[3], - sizeof(link_dest) - 3); - if ( pos >= 0 ) - strncpy(&link_dest[pos], "../", 3); - /* (DEVFS) symlink '/dev/xen/evtchn' -> '../misc/evtchn'. */ - (void)devfs_mk_symlink(xen_dev_dir, - "evtchn", - DEVFS_FL_DEFAULT, - &link_dest[pos], - &symlink_handle, - NULL); + /* (DEVFS) &link_dest[pos] == '../misc/evtchn'. */ + pos = devfs_generate_path(evtchn_miscdev.devfs_handle, + &link_dest[3], + sizeof(link_dest) - 3); + if ( pos >= 0 ) + strncpy(&link_dest[pos], "../", 3); + /* (DEVFS) symlink '/dev/xen/evtchn' -> '../misc/evtchn'. */ + (void)devfs_mk_symlink(xen_dev_dir, + "evtchn", + DEVFS_FL_DEFAULT, + &link_dest[pos], + &symlink_handle, + NULL); - /* (DEVFS) automatically destroy the symlink with its destination. */ - devfs_auto_unregister(evtchn_miscdev.devfs_handle, symlink_handle); + /* (DEVFS) automatically destroy the symlink with its destination. */ + devfs_auto_unregister(evtchn_miscdev.devfs_handle, symlink_handle); #endif - printk("Event-channel device installed.\n"); + printk("Event-channel device installed.\n"); - return 0; + return 0; } SYSINIT(evtchn_init, SI_SUB_DRIVERS, SI_ORDER_FIRST, evtchn_init, NULL); -#if 0 - -static void cleanup_module(void) -{ - destroy_dev(evtchn_dev); -; -} - -module_init(init_module); -module_exit(cleanup_module); -#endif ==== //depot/projects/xen3/src/sys/dev/xen/netfront/netfront.c#5 (text+ko) ==== @@ -248,9 +248,9 @@ ((_list)[0] == (_maxid+1)) #if DEBUG static char *be_state_name[] = { - [BEST_CLOSED] = "closed", - [BEST_DISCONNECTED] = "disconnected", - [BEST_CONNECTED] = "connected", + [BEST_CLOSED] = "closed", + [BEST_DISCONNECTED] = "disconnected", + [BEST_CONNECTED] = "connected", }; #endif #define IPRINTK(fmt, args...) \ @@ -637,7 +637,7 @@ /* Remove this page from pseudo phys map before passing back to Xen. */ xen_phys_machine[((unsigned long)m_new->m_ext.ext_args >> PAGE_SHIFT)] - = INVALID_P2M_ENTRY; + = INVALID_P2M_ENTRY; rx_mcl[i].op = __HYPERVISOR_update_va_mapping; rx_mcl[i].args[0] = (unsigned long)mtod(m_new,vm_offset_t); @@ -937,10 +937,10 @@ static void xn_tick_locked(struct netfront_info *sc) { - XN_RX_LOCK_ASSERT(sc); - callout_reset(&sc->xn_stat_ch, hz, xn_tick, sc); + XN_RX_LOCK_ASSERT(sc); + callout_reset(&sc->xn_stat_ch, hz, xn_tick, sc); - /* XXX placeholder for printing debug information */ + /* XXX placeholder for printing debug information */ } @@ -948,12 +948,12 @@ static void xn_tick(void *xsc) { - struct netfront_info *sc; + struct netfront_info *sc; - sc = xsc; - XN_RX_LOCK(sc); - xn_tick_locked(sc); - XN_RX_UNLOCK(sc); + sc = xsc; + XN_RX_LOCK(sc); + xn_tick_locked(sc); + XN_RX_UNLOCK(sc); } static void @@ -1082,11 +1082,11 @@ static void xn_ifinit(void *xsc) { - struct netfront_info *sc = xsc; + struct netfront_info *sc = xsc; - XN_LOCK(sc); - xn_ifinit_locked(sc); - XN_UNLOCK(sc); + XN_LOCK(sc); + xn_ifinit_locked(sc); + XN_UNLOCK(sc); } @@ -1094,105 +1094,105 @@ static int xn_ioctl(struct ifnet *ifp, u_long cmd, caddr_t data) { - struct netfront_info *sc = ifp->if_softc; - struct ifreq *ifr = (struct ifreq *) data; - int mask, error = 0; - switch(cmd) { - case SIOCSIFMTU: - /* XXX can we alter the MTU on a VN ?*/ + struct netfront_info *sc = ifp->if_softc; + struct ifreq *ifr = (struct ifreq *) data; + int mask, error = 0; + switch(cmd) { + case SIOCSIFMTU: + /* XXX can we alter the MTU on a VN ?*/ #ifdef notyet - if (ifr->ifr_mtu > XN_JUMBO_MTU) - error = EINVAL; - else + if (ifr->ifr_mtu > XN_JUMBO_MTU) + error = EINVAL; + else #endif - { - ifp->if_mtu = ifr->ifr_mtu; - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; - xn_ifinit(sc); - } - break; - case SIOCSIFFLAGS: - XN_LOCK(sc); - if (ifp->if_flags & IFF_UP) { - /* - * If only the state of the PROMISC flag changed, - * then just use the 'set promisc mode' command - * instead of reinitializing the entire NIC. Doing - * a full re-init means reloading the firmware and - * waiting for it to start up, which may take a - * second or two. - */ + { + ifp->if_mtu = ifr->ifr_mtu; + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + xn_ifinit(sc); + } + break; + case SIOCSIFFLAGS: + XN_LOCK(sc); + if (ifp->if_flags & IFF_UP) { + /* + * If only the state of the PROMISC flag changed, + * then just use the 'set promisc mode' command + * instead of reinitializing the entire NIC. Doing + * a full re-init means reloading the firmware and >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sun Jan 8 21:43:55 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 33BF816A422; Sun, 8 Jan 2006 21:43:55 +0000 (GMT) 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 A5A7716A41F for ; Sun, 8 Jan 2006 21:43:54 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4FF6343D45 for ; Sun, 8 Jan 2006 21:43:54 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k08LhsRG067153 for ; Sun, 8 Jan 2006 21:43:54 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k08LhrTR067150 for perforce@freebsd.org; Sun, 8 Jan 2006 21:43:53 GMT (envelope-from kmacy@freebsd.org) Date: Sun, 8 Jan 2006 21:43:53 GMT Message-Id: <200601082143.k08LhrTR067150@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 89382 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: Sun, 08 Jan 2006 21:43:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=89382 Change 89382 by kmacy@kmacy:freebsd7_xen3 on 2006/01/08 21:43:38 remove unused / unloved NFS_ROOT code remove unusable debug code remove dead defines in xen-os.h add crude boot memory allocator for use early in initialization to simplify porting from linux Affected files ... .. //depot/projects/xen3/src/sys/i386-xen/i386-xen/xen_machdep.c#4 edit .. //depot/projects/xen3/src/sys/i386-xen/include/xen-os.h#2 edit Differences ... ==== //depot/projects/xen3/src/sys/i386-xen/i386-xen/xen_machdep.c#4 (text+ko) ==== @@ -86,233 +86,7 @@ void ni_cli(void); void ni_sti(void); -#ifdef NFS_ROOT - -static int -xdr_opaque_decode(struct mbuf **mptr, u_char *buf, int len) -{ - struct mbuf *m; - int alignedlen; - - m = *mptr; - alignedlen = ( len + 3 ) & ~3; - - if (m->m_len < alignedlen) { - m = m_pullup(m, alignedlen); - if (m == NULL) { - *mptr = NULL; - return EBADRPC; - } - } - bcopy(mtod(m, u_char *), buf, len); - m_adj(m, alignedlen); - *mptr = m; - return 0; -} - - -static int -getdec(char **ptr) -{ - char *p; - int ret; - - p = *ptr; - ret = 0; - if ((*p < '0') || (*p > '9')) - return -1; - while ((*p >= '0') && (*p <= '9')) { - ret = ret * 10 + (*p - '0'); - p++; - } - *ptr = p; - return ret; -} - -int -setinaddr(struct sockaddr_in *addr, char *ipstr) -{ - unsigned int ip; - int val; - - ip = 0; - if (((val = getdec(&ipstr)) < 0) || (val > 255)) - return 1; - ip = val << 24; - if (*ipstr != '.') - return 1; - ipstr++; - if (((val = getdec(&ipstr)) < 0) || (val > 255)) - return 1; - ip |= (val << 16); - if (*ipstr != '.') - return 1; - ipstr++; - if (((val = getdec(&ipstr)) < 0) || (val > 255)) - return 1; - ip |= (val << 8); - if (*ipstr != '.') - return 1; - ipstr++; - if (((val = getdec(&ipstr)) < 0) || (val > 255)) - return 1; - ip |= val; - - addr->sin_addr.s_addr = htonl(ip); - addr->sin_len = sizeof(struct sockaddr_in); - addr->sin_family = AF_INET; - - return 0; -} - -static int -hwaddr_to_sockaddr(char *ev, struct sockaddr_dl *sa) -{ - char *cp; - u_int32_t a[6]; - int count; - - bzero(sa, sizeof(*sa)); - sa->sdl_len = sizeof(*sa); - sa->sdl_family = AF_LINK; - sa->sdl_type = IFT_ETHER; - sa->sdl_alen = ETHER_ADDR_LEN; - if ((cp = getenv(ev)) == NULL) - return (1); - count = sscanf(cp, "%x:%x:%x:%x:%x:%x", - &a[0], &a[1], &a[2], &a[3], &a[4], &a[5]); - freeenv(cp); - if (count != 6) - return (1); - sa->sdl_data[0] = a[0]; - sa->sdl_data[1] = a[1]; - sa->sdl_data[2] = a[2]; - sa->sdl_data[3] = a[3]; - sa->sdl_data[4] = a[4]; - sa->sdl_data[5] = a[5]; - return (0); -} -extern int in_control(struct socket *so, u_long cmd, - caddr_t data, struct ifnet *ifp, - struct thread *td); - -static int -xen_setnetwork(void) -{ - int error = 0; - struct ifaddr *ifa; - struct ifnet *ifp; - struct sockaddr_dl *sdl, ourdl; - - if (sizeof(struct sockaddr) != sizeof(struct sockaddr_in)) - panic("sizes not equal\n"); - - if (hwaddr_to_sockaddr("boot.netif.hwaddr", &ourdl)) { - printf("nfs_diskless: no hardware address\n"); - return -1; - } - - - ifa = NULL; - IFNET_RLOCK(); - TAILQ_FOREACH(ifp, &ifnet, if_link) { - TAILQ_FOREACH(ifa, &ifp->if_addrhead, ifa_link) { - if ((ifa->ifa_addr->sa_family == AF_LINK) && - (sdl = ((struct sockaddr_dl *)ifa->ifa_addr))) { - if ((sdl->sdl_type == ourdl.sdl_type) && - (sdl->sdl_alen == ourdl.sdl_alen) && - !bcmp(sdl->sdl_data + sdl->sdl_nlen, - ourdl.sdl_data + ourdl.sdl_nlen, - sdl->sdl_alen)) { - IFNET_RUNLOCK(); - goto match_done; - } - } - } - } - IFNET_RUNLOCK(); - printf("nfs_diskless: no interface\n"); - return -1; /* no matching interface */ - match_done: - if (getenv("boot.netif.ip") && getenv("boot.netif.gateway") && - getenv("boot.netif.netmask")) { - struct ifaliasreq ifra; - char *ip; - - bzero(&ifra, sizeof(ifra)); - strcpy(ifra.ifra_name, "xn0"); - ip = getenv("boot.netif.ip"); - setinaddr((struct sockaddr_in *)&(ifra.ifra_addr), ip); - printf("setting ip to %s\n", ip); - ip = getenv("boot.netif.netmask"); - setinaddr((struct sockaddr_in *)&ifra.ifra_mask, ip); - setinaddr((struct sockaddr_in *)&ifra.ifra_broadaddr, "255.255.255.255"); - - - if ((error = in_control(NULL, SIOCAIFADDR, (caddr_t) &ifra, ifp, curthread))) - printf("couldn't set interface address %d\n", error); -#if 0 - if ((error = xn_ioctl(ifp, SIOCSIFNETMASK, (caddr_t)&ifa))) - printf("couldn't set interface netmask %d\n", error); -#endif - } - return error; -} - -int -xen_setnfshandle(void) -{ - char *path, *ip; - u_char fhp[NFSX_V2FH]; - int error = 0; - struct sockaddr_in sin_local, *sin ; - struct mbuf *m; - - if ((error = xen_setnetwork())) - return error; - - sin = &sin_local; - - path = getenv("boot.nfsroot.path"); - ip = getenv("boot.nfsroot.server"); - - /* we aren't configured for NFS root */ - if (!path || !ip) - return 0; - - error = setinaddr(sin, ip); - if (error) { - printf("invalid ip address %s\n", ip); - return error; - } - - error = krpc_portmap(sin, RPCPROG_MNT, RPCMNT_VER1, - &sin->sin_port, curthread); - if (error) { - printf("failed to find port number for mountd\n"); - return error; - } - m = xdr_string_encode(path, strlen(path)); - - /* Do RPC to mountd */ - error = krpc_call(sin, RPCPROG_MNT, RPCMNT_VER1, - RPCMNT_MOUNT, &m, NULL, curthread); - if (error) { - printf("call to mountd failed\n"); - return error; - } - - if (xdr_opaque_decode(&m, fhp, NFSX_V2FH) != 0) { - printf("failed to decode nfs file handle\n"); - return error; - } - - setenv("boot.nfsroot.nfshandle", fhp); - - return 0; -} -#endif void ni_cli(void) { @@ -575,6 +349,8 @@ extern unsigned long *SMPpt; extern struct user *proc0uarea; extern vm_offset_t proc0kstack; +char *bootmem_start, *bootmem_current, *bootmem_end; + pteinfo_t *pteinfo_list; void initvalues(start_info_t *startinfo); @@ -587,7 +363,32 @@ #define PFNTOV(x) (((unsigned long)(x) << PAGE_SHIFT) + KERNBASE) #define PG_KERNEL (PG_V | PG_A | PG_RW | PG_M) +void * +bootmem_alloc(unsigned int size) +{ + char *retptr; + + retptr = bootmem_current; + PANIC_IF(retptr + size > bootmem_end); + bootmem_current += size; + return retptr; +} + +void +bootmem_free(void *ptr, unsigned int size) +{ + char *tptr; + + tptr = ptr; + PANIC_IF(tptr != bootmem_current - size || + bootmem_current - size < bootmem_start); + + bootmem_current -= size; +} + + + void initvalues(start_info_t *startinfo) { @@ -639,6 +440,11 @@ ldt = (union descriptor *)PFNTOV(tmpindex); tmpindex++; + /* allocate 4 pages for bootmem allocator */ + bootmem_start = bootmem_current = (char *)PFNTOV(tmpindex); + tmpindex += 4; + bootmem_end = (char *)PFNTOV(tmpindex); + /* initialize page directory shadow page */ pdir_shadow = (vm_offset_t *)PFNTOV(tmpindex); i686_pagezero(pdir_shadow); @@ -775,41 +581,3 @@ panic("xen_failsafe_handler called!\n"); } - - - - -#if defined(XENDEBUG) -static void -xpmap_dump_pt(pt_entry_t *ptp, int p) -{ - pt_entry_t pte; - int j; - int bufpos; - - pte = xpmap_ptom((uint32_t)ptp - KERNTEXTOFF); - PRINTK(("%03x: %p(%p) %08x\n", p, ptp, (void *)pte, p << PDRSHIFT)); - - bufpos = 0; - for (j = 0; j < PTES_PER_PTP; j++) { - if ((ptp[j] & PG_V) == 0) - continue; - pte = ptp[j] /* & PG_FRAME */; - bufpos += sprintf(XBUF + bufpos, "%x:%03x:%08x ", - p, j, pte); - if (bufpos > 70) { - int k; - sprintf(XBUF + bufpos, "\n"); - PRINTK((XBUF)); - bufpos = 0; - for (k = 0; k < 1000000; k++); - } - } - if (bufpos) { - PRINTK((XBUF)); - bufpos = 0; - } -} -#endif - - ==== //depot/projects/xen3/src/sys/i386-xen/include/xen-os.h#2 (text+ko) ==== @@ -38,32 +38,12 @@ #define per_cpu(var, cpu) (*((void)cpu, &per_cpu__##var)) - -/* - * These are the segment descriptors provided for us by the hypervisor. - * For now, these are hardwired -- guest OSes cannot update the GDT - * or LDT. - * - * It shouldn't be hard to support descriptor-table frobbing -- let me - * know if the BSD or XP ports require flexibility here. +/* crude memory allocator for memory allocation early in + * boot */ - +void *bootmem_alloc(unsigned int size); +void bootmem_free(void *ptr, unsigned int size); -/* - * these are also defined in hypervisor-if.h but can't be pulled in as - * they are used in start of day assembly. Need to clean up the .h files - * a bit more... - */ -#if 0 -#ifndef FLAT_RING1_CS -#define FLAT_RING1_CS 0x0819 -#define FLAT_RING1_DS 0x0821 -#define FLAT_RING3_CS 0x082b -#define FLAT_RING3_DS 0x0833 -#endif -#endif -#define __KERNEL_CS FLAT_RING1_CS -#define __KERNEL_DS FLAT_RING1_DS /* Everything below this point is not included by assembler (.S) files. */ #ifndef __ASSEMBLY__ From owner-p4-projects@FreeBSD.ORG Sun Jan 8 21:48:00 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 404AA16A422; Sun, 8 Jan 2006 21:48:00 +0000 (GMT) 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 0228716A41F for ; Sun, 8 Jan 2006 21:48:00 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BD2F643D45 for ; Sun, 8 Jan 2006 21:47:59 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k08Llxa8067288 for ; Sun, 8 Jan 2006 21:47:59 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k08Llxtb067285 for perforce@freebsd.org; Sun, 8 Jan 2006 21:47:59 GMT (envelope-from kmacy@freebsd.org) Date: Sun, 8 Jan 2006 21:47:59 GMT Message-Id: <200601082147.k08Llxtb067285@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 89383 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: Sun, 08 Jan 2006 21:48:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=89383 Change 89383 by kmacy@kmacy:freebsd7_xen3 on 2006/01/08 21:47:40 modify isdn includes to minimize diff with native Affected files ... .. //depot/projects/xen3/src/sys/conf/files.i386-xen#2 edit Differences ... ==== //depot/projects/xen3/src/sys/conf/files.i386-xen#2 (text+ko) ==== @@ -339,22 +339,11 @@ # # isdn4bsd, needed for isic | iwic | ifpi | ifpi2 | ihfc | ifpnp | itjc # -i4b/layer1/i4b_hdlc.c optional itjc -i4b/layer1/i4b_hdlc.c optional ihfc -i4b/layer1/i4b_l1dmux.c optional isic -i4b/layer1/i4b_l1lib.c optional isic -i4b/layer1/i4b_l1dmux.c optional iwic -i4b/layer1/i4b_l1lib.c optional iwic -i4b/layer1/i4b_l1dmux.c optional ifpi -i4b/layer1/i4b_l1lib.c optional ifpi -i4b/layer1/i4b_l1dmux.c optional ifpi2 -i4b/layer1/i4b_l1lib.c optional ifpi2 -i4b/layer1/i4b_l1dmux.c optional ihfc -i4b/layer1/i4b_l1lib.c optional ihfc -i4b/layer1/i4b_l1dmux.c optional ifpnp -i4b/layer1/i4b_l1lib.c optional ifpnp -i4b/layer1/i4b_l1dmux.c optional itjc -i4b/layer1/i4b_l1lib.c optional itjc +i4b/layer1/i4b_hdlc.c optional ihfc | itjc +i4b/layer1/i4b_l1dmux.c optional ifpi | ifpi2 | ifpnp | \ + ihfc | isic | itjc | iwic +i4b/layer1/i4b_l1lib.c optional ifpi | ifpi2 | ifpnp | \ + ihfc | isic | itjc | iwic # # isdn4bsd, isic # From owner-p4-projects@FreeBSD.ORG Sun Jan 8 23:21:56 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 DA70C16A422; Sun, 8 Jan 2006 23:21:55 +0000 (GMT) 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 96A6616A41F for ; Sun, 8 Jan 2006 23:21:55 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 563DA43D45 for ; Sun, 8 Jan 2006 23:21:55 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k08NLt3Q071270 for ; Sun, 8 Jan 2006 23:21:55 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k08NLtAA071267 for perforce@freebsd.org; Sun, 8 Jan 2006 23:21:55 GMT (envelope-from kmacy@freebsd.org) Date: Sun, 8 Jan 2006 23:21:55 GMT Message-Id: <200601082321.k08NLtAA071267@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 89388 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: Sun, 08 Jan 2006 23:21:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=89388 Change 89388 by kmacy@kmacy:freebsd7_xen3 on 2006/01/08 23:21:06 add support for controlling reboot and shutdown via xm don't unconditionally call SHUTDOWN_crash in shutdown_panic don't call kfree in xenbus.h macro Affected files ... .. //depot/projects/xen3/src/sys/i386-xen/i386-xen/xen_machdep.c#5 edit .. //depot/projects/xen3/src/sys/i386-xen/include/xenbus.h#2 edit .. //depot/projects/xen3/src/sys/kern/kern_shutdown.c#4 edit Differences ... ==== //depot/projects/xen3/src/sys/i386-xen/i386-xen/xen_machdep.c#5 (text+ko) ==== @@ -39,6 +39,7 @@ #include #include #include +#include #include @@ -52,6 +53,8 @@ #include #include #include +#include + #include #include @@ -571,6 +574,74 @@ }; +static void shutdown_handler(struct xenbus_watch *watch, + const char **vec, unsigned int len) +{ + char *str; + struct xenbus_transaction *xbt; + int err, howto; + struct reboot_args uap; + + howto = 0; + + again: + xbt = xenbus_transaction_start(); + if (IS_ERR(xbt)) + return; + str = (char *)xenbus_read(xbt, "control", "shutdown", NULL); + /* Ignore read errors and empty reads. */ + if (XENBUS_IS_ERR_READ(str)) { + xenbus_transaction_end(xbt, 1); + return; + } + + xenbus_write(xbt, "control", "shutdown", ""); + + err = xenbus_transaction_end(xbt, 0); + if (err == EAGAIN) { + free(str, M_DEVBUF); + goto again; + } + + if (strcmp(str, "reboot") == 0) + howto = 0; + else if (strcmp(str, "poweroff") == 0) + howto |= (RB_POWEROFF | RB_HALT); + else if (strcmp(str, "halt") == 0) + howto |= RB_HALT; +#ifdef notyet + else if (strcmp(str, "suspend") == 0) + shutting_down = SHUTDOWN_SUSPEND; +#endif + else { + printf("Ignoring shutdown request: %s\n", str); + goto done; + } + + uap.opt = howto; + reboot(curthread, &uap); + done: + free(str, M_DEVBUF); +} + +static struct xenbus_watch shutdown_watch = { + .node = "control/shutdown", + .callback = shutdown_handler +}; + + +static void +setup_shutdown_watcher(void *unused) +{ + if (register_xenbus_watch(&shutdown_watch)) + printf("Failed to set shutdown watcher\n"); +} + + +SYSINIT(shutdown, SI_SUB_PSEUDO, SI_ORDER_ANY, setup_shutdown_watcher, NULL) + + + /********** CODE WORTH KEEPING ABOVE HERE *****************/ void xen_failsafe_handler(void); ==== //depot/projects/xen3/src/sys/i386-xen/include/xenbus.h#2 (text+ko) ==== @@ -161,7 +161,7 @@ #define XENBUS_IS_ERR_READ(str) ({ \ if (!IS_ERR(str) && strlen(str) == 0) { \ - kfree(str); \ + free(str, M_DEVBUF); \ str = ERR_PTR(-ERANGE); \ } \ IS_ERR(str); \ ==== //depot/projects/xen3/src/sys/kern/kern_shutdown.c#4 (text+ko) ==== @@ -439,11 +439,12 @@ { int loop; + + + if (howto & RB_DUMP) { #ifdef XEN - HYPERVISOR_sched_op(SCHEDOP_shutdown, SHUTDOWN_crash); + HYPERVISOR_sched_op(SCHEDOP_shutdown, SHUTDOWN_crash); #endif - - if (howto & RB_DUMP) { if (PANIC_REBOOT_WAIT_TIME != 0) { if (PANIC_REBOOT_WAIT_TIME != -1) { printf("Automatic reboot in %d seconds - " From owner-p4-projects@FreeBSD.ORG Mon Jan 9 01:05:02 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 96BF816A423; Mon, 9 Jan 2006 01:05:01 +0000 (GMT) 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 6F21F16A420 for ; Mon, 9 Jan 2006 01:05:01 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E2E6943D46 for ; Mon, 9 Jan 2006 01:04:59 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0914xdM082223 for ; Mon, 9 Jan 2006 01:04:59 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0914xmP082220 for perforce@freebsd.org; Mon, 9 Jan 2006 01:04:59 GMT (envelope-from csjp@freebsd.org) Date: Mon, 9 Jan 2006 01:04:59 GMT Message-Id: <200601090104.k0914xmP082220@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 89390 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: Mon, 09 Jan 2006 01:05:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=89390 Change 89390 by csjp@csjp_xor on 2006/01/09 01:04:12 Do not call crget() while holding the NFSD lock. This change moves the ucred allocation before we pickup the lock, and adjusts any logic to help ensure that we free the ucred in the event we do not need it. Affected files ... .. //depot/projects/trustedbsd/mac/sys/nfsserver/nfs_srvsock.c#20 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/nfsserver/nfs_srvsock.c#20 (text+ko) ==== @@ -368,7 +368,6 @@ * extensible data in the ucred, and worse. This wasn't * fixed before FreeBSD 5.3-RELEASE. */ - nd->nd_cr = crget(); nd->nd_cr->cr_uid = nd->nd_cr->cr_ruid = nd->nd_cr->cr_svuid = fxdr_unsigned(uid_t, *tl++); nd->nd_cr->cr_groups[0] = nd->nd_cr->cr_rgid = @@ -401,6 +400,10 @@ } else { nd->nd_repstat = (NFSERR_AUTHERR | AUTH_REJECTCRED); nd->nd_procnum = NFSPROC_NOOP; + if (nd->nd_cr != NULL) { + crfree(nd->nd_cr); + nd->nd_cr = NULL; + } return (0); } @@ -714,11 +717,11 @@ NFSD_UNLOCK(); MALLOC(nd, struct nfsrv_descript *, sizeof (struct nfsrv_descript), M_NFSRVDESC, M_WAITOK); + nd->nd_cr = crget(); NFSD_LOCK(); nd->nd_md = nd->nd_mrep = m; nd->nd_nam2 = nam; nd->nd_dpos = mtod(m, caddr_t); - nd->nd_cr = NULL; error = nfs_getreq(nd, nfsd, TRUE); if (error) { if (nam) { From owner-p4-projects@FreeBSD.ORG Mon Jan 9 01:09:06 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 C219216A422; Mon, 9 Jan 2006 01:09:05 +0000 (GMT) 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 9586F16A41F for ; Mon, 9 Jan 2006 01:09:05 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5094F43D45 for ; Mon, 9 Jan 2006 01:09:05 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k091950q082413 for ; Mon, 9 Jan 2006 01:09:05 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k09195V3082410 for perforce@freebsd.org; Mon, 9 Jan 2006 01:09:05 GMT (envelope-from csjp@freebsd.org) Date: Mon, 9 Jan 2006 01:09:05 GMT Message-Id: <200601090109.k09195V3082410@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 89391 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: Mon, 09 Jan 2006 01:09:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=89391 Change 89391 by csjp@csjp_xor on 2006/01/09 01:08:14 We not use crget/crfree to manage the ucred. Remove the comment which says otherwise. Affected files ... .. //depot/projects/trustedbsd/mac/sys/nfsserver/nfs_srvsock.c#21 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/nfsserver/nfs_srvsock.c#21 (text+ko) ==== @@ -362,12 +362,6 @@ } nfsm_adv(nfsm_rndup(len)); tl = nfsm_dissect_nonblock(u_int32_t *, 3 * NFSX_UNSIGNED); - /* - * XXX: This credential should be managed using crget(9) - * and related calls. Right now, this tramples on any - * extensible data in the ucred, and worse. This wasn't - * fixed before FreeBSD 5.3-RELEASE. - */ nd->nd_cr->cr_uid = nd->nd_cr->cr_ruid = nd->nd_cr->cr_svuid = fxdr_unsigned(uid_t, *tl++); nd->nd_cr->cr_groups[0] = nd->nd_cr->cr_rgid = From owner-p4-projects@FreeBSD.ORG Mon Jan 9 01:18:18 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 071F916A422; Mon, 9 Jan 2006 01:18:18 +0000 (GMT) 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 AE31216A41F for ; Mon, 9 Jan 2006 01:18:17 +0000 (GMT) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4995543D45 for ; Mon, 9 Jan 2006 01:18:17 +0000 (GMT) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k091IHrp082900 for ; Mon, 9 Jan 2006 01:18:17 GMT (envelope-from scottl@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k091IHNJ082897 for perforce@freebsd.org; Mon, 9 Jan 2006 01:18:17 GMT (envelope-from scottl@freebsd.org) Date: Mon, 9 Jan 2006 01:18:17 GMT Message-Id: <200601090118.k091IHNJ082897@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to scottl@freebsd.org using -f From: Scott Long To: Perforce Change Reviews Cc: Subject: PERFORCE change 89392 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: Mon, 09 Jan 2006 01:18:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=89392 Change 89392 by scottl@scottl-junior on 2006/01/09 01:17:28 Start a branch for plumbing Xen with newbus. Affected files ... .. //depot/projects/xen3-newbus/src/sys/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/api_up1000.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/atomic.s#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/autoconf.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/busdma_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/busspace.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/clock.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/clock_if.m#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/cpuconf.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/db_disasm.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/db_instruction.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/db_interface.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/db_trace.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/dec_1000a.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/dec_2100_a50.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/dec_2100_a500.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/dec_3000_300.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/dec_3000_500.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/dec_axppci_33.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/dec_eb164.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/dec_eb64plus.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/dec_kn20aa.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/dec_kn300.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/dec_kn8ae.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/dec_st550.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/dec_st6600.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/divrem.m4#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/dump_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/elf_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/exception.s#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/fp_emulate.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/gdb_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/genassym.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/ieee_float.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/ieee_float.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/in_cksum.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/interrupt.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/locore.s#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/mem.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/mp_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/pal.s#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/pmap.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/prom.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/prom_disp.s#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/promcons.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/sgmap.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/support.s#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/swtch.s#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/sys_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/trap.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/uio_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/uma_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/alpha/vm_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/compile/.cvsignore#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/conf/.cvsignore#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/conf/DEFAULTS#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/conf/GENERIC#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/conf/GENERIC.hints#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/conf/MAC#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/conf/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/conf/NOTES#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/_bus.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/_inttypes.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/_limits.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/_stdint.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/_types.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/alpha_cpu.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/asm.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/atomic.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/bootinfo.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/bus.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/bus_dma.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/bwx.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/chipset.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/clock.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/clockvar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/cpu.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/cpuconf.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/cpufunc.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/db_machdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/elf.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/endian.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/exec.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/float.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/floatingpoint.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/fpu.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/frame.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/gdb_machdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/ieee.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/ieeefp.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/in_cksum.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/inst.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/intr.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/intrcnt.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/ioctl_bt848.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/ioctl_meteor.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/kdb.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/limits.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/md_var.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/memdev.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/mutex.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/pal.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/param.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/pc/bios.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/pc/display.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/pc/vesa.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/pcb.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/pcpu.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/pmap.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/pmc_mdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/ppireg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/proc.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/profile.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/prom.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/pte.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/ptrace.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/reg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/reloc.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/resource.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/rpb.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/runq.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/setjmp.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/sf_buf.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/sgmap.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/sigframe.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/signal.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/smp.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/stdarg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/swiz.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/sysarch.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/timerreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/ucontext.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/varargs.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/include/vmparam.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/isa/isa.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/isa/isa_dma.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/isa/isavar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/isa/mcclock_isa.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/linux/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/linux/linux.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/linux/linux_dummy.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/linux/linux_genassym.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/linux/linux_ipc64.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/linux/linux_locore.s#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/linux/linux_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/linux/linux_proto.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/linux/linux_syscall.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/linux/linux_sysent.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/linux/linux_sysvec.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/linux/syscalls.conf#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/linux/syscalls.master#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/mcbus/mcbus.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/mcbus/mcbusreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/mcbus/mcbusvar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/mcbus/mcmem.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/mcbus/mcpcia.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/mcbus/mcpciareg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/mcbus/mcpciavar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/README.mach-traps#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/exec_ecoff.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/imgact_osf1.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/osf1.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/osf1_ioctl.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/osf1_misc.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/osf1_mount.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/osf1_proto.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/osf1_signal.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/osf1_signal.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/osf1_syscall.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/osf1_sysent.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/osf1_sysvec.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/osf1_util.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/syscalls.conf#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/osf1/syscalls.master#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/alphapci_if.m#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/apecs.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/apecs_pci.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/apecsreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/apecsvar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/bwx.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/cia.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/cia_pci.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/ciareg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/ciavar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/irongate.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/irongate_pci.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/irongatereg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/irongatevar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/lca.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/lca_pci.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/lcareg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/lcavar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/pci_eb164_intr.s#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/pci_eb64plus_intr.s#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/pcibus.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/pcibus.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/swiz.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/t2.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/t2_pci.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/t2reg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/t2var.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/tsunami.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/tsunami_pci.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/tsunamireg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/pci/tsunamivar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/dwlpx.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/dwlpxreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/dwlpxvar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/gbus.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/gbusreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/gbusvar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/kftxx.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/kftxxreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/kftxxvar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/mcclock_tlsb.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/tlsb.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/tlsbcpu.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/tlsbmem.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/tlsbreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/tlsbvar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/zs_tlsb.c#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/zsreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/alpha/tlsb/zsvar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/acpica/OsdEnvironment.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/acpica/acpi_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/acpica/acpi_wakeup.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/acpica/madt.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/amd64_mem.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/apic_vector.S#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/atomic.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/autoconf.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/bios.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/bpf_jit_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/bpf_jit_machdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/busdma_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/cpu_switch.S#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/db_disasm.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/db_interface.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/db_trace.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/dump_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/elf_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/exception.S#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/fpu.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/gdb_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/genassym.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/identcpu.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/in_cksum.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/initcpu.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/intr_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/io.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/io_apic.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/legacy.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/local_apic.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/locore.S#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/mem.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/mp_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/mp_watchdog.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/mpboot.S#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/mptable.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/mptable_pci.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/nexus.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/pmap.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/prof_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/sigtramp.S#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/support.S#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/sys_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/trap.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/tsc.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/uio_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/uma_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/amd64/vm_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/compile/.cvsignore#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/conf/.cvsignore#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/conf/DEFAULTS#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/conf/GENERIC#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/conf/GENERIC.hints#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/conf/MAC#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/conf/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/conf/NOTES#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/ia32/ia32_exception.S#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/ia32/ia32_reg.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/ia32/ia32_signal.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/ia32/ia32_sigtramp.S#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/ia32/ia32_syscall.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/_bus.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/_inttypes.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/_limits.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/_stdint.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/_types.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/acpica_machdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/apicreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/apicvar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/asm.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/asmacros.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/atomic.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/bus.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/bus_dma.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/clock.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/cpu.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/cpufunc.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/cputypes.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/db_machdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/elf.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/endian.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/exec.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/float.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/floatingpoint.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/fpu.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/frame.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/gdb_machdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/ieeefp.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/in_cksum.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/intr_machdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/iodev.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/kdb.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/legacyvar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/limits.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/md_var.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/memdev.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/metadata.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/mp_watchdog.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/mptable.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/mutex.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/param.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/pc/bios.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/pc/display.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/pcb.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/pcb_ext.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/pci_cfgreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/pcpu.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/pmap.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/pmc_mdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/ppireg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/proc.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/profile.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/psl.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/ptrace.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/reg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/reloc.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/resource.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/runq.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/segments.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/setjmp.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/sf_buf.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/sigframe.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/signal.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/smp.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/specialreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/stdarg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/sysarch.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/timerreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/trap.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/tss.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/ucontext.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/varargs.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/include/vmparam.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/isa/atpic.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/isa/atpic_vector.S#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/isa/clock.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/isa/elcr.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/isa/icu.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/isa/isa.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/isa/isa.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/isa/isa_dma.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/isa/nmi.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/linux32/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/linux32/linux.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/linux32/linux32_dummy.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/linux32/linux32_genassym.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/linux32/linux32_ipc64.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/linux32/linux32_locore.s#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/linux32/linux32_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/linux32/linux32_proto.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/linux32/linux32_syscall.h#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/linux32/linux32_sysent.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/linux32/linux32_sysvec.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/linux32/syscalls.conf#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/linux32/syscalls.master#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/pci/pci_bus.c#1 branch .. //depot/projects/xen3-newbus/src/sys/amd64/pci/pci_cfgreg.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/autoconf.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/bcopy_page.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/bcopyinout.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/bcopyinout_xscale.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/blockio.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/bootconfig.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/bus_space_asm_generic.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/busdma_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/copystr.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/cpufunc.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/cpufunc_asm.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/cpufunc_asm_arm10.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/cpufunc_asm_arm7tdmi.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/cpufunc_asm_arm8.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/cpufunc_asm_arm9.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/cpufunc_asm_armv4.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/cpufunc_asm_ixp12x0.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/cpufunc_asm_sa1.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/cpufunc_asm_sa11x0.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/cpufunc_asm_xscale.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/db_disasm.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/db_interface.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/db_trace.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/disassem.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/dump_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/elf_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/elf_trampoline.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/exception.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/fiq.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/fiq_subr.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/fusu.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/genassym.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/identcpu.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/in_cksum.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/in_cksum_arm.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/inckern.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/intr.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/irq_dispatch.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/locore.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/mem.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/nexus.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/nexus_io.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/nexus_io_asm.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/pmap.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/setcpsr.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/setstack.s#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/support.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/swtch.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/sys_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/trap.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/uio_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/undefined.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/vectors.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/arm/vm_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/compile/.cvsignore#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/conf/.cvsignore#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/conf/IQ31244#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/conf/SIMICS#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/_bus.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/_inttypes.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/_limits.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/_stdint.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/_types.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/armreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/asm.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/asmacros.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/atomic.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/blockio.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/bootconfig.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/bus.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/bus_dma.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/clock.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/cpu.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/cpuconf.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/cpufunc.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/db_machdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/disassem.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/elf.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/endian.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/exec.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/fiq.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/float.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/floatingpoint.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/fp.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/frame.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/ieee.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/ieeefp.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/in_cksum.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/intr.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/katelib.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/kdb.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/limits.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/machdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/md_var.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/memdev.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/metadata.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/mutex.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/param.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/pcb.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/pcpu.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/pmap.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/pmc_mdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/proc.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/profile.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/psl.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/pte.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/ptrace.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/reg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/reloc.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/resource.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/runq.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/setjmp.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/sf_buf.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/sigframe.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/signal.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/smp.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/stdarg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/swi.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/sysarch.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/trap.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/ucontext.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/undefined.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/utrap.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/include/vmparam.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/assabet_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/files.sa11x0#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/sa11x0.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/sa11x0_dmacreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/sa11x0_gpioreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/sa11x0_io.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/sa11x0_io_asm.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/sa11x0_irq.S#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/sa11x0_irqhandler.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/sa11x0_ost.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/sa11x0_ostreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/sa11x0_ppcreg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/sa11x0_reg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/sa11x0_var.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/std.sa11x0#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/uart_bus_sa1110.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/uart_cpu_sa1110.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/uart_dev_sa1110.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/sa11x0/uart_dev_sa1110.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/files.i80321#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/files.iq31244#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/i80321.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/i80321_aau.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/i80321_dma.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/i80321_intr.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/i80321_mcu.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/i80321_pci.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/i80321_space.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/i80321_timer.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/i80321_wdog.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/i80321reg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/i80321var.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/iq31244_7seg.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/iq31244_machdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/iq80321.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/iq80321reg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/iq80321var.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/obio.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/obio_space.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/obiovar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/std.i80321#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/std.iq31244#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/uart_bus_i80321.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/i80321/uart_cpu_i80321.c#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/std.xscale#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/xscalereg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/arm/xscale/xscalevar.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/README#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/Makefile.inc#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/boot1/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/boot1/boot1.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/cdboot/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/cdboot/version#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/common/Makefile.common#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/common/conf.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/common/help.alpha#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/common/ldscript#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/common/main.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/OSFpal.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/alpha_copy.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/alpha_module.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/bbinfo.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/bootinfo.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/common.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/delay.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/devicename.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/elf_freebsd.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/getsecs.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/libalpha.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/pal.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/prom.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/prom_disp.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/prom_swpal.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/reboot.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/srmdisk.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/srmnet.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/start.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/libalpha/time.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/loader/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/loader/version#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/netboot/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/alpha/netboot/version#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/Makefile.inc#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/include/arcfuncs.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/include/arctypes.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/include/libarc.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/abort.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/arcconsole.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/arcdisk.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/arch/alpha/copy.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/arch/alpha/rpb.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/arch/alpha/setjmp.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/arch/alpha/start.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/bootinfo.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/delay.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/devicename.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/elf_freebsd.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/module.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/prom.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/setjmperr.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/lib/time.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/loader/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/loader/conf.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/loader/help.alpha#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/loader/main.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/arc/loader/version#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/Makefile.inc#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/bcache.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/boot.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/bootstrap.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/commands.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/console.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/dev_net.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/dev_net.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/devopen.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/help.common#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/interp.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/interp_backslash.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/interp_forth.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/interp_parse.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/isapnp.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/isapnp.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/load.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/load_elf.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/load_elf32.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/load_elf32_obj.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/load_elf64.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/load_elf64_obj.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/load_elf_obj.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/loader.8#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/ls.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/merge_help.awk#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/misc.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/module.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/newvers.sh#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/panic.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/pnp.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/pnpdata#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/reloc_elf.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/reloc_elf32.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/reloc_elf64.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/common/ufsread.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/Makefile.inc#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/README#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efi.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efi_nii.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efiapi.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/eficon.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efidebug.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efidef.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efidevp.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efierr.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efifpswa.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efifs.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efilib.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efinet.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efipart.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efiprot.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efipxebc.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efiser.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/efistdarg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/i386/efibind.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/i386/pe.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/ia64/efibind.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/include/ia64/pe.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/libefi/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/libefi/bootinfo.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/libefi/copy.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/libefi/delay.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/libefi/devicename.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/libefi/efi_console.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/libefi/efiboot.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/libefi/efifpswa.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/libefi/efifs.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/libefi/efinet.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/libefi/elf_freebsd.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/libefi/libefi.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/libefi/module.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/efi/libefi/time.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/alpha/sysdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/alpha/sysdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/dict.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/ficl.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/ficl.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/fileaccess.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/float.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/i386/sysdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/i386/sysdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/ia64/sysdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/ia64/sysdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/loader.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/math64.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/math64.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/powerpc/sysdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/powerpc/sysdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/prefix.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/search.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/softwords/classes.fr#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/softwords/ficlclass.fr#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/softwords/ficllocal.fr#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/softwords/fileaccess.fr#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/softwords/forml.fr#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/softwords/freebsd.fr#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/softwords/ifbrack.fr#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/softwords/jhlocal.fr#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/softwords/marker.fr#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/softwords/oo.fr#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/softwords/prefix.fr#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/softwords/softcore.awk#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/softwords/softcore.fr#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/softwords/string.fr#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/sparc64/sysdep.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/sparc64/sysdep.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/stack.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/testmain.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/tools.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/unix.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/vm.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ficl/words.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/forth/beastie.4th#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/forth/frames.4th#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/forth/loader.4th#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/forth/loader.4th.8#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/forth/loader.conf#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/forth/loader.conf.5#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/forth/loader.rc#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/forth/pnp.4th#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/forth/screen.4th#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/forth/support.4th#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/Makefile.inc#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/boot0/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/boot0/boot0.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/boot0/boot0ext.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/boot0ext/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/boot0sio/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/boot2/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/boot2/boot1.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/boot2/boot2.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/boot2/lib.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/boot2/sio.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/btx/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/btx/Makefile.inc#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/btx/btx/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/btx/btx/btx.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/btx/btxldr/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/btx/btxldr/btxldr.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/btx/lib/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/btx/lib/btxcsu.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/btx/lib/btxsys.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/btx/lib/btxv86.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/btx/lib/btxv86.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/cdboot/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/cdboot/cdboot.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/kgzldr/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/kgzldr/boot.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/kgzldr/crt.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/kgzldr/kgzldr.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/kgzldr/lib.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/kgzldr/sio.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/kgzldr/start.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/amd64_tramp.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/biosacpi.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/bioscd.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/biosdisk.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/biosmem.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/biospci.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/biospnp.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/biossmap.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/bootinfo.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/bootinfo32.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/bootinfo64.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/comconsole.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/devicename.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/elf32_freebsd.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/elf64_freebsd.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/gatea20.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/i386_copy.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/i386_module.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/libi386.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/nullconsole.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/pread.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/pxe.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/pxe.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/pxetramp.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/smbios.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/time.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/libi386/vidconsole.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/loader/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/loader/conf.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/loader/help.i386#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/loader/loader.rc#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/loader/main.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/loader/version#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/mbr/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/mbr/mbr.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/pxeldr/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/pxeldr/pxeboot.8#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/i386/pxeldr/pxeldr.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/Makefile.inc#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/efi/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/efi/conf.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/efi/efimd.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/efi/ldscript.ia64#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/efi/main.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/efi/start.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/efi/version#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/acpi_stub.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/bootinfo.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/conf.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/copy.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/delay.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/devicename.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/efi_stub.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/elf_freebsd.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/exit.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/ldscript.ia64#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/libski.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/main.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/pal_stub.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/sal_stub.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/skiconsole.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/skifs.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/skiload.cmd#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/ssc.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/start.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/time.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ia64/ski/version#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/common/Makefile.inc#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/common/main.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/libofw/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/libofw/devicename.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/libofw/elf_freebsd.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/libofw/libofw.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/libofw/ofw_console.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/libofw/ofw_copy.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/libofw/ofw_disk.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/libofw/ofw_memory.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/libofw/ofw_module.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/libofw/ofw_net.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/libofw/ofw_reboot.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/libofw/ofw_time.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/libofw/openfirm.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/ofw/libofw/openfirm.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/Makefile.inc#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot0.5/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot0.5/boot.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot0.5/boot0.5.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot0.5/disk.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot0.5/selector.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot0.5/start.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot0.5/support.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot0.5/syscons.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot0/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot0/boot0.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/README.serial.98#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/asm.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/asm.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/bios.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/boot.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/boot.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/boot2.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/dinode.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/disk.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/fs.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/inode.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/io.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/probe_keyboard.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/quota.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/serial.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/serial_16550.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/serial_8251.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/start.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/sys.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/boot2/table.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/btx/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/btx/Makefile.inc#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/btx/btx/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/btx/btx/btx.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/btx/btxldr/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/btx/btxldr/btxldr.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/btx/lib/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/btx/lib/btxcsu.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/btx/lib/btxsys.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/btx/lib/btxv86.h#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/btx/lib/btxv86.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/kgzldr/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/kgzldr/crt.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/libpc98/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/libpc98/biosdisk.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/libpc98/biosmem.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/libpc98/comconsole.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/libpc98/gatea20.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/libpc98/i386_module.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/libpc98/time.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/libpc98/vidconsole.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/loader/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/loader/conf.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/loader/help.pc98#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/pc98/loader/main.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/powerpc/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/powerpc/loader/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/powerpc/loader/conf.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/powerpc/loader/help.ofw#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/powerpc/loader/ldscript.powerpc#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/powerpc/loader/metadata.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/powerpc/loader/start.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/powerpc/loader/version#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/sparc64/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/sparc64/Makefile.inc#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/sparc64/boot1/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/sparc64/boot1/_start.s#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/sparc64/boot1/boot1.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/sparc64/loader/Makefile#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/sparc64/loader/help.sparc64#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/sparc64/loader/locore.S#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/sparc64/loader/main.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/sparc64/loader/metadata.c#1 branch .. //depot/projects/xen3-newbus/src/sys/boot/sparc64/loader/version#1 branch .. //depot/projects/xen3-newbus/src/sys/bsm/audit.h#1 branch .. //depot/projects/xen3-newbus/src/sys/bsm/audit_kevents.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/cam.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/cam.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/cam_ccb.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/cam_debug.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/cam_periph.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/cam_periph.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/cam_queue.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/cam_queue.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/cam_sim.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/cam_sim.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/cam_xpt.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/cam_xpt.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/cam_xpt_periph.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/cam_xpt_sim.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_all.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_all.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_cd.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_cd.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_ch.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_ch.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_da.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_da.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_dvcfg.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_iu.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_low.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_low.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_low_pisa.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_low_pisa.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_message.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_pass.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_pass.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_pt.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_pt.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_sa.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_sa.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_ses.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_ses.h#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_targ_bh.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_target.c#1 branch .. //depot/projects/xen3-newbus/src/sys/cam/scsi/scsi_targetio.h#1 branch .. //depot/projects/xen3-newbus/src/sys/coda/00READ#1 branch .. //depot/projects/xen3-newbus/src/sys/coda/README#1 branch .. //depot/projects/xen3-newbus/src/sys/coda/TODO#1 branch .. //depot/projects/xen3-newbus/src/sys/coda/cnode.h#1 branch .. //depot/projects/xen3-newbus/src/sys/coda/coda.h#1 branch .. //depot/projects/xen3-newbus/src/sys/coda/coda_fbsd.c#1 branch .. //depot/projects/xen3-newbus/src/sys/coda/coda_io.h#1 branch .. //depot/projects/xen3-newbus/src/sys/coda/coda_kernel.h#1 branch .. //depot/projects/xen3-newbus/src/sys/coda/coda_namecache.c#1 branch .. //depot/projects/xen3-newbus/src/sys/coda/coda_namecache.h#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jan 9 01:18:19 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 119E916A465; Mon, 9 Jan 2006 01:18:19 +0000 (GMT) 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 7A41716A444 for ; Mon, 9 Jan 2006 01:18:18 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1AC7D43D45 for ; Mon, 9 Jan 2006 01:18:18 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k091IIiI082908 for ; Mon, 9 Jan 2006 01:18:18 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k091IHT9082903 for perforce@freebsd.org; Mon, 9 Jan 2006 01:18:17 GMT (envelope-from kmacy@freebsd.org) Date: Mon, 9 Jan 2006 01:18:17 GMT Message-Id: <200601090118.k091IHT9082903@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 89393 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: Mon, 09 Jan 2006 01:18:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=89393 Change 89393 by kmacy@kmacy:freebsd7_xen3 on 2006/01/09 01:18:13 integrate recent changes from main branch Affected files ... .. //depot/projects/xen3/src/sys/amd64/amd64/bpf_jit_machdep.c#2 integrate .. //depot/projects/xen3/src/sys/amd64/amd64/mptable_pci.c#2 integrate .. //depot/projects/xen3/src/sys/amd64/amd64/trap.c#2 integrate .. //depot/projects/xen3/src/sys/amd64/pci/pci_bus.c#2 integrate .. //depot/projects/xen3/src/sys/arm/arm/trap.c#2 integrate .. //depot/projects/xen3/src/sys/cam/cam_periph.c#2 integrate .. //depot/projects/xen3/src/sys/conf/NOTES#2 integrate .. //depot/projects/xen3/src/sys/conf/files#3 integrate .. //depot/projects/xen3/src/sys/conf/options#2 integrate .. //depot/projects/xen3/src/sys/dev/acpica/acpi_pci_link.c#2 integrate .. //depot/projects/xen3/src/sys/dev/acpica/acpi_pcib_acpi.c#2 integrate .. //depot/projects/xen3/src/sys/dev/acpica/acpi_pcib_pci.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata-all.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata-all.h#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata-card.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata-cbus.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata-chipset.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata-disk.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata-disk.h#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata-dma.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata-isa.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata-pci.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata-pci.h#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata-queue.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata-raid.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata-raid.h#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/ata_if.m#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/atapi-cd.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/atapi-cd.h#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/atapi-fd.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/atapi-fd.h#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/atapi-tape.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ata/atapi-tape.h#2 integrate .. //depot/projects/xen3/src/sys/dev/atkbdc/psm.c#2 integrate .. //depot/projects/xen3/src/sys/dev/dcons/dcons_os.c#2 integrate .. //depot/projects/xen3/src/sys/dev/fxp/if_fxp.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ichsmb/ichsmb.c#2 integrate .. //depot/projects/xen3/src/sys/dev/ips/ips_ioctl.h#2 integrate .. //depot/projects/xen3/src/sys/dev/ips/ipsreg.h#2 integrate .. //depot/projects/xen3/src/sys/dev/nmdm/nmdm.c#2 integrate .. //depot/projects/xen3/src/sys/dev/pci/pci_pci.c#2 integrate .. //depot/projects/xen3/src/sys/dev/pci/pcib_private.h#2 integrate .. //depot/projects/xen3/src/sys/dev/si/si.c#2 integrate .. //depot/projects/xen3/src/sys/dev/si/si2_z280.c#2 integrate .. //depot/projects/xen3/src/sys/dev/si/si3_t225.c#2 integrate .. //depot/projects/xen3/src/sys/dev/sn/if_sn.c#2 integrate .. //depot/projects/xen3/src/sys/dev/sound/pci/maestro.c#2 integrate .. //depot/projects/xen3/src/sys/dev/sound/pci/solo.c#2 integrate .. //depot/projects/xen3/src/sys/dev/sound/pcm/ac97.c#2 integrate .. //depot/projects/xen3/src/sys/dev/usb/usb_quirks.c#2 integrate .. //depot/projects/xen3/src/sys/dev/usb/usb_quirks.h#2 integrate .. //depot/projects/xen3/src/sys/dev/usb/usb_subr.c#2 integrate .. //depot/projects/xen3/src/sys/dev/usb/usbdevs#2 integrate .. //depot/projects/xen3/src/sys/dev/usb/uscanner.c#2 integrate .. //depot/projects/xen3/src/sys/dev/xen/balloon/balloon.c#1 add .. //depot/projects/xen3/src/sys/fs/devfs/devfs_rule.c#2 integrate .. //depot/projects/xen3/src/sys/fs/ntfs/ntfs_subr.c#2 integrate .. //depot/projects/xen3/src/sys/geom/vinum/geom_vinum_drive.c#2 integrate .. //depot/projects/xen3/src/sys/geom/vinum/geom_vinum_plex.c#2 integrate .. //depot/projects/xen3/src/sys/geom/vinum/geom_vinum_subr.c#2 integrate .. //depot/projects/xen3/src/sys/geom/vinum/geom_vinum_var.h#2 integrate .. //depot/projects/xen3/src/sys/geom/vinum/geom_vinum_volume.c#2 integrate .. //depot/projects/xen3/src/sys/gnu/fs/reiserfs/reiserfs_inode.c#2 integrate .. //depot/projects/xen3/src/sys/i386-xen/i386-xen/machdep.c#4 edit .. //depot/projects/xen3/src/sys/i386/i386/bpf_jit_machdep.c#2 integrate .. //depot/projects/xen3/src/sys/i386/i386/identcpu.c#2 integrate .. //depot/projects/xen3/src/sys/i386/i386/io_apic.c#2 edit .. //depot/projects/xen3/src/sys/i386/i386/mptable_pci.c#2 integrate .. //depot/projects/xen3/src/sys/i386/i386/trap.c#3 integrate .. //depot/projects/xen3/src/sys/i386/ibcs2/ibcs2_sysvec.c#2 integrate .. //depot/projects/xen3/src/sys/i386/isa/pcvt/pcvt_drv.c#2 integrate .. //depot/projects/xen3/src/sys/i386/pci/pci_bus.c#2 integrate .. //depot/projects/xen3/src/sys/i386/xbox/xboxfb.c#2 integrate .. //depot/projects/xen3/src/sys/ia64/ia64/ssc.c#2 integrate .. //depot/projects/xen3/src/sys/kern/kern_conf.c#2 integrate .. //depot/projects/xen3/src/sys/kern/kern_descrip.c#2 integrate .. //depot/projects/xen3/src/sys/kern/kern_mutex.c#2 integrate .. //depot/projects/xen3/src/sys/kern/kern_sx.c#2 integrate .. //depot/projects/xen3/src/sys/kern/kern_thr.c#2 integrate .. //depot/projects/xen3/src/sys/kern/subr_witness.c#2 integrate .. //depot/projects/xen3/src/sys/kern/sys_generic.c#2 integrate .. //depot/projects/xen3/src/sys/kern/tty.c#2 integrate .. //depot/projects/xen3/src/sys/kern/tty_pty.c#2 integrate .. //depot/projects/xen3/src/sys/kern/vfs_aio.c#2 integrate .. //depot/projects/xen3/src/sys/kern/vfs_syscalls.c#2 integrate .. //depot/projects/xen3/src/sys/net/bpf_filter.c#2 integrate .. //depot/projects/xen3/src/sys/net/if_mib.c#2 integrate .. //depot/projects/xen3/src/sys/net/if_mib.h#2 integrate .. //depot/projects/xen3/src/sys/powerpc/ofw/ofw_pcib_pci.c#2 integrate .. //depot/projects/xen3/src/sys/powerpc/powerpc/machdep.c#2 integrate .. //depot/projects/xen3/src/sys/sparc64/conf/NOTES#2 integrate .. //depot/projects/xen3/src/sys/sparc64/pci/apb.c#2 integrate .. //depot/projects/xen3/src/sys/sparc64/pci/ofw_pcib.c#2 integrate .. //depot/projects/xen3/src/sys/sys/_lock.h#2 integrate .. //depot/projects/xen3/src/sys/sys/lock.h#2 integrate .. //depot/projects/xen3/src/sys/sys/param.h#2 integrate .. //depot/projects/xen3/src/sys/sys/select.h#2 integrate .. //depot/projects/xen3/src/sys/sys/tty.h#2 integrate .. //depot/projects/xen3/src/sys/ufs/ffs/ffs_snapshot.c#2 integrate .. //depot/projects/xen3/src/sys/vm/uma_core.c#2 integrate .. //depot/projects/xen3/src/sys/vm/vm_pageq.c#2 integrate Differences ... ==== //depot/projects/xen3/src/sys/amd64/amd64/bpf_jit_machdep.c#2 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/bpf_jit_machdep.c,v 1.3 2005/12/06 07:22:00 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/bpf_jit_machdep.c,v 1.4 2006/01/03 20:26:02 jkim Exp $"); #include "opt_bpf.h" @@ -103,6 +103,10 @@ */ emit_func emitm; + /* Do not compile an empty filter. */ + if (nins == 0) + return NULL; + /* Allocate the reference table for the jumps */ stream.refs = (u_int *)malloc((nins + 1) * sizeof(u_int), M_BPFJIT, M_NOWAIT); ==== //depot/projects/xen3/src/sys/amd64/amd64/mptable_pci.c#2 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable_pci.c,v 1.3 2005/09/18 01:42:43 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/mptable_pci.c,v 1.4 2006/01/06 19:22:18 jhb Exp $"); #include #include @@ -100,13 +100,10 @@ { 0, 0 } }; -static driver_t mptable_hostb_driver = { - "pcib", - mptable_hostb_methods, - 1, -}; +static devclass_t hostb_devclass; -DRIVER_MODULE(mptable_pcib, legacy, mptable_hostb_driver, pcib_devclass, 0, 0); +DEFINE_CLASS_0(pcib, mptable_hostb_driver, mptable_hostb_methods, 1); +DRIVER_MODULE(mptable_pcib, legacy, mptable_hostb_driver, hostb_devclass, 0, 0); /* PCI to PCI bridge driver. */ @@ -155,11 +152,9 @@ {0, 0} }; -static driver_t mptable_pcib_driver = { - "pcib", - mptable_pcib_pci_methods, - sizeof(struct pcib_softc), -}; +static devclass_t pcib_devclass; +DEFINE_CLASS_0(pcib, mptable_pcib_driver, mptable_pcib_pci_methods, + sizeof(struct pcib_softc)); DRIVER_MODULE(mptable_pcib, pci, mptable_pcib_driver, pcib_devclass, 0, 0); ==== //depot/projects/xen3/src/sys/amd64/amd64/trap.c#2 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.298 2005/12/09 13:30:34 davidxu Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.299 2006/01/06 18:02:11 jhb Exp $"); /* * AMD64 Trap and System call handling @@ -220,10 +220,10 @@ printf("kernel trap %d with interrupts disabled\n", type); /* - * We shouldn't enable interrupts while in a critical - * section or servicing an NMI. + * We shouldn't enable interrupts while holding a + * spin lock or servicing an NMI. */ - if (type != T_NMI && td->td_critnest == 0) + if (type != T_NMI && td->td_md.md_spinlock_count == 0) enable_intr(); } } ==== //depot/projects/xen3/src/sys/amd64/pci/pci_bus.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/pci/pci_bus.c,v 1.115 2005/12/20 21:09:44 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/pci/pci_bus.c,v 1.116 2006/01/06 19:22:18 jhb Exp $"); #include "opt_cpu.h" @@ -326,12 +326,9 @@ { 0, 0 } }; -static driver_t legacy_pcib_driver = { - "pcib", - legacy_pcib_methods, - 1, -}; +static devclass_t pcib_devclass; +DEFINE_CLASS_0(pcib, legacy_pcib_driver, legacy_pcib_methods, 1); DRIVER_MODULE(pcib, legacy, legacy_pcib_driver, pcib_devclass, 0, 0); @@ -377,12 +374,7 @@ { 0, 0 } }; -static driver_t pcibus_pnp_driver = { - "pcibus_pnp", - pcibus_pnp_methods, - 1, /* no softc */ -}; - static devclass_t pcibus_pnp_devclass; +DEFINE_CLASS_0(pcibus_pnp, pcibus_pnp_driver, pcibus_pnp_methods, 1); DRIVER_MODULE(pcibus_pnp, isa, pcibus_pnp_driver, pcibus_pnp_devclass, 0, 0); ==== //depot/projects/xen3/src/sys/arm/arm/trap.c#2 (text+ko) ==== @@ -82,7 +82,7 @@ #include "opt_ktrace.h" #include -__FBSDID("$FreeBSD: src/sys/arm/arm/trap.c,v 1.18 2005/10/14 12:43:44 davidxu Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/trap.c,v 1.19 2006/01/06 18:02:12 jhb Exp $"); #include @@ -269,7 +269,8 @@ /* Grab the current pcb */ pcb = td->td_pcb; /* Re-enable interrupts if they were enabled previously */ - if (td->td_critnest == 0 && __predict_true(tf->tf_spsr & I32_bit) == 0) + if (td->td_md.md_spinlock_count == 0 && + __predict_true(tf->tf_spsr & I32_bit) == 0) enable_interrupts(I32_bit); /* Invoke the appropriate handler, if necessary */ @@ -729,7 +730,7 @@ thread_user_enter(td); } fault_pc = tf->tf_pc; - if (td->td_critnest == 0 && + if (td->td_md.md_spinlock_count == 0 && __predict_true((tf->tf_spsr & I32_bit) == 0)) enable_interrupts(I32_bit); @@ -1007,7 +1008,7 @@ * Since all syscalls *should* come from user mode it will always * be safe to enable them, but check anyway. */ - if (td->td_critnest == 0 && !(frame->tf_spsr & I32_bit)) + if (td->td_md.md_spinlock_count == 0 && !(frame->tf_spsr & I32_bit)) enable_interrupts(I32_bit); syscall(td, frame, insn); ==== //depot/projects/xen3/src/sys/cam/cam_periph.c#2 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/cam/cam_periph.c,v 1.60 2005/07/01 15:21:29 avatar Exp $"); +__FBSDID("$FreeBSD: src/sys/cam/cam_periph.c,v 1.61 2006/01/08 20:04:55 iedowse Exp $"); #include #include @@ -1656,6 +1656,8 @@ case CAM_NO_HBA: case CAM_PROVIDE_FAIL: case CAM_REQ_TOO_BIG: + case CAM_LUN_INVALID: + case CAM_TID_INVALID: error = EINVAL; break; case CAM_SCSI_BUS_RESET: ==== //depot/projects/xen3/src/sys/conf/NOTES#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1341 2005/12/31 14:39:19 netchild Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1343 2006/01/04 17:19:28 joel Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -1922,9 +1922,9 @@ # zero if don't know what to put in (and you don't, # since this is unsupported at the moment...). # +# snd_ad1816: Analog Devices AD1816 ISA PnP/non-PnP. # snd_als4000: Avance Logic ALS4000 PCI. # snd_atiixp: ATI IXP 200/300/400 PCI. -# snd_ad1816: Analog Devices AD1816 ISA PnP/non-PnP. # snd_audiocs: Crystal Semiconductor CS4231 SBus/EBus. # snd_cmi: CMedia CMI8338/CMI8738 PCI. # snd_cs4281: Crystal Semiconductor CS4281 PCI. @@ -1984,7 +1984,6 @@ device snd_via8233 device snd_via82c686 device snd_vibes -#device snd_vortex1 device snd_uaudio # For non-pnp sound cards: ==== //depot/projects/xen3/src/sys/conf/files#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.1080 2005/12/29 01:43:46 imp Exp $ +# $FreeBSD: src/sys/conf/files,v 1.1081 2006/01/04 17:05:18 joel Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -860,7 +860,6 @@ dev/sound/pci/via8233.c optional snd_via8233 pci dev/sound/pci/via82c686.c optional snd_via82c686 pci dev/sound/pci/vibes.c optional snd_vibes pci -#dev/sound/pci/vortex1.c optional snd_vortex1 pci dev/sound/pcm/ac97.c optional sound dev/sound/pcm/ac97_if.m optional sound dev/sound/pcm/ac97_patch.c optional sound ==== //depot/projects/xen3/src/sys/conf/options#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.522 2005/12/31 14:39:19 netchild Exp $ +# $FreeBSD: src/sys/conf/options,v 1.523 2006/01/06 04:44:09 imp Exp $ # # On the handling of kernel options # @@ -213,6 +213,11 @@ # otherwise a STUB module will be compiled in. SOFTUPDATES opt_ffs.h +# On small, embedded systems, it can be useful to turn off support for +# snapshots. It saves about 30-40k for a feature that would be lightly +# used, if it is used at all. +NO_FFS_SNAPSHOT opt_ffs.h + # Enabling this option turns on support for Access Control Lists in UFS, # which can be used to support high security configurations. Depends on # UFS_EXTATTR. ==== //depot/projects/xen3/src/sys/dev/acpica/acpi_pci_link.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.51 2005/12/05 19:50:00 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pci_link.c,v 1.53 2006/01/06 16:14:32 jhb Exp $"); #include "opt_acpi.h" #include @@ -449,8 +449,10 @@ } } sc->pl_num_links = creq.count; - if (creq.count == 0) + if (creq.count == 0) { + ACPI_SERIAL_END(pci_link); return (0); + } sc->pl_links = malloc(sizeof(struct link) * sc->pl_num_links, M_PCI_LINK, M_WAITOK | M_ZERO); @@ -625,8 +627,11 @@ /* Bump the reference count. */ ACPI_SERIAL_BEGIN(pci_link); link = acpi_pci_link_lookup(dev, index); - if (link == NULL) - panic("%s: apparently invalid index %d", __func__, index); + if (link == NULL) { + device_printf(dev, "apparently invalid index %d\n", index); + ACPI_SERIAL_END(pci_link); + return; + } link->l_references++; if (link->l_routed) pci_link_interrupt_weights[link->l_irq]++; ==== //depot/projects/xen3/src/sys/dev/acpica/acpi_pcib_acpi.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pcib_acpi.c,v 1.49 2005/09/16 07:02:29 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pcib_acpi.c,v 1.50 2006/01/06 19:22:18 jhb Exp $"); #include "opt_acpi.h" #include @@ -107,12 +107,10 @@ {0, 0} }; -static driver_t acpi_pcib_acpi_driver = { - "pcib", - acpi_pcib_acpi_methods, - sizeof(struct acpi_hpcib_softc), -}; +static devclass_t pcib_devclass; +DEFINE_CLASS_0(pcib, acpi_pcib_acpi_driver, acpi_pcib_acpi_methods, + sizeof(struct acpi_hpcib_softc)); DRIVER_MODULE(acpi_pcib, acpi, acpi_pcib_acpi_driver, pcib_devclass, 0, 0); MODULE_DEPEND(acpi_pcib, acpi, 1, 1, 1); ==== //depot/projects/xen3/src/sys/dev/acpica/acpi_pcib_pci.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pcib_pci.c,v 1.13 2005/09/11 18:39:01 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/acpica/acpi_pcib_pci.c,v 1.14 2006/01/06 19:22:18 jhb Exp $"); #include "opt_acpi.h" @@ -97,12 +97,10 @@ {0, 0} }; -static driver_t acpi_pcib_pci_driver = { - "pcib", - acpi_pcib_pci_methods, - sizeof(struct acpi_pcib_softc), -}; +static devclass_t pcib_devclass; +DEFINE_CLASS_0(pcib, acpi_pcib_pci_driver, acpi_pcib_pci_methods, + sizeof(struct acpi_pcib_softc)); DRIVER_MODULE(acpi_pcib, pci, acpi_pcib_pci_driver, pcib_devclass, 0, 0); MODULE_DEPEND(acpi_pcib, acpi, 1, 1, 1); ==== //depot/projects/xen3/src/sys/dev/ata/ata-all.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1998 - 2005 Søren Schmidt + * Copyright (c) 1998 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -27,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.260 2005/11/25 09:00:56 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-all.c,v 1.261 2006/01/05 21:27:18 sos Exp $"); #include "opt_ata.h" #include ==== //depot/projects/xen3/src/sys/dev/ata/ata-all.h#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1998 - 2005 Søren Schmidt + * Copyright (c) 1998 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -25,7 +23,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/dev/ata/ata-all.h,v 1.109 2005/12/27 16:49:33 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-all.h,v 1.110 2006/01/05 21:27:19 sos Exp $ */ /* ATA register defines */ ==== //depot/projects/xen3/src/sys/dev/ata/ata-card.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1998 - 2005 Søren Schmidt + * Copyright (c) 1998 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -27,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-card.c,v 1.38 2005/09/22 18:46:29 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-card.c,v 1.39 2006/01/05 21:27:19 sos Exp $"); #include #include ==== //depot/projects/xen3/src/sys/dev/ata/ata-cbus.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2002 - 2005 Søren Schmidt + * Copyright (c) 2002 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -27,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-cbus.c,v 1.22 2005/04/30 16:22:06 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-cbus.c,v 1.23 2006/01/05 21:27:19 sos Exp $"); #include "opt_ata.h" #include ==== //depot/projects/xen3/src/sys/dev/ata/ata-chipset.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1998 - 2005 Søren Schmidt + * Copyright (c) 1998 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -27,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.146 2005/12/30 23:15:02 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.149 2006/01/05 21:27:19 sos Exp $"); #include "opt_ata.h" #include @@ -2920,7 +2918,8 @@ devid == ATA_I960RM) return ENXIO; - strcpy(buffer, idx->text); + strcpy(buffer, "Promise "); + strcat(buffer, idx->text); /* if we are on a FastTrak TX4, adjust the interrupt resource */ if ((idx->cfg2 & PRTX4) && pci_get_class(GRANDPARENT(dev))==PCIC_BRIDGE && @@ -2942,8 +2941,7 @@ start = end = 0; } } - sprintf(buffer, "Promise %s %s controller", - buffer, ata_mode2str(idx->max_dma)); + sprintf(buffer, "%s %s controller", buffer, ata_mode2str(idx->max_dma)); device_set_desc_copy(dev, buffer); ctlr->chip = idx; ctlr->chipinit = ata_promise_chipinit; @@ -2995,8 +2993,6 @@ break; case PRMIO: -// if (ctlr->r_res1) -// bus_release_resource(dev, ctlr->r_type1, ctlr->r_rid1,ctlr->r_res1); ctlr->r_type1 = SYS_RES_MEMORY; ctlr->r_rid1 = PCIR_BAR(4); if (!(ctlr->r_res1 = bus_alloc_resource_any(dev, ctlr->r_type1, @@ -3694,7 +3690,7 @@ struct ata_device *atadev = device_get_softc(dev); int devno = (ch->unit << 1) + ATA_DEV(atadev->unit); int error; - u_int32_t timings33[][2] = { + u_int32_t timings[][2] = { /* PROLD PRNEW mode */ { 0x004ff329, 0x004fff2f }, /* PIO 0 */ { 0x004fec25, 0x004ff82a }, /* PIO 1 */ @@ -3755,7 +3751,7 @@ if (!error) { if (ctlr->chip->cfg1 < PRTX) pci_write_config(gparent, 0x60 + (devno << 2), - timings33[ctlr->chip->cfg1][ata_mode2idx(mode)],4); + timings[ata_mode2idx(mode)][ctlr->chip->cfg1], 4); atadev->mode = mode; } return; ==== //depot/projects/xen3/src/sys/dev/ata/ata-disk.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1998 - 2005 Søren Schmidt + * Copyright (c) 1998 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -27,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-disk.c,v 1.191 2005/10/31 15:41:18 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-disk.c,v 1.192 2006/01/05 21:27:19 sos Exp $"); #include "opt_ata.h" #include ==== //depot/projects/xen3/src/sys/dev/ata/ata-disk.h#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1998 - 2005 Søren Schmidt + * Copyright (c) 1998 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -25,7 +23,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/dev/ata/ata-disk.h,v 1.50 2005/03/30 12:03:37 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-disk.h,v 1.51 2006/01/05 21:27:19 sos Exp $ */ /* structure describing an ATA disk */ ==== //depot/projects/xen3/src/sys/dev/ata/ata-dma.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1998 - 2005 Søren Schmidt + * Copyright (c) 1998 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -27,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-dma.c,v 1.140 2005/12/05 22:31:55 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-dma.c,v 1.141 2006/01/05 21:27:19 sos Exp $"); #include #include ==== //depot/projects/xen3/src/sys/dev/ata/ata-isa.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1998 - 2005 Søren Schmidt + * Copyright (c) 1998 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -27,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-isa.c,v 1.29 2005/04/30 16:22:07 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-isa.c,v 1.30 2006/01/05 21:27:19 sos Exp $"); #include "opt_ata.h" #include ==== //depot/projects/xen3/src/sys/dev/ata/ata-lowlevel.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1998 - 2005 Søren Schmidt + * Copyright (c) 1998 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -27,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.74 2005/12/05 22:31:55 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.75 2006/01/05 21:27:19 sos Exp $"); #include "opt_ata.h" #include ==== //depot/projects/xen3/src/sys/dev/ata/ata-pci.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1998 - 2005 Søren Schmidt + * Copyright (c) 1998 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -27,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-pci.c,v 1.109 2005/12/27 18:22:11 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-pci.c,v 1.110 2006/01/05 21:27:19 sos Exp $"); #include "opt_ata.h" #include ==== //depot/projects/xen3/src/sys/dev/ata/ata-pci.h#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2003 - 2005 Søren Schmidt + * Copyright (c) 2003 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -25,7 +23,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/dev/ata/ata-pci.h,v 1.58 2005/12/27 17:09:52 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-pci.h,v 1.59 2006/01/05 21:27:19 sos Exp $ */ /* structure holding chipset config info */ ==== //depot/projects/xen3/src/sys/dev/ata/ata-queue.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1998 - 2005 Søren Schmidt + * Copyright (c) 1998 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -27,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.52 2005/12/27 16:49:33 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-queue.c,v 1.53 2006/01/05 21:27:19 sos Exp $"); #include "opt_ata.h" #include ==== //depot/projects/xen3/src/sys/dev/ata/ata-raid.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2000 - 2005 Søren Schmidt + * Copyright (c) 2000 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -27,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-raid.c,v 1.114 2005/12/27 16:49:33 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-raid.c,v 1.115 2006/01/05 21:27:19 sos Exp $"); #include "opt_ata.h" #include ==== //depot/projects/xen3/src/sys/dev/ata/ata-raid.h#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2000 - 2005 Søren Schmidt + * Copyright (c) 2000 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -25,7 +23,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/dev/ata/ata-raid.h,v 1.41 2005/12/15 13:30:23 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-raid.h,v 1.42 2006/01/05 21:27:19 sos Exp $ */ /* misc defines */ ==== //depot/projects/xen3/src/sys/dev/ata/ata_if.m#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# Copyright (c) 2004, 2005 Søren Schmidt +# Copyright (c) 2004 - 2006 Søren Schmidt # All rights reserved. # # Redistribution and use in source and binary forms, with or without @@ -10,8 +10,6 @@ # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. -# 3. The name of the author may not be used to endorse or promote products -# derived from this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -24,7 +22,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/dev/ata/ata_if.m,v 1.5 2005/04/30 16:22:07 sos Exp $ +# $FreeBSD: src/sys/dev/ata/ata_if.m,v 1.6 2006/01/05 21:27:19 sos Exp $ #include #include ==== //depot/projects/xen3/src/sys/dev/ata/atapi-cd.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1998 - 2005 Søren Schmidt + * Copyright (c) 1998 - 2006 Søren Schmidt * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -11,8 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. The name of the author may not be used to endorse or promote products - * derived from this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES @@ -27,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/atapi-cd.c,v 1.184 2005/10/31 15:41:18 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/atapi-cd.c,v 1.186 2006/01/05 21:27:19 sos Exp $"); #include "opt_ata.h" #include @@ -1513,7 +1511,7 @@ case DVD_STRUCT_COPYRIGHT: s->cpst = d->data[0]; - s->rmi = d->data[0]; + s->rmi = d->data[1]; break; case DVD_STRUCT_DISCKEY: ==== //depot/projects/xen3/src/sys/dev/ata/atapi-cd.h#2 (text+ko) ==== @@ -1,5 +1,5 @@ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jan 9 04:00:40 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 793C116A42A; Mon, 9 Jan 2006 04:00:39 +0000 (GMT) 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 462CF16A429 for ; Mon, 9 Jan 2006 04:00:39 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DF9A843D4C for ; Mon, 9 Jan 2006 04:00:37 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0940Y86089216 for ; Mon, 9 Jan 2006 04:00:34 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0940Yud089213 for perforce@freebsd.org; Mon, 9 Jan 2006 04:00:34 GMT (envelope-from kmacy@freebsd.org) Date: Mon, 9 Jan 2006 04:00:34 GMT Message-Id: <200601090400.k0940Yud089213@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 89396 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: Mon, 09 Jan 2006 04:00:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=89396 Change 89396 by kmacy@kmacy:freebsd7_xen3 on 2006/01/09 04:00:00 fix for compilation error caused by integrate Affected files ... .. //depot/projects/xen3/src/sys/dev/xen/console/console.c#5 edit Differences ... ==== //depot/projects/xen3/src/sys/dev/xen/console/console.c#5 (text+ko) ==== @@ -231,7 +231,7 @@ } sc->xc_dev = make_dev(&xc_cdevsw, 0, UID_ROOT, GID_WHEEL, 0600, "xc%r", 0); - xccons = ttymalloc(NULL); + xccons = ttyalloc(); sc->xc_dev->si_drv1 = (void *)sc; sc->xc_dev->si_tty = xccons; From owner-p4-projects@FreeBSD.ORG Mon Jan 9 04:01:37 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 CE27616A422; Mon, 9 Jan 2006 04:01:36 +0000 (GMT) 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 A6FB716A41F for ; Mon, 9 Jan 2006 04:01:36 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 59F1643D4C for ; Mon, 9 Jan 2006 04:01:36 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0941abm089277 for ; Mon, 9 Jan 2006 04:01:36 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0941ZHo089274 for perforce@freebsd.org; Mon, 9 Jan 2006 04:01:35 GMT (envelope-from kmacy@freebsd.org) Date: Mon, 9 Jan 2006 04:01:35 GMT Message-Id: <200601090401.k0941ZHo089274@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 89397 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: Mon, 09 Jan 2006 04:01:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=89397 Change 89397 by kmacy@kmacy:freebsd7_xen3 on 2006/01/09 04:01:15 BSDify balloon driver Affected files ... .. //depot/projects/xen3/src/sys/dev/xen/balloon/balloon.c#2 edit .. //depot/projects/xen3/src/sys/i386-xen/include/xenvar.h#2 edit Differences ... ==== //depot/projects/xen3/src/sys/dev/xen/balloon/balloon.c#2 (text+ko) ==== @@ -33,9 +33,9 @@ #include #include -#include - -#define PAGES2KB(_p) ((_p)<<(PAGE_SHIFT-10)) +#include +#include +#include /* * Protects atomic reservation decrease/increase against concurrent increases. @@ -60,63 +60,54 @@ */ static unsigned long driver_pages; +struct balloon_entry { + vm_page_t page; + STAILQ_ENTRY(balloon_entry) list; +}; + /* List of ballooned pages, threaded through the mem_map array. */ -static LIST_HEAD(ballooned_pages); +static STAILQ_HEAD(,balloon_entry) ballooned_pages; + static unsigned long balloon_low, balloon_high; -#if 0 + /* Main work function, always executed in process context. */ static void balloon_process(void *unused); -static DECLARE_WORK(balloon_worker, balloon_process, NULL); -static struct timer_list balloon_timer; -/* Use the private and mapping fields of struct page as a list. */ -#define PAGE_TO_LIST(p) ((struct list_head *)&p->private) -#define LIST_TO_PAGE(l) \ - (list_entry(((unsigned long *)l), struct page, private)) -#define UNLIST_PAGE(p) \ - do { \ - list_del(PAGE_TO_LIST(p)); \ - p->mapping = NULL; \ - p->private = 0; \ - } while(0) - #define IPRINTK(fmt, args...) \ printk(KERN_INFO "xen_mem: " fmt, ##args) #define WPRINTK(fmt, args...) \ printk(KERN_WARNING "xen_mem: " fmt, ##args) -#endif /* balloon_append: add the given page to the balloon. */ static void -balloon_append(struct page *page) +balloon_append(vm_page_t page) { - /* Lowmem is re-populated first, so highmem pages go at list tail. */ - if (PageHighMem(page)) { - list_add_tail(PAGE_TO_LIST(page), &ballooned_pages); - balloon_high++; - } else { - list_add(PAGE_TO_LIST(page), &ballooned_pages); - balloon_low++; - } + struct balloon_entry *entry; + + entry = malloc(sizeof(struct balloon_entry), M_WAITOK); + + STAILQ_INSERT_HEAD(&ballooned_pages, entry, list); + balloon_low++; } /* balloon_retrieve: rescue a page from the balloon, if it is not empty. */ -static struct page * +static vm_page_t balloon_retrieve(void) { - struct page *page; + vm_page_t page; + struct balloon_entry *entry; - if (list_empty(&ballooned_pages)) + if (STAILQ_EMPTY(&ballooned_pages)) return NULL; - page = LIST_TO_PAGE(ballooned_pages.next); - UNLIST_PAGE(page); + entry = STAILQ_FIRST(&ballooned_pages); + STAILQ_REMOVE_HEAD(&ballooned_pages, list); - if (PageHighMem(page)) - balloon_high--; - else - balloon_low--; + page = entry->page; + free(entry, M_DEVBUF); + + balloon_low--; return page; } @@ -151,9 +142,9 @@ if (nr_pages > (PAGE_SIZE / sizeof(unsigned long))) nr_pages = PAGE_SIZE / sizeof(unsigned long); - mfn_list = (unsigned long *)__get_free_page(GFP_KERNEL); + mfn_list = (unsigned long *)malloc(PAGE_SIZE, M_DEVBUF, M_NOWAIT); if (mfn_list == NULL) - return -ENOMEM; + return ENOMEM; reservation.extent_start = mfn_list; @@ -167,36 +158,26 @@ reservation.nr_extents = rc; ret = HYPERVISOR_memory_op(XENMEM_decrease_reservation, &reservation); - BUG_ON(ret != rc); + PANIC_IF(ret != rc); hard_limit = current_pages + rc - driver_pages; goto out; } for (i = 0; i < nr_pages; i++) { page = balloon_retrieve(); - BUG_ON(page == NULL); + PANIC_IF(page == NULL); - pfn = page_to_pfn(page); - BUG_ON(phys_to_machine_mapping_valid(pfn)); + pfn = (VM_PAGE_TO_PHYS(page) >> PAGE_SHIFT); + PANIC_IF(phys_to_machine_mapping_valid(pfn)); /* Update P->M and M->P tables. */ - set_phys_to_machine(pfn, mfn_list[i]); + PFNTOMFN(pfn) = mfn_list[i]; xen_machphys_update(mfn_list[i], pfn); - /* Link back into the page tables if not highmem. */ - if (pfn < max_low_pfn) { - int ret; - ret = HYPERVISOR_update_va_mapping( - (unsigned long)__va(pfn << PAGE_SHIFT), - pfn_pte_ma(mfn_list[i], PAGE_KERNEL), - 0); - BUG_ON(ret); - } - /* Relinquish the page back to the allocator. */ ClearPageReserved(page); set_page_count(page, 1); - __free_page(page); + vm_page_free(page); } current_pages += nr_pages; @@ -205,7 +186,7 @@ out: balloon_unlock(flags); - free_page((unsigned long)mfn_list); + free((mfn_list); return 0; } @@ -227,60 +208,43 @@ if (nr_pages > (PAGE_SIZE / sizeof(unsigned long))) nr_pages = PAGE_SIZE / sizeof(unsigned long); - mfn_list = (unsigned long *)__get_free_page(GFP_KERNEL); + mfn_list = (unsigned long *)malloc(PAGE_SIZE, M_DEVBUF, M_NOWAIT); if (mfn_list == NULL) - return -ENOMEM; + return ENOMEM; for (i = 0; i < nr_pages; i++) { - if ((page = alloc_page(GFP_HIGHUSER)) == NULL) { + int color = 0; + if ((page = vm_page_alloc(NULL, color++, + VM_ALLOC_NORMAL | VM_ALLOC_NOOBJ | + VM_ALLOC_WIRED | VM_ALLOC_ZERO)) == NULL) { nr_pages = i; need_sleep = 1; break; } - - pfn = page_to_pfn(page); - mfn_list[i] = pfn_to_mfn(pfn); - - if (!PageHighMem(page)) { - v = phys_to_virt(pfn << PAGE_SHIFT); - scrub_pages(v, 1); - ret = HYPERVISOR_update_va_mapping( - (unsigned long)v, __pte_ma(0), 0); - BUG_ON(ret); - } -#ifdef CONFIG_XEN_SCRUB_PAGES - else { - v = kmap(page); - scrub_pages(v, 1); - kunmap(page); - } -#endif + pfn = (VM_PAGE_TO_PHYS(page) >> PAGE_SHIFT); + mfn_list[i] = PFNTOMFN(pfn); } - /* Ensure that ballooned highmem pages don't have kmaps. */ - kmap_flush_unused(); - flush_tlb_all(); - balloon_lock(flags); /* No more mappings: invalidate P2M and add to balloon. */ for (i = 0; i < nr_pages; i++) { - pfn = mfn_to_pfn(mfn_list[i]); - set_phys_to_machine(pfn, INVALID_P2M_ENTRY); - balloon_append(pfn_to_page(pfn)); + pfn = MFNTOPFN(mfn_list[i]); + PFNTOMFN(pfn) = INVALID_P2M_ENTRY; + balloon_append(PHYS_TO_VM_PAGE(pfn << PAGE_SHIFT)); } reservation.extent_start = mfn_list; reservation.nr_extents = nr_pages; ret = HYPERVISOR_memory_op(XENMEM_decrease_reservation, &reservation); - BUG_ON(ret != nr_pages); + PANIC_IF(ret != nr_pages); current_pages -= nr_pages; totalram_pages = current_pages; balloon_unlock(flags); - free_page((unsigned long)mfn_list); + free(mfn_list, M_DEVBUF); return need_sleep; } @@ -313,10 +277,11 @@ /* Schedule more work if there is some still to be done. */ if (current_target() != current_pages) - mod_timer(&balloon_timer, jiffies + HZ); + timeout(balloon_alarm, NULL, ticks + HZ); - + msleep(balloon_process, balloon_lock, 0, "balloon", -1); } + } /* Resets the Xen limit, sets new target, and kicks off processing. */ @@ -326,7 +291,7 @@ /* No need for lock. Not read-modify-write updates. */ hard_limit = ~0UL; target_pages = target; - wakeup(&balloon_process); + wakeup(balloon_process); } static struct xenbus_watch target_watch = @@ -390,9 +355,8 @@ /* Initialise the balloon with excess memory space. */ for (pfn = xen_start_info->nr_pages; pfn < max_pfn; pfn++) { - page = pfn_to_page(pfn); - if (!PageReserved(page)) - balloon_append(page); + page = PHYS_TO_VM_PAGE(pfn << PAGE_SHIFT); + balloon_append(page); } target_watch.callback = watch_target; @@ -425,7 +389,7 @@ set_pte_at(&init_mm, addr, pte, __pte_ma(0)); set_phys_to_machine(__pa(addr) >> PAGE_SHIFT, INVALID_P2M_ENTRY); ret = HYPERVISOR_memory_op(XENMEM_decrease_reservation, &reservation); - BUG_ON(ret != 1); + PANIC_IF(ret != 1); return 0; } @@ -433,37 +397,43 @@ vm_page_t balloon_alloc_empty_page_range(unsigned long nr_pages) { - unsigned long vstart, flags; + unsigned long flags; vm_page_t pages; - int ret; - + int i; + unsigned long *mfn_list; + struct xen_memory_reservation reservation = { + .address_bits = 0, + .extent_order = 0, + .domid = DOMID_SELF + }; pages = vm_page_alloc_contig(nr_pages, 0, -1, 4, 4) if (pages == NULL) return NULL; -#if 0 - scrub_pages(vstart, 1 << order); -/* I don't think we need to worry about unmapping these pages */ - ret = generic_page_range( - &init_mm, vstart, PAGE_SIZE << order, dealloc_pte_fn, NULL); - BUG_ON(ret); -#endif + + mfn_list = malloc(nr_pages*sizeof(unsigned long), M_DEVBUF, M_WAITOK); + + for (i = 0; i < nr_pages; i++) { + mfn_list[i] = PFNTOMFN(VM_PAGE_TO_PHYS(pages[i]) >> PAGE_SHIFT); + PFNTOMFN(i) = INVALID_P2M_ENTRY; + reservation.extent_start = mfn_list; + reservation.nr_extents = nr_pages; + PANIC_IF(HYPERVISOR_memory_op(XENMEM_decrease_reservation, &reservation) != nr_pages); + } + current_pages -= nr_pages; wakeup(balloon_process); - flush_tlb_all(); - return pages; } -void balloon_dealloc_empty_page_range( - struct page *page, unsigned long nr_pages) +void +balloon_dealloc_empty_page_range(vm_page_t page, unsigned long nr_pages) { unsigned long i, flags; - unsigned int order = get_order(nr_pages * PAGE_SIZE); - for (i = 0; i < (1UL << order); i++) + for (i = 0; i < nr_pages; i++) balloon_append(page + i); wakeup(balloon_process); ==== //depot/projects/xen3/src/sys/i386-xen/include/xenvar.h#2 (text+ko) ==== @@ -16,7 +16,8 @@ if (xendebug_flags & argflags) XENPRINTF("(file=%s, line=%d) " _f "\n", __FILE__, __LINE__, ## _a); extern unsigned long *xen_machine_phys; -#define PTOM(i) (((unsigned long *)xen_phys_machine)[i]) +#define PFNTOMFN(i) (((unsigned long *)xen_phys_machine)[i]) +#define MFNTOPFN(i) (xen_machine_phys[i]) #define phystomach(pa) ((((unsigned long *)xen_phys_machine)[(pa >> PAGE_SHIFT)]) << PAGE_SHIFT) void xpq_init(void); From owner-p4-projects@FreeBSD.ORG Mon Jan 9 04:58:47 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 DCC6D16A422; Mon, 9 Jan 2006 04:58:46 +0000 (GMT) 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 B0C8416A41F for ; Mon, 9 Jan 2006 04:58:46 +0000 (GMT) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 223D143D48 for ; Mon, 9 Jan 2006 04:58:46 +0000 (GMT) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k094wk8P098537 for ; Mon, 9 Jan 2006 04:58:46 GMT (envelope-from scottl@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k094wjLW098534 for perforce@freebsd.org; Mon, 9 Jan 2006 04:58:45 GMT (envelope-from scottl@freebsd.org) Date: Mon, 9 Jan 2006 04:58:45 GMT Message-Id: <200601090458.k094wjLW098534@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to scottl@freebsd.org using -f From: Scott Long To: Perforce Change Reviews Cc: Subject: PERFORCE change 89399 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: Mon, 09 Jan 2006 04:58:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=89399 Change 89399 by scottl@scottl-junior on 2006/01/09 04:58:42 Start off by fixing whitespace. Affected files ... .. //depot/projects/xen3-newbus/src/sys/dev/xen/xenbus/xenbus_probe.c#2 edit Differences ... ==== //depot/projects/xen3-newbus/src/sys/dev/xen/xenbus/xenbus_probe.c#2 (text+ko) ==== @@ -98,39 +98,39 @@ static const struct xenbus_device_id * match_device(const struct xenbus_device_id *arr, struct xenbus_device *dev) { - for (; !streq(arr->devicetype, ""); arr++) { - if (streq(arr->devicetype, dev->devicetype)) - return arr; - } - return NULL; + for (; !streq(arr->devicetype, ""); arr++) { + if (streq(arr->devicetype, dev->devicetype)) + return arr; + } + return NULL; } #if 0 static int xenbus_match(device_t _dev) { - struct xenbus_driver *drv; - struct xenbus_device *dev; - - dev = device_get_softc(_dev); - drv = dev->driver; + struct xenbus_driver *drv; + struct xenbus_device *dev; + + dev = device_get_softc(_dev); + drv = dev->driver; - if (!drv->ids) - return 0; + if (!drv->ids) + return 0; - return match_device(drv->ids, to_xenbus_device(_dev)) != NULL; + return match_device(drv->ids, to_xenbus_device(_dev)) != NULL; } #endif struct xen_bus_type { - char *root; - unsigned int levels; - int (*get_bus_id)(char bus_id[BUS_ID_SIZE], const char *nodename); - int (*probe)(const char *type, const char *dir, int unit); - struct xendev_list_head *bus; + char *root; + unsigned int levels; + int (*get_bus_id)(char bus_id[BUS_ID_SIZE], const char *nodename); + int (*probe)(const char *type, const char *dir, int unit); + struct xendev_list_head *bus; #if 0 - struct bus_type bus; - struct device dev; + struct bus_type bus; + struct device dev; #endif }; @@ -138,19 +138,19 @@ /* device// => - */ static int frontend_bus_id(char bus_id[BUS_ID_SIZE], const char *nodename) { - nodename = strchr(nodename, '/'); - if (!nodename || strlen(nodename + 1) >= BUS_ID_SIZE) { - printk(KERN_WARNING "XENBUS: bad frontend %s\n", nodename); - return EINVAL; - } + nodename = strchr(nodename, '/'); + if (!nodename || strlen(nodename + 1) >= BUS_ID_SIZE) { + printk(KERN_WARNING "XENBUS: bad frontend %s\n", nodename); + return EINVAL; + } - strlcpy(bus_id, nodename + 1, BUS_ID_SIZE); - if (!strchr(bus_id, '/')) { - printk(KERN_WARNING "XENBUS: bus_id %s no slash\n", bus_id); - return EINVAL; - } - *strchr(bus_id, '/') = '-'; - return 0; + strlcpy(bus_id, nodename + 1, BUS_ID_SIZE); + if (!strchr(bus_id, '/')) { + printk(KERN_WARNING "XENBUS: bus_id %s no slash\n", bus_id); + return EINVAL; + } + *strchr(bus_id, '/') = '-'; + return 0; } @@ -158,843 +158,832 @@ read_otherend_details(struct xenbus_device *xendev, char *id_node, char *path_node) { - int err = xenbus_gather(NULL, xendev->nodename, - id_node, "%i", &xendev->otherend_id, - path_node, NULL, &xendev->otherend, - NULL); - if (err) { - xenbus_dev_fatal(xendev, err, - "reading other end details from %s", - xendev->nodename); - return err; - } - if (strlen(xendev->otherend) == 0 || - !xenbus_exists(NULL, xendev->otherend, "")) { - xenbus_dev_fatal(xendev, ENOENT, "missing other end from %s", - xendev->nodename); - kfree(xendev->otherend); - xendev->otherend = NULL; - return ENOENT; - } + int err = xenbus_gather(NULL, xendev->nodename, + id_node, "%i", &xendev->otherend_id, + path_node, NULL, &xendev->otherend, + NULL); + if (err) { + xenbus_dev_fatal(xendev, err, + "reading other end details from %s", + xendev->nodename); + return err; + } + if (strlen(xendev->otherend) == 0 || + !xenbus_exists(NULL, xendev->otherend, "")) { + xenbus_dev_fatal(xendev, ENOENT, "missing other end from %s", + xendev->nodename); + kfree(xendev->otherend); + xendev->otherend = NULL; + return ENOENT; + } - return 0; + return 0; } static int read_backend_details(struct xenbus_device *xendev) { - return read_otherend_details(xendev, "backend-id", "backend"); + return read_otherend_details(xendev, "backend-id", "backend"); } static int read_frontend_details(struct xenbus_device *xendev) { - return read_otherend_details(xendev, "frontend-id", "frontend"); + return read_otherend_details(xendev, "frontend-id", "frontend"); } static void free_otherend_details(struct xenbus_device *dev) { - kfree(dev->otherend); - dev->otherend = NULL; + kfree(dev->otherend); + dev->otherend = NULL; } static void free_otherend_watch(struct xenbus_device *dev) { - if (dev->otherend_watch.node) { - unregister_xenbus_watch(&dev->otherend_watch); - kfree(dev->otherend_watch.node); - dev->otherend_watch.node = NULL; - } + if (dev->otherend_watch.node) { + unregister_xenbus_watch(&dev->otherend_watch); + kfree(dev->otherend_watch.node); + dev->otherend_watch.node = NULL; + } } /* Bus type for frontend drivers. */ static int xenbus_probe_frontend(const char *type, const char *name, int unit); static struct xen_bus_type xenbus_frontend = { - .root = "device", - .levels = 2, /* device/type/ */ - .get_bus_id = frontend_bus_id, - .probe = xenbus_probe_frontend, - .bus = &xenbus_device_frontend_list, + .root = "device", + .levels = 2, /* device/type/ */ + .get_bus_id = frontend_bus_id, + .probe = xenbus_probe_frontend, + .bus = &xenbus_device_frontend_list, #if 0 - /* this initialization needs to happen dynamically */ - .bus = { - .name = "xen", - .match = xenbus_match, - }, - .dev = { - .bus_id = "xen", - }, + /* this initialization needs to happen dynamically */ + .bus = { + .name = "xen", + .match = xenbus_match, + }, + .dev = { + .bus_id = "xen", + }, #endif }; /* backend/// => -- */ static int backend_bus_id(char bus_id[BUS_ID_SIZE], const char *nodename) { - int domid, err; - const char *devid, *type; - char *frontend; - unsigned int typelen; + int domid, err; + const char *devid, *type; + char *frontend; + unsigned int typelen; - type = strchr(nodename, '/'); - if (!type) - return EINVAL; - type++; - typelen = strcspn(type, "/"); - if (!typelen || type[typelen] != '/') - return EINVAL; + type = strchr(nodename, '/'); + if (!type) + return EINVAL; + type++; + typelen = strcspn(type, "/"); + if (!typelen || type[typelen] != '/') + return EINVAL; - devid = strrchr(nodename, '/') + 1; + devid = strrchr(nodename, '/') + 1; - err = xenbus_gather(NULL, nodename, "frontend-id", "%i", &domid, - "frontend", NULL, &frontend, - NULL); - if (err) - return err; - if (strlen(frontend) == 0) - err = ERANGE; + err = xenbus_gather(NULL, nodename, "frontend-id", "%i", &domid, + "frontend", NULL, &frontend, NULL); + if (err) + return err; + if (strlen(frontend) == 0) + err = ERANGE; - if (!err && !xenbus_exists(NULL, frontend, "")) - err = ENOENT; + if (!err && !xenbus_exists(NULL, frontend, "")) + err = ENOENT; - if (err) { - kfree(frontend); - return err; - } + if (err) { + kfree(frontend); + return err; + } - if (snprintf(bus_id, BUS_ID_SIZE, - "%.*s-%i-%s", typelen, type, domid, devid) >= BUS_ID_SIZE) - return ENOSPC; - return 0; + if (snprintf(bus_id, BUS_ID_SIZE, + "%.*s-%i-%s", typelen, type, domid, devid) >= BUS_ID_SIZE) + return ENOSPC; + return 0; } #if 0 static int xenbus_hotplug_backend(device_t dev, char **envp, - int num_envp, char *buffer, int buffer_size) + int num_envp, char *buffer, int buffer_size) { - panic("implement me"); + panic("implement me"); #if 0 - struct xenbus_device *xdev; - struct xenbus_driver *drv = NULL; - int i = 0; - int length = 0; - char *basepath_end; - char *frontend_id; + struct xenbus_device *xdev; + struct xenbus_driver *drv = NULL; + int i = 0; + int length = 0; + char *basepath_end; + char *frontend_id; - DPRINTK(""); + DPRINTK(""); - if (dev == NULL) - return ENODEV; + if (dev == NULL) + return ENODEV; - xdev = to_xenbus_device(dev); - if (xdev == NULL) - return ENODEV; + xdev = to_xenbus_device(dev); + if (xdev == NULL) + return ENODEV; - if (dev->driver) - drv = to_xenbus_driver(dev->driver); + if (dev->driver) + drv = to_xenbus_driver(dev->driver); - /* stuff we want to pass to /sbin/hotplug */ - add_hotplug_env_var(envp, num_envp, &i, - buffer, buffer_size, &length, - "XENBUS_TYPE=%s", xdev->devicetype); + /* stuff we want to pass to /sbin/hotplug */ + add_hotplug_env_var(envp, num_envp, &i, + buffer, buffer_size, &length, + "XENBUS_TYPE=%s", xdev->devicetype); - add_hotplug_env_var(envp, num_envp, &i, - buffer, buffer_size, &length, - "XENBUS_PATH=%s", xdev->nodename); + add_hotplug_env_var(envp, num_envp, &i, + buffer, buffer_size, &length, + "XENBUS_PATH=%s", xdev->nodename); - add_hotplug_env_var(envp, num_envp, &i, - buffer, buffer_size, &length, - "XENBUS_BASE_PATH=%s", xdev->nodename); + add_hotplug_env_var(envp, num_envp, &i, + buffer, buffer_size, &length, + "XENBUS_BASE_PATH=%s", xdev->nodename); - basepath_end = strrchr(envp[i - 1], '/'); - length -= strlen(basepath_end); - *basepath_end = '\0'; - basepath_end = strrchr(envp[i - 1], '/'); - length -= strlen(basepath_end); - *basepath_end = '\0'; + basepath_end = strrchr(envp[i - 1], '/'); + length -= strlen(basepath_end); + *basepath_end = '\0'; + basepath_end = strrchr(envp[i - 1], '/'); + length -= strlen(basepath_end); + *basepath_end = '\0'; - basepath_end++; - frontend_id = kmalloc(strlen(basepath_end) + 1, GFP_KERNEL); - strcpy(frontend_id, basepath_end); - add_hotplug_env_var(envp, num_envp, &i, - buffer, buffer_size, &length, - "XENBUS_FRONTEND_ID=%s", frontend_id); - kfree(frontend_id); + basepath_end++; + frontend_id = kmalloc(strlen(basepath_end) + 1, GFP_KERNEL); + strcpy(frontend_id, basepath_end); + add_hotplug_env_var(envp, num_envp, &i, + buffer, buffer_size, &length, + "XENBUS_FRONTEND_ID=%s", frontend_id); + kfree(frontend_id); - /* terminate, set to next free slot, shrink available space */ - envp[i] = NULL; - envp = &envp[i]; - num_envp -= i; - buffer = &buffer[length]; - buffer_size -= length; + /* terminate, set to next free slot, shrink available space */ + envp[i] = NULL; + envp = &envp[i]; + num_envp -= i; + buffer = &buffer[length]; + buffer_size -= length; - if (drv && drv->hotplug) - return drv->hotplug(xdev, envp, num_envp, buffer, - buffer_size); + if (drv && drv->hotplug) + return drv->hotplug(xdev, envp, num_envp, buffer, buffer_size); #endif - return 0; + return 0; } #endif static int xenbus_probe_backend(const char *type, const char *domid, int unit); static struct xen_bus_type xenbus_backend = { - .root = "backend", - .levels = 3, /* backend/type// */ - .get_bus_id = backend_bus_id, - .probe = xenbus_probe_backend, - /* at init time */ - .bus = &xenbus_device_backend_list, + .root = "backend", + .levels = 3, /* backend/type// */ + .get_bus_id = backend_bus_id, + .probe = xenbus_probe_backend, + /* at init time */ + .bus = &xenbus_device_backend_list, #if 0 - .bus = { - .name = "xen-backend", - .match = xenbus_match, - .hotplug = xenbus_hotplug_backend, - }, - .dev = { - .bus_id = "xen-backend", - }, + .bus = { + .name = "xen-backend", + .match = xenbus_match, + .hotplug = xenbus_hotplug_backend, + }, + .dev = { + .bus_id = "xen-backend", + }, #endif }; static void otherend_changed(struct xenbus_watch *watch, - const char **vec, unsigned int len) + const char **vec, unsigned int len) { + struct xenbus_device *dev = (struct xenbus_device *)watch; + struct xenbus_driver *drv = dev->driver; + XenbusState state; + + /* Protect us against watches firing on old details when the otherend + details change, say immediately after a resume. */ + if (!dev->otherend || strncmp(dev->otherend, vec[XS_WATCH_PATH], + strlen(dev->otherend))) { + DPRINTK("Ignoring watch at %s", vec[XS_WATCH_PATH]); + return; + } + + state = xenbus_read_driver_state(dev->otherend); - struct xenbus_device *dev = (struct xenbus_device *)watch; - struct xenbus_driver *drv = dev->driver; - XenbusState state; - - /* Protect us against watches firing on old details when the otherend - details change, say immediately after a resume. */ - if (!dev->otherend || - strncmp(dev->otherend, vec[XS_WATCH_PATH], - strlen(dev->otherend))) { - DPRINTK("Ignoring watch at %s", vec[XS_WATCH_PATH]); - return; - } + DPRINTK("state is %d, %s, %s", state, dev->otherend_watch.node, + vec[XS_WATCH_PATH]); + if (drv->otherend_changed) + drv->otherend_changed(dev, state); - state = xenbus_read_driver_state(dev->otherend); - - DPRINTK("state is %d, %s, %s", - state, dev->otherend_watch.node, vec[XS_WATCH_PATH]); - if (drv->otherend_changed) - drv->otherend_changed(dev, state); - } static int talk_to_otherend(struct xenbus_device *dev) { - struct xenbus_driver *drv; + struct xenbus_driver *drv; - drv = dev->driver; + drv = dev->driver; - free_otherend_watch(dev); - free_otherend_details(dev); + free_otherend_watch(dev); + free_otherend_details(dev); - return drv->read_otherend_details(dev); - - + return drv->read_otherend_details(dev); } static int watch_otherend(struct xenbus_device *dev) { - return xenbus_watch_path2(dev, dev->otherend, "state", - &dev->otherend_watch, otherend_changed); + return xenbus_watch_path2(dev, dev->otherend, "state", + &dev->otherend_watch, otherend_changed); } static int xenbus_dev_probe(struct xenbus_device *dev) { - struct xenbus_driver *drv = dev->driver; - const struct xenbus_device_id *id; - int err; + struct xenbus_driver *drv = dev->driver; + const struct xenbus_device_id *id; + int err; - DPRINTK(""); + DPRINTK(""); - if (!drv->probe) { - err = -ENODEV; - goto fail; - } + if (!drv->probe) { + err = -ENODEV; + goto fail; + } - id = match_device(drv->ids, dev); - if (!id) { - err = -ENODEV; - goto fail; - } + id = match_device(drv->ids, dev); + if (!id) { + err = -ENODEV; + goto fail; + } - err = talk_to_otherend(dev); - if (err) { - printk(KERN_WARNING - "xenbus_probe: talk_to_otherend on %s failed.\n", - dev->nodename); - return err; - } + err = talk_to_otherend(dev); + if (err) { + printk(KERN_WARNING + "xenbus_probe: talk_to_otherend on %s failed.\n", + dev->nodename); + return err; + } - err = drv->probe(dev, id); - if (err) - goto fail; + err = drv->probe(dev, id); + if (err) + goto fail; - err = watch_otherend(dev); - if (err) { - printk(KERN_WARNING - "xenbus_probe: watch_otherend on %s failed.\n", - dev->nodename); - return err; - } + err = watch_otherend(dev); + if (err) { + printk(KERN_WARNING + "xenbus_probe: watch_otherend on %s failed.\n", + dev->nodename); + return err; + } - return 0; + return 0; fail: - xenbus_dev_error(dev, err, "xenbus_dev_probe on %s", dev->nodename); - xenbus_switch_state(dev, NULL, XenbusStateClosed); - return ENODEV; + xenbus_dev_error(dev, err, "xenbus_dev_probe on %s", dev->nodename); + xenbus_switch_state(dev, NULL, XenbusStateClosed); + return ENODEV; } #if 0 static int xenbus_dev_remove(device_t _dev) { - struct xenbus_device *dev = to_xenbus_device(_dev); - struct xenbus_driver *drv = dev->driver; + struct xenbus_device *dev = to_xenbus_device(_dev); + struct xenbus_driver *drv = dev->driver; - DPRINTK(""); + DPRINTK(""); - free_otherend_watch(dev); - free_otherend_details(dev); + free_otherend_watch(dev); + free_otherend_details(dev); - if (drv->remove) - drv->remove(dev); + if (drv->remove) + drv->remove(dev); - xenbus_switch_state(dev, NULL, XenbusStateClosed); - return 0; + xenbus_switch_state(dev, NULL, XenbusStateClosed); + return 0; } #endif static int xenbus_register_driver_common(struct xenbus_driver *drv, - struct xen_bus_type *bus) + struct xen_bus_type *bus) { - struct xenbus_device *xdev; + struct xenbus_device *xdev; #if 0 - int ret; - /* this all happens in the driver itself - * doing this here simple serves to obfuscate - */ + int ret; + /* this all happens in the driver itself + * doing this here simple serves to obfuscate + */ - drv->driver.name = drv->name; - drv->driver.bus = &bus->bus; - drv->driver.owner = drv->owner; - drv->driver.probe = xenbus_dev_probe; - drv->driver.remove = xenbus_dev_remove; + drv->driver.name = drv->name; + drv->driver.bus = &bus->bus; + drv->driver.owner = drv->owner; + drv->driver.probe = xenbus_dev_probe; + drv->driver.remove = xenbus_dev_remove; - return ret; + return ret; #endif - down(&xenwatch_mutex); - LIST_INSERT_HEAD(&xendrv_list, drv, list); - up(&xenwatch_mutex); - LIST_FOREACH(xdev, bus->bus, list) { - if (streq(drv->name, xdev->devicetype)) { - xdev->driver = drv; - xenbus_dev_probe(xdev); + down(&xenwatch_mutex); + LIST_INSERT_HEAD(&xendrv_list, drv, list); + up(&xenwatch_mutex); + LIST_FOREACH(xdev, bus->bus, list) { + if (streq(drv->name, xdev->devicetype)) { + xdev->driver = drv; + xenbus_dev_probe(xdev); } } - return 0; + return 0; } int xenbus_register_frontend(struct xenbus_driver *drv) { - drv->read_otherend_details = read_backend_details; + drv->read_otherend_details = read_backend_details; - return xenbus_register_driver_common(drv, &xenbus_frontend); + return xenbus_register_driver_common(drv, &xenbus_frontend); } EXPORT_SYMBOL(xenbus_register_frontend); int xenbus_register_backend(struct xenbus_driver *drv) { - drv->read_otherend_details = read_frontend_details; + drv->read_otherend_details = read_frontend_details; - return xenbus_register_driver_common(drv, &xenbus_backend); + return xenbus_register_driver_common(drv, &xenbus_backend); } EXPORT_SYMBOL(xenbus_register_backend); void xenbus_unregister_driver(struct xenbus_driver *drv) { #if 0 - driver_unregister(&drv->driver); + driver_unregister(&drv->driver); #endif } EXPORT_SYMBOL(xenbus_unregister_driver); struct xb_find_info { - struct xenbus_device *dev; - const char *nodename; + struct xenbus_device *dev; + const char *nodename; }; static struct xenbus_device * xenbus_device_find(const char *nodename, struct xendev_list_head *bus) { - struct xenbus_device *xdev; - LIST_FOREACH(xdev, bus, list) { - if (streq(xdev->nodename, nodename)) { - return xdev; + struct xenbus_device *xdev; + LIST_FOREACH(xdev, bus, list) { + if (streq(xdev->nodename, nodename)) { + return xdev; #if 0 - get_device(dev); + get_device(dev); #endif - } } - return NULL; + } + return NULL; } #if 0 static int cleanup_dev(device_t dev, void *data) { - struct xenbus_device *xendev = device_get_softc(dev); - struct xb_find_info *info = data; - int len = strlen(info->nodename); + struct xenbus_device *xendev = device_get_softc(dev); + struct xb_find_info *info = data; + int len = strlen(info->nodename); - DPRINTK("%s", info->nodename); + DPRINTK("%s", info->nodename); - if (!strncmp(xendev->nodename, info->nodename, len)) { - info->dev = xendev; + if (!strncmp(xendev->nodename, info->nodename, len)) { + info->dev = xendev; #if 0 - get_device(dev); + get_device(dev); #endif - return 1; - } - return 0; + return 1; + } + return 0; } #endif static void xenbus_cleanup_devices(const char *path, struct xendev_list_head * bus) { - panic("unimplemented"); + panic("unimplemented"); #if 0 - struct xb_find_info info = { .nodename = path }; + struct xb_find_info info = { .nodename = path }; - do { - info.dev = NULL; - bus_for_each_dev(bus, NULL, &info, cleanup_dev); - if (info.dev) { - device_unregister(&info.dev->dev); - put_device(&info.dev->dev); - } - } while (info.dev); + do { + info.dev = NULL; + bus_for_each_dev(bus, NULL, &info, cleanup_dev); + if (info.dev) { + device_unregister(&info.dev->dev); + put_device(&info.dev->dev); + } + } while (info.dev); #endif } #if 0 static void xenbus_dev_free(struct xenbus_device *xendev) { - kfree(xendev); + kfree(xendev); } void xenbus_dev_release(device_t dev) { - /* - * nothing to do softc gets freed with the device - */ + /* + * nothing to do softc gets freed with the device + */ } #endif /* Simplified asprintf. */ static char *kasprintf(const char *fmt, ...) { - va_list ap; - unsigned int len; - char *p, dummy[1]; + va_list ap; + unsigned int len; + char *p, dummy[1]; - va_start(ap, fmt); - /* FIXME: vsnprintf has a bug, NULL should work */ - len = vsnprintf(dummy, 0, fmt, ap); - va_end(ap); + va_start(ap, fmt); + /* FIXME: vsnprintf has a bug, NULL should work */ + len = vsnprintf(dummy, 0, fmt, ap); + va_end(ap); - p = kmalloc(len + 1, GFP_KERNEL); - if (!p) - return NULL; - va_start(ap, fmt); - vsprintf(p, fmt, ap); - va_end(ap); - return p; + p = kmalloc(len + 1, GFP_KERNEL); + if (!p) + return NULL; + va_start(ap, fmt); + vsprintf(p, fmt, ap); + va_end(ap); + return p; } #if 0 static ssize_t xendev_show_nodename(struct device *dev, char *buf) { - return sprintf(buf, "%s\n", to_xenbus_device(dev)->nodename); + return sprintf(buf, "%s\n", to_xenbus_device(dev)->nodename); } DEVICE_ATTR(nodename, S_IRUSR | S_IRGRP | S_IROTH, xendev_show_nodename, NULL); static ssize_t xendev_show_devtype(struct device *dev, char *buf) { - return sprintf(buf, "%s\n", to_xenbus_device(dev)->devicetype); + return sprintf(buf, "%s\n", to_xenbus_device(dev)->devicetype); } DEVICE_ATTR(devtype, S_IRUSR | S_IRGRP | S_IROTH, xendev_show_devtype, NULL); #endif -static int xenbus_probe_node(struct xen_bus_type *bus, - const char *type, - const char *nodename, - int unit) +static int xenbus_probe_node(struct xen_bus_type *bus, const char *type, + const char *nodename, int unit) { -#define CHECK_FAIL \ +#define CHECK_FAIL \ do { \ if (err) \ goto fail; \ - } \ - while (0) \ + } while (0) \ - int err; - struct xenbus_device *xendev; - struct xenbus_driver *xdrv; - size_t stringlen; - char *tmpstring; + int err; + struct xenbus_device *xendev; + struct xenbus_driver *xdrv; + size_t stringlen; + char *tmpstring; - XenbusState state = xenbus_read_driver_state(nodename); + XenbusState state = xenbus_read_driver_state(nodename); - if (state != XenbusStateInitialising) { - /* Device is not new, so ignore it. This can happen if a - device is going away after switching to Closed. */ - return 0; - } + if (state != XenbusStateInitialising) { + /* Device is not new, so ignore it. This can happen if a + device is going away after switching to Closed. */ + return 0; + } - stringlen = strlen(nodename) + 1 + strlen(type) + 1; - xendev = kmalloc(sizeof(*xendev) + stringlen, GFP_KERNEL); - if (!xendev) - return ENOMEM; - memset(xendev, 0, sizeof(*xendev)); + stringlen = strlen(nodename) + 1 + strlen(type) + 1; + xendev = kmalloc(sizeof(*xendev) + stringlen, GFP_KERNEL); + if (!xendev) + return ENOMEM; + memset(xendev, 0, sizeof(*xendev)); - /* Copy the strings into the extra space. */ + /* Copy the strings into the extra space. */ + + tmpstring = (char *)(xendev + 1); + strcpy(tmpstring, nodename); + xendev->nodename = tmpstring; - tmpstring = (char *)(xendev + 1); - strcpy(tmpstring, nodename); - xendev->nodename = tmpstring; - - tmpstring += strlen(tmpstring) + 1; - strcpy(tmpstring, type); - xendev->devicetype = tmpstring; -/* - * equivalent to device registration - * events - */ - LIST_INSERT_HEAD(bus->bus, xendev, list); - LIST_FOREACH(xdrv, &xendrv_list, list) { - if (streq(xdrv->name, xendev->devicetype)) - xendev->driver = xdrv; - } + tmpstring += strlen(tmpstring) + 1; + strcpy(tmpstring, type); + xendev->devicetype = tmpstring; + /* + * equivalent to device registration + * events + */ + LIST_INSERT_HEAD(bus->bus, xendev, list); + LIST_FOREACH(xdrv, &xendrv_list, list) { + if (streq(xdrv->name, xendev->devicetype)) + xendev->driver = xdrv; + } - if (xendev->driver != NULL) - xenbus_dev_probe(xendev); + if (xendev->driver != NULL) + xenbus_dev_probe(xendev); #if 0 - xendev->dev.parent = &bus->dev; - xendev->dev.bus = &bus->bus; - xendev->dev.release = xenbus_dev_release; + xendev->dev.parent = &bus->dev; + xendev->dev.bus = &bus->bus; + xendev->dev.release = xenbus_dev_release; + + err = bus->get_bus_id(xendev->dev.bus_id, xendev->nodename); + CHECK_FAIL; - err = bus->get_bus_id(xendev->dev.bus_id, xendev->nodename); - CHECK_FAIL; + /* Register with generic device framework. */ + err = device_register(&xendev->dev); + CHECK_FAIL; - /* Register with generic device framework. */ - err = device_register(&xendev->dev); - CHECK_FAIL; - - device_create_file(&xendev->dev, &dev_attr_nodename); - device_create_file(&xendev->dev, &dev_attr_devtype); + device_create_file(&xendev->dev, &dev_attr_nodename); + device_create_file(&xendev->dev, &dev_attr_devtype); #endif - return 0; + return 0; #undef CHECK_FAIL #if 0 fail: - xenbus_dev_free(xendev); + xenbus_dev_free(xendev); #endif - return err; + return err; } /* device// */ static int xenbus_probe_frontend(const char *type, const char *name, int unit) { - char *nodename; - int err; + char *nodename; + int err; + + nodename = kasprintf("%s/%s/%s", xenbus_frontend.root, type, name); + if (!nodename) >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jan 9 05:00:53 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 D3EC916A426; Mon, 9 Jan 2006 05:00:52 +0000 (GMT) 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 AAD4A16A41F for ; Mon, 9 Jan 2006 05:00:52 +0000 (GMT) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 832CA43D6B for ; Mon, 9 Jan 2006 05:00:49 +0000 (GMT) (envelope-from scottl@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0950npx098673 for ; Mon, 9 Jan 2006 05:00:49 GMT (envelope-from scottl@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0950mdH098670 for perforce@freebsd.org; Mon, 9 Jan 2006 05:00:48 GMT (envelope-from scottl@freebsd.org) Date: Mon, 9 Jan 2006 05:00:48 GMT Message-Id: <200601090500.k0950mdH098670@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to scottl@freebsd.org using -f From: Scott Long To: Perforce Change Reviews Cc: Subject: PERFORCE change 89400 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: Mon, 09 Jan 2006 05:00:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=89400 Change 89400 by scottl@scottl-junior on 2006/01/09 05:00:21 Reverse merge whitespace fixes. Affected files ... .. //depot/projects/xen3/src/sys/dev/xen/xenbus/xenbus_probe.c#3 integrate Differences ... ==== //depot/projects/xen3/src/sys/dev/xen/xenbus/xenbus_probe.c#3 (text+ko) ==== @@ -98,39 +98,39 @@ static const struct xenbus_device_id * match_device(const struct xenbus_device_id *arr, struct xenbus_device *dev) { - for (; !streq(arr->devicetype, ""); arr++) { - if (streq(arr->devicetype, dev->devicetype)) - return arr; - } - return NULL; + for (; !streq(arr->devicetype, ""); arr++) { + if (streq(arr->devicetype, dev->devicetype)) + return arr; + } + return NULL; } #if 0 static int xenbus_match(device_t _dev) { - struct xenbus_driver *drv; - struct xenbus_device *dev; - - dev = device_get_softc(_dev); - drv = dev->driver; + struct xenbus_driver *drv; + struct xenbus_device *dev; + + dev = device_get_softc(_dev); + drv = dev->driver; - if (!drv->ids) - return 0; + if (!drv->ids) + return 0; - return match_device(drv->ids, to_xenbus_device(_dev)) != NULL; + return match_device(drv->ids, to_xenbus_device(_dev)) != NULL; } #endif struct xen_bus_type { - char *root; - unsigned int levels; - int (*get_bus_id)(char bus_id[BUS_ID_SIZE], const char *nodename); - int (*probe)(const char *type, const char *dir, int unit); - struct xendev_list_head *bus; + char *root; + unsigned int levels; + int (*get_bus_id)(char bus_id[BUS_ID_SIZE], const char *nodename); + int (*probe)(const char *type, const char *dir, int unit); + struct xendev_list_head *bus; #if 0 - struct bus_type bus; - struct device dev; + struct bus_type bus; + struct device dev; #endif }; @@ -138,19 +138,19 @@ /* device// => - */ static int frontend_bus_id(char bus_id[BUS_ID_SIZE], const char *nodename) { - nodename = strchr(nodename, '/'); - if (!nodename || strlen(nodename + 1) >= BUS_ID_SIZE) { - printk(KERN_WARNING "XENBUS: bad frontend %s\n", nodename); - return EINVAL; - } + nodename = strchr(nodename, '/'); + if (!nodename || strlen(nodename + 1) >= BUS_ID_SIZE) { + printk(KERN_WARNING "XENBUS: bad frontend %s\n", nodename); + return EINVAL; + } - strlcpy(bus_id, nodename + 1, BUS_ID_SIZE); - if (!strchr(bus_id, '/')) { - printk(KERN_WARNING "XENBUS: bus_id %s no slash\n", bus_id); - return EINVAL; - } - *strchr(bus_id, '/') = '-'; - return 0; + strlcpy(bus_id, nodename + 1, BUS_ID_SIZE); + if (!strchr(bus_id, '/')) { + printk(KERN_WARNING "XENBUS: bus_id %s no slash\n", bus_id); + return EINVAL; + } + *strchr(bus_id, '/') = '-'; + return 0; } @@ -158,843 +158,832 @@ read_otherend_details(struct xenbus_device *xendev, char *id_node, char *path_node) { - int err = xenbus_gather(NULL, xendev->nodename, - id_node, "%i", &xendev->otherend_id, - path_node, NULL, &xendev->otherend, - NULL); - if (err) { - xenbus_dev_fatal(xendev, err, - "reading other end details from %s", - xendev->nodename); - return err; - } - if (strlen(xendev->otherend) == 0 || - !xenbus_exists(NULL, xendev->otherend, "")) { - xenbus_dev_fatal(xendev, ENOENT, "missing other end from %s", - xendev->nodename); - kfree(xendev->otherend); - xendev->otherend = NULL; - return ENOENT; - } + int err = xenbus_gather(NULL, xendev->nodename, + id_node, "%i", &xendev->otherend_id, + path_node, NULL, &xendev->otherend, + NULL); + if (err) { + xenbus_dev_fatal(xendev, err, + "reading other end details from %s", + xendev->nodename); + return err; + } + if (strlen(xendev->otherend) == 0 || + !xenbus_exists(NULL, xendev->otherend, "")) { + xenbus_dev_fatal(xendev, ENOENT, "missing other end from %s", + xendev->nodename); + kfree(xendev->otherend); + xendev->otherend = NULL; + return ENOENT; + } - return 0; + return 0; } static int read_backend_details(struct xenbus_device *xendev) { - return read_otherend_details(xendev, "backend-id", "backend"); + return read_otherend_details(xendev, "backend-id", "backend"); } static int read_frontend_details(struct xenbus_device *xendev) { - return read_otherend_details(xendev, "frontend-id", "frontend"); + return read_otherend_details(xendev, "frontend-id", "frontend"); } static void free_otherend_details(struct xenbus_device *dev) { - kfree(dev->otherend); - dev->otherend = NULL; + kfree(dev->otherend); + dev->otherend = NULL; } static void free_otherend_watch(struct xenbus_device *dev) { - if (dev->otherend_watch.node) { - unregister_xenbus_watch(&dev->otherend_watch); - kfree(dev->otherend_watch.node); - dev->otherend_watch.node = NULL; - } + if (dev->otherend_watch.node) { + unregister_xenbus_watch(&dev->otherend_watch); + kfree(dev->otherend_watch.node); + dev->otherend_watch.node = NULL; + } } /* Bus type for frontend drivers. */ static int xenbus_probe_frontend(const char *type, const char *name, int unit); static struct xen_bus_type xenbus_frontend = { - .root = "device", - .levels = 2, /* device/type/ */ - .get_bus_id = frontend_bus_id, - .probe = xenbus_probe_frontend, - .bus = &xenbus_device_frontend_list, + .root = "device", + .levels = 2, /* device/type/ */ + .get_bus_id = frontend_bus_id, + .probe = xenbus_probe_frontend, + .bus = &xenbus_device_frontend_list, #if 0 - /* this initialization needs to happen dynamically */ - .bus = { - .name = "xen", - .match = xenbus_match, - }, - .dev = { - .bus_id = "xen", - }, + /* this initialization needs to happen dynamically */ + .bus = { + .name = "xen", + .match = xenbus_match, + }, + .dev = { + .bus_id = "xen", + }, #endif }; /* backend/// => -- */ static int backend_bus_id(char bus_id[BUS_ID_SIZE], const char *nodename) { - int domid, err; - const char *devid, *type; - char *frontend; - unsigned int typelen; + int domid, err; + const char *devid, *type; + char *frontend; + unsigned int typelen; - type = strchr(nodename, '/'); - if (!type) - return EINVAL; - type++; - typelen = strcspn(type, "/"); - if (!typelen || type[typelen] != '/') - return EINVAL; + type = strchr(nodename, '/'); + if (!type) + return EINVAL; + type++; + typelen = strcspn(type, "/"); + if (!typelen || type[typelen] != '/') + return EINVAL; - devid = strrchr(nodename, '/') + 1; + devid = strrchr(nodename, '/') + 1; - err = xenbus_gather(NULL, nodename, "frontend-id", "%i", &domid, - "frontend", NULL, &frontend, - NULL); - if (err) - return err; - if (strlen(frontend) == 0) - err = ERANGE; + err = xenbus_gather(NULL, nodename, "frontend-id", "%i", &domid, + "frontend", NULL, &frontend, NULL); + if (err) + return err; + if (strlen(frontend) == 0) + err = ERANGE; - if (!err && !xenbus_exists(NULL, frontend, "")) - err = ENOENT; + if (!err && !xenbus_exists(NULL, frontend, "")) + err = ENOENT; - if (err) { - kfree(frontend); - return err; - } + if (err) { + kfree(frontend); + return err; + } - if (snprintf(bus_id, BUS_ID_SIZE, - "%.*s-%i-%s", typelen, type, domid, devid) >= BUS_ID_SIZE) - return ENOSPC; - return 0; + if (snprintf(bus_id, BUS_ID_SIZE, + "%.*s-%i-%s", typelen, type, domid, devid) >= BUS_ID_SIZE) + return ENOSPC; + return 0; } #if 0 static int xenbus_hotplug_backend(device_t dev, char **envp, - int num_envp, char *buffer, int buffer_size) + int num_envp, char *buffer, int buffer_size) { - panic("implement me"); + panic("implement me"); #if 0 - struct xenbus_device *xdev; - struct xenbus_driver *drv = NULL; - int i = 0; - int length = 0; - char *basepath_end; - char *frontend_id; + struct xenbus_device *xdev; + struct xenbus_driver *drv = NULL; + int i = 0; + int length = 0; + char *basepath_end; + char *frontend_id; - DPRINTK(""); + DPRINTK(""); - if (dev == NULL) - return ENODEV; + if (dev == NULL) + return ENODEV; - xdev = to_xenbus_device(dev); - if (xdev == NULL) - return ENODEV; + xdev = to_xenbus_device(dev); + if (xdev == NULL) + return ENODEV; - if (dev->driver) - drv = to_xenbus_driver(dev->driver); + if (dev->driver) + drv = to_xenbus_driver(dev->driver); - /* stuff we want to pass to /sbin/hotplug */ - add_hotplug_env_var(envp, num_envp, &i, - buffer, buffer_size, &length, - "XENBUS_TYPE=%s", xdev->devicetype); + /* stuff we want to pass to /sbin/hotplug */ + add_hotplug_env_var(envp, num_envp, &i, + buffer, buffer_size, &length, + "XENBUS_TYPE=%s", xdev->devicetype); - add_hotplug_env_var(envp, num_envp, &i, - buffer, buffer_size, &length, - "XENBUS_PATH=%s", xdev->nodename); + add_hotplug_env_var(envp, num_envp, &i, + buffer, buffer_size, &length, + "XENBUS_PATH=%s", xdev->nodename); - add_hotplug_env_var(envp, num_envp, &i, - buffer, buffer_size, &length, - "XENBUS_BASE_PATH=%s", xdev->nodename); + add_hotplug_env_var(envp, num_envp, &i, + buffer, buffer_size, &length, + "XENBUS_BASE_PATH=%s", xdev->nodename); - basepath_end = strrchr(envp[i - 1], '/'); - length -= strlen(basepath_end); - *basepath_end = '\0'; - basepath_end = strrchr(envp[i - 1], '/'); - length -= strlen(basepath_end); - *basepath_end = '\0'; + basepath_end = strrchr(envp[i - 1], '/'); + length -= strlen(basepath_end); + *basepath_end = '\0'; + basepath_end = strrchr(envp[i - 1], '/'); + length -= strlen(basepath_end); + *basepath_end = '\0'; - basepath_end++; - frontend_id = kmalloc(strlen(basepath_end) + 1, GFP_KERNEL); - strcpy(frontend_id, basepath_end); - add_hotplug_env_var(envp, num_envp, &i, - buffer, buffer_size, &length, - "XENBUS_FRONTEND_ID=%s", frontend_id); - kfree(frontend_id); + basepath_end++; + frontend_id = kmalloc(strlen(basepath_end) + 1, GFP_KERNEL); + strcpy(frontend_id, basepath_end); + add_hotplug_env_var(envp, num_envp, &i, + buffer, buffer_size, &length, + "XENBUS_FRONTEND_ID=%s", frontend_id); + kfree(frontend_id); - /* terminate, set to next free slot, shrink available space */ - envp[i] = NULL; - envp = &envp[i]; - num_envp -= i; - buffer = &buffer[length]; - buffer_size -= length; + /* terminate, set to next free slot, shrink available space */ + envp[i] = NULL; + envp = &envp[i]; + num_envp -= i; + buffer = &buffer[length]; + buffer_size -= length; - if (drv && drv->hotplug) - return drv->hotplug(xdev, envp, num_envp, buffer, - buffer_size); + if (drv && drv->hotplug) + return drv->hotplug(xdev, envp, num_envp, buffer, buffer_size); #endif - return 0; + return 0; } #endif static int xenbus_probe_backend(const char *type, const char *domid, int unit); static struct xen_bus_type xenbus_backend = { - .root = "backend", - .levels = 3, /* backend/type// */ - .get_bus_id = backend_bus_id, - .probe = xenbus_probe_backend, - /* at init time */ - .bus = &xenbus_device_backend_list, + .root = "backend", + .levels = 3, /* backend/type// */ + .get_bus_id = backend_bus_id, + .probe = xenbus_probe_backend, + /* at init time */ + .bus = &xenbus_device_backend_list, #if 0 - .bus = { - .name = "xen-backend", - .match = xenbus_match, - .hotplug = xenbus_hotplug_backend, - }, - .dev = { - .bus_id = "xen-backend", - }, + .bus = { + .name = "xen-backend", + .match = xenbus_match, + .hotplug = xenbus_hotplug_backend, + }, + .dev = { + .bus_id = "xen-backend", + }, #endif }; static void otherend_changed(struct xenbus_watch *watch, - const char **vec, unsigned int len) + const char **vec, unsigned int len) { + struct xenbus_device *dev = (struct xenbus_device *)watch; + struct xenbus_driver *drv = dev->driver; + XenbusState state; + + /* Protect us against watches firing on old details when the otherend + details change, say immediately after a resume. */ + if (!dev->otherend || strncmp(dev->otherend, vec[XS_WATCH_PATH], + strlen(dev->otherend))) { + DPRINTK("Ignoring watch at %s", vec[XS_WATCH_PATH]); + return; + } + + state = xenbus_read_driver_state(dev->otherend); - struct xenbus_device *dev = (struct xenbus_device *)watch; - struct xenbus_driver *drv = dev->driver; - XenbusState state; - - /* Protect us against watches firing on old details when the otherend - details change, say immediately after a resume. */ - if (!dev->otherend || - strncmp(dev->otherend, vec[XS_WATCH_PATH], - strlen(dev->otherend))) { - DPRINTK("Ignoring watch at %s", vec[XS_WATCH_PATH]); - return; - } + DPRINTK("state is %d, %s, %s", state, dev->otherend_watch.node, + vec[XS_WATCH_PATH]); + if (drv->otherend_changed) + drv->otherend_changed(dev, state); - state = xenbus_read_driver_state(dev->otherend); - - DPRINTK("state is %d, %s, %s", - state, dev->otherend_watch.node, vec[XS_WATCH_PATH]); - if (drv->otherend_changed) - drv->otherend_changed(dev, state); - } static int talk_to_otherend(struct xenbus_device *dev) { - struct xenbus_driver *drv; + struct xenbus_driver *drv; - drv = dev->driver; + drv = dev->driver; - free_otherend_watch(dev); - free_otherend_details(dev); + free_otherend_watch(dev); + free_otherend_details(dev); - return drv->read_otherend_details(dev); - - + return drv->read_otherend_details(dev); } static int watch_otherend(struct xenbus_device *dev) { - return xenbus_watch_path2(dev, dev->otherend, "state", - &dev->otherend_watch, otherend_changed); + return xenbus_watch_path2(dev, dev->otherend, "state", + &dev->otherend_watch, otherend_changed); } static int xenbus_dev_probe(struct xenbus_device *dev) { - struct xenbus_driver *drv = dev->driver; - const struct xenbus_device_id *id; - int err; + struct xenbus_driver *drv = dev->driver; + const struct xenbus_device_id *id; + int err; - DPRINTK(""); + DPRINTK(""); - if (!drv->probe) { - err = -ENODEV; - goto fail; - } + if (!drv->probe) { + err = -ENODEV; + goto fail; + } - id = match_device(drv->ids, dev); - if (!id) { - err = -ENODEV; - goto fail; - } + id = match_device(drv->ids, dev); + if (!id) { + err = -ENODEV; + goto fail; + } - err = talk_to_otherend(dev); - if (err) { - printk(KERN_WARNING - "xenbus_probe: talk_to_otherend on %s failed.\n", - dev->nodename); - return err; - } + err = talk_to_otherend(dev); + if (err) { + printk(KERN_WARNING + "xenbus_probe: talk_to_otherend on %s failed.\n", + dev->nodename); + return err; + } - err = drv->probe(dev, id); - if (err) - goto fail; + err = drv->probe(dev, id); + if (err) + goto fail; - err = watch_otherend(dev); - if (err) { - printk(KERN_WARNING - "xenbus_probe: watch_otherend on %s failed.\n", - dev->nodename); - return err; - } + err = watch_otherend(dev); + if (err) { + printk(KERN_WARNING + "xenbus_probe: watch_otherend on %s failed.\n", + dev->nodename); + return err; + } - return 0; + return 0; fail: - xenbus_dev_error(dev, err, "xenbus_dev_probe on %s", dev->nodename); - xenbus_switch_state(dev, NULL, XenbusStateClosed); - return ENODEV; + xenbus_dev_error(dev, err, "xenbus_dev_probe on %s", dev->nodename); + xenbus_switch_state(dev, NULL, XenbusStateClosed); + return ENODEV; } #if 0 static int xenbus_dev_remove(device_t _dev) { - struct xenbus_device *dev = to_xenbus_device(_dev); - struct xenbus_driver *drv = dev->driver; + struct xenbus_device *dev = to_xenbus_device(_dev); + struct xenbus_driver *drv = dev->driver; - DPRINTK(""); + DPRINTK(""); - free_otherend_watch(dev); - free_otherend_details(dev); + free_otherend_watch(dev); + free_otherend_details(dev); - if (drv->remove) - drv->remove(dev); + if (drv->remove) + drv->remove(dev); - xenbus_switch_state(dev, NULL, XenbusStateClosed); - return 0; + xenbus_switch_state(dev, NULL, XenbusStateClosed); + return 0; } #endif static int xenbus_register_driver_common(struct xenbus_driver *drv, - struct xen_bus_type *bus) + struct xen_bus_type *bus) { - struct xenbus_device *xdev; + struct xenbus_device *xdev; #if 0 - int ret; - /* this all happens in the driver itself - * doing this here simple serves to obfuscate - */ + int ret; + /* this all happens in the driver itself + * doing this here simple serves to obfuscate + */ - drv->driver.name = drv->name; - drv->driver.bus = &bus->bus; - drv->driver.owner = drv->owner; - drv->driver.probe = xenbus_dev_probe; - drv->driver.remove = xenbus_dev_remove; + drv->driver.name = drv->name; + drv->driver.bus = &bus->bus; + drv->driver.owner = drv->owner; + drv->driver.probe = xenbus_dev_probe; + drv->driver.remove = xenbus_dev_remove; - return ret; + return ret; #endif - down(&xenwatch_mutex); - LIST_INSERT_HEAD(&xendrv_list, drv, list); - up(&xenwatch_mutex); - LIST_FOREACH(xdev, bus->bus, list) { - if (streq(drv->name, xdev->devicetype)) { - xdev->driver = drv; - xenbus_dev_probe(xdev); + down(&xenwatch_mutex); + LIST_INSERT_HEAD(&xendrv_list, drv, list); + up(&xenwatch_mutex); + LIST_FOREACH(xdev, bus->bus, list) { + if (streq(drv->name, xdev->devicetype)) { + xdev->driver = drv; + xenbus_dev_probe(xdev); } } - return 0; + return 0; } int xenbus_register_frontend(struct xenbus_driver *drv) { - drv->read_otherend_details = read_backend_details; + drv->read_otherend_details = read_backend_details; - return xenbus_register_driver_common(drv, &xenbus_frontend); + return xenbus_register_driver_common(drv, &xenbus_frontend); } EXPORT_SYMBOL(xenbus_register_frontend); int xenbus_register_backend(struct xenbus_driver *drv) { - drv->read_otherend_details = read_frontend_details; + drv->read_otherend_details = read_frontend_details; - return xenbus_register_driver_common(drv, &xenbus_backend); + return xenbus_register_driver_common(drv, &xenbus_backend); } EXPORT_SYMBOL(xenbus_register_backend); void xenbus_unregister_driver(struct xenbus_driver *drv) { #if 0 - driver_unregister(&drv->driver); + driver_unregister(&drv->driver); #endif } EXPORT_SYMBOL(xenbus_unregister_driver); struct xb_find_info { - struct xenbus_device *dev; - const char *nodename; + struct xenbus_device *dev; + const char *nodename; }; static struct xenbus_device * xenbus_device_find(const char *nodename, struct xendev_list_head *bus) { - struct xenbus_device *xdev; - LIST_FOREACH(xdev, bus, list) { - if (streq(xdev->nodename, nodename)) { - return xdev; + struct xenbus_device *xdev; + LIST_FOREACH(xdev, bus, list) { + if (streq(xdev->nodename, nodename)) { + return xdev; #if 0 - get_device(dev); + get_device(dev); #endif - } } - return NULL; + } + return NULL; } #if 0 static int cleanup_dev(device_t dev, void *data) { - struct xenbus_device *xendev = device_get_softc(dev); - struct xb_find_info *info = data; - int len = strlen(info->nodename); + struct xenbus_device *xendev = device_get_softc(dev); + struct xb_find_info *info = data; + int len = strlen(info->nodename); - DPRINTK("%s", info->nodename); + DPRINTK("%s", info->nodename); - if (!strncmp(xendev->nodename, info->nodename, len)) { - info->dev = xendev; + if (!strncmp(xendev->nodename, info->nodename, len)) { + info->dev = xendev; #if 0 - get_device(dev); + get_device(dev); #endif - return 1; - } - return 0; + return 1; + } + return 0; } #endif static void xenbus_cleanup_devices(const char *path, struct xendev_list_head * bus) { - panic("unimplemented"); + panic("unimplemented"); #if 0 - struct xb_find_info info = { .nodename = path }; + struct xb_find_info info = { .nodename = path }; - do { - info.dev = NULL; - bus_for_each_dev(bus, NULL, &info, cleanup_dev); - if (info.dev) { - device_unregister(&info.dev->dev); - put_device(&info.dev->dev); - } - } while (info.dev); + do { + info.dev = NULL; + bus_for_each_dev(bus, NULL, &info, cleanup_dev); + if (info.dev) { + device_unregister(&info.dev->dev); + put_device(&info.dev->dev); + } + } while (info.dev); #endif } #if 0 static void xenbus_dev_free(struct xenbus_device *xendev) { - kfree(xendev); + kfree(xendev); } void xenbus_dev_release(device_t dev) { - /* - * nothing to do softc gets freed with the device - */ + /* + * nothing to do softc gets freed with the device + */ } #endif /* Simplified asprintf. */ static char *kasprintf(const char *fmt, ...) { - va_list ap; - unsigned int len; - char *p, dummy[1]; + va_list ap; + unsigned int len; + char *p, dummy[1]; - va_start(ap, fmt); - /* FIXME: vsnprintf has a bug, NULL should work */ - len = vsnprintf(dummy, 0, fmt, ap); - va_end(ap); + va_start(ap, fmt); + /* FIXME: vsnprintf has a bug, NULL should work */ + len = vsnprintf(dummy, 0, fmt, ap); + va_end(ap); - p = kmalloc(len + 1, GFP_KERNEL); - if (!p) - return NULL; - va_start(ap, fmt); - vsprintf(p, fmt, ap); - va_end(ap); - return p; + p = kmalloc(len + 1, GFP_KERNEL); + if (!p) + return NULL; + va_start(ap, fmt); + vsprintf(p, fmt, ap); + va_end(ap); + return p; } #if 0 static ssize_t xendev_show_nodename(struct device *dev, char *buf) { - return sprintf(buf, "%s\n", to_xenbus_device(dev)->nodename); + return sprintf(buf, "%s\n", to_xenbus_device(dev)->nodename); } DEVICE_ATTR(nodename, S_IRUSR | S_IRGRP | S_IROTH, xendev_show_nodename, NULL); static ssize_t xendev_show_devtype(struct device *dev, char *buf) { - return sprintf(buf, "%s\n", to_xenbus_device(dev)->devicetype); + return sprintf(buf, "%s\n", to_xenbus_device(dev)->devicetype); } DEVICE_ATTR(devtype, S_IRUSR | S_IRGRP | S_IROTH, xendev_show_devtype, NULL); #endif -static int xenbus_probe_node(struct xen_bus_type *bus, - const char *type, - const char *nodename, - int unit) +static int xenbus_probe_node(struct xen_bus_type *bus, const char *type, + const char *nodename, int unit) { -#define CHECK_FAIL \ +#define CHECK_FAIL \ do { \ if (err) \ goto fail; \ - } \ - while (0) \ + } while (0) \ - int err; - struct xenbus_device *xendev; - struct xenbus_driver *xdrv; - size_t stringlen; - char *tmpstring; + int err; + struct xenbus_device *xendev; + struct xenbus_driver *xdrv; + size_t stringlen; + char *tmpstring; - XenbusState state = xenbus_read_driver_state(nodename); + XenbusState state = xenbus_read_driver_state(nodename); - if (state != XenbusStateInitialising) { - /* Device is not new, so ignore it. This can happen if a - device is going away after switching to Closed. */ - return 0; - } + if (state != XenbusStateInitialising) { + /* Device is not new, so ignore it. This can happen if a + device is going away after switching to Closed. */ + return 0; + } - stringlen = strlen(nodename) + 1 + strlen(type) + 1; - xendev = kmalloc(sizeof(*xendev) + stringlen, GFP_KERNEL); - if (!xendev) - return ENOMEM; - memset(xendev, 0, sizeof(*xendev)); + stringlen = strlen(nodename) + 1 + strlen(type) + 1; + xendev = kmalloc(sizeof(*xendev) + stringlen, GFP_KERNEL); + if (!xendev) + return ENOMEM; + memset(xendev, 0, sizeof(*xendev)); - /* Copy the strings into the extra space. */ + /* Copy the strings into the extra space. */ + + tmpstring = (char *)(xendev + 1); + strcpy(tmpstring, nodename); + xendev->nodename = tmpstring; - tmpstring = (char *)(xendev + 1); - strcpy(tmpstring, nodename); - xendev->nodename = tmpstring; - - tmpstring += strlen(tmpstring) + 1; - strcpy(tmpstring, type); - xendev->devicetype = tmpstring; -/* - * equivalent to device registration - * events - */ - LIST_INSERT_HEAD(bus->bus, xendev, list); - LIST_FOREACH(xdrv, &xendrv_list, list) { - if (streq(xdrv->name, xendev->devicetype)) - xendev->driver = xdrv; - } + tmpstring += strlen(tmpstring) + 1; + strcpy(tmpstring, type); + xendev->devicetype = tmpstring; + /* + * equivalent to device registration + * events + */ + LIST_INSERT_HEAD(bus->bus, xendev, list); + LIST_FOREACH(xdrv, &xendrv_list, list) { + if (streq(xdrv->name, xendev->devicetype)) + xendev->driver = xdrv; + } - if (xendev->driver != NULL) - xenbus_dev_probe(xendev); + if (xendev->driver != NULL) + xenbus_dev_probe(xendev); #if 0 - xendev->dev.parent = &bus->dev; - xendev->dev.bus = &bus->bus; - xendev->dev.release = xenbus_dev_release; + xendev->dev.parent = &bus->dev; + xendev->dev.bus = &bus->bus; + xendev->dev.release = xenbus_dev_release; + + err = bus->get_bus_id(xendev->dev.bus_id, xendev->nodename); + CHECK_FAIL; - err = bus->get_bus_id(xendev->dev.bus_id, xendev->nodename); - CHECK_FAIL; + /* Register with generic device framework. */ + err = device_register(&xendev->dev); + CHECK_FAIL; - /* Register with generic device framework. */ - err = device_register(&xendev->dev); - CHECK_FAIL; - - device_create_file(&xendev->dev, &dev_attr_nodename); - device_create_file(&xendev->dev, &dev_attr_devtype); + device_create_file(&xendev->dev, &dev_attr_nodename); + device_create_file(&xendev->dev, &dev_attr_devtype); #endif - return 0; + return 0; #undef CHECK_FAIL #if 0 fail: - xenbus_dev_free(xendev); + xenbus_dev_free(xendev); #endif - return err; + return err; } /* device// */ static int xenbus_probe_frontend(const char *type, const char *name, int unit) { - char *nodename; - int err; + char *nodename; + int err; + + nodename = kasprintf("%s/%s/%s", xenbus_frontend.root, type, name); + if (!nodename) >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Jan 9 05:29:25 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 470C216A423; Mon, 9 Jan 2006 05:29:25 +0000 (GMT) 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 1A06216A422 for ; Mon, 9 Jan 2006 05:29:25 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 935B143D48 for ; Mon, 9 Jan 2006 05:29:24 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k095TOIb099617 for ; Mon, 9 Jan 2006 05:29:24 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k095TOIt099614 for perforce@freebsd.org; Mon, 9 Jan 2006 05:29:24 GMT (envelope-from kmacy@freebsd.org) Date: Mon, 9 Jan 2006 05:29:24 GMT Message-Id: <200601090529.k095TOIt099614@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 89402 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: Mon, 09 Jan 2006 05:29:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=89402 Change 89402 by kmacy@kmacy:freebsd7_xen3 on 2006/01/09 05:29:16 import suspend support, but keep disabled until the xenbus + newbus integration happens Affected files ... .. //depot/projects/xen3/src/sys/i386-xen/i386-xen/xen_machdep.c#6 edit .. //depot/projects/xen3/src/sys/i386-xen/include/xenvar.h#3 edit Differences ... ==== //depot/projects/xen3/src/sys/i386-xen/i386-xen/xen_machdep.c#6 (text+ko) ==== @@ -55,20 +55,6 @@ #include #include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - #define IDTVEC(name) __CONCAT(X,name) extern inthand_t @@ -609,15 +595,23 @@ howto |= (RB_POWEROFF | RB_HALT); else if (strcmp(str, "halt") == 0) howto |= RB_HALT; -#ifdef notyet else if (strcmp(str, "suspend") == 0) - shutting_down = SHUTDOWN_SUSPEND; -#endif + howto = -1; else { printf("Ignoring shutdown request: %s\n", str); goto done; } - +#ifdef notyet + if (howto == -1) { + do_suspend(NULL); + goto done; + } +#else + if (howto == -1) { + printf("suspend not currently supported\n"); + goto done; + } +#endif uap.opt = howto; reboot(curthread, &uap); done: @@ -639,9 +633,143 @@ SYSINIT(shutdown, SI_SUB_PSEUDO, SI_ORDER_ANY, setup_shutdown_watcher, NULL) +#ifdef notyet + +static void +xen_suspend(void *ignore) +{ + int i, j, k, fpp; + + extern void time_resume(void); + extern unsigned long max_pfn; + extern unsigned long *pfn_to_mfn_frame_list_list; + extern unsigned long *pfn_to_mfn_frame_list[]; + +#ifdef CONFIG_SMP +#error "do_suspend must be run cpu 0 - need to create separate thread" + cpumask_t prev_online_cpus; + int vcpu_prepare(int vcpu); +#endif + + int err = 0; + + PANIC_IF(smp_processor_id() != 0); + +#if defined(CONFIG_SMP) && !defined(CONFIG_HOTPLUG_CPU) + if (num_online_cpus() > 1) { + printk(KERN_WARNING "Can't suspend SMP guests " + "without CONFIG_HOTPLUG_CPU\n"); + return -EOPNOTSUPP; + } +#endif + + xenbus_suspend(); + +#ifdef CONFIG_SMP + lock_cpu_hotplug(); + /* + * Take all other CPUs offline. We hold the hotplug semaphore to + * avoid other processes bringing up CPUs under our feet. + */ + cpus_clear(prev_online_cpus); + while (num_online_cpus() > 1) { + for_each_online_cpu(i) { + if (i == 0) + continue; + unlock_cpu_hotplug(); + err = cpu_down(i); + lock_cpu_hotplug(); + if (err != 0) { + printk(KERN_CRIT "Failed to take all CPUs " + "down: %d.\n", err); + goto out_reenable_cpus; + } + cpu_set(i, prev_online_cpus); + } + } +#endif + + preempt_disable(); + + + __cli(); + preempt_enable(); +#ifdef SMP + unlock_cpu_hotplug(); +#endif + gnttab_suspend(); + + pmap_kremove(HYPERVISOR_shared_info); + + xen_start_info->store_mfn = mfn_to_pfn(xen_start_info->store_mfn); + xen_start_info->console_mfn = mfn_to_pfn(xen_start_info->console_mfn); + + /* + * We'll stop somewhere inside this hypercall. When it returns, + * we'll start resuming after the restore. + */ + HYPERVISOR_suspend(VTOMFN(xen_start_info)); + + pmap_kenter_ma(HYPERVISOR_shared_info, xen_start_info->shared_info); + set_fixmap(FIX_SHARED_INFO, xen_start_info->shared_info); + +#if 0 + memset(empty_zero_page, 0, PAGE_SIZE); +#endif + HYPERVISOR_shared_info->arch.pfn_to_mfn_frame_list_list = + VTOMFN(pfn_to_mfn_frame_list_list); + + fpp = PAGE_SIZE/sizeof(unsigned long); + for (i = 0, j = 0, k = -1; i < max_pfn; i += fpp, j++) { + if ((j % fpp) == 0) { + k++; + pfn_to_mfn_frame_list_list[k] = + VTOMFN(pfn_to_mfn_frame_list[k]); + j = 0; + } + pfn_to_mfn_frame_list[k][j] = + VTOMFN(&phys_to_machine_mapping[i]); + } + HYPERVISOR_shared_info->arch.max_pfn = max_pfn; + gnttab_resume(); + irq_resume(); + + time_resume(); + + __sti(); + xencons_resume(); + +#ifdef CONFIG_SMP + for_each_cpu(i) + vcpu_prepare(i); + +#endif + + /* + * Only resume xenbus /after/ we've prepared our VCPUs; otherwise + * the VCPU hotplug callback can race with our vcpu_prepare + */ + xenbus_resume(); + +#ifdef CONFIG_SMP + out_reenable_cpus: + for_each_cpu_mask(i, prev_online_cpus) { + j = cpu_up(i); + if ((j != 0) && !cpu_online(i)) { + printk(KERN_CRIT "Failed to bring cpu " + "%d back up (%d).\n", + i, j); + err = j; + } + } +#endif + return err; +} + +#endif /********** CODE WORTH KEEPING ABOVE HERE *****************/ void xen_failsafe_handler(void); ==== //depot/projects/xen3/src/sys/i386-xen/include/xenvar.h#3 (text+ko) ==== @@ -18,6 +18,7 @@ extern unsigned long *xen_machine_phys; #define PFNTOMFN(i) (((unsigned long *)xen_phys_machine)[i]) #define MFNTOPFN(i) (xen_machine_phys[i]) +#define VTOMFN(va) (vtomach(va) >> PAGE_SHIFT) #define phystomach(pa) ((((unsigned long *)xen_phys_machine)[(pa >> PAGE_SHIFT)]) << PAGE_SHIFT) void xpq_init(void); From owner-p4-projects@FreeBSD.ORG Mon Jan 9 08:40:20 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 8387116A423; Mon, 9 Jan 2006 08:40:20 +0000 (GMT) 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 575F316A420 for ; Mon, 9 Jan 2006 08:40:20 +0000 (GMT) (envelope-from gnn@neville-neil.com) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E972643D46 for ; Mon, 9 Jan 2006 08:40:19 +0000 (GMT) (envelope-from gnn@neville-neil.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k098eJJB011575 for ; Mon, 9 Jan 2006 08:40:19 GMT (envelope-from gnn@neville-neil.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k098eJ35011572 for perforce@freebsd.org; Mon, 9 Jan 2006 08:40:19 GMT (envelope-from gnn@neville-neil.com) Date: Mon, 9 Jan 2006 08:40:19 GMT Message-Id: <200601090840.k098eJ35011572@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to gnn@neville-neil.com using -f From: "George V. Neville-Neil" To: Perforce Change Reviews Cc: Subject: PERFORCE change 89406 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: Mon, 09 Jan 2006 08:40:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=89406 Change 89406 by gnn@gnn_laptop_fast_ipsec on 2006/01/09 08:39:19 An initial restructuring of data-structures to break the PF_KEY/keydb dependency. Affected files ... .. //depot/projects/fast_ipsec/src/sys/netipsec/keydb.h#2 edit Differences ... ==== //depot/projects/fast_ipsec/src/sys/netipsec/keydb.h#2 (text+ko) ==== @@ -60,14 +60,40 @@ /* see IPSEC_MANUAL_REQID_MAX. */ }; +/* As part of decoupling the kernel implementation from the key socket + * messaging system we define three structures that are present in the + * messaging system, but put them privately in the kernel and remove + * the bits that are necessary when building packets, like the length, + * type and reserved entries in the structs. + */ + +/* The secident structure parallels the sadb_ident structure. */ +struct secident { + u_int16_t type; + u_int64_t id; +}; + +/* A security key which parallels sadb_key. */ +struct seckey { + u_int16_t bits; +}; + +/* A lifetime structure which parallels sadb_lifetime. */ +struct seclifetime { + u_int32_t allocations; + u_int64_t bytes; + u_int64_t addtime; + u_int64_t usetime; +}; + /* Security Association Data Base */ struct secashead { LIST_ENTRY(secashead) chain; struct secasindex saidx; - struct sadb_ident *idents; /* source identity */ - struct sadb_ident *identd; /* destination identity */ + struct secasident *idents; /* source identity */ + struct secasident *identd; /* destination identity */ /* XXX I don't know how to use them. */ u_int8_t state; /* MATURE or DEAD. */ @@ -97,8 +123,8 @@ u_int32_t spi; /* SPI Value, network byte order */ u_int32_t flags; /* holder for SADB_KEY_FLAGS */ - struct sadb_key *key_auth; /* Key for Authentication */ - struct sadb_key *key_enc; /* Key for Encryption */ + struct seckey *key_auth; /* Key for Authentication */ + struct seckey *key_enc; /* Key for Encryption */ caddr_t iv; /* Initilization Vector */ u_int ivlen; /* length of IV */ void *sched; /* intermediate encryption key */ @@ -107,9 +133,9 @@ struct secreplay *replay; /* replay prevention */ time_t created; /* for lifetime */ - struct sadb_lifetime *lft_c; /* CURRENT lifetime, it's constant. */ - struct sadb_lifetime *lft_h; /* HARD lifetime */ - struct sadb_lifetime *lft_s; /* SOFT lifetime */ + struct seclifetime *lft_c; /* CURRENT lifetime, it's constant. */ + struct seclifetime *lft_h; /* HARD lifetime */ + struct seclifetime *lft_s; /* SOFT lifetime */ u_int32_t seq; /* sequence number */ pid_t pid; /* message's pid */ From owner-p4-projects@FreeBSD.ORG Mon Jan 9 19:54:53 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 6918A16A480; Mon, 9 Jan 2006 19:54:50 +0000 (GMT) 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 DE46716A43E for ; Mon, 9 Jan 2006 19:54:49 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E89CC43D7F for ; Mon, 9 Jan 2006 19:54:46 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k09JseMv064359 for ; Mon, 9 Jan 2006 19:54:40 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k09Jsejq064356 for perforce@freebsd.org; Mon, 9 Jan 2006 19:54:40 GMT (envelope-from csjp@freebsd.org) Date: Mon, 9 Jan 2006 19:54:40 GMT Message-Id: <200601091954.k09Jsejq064356@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 89430 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: Mon, 09 Jan 2006 19:54:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=89430 Change 89430 by csjp@csjp_xor on 2006/01/09 19:53:39 Add another MAC entry point: mac_associate_nfsd_label. This entry point will be utilized by the NFS code to create proper subject labels for the NFS related operations. For example, NFS operations which result in a file being created will cause files to be created with proper labels, if this entry point is defined by the security policy. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_vfs.c#17 edit .. //depot/projects/trustedbsd/mac/sys/sys/mac.h#283 edit .. //depot/projects/trustedbsd/mac/sys/sys/mac_policy.h#240 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_vfs.c#17 (text+ko) ==== @@ -1029,3 +1029,10 @@ return (0); } + +void +mac_associate_nfsd_label(struct ucred *cred) +{ + + MAC_PERFORM(associate_nfsd_label, cred); +} ==== //depot/projects/trustedbsd/mac/sys/sys/mac.h#283 (text+ko) ==== @@ -483,6 +483,7 @@ int mac_pipe_label_set(struct ucred *cred, struct pipepair *pp, struct label *label); void mac_cred_mmapped_drop_perms(struct thread *td, struct ucred *cred); +void mac_associate_nfsd_label(struct ucred *cred); /* * Calls to help various file systems implement labeling functionality ==== //depot/projects/trustedbsd/mac/sys/sys/mac_policy.h#240 (text+ko) ==== @@ -606,6 +606,7 @@ int (*mpo_check_vnode_write)(struct ucred *active_cred, struct ucred *file_cred, struct vnode *vp, struct label *label); + void (*mpo_associate_nfsd_label)(struct ucred *cred); }; /* From owner-p4-projects@FreeBSD.ORG Mon Jan 9 19:56:47 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 19AA616A420; Mon, 9 Jan 2006 19:56:47 +0000 (GMT) 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 D149116A422 for ; Mon, 9 Jan 2006 19:56:46 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AD51943D6D for ; Mon, 9 Jan 2006 19:56:43 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k09Juhvp064518 for ; Mon, 9 Jan 2006 19:56:43 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k09JuhqE064515 for perforce@freebsd.org; Mon, 9 Jan 2006 19:56:43 GMT (envelope-from csjp@freebsd.org) Date: Mon, 9 Jan 2006 19:56:43 GMT Message-Id: <200601091956.k09JuhqE064515@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 89431 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: Mon, 09 Jan 2006 19:56:47 -0000 http://perforce.freebsd.org/chv.cgi?CH=89431 Change 89431 by csjp@csjp_xor on 2006/01/09 19:55:45 Teach NFS code about the mac_associate_nfsd_label. This entry point will get executed while setting up the ucred for NFS related operations. Affected files ... .. //depot/projects/trustedbsd/mac/sys/nfsserver/nfs_srvsock.c#22 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/nfsserver/nfs_srvsock.c#22 (text+ko) ==== @@ -39,10 +39,13 @@ * Socket operations for use by nfs */ +#include "opt_mac.h" + #include #include #include #include +#include #include #include #include @@ -362,6 +365,9 @@ } nfsm_adv(nfsm_rndup(len)); tl = nfsm_dissect_nonblock(u_int32_t *, 3 * NFSX_UNSIGNED); +#ifdef MAC + mac_associate_nfsd_label(nd->nd_cr); +#endif nd->nd_cr->cr_uid = nd->nd_cr->cr_ruid = nd->nd_cr->cr_svuid = fxdr_unsigned(uid_t, *tl++); nd->nd_cr->cr_groups[0] = nd->nd_cr->cr_rgid = From owner-p4-projects@FreeBSD.ORG Mon Jan 9 20:01:53 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 F267716A422; Mon, 9 Jan 2006 20:01:52 +0000 (GMT) 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 CB66216A41F for ; Mon, 9 Jan 2006 20:01:52 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8355C43D48 for ; Mon, 9 Jan 2006 20:01:50 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k09K1o7b064793 for ; Mon, 9 Jan 2006 20:01:50 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k09K1oBa064790 for perforce@freebsd.org; Mon, 9 Jan 2006 20:01:50 GMT (envelope-from csjp@freebsd.org) Date: Mon, 9 Jan 2006 20:01:50 GMT Message-Id: <200601092001.k09K1oBa064790@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 89432 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: Mon, 09 Jan 2006 20:01:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=89432 Change 89432 by csjp@csjp_xor on 2006/01/09 20:01:34 Now that we have support for labeling in NFS, teach the BIBA policy about it. For now, the NFSD label will be set to biba/high(low-high). This is going to change, however. We need to think about what makes the most sense. Should the label be inherited from the NFSD process which makes the nfssvc() call? Should it come from the network interface the NFS request was recieved on? We need to give this some thought. It should be noted that this fixed a panic which occurs when files are created through NFS. This happpend because the object label was not properly initialized. So this effectively un-breaks BIBA+NFS We will need to do something similar for other labeled security policies, too. Hopefully I have the time to do this. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac_biba/mac_biba.c#259 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac_biba/mac_biba.c#259 (text+ko) ==== @@ -49,6 +49,7 @@ #include #include #include +#include #include #include #include @@ -3083,6 +3084,17 @@ return (0); } +static void +mac_biba_associate_nfsd_label(struct ucred *cred) +{ + struct mac_biba *label; + + label = SLOT(cred->cr_label); + mac_biba_set_effective(label, MAC_BIBA_TYPE_HIGH, 0, NULL); + mac_biba_set_range(label, MAC_BIBA_TYPE_LOW, 0, NULL, + MAC_BIBA_TYPE_HIGH, 0, NULL); +} + static struct mac_policy_ops mac_biba_ops = { .mpo_init = mac_biba_init, @@ -3262,6 +3274,7 @@ .mpo_check_vnode_setutimes = mac_biba_check_vnode_setutimes, .mpo_check_vnode_stat = mac_biba_check_vnode_stat, .mpo_check_vnode_write = mac_biba_check_vnode_write, + .mpo_associate_nfsd_label = mac_biba_associate_nfsd_label, }; MAC_POLICY_SET(&mac_biba_ops, mac_biba, "TrustedBSD MAC/Biba", From owner-p4-projects@FreeBSD.ORG Mon Jan 9 20:07:03 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 711C116A423; Mon, 9 Jan 2006 20:07:02 +0000 (GMT) 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 4738F16A420 for ; Mon, 9 Jan 2006 20:07:02 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C131443D48 for ; Mon, 9 Jan 2006 20:07:01 +0000 (GMT) (envelope-from csjp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k09K71rK065042 for ; Mon, 9 Jan 2006 20:07:01 GMT (envelope-from csjp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k09K717M065039 for perforce@freebsd.org; Mon, 9 Jan 2006 20:07:01 GMT (envelope-from csjp@freebsd.org) Date: Mon, 9 Jan 2006 20:07:01 GMT Message-Id: <200601092007.k09K717M065039@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to csjp@freebsd.org using -f From: "Christian S.J. Peron" To: Perforce Change Reviews Cc: Subject: PERFORCE change 89433 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: Mon, 09 Jan 2006 20:07:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=89433 Change 89433 by csjp@csjp_xor on 2006/01/09 20:06:01 Remove the include for namei.h. This was added because a older, local version of the NFS labeling code passed a different argument to the entry point. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac_biba/mac_biba.c#260 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac_biba/mac_biba.c#260 (text+ko) ==== @@ -49,7 +49,6 @@ #include #include #include -#include #include #include #include From owner-p4-projects@FreeBSD.ORG Wed Jan 11 03:47:42 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 8A51216A422; Wed, 11 Jan 2006 03:47:41 +0000 (GMT) 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 2AC9D16A420 for ; Wed, 11 Jan 2006 03:47:41 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AC03D43D46 for ; Wed, 11 Jan 2006 03:47:40 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0B3lecx025062 for ; Wed, 11 Jan 2006 03:47:40 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0B3le2N025056 for perforce@freebsd.org; Wed, 11 Jan 2006 03:47:40 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 11 Jan 2006 03:47:40 GMT Message-Id: <200601110347.k0B3le2N025056@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 89485 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: Wed, 11 Jan 2006 03:47:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=89485 Change 89485 by kmacy@kmacy:freebsd7_xen3 on 2006/01/11 03:47:18 add dom0 io apic support determination of ioapic_read / ioapic_write functions is made at runtime Affected files ... .. //depot/projects/xen3/src/sys/i386-xen/conf/XENCONF#2 edit .. //depot/projects/xen3/src/sys/i386-xen/i386-xen/io_apic.c#1 add .. //depot/projects/xen3/src/sys/i386-xen/i386-xen/machdep.c#5 edit .. //depot/projects/xen3/src/sys/i386/i386/io_apic.c#3 edit .. //depot/projects/xen3/src/sys/i386/i386/machdep.c#2 edit .. //depot/projects/xen3/src/sys/i386/i386/mptable.c#2 edit Differences ... ==== //depot/projects/xen3/src/sys/i386-xen/conf/XENCONF#2 (text+ko) ==== @@ -63,7 +63,7 @@ # To make an SMP kernel, the next two are needed #options SMP # Symmetric MultiProcessor Kernel -#device apic # I/O APIC +device apic # I/O APIC # SCSI peripherals device scbus # SCSI bus (required for SCSI) @@ -75,16 +75,16 @@ #device ses # SCSI Environmental Services (and SAF-TE) # atkbdc0 controls both the keyboard and the PS/2 mouse -#device atkbdc # AT keyboard controller -#device atkbd # AT keyboard -#device psm # PS/2 mouse +device atkbdc # AT keyboard controller +device atkbd # AT keyboard +device psm # PS/2 mouse -# device vga # VGA video card driver +device vga # VGA video card driver #device splash # Splash screen and screen saver support # syscons is the default console driver, resembling an SCO console -#device sc +device sc # Enable this for the pcvt (VT220 compatible) console driver #device vt ==== //depot/projects/xen3/src/sys/i386-xen/i386-xen/machdep.c#5 (text+ko) ==== @@ -158,6 +158,7 @@ extern trap_info_t trap_table[]; struct proc_ldt default_proc_ldt; extern int init_first; +int running_xen = 1; #endif /* Sanity check for __curthread() */ ==== //depot/projects/xen3/src/sys/i386/i386/io_apic.c#3 (text+ko) ==== @@ -67,19 +67,6 @@ static MALLOC_DEFINE(M_IOAPIC, "io_apic", "I/O APIC structures"); - - -#ifdef XEN_PHYSDEV_ACCESS -#include -#include - -/* - * XXX determine how apic index maps to ioapic_t - * - */ - - -#endif /* * I/O APIC interrupt source driver. Each pin is assigned an IRQ cookie * as laid out in the ACPI System Interrupt number model where each I/O @@ -117,8 +104,16 @@ struct ioapic_intsrc io_pins[0]; }; -static u_int ioapic_read(volatile ioapic_t *apic, int reg); -static void ioapic_write(volatile ioapic_t *apic, int reg, u_int val); +struct ioapic_access { + u_int (*apic_read)(struct ioapic *apic, int reg); + void (*apic_write)(struct ioapic *apic, int reg, u_int val); +}; + + +static u_int ioapic_read(struct ioapic *apic, int reg); +static void ioapic_write(struct ioapic *apic, int reg, u_int val); +static u_int xen_ioapic_read(struct ioapic *apic, int reg); +static void xen_ioapic_write(struct ioapic *apic, int reg, u_int val); static const char *ioapic_bus_string(int bus_type); static void ioapic_print_irq(struct ioapic_intsrc *intpin); static void ioapic_enable_source(struct intsrc *isrc); @@ -140,7 +135,13 @@ ioapic_vector, ioapic_source_pending, ioapic_suspend, ioapic_resume, ioapic_config_intr }; - +#ifdef XEN +#include +#endif +static struct ioapic_access access; +extern int running_xen; + + static int bsp_id, current_cluster, logical_clusters, next_ioapic_base; static u_int next_id, program_logical_dest; @@ -156,55 +157,23 @@ lapic_eoi(); } -#ifdef XEN -static inline unsigned int -xen_ioapic_read(unsigned int apic, unsigned int reg) -{ - physdev_op_t op; - int ret; - - op.cmd = PHYSDEVOP_APIC_READ; - op.u.apic_op.apic = mp_ioapics[apic].mpc_apicid; - op.u.apic_op.offset = reg; - ret = HYPERVISOR_physdev_op(&op); - if (ret) - return ret; - return op.u.apic_op.value; -} - -static inline void xen_io_apic_write(unsigned int apic, unsigned int reg, unsigned int value) -{ - physdev_op_t op; - - op.cmd = PHYSDEVOP_APIC_WRITE; - op.u.apic_op.apic = mp_ioapics[apic].mpc_apicid; - op.u.apic_op.offset = reg; - op.u.apic_op.value = value; - HYPERVISOR_physdev_op(&op); -} - -#define ioapic_read(a,r) xen_ioapic_read(a,r) -#define ioapic_write(a,r,v) xen_ioapic_write(a,r,v) - -#else static u_int -ioapic_read(volatile ioapic_t *apic, int reg) +ioapic_read(struct ioapic *io, int reg) { mtx_assert(&icu_lock, MA_OWNED); - apic->ioregsel = reg; - return (apic->iowin); + io->io_addr->ioregsel = reg; + return (io->io_addr->iowin); } static void -ioapic_write(volatile ioapic_t *apic, int reg, u_int val) +ioapic_write(struct ioapic *io, int reg, u_int val) { mtx_assert(&icu_lock, MA_OWNED); - apic->ioregsel = reg; - apic->iowin = val; + io->io_addr->ioregsel = reg; + io->io_addr->iowin = val; } -#endif static const char * ioapic_bus_string(int bus_type) @@ -254,10 +223,10 @@ mtx_lock_spin(&icu_lock); if (intpin->io_masked) { - flags = ioapic_read(io->io_addr, + flags = access.apic_read(io, IOAPIC_REDTBL_LO(intpin->io_intpin)); flags &= ~(IOART_INTMASK); - ioapic_write(io->io_addr, IOAPIC_REDTBL_LO(intpin->io_intpin), + access.apic_write(io, IOAPIC_REDTBL_LO(intpin->io_intpin), flags); intpin->io_masked = 0; } @@ -273,10 +242,10 @@ mtx_lock_spin(&icu_lock); if (!intpin->io_masked && !intpin->io_edgetrigger) { - flags = ioapic_read(io->io_addr, + flags = access.apic_read(io, IOAPIC_REDTBL_LO(intpin->io_intpin)); flags |= IOART_INTMSET; - ioapic_write(io->io_addr, IOAPIC_REDTBL_LO(intpin->io_intpin), + access.apic_write(io, IOAPIC_REDTBL_LO(intpin->io_intpin), flags); intpin->io_masked = 1; } @@ -311,10 +280,10 @@ if (intpin->io_irq == IRQ_DISABLED || (intpin->io_irq < NUM_IO_INTS && intpin->io_vector == 0)) { mtx_lock_spin(&icu_lock); - low = ioapic_read(io->io_addr, + low = access.apic_read(io, IOAPIC_REDTBL_LO(intpin->io_intpin)); if ((low & IOART_INTMASK) == IOART_INTMCLR) - ioapic_write(io->io_addr, + access.apic_write(io, IOAPIC_REDTBL_LO(intpin->io_intpin), low | IOART_INTMSET); mtx_unlock_spin(&icu_lock); @@ -366,11 +335,11 @@ /* Write the values to the APIC. */ mtx_lock_spin(&icu_lock); - ioapic_write(io->io_addr, IOAPIC_REDTBL_LO(intpin->io_intpin), low); - value = ioapic_read(io->io_addr, IOAPIC_REDTBL_HI(intpin->io_intpin)); + access.apic_write(io, IOAPIC_REDTBL_LO(intpin->io_intpin), low); + value = access.apic_read(io, IOAPIC_REDTBL_HI(intpin->io_intpin)); value &= ~IOART_DEST; value |= high; - ioapic_write(io->io_addr, IOAPIC_REDTBL_HI(intpin->io_intpin), value); + access.apic_write(io, IOAPIC_REDTBL_HI(intpin->io_intpin), value); mtx_unlock_spin(&icu_lock); } @@ -539,34 +508,42 @@ void * ioapic_create(uintptr_t addr, int32_t apic_id, int intbase) { - struct ioapic *io; + struct ioapic *io, tio; struct ioapic_intsrc *intpin; - volatile ioapic_t *apic; u_int numintr, i; uint32_t value; + io = &tio; + /* XXX should xen just ignore this? */ /* Map the register window so we can access the device. */ - apic = (ioapic_t *)pmap_mapdev(addr, IOAPIC_MEM_REGION); + io->io_addr = (ioapic_t *)pmap_mapdev(addr, IOAPIC_MEM_REGION); + + /* set the nominal apic_id for the initial read */ + io->io_apic_id = apic_id; + mtx_lock_spin(&icu_lock); - value = ioapic_read(apic, IOAPIC_VER); + /* fetch the APIC id in case we're running under xen */ + io->io_apic_id = access.apic_read(io, IOAPIC_ID) >> APIC_ID_SHIFT; + value = access.apic_read(io, IOAPIC_VER); mtx_unlock_spin(&icu_lock); /* If it's version register doesn't seem to work, punt. */ if (value == 0xffffffff) { - pmap_unmapdev((vm_offset_t)apic, IOAPIC_MEM_REGION); + pmap_unmapdev((vm_offset_t)io->io_addr, IOAPIC_MEM_REGION); + free(io, M_IOAPIC); return (NULL); } - /* Determine the number of vectors and set the APIC ID. */ numintr = ((value & IOART_VER_MAXREDIR) >> MAXREDIRSHIFT) + 1; io = malloc(sizeof(struct ioapic) + numintr * sizeof(struct ioapic_intsrc), M_IOAPIC, M_WAITOK); io->io_pic = ioapic_template; + io->io_addr = tio.io_addr; mtx_lock_spin(&icu_lock); io->io_id = next_id++; - io->io_apic_id = ioapic_read(apic, IOAPIC_ID) >> APIC_ID_SHIFT; + /* XXX not sure how xen feels about apic id re-mapping */ if (apic_id != -1 && io->io_apic_id != apic_id) { - ioapic_write(apic, IOAPIC_ID, apic_id << APIC_ID_SHIFT); + access.apic_write(io, IOAPIC_ID, apic_id << APIC_ID_SHIFT); mtx_unlock_spin(&icu_lock); io->io_apic_id = apic_id; printf("ioapic%u: Changing APIC ID to %d\n", io->io_id, @@ -583,7 +560,6 @@ io->io_intbase = intbase; next_ioapic_base = intbase + numintr; io->io_numintr = numintr; - io->io_addr = apic; /* * Initialize pins. Start off with interrupts disabled. Default @@ -629,8 +605,8 @@ "edge" : "level", intpin->io_activehi ? "high" : "low"); } - value = ioapic_read(apic, IOAPIC_REDTBL_LO(i)); - ioapic_write(apic, IOAPIC_REDTBL_LO(i), value | IOART_INTMSET); + value = access.apic_read(io, IOAPIC_REDTBL_LO(i)); + access.apic_write(io, IOAPIC_REDTBL_LO(i), value | IOART_INTMSET); } mtx_unlock_spin(&icu_lock); @@ -814,14 +790,12 @@ { struct ioapic_intsrc *pin; struct ioapic *io; - volatile ioapic_t *apic; uint32_t flags; int i; io = (struct ioapic *)cookie; - apic = io->io_addr; mtx_lock_spin(&icu_lock); - flags = ioapic_read(apic, IOAPIC_VER) & IOART_VER_VERSION; + flags = access.apic_read(io, IOAPIC_VER) & IOART_VER_VERSION; STAILQ_INSERT_TAIL(&ioapic_list, io, io_next); mtx_unlock_spin(&icu_lock); printf("ioapic%u irqs %u-%u on motherboard\n", @@ -844,7 +818,7 @@ { struct ioapic *io; int i; - + program_logical_dest = 1; STAILQ_FOREACH(io, &ioapic_list, io_next) for (i = 0; i < io->io_numintr; i++) @@ -853,3 +827,18 @@ } SYSINIT(ioapic_destinations, SI_SUB_SMP, SI_ORDER_SECOND, ioapic_set_logical_destinations, NULL) + + +static void +ioapic_init_access(void *arg __unused) +{ + if (running_xen) { + access.apic_read = xen_ioapic_read; + access.apic_write = xen_ioapic_write; + } else { + access.apic_read = ioapic_read; + access.apic_write = ioapic_write; + } +} +SYSINIT(ioapic_access, SI_SUB_CONFIGURE, SI_ORDER_FIRST, + ioapic_init_access, NULL) ==== //depot/projects/xen3/src/sys/i386/i386/machdep.c#2 (text+ko) ==== @@ -177,6 +177,7 @@ u_int basemem; int cold = 1; +int running_xen = 0; #ifdef COMPAT_43 static void osendsig(sig_t catcher, ksiginfo_t *, sigset_t *mask); ==== //depot/projects/xen3/src/sys/i386/i386/mptable.c#2 (text+ko) ==== @@ -146,6 +146,7 @@ static bus_datum *busses; static int mptable_nioapics, mptable_nbusses, mptable_maxbusid; static int pci0 = -1; +extern int running_xen; static MALLOC_DEFINE(M_MPTABLE, "mptable", "MP Table Items"); @@ -227,6 +228,10 @@ u_long segment; u_int32_t target; + /* ignore SMP support for now */ + if (running_xen) + return (ENXIO); + /* see if EBDA exists */ if ((segment = (u_long) * (u_short *) (KERNBASE + 0x40e)) != 0) { /* search first 1K of EBDA */ From owner-p4-projects@FreeBSD.ORG Wed Jan 11 03:48:43 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 EDC0E16A422; Wed, 11 Jan 2006 03:48:42 +0000 (GMT) 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 C751816A41F for ; Wed, 11 Jan 2006 03:48:42 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9323643D46 for ; Wed, 11 Jan 2006 03:48:42 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0B3mga5025101 for ; Wed, 11 Jan 2006 03:48:42 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0B3mgSt025098 for perforce@freebsd.org; Wed, 11 Jan 2006 03:48:42 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 11 Jan 2006 03:48:42 GMT Message-Id: <200601110348.k0B3mgSt025098@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 89486 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: Wed, 11 Jan 2006 03:48:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=89486 Change 89486 by kmacy@kmacy:freebsd7_xen3 on 2006/01/11 03:48:26 make sure that kernel does not try to allocate KVA in xen's space Affected files ... .. //depot/projects/xen3/src/sys/i386-xen/include/pmap.h#2 edit Differences ... ==== //depot/projects/xen3/src/sys/i386-xen/include/pmap.h#2 (text+ko) ==== @@ -91,6 +91,8 @@ #endif #endif +#define XEN_PAGES 16 + /* * Pte related macros */ @@ -106,9 +108,9 @@ #endif #ifndef NKPDE #ifdef SMP -#define NKPDE (KVA_PAGES - 1) /* number of page tables/pde's */ +#define NKPDE (KVA_PAGES - 1 - XEN_PAGES) /* number of page tables/pde's */ #else -#define NKPDE (KVA_PAGES) /* number of page tables/pde's */ +#define NKPDE (KVA_PAGES - XEN_PAGES) /* number of page tables/pde's */ #endif #endif @@ -121,10 +123,10 @@ * SMP_PRIVPAGES: The per-cpu address space is 0xff80000 -> 0xffbfffff */ #ifdef SMP -#define MPPTDI (NPDEPTD-1) /* per cpu ptd entry */ +#define MPPTDI (NPDEPTD-1 - XEN_PAGES) /* per cpu ptd entry */ #define KPTDI (MPPTDI-NKPDE) /* start of kernel virtual pde's */ #else -#define KPTDI (NPDEPTD-NKPDE)/* start of kernel virtual pde's */ +#define KPTDI (NPDEPTD-NKPDE-XEN_PAGES)/* start of kernel virtual pde's */ #endif /* SMP */ #define PTDPTDI (KPTDI-NPGPTD) /* ptd entry that points to ptd! */ From owner-p4-projects@FreeBSD.ORG Wed Jan 11 07:11: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 4593816A422; Wed, 11 Jan 2006 07:11:52 +0000 (GMT) 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 F34D216A41F for ; Wed, 11 Jan 2006 07:11:51 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BD0B943D48 for ; Wed, 11 Jan 2006 07:11:51 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0B7Bpeo051267 for ; Wed, 11 Jan 2006 07:11:51 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0B7BpLH051264 for perforce@freebsd.org; Wed, 11 Jan 2006 07:11:51 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 11 Jan 2006 07:11:51 GMT Message-Id: <200601110711.k0B7BpLH051264@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 89493 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: Wed, 11 Jan 2006 07:11:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=89493 Change 89493 by kmacy@kmacy:freebsd7_xen3 on 2006/01/11 07:11:09 change control flow in segment setting slightly to remove some ifdefs Affected files ... .. //depot/projects/xen3/src/sys/i386/i386/sys_machdep.c#3 edit Differences ... ==== //depot/projects/xen3/src/sys/i386/i386/sys_machdep.c#3 (text+ko) ==== @@ -170,11 +170,8 @@ */ sd.sd_lobase = base & 0xffffff; sd.sd_hibase = (base >> 24) & 0xff; -#ifndef XEN + sd.sd_lolimit = 0xffff; /* 4GB limit, wraps around */ -#else - sd.sd_lolimit = 0x0; /* 4GB limit, wraps around */ -#endif sd.sd_hilimit = 0xf; sd.sd_type = SDT_MEMRWA; sd.sd_dpl = SEL_UPL; @@ -183,12 +180,14 @@ sd.sd_def32 = 1; sd.sd_gran = 1; critical_enter(); - td->td_pcb->pcb_fsd = sd; #ifndef XEN PCPU_GET(fsgs_gdt)[0] = sd; #else - HYPERVISOR_update_descriptor(vtomach(&PCPU_GET(fsgs_gdt)[1]), *(uint64_t *)&sd); + sd.sd_lolimit = 0x0; /* < 4GB limit */ + HYPERVISOR_update_descriptor(vtomach(&PCPU_GET(fsgs_gdt)[1]), + *(uint64_t *)&sd); #endif + td->td_pcb->pcb_fsd = sd; critical_exit(); td->td_frame->tf_fs = GSEL(GUFS_SEL, SEL_UPL); } @@ -208,11 +207,8 @@ */ sd.sd_lobase = base & 0xffffff; sd.sd_hibase = (base >> 24) & 0xff; -#ifndef XEN + sd.sd_lolimit = 0xffff; /* 4GB limit, wraps around */ -#else - sd.sd_lolimit = 0x0; /* 4GB limit, wraps around */ -#endif sd.sd_hilimit = 0xf; sd.sd_type = SDT_MEMRWA; sd.sd_dpl = SEL_UPL; @@ -221,12 +217,14 @@ sd.sd_def32 = 1; sd.sd_gran = 1; critical_enter(); - td->td_pcb->pcb_gsd = sd; #ifndef XEN PCPU_GET(fsgs_gdt)[1] = sd; #else - HYPERVISOR_update_descriptor(vtomach(&PCPU_GET(fsgs_gdt)[1]), *(uint64_t *)&sd); + sd.sd_lolimit = 0x0; /* 4GB limit, wraps around */ + HYPERVISOR_update_descriptor(vtomach(&PCPU_GET(fsgs_gdt)[1]), + *(uint64_t *)&sd); #endif + td->td_pcb->pcb_gsd = sd; critical_exit(); load_gs(GSEL(GUGS_SEL, SEL_UPL)); } From owner-p4-projects@FreeBSD.ORG Wed Jan 11 07:12:55 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 784B916A422; Wed, 11 Jan 2006 07:12:54 +0000 (GMT) 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 3ED7C16A41F for ; Wed, 11 Jan 2006 07:12:54 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 809DD43D48 for ; Wed, 11 Jan 2006 07:12:53 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0B7CrsW051346 for ; Wed, 11 Jan 2006 07:12:53 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0B7CrA3051343 for perforce@freebsd.org; Wed, 11 Jan 2006 07:12:53 GMT (envelope-from kmacy@freebsd.org) Date: Wed, 11 Jan 2006 07:12:53 GMT Message-Id: <200601110712.k0B7CrA3051343@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 89494 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: Wed, 11 Jan 2006 07:12:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=89494 Change 89494 by kmacy@kmacy:freebsd7_xen3 on 2006/01/11 07:12:28 re-enable i686_mem.c initialize phys_avail from xen maps in machdep.c Affected files ... .. //depot/projects/xen3/src/sys/i386-xen/i386-xen/machdep.c#6 edit .. //depot/projects/xen3/src/sys/i386/i386/i686_mem.c#3 edit Differences ... ==== //depot/projects/xen3/src/sys/i386-xen/i386-xen/machdep.c#6 (text+ko) ==== @@ -1718,12 +1718,19 @@ if (map[i].end > 0x100000000ULL) continue; + /* XXXEN need to handle reserved */ + phys_avail[2*i] = map[i].start; + phys_avail[2*i + 1] = map[i].end; + PANIC_IF(i*2 >= PHYSMAP_SIZE); + +#if 0 res = bootmem_alloc(sizeof(struct resource)); res->name = map[i].is_ram ? "System RAM" : "reserved"; res->start = map[i].start; res->end = map[i].end - 1; res->flags = IORESOURCE_MEM | IORESOURCE_BUSY; request_resource(&iomem_resource, res); +#endif } bootmem_free(map, PAGE_SIZE); @@ -1736,12 +1743,13 @@ * like " + (gapsize >> 3)" in there too?). We now have the * technology. */ +#ifdef notyet pci_mem_start = (gapstart + 0xfffff) & ~0xfffff; printk("Allocating PCI resources starting at %08lx (gap: %08lx:%08lx)\n", pci_mem_start, gapstart, gapsize); +#endif - #elif defined(XEN) Maxmem = xen_start_info->nr_pages - init_first; pmap_bootstrap((init_first << PAGE_SHIFT), 0); @@ -1749,6 +1757,7 @@ phys_avail[i] = 0; physmem = Maxmem; avail_end = ptoa(Maxmem) - round_page(MSGBUF_SIZE); + basemem = 0; phys_avail[0] = init_first << PAGE_SHIFT; phys_avail[1] = avail_end; return; ==== //depot/projects/xen3/src/sys/i386/i386/i686_mem.c#3 (text+ko) ==== @@ -609,16 +609,12 @@ i686_mem_drvinit(void *unused) { /* Try for i686 MTRRs */ -#ifndef XEN if (!mtrrs_disabled && (cpu_feature & CPUID_MTRR) && ((cpu_id & 0xf00) == 0x600 || (cpu_id & 0xf00) == 0xf00) && ((strcmp(cpu_vendor, "GenuineIntel") == 0) || (strcmp(cpu_vendor, "AuthenticAMD") == 0))) { mem_range_softc.mr_op = &i686_mrops; } -#else - i686_mrops.init = NULL; /* XXX make "defined but not used" warning go away */ -#endif } SYSINIT(i686memdev,SI_SUB_DRIVERS,SI_ORDER_FIRST,i686_mem_drvinit,NULL) From owner-p4-projects@FreeBSD.ORG Wed Jan 11 07:42:41 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 2B00E16A422; Wed, 11 Jan 2006 07:42:41 +0000 (GMT) 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 B45EF16A420 for ; Wed, 11 Jan 2006 07:42:40 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 42B4243D67 for ; Wed, 11 Jan 2006 07:42:39 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0B7gd2E052700 for ; Wed, 11 Jan 2006 07:42:39 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0B7gc0m052697 for perforce@freebsd.org; Wed, 11 Jan 2006 07:42:38 GMT (envelope-from imp@freebsd.org) Date: Wed, 11 Jan 2006 07:42:38 GMT Message-Id: <200601110742.k0B7gc0m052697@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 89496 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: Wed, 11 Jan 2006 07:42:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=89496 Change 89496 by imp@imp_plunger on 2006/01/11 07:42:31 No need to loop in start. The ISR will handle that for us. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/if_ate.c#18 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/if_ate.c#18 (text+ko) ==== @@ -533,11 +533,9 @@ BPF_MTAP(ifp, m); m_freem(m); - /* - * Loop back to the top to possibly buffer more packets + * Once we've queued one packet, we'll do the rest via the ISR */ - goto outloop; } static void From owner-p4-projects@FreeBSD.ORG Wed Jan 11 08:00:01 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 65F5F16A422; Wed, 11 Jan 2006 08:00:01 +0000 (GMT) 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 3A88316A41F for ; Wed, 11 Jan 2006 08:00:01 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A701343D49 for ; Wed, 11 Jan 2006 08:00:00 +0000 (GMT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0B800jx053645 for ; Wed, 11 Jan 2006 08:00:00 GMT (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0B800Mc053621 for perforce@freebsd.org; Wed, 11 Jan 2006 08:00:00 GMT (envelope-from imp@freebsd.org) Date: Wed, 11 Jan 2006 08:00:00 GMT Message-Id: <200601110800.k0B800Mc053621@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Cc: Subject: PERFORCE change 89497 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: Wed, 11 Jan 2006 08:00:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=89497 Change 89497 by imp@imp_hammer on 2006/01/11 07:59:48 Keep momentum: write a little code to grab the MAC address that the boot loader left behind in the SA1[LH] registers. We never set it, and respect what's there. If the boot loader isn't going to do this for us, then we'll need to find out some other way of being notified about the address. Since I don't think TS needs this extra functionality, defer doing it. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/if_ate.c#19 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/if_ate.c#19 (text+ko) ==== @@ -129,6 +129,7 @@ static void ate_deactivate(device_t dev); static int ate_ifmedia_upd(struct ifnet *ifp); static void ate_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr); +static void ate_get_mac(struct ate_softc *sc, u_char *eaddr); /* * The AT91 family of products has the ethernet called EMAC. However, @@ -161,6 +162,8 @@ ATE_LOCK_INIT(sc); callout_init_mtx(&sc->tick_ch, &sc->sc_mtx, 0); + ate_get_mac(sc, eaddr); + if (mii_phy_probe(dev, &sc->miibus, ate_ifmedia_upd, ate_ifmedia_sts)) { device_printf(dev, "Cannot find my PHY.\n"); err = ENXIO; @@ -348,6 +351,11 @@ struct mii_data *mii; int active; + /* + * The KB920x boot loader tests ETH_SR & ETH_SR_LINK and will ask + * the MII if there's a link if this bit is clear. Not sure if we + * should do the same thing ehre or not. + */ ATE_ASSERT_LOCKED(sc); if (sc->miibus != NULL) { mii = device_get_softc(sc->miibus); @@ -410,6 +418,25 @@ callout_reset(&sc->tick_ch, hz, ate_tick, sc); } +static void +ate_get_mac(struct ate_softc *sc, u_char *eaddr) +{ + uint32_t low, high; + + /* + * The KB920x loaders will setup the MAC with an address, if one + * is set in the loader. The TSC loader will also set the MAC address + * in a similar way. Grab the MAC address from the SA1[HL] registers. + */ + low = RD4(sc, ETH_SA1L); + high = RD4(sc, ETH_SA1H); + eaddr[0] = (high >> 8) & 0xff; + eaddr[1] = high & 0xff; + eaddr[2] = (low >> 24) & 0xff; + eaddr[3] = (low >> 16) & 0xff; + eaddr[4] = (low >> 8) & 0xff; + eaddr[5] = low & 0xff; +} static void ate_intr(void *xsc) @@ -452,11 +479,16 @@ WR4(sc, ETH_CTL, RD4(sc, ETH_CTL) | ETH_CTL_TE); + /* + * Boot loader fills in MAC address. If that's not the case, then + * we should set SA1L and SA1H here to the appropriate value. Note: + * the byte order is big endian, not little endian, so we have some + * swapping to do. Again, if we need it (which I don't think we do). + */ + /* XXX need to setup multicast filters */ /* XXX need to setup rx buffers and assoc structures */ /* XXX need to enable appropriate interrupt masks */ - /* XXX need to program station address, or is that - * XXX added by upper layers? */ /* * Set 'running' flag, and clear output active flag From owner-p4-projects@FreeBSD.ORG Wed Jan 11 08:30:02 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 EA3D716A422; Wed, 11 Jan 2006 08:30:01 +0000 (GMT) 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 8B46B16A41F for ; Wed, 11 Jan 2006 08:30:01 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D08DB43D69 for ; Wed, 11 Jan 2006 08:29:15 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0B8T1Vv055938 for ; Wed, 11 Jan 2006 08:29:01 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0B8T1AO055933 for perforce@freebsd.org; Wed, 11 Jan 2006 08:29:01 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 11 Jan 2006 08:29:01 GMT Message-Id: <200601110829.k0B8T1AO055933@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 89501 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: Wed, 11 Jan 2006 08:30:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=89501 Change 89501 by rwatson@rwatson_peppercorn on 2006/01/11 08:28:14 Add Chunyang Yuan to the credits as a contributor to OpenBSM. Affected files ... .. //depot/projects/trustedbsd/openbsm/README#7 edit .. //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#5 edit .. //depot/projects/trustedbsd/openbsm/libbsm/bsm_audit.c#15 edit .. //depot/projects/trustedbsd/openbsm/libbsm/bsm_user.c#6 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/README#7 (text+ko) ==== @@ -58,6 +58,7 @@ Wayne Salamon Tom Rhodes Wojciech Koszek + Chunyang Yuan Contributions ==== //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#5 (text+ko) ==== @@ -827,6 +827,7 @@ void endauclass(); struct au_class_ent *getauclassent(); struct au_class_ent *getauclassnam(const char *name); +struct au_class_ent *getauclassnum(au_class_t class_number); /* * Free the au_class_ent structure */ ==== //depot/projects/trustedbsd/openbsm/libbsm/bsm_audit.c#15 (text+ko) ==== ==== //depot/projects/trustedbsd/openbsm/libbsm/bsm_user.c#6 (text+ko) ==== @@ -57,7 +57,7 @@ { struct au_user_ent *u; - u = (struct au_user_ent *) malloc (sizeof(struct au_user_ent)); + u = (struct au_user_ent *) malloc(sizeof(struct au_user_ent)); if (u == NULL) return (NULL); u->au_name = (char *)malloc(AU_USER_NAME_MAX * sizeof(char)); @@ -112,13 +112,20 @@ /* * Rewind to beginning of the file */ +static void +setauuser_locked(void) +{ + + if (fp != NULL) + fseek(fp, 0, SEEK_SET); +} + void setauuser(void) { pthread_mutex_lock(&mutex); - if (fp != NULL) - fseek(fp, 0, SEEK_SET); + setauuser_locked(); pthread_mutex_unlock(&mutex); } @@ -140,41 +147,42 @@ /* * Enumerate the au_user_ent structures from the file */ -struct au_user_ent * -getauuserent(void) +static struct au_user_ent * +getauuserent_locked(void) { struct au_user_ent *u; char *nl; - pthread_mutex_lock(&mutex); - - if ((fp == NULL) && ((fp = fopen(AUDIT_USER_FILE, "r")) == NULL)) { - pthread_mutex_unlock(&mutex); + if ((fp == NULL) && ((fp = fopen(AUDIT_USER_FILE, "r")) == NULL)) return (NULL); - } - if (fgets(linestr, AU_LINE_MAX, fp) == NULL) { - pthread_mutex_unlock(&mutex); + if (fgets(linestr, AU_LINE_MAX, fp) == NULL) return (NULL); - } /* Remove new lines. */ if ((nl = strrchr(linestr, '\n')) != NULL) *nl = '\0'; u = get_user_area(); - if (u == NULL) { - pthread_mutex_unlock(&mutex); + if (u == NULL) return (NULL); - } /* Get the next structure. */ if (userfromstr(linestr, delim, u) == NULL) { destroy_user_area(u); - pthread_mutex_unlock(&mutex); return (NULL); } + return (u); +} + +struct au_user_ent * +getauuserent(void) +{ + struct au_user_ent *u; + + pthread_mutex_lock(&mutex); + u = getauuserent_locked(); pthread_mutex_unlock(&mutex); return (u); } @@ -186,40 +194,21 @@ getauusernam(const char *name) { struct au_user_ent *u; - char *nl; if (name == NULL) return (NULL); - setauuser(); - pthread_mutex_lock(&mutex); - if ((fp == NULL) && ((fp = fopen(AUDIT_USER_FILE, "r")) == NULL)) { - pthread_mutex_unlock(&mutex); - return (NULL); - } - - u = get_user_area(); - if (u == NULL) { - pthread_mutex_unlock(&mutex); - return (NULL); - } - - while (fgets(linestr, AU_LINE_MAX, fp) != NULL) { - /* Remove new lines. */ - if ((nl = strrchr(linestr, '\n')) != NULL) - *nl = '\0'; - - if (userfromstr(linestr, delim, u) != NULL) { - if (!strcmp(name, u->au_name)) { - pthread_mutex_unlock(&mutex); - return (u); - } + setauuser_locked(); + while ((u = getauuserent()) != NULL) { + if (strcmp(name, u->au_name) == 0) { + pthread_mutex_unlock(&mutex); + return (u); } + destroy_user_area(u); } - destroy_user_area(u); pthread_mutex_unlock(&mutex); return (NULL); From owner-p4-projects@FreeBSD.ORG Wed Jan 11 10:43:39 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 CD33016A420; Wed, 11 Jan 2006 10:43:38 +0000 (GMT) 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 7118C16A422 for ; Wed, 11 Jan 2006 10:43:38 +0000 (GMT) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6DC0543DB1 for ; Wed, 11 Jan 2006 10:42:55 +0000 (GMT) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by cyrus.watson.org (Postfix) with ESMTP id 495B646B49 for ; Wed, 11 Jan 2006 05:42:53 -0500 (EST) Date: Wed, 11 Jan 2006 10:42:56 +0000 (GMT) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Perforce Change Reviews In-Reply-To: <200601110829.k0B8T1AO055933@repoman.freebsd.org> Message-ID: <20060111104206.V28748@fledge.watson.org> References: <200601110829.k0B8T1AO055933@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: Subject: Re: PERFORCE change 89501 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: Wed, 11 Jan 2006 10:43:39 -0000 On Wed, 11 Jan 2006, Robert Watson wrote: > http://perforce.freebsd.org/chv.cgi?CH=89501 > > Change 89501 by rwatson@rwatson_peppercorn on 2006/01/11 08:28:14 > > Add Chunyang Yuan to the credits as a contributor to OpenBSM. .. And fix locking/file access in the OpenBSM user database, accidentally submitted at the same time. May require further revision. > > Affected files ... > > .. //depot/projects/trustedbsd/openbsm/README#7 edit > .. //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#5 edit > .. //depot/projects/trustedbsd/openbsm/libbsm/bsm_audit.c#15 edit > .. //depot/projects/trustedbsd/openbsm/libbsm/bsm_user.c#6 edit > > Differences ... > > ==== //depot/projects/trustedbsd/openbsm/README#7 (text+ko) ==== > > @@ -58,6 +58,7 @@ > Wayne Salamon > Tom Rhodes > Wojciech Koszek > + Chunyang Yuan > > Contributions > > > ==== //depot/projects/trustedbsd/openbsm/bsm/libbsm.h#5 (text+ko) ==== > > @@ -827,6 +827,7 @@ > void endauclass(); > struct au_class_ent *getauclassent(); > struct au_class_ent *getauclassnam(const char *name); > +struct au_class_ent *getauclassnum(au_class_t class_number); > /* > * Free the au_class_ent structure > */ > > ==== //depot/projects/trustedbsd/openbsm/libbsm/bsm_audit.c#15 (text+ko) ==== > > > ==== //depot/projects/trustedbsd/openbsm/libbsm/bsm_user.c#6 (text+ko) ==== > > @@ -57,7 +57,7 @@ > { > struct au_user_ent *u; > > - u = (struct au_user_ent *) malloc (sizeof(struct au_user_ent)); > + u = (struct au_user_ent *) malloc(sizeof(struct au_user_ent)); > if (u == NULL) > return (NULL); > u->au_name = (char *)malloc(AU_USER_NAME_MAX * sizeof(char)); > @@ -112,13 +112,20 @@ > /* > * Rewind to beginning of the file > */ > +static void > +setauuser_locked(void) > +{ > + > + if (fp != NULL) > + fseek(fp, 0, SEEK_SET); > +} > + > void > setauuser(void) > { > > pthread_mutex_lock(&mutex); > - if (fp != NULL) > - fseek(fp, 0, SEEK_SET); > + setauuser_locked(); > pthread_mutex_unlock(&mutex); > } > > @@ -140,41 +147,42 @@ > /* > * Enumerate the au_user_ent structures from the file > */ > -struct au_user_ent * > -getauuserent(void) > +static struct au_user_ent * > +getauuserent_locked(void) > { > struct au_user_ent *u; > char *nl; > > - pthread_mutex_lock(&mutex); > - > - if ((fp == NULL) && ((fp = fopen(AUDIT_USER_FILE, "r")) == NULL)) { > - pthread_mutex_unlock(&mutex); > + if ((fp == NULL) && ((fp = fopen(AUDIT_USER_FILE, "r")) == NULL)) > return (NULL); > - } > > - if (fgets(linestr, AU_LINE_MAX, fp) == NULL) { > - pthread_mutex_unlock(&mutex); > + if (fgets(linestr, AU_LINE_MAX, fp) == NULL) > return (NULL); > - } > > /* Remove new lines. */ > if ((nl = strrchr(linestr, '\n')) != NULL) > *nl = '\0'; > > u = get_user_area(); > - if (u == NULL) { > - pthread_mutex_unlock(&mutex); > + if (u == NULL) > return (NULL); > - } > > /* Get the next structure. */ > if (userfromstr(linestr, delim, u) == NULL) { > destroy_user_area(u); > - pthread_mutex_unlock(&mutex); > return (NULL); > } > > + return (u); > +} > + > +struct au_user_ent * > +getauuserent(void) > +{ > + struct au_user_ent *u; > + > + pthread_mutex_lock(&mutex); > + u = getauuserent_locked(); > pthread_mutex_unlock(&mutex); > return (u); > } > @@ -186,40 +194,21 @@ > getauusernam(const char *name) > { > struct au_user_ent *u; > - char *nl; > > if (name == NULL) > return (NULL); > > - setauuser(); > - > pthread_mutex_lock(&mutex); > > - if ((fp == NULL) && ((fp = fopen(AUDIT_USER_FILE, "r")) == NULL)) { > - pthread_mutex_unlock(&mutex); > - return (NULL); > - } > - > - u = get_user_area(); > - if (u == NULL) { > - pthread_mutex_unlock(&mutex); > - return (NULL); > - } > - > - while (fgets(linestr, AU_LINE_MAX, fp) != NULL) { > - /* Remove new lines. */ > - if ((nl = strrchr(linestr, '\n')) != NULL) > - *nl = '\0'; > - > - if (userfromstr(linestr, delim, u) != NULL) { > - if (!strcmp(name, u->au_name)) { > - pthread_mutex_unlock(&mutex); > - return (u); > - } > + setauuser_locked(); > + while ((u = getauuserent()) != NULL) { > + if (strcmp(name, u->au_name) == 0) { > + pthread_mutex_unlock(&mutex); > + return (u); > } > + destroy_user_area(u); > } > > - destroy_user_area(u); > pthread_mutex_unlock(&mutex); > return (NULL); > > From owner-p4-projects@FreeBSD.ORG Wed Jan 11 14:20:29 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 6EFEC16A422; Wed, 11 Jan 2006 14:20:28 +0000 (GMT) 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 E57C716A420; Wed, 11 Jan 2006 14:20:27 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from speedfactory.net (mail6.speedfactory.net [66.23.216.219]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2ADEE43D45; Wed, 11 Jan 2006 14:20:26 +0000 (GMT) (envelope-from jhb@freebsd.org) Received: from server.baldwin.cx (unverified [66.23.211.162]) by speedfactory.net (SurgeMail 3.5b3) with ESMTP id 5794944 for multiple; Wed, 11 Jan 2006 09:18:51 -0500 Received: from zion.baldwin.cx (zion.baldwin.cx [192.168.0.7]) (authenticated bits=0) by server.baldwin.cx (8.13.4/8.13.4) with ESMTP id k0BEKM4F071494; Wed, 11 Jan 2006 09:20:24 -0500 (EST) (envelope-from jhb@freebsd.org) From: John Baldwin To: Kip Macy Date: Wed, 11 Jan 2006 09:20:20 -0500 User-Agent: KMail/1.8.3 References: <200601110347.k0B3le2N025056@repoman.freebsd.org> In-Reply-To: <200601110347.k0B3le2N025056@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Message-Id: <200601110920.21204.jhb@freebsd.org> X-Virus-Scanned: ClamAV 0.87.1/1238/Wed Jan 11 05:19:06 2006 on server.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-1.4 required=4.2 tests=ALL_TRUSTED autolearn=failed version=3.1.0 X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on server.baldwin.cx X-Server: High Performance Mail Server - http://surgemail.com r=1653887525 Cc: Perforce Change Reviews Subject: Re: PERFORCE change 89485 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: Wed, 11 Jan 2006 14:20:29 -0000 On Tuesday 10 January 2006 10:47 pm, Kip Macy wrote: > http://perforce.freebsd.org/chv.cgi?CH=3D89485 > > Change 89485 by kmacy@kmacy:freebsd7_xen3 on 2006/01/11 03:47:18 > > add dom0 io apic support > determination of ioapic_read / ioapic_write functions is made at runtime > > Affected files ... > > .. //depot/projects/xen3/src/sys/i386-xen/conf/XENCONF#2 edit > .. //depot/projects/xen3/src/sys/i386-xen/i386-xen/io_apic.c#1 add > .. //depot/projects/xen3/src/sys/i386-xen/i386-xen/machdep.c#5 edit > .. //depot/projects/xen3/src/sys/i386/i386/io_apic.c#3 edit > .. //depot/projects/xen3/src/sys/i386/i386/machdep.c#2 edit > .. //depot/projects/xen3/src/sys/i386/i386/mptable.c#2 edit > > Differences ... > > =3D=3D=3D=3D //depot/projects/xen3/src/sys/i386/i386/io_apic.c#3 (text+ko= ) =3D=3D=3D=3D > > @@ -539,34 +508,42 @@ > void * > ioapic_create(uintptr_t addr, int32_t apic_id, int intbase) > { > - struct ioapic *io; > + struct ioapic *io, tio; > struct ioapic_intsrc *intpin; > - volatile ioapic_t *apic; > u_int numintr, i; > uint32_t value; > > + io =3D &tio; > + /* XXX should xen just ignore this? */ > /* Map the register window so we can access the device. */ > - apic =3D (ioapic_t *)pmap_mapdev(addr, IOAPIC_MEM_REGION); > + io->io_addr =3D (ioapic_t *)pmap_mapdev(addr, IOAPIC_MEM_REGION); > + > + /* set the nominal apic_id for the initial read */ > + io->io_apic_id =3D apic_id; > + > mtx_lock_spin(&icu_lock); > - value =3D ioapic_read(apic, IOAPIC_VER); > + /* fetch the APIC id in case we're running under xen */ > + io->io_apic_id =3D access.apic_read(io, IOAPIC_ID) >> APIC_ID_SHIFT; > + value =3D access.apic_read(io, IOAPIC_VER); > mtx_unlock_spin(&icu_lock); > > /* If it's version register doesn't seem to work, punt. */ > if (value =3D=3D 0xffffffff) { > - pmap_unmapdev((vm_offset_t)apic, IOAPIC_MEM_REGION); > + pmap_unmapdev((vm_offset_t)io->io_addr, IOAPIC_MEM_REGION); > + free(io, M_IOAPIC); You haven't malloced an io here, so you shouldn't free it. The reason=20 ioapic_read/ioapic_write currently take the ioapic_t addr directly is to=20 avoid the need for the tio hack. I think you can make Xen work if you thin= k=20 a bit more creatively. First off, don't pass in the raw address and don't= =20 call pmap_mapdev() (since you aren't going to use the pointer anyway) for=20 Xen. Instead, pass the APIC ID in as the 'addr' variable and just use that= =20 as io_addr and as the argument you pass to your xen functions. Thus, you e= nd=20 up with something like this: xen_ioapic_read(addr, reg) { u.apic.id =3D addr; u.apic.reg =3D reg; /* hypervisor call */ } And in ioapic_create() you start off doing something like this: if (running_xen) apic =3D (void *)addr; if (!running_xen) apic =3D pmap_mapdev(); /* read IOAPIC_VER */ /* test for 0xffffffff */ /* read numintr value */ if (!running_xen) { update_apic_id(); } This would imply that Xen needs its own APIC enumerator, but that is probab= ly=20 sensible and those are fairly easy to write. This would also simplify the= =20 diffs here a bunch I think. > return (NULL); > } > > - /* Determine the number of vectors and set the APIC ID. */ Comment is still valid. > numintr =3D ((value & IOART_VER_MAXREDIR) >> MAXREDIRSHIFT) + 1; > io =3D malloc(sizeof(struct ioapic) + > numintr * sizeof(struct ioapic_intsrc), M_IOAPIC, M_WAITOK); > io->io_pic =3D ioapic_template; =2D-=20 John Baldwin =A0<>< =A0http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" =A0=3D =A0http://www.FreeBSD.org From owner-p4-projects@FreeBSD.ORG Wed Jan 11 22:41:50 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 367B316A423; Wed, 11 Jan 2006 22:41:50 +0000 (GMT) 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 9F4D916A41F for ; Wed, 11 Jan 2006 22:41:49 +0000 (GMT) (envelope-from millert@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C524443D5C for ; Wed, 11 Jan 2006 22:41:48 +0000 (GMT) (envelope-from millert@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0BMfm8f030927 for ; Wed, 11 Jan 2006 22:41:48 GMT (envelope-from millert@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0BMfmvD030924 for perforce@freebsd.org; Wed, 11 Jan 2006 22:41:48 GMT (envelope-from millert@freebsd.org) Date: Wed, 11 Jan 2006 22:41:48 GMT Message-Id: <200601112241.k0BMfmvD030924@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to millert@freebsd.org using -f From: Todd Miller To: Perforce Change Reviews Cc: Subject: PERFORCE change 89531 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: Wed, 11 Jan 2006 22:41:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=89531 Change 89531 by millert@millert_ibook on 2006/01/11 22:40:55 Fix the order of the message checks; we need to do the port check before the rights check (it was the other way around). To do this we must move mac_check_port_send() out of ipc_kmsg_send() and into ipc_kmsg_copyin_header(). It is too late to deny in ipc_kmsg_send() since the rights have already have been copied into the kmsg at that point. Affected files ... .. //depot/projects/trustedbsd/sedarwin7/src/darwin/xnu/osfmk/ipc/ipc_kmsg.c#6 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin7/src/darwin/xnu/osfmk/ipc/ipc_kmsg.c#6 (text+ko) ==== @@ -848,20 +848,11 @@ port = (ipc_port_t) kmsg->ikm_header.msgh_remote_port; assert(IP_VALID(port)); + if ((option & ~(MACH_SEND_TIMEOUT|MACH_SEND_ALWAYS)) != 0) + printf("ipc_kmsg_send: bad option 0x%x\n", option); + ip_lock(port); -#ifdef MAC - task_t self = current_task(); - tasklabel_lock(self); - - int rc = mac_check_port_send(&self->maclabel, &port->ip_label); - tasklabel_unlock(self); - if (rc) { - ip_unlock (port); - return KERN_NO_ACCESS; - } -#endif - if (port->ip_receiver == ipc_space_kernel) { /* @@ -1727,7 +1718,46 @@ mach_port_name_t notify) { mach_msg_return_t mr; - +#ifdef MAC + mach_port_name_t dest_name; + ipc_entry_t entry; + ipc_port_t port; + task_t self; + int error = 0; + + /* + * We do the port send check here instead of in ipc_kmsg_send() + * because copying the header involves copying the port rights too + * and we need to do the send check before anything is actually copied. + * We don't currently try to mediate kernel-resident servers. + */ + self = current_task(); + if (self != kernel_task) { + is_read_lock(space); + if (space->is_active) { + dest_name = (mach_port_name_t) kmsg->ikm_header.msgh_remote_port; + if (MACH_PORT_VALID(dest_name)) { + entry = ipc_entry_lookup(space, dest_name); + if (entry != IE_NULL) { + port = (ipc_port_t) entry->ie_object; + assert(port != IP_NULL); + ip_lock(port); + if (ip_active(port)) { + tasklabel_lock(self); + error = mac_check_port_send(&self->maclabel, + &port->ip_label); + tasklabel_unlock(self); + } + ip_unlock(port); + } + } + } + is_read_unlock(space); + if (error != 0) + return MACH_SEND_INVALID_DEST; + } +#endif + mr = ipc_kmsg_copyin_header(&kmsg->ikm_header, space, notify); if (mr != MACH_MSG_SUCCESS) return mr; From owner-p4-projects@FreeBSD.ORG Wed Jan 11 22:42:51 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 C3A7C16A422; Wed, 11 Jan 2006 22:42:50 +0000 (GMT) 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 9BFE116A41F for ; Wed, 11 Jan 2006 22:42:50 +0000 (GMT) (envelope-from millert@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 67C7043D45 for ; Wed, 11 Jan 2006 22:42:50 +0000 (GMT) (envelope-from millert@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0BMgogI031023 for ; Wed, 11 Jan 2006 22:42:50 GMT (envelope-from millert@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0BMgoUZ031020 for perforce@freebsd.org; Wed, 11 Jan 2006 22:42:50 GMT (envelope-from millert@freebsd.org) Date: Wed, 11 Jan 2006 22:42:50 GMT Message-Id: <200601112242.k0BMgoUZ031020@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to millert@freebsd.org using -f From: Todd Miller To: Perforce Change Reviews Cc: Subject: PERFORCE change 89532 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: Wed, 11 Jan 2006 22:42:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=89532 Change 89532 by millert@millert_ibook on 2006/01/11 22:42:14 Enable the check_port_send entry point now that the order of the checks has been fixed. Affected files ... .. //depot/projects/trustedbsd/sedarwin7/src/sedarwin/sedarwin/sebsd.c#24 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin7/src/sedarwin/sedarwin/sebsd.c#24 (text+ko) ==== @@ -2658,12 +2658,7 @@ .mpo_check_service_access = sebsd_check_service_access, .mpo_check_cred_relabel = sebsd_check_cred_relabel, .mpo_check_port_relabel = sebsd_check_port_relabel, - -/* - * The sebsd_check_msg_send is known to be broken - */ -/* .mpo_check_port_send = sebsd_check_msg_send, */ - + .mpo_check_port_send = sebsd_check_msg_send, .mpo_check_port_make_send = sebsd_check_port_make_send, .mpo_check_port_copy_send = sebsd_check_port_copy_send, .mpo_check_port_move_receive = sebsd_check_port_move_recv, From owner-p4-projects@FreeBSD.ORG Thu Jan 12 02:19:15 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 3159916A422; Thu, 12 Jan 2006 02:19:15 +0000 (GMT) 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 07AE916A41F for ; Thu, 12 Jan 2006 02:19:15 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B14C443D45 for ; Thu, 12 Jan 2006 02:19:14 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0C2JEZE050544 for ; Thu, 12 Jan 2006 02:19:14 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0C2JEhb050534 for perforce@freebsd.org; Thu, 12 Jan 2006 02:19:14 GMT (envelope-from cognet@freebsd.org) Date: Thu, 12 Jan 2006 02:19:14 GMT Message-Id: <200601120219.k0C2JEhb050534@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 89540 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, 12 Jan 2006 02:19:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=89540 Change 89540 by cognet@cognet on 2006/01/12 02:18:12 - Manually disable interrupts by writing in the corresponding IDR for all devices that share the IRQ 1 (ST, DBGU, PIOA-PIOD, SDRAM controller, RTC). Without that, the first device that unmask the IRQ1 would provoke an interrupt storm. - Write in the end of interrupt register in arm_irq_unmask(). This is not the best place to do it, it should be done once we're done servicing interrupts, but it should be harmless. It makes interrupts work as expected (without it, we wouldn't get any interrupt after the first one). Affected files ... .. //depot/projects/arm/src/sys/arm/at91/at91.c#3 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/at91.c#3 (text+ko) ==== @@ -255,6 +255,25 @@ bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_IDCR, 0xffffffff); bus_space_write_4(sc->sc_st, sc->sc_sys_sh, IC_ICCR, 0xffffffff); + /* XXX */ + /* Disable all interrupts for RTC (0xe24 == RTC_IDR) */ + bus_space_write_4(sc->sc_st, sc->sc_sys_sh, 0xe24, 0xffffffff); + /* Disable all interrupts for PMC (0xc64 == PMC_IDR) */ + bus_space_write_4(sc->sc_st, sc->sc_sys_sh, 0xc64, 0xffffffff); + /* Disable all interrupts for ST */ + bus_space_write_4(sc->sc_st, sc->sc_sys_sh, 0xd18, 0xffffffff); + /* DIsable all interrupts for DBGU */ + bus_space_write_4(sc->sc_st, sc->sc_sys_sh, 0x20c, 0xffffffff); + /* Disable all interrupts for PIOA */ + bus_space_write_4(sc->sc_st, sc->sc_sys_sh, 0x444, 0xffffffff); + /* Disable all interrupts for PIOB */ + bus_space_write_4(sc->sc_st, sc->sc_sys_sh, 0x644, 0xffffffff); + /* Disable all interrupts for PIOC */ + bus_space_write_4(sc->sc_st, sc->sc_sys_sh, 0x844, 0xffffffff); + /* Disable all interrupts for PIOD */ + bus_space_write_4(sc->sc_st, sc->sc_sys_sh, 0xa44, 0xffffffff); + /* Disable all interrupts for the SDRAM controller */ + bus_space_write_4(sc->sc_st, sc->sc_sys_sh, 0xfa8, 0xffffffff); at91_add_child(dev, 0, "at91_st", 0, 0, 0, 1); at91_add_child(dev, 10, "at91_udp", 0, AT91RM92_BASE + // UDP AT91RM92_UDP_BASE, AT91RM92_UDP_SIZE, AT91RM92_IRQ_UDP); @@ -463,6 +482,8 @@ bus_space_write_4(at91_softc->sc_st, at91_softc->sc_sys_sh, IC_IECR, 1 << nb); + bus_space_write_4(at91_softc->sc_st, at91_softc->sc_sys_sh, + IC_EOICR, 0); } From owner-p4-projects@FreeBSD.ORG Thu Jan 12 07:17:16 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 2643716A422; Thu, 12 Jan 2006 07:17:16 +0000 (GMT) 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 ECBC016A41F for ; Thu, 12 Jan 2006 07:17:15 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 946C043D46 for ; Thu, 12 Jan 2006 07:17:15 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0C7HFLL068831 for ; Thu, 12 Jan 2006 07:17:15 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0C7HFQf068828 for perforce@freebsd.org; Thu, 12 Jan 2006 07:17:15 GMT (envelope-from kmacy@freebsd.org) Date: Thu, 12 Jan 2006 07:17:15 GMT Message-Id: <200601120717.k0C7HFQf068828@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 89545 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, 12 Jan 2006 07:17:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=89545 Change 89545 by kmacy@kmacy:freebsd7_xen3 on 2006/01/12 07:16:57 general summary: import routine for contiguous memory allocation, clean up defines slightly, and enable more hardware support add in balloon driver only probe video card if we're dom0 ifdef out most of balloon driver for the moment for the sake of clean compilation enable PCI in XENCONF suck in functions into clock.c to satisfy link requirements import functions from xenlinux for allocating contiguous extents legacy bus should only probe child busses if we're running privileged shuffle some defines off into headers Affected files ... .. //depot/projects/xen3/src/sys/conf/files.i386-xen#3 edit .. //depot/projects/xen3/src/sys/dev/syscons/syscons.c#2 edit .. //depot/projects/xen3/src/sys/dev/xen/balloon/balloon.c#3 edit .. //depot/projects/xen3/src/sys/i386-xen/conf/XENCONF#3 edit .. //depot/projects/xen3/src/sys/i386-xen/i386-xen/clock.c#9 edit .. //depot/projects/xen3/src/sys/i386-xen/i386-xen/evtchn.c#3 edit .. //depot/projects/xen3/src/sys/i386-xen/i386-xen/xen_machdep.c#7 edit .. //depot/projects/xen3/src/sys/i386-xen/include/pmap.h#3 edit .. //depot/projects/xen3/src/sys/i386-xen/include/xenfunc.h#2 edit .. //depot/projects/xen3/src/sys/i386-xen/include/xenpmap.h#2 edit .. //depot/projects/xen3/src/sys/i386-xen/include/xenvar.h#4 edit .. //depot/projects/xen3/src/sys/i386/i386/legacy.c#2 edit Differences ... ==== //depot/projects/xen3/src/sys/conf/files.i386-xen#3 (text+ko) ==== @@ -455,3 +455,4 @@ dev/xen/xenbus/xenbus_xs.c standard dev/xen/blkfront/blkfront.c standard dev/xen/netfront/netfront.c standard +dev/xen/balloon/balloon.c standard ==== //depot/projects/xen3/src/sys/dev/syscons/syscons.c#2 (text+ko) ==== @@ -1390,6 +1390,10 @@ int unit; int flags; +#ifdef XEN + if (!(xen_start_info->flags & SIF_INITDOMAIN)) + return; +#endif cp->cn_pri = sc_get_cons_priority(&unit, &flags); /* a video card is always required */ ==== //depot/projects/xen3/src/sys/dev/xen/balloon/balloon.c#3 (text+ko) ==== @@ -42,7 +42,8 @@ * Also protects non-atomic updates of current_pages and driver_pages, and * balloon lists. */ -struct mtx_lock balloon_lock; +struct mtx balloon_lock; +#ifdef notyet /* We aim for 'current allocation' == 'target allocation'. */ static unsigned long current_pages; @@ -439,3 +440,4 @@ wakeup(balloon_process); } +#endif ==== //depot/projects/xen3/src/sys/i386-xen/conf/XENCONF#3 (text+ko) ==== @@ -65,6 +65,9 @@ #options SMP # Symmetric MultiProcessor Kernel device apic # I/O APIC +# Bus support +device pci + # SCSI peripherals device scbus # SCSI bus (required for SCSI) #device ch # SCSI media changers ==== //depot/projects/xen3/src/sys/i386-xen/i386-xen/clock.c#9 (text+ko) ==== @@ -70,6 +70,7 @@ #include #endif #include +#include #include #include @@ -104,8 +105,9 @@ int independent_wallclock; u_int timer_freq = TIMER_FREQ; struct mtx clock_lock; +#define RTC_LOCK mtx_lock_spin(&clock_lock) +#define RTC_UNLOCK mtx_unlock_spin(&clock_lock) - static const u_char daysinmonth[] = {31,28,31,30,31,30,31,31,30,31,30,31}; /* Values for timerX_state: */ @@ -114,6 +116,8 @@ #define ACQUIRED 2 #define ACQUIRE_PENDING 3 +static u_char timer2_state; + /* Cached *multiplier* to convert TSC counts to microseconds. * (see the equation below). * Equal to 2^32 * (1 / (clocks per usec) ). @@ -718,6 +722,76 @@ } #endif + +/* + * RTC support routines + */ + +int +rtcin(reg) + int reg; +{ + u_char val; + + RTC_LOCK; + outb(IO_RTC, reg); + inb(0x84); + val = inb(IO_RTC + 1); + inb(0x84); + RTC_UNLOCK; + return (val); +} + +static __inline void +writertc(u_char reg, u_char val) +{ + + RTC_LOCK; + inb(0x84); + outb(IO_RTC, reg); + inb(0x84); + outb(IO_RTC + 1, val); + inb(0x84); /* XXX work around wrong order in rtcin() */ + RTC_UNLOCK; +} + +static __inline int +readrtc(int port) +{ + return(bcd2bin(rtcin(port))); +} + +int +acquire_timer2(int mode) +{ + + if (timer2_state != RELEASED) + return (-1); + timer2_state = ACQUIRED; + + /* + * This access to the timer registers is as atomic as possible + * because it is a single instruction. We could do better if we + * knew the rate. Use of splclock() limits glitches to 10-100us, + * and this is probably good enough for timer2, so we aren't as + * careful with it as with timer0. + */ + outb(TIMER_MODE, TIMER_SEL2 | (mode & 0x3f)); + + return (0); +} + +int +release_timer2() +{ + + if (timer2_state != ACQUIRED) + return (-1); + timer2_state = RELEASED; + outb(TIMER_MODE, TIMER_SEL2 | TIMER_SQWAVE | TIMER_16BIT); + return (0); +} + /* * Start clocks running. */ ==== //depot/projects/xen3/src/sys/i386-xen/i386-xen/evtchn.c#3 (text+ko) ==== @@ -30,14 +30,6 @@ */ -#define BITS_PER_LONG 32 -#define NR_CPUS MAX_VIRT_CPUS - -#define BITS_TO_LONGS(bits) \ - (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG) -#define DECLARE_BITMAP(name,bits) \ - unsigned long name[BITS_TO_LONGS(bits)] -typedef struct { DECLARE_BITMAP(bits, NR_CPUS); } xen_cpumask_t; static inline int find_first_bit(const unsigned long *addr, unsigned size) { int d0, d1; ==== //depot/projects/xen3/src/sys/i386-xen/i386-xen/xen_machdep.c#7 (text+ko) ==== @@ -54,6 +54,8 @@ #include #include #include +#include +#include #define IDTVEC(name) __CONCAT(X,name) @@ -334,6 +336,186 @@ } +/* + * Bitmap is indexed by page number. If bit is set, the page is part of a + * xen_create_contiguous_region() area of memory. + */ +unsigned long *contiguous_bitmap; + +static void +contiguous_bitmap_set(unsigned long first_page, unsigned long nr_pages) +{ + unsigned long start_off, end_off, curr_idx, end_idx; + + curr_idx = first_page / BITS_PER_LONG; + start_off = first_page & (BITS_PER_LONG-1); + end_idx = (first_page + nr_pages) / BITS_PER_LONG; + end_off = (first_page + nr_pages) & (BITS_PER_LONG-1); + + if (curr_idx == end_idx) { + contiguous_bitmap[curr_idx] |= + ((1UL<> PAGE_SHIFT; + mfn = PFNTOMFN(pfn); + PFNTOMFN(pfn) = INVALID_P2M_ENTRY; + PANIC_IF(HYPERVISOR_memory_op(XENMEM_decrease_reservation, &reservation) != 1); + } + + + /* 2. Get a new contiguous memory extent. */ + reservation.extent_order = order; + /* xenlinux hardcodes this because of aacraid - maybe set to 0 if we're not + * running with a broxen driver XXXEN + */ + reservation.address_bits = 31; + if (HYPERVISOR_memory_op(XENMEM_increase_reservation, &reservation) != 1) + goto fail; + + /* 3. Map the new extent in place of old pages. */ + for (i = 0; i < (1 << order); i++) { + int pfn; + pfn = VM_PAGE_TO_PHYS(&pages[i]) >> PAGE_SHIFT; + xen_machphys_update(mfn+i, pfn); + PFNTOMFN(pfn) = mfn+i; + } + + xen_tlb_flush(); + + contiguous_bitmap_set(VM_PAGE_TO_PHYS(&pages[0]) >> PAGE_SHIFT, 1UL << order); + + balloon_unlock(flags); + + return 0; + + fail: + reservation.extent_order = 0; + reservation.address_bits = 0; + + for (i = 0; i < (1 << order); i++) { + int pfn; + pfn = VM_PAGE_TO_PHYS(&pages[i]) >> PAGE_SHIFT; + PANIC_IF(HYPERVISOR_memory_op( + XENMEM_increase_reservation, &reservation) != 1); + xen_machphys_update(mfn, pfn); + PFNTOMFN(pfn) = mfn; + } + + xen_tlb_flush(); + + balloon_unlock(flags); + + return ENOMEM; +} + +void +xen_destroy_contiguous_region(void *addr, int npages) +{ + unsigned long mfn, i, flags, order, pfn0; + struct xen_memory_reservation reservation = { + .extent_start = &mfn, + .nr_extents = 1, + .extent_order = 0, + .domid = DOMID_SELF + }; + + pfn0 = vtophys(addr) >> PAGE_SHIFT; +#if 0 + scrub_pages(vstart, 1 << order); +#endif + /* can currently only handle power of two allocation */ + PANIC_IF(ffs(npages) != fls(npages)); + + /* 0. determine order */ + order = (ffs(npages) == fls(npages)) ? fls(npages) : (ffs(npages) + 1); + + balloon_lock(flags); + + contiguous_bitmap_clear(vtophys(addr) >> PAGE_SHIFT, 1UL << order); + + /* 1. Zap current PTEs, giving away the underlying pages. */ + for (i = 0; i < (1 << order); i++) { + int pfn; + pte_t new_val = {0}; + pfn = vtomach((char *)addr + i*PAGE_SIZE) >> PAGE_SHIFT; + + PANIC_IF(HYPERVISOR_update_va_mapping((vm_offset_t)((char *)addr + (i * PAGE_SIZE)), new_val, 0)); + PFNTOMFN(pfn) = INVALID_P2M_ENTRY; + PANIC_IF(HYPERVISOR_memory_op( + XENMEM_decrease_reservation, &reservation) != 1); + } + + /* 2. Map new pages in place of old pages. */ + for (i = 0; i < (1 << order); i++) { + int pfn; + pte_t new_val; + pfn = pfn0 + i; + PANIC_IF(HYPERVISOR_memory_op(XENMEM_increase_reservation, &reservation) != 1); + + new_val.pte_low = mfn << PAGE_SHIFT; + PANIC_IF(HYPERVISOR_update_va_mapping((vm_offset_t)addr + (i * PAGE_SIZE), + new_val, PG_KERNEL)); + xen_machphys_update(mfn, pfn); + PFNTOMFN(pfn) = mfn; + } + + xen_tlb_flush(); + + balloon_unlock(flags); +} + extern unsigned long cpu0prvpage; extern unsigned long *SMPpt; extern struct user *proc0uarea; @@ -346,12 +528,6 @@ struct ringbuf_head *xen_store; /* XXX move me */ char *console_page; -#define PFN_UP(x) (((x) + PAGE_SIZE-1) >> PAGE_SHIFT) -#define VTOP(x) ((unsigned long)(x) - KERNBASE) -#define VTOPFN(x) (((unsigned long)(x) - KERNBASE) >> PAGE_SHIFT) -#define PFNTOV(x) (((unsigned long)(x) << PAGE_SHIFT) + KERNBASE) -#define PG_KERNEL (PG_V | PG_A | PG_RW | PG_M) - void * bootmem_alloc(unsigned int size) { @@ -560,8 +736,9 @@ }; -static void shutdown_handler(struct xenbus_watch *watch, - const char **vec, unsigned int len) +static void +shutdown_handler(struct xenbus_watch *watch, + const char **vec, unsigned int len) { char *str; struct xenbus_transaction *xbt; ==== //depot/projects/xen3/src/sys/i386-xen/include/pmap.h#3 (text+ko) ==== @@ -70,6 +70,8 @@ #define PG_PROT (PG_RW|PG_U) /* all protection bits . */ #define PG_N (PG_NC_PWT|PG_NC_PCD) /* Non-cacheable */ +#define PG_KERNEL (PG_V | PG_A | PG_RW | PG_M) + /* * Page Protection Exception bits */ @@ -430,6 +432,8 @@ void pmap_kenter_ma(vm_offset_t va, vm_paddr_t pa); void pmap_map_readonly(pmap_t pmap, vm_offset_t va, int len); void pmap_map_readwrite(pmap_t pmap, vm_offset_t va, int len); + + #endif /* _KERNEL */ #endif /* !LOCORE */ ==== //depot/projects/xen3/src/sys/i386-xen/include/xenfunc.h#2 (text+ko) ==== @@ -1,6 +1,5 @@ /* * - * Copyright (c) 2004 Christian Limpach. * Copyright (c) 2004,2005 Kip Macy * All rights reserved. * @@ -12,9 +11,6 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by Christian Limpach. * 4. The name of the author may not be used to endorse or promote products * derived from this software without specific prior written permission. * @@ -56,10 +52,19 @@ #endif char *xen_setbootenv(char *cmd_line); -int xen_boothowto(char *envp); + +int xen_boothowto(char *envp); + void xen_machphys_update(unsigned long, unsigned long); + void xen_update_descriptor(union descriptor *, union descriptor *); + void ap_cpu_initclocks(void); +extern struct mtx balloon_lock; +#define balloon_lock(__flags) mtx_lock_irqsave(&balloon_lock, __flags) +#define balloon_unlock(__flags) mtx_unlock_irqrestore(&balloon_lock, __flags) + + #endif /* _XEN_XENFUNC_H_ */ ==== //depot/projects/xen3/src/sys/i386-xen/include/xenpmap.h#2 (text+ko) ==== @@ -71,6 +71,8 @@ #define PT_LOG() #endif +#define INVALID_P2M_ENTRY (~0UL) + #define pmap_valid_entry(E) ((E) & PG_V) /* is PDE or PTE valid? */ #define SH_PD_SET_VA 1 ==== //depot/projects/xen3/src/sys/i386-xen/include/xenvar.h#4 (text+ko) ==== @@ -19,14 +19,26 @@ #define PFNTOMFN(i) (((unsigned long *)xen_phys_machine)[i]) #define MFNTOPFN(i) (xen_machine_phys[i]) #define VTOMFN(va) (vtomach(va) >> PAGE_SHIFT) +#define PFN_UP(x) (((x) + PAGE_SIZE-1) >> PAGE_SHIFT) +#define VTOP(x) ((unsigned long)(x) - KERNBASE) +#define VTOPFN(x) (((unsigned long)(x) - KERNBASE) >> PAGE_SHIFT) +#define PFNTOV(x) (((unsigned long)(x) << PAGE_SHIFT) + KERNBASE) + #define phystomach(pa) ((((unsigned long *)xen_phys_machine)[(pa >> PAGE_SHIFT)]) << PAGE_SHIFT) void xpq_init(void); -struct sockaddr_in; - -int xen_setnfshandle(void); -int setinaddr(struct sockaddr_in *addr, char *ipstr); +#define BITS_PER_LONG 32 +#define NR_CPUS MAX_VIRT_CPUS + +#define BITS_TO_LONGS(bits) \ + (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG) +#define DECLARE_BITMAP(name,bits) \ + unsigned long name[BITS_TO_LONGS(bits)] +typedef struct { DECLARE_BITMAP(bits, NR_CPUS); } xen_cpumask_t; + +int xen_create_contiguous_region(vm_page_t pages, int npages); + +void xen_destroy_contiguous_region(void * addr, int npages); -#define RB_GDB_PAUSE RB_RESERVED1 #endif ==== //depot/projects/xen3/src/sys/i386/i386/legacy.c#2 (text+ko) ==== @@ -147,6 +147,11 @@ panic("legacy_attach cpu"); device_probe_and_attach(child); } + +#ifdef XEN + if (!(xen_start_info->flags & SIF_PRIVILEGED)) + return 0; +#endif /* * Second, let our child driver's identify any child devices that From owner-p4-projects@FreeBSD.ORG Thu Jan 12 07:19:19 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 15E6716A422; Thu, 12 Jan 2006 07:19:19 +0000 (GMT) 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 DD79716A41F for ; Thu, 12 Jan 2006 07:19:18 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AC93043D45 for ; Thu, 12 Jan 2006 07:19:18 +0000 (GMT) (envelope-from kmacy@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0C7JIux068894 for ; Thu, 12 Jan 2006 07:19:18 GMT (envelope-from kmacy@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0C7JIPW068891 for perforce@freebsd.org; Thu, 12 Jan 2006 07:19:18 GMT (envelope-from kmacy@freebsd.org) Date: Thu, 12 Jan 2006 07:19:18 GMT Message-Id: <200601120719.k0C7JIPW068891@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to kmacy@freebsd.org using -f From: Kip Macy To: Perforce Change Reviews Cc: Subject: PERFORCE change 89546 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, 12 Jan 2006 07:19:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=89546 Change 89546 by kmacy@kmacy:freebsd7_xen3 on 2006/01/12 07:18:18 in contigmalloc / contigfree add in functions for creating physically (in machine pages) contiguous extents Affected files ... .. //depot/projects/xen3/src/sys/vm/vm_contig.c#2 edit Differences ... ==== //depot/projects/xen3/src/sys/vm/vm_contig.c#2 (text+ko) ==== @@ -562,6 +562,7 @@ vm_page_t pages; vm_pindex_t npgs; + /* XXXEN should consider rounding to nearest power of two */ npgs = round_page(size) >> PAGE_SHIFT; mtx_lock(&Giant); if (vm_old_contigmalloc) { @@ -573,6 +574,14 @@ if (pages == NULL) { ret = NULL; } else { +#ifdef XEN + /* make the logically contiguous pages - physically contiguous in + * memory - note that we do not in fact need the pages to be logically + * contiguous, but I am leaving it as is for now for the sake of + * expediency - kmacy + */ + xen_create_contiguous_region(pages, npgs); +#endif ret = contigmalloc2(pages, npgs, flags); if (ret == NULL) vm_page_release_contig(pages, npgs); @@ -590,6 +599,9 @@ vm_pindex_t npgs; npgs = round_page(size) >> PAGE_SHIFT; +#ifdef XEN + xen_destroy_contiguous_region(addr, npgs); +#endif kmem_free(kernel_map, (vm_offset_t)addr, size); malloc_type_freed(type, npgs << PAGE_SHIFT); } From owner-p4-projects@FreeBSD.ORG Thu Jan 12 16:01:03 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 ED55A16A422; Thu, 12 Jan 2006 16:01:02 +0000 (GMT) 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 B613116A41F for ; Thu, 12 Jan 2006 16:01:02 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6D42643D45 for ; Thu, 12 Jan 2006 16:01:02 +0000 (GMT) (envelope-from cognet@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0CG127t014181 for ; Thu, 12 Jan 2006 16:01:02 GMT (envelope-from cognet@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0CG12lc014178 for perforce@freebsd.org; Thu, 12 Jan 2006 16:01:02 GMT (envelope-from cognet@freebsd.org) Date: Thu, 12 Jan 2006 16:01:02 GMT Message-Id: <200601121601.k0CG12lc014178@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cognet@freebsd.org using -f From: Olivier Houchard To: Perforce Change Reviews Cc: Subject: PERFORCE change 89554 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, 12 Jan 2006 16:01:03 -0000 http://perforce.freebsd.org/chv.cgi?CH=89554 Change 89554 by cognet@cognet on 2006/01/12 16:00:13 - Setup the RX descriptors. - Start an interrupt handler. Affected files ... .. //depot/projects/arm/src/sys/arm/at91/if_ate.c#20 edit Differences ... ==== //depot/projects/arm/src/sys/arm/at91/if_ate.c#20 (text+ko) ==== @@ -62,6 +62,12 @@ #include "miibus_if.h" #define ATE_MAX_TX_BUFFERS 2 /* We have ping-pong tx buffers */ +#define ATE_MAX_RX_BUFFERS 8 + +typedef struct { + bus_addr_t addr; + int status; +} rx_desc_t; struct ate_softc { @@ -75,7 +81,15 @@ struct callout tick_ch; /* Tick callout */ bus_dma_tag_t mtag; /* bus dma tag for mbufs */ bus_dmamap_t tx_map[ATE_MAX_TX_BUFFERS]; + bus_dma_tag_t rxtag; + bus_dmamap_t rx_map[ATE_MAX_RX_BUFFERS]; + bus_dma_tag_t rx_desc_tag; + bus_dmamap_t rx_desc_map; int txcur; /* current tx map pointer */ + struct mbuf *sent_mbuf[ATE_MAX_TX_BUFFERS]; /* Sent mbufs */ + struct mbuf *rx_mbuf[ATE_MAX_RX_BUFFERS]; /* RX mbufs */ + bus_addr_t rx_desc_phys; + rx_desc_t *rx_descs; // XXX bogus int intr; @@ -212,6 +226,17 @@ return EBUSY; /* XXX */ } +static void +ate_getaddr(void *arg, bus_dma_segment_t *segs, int nsegs, int error) +{ + struct ate_softc *sc; + + if (error != 0) + return; + sc = (struct ate_softc *)arg; + sc->rx_desc_phys = segs[0].ds_addr; +} + static int ate_activate(device_t dev) { @@ -243,14 +268,65 @@ if (err != 0) goto errout; } - + /* + * Allocate our Rx buffers. This chip has a rx structure that's filled + * in + */ + /* - * Allocate our Rx buffers. This chip has a rx structure that's filled - * in -- later XXX + * Allocate DMA tags and maps for RX. */ + err = bus_dma_tag_create(NULL, 1, 0, BUS_SPACE_MAXADDR_32BIT, + BUS_SPACE_MAXADDR, NULL, NULL, MCLBYTES, 1, MCLBYTES, 0, + busdma_lock_mutex, &sc->sc_mtx, &sc->rxtag); + if (err != 0) + goto errout; + for (i = 0; i < ATE_MAX_RX_BUFFERS; i++) { + err = bus_dmamap_create(sc->rxtag, 0, &sc->rx_map[i]); + if (err != 0) + goto errout; + } + /* Dma TAG and MAP for the rx descriptors. */ + err = bus_dma_tag_create(NULL, sizeof(rx_desc_t), 0, + BUS_SPACE_MAXADDR_32BIT, BUS_SPACE_MAXADDR, NULL, NULL, + ATE_MAX_RX_BUFFERS * sizeof(rx_desc_t), 1, + ATE_MAX_RX_BUFFERS * sizeof(rx_desc_t), 0, busdma_lock_mutex, + &sc->sc_mtx, &sc->rx_desc_tag); + if (err != 0) + goto errout; + if (bus_dmamem_alloc(sc->rx_desc_tag, (void **)&sc->rx_descs, M_WAITOK, + &sc->rx_desc_map) != 0) + goto errout; + if (bus_dmamap_load(sc->rx_desc_tag, sc->rx_desc_map, + sc->rx_descs, ATE_MAX_RX_BUFFERS * sizeof(rx_desc_t), ate_getaddr, + sc, 0) != 0) + goto errout; + for (i = 0; i < ATE_MAX_RX_BUFFERS; i++) { + bus_dma_segment_t seg; + int nsegs; + + sc->rx_mbuf[i] = m_getcl(M_WAITOK, MT_DATA, M_PKTHDR); + sc->rx_mbuf[i]->m_len = sc->rx_mbuf[i]->m_pkthdr.len = + MCLBYTES; + if (bus_dmamap_load_mbuf_sg(sc->rxtag, sc->rx_map[i], + sc->rx_mbuf[i], &seg, &nsegs, 0) != 0) + goto errout; + /* + * For the last buffer, set the wrap bit so the controller + * restarts from the first descriptor. + */ + if (i == ATE_MAX_RX_BUFFERS - 1) + seg.ds_addr |= 1 << 1; + sc->rx_descs[i].addr = seg.ds_addr; + sc->rx_descs[i].status = 0; + bus_dmamap_sync(sc->rxtag, sc->rx_map[i], BUS_DMASYNC_PREWRITE); + } + bus_dmamap_sync(sc->rx_desc_tag, sc->rx_desc_map, BUS_DMASYNC_PREWRITE); + /* Write the descriptor queue address. */ + WR4(sc, ETH_RBQP, sc->rx_desc_phys); return (0); -errout:; +errout: ate_deactivate(dev); return (ENOMEM); } @@ -442,8 +518,86 @@ ate_intr(void *xsc) { struct ate_softc *sc = xsc; + int status; + int i; + + sc->intr++; + status = RD4(sc, ETH_ISR); + if (status == 0) + return; + if (status & ETH_ISR_RCOM) { + bus_dmamap_sync(sc->rx_desc_tag, sc->rx_desc_map, + BUS_DMASYNC_POSTREAD); + for (i = 0; i < ATE_MAX_RX_BUFFERS; i++) { + if (sc->rx_descs[i].addr & 1) { + struct mbuf *mb = sc->rx_mbuf[i]; + bus_dma_segment_t seg; + int rx_stat = sc->rx_descs[i].status; + int nsegs; + + bus_dmamap_sync(sc->rxtag, + sc->rx_map[i], BUS_DMASYNC_POSTREAD); + bus_dmamap_unload(sc->rxtag, + sc->rx_map[i]); + /* + * Clear the corresponding bits in RSR. + */ + WR4(sc, ETH_RSR, RD4(sc, ETH_RSR)); + sc->rx_mbuf[i] = m_getcl(M_DONTWAIT, MT_DATA, + M_PKTHDR); + if (!sc->rx_mbuf[i]) { + sc->rx_mbuf[i] = mb; + sc->rx_descs[i].addr &= ~1; + bus_dmamap_sync(sc->rx_desc_tag, + sc->rx_desc_map, + BUS_DMASYNC_PREWRITE); + break; + } + if (bus_dmamap_load_mbuf_sg(sc->rxtag, + sc->rx_map[i], + sc->rx_mbuf[i], &seg, &nsegs, 0) != 0) { + sc->rx_mbuf[i] = mb; + sc->rx_descs[i].addr &= ~1; + bus_dmamap_sync(sc->rx_desc_tag, + sc->rx_desc_map, + BUS_DMASYNC_PREWRITE); + break; + } + /* + * For the last buffer, set the wrap bit so the controller + * restarts from the first descriptor. + */ + if (i == ATE_MAX_RX_BUFFERS - 1) + seg.ds_addr |= 1 << 1; + sc->rx_descs[i].addr = seg.ds_addr; + sc->rx_descs[i].status = 0; + /* Bits 0-10 of the status file == length. */ + mb->m_len = rx_stat & 0x7ff; + (*sc->ifp->if_input)(sc->ifp, mb); + break; - sc->intr++; + + } + } + } + if (status & ETH_ISR_TCOM) { + if (sc->sent_mbuf[0]) + m_freem(sc->sent_mbuf[0]); + if (sc->sent_mbuf[1]) { + if (RD4(sc, ETH_TSR) & ETH_TSR_IDLE) { + m_freem(sc->sent_mbuf[1]); + sc->txcur = 0; + sc->sent_mbuf[0] = sc->sent_mbuf[1] = NULL; + } else { + sc->sent_mbuf[0] = sc->sent_mbuf[1]; + sc->sent_mbuf[1] = NULL; + sc->txcur = 1; + } + } else { + sc->sent_mbuf[0] = NULL; + sc->txcur = 0; + } + } } /* @@ -477,7 +631,7 @@ WR4(sc, ETH_CFG, RD4(sc, ETH_CFG) & ~ETH_CFG_RMII); #endif - WR4(sc, ETH_CTL, RD4(sc, ETH_CTL) | ETH_CTL_TE); + WR4(sc, ETH_CTL, RD4(sc, ETH_CTL) | ETH_CTL_TE | ETH_CTL_RE); /* * Boot loader fills in MAC address. If that's not the case, then @@ -516,7 +670,7 @@ if (ifp->if_drv_flags & IFF_DRV_OACTIVE) return; -outloop:; +outloop: /* XXX ed checks to see if there are buffered packets and an idle * transmitter and kicks something if so. This shouldn't happen * for this device, and I note it here only in passing @@ -545,6 +699,7 @@ goto outloop; } bus_dmamap_sync(sc->mtag, sc->tx_map[sc->txcur], BUS_DMASYNC_PREWRITE); + sc->sent_mbuf[sc->txcur] = m; sc->txcur++; if (sc->txcur >= ATE_MAX_TX_BUFFERS) sc->txcur = 0; From owner-p4-projects@FreeBSD.ORG Fri Jan 13 20:17:40 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 AF01216A422; Fri, 13 Jan 2006 20:17:39 +0000 (GMT) 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 7C72316A41F for ; Fri, 13 Jan 2006 20:17:39 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 18F3F43D4C for ; Fri, 13 Jan 2006 20:17:39 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0DKHdFC078957 for ; Fri, 13 Jan 2006 20:17:39 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0DKHKgq078954 for perforce@freebsd.org; Fri, 13 Jan 2006 20:17:20 GMT (envelope-from peter@freebsd.org) Date: Fri, 13 Jan 2006 20:17:20 GMT Message-Id: <200601132017.k0DKHKgq078954@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Cc: Subject: PERFORCE change 89603 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: Fri, 13 Jan 2006 20:17:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=89603 Change 89603 by peter@peter_daintree on 2006/01/13 20:16:42 IFC @89600 Affected files ... .. //depot/projects/hammer/LOCKS#2 integrate .. //depot/projects/hammer/Makefile.inc1#111 integrate .. //depot/projects/hammer/ObsoleteFiles.inc#12 integrate .. //depot/projects/hammer/UPDATING#89 integrate .. //depot/projects/hammer/bin/sh/sh.1#25 integrate .. //depot/projects/hammer/contrib/bind9/CHANGES#4 integrate .. //depot/projects/hammer/contrib/bind9/FAQ#3 integrate .. //depot/projects/hammer/contrib/bind9/FAQ.xml#1 branch .. //depot/projects/hammer/contrib/bind9/FREEBSD-Upgrade#6 integrate .. //depot/projects/hammer/contrib/bind9/FREEBSD-Xlist#3 integrate .. //depot/projects/hammer/contrib/bind9/README#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/check/named-checkconf.8#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/check/named-checkconf.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/check/named-checkconf.html#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/check/named-checkzone.8#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/check/named-checkzone.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/check/named-checkzone.html#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dig/dig.1#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dig/dig.c#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/dig/dig.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dig/dig.html#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dig/dighost.c#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/dig/host.1#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dig/host.c#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/dig/host.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dig/host.html#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dig/include/dig/dig.h#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/dig/nslookup.1#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dig/nslookup.c#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/dig/nslookup.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dig/nslookup.html#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dnssec/Makefile.in#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssec-keygen.8#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssec-keygen.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssec-keygen.html#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssec-makekeyset.8#2 delete .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssec-makekeyset.c#2 delete .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssec-makekeyset.docbook#2 delete .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssec-makekeyset.html#2 delete .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssec-signkey.8#2 delete .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssec-signkey.c#2 delete .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssec-signkey.docbook#2 delete .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssec-signkey.html#2 delete .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssec-signzone.8#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssec-signzone.c#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssec-signzone.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssec-signzone.html#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/dnssec/dnssectool.c#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/aclconf.c#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/client.c#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/control.c#4 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/include/named/client.h#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/include/named/ns_smf_globals.h#1 branch .. //depot/projects/hammer/contrib/bind9/bin/named/log.c#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/lwresd.8#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/lwresd.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/lwresd.html#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/main.c#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/named.8#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/named.conf.5#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/named.conf.docbook#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/named.conf.html#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/named.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/named.html#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/query.c#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/server.c#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/unix/os.c#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/update.c#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/xfrout.c#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/named/zoneconf.c#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/nsupdate/nsupdate.8#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/nsupdate/nsupdate.c#3 integrate .. //depot/projects/hammer/contrib/bind9/bin/nsupdate/nsupdate.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/nsupdate/nsupdate.html#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/rndc/rndc-confgen.8#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/rndc/rndc-confgen.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/rndc/rndc-confgen.html#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/rndc/rndc.8#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/rndc/rndc.c#4 integrate .. //depot/projects/hammer/contrib/bind9/bin/rndc/rndc.conf.5#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/rndc/rndc.conf.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/rndc/rndc.conf.html#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/rndc/rndc.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/bin/rndc/rndc.html#2 integrate .. //depot/projects/hammer/contrib/bind9/config.threads.in#1 branch .. //depot/projects/hammer/contrib/bind9/configure.in#3 integrate .. //depot/projects/hammer/contrib/bind9/doc/Makefile.in#2 integrate .. //depot/projects/hammer/contrib/bind9/doc/arm/Bv9ARM-book.xml#3 integrate .. //depot/projects/hammer/contrib/bind9/doc/arm/Bv9ARM.ch01.html#2 integrate .. //depot/projects/hammer/contrib/bind9/doc/arm/Bv9ARM.ch02.html#2 integrate .. //depot/projects/hammer/contrib/bind9/doc/arm/Bv9ARM.ch03.html#3 integrate .. //depot/projects/hammer/contrib/bind9/doc/arm/Bv9ARM.ch04.html#3 integrate .. //depot/projects/hammer/contrib/bind9/doc/arm/Bv9ARM.ch05.html#3 integrate .. //depot/projects/hammer/contrib/bind9/doc/arm/Bv9ARM.ch06.html#3 integrate .. //depot/projects/hammer/contrib/bind9/doc/arm/Bv9ARM.ch07.html#3 integrate .. //depot/projects/hammer/contrib/bind9/doc/arm/Bv9ARM.ch08.html#3 integrate .. //depot/projects/hammer/contrib/bind9/doc/arm/Bv9ARM.ch09.html#3 integrate .. //depot/projects/hammer/contrib/bind9/doc/arm/Bv9ARM.html#3 integrate .. //depot/projects/hammer/contrib/bind9/doc/arm/Bv9ARM.pdf#1 branch .. //depot/projects/hammer/contrib/bind9/doc/arm/Makefile.in#2 integrate .. //depot/projects/hammer/contrib/bind9/doc/arm/isc.color.gif#2 delete .. //depot/projects/hammer/contrib/bind9/doc/arm/nominum-docbook-html.dsl.in#2 delete .. //depot/projects/hammer/contrib/bind9/doc/arm/nominum-docbook-print.dsl.in#2 delete .. //depot/projects/hammer/contrib/bind9/doc/arm/validate.sh.in#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-2929bis-01.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-dhcid-rr-08.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-dhcid-rr-09.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-dns-name-p-s-00.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-bis-updates-01.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-experiments-01.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-intro-11.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-online-signing-00.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-opt-in-07.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-protocol-07.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-records-09.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-dnssec-trans-02.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-ecc-key-07.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-insensitive-04.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-insensitive-06.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-interop3597-01.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-interop3597-02.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-mdns-33.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-mdns-43.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-nsec3-02.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-rfc2536bis-dsa-06.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-rfc2538bis-04.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-rfc2539bis-dhk-06.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-signed-nonexistence-requirements-01.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-tkey-renewal-mode-04.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-tkey-renewal-mode-05.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-trustupdate-threshold-00.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-trustupdate-timers-01.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-tsig-sha-00.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-tsig-sha-04.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-wcard-clarify-02.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsext-wcard-clarify-08.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-bad-dns-res-02.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-bad-dns-res-04.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-dnssec-operational-practices-01.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-dnssec-operational-practices-04.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-inaddr-required-07.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-ipv6-dns-configuration-02.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-ipv6-dns-configuration-06.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-ipv6-dns-issues-09.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-ipv6-dns-issues-11.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-key-rollover-requirements-01.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-key-rollover-requirements-02.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-misbehavior-against-aaaa-00.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-respsize-01.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-respsize-02.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-serverid-02.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-dnsop-serverid-04.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/draft/draft-ietf-ipseckey-rr-09.txt#2 delete .. //depot/projects/hammer/contrib/bind9/doc/misc/options#3 integrate .. //depot/projects/hammer/contrib/bind9/doc/rfc/index#2 integrate .. //depot/projects/hammer/contrib/bind9/doc/rfc/rfc3757.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/rfc/rfc3901.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/rfc/rfc4025.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/rfc/rfc4033.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/rfc/rfc4034.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/rfc/rfc4035.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/rfc/rfc4074.txt#1 branch .. //depot/projects/hammer/contrib/bind9/doc/rfc/rfc4159.txt#1 branch .. //depot/projects/hammer/contrib/bind9/lib/bind/Makefile.in#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/api#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/config.h.in#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/configure#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/configure.in#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/dst/dst_api.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/dst/hmac_link.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/dst/md5.h#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/dst/md5_dgst.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/dst/support.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/include/isc/eventlib.h#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/include/resolv.h#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/include/resolv_mt.h#1 branch .. //depot/projects/hammer/contrib/bind9/lib/bind/inet/inet_cidr_ntop.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/inet/inet_ntop.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/inet/inet_pton.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/inet/nsap_addr.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/irs/dns_ho.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/irs/getaddrinfo.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/irs/gethostent_r.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/irs/getnetent_r.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/irs/getnetgrent_r.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/irs/hesiod.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/isc/ev_connects.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/isc/ev_files.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/isc/eventlib.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/isc/eventlib_p.h#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/isc/memcluster.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/nameser/ns_parse.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/nameser/ns_ttl.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/nameser/ns_verify.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/port_after.h.in#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/port_before.h.in#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/resolv/Makefile.in#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/resolv/mtctxres.c#1 branch .. //depot/projects/hammer/contrib/bind9/lib/bind/resolv/res_comp.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/resolv/res_debug.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/resolv/res_findzonecut.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/resolv/res_init.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/resolv/res_mkupdate.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/resolv/res_send.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind/resolv/res_sendsigned.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind9/api#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind9/check.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/bind9/getaddresses.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/adb.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/api#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/cache.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/forward.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/gen-unix.h#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/include/dns/forward.h#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/include/dns/masterdump.h#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/include/dns/rdataset.h#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/include/dns/validator.h#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/journal.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/key.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/message.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/name.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/rbt.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/rbtdb.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/rdata.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/rdata/any_255/tsig_250.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/rdata/generic/ds_43.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/rdata/generic/rt_21.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/resolver.c#4 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/tkey.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/tsig.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/validator.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/xfrin.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/dns/zone.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/api#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/include/isc/Makefile.in#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/include/isc/netaddr.h#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/include/isc/print.h#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/include/isc/quota.h#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/include/isc/sockaddr.h#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/include/isc/timer.h#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/inet_pton.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/lfsr.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/mem.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/nls/msgcat.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/pthreads/mutex.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/quota.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/result.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/rwlock.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/timer.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/unix/entropy.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/unix/ifiter_ioctl.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/unix/ifiter_sysctl.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/unix/net.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/unix/os.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/unix/socket.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/isc/unix/stdtime.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/isccfg/api#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/isccfg/namedconf.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/Makefile.in#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/api#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/getaddrinfo.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/getipnode.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/include/lwres/platform.h.in#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/include/lwres/stdlib.h#1 branch .. //depot/projects/hammer/contrib/bind9/lib/lwres/lwconfig.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/lwinetntop.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/lwinetpton.c#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_buffer.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_buffer.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_buffer.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_config.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_config.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_config.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_context.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_context.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_context.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_gabn.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_gabn.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_gabn.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_gai_strerror.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_gai_strerror.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_gai_strerror.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_getaddrinfo.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_getaddrinfo.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_getaddrinfo.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_gethostent.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_gethostent.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_gethostent.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_getipnode.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_getipnode.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_getipnode.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_getnameinfo.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_getnameinfo.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_getnameinfo.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_getrrsetbyname.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_getrrsetbyname.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_getrrsetbyname.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_gnba.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_gnba.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_gnba.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_hstrerror.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_hstrerror.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_hstrerror.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_inetntop.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_inetntop.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_inetntop.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_noop.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_noop.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_noop.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_packet.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_packet.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_packet.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_resutil.3#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_resutil.docbook#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/man/lwres_resutil.html#2 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/print.c#3 integrate .. //depot/projects/hammer/contrib/bind9/lib/lwres/strtoul.c#1 branch .. //depot/projects/hammer/contrib/bind9/make/rules.in#2 integrate .. //depot/projects/hammer/contrib/bind9/version#4 integrate .. //depot/projects/hammer/contrib/bsnmp/gensnmptree/gensnmptree.c#8 integrate .. //depot/projects/hammer/contrib/bsnmp/snmp_mibII/mibII.c#9 integrate .. //depot/projects/hammer/contrib/bsnmp/snmpd/config.c#6 integrate .. //depot/projects/hammer/contrib/bsnmp/snmpd/main.c#10 integrate .. //depot/projects/hammer/contrib/bsnmp/snmpd/snmpd.config#6 integrate .. //depot/projects/hammer/contrib/cpio/doc/cpio.1#2 integrate .. //depot/projects/hammer/contrib/cpio/doc/cpio.texi#2 integrate .. //depot/projects/hammer/contrib/cpio/src/copyin.c#2 integrate .. //depot/projects/hammer/contrib/cpio/src/copyout.c#2 integrate .. //depot/projects/hammer/contrib/cpio/src/copypass.c#2 integrate .. //depot/projects/hammer/contrib/cpio/src/extern.h#2 integrate .. //depot/projects/hammer/contrib/cpio/src/global.c#2 integrate .. //depot/projects/hammer/contrib/cpio/src/main.c#2 integrate .. //depot/projects/hammer/contrib/groff/tmac/doc-common#13 integrate .. //depot/projects/hammer/contrib/groff/tmac/groff_mdoc.man#11 integrate .. //depot/projects/hammer/contrib/ipfilter/BSD/Makefile#5 integrate .. //depot/projects/hammer/contrib/ipfilter/BSD/Makefile.ipsend#3 integrate .. //depot/projects/hammer/contrib/ipfilter/BSD/kupgrade#5 integrate .. //depot/projects/hammer/contrib/ipfilter/HISTORY#6 integrate .. //depot/projects/hammer/contrib/ipfilter/Makefile#6 integrate .. //depot/projects/hammer/contrib/ipfilter/bpf_filter.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/ipf.h#4 integrate .. //depot/projects/hammer/contrib/ipfilter/iplang/iplang_l.l#4 integrate .. //depot/projects/hammer/contrib/ipfilter/iplang/iplang_y.y#4 integrate .. //depot/projects/hammer/contrib/ipfilter/ipmon.h#2 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsd/ipsd.c#3 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsd/ipsdr.c#3 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/arp.c#4 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/ip.c#4 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/ipresend.c#4 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/ipsend.c#5 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/ipsopt.c#5 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/iptest.c#4 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/iptests.c#4 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/larp.c#3 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/lsock.c#4 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/resend.c#4 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/sbpf.c#3 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/sdlpi.c#3 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/slinux.c#3 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/snit.c#3 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/sock.c#4 integrate .. //depot/projects/hammer/contrib/ipfilter/ipsend/tcpip.h#3 integrate .. //depot/projects/hammer/contrib/ipfilter/ipt.h#3 integrate .. //depot/projects/hammer/contrib/ipfilter/kmem.h#3 integrate .. //depot/projects/hammer/contrib/ipfilter/l4check/http.ok#3 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/Makefile#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/addicmp.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/addipopt.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/addkeep.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/binprint.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/buildopts.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/checkrev.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/count4bits.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/count6bits.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/debug.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/extras.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/facpri.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/facpri.h#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/fill6bits.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/flags.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/genmask.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/getline.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/getnattype.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/getproto.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/hostmask.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/hostnum.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/icmpcode.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/inet_addr.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/initparse.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/ionames.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/ipft_ef.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/ipft_hx.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/ipft_pc.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/ipft_sn.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/ipft_td.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/ipft_tx.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/ipoptsec.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/kmem.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/kmem.h#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/load_hash.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/load_hashnode.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/load_pool.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/load_poolnode.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/loglevel.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/make_range.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/nat_setgroupmap.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/natparse.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/optname.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/optprint.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/optprintv6.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/optvalue.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/parse.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/portname.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/portnum.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/ports.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/print_toif.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/printactivenat.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/printaps.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/printbuf.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/printfr.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/printfraginfo.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/printhostmap.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/printhostmask.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/printifname.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/printip.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/printlog.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/printmask.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/printnat.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/printpacket.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/printportcmp.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/printproto.c#1 branch .. //depot/projects/hammer/contrib/ipfilter/lib/printstate.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/ratoi.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/ratoui.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/remove_hash.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/remove_hashnode.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/remove_pool.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/remove_poolnode.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/tcp_flags.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/tcpflags.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/tcpoptnames.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/to_interface.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/v6ionames.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/v6optvalue.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/lib/verbose.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/man/ipf.5#5 integrate .. //depot/projects/hammer/contrib/ipfilter/man/ipftest.1#4 integrate .. //depot/projects/hammer/contrib/ipfilter/man/ipmon.8#7 integrate .. //depot/projects/hammer/contrib/ipfilter/man/ipnat.5#6 integrate .. //depot/projects/hammer/contrib/ipfilter/man/ipnat.8#4 integrate .. //depot/projects/hammer/contrib/ipfilter/mlfk_rule.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/opts.h#2 integrate .. //depot/projects/hammer/contrib/ipfilter/perl/ipf-mrtg.pl#3 integrate .. //depot/projects/hammer/contrib/ipfilter/perl/logfilter.pl#3 integrate .. //depot/projects/hammer/contrib/ipfilter/radix.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/radix_ipf.h#2 integrate .. //depot/projects/hammer/contrib/ipfilter/rules/example.1#3 integrate .. //depot/projects/hammer/contrib/ipfilter/rules/example.10#3 integrate .. //depot/projects/hammer/contrib/ipfilter/rules/example.11#3 integrate .. //depot/projects/hammer/contrib/ipfilter/rules/example.12#3 integrate .. //depot/projects/hammer/contrib/ipfilter/rules/example.13#3 integrate .. //depot/projects/hammer/contrib/ipfilter/rules/example.2#3 integrate .. //depot/projects/hammer/contrib/ipfilter/rules/example.3#3 integrate .. //depot/projects/hammer/contrib/ipfilter/rules/example.4#3 integrate .. //depot/projects/hammer/contrib/ipfilter/rules/example.5#3 integrate .. //depot/projects/hammer/contrib/ipfilter/rules/example.6#3 integrate .. //depot/projects/hammer/contrib/ipfilter/rules/example.7#3 integrate .. //depot/projects/hammer/contrib/ipfilter/rules/example.8#3 integrate .. //depot/projects/hammer/contrib/ipfilter/rules/example.9#4 integrate .. //depot/projects/hammer/contrib/ipfilter/rules/example.sr#3 integrate .. //depot/projects/hammer/contrib/ipfilter/samples/ipfilter-pb.gif#3 integrate .. //depot/projects/hammer/contrib/ipfilter/samples/proxy.c#3 integrate .. //depot/projects/hammer/contrib/ipfilter/samples/relay.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/snoop.h#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/Makefile#5 integrate .. //depot/projects/hammer/contrib/ipfilter/test/dotest#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/bpf1#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/f13#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/f17#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/f18#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/expected/f19#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/expected/f7#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/f9#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/i1#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/i11#4 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/i12#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/i14#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/i16#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/expected/i17#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/expected/i18#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/expected/i19#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/expected/i2#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/i20#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/expected/i21#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/expected/i4#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/i6#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/i7#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/i8#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/i9#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/in1#4 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/in2#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/in5#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/in6#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/n1#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/n11#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/n13#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/expected/n14#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/expected/n2#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/n3#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/n4#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/n5#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/n6#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/n7#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/p1#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/p2#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/expected/p3#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/input/f13#5 integrate .. //depot/projects/hammer/contrib/ipfilter/test/input/f17#4 integrate .. //depot/projects/hammer/contrib/ipfilter/test/input/f18#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/input/f19#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/input/f7#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/input/f9#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/input/n13#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/input/n14#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/input/ni17#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/itest#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/natipftest#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/bpf1#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/f13#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/f18#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/regress/f19#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/regress/f7#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/i1#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/i11#4 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/i12#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/i14#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/i16#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/regress/i17#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/regress/i18#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/regress/i19#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/regress/i2#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/i20#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/regress/i21#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/regress/i4#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/i6#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/i7#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/i8#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/i9#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/in1#4 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/in2#3 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/in5#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/in6#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/regress/n13#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/regress/n14#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/regress/ni17.nat#1 branch .. //depot/projects/hammer/contrib/ipfilter/test/regress/p2.ipf#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/test.format#2 integrate .. //depot/projects/hammer/contrib/ipfilter/test/vfycksum.pl#3 integrate .. //depot/projects/hammer/contrib/ipfilter/tools/ipf.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/tools/ipf_y.y#3 integrate .. //depot/projects/hammer/contrib/ipfilter/tools/ipfcomp.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/tools/ipfstat.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/tools/ipftest.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/tools/ipmon.c#4 integrate .. //depot/projects/hammer/contrib/ipfilter/tools/ipnat.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/tools/ipnat_y.y#2 integrate .. //depot/projects/hammer/contrib/ipfilter/tools/ipsyncm.c#2 integrate .. //depot/projects/hammer/contrib/ipfilter/tools/ipsyncs.c#2 integrate .. //depot/projects/hammer/contrib/pf/authpf/authpf.c#5 integrate .. //depot/projects/hammer/contrib/texinfo/util/texindex.c#5 integrate .. //depot/projects/hammer/contrib/traceroute/traceroute.c#5 integrate .. //depot/projects/hammer/crypto/heimdal/lib/gssapi/gssapi_locl.h#4 integrate .. //depot/projects/hammer/crypto/openssh/sshd.c#12 integrate .. //depot/projects/hammer/etc/Makefile#46 integrate .. //depot/projects/hammer/etc/defaults/periodic.conf#14 integrate .. //depot/projects/hammer/etc/defaults/rc.conf#66 integrate .. //depot/projects/hammer/etc/gss/Makefile#1 branch .. //depot/projects/hammer/etc/gss/mech#1 branch .. //depot/projects/hammer/etc/gss/qop#1 branch .. //depot/projects/hammer/etc/mtree/BSD.include.dist#38 integrate .. //depot/projects/hammer/etc/mtree/BSD.local.dist#26 integrate .. //depot/projects/hammer/etc/mtree/BSD.root.dist#16 integrate .. //depot/projects/hammer/etc/mtree/BSD.x11.dist#4 integrate .. //depot/projects/hammer/etc/periodic/daily/406.status-gmirror#1 branch .. //depot/projects/hammer/etc/rc.d/abi#6 integrate .. //depot/projects/hammer/etc/rc.d/amd#10 integrate .. //depot/projects/hammer/etc/rc.d/cleartmp#12 integrate .. //depot/projects/hammer/etc/rc.d/ldconfig#12 integrate .. //depot/projects/hammer/etc/rc.d/mountcritremote#11 integrate .. //depot/projects/hammer/etc/rc.d/newsyslog#4 integrate .. //depot/projects/hammer/etc/rc.d/ntpd#9 integrate .. //depot/projects/hammer/etc/rc.d/ntpdate#12 integrate .. //depot/projects/hammer/etc/rc.d/power_profile#8 integrate .. //depot/projects/hammer/etc/rc.d/syslogd#7 integrate .. //depot/projects/hammer/etc/rc.initdiskless#6 integrate .. //depot/projects/hammer/etc/snmpd.config#2 integrate .. //depot/projects/hammer/games/fortune/datfiles/fortunes#56 integrate .. //depot/projects/hammer/games/fortune/datfiles/limerick#6 integrate .. //depot/projects/hammer/gnu/usr.bin/cvs/cvs/Makefile#12 integrate .. //depot/projects/hammer/gnu/usr.bin/gdb/kgdb/main.c#11 integrate .. //depot/projects/hammer/gnu/usr.bin/groff/tmac/mdoc.local#25 integrate .. //depot/projects/hammer/include/Makefile#53 integrate .. //depot/projects/hammer/include/gssapi.h#1 branch .. //depot/projects/hammer/include/gssapi/Makefile#1 branch .. //depot/projects/hammer/include/gssapi/gssapi.h#1 branch .. //depot/projects/hammer/include/stdlib.h#13 integrate .. //depot/projects/hammer/kerberos5/lib/libgssapi/Makefile#6 integrate .. //depot/projects/hammer/lib/Makefile#53 integrate .. //depot/projects/hammer/lib/bind/bind/config.h#3 integrate .. //depot/projects/hammer/lib/bind/bind/port_after.h#2 integrate .. //depot/projects/hammer/lib/bind/bind/port_before.h#2 integrate .. //depot/projects/hammer/lib/bind/config.h#4 integrate .. //depot/projects/hammer/lib/bind/isc/isc/platform.h#3 integrate .. //depot/projects/hammer/lib/bind/lwres/lwres/platform.h#2 integrate .. //depot/projects/hammer/lib/libc/Makefile#22 integrate .. //depot/projects/hammer/lib/libc/gen/valloc.3#3 integrate .. //depot/projects/hammer/lib/libc/gen/valloc.c#2 integrate .. //depot/projects/hammer/lib/libc/gmon/gmon.c#8 integrate .. //depot/projects/hammer/lib/libc/include/libc_private.h#7 integrate .. //depot/projects/hammer/lib/libc/rpc/netconfig.5#2 integrate .. //depot/projects/hammer/lib/libc/stdio/xprintf_int.c#2 integrate .. //depot/projects/hammer/lib/libc/stdlib/Makefile.inc#13 integrate .. //depot/projects/hammer/lib/libc/stdlib/a64l.3#1 branch .. //depot/projects/hammer/lib/libc/stdlib/a64l.c#1 branch .. //depot/projects/hammer/lib/libc/stdlib/calloc.c#2 delete .. //depot/projects/hammer/lib/libc/stdlib/l64a.c#1 branch .. //depot/projects/hammer/lib/libc/stdlib/malloc.c#19 integrate .. //depot/projects/hammer/lib/libc/stdlib/posix_memalign.3#1 branch .. //depot/projects/hammer/lib/libc/sys/Makefile.inc#20 integrate .. //depot/projects/hammer/lib/libc/sys/abort2.2#1 branch .. //depot/projects/hammer/lib/libc/sys/open.2#7 integrate .. //depot/projects/hammer/lib/libc/sys/stat.2#11 integrate .. //depot/projects/hammer/lib/libc/sys/statfs.2#7 integrate .. //depot/projects/hammer/lib/libc/sys/utimes.2#3 integrate .. //depot/projects/hammer/lib/libdisk/Makefile#10 integrate .. //depot/projects/hammer/lib/libgssapi/Makefile#1 branch .. //depot/projects/hammer/lib/libgssapi/context.h#1 branch .. //depot/projects/hammer/lib/libgssapi/cred.h#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_accept_sec_context.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_accept_sec_context.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_acquire_cred.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_acquire_cred.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_add_cred.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_add_cred.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_add_oid_set_member.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_add_oid_set_member.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_canonicalize_name.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_canonicalize_name.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_compare_name.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_compare_name.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_context_time.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_context_time.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_create_empty_oid_set.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_create_empty_oid_set.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_delete_sec_context.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_delete_sec_context.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_display_name.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_display_name.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_display_status.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_display_status.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_duplicate_name.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_duplicate_name.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_export_name.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_export_name.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_export_sec_context.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_export_sec_context.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_get_mic.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_get_mic.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_import_name.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_import_name.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_import_sec_context.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_import_sec_context.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_indicate_mechs.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_indicate_mechs.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_init_sec_context.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_init_sec_context.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_inquire_context.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_inquire_context.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_inquire_cred.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_inquire_cred.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_inquire_cred_by_mech.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_inquire_cred_by_mech.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_inquire_mechs_for_name.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_inquire_mechs_for_name.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_inquire_names_for_mech.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_inquire_names_for_mech.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_krb5.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_mech_switch.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_names.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_process_context_token.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_process_context_token.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_release_buffer.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_release_buffer.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_release_cred.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_release_cred.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_release_name.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_release_name.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_release_oid_set.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_release_oid_set.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_seal.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_sign.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_test_oid_set_member.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_test_oid_set_member.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_unseal.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_unwrap.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_unwrap.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_utils.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_verify.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_verify_mic.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_verify_mic.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_wrap.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_wrap.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_wrap_size_limit.3#1 branch .. //depot/projects/hammer/lib/libgssapi/gss_wrap_size_limit.c#1 branch .. //depot/projects/hammer/lib/libgssapi/gssapi.3#1 branch .. //depot/projects/hammer/lib/libgssapi/mech.5#1 branch .. //depot/projects/hammer/lib/libgssapi/mech_switch.h#1 branch .. //depot/projects/hammer/lib/libgssapi/name.h#1 branch .. //depot/projects/hammer/lib/libgssapi/spnego.h#1 branch .. //depot/projects/hammer/lib/libgssapi/utils.h#1 branch .. //depot/projects/hammer/lib/libnetgraph/msg.c#6 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_fork.c#6 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_kern.c#39 integrate .. //depot/projects/hammer/lib/libpthread/thread/thr_spinlock.c#12 integrate .. //depot/projects/hammer/lib/libthr/Makefile#15 integrate .. //depot/projects/hammer/lib/libthr/arch/i386/i386/pthread_md.c#5 integrate .. //depot/projects/hammer/lib/libthr/pthread.map#7 integrate .. //depot/projects/hammer/lib/libthr/thread/Makefile.inc#11 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_attr.c#4 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_create.c#20 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_exit.c#17 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_fork.c#2 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_info.c#4 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_init.c#18 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_list.c#3 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_mutex.c#25 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_private.h#28 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_resume_np.c#7 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_sig.c#11 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_spinlock.c#10 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_suspend_np.c#4 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_timer.c#2 integrate .. //depot/projects/hammer/lib/libthr/thread/thr_umtx.h#3 integrate .. //depot/projects/hammer/lib/libutil/login_class.3#5 integrate .. //depot/projects/hammer/lib/msun/src/s_cbrt.c#5 integrate .. //depot/projects/hammer/lib/msun/src/s_cbrtf.c#5 integrate .. //depot/projects/hammer/libexec/atrun/atrun.c#3 integrate .. //depot/projects/hammer/libexec/bootpd/bootpd.c#6 integrate .. //depot/projects/hammer/libexec/rtld-elf/malloc.c#6 integrate .. //depot/projects/hammer/libexec/rtld-elf/rtld.c#33 integrate .. //depot/projects/hammer/release/Makefile#80 integrate .. //depot/projects/hammer/release/doc/share/misc/dev.archlist.txt#35 integrate .. //depot/projects/hammer/sbin/devd/devd.cc#19 integrate .. //depot/projects/hammer/sbin/devfs/rule.c#5 integrate .. //depot/projects/hammer/sbin/dhclient/dhclient-script#5 integrate .. //depot/projects/hammer/sbin/dhclient/dhclient.8#4 integrate .. //depot/projects/hammer/sbin/dhclient/dhclient.c#10 integrate .. //depot/projects/hammer/sbin/dump/dump.8#15 integrate .. //depot/projects/hammer/sbin/dumpon/dumpon.8#8 integrate .. //depot/projects/hammer/sbin/ifconfig/ifconfig.8#34 integrate .. //depot/projects/hammer/sbin/ifconfig/ifieee80211.c#21 integrate .. //depot/projects/hammer/sbin/ifconfig/ifmedia.c#9 integrate .. //depot/projects/hammer/sbin/ipf/libipf/Makefile#2 integrate .. //depot/projects/hammer/sbin/ipfw/ipfw.8#51 integrate .. //depot/projects/hammer/sbin/mdconfig/mdconfig.c#22 integrate .. //depot/projects/hammer/sbin/mdmfs/mdmfs.8#11 integrate .. //depot/projects/hammer/sbin/mdmfs/mdmfs.c#16 integrate .. //depot/projects/hammer/sbin/mount/mount.8#18 integrate .. //depot/projects/hammer/sbin/mount_nfs/mount_nfs.8#11 integrate .. //depot/projects/hammer/sbin/routed/if.c#7 integrate .. //depot/projects/hammer/sbin/setkey/setkey.8#2 integrate .. //depot/projects/hammer/secure/lib/libssh/Makefile#14 integrate .. //depot/projects/hammer/secure/usr.bin/ssh/Makefile#10 integrate .. //depot/projects/hammer/secure/usr.sbin/sshd/Makefile#12 integrate .. //depot/projects/hammer/share/man/man3/Makefile#13 integrate .. //depot/projects/hammer/share/man/man3/tree.3#5 integrate .. //depot/projects/hammer/share/man/man4/Makefile#80 integrate .. //depot/projects/hammer/share/man/man4/agp.4#6 integrate .. //depot/projects/hammer/share/man/man4/amdsmb.4#1 branch .. //depot/projects/hammer/share/man/man4/ata.4#22 integrate .. //depot/projects/hammer/share/man/man4/devctl.4#2 integrate .. //depot/projects/hammer/share/man/man4/gbde.4#4 integrate .. //depot/projects/hammer/share/man/man4/geom_fox.4#1 branch .. //depot/projects/hammer/share/man/man4/hwpmc.4#11 integrate .. //depot/projects/hammer/share/man/man4/if_bridge.4#7 integrate .. //depot/projects/hammer/share/man/man4/man4.i386/amdpm.4#3 integrate .. //depot/projects/hammer/share/man/man4/man4.i386/cs.4#7 integrate .. //depot/projects/hammer/share/man/man4/man4.i386/linux.4#5 integrate .. //depot/projects/hammer/share/man/man4/mpt.4#7 integrate .. //depot/projects/hammer/share/man/man4/nfsmb.4#1 branch .. //depot/projects/hammer/share/man/man4/ng_source.4#9 integrate .. //depot/projects/hammer/share/man/man4/snd_atiixp.4#2 integrate .. //depot/projects/hammer/share/man/man4/snd_maestro3.4#6 integrate .. //depot/projects/hammer/share/man/man4/ufoma.4#1 branch .. //depot/projects/hammer/share/man/man4/unix.4#6 integrate .. //depot/projects/hammer/share/man/man4/usb.4#10 integrate .. //depot/projects/hammer/share/man/man4/uscanner.4#14 integrate .. //depot/projects/hammer/share/man/man5/rc.conf.5#68 integrate .. //depot/projects/hammer/share/man/man7/release.7#29 integrate .. //depot/projects/hammer/share/man/man8/diskless.8#14 integrate .. //depot/projects/hammer/share/man/man9/Makefile#59 integrate .. //depot/projects/hammer/share/man/man9/VFS_LOCK_GIANT.9#4 integrate .. //depot/projects/hammer/share/man/man9/device_add_child.9#9 integrate .. //depot/projects/hammer/share/man/man9/ktr.9#8 integrate .. //depot/projects/hammer/share/man/man9/memguard.9#2 integrate .. //depot/projects/hammer/share/man/man9/sbuf.9#7 integrate .. //depot/projects/hammer/share/man/man9/sleep.9#9 integrate .. //depot/projects/hammer/share/man/man9/usbdi.9#1 branch .. //depot/projects/hammer/share/misc/bsd-family-tree#30 integrate .. //depot/projects/hammer/share/zoneinfo/africa#3 integrate .. //depot/projects/hammer/share/zoneinfo/antarctica#4 integrate .. //depot/projects/hammer/share/zoneinfo/asia#7 integrate .. //depot/projects/hammer/share/zoneinfo/australasia#6 integrate .. //depot/projects/hammer/share/zoneinfo/backward#5 integrate .. //depot/projects/hammer/share/zoneinfo/europe#7 integrate .. //depot/projects/hammer/share/zoneinfo/northamerica#7 integrate .. //depot/projects/hammer/share/zoneinfo/southamerica#8 integrate .. //depot/projects/hammer/share/zoneinfo/systemv#2 integrate .. //depot/projects/hammer/sys/Makefile#10 integrate .. //depot/projects/hammer/sys/alpha/alpha/clock.c#12 integrate .. //depot/projects/hammer/sys/alpha/alpha/cpuconf.c#5 integrate .. //depot/projects/hammer/sys/alpha/alpha/elf_machdep.c#15 integrate .. //depot/projects/hammer/sys/alpha/alpha/interrupt.c#22 integrate .. //depot/projects/hammer/sys/alpha/conf/GENERIC#33 integrate .. //depot/projects/hammer/sys/alpha/include/_types.h#6 integrate .. //depot/projects/hammer/sys/alpha/include/cpu.h#11 integrate .. //depot/projects/hammer/sys/alpha/include/cpuconf.h#4 integrate .. //depot/projects/hammer/sys/alpha/include/param.h#14 integrate .. //depot/projects/hammer/sys/alpha/linux/linux_sysvec.c#14 integrate .. //depot/projects/hammer/sys/amd64/amd64/bpf_jit_machdep.c#2 integrate .. //depot/projects/hammer/sys/amd64/amd64/db_trace.c#35 integrate .. //depot/projects/hammer/sys/amd64/amd64/elf_machdep.c#34 integrate .. //depot/projects/hammer/sys/amd64/amd64/identcpu.c#48 integrate .. //depot/projects/hammer/sys/amd64/amd64/local_apic.c#63 integrate .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#113 integrate .. //depot/projects/hammer/sys/amd64/amd64/mptable_pci.c#11 integrate .. //depot/projects/hammer/sys/amd64/amd64/trap.c#84 integrate .. //depot/projects/hammer/sys/amd64/conf/GENERIC#86 integrate .. //depot/projects/hammer/sys/amd64/include/_types.h#16 integrate .. //depot/projects/hammer/sys/amd64/include/apicvar.h#39 integrate .. //depot/projects/hammer/sys/amd64/include/clock.h#19 integrate .. //depot/projects/hammer/sys/amd64/include/cpu.h#18 integrate .. //depot/projects/hammer/sys/amd64/include/frame.h#16 integrate .. //depot/projects/hammer/sys/amd64/include/param.h#33 integrate .. //depot/projects/hammer/sys/amd64/include/smp.h#30 integrate .. //depot/projects/hammer/sys/amd64/isa/clock.c#55 integrate .. //depot/projects/hammer/sys/amd64/linux32/linux32_sysvec.c#11 integrate .. //depot/projects/hammer/sys/amd64/pci/pci_bus.c#32 integrate .. //depot/projects/hammer/sys/arm/arm/elf_machdep.c#6 integrate .. //depot/projects/hammer/sys/arm/arm/identcpu.c#6 integrate .. //depot/projects/hammer/sys/arm/arm/intr.c#12 integrate .. //depot/projects/hammer/sys/arm/arm/locore.S#13 integrate .. //depot/projects/hammer/sys/arm/arm/trap.c#15 integrate .. //depot/projects/hammer/sys/arm/include/_types.h#6 integrate .. //depot/projects/hammer/sys/arm/include/cpu.h#5 integrate .. //depot/projects/hammer/sys/arm/include/frame.h#4 integrate .. //depot/projects/hammer/sys/arm/include/param.h#8 integrate .. //depot/projects/hammer/sys/arm/sa11x0/sa11x0_ost.c#4 integrate .. //depot/projects/hammer/sys/arm/xscale/i80321/i80321_timer.c#8 integrate .. //depot/projects/hammer/sys/arm/xscale/i80321/iq31244_machdep.c#17 integrate .. //depot/projects/hammer/sys/boot/common/module.c#4 integrate .. //depot/projects/hammer/sys/boot/i386/libi386/biosmem.c#4 integrate .. //depot/projects/hammer/sys/boot/i386/libi386/i386_copy.c#4 integrate .. //depot/projects/hammer/sys/boot/i386/libi386/libi386.h#11 integrate .. //depot/projects/hammer/sys/boot/i386/loader/main.c#12 integrate .. //depot/projects/hammer/sys/boot/pc98/libpc98/Makefile#9 integrate .. //depot/projects/hammer/sys/boot/pc98/libpc98/biosdisk.c#9 integrate .. //depot/projects/hammer/sys/boot/pc98/libpc98/biosmem.c#5 integrate .. //depot/projects/hammer/sys/boot/pc98/loader/main.c#8 integrate .. //depot/projects/hammer/sys/cam/cam_periph.c#18 integrate .. //depot/projects/hammer/sys/cam/cam_xpt.c#24 integrate .. //depot/projects/hammer/sys/cam/scsi/scsi_da.c#31 integrate .. //depot/projects/hammer/sys/coda/coda_vfsops.c#19 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_proto.h#38 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_syscall.h#36 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_syscalls.c#36 integrate .. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_sysent.c#36 integrate .. //depot/projects/hammer/sys/compat/freebsd32/syscalls.master#40 integrate .. //depot/projects/hammer/sys/compat/ia32/ia32_sysvec.c#17 integrate .. //depot/projects/hammer/sys/compat/linux/linux_misc.c#32 integrate .. //depot/projects/hammer/sys/compat/linux/linux_socket.c#22 integrate .. //depot/projects/hammer/sys/conf/Makefile.arm#17 integrate .. //depot/projects/hammer/sys/conf/NOTES#103 integrate .. //depot/projects/hammer/sys/conf/files#134 integrate .. //depot/projects/hammer/sys/conf/options#91 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/fil.c#12 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_auth.c#8 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_compat.h#11 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_fil.h#9 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c#3 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_frag.c#7 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_frag.h#5 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_ftp_pxy.c#6 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_htable.c#3 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_htable.h#2 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_ipsec_pxy.c#3 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_irc_pxy.c#2 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_log.c#9 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_lookup.c#2 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_lookup.h#2 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_nat.c#7 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_nat.h#7 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_netbios_pxy.c#3 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_pool.c#2 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_pool.h#2 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_pptp_pxy.c#2 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_proxy.c#6 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_proxy.h#5 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c#4 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_rcmd_pxy.c#5 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_rpcb_pxy.c#2 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_scan.c#2 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_scan.h#2 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_state.c#8 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_state.h#6 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_sync.c#3 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ip_sync.h#2 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/ipl.h#6 integrate .. //depot/projects/hammer/sys/contrib/ipfilter/netinet/mlfk_ipl.c#8 integrate .. //depot/projects/hammer/sys/contrib/pf/net/pf.c#27 integrate .. //depot/projects/hammer/sys/contrib/pf/net/pf_norm.c#10 integrate .. //depot/projects/hammer/sys/contrib/pf/net/pfvar.h#12 integrate .. //depot/projects/hammer/sys/dev/aac/aac.c#36 integrate .. //depot/projects/hammer/sys/dev/acpica/Osd/OsdSynch.c#11 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi_pci.c#21 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi_pci_link.c#33 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi_pcib_acpi.c#20 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi_pcib_pci.c#11 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi_smbat.c#3 integrate .. //depot/projects/hammer/sys/dev/acpica/acpi_video.c#11 integrate .. //depot/projects/hammer/sys/dev/amr/amr.c#28 integrate .. //depot/projects/hammer/sys/dev/ata/ata-all.c#56 integrate .. //depot/projects/hammer/sys/dev/ata/ata-all.h#36 integrate .. //depot/projects/hammer/sys/dev/ata/ata-card.c#25 integrate .. //depot/projects/hammer/sys/dev/ata/ata-cbus.c#13 integrate .. //depot/projects/hammer/sys/dev/ata/ata-chipset.c#66 integrate .. //depot/projects/hammer/sys/dev/ata/ata-disk.c#37 integrate .. //depot/projects/hammer/sys/dev/ata/ata-disk.h#8 integrate .. //depot/projects/hammer/sys/dev/ata/ata-dma.c#25 integrate .. //depot/projects/hammer/sys/dev/ata/ata-isa.c#14 integrate .. //depot/projects/hammer/sys/dev/ata/ata-lowlevel.c#34 integrate .. //depot/projects/hammer/sys/dev/ata/ata-pci.c#35 integrate .. //depot/projects/hammer/sys/dev/ata/ata-pci.h#38 integrate .. //depot/projects/hammer/sys/dev/ata/ata-queue.c#28 integrate .. //depot/projects/hammer/sys/dev/ata/ata-raid.c#33 integrate .. //depot/projects/hammer/sys/dev/ata/ata-raid.h#19 integrate .. //depot/projects/hammer/sys/dev/ata/ata_if.m#3 integrate .. //depot/projects/hammer/sys/dev/ata/atapi-cd.c#32 integrate .. //depot/projects/hammer/sys/dev/ata/atapi-cd.h#9 integrate .. //depot/projects/hammer/sys/dev/ata/atapi-fd.c#17 integrate .. //depot/projects/hammer/sys/dev/ata/atapi-fd.h#7 integrate .. //depot/projects/hammer/sys/dev/ata/atapi-tape.c#20 integrate .. //depot/projects/hammer/sys/dev/ata/atapi-tape.h#7 integrate .. //depot/projects/hammer/sys/dev/ath/if_ath.c#40 integrate .. //depot/projects/hammer/sys/dev/ath/if_athioctl.h#10 integrate .. //depot/projects/hammer/sys/dev/ath/if_athvar.h#21 integrate .. //depot/projects/hammer/sys/dev/atkbdc/psm.c#3 integrate .. //depot/projects/hammer/sys/dev/bge/if_bge.c#61 integrate .. //depot/projects/hammer/sys/dev/bge/if_bgereg.h#30 integrate .. //depot/projects/hammer/sys/dev/cardbus/cardbus.c#22 integrate .. //depot/projects/hammer/sys/dev/cardbus/cardbus_cis.c#18 integrate .. //depot/projects/hammer/sys/dev/cardbus/cardbus_device.c#1 branch .. //depot/projects/hammer/sys/dev/cardbus/cardbusvar.h#8 integrate .. //depot/projects/hammer/sys/dev/dc/if_dc.c#6 integrate .. //depot/projects/hammer/sys/dev/dcons/dcons_os.c#8 integrate .. //depot/projects/hammer/sys/dev/drm/drm_agpsupport.c#4 integrate .. //depot/projects/hammer/sys/dev/drm/drm_drv.c#3 integrate .. //depot/projects/hammer/sys/dev/drm/i915_drv.c#3 integrate .. //depot/projects/hammer/sys/dev/drm/mach64_drv.c#3 integrate .. //depot/projects/hammer/sys/dev/drm/mga_drv.c#9 integrate .. //depot/projects/hammer/sys/dev/drm/r128_drv.c#9 integrate .. //depot/projects/hammer/sys/dev/drm/radeon_drv.c#10 integrate .. //depot/projects/hammer/sys/dev/drm/savage_drv.c#3 integrate .. //depot/projects/hammer/sys/dev/drm/sis_drv.c#7 integrate .. //depot/projects/hammer/sys/dev/drm/tdfx_drv.c#9 integrate .. //depot/projects/hammer/sys/dev/em/if_em.c#56 integrate .. //depot/projects/hammer/sys/dev/em/if_em.h#28 integrate .. //depot/projects/hammer/sys/dev/firewire/sbp.c#34 integrate .. //depot/projects/hammer/sys/dev/fxp/if_fxp.c#56 integrate .. //depot/projects/hammer/sys/dev/hwpmc/hwpmc_mod.c#10 integrate .. //depot/projects/hammer/sys/dev/hwpmc/hwpmc_piv.c#8 integrate .. //depot/projects/hammer/sys/dev/ichsmb/ichsmb.c#8 integrate .. //depot/projects/hammer/sys/dev/ips/ips_ioctl.h#2 integrate .. //depot/projects/hammer/sys/dev/ips/ipsreg.h#2 integrate .. //depot/projects/hammer/sys/dev/md/md.c#55 integrate .. //depot/projects/hammer/sys/dev/nmdm/nmdm.c#22 integrate .. //depot/projects/hammer/sys/dev/pccard/pccard.c#29 integrate .. //depot/projects/hammer/sys/dev/pccbb/pccbb.c#39 integrate .. //depot/projects/hammer/sys/dev/pccbb/pccbbreg.h#7 integrate .. //depot/projects/hammer/sys/dev/pci/hostb_pci.c#1 branch .. //depot/projects/hammer/sys/dev/pci/pci.c#51 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Jan 14 19:23:56 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 C07FE16A422; Sat, 14 Jan 2006 19:23:55 +0000 (GMT) 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 9824216A41F for ; Sat, 14 Jan 2006 19:23:55 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5CECE43D60 for ; Sat, 14 Jan 2006 19:23:54 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0EJNsTr098324 for ; Sat, 14 Jan 2006 19:23:54 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0EJNs9M098321 for perforce@freebsd.org; Sat, 14 Jan 2006 19:23:54 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 14 Jan 2006 19:23:54 GMT Message-Id: <200601141923.k0EJNs9M098321@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 89689 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: Sat, 14 Jan 2006 19:23:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=89689 Change 89689 by rwatson@rwatson_peppercorn on 2006/01/14 19:23:15 Correct comment typos. Affected files ... .. //depot/projects/trustedbsd/openbsm/libbsm/bsm_user.c#7 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/libbsm/bsm_user.c#7 (text+ko) ==== @@ -243,8 +243,8 @@ } /* - * Generate the process audit state by combining the audit maks passed as - * parameters with the sustem audit masks. + * Generate the process audit state by combining the audit masks passed as + * parameters with the system audit masks. */ int getfauditflags(au_mask_t *usremask, au_mask_t *usrdmask, au_mask_t *lastmask) From owner-p4-projects@FreeBSD.ORG Sat Jan 14 19:25:58 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 D22D816A422; Sat, 14 Jan 2006 19:25:57 +0000 (GMT) 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 AC0EE16A41F for ; Sat, 14 Jan 2006 19:25:57 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4D98843D45 for ; Sat, 14 Jan 2006 19:25:57 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0EJPvq7098452 for ; Sat, 14 Jan 2006 19:25:57 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0EJPvrl098449 for perforce@freebsd.org; Sat, 14 Jan 2006 19:25:57 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 14 Jan 2006 19:25:57 GMT Message-Id: <200601141925.k0EJPvrl098449@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 89690 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: Sat, 14 Jan 2006 19:25:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=89690 Change 89690 by rwatson@rwatson_peppercorn on 2006/01/14 19:25:07 If getauditflagsbin() fails in getfauditflags(), fail getfauditflags(). Affected files ... .. //depot/projects/trustedbsd/openbsm/libbsm/bsm_user.c#8 edit Differences ... ==== //depot/projects/trustedbsd/openbsm/libbsm/bsm_user.c#8 (text+ko) ==== @@ -257,9 +257,11 @@ lastmask->am_success = 0; lastmask->am_failure = 0; - /* get the system mask */ - if (getacflg(auditstring, MAX_AUDITSTRING_LEN) == 0) - getauditflagsbin(auditstring, lastmask); + /* Get the system mask. */ + if (getacflg(auditstring, MAX_AUDITSTRING_LEN) == 0) { + if (getauditflagsbin(auditstring, lastmask) != 0) + return (-1); + } ADDMASK(lastmask, usremask); SUBMASK(lastmask, usrdmask); From owner-p4-projects@FreeBSD.ORG Sat Jan 14 22:41:11 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 F336116A422; Sat, 14 Jan 2006 22:41:10 +0000 (GMT) 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 CB8F816A41F for ; Sat, 14 Jan 2006 22:41:10 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7E0E843D46 for ; Sat, 14 Jan 2006 22:41:10 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0EMfAbZ016164 for ; Sat, 14 Jan 2006 22:41:10 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0EMfA4X016160 for perforce@freebsd.org; Sat, 14 Jan 2006 22:41:10 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 14 Jan 2006 22:41:10 GMT Message-Id: <200601142241.k0EMfA4X016160@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 89707 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: Sat, 14 Jan 2006 22:41:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=89707 Change 89707 by rwatson@rwatson_peppercorn on 2006/01/14 22:41:07 Continue divergence of bsm_token.c:GET_TOKEN_AREA(): kernel malloc with M_WAITOK will not fail, so don't check for it. Affected files ... .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm_token.c#2 edit Differences ... ==== //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm_token.c#2 (text+ko) ==== @@ -83,8 +83,6 @@ textlen = strlen(text); GET_TOKEN_AREA(t, dptr, 9 + textlen); - if (t == NULL) - return (NULL); textlen += 1; @@ -110,8 +108,6 @@ textlen = strlen(text); GET_TOKEN_AREA(t, dptr, 13 + textlen); - if (t == NULL) - return (NULL); textlen += 1; @@ -153,8 +149,6 @@ if (vni == NULL) return (NULL); GET_TOKEN_AREA(t, dptr, 29); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_ATTR32); @@ -241,8 +235,6 @@ totdata = datasize * unit_count; GET_TOKEN_AREA(t, dptr, totdata + 4); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_DATA); ADD_U_CHAR(dptr, unit_print); @@ -266,8 +258,6 @@ u_char *dptr = NULL; GET_TOKEN_AREA(t, dptr, 9); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_EXIT); ADD_U_INT32(dptr, err); @@ -301,8 +291,6 @@ return (NULL); GET_TOKEN_AREA(t, dptr, n * 4 + 3); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_NEWGROUPS); ADD_U_INT16(dptr, n); @@ -326,8 +314,6 @@ return (NULL); GET_TOKEN_AREA(t, dptr, 5); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_IN_ADDR); ADD_U_INT32(dptr, internet_addr->s_addr); @@ -351,8 +337,6 @@ return (NULL); GET_TOKEN_AREA(t, dptr, 21); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_IN_ADDR_EX); ADD_U_INT32(dptr, type); @@ -378,8 +362,6 @@ return (NULL); GET_TOKEN_AREA(t, dptr, 21); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_IP); /* @@ -403,8 +385,6 @@ GET_TOKEN_AREA(t, dptr, 6); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_IPC); ADD_U_CHAR(dptr, type); @@ -435,8 +415,6 @@ return (NULL); GET_TOKEN_AREA(t, dptr, 29); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_IPC_PERM); @@ -480,8 +458,6 @@ GET_TOKEN_AREA(t, dptr, 3); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_IPORT); ADD_U_INT16(dptr, iport); @@ -505,8 +481,6 @@ return (NULL); GET_TOKEN_AREA(t, dptr, bytes + 3); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_OPAQUE); ADD_U_INT16(dptr, bytes); @@ -547,8 +521,6 @@ filelen = strlen(file); GET_TOKEN_AREA(t, dptr, filelen + 12); - if (t == NULL) - return (NULL); filelen += 1; timems = tm.tv_usec/1000; @@ -579,8 +551,6 @@ textlen = strlen(text); GET_TOKEN_AREA(t, dptr, textlen + 4); - if (t == NULL) - return (NULL); textlen += 1; @@ -608,8 +578,6 @@ textlen = strlen(text); GET_TOKEN_AREA(t, dptr, textlen + 4); - if (t == NULL) - return (NULL); textlen += 1; @@ -644,8 +612,6 @@ return (NULL); GET_TOKEN_AREA(t, dptr, 37); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_PROCESS32); ADD_U_INT32(dptr, auid); @@ -703,8 +669,6 @@ return (NULL); GET_TOKEN_AREA(t, dptr, 53); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_PROCESS32_EX); ADD_U_INT32(dptr, auid); @@ -753,8 +717,6 @@ u_char *dptr = NULL; GET_TOKEN_AREA(t, dptr, 6); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_RETURN32); ADD_U_CHAR(dptr, status); @@ -770,8 +732,6 @@ u_char *dptr = NULL; GET_TOKEN_AREA(t, dptr, 10); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_RETURN64); ADD_U_CHAR(dptr, status); @@ -798,8 +758,6 @@ u_char *dptr = NULL; GET_TOKEN_AREA(t, dptr, 5); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_SEQ); ADD_U_INT32(dptr, audit_count); @@ -838,8 +796,6 @@ return (NULL); GET_TOKEN_AREA(t, dptr, 15); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AU_SOCK_TOKEN); /* Coerce the socket type into a short value */ @@ -895,8 +851,6 @@ return (NULL); GET_TOKEN_AREA(t, dptr, 107); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AU_SOCK_UNIX_TOKEN); /* BSM token has two bytes for family */ @@ -923,8 +877,6 @@ return (NULL); GET_TOKEN_AREA(t, dptr, 9); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_SOCKINET32); /* @@ -950,8 +902,6 @@ return (NULL); GET_TOKEN_AREA(t, dptr, 21); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_SOCKINET128); /* @@ -1002,8 +952,6 @@ return (NULL); GET_TOKEN_AREA(t, dptr, 37); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_SUBJECT32); ADD_U_INT32(dptr, auid); @@ -1061,8 +1009,6 @@ return (NULL); GET_TOKEN_AREA(t, dptr, 53); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_SUBJECT32_EX); ADD_U_INT32(dptr, auid); @@ -1146,8 +1092,6 @@ } GET_TOKEN_AREA(t, dptr, 5 + totlen); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_EXEC_ARGS); ADD_U_INT32(dptr, count); @@ -1189,8 +1133,6 @@ } GET_TOKEN_AREA(t, dptr, 5 + totlen); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_EXEC_ENV); ADD_U_INT32(dptr, count); @@ -1233,8 +1175,6 @@ /* XXXRW: else ...? */ GET_TOKEN_AREA(t, dptr, 18); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_HEADER32); ADD_U_INT32(dptr, rec_size); @@ -1286,8 +1226,6 @@ u_int16_t magic = TRAILER_PAD_MAGIC; GET_TOKEN_AREA(t, dptr, 7); - if (t == NULL) - return (NULL); ADD_U_CHAR(dptr, AUT_TRAILER); ADD_U_INT16(dptr, magic);