From owner-p4-projects@FreeBSD.ORG Fri Jun 28 18:28:05 2013 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6D669DC; Fri, 28 Jun 2013 18:28:05 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 2D8A2DA for ; Fri, 28 Jun 2013 18:28:05 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [8.8.178.74]) by mx1.freebsd.org (Postfix) with ESMTP id 1C5F01DC7 for ; Fri, 28 Jun 2013 18:28:05 +0000 (UTC) Received: from skunkworks.freebsd.org ([127.0.1.74]) by skunkworks.freebsd.org (8.14.7/8.14.7) with ESMTP id r5SIS5Qe046329 for ; Fri, 28 Jun 2013 18:28:05 GMT (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.7/8.14.6/Submit) id r5SIS4dW046326 for perforce@freebsd.org; Fri, 28 Jun 2013 18:28:04 GMT (envelope-from jhb@freebsd.org) Date: Fri, 28 Jun 2013 18:28:04 GMT Message-Id: <201306281828.r5SIS4dW046326@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin Subject: PERFORCE change 230274 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.14 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 28 Jun 2013 18:28:05 -0000 http://p4web.freebsd.org/@@230274?ac=10 Change 230274 by jhb@jhb_jhbbsd on 2013/06/28 18:27:15 IFC @230272 Affected files ... .. //depot/projects/smpng/share/man/man9/locking.9#15 integrate .. //depot/projects/smpng/sys/amd64/include/acpica_machdep.h#9 integrate .. //depot/projects/smpng/sys/amd64/vmm/x86.c#4 integrate .. //depot/projects/smpng/sys/arm/arm/db_trace.c#24 integrate .. //depot/projects/smpng/sys/arm/arm/exception.S#12 integrate .. //depot/projects/smpng/sys/arm/include/asmacros.h#12 integrate .. //depot/projects/smpng/sys/arm/ti/am335x/am335x_lcd.c#2 integrate .. //depot/projects/smpng/sys/arm/ti/ti_scm.c#5 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_all.c#44 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_destroy.c#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_userhold.c#3 integrate .. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#37 integrate .. //depot/projects/smpng/sys/cddl/dev/dtmalloc/dtmalloc.c#3 integrate .. //depot/projects/smpng/sys/conf/files#286 integrate .. //depot/projects/smpng/sys/conf/options#201 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/acpica_prep.sh#23 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/changes.txt#24 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/common/dmrestag.c#13 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/common/dmtable.c#16 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/common/dmtbdump.c#14 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/common/dmtbinfo.c#14 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/aslcompile.c#23 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/aslmessages.h#12 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/asltree.c#15 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/aslutils.c#19 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/dtfield.c#8 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/dtio.c#11 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/dttable.c#9 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/dttemplate.h#7 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/dtutils.c#9 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/preprocess.h#5 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/compiler/prscan.c#5 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/debugger/dbcmds.c#8 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/debugger/dbdisply.c#7 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/debugger/dbinput.c#7 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/debugger/dbnames.c#6 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/disassembler/dmbuffer.c#5 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/disassembler/dmopcode.c#6 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/disassembler/dmresrcl.c#4 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/disassembler/dmresrcl2.c#4 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/events/evgpeinit.c#4 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/executer/exdump.c#5 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/namespace/nsdump.c#5 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/namespace/nsrepair2.c#5 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/namespace/nsxfname.c#3 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/resources/rsdump.c#5 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/resources/rsutils.c#6 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/tables/tbxfroot.c#4 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/utilities/uteval.c#5 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/components/utilities/utstring.c#3 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/include/acdisasm.h#16 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/include/acpixf.h#24 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/include/actables.h#7 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/include/actypes.h#18 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/include/acutils.h#15 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/include/platform/acfreebsd.h#8 integrate .. //depot/projects/smpng/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_attach.c#3 integrate .. //depot/projects/smpng/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd.c#3 integrate .. //depot/projects/smpng/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd_inc.h#3 integrate .. //depot/projects/smpng/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_radio.c#2 integrate .. //depot/projects/smpng/sys/dev/acpi_support/atk0110.c#5 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_pcib_acpi.c#40 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ah.c#23 integrate .. //depot/projects/smpng/sys/dev/ath/ath_hal/ah_internal.h#26 integrate .. //depot/projects/smpng/sys/dev/ath/if_ath_ahb.c#8 integrate .. //depot/projects/smpng/sys/dev/bge/if_bge.c#131 integrate .. //depot/projects/smpng/sys/dev/cxgbe/t4_main.c#14 integrate .. //depot/projects/smpng/sys/dev/isci/scil/sati_passthrough.c#3 integrate .. //depot/projects/smpng/sys/dev/nvme/nvme.h#4 integrate .. //depot/projects/smpng/sys/dev/nvme/nvme_ctrlr.c#4 integrate .. //depot/projects/smpng/sys/dev/nvme/nvme_private.h#4 integrate .. //depot/projects/smpng/sys/dev/nvme/nvme_qpair.c#4 integrate .. //depot/projects/smpng/sys/dev/pci/pci.c#134 integrate .. //depot/projects/smpng/sys/dev/pci/pci_private.h#30 integrate .. //depot/projects/smpng/sys/dev/re/if_re.c#100 integrate .. //depot/projects/smpng/sys/dev/usb/serial/u3g.c#35 integrate .. //depot/projects/smpng/sys/dev/usb/usbdevs#181 integrate .. //depot/projects/smpng/sys/dev/xen/blkfront/blkfront.c#19 integrate .. //depot/projects/smpng/sys/dev/xen/blkfront/block.h#9 integrate .. //depot/projects/smpng/sys/fs/ext2fs/ext2_extern.h#6 integrate .. //depot/projects/smpng/sys/geom/geom_io.c#61 integrate .. //depot/projects/smpng/sys/i386/include/acpica_machdep.h#11 integrate .. //depot/projects/smpng/sys/ia64/include/acpica_machdep.h#8 integrate .. //depot/projects/smpng/sys/kern/kern_clock.c#79 integrate .. //depot/projects/smpng/sys/kern/kern_descrip.c#147 integrate .. //depot/projects/smpng/sys/kern/subr_bus.c#105 integrate .. //depot/projects/smpng/sys/kern/subr_vmem.c#1 branch .. //depot/projects/smpng/sys/kern/vfs_bio.c#147 integrate .. //depot/projects/smpng/sys/mips/conf/AR933X_BASE#2 integrate .. //depot/projects/smpng/sys/mips/conf/AR933X_BASE.hints#2 integrate .. //depot/projects/smpng/sys/mips/conf/CARAMBOLA2.hints#2 integrate .. //depot/projects/smpng/sys/sys/bus.h#53 integrate .. //depot/projects/smpng/sys/sys/malloc.h#33 integrate .. //depot/projects/smpng/sys/sys/vmem.h#1 branch .. //depot/projects/smpng/sys/vm/uma.h#34 integrate .. //depot/projects/smpng/sys/vm/uma_core.c#98 integrate .. //depot/projects/smpng/sys/vm/uma_int.h#42 integrate .. //depot/projects/smpng/sys/vm/vm.h#22 integrate .. //depot/projects/smpng/sys/vm/vm_init.c#22 integrate .. //depot/projects/smpng/sys/vm/vm_kern.c#57 integrate .. //depot/projects/smpng/sys/vm/vm_kern.h#10 integrate .. //depot/projects/smpng/sys/vm/vm_object.c#130 integrate .. //depot/projects/smpng/sys/vm/vm_pager.c#35 integrate .. //depot/projects/smpng/sys/vm/vm_pager.h#24 integrate Differences ... ==== //depot/projects/smpng/share/man/man9/locking.9#15 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: head/share/man/man9/locking.9 250912 2013-05-22 16:33:28Z emaste $ +.\" $FreeBSD: head/share/man/man9/locking.9 252346 2013-06-28 16:33:45Z jhb $ .\" .Dd May 22, 2013 .Dt LOCKING 9 @@ -315,9 +315,9 @@ .It It is an error to do any operation that could result in unbounded sleep while holding any primitive from the 'bounded sleep' group. -For example, it is an error to try to acquire shared/exclusive lock while -holding mutex, or to try to allocate memory with M_WAITOK while holding a -read-write lock. +For example, it is an error to try to acquire a shared/exclusive lock while +holding a mutex, or to try to allocate memory with M_WAITOK while holding a +reader/writer lock. .Pp Note that the lock passed to one of the .Fn sleep ==== //depot/projects/smpng/sys/amd64/include/acpica_machdep.h#9 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: head/sys/amd64/include/acpica_machdep.h 197439 2009-09-23 15:42:35Z jhb $ + * $FreeBSD: head/sys/amd64/include/acpica_machdep.h 252280 2013-06-27 00:22:40Z jkim $ */ /****************************************************************************** @@ -69,16 +69,12 @@ (Acq) = acpi_release_global_lock(&((GLptr)->GlobalLock)); \ } while (0) -#endif /* _KERNEL */ - -#define ACPI_MACHINE_WIDTH 64 -#define COMPILER_DEPENDENT_INT64 long -#define COMPILER_DEPENDENT_UINT64 unsigned long - void acpi_SetDefaultIntrModel(int model); void acpi_cpu_c1(void); void *acpi_map_table(vm_paddr_t pa, const char *sig); void acpi_unmap_table(void *table); vm_paddr_t acpi_find_table(const char *sig); +#endif /* _KERNEL */ + #endif /* __ACPICA_MACHDEP_H__ */ ==== //depot/projects/smpng/sys/amd64/vmm/x86.c#4 (text+ko) ==== @@ -23,11 +23,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: head/sys/amd64/vmm/x86.c 249324 2013-04-10 05:59:07Z neel $ + * $FreeBSD: head/sys/amd64/vmm/x86.c 252335 2013-06-28 06:05:33Z grehan $ */ #include -__FBSDID("$FreeBSD: head/sys/amd64/vmm/x86.c 249324 2013-04-10 05:59:07Z neel $"); +__FBSDID("$FreeBSD: head/sys/amd64/vmm/x86.c 252335 2013-06-28 06:05:33Z grehan $"); #include #include @@ -45,7 +45,9 @@ #define CPUID_VM_HIGH 0x40000000 -static const char bhyve_id[12] = "BHyVE BHyVE "; +static const char bhyve_id[12] = "bhyve bhyve "; + +static uint64_t bhyve_xcpuids; int x86_emulate_cpuid(struct vm *vm, int vcpu_id, @@ -77,15 +79,13 @@ * no multi-core or SMT. */ switch (func) { + /* + * Pass these through to the guest + */ case CPUID_0000_0000: case CPUID_0000_0002: case CPUID_0000_0003: - case CPUID_0000_000A: - cpuid_count(*eax, *ecx, regs); - break; - case CPUID_8000_0000: - case CPUID_8000_0001: case CPUID_8000_0002: case CPUID_8000_0003: case CPUID_8000_0004: @@ -94,6 +94,15 @@ cpuid_count(*eax, *ecx, regs); break; + case CPUID_8000_0001: + /* + * Hide rdtscp/ia32_tsc_aux until we know how + * to deal with them. + */ + cpuid_count(*eax, *ecx, regs); + regs[3] &= ~AMDID_RDTSCP; + break; + case CPUID_8000_0007: cpuid_count(*eax, *ecx, regs); /* @@ -150,6 +159,11 @@ */ regs[2] &= ~CPUID2_MON; + /* + * Hide the performance and debug features. + */ + regs[2] &= ~CPUID2_PDCM; + /* * Hide thermal monitoring */ @@ -161,6 +175,11 @@ */ regs[3] &= ~(CPUID_MCA | CPUID_MCE | CPUID_MTRR); + /* + * Hide the debug store capability. + */ + regs[3] &= ~CPUID_DS; + /* * Disable multi-core. */ @@ -180,6 +199,7 @@ case CPUID_0000_0006: case CPUID_0000_0007: + case CPUID_0000_000A: /* * Handle the access, but report 0 for * all options @@ -203,17 +223,25 @@ case 0x40000000: regs[0] = CPUID_VM_HIGH; bcopy(bhyve_id, ®s[1], 4); - bcopy(bhyve_id, ®s[2], 4); - bcopy(bhyve_id, ®s[3], 4); + bcopy(bhyve_id + 4, ®s[2], 4); + bcopy(bhyve_id + 8, ®s[3], 4); break; + default: - /* XXX: Leaf 5? */ - return (0); + /* + * The leaf value has already been clamped so + * simply pass this through, keeping count of + * how many unhandled leaf values have been seen. + */ + atomic_add_long(&bhyve_xcpuids, 1); + cpuid_count(*eax, *ecx, regs); + break; } *eax = regs[0]; *ebx = regs[1]; *ecx = regs[2]; *edx = regs[3]; + return (1); } ==== //depot/projects/smpng/sys/arm/arm/db_trace.c#24 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: head/sys/arm/arm/db_trace.c 250254 2013-05-04 20:02:34Z ian $"); +__FBSDID("$FreeBSD: head/sys/arm/arm/db_trace.c 252320 2013-06-27 22:26:56Z andrew $"); #include #include @@ -108,6 +108,7 @@ #define INSN_VSP_REG 0x90 #define INSN_POP_COUNT 0xa0 #define INSN_FINISH 0xb0 +#define INSN_POP_REGS 0xb1 #define INSN_VSP_LARGE_INC 0xb2 /* An item in the exception index table */ @@ -268,6 +269,24 @@ /* Stop processing */ state->entries = 0; + } else if ((insn == INSN_POP_REGS)) { + unsigned int mask, reg; + + mask = db_unwind_exec_read_byte(state); + if (mask == 0 || (mask & 0xf0) != 0) + return 1; + + /* Update SP */ + update_vsp = 1; + + /* Load the registers */ + for (reg = 0; mask && reg < 4; mask >>= 1, reg++) { + if (mask & 1) { + state->registers[reg] = *vsp++; + state->update_mask |= 1 << reg; + } + } + } else if ((insn & INSN_VSP_LARGE_INC_MASK) == INSN_VSP_LARGE_INC) { unsigned int uleb128; ==== //depot/projects/smpng/sys/arm/arm/exception.S#12 (text+ko) ==== @@ -51,7 +51,7 @@ #include #include #include -__FBSDID("$FreeBSD: head/sys/arm/arm/exception.S 250253 2013-05-04 19:59:35Z ian $"); +__FBSDID("$FreeBSD: head/sys/arm/arm/exception.S 252311 2013-06-27 18:54:18Z andrew $"); .text .align 0 @@ -206,7 +206,7 @@ */ ASENTRY_NP(exception_exit) - STOP_UNWINDING + UNWINDSVCFRAME DO_AST PULLFRAMEFROMSVCANDEXIT END(exception_exit) ==== //depot/projects/smpng/sys/arm/include/asmacros.h#12 (text+ko) ==== @@ -34,7 +34,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: head/sys/arm/include/asmacros.h 239268 2012-08-15 03:03:03Z gonzo $ + * $FreeBSD: head/sys/arm/include/asmacros.h 252311 2013-06-27 18:54:18Z andrew $ */ #ifndef _MACHINE_ASMACROS_H_ @@ -206,7 +206,16 @@ mov r0, r0; /* NOP for previous instruction */ \ add sp, sp, #(4*15); /* Adjust the stack pointer */ \ ldmia sp, {sp, lr, pc}^ /* Restore lr and exit */ -#endif +#endif +#if defined(__ARM_EABI__) +#define UNWINDSVCFRAME \ + .save {r13-r15}; /* Restore sp, lr, pc */ \ + .pad #(2*4); /* Skip user sp and lr */ \ + .save {r0-r12}; /* Restore r0-r12 */ \ + .pad #(4) /* Skip spsr */ +#else +#define UNWINDSVCFRAME +#endif #define DATA(name) \ .data ; \ ==== //depot/projects/smpng/sys/arm/ti/am335x/am335x_lcd.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: head/sys/arm/ti/am335x/am335x_lcd.c 251018 2013-05-27 00:23:01Z gonzo $"); +__FBSDID("$FreeBSD: head/sys/arm/ti/am335x/am335x_lcd.c 252282 2013-06-27 00:33:08Z gonzo $"); #include #include @@ -42,6 +42,10 @@ #include #include +/* syscons bits */ +#include +#include + #include #include @@ -49,6 +53,9 @@ #include #include +#include +#include + #include #include @@ -395,12 +402,19 @@ static int am335x_lcd_probe(device_t dev) { + int err; + if (!ofw_bus_is_compatible(dev, "ti,am335x-lcd")) return (ENXIO); device_set_desc(dev, "AM335x LCD controller"); - return (0); + err = sc_probe_unit(device_get_unit(dev), + device_get_flags(dev) | SC_AUTODETECT_KBD); + if (err != 0) + return (err); + + return (BUS_PROBE_DEFAULT); } static int @@ -480,7 +494,7 @@ goto fail; err = bus_dmamem_alloc(sc->sc_dma_tag, (void **)&sc->sc_fb_base, - 0, &sc->sc_dma_map); + BUS_DMA_COHERENT, &sc->sc_dma_map); if (err) { device_printf(dev, "cannot allocate framebuffer\n"); @@ -631,6 +645,14 @@ PWM_PERIOD, PWM_PERIOD) == 0) sc->sc_backlight = 100; + err = (sc_attach_unit(device_get_unit(dev), + device_get_flags(dev) | SC_AUTODETECT_KBD)); + + if (err) { + device_printf(dev, "failed to attach syscons\n"); + goto fail; + } + am335x_lcd_syscons_setup((vm_offset_t)sc->sc_fb_base, sc->sc_fb_phys, &panel); return (0); ==== //depot/projects/smpng/sys/arm/ti/ti_scm.c#5 (text+ko) ==== @@ -46,7 +46,7 @@ * */ #include -__FBSDID("$FreeBSD: head/sys/arm/ti/ti_scm.c 245672 2013-01-19 17:12:23Z kientzle $"); +__FBSDID("$FreeBSD: head/sys/arm/ti/ti_scm.c 252229 2013-06-26 02:56:54Z rpaulo $"); #include #include @@ -163,7 +163,9 @@ /* set the mux mode */ reg_val |= (uint16_t)(mode & ti_scm_dev.padconf_muxmode_mask); - printf("setting internal %x for %s\n", reg_val, muxmode); + if (bootverbose) + device_printf(sc->sc_dev, "setting internal %x for %s\n", + reg_val, muxmode); /* write the register value (16-bit writes) */ ti_scm_write_2(sc, padconf->reg_off, reg_val); ==== //depot/projects/smpng/sys/cam/scsi/scsi_all.c#44 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: head/sys/cam/scsi/scsi_all.c 252204 2013-06-25 10:50:17Z mav $"); +__FBSDID("$FreeBSD: head/sys/cam/scsi/scsi_all.c 252250 2013-06-26 09:56:33Z mav $"); #include #include @@ -796,9 +796,9 @@ { SST(0x0B, 0x8C, SS_RDEF, "12V Voltage Warning") }, { SST(0x0C, 0xFF, SS_RDEF, - "Write Error – Too many error recovery revs") }, + "Write Error - Too many error recovery revs") }, { SST(0x11, 0xFF, SS_RDEF, - "Unrecovered Read Error – Too many error recovery revs") }, + "Unrecovered Read Error - Too many error recovery revs") }, { SST(0x19, 0x0E, SS_RDEF, "Fewer than 1/2 defect list copies") }, { SST(0x20, 0xF3, SS_RDEF, @@ -812,15 +812,15 @@ { SST(0x24, 0xF3, SS_RDEF, "Drive formatted without plist") }, { SST(0x26, 0x95, SS_RDEF, - "Invalid Field Parameter – CAP File") }, + "Invalid Field Parameter - CAP File") }, { SST(0x26, 0x96, SS_RDEF, - "Invalid Field Parameter – RAP File") }, + "Invalid Field Parameter - RAP File") }, { SST(0x26, 0x97, SS_RDEF, - "Invalid Field Parameter – TMS Firmware Tag") }, + "Invalid Field Parameter - TMS Firmware Tag") }, { SST(0x26, 0x98, SS_RDEF, - "Invalid Field Parameter – Check Sum") }, + "Invalid Field Parameter - Check Sum") }, { SST(0x26, 0x99, SS_RDEF, - "Invalid Field Parameter – Firmware Tag") }, + "Invalid Field Parameter - Firmware Tag") }, { SST(0x29, 0x08, SS_RDEF, "Write Log Dump data") }, { SST(0x29, 0x09, SS_RDEF, @@ -834,7 +834,7 @@ { SST(0x31, 0x91, SS_RDEF, "Format Corrupted World Wide Name (WWN) is Invalid") }, { SST(0x32, 0x03, SS_RDEF, - "Defect List – Length exceeds Command Allocated Length") }, + "Defect List - Length exceeds Command Allocated Length") }, { SST(0x33, 0x00, SS_RDEF, "Flash not ready for access") }, { SST(0x3F, 0x70, SS_RDEF, ==== //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_destroy.c#3 (text+ko) ==== @@ -129,9 +129,6 @@ if (pair != NULL) return (fnvpair_value_int32(pair)); - if (nvlist_empty(dsda->dsda_successful_snaps)) - return (SET_ERROR(ENOENT)); - return (0); } ==== //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_userhold.c#3 (text+ko) ==== @@ -126,10 +126,6 @@ } } - /* Return ENOENT if no holds would be created. */ - if (nvlist_empty(dduha->dduha_chkholds)) - return (SET_ERROR(ENOENT)); - return (0); } @@ -468,10 +464,6 @@ } } - /* Return ENOENT if none of the holds existed. */ - if (nvlist_empty(ddura->ddura_chkholds)) - return (SET_ERROR(ENOENT)); - return (0); } ==== //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#37 (text+ko) ==== @@ -345,10 +345,13 @@ vm_page_sleep(pp, "zfsmwb"); continue; } - } else { + } else if (pp == NULL) { pp = vm_page_alloc(obj, OFF_TO_IDX(start), VM_ALLOC_SYSTEM | VM_ALLOC_IFCACHED | VM_ALLOC_NOBUSY); + } else { + ASSERT(pp != NULL && !pp->valid); + pp = NULL; } if (pp != NULL) { ==== //depot/projects/smpng/sys/cddl/dev/dtmalloc/dtmalloc.c#3 (text+ko) ==== @@ -20,7 +20,7 @@ * * Portions Copyright 2006-2008 John Birrell jb@freebsd.org * - * $FreeBSD: head/sys/cddl/dev/dtmalloc/dtmalloc.c 179237 2008-05-23 05:59:42Z jb $ + * $FreeBSD: head/sys/cddl/dev/dtmalloc/dtmalloc.c 252325 2013-06-28 03:14:40Z markj $ * */ @@ -28,6 +28,7 @@ #include #include #include +#include #include #include #include @@ -111,8 +112,17 @@ { char name[DTRACE_FUNCNAMELEN]; struct malloc_type_internal *mtip = mtp->ks_handle; + int i; + /* + * malloc_type descriptions are allowed to contain whitespace, but + * DTrace probe identifiers are not, so replace the whitespace with + * underscores. + */ strlcpy(name, mtp->ks_shortdesc, sizeof(name)); + for (i = 0; name[i] != 0; i++) + if (isspace(name[i])) + name[i] = '_'; if (dtrace_probe_lookup(dtmalloc_id, NULL, name, "malloc") != 0) return; ==== //depot/projects/smpng/sys/conf/files#286 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: head/sys/conf/files 252064 2013-06-21 18:16:54Z gonzo $ +# $FreeBSD: head/sys/conf/files 252330 2013-06-28 03:51:20Z jeff $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -2797,6 +2797,7 @@ kern/subr_turnstile.c standard kern/subr_uio.c standard kern/subr_unit.c standard +kern/subr_vmem.c standard kern/subr_witness.c optional witness kern/sys_capability.c standard kern/sys_generic.c standard ==== //depot/projects/smpng/sys/conf/options#201 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: head/sys/conf/options 250963 2013-05-24 09:22:43Z achim $ +# $FreeBSD: head/sys/conf/options 252240 2013-06-26 05:01:50Z adrian $ # # On the handling of kernel options # @@ -785,6 +785,10 @@ # XXX when actually targetting AR9130. AH_SUPPORT_AR9130 opt_ah.h +# This is required for AR933x SoC support +AH_SUPPORT_AR9330 opt_ah.h +AH_SUPPORT_AR9340 opt_ah.h + AH_DEBUG opt_ah.h AH_ASSERT opt_ah.h AH_DEBUG_ALQ opt_ah.h ==== //depot/projects/smpng/sys/contrib/dev/acpica/acpica_prep.sh#23 (text+ko) ==== @@ -1,5 +1,5 @@ #!/bin/sh -# $FreeBSD: head/sys/contrib/dev/acpica/acpica_prep.sh 250838 2013-05-20 23:52:49Z jkim $ +# $FreeBSD: head/sys/contrib/dev/acpica/acpica_prep.sh 252279 2013-06-27 00:16:54Z jkim $ # # Unpack an ACPI CA drop and restructure it to fit the FreeBSD layout # @@ -20,8 +20,8 @@ stripdirs="generate libraries tests tools" stripfiles="Makefile README accygwin.h acefi.h achaiku.h acintel.h \ aclinux.h acmacosx.h acmsvc.h acnetbsd.h acos2.h acwin.h \ - acwin64.h new_table.txt oslinuxtbl.c osunixdir.c oswindir.c \ - oswintbl.c oswinxf.c readme.txt utclib.c" + acwin64.h new_table.txt osfreebsdtbl.c oslinuxtbl.c osunixdir.c \ + oswindir.c oswintbl.c oswinxf.c readme.txt utclib.c" # include files to canonify src_headers="acapps.h acbuffer.h accommon.h acconfig.h acdebug.h \ ==== //depot/projects/smpng/sys/contrib/dev/acpica/changes.txt#24 (text+ko) ==== @@ -1,4 +1,60 @@ ---------------------------------------- +26 June 2013. Summary of changes for version 20130626: + +1) ACPICA kernel-resident subsystem: + +Fixed an issue with runtime repair of the _CST object. Null or invalid +elements were not always removed properly. Lv Zheng. + +Removed an arbitrary restriction of 256 GPEs per GPE block (such as the +FADT-defined GPE0 and GPE1). For GPE0, GPE1, and each GPE Block Device, +the maximum number of GPEs is 1016. Use of multiple GPE block devices +makes the system-wide number of GPEs essentially unlimited. + +Example Code and Data Size: These are the sizes for the OS-independent +acpica.lib produced by the Microsoft Visual C++ 9.0 32-bit compiler. The +debug version of the code includes the debug output trace mechanism and +has a much larger code and data size. + + Current Release: + Non-Debug Version: 95.9K Code, 26.9K Data, 122.8K Total + Debug Version: 184.1K Code, 76.7K Data, 260.8K Total + Previous Release: + Non-Debug Version: 96.0K Code, 27.0K Data, 123.0K Total + Debug Version: 184.1K Code, 76.8K Data, 260.9K Total + + +2) iASL Compiler/Disassembler and Tools: + +Portable AcpiDump: Implemented full support for the Linux and FreeBSD +hosts. Now supports Linux, FreeBSD, and Windows. + +Disassembler: Added some missing types for the HEST and EINJ tables: "Set +Error Type With Address", "CMCI", "MCE", and "Flush Cacheline". + +iASL/Preprocessor: Implemented full support for nested +#if/#else/#elif/#endif blocks. Allows arbitrary depth of nested blocks. + +Disassembler: Expanded maximum output string length to 64K. Was 256 bytes +max. The original purpose of this constraint was to limit the amount of +debug output. However, the string function in question (UtPrintString) is +now used for the disassembler also, where 256 bytes is insufficient. +Reported by RehabMan@GitHub. + +iASL/DataTables: Fixed some problems and issues with compilation of DMAR +tables. ACPICA BZ 999. Lv Zheng. + +iASL: Fixed a couple of error exit issues that could result in a "Could +not delete " message during ASL compilation. + +AcpiDump: Allow "FADT" and "MADT" as valid table signatures, even though +the actual signatures for these tables are "FACP" and "APIC", +respectively. + +AcpiDump: Added support for multiple UEFI tables. Only SSDT and UEFI +tables are allowed to have multiple instances. + +---------------------------------------- 17 May 2013. Summary of changes for version 20130517: 1) ACPICA kernel-resident subsystem: ==== //depot/projects/smpng/sys/contrib/dev/acpica/common/dmrestag.c#13 (text+ko) ==== @@ -666,6 +666,7 @@ Status = AcpiNsBuildExternalPath (BufferNode, RequiredSize, Pathname); if (ACPI_FAILURE (Status)) { + ACPI_FREE (Pathname); return (NULL); } ==== //depot/projects/smpng/sys/contrib/dev/acpica/common/dmtable.c#16 (text+ko) ==== @@ -100,6 +100,7 @@ "Execute Operation", "Check Busy Status", "Get Command Status", + "Set Error Type With Address", "Unknown Action" }; @@ -110,6 +111,7 @@ "Write Register", "Write Register Value", "Noop", + "Flush Cacheline", "Unknown Instruction" }; @@ -180,6 +182,8 @@ "Local Interrupt", "SCI", "NMI", + "CMCI", /* ACPI 5.0 */ + "MCE", /* ACPI 5.0 */ "Unknown Notify Type" /* Reserved */ }; @@ -744,6 +748,11 @@ ByteLength = 8; break; + case ACPI_DMT_BUF10: + + ByteLength = 10; + break; + case ACPI_DMT_BUF16: case ACPI_DMT_UUID: @@ -862,6 +871,7 @@ break; case ACPI_DMT_BUF7: + case ACPI_DMT_BUF10: case ACPI_DMT_BUF16: case ACPI_DMT_BUF128: /* ==== //depot/projects/smpng/sys/contrib/dev/acpica/common/dmtbdump.c#14 (text+ko) ==== @@ -872,6 +872,7 @@ { return; } + AcpiOsPrintf ("\n"); switch (SubTable->Type) { @@ -924,6 +925,7 @@ { return; } + AcpiOsPrintf ("\n"); /* Dump the PCI Path entries for this device scope */ @@ -941,6 +943,7 @@ PathOffset += 2; PciPath += 2; + AcpiOsPrintf ("\n"); } /* Point to next device scope entry */ ==== //depot/projects/smpng/sys/contrib/dev/acpica/common/dmtbinfo.c#14 (text+ko) ==== @@ -780,6 +780,7 @@ { {ACPI_DMT_UINT8, ACPI_DMAR_OFFSET (Width), "Host Address Width", 0}, {ACPI_DMT_UINT8, ACPI_DMAR_OFFSET (Flags), "Flags", 0}, + {ACPI_DMT_BUF10, ACPI_DMAR_OFFSET (Reserved[0]), "Reserved", 0}, ACPI_DMT_TERMINATOR }; ==== //depot/projects/smpng/sys/contrib/dev/acpica/compiler/aslcompile.c#23 (text+ko) ==== @@ -966,7 +966,19 @@ /* Close all open files */ - Gbl_Files[ASL_FILE_PREPROCESSOR].Handle = NULL; /* the .i file is same as source file */ + /* + * Take care with the preprocessor file (.i), it might be the same + * as the "input" file, depending on where the compiler has terminated + * or aborted. Prevent attempt to close the same file twice in + * loop below. + */ + if (Gbl_Files[ASL_FILE_PREPROCESSOR].Handle == + Gbl_Files[ASL_FILE_INPUT].Handle) + { + Gbl_Files[ASL_FILE_PREPROCESSOR].Handle = NULL; + } + + /* Close the standard I/O files */ for (i = ASL_FILE_INPUT; i < ASL_MAX_FILE_TYPE; i++) { ==== //depot/projects/smpng/sys/contrib/dev/acpica/compiler/aslmessages.h#12 (text+ko) ==== @@ -248,7 +248,7 @@ ASL_MSG_TOO_MANY_ARGUMENTS, ASL_MSG_UNKNOWN_DIRECTIVE, ASL_MSG_UNKNOWN_PRAGMA, - + ASL_MSG_WARNING_DIRECTIVE, /* These messages are used by the data table compiler only */ @@ -433,6 +433,7 @@ /* ASL_MSG_TOO_MANY_ARGUMENTS */ "Too many macro arguments", /* ASL_MSG_UNKNOWN_DIRECTIVE */ "Unknown directive", /* ASL_MSG_UNKNOWN_PRAGMA */ "Unknown pragma", +/* ASL_MSG_WARNING_DIRECTIVE */ "#warning", /* Table compiler */ ==== //depot/projects/smpng/sys/contrib/dev/acpica/compiler/asltree.c#15 (text+ko) ==== @@ -823,6 +823,7 @@ { AslError (ASL_WARNING, ASL_MSG_COMPILER_INTERNAL, Child, "Child node list invalid"); + va_end(ap); return (Op); } @@ -869,8 +870,8 @@ } PrevChild = Child; } + va_end(ap); - DbgPrint (ASL_PARSE_OUTPUT, "\n\n"); return (Op); } ==== //depot/projects/smpng/sys/contrib/dev/acpica/compiler/aslutils.c#19 (text+ko) ==== @@ -353,8 +353,6 @@ va_list Args; - va_start (Args, Fmt); - if (!Gbl_DebugFlag) { return; @@ -366,6 +364,7 @@ return; } + va_start (Args, Fmt); (void) vfprintf (stderr, Fmt, Args); va_end (Args); return; ==== //depot/projects/smpng/sys/contrib/dev/acpica/compiler/dtfield.c#8 (text+ko) ==== @@ -467,12 +467,13 @@ if (ACPI_FAILURE (Status)) { DtError (ASL_ERROR, ASL_MSG_BUFFER_ELEMENT, Field, MsgBuffer); - return (ByteLength - Count); + goto Exit; } Buffer[i] = (UINT8) Value; } +Exit: ACPI_FREE (StringValue); return (ByteLength - Count); } ==== //depot/projects/smpng/sys/contrib/dev/acpica/compiler/dtio.c#11 (text+ko) ==== @@ -287,31 +287,21 @@ while (Start < Colon) { - if (*Start == ' ') + if (*Start == '[') { - Start++; - continue; - } + /* Found left bracket, go to the right bracket */ - /* Found left bracket, go to the right bracket */ - - if (*Start == '[') - { while (Start < Colon && *Start != ']') { Start++; } - - if (Start == Colon) - { - break; - } - - Start++; - continue; + } + else if (*Start != ' ') + { + break; } - break; + Start++; } >>> TRUNCATED FOR MAIL (1000 lines) <<<