Re: CVS commit: src/sys/kern
On Wed, Aug 10, 2011 at 03:10:13AM +, YAMAMOTO Takashi wrote: Log Message: Fail namei immediately if searchdir is unlinked / has been rmdir'd. Do this by checking if v_size == 0. Should fix PR 44658 (and PR 32661). why is this necessary? can't we just let VOP_LOOKUP fail? Not to fix PR 44658. it's better to fix the vn_isunder check instead of avoiding running it. IMO vn_isunder should return acutal error code (eg. ENOENT) rather than just a boolean so that callers can decide what to do. the v_size == 0 check sounds wrong. does it work for eg. nfs? It apparently does break nullfs, so I've reverted it. Is there any way to check this correctly/safely above the filesystem? if above the filesystem means without calling VOPs, i don't think there's a way. YAMAMOTO Takashi -- David A. Holland dholl...@netbsd.org
Re: CVS commit: src
hi, Module Name: src Committed By: manu Date: Wed Aug 3 04:11:17 UTC 2011 Modified Files: src/bin/cp: cp.c utils.c src/bin/mv: mv.c src/distrib/sets/lists/comp: mi src/lib/libc/gen: Makefile.inc extattr.3 extattr.c src/lib/libc/sys: extattr_get_file.2 src/sys/sys: extattr.h Log Message: Make cp -p and mv preverve extended attributes, and complain if they cannot. Also introduce library functions for copying extended attributes from one file to another: - extattr_copy_file, extattr_copy_fd, extattr_copy_link, with FreeBSD style, where a namespace is to be supplied - cpxattr, fcpxattr, lcpxattr, with Linux style, where all namespaces accessible to the caller are copied, and the others are silently ignored. is extattr_namespace_access really necessary? uid-based priviledge check in userland is often a mistake. YAMAMOTO Takashi To generate a diff of this commit: cvs rdiff -u -r1.55 -r1.56 src/bin/cp/cp.c cvs rdiff -u -r1.39 -r1.40 src/bin/cp/utils.c cvs rdiff -u -r1.41 -r1.42 src/bin/mv/mv.c cvs rdiff -u -r1.1651 -r1.1652 src/distrib/sets/lists/comp/mi cvs rdiff -u -r1.178 -r1.179 src/lib/libc/gen/Makefile.inc cvs rdiff -u -r1.3 -r1.4 src/lib/libc/gen/extattr.3 cvs rdiff -u -r1.2 -r1.3 src/lib/libc/gen/extattr.c cvs rdiff -u -r1.3 -r1.4 src/lib/libc/sys/extattr_get_file.2 cvs rdiff -u -r1.6 -r1.7 src/sys/sys/extattr.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Re: CVS commit: src
On Wed, Aug 10, 2011 at 08:59:48AM +, YAMAMOTO Takashi wrote: is extattr_namespace_access really necessary? uid-based priviledge check in userland is often a mistake. For now it duplicates the same simple access check as in kernel: system attributes are restricted to root. This is just a helper function, it is not exported. I immagine it could move to kernel when we introduce more namespaces with different acces semantics. But we are not there yet. -- Emmanuel Dreyfus m...@netbsd.org
Re: CVS commit: src/sys/arch
On 10 August 2011 13:39, Cherry G. Mathew che...@netbsd.org wrote: Module Name: src Committed By: cherry Date: Wed Aug 10 11:39:46 UTC 2011 Modified Files: src/sys/arch/amd64/amd64: fpu.c machdep.c src/sys/arch/i386/isa: npx.c src/sys/arch/x86/x86: x86_machdep.c src/sys/arch/xen/conf: files.xen src/sys/arch/xen/include: intr.h Added Files: src/sys/arch/xen/x86: xen_ipi.c Log Message: xen ipi infrastructure Hi, I'd appreciate feedback specifically for multiuser boot of i386/conf/XEN3* please, with this change in place. Many Thanks, -- ~Cherry
Re: CVS commit: src
hi, On Wed, Aug 10, 2011 at 08:59:48AM +, YAMAMOTO Takashi wrote: is extattr_namespace_access really necessary? uid-based priviledge check in userland is often a mistake. For now it duplicates the same simple access check as in kernel: system attributes are restricted to root. This is just a helper function, it is not exported. I immagine it could move to kernel when we introduce more namespaces with different acces semantics. But we are not there yet. what's wrong with just letting the kernel decide and handle EPERM? YAMAMOTO Takashi -- Emmanuel Dreyfus m...@netbsd.org
Re: CVS commit: src/sys/kern
On Wed, Aug 10, 2011 at 07:22:06AM +, YAMAMOTO Takashi wrote: why is this necessary? can't we just let VOP_LOOKUP fail? Not to fix PR 44658. it's better to fix the vn_isunder check instead of avoiding running it. IMO vn_isunder should return acutal error code (eg. ENOENT) rather than just a boolean so that callers can decide what to do. For some reason I thought that had already been done and found to be inadequate. Not sure why I thought that, since it's obviously false. blah. the v_size == 0 check sounds wrong. does it work for eg. nfs? It apparently does break nullfs, so I've reverted it. Is there any way to check this correctly/safely above the filesystem? if above the filesystem means without calling VOPs, i don't think there's a way. Yeah, that's what I'd thought, which is why checking the size looked promising. Oh well. -- David A. Holland dholl...@netbsd.org
Re: CVS commit: src/sys/uvm
[ moving to tech-kern ] hi, y...@mwd.biglobe.ne.jp (YAMAMOTO Takashi) wrote: Here is the updated patch after your changes: http://www.netbsd.org/~rmind/uvm_anon_freelst2.diff As you noted, uvm_anfree() can temporarily release the amap lock - that can happen in amap_copy(). Patch closes the race by moving uvm_anfree () further, and changes the semantics of the function, now called uvm_anon_freelst(), to return with amap lock released (plus free anons without lock held). the temporary release of the amap lock is only for O-A loan which you disabled, isn't it? Right, uvm_anon_locklaonpg() dance can happen only in O-A case. However, having uvm_anfree() able to release the lock by its interface definition is potentially defective. It is the main motivation why I want to slightly rework the code into uvm_anon_freelst() which would always drop the lock and move freeing of anons to the end point. Cleaner, less error prone. the committed change seems broken in case uvm_anon_dispose sets PG_RELEASED. in that case, uvm_anon_freelst should leave the anon as it will be freed by uvm_anon_release later. YAMAMOTO Takashi -- Mindaugas
CVS commit: src/sys/fs/union
Module Name:src Committed By: hannken Date: Wed Aug 10 06:19:54 UTC 2011 Modified Files: src/sys/fs/union: union_subr.c Log Message: Use LK_SHARED, it is sufficient for VOP_GETATTR() and VOP_READDIR(). To generate a diff of this commit: cvs rdiff -u -r1.44 -r1.45 src/sys/fs/union/union_subr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/fs/union/union_subr.c diff -u src/sys/fs/union/union_subr.c:1.44 src/sys/fs/union/union_subr.c:1.45 --- src/sys/fs/union/union_subr.c:1.44 Sun Aug 7 06:01:51 2011 +++ src/sys/fs/union/union_subr.c Wed Aug 10 06:19:54 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: union_subr.c,v 1.44 2011/08/07 06:01:51 hannken Exp $ */ +/* $NetBSD: union_subr.c,v 1.45 2011/08/10 06:19:54 hannken Exp $ */ /* * Copyright (c) 1994 @@ -72,7 +72,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: union_subr.c,v 1.44 2011/08/07 06:01:51 hannken Exp $); +__KERNEL_RCSID(0, $NetBSD: union_subr.c,v 1.45 2011/08/10 06:19:54 hannken Exp $); #include sys/param.h #include sys/systm.h @@ -1221,7 +1221,7 @@ return 0; /* Check lower for being empty. */ - vn_lock(un-un_lowervp, LK_EXCLUSIVE | LK_RETRY); + vn_lock(un-un_lowervp, LK_SHARED | LK_RETRY); error = VOP_GETATTR(un-un_lowervp, va, cred); if (error) { VOP_UNLOCK(un-un_lowervp);
CVS commit: src
Module Name:src Committed By: hannken Date: Wed Aug 10 06:27:02 UTC 2011 Modified Files: src/sys/fs/union: union_vnops.c src/tests/fs/union: t_pr.c Log Message: For devices, sockets and fifos ignore setting the file size to zero to make open(..., O_TRUNC) happy and allow them to write through the lower layer. Fixes PR #43560 (writing to null device in unionfs fails) To generate a diff of this commit: cvs rdiff -u -r1.42 -r1.43 src/sys/fs/union/union_vnops.c cvs rdiff -u -r1.7 -r1.8 src/tests/fs/union/t_pr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/fs/union/union_vnops.c diff -u src/sys/fs/union/union_vnops.c:1.42 src/sys/fs/union/union_vnops.c:1.43 --- src/sys/fs/union/union_vnops.c:1.42 Sun Aug 7 06:01:51 2011 +++ src/sys/fs/union/union_vnops.c Wed Aug 10 06:27:02 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: union_vnops.c,v 1.42 2011/08/07 06:01:51 hannken Exp $ */ +/* $NetBSD: union_vnops.c,v 1.43 2011/08/10 06:27:02 hannken Exp $ */ /* * Copyright (c) 1992, 1993, 1994, 1995 @@ -72,7 +72,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: union_vnops.c,v 1.42 2011/08/07 06:01:51 hannken Exp $); +__KERNEL_RCSID(0, $NetBSD: union_vnops.c,v 1.43 2011/08/10 06:27:02 hannken Exp $); #include sys/param.h #include sys/systm.h @@ -888,12 +888,14 @@ struct vattr *vap = ap-a_vap; struct vnode *vp = ap-a_vp; struct union_node *un = VTOUNION(vp); + bool size_only; /* All but va_size are VNOVAL. */ int error; - if ((vap-va_flags != VNOVAL || vap-va_uid != (uid_t)VNOVAL || - vap-va_gid != (gid_t)VNOVAL || vap-va_atime.tv_sec != VNOVAL || - vap-va_mtime.tv_sec != VNOVAL || vap-va_mode != (mode_t)VNOVAL) - (vp-v_mount-mnt_flag MNT_RDONLY)) + size_only = (vap-va_flags == VNOVAL vap-va_uid == (uid_t)VNOVAL + vap-va_gid == (gid_t)VNOVAL vap-va_atime.tv_sec == VNOVAL + vap-va_mtime.tv_sec == VNOVAL vap-va_mode == (mode_t)VNOVAL); + + if (!size_only (vp-v_mount-mnt_flag MNT_RDONLY)) return (EROFS); if (vap-va_size != VNOVAL) { switch (vp-v_type) { @@ -931,8 +933,9 @@ } /* - * Try to set attributes in upper layer, - * otherwise return read-only filesystem error. + * Try to set attributes in upper layer, ignore size change to zero + * for devices to handle O_TRUNC and return read-only filesystem error + * otherwise. */ if (un-un_uppervp != NULLVP) { FIXUP(un); @@ -940,7 +943,22 @@ if ((error == 0) (vap-va_size != VNOVAL)) union_newsize(ap-a_vp, vap-va_size, VNOVAL); } else { - error = EROFS; + KASSERT(un-un_lowervp != NULLVP); + switch (un-un_lowervp-v_type) { + case VCHR: + case VBLK: + case VSOCK: + case VFIFO: + if (size_only + (vap-va_size == 0 || vap-va_size == VNOVAL)) +error = 0; + else +error = EROFS; + break; + default: + error = EROFS; + break; + } } return (error); @@ -1003,8 +1021,23 @@ struct union_node *un = VTOUNION(ap-a_vp); vp = UPPERVP(ap-a_vp); - if (vp == NULLVP) - panic(union: missing upper layer in write); + if (vp == NULLVP) { + vp = LOWERVP(ap-a_vp); + KASSERT(vp != NULL); + switch (vp-v_type) { + case VBLK: + case VCHR: + case VSOCK: + case VFIFO: + vn_lock(vp, LK_EXCLUSIVE | LK_RETRY); + error = VOP_WRITE(vp, ap-a_uio, ap-a_ioflag, + ap-a_cred); + VOP_UNLOCK(vp); + return error; + default: + panic(union: missing upper layer in write); + } + } FIXUP(un); error = VOP_WRITE(vp, ap-a_uio, ap-a_ioflag, ap-a_cred); Index: src/tests/fs/union/t_pr.c diff -u src/tests/fs/union/t_pr.c:1.7 src/tests/fs/union/t_pr.c:1.8 --- src/tests/fs/union/t_pr.c:1.7 Sat Jul 3 13:37:22 2010 +++ src/tests/fs/union/t_pr.c Wed Aug 10 06:27:02 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: t_pr.c,v 1.7 2010/07/03 13:37:22 pooka Exp $ */ +/* $NetBSD: t_pr.c,v 1.8 2011/08/10 06:27:02 hannken Exp $ */ #include sys/types.h #include sys/mount.h @@ -50,7 +50,6 @@ unionargs.target = __UNCONST(/Tunion2/B); unionargs.mntflags = UNMNT_BELOW; - /* atf_tc_expect_signal(-1, PR kern/23986); */ rump_sys_mount(MOUNT_UNION, /Tunion, 0,unionargs,sizeof(unionargs)); } @@ -64,7 +63,7 @@ ATF_TC_BODY(devnull1, tc) { struct union_args unionargs; - int fd; + int fd, res; rump_init(); @@ -80,14 +79,12 @@ fd = rump_sys_open(/mp/null, O_WRONLY | O_CREAT | O_TRUNC); - atf_tc_expect_fail(PR kern/43560); - if (fd == -1 errno == EROFS) { - atf_tc_fail(open returned EROFS); - } else if (fd == -1) { - atf_tc_expect_pass(); - atf_tc_fail_errno(open fail); - } + if (fd == -1) + atf_tc_fail_errno(open); + res = rump_sys_write(fd, fd, sizeof(fd)); + if (res != sizeof(fd)) + atf_tc_fail(write); } ATF_TC(devnull2); @@ -100,7 +97,7 @@ ATF_TC_BODY(devnull2, tc) { struct union_args unionargs; - int fd; + int fd, res; rump_init(); @@ -118,8 +115,9 @@ if (fd == -1) atf_tc_fail_errno(open); - atf_tc_expect_signal(-1, PR
CVS commit: src/sys/arch/xen/include
Module Name:src Committed By: cherry Date: Wed Aug 10 06:29:23 UTC 2011 Added Files: src/sys/arch/xen/include: intrdefs.h Log Message: Add Xen specific ipi bitmasks To generate a diff of this commit: cvs rdiff -u -r0 -r1.10 src/sys/arch/xen/include/intrdefs.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Added files: Index: src/sys/arch/xen/include/intrdefs.h diff -u /dev/null src/sys/arch/xen/include/intrdefs.h:1.10 --- /dev/null Wed Aug 10 06:29:23 2011 +++ src/sys/arch/xen/include/intrdefs.h Wed Aug 10 06:29:23 2011 @@ -0,0 +1,17 @@ +/* $NetBSD: intrdefs.h,v 1.10 2011/08/10 06:29:23 cherry Exp $ */ + +/* This file co-exists, and is included via machine/intrdefs.h */ + +#ifndef _XEN_INTRDEFS_H_ +#define _XEN_INTRDEFS_H_ + +/* Xen IPI types */ +#define XEN_IPI_KICK 0x +#define XEN_IPI_HALT 0x0001 +#define XEN_IPI_SYNCH_FPU 0x0002 +#define XEN_IPI_DDB 0x0004 +#define XEN_IPI_XCALL 0x0008 + +#define XEN_NIPIS 4 /* IPI_KICK doesn't have a handler */ + +#endif /* _XEN_INTRDEFS_H_ */
CVS commit: src/sys/arch
Module Name:src Committed By: cherry Date: Wed Aug 10 06:30:59 UTC 2011 Modified Files: src/sys/arch/amd64/include: intrdefs.h src/sys/arch/i386/include: intrdefs.h Log Message: Include Xen specific definitions. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/sys/arch/amd64/include/intrdefs.h cvs rdiff -u -r1.3 -r1.4 src/sys/arch/i386/include/intrdefs.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/amd64/include/intrdefs.h diff -u src/sys/arch/amd64/include/intrdefs.h:1.1 src/sys/arch/amd64/include/intrdefs.h:1.2 --- src/sys/arch/amd64/include/intrdefs.h:1.1 Sat Apr 26 18:39:43 2003 +++ src/sys/arch/amd64/include/intrdefs.h Wed Aug 10 06:30:59 2011 @@ -1,3 +1,6 @@ -/* $NetBSD: intrdefs.h,v 1.1 2003/04/26 18:39:43 fvdl Exp $ */ +/* $NetBSD: intrdefs.h,v 1.2 2011/08/10 06:30:59 cherry Exp $ */ #include x86/intrdefs.h +#ifdef XEN +#include xen/intrdefs.h +#endif /* XEN */ Index: src/sys/arch/i386/include/intrdefs.h diff -u src/sys/arch/i386/include/intrdefs.h:1.3 src/sys/arch/i386/include/intrdefs.h:1.4 --- src/sys/arch/i386/include/intrdefs.h:1.3 Wed Feb 26 21:29:01 2003 +++ src/sys/arch/i386/include/intrdefs.h Wed Aug 10 06:30:59 2011 @@ -1,3 +1,6 @@ -/* $NetBSD: intrdefs.h,v 1.3 2003/02/26 21:29:01 fvdl Exp $ */ +/* $NetBSD: intrdefs.h,v 1.4 2011/08/10 06:30:59 cherry Exp $ */ #include x86/intrdefs.h +#ifdef XEN +#include xen/intrdefs.h +#endif /* XEN */
CVS commit: src/sys/arch/amd64/include
Module Name:src Committed By: cherry Date: Wed Aug 10 06:33:13 UTC 2011 Modified Files: src/sys/arch/amd64/include: frameasm.h Log Message: Correct offset calculation for ci To generate a diff of this commit: cvs rdiff -u -r1.15 -r1.16 src/sys/arch/amd64/include/frameasm.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/amd64/include/frameasm.h diff -u src/sys/arch/amd64/include/frameasm.h:1.15 src/sys/arch/amd64/include/frameasm.h:1.16 --- src/sys/arch/amd64/include/frameasm.h:1.15 Wed Jan 12 23:12:11 2011 +++ src/sys/arch/amd64/include/frameasm.h Wed Aug 10 06:33:13 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: frameasm.h,v 1.15 2011/01/12 23:12:11 joerg Exp $ */ +/* $NetBSD: frameasm.h,v 1.16 2011/08/10 06:33:13 cherry Exp $ */ #ifndef _AMD64_MACHINE_FRAMEASM_H #define _AMD64_MACHINE_FRAMEASM_H @@ -132,15 +132,13 @@ #ifdef XEN #define CLI(temp_reg) \ - movl CPUVAR(CPUID),%e ## temp_reg ; \ - shlq $6,%r ## temp_reg ;\ - addq CPUVAR(VCPU),%r ## temp_reg ; \ - movb $1,EVTCHN_UPCALL_MASK(%r ## temp_reg) + movq CPUVAR(VCPU),%r ## temp_reg ; \ + movb $1,EVTCHN_UPCALL_MASK(%r ## temp_reg); + #define STI(temp_reg) \ - movl CPUVAR(CPUID),%e ## temp_reg ; \ - shlq $6,%r ## temp_reg ;\ - addq CPUVAR(VCPU),%r ## temp_reg ; \ - movb $0,EVTCHN_UPCALL_MASK(%r ## temp_reg) + movq CPUVAR(VCPU),%r ## temp_reg ; \ + movb $0,EVTCHN_UPCALL_MASK(%r ## temp_reg); + #else /* XEN */ #define CLI(temp_reg) cli #define STI(temp_reg) sti
CVS commit: src/sys/arch/i386/i386
Module Name:src Committed By: cherry Date: Wed Aug 10 06:38:02 UTC 2011 Modified Files: src/sys/arch/i386/i386: machdep.c Log Message: tweak the xen specific startup path to not use %fs before it is setup. Minor refactoring. Use Xen specific ipi calls. To generate a diff of this commit: cvs rdiff -u -r1.706 -r1.707 src/sys/arch/i386/i386/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/i386/i386/machdep.c diff -u src/sys/arch/i386/i386/machdep.c:1.706 src/sys/arch/i386/i386/machdep.c:1.707 --- src/sys/arch/i386/i386/machdep.c:1.706 Fri Jul 1 18:14:15 2011 +++ src/sys/arch/i386/i386/machdep.c Wed Aug 10 06:38:02 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.706 2011/07/01 18:14:15 dyoung Exp $ */ +/* $NetBSD: machdep.c,v 1.707 2011/08/10 06:38:02 cherry Exp $ */ /*- * Copyright (c) 1996, 1997, 1998, 2000, 2004, 2006, 2008, 2009 @@ -67,7 +67,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.706 2011/07/01 18:14:15 dyoung Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.707 2011/08/10 06:38:02 cherry Exp $); #include opt_beep.h #include opt_compat_ibcs2.h @@ -560,6 +560,12 @@ HYPERVISOR_stack_switch(GSEL(GDATA_SEL, SEL_KPL), pcb-pcb_esp0); + /* Update TLS segment pointers */ + update_descriptor(ci-ci_gdt[GUFS_SEL], + (union descriptor *) pcb-pcb_fsd); + update_descriptor(ci-ci_gdt[GUGS_SEL], + (union descriptor *) pcb-pcb_gsd); + physop.cmd = PHYSDEVOP_SET_IOPL; physop.u.set_iopl.iopl = pcb-pcb_iopl; HYPERVISOR_physdev_op(physop); @@ -949,8 +955,12 @@ } #ifdef MULTIPROCESSOR +#ifdef XEN + xen_broadcast_ipi(XEN_IPI_HALT); +#else /* XEN */ x86_broadcast_ipi(X86_IPI_HALT); -#endif +#endif /* XEN */ +#endif /* MULTIPROCESSOR */ if (howto RB_HALT) { #if NACPICA 0 @@ -1123,14 +1133,18 @@ int xen_idt_idx; #endif -#ifndef XEN void cpu_init_idt(void) { +#ifndef XEN struct region_descriptor region; setregion(region, pentium_idt, NIDT * sizeof(idt[0]) - 1); lidt(region); -} +#else /* XEN */ + XENPRINTF((HYPERVISOR_set_trap_table %p\n, xen_idt)); + if (HYPERVISOR_set_trap_table(xen_idt)) + panic(HYPERVISOR_set_trap_table %p failed\n, xen_idt); #endif /* !XEN */ +} void initgdt(union descriptor *tgdt) @@ -1166,7 +1180,28 @@ lgdt(region); #else /* !XEN */ frames[0] = xpmap_ptom((uint32_t)gdt - KERNBASE) PAGE_SHIFT; - pmap_kenter_pa((vaddr_t)gdt, (uint32_t)gdt - KERNBASE, VM_PROT_READ, 0); + { /* + * Enter the gdt page RO into the kernel map. We can't + * use pmap_kenter_pa() here, because %fs is not + * usable until the gdt is loaded, and %fs is used as + * the base pointer for curcpu() and curlwp(), both of + * which are in the callpath of pmap_kenter_pa(). + * So we mash up our own - this is MD code anyway. + * + * XXX: review this once we have finegrained locking + * for xpq. + */ + pt_entry_t *pte, npte; + pt_entry_t pg_nx = (cpu_feature[2] CPUID_NOX ? PG_NX : 0); + + pte = kvtopte((vaddr_t)gdt); + npte = pmap_pa2pte((vaddr_t)gdt - KERNBASE); + npte |= PG_RO | pg_nx | PG_V; + + xpq_queue_pte_update(xpmap_ptetomach(pte), npte); + xpq_flush_queue(); + } + XENPRINTK((loading gdt %lx, %d entries\n, frames[0] PAGE_SHIFT, NGDT)); if (HYPERVISOR_set_gdt(frames, NGDT /* XXX is it right ? */)) @@ -1579,10 +1614,7 @@ xen_idt[xen_idt_idx].address = (uint32_t)IDTVEC(svr4_fasttrap); xen_idt_idx++; lldt(GSEL(GLDT_SEL, SEL_KPL)); - - XENPRINTF((HYPERVISOR_set_trap_table %p\n, xen_idt)); - if (HYPERVISOR_set_trap_table(xen_idt)) - panic(HYPERVISOR_set_trap_table %p failed\n, xen_idt); + cpu_init_idt(); #endif /* XEN */ init386_ksyms();
CVS commit: src/distrib/sets/lists/comp
Module Name:src Committed By: kiyohara Date: Wed Aug 10 07:56:59 UTC 2011 Modified Files: src/distrib/sets/lists/comp: md.bebox Log Message: Obsolete some include files. To generate a diff of this commit: cvs rdiff -u -r1.34 -r1.35 src/distrib/sets/lists/comp/md.bebox Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/distrib/sets/lists/comp/md.bebox diff -u src/distrib/sets/lists/comp/md.bebox:1.34 src/distrib/sets/lists/comp/md.bebox:1.35 --- src/distrib/sets/lists/comp/md.bebox:1.34 Sun Jul 17 20:54:31 2011 +++ src/distrib/sets/lists/comp/md.bebox Wed Aug 10 07:56:59 2011 @@ -1,4 +1,4 @@ -# $NetBSD: md.bebox,v 1.34 2011/07/17 20:54:31 joerg Exp $ +# $NetBSD: md.bebox,v 1.35 2011/08/10 07:56:59 kiyohara Exp $ ./usr/include/beboxcomp-c-include ./usr/include/bebox/_G_config.h comp-obsolete obsolete ./usr/include/bebox/ansi.h comp-c-include @@ -37,11 +37,11 @@ ./usr/include/bebox/lock.h comp-c-include ./usr/include/bebox/math.h comp-c-include ./usr/include/bebox/mcontext.h comp-c-include -./usr/include/bebox/mouse.h comp-c-include +./usr/include/bebox/mouse.h comp-obsolete obsolete ./usr/include/bebox/mutex.h comp-c-include ./usr/include/bebox/param.h comp-c-include ./usr/include/bebox/pcb.h comp-c-include -./usr/include/bebox/pccons.h comp-c-include +./usr/include/bebox/pccons.h comp-obsolete obsolete ./usr/include/bebox/pio.h comp-obsolete obsolete ./usr/include/bebox/pmap.h comp-c-include ./usr/include/bebox/pmc.h comp-c-include
CVS commit: src/external/bsd/pcc/dist/pcc/mip
Module Name:src Committed By: plunky Date: Wed Aug 10 08:09:38 UTC 2011 Modified Files: src/external/bsd/pcc/dist/pcc/mip: common.c Log Message: use offsetof() rather than rolling our own, to appease gcc 4.5 To generate a diff of this commit: cvs rdiff -u -r1.1.1.3 -r1.2 src/external/bsd/pcc/dist/pcc/mip/common.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/bsd/pcc/dist/pcc/mip/common.c diff -u src/external/bsd/pcc/dist/pcc/mip/common.c:1.1.1.3 src/external/bsd/pcc/dist/pcc/mip/common.c:1.2 --- src/external/bsd/pcc/dist/pcc/mip/common.c:1.1.1.3 Thu Jun 3 18:57:53 2010 +++ src/external/bsd/pcc/dist/pcc/mip/common.c Wed Aug 10 08:09:38 2011 @@ -1,5 +1,5 @@ /* Id: common.c,v 1.92 2010/03/27 23:46:12 mickey Exp */ -/* $NetBSD: common.c,v 1.1.1.3 2010/06/03 18:57:53 plunky Exp $ */ +/* $NetBSD: common.c,v 1.2 2011/08/10 08:09:38 plunky Exp $ */ /* * Copyright (c) 2003 Anders Magnusson (ra...@ludd.luth.se). * All rights reserved. @@ -60,6 +60,7 @@ */ #include stdarg.h +#include stddef.h #include stdlib.h #include stdio.h #include string.h @@ -470,7 +471,7 @@ } a2; }; -#define ALIGNMENT ((long)((struct balloc *)0)-a2) +#define ALIGNMENT offsetof(struct balloc, a2) #define ROUNDUP(x) (((x) + ((ALIGNMENT)-1)) ~((ALIGNMENT)-1)) static char *allocpole;
CVS commit: src/external/bsd/pcc/libexec/ccom
Module Name:src Committed By: plunky Date: Wed Aug 10 08:10:39 UTC 2011 Modified Files: src/external/bsd/pcc/libexec/ccom: Makefile Log Message: disable some warnings to appease gcc-4.5 To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 src/external/bsd/pcc/libexec/ccom/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/bsd/pcc/libexec/ccom/Makefile diff -u src/external/bsd/pcc/libexec/ccom/Makefile:1.9 src/external/bsd/pcc/libexec/ccom/Makefile:1.10 --- src/external/bsd/pcc/libexec/ccom/Makefile:1.9 Tue Jun 7 13:30:35 2011 +++ src/external/bsd/pcc/libexec/ccom/Makefile Wed Aug 10 08:10:39 2011 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.9 2011/06/07 13:30:35 plunky Exp $ +# $NetBSD: Makefile,v 1.10 2011/08/10 08:10:39 plunky Exp $ WARNS?= 2 @@ -28,6 +28,9 @@ CPPFLAGS+= -I${PCC_DIST}/arch/${TARGMACH} CPPFLAGS+= -I${PCC_DIST}/cc/ccom +COPTS.scan.c+= -Wno-unused +COPTS.pftn.c+= -Wno-uninitialized + DPSRCS= external.c MKEXTDIR!= cd ../mkext ${PRINTOBJDIR}
CVS commit: src/doc
Module Name:src Committed By: christos Date: Wed Aug 10 09:42:29 UTC 2011 Modified Files: src/doc: 3RDPARTY Log Message: fix root.cache To generate a diff of this commit: cvs rdiff -u -r1.857 -r1.858 src/doc/3RDPARTY Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/doc/3RDPARTY diff -u src/doc/3RDPARTY:1.857 src/doc/3RDPARTY:1.858 --- src/doc/3RDPARTY:1.857 Wed Aug 3 14:04:46 2011 +++ src/doc/3RDPARTY Wed Aug 10 05:42:28 2011 @@ -1,4 +1,4 @@ -# $NetBSD: 3RDPARTY,v 1.857 2011/08/03 18:04:46 wiz Exp $ +# $NetBSD: 3RDPARTY,v 1.858 2011/08/10 09:42:28 christos Exp $ # # This file contains a list of the software that has been integrated into # NetBSD where we are not the primary maintainer. @@ -949,8 +949,8 @@ Beta versions are available from Purdue (ftp.cs.purdue.edu:/pub/RCS). Package: root.cache -Version: 2008121200 (Dec 12, 2008) -Current Vers: 2008121200 (Dec 12, 2008) +Version: 2011060800 (Jun 8, 2011) +Current Vers: 2011060800 (Jun 8, 2011) Maintainer: InterNIC Archive Site: ftp://ftp.internic.net/domain/named.root Home Page: ftp://ftp.internic.net/domain/named.root
CVS commit: src/sys/arch/xen
Module Name:src Committed By: cherry Date: Wed Aug 10 09:50:37 UTC 2011 Modified Files: src/sys/arch/xen/include: xenpmap.h src/sys/arch/xen/x86: x86_xpmap.c Log Message: Introduce locking primitives for Xen pte operations, and xen helper calls for MP related MMU ops To generate a diff of this commit: cvs rdiff -u -r1.27 -r1.28 src/sys/arch/xen/include/xenpmap.h cvs rdiff -u -r1.28 -r1.29 src/sys/arch/xen/x86/x86_xpmap.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/xen/include/xenpmap.h diff -u src/sys/arch/xen/include/xenpmap.h:1.27 src/sys/arch/xen/include/xenpmap.h:1.28 --- src/sys/arch/xen/include/xenpmap.h:1.27 Fri Apr 29 22:45:41 2011 +++ src/sys/arch/xen/include/xenpmap.h Wed Aug 10 09:50:37 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: xenpmap.h,v 1.27 2011/04/29 22:45:41 jym Exp $ */ +/* $NetBSD: xenpmap.h,v 1.28 2011/08/10 09:50:37 cherry Exp $ */ /* * @@ -36,6 +36,8 @@ #define INVALID_P2M_ENTRY (~0UL) +void xpq_queue_lock(void); +void xpq_queue_unlock(void); void xpq_queue_machphys_update(paddr_t, paddr_t); void xpq_queue_invlpg(vaddr_t); void xpq_queue_pte_update(paddr_t, pt_entry_t); @@ -46,6 +48,13 @@ void xpq_queue_pin_table(paddr_t, int); void xpq_queue_unpin_table(paddr_t); int xpq_update_foreign(paddr_t, pt_entry_t, int); +void xen_vcpu_mcast_invlpg(vaddr_t, vaddr_t, uint32_t); +void xen_vcpu_bcast_invlpg(vaddr_t, vaddr_t); +void xen_mcast_tlbflush(uint32_t); +void xen_bcast_tlbflush(void); +void xen_mcast_invlpg(vaddr_t, uint32_t); +void xen_bcast_invlpg(vaddr_t); + #define xpq_queue_pin_l1_table(pa) \ xpq_queue_pin_table(pa, MMUEXT_PIN_L1_TABLE) Index: src/sys/arch/xen/x86/x86_xpmap.c diff -u src/sys/arch/xen/x86/x86_xpmap.c:1.28 src/sys/arch/xen/x86/x86_xpmap.c:1.29 --- src/sys/arch/xen/x86/x86_xpmap.c:1.28 Wed Jun 15 20:50:02 2011 +++ src/sys/arch/xen/x86/x86_xpmap.c Wed Aug 10 09:50:37 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: x86_xpmap.c,v 1.28 2011/06/15 20:50:02 rmind Exp $ */ +/* $NetBSD: x86_xpmap.c,v 1.29 2011/08/10 09:50:37 cherry Exp $ */ /* * Copyright (c) 2006 Mathieu Ropert m...@adviseo.fr @@ -69,7 +69,7 @@ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: x86_xpmap.c,v 1.28 2011/06/15 20:50:02 rmind Exp $); +__KERNEL_RCSID(0, $NetBSD: x86_xpmap.c,v 1.29 2011/08/10 09:50:37 cherry Exp $); #include opt_xen.h #include opt_ddb.h @@ -77,6 +77,7 @@ #include sys/param.h #include sys/systm.h +#include sys/simplelock.h #include uvm/uvm.h @@ -152,7 +153,9 @@ pmap_pte_clearbits(ptp, PG_RW); } s = splvm(); + xpq_queue_lock(); xpq_queue_set_ldt(base, entries); + xpq_queue_unlock(); splx(s); } @@ -163,12 +166,27 @@ #define XPQUEUE_SIZE 2048 static mmu_update_t xpq_queue[XPQUEUE_SIZE]; static int xpq_idx = 0; +static struct simplelock xpq_lock = SIMPLELOCK_INITIALIZER; void +xpq_queue_lock(void) +{ + simple_lock(xpq_lock); +} + +void +xpq_queue_unlock(void) +{ + simple_unlock(xpq_lock); +} + +/* Must be called with xpq_lock held */ +void xpq_flush_queue(void) { int i, ok, ret; + KASSERT(simple_lock_held(xpq_lock)); XENPRINTK2((flush queue %p entries %d\n, xpq_queue, xpq_idx)); for (i = 0; i xpq_idx; i++) XENPRINTK2((%d: 0x%08 PRIx64 0x%08 PRIx64 \n, i, @@ -187,10 +205,12 @@ xpq_idx = 0; } +/* Must be called with xpq_lock held */ static inline void xpq_increment_idx(void) { + KASSERT(simple_lock_held(xpq_lock)); xpq_idx++; if (__predict_false(xpq_idx == XPQUEUE_SIZE)) xpq_flush_queue(); @@ -201,6 +221,7 @@ { XENPRINTK2((xpq_queue_machphys_update ma=0x% PRIx64 pa=0x% PRIx64 \n, (int64_t)ma, (int64_t)pa)); + KASSERT(simple_lock_held(xpq_lock)); xpq_queue[xpq_idx].ptr = ma | MMU_MACHPHYS_UPDATE; xpq_queue[xpq_idx].val = (pa - XPMAP_OFFSET) PAGE_SHIFT; xpq_increment_idx(); @@ -214,6 +235,7 @@ { KASSERT((ptr 3) == 0); + KASSERT(simple_lock_held(xpq_lock)); xpq_queue[xpq_idx].ptr = (paddr_t)ptr | MMU_NORMAL_PT_UPDATE; xpq_queue[xpq_idx].val = val; xpq_increment_idx(); @@ -226,6 +248,7 @@ xpq_queue_pt_switch(paddr_t pa) { struct mmuext_op op; + KASSERT(simple_lock_held(xpq_lock)); xpq_flush_queue(); XENPRINTK2((xpq_queue_pt_switch: 0x% PRIx64 0x% PRIx64 \n, @@ -240,6 +263,8 @@ xpq_queue_pin_table(paddr_t pa, int lvl) { struct mmuext_op op; + + KASSERT(simple_lock_held(xpq_lock)); xpq_flush_queue(); XENPRINTK2((xpq_queue_pin_l%d_table: %# PRIxPADDR \n, @@ -256,6 +281,8 @@ xpq_queue_unpin_table(paddr_t pa) { struct mmuext_op op; + + KASSERT(simple_lock_held(xpq_lock)); xpq_flush_queue(); XENPRINTK2((xpq_queue_unpin_table: %# PRIxPADDR \n, pa)); @@ -269,6 +296,8 @@ xpq_queue_set_ldt(vaddr_t va, uint32_t entries) { struct mmuext_op op; + + KASSERT(simple_lock_held(xpq_lock)); xpq_flush_queue(); XENPRINTK2((xpq_queue_set_ldt\n)); @@ -284,6 +313,8 @@ xpq_queue_tlb_flush(void) { struct mmuext_op op; + +
CVS commit: xsrc/external/mit/freetype/dist/include/freetype/config
Module Name:xsrc Committed By: tsutsui Date: Wed Aug 10 10:32:19 UTC 2011 Modified Files: xsrc/external/mit/freetype/dist/include/freetype/config: ftoption.h Log Message: Make it possible to disable #define FT_CONFIG_OPTION_USER_BZIP2 setting by -DFT_CONFIG_OPTION_DISABLE_BZIP2 for tools build on systems which don't have native bzip2 support. Ok'ed by mrg@ in PR xsrc/45223. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ xsrc/external/mit/freetype/dist/include/freetype/config/ftoption.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: xsrc/external/mit/freetype/dist/include/freetype/config/ftoption.h diff -u xsrc/external/mit/freetype/dist/include/freetype/config/ftoption.h:1.2 xsrc/external/mit/freetype/dist/include/freetype/config/ftoption.h:1.3 --- xsrc/external/mit/freetype/dist/include/freetype/config/ftoption.h:1.2 Sat Jul 23 23:30:59 2011 +++ xsrc/external/mit/freetype/dist/include/freetype/config/ftoption.h Wed Aug 10 10:32:19 2011 @@ -200,7 +200,9 @@ /* */ /* Define this macro if you want to enable this `feature'. */ /* */ +#ifndef FT_CONFIG_OPTION_DISABLE_BZIP2 #define FT_CONFIG_OPTION_USE_BZIP2 +#endif /*/
CVS commit: src/external/mit/xorg/tools
Module Name:src Committed By: tsutsui Date: Wed Aug 10 10:34:49 UTC 2011 Modified Files: src/external/mit/xorg/tools/fc-cache: Makefile src/external/mit/xorg/tools/mkfontscale: Makefile Log Message: Disable bzip2 support in freetype on xorg tools build. Fixes PR xsrc/45223 (xorg tools build fails on CentOS due to lack of bz2 support). To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/external/mit/xorg/tools/fc-cache/Makefile cvs rdiff -u -r1.3 -r1.4 src/external/mit/xorg/tools/mkfontscale/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/external/mit/xorg/tools/fc-cache/Makefile diff -u src/external/mit/xorg/tools/fc-cache/Makefile:1.4 src/external/mit/xorg/tools/fc-cache/Makefile:1.5 --- src/external/mit/xorg/tools/fc-cache/Makefile:1.4 Sat Jul 23 23:42:02 2011 +++ src/external/mit/xorg/tools/fc-cache/Makefile Wed Aug 10 10:34:48 2011 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.4 2011/07/23 23:42:02 mrg Exp $ +# $NetBSD: Makefile,v 1.5 2011/08/10 10:34:48 tsutsui Exp $ NOMAN= 1 @@ -39,8 +39,8 @@ .PATH: ${FREETYPE}/src/gzip SRCS.freetype+= ftgzip.c -.PATH: ${FREETYPE}/src/bzip2 -SRCS.freetype+= ftbzip2.c +#.PATH: ${FREETYPE}/src/bzip2 +#SRCS.freetype+= ftbzip2.c .PATH: ${FREETYPE}/src/lzw SRCS.freetype+= ftlzw.c @@ -100,12 +100,14 @@ -DFT2_BUILD_LIBRARY \ -DXML_BYTE_ORDER=0 -DHAVE_MEMMOVE=1 \ -DHAVE_STDINT_H -DHAVE_RANDOM -DDARWIN_NO_CARBON +HOST_CPPFLAGS+= -DFT_CONFIG_OPTION_DISABLE_BZIP2 HOST_CPPFLAGS+= -I${FONTCONFIG} -I${FREETYPE} \ -I${FREETYPE}/include -I${EXPAT}/lib \ -I${FONTCONFIG}/../include \ -I${DESTDIR}${X11INCDIR} -I. -LDADD= -lz -lbz2 +LDADD= -lz +#LDADD+= -lbz2 FCARCH_DEPFILE= fc-cache.c .include ../../lib/fontconfig/src/Makefile.fcarch Index: src/external/mit/xorg/tools/mkfontscale/Makefile diff -u src/external/mit/xorg/tools/mkfontscale/Makefile:1.3 src/external/mit/xorg/tools/mkfontscale/Makefile:1.4 --- src/external/mit/xorg/tools/mkfontscale/Makefile:1.3 Sat Jul 23 23:42:02 2011 +++ src/external/mit/xorg/tools/mkfontscale/Makefile Wed Aug 10 10:34:48 2011 @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.3 2011/07/23 23:42:02 mrg Exp $ +# $NetBSD: Makefile,v 1.4 2011/08/10 10:34:48 tsutsui Exp $ NOMAN= 1 @@ -31,8 +31,8 @@ .PATH: ${FREETYPE}/src/gzip SRCS.freetype+= ftgzip.c -.PATH: ${FREETYPE}/src/bzip2 -SRCS.freetype+= ftbzip2.c +#.PATH: ${FREETYPE}/src/bzip2 +#SRCS.freetype+= ftbzip2.c .PATH: ${FREETYPE}/src/lzw SRCS.freetype+= ftlzw.c @@ -78,11 +78,13 @@ SRCS+= ${SRCS.mkfontscale} ${SRCS.freetype} ${SRCS.fontenc} -LDADD= -lz -lbz2 +LDADD= -lz +#LDADD+= -lbz2 HOST_CPPFLAGS= -DFONTENC_NO_LIBFONT -DXFREE86_FT2 -DFONTENC_NO_LIBFONT \ -DFT2_BUILD_LIBRARY -DDARWIN_NO_CARBON \ -DFONT_ENCODINGS_DIRECTORY=\${X11FONTDIR}/encodings/encodings.dir\ +HOST_CPPFLAGS+= -DFT_CONFIG_OPTION_DISABLE_BZIP2 HOST_CPPFLAGS+= -I${FREETYPE}/include -I${DESTDIR}${X11INCDIR} \ -I${DESTDIR}${X11INCDIR}/freetype2 # -I${X11SRCDIR.xc}/include/fonts
CVS commit: src
Module Name:src Committed By: uch Date: Wed Aug 10 11:31:49 UTC 2011 Modified Files: src/sbin/newfs_v7fs: main.c newfs_v7fs.8 newfs_v7fs.c newfs_v7fs.h src/usr.sbin/makefs: v7fs.c v7fs_makefs.h src/usr.sbin/makefs/v7fs: v7fs_estimate.c v7fs_populate.c Log Message: newfs_v7fs(8)'s -v and -P options are obsolete. changed to newfs(8) compatible -V option. To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 src/sbin/newfs_v7fs/main.c cvs rdiff -u -r1.2 -r1.3 src/sbin/newfs_v7fs/newfs_v7fs.8 cvs rdiff -u -r1.1 -r1.2 src/sbin/newfs_v7fs/newfs_v7fs.c \ src/sbin/newfs_v7fs/newfs_v7fs.h cvs rdiff -u -r1.2 -r1.3 src/usr.sbin/makefs/v7fs.c cvs rdiff -u -r1.1 -r1.2 src/usr.sbin/makefs/v7fs_makefs.h cvs rdiff -u -r1.1 -r1.2 src/usr.sbin/makefs/v7fs/v7fs_estimate.c cvs rdiff -u -r1.2 -r1.3 src/usr.sbin/makefs/v7fs/v7fs_populate.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sbin/newfs_v7fs/main.c diff -u src/sbin/newfs_v7fs/main.c:1.9 src/sbin/newfs_v7fs/main.c:1.10 --- src/sbin/newfs_v7fs/main.c:1.9 Tue Aug 9 11:18:28 2011 +++ src/sbin/newfs_v7fs/main.c Wed Aug 10 11:31:49 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: main.c,v 1.9 2011/08/09 11:18:28 uch Exp $ */ +/* $NetBSD: main.c,v 1.10 2011/08/10 11:31:49 uch Exp $ */ /*- * Copyright (c) 2011 The NetBSD Foundation, Inc. @@ -35,7 +35,7 @@ #include sys/cdefs.h #ifndef lint -__RCSID($NetBSD: main.c,v 1.9 2011/08/09 11:18:28 uch Exp $); +__RCSID($NetBSD: main.c,v 1.10 2011/08/10 11:31:49 uch Exp $); #endif /* not lint */ #include sys/param.h @@ -54,7 +54,8 @@ #include newfs_v7fs.h #include progress.h /*../sbin/fsck */ -#define VPRINTF(fmt, args...) { if (verbose) printf(fmt, ##args); } +#define VPRINTF(lv, fmt, args...) { if (v7fs_newfs_verbose = lv) \ + printf(fmt, ##args); } static v7fs_daddr_t determine_ilist_size(v7fs_daddr_t volume_size, int32_t files) @@ -170,14 +171,14 @@ progress(0); if (j == (int32_t)fs-superblock.volume_size) { - VPRINTF(\nlast freeblock #%d\n, + VPRINTF(4, \nlast freeblock #%d\n, (*val32)(fb-freeblock[i + 1])); memmove(fb-freeblock + 1, fb-freeblock + i + 1, k * sizeof(v7fs_daddr_t)); fb-freeblock[0] = 0; /* Terminate link; */ fb-nfreeblock = (*val16)(k + 1); - VPRINTF(last freeblock contains #%d\n, + VPRINTF(4, last freeblock contains #%d\n, (*val16)(fb-nfreeblock)); fs-io.write(fs-io.cookie, buf, listblk); return 0; @@ -207,7 +208,7 @@ int32_t i, j; /* Setup ilist. (ilist must be zero filled. becuase of they are free) */ - VPRINTF(Zero clear ilist.\n); + VPRINTF(4, Zero clear ilist.\n); progress((struct progress_arg){ .label = zero ilist, .tick = ilist_size / PROGRESS_BAR_GRANULE }); memset(buf, 0, sizeof buf); @@ -218,7 +219,7 @@ #ifndef HAVE_NBTOOL_CONFIG_H progress_done(); #endif - VPRINTF(\n); + VPRINTF(4, \n); /* Construct superblock */ sb = fs-superblock; @@ -227,14 +228,14 @@ sb-update_time = time(NULL); /* fill free inode cache. */ - VPRINTF(Setup inode cache.\n); + VPRINTF(4, Setup inode cache.\n); sb-nfreeinode = V7FS_MAX_FREEINODE; for (i = V7FS_MAX_FREEINODE - 1, j = V7FS_ROOT_INODE; i = 0; i--, j++) sb-freeinode[i] = j; sb-total_freeinode = ilist_size * V7FS_INODE_PER_BLOCK - 1; /* fill free block cache. */ - VPRINTF(Setup free block cache.\n); + VPRINTF(4, Setup free block cache.\n); sb-nfreeblock = V7FS_MAX_FREEBLOCK; for (i = V7FS_MAX_FREEBLOCK - 1, j = sb-datablock_start_sector; i = 0; i--, j++) @@ -251,7 +252,7 @@ } /* Construct freeblock list */ - VPRINTF(Setup whole freeblock list.\n); + VPRINTF(4, Setup whole freeblock list.\n); progress((struct progress_arg){ .label = freeblock list, .tick = (volume_size - sb-datablock_start_sector) / PROGRESS_BAR_GRANULE}); blk = sb-freeblock[0]; @@ -261,7 +262,7 @@ progress_done(); #endif - VPRINTF(done.\n); + VPRINTF(4, done.\n); return 0; } @@ -283,7 +284,7 @@ ilist_size = determine_ilist_size(volume_size, maxfile); - VPRINTF(volume size=%d, ilist size=%d, endian=%d, NAME_MAX=%d\n, + VPRINTF(1, volume size=%d, ilist size=%d, endian=%d, NAME_MAX=%d\n, volume_size, ilist_size, mount-endian, V7FS_NAME_MAX); /* Setup I/O ops. */ Index: src/sbin/newfs_v7fs/newfs_v7fs.8 diff -u src/sbin/newfs_v7fs/newfs_v7fs.8:1.2 src/sbin/newfs_v7fs/newfs_v7fs.8:1.3 --- src/sbin/newfs_v7fs/newfs_v7fs.8:1.2 Mon Jun 27 13:50:31 2011 +++ src/sbin/newfs_v7fs/newfs_v7fs.8 Wed Aug 10 11:31:49 2011 @@ -1,4 +1,4 @@ -.\ $NetBSD: newfs_v7fs.8,v 1.2 2011/06/27 13:50:31 wiz Exp $ +.\ $NetBSD: newfs_v7fs.8,v 1.3 2011/08/10 11:31:49 uch Exp $ .\ .\ Copyright (c) 2011 The NetBSD Foundation, Inc. .\ All rights reserved. @@ -64,10 +64,11 @@ .Nd construct a new 7th Edition(V7) File System .Sh SYNOPSIS .Nm -.Op Fl FPvZ +.Op Fl FZ .Op Fl B Ar byte-order .Op Fl n Ar inodes .Op Fl s Ar sectors
CVS commit: src/sys/arch
Module Name:src Committed By: cherry Date: Wed Aug 10 11:39:46 UTC 2011 Modified Files: src/sys/arch/amd64/amd64: fpu.c machdep.c src/sys/arch/i386/isa: npx.c src/sys/arch/x86/x86: x86_machdep.c src/sys/arch/xen/conf: files.xen src/sys/arch/xen/include: intr.h Added Files: src/sys/arch/xen/x86: xen_ipi.c Log Message: xen ipi infrastructure To generate a diff of this commit: cvs rdiff -u -r1.35 -r1.36 src/sys/arch/amd64/amd64/fpu.c cvs rdiff -u -r1.162 -r1.163 src/sys/arch/amd64/amd64/machdep.c cvs rdiff -u -r1.140 -r1.141 src/sys/arch/i386/isa/npx.c cvs rdiff -u -r1.53 -r1.54 src/sys/arch/x86/x86/x86_machdep.c cvs rdiff -u -r1.121 -r1.122 src/sys/arch/xen/conf/files.xen cvs rdiff -u -r1.31 -r1.32 src/sys/arch/xen/include/intr.h cvs rdiff -u -r0 -r1.2 src/sys/arch/xen/x86/xen_ipi.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/amd64/amd64/fpu.c diff -u src/sys/arch/amd64/amd64/fpu.c:1.35 src/sys/arch/amd64/amd64/fpu.c:1.36 --- src/sys/arch/amd64/amd64/fpu.c:1.35 Fri Jul 1 19:24:14 2011 +++ src/sys/arch/amd64/amd64/fpu.c Wed Aug 10 11:39:44 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: fpu.c,v 1.35 2011/07/01 19:24:14 dyoung Exp $ */ +/* $NetBSD: fpu.c,v 1.36 2011/08/10 11:39:44 cherry Exp $ */ /*- * Copyright (c) 2008 The NetBSD Foundation, Inc. All @@ -100,7 +100,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: fpu.c,v 1.35 2011/07/01 19:24:14 dyoung Exp $); +__KERNEL_RCSID(0, $NetBSD: fpu.c,v 1.36 2011/08/10 11:39:44 cherry Exp $); #include opt_multiprocessor.h @@ -406,7 +406,11 @@ break; } splx(s); +#ifdef XEN + xen_send_ipi(oci, XEN_IPI_SYNCH_FPU); +#else /* XEN */ x86_send_ipi(oci, X86_IPI_SYNCH_FPU); +#endif while (pcb-pcb_fpcpu == oci ticks == hardclock_ticks) { x86_pause(); spins++; Index: src/sys/arch/amd64/amd64/machdep.c diff -u src/sys/arch/amd64/amd64/machdep.c:1.162 src/sys/arch/amd64/amd64/machdep.c:1.163 --- src/sys/arch/amd64/amd64/machdep.c:1.162 Sun Jul 17 15:16:58 2011 +++ src/sys/arch/amd64/amd64/machdep.c Wed Aug 10 11:39:45 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: machdep.c,v 1.162 2011/07/17 15:16:58 jym Exp $ */ +/* $NetBSD: machdep.c,v 1.163 2011/08/10 11:39:45 cherry Exp $ */ /*- * Copyright (c) 1996, 1997, 1998, 2000, 2006, 2007, 2008 @@ -107,7 +107,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.162 2011/07/17 15:16:58 jym Exp $); +__KERNEL_RCSID(0, $NetBSD: machdep.c,v 1.163 2011/08/10 11:39:45 cherry Exp $); /* #define XENDEBUG_LOW */ @@ -719,7 +719,11 @@ #endif /* XEN */ } +#ifdef XEN + xen_broadcast_ipi(XEN_IPI_HALT); +#else /* XEN */ x86_broadcast_ipi(X86_IPI_HALT); +#endif if (howto RB_HALT) { #if NACPICA 0 Index: src/sys/arch/i386/isa/npx.c diff -u src/sys/arch/i386/isa/npx.c:1.140 src/sys/arch/i386/isa/npx.c:1.141 --- src/sys/arch/i386/isa/npx.c:1.140 Tue Jun 7 14:53:03 2011 +++ src/sys/arch/i386/isa/npx.c Wed Aug 10 11:39:45 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: npx.c,v 1.140 2011/06/07 14:53:03 bouyer Exp $ */ +/* $NetBSD: npx.c,v 1.141 2011/08/10 11:39:45 cherry Exp $ */ /*- * Copyright (c) 2008 The NetBSD Foundation, Inc. @@ -96,7 +96,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: npx.c,v 1.140 2011/06/07 14:53:03 bouyer Exp $); +__KERNEL_RCSID(0, $NetBSD: npx.c,v 1.141 2011/08/10 11:39:45 cherry Exp $); #if 0 #define IPRINTF(x) printf x @@ -719,7 +719,11 @@ break; } splx(s); +#ifdef XEN + xen_send_ipi(oci, XEN_IPI_SYNCH_FPU); +#else /* XEN */ x86_send_ipi(oci, X86_IPI_SYNCH_FPU); +#endif while (pcb-pcb_fpcpu == oci ticks == hardclock_ticks) { x86_pause(); Index: src/sys/arch/x86/x86/x86_machdep.c diff -u src/sys/arch/x86/x86/x86_machdep.c:1.53 src/sys/arch/x86/x86/x86_machdep.c:1.54 --- src/sys/arch/x86/x86/x86_machdep.c:1.53 Mon Aug 1 11:26:31 2011 +++ src/sys/arch/x86/x86/x86_machdep.c Wed Aug 10 11:39:45 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: x86_machdep.c,v 1.53 2011/08/01 11:26:31 jmcneill Exp $ */ +/* $NetBSD: x86_machdep.c,v 1.54 2011/08/10 11:39:45 cherry Exp $ */ /*- * Copyright (c) 2002, 2006, 2007 YAMAMOTO Takashi, @@ -31,7 +31,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: x86_machdep.c,v 1.53 2011/08/01 11:26:31 jmcneill Exp $); +__KERNEL_RCSID(0, $NetBSD: x86_machdep.c,v 1.54 2011/08/10 11:39:45 cherry Exp $); #include opt_modular.h #include opt_physmem.h @@ -204,10 +204,13 @@ if (l == ci-ci_data.cpu_idlelwp) { if (ci == cur) return; -#ifndef XEN /* XXX review when Xen gets MP support */ - if (x86_cpu_idle_ipi != false) + if (x86_cpu_idle_ipi != false) { +#ifdef XEN + xen_send_ipi(ci, XEN_IPI_KICK); +#else /* XEN */ x86_send_ipi(ci, 0); -#endif +#endif /* XEN */ + } return; } @@ -228,7 +231,11 @@ return; } if ((flags RESCHED_IMMED) != 0) { +#ifdef XEN + xen_send_ipi(ci, XEN_IPI_KICK); +#else /*
CVS commit: src/sys/fs/union
Module Name:src Committed By: hannken Date: Wed Aug 10 15:56:01 UTC 2011 Modified Files: src/sys/fs/union: union_subr.c Log Message: Update the (shared) v_interlock if the upper node changes. To generate a diff of this commit: cvs rdiff -u -r1.45 -r1.46 src/sys/fs/union/union_subr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/fs/union/union_subr.c diff -u src/sys/fs/union/union_subr.c:1.45 src/sys/fs/union/union_subr.c:1.46 --- src/sys/fs/union/union_subr.c:1.45 Wed Aug 10 06:19:54 2011 +++ src/sys/fs/union/union_subr.c Wed Aug 10 15:56:01 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: union_subr.c,v 1.45 2011/08/10 06:19:54 hannken Exp $ */ +/* $NetBSD: union_subr.c,v 1.46 2011/08/10 15:56:01 hannken Exp $ */ /* * Copyright (c) 1994 @@ -72,7 +72,7 @@ */ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: union_subr.c,v 1.45 2011/08/10 06:19:54 hannken Exp $); +__KERNEL_RCSID(0, $NetBSD: union_subr.c,v 1.46 2011/08/10 15:56:01 hannken Exp $); #include sys/param.h #include sys/systm.h @@ -223,6 +223,12 @@ un-un_uppervp = uppervp; un-un_uppersz = VNOVAL; + /* Update union vnode interlock. */ + if (uppervp != NULL) { + mutex_obj_hold(uppervp-v_interlock); + uvm_obj_setlock(UNIONTOV(un)-v_uobj, + uppervp-v_interlock); + } } if (docache (ohash != nhash)) {
CVS commit: src/sys/arch/xen/x86
Module Name:src Committed By: cherry Date: Wed Aug 10 20:38:45 UTC 2011 Modified Files: src/sys/arch/xen/x86: xen_ipi.c Log Message: KNF police (rmind@ :-) To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/sys/arch/xen/x86/xen_ipi.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/xen/x86/xen_ipi.c diff -u src/sys/arch/xen/x86/xen_ipi.c:1.2 src/sys/arch/xen/x86/xen_ipi.c:1.3 --- src/sys/arch/xen/x86/xen_ipi.c:1.2 Wed Aug 10 11:39:46 2011 +++ src/sys/arch/xen/x86/xen_ipi.c Wed Aug 10 20:38:45 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: xen_ipi.c,v 1.2 2011/08/10 11:39:46 cherry Exp $ */ +/* $NetBSD: xen_ipi.c,v 1.3 2011/08/10 20:38:45 cherry Exp $ */ /*- * Copyright (c) 2011 The NetBSD Foundation, Inc. @@ -33,10 +33,10 @@ /* * Based on: x86/ipi.c - * __KERNEL_RCSID(0, $NetBSD: xen_ipi.c,v 1.2 2011/08/10 11:39:46 cherry Exp $); + * __KERNEL_RCSID(0, $NetBSD: xen_ipi.c,v 1.3 2011/08/10 20:38:45 cherry Exp $); */ -__KERNEL_RCSID(0, $NetBSD: xen_ipi.c,v 1.2 2011/08/10 11:39:46 cherry Exp $); +__KERNEL_RCSID(0, $NetBSD: xen_ipi.c,v 1.3 2011/08/10 20:38:45 cherry Exp $); #include sys/types.h @@ -96,14 +96,11 @@ ci-ci_ipi_events[bit].ev_count++; if (ipifunc[bit] != NULL) { (*ipifunc[bit])(ci, regs); - } - else { + } else { panic(ipifunc[%d] unsupported!\n, bit); /* NOTREACHED */ } } - - return; } /* Must be called once for every cpu that expects to send/recv ipis */ @@ -119,7 +116,8 @@ vcpu = ci-ci_cpuid; KASSERT(vcpu MAX_VIRT_CPUS); - evtchn = ci-ci_ipi_evtchn = bind_vcpu_to_evtch(vcpu); + evtchn = bind_vcpu_to_evtch(vcpu); + ci-ci_ipi_evtchn = evtchn; KASSERT(evtchn != -1 evtchn NR_EVENT_CHANNELS); @@ -130,7 +128,6 @@ } hypervisor_enable_event(evtchn); - return; } /* prefer this to global variable */ @@ -148,8 +145,7 @@ if (ipimask ~masks) { return false; - } - else { + } else { return true; } @@ -162,15 +158,14 @@ KASSERT(ci != NULL || ci != curcpu()); - if (!(ci-ci_flags CPUF_RUNNING)) { + if ((ci-ci_flags CPUF_RUNNING) != 0) { return ENOENT; } evtchn = ci-ci_ipi_evtchn; - if (false == valid_ipimask(ipimask)) { - panic(xen_send_ipi() called with invalid ipimask\n); - /* NOTREACHED */ - } + + KASSERTMSG(valid_ipimask(ipimask) == true, + (xen_send_ipi() called with invalid ipimask\n)); atomic_or_32(ci-ci_ipis, ipimask); hypervisor_notify_via_evtchn(evtchn); @@ -184,10 +179,8 @@ struct cpu_info *ci, *self = curcpu(); CPU_INFO_ITERATOR cii; - if (false == valid_ipimask(ipimask)) { - panic(xen_broadcast_ipi() called with invalid ipimask\n); - /* NOTREACHED */ - } + KASSERTMSG(valid_ipimask(ipimask) == true, + (xen_broadcast_ipi() called with invalid ipimask\n)); /* * XXX-cherry: there's an implicit broadcast sending order @@ -211,9 +204,6 @@ } } } - - return; - /* NOTREACHED */ } /* MD wrapper for the xcall(9) callback. */ @@ -228,7 +218,6 @@ panic(vcpu% PRIuCPUID shutdown failed.\n, ci-ci_cpuid); } - return; } static void @@ -242,7 +231,6 @@ #else npxsave_cpu(true); #endif /* __x86_64__ */ - return; } static void @@ -291,7 +279,6 @@ KASSERT(intrf != NULL); xc_ipi_handler(); - return; } void @@ -304,7 +291,7 @@ if (ci) { if (0 != xen_send_ipi(ci, XEN_IPI_XCALL)) { panic(xen_send_ipi(XEN_IPI_XCALL) failed\n); - }; + } } else { xen_broadcast_ipi(XEN_IPI_XCALL); }
CVS commit: src/sys/arch/xen
Module Name:src Committed By: cherry Date: Wed Aug 10 21:46:02 UTC 2011 Modified Files: src/sys/arch/xen/include: hypervisor.h src/sys/arch/xen/x86: hypervisor_machdep.c src/sys/arch/xen/xen: evtchn.c Log Message: refactor the bitstring/mask operations to be behind an API. Make pending interrupt marking cpu aware. To generate a diff of this commit: cvs rdiff -u -r1.31 -r1.32 src/sys/arch/xen/include/hypervisor.h cvs rdiff -u -r1.14 -r1.15 src/sys/arch/xen/x86/hypervisor_machdep.c cvs rdiff -u -r1.48 -r1.49 src/sys/arch/xen/xen/evtchn.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/xen/include/hypervisor.h diff -u src/sys/arch/xen/include/hypervisor.h:1.31 src/sys/arch/xen/include/hypervisor.h:1.32 --- src/sys/arch/xen/include/hypervisor.h:1.31 Mon Oct 19 18:41:10 2009 +++ src/sys/arch/xen/include/hypervisor.h Wed Aug 10 21:46:02 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: hypervisor.h,v 1.31 2009/10/19 18:41:10 bouyer Exp $ */ +/* $NetBSD: hypervisor.h,v 1.32 2011/08/10 21:46:02 cherry Exp $ */ /* * Copyright (c) 2006 Manuel Bouyer. @@ -91,6 +91,7 @@ #include xen/xen3-public/io/netif.h #include xen/xen3-public/io/blkif.h +#include machine/cpu.h #include machine/hypercalls.h #undef u8 @@ -136,7 +137,8 @@ void hypervisor_mask_event(unsigned int); void hypervisor_clear_event(unsigned int); void hypervisor_enable_ipl(unsigned int); -void hypervisor_set_ipending(uint32_t, int, int); +void hypervisor_set_ipending(struct cpu_info *, + uint32_t, int, int); void hypervisor_machdep_attach(void); /* Index: src/sys/arch/xen/x86/hypervisor_machdep.c diff -u src/sys/arch/xen/x86/hypervisor_machdep.c:1.14 src/sys/arch/xen/x86/hypervisor_machdep.c:1.15 --- src/sys/arch/xen/x86/hypervisor_machdep.c:1.14 Wed Mar 30 21:53:58 2011 +++ src/sys/arch/xen/x86/hypervisor_machdep.c Wed Aug 10 21:46:02 2011 @@ -1,4 +1,4 @@ -/* $NetBSD: hypervisor_machdep.c,v 1.14 2011/03/30 21:53:58 jym Exp $ */ +/* $NetBSD: hypervisor_machdep.c,v 1.15 2011/08/10 21:46:02 cherry Exp $ */ /* * @@ -54,7 +54,7 @@ #include sys/cdefs.h -__KERNEL_RCSID(0, $NetBSD: hypervisor_machdep.c,v 1.14 2011/03/30 21:53:58 jym Exp $); +__KERNEL_RCSID(0, $NetBSD: hypervisor_machdep.c,v 1.15 2011/08/10 21:46:02 cherry Exp $); #include sys/param.h #include sys/systm.h @@ -86,13 +86,79 @@ // #define PORT_DEBUG 4 // #define EARLY_DEBUG_EVENT +/* callback function type */ +typedef void (*iterate_func_t)(struct cpu_info *, unsigned int, + unsigned int, unsigned int, void *); + +static inline void +evt_iterate_bits(struct cpu_info *ci, volatile unsigned long *pendingl1, + volatile unsigned long *pendingl2, + volatile unsigned long *mask, + iterate_func_t iterate_pending, void *iterate_args) +{ + + KASSERT(pendingl1 != NULL); + KASSERT(pendingl2 != NULL); + + unsigned long l1, l2; + unsigned int l1i, l2i, port; + + l1 = xen_atomic_xchg(pendingl1, 0); + while ((l1i = xen_ffs(l1)) != 0) { + l1i--; + l1 = ~(1UL l1i); + + l2 = pendingl2[l1i] (mask != NULL ? ~mask[l1i] : -1UL); + + if (mask != NULL) xen_atomic_setbits_l(mask[l1i], l2); + xen_atomic_clearbits_l(pendingl2[l1i], l2); + + while ((l2i = xen_ffs(l2)) != 0) { + l2i--; + l2 = ~(1UL l2i); + + port = (l1i LONG_SHIFT) + l2i; + + iterate_pending(ci, port, l1i, l2i, iterate_args); + } + } +} + +/* + * Set per-cpu pending information for outstanding events that + * cannot be processed now. + */ + +static inline void +evt_set_pending(struct cpu_info *ci, unsigned int port, unsigned int l1i, + unsigned int l2i, void *args) +{ + + KASSERT(args != NULL); + KASSERT(ci != NULL); + + int *ret = args; + + if (evtsource[port]) { + hypervisor_set_ipending(ci, evtsource[port]-ev_imask, + l1i, l2i); + evtsource[port]-ev_evcnt.ev_count++; + if (*ret == 0 ci-ci_ilevel + evtsource[port]-ev_maxlevel) + *ret = 1; + } +#ifdef DOM0OPS + else { + /* set pending event */ + xenevt_setipending(l1i, l2i); + } +#endif +} + int stipending(void); int stipending(void) { - unsigned long l1; - unsigned long l2; - unsigned int l1i, l2i, port; volatile shared_info_t *s = HYPERVISOR_shared_info; struct cpu_info *ci; volatile struct vcpu_info *vci; @@ -120,45 +186,16 @@ * we're only called after STIC, so we know that we'll have to * STI at the end */ + while (vci-evtchn_upcall_pending) { cli(); + vci-evtchn_upcall_pending = 0; - /* NB. No need for a barrier here -- XCHG is a barrier - * on x86. */ - l1 = xen_atomic_xchg(vci-evtchn_pending_sel, 0); - while ((l1i = xen_ffs(l1)) != 0) { - l1i--; - l1 = ~(1UL l1i); - - l2 = s-evtchn_pending[l1i] ~s-evtchn_mask[l1i]; - /* - * mask and clear event. More efficient than calling - * hypervisor_mask/clear_event for each event. - */ - xen_atomic_setbits_l(s-evtchn_mask[l1i], l2); -
CVS commit: src
Module Name:src Committed By: hannken Date: Wed Aug 10 06:27:02 UTC 2011 Modified Files: src/sys/fs/union: union_vnops.c src/tests/fs/union: t_pr.c Log Message: For devices, sockets and fifos ignore setting the file size to zero to make open(..., O_TRUNC) happy and allow them to write through the lower layer. Fixes PR #43560 (writing to null device in unionfs fails) To generate a diff of this commit: cvs rdiff -u -r1.42 -r1.43 src/sys/fs/union/union_vnops.c cvs rdiff -u -r1.7 -r1.8 src/tests/fs/union/t_pr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/xen/include
Module Name:src Committed By: cherry Date: Wed Aug 10 06:29:23 UTC 2011 Added Files: src/sys/arch/xen/include: intrdefs.h Log Message: Add Xen specific ipi bitmasks To generate a diff of this commit: cvs rdiff -u -r0 -r1.10 src/sys/arch/xen/include/intrdefs.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch
Module Name:src Committed By: cherry Date: Wed Aug 10 06:30:59 UTC 2011 Modified Files: src/sys/arch/amd64/include: intrdefs.h src/sys/arch/i386/include: intrdefs.h Log Message: Include Xen specific definitions. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/sys/arch/amd64/include/intrdefs.h cvs rdiff -u -r1.3 -r1.4 src/sys/arch/i386/include/intrdefs.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/amd64/include
Module Name:src Committed By: cherry Date: Wed Aug 10 06:33:13 UTC 2011 Modified Files: src/sys/arch/amd64/include: frameasm.h Log Message: Correct offset calculation for ci To generate a diff of this commit: cvs rdiff -u -r1.15 -r1.16 src/sys/arch/amd64/include/frameasm.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/i386/i386
Module Name:src Committed By: cherry Date: Wed Aug 10 06:38:02 UTC 2011 Modified Files: src/sys/arch/i386/i386: machdep.c Log Message: tweak the xen specific startup path to not use %fs before it is setup. Minor refactoring. Use Xen specific ipi calls. To generate a diff of this commit: cvs rdiff -u -r1.706 -r1.707 src/sys/arch/i386/i386/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/x86/include
Module Name:src Committed By: cherry Date: Wed Aug 10 06:40:35 UTC 2011 Modified Files: src/sys/arch/x86/include: cpu.h Log Message: Add Xen specific members to struct cpu_info, Add proper per-cpu curcpu() functionality To generate a diff of this commit: cvs rdiff -u -r1.35 -r1.36 src/sys/arch/x86/include/cpu.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/distrib/sets/lists/comp
Module Name:src Committed By: kiyohara Date: Wed Aug 10 07:56:59 UTC 2011 Modified Files: src/distrib/sets/lists/comp: md.bebox Log Message: Obsolete some include files. To generate a diff of this commit: cvs rdiff -u -r1.34 -r1.35 src/distrib/sets/lists/comp/md.bebox Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/external/bsd/pcc/dist/pcc/cc/ccom
Module Name:src Committed By: plunky Date: Wed Aug 10 08:08:39 UTC 2011 Modified Files: src/external/bsd/pcc/dist/pcc/cc/ccom: pftn.c Log Message: fix up some undefined behaviour, to appease gcc 4.5 To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/external/bsd/pcc/dist/pcc/cc/ccom/pftn.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/external/bsd/pcc/dist/pcc/mip
Module Name:src Committed By: plunky Date: Wed Aug 10 08:09:38 UTC 2011 Modified Files: src/external/bsd/pcc/dist/pcc/mip: common.c Log Message: use offsetof() rather than rolling our own, to appease gcc 4.5 To generate a diff of this commit: cvs rdiff -u -r1.1.1.3 -r1.2 src/external/bsd/pcc/dist/pcc/mip/common.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/external/bsd/pcc/libexec/ccom
Module Name:src Committed By: plunky Date: Wed Aug 10 08:10:39 UTC 2011 Modified Files: src/external/bsd/pcc/libexec/ccom: Makefile Log Message: disable some warnings to appease gcc-4.5 To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 src/external/bsd/pcc/libexec/ccom/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/doc
Module Name:src Committed By: christos Date: Wed Aug 10 09:42:29 UTC 2011 Modified Files: src/doc: 3RDPARTY Log Message: fix root.cache To generate a diff of this commit: cvs rdiff -u -r1.857 -r1.858 src/doc/3RDPARTY Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/xen
Module Name:src Committed By: cherry Date: Wed Aug 10 09:50:37 UTC 2011 Modified Files: src/sys/arch/xen/include: xenpmap.h src/sys/arch/xen/x86: x86_xpmap.c Log Message: Introduce locking primitives for Xen pte operations, and xen helper calls for MP related MMU ops To generate a diff of this commit: cvs rdiff -u -r1.27 -r1.28 src/sys/arch/xen/include/xenpmap.h cvs rdiff -u -r1.28 -r1.29 src/sys/arch/xen/x86/x86_xpmap.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: xsrc/external/mit/freetype/dist/include/freetype/config
Module Name:xsrc Committed By: tsutsui Date: Wed Aug 10 10:32:19 UTC 2011 Modified Files: xsrc/external/mit/freetype/dist/include/freetype/config: ftoption.h Log Message: Make it possible to disable #define FT_CONFIG_OPTION_USER_BZIP2 setting by -DFT_CONFIG_OPTION_DISABLE_BZIP2 for tools build on systems which don't have native bzip2 support. Ok'ed by mrg@ in PR xsrc/45223. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 \ xsrc/external/mit/freetype/dist/include/freetype/config/ftoption.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/external/mit/xorg/tools
Module Name:src Committed By: tsutsui Date: Wed Aug 10 10:34:49 UTC 2011 Modified Files: src/external/mit/xorg/tools/fc-cache: Makefile src/external/mit/xorg/tools/mkfontscale: Makefile Log Message: Disable bzip2 support in freetype on xorg tools build. Fixes PR xsrc/45223 (xorg tools build fails on CentOS due to lack of bz2 support). To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/external/mit/xorg/tools/fc-cache/Makefile cvs rdiff -u -r1.3 -r1.4 src/external/mit/xorg/tools/mkfontscale/Makefile Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src
Module Name:src Committed By: uch Date: Wed Aug 10 11:31:49 UTC 2011 Modified Files: src/sbin/newfs_v7fs: main.c newfs_v7fs.8 newfs_v7fs.c newfs_v7fs.h src/usr.sbin/makefs: v7fs.c v7fs_makefs.h src/usr.sbin/makefs/v7fs: v7fs_estimate.c v7fs_populate.c Log Message: newfs_v7fs(8)'s -v and -P options are obsolete. changed to newfs(8) compatible -V option. To generate a diff of this commit: cvs rdiff -u -r1.9 -r1.10 src/sbin/newfs_v7fs/main.c cvs rdiff -u -r1.2 -r1.3 src/sbin/newfs_v7fs/newfs_v7fs.8 cvs rdiff -u -r1.1 -r1.2 src/sbin/newfs_v7fs/newfs_v7fs.c \ src/sbin/newfs_v7fs/newfs_v7fs.h cvs rdiff -u -r1.2 -r1.3 src/usr.sbin/makefs/v7fs.c cvs rdiff -u -r1.1 -r1.2 src/usr.sbin/makefs/v7fs_makefs.h cvs rdiff -u -r1.1 -r1.2 src/usr.sbin/makefs/v7fs/v7fs_estimate.c cvs rdiff -u -r1.2 -r1.3 src/usr.sbin/makefs/v7fs/v7fs_populate.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sbin/newfs_v7fs
Module Name:src Committed By: wiz Date: Wed Aug 10 12:13:20 UTC 2011 Modified Files: src/sbin/newfs_v7fs: newfs_v7fs.c Log Message: Sync usage with man page. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/sbin/newfs_v7fs/newfs_v7fs.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/fs/union
Module Name:src Committed By: hannken Date: Wed Aug 10 15:56:01 UTC 2011 Modified Files: src/sys/fs/union: union_subr.c Log Message: Update the (shared) v_interlock if the upper node changes. To generate a diff of this commit: cvs rdiff -u -r1.45 -r1.46 src/sys/fs/union/union_subr.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/xen/x86
Module Name:src Committed By: cherry Date: Wed Aug 10 20:38:45 UTC 2011 Modified Files: src/sys/arch/xen/x86: xen_ipi.c Log Message: KNF police (rmind@ :-) To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/sys/arch/xen/x86/xen_ipi.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/arch/xen
Module Name:src Committed By: cherry Date: Wed Aug 10 21:46:02 UTC 2011 Modified Files: src/sys/arch/xen/include: hypervisor.h src/sys/arch/xen/x86: hypervisor_machdep.c src/sys/arch/xen/xen: evtchn.c Log Message: refactor the bitstring/mask operations to be behind an API. Make pending interrupt marking cpu aware. To generate a diff of this commit: cvs rdiff -u -r1.31 -r1.32 src/sys/arch/xen/include/hypervisor.h cvs rdiff -u -r1.14 -r1.15 src/sys/arch/xen/x86/hypervisor_machdep.c cvs rdiff -u -r1.48 -r1.49 src/sys/arch/xen/xen/evtchn.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.