From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 00:53:53 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 86653739; Sun, 28 Dec 2014 00:53:53 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 589431B02; Sun, 28 Dec 2014 00:53:53 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBS0rrMu009563; Sun, 28 Dec 2014 00:53:53 GMT (envelope-from neel@FreeBSD.org) Received: (from neel@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBS0rrEI009562; Sun, 28 Dec 2014 00:53:53 GMT (envelope-from neel@FreeBSD.org) Message-Id: <201412280053.sBS0rrEI009562@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: neel set sender to neel@FreeBSD.org using -f From: Neel Natu Date: Sun, 28 Dec 2014 00:53:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276323 - head/sys/amd64/vmm/io X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 00:53:53 -0000 Author: neel Date: Sun Dec 28 00:53:52 2014 New Revision: 276323 URL: https://svnweb.freebsd.org/changeset/base/276323 Log: Implement "special mask mode" in vatpic. OpenBSD guests always enable "special mask mode" during boot. As a result of r275952 this is flagged as an error and the guest cannot boot. Reviewed by: grehan Differential Revision: https://reviews.freebsd.org/D1384 MFC after: 1 week Modified: head/sys/amd64/vmm/io/vatpic.c Modified: head/sys/amd64/vmm/io/vatpic.c ============================================================================== --- head/sys/amd64/vmm/io/vatpic.c Sat Dec 27 23:19:08 2014 (r276322) +++ head/sys/amd64/vmm/io/vatpic.c Sun Dec 28 00:53:52 2014 (r276323) @@ -73,6 +73,7 @@ struct atpic { uint8_t request; /* Interrupt Request Register (IIR) */ uint8_t service; /* Interrupt Service (ISR) */ uint8_t mask; /* Interrupt Mask Register (IMR) */ + uint8_t smm; /* special mask mode */ int acnt[8]; /* sum of pin asserts and deasserts */ int lowprio; /* lowest priority irq */ @@ -131,8 +132,16 @@ vatpic_get_highest_isrpin(struct atpic * ATPIC_PIN_FOREACH(pin, atpic, i) { bit = (1 << pin); - if (atpic->service & bit) - return (pin); + if (atpic->service & bit) { + /* + * An IS bit that is masked by an IMR bit will not be + * cleared by a non-specific EOI in Special Mask Mode. + */ + if (atpic->smm && (atpic->mask & bit) != 0) + continue; + else + return (pin); + } } return (-1); @@ -153,6 +162,15 @@ vatpic_get_highest_irrpin(struct atpic * if (atpic->sfn) serviced &= ~(1 << 2); + /* + * In 'Special Mask Mode', when a mask bit is set in OCW1 it inhibits + * further interrupts at that level and enables interrupts from all + * other levels that are not masked. In other words the ISR has no + * bearing on the levels that can generate interrupts. + */ + if (atpic->smm) + serviced = 0; + ATPIC_PIN_FOREACH(pin, atpic, tmp) { bit = 1 << pin; @@ -261,6 +279,7 @@ vatpic_icw1(struct vatpic *vatpic, struc atpic->lowprio = 7; atpic->rd_cmd_reg = 0; atpic->poll = 0; + atpic->smm = 0; if ((val & ICW1_SNGL) != 0) { VATPIC_CTR0(vatpic, "vatpic cascade mode required"); @@ -375,8 +394,10 @@ vatpic_ocw3(struct vatpic *vatpic, struc VATPIC_CTR1(vatpic, "atpic ocw3 0x%x", val); if (val & OCW3_ESMM) { - VATPIC_CTR0(vatpic, "atpic special mask mode not implemented"); - return (-1); + atpic->smm = val & OCW3_SMM ? 1 : 0; + VATPIC_CTR2(vatpic, "%s atpic special mask mode %s", + master_atpic(vatpic, atpic) ? "master" : "slave", + atpic->smm ? "enabled" : "disabled"); } if (val & OCW3_RR) { From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 06:41:14 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 779A9BA5; Sun, 28 Dec 2014 06:41:14 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 62E0C64A1E; Sun, 28 Dec 2014 06:41:14 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBS6fE2P070639; Sun, 28 Dec 2014 06:41:14 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBS6fEX6070638; Sun, 28 Dec 2014 06:41:14 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201412280641.sBS6fEX6070638@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Sun, 28 Dec 2014 06:41:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276326 - head/cddl/contrib/opensolaris/lib/libdtrace/common X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 06:41:14 -0000 Author: jhibbits Date: Sun Dec 28 06:41:13 2014 New Revision: 276326 URL: https://svnweb.freebsd.org/changeset/base/276326 Log: Add PowerPC64 function descriptor support for dt_link.c Summary: PowerPC64 uses function descriptors in a section .opd, exporting the descriptors to the symbol table. This adds support for these into dt_link.c so that dtrace USDT probes can be compiled. Test Plan: Tested only on powerpc64. No regression testing has been performed, so I want someone with x86 hardware to regression test this. Tested on amd64 by markj Reviewers: #dtrace, markj Reviewed By: #dtrace, markj Subscribers: markj Differential Revision: https://reviews.freebsd.org/D1267 MFC after: 3 weeks Modified: head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c Modified: head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c ============================================================================== --- head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c Sun Dec 28 02:33:13 2014 (r276325) +++ head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c Sun Dec 28 06:41:13 2014 (r276326) @@ -685,8 +685,8 @@ dump_elf64(dtrace_hdl_t *dtp, const dof_ elf_file.ehdr.e_machine = EM_ARM; #elif defined(__mips__) elf_file.ehdr.e_machine = EM_MIPS; -#elif defined(__powerpc__) - elf_file.ehdr.e_machine = EM_PPC; +#elif defined(__powerpc64__) + elf_file.ehdr.e_machine = EM_PPC64; #elif defined(__sparc) elf_file.ehdr.e_machine = EM_SPARCV9; #elif defined(__i386) || defined(__amd64) @@ -784,21 +784,32 @@ dump_elf64(dtrace_hdl_t *dtp, const dof_ static int dt_symtab_lookup(Elf_Data *data_sym, int nsym, uintptr_t addr, uint_t shn, - GElf_Sym *sym) + GElf_Sym *sym, int uses_funcdesc, Elf *elf) { int i, ret = -1; + Elf64_Addr symval; + Elf_Scn *opd_scn; + Elf_Data *opd_desc; GElf_Sym s; for (i = 0; i < nsym && gelf_getsym(data_sym, i, sym) != NULL; i++) { - if (GELF_ST_TYPE(sym->st_info) == STT_FUNC && - shn == sym->st_shndx && - sym->st_value <= addr && - addr < sym->st_value + sym->st_size) { - if (GELF_ST_BIND(sym->st_info) == STB_GLOBAL) - return (0); + if (GELF_ST_TYPE(sym->st_info) == STT_FUNC) { + symval = sym->st_value; + if (uses_funcdesc) { + opd_scn = elf_getscn(elf, sym->st_shndx); + opd_desc = elf_rawdata(opd_scn, NULL); + symval = + *(uint64_t*)((char *)opd_desc->d_buf + symval); + } + if ((uses_funcdesc || shn == sym->st_shndx) && + symval <= addr && + addr < symval + sym->st_size) { + if (GELF_ST_BIND(sym->st_info) == STB_GLOBAL) + return (0); - ret = 0; - s = *sym; + ret = 0; + s = *sym; + } } } @@ -1375,7 +1386,8 @@ process_obj(dtrace_hdl_t *dtp, const cha continue; if (dt_symtab_lookup(data_sym, isym, rela.r_offset, - shdr_rel.sh_info, &fsym) != 0) { + shdr_rel.sh_info, &fsym, + (emachine1 == EM_PPC64), elf) != 0) { dt_strtab_destroy(strtab); goto err; } @@ -1536,7 +1548,8 @@ process_obj(dtrace_hdl_t *dtp, const cha p = strhyphenate(p + 3); /* strlen("___") */ if (dt_symtab_lookup(data_sym, isym, rela.r_offset, - shdr_rel.sh_info, &fsym) != 0) + shdr_rel.sh_info, &fsym, + (emachine1 == EM_PPC64), elf) != 0) goto err; if (fsym.st_name > data_str->d_size) From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 15:38:52 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2642399E; Sun, 28 Dec 2014 15:38:52 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 12A29662DF; Sun, 28 Dec 2014 15:38:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBSFcp4A018468; Sun, 28 Dec 2014 15:38:51 GMT (envelope-from antoine@FreeBSD.org) Received: (from antoine@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBSFcpaM018467; Sun, 28 Dec 2014 15:38:51 GMT (envelope-from antoine@FreeBSD.org) Message-Id: <201412281538.sBSFcpaM018467@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: antoine set sender to antoine@FreeBSD.org using -f From: Antoine Brodin Date: Sun, 28 Dec 2014 15:38:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276330 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 15:38:52 -0000 Author: antoine Date: Sun Dec 28 15:38:50 2014 New Revision: 276330 URL: https://svnweb.freebsd.org/changeset/base/276330 Log: Add ncurses to _LIBRARIES so that libmenu is correctly linked PR: ports/195782 Modified: head/share/mk/src.libnames.mk Modified: head/share/mk/src.libnames.mk ============================================================================== --- head/share/mk/src.libnames.mk Sun Dec 28 15:37:51 2014 (r276329) +++ head/share/mk/src.libnames.mk Sun Dec 28 15:38:50 2014 (r276330) @@ -110,6 +110,7 @@ _LIBRARIES= \ memstat \ mp \ nandfs \ + ncurses \ ncursesw \ netgraph \ ngatm \ From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 18:12:58 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 279304D3; Sun, 28 Dec 2014 18:12:58 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 11C6F2831; Sun, 28 Dec 2014 18:12:58 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBSICwb0093489; Sun, 28 Dec 2014 18:12:58 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBSICuVx093484; Sun, 28 Dec 2014 18:12:56 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201412281812.sBSICuVx093484@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Sun, 28 Dec 2014 18:12:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276333 - in head/sys: arm/arm arm/include conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 18:12:58 -0000 Author: ian Date: Sun Dec 28 18:12:56 2014 New Revision: 276333 URL: https://svnweb.freebsd.org/changeset/base/276333 Log: Add new code to read and parse cpu identification data using the new CPUID mechanism defined for armv7 (and also present on some armv6 chips including the arm1176 used on rpi). The information is parsed into a global cpuinfo structure, which will be used by (upcoming) new cache and tlb maintenance code to handle cpu-specific variations of the maintence sequences. Submitted by: Svatopluk Kraus , Michal Meloun + * Copyright 2014 Michal Meloun + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include + +#include +#include + +struct cpuinfo cpuinfo; + +/* Read and parse CPU id scheme */ +void +cpuinfo_init(void) +{ + + cpuinfo.midr = cp15_midr_get(); + /* Test old version id schemes first */ + if ((cpuinfo.midr & CPU_ID_IMPLEMENTOR_MASK) == CPU_ID_ARM_LTD) { + if (CPU_ID_ISOLD(cpuinfo.midr)) { + /* obsolete ARMv2 or ARMv3 CPU */ + cpuinfo.midr = 0; + return; + } + if (CPU_ID_IS7(cpuinfo.midr)) { + if ((cpuinfo.midr & (1 << 23)) == 0) { + /* obsolete ARMv3 CPU */ + cpuinfo.midr = 0; + return; + } + /* ARMv4T CPU */ + cpuinfo.architecture = 1; + cpuinfo.revision = (cpuinfo.midr >> 16) & 0x7F; + } + } else { + /* must be new id scheme */ + cpuinfo.architecture = (cpuinfo.midr >> 16) & 0x0F; + cpuinfo.revision = (cpuinfo.midr >> 20) & 0x0F; + } + /* Parse rest of MIDR */ + cpuinfo.implementer = (cpuinfo.midr >> 24) & 0xFF; + cpuinfo.part_number = (cpuinfo.midr >> 4) & 0xFFF; + cpuinfo.patch = cpuinfo.midr & 0x0F; + + /* CP15 c0,c0 regs 0-7 exist on all CPUs (although aliased with MIDR) */ + cpuinfo.ctr = cp15_ctr_get(); + cpuinfo.tcmtr = cp15_tcmtr_get(); + cpuinfo.tlbtr = cp15_tlbtr_get(); + cpuinfo.mpidr = cp15_mpidr_get(); + cpuinfo.revidr = cp15_revidr_get(); + + /* if CPU is not v7 cpu id scheme */ + if (cpuinfo.architecture != 0xF) + return; + + cpuinfo.id_pfr0 = cp15_id_pfr0_get(); + cpuinfo.id_pfr1 = cp15_id_pfr1_get(); + cpuinfo.id_dfr0 = cp15_id_dfr0_get(); + cpuinfo.id_afr0 = cp15_id_afr0_get(); + cpuinfo.id_mmfr0 = cp15_id_mmfr0_get(); + cpuinfo.id_mmfr1 = cp15_id_mmfr1_get(); + cpuinfo.id_mmfr2 = cp15_id_mmfr2_get(); + cpuinfo.id_mmfr3 = cp15_id_mmfr3_get(); + cpuinfo.id_isar0 = cp15_id_isar0_get(); + cpuinfo.id_isar1 = cp15_id_isar1_get(); + cpuinfo.id_isar2 = cp15_id_isar2_get(); + cpuinfo.id_isar3 = cp15_id_isar3_get(); + cpuinfo.id_isar4 = cp15_id_isar4_get(); + cpuinfo.id_isar5 = cp15_id_isar5_get(); + +/* Not yet - CBAR only exist on ARM SMP Cortex A CPUs + cpuinfo.cbar = cp15_cbar_get(); +*/ + + /* Test if revidr is implemented */ + if (cpuinfo.revidr == cpuinfo.midr) + cpuinfo.revidr = 0; + + /* parsed bits of above registers */ + /* id_mmfr0 */ + cpuinfo.outermost_shareability = (cpuinfo.id_mmfr0 >> 8) & 0xF; + cpuinfo.shareability_levels = (cpuinfo.id_mmfr0 >> 12) & 0xF; + cpuinfo.auxiliary_registers = (cpuinfo.id_mmfr0 >> 20) & 0xF; + cpuinfo.innermost_shareability = (cpuinfo.id_mmfr0 >> 28) & 0xF; + /* id_mmfr2 */ + cpuinfo.mem_barrier = (cpuinfo.id_mmfr2 >> 20) & 0xF; + /* id_mmfr3 */ + cpuinfo.coherent_walk = (cpuinfo.id_mmfr3 >> 20) & 0xF; + cpuinfo.maintenance_broadcast =(cpuinfo.id_mmfr3 >> 12) & 0xF; + /* id_pfr1 */ + cpuinfo.generic_timer_ext = (cpuinfo.id_pfr1 >> 16) & 0xF; + cpuinfo.virtualization_ext = (cpuinfo.id_pfr1 >> 12) & 0xF; + cpuinfo.security_ext = (cpuinfo.id_pfr1 >> 4) & 0xF; +} Modified: head/sys/arm/arm/machdep.c ============================================================================== --- head/sys/arm/arm/machdep.c Sun Dec 28 17:16:41 2014 (r276332) +++ head/sys/arm/arm/machdep.c Sun Dec 28 18:12:56 2014 (r276333) @@ -90,6 +90,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -1064,6 +1065,8 @@ initarm(struct arm_boot_params *abp) arm_physmem_kernaddr = abp->abp_physaddr; memsize = 0; + + cpuinfo_init(); set_cpufuncs(); /* Added: head/sys/arm/include/cpu-v6.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/arm/include/cpu-v6.h Sun Dec 28 18:12:56 2014 (r276333) @@ -0,0 +1,158 @@ +/*- + * Copyright 2014 Svatopluk Kraus + * Copyright 2014 Michal Meloun + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ +#ifndef MACHINE_CPU_V6_H +#define MACHINE_CPU_V6_H + +#include "machine/atomic.h" +#include "machine/cpufunc.h" +#include "machine/cpuinfo.h" +#include "machine/sysreg.h" + + +#define CPU_ASID_KERNEL 0 + +/* + * Macros to generate CP15 (system control processor) read/write functions. + */ +#define _FX(s...) #s + +#define _RF0(fname, aname...) \ +static __inline register_t \ +fname(void) \ +{ \ + register_t reg; \ + __asm __volatile("mrc\t" _FX(aname): "=r" (reg)); \ + return(reg); \ +} + +#define _WF0(fname, aname...) \ +static __inline void \ +fname(void) \ +{ \ + __asm __volatile("mcr\t" _FX(aname)); \ +} + +#define _WF1(fname, aname...) \ +static __inline void \ +fname(register_t reg) \ +{ \ + __asm __volatile("mcr\t" _FX(aname):: "r" (reg)); \ +} + +/* + * Raw CP15 maintenance operations + * !!! not for external use !!! + */ + +/* TLB */ + +_WF0(_CP15_TLBIALL, CP15_TLBIALL) /* Invalidate entire unified TLB */ +#if __ARM_ARCH >= 7 && defined SMP +_WF0(_CP15_TLBIALLIS, CP15_TLBIALLIS) /* Invalidate entire unified TLB IS */ +#endif +_WF1(_CP15_TLBIASID, CP15_TLBIASID(%0)) /* Invalidate unified TLB by ASID */ +#if __ARM_ARCH >= 7 && defined SMP +_WF1(_CP15_TLBIASIDIS, CP15_TLBIASIDIS(%0)) /* Invalidate unified TLB by ASID IS */ +#endif +_WF1(_CP15_TLBIMVAA, CP15_TLBIMVAA(%0)) /* Invalidate unified TLB by MVA, all ASID */ +#if __ARM_ARCH >= 7 && defined SMP +_WF1(_CP15_TLBIMVAAIS, CP15_TLBIMVAAIS(%0)) /* Invalidate unified TLB by MVA, all ASID IS */ +#endif +_WF1(_CP15_TLBIMVA, CP15_TLBIMVA(%0)) /* Invalidate unified TLB by MVA */ + +_WF1(_CP15_TTB_SET, CP15_TTBR0(%0)) + +/* Cache and Branch predictor */ + +_WF0(_CP15_BPIALL, CP15_BPIALL) /* Branch predictor invalidate all */ +#if __ARM_ARCH >= 7 && defined SMP +_WF0(_CP15_BPIALLIS, CP15_BPIALLIS) /* Branch predictor invalidate all IS */ +#endif +_WF1(_CP15_BPIMVA, CP15_BPIMVA(%0)) /* Branch predictor invalidate by MVA */ +_WF1(_CP15_DCCIMVAC, CP15_DCCIMVAC(%0)) /* Data cache clean and invalidate by MVA PoC */ +_WF1(_CP15_DCCISW, CP15_DCCISW(%0)) /* Data cache clean and invalidate by set/way */ +_WF1(_CP15_DCCMVAC, CP15_DCCMVAC(%0)) /* Data cache clean by MVA PoC */ +#if __ARM_ARCH >= 7 +_WF1(_CP15_DCCMVAU, CP15_DCCMVAU(%0)) /* Data cache clean by MVA PoU */ +#endif +_WF1(_CP15_DCCSW, CP15_DCCSW(%0)) /* Data cache clean by set/way */ +_WF1(_CP15_DCIMVAC, CP15_DCIMVAC(%0)) /* Data cache invalidate by MVA PoC */ +_WF1(_CP15_DCISW, CP15_DCISW(%0)) /* Data cache invalidate by set/way */ +_WF0(_CP15_ICIALLU, CP15_ICIALLU) /* Instruction cache invalidate all PoU */ +#if __ARM_ARCH >= 7 && defined SMP +_WF0(_CP15_ICIALLUIS, CP15_ICIALLUIS) /* Instruction cache invalidate all PoU IS */ +#endif +_WF1(_CP15_ICIMVAU, CP15_ICIMVAU(%0)) /* Instruction cache invalidate */ + +/* + * Publicly accessible functions + */ + +/* Various control registers */ + +_RF0(cp15_dfsr_get, CP15_DFSR(%0)) +_RF0(cp15_ifsr_get, CP15_IFSR(%0)) +_WF1(cp15_prrr_set, CP15_PRRR(%0)) +_WF1(cp15_nmrr_set, CP15_NMRR(%0)) +_RF0(cp15_ttbr_get, CP15_TTBR0(%0)) +_RF0(cp15_dfar_get, CP15_DFAR(%0)) +#if __ARM_ARCH >= 7 +_RF0(cp15_ifar_get, CP15_IFAR(%0)) +#endif + +/*CPU id registers */ +_RF0(cp15_midr_get, CP15_MIDR(%0)) +_RF0(cp15_ctr_get, CP15_CTR(%0)) +_RF0(cp15_tcmtr_get, CP15_TCMTR(%0)) +_RF0(cp15_tlbtr_get, CP15_TLBTR(%0)) +_RF0(cp15_mpidr_get, CP15_MPIDR(%0)) +_RF0(cp15_revidr_get, CP15_REVIDR(%0)) +_RF0(cp15_aidr_get, CP15_AIDR(%0)) +_RF0(cp15_id_pfr0_get, CP15_ID_PFR0(%0)) +_RF0(cp15_id_pfr1_get, CP15_ID_PFR1(%0)) +_RF0(cp15_id_dfr0_get, CP15_ID_DFR0(%0)) +_RF0(cp15_id_afr0_get, CP15_ID_AFR0(%0)) +_RF0(cp15_id_mmfr0_get, CP15_ID_MMFR0(%0)) +_RF0(cp15_id_mmfr1_get, CP15_ID_MMFR1(%0)) +_RF0(cp15_id_mmfr2_get, CP15_ID_MMFR2(%0)) +_RF0(cp15_id_mmfr3_get, CP15_ID_MMFR3(%0)) +_RF0(cp15_id_isar0_get, CP15_ID_ISAR0(%0)) +_RF0(cp15_id_isar1_get, CP15_ID_ISAR1(%0)) +_RF0(cp15_id_isar2_get, CP15_ID_ISAR2(%0)) +_RF0(cp15_id_isar3_get, CP15_ID_ISAR3(%0)) +_RF0(cp15_id_isar4_get, CP15_ID_ISAR4(%0)) +_RF0(cp15_id_isar5_get, CP15_ID_ISAR5(%0)) +_RF0(cp15_cbar_get, CP15_CBAR(%0)) + +#undef _FX +#undef _RF0 +#undef _WF0 +#undef _WF1 + +#endif /* !MACHINE_CPU_V6_H */ Added: head/sys/arm/include/cpuinfo.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/arm/include/cpuinfo.h Sun Dec 28 18:12:56 2014 (r276333) @@ -0,0 +1,91 @@ +/*- + * Copyright 2014 Svatopluk Kraus + * Copyright 2014 Michal Meloun + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _MACHINE_CPUINFO_H_ +#define _MACHINE_CPUINFO_H_ + +#include + +struct cpuinfo { + /* raw id registers */ + uint32_t midr; + uint32_t ctr; + uint32_t tcmtr; + uint32_t tlbtr; + uint32_t mpidr; + uint32_t revidr; + uint32_t id_pfr0; + uint32_t id_pfr1; + uint32_t id_dfr0; + uint32_t id_afr0; + uint32_t id_mmfr0; + uint32_t id_mmfr1; + uint32_t id_mmfr2; + uint32_t id_mmfr3; + uint32_t id_isar0; + uint32_t id_isar1; + uint32_t id_isar2; + uint32_t id_isar3; + uint32_t id_isar4; + uint32_t id_isar5; + uint32_t cbar; + + /* Parsed bits of above registers... */ + + /* midr */ + int implementer; + int revision; + int architecture; + int part_number; + int patch; + + /* id_mmfr0 */ + int outermost_shareability; + int shareability_levels; + int auxiliary_registers; + int innermost_shareability; + + /* id_mmfr1 */ + int mem_barrier; + + /* id_mmfr3 */ + int coherent_walk; + int maintenance_broadcast; + + /* id_pfr1 */ + int generic_timer_ext; + int virtualization_ext; + int security_ext; +}; + +extern struct cpuinfo cpuinfo; + +void cpuinfo_init(void); + +#endif /* _MACHINE_CPUINFO_H_ */ Modified: head/sys/conf/files.arm ============================================================================== --- head/sys/conf/files.arm Sun Dec 28 17:16:41 2014 (r276332) +++ head/sys/conf/files.arm Sun Dec 28 18:12:56 2014 (r276333) @@ -11,6 +11,7 @@ arm/arm/copystr.S standard arm/arm/cpufunc.c standard arm/arm/cpufunc_asm.S standard arm/arm/cpufunc_asm_armv4.S standard +arm/arm/cpuinfo.c standard arm/arm/db_disasm.c optional ddb arm/arm/db_interface.c optional ddb arm/arm/db_trace.c optional ddb From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 18:19:07 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4199A882; Sun, 28 Dec 2014 18:19:07 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 224EF28C0; Sun, 28 Dec 2014 18:19:07 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBSIJ7nk094383; Sun, 28 Dec 2014 18:19:07 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBSIJ6lJ094382; Sun, 28 Dec 2014 18:19:06 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201412281819.sBSIJ6lJ094382@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Sun, 28 Dec 2014 18:19:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276334 - head/sys/arm/include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 18:19:07 -0000 Author: ian Date: Sun Dec 28 18:19:05 2014 New Revision: 276334 URL: https://svnweb.freebsd.org/changeset/base/276334 Log: Add new TLB and cache maintainence functions for armv6 and armv7. These are inline functions that handle all the routine maintenance operations except the flush-all and invalidate-all routines which are required only during early kernel init. These inline functions should be very much faster than the old mechanism that involved jumping through the big cpufuncs table, especially for common operations such as invalidating a single TLB entry. Note that nothing is calling these yet, this just is just required infrastructure for upcoming changes to the pmap-v6 code. Modified: head/sys/arm/include/cpu-v6.h Modified: head/sys/arm/include/cpu-v6.h ============================================================================== --- head/sys/arm/include/cpu-v6.h Sun Dec 28 18:12:56 2014 (r276333) +++ head/sys/arm/include/cpu-v6.h Sun Dec 28 18:19:05 2014 (r276334) @@ -155,4 +155,242 @@ _RF0(cp15_cbar_get, CP15_CBAR(%0)) #undef _WF0 #undef _WF1 +/* + * TLB maintenance operations. + */ + +/* Local (i.e. not broadcasting ) operations. */ + +/* Flush all TLB entries (even global). */ +static __inline void +tlb_flush_all_local(void) +{ + + dsb(); + _CP15_TLBIALL(); + dsb(); +} + +/* Flush all not global TLB entries. */ +static __inline void +tlb_flush_all_ng_local(void) +{ + + dsb(); + _CP15_TLBIASID(CPU_ASID_KERNEL); + dsb(); +} + +/* Flush single TLB entry (even global). */ +static __inline void +tlb_flush_local(vm_offset_t sva) +{ + + dsb(); + _CP15_TLBIMVA((sva & ~PAGE_MASK ) | CPU_ASID_KERNEL); + dsb(); +} + +/* Flush range of TLB entries (even global). */ +static __inline void +tlb_flush_range_local(vm_offset_t sva, vm_size_t size) +{ + vm_offset_t va; + vm_offset_t eva = sva + size; + + dsb(); + for (va = sva; va < eva; va += PAGE_SIZE) + _CP15_TLBIMVA((va & ~PAGE_MASK ) | CPU_ASID_KERNEL); + dsb(); +} + +/* Broadcasting operations. */ +#ifndef SMP + +#define tlb_flush_all() tlb_flush_all_local() +#define tlb_flush_all_ng() tlb_flush_all_ng_local() +#define tlb_flush(sva) tlb_flush_local(sva) +#define tlb_flush_range(sva, size) tlb_flush_range_local(sva, size) + +#else /* SMP */ + +static __inline void +tlb_flush_all(void) +{ + + dsb(); + _CP15_TLBIALLIS(); + dsb(); +} + +static __inline void +tlb_flush_all_ng() +{ + + dsb(); + _CP15_TLBIASIDIS(CPU_ASID_KERNEL); + dsb(); +} + +static __inline void +tlb_flush(vm_offset_t sva) +{ + + dsb(); + _CP15_TLBIMVAAIS(sva); + dsb(); +} + +static __inline void +tlb_flush_range(vm_offset_t sva, vm_size_t size) +{ + vm_offset_t va; + vm_offset_t eva = sva + size; + + dsb(); + for (va = sva; va < eva; va += PAGE_SIZE) + _CP15_TLBIMVAAIS(va); + dsb(); +} +#endif /* SMP */ + +/* + * Cache maintenance operations. + */ + +/* Sync I and D caches to PoU */ +static __inline void +icache_sync(vm_offset_t sva, vm_size_t size) +{ + vm_offset_t va; + vm_offset_t eva = sva + size; + + dsb(); + for (va = sva; va < eva; va += arm_dcache_align) { +#ifdef SMP + _CP15_DCCMVAU(va); +#else + _CP15_DCCMVAC(va); +#endif + } + dsb(); +#ifdef SMP + _CP15_ICIALLUIS(); +#else + _CP15_ICIALLU(); +#endif + dsb(); + isb(); +} + +/* Invalidate I cache */ +static __inline void +icache_inv_all(void) +{ +#ifdef SMP + _CP15_ICIALLUIS(); +#else + _CP15_ICIALLU(); +#endif + dsb(); + isb(); +} + +/* Write back D-cache to PoU */ +static __inline void +dcache_wb_pou(vm_offset_t sva, vm_size_t size) +{ + vm_offset_t va; + vm_offset_t eva = sva + size; + + dsb(); + for (va = sva; va < eva; va += arm_dcache_align) { +#ifdef SMP + _CP15_DCCMVAU(va); +#else + _CP15_DCCMVAC(va); +#endif + } + dsb(); +} + +/* Invalidate D-cache to PoC */ +static __inline void +dcache_inv_poc(vm_offset_t sva, vm_paddr_t pa, vm_size_t size) +{ + vm_offset_t va; + vm_offset_t eva = sva + size; + + /* invalidate L1 first */ + for (va = sva; va < eva; va += arm_dcache_align) { + _CP15_DCIMVAC(va); + } + dsb(); + + /* then L2 */ + cpu_l2cache_inv_range(pa, size); + dsb(); + + /* then L1 again */ + for (va = sva; va < eva; va += arm_dcache_align) { + _CP15_DCIMVAC(va); + } + dsb(); +} + +/* Write back D-cache to PoC */ +static __inline void +dcache_wb_poc(vm_offset_t sva, vm_paddr_t pa, vm_size_t size) +{ + vm_offset_t va; + vm_offset_t eva = sva + size; + + dsb(); + + for (va = sva; va < eva; va += arm_dcache_align) { + _CP15_DCCMVAC(va); + } + dsb(); + + cpu_l2cache_wb_range(pa, size); +} + +/* Write back and invalidate D-cache to PoC */ +static __inline void +dcache_wbinv_poc(vm_offset_t sva, vm_paddr_t pa, vm_size_t size) +{ + vm_offset_t va; + vm_offset_t eva = sva + size; + + dsb(); + + /* write back L1 first */ + for (va = sva; va < eva; va += arm_dcache_align) { + _CP15_DCCMVAC(va); + } + dsb(); + + /* then write back and invalidate L2 */ + cpu_l2cache_wbinv_range(pa, size); + + /* then invalidate L1 */ + for (va = sva; va < eva; va += arm_dcache_align) { + _CP15_DCIMVAC(va); + } + dsb(); +} + +/* Set TTB0 register */ +static __inline void +cp15_ttbr_set(uint32_t reg) +{ + dsb(); + _CP15_TTB_SET(reg); + dsb(); + _CP15_BPIALL(); + dsb(); + isb(); + tlb_flush_all_ng_local(); +} + #endif /* !MACHINE_CPU_V6_H */ From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 18:20:24 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DEA729FB; Sun, 28 Dec 2014 18:20:24 +0000 (UTC) Received: from mho-01-ewr.mailhop.org (mho-03-ewr.mailhop.org [204.13.248.66]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B3B232982; Sun, 28 Dec 2014 18:20:24 +0000 (UTC) Received: from [73.34.117.227] (helo=ilsoft.org) by mho-01-ewr.mailhop.org with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.72) (envelope-from ) id 1Y5IRz-000LeY-4i; Sun, 28 Dec 2014 18:20:23 +0000 Received: from revolution.hippie.lan (revolution.hippie.lan [172.22.42.240]) by ilsoft.org (8.14.9/8.14.9) with ESMTP id sBSIKMo5004842; Sun, 28 Dec 2014 11:20:22 -0700 (MST) (envelope-from ian@freebsd.org) X-Mail-Handler: Dyn Standard SMTP by Dyn X-Originating-IP: 73.34.117.227 X-Report-Abuse-To: abuse@dyndns.com (see http://www.dyndns.com/services/sendlabs/outbound_abuse.html for abuse reporting information) X-MHO-User: U2FsdGVkX1+WA0Bx5EpO6+9JikLXX/gA Message-ID: <1419790822.1018.208.camel@freebsd.org> Subject: Re: svn commit: r276334 - head/sys/arm/include From: Ian Lepore To: src-committers@freebsd.org Date: Sun, 28 Dec 2014 11:20:22 -0700 In-Reply-To: <201412281819.sBSIJ6lJ094382@svn.freebsd.org> References: <201412281819.sBSIJ6lJ094382@svn.freebsd.org> Content-Type: text/plain; charset="us-ascii" X-Mailer: Evolution 3.12.8 FreeBSD GNOME Team Port Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 18:20:25 -0000 On Sun, 2014-12-28 at 18:19 +0000, Ian Lepore wrote: > Author: ian > Date: Sun Dec 28 18:19:05 2014 > New Revision: 276334 > URL: https://svnweb.freebsd.org/changeset/base/276334 > > Log: > Add new TLB and cache maintainence functions for armv6 and armv7. These > are inline functions that handle all the routine maintenance operations > except the flush-all and invalidate-all routines which are required only > during early kernel init. > > These inline functions should be very much faster than the old mechanism > that involved jumping through the big cpufuncs table, especially for > common operations such as invalidating a single TLB entry. Note that > nothing is calling these yet, this just is just required infrastructure > for upcoming changes to the pmap-v6 code. > > Modified: > head/sys/arm/include/cpu-v6.h Ooops, I forgot to add... Submitted by: Svatopluk Kraus , Michal Meloun Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 736A6D2B; Sun, 28 Dec 2014 18:26:16 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5FF782B1A; Sun, 28 Dec 2014 18:26:16 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBSIQGpx099017; Sun, 28 Dec 2014 18:26:16 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBSIQGDQ099016; Sun, 28 Dec 2014 18:26:16 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201412281826.sBSIQGDQ099016@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Sun, 28 Dec 2014 18:26:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276335 - head/sys/arm/include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 18:26:16 -0000 Author: ian Date: Sun Dec 28 18:26:15 2014 New Revision: 276335 URL: https://svnweb.freebsd.org/changeset/base/276335 Log: Eliminate an unused macro whose name clashes now with a function in the new cpu-v6.h. This should have been part of r276334. Modified: head/sys/arm/include/cpufunc.h Modified: head/sys/arm/include/cpufunc.h ============================================================================== --- head/sys/arm/include/cpufunc.h Sun Dec 28 18:19:05 2014 (r276334) +++ head/sys/arm/include/cpufunc.h Sun Dec 28 18:26:15 2014 (r276335) @@ -563,7 +563,6 @@ void xscalec3_context_switch (void); #endif /* CPU_XSCALE_81342 */ -#define tlb_flush cpu_tlb_flushID #define setttb cpu_setttb #define drain_writebuf cpu_drain_writebuf From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 18:38:26 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C8C681C0; Sun, 28 Dec 2014 18:38:26 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A96EA2CCF; Sun, 28 Dec 2014 18:38:26 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBSIcQ1Q004552; Sun, 28 Dec 2014 18:38:26 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBSIcQPc004550; Sun, 28 Dec 2014 18:38:26 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201412281838.sBSIcQPc004550@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Sun, 28 Dec 2014 18:38:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276336 - in head/sys: arm/arm conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 18:38:26 -0000 Author: ian Date: Sun Dec 28 18:38:25 2014 New Revision: 276336 URL: https://svnweb.freebsd.org/changeset/base/276336 Log: Add cache maintenance functions which will be used by startup code to initially set up the MMU. Some day they may also be useful as part of suspend/resume handling, when we get better at power management. Submitted by: Svatopluk Kraus , Michal Meloun + * Copyright 2014 Michal Meloun + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#include +#include +#include +#include +#include + +#if __ARM_ARCH >= 7 + +/* + * Define cache functions used by startup code, which counts on the fact that + * only r0-r4,r12 (ip) are modified and no stack space is used. This set + * of function must be called with interrupts disabled and don't follow + * ARM ABI (cannot be called form C code. + * Moreover, it works only with caches integrated to CPU (accessible via CP15). + */ + +/* Invalidate D cache to PoC. (aka all cache levels)*/ +ASENTRY(dcache_inv_poc_all) + mrc CP15_CLIDR(r0) + ands r0, r0, #0x07000000 + mov r0, r0, lsr #23 /* Get LoC (naturally aligned) */ + beq 4f + +1: mcr CP15_CSSELR(r0) /* set cache level */ + isb + mrc CP15_CCSIDR(r0) /* read CCSIDR */ + + ubfx r2, r0, #13, #15 /* get num sets - 1 from CCSIDR */ + ubfx r3, r0, #3, #10 /* get num ways - 1 from CCSIDR */ + clz r1, r3 /* number of bits to MSB of way */ + lsl r3, r3, r1 /* shift into position */ + mov ip, #1 + lsl ip, ip, r1 /* ip now contains the way decr */ + + ubfx r0, r0, #0, #3 /* get linesize from CCSIDR */ + add r0, r0, #4 /* apply bias */ + lsl r2, r2, r0 /* shift sets by log2(linesize) */ + add r3, r3, r2 /* merge numsets - 1 with numways - 1 */ + sub ip, ip, r2 /* subtract numsets - 1 from way decr */ + mov r1, #1 + lsl r1, r1, r0 /* r1 now contains the set decr */ + mov r2, ip /* r2 now contains set way decr */ + + /* r3 = ways/sets, r2 = way decr, r1 = set decr, r0 and ip are free */ +2: mcr CP15_DCISW(r3) /* invalidate line */ + movs r0, r3 /* get current way/set */ + beq 3f /* at 0 means we are done */ + movs r0, r0, lsl #10 /* clear way bits leaving only set bits*/ + subne r3, r3, r1 /* non-zero?, decrement set */ + subeq r3, r3, r2 /* zero?, decrement way and restore set count */ + b 2b + +3: + mrc CP15_CSSELR(r0) /* get cache level */ + add r0, r0, #2 /* next level */ + mrc CP15_CLIDR(r1) + ands r1, r1, #0x07000000 + mov r1, r1, lsr #23 /* Get LoC (naturally aligned) */ + cmp r1, r0 + bgt 1b + +4: dsb /* wait for stores to finish */ + mov r0, #0 + mcr CP15_CSSELR(r0) + isb + bx lr +END(dcache_inv_poc_all) + +/* Invalidate D cache to PoU. (aka L1 cache only)*/ +ASENTRY(dcache_inv_pou_all) + mrc CP15_CLIDR(r0) + ands r0, r0, #0x07000000 + mov r0, r0, lsr #26 /* Get LoUU (naturally aligned) */ + beq 4f + +1: mcr CP15_CSSELR(r0) /* set cache level */ + isb + mrc CP15_CCSIDR(r0) /* read CCSIDR */ + + ubfx r2, r0, #13, #15 /* get num sets - 1 from CCSIDR */ + ubfx r3, r0, #3, #10 /* get num ways - 1 from CCSIDR */ + clz r1, r3 /* number of bits to MSB of way */ + lsl r3, r3, r1 /* shift into position */ + mov ip, #1 + lsl ip, ip, r1 /* ip now contains the way decr */ + + ubfx r0, r0, #0, #3 /* get linesize from CCSIDR */ + add r0, r0, #4 /* apply bias */ + lsl r2, r2, r0 /* shift sets by log2(linesize) */ + add r3, r3, r2 /* merge numsets - 1 with numways - 1 */ + sub ip, ip, r2 /* subtract numsets - 1 from way decr */ + mov r1, #1 + lsl r1, r1, r0 /* r1 now contains the set decr */ + mov r2, ip /* r2 now contains set way decr */ + + /* r3 = ways/sets, r2 = way decr, r1 = set decr, r0 and ip are free */ +2: mcr CP15_DCISW(r3) /* clean & invalidate line */ + movs r0, r3 /* get current way/set */ + beq 3f /* at 0 means we are done */ + movs r0, r0, lsl #10 /* clear way bits leaving only set bits*/ + subne r3, r3, r1 /* non-zero?, decrement set */ + subeq r3, r3, r2 /* zero?, decrement way and restore set count */ + b 2b + +3: + mrc CP15_CSSELR(r0) /* get cache level */ + add r0, r0, #2 /* next level */ + mrc CP15_CLIDR(r1) + ands r1, r1, #0x07000000 + mov r1, r1, lsr #26 /* Get LoUU (naturally aligned) */ + cmp r1, r0 + bgt 1b + +4: dsb /* wait for stores to finish */ + mov r0, #0 + mcr CP15_CSSELR(r0) + bx lr +END(dcache_inv_pou_all) + +/* Write back and Invalidate D cache to PoC. */ +ASENTRY(dcache_wbinv_poc_all) + mrc CP15_CLIDR(r0) + ands r0, r0, #0x07000000 + mov r0, r0, lsr #23 /* Get LoC (naturally aligned) */ + beq 4f + +1: mcr CP15_CSSELR(r0) /* set cache level */ + isb + mrc CP15_CCSIDR(r0) /* read CCSIDR */ + + ubfx r2, r0, #13, #15 /* get num sets - 1 from CCSIDR */ + ubfx r3, r0, #3, #10 /* get num ways - 1 from CCSIDR */ + clz r1, r3 /* number of bits to MSB of way */ + lsl r3, r3, r1 /* shift into position */ + mov ip, #1 + lsl ip, ip, r1 /* ip now contains the way decr */ + + ubfx r0, r0, #0, #3 /* get linesize from CCSIDR */ + add r0, r0, #4 /* apply bias */ + lsl r2, r2, r0 /* shift sets by log2(linesize) */ + add r3, r3, r2 /* merge numsets - 1 with numways - 1 */ + sub ip, ip, r2 /* subtract numsets - 1 from way decr */ + mov r1, #1 + lsl r1, r1, r0 /* r1 now contains the set decr */ + mov r2, ip /* r2 now contains set way decr */ + + /* r3 = ways/sets, r2 = way decr, r1 = set decr, r0 and ip are free */ +2: mcr CP15_DCCISW(r3) /* clean & invalidate line */ + movs r0, r3 /* get current way/set */ + beq 3f /* at 0 means we are done */ + movs r0, r0, lsl #10 /* clear way bits leaving only set bits*/ + subne r3, r3, r1 /* non-zero?, decrement set */ + subeq r3, r3, r2 /* zero?, decrement way and restore set count */ + b 2b + +3: + mrc CP15_CSSELR(r0) /* get cache level */ + add r0, r0, #2 /* next level */ + mrc CP15_CLIDR(r1) + ands r1, r1, #0x07000000 + mov r1, r1, lsr #23 /* Get LoC (naturally aligned) */ + cmp r1, r0 + bgt 1b + +4: dsb /* wait for stores to finish */ + mov r0, #0 + mcr CP15_CSSELR(r0) + bx lr +END(dcache_wbinv_poc_all) + +#endif /* __ARM_ARCH >= 7 */ Modified: head/sys/conf/files.arm ============================================================================== --- head/sys/conf/files.arm Sun Dec 28 18:26:15 2014 (r276335) +++ head/sys/conf/files.arm Sun Dec 28 18:38:25 2014 (r276336) @@ -12,6 +12,7 @@ arm/arm/cpufunc.c standard arm/arm/cpufunc_asm.S standard arm/arm/cpufunc_asm_armv4.S standard arm/arm/cpuinfo.c standard +arm/arm/cpu_asm-v6.S optional armv6 arm/arm/db_disasm.c optional ddb arm/arm/db_interface.c optional ddb arm/arm/db_trace.c optional ddb From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 19:05:33 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 92F2DF93; Sun, 28 Dec 2014 19:05:33 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7EDBC1115; Sun, 28 Dec 2014 19:05:33 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBSJ5XQt019127; Sun, 28 Dec 2014 19:05:33 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBSJ5XqH019126; Sun, 28 Dec 2014 19:05:33 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201412281905.sBSJ5XqH019126@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Sun, 28 Dec 2014 19:05:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276340 - head/sys/arm/include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 19:05:33 -0000 Author: ian Date: Sun Dec 28 19:05:32 2014 New Revision: 276340 URL: https://svnweb.freebsd.org/changeset/base/276340 Log: Fix a "decl is not a prototype" error noticed by gcc (but not clang). Modified: head/sys/arm/include/cpu-v6.h Modified: head/sys/arm/include/cpu-v6.h ============================================================================== --- head/sys/arm/include/cpu-v6.h Sun Dec 28 19:03:29 2014 (r276339) +++ head/sys/arm/include/cpu-v6.h Sun Dec 28 19:05:32 2014 (r276340) @@ -224,7 +224,7 @@ tlb_flush_all(void) } static __inline void -tlb_flush_all_ng() +tlb_flush_all_ng(void) { dsb(); From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 19:24:03 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1DFB9B68; Sun, 28 Dec 2014 19:24:03 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0A0BF64439; Sun, 28 Dec 2014 19:24:03 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBSJO2gZ028981; Sun, 28 Dec 2014 19:24:02 GMT (envelope-from mjg@FreeBSD.org) Received: (from mjg@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBSJO284028980; Sun, 28 Dec 2014 19:24:02 GMT (envelope-from mjg@FreeBSD.org) Message-Id: <201412281924.sBSJO284028980@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: mjg set sender to mjg@FreeBSD.org using -f From: Mateusz Guzik Date: Sun, 28 Dec 2014 19:24:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276341 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 19:24:03 -0000 Author: mjg Date: Sun Dec 28 19:24:01 2014 New Revision: 276341 URL: https://svnweb.freebsd.org/changeset/base/276341 Log: sysctl: don't modify oid_running for static nodes It is necessary to prevent nodes from being destroyed while used, but static ones cannot be destroyed. Modified: head/sys/kern/kern_sysctl.c Modified: head/sys/kern/kern_sysctl.c ============================================================================== --- head/sys/kern/kern_sysctl.c Sun Dec 28 19:05:32 2014 (r276340) +++ head/sys/kern/kern_sysctl.c Sun Dec 28 19:24:01 2014 (r276341) @@ -174,7 +174,8 @@ sysctl_root_handler_locked(struct sysctl int error; bool xlocked; - atomic_add_int(&oid->oid_running, 1); + if (oid->oid_kind & CTLFLAG_DYN) + atomic_add_int(&oid->oid_running, 1); xlocked = sysctl_unlock(); if (!(oid->oid_kind & CTLFLAG_MPSAFE)) @@ -184,9 +185,11 @@ sysctl_root_handler_locked(struct sysctl mtx_unlock(&Giant); sysctl_lock(xlocked); - if (atomic_fetchadd_int(&oid->oid_running, -1) == 1 && - (oid->oid_kind & CTLFLAG_DYING) != 0) - wakeup(&oid->oid_running); + if (oid->oid_kind & CTLFLAG_DYN) { + if (atomic_fetchadd_int(&oid->oid_running, -1) == 1 && + (oid->oid_kind & CTLFLAG_DYING) != 0) + wakeup(&oid->oid_running); + } return (error); } From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 19:55:45 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7E6418D9; Sun, 28 Dec 2014 19:55:45 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6A84864A22; Sun, 28 Dec 2014 19:55:45 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBSJtjmf043566; Sun, 28 Dec 2014 19:55:45 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBSJtj9H043565; Sun, 28 Dec 2014 19:55:45 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201412281955.sBSJtj9H043565@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Sun, 28 Dec 2014 19:55:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276342 - head/libexec/rtld-elf/powerpc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 19:55:45 -0000 Author: dim Date: Sun Dec 28 19:55:44 2014 New Revision: 276342 URL: https://svnweb.freebsd.org/changeset/base/276342 Log: Fix the following -Werror warning from clang 3.5.0, while building rtld-elf for powerpc 32 bit: libexec/rtld-elf/powerpc/reloc.c:486:6: error: taking the absolute value of unsigned type 'Elf_Addr' (aka 'unsigned int') has no effect [-Werror,-Wabsolute-value] if (abs(offset) < 32*1024*1024) { /* inside 32MB? */ ^ libexec/rtld-elf/powerpc/reloc.c:486:6: note: remove the call to 'abs' since unsigned values cannot be negative if (abs(offset) < 32*1024*1024) { /* inside 32MB? */ ^~~ 1 error generated. Cast 'offset' to int, since that was intended, and should be safe to do on architectures with 32-bit two's complement ints. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D1387 Modified: head/libexec/rtld-elf/powerpc/reloc.c Modified: head/libexec/rtld-elf/powerpc/reloc.c ============================================================================== --- head/libexec/rtld-elf/powerpc/reloc.c Sun Dec 28 19:24:01 2014 (r276341) +++ head/libexec/rtld-elf/powerpc/reloc.c Sun Dec 28 19:55:44 2014 (r276342) @@ -483,7 +483,7 @@ reloc_jmpslot(Elf_Addr *wherep, Elf_Addr */ offset = target - (Elf_Addr)wherep; - if (abs(offset) < 32*1024*1024) { /* inside 32MB? */ + if (abs((int)offset) < 32*1024*1024) { /* inside 32MB? */ /* b value # branch directly */ *wherep = 0x48000000 | (offset & 0x03fffffc); __syncicache(wherep, 4); From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 20:42:30 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A8908C7A; Sun, 28 Dec 2014 20:42:30 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 950FA111A; Sun, 28 Dec 2014 20:42:30 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBSKgUOP067589; Sun, 28 Dec 2014 20:42:30 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBSKgTmX067586; Sun, 28 Dec 2014 20:42:29 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201412282042.sBSKgTmX067586@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Sun, 28 Dec 2014 20:42:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276344 - head/sys/dev/ahci X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 20:42:30 -0000 Author: marius Date: Sun Dec 28 20:42:28 2014 New Revision: 276344 URL: https://svnweb.freebsd.org/changeset/base/276344 Log: - Const'ify the ahci_ids table. - Use DEVMETHOD_END. - Use NULL instead of 0 for pointers. MFC after: 3 days Modified: head/sys/dev/ahci/ahci.c head/sys/dev/ahci/ahci_pci.c head/sys/dev/ahci/ahciem.c Modified: head/sys/dev/ahci/ahci.c ============================================================================== --- head/sys/dev/ahci/ahci.c Sun Dec 28 20:02:06 2014 (r276343) +++ head/sys/dev/ahci/ahci.c Sun Dec 28 20:42:28 2014 (r276344) @@ -868,14 +868,14 @@ static device_method_t ahcich_methods[] DEVMETHOD(device_detach, ahci_ch_detach), DEVMETHOD(device_suspend, ahci_ch_suspend), DEVMETHOD(device_resume, ahci_ch_resume), - { 0, 0 } + DEVMETHOD_END }; static driver_t ahcich_driver = { "ahcich", ahcich_methods, sizeof(struct ahci_channel) }; -DRIVER_MODULE(ahcich, ahci, ahcich_driver, ahcich_devclass, 0, 0); +DRIVER_MODULE(ahcich, ahci, ahcich_driver, ahcich_devclass, NULL, NULL); struct ahci_dc_cb_args { bus_addr_t maddr; Modified: head/sys/dev/ahci/ahci_pci.c ============================================================================== --- head/sys/dev/ahci/ahci_pci.c Sun Dec 28 20:02:06 2014 (r276343) +++ head/sys/dev/ahci/ahci_pci.c Sun Dec 28 20:42:28 2014 (r276344) @@ -48,7 +48,7 @@ __FBSDID("$FreeBSD$"); static int force_ahci = 1; TUNABLE_INT("hw.ahci.force", &force_ahci); -static struct { +static const struct { uint32_t id; uint8_t rev; const char *name; @@ -479,14 +479,14 @@ static device_method_t ahci_methods[] = DEVMETHOD(bus_teardown_intr,ahci_teardown_intr), DEVMETHOD(bus_child_location_str, ahci_child_location_str), DEVMETHOD(bus_get_dma_tag, ahci_get_dma_tag), - { 0, 0 } + DEVMETHOD_END }; static driver_t ahci_driver = { "ahci", ahci_methods, sizeof(struct ahci_controller) }; -DRIVER_MODULE(ahci, pci, ahci_driver, ahci_devclass, 0, 0); +DRIVER_MODULE(ahci, pci, ahci_driver, ahci_devclass, NULL, NULL); static device_method_t ahci_ata_methods[] = { DEVMETHOD(device_probe, ahci_ata_probe), DEVMETHOD(device_attach, ahci_pci_attach), @@ -499,11 +499,11 @@ static device_method_t ahci_ata_methods[ DEVMETHOD(bus_setup_intr, ahci_setup_intr), DEVMETHOD(bus_teardown_intr,ahci_teardown_intr), DEVMETHOD(bus_child_location_str, ahci_child_location_str), - { 0, 0 } + DEVMETHOD_END }; static driver_t ahci_ata_driver = { "ahci", ahci_ata_methods, sizeof(struct ahci_controller) }; -DRIVER_MODULE(ahci, atapci, ahci_ata_driver, ahci_devclass, 0, 0); +DRIVER_MODULE(ahci, atapci, ahci_ata_driver, ahci_devclass, NULL, NULL); Modified: head/sys/dev/ahci/ahciem.c ============================================================================== --- head/sys/dev/ahci/ahciem.c Sun Dec 28 20:02:06 2014 (r276343) +++ head/sys/dev/ahci/ahciem.c Sun Dec 28 20:42:28 2014 (r276344) @@ -273,14 +273,14 @@ static device_method_t ahciem_methods[] DEVMETHOD(device_detach, ahci_em_detach), DEVMETHOD(device_suspend, ahci_em_suspend), DEVMETHOD(device_resume, ahci_em_resume), - { 0, 0 } + DEVMETHOD_END }; static driver_t ahciem_driver = { "ahciem", ahciem_methods, sizeof(struct ahci_enclosure) }; -DRIVER_MODULE(ahciem, ahci, ahciem_driver, ahciem_devclass, 0, 0); +DRIVER_MODULE(ahciem, ahci, ahciem_driver, ahciem_devclass, NULL, NULL); static void ahci_em_setleds(device_t dev, int c) From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 20:56:05 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2D953F3E; Sun, 28 Dec 2014 20:56:05 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F408312A4; Sun, 28 Dec 2014 20:56:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBSKu4fQ072681; Sun, 28 Dec 2014 20:56:04 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBSKu4wX072680; Sun, 28 Dec 2014 20:56:04 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201412282056.sBSKu4wX072680@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Sun, 28 Dec 2014 20:56:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276345 - head/share/man/man4 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 20:56:05 -0000 Author: sbruno Date: Sun Dec 28 20:56:03 2014 New Revision: 276345 URL: https://svnweb.freebsd.org/changeset/base/276345 Log: Correct naming of sysctl pmtud_blackhole_activated_min_mss. Clarify some statements around PMTUD blackhole detection to make the behavior more clear in the man page. Submitted by: Mikhail MFC after: 2 weeks Modified: head/share/man/man4/tcp.4 Modified: head/share/man/man4/tcp.4 ============================================================================== --- head/share/man/man4/tcp.4 Sun Dec 28 20:42:28 2014 (r276344) +++ head/share/man/man4/tcp.4 Sun Dec 28 20:56:03 2014 (r276345) @@ -521,11 +521,11 @@ This is needed to help with connection e when a broken firewall is in the network path. .It Va pmtud_blackhole_detection Turn on automatic path MTU blackhole detection. -In case of retransmits we will +In case of retransmits OS will lower the MSS to check if it's MTU problem. If current MSS is greater than -configured value to try, it will be set to it, otherwise, MSS will be set to -default values +configured value to try, it will be set to configured value, otherwise, +MSS will be set to default values .Po Va net.inet.tcp.mssdflt and .Va net.inet.tcp.v6mssdflt @@ -535,11 +535,12 @@ MSS to try for IPv4 if PMTU blackhole de .It Va v6pmtud_blackhole_mss MSS to try for IPv6 if PMTU blackhole detection is turned on. .It Va pmtud_blackhole_activated -Number of times the code was activated to attempt a MSS downshift. -.It Va pmtud_blackhole_min_activated -Number of times the blackhole MSS was used in an attempt to downshift. +Number of times configured values were used in an attempt to downshift. +.It Va pmtud_blackhole_activated_min_mss +Number of times default MSS was used in an attempt to downshift. .It Va pmtud_blackhole_failed -Number of times that we failed to connect after we downshifted the MSS. +Number of connections for which retransmits continued even after MSS +downshift. .El .Sh ERRORS A socket operation may fail with one of the following errors returned: From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 21:06:04 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2EB83529; Sun, 28 Dec 2014 21:06:04 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1B3221505; Sun, 28 Dec 2014 21:06:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBSL63NK077609; Sun, 28 Dec 2014 21:06:03 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBSL63nW077608; Sun, 28 Dec 2014 21:06:03 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201412282106.sBSL63nW077608@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Sun, 28 Dec 2014 21:06:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276346 - head/contrib/binutils/gas/config X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 21:06:04 -0000 Author: dim Date: Sun Dec 28 21:06:03 2014 New Revision: 276346 URL: https://svnweb.freebsd.org/changeset/base/276346 Log: In contrib/binutils/gas/config/tc-ppc.c, fix a few -Wformat-security warnings. MFC after: 3 days Modified: head/contrib/binutils/gas/config/tc-ppc.c Modified: head/contrib/binutils/gas/config/tc-ppc.c ============================================================================== --- head/contrib/binutils/gas/config/tc-ppc.c Sun Dec 28 20:56:03 2014 (r276345) +++ head/contrib/binutils/gas/config/tc-ppc.c Sun Dec 28 21:06:03 2014 (r276346) @@ -1548,7 +1548,7 @@ ppc_insert_operand (unsigned long insn, errmsg = NULL; insn = (*operand->insert) (insn, (long) val, ppc_cpu, &errmsg); if (errmsg != (const char *) NULL) - as_bad_where (file, line, errmsg); + as_bad_where (file, line, "%s", errmsg); } else insn |= ((long) val & operand->bitm) << operand->shift; @@ -2279,7 +2279,7 @@ md_assemble (char *str) { insn = (*operand->insert) (insn, 0L, ppc_cpu, &errmsg); if (errmsg != (const char *) NULL) - as_bad (errmsg); + as_bad ("%s", errmsg); continue; } @@ -2292,7 +2292,7 @@ md_assemble (char *str) { insn = (*operand->insert) (insn, 0L, ppc_cpu, &errmsg); if (errmsg != (const char *) NULL) - as_bad (errmsg); + as_bad ("%s", errmsg); } if ((operand->flags & PPC_OPERAND_NEXT) != 0) next_opindex = *opindex_ptr + 1; From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 21:13:54 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1D3F5761; Sun, 28 Dec 2014 21:13:54 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E4D361694; Sun, 28 Dec 2014 21:13:53 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBSLDrFo082044; Sun, 28 Dec 2014 21:13:53 GMT (envelope-from rmacklem@FreeBSD.org) Received: (from rmacklem@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBSLDrEP082043; Sun, 28 Dec 2014 21:13:53 GMT (envelope-from rmacklem@FreeBSD.org) Message-Id: <201412282113.sBSLDrEP082043@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: rmacklem set sender to rmacklem@FreeBSD.org using -f From: Rick Macklem Date: Sun, 28 Dec 2014 21:13:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276347 - head/sys/fs/nfsclient X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 21:13:54 -0000 Author: rmacklem Date: Sun Dec 28 21:13:52 2014 New Revision: 276347 URL: https://svnweb.freebsd.org/changeset/base/276347 Log: r245508 modified the NFS client's Setattr RPC to use VA_UTIMES_NULL to indicate whether it should set the time to the current tod on the server. This had the side effect of making the NFS client use the client's timestamp for exclusive create, starting with FreeBSD9.2. Unfortunately a bug in some Solaris NFS servers causes these servers to return NFS_OK to the Setattr RPC done during exclusive create, but not actually set the file's mode, leaving the file's mode == 0. This patch restores the NFS client's behaviour to use the server's tod for the exclusive open's Setattr RPC, to avoid the Solaris server bug and to restore the pre-FreeBSD9.2 NFS behaviour. Discussed on: freebsd-fs PR: 186293 MFC after: 3 months Modified: head/sys/fs/nfsclient/nfs_clport.c Modified: head/sys/fs/nfsclient/nfs_clport.c ============================================================================== --- head/sys/fs/nfsclient/nfs_clport.c Sun Dec 28 21:06:03 2014 (r276346) +++ head/sys/fs/nfsclient/nfs_clport.c Sun Dec 28 21:13:52 2014 (r276347) @@ -1096,9 +1096,16 @@ nfscl_checksattr(struct vattr *vap, stru * us to do a SETATTR RPC. FreeBSD servers store the verifier * in atime, but we can't really assume that all servers will * so we ensure that our SETATTR sets both atime and mtime. + * Set the VA_UTIMES_NULL flag for this case, so that + * the server's time will be used. This is needed to + * work around a bug in some Solaris servers, where + * setting the time TOCLIENT causes the Setattr RPC + * to return NFS_OK, but not set va_mode. */ - if (vap->va_mtime.tv_sec == VNOVAL) + if (vap->va_mtime.tv_sec == VNOVAL) { vfs_timestamp(&vap->va_mtime); + vap->va_vaflags |= VA_UTIMES_NULL; + } if (vap->va_atime.tv_sec == VNOVAL) vap->va_atime = vap->va_mtime; return (1); From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 21:33:43 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5105FD12; Sun, 28 Dec 2014 21:33:43 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2396C1966; Sun, 28 Dec 2014 21:33:43 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBSLXhmg091492; Sun, 28 Dec 2014 21:33:43 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBSLXgeJ091491; Sun, 28 Dec 2014 21:33:43 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201412282133.sBSLXgeJ091491@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Sun, 28 Dec 2014 21:33:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276350 - head/sys/arm/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 21:33:43 -0000 Author: ian Date: Sun Dec 28 21:33:41 2014 New Revision: 276350 URL: https://svnweb.freebsd.org/changeset/base/276350 Log: Update comments (r4 is not used anywhere), use non-profiling entry macros. Modified: head/sys/arm/arm/cpu_asm-v6.S Modified: head/sys/arm/arm/cpu_asm-v6.S ============================================================================== --- head/sys/arm/arm/cpu_asm-v6.S Sun Dec 28 21:27:13 2014 (r276349) +++ head/sys/arm/arm/cpu_asm-v6.S Sun Dec 28 21:33:41 2014 (r276350) @@ -37,14 +37,16 @@ /* * Define cache functions used by startup code, which counts on the fact that - * only r0-r4,r12 (ip) are modified and no stack space is used. This set - * of function must be called with interrupts disabled and don't follow - * ARM ABI (cannot be called form C code. - * Moreover, it works only with caches integrated to CPU (accessible via CP15). + * only r0-r3,r12 (ip) are modified and no stack space is used. These functions + * must be called with interrupts disabled. Moreover, these work only with + * caches integrated to CPU (accessible via CP15); systems with an external L2 + * cache controller such as a PL310 need separate calls to that device driver + * to affect L2 caches. This is not a factor during early kernel startup, as + * any external L2 cache controller has not been enabled yet. */ /* Invalidate D cache to PoC. (aka all cache levels)*/ -ASENTRY(dcache_inv_poc_all) +ASENTRY_NP(dcache_inv_poc_all) mrc CP15_CLIDR(r0) ands r0, r0, #0x07000000 mov r0, r0, lsr #23 /* Get LoC (naturally aligned) */ @@ -96,7 +98,7 @@ ASENTRY(dcache_inv_poc_all) END(dcache_inv_poc_all) /* Invalidate D cache to PoU. (aka L1 cache only)*/ -ASENTRY(dcache_inv_pou_all) +ASENTRY_NP(dcache_inv_pou_all) mrc CP15_CLIDR(r0) ands r0, r0, #0x07000000 mov r0, r0, lsr #26 /* Get LoUU (naturally aligned) */ @@ -147,7 +149,7 @@ ASENTRY(dcache_inv_pou_all) END(dcache_inv_pou_all) /* Write back and Invalidate D cache to PoC. */ -ASENTRY(dcache_wbinv_poc_all) +ASENTRY_NP(dcache_wbinv_poc_all) mrc CP15_CLIDR(r0) ands r0, r0, #0x07000000 mov r0, r0, lsr #23 /* Get LoC (naturally aligned) */ From owner-svn-src-head@FreeBSD.ORG Sun Dec 28 21:36:21 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 492B5E7F; Sun, 28 Dec 2014 21:36:21 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 35E60198D; Sun, 28 Dec 2014 21:36:21 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBSLaLOW091891; Sun, 28 Dec 2014 21:36:21 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBSLaLg7091890; Sun, 28 Dec 2014 21:36:21 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201412282136.sBSLaLg7091890@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Sun, 28 Dec 2014 21:36:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276351 - head/sys/dev/uart X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Dec 2014 21:36:21 -0000 Author: marius Date: Sun Dec 28 21:36:20 2014 New Revision: 276351 URL: https://svnweb.freebsd.org/changeset/base/276351 Log: Don't use a sub-device/-vendor wildcard for probing MCS9922 as other chips with the same device and vendor IDs actually may provide different functionality. While at it, canonicalize the description to match other MosChip UARTs. PR: 186891 MFC after: 3 days Modified: head/sys/dev/uart/uart_bus_pci.c Modified: head/sys/dev/uart/uart_bus_pci.c ============================================================================== --- head/sys/dev/uart/uart_bus_pci.c Sun Dec 28 21:33:41 2014 (r276350) +++ head/sys/dev/uart/uart_bus_pci.c Sun Dec 28 21:36:20 2014 (r276351) @@ -137,8 +137,8 @@ static const struct pci_id pci_ns8250_id "MosChip MCS9901 PCIe to Peripheral Controller", 0x10 }, { 0x9710, 0x9904, 0xa000, 0x1000, "MosChip MCS9904 PCIe to Peripheral Controller", 0x10 }, -{ 0x9710, 0x9922, 0xffff, 0, - "MosChip MCS9922 Multi I/O Controller", 0x10 }, +{ 0x9710, 0x9922, 0xa000, 0x1000, + "MosChip MCS9922 PCIe to Peripheral Controller", 0x10 }, { 0xdeaf, 0x9051, 0xffff, 0, "Middle Digital PC Weasel Serial Port", 0x10 }, { 0xffff, 0, 0xffff, 0, NULL, 0, 0} }; From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 00:10:45 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0CD722C4; Mon, 29 Dec 2014 00:10:45 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EDA292FAF; Mon, 29 Dec 2014 00:10:44 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBT0AiFG063344; Mon, 29 Dec 2014 00:10:44 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBT0AiEL063343; Mon, 29 Dec 2014 00:10:44 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201412290010.sBT0AiEL063343@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Mon, 29 Dec 2014 00:10:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276352 - head/contrib/binutils/bfd X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 00:10:45 -0000 Author: dim Date: Mon Dec 29 00:10:43 2014 New Revision: 276352 URL: https://svnweb.freebsd.org/changeset/base/276352 Log: In contrib/binutils/bfd/elf32-ppc.c, avoid warnings about case values not being in the enumerated type 'enum elf_ppc_reloc_type', by casting the switch argument to int. MFC after: 3 days Modified: head/contrib/binutils/bfd/elf32-ppc.c Modified: head/contrib/binutils/bfd/elf32-ppc.c ============================================================================== --- head/contrib/binutils/bfd/elf32-ppc.c Sun Dec 28 21:36:20 2014 (r276351) +++ head/contrib/binutils/bfd/elf32-ppc.c Mon Dec 29 00:10:43 2014 (r276352) @@ -6185,7 +6185,7 @@ ppc_elf_relocate_section (bfd *output_bf howto = NULL; if (r_type < R_PPC_max) howto = ppc_elf_howto_table[r_type]; - switch (r_type) + switch ((int) r_type) { default: (*_bfd_error_handler) From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 00:35:46 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D541972E; Mon, 29 Dec 2014 00:35:46 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A75C8644F6; Mon, 29 Dec 2014 00:35:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBT0Zk8C076795; Mon, 29 Dec 2014 00:35:46 GMT (envelope-from bryanv@FreeBSD.org) Received: (from bryanv@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBT0ZjmZ076787; Mon, 29 Dec 2014 00:35:45 GMT (envelope-from bryanv@FreeBSD.org) Message-Id: <201412290035.sBT0ZjmZ076787@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: bryanv set sender to bryanv@FreeBSD.org using -f From: Bryan Venteicher Date: Mon, 29 Dec 2014 00:35:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276354 - in head/sys/dev/beri/virtio: . network X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 00:35:46 -0000 Author: bryanv Date: Mon Dec 29 00:35:44 2014 New Revision: 276354 URL: https://svnweb.freebsd.org/changeset/base/276354 Log: Remove dev/virtio/virtio.h include from BERI VirtIO This header file contains prototypes and defines that only make sense to the guest VirtIO device drivers. Reviewed by: br Modified: head/sys/dev/beri/virtio/network/if_vtbe.c head/sys/dev/beri/virtio/virtio.c head/sys/dev/beri/virtio/virtio_block.c Modified: head/sys/dev/beri/virtio/network/if_vtbe.c ============================================================================== --- head/sys/dev/beri/virtio/network/if_vtbe.c Mon Dec 29 00:30:38 2014 (r276353) +++ head/sys/dev/beri/virtio/network/if_vtbe.c Mon Dec 29 00:35:44 2014 (r276354) @@ -82,7 +82,8 @@ __FBSDID("$FreeBSD$"); #include #include -#include +#include +#include #include #include "pio_if.h" Modified: head/sys/dev/beri/virtio/virtio.c ============================================================================== --- head/sys/dev/beri/virtio/virtio.c Mon Dec 29 00:30:38 2014 (r276353) +++ head/sys/dev/beri/virtio/virtio.c Mon Dec 29 00:35:44 2014 (r276354) @@ -65,7 +65,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include #include Modified: head/sys/dev/beri/virtio/virtio_block.c ============================================================================== --- head/sys/dev/beri/virtio/virtio_block.c Mon Dec 29 00:30:38 2014 (r276353) +++ head/sys/dev/beri/virtio/virtio_block.c Mon Dec 29 00:35:44 2014 (r276354) @@ -67,7 +67,8 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include +#include +#include #include #include "pio_if.h" From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 00:35:48 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BD8A3807; Mon, 29 Dec 2014 00:35:48 +0000 (UTC) Received: from vps.hungerhost.com (vps.hungerhost.com [216.38.53.176]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 68BAE644F9; Mon, 29 Dec 2014 00:35:48 +0000 (UTC) Received: from pool-96-250-5-187.nycmny.fios.verizon.net ([96.250.5.187]:51872 helo=[172.16.19.1]) by vps.hungerhost.com with esmtpsa (TLSv1:DHE-RSA-AES256-SHA:256) (Exim 4.82) (envelope-from ) id 1Y5OJF-0003Xb-S9; Sun, 28 Dec 2014 19:35:46 -0500 From: "George Neville-Neil" To: "Mark Johnston" Subject: Re: svn commit: r276142 - in head/sys: amd64/amd64 cddl/dev/dtrace/amd64 cddl/dev/dtrace/i386 cddl/dev/dtrace/mips cddl/dev/dtrace/powerpc i386/i386 mips/mips powerpc/aim sys Date: Sat, 27 Dec 2014 20:00:39 -1000 Message-ID: In-Reply-To: <20141223160423.GA24447@charmander.home> References: <201412231538.sBNFcKrx091251@svn.freebsd.org> <1419349557.1018.134.camel@freebsd.org> <20141223160423.GA24447@charmander.home> MIME-Version: 1.0 Content-Type: text/plain; format=flowed X-Mailer: MailMate (1.8r5029) X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - vps.hungerhost.com X-AntiAbuse: Original Domain - freebsd.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - neville-neil.com X-Get-Message-Sender-Via: vps.hungerhost.com: authenticated_id: gnn@neville-neil.com Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Ian Lepore X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 00:35:48 -0000 On 23 Dec 2014, at 6:05, Mark Johnston wrote: > On Tue, Dec 23, 2014 at 08:45:57AM -0700, Ian Lepore wrote: >> On Tue, 2014-12-23 at 15:38 +0000, Mark Johnston wrote: >>> Author: markj >>> Date: Tue Dec 23 15:38:19 2014 >>> New Revision: 276142 >>> URL: https://svnweb.freebsd.org/changeset/base/276142 >>> >>> Log: >>> Restore the trap type argument to the DTrace trap hook, removed in >>> r268600. >>> It's redundant at the moment since it can be obtained from the >>> trapframe >>> on the architectures where DTrace is supported, but this won't be >>> the case >>> with ARM. >>> >>> Modified: >>> head/sys/amd64/amd64/trap.c >>> head/sys/cddl/dev/dtrace/amd64/dtrace_subr.c >>> head/sys/cddl/dev/dtrace/i386/dtrace_subr.c >>> head/sys/cddl/dev/dtrace/mips/dtrace_subr.c >>> head/sys/cddl/dev/dtrace/powerpc/dtrace_subr.c >>> head/sys/i386/i386/trap.c >>> head/sys/mips/mips/trap.c >>> head/sys/powerpc/aim/trap.c >>> head/sys/sys/dtrace_bsd.h >>> >> >> Wouldn't it have been easier to just add the field to the trapframe >> for >> arm? iirc we have an unused padding field in the struct already just >> for ABI alignment, it could go there. > > In this case, the extra argument will be the fault address AND'ed with > FAULT_TYPE_MASK, and the hook is only potentially called in the data > abort > handler, so this extra field would be unused for other exceptions (and > unused for data aborts unless DTrace is active). Maybe that's ok, but > restoring the extra hook argument seemed like a less intrusive way to > go > to me. > Actually I have re-patched my tree with the code from Howard Su, put on top of the work by Mark et al. I took the comment in the review to heart and added the type to the trapframe for ARM. I'm happy to go either way, though. It's trivial to change it to work with this. Best, George From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 09:24:22 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D30D0238; Mon, 29 Dec 2014 09:24:22 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BF3F81846; Mon, 29 Dec 2014 09:24:22 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBT9OMit025080; Mon, 29 Dec 2014 09:24:22 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBT9OMHt025079; Mon, 29 Dec 2014 09:24:22 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201412290924.sBT9OMHt025079@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Mon, 29 Dec 2014 09:24:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276356 - head/sys/boot/powerpc/boot1.chrp X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 09:24:22 -0000 Author: dim Date: Mon Dec 29 09:24:21 2014 New Revision: 276356 URL: https://svnweb.freebsd.org/changeset/base/276356 Log: Use -Wl, to pass options to the linker for PowerPC's boot1.chrp. MFC after: 3 days Modified: head/sys/boot/powerpc/boot1.chrp/Makefile Modified: head/sys/boot/powerpc/boot1.chrp/Makefile ============================================================================== --- head/sys/boot/powerpc/boot1.chrp/Makefile Mon Dec 29 02:13:06 2014 (r276355) +++ head/sys/boot/powerpc/boot1.chrp/Makefile Mon Dec 29 09:24:21 2014 (r276356) @@ -15,7 +15,7 @@ MAN= CFLAGS= -ffreestanding -msoft-float -Os \ -I${.CURDIR}/../../common -I${.CURDIR}/../../../ \ -D_STANDALONE -LDFLAGS=-nostdlib -static -N +LDFLAGS=-nostdlib -static -Wl,-N .include "${.CURDIR}/../Makefile.inc" .PATH: ${.CURDIR}/../../../libkern ${.CURDIR}/../../../../lib/libc/powerpc/gen ${.CURDIR} From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 11:02:19 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E47C0977; Mon, 29 Dec 2014 11:02:19 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D0C2E6676B; Mon, 29 Dec 2014 11:02:19 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBTB2Jv3071872; Mon, 29 Dec 2014 11:02:19 GMT (envelope-from andrew@FreeBSD.org) Received: (from andrew@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBTB2JfQ071871; Mon, 29 Dec 2014 11:02:19 GMT (envelope-from andrew@FreeBSD.org) Message-Id: <201412291102.sBTB2JfQ071871@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: andrew set sender to andrew@FreeBSD.org using -f From: Andrew Turner Date: Mon, 29 Dec 2014 11:02:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276358 - head/sys/dev/virtio/mmio X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 11:02:20 -0000 Author: andrew Date: Mon Dec 29 11:02:18 2014 New Revision: 276358 URL: https://svnweb.freebsd.org/changeset/base/276358 Log: Allow virtio_mmio to attach to ofwbus. Qemu places these here on at least the AArch64 virtual platform with the Linaro UEFI. Sponsored by: The FreeBSD Foundation Modified: head/sys/dev/virtio/mmio/virtio_mmio.c Modified: head/sys/dev/virtio/mmio/virtio_mmio.c ============================================================================== --- head/sys/dev/virtio/mmio/virtio_mmio.c Mon Dec 29 09:27:42 2014 (r276357) +++ head/sys/dev/virtio/mmio/virtio_mmio.c Mon Dec 29 11:02:18 2014 (r276358) @@ -202,6 +202,7 @@ static driver_t vtmmio_driver = { devclass_t vtmmio_devclass; DRIVER_MODULE(virtio_mmio, simplebus, vtmmio_driver, vtmmio_devclass, 0, 0); +DRIVER_MODULE(virtio_mmio, ofwbus, vtmmio_driver, vtmmio_devclass, 0, 0); MODULE_VERSION(virtio_mmio, 1); MODULE_DEPEND(virtio_mmio, simplebus, 1, 1, 1); MODULE_DEPEND(virtio_mmio, virtio, 1, 1, 1); From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 13:02:04 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CAB9DEE8; Mon, 29 Dec 2014 13:02:04 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B64D2669E0; Mon, 29 Dec 2014 13:02:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBTD24bk027153; Mon, 29 Dec 2014 13:02:04 GMT (envelope-from jilles@FreeBSD.org) Received: (from jilles@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBTD24xM027152; Mon, 29 Dec 2014 13:02:04 GMT (envelope-from jilles@FreeBSD.org) Message-Id: <201412291302.sBTD24xM027152@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: jilles set sender to jilles@FreeBSD.org using -f From: Jilles Tjoelker Date: Mon, 29 Dec 2014 13:02:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276359 - head/bin/ln X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 13:02:04 -0000 Author: jilles Date: Mon Dec 29 13:02:03 2014 New Revision: 276359 URL: https://svnweb.freebsd.org/changeset/base/276359 Log: symlink(7): Note that stat(1) does not follow symlinks by default. MFC after: 1 week Modified: head/bin/ln/symlink.7 Modified: head/bin/ln/symlink.7 ============================================================================== --- head/bin/ln/symlink.7 Mon Dec 29 11:02:18 2014 (r276358) +++ head/bin/ln/symlink.7 Mon Dec 29 13:02:03 2014 (r276359) @@ -29,7 +29,7 @@ .\" @(#)symlink.7 8.3 (Berkeley) 3/31/94 .\" $FreeBSD$ .\" -.Dd April 25, 2010 +.Dd December 29, 2014 .Dt SYMLINK 7 .Os .Sh NAME @@ -219,7 +219,7 @@ would change the ownership of .Dq Li slink itself. .Pp -There are four exceptions to this rule. +There are five exceptions to this rule. The .Xr mv 1 and @@ -262,13 +262,12 @@ a file tree.) .Pp The .Xr file 1 -command is also an exception to this rule. -The -.Xr file 1 -command does not follow symbolic links named as argument by default. -The -.Xr file 1 -command does follow symbolic links named as argument if +and +.Xr stat 1 +commands are also exceptions to this rule. +These +commands do not follow symbolic links named as argument by default, +but do follow symbolic links named as argument if the .Fl L option is specified. .Pp From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 13:51:05 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 42B339C1; Mon, 29 Dec 2014 13:51:05 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 259FD2491; Mon, 29 Dec 2014 13:51:05 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBTDp5OH049962; Mon, 29 Dec 2014 13:51:05 GMT (envelope-from joel@FreeBSD.org) Received: (from joel@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBTDp0hn049651; Mon, 29 Dec 2014 13:51:00 GMT (envelope-from joel@FreeBSD.org) Message-Id: <201412291351.sBTDp0hn049651@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: joel set sender to joel@FreeBSD.org using -f From: Joel Dahl Date: Mon, 29 Dec 2014 13:51:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276360 - in head: cddl/contrib/opensolaris/cmd/zpool lib/libc/regex lib/msun/man sbin/bsdlabel sbin/camcontrol sbin/geom/class/label sbin/ipfw sbin/iscontrol sbin/mount_nfs sbin/routed... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 13:51:05 -0000 Author: joel (doc committer) Date: Mon Dec 29 13:50:59 2014 New Revision: 276360 URL: https://svnweb.freebsd.org/changeset/base/276360 Log: mdoc: remove EOL whitespace. Modified: head/cddl/contrib/opensolaris/cmd/zpool/zpool-features.7 head/lib/libc/regex/re_format.7 head/lib/msun/man/lgamma.3 head/sbin/bsdlabel/bsdlabel.8 head/sbin/camcontrol/camcontrol.8 head/sbin/geom/class/label/glabel.8 head/sbin/ipfw/ipfw.8 head/sbin/iscontrol/iscontrol.8 head/sbin/mount_nfs/mount_nfs.8 head/sbin/routed/routed.8 head/share/man/man4/ada.4 head/share/man/man7/crypto.7 head/share/man/man7/hier.7 head/sys/boot/common/loader.8 head/usr.bin/soeliminate/soeliminate.1 head/usr.sbin/bsdinstall/bsdinstall.8 head/usr.sbin/kbdcontrol/kbdcontrol.1 Modified: head/cddl/contrib/opensolaris/cmd/zpool/zpool-features.7 ============================================================================== --- head/cddl/contrib/opensolaris/cmd/zpool/zpool-features.7 Mon Dec 29 13:02:03 2014 (r276359) +++ head/cddl/contrib/opensolaris/cmd/zpool/zpool-features.7 Mon Dec 29 13:50:59 2014 (r276360) @@ -443,7 +443,7 @@ This feature becomes .Sy active once a .Sy recordsize -property has been set larger than 128KB, and will return to being +property has been set larger than 128KB, and will return to being .Sy enabled once all filesystems that have ever had their recordsize larger than 128KB are destroyed. Modified: head/lib/libc/regex/re_format.7 ============================================================================== --- head/lib/libc/regex/re_format.7 Mon Dec 29 13:02:03 2014 (r276359) +++ head/lib/libc/regex/re_format.7 Mon Dec 29 13:50:59 2014 (r276360) @@ -314,10 +314,10 @@ compatible with but not specified by .St -p1003.2 , and should be used with caution in software intended to be portable to other systems. -The additional word delimiters +The additional word delimiters .Ql \e< and -.Ql \e> +.Ql \e> are provided to ease compatibility with traditional .Xr svr4 4 systems but are not portable and should be avoided. Modified: head/lib/msun/man/lgamma.3 ============================================================================== --- head/lib/msun/man/lgamma.3 Mon Dec 29 13:02:03 2014 (r276359) +++ head/lib/msun/man/lgamma.3 Mon Dec 29 13:50:59 2014 (r276360) @@ -99,7 +99,7 @@ returns the sign of \(*G(x). and .Fn lgammal_r x signgamp provide the same functionality as -.Fn lgamma x , +.Fn lgamma x , .Fn lgammaf x , and .Fn lgammal x , Modified: head/sbin/bsdlabel/bsdlabel.8 ============================================================================== --- head/sbin/bsdlabel/bsdlabel.8 Mon Dec 29 13:02:03 2014 (r276359) +++ head/sbin/bsdlabel/bsdlabel.8 Mon Dec 29 13:50:59 2014 (r276360) @@ -109,7 +109,7 @@ argument forces .Nm to use a layout suitable for a different architecture. Current valid values are -.Cm i386 , amd64 , +.Cm i386 , amd64 , and .Cm pc98 . If this option is omitted, Modified: head/sbin/camcontrol/camcontrol.8 ============================================================================== --- head/sbin/camcontrol/camcontrol.8 Mon Dec 29 13:02:03 2014 (r276359) +++ head/sbin/camcontrol/camcontrol.8 Mon Dec 29 13:50:59 2014 (r276360) @@ -1613,7 +1613,7 @@ For example: .It FC A Fibre Channel Transport ID consists of .Dq fcp, -followed by a 64-bit Fibre Channel World Wide Name. +followed by a 64-bit Fibre Channel World Wide Name. For example: .Pp .Dl fcp,0x1234567812345678 @@ -1735,11 +1735,11 @@ May also be specified as .Dq exclusive_access . .It wr_ex_ro Write Exclusive Registrants Only mode. -May also be specified as +May also be specified as .Dq write_exclusive_reg_only . .It ex_ac_ro Exclusive Access Registrants Only mode. -May also be specified as +May also be specified as .Dq exclusive_access_reg_only . .It wr_ex_ar Write Exclusive All Registrants mode. @@ -1747,7 +1747,7 @@ May also be specified as .Dq write_exclusive_all_regs . .It ex_ac_ar Exclusive Access All Registrants mode. -May also be specified as +May also be specified as .Dq exclusive_access_all_regs . .El .It Fl U @@ -1931,7 +1931,7 @@ camcontrol persist da0 -v -i read_keys .Pp This will read any persistent reservation keys registered with da0, and display any errors encountered when sending the PERSISTENT RESERVE IN -.Tn SCSI +.Tn SCSI command. .Bd -literal -offset indent camcontrol persist da0 -v -o register -a -K 0x12345678 @@ -1976,9 +1976,9 @@ camcontrol persist da0 -v -o register_mo .Ed .Pp This will move the registration from the current initiator, whose -Registration Key is 0x87654321, to the Fibre Channel initiator with the +Registration Key is 0x87654321, to the Fibre Channel initiator with the Fiber Channel World Wide Node Name 0x1234567812345678. -A new registration key, 0x12345678, will be registered for the initiator +A new registration key, 0x12345678, will be registered for the initiator with the Fibre Channel World Wide Node Name 0x1234567812345678, and the current initiator will be unregistered from the target. The reservation will be moved to relative target port 2 on the target Modified: head/sbin/geom/class/label/glabel.8 ============================================================================== --- head/sbin/geom/class/label/glabel.8 Mon Dec 29 13:02:03 2014 (r276359) +++ head/sbin/geom/class/label/glabel.8 Mon Dec 29 13:50:59 2014 (r276360) @@ -227,11 +227,11 @@ maximum amount of debug information is p .It Va kern.geom.label.*.enable : No 1 Most .Nm LABEL -providers implement a +providers implement a .Xr sysctl 8 flag and a tunable variable named in the above format. This flag controls if the label provider will be active, tasting devices -and creating label nodes in the +and creating label nodes in the .Xr devfs 5 tree. It is sometimes desirable to disable certain label types if they conflict with other classes in complex GEOM topologies. Modified: head/sbin/ipfw/ipfw.8 ============================================================================== --- head/sbin/ipfw/ipfw.8 Mon Dec 29 13:02:03 2014 (r276359) +++ head/sbin/ipfw/ipfw.8 Mon Dec 29 13:50:59 2014 (r276360) @@ -76,7 +76,7 @@ in-kernel NAT. .Nm .Oo Cm set Ar N Oc Cm table .Brq Ar name | all -.Cm info +.Cm info .Nm .Oo Cm set Ar N Oc Cm table .Brq Ar name | all @@ -1872,7 +1872,7 @@ addresses or other search keys (e.g., po In the rest of this section we will use the term ``key''. Table name needs to match the following spec: .Ar table-name . -Tables with the same name can be created in different +Tables with the same name can be created in different .Ar sets . However, rule links to the tables in .Ar set 0 @@ -1972,7 +1972,7 @@ command. Addition of all items are performed atomically. By default, error in addition of one entry does not influence addition of other entries. However, non-zero error code is returned -in that case. +in that case. Special .Cm atomic keyword may be specified before @@ -1984,7 +1984,7 @@ One or more entries can be removed from command. By default, error in removal of one entry does not influence removing of other entries. However, non-zero error code is returned -in that case. +in that case. .Pp It may be possible to check what entry will be found on particular .Ar table-key Modified: head/sbin/iscontrol/iscontrol.8 ============================================================================== --- head/sbin/iscontrol/iscontrol.8 Mon Dec 29 13:02:03 2014 (r276359) +++ head/sbin/iscontrol/iscontrol.8 Mon Dec 29 13:50:59 2014 (r276360) @@ -43,7 +43,7 @@ .Sh DESCRIPTION .Bf -symbolic This command, along with its kernel counterpart -.Xr iscsi_initiator 4 , +.Xr iscsi_initiator 4 , is obsolete. Users are advised to use .Xr iscsictl 8 Modified: head/sbin/mount_nfs/mount_nfs.8 ============================================================================== --- head/sbin/mount_nfs/mount_nfs.8 Mon Dec 29 13:02:03 2014 (r276359) +++ head/sbin/mount_nfs/mount_nfs.8 Mon Dec 29 13:50:59 2014 (r276360) @@ -393,7 +393,7 @@ Use the specified version number for NFS See the .Cm nfsv2 , .Cm nfsv3 , -and +and .Cm nfsv4 options for details. .It Cm wcommitsize Ns = Ns Aq Ar value Modified: head/sbin/routed/routed.8 ============================================================================== --- head/sbin/routed/routed.8 Mon Dec 29 13:02:03 2014 (r276359) +++ head/sbin/routed/routed.8 Mon Dec 29 13:50:59 2014 (r276360) @@ -254,7 +254,7 @@ The following options are available: allow .Nm to accept a RIP request from non-router node. -When specified once, +When specified once, .Nm replies to a route information query from neighbor nodes. When specified twice, Modified: head/share/man/man4/ada.4 ============================================================================== --- head/share/man/man4/ada.4 Mon Dec 29 13:02:03 2014 (r276359) +++ head/share/man/man4/ada.4 Mon Dec 29 13:50:59 2014 (r276360) @@ -138,7 +138,7 @@ The default is sorting enabled for HDDs These variables determine whether device read-ahead and write caches should be enabled globally or per-device or disabled. Set to 1 to enable write cache, 0 to disable, -1 to leave it as-is. -Values modified at runtime take effect only after device reset +Values modified at runtime take effect only after device reset .Pq using the reset subcommand of Xr camcontrol 8 . Because of that, this setting should be changed in .Pa /boot/loader.conf Modified: head/share/man/man7/crypto.7 ============================================================================== --- head/share/man/man7/crypto.7 Mon Dec 29 13:02:03 2014 (r276359) +++ head/share/man/man7/crypto.7 Mon Dec 29 13:50:59 2014 (r276360) @@ -97,7 +97,7 @@ This algorithm implements Integer Counte This is similar to what most people call counter mode, but instead of the counter being split into a nonce and a counter part, then entire nonce is used as the initial counter. -This does mean that if a counter is required that rolls over at 32 bits, +This does mean that if a counter is required that rolls over at 32 bits, the transaction need to be split into two parts where the counter rolls over. The counter incremented as a 128-bit big endian number. .Pp Modified: head/share/man/man7/hier.7 ============================================================================== --- head/share/man/man7/hier.7 Mon Dec 29 13:02:03 2014 (r276359) +++ head/share/man/man7/hier.7 Mon Dec 29 13:50:59 2014 (r276360) @@ -50,7 +50,7 @@ default bootstrapping configuration file .Xr loader.conf 5 .It Pa dtb/ Compiled flattened device tree (FDT) files; see -.Xr fdt 4 +.Xr fdt 4 and .Xr dtc 1 .It Pa firmware/ @@ -64,8 +64,8 @@ third-party loadable kernel modules; see .Xr kldstat 8 .It Pa zfs/ -Contains -.Xr zfs 8 +Contains +.Xr zfs 8 zpool cache files. .El .It Pa /cdrom/ Modified: head/sys/boot/common/loader.8 ============================================================================== --- head/sys/boot/common/loader.8 Mon Dec 29 13:02:03 2014 (r276359) +++ head/sys/boot/common/loader.8 Mon Dec 29 13:50:59 2014 (r276360) @@ -671,7 +671,7 @@ Overrides the compile-time set value of or the preset default of 512. Must be a power of 2. .It Va twiddle_divisor -Throttles the output of the +Throttles the output of the .Sq twiddle I/O progress indicator displayed while loading the kernel and modules. This is useful on slow serial consoles where the time spent waiting for Modified: head/usr.bin/soeliminate/soeliminate.1 ============================================================================== --- head/usr.bin/soeliminate/soeliminate.1 Mon Dec 29 13:02:03 2014 (r276359) +++ head/usr.bin/soeliminate/soeliminate.1 Mon Dec 29 13:50:59 2014 (r276360) @@ -66,7 +66,7 @@ Compatibility with GNU groff's .It Fl I Ar dir This option specify directories where .Nm -searches for files (both those on the command line and those named in +searches for files (both those on the command line and those named in .Dq .so directive.) This options may be specified multiple times. The directories will be searched Modified: head/usr.sbin/bsdinstall/bsdinstall.8 ============================================================================== --- head/usr.sbin/bsdinstall/bsdinstall.8 Mon Dec 29 13:02:03 2014 (r276359) +++ head/usr.sbin/bsdinstall/bsdinstall.8 Mon Dec 29 13:50:59 2014 (r276360) @@ -129,7 +129,7 @@ with separate datasets for and .Pa /var . Optionally can set up -.Xr geli 8 +.Xr geli 8 to encrypt the disk. .It Cm partedit Provides the installer's interactive manual disk partitioner with an interface @@ -354,7 +354,7 @@ instead of .Cm partedit , the preamble can contain the variable .Ev ZFSBOOT_DATASETS -instead of +instead of .Ev PARTITIONS . .Ss SETUP SCRIPT Following the preamble is an optional shell script, beginning with a #! Modified: head/usr.sbin/kbdcontrol/kbdcontrol.1 ============================================================================== --- head/usr.sbin/kbdcontrol/kbdcontrol.1 Mon Dec 29 13:02:03 2014 (r276359) +++ head/usr.sbin/kbdcontrol/kbdcontrol.1 Mon Dec 29 13:50:59 2014 (r276360) @@ -230,7 +230,7 @@ So long as the keyboard map file resides (if using .Xr syscons 4 ) or .Pa /usr/share/vt/keymaps -(if using +(if using .Xr vt 4 ) , you may abbreviate the file name as .Pa ru.koi8-r . From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 16:50:08 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5395C646; Mon, 29 Dec 2014 16:50:08 +0000 (UTC) Received: from mx1.sbone.de (bird.sbone.de [46.4.1.90]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client CN "mx1.sbone.de", Issuer "SBone.DE" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id BC2E82204; Mon, 29 Dec 2014 16:50:07 +0000 (UTC) Received: from mail.sbone.de (mail.sbone.de [IPv6:fde9:577b:c1a9:31::2013:587]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by mx1.sbone.de (Postfix) with ESMTPS id CB06C25D3871; Mon, 29 Dec 2014 16:49:57 +0000 (UTC) Received: from content-filter.sbone.de (content-filter.sbone.de [IPv6:fde9:577b:c1a9:31::2013:2742]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPS id 60ACCC7709D; Mon, 29 Dec 2014 16:49:56 +0000 (UTC) X-Virus-Scanned: amavisd-new at sbone.de Received: from mail.sbone.de ([IPv6:fde9:577b:c1a9:31::2013:587]) by content-filter.sbone.de (content-filter.sbone.de [fde9:577b:c1a9:31::2013:2742]) (amavisd-new, port 10024) with ESMTP id ISMZI-hLMHDV; Mon, 29 Dec 2014 16:49:54 +0000 (UTC) Received: from [IPv6:fde9:577b:c1a9:4420:cabc:c8ff:fe8b:4fe6] (orange-tun0-ula.sbone.de [IPv6:fde9:577b:c1a9:4420:cabc:c8ff:fe8b:4fe6]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPSA id 33852C7706F; Mon, 29 Dec 2014 16:49:53 +0000 (UTC) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Subject: Re: svn commit: r276195 - in head: . lib/libxo From: "Bjoern A. Zeeb" In-Reply-To: <201412250315.sBP3FvS6025641@svn.freebsd.org> Date: Mon, 29 Dec 2014 16:49:52 +0000 Content-Transfer-Encoding: quoted-printable Message-Id: References: <201412250315.sBP3FvS6025641@svn.freebsd.org> To: Alfred Perlstein X-Mailer: Apple Mail (2.1993) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 16:50:08 -0000 > On 25 Dec 2014, at 03:15 , Alfred Perlstein = wrote: >=20 > Author: alfred > Date: Thu Dec 25 03:15:56 2014 > New Revision: 276195 > URL: https://svnweb.freebsd.org/changeset/base/276195 >=20 > Log: > Move libxo to /lib >=20 > Update ObsoleteFiles to reflect libxo move. What this commit message doesn=E2=80=99t say is =E2=80=9CWHY?=E2=80=9D = Everything else you described is kind of obvious from the commit diff = ;-) > Reviewed by: ngie > Differential Revision: https://reviews.freebsd.org/D1370 >=20 > Modified: > head/ObsoleteFiles.inc > head/lib/libxo/Makefile >=20 > Modified: head/ObsoleteFiles.inc > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/ObsoleteFiles.inc Thu Dec 25 02:17:17 2014 = (r276194) > +++ head/ObsoleteFiles.inc Thu Dec 25 03:15:56 2014 = (r276195) > @@ -38,6 +38,9 @@ > # xargs -n1 | sort | uniq -d; > # done >=20 > +# 20141224: libxo moved to /lib > +OLD_FILES+=3Dusr/lib/libxo.a > +OLD_FILES+=3Dusr/lib/libxo_p.a > # 20141223: remove in6_gif.h, in_gif.h and if_stf.h > OLD_FILES+=3Dusr/include/net/if_stf.h > OLD_FILES+=3Dusr/include/netinet/in_gif.h >=20 > Modified: head/lib/libxo/Makefile > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/lib/libxo/Makefile Thu Dec 25 02:17:17 2014 = (r276194) > +++ head/lib/libxo/Makefile Thu Dec 25 03:15:56 2014 = (r276195) > @@ -7,6 +7,8 @@ LIBXO=3D ${.CURDIR:H:H}/contrib/libxo > LIB=3D xo > SHLIB_MAJOR=3D0 >=20 > +SHLIBDIR?=3D /lib > + > SRCS=3D libxo.c >=20 > CFLAGS+=3D-I${LIBXO}/libxo >=20 =E2=80=94=20 Bjoern A. Zeeb Charles Haddon Spurgeon: "Friendship is one of the sweetest joys of life. Many might have failed beneath the bitterness of their trial had they not found a friend." From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 16:51:55 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B04A77A3; Mon, 29 Dec 2014 16:51:55 +0000 (UTC) Received: from elvis.mu.org (elvis.mu.org [IPv6:2001:470:1f05:b76::196]) by mx1.freebsd.org (Postfix) with ESMTP id 9C17C233B; Mon, 29 Dec 2014 16:51:55 +0000 (UTC) Received: from AlfredMacbookAir.local (c-76-21-10-192.hsd1.ca.comcast.net [76.21.10.192]) by elvis.mu.org (Postfix) with ESMTPSA id 7C14F341F854; Mon, 29 Dec 2014 08:51:55 -0800 (PST) Message-ID: <54A186E6.8070805@freebsd.org> Date: Mon, 29 Dec 2014 08:52:54 -0800 From: Alfred Perlstein Organization: FreeBSD User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 MIME-Version: 1.0 To: "Bjoern A. Zeeb" Subject: Re: svn commit: r276195 - in head: . lib/libxo References: <201412250315.sBP3FvS6025641@svn.freebsd.org> In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 16:51:55 -0000 You are correct. Reason for move was due to programs inside of /bin and /sbin depending on libxo. -Alfred On 12/29/14 8:49 AM, Bjoern A. Zeeb wrote: >> On 25 Dec 2014, at 03:15 , Alfred Perlstein wrote: >> >> Author: alfred >> Date: Thu Dec 25 03:15:56 2014 >> New Revision: 276195 >> URL: https://svnweb.freebsd.org/changeset/base/276195 >> >> Log: >> Move libxo to /lib >> >> Update ObsoleteFiles to reflect libxo move. > What this commit message doesn’t say is “WHY?” Everything else you described is kind of obvious from the commit diff ;-) > > >> Reviewed by: ngie >> Differential Revision: https://reviews.freebsd.org/D1370 >> >> Modified: >> head/ObsoleteFiles.inc >> head/lib/libxo/Makefile >> >> Modified: head/ObsoleteFiles.inc >> ============================================================================== >> --- head/ObsoleteFiles.inc Thu Dec 25 02:17:17 2014 (r276194) >> +++ head/ObsoleteFiles.inc Thu Dec 25 03:15:56 2014 (r276195) >> @@ -38,6 +38,9 @@ >> # xargs -n1 | sort | uniq -d; >> # done >> >> +# 20141224: libxo moved to /lib >> +OLD_FILES+=usr/lib/libxo.a >> +OLD_FILES+=usr/lib/libxo_p.a >> # 20141223: remove in6_gif.h, in_gif.h and if_stf.h >> OLD_FILES+=usr/include/net/if_stf.h >> OLD_FILES+=usr/include/netinet/in_gif.h >> >> Modified: head/lib/libxo/Makefile >> ============================================================================== >> --- head/lib/libxo/Makefile Thu Dec 25 02:17:17 2014 (r276194) >> +++ head/lib/libxo/Makefile Thu Dec 25 03:15:56 2014 (r276195) >> @@ -7,6 +7,8 @@ LIBXO= ${.CURDIR:H:H}/contrib/libxo >> LIB= xo >> SHLIB_MAJOR=0 >> >> +SHLIBDIR?= /lib >> + >> SRCS= libxo.c >> >> CFLAGS+=-I${LIBXO}/libxo >> > — > Bjoern A. Zeeb Charles Haddon Spurgeon: > "Friendship is one of the sweetest joys of life. Many might have failed > beneath the bitterness of their trial had they not found a friend." > > From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 17:17:02 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 690B5C69; Mon, 29 Dec 2014 17:17:02 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 55104373A; Mon, 29 Dec 2014 17:17:02 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBTHH2L2045547; Mon, 29 Dec 2014 17:17:02 GMT (envelope-from andrew@FreeBSD.org) Received: (from andrew@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBTHH29D045546; Mon, 29 Dec 2014 17:17:02 GMT (envelope-from andrew@FreeBSD.org) Message-Id: <201412291717.sBTHH29D045546@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: andrew set sender to andrew@FreeBSD.org using -f From: Andrew Turner Date: Mon, 29 Dec 2014 17:17:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276367 - head/sys/dev/virtio/network X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 17:17:02 -0000 Author: andrew Date: Mon Dec 29 17:17:01 2014 New Revision: 276367 URL: https://svnweb.freebsd.org/changeset/base/276367 Log: Attach vtnet to virtio_mmio. Qemu provides this as an option with AArch64. Sponsored by: The FreeBSD Foundation Modified: head/sys/dev/virtio/network/if_vtnet.c Modified: head/sys/dev/virtio/network/if_vtnet.c ============================================================================== --- head/sys/dev/virtio/network/if_vtnet.c Mon Dec 29 16:32:24 2014 (r276366) +++ head/sys/dev/virtio/network/if_vtnet.c Mon Dec 29 17:17:01 2014 (r276367) @@ -298,6 +298,8 @@ static driver_t vtnet_driver = { }; static devclass_t vtnet_devclass; +DRIVER_MODULE(vtnet, virtio_mmio, vtnet_driver, vtnet_devclass, + vtnet_modevent, 0); DRIVER_MODULE(vtnet, virtio_pci, vtnet_driver, vtnet_devclass, vtnet_modevent, 0); MODULE_VERSION(vtnet, 1); From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 18:31:09 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A5074142; Mon, 29 Dec 2014 18:31:09 +0000 (UTC) Received: from mail-pd0-x236.google.com (mail-pd0-x236.google.com [IPv6:2607:f8b0:400e:c02::236]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6F3AC16EB; Mon, 29 Dec 2014 18:31:09 +0000 (UTC) Received: by mail-pd0-f182.google.com with SMTP id p10so17784333pdj.13; Mon, 29 Dec 2014 10:31:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=references:mime-version:in-reply-to:content-type :content-transfer-encoding:message-id:cc:from:subject:date:to; bh=nvE61vsR40Xln9MR85YKhtxoyL1L5YnsyWpI5M8BD8Y=; b=XJdJtFCwU8t7hId4AjCsNWz2daF39zQNCy+g9qNRYtor2ZkgXBnHtEvdP/QFnZSolL L4PblKgXT2OLVnVYsGWKLEzjwNXhqFFi2gJyHUOzmM+NUQjerJwYNVRVIUEwCINtliY0 s4OBpQEq4pb0qvkeJiqnyCOdaI9iXmAI198zquqzHBGmxpv+Ul5ZDd4VTwMnggX0XtZ+ T90pdpfET29yngGp4lRwKY8FgCVqAG73uB2xFFW8SS4c6Zn0McQkO9Xo+PS8jO6a1eja TtmOXKOb0UQHUI1iW9bYVudDNr56coT4udU44/Elo5iipfwXjFauXTa5eWAsJni6NT5v Dz/g== X-Received: by 10.68.69.78 with SMTP id c14mr91308554pbu.68.1419877868983; Mon, 29 Dec 2014 10:31:08 -0800 (PST) Received: from ?IPv6:2601:8:ab80:7d6:c9ab:bdde:d5ce:493a? ([2601:8:ab80:7d6:c9ab:bdde:d5ce:493a]) by mx.google.com with ESMTPSA id gd1sm36199634pbd.67.2014.12.29.10.31.08 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 29 Dec 2014 10:31:08 -0800 (PST) References: <201412250315.sBP3FvS6025641@svn.freebsd.org> <54A186E6.8070805@freebsd.org> Mime-Version: 1.0 (1.0) In-Reply-To: <54A186E6.8070805@freebsd.org> Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Message-Id: <6AE84649-768B-45F2-952E-C9661DD3201E@gmail.com> X-Mailer: iPhone Mail (12B440) From: Garrett Cooper Subject: Re: svn commit: r276195 - in head: . lib/libxo Date: Mon, 29 Dec 2014 10:31:06 -0800 To: Alfred Perlstein Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "Bjoern A. Zeeb" , "src-committers@freebsd.org" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 18:31:09 -0000 > On Dec 29, 2014, at 08:52, Alfred Perlstein wrote: >=20 > You are correct. >=20 > Reason for move was due to programs inside of /bin and /sbin depending on l= ibxo. ... And the fact that / and /usr can be on separate filesystems, etc.= From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 19:02:01 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E437D937; Mon, 29 Dec 2014 19:02:01 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B67A81BE9; Mon, 29 Dec 2014 19:02:01 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBTJ21FH095738; Mon, 29 Dec 2014 19:02:01 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBTJ218x095737; Mon, 29 Dec 2014 19:02:01 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201412291902.sBTJ218x095737@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Mon, 29 Dec 2014 19:02:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276369 - head X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 19:02:02 -0000 Author: emaste Date: Mon Dec 29 19:02:00 2014 New Revision: 276369 URL: https://svnweb.freebsd.org/changeset/base/276369 Log: Merge elftoolchain directory shuffling from elftoolchain update branch Modified: Directory Properties: head/ (props changed) From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 19:07:29 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E2B3ABAC; Mon, 29 Dec 2014 19:07:29 +0000 (UTC) Received: from mail-pa0-x22b.google.com (mail-pa0-x22b.google.com [IPv6:2607:f8b0:400e:c03::22b]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id AB8F91C35; Mon, 29 Dec 2014 19:07:29 +0000 (UTC) Received: by mail-pa0-f43.google.com with SMTP id kx10so18191929pab.30; Mon, 29 Dec 2014 11:07:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :message-id:references:to; bh=9jPDHrdATqUxYfSoZ3/eGBlWvc0seiV8g1JZ15I+AWY=; b=rKVh1Qi0FkINRSn0JYLNU5zw6q6HtjNuA4VIzYSL+J91mIM16FEoGTAovAuxTRUYUY ui5jzdTZi0+MQSvz4c8hh1hNNNGSa6MM3EL5hii3FU6XMMdBlWqKJpHxkj1X7Lq4HH0h dmXNKy25GyDBQ/f4+MKhTPbHpRdVUGXu03uLhNUzvQqIXwXepVYCFiGx2S6N87xXuewY vncWg1t4sPRQSzXjnHYYA16yOoce3CNg4m9p5nL3wmQlaMII35D/tAKV38t3BOROl/kl DBbrvaid4Dq5FfAml0VgYpbWwv/CwNWm5C9EpTUvmYse4QGfwPM95g6/+DYPTYfjyZrU 6SGQ== X-Received: by 10.70.103.238 with SMTP id fz14mr77190201pdb.79.1419880047776; Mon, 29 Dec 2014 11:07:27 -0800 (PST) Received: from [192.168.20.5] (c-98-247-240-204.hsd1.wa.comcast.net. [98.247.240.204]) by mx.google.com with ESMTPSA id cr6sm28624231pdb.32.2014.12.29.11.07.26 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 29 Dec 2014 11:07:27 -0800 (PST) Content-Type: multipart/signed; boundary="Apple-Mail=_977C1FBA-025B-49DF-8341-5A83312A1FEA"; protocol="application/pgp-signature"; micalg=pgp-sha512 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: svn commit: r276369 - head From: Garrett Cooper In-Reply-To: <201412291902.sBTJ218x095737@svn.freebsd.org> Date: Mon, 29 Dec 2014 11:07:24 -0800 Message-Id: References: <201412291902.sBTJ218x095737@svn.freebsd.org> To: Ed Maste X-Mailer: Apple Mail (2.1878.6) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 19:07:30 -0000 --Apple-Mail=_977C1FBA-025B-49DF-8341-5A83312A1FEA Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii On Dec 29, 2014, at 11:02, Ed Maste wrote: > Author: emaste > Date: Mon Dec 29 19:02:00 2014 > New Revision: 276369 > URL: https://svnweb.freebsd.org/changeset/base/276369 > > Log: > Merge elftoolchain directory shuffling from elftoolchain update branch > > Modified: > Directory Properties: > head/ (props changed) Hi Ed, Was merging just the mergeinfo intentional? --Apple-Mail=_977C1FBA-025B-49DF-8341-5A83312A1FEA Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJUoaZtAAoJEMZr5QU6S73e+5cH/1Dt/0bC/7LGpcpDvaKFuyRH ODuQ3PJZGZoaZ4TIcRMttu+phghXgkzBcVvVyYXrbsICZCfFVeqScRClQF4L8igi Ffcv4h6hiABw9QtnQozBewBwWiUinCcmoCgISRauRL7RjgjXst7a7OgLLA17eNSd xU42WVRX+5Kdg8gvUJjji+Bi1767pZVzrVl0xmB3/SJ24pbY0KmMXTl6wmjYV0Td rn91qe7kbZhIJ0c4WTu+hbxS/36y9lM8Abd+L23F636NuIOY7y8Ga6Alp/Nu2OW0 zjs79xATG7UQepPcIYdBPLBtfPAbfXxfaakcHq0l0B40NHGMQiZ5g/riWUVhn+s= =e2t9 -----END PGP SIGNATURE----- --Apple-Mail=_977C1FBA-025B-49DF-8341-5A83312A1FEA-- From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 19:16:46 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7F3F0E79; Mon, 29 Dec 2014 19:16:46 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 66F5B1DB6; Mon, 29 Dec 2014 19:16:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBTJGkbM001219; Mon, 29 Dec 2014 19:16:46 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBTJGf3G001189; Mon, 29 Dec 2014 19:16:41 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201412291916.sBTJGf3G001189@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Mon, 29 Dec 2014 19:16:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276371 - in head: contrib/elftoolchain/common contrib/elftoolchain/elfcopy contrib/elftoolchain/libdwarf contrib/elftoolchain/libelf contrib/elftoolchain/libelftc contrib/elftoolchain/... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 19:16:46 -0000 Author: emaste Date: Mon Dec 29 19:16:40 2014 New Revision: 276371 URL: https://svnweb.freebsd.org/changeset/base/276371 Log: Update elftoolchain to upstream rev 3130 This includes a number of libdwarf improvements (particularly DWARF4 related) and updates to elftoolchain tools such as strip(1). It also includes a large number of miscellaneous fixes (memory leaks, sign and cast warnings, integer overflow and underflow, etc.). This is a merge of r276167,276170-276172 from the projects/elftoolchain-update-r3130 branch. Sponsored by: The FreeBSD Foundation Added: head/contrib/elftoolchain/libdwarf/dwarf_attroffset.3 - copied unchanged from r276167, projects/elftoolchain-update-r3130/contrib/elftoolchain/libdwarf/dwarf_attroffset.3 head/contrib/elftoolchain/libdwarf/dwarf_get_die_infotypes_flag.3 - copied unchanged from r276167, projects/elftoolchain-update-r3130/contrib/elftoolchain/libdwarf/dwarf_get_die_infotypes_flag.3 head/contrib/elftoolchain/libdwarf/dwarf_get_section_max_offsets.3 - copied unchanged from r276167, projects/elftoolchain-update-r3130/contrib/elftoolchain/libdwarf/dwarf_get_section_max_offsets.3 head/contrib/elftoolchain/libdwarf/dwarf_next_types_section.3 - copied unchanged from r276167, projects/elftoolchain-update-r3130/contrib/elftoolchain/libdwarf/dwarf_next_types_section.3 head/contrib/elftoolchain/libdwarf/dwarf_sections.c - copied unchanged from r276167, projects/elftoolchain-update-r3130/contrib/elftoolchain/libdwarf/dwarf_sections.c Modified: head/contrib/elftoolchain/common/Makefile head/contrib/elftoolchain/common/elfdefinitions.h head/contrib/elftoolchain/elfcopy/archive.c head/contrib/elftoolchain/elfcopy/main.c head/contrib/elftoolchain/elfcopy/sections.c head/contrib/elftoolchain/elfcopy/segments.c head/contrib/elftoolchain/elfcopy/symbols.c head/contrib/elftoolchain/libdwarf/Makefile head/contrib/elftoolchain/libdwarf/Version.map head/contrib/elftoolchain/libdwarf/_libdwarf.h head/contrib/elftoolchain/libdwarf/dwarf.3 head/contrib/elftoolchain/libdwarf/dwarf.h head/contrib/elftoolchain/libdwarf/dwarf_attr.3 head/contrib/elftoolchain/libdwarf/dwarf_attr.c head/contrib/elftoolchain/libdwarf/dwarf_attrval.c head/contrib/elftoolchain/libdwarf/dwarf_attrval_signed.3 head/contrib/elftoolchain/libdwarf/dwarf_child.3 head/contrib/elftoolchain/libdwarf/dwarf_cu.c head/contrib/elftoolchain/libdwarf/dwarf_die.c head/contrib/elftoolchain/libdwarf/dwarf_dieoffset.3 head/contrib/elftoolchain/libdwarf/dwarf_dump.c head/contrib/elftoolchain/libdwarf/dwarf_errmsg.c head/contrib/elftoolchain/libdwarf/dwarf_frame.c head/contrib/elftoolchain/libdwarf/dwarf_highpc.3 head/contrib/elftoolchain/libdwarf/dwarf_lineno.c head/contrib/elftoolchain/libdwarf/dwarf_loclist.c head/contrib/elftoolchain/libdwarf/dwarf_loclist_from_expr.3 head/contrib/elftoolchain/libdwarf/dwarf_next_cu_header.3 head/contrib/elftoolchain/libdwarf/dwarf_ranges.c head/contrib/elftoolchain/libdwarf/libdwarf.h head/contrib/elftoolchain/libdwarf/libdwarf_arange.c head/contrib/elftoolchain/libdwarf/libdwarf_attr.c head/contrib/elftoolchain/libdwarf/libdwarf_die.c head/contrib/elftoolchain/libdwarf/libdwarf_frame.c head/contrib/elftoolchain/libdwarf/libdwarf_info.c head/contrib/elftoolchain/libdwarf/libdwarf_init.c head/contrib/elftoolchain/libdwarf/libdwarf_lineno.c head/contrib/elftoolchain/libdwarf/libdwarf_loc.c head/contrib/elftoolchain/libdwarf/libdwarf_loclist.c head/contrib/elftoolchain/libdwarf/libdwarf_nametbl.c head/contrib/elftoolchain/libdwarf/libdwarf_sections.c head/contrib/elftoolchain/libelf/_libelf.h head/contrib/elftoolchain/libelf/_libelf_ar.h head/contrib/elftoolchain/libelf/elf.3 head/contrib/elftoolchain/libelf/elf_data.c head/contrib/elftoolchain/libelf/elf_errmsg.c head/contrib/elftoolchain/libelf/elf_flag.c head/contrib/elftoolchain/libelf/elf_memory.c head/contrib/elftoolchain/libelf/elf_next.c head/contrib/elftoolchain/libelf/elf_open.c head/contrib/elftoolchain/libelf/elf_rand.c head/contrib/elftoolchain/libelf/elf_rawfile.c head/contrib/elftoolchain/libelf/elf_scn.c head/contrib/elftoolchain/libelf/elf_strptr.c head/contrib/elftoolchain/libelf/elf_update.c head/contrib/elftoolchain/libelf/gelf_cap.c head/contrib/elftoolchain/libelf/gelf_dyn.c head/contrib/elftoolchain/libelf/gelf_ehdr.c head/contrib/elftoolchain/libelf/gelf_move.c head/contrib/elftoolchain/libelf/gelf_phdr.c head/contrib/elftoolchain/libelf/gelf_rel.c head/contrib/elftoolchain/libelf/gelf_rela.c head/contrib/elftoolchain/libelf/gelf_shdr.c head/contrib/elftoolchain/libelf/gelf_sym.c head/contrib/elftoolchain/libelf/gelf_syminfo.c head/contrib/elftoolchain/libelf/gelf_symshndx.c head/contrib/elftoolchain/libelf/libelf.h head/contrib/elftoolchain/libelf/libelf_align.c head/contrib/elftoolchain/libelf/libelf_ar.c head/contrib/elftoolchain/libelf/libelf_ar_util.c head/contrib/elftoolchain/libelf/libelf_checksum.c head/contrib/elftoolchain/libelf/libelf_convert.m4 head/contrib/elftoolchain/libelf/libelf_data.c head/contrib/elftoolchain/libelf/libelf_ehdr.c head/contrib/elftoolchain/libelf/libelf_extended.c head/contrib/elftoolchain/libelf/libelf_memory.c head/contrib/elftoolchain/libelf/libelf_open.c head/contrib/elftoolchain/libelf/libelf_phdr.c head/contrib/elftoolchain/libelf/libelf_xlate.c head/contrib/elftoolchain/libelftc/elftc_copyfile.c head/contrib/elftoolchain/libelftc/elftc_demangle.c head/contrib/elftoolchain/libelftc/libelftc.h head/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c head/contrib/elftoolchain/nm/nm.c head/contrib/elftoolchain/readelf/readelf.1 head/contrib/elftoolchain/readelf/readelf.c head/contrib/elftoolchain/strings/strings.c head/lib/libdwarf/Makefile head/lib/libelftc/elftc_version.c Directory Properties: head/ (props changed) head/contrib/elftoolchain/ (props changed) Modified: head/contrib/elftoolchain/common/Makefile ============================================================================== --- head/contrib/elftoolchain/common/Makefile Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/common/Makefile Mon Dec 29 19:16:40 2014 (r276371) @@ -1,4 +1,4 @@ -# $Id: Makefile 2606 2012-10-02 17:52:57Z jkoshy $ +# $Id: Makefile 3022 2014-04-17 18:05:58Z jkoshy $ TOP= .. @@ -12,4 +12,7 @@ all depend obj: clean clobber: rm -f ${CLEANFILES} +cleandepend: + rm -f .depend + .include "${TOP}/mk/elftoolchain.inc.mk" Modified: head/contrib/elftoolchain/common/elfdefinitions.h ============================================================================== --- head/contrib/elftoolchain/common/elfdefinitions.h Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/common/elfdefinitions.h Mon Dec 29 19:16:40 2014 (r276371) @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: elfdefinitions.h 2950 2013-06-15 13:36:02Z jkoshy $ + * $Id: elfdefinitions.h 3110 2014-12-20 08:32:46Z kaiwang27 $ */ /* @@ -821,7 +821,8 @@ enum { EM__LAST__ }; -/* Older synonyms. */ +/* Other synonyms. */ +#define EM_AMD64 EM_X86_64 #define EM_ARC_A5 EM_ARC_COMPACT /* @@ -2114,11 +2115,11 @@ typedef struct { /* 64-bit entry. */ typedef struct { - Elf64_Word l_name; - Elf64_Word l_time_stamp; - Elf64_Word l_checksum; - Elf64_Word l_version; - Elf64_Word l_flags; + Elf64_Word l_name; /* The name of a shared object. */ + Elf64_Word l_time_stamp; /* 32-bit timestamp. */ + Elf64_Word l_checksum; /* Checksum of visible symbols, sizes. */ + Elf64_Word l_version; /* Interface version string index. */ + Elf64_Word l_flags; /* Flags (LL_*). */ } Elf64_Lib; #define _ELF_DEFINE_LL_FLAGS() \ @@ -2366,12 +2367,12 @@ typedef struct { /* 64 bit PHDR entry. */ typedef struct { Elf64_Word p_type; /* Type of segment. */ - Elf64_Word p_flags; /* File offset to segment. */ - Elf64_Off p_offset; /* Virtual address in memory. */ - Elf64_Addr p_vaddr; /* Physical address (if relevant). */ - Elf64_Addr p_paddr; /* Size of segment in file. */ - Elf64_Xword p_filesz; /* Size of segment in memory. */ - Elf64_Xword p_memsz; /* Segment flags. */ + Elf64_Word p_flags; /* Segment flags. */ + Elf64_Off p_offset; /* File offset to segment. */ + Elf64_Addr p_vaddr; /* Virtual address in memory. */ + Elf64_Addr p_paddr; /* Physical address (if relevant). */ + Elf64_Xword p_filesz; /* Size of segment in file. */ + Elf64_Xword p_memsz; /* Size of segment in memory. */ Elf64_Xword p_align; /* Alignment constraints. */ } Elf64_Phdr; @@ -2455,11 +2456,11 @@ typedef struct { typedef struct { Elf64_Word st_name; /* index of symbol's name */ - unsigned char st_info; /* value for the symbol */ - unsigned char st_other; /* size of associated data */ - Elf64_Half st_shndx; /* type and binding attributes */ - Elf64_Addr st_value; /* visibility */ - Elf64_Xword st_size; /* index of related section */ + unsigned char st_info; /* type and binding attributes */ + unsigned char st_other; /* visibility */ + Elf64_Half st_shndx; /* index of related section */ + Elf64_Addr st_value; /* value for the symbol */ + Elf64_Xword st_size; /* size of associated data */ } Elf64_Sym; #define ELF32_ST_BIND(I) ((I) >> 4) Modified: head/contrib/elftoolchain/elfcopy/archive.c ============================================================================== --- head/contrib/elftoolchain/elfcopy/archive.c Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/elfcopy/archive.c Mon Dec 29 19:16:40 2014 (r276371) @@ -40,7 +40,7 @@ #include "elfcopy.h" -ELFTC_VCSID("$Id: archive.c 2370 2011-12-29 12:48:12Z jkoshy $"); +ELFTC_VCSID("$Id: archive.c 3102 2014-10-29 21:09:01Z jkoshy $"); #define _ARMAG_LEN 8 /* length of ar magic string */ #define _ARHDR_LEN 60 /* length of ar header */ @@ -350,7 +350,6 @@ ac_detect_ar(int ifd) r = -1; if ((a = archive_read_new()) == NULL) return (0); - archive_read_support_filter_none(a); archive_read_support_format_ar(a); if (archive_read_open_fd(a, ifd, 10240) == ARCHIVE_OK) r = archive_read_next_header(a, &entry); @@ -386,7 +385,6 @@ ac_read_objs(struct elfcopy *ecp, int if err(EXIT_FAILURE, "lseek failed"); if ((a = archive_read_new()) == NULL) errx(EXIT_FAILURE, "%s", archive_error_string(a)); - archive_read_support_filter_none(a); archive_read_support_format_ar(a); AC(archive_read_open_fd(a, ifd, 10240)); for(;;) { @@ -449,7 +447,6 @@ ac_write_objs(struct elfcopy *ecp, int o if ((a = archive_write_new()) == NULL) errx(EXIT_FAILURE, "%s", archive_error_string(a)); archive_write_set_format_ar_svr4(a); - archive_write_add_filter_none(a); AC(archive_write_open_fd(a, ofd)); /* Write the archive symbol table, even if it's empty. */ Modified: head/contrib/elftoolchain/elfcopy/main.c ============================================================================== --- head/contrib/elftoolchain/elfcopy/main.c Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/elfcopy/main.c Mon Dec 29 19:16:40 2014 (r276371) @@ -40,7 +40,7 @@ #include "elfcopy.h" -ELFTC_VCSID("$Id: main.c 2970 2013-12-01 15:22:12Z kaiwang27 $"); +ELFTC_VCSID("$Id: main.c 3111 2014-12-20 08:33:01Z kaiwang27 $"); enum options { Modified: head/contrib/elftoolchain/elfcopy/sections.c ============================================================================== --- head/contrib/elftoolchain/elfcopy/sections.c Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/elfcopy/sections.c Mon Dec 29 19:16:40 2014 (r276371) @@ -35,7 +35,7 @@ #include "elfcopy.h" -ELFTC_VCSID("$Id: sections.c 2358 2011-12-19 18:22:32Z kaiwang27 $"); +ELFTC_VCSID("$Id: sections.c 3126 2014-12-21 08:03:31Z kaiwang27 $"); static void add_gnu_debuglink(struct elfcopy *ecp); static uint32_t calc_crc32(const char *p, size_t len, uint32_t crc); @@ -372,6 +372,14 @@ create_scn(struct elfcopy *ecp) is_remove_reloc_sec(ecp, ish.sh_info)) continue; + /* + * Section groups should be removed if symbol table will + * be removed. (section group's signature stored in symbol + * table) + */ + if (ish.sh_type == SHT_GROUP && ecp->strip == STRIP_ALL) + continue; + /* Get section flags set by user. */ sec_flags = get_section_flags(ecp, name); Modified: head/contrib/elftoolchain/elfcopy/segments.c ============================================================================== --- head/contrib/elftoolchain/elfcopy/segments.c Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/elfcopy/segments.c Mon Dec 29 19:16:40 2014 (r276371) @@ -35,7 +35,7 @@ #include "elfcopy.h" -ELFTC_VCSID("$Id: segments.c 2542 2012-08-12 16:14:15Z kaiwang27 $"); +ELFTC_VCSID("$Id: segments.c 3113 2014-12-20 08:33:29Z kaiwang27 $"); static void insert_to_inseg_list(struct segment *seg, struct section *sec); @@ -73,13 +73,15 @@ add_to_inseg_list(struct elfcopy *ecp, s */ loadable = 0; STAILQ_FOREACH(seg, &ecp->v_seg, seg_list) { - if (s->off < seg->off) + if (s->off < seg->off || (s->vma < seg->addr && !s->pseudo)) continue; if (s->off + s->sz > seg->off + seg->fsz && s->type != SHT_NOBITS) continue; if (s->off + s->sz > seg->off + seg->msz) continue; + if (s->vma + s->sz > seg->addr + seg->msz) + continue; insert_to_inseg_list(seg, s); if (seg->type == PT_LOAD) @@ -97,7 +99,7 @@ adjust_addr(struct elfcopy *ecp) struct section *s, *s0; struct segment *seg; struct sec_action *sac; - uint64_t dl, lma, old_vma, start, end; + uint64_t dl, lma, start, end; int found, i; /* @@ -114,8 +116,6 @@ adjust_addr(struct elfcopy *ecp) s->lma += ecp->change_addr; if (!s->pseudo) { - old_vma = s->vma; - /* Apply global VMA adjustment. */ if (ecp->change_addr != 0) s->vma += ecp->change_addr; Modified: head/contrib/elftoolchain/elfcopy/symbols.c ============================================================================== --- head/contrib/elftoolchain/elfcopy/symbols.c Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/elfcopy/symbols.c Mon Dec 29 19:16:40 2014 (r276371) @@ -34,7 +34,7 @@ #include "elfcopy.h" -ELFTC_VCSID("$Id: symbols.c 2971 2013-12-01 15:22:21Z kaiwang27 $"); +ELFTC_VCSID("$Id: symbols.c 3019 2014-04-17 14:53:40Z jkoshy $"); /* Symbol table buffer structure. */ struct symbuf { @@ -300,7 +300,7 @@ generate_symbols(struct elfcopy *ecp) GElf_Sym sym; Elf_Data* id; Elf_Scn *is; - size_t ishstrndx, namelen, ndx, nsyms, sc, symndx; + size_t ishstrndx, namelen, ndx, sc, symndx; int ec, elferr, i; if (elf_getshstrndx(ecp->ein, &ishstrndx) == 0) @@ -320,7 +320,6 @@ generate_symbols(struct elfcopy *ecp) st_buf->lcap = 64; st_buf->lsz = 1; /* '\0' at start. */ st_buf->gsz = 0; - nsyms = 0; ecp->symtab->sz = 0; ecp->strtab->sz = 0; Modified: head/contrib/elftoolchain/libdwarf/Makefile ============================================================================== --- head/contrib/elftoolchain/libdwarf/Makefile Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/libdwarf/Makefile Mon Dec 29 19:16:40 2014 (r276371) @@ -1,4 +1,4 @@ -# $Id: Makefile 2937 2013-04-27 04:48:23Z jkoshy $ +# $Id: Makefile 3097 2014-09-02 22:10:18Z kaiwang27 $ TOP= ${.CURDIR}/.. @@ -42,6 +42,7 @@ SRCS= \ dwarf_pubtypes.c \ dwarf_ranges.c \ dwarf_reloc.c \ + dwarf_sections.c \ dwarf_seterror.c \ dwarf_str.c \ dwarf_types.c \ @@ -115,6 +116,7 @@ MAN= dwarf.3 dwarf_add_weakname.3 \ dwarf_attr.3 \ dwarf_attrlist.3 \ + dwarf_attroffset.3 \ dwarf_attrval_signed.3 \ dwarf_child.3 \ dwarf_dealloc.3 \ @@ -154,6 +156,7 @@ MAN= dwarf.3 dwarf_get_cie_info.3 \ dwarf_get_cie_of_fde.3 \ dwarf_get_cu_die_offset.3 \ + dwarf_get_die_infotypes_flag.3 \ dwarf_get_elf.3 \ dwarf_get_fde_at_pc.3 \ dwarf_get_fde_info_for_all_regs.3 \ @@ -175,6 +178,7 @@ MAN= dwarf.3 dwarf_get_relocation_info.3 \ dwarf_get_relocation_info_count.3 \ dwarf_get_section_bytes.3 \ + dwarf_get_section_max_offsets.3 \ dwarf_get_str.3 \ dwarf_get_types.3 \ dwarf_get_vars.3 \ @@ -192,6 +196,7 @@ MAN= dwarf.3 dwarf_new_expr.3 \ dwarf_new_fde.3 \ dwarf_next_cu_header.3 \ + dwarf_next_types_section.3 \ dwarf_object_init.3 \ dwarf_producer_init.3 \ dwarf_producer_set_isa.3 \ @@ -220,7 +225,9 @@ MLINKS+= \ dwarf_attrval_signed.3 dwarf_attrval_string.3 \ dwarf_attrval_signed.3 dwarf_attrval_unsigned.3 \ dwarf_child.3 dwarf_offdie.3 \ + dwarf_child.3 dwarf_offdie_b.3 \ dwarf_child.3 dwarf_siblingof.3 \ + dwarf_child.3 dwarf_siblingof_b.3 \ dwarf_dealloc.3 dwarf_fde_cie_list_dealloc.3 \ dwarf_dealloc.3 dwarf_funcs_dealloc.3 \ dwarf_dealloc.3 dwarf_globals_dealloc.3 \ @@ -234,6 +241,7 @@ MLINKS+= \ dwarf_dieoffset.3 dwarf_die_CU_offset.3 \ dwarf_dieoffset.3 dwarf_die_CU_offset_range.3 \ dwarf_dieoffset.3 dwarf_get_cu_die_offset_given_cu_header_offset.3 \ + dwarf_dieoffset.3 dwarf_get_cu_die_offset_given_cu_header_offset_b.3 \ dwarf_finish.3 dwarf_object_finish.3 \ dwarf_formref.3 dwarf_global_formref.3 \ dwarf_formudata.3 dwarf_formsdata.3 \ @@ -273,6 +281,7 @@ MLINKS+= \ dwarf_get_pubtypes.3 dwarf_pubtype_name_offsets.3 \ dwarf_get_pubtypes.3 dwarf_pubtypename.3 \ dwarf_get_ranges.3 dwarf_get_ranges_a.3 \ + dwarf_get_section_max_offsets.3 dwarf_get_section_max_offsets_b.3 \ dwarf_get_types.3 dwarf_type_die_offset.3 \ dwarf_get_types.3 dwarf_type_cu_offset.3 \ dwarf_get_types.3 dwarf_type_name_offsets.3 \ @@ -291,6 +300,7 @@ MLINKS+= \ dwarf_highpc.3 dwarf_bitoffset.3 \ dwarf_highpc.3 dwarf_bitsize.3 \ dwarf_highpc.3 dwarf_bytesize.3 \ + dwarf_highpc.3 dwarf_highpc_b.3 \ dwarf_highpc.3 dwarf_lowpc.3 \ dwarf_highpc.3 dwarf_srclang.3 \ dwarf_lineno.3 dwarf_lineaddr.3 \ @@ -302,6 +312,9 @@ MLINKS+= \ dwarf_lineno.3 dwarf_line_srcfileno.3 \ dwarf_loclist.3 dwarf_loclist_n.3 \ dwarf_loclist_from_expr.3 dwarf_loclist_from_expr_a.3 \ + dwarf_loclist_from_expr.3 dwarf_loclist_from_expr_b.3 \ + dwarf_next_cu_header.3 dwarf_next_cu_header_b.3 \ + dwarf_next_cu_header.3 dwarf_next_cu_header_c.3 \ dwarf_producer_init.3 dwarf_producer_init_b.3 \ dwarf_seterrarg.3 dwarf_seterrhand.3 \ dwarf_set_frame_cfa_value.3 dwarf_set_frame_rule_initial_value.3 \ Modified: head/contrib/elftoolchain/libdwarf/Version.map ============================================================================== --- head/contrib/elftoolchain/libdwarf/Version.map Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/libdwarf/Version.map Mon Dec 29 19:16:40 2014 (r276371) @@ -1,4 +1,4 @@ -/* $Id: Version.map 2576 2012-09-13 09:16:11Z jkoshy $ */ +/* $Id: Version.map 3085 2014-09-02 22:08:23Z kaiwang27 $ */ R1.0 { global: @@ -39,6 +39,7 @@ global: dwarf_arrayorder; dwarf_attr; dwarf_attrlist; + dwarf_attroffset; dwarf_attrval_flag; dwarf_attrval_signed; dwarf_attrval_string; @@ -116,6 +117,8 @@ global: dwarf_get_cie_of_fde; dwarf_get_cu_die_offset; dwarf_get_cu_die_offset_given_cu_header_offset; + dwarf_get_cu_die_offset_given_cu_header_offset_b; + dwarf_get_die_infotypes_flag; dwarf_get_elf; dwarf_get_fde_at_pc; dwarf_get_fde_info_for_all_regs3; @@ -139,6 +142,8 @@ global: dwarf_get_relocation_info; dwarf_get_relocation_info_count; dwarf_get_section_bytes; + dwarf_get_section_max_offsets; + dwarf_get_section_max_offsets_b; dwarf_get_str; dwarf_get_types; dwarf_get_vars; @@ -152,6 +157,7 @@ global: dwarf_hasattr; dwarf_hasform; dwarf_highpc; + dwarf_highpc_b; dwarf_init; dwarf_line_srcfileno; dwarf_lineaddr; @@ -166,6 +172,7 @@ global: dwarf_loclist; dwarf_loclist_from_expr; dwarf_loclist_from_expr_a; + dwarf_loclist_from_expr_b; dwarf_loclist_n; dwarf_lowpc; dwarf_new_die; @@ -173,9 +180,12 @@ global: dwarf_new_fde; dwarf_next_cu_header; dwarf_next_cu_header_b; + dwarf_next_cu_header_c; + dwarf_next_types_section; dwarf_object_finish; dwarf_object_init; dwarf_offdie; + dwarf_offdie_b; dwarf_producer_finish; dwarf_producer_init; dwarf_producer_init_b; @@ -196,6 +206,7 @@ global: dwarf_seterrarg; dwarf_seterrhand; dwarf_siblingof; + dwarf_siblingof_b; dwarf_srcfiles; dwarf_srclang; dwarf_srclines; Modified: head/contrib/elftoolchain/libdwarf/_libdwarf.h ============================================================================== --- head/contrib/elftoolchain/libdwarf/_libdwarf.h Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/libdwarf/_libdwarf.h Mon Dec 29 19:16:40 2014 (r276371) @@ -1,6 +1,6 @@ /*- * Copyright (c) 2007 John Birrell (jb@freebsd.org) - * Copyright (c) 2009-2011 Kai Wang + * Copyright (c) 2009-2014 Kai Wang * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -24,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: _libdwarf.h 2075 2011-10-27 03:47:28Z jkoshy $ + * $Id: _libdwarf.h 3106 2014-12-19 16:00:58Z kaiwang27 $ */ #ifndef __LIBDWARF_H_ @@ -89,6 +89,7 @@ extern struct _libdwarf_globals _libdwar goto gen_fail; \ } while(0) +typedef struct _Dwarf_CU *Dwarf_CU; struct _Dwarf_AttrDef { uint64_t ad_attrib; /* DW_AT_XXX */ @@ -147,14 +148,6 @@ struct _Dwarf_Die { STAILQ_ENTRY(_Dwarf_Die) die_pro_next; /* Next die in pro-die list. */ }; -struct _Dwarf_Loclist { - Dwarf_Locdesc **ll_ldlist; /* Array of Locdesc pointer. */ - int ll_ldlen; /* Number of Locdesc. */ - Dwarf_Unsigned ll_offset; /* Offset in .debug_loc section. */ - Dwarf_Unsigned ll_length; /* Length (in bytes) of the loclist. */ - TAILQ_ENTRY(_Dwarf_Loclist) ll_next; /* Next loclist in list. */ -}; - struct _Dwarf_P_Expr_Entry { Dwarf_Loc ee_loc; /* Location expression. */ Dwarf_Unsigned ee_sym; /* Optional related reloc sym index. */ @@ -265,6 +258,8 @@ struct _Dwarf_Cie { Dwarf_Half cie_version; /* CIE version. */ uint8_t *cie_augment; /* CIE augmentation (UTF-8). */ Dwarf_Unsigned cie_ehdata; /* Optional EH Data. */ + uint8_t cie_addrsize; /* Address size. (DWARF4) */ + uint8_t cie_segmentsize; /* Segment size. (DWARF4) */ Dwarf_Unsigned cie_caf; /* Code alignment factor. */ Dwarf_Signed cie_daf; /* Data alignment factor. */ Dwarf_Unsigned cie_ra; /* Return address register. */ @@ -333,11 +328,14 @@ struct _Dwarf_CU { uint64_t cu_lineno_offset; /* Offset into .debug_lineno. */ uint8_t cu_pointer_size;/* Number of bytes in pointer. */ uint8_t cu_dwarf_size; /* CU section dwarf size. */ + Dwarf_Sig8 cu_type_sig; /* Type unit's signature. */ + uint64_t cu_type_offset; /* Type unit's type offset. */ Dwarf_Off cu_next_offset; /* Offset to the next CU. */ uint64_t cu_1st_offset; /* First DIE offset. */ int cu_pass2; /* Two pass DIE traverse. */ Dwarf_LineInfo cu_lineinfo; /* Ptr to Dwarf_LineInfo. */ Dwarf_Abbrev cu_abbrev_hash; /* Abbrev hash table. */ + Dwarf_Bool cu_is_info; /* Compilation/type unit flag. */ STAILQ_ENTRY(_Dwarf_CU) cu_next; /* Next compilation unit. */ }; @@ -399,17 +397,21 @@ struct _Dwarf_Debug { Dwarf_Section *dbg_section; /* Dwarf section list. */ Dwarf_Section *dbg_info_sec; /* Pointer to info section. */ Dwarf_Off dbg_info_off; /* Current info section offset. */ + Dwarf_Section *dbg_types_sec; /* Pointer to type section. */ + Dwarf_Off dbg_types_off; /* Current types section offset. */ Dwarf_Unsigned dbg_seccnt; /* Total number of dwarf sections. */ int dbg_mode; /* Access mode. */ int dbg_pointer_size; /* Object address size. */ int dbg_offset_size; /* DWARF offset size. */ int dbg_info_loaded; /* Flag indicating all CU loaded. */ + int dbg_types_loaded; /* Flag indicating all TU loaded. */ Dwarf_Half dbg_machine; /* ELF machine architecture. */ Dwarf_Handler dbg_errhand; /* Error handler. */ Dwarf_Ptr dbg_errarg; /* Argument to the error handler. */ STAILQ_HEAD(, _Dwarf_CU) dbg_cu;/* List of compilation units. */ + STAILQ_HEAD(, _Dwarf_CU) dbg_tu;/* List of type units. */ Dwarf_CU dbg_cu_current; /* Ptr to the current CU. */ - TAILQ_HEAD(, _Dwarf_Loclist) dbg_loclist; /* List of location list. */ + Dwarf_CU dbg_tu_current; /* Ptr to the current TU. */ Dwarf_NameSec dbg_globals; /* Ptr to pubnames lookup section. */ Dwarf_NameSec dbg_pubtypes; /* Ptr to pubtypes lookup section. */ Dwarf_NameSec dbg_weaks; /* Ptr to weaknames lookup section. */ @@ -532,13 +534,15 @@ int _dwarf_elf_get_section_info(void *, Dwarf_Obj_Access_Section *, int *); void _dwarf_expr_cleanup(Dwarf_P_Debug); int _dwarf_expr_into_block(Dwarf_P_Expr, Dwarf_Error *); +Dwarf_Section *_dwarf_find_next_types_section(Dwarf_Debug, Dwarf_Section *); Dwarf_Section *_dwarf_find_section(Dwarf_Debug, const char *); void _dwarf_frame_cleanup(Dwarf_Debug); int _dwarf_frame_fde_add_inst(Dwarf_P_Fde, Dwarf_Small, Dwarf_Unsigned, Dwarf_Unsigned, Dwarf_Error *); int _dwarf_frame_gen(Dwarf_P_Debug, Dwarf_Error *); -int _dwarf_frame_get_fop(Dwarf_Debug, uint8_t *, Dwarf_Unsigned, - Dwarf_Frame_Op **, Dwarf_Signed *, Dwarf_Error *); +int _dwarf_frame_get_fop(Dwarf_Debug, uint8_t, uint8_t *, + Dwarf_Unsigned, Dwarf_Frame_Op **, Dwarf_Signed *, + Dwarf_Error *); int _dwarf_frame_get_internal_table(Dwarf_Fde, Dwarf_Addr, Dwarf_Regtable3 **, Dwarf_Addr *, Dwarf_Error *); int _dwarf_frame_interal_table_init(Dwarf_Debug, Dwarf_Error *); @@ -553,9 +557,12 @@ Dwarf_Unsigned _dwarf_get_reloc_type(Dwa int _dwarf_get_reloc_size(Dwarf_Debug, Dwarf_Unsigned); void _dwarf_info_cleanup(Dwarf_Debug); int _dwarf_info_first_cu(Dwarf_Debug, Dwarf_Error *); +int _dwarf_info_first_tu(Dwarf_Debug, Dwarf_Error *); int _dwarf_info_gen(Dwarf_P_Debug, Dwarf_Error *); -int _dwarf_info_load(Dwarf_Debug, int, Dwarf_Error *); +int _dwarf_info_load(Dwarf_Debug, Dwarf_Bool, Dwarf_Bool, + Dwarf_Error *); int _dwarf_info_next_cu(Dwarf_Debug, Dwarf_Error *); +int _dwarf_info_next_tu(Dwarf_Debug, Dwarf_Error *); void _dwarf_info_pro_cleanup(Dwarf_P_Debug); int _dwarf_init(Dwarf_Debug, Dwarf_Unsigned, Dwarf_Handler, Dwarf_Ptr, Dwarf_Error *); @@ -563,20 +570,19 @@ int _dwarf_lineno_gen(Dwarf_P_Debug, Dw int _dwarf_lineno_init(Dwarf_Die, uint64_t, Dwarf_Error *); void _dwarf_lineno_cleanup(Dwarf_LineInfo); void _dwarf_lineno_pro_cleanup(Dwarf_P_Debug); -int _dwarf_loc_fill_locdesc(Dwarf_Debug, Dwarf_Locdesc *, uint8_t *, - uint64_t, uint8_t, Dwarf_Error *); +int _dwarf_loc_fill_locdesc(Dwarf_Debug, Dwarf_Locdesc *, + uint8_t *, uint64_t, uint8_t, uint8_t, uint8_t, + Dwarf_Error *); int _dwarf_loc_fill_locexpr(Dwarf_Debug, Dwarf_Locdesc **, - uint8_t *, uint64_t, uint8_t, Dwarf_Error *); + uint8_t *, uint64_t, uint8_t, uint8_t, uint8_t, + Dwarf_Error *); int _dwarf_loc_add(Dwarf_Die, Dwarf_Attribute, Dwarf_Error *); int _dwarf_loc_expr_add_atom(Dwarf_Debug, uint8_t *, uint8_t *, Dwarf_Small, Dwarf_Unsigned, Dwarf_Unsigned, int *, Dwarf_Error *); int _dwarf_loclist_find(Dwarf_Debug, Dwarf_CU, uint64_t, - Dwarf_Loclist *, Dwarf_Error *); -void _dwarf_loclist_cleanup(Dwarf_Debug); -void _dwarf_loclist_free(Dwarf_Loclist); -int _dwarf_loclist_add(Dwarf_Debug, Dwarf_CU, uint64_t, - Dwarf_Loclist *, Dwarf_Error *); + Dwarf_Locdesc ***, Dwarf_Signed *, Dwarf_Unsigned *, + Dwarf_Error *); void _dwarf_macinfo_cleanup(Dwarf_Debug); int _dwarf_macinfo_gen(Dwarf_P_Debug, Dwarf_Error *); int _dwarf_macinfo_init(Dwarf_Debug, Dwarf_Error *); @@ -633,6 +639,7 @@ void _dwarf_strtab_cleanup(Dwarf_Debug) int _dwarf_strtab_gen(Dwarf_P_Debug, Dwarf_Error *); char *_dwarf_strtab_get_table(Dwarf_Debug); int _dwarf_strtab_init(Dwarf_Debug, Dwarf_Error *); +void _dwarf_type_unit_cleanup(Dwarf_Debug); void _dwarf_write_block(void *, uint64_t *, uint8_t *, uint64_t); int _dwarf_write_block_alloc(uint8_t **, uint64_t *, uint64_t *, uint8_t *, uint64_t, Dwarf_Error *); Modified: head/contrib/elftoolchain/libdwarf/dwarf.3 ============================================================================== --- head/contrib/elftoolchain/libdwarf/dwarf.3 Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/libdwarf/dwarf.3 Mon Dec 29 19:16:40 2014 (r276371) @@ -21,9 +21,9 @@ .\" out of the use of this software, even if advised of the possibility of .\" such damage. .\" -.\" $Id: dwarf.3 2075 2011-10-27 03:47:28Z jkoshy $ +.\" $Id: dwarf.3 3130 2014-12-21 20:06:29Z jkoshy $ .\" -.Dd September 17, 2011 +.Dd December 21, 2014 .Os .Dt DWARF 3 .Sh NAME @@ -217,6 +217,8 @@ attribute. Retrieve an attribute descriptor. .It Fn dwarf_attrlist Retrieve attribute descriptors for a debugging information entry. +.It Fn dwarf_attroffset +Retrieve the section-relative offset of an attribute descriptor. .It Fn dwarf_attrval_flag Retrieve a .Dv DW_AT_FORM_flag @@ -309,10 +311,17 @@ Retrieve range information from an FDE d .El .It Compilation Units .Bl -tag -compact -.It Fn dwarf_get_cu_die_offset_given_cu_header_offset +.It Xo +.Fn dwarf_get_cu_die_offset_given_cu_header_offset , +.Fn dwarf_get_cu_die_offset_given_cu_header_offset_b +.Xc Retrieve the offset of the debugging information entry for a -compilation unit. -.It Fn dwarf_next_cu_header , Fn dwarf_next_cu_header_b +compilation or type unit. +.It Xo +.Fn dwarf_next_cu_header , +.Fn dwarf_next_cu_header_b , +.Fn dwarf_next_cu_header_c +.Xc Step through compilation units in a debug context. .El .It Debugging Information Entries @@ -329,13 +338,15 @@ Returns the attribute for a debugging information entry. .It Fn dwarf_dieoffset Retrieves the offset for a debugging information entry. -.It Fn dwarf_highpc +.It Fn dwarf_get_die_infotypes_flag +Indicate the originating section for a debugging information entry. +.It Fn dwarf_highpc , Fn dwarf_highpc_b Return the highest PC value for a debugging information entry. .It Fn dwarf_lowpc Return the lowest PC value for a debugging information entry. -.It Fn dwarf_offdie +.It Fn dwarf_offdie , Fn dwarf_offdie_b Retrieve a debugging information entry given an offset. -.It Fn dwarf_siblingof +.It Fn dwarf_siblingof , Fn dwarf_siblingof_b Retrieve the sibling descriptor for a debugging information entry. .It Fn dwarf_srclang Retrive the source language attribute for a debugging information @@ -416,7 +427,11 @@ Return line number information for a com Retrieve a location list entry. .It Fn dwarf_loclist , Fn dwarf_loclist_n Retrieve location expressions. -.It Fn dwarf_loclist_from_expr , Fn dwarf_loclist_from_expr_a +.It Xo +.Fn dwarf_loclist_from_expr , +.Fn dwarf_loclist_from_expr_a , +.Fn dwarf_loclist_from_expr_b +.Xc Translate a location expression into a location descriptor. .El .It Error Handling @@ -513,6 +528,10 @@ and .Bl -tag -compact .It Fn dwarf_get_pubtypes , Fn dwarf_get_types Retrieve descriptors for user-defined types. +.It Fn dwarf_next_types_section +Step through +.Dq \&.debug_types +sections in a debug context. .It Fn dwarf_pubtype_cu_offset , Fn dwarf_type_cu_offset Return the offset for the compilation unit for a type. .It Fn dwarf_pubtype_die_offset , Fn dwarf_type_die_offset @@ -699,9 +718,16 @@ addition to the per-debug context handle API, see the subsection .Sx Error Handling above. +.El +.Ss Extensions +The following APIs are extensions specific to this implementation: +.Bl -bullet -compact +.It +.Fn dwarf_attroffset .It -The following API is an extension: -.Fn dwarf_producer_set_isa . +.Fn dwarf_next_types_section +.It +.Fn dwarf_producer_set_isa .El .Sh SEE ALSO .Xr elf 3 Modified: head/contrib/elftoolchain/libdwarf/dwarf.h ============================================================================== --- head/contrib/elftoolchain/libdwarf/dwarf.h Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/libdwarf/dwarf.h Mon Dec 29 19:16:40 2014 (r276371) @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: dwarf.h 2075 2011-10-27 03:47:28Z jkoshy $ + * $Id: dwarf.h 3052 2014-05-26 20:36:24Z kaiwang27 $ */ #ifndef _DWARF_H_ @@ -93,6 +93,19 @@ #define DW_TAG_lo_user 0x4080 #define DW_TAG_hi_user 0xffff +/* GNU extensions. */ +#define DW_TAG_format_label 0x4101 +#define DW_TAG_function_template 0x4102 +#define DW_TAG_class_template 0x4103 +#define DW_TAG_GNU_BINCL 0x4104 +#define DW_TAG_GNU_EINCL 0x4105 +#define DW_TAG_GNU_template_template_parameter 0x4106 +#define DW_TAG_GNU_template_template_param 0x4106 +#define DW_TAG_GNU_template_parameter_pack 0x4107 +#define DW_TAG_GNU_formal_parameter_pack 0x4108 +#define DW_TAG_GNU_call_site 0x4109 +#define DW_TAG_GNU_call_site_parameter 0x410a + #define DW_CHILDREN_no 0x00 #define DW_CHILDREN_yes 0x01 @@ -195,6 +208,32 @@ #define DW_AT_lo_user 0x2000 #define DW_AT_hi_user 0x3fff +/* GNU extensions. */ +#define DW_AT_sf_names 0x2101 +#define DW_AT_src_info 0x2102 +#define DW_AT_mac_info 0x2103 +#define DW_AT_src_coords 0x2104 +#define DW_AT_body_begin 0x2105 +#define DW_AT_body_end 0x2106 +#define DW_AT_GNU_vector 0x2107 +#define DW_AT_GNU_guarded_by 0x2108 +#define DW_AT_GNU_pt_guarded_by 0x2109 +#define DW_AT_GNU_guarded 0x210a +#define DW_AT_GNU_pt_guarded 0x210b +#define DW_AT_GNU_locks_excluded 0x210c +#define DW_AT_GNU_exclusive_locks_required 0x210d +#define DW_AT_GNU_shared_locks_required 0x210e +#define DW_AT_GNU_odr_signature 0x210f +#define DW_AT_GNU_template_name 0x2110 +#define DW_AT_GNU_call_site_value 0x2111 +#define DW_AT_GNU_call_site_data_value 0x2112 +#define DW_AT_GNU_call_site_target 0x2113 +#define DW_AT_GNU_call_site_target_clobbered 0x2114 +#define DW_AT_GNU_tail_call 0x2115 +#define DW_AT_GNU_all_tail_call_sites 0x2116 +#define DW_AT_GNU_all_call_sites 0x2117 +#define DW_AT_GNU_all_source_call_sites 0x2118 + #define DW_FORM_addr 0x01 #define DW_FORM_block2 0x03 #define DW_FORM_block4 0x04 @@ -220,6 +259,8 @@ #define DW_FORM_exprloc 0x18 #define DW_FORM_flag_present 0x19 #define DW_FORM_ref_sig8 0x20 +#define DW_FORM_GNU_ref_alt 0x1f20 +#define DW_FORM_GNU_strp_alt 0x1f21 #define DW_OP_addr 0x03 #define DW_OP_deref 0x06 @@ -376,9 +417,23 @@ #define DW_OP_implicit_value 0x9e #define DW_OP_stack_value 0x9f #define DW_OP_lo_user 0xe0 -#define DW_OP_GNU_push_tls_address 0xe0 #define DW_OP_hi_user 0xff +/* GNU extensions. */ +#define DW_OP_GNU_push_tls_address 0xe0 +#define DW_OP_GNU_uninit 0xf0 +#define DW_OP_GNU_encoded_addr 0xf1 +#define DW_OP_GNU_implicit_pointer 0xf2 +#define DW_OP_GNU_entry_value 0xf3 +#define DW_OP_GNU_const_type 0xf4 +#define DW_OP_GNU_regval_type 0xf5 +#define DW_OP_GNU_deref_type 0xf6 +#define DW_OP_GNU_convert 0xf7 +#define DW_OP_GNU_reinterpret 0xf9 +#define DW_OP_GNU_parameter_ref 0xfa +#define DW_OP_GNU_addr_index 0xfb +#define DW_OP_GNU_const_index 0xfc + #define DW_ATE_address 0x1 #define DW_ATE_boolean 0x2 #define DW_ATE_complex_float 0x3 Modified: head/contrib/elftoolchain/libdwarf/dwarf_attr.3 ============================================================================== --- head/contrib/elftoolchain/libdwarf/dwarf_attr.3 Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/libdwarf/dwarf_attr.3 Mon Dec 29 19:16:40 2014 (r276371) @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id: dwarf_attr.3 2072 2011-10-27 03:26:49Z jkoshy $ +.\" $Id: dwarf_attr.3 3093 2014-09-02 22:09:40Z kaiwang27 $ .\" .Dd April 8, 2010 .Os @@ -113,6 +113,7 @@ in argument .Sh SEE ALSO .Xr dwarf 3 , .Xr dwarf_attrlist 3 , +.Xr dwarf_attroffset 3 , .Xr dwarf_hasattr 3 , .Xr dwarf_hasform 3 , .Xr dwarf_whatattr 3 , Modified: head/contrib/elftoolchain/libdwarf/dwarf_attr.c ============================================================================== --- head/contrib/elftoolchain/libdwarf/dwarf_attr.c Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/libdwarf/dwarf_attr.c Mon Dec 29 19:16:40 2014 (r276371) @@ -27,7 +27,7 @@ #include "_libdwarf.h" -ELFTC_VCSID("$Id: dwarf_attr.c 2072 2011-10-27 03:26:49Z jkoshy $"); +ELFTC_VCSID("$Id: dwarf_attr.c 3064 2014-06-06 19:35:55Z kaiwang27 $"); int dwarf_attr(Dwarf_Die die, Dwarf_Half attr, Dwarf_Attribute *atp, @@ -114,6 +114,23 @@ dwarf_hasattr(Dwarf_Die die, Dwarf_Half } int +dwarf_attroffset(Dwarf_Attribute at, Dwarf_Off *ret_off, Dwarf_Error *error) +{ + Dwarf_Debug dbg; + + dbg = at != NULL ? at->at_die->die_dbg : NULL; + + if (at == NULL || ret_off == NULL) { + DWARF_SET_ERROR(dbg, error, DW_DLE_ARGUMENT); + return (DW_DLV_ERROR); + } + + *ret_off = at->at_offset; + + return (DW_DLV_OK); +} + +int dwarf_lowpc(Dwarf_Die die, Dwarf_Addr *ret_lowpc, Dwarf_Error *error) { Dwarf_Attribute at; @@ -139,8 +156,17 @@ dwarf_lowpc(Dwarf_Die die, Dwarf_Addr *r int dwarf_highpc(Dwarf_Die die, Dwarf_Addr *ret_highpc, Dwarf_Error *error) { + + return (dwarf_highpc_b(die, ret_highpc, NULL, NULL, error)); +} + +int +dwarf_highpc_b(Dwarf_Die die, Dwarf_Addr *ret_highpc, Dwarf_Half *ret_form, + enum Dwarf_Form_Class *ret_class, Dwarf_Error *error) +{ Dwarf_Attribute at; Dwarf_Debug dbg; + Dwarf_CU cu; dbg = die != NULL ? die->die_dbg : NULL; @@ -156,6 +182,17 @@ dwarf_highpc(Dwarf_Die die, Dwarf_Addr * *ret_highpc = at->u[0].u64; + if (ret_form != NULL) { + *ret_form = at->at_form; + } + + if (ret_class != NULL) { + cu = die->die_cu; + *ret_class = dwarf_get_form_class(cu->cu_version, + DW_AT_high_pc, cu->cu_length_size == 4 ? 4 : 8, + at->at_form); + } + return (DW_DLV_OK); } Copied: head/contrib/elftoolchain/libdwarf/dwarf_attroffset.3 (from r276167, projects/elftoolchain-update-r3130/contrib/elftoolchain/libdwarf/dwarf_attroffset.3) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/contrib/elftoolchain/libdwarf/dwarf_attroffset.3 Mon Dec 29 19:16:40 2014 (r276371, copy of r276167, projects/elftoolchain-update-r3130/contrib/elftoolchain/libdwarf/dwarf_attroffset.3) @@ -0,0 +1,86 @@ +.\" Copyright (c) 2014 Kai Wang +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $Id: dwarf_attroffset.3 3115 2014-12-20 18:26:46Z jkoshy $ +.\" +.Dd December 20, 2014 +.Os +.Dt DWARF_ATTROFFSET 3 +.Sh NAME +.Nm dwarf_attroffset +.Nd retrieve the section-relative offset of an attribute descriptor +.Sh LIBRARY +.Lb libdwarf +.Sh SYNOPSIS +.In libdwarf.h +.Ft int +.Fo dwarf_attroffset +.Fa "Dwarf_Attribute at" +.Fa "Dwarf_Off *ret_off" +.Fa "Dwarf_Error *err" +.Fc +.Sh DESCRIPTION +Function +.Fn dwarf_attroffset +retrieves the section-relative offset of the attribute descriptor +referenced by argument +.Ar at . +.Pp +Argument +.Ar ret_off +should point to a location that is to hold the returned +section-relative offset. +If argument +.Ar err +is non-NULL, it is used to return an error descriptor in case of an +error. +.Sh RETURN VALUES +On success, function +.Fn dwarf_attroffset +returns +.Dv DW_DLV_OK . +.Pp +In case of an error, it returns +.Dv DW_DLV_ERROR +and sets argument +.Ar err . +.Sh COMPATIBILITY +This function is an extension to the +.Xr DWARF 3 +API. +.Sh ERRORS +The +.Fn dwarf_attroffset +function may fail with the following errors: +.Bl -tag -width ".Bq Er DW_DLE_ARGUMENT" +.It Bq Er DW_DLE_ARGUMENT +Either of the arguments +.Ar at +or +.Ar ret_off +was NULL. +.El +.Sh SEE ALSO +.Xr dwarf 3 , +.Xr dwarf_attr 3 Modified: head/contrib/elftoolchain/libdwarf/dwarf_attrval.c ============================================================================== --- head/contrib/elftoolchain/libdwarf/dwarf_attrval.c Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/libdwarf/dwarf_attrval.c Mon Dec 29 19:16:40 2014 (r276371) @@ -26,7 +26,7 @@ #include "_libdwarf.h" -ELFTC_VCSID("$Id: dwarf_attrval.c 2072 2011-10-27 03:26:49Z jkoshy $"); +ELFTC_VCSID("$Id: dwarf_attrval.c 2977 2014-01-21 20:13:31Z kaiwang27 $"); int dwarf_attrval_flag(Dwarf_Die die, Dwarf_Half attr, Dwarf_Bool *valp, Dwarf_Error *err) Modified: head/contrib/elftoolchain/libdwarf/dwarf_attrval_signed.3 ============================================================================== --- head/contrib/elftoolchain/libdwarf/dwarf_attrval_signed.3 Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/libdwarf/dwarf_attrval_signed.3 Mon Dec 29 19:16:40 2014 (r276371) @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id: dwarf_attrval_signed.3 2072 2011-10-27 03:26:49Z jkoshy $ +.\" $Id: dwarf_attrval_signed.3 2980 2014-01-21 20:15:54Z kaiwang27 $ .\" .Dd January 18, 2014 .Os Modified: head/contrib/elftoolchain/libdwarf/dwarf_child.3 ============================================================================== --- head/contrib/elftoolchain/libdwarf/dwarf_child.3 Mon Dec 29 19:04:17 2014 (r276370) +++ head/contrib/elftoolchain/libdwarf/dwarf_child.3 Mon Dec 29 19:16:40 2014 (r276371) @@ -1,4 +1,4 @@ -.\" Copyright (c) 2010 Kai Wang +.\" Copyright (c) 2010,2014 Kai Wang .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without @@ -22,15 +22,17 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $Id: dwarf_child.3 2122 2011-11-09 15:35:14Z jkoshy $ +.\" $Id: dwarf_child.3 3127 2014-12-21 19:09:19Z jkoshy $ .\" -.Dd November 9, 2011 +.Dd December 21, 2014 .Os .Dt DWARF_CHILD 3 .Sh NAME .Nm dwarf_child , +.Nm dwarf_offdie , +.Nm dwarf_offdie_b , .Nm dwarf_siblingof , -.Nm dwarf_offdie +.Nm dwarf_siblingof_b .Nd retrieve DWARF Debugging Information Entry descriptors .Sh LIBRARY .Lb libdwarf @@ -39,6 +41,21 @@ .Ft int .Fn dwarf_child "Dwarf_Die die" "Dwarf_Die *ret_die" "Dwarf_Error *err" .Ft int +.Fo dwarf_offdie +.Fa "Dwarf_Debug dbg" +.Fa "Dwarf_Off offset" +.Fa "Dwarf_Die *ret_die" +.Fa "Dwarf_Error *err" +.Fc *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 19:20:20 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id AEB51121; Mon, 29 Dec 2014 19:20:20 +0000 (UTC) Received: from mail-ig0-x22e.google.com (mail-ig0-x22e.google.com [IPv6:2607:f8b0:4001:c05::22e]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 74B741EA8; Mon, 29 Dec 2014 19:20:20 +0000 (UTC) Received: by mail-ig0-f174.google.com with SMTP id hn15so11646870igb.1; Mon, 29 Dec 2014 11:20:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=n3XcZyYHf4sA3A/VeLMozbFbXO0+R63/ynKkXttgKNg=; b=KpxU+jX2OSr644gPGiFL1IBRnM/k9ttzrmB1gXYaHHOAkn7UrEnr54zCtWd6V8wQu7 wegYgFVS3u0Uqcm9G27arpGcaDkH/wvNVZoQc6sDnrtpzF71TB/6AmaN0+AuJ2fBdLi7 eZq0P1zLqVL7AjPmORAbdOVThU0bSwAwLRUjuYW3nhaGK8lKz4WvI7x+0JBBPWoHXoyg 0agPySSuOwHgSCHIRdxfxEhoG7xgCppS1KAnduOjcwG2yhSiwFmHTcKT8j9swpikRisl SY39yAGOvS59Y/XS5kx58KVcc3xM/egooO9LnDJzUMOG1n34wjc9L925TX5tKFSMxdWn Gblg== X-Received: by 10.107.25.74 with SMTP id 71mr51828521ioz.70.1419880819763; Mon, 29 Dec 2014 11:20:19 -0800 (PST) MIME-Version: 1.0 Sender: carpeddiem@gmail.com Received: by 10.107.0.85 with HTTP; Mon, 29 Dec 2014 11:19:59 -0800 (PST) In-Reply-To: References: <201412291902.sBTJ218x095737@svn.freebsd.org> From: Ed Maste Date: Mon, 29 Dec 2014 14:19:59 -0500 X-Google-Sender-Auth: Eke188Qv15IZOfzpe7lE2jq6EAA Message-ID: Subject: Re: svn commit: r276369 - head To: Garrett Cooper Content-Type: text/plain; charset=UTF-8 Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 19:20:20 -0000 On 29 December 2014 at 14:07, Garrett Cooper wrote: > On Dec 29, 2014, at 11:02, Ed Maste wrote: > >> Author: emaste >> Date: Mon Dec 29 19:02:00 2014 >> New Revision: 276369 >> URL: https://svnweb.freebsd.org/changeset/base/276369 >> >> Log: >> Merge elftoolchain directory shuffling from elftoolchain update branch >> >> Modified: >> Directory Properties: >> head/ (props changed) > > Hi Ed, > Was merging just the mergeinfo intentional? I was not expecting any file content changes, so I suppose so. I might have expected Subversion to list the directory content replacements as with the corresponding change on the branch (r276164). From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 19:27:11 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5C3373FA; Mon, 29 Dec 2014 19:27:11 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 484F52F8A; Mon, 29 Dec 2014 19:27:11 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBTJRBCL005954; Mon, 29 Dec 2014 19:27:11 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBTJRBKc005953; Mon, 29 Dec 2014 19:27:11 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201412291927.sBTJRBKc005953@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Mon, 29 Dec 2014 19:27:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276372 - head/contrib/elftoolchain/libelf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 19:27:11 -0000 Author: emaste Date: Mon Dec 29 19:27:10 2014 New Revision: 276372 URL: https://svnweb.freebsd.org/changeset/base/276372 Log: Restore r276252 mdoc fix It was accidentally reverted in the elftoolchain update (r276371). Sponsored by: The FreeBSD Foundation Modified: head/contrib/elftoolchain/libelf/elf.3 Modified: head/contrib/elftoolchain/libelf/elf.3 ============================================================================== --- head/contrib/elftoolchain/libelf/elf.3 Mon Dec 29 19:16:40 2014 (r276371) +++ head/contrib/elftoolchain/libelf/elf.3 Mon Dec 29 19:27:10 2014 (r276372) @@ -413,7 +413,6 @@ Section types in the range .Dv SHT_HIUSER ] are otherwise considered to be of type .Dv ELF_T_BYTE . -.TE .Ss Functional Grouping This section contains a brief overview of the available functionality in the ELF library. From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 19:38:13 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4E1B0660; Mon, 29 Dec 2014 19:38:13 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3A47B3216; Mon, 29 Dec 2014 19:38:13 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBTJcDsH010754; Mon, 29 Dec 2014 19:38:13 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBTJcDVw010753; Mon, 29 Dec 2014 19:38:13 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201412291938.sBTJcDVw010753@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Mon, 29 Dec 2014 19:38:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276373 - head/contrib/elftoolchain/readelf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 19:38:13 -0000 Author: emaste Date: Mon Dec 29 19:38:12 2014 New Revision: 276373 URL: https://svnweb.freebsd.org/changeset/base/276373 Log: Rename DT_FEATURE_1 to DT_FEATURE Track r270303: This provides a minor cleanup in elfdump; there are otherwise no consumers in the tree. Old SUN documentation can be found for either variant, but GNU binutils switched to DT_FEATURE around 2000. Sponsored by: The FreeBSD Foundation Modified: head/contrib/elftoolchain/readelf/readelf.c Modified: head/contrib/elftoolchain/readelf/readelf.c ============================================================================== --- head/contrib/elftoolchain/readelf/readelf.c Mon Dec 29 19:27:10 2014 (r276372) +++ head/contrib/elftoolchain/readelf/readelf.c Mon Dec 29 19:38:12 2014 (r276373) @@ -903,7 +903,7 @@ dt_type(unsigned int mach, unsigned int case DT_PLTPADSZ: return "PLTPADSZ"; case DT_MOVEENT: return "MOVEENT"; case DT_MOVESZ: return "MOVESZ"; - case DT_FEATURE_1: return "FEATURE_1"; + case DT_FEATURE: return "FEATURE"; case DT_POSFLAG_1: return "POSFLAG_1"; case DT_SYMINSZ: return "SYMINSZ"; case DT_SYMINENT: return "SYMINENT"; From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 20:23:43 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5D38953F; Mon, 29 Dec 2014 20:23:43 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 49B6B3910; Mon, 29 Dec 2014 20:23:43 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBTKNhGe033701; Mon, 29 Dec 2014 20:23:43 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBTKNhvg033700; Mon, 29 Dec 2014 20:23:43 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201412292023.sBTKNhvg033700@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Mon, 29 Dec 2014 20:23:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276374 - head/contrib/elftoolchain/libelf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 20:23:43 -0000 Author: emaste Date: Mon Dec 29 20:23:42 2014 New Revision: 276374 URL: https://svnweb.freebsd.org/changeset/base/276374 Log: libelf: Do not read past end of buffer Previously a corrupt ELF file could read beyond the end of e_rawfile. Upstream elftoolchain ticket 462. Found via the security/afl fuzzer. Sponsored by: The FreeBSD Foundation Modified: head/contrib/elftoolchain/libelf/elf_scn.c Modified: head/contrib/elftoolchain/libelf/elf_scn.c ============================================================================== --- head/contrib/elftoolchain/libelf/elf_scn.c Mon Dec 29 19:38:12 2014 (r276373) +++ head/contrib/elftoolchain/libelf/elf_scn.c Mon Dec 29 20:23:42 2014 (r276374) @@ -50,6 +50,7 @@ _libelf_load_section_headers(Elf *e, voi Elf64_Ehdr *eh64; int ec, swapbytes; unsigned char *src; + unsigned char *rawend; size_t fsz, i, shnum; int (*xlator)(unsigned char *_d, size_t _dsz, unsigned char *_s, size_t _c, int _swap); @@ -86,6 +87,7 @@ _libelf_load_section_headers(Elf *e, voi swapbytes = e->e_byteorder != LIBELF_PRIVATE(byteorder); src = e->e_rawfile + shoff; + rawend = e->e_rawfile + e->e_rawsize; /* * If the file is using extended numbering then section #0 @@ -102,6 +104,8 @@ _libelf_load_section_headers(Elf *e, voi } for (; i < shnum; i++, src += fsz) { + if (src + sizeof(scn->s_shdr) > rawend) + return (0); if ((scn = _libelf_allocate_scn(e, i)) == NULL) return (0); From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 20:33:36 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 519D1A7A; Mon, 29 Dec 2014 20:33:36 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 31CD064BA9; Mon, 29 Dec 2014 20:33:36 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBTKXaHA038691; Mon, 29 Dec 2014 20:33:36 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBTKXZ6p038689; Mon, 29 Dec 2014 20:33:35 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201412292033.sBTKXZ6p038689@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Mon, 29 Dec 2014 20:33:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276377 - head/sys/i386/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 20:33:36 -0000 Author: marius Date: Mon Dec 29 20:33:34 2014 New Revision: 276377 URL: https://svnweb.freebsd.org/changeset/base/276377 Log: - No longer exclude malo(4) and mwl(4), they have been fixed in r275870 and r275871 respectively to build with PAE enabled. - For the PAE kernel configuration file, no longer exclude devices that are known to be 64-bit DMA clean from amd64. MFC after: 3 days Modified: head/sys/i386/conf/PAE head/sys/i386/conf/XEN Modified: head/sys/i386/conf/PAE ============================================================================== --- head/sys/i386/conf/PAE Mon Dec 29 20:31:26 2014 (r276376) +++ head/sys/i386/conf/PAE Mon Dec 29 20:33:34 2014 (r276377) @@ -10,73 +10,14 @@ ident PAE-GENERIC # To make a PAE kernel, the next option is needed options PAE # Physical Address Extensions Kernel -# The following modules don't build with PAE enabled. -makeoptions WITHOUT_MODULES="ctl dpt hptmv ida malo mwl" - -# What follows is a list of drivers that are normally in GENERIC, but either -# don't work or are untested with PAE. Be very careful before enabling any -# of these drivers. Drivers which use DMA and don't handle 64 bit physical -# address properly may cause data corruption when used in a machine with more -# than 4 gigabytes of memory. - -nodevice ahb -nodevice sym -nodevice trm - -nodevice adv -nodevice adw -nodevice aha -nodevice aic -nodevice bt - -nodevice ncv -nodevice nsp -nodevice stg - -nodevice asr +# The following drivers don't build with PAE enabled. +makeoptions WITHOUT_MODULES="ctl dpt hptmv ida" nodevice dpt -nodevice mly nodevice hptmv -nodevice hptnr -nodevice hptrr - nodevice ida -nodevice mlx -nodevice pst - -nodevice agp - -nodevice txp -nodevice vx - -nodevice pcn -nodevice sf -nodevice sis -nodevice ste -nodevice tl -nodevice tx -nodevice vr -nodevice wb -nodevice cs -nodevice ed -nodevice ex -nodevice ep -nodevice fe -nodevice ie -nodevice sn -nodevice xe - -nodevice an -nodevice ath # Atheros pci/cardbus NICs -nodevice ath_pci -nodevice ath_hal -nodevice ath_rate_sample # SampleRate tx rate control for ath -nodevice ipw -nodevice iwi -nodevice iwn -nodevice malo -nodevice mwl -nodevice ral -nodevice wi -nodevice wpi +# The following drivers don't work with PAE enabled. +makeoptions WITHOUT_MODULES+="asr ncr pst" +nodevice asr +nodevice ncr +nodevice pst Modified: head/sys/i386/conf/XEN ============================================================================== --- head/sys/i386/conf/XEN Mon Dec 29 20:31:26 2014 (r276376) +++ head/sys/i386/conf/XEN Mon Dec 29 20:33:34 2014 (r276377) @@ -9,7 +9,7 @@ ident XEN makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols # The following modules don't build with PAE and XEN enabled. -makeoptions WITHOUT_MODULES="ctl dpt drm drm2 hptmv ida malo mwl" +makeoptions WITHOUT_MODULES="ctl dpt drm drm2 hptmv ida" options SCHED_ULE # ULE scheduler options PREEMPTION # Enable kernel thread preemption From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 21:52:36 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 794C0C20; Mon, 29 Dec 2014 21:52:36 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5A2AC1A5E; Mon, 29 Dec 2014 21:52:36 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBTLqaWo077687; Mon, 29 Dec 2014 21:52:36 GMT (envelope-from joel@FreeBSD.org) Received: (from joel@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBTLqXt3077670; Mon, 29 Dec 2014 21:52:33 GMT (envelope-from joel@FreeBSD.org) Message-Id: <201412292152.sBTLqXt3077670@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: joel set sender to joel@FreeBSD.org using -f From: Joel Dahl Date: Mon, 29 Dec 2014 21:52:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276381 - head/lib/libgssapi X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 21:52:36 -0000 Author: joel (doc committer) Date: Mon Dec 29 21:52:32 2014 New Revision: 276381 URL: https://svnweb.freebsd.org/changeset/base/276381 Log: mdoc: sort SEE ALSO. Modified: head/lib/libgssapi/gss_acquire_cred.3 head/lib/libgssapi/gss_add_cred.3 head/lib/libgssapi/gss_add_oid_set_member.3 head/lib/libgssapi/gss_create_empty_oid_set.3 head/lib/libgssapi/gss_delete_sec_context.3 head/lib/libgssapi/gss_get_mic.3 head/lib/libgssapi/gss_import_sec_context.3 head/lib/libgssapi/gss_inquire_context.3 head/lib/libgssapi/gss_process_context_token.3 head/lib/libgssapi/gss_test_oid_set_member.3 head/lib/libgssapi/gss_unwrap.3 head/lib/libgssapi/gss_wrap.3 Modified: head/lib/libgssapi/gss_acquire_cred.3 ============================================================================== --- head/lib/libgssapi/gss_acquire_cred.3 Mon Dec 29 21:43:02 2014 (r276380) +++ head/lib/libgssapi/gss_acquire_cred.3 Mon Dec 29 21:52:32 2014 (r276381) @@ -189,10 +189,10 @@ The credentials could not be acquired be No credentials were found for the specified name. .El .Sh SEE ALSO -.Xr gss_init_sec_context 3 , .Xr gss_accept_sec_context 3 , -.Xr gss_inquire_cred 3 , +.Xr gss_init_sec_context 3 , .Xr gss_inquire_context 3 , +.Xr gss_inquire_cred 3 , .Xr gss_release_cred 3 , .Xr gss_release_oid_set 3 .Sh STANDARDS Modified: head/lib/libgssapi/gss_add_cred.3 ============================================================================== --- head/lib/libgssapi/gss_add_cred.3 Mon Dec 29 21:43:02 2014 (r276380) +++ head/lib/libgssapi/gss_add_cred.3 Mon Dec 29 21:52:32 2014 (r276381) @@ -288,11 +288,11 @@ The required credentials could not be ad No credentials were found for the specified name. .El .Sh SEE ALSO -.Xr gss_init_sec_context 3 , .Xr gss_accept_sec_context 3 , .Xr gss_acquire_cred 3 , -.Xr gss_inquire_cred 3 , +.Xr gss_init_sec_context 3 , .Xr gss_inquire_context 3 , +.Xr gss_inquire_cred 3 , .Xr gss_release_cred 3 , .Xr gss_release_oid_set 3 .Sh STANDARDS Modified: head/lib/libgssapi/gss_add_oid_set_member.3 ============================================================================== --- head/lib/libgssapi/gss_add_oid_set_member.3 Mon Dec 29 21:43:02 2014 (r276380) +++ head/lib/libgssapi/gss_add_oid_set_member.3 Mon Dec 29 21:52:32 2014 (r276381) @@ -85,8 +85,8 @@ The set in which the object identifier s Successful completion .El .Sh SEE ALSO -.Xr gss_create_empty_oid_set 3 , -.Xr gss_acquire_cred 3 +.Xr gss_acquire_cred 3 , +.Xr gss_create_empty_oid_set 3 .Sh STANDARDS .Bl -tag -width ".It RFC 2743" .It RFC 2743 Modified: head/lib/libgssapi/gss_create_empty_oid_set.3 ============================================================================== --- head/lib/libgssapi/gss_create_empty_oid_set.3 Mon Dec 29 21:43:02 2014 (r276380) +++ head/lib/libgssapi/gss_create_empty_oid_set.3 Mon Dec 29 21:52:32 2014 (r276381) @@ -66,8 +66,8 @@ which the application must free after us Successful completion .El .Sh SEE ALSO -.Xr gss_add_oid_set_member 3 , -.Xr gss_acquire_cred 3 +.Xr gss_acquire_cred 3 , +.Xr gss_add_oid_set_member 3 .Sh STANDARDS .Bl -tag -width ".It RFC 2743" .It RFC 2743 Modified: head/lib/libgssapi/gss_delete_sec_context.3 ============================================================================== --- head/lib/libgssapi/gss_delete_sec_context.3 Mon Dec 29 21:43:02 2014 (r276380) +++ head/lib/libgssapi/gss_delete_sec_context.3 Mon Dec 29 21:52:32 2014 (r276381) @@ -117,9 +117,9 @@ Successful completion No valid context was supplied .El .Sh SEE ALSO -.Xr gss_process_context_token 3 , +.Xr gss_accept_sec_context 3 , .Xr gss_init_sec_context 3 , -.Xr gss_accept_sec_context 3 +.Xr gss_process_context_token 3 .Sh STANDARDS .Bl -tag -width ".It RFC 2743" .It RFC 2743 Modified: head/lib/libgssapi/gss_get_mic.3 ============================================================================== --- head/lib/libgssapi/gss_get_mic.3 Mon Dec 29 21:43:02 2014 (r276380) +++ head/lib/libgssapi/gss_get_mic.3 Mon Dec 29 21:52:32 2014 (r276381) @@ -120,8 +120,8 @@ The context_handle parameter did not ide The specified QOP is not supported by the mechanism .El .Sh SEE ALSO -.Xr gss_wrap 3 , -.Xr gss_release_buffer 3 +.Xr gss_release_buffer 3 , +.Xr gss_wrap 3 .Sh STANDARDS .Bl -tag -width ".It RFC 2743" .It RFC 2743 Modified: head/lib/libgssapi/gss_import_sec_context.3 ============================================================================== --- head/lib/libgssapi/gss_import_sec_context.3 Mon Dec 29 21:43:02 2014 (r276380) +++ head/lib/libgssapi/gss_import_sec_context.3 Mon Dec 29 21:52:32 2014 (r276381) @@ -75,8 +75,8 @@ The operation is unavailable Local policy prevents the import of this context by the current process .El .Sh SEE ALSO -.Xr gss_export_sec_context 3 , -.Xr gss_delete_sec_context 3 +.Xr gss_delete_sec_context 3 , +.Xr gss_export_sec_context 3 .Sh STANDARDS .Bl -tag -width ".It RFC 2743" .It RFC 2743 Modified: head/lib/libgssapi/gss_inquire_context.3 ============================================================================== --- head/lib/libgssapi/gss_inquire_context.3 Mon Dec 29 21:43:02 2014 (r276380) +++ head/lib/libgssapi/gss_inquire_context.3 Mon Dec 29 21:52:32 2014 (r276381) @@ -236,11 +236,11 @@ Successful completion The referenced context could not be accessed .El .Sh SEE ALSO -.Xr gss_release_name 3 , -.Xr gss_init_sec_context 3 , -.Xr gss_wrap 3 , +.Xr gss_export_sec_context 3 , .Xr gss_get_mic 3 , -.Xr gss_export_sec_context 3 +.Xr gss_init_sec_context 3 , +.Xr gss_release_name 3 , +.Xr gss_wrap 3 .Sh STANDARDS .Bl -tag -width ".It RFC 2743" .It RFC 2743 Modified: head/lib/libgssapi/gss_process_context_token.3 ============================================================================== --- head/lib/libgssapi/gss_process_context_token.3 Mon Dec 29 21:43:02 2014 (r276380) +++ head/lib/libgssapi/gss_process_context_token.3 Mon Dec 29 21:52:32 2014 (r276381) @@ -91,8 +91,8 @@ The did not refer to a valid context .El .Sh SEE ALSO -.Xr gss_init_sec_context 3 , -.Xr gss_accept_sec_context 3 +.Xr gss_accept_sec_context 3 , +.Xr gss_init_sec_context 3 .Sh STANDARDS .Bl -tag -width ".It RFC 2743" .It RFC 2743 Modified: head/lib/libgssapi/gss_test_oid_set_member.3 ============================================================================== --- head/lib/libgssapi/gss_test_oid_set_member.3 Mon Dec 29 21:43:02 2014 (r276380) +++ head/lib/libgssapi/gss_test_oid_set_member.3 Mon Dec 29 21:52:32 2014 (r276381) @@ -70,8 +70,8 @@ Non-zero if the specified OID is a membe Successful completion .El .Sh SEE ALSO -.Xr gss_indicate_mechs 3 , .Xr gss_acquire_cred 3 , +.Xr gss_indicate_mechs 3 , .Xr gss_inquire_cred 3 .Sh STANDARDS .Bl -tag -width ".It RFC 2743" Modified: head/lib/libgssapi/gss_unwrap.3 ============================================================================== --- head/lib/libgssapi/gss_unwrap.3 Mon Dec 29 21:43:02 2014 (r276380) +++ head/lib/libgssapi/gss_unwrap.3 Mon Dec 29 21:52:32 2014 (r276381) @@ -147,8 +147,8 @@ The context has already expired. The context_handle parameter did not identify a valid context. .El .Sh SEE ALSO -.Xr gss_wrap 3 , -.Xr gss_release_buffer 3 +.Xr gss_release_buffer 3 , +.Xr gss_wrap 3 .Sh STANDARDS .Bl -tag -width ".It RFC 2743" .It RFC 2743 Modified: head/lib/libgssapi/gss_wrap.3 ============================================================================== --- head/lib/libgssapi/gss_wrap.3 Mon Dec 29 21:43:02 2014 (r276380) +++ head/lib/libgssapi/gss_wrap.3 Mon Dec 29 21:52:32 2014 (r276381) @@ -134,8 +134,8 @@ The context_handle parameter did not ide The specified QOP is not supported by the mechanism. .El .Sh SEE ALSO -.Xr gss_unwrap 3 , -.Xr gss_release_buffer 3 +.Xr gss_release_buffer 3 , +.Xr gss_unwrap 3 .Sh STANDARDS .Bl -tag -width ".It RFC 2743" .It RFC 2743 From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 21:59:50 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0A0B8DB0; Mon, 29 Dec 2014 21:59:50 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E90921AC1; Mon, 29 Dec 2014 21:59:49 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBTLxnp1078585; Mon, 29 Dec 2014 21:59:49 GMT (envelope-from joel@FreeBSD.org) Received: (from joel@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBTLxjKF078562; Mon, 29 Dec 2014 21:59:45 GMT (envelope-from joel@FreeBSD.org) Message-Id: <201412292159.sBTLxjKF078562@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: joel set sender to joel@FreeBSD.org using -f From: Joel Dahl Date: Mon, 29 Dec 2014 21:59:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276382 - head/lib/librpcsec_gss X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 21:59:50 -0000 Author: joel (doc committer) Date: Mon Dec 29 21:59:44 2014 New Revision: 276382 URL: https://svnweb.freebsd.org/changeset/base/276382 Log: mdoc: sort SEE ALSO. Modified: head/lib/librpcsec_gss/rpc_gss_get_error.3 head/lib/librpcsec_gss/rpc_gss_get_mech_info.3 head/lib/librpcsec_gss/rpc_gss_get_mechanisms.3 head/lib/librpcsec_gss/rpc_gss_get_principal_name.3 head/lib/librpcsec_gss/rpc_gss_get_versions.3 head/lib/librpcsec_gss/rpc_gss_getcred.3 head/lib/librpcsec_gss/rpc_gss_is_installed.3 head/lib/librpcsec_gss/rpc_gss_max_data_length.3 head/lib/librpcsec_gss/rpc_gss_mech_to_oid.3 head/lib/librpcsec_gss/rpc_gss_oid_to_mech.3 head/lib/librpcsec_gss/rpc_gss_qop_to_num.3 head/lib/librpcsec_gss/rpc_gss_seccreate.3 head/lib/librpcsec_gss/rpc_gss_set_callback.3 head/lib/librpcsec_gss/rpc_gss_set_defaults.3 head/lib/librpcsec_gss/rpc_gss_set_svc_name.3 head/lib/librpcsec_gss/rpc_gss_svc_max_data_length.3 head/lib/librpcsec_gss/rpcsec_gss.3 Modified: head/lib/librpcsec_gss/rpc_gss_get_error.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_get_error.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_get_error.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -44,8 +44,8 @@ Get details of the last RPCSEC_GSS error A pointer to a structure where the error details will be returned .El .Sh SEE ALSO -.Xr rpc 3 , .Xr gssapi 3 , +.Xr rpc 3 , .Xr rpcset_gss 3 .Sh HISTORY The Modified: head/lib/librpcsec_gss/rpc_gss_get_mech_info.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_get_mech_info.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_get_mech_info.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -54,8 +54,8 @@ a list of the supported qualities of pro otherwise .Dv NULL . .Sh SEE ALSO -.Xr rpc 3 , .Xr gssapi 3 , +.Xr rpc 3 , .Xr rpcset_gss 3 .Sh HISTORY The Modified: head/lib/librpcsec_gss/rpc_gss_get_mechanisms.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_get_mechanisms.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_get_mechanisms.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -41,8 +41,8 @@ Return a .Dv NULL terminated list of installed security mechanisms. .Sh SEE ALSO -.Xr rpc 3 , .Xr gssapi 3 , +.Xr rpc 3 , .Xr rpcset_gss 3 .Sh HISTORY The Modified: head/lib/librpcsec_gss/rpc_gss_get_principal_name.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_get_principal_name.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_get_principal_name.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -67,9 +67,9 @@ if the principal was created or .Dv FALSE otherwise .Sh SEE ALSO -.Xr rpc 3 , -.Xr gssapi 3 , .Xr gss_export_name 3 , +.Xr gssapi 3 , +.Xr rpc 3 , .Xr rpcset_gss 3 .Sh HISTORY The Modified: head/lib/librpcsec_gss/rpc_gss_get_versions.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_get_versions.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_get_versions.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -50,8 +50,8 @@ The value of is set to the lowest supported protocol version .El .Sh SEE ALSO -.Xr rpc 3 , .Xr gssapi 3 , +.Xr rpc 3 , .Xr rpcset_gss 3 .Sh HISTORY The Modified: head/lib/librpcsec_gss/rpc_gss_getcred.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_getcred.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_getcred.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -70,8 +70,8 @@ if successful, .Dv FALSE otherwise. .Sh SEE ALSO -.Xr rpc 3 , .Xr gssapi 3 , +.Xr rpc 3 , .Xr rpc_gss_set_callback 3 , .Xr rpcset_gss 3 .Sh HISTORY Modified: head/lib/librpcsec_gss/rpc_gss_is_installed.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_is_installed.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_is_installed.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -51,8 +51,8 @@ if the mechanism is installed, .Dv FALSE otherwise. .Sh SEE ALSO -.Xr rpc 3 , .Xr gssapi 3 , +.Xr rpc 3 , .Xr rpcset_gss 3 .Sh HISTORY The Modified: head/lib/librpcsec_gss/rpc_gss_max_data_length.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_max_data_length.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_max_data_length.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -50,8 +50,8 @@ Maximum packet size of the underlying tr .Sh RETURN VALUES The maximum message size that can be encoded .Sh SEE ALSO -.Xr rpc 3 , .Xr gssapi 3 , +.Xr rpc 3 , .Xr rpcset_gss 3 .Sh HISTORY The Modified: head/lib/librpcsec_gss/rpc_gss_mech_to_oid.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_mech_to_oid.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_mech_to_oid.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -54,8 +54,8 @@ If the mechanism is found, is returned, otherwise .Dv FALSE . .Sh SEE ALSO -.Xr rpc 3 , .Xr gssapi 3 , +.Xr rpc 3 , .Xr rpcset_gss 3 .Sh HISTORY The Modified: head/lib/librpcsec_gss/rpc_gss_oid_to_mech.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_oid_to_mech.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_oid_to_mech.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -54,8 +54,8 @@ If the mechanism is found, is returned, otherwise .Dv FALSE . .Sh SEE ALSO -.Xr rpc 3 , .Xr gssapi 3 , +.Xr rpc 3 , .Xr rpcset_gss 3 .Sh HISTORY The Modified: head/lib/librpcsec_gss/rpc_gss_qop_to_num.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_qop_to_num.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_qop_to_num.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -56,8 +56,8 @@ If the value is found, is returned, otherwise .Dv FALSE . .Sh SEE ALSO -.Xr rpc 3 , .Xr gssapi 3 , +.Xr rpc 3 , .Xr rpcset_gss 3 .Sh HISTORY The Modified: head/lib/librpcsec_gss/rpc_gss_seccreate.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_seccreate.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_seccreate.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -96,11 +96,11 @@ To use this security context for subsequ .Va clnt->cl_auth to this value. .Sh SEE ALSO -.Xr rpc 3 , .Xr gssapi 3 , +.Xr rpc 3 , +.Xr rpcset_gss 3 , .Xr mech 5 , -.Xr qop 5 , -.Xr rpcset_gss 3 +.Xr qop 5 .Sh HISTORY The .Nm Modified: head/lib/librpcsec_gss/rpc_gss_set_callback.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_set_callback.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_set_callback.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -93,9 +93,9 @@ if the callback was registered successfu .Dv FALSE otherwise .Sh SEE ALSO -.Xr rpc 3 , .Xr gssapi 3 , -.Xr rpc_gss_getcred 3 +.Xr rpc 3 , +.Xr rpc_gss_getcred 3 , .Xr rpcset_gss 3 .Sh HISTORY The Modified: head/lib/librpcsec_gss/rpc_gss_set_defaults.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_set_defaults.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_set_defaults.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -56,8 +56,8 @@ Returns .Dv TRUE if the values were set .Sh SEE ALSO -.Xr rpc 3 , .Xr gssapi 3 , +.Xr rpc 3 , .Xr rpcset_gss 3 .Sh HISTORY The Modified: head/lib/librpcsec_gss/rpc_gss_set_svc_name.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_set_svc_name.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_set_svc_name.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -72,9 +72,9 @@ if the service principal was registered .Dv FALSE otherwise. .Sh SEE ALSO -.Xr rpc 3 , -.Xr gssapi 3 , .Xr gss_acquire_cred 3 , +.Xr gssapi 3 , +.Xr rpc 3 , .Xr rpcset_gss 3 .Sh HISTORY The Modified: head/lib/librpcsec_gss/rpc_gss_svc_max_data_length.3 ============================================================================== --- head/lib/librpcsec_gss/rpc_gss_svc_max_data_length.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpc_gss_svc_max_data_length.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -50,8 +50,8 @@ Maximum packet size of the underlying tr .Sh RETURN VALUES The maximum message size that can be encoded .Sh SEE ALSO -.Xr rpc 3 , .Xr gssapi 3 , +.Xr rpc 3 , .Xr rpcset_gss 3 .Sh HISTORY The Modified: head/lib/librpcsec_gss/rpcsec_gss.3 ============================================================================== --- head/lib/librpcsec_gss/rpcsec_gss.3 Mon Dec 29 21:52:32 2014 (r276381) +++ head/lib/librpcsec_gss/rpcsec_gss.3 Mon Dec 29 21:59:44 2014 (r276382) @@ -214,12 +214,12 @@ Create a client principal name from vari Calculate maximum server message sizes. .El .Sh SEE ALSO -.Xr rpc 3 , -.Xr gssapi 3 , .Xr gss_export_name 3 , +.Xr gssapi 3 , +.Xr rpc 3 , +.Xr rpcset_gss 3 , .Xr mech 5 , -.Xr qop 5 , -.Xr rpcset_gss 3 +.Xr qop 5 .Sh HISTORY The .Nm From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 22:32:41 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 68086279; Mon, 29 Dec 2014 22:32:41 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4C2CC301E; Mon, 29 Dec 2014 22:32:41 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBTMWees096276; Mon, 29 Dec 2014 22:32:41 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBTMWeMB096275; Mon, 29 Dec 2014 22:32:40 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201412292232.sBTMWeMB096275@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Mon, 29 Dec 2014 22:32:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276383 - head/release X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 22:32:41 -0000 Author: gjb Date: Mon Dec 29 22:32:39 2014 New Revision: 276383 URL: https://svnweb.freebsd.org/changeset/base/276383 Log: Delay dropping to the mountroot prompt for 10 seconds in case the root device is not yet ready. Sponsored by: The FreeBSD Foundation Modified: head/release/Makefile Modified: head/release/Makefile ============================================================================== --- head/release/Makefile Mon Dec 29 21:59:44 2014 (r276382) +++ head/release/Makefile Mon Dec 29 22:32:39 2014 (r276383) @@ -201,6 +201,7 @@ system: packagesystem echo sendmail_enable=\"NONE\" > release/etc/rc.conf echo hostid_enable=\"NO\" >> release/etc/rc.conf echo debug.witness.trace=0 >> release/etc/sysctl.conf + echo kern.cam.boot_delay=\"10000\" >> release/boot/loader.conf cp ${.CURDIR}/rc.local release/etc touch ${.TARGET} @@ -226,6 +227,7 @@ bootonly: packagesystem echo sendmail_enable=\"NONE\" > bootonly/etc/rc.conf echo hostid_enable=\"NO\" >> bootonly/etc/rc.conf echo debug.witness.trace=0 >> bootonly/etc/sysctl.conf + echo kern.cam.boot_delay=\"10000\" >> bootonly/boot/loader.conf cp ${.CURDIR}/rc.local bootonly/etc dvd: @@ -248,6 +250,7 @@ dvd: echo sendmail_enable=\"NONE\" > ${.TARGET}/etc/rc.conf echo hostid_enable=\"NO\" >> ${.TARGET}/etc/rc.conf echo debug.witness.trace=0 >> ${.TARGET}/etc/sysctl.conf + echo kern.cam.boot_delay=\"10000\" >> ${.TARGET}/boot/loader.conf cp ${.CURDIR}/rc.local ${.TARGET}/etc touch ${.TARGET} From owner-svn-src-head@FreeBSD.ORG Mon Dec 29 22:57:30 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9BBCAB0D; Mon, 29 Dec 2014 22:57:30 +0000 (UTC) Received: from mho-01-ewr.mailhop.org (mho-03-ewr.mailhop.org [204.13.248.66]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 708762400; Mon, 29 Dec 2014 22:57:30 +0000 (UTC) Received: from [73.34.117.227] (helo=ilsoft.org) by mho-01-ewr.mailhop.org with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.72) (envelope-from ) id 1Y5jFa-000F1o-JI; Mon, 29 Dec 2014 22:57:22 +0000 Received: from revolution.hippie.lan (revolution.hippie.lan [172.22.42.240]) by ilsoft.org (8.14.9/8.14.9) with ESMTP id sBTMvLRB019153; Mon, 29 Dec 2014 15:57:21 -0700 (MST) (envelope-from ian@freebsd.org) X-Mail-Handler: Dyn Standard SMTP by Dyn X-Originating-IP: 73.34.117.227 X-Report-Abuse-To: abuse@dyndns.com (see http://www.dyndns.com/services/sendlabs/outbound_abuse.html for abuse reporting information) X-MHO-User: U2FsdGVkX1/5MbJ8l94XIYLgo7x3I5DN Message-ID: <1419893841.1018.269.camel@freebsd.org> Subject: Re: svn commit: r276383 - head/release From: Ian Lepore To: Glen Barber Date: Mon, 29 Dec 2014 15:57:21 -0700 In-Reply-To: <201412292232.sBTMWeMB096275@svn.freebsd.org> References: <201412292232.sBTMWeMB096275@svn.freebsd.org> Content-Type: text/plain; charset="us-ascii" X-Mailer: Evolution 3.12.8 FreeBSD GNOME Team Port Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Dec 2014 22:57:30 -0000 On Mon, 2014-12-29 at 22:32 +0000, Glen Barber wrote: > Author: gjb > Date: Mon Dec 29 22:32:39 2014 > New Revision: 276383 > URL: https://svnweb.freebsd.org/changeset/base/276383 > > Log: > Delay dropping to the mountroot prompt for 10 seconds > in case the root device is not yet ready. > > Sponsored by: The FreeBSD Foundation > > Modified: > head/release/Makefile > > Modified: head/release/Makefile > ============================================================================== > --- head/release/Makefile Mon Dec 29 21:59:44 2014 (r276382) > +++ head/release/Makefile Mon Dec 29 22:32:39 2014 (r276383) > @@ -201,6 +201,7 @@ system: packagesystem > echo sendmail_enable=\"NONE\" > release/etc/rc.conf > echo hostid_enable=\"NO\" >> release/etc/rc.conf > echo debug.witness.trace=0 >> release/etc/sysctl.conf > + echo kern.cam.boot_delay=\"10000\" >> release/boot/loader.conf > cp ${.CURDIR}/rc.local release/etc > touch ${.TARGET} > > @@ -226,6 +227,7 @@ bootonly: packagesystem > echo sendmail_enable=\"NONE\" > bootonly/etc/rc.conf > echo hostid_enable=\"NO\" >> bootonly/etc/rc.conf > echo debug.witness.trace=0 >> bootonly/etc/sysctl.conf > + echo kern.cam.boot_delay=\"10000\" >> bootonly/boot/loader.conf > cp ${.CURDIR}/rc.local bootonly/etc > > dvd: > @@ -248,6 +250,7 @@ dvd: > echo sendmail_enable=\"NONE\" > ${.TARGET}/etc/rc.conf > echo hostid_enable=\"NO\" >> ${.TARGET}/etc/rc.conf > echo debug.witness.trace=0 >> ${.TARGET}/etc/sysctl.conf > + echo kern.cam.boot_delay=\"10000\" >> ${.TARGET}/boot/loader.conf > cp ${.CURDIR}/rc.local ${.TARGET}/etc > touch ${.TARGET} > > This will hard-wait for 10 seconds even if all devices are ready to roll much earlier than that. An alternative is to set kern.mountroot.timeout which will keep trying the available root devices until the timeout expires and then drop you to the prompt, with the benefit of only waiting 4 seconds if that's how long it really took the device to become ready. (The default for kern.mountroot.timeout is 3 seconds.) -- Ian From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 02:34:01 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from hub.FreeBSD.org (hub.freebsd.org [IPv6:2001:1900:2254:206c::16:88]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 954FF461; Tue, 30 Dec 2014 02:34:00 +0000 (UTC) Date: Tue, 30 Dec 2014 02:33:48 +0000 From: Glen Barber To: Ian Lepore Subject: Re: svn commit: r276383 - head/release Message-ID: <20141230023348.GA7902@hub.FreeBSD.org> References: <201412292232.sBTMWeMB096275@svn.freebsd.org> <1419893841.1018.269.camel@freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="x+6KMIRAuhnl3hBn" Content-Disposition: inline In-Reply-To: <1419893841.1018.269.camel@freebsd.org> X-Operating-System: FreeBSD 11.0-CURRENT amd64 X-SCUD-Definition: Sudden Completely Unexpected Dataloss X-SULE-Definition: Sudden Unexpected Learning Event User-Agent: Mutt/1.5.23 (2014-03-12) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 02:34:01 -0000 --x+6KMIRAuhnl3hBn Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Dec 29, 2014 at 03:57:21PM -0700, Ian Lepore wrote: > On Mon, 2014-12-29 at 22:32 +0000, Glen Barber wrote: > > Author: gjb > > Date: Mon Dec 29 22:32:39 2014 > > New Revision: 276383 > > URL: https://svnweb.freebsd.org/changeset/base/276383 > >=20 > > Log: > > Delay dropping to the mountroot prompt for 10 seconds > > in case the root device is not yet ready. > > =20 > > Sponsored by: The FreeBSD Foundation > >=20 > > Modified: > > head/release/Makefile > >=20 > > Modified: head/release/Makefile > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D > > --- head/release/Makefile Mon Dec 29 21:59:44 2014 (r276382) > > +++ head/release/Makefile Mon Dec 29 22:32:39 2014 (r276383) > > @@ -201,6 +201,7 @@ system: packagesystem > > echo sendmail_enable=3D\"NONE\" > release/etc/rc.conf > > echo hostid_enable=3D\"NO\" >> release/etc/rc.conf > > echo debug.witness.trace=3D0 >> release/etc/sysctl.conf > > + echo kern.cam.boot_delay=3D\"10000\" >> release/boot/loader.conf > > cp ${.CURDIR}/rc.local release/etc > > touch ${.TARGET} > > =20 > > @@ -226,6 +227,7 @@ bootonly: packagesystem > > echo sendmail_enable=3D\"NONE\" > bootonly/etc/rc.conf > > echo hostid_enable=3D\"NO\" >> bootonly/etc/rc.conf > > echo debug.witness.trace=3D0 >> bootonly/etc/sysctl.conf > > + echo kern.cam.boot_delay=3D\"10000\" >> bootonly/boot/loader.conf > > cp ${.CURDIR}/rc.local bootonly/etc > > =20 > > dvd: > > @@ -248,6 +250,7 @@ dvd: > > echo sendmail_enable=3D\"NONE\" > ${.TARGET}/etc/rc.conf > > echo hostid_enable=3D\"NO\" >> ${.TARGET}/etc/rc.conf > > echo debug.witness.trace=3D0 >> ${.TARGET}/etc/sysctl.conf > > + echo kern.cam.boot_delay=3D\"10000\" >> ${.TARGET}/boot/loader.conf > > cp ${.CURDIR}/rc.local ${.TARGET}/etc > > touch ${.TARGET} > > =20 > >=20 >=20 > This will hard-wait for 10 seconds even if all devices are ready to roll > much earlier than that. An alternative is to set kern.mountroot.timeout > which will keep trying the available root devices until the timeout > expires and then drop you to the prompt, with the benefit of only > waiting 4 seconds if that's how long it really took the device to become > ready. (The default for kern.mountroot.timeout is 3 seconds.) >=20 Bah, you're right. I'll fix it once I get a few (unrelated, but conflicting) changes committed. Glen --x+6KMIRAuhnl3hBn Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJUog8HAAoJEAMUWKVHj+KTHIkP/A7AUq4SWfzAsH0+0FhOZ/ed izZXxpsg6LWG2BP4NjD0uBXiRScKXtHuBvhrRgtn5H1fahCxfZeePTdqP4UbCmFE nutz09S4F25w6du6uG82XZNJFgY2ZDSw0LGKKtzFdGvYMCyDh+GrIgSiIrF8w5NN qG8Z+favMgI6gUUOlG1l8YzmaMXS8WZ4YDRWsQKydFfigxQ8gJJZJCg/vCDKA/pF vUZh/s3/MX7H/nQo+89+tWjekHjcXJYsZWPCs5M8fWfboubrrIKNHYRCGjLACa6m qQJWowy3/wySlOrgzoM7rEIaFG/nnSgsBvRZuAePmZ2m1/P5e0orZ5XoD2NdnebG QDgyJmGctHlMWSjN+Dc/qeCiGAjVvCkYH1CGBa8WslWAH3o8mcHfeZ2asGQtLiLs 3aKWHiRgmOQr8WZ71EvIE0yrVt4UMOmtCW+9MkbTmYa2Y+2uEYJURAvfGZT3byhp 8GEm5iXd1xr6ZtChn+q4X6/eHGA65GyqObkSA3jYjwKuW+OpRuhPApAqgGlg2+bB Io+9yXeRnsHa9Qm6v24Ni1gJAcG4Z2IJgw46eOuSKYqrjlmzzWhIdZB1T7XoyhAB DiNVAOpEDcSsEuiqC9/7f5yyY3WW4mlZ2WvTT2d+J95tXXiTFVejAkINBPXVwnpA Xw2u9Ulcy/pYpQLbKPx4 =La4B -----END PGP SIGNATURE----- --x+6KMIRAuhnl3hBn-- From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 02:39:46 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1CA205F3; Tue, 30 Dec 2014 02:39:46 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 08FD11BCE; Tue, 30 Dec 2014 02:39:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBU2djIW011211; Tue, 30 Dec 2014 02:39:45 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBU2dj67011210; Tue, 30 Dec 2014 02:39:45 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201412300239.sBU2dj67011210@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Tue, 30 Dec 2014 02:39:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276390 - head/sys/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 02:39:46 -0000 Author: imp Date: Tue Dec 30 02:39:44 2014 New Revision: 276390 URL: https://svnweb.freebsd.org/changeset/base/276390 Log: The sn driver doesn't actually include microcode at the current time, although it may in the future. Or not since the ositech cards that might need it have become perhaps too rare to support. Modified: head/sys/conf/WITHOUT_SOURCELESS_UCODE Modified: head/sys/conf/WITHOUT_SOURCELESS_UCODE ============================================================================== --- head/sys/conf/WITHOUT_SOURCELESS_UCODE Tue Dec 30 02:32:48 2014 (r276389) +++ head/sys/conf/WITHOUT_SOURCELESS_UCODE Tue Dec 30 02:39:44 2014 (r276390) @@ -13,7 +13,6 @@ nodevice mwlfw nodevice ralfw nodevice runfw nodevice sf -nodevice sn nodevice ti nodevice txp nodevice ce From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 02:39:48 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D7D9D6DE; Tue, 30 Dec 2014 02:39:48 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C10B51BD0; Tue, 30 Dec 2014 02:39:48 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBU2dmU5011261; Tue, 30 Dec 2014 02:39:48 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBU2dmPc011260; Tue, 30 Dec 2014 02:39:48 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201412300239.sBU2dmPc011260@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Tue, 30 Dec 2014 02:39:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276391 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 02:39:49 -0000 Author: imp Date: Tue Dec 30 02:39:47 2014 New Revision: 276391 URL: https://svnweb.freebsd.org/changeset/base/276391 Log: Turns out, this isn't only called from i386... Modified: head/sys/kern/subr_module.c Modified: head/sys/kern/subr_module.c ============================================================================== --- head/sys/kern/subr_module.c Tue Dec 30 02:39:44 2014 (r276390) +++ head/sys/kern/subr_module.c Tue Dec 30 02:39:47 2014 (r276391) @@ -253,7 +253,7 @@ preload_fetch_size(caddr_t mod) return (*mdp); } -/* Called from locore on i386. Convert physical pointers to kvm. Sigh. */ +/* Called from locore. Convert physical pointers to kvm. Sigh. */ void preload_bootstrap_relocate(vm_offset_t offset) { From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 02:44:34 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id AB2808B8; Tue, 30 Dec 2014 02:44:34 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7D5B61D0F; Tue, 30 Dec 2014 02:44:34 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBU2iYuq015234; Tue, 30 Dec 2014 02:44:34 GMT (envelope-from neel@FreeBSD.org) Received: (from neel@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBU2iYY7015232; Tue, 30 Dec 2014 02:44:34 GMT (envelope-from neel@FreeBSD.org) Message-Id: <201412300244.sBU2iYY7015232@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: neel set sender to neel@FreeBSD.org using -f From: Neel Natu Date: Tue, 30 Dec 2014 02:44:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276392 - head/sys/amd64/vmm/amd X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 02:44:34 -0000 Author: neel Date: Tue Dec 30 02:44:33 2014 New Revision: 276392 URL: https://svnweb.freebsd.org/changeset/base/276392 Log: Inject #UD into the guest when it executes either 'MONITOR' or 'MWAIT' on an AMD/SVM host. MFC after: 1 week Modified: head/sys/amd64/vmm/amd/svm.c head/sys/amd64/vmm/amd/vmcb.h Modified: head/sys/amd64/vmm/amd/svm.c ============================================================================== --- head/sys/amd64/vmm/amd/svm.c Tue Dec 30 02:39:47 2014 (r276391) +++ head/sys/amd64/vmm/amd/svm.c Tue Dec 30 02:44:33 2014 (r276392) @@ -461,6 +461,9 @@ vmcb_init(struct svm_softc *sc, int vcpu svm_enable_intercept(sc, vcpu, VMCB_CTRL1_INTCPT, VMCB_INTCPT_FERR_FREEZE); + svm_enable_intercept(sc, vcpu, VMCB_CTRL2_INTCPT, VMCB_INTCPT_MONITOR); + svm_enable_intercept(sc, vcpu, VMCB_CTRL2_INTCPT, VMCB_INTCPT_MWAIT); + /* * From section "Canonicalization and Consistency Checks" in APMv2 * the VMRUN intercept bit must be set to pass the consistency check. @@ -1140,6 +1143,10 @@ exit_reason_to_str(uint64_t reason) return ("msr"); case VMCB_EXIT_IRET: return ("iret"); + case VMCB_EXIT_MONITOR: + return ("monitor"); + case VMCB_EXIT_MWAIT: + return ("mwait"); default: snprintf(reasonbuf, sizeof(reasonbuf), "%#lx", reason); return (reasonbuf); @@ -1406,6 +1413,12 @@ svm_vmexit(struct svm_softc *svm_sc, int info2, info1, state->rip); } break; + case VMCB_EXIT_MONITOR: + vmexit->exitcode = VM_EXITCODE_MONITOR; + break; + case VMCB_EXIT_MWAIT: + vmexit->exitcode = VM_EXITCODE_MWAIT; + break; default: vmm_stat_incr(svm_sc->vm, vcpu, VMEXIT_UNKNOWN, 1); break; Modified: head/sys/amd64/vmm/amd/vmcb.h ============================================================================== --- head/sys/amd64/vmm/amd/vmcb.h Tue Dec 30 02:39:47 2014 (r276391) +++ head/sys/amd64/vmm/amd/vmcb.h Tue Dec 30 02:44:33 2014 (r276392) @@ -140,6 +140,8 @@ struct svm_softc; #define VMCB_EXIT_MSR 0x7C #define VMCB_EXIT_SHUTDOWN 0x7F #define VMCB_EXIT_VMSAVE 0x83 +#define VMCB_EXIT_MONITOR 0x8A +#define VMCB_EXIT_MWAIT 0x8B #define VMCB_EXIT_NPF 0x400 #define VMCB_EXIT_INVALID -1 From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 02:51:05 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E20B6A45; Tue, 30 Dec 2014 02:51:05 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CEE231D71; Tue, 30 Dec 2014 02:51:05 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBU2p5V0019316; Tue, 30 Dec 2014 02:51:05 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBU2p5xN019315; Tue, 30 Dec 2014 02:51:05 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201412300251.sBU2p5xN019315@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Tue, 30 Dec 2014 02:51:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276393 - head/sys/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 02:51:06 -0000 Author: ian Date: Tue Dec 30 02:51:04 2014 New Revision: 276393 URL: https://svnweb.freebsd.org/changeset/base/276393 Log: Add arm option ARM_NEW_PMAP, to allow us to begin adding the new pmap code alongside the existing implementation and quickly toggle between the two implementations when testing. Once the new code is past its teething stage we can remove this option. Modified: head/sys/conf/options.arm Modified: head/sys/conf/options.arm ============================================================================== --- head/sys/conf/options.arm Tue Dec 30 02:44:33 2014 (r276392) +++ head/sys/conf/options.arm Tue Dec 30 02:51:04 2014 (r276393) @@ -5,6 +5,7 @@ ARM_CACHE_LOCK_ENABLE opt_global.h ARM_KERN_DIRECTMAP opt_vm.h ARM_L2_PIPT opt_global.h ARM_MANY_BOARD opt_global.h +ARM_NEW_PMAP opt_global.h ARM_WANT_TP_ADDRESS opt_global.h COUNTS_PER_SEC opt_timer.h CPU_ARM9 opt_global.h From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 02:56:32 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BFDC4BEF; Tue, 30 Dec 2014 02:56:32 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id AB6801E9E; Tue, 30 Dec 2014 02:56:32 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBU2uWCF020904; Tue, 30 Dec 2014 02:56:32 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBU2uWWJ020903; Tue, 30 Dec 2014 02:56:32 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201412300256.sBU2uWWJ020903@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Tue, 30 Dec 2014 02:56:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276394 - head/sys/arm/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 02:56:32 -0000 Author: ian Date: Tue Dec 30 02:56:31 2014 New Revision: 276394 URL: https://svnweb.freebsd.org/changeset/base/276394 Log: Add armv6 implementations of these cache operations to avoid duplicating the #ifdef stuff at multiple points the functions are called from. Also rework the armv7 implementations so that the invalidate operations work from outermost to innermost cache level, and the writeback works from inner to outer levels. Modified: head/sys/arm/arm/cpu_asm-v6.S Modified: head/sys/arm/arm/cpu_asm-v6.S ============================================================================== --- head/sys/arm/arm/cpu_asm-v6.S Tue Dec 30 02:51:04 2014 (r276393) +++ head/sys/arm/arm/cpu_asm-v6.S Tue Dec 30 02:56:31 2014 (r276394) @@ -33,8 +33,6 @@ #include #include -#if __ARM_ARCH >= 7 - /* * Define cache functions used by startup code, which counts on the fact that * only r0-r3,r12 (ip) are modified and no stack space is used. These functions @@ -47,12 +45,18 @@ /* Invalidate D cache to PoC. (aka all cache levels)*/ ASENTRY_NP(dcache_inv_poc_all) +#if __ARM_ARCH == 6 + mcr CP15_DCIALL + DSB + bx lr +#else mrc CP15_CLIDR(r0) ands r0, r0, #0x07000000 - mov r0, r0, lsr #23 /* Get LoC (naturally aligned) */ - beq 4f + mov r0, r0, lsr #23 /* Get LoC 'naturally' aligned for */ + beq 4f /* use in the CSSELR register below */ -1: mcr CP15_CSSELR(r0) /* set cache level */ +1: sub r0, #2 + mcr CP15_CSSELR(r0) /* set cache level */ isb mrc CP15_CCSIDR(r0) /* read CCSIDR */ @@ -83,28 +87,31 @@ ASENTRY_NP(dcache_inv_poc_all) 3: mrc CP15_CSSELR(r0) /* get cache level */ - add r0, r0, #2 /* next level */ - mrc CP15_CLIDR(r1) - ands r1, r1, #0x07000000 - mov r1, r1, lsr #23 /* Get LoC (naturally aligned) */ - cmp r1, r0 - bgt 1b + teq r0, #0 + bne 1b 4: dsb /* wait for stores to finish */ mov r0, #0 mcr CP15_CSSELR(r0) isb bx lr +#endif /* __ARM_ARCH == 6 */ END(dcache_inv_poc_all) /* Invalidate D cache to PoU. (aka L1 cache only)*/ ASENTRY_NP(dcache_inv_pou_all) +#if __ARM_ARCH == 6 + mcr CP15_DCIALL + DSB + bx lr +#else mrc CP15_CLIDR(r0) ands r0, r0, #0x07000000 mov r0, r0, lsr #26 /* Get LoUU (naturally aligned) */ beq 4f -1: mcr CP15_CSSELR(r0) /* set cache level */ +1: sub r0, #2 + mcr CP15_CSSELR(r0) /* set cache level */ isb mrc CP15_CCSIDR(r0) /* read CCSIDR */ @@ -125,7 +132,7 @@ ASENTRY_NP(dcache_inv_pou_all) mov r2, ip /* r2 now contains set way decr */ /* r3 = ways/sets, r2 = way decr, r1 = set decr, r0 and ip are free */ -2: mcr CP15_DCISW(r3) /* clean & invalidate line */ +2: mcr CP15_DCISW(r3) /* invalidate line */ movs r0, r3 /* get current way/set */ beq 3f /* at 0 means we are done */ movs r0, r0, lsl #10 /* clear way bits leaving only set bits*/ @@ -135,25 +142,27 @@ ASENTRY_NP(dcache_inv_pou_all) 3: mrc CP15_CSSELR(r0) /* get cache level */ - add r0, r0, #2 /* next level */ - mrc CP15_CLIDR(r1) - ands r1, r1, #0x07000000 - mov r1, r1, lsr #26 /* Get LoUU (naturally aligned) */ - cmp r1, r0 - bgt 1b + teq r0, #0 + bne 1b 4: dsb /* wait for stores to finish */ mov r0, #0 mcr CP15_CSSELR(r0) bx lr +#endif END(dcache_inv_pou_all) /* Write back and Invalidate D cache to PoC. */ ASENTRY_NP(dcache_wbinv_poc_all) +#if __ARM_ARCH == 6 + mcr CP15_DCCIALL + DSB + bx lr +#else mrc CP15_CLIDR(r0) ands r0, r0, #0x07000000 - mov r0, r0, lsr #23 /* Get LoC (naturally aligned) */ beq 4f + mov r0, #0 /* Clean from inner to outer levels */ 1: mcr CP15_CSSELR(r0) /* set cache level */ isb @@ -176,7 +185,7 @@ ASENTRY_NP(dcache_wbinv_poc_all) mov r2, ip /* r2 now contains set way decr */ /* r3 = ways/sets, r2 = way decr, r1 = set decr, r0 and ip are free */ -2: mcr CP15_DCCISW(r3) /* clean & invalidate line */ +2: mcr CP15_DCCISW(r3) /* clean and invalidate line */ movs r0, r3 /* get current way/set */ beq 3f /* at 0 means we are done */ movs r0, r0, lsl #10 /* clear way bits leaving only set bits*/ @@ -191,12 +200,11 @@ ASENTRY_NP(dcache_wbinv_poc_all) ands r1, r1, #0x07000000 mov r1, r1, lsr #23 /* Get LoC (naturally aligned) */ cmp r1, r0 - bgt 1b + bne 1b 4: dsb /* wait for stores to finish */ mov r0, #0 mcr CP15_CSSELR(r0) bx lr +#endif /* __ARM_ARCH == 6 */ END(dcache_wbinv_poc_all) - -#endif /* __ARM_ARCH >= 7 */ From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 02:58:35 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 69605D39; Tue, 30 Dec 2014 02:58:35 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 55C081EDF; Tue, 30 Dec 2014 02:58:35 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBU2wZZ8021166; Tue, 30 Dec 2014 02:58:35 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBU2wZbr021165; Tue, 30 Dec 2014 02:58:35 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201412300258.sBU2wZbr021165@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Tue, 30 Dec 2014 02:58:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276395 - head/sys/arm/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 02:58:35 -0000 Author: ian Date: Tue Dec 30 02:58:34 2014 New Revision: 276395 URL: https://svnweb.freebsd.org/changeset/base/276395 Log: Export MAXCPU to the assembler code, needing by upcoming changes to locore.S. Modified: head/sys/arm/arm/genassym.c Modified: head/sys/arm/arm/genassym.c ============================================================================== --- head/sys/arm/arm/genassym.c Tue Dec 30 02:56:31 2014 (r276394) +++ head/sys/arm/arm/genassym.c Tue Dec 30 02:58:34 2014 (r276395) @@ -143,5 +143,6 @@ ASSYM(P_PROFIL, P_PROFIL); ASSYM(TRAPFRAMESIZE, sizeof(struct trapframe)); ASSYM(MAXCOMLEN, MAXCOMLEN); +ASSYM(MAXCPU, MAXCPU); ASSYM(NIRQ, NIRQ); ASSYM(PCPU_SIZE, sizeof(struct pcpu)); From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 03:17:55 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4DA393E8; Tue, 30 Dec 2014 03:17:55 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 385FB6456B; Tue, 30 Dec 2014 03:17:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBU3Htmv031381; Tue, 30 Dec 2014 03:17:55 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBU3HsXu031379; Tue, 30 Dec 2014 03:17:54 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201412300317.sBU3HsXu031379@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Tue, 30 Dec 2014 03:17:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276396 - head/sys/arm/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 03:17:55 -0000 Author: ian Date: Tue Dec 30 03:17:53 2014 New Revision: 276396 URL: https://svnweb.freebsd.org/changeset/base/276396 Log: Rename locore.S to locore-v4.S and add a new locore-v6.S for starting up armv6/7 systems. We need to use some new armv6/7 features at startup and splitting the implemenations to separate files will be more maintainable than adding even more #ifdef sections to locore.S. Because of the standardized interfaces to cache and MMU operations in armv7, we can tolerate the kernel being entered with caches enabled. This allows running u-boot and loader(8) with caches enabled, and the performance improvement can be dramatic (boot times can be cut from over a minute to under 30 seconds). The new implementation also has more robust cache and mmu sequences for launching AP cores, and it paves the way for upcoming changes to the pmap code which will use the TEX remap feature. Changes in mp_machdep.c work with the new behavior in locore-v6 mp_entry, and also reuse the original boot-time page tables to get transitioned from physical to virtual addressing before installing the normal tables. Submitted by Svatopluk Kraus and Michal Meloun with some changes by me. Added: head/sys/arm/arm/locore-v4.S - copied unchanged from r276388, head/sys/arm/arm/locore.S head/sys/arm/arm/locore-v6.S (contents, props changed) Deleted: head/sys/arm/arm/locore.S Modified: head/sys/arm/arm/mp_machdep.c Copied: head/sys/arm/arm/locore-v4.S (from r276388, head/sys/arm/arm/locore.S) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/arm/arm/locore-v4.S Tue Dec 30 03:17:53 2014 (r276396, copy of r276388, head/sys/arm/arm/locore.S) @@ -0,0 +1,596 @@ +/* $NetBSD: locore.S,v 1.14 2003/04/20 16:21:40 thorpej Exp $ */ + +/*- + * Copyright 2011 Semihalf + * Copyright (C) 1994-1997 Mark Brinicombe + * Copyright (C) 1994 Brini + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by Brini. + * 4. The name of Brini may not be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY BRINI ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL BRINI BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; + * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * + */ + +#include "assym.s" +#include +#include +#include +#include +#include + +__FBSDID("$FreeBSD$"); + +/* + * Sanity check the configuration. + * FLASHADDR and LOADERRAMADDR depend on PHYSADDR in some cases. + * ARMv4 and ARMv5 make assumptions on where they are loaded. + * + * TODO: Fix the ARMv4/v5 case. + */ +#if (defined(FLASHADDR) || defined(LOADERRAMADDR) || !defined(_ARM_ARCH_6)) && \ + !defined(PHYSADDR) +#error PHYSADDR must be defined for this configuration +#endif + +/* What size should this really be ? It is only used by initarm() */ +#define INIT_ARM_STACK_SIZE (2048 * 4) + +#define CPWAIT_BRANCH \ + sub pc, pc, #4 + +#define CPWAIT(tmp) \ + mrc p15, 0, tmp, c2, c0, 0 /* arbitrary read of CP15 */ ;\ + mov tmp, tmp /* wait for it to complete */ ;\ + CPWAIT_BRANCH /* branch to next insn */ + +/* + * This is for libkvm, and should be the address of the beginning + * of the kernel text segment (not necessarily the same as kernbase). + * + * These are being phased out. Newer copies of libkvm don't need these + * values as the information is added to the core file by inspecting + * the running kernel. + */ + .text + .align 0 +#ifdef PHYSADDR +.globl kernbase +.set kernbase,KERNBASE +.globl physaddr +.set physaddr,PHYSADDR +#endif + +/* + * On entry for FreeBSD boot ABI: + * r0 - metadata pointer or 0 (boothowto on AT91's boot2) + * r1 - if (r0 == 0) then metadata pointer + * On entry for Linux boot ABI: + * r0 - 0 + * r1 - machine type (passed as arg2 to initarm) + * r2 - Pointer to a tagged list or dtb image (phys addr) (passed as arg1 initarm) + * + * For both types of boot we gather up the args, put them in a struct arm_boot_params + * structure and pass that to initarm. + */ + .globl btext +btext: +ASENTRY_NP(_start) + STOP_UNWINDING /* Can't unwind into the bootloader! */ + + mov r9, r0 /* 0 or boot mode from boot2 */ + mov r8, r1 /* Save Machine type */ + mov ip, r2 /* Save meta data */ + mov fp, r3 /* Future expansion */ + + /* Make sure interrupts are disabled. */ + mrs r7, cpsr + orr r7, r7, #(PSR_I | PSR_F) + msr cpsr_c, r7 + +#if defined (FLASHADDR) && defined(LOADERRAMADDR) + /* Check if we're running from flash. */ + ldr r7, =FLASHADDR + /* + * If we're running with MMU disabled, test against the + * physical address instead. + */ + mrc p15, 0, r2, c1, c0, 0 + ands r2, r2, #CPU_CONTROL_MMU_ENABLE + ldreq r6, =PHYSADDR + ldrne r6, =LOADERRAMADDR + cmp r7, r6 + bls flash_lower + cmp r7, pc + bhi from_ram + b do_copy + +flash_lower: + cmp r6, pc + bls from_ram +do_copy: + ldr r7, =KERNBASE + adr r1, _start + ldr r0, Lreal_start + ldr r2, Lend + sub r2, r2, r0 + sub r0, r0, r7 + add r0, r0, r6 + mov r4, r0 + bl memcpy + ldr r0, Lram_offset + add pc, r4, r0 +Lram_offset: .word from_ram-_C_LABEL(_start) +from_ram: + nop +#endif + +disable_mmu: + /* Disable MMU for a while */ + mrc p15, 0, r2, c1, c0, 0 + bic r2, r2, #(CPU_CONTROL_MMU_ENABLE | CPU_CONTROL_DC_ENABLE |\ + CPU_CONTROL_WBUF_ENABLE) + bic r2, r2, #(CPU_CONTROL_IC_ENABLE) + bic r2, r2, #(CPU_CONTROL_BPRD_ENABLE) + mcr p15, 0, r2, c1, c0, 0 + + nop + nop + nop + CPWAIT(r0) + +Lunmapped: + /* + * Build page table from scratch. + */ + + /* Find the delta between VA and PA */ + adr r0, Lpagetable + bl translate_va_to_pa + +#ifndef _ARM_ARCH_6 + /* + * Some of the older ports (the various XScale, mostly) assume + * that the memory before the kernel is mapped, and use it for + * the various stacks, page tables, etc. For those CPUs, map the + * 64 first MB of RAM, as it used to be. + */ + /* + * Map PA == VA + */ + ldr r5, =PHYSADDR + mov r1, r5 + mov r2, r5 + /* Map 64MiB, preserved over calls to build_pagetables */ + mov r3, #64 + bl build_pagetables + + /* Create the kernel map to jump to */ + mov r1, r5 + ldr r2, =(KERNBASE) + bl build_pagetables + ldr r5, =(KERNPHYSADDR) +#else + /* + * Map PA == VA + */ + /* Find the start kernels load address */ + adr r5, _start + ldr r2, =(L1_S_OFFSET) + bic r5, r2 + mov r1, r5 + mov r2, r5 + /* Map 64MiB, preserved over calls to build_pagetables */ + mov r3, #64 + bl build_pagetables + + /* Create the kernel map to jump to */ + mov r1, r5 + ldr r2, =(KERNVIRTADDR) + bl build_pagetables +#endif + +#if defined(SOCDEV_PA) && defined(SOCDEV_VA) + /* Create the custom map */ + ldr r1, =SOCDEV_PA + ldr r2, =SOCDEV_VA + bl build_pagetables +#endif + +#if defined(SMP) + orr r0, r0, #2 /* Set TTB shared memory flag */ +#endif + mcr p15, 0, r0, c2, c0, 0 /* Set TTB */ + mcr p15, 0, r0, c8, c7, 0 /* Flush TLB */ + +#if defined(CPU_ARM1136) || defined(CPU_ARM1176) || defined(CPU_CORTEXA) || defined(CPU_MV_PJ4B) || defined(CPU_KRAIT) + mov r0, #0 + mcr p15, 0, r0, c13, c0, 1 /* Set ASID to 0 */ +#endif + + /* Set the Domain Access register. Very important! */ + mov r0, #((DOMAIN_CLIENT << (PMAP_DOMAIN_KERNEL*2)) | DOMAIN_CLIENT) + mcr p15, 0, r0, c3, c0, 0 + /* + * Enable MMU. + * On armv6 enable extended page tables, and set alignment checking + * to modulo-4 (CPU_CONTROL_UNAL_ENABLE) for the ldrd/strd + * instructions emitted by clang. + */ + mrc p15, 0, r0, c1, c0, 0 +#ifdef _ARM_ARCH_6 + orr r0, r0, #(CPU_CONTROL_V6_EXTPAGE | CPU_CONTROL_UNAL_ENABLE) + orr r0, r0, #(CPU_CONTROL_AFLT_ENABLE) + orr r0, r0, #(CPU_CONTROL_AF_ENABLE) +#endif + orr r0, r0, #(CPU_CONTROL_MMU_ENABLE) + mcr p15, 0, r0, c1, c0, 0 + nop + nop + nop + CPWAIT(r0) + +mmu_done: + nop + adr r1, .Lstart + ldmia r1, {r1, r2, sp} /* Set initial stack and */ + sub r2, r2, r1 /* get zero init data */ + mov r3, #0 +.L1: + str r3, [r1], #0x0004 /* get zero init data */ + subs r2, r2, #4 + bgt .L1 + ldr pc, .Lvirt_done + +virt_done: + mov r1, #28 /* loader info size is 28 bytes also second arg */ + subs sp, sp, r1 /* allocate arm_boot_params struct on stack */ + mov r0, sp /* loader info pointer is first arg */ + bic sp, sp, #7 /* align stack to 8 bytes */ + str r1, [r0] /* Store length of loader info */ + str r9, [r0, #4] /* Store r0 from boot loader */ + str r8, [r0, #8] /* Store r1 from boot loader */ + str ip, [r0, #12] /* store r2 from boot loader */ + str fp, [r0, #16] /* store r3 from boot loader */ + str r5, [r0, #20] /* store the physical address */ + adr r4, Lpagetable /* load the pagetable address */ + ldr r5, [r4, #4] + str r5, [r0, #24] /* store the pagetable address */ + mov fp, #0 /* trace back starts here */ + bl _C_LABEL(initarm) /* Off we go */ + + /* init arm will return the new stack pointer. */ + mov sp, r0 + + bl _C_LABEL(mi_startup) /* call mi_startup()! */ + + adr r0, .Lmainreturned + b _C_LABEL(panic) + /* NOTREACHED */ +END(_start) + +#define VA_TO_PA_POINTER(name, table) \ +name: ;\ + .word . ;\ + .word table + +/* + * Returns the physical address of a magic va to pa pointer. + * r0 - The pagetable data pointer. This must be built using the + * VA_TO_PA_POINTER macro. + * e.g. + * VA_TO_PA_POINTER(Lpagetable, pagetable) + * ... + * adr r0, Lpagetable + * bl translate_va_to_pa + * r0 will now contain the physical address of pagetable + * r1, r2 - Trashed + */ +translate_va_to_pa: + ldr r1, [r0] + sub r2, r1, r0 + /* At this point: r2 = VA - PA */ + + /* + * Find the physical address of the table. After these two + * instructions: + * r1 = va(pagetable) + * + * r0 = va(pagetable) - (VA - PA) + * = va(pagetable) - VA + PA + * = pa(pagetable) + */ + ldr r1, [r0, #4] + sub r0, r1, r2 + RET + +/* + * Builds the page table + * r0 - The table base address + * r1 - The physical address (trashed) + * r2 - The virtual address (trashed) + * r3 - The number of 1MiB sections + * r4 - Trashed + * + * Addresses must be 1MiB aligned + */ +build_pagetables: + /* Set the required page attributed */ + ldr r4, =(L1_TYPE_S|L1_S_C|L1_S_AP(AP_KRW)) +#if defined(SMP) + orr r4, #(L1_SHARED) +#endif + orr r1, r4 + + /* Move the virtual address to the correct bit location */ + lsr r2, #(L1_S_SHIFT - 2) + + mov r4, r3 +1: + str r1, [r0, r2] + add r2, r2, #4 + add r1, r1, #(L1_S_SIZE) + adds r4, r4, #-1 + bhi 1b + + RET + +VA_TO_PA_POINTER(Lpagetable, pagetable) + +Lreal_start: + .word _start +Lend: + .word _edata + +.Lstart: + .word _edata + .word _ebss + .word svcstk + INIT_ARM_STACK_SIZE + +.Lvirt_done: + .word virt_done + +.Lmainreturned: + .asciz "main() returned" + .align 0 + + .bss +svcstk: + .space INIT_ARM_STACK_SIZE + +/* + * Memory for the initial pagetable. We are unable to place this in + * the bss as this will be cleared after the table is loaded. + */ + .section ".init_pagetable" + .align 14 /* 16KiB aligned */ +pagetable: + .space L1_TABLE_SIZE + + .text + .align 0 + +.Lcpufuncs: + .word _C_LABEL(cpufuncs) + +#if defined(SMP) + +.Lmpvirt_done: + .word mpvirt_done +VA_TO_PA_POINTER(Lstartup_pagetable_secondary, temp_pagetable) + +ASENTRY_NP(mpentry) + + /* Make sure interrupts are disabled. */ + mrs r7, cpsr + orr r7, r7, #(PSR_I | PSR_F) + msr cpsr_c, r7 + + /* Disable MMU. It should be disabled already, but make sure. */ + mrc p15, 0, r2, c1, c0, 0 + bic r2, r2, #(CPU_CONTROL_MMU_ENABLE | CPU_CONTROL_DC_ENABLE |\ + CPU_CONTROL_WBUF_ENABLE) + bic r2, r2, #(CPU_CONTROL_IC_ENABLE) + bic r2, r2, #(CPU_CONTROL_BPRD_ENABLE) + mcr p15, 0, r2, c1, c0, 0 + nop + nop + nop + CPWAIT(r0) + +#if ARM_MMU_V6 + bl armv6_idcache_inv_all /* Modifies r0 only */ +#elif ARM_MMU_V7 + bl armv7_idcache_inv_all /* Modifies r0-r3, ip */ +#endif + + /* Load the page table physical address */ + adr r0, Lstartup_pagetable_secondary + bl translate_va_to_pa + /* Load the address the secondary page table */ + ldr r0, [r0] + + orr r0, r0, #2 /* Set TTB shared memory flag */ + mcr p15, 0, r0, c2, c0, 0 /* Set TTB */ + mcr p15, 0, r0, c8, c7, 0 /* Flush TLB */ + + mov r0, #0 + mcr p15, 0, r0, c13, c0, 1 /* Set ASID to 0 */ + + /* Set the Domain Access register. Very important! */ + mov r0, #((DOMAIN_CLIENT << (PMAP_DOMAIN_KERNEL*2)) | DOMAIN_CLIENT) + mcr p15, 0, r0, c3, c0, 0 + /* Enable MMU */ + mrc p15, 0, r0, c1, c0, 0 + orr r0, r0, #CPU_CONTROL_V6_EXTPAGE + orr r0, r0, #CPU_CONTROL_AF_ENABLE + orr r0, r0, #(CPU_CONTROL_MMU_ENABLE | CPU_CONTROL_DC_ENABLE |\ + CPU_CONTROL_WBUF_ENABLE) + orr r0, r0, #(CPU_CONTROL_IC_ENABLE) + orr r0, r0, #(CPU_CONTROL_BPRD_ENABLE) + mcr p15, 0, r0, c1, c0, 0 + nop + nop + nop + CPWAIT(r0) + + adr r1, .Lstart + ldmia r1, {r1, r2, sp} /* Set initial stack and */ + mrc p15, 0, r0, c0, c0, 5 + and r0, r0, #15 + mov r1, #2048 + mul r2, r1, r0 + sub sp, sp, r2 + str r1, [sp] + ldr pc, .Lmpvirt_done + +mpvirt_done: + + mov fp, #0 /* trace back starts here */ + bl _C_LABEL(init_secondary) /* Off we go */ + + adr r0, .Lmpreturned + b _C_LABEL(panic) + /* NOTREACHED */ + +.Lmpreturned: + .asciz "init_secondary() returned" + .align 0 +END(mpentry) +#endif + +ENTRY_NP(cpu_halt) + mrs r2, cpsr + bic r2, r2, #(PSR_MODE) + orr r2, r2, #(PSR_SVC32_MODE) + orr r2, r2, #(PSR_I | PSR_F) + msr cpsr_fsxc, r2 + + ldr r4, .Lcpu_reset_address + ldr r4, [r4] + + ldr r0, .Lcpufuncs + mov lr, pc + ldr pc, [r0, #CF_IDCACHE_WBINV_ALL] + mov lr, pc + ldr pc, [r0, #CF_L2CACHE_WBINV_ALL] + + /* + * Load the cpu_reset_needs_v4_MMU_disable flag to determine if it's + * necessary. + */ + + ldr r1, .Lcpu_reset_needs_v4_MMU_disable + ldr r1, [r1] + cmp r1, #0 + mov r2, #0 + + /* + * MMU & IDC off, 32 bit program & data space + * Hurl ourselves into the ROM + */ + mov r0, #(CPU_CONTROL_32BP_ENABLE | CPU_CONTROL_32BD_ENABLE) + mcr p15, 0, r0, c1, c0, 0 + mcrne p15, 0, r2, c8, c7, 0 /* nail I+D TLB on ARMv4 and greater */ + mov pc, r4 + + /* + * _cpu_reset_address contains the address to branch to, to complete + * the cpu reset after turning the MMU off + * This variable is provided by the hardware specific code + */ +.Lcpu_reset_address: + .word _C_LABEL(cpu_reset_address) + + /* + * cpu_reset_needs_v4_MMU_disable contains a flag that signals if the + * v4 MMU disable instruction needs executing... it is an illegal instruction + * on f.e. ARM6/7 that locks up the computer in an endless illegal + * instruction / data-abort / reset loop. + */ +.Lcpu_reset_needs_v4_MMU_disable: + .word _C_LABEL(cpu_reset_needs_v4_MMU_disable) +END(cpu_halt) + + +/* + * setjump + longjmp + */ +ENTRY(setjmp) + stmia r0, {r4-r14} + mov r0, #0x00000000 + RET +END(setjmp) + +ENTRY(longjmp) + ldmia r0, {r4-r14} + mov r0, #0x00000001 + RET +END(longjmp) + + .data + .global _C_LABEL(esym) +_C_LABEL(esym): .word _C_LABEL(end) + +ENTRY_NP(abort) + b _C_LABEL(abort) +END(abort) + +ENTRY_NP(sigcode) + mov r0, sp + add r0, r0, #SIGF_UC + + /* + * Call the sigreturn system call. + * + * We have to load r7 manually rather than using + * "ldr r7, =SYS_sigreturn" to ensure the value of szsigcode is + * correct. Using the alternative places esigcode at the address + * of the data rather than the address one past the data. + */ + + ldr r7, [pc, #12] /* Load SYS_sigreturn */ + swi SYS_sigreturn + + /* Well if that failed we better exit quick ! */ + + ldr r7, [pc, #8] /* Load SYS_exit */ + swi SYS_exit + + /* Branch back to retry SYS_sigreturn */ + b . - 16 +END(sigcode) + .word SYS_sigreturn + .word SYS_exit + + .align 0 + .global _C_LABEL(esigcode) + _C_LABEL(esigcode): + + .data + .global szsigcode +szsigcode: + .long esigcode-sigcode + +/* End of locore.S */ Added: head/sys/arm/arm/locore-v6.S ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/arm/arm/locore-v6.S Tue Dec 30 03:17:53 2014 (r276396) @@ -0,0 +1,537 @@ +/*- + * Copyright 2004-2014 Olivier Houchard + * Copyright 2012-2014 Ian Lepore + * Copyright 2013-2014 Andrew Turner + * Copyright 2014 Svatopluk Kraus + * Copyright 2014 Michal Meloun + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include "assym.s" +#include +#include +#include +#include +#include +#include +#include + +__FBSDID("$FreeBSD$"); + +#ifndef ARM_NEW_PMAP +#define PTE1_OFFSET L1_S_OFFSET +#define PTE1_SHIFT L1_S_SHIFT +#define PTE1_SIZE L1_S_SIZE +#endif + +/* A small statically-allocated stack used only during initarm() and AP startup. */ +#define INIT_ARM_STACK_SIZE 2048 + + .text + .align 0 + +/* + * On entry for FreeBSD boot ABI: + * r0 - metadata pointer or 0 (boothowto on AT91's boot2) + * r1 - if (r0 == 0) then metadata pointer + * On entry for Linux boot ABI: + * r0 - 0 + * r1 - machine type (passed as arg2 to initarm) + * r2 - Pointer to a tagged list or dtb image (phys addr) (passed as arg1 initarm) + * + * For both types of boot we gather up the args, put them in a struct arm_boot_params + * structure and pass that to initarm. + */ + .globl btext +btext: +ASENTRY_NP(_start) + STOP_UNWINDING /* Can't unwind into the bootloader! */ + + /* Make sure interrupts are disabled. */ + cpsid ifa + + mov r8, r0 /* 0 or boot mode from boot2 */ + mov r9, r1 /* Save Machine type */ + mov r10, r2 /* Save meta data */ + mov r11, r3 /* Future expansion */ + + /* + * Check whether data cache is enabled. If it is, then we know + * current tags are valid (not power-on garbage values) and there + * might be dirty lines that need cleaning. Disable cache to prevent + * new lines being allocated, then call wbinv_poc_all to clean it. + */ + mrc CP15_SCTLR(r7) + tst r7, #CPU_CONTROL_DC_ENABLE + beq 1f + bic r7, #CPU_CONTROL_DC_ENABLE + mcr CP15_SCTLR(r7) + ISB + bl dcache_wbinv_poc_all + + /* + * Now there are no dirty lines, but there may still be lines marked + * valid. Disable all caches and the MMU, and invalidate everything + * before setting up new page tables and re-enabling the mmu. + */ +1: + bic r7, #CPU_CONTROL_MMU_ENABLE + bic r7, #CPU_CONTROL_IC_ENABLE + bic r7, #CPU_CONTROL_UNAL_ENABLE + bic r7, #CPU_CONTROL_BPRD_ENABLE + bic r7, #CPU_CONTROL_SW_ENABLE + orr r7, #CPU_CONTROL_AFLT_ENABLE + orr r7, #CPU_CONTROL_VECRELOC + mcr CP15_SCTLR(r7) + ISB + bl dcache_inv_poc_all + mcr CP15_ICIALLU + ISB + + /* + * Build page table from scratch. + */ + + /* Calculate the physical address of the startup pagetable. */ + adr r0, Lpagetable + bl translate_va_to_pa + + /* + * Map PA == VA + */ + /* Find the start kernels load address */ + adr r5, _start + ldr r2, =(PTE1_OFFSET) + bic r5, r2 + mov r1, r5 + mov r2, r5 + /* Map 64MiB, preserved over calls to build_pagetables */ + mov r3, #64 + bl build_pagetables + + /* Create the kernel map to jump to */ + mov r1, r5 + ldr r2, =(KERNVIRTADDR) + bl build_pagetables + +#if defined(SOCDEV_PA) && defined(SOCDEV_VA) + /* Create the custom map used for early_printf(). */ + ldr r1, =SOCDEV_PA + ldr r2, =SOCDEV_VA + bl build_pagetables +#endif + bl init_mmu + + /* Switch to virtual addresses. */ + ldr pc, =1f +1: + + /* Setup stack, clear BSS */ + ldr r1, =.Lstart + ldmia r1, {r1, r2, sp} /* Set initial stack and */ + add sp, sp, #INIT_ARM_STACK_SIZE + sub r2, r2, r1 /* get zero init data */ + mov r3, #0 +2: + str r3, [r1], #0x0004 /* get zero init data */ + subs r2, r2, #4 + bgt 2b + + mov r1, #28 /* loader info size is 28 bytes also second arg */ + subs sp, sp, r1 /* allocate arm_boot_params struct on stack */ + mov r0, sp /* loader info pointer is first arg */ + bic sp, sp, #7 /* align stack to 8 bytes */ + str r1, [r0] /* Store length of loader info */ + str r8, [r0, #4] /* Store r0 from boot loader */ + str r9, [r0, #8] /* Store r1 from boot loader */ + str r10, [r0, #12] /* store r2 from boot loader */ + str r11, [r0, #16] /* store r3 from boot loader */ + str r5, [r0, #20] /* store the physical address */ + adr r4, Lpagetable /* load the pagetable address */ + ldr r5, [r4, #4] + str r5, [r0, #24] /* store the pagetable address */ + mov fp, #0 /* trace back starts here */ + bl _C_LABEL(initarm) /* Off we go */ + + /* init arm will return the new stack pointer. */ + mov sp, r0 + + bl _C_LABEL(mi_startup) /* call mi_startup()! */ + + ldr r0, =.Lmainreturned + b _C_LABEL(panic) + /* NOTREACHED */ +END(_start) + +#define VA_TO_PA_POINTER(name, table) \ +name: ;\ + .word . ;\ + .word table + +/* + * Returns the physical address of a magic va to pa pointer. + * r0 - The pagetable data pointer. This must be built using the + * VA_TO_PA_POINTER macro. + * e.g. + * VA_TO_PA_POINTER(Lpagetable, pagetable) + * ... + * adr r0, Lpagetable + * bl translate_va_to_pa + * r0 will now contain the physical address of pagetable + * r1, r2 - Trashed + */ +translate_va_to_pa: + ldr r1, [r0] + sub r2, r1, r0 + /* At this point: r2 = VA - PA */ + + /* + * Find the physical address of the table. After these two + * instructions: + * r1 = va(pagetable) + * + * r0 = va(pagetable) - (VA - PA) + * = va(pagetable) - VA + PA + * = pa(pagetable) + */ + ldr r1, [r0, #4] + sub r0, r1, r2 + mov pc, lr + +/* + * Init MMU + * r0 - The table base address + */ + +ASENTRY_NP(init_mmu) + + /* Setup TLB and MMU registers */ + mcr CP15_TTBR0(r0) /* Set TTB */ + mov r0, #0 + mcr CP15_CONTEXTIDR(r0) /* Set ASID to 0 */ + + /* Set the Domain Access register */ + mov r0, #((DOMAIN_CLIENT << (PMAP_DOMAIN_KERNEL*2)) | DOMAIN_CLIENT) + mcr CP15_DACR(r0) + +#ifdef ARM_NEW_PMAP + /* + * Set TEX remap registers + * - All is set to uncacheable memory + */ + ldr r0, =0xAAAAA + mrc CP15_PRRR(r0) + mov r0, #0 + mcr CP15_NMRR(r0) +#endif + mcr CP15_TLBIALL /* Flush TLB */ + DSB + ISB + + /* Enable MMU */ + mrc CP15_SCTLR(r0) + orr r0, r0, #CPU_CONTROL_MMU_ENABLE + orr r0, r0, #CPU_CONTROL_V6_EXTPAGE +#ifdef ARM_NEW_PMAP + orr r0, r0, #CPU_CONTROL_TR_ENABLE +#endif + orr r0, r0, #CPU_CONTROL_AF_ENABLE + mcr CP15_SCTLR(r0) + DSB + ISB + mcr CP15_TLBIALL /* Flush TLB */ + mcr CP15_BPIALL /* Flush Branch predictor */ + ISB + mov pc, lr +END(init_mmu) + + +/* + * Init SMP coherent mode, enable caching and switch to final MMU table. + * Called with disabled caches + * r0 - The table base address + * r1 - clear bits for aux register + * r2 - set bits for aux register + */ +ASENTRY_NP(reinit_mmu) + push {r4-r11, lr} + mov r4, r0 + mov r5, r1 + mov r6, r2 + + /* !! Be very paranoid here !! */ + /* !! We cannot write single bit here !! */ + +#if 0 /* XXX writeback shouldn't be necessary */ + /* Write back and invalidate all integrated caches */ + bl dcache_wbinv_poc_all +#else + bl dcache_inv_pou_all +#endif + mcr CP15_ICIALLU + ISB + + /* Set auxiliary register */ + mrc CP15_ACTLR(r7) + bic r8, r7, r5 /* Mask bits */ + eor r8, r8, r6 /* Set bits */ + teq r7, r8 + mcrne CP15_ACTLR(r8) + ISB + + /* Enable caches. */ + mrc CP15_SCTLR(r7) + orr r7, #CPU_CONTROL_DC_ENABLE + orr r7, #CPU_CONTROL_IC_ENABLE + orr r7, #CPU_CONTROL_BPRD_ENABLE + mcr CP15_SCTLR(r7) + DSB + + mcr CP15_TTBR0(r4) /* Set new TTB */ + DSB + ISB + + /* Flush all TLBs */ + mcr CP15_TLBIALL + DSB + ISB + +#if 0 /* XXX writeback shouldn't be necessary */ + /* Write back and invalidate all integrated caches */ + bl dcache_wbinv_poc_all +#else + bl dcache_inv_pou_all +#endif + mcr CP15_ICIALLU + ISB + + pop {r4-r11, pc} +END(reinit_mmu) + + +/* + * Builds the page table + * r0 - The table base address + * r1 - The physical address (trashed) + * r2 - The virtual address (trashed) + * r3 - The number of 1MiB sections + * r4 - Trashed + * + * Addresses must be 1MiB aligned + */ +ASENTRY_NP(build_pagetables) + /* Set the required page attributed */ +#if defined(ARM_NEW_PMAP) + ldr r4, =PTE1_V|PTE1_A|PTE1_AP_KRW|TEX1_CLASS_0 +#elif defined(SMP) + ldr r4, =(L1_TYPE_S|L1_S_C|L1_S_AP(AP_KRW)|L1_SHARED) +#else + ldr r4, =(L1_TYPE_S|L1_S_C|L1_S_AP(AP_KRW)) +#endif + orr r1, r4 + + /* Move the virtual address to the correct bit location */ + lsr r2, #(PTE1_SHIFT - 2) + + mov r4, r3 +1: + str r1, [r0, r2] + add r2, r2, #4 + add r1, r1, #(PTE1_SIZE) + adds r4, r4, #-1 + bhi 1b + + mov pc, lr + +VA_TO_PA_POINTER(Lpagetable, boot_pt1) + + +.Lstart: + .word _edata + .word _ebss + .word svcstk + +.Lmainreturned: + .asciz "main() returned" + .align 0 + + .bss +svcstk: + .space INIT_ARM_STACK_SIZE * MAXCPU + +/* + * Memory for the initial pagetable. We are unable to place this in + * the bss as this will be cleared after the table is loaded. + */ + .section ".init_pagetable" + .align 14 /* 16KiB aligned */ + .globl boot_pt1 +boot_pt1: + .space L1_TABLE_SIZE + + .text + .align 0 + +.Lcpufuncs: + .word _C_LABEL(cpufuncs) + *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 03:19:47 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 69775545; Tue, 30 Dec 2014 03:19:47 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3B96264597; Tue, 30 Dec 2014 03:19:47 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBU3Jlrp031633; Tue, 30 Dec 2014 03:19:47 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBU3Jljm031632; Tue, 30 Dec 2014 03:19:47 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201412300319.sBU3Jljm031632@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Tue, 30 Dec 2014 03:19:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276397 - head/sys/arm/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 03:19:47 -0000 Author: ian Date: Tue Dec 30 03:19:46 2014 New Revision: 276397 URL: https://svnweb.freebsd.org/changeset/base/276397 Log: Add a new locore.S that #includes the right (v4 or v6) implementation. The kernel build machinery really wants the entry point to be in a file named locore.S so doing this avoids a bunch of changes to the build system for relatively little benefit. Added: head/sys/arm/arm/locore.S (contents, props changed) Added: head/sys/arm/arm/locore.S ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/arm/arm/locore.S Tue Dec 30 03:19:46 2014 (r276397) @@ -0,0 +1,41 @@ +/*- + * Copyright (c) 2014 Ian Lepore + * All rights excluded. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +/* + * The kernel build machinery wants the file containing the entry point to be + * named locore.S, but we want separate files for v4 and v6 builds, so just + * include the arch-appropriate file from this properly-named file. + */ + +#include + +#if __ARM_ARCH >= 6 +#include "locore-v6.S" +#else +#include "locore-v4.S" +#endif From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 03:25:45 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 14CA774D; Tue, 30 Dec 2014 03:25:45 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F2B66646AF; Tue, 30 Dec 2014 03:25:44 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBU3Pif6035805; Tue, 30 Dec 2014 03:25:44 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBU3PhfX035798; Tue, 30 Dec 2014 03:25:43 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201412300325.sBU3PhfX035798@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Tue, 30 Dec 2014 03:25:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276398 - in head/contrib/elftoolchain: elfcopy libdwarf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 03:25:45 -0000 Author: emaste Date: Tue Dec 30 03:25:42 2014 New Revision: 276398 URL: https://svnweb.freebsd.org/changeset/base/276398 Log: Update elftoolchain to upstream rev 3136 This fixes two strip(1) issues found during ports exp-run and adds a string hash implementation which significantly speeds up certain operations on objects with large numbers of symbols. This also improves libdwarf handling for stripped objects with .eh_frame or .debug_frame (but not other debug) sections. PR: 196107 Sponsored by: The FreeBSD Foundation Modified: head/contrib/elftoolchain/elfcopy/elfcopy.h head/contrib/elftoolchain/elfcopy/sections.c head/contrib/elftoolchain/elfcopy/segments.c head/contrib/elftoolchain/elfcopy/symbols.c head/contrib/elftoolchain/libdwarf/libdwarf_abbrev.c head/contrib/elftoolchain/libdwarf/libdwarf_info.c head/contrib/elftoolchain/libdwarf/libdwarf_init.c Directory Properties: head/contrib/elftoolchain/ (props changed) Modified: head/contrib/elftoolchain/elfcopy/elfcopy.h ============================================================================== --- head/contrib/elftoolchain/elfcopy/elfcopy.h Tue Dec 30 03:19:46 2014 (r276397) +++ head/contrib/elftoolchain/elfcopy/elfcopy.h Tue Dec 30 03:25:42 2014 (r276398) @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: elfcopy.h 2970 2013-12-01 15:22:12Z kaiwang27 $ + * $Id: elfcopy.h 3134 2014-12-23 10:43:59Z kaiwang27 $ */ #include @@ -115,6 +115,7 @@ struct segment; /* Internal data structure for sections. */ struct section { struct segment *seg; /* containing segment */ + struct segment *seg_tls; /* tls segment */ const char *name; /* section name */ char *newname; /* new section name */ Elf_Scn *is; /* input scn */ Modified: head/contrib/elftoolchain/elfcopy/sections.c ============================================================================== --- head/contrib/elftoolchain/elfcopy/sections.c Tue Dec 30 03:19:46 2014 (r276397) +++ head/contrib/elftoolchain/elfcopy/sections.c Tue Dec 30 03:25:42 2014 (r276398) @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2007-2011 Kai Wang + * Copyright (c) 2007-2011,2014 Kai Wang * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -35,7 +35,7 @@ #include "elfcopy.h" -ELFTC_VCSID("$Id: sections.c 3126 2014-12-21 08:03:31Z kaiwang27 $"); +ELFTC_VCSID("$Id: sections.c 3134 2014-12-23 10:43:59Z kaiwang27 $"); static void add_gnu_debuglink(struct elfcopy *ecp); static uint32_t calc_crc32(const char *p, size_t len, uint32_t crc); @@ -485,7 +485,10 @@ insert_shtab(struct elfcopy *ecp, int ta if ((shtab = calloc(1, sizeof(*shtab))) == NULL) errx(EXIT_FAILURE, "calloc failed"); if (!tail) { - /* shoff of input object is used as a hint. */ + /* + * "shoff" of input object is used as a hint for section + * resync later. + */ if (gelf_getehdr(ecp->ein, &ieh) == NULL) errx(EXIT_FAILURE, "gelf_getehdr() failed: %s", elf_errmsg(-1)); @@ -764,6 +767,15 @@ resync_sections(struct elfcopy *ecp) first = 0; } + /* + * Ignore TLS sections with load address 0 and without + * content. We don't need to adjust their file offset or + * VMA, only the size matters. + */ + if (s->seg_tls != NULL && s->type == SHT_NOBITS && + s->off == 0) + continue; + /* Align section offset. */ if (off <= s->off) { if (!s->loadable) @@ -1050,6 +1062,17 @@ copy_data(struct section *s) od->d_size = id->d_size; od->d_version = id->d_version; } + + /* + * Alignment Fixup. libelf does not allow the alignment for + * Elf_Data descriptor to be set to 0. In this case we workaround + * it by setting the alignment to 1. + * + * According to the ELF ABI, alignment 0 and 1 has the same + * meaning: the section has no alignment constraints. + */ + if (od->d_align == 0) + od->d_align = 1; } struct section * Modified: head/contrib/elftoolchain/elfcopy/segments.c ============================================================================== --- head/contrib/elftoolchain/elfcopy/segments.c Tue Dec 30 03:19:46 2014 (r276397) +++ head/contrib/elftoolchain/elfcopy/segments.c Tue Dec 30 03:25:42 2014 (r276398) @@ -35,7 +35,7 @@ #include "elfcopy.h" -ELFTC_VCSID("$Id: segments.c 3113 2014-12-20 08:33:29Z kaiwang27 $"); +ELFTC_VCSID("$Id: segments.c 3134 2014-12-23 10:43:59Z kaiwang27 $"); static void insert_to_inseg_list(struct segment *seg, struct section *sec); @@ -86,6 +86,8 @@ add_to_inseg_list(struct elfcopy *ecp, s insert_to_inseg_list(seg, s); if (seg->type == PT_LOAD) s->seg = seg; + else if (seg->type == PT_TLS) + s->seg_tls = seg; s->lma = seg->addr + (s->off - seg->off); loadable = 1; } Modified: head/contrib/elftoolchain/elfcopy/symbols.c ============================================================================== --- head/contrib/elftoolchain/elfcopy/symbols.c Tue Dec 30 03:19:46 2014 (r276397) +++ head/contrib/elftoolchain/elfcopy/symbols.c Tue Dec 30 03:25:42 2014 (r276398) @@ -34,7 +34,7 @@ #include "elfcopy.h" -ELFTC_VCSID("$Id: symbols.c 3019 2014-04-17 14:53:40Z jkoshy $"); +ELFTC_VCSID("$Id: symbols.c 3135 2014-12-24 08:22:43Z kaiwang27 $"); /* Symbol table buffer structure. */ struct symbuf { @@ -46,12 +46,25 @@ struct symbuf { size_t gcap, lcap; /* buffer capacities. */ }; +struct sthash { + LIST_ENTRY(sthash) sh_next; + size_t sh_off; +}; +typedef LIST_HEAD(,sthash) hash_head; +#define STHASHSIZE 65536 + +struct strimpl { + char *buf; /* string table */ + size_t sz; /* entries */ + size_t cap; /* buffer capacity */ + hash_head hash[STHASHSIZE]; +}; + + /* String table buffer structure. */ struct strbuf { - char *l; /* local symbol string table */ - char *g; /* global symbol string table */ - size_t lsz, gsz; /* size of each kind */ - size_t gcap, lcap; /* buffer capacities. */ + struct strimpl l; /* local symbols */ + struct strimpl g; /* global symbols */ }; static int is_debug_symbol(unsigned char st_info); @@ -62,10 +75,12 @@ static int is_needed_symbol(struct elfco static int is_remove_symbol(struct elfcopy *ecp, size_t sc, int i, GElf_Sym *s, const char *name); static int is_weak_symbol(unsigned char st_info); -static int lookup_exact_string(const char *buf, size_t sz, const char *s); +static int lookup_exact_string(hash_head *hash, const char *buf, + const char *s); static int generate_symbols(struct elfcopy *ecp); static void mark_symbols(struct elfcopy *ecp, size_t sc); static int match_wildcard(const char *name, const char *pattern); +uint32_t str_hash(const char *s); /* Convenient bit vector operation macros. */ #define BIT_SET(v, n) (v[(n)>>3] |= 1U << ((n) & 7)) @@ -316,10 +331,10 @@ generate_symbols(struct elfcopy *ecp) if ((st_buf = calloc(1, sizeof(*st_buf))) == NULL) err(EXIT_FAILURE, "calloc failed"); sy_buf->gcap = sy_buf->lcap = 64; - st_buf->gcap = 256; - st_buf->lcap = 64; - st_buf->lsz = 1; /* '\0' at start. */ - st_buf->gsz = 0; + st_buf->g.cap = 256; + st_buf->l.cap = 64; + st_buf->l.sz = 1; /* '\0' at start. */ + st_buf->g.sz = 0; ecp->symtab->sz = 0; ecp->strtab->sz = 0; @@ -541,10 +556,10 @@ generate_symbols(struct elfcopy *ecp) /* Update st_name. */ if (ec == ELFCLASS32) sy_buf->g32[ecp->symndx[i]].st_name += - st_buf->lsz; + st_buf->l.sz; else sy_buf->g64[ecp->symndx[i]].st_name += - st_buf->lsz; + st_buf->l.sz; /* Update index map. */ ecp->symndx[i] += sy_buf->nls; @@ -633,6 +648,8 @@ free_symtab(struct elfcopy *ecp) { struct symbuf *sy_buf; struct strbuf *st_buf; + struct sthash *sh, *shtmp; + int i; if (ecp->symtab != NULL && ecp->symtab->buf != NULL) { sy_buf = ecp->symtab->buf; @@ -648,10 +665,22 @@ free_symtab(struct elfcopy *ecp) if (ecp->strtab != NULL && ecp->strtab->buf != NULL) { st_buf = ecp->strtab->buf; - if (st_buf->l != NULL) - free(st_buf->l); - if (st_buf->g != NULL) - free(st_buf->g); + if (st_buf->l.buf != NULL) + free(st_buf->l.buf); + if (st_buf->g.buf != NULL) + free(st_buf->g.buf); + for (i = 0; i < STHASHSIZE; i++) { + LIST_FOREACH_SAFE(sh, &st_buf->l.hash[i], sh_next, + shtmp) { + LIST_REMOVE(sh, sh_next); + free(sh); + } + LIST_FOREACH_SAFE(sh, &st_buf->g.hash[i], sh_next, + shtmp) { + LIST_REMOVE(sh, sh_next); + free(sh); + } + } } } @@ -689,10 +718,10 @@ create_external_symtab(struct elfcopy *e if ((st_buf = calloc(1, sizeof(*st_buf))) == NULL) err(EXIT_FAILURE, "calloc failed"); sy_buf->gcap = sy_buf->lcap = 64; - st_buf->gcap = 256; - st_buf->lcap = 64; - st_buf->lsz = 1; /* '\0' at start. */ - st_buf->gsz = 0; + st_buf->g.cap = 256; + st_buf->l.cap = 64; + st_buf->l.sz = 1; /* '\0' at start. */ + st_buf->g.sz = 0; ecp->symtab->sz = 0; ecp->strtab->sz = 0; @@ -729,6 +758,8 @@ add_to_symtab(struct elfcopy *ecp, const { struct symbuf *sy_buf; struct strbuf *st_buf; + struct sthash *sh; + uint32_t hash; int pos; /* @@ -761,32 +792,39 @@ add_to_symtab(struct elfcopy *ecp, const else \ sy_buf->B##SZ[sy_buf->n##B##s].st_shndx = \ ecp->secndx[st_shndx]; \ - if (st_buf->B == NULL) { \ - st_buf->B = calloc(st_buf->B##cap, sizeof(*st_buf->B)); \ - if (st_buf->B == NULL) \ + if (st_buf->B.buf == NULL) { \ + st_buf->B.buf = calloc(st_buf->B.cap, \ + sizeof(*st_buf->B.buf)); \ + if (st_buf->B.buf == NULL) \ err(EXIT_FAILURE, "malloc failed"); \ } \ if (name != NULL && *name != '\0') { \ - pos = lookup_exact_string(st_buf->B, \ - st_buf->B##sz, name); \ + pos = lookup_exact_string(st_buf->B.hash, st_buf->B.buf,\ + name); \ if (pos != -1) \ sy_buf->B##SZ[sy_buf->n##B##s].st_name = pos; \ else { \ sy_buf->B##SZ[sy_buf->n##B##s].st_name = \ - st_buf->B##sz; \ - while (st_buf->B##sz + strlen(name) >= \ - st_buf->B##cap - 1) { \ - st_buf->B##cap *= 2; \ - st_buf->B = realloc(st_buf->B, \ - st_buf->B##cap); \ - if (st_buf->B == NULL) \ + st_buf->B.sz; \ + while (st_buf->B.sz + strlen(name) >= \ + st_buf->B.cap - 1) { \ + st_buf->B.cap *= 2; \ + st_buf->B.buf = realloc(st_buf->B.buf, \ + st_buf->B.cap); \ + if (st_buf->B.buf == NULL) \ err(EXIT_FAILURE, \ "realloc failed"); \ } \ - strncpy(&st_buf->B[st_buf->B##sz], name, \ + if ((sh = malloc(sizeof(*sh))) == NULL) \ + err(EXIT_FAILURE, "malloc failed"); \ + sh->sh_off = st_buf->B.sz; \ + hash = str_hash(name); \ + LIST_INSERT_HEAD(&st_buf->B.hash[hash], sh, \ + sh_next); \ + strncpy(&st_buf->B.buf[st_buf->B.sz], name, \ strlen(name)); \ - st_buf->B[st_buf->B##sz + strlen(name)] = '\0'; \ - st_buf->B##sz += strlen(name) + 1; \ + st_buf->B.buf[st_buf->B.sz + strlen(name)] = '\0'; \ + st_buf->B.sz += strlen(name) + 1; \ } \ } else \ sy_buf->B##SZ[sy_buf->n##B##s].st_name = 0; \ @@ -811,7 +849,7 @@ add_to_symtab(struct elfcopy *ecp, const /* Update section size. */ ecp->symtab->sz = (sy_buf->nls + sy_buf->ngs) * (ecp->oec == ELFCLASS32 ? sizeof(Elf32_Sym) : sizeof(Elf64_Sym)); - ecp->strtab->sz = st_buf->lsz + st_buf->gsz; + ecp->strtab->sz = st_buf->l.sz + st_buf->g.sz; #undef _ADDSYM } @@ -831,9 +869,9 @@ finalize_external_symtab(struct elfcopy st_buf = ecp->strtab->buf; for (i = 0; (size_t) i < sy_buf->ngs; i++) { if (ecp->oec == ELFCLASS32) - sy_buf->g32[i].st_name += st_buf->lsz; + sy_buf->g32[i].st_name += st_buf->l.sz; else - sy_buf->g64[i].st_name += st_buf->lsz; + sy_buf->g64[i].st_name += st_buf->l.sz; } } @@ -920,19 +958,19 @@ create_symtab_data(struct elfcopy *ecp) elf_errmsg(-1)); lstdata->d_align = 1; lstdata->d_off = 0; - lstdata->d_buf = st_buf->l; - lstdata->d_size = st_buf->lsz; + lstdata->d_buf = st_buf->l.buf; + lstdata->d_size = st_buf->l.sz; lstdata->d_type = ELF_T_BYTE; lstdata->d_version = EV_CURRENT; - if (st_buf->gsz > 0) { + if (st_buf->g.sz > 0) { if ((gstdata = elf_newdata(st->os)) == NULL) errx(EXIT_FAILURE, "elf_newdata() failed: %s.", elf_errmsg(-1)); gstdata->d_align = 1; gstdata->d_off = lstdata->d_size; - gstdata->d_buf = st_buf->g; - gstdata->d_size = st_buf->gsz; + gstdata->d_buf = st_buf->g.buf; + gstdata->d_size = st_buf->g.sz; gstdata->d_type = ELF_T_BYTE; gstdata->d_version = EV_CURRENT; } @@ -1022,18 +1060,25 @@ lookup_symop_list(struct elfcopy *ecp, c } static int -lookup_exact_string(const char *buf, size_t sz, const char *s) +lookup_exact_string(hash_head *buckets, const char *buf, const char *s) { - const char *b; - size_t slen; - - slen = strlen(s); - for (b = buf; b < buf + sz; b += strlen(b) + 1) { - if (strlen(b) != slen) - continue; - if (!strcmp(b, s)) - return (b - buf); - } + struct sthash *sh; + uint32_t hash; + hash = str_hash(s); + LIST_FOREACH(sh, &buckets[hash], sh_next) + if (strcmp(buf + sh->sh_off, s) == 0) + return sh->sh_off; return (-1); } + +uint32_t +str_hash(const char *s) +{ + uint32_t hash; + + for (hash = 2166136261; *s; s++) + hash = (hash ^ *s) * 16777619; + + return (hash & (STHASHSIZE - 1)); +} Modified: head/contrib/elftoolchain/libdwarf/libdwarf_abbrev.c ============================================================================== --- head/contrib/elftoolchain/libdwarf/libdwarf_abbrev.c Tue Dec 30 03:19:46 2014 (r276397) +++ head/contrib/elftoolchain/libdwarf/libdwarf_abbrev.c Tue Dec 30 03:25:42 2014 (r276398) @@ -27,7 +27,7 @@ #include "_libdwarf.h" -ELFTC_VCSID("$Id: libdwarf_abbrev.c 2070 2011-10-27 03:05:32Z jkoshy $"); +ELFTC_VCSID("$Id: libdwarf_abbrev.c 3136 2014-12-24 16:04:38Z kaiwang27 $"); int _dwarf_abbrev_add(Dwarf_CU cu, uint64_t entry, uint64_t tag, uint8_t children, @@ -180,7 +180,9 @@ _dwarf_abbrev_find(Dwarf_CU cu, uint64_t /* Load and search the abbrev table. */ ds = _dwarf_find_section(cu->cu_dbg, ".debug_abbrev"); - assert(ds != NULL); + if (ds == NULL) + return (DW_DLE_NO_ENTRY); + offset = cu->cu_abbrev_offset_cur; while (offset < ds->ds_size) { ret = _dwarf_abbrev_parse(cu->cu_dbg, cu, &offset, &ab, error); Modified: head/contrib/elftoolchain/libdwarf/libdwarf_info.c ============================================================================== --- head/contrib/elftoolchain/libdwarf/libdwarf_info.c Tue Dec 30 03:19:46 2014 (r276397) +++ head/contrib/elftoolchain/libdwarf/libdwarf_info.c Tue Dec 30 03:25:42 2014 (r276398) @@ -27,7 +27,7 @@ #include "_libdwarf.h" -ELFTC_VCSID("$Id: libdwarf_info.c 3041 2014-05-18 15:11:03Z kaiwang27 $"); +ELFTC_VCSID("$Id: libdwarf_info.c 3136 2014-12-24 16:04:38Z kaiwang27 $"); int _dwarf_info_first_cu(Dwarf_Debug dbg, Dwarf_Error *error) @@ -153,7 +153,8 @@ _dwarf_info_load(Dwarf_Debug dbg, Dwarf_ return (ret); offset = dbg->dbg_info_off; ds = dbg->dbg_info_sec; - assert(ds != NULL); + if (ds == NULL) + return (DW_DLE_NO_ENTRY); } else { if (dbg->dbg_types_loaded) return (ret); Modified: head/contrib/elftoolchain/libdwarf/libdwarf_init.c ============================================================================== --- head/contrib/elftoolchain/libdwarf/libdwarf_init.c Tue Dec 30 03:19:46 2014 (r276397) +++ head/contrib/elftoolchain/libdwarf/libdwarf_init.c Tue Dec 30 03:25:42 2014 (r276398) @@ -26,7 +26,7 @@ #include "_libdwarf.h" -ELFTC_VCSID("$Id: libdwarf_init.c 3061 2014-06-02 00:42:41Z kaiwang27 $"); +ELFTC_VCSID("$Id: libdwarf_init.c 3136 2014-12-24 16:04:38Z kaiwang27 $"); static int _dwarf_consumer_init(Dwarf_Debug dbg, Dwarf_Error *error) @@ -93,12 +93,7 @@ _dwarf_consumer_init(Dwarf_Debug dbg, Dw } dbg->dbg_section[cnt].ds_name = NULL; - if (_dwarf_find_section(dbg, ".debug_abbrev") == NULL || - ((dbg->dbg_info_sec = _dwarf_find_section(dbg, ".debug_info")) == - NULL)) { - DWARF_SET_ERROR(dbg, error, DW_DLE_DEBUG_INFO_NULL); - return (DW_DLE_DEBUG_INFO_NULL); - } + dbg->dbg_info_sec = _dwarf_find_section(dbg, ".debug_info"); /* Try to find the optional DWARF4 .debug_types section. */ dbg->dbg_types_sec = _dwarf_find_next_types_section(dbg, NULL); From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 03:35:27 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BB836C42; Tue, 30 Dec 2014 03:35:27 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A21C564876; Tue, 30 Dec 2014 03:35:27 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBU3ZRVM040534; Tue, 30 Dec 2014 03:35:27 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBU3ZR6X040533; Tue, 30 Dec 2014 03:35:27 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201412300335.sBU3ZR6X040533@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Tue, 30 Dec 2014 03:35:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276400 - head/release X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 03:35:27 -0000 Author: gjb Date: Tue Dec 30 03:35:26 2014 New Revision: 276400 URL: https://svnweb.freebsd.org/changeset/base/276400 Log: Use the correct loader.conf(5) entry for deferring the mountroot prompt. Prodded by: ian Sponsored by: The FreeBSD Foundation Modified: head/release/Makefile Modified: head/release/Makefile ============================================================================== --- head/release/Makefile Tue Dec 30 03:31:42 2014 (r276399) +++ head/release/Makefile Tue Dec 30 03:35:26 2014 (r276400) @@ -201,7 +201,7 @@ system: packagesystem echo sendmail_enable=\"NONE\" > release/etc/rc.conf echo hostid_enable=\"NO\" >> release/etc/rc.conf echo debug.witness.trace=0 >> release/etc/sysctl.conf - echo kern.cam.boot_delay=\"10000\" >> release/boot/loader.conf + echo vfs.mountroot.timeout=\"10\" >> release/boot/loader.conf cp ${.CURDIR}/rc.local release/etc touch ${.TARGET} @@ -227,7 +227,7 @@ bootonly: packagesystem echo sendmail_enable=\"NONE\" > bootonly/etc/rc.conf echo hostid_enable=\"NO\" >> bootonly/etc/rc.conf echo debug.witness.trace=0 >> bootonly/etc/sysctl.conf - echo kern.cam.boot_delay=\"10000\" >> bootonly/boot/loader.conf + echo vfs.mountroot.timeout=\"10\" >> bootonly/boot/loader.conf cp ${.CURDIR}/rc.local bootonly/etc dvd: @@ -250,7 +250,7 @@ dvd: echo sendmail_enable=\"NONE\" > ${.TARGET}/etc/rc.conf echo hostid_enable=\"NO\" >> ${.TARGET}/etc/rc.conf echo debug.witness.trace=0 >> ${.TARGET}/etc/sysctl.conf - echo kern.cam.boot_delay=\"10000\" >> ${.TARGET}/boot/loader.conf + echo vfs.mountroot.timeout=\"10\" >> ${.TARGET}/boot/loader.conf cp ${.CURDIR}/rc.local ${.TARGET}/etc touch ${.TARGET} From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 07:08:31 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9107D55F; Tue, 30 Dec 2014 07:08:31 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7CCEE2678; Tue, 30 Dec 2014 07:08:31 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBU78VMw036254; Tue, 30 Dec 2014 07:08:31 GMT (envelope-from neel@FreeBSD.org) Received: (from neel@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBU78VS1036253; Tue, 30 Dec 2014 07:08:31 GMT (envelope-from neel@FreeBSD.org) Message-Id: <201412300708.sBU78VS1036253@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: neel set sender to neel@FreeBSD.org using -f From: Neel Natu Date: Tue, 30 Dec 2014 07:08:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276402 - head/sys/amd64/vmm/amd X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 07:08:31 -0000 Author: neel Date: Tue Dec 30 07:08:30 2014 New Revision: 276402 URL: https://svnweb.freebsd.org/changeset/base/276402 Log: Remove "svn:mergeinfo" property that was dragged along when these files were svn copied in r273375. Suggested by: ngie, gjb Modified: Directory Properties: head/sys/amd64/vmm/amd/npt.c (props changed) head/sys/amd64/vmm/amd/npt.h (props changed) head/sys/amd64/vmm/amd/svm.c (props changed) head/sys/amd64/vmm/amd/svm.h (props changed) head/sys/amd64/vmm/amd/svm_genassym.c (props changed) head/sys/amd64/vmm/amd/svm_msr.c (props changed) head/sys/amd64/vmm/amd/svm_msr.h (props changed) head/sys/amd64/vmm/amd/svm_softc.h (props changed) head/sys/amd64/vmm/amd/svm_support.S (props changed) head/sys/amd64/vmm/amd/vmcb.c (props changed) head/sys/amd64/vmm/amd/vmcb.h (props changed) From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 08:33:52 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1140291D; Tue, 30 Dec 2014 08:33:52 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F0DBF35BB; Tue, 30 Dec 2014 08:33:51 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBU8XpPM078447; Tue, 30 Dec 2014 08:33:51 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBU8Xp55078446; Tue, 30 Dec 2014 08:33:51 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201412300833.sBU8Xp55078446@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Tue, 30 Dec 2014 08:33:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276404 - head/sys/dev/usb/controller X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 08:33:52 -0000 Author: hselasky Date: Tue Dec 30 08:33:51 2014 New Revision: 276404 URL: https://svnweb.freebsd.org/changeset/base/276404 Log: Add missed flushing of data which can happen when "xhci_configure_mask()" is called from "xhci_configure_reset_endpoint()". Ensure the 3-strikes error feature is always enabled except for ISOCHRONOUS transfers. MFC after: 1 week Suggested by: marius@ Modified: head/sys/dev/usb/controller/xhci.c Modified: head/sys/dev/usb/controller/xhci.c ============================================================================== --- head/sys/dev/usb/controller/xhci.c Tue Dec 30 08:24:14 2014 (r276403) +++ head/sys/dev/usb/controller/xhci.c Tue Dec 30 08:33:51 2014 (r276404) @@ -2283,6 +2283,7 @@ xhci_configure_mask(struct usb_device *u temp |= XHCI_SCTX_0_CTX_NUM_SET(x + 1); xhci_ctx_set_le32(sc, &pinp->ctx_slot.dwSctx0, temp); } + usb_pc_cpu_flush(&sc->sc_hw.devs[index].input_pc); return (0); } @@ -2387,10 +2388,14 @@ xhci_configure_endpoint(struct usb_devic XHCI_EPCTX_1_MAXB_SET(max_packet_count) | XHCI_EPCTX_1_MAXP_SIZE_SET(max_packet_size); - if ((udev->parent_hs_hub != NULL) || (udev->address != 0)) { - if (type != UE_ISOCHRONOUS) - temp |= XHCI_EPCTX_1_CERR_SET(3); - } + /* + * Always enable the "three strikes and you are gone" feature + * except for ISOCHRONOUS endpoints. This is suggested by + * section 4.3.3 in the XHCI specification about device slot + * initialisation. + */ + if (type != UE_ISOCHRONOUS) + temp |= XHCI_EPCTX_1_CERR_SET(3); switch (type) { case UE_CONTROL: From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 08:34:27 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 56033A8D for ; Tue, 30 Dec 2014 08:34:27 +0000 (UTC) Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1A66D35CD for ; Tue, 30 Dec 2014 08:34:26 +0000 (UTC) Received: from compute6.internal (compute6.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id 691F220B45 for ; Tue, 30 Dec 2014 03:34:25 -0500 (EST) Received: from frontend1 ([10.202.2.160]) by compute6.internal (MEProxy); Tue, 30 Dec 2014 03:34:25 -0500 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=fastmail.net; h= x-sasl-enc:message-id:date:from:mime-version:to:subject :references:in-reply-to:content-type:content-transfer-encoding; s=mesmtp; bh=2Nlv8oGsbY8CmADNubbXd9rHNHg=; b=DbyhpJv0jLWgFrJLvy VzQUz6dUBFrFWZ6y7o+ElEmtGZ4EdtLM5DHIs5Wrq4Qx3UIY2MeBuupNDa2l/Czo 5HhAomNzDgLikr9YNot+a9gD2Pr7bSfQgUrABPUFxUanSY5ytVRszWXVAF4Lw6MU +Frd4zQs3JUDxrLkiOGsecKH4= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= messagingengine.com; h=x-sasl-enc:message-id:date:from :mime-version:to:subject:references:in-reply-to:content-type :content-transfer-encoding; s=smtpout; bh=2Nlv8oGsbY8CmADNubbXd9 rHNHg=; b=GAxKTsxoJoJsd4pZfpeZ/PpHqo31QFzM0+8DH/QHjXPJ4vYNSOza5U U+7mt5XzhoR6U3NYFE8lF2FE3tMoKpzS83F+wwhRQoTGSXwTKjTM8riBZOZSZkHK /FiVXutZ21i3Co/ftTa/l64k5n+Th2veWeG/Kp0CQ3CU4u18/DGUA= X-Sasl-enc: Ysk8MvzYrSJdj9o3uBb5g1IYutppRztj4vtAIedpOgNL 1419928465 Received: from [10.106.39.117] (unknown [46.233.112.192]) by mail.messagingengine.com (Postfix) with ESMTPA id 8283FC00283; Tue, 30 Dec 2014 03:34:24 -0500 (EST) Message-ID: <54A26390.8030609@fastmail.net> Date: Tue, 30 Dec 2014 08:34:24 +0000 From: Bruce Simpson User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 MIME-Version: 1.0 To: Dmitry Morozovsky , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r276083 - head/etc References: <201412222126.sBMLQo7w070013@svn.freebsd.org> In-Reply-To: <201412222126.sBMLQo7w070013@svn.freebsd.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 08:34:27 -0000 On 22/12/2014 21:26, Dmitry Morozovsky wrote: > Log: > Add VAMI (VMware Appliance Management Interface) port. > This is vApp / VMware Studio related; any plans to get FreeBSD guests working? From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 08:50:09 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 07296F51; Tue, 30 Dec 2014 08:50:09 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CD183372C; Tue, 30 Dec 2014 08:50:08 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBU8o8mv084261; Tue, 30 Dec 2014 08:50:08 GMT (envelope-from royger@FreeBSD.org) Received: (from royger@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBU8o85h084260; Tue, 30 Dec 2014 08:50:08 GMT (envelope-from royger@FreeBSD.org) Message-Id: <201412300850.sBU8o85h084260@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: royger set sender to royger@FreeBSD.org using -f From: Roger Pau Monné Date: Tue, 30 Dec 2014 08:50:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276405 - head/sys/dev/vt/hw/efifb X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 08:50:09 -0000 Author: royger Date: Tue Dec 30 08:50:07 2014 New Revision: 276405 URL: https://svnweb.freebsd.org/changeset/base/276405 Log: Partially revert "vt: register the memory regions used by the vt drivers" Revert the EFI part of r276064 until I can test it properly on a real EFI system. This was causing problems to people booting using UEFI and vt. Reported by: O. Hartmann Modified: head/sys/dev/vt/hw/efifb/efifb.c Modified: head/sys/dev/vt/hw/efifb/efifb.c ============================================================================== --- head/sys/dev/vt/hw/efifb/efifb.c Tue Dec 30 08:33:51 2014 (r276404) +++ head/sys/dev/vt/hw/efifb/efifb.c Tue Dec 30 08:50:07 2014 (r276405) @@ -37,9 +37,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include -#include -#include #include "opt_platform.h" @@ -182,53 +179,3 @@ vt_efifb_remap(void *xinfo) info->fb_size, VM_MEMATTR_WRITE_COMBINING); } -/* Dummy NewBus functions to reserve the resources used by the efifb driver */ -static void -vtefifb_identify(driver_t *driver, device_t parent) -{ - - if (local_info.fb_pbase == 0 || local_info.fb_size == 0) - return; - - if (BUS_ADD_CHILD(parent, 0, driver->name, 0) == NULL) - panic("Unable to attach vt_efifb console"); -} - -static int -vtefifb_probe(device_t dev) -{ - - device_set_desc(dev, "vt_efifb driver"); - return (BUS_PROBE_NOWILDCARD); -} - -static int -vtefifb_attach(device_t dev) -{ - struct resource *pseudo_phys_res; - int res_id; - - res_id = 0; - pseudo_phys_res = bus_alloc_resource(dev, SYS_RES_MEMORY, - &res_id, local_info.fb_pbase, - local_info.fb_pbase + local_info.fb_size, - local_info.fb_size, RF_ACTIVE); - if (pseudo_phys_res == NULL) - panic("Unable to reserve vt_efifb memory"); - return (0); -} - -/*-------------------- Private Device Attachment Data -----------------------*/ -static device_method_t vtefifb_methods[] = { - /* Device interface */ - DEVMETHOD(device_identify, vtefifb_identify), - DEVMETHOD(device_probe, vtefifb_probe), - DEVMETHOD(device_attach, vtefifb_attach), - - DEVMETHOD_END -}; - -DEFINE_CLASS_0(vtefifb, vtefifb_driver, vtefifb_methods, 0); -devclass_t vtefifb_devclass; - -DRIVER_MODULE(vtefifb, nexus, vtefifb_driver, vtefifb_devclass, NULL, NULL); From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 08:50:52 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 344CB118; Tue, 30 Dec 2014 08:50:52 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 20232373B; Tue, 30 Dec 2014 08:50:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBU8opS2086733; Tue, 30 Dec 2014 08:50:51 GMT (envelope-from royger@FreeBSD.org) Received: (from royger@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBU8oplE086732; Tue, 30 Dec 2014 08:50:51 GMT (envelope-from royger@FreeBSD.org) Message-Id: <201412300850.sBU8oplE086732@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: royger set sender to royger@FreeBSD.org using -f From: Roger Pau Monné Date: Tue, 30 Dec 2014 08:50:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276406 - head/sys/dev/vt/hw/vga X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 08:50:52 -0000 Author: royger Date: Tue Dec 30 08:50:50 2014 New Revision: 276406 URL: https://svnweb.freebsd.org/changeset/base/276406 Log: vt_vga: fix an off-by-one error This correctly sets the end of the memory region registered by vt_vga. Reported by: marius Modified: head/sys/dev/vt/hw/vga/vt_vga.c Modified: head/sys/dev/vt/hw/vga/vt_vga.c ============================================================================== --- head/sys/dev/vt/hw/vga/vt_vga.c Tue Dec 30 08:50:07 2014 (r276405) +++ head/sys/dev/vt/hw/vga/vt_vga.c Tue Dec 30 08:50:50 2014 (r276406) @@ -1275,7 +1275,7 @@ vtvga_attach(device_t dev) res_id = 0; pseudo_phys_res = bus_alloc_resource(dev, SYS_RES_MEMORY, - &res_id, VGA_MEM_BASE, VGA_MEM_BASE + VGA_MEM_SIZE, + &res_id, VGA_MEM_BASE, VGA_MEM_BASE + VGA_MEM_SIZE - 1, VGA_MEM_SIZE, RF_ACTIVE); if (pseudo_phys_res == NULL) panic("Unable to reserve vt_vga memory"); From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 09:20:31 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 27EC49CB; Tue, 30 Dec 2014 09:20:31 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 135FA1E37; Tue, 30 Dec 2014 09:20:31 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBU9KUlv002257; Tue, 30 Dec 2014 09:20:30 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBU9KUIU002256; Tue, 30 Dec 2014 09:20:30 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201412300920.sBU9KUIU002256@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Tue, 30 Dec 2014 09:20:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276407 - head/sys/dev/usb/controller X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 09:20:31 -0000 Author: hselasky Date: Tue Dec 30 09:20:29 2014 New Revision: 276407 URL: https://svnweb.freebsd.org/changeset/base/276407 Log: Allow systems having a page size greater than 4K to use fewer scatter-gather XHCI TRB entries for its payload data. The XHCI controller can handle at least 65536 bytes per scatter-gather list entry. MFC after: 1 week Suggested by: Kohji Okuno Modified: head/sys/dev/usb/controller/xhci.h Modified: head/sys/dev/usb/controller/xhci.h ============================================================================== --- head/sys/dev/usb/controller/xhci.h Tue Dec 30 08:50:50 2014 (r276406) +++ head/sys/dev/usb/controller/xhci.h Tue Dec 30 09:20:29 2014 (r276407) @@ -320,11 +320,23 @@ struct xhci_dev_endpoint_trbs { XHCI_MAX_TRANSFERS) + XHCI_MAX_STREAMS]; }; -#define XHCI_TD_PAGE_NBUF 17 /* units, room enough for 64Kbytes */ -#define XHCI_TD_PAGE_SIZE 4096 /* bytes */ -#define XHCI_TD_PAYLOAD_MAX (XHCI_TD_PAGE_SIZE * (XHCI_TD_PAGE_NBUF - 1)) +#if (USB_PAGE_SIZE < 4096) +#error "The XHCI driver needs a pagesize above 4K" +#endif + +/* Define the maximum payload which we will handle in a single TRB */ +#define XHCI_TD_PAYLOAD_MAX 65536 /* bytes */ + +/* Define the maximum payload of a single scatter-gather list element */ +#define XHCI_TD_PAGE_SIZE \ + ((USB_PAGE_SIZE < XHCI_TD_PAYLOAD_MAX) ? USB_PAGE_SIZE : XHCI_TD_PAYLOAD_MAX) + +/* Define the maximum length of the scatter-gather list */ +#define XHCI_TD_PAGE_NBUF \ + (((XHCI_TD_PAYLOAD_MAX + XHCI_TD_PAGE_SIZE - 1) / XHCI_TD_PAGE_SIZE) + 1) struct xhci_td { + /* one LINK TRB has been added to the TRB array */ struct xhci_trb td_trb[XHCI_TD_PAGE_NBUF + 1]; /* From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 12:47:45 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7D01316F; Tue, 30 Dec 2014 12:47:45 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6927064116; Tue, 30 Dec 2014 12:47:45 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBUCljF8013395; Tue, 30 Dec 2014 12:47:45 GMT (envelope-from andrew@FreeBSD.org) Received: (from andrew@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBUClja7013394; Tue, 30 Dec 2014 12:47:45 GMT (envelope-from andrew@FreeBSD.org) Message-Id: <201412301247.sBUClja7013394@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: andrew set sender to andrew@FreeBSD.org using -f From: Andrew Turner Date: Tue, 30 Dec 2014 12:47:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276409 - head/sys/dev/virtio/mmio X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 12:47:45 -0000 Author: andrew Date: Tue Dec 30 12:47:44 2014 New Revision: 276409 URL: https://svnweb.freebsd.org/changeset/base/276409 Log: Set the page size in the virtio-mmio driver. Some backends, e.g QEMU, assume a 1 byte page size until told otherwise. Sponsored by: The FreeBSD Foundation Modified: head/sys/dev/virtio/mmio/virtio_mmio.c Modified: head/sys/dev/virtio/mmio/virtio_mmio.c ============================================================================== --- head/sys/dev/virtio/mmio/virtio_mmio.c Tue Dec 30 10:30:12 2014 (r276408) +++ head/sys/dev/virtio/mmio/virtio_mmio.c Tue Dec 30 12:47:44 2014 (r276409) @@ -506,6 +506,8 @@ vtmmio_alloc_virtqueues(device_t dev, in if (sc->vtmmio_vqs == NULL) return (ENOMEM); + vtmmio_write_config_4(sc, VIRTIO_MMIO_GUEST_PAGE_SIZE, 1 << PAGE_SHIFT); + for (idx = 0; idx < nvqs; idx++) { vqx = &sc->vtmmio_vqs[idx]; info = &vq_info[idx]; From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 16:55:54 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C2D09949; Tue, 30 Dec 2014 16:55:54 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id AE48E2BA2; Tue, 30 Dec 2014 16:55:54 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBUGtsYx033909; Tue, 30 Dec 2014 16:55:54 GMT (envelope-from nwhitehorn@FreeBSD.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBUGtsI1033908; Tue, 30 Dec 2014 16:55:54 GMT (envelope-from nwhitehorn@FreeBSD.org) Message-Id: <201412301655.sBUGtsI1033908@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: nwhitehorn set sender to nwhitehorn@FreeBSD.org using -f From: Nathan Whitehorn Date: Tue, 30 Dec 2014 16:55:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276412 - head/lib/libstand X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 16:55:54 -0000 Author: nwhitehorn Date: Tue Dec 30 16:55:53 2014 New Revision: 276412 URL: https://svnweb.freebsd.org/changeset/base/276412 Log: Fix loader's ability to read the 10.1 release PowerPC ISOs. There appears to be some kind of problem with the version of makefs used for these disks. There may be a better way to handle this problem, so I've set the MFC timer for a fairly long time period. MFC after: 2 weeks Modified: head/lib/libstand/cd9660.c Modified: head/lib/libstand/cd9660.c ============================================================================== --- head/lib/libstand/cd9660.c Tue Dec 30 16:22:20 2014 (r276411) +++ head/lib/libstand/cd9660.c Tue Dec 30 16:55:53 2014 (r276412) @@ -151,9 +151,14 @@ susp_lookup_record(struct open_file *f, return (NULL); p = susp_buffer + isonum_733(shc->offset); end = p + isonum_733(shc->length); - } else + } else { /* Ignore this record and skip to the next. */ p += isonum_711(sh->length); + + /* Avoid infinite loops with corrupted file systems */ + if (isonum_711(sh->length) == 0) + return (NULL); + } } return (NULL); } From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 18:42:54 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D18BDE06; Tue, 30 Dec 2014 18:42:54 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BD5352E18; Tue, 30 Dec 2014 18:42:54 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBUIgsQW086422; Tue, 30 Dec 2014 18:42:54 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBUIgs8W086420; Tue, 30 Dec 2014 18:42:54 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201412301842.sBUIgs8W086420@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Tue, 30 Dec 2014 18:42:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276414 - head X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 18:42:54 -0000 Author: emaste Date: Tue Dec 30 18:42:53 2014 New Revision: 276414 URL: https://svnweb.freebsd.org/changeset/base/276414 Log: Use BINUTILS_BOOTSTRAP knob for binutils only Previously it also disabled building elftoolchain bootstrap tools such as strip(1). Differential Revision: https://reviews.freebsd.org/D1398 Reviewed by: imp Sponsored by: The FreeBSD Foundation Modified: head/Makefile.inc1 Modified: head/Makefile.inc1 ============================================================================== --- head/Makefile.inc1 Tue Dec 30 17:30:47 2014 (r276413) +++ head/Makefile.inc1 Tue Dec 30 18:42:53 2014 (r276414) @@ -1440,8 +1440,10 @@ _kgzip= usr.sbin/kgzip .endif # If we're given an XAS, don't build binutils. -.if ${XAS:M/*} == "" && ${MK_BINUTILS_BOOTSTRAP} != "no" +.if ${XAS:M/*} == "" +.if ${MK_BINUTILS_BOOTSTRAP} != "no" _binutils= gnu/usr.bin/binutils +.endif .if ${MK_ELFTOOLCHAIN_TOOLS} != "no" _elftctools= lib/libelftc \ usr.bin/addr2line \ From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 20:01:10 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 967D75DC; Tue, 30 Dec 2014 20:01:10 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 81A1F1A44; Tue, 30 Dec 2014 20:01:10 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBUK1AwA024833; Tue, 30 Dec 2014 20:01:10 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBUK174f024509; Tue, 30 Dec 2014 20:01:07 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201412302001.sBUK174f024509@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Tue, 30 Dec 2014 20:01:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276417 - head/contrib/libcxxrt X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 20:01:10 -0000 Author: dim Date: Tue Dec 30 20:01:06 2014 New Revision: 276417 URL: https://svnweb.freebsd.org/changeset/base/276417 Log: Import libcxxrt master 00bc29eb6513624824a6d7db2ebc768a4216a604. Interesting fixes: 76584a0 Reorganize code to use only 32bit atomic ops for 32bit platforms 30d2ae5 Implement __cxa_throw_bad_array_new_length Reviewed by: bapt MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D1390 Modified: head/contrib/libcxxrt/atomic.h head/contrib/libcxxrt/cxxabi.h head/contrib/libcxxrt/dwarf_eh.h head/contrib/libcxxrt/dynamic_cast.cc head/contrib/libcxxrt/exception.cc head/contrib/libcxxrt/guard.cc head/contrib/libcxxrt/stdexcept.cc head/contrib/libcxxrt/stdexcept.h head/contrib/libcxxrt/typeinfo.cc head/contrib/libcxxrt/unwind-arm.h head/contrib/libcxxrt/unwind.h Directory Properties: head/contrib/libcxxrt/ (props changed) Modified: head/contrib/libcxxrt/atomic.h ============================================================================== --- head/contrib/libcxxrt/atomic.h Tue Dec 30 19:51:30 2014 (r276416) +++ head/contrib/libcxxrt/atomic.h Tue Dec 30 20:01:06 2014 (r276417) @@ -11,7 +11,7 @@ */ #if __has_builtin(__c11_atomic_exchange) #define ATOMIC_SWAP(addr, val)\ - __c11_atomic_exchange((_Atomic(__typeof__(val))*)addr, val, __ATOMIC_ACQ_REL) + __c11_atomic_exchange(reinterpret_cast<_Atomic(__typeof__(val))*>(addr), val, __ATOMIC_ACQ_REL) #elif __has_builtin(__sync_swap) #define ATOMIC_SWAP(addr, val)\ __sync_swap(addr, val) @@ -22,7 +22,7 @@ #if __has_builtin(__c11_atomic_load) #define ATOMIC_LOAD(addr)\ - __c11_atomic_load((_Atomic(__typeof__(*addr))*)addr, __ATOMIC_ACQUIRE) + __c11_atomic_load(reinterpret_cast<_Atomic(__typeof__(*addr))*>(addr), __ATOMIC_ACQUIRE) #else #define ATOMIC_LOAD(addr)\ (__sync_synchronize(), *addr) Modified: head/contrib/libcxxrt/cxxabi.h ============================================================================== --- head/contrib/libcxxrt/cxxabi.h Tue Dec 30 19:51:30 2014 (r276416) +++ head/contrib/libcxxrt/cxxabi.h Tue Dec 30 20:01:06 2014 (r276417) @@ -110,7 +110,7 @@ struct __cxa_exception * handler count reaches 0 (which it doesn't with the top bit set). */ int handlerCount; -#ifdef __arm__ +#if defined(__arm__) && !defined(__ARM_DWARF_EH__) /** * The ARM EH ABI requires the unwind library to keep track of exceptions * during cleanups. These support nesting, so we need to keep a list of Modified: head/contrib/libcxxrt/dwarf_eh.h ============================================================================== --- head/contrib/libcxxrt/dwarf_eh.h Tue Dec 30 19:51:30 2014 (r276416) +++ head/contrib/libcxxrt/dwarf_eh.h Tue Dec 30 20:01:06 2014 (r276417) @@ -83,7 +83,7 @@ enum dwarf_data_encoding */ static inline enum dwarf_data_encoding get_encoding(unsigned char x) { - return (enum dwarf_data_encoding)(x & 0xf); + return static_cast(x & 0xf); } /** @@ -115,7 +115,7 @@ enum dwarf_data_relative */ static inline enum dwarf_data_relative get_base(unsigned char x) { - return (enum dwarf_data_relative)(x & 0x70); + return static_cast(x & 0x70); } /** * Returns whether an encoding represents an indirect address. @@ -206,9 +206,9 @@ static int64_t read_sleb128(dw_eh_ptr_t if ((uleb >> (bits-1)) == 1) { // Sign extend by setting all bits in front of it to 1 - uleb |= ((int64_t)-1) << bits; + uleb |= static_cast(-1) << bits; } - return (int64_t)uleb; + return static_cast(uleb); } /** * Reads a value using the specified encoding from the address pointed to by @@ -224,7 +224,7 @@ static uint64_t read_value(char encoding // Read fixed-length types #define READ(dwarf, type) \ case dwarf:\ - v = (uint64_t)(*(type*)(*data));\ + v = static_cast(*reinterpret_cast(*data));\ *data += sizeof(type);\ break; READ(DW_EH_PE_udata2, uint16_t) @@ -263,16 +263,16 @@ static uint64_t resolve_indirect_value(_ switch (get_base(encoding)) { case DW_EH_PE_pcrel: - v += (uint64_t)start; + v += reinterpret_cast(start); break; case DW_EH_PE_textrel: - v += (uint64_t)_Unwind_GetTextRelBase(c); + v += static_cast(static_cast(_Unwind_GetTextRelBase(c))); break; case DW_EH_PE_datarel: - v += (uint64_t)_Unwind_GetDataRelBase(c); + v += static_cast(static_cast(_Unwind_GetDataRelBase(c))); break; case DW_EH_PE_funcrel: - v += (uint64_t)_Unwind_GetRegionStart(c); + v += static_cast(static_cast(_Unwind_GetRegionStart(c))); default: break; } @@ -282,7 +282,7 @@ static uint64_t resolve_indirect_value(_ // be a GCC extensions, so not properly documented... if (is_indirect(encoding)) { - v = (uint64_t)(uintptr_t)*(void**)v; + v = static_cast(reinterpret_cast(*reinterpret_cast(v))); } return v; } @@ -342,14 +342,14 @@ static inline struct dwarf_eh_lsda parse { struct dwarf_eh_lsda lsda; - lsda.region_start = (dw_eh_ptr_t)(uintptr_t)_Unwind_GetRegionStart(context); + lsda.region_start = reinterpret_cast(_Unwind_GetRegionStart(context)); // If the landing pads are relative to anything other than the start of // this region, find out where. This is @LPStart in the spec, although the // encoding that GCC uses does not quite match the spec. - uint64_t v = (uint64_t)(uintptr_t)lsda.region_start; + uint64_t v = static_cast(reinterpret_cast(lsda.region_start)); read_value_with_encoding(context, &data, &v); - lsda.landing_pads = (dw_eh_ptr_t)(uintptr_t)v; + lsda.landing_pads = reinterpret_cast(static_cast(v)); // If there is a type table, find out where it is. This is @TTBase in the // spec. Note: we find whether there is a type table pointer by checking @@ -365,18 +365,18 @@ static inline struct dwarf_eh_lsda parse lsda.type_table = type_table; //lsda.type_table = (uintptr_t*)(data + v); } -#if __arm__ +#if defined(__arm__) && !defined(__ARM_DWARF_EH__) lsda.type_table_encoding = (DW_EH_PE_pcrel | DW_EH_PE_indirect); #endif - lsda.callsite_encoding = (enum dwarf_data_encoding)(*(data++)); + lsda.callsite_encoding = static_cast(*(data++)); // Action table is immediately after the call site table lsda.action_table = data; - uintptr_t callsite_size = (uintptr_t)read_uleb128(&data); + uintptr_t callsite_size = static_cast(read_uleb128(&data)); lsda.action_table = data + callsite_size; // Call site table is immediately after the header - lsda.call_site_table = (dw_eh_ptr_t)data; + lsda.call_site_table = static_cast(data); return lsda; @@ -413,7 +413,7 @@ static bool dwarf_eh_find_callsite(struc result->landing_pad = 0; // The current instruction pointer offset within the region uint64_t ip = _Unwind_GetIP(context) - _Unwind_GetRegionStart(context); - unsigned char *callsite_table = (unsigned char*)lsda->call_site_table; + unsigned char *callsite_table = static_cast(lsda->call_site_table); while (callsite_table <= lsda->action_table) { @@ -463,17 +463,17 @@ static bool dwarf_eh_find_callsite(struc /// Defines an exception class from 8 bytes (endian independent) #define EXCEPTION_CLASS(a,b,c,d,e,f,g,h) \ - (((uint64_t)a << 56) +\ - ((uint64_t)b << 48) +\ - ((uint64_t)c << 40) +\ - ((uint64_t)d << 32) +\ - ((uint64_t)e << 24) +\ - ((uint64_t)f << 16) +\ - ((uint64_t)g << 8) +\ - ((uint64_t)h)) + ((static_cast(a) << 56) +\ + (static_cast(b) << 48) +\ + (static_cast(c) << 40) +\ + (static_cast(d) << 32) +\ + (static_cast(e) << 24) +\ + (static_cast(f) << 16) +\ + (static_cast(g) << 8) +\ + (static_cast(h))) #define GENERIC_EXCEPTION_CLASS(e,f,g,h) \ - ((uint32_t)e << 24) +\ - ((uint32_t)f << 16) +\ - ((uint32_t)g << 8) +\ - ((uint32_t)h) + (static_cast(e) << 24) +\ + (static_cast(f) << 16) +\ + (static_cast(g) << 8) +\ + (static_cast(h)) Modified: head/contrib/libcxxrt/dynamic_cast.cc ============================================================================== --- head/contrib/libcxxrt/dynamic_cast.cc Tue Dec 30 19:51:30 2014 (r276416) +++ head/contrib/libcxxrt/dynamic_cast.cc Tue Dec 30 20:01:06 2014 (r276417) @@ -44,7 +44,7 @@ struct vtable_header * Simple macro that does pointer arithmetic in bytes but returns a value of * the same type as the original. */ -#define ADD_TO_PTR(x, off) (__typeof__(x))(((char*)x) + off) +#define ADD_TO_PTR(x, off) reinterpret_cast<__typeof__(x)>(reinterpret_cast(x) + off) bool std::type_info::__do_catch(std::type_info const *ex_type, void **exception_object, @@ -166,7 +166,7 @@ bool __vmi_class_type_info::__do_upcast( if (info->isVirtual()) { // Object's vtable - ptrdiff_t *off = *(ptrdiff_t**)obj; + ptrdiff_t *off = *static_cast(obj); // Offset location in vtable off = ADD_TO_PTR(off, offset); offset = *off; @@ -202,9 +202,9 @@ extern "C" void* __dynamic_cast(const vo const __class_type_info *dst, ptrdiff_t src2dst_offset) { - char *vtable_location = *(char**)sub; + const char *vtable_location = *static_cast(sub); const vtable_header *header = - (const vtable_header*)(vtable_location - sizeof(vtable_header)); - void *leaf = ADD_TO_PTR((void*)sub, header->leaf_offset); + reinterpret_cast(vtable_location - sizeof(vtable_header)); + void *leaf = ADD_TO_PTR(const_cast(sub), header->leaf_offset); return header->type->cast_to(leaf, dst); } Modified: head/contrib/libcxxrt/exception.cc ============================================================================== --- head/contrib/libcxxrt/exception.cc Tue Dec 30 19:51:30 2014 (r276416) +++ head/contrib/libcxxrt/exception.cc Tue Dec 30 20:01:06 2014 (r276417) @@ -71,11 +71,11 @@ static void saveLandingPad(struct _Unwin int selector, dw_eh_ptr_t landingPad) { -#ifdef __arm__ +#if defined(__arm__) && !defined(__ARM_DWARF_EH__) // On ARM, we store the saved exception in the generic part of the structure ucb->barrier_cache.sp = _Unwind_GetGR(context, 13); - ucb->barrier_cache.bitpattern[1] = (uint32_t)selector; - ucb->barrier_cache.bitpattern[3] = (uint32_t)landingPad; + ucb->barrier_cache.bitpattern[1] = static_cast(selector); + ucb->barrier_cache.bitpattern[3] = reinterpret_cast(landingPad); #endif // Cache the results for the phase 2 unwind, if we found a handler // and this is not a foreign exception. @@ -95,15 +95,15 @@ static int loadLandingPad(struct _Unwind unsigned long *selector, dw_eh_ptr_t *landingPad) { -#ifdef __arm__ +#if defined(__arm__) && !defined(__ARM_DWARF_EH__) *selector = ucb->barrier_cache.bitpattern[1]; - *landingPad = (dw_eh_ptr_t)ucb->barrier_cache.bitpattern[3]; + *landingPad = reinterpret_cast(ucb->barrier_cache.bitpattern[3]); return 1; #else if (ex) { *selector = ex->handlerSwitchValue; - *landingPad = (dw_eh_ptr_t)ex->catchTemp; + *landingPad = reinterpret_cast(ex->catchTemp); return 0; } return 0; @@ -113,7 +113,7 @@ static int loadLandingPad(struct _Unwind static inline _Unwind_Reason_Code continueUnwinding(struct _Unwind_Exception *ex, struct _Unwind_Context *context) { -#ifdef __arm__ +#if defined(__arm__) && !defined(__ARM_DWARF_EH__) if (__gnu_unwind_frame(ex, context) != _URC_OK) { return _URC_FAILURE; } #endif return _URC_CONTINUE_UNWIND; @@ -204,7 +204,7 @@ struct __cxa_dependent_exception terminate_handler terminateHandler; __cxa_exception *nextException; int handlerCount; -#ifdef __arm__ +#if defined(__arm__) && !defined(__ARM_DWARF_EH__) _Unwind_Exception *nextCleanup; int cleanupCount; #endif @@ -267,13 +267,13 @@ static bool isDependentException(uint64_ static __cxa_exception *exceptionFromPointer(void *ex) { - return (__cxa_exception*)((char*)ex - + return reinterpret_cast<__cxa_exception*>(static_cast(ex) - offsetof(struct __cxa_exception, unwindHeader)); } static __cxa_exception *realExceptionFromException(__cxa_exception *ex) { if (!isDependentException(ex->unwindHeader.exception_class)) { return ex; } - return ((__cxa_exception*)(((__cxa_dependent_exception*)ex)->primaryException))-1; + return reinterpret_cast<__cxa_exception*>((reinterpret_cast<__cxa_dependent_exception*>(ex))->primaryException)-1; } @@ -304,13 +304,13 @@ static pthread_key_t eh_key; static void exception_cleanup(_Unwind_Reason_Code reason, struct _Unwind_Exception *ex) { - __cxa_free_exception((void*)ex); + __cxa_free_exception(static_cast(ex)); } static void dependent_exception_cleanup(_Unwind_Reason_Code reason, struct _Unwind_Exception *ex) { - __cxa_free_dependent_exception((void*)ex); + __cxa_free_dependent_exception(static_cast(ex)); } /** @@ -333,13 +333,13 @@ static void free_exception_list(__cxa_ex */ static void thread_cleanup(void* thread_info) { - __cxa_thread_info *info = (__cxa_thread_info*)thread_info; + __cxa_thread_info *info = static_cast<__cxa_thread_info*>(thread_info); if (info->globals.caughtExceptions) { // If this is a foreign exception, ask it to clean itself up. if (info->foreign_exception_state != __cxa_thread_info::none) { - _Unwind_Exception *e = (_Unwind_Exception*)info->globals.caughtExceptions; + _Unwind_Exception *e = reinterpret_cast<_Unwind_Exception*>(info->globals.caughtExceptions); e->exception_cleanup(_URC_FOREIGN_EXCEPTION_CAUGHT, e); } else @@ -379,8 +379,8 @@ static void init_key(void) return; } pthread_key_create(&eh_key, thread_cleanup); - pthread_setspecific(eh_key, (void*)0x42); - fakeTLS = (pthread_getspecific(eh_key) != (void*)0x42); + pthread_setspecific(eh_key, reinterpret_cast(0x42)); + fakeTLS = (pthread_getspecific(eh_key) != reinterpret_cast(0x42)); pthread_setspecific(eh_key, 0); } @@ -394,10 +394,10 @@ static __cxa_thread_info *thread_info() fakeTLS = true; } if (fakeTLS) { return &singleThreadInfo; } - __cxa_thread_info *info = (__cxa_thread_info*)pthread_getspecific(eh_key); + __cxa_thread_info *info = static_cast<__cxa_thread_info*>(pthread_getspecific(eh_key)); if (0 == info) { - info = (__cxa_thread_info*)calloc(1, sizeof(__cxa_thread_info)); + info = static_cast<__cxa_thread_info*>(calloc(1, sizeof(__cxa_thread_info))); pthread_setspecific(eh_key, info); } return info; @@ -409,7 +409,7 @@ static __cxa_thread_info *thread_info() static __cxa_thread_info *thread_info_fast() { if (fakeTLS) { return &singleThreadInfo; } - return (__cxa_thread_info*)pthread_getspecific(eh_key); + return static_cast<__cxa_thread_info*>(pthread_getspecific(eh_key)); } /** * ABI function returning the __cxa_eh_globals structure. @@ -472,7 +472,7 @@ static char *emergency_malloc(size_t siz if (0 != m) { pthread_mutex_unlock(&emergency_malloc_lock); - return (char*)m; + return static_cast(m); } for (int i=0 ; i<16 ; i++) { @@ -510,7 +510,7 @@ static void emergency_malloc_free(char * // Find the buffer corresponding to this pointer. for (int i=0 ; i<16 ; i++) { - if (ptr == (void*)(emergency_buffer + (1024 * i))) + if (ptr == static_cast(emergency_buffer + (1024 * i))) { buffer = i; break; @@ -521,7 +521,7 @@ static void emergency_malloc_free(char * // emergency_malloc() is expected to return 0-initialized data. We don't // zero the buffer when allocating it, because the static buffers will // begin life containing 0 values. - memset((void*)ptr, 0, 1024); + memset(ptr, 0, 1024); // Signal the condition variable to wake up any threads that are blocking // waiting for some space in the emergency buffer pthread_mutex_lock(&emergency_malloc_lock); @@ -535,7 +535,7 @@ static void emergency_malloc_free(char * static char *alloc_or_die(size_t size) { - char *buffer = (char*)calloc(1, size); + char *buffer = static_cast(calloc(1, size)); // If calloc() doesn't want to give us any memory, try using an emergency // buffer. @@ -597,7 +597,7 @@ extern "C" void *__cxa_allocate_dependen */ extern "C" void __cxa_free_exception(void *thrown_exception) { - __cxa_exception *ex = ((__cxa_exception*)thrown_exception) - 1; + __cxa_exception *ex = reinterpret_cast<__cxa_exception*>(thrown_exception) - 1; // Free the object that was thrown, calling its destructor if (0 != ex->exceptionDestructor) { @@ -612,7 +612,7 @@ extern "C" void __cxa_free_exception(voi } } - free_exception((char*)ex); + free_exception(reinterpret_cast(ex)); } static void releaseException(__cxa_exception *exception) @@ -633,13 +633,13 @@ static void releaseException(__cxa_excep void __cxa_free_dependent_exception(void *thrown_exception) { - __cxa_dependent_exception *ex = ((__cxa_dependent_exception*)thrown_exception) - 1; + __cxa_dependent_exception *ex = reinterpret_cast<__cxa_dependent_exception*>(thrown_exception) - 1; assert(isDependentException(ex->unwindHeader.exception_class)); if (ex->primaryException) { - releaseException(realExceptionFromException((__cxa_exception*)ex)); + releaseException(realExceptionFromException(reinterpret_cast<__cxa_exception*>(ex))); } - free_exception((char*)ex); + free_exception(reinterpret_cast(ex)); } /** @@ -654,8 +654,8 @@ static _Unwind_Reason_Code trace(struct { Dl_info myinfo; int mylookup = - dladdr((void*)(uintptr_t)__cxa_current_exception_type, &myinfo); - void *ip = (void*)_Unwind_GetIP(context); + dladdr(reinterpret_cast(__cxa_current_exception_type), &myinfo); + void *ip = reinterpret_cast(_Unwind_GetIP(context)); Dl_info info; if (dladdr(ip, &info) != 0) { @@ -673,6 +673,11 @@ static _Unwind_Reason_Code trace(struct * If the failure happened by falling off the end of the stack without finding * a handler, prints a back trace before aborting. */ +#if __GNUC__ > 3 && __GNUC_MINOR__ > 2 +extern "C" void *__cxa_begin_catch(void *e) throw(); +#else +extern "C" void *__cxa_begin_catch(void *e); +#endif static void report_failure(_Unwind_Reason_Code err, __cxa_exception *thrown_exception) { switch (err) @@ -681,14 +686,16 @@ static void report_failure(_Unwind_Reaso case _URC_FATAL_PHASE1_ERROR: fprintf(stderr, "Fatal error during phase 1 unwinding\n"); break; -#ifndef __arm__ +#if !defined(__arm__) || defined(__ARM_DWARF_EH__) case _URC_FATAL_PHASE2_ERROR: fprintf(stderr, "Fatal error during phase 2 unwinding\n"); break; #endif case _URC_END_OF_STACK: + __cxa_begin_catch (&(thrown_exception->unwindHeader)); + std::terminate(); fprintf(stderr, "Terminating due to uncaught exception %p", - (void*)thrown_exception); + static_cast(thrown_exception)); thrown_exception = realExceptionFromException(thrown_exception); static const __class_type_info *e_ti = static_cast(&typeid(std::exception)); @@ -697,8 +704,8 @@ static void report_failure(_Unwind_Reaso if (throw_ti) { std::exception *e = - (std::exception*)e_ti->cast_to((void*)(thrown_exception+1), - throw_ti); + static_cast(e_ti->cast_to(static_cast(thrown_exception+1), + throw_ti)); if (e) { fprintf(stderr, " '%s'", e->what()); @@ -706,18 +713,21 @@ static void report_failure(_Unwind_Reaso } size_t bufferSize = 128; - char *demangled = (char*)malloc(bufferSize); + char *demangled = static_cast(malloc(bufferSize)); const char *mangled = thrown_exception->exceptionType->name(); int status; demangled = __cxa_demangle(mangled, demangled, &bufferSize, &status); fprintf(stderr, " of type %s\n", - status == 0 ? (const char*)demangled : mangled); + status == 0 ? demangled : mangled); if (status == 0) { free(demangled); } // Print a back trace if no handler is found. // TODO: Make this optional #ifndef __arm__ _Unwind_Backtrace(trace, 0); #endif + + // Just abort. No need to call std::terminate for the second time + abort(); break; } std::terminate(); @@ -755,7 +765,7 @@ extern "C" void __cxa_throw(void *thrown std::type_info *tinfo, void(*dest)(void*)) { - __cxa_exception *ex = ((__cxa_exception*)thrown_exception) - 1; + __cxa_exception *ex = reinterpret_cast<__cxa_exception*>(thrown_exception) - 1; ex->referenceCount = 1; ex->exceptionType = tinfo; @@ -773,7 +783,7 @@ extern "C" void __cxa_rethrow_primary_ex if (NULL == thrown_exception) { return; } __cxa_exception *original = exceptionFromPointer(thrown_exception); - __cxa_dependent_exception *ex = ((__cxa_dependent_exception*)__cxa_allocate_dependent_exception())-1; + __cxa_dependent_exception *ex = reinterpret_cast<__cxa_dependent_exception*>(__cxa_allocate_dependent_exception())-1; ex->primaryException = thrown_exception; __cxa_increment_exception_refcount(thrown_exception); @@ -782,7 +792,7 @@ extern "C" void __cxa_rethrow_primary_ex ex->unwindHeader.exception_class = dependent_exception_class; ex->unwindHeader.exception_cleanup = dependent_exception_cleanup; - throw_exception((__cxa_exception*)ex); + throw_exception(reinterpret_cast<__cxa_exception*>(ex)); } extern "C" void *__cxa_current_primary_exception(void) @@ -799,14 +809,14 @@ extern "C" void *__cxa_current_primary_e extern "C" void __cxa_increment_exception_refcount(void* thrown_exception) { if (NULL == thrown_exception) { return; } - __cxa_exception *ex = ((__cxa_exception*)thrown_exception) - 1; + __cxa_exception *ex = static_cast<__cxa_exception*>(thrown_exception) - 1; if (isDependentException(ex->unwindHeader.exception_class)) { return; } __sync_fetch_and_add(&ex->referenceCount, 1); } extern "C" void __cxa_decrement_exception_refcount(void* thrown_exception) { if (NULL == thrown_exception) { return; } - __cxa_exception *ex = ((__cxa_exception*)thrown_exception) - 1; + __cxa_exception *ex = static_cast<__cxa_exception*>(thrown_exception) - 1; releaseException(ex); } @@ -838,7 +848,7 @@ extern "C" void __cxa_rethrow() if (ti->foreign_exception_state != __cxa_thread_info::none) { ti->foreign_exception_state = __cxa_thread_info::rethrown; - _Unwind_Exception *e = (_Unwind_Exception*)ex; + _Unwind_Exception *e = reinterpret_cast<_Unwind_Exception*>(ex); _Unwind_Reason_Code err = _Unwind_Resume_or_Rethrow(e); report_failure(err, ex); return; @@ -881,8 +891,8 @@ static std::type_info *get_type_info_ent if (offset == 0) { return 0; } // ...so we need to resolve it - return (std::type_info*)resolve_indirect_value(context, - lsda->type_table_encoding, offset, start); + return reinterpret_cast(resolve_indirect_value(context, + lsda->type_table_encoding, offset, start)); } @@ -896,13 +906,13 @@ static bool check_type_signature(__cxa_e const std::type_info *type, void *&adjustedPtr) { - void *exception_ptr = (void*)(ex+1); + void *exception_ptr = static_cast(ex+1); const std::type_info *ex_type = ex ? ex->exceptionType : 0; bool is_ptr = ex ? ex_type->__is_pointer_p() : false; if (is_ptr) { - exception_ptr = *(void**)exception_ptr; + exception_ptr = *static_cast(exception_ptr); } // Always match a catchall, even with a foreign exception // @@ -974,7 +984,7 @@ static handler_type check_action_record( { bool matched = false; *selector = filter; -#ifdef __arm__ +#if defined(__arm__) && !defined(__ARM_DWARF_EH__) filter++; std::type_info *handler_type = get_type_info_entry(context, lsda, filter--); while (handler_type) @@ -987,7 +997,7 @@ static handler_type check_action_record( handler_type = get_type_info_entry(context, lsda, filter--); } #else - unsigned char *type_index = ((unsigned char*)lsda->type_table - filter - 1); + unsigned char *type_index = reinterpret_cast(lsda->type_table) - filter - 1; while (*type_index) { std::type_info *handler_type = get_type_info_entry(context, lsda, *(type_index++)); @@ -1019,7 +1029,7 @@ static handler_type check_action_record( static void pushCleanupException(_Unwind_Exception *exceptionObject, __cxa_exception *ex) { -#ifdef __arm__ +#if defined(__arm__) && !defined(__ARM_DWARF_EH__) __cxa_thread_info *info = thread_info_fast(); if (ex) { @@ -1064,8 +1074,13 @@ BEGIN_PERSONALITY_FUNCTION(__gxx_persona realEx = realExceptionFromException(ex); } +#if defined(__arm__) && !defined(__ARM_DWARF_EH__) + unsigned char *lsda_addr = + static_cast(_Unwind_GetLanguageSpecificData(context)); +#else unsigned char *lsda_addr = - (unsigned char*)_Unwind_GetLanguageSpecificData(context); + reinterpret_cast(static_cast(_Unwind_GetLanguageSpecificData(context))); +#endif // No LSDA implies no landing pads - try the next frame if (0 == lsda_addr) { return continueUnwinding(exceptionObject, context); } @@ -1114,8 +1129,8 @@ BEGIN_PERSONALITY_FUNCTION(__gxx_persona if (ex) { saveLandingPad(context, exceptionObject, ex, selector, action.landing_pad); - ex->languageSpecificData = (const char*)lsda_addr; - ex->actionRecord = (const char*)action.action_record; + ex->languageSpecificData = reinterpret_cast(lsda_addr); + ex->actionRecord = reinterpret_cast(action.action_record); // ex->adjustedPtr is set when finding the action record. } return _URC_HANDLER_FOUND; @@ -1161,9 +1176,9 @@ BEGIN_PERSONALITY_FUNCTION(__gxx_persona } - _Unwind_SetIP(context, (unsigned long)action.landing_pad); + _Unwind_SetIP(context, reinterpret_cast(action.landing_pad)); _Unwind_SetGR(context, __builtin_eh_return_data_regno(0), - (unsigned long)exceptionObject); + reinterpret_cast(exceptionObject)); _Unwind_SetGR(context, __builtin_eh_return_data_regno(1), selector); return _URC_INSTALL_CONTEXT; @@ -1187,7 +1202,7 @@ extern "C" void *__cxa_begin_catch(void __cxa_thread_info *ti = thread_info(); __cxa_eh_globals *globals = &ti->globals; globals->uncaughtExceptions--; - _Unwind_Exception *exceptionObject = (_Unwind_Exception*)e; + _Unwind_Exception *exceptionObject = static_cast<_Unwind_Exception*>(e); if (isCXXException(exceptionObject->exception_class)) { @@ -1241,12 +1256,12 @@ extern "C" void *__cxa_begin_catch(void { std::terminate(); } - globals->caughtExceptions = (__cxa_exception*)exceptionObject; + globals->caughtExceptions = reinterpret_cast<__cxa_exception*>(exceptionObject); ti->foreign_exception_state = __cxa_thread_info::caught; } // exceptionObject is the pointer to the _Unwind_Exception within the // __cxa_exception. The throw object is after this - return ((char*)exceptionObject + sizeof(_Unwind_Exception)); + return (reinterpret_cast(exceptionObject) + sizeof(_Unwind_Exception)); } @@ -1270,7 +1285,7 @@ extern "C" void __cxa_end_catch() globals->caughtExceptions = 0; if (ti->foreign_exception_state != __cxa_thread_info::rethrown) { - _Unwind_Exception *e = (_Unwind_Exception*)ti->globals.caughtExceptions; + _Unwind_Exception *e = reinterpret_cast<_Unwind_Exception*>(ti->globals.caughtExceptions); e->exception_cleanup(_URC_FOREIGN_EXCEPTION_CAUGHT, e); } ti->foreign_exception_state = __cxa_thread_info::none; @@ -1332,7 +1347,7 @@ extern "C" std::type_info *__cxa_current */ extern "C" void __cxa_call_unexpected(void*exception) { - _Unwind_Exception *exceptionObject = (_Unwind_Exception*)exception; + _Unwind_Exception *exceptionObject = static_cast<_Unwind_Exception*>(exception); if (exceptionObject->exception_class == exception_class) { __cxa_exception *ex = exceptionFromPointer(exceptionObject); @@ -1483,7 +1498,7 @@ namespace std return ATOMIC_LOAD(&terminateHandler); } } -#ifdef __arm__ +#if defined(__arm__) && !defined(__ARM_DWARF_EH__) extern "C" _Unwind_Exception *__cxa_get_cleanup(void) { __cxa_thread_info *info = thread_info_fast(); Modified: head/contrib/libcxxrt/guard.cc ============================================================================== --- head/contrib/libcxxrt/guard.cc Tue Dec 30 19:51:30 2014 (r276416) +++ head/contrib/libcxxrt/guard.cc Tue Dec 30 20:01:06 2014 (r276417) @@ -70,18 +70,45 @@ #ifdef __arm__ // ARM ABI - 32-bit guards. typedef uint32_t guard_t; -static const uint32_t LOCKED = ((guard_t)1) << 31; +typedef uint32_t guard_lock_t; +static const uint32_t LOCKED = static_cast(1) << 31; static const uint32_t INITIALISED = 1; -#else +#define LOCK_PART(guard) (guard) +#define INIT_PART(guard) (guard) +#elif defined(_LP64) typedef uint64_t guard_t; +typedef uint64_t guard_lock_t; # if defined(__LITTLE_ENDIAN__) -static const guard_t LOCKED = ((guard_t)1) << 63; +static const guard_t LOCKED = static_cast(1) << 63; static const guard_t INITIALISED = 1; # else static const guard_t LOCKED = 1; -static const guard_t INITIALISED = ((guard_t)1) << 56; +static const guard_t INITIALISED = static_cast(1) << 56; +# endif +#define LOCK_PART(guard) (guard) +#define INIT_PART(guard) (guard) +#else +typedef uint32_t guard_lock_t; +# if defined(__LITTLE_ENDIAN__) +typedef struct { + uint32_t init_half; + uint32_t lock_half; +} guard_t; +static const uint32_t LOCKED = static_cast(1) << 31; +static const uint32_t INITIALISED = 1; +# else +typedef struct { + uint32_t init_half; + uint32_t lock_half; +} guard_t; +_Static_assert(sizeof(guard_t) == sizeof(uint64_t), ""); +static const uint32_t LOCKED = 1; +static const uint32_t INITIALISED = static_cast(1) << 24; # endif +#define LOCK_PART(guard) (&(guard)->lock_half) +#define INIT_PART(guard) (&(guard)->init_half) #endif +static const guard_lock_t INITIAL = 0; /** * Acquires a lock on a guard, returning 0 if the object has already been @@ -90,42 +117,49 @@ static const guard_t INITIALISED = ((gua */ extern "C" int __cxa_guard_acquire(volatile guard_t *guard_object) { + guard_lock_t old; // Not an atomic read, doesn't establish a happens-before relationship, but // if one is already established and we end up seeing an initialised state // then it's a fast path, otherwise we'll do something more expensive than // this test anyway... - if ((INITIALISED == *guard_object)) { return 0; } + if (INITIALISED == *INIT_PART(guard_object)) + return 0; // Spin trying to do the initialisation - while (1) + for (;;) { // Loop trying to move the value of the guard from 0 (not // locked, not initialised) to the locked-uninitialised // position. - switch (__sync_val_compare_and_swap(guard_object, 0, LOCKED)) - { - // If the old value was 0, we succeeded, so continue - // initialising - case 0: + old = __sync_val_compare_and_swap(LOCK_PART(guard_object), + INITIAL, LOCKED); + if (old == INITIAL) { + // Lock obtained. If lock and init bit are + // in separate words, check for init race. + if (INIT_PART(guard_object) == LOCK_PART(guard_object)) return 1; - // If this was already initialised, return and let the caller skip - // initialising it again. - case INITIALISED: - return 0; - // If it is locked by another thread, relinquish the CPU and try - // again later. - case LOCKED: - case LOCKED | INITIALISED: - sched_yield(); - break; - // If it is some other value, then something has gone badly wrong. - // Give up. - default: - fprintf(stderr, "Invalid state detected attempting to lock static initialiser.\n"); - abort(); + if (INITIALISED != *INIT_PART(guard_object)) + return 1; + + // No need for a memory barrier here, + // see first comment. + *LOCK_PART(guard_object) = INITIAL; + return 0; } + // If lock and init bit are in the same word, check again + // if we are done. + if (INIT_PART(guard_object) == LOCK_PART(guard_object) && + old == INITIALISED) + return 0; + + assert(old == LOCKED); + // Another thread holds the lock. + // If lock and init bit are in different words, check + // if we are done before yielding and looping. + if (INIT_PART(guard_object) != LOCK_PART(guard_object) && + INITIALISED == *INIT_PART(guard_object)) + return 0; + sched_yield(); } - //__builtin_unreachable(); - return 0; } /** @@ -135,7 +169,8 @@ extern "C" int __cxa_guard_acquire(volat extern "C" void __cxa_guard_abort(volatile guard_t *guard_object) { __attribute__((unused)) - bool reset = __sync_bool_compare_and_swap(guard_object, LOCKED, 0); + bool reset = __sync_bool_compare_and_swap(LOCK_PART(guard_object), + LOCKED, INITIAL); assert(reset); } /** @@ -144,9 +179,15 @@ extern "C" void __cxa_guard_abort(volati */ extern "C" void __cxa_guard_release(volatile guard_t *guard_object) { + guard_lock_t old; + if (INIT_PART(guard_object) == LOCK_PART(guard_object)) + old = LOCKED; + else + old = INITIAL; __attribute__((unused)) - bool reset = __sync_bool_compare_and_swap(guard_object, LOCKED, INITIALISED); + bool reset = __sync_bool_compare_and_swap(INIT_PART(guard_object), + old, INITIALISED); assert(reset); + if (INIT_PART(guard_object) != LOCK_PART(guard_object)) + *LOCK_PART(guard_object) = INITIAL; } - - Modified: head/contrib/libcxxrt/stdexcept.cc ============================================================================== --- head/contrib/libcxxrt/stdexcept.cc Tue Dec 30 19:51:30 2014 (r276416) +++ head/contrib/libcxxrt/stdexcept.cc Tue Dec 30 20:01:06 2014 (r276417) @@ -95,7 +95,7 @@ bad_array_new_length& bad_array_new_leng } __attribute__((weak)) -const char *bad_array_new_length::what() const throw() +const char* bad_array_new_length::what() const throw() { return "std::bad_array_new_length"; } Modified: head/contrib/libcxxrt/stdexcept.h ============================================================================== --- head/contrib/libcxxrt/stdexcept.h Tue Dec 30 19:51:30 2014 (r276416) +++ head/contrib/libcxxrt/stdexcept.h Tue Dec 30 20:01:06 2014 (r276417) @@ -81,7 +81,7 @@ namespace std virtual const char* what() const throw(); }; - class bad_array_new_length: public exception + class bad_array_new_length: public bad_alloc { public: bad_array_new_length() throw(); Modified: head/contrib/libcxxrt/typeinfo.cc ============================================================================== --- head/contrib/libcxxrt/typeinfo.cc Tue Dec 30 19:51:30 2014 (r276416) +++ head/contrib/libcxxrt/typeinfo.cc Tue Dec 30 20:01:06 2014 (r276417) @@ -35,7 +35,7 @@ type_info::~type_info() {} bool type_info::operator==(const type_info &other) const { -#ifdef LIBCXXRT_MERGED_TYPEINFO +#ifdef LIBCXXRT_MERGED_TYPEINFO return __type_name == other.__type_name; #else return __type_name == other.__type_name || strcmp(__type_name, other.__type_name) == 0; @@ -104,7 +104,7 @@ extern "C" char* __cxa_demangle(const ch } if (*n < len+1) { - buf = (char*)realloc(buf, len+1); + buf = static_cast(realloc(buf, len+1)); } if (0 != buf) { Modified: head/contrib/libcxxrt/unwind-arm.h ============================================================================== --- head/contrib/libcxxrt/unwind-arm.h Tue Dec 30 19:51:30 2014 (r276416) +++ head/contrib/libcxxrt/unwind-arm.h Tue Dec 30 20:01:06 2014 (r276417) @@ -218,6 +218,6 @@ _Unwind_Reason_Code name(_Unwind_State s break;\ }\ }\ - _Unwind_SetGR (context, 12, (unsigned long)exceptionObject);\ + _Unwind_SetGR (context, 12, reinterpret_cast(exceptionObject));\ #define CALL_PERSONALITY_FUNCTION(name) name(state,exceptionObject,context) Modified: head/contrib/libcxxrt/unwind.h ============================================================================== --- head/contrib/libcxxrt/unwind.h Tue Dec 30 19:51:30 2014 (r276416) +++ head/contrib/libcxxrt/unwind.h Tue Dec 30 20:01:06 2014 (r276417) @@ -27,7 +27,7 @@ extern "C" { #endif -#ifdef __arm__ +#if defined(__arm__) && !defined(__ARM_DWARF_EH__) #include "unwind-arm.h" #else #include "unwind-itanium.h" From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 20:06:11 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B81FB86B; Tue, 30 Dec 2014 20:06:11 +0000 (UTC) Received: from cell.glebius.int.ru (glebius.int.ru [81.19.69.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "cell.glebius.int.ru", Issuer "cell.glebius.int.ru" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 387761B8F; Tue, 30 Dec 2014 20:06:10 +0000 (UTC) Received: from cell.glebius.int.ru (localhost [127.0.0.1]) by cell.glebius.int.ru (8.14.9/8.14.9) with ESMTP id sBUK6118035637 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Tue, 30 Dec 2014 23:06:01 +0300 (MSK) (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by cell.glebius.int.ru (8.14.9/8.14.9/Submit) id sBUK61ST035636; Tue, 30 Dec 2014 23:06:01 +0300 (MSK) (envelope-from glebius@FreeBSD.org) X-Authentication-Warning: cell.glebius.int.ru: glebius set sender to glebius@FreeBSD.org using -f Date: Tue, 30 Dec 2014 23:06:01 +0300 From: Gleb Smirnoff To: Mateusz Guzik Subject: Re: svn commit: r276341 - head/sys/kern Message-ID: <20141230200601.GF15484@FreeBSD.org> References: <201412281924.sBSJO284028980@svn.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201412281924.sBSJO284028980@svn.freebsd.org> User-Agent: Mutt/1.5.23 (2014-03-12) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 20:06:11 -0000 On Sun, Dec 28, 2014 at 07:24:02PM +0000, Mateusz Guzik wrote: M> Author: mjg M> Date: Sun Dec 28 19:24:01 2014 M> New Revision: 276341 M> URL: https://svnweb.freebsd.org/changeset/base/276341 M> M> Log: M> sysctl: don't modify oid_running for static nodes M> M> It is necessary to prevent nodes from being destroyed while used, but static M> ones cannot be destroyed. What about nodes that go away on kernel module unload? Not sure they were protected properly before your commit, though :) -- Totus tuus, Glebius. From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 20:20:19 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C2E3BFE8; Tue, 30 Dec 2014 20:20:19 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id AE52A1DAE; Tue, 30 Dec 2014 20:20:19 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBUKKJUh037145; Tue, 30 Dec 2014 20:20:19 GMT (envelope-from wblock@FreeBSD.org) Received: (from wblock@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBUKKJvF037125; Tue, 30 Dec 2014 20:20:19 GMT (envelope-from wblock@FreeBSD.org) Message-Id: <201412302020.sBUKKJvF037125@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: wblock set sender to wblock@FreeBSD.org using -f From: Warren Block Date: Tue, 30 Dec 2014 20:20:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276419 - head/usr.sbin/binmiscctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 20:20:20 -0000 Author: wblock (doc committer) Date: Tue Dec 30 20:20:18 2014 New Revision: 276419 URL: https://svnweb.freebsd.org/changeset/base/276419 Log: Move the explanation for examples before the example itself. Add numerous QEMU examples and explanations supplied by sbruno, with thanks to Ingo Schwarze for help with the mdoc markup. Code, text, testing, proofreading, cinematography, stunts, and the haunting theme song supplied by sbruno. Submitted by: sbruno Reviewed by: sbruno MFC after: 1 week Modified: head/usr.sbin/binmiscctl/binmiscctl.8 Modified: head/usr.sbin/binmiscctl/binmiscctl.8 ============================================================================== --- head/usr.sbin/binmiscctl/binmiscctl.8 Tue Dec 30 20:10:37 2014 (r276418) +++ head/usr.sbin/binmiscctl/binmiscctl.8 Tue Dec 30 20:20:18 2014 (r276419) @@ -27,7 +27,7 @@ .\" .\" Support for miscellaneous binary image activators .\" -.Dd April 10, 2014 +.Dd December 30, 2014 .Dt BINMISCCTL 8 .Os .Sh NAME @@ -146,46 +146,148 @@ Look up and print out the activator entr Take a snapshot and print all the activator entries currently configured. .El .Sh EXAMPLES +Add an image activator to run the LLVM interpreter (lli) on bitcode +compiled files: .Bd -ragged -offset indent # binmiscctl add llvmbc --interpreter ''/usr/bin/lli --fake-argv0=#a'' --magic ''BC\\xc0\\xde'' --size 4 --set-enabled .Ed .Pp -Add an image activator to run the LLVM interpreter (lli) on bitcode -compiled files. .Ar #a -gets replaced with the old +is replaced with the old .Dv argv0 value so that 'lli' can fake its .Dv argv0 . Set its state to enabled. .Pp +Set the state of the +.Ar llvmbc +image activator to disabled: .Dl # binmiscctl disable llvmbc .Pp Set the state of the .Ar llvmbc -image activator to disabled. -.Pp +image activator to enabled: .Dl # binmiscctl enable llvmbc .Pp -Set the state of the +Delete the .Ar llvmbc -image activator to enabled. -.Pp +image activator: .Dl # binmiscctl remove llvmbc .Pp -Delete the +Look up and list the record for the .Ar llvmbc -image activator. -.Pp +image activator: .Dl # binmiscctl lookup llvmbc .Pp -Look up and list the record for the -.Ar llvmbc -image activator. +Add QEMU bsd-user program as an image activator for ARM little-endian binaries: +.Bd -literal -offset indent +# binmiscctl add armelf \e + --interpreter "/usr/local/bin/qemu-arm-static" \e + --magic "\ex7f\ex45\ex4c\ex46\ex01\ex01\ex01\ex00\ex00\ex00\e + \ex00\ex00\ex00\ex00\ex00\ex00\ex02\ex00\ex28\ex00" \e + --mask "\exff\exff\exff\exff\exff\exff\exff\ex00\exff\exff\e + \exff\exff\exff\exff\exff\exff\exfe\exff\exff\exff" \e + --size 20 --set-enabled +.Ed +.Pp +Add QEMU bsd-user program as an image activator for ARM big-endian binaries: +.Bd -literal -offset indent +# binmiscctl add armebelf \e + --interpreter "/usr/local/bin/qemu-arm-static" \e + --magic "\ex7f\ex45\ex4c\ex46\ex01\ex02\ex01\ex00\ex00\ex00\e + \ex00\ex00\ex00\ex00\ex00\ex00\ex00\ex02\ex00\ex28" \e + --mask "\exff\exff\exff\exff\exff\exff\exff\ex00\exff\exff\e + \exff\exff\exff\exff\exff\exff\exff\exfe\exff\exff" \e + --size 20 --set-enabled +.Ed +.Pp +Add QEMU bsd-user program as an image activator for MIPS32 binaries: +.Bd -literal -offset indent +# binmiscctl add mips32 \e + --interpreter "/usr/local/bin/qemu-mips-static" \e + --magic "\ex7f\ex45\ex4c\ex46\ex01\ex02\ex01\ex00\ex00\ex00\e + \ex00\ex00\ex00\ex00\ex00\ex00\ex00\ex02\ex00\ex08" \e + --mask "\exff\exff\exff\exff\exff\exff\exff\ex00\exff\exff\e + \exff\exff\exff\exff\exff\exff\exff\exfe\exff\exff" \e + --size 20 --set-enabled +.Ed +.Pp +Add QEMU bsd-user program as an image activator for MIPS64 binaries: +.Bd -literal -offset indent +# binmiscctl add mips64 \e + --interpreter "/usr/local/bin/qemu-mips64-static" \e + --magic "\ex7f\ex45\ex4c\ex46\ex02\ex02\ex01\ex00\ex00\ex00\e + \ex00\ex00\ex00\ex00\ex00\ex00\ex00\ex02\ex00\ex08" \e + --mask "\exff\exff\exff\exff\exff\exff\exff\ex00\exff\exff\e + \exff\exff\exff\exff\exff\exff\exff\exfe\exff\exff" \e + --size 20 --set-enabled +.Ed +.Pp +Add QEMU bsd-user program as an image activator for PowerPC binaries: +.Bd -literal -offset indent +# binmiscctl add powerpc \e + --interpreter "/usr/local/bin/qemu-ppc-static" \e + --magic "\ex7f\ex45\ex4c\ex46\ex01\ex02\ex01\ex00\ex00\ex00\e + \ex00\ex00\ex00\ex00\ex00\ex00\ex00\ex02\ex00\ex14" \e + --mask "\exff\exff\exff\exff\exff\exff\exff\ex00\exff\exff\e + \exff\exff\exff\exff\exff\exff\exff\exfe\exff\exff" \e + --size 20 --set-enabled +.Ed +.Pp +Add QEMU bsd-user program as an image activator for PowerPC64 binaries: +.Bd -literal -offset indent +# binmiscctl add powerpc64 \e + --interpreter "/usr/local/bin/qemu-ppc64-static" \e + --magic "\ex7f\ex45\ex4c\ex46\ex01\ex02\ex01\ex00\ex00\ex00\e + \ex00\ex00\ex00\ex00\ex00\ex00\ex00\ex02\ex00\ex15" \e + --mask "\exff\exff\exff\exff\exff\exff\exff\ex00\exff\exff\e + \exff\exff\exff\exff\exff\exff\exff\exfe\exff\exff" \e + --size 20 --set-enabled +.Ed +.Pp +Add QEMU bsd-user program as an image activator for SPARC64 binaries: +.Bd -literal -offset indent +# binmiscctl add sparc64 \e + --interpreter "/usr/local/bin/qemu-sparc64-static" \e + --magic "\ex7f\ex45\ex4c\ex46\ex02\ex02\ex01\ex00\ex00\ex00\e + \ex00\ex00\ex00\ex00\ex00\ex00\ex00\ex02\ex00\ex2b" \e + --mask "\exff\exff\exff\exff\exff\exff\exff\ex00\exff\exff\e + \exff\exff\exff\exff\exff\exff\exff\exfe\exff\exff" \e + --size 20 --set-enabled +.Ed +.Pp +.Ss "Create and use an ARMv6 chroot on an AMD64 host" +Use an existing source tree to build a chroot host with architecture +overrides: +.Bd -literal +D=/path/to/chroot +cd /usr/src +mkdir -p $D +make world TARGET=arm TARGET_ARCH=armv6 DESTDIR=$D +make distribution TARGET=arm TARGET_ARCH=armv6 DESTDIR=$D +.Ed +.Pp +With +.Pa emulators/qemu-user-static +from the +.Fx +Ports Collection, the emulator must be copied into the jail path +specified in the binmiscctl command. +Using the example above: +.Bd -literal +mkdir $D/usr/local/bin +cp /usr/local/bin/qemu-arm-static $D/usr/local/bin +.Ed +.Pp +Now the user can chroot into the environment normally, as root: +.Bd -literal +chroot $D +.Ed .Sh SEE ALSO .Xr lli 1 , -.Xr execve 2 +.Xr execve 2 , +.Xr jail 8 .Sh HISTORY The .Cm binmiscctl From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 20:22:32 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id AE6361C5; Tue, 30 Dec 2014 20:22:32 +0000 (UTC) Received: from mail-we0-x229.google.com (mail-we0-x229.google.com [IPv6:2a00:1450:400c:c03::229]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3F6E31E95; Tue, 30 Dec 2014 20:22:32 +0000 (UTC) Received: by mail-we0-f169.google.com with SMTP id m14so1539884wev.28; Tue, 30 Dec 2014 12:22:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=50yD2rKnQ27Gc+I97RRL3eH/+dF0JyEjrPpwlE7cex8=; b=YtwOFTcypLn+8smwOd97MgfANp+m3GfZg5qvHwmzNq/TzkHcwwkcLfUFAxXMA5j+xC ZdgeFuhAYwmP4zu8nnvj0IybV7cdsKh06yJOuyMyKNSw5mZhqrodbzk0FQAqY80wCNfS 3lSyQfHbBQt4zJL5Fjx+2ddyNIkJ/VmEABYHnOZicf2eJaCXgeBl3M6gm3cDeXyQx2gr XrBObXxg9VD8LkQDEymAszNOhLjIwNjKGnjk6q//XTkSfP3r1wKMwxYnxfFiyYgoZd3S AxqrILEb7pwnLf8FRG6zQbzIASD8f9bpIjAXUIPuSTCHiukFRI3T4G9cQ4oR0gmVRDKh UPHA== X-Received: by 10.194.94.227 with SMTP id df3mr127344482wjb.34.1419970950639; Tue, 30 Dec 2014 12:22:30 -0800 (PST) Received: from dft-labs.eu (n1x0n-1-pt.tunnel.tserv5.lon1.ipv6.he.net. [2001:470:1f08:1f7::2]) by mx.google.com with ESMTPSA id r3sm44625768wic.10.2014.12.30.12.22.29 (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Tue, 30 Dec 2014 12:22:29 -0800 (PST) Date: Tue, 30 Dec 2014 21:22:27 +0100 From: Mateusz Guzik To: Gleb Smirnoff Subject: Re: svn commit: r276341 - head/sys/kern Message-ID: <20141230202226.GA27329@dft-labs.eu> References: <201412281924.sBSJO284028980@svn.freebsd.org> <20141230200601.GF15484@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20141230200601.GF15484@FreeBSD.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 20:22:32 -0000 On Tue, Dec 30, 2014 at 11:06:01PM +0300, Gleb Smirnoff wrote: > On Sun, Dec 28, 2014 at 07:24:02PM +0000, Mateusz Guzik wrote: > M> Author: mjg > M> Date: Sun Dec 28 19:24:01 2014 > M> New Revision: 276341 > M> URL: https://svnweb.freebsd.org/changeset/base/276341 > M> > M> Log: > M> sysctl: don't modify oid_running for static nodes > M> > M> It is necessary to prevent nodes from being destroyed while used, but static > M> ones cannot be destroyed. > > What about nodes that go away on kernel module unload? Not sure > they were protected properly before your commit, though :) > They are not static. They seem to be protected properly though. -- Mateusz Guzik From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 21:40:46 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4856B61E; Tue, 30 Dec 2014 21:40:46 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 33C0D2B34; Tue, 30 Dec 2014 21:40:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBULekn3076020; Tue, 30 Dec 2014 21:40:46 GMT (envelope-from mjg@FreeBSD.org) Received: (from mjg@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBULek5f076019; Tue, 30 Dec 2014 21:40:46 GMT (envelope-from mjg@FreeBSD.org) Message-Id: <201412302140.sBULek5f076019@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: mjg set sender to mjg@FreeBSD.org using -f From: Mateusz Guzik Date: Tue, 30 Dec 2014 21:40:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276424 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 21:40:46 -0000 Author: mjg Date: Tue Dec 30 21:40:45 2014 New Revision: 276424 URL: https://svnweb.freebsd.org/changeset/base/276424 Log: Convert vfs hash lock from a mutex to an rwlock. Modified: head/sys/kern/vfs_hash.c Modified: head/sys/kern/vfs_hash.c ============================================================================== --- head/sys/kern/vfs_hash.c Tue Dec 30 20:46:01 2014 (r276423) +++ head/sys/kern/vfs_hash.c Tue Dec 30 21:40:45 2014 (r276424) @@ -33,6 +33,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include static MALLOC_DEFINE(M_VFS_HASH, "vfs_hash", "VFS hash table"); @@ -40,14 +41,14 @@ static MALLOC_DEFINE(M_VFS_HASH, "vfs_ha static LIST_HEAD(vfs_hash_head, vnode) *vfs_hash_tbl; static LIST_HEAD(,vnode) vfs_hash_side; static u_long vfs_hash_mask; -static struct mtx vfs_hash_mtx; +static struct rwlock vfs_hash_lock; static void vfs_hashinit(void *dummy __unused) { vfs_hash_tbl = hashinit(desiredvnodes, M_VFS_HASH, &vfs_hash_mask); - mtx_init(&vfs_hash_mtx, "vfs hash", NULL, MTX_DEF); + rw_init(&vfs_hash_lock, "vfs hash"); LIST_INIT(&vfs_hash_side); } @@ -75,7 +76,7 @@ vfs_hash_get(const struct mount *mp, u_i int error; while (1) { - mtx_lock(&vfs_hash_mtx); + rw_rlock(&vfs_hash_lock); LIST_FOREACH(vp, vfs_hash_bucket(mp, hash), v_hashlist) { if (vp->v_hash != hash) continue; @@ -84,7 +85,7 @@ vfs_hash_get(const struct mount *mp, u_i if (fn != NULL && fn(vp, arg)) continue; VI_LOCK(vp); - mtx_unlock(&vfs_hash_mtx); + rw_runlock(&vfs_hash_lock); error = vget(vp, flags | LK_INTERLOCK, td); if (error == ENOENT && (flags & LK_NOWAIT) == 0) break; @@ -94,7 +95,7 @@ vfs_hash_get(const struct mount *mp, u_i return (0); } if (vp == NULL) { - mtx_unlock(&vfs_hash_mtx); + rw_runlock(&vfs_hash_lock); *vpp = NULL; return (0); } @@ -105,9 +106,9 @@ void vfs_hash_remove(struct vnode *vp) { - mtx_lock(&vfs_hash_mtx); + rw_wlock(&vfs_hash_lock); LIST_REMOVE(vp, v_hashlist); - mtx_unlock(&vfs_hash_mtx); + rw_wunlock(&vfs_hash_lock); } int @@ -118,7 +119,7 @@ vfs_hash_insert(struct vnode *vp, u_int *vpp = NULL; while (1) { - mtx_lock(&vfs_hash_mtx); + rw_wlock(&vfs_hash_lock); LIST_FOREACH(vp2, vfs_hash_bucket(vp->v_mount, hash), v_hashlist) { if (vp2->v_hash != hash) @@ -128,13 +129,13 @@ vfs_hash_insert(struct vnode *vp, u_int if (fn != NULL && fn(vp2, arg)) continue; VI_LOCK(vp2); - mtx_unlock(&vfs_hash_mtx); + rw_wunlock(&vfs_hash_lock); error = vget(vp2, flags | LK_INTERLOCK, td); if (error == ENOENT && (flags & LK_NOWAIT) == 0) break; - mtx_lock(&vfs_hash_mtx); + rw_wlock(&vfs_hash_lock); LIST_INSERT_HEAD(&vfs_hash_side, vp, v_hashlist); - mtx_unlock(&vfs_hash_mtx); + rw_wunlock(&vfs_hash_lock); vput(vp); if (!error) *vpp = vp2; @@ -146,7 +147,7 @@ vfs_hash_insert(struct vnode *vp, u_int } vp->v_hash = hash; LIST_INSERT_HEAD(vfs_hash_bucket(vp->v_mount, hash), vp, v_hashlist); - mtx_unlock(&vfs_hash_mtx); + rw_wunlock(&vfs_hash_lock); return (0); } @@ -154,9 +155,9 @@ void vfs_hash_rehash(struct vnode *vp, u_int hash) { - mtx_lock(&vfs_hash_mtx); + rw_wlock(&vfs_hash_lock); LIST_REMOVE(vp, v_hashlist); LIST_INSERT_HEAD(vfs_hash_bucket(vp->v_mount, hash), vp, v_hashlist); vp->v_hash = hash; - mtx_unlock(&vfs_hash_mtx); + rw_wunlock(&vfs_hash_lock); } From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 21:42:39 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8C63178D; Tue, 30 Dec 2014 21:42:39 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 37B5C2C18; Tue, 30 Dec 2014 21:41:36 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBULfauA076792; Tue, 30 Dec 2014 21:41:36 GMT (envelope-from mjg@FreeBSD.org) Received: (from mjg@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBULfaoZ076791; Tue, 30 Dec 2014 21:41:36 GMT (envelope-from mjg@FreeBSD.org) Message-Id: <201412302141.sBULfaoZ076791@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: mjg set sender to mjg@FreeBSD.org using -f From: Mateusz Guzik Date: Tue, 30 Dec 2014 21:41:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276425 - head/sys/fs/nullfs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 21:42:39 -0000 Author: mjg Date: Tue Dec 30 21:41:35 2014 New Revision: 276425 URL: https://svnweb.freebsd.org/changeset/base/276425 Log: Convert nullfs hash lock from a mutex to an rwlock. Modified: head/sys/fs/nullfs/null_subr.c Modified: head/sys/fs/nullfs/null_subr.c ============================================================================== --- head/sys/fs/nullfs/null_subr.c Tue Dec 30 21:40:45 2014 (r276424) +++ head/sys/fs/nullfs/null_subr.c Tue Dec 30 21:41:35 2014 (r276425) @@ -38,7 +38,7 @@ #include #include #include -#include +#include #include #include #include @@ -57,7 +57,7 @@ #define NULL_NHASH(vp) (&null_node_hashtbl[vfs_hash_index(vp) & null_hash_mask]) static LIST_HEAD(null_node_hashhead, null_node) *null_node_hashtbl; -static struct mtx null_hashmtx; +static struct rwlock null_hash_lock; static u_long null_hash_mask; static MALLOC_DEFINE(M_NULLFSHASH, "nullfs_hash", "NULLFS hash table"); @@ -75,7 +75,7 @@ nullfs_init(vfsp) null_node_hashtbl = hashinit(desiredvnodes, M_NULLFSHASH, &null_hash_mask); - mtx_init(&null_hashmtx, "nullhs", NULL, MTX_DEF); + rw_init(&null_hash_lock, "nullhs"); return (0); } @@ -84,7 +84,7 @@ nullfs_uninit(vfsp) struct vfsconf *vfsp; { - mtx_destroy(&null_hashmtx); + rw_destroy(&null_hash_lock); hashdestroy(null_node_hashtbl, M_NULLFSHASH, null_hash_mask); return (0); } @@ -111,7 +111,7 @@ null_hashget(mp, lowervp) * reference count (but NOT the lower vnode's VREF counter). */ hd = NULL_NHASH(lowervp); - mtx_lock(&null_hashmtx); + rw_rlock(&null_hash_lock); LIST_FOREACH(a, hd, null_hash) { if (a->null_lowervp == lowervp && NULLTOV(a)->v_mount == mp) { /* @@ -122,11 +122,11 @@ null_hashget(mp, lowervp) */ vp = NULLTOV(a); vref(vp); - mtx_unlock(&null_hashmtx); + rw_runlock(&null_hash_lock); return (vp); } } - mtx_unlock(&null_hashmtx); + rw_runlock(&null_hash_lock); return (NULLVP); } @@ -144,7 +144,7 @@ null_hashins(mp, xp) struct vnode *ovp; hd = NULL_NHASH(xp->null_lowervp); - mtx_lock(&null_hashmtx); + rw_wlock(&null_hash_lock); LIST_FOREACH(oxp, hd, null_hash) { if (oxp->null_lowervp == xp->null_lowervp && NULLTOV(oxp)->v_mount == mp) { @@ -154,12 +154,12 @@ null_hashins(mp, xp) */ ovp = NULLTOV(oxp); vref(ovp); - mtx_unlock(&null_hashmtx); + rw_wunlock(&null_hash_lock); return (ovp); } } LIST_INSERT_HEAD(hd, xp, null_hash); - mtx_unlock(&null_hashmtx); + rw_wunlock(&null_hash_lock); return (NULLVP); } @@ -277,9 +277,9 @@ null_hashrem(xp) struct null_node *xp; { - mtx_lock(&null_hashmtx); + rw_wlock(&null_hash_lock); LIST_REMOVE(xp, null_hash); - mtx_unlock(&null_hashmtx); + rw_wunlock(&null_hash_lock); } #ifdef DIAGNOSTIC From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 21:55:51 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CA9AABEB; Tue, 30 Dec 2014 21:55:51 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9D39264D95; Tue, 30 Dec 2014 21:55:51 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBULtphs084408; Tue, 30 Dec 2014 21:55:51 GMT (envelope-from wblock@FreeBSD.org) Received: (from wblock@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBULtpSP084407; Tue, 30 Dec 2014 21:55:51 GMT (envelope-from wblock@FreeBSD.org) Message-Id: <201412302155.sBULtpSP084407@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: wblock set sender to wblock@FreeBSD.org using -f From: Warren Block Date: Tue, 30 Dec 2014 21:55:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276426 - head/share/man/man4 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 21:55:51 -0000 Author: wblock (doc committer) Date: Tue Dec 30 21:55:50 2014 New Revision: 276426 URL: https://svnweb.freebsd.org/changeset/base/276426 Log: Remove the svn:executable property from iscsi.4. PR: 196380 Submitted by: Trond.Endrestol@ximalas.info MFC after: 1 week Modified: Directory Properties: head/share/man/man4/iscsi.4 (props changed) From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 22:04:26 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 263BDF55; Tue, 30 Dec 2014 22:04:26 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EDD7464F07; Tue, 30 Dec 2014 22:04:25 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBUM4Par089062; Tue, 30 Dec 2014 22:04:25 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBUM4PHr089061; Tue, 30 Dec 2014 22:04:25 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201412302204.sBUM4PHr089061@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Tue, 30 Dec 2014 22:04:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276427 - head/contrib/elftoolchain/libelf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 22:04:26 -0000 Author: emaste Date: Tue Dec 30 22:04:24 2014 New Revision: 276427 URL: https://svnweb.freebsd.org/changeset/base/276427 Log: Check for multiplication integer overflow in CHECK_EHDR The initial fix in r276374 is valid only for 64-bit objects. Revert it and return an error in CHECK_EHDR if the multiplication would overflow. The original buffer overflow issue was found with the security/afl fuzzer and has upstream elftoolchain ticket 462. The 32-bit object issue with r276374 found by antoine@ during an i386 exp-run. Sponsored by: The FreeBSD Foundation Modified: head/contrib/elftoolchain/libelf/elf_scn.c Modified: head/contrib/elftoolchain/libelf/elf_scn.c ============================================================================== --- head/contrib/elftoolchain/libelf/elf_scn.c Tue Dec 30 21:55:50 2014 (r276426) +++ head/contrib/elftoolchain/libelf/elf_scn.c Tue Dec 30 22:04:24 2014 (r276427) @@ -32,6 +32,7 @@ #include #include #include +#include #include #include "_libelf.h" @@ -50,7 +51,6 @@ _libelf_load_section_headers(Elf *e, voi Elf64_Ehdr *eh64; int ec, swapbytes; unsigned char *src; - unsigned char *rawend; size_t fsz, i, shnum; int (*xlator)(unsigned char *_d, size_t _dsz, unsigned char *_s, size_t _c, int _swap); @@ -61,6 +61,7 @@ _libelf_load_section_headers(Elf *e, voi #define CHECK_EHDR(E,EH) do { \ if (fsz != (EH)->e_shentsize || \ + shnum > SIZE_MAX / fsz || \ shoff + fsz * shnum > e->e_rawsize) { \ LIBELF_SET_ERROR(HEADER, 0); \ return (0); \ @@ -87,7 +88,6 @@ _libelf_load_section_headers(Elf *e, voi swapbytes = e->e_byteorder != LIBELF_PRIVATE(byteorder); src = e->e_rawfile + shoff; - rawend = e->e_rawfile + e->e_rawsize; /* * If the file is using extended numbering then section #0 @@ -104,8 +104,6 @@ _libelf_load_section_headers(Elf *e, voi } for (; i < shnum; i++, src += fsz) { - if (src + sizeof(scn->s_shdr) > rawend) - return (0); if ((scn = _libelf_allocate_scn(e, i)) == NULL) return (0); From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 22:12:47 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C8500187; Tue, 30 Dec 2014 22:12:47 +0000 (UTC) Received: from cell.glebius.int.ru (glebius.int.ru [81.19.69.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "cell.glebius.int.ru", Issuer "cell.glebius.int.ru" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 5096F1075; Tue, 30 Dec 2014 22:12:46 +0000 (UTC) Received: from cell.glebius.int.ru (localhost [127.0.0.1]) by cell.glebius.int.ru (8.14.9/8.14.9) with ESMTP id sBUMCiAc036085 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 31 Dec 2014 01:12:44 +0300 (MSK) (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by cell.glebius.int.ru (8.14.9/8.14.9/Submit) id sBUMCh6U036084; Wed, 31 Dec 2014 01:12:43 +0300 (MSK) (envelope-from glebius@FreeBSD.org) X-Authentication-Warning: cell.glebius.int.ru: glebius set sender to glebius@FreeBSD.org using -f Date: Wed, 31 Dec 2014 01:12:43 +0300 From: Gleb Smirnoff To: Mateusz Guzik Subject: Re: svn commit: r276341 - head/sys/kern Message-ID: <20141230221243.GH15484@FreeBSD.org> References: <201412281924.sBSJO284028980@svn.freebsd.org> <20141230200601.GF15484@FreeBSD.org> <20141230202226.GA27329@dft-labs.eu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20141230202226.GA27329@dft-labs.eu> User-Agent: Mutt/1.5.23 (2014-03-12) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 22:12:47 -0000 On Tue, Dec 30, 2014 at 09:22:27PM +0100, Mateusz Guzik wrote: M> On Tue, Dec 30, 2014 at 11:06:01PM +0300, Gleb Smirnoff wrote: M> > On Sun, Dec 28, 2014 at 07:24:02PM +0000, Mateusz Guzik wrote: M> > M> Author: mjg M> > M> Date: Sun Dec 28 19:24:01 2014 M> > M> New Revision: 276341 M> > M> URL: https://svnweb.freebsd.org/changeset/base/276341 M> > M> M> > M> Log: M> > M> sysctl: don't modify oid_running for static nodes M> > M> M> > M> It is necessary to prevent nodes from being destroyed while used, but static M> > M> ones cannot be destroyed. M> > M> > What about nodes that go away on kernel module unload? Not sure M> > they were protected properly before your commit, though :) M> > M> M> They are not static. I don't see how they can get CTLFLAG_DYN. Look for any (un)loadable modules as an example, e.g. aio(4) implemented in vfs_aio.c. How its sysctls get CTLFLAG_DYN? -- Totus tuus, Glebius. From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 22:19:37 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 6DAFB3AC; Tue, 30 Dec 2014 22:19:37 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5763510F2; Tue, 30 Dec 2014 22:19:37 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBUMJbKn094880; Tue, 30 Dec 2014 22:19:37 GMT (envelope-from neel@FreeBSD.org) Received: (from neel@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBUMJZ1x094872; Tue, 30 Dec 2014 22:19:35 GMT (envelope-from neel@FreeBSD.org) Message-Id: <201412302219.sBUMJZ1x094872@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: neel set sender to neel@FreeBSD.org using -f From: Neel Natu Date: Tue, 30 Dec 2014 22:19:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276428 - in head: lib/libvmmapi sys/amd64/include sys/amd64/vmm sys/amd64/vmm/io sys/modules/vmm usr.sbin/bhyve usr.sbin/bhyvectl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 22:19:37 -0000 Author: neel Date: Tue Dec 30 22:19:34 2014 New Revision: 276428 URL: https://svnweb.freebsd.org/changeset/base/276428 Log: Replace bhyve's minimal RTC emulation with a fully featured one in vmm.ko. The new RTC emulation supports all interrupt modes: periodic, update ended and alarm. It is also capable of maintaining the date/time and NVRAM contents across virtual machine reset. Also, the date/time fields can now be modified by the guest. Since bhyve now emulates both the PIT and the RTC there is no need for "Legacy Replacement Routing" in the HPET so get rid of it. The RTC device state can be inspected via bhyvectl as follows: bhyvectl --vm=vm --get-rtc-time bhyvectl --vm=vm --set-rtc-time= bhyvectl --vm=vm --rtc-nvram-offset= --get-rtc-nvram bhyvectl --vm=vm --rtc-nvram-offset= --set-rtc-nvram= Reviewed by: tychon Discussed with: grehan Differential Revision: https://reviews.freebsd.org/D1385 MFC after: 2 weeks Added: head/sys/amd64/vmm/io/vrtc.c (contents, props changed) head/sys/amd64/vmm/io/vrtc.h (contents, props changed) Modified: head/lib/libvmmapi/vmmapi.c head/lib/libvmmapi/vmmapi.h head/sys/amd64/include/vmm.h head/sys/amd64/include/vmm_dev.h head/sys/amd64/vmm/io/vhpet.c head/sys/amd64/vmm/vmm.c head/sys/amd64/vmm/vmm_dev.c head/sys/amd64/vmm/vmm_ioport.c head/sys/modules/vmm/Makefile head/usr.sbin/bhyve/rtc.c head/usr.sbin/bhyvectl/bhyvectl.c Modified: head/lib/libvmmapi/vmmapi.c ============================================================================== --- head/lib/libvmmapi/vmmapi.c Tue Dec 30 22:04:24 2014 (r276427) +++ head/lib/libvmmapi/vmmapi.c Tue Dec 30 22:19:34 2014 (r276428) @@ -1146,3 +1146,55 @@ vm_set_intinfo(struct vmctx *ctx, int vc error = ioctl(ctx->fd, VM_SET_INTINFO, &vmii); return (error); } + +int +vm_rtc_write(struct vmctx *ctx, int offset, uint8_t value) +{ + struct vm_rtc_data rtcdata; + int error; + + bzero(&rtcdata, sizeof(struct vm_rtc_data)); + rtcdata.offset = offset; + rtcdata.value = value; + error = ioctl(ctx->fd, VM_RTC_WRITE, &rtcdata); + return (error); +} + +int +vm_rtc_read(struct vmctx *ctx, int offset, uint8_t *retval) +{ + struct vm_rtc_data rtcdata; + int error; + + bzero(&rtcdata, sizeof(struct vm_rtc_data)); + rtcdata.offset = offset; + error = ioctl(ctx->fd, VM_RTC_READ, &rtcdata); + if (error == 0) + *retval = rtcdata.value; + return (error); +} + +int +vm_rtc_settime(struct vmctx *ctx, time_t secs) +{ + struct vm_rtc_time rtctime; + int error; + + bzero(&rtctime, sizeof(struct vm_rtc_time)); + rtctime.secs = secs; + error = ioctl(ctx->fd, VM_RTC_SETTIME, &rtctime); + return (error); +} + +int +vm_rtc_gettime(struct vmctx *ctx, time_t *secs) +{ + struct vm_rtc_time rtctime; + int error; + + bzero(&rtctime, sizeof(struct vm_rtc_time)); + error = ioctl(ctx->fd, VM_RTC_GETTIME, &rtctime); + if (error == 0) + *secs = rtctime.secs; + return (error); +} Modified: head/lib/libvmmapi/vmmapi.h ============================================================================== --- head/lib/libvmmapi/vmmapi.h Tue Dec 30 22:04:24 2014 (r276427) +++ head/lib/libvmmapi/vmmapi.h Tue Dec 30 22:19:34 2014 (r276428) @@ -133,6 +133,12 @@ void vm_copyin(struct vmctx *ctx, int vc void vm_copyout(struct vmctx *ctx, int vcpu, const void *host_src, struct iovec *guest_iov, size_t len); +/* RTC */ +int vm_rtc_write(struct vmctx *ctx, int offset, uint8_t value); +int vm_rtc_read(struct vmctx *ctx, int offset, uint8_t *retval); +int vm_rtc_settime(struct vmctx *ctx, time_t secs); +int vm_rtc_gettime(struct vmctx *ctx, time_t *secs); + /* Reset vcpu register state */ int vcpu_reset(struct vmctx *ctx, int vcpu); Modified: head/sys/amd64/include/vmm.h ============================================================================== --- head/sys/amd64/include/vmm.h Tue Dec 30 22:04:24 2014 (r276427) +++ head/sys/amd64/include/vmm.h Tue Dec 30 22:19:34 2014 (r276428) @@ -286,6 +286,7 @@ int vm_unassign_pptdev(struct vm *vm, in struct vatpic *vm_atpic(struct vm *vm); struct vatpit *vm_atpit(struct vm *vm); struct vpmtmr *vm_pmtmr(struct vm *vm); +struct vrtc *vm_rtc(struct vm *vm); /* * Inject exception 'vme' into the guest vcpu. This function returns 0 on Modified: head/sys/amd64/include/vmm_dev.h ============================================================================== --- head/sys/amd64/include/vmm_dev.h Tue Dec 30 22:04:24 2014 (r276427) +++ head/sys/amd64/include/vmm_dev.h Tue Dec 30 22:19:34 2014 (r276428) @@ -195,6 +195,15 @@ struct vm_intinfo { uint64_t info2; }; +struct vm_rtc_time { + time_t secs; +}; + +struct vm_rtc_data { + int offset; + uint8_t value; +}; + enum { /* general routines */ IOCNUM_ABIVERS = 0, @@ -254,6 +263,12 @@ enum { /* vm_cpuset */ IOCNUM_ACTIVATE_CPU = 90, IOCNUM_GET_CPUSET = 91, + + /* RTC */ + IOCNUM_RTC_READ = 100, + IOCNUM_RTC_WRITE = 101, + IOCNUM_RTC_SETTIME = 102, + IOCNUM_RTC_GETTIME = 103, }; #define VM_RUN \ @@ -336,4 +351,12 @@ enum { _IOW('v', IOCNUM_SET_INTINFO, struct vm_intinfo) #define VM_GET_INTINFO \ _IOWR('v', IOCNUM_GET_INTINFO, struct vm_intinfo) +#define VM_RTC_WRITE \ + _IOW('v', IOCNUM_RTC_WRITE, struct vm_rtc_data) +#define VM_RTC_READ \ + _IOWR('v', IOCNUM_RTC_READ, struct vm_rtc_data) +#define VM_RTC_SETTIME \ + _IOW('v', IOCNUM_RTC_SETTIME, struct vm_rtc_time) +#define VM_RTC_GETTIME \ + _IOR('v', IOCNUM_RTC_GETTIME, struct vm_rtc_time) #endif Modified: head/sys/amd64/vmm/io/vhpet.c ============================================================================== --- head/sys/amd64/vmm/io/vhpet.c Tue Dec 30 22:04:24 2014 (r276427) +++ head/sys/amd64/vmm/io/vhpet.c Tue Dec 30 22:19:34 2014 (r276428) @@ -104,7 +104,6 @@ vhpet_capabilities(void) uint64_t cap = 0; cap |= 0x8086 << 16; /* vendor id */ - cap |= HPET_CAP_LEG_RT; /* legacy routing capable */ cap |= (VHPET_NUM_TIMERS - 1) << 8; /* number of timers */ cap |= 1; /* revision */ cap &= ~HPET_CAP_COUNT_SIZE; /* 32-bit timer */ @@ -127,15 +126,6 @@ vhpet_timer_msi_enabled(struct vhpet *vh { const uint64_t msi_enable = HPET_TCAP_FSB_INT_DEL | HPET_TCNF_FSB_EN; - /* - * LegacyReplacement Route configuration takes precedence over MSI - * for timers 0 and 1. - */ - if (n == 0 || n == 1) { - if (vhpet->config & HPET_CNF_LEG_RT) - return (false); - } - if ((vhpet->timer[n].cap_config & msi_enable) == msi_enable) return (true); else @@ -152,41 +142,9 @@ vhpet_timer_ioapic_pin(struct vhpet *vhp if (vhpet_timer_msi_enabled(vhpet, n)) return (0); - if (vhpet->config & HPET_CNF_LEG_RT) { - /* - * In "legacy routing" timers 0 and 1 are connected to - * ioapic pins 2 and 8 respectively. - */ - switch (n) { - case 0: - return (2); - case 1: - return (8); - } - } - return ((vhpet->timer[n].cap_config & HPET_TCNF_INT_ROUTE) >> 9); } -static __inline int -vhpet_timer_atpic_pin(struct vhpet *vhpet, int n) -{ - if (vhpet->config & HPET_CNF_LEG_RT) { - /* - * In "legacy routing" timers 0 and 1 are connected to - * 8259 master pin 0 and slave pin 0 respectively. - */ - switch (n) { - case 0: - return (0); - case 1: - return (8); - } - } - - return (-1); -} - static uint32_t vhpet_counter(struct vhpet *vhpet, sbintime_t *nowptr) { @@ -216,17 +174,12 @@ vhpet_counter(struct vhpet *vhpet, sbint static void vhpet_timer_clear_isr(struct vhpet *vhpet, int n) { - int pin, legacy_pin; + int pin; if (vhpet->isr & (1 << n)) { pin = vhpet_timer_ioapic_pin(vhpet, n); KASSERT(pin != 0, ("vhpet timer %d irq incorrectly routed", n)); vioapic_deassert_irq(vhpet->vm, pin); - - legacy_pin = vhpet_timer_atpic_pin(vhpet, n); - if (legacy_pin != -1) - vatpic_deassert_irq(vhpet->vm, legacy_pin); - vhpet->isr &= ~(1 << n); } } @@ -252,12 +205,6 @@ vhpet_timer_edge_trig(struct vhpet *vhpe KASSERT(!vhpet_timer_msi_enabled(vhpet, n), ("vhpet_timer_edge_trig: " "timer %d is using MSI", n)); - /* The legacy replacement interrupts are always edge triggered */ - if (vhpet->config & HPET_CNF_LEG_RT) { - if (n == 0 || n == 1) - return (true); - } - if ((vhpet->timer[n].cap_config & HPET_TCNF_INT_TYPE) == 0) return (true); else @@ -267,7 +214,7 @@ vhpet_timer_edge_trig(struct vhpet *vhpe static void vhpet_timer_interrupt(struct vhpet *vhpet, int n) { - int pin, legacy_pin; + int pin; /* If interrupts are not enabled for this timer then just return. */ if (!vhpet_timer_interrupt_enabled(vhpet, n)) @@ -293,17 +240,11 @@ vhpet_timer_interrupt(struct vhpet *vhpe return; } - legacy_pin = vhpet_timer_atpic_pin(vhpet, n); - if (vhpet_timer_edge_trig(vhpet, n)) { vioapic_pulse_irq(vhpet->vm, pin); - if (legacy_pin != -1) - vatpic_pulse_irq(vhpet->vm, legacy_pin); } else { vhpet->isr |= 1 << n; vioapic_assert_irq(vhpet->vm, pin); - if (legacy_pin != -1) - vatpic_assert_irq(vhpet->vm, legacy_pin); } } @@ -579,6 +520,13 @@ vhpet_mmio_write(void *vm, int vcpuid, u counter = vhpet_counter(vhpet, nowptr); oldval = vhpet->config; update_register(&vhpet->config, data, mask); + + /* + * LegacyReplacement Routing is not supported so clear the + * bit explicitly. + */ + vhpet->config &= ~HPET_CNF_LEG_RT; + if ((oldval ^ vhpet->config) & HPET_CNF_ENABLE) { if (vhpet_counter_enabled(vhpet)) { vhpet_start_counting(vhpet); Added: head/sys/amd64/vmm/io/vrtc.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/amd64/vmm/io/vrtc.c Tue Dec 30 22:19:34 2014 (r276428) @@ -0,0 +1,952 @@ +/*- + * Copyright (c) 2014, Neel Natu (neel@freebsd.org) + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice unmodified, this list of conditions, and the following + * disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include + +#include "vmm_ktr.h" +#include "vatpic.h" +#include "vioapic.h" +#include "vrtc.h" + +/* Register layout of the RTC */ +struct rtcdev { + uint8_t sec; + uint8_t alarm_sec; + uint8_t min; + uint8_t alarm_min; + uint8_t hour; + uint8_t alarm_hour; + uint8_t day_of_week; + uint8_t day_of_month; + uint8_t month; + uint8_t year; + uint8_t reg_a; + uint8_t reg_b; + uint8_t reg_c; + uint8_t reg_d; + uint8_t nvram[128 - 14]; +} __packed; +CTASSERT(sizeof(struct rtcdev) == 128); + +struct vrtc { + struct vm *vm; + struct mtx mtx; + struct callout callout; + u_int addr; /* RTC register to read or write */ + sbintime_t base_uptime; + time_t base_rtctime; + struct rtcdev rtcdev; +}; + +#define VRTC_LOCK(vrtc) mtx_lock(&((vrtc)->mtx)) +#define VRTC_UNLOCK(vrtc) mtx_unlock(&((vrtc)->mtx)) +#define VRTC_LOCKED(vrtc) mtx_owned(&((vrtc)->mtx)) + +/* + * RTC time is considered "broken" if: + * - RTC updates are halted by the guest + * - RTC date/time fields have invalid values + */ +#define VRTC_BROKEN_TIME ((time_t)-1) + +#define RTC_IRQ 8 +#define RTCSB_BIN 0x04 +#define RTCSB_ALL_INTRS (RTCSB_UINTR | RTCSB_AINTR | RTCSB_PINTR) +#define rtc_halted(vrtc) ((vrtc->rtcdev.reg_b & RTCSB_HALT) != 0) +#define aintr_enabled(vrtc) (((vrtc)->rtcdev.reg_b & RTCSB_AINTR) != 0) +#define pintr_enabled(vrtc) (((vrtc)->rtcdev.reg_b & RTCSB_PINTR) != 0) +#define uintr_enabled(vrtc) (((vrtc)->rtcdev.reg_b & RTCSB_UINTR) != 0) + +static void vrtc_callout_handler(void *arg); +static void vrtc_set_reg_c(struct vrtc *vrtc, uint8_t newval); + +static MALLOC_DEFINE(M_VRTC, "vrtc", "bhyve virtual rtc"); + +SYSCTL_DECL(_hw_vmm); +SYSCTL_NODE(_hw_vmm, OID_AUTO, vrtc, CTLFLAG_RW, NULL, NULL); + +static int rtc_flag_broken_time = 1; +SYSCTL_INT(_hw_vmm_vrtc, OID_AUTO, flag_broken_time, CTLFLAG_RDTUN, + &rtc_flag_broken_time, 0, "Stop guest when invalid RTC time is detected"); + +static __inline bool +divider_enabled(int reg_a) +{ + /* + * The RTC is counting only when dividers are not held in reset. + */ + return ((reg_a & 0x70) == 0x20); +} + +static __inline bool +update_enabled(struct vrtc *vrtc) +{ + /* + * RTC date/time can be updated only if: + * - divider is not held in reset + * - guest has not disabled updates + * - the date/time fields have valid contents + */ + if (!divider_enabled(vrtc->rtcdev.reg_a)) + return (false); + + if (rtc_halted(vrtc)) + return (false); + + if (vrtc->base_rtctime == VRTC_BROKEN_TIME) + return (false); + + return (true); +} + +static time_t +vrtc_curtime(struct vrtc *vrtc) +{ + sbintime_t now, delta; + time_t t; + + KASSERT(VRTC_LOCKED(vrtc), ("%s: vrtc not locked", __func__)); + + t = vrtc->base_rtctime; + if (update_enabled(vrtc)) { + now = sbinuptime(); + delta = now - vrtc->base_uptime; + KASSERT(delta >= 0, ("vrtc_curtime: uptime went backwards: " + "%#lx to %#lx", vrtc->base_uptime, now)); + t += delta / SBT_1S; + } + return (t); +} + +static __inline uint8_t +rtcset(struct rtcdev *rtc, int val) +{ + + KASSERT(val >= 0 && val < 100, ("%s: invalid bin2bcd index %d", + __func__, val)); + + return ((rtc->reg_b & RTCSB_BIN) ? val : bin2bcd_data[val]); +} + +static void +secs_to_rtc(time_t rtctime, struct vrtc *vrtc, int force_update) +{ + struct clocktime ct; + struct timespec ts; + struct rtcdev *rtc; + int hour; + + KASSERT(VRTC_LOCKED(vrtc), ("%s: vrtc not locked", __func__)); + + if (rtctime < 0) { + KASSERT(rtctime == VRTC_BROKEN_TIME, + ("%s: invalid vrtc time %#lx", __func__, rtctime)); + return; + } + + /* + * If the RTC is halted then the guest has "ownership" of the + * date/time fields. Don't update the RTC date/time fields in + * this case (unless forced). + */ + if (rtc_halted(vrtc) && !force_update) + return; + + ts.tv_sec = rtctime; + ts.tv_nsec = 0; + clock_ts_to_ct(&ts, &ct); + + KASSERT(ct.sec >= 0 && ct.sec <= 59, ("invalid clocktime sec %d", + ct.sec)); + KASSERT(ct.min >= 0 && ct.min <= 59, ("invalid clocktime min %d", + ct.min)); + KASSERT(ct.hour >= 0 && ct.hour <= 23, ("invalid clocktime hour %d", + ct.hour)); + KASSERT(ct.dow >= 0 && ct.dow <= 6, ("invalid clocktime wday %d", + ct.dow)); + KASSERT(ct.day >= 1 && ct.day <= 31, ("invalid clocktime mday %d", + ct.day)); + KASSERT(ct.mon >= 1 && ct.mon <= 12, ("invalid clocktime month %d", + ct.mon)); + KASSERT(ct.year >= POSIX_BASE_YEAR, ("invalid clocktime year %d", + ct.year)); + + rtc = &vrtc->rtcdev; + rtc->sec = rtcset(rtc, ct.sec); + rtc->min = rtcset(rtc, ct.min); + + hour = ct.hour; + if ((rtc->reg_b & RTCSB_24HR) == 0) + hour = (hour % 12) + 1; /* convert to a 12-hour format */ + + rtc->hour = rtcset(rtc, hour); + + if ((rtc->reg_b & RTCSB_24HR) == 0 && ct.hour >= 12) + rtc->hour |= 0x80; /* set MSB to indicate PM */ + + rtc->day_of_week = rtcset(rtc, ct.dow + 1); + rtc->day_of_month = rtcset(rtc, ct.day); + rtc->month = rtcset(rtc, ct.mon); + rtc->year = rtcset(rtc, ct.year % 100); +} + +static int +rtcget(struct rtcdev *rtc, int val, int *retval) +{ + uint8_t upper, lower; + + if (rtc->reg_b & RTCSB_BIN) { + *retval = val; + return (0); + } + + lower = val & 0xf; + upper = (val >> 4) & 0xf; + + if (lower > 9 || upper > 9) + return (-1); + + *retval = upper * 10 + lower; + return (0); +} + +static time_t +rtc_to_secs(struct vrtc *vrtc) +{ + struct clocktime ct; + struct timespec ts; + struct rtcdev *rtc; + struct vm *vm; + int error, hour, pm, year; + + KASSERT(VRTC_LOCKED(vrtc), ("%s: vrtc not locked", __func__)); + + vm = vrtc->vm; + rtc = &vrtc->rtcdev; + + bzero(&ct, sizeof(struct clocktime)); + + error = rtcget(rtc, rtc->sec, &ct.sec); + if (error || ct.sec < 0 || ct.sec > 59) { + VM_CTR2(vm, "Invalid RTC sec %#x/%d", rtc->sec, ct.sec); + goto fail; + } + + error = rtcget(rtc, rtc->min, &ct.min); + if (error || ct.min < 0 || ct.min > 59) { + VM_CTR2(vm, "Invalid RTC min %#x/%d", rtc->min, ct.min); + goto fail; + } + + pm = 0; + hour = rtc->hour; + if ((rtc->reg_b & RTCSB_24HR) == 0) { + if (hour & 0x80) { + hour &= ~0x80; + pm = 1; + } + } + error = rtcget(rtc, hour, &ct.hour); + if ((rtc->reg_b & RTCSB_24HR) == 0) { + ct.hour -= 1; + if (pm) + ct.hour += 12; + } + + if (error || ct.hour < 0 || ct.hour > 23) { + VM_CTR2(vm, "Invalid RTC hour %#x/%d", rtc->hour, ct.hour); + goto fail; + } + + /* + * Ignore 'rtc->dow' because some guests like Linux don't bother + * setting it at all while others like OpenBSD/i386 set it incorrectly. + * + * clock_ct_to_ts() does not depend on 'ct.dow' anyways so ignore it. + */ + ct.dow = -1; + + error = rtcget(rtc, rtc->day_of_month, &ct.day); + if (error || ct.day < 1 || ct.day > 31) { + VM_CTR2(vm, "Invalid RTC mday %#x/%d", rtc->day_of_month, + ct.day); + goto fail; + } + + error = rtcget(rtc, rtc->month, &ct.mon); + if (error || ct.mon < 1 || ct.mon > 12) { + VM_CTR2(vm, "Invalid RTC month %#x/%d", rtc->month, ct.mon); + goto fail; + } + + error = rtcget(rtc, rtc->year, &year); + if (error || year < 0 || year > 99) { + VM_CTR2(vm, "Invalid RTC year %#x/%d", rtc->year, year); + goto fail; + } + if (year >= 70) + ct.year = 1900 + year; + else + ct.year = 2000 + year; + + error = clock_ct_to_ts(&ct, &ts); + if (error || ts.tv_sec < 0) { + VM_CTR3(vm, "Invalid RTC clocktime.date %04d-%02d-%02d", + ct.year, ct.mon, ct.day); + VM_CTR3(vm, "Invalid RTC clocktime.time %02d:%02d:%02d", + ct.hour, ct.min, ct.sec); + goto fail; + } + return (ts.tv_sec); /* success */ +fail: + return (VRTC_BROKEN_TIME); /* failure */ +} + +static int +vrtc_time_update(struct vrtc *vrtc, time_t newtime) +{ + struct rtcdev *rtc; + time_t oldtime; + uint8_t alarm_sec, alarm_min, alarm_hour; + + KASSERT(VRTC_LOCKED(vrtc), ("%s: vrtc not locked", __func__)); + + rtc = &vrtc->rtcdev; + alarm_sec = rtc->alarm_sec; + alarm_min = rtc->alarm_min; + alarm_hour = rtc->alarm_hour; + + oldtime = vrtc->base_rtctime; + VM_CTR2(vrtc->vm, "Updating RTC time from %#lx to %#lx", + oldtime, newtime); + + if (newtime == oldtime) + return (0); + + /* + * If 'newtime' indicates that RTC updates are disabled then just + * record that and return. There is no need to do alarm interrupt + * processing or update 'base_uptime' in this case. + */ + if (newtime == VRTC_BROKEN_TIME) { + vrtc->base_rtctime = VRTC_BROKEN_TIME; + return (0); + } + + /* + * Return an error if RTC updates are halted by the guest. + */ + if (rtc_halted(vrtc)) { + VM_CTR0(vrtc->vm, "RTC update halted by guest"); + return (EBUSY); + } + + do { + /* + * If the alarm interrupt is enabled and 'oldtime' is valid + * then visit all the seconds between 'oldtime' and 'newtime' + * to check for the alarm condition. + * + * Otherwise move the RTC time forward directly to 'newtime'. + */ + if (aintr_enabled(vrtc) && oldtime != VRTC_BROKEN_TIME) + vrtc->base_rtctime++; + else + vrtc->base_rtctime = newtime; + + if (aintr_enabled(vrtc)) { + /* + * Update the RTC date/time fields before checking + * if the alarm conditions are satisfied. + */ + secs_to_rtc(vrtc->base_rtctime, vrtc, 0); + + if ((alarm_sec >= 0xC0 || alarm_sec == rtc->sec) && + (alarm_min >= 0xC0 || alarm_min == rtc->min) && + (alarm_hour >= 0xC0 || alarm_hour == rtc->hour)) { + vrtc_set_reg_c(vrtc, rtc->reg_c | RTCIR_ALARM); + } + } + } while (vrtc->base_rtctime != newtime); + + if (uintr_enabled(vrtc)) + vrtc_set_reg_c(vrtc, rtc->reg_c | RTCIR_UPDATE); + + vrtc->base_uptime = sbinuptime(); + + return (0); +} + +static sbintime_t +vrtc_freq(struct vrtc *vrtc) +{ + int ratesel; + + static sbintime_t pf[16] = { + 0, + SBT_1S / 256, + SBT_1S / 128, + SBT_1S / 8192, + SBT_1S / 4096, + SBT_1S / 2048, + SBT_1S / 1024, + SBT_1S / 512, + SBT_1S / 256, + SBT_1S / 128, + SBT_1S / 64, + SBT_1S / 32, + SBT_1S / 16, + SBT_1S / 8, + SBT_1S / 4, + SBT_1S / 2, + }; + + KASSERT(VRTC_LOCKED(vrtc), ("%s: vrtc not locked", __func__)); + + /* + * If both periodic and alarm interrupts are enabled then use the + * periodic frequency to drive the callout. The minimum periodic + * frequency (2 Hz) is higher than the alarm frequency (1 Hz) so + * piggyback the alarm on top of it. The same argument applies to + * the update interrupt. + */ + if (pintr_enabled(vrtc) && divider_enabled(vrtc->rtcdev.reg_a)) { + ratesel = vrtc->rtcdev.reg_a & 0xf; + return (pf[ratesel]); + } else if (aintr_enabled(vrtc) && update_enabled(vrtc)) { + return (SBT_1S); + } else if (uintr_enabled(vrtc) && update_enabled(vrtc)) { + return (SBT_1S); + } else { + return (0); + } +} + +static void +vrtc_callout_reset(struct vrtc *vrtc, sbintime_t freqsbt) +{ + + KASSERT(VRTC_LOCKED(vrtc), ("%s: vrtc not locked", __func__)); + + if (freqsbt == 0) { + if (callout_active(&vrtc->callout)) { + VM_CTR0(vrtc->vm, "RTC callout stopped"); + callout_stop(&vrtc->callout); + } + return; + } + VM_CTR1(vrtc->vm, "RTC callout frequency %d hz", SBT_1S / freqsbt); + callout_reset_sbt(&vrtc->callout, freqsbt, 0, vrtc_callout_handler, + vrtc, 0); +} + +static void +vrtc_callout_handler(void *arg) +{ + struct vrtc *vrtc = arg; + sbintime_t freqsbt; + time_t rtctime; + int error; + + VM_CTR0(vrtc->vm, "vrtc callout fired"); + + VRTC_LOCK(vrtc); + if (callout_pending(&vrtc->callout)) /* callout was reset */ + goto done; + + if (!callout_active(&vrtc->callout)) /* callout was stopped */ + goto done; + + callout_deactivate(&vrtc->callout); + + KASSERT((vrtc->rtcdev.reg_b & RTCSB_ALL_INTRS) != 0, + ("gratuitous vrtc callout")); + + if (pintr_enabled(vrtc)) + vrtc_set_reg_c(vrtc, vrtc->rtcdev.reg_c | RTCIR_PERIOD); + + if (aintr_enabled(vrtc) || uintr_enabled(vrtc)) { + rtctime = vrtc_curtime(vrtc); + error = vrtc_time_update(vrtc, rtctime); + KASSERT(error == 0, ("%s: vrtc_time_update error %d", + __func__, error)); + } + + freqsbt = vrtc_freq(vrtc); + KASSERT(freqsbt != 0, ("%s: vrtc frequency cannot be zero", __func__)); + vrtc_callout_reset(vrtc, freqsbt); +done: + VRTC_UNLOCK(vrtc); +} + +static __inline void +vrtc_callout_check(struct vrtc *vrtc, sbintime_t freq) +{ + int active; + + active = callout_active(&vrtc->callout) ? 1 : 0; + KASSERT((freq == 0 && !active) || (freq != 0 && active), + ("vrtc callout %s with frequency %#lx", + active ? "active" : "inactive", freq)); +} + +static void +vrtc_set_reg_c(struct vrtc *vrtc, uint8_t newval) +{ + struct rtcdev *rtc; + int oldirqf, newirqf; + uint8_t oldval, changed; + + KASSERT(VRTC_LOCKED(vrtc), ("%s: vrtc not locked", __func__)); + + rtc = &vrtc->rtcdev; + newval &= RTCIR_ALARM | RTCIR_PERIOD | RTCIR_UPDATE; + + oldirqf = rtc->reg_c & RTCIR_INT; + if ((aintr_enabled(vrtc) && (newval & RTCIR_ALARM) != 0) || + (pintr_enabled(vrtc) && (newval & RTCIR_PERIOD) != 0) || + (uintr_enabled(vrtc) && (newval & RTCIR_UPDATE) != 0)) { + newirqf = RTCIR_INT; + } else { + newirqf = 0; + } + + oldval = rtc->reg_c; + rtc->reg_c = newirqf | newval; + changed = oldval ^ rtc->reg_c; + if (changed) { + VM_CTR2(vrtc->vm, "RTC reg_c changed from %#x to %#x", + oldval, rtc->reg_c); + } + + if (!oldirqf && newirqf) { + VM_CTR1(vrtc->vm, "RTC irq %d asserted", RTC_IRQ); + vatpic_pulse_irq(vrtc->vm, RTC_IRQ); + vioapic_pulse_irq(vrtc->vm, RTC_IRQ); + } else if (oldirqf && !newirqf) { + VM_CTR1(vrtc->vm, "RTC irq %d deasserted", RTC_IRQ); + } +} + +static int +vrtc_set_reg_b(struct vrtc *vrtc, uint8_t newval) +{ + struct rtcdev *rtc; + sbintime_t oldfreq, newfreq; + time_t curtime, rtctime; + int error; + uint8_t oldval, changed; + + KASSERT(VRTC_LOCKED(vrtc), ("%s: vrtc not locked", __func__)); + + rtc = &vrtc->rtcdev; + oldval = rtc->reg_b; + oldfreq = vrtc_freq(vrtc); + + rtc->reg_b = newval; + changed = oldval ^ newval; + if (changed) { + VM_CTR2(vrtc->vm, "RTC reg_b changed from %#x to %#x", + oldval, newval); + } + + if (changed & RTCSB_HALT) { + if ((newval & RTCSB_HALT) == 0) { + rtctime = rtc_to_secs(vrtc); + if (rtctime == VRTC_BROKEN_TIME) { + /* + * Stop updating the RTC if the date/time + * programmed by the guest is not correct. + */ + VM_CTR0(vrtc->vm, "Invalid RTC date/time " + "programming detected"); + + if (rtc_flag_broken_time) + return (-1); + } + } else { + curtime = vrtc_curtime(vrtc); + KASSERT(curtime == vrtc->base_rtctime, ("%s: mismatch " + "between vrtc basetime (%#lx) and curtime (%#lx)", + __func__, vrtc->base_rtctime, curtime)); + + /* + * Force a refresh of the RTC date/time fields so + * they reflect the time right before the guest set + * the HALT bit. + */ + secs_to_rtc(curtime, vrtc, 1); + + /* + * Updates are halted so mark 'base_rtctime' to denote + * that the RTC date/time is in flux. + */ + rtctime = VRTC_BROKEN_TIME; + rtc->reg_b &= ~RTCSB_UINTR; + } + error = vrtc_time_update(vrtc, rtctime); + KASSERT(error == 0, ("vrtc_time_update error %d", error)); + } + + /* + * Side effect of changes to the interrupt enable bits. + */ + if (changed & RTCSB_ALL_INTRS) + vrtc_set_reg_c(vrtc, vrtc->rtcdev.reg_c); + + /* + * Change the callout frequency if it has changed. + */ + newfreq = vrtc_freq(vrtc); + if (newfreq != oldfreq) + vrtc_callout_reset(vrtc, newfreq); + else + vrtc_callout_check(vrtc, newfreq); + + /* + * The side effect of bits that control the RTC date/time format + * is handled lazily when those fields are actually read. + */ + return (0); +} + +static void +vrtc_set_reg_a(struct vrtc *vrtc, uint8_t newval) +{ + sbintime_t oldfreq, newfreq; + uint8_t oldval, changed; + + KASSERT(VRTC_LOCKED(vrtc), ("%s: vrtc not locked", __func__)); + + newval &= ~RTCSA_TUP; + oldval = vrtc->rtcdev.reg_a; + oldfreq = vrtc_freq(vrtc); + + if (divider_enabled(oldval) && !divider_enabled(newval)) { + VM_CTR2(vrtc->vm, "RTC divider held in reset at %#lx/%#lx", + vrtc->base_rtctime, vrtc->base_uptime); + } else if (!divider_enabled(oldval) && divider_enabled(newval)) { + /* + * If the dividers are coming out of reset then update + * 'base_uptime' before this happens. This is done to + * maintain the illusion that the RTC date/time was frozen + * while the dividers were disabled. + */ + vrtc->base_uptime = sbinuptime(); + VM_CTR2(vrtc->vm, "RTC divider out of reset at %#lx/%#lx", + vrtc->base_rtctime, vrtc->base_uptime); + } else { + /* NOTHING */ + } + + vrtc->rtcdev.reg_a = newval; + changed = oldval ^ newval; + if (changed) { + VM_CTR2(vrtc->vm, "RTC reg_a changed from %#x to %#x", + oldval, newval); + } + + /* + * Side effect of changes to rate select and divider enable bits. + */ + newfreq = vrtc_freq(vrtc); + if (newfreq != oldfreq) + vrtc_callout_reset(vrtc, newfreq); + else + vrtc_callout_check(vrtc, newfreq); +} + +int +vrtc_set_time(struct vm *vm, time_t secs) +{ + struct vrtc *vrtc; + int error; + + vrtc = vm_rtc(vm); + VRTC_LOCK(vrtc); + error = vrtc_time_update(vrtc, secs); + VRTC_UNLOCK(vrtc); + + if (error) { + VM_CTR2(vrtc->vm, "Error %d setting RTC time to %#lx", error, + secs); + } else { + VM_CTR1(vrtc->vm, "RTC time set to %#lx", secs); + } + + return (error); +} + +time_t +vrtc_get_time(struct vm *vm) +{ + struct vrtc *vrtc; + time_t t; + + vrtc = vm_rtc(vm); + VRTC_LOCK(vrtc); + t = vrtc_curtime(vrtc); + VRTC_UNLOCK(vrtc); + *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 22:32:30 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 561036E7; Tue, 30 Dec 2014 22:32:30 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 424E6138E; Tue, 30 Dec 2014 22:32:30 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBUMWUKu003606; Tue, 30 Dec 2014 22:32:30 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBUMWUWA003605; Tue, 30 Dec 2014 22:32:30 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201412302232.sBUMWUWA003605@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Garrett Cooper Date: Tue, 30 Dec 2014 22:32:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276430 - head/contrib/netbsd-tests/lib/libc/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 22:32:30 -0000 Author: ngie Date: Tue Dec 30 22:32:29 2014 New Revision: 276430 URL: https://svnweb.freebsd.org/changeset/base/276430 Log: Expect access_test:access_inval to fail before __FreeBSD_version == 1100033 This will allow me to MFC the test, as jilles@ requested that I don't MFC the access(2) KBI change to 10-STABLE in r271655 Modified: head/contrib/netbsd-tests/lib/libc/sys/t_access.c Modified: head/contrib/netbsd-tests/lib/libc/sys/t_access.c ============================================================================== --- head/contrib/netbsd-tests/lib/libc/sys/t_access.c Tue Dec 30 22:22:46 2014 (r276429) +++ head/contrib/netbsd-tests/lib/libc/sys/t_access.c Tue Dec 30 22:32:29 2014 (r276430) @@ -41,6 +41,7 @@ __RCSID("$NetBSD: t_access.c,v 1.1 2011/ #include #ifdef __FreeBSD__ +#include #include #endif @@ -116,6 +117,10 @@ ATF_TC_HEAD(access_inval, tc) ATF_TC_BODY(access_inval, tc) { +#if defined(__FreeBSD__) && __FreeBSD_version < 1100033 + atf_tc_expect_fail("arguments to access aren't validated; see " + "bug # 181155 for more details"); +#endif errno = 0; ATF_REQUIRE(access("/usr", -1) != 0); From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 22:41:54 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1792F8A0; Tue, 30 Dec 2014 22:41:54 +0000 (UTC) Received: from mail-wg0-x22b.google.com (mail-wg0-x22b.google.com [IPv6:2a00:1450:400c:c00::22b]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id AC01C1518; Tue, 30 Dec 2014 22:41:53 +0000 (UTC) Received: by mail-wg0-f43.google.com with SMTP id k14so3471700wgh.30; Tue, 30 Dec 2014 14:41:51 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=kj6WXzEf3nFFY0nIeZilQzFKIRTLNPqMmhCWOZjnaTs=; b=LIs91Phhci00wA6mcy71gKpZsTfK5GPpUvBskC5nKtyH1Q3XpHTOv2emHi4vbZPX8q w3YAwnDrhYkHeDRW4mqdIOEJjmkj1EQnJ94DksiBqARGxW6SC4Ozn1eTLtjEwQ/zSc/5 tCFkdYyY6RWoSsFiQWv0slebSR1fMNGQODwdQLTfJE1gR+bXXSeMC14Fl4wxxmnSr22P exBdjPiUgC2lw0aK4USTYGWxTiA0ufkD3BzickAhmLJQbPZ5AhFR04m19kiQjnY1SexS qW+LzIO9mLG+oWGTWx1gDxl9NW4rRPr97x/eVBlNIdFLJOBEmwgpzommuPCCUJF7FRa6 XRmw== X-Received: by 10.180.205.163 with SMTP id lh3mr111715921wic.63.1419979311637; Tue, 30 Dec 2014 14:41:51 -0800 (PST) Received: from dft-labs.eu (n1x0n-1-pt.tunnel.tserv5.lon1.ipv6.he.net. [2001:470:1f08:1f7::2]) by mx.google.com with ESMTPSA id fp2sm42438771wib.8.2014.12.30.14.41.50 (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Tue, 30 Dec 2014 14:41:50 -0800 (PST) Date: Tue, 30 Dec 2014 23:41:48 +0100 From: Mateusz Guzik To: Gleb Smirnoff Subject: Re: svn commit: r276341 - head/sys/kern Message-ID: <20141230224148.GB27329@dft-labs.eu> References: <201412281924.sBSJO284028980@svn.freebsd.org> <20141230200601.GF15484@FreeBSD.org> <20141230202226.GA27329@dft-labs.eu> <20141230221243.GH15484@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20141230221243.GH15484@FreeBSD.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 22:41:54 -0000 On Wed, Dec 31, 2014 at 01:12:43AM +0300, Gleb Smirnoff wrote: > On Tue, Dec 30, 2014 at 09:22:27PM +0100, Mateusz Guzik wrote: > M> On Tue, Dec 30, 2014 at 11:06:01PM +0300, Gleb Smirnoff wrote: > M> > On Sun, Dec 28, 2014 at 07:24:02PM +0000, Mateusz Guzik wrote: > M> > M> Author: mjg > M> > M> Date: Sun Dec 28 19:24:01 2014 > M> > M> New Revision: 276341 > M> > M> URL: https://svnweb.freebsd.org/changeset/base/276341 > M> > M> > M> > M> Log: > M> > M> sysctl: don't modify oid_running for static nodes > M> > M> > M> > M> It is necessary to prevent nodes from being destroyed while used, but static > M> > M> ones cannot be destroyed. > M> > > M> > What about nodes that go away on kernel module unload? Not sure > M> > they were protected properly before your commit, though :) > M> > > M> > M> They are not static. > > I don't see how they can get CTLFLAG_DYN. Look for any (un)loadable > modules as an example, e.g. aio(4) implemented in vfs_aio.c. How its > sysctls get CTLFLAG_DYN? > Bugger. Turns out indeed one can sysctl_register_oid and then it does not have the flag. What's more, one can unregister it in similar way which completely ignores oid_running anyway. As such, yes, there is a bug but my changes don't affect it. Maybe I'll try to fix it later with a proven hack (a macro which expands to 0 at kernel compile time and to _DYN during module build). -- Mateusz Guzik From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 22:46:31 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 36307B13; Tue, 30 Dec 2014 22:46:31 +0000 (UTC) Received: from mx1.sbone.de (bird.sbone.de [46.4.1.90]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client CN "mx1.sbone.de", Issuer "SBone.DE" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 618811572; Tue, 30 Dec 2014 22:46:30 +0000 (UTC) Received: from mail.sbone.de (mail.sbone.de [IPv6:fde9:577b:c1a9:31::2013:587]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by mx1.sbone.de (Postfix) with ESMTPS id AA6F625D388C; Tue, 30 Dec 2014 22:46:20 +0000 (UTC) Received: from content-filter.sbone.de (content-filter.sbone.de [IPv6:fde9:577b:c1a9:31::2013:2742]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPS id B08B5C7709C; Tue, 30 Dec 2014 22:46:19 +0000 (UTC) X-Virus-Scanned: amavisd-new at sbone.de Received: from mail.sbone.de ([IPv6:fde9:577b:c1a9:31::2013:587]) by content-filter.sbone.de (content-filter.sbone.de [fde9:577b:c1a9:31::2013:2742]) (amavisd-new, port 10024) with ESMTP id 2y25BAHTOcgu; Tue, 30 Dec 2014 22:46:17 +0000 (UTC) Received: from [IPv6:fde9:577b:c1a9:4410:dbd:a00d:7703:7346] (unknown [IPv6:fde9:577b:c1a9:4410:dbd:a00d:7703:7346]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.sbone.de (Postfix) with ESMTPSA id F17AEC7706F; Tue, 30 Dec 2014 22:46:16 +0000 (UTC) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Subject: Re: svn commit: r276424 - head/sys/kern From: "Bjoern A. Zeeb" In-Reply-To: <201412302140.sBULek5f076019@svn.freebsd.org> Date: Tue, 30 Dec 2014 22:45:43 +0000 Content-Transfer-Encoding: quoted-printable Message-Id: References: <201412302140.sBULek5f076019@svn.freebsd.org> To: Mateusz Guzik X-Mailer: Apple Mail (2.1993) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 22:46:31 -0000 > On 30 Dec 2014, at 21:40 , Mateusz Guzik wrote: >=20 > Author: mjg > Date: Tue Dec 30 21:40:45 2014 > New Revision: 276424 > URL: https://svnweb.freebsd.org/changeset/base/276424 >=20 > Log: > Convert vfs hash lock from a mutex to an rwlock. This is very obvious from the change. What is not and should be described as well is some of this: - Why? - What are the benefits? - What are the locking implications? - Does it make a performance difference? If yes, was it measured? - =E2=80=A6 (you got the idea) >=20 > Modified: > head/sys/kern/vfs_hash.c >=20 > Modified: head/sys/kern/vfs_hash.c > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/sys/kern/vfs_hash.c Tue Dec 30 20:46:01 2014 = (r276423) > +++ head/sys/kern/vfs_hash.c Tue Dec 30 21:40:45 2014 = (r276424) > @@ -33,6 +33,7 @@ __FBSDID("$FreeBSD$"); > #include > #include > #include > +#include > #include >=20 > static MALLOC_DEFINE(M_VFS_HASH, "vfs_hash", "VFS hash table"); > @@ -40,14 +41,14 @@ static MALLOC_DEFINE(M_VFS_HASH, "vfs_ha > static LIST_HEAD(vfs_hash_head, vnode) *vfs_hash_tbl; > static LIST_HEAD(,vnode) vfs_hash_side; > static u_long vfs_hash_mask; > -static struct mtx vfs_hash_mtx; > +static struct rwlock vfs_hash_lock; >=20 > static void > vfs_hashinit(void *dummy __unused) > { >=20 > vfs_hash_tbl =3D hashinit(desiredvnodes, M_VFS_HASH, = &vfs_hash_mask); > - mtx_init(&vfs_hash_mtx, "vfs hash", NULL, MTX_DEF); > + rw_init(&vfs_hash_lock, "vfs hash"); > LIST_INIT(&vfs_hash_side); > } >=20 > @@ -75,7 +76,7 @@ vfs_hash_get(const struct mount *mp, u_i > int error; >=20 > while (1) { > - mtx_lock(&vfs_hash_mtx); > + rw_rlock(&vfs_hash_lock); > LIST_FOREACH(vp, vfs_hash_bucket(mp, hash), v_hashlist) = { > if (vp->v_hash !=3D hash) > continue; > @@ -84,7 +85,7 @@ vfs_hash_get(const struct mount *mp, u_i > if (fn !=3D NULL && fn(vp, arg)) > continue; > VI_LOCK(vp); > - mtx_unlock(&vfs_hash_mtx); > + rw_runlock(&vfs_hash_lock); > error =3D vget(vp, flags | LK_INTERLOCK, td); > if (error =3D=3D ENOENT && (flags & LK_NOWAIT) = =3D=3D 0) > break; > @@ -94,7 +95,7 @@ vfs_hash_get(const struct mount *mp, u_i > return (0); > } > if (vp =3D=3D NULL) { > - mtx_unlock(&vfs_hash_mtx); > + rw_runlock(&vfs_hash_lock); > *vpp =3D NULL; > return (0); > } > @@ -105,9 +106,9 @@ void > vfs_hash_remove(struct vnode *vp) > { >=20 > - mtx_lock(&vfs_hash_mtx); > + rw_wlock(&vfs_hash_lock); > LIST_REMOVE(vp, v_hashlist); > - mtx_unlock(&vfs_hash_mtx); > + rw_wunlock(&vfs_hash_lock); > } >=20 > int > @@ -118,7 +119,7 @@ vfs_hash_insert(struct vnode *vp, u_int=20 >=20 > *vpp =3D NULL; > while (1) { > - mtx_lock(&vfs_hash_mtx); > + rw_wlock(&vfs_hash_lock); > LIST_FOREACH(vp2, > vfs_hash_bucket(vp->v_mount, hash), v_hashlist) { > if (vp2->v_hash !=3D hash) > @@ -128,13 +129,13 @@ vfs_hash_insert(struct vnode *vp, u_int=20 > if (fn !=3D NULL && fn(vp2, arg)) > continue; > VI_LOCK(vp2); > - mtx_unlock(&vfs_hash_mtx); > + rw_wunlock(&vfs_hash_lock); > error =3D vget(vp2, flags | LK_INTERLOCK, td); > if (error =3D=3D ENOENT && (flags & LK_NOWAIT) = =3D=3D 0) > break; > - mtx_lock(&vfs_hash_mtx); > + rw_wlock(&vfs_hash_lock); > LIST_INSERT_HEAD(&vfs_hash_side, vp, = v_hashlist); > - mtx_unlock(&vfs_hash_mtx); > + rw_wunlock(&vfs_hash_lock); > vput(vp); > if (!error) > *vpp =3D vp2; > @@ -146,7 +147,7 @@ vfs_hash_insert(struct vnode *vp, u_int=20 > } > vp->v_hash =3D hash; > LIST_INSERT_HEAD(vfs_hash_bucket(vp->v_mount, hash), vp, = v_hashlist); > - mtx_unlock(&vfs_hash_mtx); > + rw_wunlock(&vfs_hash_lock); > return (0); > } >=20 > @@ -154,9 +155,9 @@ void > vfs_hash_rehash(struct vnode *vp, u_int hash) > { >=20 > - mtx_lock(&vfs_hash_mtx); > + rw_wlock(&vfs_hash_lock); > LIST_REMOVE(vp, v_hashlist); > LIST_INSERT_HEAD(vfs_hash_bucket(vp->v_mount, hash), vp, = v_hashlist); > vp->v_hash =3D hash; > - mtx_unlock(&vfs_hash_mtx); > + rw_wunlock(&vfs_hash_lock); > } >=20 =E2=80=94=20 Bjoern A. Zeeb Charles Haddon Spurgeon: "Friendship is one of the sweetest joys of life. Many might have failed beneath the bitterness of their trial had they not found a friend." From owner-svn-src-head@FreeBSD.ORG Tue Dec 30 23:38:33 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 03B5B319; Tue, 30 Dec 2014 23:38:33 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E46293CC9; Tue, 30 Dec 2014 23:38:32 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBUNcWqr032730; Tue, 30 Dec 2014 23:38:32 GMT (envelope-from neel@FreeBSD.org) Received: (from neel@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBUNcW97032729; Tue, 30 Dec 2014 23:38:32 GMT (envelope-from neel@FreeBSD.org) Message-Id: <201412302338.sBUNcW97032729@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: neel set sender to neel@FreeBSD.org using -f From: Neel Natu Date: Tue, 30 Dec 2014 23:38:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276432 - head/sys/amd64/vmm/amd X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Dec 2014 23:38:33 -0000 Author: neel Date: Tue Dec 30 23:38:31 2014 New Revision: 276432 URL: https://svnweb.freebsd.org/changeset/base/276432 Log: Initialize all fields of 'struct vm_exception exception' before passing it to vm_inject_exception(). This fixes the issue that 'exception.cpuid' is uninitialized when calling 'vm_inject_exception()'. However, in practice this change is a no-op because vm_inject_exception() does not use 'exception.cpuid' for anything. Reported by: Coverity Scan CID: 1261297 MFC after: 3 days Modified: head/sys/amd64/vmm/amd/svm.c Modified: head/sys/amd64/vmm/amd/svm.c ============================================================================== --- head/sys/amd64/vmm/amd/svm.c Tue Dec 30 22:46:20 2014 (r276431) +++ head/sys/amd64/vmm/amd/svm.c Tue Dec 30 23:38:31 2014 (r276432) @@ -1322,9 +1322,12 @@ svm_vmexit(struct svm_softc *svm_sc, int if (reflect) { /* Reflect the exception back into the guest */ + bzero(&exception, sizeof(struct vm_exception)); exception.vector = idtvec; - exception.error_code_valid = errcode_valid; - exception.error_code = errcode_valid ? info1 : 0; + if (errcode_valid) { + exception.error_code = info1; + exception.error_code_valid = 1; + } VCPU_CTR2(svm_sc->vm, vcpu, "Reflecting exception " "%d/%#x into the guest", exception.vector, exception.error_code); From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 00:54:40 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 977EE52B; Wed, 31 Dec 2014 00:54:40 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 82F1229F1; Wed, 31 Dec 2014 00:54:40 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBV0seQM075551; Wed, 31 Dec 2014 00:54:40 GMT (envelope-from alc@FreeBSD.org) Received: (from alc@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBV0sdk1075545; Wed, 31 Dec 2014 00:54:39 GMT (envelope-from alc@FreeBSD.org) Message-Id: <201412310054.sBV0sdk1075545@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: alc set sender to alc@FreeBSD.org using -f From: Alan Cox Date: Wed, 31 Dec 2014 00:54:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276439 - in head/sys: amd64/include mips/include vm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 00:54:40 -0000 Author: alc Date: Wed Dec 31 00:54:38 2014 New Revision: 276439 URL: https://svnweb.freebsd.org/changeset/base/276439 Log: The physical memory allocator supports the use of distinct free lists for managing pages from different address ranges. Generally speaking, this feature is used to increase the likelihood that physical pages are available that can meet special DMA requirements or can be accessed through a limited-coverage direct mapping (e.g., MIPS). However, prior to this change, the configuration of the free lists was static, i.e., it was determined at compile time. Consequentally, free lists could be created for address ranges that held no actual pages, for example, on 32-bit MIPS- based systems with 512 MB or less of physical memory. This change makes the creation of the free lists dynamic, i.e., it is based on the available physical memory at boot time. On 64-bit x86-based systems with 64 GB or more of physical memory, create free lists for managing pages with physical addresses below 4 GB. This change is to address reported problems with initializing devices that require the allocation of physical pages below 4 GB on some systems with 128 GB or more of physical memory. PR: 185727 Differential Revision: https://reviews.freebsd.org/D1274 Reviewed by: jhb, kib MFC after: 3 weeks Sponsored by: EMC / Isilon Storage Division Modified: head/sys/amd64/include/vmparam.h head/sys/mips/include/vmparam.h head/sys/vm/vm_phys.c head/sys/vm/vm_phys.h Modified: head/sys/amd64/include/vmparam.h ============================================================================== --- head/sys/amd64/include/vmparam.h Wed Dec 31 00:44:11 2014 (r276438) +++ head/sys/amd64/include/vmparam.h Wed Dec 31 00:54:38 2014 (r276439) @@ -101,14 +101,22 @@ #define VM_FREEPOOL_DIRECT 1 /* - * Create two free page lists: VM_FREELIST_DEFAULT is for physical - * pages that are above the largest physical address that is - * accessible by ISA DMA and VM_FREELIST_ISADMA is for physical pages - * that are below that address. + * Create up to three free page lists: VM_FREELIST_DMA32 is for physical pages + * that have physical addresses below 4G but are not accessible by ISA DMA, + * and VM_FREELIST_ISADMA is for physical pages that are accessible by ISA + * DMA. */ -#define VM_NFREELIST 2 +#define VM_NFREELIST 3 #define VM_FREELIST_DEFAULT 0 -#define VM_FREELIST_ISADMA 1 +#define VM_FREELIST_DMA32 1 +#define VM_FREELIST_ISADMA 2 + +/* + * Create the DMA32 free list only if the number of physical pages above + * physical address 4G is at least 16M, which amounts to 64GB of physical + * memory. + */ +#define VM_DMA32_NPAGES_THRESHOLD 16777216 /* * An allocation size of 16MB is supported in order to optimize the Modified: head/sys/mips/include/vmparam.h ============================================================================== --- head/sys/mips/include/vmparam.h Wed Dec 31 00:44:11 2014 (r276438) +++ head/sys/mips/include/vmparam.h Wed Dec 31 00:54:38 2014 (r276439) @@ -160,13 +160,11 @@ #define VM_FREEPOOL_DIRECT 1 /* - * we support 2 free lists: - * - * - DEFAULT for direct mapped (KSEG0) pages. - * Note: This usage of DEFAULT may be misleading because we use - * DEFAULT for allocating direct mapped pages. The normal page - * allocations use HIGHMEM if available, and then DEFAULT. - * - HIGHMEM for other pages + * Create up to two free lists on !__mips_n64: VM_FREELIST_DEFAULT is for + * physical pages that are above the largest physical address that is + * accessible through the direct map (KSEG0) and VM_FREELIST_LOWMEM is for + * physical pages that are below that address. VM_LOWMEM_BOUNDARY is the + * physical address for the end of the direct map (KSEG0). */ #ifdef __mips_n64 #define VM_NFREELIST 1 @@ -174,10 +172,10 @@ #define VM_FREELIST_DIRECT VM_FREELIST_DEFAULT #else #define VM_NFREELIST 2 -#define VM_FREELIST_DEFAULT 1 -#define VM_FREELIST_HIGHMEM 0 -#define VM_FREELIST_DIRECT VM_FREELIST_DEFAULT -#define VM_HIGHMEM_ADDRESS ((vm_paddr_t)0x20000000) +#define VM_FREELIST_DEFAULT 0 +#define VM_FREELIST_LOWMEM 1 +#define VM_FREELIST_DIRECT VM_FREELIST_LOWMEM +#define VM_LOWMEM_BOUNDARY ((vm_paddr_t)0x20000000) #endif /* Modified: head/sys/vm/vm_phys.c ============================================================================== --- head/sys/vm/vm_phys.c Wed Dec 31 00:44:11 2014 (r276438) +++ head/sys/vm/vm_phys.c Wed Dec 31 00:54:38 2014 (r276439) @@ -101,7 +101,32 @@ MALLOC_DEFINE(M_FICT_PAGES, "vm_fictitio static struct vm_freelist vm_phys_free_queues[MAXMEMDOM][VM_NFREELIST][VM_NFREEPOOL][VM_NFREEORDER]; -static int vm_nfreelists = VM_FREELIST_DEFAULT + 1; +static int vm_nfreelists; + +/* + * Provides the mapping from VM_FREELIST_* to free list indices (flind). + */ +static int vm_freelist_to_flind[VM_NFREELIST]; + +CTASSERT(VM_FREELIST_DEFAULT == 0); + +#ifdef VM_FREELIST_ISADMA +#define VM_ISADMA_BOUNDARY 16777216 +#endif +#ifdef VM_FREELIST_DMA32 +#define VM_DMA32_BOUNDARY ((vm_paddr_t)1 << 32) +#endif + +/* + * Enforce the assumptions made by vm_phys_add_seg() and vm_phys_init() about + * the ordering of the free list boundaries. + */ +#if defined(VM_ISADMA_BOUNDARY) && defined(VM_LOWMEM_BOUNDARY) +CTASSERT(VM_ISADMA_BOUNDARY < VM_LOWMEM_BOUNDARY); +#endif +#if defined(VM_LOWMEM_BOUNDARY) && defined(VM_DMA32_BOUNDARY) +CTASSERT(VM_LOWMEM_BOUNDARY < VM_DMA32_BOUNDARY); +#endif static int cnt_prezero; SYSCTL_INT(_vm_stats_misc, OID_AUTO, cnt_prezero, CTLFLAG_RD, @@ -120,9 +145,8 @@ SYSCTL_INT(_vm, OID_AUTO, ndomains, CTLF static vm_page_t vm_phys_alloc_domain_pages(int domain, int flind, int pool, int order); -static void _vm_phys_create_seg(vm_paddr_t start, vm_paddr_t end, int flind, - int domain); -static void vm_phys_create_seg(vm_paddr_t start, vm_paddr_t end, int flind); +static void _vm_phys_create_seg(vm_paddr_t start, vm_paddr_t end, int domain); +static void vm_phys_create_seg(vm_paddr_t start, vm_paddr_t end); static int vm_phys_paddr_to_segind(vm_paddr_t pa); static void vm_phys_split_pages(vm_page_t m, int oind, struct vm_freelist *fl, int order); @@ -298,7 +322,7 @@ vm_freelist_rem(struct vm_freelist *fl, * Create a physical memory segment. */ static void -_vm_phys_create_seg(vm_paddr_t start, vm_paddr_t end, int flind, int domain) +_vm_phys_create_seg(vm_paddr_t start, vm_paddr_t end, int domain) { struct vm_phys_seg *seg; @@ -314,16 +338,15 @@ _vm_phys_create_seg(vm_paddr_t start, vm seg->start = start; seg->end = end; seg->domain = domain; - seg->free_queues = &vm_phys_free_queues[domain][flind]; } static void -vm_phys_create_seg(vm_paddr_t start, vm_paddr_t end, int flind) +vm_phys_create_seg(vm_paddr_t start, vm_paddr_t end) { int i; if (mem_affinity == NULL) { - _vm_phys_create_seg(start, end, flind, 0); + _vm_phys_create_seg(start, end, 0); return; } @@ -336,11 +359,11 @@ vm_phys_create_seg(vm_paddr_t start, vm_ panic("No affinity info for start %jx", (uintmax_t)start); if (mem_affinity[i].end >= end) { - _vm_phys_create_seg(start, end, flind, + _vm_phys_create_seg(start, end, mem_affinity[i].domain); break; } - _vm_phys_create_seg(start, mem_affinity[i].end, flind, + _vm_phys_create_seg(start, mem_affinity[i].end, mem_affinity[i].domain); start = mem_affinity[i].end; } @@ -352,64 +375,149 @@ vm_phys_create_seg(vm_paddr_t start, vm_ void vm_phys_add_seg(vm_paddr_t start, vm_paddr_t end) { + vm_paddr_t paddr; KASSERT((start & PAGE_MASK) == 0, ("vm_phys_define_seg: start is not page aligned")); KASSERT((end & PAGE_MASK) == 0, ("vm_phys_define_seg: end is not page aligned")); + + /* + * Split the physical memory segment if it spans two or more free + * list boundaries. + */ + paddr = start; #ifdef VM_FREELIST_ISADMA - if (start < 16777216) { - if (end > 16777216) { - vm_phys_create_seg(start, 16777216, - VM_FREELIST_ISADMA); - vm_phys_create_seg(16777216, end, VM_FREELIST_DEFAULT); - } else - vm_phys_create_seg(start, end, VM_FREELIST_ISADMA); - if (VM_FREELIST_ISADMA >= vm_nfreelists) - vm_nfreelists = VM_FREELIST_ISADMA + 1; - } else -#endif -#ifdef VM_FREELIST_HIGHMEM - if (end > VM_HIGHMEM_ADDRESS) { - if (start < VM_HIGHMEM_ADDRESS) { - vm_phys_create_seg(start, VM_HIGHMEM_ADDRESS, - VM_FREELIST_DEFAULT); - vm_phys_create_seg(VM_HIGHMEM_ADDRESS, end, - VM_FREELIST_HIGHMEM); - } else - vm_phys_create_seg(start, end, VM_FREELIST_HIGHMEM); - if (VM_FREELIST_HIGHMEM >= vm_nfreelists) - vm_nfreelists = VM_FREELIST_HIGHMEM + 1; - } else + if (paddr < VM_ISADMA_BOUNDARY && end > VM_ISADMA_BOUNDARY) { + vm_phys_create_seg(paddr, VM_ISADMA_BOUNDARY); + paddr = VM_ISADMA_BOUNDARY; + } #endif - vm_phys_create_seg(start, end, VM_FREELIST_DEFAULT); +#ifdef VM_FREELIST_LOWMEM + if (paddr < VM_LOWMEM_BOUNDARY && end > VM_LOWMEM_BOUNDARY) { + vm_phys_create_seg(paddr, VM_LOWMEM_BOUNDARY); + paddr = VM_LOWMEM_BOUNDARY; + } +#endif +#ifdef VM_FREELIST_DMA32 + if (paddr < VM_DMA32_BOUNDARY && end > VM_DMA32_BOUNDARY) { + vm_phys_create_seg(paddr, VM_DMA32_BOUNDARY); + paddr = VM_DMA32_BOUNDARY; + } +#endif + vm_phys_create_seg(paddr, end); } /* * Initialize the physical memory allocator. + * + * Requires that vm_page_array is initialized! */ void vm_phys_init(void) { struct vm_freelist *fl; struct vm_phys_seg *seg; -#ifdef VM_PHYSSEG_SPARSE - long pages; + u_long npages; + int dom, flind, freelist, oind, pind, segind; + + /* + * Compute the number of free lists, and generate the mapping from the + * manifest constants VM_FREELIST_* to the free list indices. + * + * Initially, the entries of vm_freelist_to_flind[] are set to either + * 0 or 1 to indicate which free lists should be created. + */ + npages = 0; + for (segind = vm_phys_nsegs - 1; segind >= 0; segind--) { + seg = &vm_phys_segs[segind]; +#ifdef VM_FREELIST_ISADMA + if (seg->end <= VM_ISADMA_BOUNDARY) + vm_freelist_to_flind[VM_FREELIST_ISADMA] = 1; + else +#endif +#ifdef VM_FREELIST_LOWMEM + if (seg->end <= VM_LOWMEM_BOUNDARY) + vm_freelist_to_flind[VM_FREELIST_LOWMEM] = 1; + else +#endif +#ifdef VM_FREELIST_DMA32 + if ( +#ifdef VM_DMA32_NPAGES_THRESHOLD + /* + * Create the DMA32 free list only if the amount of + * physical memory above physical address 4G exceeds the + * given threshold. + */ + npages > VM_DMA32_NPAGES_THRESHOLD && +#endif + seg->end <= VM_DMA32_BOUNDARY) + vm_freelist_to_flind[VM_FREELIST_DMA32] = 1; + else #endif - int dom, flind, oind, pind, segind; + { + npages += atop(seg->end - seg->start); + vm_freelist_to_flind[VM_FREELIST_DEFAULT] = 1; + } + } + /* Change each entry into a running total of the free lists. */ + for (freelist = 1; freelist < VM_NFREELIST; freelist++) { + vm_freelist_to_flind[freelist] += + vm_freelist_to_flind[freelist - 1]; + } + vm_nfreelists = vm_freelist_to_flind[VM_NFREELIST - 1]; + KASSERT(vm_nfreelists > 0, ("vm_phys_init: no free lists")); + /* Change each entry into a free list index. */ + for (freelist = 0; freelist < VM_NFREELIST; freelist++) + vm_freelist_to_flind[freelist]--; + /* + * Initialize the first_page and free_queues fields of each physical + * memory segment. + */ #ifdef VM_PHYSSEG_SPARSE - pages = 0; + npages = 0; #endif for (segind = 0; segind < vm_phys_nsegs; segind++) { seg = &vm_phys_segs[segind]; #ifdef VM_PHYSSEG_SPARSE - seg->first_page = &vm_page_array[pages]; - pages += atop(seg->end - seg->start); + seg->first_page = &vm_page_array[npages]; + npages += atop(seg->end - seg->start); #else seg->first_page = PHYS_TO_VM_PAGE(seg->start); #endif +#ifdef VM_FREELIST_ISADMA + if (seg->end <= VM_ISADMA_BOUNDARY) { + flind = vm_freelist_to_flind[VM_FREELIST_ISADMA]; + KASSERT(flind >= 0, + ("vm_phys_init: ISADMA flind < 0")); + } else +#endif +#ifdef VM_FREELIST_LOWMEM + if (seg->end <= VM_LOWMEM_BOUNDARY) { + flind = vm_freelist_to_flind[VM_FREELIST_LOWMEM]; + KASSERT(flind >= 0, + ("vm_phys_init: LOWMEM flind < 0")); + } else +#endif +#ifdef VM_FREELIST_DMA32 + if (seg->end <= VM_DMA32_BOUNDARY) { + flind = vm_freelist_to_flind[VM_FREELIST_DMA32]; + KASSERT(flind >= 0, + ("vm_phys_init: DMA32 flind < 0")); + } else +#endif + { + flind = vm_freelist_to_flind[VM_FREELIST_DEFAULT]; + KASSERT(flind >= 0, + ("vm_phys_init: DEFAULT flind < 0")); + } + seg->free_queues = &vm_phys_free_queues[seg->domain][flind]; } + + /* + * Initialize the free queues. + */ for (dom = 0; dom < vm_ndomains; dom++) { for (flind = 0; flind < vm_nfreelists; flind++) { for (pind = 0; pind < VM_NFREEPOOL; pind++) { @@ -419,6 +527,7 @@ vm_phys_init(void) } } } + rw_init(&vm_phys_fictitious_reg_lock, "vmfctr"); } @@ -498,25 +607,29 @@ vm_phys_alloc_pages(int pool, int order) } /* - * Find and dequeue a free page on the given free list, with the - * specified pool and order + * Allocate a contiguous, power of two-sized set of physical pages from the + * specified free list. The free list must be specified using one of the + * manifest constants VM_FREELIST_*. + * + * The free page queues must be locked. */ vm_page_t -vm_phys_alloc_freelist_pages(int flind, int pool, int order) +vm_phys_alloc_freelist_pages(int freelist, int pool, int order) { vm_page_t m; int dom, domain; - KASSERT(flind < VM_NFREELIST, - ("vm_phys_alloc_freelist_pages: freelist %d is out of range", flind)); + KASSERT(freelist < VM_NFREELIST, + ("vm_phys_alloc_freelist_pages: freelist %d is out of range", + freelist)); KASSERT(pool < VM_NFREEPOOL, ("vm_phys_alloc_freelist_pages: pool %d is out of range", pool)); KASSERT(order < VM_NFREEORDER, ("vm_phys_alloc_freelist_pages: order %d is out of range", order)); - for (dom = 0; dom < vm_ndomains; dom++) { domain = vm_rr_selectdomain(); - m = vm_phys_alloc_domain_pages(domain, flind, pool, order); + m = vm_phys_alloc_domain_pages(domain, + vm_freelist_to_flind[freelist], pool, order); if (m != NULL) return (m); } Modified: head/sys/vm/vm_phys.h ============================================================================== --- head/sys/vm/vm_phys.h Wed Dec 31 00:44:11 2014 (r276438) +++ head/sys/vm/vm_phys.h Wed Dec 31 00:54:38 2014 (r276439) @@ -72,7 +72,7 @@ void vm_phys_add_page(vm_paddr_t pa); void vm_phys_add_seg(vm_paddr_t start, vm_paddr_t end); vm_page_t vm_phys_alloc_contig(u_long npages, vm_paddr_t low, vm_paddr_t high, u_long alignment, vm_paddr_t boundary); -vm_page_t vm_phys_alloc_freelist_pages(int flind, int pool, int order); +vm_page_t vm_phys_alloc_freelist_pages(int freelist, int pool, int order); vm_page_t vm_phys_alloc_pages(int pool, int order); boolean_t vm_phys_domain_intersects(long mask, vm_paddr_t low, vm_paddr_t high); int vm_phys_fictitious_reg_range(vm_paddr_t start, vm_paddr_t end, From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 01:48:24 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id ECDDB1B5; Wed, 31 Dec 2014 01:48:24 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D99E2122F; Wed, 31 Dec 2014 01:48:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBV1mOfR003477; Wed, 31 Dec 2014 01:48:24 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBV1mOCQ003475; Wed, 31 Dec 2014 01:48:24 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201412310148.sBV1mOCQ003475@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Wed, 31 Dec 2014 01:48:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276443 - head/contrib/elftoolchain/libelf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 01:48:25 -0000 Author: emaste Date: Wed Dec 31 01:48:23 2014 New Revision: 276443 URL: https://svnweb.freebsd.org/changeset/base/276443 Log: libelf: Rearrange size test to prevent integer overflow Sponsored by: The FreeBSD Foundation Modified: head/contrib/elftoolchain/libelf/elf_scn.c Modified: head/contrib/elftoolchain/libelf/elf_scn.c ============================================================================== --- head/contrib/elftoolchain/libelf/elf_scn.c Wed Dec 31 01:38:02 2014 (r276442) +++ head/contrib/elftoolchain/libelf/elf_scn.c Wed Dec 31 01:48:23 2014 (r276443) @@ -62,7 +62,7 @@ _libelf_load_section_headers(Elf *e, voi #define CHECK_EHDR(E,EH) do { \ if (fsz != (EH)->e_shentsize || \ shnum > SIZE_MAX / fsz || \ - shoff + fsz * shnum > e->e_rawsize) { \ + fsz * shnum > e->e_rawsize - shoff) { \ LIBELF_SET_ERROR(HEADER, 0); \ return (0); \ } \ From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 02:12:32 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F0C53531; Wed, 31 Dec 2014 02:12:31 +0000 (UTC) Received: from anubis.delphij.net (anubis.delphij.net [64.62.153.212]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "anubis.delphij.net", Issuer "StartCom Class 1 Primary Intermediate Server CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id D6958166C; Wed, 31 Dec 2014 02:12:31 +0000 (UTC) Received: from zeta.ixsystems.com (unknown [12.229.62.2]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by anubis.delphij.net (Postfix) with ESMTPSA id BEC5317DB5; Tue, 30 Dec 2014 18:12:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=delphij.net; s=anubis; t=1419991944; x=1420006344; bh=tSyAyDZMOlcPitHbPlK0I9C4zYlqPmVlQOTUDjg2fEs=; h=Date:From:Reply-To:To:Subject:References:In-Reply-To; b=pOhL3Bx95zBwVz3fRu9r/7Ox2nF2eYZyRLg6XFtOiCE2D07janRegq5q1cLE6e5ho vUZM+RIinKmRBDMPWh19HHo/oL9ZegN17WqSHzcJYoio7q2MVyr4UofDdE81fksPZU aV3BpC0BXiegeMM5nhVG6NbVSlWZ/Gx9qww4YUyk= Message-ID: <54A35B88.9090102@delphij.net> Date: Tue, 30 Dec 2014 18:12:24 -0800 From: Xin Li Reply-To: d@delphij.net Organization: The FreeBSD Project MIME-Version: 1.0 To: Steven Hartland , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r276123 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs References: <201412230931.sBN9VPMK017968@svn.freebsd.org> In-Reply-To: <201412230931.sBN9VPMK017968@svn.freebsd.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 02:12:32 -0000 On 12/23/14 01:31, Steven Hartland wrote: > Author: smh > Date: Tue Dec 23 09:31:24 2014 > New Revision: 276123 > URL: https://svnweb.freebsd.org/changeset/base/276123 > > Log: > Always sync the global ZFS config cache to reflect the new mosconfig > > This fixes out of date zpool.cache for root pools, which can cause issues > such as confusion of zdb etc. > > MFC after: 1 month > > Modified: > head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c > > Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c > ============================================================================== > --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c Tue Dec 23 08:51:30 2014 (r276122) > +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c Tue Dec 23 09:31:24 2014 (r276123) > @@ -536,8 +536,7 @@ spa_config_update(spa_t *spa, int what) > /* > * Update the global config cache to reflect the new mosconfig. > */ > - if (!spa->spa_is_root) > - spa_config_sync(spa, B_FALSE, what != SPA_CONFIG_UPDATE_POOL); > + spa_config_sync(spa, B_FALSE, what != SPA_CONFIG_UPDATE_POOL); > > if (what == SPA_CONFIG_UPDATE_POOL) > spa_config_update(spa, SPA_CONFIG_UPDATE_VDEVS); It seems like that this change breaks systems where not all pools are available (e.g. some of pools are encrypted) at boot time, by removing all these pools from the cache file. As a result, on the next boot, these pools would not be imported even when the devices are available (geli attached), and reverting this change would restore the system to its previous behavior. Perhaps it have exposed an existing bug? Cheers, -- Xin LI https://www.delphij.net/ FreeBSD - The Power to Serve! Live free or die From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 02:33:13 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7D13E7BF; Wed, 31 Dec 2014 02:33:13 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6A1452A0A; Wed, 31 Dec 2014 02:33:13 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBV2XDfN029124; Wed, 31 Dec 2014 02:33:13 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBV2XDTt029123; Wed, 31 Dec 2014 02:33:13 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201412310233.sBV2XDTt029123@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Wed, 31 Dec 2014 02:33:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276444 - head/sys/arm/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 02:33:13 -0000 Author: ian Date: Wed Dec 31 02:33:12 2014 New Revision: 276444 URL: https://svnweb.freebsd.org/changeset/base/276444 Log: Fix a paste-o. Submitted by: Michal Meloun Modified: head/sys/arm/arm/cpu_asm-v6.S Modified: head/sys/arm/arm/cpu_asm-v6.S ============================================================================== --- head/sys/arm/arm/cpu_asm-v6.S Wed Dec 31 01:48:23 2014 (r276443) +++ head/sys/arm/arm/cpu_asm-v6.S Wed Dec 31 02:33:12 2014 (r276444) @@ -106,7 +106,7 @@ ASENTRY_NP(dcache_inv_pou_all) bx lr #else mrc CP15_CLIDR(r0) - ands r0, r0, #0x07000000 + ands r0, r0, #0x38000000 mov r0, r0, lsr #26 /* Get LoUU (naturally aligned) */ beq 4f From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 02:38:24 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 379D295F; Wed, 31 Dec 2014 02:38:24 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2418A2A7C; Wed, 31 Dec 2014 02:38:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBV2cONb030057; Wed, 31 Dec 2014 02:38:24 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBV2cO5L030056; Wed, 31 Dec 2014 02:38:24 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201412310238.sBV2cO5L030056@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Wed, 31 Dec 2014 02:38:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276445 - head/sys/arm/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 02:38:24 -0000 Author: ian Date: Wed Dec 31 02:38:23 2014 New Revision: 276445 URL: https://svnweb.freebsd.org/changeset/base/276445 Log: Change the order of operations for the initial cache setup. Turning off the cache before clean/invalidate ensured that no new lines can come into the cache or migrate between levels during the operation, but may not be safe on some chips. Instead, if the cache was enabled on entry, do the wbinv while it's still enabled, and then disable it and do a separate invalidate pass. After the intitial writeback we know there are no dirty lines left and no new dirty lines can be created as long as we carefully avoid touching memory before turning the cache off. Add a comment about that so no new code gets inserted between those points. Modified: head/sys/arm/arm/locore-v6.S Modified: head/sys/arm/arm/locore-v6.S ============================================================================== --- head/sys/arm/arm/locore-v6.S Wed Dec 31 02:33:12 2014 (r276444) +++ head/sys/arm/arm/locore-v6.S Wed Dec 31 02:38:23 2014 (r276445) @@ -84,11 +84,9 @@ ASENTRY_NP(_start) */ mrc CP15_SCTLR(r7) tst r7, #CPU_CONTROL_DC_ENABLE - beq 1f - bic r7, #CPU_CONTROL_DC_ENABLE - mcr CP15_SCTLR(r7) - ISB - bl dcache_wbinv_poc_all + blne dcache_wbinv_poc_all + + /* ! Do not write to memory between wbinv and disabling cache ! */ /* * Now there are no dirty lines, but there may still be lines marked @@ -96,6 +94,7 @@ ASENTRY_NP(_start) * before setting up new page tables and re-enabling the mmu. */ 1: + bic r7, #CPU_CONTROL_DC_ENABLE bic r7, #CPU_CONTROL_MMU_ENABLE bic r7, #CPU_CONTROL_IC_ENABLE bic r7, #CPU_CONTROL_UNAL_ENABLE From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 03:33:53 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2CED39A0 for ; Wed, 31 Dec 2014 03:33:53 +0000 (UTC) Received: from mail-wi0-f169.google.com (mail-wi0-f169.google.com [209.85.212.169]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BC82816D5 for ; Wed, 31 Dec 2014 03:33:52 +0000 (UTC) Received: by mail-wi0-f169.google.com with SMTP id r20so26463037wiv.4 for ; Tue, 30 Dec 2014 19:33:45 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:message-id:date:user-agent:mime-version:to :subject:references:in-reply-to:content-type :content-transfer-encoding; bh=OUMHyAP7wBgUEvXi2ze0wPEdetsbIoPCMsKQnXO2xHU=; b=MH9sm445ecyJgi18oH0W/cx7vGeGysXVM+DPqcEBttgb2oQ9JU017rFnxnkTh14ZDY FctmJ5oOqfizIxfso12v6F99X8mnDD9auAgf7LhAojR2Y2sUu6p28MRC0IWX13S6UcHH RbYroiFjynJM5vFcAFgMt9uNud4m/Ywl4bYlZNhR6lJrvptTjagXDvW3LgRrmH8sgkgy jnfQgfNjz7vsGqRtsa6jRNZ/Y5oxzdkVpVhYY7819KLOuOIEB55BqCFxeLQYr6I3rUPE mOFOvaHKplWLeZdbcX8ImYlin1XtPlVZh/pWlRF6EjaT4RioqAxjaM+9/qJ80B34Nunm WgUQ== X-Gm-Message-State: ALoCoQmL0gnht3bnWfl9cdVne/cWUIs12YLBquxrIIXiuxH+JrmzjVORz54owcb38N8AEI3iC7n3 X-Received: by 10.181.13.7 with SMTP id eu7mr113866888wid.72.1419996825198; Tue, 30 Dec 2014 19:33:45 -0800 (PST) Received: from [10.10.1.68] (82-69-141-170.dsl.in-addr.zen.co.uk. [82.69.141.170]) by mx.google.com with ESMTPSA id bs2sm55995892wjc.43.2014.12.30.19.33.44 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 30 Dec 2014 19:33:44 -0800 (PST) From: Steven Hartland X-Google-Original-From: Steven Hartland Message-ID: <54A36E8C.9090908@freebsd.org> Date: Wed, 31 Dec 2014 03:33:32 +0000 User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 MIME-Version: 1.0 To: d@delphij.net, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r276123 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs References: <201412230931.sBN9VPMK017968@svn.freebsd.org> <54A35B88.9090102@delphij.net> In-Reply-To: <54A35B88.9090102@delphij.net> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 03:33:53 -0000 On 31/12/2014 02:12, Xin Li wrote: > On 12/23/14 01:31, Steven Hartland wrote: >> Author: smh >> Date: Tue Dec 23 09:31:24 2014 >> New Revision: 276123 >> URL: https://svnweb.freebsd.org/changeset/base/276123 >> >> Log: >> Always sync the global ZFS config cache to reflect the new mosconfig >> >> This fixes out of date zpool.cache for root pools, which can cause issues >> such as confusion of zdb etc. >> >> MFC after: 1 month >> >> Modified: >> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >> >> Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >> ============================================================================== >> --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c Tue Dec 23 08:51:30 2014 (r276122) >> +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c Tue Dec 23 09:31:24 2014 (r276123) >> @@ -536,8 +536,7 @@ spa_config_update(spa_t *spa, int what) >> /* >> * Update the global config cache to reflect the new mosconfig. >> */ >> - if (!spa->spa_is_root) >> - spa_config_sync(spa, B_FALSE, what != SPA_CONFIG_UPDATE_POOL); >> + spa_config_sync(spa, B_FALSE, what != SPA_CONFIG_UPDATE_POOL); >> >> if (what == SPA_CONFIG_UPDATE_POOL) >> spa_config_update(spa, SPA_CONFIG_UPDATE_VDEVS); > It seems like that this change breaks systems where not all pools are > available (e.g. some of pools are encrypted) at boot time, by removing > all these pools from the cache file. > > As a result, on the next boot, these pools would not be imported even > when the devices are available (geli attached), and reverting this > change would restore the system to its previous behavior. > > Perhaps it have exposed an existing bug? I've seen pools which where unavailable disappear from zpool list and zpool status before this patch, but though it was my imagination as they where test pools I was messing around with, so assumed I'd removed them. Sounds like it wasn't my imagination and it was indeed an existing bug. Does it do it every time for you then Xin? I ask as when I tried to reproduce I couldn't. Regards Steve From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 04:11:31 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 30100E40; Wed, 31 Dec 2014 04:11:31 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1C3601B7D; Wed, 31 Dec 2014 04:11:31 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBV4BUGX081832; Wed, 31 Dec 2014 04:11:30 GMT (envelope-from smh@FreeBSD.org) Received: (from smh@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBV4BU63081831; Wed, 31 Dec 2014 04:11:30 GMT (envelope-from smh@FreeBSD.org) Message-Id: <201412310411.sBV4BU63081831@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: smh set sender to smh@FreeBSD.org using -f From: Steven Hartland Date: Wed, 31 Dec 2014 04:11:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276446 - head/cddl/contrib/opensolaris/lib/libzfs/common X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 04:11:31 -0000 Author: smh Date: Wed Dec 31 04:11:29 2014 New Revision: 276446 URL: https://svnweb.freebsd.org/changeset/base/276446 Log: Use the correct state name for unavailable pools in zpool list This corrects inconsitencies between zpool list and zpool status which are both described as displaying the pool however zpool list would use this hardcoded FAULTED instead of the correct UNAVAIL. MFC after: 1 month Modified: head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_pool.c Modified: head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_pool.c ============================================================================== --- head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_pool.c Wed Dec 31 02:38:23 2014 (r276445) +++ head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_pool.c Wed Dec 31 04:11:29 2014 (r276446) @@ -256,7 +256,8 @@ zpool_get_prop(zpool_handle_t *zhp, zpoo break; case ZPOOL_PROP_HEALTH: - (void) strlcpy(buf, "FAULTED", len); + (void) strlcpy(buf, + zpool_pool_state_to_name(POOL_STATE_UNAVAIL), len); break; case ZPOOL_PROP_GUID: From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 04:54:49 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id AA62BBDA; Wed, 31 Dec 2014 04:54:49 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 96B9924B4; Wed, 31 Dec 2014 04:54:49 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBV4snGd003922; Wed, 31 Dec 2014 04:54:49 GMT (envelope-from smh@FreeBSD.org) Received: (from smh@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBV4snQh003921; Wed, 31 Dec 2014 04:54:49 GMT (envelope-from smh@FreeBSD.org) Message-Id: <201412310454.sBV4snQh003921@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: smh set sender to smh@FreeBSD.org using -f From: Steven Hartland Date: Wed, 31 Dec 2014 04:54:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276450 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 04:54:49 -0000 Author: smh Date: Wed Dec 31 04:54:48 2014 New Revision: 276450 URL: https://svnweb.freebsd.org/changeset/base/276450 Log: Correct zpool list displaying invalid EXPANDSZ for unavailable pool vdevs When pools are unavailable their vdevs are also unavailable which means that vdev_max_asize remains at the default zero. This default was being used to calculate vs_esize resulting in a negative number as vdev_asize > vdev_max_asize, which caused zpool list -v to display 16.0E for EXPANDSZ of these vdevs. Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Wed Dec 31 04:52:32 2014 (r276449) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Wed Dec 31 04:54:48 2014 (r276450) @@ -2776,7 +2776,8 @@ vdev_get_stats(vdev_t *vd, vdev_stat_t * vs->vs_rsize = vdev_get_min_asize(vd); if (vd->vdev_ops->vdev_op_leaf) vs->vs_rsize += VDEV_LABEL_START_SIZE + VDEV_LABEL_END_SIZE; - vs->vs_esize = vd->vdev_max_asize - vd->vdev_asize; + if (vd->vdev_max_asize != 0) + vs->vs_esize = vd->vdev_max_asize - vd->vdev_asize; vs->vs_configured_ashift = vd->vdev_top != NULL ? vd->vdev_top->vdev_ashift : vd->vdev_ashift; vs->vs_logical_ashift = vd->vdev_logical_ashift; From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 06:08:31 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B615D6AB for ; Wed, 31 Dec 2014 06:08:31 +0000 (UTC) Received: from mail-we0-f170.google.com (mail-we0-f170.google.com [74.125.82.170]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 49D5464F5C for ; Wed, 31 Dec 2014 06:08:30 +0000 (UTC) Received: by mail-we0-f170.google.com with SMTP id w61so1963568wes.29 for ; Tue, 30 Dec 2014 22:08:29 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:message-id:date:user-agent:mime-version:to :subject:references:in-reply-to:content-type; bh=OiN9jEOuLEB9LlYhxIGAZq1oSXQ5NUIexqV2Ptf0DfQ=; b=ibbNDVyBj16v23vtQA3tHZOj6RAyYkPeDBSCRzq5BnxH10ZE/l1kYgllNvF3wNSqBl o8UH1XIklYfPqALcYf49HaQRV082wt3uO53qZRXQZMUr3KZYEzPOgMjcpjxf3NaOxmTq nmbbKCfaL72LtdInpInBiE5S7N79UjGwKNAwzMo9nIJErbt0dRSj96lF3JoNcFmkBFBs Lu8qFCdod/+ayoeaFn9ZIWI4DwQbBRuiN2qwZEqfqf8P3i3aM7fQYO5jvNo/+jPcSWTi fdIF78sNfWP4YEAljM/EK0gjiaBrc2eenYl0dSV9EEtPkKCOsiIfvsU8on1nwibkhDK7 WJmQ== X-Gm-Message-State: ALoCoQnHybSjIsoj6Su3VtE1OEPwWUEag0RII8qVQD55NGsx3FXYTUGeTN/gSTtFEaS2SGrso1i3 X-Received: by 10.180.187.239 with SMTP id fv15mr92506202wic.38.1420005727764; Tue, 30 Dec 2014 22:02:07 -0800 (PST) Received: from [10.10.1.68] (82-69-141-170.dsl.in-addr.zen.co.uk. [82.69.141.170]) by mx.google.com with ESMTPSA id h8sm45862050wiy.17.2014.12.30.22.02.06 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 30 Dec 2014 22:02:06 -0800 (PST) From: Steven Hartland X-Google-Original-From: Steven Hartland Message-ID: <54A39153.8040905@freebsd.org> Date: Wed, 31 Dec 2014 06:01:55 +0000 User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 MIME-Version: 1.0 To: d@delphij.net, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r276123 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs References: <201412230931.sBN9VPMK017968@svn.freebsd.org> <54A35B88.9090102@delphij.net> In-Reply-To: <54A35B88.9090102@delphij.net> Content-Type: multipart/mixed; boundary="------------020201040309020109020201" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 06:08:31 -0000 This is a multi-part message in MIME format. --------------020201040309020109020201 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 31/12/2014 02:12, Xin Li wrote: > On 12/23/14 01:31, Steven Hartland wrote: >> Author: smh >> Date: Tue Dec 23 09:31:24 2014 >> New Revision: 276123 >> URL: https://svnweb.freebsd.org/changeset/base/276123 >> >> Log: >> Always sync the global ZFS config cache to reflect the new mosconfig >> >> This fixes out of date zpool.cache for root pools, which can cause issues >> such as confusion of zdb etc. >> >> MFC after: 1 month >> >> Modified: >> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >> >> Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >> ============================================================================== >> --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c Tue Dec 23 08:51:30 2014 (r276122) >> +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c Tue Dec 23 09:31:24 2014 (r276123) >> @@ -536,8 +536,7 @@ spa_config_update(spa_t *spa, int what) >> /* >> * Update the global config cache to reflect the new mosconfig. >> */ >> - if (!spa->spa_is_root) >> - spa_config_sync(spa, B_FALSE, what != SPA_CONFIG_UPDATE_POOL); >> + spa_config_sync(spa, B_FALSE, what != SPA_CONFIG_UPDATE_POOL); >> >> if (what == SPA_CONFIG_UPDATE_POOL) >> spa_config_update(spa, SPA_CONFIG_UPDATE_VDEVS); > It seems like that this change breaks systems where not all pools are > available (e.g. some of pools are encrypted) at boot time, by removing > all these pools from the cache file. > > As a result, on the next boot, these pools would not be imported even > when the devices are available (geli attached), and reverting this > change would restore the system to its previous behavior. > > Perhaps it have exposed an existing bug? I've managed to reproduce this here with mdX backed test pools, and looking into it this is due to spa_config_sync: /* * Skip over our own pool if we're about to remove * ourselves from the spa namespace or any pool that * is readonly. Since we cannot guarantee that a * readonly pool would successfully import upon reboot, * we don't allow them to be written to the cache file. */ if ((spa == target && removing) || !spa_writeable(spa)) { continue; } This was added by upstream: https://github.com/illumos/illumos-gate/commit/fb02ae025247e3b662600e5a9c1b4c33ecab7d72 https://www.illumos.org/issues/3639 It seems the desired behavior was to exclude read only pools, to prevent them being mounted writable on reboot, but the check is too wide and also excludes unavailable pools too. The attached patch corrects the test to only check writable on active pools so I believe should fix the issue your seeing. If you can test it and lmk that would be great. Regards Steve --------------020201040309020109020201 Content-Type: text/plain; charset=windows-1252; name="spa_config.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="spa_config.patch" SW5kZXg6IHN5cy9jZGRsL2NvbnRyaWIvb3BlbnNvbGFyaXMvdXRzL2NvbW1vbi9mcy96ZnMv c3BhX2NvbmZpZy5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHN5cy9jZGRsL2NvbnRyaWIvb3BlbnNv bGFyaXMvdXRzL2NvbW1vbi9mcy96ZnMvc3BhX2NvbmZpZy5jCShyZXZpc2lvbiAyNzYxMjMp CisrKyBzeXMvY2RkbC9jb250cmliL29wZW5zb2xhcmlzL3V0cy9jb21tb24vZnMvemZzL3Nw YV9jb25maWcuYwkod29ya2luZyBjb3B5KQpAQCAtMjQxLDcgKzI0MSw4IEBAIHNwYV9jb25m aWdfc3luYyhzcGFfdCAqdGFyZ2V0LCBib29sZWFuX3QgcmVtb3ZpbmcsCiAJCQkgKiB3ZSBk b24ndCBhbGxvdyB0aGVtIHRvIGJlIHdyaXR0ZW4gdG8gdGhlIGNhY2hlIGZpbGUuCiAJCQkg Ki8KIAkJCWlmICgoc3BhID09IHRhcmdldCAmJiByZW1vdmluZykgfHwKLQkJCSAgICAhc3Bh X3dyaXRlYWJsZShzcGEpKQorCQkJICAgIChzcGFfc3RhdGUoc3BhKSA9PSBQT09MX1NUQVRF X0FDVElWRSAmJgorCQkJICAgICFzcGFfd3JpdGVhYmxlKHNwYSkpKQogCQkJCWNvbnRpbnVl OwogCiAJCQltdXRleF9lbnRlcigmc3BhLT5zcGFfcHJvcHNfbG9jayk7Cg== --------------020201040309020109020201-- From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 08:00:51 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 03222AEA; Wed, 31 Dec 2014 08:00:51 +0000 (UTC) Received: from anubis.delphij.net (anubis.delphij.net [IPv6:2001:470:1:117::25]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "anubis.delphij.net", Issuer "StartCom Class 1 Primary Intermediate Server CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id D66D010E9; Wed, 31 Dec 2014 08:00:50 +0000 (UTC) Received: from Xins-MBP.home.us.delphij.net (unknown [IPv6:2601:9:7280:1a80:f08a:f7cb:aaa3:1fd9]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by anubis.delphij.net (Postfix) with ESMTPSA id 34EA617E95; Wed, 31 Dec 2014 00:00:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=delphij.net; s=anubis; t=1420012849; x=1420027249; bh=+LA7U8DS/0m9SuaYStvZ6XY0eG0VNHkhK7tfKn/o8G4=; h=Date:From:To:Subject:References:In-Reply-To; b=kHFK0uw3uhru9d+T1icfOdgLdIY5j2qbsxyTpP/gtlHoCwg6z5l5K3nPKuPMjb9Q7 jFrKb5GgWxOKpWf7EDD5UGozz7aRxP0I33HGPq8e3SC2vQBeQ3I5jiWtM2AR+N5LKz R92xUPR8N9rX1HRW27XploMEb7iVp6f7GKuQm3t0= Message-ID: <54A3ACEF.70905@delphij.net> Date: Tue, 30 Dec 2014 23:59:43 -0800 From: Xin Li User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 MIME-Version: 1.0 To: Steven Hartland , d@delphij.net, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r276123 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs References: <201412230931.sBN9VPMK017968@svn.freebsd.org> <54A35B88.9090102@delphij.net> <54A39153.8040905@freebsd.org> In-Reply-To: <54A39153.8040905@freebsd.org> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 08:00:51 -0000 Hi, Steven, On 12/30/14 22:01, Steven Hartland wrote: > > On 31/12/2014 02:12, Xin Li wrote: >> On 12/23/14 01:31, Steven Hartland wrote: >>> Author: smh >>> Date: Tue Dec 23 09:31:24 2014 >>> New Revision: 276123 >>> URL: https://svnweb.freebsd.org/changeset/base/276123 >>> >>> Log: >>> Always sync the global ZFS config cache to reflect the new mosconfig >>> This fixes out of date zpool.cache for root pools, which can >>> cause issues >>> such as confusion of zdb etc. >>> MFC after: 1 month >>> >>> Modified: >>> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >>> >>> Modified: >>> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >>> ============================================================================== >>> >>> --- >>> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >>> Tue Dec 23 08:51:30 2014 (r276122) >>> +++ >>> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >>> Tue Dec 23 09:31:24 2014 (r276123) >>> @@ -536,8 +536,7 @@ spa_config_update(spa_t *spa, int what) >>> /* >>> * Update the global config cache to reflect the new mosconfig. >>> */ >>> - if (!spa->spa_is_root) >>> - spa_config_sync(spa, B_FALSE, what != SPA_CONFIG_UPDATE_POOL); >>> + spa_config_sync(spa, B_FALSE, what != SPA_CONFIG_UPDATE_POOL); >>> if (what == SPA_CONFIG_UPDATE_POOL) >>> spa_config_update(spa, SPA_CONFIG_UPDATE_VDEVS); >> It seems like that this change breaks systems where not all pools are >> available (e.g. some of pools are encrypted) at boot time, by removing >> all these pools from the cache file. >> >> As a result, on the next boot, these pools would not be imported even >> when the devices are available (geli attached), and reverting this >> change would restore the system to its previous behavior. >> >> Perhaps it have exposed an existing bug? > > I've managed to reproduce this here with mdX backed test pools, and > looking into it this is due to spa_config_sync: > > /* > * Skip over our own pool if we're about to remove > * ourselves from the spa namespace or any pool > that > * is readonly. Since we cannot guarantee that a > * readonly pool would successfully import upon > reboot, > * we don't allow them to be written to the > cache file. > */ > if ((spa == target && removing) || > !spa_writeable(spa)) { > continue; > } > > This was added by upstream: > https://github.com/illumos/illumos-gate/commit/fb02ae025247e3b662600e5a9c1b4c33ecab7d72 > > https://www.illumos.org/issues/3639 > > It seems the desired behavior was to exclude read only pools, to prevent > them being mounted writable on reboot, but the check is too wide and > also excludes unavailable pools too. > > The attached patch corrects the test to only check writable on active > pools so I believe should fix the issue your seeing. > > If you can test it and lmk that would be great. This is an improvement (the attaching of pool is now working) but the cached configuration is somewhat corrupted, it shows many lines of vdev_stats[] contents. I'll take a look at the code tomorrow and see if I can do some instruments and possibly figure out the underlying issue. Cheers, From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 10:00:46 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2860195C; Wed, 31 Dec 2014 10:00:46 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 146396624A; Wed, 31 Dec 2014 10:00:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBVA0jwZ045562; Wed, 31 Dec 2014 10:00:45 GMT (envelope-from bz@FreeBSD.org) Received: (from bz@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBVA0jT8045556; Wed, 31 Dec 2014 10:00:45 GMT (envelope-from bz@FreeBSD.org) Message-Id: <201412311000.sBVA0jT8045556@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: bz set sender to bz@FreeBSD.org using -f From: "Bjoern A. Zeeb" Date: Wed, 31 Dec 2014 10:00:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276462 - in head: . sys/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 10:00:46 -0000 Author: bz Date: Wed Dec 31 10:00:43 2014 New Revision: 276462 URL: https://svnweb.freebsd.org/changeset/base/276462 Log: Bump copyright year. Happy New Year 2015! Modified: head/COPYRIGHT head/sys/sys/copyright.h Modified: head/COPYRIGHT ============================================================================== --- head/COPYRIGHT Wed Dec 31 09:52:57 2014 (r276461) +++ head/COPYRIGHT Wed Dec 31 10:00:43 2014 (r276462) @@ -4,7 +4,7 @@ The compilation of software known as FreeBSD is distributed under the following terms: -Copyright (c) 1992-2014 The FreeBSD Project. All rights reserved. +Copyright (c) 1992-2015 The FreeBSD Project. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions Modified: head/sys/sys/copyright.h ============================================================================== --- head/sys/sys/copyright.h Wed Dec 31 09:52:57 2014 (r276461) +++ head/sys/sys/copyright.h Wed Dec 31 10:00:43 2014 (r276462) @@ -1,5 +1,5 @@ /*- - * Copyright (C) 1992-2014 The FreeBSD Project. All rights reserved. + * Copyright (C) 1992-2015 The FreeBSD Project. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions @@ -30,7 +30,7 @@ /* FreeBSD */ #define COPYRIGHT_FreeBSD \ - "Copyright (c) 1992-2014 The FreeBSD Project.\n" + "Copyright (c) 1992-2015 The FreeBSD Project.\n" /* Foundation */ #define TRADEMARK_Foundation \ From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 16:06:27 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 784DA56F; Wed, 31 Dec 2014 16:06:27 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5941F3338; Wed, 31 Dec 2014 16:06:27 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBVG6R6e020579; Wed, 31 Dec 2014 16:06:27 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBVG6RCj020578; Wed, 31 Dec 2014 16:06:27 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201412311606.sBVG6RCj020578@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Wed, 31 Dec 2014 16:06:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276469 - head/sys/dev/sdhci X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 16:06:27 -0000 Author: marius Date: Wed Dec 31 16:06:26 2014 New Revision: 276469 URL: https://svnweb.freebsd.org/changeset/base/276469 Log: - Switching the mode of Ricoh R5CE823 to SD2.0 causes their PCI device ID to change to 0xe822, which may be persistent across reboots and, thus, confuse other OSes. Therefore, restore the original mode and frequency setting on detach and shutdown. - Report Ricoh R5CE822 as such. - According to Linux, Ricoh R5CE822 also need SDHCI_QUIRK_LOWER_FREQUENCY. - Nuke an unused softc member. MFC after: 3 days Modified: head/sys/dev/sdhci/sdhci_pci.c Modified: head/sys/dev/sdhci/sdhci_pci.c ============================================================================== --- head/sys/dev/sdhci/sdhci_pci.c Wed Dec 31 10:08:17 2014 (r276468) +++ head/sys/dev/sdhci/sdhci_pci.c Wed Dec 31 16:06:26 2014 (r276469) @@ -71,7 +71,7 @@ __FBSDID("$FreeBSD$"); */ #define SDHC_PCI_MODE_KEY 0xf9 #define SDHC_PCI_MODE 0x150 -#define SDHC_PCI_MODE_SD20 0x10 +#define SDHC_PCI_MODE_SD20 0x10 #define SDHC_PCI_BASE_FREQ_KEY 0xfc #define SDHC_PCI_BASE_FREQ 0xe1 @@ -83,8 +83,9 @@ static const struct sdhci_device { } sdhci_devices[] = { { 0x08221180, 0xffff, "RICOH R5C822 SD", SDHCI_QUIRK_FORCE_DMA }, - { 0xe8221180, 0xffff, "RICOH SD", - SDHCI_QUIRK_FORCE_DMA }, + { 0xe8221180, 0xffff, "RICOH R5CE822 SD", + SDHCI_QUIRK_FORCE_DMA | + SDHCI_QUIRK_LOWER_FREQUENCY }, { 0xe8231180, 0xffff, "RICOH R5CE823 SD", SDHCI_QUIRK_LOWER_FREQUENCY }, { 0x8034104c, 0xffff, "TI XX21/XX11 SD", @@ -109,7 +110,6 @@ static const struct sdhci_device { }; struct sdhci_pci_softc { - device_t dev; /* Controller device */ u_int quirks; /* Chip specific quirks */ struct resource *irq_res; /* IRQ resource */ void *intrhand; /* Interrupt handle */ @@ -117,6 +117,8 @@ struct sdhci_pci_softc { int num_slots; /* Number of slots on this controller */ struct sdhci_slot slots[6]; struct resource *mem_res[6]; /* Memory resource */ + uint8_t cfg_freq; /* Saved mode */ + uint8_t cfg_mode; /* Saved frequency */ }; static int sdhci_enable_msi = 1; @@ -206,21 +208,43 @@ static void sdhci_pci_intr(void *arg); static void sdhci_lower_frequency(device_t dev) { + struct sdhci_pci_softc *sc = device_get_softc(dev); - /* Enable SD2.0 mode. */ + /* + * Enable SD2.0 mode. + * NB: for RICOH R5CE823, this changes the PCI device ID to 0xe822. + */ pci_write_config(dev, SDHC_PCI_MODE_KEY, 0xfc, 1); + sc->cfg_mode = pci_read_config(dev, SDHC_PCI_MODE, 1); pci_write_config(dev, SDHC_PCI_MODE, SDHC_PCI_MODE_SD20, 1); pci_write_config(dev, SDHC_PCI_MODE_KEY, 0x00, 1); /* * Some SD/MMC cards don't work with the default base - * clock frequency of 200MHz. Lower it to 50Hz. + * clock frequency of 200 MHz. Lower it to 50 MHz. */ pci_write_config(dev, SDHC_PCI_BASE_FREQ_KEY, 0x01, 1); + sc->cfg_freq = pci_read_config(dev, SDHC_PCI_BASE_FREQ, 1); pci_write_config(dev, SDHC_PCI_BASE_FREQ, 50, 1); pci_write_config(dev, SDHC_PCI_BASE_FREQ_KEY, 0x00, 1); } +static void +sdhci_restore_frequency(device_t dev) +{ + struct sdhci_pci_softc *sc = device_get_softc(dev); + + /* Restore mode. */ + pci_write_config(dev, SDHC_PCI_MODE_KEY, 0xfc, 1); + pci_write_config(dev, SDHC_PCI_MODE, sc->cfg_mode, 1); + pci_write_config(dev, SDHC_PCI_MODE_KEY, 0x00, 1); + + /* Restore frequency. */ + pci_write_config(dev, SDHC_PCI_BASE_FREQ_KEY, 0x01, 1); + pci_write_config(dev, SDHC_PCI_BASE_FREQ, sc->cfg_freq, 1); + pci_write_config(dev, SDHC_PCI_BASE_FREQ_KEY, 0x00, 1); +} + static int sdhci_pci_probe(device_t dev) { @@ -262,7 +286,6 @@ sdhci_pci_attach(device_t dev) uint16_t subvendor; int bar, err, rid, slots, i; - sc->dev = dev; model = (uint32_t)pci_get_device(dev) << 16; model |= (uint32_t)pci_get_vendor(dev) & 0x0000ffff; subvendor = pci_get_subvendor(dev); @@ -352,6 +375,18 @@ sdhci_pci_detach(device_t dev) bus_release_resource(dev, SYS_RES_MEMORY, rman_get_rid(sc->mem_res[i]), sc->mem_res[i]); } + if (sc->quirks & SDHCI_QUIRK_LOWER_FREQUENCY) + sdhci_restore_frequency(dev); + return (0); +} + +static int +sdhci_pci_shutdown(device_t dev) +{ + struct sdhci_pci_softc *sc = device_get_softc(dev); + + if (sc->quirks & SDHCI_QUIRK_LOWER_FREQUENCY) + sdhci_restore_frequency(dev); return (0); } @@ -397,6 +432,7 @@ static device_method_t sdhci_methods[] = DEVMETHOD(device_probe, sdhci_pci_probe), DEVMETHOD(device_attach, sdhci_pci_attach), DEVMETHOD(device_detach, sdhci_pci_detach), + DEVMETHOD(device_shutdown, sdhci_pci_shutdown), DEVMETHOD(device_suspend, sdhci_pci_suspend), DEVMETHOD(device_resume, sdhci_pci_resume), From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 16:15:44 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 49F34B82; Wed, 31 Dec 2014 16:15:44 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 36C413496; Wed, 31 Dec 2014 16:15:44 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBVGFiF0025687; Wed, 31 Dec 2014 16:15:44 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBVGFiUw025686; Wed, 31 Dec 2014 16:15:44 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201412311615.sBVGFiUw025686@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Wed, 31 Dec 2014 16:15:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276470 - head/sys/arm/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 16:15:44 -0000 Author: ian Date: Wed Dec 31 16:15:43 2014 New Revision: 276470 URL: https://svnweb.freebsd.org/changeset/base/276470 Log: A couple small fixes to make clang 3.5 happy... Move END(sigcode) to the end of the actual instruction sequence for the function but before some misc data in the text segment. This eliminates a strange "size must be constant" error from the integrated assembler. Also, the build_pagetables function was missing an END(), but really the problem is that it shouldn't have an ASENTRY() because it's not a function that needs to be a global symbol with unwind info and all, it's just a little private subroutine used in very early kernel init. Modified: head/sys/arm/arm/locore-v6.S Modified: head/sys/arm/arm/locore-v6.S ============================================================================== --- head/sys/arm/arm/locore-v6.S Wed Dec 31 16:06:26 2014 (r276469) +++ head/sys/arm/arm/locore-v6.S Wed Dec 31 16:15:43 2014 (r276470) @@ -339,7 +339,7 @@ END(reinit_mmu) * * Addresses must be 1MiB aligned */ -ASENTRY_NP(build_pagetables) +build_pagetables: /* Set the required page attributed */ #if defined(ARM_NEW_PMAP) ldr r4, =PTE1_V|PTE1_A|PTE1_AP_KRW|TEX1_CLASS_0 @@ -520,6 +520,7 @@ ENTRY_NP(sigcode) /* Branch back to retry SYS_sigreturn */ b . - 16 +END(sigcode) .word SYS_sigreturn .word SYS_exit @@ -532,5 +533,5 @@ ENTRY_NP(sigcode) .global szsigcode szsigcode: .long esigcode-sigcode -END(sigcode) + /* End of locore.S */ From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 16:30:35 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 36E5F3F9; Wed, 31 Dec 2014 16:30:35 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 231FA3633; Wed, 31 Dec 2014 16:30:35 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBVGUZk1033518; Wed, 31 Dec 2014 16:30:35 GMT (envelope-from pfg@FreeBSD.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBVGUY9M033516; Wed, 31 Dec 2014 16:30:34 GMT (envelope-from pfg@FreeBSD.org) Message-Id: <201412311630.sBVGUY9M033516@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: pfg set sender to pfg@FreeBSD.org using -f From: "Pedro F. Giffuni" Date: Wed, 31 Dec 2014 16:30:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276472 - head/usr.bin/patch X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 16:30:35 -0000 Author: pfg Date: Wed Dec 31 16:30:33 2014 New Revision: 276472 URL: https://svnweb.freebsd.org/changeset/base/276472 Log: Fixes to exit status. Exit with EXIT_FAILURE for invalid arguments. Fixes NetBSD-PR 43517. Print version string to stdout instead of stderr; it is user-requested and not an error. Obtained from: NetBSD MFC after: 5 days Modified: head/usr.bin/patch/patch.c head/usr.bin/patch/util.c Modified: head/usr.bin/patch/patch.c ============================================================================== --- head/usr.bin/patch/patch.c Wed Dec 31 16:28:16 2014 (r276471) +++ head/usr.bin/patch/patch.c Wed Dec 31 16:30:33 2014 (r276472) @@ -634,7 +634,7 @@ usage(void) " [-r rej-name] [-V t | nil | never] [-x number] [-z backup-ext]\n" " [--posix] [origfile [patchfile]]\n" " patch Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4C0CA689; Wed, 31 Dec 2014 17:44:58 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3831D24BE; Wed, 31 Dec 2014 17:44:58 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBVHiwkV068861; Wed, 31 Dec 2014 17:44:58 GMT (envelope-from alc@FreeBSD.org) Received: (from alc@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBVHiw1Y068860; Wed, 31 Dec 2014 17:44:58 GMT (envelope-from alc@FreeBSD.org) Message-Id: <201412311744.sBVHiw1Y068860@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: alc set sender to alc@FreeBSD.org using -f From: Alan Cox Date: Wed, 31 Dec 2014 17:44:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276474 - head/sys/vm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 17:44:58 -0000 Author: alc Date: Wed Dec 31 17:44:57 2014 New Revision: 276474 URL: https://svnweb.freebsd.org/changeset/base/276474 Log: Eliminate a stale debug message. The per-CPU cache locks were replaced by critical sections in r145686. PR: 193254 Submitted by: luke.tw@gmail.com MFC after: 3 days Modified: head/sys/vm/uma_core.c Modified: head/sys/vm/uma_core.c ============================================================================== --- head/sys/vm/uma_core.c Wed Dec 31 16:50:46 2014 (r276473) +++ head/sys/vm/uma_core.c Wed Dec 31 17:44:57 2014 (r276474) @@ -1834,9 +1834,6 @@ uma_startup(void *bootmem, int boot_page zone_ctor(zones, sizeof(struct uma_zone), &args, M_WAITOK); #ifdef UMA_DEBUG - printf("Initializing pcpu cache locks.\n"); -#endif -#ifdef UMA_DEBUG printf("Creating slab and hash zones.\n"); #endif From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 19:09:30 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E3632663; Wed, 31 Dec 2014 19:09:30 +0000 (UTC) Received: from bigwig.baldwin.cx (bigwig.baldwin.cx [IPv6:2001:470:1f11:75::1]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BB8AA6443E; Wed, 31 Dec 2014 19:09:30 +0000 (UTC) Received: from jhbbsd.localnet (unknown [209.249.190.124]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id B0241B976; Wed, 31 Dec 2014 14:09:29 -0500 (EST) From: John Baldwin To: Rui Paulo Subject: Re: svn commit: r276187 - head/sys/arm/arm Date: Wed, 31 Dec 2014 13:40:03 -0500 User-Agent: KMail/1.13.5 (FreeBSD/8.4-CBSD-20140415; KDE/4.5.5; amd64; ; ) References: <201412241712.sBOHCqvW039381@svn.freebsd.org> <1419471084.1018.160.camel@freebsd.org> <9F69A6CD-D352-4A91-97F6-B3E1FF638211@me.com> In-Reply-To: <9F69A6CD-D352-4A91-97F6-B3E1FF638211@me.com> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <201412311340.03637.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Wed, 31 Dec 2014 14:09:29 -0500 (EST) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Andrew Turner , Ian Lepore X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 19:09:31 -0000 On Wednesday, December 24, 2014 9:05:47 pm Rui Paulo wrote: > On Dec 24, 2014, at 17:31, Ian Lepore wrote: > > In every architecture and every place it's used, or just arm just here? > > You're right, it can be found at least in MIPS and amd64. > > > This appears to be an idiom, or at least something that has been pasted > > in identical form in every arch so far. > > The idiom is a bit different in amd64: the variable in the for-loop isn't immediately reused, but it's a global variable anyway... That's what I thought deserves a comment. > > Regarding the pmap_kenter_temporary(), the first problem is the function name: it might be a temporary mapping, but the real use is for crash dumps (I wonder why ACPI abuses this mapping). The other problem is the fact that a pmap function is so tied to crash dumps. However, that's a bigger problem. ACPI abuses it because it is available (and we can't possibly generate a crash dump early when ACPI uses it). ACPI is only use it to map ACPI tables before the VM system is initalized enough to map the tables using normal KVA. -- John Baldwin From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 19:22:43 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 88506955; Wed, 31 Dec 2014 19:22:43 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1BD6164B76; Wed, 31 Dec 2014 19:21:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBVJLsu5017116; Wed, 31 Dec 2014 19:21:54 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBVJLsPY017115; Wed, 31 Dec 2014 19:21:54 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201412311921.sBVJLsPY017115@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Wed, 31 Dec 2014 19:21:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276477 - head/contrib/elftoolchain/readelf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 19:22:43 -0000 Author: emaste Date: Wed Dec 31 19:21:53 2014 New Revision: 276477 URL: https://svnweb.freebsd.org/changeset/base/276477 Log: readelf: Add stdint.h for C99 fixed size types Upstream elftoolchain brings in stdint.h via an ELF header that we do not use in FreeBSD. Sponsored by: The FreeBSD Foundation Modified: head/contrib/elftoolchain/readelf/readelf.c Modified: head/contrib/elftoolchain/readelf/readelf.c ============================================================================== --- head/contrib/elftoolchain/readelf/readelf.c Wed Dec 31 18:16:50 2014 (r276476) +++ head/contrib/elftoolchain/readelf/readelf.c Wed Dec 31 19:21:53 2014 (r276477) @@ -38,6 +38,7 @@ #include #include #include +#include #include #include #include From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 20:32:41 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E2333EB0; Wed, 31 Dec 2014 20:32:41 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D30BF664C0; Wed, 31 Dec 2014 20:31:41 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBVKVfuG054188; Wed, 31 Dec 2014 20:31:41 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBVKVbnX054163; Wed, 31 Dec 2014 20:31:37 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201412312031.sBVKVbnX054163@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Wed, 31 Dec 2014 20:31:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276479 - in head: . contrib/ipfilter contrib/llvm contrib/llvm/include/llvm contrib/llvm/include/llvm-c contrib/llvm/include/llvm-c/Transforms contrib/llvm/include/llvm/ADT contrib/llv... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 20:32:42 -0000 Author: dim Date: Wed Dec 31 20:31:32 2014 New Revision: 276479 URL: https://svnweb.freebsd.org/changeset/base/276479 Log: Upgrade our copy of clang, llvm and lldb to 3.5.0 release. Please note that this version now requires C++11 support to build; see UPDATING for more information. Release notes for llvm and clang can be found here: Thanks to Ed Maste, Roman Divacky, Andrew Turner, Justin Hibbits and Antoine Brodin for their invaluable help with this import. Approved by: portmgr (antoine) MFC after: 1 month Added: head/contrib/llvm/include/llvm-c/module.modulemap - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm-c/module.modulemap head/contrib/llvm/include/llvm/ADT/iterator.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/ADT/iterator.h head/contrib/llvm/include/llvm/ADT/iterator_range.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/ADT/iterator_range.h head/contrib/llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h head/contrib/llvm/include/llvm/Analysis/CGSCCPassManager.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Analysis/CGSCCPassManager.h head/contrib/llvm/include/llvm/Analysis/DominanceFrontierImpl.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Analysis/DominanceFrontierImpl.h head/contrib/llvm/include/llvm/Analysis/JumpInstrTableInfo.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Analysis/JumpInstrTableInfo.h head/contrib/llvm/include/llvm/Analysis/LazyCallGraph.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Analysis/LazyCallGraph.h head/contrib/llvm/include/llvm/Analysis/RegionInfoImpl.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Analysis/RegionInfoImpl.h head/contrib/llvm/include/llvm/Analysis/TargetFolder.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Analysis/TargetFolder.h head/contrib/llvm/include/llvm/AsmParser/ - copied from r276476, projects/clang350-import/contrib/llvm/include/llvm/AsmParser/ head/contrib/llvm/include/llvm/Bitcode/BitcodeWriterPass.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Bitcode/BitcodeWriterPass.h head/contrib/llvm/include/llvm/CodeGen/JumpInstrTables.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/CodeGen/JumpInstrTables.h head/contrib/llvm/include/llvm/CodeGen/LivePhysRegs.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/CodeGen/LivePhysRegs.h head/contrib/llvm/include/llvm/CodeGen/MachineDominanceFrontier.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/CodeGen/MachineDominanceFrontier.h head/contrib/llvm/include/llvm/CodeGen/MachineRegionInfo.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/CodeGen/MachineRegionInfo.h head/contrib/llvm/include/llvm/CodeGen/MachineValueType.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/CodeGen/MachineValueType.h head/contrib/llvm/include/llvm/CodeGen/PBQP/CostAllocator.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/CodeGen/PBQP/CostAllocator.h head/contrib/llvm/include/llvm/CodeGen/PBQP/ReductionRules.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/CodeGen/PBQP/ReductionRules.h head/contrib/llvm/include/llvm/CodeGen/PBQP/RegAllocSolver.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/CodeGen/PBQP/RegAllocSolver.h head/contrib/llvm/include/llvm/CodeGen/StackMapLivenessAnalysis.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/CodeGen/StackMapLivenessAnalysis.h head/contrib/llvm/include/llvm/ExecutionEngine/RuntimeDyldChecker.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/ExecutionEngine/RuntimeDyldChecker.h head/contrib/llvm/include/llvm/IR/AssemblyAnnotationWriter.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/AssemblyAnnotationWriter.h head/contrib/llvm/include/llvm/IR/AutoUpgrade.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/AutoUpgrade.h head/contrib/llvm/include/llvm/IR/CFG.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/CFG.h head/contrib/llvm/include/llvm/IR/CallSite.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/CallSite.h head/contrib/llvm/include/llvm/IR/Comdat.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/Comdat.h head/contrib/llvm/include/llvm/IR/ConstantFolder.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/ConstantFolder.h head/contrib/llvm/include/llvm/IR/ConstantRange.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/ConstantRange.h head/contrib/llvm/include/llvm/IR/DIBuilder.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/DIBuilder.h head/contrib/llvm/include/llvm/IR/DebugInfo.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/DebugInfo.h head/contrib/llvm/include/llvm/IR/DebugLoc.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/DebugLoc.h head/contrib/llvm/include/llvm/IR/DiagnosticInfo.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/DiagnosticInfo.h head/contrib/llvm/include/llvm/IR/DiagnosticPrinter.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/DiagnosticPrinter.h head/contrib/llvm/include/llvm/IR/Dominators.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/Dominators.h head/contrib/llvm/include/llvm/IR/GVMaterializer.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/GVMaterializer.h head/contrib/llvm/include/llvm/IR/GetElementPtrTypeIterator.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/GetElementPtrTypeIterator.h head/contrib/llvm/include/llvm/IR/GlobalObject.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/GlobalObject.h head/contrib/llvm/include/llvm/IR/IRPrintingPasses.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/IRPrintingPasses.h head/contrib/llvm/include/llvm/IR/InstIterator.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/InstIterator.h head/contrib/llvm/include/llvm/IR/InstVisitor.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/InstVisitor.h head/contrib/llvm/include/llvm/IR/LeakDetector.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/LeakDetector.h head/contrib/llvm/include/llvm/IR/LegacyPassNameParser.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/LegacyPassNameParser.h head/contrib/llvm/include/llvm/IR/Mangler.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/Mangler.h head/contrib/llvm/include/llvm/IR/NoFolder.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/NoFolder.h head/contrib/llvm/include/llvm/IR/PatternMatch.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/PatternMatch.h head/contrib/llvm/include/llvm/IR/PredIteratorCache.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/PredIteratorCache.h head/contrib/llvm/include/llvm/IR/ValueHandle.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/ValueHandle.h head/contrib/llvm/include/llvm/IR/ValueMap.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/ValueMap.h head/contrib/llvm/include/llvm/IR/Verifier.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/IR/Verifier.h head/contrib/llvm/include/llvm/LineEditor/ - copied from r276476, projects/clang350-import/contrib/llvm/include/llvm/LineEditor/ head/contrib/llvm/include/llvm/Linker/ - copied from r276476, projects/clang350-import/contrib/llvm/include/llvm/Linker/ head/contrib/llvm/include/llvm/MC/ConstantPools.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/MC/ConstantPools.h head/contrib/llvm/include/llvm/MC/MCAnalysis/ - copied from r276476, projects/clang350-import/contrib/llvm/include/llvm/MC/MCAnalysis/ head/contrib/llvm/include/llvm/MC/MCLinkerOptimizationHint.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/MC/MCLinkerOptimizationHint.h head/contrib/llvm/include/llvm/MC/MCTargetOptions.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/MC/MCTargetOptions.h head/contrib/llvm/include/llvm/MC/MCTargetOptionsCommandFlags.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/MC/MCTargetOptionsCommandFlags.h head/contrib/llvm/include/llvm/MC/MCWinCOFFStreamer.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/MC/MCWinCOFFStreamer.h head/contrib/llvm/include/llvm/MC/MCWinEH.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/MC/MCWinEH.h head/contrib/llvm/include/llvm/MC/StringTableBuilder.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/MC/StringTableBuilder.h head/contrib/llvm/include/llvm/MC/YAML.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/MC/YAML.h head/contrib/llvm/include/llvm/Object/IRObjectFile.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Object/IRObjectFile.h head/contrib/llvm/include/llvm/Object/SymbolicFile.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Object/SymbolicFile.h head/contrib/llvm/include/llvm/PassInfo.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/PassInfo.h head/contrib/llvm/include/llvm/ProfileData/ - copied from r276476, projects/clang350-import/contrib/llvm/include/llvm/ProfileData/ head/contrib/llvm/include/llvm/Support/ARMBuildAttributes.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Support/ARMBuildAttributes.h head/contrib/llvm/include/llvm/Support/ARMEHABI.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Support/ARMEHABI.h head/contrib/llvm/include/llvm/Support/ARMWinEH.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Support/ARMWinEH.h head/contrib/llvm/include/llvm/Support/EndianStream.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Support/EndianStream.h head/contrib/llvm/include/llvm/Support/Errc.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Support/Errc.h head/contrib/llvm/include/llvm/Support/GenericDomTree.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Support/GenericDomTree.h head/contrib/llvm/include/llvm/Support/GenericDomTreeConstruction.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Support/GenericDomTreeConstruction.h head/contrib/llvm/include/llvm/Support/LineIterator.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Support/LineIterator.h head/contrib/llvm/include/llvm/Support/OnDiskHashTable.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Support/OnDiskHashTable.h head/contrib/llvm/include/llvm/Support/RandomNumberGenerator.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Support/RandomNumberGenerator.h head/contrib/llvm/include/llvm/Support/ScaledNumber.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Support/ScaledNumber.h head/contrib/llvm/include/llvm/Support/SpecialCaseList.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Support/SpecialCaseList.h head/contrib/llvm/include/llvm/Support/WindowsError.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Support/WindowsError.h head/contrib/llvm/include/llvm/TableGen/SetTheory.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/TableGen/SetTheory.h head/contrib/llvm/include/llvm/Transforms/Utils/ASanStackFrameLayout.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Transforms/Utils/ASanStackFrameLayout.h head/contrib/llvm/include/llvm/Transforms/Utils/CtorUtils.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Transforms/Utils/CtorUtils.h head/contrib/llvm/include/llvm/Transforms/Utils/VectorUtils.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/Transforms/Utils/VectorUtils.h head/contrib/llvm/include/llvm/module.modulemap - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/module.modulemap head/contrib/llvm/include/llvm/module.modulemap.build - copied unchanged from r276476, projects/clang350-import/contrib/llvm/include/llvm/module.modulemap.build head/contrib/llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp head/contrib/llvm/lib/Analysis/CGSCCPassManager.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Analysis/CGSCCPassManager.cpp head/contrib/llvm/lib/Analysis/JumpInstrTableInfo.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Analysis/JumpInstrTableInfo.cpp head/contrib/llvm/lib/Analysis/LazyCallGraph.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Analysis/LazyCallGraph.cpp head/contrib/llvm/lib/AsmParser/module.modulemap - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/AsmParser/module.modulemap head/contrib/llvm/lib/Bitcode/module.modulemap - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Bitcode/module.modulemap head/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.h head/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterHandler.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterHandler.h head/contrib/llvm/lib/CodeGen/AsmPrinter/ByteStreamer.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/ByteStreamer.h head/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.h head/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h head/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocList.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocList.h head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.h head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.h head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h head/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.h head/contrib/llvm/lib/CodeGen/AsmPrinter/WinCodeViewLineTables.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/WinCodeViewLineTables.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/WinCodeViewLineTables.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/WinCodeViewLineTables.h head/contrib/llvm/lib/CodeGen/AtomicExpandLoadLinkedPass.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/AtomicExpandLoadLinkedPass.cpp head/contrib/llvm/lib/CodeGen/CodeGenPrepare.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/CodeGenPrepare.cpp head/contrib/llvm/lib/CodeGen/GlobalMerge.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/GlobalMerge.cpp head/contrib/llvm/lib/CodeGen/JumpInstrTables.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/JumpInstrTables.cpp head/contrib/llvm/lib/CodeGen/LivePhysRegs.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/LivePhysRegs.cpp head/contrib/llvm/lib/CodeGen/MachineDominanceFrontier.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/MachineDominanceFrontier.cpp head/contrib/llvm/lib/CodeGen/MachineRegionInfo.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/MachineRegionInfo.cpp head/contrib/llvm/lib/CodeGen/StackMapLivenessAnalysis.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/StackMapLivenessAnalysis.cpp head/contrib/llvm/lib/CodeGen/module.modulemap - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/CodeGen/module.modulemap head/contrib/llvm/lib/DebugInfo/module.modulemap - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/DebugInfo/module.modulemap head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/ - copied from r276476, projects/clang350-import/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/ head/contrib/llvm/lib/IR/Comdat.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/IR/Comdat.cpp head/contrib/llvm/lib/IR/ConstantRange.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/IR/ConstantRange.cpp head/contrib/llvm/lib/IR/DiagnosticInfo.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/IR/DiagnosticInfo.cpp head/contrib/llvm/lib/IR/DiagnosticPrinter.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/IR/DiagnosticPrinter.cpp head/contrib/llvm/lib/IR/IRPrintingPasses.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/IR/IRPrintingPasses.cpp head/contrib/llvm/lib/IR/MDBuilder.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/IR/MDBuilder.cpp head/contrib/llvm/lib/IR/Mangler.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/IR/Mangler.cpp head/contrib/llvm/lib/IR/module.modulemap - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/IR/module.modulemap head/contrib/llvm/lib/LineEditor/ - copied from r276476, projects/clang350-import/contrib/llvm/lib/LineEditor/ head/contrib/llvm/lib/MC/ConstantPools.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/MC/ConstantPools.cpp head/contrib/llvm/lib/MC/MCAnalysis/ - copied from r276476, projects/clang350-import/contrib/llvm/lib/MC/MCAnalysis/ head/contrib/llvm/lib/MC/MCLinkerOptimizationHint.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/MC/MCLinkerOptimizationHint.cpp head/contrib/llvm/lib/MC/MCTargetOptions.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/MC/MCTargetOptions.cpp head/contrib/llvm/lib/MC/StringTableBuilder.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/MC/StringTableBuilder.cpp head/contrib/llvm/lib/MC/YAML.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/MC/YAML.cpp head/contrib/llvm/lib/Object/IRObjectFile.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Object/IRObjectFile.cpp head/contrib/llvm/lib/Object/RecordStreamer.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Object/RecordStreamer.cpp head/contrib/llvm/lib/Object/RecordStreamer.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Object/RecordStreamer.h head/contrib/llvm/lib/Object/SymbolicFile.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Object/SymbolicFile.cpp head/contrib/llvm/lib/ProfileData/ - copied from r276476, projects/clang350-import/contrib/llvm/lib/ProfileData/ head/contrib/llvm/lib/Support/ARMBuildAttrs.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Support/ARMBuildAttrs.cpp head/contrib/llvm/lib/Support/ARMWinEH.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Support/ARMWinEH.cpp head/contrib/llvm/lib/Support/LEB128.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Support/LEB128.cpp head/contrib/llvm/lib/Support/LineIterator.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Support/LineIterator.cpp head/contrib/llvm/lib/Support/RandomNumberGenerator.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Support/RandomNumberGenerator.cpp head/contrib/llvm/lib/Support/ScaledNumber.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Support/ScaledNumber.cpp head/contrib/llvm/lib/Support/SpecialCaseList.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Support/SpecialCaseList.cpp head/contrib/llvm/lib/Support/Windows/WindowsSupport.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Support/Windows/WindowsSupport.h head/contrib/llvm/lib/TableGen/SetTheory.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/TableGen/SetTheory.cpp head/contrib/llvm/lib/TableGen/module.modulemap - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/TableGen/module.modulemap head/contrib/llvm/lib/Target/AArch64/AArch64AddressTypePromotion.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64AddressTypePromotion.cpp head/contrib/llvm/lib/Target/AArch64/AArch64AdvSIMDScalarPass.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64AdvSIMDScalarPass.cpp head/contrib/llvm/lib/Target/AArch64/AArch64BranchRelaxation.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64BranchRelaxation.cpp head/contrib/llvm/lib/Target/AArch64/AArch64CallingConvention.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64CallingConvention.td head/contrib/llvm/lib/Target/AArch64/AArch64CleanupLocalDynamicTLSPass.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64CleanupLocalDynamicTLSPass.cpp head/contrib/llvm/lib/Target/AArch64/AArch64CollectLOH.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64CollectLOH.cpp head/contrib/llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp head/contrib/llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp head/contrib/llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp head/contrib/llvm/lib/Target/AArch64/AArch64FastISel.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64FastISel.cpp head/contrib/llvm/lib/Target/AArch64/AArch64InstrAtomics.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64InstrAtomics.td head/contrib/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp head/contrib/llvm/lib/Target/AArch64/AArch64MCInstLower.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64MCInstLower.h head/contrib/llvm/lib/Target/AArch64/AArch64PerfectShuffle.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64PerfectShuffle.h head/contrib/llvm/lib/Target/AArch64/AArch64PromoteConstant.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64PromoteConstant.cpp head/contrib/llvm/lib/Target/AArch64/AArch64SchedA53.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64SchedA53.td head/contrib/llvm/lib/Target/AArch64/AArch64SchedA57.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64SchedA57.td head/contrib/llvm/lib/Target/AArch64/AArch64SchedA57WriteRes.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64SchedA57WriteRes.td head/contrib/llvm/lib/Target/AArch64/AArch64SchedCyclone.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64SchedCyclone.td head/contrib/llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp head/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp head/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.h head/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp head/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.h head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64AddressingModes.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64AddressingModes.h head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp head/contrib/llvm/lib/Target/ARM/ARMOptimizeBarriersPass.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/ARM/ARMOptimizeBarriersPass.cpp head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMArchName.def - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMArchName.def head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMArchName.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMArchName.h head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFStreamer.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFStreamer.cpp head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.cpp head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.h head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.h head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.h head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.h head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.h head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCNaCl.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCNaCl.h head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsNaClELFStreamer.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsNaClELFStreamer.cpp head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsOptionRecord.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsOptionRecord.cpp head/contrib/llvm/lib/Target/Mips/MicroMipsInstrFPU.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/MicroMipsInstrFPU.td head/contrib/llvm/lib/Target/Mips/Mips16HardFloatInfo.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/Mips16HardFloatInfo.cpp head/contrib/llvm/lib/Target/Mips/Mips16HardFloatInfo.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/Mips16HardFloatInfo.h head/contrib/llvm/lib/Target/Mips/Mips32r6InstrFormats.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/Mips32r6InstrFormats.td head/contrib/llvm/lib/Target/Mips/Mips32r6InstrInfo.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/Mips32r6InstrInfo.td head/contrib/llvm/lib/Target/Mips/Mips64r6InstrInfo.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/Mips64r6InstrInfo.td head/contrib/llvm/lib/Target/Mips/MipsFastISel.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/MipsFastISel.cpp head/contrib/llvm/lib/Target/Mips/MipsOptimizePICCall.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/MipsOptimizePICCall.cpp head/contrib/llvm/lib/Target/Mips/MipsOptionRecord.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Mips/MipsOptionRecord.h head/contrib/llvm/lib/Target/NVPTX/NVPTXAssignValidGlobalNames.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/NVPTX/NVPTXAssignValidGlobalNames.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXFavorNonGenericAddrSpaces.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/NVPTX/NVPTXFavorNonGenericAddrSpaces.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXImageOptimizer.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/NVPTX/NVPTXImageOptimizer.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXMachineFunctionInfo.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/NVPTX/NVPTXMachineFunctionInfo.h head/contrib/llvm/lib/Target/NVPTX/NVPTXReplaceImageHandles.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/NVPTX/NVPTXReplaceImageHandles.cpp head/contrib/llvm/lib/Target/PowerPC/Disassembler/ - copied from r276476, projects/clang350-import/contrib/llvm/lib/Target/PowerPC/Disassembler/ head/contrib/llvm/lib/Target/PowerPC/PPCInstrVSX.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/PowerPC/PPCInstrVSX.td head/contrib/llvm/lib/Target/PowerPC/PPCScheduleP7.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/PowerPC/PPCScheduleP7.td head/contrib/llvm/lib/Target/R600/AMDGPUIntrinsicInfo.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/R600/AMDGPUIntrinsicInfo.cpp head/contrib/llvm/lib/Target/R600/AMDGPUIntrinsicInfo.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/R600/AMDGPUIntrinsicInfo.h head/contrib/llvm/lib/Target/R600/AMDGPUPromoteAlloca.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/R600/AMDGPUPromoteAlloca.cpp head/contrib/llvm/lib/Target/R600/CaymanInstructions.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/R600/CaymanInstructions.td head/contrib/llvm/lib/Target/R600/EvergreenInstructions.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/R600/EvergreenInstructions.td head/contrib/llvm/lib/Target/R600/MCTargetDesc/AMDGPUFixupKinds.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/R600/MCTargetDesc/AMDGPUFixupKinds.h head/contrib/llvm/lib/Target/R600/R700Instructions.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/R600/R700Instructions.td head/contrib/llvm/lib/Target/R600/SIFixSGPRLiveRanges.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/R600/SIFixSGPRLiveRanges.cpp head/contrib/llvm/lib/Target/R600/SILowerI1Copies.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/R600/SILowerI1Copies.cpp head/contrib/llvm/lib/Target/R600/SIShrinkInstructions.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/R600/SIShrinkInstructions.cpp head/contrib/llvm/lib/Target/Sparc/SparcInstrVIS.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/Sparc/SparcInstrVIS.td head/contrib/llvm/lib/Target/X86/AsmParser/X86AsmInstrumentation.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/X86/AsmParser/X86AsmInstrumentation.cpp head/contrib/llvm/lib/Target/X86/AsmParser/X86AsmInstrumentation.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/X86/AsmParser/X86AsmInstrumentation.h head/contrib/llvm/lib/Target/X86/AsmParser/X86AsmParserCommon.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/X86/AsmParser/X86AsmParserCommon.h head/contrib/llvm/lib/Target/X86/AsmParser/X86Operand.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/X86/AsmParser/X86Operand.h head/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.cpp head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFStreamer.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFStreamer.cpp head/contrib/llvm/lib/Target/X86/X86AtomicExpandPass.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/X86/X86AtomicExpandPass.cpp head/contrib/llvm/lib/Target/XCore/XCoreFrameToArgsOffsetElim.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/XCore/XCoreFrameToArgsOffsetElim.cpp head/contrib/llvm/lib/Target/XCore/XCoreTargetStreamer.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Target/XCore/XCoreTargetStreamer.h head/contrib/llvm/lib/Transforms/Scalar/ConstantHoisting.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Transforms/Scalar/ConstantHoisting.cpp head/contrib/llvm/lib/Transforms/Scalar/LoadCombine.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Transforms/Scalar/LoadCombine.cpp head/contrib/llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp head/contrib/llvm/lib/Transforms/Scalar/Scalarizer.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Transforms/Scalar/Scalarizer.cpp head/contrib/llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp head/contrib/llvm/lib/Transforms/Utils/ASanStackFrameLayout.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Transforms/Utils/ASanStackFrameLayout.cpp head/contrib/llvm/lib/Transforms/Utils/AddDiscriminators.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Transforms/Utils/AddDiscriminators.cpp head/contrib/llvm/lib/Transforms/Utils/CtorUtils.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/lib/Transforms/Utils/CtorUtils.cpp head/contrib/llvm/patches/patch-01-clang-version-include.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-01-clang-version-include.diff head/contrib/llvm/patches/patch-02-format-extensions.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-02-format-extensions.diff head/contrib/llvm/patches/patch-03-clang-vendor-suffix.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-03-clang-vendor-suffix.diff head/contrib/llvm/patches/patch-04-default-target-triple.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-04-default-target-triple.diff head/contrib/llvm/patches/patch-05-add-CC-aliases.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-05-add-CC-aliases.diff head/contrib/llvm/patches/patch-06-clang-arm-target-cpu.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-06-clang-arm-target-cpu.diff head/contrib/llvm/patches/patch-07-llvm-r213960-ppc32-tls.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-07-llvm-r213960-ppc32-tls.diff head/contrib/llvm/patches/patch-08-llvm-r216989-r216990-fix-movw-armv6.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-08-llvm-r216989-r216990-fix-movw-armv6.diff head/contrib/llvm/patches/patch-09-clang-r217410-i386-garbage-float.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-09-clang-r217410-i386-garbage-float.diff head/contrib/llvm/patches/patch-10-llvm-r221709-debug-oom.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-10-llvm-r221709-debug-oom.diff head/contrib/llvm/patches/patch-11-llvm-r222562-loop-rotate.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-11-llvm-r222562-loop-rotate.diff head/contrib/llvm/patches/patch-12-add-llvm-gvn-option.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-12-add-llvm-gvn-option.diff head/contrib/llvm/patches/patch-13-llvm-r218241-dwarf2-warning.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-13-llvm-r218241-dwarf2-warning.diff head/contrib/llvm/patches/patch-14-llvm-r215352-aarch64-dyn-loader.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-14-llvm-r215352-aarch64-dyn-loader.diff head/contrib/llvm/patches/patch-15-llvm-r216571-dynamiclib-usability.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-15-llvm-r216571-dynamiclib-usability.diff head/contrib/llvm/patches/patch-16-clang-r221900-freebsd-aarch64.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-16-clang-r221900-freebsd-aarch64.diff head/contrib/llvm/patches/patch-17-llvm-r222856-libapr-miscompile.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-17-llvm-r222856-libapr-miscompile.diff head/contrib/llvm/patches/patch-18-llvm-r214802-armv6-cp10-cp11.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-18-llvm-r214802-armv6-cp10-cp11.diff head/contrib/llvm/patches/patch-19-llvm-r215811-arm-fpu-directive.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-19-llvm-r215811-arm-fpu-directive.diff head/contrib/llvm/patches/patch-20-enable-armv6-clrex.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-20-enable-armv6-clrex.diff head/contrib/llvm/patches/patch-21-llvm-r223171-fix-vectorizer.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-21-llvm-r223171-fix-vectorizer.diff head/contrib/llvm/patches/patch-22-llvm-r223147-arm-cpu-directive.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-22-llvm-r223147-arm-cpu-directive.diff head/contrib/llvm/patches/patch-23-llvm-r221170-ppc-vaarg.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-23-llvm-r221170-ppc-vaarg.diff head/contrib/llvm/patches/patch-24-llvm-r221791-ppc-small-pic.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-24-llvm-r221791-ppc-small-pic.diff head/contrib/llvm/patches/patch-25-llvm-r224415-ppc-local.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-25-llvm-r224415-ppc-local.diff head/contrib/llvm/patches/patch-26-llvm-r213890-ppc-eh_frame.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-26-llvm-r213890-ppc-eh_frame.diff head/contrib/llvm/patches/patch-27-llvm-r221703-ppc-tls_get_addr.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-27-llvm-r221703-ppc-tls_get_addr.diff head/contrib/llvm/patches/patch-28-llvm-r224890-ppc-ctr-tls-loop.diff - copied unchanged from r276476, projects/clang350-import/contrib/llvm/patches/patch-28-llvm-r224890-ppc-ctr-tls-loop.diff head/contrib/llvm/tools/clang/include/clang-c/BuildSystem.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang-c/BuildSystem.h head/contrib/llvm/tools/clang/include/clang-c/CXErrorCode.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang-c/CXErrorCode.h head/contrib/llvm/tools/clang/include/clang-c/Documentation.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang-c/Documentation.h head/contrib/llvm/tools/clang/include/clang-c/module.modulemap - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang-c/module.modulemap head/contrib/llvm/tools/clang/include/clang/AST/DataRecursiveASTVisitor.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/AST/DataRecursiveASTVisitor.h head/contrib/llvm/tools/clang/include/clang/AST/LambdaCapture.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/AST/LambdaCapture.h head/contrib/llvm/tools/clang/include/clang/AST/OpenMPClause.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/AST/OpenMPClause.h head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyLogical.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyLogical.h head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyOps.def - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyOps.def head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTraverse.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTraverse.h head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyUtil.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyUtil.h head/contrib/llvm/tools/clang/include/clang/Basic/AttrDocs.td - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/Basic/AttrDocs.td head/contrib/llvm/tools/clang/include/clang/Basic/Attributes.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/Basic/Attributes.h head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsNEON.def - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsNEON.def head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsR600.def - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsR600.def head/contrib/llvm/tools/clang/include/clang/Basic/PlistSupport.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/Basic/PlistSupport.h head/contrib/llvm/tools/clang/include/clang/Basic/VirtualFileSystem.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/Basic/VirtualFileSystem.h head/contrib/llvm/tools/clang/include/clang/Driver/Multilib.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/Driver/Multilib.h head/contrib/llvm/tools/clang/include/clang/Sema/LoopHint.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/Sema/LoopHint.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/AnalysisConsumer.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/AnalysisConsumer.h head/contrib/llvm/tools/clang/include/clang/module.modulemap - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/include/clang/module.modulemap head/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyCommon.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyCommon.cpp head/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyLogical.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyLogical.cpp head/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyTIL.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyTIL.cpp head/contrib/llvm/tools/clang/lib/Basic/Attributes.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Basic/Attributes.cpp head/contrib/llvm/tools/clang/lib/Basic/VirtualFileSystem.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Basic/VirtualFileSystem.cpp head/contrib/llvm/tools/clang/lib/Basic/Warnings.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Basic/Warnings.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.h head/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.h head/contrib/llvm/tools/clang/lib/CodeGen/CGStmtOpenMP.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/CGStmtOpenMP.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.h head/contrib/llvm/tools/clang/lib/CodeGen/SanitizerBlacklist.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/SanitizerBlacklist.cpp head/contrib/llvm/tools/clang/lib/CodeGen/SanitizerBlacklist.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/SanitizerBlacklist.h head/contrib/llvm/tools/clang/lib/Driver/Multilib.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Driver/Multilib.cpp head/contrib/llvm/tools/clang/lib/Frontend/ModuleDependencyCollector.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Frontend/ModuleDependencyCollector.cpp head/contrib/llvm/tools/clang/lib/Frontend/Rewrite/ - copied from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Frontend/Rewrite/ head/contrib/llvm/tools/clang/lib/Headers/arm_acle.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Headers/arm_acle.h head/contrib/llvm/tools/clang/lib/Headers/ia32intrin.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Headers/ia32intrin.h head/contrib/llvm/tools/clang/lib/Headers/module.modulemap - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Headers/module.modulemap head/contrib/llvm/tools/clang/lib/Parse/ParseStmtAsm.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Parse/ParseStmtAsm.cpp head/contrib/llvm/tools/clang/lib/Rewrite/DeltaTree.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Rewrite/DeltaTree.cpp head/contrib/llvm/tools/clang/lib/Rewrite/HTMLRewrite.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Rewrite/HTMLRewrite.cpp head/contrib/llvm/tools/clang/lib/Rewrite/RewriteRope.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Rewrite/RewriteRope.cpp head/contrib/llvm/tools/clang/lib/Rewrite/Rewriter.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Rewrite/Rewriter.cpp head/contrib/llvm/tools/clang/lib/Rewrite/TokenRewriter.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/Rewrite/TokenRewriter.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/SelectorExtras.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/SelectorExtras.h head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp head/contrib/llvm/tools/lldb/include/lldb/API/SBTypeEnumMember.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/API/SBTypeEnumMember.h head/contrib/llvm/tools/lldb/include/lldb/API/SBUnixSignals.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/API/SBUnixSignals.h head/contrib/llvm/tools/lldb/include/lldb/Core/StructuredData.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Core/StructuredData.h head/contrib/llvm/tools/lldb/include/lldb/Host/FileCache.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/FileCache.h head/contrib/llvm/tools/lldb/include/lldb/Host/FileSystem.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/FileSystem.h head/contrib/llvm/tools/lldb/include/lldb/Host/HostInfo.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/HostInfo.h head/contrib/llvm/tools/lldb/include/lldb/Host/HostInfoBase.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/HostInfoBase.h head/contrib/llvm/tools/lldb/include/lldb/Host/HostProcess.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/HostProcess.h head/contrib/llvm/tools/lldb/include/lldb/Host/IOObject.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/IOObject.h head/contrib/llvm/tools/lldb/include/lldb/Host/Pipe.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/Pipe.h head/contrib/llvm/tools/lldb/include/lldb/Host/Socket.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/Socket.h head/contrib/llvm/tools/lldb/include/lldb/Host/freebsd/HostInfoFreeBSD.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/freebsd/HostInfoFreeBSD.h head/contrib/llvm/tools/lldb/include/lldb/Host/posix/ - copied from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/posix/ head/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandOptionValidators.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandOptionValidators.h head/contrib/llvm/tools/lldb/include/lldb/Target/FileAction.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/FileAction.h head/contrib/llvm/tools/lldb/include/lldb/Target/JITLoader.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/JITLoader.h head/contrib/llvm/tools/lldb/include/lldb/Target/JITLoaderList.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/JITLoaderList.h head/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h head/contrib/llvm/tools/lldb/include/lldb/Target/NativeRegisterContext.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/NativeRegisterContext.h head/contrib/llvm/tools/lldb/include/lldb/Target/NativeRegisterContextRegisterInfo.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/NativeRegisterContextRegisterInfo.h head/contrib/llvm/tools/lldb/include/lldb/Target/ProcessInfo.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/ProcessInfo.h head/contrib/llvm/tools/lldb/include/lldb/Target/ProcessLaunchInfo.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/ProcessLaunchInfo.h head/contrib/llvm/tools/lldb/include/lldb/Utility/SafeMachO.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Utility/SafeMachO.h head/contrib/llvm/tools/lldb/include/lldb/Utility/StringLexer.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Utility/StringLexer.h head/contrib/llvm/tools/lldb/include/lldb/lldb-private-forward.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/lldb-private-forward.h head/contrib/llvm/tools/lldb/source/API/SBTypeEnumMember.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/API/SBTypeEnumMember.cpp head/contrib/llvm/tools/lldb/source/API/SBUnixSignals.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/API/SBUnixSignals.cpp head/contrib/llvm/tools/lldb/source/Core/FastDemangle.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Core/FastDemangle.cpp head/contrib/llvm/tools/lldb/source/Core/StructuredData.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Core/StructuredData.cpp head/contrib/llvm/tools/lldb/source/Host/common/FileCache.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/FileCache.cpp head/contrib/llvm/tools/lldb/source/Host/common/HostInfoBase.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/HostInfoBase.cpp head/contrib/llvm/tools/lldb/source/Host/common/IOObject.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/IOObject.cpp head/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpoint.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpoint.cpp head/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpoint.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpoint.h head/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpointList.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpointList.cpp head/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpointList.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpointList.h head/contrib/llvm/tools/lldb/source/Host/common/NativeProcessProtocol.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeProcessProtocol.cpp head/contrib/llvm/tools/lldb/source/Host/common/NativeProcessProtocol.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeProcessProtocol.h head/contrib/llvm/tools/lldb/source/Host/common/NativeThreadProtocol.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeThreadProtocol.cpp head/contrib/llvm/tools/lldb/source/Host/common/NativeThreadProtocol.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeThreadProtocol.h head/contrib/llvm/tools/lldb/source/Host/common/Pipe.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/Pipe.cpp head/contrib/llvm/tools/lldb/source/Host/common/Socket.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/Socket.cpp head/contrib/llvm/tools/lldb/source/Host/common/SoftwareBreakpoint.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/SoftwareBreakpoint.cpp head/contrib/llvm/tools/lldb/source/Host/common/SoftwareBreakpoint.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/SoftwareBreakpoint.h head/contrib/llvm/tools/lldb/source/Host/freebsd/HostInfoFreeBSD.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/freebsd/HostInfoFreeBSD.cpp head/contrib/llvm/tools/lldb/source/Host/posix/ - copied from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Host/posix/ head/contrib/llvm/tools/lldb/source/Interpreter/CommandOptionValidators.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Interpreter/CommandOptionValidators.cpp head/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm64/ - copied from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm64/ head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-hexagon/ - copied from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-hexagon/ head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/ - copied from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/ head/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM64/ - copied from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM64/ head/contrib/llvm/tools/lldb/source/Plugins/JITLoader/ - copied from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/JITLoader/ head/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/JIT/ - copied from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/JIT/ head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_arm64.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_arm64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_arm64.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_arm64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_i386.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_i386.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_i386.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_i386.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_mips64.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_mips64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_mips64.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_mips64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_arm64.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_arm64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_arm64.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_arm64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_i386.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_i386.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_i386.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_i386.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_x86_64.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_x86_64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_x86_64.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_x86_64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_mips64.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_mips64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_x86.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_x86.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoInterface.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoInterface.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_arm64.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_arm64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_i386.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_i386.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_mips64.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_mips64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_x86_64.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_x86_64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-x86-register-enums.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-x86-register-enums.h head/contrib/llvm/tools/lldb/source/Target/FileAction.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Target/FileAction.cpp head/contrib/llvm/tools/lldb/source/Target/JITLoader.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Target/JITLoader.cpp head/contrib/llvm/tools/lldb/source/Target/JITLoaderList.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Target/JITLoaderList.cpp head/contrib/llvm/tools/lldb/source/Target/NativeRegisterContext.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Target/NativeRegisterContext.cpp head/contrib/llvm/tools/lldb/source/Target/NativeRegisterContextRegisterInfo.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Target/NativeRegisterContextRegisterInfo.cpp head/contrib/llvm/tools/lldb/source/Target/ProcessInfo.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Target/ProcessInfo.cpp head/contrib/llvm/tools/lldb/source/Target/ProcessLaunchInfo.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Target/ProcessLaunchInfo.cpp head/contrib/llvm/tools/lldb/source/Utility/ARM64_DWARF_Registers.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Utility/ARM64_DWARF_Registers.cpp head/contrib/llvm/tools/lldb/source/Utility/ARM64_DWARF_Registers.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Utility/ARM64_DWARF_Registers.h head/contrib/llvm/tools/lldb/source/Utility/ARM64_GCC_Registers.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Utility/ARM64_GCC_Registers.h head/contrib/llvm/tools/lldb/source/Utility/StringLexer.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lldb/source/Utility/StringLexer.cpp head/contrib/llvm/tools/lldb/tools/lldb-mi/ - copied from r276476, projects/clang350-import/contrib/llvm/tools/lldb/tools/lldb-mi/ head/contrib/llvm/tools/lli/RPCChannel.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lli/RPCChannel.h head/contrib/llvm/tools/lli/Unix/RPCChannel.inc - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lli/Unix/RPCChannel.inc head/contrib/llvm/tools/lli/Windows/RPCChannel.inc - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/lli/Windows/RPCChannel.inc head/contrib/llvm/tools/llvm-readobj/ARMAttributeParser.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/llvm-readobj/ARMAttributeParser.cpp head/contrib/llvm/tools/llvm-readobj/ARMAttributeParser.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/llvm-readobj/ARMAttributeParser.h head/contrib/llvm/tools/llvm-readobj/ARMEHABIPrinter.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/llvm-readobj/ARMEHABIPrinter.h head/contrib/llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp head/contrib/llvm/tools/llvm-readobj/ARMWinEHPrinter.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/llvm-readobj/ARMWinEHPrinter.h head/contrib/llvm/tools/llvm-readobj/Win64EHDumper.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/llvm-readobj/Win64EHDumper.cpp head/contrib/llvm/tools/llvm-readobj/Win64EHDumper.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/llvm-readobj/Win64EHDumper.h head/contrib/llvm/tools/opt/BreakpointPrinter.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/opt/BreakpointPrinter.cpp head/contrib/llvm/tools/opt/BreakpointPrinter.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/opt/BreakpointPrinter.h head/contrib/llvm/tools/opt/NewPMDriver.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/opt/NewPMDriver.cpp head/contrib/llvm/tools/opt/NewPMDriver.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/opt/NewPMDriver.h head/contrib/llvm/tools/opt/PassPrinters.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/opt/PassPrinters.cpp head/contrib/llvm/tools/opt/PassPrinters.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/opt/PassPrinters.h head/contrib/llvm/tools/opt/PassRegistry.def - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/opt/PassRegistry.def head/contrib/llvm/tools/opt/Passes.cpp - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/opt/Passes.cpp head/contrib/llvm/tools/opt/Passes.h - copied unchanged from r276476, projects/clang350-import/contrib/llvm/tools/opt/Passes.h head/contrib/llvm/utils/TableGen/module.modulemap - copied unchanged from r276476, projects/clang350-import/contrib/llvm/utils/TableGen/module.modulemap head/lib/clang/include/MipsGenFastISel.inc - copied unchanged from r276476, projects/clang350-import/lib/clang/include/MipsGenFastISel.inc head/lib/clang/include/PPCGenDisassemblerTables.inc - copied unchanged from r276476, projects/clang350-import/lib/clang/include/PPCGenDisassemblerTables.inc head/lib/clang/include/clang/AST/AttrVisitor.inc - copied unchanged from r276476, projects/clang350-import/lib/clang/include/clang/AST/AttrVisitor.inc head/lib/clang/include/clang/Basic/AttrHasAttributeImpl.inc - copied unchanged from r276476, projects/clang350-import/lib/clang/include/clang/Basic/AttrHasAttributeImpl.inc head/lib/clang/include/clang/Parse/AttrParserStringSwitches.inc - copied unchanged from r276476, projects/clang350-import/lib/clang/include/clang/Parse/AttrParserStringSwitches.inc head/lib/clang/libclangrewrite/ - copied from r276476, projects/clang350-import/lib/clang/libclangrewrite/ head/lib/clang/liblldbHostPOSIX/ - copied from r276476, projects/clang350-import/lib/clang/liblldbHostPOSIX/ head/lib/clang/liblldbPluginInstructionARM64/ - copied from r276476, projects/clang350-import/lib/clang/liblldbPluginInstructionARM64/ head/lib/clang/liblldbPluginJITLoaderGDB/ - copied from r276476, projects/clang350-import/lib/clang/liblldbPluginJITLoaderGDB/ head/lib/clang/liblldbPluginObjectFileJIT/ - copied from r276476, projects/clang350-import/lib/clang/liblldbPluginObjectFileJIT/ head/lib/clang/libllvmmcanalysis/ - copied from r276476, projects/clang350-import/lib/clang/libllvmmcanalysis/ head/lib/clang/libllvmpowerpcdisassembler/ - copied from r276476, projects/clang350-import/lib/clang/libllvmpowerpcdisassembler/ head/lib/clang/libllvmprofiledata/ - copied from r276476, projects/clang350-import/lib/clang/libllvmprofiledata/ Deleted: head/contrib/llvm/include/llvm/ADT/ImmutableIntervalMap.h head/contrib/llvm/include/llvm/ADT/OwningPtr.h head/contrib/llvm/include/llvm/ADT/ValueMap.h head/contrib/llvm/include/llvm/ADT/polymorphic_ptr.h head/contrib/llvm/include/llvm/Analysis/BlockFrequencyImpl.h head/contrib/llvm/include/llvm/Analysis/DominatorInternals.h head/contrib/llvm/include/llvm/Analysis/Dominators.h head/contrib/llvm/include/llvm/Analysis/Verifier.h head/contrib/llvm/include/llvm/Assembly/ head/contrib/llvm/include/llvm/AutoUpgrade.h head/contrib/llvm/include/llvm/CodeGen/LiveRegUnits.h head/contrib/llvm/include/llvm/CodeGen/PBQP/HeuristicBase.h head/contrib/llvm/include/llvm/CodeGen/PBQP/HeuristicSolver.h head/contrib/llvm/include/llvm/CodeGen/PBQP/Heuristics/ head/contrib/llvm/include/llvm/DIBuilder.h head/contrib/llvm/include/llvm/DebugInfo.h head/contrib/llvm/include/llvm/GVMaterializer.h head/contrib/llvm/include/llvm/InstVisitor.h head/contrib/llvm/include/llvm/Linker.h head/contrib/llvm/include/llvm/MC/MCAtom.h head/contrib/llvm/include/llvm/MC/MCFunction.h head/contrib/llvm/include/llvm/MC/MCModule.h head/contrib/llvm/include/llvm/MC/MCModuleYAML.h head/contrib/llvm/include/llvm/Object/YAML.h head/contrib/llvm/include/llvm/Support/CFG.h head/contrib/llvm/include/llvm/Support/CallSite.h head/contrib/llvm/include/llvm/Support/ConstantFolder.h head/contrib/llvm/include/llvm/Support/ConstantRange.h head/contrib/llvm/include/llvm/Support/DataFlow.h head/contrib/llvm/include/llvm/Support/DebugLoc.h head/contrib/llvm/include/llvm/Support/Disassembler.h head/contrib/llvm/include/llvm/Support/FEnv.h head/contrib/llvm/include/llvm/Support/GetElementPtrTypeIterator.h head/contrib/llvm/include/llvm/Support/InstIterator.h head/contrib/llvm/include/llvm/Support/LeakDetector.h head/contrib/llvm/include/llvm/Support/NoFolder.h head/contrib/llvm/include/llvm/Support/PassNameParser.h head/contrib/llvm/include/llvm/Support/PatternMatch.h head/contrib/llvm/include/llvm/Support/PredIteratorCache.h head/contrib/llvm/include/llvm/Support/TargetFolder.h head/contrib/llvm/include/llvm/Support/ValueHandle.h head/contrib/llvm/include/llvm/Support/system_error.h head/contrib/llvm/include/llvm/Target/Mangler.h head/contrib/llvm/include/llvm/Transforms/Utils/SpecialCaseList.h head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfException.cpp head/contrib/llvm/lib/CodeGen/LiveRegUnits.cpp head/contrib/llvm/lib/IR/PrintModulePass.cpp head/contrib/llvm/lib/MC/MCAtom.cpp head/contrib/llvm/lib/MC/MCFunction.cpp head/contrib/llvm/lib/MC/MCModule.cpp head/contrib/llvm/lib/MC/MCModuleYAML.cpp head/contrib/llvm/lib/MC/MCObjectDisassembler.cpp head/contrib/llvm/lib/MC/MCObjectSymbolizer.cpp head/contrib/llvm/lib/MC/MCPureStreamer.cpp head/contrib/llvm/lib/Object/YAML.cpp head/contrib/llvm/lib/Support/ConstantRange.cpp head/contrib/llvm/lib/Support/Disassembler.cpp head/contrib/llvm/lib/Support/Unix/system_error.inc head/contrib/llvm/lib/Support/Windows/Windows.h head/contrib/llvm/lib/Support/Windows/system_error.inc head/contrib/llvm/lib/Support/system_error.cpp head/contrib/llvm/lib/Target/AArch64/AArch64AsmPrinter.h head/contrib/llvm/lib/Target/AArch64/AArch64BranchFixupPass.cpp head/contrib/llvm/lib/Target/AArch64/AArch64CallingConv.td head/contrib/llvm/lib/Target/AArch64/AArch64InstrNEON.td head/contrib/llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.cpp head/contrib/llvm/lib/Target/AArch64/README.txt head/contrib/llvm/lib/Target/ARM/ARMBuildAttrs.h head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMUnwindOp.h head/contrib/llvm/lib/Target/Mangler.cpp head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsReginfo.cpp head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsReginfo.h head/contrib/llvm/lib/Target/NVPTX/NVPTXSplitBBatBar.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXSplitBBatBar.h head/contrib/llvm/lib/Target/R600/AMDGPUConvertToISA.cpp head/contrib/llvm/lib/Target/R600/AMDILBase.td head/contrib/llvm/lib/Target/R600/AMDILISelLowering.cpp head/contrib/llvm/lib/Target/R600/AMDILInstrInfo.td head/contrib/llvm/lib/Target/R600/AMDILIntrinsicInfo.cpp head/contrib/llvm/lib/Target/R600/AMDILIntrinsicInfo.h head/contrib/llvm/lib/Target/R600/AMDILIntrinsics.td head/contrib/llvm/lib/Target/R600/AMDILRegisterInfo.td head/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c head/contrib/llvm/lib/Target/X86/X86COFFMachineModuleInfo.cpp head/contrib/llvm/lib/Target/X86/X86COFFMachineModuleInfo.h head/contrib/llvm/lib/Transforms/Scalar/CodeGenPrepare.cpp head/contrib/llvm/lib/Transforms/Scalar/GlobalMerge.cpp head/contrib/llvm/lib/Transforms/Utils/SpecialCaseList.cpp head/contrib/llvm/patches/patch-r208961-clang-version-include.diff head/contrib/llvm/patches/patch-r208987-format-extensions.diff head/contrib/llvm/patches/patch-r209107-clang-vendor-suffix.diff head/contrib/llvm/patches/patch-r213492-amd64-multi-os-dot.diff head/contrib/llvm/patches/patch-r221503-default-target-triple.diff head/contrib/llvm/patches/patch-r243830-arm-disable-clear-cache.diff head/contrib/llvm/patches/patch-r252503-arm-transient-stack-alignment.diff head/contrib/llvm/patches/patch-r257109-add-CC-aliases.diff head/contrib/llvm/patches/patch-r259053-gcc-installation-detector.diff head/contrib/llvm/patches/patch-r259498-add-fxsave.diff head/contrib/llvm/patches/patch-r261680-clang-r200899-fix-security-quantis.diff head/contrib/llvm/patches/patch-r261991-llvm-r195391-fix-dwarf2.diff head/contrib/llvm/patches/patch-r261991-llvm-r198385-fix-dwarf2.diff head/contrib/llvm/patches/patch-r261991-llvm-r198389-fix-dwarf2.diff head/contrib/llvm/patches/patch-r262261-llvm-r198028-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198029-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198030-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198145-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198149-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198157-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198280-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198281-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198286-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198480-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198484-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198533-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198565-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198567-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198580-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198591-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198592-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198658-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198681-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198738-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198739-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198740-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198893-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198909-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r198910-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r199014-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r199024-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r199028-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r199031-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r199033-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r199061-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r199186-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r199187-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r199775-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r199781-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r199786-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r199940-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r199974-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r199975-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r199977-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200103-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200104-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200112-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200130-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200131-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200141-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200282-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200368-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200373-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200376-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200509-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200617-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200960-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200961-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200962-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200963-sparc.diff head/contrib/llvm/patches/patch-r262261-llvm-r200965-sparc.diff head/contrib/llvm/patches/patch-r262262-clang-r198311-sparc.diff head/contrib/llvm/patches/patch-r262262-clang-r198312-sparc.diff head/contrib/llvm/patches/patch-r262262-clang-r198911-sparc.diff head/contrib/llvm/patches/patch-r262262-clang-r198912-sparc.diff head/contrib/llvm/patches/patch-r262262-clang-r198918-sparc.diff head/contrib/llvm/patches/patch-r262262-clang-r198923-sparc.diff head/contrib/llvm/patches/patch-r262262-clang-r199012-sparc.diff head/contrib/llvm/patches/patch-r262262-clang-r199034-sparc.diff head/contrib/llvm/patches/patch-r262262-clang-r199037-sparc.diff head/contrib/llvm/patches/patch-r262262-clang-r199188-sparc.diff head/contrib/llvm/patches/patch-r262262-clang-r199399-sparc.diff head/contrib/llvm/patches/patch-r262262-clang-r200452-sparc.diff head/contrib/llvm/patches/patch-r262264-llvm-r200453-sparc.diff head/contrib/llvm/patches/patch-r262265-llvm-r201718-sparc.diff head/contrib/llvm/patches/patch-r262303-enable-ppc-integrated-as.diff head/contrib/llvm/patches/patch-r262415-llvm-r201994-sparc.diff head/contrib/llvm/patches/patch-r262460-llvm-r202059-sparc.diff head/contrib/llvm/patches/patch-r262535-clang-r202177-sparc.diff head/contrib/llvm/patches/patch-r262536-clang-r202179-sparc.diff head/contrib/llvm/patches/patch-r262582-llvm-r202422-sparc.diff head/contrib/llvm/patches/patch-r262611-llvm-r196874-fix-invalid-pwd-crash.diff head/contrib/llvm/patches/patch-r263048-clang-r203624-fix-CC-aliases.diff head/contrib/llvm/patches/patch-r263312-llvm-r169939-inline-asm-with-realign.diff head/contrib/llvm/patches/patch-r263312-llvm-r196940-update-inline-asm-test.diff head/contrib/llvm/patches/patch-r263312-llvm-r196986-allow-realign-alloca.diff head/contrib/llvm/patches/patch-r263312-llvm-r202930-fix-alloca-esi-clobber.diff head/contrib/llvm/patches/patch-r263313-llvm-r203311-fix-sse1-oom.diff head/contrib/llvm/patches/patch-r263619-clang-r201662-arm-gnueabihf.diff head/contrib/llvm/patches/patch-r264345-dwarf2-freebsd10.diff head/contrib/llvm/patches/patch-r264826-llvm-r202188-variadic-fn-debug-info.diff head/contrib/llvm/patches/patch-r264827-clang-r202185-variadic-fn-debug-info.diff head/contrib/llvm/patches/patch-r265477-clang-r198655-standalone-debug.diff head/contrib/llvm/patches/patch-r266674-clang-r209489-fix-xmmintrin.diff head/contrib/llvm/patches/patch-r267704-llvm-r211435-fix-avx-backend.diff head/contrib/llvm/patches/patch-r267981-llvm-r211435-fix-ppc-fctiduz.diff head/contrib/llvm/patches/patch-r269387-clang-arm-target-cpu.diff head/contrib/llvm/patches/patch-r270147-llvm-r197824-r213427-r213960.diff head/contrib/llvm/patches/patch-r271024-llvm-r216989-r216990-fix-movw-armv6.diff head/contrib/llvm/patches/patch-r271282-clang-r200797-r200798-r200805-debug-info-crash.diff head/contrib/llvm/patches/patch-r271432-clang-r205331-debug-info-crash.diff head/contrib/llvm/patches/patch-r271597-clang-r217410-i386-garbage-float.diff head/contrib/llvm/patches/patch-r274286-llvm-r201784-asm-dollar.diff head/contrib/llvm/patches/patch-r274442-llvm-r221709-debug-oom.diff head/contrib/llvm/patches/patch-r275633-llvm-r223171-fix-vectorizer.diff head/contrib/llvm/patches/patch-r275759-clang-r221170-ppc-vaarg.diff head/contrib/llvm/tools/clang/include/clang/Analysis/FlowSensitive/DataflowSolver.h head/contrib/llvm/tools/clang/include/clang/Basic/OnDiskHashTable.h head/contrib/llvm/tools/clang/include/clang/Basic/OpenCL.h head/contrib/llvm/tools/clang/include/clang/Driver/CC1AsOptions.h head/contrib/llvm/tools/clang/include/clang/Driver/CC1AsOptions.td head/contrib/llvm/tools/clang/include/clang/Driver/CC1Options.h head/contrib/llvm/tools/clang/include/clang/Frontend/ChainedIncludesSource.h head/contrib/llvm/tools/clang/lib/CodeGen/CGRTTI.cpp head/contrib/llvm/tools/clang/lib/CodeGen/MicrosoftVBTables.cpp head/contrib/llvm/tools/clang/lib/CodeGen/MicrosoftVBTables.h head/contrib/llvm/tools/clang/lib/Driver/CC1AsOptions.cpp head/contrib/llvm/tools/clang/lib/Frontend/Warnings.cpp head/contrib/llvm/tools/clang/lib/Headers/module.map head/contrib/llvm/tools/clang/lib/Parse/ParsePragma.h head/contrib/llvm/tools/clang/lib/Rewrite/Core/ head/contrib/llvm/tools/clang/lib/Rewrite/Frontend/ head/contrib/llvm/tools/clang/lib/Sema/TargetAttributesSema.cpp head/contrib/llvm/tools/clang/lib/Sema/TargetAttributesSema.h head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IdempotentOperationChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.h head/contrib/llvm/tools/lldb/include/lldb/Host/DynamicLibrary.h head/contrib/llvm/tools/lldb/source/Host/common/DynamicLibrary.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextFreeBSD_i386.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextFreeBSD_i386.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextFreeBSD_mips64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextFreeBSD_mips64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextFreeBSD_x86_64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextFreeBSD_x86_64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextLinux_i386.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextLinux_i386.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextLinux_x86_64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextLinux_x86_64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIX.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIX_mips64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIX_mips64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIX_x86.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIX_x86.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContext_mips64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContext_x86.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterInfos_i386.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterInfos_mips64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterInfos_x86_64.h head/contrib/llvm/tools/lli/ChildTarget/Unix/ head/contrib/llvm/tools/lli/ChildTarget/Windows/ head/contrib/llvm/tools/lli/Unix/RemoteTargetExternal.inc head/contrib/llvm/tools/lli/Windows/RemoteTargetExternal.inc head/contrib/llvm/utils/TableGen/SetTheory.cpp head/contrib/llvm/utils/TableGen/SetTheory.h head/contrib/llvm/utils/TableGen/TGValueTypes.cpp head/lib/clang/include/clang/Driver/CC1AsOptions.inc head/lib/clang/include/clang/Lex/ head/lib/clang/include/clang/Parse/AttrIdentifierArg.inc head/lib/clang/include/clang/Parse/AttrLateParsed.inc head/lib/clang/include/clang/Parse/AttrTypeArg.inc head/lib/clang/libclangrewritecore/ Modified: head/ObsoleteFiles.inc head/UPDATING head/contrib/llvm/LICENSE.TXT head/contrib/llvm/include/llvm-c/Core.h head/contrib/llvm/include/llvm-c/Disassembler.h head/contrib/llvm/include/llvm-c/ExecutionEngine.h head/contrib/llvm/include/llvm-c/IRReader.h head/contrib/llvm/include/llvm-c/Object.h head/contrib/llvm/include/llvm-c/Support.h head/contrib/llvm/include/llvm-c/TargetMachine.h head/contrib/llvm/include/llvm-c/Transforms/PassManagerBuilder.h head/contrib/llvm/include/llvm-c/Transforms/Scalar.h head/contrib/llvm/include/llvm-c/lto.h head/contrib/llvm/include/llvm/ADT/APFloat.h head/contrib/llvm/include/llvm/ADT/APInt.h head/contrib/llvm/include/llvm/ADT/APSInt.h head/contrib/llvm/include/llvm/ADT/ArrayRef.h head/contrib/llvm/include/llvm/ADT/BitVector.h head/contrib/llvm/include/llvm/ADT/DenseMap.h head/contrib/llvm/include/llvm/ADT/DenseSet.h head/contrib/llvm/include/llvm/ADT/DepthFirstIterator.h head/contrib/llvm/include/llvm/ADT/EquivalenceClasses.h head/contrib/llvm/include/llvm/ADT/FoldingSet.h head/contrib/llvm/include/llvm/ADT/Hashing.h head/contrib/llvm/include/llvm/ADT/ImmutableMap.h head/contrib/llvm/include/llvm/ADT/ImmutableSet.h head/contrib/llvm/include/llvm/ADT/IntervalMap.h head/contrib/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h head/contrib/llvm/include/llvm/ADT/MapVector.h head/contrib/llvm/include/llvm/ADT/Optional.h head/contrib/llvm/include/llvm/ADT/PointerIntPair.h head/contrib/llvm/include/llvm/ADT/PointerUnion.h head/contrib/llvm/include/llvm/ADT/PostOrderIterator.h head/contrib/llvm/include/llvm/ADT/SCCIterator.h head/contrib/llvm/include/llvm/ADT/STLExtras.h head/contrib/llvm/include/llvm/ADT/ScopedHashTable.h head/contrib/llvm/include/llvm/ADT/SetVector.h head/contrib/llvm/include/llvm/ADT/SmallBitVector.h head/contrib/llvm/include/llvm/ADT/SmallPtrSet.h head/contrib/llvm/include/llvm/ADT/SmallSet.h head/contrib/llvm/include/llvm/ADT/SmallString.h head/contrib/llvm/include/llvm/ADT/SmallVector.h head/contrib/llvm/include/llvm/ADT/SparseBitVector.h head/contrib/llvm/include/llvm/ADT/SparseMultiSet.h head/contrib/llvm/include/llvm/ADT/SparseSet.h head/contrib/llvm/include/llvm/ADT/Statistic.h head/contrib/llvm/include/llvm/ADT/StringExtras.h head/contrib/llvm/include/llvm/ADT/StringMap.h head/contrib/llvm/include/llvm/ADT/StringRef.h head/contrib/llvm/include/llvm/ADT/StringSwitch.h head/contrib/llvm/include/llvm/ADT/TinyPtrVector.h head/contrib/llvm/include/llvm/ADT/Triple.h head/contrib/llvm/include/llvm/ADT/Twine.h head/contrib/llvm/include/llvm/ADT/UniqueVector.h head/contrib/llvm/include/llvm/ADT/edit_distance.h head/contrib/llvm/include/llvm/ADT/ilist.h head/contrib/llvm/include/llvm/ADT/ilist_node.h head/contrib/llvm/include/llvm/Analysis/AliasAnalysis.h head/contrib/llvm/include/llvm/Analysis/AliasSetTracker.h head/contrib/llvm/include/llvm/Analysis/BlockFrequencyInfo.h head/contrib/llvm/include/llvm/Analysis/BranchProbabilityInfo.h head/contrib/llvm/include/llvm/Analysis/CFG.h head/contrib/llvm/include/llvm/Analysis/CFGPrinter.h head/contrib/llvm/include/llvm/Analysis/CallGraph.h head/contrib/llvm/include/llvm/Analysis/CallGraphSCCPass.h head/contrib/llvm/include/llvm/Analysis/CaptureTracking.h head/contrib/llvm/include/llvm/Analysis/CodeMetrics.h head/contrib/llvm/include/llvm/Analysis/ConstantFolding.h head/contrib/llvm/include/llvm/Analysis/ConstantsScanner.h head/contrib/llvm/include/llvm/Analysis/DOTGraphTraitsPass.h head/contrib/llvm/include/llvm/Analysis/DependenceAnalysis.h head/contrib/llvm/include/llvm/Analysis/DominanceFrontier.h head/contrib/llvm/include/llvm/Analysis/FindUsedTypes.h head/contrib/llvm/include/llvm/Analysis/IVUsers.h head/contrib/llvm/include/llvm/Analysis/InlineCost.h head/contrib/llvm/include/llvm/Analysis/InstructionSimplify.h head/contrib/llvm/include/llvm/Analysis/Interval.h head/contrib/llvm/include/llvm/Analysis/IntervalIterator.h head/contrib/llvm/include/llvm/Analysis/IntervalPartition.h head/contrib/llvm/include/llvm/Analysis/LazyValueInfo.h head/contrib/llvm/include/llvm/Analysis/LibCallAliasAnalysis.h head/contrib/llvm/include/llvm/Analysis/LibCallSemantics.h head/contrib/llvm/include/llvm/Analysis/Loads.h head/contrib/llvm/include/llvm/Analysis/LoopInfo.h head/contrib/llvm/include/llvm/Analysis/LoopInfoImpl.h head/contrib/llvm/include/llvm/Analysis/LoopPass.h head/contrib/llvm/include/llvm/Analysis/MemoryBuiltins.h head/contrib/llvm/include/llvm/Analysis/MemoryDependenceAnalysis.h head/contrib/llvm/include/llvm/Analysis/PHITransAddr.h head/contrib/llvm/include/llvm/Analysis/Passes.h head/contrib/llvm/include/llvm/Analysis/PostDominators.h head/contrib/llvm/include/llvm/Analysis/PtrUseVisitor.h head/contrib/llvm/include/llvm/Analysis/RegionInfo.h head/contrib/llvm/include/llvm/Analysis/RegionIterator.h head/contrib/llvm/include/llvm/Analysis/RegionPass.h head/contrib/llvm/include/llvm/Analysis/ScalarEvolution.h head/contrib/llvm/include/llvm/Analysis/ScalarEvolutionExpander.h head/contrib/llvm/include/llvm/Analysis/ScalarEvolutionExpressions.h head/contrib/llvm/include/llvm/Analysis/SparsePropagation.h head/contrib/llvm/include/llvm/Analysis/TargetTransformInfo.h head/contrib/llvm/include/llvm/Analysis/ValueTracking.h head/contrib/llvm/include/llvm/Bitcode/BitstreamReader.h head/contrib/llvm/include/llvm/Bitcode/BitstreamWriter.h head/contrib/llvm/include/llvm/Bitcode/LLVMBitCodes.h head/contrib/llvm/include/llvm/Bitcode/ReaderWriter.h head/contrib/llvm/include/llvm/CodeGen/Analysis.h head/contrib/llvm/include/llvm/CodeGen/AsmPrinter.h head/contrib/llvm/include/llvm/CodeGen/CallingConvLower.h head/contrib/llvm/include/llvm/CodeGen/CommandFlags.h head/contrib/llvm/include/llvm/CodeGen/EdgeBundles.h head/contrib/llvm/include/llvm/CodeGen/FastISel.h head/contrib/llvm/include/llvm/CodeGen/FunctionLoweringInfo.h head/contrib/llvm/include/llvm/CodeGen/GCMetadata.h head/contrib/llvm/include/llvm/CodeGen/GCStrategy.h head/contrib/llvm/include/llvm/CodeGen/GCs.h head/contrib/llvm/include/llvm/CodeGen/ISDOpcodes.h head/contrib/llvm/include/llvm/CodeGen/IntrinsicLowering.h head/contrib/llvm/include/llvm/CodeGen/JITCodeEmitter.h head/contrib/llvm/include/llvm/CodeGen/LatencyPriorityQueue.h head/contrib/llvm/include/llvm/CodeGen/LexicalScopes.h head/contrib/llvm/include/llvm/CodeGen/LinkAllCodegenComponents.h head/contrib/llvm/include/llvm/CodeGen/LiveInterval.h head/contrib/llvm/include/llvm/CodeGen/LiveIntervalAnalysis.h head/contrib/llvm/include/llvm/CodeGen/LiveIntervalUnion.h head/contrib/llvm/include/llvm/CodeGen/LiveRangeEdit.h head/contrib/llvm/include/llvm/CodeGen/LiveRegMatrix.h head/contrib/llvm/include/llvm/CodeGen/LiveStackAnalysis.h head/contrib/llvm/include/llvm/CodeGen/LiveVariables.h head/contrib/llvm/include/llvm/CodeGen/MachineBasicBlock.h head/contrib/llvm/include/llvm/CodeGen/MachineBlockFrequencyInfo.h head/contrib/llvm/include/llvm/CodeGen/MachineBranchProbabilityInfo.h head/contrib/llvm/include/llvm/CodeGen/MachineCodeEmitter.h head/contrib/llvm/include/llvm/CodeGen/MachineCodeInfo.h head/contrib/llvm/include/llvm/CodeGen/MachineConstantPool.h head/contrib/llvm/include/llvm/CodeGen/MachineDominators.h head/contrib/llvm/include/llvm/CodeGen/MachineFrameInfo.h head/contrib/llvm/include/llvm/CodeGen/MachineFunction.h head/contrib/llvm/include/llvm/CodeGen/MachineFunctionAnalysis.h head/contrib/llvm/include/llvm/CodeGen/MachineFunctionPass.h head/contrib/llvm/include/llvm/CodeGen/MachineInstr.h head/contrib/llvm/include/llvm/CodeGen/MachineInstrBuilder.h head/contrib/llvm/include/llvm/CodeGen/MachineInstrBundle.h head/contrib/llvm/include/llvm/CodeGen/MachineLoopInfo.h head/contrib/llvm/include/llvm/CodeGen/MachineMemOperand.h head/contrib/llvm/include/llvm/CodeGen/MachineModuleInfo.h head/contrib/llvm/include/llvm/CodeGen/MachineOperand.h head/contrib/llvm/include/llvm/CodeGen/MachinePassRegistry.h head/contrib/llvm/include/llvm/CodeGen/MachinePostDominators.h head/contrib/llvm/include/llvm/CodeGen/MachineRegisterInfo.h head/contrib/llvm/include/llvm/CodeGen/MachineSSAUpdater.h head/contrib/llvm/include/llvm/CodeGen/MachineScheduler.h head/contrib/llvm/include/llvm/CodeGen/MachineTraceMetrics.h head/contrib/llvm/include/llvm/CodeGen/PBQP/Graph.h head/contrib/llvm/include/llvm/CodeGen/PBQP/Math.h head/contrib/llvm/include/llvm/CodeGen/PBQP/Solution.h head/contrib/llvm/include/llvm/CodeGen/Passes.h head/contrib/llvm/include/llvm/CodeGen/PseudoSourceValue.h head/contrib/llvm/include/llvm/CodeGen/RegAllocPBQP.h head/contrib/llvm/include/llvm/CodeGen/RegisterClassInfo.h head/contrib/llvm/include/llvm/CodeGen/RegisterPressure.h head/contrib/llvm/include/llvm/CodeGen/RegisterScavenging.h head/contrib/llvm/include/llvm/CodeGen/ResourcePriorityQueue.h head/contrib/llvm/include/llvm/CodeGen/RuntimeLibcalls.h head/contrib/llvm/include/llvm/CodeGen/ScheduleDAG.h head/contrib/llvm/include/llvm/CodeGen/ScheduleDAGInstrs.h head/contrib/llvm/include/llvm/CodeGen/ScheduleDFS.h head/contrib/llvm/include/llvm/CodeGen/ScheduleHazardRecognizer.h head/contrib/llvm/include/llvm/CodeGen/ScoreboardHazardRecognizer.h head/contrib/llvm/include/llvm/CodeGen/SelectionDAG.h head/contrib/llvm/include/llvm/CodeGen/SelectionDAGISel.h head/contrib/llvm/include/llvm/CodeGen/SelectionDAGNodes.h head/contrib/llvm/include/llvm/CodeGen/SlotIndexes.h head/contrib/llvm/include/llvm/CodeGen/StackMaps.h head/contrib/llvm/include/llvm/CodeGen/StackProtector.h head/contrib/llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h head/contrib/llvm/include/llvm/CodeGen/TargetSchedule.h head/contrib/llvm/include/llvm/CodeGen/ValueTypes.h head/contrib/llvm/include/llvm/CodeGen/VirtRegMap.h head/contrib/llvm/include/llvm/DebugInfo/DIContext.h head/contrib/llvm/include/llvm/DebugInfo/DWARFFormValue.h head/contrib/llvm/include/llvm/ExecutionEngine/ExecutionEngine.h head/contrib/llvm/include/llvm/ExecutionEngine/JITEventListener.h head/contrib/llvm/include/llvm/ExecutionEngine/ObjectBuffer.h head/contrib/llvm/include/llvm/ExecutionEngine/ObjectImage.h head/contrib/llvm/include/llvm/ExecutionEngine/RTDyldMemoryManager.h head/contrib/llvm/include/llvm/ExecutionEngine/RuntimeDyld.h head/contrib/llvm/include/llvm/ExecutionEngine/SectionMemoryManager.h head/contrib/llvm/include/llvm/IR/Argument.h head/contrib/llvm/include/llvm/IR/Attributes.h head/contrib/llvm/include/llvm/IR/BasicBlock.h head/contrib/llvm/include/llvm/IR/CallingConv.h head/contrib/llvm/include/llvm/IR/Constant.h head/contrib/llvm/include/llvm/IR/Constants.h head/contrib/llvm/include/llvm/IR/DataLayout.h head/contrib/llvm/include/llvm/IR/DerivedTypes.h head/contrib/llvm/include/llvm/IR/Function.h head/contrib/llvm/include/llvm/IR/GlobalAlias.h head/contrib/llvm/include/llvm/IR/GlobalValue.h head/contrib/llvm/include/llvm/IR/GlobalVariable.h head/contrib/llvm/include/llvm/IR/IRBuilder.h head/contrib/llvm/include/llvm/IR/InlineAsm.h head/contrib/llvm/include/llvm/IR/InstrTypes.h head/contrib/llvm/include/llvm/IR/Instruction.h head/contrib/llvm/include/llvm/IR/Instructions.h head/contrib/llvm/include/llvm/IR/IntrinsicInst.h head/contrib/llvm/include/llvm/IR/Intrinsics.h head/contrib/llvm/include/llvm/IR/Intrinsics.td head/contrib/llvm/include/llvm/IR/IntrinsicsAArch64.td head/contrib/llvm/include/llvm/IR/IntrinsicsARM.td head/contrib/llvm/include/llvm/IR/IntrinsicsMips.td head/contrib/llvm/include/llvm/IR/IntrinsicsNVVM.td head/contrib/llvm/include/llvm/IR/IntrinsicsR600.td head/contrib/llvm/include/llvm/IR/IntrinsicsX86.td head/contrib/llvm/include/llvm/IR/IntrinsicsXCore.td head/contrib/llvm/include/llvm/IR/LLVMContext.h head/contrib/llvm/include/llvm/IR/LegacyPassManager.h head/contrib/llvm/include/llvm/IR/LegacyPassManagers.h head/contrib/llvm/include/llvm/IR/MDBuilder.h head/contrib/llvm/include/llvm/IR/Metadata.h head/contrib/llvm/include/llvm/IR/Module.h head/contrib/llvm/include/llvm/IR/Operator.h head/contrib/llvm/include/llvm/IR/PassManager.h head/contrib/llvm/include/llvm/IR/SymbolTableListTraits.h head/contrib/llvm/include/llvm/IR/Type.h head/contrib/llvm/include/llvm/IR/Use.h head/contrib/llvm/include/llvm/IR/User.h head/contrib/llvm/include/llvm/IR/Value.h head/contrib/llvm/include/llvm/IRReader/IRReader.h head/contrib/llvm/include/llvm/InitializePasses.h head/contrib/llvm/include/llvm/LTO/LTOCodeGenerator.h head/contrib/llvm/include/llvm/LTO/LTOModule.h head/contrib/llvm/include/llvm/LinkAllIR.h head/contrib/llvm/include/llvm/LinkAllPasses.h head/contrib/llvm/include/llvm/MC/MCAsmBackend.h head/contrib/llvm/include/llvm/MC/MCAsmInfo.h head/contrib/llvm/include/llvm/MC/MCAsmInfoCOFF.h head/contrib/llvm/include/llvm/MC/MCAsmLayout.h head/contrib/llvm/include/llvm/MC/MCAssembler.h head/contrib/llvm/include/llvm/MC/MCCodeEmitter.h head/contrib/llvm/include/llvm/MC/MCContext.h head/contrib/llvm/include/llvm/MC/MCDirectives.h head/contrib/llvm/include/llvm/MC/MCDisassembler.h head/contrib/llvm/include/llvm/MC/MCDwarf.h head/contrib/llvm/include/llvm/MC/MCELF.h head/contrib/llvm/include/llvm/MC/MCELFObjectWriter.h head/contrib/llvm/include/llvm/MC/MCELFStreamer.h head/contrib/llvm/include/llvm/MC/MCELFSymbolFlags.h head/contrib/llvm/include/llvm/MC/MCExpr.h head/contrib/llvm/include/llvm/MC/MCExternalSymbolizer.h head/contrib/llvm/include/llvm/MC/MCFixup.h head/contrib/llvm/include/llvm/MC/MCInst.h head/contrib/llvm/include/llvm/MC/MCInstPrinter.h head/contrib/llvm/include/llvm/MC/MCInstrAnalysis.h head/contrib/llvm/include/llvm/MC/MCInstrDesc.h head/contrib/llvm/include/llvm/MC/MCInstrItineraries.h head/contrib/llvm/include/llvm/MC/MCMachObjectWriter.h head/contrib/llvm/include/llvm/MC/MCObjectDisassembler.h head/contrib/llvm/include/llvm/MC/MCObjectFileInfo.h head/contrib/llvm/include/llvm/MC/MCObjectStreamer.h head/contrib/llvm/include/llvm/MC/MCObjectSymbolizer.h head/contrib/llvm/include/llvm/MC/MCObjectWriter.h head/contrib/llvm/include/llvm/MC/MCParser/AsmLexer.h head/contrib/llvm/include/llvm/MC/MCParser/MCAsmLexer.h head/contrib/llvm/include/llvm/MC/MCParser/MCAsmParser.h head/contrib/llvm/include/llvm/MC/MCParser/MCParsedAsmOperand.h head/contrib/llvm/include/llvm/MC/MCRegisterInfo.h head/contrib/llvm/include/llvm/MC/MCSchedule.h head/contrib/llvm/include/llvm/MC/MCSectionCOFF.h head/contrib/llvm/include/llvm/MC/MCSectionELF.h head/contrib/llvm/include/llvm/MC/MCSectionMachO.h head/contrib/llvm/include/llvm/MC/MCStreamer.h head/contrib/llvm/include/llvm/MC/MCSubtargetInfo.h head/contrib/llvm/include/llvm/MC/MCSymbol.h head/contrib/llvm/include/llvm/MC/MCSymbolizer.h head/contrib/llvm/include/llvm/MC/MCTargetAsmParser.h head/contrib/llvm/include/llvm/MC/MCValue.h head/contrib/llvm/include/llvm/MC/MCWin64EH.h head/contrib/llvm/include/llvm/MC/MCWinCOFFObjectWriter.h head/contrib/llvm/include/llvm/MC/MachineLocation.h head/contrib/llvm/include/llvm/MC/SubtargetFeature.h head/contrib/llvm/include/llvm/Object/Archive.h head/contrib/llvm/include/llvm/Object/Binary.h head/contrib/llvm/include/llvm/Object/COFF.h head/contrib/llvm/include/llvm/Object/COFFYAML.h head/contrib/llvm/include/llvm/Object/ELF.h head/contrib/llvm/include/llvm/Object/ELFObjectFile.h head/contrib/llvm/include/llvm/Object/ELFYAML.h head/contrib/llvm/include/llvm/Object/Error.h head/contrib/llvm/include/llvm/Object/MachO.h head/contrib/llvm/include/llvm/Object/MachOUniversal.h head/contrib/llvm/include/llvm/Object/ObjectFile.h head/contrib/llvm/include/llvm/Object/RelocVisitor.h head/contrib/llvm/include/llvm/Option/Arg.h head/contrib/llvm/include/llvm/Option/ArgList.h head/contrib/llvm/include/llvm/Option/OptParser.td head/contrib/llvm/include/llvm/Option/OptSpecifier.h head/contrib/llvm/include/llvm/Option/Option.h head/contrib/llvm/include/llvm/Pass.h head/contrib/llvm/include/llvm/PassAnalysisSupport.h head/contrib/llvm/include/llvm/PassRegistry.h head/contrib/llvm/include/llvm/PassSupport.h head/contrib/llvm/include/llvm/Support/AlignOf.h head/contrib/llvm/include/llvm/Support/Allocator.h head/contrib/llvm/include/llvm/Support/ArrayRecycler.h head/contrib/llvm/include/llvm/Support/BlockFrequency.h head/contrib/llvm/include/llvm/Support/BranchProbability.h head/contrib/llvm/include/llvm/Support/COFF.h head/contrib/llvm/include/llvm/Support/Casting.h head/contrib/llvm/include/llvm/Support/CodeGen.h head/contrib/llvm/include/llvm/Support/CommandLine.h head/contrib/llvm/include/llvm/Support/Compiler.h head/contrib/llvm/include/llvm/Support/Compression.h head/contrib/llvm/include/llvm/Support/ConvertUTF.h head/contrib/llvm/include/llvm/Support/CrashRecoveryContext.h head/contrib/llvm/include/llvm/Support/DataTypes.h.in head/contrib/llvm/include/llvm/Support/Debug.h head/contrib/llvm/include/llvm/Support/Dwarf.h head/contrib/llvm/include/llvm/Support/DynamicLibrary.h head/contrib/llvm/include/llvm/Support/ELF.h head/contrib/llvm/include/llvm/Support/Endian.h head/contrib/llvm/include/llvm/Support/ErrorHandling.h head/contrib/llvm/include/llvm/Support/ErrorOr.h head/contrib/llvm/include/llvm/Support/FileOutputBuffer.h head/contrib/llvm/include/llvm/Support/FileSystem.h head/contrib/llvm/include/llvm/Support/FileUtilities.h head/contrib/llvm/include/llvm/Support/Format.h head/contrib/llvm/include/llvm/Support/FormattedStream.h head/contrib/llvm/include/llvm/Support/GCOV.h head/contrib/llvm/include/llvm/Support/GraphWriter.h head/contrib/llvm/include/llvm/Support/Host.h head/contrib/llvm/include/llvm/Support/LEB128.h head/contrib/llvm/include/llvm/Support/LockFileManager.h head/contrib/llvm/include/llvm/Support/MD5.h head/contrib/llvm/include/llvm/Support/MachO.h head/contrib/llvm/include/llvm/Support/ManagedStatic.h head/contrib/llvm/include/llvm/Support/MathExtras.h head/contrib/llvm/include/llvm/Support/Memory.h head/contrib/llvm/include/llvm/Support/MemoryBuffer.h head/contrib/llvm/include/llvm/Support/Path.h head/contrib/llvm/include/llvm/Support/PrettyStackTrace.h head/contrib/llvm/include/llvm/Support/Process.h head/contrib/llvm/include/llvm/Support/Program.h head/contrib/llvm/include/llvm/Support/Recycler.h head/contrib/llvm/include/llvm/Support/Regex.h head/contrib/llvm/include/llvm/Support/Registry.h head/contrib/llvm/include/llvm/Support/SMLoc.h head/contrib/llvm/include/llvm/Support/SaveAndRestore.h head/contrib/llvm/include/llvm/Support/Signals.h head/contrib/llvm/include/llvm/Support/SourceMgr.h head/contrib/llvm/include/llvm/Support/StreamableMemoryObject.h head/contrib/llvm/include/llvm/Support/StringPool.h head/contrib/llvm/include/llvm/Support/StringRefMemoryObject.h head/contrib/llvm/include/llvm/Support/SwapByteOrder.h head/contrib/llvm/include/llvm/Support/TargetRegistry.h head/contrib/llvm/include/llvm/Support/Threading.h head/contrib/llvm/include/llvm/Support/TimeValue.h head/contrib/llvm/include/llvm/Support/Timer.h head/contrib/llvm/include/llvm/Support/ToolOutputFile.h head/contrib/llvm/include/llvm/Support/Unicode.h head/contrib/llvm/include/llvm/Support/UnicodeCharRanges.h head/contrib/llvm/include/llvm/Support/Valgrind.h head/contrib/llvm/include/llvm/Support/Win64EH.h head/contrib/llvm/include/llvm/Support/YAMLParser.h head/contrib/llvm/include/llvm/Support/YAMLTraits.h head/contrib/llvm/include/llvm/Support/circular_raw_ostream.h head/contrib/llvm/include/llvm/Support/raw_os_ostream.h head/contrib/llvm/include/llvm/Support/raw_ostream.h head/contrib/llvm/include/llvm/Support/type_traits.h head/contrib/llvm/include/llvm/TableGen/Error.h head/contrib/llvm/include/llvm/TableGen/Main.h head/contrib/llvm/include/llvm/TableGen/Record.h head/contrib/llvm/include/llvm/TableGen/StringMatcher.h head/contrib/llvm/include/llvm/TableGen/StringToOffsetTable.h head/contrib/llvm/include/llvm/Target/Target.td head/contrib/llvm/include/llvm/Target/TargetCallingConv.h head/contrib/llvm/include/llvm/Target/TargetCallingConv.td head/contrib/llvm/include/llvm/Target/TargetFrameLowering.h head/contrib/llvm/include/llvm/Target/TargetInstrInfo.h head/contrib/llvm/include/llvm/Target/TargetIntrinsicInfo.h head/contrib/llvm/include/llvm/Target/TargetLibraryInfo.h head/contrib/llvm/include/llvm/Target/TargetLowering.h head/contrib/llvm/include/llvm/Target/TargetLoweringObjectFile.h head/contrib/llvm/include/llvm/Target/TargetMachine.h head/contrib/llvm/include/llvm/Target/TargetOpcodes.h head/contrib/llvm/include/llvm/Target/TargetOptions.h head/contrib/llvm/include/llvm/Target/TargetRegisterInfo.h head/contrib/llvm/include/llvm/Target/TargetSchedule.td head/contrib/llvm/include/llvm/Target/TargetSelectionDAG.td head/contrib/llvm/include/llvm/Target/TargetSelectionDAGInfo.h head/contrib/llvm/include/llvm/Target/TargetSubtargetInfo.h head/contrib/llvm/include/llvm/Transforms/IPO.h head/contrib/llvm/include/llvm/Transforms/IPO/InlinerPass.h head/contrib/llvm/include/llvm/Transforms/IPO/PassManagerBuilder.h head/contrib/llvm/include/llvm/Transforms/Instrumentation.h head/contrib/llvm/include/llvm/Transforms/ObjCARC.h head/contrib/llvm/include/llvm/Transforms/Scalar.h head/contrib/llvm/include/llvm/Transforms/Utils/BasicBlockUtils.h head/contrib/llvm/include/llvm/Transforms/Utils/BuildLibCalls.h head/contrib/llvm/include/llvm/Transforms/Utils/Cloning.h head/contrib/llvm/include/llvm/Transforms/Utils/CmpInstAnalysis.h head/contrib/llvm/include/llvm/Transforms/Utils/CodeExtractor.h head/contrib/llvm/include/llvm/Transforms/Utils/IntegerDivision.h head/contrib/llvm/include/llvm/Transforms/Utils/Local.h head/contrib/llvm/include/llvm/Transforms/Utils/LoopUtils.h head/contrib/llvm/include/llvm/Transforms/Utils/PromoteMemToReg.h head/contrib/llvm/include/llvm/Transforms/Utils/SSAUpdater.h head/contrib/llvm/include/llvm/Transforms/Utils/SSAUpdaterImpl.h head/contrib/llvm/include/llvm/Transforms/Utils/SimplifyIndVar.h head/contrib/llvm/include/llvm/Transforms/Utils/SimplifyLibCalls.h head/contrib/llvm/include/llvm/Transforms/Utils/UnifyFunctionExitNodes.h head/contrib/llvm/include/llvm/Transforms/Utils/UnrollLoop.h head/contrib/llvm/include/llvm/Transforms/Utils/ValueMapper.h head/contrib/llvm/include/llvm/Transforms/Vectorize.h head/contrib/llvm/lib/Analysis/AliasAnalysis.cpp head/contrib/llvm/lib/Analysis/AliasAnalysisCounter.cpp head/contrib/llvm/lib/Analysis/AliasAnalysisEvaluator.cpp head/contrib/llvm/lib/Analysis/AliasDebugger.cpp head/contrib/llvm/lib/Analysis/AliasSetTracker.cpp head/contrib/llvm/lib/Analysis/Analysis.cpp head/contrib/llvm/lib/Analysis/BasicAliasAnalysis.cpp head/contrib/llvm/lib/Analysis/BlockFrequencyInfo.cpp head/contrib/llvm/lib/Analysis/BranchProbabilityInfo.cpp head/contrib/llvm/lib/Analysis/CFG.cpp head/contrib/llvm/lib/Analysis/CFGPrinter.cpp head/contrib/llvm/lib/Analysis/CaptureTracking.cpp head/contrib/llvm/lib/Analysis/CodeMetrics.cpp head/contrib/llvm/lib/Analysis/ConstantFolding.cpp head/contrib/llvm/lib/Analysis/CostModel.cpp head/contrib/llvm/lib/Analysis/Delinearization.cpp head/contrib/llvm/lib/Analysis/DependenceAnalysis.cpp head/contrib/llvm/lib/Analysis/DomPrinter.cpp head/contrib/llvm/lib/Analysis/DominanceFrontier.cpp head/contrib/llvm/lib/Analysis/IPA/CallGraph.cpp head/contrib/llvm/lib/Analysis/IPA/CallGraphSCCPass.cpp head/contrib/llvm/lib/Analysis/IPA/CallPrinter.cpp head/contrib/llvm/lib/Analysis/IPA/FindUsedTypes.cpp head/contrib/llvm/lib/Analysis/IPA/GlobalsModRef.cpp head/contrib/llvm/lib/Analysis/IPA/IPA.cpp head/contrib/llvm/lib/Analysis/IPA/InlineCost.cpp head/contrib/llvm/lib/Analysis/IVUsers.cpp head/contrib/llvm/lib/Analysis/InstCount.cpp head/contrib/llvm/lib/Analysis/InstructionSimplify.cpp head/contrib/llvm/lib/Analysis/Interval.cpp head/contrib/llvm/lib/Analysis/IntervalPartition.cpp head/contrib/llvm/lib/Analysis/LazyValueInfo.cpp head/contrib/llvm/lib/Analysis/LibCallAliasAnalysis.cpp head/contrib/llvm/lib/Analysis/LibCallSemantics.cpp head/contrib/llvm/lib/Analysis/Lint.cpp head/contrib/llvm/lib/Analysis/Loads.cpp head/contrib/llvm/lib/Analysis/LoopInfo.cpp head/contrib/llvm/lib/Analysis/LoopPass.cpp head/contrib/llvm/lib/Analysis/MemDepPrinter.cpp head/contrib/llvm/lib/Analysis/MemoryBuiltins.cpp head/contrib/llvm/lib/Analysis/MemoryDependenceAnalysis.cpp head/contrib/llvm/lib/Analysis/ModuleDebugInfoPrinter.cpp head/contrib/llvm/lib/Analysis/NoAliasAnalysis.cpp head/contrib/llvm/lib/Analysis/PHITransAddr.cpp head/contrib/llvm/lib/Analysis/PostDominators.cpp head/contrib/llvm/lib/Analysis/PtrUseVisitor.cpp head/contrib/llvm/lib/Analysis/RegionInfo.cpp head/contrib/llvm/lib/Analysis/RegionPass.cpp head/contrib/llvm/lib/Analysis/RegionPrinter.cpp head/contrib/llvm/lib/Analysis/ScalarEvolution.cpp head/contrib/llvm/lib/Analysis/ScalarEvolutionAliasAnalysis.cpp head/contrib/llvm/lib/Analysis/ScalarEvolutionExpander.cpp head/contrib/llvm/lib/Analysis/ScalarEvolutionNormalization.cpp head/contrib/llvm/lib/Analysis/SparsePropagation.cpp head/contrib/llvm/lib/Analysis/TargetTransformInfo.cpp head/contrib/llvm/lib/Analysis/Trace.cpp head/contrib/llvm/lib/Analysis/TypeBasedAliasAnalysis.cpp head/contrib/llvm/lib/Analysis/ValueTracking.cpp head/contrib/llvm/lib/AsmParser/LLLexer.cpp head/contrib/llvm/lib/AsmParser/LLLexer.h head/contrib/llvm/lib/AsmParser/LLParser.cpp head/contrib/llvm/lib/AsmParser/LLParser.h head/contrib/llvm/lib/AsmParser/LLToken.h head/contrib/llvm/lib/AsmParser/Parser.cpp head/contrib/llvm/lib/Bitcode/Reader/BitReader.cpp head/contrib/llvm/lib/Bitcode/Reader/BitcodeReader.cpp head/contrib/llvm/lib/Bitcode/Reader/BitcodeReader.h head/contrib/llvm/lib/Bitcode/Reader/BitstreamReader.cpp head/contrib/llvm/lib/Bitcode/Writer/BitWriter.cpp head/contrib/llvm/lib/Bitcode/Writer/BitcodeWriter.cpp head/contrib/llvm/lib/Bitcode/Writer/BitcodeWriterPass.cpp head/contrib/llvm/lib/Bitcode/Writer/ValueEnumerator.cpp head/contrib/llvm/lib/Bitcode/Writer/ValueEnumerator.h head/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.cpp head/contrib/llvm/lib/CodeGen/AggressiveAntiDepBreaker.h head/contrib/llvm/lib/CodeGen/AllocationOrder.cpp head/contrib/llvm/lib/CodeGen/AllocationOrder.h head/contrib/llvm/lib/CodeGen/Analysis.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/ARMException.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterDwarf.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterInlineAsm.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/DIE.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/DIE.h head/contrib/llvm/lib/CodeGen/AsmPrinter/DIEHash.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/DIEHash.h head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfAccelTable.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfAccelTable.h head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCFIException.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfException.h head/contrib/llvm/lib/CodeGen/AsmPrinter/ErlangGCPrinter.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/OcamlGCPrinter.cpp head/contrib/llvm/lib/CodeGen/AsmPrinter/Win64Exception.cpp head/contrib/llvm/lib/CodeGen/BasicTargetTransformInfo.cpp head/contrib/llvm/lib/CodeGen/BranchFolding.cpp head/contrib/llvm/lib/CodeGen/CalcSpillWeights.cpp head/contrib/llvm/lib/CodeGen/CallingConvLower.cpp head/contrib/llvm/lib/CodeGen/CodeGen.cpp head/contrib/llvm/lib/CodeGen/CriticalAntiDepBreaker.cpp head/contrib/llvm/lib/CodeGen/CriticalAntiDepBreaker.h head/contrib/llvm/lib/CodeGen/DFAPacketizer.cpp head/contrib/llvm/lib/CodeGen/DeadMachineInstructionElim.cpp head/contrib/llvm/lib/CodeGen/DwarfEHPrepare.cpp head/contrib/llvm/lib/CodeGen/EarlyIfConversion.cpp head/contrib/llvm/lib/CodeGen/EdgeBundles.cpp head/contrib/llvm/lib/CodeGen/ErlangGC.cpp head/contrib/llvm/lib/CodeGen/ExecutionDepsFix.cpp head/contrib/llvm/lib/CodeGen/ExpandISelPseudos.cpp head/contrib/llvm/lib/CodeGen/ExpandPostRAPseudos.cpp head/contrib/llvm/lib/CodeGen/GCMetadata.cpp head/contrib/llvm/lib/CodeGen/GCStrategy.cpp head/contrib/llvm/lib/CodeGen/IfConversion.cpp head/contrib/llvm/lib/CodeGen/InlineSpiller.cpp head/contrib/llvm/lib/CodeGen/InterferenceCache.cpp head/contrib/llvm/lib/CodeGen/InterferenceCache.h head/contrib/llvm/lib/CodeGen/IntrinsicLowering.cpp head/contrib/llvm/lib/CodeGen/LLVMTargetMachine.cpp head/contrib/llvm/lib/CodeGen/LatencyPriorityQueue.cpp head/contrib/llvm/lib/CodeGen/LexicalScopes.cpp head/contrib/llvm/lib/CodeGen/LiveDebugVariables.cpp head/contrib/llvm/lib/CodeGen/LiveDebugVariables.h head/contrib/llvm/lib/CodeGen/LiveInterval.cpp head/contrib/llvm/lib/CodeGen/LiveIntervalAnalysis.cpp head/contrib/llvm/lib/CodeGen/LiveIntervalUnion.cpp head/contrib/llvm/lib/CodeGen/LiveRangeCalc.cpp head/contrib/llvm/lib/CodeGen/LiveRangeCalc.h head/contrib/llvm/lib/CodeGen/LiveRangeEdit.cpp head/contrib/llvm/lib/CodeGen/LiveRegMatrix.cpp head/contrib/llvm/lib/CodeGen/LiveStackAnalysis.cpp head/contrib/llvm/lib/CodeGen/LiveVariables.cpp head/contrib/llvm/lib/CodeGen/LocalStackSlotAllocation.cpp head/contrib/llvm/lib/CodeGen/MachineBasicBlock.cpp head/contrib/llvm/lib/CodeGen/MachineBlockFrequencyInfo.cpp head/contrib/llvm/lib/CodeGen/MachineBlockPlacement.cpp head/contrib/llvm/lib/CodeGen/MachineBranchProbabilityInfo.cpp head/contrib/llvm/lib/CodeGen/MachineCSE.cpp head/contrib/llvm/lib/CodeGen/MachineCopyPropagation.cpp head/contrib/llvm/lib/CodeGen/MachineFunction.cpp head/contrib/llvm/lib/CodeGen/MachineFunctionAnalysis.cpp head/contrib/llvm/lib/CodeGen/MachineFunctionPass.cpp head/contrib/llvm/lib/CodeGen/MachineFunctionPrinterPass.cpp head/contrib/llvm/lib/CodeGen/MachineInstr.cpp head/contrib/llvm/lib/CodeGen/MachineInstrBundle.cpp head/contrib/llvm/lib/CodeGen/MachineLICM.cpp head/contrib/llvm/lib/CodeGen/MachineLoopInfo.cpp head/contrib/llvm/lib/CodeGen/MachineModuleInfo.cpp head/contrib/llvm/lib/CodeGen/MachinePassRegistry.cpp head/contrib/llvm/lib/CodeGen/MachineRegisterInfo.cpp head/contrib/llvm/lib/CodeGen/MachineSSAUpdater.cpp head/contrib/llvm/lib/CodeGen/MachineScheduler.cpp head/contrib/llvm/lib/CodeGen/MachineSink.cpp head/contrib/llvm/lib/CodeGen/MachineTraceMetrics.cpp head/contrib/llvm/lib/CodeGen/MachineVerifier.cpp head/contrib/llvm/lib/CodeGen/OptimizePHIs.cpp head/contrib/llvm/lib/CodeGen/PHIElimination.cpp head/contrib/llvm/lib/CodeGen/PHIEliminationUtils.cpp head/contrib/llvm/lib/CodeGen/Passes.cpp head/contrib/llvm/lib/CodeGen/PeepholeOptimizer.cpp head/contrib/llvm/lib/CodeGen/PostRASchedulerList.cpp head/contrib/llvm/lib/CodeGen/ProcessImplicitDefs.cpp head/contrib/llvm/lib/CodeGen/PrologEpilogInserter.cpp head/contrib/llvm/lib/CodeGen/PrologEpilogInserter.h head/contrib/llvm/lib/CodeGen/PseudoSourceValue.cpp head/contrib/llvm/lib/CodeGen/RegAllocBase.cpp head/contrib/llvm/lib/CodeGen/RegAllocBase.h head/contrib/llvm/lib/CodeGen/RegAllocBasic.cpp head/contrib/llvm/lib/CodeGen/RegAllocFast.cpp head/contrib/llvm/lib/CodeGen/RegAllocGreedy.cpp head/contrib/llvm/lib/CodeGen/RegAllocPBQP.cpp head/contrib/llvm/lib/CodeGen/RegisterClassInfo.cpp head/contrib/llvm/lib/CodeGen/RegisterCoalescer.cpp head/contrib/llvm/lib/CodeGen/RegisterCoalescer.h head/contrib/llvm/lib/CodeGen/RegisterPressure.cpp head/contrib/llvm/lib/CodeGen/RegisterScavenging.cpp head/contrib/llvm/lib/CodeGen/ScheduleDAG.cpp head/contrib/llvm/lib/CodeGen/ScheduleDAGInstrs.cpp head/contrib/llvm/lib/CodeGen/ScheduleDAGPrinter.cpp head/contrib/llvm/lib/CodeGen/ScoreboardHazardRecognizer.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/FastISel.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeTypesGeneric.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/ResourcePriorityQueue.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/SDNodeDbgValue.h head/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGFast.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGRRList.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.h head/contrib/llvm/lib/CodeGen/SelectionDAG/ScheduleDAGVLIW.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/SelectionDAGPrinter.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp head/contrib/llvm/lib/CodeGen/SelectionDAG/TargetSelectionDAGInfo.cpp head/contrib/llvm/lib/CodeGen/ShadowStackGC.cpp head/contrib/llvm/lib/CodeGen/SjLjEHPrepare.cpp head/contrib/llvm/lib/CodeGen/SlotIndexes.cpp head/contrib/llvm/lib/CodeGen/SpillPlacement.cpp head/contrib/llvm/lib/CodeGen/SpillPlacement.h head/contrib/llvm/lib/CodeGen/Spiller.cpp head/contrib/llvm/lib/CodeGen/SplitKit.cpp head/contrib/llvm/lib/CodeGen/SplitKit.h head/contrib/llvm/lib/CodeGen/StackColoring.cpp head/contrib/llvm/lib/CodeGen/StackMaps.cpp head/contrib/llvm/lib/CodeGen/StackProtector.cpp head/contrib/llvm/lib/CodeGen/StackSlotColoring.cpp head/contrib/llvm/lib/CodeGen/TailDuplication.cpp head/contrib/llvm/lib/CodeGen/TargetInstrInfo.cpp head/contrib/llvm/lib/CodeGen/TargetLoweringBase.cpp head/contrib/llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp head/contrib/llvm/lib/CodeGen/TargetOptionsImpl.cpp head/contrib/llvm/lib/CodeGen/TargetRegisterInfo.cpp head/contrib/llvm/lib/CodeGen/TwoAddressInstructionPass.cpp head/contrib/llvm/lib/CodeGen/UnreachableBlockElim.cpp head/contrib/llvm/lib/CodeGen/VirtRegMap.cpp head/contrib/llvm/lib/DebugInfo/DWARFAbbreviationDeclaration.cpp head/contrib/llvm/lib/DebugInfo/DWARFAbbreviationDeclaration.h head/contrib/llvm/lib/DebugInfo/DWARFCompileUnit.h head/contrib/llvm/lib/DebugInfo/DWARFContext.cpp head/contrib/llvm/lib/DebugInfo/DWARFContext.h head/contrib/llvm/lib/DebugInfo/DWARFDebugAbbrev.cpp head/contrib/llvm/lib/DebugInfo/DWARFDebugAbbrev.h head/contrib/llvm/lib/DebugInfo/DWARFDebugArangeSet.cpp head/contrib/llvm/lib/DebugInfo/DWARFDebugArangeSet.h head/contrib/llvm/lib/DebugInfo/DWARFDebugAranges.cpp head/contrib/llvm/lib/DebugInfo/DWARFDebugAranges.h head/contrib/llvm/lib/DebugInfo/DWARFDebugFrame.cpp head/contrib/llvm/lib/DebugInfo/DWARFDebugFrame.h head/contrib/llvm/lib/DebugInfo/DWARFDebugInfoEntry.cpp head/contrib/llvm/lib/DebugInfo/DWARFDebugInfoEntry.h head/contrib/llvm/lib/DebugInfo/DWARFDebugLine.cpp head/contrib/llvm/lib/DebugInfo/DWARFDebugLine.h head/contrib/llvm/lib/DebugInfo/DWARFDebugLoc.cpp head/contrib/llvm/lib/DebugInfo/DWARFDebugLoc.h head/contrib/llvm/lib/DebugInfo/DWARFDebugRangeList.cpp head/contrib/llvm/lib/DebugInfo/DWARFDebugRangeList.h head/contrib/llvm/lib/DebugInfo/DWARFFormValue.cpp head/contrib/llvm/lib/DebugInfo/DWARFTypeUnit.h head/contrib/llvm/lib/DebugInfo/DWARFUnit.cpp head/contrib/llvm/lib/DebugInfo/DWARFUnit.h head/contrib/llvm/lib/ExecutionEngine/EventListenerCommon.h head/contrib/llvm/lib/ExecutionEngine/ExecutionEngine.cpp head/contrib/llvm/lib/ExecutionEngine/ExecutionEngineBindings.cpp head/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/IntelJITEventListener.cpp head/contrib/llvm/lib/ExecutionEngine/IntelJITEvents/jitprofiling.h head/contrib/llvm/lib/ExecutionEngine/Interpreter/Execution.cpp head/contrib/llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp head/contrib/llvm/lib/ExecutionEngine/Interpreter/Interpreter.cpp head/contrib/llvm/lib/ExecutionEngine/Interpreter/Interpreter.h head/contrib/llvm/lib/ExecutionEngine/JIT/JIT.cpp head/contrib/llvm/lib/ExecutionEngine/JIT/JIT.h head/contrib/llvm/lib/ExecutionEngine/JIT/JITEmitter.cpp head/contrib/llvm/lib/ExecutionEngine/JIT/JITMemoryManager.cpp head/contrib/llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp head/contrib/llvm/lib/ExecutionEngine/MCJIT/MCJIT.h head/contrib/llvm/lib/ExecutionEngine/MCJIT/SectionMemoryManager.cpp head/contrib/llvm/lib/ExecutionEngine/OProfileJIT/OProfileJITEventListener.cpp head/contrib/llvm/lib/ExecutionEngine/OProfileJIT/OProfileWrapper.cpp head/contrib/llvm/lib/ExecutionEngine/RTDyldMemoryManager.cpp head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/GDBRegistrar.cpp head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/ObjectImageCommon.h head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.cpp head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldELF.h head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldImpl.h head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.cpp head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldMachO.h head/contrib/llvm/lib/ExecutionEngine/TargetSelect.cpp head/contrib/llvm/lib/IR/AsmWriter.cpp head/contrib/llvm/lib/IR/AsmWriter.h head/contrib/llvm/lib/IR/AttributeImpl.h head/contrib/llvm/lib/IR/Attributes.cpp head/contrib/llvm/lib/IR/AutoUpgrade.cpp head/contrib/llvm/lib/IR/BasicBlock.cpp head/contrib/llvm/lib/IR/ConstantFold.cpp head/contrib/llvm/lib/IR/Constants.cpp head/contrib/llvm/lib/IR/ConstantsContext.h head/contrib/llvm/lib/IR/Core.cpp head/contrib/llvm/lib/IR/DIBuilder.cpp head/contrib/llvm/lib/IR/DataLayout.cpp head/contrib/llvm/lib/IR/DebugInfo.cpp head/contrib/llvm/lib/IR/DebugLoc.cpp head/contrib/llvm/lib/IR/Dominators.cpp head/contrib/llvm/lib/IR/Function.cpp head/contrib/llvm/lib/IR/GCOV.cpp head/contrib/llvm/lib/IR/GVMaterializer.cpp head/contrib/llvm/lib/IR/Globals.cpp head/contrib/llvm/lib/IR/InlineAsm.cpp head/contrib/llvm/lib/IR/Instruction.cpp head/contrib/llvm/lib/IR/Instructions.cpp head/contrib/llvm/lib/IR/IntrinsicInst.cpp head/contrib/llvm/lib/IR/LLVMContext.cpp head/contrib/llvm/lib/IR/LLVMContextImpl.cpp head/contrib/llvm/lib/IR/LLVMContextImpl.h head/contrib/llvm/lib/IR/LeakDetector.cpp head/contrib/llvm/lib/IR/LeaksContext.h head/contrib/llvm/lib/IR/LegacyPassManager.cpp head/contrib/llvm/lib/IR/Metadata.cpp head/contrib/llvm/lib/IR/Module.cpp head/contrib/llvm/lib/IR/Pass.cpp head/contrib/llvm/lib/IR/PassManager.cpp head/contrib/llvm/lib/IR/PassRegistry.cpp head/contrib/llvm/lib/IR/SymbolTableListTraitsImpl.h head/contrib/llvm/lib/IR/Type.cpp head/contrib/llvm/lib/IR/Use.cpp head/contrib/llvm/lib/IR/Value.cpp head/contrib/llvm/lib/IR/ValueSymbolTable.cpp head/contrib/llvm/lib/IR/Verifier.cpp head/contrib/llvm/lib/IRReader/IRReader.cpp head/contrib/llvm/lib/LTO/LTOCodeGenerator.cpp head/contrib/llvm/lib/LTO/LTOModule.cpp head/contrib/llvm/lib/Linker/LinkModules.cpp head/contrib/llvm/lib/MC/ELFObjectWriter.cpp head/contrib/llvm/lib/MC/MCAsmBackend.cpp head/contrib/llvm/lib/MC/MCAsmInfo.cpp head/contrib/llvm/lib/MC/MCAsmInfoCOFF.cpp head/contrib/llvm/lib/MC/MCAsmInfoDarwin.cpp head/contrib/llvm/lib/MC/MCAsmInfoELF.cpp head/contrib/llvm/lib/MC/MCAsmStreamer.cpp head/contrib/llvm/lib/MC/MCAssembler.cpp head/contrib/llvm/lib/MC/MCContext.cpp head/contrib/llvm/lib/MC/MCDisassembler.cpp head/contrib/llvm/lib/MC/MCDisassembler/Disassembler.cpp head/contrib/llvm/lib/MC/MCDisassembler/Disassembler.h head/contrib/llvm/lib/MC/MCDwarf.cpp head/contrib/llvm/lib/MC/MCELF.cpp head/contrib/llvm/lib/MC/MCELFObjectTargetWriter.cpp head/contrib/llvm/lib/MC/MCELFStreamer.cpp head/contrib/llvm/lib/MC/MCExpr.cpp head/contrib/llvm/lib/MC/MCExternalSymbolizer.cpp head/contrib/llvm/lib/MC/MCInst.cpp head/contrib/llvm/lib/MC/MCMachOStreamer.cpp head/contrib/llvm/lib/MC/MCNullStreamer.cpp head/contrib/llvm/lib/MC/MCObjectFileInfo.cpp head/contrib/llvm/lib/MC/MCObjectStreamer.cpp head/contrib/llvm/lib/MC/MCParser/AsmLexer.cpp head/contrib/llvm/lib/MC/MCParser/AsmParser.cpp head/contrib/llvm/lib/MC/MCParser/COFFAsmParser.cpp head/contrib/llvm/lib/MC/MCParser/DarwinAsmParser.cpp head/contrib/llvm/lib/MC/MCParser/ELFAsmParser.cpp head/contrib/llvm/lib/MC/MCParser/MCAsmLexer.cpp head/contrib/llvm/lib/MC/MCParser/MCAsmParser.cpp head/contrib/llvm/lib/MC/MCRelocationInfo.cpp head/contrib/llvm/lib/MC/MCSectionCOFF.cpp head/contrib/llvm/lib/MC/MCSectionMachO.cpp head/contrib/llvm/lib/MC/MCStreamer.cpp head/contrib/llvm/lib/MC/MCSubtargetInfo.cpp head/contrib/llvm/lib/MC/MCSymbolizer.cpp head/contrib/llvm/lib/MC/MCValue.cpp head/contrib/llvm/lib/MC/MCWin64EH.cpp head/contrib/llvm/lib/MC/MachObjectWriter.cpp head/contrib/llvm/lib/MC/SubtargetFeature.cpp head/contrib/llvm/lib/MC/WinCOFFObjectWriter.cpp head/contrib/llvm/lib/MC/WinCOFFStreamer.cpp head/contrib/llvm/lib/Object/Archive.cpp head/contrib/llvm/lib/Object/Binary.cpp head/contrib/llvm/lib/Object/COFFObjectFile.cpp head/contrib/llvm/lib/Object/COFFYAML.cpp head/contrib/llvm/lib/Object/ELF.cpp head/contrib/llvm/lib/Object/ELFObjectFile.cpp head/contrib/llvm/lib/Object/ELFYAML.cpp head/contrib/llvm/lib/Object/Error.cpp head/contrib/llvm/lib/Object/MachOObjectFile.cpp head/contrib/llvm/lib/Object/MachOUniversal.cpp head/contrib/llvm/lib/Object/Object.cpp head/contrib/llvm/lib/Object/ObjectFile.cpp head/contrib/llvm/lib/Option/ArgList.cpp head/contrib/llvm/lib/Option/OptTable.cpp head/contrib/llvm/lib/Option/Option.cpp head/contrib/llvm/lib/Support/APFloat.cpp head/contrib/llvm/lib/Support/APInt.cpp head/contrib/llvm/lib/Support/Allocator.cpp head/contrib/llvm/lib/Support/Atomic.cpp head/contrib/llvm/lib/Support/BlockFrequency.cpp head/contrib/llvm/lib/Support/BranchProbability.cpp head/contrib/llvm/lib/Support/CommandLine.cpp head/contrib/llvm/lib/Support/Compression.cpp head/contrib/llvm/lib/Support/ConvertUTF.c head/contrib/llvm/lib/Support/CrashRecoveryContext.cpp head/contrib/llvm/lib/Support/DAGDeltaAlgorithm.cpp head/contrib/llvm/lib/Support/DataExtractor.cpp head/contrib/llvm/lib/Support/DataStream.cpp head/contrib/llvm/lib/Support/Debug.cpp head/contrib/llvm/lib/Support/Dwarf.cpp head/contrib/llvm/lib/Support/DynamicLibrary.cpp head/contrib/llvm/lib/Support/ErrorHandling.cpp head/contrib/llvm/lib/Support/FileOutputBuffer.cpp head/contrib/llvm/lib/Support/FileUtilities.cpp head/contrib/llvm/lib/Support/FoldingSet.cpp head/contrib/llvm/lib/Support/FormattedStream.cpp head/contrib/llvm/lib/Support/GraphWriter.cpp head/contrib/llvm/lib/Support/Host.cpp head/contrib/llvm/lib/Support/IntervalMap.cpp head/contrib/llvm/lib/Support/LockFileManager.cpp head/contrib/llvm/lib/Support/ManagedStatic.cpp head/contrib/llvm/lib/Support/MemoryBuffer.cpp head/contrib/llvm/lib/Support/Mutex.cpp head/contrib/llvm/lib/Support/Path.cpp head/contrib/llvm/lib/Support/PrettyStackTrace.cpp head/contrib/llvm/lib/Support/Process.cpp head/contrib/llvm/lib/Support/Program.cpp head/contrib/llvm/lib/Support/RWMutex.cpp head/contrib/llvm/lib/Support/Regex.cpp head/contrib/llvm/lib/Support/SearchForAddressOfSpecialSymbol.cpp head/contrib/llvm/lib/Support/SmallPtrSet.cpp head/contrib/llvm/lib/Support/SourceMgr.cpp head/contrib/llvm/lib/Support/Statistic.cpp head/contrib/llvm/lib/Support/StreamableMemoryObject.cpp head/contrib/llvm/lib/Support/StringMap.cpp head/contrib/llvm/lib/Support/StringPool.cpp head/contrib/llvm/lib/Support/StringRef.cpp head/contrib/llvm/lib/Support/TargetRegistry.cpp head/contrib/llvm/lib/Support/ThreadLocal.cpp head/contrib/llvm/lib/Support/Threading.cpp head/contrib/llvm/lib/Support/TimeValue.cpp head/contrib/llvm/lib/Support/Timer.cpp head/contrib/llvm/lib/Support/ToolOutputFile.cpp head/contrib/llvm/lib/Support/Triple.cpp head/contrib/llvm/lib/Support/Twine.cpp head/contrib/llvm/lib/Support/Unix/Host.inc head/contrib/llvm/lib/Support/Unix/Memory.inc head/contrib/llvm/lib/Support/Unix/Path.inc head/contrib/llvm/lib/Support/Unix/Process.inc head/contrib/llvm/lib/Support/Unix/Program.inc head/contrib/llvm/lib/Support/Unix/RWMutex.inc head/contrib/llvm/lib/Support/Unix/Signals.inc head/contrib/llvm/lib/Support/Unix/TimeValue.inc head/contrib/llvm/lib/Support/Valgrind.cpp head/contrib/llvm/lib/Support/Windows/DynamicLibrary.inc head/contrib/llvm/lib/Support/Windows/Host.inc head/contrib/llvm/lib/Support/Windows/Memory.inc head/contrib/llvm/lib/Support/Windows/Mutex.inc head/contrib/llvm/lib/Support/Windows/Path.inc head/contrib/llvm/lib/Support/Windows/Process.inc head/contrib/llvm/lib/Support/Windows/Program.inc head/contrib/llvm/lib/Support/Windows/RWMutex.inc head/contrib/llvm/lib/Support/Windows/Signals.inc head/contrib/llvm/lib/Support/Windows/ThreadLocal.inc head/contrib/llvm/lib/Support/Windows/TimeValue.inc head/contrib/llvm/lib/Support/YAMLParser.cpp head/contrib/llvm/lib/Support/YAMLTraits.cpp head/contrib/llvm/lib/Support/raw_ostream.cpp head/contrib/llvm/lib/Support/regcclass.h head/contrib/llvm/lib/Support/regcname.h head/contrib/llvm/lib/Support/regcomp.c head/contrib/llvm/lib/Support/regengine.inc head/contrib/llvm/lib/Support/regex2.h head/contrib/llvm/lib/Support/regutils.h head/contrib/llvm/lib/TableGen/Error.cpp head/contrib/llvm/lib/TableGen/Main.cpp head/contrib/llvm/lib/TableGen/Record.cpp head/contrib/llvm/lib/TableGen/TGLexer.cpp head/contrib/llvm/lib/TableGen/TGLexer.h head/contrib/llvm/lib/TableGen/TGParser.cpp head/contrib/llvm/lib/TableGen/TGParser.h head/contrib/llvm/lib/Target/AArch64/AArch64.h head/contrib/llvm/lib/Target/AArch64/AArch64.td head/contrib/llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp head/contrib/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp head/contrib/llvm/lib/Target/AArch64/AArch64FrameLowering.h head/contrib/llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp head/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp head/contrib/llvm/lib/Target/AArch64/AArch64ISelLowering.h head/contrib/llvm/lib/Target/AArch64/AArch64InstrFormats.td head/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.cpp head/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.h head/contrib/llvm/lib/Target/AArch64/AArch64InstrInfo.td head/contrib/llvm/lib/Target/AArch64/AArch64MCInstLower.cpp head/contrib/llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.h head/contrib/llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp head/contrib/llvm/lib/Target/AArch64/AArch64RegisterInfo.h head/contrib/llvm/lib/Target/AArch64/AArch64RegisterInfo.td head/contrib/llvm/lib/Target/AArch64/AArch64Schedule.td head/contrib/llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp head/contrib/llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.h head/contrib/llvm/lib/Target/AArch64/AArch64Subtarget.cpp head/contrib/llvm/lib/Target/AArch64/AArch64Subtarget.h head/contrib/llvm/lib/Target/AArch64/AArch64TargetMachine.cpp head/contrib/llvm/lib/Target/AArch64/AArch64TargetMachine.h head/contrib/llvm/lib/Target/AArch64/AArch64TargetObjectFile.cpp head/contrib/llvm/lib/Target/AArch64/AArch64TargetObjectFile.h head/contrib/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp head/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.cpp head/contrib/llvm/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.cpp head/contrib/llvm/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.h head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64AsmBackend.cpp head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFObjectWriter.cpp head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.h head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64FixupKinds.h head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.cpp head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCAsmInfo.h head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCCodeEmitter.cpp head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.cpp head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCExpr.h head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.cpp head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.h head/contrib/llvm/lib/Target/AArch64/TargetInfo/AArch64TargetInfo.cpp head/contrib/llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.cpp head/contrib/llvm/lib/Target/AArch64/Utils/AArch64BaseInfo.h head/contrib/llvm/lib/Target/ARM/A15SDOptimizer.cpp head/contrib/llvm/lib/Target/ARM/ARM.h head/contrib/llvm/lib/Target/ARM/ARM.td head/contrib/llvm/lib/Target/ARM/ARMAsmPrinter.cpp head/contrib/llvm/lib/Target/ARM/ARMAsmPrinter.h head/contrib/llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp head/contrib/llvm/lib/Target/ARM/ARMBaseInstrInfo.h head/contrib/llvm/lib/Target/ARM/ARMBaseRegisterInfo.cpp head/contrib/llvm/lib/Target/ARM/ARMBaseRegisterInfo.h head/contrib/llvm/lib/Target/ARM/ARMCallingConv.h head/contrib/llvm/lib/Target/ARM/ARMCallingConv.td head/contrib/llvm/lib/Target/ARM/ARMCodeEmitter.cpp head/contrib/llvm/lib/Target/ARM/ARMConstantIslandPass.cpp head/contrib/llvm/lib/Target/ARM/ARMConstantPoolValue.h head/contrib/llvm/lib/Target/ARM/ARMExpandPseudoInsts.cpp head/contrib/llvm/lib/Target/ARM/ARMFPUName.def head/contrib/llvm/lib/Target/ARM/ARMFastISel.cpp head/contrib/llvm/lib/Target/ARM/ARMFeatures.h head/contrib/llvm/lib/Target/ARM/ARMFrameLowering.cpp head/contrib/llvm/lib/Target/ARM/ARMFrameLowering.h head/contrib/llvm/lib/Target/ARM/ARMHazardRecognizer.cpp head/contrib/llvm/lib/Target/ARM/ARMHazardRecognizer.h head/contrib/llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp head/contrib/llvm/lib/Target/ARM/ARMISelLowering.cpp head/contrib/llvm/lib/Target/ARM/ARMISelLowering.h head/contrib/llvm/lib/Target/ARM/ARMInstrFormats.td head/contrib/llvm/lib/Target/ARM/ARMInstrInfo.cpp head/contrib/llvm/lib/Target/ARM/ARMInstrInfo.h head/contrib/llvm/lib/Target/ARM/ARMInstrInfo.td head/contrib/llvm/lib/Target/ARM/ARMInstrNEON.td head/contrib/llvm/lib/Target/ARM/ARMInstrThumb.td head/contrib/llvm/lib/Target/ARM/ARMInstrThumb2.td head/contrib/llvm/lib/Target/ARM/ARMInstrVFP.td head/contrib/llvm/lib/Target/ARM/ARMJITInfo.cpp head/contrib/llvm/lib/Target/ARM/ARMJITInfo.h head/contrib/llvm/lib/Target/ARM/ARMLoadStoreOptimizer.cpp head/contrib/llvm/lib/Target/ARM/ARMMCInstLower.cpp head/contrib/llvm/lib/Target/ARM/ARMMachineFunctionInfo.cpp head/contrib/llvm/lib/Target/ARM/ARMMachineFunctionInfo.h head/contrib/llvm/lib/Target/ARM/ARMRegisterInfo.cpp head/contrib/llvm/lib/Target/ARM/ARMRegisterInfo.h head/contrib/llvm/lib/Target/ARM/ARMRegisterInfo.td head/contrib/llvm/lib/Target/ARM/ARMScheduleA9.td head/contrib/llvm/lib/Target/ARM/ARMScheduleSwift.td head/contrib/llvm/lib/Target/ARM/ARMScheduleV6.td head/contrib/llvm/lib/Target/ARM/ARMSelectionDAGInfo.cpp head/contrib/llvm/lib/Target/ARM/ARMSelectionDAGInfo.h head/contrib/llvm/lib/Target/ARM/ARMSubtarget.cpp head/contrib/llvm/lib/Target/ARM/ARMSubtarget.h head/contrib/llvm/lib/Target/ARM/ARMTargetMachine.cpp head/contrib/llvm/lib/Target/ARM/ARMTargetMachine.h head/contrib/llvm/lib/Target/ARM/ARMTargetObjectFile.cpp head/contrib/llvm/lib/Target/ARM/ARMTargetObjectFile.h head/contrib/llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp head/contrib/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp head/contrib/llvm/lib/Target/ARM/Disassembler/ARMDisassembler.cpp head/contrib/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp head/contrib/llvm/lib/Target/ARM/InstPrinter/ARMInstPrinter.h head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMBaseInfo.h head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMELFObjectWriter.cpp head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMFixupKinds.h head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.cpp head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCAsmInfo.h head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCExpr.cpp head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCExpr.h head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.cpp head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.h head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMachORelocationInfo.cpp head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMUnwindOpAsm.cpp head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMUnwindOpAsm.h head/contrib/llvm/lib/Target/ARM/MLxExpansionPass.cpp head/contrib/llvm/lib/Target/ARM/TargetInfo/ARMTargetInfo.cpp head/contrib/llvm/lib/Target/ARM/Thumb1FrameLowering.cpp head/contrib/llvm/lib/Target/ARM/Thumb1FrameLowering.h head/contrib/llvm/lib/Target/ARM/Thumb1InstrInfo.cpp head/contrib/llvm/lib/Target/ARM/Thumb1InstrInfo.h head/contrib/llvm/lib/Target/ARM/Thumb1RegisterInfo.cpp head/contrib/llvm/lib/Target/ARM/Thumb1RegisterInfo.h head/contrib/llvm/lib/Target/ARM/Thumb2ITBlockPass.cpp head/contrib/llvm/lib/Target/ARM/Thumb2InstrInfo.cpp head/contrib/llvm/lib/Target/ARM/Thumb2InstrInfo.h head/contrib/llvm/lib/Target/ARM/Thumb2RegisterInfo.cpp head/contrib/llvm/lib/Target/ARM/Thumb2RegisterInfo.h head/contrib/llvm/lib/Target/ARM/Thumb2SizeReduction.cpp head/contrib/llvm/lib/Target/CppBackend/CPPBackend.cpp head/contrib/llvm/lib/Target/CppBackend/CPPTargetMachine.h head/contrib/llvm/lib/Target/CppBackend/TargetInfo/CppBackendTargetInfo.cpp head/contrib/llvm/lib/Target/Hexagon/Hexagon.td head/contrib/llvm/lib/Target/Hexagon/HexagonAsmPrinter.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonAsmPrinter.h head/contrib/llvm/lib/Target/Hexagon/HexagonCFGOptimizer.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonCallingConvLower.h head/contrib/llvm/lib/Target/Hexagon/HexagonCopyToCombine.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonExpandPredSpillCode.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonFixupHwLoops.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonFrameLowering.h head/contrib/llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonISelDAGToDAG.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonISelLowering.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonISelLowering.h head/contrib/llvm/lib/Target/Hexagon/HexagonInstrFormats.td head/contrib/llvm/lib/Target/Hexagon/HexagonInstrFormatsV4.td head/contrib/llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonInstrInfo.h head/contrib/llvm/lib/Target/Hexagon/HexagonInstrInfo.td head/contrib/llvm/lib/Target/Hexagon/HexagonInstrInfoV4.td head/contrib/llvm/lib/Target/Hexagon/HexagonMCInstLower.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonMachineFunctionInfo.h head/contrib/llvm/lib/Target/Hexagon/HexagonMachineScheduler.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonMachineScheduler.h head/contrib/llvm/lib/Target/Hexagon/HexagonNewValueJump.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonPeephole.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonRegisterInfo.h head/contrib/llvm/lib/Target/Hexagon/HexagonRemoveSZExtArgs.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonSchedule.td head/contrib/llvm/lib/Target/Hexagon/HexagonScheduleV4.td head/contrib/llvm/lib/Target/Hexagon/HexagonSelectionDAGInfo.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonSelectionDAGInfo.h head/contrib/llvm/lib/Target/Hexagon/HexagonSplitConst32AndConst64.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonSplitTFRCondSets.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonSubtarget.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonSubtarget.h head/contrib/llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonTargetMachine.h head/contrib/llvm/lib/Target/Hexagon/HexagonTargetObjectFile.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonTargetObjectFile.h head/contrib/llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp head/contrib/llvm/lib/Target/Hexagon/HexagonVarargsCallingConvention.h head/contrib/llvm/lib/Target/Hexagon/InstPrinter/HexagonInstPrinter.cpp head/contrib/llvm/lib/Target/Hexagon/InstPrinter/HexagonInstPrinter.h head/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonBaseInfo.h head/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCAsmInfo.cpp head/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCAsmInfo.h head/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCInst.h head/contrib/llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp head/contrib/llvm/lib/Target/MSP430/InstPrinter/MSP430InstPrinter.cpp head/contrib/llvm/lib/Target/MSP430/InstPrinter/MSP430InstPrinter.h head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCAsmInfo.cpp head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCAsmInfo.h head/contrib/llvm/lib/Target/MSP430/MCTargetDesc/MSP430MCTargetDesc.cpp head/contrib/llvm/lib/Target/MSP430/MSP430.td head/contrib/llvm/lib/Target/MSP430/MSP430AsmPrinter.cpp head/contrib/llvm/lib/Target/MSP430/MSP430BranchSelector.cpp head/contrib/llvm/lib/Target/MSP430/MSP430FrameLowering.cpp head/contrib/llvm/lib/Target/MSP430/MSP430FrameLowering.h head/contrib/llvm/lib/Target/MSP430/MSP430ISelDAGToDAG.cpp head/contrib/llvm/lib/Target/MSP430/MSP430ISelLowering.cpp head/contrib/llvm/lib/Target/MSP430/MSP430ISelLowering.h head/contrib/llvm/lib/Target/MSP430/MSP430InstrInfo.cpp head/contrib/llvm/lib/Target/MSP430/MSP430InstrInfo.h head/contrib/llvm/lib/Target/MSP430/MSP430MCInstLower.cpp head/contrib/llvm/lib/Target/MSP430/MSP430RegisterInfo.cpp head/contrib/llvm/lib/Target/MSP430/MSP430RegisterInfo.h head/contrib/llvm/lib/Target/MSP430/MSP430SelectionDAGInfo.cpp head/contrib/llvm/lib/Target/MSP430/MSP430SelectionDAGInfo.h head/contrib/llvm/lib/Target/MSP430/MSP430Subtarget.cpp head/contrib/llvm/lib/Target/MSP430/MSP430Subtarget.h head/contrib/llvm/lib/Target/MSP430/MSP430TargetMachine.cpp head/contrib/llvm/lib/Target/MSP430/MSP430TargetMachine.h head/contrib/llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp head/contrib/llvm/lib/Target/Mips/Disassembler/MipsDisassembler.cpp head/contrib/llvm/lib/Target/Mips/InstPrinter/MipsInstPrinter.cpp head/contrib/llvm/lib/Target/Mips/InstPrinter/MipsInstPrinter.h head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.cpp head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsBaseInfo.h head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFObjectWriter.cpp head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsFixupKinds.h head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.cpp head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCAsmInfo.h head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.cpp head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.h head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp head/contrib/llvm/lib/Target/Mips/MSA.txt head/contrib/llvm/lib/Target/Mips/MicroMipsInstrFormats.td head/contrib/llvm/lib/Target/Mips/MicroMipsInstrInfo.td head/contrib/llvm/lib/Target/Mips/Mips.h head/contrib/llvm/lib/Target/Mips/Mips.td head/contrib/llvm/lib/Target/Mips/Mips16FrameLowering.cpp head/contrib/llvm/lib/Target/Mips/Mips16FrameLowering.h head/contrib/llvm/lib/Target/Mips/Mips16HardFloat.cpp head/contrib/llvm/lib/Target/Mips/Mips16HardFloat.h head/contrib/llvm/lib/Target/Mips/Mips16ISelDAGToDAG.cpp head/contrib/llvm/lib/Target/Mips/Mips16ISelDAGToDAG.h head/contrib/llvm/lib/Target/Mips/Mips16ISelLowering.cpp head/contrib/llvm/lib/Target/Mips/Mips16ISelLowering.h head/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.cpp head/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.h head/contrib/llvm/lib/Target/Mips/Mips16InstrInfo.td head/contrib/llvm/lib/Target/Mips/Mips16RegisterInfo.cpp head/contrib/llvm/lib/Target/Mips/Mips16RegisterInfo.h head/contrib/llvm/lib/Target/Mips/Mips64InstrInfo.td head/contrib/llvm/lib/Target/Mips/MipsAsmPrinter.cpp head/contrib/llvm/lib/Target/Mips/MipsAsmPrinter.h head/contrib/llvm/lib/Target/Mips/MipsCallingConv.td head/contrib/llvm/lib/Target/Mips/MipsCodeEmitter.cpp head/contrib/llvm/lib/Target/Mips/MipsCondMov.td head/contrib/llvm/lib/Target/Mips/MipsConstantIslandPass.cpp head/contrib/llvm/lib/Target/Mips/MipsDSPInstrFormats.td head/contrib/llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp head/contrib/llvm/lib/Target/Mips/MipsFrameLowering.cpp head/contrib/llvm/lib/Target/Mips/MipsFrameLowering.h head/contrib/llvm/lib/Target/Mips/MipsISelDAGToDAG.cpp head/contrib/llvm/lib/Target/Mips/MipsISelDAGToDAG.h head/contrib/llvm/lib/Target/Mips/MipsISelLowering.cpp head/contrib/llvm/lib/Target/Mips/MipsISelLowering.h head/contrib/llvm/lib/Target/Mips/MipsInstrFPU.td head/contrib/llvm/lib/Target/Mips/MipsInstrFormats.td head/contrib/llvm/lib/Target/Mips/MipsInstrInfo.cpp head/contrib/llvm/lib/Target/Mips/MipsInstrInfo.h head/contrib/llvm/lib/Target/Mips/MipsInstrInfo.td head/contrib/llvm/lib/Target/Mips/MipsJITInfo.cpp head/contrib/llvm/lib/Target/Mips/MipsJITInfo.h head/contrib/llvm/lib/Target/Mips/MipsLongBranch.cpp head/contrib/llvm/lib/Target/Mips/MipsMCInstLower.cpp head/contrib/llvm/lib/Target/Mips/MipsMCInstLower.h head/contrib/llvm/lib/Target/Mips/MipsMSAInstrFormats.td head/contrib/llvm/lib/Target/Mips/MipsMSAInstrInfo.td head/contrib/llvm/lib/Target/Mips/MipsMachineFunction.cpp head/contrib/llvm/lib/Target/Mips/MipsMachineFunction.h head/contrib/llvm/lib/Target/Mips/MipsModuleISelDAGToDAG.cpp head/contrib/llvm/lib/Target/Mips/MipsModuleISelDAGToDAG.h head/contrib/llvm/lib/Target/Mips/MipsOs16.cpp head/contrib/llvm/lib/Target/Mips/MipsOs16.h head/contrib/llvm/lib/Target/Mips/MipsRegisterInfo.cpp head/contrib/llvm/lib/Target/Mips/MipsRegisterInfo.h head/contrib/llvm/lib/Target/Mips/MipsRegisterInfo.td head/contrib/llvm/lib/Target/Mips/MipsSEFrameLowering.cpp head/contrib/llvm/lib/Target/Mips/MipsSEFrameLowering.h head/contrib/llvm/lib/Target/Mips/MipsSEISelDAGToDAG.cpp head/contrib/llvm/lib/Target/Mips/MipsSEISelDAGToDAG.h head/contrib/llvm/lib/Target/Mips/MipsSEISelLowering.cpp head/contrib/llvm/lib/Target/Mips/MipsSEISelLowering.h head/contrib/llvm/lib/Target/Mips/MipsSEInstrInfo.cpp head/contrib/llvm/lib/Target/Mips/MipsSEInstrInfo.h head/contrib/llvm/lib/Target/Mips/MipsSERegisterInfo.cpp head/contrib/llvm/lib/Target/Mips/MipsSERegisterInfo.h head/contrib/llvm/lib/Target/Mips/MipsSchedule.td head/contrib/llvm/lib/Target/Mips/MipsSelectionDAGInfo.cpp head/contrib/llvm/lib/Target/Mips/MipsSelectionDAGInfo.h head/contrib/llvm/lib/Target/Mips/MipsSubtarget.cpp head/contrib/llvm/lib/Target/Mips/MipsSubtarget.h head/contrib/llvm/lib/Target/Mips/MipsTargetMachine.cpp head/contrib/llvm/lib/Target/Mips/MipsTargetMachine.h head/contrib/llvm/lib/Target/Mips/MipsTargetObjectFile.cpp head/contrib/llvm/lib/Target/Mips/MipsTargetObjectFile.h head/contrib/llvm/lib/Target/Mips/MipsTargetStreamer.h head/contrib/llvm/lib/Target/NVPTX/InstPrinter/NVPTXInstPrinter.cpp head/contrib/llvm/lib/Target/NVPTX/InstPrinter/NVPTXInstPrinter.h head/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXBaseInfo.h head/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCAsmInfo.cpp head/contrib/llvm/lib/Target/NVPTX/MCTargetDesc/NVPTXMCTargetDesc.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTX.h head/contrib/llvm/lib/Target/NVPTX/NVPTX.td head/contrib/llvm/lib/Target/NVPTX/NVPTXAllocaHoisting.h head/contrib/llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h head/contrib/llvm/lib/Target/NVPTX/NVPTXFrameLowering.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXFrameLowering.h head/contrib/llvm/lib/Target/NVPTX/NVPTXGenericToNVVM.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h head/contrib/llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXISelLowering.h head/contrib/llvm/lib/Target/NVPTX/NVPTXInstrFormats.td head/contrib/llvm/lib/Target/NVPTX/NVPTXInstrInfo.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXInstrInfo.h head/contrib/llvm/lib/Target/NVPTX/NVPTXInstrInfo.td head/contrib/llvm/lib/Target/NVPTX/NVPTXIntrinsics.td head/contrib/llvm/lib/Target/NVPTX/NVPTXLowerAggrCopies.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXLowerAggrCopies.h head/contrib/llvm/lib/Target/NVPTX/NVPTXMCExpr.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXMCExpr.h head/contrib/llvm/lib/Target/NVPTX/NVPTXPrologEpilogPass.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXRegisterInfo.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXRegisterInfo.h head/contrib/llvm/lib/Target/NVPTX/NVPTXRegisterInfo.td head/contrib/llvm/lib/Target/NVPTX/NVPTXSection.h head/contrib/llvm/lib/Target/NVPTX/NVPTXSubtarget.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXSubtarget.h head/contrib/llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXTargetMachine.h head/contrib/llvm/lib/Target/NVPTX/NVPTXTargetObjectFile.h head/contrib/llvm/lib/Target/NVPTX/NVPTXUtilities.cpp head/contrib/llvm/lib/Target/NVPTX/NVPTXUtilities.h head/contrib/llvm/lib/Target/NVPTX/NVVMReflect.cpp head/contrib/llvm/lib/Target/NVPTX/cl_common_defines.h head/contrib/llvm/lib/Target/PowerPC/AsmParser/PPCAsmParser.cpp head/contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp head/contrib/llvm/lib/Target/PowerPC/InstPrinter/PPCInstPrinter.h head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCELFObjectWriter.cpp head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCAsmInfo.cpp head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCAsmInfo.h head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCCodeEmitter.cpp head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCExpr.cpp head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCExpr.h head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.cpp head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMCTargetDesc.h head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCMachObjectWriter.cpp head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCPredicates.cpp head/contrib/llvm/lib/Target/PowerPC/MCTargetDesc/PPCPredicates.h head/contrib/llvm/lib/Target/PowerPC/PPC.h head/contrib/llvm/lib/Target/PowerPC/PPC.td head/contrib/llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp head/contrib/llvm/lib/Target/PowerPC/PPCBranchSelector.cpp head/contrib/llvm/lib/Target/PowerPC/PPCCTRLoops.cpp head/contrib/llvm/lib/Target/PowerPC/PPCCallingConv.td head/contrib/llvm/lib/Target/PowerPC/PPCCodeEmitter.cpp head/contrib/llvm/lib/Target/PowerPC/PPCFastISel.cpp head/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.cpp head/contrib/llvm/lib/Target/PowerPC/PPCFrameLowering.h head/contrib/llvm/lib/Target/PowerPC/PPCHazardRecognizers.cpp head/contrib/llvm/lib/Target/PowerPC/PPCHazardRecognizers.h head/contrib/llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp head/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.cpp head/contrib/llvm/lib/Target/PowerPC/PPCISelLowering.h head/contrib/llvm/lib/Target/PowerPC/PPCInstr64Bit.td head/contrib/llvm/lib/Target/PowerPC/PPCInstrAltivec.td head/contrib/llvm/lib/Target/PowerPC/PPCInstrFormats.td head/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.cpp head/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.h head/contrib/llvm/lib/Target/PowerPC/PPCInstrInfo.td head/contrib/llvm/lib/Target/PowerPC/PPCJITInfo.cpp head/contrib/llvm/lib/Target/PowerPC/PPCJITInfo.h head/contrib/llvm/lib/Target/PowerPC/PPCMCInstLower.cpp head/contrib/llvm/lib/Target/PowerPC/PPCMachineFunctionInfo.cpp head/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp head/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.h head/contrib/llvm/lib/Target/PowerPC/PPCRegisterInfo.td head/contrib/llvm/lib/Target/PowerPC/PPCSchedule.td head/contrib/llvm/lib/Target/PowerPC/PPCSchedule440.td head/contrib/llvm/lib/Target/PowerPC/PPCScheduleA2.td head/contrib/llvm/lib/Target/PowerPC/PPCScheduleE500mc.td head/contrib/llvm/lib/Target/PowerPC/PPCScheduleE5500.td head/contrib/llvm/lib/Target/PowerPC/PPCScheduleG3.td head/contrib/llvm/lib/Target/PowerPC/PPCScheduleG4.td head/contrib/llvm/lib/Target/PowerPC/PPCScheduleG4Plus.td head/contrib/llvm/lib/Target/PowerPC/PPCScheduleG5.td head/contrib/llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.cpp head/contrib/llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.h head/contrib/llvm/lib/Target/PowerPC/PPCSubtarget.cpp head/contrib/llvm/lib/Target/PowerPC/PPCSubtarget.h head/contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.cpp head/contrib/llvm/lib/Target/PowerPC/PPCTargetMachine.h head/contrib/llvm/lib/Target/PowerPC/PPCTargetObjectFile.cpp head/contrib/llvm/lib/Target/PowerPC/PPCTargetObjectFile.h head/contrib/llvm/lib/Target/PowerPC/PPCTargetStreamer.h head/contrib/llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp head/contrib/llvm/lib/Target/R600/AMDGPU.h head/contrib/llvm/lib/Target/R600/AMDGPU.td head/contrib/llvm/lib/Target/R600/AMDGPUAsmPrinter.cpp head/contrib/llvm/lib/Target/R600/AMDGPUAsmPrinter.h head/contrib/llvm/lib/Target/R600/AMDGPUCallingConv.td head/contrib/llvm/lib/Target/R600/AMDGPUFrameLowering.cpp head/contrib/llvm/lib/Target/R600/AMDGPUFrameLowering.h head/contrib/llvm/lib/Target/R600/AMDGPUISelDAGToDAG.cpp head/contrib/llvm/lib/Target/R600/AMDGPUISelLowering.cpp head/contrib/llvm/lib/Target/R600/AMDGPUISelLowering.h head/contrib/llvm/lib/Target/R600/AMDGPUInstrInfo.cpp head/contrib/llvm/lib/Target/R600/AMDGPUInstrInfo.h head/contrib/llvm/lib/Target/R600/AMDGPUInstrInfo.td head/contrib/llvm/lib/Target/R600/AMDGPUInstructions.td head/contrib/llvm/lib/Target/R600/AMDGPUIntrinsics.td head/contrib/llvm/lib/Target/R600/AMDGPUMCInstLower.cpp head/contrib/llvm/lib/Target/R600/AMDGPUMCInstLower.h head/contrib/llvm/lib/Target/R600/AMDGPUMachineFunction.cpp head/contrib/llvm/lib/Target/R600/AMDGPUMachineFunction.h head/contrib/llvm/lib/Target/R600/AMDGPURegisterInfo.cpp head/contrib/llvm/lib/Target/R600/AMDGPURegisterInfo.h head/contrib/llvm/lib/Target/R600/AMDGPUSubtarget.cpp head/contrib/llvm/lib/Target/R600/AMDGPUSubtarget.h head/contrib/llvm/lib/Target/R600/AMDGPUTargetMachine.cpp head/contrib/llvm/lib/Target/R600/AMDGPUTargetMachine.h head/contrib/llvm/lib/Target/R600/AMDGPUTargetTransformInfo.cpp head/contrib/llvm/lib/Target/R600/AMDILCFGStructurizer.cpp head/contrib/llvm/lib/Target/R600/InstPrinter/AMDGPUInstPrinter.cpp head/contrib/llvm/lib/Target/R600/InstPrinter/AMDGPUInstPrinter.h head/contrib/llvm/lib/Target/R600/MCTargetDesc/AMDGPUAsmBackend.cpp head/contrib/llvm/lib/Target/R600/MCTargetDesc/AMDGPUELFObjectWriter.cpp head/contrib/llvm/lib/Target/R600/MCTargetDesc/AMDGPUMCAsmInfo.cpp head/contrib/llvm/lib/Target/R600/MCTargetDesc/AMDGPUMCAsmInfo.h head/contrib/llvm/lib/Target/R600/MCTargetDesc/AMDGPUMCCodeEmitter.h head/contrib/llvm/lib/Target/R600/MCTargetDesc/AMDGPUMCTargetDesc.cpp head/contrib/llvm/lib/Target/R600/MCTargetDesc/R600MCCodeEmitter.cpp head/contrib/llvm/lib/Target/R600/MCTargetDesc/SIMCCodeEmitter.cpp head/contrib/llvm/lib/Target/R600/Processors.td head/contrib/llvm/lib/Target/R600/R600ClauseMergePass.cpp head/contrib/llvm/lib/Target/R600/R600ControlFlowFinalizer.cpp head/contrib/llvm/lib/Target/R600/R600Defines.h head/contrib/llvm/lib/Target/R600/R600EmitClauseMarkers.cpp head/contrib/llvm/lib/Target/R600/R600ExpandSpecialInstrs.cpp head/contrib/llvm/lib/Target/R600/R600ISelLowering.cpp head/contrib/llvm/lib/Target/R600/R600ISelLowering.h head/contrib/llvm/lib/Target/R600/R600InstrInfo.cpp head/contrib/llvm/lib/Target/R600/R600InstrInfo.h head/contrib/llvm/lib/Target/R600/R600Instructions.td head/contrib/llvm/lib/Target/R600/R600MachineFunctionInfo.h head/contrib/llvm/lib/Target/R600/R600MachineScheduler.cpp head/contrib/llvm/lib/Target/R600/R600MachineScheduler.h head/contrib/llvm/lib/Target/R600/R600OptimizeVectorRegisters.cpp head/contrib/llvm/lib/Target/R600/R600Packetizer.cpp head/contrib/llvm/lib/Target/R600/R600RegisterInfo.cpp head/contrib/llvm/lib/Target/R600/R600RegisterInfo.h head/contrib/llvm/lib/Target/R600/R600RegisterInfo.td head/contrib/llvm/lib/Target/R600/R600TextureIntrinsicsReplacer.cpp head/contrib/llvm/lib/Target/R600/SIAnnotateControlFlow.cpp head/contrib/llvm/lib/Target/R600/SIDefines.h head/contrib/llvm/lib/Target/R600/SIFixSGPRCopies.cpp head/contrib/llvm/lib/Target/R600/SIISelLowering.cpp head/contrib/llvm/lib/Target/R600/SIISelLowering.h head/contrib/llvm/lib/Target/R600/SIInsertWaits.cpp head/contrib/llvm/lib/Target/R600/SIInstrFormats.td head/contrib/llvm/lib/Target/R600/SIInstrInfo.cpp head/contrib/llvm/lib/Target/R600/SIInstrInfo.h head/contrib/llvm/lib/Target/R600/SIInstrInfo.td head/contrib/llvm/lib/Target/R600/SIInstructions.td head/contrib/llvm/lib/Target/R600/SIIntrinsics.td head/contrib/llvm/lib/Target/R600/SILowerControlFlow.cpp head/contrib/llvm/lib/Target/R600/SIMachineFunctionInfo.cpp head/contrib/llvm/lib/Target/R600/SIMachineFunctionInfo.h head/contrib/llvm/lib/Target/R600/SIRegisterInfo.cpp head/contrib/llvm/lib/Target/R600/SIRegisterInfo.h head/contrib/llvm/lib/Target/R600/SIRegisterInfo.td head/contrib/llvm/lib/Target/R600/SITypeRewriter.cpp head/contrib/llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp (contents, props changed) head/contrib/llvm/lib/Target/Sparc/DelaySlotFiller.cpp head/contrib/llvm/lib/Target/Sparc/Disassembler/SparcDisassembler.cpp (contents, props changed) head/contrib/llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.cpp (contents, props changed) head/contrib/llvm/lib/Target/Sparc/InstPrinter/SparcInstPrinter.h (contents, props changed) head/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcAsmBackend.cpp head/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcELFObjectWriter.cpp head/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcFixupKinds.h head/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.cpp head/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCAsmInfo.h head/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCCodeEmitter.cpp head/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.cpp head/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCExpr.h head/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcMCTargetDesc.cpp head/contrib/llvm/lib/Target/Sparc/MCTargetDesc/SparcTargetStreamer.cpp head/contrib/llvm/lib/Target/Sparc/Sparc.h head/contrib/llvm/lib/Target/Sparc/Sparc.td head/contrib/llvm/lib/Target/Sparc/SparcAsmPrinter.cpp head/contrib/llvm/lib/Target/Sparc/SparcCodeEmitter.cpp head/contrib/llvm/lib/Target/Sparc/SparcFrameLowering.cpp head/contrib/llvm/lib/Target/Sparc/SparcFrameLowering.h head/contrib/llvm/lib/Target/Sparc/SparcISelDAGToDAG.cpp head/contrib/llvm/lib/Target/Sparc/SparcISelLowering.cpp head/contrib/llvm/lib/Target/Sparc/SparcISelLowering.h head/contrib/llvm/lib/Target/Sparc/SparcInstr64Bit.td head/contrib/llvm/lib/Target/Sparc/SparcInstrAliases.td head/contrib/llvm/lib/Target/Sparc/SparcInstrFormats.td head/contrib/llvm/lib/Target/Sparc/SparcInstrInfo.cpp head/contrib/llvm/lib/Target/Sparc/SparcInstrInfo.h head/contrib/llvm/lib/Target/Sparc/SparcInstrInfo.td head/contrib/llvm/lib/Target/Sparc/SparcJITInfo.cpp head/contrib/llvm/lib/Target/Sparc/SparcJITInfo.h head/contrib/llvm/lib/Target/Sparc/SparcMCInstLower.cpp head/contrib/llvm/lib/Target/Sparc/SparcRegisterInfo.cpp head/contrib/llvm/lib/Target/Sparc/SparcRegisterInfo.h head/contrib/llvm/lib/Target/Sparc/SparcRegisterInfo.td head/contrib/llvm/lib/Target/Sparc/SparcSelectionDAGInfo.cpp head/contrib/llvm/lib/Target/Sparc/SparcSelectionDAGInfo.h head/contrib/llvm/lib/Target/Sparc/SparcSubtarget.cpp head/contrib/llvm/lib/Target/Sparc/SparcSubtarget.h head/contrib/llvm/lib/Target/Sparc/SparcTargetMachine.cpp head/contrib/llvm/lib/Target/Sparc/SparcTargetMachine.h head/contrib/llvm/lib/Target/Sparc/SparcTargetObjectFile.cpp head/contrib/llvm/lib/Target/Sparc/SparcTargetObjectFile.h head/contrib/llvm/lib/Target/Sparc/SparcTargetStreamer.h head/contrib/llvm/lib/Target/SystemZ/AsmParser/SystemZAsmParser.cpp head/contrib/llvm/lib/Target/SystemZ/Disassembler/SystemZDisassembler.cpp head/contrib/llvm/lib/Target/SystemZ/InstPrinter/SystemZInstPrinter.cpp head/contrib/llvm/lib/Target/SystemZ/InstPrinter/SystemZInstPrinter.h head/contrib/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmBackend.cpp head/contrib/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmInfo.cpp head/contrib/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCAsmInfo.h head/contrib/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCCodeEmitter.cpp head/contrib/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCFixups.h head/contrib/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCObjectWriter.cpp head/contrib/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.cpp head/contrib/llvm/lib/Target/SystemZ/MCTargetDesc/SystemZMCTargetDesc.h head/contrib/llvm/lib/Target/SystemZ/README.txt head/contrib/llvm/lib/Target/SystemZ/SystemZ.h head/contrib/llvm/lib/Target/SystemZ/SystemZ.td head/contrib/llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp head/contrib/llvm/lib/Target/SystemZ/SystemZAsmPrinter.h head/contrib/llvm/lib/Target/SystemZ/SystemZCallingConv.h head/contrib/llvm/lib/Target/SystemZ/SystemZCallingConv.td head/contrib/llvm/lib/Target/SystemZ/SystemZConstantPoolValue.cpp head/contrib/llvm/lib/Target/SystemZ/SystemZConstantPoolValue.h head/contrib/llvm/lib/Target/SystemZ/SystemZElimCompare.cpp head/contrib/llvm/lib/Target/SystemZ/SystemZFrameLowering.cpp head/contrib/llvm/lib/Target/SystemZ/SystemZFrameLowering.h head/contrib/llvm/lib/Target/SystemZ/SystemZISelDAGToDAG.cpp head/contrib/llvm/lib/Target/SystemZ/SystemZISelLowering.cpp head/contrib/llvm/lib/Target/SystemZ/SystemZISelLowering.h head/contrib/llvm/lib/Target/SystemZ/SystemZInstrBuilder.h head/contrib/llvm/lib/Target/SystemZ/SystemZInstrFP.td head/contrib/llvm/lib/Target/SystemZ/SystemZInstrFormats.td head/contrib/llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp head/contrib/llvm/lib/Target/SystemZ/SystemZInstrInfo.h head/contrib/llvm/lib/Target/SystemZ/SystemZInstrInfo.td head/contrib/llvm/lib/Target/SystemZ/SystemZLongBranch.cpp head/contrib/llvm/lib/Target/SystemZ/SystemZMCInstLower.cpp head/contrib/llvm/lib/Target/SystemZ/SystemZMCInstLower.h head/contrib/llvm/lib/Target/SystemZ/SystemZMachineFunctionInfo.h head/contrib/llvm/lib/Target/SystemZ/SystemZOperands.td head/contrib/llvm/lib/Target/SystemZ/SystemZOperators.td head/contrib/llvm/lib/Target/SystemZ/SystemZPatterns.td head/contrib/llvm/lib/Target/SystemZ/SystemZProcessors.td head/contrib/llvm/lib/Target/SystemZ/SystemZRegisterInfo.cpp head/contrib/llvm/lib/Target/SystemZ/SystemZRegisterInfo.h head/contrib/llvm/lib/Target/SystemZ/SystemZRegisterInfo.td head/contrib/llvm/lib/Target/SystemZ/SystemZSelectionDAGInfo.cpp head/contrib/llvm/lib/Target/SystemZ/SystemZSelectionDAGInfo.h head/contrib/llvm/lib/Target/SystemZ/SystemZShortenInst.cpp head/contrib/llvm/lib/Target/SystemZ/SystemZSubtarget.cpp head/contrib/llvm/lib/Target/SystemZ/SystemZSubtarget.h head/contrib/llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp head/contrib/llvm/lib/Target/SystemZ/SystemZTargetMachine.h head/contrib/llvm/lib/Target/Target.cpp head/contrib/llvm/lib/Target/TargetLibraryInfo.cpp head/contrib/llvm/lib/Target/TargetLoweringObjectFile.cpp head/contrib/llvm/lib/Target/TargetMachine.cpp head/contrib/llvm/lib/Target/TargetMachineC.cpp head/contrib/llvm/lib/Target/TargetSubtargetInfo.cpp head/contrib/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp head/contrib/llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp head/contrib/llvm/lib/Target/X86/Disassembler/X86Disassembler.h head/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.h head/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoderCommon.h head/contrib/llvm/lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp head/contrib/llvm/lib/Target/X86/InstPrinter/X86ATTInstPrinter.h head/contrib/llvm/lib/Target/X86/InstPrinter/X86InstComments.cpp head/contrib/llvm/lib/Target/X86/InstPrinter/X86IntelInstPrinter.cpp head/contrib/llvm/lib/Target/X86/InstPrinter/X86IntelInstPrinter.h head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86BaseInfo.h head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86ELFObjectWriter.cpp head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86ELFRelocationInfo.cpp head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86FixupKinds.h head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.cpp head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCAsmInfo.h head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCCodeEmitter.cpp head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.cpp head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MCTargetDesc.h head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MachORelocationInfo.cpp head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86MachObjectWriter.cpp head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp head/contrib/llvm/lib/Target/X86/TargetInfo/X86TargetInfo.cpp head/contrib/llvm/lib/Target/X86/Utils/X86ShuffleDecode.cpp head/contrib/llvm/lib/Target/X86/Utils/X86ShuffleDecode.h head/contrib/llvm/lib/Target/X86/X86.h head/contrib/llvm/lib/Target/X86/X86.td head/contrib/llvm/lib/Target/X86/X86AsmPrinter.cpp head/contrib/llvm/lib/Target/X86/X86AsmPrinter.h head/contrib/llvm/lib/Target/X86/X86CallingConv.td head/contrib/llvm/lib/Target/X86/X86CodeEmitter.cpp head/contrib/llvm/lib/Target/X86/X86FastISel.cpp head/contrib/llvm/lib/Target/X86/X86FixupLEAs.cpp head/contrib/llvm/lib/Target/X86/X86FloatingPoint.cpp head/contrib/llvm/lib/Target/X86/X86FrameLowering.cpp head/contrib/llvm/lib/Target/X86/X86FrameLowering.h head/contrib/llvm/lib/Target/X86/X86ISelDAGToDAG.cpp head/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp head/contrib/llvm/lib/Target/X86/X86ISelLowering.h head/contrib/llvm/lib/Target/X86/X86InstrAVX512.td head/contrib/llvm/lib/Target/X86/X86InstrArithmetic.td head/contrib/llvm/lib/Target/X86/X86InstrBuilder.h head/contrib/llvm/lib/Target/X86/X86InstrCMovSetCC.td head/contrib/llvm/lib/Target/X86/X86InstrCompiler.td head/contrib/llvm/lib/Target/X86/X86InstrControl.td head/contrib/llvm/lib/Target/X86/X86InstrExtension.td head/contrib/llvm/lib/Target/X86/X86InstrFMA.td head/contrib/llvm/lib/Target/X86/X86InstrFPStack.td head/contrib/llvm/lib/Target/X86/X86InstrFormats.td head/contrib/llvm/lib/Target/X86/X86InstrFragmentsSIMD.td head/contrib/llvm/lib/Target/X86/X86InstrInfo.cpp head/contrib/llvm/lib/Target/X86/X86InstrInfo.h head/contrib/llvm/lib/Target/X86/X86InstrInfo.td head/contrib/llvm/lib/Target/X86/X86InstrMMX.td head/contrib/llvm/lib/Target/X86/X86InstrSSE.td head/contrib/llvm/lib/Target/X86/X86InstrSVM.td head/contrib/llvm/lib/Target/X86/X86InstrShiftRotate.td head/contrib/llvm/lib/Target/X86/X86InstrSystem.td head/contrib/llvm/lib/Target/X86/X86InstrTSX.td head/contrib/llvm/lib/Target/X86/X86InstrVMX.td head/contrib/llvm/lib/Target/X86/X86InstrXOP.td head/contrib/llvm/lib/Target/X86/X86JITInfo.cpp head/contrib/llvm/lib/Target/X86/X86JITInfo.h head/contrib/llvm/lib/Target/X86/X86MCInstLower.cpp head/contrib/llvm/lib/Target/X86/X86PadShortFunction.cpp head/contrib/llvm/lib/Target/X86/X86RegisterInfo.cpp head/contrib/llvm/lib/Target/X86/X86RegisterInfo.h head/contrib/llvm/lib/Target/X86/X86RegisterInfo.td head/contrib/llvm/lib/Target/X86/X86SchedHaswell.td head/contrib/llvm/lib/Target/X86/X86SchedSandyBridge.td head/contrib/llvm/lib/Target/X86/X86Schedule.td head/contrib/llvm/lib/Target/X86/X86ScheduleAtom.td head/contrib/llvm/lib/Target/X86/X86ScheduleSLM.td head/contrib/llvm/lib/Target/X86/X86SelectionDAGInfo.cpp head/contrib/llvm/lib/Target/X86/X86SelectionDAGInfo.h head/contrib/llvm/lib/Target/X86/X86Subtarget.cpp head/contrib/llvm/lib/Target/X86/X86Subtarget.h head/contrib/llvm/lib/Target/X86/X86TargetMachine.cpp head/contrib/llvm/lib/Target/X86/X86TargetMachine.h head/contrib/llvm/lib/Target/X86/X86TargetObjectFile.cpp head/contrib/llvm/lib/Target/X86/X86TargetObjectFile.h head/contrib/llvm/lib/Target/X86/X86TargetTransformInfo.cpp head/contrib/llvm/lib/Target/X86/X86VZeroUpper.cpp head/contrib/llvm/lib/Target/XCore/Disassembler/XCoreDisassembler.cpp head/contrib/llvm/lib/Target/XCore/InstPrinter/XCoreInstPrinter.cpp head/contrib/llvm/lib/Target/XCore/InstPrinter/XCoreInstPrinter.h head/contrib/llvm/lib/Target/XCore/MCTargetDesc/XCoreMCAsmInfo.cpp head/contrib/llvm/lib/Target/XCore/MCTargetDesc/XCoreMCAsmInfo.h head/contrib/llvm/lib/Target/XCore/MCTargetDesc/XCoreMCTargetDesc.cpp head/contrib/llvm/lib/Target/XCore/XCore.h head/contrib/llvm/lib/Target/XCore/XCore.td head/contrib/llvm/lib/Target/XCore/XCoreAsmPrinter.cpp head/contrib/llvm/lib/Target/XCore/XCoreCallingConv.td head/contrib/llvm/lib/Target/XCore/XCoreFrameLowering.cpp head/contrib/llvm/lib/Target/XCore/XCoreFrameLowering.h head/contrib/llvm/lib/Target/XCore/XCoreISelDAGToDAG.cpp head/contrib/llvm/lib/Target/XCore/XCoreISelLowering.cpp head/contrib/llvm/lib/Target/XCore/XCoreISelLowering.h head/contrib/llvm/lib/Target/XCore/XCoreInstrInfo.cpp head/contrib/llvm/lib/Target/XCore/XCoreInstrInfo.h head/contrib/llvm/lib/Target/XCore/XCoreInstrInfo.td head/contrib/llvm/lib/Target/XCore/XCoreLowerThreadLocal.cpp head/contrib/llvm/lib/Target/XCore/XCoreMCInstLower.cpp head/contrib/llvm/lib/Target/XCore/XCoreMachineFunctionInfo.cpp head/contrib/llvm/lib/Target/XCore/XCoreMachineFunctionInfo.h head/contrib/llvm/lib/Target/XCore/XCoreRegisterInfo.cpp head/contrib/llvm/lib/Target/XCore/XCoreRegisterInfo.h head/contrib/llvm/lib/Target/XCore/XCoreSelectionDAGInfo.cpp head/contrib/llvm/lib/Target/XCore/XCoreSelectionDAGInfo.h head/contrib/llvm/lib/Target/XCore/XCoreSubtarget.cpp head/contrib/llvm/lib/Target/XCore/XCoreSubtarget.h head/contrib/llvm/lib/Target/XCore/XCoreTargetMachine.cpp head/contrib/llvm/lib/Target/XCore/XCoreTargetMachine.h head/contrib/llvm/lib/Target/XCore/XCoreTargetObjectFile.cpp head/contrib/llvm/lib/Target/XCore/XCoreTargetObjectFile.h head/contrib/llvm/lib/Target/XCore/XCoreTargetTransformInfo.cpp head/contrib/llvm/lib/Transforms/IPO/ArgumentPromotion.cpp head/contrib/llvm/lib/Transforms/IPO/BarrierNoopPass.cpp head/contrib/llvm/lib/Transforms/IPO/ConstantMerge.cpp head/contrib/llvm/lib/Transforms/IPO/DeadArgumentElimination.cpp head/contrib/llvm/lib/Transforms/IPO/ExtractGV.cpp head/contrib/llvm/lib/Transforms/IPO/FunctionAttrs.cpp head/contrib/llvm/lib/Transforms/IPO/GlobalDCE.cpp head/contrib/llvm/lib/Transforms/IPO/GlobalOpt.cpp head/contrib/llvm/lib/Transforms/IPO/IPConstantPropagation.cpp head/contrib/llvm/lib/Transforms/IPO/IPO.cpp head/contrib/llvm/lib/Transforms/IPO/InlineAlways.cpp head/contrib/llvm/lib/Transforms/IPO/InlineSimple.cpp head/contrib/llvm/lib/Transforms/IPO/Inliner.cpp head/contrib/llvm/lib/Transforms/IPO/Internalize.cpp head/contrib/llvm/lib/Transforms/IPO/LoopExtractor.cpp head/contrib/llvm/lib/Transforms/IPO/MergeFunctions.cpp head/contrib/llvm/lib/Transforms/IPO/PartialInlining.cpp head/contrib/llvm/lib/Transforms/IPO/PassManagerBuilder.cpp head/contrib/llvm/lib/Transforms/IPO/PruneEH.cpp head/contrib/llvm/lib/Transforms/IPO/StripDeadPrototypes.cpp head/contrib/llvm/lib/Transforms/IPO/StripSymbols.cpp head/contrib/llvm/lib/Transforms/InstCombine/InstCombine.h head/contrib/llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp head/contrib/llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp head/contrib/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp head/contrib/llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp head/contrib/llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp head/contrib/llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp head/contrib/llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp head/contrib/llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp head/contrib/llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp head/contrib/llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp head/contrib/llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp head/contrib/llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp head/contrib/llvm/lib/Transforms/InstCombine/InstCombineWorklist.h head/contrib/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp head/contrib/llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp head/contrib/llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp head/contrib/llvm/lib/Transforms/Instrumentation/DataFlowSanitizer.cpp head/contrib/llvm/lib/Transforms/Instrumentation/DebugIR.cpp head/contrib/llvm/lib/Transforms/Instrumentation/DebugIR.h head/contrib/llvm/lib/Transforms/Instrumentation/GCOVProfiling.cpp head/contrib/llvm/lib/Transforms/Instrumentation/Instrumentation.cpp head/contrib/llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp head/contrib/llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp head/contrib/llvm/lib/Transforms/ObjCARC/ARCRuntimeEntryPoints.h head/contrib/llvm/lib/Transforms/ObjCARC/DependencyAnalysis.cpp head/contrib/llvm/lib/Transforms/ObjCARC/ObjCARC.h head/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCAPElim.cpp head/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCAliasAnalysis.cpp head/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCAliasAnalysis.h head/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCContract.cpp head/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCExpand.cpp head/contrib/llvm/lib/Transforms/ObjCARC/ObjCARCOpts.cpp head/contrib/llvm/lib/Transforms/ObjCARC/ProvenanceAnalysis.cpp head/contrib/llvm/lib/Transforms/Scalar/ADCE.cpp head/contrib/llvm/lib/Transforms/Scalar/ConstantProp.cpp head/contrib/llvm/lib/Transforms/Scalar/CorrelatedValuePropagation.cpp head/contrib/llvm/lib/Transforms/Scalar/DCE.cpp head/contrib/llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp head/contrib/llvm/lib/Transforms/Scalar/EarlyCSE.cpp head/contrib/llvm/lib/Transforms/Scalar/FlattenCFGPass.cpp head/contrib/llvm/lib/Transforms/Scalar/GVN.cpp head/contrib/llvm/lib/Transforms/Scalar/IndVarSimplify.cpp head/contrib/llvm/lib/Transforms/Scalar/JumpThreading.cpp head/contrib/llvm/lib/Transforms/Scalar/LICM.cpp head/contrib/llvm/lib/Transforms/Scalar/LoopDeletion.cpp head/contrib/llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp head/contrib/llvm/lib/Transforms/Scalar/LoopInstSimplify.cpp head/contrib/llvm/lib/Transforms/Scalar/LoopRerollPass.cpp head/contrib/llvm/lib/Transforms/Scalar/LoopRotation.cpp head/contrib/llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp head/contrib/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp head/contrib/llvm/lib/Transforms/Scalar/LoopUnswitch.cpp head/contrib/llvm/lib/Transforms/Scalar/LowerAtomic.cpp head/contrib/llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp head/contrib/llvm/lib/Transforms/Scalar/PartiallyInlineLibCalls.cpp head/contrib/llvm/lib/Transforms/Scalar/Reassociate.cpp head/contrib/llvm/lib/Transforms/Scalar/Reg2Mem.cpp head/contrib/llvm/lib/Transforms/Scalar/SCCP.cpp head/contrib/llvm/lib/Transforms/Scalar/SROA.cpp head/contrib/llvm/lib/Transforms/Scalar/SampleProfile.cpp head/contrib/llvm/lib/Transforms/Scalar/Scalar.cpp head/contrib/llvm/lib/Transforms/Scalar/ScalarReplAggregates.cpp head/contrib/llvm/lib/Transforms/Scalar/SimplifyCFGPass.cpp head/contrib/llvm/lib/Transforms/Scalar/Sink.cpp head/contrib/llvm/lib/Transforms/Scalar/StructurizeCFG.cpp head/contrib/llvm/lib/Transforms/Scalar/TailRecursionElimination.cpp head/contrib/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp head/contrib/llvm/lib/Transforms/Utils/BreakCriticalEdges.cpp head/contrib/llvm/lib/Transforms/Utils/BuildLibCalls.cpp head/contrib/llvm/lib/Transforms/Utils/BypassSlowDivision.cpp head/contrib/llvm/lib/Transforms/Utils/CloneFunction.cpp head/contrib/llvm/lib/Transforms/Utils/CloneModule.cpp head/contrib/llvm/lib/Transforms/Utils/CmpInstAnalysis.cpp head/contrib/llvm/lib/Transforms/Utils/CodeExtractor.cpp head/contrib/llvm/lib/Transforms/Utils/DemoteRegToStack.cpp head/contrib/llvm/lib/Transforms/Utils/FlattenCFG.cpp head/contrib/llvm/lib/Transforms/Utils/GlobalStatus.cpp head/contrib/llvm/lib/Transforms/Utils/InlineFunction.cpp head/contrib/llvm/lib/Transforms/Utils/InstructionNamer.cpp head/contrib/llvm/lib/Transforms/Utils/IntegerDivision.cpp head/contrib/llvm/lib/Transforms/Utils/LCSSA.cpp head/contrib/llvm/lib/Transforms/Utils/Local.cpp head/contrib/llvm/lib/Transforms/Utils/LoopSimplify.cpp head/contrib/llvm/lib/Transforms/Utils/LoopUnroll.cpp head/contrib/llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp head/contrib/llvm/lib/Transforms/Utils/LowerExpectIntrinsic.cpp head/contrib/llvm/lib/Transforms/Utils/LowerInvoke.cpp head/contrib/llvm/lib/Transforms/Utils/LowerSwitch.cpp head/contrib/llvm/lib/Transforms/Utils/Mem2Reg.cpp head/contrib/llvm/lib/Transforms/Utils/MetaRenamer.cpp head/contrib/llvm/lib/Transforms/Utils/ModuleUtils.cpp head/contrib/llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp head/contrib/llvm/lib/Transforms/Utils/SSAUpdater.cpp head/contrib/llvm/lib/Transforms/Utils/SimplifyCFG.cpp head/contrib/llvm/lib/Transforms/Utils/SimplifyIndVar.cpp head/contrib/llvm/lib/Transforms/Utils/SimplifyInstructions.cpp head/contrib/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp head/contrib/llvm/lib/Transforms/Utils/UnifyFunctionExitNodes.cpp head/contrib/llvm/lib/Transforms/Utils/Utils.cpp head/contrib/llvm/lib/Transforms/Utils/ValueMapper.cpp head/contrib/llvm/lib/Transforms/Vectorize/BBVectorize.cpp head/contrib/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp head/contrib/llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp head/contrib/llvm/lib/Transforms/Vectorize/Vectorize.cpp head/contrib/llvm/patches/README.TXT head/contrib/llvm/tools/bugpoint/BugDriver.cpp head/contrib/llvm/tools/bugpoint/BugDriver.h head/contrib/llvm/tools/bugpoint/CrashDebugger.cpp head/contrib/llvm/tools/bugpoint/ExecutionDriver.cpp head/contrib/llvm/tools/bugpoint/ExtractFunction.cpp head/contrib/llvm/tools/bugpoint/FindBugs.cpp head/contrib/llvm/tools/bugpoint/Miscompilation.cpp head/contrib/llvm/tools/bugpoint/OptimizerDriver.cpp head/contrib/llvm/tools/bugpoint/ToolRunner.cpp head/contrib/llvm/tools/bugpoint/ToolRunner.h head/contrib/llvm/tools/bugpoint/bugpoint.cpp head/contrib/llvm/tools/clang/LICENSE.TXT head/contrib/llvm/tools/clang/include/clang-c/CXString.h head/contrib/llvm/tools/clang/include/clang-c/Index.h head/contrib/llvm/tools/clang/include/clang/ARCMigrate/ARCMT.h head/contrib/llvm/tools/clang/include/clang/ARCMigrate/ARCMTActions.h head/contrib/llvm/tools/clang/include/clang/ARCMigrate/FileRemapper.h head/contrib/llvm/tools/clang/include/clang/AST/APValue.h head/contrib/llvm/tools/clang/include/clang/AST/ASTConsumer.h head/contrib/llvm/tools/clang/include/clang/AST/ASTContext.h head/contrib/llvm/tools/clang/include/clang/AST/ASTDiagnostic.h head/contrib/llvm/tools/clang/include/clang/AST/ASTImporter.h head/contrib/llvm/tools/clang/include/clang/AST/ASTLambda.h head/contrib/llvm/tools/clang/include/clang/AST/ASTMutationListener.h head/contrib/llvm/tools/clang/include/clang/AST/ASTTypeTraits.h head/contrib/llvm/tools/clang/include/clang/AST/ASTUnresolvedSet.h head/contrib/llvm/tools/clang/include/clang/AST/ASTVector.h head/contrib/llvm/tools/clang/include/clang/AST/Attr.h head/contrib/llvm/tools/clang/include/clang/AST/AttrIterator.h head/contrib/llvm/tools/clang/include/clang/AST/CXXInheritance.h head/contrib/llvm/tools/clang/include/clang/AST/CanonicalType.h head/contrib/llvm/tools/clang/include/clang/AST/CharUnits.h head/contrib/llvm/tools/clang/include/clang/AST/Comment.h head/contrib/llvm/tools/clang/include/clang/AST/CommentCommands.td head/contrib/llvm/tools/clang/include/clang/AST/CommentHTMLTags.td head/contrib/llvm/tools/clang/include/clang/AST/CommentLexer.h head/contrib/llvm/tools/clang/include/clang/AST/CommentSema.h head/contrib/llvm/tools/clang/include/clang/AST/Decl.h head/contrib/llvm/tools/clang/include/clang/AST/DeclBase.h head/contrib/llvm/tools/clang/include/clang/AST/DeclCXX.h head/contrib/llvm/tools/clang/include/clang/AST/DeclContextInternals.h head/contrib/llvm/tools/clang/include/clang/AST/DeclFriend.h head/contrib/llvm/tools/clang/include/clang/AST/DeclGroup.h head/contrib/llvm/tools/clang/include/clang/AST/DeclLookups.h head/contrib/llvm/tools/clang/include/clang/AST/DeclObjC.h head/contrib/llvm/tools/clang/include/clang/AST/DeclOpenMP.h head/contrib/llvm/tools/clang/include/clang/AST/DeclTemplate.h head/contrib/llvm/tools/clang/include/clang/AST/DeclarationName.h head/contrib/llvm/tools/clang/include/clang/AST/DependentDiagnostic.h head/contrib/llvm/tools/clang/include/clang/AST/Expr.h head/contrib/llvm/tools/clang/include/clang/AST/ExprCXX.h head/contrib/llvm/tools/clang/include/clang/AST/ExprObjC.h head/contrib/llvm/tools/clang/include/clang/AST/ExternalASTSource.h head/contrib/llvm/tools/clang/include/clang/AST/Mangle.h head/contrib/llvm/tools/clang/include/clang/AST/MangleNumberingContext.h head/contrib/llvm/tools/clang/include/clang/AST/NestedNameSpecifier.h head/contrib/llvm/tools/clang/include/clang/AST/OperationKinds.h head/contrib/llvm/tools/clang/include/clang/AST/ParentMap.h head/contrib/llvm/tools/clang/include/clang/AST/PrettyPrinter.h head/contrib/llvm/tools/clang/include/clang/AST/RawCommentList.h head/contrib/llvm/tools/clang/include/clang/AST/RecordLayout.h head/contrib/llvm/tools/clang/include/clang/AST/RecursiveASTVisitor.h head/contrib/llvm/tools/clang/include/clang/AST/Redeclarable.h head/contrib/llvm/tools/clang/include/clang/AST/Stmt.h head/contrib/llvm/tools/clang/include/clang/AST/StmtCXX.h head/contrib/llvm/tools/clang/include/clang/AST/StmtIterator.h head/contrib/llvm/tools/clang/include/clang/AST/StmtObjC.h head/contrib/llvm/tools/clang/include/clang/AST/StmtOpenMP.h head/contrib/llvm/tools/clang/include/clang/AST/TemplateBase.h head/contrib/llvm/tools/clang/include/clang/AST/TemplateName.h head/contrib/llvm/tools/clang/include/clang/AST/Type.h head/contrib/llvm/tools/clang/include/clang/AST/TypeLoc.h head/contrib/llvm/tools/clang/include/clang/AST/TypeNodes.def head/contrib/llvm/tools/clang/include/clang/AST/UnresolvedSet.h head/contrib/llvm/tools/clang/include/clang/AST/VTableBuilder.h head/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchFinder.h head/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchers.h head/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchersInternal.h head/contrib/llvm/tools/clang/include/clang/ASTMatchers/ASTMatchersMacros.h head/contrib/llvm/tools/clang/include/clang/ASTMatchers/Dynamic/Diagnostics.h head/contrib/llvm/tools/clang/include/clang/ASTMatchers/Dynamic/Parser.h head/contrib/llvm/tools/clang/include/clang/ASTMatchers/Dynamic/Registry.h head/contrib/llvm/tools/clang/include/clang/ASTMatchers/Dynamic/VariantValue.h head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/Consumed.h head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/Dominators.h head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/FormatString.h head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/LiveVariables.h head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/PostOrderCFGView.h head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ReachableCode.h head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafety.h head/contrib/llvm/tools/clang/include/clang/Analysis/AnalysisContext.h head/contrib/llvm/tools/clang/include/clang/Analysis/CFG.h head/contrib/llvm/tools/clang/include/clang/Analysis/ProgramPoint.h head/contrib/llvm/tools/clang/include/clang/Analysis/Support/BumpVector.h head/contrib/llvm/tools/clang/include/clang/Basic/ABI.h head/contrib/llvm/tools/clang/include/clang/Basic/Attr.td head/contrib/llvm/tools/clang/include/clang/Basic/AttrKinds.h head/contrib/llvm/tools/clang/include/clang/Basic/Builtins.def head/contrib/llvm/tools/clang/include/clang/Basic/Builtins.h head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsAArch64.def head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsARM.def head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsMips.def head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsX86.def head/contrib/llvm/tools/clang/include/clang/Basic/Diagnostic.h head/contrib/llvm/tools/clang/include/clang/Basic/Diagnostic.td head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticASTKinds.td head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCategories.td head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCommentKinds.td head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticCommonKinds.td head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticDriverKinds.td head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticFrontendKinds.td head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticGroups.td head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticIDs.h head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticLexKinds.td head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticOptions.h head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticParseKinds.td head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSemaKinds.td head/contrib/llvm/tools/clang/include/clang/Basic/DiagnosticSerializationKinds.td head/contrib/llvm/tools/clang/include/clang/Basic/FileManager.h head/contrib/llvm/tools/clang/include/clang/Basic/FileSystemStatCache.h head/contrib/llvm/tools/clang/include/clang/Basic/IdentifierTable.h head/contrib/llvm/tools/clang/include/clang/Basic/LLVM.h head/contrib/llvm/tools/clang/include/clang/Basic/LangOptions.def head/contrib/llvm/tools/clang/include/clang/Basic/LangOptions.h head/contrib/llvm/tools/clang/include/clang/Basic/Linkage.h head/contrib/llvm/tools/clang/include/clang/Basic/Module.h head/contrib/llvm/tools/clang/include/clang/Basic/ObjCRuntime.h head/contrib/llvm/tools/clang/include/clang/Basic/OpenMPKinds.def head/contrib/llvm/tools/clang/include/clang/Basic/OpenMPKinds.h head/contrib/llvm/tools/clang/include/clang/Basic/OperatorKinds.h head/contrib/llvm/tools/clang/include/clang/Basic/PartialDiagnostic.h head/contrib/llvm/tools/clang/include/clang/Basic/PrettyStackTrace.h head/contrib/llvm/tools/clang/include/clang/Basic/Sanitizers.def head/contrib/llvm/tools/clang/include/clang/Basic/SourceLocation.h head/contrib/llvm/tools/clang/include/clang/Basic/SourceManager.h head/contrib/llvm/tools/clang/include/clang/Basic/Specifiers.h head/contrib/llvm/tools/clang/include/clang/Basic/StmtNodes.td head/contrib/llvm/tools/clang/include/clang/Basic/TargetBuiltins.h head/contrib/llvm/tools/clang/include/clang/Basic/TargetCXXABI.h head/contrib/llvm/tools/clang/include/clang/Basic/TargetInfo.h head/contrib/llvm/tools/clang/include/clang/Basic/TargetOptions.h head/contrib/llvm/tools/clang/include/clang/Basic/TemplateKinds.h head/contrib/llvm/tools/clang/include/clang/Basic/TokenKinds.def head/contrib/llvm/tools/clang/include/clang/Basic/TokenKinds.h head/contrib/llvm/tools/clang/include/clang/Basic/TypeTraits.h head/contrib/llvm/tools/clang/include/clang/Basic/Version.h head/contrib/llvm/tools/clang/include/clang/Basic/VersionTuple.h head/contrib/llvm/tools/clang/include/clang/Basic/arm_neon.td head/contrib/llvm/tools/clang/include/clang/CodeGen/BackendUtil.h head/contrib/llvm/tools/clang/include/clang/CodeGen/CGFunctionInfo.h head/contrib/llvm/tools/clang/include/clang/CodeGen/CodeGenABITypes.h head/contrib/llvm/tools/clang/include/clang/CodeGen/CodeGenAction.h head/contrib/llvm/tools/clang/include/clang/CodeGen/ModuleBuilder.h head/contrib/llvm/tools/clang/include/clang/Driver/Action.h head/contrib/llvm/tools/clang/include/clang/Driver/CC1Options.td head/contrib/llvm/tools/clang/include/clang/Driver/CLCompatOptions.td head/contrib/llvm/tools/clang/include/clang/Driver/Compilation.h head/contrib/llvm/tools/clang/include/clang/Driver/Driver.h head/contrib/llvm/tools/clang/include/clang/Driver/Job.h head/contrib/llvm/tools/clang/include/clang/Driver/Options.h head/contrib/llvm/tools/clang/include/clang/Driver/Options.td head/contrib/llvm/tools/clang/include/clang/Driver/SanitizerArgs.h head/contrib/llvm/tools/clang/include/clang/Driver/ToolChain.h head/contrib/llvm/tools/clang/include/clang/Driver/Types.def head/contrib/llvm/tools/clang/include/clang/Edit/Commit.h head/contrib/llvm/tools/clang/include/clang/Edit/EditedSource.h head/contrib/llvm/tools/clang/include/clang/Edit/FileOffset.h head/contrib/llvm/tools/clang/include/clang/Format/Format.h head/contrib/llvm/tools/clang/include/clang/Frontend/ASTUnit.h head/contrib/llvm/tools/clang/include/clang/Frontend/ChainedDiagnosticConsumer.h head/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.def head/contrib/llvm/tools/clang/include/clang/Frontend/CodeGenOptions.h head/contrib/llvm/tools/clang/include/clang/Frontend/CompilerInstance.h head/contrib/llvm/tools/clang/include/clang/Frontend/CompilerInvocation.h head/contrib/llvm/tools/clang/include/clang/Frontend/DependencyOutputOptions.h head/contrib/llvm/tools/clang/include/clang/Frontend/DiagnosticRenderer.h head/contrib/llvm/tools/clang/include/clang/Frontend/FrontendAction.h head/contrib/llvm/tools/clang/include/clang/Frontend/FrontendActions.h head/contrib/llvm/tools/clang/include/clang/Frontend/FrontendOptions.h head/contrib/llvm/tools/clang/include/clang/Frontend/FrontendPluginRegistry.h head/contrib/llvm/tools/clang/include/clang/Frontend/LangStandard.h head/contrib/llvm/tools/clang/include/clang/Frontend/LangStandards.def head/contrib/llvm/tools/clang/include/clang/Frontend/LayoutOverrideSource.h head/contrib/llvm/tools/clang/include/clang/Frontend/LogDiagnosticPrinter.h head/contrib/llvm/tools/clang/include/clang/Frontend/MultiplexConsumer.h head/contrib/llvm/tools/clang/include/clang/Frontend/SerializedDiagnosticPrinter.h head/contrib/llvm/tools/clang/include/clang/Frontend/TextDiagnostic.h head/contrib/llvm/tools/clang/include/clang/Frontend/TextDiagnosticBuffer.h head/contrib/llvm/tools/clang/include/clang/Frontend/TextDiagnosticPrinter.h head/contrib/llvm/tools/clang/include/clang/Frontend/Utils.h head/contrib/llvm/tools/clang/include/clang/Frontend/VerifyDiagnosticConsumer.h head/contrib/llvm/tools/clang/include/clang/Index/CommentToXML.h head/contrib/llvm/tools/clang/include/clang/Index/USRGeneration.h head/contrib/llvm/tools/clang/include/clang/Lex/DirectoryLookup.h head/contrib/llvm/tools/clang/include/clang/Lex/HeaderMap.h head/contrib/llvm/tools/clang/include/clang/Lex/HeaderSearch.h head/contrib/llvm/tools/clang/include/clang/Lex/HeaderSearchOptions.h head/contrib/llvm/tools/clang/include/clang/Lex/Lexer.h head/contrib/llvm/tools/clang/include/clang/Lex/LiteralSupport.h head/contrib/llvm/tools/clang/include/clang/Lex/MacroArgs.h head/contrib/llvm/tools/clang/include/clang/Lex/MacroInfo.h head/contrib/llvm/tools/clang/include/clang/Lex/ModuleLoader.h head/contrib/llvm/tools/clang/include/clang/Lex/ModuleMap.h head/contrib/llvm/tools/clang/include/clang/Lex/MultipleIncludeOpt.h head/contrib/llvm/tools/clang/include/clang/Lex/PPCallbacks.h head/contrib/llvm/tools/clang/include/clang/Lex/PPConditionalDirectiveRecord.h head/contrib/llvm/tools/clang/include/clang/Lex/PTHLexer.h head/contrib/llvm/tools/clang/include/clang/Lex/PTHManager.h head/contrib/llvm/tools/clang/include/clang/Lex/Pragma.h head/contrib/llvm/tools/clang/include/clang/Lex/PreprocessingRecord.h head/contrib/llvm/tools/clang/include/clang/Lex/Preprocessor.h head/contrib/llvm/tools/clang/include/clang/Lex/PreprocessorLexer.h head/contrib/llvm/tools/clang/include/clang/Lex/PreprocessorOptions.h head/contrib/llvm/tools/clang/include/clang/Lex/Token.h head/contrib/llvm/tools/clang/include/clang/Lex/TokenLexer.h head/contrib/llvm/tools/clang/include/clang/Parse/ParseAST.h head/contrib/llvm/tools/clang/include/clang/Parse/Parser.h head/contrib/llvm/tools/clang/include/clang/Rewrite/Core/HTMLRewrite.h head/contrib/llvm/tools/clang/include/clang/Rewrite/Core/RewriteRope.h head/contrib/llvm/tools/clang/include/clang/Rewrite/Core/Rewriter.h head/contrib/llvm/tools/clang/include/clang/Rewrite/Core/TokenRewriter.h head/contrib/llvm/tools/clang/include/clang/Rewrite/Frontend/FixItRewriter.h head/contrib/llvm/tools/clang/include/clang/Rewrite/Frontend/FrontendActions.h head/contrib/llvm/tools/clang/include/clang/Sema/AttributeList.h head/contrib/llvm/tools/clang/include/clang/Sema/CodeCompleteConsumer.h head/contrib/llvm/tools/clang/include/clang/Sema/DeclSpec.h head/contrib/llvm/tools/clang/include/clang/Sema/DelayedDiagnostic.h head/contrib/llvm/tools/clang/include/clang/Sema/IdentifierResolver.h head/contrib/llvm/tools/clang/include/clang/Sema/Initialization.h head/contrib/llvm/tools/clang/include/clang/Sema/Lookup.h head/contrib/llvm/tools/clang/include/clang/Sema/MultiplexExternalSemaSource.h head/contrib/llvm/tools/clang/include/clang/Sema/ObjCMethodList.h head/contrib/llvm/tools/clang/include/clang/Sema/Overload.h head/contrib/llvm/tools/clang/include/clang/Sema/Ownership.h head/contrib/llvm/tools/clang/include/clang/Sema/ParsedTemplate.h head/contrib/llvm/tools/clang/include/clang/Sema/PrettyDeclStackTrace.h head/contrib/llvm/tools/clang/include/clang/Sema/Scope.h head/contrib/llvm/tools/clang/include/clang/Sema/ScopeInfo.h head/contrib/llvm/tools/clang/include/clang/Sema/Sema.h head/contrib/llvm/tools/clang/include/clang/Sema/SemaInternal.h head/contrib/llvm/tools/clang/include/clang/Sema/SemaLambda.h head/contrib/llvm/tools/clang/include/clang/Sema/Template.h head/contrib/llvm/tools/clang/include/clang/Sema/TemplateDeduction.h head/contrib/llvm/tools/clang/include/clang/Sema/TypoCorrection.h head/contrib/llvm/tools/clang/include/clang/Sema/Weak.h head/contrib/llvm/tools/clang/include/clang/Serialization/ASTBitCodes.h head/contrib/llvm/tools/clang/include/clang/Serialization/ASTDeserializationListener.h head/contrib/llvm/tools/clang/include/clang/Serialization/ASTReader.h head/contrib/llvm/tools/clang/include/clang/Serialization/ASTWriter.h head/contrib/llvm/tools/clang/include/clang/Serialization/GlobalModuleIndex.h head/contrib/llvm/tools/clang/include/clang/Serialization/Module.h head/contrib/llvm/tools/clang/include/clang/Serialization/ModuleManager.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Checkers/ObjCRetainCount.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitor.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/BugType.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/Checker.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/CheckerManager.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/APSIntType.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/BlockCounter.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ConstraintManager.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramStateTrait.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SubEngine.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Core/PathSensitive/WorkList.h head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/FrontendActions.h head/contrib/llvm/tools/clang/include/clang/Tooling/ArgumentsAdjusters.h head/contrib/llvm/tools/clang/include/clang/Tooling/CommonOptionsParser.h head/contrib/llvm/tools/clang/include/clang/Tooling/CompilationDatabase.h head/contrib/llvm/tools/clang/include/clang/Tooling/FileMatchTrie.h head/contrib/llvm/tools/clang/include/clang/Tooling/JSONCompilationDatabase.h head/contrib/llvm/tools/clang/include/clang/Tooling/Refactoring.h head/contrib/llvm/tools/clang/include/clang/Tooling/RefactoringCallbacks.h head/contrib/llvm/tools/clang/include/clang/Tooling/ReplacementsYaml.h head/contrib/llvm/tools/clang/include/clang/Tooling/Tooling.h head/contrib/llvm/tools/clang/lib/ARCMigrate/ARCMT.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/FileRemapper.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/Internals.h head/contrib/llvm/tools/clang/lib/ARCMigrate/ObjCMT.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/PlistReporter.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/TransAPIUses.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/TransAutoreleasePool.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/TransBlockObjCVariable.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/TransEmptyStatementsAndDealloc.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/TransGCAttrs.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/TransGCCalls.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/TransProperties.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/TransProtectedScope.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/TransRetainReleaseDealloc.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/TransUnbridgedCasts.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/TransUnusedInitDelegate.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/TransZeroOutPropsInDealloc.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/TransformActions.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/Transforms.cpp head/contrib/llvm/tools/clang/lib/ARCMigrate/Transforms.h head/contrib/llvm/tools/clang/lib/AST/APValue.cpp head/contrib/llvm/tools/clang/lib/AST/ASTContext.cpp head/contrib/llvm/tools/clang/lib/AST/ASTDiagnostic.cpp head/contrib/llvm/tools/clang/lib/AST/ASTDumper.cpp head/contrib/llvm/tools/clang/lib/AST/ASTImporter.cpp head/contrib/llvm/tools/clang/lib/AST/ASTTypeTraits.cpp head/contrib/llvm/tools/clang/lib/AST/AttrImpl.cpp head/contrib/llvm/tools/clang/lib/AST/CXXABI.h head/contrib/llvm/tools/clang/lib/AST/CXXInheritance.cpp head/contrib/llvm/tools/clang/lib/AST/Comment.cpp head/contrib/llvm/tools/clang/lib/AST/CommentCommandTraits.cpp head/contrib/llvm/tools/clang/lib/AST/CommentLexer.cpp head/contrib/llvm/tools/clang/lib/AST/CommentParser.cpp head/contrib/llvm/tools/clang/lib/AST/CommentSema.cpp head/contrib/llvm/tools/clang/lib/AST/Decl.cpp head/contrib/llvm/tools/clang/lib/AST/DeclBase.cpp head/contrib/llvm/tools/clang/lib/AST/DeclCXX.cpp head/contrib/llvm/tools/clang/lib/AST/DeclFriend.cpp head/contrib/llvm/tools/clang/lib/AST/DeclObjC.cpp head/contrib/llvm/tools/clang/lib/AST/DeclOpenMP.cpp head/contrib/llvm/tools/clang/lib/AST/DeclPrinter.cpp head/contrib/llvm/tools/clang/lib/AST/DeclTemplate.cpp head/contrib/llvm/tools/clang/lib/AST/DeclarationName.cpp head/contrib/llvm/tools/clang/lib/AST/Expr.cpp head/contrib/llvm/tools/clang/lib/AST/ExprCXX.cpp head/contrib/llvm/tools/clang/lib/AST/ExprClassification.cpp head/contrib/llvm/tools/clang/lib/AST/ExprConstant.cpp head/contrib/llvm/tools/clang/lib/AST/ExternalASTSource.cpp head/contrib/llvm/tools/clang/lib/AST/InheritViz.cpp head/contrib/llvm/tools/clang/lib/AST/ItaniumCXXABI.cpp head/contrib/llvm/tools/clang/lib/AST/ItaniumMangle.cpp head/contrib/llvm/tools/clang/lib/AST/Mangle.cpp head/contrib/llvm/tools/clang/lib/AST/MangleNumberingContext.cpp head/contrib/llvm/tools/clang/lib/AST/MicrosoftCXXABI.cpp head/contrib/llvm/tools/clang/lib/AST/MicrosoftMangle.cpp head/contrib/llvm/tools/clang/lib/AST/NSAPI.cpp head/contrib/llvm/tools/clang/lib/AST/NestedNameSpecifier.cpp head/contrib/llvm/tools/clang/lib/AST/ParentMap.cpp head/contrib/llvm/tools/clang/lib/AST/RawCommentList.cpp head/contrib/llvm/tools/clang/lib/AST/RecordLayout.cpp head/contrib/llvm/tools/clang/lib/AST/RecordLayoutBuilder.cpp head/contrib/llvm/tools/clang/lib/AST/Stmt.cpp head/contrib/llvm/tools/clang/lib/AST/StmtIterator.cpp head/contrib/llvm/tools/clang/lib/AST/StmtPrinter.cpp head/contrib/llvm/tools/clang/lib/AST/StmtProfile.cpp head/contrib/llvm/tools/clang/lib/AST/TemplateBase.cpp head/contrib/llvm/tools/clang/lib/AST/TemplateName.cpp head/contrib/llvm/tools/clang/lib/AST/Type.cpp head/contrib/llvm/tools/clang/lib/AST/TypeLoc.cpp head/contrib/llvm/tools/clang/lib/AST/TypePrinter.cpp head/contrib/llvm/tools/clang/lib/AST/VTTBuilder.cpp head/contrib/llvm/tools/clang/lib/AST/VTableBuilder.cpp head/contrib/llvm/tools/clang/lib/ASTMatchers/ASTMatchFinder.cpp head/contrib/llvm/tools/clang/lib/ASTMatchers/ASTMatchersInternal.cpp head/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/Diagnostics.cpp head/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/Marshallers.h head/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/Parser.cpp head/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/Registry.cpp head/contrib/llvm/tools/clang/lib/ASTMatchers/Dynamic/VariantValue.cpp head/contrib/llvm/tools/clang/lib/Analysis/AnalysisDeclContext.cpp head/contrib/llvm/tools/clang/lib/Analysis/BodyFarm.cpp head/contrib/llvm/tools/clang/lib/Analysis/BodyFarm.h head/contrib/llvm/tools/clang/lib/Analysis/CFG.cpp head/contrib/llvm/tools/clang/lib/Analysis/CFGReachabilityAnalysis.cpp head/contrib/llvm/tools/clang/lib/Analysis/CFGStmtMap.cpp head/contrib/llvm/tools/clang/lib/Analysis/CallGraph.cpp head/contrib/llvm/tools/clang/lib/Analysis/Consumed.cpp head/contrib/llvm/tools/clang/lib/Analysis/FormatString.cpp head/contrib/llvm/tools/clang/lib/Analysis/FormatStringParsing.h head/contrib/llvm/tools/clang/lib/Analysis/LiveVariables.cpp head/contrib/llvm/tools/clang/lib/Analysis/PostOrderCFGView.cpp head/contrib/llvm/tools/clang/lib/Analysis/PrintfFormatString.cpp head/contrib/llvm/tools/clang/lib/Analysis/ProgramPoint.cpp head/contrib/llvm/tools/clang/lib/Analysis/PseudoConstantAnalysis.cpp head/contrib/llvm/tools/clang/lib/Analysis/ReachableCode.cpp head/contrib/llvm/tools/clang/lib/Analysis/ScanfFormatString.cpp head/contrib/llvm/tools/clang/lib/Analysis/ThreadSafety.cpp head/contrib/llvm/tools/clang/lib/Analysis/UninitializedValues.cpp head/contrib/llvm/tools/clang/lib/Basic/Builtins.cpp head/contrib/llvm/tools/clang/lib/Basic/Diagnostic.cpp head/contrib/llvm/tools/clang/lib/Basic/DiagnosticIDs.cpp head/contrib/llvm/tools/clang/lib/Basic/FileManager.cpp head/contrib/llvm/tools/clang/lib/Basic/FileSystemStatCache.cpp head/contrib/llvm/tools/clang/lib/Basic/IdentifierTable.cpp head/contrib/llvm/tools/clang/lib/Basic/Module.cpp head/contrib/llvm/tools/clang/lib/Basic/OpenMPKinds.cpp head/contrib/llvm/tools/clang/lib/Basic/SourceLocation.cpp head/contrib/llvm/tools/clang/lib/Basic/SourceManager.cpp head/contrib/llvm/tools/clang/lib/Basic/TargetInfo.cpp head/contrib/llvm/tools/clang/lib/Basic/Targets.cpp head/contrib/llvm/tools/clang/lib/Basic/TokenKinds.cpp head/contrib/llvm/tools/clang/lib/Basic/Version.cpp head/contrib/llvm/tools/clang/lib/CodeGen/ABIInfo.h head/contrib/llvm/tools/clang/lib/CodeGen/BackendUtil.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGAtomic.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGBlocks.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGBlocks.h head/contrib/llvm/tools/clang/lib/CodeGen/CGBuilder.h head/contrib/llvm/tools/clang/lib/CodeGen/CGBuiltin.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGCUDANV.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGCUDARuntime.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGCXX.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGCXXABI.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGCXXABI.h head/contrib/llvm/tools/clang/lib/CodeGen/CGCall.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGCall.h head/contrib/llvm/tools/clang/lib/CodeGen/CGClass.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGCleanup.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGCleanup.h head/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGDebugInfo.h head/contrib/llvm/tools/clang/lib/CodeGen/CGDecl.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGDeclCXX.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGException.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGExpr.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGExprAgg.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGExprCXX.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGExprComplex.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGExprConstant.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGExprScalar.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGObjC.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGObjCGNU.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGObjCMac.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGObjCRuntime.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGObjCRuntime.h head/contrib/llvm/tools/clang/lib/CodeGen/CGOpenCLRuntime.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGRecordLayout.h head/contrib/llvm/tools/clang/lib/CodeGen/CGRecordLayoutBuilder.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGStmt.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGVTT.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGVTables.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CGVTables.h head/contrib/llvm/tools/clang/lib/CodeGen/CGValue.h head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenABITypes.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenAction.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenFunction.h head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.h head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTBAA.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.cpp head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenTypes.h head/contrib/llvm/tools/clang/lib/CodeGen/EHScopeStack.h head/contrib/llvm/tools/clang/lib/CodeGen/ItaniumCXXABI.cpp head/contrib/llvm/tools/clang/lib/CodeGen/MicrosoftCXXABI.cpp head/contrib/llvm/tools/clang/lib/CodeGen/ModuleBuilder.cpp head/contrib/llvm/tools/clang/lib/CodeGen/TargetInfo.cpp head/contrib/llvm/tools/clang/lib/CodeGen/TargetInfo.h head/contrib/llvm/tools/clang/lib/Driver/Action.cpp head/contrib/llvm/tools/clang/lib/Driver/Compilation.cpp head/contrib/llvm/tools/clang/lib/Driver/Driver.cpp head/contrib/llvm/tools/clang/lib/Driver/Job.cpp head/contrib/llvm/tools/clang/lib/Driver/SanitizerArgs.cpp head/contrib/llvm/tools/clang/lib/Driver/ToolChain.cpp head/contrib/llvm/tools/clang/lib/Driver/ToolChains.cpp head/contrib/llvm/tools/clang/lib/Driver/ToolChains.h head/contrib/llvm/tools/clang/lib/Driver/Tools.cpp head/contrib/llvm/tools/clang/lib/Driver/Tools.h head/contrib/llvm/tools/clang/lib/Driver/Types.cpp head/contrib/llvm/tools/clang/lib/Driver/WindowsToolChain.cpp head/contrib/llvm/tools/clang/lib/Edit/Commit.cpp head/contrib/llvm/tools/clang/lib/Edit/EditedSource.cpp head/contrib/llvm/tools/clang/lib/Edit/RewriteObjCFoundationAPI.cpp head/contrib/llvm/tools/clang/lib/Format/BreakableToken.cpp head/contrib/llvm/tools/clang/lib/Format/BreakableToken.h head/contrib/llvm/tools/clang/lib/Format/ContinuationIndenter.cpp head/contrib/llvm/tools/clang/lib/Format/ContinuationIndenter.h head/contrib/llvm/tools/clang/lib/Format/Encoding.h head/contrib/llvm/tools/clang/lib/Format/Format.cpp head/contrib/llvm/tools/clang/lib/Format/FormatToken.cpp head/contrib/llvm/tools/clang/lib/Format/FormatToken.h head/contrib/llvm/tools/clang/lib/Format/TokenAnnotator.cpp head/contrib/llvm/tools/clang/lib/Format/TokenAnnotator.h head/contrib/llvm/tools/clang/lib/Format/UnwrappedLineParser.cpp head/contrib/llvm/tools/clang/lib/Format/UnwrappedLineParser.h head/contrib/llvm/tools/clang/lib/Format/WhitespaceManager.cpp head/contrib/llvm/tools/clang/lib/Format/WhitespaceManager.h head/contrib/llvm/tools/clang/lib/Frontend/ASTConsumers.cpp head/contrib/llvm/tools/clang/lib/Frontend/ASTMerge.cpp head/contrib/llvm/tools/clang/lib/Frontend/ASTUnit.cpp head/contrib/llvm/tools/clang/lib/Frontend/CacheTokens.cpp head/contrib/llvm/tools/clang/lib/Frontend/ChainedIncludesSource.cpp head/contrib/llvm/tools/clang/lib/Frontend/CompilerInstance.cpp head/contrib/llvm/tools/clang/lib/Frontend/CompilerInvocation.cpp head/contrib/llvm/tools/clang/lib/Frontend/CreateInvocationFromCommandLine.cpp head/contrib/llvm/tools/clang/lib/Frontend/DependencyFile.cpp head/contrib/llvm/tools/clang/lib/Frontend/DependencyGraph.cpp head/contrib/llvm/tools/clang/lib/Frontend/DiagnosticRenderer.cpp head/contrib/llvm/tools/clang/lib/Frontend/FrontendAction.cpp head/contrib/llvm/tools/clang/lib/Frontend/FrontendActions.cpp head/contrib/llvm/tools/clang/lib/Frontend/HeaderIncludeGen.cpp head/contrib/llvm/tools/clang/lib/Frontend/InitHeaderSearch.cpp head/contrib/llvm/tools/clang/lib/Frontend/InitPreprocessor.cpp head/contrib/llvm/tools/clang/lib/Frontend/LangStandards.cpp head/contrib/llvm/tools/clang/lib/Frontend/LogDiagnosticPrinter.cpp head/contrib/llvm/tools/clang/lib/Frontend/MultiplexConsumer.cpp head/contrib/llvm/tools/clang/lib/Frontend/PrintPreprocessedOutput.cpp head/contrib/llvm/tools/clang/lib/Frontend/SerializedDiagnosticPrinter.cpp head/contrib/llvm/tools/clang/lib/Frontend/TextDiagnostic.cpp head/contrib/llvm/tools/clang/lib/Frontend/TextDiagnosticBuffer.cpp head/contrib/llvm/tools/clang/lib/Frontend/TextDiagnosticPrinter.cpp head/contrib/llvm/tools/clang/lib/Frontend/VerifyDiagnosticConsumer.cpp head/contrib/llvm/tools/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp head/contrib/llvm/tools/clang/lib/Headers/Intrin.h head/contrib/llvm/tools/clang/lib/Headers/altivec.h head/contrib/llvm/tools/clang/lib/Headers/avx2intrin.h head/contrib/llvm/tools/clang/lib/Headers/avxintrin.h head/contrib/llvm/tools/clang/lib/Headers/bmiintrin.h head/contrib/llvm/tools/clang/lib/Headers/float.h head/contrib/llvm/tools/clang/lib/Headers/immintrin.h head/contrib/llvm/tools/clang/lib/Headers/limits.h head/contrib/llvm/tools/clang/lib/Headers/smmintrin.h head/contrib/llvm/tools/clang/lib/Headers/stdarg.h head/contrib/llvm/tools/clang/lib/Headers/stddef.h head/contrib/llvm/tools/clang/lib/Headers/stdint.h head/contrib/llvm/tools/clang/lib/Headers/x86intrin.h head/contrib/llvm/tools/clang/lib/Headers/xmmintrin.h head/contrib/llvm/tools/clang/lib/Index/CommentToXML.cpp head/contrib/llvm/tools/clang/lib/Index/SimpleFormatContext.h head/contrib/llvm/tools/clang/lib/Index/USRGeneration.cpp head/contrib/llvm/tools/clang/lib/Lex/HeaderMap.cpp head/contrib/llvm/tools/clang/lib/Lex/HeaderSearch.cpp head/contrib/llvm/tools/clang/lib/Lex/Lexer.cpp head/contrib/llvm/tools/clang/lib/Lex/LiteralSupport.cpp head/contrib/llvm/tools/clang/lib/Lex/MacroArgs.cpp head/contrib/llvm/tools/clang/lib/Lex/MacroInfo.cpp head/contrib/llvm/tools/clang/lib/Lex/ModuleMap.cpp head/contrib/llvm/tools/clang/lib/Lex/PPCaching.cpp head/contrib/llvm/tools/clang/lib/Lex/PPConditionalDirectiveRecord.cpp head/contrib/llvm/tools/clang/lib/Lex/PPDirectives.cpp head/contrib/llvm/tools/clang/lib/Lex/PPExpressions.cpp head/contrib/llvm/tools/clang/lib/Lex/PPLexerChange.cpp head/contrib/llvm/tools/clang/lib/Lex/PPMacroExpansion.cpp head/contrib/llvm/tools/clang/lib/Lex/PTHLexer.cpp head/contrib/llvm/tools/clang/lib/Lex/Pragma.cpp head/contrib/llvm/tools/clang/lib/Lex/PreprocessingRecord.cpp head/contrib/llvm/tools/clang/lib/Lex/Preprocessor.cpp head/contrib/llvm/tools/clang/lib/Lex/ScratchBuffer.cpp head/contrib/llvm/tools/clang/lib/Lex/TokenLexer.cpp head/contrib/llvm/tools/clang/lib/Lex/UnicodeCharSets.h head/contrib/llvm/tools/clang/lib/Parse/ParseAST.cpp head/contrib/llvm/tools/clang/lib/Parse/ParseCXXInlineMethods.cpp head/contrib/llvm/tools/clang/lib/Parse/ParseDecl.cpp head/contrib/llvm/tools/clang/lib/Parse/ParseDeclCXX.cpp head/contrib/llvm/tools/clang/lib/Parse/ParseExpr.cpp head/contrib/llvm/tools/clang/lib/Parse/ParseExprCXX.cpp head/contrib/llvm/tools/clang/lib/Parse/ParseInit.cpp head/contrib/llvm/tools/clang/lib/Parse/ParseObjc.cpp head/contrib/llvm/tools/clang/lib/Parse/ParseOpenMP.cpp head/contrib/llvm/tools/clang/lib/Parse/ParsePragma.cpp head/contrib/llvm/tools/clang/lib/Parse/ParseStmt.cpp head/contrib/llvm/tools/clang/lib/Parse/ParseTemplate.cpp head/contrib/llvm/tools/clang/lib/Parse/ParseTentative.cpp head/contrib/llvm/tools/clang/lib/Parse/Parser.cpp head/contrib/llvm/tools/clang/lib/Parse/RAIIObjectsForParser.h head/contrib/llvm/tools/clang/lib/Sema/AnalysisBasedWarnings.cpp head/contrib/llvm/tools/clang/lib/Sema/AttributeList.cpp head/contrib/llvm/tools/clang/lib/Sema/CodeCompleteConsumer.cpp head/contrib/llvm/tools/clang/lib/Sema/DeclSpec.cpp head/contrib/llvm/tools/clang/lib/Sema/DelayedDiagnostic.cpp head/contrib/llvm/tools/clang/lib/Sema/IdentifierResolver.cpp head/contrib/llvm/tools/clang/lib/Sema/JumpDiagnostics.cpp head/contrib/llvm/tools/clang/lib/Sema/MultiplexExternalSemaSource.cpp head/contrib/llvm/tools/clang/lib/Sema/Scope.cpp head/contrib/llvm/tools/clang/lib/Sema/ScopeInfo.cpp head/contrib/llvm/tools/clang/lib/Sema/Sema.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaAccess.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaAttr.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaCXXScopeSpec.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaCast.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaChecking.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaCodeComplete.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaDecl.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaDeclAttr.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaDeclCXX.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaDeclObjC.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaExceptionSpec.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaExpr.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaExprCXX.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaExprMember.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaExprObjC.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaInit.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaLambda.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaLookup.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaObjCProperty.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaOpenMP.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaOverload.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaPseudoObject.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaStmt.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaStmtAsm.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaStmtAttr.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaTemplate.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaTemplateDeduction.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiate.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaTemplateInstantiateDecl.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaTemplateVariadic.cpp head/contrib/llvm/tools/clang/lib/Sema/SemaType.cpp head/contrib/llvm/tools/clang/lib/Sema/TreeTransform.h head/contrib/llvm/tools/clang/lib/Sema/TypeLocBuilder.cpp head/contrib/llvm/tools/clang/lib/Sema/TypeLocBuilder.h head/contrib/llvm/tools/clang/lib/Serialization/ASTCommon.cpp head/contrib/llvm/tools/clang/lib/Serialization/ASTCommon.h head/contrib/llvm/tools/clang/lib/Serialization/ASTReader.cpp head/contrib/llvm/tools/clang/lib/Serialization/ASTReaderDecl.cpp head/contrib/llvm/tools/clang/lib/Serialization/ASTReaderInternals.h head/contrib/llvm/tools/clang/lib/Serialization/ASTReaderStmt.cpp head/contrib/llvm/tools/clang/lib/Serialization/ASTWriter.cpp head/contrib/llvm/tools/clang/lib/Serialization/ASTWriterDecl.cpp head/contrib/llvm/tools/clang/lib/Serialization/ASTWriterStmt.cpp head/contrib/llvm/tools/clang/lib/Serialization/GeneratePCH.cpp head/contrib/llvm/tools/clang/lib/Serialization/GlobalModuleIndex.cpp head/contrib/llvm/tools/clang/lib/Serialization/Module.cpp head/contrib/llvm/tools/clang/lib/Serialization/ModuleManager.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/AnalyzerStatsChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ArrayBoundChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BasicObjCFoundationChecks.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/BoolAssignmentChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CStringSyntaxChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CastSizeChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CastToStructChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckObjCInstMethSignature.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/CheckSizeofPointer.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/Checkers.td head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ChrootChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DeadStoresChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DebugCheckers.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DirectIvarAssignment.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DivZeroChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/DynamicTypePropagation.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/FixedAddressChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/GenericTaintChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IdenticalExprChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IvarInvalidationChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/LLVMConventionsChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MacOSXAPIChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MallocOverflowSecurityChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/MallocSizeofChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NSAutoreleasePoolChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NSErrorChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NoReturnFunctionChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCAtSyncChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCContainersASTChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCContainersChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCMissingSuperCallChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCSelfInitChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ObjCUnusedIVarsChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PointerArithChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PointerSubChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/PthreadLockChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ReturnPointerRangeChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/ReturnUndefChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/SimpleStreamChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/StreamChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TaintTesterChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TraversalChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefBranchChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefCapturedBlockVarChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefinedArraySubscriptChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UndefinedAssignmentChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UnixAPIChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/UnreachableCodeChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/VLASizeChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/VirtualCallChecker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/AnalyzerOptions.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BasicValueFactory.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BlockCounter.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BugReporter.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CallEvent.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Checker.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerManager.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CheckerRegistry.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/CoreEngine.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Environment.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngine.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineCXX.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/MemRegion.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/PathDiagnostic.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/PrettyStackTraceLocationContext.h head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/ProgramState.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/RegionStore.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SValBuilder.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SVals.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SimpleConstraintManager.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SimpleConstraintManager.h head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/Store.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Core/SymbolManager.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/CheckerRegistration.cpp head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/FrontendActions.cpp head/contrib/llvm/tools/clang/lib/Tooling/CommonOptionsParser.cpp head/contrib/llvm/tools/clang/lib/Tooling/CompilationDatabase.cpp head/contrib/llvm/tools/clang/lib/Tooling/FileMatchTrie.cpp head/contrib/llvm/tools/clang/lib/Tooling/JSONCompilationDatabase.cpp head/contrib/llvm/tools/clang/lib/Tooling/Refactoring.cpp head/contrib/llvm/tools/clang/lib/Tooling/Tooling.cpp head/contrib/llvm/tools/clang/tools/driver/cc1_main.cpp head/contrib/llvm/tools/clang/tools/driver/cc1as_main.cpp head/contrib/llvm/tools/clang/tools/driver/driver.cpp head/contrib/llvm/tools/clang/utils/TableGen/ClangASTNodesEmitter.cpp head/contrib/llvm/tools/clang/utils/TableGen/ClangAttrEmitter.cpp head/contrib/llvm/tools/clang/utils/TableGen/ClangCommentHTMLTagsEmitter.cpp head/contrib/llvm/tools/clang/utils/TableGen/ClangDiagnosticsEmitter.cpp head/contrib/llvm/tools/clang/utils/TableGen/ClangSACheckersEmitter.cpp head/contrib/llvm/tools/clang/utils/TableGen/NeonEmitter.cpp head/contrib/llvm/tools/clang/utils/TableGen/TableGen.cpp head/contrib/llvm/tools/clang/utils/TableGen/TableGenBackends.h head/contrib/llvm/tools/llc/llc.cpp head/contrib/llvm/tools/lldb/include/lldb/API/SBBreakpoint.h head/contrib/llvm/tools/lldb/include/lldb/API/SBBreakpointLocation.h head/contrib/llvm/tools/lldb/include/lldb/API/SBDefines.h head/contrib/llvm/tools/lldb/include/lldb/API/SBError.h head/contrib/llvm/tools/lldb/include/lldb/API/SBExpressionOptions.h head/contrib/llvm/tools/lldb/include/lldb/API/SBFileSpec.h head/contrib/llvm/tools/lldb/include/lldb/API/SBFrame.h head/contrib/llvm/tools/lldb/include/lldb/API/SBHostOS.h head/contrib/llvm/tools/lldb/include/lldb/API/SBListener.h head/contrib/llvm/tools/lldb/include/lldb/API/SBProcess.h head/contrib/llvm/tools/lldb/include/lldb/API/SBQueue.h head/contrib/llvm/tools/lldb/include/lldb/API/SBQueueItem.h head/contrib/llvm/tools/lldb/include/lldb/API/SBStream.h head/contrib/llvm/tools/lldb/include/lldb/API/SBTarget.h head/contrib/llvm/tools/lldb/include/lldb/API/SBThread.h head/contrib/llvm/tools/lldb/include/lldb/API/SBType.h head/contrib/llvm/tools/lldb/include/lldb/API/SBValue.h head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/Breakpoint.h head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointLocationList.h head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointOptions.h head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/BreakpointSite.h head/contrib/llvm/tools/lldb/include/lldb/Breakpoint/Watchpoint.h head/contrib/llvm/tools/lldb/include/lldb/Core/Address.h head/contrib/llvm/tools/lldb/include/lldb/Core/AddressRange.h head/contrib/llvm/tools/lldb/include/lldb/Core/ArchSpec.h head/contrib/llvm/tools/lldb/include/lldb/Core/ClangForward.h head/contrib/llvm/tools/lldb/include/lldb/Core/Communication.h head/contrib/llvm/tools/lldb/include/lldb/Core/ConnectionFileDescriptor.h head/contrib/llvm/tools/lldb/include/lldb/Core/ConstString.h head/contrib/llvm/tools/lldb/include/lldb/Core/DataBuffer.h head/contrib/llvm/tools/lldb/include/lldb/Core/DataBufferHeap.h head/contrib/llvm/tools/lldb/include/lldb/Core/DataBufferMemoryMap.h head/contrib/llvm/tools/lldb/include/lldb/Core/DataEncoder.h head/contrib/llvm/tools/lldb/include/lldb/Core/Debugger.h head/contrib/llvm/tools/lldb/include/lldb/Core/EmulateInstruction.h head/contrib/llvm/tools/lldb/include/lldb/Core/Error.h head/contrib/llvm/tools/lldb/include/lldb/Core/IOHandler.h head/contrib/llvm/tools/lldb/include/lldb/Core/Listener.h head/contrib/llvm/tools/lldb/include/lldb/Core/Mangled.h head/contrib/llvm/tools/lldb/include/lldb/Core/Module.h head/contrib/llvm/tools/lldb/include/lldb/Core/ModuleList.h head/contrib/llvm/tools/lldb/include/lldb/Core/ModuleSpec.h head/contrib/llvm/tools/lldb/include/lldb/Core/PluginManager.h head/contrib/llvm/tools/lldb/include/lldb/Core/RegisterValue.h head/contrib/llvm/tools/lldb/include/lldb/Core/RegularExpression.h head/contrib/llvm/tools/lldb/include/lldb/Core/Section.h head/contrib/llvm/tools/lldb/include/lldb/Core/SourceManager.h head/contrib/llvm/tools/lldb/include/lldb/Core/Stream.h head/contrib/llvm/tools/lldb/include/lldb/Core/UserID.h head/contrib/llvm/tools/lldb/include/lldb/Core/Value.h head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObject.h head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectChild.h head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectConstResult.h head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectDynamicValue.h head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectMemory.h head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectRegister.h head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectSyntheticFilter.h head/contrib/llvm/tools/lldb/include/lldb/Core/ValueObjectVariable.h head/contrib/llvm/tools/lldb/include/lldb/Core/dwarf.h head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/CXXFormatterFunctions.h head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/FormatManager.h head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeFormat.h head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/TypeSummary.h head/contrib/llvm/tools/lldb/include/lldb/DataFormatters/ValueObjectPrinter.h head/contrib/llvm/tools/lldb/include/lldb/Expression/ASTStructExtractor.h head/contrib/llvm/tools/lldb/include/lldb/Expression/ClangExpressionDeclMap.h head/contrib/llvm/tools/lldb/include/lldb/Expression/ClangExpressionParser.h head/contrib/llvm/tools/lldb/include/lldb/Expression/ClangExpressionVariable.h head/contrib/llvm/tools/lldb/include/lldb/Expression/ClangFunction.h head/contrib/llvm/tools/lldb/include/lldb/Expression/ClangUserExpression.h head/contrib/llvm/tools/lldb/include/lldb/Expression/ClangUtilityFunction.h head/contrib/llvm/tools/lldb/include/lldb/Expression/DWARFExpression.h head/contrib/llvm/tools/lldb/include/lldb/Expression/ExpressionSourceCode.h head/contrib/llvm/tools/lldb/include/lldb/Expression/IRExecutionUnit.h head/contrib/llvm/tools/lldb/include/lldb/Expression/IRForTarget.h head/contrib/llvm/tools/lldb/include/lldb/Expression/IRMemoryMap.h head/contrib/llvm/tools/lldb/include/lldb/Host/Condition.h head/contrib/llvm/tools/lldb/include/lldb/Host/Config.h head/contrib/llvm/tools/lldb/include/lldb/Host/Debug.h head/contrib/llvm/tools/lldb/include/lldb/Host/Editline.h head/contrib/llvm/tools/lldb/include/lldb/Host/Endian.h head/contrib/llvm/tools/lldb/include/lldb/Host/File.h head/contrib/llvm/tools/lldb/include/lldb/Host/FileSpec.h head/contrib/llvm/tools/lldb/include/lldb/Host/Host.h head/contrib/llvm/tools/lldb/include/lldb/Host/HostGetOpt.h head/contrib/llvm/tools/lldb/include/lldb/Host/OptionParser.h head/contrib/llvm/tools/lldb/include/lldb/Host/Predicate.h head/contrib/llvm/tools/lldb/include/lldb/Host/SocketAddress.h head/contrib/llvm/tools/lldb/include/lldb/Host/Symbols.h head/contrib/llvm/tools/lldb/include/lldb/Host/Terminal.h head/contrib/llvm/tools/lldb/include/lldb/Host/TimeValue.h head/contrib/llvm/tools/lldb/include/lldb/Interpreter/Args.h head/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandCompletions.h head/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandInterpreter.h head/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandObject.h head/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandReturnObject.h head/contrib/llvm/tools/lldb/include/lldb/Interpreter/Options.h head/contrib/llvm/tools/lldb/include/lldb/Interpreter/PythonDataObjects.h head/contrib/llvm/tools/lldb/include/lldb/Interpreter/ScriptInterpreter.h head/contrib/llvm/tools/lldb/include/lldb/Interpreter/ScriptInterpreterPython.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/Block.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangASTContext.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangASTImporter.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangASTType.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/ClangExternalASTSourceCommon.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/CompileUnit.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/DWARFCallFrameInfo.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/Declaration.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/FuncUnwinders.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/Function.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/LineEntry.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/LineTable.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/ObjectContainer.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/ObjectFile.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/Symbol.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolContext.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolContextScope.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolFile.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/SymbolVendor.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/Symtab.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/Type.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/UnwindPlan.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/UnwindTable.h head/contrib/llvm/tools/lldb/include/lldb/Symbol/VariableList.h head/contrib/llvm/tools/lldb/include/lldb/Target/ABI.h head/contrib/llvm/tools/lldb/include/lldb/Target/CPPLanguageRuntime.h head/contrib/llvm/tools/lldb/include/lldb/Target/ExecutionContext.h head/contrib/llvm/tools/lldb/include/lldb/Target/ExecutionContextScope.h head/contrib/llvm/tools/lldb/include/lldb/Target/ObjCLanguageRuntime.h head/contrib/llvm/tools/lldb/include/lldb/Target/PathMappingList.h head/contrib/llvm/tools/lldb/include/lldb/Target/Platform.h head/contrib/llvm/tools/lldb/include/lldb/Target/Process.h head/contrib/llvm/tools/lldb/include/lldb/Target/Queue.h head/contrib/llvm/tools/lldb/include/lldb/Target/QueueItem.h head/contrib/llvm/tools/lldb/include/lldb/Target/QueueList.h head/contrib/llvm/tools/lldb/include/lldb/Target/RegisterContext.h head/contrib/llvm/tools/lldb/include/lldb/Target/StackFrame.h head/contrib/llvm/tools/lldb/include/lldb/Target/StopInfo.h head/contrib/llvm/tools/lldb/include/lldb/Target/SystemRuntime.h head/contrib/llvm/tools/lldb/include/lldb/Target/Target.h head/contrib/llvm/tools/lldb/include/lldb/Target/TargetList.h head/contrib/llvm/tools/lldb/include/lldb/Target/Thread.h head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlan.h head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallFunction.h head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanCallUserExpression.h head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanShouldStopHere.h head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepInRange.h head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepInstruction.h head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepOut.h head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepOverRange.h head/contrib/llvm/tools/lldb/include/lldb/Target/ThreadPlanStepRange.h head/contrib/llvm/tools/lldb/include/lldb/Target/UnwindAssembly.h head/contrib/llvm/tools/lldb/include/lldb/Utility/CleanUp.h head/contrib/llvm/tools/lldb/include/lldb/Utility/PseudoTerminal.h head/contrib/llvm/tools/lldb/include/lldb/Utility/SharedCluster.h head/contrib/llvm/tools/lldb/include/lldb/Utility/SharingPtr.h head/contrib/llvm/tools/lldb/include/lldb/lldb-defines.h head/contrib/llvm/tools/lldb/include/lldb/lldb-enumerations.h head/contrib/llvm/tools/lldb/include/lldb/lldb-forward.h head/contrib/llvm/tools/lldb/include/lldb/lldb-private-enumerations.h head/contrib/llvm/tools/lldb/include/lldb/lldb-private-interfaces.h head/contrib/llvm/tools/lldb/include/lldb/lldb-private-log.h head/contrib/llvm/tools/lldb/include/lldb/lldb-private-types.h head/contrib/llvm/tools/lldb/include/lldb/lldb-python.h head/contrib/llvm/tools/lldb/include/lldb/lldb-types.h head/contrib/llvm/tools/lldb/source/API/SBAddress.cpp head/contrib/llvm/tools/lldb/source/API/SBBreakpoint.cpp head/contrib/llvm/tools/lldb/source/API/SBBreakpointLocation.cpp head/contrib/llvm/tools/lldb/source/API/SBBroadcaster.cpp head/contrib/llvm/tools/lldb/source/API/SBCommandInterpreter.cpp head/contrib/llvm/tools/lldb/source/API/SBCommandReturnObject.cpp head/contrib/llvm/tools/lldb/source/API/SBCommunication.cpp head/contrib/llvm/tools/lldb/source/API/SBCompileUnit.cpp head/contrib/llvm/tools/lldb/source/API/SBData.cpp head/contrib/llvm/tools/lldb/source/API/SBDebugger.cpp head/contrib/llvm/tools/lldb/source/API/SBDeclaration.cpp head/contrib/llvm/tools/lldb/source/API/SBError.cpp head/contrib/llvm/tools/lldb/source/API/SBEvent.cpp head/contrib/llvm/tools/lldb/source/API/SBExpressionOptions.cpp head/contrib/llvm/tools/lldb/source/API/SBFileSpec.cpp head/contrib/llvm/tools/lldb/source/API/SBFileSpecList.cpp head/contrib/llvm/tools/lldb/source/API/SBFrame.cpp head/contrib/llvm/tools/lldb/source/API/SBFunction.cpp head/contrib/llvm/tools/lldb/source/API/SBHostOS.cpp head/contrib/llvm/tools/lldb/source/API/SBLineEntry.cpp head/contrib/llvm/tools/lldb/source/API/SBListener.cpp head/contrib/llvm/tools/lldb/source/API/SBModule.cpp head/contrib/llvm/tools/lldb/source/API/SBProcess.cpp head/contrib/llvm/tools/lldb/source/API/SBQueue.cpp head/contrib/llvm/tools/lldb/source/API/SBQueueItem.cpp head/contrib/llvm/tools/lldb/source/API/SBStream.cpp head/contrib/llvm/tools/lldb/source/API/SBSymbol.cpp head/contrib/llvm/tools/lldb/source/API/SBSymbolContext.cpp head/contrib/llvm/tools/lldb/source/API/SBTarget.cpp head/contrib/llvm/tools/lldb/source/API/SBThread.cpp head/contrib/llvm/tools/lldb/source/API/SBType.cpp head/contrib/llvm/tools/lldb/source/API/SBValue.cpp head/contrib/llvm/tools/lldb/source/API/SBValueList.cpp head/contrib/llvm/tools/lldb/source/API/SBWatchpoint.cpp head/contrib/llvm/tools/lldb/source/Breakpoint/Breakpoint.cpp head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointID.cpp head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointList.cpp head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointLocation.cpp head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointLocationList.cpp head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointOptions.cpp head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointResolverName.cpp head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointSite.cpp head/contrib/llvm/tools/lldb/source/Breakpoint/BreakpointSiteList.cpp head/contrib/llvm/tools/lldb/source/Breakpoint/WatchpointList.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandCompletions.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectArgs.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpoint.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectBreakpointCommand.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectCommands.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectDisassemble.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectExpression.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectExpression.h head/contrib/llvm/tools/lldb/source/Commands/CommandObjectFrame.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectHelp.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectLog.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectMemory.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectPlatform.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectProcess.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectQuit.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectRegister.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectSettings.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectSource.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectTarget.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectThread.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectType.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpoint.cpp head/contrib/llvm/tools/lldb/source/Commands/CommandObjectWatchpointCommand.cpp head/contrib/llvm/tools/lldb/source/Core/Address.cpp head/contrib/llvm/tools/lldb/source/Core/AddressRange.cpp head/contrib/llvm/tools/lldb/source/Core/AddressResolverName.cpp head/contrib/llvm/tools/lldb/source/Core/ArchSpec.cpp head/contrib/llvm/tools/lldb/source/Core/Broadcaster.cpp head/contrib/llvm/tools/lldb/source/Core/Communication.cpp head/contrib/llvm/tools/lldb/source/Core/ConnectionFileDescriptor.cpp head/contrib/llvm/tools/lldb/source/Core/ConnectionMachPort.cpp head/contrib/llvm/tools/lldb/source/Core/ConnectionSharedMemory.cpp head/contrib/llvm/tools/lldb/source/Core/ConstString.cpp head/contrib/llvm/tools/lldb/source/Core/DataBufferHeap.cpp head/contrib/llvm/tools/lldb/source/Core/DataBufferMemoryMap.cpp head/contrib/llvm/tools/lldb/source/Core/DataExtractor.cpp head/contrib/llvm/tools/lldb/source/Core/Debugger.cpp head/contrib/llvm/tools/lldb/source/Core/EmulateInstruction.cpp head/contrib/llvm/tools/lldb/source/Core/Error.cpp head/contrib/llvm/tools/lldb/source/Core/Event.cpp head/contrib/llvm/tools/lldb/source/Core/IOHandler.cpp head/contrib/llvm/tools/lldb/source/Core/Language.cpp head/contrib/llvm/tools/lldb/source/Core/Listener.cpp head/contrib/llvm/tools/lldb/source/Core/Log.cpp head/contrib/llvm/tools/lldb/source/Core/Mangled.cpp head/contrib/llvm/tools/lldb/source/Core/Module.cpp head/contrib/llvm/tools/lldb/source/Core/ModuleList.cpp head/contrib/llvm/tools/lldb/source/Core/Opcode.cpp head/contrib/llvm/tools/lldb/source/Core/PluginManager.cpp head/contrib/llvm/tools/lldb/source/Core/RegularExpression.cpp head/contrib/llvm/tools/lldb/source/Core/Scalar.cpp head/contrib/llvm/tools/lldb/source/Core/SearchFilter.cpp head/contrib/llvm/tools/lldb/source/Core/Section.cpp head/contrib/llvm/tools/lldb/source/Core/SourceManager.cpp head/contrib/llvm/tools/lldb/source/Core/Stream.cpp head/contrib/llvm/tools/lldb/source/Core/Value.cpp head/contrib/llvm/tools/lldb/source/Core/ValueObject.cpp head/contrib/llvm/tools/lldb/source/Core/ValueObjectChild.cpp head/contrib/llvm/tools/lldb/source/Core/ValueObjectConstResult.cpp head/contrib/llvm/tools/lldb/source/Core/ValueObjectConstResultImpl.cpp head/contrib/llvm/tools/lldb/source/Core/ValueObjectDynamicValue.cpp head/contrib/llvm/tools/lldb/source/Core/ValueObjectMemory.cpp head/contrib/llvm/tools/lldb/source/Core/ValueObjectRegister.cpp head/contrib/llvm/tools/lldb/source/Core/ValueObjectSyntheticFilter.cpp head/contrib/llvm/tools/lldb/source/Core/ValueObjectVariable.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/CF.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/CXXFormatterFunctions.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/Cocoa.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/FormatManager.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/LibCxx.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/LibCxxList.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/LibCxxMap.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/LibCxxUnorderedMap.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/LibStdcpp.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/NSArray.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/NSDictionary.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/NSSet.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/TypeFormat.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/TypeSummary.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/TypeSynthetic.cpp head/contrib/llvm/tools/lldb/source/DataFormatters/ValueObjectPrinter.cpp head/contrib/llvm/tools/lldb/source/Expression/ASTResultSynthesizer.cpp head/contrib/llvm/tools/lldb/source/Expression/ASTStructExtractor.cpp head/contrib/llvm/tools/lldb/source/Expression/ClangASTSource.cpp head/contrib/llvm/tools/lldb/source/Expression/ClangExpressionDeclMap.cpp head/contrib/llvm/tools/lldb/source/Expression/ClangExpressionParser.cpp head/contrib/llvm/tools/lldb/source/Expression/ClangExpressionVariable.cpp head/contrib/llvm/tools/lldb/source/Expression/ClangFunction.cpp head/contrib/llvm/tools/lldb/source/Expression/ClangUserExpression.cpp head/contrib/llvm/tools/lldb/source/Expression/ClangUtilityFunction.cpp head/contrib/llvm/tools/lldb/source/Expression/DWARFExpression.cpp head/contrib/llvm/tools/lldb/source/Expression/ExpressionSourceCode.cpp head/contrib/llvm/tools/lldb/source/Expression/IRDynamicChecks.cpp head/contrib/llvm/tools/lldb/source/Expression/IRExecutionUnit.cpp head/contrib/llvm/tools/lldb/source/Expression/IRForTarget.cpp head/contrib/llvm/tools/lldb/source/Expression/IRInterpreter.cpp head/contrib/llvm/tools/lldb/source/Expression/IRMemoryMap.cpp head/contrib/llvm/tools/lldb/source/Expression/Materializer.cpp head/contrib/llvm/tools/lldb/source/Host/common/Condition.cpp head/contrib/llvm/tools/lldb/source/Host/common/Editline.cpp head/contrib/llvm/tools/lldb/source/Host/common/File.cpp head/contrib/llvm/tools/lldb/source/Host/common/FileSpec.cpp head/contrib/llvm/tools/lldb/source/Host/common/Host.cpp head/contrib/llvm/tools/lldb/source/Host/common/Mutex.cpp head/contrib/llvm/tools/lldb/source/Host/common/OptionParser.cpp head/contrib/llvm/tools/lldb/source/Host/common/SocketAddress.cpp head/contrib/llvm/tools/lldb/source/Host/common/Terminal.cpp head/contrib/llvm/tools/lldb/source/Host/freebsd/Host.cpp head/contrib/llvm/tools/lldb/source/Interpreter/Args.cpp head/contrib/llvm/tools/lldb/source/Interpreter/CommandHistory.cpp head/contrib/llvm/tools/lldb/source/Interpreter/CommandInterpreter.cpp head/contrib/llvm/tools/lldb/source/Interpreter/CommandObject.cpp head/contrib/llvm/tools/lldb/source/Interpreter/CommandObjectRegexCommand.cpp head/contrib/llvm/tools/lldb/source/Interpreter/CommandObjectScript.cpp head/contrib/llvm/tools/lldb/source/Interpreter/CommandReturnObject.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupArchitecture.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupBoolean.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupFile.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupFormat.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupOutputFile.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupPlatform.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupString.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupUInt64.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupUUID.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupValueObjectDisplay.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupVariable.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionGroupWatchpoint.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionValue.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArch.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueArray.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueBoolean.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueDictionary.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueEnumeration.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFileSpec.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueFormat.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueProperties.cpp head/contrib/llvm/tools/lldb/source/Interpreter/OptionValueUUID.cpp head/contrib/llvm/tools/lldb/source/Interpreter/Options.cpp head/contrib/llvm/tools/lldb/source/Interpreter/Property.cpp head/contrib/llvm/tools/lldb/source/Interpreter/PythonDataObjects.cpp head/contrib/llvm/tools/lldb/source/Interpreter/ScriptInterpreter.cpp head/contrib/llvm/tools/lldb/source/Interpreter/ScriptInterpreterPython.cpp head/contrib/llvm/tools/lldb/source/Interpreter/embedded_interpreter.py head/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm/ABIMacOSX_arm.cpp head/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-i386/ABIMacOSX_i386.cpp head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-x86_64/ABISysV_x86_64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp head/contrib/llvm/tools/lldb/source/Plugins/Disassembler/llvm/DisassemblerLLVMC.h head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/AuxVector.cpp head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DYLDRendezvous.cpp head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Static/DynamicLoaderStatic.h head/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp head/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM/EmulateInstructionARM.h head/contrib/llvm/tools/lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp head/contrib/llvm/tools/lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp head/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ELFHeader.cpp head/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ELFHeader.h head/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp head/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h head/contrib/llvm/tools/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.cpp head/contrib/llvm/tools/lldb/source/Plugins/Platform/FreeBSD/PlatformFreeBSD.h head/contrib/llvm/tools/lldb/source/Plugins/Platform/POSIX/PlatformPOSIX.cpp head/contrib/llvm/tools/lldb/source/Plugins/Platform/POSIX/PlatformPOSIX.h head/contrib/llvm/tools/lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessFreeBSD.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/POSIXThread.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/POSIXThread.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/ProcessPOSIX.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/ProcessPOSIX.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_mips64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_mips64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_x86.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_x86.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/ARMDefines.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/ARMUtils.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/DynamicRegisterInfo.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/HistoryThread.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/HistoryUnwind.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/InferiorCallPOSIX.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/InstructionUtils.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_i386.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_i386.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_x86_64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_x86_64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDummy.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDummy.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextHistory.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextHistory.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLLDB.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLLDB.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMacOSXFrameBackchain.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMacOSXFrameBackchain.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMemory.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextMemory.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextThreadMemory.h head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/StopInfoMachException.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/UnwindLLDB.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ProcessElfCore.h head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_mips64.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_mips64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/RegisterContextPOSIXCore_x86_64.h head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ThreadElfCore.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/elf-core/ThreadElfCore.h head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunication.h head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.h head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/GDBRemoteRegisterContext.h head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.h head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.cpp head/contrib/llvm/tools/lldb/source/Plugins/Process/gdb-remote/ThreadGDBRemote.h head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.cpp head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFAbbreviationDeclaration.h head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.cpp head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFCompileUnit.h head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugArangeSet.cpp head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugAranges.cpp head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfo.cpp head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.cpp head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugInfoEntry.h head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.cpp head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugPubnames.cpp head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugRanges.cpp head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDeclContext.cpp head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.cpp head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/HashedNameToDIE.h head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/LogChannelDWARF.cpp head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.h head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.h head/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/Symtab/SymbolFileSymtab.cpp head/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.cpp head/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/InstEmulation/UnwindAssemblyInstEmulation.h head/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/UnwindAssembly-x86.cpp head/contrib/llvm/tools/lldb/source/Plugins/UnwindAssembly/x86/UnwindAssembly-x86.h head/contrib/llvm/tools/lldb/source/Symbol/Block.cpp head/contrib/llvm/tools/lldb/source/Symbol/ClangASTContext.cpp head/contrib/llvm/tools/lldb/source/Symbol/ClangASTImporter.cpp head/contrib/llvm/tools/lldb/source/Symbol/ClangASTType.cpp head/contrib/llvm/tools/lldb/source/Symbol/ClangExternalASTSourceCallbacks.cpp head/contrib/llvm/tools/lldb/source/Symbol/ClangExternalASTSourceCommon.cpp head/contrib/llvm/tools/lldb/source/Symbol/CompileUnit.cpp head/contrib/llvm/tools/lldb/source/Symbol/DWARFCallFrameInfo.cpp head/contrib/llvm/tools/lldb/source/Symbol/FuncUnwinders.cpp head/contrib/llvm/tools/lldb/source/Symbol/Function.cpp head/contrib/llvm/tools/lldb/source/Symbol/LineTable.cpp head/contrib/llvm/tools/lldb/source/Symbol/ObjectFile.cpp head/contrib/llvm/tools/lldb/source/Symbol/Symbol.cpp head/contrib/llvm/tools/lldb/source/Symbol/SymbolContext.cpp head/contrib/llvm/tools/lldb/source/Symbol/SymbolFile.cpp head/contrib/llvm/tools/lldb/source/Symbol/SymbolVendor.cpp head/contrib/llvm/tools/lldb/source/Symbol/Symtab.cpp head/contrib/llvm/tools/lldb/source/Symbol/Type.cpp head/contrib/llvm/tools/lldb/source/Symbol/TypeList.cpp head/contrib/llvm/tools/lldb/source/Symbol/UnwindPlan.cpp head/contrib/llvm/tools/lldb/source/Symbol/UnwindTable.cpp head/contrib/llvm/tools/lldb/source/Symbol/Variable.cpp head/contrib/llvm/tools/lldb/source/Target/ABI.cpp head/contrib/llvm/tools/lldb/source/Target/LanguageRuntime.cpp head/contrib/llvm/tools/lldb/source/Target/Memory.cpp head/contrib/llvm/tools/lldb/source/Target/ObjCLanguageRuntime.cpp head/contrib/llvm/tools/lldb/source/Target/PathMappingList.cpp head/contrib/llvm/tools/lldb/source/Target/Platform.cpp head/contrib/llvm/tools/lldb/source/Target/Process.cpp head/contrib/llvm/tools/lldb/source/Target/Queue.cpp head/contrib/llvm/tools/lldb/source/Target/QueueItem.cpp head/contrib/llvm/tools/lldb/source/Target/RegisterContext.cpp head/contrib/llvm/tools/lldb/source/Target/SectionLoadHistory.cpp head/contrib/llvm/tools/lldb/source/Target/SectionLoadList.cpp head/contrib/llvm/tools/lldb/source/Target/StackFrame.cpp head/contrib/llvm/tools/lldb/source/Target/StackFrameList.cpp head/contrib/llvm/tools/lldb/source/Target/StackID.cpp head/contrib/llvm/tools/lldb/source/Target/StopInfo.cpp head/contrib/llvm/tools/lldb/source/Target/Target.cpp head/contrib/llvm/tools/lldb/source/Target/TargetList.cpp head/contrib/llvm/tools/lldb/source/Target/Thread.cpp head/contrib/llvm/tools/lldb/source/Target/ThreadList.cpp head/contrib/llvm/tools/lldb/source/Target/ThreadPlan.cpp head/contrib/llvm/tools/lldb/source/Target/ThreadPlanBase.cpp head/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallFunction.cpp head/contrib/llvm/tools/lldb/source/Target/ThreadPlanCallUserExpression.cpp head/contrib/llvm/tools/lldb/source/Target/ThreadPlanRunToAddress.cpp head/contrib/llvm/tools/lldb/source/Target/ThreadPlanShouldStopHere.cpp head/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepInRange.cpp head/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepInstruction.cpp head/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepOut.cpp head/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepOverRange.cpp head/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepRange.cpp head/contrib/llvm/tools/lldb/source/Target/ThreadPlanStepUntil.cpp head/contrib/llvm/tools/lldb/source/Target/ThreadPlanTracer.cpp head/contrib/llvm/tools/lldb/source/Utility/ARM_DWARF_Registers.cpp head/contrib/llvm/tools/lldb/source/Utility/PseudoTerminal.cpp head/contrib/llvm/tools/lldb/source/Utility/SharingPtr.cpp head/contrib/llvm/tools/lldb/source/Utility/StringExtractor.cpp head/contrib/llvm/tools/lldb/source/Utility/StringExtractor.h head/contrib/llvm/tools/lldb/source/Utility/StringExtractorGDBRemote.cpp head/contrib/llvm/tools/lldb/source/Utility/StringExtractorGDBRemote.h head/contrib/llvm/tools/lldb/source/Utility/TimeSpecTimeout.h head/contrib/llvm/tools/lldb/source/lldb-log.cpp head/contrib/llvm/tools/lldb/source/lldb.cpp head/contrib/llvm/tools/lldb/tools/driver/Driver.cpp head/contrib/llvm/tools/lldb/tools/driver/Driver.h head/contrib/llvm/tools/lldb/tools/driver/Platform.cpp head/contrib/llvm/tools/lldb/tools/driver/Platform.h head/contrib/llvm/tools/lldb/tools/lldb-platform/lldb-platform.cpp head/contrib/llvm/tools/lli/ChildTarget/ChildTarget.cpp head/contrib/llvm/tools/lli/RemoteMemoryManager.cpp head/contrib/llvm/tools/lli/RemoteMemoryManager.h head/contrib/llvm/tools/lli/RemoteTarget.cpp head/contrib/llvm/tools/lli/RemoteTarget.h head/contrib/llvm/tools/lli/RemoteTargetExternal.cpp head/contrib/llvm/tools/lli/RemoteTargetExternal.h head/contrib/llvm/tools/lli/RemoteTargetMessage.h head/contrib/llvm/tools/lli/lli.cpp head/contrib/llvm/tools/llvm-ar/llvm-ar.cpp head/contrib/llvm/tools/llvm-as/llvm-as.cpp head/contrib/llvm/tools/llvm-bcanalyzer/llvm-bcanalyzer.cpp head/contrib/llvm/tools/llvm-diff/DiffConsumer.h head/contrib/llvm/tools/llvm-diff/DiffLog.cpp head/contrib/llvm/tools/llvm-diff/DifferenceEngine.cpp head/contrib/llvm/tools/llvm-diff/DifferenceEngine.h head/contrib/llvm/tools/llvm-dis/llvm-dis.cpp head/contrib/llvm/tools/llvm-extract/llvm-extract.cpp head/contrib/llvm/tools/llvm-link/llvm-link.cpp head/contrib/llvm/tools/llvm-mc/Disassembler.cpp head/contrib/llvm/tools/llvm-mc/llvm-mc.cpp head/contrib/llvm/tools/llvm-nm/llvm-nm.cpp head/contrib/llvm/tools/llvm-objdump/COFFDump.cpp head/contrib/llvm/tools/llvm-objdump/MachODump.cpp head/contrib/llvm/tools/llvm-objdump/llvm-objdump.cpp head/contrib/llvm/tools/llvm-objdump/llvm-objdump.h head/contrib/llvm/tools/llvm-readobj/COFFDumper.cpp head/contrib/llvm/tools/llvm-readobj/ELFDumper.cpp head/contrib/llvm/tools/llvm-readobj/Error.cpp head/contrib/llvm/tools/llvm-readobj/Error.h head/contrib/llvm/tools/llvm-readobj/MachODumper.cpp head/contrib/llvm/tools/llvm-readobj/ObjDumper.cpp head/contrib/llvm/tools/llvm-readobj/ObjDumper.h head/contrib/llvm/tools/llvm-readobj/StreamWriter.h head/contrib/llvm/tools/llvm-readobj/llvm-readobj.cpp head/contrib/llvm/tools/llvm-readobj/llvm-readobj.h head/contrib/llvm/tools/llvm-rtdyld/llvm-rtdyld.cpp head/contrib/llvm/tools/llvm-stress/llvm-stress.cpp head/contrib/llvm/tools/llvm-symbolizer/LLVMSymbolize.cpp head/contrib/llvm/tools/llvm-symbolizer/LLVMSymbolize.h head/contrib/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp head/contrib/llvm/tools/macho-dump/macho-dump.cpp head/contrib/llvm/tools/opt/AnalysisWrappers.cpp head/contrib/llvm/tools/opt/GraphPrinters.cpp head/contrib/llvm/tools/opt/PrintSCC.cpp head/contrib/llvm/tools/opt/opt.cpp head/contrib/llvm/utils/TableGen/AsmMatcherEmitter.cpp head/contrib/llvm/utils/TableGen/AsmWriterEmitter.cpp head/contrib/llvm/utils/TableGen/AsmWriterInst.cpp head/contrib/llvm/utils/TableGen/AsmWriterInst.h head/contrib/llvm/utils/TableGen/CTagsEmitter.cpp head/contrib/llvm/utils/TableGen/CallingConvEmitter.cpp head/contrib/llvm/utils/TableGen/CodeEmitterGen.cpp head/contrib/llvm/utils/TableGen/CodeGenDAGPatterns.cpp head/contrib/llvm/utils/TableGen/CodeGenDAGPatterns.h head/contrib/llvm/utils/TableGen/CodeGenInstruction.cpp head/contrib/llvm/utils/TableGen/CodeGenInstruction.h head/contrib/llvm/utils/TableGen/CodeGenIntrinsics.h head/contrib/llvm/utils/TableGen/CodeGenMapTable.cpp head/contrib/llvm/utils/TableGen/CodeGenRegisters.cpp head/contrib/llvm/utils/TableGen/CodeGenRegisters.h head/contrib/llvm/utils/TableGen/CodeGenSchedule.cpp head/contrib/llvm/utils/TableGen/CodeGenSchedule.h head/contrib/llvm/utils/TableGen/CodeGenTarget.cpp head/contrib/llvm/utils/TableGen/CodeGenTarget.h head/contrib/llvm/utils/TableGen/DAGISelEmitter.cpp head/contrib/llvm/utils/TableGen/DAGISelMatcher.cpp head/contrib/llvm/utils/TableGen/DAGISelMatcher.h head/contrib/llvm/utils/TableGen/DAGISelMatcherEmitter.cpp head/contrib/llvm/utils/TableGen/DAGISelMatcherGen.cpp head/contrib/llvm/utils/TableGen/DAGISelMatcherOpt.cpp head/contrib/llvm/utils/TableGen/DFAPacketizerEmitter.cpp head/contrib/llvm/utils/TableGen/DisassemblerEmitter.cpp head/contrib/llvm/utils/TableGen/FastISelEmitter.cpp head/contrib/llvm/utils/TableGen/FixedLenDecoderEmitter.cpp head/contrib/llvm/utils/TableGen/InstrInfoEmitter.cpp head/contrib/llvm/utils/TableGen/IntrinsicEmitter.cpp head/contrib/llvm/utils/TableGen/OptParserEmitter.cpp head/contrib/llvm/utils/TableGen/PseudoLoweringEmitter.cpp head/contrib/llvm/utils/TableGen/RegisterInfoEmitter.cpp head/contrib/llvm/utils/TableGen/SubtargetEmitter.cpp head/contrib/llvm/utils/TableGen/TableGen.cpp head/contrib/llvm/utils/TableGen/X86DisassemblerShared.h head/contrib/llvm/utils/TableGen/X86DisassemblerTables.cpp head/contrib/llvm/utils/TableGen/X86DisassemblerTables.h head/contrib/llvm/utils/TableGen/X86ModRMFilters.cpp head/contrib/llvm/utils/TableGen/X86ModRMFilters.h head/contrib/llvm/utils/TableGen/X86RecognizableInstr.cpp head/contrib/llvm/utils/TableGen/X86RecognizableInstr.h head/etc/mtree/BSD.include.dist head/lib/clang/Makefile head/lib/clang/clang.build.mk head/lib/clang/include/Makefile head/lib/clang/include/clang/Basic/Version.inc head/lib/clang/include/clang/Config/config.h head/lib/clang/include/llvm/Config/Disassemblers.def head/lib/clang/include/llvm/Config/config.h head/lib/clang/include/llvm/Config/llvm-config.h head/lib/clang/libclanganalysis/Makefile head/lib/clang/libclangarcmigrate/Makefile head/lib/clang/libclangast/Makefile head/lib/clang/libclangbasic/Makefile head/lib/clang/libclangcodegen/Makefile head/lib/clang/libclangdriver/Makefile head/lib/clang/libclangfrontend/Makefile head/lib/clang/libclanglex/Makefile head/lib/clang/libclangparse/Makefile head/lib/clang/libclangrewritefrontend/Makefile head/lib/clang/libclangsema/Makefile head/lib/clang/libclangstaticanalyzercheckers/Makefile head/lib/clang/libclangstaticanalyzerfrontend/Makefile head/lib/clang/liblldb/Makefile head/lib/clang/liblldbAPI/Makefile head/lib/clang/liblldbBreakpoint/Makefile head/lib/clang/liblldbCommands/Makefile head/lib/clang/liblldbCore/Makefile head/lib/clang/liblldbDataFormatters/Makefile head/lib/clang/liblldbHostCommon/Makefile head/lib/clang/liblldbHostFreeBSD/Makefile head/lib/clang/liblldbInterpreter/Makefile head/lib/clang/liblldbPluginPlatformFreeBSD/Makefile head/lib/clang/liblldbPluginPlatformGDB/Makefile head/lib/clang/liblldbPluginProcessGDBRemote/Makefile head/lib/clang/liblldbPluginProcessPOSIX/Makefile head/lib/clang/liblldbPluginProcessUtility/Makefile head/lib/clang/liblldbPluginSymbolFileDWARF/Makefile head/lib/clang/liblldbTarget/Makefile head/lib/clang/liblldbUtility/Makefile head/lib/clang/libllvmanalysis/Makefile head/lib/clang/libllvmarmcodegen/Makefile head/lib/clang/libllvmarmdesc/Makefile head/lib/clang/libllvmasmprinter/Makefile head/lib/clang/libllvmcodegen/Makefile head/lib/clang/libllvmcore/Makefile head/lib/clang/libllvmmc/Makefile head/lib/clang/libllvmmipscodegen/Makefile head/lib/clang/libllvmmipsdesc/Makefile head/lib/clang/libllvmobject/Makefile head/lib/clang/libllvmruntimedyld/Makefile head/lib/clang/libllvmscalaropts/Makefile head/lib/clang/libllvmsupport/Makefile head/lib/clang/libllvmtablegen/Makefile head/lib/clang/libllvmtarget/Makefile head/lib/clang/libllvmtransformutils/Makefile head/lib/clang/libllvmx86asmparser/Makefile head/lib/clang/libllvmx86codegen/Makefile head/lib/clang/libllvmx86desc/Makefile head/lib/clang/libllvmx86disassembler/Makefile head/share/mk/bsd.sys.mk head/share/mk/src.opts.mk head/sys/boot/i386/boot2/Makefile head/sys/boot/pc98/boot2/Makefile head/sys/boot/powerpc/ofw/Makefile head/sys/boot/powerpc/ps3/Makefile head/sys/conf/Makefile.arm head/sys/sys/param.h head/tools/build/mk/OptionalObsoleteFiles.inc head/usr.bin/clang/bugpoint/Makefile head/usr.bin/clang/clang/Makefile head/usr.bin/clang/llc/Makefile head/usr.bin/clang/lldb/Makefile head/usr.bin/clang/lli/Makefile head/usr.bin/clang/llvm-ar/Makefile head/usr.bin/clang/llvm-dis/Makefile head/usr.bin/clang/llvm-extract/Makefile head/usr.bin/clang/llvm-link/Makefile head/usr.bin/clang/llvm-mc/Makefile head/usr.bin/clang/llvm-nm/Makefile head/usr.bin/clang/llvm-objdump/Makefile head/usr.bin/clang/llvm-rtdyld/Makefile head/usr.bin/clang/macho-dump/Makefile head/usr.bin/clang/opt/Makefile head/usr.bin/clang/tblgen/Makefile Directory Properties: head/ (props changed) head/MAINTAINERS (props changed) head/cddl/ (props changed) head/cddl/contrib/opensolaris/ (props changed) head/cddl/contrib/opensolaris/cmd/dtrace/test/tst/common/print/ (props changed) head/cddl/contrib/opensolaris/cmd/zfs/ (props changed) head/cddl/contrib/opensolaris/lib/libzfs/ (props changed) head/contrib/apr/ (props changed) head/contrib/apr-util/ (props changed) head/contrib/atf/ (props changed) head/contrib/binutils/ (props changed) head/contrib/bmake/ (props changed) head/contrib/byacc/ (props changed) head/contrib/bzip2/ (props changed) head/contrib/com_err/ (props changed) head/contrib/compiler-rt/ (props changed) head/contrib/dialog/ (props changed) head/contrib/dtc/ (props changed) head/contrib/ee/ (props changed) head/contrib/elftoolchain/ (props changed) head/contrib/expat/ (props changed) head/contrib/file/ (props changed) head/contrib/gcc/ (props changed) head/contrib/gdb/ (props changed) head/contrib/gdtoa/ (props changed) head/contrib/groff/ (props changed) head/contrib/ipfilter/ (props changed) head/contrib/ipfilter/ml_ipl.c (props changed) head/contrib/ipfilter/mlfk_ipl.c (props changed) head/contrib/ipfilter/mlh_rule.c (props changed) head/contrib/ipfilter/mli_ipl.c (props changed) head/contrib/ipfilter/mln_ipl.c (props changed) head/contrib/ipfilter/mls_ipl.c (props changed) head/contrib/ldns/ (props changed) head/contrib/less/ (props changed) head/contrib/libarchive/ (props changed) head/contrib/libarchive/cpio/ (props changed) head/contrib/libarchive/libarchive/ (props changed) head/contrib/libarchive/libarchive_fe/ (props changed) head/contrib/libarchive/tar/ (props changed) head/contrib/libc++/ (props changed) head/contrib/libc-vis/ (props changed) head/contrib/libcxxrt/ (props changed) head/contrib/libexecinfo/ (props changed) head/contrib/libpcap/ (props changed) head/contrib/libstdc++/ (props changed) head/contrib/libucl/ (props changed) head/contrib/llvm/ (props changed) head/contrib/llvm/tools/clang/ (props changed) head/contrib/llvm/tools/lldb/ (props changed) head/contrib/mdocml/ (props changed) head/contrib/mtree/ (props changed) head/contrib/ncurses/ (props changed) head/contrib/netcat/ (props changed) head/contrib/ntp/ (props changed) head/contrib/nvi/ (props changed) head/contrib/one-true-awk/ (props changed) head/contrib/openbsm/ (props changed) head/contrib/openpam/ (props changed) head/contrib/openresolv/ (props changed) head/contrib/pf/ (props changed) head/contrib/sendmail/ (props changed) head/contrib/serf/ (props changed) head/contrib/sqlite3/ (props changed) head/contrib/subversion/ (props changed) head/contrib/tcpdump/ (props changed) head/contrib/tcsh/ (props changed) head/contrib/tnftp/ (props changed) head/contrib/top/ (props changed) head/contrib/top/install-sh (props changed) head/contrib/tzcode/stdtime/ (props changed) head/contrib/tzcode/zic/ (props changed) head/contrib/tzdata/ (props changed) head/contrib/unbound/ (props changed) head/contrib/wpa/ (props changed) head/contrib/xz/ (props changed) head/crypto/heimdal/ (props changed) head/crypto/openssh/ (props changed) head/crypto/openssl/ (props changed) head/etc/ (props changed) head/gnu/lib/ (props changed) head/gnu/usr.bin/binutils/ (props changed) head/gnu/usr.bin/cc/cc_tools/ (props changed) head/gnu/usr.bin/gdb/ (props changed) head/include/ (props changed) head/lib/clang/libllvmoption/Makefile (props changed) head/lib/clang/libllvmsparcasmparser/Makefile (props changed) head/lib/clang/libllvmsparccodegen/Makefile (props changed) head/lib/clang/libllvmsparcdesc/Makefile (props changed) head/lib/clang/libllvmsparcdisassembler/Makefile (props changed) head/lib/clang/libllvmsparcinfo/Makefile (props changed) head/lib/clang/libllvmsparcinstprinter/Makefile (props changed) head/lib/libc/ (props changed) head/lib/libc/stdtime/ (props changed) head/lib/libutil/ (props changed) head/lib/libvmmapi/ (props changed) head/lib/libz/ (props changed) head/sbin/ (props changed) head/sbin/dumpon/ (props changed) head/sbin/ipfw/ (props changed) head/share/ (props changed) head/share/examples/kld/random_adaptor/random_adaptor_example.c (props changed) head/share/man/man4/ (props changed) head/share/man/man4/bhyve.4 (props changed) head/share/mk/bsd.arch.inc.mk (props changed) head/share/zoneinfo/ (props changed) head/sys/ (props changed) head/sys/amd64/include/vmm.h (props changed) head/sys/amd64/include/vmm_dev.h (props changed) head/sys/amd64/include/vmm_instruction_emul.h (props changed) head/sys/amd64/include/xen/ (props changed) head/sys/amd64/vmm/ (props changed) head/sys/boot/ (props changed) head/sys/boot/i386/efi/ (props changed) head/sys/boot/powerpc/boot1.chrp/ (props changed) head/sys/boot/powerpc/ofw/ (props changed) head/sys/cddl/contrib/opensolaris/ (props changed) head/sys/conf/ (props changed) head/sys/contrib/dev/acpica/ (props changed) head/sys/contrib/dev/acpica/changes.txt (props changed) head/sys/contrib/dev/acpica/common/ (props changed) head/sys/contrib/dev/acpica/compiler/ (props changed) head/sys/contrib/dev/acpica/components/debugger/ (props changed) head/sys/contrib/dev/acpica/components/disassembler/ (props changed) head/sys/contrib/dev/acpica/components/dispatcher/ (props changed) head/sys/contrib/dev/acpica/components/events/ (props changed) head/sys/contrib/dev/acpica/components/executer/ (props changed) head/sys/contrib/dev/acpica/components/hardware/ (props changed) head/sys/contrib/dev/acpica/components/namespace/ (props changed) head/sys/contrib/dev/acpica/components/parser/ (props changed) head/sys/contrib/dev/acpica/components/resources/ (props changed) head/sys/contrib/dev/acpica/components/tables/ (props changed) head/sys/contrib/dev/acpica/components/utilities/ (props changed) head/sys/contrib/dev/acpica/include/ (props changed) head/sys/contrib/dev/acpica/os_specific/ (props changed) head/sys/contrib/ipfilter/ (props changed) head/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c (props changed) head/sys/contrib/ipfilter/netinet/ip_raudio_pxy.c (props changed) head/sys/contrib/libfdt/ (props changed) head/sys/contrib/octeon-sdk/ (props changed) head/sys/contrib/x86emu/ (props changed) head/sys/contrib/xz-embedded/ (props changed) head/sys/dev/bvm/ (props changed) head/sys/dev/hyperv/ (props changed) head/sys/gnu/dts/ (props changed) head/sys/gnu/dts/arm/ (props changed) head/sys/gnu/dts/include/dt-bindings/ (props changed) head/sys/mips/beri/fdt_ic_if.m (props changed) head/sys/modules/hyperv/ (props changed) head/sys/modules/vmm/ (props changed) head/sys/x86/include/acpica_machdep.h (props changed) head/usr.bin/calendar/ (props changed) head/usr.bin/mkimg/ (props changed) head/usr.bin/procstat/ (props changed) head/usr.sbin/bhyve/ (props changed) head/usr.sbin/bhyvectl/ (props changed) head/usr.sbin/bhyveload/ (props changed) head/usr.sbin/jail/ (props changed) head/usr.sbin/ndiscvt/ (props changed) head/usr.sbin/rtadvctl/ (props changed) head/usr.sbin/rtadvd/ (props changed) head/usr.sbin/rtsold/ (props changed) head/usr.sbin/zic/ (props changed) Modified: head/ObsoleteFiles.inc ============================================================================== --- head/ObsoleteFiles.inc Wed Dec 31 20:13:31 2014 (r276478) +++ head/ObsoleteFiles.inc Wed Dec 31 20:31:32 2014 (r276479) @@ -38,6 +38,42 @@ # xargs -n1 | sort | uniq -d; # done +# 20141231: new clang import which bumps version from 3.4.1 to 3.5.0. +OLD_FILES+=usr/include/clang/3.4.1/__wmmintrin_aes.h +OLD_FILES+=usr/include/clang/3.4.1/__wmmintrin_pclmul.h +OLD_FILES+=usr/include/clang/3.4.1/altivec.h +OLD_FILES+=usr/include/clang/3.4.1/ammintrin.h +OLD_FILES+=usr/include/clang/3.4.1/arm_neon.h +OLD_FILES+=usr/include/clang/3.4.1/avx2intrin.h +OLD_FILES+=usr/include/clang/3.4.1/avxintrin.h +OLD_FILES+=usr/include/clang/3.4.1/bmi2intrin.h +OLD_FILES+=usr/include/clang/3.4.1/bmiintrin.h +OLD_FILES+=usr/include/clang/3.4.1/cpuid.h +OLD_FILES+=usr/include/clang/3.4.1/emmintrin.h +OLD_FILES+=usr/include/clang/3.4.1/f16cintrin.h +OLD_FILES+=usr/include/clang/3.4.1/fma4intrin.h +OLD_FILES+=usr/include/clang/3.4.1/fmaintrin.h +OLD_FILES+=usr/include/clang/3.4.1/immintrin.h +OLD_FILES+=usr/include/clang/3.4.1/lzcntintrin.h +OLD_FILES+=usr/include/clang/3.4.1/mm3dnow.h +OLD_FILES+=usr/include/clang/3.4.1/mm_malloc.h +OLD_FILES+=usr/include/clang/3.4.1/mmintrin.h +OLD_FILES+=usr/include/clang/3.4.1/module.map +OLD_FILES+=usr/include/clang/3.4.1/nmmintrin.h +OLD_FILES+=usr/include/clang/3.4.1/pmmintrin.h +OLD_FILES+=usr/include/clang/3.4.1/popcntintrin.h +OLD_FILES+=usr/include/clang/3.4.1/prfchwintrin.h +OLD_FILES+=usr/include/clang/3.4.1/rdseedintrin.h +OLD_FILES+=usr/include/clang/3.4.1/rtmintrin.h +OLD_FILES+=usr/include/clang/3.4.1/shaintrin.h +OLD_FILES+=usr/include/clang/3.4.1/smmintrin.h +OLD_FILES+=usr/include/clang/3.4.1/tbmintrin.h +OLD_FILES+=usr/include/clang/3.4.1/tmmintrin.h +OLD_FILES+=usr/include/clang/3.4.1/wmmintrin.h +OLD_FILES+=usr/include/clang/3.4.1/x86intrin.h +OLD_FILES+=usr/include/clang/3.4.1/xmmintrin.h +OLD_FILES+=usr/include/clang/3.4.1/xopintrin.h +OLD_DIRS+=usr/include/clang/3.4.1 # 20141226: Remove gpib/ieee488 OLD_FILES+=usr/include/dev/ieee488/ibfoo_int.h OLD_FILES+=usr/include/dev/ieee488/tnt4882.h Modified: head/UPDATING ============================================================================== --- head/UPDATING Wed Dec 31 20:13:31 2014 (r276478) +++ head/UPDATING Wed Dec 31 20:31:32 2014 (r276479) @@ -31,6 +31,68 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20141231: + Clang, llvm and lldb have been upgraded to 3.5.0 release. + + As of this release, a prerequisite for building clang, llvm and lldb is + a C++11 capable compiler and C++11 standard library. This means that to + be able to successfully build the cross-tools stage of buildworld, with + clang as the bootstrap compiler, your system compiler or cross compiler + should either be clang 3.3 or later, or gcc 4.8 or later, and your + system C++ library should be libc++, or libdstdc++ from gcc 4.8 or + later. + + On any standard FreeBSD 10.x or 11.x installation, where clang and + libc++ are on by default (that is, on x86 or arm), this should work out + of the box. + + On 9.x installations where clang is enabled by default, e.g. on x86 and + powerpc, libc++ will not be enabled by default, so libc++ should be + built (with clang) and installed first. If both clang and libc++ are + missing, build clang first, then use it to build libc++. + + On 8.x and earlier installations, upgrade to 9.x first, and then follow + the instructions for 9.x above. + + Sparc64 and mips users are unaffected, as they still use gcc 4.2.1 by + default, and do not build clang. + + Many embedded systems are resource constrained, and will not be able to + build clang in a reasonable time, or in some cases at all. In those + cases, cross building bootable systems on amd64 is a workaround. + + This new version of clang introduces a number of new warnings, of which + the following are most likely to appear: + + -Wabsolute-value + + This warns in two cases, for both C and C++: + * When the code is trying to take the absolute value of an unsigned + quantity, which is effectively a no-op, and almost never what was + intended. The code should be fixed, if at all possible. If you are + sure that the unsigned quantity can be safely cast to signed, without + loss of information or undefined behavior, you can add an explicit + cast, or disable the warning. + + * When the code is trying to take an absolute value, but the called + abs() variant is for the wrong type, which can lead to truncation. + If you want to disable the warning instead of fixing the code, please + make sure that truncation will not occur, or it might lead to unwanted + side-effects. + + -Wtautological-undefined-compare and + -Wundefined-bool-conversion + + These warn when C++ code is trying to compare 'this' against NULL, while + 'this' should never be NULL in well-defined C++ code. However, there is + some legacy (pre C++11) code out there, which actively abuses this + feature, which was less strictly defined in previous C++ versions. + + Squid and openjdk do this, for example. The warning can be turned off + for C++98 and earlier, but compiling the code in C++11 mode might result + in unexpected behavior; for example, the parts of the program that are + unreachable could be optimized away. + 20141222: The old NFS client and server (kernel options NFSCLIENT, NFSSERVER) kernel sources have been removed. The .h files remain, since some Modified: head/contrib/llvm/LICENSE.TXT ============================================================================== --- head/contrib/llvm/LICENSE.TXT Wed Dec 31 20:13:31 2014 (r276478) +++ head/contrib/llvm/LICENSE.TXT Wed Dec 31 20:31:32 2014 (r276479) @@ -4,7 +4,7 @@ LLVM Release License University of Illinois/NCSA Open Source License -Copyright (c) 2003-2013 University of Illinois at Urbana-Champaign. +Copyright (c) 2003-2014 University of Illinois at Urbana-Champaign. All rights reserved. Developed by: @@ -63,7 +63,6 @@ Program Directory ------- --------- Autoconf llvm/autoconf llvm/projects/ModuleMaker/autoconf - llvm/projects/sample/autoconf Google Test llvm/utils/unittest/googletest OpenBSD regex llvm/lib/Support/{reg*, COPYRIGHT.regex} pyyaml tests llvm/test/YAMLParser/{*.data, LICENSE.TXT} Modified: head/contrib/llvm/include/llvm-c/Core.h ============================================================================== --- head/contrib/llvm/include/llvm-c/Core.h Wed Dec 31 20:13:31 2014 (r276478) +++ head/contrib/llvm/include/llvm-c/Core.h Wed Dec 31 20:31:32 2014 (r276479) @@ -15,7 +15,7 @@ #ifndef LLVM_C_CORE_H #define LLVM_C_CORE_H -#include "llvm/Support/DataTypes.h" +#include "llvm-c/Support.h" #ifdef __cplusplus extern "C" { @@ -62,8 +62,6 @@ extern "C" { * @{ */ -typedef int LLVMBool; - /* Opaque types. */ /** @@ -114,13 +112,6 @@ typedef struct LLVMOpaqueBuilder *LLVMBu */ typedef struct LLVMOpaqueModuleProvider *LLVMModuleProviderRef; -/** - * Used to provide a module to JIT or interpreter. - * - * @see llvm::MemoryBuffer - */ -typedef struct LLVMOpaqueMemoryBuffer *LLVMMemoryBufferRef; - /** @see llvm::PassManagerBase */ typedef struct LLVMOpaquePassManager *LLVMPassManagerRef; @@ -133,6 +124,12 @@ typedef struct LLVMOpaquePassRegistry *L * @see llvm::Use */ typedef struct LLVMOpaqueUse *LLVMUseRef; + +/** + * @see llvm::DiagnosticInfo + */ +typedef struct LLVMOpaqueDiagnosticInfo *LLVMDiagnosticInfoRef; + typedef enum { LLVMZExtAttribute = 1<<0, LLVMSExtAttribute = 1<<1, @@ -167,7 +164,11 @@ typedef enum { LLVMAddressSafety = 1ULL << 32, LLVMStackProtectStrongAttribute = 1ULL<<33, LLVMCold = 1ULL << 34, - LLVMOptimizeNone = 1ULL << 35 + LLVMOptimizeNone = 1ULL << 35, + LLVMInAllocaAttribute = 1ULL << 36, + LLVMNonNullAttribute = 1ULL << 37, + LLVMJumpTableAttribute = 1ULL << 38, + LLVMDereferenceableAttribute = 1ULL << 39, */ } LLVMAttribute; @@ -283,8 +284,8 @@ typedef enum { LLVMInternalLinkage, /**< Rename collisions when linking (static functions) */ LLVMPrivateLinkage, /**< Like Internal, but omit from symbol table */ - LLVMDLLImportLinkage, /**< Function to be imported from DLL */ - LLVMDLLExportLinkage, /**< Function to be accessible from DLL */ + LLVMDLLImportLinkage, /**< Obsolete */ + LLVMDLLExportLinkage, /**< Obsolete */ LLVMExternalWeakLinkage,/**< ExternalWeak linkage description */ LLVMGhostLinkage, /**< Obsolete */ LLVMCommonLinkage, /**< Tentative definitions */ @@ -299,6 +300,12 @@ typedef enum { } LLVMVisibility; typedef enum { + LLVMDefaultStorageClass = 0, + LLVMDLLImportStorageClass = 1, /**< Function to be imported from DLL. */ + LLVMDLLExportStorageClass = 2 /**< Function to be accessible from DLL. */ +} LLVMDLLStorageClass; + +typedef enum { LLVMCCallConv = 0, LLVMFastCallConv = 8, LLVMColdCallConv = 9, @@ -402,6 +409,13 @@ typedef enum { the old one */ } LLVMAtomicRMWBinOp; +typedef enum { + LLVMDSError, + LLVMDSWarning, + LLVMDSRemark, + LLVMDSNote +} LLVMDiagnosticSeverity; + /** * @} */ @@ -455,6 +469,9 @@ void LLVMEnablePrettyStackTrace(void); * @{ */ +typedef void (*LLVMDiagnosticHandler)(LLVMDiagnosticInfoRef, void *); +typedef void (*LLVMYieldCallback)(LLVMContextRef, void *); + /** * Create a new context. * @@ -469,6 +486,21 @@ LLVMContextRef LLVMContextCreate(void); LLVMContextRef LLVMGetGlobalContext(void); /** + * Set the diagnostic handler for this context. + */ +void LLVMContextSetDiagnosticHandler(LLVMContextRef C, + LLVMDiagnosticHandler Handler, + void *DiagnosticContext); + +/** + * Set the yield callback function for this context. + * + * @see LLVMContext::setYieldCallback() + */ +void LLVMContextSetYieldCallback(LLVMContextRef C, LLVMYieldCallback Callback, + void *OpaqueHandle); + +/** * Destroy a context instance. * * This should be called for every call to LLVMContextCreate() or memory @@ -476,6 +508,21 @@ LLVMContextRef LLVMGetGlobalContext(void */ void LLVMContextDispose(LLVMContextRef C); +/** + * Return a string representation of the DiagnosticInfo. Use + * LLVMDisposeMessage to free the string. + * + * @see DiagnosticInfo::print() + */ +char *LLVMGetDiagInfoDescription(LLVMDiagnosticInfoRef DI); + +/** + * Return an enum LLVMDiagnosticSeverity. + * + * @see DiagnosticInfo::getSeverity() + */ +LLVMDiagnosticSeverity LLVMGetDiagInfoSeverity(LLVMDiagnosticInfoRef DI); + unsigned LLVMGetMDKindIDInContext(LLVMContextRef C, const char* Name, unsigned SLen); unsigned LLVMGetMDKindID(const char* Name, unsigned SLen); @@ -1123,9 +1170,10 @@ LLVMTypeRef LLVMX86MMXType(void); macro(ConstantStruct) \ macro(ConstantVector) \ macro(GlobalValue) \ - macro(Function) \ macro(GlobalAlias) \ - macro(GlobalVariable) \ + macro(GlobalObject) \ + macro(Function) \ + macro(GlobalVariable) \ macro(UndefValue) \ macro(Instruction) \ macro(BinaryOperator) \ @@ -1688,6 +1736,10 @@ const char *LLVMGetSection(LLVMValueRef void LLVMSetSection(LLVMValueRef Global, const char *Section); LLVMVisibility LLVMGetVisibility(LLVMValueRef Global); void LLVMSetVisibility(LLVMValueRef Global, LLVMVisibility Viz); +LLVMDLLStorageClass LLVMGetDLLStorageClass(LLVMValueRef Global); +void LLVMSetDLLStorageClass(LLVMValueRef Global, LLVMDLLStorageClass Class); +LLVMBool LLVMHasUnnamedAddr(LLVMValueRef Global); +void LLVMSetUnnamedAddr(LLVMValueRef Global, LLVMBool HasUnnamedAddr); /** * @defgroup LLVMCCoreValueWithAlignment Values with alignment @@ -1698,6 +1750,7 @@ void LLVMSetVisibility(LLVMValueRef Glob /** * Obtain the preferred alignment of the value. + * @see llvm::AllocaInst::getAlignment() * @see llvm::LoadInst::getAlignment() * @see llvm::StoreInst::getAlignment() * @see llvm::GlobalValue::getAlignment() @@ -1706,6 +1759,7 @@ unsigned LLVMGetAlignment(LLVMValueRef V /** * Set the preferred alignment of the value. + * @see llvm::AllocaInst::setAlignment() * @see llvm::LoadInst::setAlignment() * @see llvm::StoreInst::setAlignment() * @see llvm::GlobalValue::setAlignment() @@ -2663,7 +2717,9 @@ LLVMValueRef LLVMBuildIsNotNull(LLVMBuil const char *Name); LLVMValueRef LLVMBuildPtrDiff(LLVMBuilderRef, LLVMValueRef LHS, LLVMValueRef RHS, const char *Name); -LLVMValueRef LLVMBuildAtomicRMW(LLVMBuilderRef B,LLVMAtomicRMWBinOp op, +LLVMValueRef LLVMBuildFence(LLVMBuilderRef B, LLVMAtomicOrdering ordering, + LLVMBool singleThread, const char *Name); +LLVMValueRef LLVMBuildAtomicRMW(LLVMBuilderRef B, LLVMAtomicRMWBinOp op, LLVMValueRef PTR, LLVMValueRef Val, LLVMAtomicOrdering ordering, LLVMBool singleThread); @@ -2793,16 +2849,13 @@ void LLVMDisposePassManager(LLVMPassMana * @{ */ -/** Allocate and initialize structures needed to make LLVM safe for - multithreading. The return value indicates whether multithreaded - initialization succeeded. Must be executed in isolation from all - other LLVM api calls. - @see llvm::llvm_start_multithreaded */ +/** Deprecated: Multi-threading can only be enabled/disabled with the compile + time define LLVM_ENABLE_THREADS. This function always returns + LLVMIsMultithreaded(). */ LLVMBool LLVMStartMultithreaded(void); -/** Deallocate structures necessary to make LLVM safe for multithreading. - Must be executed in isolation from all other LLVM api calls. - @see llvm::llvm_stop_multithreaded */ +/** Deprecated: Multi-threading can only be enabled/disabled with the compile + time define LLVM_ENABLE_THREADS. */ void LLVMStopMultithreaded(void); /** Check whether LLVM is executing in thread-safe mode or not. Modified: head/contrib/llvm/include/llvm-c/Disassembler.h ============================================================================== --- head/contrib/llvm/include/llvm-c/Disassembler.h Wed Dec 31 20:13:31 2014 (r276478) +++ head/contrib/llvm/include/llvm-c/Disassembler.h Wed Dec 31 20:31:32 2014 (r276479) @@ -96,6 +96,16 @@ struct LLVMOpInfo1 { #define LLVMDisassembler_VariantKind_ARM_LO16 2 /* :lower16: */ /** + * The ARM64 target VariantKinds. + */ +#define LLVMDisassembler_VariantKind_ARM64_PAGE 1 /* @page */ +#define LLVMDisassembler_VariantKind_ARM64_PAGEOFF 2 /* @pageoff */ +#define LLVMDisassembler_VariantKind_ARM64_GOTPAGE 3 /* @gotpage */ +#define LLVMDisassembler_VariantKind_ARM64_GOTPAGEOFF 4 /* @gotpageoff */ +#define LLVMDisassembler_VariantKind_ARM64_TLVP 5 /* @tvlppage */ +#define LLVMDisassembler_VariantKind_ARM64_TLVOFF 6 /* @tvlppageoff */ + +/** * The type for the symbol lookup function. This may be called by the * disassembler for things like adding a comment for a PC plus a constant * offset load instruction to use a symbol name instead of a load address value. @@ -123,6 +133,17 @@ typedef const char *(*LLVMSymbolLookupCa /* The input reference is from a PC relative load instruction. */ #define LLVMDisassembler_ReferenceType_In_PCrel_Load 2 +/* The input reference is from an ARM64::ADRP instruction. */ +#define LLVMDisassembler_ReferenceType_In_ARM64_ADRP 0x100000001 +/* The input reference is from an ARM64::ADDXri instruction. */ +#define LLVMDisassembler_ReferenceType_In_ARM64_ADDXri 0x100000002 +/* The input reference is from an ARM64::LDRXui instruction. */ +#define LLVMDisassembler_ReferenceType_In_ARM64_LDRXui 0x100000003 +/* The input reference is from an ARM64::LDRXl instruction. */ +#define LLVMDisassembler_ReferenceType_In_ARM64_LDRXl 0x100000004 +/* The input reference is from an ARM64::ADR instruction. */ +#define LLVMDisassembler_ReferenceType_In_ARM64_ADR 0x100000005 + /* The output reference is to as symbol stub. */ #define LLVMDisassembler_ReferenceType_Out_SymbolStub 1 /* The output reference is to a symbol address in a literal pool. */ @@ -141,6 +162,9 @@ typedef const char *(*LLVMSymbolLookupCa /* The output reference is to a Objective-C class ref. */ #define LLVMDisassembler_ReferenceType_Out_Objc_Class_Ref 8 +/* The output reference is to a C++ symbol name. */ +#define LLVMDisassembler_ReferenceType_DeMangled_Name 9 + #ifdef __cplusplus extern "C" { #endif /* !defined(__cplusplus) */ Modified: head/contrib/llvm/include/llvm-c/ExecutionEngine.h ============================================================================== --- head/contrib/llvm/include/llvm-c/ExecutionEngine.h Wed Dec 31 20:13:31 2014 (r276478) +++ head/contrib/llvm/include/llvm-c/ExecutionEngine.h Wed Dec 31 20:31:32 2014 (r276479) @@ -163,6 +163,8 @@ void *LLVMRecompileAndRelinkFunction(LLV LLVMValueRef Fn); LLVMTargetDataRef LLVMGetExecutionEngineTargetData(LLVMExecutionEngineRef EE); +LLVMTargetMachineRef +LLVMGetExecutionEngineTargetMachine(LLVMExecutionEngineRef EE); void LLVMAddGlobalMapping(LLVMExecutionEngineRef EE, LLVMValueRef Global, void* Addr); Modified: head/contrib/llvm/include/llvm-c/IRReader.h ============================================================================== --- head/contrib/llvm/include/llvm-c/IRReader.h Wed Dec 31 20:13:31 2014 (r276478) +++ head/contrib/llvm/include/llvm-c/IRReader.h Wed Dec 31 20:31:32 2014 (r276479) @@ -24,7 +24,7 @@ extern "C" { * Read LLVM IR from a memory buffer and convert it into an in-memory Module * object. Returns 0 on success. * Optionally returns a human-readable description of any errors that - * occured during parsing IR. OutMessage must be disposed with + * occurred during parsing IR. OutMessage must be disposed with * LLVMDisposeMessage. * * @see llvm::ParseIR() Modified: head/contrib/llvm/include/llvm-c/Object.h ============================================================================== --- head/contrib/llvm/include/llvm-c/Object.h Wed Dec 31 20:13:31 2014 (r276478) +++ head/contrib/llvm/include/llvm-c/Object.h Wed Dec 31 20:31:32 2014 (r276479) @@ -78,7 +78,6 @@ void LLVMMoveToNextRelocation(LLVMReloca // SymbolRef accessors const char *LLVMGetSymbolName(LLVMSymbolIteratorRef SI); uint64_t LLVMGetSymbolAddress(LLVMSymbolIteratorRef SI); -uint64_t LLVMGetSymbolFileOffset(LLVMSymbolIteratorRef SI); uint64_t LLVMGetSymbolSize(LLVMSymbolIteratorRef SI); // RelocationRef accessors Modified: head/contrib/llvm/include/llvm-c/Support.h ============================================================================== --- head/contrib/llvm/include/llvm-c/Support.h Wed Dec 31 20:13:31 2014 (r276478) +++ head/contrib/llvm/include/llvm-c/Support.h Wed Dec 31 20:31:32 2014 (r276479) @@ -14,13 +14,32 @@ #ifndef LLVM_C_SUPPORT_H #define LLVM_C_SUPPORT_H -#include "llvm-c/Core.h" +#include "llvm/Support/DataTypes.h" #ifdef __cplusplus extern "C" { #endif /** + * @defgroup LLVMCSupportTypes Types and Enumerations + * + * @{ + */ + +typedef int LLVMBool; + +/** + * Used to pass regions of memory through LLVM interfaces. + * + * @see llvm::MemoryBuffer + */ +typedef struct LLVMOpaqueMemoryBuffer *LLVMMemoryBufferRef; + +/** + * @} + */ + +/** * This function permanently loads the dynamic library at the given path. * It is safe to call this function multiple times for the same library. * Modified: head/contrib/llvm/include/llvm-c/TargetMachine.h ============================================================================== --- head/contrib/llvm/include/llvm-c/TargetMachine.h Wed Dec 31 20:13:31 2014 (r276478) +++ head/contrib/llvm/include/llvm-c/TargetMachine.h Wed Dec 31 20:31:32 2014 (r276479) @@ -62,7 +62,7 @@ LLVMTargetRef LLVMGetFirstTarget(void); LLVMTargetRef LLVMGetNextTarget(LLVMTargetRef T); /*===-- Target ------------------------------------------------------------===*/ -/** Finds the target corresponding to the given name and stores it in \p T. +/** Finds the target corresponding to the given name and stores it in \p T. Returns 0 on success. */ LLVMTargetRef LLVMGetTargetFromName(const char *Name); @@ -137,6 +137,9 @@ LLVMBool LLVMTargetMachineEmitToMemoryBu disposed with LLVMDisposeMessage. */ char* LLVMGetDefaultTargetTriple(void); +/** Adds the target-specific analysis passes to the pass manager. */ +void LLVMAddAnalysisPasses(LLVMTargetMachineRef T, LLVMPassManagerRef PM); + #ifdef __cplusplus } #endif Modified: head/contrib/llvm/include/llvm-c/Transforms/PassManagerBuilder.h ============================================================================== --- head/contrib/llvm/include/llvm-c/Transforms/PassManagerBuilder.h Wed Dec 31 20:13:31 2014 (r276478) +++ head/contrib/llvm/include/llvm-c/Transforms/PassManagerBuilder.h Wed Dec 31 20:31:32 2014 (r276479) @@ -19,7 +19,6 @@ typedef struct LLVMOpaquePassManagerBuilder *LLVMPassManagerBuilderRef; #ifdef __cplusplus -#include "llvm/Transforms/IPO/PassManagerBuilder.h" extern "C" { #endif Modified: head/contrib/llvm/include/llvm-c/Transforms/Scalar.h ============================================================================== --- head/contrib/llvm/include/llvm-c/Transforms/Scalar.h Wed Dec 31 20:13:31 2014 (r276478) +++ head/contrib/llvm/include/llvm-c/Transforms/Scalar.h Wed Dec 31 20:31:32 2014 (r276479) @@ -41,6 +41,12 @@ void LLVMAddCFGSimplificationPass(LLVMPa /** See llvm::createDeadStoreEliminationPass function. */ void LLVMAddDeadStoreEliminationPass(LLVMPassManagerRef PM); +/** See llvm::createScalarizerPass function. */ +void LLVMAddScalarizerPass(LLVMPassManagerRef PM); + +/** See llvm::createMergedLoadStoreMotionPass function. */ +void LLVMAddMergedLoadStoreMotionPass(LLVMPassManagerRef PM); + /** See llvm::createGVNPass function. */ void LLVMAddGVNPass(LLVMPassManagerRef PM); Modified: head/contrib/llvm/include/llvm-c/lto.h ============================================================================== --- head/contrib/llvm/include/llvm-c/lto.h Wed Dec 31 20:13:31 2014 (r276478) +++ head/contrib/llvm/include/llvm-c/lto.h Wed Dec 31 20:31:32 2014 (r276479) @@ -40,8 +40,11 @@ typedef bool lto_bool_t; * @{ */ -#define LTO_API_VERSION 5 +#define LTO_API_VERSION 10 +/** + * \since prior to LTO_API_VERSION=3 + */ typedef enum { LTO_SYMBOL_ALIGNMENT_MASK = 0x0000001F, /* log2 of alignment */ LTO_SYMBOL_PERMISSIONS_MASK = 0x000000E0, @@ -62,23 +65,29 @@ typedef enum { LTO_SYMBOL_SCOPE_DEFAULT_CAN_BE_HIDDEN = 0x00002800 } lto_symbol_attributes; +/** + * \since prior to LTO_API_VERSION=3 + */ typedef enum { LTO_DEBUG_MODEL_NONE = 0, LTO_DEBUG_MODEL_DWARF = 1 } lto_debug_model; +/** + * \since prior to LTO_API_VERSION=3 + */ typedef enum { LTO_CODEGEN_PIC_MODEL_STATIC = 0, LTO_CODEGEN_PIC_MODEL_DYNAMIC = 1, - LTO_CODEGEN_PIC_MODEL_DYNAMIC_NO_PIC = 2 + LTO_CODEGEN_PIC_MODEL_DYNAMIC_NO_PIC = 2, + LTO_CODEGEN_PIC_MODEL_DEFAULT = 3 } lto_codegen_model; - /** opaque reference to a loaded object module */ -typedef struct LTOModule* lto_module_t; +typedef struct LLVMOpaqueLTOModule *lto_module_t; /** opaque reference to a code generator */ -typedef struct LTOCodeGenerator* lto_code_gen_t; +typedef struct LLVMOpaqueLTOCodeGenerator *lto_code_gen_t; #ifdef __cplusplus extern "C" { @@ -86,6 +95,8 @@ extern "C" { /** * Returns a printable string. + * + * \since prior to LTO_API_VERSION=3 */ extern const char* lto_get_version(void); @@ -93,12 +104,16 @@ lto_get_version(void); /** * Returns the last error string or NULL if last operation was successful. + * + * \since prior to LTO_API_VERSION=3 */ extern const char* lto_get_error_message(void); /** * Checks if a file is a loadable object file. + * + * \since prior to LTO_API_VERSION=3 */ extern lto_bool_t lto_module_is_object_file(const char* path); @@ -106,6 +121,8 @@ lto_module_is_object_file(const char* pa /** * Checks if a file is a loadable object compiled for requested target. + * + * \since prior to LTO_API_VERSION=3 */ extern lto_bool_t lto_module_is_object_file_for_target(const char* path, @@ -114,6 +131,8 @@ lto_module_is_object_file_for_target(con /** * Checks if a buffer is a loadable object file. + * + * \since prior to LTO_API_VERSION=3 */ extern lto_bool_t lto_module_is_object_file_in_memory(const void* mem, size_t length); @@ -121,6 +140,8 @@ lto_module_is_object_file_in_memory(cons /** * Checks if a buffer is a loadable object compiled for requested target. + * + * \since prior to LTO_API_VERSION=3 */ extern lto_bool_t lto_module_is_object_file_in_memory_for_target(const void* mem, size_t length, @@ -130,6 +151,8 @@ lto_module_is_object_file_in_memory_for_ /** * Loads an object file from disk. * Returns NULL on error (check lto_get_error_message() for details). + * + * \since prior to LTO_API_VERSION=3 */ extern lto_module_t lto_module_create(const char* path); @@ -138,13 +161,27 @@ lto_module_create(const char* path); /** * Loads an object file from memory. * Returns NULL on error (check lto_get_error_message() for details). + * + * \since prior to LTO_API_VERSION=3 */ extern lto_module_t lto_module_create_from_memory(const void* mem, size_t length); /** + * Loads an object file from memory with an extra path argument. + * Returns NULL on error (check lto_get_error_message() for details). + * + * \since prior to LTO_API_VERSION=9 + */ +extern lto_module_t +lto_module_create_from_memory_with_path(const void* mem, size_t length, + const char *path); + +/** * Loads an object file from disk. The seek point of fd is not preserved. * Returns NULL on error (check lto_get_error_message() for details). + * + * \since LTO_API_VERSION=5 */ extern lto_module_t lto_module_create_from_fd(int fd, const char *path, size_t file_size); @@ -152,28 +189,34 @@ lto_module_create_from_fd(int fd, const /** * Loads an object file from disk. The seek point of fd is not preserved. * Returns NULL on error (check lto_get_error_message() for details). + * + * \since LTO_API_VERSION=5 */ extern lto_module_t lto_module_create_from_fd_at_offset(int fd, const char *path, size_t file_size, size_t map_size, off_t offset); - /** * Frees all memory internally allocated by the module. * Upon return the lto_module_t is no longer valid. + * + * \since prior to LTO_API_VERSION=3 */ extern void lto_module_dispose(lto_module_t mod); - /** * Returns triple string which the object module was compiled under. + * + * \since prior to LTO_API_VERSION=3 */ extern const char* lto_module_get_target_triple(lto_module_t mod); /** * Sets triple string with which the object will be codegened. + * + * \since LTO_API_VERSION=4 */ extern void lto_module_set_target_triple(lto_module_t mod, const char *triple); @@ -181,6 +224,8 @@ lto_module_set_target_triple(lto_module_ /** * Returns the number of symbols in the object module. + * + * \since prior to LTO_API_VERSION=3 */ extern unsigned int lto_module_get_num_symbols(lto_module_t mod); @@ -188,6 +233,8 @@ lto_module_get_num_symbols(lto_module_t /** * Returns the name of the ith symbol in the object module. + * + * \since prior to LTO_API_VERSION=3 */ extern const char* lto_module_get_symbol_name(lto_module_t mod, unsigned int index); @@ -195,40 +242,116 @@ lto_module_get_symbol_name(lto_module_t /** * Returns the attributes of the ith symbol in the object module. + * + * \since prior to LTO_API_VERSION=3 */ extern lto_symbol_attributes lto_module_get_symbol_attribute(lto_module_t mod, unsigned int index); /** + * Returns the number of dependent libraries in the object module. + * + * \since LTO_API_VERSION=8 + */ +extern unsigned int +lto_module_get_num_deplibs(lto_module_t mod); + + +/** + * Returns the ith dependent library in the module. + * + * \since LTO_API_VERSION=8 + */ +extern const char* +lto_module_get_deplib(lto_module_t mod, unsigned int index); + + +/** + * Returns the number of linker options in the object module. + * + * \since LTO_API_VERSION=8 + */ +extern unsigned int +lto_module_get_num_linkeropts(lto_module_t mod); + + +/** + * Returns the ith linker option in the module. + * + * \since LTO_API_VERSION=8 + */ +extern const char* +lto_module_get_linkeropt(lto_module_t mod, unsigned int index); + + +/** + * Diagnostic severity. + * + * \since LTO_API_VERSION=7 + */ +typedef enum { + LTO_DS_ERROR = 0, + LTO_DS_WARNING = 1, + LTO_DS_REMARK = 3, // Added in LTO_API_VERSION=10. + LTO_DS_NOTE = 2 +} lto_codegen_diagnostic_severity_t; + +/** + * Diagnostic handler type. + * \p severity defines the severity. + * \p diag is the actual diagnostic. + * The diagnostic is not prefixed by any of severity keyword, e.g., 'error: '. + * \p ctxt is used to pass the context set with the diagnostic handler. + * + * \since LTO_API_VERSION=7 + */ +typedef void (*lto_diagnostic_handler_t)( + lto_codegen_diagnostic_severity_t severity, const char *diag, void *ctxt); + +/** + * Set a diagnostic handler and the related context (void *). + * This is more general than lto_get_error_message, as the diagnostic handler + * can be called at anytime within lto. + * + * \since LTO_API_VERSION=7 + */ +extern void lto_codegen_set_diagnostic_handler(lto_code_gen_t, + lto_diagnostic_handler_t, + void *); + +/** * Instantiates a code generator. * Returns NULL on error (check lto_get_error_message() for details). + * + * \since prior to LTO_API_VERSION=3 */ extern lto_code_gen_t lto_codegen_create(void); - /** * Frees all code generator and all memory it internally allocated. * Upon return the lto_code_gen_t is no longer valid. + * + * \since prior to LTO_API_VERSION=3 */ extern void lto_codegen_dispose(lto_code_gen_t); - - /** * Add an object module to the set of modules for which code will be generated. * Returns true on error (check lto_get_error_message() for details). + * + * \since prior to LTO_API_VERSION=3 */ extern lto_bool_t lto_codegen_add_module(lto_code_gen_t cg, lto_module_t mod); - - /** * Sets if debug info should be generated. * Returns true on error (check lto_get_error_message() for details). + * + * \since prior to LTO_API_VERSION=3 */ extern lto_bool_t lto_codegen_set_debug_model(lto_code_gen_t cg, lto_debug_model); @@ -237,6 +360,8 @@ lto_codegen_set_debug_model(lto_code_gen /** * Sets which PIC code model to generated. * Returns true on error (check lto_get_error_message() for details). + * + * \since prior to LTO_API_VERSION=3 */ extern lto_bool_t lto_codegen_set_pic_model(lto_code_gen_t cg, lto_codegen_model); @@ -244,6 +369,8 @@ lto_codegen_set_pic_model(lto_code_gen_t /** * Sets the cpu to generate code for. + * + * \since LTO_API_VERSION=4 */ extern void lto_codegen_set_cpu(lto_code_gen_t cg, const char *cpu); @@ -252,20 +379,27 @@ lto_codegen_set_cpu(lto_code_gen_t cg, c /** * Sets the location of the assembler tool to run. If not set, libLTO * will use gcc to invoke the assembler. + * + * \since LTO_API_VERSION=3 */ extern void lto_codegen_set_assembler_path(lto_code_gen_t cg, const char* path); /** * Sets extra arguments that libLTO should pass to the assembler. + * + * \since LTO_API_VERSION=4 */ extern void lto_codegen_set_assembler_args(lto_code_gen_t cg, const char **args, int nargs); /** - * Tells LTO optimization passes that this symbol must be preserved - * because it is referenced by native code or a command line option. + * Adds to a list of all global symbols that must exist in the final generated + * code. If a function is not listed there, it might be inlined into every usage + * and optimized away. + * + * \since prior to LTO_API_VERSION=3 */ extern void lto_codegen_add_must_preserve_symbol(lto_code_gen_t cg, const char* symbol); @@ -274,6 +408,8 @@ lto_codegen_add_must_preserve_symbol(lto * Writes a new object file at the specified path that contains the * merged contents of all modules added so far. * Returns true on error (check lto_get_error_message() for details). + * + * \since LTO_API_VERSION=5 */ extern lto_bool_t lto_codegen_write_merged_modules(lto_code_gen_t cg, const char* path); @@ -285,6 +421,8 @@ lto_codegen_write_merged_modules(lto_cod * lto_code_gen_t and will be freed when lto_codegen_dispose() * is called, or lto_codegen_compile() is called again. * On failure, returns NULL (check lto_get_error_message() for details). + * + * \since prior to LTO_API_VERSION=3 */ extern const void* lto_codegen_compile(lto_code_gen_t cg, size_t* length); @@ -292,6 +430,8 @@ lto_codegen_compile(lto_code_gen_t cg, s /** * Generates code for all added modules into one native object file. * The name of the file is written to name. Returns true on error. + * + * \since LTO_API_VERSION=5 */ extern lto_bool_t lto_codegen_compile_to_file(lto_code_gen_t cg, const char** name); @@ -299,6 +439,8 @@ lto_codegen_compile_to_file(lto_code_gen /** * Sets options to help debug codegen bugs. + * + * \since prior to LTO_API_VERSION=3 */ extern void lto_codegen_debug_options(lto_code_gen_t cg, const char *); @@ -306,6 +448,8 @@ lto_codegen_debug_options(lto_code_gen_t /** * Initializes LLVM disassemblers. * FIXME: This doesn't really belong here. + * + * \since LTO_API_VERSION=5 */ extern void lto_initialize_disassembler(void); Copied: head/contrib/llvm/include/llvm-c/module.modulemap (from r276476, projects/clang350-import/contrib/llvm/include/llvm-c/module.modulemap) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/contrib/llvm/include/llvm-c/module.modulemap Wed Dec 31 20:31:32 2014 (r276479, copy of r276476, projects/clang350-import/contrib/llvm/include/llvm-c/module.modulemap) @@ -0,0 +1,4 @@ +module LLVM_C { + umbrella "." + module * { export * } +} Modified: head/contrib/llvm/include/llvm/ADT/APFloat.h ============================================================================== --- head/contrib/llvm/include/llvm/ADT/APFloat.h Wed Dec 31 20:13:31 2014 (r276478) +++ head/contrib/llvm/include/llvm/ADT/APFloat.h Wed Dec 31 20:31:32 2014 (r276479) @@ -1,4 +1,4 @@ -//== llvm/Support/APFloat.h - Arbitrary Precision Floating Point -*- C++ -*-==// +//===- llvm/ADT/APFloat.h - Arbitrary Precision Floating Point ---*- C++ -*-==// // // The LLVM Compiler Infrastructure // @@ -196,6 +196,7 @@ public: explicit APFloat(double d); explicit APFloat(float f); APFloat(const APFloat &); + APFloat(APFloat &&); ~APFloat(); /// @} @@ -235,19 +236,19 @@ public: APInt fill(64, type); return getQNaN(Sem, Negative, &fill); } else { - return getQNaN(Sem, Negative, 0); + return getQNaN(Sem, Negative, nullptr); } } /// Factory for QNaN values. static APFloat getQNaN(const fltSemantics &Sem, bool Negative = false, - const APInt *payload = 0) { + const APInt *payload = nullptr) { return makeNaN(Sem, false, Negative, payload); } /// Factory for SNaN values. static APFloat getSNaN(const fltSemantics &Sem, bool Negative = false, - const APInt *payload = 0) { + const APInt *payload = nullptr) { return makeNaN(Sem, true, Negative, payload); } @@ -411,6 +412,7 @@ public: /// @} APFloat &operator=(const APFloat &); + APFloat &operator=(APFloat &&); /// \brief Overload to compute a hash code for an APFloat value. /// @@ -498,7 +500,8 @@ private: void makeLargest(bool Neg = false); void makeSmallest(bool Neg = false); - void makeNaN(bool SNaN = false, bool Neg = false, const APInt *fill = 0); + void makeNaN(bool SNaN = false, bool Neg = false, + const APInt *fill = nullptr); static APFloat makeNaN(const fltSemantics &Sem, bool SNaN, bool Negative, const APInt *fill); void makeInf(bool Neg = false); Modified: head/contrib/llvm/include/llvm/ADT/APInt.h ============================================================================== --- head/contrib/llvm/include/llvm/ADT/APInt.h Wed Dec 31 20:13:31 2014 (r276478) +++ head/contrib/llvm/include/llvm/ADT/APInt.h Wed Dec 31 20:31:32 2014 (r276479) @@ -284,12 +284,10 @@ public: initSlowCase(that); } *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 20:34:13 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B39817E; Wed, 31 Dec 2014 20:34:13 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 94A7530BE; Wed, 31 Dec 2014 20:34:13 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBVKYDHZ055462; Wed, 31 Dec 2014 20:34:13 GMT (envelope-from np@FreeBSD.org) Received: (from np@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBVKYClU055459; Wed, 31 Dec 2014 20:34:12 GMT (envelope-from np@FreeBSD.org) Message-Id: <201412312034.sBVKYClU055459@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: np set sender to np@FreeBSD.org using -f From: Navdeep Parhar Date: Wed, 31 Dec 2014 20:34:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276480 - in head/sys: amd64/conf conf modules X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 20:34:13 -0000 Author: np Date: Wed Dec 31 20:34:12 2014 New Revision: 276480 URL: https://svnweb.freebsd.org/changeset/base/276480 Log: Temporarily unplug cxgbe(4) from !amd64 builds. Modified: head/sys/amd64/conf/NOTES head/sys/conf/NOTES head/sys/modules/Makefile Modified: head/sys/amd64/conf/NOTES ============================================================================== --- head/sys/amd64/conf/NOTES Wed Dec 31 20:31:32 2014 (r276479) +++ head/sys/amd64/conf/NOTES Wed Dec 31 20:34:12 2014 (r276480) @@ -300,6 +300,7 @@ options DRM_DEBUG # Include debug print # bxe: Broadcom NetXtreme II (BCM5771X/BCM578XX) PCIe 10Gb Ethernet # adapters. +# cxgbe: Chelsio T4/T5 1GbE/10GbE/40GbE PCIe Ethernet adapters # ed: Western Digital and SMC 80xx; Novell NE1000 and NE2000; 3Com 3C503 # HP PC Lan+, various PC Card devices # (requires miibus) @@ -322,6 +323,7 @@ options DRM_DEBUG # Include debug print # Requires the wpi firmware module device bxe # Broadcom NetXtreme II BCM5771X/BCM578XX 10GbE +device cxgbe # Chelsio T4/T5 1GbE/10GbE/40GbE device ed # NE[12]000, SMC Ultra, 3c503, DS8390 cards options ED_3C503 options ED_HPP Modified: head/sys/conf/NOTES ============================================================================== --- head/sys/conf/NOTES Wed Dec 31 20:31:32 2014 (r276479) +++ head/sys/conf/NOTES Wed Dec 31 20:34:12 2014 (r276480) @@ -1918,8 +1918,6 @@ device xmphy # XaQti XMAC II # cas: Sun Cassini/Cassini+ and National Semiconductor DP83065 Saturn # cm: Arcnet SMC COM90c26 / SMC COM90c56 # (and SMC COM90c66 in '56 compatibility mode) adapters. -# cxgbe: Support for PCI express 10Gb/1Gb adapters based on the Chelsio T4 -# (Terminator 4) ASIC. # dc: Support for PCI fast ethernet adapters based on the DEC/Intel 21143 # and various workalikes including: # the ADMtek AL981 Comet and AN985 Centaur, the ASIX Electronics @@ -2096,7 +2094,6 @@ device wb # Winbond W89C840F device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'') # PCI Ethernet NICs. -device cxgbe # Chelsio T4 10GbE PCIe adapter device de # DEC/Intel DC21x4x (``Tulip'') device em # Intel Pro/1000 Gigabit Ethernet device igb # Intel Pro/1000 PCIE Gigabit Ethernet Modified: head/sys/modules/Makefile ============================================================================== --- head/sys/modules/Makefile Wed Dec 31 20:31:32 2014 (r276479) +++ head/sys/modules/Makefile Wed Dec 31 20:34:12 2014 (r276480) @@ -433,7 +433,6 @@ _pfsync= pfsync .if ${MK_SOURCELESS_UCODE} != "no" _bce= bce -_cxgbe= cxgbe _fatm= fatm _fxp= fxp _ispfw= ispfw @@ -445,6 +444,9 @@ _ti= ti _txp= txp .endif +.if ${MK_SOURCELESS_UCODE} != "no" && ${MACHINE_CPUARCH} == "amd64" +_cxgbe= cxgbe +.endif .if ${MACHINE_CPUARCH} != "arm" && ${MACHINE_CPUARCH} != "mips" && \ ${MACHINE_CPUARCH} != "powerpc" From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 20:36:29 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 260FB25D; Wed, 31 Dec 2014 20:36:29 +0000 (UTC) Received: from mail-lb0-x22d.google.com (mail-lb0-x22d.google.com [IPv6:2a00:1450:4010:c04::22d]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 991DA30E8; Wed, 31 Dec 2014 20:36:27 +0000 (UTC) Received: by mail-lb0-f173.google.com with SMTP id z12so13736150lbi.32; Wed, 31 Dec 2014 12:36:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=1Opeo2+IyCoJRxH5i+jqPBJXElc/u3WiJOo7TO+l7rs=; b=Lql9lcQZ1+n0kJ14WYh+tmB780LtU1cZ+TPBXQAoIbDCL6ucBxhIJiCvB+ykbExn8Q TkKkFP65rCPFIkQTwlAjp/PUNlAYFjxWBFeHzQQIGibBt2mEZXCThNB4x3dY3Mo48Fx/ tFtDDAeIa+H5b623mItyJgyhKXuHgc8M60nuL+NIdjNRODjreyNSjgDFjRWURIfhQDGE mLkoI5bv32JWcQTRAZOu2imHpf6F1R2+5qq+CDdjIqxQokmo5Bs6fdPduyCB5PWHhwN9 M8GV7NxNOkpZgJwJAAJZe/NMO3yq51TL9hVz/y1WlRYeUx4wErn8H1FDq5n+Orlh6RQX Hb0g== MIME-Version: 1.0 X-Received: by 10.152.7.180 with SMTP id k20mr69786248laa.4.1420058185466; Wed, 31 Dec 2014 12:36:25 -0800 (PST) Sender: chmeeedalf@gmail.com Received: by 10.25.126.214 with HTTP; Wed, 31 Dec 2014 12:36:25 -0800 (PST) Received: by 10.25.126.214 with HTTP; Wed, 31 Dec 2014 12:36:25 -0800 (PST) In-Reply-To: <201412312031.sBVKVbnX054163@svn.freebsd.org> References: <201412312031.sBVKVbnX054163@svn.freebsd.org> Date: Wed, 31 Dec 2014 12:36:25 -0800 X-Google-Sender-Auth: BdQ6uOtxQhQ_aK0ca8MYMgx_-rk Message-ID: Subject: Re: svn commit: r276479 - in head: . contrib/ipfilter contrib/llvm contrib/llvm/include/llvm contrib/llvm/include/llvm-c contrib/llvm/include/llvm-c/Transforms contrib/llvm/include/llvm/ADT contrib/llv... From: Justin Hibbits To: Dimitry Andric Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.18-1 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 20:36:29 -0000 That's fantastic! Thanks for doing this! -Justin On Dec 31, 2014 1:33 PM, "Dimitry Andric" wrote: > Author: dim > Date: Wed Dec 31 20:31:32 2014 > New Revision: 276479 > URL: https://svnweb.freebsd.org/changeset/base/276479 > > Log: > Upgrade our copy of clang, llvm and lldb to 3.5.0 release. > > Please note that this version now requires C++11 support to build; see > UPDATING for more information. > > Release notes for llvm and clang can be found here: > > > > Thanks to Ed Maste, Roman Divacky, Andrew Turner, Justin Hibbits and > Antoine Brodin for their invaluable help with this import. > > Approved by: portmgr (antoine) > MFC after: 1 month > > Added: > head/contrib/llvm/include/llvm-c/module.modulemap > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm-c/module.modulemap > head/contrib/llvm/include/llvm/ADT/iterator.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/ADT/iterator.h > head/contrib/llvm/include/llvm/ADT/iterator_range.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/ADT/iterator_range.h > head/contrib/llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h > head/contrib/llvm/include/llvm/Analysis/CGSCCPassManager.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Analysis/CGSCCPassManager.h > head/contrib/llvm/include/llvm/Analysis/DominanceFrontierImpl.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Analysis/DominanceFrontierImpl.h > head/contrib/llvm/include/llvm/Analysis/JumpInstrTableInfo.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Analysis/JumpInstrTableInfo.h > head/contrib/llvm/include/llvm/Analysis/LazyCallGraph.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Analysis/LazyCallGraph.h > head/contrib/llvm/include/llvm/Analysis/RegionInfoImpl.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Analysis/RegionInfoImpl.h > head/contrib/llvm/include/llvm/Analysis/TargetFolder.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Analysis/TargetFolder.h > head/contrib/llvm/include/llvm/AsmParser/ > - copied from r276476, > projects/clang350-import/contrib/llvm/include/llvm/AsmParser/ > head/contrib/llvm/include/llvm/Bitcode/BitcodeWriterPass.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Bitcode/BitcodeWriterPass.h > head/contrib/llvm/include/llvm/CodeGen/JumpInstrTables.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/CodeGen/JumpInstrTables.h > head/contrib/llvm/include/llvm/CodeGen/LivePhysRegs.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/CodeGen/LivePhysRegs.h > head/contrib/llvm/include/llvm/CodeGen/MachineDominanceFrontier.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/CodeGen/MachineDominanceFrontier.h > head/contrib/llvm/include/llvm/CodeGen/MachineRegionInfo.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/CodeGen/MachineRegionInfo.h > head/contrib/llvm/include/llvm/CodeGen/MachineValueType.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/CodeGen/MachineValueType.h > head/contrib/llvm/include/llvm/CodeGen/PBQP/CostAllocator.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/CodeGen/PBQP/CostAllocator.h > head/contrib/llvm/include/llvm/CodeGen/PBQP/ReductionRules.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/CodeGen/PBQP/ReductionRules.h > head/contrib/llvm/include/llvm/CodeGen/PBQP/RegAllocSolver.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/CodeGen/PBQP/RegAllocSolver.h > head/contrib/llvm/include/llvm/CodeGen/StackMapLivenessAnalysis.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/CodeGen/StackMapLivenessAnalysis.h > head/contrib/llvm/include/llvm/ExecutionEngine/RuntimeDyldChecker.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/ExecutionEngine/RuntimeDyldChecker.h > head/contrib/llvm/include/llvm/IR/AssemblyAnnotationWriter.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/AssemblyAnnotationWriter.h > head/contrib/llvm/include/llvm/IR/AutoUpgrade.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/AutoUpgrade.h > head/contrib/llvm/include/llvm/IR/CFG.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/CFG.h > head/contrib/llvm/include/llvm/IR/CallSite.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/CallSite.h > head/contrib/llvm/include/llvm/IR/Comdat.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/Comdat.h > head/contrib/llvm/include/llvm/IR/ConstantFolder.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/ConstantFolder.h > head/contrib/llvm/include/llvm/IR/ConstantRange.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/ConstantRange.h > head/contrib/llvm/include/llvm/IR/DIBuilder.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/DIBuilder.h > head/contrib/llvm/include/llvm/IR/DebugInfo.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/DebugInfo.h > head/contrib/llvm/include/llvm/IR/DebugLoc.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/DebugLoc.h > head/contrib/llvm/include/llvm/IR/DiagnosticInfo.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/DiagnosticInfo.h > head/contrib/llvm/include/llvm/IR/DiagnosticPrinter.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/DiagnosticPrinter.h > head/contrib/llvm/include/llvm/IR/Dominators.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/Dominators.h > head/contrib/llvm/include/llvm/IR/GVMaterializer.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/GVMaterializer.h > head/contrib/llvm/include/llvm/IR/GetElementPtrTypeIterator.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/GetElementPtrTypeIterator.h > head/contrib/llvm/include/llvm/IR/GlobalObject.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/GlobalObject.h > head/contrib/llvm/include/llvm/IR/IRPrintingPasses.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/IRPrintingPasses.h > head/contrib/llvm/include/llvm/IR/InstIterator.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/InstIterator.h > head/contrib/llvm/include/llvm/IR/InstVisitor.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/InstVisitor.h > head/contrib/llvm/include/llvm/IR/LeakDetector.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/LeakDetector.h > head/contrib/llvm/include/llvm/IR/LegacyPassNameParser.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/LegacyPassNameParser.h > head/contrib/llvm/include/llvm/IR/Mangler.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/Mangler.h > head/contrib/llvm/include/llvm/IR/NoFolder.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/NoFolder.h > head/contrib/llvm/include/llvm/IR/PatternMatch.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/PatternMatch.h > head/contrib/llvm/include/llvm/IR/PredIteratorCache.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/PredIteratorCache.h > head/contrib/llvm/include/llvm/IR/ValueHandle.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/ValueHandle.h > head/contrib/llvm/include/llvm/IR/ValueMap.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/ValueMap.h > head/contrib/llvm/include/llvm/IR/Verifier.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/IR/Verifier.h > head/contrib/llvm/include/llvm/LineEditor/ > - copied from r276476, > projects/clang350-import/contrib/llvm/include/llvm/LineEditor/ > head/contrib/llvm/include/llvm/Linker/ > - copied from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Linker/ > head/contrib/llvm/include/llvm/MC/ConstantPools.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/MC/ConstantPools.h > head/contrib/llvm/include/llvm/MC/MCAnalysis/ > - copied from r276476, > projects/clang350-import/contrib/llvm/include/llvm/MC/MCAnalysis/ > head/contrib/llvm/include/llvm/MC/MCLinkerOptimizationHint.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/MC/MCLinkerOptimizationHint.h > head/contrib/llvm/include/llvm/MC/MCTargetOptions.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/MC/MCTargetOptions.h > head/contrib/llvm/include/llvm/MC/MCTargetOptionsCommandFlags.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/MC/MCTargetOptionsCommandFlags.h > head/contrib/llvm/include/llvm/MC/MCWinCOFFStreamer.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/MC/MCWinCOFFStreamer.h > head/contrib/llvm/include/llvm/MC/MCWinEH.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/MC/MCWinEH.h > head/contrib/llvm/include/llvm/MC/StringTableBuilder.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/MC/StringTableBuilder.h > head/contrib/llvm/include/llvm/MC/YAML.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/MC/YAML.h > head/contrib/llvm/include/llvm/Object/IRObjectFile.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Object/IRObjectFile.h > head/contrib/llvm/include/llvm/Object/SymbolicFile.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Object/SymbolicFile.h > head/contrib/llvm/include/llvm/PassInfo.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/PassInfo.h > head/contrib/llvm/include/llvm/ProfileData/ > - copied from r276476, > projects/clang350-import/contrib/llvm/include/llvm/ProfileData/ > head/contrib/llvm/include/llvm/Support/ARMBuildAttributes.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Support/ARMBuildAttributes.h > head/contrib/llvm/include/llvm/Support/ARMEHABI.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Support/ARMEHABI.h > head/contrib/llvm/include/llvm/Support/ARMWinEH.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Support/ARMWinEH.h > head/contrib/llvm/include/llvm/Support/EndianStream.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Support/EndianStream.h > head/contrib/llvm/include/llvm/Support/Errc.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Support/Errc.h > head/contrib/llvm/include/llvm/Support/GenericDomTree.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Support/GenericDomTree.h > head/contrib/llvm/include/llvm/Support/GenericDomTreeConstruction.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Support/GenericDomTreeConstruction.h > head/contrib/llvm/include/llvm/Support/LineIterator.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Support/LineIterator.h > head/contrib/llvm/include/llvm/Support/OnDiskHashTable.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Support/OnDiskHashTable.h > head/contrib/llvm/include/llvm/Support/RandomNumberGenerator.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Support/RandomNumberGenerator.h > head/contrib/llvm/include/llvm/Support/ScaledNumber.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Support/ScaledNumber.h > head/contrib/llvm/include/llvm/Support/SpecialCaseList.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Support/SpecialCaseList.h > head/contrib/llvm/include/llvm/Support/WindowsError.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Support/WindowsError.h > head/contrib/llvm/include/llvm/TableGen/SetTheory.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/TableGen/SetTheory.h > head/contrib/llvm/include/llvm/Transforms/Utils/ASanStackFrameLayout.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Transforms/Utils/ASanStackFrameLayout.h > head/contrib/llvm/include/llvm/Transforms/Utils/CtorUtils.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Transforms/Utils/CtorUtils.h > head/contrib/llvm/include/llvm/Transforms/Utils/VectorUtils.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/Transforms/Utils/VectorUtils.h > head/contrib/llvm/include/llvm/module.modulemap > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/module.modulemap > head/contrib/llvm/include/llvm/module.modulemap.build > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/include/llvm/module.modulemap.build > head/contrib/llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Analysis/BlockFrequencyInfoImpl.cpp > head/contrib/llvm/lib/Analysis/CGSCCPassManager.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Analysis/CGSCCPassManager.cpp > head/contrib/llvm/lib/Analysis/JumpInstrTableInfo.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Analysis/JumpInstrTableInfo.cpp > head/contrib/llvm/lib/Analysis/LazyCallGraph.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Analysis/LazyCallGraph.cpp > head/contrib/llvm/lib/AsmParser/module.modulemap > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/AsmParser/module.modulemap > head/contrib/llvm/lib/Bitcode/module.modulemap > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Bitcode/module.modulemap > head/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.cpp > head/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/AddressPool.h > head/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterHandler.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/AsmPrinterHandler.h > head/contrib/llvm/lib/CodeGen/AsmPrinter/ByteStreamer.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/ByteStreamer.h > head/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.cpp > head/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DbgValueHistoryCalculator.h > head/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocEntry.h > head/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocList.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DebugLocList.h > head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.cpp > head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfFile.h > head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.cpp > head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfStringPool.h > head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp > head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h > head/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.cpp > head/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/EHStreamer.h > head/contrib/llvm/lib/CodeGen/AsmPrinter/WinCodeViewLineTables.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/WinCodeViewLineTables.cpp > head/contrib/llvm/lib/CodeGen/AsmPrinter/WinCodeViewLineTables.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AsmPrinter/WinCodeViewLineTables.h > head/contrib/llvm/lib/CodeGen/AtomicExpandLoadLinkedPass.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/AtomicExpandLoadLinkedPass.cpp > head/contrib/llvm/lib/CodeGen/CodeGenPrepare.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/CodeGenPrepare.cpp > head/contrib/llvm/lib/CodeGen/GlobalMerge.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/GlobalMerge.cpp > head/contrib/llvm/lib/CodeGen/JumpInstrTables.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/JumpInstrTables.cpp > head/contrib/llvm/lib/CodeGen/LivePhysRegs.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/LivePhysRegs.cpp > head/contrib/llvm/lib/CodeGen/MachineDominanceFrontier.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/MachineDominanceFrontier.cpp > head/contrib/llvm/lib/CodeGen/MachineRegionInfo.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/MachineRegionInfo.cpp > head/contrib/llvm/lib/CodeGen/StackMapLivenessAnalysis.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/StackMapLivenessAnalysis.cpp > head/contrib/llvm/lib/CodeGen/module.modulemap > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/CodeGen/module.modulemap > head/contrib/llvm/lib/DebugInfo/module.modulemap > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/DebugInfo/module.modulemap > head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyldChecker.cpp > head/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/ > - copied from r276476, > projects/clang350-import/contrib/llvm/lib/ExecutionEngine/RuntimeDyld/Targets/ > head/contrib/llvm/lib/IR/Comdat.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/IR/Comdat.cpp > head/contrib/llvm/lib/IR/ConstantRange.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/IR/ConstantRange.cpp > head/contrib/llvm/lib/IR/DiagnosticInfo.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/IR/DiagnosticInfo.cpp > head/contrib/llvm/lib/IR/DiagnosticPrinter.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/IR/DiagnosticPrinter.cpp > head/contrib/llvm/lib/IR/IRPrintingPasses.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/IR/IRPrintingPasses.cpp > head/contrib/llvm/lib/IR/MDBuilder.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/IR/MDBuilder.cpp > head/contrib/llvm/lib/IR/Mangler.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/IR/Mangler.cpp > head/contrib/llvm/lib/IR/module.modulemap > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/IR/module.modulemap > head/contrib/llvm/lib/LineEditor/ > - copied from r276476, > projects/clang350-import/contrib/llvm/lib/LineEditor/ > head/contrib/llvm/lib/MC/ConstantPools.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/MC/ConstantPools.cpp > head/contrib/llvm/lib/MC/MCAnalysis/ > - copied from r276476, > projects/clang350-import/contrib/llvm/lib/MC/MCAnalysis/ > head/contrib/llvm/lib/MC/MCLinkerOptimizationHint.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/MC/MCLinkerOptimizationHint.cpp > head/contrib/llvm/lib/MC/MCTargetOptions.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/MC/MCTargetOptions.cpp > head/contrib/llvm/lib/MC/StringTableBuilder.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/MC/StringTableBuilder.cpp > head/contrib/llvm/lib/MC/YAML.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/MC/YAML.cpp > head/contrib/llvm/lib/Object/IRObjectFile.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Object/IRObjectFile.cpp > head/contrib/llvm/lib/Object/RecordStreamer.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Object/RecordStreamer.cpp > head/contrib/llvm/lib/Object/RecordStreamer.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Object/RecordStreamer.h > head/contrib/llvm/lib/Object/SymbolicFile.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Object/SymbolicFile.cpp > head/contrib/llvm/lib/ProfileData/ > - copied from r276476, > projects/clang350-import/contrib/llvm/lib/ProfileData/ > head/contrib/llvm/lib/Support/ARMBuildAttrs.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Support/ARMBuildAttrs.cpp > head/contrib/llvm/lib/Support/ARMWinEH.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Support/ARMWinEH.cpp > head/contrib/llvm/lib/Support/LEB128.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Support/LEB128.cpp > head/contrib/llvm/lib/Support/LineIterator.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Support/LineIterator.cpp > head/contrib/llvm/lib/Support/RandomNumberGenerator.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Support/RandomNumberGenerator.cpp > head/contrib/llvm/lib/Support/ScaledNumber.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Support/ScaledNumber.cpp > head/contrib/llvm/lib/Support/SpecialCaseList.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Support/SpecialCaseList.cpp > head/contrib/llvm/lib/Support/Windows/WindowsSupport.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Support/Windows/WindowsSupport.h > head/contrib/llvm/lib/TableGen/SetTheory.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/TableGen/SetTheory.cpp > head/contrib/llvm/lib/TableGen/module.modulemap > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/TableGen/module.modulemap > head/contrib/llvm/lib/Target/AArch64/AArch64AddressTypePromotion.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64AddressTypePromotion.cpp > head/contrib/llvm/lib/Target/AArch64/AArch64AdvSIMDScalarPass.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64AdvSIMDScalarPass.cpp > head/contrib/llvm/lib/Target/AArch64/AArch64BranchRelaxation.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64BranchRelaxation.cpp > head/contrib/llvm/lib/Target/AArch64/AArch64CallingConvention.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64CallingConvention.td > > head/contrib/llvm/lib/Target/AArch64/AArch64CleanupLocalDynamicTLSPass.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64CleanupLocalDynamicTLSPass.cpp > head/contrib/llvm/lib/Target/AArch64/AArch64CollectLOH.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64CollectLOH.cpp > head/contrib/llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64ConditionalCompares.cpp > > head/contrib/llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64DeadRegisterDefinitionsPass.cpp > head/contrib/llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp > head/contrib/llvm/lib/Target/AArch64/AArch64FastISel.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64FastISel.cpp > head/contrib/llvm/lib/Target/AArch64/AArch64InstrAtomics.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64InstrAtomics.td > head/contrib/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64LoadStoreOptimizer.cpp > head/contrib/llvm/lib/Target/AArch64/AArch64MCInstLower.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64MCInstLower.h > head/contrib/llvm/lib/Target/AArch64/AArch64PerfectShuffle.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64PerfectShuffle.h > head/contrib/llvm/lib/Target/AArch64/AArch64PromoteConstant.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64PromoteConstant.cpp > head/contrib/llvm/lib/Target/AArch64/AArch64SchedA53.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64SchedA53.td > head/contrib/llvm/lib/Target/AArch64/AArch64SchedA57.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64SchedA57.td > head/contrib/llvm/lib/Target/AArch64/AArch64SchedA57WriteRes.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64SchedA57WriteRes.td > head/contrib/llvm/lib/Target/AArch64/AArch64SchedCyclone.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64SchedCyclone.td > head/contrib/llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64StorePairSuppress.cpp > head/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp > head/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64Disassembler.h > > head/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.cpp > > head/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/Disassembler/AArch64ExternalSymbolizer.h > > head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64AddressingModes.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64AddressingModes.h > > head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64MachObjectWriter.cpp > > head/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp > head/contrib/llvm/lib/Target/ARM/ARMOptimizeBarriersPass.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/ARM/ARMOptimizeBarriersPass.cpp > head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMArchName.def > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMArchName.def > head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMArchName.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMArchName.h > head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp > head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFObjectWriter.cpp > head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFStreamer.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFStreamer.cpp > head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.cpp > head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.h > head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsAsmBackend.h > head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp > head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.h > head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCCodeEmitter.h > head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.cpp > head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCExpr.h > head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCNaCl.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsMCNaCl.h > head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsNaClELFStreamer.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsNaClELFStreamer.cpp > head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsOptionRecord.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsOptionRecord.cpp > head/contrib/llvm/lib/Target/Mips/MicroMipsInstrFPU.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/MicroMipsInstrFPU.td > head/contrib/llvm/lib/Target/Mips/Mips16HardFloatInfo.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/Mips16HardFloatInfo.cpp > head/contrib/llvm/lib/Target/Mips/Mips16HardFloatInfo.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/Mips16HardFloatInfo.h > head/contrib/llvm/lib/Target/Mips/Mips32r6InstrFormats.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/Mips32r6InstrFormats.td > head/contrib/llvm/lib/Target/Mips/Mips32r6InstrInfo.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/Mips32r6InstrInfo.td > head/contrib/llvm/lib/Target/Mips/Mips64r6InstrInfo.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/Mips64r6InstrInfo.td > head/contrib/llvm/lib/Target/Mips/MipsFastISel.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/MipsFastISel.cpp > head/contrib/llvm/lib/Target/Mips/MipsOptimizePICCall.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/MipsOptimizePICCall.cpp > head/contrib/llvm/lib/Target/Mips/MipsOptionRecord.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Mips/MipsOptionRecord.h > head/contrib/llvm/lib/Target/NVPTX/NVPTXAssignValidGlobalNames.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/NVPTX/NVPTXAssignValidGlobalNames.cpp > head/contrib/llvm/lib/Target/NVPTX/NVPTXFavorNonGenericAddrSpaces.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/NVPTX/NVPTXFavorNonGenericAddrSpaces.cpp > head/contrib/llvm/lib/Target/NVPTX/NVPTXImageOptimizer.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/NVPTX/NVPTXImageOptimizer.cpp > head/contrib/llvm/lib/Target/NVPTX/NVPTXMachineFunctionInfo.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/NVPTX/NVPTXMachineFunctionInfo.h > head/contrib/llvm/lib/Target/NVPTX/NVPTXReplaceImageHandles.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/NVPTX/NVPTXReplaceImageHandles.cpp > head/contrib/llvm/lib/Target/PowerPC/Disassembler/ > - copied from r276476, > projects/clang350-import/contrib/llvm/lib/Target/PowerPC/Disassembler/ > head/contrib/llvm/lib/Target/PowerPC/PPCInstrVSX.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/PowerPC/PPCInstrVSX.td > head/contrib/llvm/lib/Target/PowerPC/PPCScheduleP7.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/PowerPC/PPCScheduleP7.td > head/contrib/llvm/lib/Target/R600/AMDGPUIntrinsicInfo.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/R600/AMDGPUIntrinsicInfo.cpp > head/contrib/llvm/lib/Target/R600/AMDGPUIntrinsicInfo.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/R600/AMDGPUIntrinsicInfo.h > head/contrib/llvm/lib/Target/R600/AMDGPUPromoteAlloca.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/R600/AMDGPUPromoteAlloca.cpp > head/contrib/llvm/lib/Target/R600/CaymanInstructions.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/R600/CaymanInstructions.td > head/contrib/llvm/lib/Target/R600/EvergreenInstructions.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/R600/EvergreenInstructions.td > head/contrib/llvm/lib/Target/R600/MCTargetDesc/AMDGPUFixupKinds.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/R600/MCTargetDesc/AMDGPUFixupKinds.h > head/contrib/llvm/lib/Target/R600/R700Instructions.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/R600/R700Instructions.td > head/contrib/llvm/lib/Target/R600/SIFixSGPRLiveRanges.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/R600/SIFixSGPRLiveRanges.cpp > head/contrib/llvm/lib/Target/R600/SILowerI1Copies.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/R600/SILowerI1Copies.cpp > head/contrib/llvm/lib/Target/R600/SIShrinkInstructions.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/R600/SIShrinkInstructions.cpp > head/contrib/llvm/lib/Target/Sparc/SparcInstrVIS.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/Sparc/SparcInstrVIS.td > head/contrib/llvm/lib/Target/X86/AsmParser/X86AsmInstrumentation.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/X86/AsmParser/X86AsmInstrumentation.cpp > head/contrib/llvm/lib/Target/X86/AsmParser/X86AsmInstrumentation.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/X86/AsmParser/X86AsmInstrumentation.h > head/contrib/llvm/lib/Target/X86/AsmParser/X86AsmParserCommon.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/X86/AsmParser/X86AsmParserCommon.h > head/contrib/llvm/lib/Target/X86/AsmParser/X86Operand.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/X86/AsmParser/X86Operand.h > head/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.cpp > head/contrib/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFStreamer.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFStreamer.cpp > head/contrib/llvm/lib/Target/X86/X86AtomicExpandPass.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/X86/X86AtomicExpandPass.cpp > head/contrib/llvm/lib/Target/XCore/XCoreFrameToArgsOffsetElim.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/XCore/XCoreFrameToArgsOffsetElim.cpp > head/contrib/llvm/lib/Target/XCore/XCoreTargetStreamer.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Target/XCore/XCoreTargetStreamer.h > head/contrib/llvm/lib/Transforms/Scalar/ConstantHoisting.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Transforms/Scalar/ConstantHoisting.cpp > head/contrib/llvm/lib/Transforms/Scalar/LoadCombine.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Transforms/Scalar/LoadCombine.cpp > head/contrib/llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Transforms/Scalar/MergedLoadStoreMotion.cpp > head/contrib/llvm/lib/Transforms/Scalar/Scalarizer.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Transforms/Scalar/Scalarizer.cpp > head/contrib/llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp > head/contrib/llvm/lib/Transforms/Utils/ASanStackFrameLayout.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Transforms/Utils/ASanStackFrameLayout.cpp > head/contrib/llvm/lib/Transforms/Utils/AddDiscriminators.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Transforms/Utils/AddDiscriminators.cpp > head/contrib/llvm/lib/Transforms/Utils/CtorUtils.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/lib/Transforms/Utils/CtorUtils.cpp > head/contrib/llvm/patches/patch-01-clang-version-include.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-01-clang-version-include.diff > head/contrib/llvm/patches/patch-02-format-extensions.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-02-format-extensions.diff > head/contrib/llvm/patches/patch-03-clang-vendor-suffix.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-03-clang-vendor-suffix.diff > head/contrib/llvm/patches/patch-04-default-target-triple.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-04-default-target-triple.diff > head/contrib/llvm/patches/patch-05-add-CC-aliases.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-05-add-CC-aliases.diff > head/contrib/llvm/patches/patch-06-clang-arm-target-cpu.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-06-clang-arm-target-cpu.diff > head/contrib/llvm/patches/patch-07-llvm-r213960-ppc32-tls.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-07-llvm-r213960-ppc32-tls.diff > > head/contrib/llvm/patches/patch-08-llvm-r216989-r216990-fix-movw-armv6.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-08-llvm-r216989-r216990-fix-movw-armv6.diff > head/contrib/llvm/patches/patch-09-clang-r217410-i386-garbage-float.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-09-clang-r217410-i386-garbage-float.diff > head/contrib/llvm/patches/patch-10-llvm-r221709-debug-oom.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-10-llvm-r221709-debug-oom.diff > head/contrib/llvm/patches/patch-11-llvm-r222562-loop-rotate.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-11-llvm-r222562-loop-rotate.diff > head/contrib/llvm/patches/patch-12-add-llvm-gvn-option.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-12-add-llvm-gvn-option.diff > head/contrib/llvm/patches/patch-13-llvm-r218241-dwarf2-warning.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-13-llvm-r218241-dwarf2-warning.diff > head/contrib/llvm/patches/patch-14-llvm-r215352-aarch64-dyn-loader.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-14-llvm-r215352-aarch64-dyn-loader.diff > head/contrib/llvm/patches/patch-15-llvm-r216571-dynamiclib-usability.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-15-llvm-r216571-dynamiclib-usability.diff > head/contrib/llvm/patches/patch-16-clang-r221900-freebsd-aarch64.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-16-clang-r221900-freebsd-aarch64.diff > head/contrib/llvm/patches/patch-17-llvm-r222856-libapr-miscompile.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-17-llvm-r222856-libapr-miscompile.diff > head/contrib/llvm/patches/patch-18-llvm-r214802-armv6-cp10-cp11.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-18-llvm-r214802-armv6-cp10-cp11.diff > head/contrib/llvm/patches/patch-19-llvm-r215811-arm-fpu-directive.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-19-llvm-r215811-arm-fpu-directive.diff > head/contrib/llvm/patches/patch-20-enable-armv6-clrex.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-20-enable-armv6-clrex.diff > head/contrib/llvm/patches/patch-21-llvm-r223171-fix-vectorizer.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-21-llvm-r223171-fix-vectorizer.diff > head/contrib/llvm/patches/patch-22-llvm-r223147-arm-cpu-directive.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-22-llvm-r223147-arm-cpu-directive.diff > head/contrib/llvm/patches/patch-23-llvm-r221170-ppc-vaarg.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-23-llvm-r221170-ppc-vaarg.diff > head/contrib/llvm/patches/patch-24-llvm-r221791-ppc-small-pic.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-24-llvm-r221791-ppc-small-pic.diff > head/contrib/llvm/patches/patch-25-llvm-r224415-ppc-local.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-25-llvm-r224415-ppc-local.diff > head/contrib/llvm/patches/patch-26-llvm-r213890-ppc-eh_frame.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-26-llvm-r213890-ppc-eh_frame.diff > head/contrib/llvm/patches/patch-27-llvm-r221703-ppc-tls_get_addr.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-27-llvm-r221703-ppc-tls_get_addr.diff > head/contrib/llvm/patches/patch-28-llvm-r224890-ppc-ctr-tls-loop.diff > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/patches/patch-28-llvm-r224890-ppc-ctr-tls-loop.diff > head/contrib/llvm/tools/clang/include/clang-c/BuildSystem.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang-c/BuildSystem.h > head/contrib/llvm/tools/clang/include/clang-c/CXErrorCode.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang-c/CXErrorCode.h > head/contrib/llvm/tools/clang/include/clang-c/Documentation.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang-c/Documentation.h > head/contrib/llvm/tools/clang/include/clang-c/module.modulemap > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang-c/module.modulemap > head/contrib/llvm/tools/clang/include/clang/AST/DataRecursiveASTVisitor.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/AST/DataRecursiveASTVisitor.h > head/contrib/llvm/tools/clang/include/clang/AST/LambdaCapture.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/AST/LambdaCapture.h > head/contrib/llvm/tools/clang/include/clang/AST/OpenMPClause.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/AST/OpenMPClause.h > > head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h > > head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyLogical.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyLogical.h > > head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyOps.def > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyOps.def > > head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h > > head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTraverse.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyTraverse.h > > head/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyUtil.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/Analysis/Analyses/ThreadSafetyUtil.h > head/contrib/llvm/tools/clang/include/clang/Basic/AttrDocs.td > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/Basic/AttrDocs.td > head/contrib/llvm/tools/clang/include/clang/Basic/Attributes.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/Basic/Attributes.h > head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsNEON.def > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsNEON.def > head/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsR600.def > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/Basic/BuiltinsR600.def > head/contrib/llvm/tools/clang/include/clang/Basic/PlistSupport.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/Basic/PlistSupport.h > head/contrib/llvm/tools/clang/include/clang/Basic/VirtualFileSystem.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/Basic/VirtualFileSystem.h > head/contrib/llvm/tools/clang/include/clang/Driver/Multilib.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/Driver/Multilib.h > head/contrib/llvm/tools/clang/include/clang/Sema/LoopHint.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/Sema/LoopHint.h > > head/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/AnalysisConsumer.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/StaticAnalyzer/Frontend/AnalysisConsumer.h > head/contrib/llvm/tools/clang/include/clang/module.modulemap > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/include/clang/module.modulemap > head/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyCommon.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyCommon.cpp > head/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyLogical.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyLogical.cpp > head/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyTIL.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Analysis/ThreadSafetyTIL.cpp > head/contrib/llvm/tools/clang/lib/Basic/Attributes.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Basic/Attributes.cpp > head/contrib/llvm/tools/clang/lib/Basic/VirtualFileSystem.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Basic/VirtualFileSystem.cpp > head/contrib/llvm/tools/clang/lib/Basic/Warnings.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Basic/Warnings.cpp > head/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.cpp > head/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/CGLoopInfo.h > head/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.cpp > head/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/CGOpenMPRuntime.h > head/contrib/llvm/tools/clang/lib/CodeGen/CGStmtOpenMP.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/CGStmtOpenMP.cpp > head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.cpp > head/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/CodeGenPGO.h > head/contrib/llvm/tools/clang/lib/CodeGen/SanitizerBlacklist.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/SanitizerBlacklist.cpp > head/contrib/llvm/tools/clang/lib/CodeGen/SanitizerBlacklist.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/CodeGen/SanitizerBlacklist.h > head/contrib/llvm/tools/clang/lib/Driver/Multilib.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Driver/Multilib.cpp > head/contrib/llvm/tools/clang/lib/Frontend/ModuleDependencyCollector.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Frontend/ModuleDependencyCollector.cpp > head/contrib/llvm/tools/clang/lib/Frontend/Rewrite/ > - copied from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Frontend/Rewrite/ > head/contrib/llvm/tools/clang/lib/Headers/arm_acle.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Headers/arm_acle.h > head/contrib/llvm/tools/clang/lib/Headers/ia32intrin.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Headers/ia32intrin.h > head/contrib/llvm/tools/clang/lib/Headers/module.modulemap > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Headers/module.modulemap > head/contrib/llvm/tools/clang/lib/Parse/ParseStmtAsm.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Parse/ParseStmtAsm.cpp > head/contrib/llvm/tools/clang/lib/Rewrite/DeltaTree.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Rewrite/DeltaTree.cpp > head/contrib/llvm/tools/clang/lib/Rewrite/HTMLRewrite.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Rewrite/HTMLRewrite.cpp > head/contrib/llvm/tools/clang/lib/Rewrite/RewriteRope.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Rewrite/RewriteRope.cpp > head/contrib/llvm/tools/clang/lib/Rewrite/Rewriter.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Rewrite/Rewriter.cpp > head/contrib/llvm/tools/clang/lib/Rewrite/TokenRewriter.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/Rewrite/TokenRewriter.cpp > > head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/SelectorExtras.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/SelectorExtras.h > > head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/TestAfterDivZeroChecker.cpp > head/contrib/llvm/tools/lldb/include/lldb/API/SBTypeEnumMember.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/API/SBTypeEnumMember.h > head/contrib/llvm/tools/lldb/include/lldb/API/SBUnixSignals.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/API/SBUnixSignals.h > head/contrib/llvm/tools/lldb/include/lldb/Core/StructuredData.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Core/StructuredData.h > head/contrib/llvm/tools/lldb/include/lldb/Host/FileCache.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/FileCache.h > head/contrib/llvm/tools/lldb/include/lldb/Host/FileSystem.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/FileSystem.h > head/contrib/llvm/tools/lldb/include/lldb/Host/HostInfo.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/HostInfo.h > head/contrib/llvm/tools/lldb/include/lldb/Host/HostInfoBase.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/HostInfoBase.h > head/contrib/llvm/tools/lldb/include/lldb/Host/HostProcess.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/HostProcess.h > head/contrib/llvm/tools/lldb/include/lldb/Host/IOObject.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/IOObject.h > head/contrib/llvm/tools/lldb/include/lldb/Host/Pipe.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/Pipe.h > head/contrib/llvm/tools/lldb/include/lldb/Host/Socket.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/Socket.h > head/contrib/llvm/tools/lldb/include/lldb/Host/freebsd/HostInfoFreeBSD.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/freebsd/HostInfoFreeBSD.h > head/contrib/llvm/tools/lldb/include/lldb/Host/posix/ > - copied from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Host/posix/ > > head/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandOptionValidators.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Interpreter/CommandOptionValidators.h > head/contrib/llvm/tools/lldb/include/lldb/Target/FileAction.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/FileAction.h > head/contrib/llvm/tools/lldb/include/lldb/Target/JITLoader.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/JITLoader.h > head/contrib/llvm/tools/lldb/include/lldb/Target/JITLoaderList.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/JITLoaderList.h > head/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/MemoryRegionInfo.h > head/contrib/llvm/tools/lldb/include/lldb/Target/NativeRegisterContext.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/NativeRegisterContext.h > > head/contrib/llvm/tools/lldb/include/lldb/Target/NativeRegisterContextRegisterInfo.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/NativeRegisterContextRegisterInfo.h > head/contrib/llvm/tools/lldb/include/lldb/Target/ProcessInfo.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/ProcessInfo.h > head/contrib/llvm/tools/lldb/include/lldb/Target/ProcessLaunchInfo.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Target/ProcessLaunchInfo.h > head/contrib/llvm/tools/lldb/include/lldb/Utility/SafeMachO.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Utility/SafeMachO.h > head/contrib/llvm/tools/lldb/include/lldb/Utility/StringLexer.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/Utility/StringLexer.h > head/contrib/llvm/tools/lldb/include/lldb/lldb-private-forward.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/include/lldb/lldb-private-forward.h > head/contrib/llvm/tools/lldb/source/API/SBTypeEnumMember.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/API/SBTypeEnumMember.cpp > head/contrib/llvm/tools/lldb/source/API/SBUnixSignals.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/API/SBUnixSignals.cpp > head/contrib/llvm/tools/lldb/source/Core/FastDemangle.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Core/FastDemangle.cpp > head/contrib/llvm/tools/lldb/source/Core/StructuredData.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Core/StructuredData.cpp > head/contrib/llvm/tools/lldb/source/Host/common/FileCache.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/FileCache.cpp > head/contrib/llvm/tools/lldb/source/Host/common/HostInfoBase.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/HostInfoBase.cpp > head/contrib/llvm/tools/lldb/source/Host/common/IOObject.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/IOObject.cpp > head/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpoint.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpoint.cpp > head/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpoint.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpoint.h > head/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpointList.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpointList.cpp > head/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpointList.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeBreakpointList.h > head/contrib/llvm/tools/lldb/source/Host/common/NativeProcessProtocol.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeProcessProtocol.cpp > head/contrib/llvm/tools/lldb/source/Host/common/NativeProcessProtocol.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeProcessProtocol.h > head/contrib/llvm/tools/lldb/source/Host/common/NativeThreadProtocol.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeThreadProtocol.cpp > head/contrib/llvm/tools/lldb/source/Host/common/NativeThreadProtocol.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/NativeThreadProtocol.h > head/contrib/llvm/tools/lldb/source/Host/common/Pipe.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/Pipe.cpp > head/contrib/llvm/tools/lldb/source/Host/common/Socket.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/Socket.cpp > head/contrib/llvm/tools/lldb/source/Host/common/SoftwareBreakpoint.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/SoftwareBreakpoint.cpp > head/contrib/llvm/tools/lldb/source/Host/common/SoftwareBreakpoint.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/common/SoftwareBreakpoint.h > head/contrib/llvm/tools/lldb/source/Host/freebsd/HostInfoFreeBSD.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/freebsd/HostInfoFreeBSD.cpp > head/contrib/llvm/tools/lldb/source/Host/posix/ > - copied from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Host/posix/ > > head/contrib/llvm/tools/lldb/source/Interpreter/CommandOptionValidators.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Interpreter/CommandOptionValidators.cpp > head/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm64/ > - copied from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/ABI/MacOSX-arm64/ > head/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-hexagon/ > - copied from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/ABI/SysV-hexagon/ > head/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/ > - copied from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/ > head/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM64/ > - copied from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Instruction/ARM64/ > head/contrib/llvm/tools/lldb/source/Plugins/JITLoader/ > - copied from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/JITLoader/ > head/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/JIT/ > - copied from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/ObjectFile/JIT/ > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_arm64.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_arm64.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_arm64.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIXProcessMonitor_arm64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/FreeBSDSignals.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/LinuxSignals.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextDarwin_arm64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_i386.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_i386.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_i386.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_i386.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_mips64.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_mips64.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_mips64.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_mips64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextFreeBSD_x86_64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_arm64.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_arm64.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_arm64.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_arm64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_i386.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_i386.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_i386.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_i386.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_x86_64.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_x86_64.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_x86_64.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextLinux_x86_64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_arm64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_mips64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_mips64.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_mips64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_x86.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterContext_x86.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoInterface.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfoInterface.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_arm64.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_arm64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_i386.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_i386.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_mips64.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_mips64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_x86_64.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/RegisterInfos_x86_64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-x86-register-enums.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Plugins/Process/Utility/lldb-x86-register-enums.h > head/contrib/llvm/tools/lldb/source/Target/FileAction.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Target/FileAction.cpp > head/contrib/llvm/tools/lldb/source/Target/JITLoader.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Target/JITLoader.cpp > head/contrib/llvm/tools/lldb/source/Target/JITLoaderList.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Target/JITLoaderList.cpp > head/contrib/llvm/tools/lldb/source/Target/NativeRegisterContext.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Target/NativeRegisterContext.cpp > > head/contrib/llvm/tools/lldb/source/Target/NativeRegisterContextRegisterInfo.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Target/NativeRegisterContextRegisterInfo.cpp > head/contrib/llvm/tools/lldb/source/Target/ProcessInfo.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Target/ProcessInfo.cpp > head/contrib/llvm/tools/lldb/source/Target/ProcessLaunchInfo.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Target/ProcessLaunchInfo.cpp > head/contrib/llvm/tools/lldb/source/Utility/ARM64_DWARF_Registers.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Utility/ARM64_DWARF_Registers.cpp > head/contrib/llvm/tools/lldb/source/Utility/ARM64_DWARF_Registers.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Utility/ARM64_DWARF_Registers.h > head/contrib/llvm/tools/lldb/source/Utility/ARM64_GCC_Registers.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Utility/ARM64_GCC_Registers.h > head/contrib/llvm/tools/lldb/source/Utility/StringLexer.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/source/Utility/StringLexer.cpp > head/contrib/llvm/tools/lldb/tools/lldb-mi/ > - copied from r276476, > projects/clang350-import/contrib/llvm/tools/lldb/tools/lldb-mi/ > head/contrib/llvm/tools/lli/RPCChannel.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lli/RPCChannel.h > head/contrib/llvm/tools/lli/Unix/RPCChannel.inc > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lli/Unix/RPCChannel.inc > head/contrib/llvm/tools/lli/Windows/RPCChannel.inc > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/lli/Windows/RPCChannel.inc > head/contrib/llvm/tools/llvm-readobj/ARMAttributeParser.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/llvm-readobj/ARMAttributeParser.cpp > head/contrib/llvm/tools/llvm-readobj/ARMAttributeParser.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/llvm-readobj/ARMAttributeParser.h > head/contrib/llvm/tools/llvm-readobj/ARMEHABIPrinter.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/llvm-readobj/ARMEHABIPrinter.h > head/contrib/llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/llvm-readobj/ARMWinEHPrinter.cpp > head/contrib/llvm/tools/llvm-readobj/ARMWinEHPrinter.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/llvm-readobj/ARMWinEHPrinter.h > head/contrib/llvm/tools/llvm-readobj/Win64EHDumper.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/llvm-readobj/Win64EHDumper.cpp > head/contrib/llvm/tools/llvm-readobj/Win64EHDumper.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/llvm-readobj/Win64EHDumper.h > head/contrib/llvm/tools/opt/BreakpointPrinter.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/opt/BreakpointPrinter.cpp > head/contrib/llvm/tools/opt/BreakpointPrinter.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/opt/BreakpointPrinter.h > head/contrib/llvm/tools/opt/NewPMDriver.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/opt/NewPMDriver.cpp > head/contrib/llvm/tools/opt/NewPMDriver.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/opt/NewPMDriver.h > head/contrib/llvm/tools/opt/PassPrinters.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/opt/PassPrinters.cpp > head/contrib/llvm/tools/opt/PassPrinters.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/opt/PassPrinters.h > head/contrib/llvm/tools/opt/PassRegistry.def > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/opt/PassRegistry.def > head/contrib/llvm/tools/opt/Passes.cpp > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/opt/Passes.cpp > head/contrib/llvm/tools/opt/Passes.h > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/tools/opt/Passes.h > head/contrib/llvm/utils/TableGen/module.modulemap > - copied unchanged from r276476, > projects/clang350-import/contrib/llvm/utils/TableGen/module.modulemap > head/lib/clang/include/MipsGenFastISel.inc > - copied unchanged from r276476, > projects/clang350-import/lib/clang/include/MipsGenFastISel.inc > head/lib/clang/include/PPCGenDisassemblerTables.inc > - copied unchanged from r276476, > projects/clang350-import/lib/clang/include/PPCGenDisassemblerTables.inc > head/lib/clang/include/clang/AST/AttrVisitor.inc > - copied unchanged from r276476, > projects/clang350-import/lib/clang/include/clang/AST/AttrVisitor.inc > head/lib/clang/include/clang/Basic/AttrHasAttributeImpl.inc > - copied unchanged from r276476, > projects/clang350-import/lib/clang/include/clang/Basic/AttrHasAttributeImpl.inc > head/lib/clang/include/clang/Parse/AttrParserStringSwitches.inc > - copied unchanged from r276476, > projects/clang350-import/lib/clang/include/clang/Parse/AttrParserStringSwitches.inc > head/lib/clang/libclangrewrite/ > - copied from r276476, > projects/clang350-import/lib/clang/libclangrewrite/ > head/lib/clang/liblldbHostPOSIX/ > - copied from r276476, > projects/clang350-import/lib/clang/liblldbHostPOSIX/ > head/lib/clang/liblldbPluginInstructionARM64/ > - copied from r276476, > projects/clang350-import/lib/clang/liblldbPluginInstructionARM64/ > head/lib/clang/liblldbPluginJITLoaderGDB/ > - copied from r276476, > projects/clang350-import/lib/clang/liblldbPluginJITLoaderGDB/ > head/lib/clang/liblldbPluginObjectFileJIT/ > - copied from r276476, > projects/clang350-import/lib/clang/liblldbPluginObjectFileJIT/ > head/lib/clang/libllvmmcanalysis/ > - copied from r276476, > projects/clang350-import/lib/clang/libllvmmcanalysis/ > head/lib/clang/libllvmpowerpcdisassembler/ > - copied from r276476, > projects/clang350-import/lib/clang/libllvmpowerpcdisassembler/ > head/lib/clang/libllvmprofiledata/ > - copied from r276476, > projects/clang350-import/lib/clang/libllvmprofiledata/ > Deleted: > head/contrib/llvm/include/llvm/ADT/ImmutableIntervalMap.h > head/contrib/llvm/include/llvm/ADT/OwningPtr.h > head/contrib/llvm/include/llvm/ADT/ValueMap.h > head/contrib/llvm/include/llvm/ADT/polymorphic_ptr.h > head/contrib/llvm/include/llvm/Analysis/BlockFrequencyImpl.h > head/contrib/llvm/include/llvm/Analysis/DominatorInternals.h > head/contrib/llvm/include/llvm/Analysis/Dominators.h > head/contrib/llvm/include/llvm/Analysis/Verifier.h > head/contrib/llvm/include/llvm/Assembly/ > head/contrib/llvm/include/llvm/AutoUpgrade.h > head/contrib/llvm/include/llvm/CodeGen/LiveRegUnits.h > head/contrib/llvm/include/llvm/CodeGen/PBQP/HeuristicBase.h > head/contrib/llvm/include/llvm/CodeGen/PBQP/HeuristicSolver.h > head/contrib/llvm/include/llvm/CodeGen/PBQP/Heuristics/ > head/contrib/llvm/include/llvm/DIBuilder.h > head/contrib/llvm/include/llvm/DebugInfo.h > head/contrib/llvm/include/llvm/GVMaterializer.h > head/contrib/llvm/include/llvm/InstVisitor.h > head/contrib/llvm/include/llvm/Linker.h > head/contrib/llvm/include/llvm/MC/MCAtom.h > head/contrib/llvm/include/llvm/MC/MCFunction.h > head/contrib/llvm/include/llvm/MC/MCModule.h > head/contrib/llvm/include/llvm/MC/MCModuleYAML.h > head/contrib/llvm/include/llvm/Object/YAML.h > head/contrib/llvm/include/llvm/Support/CFG.h > head/contrib/llvm/include/llvm/Support/CallSite.h > head/contrib/llvm/include/llvm/Support/ConstantFolder.h > head/contrib/llvm/include/llvm/Support/ConstantRange.h > head/contrib/llvm/include/llvm/Support/DataFlow.h > head/contrib/llvm/include/llvm/Support/DebugLoc.h > head/contrib/llvm/include/llvm/Support/Disassembler.h > head/contrib/llvm/include/llvm/Support/FEnv.h > head/contrib/llvm/include/llvm/Support/GetElementPtrTypeIterator.h > head/contrib/llvm/include/llvm/Support/InstIterator.h > head/contrib/llvm/include/llvm/Support/LeakDetector.h > head/contrib/llvm/include/llvm/Support/NoFolder.h > head/contrib/llvm/include/llvm/Support/PassNameParser.h > head/contrib/llvm/include/llvm/Support/PatternMatch.h > head/contrib/llvm/include/llvm/Support/PredIteratorCache.h > head/contrib/llvm/include/llvm/Support/TargetFolder.h > head/contrib/llvm/include/llvm/Support/ValueHandle.h > head/contrib/llvm/include/llvm/Support/system_error.h > head/contrib/llvm/include/llvm/Target/Mangler.h > head/contrib/llvm/include/llvm/Transforms/Utils/SpecialCaseList.h > head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp > head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h > head/contrib/llvm/lib/CodeGen/AsmPrinter/DwarfException.cpp > head/contrib/llvm/lib/CodeGen/LiveRegUnits.cpp > head/contrib/llvm/lib/IR/PrintModulePass.cpp > head/contrib/llvm/lib/MC/MCAtom.cpp > head/contrib/llvm/lib/MC/MCFunction.cpp > head/contrib/llvm/lib/MC/MCModule.cpp > head/contrib/llvm/lib/MC/MCModuleYAML.cpp > head/contrib/llvm/lib/MC/MCObjectDisassembler.cpp > head/contrib/llvm/lib/MC/MCObjectSymbolizer.cpp > head/contrib/llvm/lib/MC/MCPureStreamer.cpp > head/contrib/llvm/lib/Object/YAML.cpp > head/contrib/llvm/lib/Support/ConstantRange.cpp > head/contrib/llvm/lib/Support/Disassembler.cpp > head/contrib/llvm/lib/Support/Unix/system_error.inc > head/contrib/llvm/lib/Support/Windows/Windows.h > head/contrib/llvm/lib/Support/Windows/system_error.inc > head/contrib/llvm/lib/Support/system_error.cpp > head/contrib/llvm/lib/Target/AArch64/AArch64AsmPrinter.h > head/contrib/llvm/lib/Target/AArch64/AArch64BranchFixupPass.cpp > head/contrib/llvm/lib/Target/AArch64/AArch64CallingConv.td > head/contrib/llvm/lib/Target/AArch64/AArch64InstrNEON.td > head/contrib/llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.cpp > head/contrib/llvm/lib/Target/AArch64/README.txt > head/contrib/llvm/lib/Target/ARM/ARMBuildAttrs.h > head/contrib/llvm/lib/Target/ARM/MCTargetDesc/ARMUnwindOp.h > head/contrib/llvm/lib/Target/Mangler.cpp > head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsReginfo.cpp > head/contrib/llvm/lib/Target/Mips/MCTargetDesc/MipsReginfo.h > head/contrib/llvm/lib/Target/NVPTX/NVPTXSplitBBatBar.cpp > head/contrib/llvm/lib/Target/NVPTX/NVPTXSplitBBatBar.h > head/contrib/llvm/lib/Target/R600/AMDGPUConvertToISA.cpp > head/contrib/llvm/lib/Target/R600/AMDILBase.td > head/contrib/llvm/lib/Target/R600/AMDILISelLowering.cpp > head/contrib/llvm/lib/Target/R600/AMDILInstrInfo.td > head/contrib/llvm/lib/Target/R600/AMDILIntrinsicInfo.cpp > head/contrib/llvm/lib/Target/R600/AMDILIntrinsicInfo.h > head/contrib/llvm/lib/Target/R600/AMDILIntrinsics.td > head/contrib/llvm/lib/Target/R600/AMDILRegisterInfo.td > head/contrib/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c > head/contrib/llvm/lib/Target/X86/X86COFFMachineModuleInfo.cpp > head/contrib/llvm/lib/Target/X86/X86COFFMachineModuleInfo.h > head/contrib/llvm/lib/Transforms/Scalar/CodeGenPrepare.cpp > head/contrib/llvm/lib/Transforms/Scalar/GlobalMerge.cpp > head/contrib/llvm/lib/Transforms/Utils/SpecialCaseList.cpp > head/contrib/llvm/patches/patch-r208961-clang-version-include.diff > head/contrib/llvm/patches/patch-r208987-format-extensions.diff > head/contrib/llvm/patches/patch-r209107-clang-vendor-suffix.diff > head/contrib/llvm/patches/patch-r213492-amd64-multi-os-dot.diff > head/contrib/llvm/patches/patch-r221503-default-target-triple.diff > head/contrib/llvm/patches/patch-r243830-arm-disable-clear-cache.diff > > head/contrib/llvm/patches/patch-r252503-arm-transient-stack-alignment.diff > head/contrib/llvm/patches/patch-r257109-add-CC-aliases.diff > head/contrib/llvm/patches/patch-r259053-gcc-installation-detector.diff > head/contrib/llvm/patches/patch-r259498-add-fxsave.diff > > head/contrib/llvm/patches/patch-r261680-clang-r200899-fix-security-quantis.diff > head/contrib/llvm/patches/patch-r261991-llvm-r195391-fix-dwarf2.diff > head/contrib/llvm/patches/patch-r261991-llvm-r198385-fix-dwarf2.diff > head/contrib/llvm/patches/patch-r261991-llvm-r198389-fix-dwarf2.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198028-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198029-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198030-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198145-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198149-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198157-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198280-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198281-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198286-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198480-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198484-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198533-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198565-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198567-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198580-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198591-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198592-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198658-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198681-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198738-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198739-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198740-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198893-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198909-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r198910-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r199014-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r199024-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r199028-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r199031-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r199033-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r199061-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r199186-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r199187-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r199775-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r199781-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r199786-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r199940-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r199974-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r199975-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r199977-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200103-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200104-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200112-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200130-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200131-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200141-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200282-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200368-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200373-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200376-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200509-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200617-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200960-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200961-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200962-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200963-sparc.diff > head/contrib/llvm/patches/patch-r262261-llvm-r200965-sparc.diff > head/contrib/llvm/patches/patch-r262262-clang-r198311-sparc.diff > head/contrib/llvm/patches/patch-r262262-clang-r198312-sparc.diff > head/contrib/llvm/patches/patch-r262262-clang-r198911-sparc.diff > head/contrib/llvm/patches/patch-r262262-clang-r198912-sparc.diff > head/contrib/llvm/patches/patch-r262262-clang-r198918-sparc.diff > head/contrib/llvm/patches/patch-r262262-clang-r198923-sparc.diff > head/contrib/llvm/patches/patch-r262262-clang-r199012-sparc.diff > head/contrib/llvm/patches/patch-r262262-clang-r199034-sparc.diff > head/contrib/llvm/patches/patch-r262262-clang-r199037-sparc.diff > head/contrib/llvm/patches/patch-r262262-clang-r199188-sparc.diff > head/contrib/llvm/patches/patch-r262262-clang-r199399-sparc.diff > head/contrib/llvm/patches/patch-r262262-clang-r200452-sparc.diff > head/contrib/llvm/patches/patch-r262264-llvm-r200453-sparc.diff > head/contrib/llvm/patches/patch-r262265-llvm-r201718-sparc.diff > head/contrib/llvm/patches/patch-r262303-enable-ppc-integrated-as.diff > head/contrib/llvm/patches/patch-r262415-llvm-r201994-sparc.diff > head/contrib/llvm/patches/patch-r262460-llvm-r202059-sparc.diff > head/contrib/llvm/patches/patch-r262535-clang-r202177-sparc.diff > head/contrib/llvm/patches/patch-r262536-clang-r202179-sparc.diff > head/contrib/llvm/patches/patch-r262582-llvm-r202422-sparc.diff > > head/contrib/llvm/patches/patch-r262611-llvm-r196874-fix-invalid-pwd-crash.diff > head/contrib/llvm/patches/patch-r263048-clang-r203624-fix-CC-aliases.diff > > head/contrib/llvm/patches/patch-r263312-llvm-r169939-inline-asm-with-realign.diff > > head/contrib/llvm/patches/patch-r263312-llvm-r196940-update-inline-asm-test.diff > > head/contrib/llvm/patches/patch-r263312-llvm-r196986-allow-realign-alloca.diff > > head/contrib/llvm/patches/patch-r263312-llvm-r202930-fix-alloca-esi-clobber.diff > head/contrib/llvm/patches/patch-r263313-llvm-r203311-fix-sse1-oom.diff > head/contrib/llvm/patches/patch-r263619-clang-r201662-arm-gnueabihf.diff > head/contrib/llvm/patches/patch-r264345-dwarf2-freebsd10.diff > > head/contrib/llvm/patches/patch-r264826-llvm-r202188-variadic-fn-debug-info.diff > > head/contrib/llvm/patches/patch-r264827-clang-r202185-variadic-fn-debug-info.diff > > head/contrib/llvm/patches/patch-r265477-clang-r198655-standalone-debug.diff > head/contrib/llvm/patches/patch-r266674-clang-r209489-fix-xmmintrin.diff > head/contrib/llvm/patches/patch-r267704-llvm-r211435-fix-avx-backend.diff > head/contrib/llvm/patches/patch-r267981-llvm-r211435-fix-ppc-fctiduz.diff > head/contrib/llvm/patches/patch-r269387-clang-arm-target-cpu.diff > head/contrib/llvm/patches/patch-r270147-llvm-r197824-r213427-r213960.diff > > head/contrib/llvm/patches/patch-r271024-llvm-r216989-r216990-fix-movw-armv6.diff > > head/contrib/llvm/patches/patch-r271282-clang-r200797-r200798-r200805-debug-info-crash.diff > > head/contrib/llvm/patches/patch-r271432-clang-r205331-debug-info-crash.diff > > head/contrib/llvm/patches/patch-r271597-clang-r217410-i386-garbage-float.diff > head/contrib/llvm/patches/patch-r274286-llvm-r201784-asm-dollar.diff > head/contrib/llvm/patches/patch-r274442-llvm-r221709-debug-oom.diff > head/contrib/llvm/patches/patch-r275633-llvm-r223171-fix-vectorizer.diff > head/contrib/llvm/patches/patch-r275759-clang-r221170-ppc-vaarg.diff > > head/contrib/llvm/tools/clang/include/clang/Analysis/FlowSensitive/DataflowSolver.h > head/contrib/llvm/tools/clang/include/clang/Basic/OnDiskHashTable.h > head/contrib/llvm/tools/clang/include/clang/Basic/OpenCL.h > head/contrib/llvm/tools/clang/include/clang/Driver/CC1AsOptions.h > head/contrib/llvm/tools/clang/include/clang/Driver/CC1AsOptions.td > head/contrib/llvm/tools/clang/include/clang/Driver/CC1Options.h > > head/contrib/llvm/tools/clang/include/clang/Frontend/ChainedIncludesSource.h > head/contrib/llvm/tools/clang/lib/CodeGen/CGRTTI.cpp > head/contrib/llvm/tools/clang/lib/CodeGen/MicrosoftVBTables.cpp > head/contrib/llvm/tools/clang/lib/CodeGen/MicrosoftVBTables.h > head/contrib/llvm/tools/clang/lib/Driver/CC1AsOptions.cpp > head/contrib/llvm/tools/clang/lib/Frontend/Warnings.cpp > head/contrib/llvm/tools/clang/lib/Headers/module.map > head/contrib/llvm/tools/clang/lib/Parse/ParsePragma.h > head/contrib/llvm/tools/clang/lib/Rewrite/Core/ > head/contrib/llvm/tools/clang/lib/Rewrite/Frontend/ > head/contrib/llvm/tools/clang/lib/Sema/TargetAttributesSema.cpp > head/contrib/llvm/tools/clang/lib/Sema/TargetAttributesSema.h > > head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Checkers/IdempotentOperationChecker.cpp > > head/contrib/llvm/tools/clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.h > head/contrib/llvm/tools/lldb/include/lldb/Host/DynamicLibrary.h > head/contrib/llvm/tools/lldb/source/Host/common/DynamicLibrary.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextFreeBSD_i386.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextFreeBSD_i386.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextFreeBSD_mips64.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextFreeBSD_mips64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextFreeBSD_x86_64.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextFreeBSD_x86_64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextLinux_i386.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextLinux_i386.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextLinux_x86_64.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextLinux_x86_64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIX.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIX_mips64.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIX_mips64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIX_x86.cpp > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContextPOSIX_x86.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContext_mips64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterContext_x86.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterInfos_i386.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterInfos_mips64.h > > head/contrib/llvm/tools/lldb/source/Plugins/Process/POSIX/RegisterInfos_x86_64.h > head/contrib/llvm/tools/lli/ChildTarget/Unix/ > head/contrib/llvm/tools/lli/ChildTarget/Windows/ > head/contrib/llvm/tools/lli/Unix/RemoteTargetExternal.inc > head/contrib/llvm/tools/lli/Windows/RemoteTargetExternal.inc > head/contrib/llvm/utils/TableGen/SetTheory.cpp > head/contrib/llvm/utils/TableGen/SetTheory.h > head/contrib/llvm/utils/TableGen/TGValueTypes.cpp > head/lib/clang/include/clang/Driver/CC1AsOptions.inc > head/lib/clang/include/clang/Lex/ > head/lib/clang/include/clang/Parse/AttrIdentifierArg.inc > head/lib/clang/include/clang/Parse/AttrLateParsed.inc > head/lib/clang/include/clang/Parse/AttrTypeArg.inc > head/lib/clang/libclangrewritecore/ > Modified: > head/ObsoleteFiles.inc > head/UPDATING > head/contrib/llvm/LICENSE.TXT > head/contrib/llvm/include/llvm-c/Core.h > head/contrib/llvm/include/llvm-c/Disassembler.h > head/contrib/llvm/include/llvm-c/ExecutionEngine.h > head/contrib/llvm/include/llvm-c/IRReader.h > head/contrib/llvm/include/llvm-c/Object.h > head/contrib/llvm/include/llvm-c/Support.h > head/contrib/llvm/include/llvm-c/TargetMachine.h > head/contrib/llvm/include/llvm-c/Transforms/PassManagerBuilder.h > head/contrib/llvm/include/llvm-c/Transforms/Scalar.h > head/contrib/llvm/include/llvm-c/lto.h > head/contrib/llvm/include/llvm/ADT/APFloat.h > head/contrib/llvm/include/llvm/ADT/APInt.h > head/contrib/llvm/include/llvm/ADT/APSInt.h > head/contrib/llvm/include/llvm/ADT/ArrayRef.h > head/contrib/llvm/include/llvm/ADT/BitVector.h > head/contrib/llvm/include/llvm/ADT/DenseMap.h > head/contrib/llvm/include/llvm/ADT/DenseSet.h > head/contrib/llvm/include/llvm/ADT/DepthFirstIterator.h > head/contrib/llvm/include/llvm/ADT/EquivalenceClasses.h > head/contrib/llvm/include/llvm/ADT/FoldingSet.h > head/contrib/llvm/include/llvm/ADT/Hashing.h > head/contrib/llvm/include/llvm/ADT/ImmutableMap.h > head/contrib/llvm/include/llvm/ADT/ImmutableSet.h > head/contrib/llvm/include/llvm/ADT/IntervalMap.h > head/contrib/llvm/include/llvm/ADT/IntrusiveRefCntPtr.h > head/contrib/llvm/include/llvm/ADT/MapVector.h > head/contrib/llvm/include/llvm/ADT/Optional.h > head/contrib/llvm/include/llvm/ADT/PointerIntPair.h > head/contrib/llvm/include/llvm/ADT/PointerUnion.h > head/contrib/llvm/include/llvm/ADT/PostOrderIterator.h > head/contrib/llvm/include/llvm/ADT/SCCIterator.h > head/contrib/llvm/include/llvm/ADT/STLExtras.h > head/contrib/llvm/include/llvm/ADT/ScopedHashTable.h > head/contrib/llvm/include/llvm/ADT/SetVector.h > head/contrib/llvm/include/llvm/ADT/SmallBitVector.h > head/contrib/llvm/include/llvm/ADT/SmallPtrSet.h > head/contrib/llvm/include/llvm/ADT/SmallSet.h > head/contrib/llvm/include/llvm/ADT/SmallString.h > head/... From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 21:58:04 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CC53C9B4; Wed, 31 Dec 2014 21:58:04 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B8CB564E6D; Wed, 31 Dec 2014 21:58:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBVLw4Zn093577; Wed, 31 Dec 2014 21:58:04 GMT (envelope-from loos@FreeBSD.org) Received: (from loos@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBVLw4x8093576; Wed, 31 Dec 2014 21:58:04 GMT (envelope-from loos@FreeBSD.org) Message-Id: <201412312158.sBVLw4x8093576@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: loos set sender to loos@FreeBSD.org using -f From: Luiz Otavio O Souza Date: Wed, 31 Dec 2014 21:58:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276481 - head/usr.sbin/gpioctl X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 21:58:04 -0000 Author: loos Date: Wed Dec 31 21:58:03 2014 New Revision: 276481 URL: https://svnweb.freebsd.org/changeset/base/276481 Log: Free the buffer returned by gpio_pin_list() after the use. Reported by: Coverity Scan CID: 1257468 Modified: head/usr.sbin/gpioctl/gpioctl.c Modified: head/usr.sbin/gpioctl/gpioctl.c ============================================================================== --- head/usr.sbin/gpioctl/gpioctl.c Wed Dec 31 20:34:12 2014 (r276480) +++ head/usr.sbin/gpioctl/gpioctl.c Wed Dec 31 21:58:03 2014 (r276481) @@ -159,6 +159,7 @@ dump_pins(gpio_handle_t handle, int verb } printf("\n"); } + free(cfgs); } static void From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 22:49:03 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B74989E9; Wed, 31 Dec 2014 22:49:03 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A39C0665B0; Wed, 31 Dec 2014 22:49:03 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBVMn3wC017037; Wed, 31 Dec 2014 22:49:03 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBVMn3R5017036; Wed, 31 Dec 2014 22:49:03 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201412312249.sBVMn3R5017036@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Garrett Cooper Date: Wed, 31 Dec 2014 22:49:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276483 - head/share/man/man7 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 22:49:03 -0000 Author: ngie Date: Wed Dec 31 22:49:02 2014 New Revision: 276483 URL: https://svnweb.freebsd.org/changeset/base/276483 Log: The variable used with install(1) for stripping should be STRIPBIN, not STRIP_CMD MFC after: 3 days Reported by: lev Modified: head/share/man/man7/build.7 Modified: head/share/man/man7/build.7 ============================================================================== --- head/share/man/man7/build.7 Wed Dec 31 22:15:28 2014 (r276482) +++ head/share/man/man7/build.7 Wed Dec 31 22:49:02 2014 (r276483) @@ -445,10 +445,10 @@ process. .Bd -literal -offset indent make PORTS_MODULES=emulators/kqemu-kmod kernel .Ed -.It Va STRIP_CMD +.It Va STRIPBIN Command to use at install time when stripping binaries. Be sure to add any additional tools required to run -.Va STRIP_CMD +.Va STRIPBIN to the .Va LOCAL_ITOOLS .Xr make 1 From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 22:52:45 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C6A5DB93; Wed, 31 Dec 2014 22:52:45 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A78FC255A; Wed, 31 Dec 2014 22:52:45 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBVMqje7020933; Wed, 31 Dec 2014 22:52:45 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBVMqi1J020929; Wed, 31 Dec 2014 22:52:44 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201412312252.sBVMqi1J020929@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Wed, 31 Dec 2014 22:52:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276484 - in head/sys: netinet netinet6 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 22:52:45 -0000 Author: adrian Date: Wed Dec 31 22:52:43 2014 New Revision: 276484 URL: https://svnweb.freebsd.org/changeset/base/276484 Log: Migrate the RSS IPv6 hash code to use pointers to the v6 addresses rather than passing them in by value. The eventual aim is to do incremental hash construction rather than all of the memcpy()'ing into a contiguous buffer for the hash function, which does show up as taking quite a bit of CPU during profiling. Tested: * a variety of laptops/desktop setups I have, with v6 connectivity Differential Revision: D1404 Reviewed by: bz, rpaulo Modified: head/sys/netinet/in_rss.c head/sys/netinet/in_rss.h head/sys/netinet6/in6_pcbgroup.c head/sys/netinet6/udp6_usrreq.c Modified: head/sys/netinet/in_rss.c ============================================================================== --- head/sys/netinet/in_rss.c Wed Dec 31 22:49:02 2014 (r276483) +++ head/sys/netinet/in_rss.c Wed Dec 31 22:52:43 2014 (r276484) @@ -346,16 +346,16 @@ rss_hash_ip4_4tuple(struct in_addr src, * Hash an IPv6 2-tuple. */ uint32_t -rss_hash_ip6_2tuple(struct in6_addr src, struct in6_addr dst) +rss_hash_ip6_2tuple(const struct in6_addr *src, const struct in6_addr *dst) { - uint8_t data[sizeof(src) + sizeof(dst)]; + uint8_t data[sizeof(*src) + sizeof(*dst)]; u_int datalen; datalen = 0; - bcopy(&src, &data[datalen], sizeof(src)); - datalen += sizeof(src); - bcopy(&dst, &data[datalen], sizeof(dst)); - datalen += sizeof(dst); + bcopy(src, &data[datalen], sizeof(*src)); + datalen += sizeof(*src); + bcopy(dst, &data[datalen], sizeof(*dst)); + datalen += sizeof(*dst); return (rss_hash(datalen, data)); } @@ -363,18 +363,18 @@ rss_hash_ip6_2tuple(struct in6_addr src, * Hash an IPv6 4-tuple. */ uint32_t -rss_hash_ip6_4tuple(struct in6_addr src, u_short srcport, - struct in6_addr dst, u_short dstport) +rss_hash_ip6_4tuple(const struct in6_addr *src, u_short srcport, + const struct in6_addr *dst, u_short dstport) { - uint8_t data[sizeof(src) + sizeof(dst) + sizeof(srcport) + + uint8_t data[sizeof(*src) + sizeof(*dst) + sizeof(srcport) + sizeof(dstport)]; u_int datalen; datalen = 0; - bcopy(&src, &data[datalen], sizeof(src)); - datalen += sizeof(src); - bcopy(&dst, &data[datalen], sizeof(dst)); - datalen += sizeof(dst); + bcopy(src, &data[datalen], sizeof(*src)); + datalen += sizeof(*src); + bcopy(dst, &data[datalen], sizeof(*dst)); + datalen += sizeof(*dst); bcopy(&srcport, &data[datalen], sizeof(srcport)); datalen += sizeof(srcport); bcopy(&dstport, &data[datalen], sizeof(dstport)); Modified: head/sys/netinet/in_rss.h ============================================================================== --- head/sys/netinet/in_rss.h Wed Dec 31 22:49:02 2014 (r276483) +++ head/sys/netinet/in_rss.h Wed Dec 31 22:52:43 2014 (r276484) @@ -112,10 +112,10 @@ u_int rss_gethashconfig(void); uint32_t rss_hash_ip4_4tuple(struct in_addr src, u_short srcport, struct in_addr dst, u_short dstport); uint32_t rss_hash_ip4_2tuple(struct in_addr src, struct in_addr dst); -uint32_t rss_hash_ip6_4tuple(struct in6_addr src, u_short srcport, - struct in6_addr dst, u_short dstport); -uint32_t rss_hash_ip6_2tuple(struct in6_addr src, - struct in6_addr dst); +uint32_t rss_hash_ip6_4tuple(const struct in6_addr *src, u_short srcport, + const struct in6_addr *dst, u_short dstport); +uint32_t rss_hash_ip6_2tuple(const struct in6_addr *src, + const struct in6_addr *dst); /* * Network stack interface to query desired CPU affinity of a packet. Modified: head/sys/netinet6/in6_pcbgroup.c ============================================================================== --- head/sys/netinet6/in6_pcbgroup.c Wed Dec 31 22:49:02 2014 (r276483) +++ head/sys/netinet6/in6_pcbgroup.c Wed Dec 31 22:52:43 2014 (r276484) @@ -105,7 +105,7 @@ in6_pcbgroup_bytuple(struct inpcbinfo *p switch (pcbinfo->ipi_hashfields) { case IPI_HASHFIELDS_4TUPLE: #ifdef RSS - hash = rss_hash_ip6_4tuple(*faddrp, fport, *laddrp, lport); + hash = rss_hash_ip6_4tuple(faddrp, fport, laddrp, lport); #else hash = faddrp->s6_addr32[3] ^ fport; #endif @@ -113,7 +113,7 @@ in6_pcbgroup_bytuple(struct inpcbinfo *p case IPI_HASHFIELDS_2TUPLE: #ifdef RSS - hash = rss_hash_ip6_2tuple(*faddrp, *laddrp); + hash = rss_hash_ip6_2tuple(faddrp, laddrp); #else hash = faddrp->s6_addr32[3] ^ laddrp->s6_addr32[3]; #endif Modified: head/sys/netinet6/udp6_usrreq.c ============================================================================== --- head/sys/netinet6/udp6_usrreq.c Wed Dec 31 22:49:02 2014 (r276483) +++ head/sys/netinet6/udp6_usrreq.c Wed Dec 31 22:52:43 2014 (r276484) @@ -841,7 +841,7 @@ udp6_output(struct inpcb *inp, struct mb * XXX .. and we should likely cache this in the inpcb. */ #ifdef RSS - m->m_pkthdr.flowid = rss_hash_ip6_2tuple(*faddr, *laddr); + m->m_pkthdr.flowid = rss_hash_ip6_2tuple(faddr, laddr); M_HASHTYPE_SET(m, M_HASHTYPE_RSS_IPV6); #endif flags = 0; From owner-svn-src-head@FreeBSD.ORG Wed Dec 31 23:19:18 2014 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E02CBFC8; Wed, 31 Dec 2014 23:19:18 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CAB4129BB; Wed, 31 Dec 2014 23:19:18 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id sBVNJIPT031055; Wed, 31 Dec 2014 23:19:18 GMT (envelope-from np@FreeBSD.org) Received: (from np@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id sBVNJHca031041; Wed, 31 Dec 2014 23:19:17 GMT (envelope-from np@FreeBSD.org) Message-Id: <201412312319.sBVNJHca031041@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: np set sender to np@FreeBSD.org using -f From: Navdeep Parhar Date: Wed, 31 Dec 2014 23:19:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276485 - in head/sys: conf dev/cxgbe modules/cxgbe/if_cxgbe X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 31 Dec 2014 23:19:19 -0000 Author: np Date: Wed Dec 31 23:19:16 2014 New Revision: 276485 URL: https://svnweb.freebsd.org/changeset/base/276485 Log: cxgbe(4): major tx rework. a) Front load as much work as possible in if_transmit, before any driver lock or software queue has to get involved. b) Replace buf_ring with a brand new mp_ring (multiproducer ring). This is specifically for the tx multiqueue model where one of the if_transmit producer threads becomes the consumer and other producers carry on as usual. mp_ring is implemented as standalone code and it should be possible to use it in any driver with tx multiqueue. It also has: - the ability to enqueue/dequeue multiple items. This might become significant if packet batching is ever implemented. - an abdication mechanism to allow a thread to give up writing tx descriptors and have another if_transmit thread take over. A thread that's writing tx descriptors can end up doing so for an unbounded time period if a) there are other if_transmit threads continuously feeding the sofware queue, and b) the chip keeps up with whatever the thread is throwing at it. - accurate statistics about interesting events even when the stats come at the expense of additional branches/conditional code. The NIC txq lock is uncontested on the fast path at this point. I've left it there for synchronization with the control events (interface up/down, modload/unload). c) Add support for "type 1" coalescing work request in the normal NIC tx path. This work request is optimized for frames with a single item in the DMA gather list. These are very common when forwarding packets. Note that netmap tx in cxgbe already uses these "type 1" work requests. d) Do not request automatic cidx updates every 32 descriptors. Instead, request updates via bits in individual work requests (still every 32 descriptors approximately). Also, request an automatic final update when the queue idles after activity. This means NIC tx reclaim is still performed lazily but it will catch up quickly as soon as the queue idles. This seems to be the best middle ground and I'll probably do something similar for netmap tx as well. e) Implement a faster tx path for WRQs (used by TOE tx and control queues, _not_ by the normal NIC tx). Allow work requests to be written directly to the hardware descriptor ring if room is available. I will convert t4_tom and iw_cxgbe modules to this faster style gradually. MFC after: 2 months Added: head/sys/dev/cxgbe/t4_mp_ring.c (contents, props changed) head/sys/dev/cxgbe/t4_mp_ring.h (contents, props changed) Modified: head/sys/conf/files head/sys/dev/cxgbe/adapter.h head/sys/dev/cxgbe/t4_l2t.c head/sys/dev/cxgbe/t4_main.c head/sys/dev/cxgbe/t4_sge.c head/sys/modules/cxgbe/if_cxgbe/Makefile Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Wed Dec 31 22:52:43 2014 (r276484) +++ head/sys/conf/files Wed Dec 31 23:19:16 2014 (r276485) @@ -1142,6 +1142,8 @@ dev/cxgb/sys/uipc_mvec.c optional cxgb p compile-with "${NORMAL_C} -I$S/dev/cxgb" dev/cxgb/cxgb_t3fw.c optional cxgb cxgb_t3fw \ compile-with "${NORMAL_C} -I$S/dev/cxgb" +dev/cxgbe/t4_mp_ring.c optional cxgbe pci \ + compile-with "${NORMAL_C} -I$S/dev/cxgbe" dev/cxgbe/t4_main.c optional cxgbe pci \ compile-with "${NORMAL_C} -I$S/dev/cxgbe" dev/cxgbe/t4_netmap.c optional cxgbe pci \ Modified: head/sys/dev/cxgbe/adapter.h ============================================================================== --- head/sys/dev/cxgbe/adapter.h Wed Dec 31 22:52:43 2014 (r276484) +++ head/sys/dev/cxgbe/adapter.h Wed Dec 31 23:19:16 2014 (r276485) @@ -152,7 +152,8 @@ enum { CL_METADATA_SIZE = CACHE_LINE_SIZE, SGE_MAX_WR_NDESC = SGE_MAX_WR_LEN / EQ_ESIZE, /* max WR size in desc */ - TX_SGL_SEGS = 36, + TX_SGL_SEGS = 39, + TX_SGL_SEGS_TSO = 38, TX_WR_FLITS = SGE_MAX_WR_LEN / 8 }; @@ -273,6 +274,7 @@ struct port_info { struct timeval last_refreshed; struct port_stats stats; u_int tnl_cong_drops; + u_int tx_parse_error; eventhandler_tag vlan_c; @@ -308,23 +310,9 @@ struct tx_desc { __be64 flit[8]; }; -struct tx_map { - struct mbuf *m; - bus_dmamap_t map; -}; - -/* DMA maps used for tx */ -struct tx_maps { - struct tx_map *maps; - uint32_t map_total; /* # of DMA maps */ - uint32_t map_pidx; /* next map to be used */ - uint32_t map_cidx; /* reclaimed up to this index */ - uint32_t map_avail; /* # of available maps */ -}; - struct tx_sdesc { + struct mbuf *m; /* m_nextpkt linked chain of frames */ uint8_t desc_used; /* # of hardware descriptors used by the WR */ - uint8_t credits; /* NIC txq: # of frames sent out in the WR */ }; @@ -378,16 +366,12 @@ struct sge_iq { enum { EQ_CTRL = 1, EQ_ETH = 2, -#ifdef TCP_OFFLOAD EQ_OFLD = 3, -#endif /* eq flags */ - EQ_TYPEMASK = 7, /* 3 lsbits hold the type */ - EQ_ALLOCATED = (1 << 3), /* firmware resources allocated */ - EQ_DOOMED = (1 << 4), /* about to be destroyed */ - EQ_CRFLUSHED = (1 << 5), /* expecting an update from SGE */ - EQ_STALLED = (1 << 6), /* out of hw descriptors or dmamaps */ + EQ_TYPEMASK = 0x3, /* 2 lsbits hold the type (see above) */ + EQ_ALLOCATED = (1 << 2), /* firmware resources allocated */ + EQ_ENABLED = (1 << 3), /* open for business */ }; /* Listed in order of preference. Update t4_sysctls too if you change these */ @@ -402,32 +386,25 @@ enum {DOORBELL_UDB, DOORBELL_WCWR, DOORB struct sge_eq { unsigned int flags; /* MUST be first */ unsigned int cntxt_id; /* SGE context id for the eq */ - bus_dma_tag_t desc_tag; - bus_dmamap_t desc_map; - char lockname[16]; struct mtx eq_lock; struct tx_desc *desc; /* KVA of descriptor ring */ - bus_addr_t ba; /* bus address of descriptor ring */ - struct sge_qstat *spg; /* status page, for convenience */ uint16_t doorbells; volatile uint32_t *udb; /* KVA of doorbell (lies within BAR2) */ u_int udb_qid; /* relative qid within the doorbell page */ - uint16_t cap; /* max # of desc, for convenience */ - uint16_t avail; /* available descriptors, for convenience */ - uint16_t qsize; /* size (# of entries) of the queue */ + uint16_t sidx; /* index of the entry with the status page */ uint16_t cidx; /* consumer idx (desc idx) */ uint16_t pidx; /* producer idx (desc idx) */ - uint16_t pending; /* # of descriptors used since last doorbell */ + uint16_t equeqidx; /* EQUEQ last requested at this pidx */ + uint16_t dbidx; /* pidx of the most recent doorbell */ uint16_t iqid; /* iq that gets egr_update for the eq */ uint8_t tx_chan; /* tx channel used by the eq */ - struct task tx_task; - struct callout tx_callout; + volatile u_int equiq; /* EQUIQ outstanding */ - /* stats */ - - uint32_t egr_update; /* # of SGE_EGR_UPDATE notifications for eq */ - uint32_t unstalled; /* recovered from stall */ + bus_dma_tag_t desc_tag; + bus_dmamap_t desc_map; + bus_addr_t ba; /* bus address of descriptor ring */ + char lockname[16]; }; struct sw_zone_info { @@ -499,18 +476,19 @@ struct sge_fl { struct cluster_layout cll_alt; /* alternate refill zone, layout */ }; +struct mp_ring; + /* txq: SGE egress queue + what's needed for Ethernet NIC */ struct sge_txq { struct sge_eq eq; /* MUST be first */ struct ifnet *ifp; /* the interface this txq belongs to */ - bus_dma_tag_t tx_tag; /* tag for transmit buffers */ - struct buf_ring *br; /* tx buffer ring */ + struct mp_ring *r; /* tx software ring */ struct tx_sdesc *sdesc; /* KVA of software descriptor ring */ - struct mbuf *m; /* held up due to temporary resource shortage */ - - struct tx_maps txmaps; + struct sglist *gl; + __be32 cpl_ctrl0; /* for convenience */ + struct task tx_reclaim_task; /* stats for common events first */ uint64_t txcsum; /* # of times hardware assisted with checksum */ @@ -519,13 +497,12 @@ struct sge_txq { uint64_t imm_wrs; /* # of work requests with immediate data */ uint64_t sgl_wrs; /* # of work requests with direct SGL */ uint64_t txpkt_wrs; /* # of txpkt work requests (not coalesced) */ - uint64_t txpkts_wrs; /* # of coalesced tx work requests */ - uint64_t txpkts_pkts; /* # of frames in coalesced tx work requests */ + uint64_t txpkts0_wrs; /* # of type0 coalesced tx work requests */ + uint64_t txpkts1_wrs; /* # of type1 coalesced tx work requests */ + uint64_t txpkts0_pkts; /* # of frames in type0 coalesced tx WRs */ + uint64_t txpkts1_pkts; /* # of frames in type1 coalesced tx WRs */ /* stats for not-that-common events */ - - uint32_t no_dmamap; /* no DMA map to load the mbuf */ - uint32_t no_desc; /* out of hardware descriptors */ } __aligned(CACHE_LINE_SIZE); /* rxq: SGE ingress queue + SGE free list + miscellaneous items */ @@ -574,7 +551,13 @@ struct wrqe { STAILQ_ENTRY(wrqe) link; struct sge_wrq *wrq; int wr_len; - uint64_t wr[] __aligned(16); + char wr[] __aligned(16); +}; + +struct wrq_cookie { + TAILQ_ENTRY(wrq_cookie) link; + int ndesc; + int pidx; }; /* @@ -585,17 +568,32 @@ struct sge_wrq { struct sge_eq eq; /* MUST be first */ struct adapter *adapter; + struct task wrq_tx_task; + + /* Tx desc reserved but WR not "committed" yet. */ + TAILQ_HEAD(wrq_incomplete_wrs , wrq_cookie) incomplete_wrs; - /* List of WRs held up due to lack of tx descriptors */ + /* List of WRs ready to go out as soon as descriptors are available. */ STAILQ_HEAD(, wrqe) wr_list; + u_int nwr_pending; + u_int ndesc_needed; /* stats for common events first */ - uint64_t tx_wrs; /* # of tx work requests */ + uint64_t tx_wrs_direct; /* # of WRs written directly to desc ring. */ + uint64_t tx_wrs_ss; /* # of WRs copied from scratch space. */ + uint64_t tx_wrs_copied; /* # of WRs queued and copied to desc ring. */ /* stats for not-that-common events */ - uint32_t no_desc; /* out of hardware descriptors */ + /* + * Scratch space for work requests that wrap around after reaching the + * status page, and some infomation about the last WR that used it. + */ + uint16_t ss_pidx; + uint16_t ss_len; + uint8_t ss[SGE_MAX_WR_LEN]; + } __aligned(CACHE_LINE_SIZE); @@ -744,7 +742,7 @@ struct adapter { struct sge sge; int lro_timeout; - struct taskqueue *tq[NCHAN]; /* taskqueues that flush data out */ + struct taskqueue *tq[NCHAN]; /* General purpose taskqueues */ struct port_info *port[MAX_NPORTS]; uint8_t chan_map[NCHAN]; @@ -978,12 +976,11 @@ static inline int tx_resume_threshold(struct sge_eq *eq) { - return (eq->qsize / 4); + /* not quite the same as qsize / 4, but this will do. */ + return (eq->sidx / 4); } /* t4_main.c */ -void t4_tx_task(void *, int); -void t4_tx_callout(void *); int t4_os_find_pci_capability(struct adapter *, int); int t4_os_pci_save_state(struct adapter *); int t4_os_pci_restore_state(struct adapter *); @@ -1024,16 +1021,15 @@ int t4_setup_adapter_queues(struct adapt int t4_teardown_adapter_queues(struct adapter *); int t4_setup_port_queues(struct port_info *); int t4_teardown_port_queues(struct port_info *); -int t4_alloc_tx_maps(struct tx_maps *, bus_dma_tag_t, int, int); -void t4_free_tx_maps(struct tx_maps *, bus_dma_tag_t); void t4_intr_all(void *); void t4_intr(void *); void t4_intr_err(void *); void t4_intr_evt(void *); void t4_wrq_tx_locked(struct adapter *, struct sge_wrq *, struct wrqe *); -int t4_eth_tx(struct ifnet *, struct sge_txq *, struct mbuf *); void t4_update_fl_bufsize(struct ifnet *); -int can_resume_tx(struct sge_eq *); +int parse_pkt(struct mbuf **); +void *start_wrq_wr(struct sge_wrq *, int, struct wrq_cookie *); +void commit_wrq_wr(struct sge_wrq *, void *, struct wrq_cookie *); /* t4_tracer.c */ struct t4_tracer; Modified: head/sys/dev/cxgbe/t4_l2t.c ============================================================================== --- head/sys/dev/cxgbe/t4_l2t.c Wed Dec 31 22:52:43 2014 (r276484) +++ head/sys/dev/cxgbe/t4_l2t.c Wed Dec 31 23:19:16 2014 (r276485) @@ -113,16 +113,15 @@ found: int t4_write_l2e(struct adapter *sc, struct l2t_entry *e, int sync) { - struct wrqe *wr; + struct wrq_cookie cookie; struct cpl_l2t_write_req *req; int idx = e->idx + sc->vres.l2t.start; mtx_assert(&e->lock, MA_OWNED); - wr = alloc_wrqe(sizeof(*req), &sc->sge.mgmtq); - if (wr == NULL) + req = start_wrq_wr(&sc->sge.mgmtq, howmany(sizeof(*req), 16), &cookie); + if (req == NULL) return (ENOMEM); - req = wrtod(wr); INIT_TP_WR(req, 0); OPCODE_TID(req) = htonl(MK_OPCODE_TID(CPL_L2T_WRITE_REQ, idx | @@ -132,7 +131,7 @@ t4_write_l2e(struct adapter *sc, struct req->vlan = htons(e->vlan); memcpy(req->dst_mac, e->dmac, sizeof(req->dst_mac)); - t4_wrq_tx(sc, wr); + commit_wrq_wr(&sc->sge.mgmtq, req, &cookie); if (sync && e->state != L2T_STATE_SWITCHING) e->state = L2T_STATE_SYNC_WRITE; Modified: head/sys/dev/cxgbe/t4_main.c ============================================================================== --- head/sys/dev/cxgbe/t4_main.c Wed Dec 31 22:52:43 2014 (r276484) +++ head/sys/dev/cxgbe/t4_main.c Wed Dec 31 23:19:16 2014 (r276485) @@ -66,6 +66,7 @@ __FBSDID("$FreeBSD$"); #include "common/t4_regs_values.h" #include "t4_ioctl.h" #include "t4_l2t.h" +#include "t4_mp_ring.h" /* T4 bus driver interface */ static int t4_probe(device_t); @@ -378,7 +379,8 @@ static void build_medialist(struct port_ static int cxgbe_init_synchronized(struct port_info *); static int cxgbe_uninit_synchronized(struct port_info *); static int setup_intr_handlers(struct adapter *); -static void quiesce_eq(struct adapter *, struct sge_eq *); +static void quiesce_txq(struct adapter *, struct sge_txq *); +static void quiesce_wrq(struct adapter *, struct sge_wrq *); static void quiesce_iq(struct adapter *, struct sge_iq *); static void quiesce_fl(struct adapter *, struct sge_fl *); static int t4_alloc_irq(struct adapter *, struct irq *, int rid, @@ -434,7 +436,6 @@ static int sysctl_tx_rate(SYSCTL_HANDLER static int sysctl_ulprx_la(SYSCTL_HANDLER_ARGS); static int sysctl_wcwr_stats(SYSCTL_HANDLER_ARGS); #endif -static inline void txq_start(struct ifnet *, struct sge_txq *); static uint32_t fconf_to_mode(uint32_t); static uint32_t mode_to_fconf(uint32_t); static uint32_t fspec_to_fconf(struct t4_filter_specification *); @@ -1429,67 +1430,36 @@ cxgbe_transmit(struct ifnet *ifp, struct { struct port_info *pi = ifp->if_softc; struct adapter *sc = pi->adapter; - struct sge_txq *txq = &sc->sge.txq[pi->first_txq]; - struct buf_ring *br; + struct sge_txq *txq; + void *items[1]; int rc; M_ASSERTPKTHDR(m); + MPASS(m->m_nextpkt == NULL); /* not quite ready for this yet */ if (__predict_false(pi->link_cfg.link_ok == 0)) { m_freem(m); return (ENETDOWN); } - /* check if flowid is set */ - if (M_HASHTYPE_GET(m) != M_HASHTYPE_NONE) - txq += ((m->m_pkthdr.flowid % (pi->ntxq - pi->rsrv_noflowq)) - + pi->rsrv_noflowq); - br = txq->br; - - if (TXQ_TRYLOCK(txq) == 0) { - struct sge_eq *eq = &txq->eq; - - /* - * It is possible that t4_eth_tx finishes up and releases the - * lock between the TRYLOCK above and the drbr_enqueue here. We - * need to make sure that this mbuf doesn't just sit there in - * the drbr. - */ - - rc = drbr_enqueue(ifp, br, m); - if (rc == 0 && callout_pending(&eq->tx_callout) == 0 && - !(eq->flags & EQ_DOOMED)) - callout_reset(&eq->tx_callout, 1, t4_tx_callout, eq); + rc = parse_pkt(&m); + if (__predict_false(rc != 0)) { + MPASS(m == NULL); /* was freed already */ + atomic_add_int(&pi->tx_parse_error, 1); /* rare, atomic is ok */ return (rc); } - /* - * txq->m is the mbuf that is held up due to a temporary shortage of - * resources and it should be put on the wire first. Then what's in - * drbr and finally the mbuf that was just passed in to us. - * - * Return code should indicate the fate of the mbuf that was passed in - * this time. - */ - - TXQ_LOCK_ASSERT_OWNED(txq); - if (drbr_needs_enqueue(ifp, br) || txq->m) { - - /* Queued for transmission. */ - - rc = drbr_enqueue(ifp, br, m); - m = txq->m ? txq->m : drbr_dequeue(ifp, br); - (void) t4_eth_tx(ifp, txq, m); - TXQ_UNLOCK(txq); - return (rc); - } + /* Select a txq. */ + txq = &sc->sge.txq[pi->first_txq]; + if (M_HASHTYPE_GET(m) != M_HASHTYPE_NONE) + txq += ((m->m_pkthdr.flowid % (pi->ntxq - pi->rsrv_noflowq)) + + pi->rsrv_noflowq); - /* Direct transmission. */ - rc = t4_eth_tx(ifp, txq, m); - if (rc != 0 && txq->m) - rc = 0; /* held, will be transmitted soon (hopefully) */ + items[0] = m; + rc = mp_ring_enqueue(txq->r, items, 1, 4096); + if (__predict_false(rc != 0)) + m_freem(m); - TXQ_UNLOCK(txq); return (rc); } @@ -1499,17 +1469,17 @@ cxgbe_qflush(struct ifnet *ifp) struct port_info *pi = ifp->if_softc; struct sge_txq *txq; int i; - struct mbuf *m; /* queues do not exist if !PORT_INIT_DONE. */ if (pi->flags & PORT_INIT_DONE) { for_each_txq(pi, i, txq) { TXQ_LOCK(txq); - m_freem(txq->m); - txq->m = NULL; - while ((m = buf_ring_dequeue_sc(txq->br)) != NULL) - m_freem(m); + txq->eq.flags &= ~EQ_ENABLED; TXQ_UNLOCK(txq); + while (!mp_ring_is_idle(txq->r)) { + mp_ring_check_drainage(txq->r, 0); + pause("qflush", 1); + } } } if_qflush(ifp); @@ -1564,7 +1534,7 @@ cxgbe_get_counter(struct ifnet *ifp, ift struct sge_txq *txq; for_each_txq(pi, i, txq) - drops += txq->br->br_drops; + drops += counter_u64_fetch(txq->r->drops); } return (drops); @@ -3236,7 +3206,8 @@ cxgbe_init_synchronized(struct port_info { struct adapter *sc = pi->adapter; struct ifnet *ifp = pi->ifp; - int rc = 0; + int rc = 0, i; + struct sge_txq *txq; ASSERT_SYNCHRONIZED_OP(sc); @@ -3265,6 +3236,17 @@ cxgbe_init_synchronized(struct port_info } /* + * Can't fail from this point onwards. Review cxgbe_uninit_synchronized + * if this changes. + */ + + for_each_txq(pi, i, txq) { + TXQ_LOCK(txq); + txq->eq.flags |= EQ_ENABLED; + TXQ_UNLOCK(txq); + } + + /* * The first iq of the first port to come up is used for tracing. */ if (sc->traceq < 0) { @@ -3297,7 +3279,8 @@ cxgbe_uninit_synchronized(struct port_in { struct adapter *sc = pi->adapter; struct ifnet *ifp = pi->ifp; - int rc; + int rc, i; + struct sge_txq *txq; ASSERT_SYNCHRONIZED_OP(sc); @@ -3314,6 +3297,12 @@ cxgbe_uninit_synchronized(struct port_in return (rc); } + for_each_txq(pi, i, txq) { + TXQ_LOCK(txq); + txq->eq.flags &= ~EQ_ENABLED; + TXQ_UNLOCK(txq); + } + clrbit(&sc->open_device_map, pi->port_id); PORT_LOCK(pi); ifp->if_drv_flags &= ~IFF_DRV_RUNNING; @@ -3543,15 +3532,17 @@ port_full_uninit(struct port_info *pi) if (pi->flags & PORT_INIT_DONE) { - /* Need to quiesce queues. XXX: ctrl queues? */ + /* Need to quiesce queues. */ + + quiesce_wrq(sc, &sc->sge.ctrlq[pi->port_id]); for_each_txq(pi, i, txq) { - quiesce_eq(sc, &txq->eq); + quiesce_txq(sc, txq); } #ifdef TCP_OFFLOAD for_each_ofld_txq(pi, i, ofld_txq) { - quiesce_eq(sc, &ofld_txq->eq); + quiesce_wrq(sc, ofld_txq); } #endif @@ -3576,23 +3567,39 @@ port_full_uninit(struct port_info *pi) } static void -quiesce_eq(struct adapter *sc, struct sge_eq *eq) +quiesce_txq(struct adapter *sc, struct sge_txq *txq) { - EQ_LOCK(eq); - eq->flags |= EQ_DOOMED; + struct sge_eq *eq = &txq->eq; + struct sge_qstat *spg = (void *)&eq->desc[eq->sidx]; - /* - * Wait for the response to a credit flush if one's - * pending. - */ - while (eq->flags & EQ_CRFLUSHED) - mtx_sleep(eq, &eq->eq_lock, 0, "crflush", 0); - EQ_UNLOCK(eq); + (void) sc; /* unused */ - callout_drain(&eq->tx_callout); /* XXX: iffy */ - pause("callout", 10); /* Still iffy */ +#ifdef INVARIANTS + TXQ_LOCK(txq); + MPASS((eq->flags & EQ_ENABLED) == 0); + TXQ_UNLOCK(txq); +#endif - taskqueue_drain(sc->tq[eq->tx_chan], &eq->tx_task); + /* Wait for the mp_ring to empty. */ + while (!mp_ring_is_idle(txq->r)) { + mp_ring_check_drainage(txq->r, 0); + pause("rquiesce", 1); + } + + /* Then wait for the hardware to finish. */ + while (spg->cidx != htobe16(eq->pidx)) + pause("equiesce", 1); + + /* Finally, wait for the driver to reclaim all descriptors. */ + while (eq->cidx != eq->pidx) + pause("dquiesce", 1); +} + +static void +quiesce_wrq(struct adapter *sc, struct sge_wrq *wrq) +{ + + /* XXXTX */ } static void @@ -4892,6 +4899,9 @@ cxgbe_sysctls(struct port_info *pi) oid = SYSCTL_ADD_NODE(ctx, children, OID_AUTO, "stats", CTLFLAG_RD, NULL, "port statistics"); children = SYSCTL_CHILDREN(oid); + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "tx_parse_error", CTLFLAG_RD, + &pi->tx_parse_error, 0, + "# of tx packets with invalid length or # of segments"); #define SYSCTL_ADD_T4_REG64(pi, name, desc, reg) \ SYSCTL_ADD_OID(ctx, children, OID_AUTO, name, \ @@ -6947,74 +6957,6 @@ sysctl_wcwr_stats(SYSCTL_HANDLER_ARGS) } #endif -static inline void -txq_start(struct ifnet *ifp, struct sge_txq *txq) -{ - struct buf_ring *br; - struct mbuf *m; - - TXQ_LOCK_ASSERT_OWNED(txq); - - br = txq->br; - m = txq->m ? txq->m : drbr_dequeue(ifp, br); - if (m) - t4_eth_tx(ifp, txq, m); -} - -void -t4_tx_callout(void *arg) -{ - struct sge_eq *eq = arg; - struct adapter *sc; - - if (EQ_TRYLOCK(eq) == 0) - goto reschedule; - - if (eq->flags & EQ_STALLED && !can_resume_tx(eq)) { - EQ_UNLOCK(eq); -reschedule: - if (__predict_true(!(eq->flags && EQ_DOOMED))) - callout_schedule(&eq->tx_callout, 1); - return; - } - - EQ_LOCK_ASSERT_OWNED(eq); - - if (__predict_true((eq->flags & EQ_DOOMED) == 0)) { - - if ((eq->flags & EQ_TYPEMASK) == EQ_ETH) { - struct sge_txq *txq = arg; - struct port_info *pi = txq->ifp->if_softc; - - sc = pi->adapter; - } else { - struct sge_wrq *wrq = arg; - - sc = wrq->adapter; - } - - taskqueue_enqueue(sc->tq[eq->tx_chan], &eq->tx_task); - } - - EQ_UNLOCK(eq); -} - -void -t4_tx_task(void *arg, int count) -{ - struct sge_eq *eq = arg; - - EQ_LOCK(eq); - if ((eq->flags & EQ_TYPEMASK) == EQ_ETH) { - struct sge_txq *txq = arg; - txq_start(txq->ifp, txq); - } else { - struct sge_wrq *wrq = arg; - t4_wrq_tx_locked(wrq->adapter, wrq, NULL); - } - EQ_UNLOCK(eq); -} - static uint32_t fconf_to_mode(uint32_t fconf) { @@ -7452,9 +7394,9 @@ static int set_filter_wr(struct adapter *sc, int fidx) { struct filter_entry *f = &sc->tids.ftid_tab[fidx]; - struct wrqe *wr; struct fw_filter_wr *fwr; unsigned int ftid; + struct wrq_cookie cookie; ASSERT_SYNCHRONIZED_OP(sc); @@ -7473,12 +7415,10 @@ set_filter_wr(struct adapter *sc, int fi ftid = sc->tids.ftid_base + fidx; - wr = alloc_wrqe(sizeof(*fwr), &sc->sge.mgmtq); - if (wr == NULL) + fwr = start_wrq_wr(&sc->sge.mgmtq, howmany(sizeof(*fwr), 16), &cookie); + if (fwr == NULL) return (ENOMEM); - - fwr = wrtod(wr); - bzero(fwr, sizeof (*fwr)); + bzero(fwr, sizeof(*fwr)); fwr->op_pkd = htobe32(V_FW_WR_OP(FW_FILTER_WR)); fwr->len16_pkd = htobe32(FW_LEN16(*fwr)); @@ -7547,7 +7487,7 @@ set_filter_wr(struct adapter *sc, int fi f->pending = 1; sc->tids.ftids_in_use++; - t4_wrq_tx(sc, wr); + commit_wrq_wr(&sc->sge.mgmtq, fwr, &cookie); return (0); } @@ -7555,22 +7495,21 @@ static int del_filter_wr(struct adapter *sc, int fidx) { struct filter_entry *f = &sc->tids.ftid_tab[fidx]; - struct wrqe *wr; struct fw_filter_wr *fwr; unsigned int ftid; + struct wrq_cookie cookie; ftid = sc->tids.ftid_base + fidx; - wr = alloc_wrqe(sizeof(*fwr), &sc->sge.mgmtq); - if (wr == NULL) + fwr = start_wrq_wr(&sc->sge.mgmtq, howmany(sizeof(*fwr), 16), &cookie); + if (fwr == NULL) return (ENOMEM); - fwr = wrtod(wr); bzero(fwr, sizeof (*fwr)); t4_mk_filtdelwr(ftid, fwr, sc->sge.fwq.abs_id); f->pending = 1; - t4_wrq_tx(sc, wr); + commit_wrq_wr(&sc->sge.mgmtq, fwr, &cookie); return (0); } @@ -8170,6 +8109,7 @@ t4_ioctl(struct cdev *dev, unsigned long /* MAC stats */ t4_clr_port_stats(sc, pi->tx_chan); + pi->tx_parse_error = 0; if (pi->flags & PORT_INIT_DONE) { struct sge_rxq *rxq; @@ -8192,24 +8132,24 @@ t4_ioctl(struct cdev *dev, unsigned long txq->imm_wrs = 0; txq->sgl_wrs = 0; txq->txpkt_wrs = 0; - txq->txpkts_wrs = 0; - txq->txpkts_pkts = 0; - txq->br->br_drops = 0; - txq->no_dmamap = 0; - txq->no_desc = 0; + txq->txpkts0_wrs = 0; + txq->txpkts1_wrs = 0; + txq->txpkts0_pkts = 0; + txq->txpkts1_pkts = 0; + mp_ring_reset_stats(txq->r); } #ifdef TCP_OFFLOAD /* nothing to clear for each ofld_rxq */ for_each_ofld_txq(pi, i, wrq) { - wrq->tx_wrs = 0; - wrq->no_desc = 0; + wrq->tx_wrs_direct = 0; + wrq->tx_wrs_copied = 0; } #endif wrq = &sc->sge.ctrlq[pi->port_id]; - wrq->tx_wrs = 0; - wrq->no_desc = 0; + wrq->tx_wrs_direct = 0; + wrq->tx_wrs_copied = 0; } break; } Added: head/sys/dev/cxgbe/t4_mp_ring.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/cxgbe/t4_mp_ring.c Wed Dec 31 23:19:16 2014 (r276485) @@ -0,0 +1,364 @@ +/*- + * Copyright (c) 2014 Chelsio Communications, Inc. + * All rights reserved. + * Written by: Navdeep Parhar + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include + +#include "t4_mp_ring.h" + +union ring_state { + struct { + uint16_t pidx_head; + uint16_t pidx_tail; + uint16_t cidx; + uint16_t flags; + }; + uint64_t state; +}; + +enum { + IDLE = 0, /* consumer ran to completion, nothing more to do. */ + BUSY, /* consumer is running already, or will be shortly. */ + STALLED, /* consumer stopped due to lack of resources. */ + ABDICATED, /* consumer stopped even though there was work to be + done because it wants another thread to take over. */ +}; + +static inline uint16_t +space_available(struct mp_ring *r, union ring_state s) +{ + uint16_t x = r->size - 1; + + if (s.cidx == s.pidx_head) + return (x); + else if (s.cidx > s.pidx_head) + return (s.cidx - s.pidx_head - 1); + else + return (x - s.pidx_head + s.cidx); +} + +static inline uint16_t +increment_idx(struct mp_ring *r, uint16_t idx, uint16_t n) +{ + int x = r->size - idx; + + MPASS(x > 0); + return (x > n ? idx + n : n - x); +} + +/* Consumer is about to update the ring's state to s */ +static inline uint16_t +state_to_flags(union ring_state s, int abdicate) +{ + + if (s.cidx == s.pidx_tail) + return (IDLE); + else if (abdicate && s.pidx_tail != s.pidx_head) + return (ABDICATED); + + return (BUSY); +} + +/* + * Caller passes in a state, with a guarantee that there is work to do and that + * all items up to the pidx_tail in the state are visible. + */ +static void +drain_ring(struct mp_ring *r, union ring_state os, uint16_t prev, int budget) +{ + union ring_state ns; + int n, pending, total; + uint16_t cidx = os.cidx; + uint16_t pidx = os.pidx_tail; + + MPASS(os.flags == BUSY); + MPASS(cidx != pidx); + + if (prev == IDLE) + counter_u64_add(r->starts, 1); + pending = 0; + total = 0; + + while (cidx != pidx) { + + /* Items from cidx to pidx are available for consumption. */ + n = r->drain(r, cidx, pidx); + if (n == 0) { + critical_enter(); + do { + os.state = ns.state = r->state; + ns.cidx = cidx; + ns.flags = STALLED; + } while (atomic_cmpset_64(&r->state, os.state, + ns.state) == 0); + critical_exit(); + if (prev != STALLED) + counter_u64_add(r->stalls, 1); + else if (total > 0) { + counter_u64_add(r->restarts, 1); + counter_u64_add(r->stalls, 1); + } + break; + } + cidx = increment_idx(r, cidx, n); + pending += n; + total += n; + + /* + * We update the cidx only if we've caught up with the pidx, the + * real cidx is getting too far ahead of the one visible to + * everyone else, or we have exceeded our budget. + */ + if (cidx != pidx && pending < 64 && total < budget) + continue; + critical_enter(); + do { + os.state = ns.state = r->state; + ns.cidx = cidx; + ns.flags = state_to_flags(ns, total >= budget); + } while (atomic_cmpset_acq_64(&r->state, os.state, ns.state) == 0); + critical_exit(); + + if (ns.flags == ABDICATED) + counter_u64_add(r->abdications, 1); + if (ns.flags != BUSY) { + /* Wrong loop exit if we're going to stall. */ + MPASS(ns.flags != STALLED); + if (prev == STALLED) { + MPASS(total > 0); + counter_u64_add(r->restarts, 1); + } + break; + } + + /* + * The acquire style atomic above guarantees visibility of items + * associated with any pidx change that we notice here. + */ + pidx = ns.pidx_tail; + pending = 0; + } +} + +int +mp_ring_alloc(struct mp_ring **pr, int size, void *cookie, ring_drain_t drain, + ring_can_drain_t can_drain, struct malloc_type *mt, int flags) +{ + struct mp_ring *r; + + /* All idx are 16b so size can be 65536 at most */ + if (pr == NULL || size < 2 || size > 65536 || drain == NULL || + can_drain == NULL) + return (EINVAL); + *pr = NULL; + flags &= M_NOWAIT | M_WAITOK; + MPASS(flags != 0); + + r = malloc(__offsetof(struct mp_ring, items[size]), mt, flags | M_ZERO); + if (r == NULL) + return (ENOMEM); + r->size = size; + r->cookie = cookie; + r->mt = mt; + r->drain = drain; + r->can_drain = can_drain; + r->enqueues = counter_u64_alloc(flags); + r->drops = counter_u64_alloc(flags); + r->starts = counter_u64_alloc(flags); + r->stalls = counter_u64_alloc(flags); + r->restarts = counter_u64_alloc(flags); + r->abdications = counter_u64_alloc(flags); + if (r->enqueues == NULL || r->drops == NULL || r->starts == NULL || + r->stalls == NULL || r->restarts == NULL || + r->abdications == NULL) { + mp_ring_free(r); + return (ENOMEM); + } + + *pr = r; + return (0); +} + +void + +mp_ring_free(struct mp_ring *r) +{ + + if (r == NULL) + return; + + if (r->enqueues != NULL) + counter_u64_free(r->enqueues); + if (r->drops != NULL) + counter_u64_free(r->drops); + if (r->starts != NULL) + counter_u64_free(r->starts); + if (r->stalls != NULL) + counter_u64_free(r->stalls); + if (r->restarts != NULL) + counter_u64_free(r->restarts); + if (r->abdications != NULL) + counter_u64_free(r->abdications); + + free(r, r->mt); +} + +/* + * Enqueue n items and maybe drain the ring for some time. + * + * Returns an errno. + */ +int +mp_ring_enqueue(struct mp_ring *r, void **items, int n, int budget) +{ + union ring_state os, ns; + uint16_t pidx_start, pidx_stop; + int i; + + MPASS(items != NULL); + MPASS(n > 0); + *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 02:00:07 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DED4120C; Thu, 1 Jan 2015 02:00:06 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CA4AB64E7C; Thu, 1 Jan 2015 02:00:06 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01206FD007067; Thu, 1 Jan 2015 02:00:06 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01205Ge007058; Thu, 1 Jan 2015 02:00:05 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201501010200.t01205Ge007058@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Thu, 1 Jan 2015 02:00:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276488 - in head: share/mk sys/arm/broadcom/bcm2835 sys/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 02:00:07 -0000 Author: imp Date: Thu Jan 1 02:00:04 2015 New Revision: 276488 URL: https://svnweb.freebsd.org/changeset/base/276488 Log: Fix module builds on arm (and maybe others) by turning off a whole raft of new warnings that appear to be on by default in clang 3.5.0. Fix RPI-B build issues with new clang not liking the ability to pass arbitrary flags to as, since some flags are more arbitrary (and thus verboten) than others. These warnings should be actually fixed in the code, but this is a band-aide to get things (almost) building again. Modified: head/share/mk/bsd.kmod.mk head/share/mk/bsd.sys.mk head/sys/arm/broadcom/bcm2835/std.bcm2835 head/sys/conf/kern.mk Modified: head/share/mk/bsd.kmod.mk ============================================================================== --- head/share/mk/bsd.kmod.mk Thu Jan 1 01:43:00 2015 (r276487) +++ head/share/mk/bsd.kmod.mk Thu Jan 1 02:00:04 2015 (r276488) @@ -13,5 +13,3 @@ SYSDIR= ${_dir} .endif .include "${SYSDIR}/conf/kmod.mk" - -.include Modified: head/share/mk/bsd.sys.mk ============================================================================== --- head/share/mk/bsd.sys.mk Thu Jan 1 01:43:00 2015 (r276487) +++ head/share/mk/bsd.sys.mk Thu Jan 1 02:00:04 2015 (r276488) @@ -110,11 +110,7 @@ CWARNFLAGS+= -Wno-format CWARNFLAGS+= -Wno-unknown-pragmas .endif # IGNORE_PRAGMA -.if ${COMPILER_TYPE} == "clang" -# Would love to do this unconditionally, but can't due to its use in -# kernel build coupled with CFLAGS.${TARGET} feature CLANG_NO_IAS= -no-integrated-as -.endif CLANG_OPT_SMALL= -mstack-alignment=8 -mllvm -inline-threshold=3\ -mllvm -simplifycfg-dup-ret -mllvm -enable-gvn=false CFLAGS.clang+= -Qunused-arguments Modified: head/sys/arm/broadcom/bcm2835/std.bcm2835 ============================================================================== --- head/sys/arm/broadcom/bcm2835/std.bcm2835 Thu Jan 1 01:43:00 2015 (r276487) +++ head/sys/arm/broadcom/bcm2835/std.bcm2835 Thu Jan 1 02:00:04 2015 (r276488) @@ -2,7 +2,7 @@ machine arm armv6 cpu CPU_ARM1176 -makeoptions CONF_CFLAGS="-mcpu=arm1176jzf-s -Wa,-mcpu=arm1176jzf-s" +makeoptions CONF_CFLAGS="-mcpu=arm1176jzf-s" files "../broadcom/bcm2835/files.bcm2835" Modified: head/sys/conf/kern.mk ============================================================================== --- head/sys/conf/kern.mk Thu Jan 1 01:43:00 2015 (r276487) +++ head/sys/conf/kern.mk Thu Jan 1 02:00:04 2015 (r276488) @@ -164,4 +164,26 @@ CFLAGS+= -fstack-protector CFLAGS+= -gdwarf-2 .endif +# A whole bunch of new default warnings in clang 3.5 subpress for now until +# this can be cleaned up. +.if ${COMPILER_VERSION} >= 30500 +CFLAGS.clang+= -Wno-pointer-sign -Wno-constant-conversion -Wno-format \ + -Wno-shift-count-negative -Wno-tautological-pointer-compare \ + -Wno-shift-count-overflow -Wno-tautological-compare +.endif + CFLAGS+= ${CFLAGS.${COMPILER_TYPE}} + +# Tell bmake not to mistake standard targets for things to be searched for +# or expect to ever be up-to-date. +PHONY_NOTMAIN = afterdepend afterinstall all beforedepend beforeinstall \ + beforelinking build build-tools buildfiles buildincludes \ + checkdpadd clean cleandepend cleandir cleanobj configure \ + depend dependall distclean distribute exe \ + html includes install installfiles installincludes lint \ + obj objlink objs objwarn realall realdepend \ + realinstall regress subdir-all subdir-depend subdir-install \ + tags whereobj + +.PHONY: ${PHONY_NOTMAIN} +.NOTMAIN: ${PHONY_NOTMAIN} From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 02:03:11 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0C78B35D; Thu, 1 Jan 2015 02:03:11 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EC57C64F80; Thu, 1 Jan 2015 02:03:10 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t0123AeL010900; Thu, 1 Jan 2015 02:03:10 GMT (envelope-from bryanv@FreeBSD.org) Received: (from bryanv@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t0123Anh010899; Thu, 1 Jan 2015 02:03:10 GMT (envelope-from bryanv@FreeBSD.org) Message-Id: <201501010203.t0123Anh010899@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: bryanv set sender to bryanv@FreeBSD.org using -f From: Bryan Venteicher Date: Thu, 1 Jan 2015 02:03:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276489 - head/sys/dev/virtio/network X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 02:03:11 -0000 Author: bryanv Date: Thu Jan 1 02:03:09 2015 New Revision: 276489 URL: https://svnweb.freebsd.org/changeset/base/276489 Log: Use the appropriate IPv4 or IPv6 TSO HW assist flag MFC after: 2 weeks Modified: head/sys/dev/virtio/network/if_vtnet.c Modified: head/sys/dev/virtio/network/if_vtnet.c ============================================================================== --- head/sys/dev/virtio/network/if_vtnet.c Thu Jan 1 02:00:04 2015 (r276488) +++ head/sys/dev/virtio/network/if_vtnet.c Thu Jan 1 02:03:09 2015 (r276489) @@ -3006,9 +3006,9 @@ vtnet_reinit(struct vtnet_softc *sc) if (ifp->if_capenable & IFCAP_TXCSUM_IPV6) ifp->if_hwassist |= VTNET_CSUM_OFFLOAD_IPV6; if (ifp->if_capenable & IFCAP_TSO4) - ifp->if_hwassist |= CSUM_TSO; + ifp->if_hwassist |= CSUM_IP_TSO; if (ifp->if_capenable & IFCAP_TSO6) - ifp->if_hwassist |= CSUM_TSO; /* No CSUM_TSO_IPV6. */ + ifp->if_hwassist |= CSUM_IP6_TSO; if (sc->vtnet_flags & VTNET_FLAG_CTRL_VQ) vtnet_init_rx_filters(sc); From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 02:06:02 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 772DC5DA; Thu, 1 Jan 2015 02:06:02 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 634B864FA4; Thu, 1 Jan 2015 02:06:02 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01262Bl011431; Thu, 1 Jan 2015 02:06:02 GMT (envelope-from bryanv@FreeBSD.org) Received: (from bryanv@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01261X2011429; Thu, 1 Jan 2015 02:06:01 GMT (envelope-from bryanv@FreeBSD.org) Message-Id: <201501010206.t01261X2011429@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: bryanv set sender to bryanv@FreeBSD.org using -f From: Bryan Venteicher Date: Thu, 1 Jan 2015 02:06:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276491 - head/sys/dev/virtio/network X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 02:06:02 -0000 Author: bryanv Date: Thu Jan 1 02:06:00 2015 New Revision: 276491 URL: https://svnweb.freebsd.org/changeset/base/276491 Log: Add softc flag for when the indirect descriptor feature was negotiated MFC after: 2 weeks Modified: head/sys/dev/virtio/network/if_vtnet.c head/sys/dev/virtio/network/if_vtnetvar.h Modified: head/sys/dev/virtio/network/if_vtnet.c ============================================================================== --- head/sys/dev/virtio/network/if_vtnet.c Thu Jan 1 02:04:44 2015 (r276490) +++ head/sys/dev/virtio/network/if_vtnet.c Thu Jan 1 02:06:00 2015 (r276491) @@ -599,6 +599,8 @@ vtnet_setup_features(struct vtnet_softc vtnet_negotiate_features(sc); + if (virtio_with_feature(dev, VIRTIO_RING_F_INDIRECT_DESC)) + sc->vtnet_flags |= VTNET_FLAG_INDIRECT; if (virtio_with_feature(dev, VIRTIO_RING_F_EVENT_IDX)) sc->vtnet_flags |= VTNET_FLAG_EVENT_IDX; @@ -3653,7 +3655,7 @@ vtnet_set_tx_intr_threshold(struct vtnet * Without indirect descriptors, leave enough room for the most * segments we handle. */ - if (virtio_with_feature(dev, VIRTIO_RING_F_INDIRECT_DESC) == 0 && + if ((sc->vtnet_flags & VTNET_FLAG_INDIRECT) == 0 && thresh < sc->vtnet_tx_nsegs) thresh = sc->vtnet_tx_nsegs; Modified: head/sys/dev/virtio/network/if_vtnetvar.h ============================================================================== --- head/sys/dev/virtio/network/if_vtnetvar.h Thu Jan 1 02:04:44 2015 (r276490) +++ head/sys/dev/virtio/network/if_vtnetvar.h Thu Jan 1 02:06:00 2015 (r276491) @@ -140,7 +140,8 @@ struct vtnet_softc { #define VTNET_FLAG_MRG_RXBUFS 0x0080 #define VTNET_FLAG_LRO_NOMRG 0x0100 #define VTNET_FLAG_MULTIQ 0x0200 -#define VTNET_FLAG_EVENT_IDX 0x0400 +#define VTNET_FLAG_INDIRECT 0x0400 +#define VTNET_FLAG_EVENT_IDX 0x0800 int vtnet_link_active; int vtnet_hdr_size; From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 03:52:28 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C6950FEE; Thu, 1 Jan 2015 03:52:28 +0000 (UTC) Received: from tensor.andric.com (unknown [IPv6:2001:7b8:3a7:1:2d0:b7ff:fea0:8c26]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client CN "tensor.andric.com", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6B82864CDE; Thu, 1 Jan 2015 03:52:28 +0000 (UTC) Received: from [IPv6:2001:7b8:3a7::28eb:6a07:fcba:ed4a] (unknown [IPv6:2001:7b8:3a7:0:28eb:6a07:fcba:ed4a]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id 9F05FB80A; Thu, 1 Jan 2015 04:52:22 +0100 (CET) Subject: Re: svn commit: r276488 - in head: share/mk sys/arm/broadcom/bcm2835 sys/conf Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Content-Type: multipart/signed; boundary="Apple-Mail=_ED03ED01-C25D-4F80-8742-DB50BD9CB951"; protocol="application/pgp-signature"; micalg=pgp-sha1 X-Pgp-Agent: GPGMail 2.5b4 From: Dimitry Andric In-Reply-To: <201501010200.t01205Ge007058@svn.freebsd.org> Date: Thu, 1 Jan 2015 04:52:16 +0100 Message-Id: <760D3407-921D-4249-9DC2-74610FA46920@FreeBSD.org> References: <201501010200.t01205Ge007058@svn.freebsd.org> To: Warner Losh X-Mailer: Apple Mail (2.1993) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 03:52:29 -0000 --Apple-Mail=_ED03ED01-C25D-4F80-8742-DB50BD9CB951 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On 01 Jan 2015, at 03:00, Warner Losh wrote: >=20 > Author: imp > Date: Thu Jan 1 02:00:04 2015 > New Revision: 276488 > URL: https://svnweb.freebsd.org/changeset/base/276488 >=20 > Log: > Fix module builds on arm (and maybe others) by turning off a whole > raft of new warnings that appear to be on by default in clang 3.5.0. > Fix RPI-B build issues with new clang not liking the ability to pass > arbitrary flags to as, since some flags are more arbitrary (and thus > verboten) than others. >=20 > These warnings should be actually fixed in the code, but this is a > band-aide to get things (almost) building again. >=20 > Modified: > head/share/mk/bsd.kmod.mk > head/share/mk/bsd.sys.mk > head/sys/arm/broadcom/bcm2835/std.bcm2835 > head/sys/conf/kern.mk >=20 > Modified: head/share/mk/bsd.kmod.mk > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/share/mk/bsd.kmod.mk Thu Jan 1 01:43:00 2015 = (r276487) > +++ head/share/mk/bsd.kmod.mk Thu Jan 1 02:00:04 2015 = (r276488) > @@ -13,5 +13,3 @@ SYSDIR=3D ${_dir} > .endif >=20 > .include "${SYSDIR}/conf/kmod.mk" > - > -.include >=20 > Modified: head/share/mk/bsd.sys.mk > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/share/mk/bsd.sys.mk Thu Jan 1 01:43:00 2015 = (r276487) > +++ head/share/mk/bsd.sys.mk Thu Jan 1 02:00:04 2015 = (r276488) > @@ -110,11 +110,7 @@ CWARNFLAGS+=3D -Wno-format > CWARNFLAGS+=3D -Wno-unknown-pragmas > .endif # IGNORE_PRAGMA >=20 > -.if ${COMPILER_TYPE} =3D=3D "clang" > -# Would love to do this unconditionally, but can't due to its use in > -# kernel build coupled with CFLAGS.${TARGET} feature > CLANG_NO_IAS=3D -no-integrated-as > -.endif > CLANG_OPT_SMALL=3D -mstack-alignment=3D8 -mllvm -inline-threshold=3D3\ > -mllvm -simplifycfg-dup-ret -mllvm -enable-gvn=3Dfalse > CFLAGS.clang+=3D -Qunused-arguments This should not be removed from bsd.sys.mk, since other things depend on it, are you sure that you want this? :) As far as I know, there are still a few places in the tree that use the CLANG_NO_IAS macro. It would be nice if those all went away, though... > Modified: head/sys/arm/broadcom/bcm2835/std.bcm2835 > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/sys/arm/broadcom/bcm2835/std.bcm2835 Thu Jan 1 01:43:00 2015 = (r276487) > +++ head/sys/arm/broadcom/bcm2835/std.bcm2835 Thu Jan 1 02:00:04 2015 = (r276488) > @@ -2,7 +2,7 @@ >=20 > machine arm armv6 > cpu CPU_ARM1176 > -makeoptions CONF_CFLAGS=3D"-mcpu=3Darm1176jzf-s = -Wa,-mcpu=3Darm1176jzf-s" > +makeoptions CONF_CFLAGS=3D"-mcpu=3Darm1176jzf-s" >=20 > files "../broadcom/bcm2835/files.bcm2835" >=20 >=20 > Modified: head/sys/conf/kern.mk > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/sys/conf/kern.mk Thu Jan 1 01:43:00 2015 = (r276487) > +++ head/sys/conf/kern.mk Thu Jan 1 02:00:04 2015 = (r276488) > @@ -164,4 +164,26 @@ CFLAGS+=3D -fstack-protector > CFLAGS+=3D -gdwarf-2 > .endif >=20 > +# A whole bunch of new default warnings in clang 3.5 subpress for now = until > +# this can be cleaned up. > +.if ${COMPILER_VERSION} >=3D 30500 > +CFLAGS.clang+=3D -Wno-pointer-sign -Wno-constant-conversion = -Wno-format \ > + -Wno-shift-count-negative -Wno-tautological-pointer-compare \ > + -Wno-shift-count-overflow -Wno-tautological-compare > +.endif > + > CFLAGS+=3D ${CFLAGS.${COMPILER_TYPE}} Note that for x86, all of these warnings were already either fixed or suppressed. I assume this will be fleshed out later? > +# Tell bmake not to mistake standard targets for things to be = searched for > +# or expect to ever be up-to-date. > +PHONY_NOTMAIN =3D afterdepend afterinstall all beforedepend = beforeinstall \ > + beforelinking build build-tools buildfiles buildincludes = \ > + checkdpadd clean cleandepend cleandir cleanobj configure = \ > + depend dependall distclean distribute exe \ > + html includes install installfiles installincludes lint = \ > + obj objlink objs objwarn realall realdepend \ > + realinstall regress subdir-all subdir-depend = subdir-install \ > + tags whereobj > + > +.PHONY: ${PHONY_NOTMAIN} > +.NOTMAIN: ${PHONY_NOTMAIN} >=20 Was this latter part intentional? It does not seem to have anything to do with clang at all. -Dimitry --Apple-Mail=_ED03ED01-C25D-4F80-8742-DB50BD9CB951 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.26 iEYEARECAAYFAlSkxHMACgkQsF6jCi4glqMcQQCfTzTjt8h1mut6rhtgKlLde3V9 sjoAn09YyhMD9USWNJFSYN8oPtzB04As =51DO -----END PGP SIGNATURE----- --Apple-Mail=_ED03ED01-C25D-4F80-8742-DB50BD9CB951-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 04:10:57 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 79D633C2; Thu, 1 Jan 2015 04:10:57 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 65D8764E67; Thu, 1 Jan 2015 04:10:57 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t014AvHJ070303; Thu, 1 Jan 2015 04:10:57 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t014AvV1070301; Thu, 1 Jan 2015 04:10:57 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201501010410.t014AvV1070301@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Garrett Cooper Date: Thu, 1 Jan 2015 04:10:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276493 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 04:10:57 -0000 Author: ngie Date: Thu Jan 1 04:10:56 2015 New Revision: 276493 URL: https://svnweb.freebsd.org/changeset/base/276493 Log: Unbreak the build for some modules that depend on -std flags to be passed through via CFLAGS, as noted by Jenkins when building sparc64 by re-adding bsd.sys.mk to bsd.kmod.mk: https://jenkins.freebsd.org/job/FreeBSD_HEAD_sparc64/225/changes Tested with: % cd /sys/modules/bce; make obj; make depend; make all Modified: head/share/mk/bsd.kmod.mk Modified: head/share/mk/bsd.kmod.mk ============================================================================== --- head/share/mk/bsd.kmod.mk Thu Jan 1 02:12:43 2015 (r276492) +++ head/share/mk/bsd.kmod.mk Thu Jan 1 04:10:56 2015 (r276493) @@ -13,3 +13,5 @@ SYSDIR= ${_dir} .endif .include "${SYSDIR}/conf/kmod.mk" + +.include From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 04:12:52 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E4F7950D for ; Thu, 1 Jan 2015 04:12:52 +0000 (UTC) Received: from mail-pd0-f172.google.com (mail-pd0-f172.google.com [209.85.192.172]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id ED56C66F28 for ; Thu, 1 Jan 2015 04:12:51 +0000 (UTC) Received: by mail-pd0-f172.google.com with SMTP id y13so21812587pdi.31 for ; Wed, 31 Dec 2014 20:12:45 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:subject:mime-version:content-type:from :in-reply-to:date:cc:message-id:references:to; bh=j21G6Awa1rLHIuuzYUx9tHPd4LjnMde8LXSe2GZgT0c=; b=kuceSYVbJNph50Xz7unYCRc6ZbfqxfBPfy/l2UMHnfrOTwFqTbGiugvq+1o9oPSEmf D/H07/kem4bkvHNoz54O+LggmS7zAjAWNREnFORNuesXE+KwE+ej6nde+PGij9HUnkrV FMGLOExvR9tXkCUMNJpBwiY7dcr9Ort2B+0yNgXGk6HlW0QzYQrvRUImzq4auEdPlVWq qgpQ66NYhvjZyPxjgO1TX/dy6McHR3piL3Ns4tu0GiNXZj6jmE86usGdhGBI5gjA92b3 GUC8YF7gycZWnIEWfvBv6poYxMclL/vu+9Z/jgTBh6FjPi7AINzVVxdAy/GtKx9qYvMm LFiQ== X-Gm-Message-State: ALoCoQk23WKtBx1wQY1xzKGjtSsB8XSm/O4UME/XypkqeapI4Kb2gVpobv5kG9qc3FXwN9y2R0zX X-Received: by 10.68.130.4 with SMTP id oa4mr11806618pbb.95.1420085565757; Wed, 31 Dec 2014 20:12:45 -0800 (PST) Received: from [10.64.25.37] ([69.53.236.236]) by mx.google.com with ESMTPSA id j1sm42476054pbq.85.2014.12.31.20.12.44 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 31 Dec 2014 20:12:45 -0800 (PST) Sender: Warner Losh Subject: Re: svn commit: r276488 - in head: share/mk sys/arm/broadcom/bcm2835 sys/conf Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Content-Type: multipart/signed; boundary="Apple-Mail=_A1D24157-531D-41DD-BA47-BBF8AA78E05F"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail 2.5b3 From: Warner Losh In-Reply-To: <760D3407-921D-4249-9DC2-74610FA46920@FreeBSD.org> Date: Wed, 31 Dec 2014 21:12:41 -0700 Message-Id: <27B917EC-CB35-4BF6-AB8F-4CBF56EC3E41@bsdimp.com> References: <201501010200.t01205Ge007058@svn.freebsd.org> <760D3407-921D-4249-9DC2-74610FA46920@FreeBSD.org> To: Dimitry Andric X-Mailer: Apple Mail (2.1993) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers , Warner Losh X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 04:12:53 -0000 --Apple-Mail=_A1D24157-531D-41DD-BA47-BBF8AA78E05F Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Dec 31, 2014, at 8:52 PM, Dimitry Andric wrote: >=20 > On 01 Jan 2015, at 03:00, Warner Losh wrote: >>=20 >> Author: imp >> Date: Thu Jan 1 02:00:04 2015 >> New Revision: 276488 >> URL: https://svnweb.freebsd.org/changeset/base/276488 >>=20 >> Log: >> Fix module builds on arm (and maybe others) by turning off a whole >> raft of new warnings that appear to be on by default in clang 3.5.0. >> Fix RPI-B build issues with new clang not liking the ability to pass >> arbitrary flags to as, since some flags are more arbitrary (and thus >> verboten) than others. >>=20 >> These warnings should be actually fixed in the code, but this is a >> band-aide to get things (almost) building again. >>=20 >> Modified: >> head/share/mk/bsd.kmod.mk >> head/share/mk/bsd.sys.mk >> head/sys/arm/broadcom/bcm2835/std.bcm2835 >> head/sys/conf/kern.mk >>=20 >> Modified: head/share/mk/bsd.kmod.mk >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- head/share/mk/bsd.kmod.mk Thu Jan 1 01:43:00 2015 = (r276487) >> +++ head/share/mk/bsd.kmod.mk Thu Jan 1 02:00:04 2015 = (r276488) >> @@ -13,5 +13,3 @@ SYSDIR=3D ${_dir} >> .endif >>=20 >> .include "${SYSDIR}/conf/kmod.mk" >> - >> -.include >>=20 >> Modified: head/share/mk/bsd.sys.mk >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- head/share/mk/bsd.sys.mk Thu Jan 1 01:43:00 2015 = (r276487) >> +++ head/share/mk/bsd.sys.mk Thu Jan 1 02:00:04 2015 = (r276488) >> @@ -110,11 +110,7 @@ CWARNFLAGS+=3D -Wno-format >> CWARNFLAGS+=3D -Wno-unknown-pragmas >> .endif # IGNORE_PRAGMA >>=20 >> -.if ${COMPILER_TYPE} =3D=3D "clang" >> -# Would love to do this unconditionally, but can't due to its use in >> -# kernel build coupled with CFLAGS.${TARGET} feature >> CLANG_NO_IAS=3D -no-integrated-as >> -.endif >> CLANG_OPT_SMALL=3D -mstack-alignment=3D8 -mllvm -inline-threshold=3D3\ >> -mllvm -simplifycfg-dup-ret -mllvm -enable-gvn=3Dfalse >> CFLAGS.clang+=3D -Qunused-arguments >=20 > This should not be removed from bsd.sys.mk, since other things depend = on > it, are you sure that you want this? :) I may be wrong here for boot stuff that uses it. > As far as I know, there are still a few places in the tree that use = the > CLANG_NO_IAS macro. It would be nice if those all went away, = though=E2=80=A6 Only for boot. Thanks, though I think they may be CFLAGS.clang +=3D = there. > Modified: head/sys/arm/broadcom/bcm2835/std.bcm2835 >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- head/sys/arm/broadcom/bcm2835/std.bcm2835 Thu Jan 1 = 01:43:00 2015 (r276487) >> +++ head/sys/arm/broadcom/bcm2835/std.bcm2835 Thu Jan 1 = 02:00:04 2015 (r276488) >> @@ -2,7 +2,7 @@ >>=20 >> machine arm armv6 >> cpu CPU_ARM1176 >> -makeoptions CONF_CFLAGS=3D"-mcpu=3Darm1176jzf-s = -Wa,-mcpu=3Darm1176jzf-s" >> +makeoptions CONF_CFLAGS=3D"-mcpu=3Darm1176jzf-s" >>=20 >> files "../broadcom/bcm2835/files.bcm2835" >>=20 >>=20 >> Modified: head/sys/conf/kern.mk >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- head/sys/conf/kern.mk Thu Jan 1 01:43:00 2015 = (r276487) >> +++ head/sys/conf/kern.mk Thu Jan 1 02:00:04 2015 = (r276488) >> @@ -164,4 +164,26 @@ CFLAGS+=3D -fstack-protector >> CFLAGS+=3D -gdwarf-2 >> .endif >>=20 >> +# A whole bunch of new default warnings in clang 3.5 subpress for = now until >> +# this can be cleaned up. >> +.if ${COMPILER_VERSION} >=3D 30500 >> +CFLAGS.clang+=3D -Wno-pointer-sign -Wno-constant-conversion = -Wno-format \ >> + -Wno-shift-count-negative -Wno-tautological-pointer-compare \ >> + -Wno-shift-count-overflow -Wno-tautological-compare >> +.endif >> + >> CFLAGS+=3D ${CFLAGS.${COMPILER_TYPE}} >=20 > Note that for x86, all of these warnings were already either fixed or > suppressed. I assume this will be fleshed out later? Yea, but since a build universe wasn=E2=80=99t done, they were present = in the build. They are harmless on other architectures. >> +# Tell bmake not to mistake standard targets for things to be = searched for >> +# or expect to ever be up-to-date. >> +PHONY_NOTMAIN =3D afterdepend afterinstall all beforedepend = beforeinstall \ >> + beforelinking build build-tools buildfiles buildincludes = \ >> + checkdpadd clean cleandepend cleandir cleanobj configure = \ >> + depend dependall distclean distribute exe \ >> + html includes install installfiles installincludes lint = \ >> + obj objlink objs objwarn realall realdepend \ >> + realinstall regress subdir-all subdir-depend = subdir-install \ >> + tags whereobj >> + >> +.PHONY: ${PHONY_NOTMAIN} >> +.NOTMAIN: ${PHONY_NOTMAIN} >>=20 >=20 > Was this latter part intentional? It does not seem to have anything = to > do with clang at all. It was the only bit of bsd.sys.mk that was needed. Warner --Apple-Mail=_A1D24157-531D-41DD-BA47-BBF8AA78E05F Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJUpMk5AAoJEGwc0Sh9sBEA2rQP+gPkRpZsLXCeUhB6ugqMJYbl zEIRp/ZMZKoXBW0qFHqXmzbnI1zW3er+GyKIyV1FUD0YebzbY4Mtrak20vzkThbs 3kzey2tEzaLXlEu6mfv4FXszbwTY/ndrBvBvACj/7pIfO3YCH061lSinjzq0a1wM Az3cWibF4dMVwp7QA1k/rypyB+mHwmP4j5UQs7YnTHVttWNBn6okIX6PRr9xKpv3 kKOlyEjLNGZ4+P08v3IEfIy6ndm8Et0kjDcve+09P4HHYEfRCb6sMgCWCoDbwScH Lz7Hf5SSl+svd9j5cC0xqZCRdyUdNtuCn4Q9oEKX/XtiyzpgaooImgBderTg5pcv 7IQYBAyNcL1Swak+zETdOJFjoWRiuKjYPTktm4ACEyFt4INxMlv3KrhlS9kNu/80 JQUo/oI1TxsZih5RwZX+qeqW7Xj1m5RXPpiYRCe6P4KbIk9HnzYwPDTCGFZy6vQk d0kavJXu85KEKZl5+MCVaxh5I/MvWs8lZq7aTGkESkBI3ENIUsZf2xLjML0Nt7ih dxzED07sByBtJZyJmdrinmaJ++ermaV0LN6XT7WTHa3eDlFGf+mw2RvjsHbEBWxU SQG5vepL3N2C+vZvowSTQT+P+xWeHFmrdis4VuGlQmhSazZmVGPbh/nO1f6Pw/pd ZFJZ9+BbnjIootJhqw4L =zpqP -----END PGP SIGNATURE----- --Apple-Mail=_A1D24157-531D-41DD-BA47-BBF8AA78E05F-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 04:15:58 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 303D26D1; Thu, 1 Jan 2015 04:15:58 +0000 (UTC) Received: from mail-pd0-x22d.google.com (mail-pd0-x22d.google.com [IPv6:2607:f8b0:400e:c02::22d]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E8B5166FB4; Thu, 1 Jan 2015 04:15:57 +0000 (UTC) Received: by mail-pd0-f173.google.com with SMTP id ft15so21820434pdb.32; Wed, 31 Dec 2014 20:15:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :message-id:references:to; bh=Fs+iPn/X4mbrlNFL4toLBqj5o6Q8MPH0mVo9nw78ngE=; b=EjMsrhK+iHJRsR0ITcAHh3E5aqIGk7gv3hvJbRBFDSTZFdDiOEJ0vzD7bAyffI7Ug4 1kUVzStL8+jJSDRO8GjbMkKzI9VIXswVUh1gK4Jj37k1NePXlcEJW0Y/XYjDRmhAVikn fSLo59lc+MYoEswnJvcKjfxHKwrEzh7aU6EazBE23DHnEHh07Y0nIJCmbmHebC9AKNrR 41LeobWLDDkRGu5grLUAasFjc59WcHjvbmt/n8ZmeX2B++qD0wwxZTEHkYdddITuNgY6 k77J53i6Bdkf2mgEz9OwxoJKK1l6LzGwDeNL7k3bKn7lieHQFOIKKjsHczODaK1bI6O6 FDcw== X-Received: by 10.70.123.10 with SMTP id lw10mr100824619pdb.161.1420085757410; Wed, 31 Dec 2014 20:15:57 -0800 (PST) Received: from ?IPv6:2601:8:ab80:7d6:89e5:192b:a505:2a25? ([2601:8:ab80:7d6:89e5:192b:a505:2a25]) by mx.google.com with ESMTPSA id rh11sm42566630pdb.66.2014.12.31.20.15.56 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 31 Dec 2014 20:15:56 -0800 (PST) Content-Type: multipart/signed; boundary="Apple-Mail=_954921B5-610B-4E89-A6FF-453E862FCFC8"; protocol="application/pgp-signature"; micalg=pgp-sha512 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: svn commit: r276488 - in head: share/mk sys/arm/broadcom/bcm2835 sys/conf From: Garrett Cooper In-Reply-To: <27B917EC-CB35-4BF6-AB8F-4CBF56EC3E41@bsdimp.com> Date: Wed, 31 Dec 2014 20:15:55 -0800 Message-Id: References: <201501010200.t01205Ge007058@svn.freebsd.org> <760D3407-921D-4249-9DC2-74610FA46920@FreeBSD.org> <27B917EC-CB35-4BF6-AB8F-4CBF56EC3E41@bsdimp.com> To: Warner Losh X-Mailer: Apple Mail (2.1878.6) Cc: svn-src-head@freebsd.org, Warner Losh , svn-src-all@freebsd.org, src-committers , Dimitry Andric X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 04:15:58 -0000 --Apple-Mail=_954921B5-610B-4E89-A6FF-453E862FCFC8 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 On Dec 31, 2014, at 20:12, Warner Losh wrote: >> On Dec 31, 2014, at 8:52 PM, Dimitry Andric wrote: >>=20 >> On 01 Jan 2015, at 03:00, Warner Losh wrote: >>>=20 >>> Author: imp >>> Date: Thu Jan 1 02:00:04 2015 >>> New Revision: 276488 >>> URL: https://svnweb.freebsd.org/changeset/base/276488 >>>=20 >>> Log: >>> Fix module builds on arm (and maybe others) by turning off a whole >>> raft of new warnings that appear to be on by default in clang 3.5.0. >>> Fix RPI-B build issues with new clang not liking the ability to pass >>> arbitrary flags to as, since some flags are more arbitrary (and thus >>> verboten) than others. >>>=20 >>> These warnings should be actually fixed in the code, but this is a >>> band-aide to get things (almost) building again. >>>=20 >>> Modified: >>> head/share/mk/bsd.kmod.mk >>> head/share/mk/bsd.sys.mk >>> head/sys/arm/broadcom/bcm2835/std.bcm2835 >>> head/sys/conf/kern.mk >>>=20 >>> Modified: head/share/mk/bsd.kmod.mk >>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>> --- head/share/mk/bsd.kmod.mk Thu Jan 1 01:43:00 2015 = (r276487) >>> +++ head/share/mk/bsd.kmod.mk Thu Jan 1 02:00:04 2015 = (r276488) >>> @@ -13,5 +13,3 @@ SYSDIR=3D ${_dir} >>> .endif >>>=20 >>> .include "${SYSDIR}/conf/kmod.mk" >>> - >>> -.include >>>=20 >>> Modified: head/share/mk/bsd.sys.mk >>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>> --- head/share/mk/bsd.sys.mk Thu Jan 1 01:43:00 2015 = (r276487) >>> +++ head/share/mk/bsd.sys.mk Thu Jan 1 02:00:04 2015 = (r276488) >>> @@ -110,11 +110,7 @@ CWARNFLAGS+=3D -Wno-format >>> CWARNFLAGS+=3D -Wno-unknown-pragmas >>> .endif # IGNORE_PRAGMA >>>=20 >>> -.if ${COMPILER_TYPE} =3D=3D "clang" >>> -# Would love to do this unconditionally, but can't due to its use = in >>> -# kernel build coupled with CFLAGS.${TARGET} feature >>> CLANG_NO_IAS=3D -no-integrated-as >>> -.endif >>> CLANG_OPT_SMALL=3D -mstack-alignment=3D8 -mllvm -inline-threshold=3D3\= >>> -mllvm -simplifycfg-dup-ret -mllvm -enable-gvn=3Dfalse >>> CFLAGS.clang+=3D -Qunused-arguments >>=20 >> This should not be removed from bsd.sys.mk, since other things depend = on >> it, are you sure that you want this? :) >=20 > I may be wrong here for boot stuff that uses it. >=20 >> As far as I know, there are still a few places in the tree that use = the >> CLANG_NO_IAS macro. It would be nice if those all went away, though=85= >=20 > Only for boot. Thanks, though I think they may be CFLAGS.clang +=3D = there. >=20 >> Modified: head/sys/arm/broadcom/bcm2835/std.bcm2835 >>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>> --- head/sys/arm/broadcom/bcm2835/std.bcm2835 Thu Jan 1 = 01:43:00 2015 (r276487) >>> +++ head/sys/arm/broadcom/bcm2835/std.bcm2835 Thu Jan 1 = 02:00:04 2015 (r276488) >>> @@ -2,7 +2,7 @@ >>>=20 >>> machine arm armv6 >>> cpu CPU_ARM1176 >>> -makeoptions CONF_CFLAGS=3D"-mcpu=3Darm1176jzf-s = -Wa,-mcpu=3Darm1176jzf-s" >>> +makeoptions CONF_CFLAGS=3D"-mcpu=3Darm1176jzf-s" >>>=20 >>> files "../broadcom/bcm2835/files.bcm2835" >>>=20 >>>=20 >>> Modified: head/sys/conf/kern.mk >>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>> --- head/sys/conf/kern.mk Thu Jan 1 01:43:00 2015 = (r276487) >>> +++ head/sys/conf/kern.mk Thu Jan 1 02:00:04 2015 = (r276488) >>> @@ -164,4 +164,26 @@ CFLAGS+=3D -fstack-protector >>> CFLAGS+=3D -gdwarf-2 >>> .endif >>>=20 >>> +# A whole bunch of new default warnings in clang 3.5 subpress for = now until >>> +# this can be cleaned up. >>> +.if ${COMPILER_VERSION} >=3D 30500 >>> +CFLAGS.clang+=3D -Wno-pointer-sign -Wno-constant-conversion = -Wno-format \ >>> + -Wno-shift-count-negative -Wno-tautological-pointer-compare \ >>> + -Wno-shift-count-overflow -Wno-tautological-compare >>> +.endif >>> + >>> CFLAGS+=3D ${CFLAGS.${COMPILER_TYPE}} >>=20 >> Note that for x86, all of these warnings were already either fixed or >> suppressed. I assume this will be fleshed out later? >=20 > Yea, but since a build universe wasn=92t done, they were present in = the > build. They are harmless on other architectures. >=20 >>> +# Tell bmake not to mistake standard targets for things to be = searched for >>> +# or expect to ever be up-to-date. >>> +PHONY_NOTMAIN =3D afterdepend afterinstall all beforedepend = beforeinstall \ >>> + beforelinking build build-tools buildfiles buildincludes = \ >>> + checkdpadd clean cleandepend cleandir cleanobj configure = \ >>> + depend dependall distclean distribute exe \ >>> + html includes install installfiles installincludes lint = \ >>> + obj objlink objs objwarn realall realdepend \ >>> + realinstall regress subdir-all subdir-depend = subdir-install \ >>> + tags whereobj >>> + >>> +.PHONY: ${PHONY_NOTMAIN} >>> +.NOTMAIN: ${PHONY_NOTMAIN} >>>=20 >>=20 >> Was this latter part intentional? It does not seem to have anything = to >> do with clang at all. >=20 > It was the only bit of bsd.sys.mk that was needed. Unfortunately that broke the build on all architectures where = bce is built as -std=3D was not being passed to the compiler. Jenkins = reported an error with bce: = https://jenkins.freebsd.org/job/FreeBSD_HEAD_sparc64/225/changes , and I = committed a change to bring back that support here: = https://svnweb.freebsd.org/changeset/base/276493 . Please revert it if = it wasn=92t correct. Thanks! --Apple-Mail=_954921B5-610B-4E89-A6FF-453E862FCFC8 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJUpMn7AAoJEMZr5QU6S73eG/sH/3lFGhtQgHR1824vXMXDa2W2 lbvycp+YImJdTKur+PafVHVrxIJJG3NxXq1M+Jw4AJdrhGbgGmY8ylpd6UudVdGM lf2u6cPi4VPJ/DUC4RTImbqU/SyQBm3x99FIGoD1HTRHlkZf7NzZ4liRuhgxi45e 9T12sP0EQbAn0ed0CnHFHkynIhIBI6/2nrV9kZlXBfnda0TJxMOxdbTnI5wT0APJ hmn/y3IRsWlQoUlhOQ02rNuesu1S40ykiRSPnO5MDUYYXH7ZDl0Pxo8sJMpJ2UGI RZyBgjO74kPgqfNW55+gIFmUkehtWKeZ6ON5P+fcENcQuT/eV4w2EOvshjzK64w= =5jya -----END PGP SIGNATURE----- --Apple-Mail=_954921B5-610B-4E89-A6FF-453E862FCFC8-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 04:26:46 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 30F969A9; Thu, 1 Jan 2015 04:26:46 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1DCEB670AC; Thu, 1 Jan 2015 04:26:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t014Qj43076648; Thu, 1 Jan 2015 04:26:45 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t014QjqN076647; Thu, 1 Jan 2015 04:26:45 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201501010426.t014QjqN076647@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Thu, 1 Jan 2015 04:26:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276494 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 04:26:46 -0000 Author: imp Date: Thu Jan 1 04:26:45 2015 New Revision: 276494 URL: https://svnweb.freebsd.org/changeset/base/276494 Log: Eliminate bsd.sys.mk on purpose. Do not put it back. Modified: head/share/mk/bsd.kmod.mk Modified: head/share/mk/bsd.kmod.mk ============================================================================== --- head/share/mk/bsd.kmod.mk Thu Jan 1 04:10:56 2015 (r276493) +++ head/share/mk/bsd.kmod.mk Thu Jan 1 04:26:45 2015 (r276494) @@ -13,5 +13,3 @@ SYSDIR= ${_dir} .endif .include "${SYSDIR}/conf/kmod.mk" - -.include From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 04:32:13 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3B27EB17 for ; Thu, 1 Jan 2015 04:32:13 +0000 (UTC) Received: from mail-pa0-f51.google.com (mail-pa0-f51.google.com [209.85.220.51]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 061966716F for ; Thu, 1 Jan 2015 04:32:12 +0000 (UTC) Received: by mail-pa0-f51.google.com with SMTP id ey11so22102267pad.24 for ; Wed, 31 Dec 2014 20:32:06 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:subject:mime-version:content-type:from :in-reply-to:date:cc:message-id:references:to; bh=FcmozSK/SaxGxJKauNziApNJgGi4075G7aV8GmSmY7M=; b=hWF4fIyeB1c2htU2tMLXWP9q7+xrjNY7tiGIEfTLCEDG7zanPxvw/h8tFqsrFSqY6M Ce9D+X4MhJNkhhyXOeY8y4odkDWWeiyw1ahhmjFdozXjtL4FoOEnbu/MV5XvQfzdJ2ld SH7tTnbVN+T4tEaoKAfm49bEzF/Ox5uyGQiS4sYvYIdRfF4539KTxrAHiW1u0eNH/UTm W/kPBmJZiR3Bj0gDCm96WqUAdP+Jw+3IMHZa9XuRcI2KsClmLHxHiiF3TcL6+9hfkNqv cHR7aVyM2R6QPV04JUOkMRp/kMFJx1znS5MorR0GqOlbDcHxHnihij+9NmhCsIT9Lp+I /10w== X-Gm-Message-State: ALoCoQlVMFmHmmSd1cvnZjJAHIQN6eEsqoj3pb47U1L+c3THwksLEuK4tT0dgHjDaEq1f5+z80zD X-Received: by 10.70.61.37 with SMTP id m5mr111719854pdr.29.1420086355771; Wed, 31 Dec 2014 20:25:55 -0800 (PST) Received: from [10.64.25.37] ([69.53.236.236]) by mx.google.com with ESMTPSA id dn2sm21485219pdb.12.2014.12.31.20.25.53 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 31 Dec 2014 20:25:54 -0800 (PST) Sender: Warner Losh Subject: Re: svn commit: r276488 - in head: share/mk sys/arm/broadcom/bcm2835 sys/conf Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Content-Type: multipart/signed; boundary="Apple-Mail=_A5BB1A90-23A6-4E51-9241-C1451572A585"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail 2.5b3 From: Warner Losh In-Reply-To: Date: Wed, 31 Dec 2014 21:25:51 -0700 Message-Id: References: <201501010200.t01205Ge007058@svn.freebsd.org> <760D3407-921D-4249-9DC2-74610FA46920@FreeBSD.org> <27B917EC-CB35-4BF6-AB8F-4CBF56EC3E41@bsdimp.com> To: Garrett Cooper X-Mailer: Apple Mail (2.1993) Cc: svn-src-head@freebsd.org, Warner Losh , svn-src-all@freebsd.org, src-committers , Dimitry Andric X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 04:32:13 -0000 --Apple-Mail=_A5BB1A90-23A6-4E51-9241-C1451572A585 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 > On Dec 31, 2014, at 9:15 PM, Garrett Cooper = wrote: >=20 > On Dec 31, 2014, at 20:12, Warner Losh wrote: >=20 >>> On Dec 31, 2014, at 8:52 PM, Dimitry Andric wrote: >>>=20 >>> On 01 Jan 2015, at 03:00, Warner Losh wrote: >>>>=20 >>>> Author: imp >>>> Date: Thu Jan 1 02:00:04 2015 >>>> New Revision: 276488 >>>> URL: https://svnweb.freebsd.org/changeset/base/276488 >>>>=20 >>>> Log: >>>> Fix module builds on arm (and maybe others) by turning off a whole >>>> raft of new warnings that appear to be on by default in clang = 3.5.0. >>>> Fix RPI-B build issues with new clang not liking the ability to = pass >>>> arbitrary flags to as, since some flags are more arbitrary (and = thus >>>> verboten) than others. >>>>=20 >>>> These warnings should be actually fixed in the code, but this is a >>>> band-aide to get things (almost) building again. >>>>=20 >>>> Modified: >>>> head/share/mk/bsd.kmod.mk >>>> head/share/mk/bsd.sys.mk >>>> head/sys/arm/broadcom/bcm2835/std.bcm2835 >>>> head/sys/conf/kern.mk >>>>=20 >>>> Modified: head/share/mk/bsd.kmod.mk >>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>> --- head/share/mk/bsd.kmod.mk Thu Jan 1 01:43:00 2015 = (r276487) >>>> +++ head/share/mk/bsd.kmod.mk Thu Jan 1 02:00:04 2015 = (r276488) >>>> @@ -13,5 +13,3 @@ SYSDIR=3D ${_dir} >>>> .endif >>>>=20 >>>> .include "${SYSDIR}/conf/kmod.mk" >>>> - >>>> -.include >>>>=20 >>>> Modified: head/share/mk/bsd.sys.mk >>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>> --- head/share/mk/bsd.sys.mk Thu Jan 1 01:43:00 2015 = (r276487) >>>> +++ head/share/mk/bsd.sys.mk Thu Jan 1 02:00:04 2015 = (r276488) >>>> @@ -110,11 +110,7 @@ CWARNFLAGS+=3D -Wno-format >>>> CWARNFLAGS+=3D -Wno-unknown-pragmas >>>> .endif # IGNORE_PRAGMA >>>>=20 >>>> -.if ${COMPILER_TYPE} =3D=3D "clang" >>>> -# Would love to do this unconditionally, but can't due to its use = in >>>> -# kernel build coupled with CFLAGS.${TARGET} feature >>>> CLANG_NO_IAS=3D -no-integrated-as >>>> -.endif >>>> CLANG_OPT_SMALL=3D -mstack-alignment=3D8 -mllvm = -inline-threshold=3D3\ >>>> -mllvm -simplifycfg-dup-ret -mllvm -enable-gvn=3Dfalse >>>> CFLAGS.clang+=3D -Qunused-arguments >>>=20 >>> This should not be removed from bsd.sys.mk, since other things = depend on >>> it, are you sure that you want this? :) >>=20 >> I may be wrong here for boot stuff that uses it. >>=20 >>> As far as I know, there are still a few places in the tree that use = the >>> CLANG_NO_IAS macro. It would be nice if those all went away, = though=85 >>=20 >> Only for boot. Thanks, though I think they may be CFLAGS.clang +=3D = there. >>=20 >>> Modified: head/sys/arm/broadcom/bcm2835/std.bcm2835 >>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>> --- head/sys/arm/broadcom/bcm2835/std.bcm2835 Thu Jan 1 = 01:43:00 2015 (r276487) >>>> +++ head/sys/arm/broadcom/bcm2835/std.bcm2835 Thu Jan 1 = 02:00:04 2015 (r276488) >>>> @@ -2,7 +2,7 @@ >>>>=20 >>>> machine arm armv6 >>>> cpu CPU_ARM1176 >>>> -makeoptions CONF_CFLAGS=3D"-mcpu=3Darm1176jzf-s = -Wa,-mcpu=3Darm1176jzf-s" >>>> +makeoptions CONF_CFLAGS=3D"-mcpu=3Darm1176jzf-s" >>>>=20 >>>> files "../broadcom/bcm2835/files.bcm2835" >>>>=20 >>>>=20 >>>> Modified: head/sys/conf/kern.mk >>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>> --- head/sys/conf/kern.mk Thu Jan 1 01:43:00 2015 = (r276487) >>>> +++ head/sys/conf/kern.mk Thu Jan 1 02:00:04 2015 = (r276488) >>>> @@ -164,4 +164,26 @@ CFLAGS+=3D -fstack-protector >>>> CFLAGS+=3D -gdwarf-2 >>>> .endif >>>>=20 >>>> +# A whole bunch of new default warnings in clang 3.5 subpress for = now until >>>> +# this can be cleaned up. >>>> +.if ${COMPILER_VERSION} >=3D 30500 >>>> +CFLAGS.clang+=3D -Wno-pointer-sign -Wno-constant-conversion = -Wno-format \ >>>> + -Wno-shift-count-negative -Wno-tautological-pointer-compare \ >>>> + -Wno-shift-count-overflow -Wno-tautological-compare >>>> +.endif >>>> + >>>> CFLAGS+=3D ${CFLAGS.${COMPILER_TYPE}} >>>=20 >>> Note that for x86, all of these warnings were already either fixed = or >>> suppressed. I assume this will be fleshed out later? >>=20 >> Yea, but since a build universe wasn=92t done, they were present in = the >> build. They are harmless on other architectures. >>=20 >>>> +# Tell bmake not to mistake standard targets for things to be = searched for >>>> +# or expect to ever be up-to-date. >>>> +PHONY_NOTMAIN =3D afterdepend afterinstall all beforedepend = beforeinstall \ >>>> + beforelinking build build-tools buildfiles buildincludes = \ >>>> + checkdpadd clean cleandepend cleandir cleanobj configure = \ >>>> + depend dependall distclean distribute exe \ >>>> + html includes install installfiles installincludes lint = \ >>>> + obj objlink objs objwarn realall realdepend \ >>>> + realinstall regress subdir-all subdir-depend = subdir-install \ >>>> + tags whereobj >>>> + >>>> +.PHONY: ${PHONY_NOTMAIN} >>>> +.NOTMAIN: ${PHONY_NOTMAIN} >>>>=20 >>>=20 >>> Was this latter part intentional? It does not seem to have anything = to >>> do with clang at all. >>=20 >> It was the only bit of bsd.sys.mk that was needed. >=20 > Unfortunately that broke the build on all architectures where = bce is built as -std=3D was not being passed to the compiler. Jenkins = reported an error with bce: = https://jenkins.freebsd.org/job/FreeBSD_HEAD_sparc64/225/changes , and I = committed a change to bring back that support here: = https://svnweb.freebsd.org/changeset/base/276493 . Please revert it if = it wasn=92t correct. This change is wrong. bsd.sys.mk was eliminated on purpose, dammit. Warner --Apple-Mail=_A5BB1A90-23A6-4E51-9241-C1451572A585 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJUpMxQAAoJEGwc0Sh9sBEAVVsQAOP9uJYBSw8fu9WJMIXW3VES FpzjAnFjdg50/AvQfGU2XJc5tR3SLS7Z6KAf4RSKW3l6BYnUoqHZqhq7stE0za27 ex0OdEAHoBp7TAYXSrG6L77TROcOMiyA+ZgMcfZ1tY33Z8LSpxeqPEej0esxlLJ1 FKAzDWbgTBeOL90ORmcq34sre6Pev34WQL4gqEHOEVMF9J/DC5XrCRTVFzn/s/H9 cXxOwTDc22CF0BCN2k11fuzwRqE+iYVguLCwOee3y1Wxm0hraAlv6lhvZFbwBuW4 StXy/Rd2pn9AvZTQmyKLjXt9muTNNn7BeYaObr6HTJ26vgixWC8H4V6pCXo2WTHA TcQxFdDBvaamilgi5OgINa2146sCpWSFtMFr0FdttPfCP9///dDppbZcw0qfYtsH blrI4aXgW3F8zHKWbJqvkNA7BHALu/H6fScInymymkw/9Q7hjirq7+BWoDQyLkPo Cz4Z1ULwXfzI3cNGlVvbIFvTapQa+UPGcKs9f/sWiwFtRonyffmnF6M99g6DcUW5 Hd+WCDWafeyTZHoSh9U/1ZG63vKAzJjCxZSILiFYT3PwXyEeaYjum5qXxevsyghO 0/dJJJKE1TcORdd9kjQvo03umTJWmw7lbxQ4YPNYkrUO7+isSk5EoapcQcXIYuDF Cs7tDnJhbr+oDUvq0i9e =blje -----END PGP SIGNATURE----- --Apple-Mail=_A5BB1A90-23A6-4E51-9241-C1451572A585-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 04:44:27 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0C1EBCB2; Thu, 1 Jan 2015 04:44:27 +0000 (UTC) Received: from mail-pa0-x235.google.com (mail-pa0-x235.google.com [IPv6:2607:f8b0:400e:c03::235]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C2A146727E; Thu, 1 Jan 2015 04:44:26 +0000 (UTC) Received: by mail-pa0-f53.google.com with SMTP id kq14so21899369pab.26; Wed, 31 Dec 2014 20:44:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :message-id:references:to; bh=WJ+UvBe/yy+fQpe3Q9asEUQ5vBaXxIaz5TkitTzrQok=; b=Ki7N/IDXrRV2ztX0haXefWAPH/OmGlo/FiAIrRpeARVxF1c9rZt330jFQOrWMzUQDg SR+vRJCh09i1TkJNfTzba3uDBJBC9BOmvqs435DZibyXoLAxq1zhaQdghMfHH9+JoKQo z3v206zA+DnT/nsMl4UORR1f4PEB9EQpWUTWswCiCZBe9rN/AzBGi0R6F+jPauIKOPf/ brgDCMperC5tWP5fGBZMII0tO72MOx1WyPMl6IjXZlBbqYB69wcnXu+ISW2QY2vFdPAd 17pxUC2TaTukx+vCazzShn/wgiO4PABq8oZdqA3DLK3ftgsXrhx9gNMqJBTF94pD0ZfT V/vQ== X-Received: by 10.68.69.81 with SMTP id c17mr110943100pbu.107.1420087466177; Wed, 31 Dec 2014 20:44:26 -0800 (PST) Received: from ?IPv6:2601:8:ab80:7d6:89e5:192b:a505:2a25? ([2601:8:ab80:7d6:89e5:192b:a505:2a25]) by mx.google.com with ESMTPSA id i5sm42913722pat.6.2014.12.31.20.44.25 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 31 Dec 2014 20:44:25 -0800 (PST) Content-Type: multipart/signed; boundary="Apple-Mail=_93BF4834-6B1A-4397-A0BF-AD22A4D2078D"; protocol="application/pgp-signature"; micalg=pgp-sha512 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: svn commit: r276488 - in head: share/mk sys/arm/broadcom/bcm2835 sys/conf From: Garrett Cooper In-Reply-To: Date: Wed, 31 Dec 2014 20:44:24 -0800 Message-Id: References: <201501010200.t01205Ge007058@svn.freebsd.org> <760D3407-921D-4249-9DC2-74610FA46920@FreeBSD.org> <27B917EC-CB35-4BF6-AB8F-4CBF56EC3E41@bsdimp.com> To: Warner Losh X-Mailer: Apple Mail (2.1878.6) Cc: svn-src-head@freebsd.org, Warner Losh , svn-src-all@freebsd.org, src-committers , Dimitry Andric X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 04:44:27 -0000 --Apple-Mail=_93BF4834-6B1A-4397-A0BF-AD22A4D2078D Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 On Dec 31, 2014, at 20:25, Warner Losh wrote: >> On Dec 31, 2014, at 9:15 PM, Garrett Cooper = wrote: >>=20 >> On Dec 31, 2014, at 20:12, Warner Losh wrote: >>=20 >>>> On Dec 31, 2014, at 8:52 PM, Dimitry Andric = wrote: >>>>=20 >>>> On 01 Jan 2015, at 03:00, Warner Losh wrote: >>>>>=20 >>>>> Author: imp >>>>> Date: Thu Jan 1 02:00:04 2015 >>>>> New Revision: 276488 >>>>> URL: https://svnweb.freebsd.org/changeset/base/276488 >>>>>=20 >>>>> Log: >>>>> Fix module builds on arm (and maybe others) by turning off a whole >>>>> raft of new warnings that appear to be on by default in clang = 3.5.0. >>>>> Fix RPI-B build issues with new clang not liking the ability to = pass >>>>> arbitrary flags to as, since some flags are more arbitrary (and = thus >>>>> verboten) than others. >>>>>=20 >>>>> These warnings should be actually fixed in the code, but this is a >>>>> band-aide to get things (almost) building again. >>>>>=20 >>>>> Modified: >>>>> head/share/mk/bsd.kmod.mk >>>>> head/share/mk/bsd.sys.mk >>>>> head/sys/arm/broadcom/bcm2835/std.bcm2835 >>>>> head/sys/conf/kern.mk >>>>>=20 >>>>> Modified: head/share/mk/bsd.kmod.mk >>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>> --- head/share/mk/bsd.kmod.mk Thu Jan 1 01:43:00 2015 = (r276487) >>>>> +++ head/share/mk/bsd.kmod.mk Thu Jan 1 02:00:04 2015 = (r276488) >>>>> @@ -13,5 +13,3 @@ SYSDIR=3D ${_dir} >>>>> .endif >>>>>=20 >>>>> .include "${SYSDIR}/conf/kmod.mk" >>>>> - >>>>> -.include >>>>>=20 >>>>> Modified: head/share/mk/bsd.sys.mk >>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>> --- head/share/mk/bsd.sys.mk Thu Jan 1 01:43:00 2015 = (r276487) >>>>> +++ head/share/mk/bsd.sys.mk Thu Jan 1 02:00:04 2015 = (r276488) >>>>> @@ -110,11 +110,7 @@ CWARNFLAGS+=3D -Wno-format >>>>> CWARNFLAGS+=3D -Wno-unknown-pragmas >>>>> .endif # IGNORE_PRAGMA >>>>>=20 >>>>> -.if ${COMPILER_TYPE} =3D=3D "clang" >>>>> -# Would love to do this unconditionally, but can't due to its use = in >>>>> -# kernel build coupled with CFLAGS.${TARGET} feature >>>>> CLANG_NO_IAS=3D -no-integrated-as >>>>> -.endif >>>>> CLANG_OPT_SMALL=3D -mstack-alignment=3D8 -mllvm = -inline-threshold=3D3\ >>>>> -mllvm -simplifycfg-dup-ret -mllvm -enable-gvn=3Dfalse >>>>> CFLAGS.clang+=3D -Qunused-arguments >>>>=20 >>>> This should not be removed from bsd.sys.mk, since other things = depend on >>>> it, are you sure that you want this? :) >>>=20 >>> I may be wrong here for boot stuff that uses it. >>>=20 >>>> As far as I know, there are still a few places in the tree that use = the >>>> CLANG_NO_IAS macro. It would be nice if those all went away, = though=85 >>>=20 >>> Only for boot. Thanks, though I think they may be CFLAGS.clang +=3D = there. >>>=20 >>>> Modified: head/sys/arm/broadcom/bcm2835/std.bcm2835 >>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>> --- head/sys/arm/broadcom/bcm2835/std.bcm2835 Thu Jan 1 = 01:43:00 2015 (r276487) >>>>> +++ head/sys/arm/broadcom/bcm2835/std.bcm2835 Thu Jan 1 = 02:00:04 2015 (r276488) >>>>> @@ -2,7 +2,7 @@ >>>>>=20 >>>>> machine arm armv6 >>>>> cpu CPU_ARM1176 >>>>> -makeoptions CONF_CFLAGS=3D"-mcpu=3Darm1176jzf-s = -Wa,-mcpu=3Darm1176jzf-s" >>>>> +makeoptions CONF_CFLAGS=3D"-mcpu=3Darm1176jzf-s" >>>>>=20 >>>>> files "../broadcom/bcm2835/files.bcm2835" >>>>>=20 >>>>>=20 >>>>> Modified: head/sys/conf/kern.mk >>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>> --- head/sys/conf/kern.mk Thu Jan 1 01:43:00 2015 = (r276487) >>>>> +++ head/sys/conf/kern.mk Thu Jan 1 02:00:04 2015 = (r276488) >>>>> @@ -164,4 +164,26 @@ CFLAGS+=3D -fstack-protector >>>>> CFLAGS+=3D -gdwarf-2 >>>>> .endif >>>>>=20 >>>>> +# A whole bunch of new default warnings in clang 3.5 subpress for = now until >>>>> +# this can be cleaned up. >>>>> +.if ${COMPILER_VERSION} >=3D 30500 >>>>> +CFLAGS.clang+=3D -Wno-pointer-sign -Wno-constant-conversion = -Wno-format \ >>>>> + -Wno-shift-count-negative -Wno-tautological-pointer-compare \ >>>>> + -Wno-shift-count-overflow -Wno-tautological-compare >>>>> +.endif >>>>> + >>>>> CFLAGS+=3D ${CFLAGS.${COMPILER_TYPE}} >>>>=20 >>>> Note that for x86, all of these warnings were already either fixed = or >>>> suppressed. I assume this will be fleshed out later? >>>=20 >>> Yea, but since a build universe wasn=92t done, they were present in = the >>> build. They are harmless on other architectures. >>>=20 >>>>> +# Tell bmake not to mistake standard targets for things to be = searched for >>>>> +# or expect to ever be up-to-date. >>>>> +PHONY_NOTMAIN =3D afterdepend afterinstall all beforedepend = beforeinstall \ >>>>> + beforelinking build build-tools buildfiles buildincludes = \ >>>>> + checkdpadd clean cleandepend cleandir cleanobj configure = \ >>>>> + depend dependall distclean distribute exe \ >>>>> + html includes install installfiles installincludes lint = \ >>>>> + obj objlink objs objwarn realall realdepend \ >>>>> + realinstall regress subdir-all subdir-depend = subdir-install \ >>>>> + tags whereobj >>>>> + >>>>> +.PHONY: ${PHONY_NOTMAIN} >>>>> +.NOTMAIN: ${PHONY_NOTMAIN} >>>>>=20 >>>>=20 >>>> Was this latter part intentional? It does not seem to have = anything to >>>> do with clang at all. >>>=20 >>> It was the only bit of bsd.sys.mk that was needed. >>=20 >> Unfortunately that broke the build on all architectures where = bce is built as -std=3D was not being passed to the compiler. Jenkins = reported an error with bce: = https://jenkins.freebsd.org/job/FreeBSD_HEAD_sparc64/225/changes , and I = committed a change to bring back that support here: = https://svnweb.freebsd.org/changeset/base/276493 . Please revert it if = it wasn=92t correct. >=20 > This change is wrong. bsd.sys.mk was eliminated on purpose, dammit. Sorry. Should have asked first. Now the build is broken on all = architectures :/. What next? --Apple-Mail=_93BF4834-6B1A-4397-A0BF-AD22A4D2078D Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJUpNCoAAoJEMZr5QU6S73ec60IALaKG80ebUn9xBzixLSn3qil D/a2ePdAciddpkX7Y36TisT62TjyE/Z4ryu1T77CNsxhwASxuREiQCitpAciPznE mL4apMJryxgTuzbvLJy1oB/RyDo437RADs53SJQkJh17AEsaJPGtU1nvrn2flDU0 f5mTcfjQr3Zh96Zs/PjS2d5zK2/b/BGWUE+YYuFJ8zbs9rCdF0sFuzBV+x+H7M/Q fmWcMPJLc4krrA1ngfG1VYglm2wLxsuSI3RgCkemXCq7+eBp9eb2exctntyAiBwH HXFRagqwenDCWtIKeNjH45tHigBCUhYspAa/xiZdWzGN56frZxz6VedL/rX7rco= =6duE -----END PGP SIGNATURE----- --Apple-Mail=_93BF4834-6B1A-4397-A0BF-AD22A4D2078D-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 05:12:49 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DD4861B4D; Thu, 1 Jan 2015 05:12:49 +0000 (UTC) Received: from mail-pa0-x229.google.com (mail-pa0-x229.google.com [IPv6:2607:f8b0:400e:c03::229]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9FFE567AB3; Thu, 1 Jan 2015 05:12:49 +0000 (UTC) Received: by mail-pa0-f41.google.com with SMTP id rd3so22331839pab.0; Wed, 31 Dec 2014 21:12:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :message-id:references:to; bh=o9i+G0aHqNUyxp0P+tDkA1hCnlgTZgvmAC/q1/K5GL8=; b=MhwcTcAut2N+5QfaqIN8E/fwfRyYPQiOA41SOEfxNfpKHwxGGwA1OyBd5Czlj19uEZ j79PFHrY+/M2+UD6XYho409lizPfqK1+uIJ2Q7+M0Tkn6QcC+uHnZMQDrl7qRlyM8N4L hZNQS/0Cp0aQvNYxXH+zaAffqh7HEQJVSH21CfAX/jhv4aWOcG+Xus5Tv2rCyeWJ5f8D tN9oWinZI/RovuJ6BEVi7g6ihljqden2oTj0rlnwoA6Gpg9U1ffN2VKO2ziGJST5ibVS qfOEl7qy9QRLiyIkXskQiFinCSIeZMsq2HerQS0QxE3CAM+TV1iQEcNNXRcNr8I6jLEB ohGQ== X-Received: by 10.68.102.5 with SMTP id fk5mr110412825pbb.136.1420089169166; Wed, 31 Dec 2014 21:12:49 -0800 (PST) Received: from ?IPv6:2601:8:ab80:7d6:dd49:3e60:daf8:2ea9? ([2601:8:ab80:7d6:dd49:3e60:daf8:2ea9]) by mx.google.com with ESMTPSA id h2sm26213990pat.20.2014.12.31.21.12.48 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 31 Dec 2014 21:12:48 -0800 (PST) Content-Type: multipart/signed; boundary="Apple-Mail=_769FD0CD-89E4-485A-AAD9-A89CF3A8F25B"; protocol="application/pgp-signature"; micalg=pgp-sha512 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: svn commit: r276488 - in head: share/mk sys/arm/broadcom/bcm2835 sys/conf From: Garrett Cooper In-Reply-To: Date: Wed, 31 Dec 2014 21:12:47 -0800 Message-Id: References: <201501010200.t01205Ge007058@svn.freebsd.org> <760D3407-921D-4249-9DC2-74610FA46920@FreeBSD.org> <27B917EC-CB35-4BF6-AB8F-4CBF56EC3E41@bsdimp.com> To: Warner Losh X-Mailer: Apple Mail (2.1878.6) Cc: svn-src-head@freebsd.org, Warner Losh , svn-src-all@freebsd.org, src-committers , Dimitry Andric X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 05:12:50 -0000 --Apple-Mail=_769FD0CD-89E4-485A-AAD9-A89CF3A8F25B Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 On Dec 31, 2014, at 20:44, Garrett Cooper wrote: > On Dec 31, 2014, at 20:25, Warner Losh wrote: =85 >> This change is wrong. bsd.sys.mk was eliminated on purpose, dammit. >=20 > Sorry. Should have asked first. Now the build is broken on all = architectures :/. What next? Also, that code has been in there for over a decade. It seems a bit = dangerous to remove it without at least a ports -exp or make tinderbox = run=85 $ svn blame -r 231834 share/mk/bsd.kmod.mk | less 60963 peter # $FreeBSD$ 60963 peter=20 60963 peter # Search for kernel source tree in standard places. 130835 pjd .for _dir in ${.CURDIR}/../.. ${.CURDIR}/../../.. = ${.CURDIR}/../../../.. \ 183736 imp ${.CURDIR}/../../../../.. /sys /usr/src/sys 130835 pjd .if !defined(SYSDIR) && exists(${_dir}/kern/) && = exists(${_dir}/conf/kmod.mk) 60963 peter SYSDIR=3D ${_dir} 60963 peter .endif 60963 peter .endfor 130835 pjd .if !defined(SYSDIR) || !exists(${SYSDIR}/kern/) || \ 130835 pjd !exists(${SYSDIR}/conf/kmod.mk) 231834 imp .error Unable to locate the kernel source tree. Set = SYSDIR to override. 60963 peter .endif 60963 peter=20 60965 peter .include "${SYSDIR}/conf/kmod.mk" 76861 kris=20 76861 kris .include [ngie@fuji-current-amd64 /usr/src.svn]$ svn log -r 76861 ------------------------------------------------------------------------ r76861 | kris | 2001-05-19 16:18:21 -0700 (Sat, 19 May 2001) | 8 lines Bring in the WARNS directive from NetBSD, localized in a new bsd.sys.mk to avoid polluting sys.mk. This directive controls the addition of compiler warning flags to CFLAGS in a relatively compiler-neutral = manner. The idea is that WARNS can be set in Makefile.inc or in individual Makefiles as they become clean, to prevent the introduction of new warnings in the code. -Werror is added by default ------------------------------------------------------------------------ --Apple-Mail=_769FD0CD-89E4-485A-AAD9-A89CF3A8F25B Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJUpNdPAAoJEMZr5QU6S73exq0IAKGcNTbygmwPecOLmcOZBycQ WqX8sEdlgMrDlyItzv212Y38KX4gAUFDx/OBvZLMWZC/I/jO/6QTcNTZ7sIPfjFS o5jhcc6hDK93EPryYWCKD0J8KJuH+SH1Dx/JXoK/4sVULqXchUYAEZh9DQ0KcyYG wk6ZK/PWdt07jLWn63y5o5TxlTkpd7HAHVGtgyywFaMK+SHxF0NUn+Epvq/4/jwH MnV86q+cq2lxDwqz2QtXVplzbNE/CMUfACGo3oZvQhmF8brcxuuPVxnnnNmf6cvm emoJgE2e+aK9fnJXh7vCjeuxvImOklS+1uu848eYtLRPEXeuP7jn+WMGvVIUj/Q= =XObL -----END PGP SIGNATURE----- --Apple-Mail=_769FD0CD-89E4-485A-AAD9-A89CF3A8F25B-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 05:35:26 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 62B402B8; Thu, 1 Jan 2015 05:35:26 +0000 (UTC) Received: from mail-pd0-x229.google.com (mail-pd0-x229.google.com [IPv6:2607:f8b0:400e:c02::229]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 24B5364019; Thu, 1 Jan 2015 05:35:26 +0000 (UTC) Received: by mail-pd0-f169.google.com with SMTP id z10so21899641pdj.14; Wed, 31 Dec 2014 21:35:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :message-id:references:to; bh=jMOVii5XivsvBAC7Dkalo11B4aaVyUqjNK6XLhN4Pac=; b=HFV3bG+UoAGpFRRMwMdiI4sOAgaujQ5RVwtZ1298KWUal0u76NNS0WSNH48JsybpTp VaiEAc+DtVUKaQIMq07FmNeBYLskPK2panNSTInEa+6+qBChKUPGASxqZrJSgP8iZk1o VWNalCUw+aoy2xvkk5R85EJMGYhwvoUNRkY/yo+7z1PysFSXJxclsSlph+n5zaBNkBv2 QFjeSjpA5d05zAD5NOnJr4lcoxDiQvXqM+x+62sHzHbiiNsK2GVHhHq2df1pWGbVJ80g DiueTPqAT+5xgjnHl7mRmWVCqoO1/Pc+8GlBW1LqXI8IBb1JjzJlFqcFHhvV8PT4qab8 RGVg== X-Received: by 10.70.101.134 with SMTP id fg6mr110314587pdb.75.1420090525696; Wed, 31 Dec 2014 21:35:25 -0800 (PST) Received: from ?IPv6:2601:8:ab80:7d6:dd49:3e60:daf8:2ea9? ([2601:8:ab80:7d6:dd49:3e60:daf8:2ea9]) by mx.google.com with ESMTPSA id nh4sm42785585pdb.37.2014.12.31.21.35.24 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 31 Dec 2014 21:35:25 -0800 (PST) Content-Type: multipart/signed; boundary="Apple-Mail=_E3C234D6-56A2-4189-90CC-686014D5E7F1"; protocol="application/pgp-signature"; micalg=pgp-sha512 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: svn commit: r276488 - in head: share/mk sys/arm/broadcom/bcm2835 sys/conf From: Garrett Cooper In-Reply-To: <4F74425F-68B9-4BA2-A962-6C1AA77B4C75@gmail.com> Date: Wed, 31 Dec 2014 21:35:23 -0800 Message-Id: References: <201501010200.t01205Ge007058@svn.freebsd.org> <760D3407-921D-4249-9DC2-74610FA46920@FreeBSD.org> <27B917EC-CB35-4BF6-AB8F-4CBF56EC3E41@bsdimp.com> <4F74425F-68B9-4BA2-A962-6C1AA77B4C75@gmail.com> To: Warner Losh X-Mailer: Apple Mail (2.1878.6) Cc: svn-src-head@freebsd.org, Warner Losh , svn-src-all@freebsd.org, src-committers , Dimitry Andric X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 05:35:26 -0000 --Apple-Mail=_E3C234D6-56A2-4189-90CC-686014D5E7F1 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 On Dec 31, 2014, at 21:20, Garrett Cooper wrote: > On Dec 31, 2014, at 21:12, Garrett Cooper = wrote: >=20 >> On Dec 31, 2014, at 20:44, Garrett Cooper = wrote: >>=20 >>> On Dec 31, 2014, at 20:25, Warner Losh wrote: >>=20 >> =85 >>=20 >>>> This change is wrong. bsd.sys.mk was eliminated on purpose, dammit. >>>=20 >>> Sorry. Should have asked first. Now the build is broken on all = architectures :/. What next? >>=20 >> Also, that code has been in there for over a decade. It seems a bit = dangerous to remove it without at least a ports -exp or make tinderbox = run=85 >=20 > Hmmm=85 would it make sense to disable clang warnings from within = bsd.sys.mk, like we do with sparc64? > Thanks! >=20 > 117 .if ${MACHINE_CPUARCH} =3D=3D "sparc64" > 118 # Don't emit .cfi directives, since we must use GNU as on sparc64, = for now. > 119 CFLAGS.clang+=3D -fno-dwarf2-cfi-asm > 120 .endif # SPARC64 Or just disable -Werror...? --Apple-Mail=_E3C234D6-56A2-4189-90CC-686014D5E7F1 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEbBAEBCgAGBQJUpNybAAoJEMZr5QU6S73e9KQH+LvbJHrn5Tlw4aeyiBpnGrcP kROe5a0xSJbrFIoguz/7mN6Pab41Z2Q0aonHROshPnImFmNV1ZJWo1ATWJxF+/0N nBF3TGRKN+9p83iUmRv+ouyDbnqu+cyz8JtfmbyzmeNJPDOIIC/eS1iqcz8ViPZO qARjq4QZXza4j+2tzeoo6qnWg6Wlzz4ewGcC916MgchhMvWkThXP2LtqYbSxNSW3 qaLLbV/yXcBnovz7bHvw+1UMIRvk7EO71VVIWLZaj9qyt45AxEJrZLkNhA4p1K9m eEb+akJgBdc8Xa0z8/peWAMrA5G2p2oQmY9/a+ZcCXmK5yDTStuDZ+oWknxeQA== =JJEj -----END PGP SIGNATURE----- --Apple-Mail=_E3C234D6-56A2-4189-90CC-686014D5E7F1-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 05:20:07 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id EF40E1E0D; Thu, 1 Jan 2015 05:20:06 +0000 (UTC) Received: from mail-pa0-x22b.google.com (mail-pa0-x22b.google.com [IPv6:2607:f8b0:400e:c03::22b]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B118667B5A; Thu, 1 Jan 2015 05:20:06 +0000 (UTC) Received: by mail-pa0-f43.google.com with SMTP id kx10so22233280pab.16; Wed, 31 Dec 2014 21:20:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :message-id:references:to; bh=ifd/6rpbcLrnN0S+fY/QzXAQqcAANt89YRnkmTLuRFA=; b=SyWaRc2SHKTuWvr/S+tx6EpF94hhdo3spqpPpVTAjhM88Hlvhz2z4uLc2tM4G+Ufal 0F1kg2K63MgzvF6XTm/Y+A5PlKU04NUJuU1mKfvsWv2n2FcnIs5x4mFa5vQDGzzpxR0n 133ggClwJk7kT+aGr/Z9bXd3CJhX+HQ976C99f/iCszcUcMxA/z/PDHhYs+KciyzFvMa wgwUsgB+zYbrign9gaI8dfIsXWSMOPgb5TPzRdfTHH/dSCZBwKUfjTvYaWlS6Uku0srJ pfOJBIt9WPAexvVL2TnLK/xT57s2FO+Nqdvd4iHmASzOMGsIo0S2z1YOVAozsHt7P1sT AKGQ== X-Received: by 10.68.224.6 with SMTP id qy6mr86589878pbc.155.1420089606277; Wed, 31 Dec 2014 21:20:06 -0800 (PST) Received: from [192.168.20.5] (c-98-247-240-204.hsd1.wa.comcast.net. [98.247.240.204]) by mx.google.com with ESMTPSA id h2sm3612792pdo.62.2014.12.31.21.20.05 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 31 Dec 2014 21:20:05 -0800 (PST) Content-Type: multipart/signed; boundary="Apple-Mail=_A88E76E6-B0CE-44A4-BAEC-E3D631A4BBF4"; protocol="application/pgp-signature"; micalg=pgp-sha512 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: svn commit: r276488 - in head: share/mk sys/arm/broadcom/bcm2835 sys/conf From: Garrett Cooper In-Reply-To: Date: Wed, 31 Dec 2014 21:20:01 -0800 Message-Id: <4F74425F-68B9-4BA2-A962-6C1AA77B4C75@gmail.com> References: <201501010200.t01205Ge007058@svn.freebsd.org> <760D3407-921D-4249-9DC2-74610FA46920@FreeBSD.org> <27B917EC-CB35-4BF6-AB8F-4CBF56EC3E41@bsdimp.com> To: Warner Losh X-Mailer: Apple Mail (2.1878.6) Cc: svn-src-head@freebsd.org, Warner Losh , svn-src-all@freebsd.org, src-committers , Dimitry Andric X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 05:20:07 -0000 --Apple-Mail=_A88E76E6-B0CE-44A4-BAEC-E3D631A4BBF4 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 On Dec 31, 2014, at 21:12, Garrett Cooper wrote: > On Dec 31, 2014, at 20:44, Garrett Cooper = wrote: >=20 >> On Dec 31, 2014, at 20:25, Warner Losh wrote: >=20 > =85 >=20 >>> This change is wrong. bsd.sys.mk was eliminated on purpose, dammit. >>=20 >> Sorry. Should have asked first. Now the build is broken on all = architectures :/. What next? >=20 > Also, that code has been in there for over a decade. It seems a bit = dangerous to remove it without at least a ports -exp or make tinderbox = run=85 Hmmm=85 would it make sense to disable clang warnings from within = bsd.sys.mk, like we do with sparc64? Thanks! 117 .if ${MACHINE_CPUARCH} =3D=3D "sparc64" 118 # Don't emit .cfi directives, since we must use GNU as on sparc64, = for now. 119 CFLAGS.clang+=3D -fno-dwarf2-cfi-asm 120 .endif # SPARC64 --Apple-Mail=_A88E76E6-B0CE-44A4-BAEC-E3D631A4BBF4 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJUpNkBAAoJEMZr5QU6S73eHBAH/0kn+vGupJqlebuLt77IGurg MwbEwYhr3sDjUhWlvhnpvr+AFzcaRVeqKo6qhFk1wZf6M0jRUH486L0D1B+FqOwF z1A6jMS0Y+PULIzkEEBGLhiN9g/v9vDreJgvZ/iq3YT4YRdhOOkUFrzMGThLMChE hDjN7SDZaw5BZilWWYRkTXQ1AqWXNqgVh82GXzRwAxhviDkQLEO8ydQKmcGx3ese dY4bLotw/ql6g0gVdta8KlowglKMpBwC0mlrCg6ccXocPoOLrLYjBAD/yyRvvnWb nt2IIpsa6XtBxUKC5bzkPCs3ggoTKQmH67C0JwoSGoU3q+D66duELu9HHhJnDLc= =FGFq -----END PGP SIGNATURE----- --Apple-Mail=_A88E76E6-B0CE-44A4-BAEC-E3D631A4BBF4-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 05:16:58 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 20F4E1CBD for ; Thu, 1 Jan 2015 05:16:58 +0000 (UTC) Received: from mail-pa0-f51.google.com (mail-pa0-f51.google.com [209.85.220.51]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id DDD5E67B1C for ; Thu, 1 Jan 2015 05:16:57 +0000 (UTC) Received: by mail-pa0-f51.google.com with SMTP id ey11so22291888pad.38 for ; Wed, 31 Dec 2014 21:16:57 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:subject:mime-version:content-type:from :in-reply-to:date:cc:message-id:references:to; bh=kOkVL2XIOz6RbrSOqweIIwLs0FogtGq7iuP1IVPUUg0=; b=FSBE8iGwIKrxTVUyZ0nE3b541PfL2a7U1nlj+xe1SqJGEyWW5YV5Ri7BNJmeVdCnio YWI2VVGhoPPH8BvaIkUuDHBnkfNPAzpxTHR/ol5PXX++cHeqqsd2/Gz45ERyYQrUgdUU 51OKKRzigei54xIlOPjPZu6Jl2W/lcrc1IEZihjd4CkgqI82YUdl48GVfcfAF/hPVcy1 Vb3ynpy7PH4Vqz4Iw4ht2m53xgjG9x7kxxmCEn0qP/kbbuL4UKblls7eErtErS68AEnH KqoDZgVUVARB2qn4ecoIDFZBdQqtwHNxOkNfKKbQFvjT7CzYFc1n680F34h0OEsZAA+V vnEQ== X-Gm-Message-State: ALoCoQlaPpe1vqya96lNq64BNvD+zrdmXNqHOnjfmVni9Hlzm+d0xPEoOeqTEdA8sJZv5oqM4vEn X-Received: by 10.68.138.229 with SMTP id qt5mr111845711pbb.62.1420089417180; Wed, 31 Dec 2014 21:16:57 -0800 (PST) Received: from [10.64.25.37] ([69.53.236.236]) by mx.google.com with ESMTPSA id rr9sm20120706pab.15.2014.12.31.21.16.55 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 31 Dec 2014 21:16:56 -0800 (PST) Sender: Warner Losh Subject: Re: svn commit: r276488 - in head: share/mk sys/arm/broadcom/bcm2835 sys/conf Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Content-Type: multipart/signed; boundary="Apple-Mail=_5846770E-0635-4D5D-8332-3CEE8270516C"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail 2.5b3 From: Warner Losh In-Reply-To: Date: Wed, 31 Dec 2014 22:16:53 -0700 Message-Id: <743CF9C2-4C38-44CF-8AF8-BD2EF8EBCAD7@bsdimp.com> References: <201501010200.t01205Ge007058@svn.freebsd.org> <760D3407-921D-4249-9DC2-74610FA46920@FreeBSD.org> <27B917EC-CB35-4BF6-AB8F-4CBF56EC3E41@bsdimp.com> To: Garrett Cooper X-Mailer: Apple Mail (2.1993) Cc: svn-src-head@freebsd.org, Warner Losh , svn-src-all@freebsd.org, src-committers , Dimitry Andric X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 05:16:58 -0000 --Apple-Mail=_5846770E-0635-4D5D-8332-3CEE8270516C Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 > On Dec 31, 2014, at 10:12 PM, Garrett Cooper = wrote: >=20 > On Dec 31, 2014, at 20:44, Garrett Cooper = wrote: >=20 >> On Dec 31, 2014, at 20:25, Warner Losh wrote: >=20 > =85 >=20 >>> This change is wrong. bsd.sys.mk was eliminated on purpose, dammit. >>=20 >> Sorry. Should have asked first. Now the build is broken on all = architectures :/. What next? >=20 > Also, that code has been in there for over a decade. It seems a bit = dangerous to remove it without at least a ports -exp or make tinderbox = run=85 True. However, this code has been wrong for a very long time since the = WARNS kris added were just for user land. Too bad the std stuff got = mixed in over the years. Warner > $ svn blame -r 231834 share/mk/bsd.kmod.mk | less > 60963 peter # $FreeBSD$ > 60963 peter > 60963 peter # Search for kernel source tree in standard places. > 130835 pjd .for _dir in ${.CURDIR}/../.. ${.CURDIR}/../../.. = ${.CURDIR}/../../../.. \ > 183736 imp ${.CURDIR}/../../../../.. /sys /usr/src/sys > 130835 pjd .if !defined(SYSDIR) && exists(${_dir}/kern/) && = exists(${_dir}/conf/kmod.mk) > 60963 peter SYSDIR=3D ${_dir} > 60963 peter .endif > 60963 peter .endfor > 130835 pjd .if !defined(SYSDIR) || !exists(${SYSDIR}/kern/) || = \ > 130835 pjd !exists(${SYSDIR}/conf/kmod.mk) > 231834 imp .error Unable to locate the kernel source tree. Set = SYSDIR to override. > 60963 peter .endif > 60963 peter > 60965 peter .include "${SYSDIR}/conf/kmod.mk" > 76861 kris > 76861 kris .include > [ngie@fuji-current-amd64 /usr/src.svn]$ svn log -r 76861 > = ------------------------------------------------------------------------ > r76861 | kris | 2001-05-19 16:18:21 -0700 (Sat, 19 May 2001) | 8 lines >=20 > Bring in the WARNS directive from NetBSD, localized in a new = bsd.sys.mk > to avoid polluting sys.mk. This directive controls the addition of > compiler warning flags to CFLAGS in a relatively compiler-neutral = manner. >=20 > The idea is that WARNS can be set in Makefile.inc or in individual > Makefiles as they become clean, to prevent the introduction of new > warnings in the code. -Werror is added by default >=20 > = ------------------------------------------------------------------------ --Apple-Mail=_5846770E-0635-4D5D-8332-3CEE8270516C Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJUpNhFAAoJEGwc0Sh9sBEAw6AP/Rus2cyQNgRiBBJrRtG0KuU8 mTptCuUnmBS4NBQBAEMuexDYxzWxaamsKiTlkgJhnjfu2s0p/VPw7deqZJsYq0EW 7lNijQf0cbDRQVK89oEUkSf9F2JBtwpqYSSrS5LpL5LE60ghlxh3bf0ZL1bI2GSn 7VizZa6TDj3RTfB+FWXmUZoph8CypmKsBH+9ofLCdHAUeD4jLM/btZYY9zCG0UCt JEpy433YWT4bCCQv6sR+2J8X2bKTcfnaPbk/gxYQBDV6fUilD2bRCJSW/L7c1TOI 98kR7dcCtxMb2NBLe7Myyx5v7jSxQMftHrfrKBTZPF/+WAJTuxPwdUt9KyRwB9gm C2fIPh+xLl2YBmBARriKPKEy5yM5Dbhl1loO+QuskRjgc6wqssMAjnPVMrKnBnia UZZRwRLTjEXn1etp6zcv9Vp6hKUbYTKVflb4mFAtcZO9gJZ50GwzO2GROGX6OLK0 ZSeKweZcUf3uGWJBvHYKPdbYO9veoyfUI2NJZ0sEB+QsD4VM3N6++JEeYKfoDR/R cbzRBHlzFeQlxHMdxZAhkWexOA7XfzqNKc1uMtu+eytyXQede0qVnyq4AY5o8Chm xmPQABy+0MW3u0J10U22DoBMCateRNOnz1y+ElRkpOUlzBBi3i/fB7HoaM1Lx6XR Ljk96E65Fo/96ICXGk1s =hJeM -----END PGP SIGNATURE----- --Apple-Mail=_5846770E-0635-4D5D-8332-3CEE8270516C-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 06:53:34 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 6FE4B187; Thu, 1 Jan 2015 06:53:34 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5C1B666B77; Thu, 1 Jan 2015 06:53:34 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t016rYnF044945; Thu, 1 Jan 2015 06:53:34 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t016rYe3044944; Thu, 1 Jan 2015 06:53:34 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <201501010653.t016rYe3044944@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Thu, 1 Jan 2015 06:53:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276495 - head/usr.sbin/nfsd X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 06:53:34 -0000 Author: delphij Date: Thu Jan 1 06:53:33 2015 New Revision: 276495 URL: https://svnweb.freebsd.org/changeset/base/276495 Log: Fix markup for minthreads and maxthreads. PR: 196403 MFC after: 2 weeks Modified: head/usr.sbin/nfsd/nfsd.8 Modified: head/usr.sbin/nfsd/nfsd.8 ============================================================================== --- head/usr.sbin/nfsd/nfsd.8 Thu Jan 1 04:26:45 2015 (r276494) +++ head/usr.sbin/nfsd/nfsd.8 Thu Jan 1 06:53:33 2015 (r276495) @@ -28,7 +28,7 @@ .\" @(#)nfsd.8 8.4 (Berkeley) 3/29/95 .\" $FreeBSD$ .\" -.Dd August 10, 2014 +.Dd January 1, 2015 .Dt NFSD 8 .Os .Sh NAME @@ -41,8 +41,8 @@ server .Op Fl arduteo .Op Fl n Ar num_servers .Op Fl h Ar bindip -.Op Fl maxthreads Ar max_threads -.Op Fl minthreads Ar min_threads +.Op Fl Fl maxthreads Ar max_threads +.Op Fl Fl minthreads Ar min_threads .Sh DESCRIPTION The .Nm @@ -78,14 +78,14 @@ service with without creating any servers. .It Fl n Ar threads Specifies how many servers to create. This option is equivalent to specifying -.Fl maxthreads +.Fl Fl maxthreads and -.Fl minthreads +.Fl Fl minthreads with their respective arguments to .Ar threads . -.It Fl maxthreads Ar threads +.It Fl Fl maxthreads Ar threads Specifies the maximum servers that will be kept around to service requests. -.It Fl minthreads Ar threads +.It Fl Fl minthreads Ar threads Specifies the minimum servers that will be kept around to service requests. .It Fl h Ar bindip Specifies which IP address or hostname to bind to on the local host. From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 07:03:01 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id ABDC24AB; Thu, 1 Jan 2015 07:03:01 +0000 (UTC) Received: from mail.soaustin.net (pancho.soaustin.net [76.74.250.40]) by mx1.freebsd.org (Postfix) with ESMTP id 88BB166CAC; Thu, 1 Jan 2015 07:03:01 +0000 (UTC) Received: by mail.soaustin.net (Postfix, from userid 502) id 7105656083; Thu, 1 Jan 2015 01:03:00 -0600 (CST) Date: Thu, 1 Jan 2015 01:03:00 -0600 From: Mark Linimon To: Warner Losh Subject: Re: svn commit: r276488 - in head: share/mk sys/arm/broadcom/bcm2835 sys/conf Message-ID: <20150101070300.GA27441@lonesome.com> References: <201501010200.t01205Ge007058@svn.freebsd.org> <760D3407-921D-4249-9DC2-74610FA46920@FreeBSD.org> <27B917EC-CB35-4BF6-AB8F-4CBF56EC3E41@bsdimp.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Cc: src-committers , svn-src-all@freebsd.org, Dimitry Andric , svn-src-head@freebsd.org, Warner Losh , Garrett Cooper X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 07:03:01 -0000 On Wed, Dec 31, 2014 at 09:25:51PM -0700, Warner Losh wrote: > This change is wrong. bsd.sys.mk was eliminated on purpose, dammit. Aw, our first bikeshed of the year. Sniff. I may cry ... Wait? The message is still dated 2014??? hgrrrr ... oh wait, the *commit* is UTC. I win!!!! mcl (in case you can't guess, happy new year y'all) From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 08:18:10 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A854D999; Thu, 1 Jan 2015 08:18:10 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 94803645DB; Thu, 1 Jan 2015 08:18:10 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t018IA1D081862; Thu, 1 Jan 2015 08:18:10 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t018I9Mh081859; Thu, 1 Jan 2015 08:18:09 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201501010818.t018I9Mh081859@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Thu, 1 Jan 2015 08:18:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276496 - head/sys/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 08:18:10 -0000 Author: imp Date: Thu Jan 1 08:18:08 2015 New Revision: 276496 URL: https://svnweb.freebsd.org/changeset/base/276496 Log: Move more of the warnings into kern.mk, as well as centralize that as the place where the C dialect is selected. Have a fairly long list of newly requires warning suppression for clang 3.5.0, also centralized in kern.mk. Survive the fallout of the removal of bsd.sys.mk from bsd.kmod.mk. Modified: head/sys/conf/kern.mk head/sys/conf/kern.pre.mk head/sys/conf/kmod.mk Modified: head/sys/conf/kern.mk ============================================================================== --- head/sys/conf/kern.mk Thu Jan 1 06:53:33 2015 (r276495) +++ head/sys/conf/kern.mk Thu Jan 1 08:18:08 2015 (r276496) @@ -29,7 +29,12 @@ NO_WSOMETIMES_UNINITIALIZED= -Wno-error- # enough to error out the whole kernel build. Display them anyway, so there is # some incentive to fix them eventually. CWARNEXTRA?= -Wno-error-tautological-compare -Wno-error-empty-body \ - -Wno-error-parentheses-equality -Wno-error-unused-function + -Wno-error-parentheses-equality -Wno-error-unused-function \ + -Wno-error-pointer-sign -Wno-error-format -Wno-error-parentheses \ + -Wno-error-switch -Wno-error-switch \ + -Wno-error-shift-count-negative \ + -Wno-error-shift-count-overflow \ + -Wno-error-constant-conversion .endif .if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 40300 @@ -164,13 +169,7 @@ CFLAGS+= -fstack-protector CFLAGS+= -gdwarf-2 .endif -# A whole bunch of new default warnings in clang 3.5 subpress for now until -# this can be cleaned up. -.if ${COMPILER_VERSION} >= 30500 -CFLAGS.clang+= -Wno-pointer-sign -Wno-constant-conversion -Wno-format \ - -Wno-shift-count-negative -Wno-tautological-pointer-compare \ - -Wno-shift-count-overflow -Wno-tautological-compare -.endif +CFLAGS+= ${CWARNEXTRA} CFLAGS+= ${CFLAGS.${COMPILER_TYPE}} @@ -187,3 +186,17 @@ PHONY_NOTMAIN = afterdepend afterinstall .PHONY: ${PHONY_NOTMAIN} .NOTMAIN: ${PHONY_NOTMAIN} + +CSTD= c99 + +.if ${CSTD} == "k&r" +CFLAGS+= -traditional +.elif ${CSTD} == "c89" || ${CSTD} == "c90" +CFLAGS+= -std=iso9899:1990 +.elif ${CSTD} == "c94" || ${CSTD} == "c95" +CFLAGS+= -std=iso9899:199409 +.elif ${CSTD} == "c99" +CFLAGS+= -std=iso9899:1999 +.else # CSTD +CFLAGS+= -std=${CSTD} +.endif # CSTD Modified: head/sys/conf/kern.pre.mk ============================================================================== --- head/sys/conf/kern.pre.mk Thu Jan 1 06:53:33 2015 (r276495) +++ head/sys/conf/kern.pre.mk Thu Jan 1 08:18:08 2015 (r276496) @@ -60,7 +60,6 @@ COPTFLAGS+= -fno-strict-aliasing .if !defined(NO_CPU_COPTFLAGS) COPTFLAGS+= ${_CPUCFLAGS} .endif -C_DIALECT= -std=c99 NOSTDINC= -nostdinc INCLUDES= ${NOSTDINC} ${INCLMAGIC} -I. -I$S @@ -88,7 +87,7 @@ INCLUDES+= -I$S/dev/cxgb -I$S/dev/cxgbe .endif -CFLAGS= ${COPTFLAGS} ${C_DIALECT} ${DEBUG} ${CWARNFLAGS} +CFLAGS= ${COPTFLAGS} ${DEBUG} ${CWARNFLAGS} CFLAGS+= ${INCLUDES} -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h CFLAGS_PARAM_INLINE_UNIT_GROWTH?=100 CFLAGS_PARAM_LARGE_FUNCTION_GROWTH?=1000 Modified: head/sys/conf/kmod.mk ============================================================================== --- head/sys/conf/kmod.mk Thu Jan 1 06:53:33 2015 (r276495) +++ head/sys/conf/kmod.mk Thu Jan 1 08:18:08 2015 (r276496) @@ -89,7 +89,6 @@ CFLAGS+= -D_KERNEL CFLAGS+= -DKLD_MODULE # Don't use any standard or source-relative include directories. -CSTD= c99 NOSTDINC= -nostdinc CFLAGS:= ${CFLAGS:N-I*} ${NOSTDINC} ${INCLMAGIC} ${CFLAGS:M-I*} .if defined(KERNBUILDDIR) From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 08:24:52 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DB888B4A for ; Thu, 1 Jan 2015 08:24:51 +0000 (UTC) Received: from mail-pd0-f173.google.com (mail-pd0-f173.google.com [209.85.192.173]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A65C7646E3 for ; Thu, 1 Jan 2015 08:24:51 +0000 (UTC) Received: by mail-pd0-f173.google.com with SMTP id ft15so22037725pdb.4 for ; Thu, 01 Jan 2015 00:24:50 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:subject:mime-version:content-type:from :in-reply-to:date:cc:message-id:references:to; bh=nat1wEamgu/I87FE8RkxkMNJcnDavdTaMiB2rA6AIKY=; b=dzemb8XaxhD8XWzvzILP3ZAoGdU/64ilawNR2m4UaV9MCE+UJ8SZWuWkisfl2TODaw a/8MNnIhZSmMHTc5FlWdv6tnO2uLqktkYG7pLdp1hmcT+3MtjeCep2oswZxNeMXBLwGS 1/IJQdBWsFsFCQZpKGrh42vXP9OoCT8jTZkxi/mGP4TKBVvpVhMpvcxKEUWSY5XutSPM HrQwiLqcEDWO/ssznI+Cs4S+yG7DmpnTXYdt5Cca7VE4O/CoDlSWHxYKA3vMbQigrVpC IhIu6b838zQFpZJdAtodQLkIbyP4UlLq1mvLDgHVbnaYrcvWr8Nddkebuoqq4lfDWkKc 9+xQ== X-Gm-Message-State: ALoCoQmw8PaOYavy6C1ypJw5wOHI6fV3FFsU5Ad1/EW7Cp5ZGAnc4PmambN4GGUCXddr5NXZnaKR X-Received: by 10.68.108.67 with SMTP id hi3mr32989589pbb.41.1420100690351; Thu, 01 Jan 2015 00:24:50 -0800 (PST) Received: from [10.64.25.37] ([69.53.236.236]) by mx.google.com with ESMTPSA id im3sm6809699pbc.73.2015.01.01.00.24.48 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 01 Jan 2015 00:24:49 -0800 (PST) Sender: Warner Losh Subject: Re: svn commit: r276488 - in head: share/mk sys/arm/broadcom/bcm2835 sys/conf Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Content-Type: multipart/signed; boundary="Apple-Mail=_E9640555-9B7F-4A0D-AE02-207AEA7854EA"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail 2.5b3 From: Warner Losh In-Reply-To: <20150101070300.GA27441@lonesome.com> Date: Thu, 1 Jan 2015 01:24:46 -0700 Message-Id: References: <201501010200.t01205Ge007058@svn.freebsd.org> <760D3407-921D-4249-9DC2-74610FA46920@FreeBSD.org> <27B917EC-CB35-4BF6-AB8F-4CBF56EC3E41@bsdimp.com> <20150101070300.GA27441@lonesome.com> To: Mark Linimon X-Mailer: Apple Mail (2.1993) Cc: src-committers , svn-src-all@freebsd.org, Dimitry Andric , svn-src-head@freebsd.org, Warner Losh , Garrett Cooper X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 08:24:52 -0000 --Apple-Mail=_E9640555-9B7F-4A0D-AE02-207AEA7854EA Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii > On Jan 1, 2015, at 12:03 AM, Mark Linimon = wrote: >=20 > On Wed, Dec 31, 2014 at 09:25:51PM -0700, Warner Losh wrote: >> This change is wrong. bsd.sys.mk was eliminated on purpose, dammit. >=20 > Aw, our first bikeshed of the year. Sniff. I may cry ... >=20 > Wait? The message is still dated 2014??? >=20 > hgrrrr ... >=20 > oh wait, the *commit* is UTC. >=20 > I win!!!! >=20 > mcl >=20 > (in case you can't guess, happy new year y'all) Happy New Year! And this is just a vigorous discussion to make things = better. :) As far as I can tell, we can build successfully with clang 3.5 and = 3.4.1, though with too many warnings not being errors. There might be an odd thing I = overlooked, but I tried to be thorough. Of course, all the sys/conf/*.mk files could use a good cleanup. Warner --Apple-Mail=_E9640555-9B7F-4A0D-AE02-207AEA7854EA Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJUpQROAAoJEGwc0Sh9sBEAau4QAKYUm44TjHupexbJ/rlR9OFJ 5W7t2x5l3qrbdjeY2fd4fts+YwaX/Pl/u6HKmWq3OY1H+QmkSFNclhKKSdvT0Bk9 etRe1zvgecXFkt42l8kpwUDdDv0L7GfXo7eYVeROvv8Llp6SBbQKcla7i3rG8VwL xX4dBrOacxs6fqXocnVmxt7MM8oLNV/5nDXqrlil0NNWVfXb6EoPiWMKIW1e5K6z 2vmwHWtrgbVaPqBxpAJewIsSRp55alPCmEaxI9l7Do+r8Ywq+frNLN04Ag7tS65I JXbryo1nKZoUIF1EQa31ssXfEwfl4Pc8aIo/Axu+oY7gcF3mLK8jkrC/RF3LY6Ql SYUffHy7zcIYcrAmJl9sQhnRDmZpCRws0Z19RijczXxVy6MuQGP9tbQr/YeSAZs/ VWnKMkUE1EhdjgViYQuMsrHVjNTEhTsBwAlmnhw3zbEkZJLn2VtP3NgVuznLKr6T xdqIjOWGyhaKe4l/386v9i0jw2Kk8n8Vd1qX7A9jqv+YiJZFLRVNEWAi9RqA/zWF 81A2zBySiVNqclppRFkVB7gp8XSntNOgGsokhn7hDfYJmkGln2QDy5G9loKIeVuJ bCd7697HN/GNCwuq6nP76bcKgTz7st66KAOcEhbQH1LRrblnOG9WYyaS3KOp0LdX UfYxIkgidRP/3whB4kFL =fnY6 -----END PGP SIGNATURE----- --Apple-Mail=_E9640555-9B7F-4A0D-AE02-207AEA7854EA-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 08:30:33 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 583B2CCB; Thu, 1 Jan 2015 08:30:33 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 450AE64724; Thu, 1 Jan 2015 08:30:33 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t018UX9S086900; Thu, 1 Jan 2015 08:30:33 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t018UX7d086899; Thu, 1 Jan 2015 08:30:33 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201501010830.t018UX7d086899@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Thu, 1 Jan 2015 08:30:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276497 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 08:30:33 -0000 Author: imp Date: Thu Jan 1 08:30:32 2015 New Revision: 276497 URL: https://svnweb.freebsd.org/changeset/base/276497 Log: Put the conditional back. For the default case it isn't really needed, but for the gcc case it still is on i386 and amd64's build of sys/boot. Submited by: dim@ Modified: head/share/mk/bsd.sys.mk Modified: head/share/mk/bsd.sys.mk ============================================================================== --- head/share/mk/bsd.sys.mk Thu Jan 1 08:18:08 2015 (r276496) +++ head/share/mk/bsd.sys.mk Thu Jan 1 08:30:32 2015 (r276497) @@ -110,7 +110,13 @@ CWARNFLAGS+= -Wno-format CWARNFLAGS+= -Wno-unknown-pragmas .endif # IGNORE_PRAGMA +# We need this conditional because many places that use it +# only enable it for some files with CLFAGS.$FILE+=${CLANG_NO_IAS}. +# unconditionally, and can't easily use the CFLAGS.clang= +# mechanism. +.if ${COMPILER_TYPE} == "clang" CLANG_NO_IAS= -no-integrated-as +.endif CLANG_OPT_SMALL= -mstack-alignment=8 -mllvm -inline-threshold=3\ -mllvm -simplifycfg-dup-ret -mllvm -enable-gvn=false CFLAGS.clang+= -Qunused-arguments From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 09:33:47 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DE8C7344; Thu, 1 Jan 2015 09:33:47 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CB78C6607E; Thu, 1 Jan 2015 09:33:47 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t019Xl65018651; Thu, 1 Jan 2015 09:33:47 GMT (envelope-from np@FreeBSD.org) Received: (from np@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t019XlDw018650; Thu, 1 Jan 2015 09:33:47 GMT (envelope-from np@FreeBSD.org) Message-Id: <201501010933.t019XlDw018650@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: np set sender to np@FreeBSD.org using -f From: Navdeep Parhar Date: Thu, 1 Jan 2015 09:33:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276498 - head/sys/dev/cxgbe X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 09:33:48 -0000 Author: np Date: Thu Jan 1 09:33:46 2015 New Revision: 276498 URL: https://svnweb.freebsd.org/changeset/base/276498 Log: cxgbe(4): remove buf_ring specific restriction on the txq size. MFC after: 2 months Modified: head/sys/dev/cxgbe/t4_main.c Modified: head/sys/dev/cxgbe/t4_main.c ============================================================================== --- head/sys/dev/cxgbe/t4_main.c Thu Jan 1 08:30:32 2015 (r276497) +++ head/sys/dev/cxgbe/t4_main.c Thu Jan 1 09:33:46 2015 (r276498) @@ -5258,8 +5258,7 @@ sysctl_qsize_txq(SYSCTL_HANDLER_ARGS) if (rc != 0 || req->newptr == NULL) return (rc); - /* bufring size must be powerof2 */ - if (qsize < 128 || !powerof2(qsize)) + if (qsize < 128 || qsize > 65536) return (EINVAL); rc = begin_synchronized_op(sc, pi, HOLD_LOCK | SLEEP_OK | INTR_OK, From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 10:07:59 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4E1B179A; Thu, 1 Jan 2015 10:07:59 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 20DDF6430B; Thu, 1 Jan 2015 10:07:59 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01A7wlG032891; Thu, 1 Jan 2015 10:07:58 GMT (envelope-from rdivacky@FreeBSD.org) Received: (from rdivacky@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01A7wYW032884; Thu, 1 Jan 2015 10:07:58 GMT (envelope-from rdivacky@FreeBSD.org) Message-Id: <201501011007.t01A7wYW032884@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: rdivacky set sender to rdivacky@FreeBSD.org using -f From: Roman Divacky Date: Thu, 1 Jan 2015 10:07:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276499 - head/sys/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 10:07:59 -0000 Author: rdivacky Date: Thu Jan 1 10:07:57 2015 New Revision: 276499 URL: https://svnweb.freebsd.org/changeset/base/276499 Log: LLVM integrated assembler can assemble these files just fine. Modified: head/sys/conf/Makefile.amd64 head/sys/conf/Makefile.i386 head/sys/conf/Makefile.pc98 Modified: head/sys/conf/Makefile.amd64 ============================================================================== --- head/sys/conf/Makefile.amd64 Thu Jan 1 09:33:46 2015 (r276498) +++ head/sys/conf/Makefile.amd64 Thu Jan 1 10:07:57 2015 (r276499) @@ -37,11 +37,6 @@ INCLUDES+= -I$S/contrib/libfdt CFLAGS+= -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer .endif -# XXX: clang integrated-as doesn't grok .codeNN directives yet -ASM_CFLAGS.acpi_wakecode.S= ${CLANG_NO_IAS} -ASM_CFLAGS.mpboot.S= ${CLANG_NO_IAS} -ASM_CFLAGS+= ${ASM_CFLAGS.${.IMPSRC:T}} - %BEFORE_DEPEND %OBJS Modified: head/sys/conf/Makefile.i386 ============================================================================== --- head/sys/conf/Makefile.i386 Thu Jan 1 09:33:46 2015 (r276498) +++ head/sys/conf/Makefile.i386 Thu Jan 1 10:07:57 2015 (r276499) @@ -32,11 +32,6 @@ S= ../../.. INCLUDES+= -I$S/contrib/libfdt -# XXX: clang integrated-as doesn't grok .codeNN directives yet -ASM_CFLAGS.acpi_wakecode.S= ${CLANG_NO_IAS} -ASM_CFLAGS.mpboot.s= ${CLANG_NO_IAS} -ASM_CFLAGS+= ${ASM_CFLAGS.${.IMPSRC:T}} - %BEFORE_DEPEND %OBJS Modified: head/sys/conf/Makefile.pc98 ============================================================================== --- head/sys/conf/Makefile.pc98 Thu Jan 1 09:33:46 2015 (r276498) +++ head/sys/conf/Makefile.pc98 Thu Jan 1 10:07:57 2015 (r276499) @@ -30,10 +30,6 @@ S= ../../.. .endif .include "$S/conf/kern.pre.mk" -# XXX: clang integrated-as doesn't grok .codeNN directives yet -ASM_CFLAGS.mpboot.s= ${CLANG_NO_IAS} -ASM_CFLAGS+= ${ASM_CFLAGS.${.IMPSRC:T}} - %BEFORE_DEPEND %OBJS From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 15:50:49 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7B7086BF; Thu, 1 Jan 2015 15:50:49 +0000 (UTC) Received: from tensor.andric.com (tensor.andric.com [87.251.56.140]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client CN "tensor.andric.com", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0A07564F5D; Thu, 1 Jan 2015 15:50:48 +0000 (UTC) Received: from [IPv6:2001:7b8:3a7::28eb:6a07:fcba:ed4a] (unknown [IPv6:2001:7b8:3a7:0:28eb:6a07:fcba:ed4a]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id CBFD3B80A; Thu, 1 Jan 2015 16:50:38 +0100 (CET) Subject: Re: svn commit: r276052 - head Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Content-Type: multipart/signed; boundary="Apple-Mail=_57796C0D-5952-47AF-9553-2403778C72DC"; protocol="application/pgp-signature"; micalg=pgp-sha1 X-Pgp-Agent: GPGMail 2.5b4 From: Dimitry Andric In-Reply-To: <201412220452.sBM4qPAx096443@svn.freebsd.org> Date: Thu, 1 Jan 2015 16:50:29 +0100 Message-Id: <68874DE1-3EAE-4A4D-9760-7661DA7AE846@FreeBSD.org> References: <201412220452.sBM4qPAx096443@svn.freebsd.org> To: Garrett Cooper X-Mailer: Apple Mail (2.1993) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 15:50:49 -0000 --Apple-Mail=_57796C0D-5952-47AF-9553-2403778C72DC Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On 22 Dec 2014, at 05:52, Garrett Cooper wrote: >=20 > Author: ngie > Date: Mon Dec 22 04:52:24 2014 > New Revision: 276052 > URL: https://svnweb.freebsd.org/changeset/base/276052 >=20 > Log: > Build selective portions of gnu/usr.bin/texinfo as part of = build-tools to > ensure that building on a host without makeinfo (i.e. a host where > make delete-old -DWITHOUT_INFO was run), then building with MK_INFO = =3D=3D yes > doesn't manifest in build errors when building info pages .. > @@ -1398,6 +1403,16 @@ build-tools: .MAKE > ${MAKE} DIRPRFX=3D${_tool}/ depend && \ > ${MAKE} DIRPRFX=3D${_tool}/ all > .endfor > +.for _tool in \ > + ${_texinfo} > + ${_+_}@${ECHODIR} "=3D=3D=3D> ${_tool} (obj,depend,all)"; \ > + cd ${.CURDIR}/${_tool} && \ > + ${MAKE} DIRPRFX=3D${_tool}/ obj && \ > + ${MAKE} DIRPRFX=3D${_tool}/ depend && \ > + ${MAKE} DIRPRFX=3D${_tool}/ all && \ > + ${MAKE} DIRPRFX=3D${_tool}/ install DESTDIR=3D${WORLDTMP} > +.endfor Strangely, this hunk seems to work incorrectly for non-native builds. For example, I tried a TARGET=3Darm buildworld just now, and that dies with the following error: [...] >>> stage 2.3: build tools [...] =3D=3D=3D> gnu/usr.bin/texinfo/makeinfo (obj,depend,all,install) [...] gzip -cn = /usr/src/gnu/usr.bin/texinfo/makeinfo/../../../../contrib/texinfo/doc/make= info.1 > makeinfo.1.gz sh /usr/src/tools/install.sh -s -o root -g wheel -m 555 makeinfo = /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo install: /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo: No such = file or directory *** Error code 71 Specifically, the /usr/obj/arm.arm/arm.arm directory is incorrect, there should be only one "arm.arm" in that path. I don't really understand how that value comes to pass, though. When I put an echo statement just before the make install, which shows the values of ${_tool} and ${WORLDTMP}, it prints: DEBUG: _tool=3Dgnu/usr.bin/texinfo/makeinfo, = WORLDTMP=3D/usr/obj/arm.arm/arm.arm/usr/src/tmp So for some strange reason, ${WORLDTMP} is incorrect at that point? I think something is appending one path component too many... -Dimitry --Apple-Mail=_57796C0D-5952-47AF-9553-2403778C72DC Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.26 iEYEARECAAYFAlSlbM4ACgkQsF6jCi4glqMmMgCg4AUDgm+6M67JclWduHciUlXd om8Anj5SA5aDMhw1wb04aop1y7b41MhG =TS53 -----END PGP SIGNATURE----- --Apple-Mail=_57796C0D-5952-47AF-9553-2403778C72DC-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 16:41:12 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 57DA63EE; Thu, 1 Jan 2015 16:41:12 +0000 (UTC) Received: from mho-02-ewr.mailhop.org (mho-02-ewr.mailhop.org [204.13.248.72]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2BA297CA; Thu, 1 Jan 2015 16:41:11 +0000 (UTC) Received: from [73.34.117.227] (helo=ilsoft.org) by mho-02-ewr.mailhop.org with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.72) (envelope-from ) id 1Y6io4-000Ctx-L1; Thu, 01 Jan 2015 16:41:04 +0000 Received: from revolution.hippie.lan (revolution.hippie.lan [172.22.42.240]) by ilsoft.org (8.14.9/8.14.9) with ESMTP id t01Gf3YZ052475; Thu, 1 Jan 2015 09:41:03 -0700 (MST) (envelope-from ian@freebsd.org) X-Mail-Handler: Dyn Standard SMTP by Dyn X-Originating-IP: 73.34.117.227 X-Report-Abuse-To: abuse@dyndns.com (see http://www.dyndns.com/services/sendlabs/outbound_abuse.html for abuse reporting information) X-MHO-User: U2FsdGVkX19U4zmEk2RwrL1vtFW0JMmV Message-ID: <1420130463.85983.0.camel@freebsd.org> Subject: Re: svn commit: r276052 - head From: Ian Lepore To: Dimitry Andric Date: Thu, 01 Jan 2015 09:41:03 -0700 In-Reply-To: <68874DE1-3EAE-4A4D-9760-7661DA7AE846@FreeBSD.org> References: <201412220452.sBM4qPAx096443@svn.freebsd.org> <68874DE1-3EAE-4A4D-9760-7661DA7AE846@FreeBSD.org> Content-Type: text/plain; charset="us-ascii" X-Mailer: Evolution 3.12.8 FreeBSD GNOME Team Port Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Garrett Cooper X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 16:41:12 -0000 On Thu, 2015-01-01 at 16:50 +0100, Dimitry Andric wrote: > On 22 Dec 2014, at 05:52, Garrett Cooper wrote: > > > > Author: ngie > > Date: Mon Dec 22 04:52:24 2014 > > New Revision: 276052 > > URL: https://svnweb.freebsd.org/changeset/base/276052 > > > > Log: > > Build selective portions of gnu/usr.bin/texinfo as part of build-tools to > > ensure that building on a host without makeinfo (i.e. a host where > > make delete-old -DWITHOUT_INFO was run), then building with MK_INFO == yes > > doesn't manifest in build errors when building info pages > .. > > @@ -1398,6 +1403,16 @@ build-tools: .MAKE > > ${MAKE} DIRPRFX=${_tool}/ depend && \ > > ${MAKE} DIRPRFX=${_tool}/ all > > .endfor > > +.for _tool in \ > > + ${_texinfo} > > + ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all)"; \ > > + cd ${.CURDIR}/${_tool} && \ > > + ${MAKE} DIRPRFX=${_tool}/ obj && \ > > + ${MAKE} DIRPRFX=${_tool}/ depend && \ > > + ${MAKE} DIRPRFX=${_tool}/ all && \ > > + ${MAKE} DIRPRFX=${_tool}/ install DESTDIR=${WORLDTMP} > > +.endfor > > Strangely, this hunk seems to work incorrectly for non-native builds. > For example, I tried a TARGET=arm buildworld just now, and that dies > with the following error: > > [...] > >>> stage 2.3: build tools > [...] > ===> gnu/usr.bin/texinfo/makeinfo (obj,depend,all,install) > [...] > gzip -cn /usr/src/gnu/usr.bin/texinfo/makeinfo/../../../../contrib/texinfo/doc/makeinfo.1 > makeinfo.1.gz > sh /usr/src/tools/install.sh -s -o root -g wheel -m 555 makeinfo /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo > install: /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo: No such file or directory > *** Error code 71 > > Specifically, the /usr/obj/arm.arm/arm.arm directory is incorrect, there > should be only one "arm.arm" in that path. I don't really understand > how that value comes to pass, though. When I put an echo statement just > before the make install, which shows the values of ${_tool} and > ${WORLDTMP}, it prints: > > DEBUG: _tool=gnu/usr.bin/texinfo/makeinfo, WORLDTMP=/usr/obj/arm.arm/arm.arm/usr/src/tmp > > So for some strange reason, ${WORLDTMP} is incorrect at that point? I > think something is appending one path component too many... > > -Dimitry > try TARGET_ARCH=arm -- Ian From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 16:56:16 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 6F06CB88; Thu, 1 Jan 2015 16:56:16 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5BD2A9CC; Thu, 1 Jan 2015 16:56:16 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01GuGON033141; Thu, 1 Jan 2015 16:56:16 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01GuGIZ033140; Thu, 1 Jan 2015 16:56:16 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201501011656.t01GuGIZ033140@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Thu, 1 Jan 2015 16:56:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276505 - head/sys/modules/bios/smapi X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 16:56:16 -0000 Author: dim Date: Thu Jan 1 16:56:15 2015 New Revision: 276505 URL: https://svnweb.freebsd.org/changeset/base/276505 Log: Remove the clang -no-integrated-as workaround for smapi_bios.S, as clang 3.5.0 now supports the assembly just fine. Modified: head/sys/modules/bios/smapi/Makefile Modified: head/sys/modules/bios/smapi/Makefile ============================================================================== --- head/sys/modules/bios/smapi/Makefile Thu Jan 1 15:48:12 2015 (r276504) +++ head/sys/modules/bios/smapi/Makefile Thu Jan 1 16:56:15 2015 (r276505) @@ -8,7 +8,3 @@ SRCS= smapi.c smapi_bios.S \ bus_if.h device_if.h .include - -# XXX: clang integrated-as doesn't grok 16-bit assembly yet -CFLAGS.smapi_bios.S= ${CLANG_NO_IAS} -CFLAGS+= ${CFLAGS.${.IMPSRC:T}} From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 17:14:45 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7C6B6F52; Thu, 1 Jan 2015 17:14:45 +0000 (UTC) Received: from tensor.andric.com (unknown [IPv6:2001:7b8:3a7:1:2d0:b7ff:fea0:8c26]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client CN "tensor.andric.com", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 05F1164C20; Thu, 1 Jan 2015 17:14:45 +0000 (UTC) Received: from [IPv6:2001:7b8:3a7::28eb:6a07:fcba:ed4a] (unknown [IPv6:2001:7b8:3a7:0:28eb:6a07:fcba:ed4a]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id 4DD17B80A; Thu, 1 Jan 2015 18:14:39 +0100 (CET) Subject: Re: svn commit: r276052 - head Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Content-Type: multipart/signed; boundary="Apple-Mail=_20CB42F9-E5F4-4B56-9EE9-612255E247D6"; protocol="application/pgp-signature"; micalg=pgp-sha1 X-Pgp-Agent: GPGMail 2.5b4 From: Dimitry Andric In-Reply-To: <1420130463.85983.0.camel@freebsd.org> Date: Thu, 1 Jan 2015 18:14:31 +0100 Message-Id: <9A1C084E-B491-4581-A21C-AAB82687C588@FreeBSD.org> References: <201412220452.sBM4qPAx096443@svn.freebsd.org> <68874DE1-3EAE-4A4D-9760-7661DA7AE846@FreeBSD.org> <1420130463.85983.0.camel@freebsd.org> To: Ian Lepore X-Mailer: Apple Mail (2.1993) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Garrett Cooper X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 17:14:45 -0000 --Apple-Mail=_20CB42F9-E5F4-4B56-9EE9-612255E247D6 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On 01 Jan 2015, at 17:41, Ian Lepore wrote: >=20 > On Thu, 2015-01-01 at 16:50 +0100, Dimitry Andric wrote: >> On 22 Dec 2014, at 05:52, Garrett Cooper wrote: >>>=20 >>> Author: ngie >>> Date: Mon Dec 22 04:52:24 2014 >>> New Revision: 276052 >>> URL: https://svnweb.freebsd.org/changeset/base/276052 >>>=20 >>> Log: >>> Build selective portions of gnu/usr.bin/texinfo as part of = build-tools to >>> ensure that building on a host without makeinfo (i.e. a host where >>> make delete-old -DWITHOUT_INFO was run), then building with MK_INFO = =3D=3D yes >>> doesn't manifest in build errors when building info pages >> .. >>> @@ -1398,6 +1403,16 @@ build-tools: .MAKE >>> ${MAKE} DIRPRFX=3D${_tool}/ depend && \ >>> ${MAKE} DIRPRFX=3D${_tool}/ all >>> .endfor >>> +.for _tool in \ >>> + ${_texinfo} >>> + ${_+_}@${ECHODIR} "=3D=3D=3D> ${_tool} (obj,depend,all)"; \ >>> + cd ${.CURDIR}/${_tool} && \ >>> + ${MAKE} DIRPRFX=3D${_tool}/ obj && \ >>> + ${MAKE} DIRPRFX=3D${_tool}/ depend && \ >>> + ${MAKE} DIRPRFX=3D${_tool}/ all && \ >>> + ${MAKE} DIRPRFX=3D${_tool}/ install DESTDIR=3D${WORLDTMP} >>> +.endfor >>=20 >> Strangely, this hunk seems to work incorrectly for non-native builds. >> For example, I tried a TARGET=3Darm buildworld just now, and that = dies >> with the following error: >>=20 >> [...] >>>>> stage 2.3: build tools >> [...] >> =3D=3D=3D> gnu/usr.bin/texinfo/makeinfo (obj,depend,all,install) >> [...] >> gzip -cn = /usr/src/gnu/usr.bin/texinfo/makeinfo/../../../../contrib/texinfo/doc/make= info.1 > makeinfo.1.gz >> sh /usr/src/tools/install.sh -s -o root -g wheel -m 555 makeinfo = /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo >> install: /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo: No = such file or directory >> *** Error code 71 >>=20 >> Specifically, the /usr/obj/arm.arm/arm.arm directory is incorrect, = there >> should be only one "arm.arm" in that path. I don't really understand >> how that value comes to pass, though. When I put an echo statement = just >> before the make install, which shows the values of ${_tool} and >> ${WORLDTMP}, it prints: >>=20 >> DEBUG: _tool=3Dgnu/usr.bin/texinfo/makeinfo, = WORLDTMP=3D/usr/obj/arm.arm/arm.arm/usr/src/tmp >>=20 >> So for some strange reason, ${WORLDTMP} is incorrect at that point? = I >> think something is appending one path component too many... >>=20 >> -Dimitry >>=20 >=20 > try TARGET_ARCH=3Darm No, that does not help, unfortunately. The problem seems to be that in Makefile.inc1, TMAKE is passing MAKEOBJDIRPREFIX=3D${OBJTREE} via its environment, and this changes the value of WORLDTMP to an incorrect value. At first it looked like I could just force the correct WORLDTMP value via the command line instead, e.g. like this: Index: Makefile.inc1 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- Makefile.inc1 (revision 276480) +++ Makefile.inc1 (working copy) @@ -270,6 +270,7 @@ TMAKE=3D MAKEOBJDIRPREFIX=3D${OBJTREE} \ ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ TARGET=3D${TARGET} TARGET_ARCH=3D${TARGET_ARCH} \ + WORLDTMP=3D${WORLDTMP} \ DESTDIR=3D \ BOOTSTRAPPING=3D${OSRELDATE} \ SSP_CFLAGS=3D \ However, this leads to other problems further down the road, where it gets errors installing parts of libllvmsupport and tblgen. So at this point, non-native builds with MK_INFO=3Dyes are broken. -Dimitry --Apple-Mail=_20CB42F9-E5F4-4B56-9EE9-612255E247D6 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.26 iEYEARECAAYFAlSlgH4ACgkQsF6jCi4glqMQAgCfdC5Vc0HQ1FSfNabSL1ruZYfy vI0AoJttg1ffl94+TcOL8DvPLxWcA4nk =eCK+ -----END PGP SIGNATURE----- --Apple-Mail=_20CB42F9-E5F4-4B56-9EE9-612255E247D6-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 17:32:48 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 992D471A; Thu, 1 Jan 2015 17:32:48 +0000 (UTC) Received: from mho-01-ewr.mailhop.org (mho-03-ewr.mailhop.org [204.13.248.66]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5962164F20; Thu, 1 Jan 2015 17:32:47 +0000 (UTC) Received: from [73.34.117.227] (helo=ilsoft.org) by mho-01-ewr.mailhop.org with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.72) (envelope-from ) id 1Y6jc6-000GDq-IF; Thu, 01 Jan 2015 17:32:46 +0000 Received: from revolution.hippie.lan (revolution.hippie.lan [172.22.42.240]) by ilsoft.org (8.14.9/8.14.9) with ESMTP id t01HWjtp052935; Thu, 1 Jan 2015 10:32:45 -0700 (MST) (envelope-from ian@freebsd.org) X-Mail-Handler: Dyn Standard SMTP by Dyn X-Originating-IP: 73.34.117.227 X-Report-Abuse-To: abuse@dyndns.com (see http://www.dyndns.com/services/sendlabs/outbound_abuse.html for abuse reporting information) X-MHO-User: U2FsdGVkX1/VT4dGFQwKtfU3xqzeYlN3 Message-ID: <1420133565.85983.5.camel@freebsd.org> Subject: Re: svn commit: r276052 - head From: Ian Lepore To: Dimitry Andric Date: Thu, 01 Jan 2015 10:32:45 -0700 In-Reply-To: <9A1C084E-B491-4581-A21C-AAB82687C588@FreeBSD.org> References: <201412220452.sBM4qPAx096443@svn.freebsd.org> <68874DE1-3EAE-4A4D-9760-7661DA7AE846@FreeBSD.org> <1420130463.85983.0.camel@freebsd.org> <9A1C084E-B491-4581-A21C-AAB82687C588@FreeBSD.org> Content-Type: text/plain; charset="us-ascii" X-Mailer: Evolution 3.12.8 FreeBSD GNOME Team Port Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Garrett Cooper X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 17:32:48 -0000 On Thu, 2015-01-01 at 18:14 +0100, Dimitry Andric wrote: > On 01 Jan 2015, at 17:41, Ian Lepore wrote: > > > > On Thu, 2015-01-01 at 16:50 +0100, Dimitry Andric wrote: > >> On 22 Dec 2014, at 05:52, Garrett Cooper wrote: > >>> > >>> Author: ngie > >>> Date: Mon Dec 22 04:52:24 2014 > >>> New Revision: 276052 > >>> URL: https://svnweb.freebsd.org/changeset/base/276052 > >>> > >>> Log: > >>> Build selective portions of gnu/usr.bin/texinfo as part of build-tools to > >>> ensure that building on a host without makeinfo (i.e. a host where > >>> make delete-old -DWITHOUT_INFO was run), then building with MK_INFO == yes > >>> doesn't manifest in build errors when building info pages > >> .. > >>> @@ -1398,6 +1403,16 @@ build-tools: .MAKE > >>> ${MAKE} DIRPRFX=${_tool}/ depend && \ > >>> ${MAKE} DIRPRFX=${_tool}/ all > >>> .endfor > >>> +.for _tool in \ > >>> + ${_texinfo} > >>> + ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all)"; \ > >>> + cd ${.CURDIR}/${_tool} && \ > >>> + ${MAKE} DIRPRFX=${_tool}/ obj && \ > >>> + ${MAKE} DIRPRFX=${_tool}/ depend && \ > >>> + ${MAKE} DIRPRFX=${_tool}/ all && \ > >>> + ${MAKE} DIRPRFX=${_tool}/ install DESTDIR=${WORLDTMP} > >>> +.endfor > >> > >> Strangely, this hunk seems to work incorrectly for non-native builds. > >> For example, I tried a TARGET=arm buildworld just now, and that dies > >> with the following error: > >> > >> [...] > >>>>> stage 2.3: build tools > >> [...] > >> ===> gnu/usr.bin/texinfo/makeinfo (obj,depend,all,install) > >> [...] > >> gzip -cn /usr/src/gnu/usr.bin/texinfo/makeinfo/../../../../contrib/texinfo/doc/makeinfo.1 > makeinfo.1.gz > >> sh /usr/src/tools/install.sh -s -o root -g wheel -m 555 makeinfo /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo > >> install: /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo: No such file or directory > >> *** Error code 71 > >> > >> Specifically, the /usr/obj/arm.arm/arm.arm directory is incorrect, there > >> should be only one "arm.arm" in that path. I don't really understand > >> how that value comes to pass, though. When I put an echo statement just > >> before the make install, which shows the values of ${_tool} and > >> ${WORLDTMP}, it prints: > >> > >> DEBUG: _tool=gnu/usr.bin/texinfo/makeinfo, WORLDTMP=/usr/obj/arm.arm/arm.arm/usr/src/tmp > >> > >> So for some strange reason, ${WORLDTMP} is incorrect at that point? I > >> think something is appending one path component too many... > >> > >> -Dimitry > >> > > > > try TARGET_ARCH=arm > > No, that does not help, unfortunately. The problem seems to be that in > Makefile.inc1, TMAKE is passing MAKEOBJDIRPREFIX=${OBJTREE} via its > environment, and this changes the value of WORLDTMP to an incorrect > value. > > At first it looked like I could just force the correct WORLDTMP value > via the command line instead, e.g. like this: > > Index: Makefile.inc1 > =================================================================== > --- Makefile.inc1 (revision 276480) > +++ Makefile.inc1 (working copy) > @@ -270,6 +270,7 @@ > TMAKE= MAKEOBJDIRPREFIX=${OBJTREE} \ > ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ > TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ > + WORLDTMP=${WORLDTMP} \ > DESTDIR= \ > BOOTSTRAPPING=${OSRELDATE} \ > SSP_CFLAGS= \ > > However, this leads to other problems further down the road, where it > gets errors installing parts of libllvmsupport and tblgen. > > So at this point, non-native builds with MK_INFO=yes are broken. > > -Dimitry > You seem to be implying that the whole process of cross building is broken, but it's not. I do this all day long every day. "make TARGET_ARCH=arm [make targets and other vars here]" works. Do you have something in make.conf or src.conf causing problems? -- Ian From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 17:50:31 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 20971EB7; Thu, 1 Jan 2015 17:50:31 +0000 (UTC) Received: from tensor.andric.com (tensor.andric.com [87.251.56.140]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client CN "tensor.andric.com", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B4EAF66121; Thu, 1 Jan 2015 17:50:30 +0000 (UTC) Received: from [IPv6:2001:7b8:3a7::28eb:6a07:fcba:ed4a] (unknown [IPv6:2001:7b8:3a7:0:28eb:6a07:fcba:ed4a]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id 1D577B80A; Thu, 1 Jan 2015 18:50:28 +0100 (CET) Subject: Re: svn commit: r276052 - head Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Content-Type: multipart/signed; boundary="Apple-Mail=_D6D1277E-2137-47B8-A279-2C466BC034CA"; protocol="application/pgp-signature"; micalg=pgp-sha1 X-Pgp-Agent: GPGMail 2.5b4 From: Dimitry Andric In-Reply-To: <1420133565.85983.5.camel@freebsd.org> Date: Thu, 1 Jan 2015 18:50:24 +0100 Message-Id: References: <201412220452.sBM4qPAx096443@svn.freebsd.org> <68874DE1-3EAE-4A4D-9760-7661DA7AE846@FreeBSD.org> <1420130463.85983.0.camel@freebsd.org> <9A1C084E-B491-4581-A21C-AAB82687C588@FreeBSD.org> <1420133565.85983.5.camel@freebsd.org> To: Ian Lepore X-Mailer: Apple Mail (2.1993) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Garrett Cooper X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 17:50:31 -0000 --Apple-Mail=_D6D1277E-2137-47B8-A279-2C466BC034CA Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On 01 Jan 2015, at 18:32, Ian Lepore wrote: >=20 > On Thu, 2015-01-01 at 18:14 +0100, Dimitry Andric wrote: >> On 01 Jan 2015, at 17:41, Ian Lepore wrote: >>>=20 >>> On Thu, 2015-01-01 at 16:50 +0100, Dimitry Andric wrote: >>>> On 22 Dec 2014, at 05:52, Garrett Cooper wrote: >>>>>=20 >>>>> Author: ngie >>>>> Date: Mon Dec 22 04:52:24 2014 >>>>> New Revision: 276052 >>>>> URL: https://svnweb.freebsd.org/changeset/base/276052 >>>>>=20 >>>>> Log: >>>>> Build selective portions of gnu/usr.bin/texinfo as part of = build-tools to >>>>> ensure that building on a host without makeinfo (i.e. a host where >>>>> make delete-old -DWITHOUT_INFO was run), then building with = MK_INFO =3D=3D yes >>>>> doesn't manifest in build errors when building info pages >>>> .. >>>>> @@ -1398,6 +1403,16 @@ build-tools: .MAKE >>>>> ${MAKE} DIRPRFX=3D${_tool}/ depend && \ >>>>> ${MAKE} DIRPRFX=3D${_tool}/ all >>>>> .endfor >>>>> +.for _tool in \ >>>>> + ${_texinfo} >>>>> + ${_+_}@${ECHODIR} "=3D=3D=3D> ${_tool} (obj,depend,all)"; \ >>>>> + cd ${.CURDIR}/${_tool} && \ >>>>> + ${MAKE} DIRPRFX=3D${_tool}/ obj && \ >>>>> + ${MAKE} DIRPRFX=3D${_tool}/ depend && \ >>>>> + ${MAKE} DIRPRFX=3D${_tool}/ all && \ >>>>> + ${MAKE} DIRPRFX=3D${_tool}/ install DESTDIR=3D${WORLDTMP} >>>>> +.endfor >>>>=20 >>>> Strangely, this hunk seems to work incorrectly for non-native = builds. >>>> For example, I tried a TARGET=3Darm buildworld just now, and that = dies >>>> with the following error: >>>>=20 >>>> [...] >>>>>>> stage 2.3: build tools >>>> [...] >>>> =3D=3D=3D> gnu/usr.bin/texinfo/makeinfo (obj,depend,all,install) >>>> [...] >>>> gzip -cn = /usr/src/gnu/usr.bin/texinfo/makeinfo/../../../../contrib/texinfo/doc/make= info.1 > makeinfo.1.gz >>>> sh /usr/src/tools/install.sh -s -o root -g wheel -m 555 makeinfo = /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo >>>> install: /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo: No = such file or directory >>>> *** Error code 71 >>>>=20 >>>> Specifically, the /usr/obj/arm.arm/arm.arm directory is incorrect, = there >>>> should be only one "arm.arm" in that path. I don't really = understand >>>> how that value comes to pass, though. When I put an echo statement = just >>>> before the make install, which shows the values of ${_tool} and >>>> ${WORLDTMP}, it prints: >>>>=20 >>>> DEBUG: _tool=3Dgnu/usr.bin/texinfo/makeinfo, = WORLDTMP=3D/usr/obj/arm.arm/arm.arm/usr/src/tmp >>>>=20 >>>> So for some strange reason, ${WORLDTMP} is incorrect at that point? = I >>>> think something is appending one path component too many... >>>>=20 >>>> -Dimitry >>>>=20 >>>=20 >>> try TARGET_ARCH=3Darm >>=20 >> No, that does not help, unfortunately. The problem seems to be that = in >> Makefile.inc1, TMAKE is passing MAKEOBJDIRPREFIX=3D${OBJTREE} via its >> environment, and this changes the value of WORLDTMP to an incorrect >> value. >>=20 >> At first it looked like I could just force the correct WORLDTMP value >> via the command line instead, e.g. like this: >>=20 >> Index: Makefile.inc1 >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >> --- Makefile.inc1 (revision 276480) >> +++ Makefile.inc1 (working copy) >> @@ -270,6 +270,7 @@ >> TMAKE=3D MAKEOBJDIRPREFIX=3D${OBJTREE} \ >> ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ >> TARGET=3D${TARGET} TARGET_ARCH=3D${TARGET_ARCH} \ >> + WORLDTMP=3D${WORLDTMP} \ >> DESTDIR=3D \ >> BOOTSTRAPPING=3D${OSRELDATE} \ >> SSP_CFLAGS=3D \ >>=20 >> However, this leads to other problems further down the road, where it >> gets errors installing parts of libllvmsupport and tblgen. >>=20 >> So at this point, non-native builds with MK_INFO=3Dyes are broken. >>=20 >> -Dimitry >>=20 >=20 > You seem to be implying that the whole process of cross building is > broken, but it's not. I do this all day long every day. "make > TARGET_ARCH=3Darm [make targets and other vars here]" works. Do you = have > something in make.conf or src.conf causing problems? No, just MK_INFO=3Dyes, as I said. That is what Garrett tried to fix in this commit, but which only works for native builds. I'll be coming up with a fix shortly. -Dimitry --Apple-Mail=_D6D1277E-2137-47B8-A279-2C466BC034CA Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.26 iEYEARECAAYFAlSliOQACgkQsF6jCi4glqMP5wCfQMTZIwVyJYfNQfJvDnJeEnta c6sAni/rt/OBJejZ90F92pXlUI/8MNKx =jegm -----END PGP SIGNATURE----- --Apple-Mail=_D6D1277E-2137-47B8-A279-2C466BC034CA-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 18:37:04 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 73D534ED; Thu, 1 Jan 2015 18:37:04 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5FB6489B; Thu, 1 Jan 2015 18:37:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01Ib42Z082282; Thu, 1 Jan 2015 18:37:04 GMT (envelope-from dchagin@FreeBSD.org) Received: (from dchagin@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01Ib4Z7082281; Thu, 1 Jan 2015 18:37:04 GMT (envelope-from dchagin@FreeBSD.org) Message-Id: <201501011837.t01Ib4Z7082281@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dchagin set sender to dchagin@FreeBSD.org using -f From: Dmitry Chagin Date: Thu, 1 Jan 2015 18:37:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276508 - head/sys/amd64/linux32 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 18:37:04 -0000 Author: dchagin Date: Thu Jan 1 18:37:03 2015 New Revision: 276508 URL: https://svnweb.freebsd.org/changeset/base/276508 Log: Correct an argument status of wait4 syscall for Linuxulator. MFC after: 1 week Modified: head/sys/amd64/linux32/syscalls.master Modified: head/sys/amd64/linux32/syscalls.master ============================================================================== --- head/sys/amd64/linux32/syscalls.master Thu Jan 1 18:12:02 2015 (r276507) +++ head/sys/amd64/linux32/syscalls.master Thu Jan 1 18:37:03 2015 (r276508) @@ -207,7 +207,7 @@ 112 AUE_NULL UNIMPL idle 113 AUE_NULL UNIMPL vm86old 114 AUE_WAIT4 STD { int linux_wait4(l_pid_t pid, \ - l_uint *status, l_int options, \ + l_int *status, l_int options, \ struct l_rusage *rusage); } 115 AUE_SWAPOFF STD { int linux_swapoff(void); } 116 AUE_NULL STD { int linux_sysinfo(struct l_sysinfo *info); } From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 18:38:34 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4B4FD627; Thu, 1 Jan 2015 18:38:34 +0000 (UTC) Received: from mail-pa0-x231.google.com (mail-pa0-x231.google.com [IPv6:2607:f8b0:400e:c03::231]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0EAB18AC; Thu, 1 Jan 2015 18:38:34 +0000 (UTC) Received: by mail-pa0-f49.google.com with SMTP id eu11so22671138pac.8; Thu, 01 Jan 2015 10:38:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :message-id:references:to; bh=VCoxqhtlQ5ia0EegP667brPryI4IGRpm+jkcSrRVo98=; b=JqanODWpqqzuuYhAFIjouXE8LiE7iJqqnusRNxutitoVuWWFp846er/uh0aQn2DnbX oLOwBlHA7nDqqKPYrd5ixzYrvCa97i/gJQDI7e0AyD7Vj3lXfcd9V8ALgYg8JmjtxmHy 8YeUS4XFD6GmQis/Nd96klql1Zpj0wSo/Np0brvtpIThr67XL1xjzBc9kERa0p/2azLK 9f3GZ9hHrGQUrWpzWnhXP86e8alKmUVR1hFPIPVHZ6YRWUQK/A9VYEEWD1GCO2zX7l/r dGwUbpns+yDCM+BBlxUwodVpcRJdnkCpdNDxvrE3DPvIAqWHFe6zdhXzrWQhtoOMwzGE sBnw== X-Received: by 10.66.65.234 with SMTP id a10mr69043457pat.120.1420137513364; Thu, 01 Jan 2015 10:38:33 -0800 (PST) Received: from ?IPv6:2601:8:ab80:7d6:6d22:f632:3b17:f5d8? ([2601:8:ab80:7d6:6d22:f632:3b17:f5d8]) by mx.google.com with ESMTPSA id fu1sm44367864pbb.91.2015.01.01.10.38.32 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 01 Jan 2015 10:38:32 -0800 (PST) Content-Type: multipart/signed; boundary="Apple-Mail=_B4264039-AFEA-424E-8BCB-1A18C295090C"; protocol="application/pgp-signature"; micalg=pgp-sha512 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: svn commit: r276052 - head From: Garrett Cooper In-Reply-To: Date: Thu, 1 Jan 2015 10:38:27 -0800 Message-Id: References: <201412220452.sBM4qPAx096443@svn.freebsd.org> <68874DE1-3EAE-4A4D-9760-7661DA7AE846@FreeBSD.org> <1420130463.85983.0.camel@freebsd.org> <9A1C084E-B491-4581-A21C-AAB82687C588@FreeBSD.org> <1420133565.85983.5.camel@freebsd.org> To: Dimitry Andric X-Mailer: Apple Mail (2.1878.6) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers , Garrett Cooper , Ian Lepore X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 18:38:34 -0000 --Apple-Mail=_B4264039-AFEA-424E-8BCB-1A18C295090C Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 On Jan 1, 2015, at 9:50, Dimitry Andric wrote: > On 01 Jan 2015, at 18:32, Ian Lepore wrote: >>=20 >> On Thu, 2015-01-01 at 18:14 +0100, Dimitry Andric wrote: >>> On 01 Jan 2015, at 17:41, Ian Lepore wrote: >>>>=20 >>>> On Thu, 2015-01-01 at 16:50 +0100, Dimitry Andric wrote: >>>>> On 22 Dec 2014, at 05:52, Garrett Cooper wrote: >>>>>>=20 >>>>>> Author: ngie >>>>>> Date: Mon Dec 22 04:52:24 2014 >>>>>> New Revision: 276052 >>>>>> URL: https://svnweb.freebsd.org/changeset/base/276052 >>>>>>=20 >>>>>> Log: >>>>>> Build selective portions of gnu/usr.bin/texinfo as part of = build-tools to >>>>>> ensure that building on a host without makeinfo (i.e. a host = where >>>>>> make delete-old -DWITHOUT_INFO was run), then building with = MK_INFO =3D=3D yes >>>>>> doesn't manifest in build errors when building info pages >>>>> .. >>>>>> @@ -1398,6 +1403,16 @@ build-tools: .MAKE >>>>>> ${MAKE} DIRPRFX=3D${_tool}/ depend && \ >>>>>> ${MAKE} DIRPRFX=3D${_tool}/ all >>>>>> .endfor >>>>>> +.for _tool in \ >>>>>> + ${_texinfo} >>>>>> + ${_+_}@${ECHODIR} "=3D=3D=3D> ${_tool} = (obj,depend,all)"; \ >>>>>> + cd ${.CURDIR}/${_tool} && \ >>>>>> + ${MAKE} DIRPRFX=3D${_tool}/ obj && \ >>>>>> + ${MAKE} DIRPRFX=3D${_tool}/ depend && \ >>>>>> + ${MAKE} DIRPRFX=3D${_tool}/ all && \ >>>>>> + ${MAKE} DIRPRFX=3D${_tool}/ install = DESTDIR=3D${WORLDTMP} >>>>>> +.endfor >>>>>=20 >>>>> Strangely, this hunk seems to work incorrectly for non-native = builds. >>>>> For example, I tried a TARGET=3Darm buildworld just now, and that = dies >>>>> with the following error: >>>>>=20 >>>>> [...] >>>>>>>> stage 2.3: build tools >>>>> [...] >>>>> =3D=3D=3D> gnu/usr.bin/texinfo/makeinfo (obj,depend,all,install) >>>>> [...] >>>>> gzip -cn = /usr/src/gnu/usr.bin/texinfo/makeinfo/../../../../contrib/texinfo/doc/make= info.1 > makeinfo.1.gz >>>>> sh /usr/src/tools/install.sh -s -o root -g wheel -m 555 makeinfo = /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo >>>>> install: /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo: No = such file or directory >>>>> *** Error code 71 >>>>>=20 >>>>> Specifically, the /usr/obj/arm.arm/arm.arm directory is incorrect, = there >>>>> should be only one "arm.arm" in that path. I don't really = understand >>>>> how that value comes to pass, though. When I put an echo = statement just >>>>> before the make install, which shows the values of ${_tool} and >>>>> ${WORLDTMP}, it prints: >>>>>=20 >>>>> DEBUG: _tool=3Dgnu/usr.bin/texinfo/makeinfo, = WORLDTMP=3D/usr/obj/arm.arm/arm.arm/usr/src/tmp >>>>>=20 >>>>> So for some strange reason, ${WORLDTMP} is incorrect at that = point? I >>>>> think something is appending one path component too many... >>>>>=20 >>>>> -Dimitry >>>>>=20 >>>>=20 >>>> try TARGET_ARCH=3Darm >>>=20 >>> No, that does not help, unfortunately. The problem seems to be that = in >>> Makefile.inc1, TMAKE is passing MAKEOBJDIRPREFIX=3D${OBJTREE} via = its >>> environment, and this changes the value of WORLDTMP to an incorrect >>> value. >>>=20 >>> At first it looked like I could just force the correct WORLDTMP = value >>> via the command line instead, e.g. like this: >>>=20 >>> Index: Makefile.inc1 >>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>> --- Makefile.inc1 (revision 276480) >>> +++ Makefile.inc1 (working copy) >>> @@ -270,6 +270,7 @@ >>> TMAKE=3D MAKEOBJDIRPREFIX=3D${OBJTREE} \ >>> ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ >>> TARGET=3D${TARGET} TARGET_ARCH=3D${TARGET_ARCH} \ >>> + WORLDTMP=3D${WORLDTMP} \ >>> DESTDIR=3D \ >>> BOOTSTRAPPING=3D${OSRELDATE} \ >>> SSP_CFLAGS=3D \ >>>=20 >>> However, this leads to other problems further down the road, where = it >>> gets errors installing parts of libllvmsupport and tblgen. >>>=20 >>> So at this point, non-native builds with MK_INFO=3Dyes are broken. >>>=20 >>> -Dimitry >>>=20 >>=20 >> You seem to be implying that the whole process of cross building is >> broken, but it's not. I do this all day long every day. "make >> TARGET_ARCH=3Darm [make targets and other vars here]" works. Do you = have >> something in make.conf or src.conf causing problems? >=20 > No, just MK_INFO=3Dyes, as I said. That is what Garrett tried to fix = in > this commit, but which only works for native builds. >=20 > I'll be coming up with a fix shortly. OBJTREE is being populated with TARGET.TARGET_ARCH twice=85 That=92s the = bug. Unfortunately this commit only made this issue apparent. Sorry for not = testing with a non-native build :(... --Apple-Mail=_B4264039-AFEA-424E-8BCB-1A18C295090C Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJUpZQjAAoJEMZr5QU6S73encYH/0X0WdzM7gxItyi2y2674dzQ gZJ1G77uHxq2z5OwkmuTSfdoRTRG+1QpP9HK/pFMZxCT1MBMEvUap9i1MTkwIYHH 6XJXzgf5TmoGOZ82pyqFG8yeotnUNV5q6kjkvWtegQGBA9Dr83UXyPXYMj/OFE5H 32FT0hAwN+6m19U5Xkimeh9ijBTebN5oK34+P4LrPuPOc++c7YJgLwSte3ELh7+l PTrjfaI3gfzeaN/kJtZOy/jnBtKGo9Ji8HrksLfnO0/Yrj8relAfhWHUfMrMdiYE Ix7qwE+OfDvfJ1UCjEAHRfbmELvybaTuna4DQpNJV0bAgRgHD+nfYoBIToVdyx0= =CjyP -----END PGP SIGNATURE----- --Apple-Mail=_B4264039-AFEA-424E-8BCB-1A18C295090C-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 18:41:35 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 35CDE774; Thu, 1 Jan 2015 18:41:35 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 21E90969; Thu, 1 Jan 2015 18:41:35 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01IfZ50086343; Thu, 1 Jan 2015 18:41:35 GMT (envelope-from dchagin@FreeBSD.org) Received: (from dchagin@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01IfYbO086342; Thu, 1 Jan 2015 18:41:34 GMT (envelope-from dchagin@FreeBSD.org) Message-Id: <201501011841.t01IfYbO086342@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dchagin set sender to dchagin@FreeBSD.org using -f From: Dmitry Chagin Date: Thu, 1 Jan 2015 18:41:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276509 - head/sys/i386/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 18:41:35 -0000 Author: dchagin Date: Thu Jan 1 18:41:34 2015 New Revision: 276509 URL: https://svnweb.freebsd.org/changeset/base/276509 Log: Correct an argument status of wait4 syscall for Linuxulator. Forgot about i386. MFC after: 1 week Modified: head/sys/i386/linux/syscalls.master Modified: head/sys/i386/linux/syscalls.master ============================================================================== --- head/sys/i386/linux/syscalls.master Thu Jan 1 18:37:03 2015 (r276508) +++ head/sys/i386/linux/syscalls.master Thu Jan 1 18:41:34 2015 (r276509) @@ -208,7 +208,7 @@ 112 AUE_NULL UNIMPL idle 113 AUE_NULL STD { int linux_vm86old(void); } 114 AUE_WAIT4 STD { int linux_wait4(l_pid_t pid, \ - l_uint *status, l_int options, \ + l_int *status, l_int options, \ struct l_rusage *rusage); } 115 AUE_SWAPOFF STD { int linux_swapoff(void); } 116 AUE_NULL STD { int linux_sysinfo(struct l_sysinfo *info); } From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 18:42:41 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F121C8B0; Thu, 1 Jan 2015 18:42:40 +0000 (UTC) Received: from mail-pd0-x22e.google.com (mail-pd0-x22e.google.com [IPv6:2607:f8b0:400e:c02::22e]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B28B6978; Thu, 1 Jan 2015 18:42:40 +0000 (UTC) Received: by mail-pd0-f174.google.com with SMTP id fp1so22458407pdb.5; Thu, 01 Jan 2015 10:42:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :message-id:references:to; bh=QY1gv2MvFuE142gvZsvsMwjmYDDdAcv4sDBWlsxIsrs=; b=W8J3Sd12eKa+HCXtun5Za0/jqDqYUwRy4Xqkj6rW5690odWVr7w88OvZOGtFLgdVuf TMDXaAbdkrlAGuahUJYOsWPUx2uch4QtwFXwZE8lhwyh/fWOJWrNB1kslmElkzkUE5e1 Xp0H5D1ULnlX3v+lP2CD25GNpZTUIpcRx76ekM3vMqUIEaVoGUiNQ56IN3cyPqbFrVKz YHqPHhYup+rNtUMyg3DWnft2hGgHhnHdSixmb1GhZ7MhUInoXSPt/vszhc8gr+dleL6E YiXZlT6MC8NvAGqWkeIwWE4w/vw3c/00cAQbjnuCvW0+TUqPYkViZo7Q/pqGRP7prxU1 pxnw== X-Received: by 10.69.1.37 with SMTP id bd5mr48833164pbd.129.1420137760177; Thu, 01 Jan 2015 10:42:40 -0800 (PST) Received: from ?IPv6:2601:8:ab80:7d6:6d22:f632:3b17:f5d8? ([2601:8:ab80:7d6:6d22:f632:3b17:f5d8]) by mx.google.com with ESMTPSA id k4sm44399219pbq.74.2015.01.01.10.42.39 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 01 Jan 2015 10:42:39 -0800 (PST) Content-Type: multipart/signed; boundary="Apple-Mail=_17517AC4-BB38-49AE-AF72-032EBD55C542"; protocol="application/pgp-signature"; micalg=pgp-sha512 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: svn commit: r276052 - head From: Garrett Cooper In-Reply-To: Date: Thu, 1 Jan 2015 10:42:38 -0800 Message-Id: References: <201412220452.sBM4qPAx096443@svn.freebsd.org> <68874DE1-3EAE-4A4D-9760-7661DA7AE846@FreeBSD.org> <1420130463.85983.0.camel@freebsd.org> <9A1C084E-B491-4581-A21C-AAB82687C588@FreeBSD.org> <1420133565.85983.5.camel@freebsd.org> To: Dimitry Andric X-Mailer: Apple Mail (2.1878.6) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers , Garrett Cooper , Ian Lepore X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 18:42:41 -0000 --Apple-Mail=_17517AC4-BB38-49AE-AF72-032EBD55C542 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 On Jan 1, 2015, at 10:38, Garrett Cooper wrote: > On Jan 1, 2015, at 9:50, Dimitry Andric wrote: >=20 >> On 01 Jan 2015, at 18:32, Ian Lepore wrote: >>>=20 >>> On Thu, 2015-01-01 at 18:14 +0100, Dimitry Andric wrote: >>>> On 01 Jan 2015, at 17:41, Ian Lepore wrote: >>>>>=20 >>>>> On Thu, 2015-01-01 at 16:50 +0100, Dimitry Andric wrote: >>>>>> On 22 Dec 2014, at 05:52, Garrett Cooper = wrote: >>>>>>>=20 >>>>>>> Author: ngie >>>>>>> Date: Mon Dec 22 04:52:24 2014 >>>>>>> New Revision: 276052 >>>>>>> URL: https://svnweb.freebsd.org/changeset/base/276052 >>>>>>>=20 >>>>>>> Log: >>>>>>> Build selective portions of gnu/usr.bin/texinfo as part of = build-tools to >>>>>>> ensure that building on a host without makeinfo (i.e. a host = where >>>>>>> make delete-old -DWITHOUT_INFO was run), then building with = MK_INFO =3D=3D yes >>>>>>> doesn't manifest in build errors when building info pages >>>>>> .. >>>>>>> @@ -1398,6 +1403,16 @@ build-tools: .MAKE >>>>>>> ${MAKE} DIRPRFX=3D${_tool}/ depend && \ >>>>>>> ${MAKE} DIRPRFX=3D${_tool}/ all >>>>>>> .endfor >>>>>>> +.for _tool in \ >>>>>>> + ${_texinfo} >>>>>>> + ${_+_}@${ECHODIR} "=3D=3D=3D> ${_tool} = (obj,depend,all)"; \ >>>>>>> + cd ${.CURDIR}/${_tool} && \ >>>>>>> + ${MAKE} DIRPRFX=3D${_tool}/ obj && \ >>>>>>> + ${MAKE} DIRPRFX=3D${_tool}/ depend && \ >>>>>>> + ${MAKE} DIRPRFX=3D${_tool}/ all && \ >>>>>>> + ${MAKE} DIRPRFX=3D${_tool}/ install = DESTDIR=3D${WORLDTMP} >>>>>>> +.endfor >>>>>>=20 >>>>>> Strangely, this hunk seems to work incorrectly for non-native = builds. >>>>>> For example, I tried a TARGET=3Darm buildworld just now, and that = dies >>>>>> with the following error: >>>>>>=20 >>>>>> [...] >>>>>>>>> stage 2.3: build tools >>>>>> [...] >>>>>> =3D=3D=3D> gnu/usr.bin/texinfo/makeinfo (obj,depend,all,install) >>>>>> [...] >>>>>> gzip -cn = /usr/src/gnu/usr.bin/texinfo/makeinfo/../../../../contrib/texinfo/doc/make= info.1 > makeinfo.1.gz >>>>>> sh /usr/src/tools/install.sh -s -o root -g wheel -m 555 = makeinfo /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo >>>>>> install: /usr/obj/arm.arm/arm.arm/usr/src/tmp/usr/bin/makeinfo: = No such file or directory >>>>>> *** Error code 71 >>>>>>=20 >>>>>> Specifically, the /usr/obj/arm.arm/arm.arm directory is = incorrect, there >>>>>> should be only one "arm.arm" in that path. I don't really = understand >>>>>> how that value comes to pass, though. When I put an echo = statement just >>>>>> before the make install, which shows the values of ${_tool} and >>>>>> ${WORLDTMP}, it prints: >>>>>>=20 >>>>>> DEBUG: _tool=3Dgnu/usr.bin/texinfo/makeinfo, = WORLDTMP=3D/usr/obj/arm.arm/arm.arm/usr/src/tmp >>>>>>=20 >>>>>> So for some strange reason, ${WORLDTMP} is incorrect at that = point? I >>>>>> think something is appending one path component too many... >>>>>>=20 >>>>>> -Dimitry >>>>>>=20 >>>>>=20 >>>>> try TARGET_ARCH=3Darm >>>>=20 >>>> No, that does not help, unfortunately. The problem seems to be = that in >>>> Makefile.inc1, TMAKE is passing MAKEOBJDIRPREFIX=3D${OBJTREE} via = its >>>> environment, and this changes the value of WORLDTMP to an incorrect >>>> value. >>>>=20 >>>> At first it looked like I could just force the correct WORLDTMP = value >>>> via the command line instead, e.g. like this: >>>>=20 >>>> Index: Makefile.inc1 >>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>>> --- Makefile.inc1 (revision 276480) >>>> +++ Makefile.inc1 (working copy) >>>> @@ -270,6 +270,7 @@ >>>> TMAKE=3D MAKEOBJDIRPREFIX=3D${OBJTREE} \ >>>> ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ >>>> TARGET=3D${TARGET} TARGET_ARCH=3D${TARGET_ARCH} \ >>>> + WORLDTMP=3D${WORLDTMP} \ >>>> DESTDIR=3D \ >>>> BOOTSTRAPPING=3D${OSRELDATE} \ >>>> SSP_CFLAGS=3D \ >>>>=20 >>>> However, this leads to other problems further down the road, where = it >>>> gets errors installing parts of libllvmsupport and tblgen. >>>>=20 >>>> So at this point, non-native builds with MK_INFO=3Dyes are broken. >>>>=20 >>>> -Dimitry >>>>=20 >>>=20 >>> You seem to be implying that the whole process of cross building is >>> broken, but it's not. I do this all day long every day. "make >>> TARGET_ARCH=3Darm [make targets and other vars here]" works. Do you = have >>> something in make.conf or src.conf causing problems? >>=20 >> No, just MK_INFO=3Dyes, as I said. That is what Garrett tried to fix = in >> this commit, but which only works for native builds. >>=20 >> I'll be coming up with a fix shortly. >=20 > OBJTREE is being populated with TARGET.TARGET_ARCH twice=85 That=92s = the bug. >=20 > Unfortunately this commit only made this issue apparent. Sorry for not = testing with a non-native build :(... I suspect this will fix it. Going to do a tinderbox run then I=92ll put = it out for review: Index: Makefile.inc1 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- Makefile.inc1 (revision 276492) +++ Makefile.inc1 (working copy) @@ -267,8 +267,7 @@ MK_LLDB=3Dno MK_TESTS=3Dno =20 # build-tools stage -TMAKE=3D MAKEOBJDIRPREFIX=3D${OBJTREE} \ - ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ +TMAKE=3D ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f = Makefile.inc1 \ TARGET=3D${TARGET} TARGET_ARCH=3D${TARGET_ARCH} \ DESTDIR=3D \ BOOTSTRAPPING=3D${OSRELDATE} \ --Apple-Mail=_17517AC4-BB38-49AE-AF72-032EBD55C542 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJUpZUeAAoJEMZr5QU6S73eU/4IAIpoTYVNHQnjBZ2ARbv3M9kx bWtuVb/6Lyzwf+sRQaqfCiTMGv/PNitb7U3AQWsuKsD4aYlsCCLkYzZDPUIb+KHe EOP6oJnbZ/vqs2ixTtnshifc+0sSYz1OuoPqSbez0UzW38X74BH0hSvSjeeOhAZZ 5GpoJY2OBfen4tJt1kfnrafPEgmtb5LZ+sVIgfHecVvBMy64B5wGMF5Yhgl49PJ3 8qRNG9xjeY4iAcQ+cMCpAxHcn/At1CQhQRgr6cBrCoSDqBLBPJozvDJIOWNKJ9xz vWr6j8vmGNfj3njivuGyv1QGEdC7En3Gh3+sGDV7CJjtLU3ulxlUMmyU+AOFMkA= =bjgR -----END PGP SIGNATURE----- --Apple-Mail=_17517AC4-BB38-49AE-AF72-032EBD55C542-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 18:43:34 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DA0789F5; Thu, 1 Jan 2015 18:43:34 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BC30B988; Thu, 1 Jan 2015 18:43:34 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01IhYZS086633; Thu, 1 Jan 2015 18:43:34 GMT (envelope-from dchagin@FreeBSD.org) Received: (from dchagin@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01IhWVK086618; Thu, 1 Jan 2015 18:43:32 GMT (envelope-from dchagin@FreeBSD.org) Message-Id: <201501011843.t01IhWVK086618@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dchagin set sender to dchagin@FreeBSD.org using -f From: Dmitry Chagin Date: Thu, 1 Jan 2015 18:43:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276510 - in head/sys: amd64/linux32 i386/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 18:43:35 -0000 Author: dchagin Date: Thu Jan 1 18:43:31 2015 New Revision: 276510 URL: https://svnweb.freebsd.org/changeset/base/276510 Log: Regen after r276508, r276509. Modified: head/sys/amd64/linux32/linux32_proto.h head/sys/amd64/linux32/linux32_syscall.h head/sys/amd64/linux32/linux32_syscalls.c head/sys/amd64/linux32/linux32_sysent.c head/sys/amd64/linux32/linux32_systrace_args.c head/sys/i386/linux/linux_proto.h head/sys/i386/linux/linux_syscall.h head/sys/i386/linux/linux_syscalls.c head/sys/i386/linux/linux_sysent.c head/sys/i386/linux/linux_systrace_args.c Modified: head/sys/amd64/linux32/linux32_proto.h ============================================================================== --- head/sys/amd64/linux32/linux32_proto.h Thu Jan 1 18:41:34 2015 (r276509) +++ head/sys/amd64/linux32/linux32_proto.h Thu Jan 1 18:43:31 2015 (r276510) @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 271743 2014-09-18 08:36:45Z bz + * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 276508 2015-01-01 18:37:03Z dchagin */ #ifndef _LINUX_SYSPROTO_H_ @@ -352,7 +352,7 @@ struct linux_vhangup_args { }; struct linux_wait4_args { char pid_l_[PADL_(l_pid_t)]; l_pid_t pid; char pid_r_[PADR_(l_pid_t)]; - char status_l_[PADL_(l_uint *)]; l_uint * status; char status_r_[PADR_(l_uint *)]; + char status_l_[PADL_(l_int *)]; l_int * status; char status_r_[PADR_(l_int *)]; char options_l_[PADL_(l_int)]; l_int options; char options_r_[PADR_(l_int)]; char rusage_l_[PADL_(struct l_rusage *)]; struct l_rusage * rusage; char rusage_r_[PADR_(struct l_rusage *)]; }; Modified: head/sys/amd64/linux32/linux32_syscall.h ============================================================================== --- head/sys/amd64/linux32/linux32_syscall.h Thu Jan 1 18:41:34 2015 (r276509) +++ head/sys/amd64/linux32/linux32_syscall.h Thu Jan 1 18:43:31 2015 (r276510) @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 271743 2014-09-18 08:36:45Z bz + * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 276508 2015-01-01 18:37:03Z dchagin */ #define LINUX_SYS_exit 1 Modified: head/sys/amd64/linux32/linux32_syscalls.c ============================================================================== --- head/sys/amd64/linux32/linux32_syscalls.c Thu Jan 1 18:41:34 2015 (r276509) +++ head/sys/amd64/linux32/linux32_syscalls.c Thu Jan 1 18:43:31 2015 (r276510) @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 271743 2014-09-18 08:36:45Z bz + * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 276508 2015-01-01 18:37:03Z dchagin */ const char *linux_syscallnames[] = { Modified: head/sys/amd64/linux32/linux32_sysent.c ============================================================================== --- head/sys/amd64/linux32/linux32_sysent.c Thu Jan 1 18:41:34 2015 (r276509) +++ head/sys/amd64/linux32/linux32_sysent.c Thu Jan 1 18:43:31 2015 (r276510) @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 271743 2014-09-18 08:36:45Z bz + * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 276508 2015-01-01 18:37:03Z dchagin */ #include "opt_compat.h" Modified: head/sys/amd64/linux32/linux32_systrace_args.c ============================================================================== --- head/sys/amd64/linux32/linux32_systrace_args.c Thu Jan 1 18:41:34 2015 (r276509) +++ head/sys/amd64/linux32/linux32_systrace_args.c Thu Jan 1 18:43:31 2015 (r276510) @@ -761,7 +761,7 @@ systrace_args(int sysnum, void *params, case 114: { struct linux_wait4_args *p = params; iarg[0] = p->pid; /* l_pid_t */ - uarg[1] = (intptr_t) p->status; /* l_uint * */ + uarg[1] = (intptr_t) p->status; /* l_int * */ iarg[2] = p->options; /* l_int */ uarg[3] = (intptr_t) p->rusage; /* struct l_rusage * */ *n_args = 4; @@ -3424,7 +3424,7 @@ systrace_entry_setargdesc(int sysnum, in p = "l_pid_t"; break; case 1: - p = "l_uint *"; + p = "l_int *"; break; case 2: p = "l_int"; Modified: head/sys/i386/linux/linux_proto.h ============================================================================== --- head/sys/i386/linux/linux_proto.h Thu Jan 1 18:41:34 2015 (r276509) +++ head/sys/i386/linux/linux_proto.h Thu Jan 1 18:43:31 2015 (r276510) @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: head/sys/i386/linux/syscalls.master 271743 2014-09-18 08:36:45Z bz + * created from FreeBSD: head/sys/i386/linux/syscalls.master 276509 2015-01-01 18:41:34Z dchagin */ #ifndef _LINUX_SYSPROTO_H_ @@ -355,7 +355,7 @@ struct linux_vm86old_args { }; struct linux_wait4_args { char pid_l_[PADL_(l_pid_t)]; l_pid_t pid; char pid_r_[PADR_(l_pid_t)]; - char status_l_[PADL_(l_uint *)]; l_uint * status; char status_r_[PADR_(l_uint *)]; + char status_l_[PADL_(l_int *)]; l_int * status; char status_r_[PADR_(l_int *)]; char options_l_[PADL_(l_int)]; l_int options; char options_r_[PADR_(l_int)]; char rusage_l_[PADL_(struct l_rusage *)]; struct l_rusage * rusage; char rusage_r_[PADR_(struct l_rusage *)]; }; Modified: head/sys/i386/linux/linux_syscall.h ============================================================================== --- head/sys/i386/linux/linux_syscall.h Thu Jan 1 18:41:34 2015 (r276509) +++ head/sys/i386/linux/linux_syscall.h Thu Jan 1 18:43:31 2015 (r276510) @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: head/sys/i386/linux/syscalls.master 271743 2014-09-18 08:36:45Z bz + * created from FreeBSD: head/sys/i386/linux/syscalls.master 276509 2015-01-01 18:41:34Z dchagin */ #define LINUX_SYS_exit 1 Modified: head/sys/i386/linux/linux_syscalls.c ============================================================================== --- head/sys/i386/linux/linux_syscalls.c Thu Jan 1 18:41:34 2015 (r276509) +++ head/sys/i386/linux/linux_syscalls.c Thu Jan 1 18:43:31 2015 (r276510) @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: head/sys/i386/linux/syscalls.master 271743 2014-09-18 08:36:45Z bz + * created from FreeBSD: head/sys/i386/linux/syscalls.master 276509 2015-01-01 18:41:34Z dchagin */ const char *linux_syscallnames[] = { Modified: head/sys/i386/linux/linux_sysent.c ============================================================================== --- head/sys/i386/linux/linux_sysent.c Thu Jan 1 18:41:34 2015 (r276509) +++ head/sys/i386/linux/linux_sysent.c Thu Jan 1 18:43:31 2015 (r276510) @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: head/sys/i386/linux/syscalls.master 271743 2014-09-18 08:36:45Z bz + * created from FreeBSD: head/sys/i386/linux/syscalls.master 276509 2015-01-01 18:41:34Z dchagin */ #include Modified: head/sys/i386/linux/linux_systrace_args.c ============================================================================== --- head/sys/i386/linux/linux_systrace_args.c Thu Jan 1 18:41:34 2015 (r276509) +++ head/sys/i386/linux/linux_systrace_args.c Thu Jan 1 18:43:31 2015 (r276510) @@ -790,7 +790,7 @@ systrace_args(int sysnum, void *params, case 114: { struct linux_wait4_args *p = params; iarg[0] = p->pid; /* l_pid_t */ - uarg[1] = (intptr_t) p->status; /* l_uint * */ + uarg[1] = (intptr_t) p->status; /* l_int * */ iarg[2] = p->options; /* l_int */ uarg[3] = (intptr_t) p->rusage; /* struct l_rusage * */ *n_args = 4; @@ -3542,7 +3542,7 @@ systrace_entry_setargdesc(int sysnum, in p = "l_pid_t"; break; case 1: - p = "l_uint *"; + p = "l_int *"; break; case 2: p = "l_int"; From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 18:51:45 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 09B47C77; Thu, 1 Jan 2015 18:51:45 +0000 (UTC) Received: from tensor.andric.com (unknown [IPv6:2001:7b8:3a7:1:2d0:b7ff:fea0:8c26]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client CN "tensor.andric.com", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A404DABC; Thu, 1 Jan 2015 18:51:44 +0000 (UTC) Received: from [IPv6:2001:7b8:3a7::28eb:6a07:fcba:ed4a] (unknown [IPv6:2001:7b8:3a7:0:28eb:6a07:fcba:ed4a]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id 0732BB80A; Thu, 1 Jan 2015 19:51:40 +0100 (CET) Subject: Re: svn commit: r276052 - head Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Content-Type: multipart/signed; boundary="Apple-Mail=_790ECAC5-8231-4EE0-8D98-CA0FE250384D"; protocol="application/pgp-signature"; micalg=pgp-sha1 X-Pgp-Agent: GPGMail 2.5b4 From: Dimitry Andric In-Reply-To: Date: Thu, 1 Jan 2015 19:51:36 +0100 Message-Id: References: <201412220452.sBM4qPAx096443@svn.freebsd.org> <68874DE1-3EAE-4A4D-9760-7661DA7AE846@FreeBSD.org> <1420130463.85983.0.camel@freebsd.org> <9A1C084E-B491-4581-A21C-AAB82687C588@FreeBSD.org> <1420133565.85983.5.camel@freebsd.org> To: Garrett Cooper X-Mailer: Apple Mail (2.1993) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers , Garrett Cooper , Ian Lepore X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 18:51:45 -0000 --Apple-Mail=_790ECAC5-8231-4EE0-8D98-CA0FE250384D Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 On 01 Jan 2015, at 19:42, Garrett Cooper wrote: >=20 > On Jan 1, 2015, at 10:38, Garrett Cooper = wrote: >> On Jan 1, 2015, at 9:50, Dimitry Andric wrote: ... >>> No, just MK_INFO=3Dyes, as I said. That is what Garrett tried to = fix in >>> this commit, but which only works for native builds. >>>=20 >>> I'll be coming up with a fix shortly. >>=20 >> OBJTREE is being populated with TARGET.TARGET_ARCH twice=85 That=92s = the bug. >>=20 >> Unfortunately this commit only made this issue apparent. Sorry for = not testing with a non-native build :(... >=20 > I suspect this will fix it. Going to do a tinderbox run then I=92ll = put it out for review: >=20 > Index: Makefile.inc1 > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- Makefile.inc1 (revision 276492) > +++ Makefile.inc1 (working copy) > @@ -267,8 +267,7 @@ > MK_LLDB=3Dno MK_TESTS=3Dno >=20 > # build-tools stage > -TMAKE=3D MAKEOBJDIRPREFIX=3D${OBJTREE} \ > - ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ > +TMAKE=3D ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f = Makefile.inc1 \ > TARGET=3D${TARGET} TARGET_ARCH=3D${TARGET_ARCH} \ > DESTDIR=3D \ > BOOTSTRAPPING=3D${OSRELDATE} \ Hm, wasn't MAKEOBJDIRPREFIX set to that value on purpose, originally? And if so, won't removing it break some assumption elsewhere? That said, this was added in r54684, 15 years ago, so maybe this is slightly out of date. :-) What I've tried instead, is this: Index: Makefile.inc1 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- Makefile.inc1 (revision 276480) +++ Makefile.inc1 (working copy) @@ -270,6 +271,7 @@ TMAKE=3D MAKEOBJDIRPREFIX=3D${OBJTREE} \ ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ TARGET=3D${TARGET} TARGET_ARCH=3D${TARGET_ARCH} \ + WORLDTMP=3D${WORLDTMP} \ DESTDIR=3D \ BOOTSTRAPPING=3D${OSRELDATE} \ SSP_CFLAGS=3D \ I'm currently testing this with a buildworld, and while it isn't finished yet, it has died either, until now. :) -Dimitry --Apple-Mail=_790ECAC5-8231-4EE0-8D98-CA0FE250384D Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.26 iEYEARECAAYFAlSllzwACgkQsF6jCi4glqN7lwCfegGoLOJQ81Jceez5USsOL53J RxQAoNExZarkcqellFrgtATCSXD9Jcye =qKft -----END PGP SIGNATURE----- --Apple-Mail=_790ECAC5-8231-4EE0-8D98-CA0FE250384D-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 18:58:28 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B5D5DF1A; Thu, 1 Jan 2015 18:58:28 +0000 (UTC) Received: from mail-pd0-x234.google.com (mail-pd0-x234.google.com [IPv6:2607:f8b0:400e:c02::234]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 77A73B17; Thu, 1 Jan 2015 18:58:28 +0000 (UTC) Received: by mail-pd0-f180.google.com with SMTP id fl12so7006204pdb.39; Thu, 01 Jan 2015 10:58:28 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :message-id:references:to; bh=5P+527PijwcQQm9HB0rlLE2q5quLeyWceKY/hkrBG8Q=; b=yoNsoapEUGkU7EAHV4GuM07PDffTD4O4mbpNBbhmWFSQ7a+o21Prl+eQ/H6iVjFuKH M3azow59B182O6xn/btpUHhf970JHwX1LXN4tD4igdM3AVZZN2UAoXm5NFifazDeo+lD TPttOeZ17rHMnTE9cv5oiD2vc2VNVEoQKZQA/iQnbt8lSAZVLr1ToF2etOFk0qhOxHrt p83vKuKzIVZb8vFuZhnuS3AoPsdluHXQOxEdCdkpYGyC753dEiYl9ky4EK9xum0eH6yM hNy1qkwR2qYr2mSnJPOBjbDTtc269IrvNSDzBBNsz2uHxrAldCkUJRqu6w5VIjo4WJe1 Hc1A== X-Received: by 10.70.50.41 with SMTP id z9mr116499126pdn.31.1420138707970; Thu, 01 Jan 2015 10:58:27 -0800 (PST) Received: from ?IPv6:2601:8:ab80:7d6:6d22:f632:3b17:f5d8? ([2601:8:ab80:7d6:6d22:f632:3b17:f5d8]) by mx.google.com with ESMTPSA id bq7sm44512855pdb.50.2015.01.01.10.58.26 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 01 Jan 2015 10:58:27 -0800 (PST) Content-Type: multipart/signed; boundary="Apple-Mail=_E15451F6-07FF-41A7-B2B1-8791DB6077D4"; protocol="application/pgp-signature"; micalg=pgp-sha512 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: svn commit: r276052 - head From: Garrett Cooper In-Reply-To: Date: Thu, 1 Jan 2015 10:58:25 -0800 Message-Id: <23AC4621-7748-4724-BBDC-139E9F74CD99@gmail.com> References: <201412220452.sBM4qPAx096443@svn.freebsd.org> <68874DE1-3EAE-4A4D-9760-7661DA7AE846@FreeBSD.org> <1420130463.85983.0.camel@freebsd.org> <9A1C084E-B491-4581-A21C-AAB82687C588@FreeBSD.org> <1420133565.85983.5.camel@freebsd.org> To: Dimitry Andric X-Mailer: Apple Mail (2.1878.6) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers , Garrett Cooper , Ian Lepore X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 18:58:28 -0000 --Apple-Mail=_E15451F6-07FF-41A7-B2B1-8791DB6077D4 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 On Jan 1, 2015, at 10:51, Dimitry Andric wrote: > On 01 Jan 2015, at 19:42, Garrett Cooper = wrote: >>=20 >> On Jan 1, 2015, at 10:38, Garrett Cooper = wrote: >>> On Jan 1, 2015, at 9:50, Dimitry Andric wrote: > ... >>>> No, just MK_INFO=3Dyes, as I said. That is what Garrett tried to = fix in >>>> this commit, but which only works for native builds. >>>>=20 >>>> I'll be coming up with a fix shortly. >>>=20 >>> OBJTREE is being populated with TARGET.TARGET_ARCH twice=85 That=92s = the bug. >>>=20 >>> Unfortunately this commit only made this issue apparent. Sorry for = not testing with a non-native build :(... >>=20 >> I suspect this will fix it. Going to do a tinderbox run then I=92ll = put it out for review: >>=20 >> Index: Makefile.inc1 >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >> --- Makefile.inc1 (revision 276492) >> +++ Makefile.inc1 (working copy) >> @@ -267,8 +267,7 @@ >> MK_LLDB=3Dno MK_TESTS=3Dno >>=20 >> # build-tools stage >> -TMAKE=3D MAKEOBJDIRPREFIX=3D${OBJTREE} \ >> - ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ >> +TMAKE=3D ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f = Makefile.inc1 \ >> TARGET=3D${TARGET} TARGET_ARCH=3D${TARGET_ARCH} \ >> DESTDIR=3D \ >> BOOTSTRAPPING=3D${OSRELDATE} \ >=20 > Hm, wasn't MAKEOBJDIRPREFIX set to that value on purpose, originally? > And if so, won't removing it break some assumption elsewhere? That > said, this was added in r54684, 15 years ago, so maybe this is = slightly > out of date. :-) >=20 > What I've tried instead, is this: >=20 > Index: Makefile.inc1 > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- Makefile.inc1 (revision 276480) > +++ Makefile.inc1 (working copy) > @@ -270,6 +271,7 @@ > TMAKE=3D MAKEOBJDIRPREFIX=3D${OBJTREE} \ > ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ > TARGET=3D${TARGET} TARGET_ARCH=3D${TARGET_ARCH} \ > + WORLDTMP=3D${WORLDTMP} \ > DESTDIR=3D \ > BOOTSTRAPPING=3D${OSRELDATE} \ > SSP_CFLAGS=3D \ >=20 > I'm currently testing this with a buildworld, and while it isn't > finished yet, it has died either, until now. :) Removing MAKEOBJDIRPREFIX got me through build-tools with = TARGET/TARGET_ARCH=3Dpowerpc and a native build as well. MAKEOBJDIRPREFIX gets set above it: 190 .if ${MACHINE} =3D=3D ${TARGET} && ${MACHINE_ARCH} =3D=3D = ${TARGET_ARCH} && !defined(CROSS_BUILD_TESTING) 191 OBJTREE=3D ${MAKEOBJDIRPREFIX} 192 .else 193 OBJTREE=3D ${MAKEOBJDIRPREFIX}/${TARGET}.${TARGET_ARCH} 194 .endif ... 270 TMAKE=3D ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f = Makefile.inc1 \ That being said, my commit was probably broken in a cross-build = environment anyhow, as it was installing to ${WORLDTMP}/usr/bin, not = ${WORLDTMP}/legacy/usr/bin (the latter is where all of the build tools = go). Thanks! --Apple-Mail=_E15451F6-07FF-41A7-B2B1-8791DB6077D4 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJUpZjRAAoJEMZr5QU6S73egrsIAKZgxqxXek9TTObxzHTIvXsi +te5JglIn4If0vEnraJABJDusLSNx97HjfIuW8rery+8rkr757b98K5fzP48cNwR MV6nlk696BucClWI6Qqa2x/Pj995s/AcXFnfAIH1m9U2Y5w4tQoR20F2q5rRbIup TCaDa50l42B9pSKsn4yo1A2ovfrbugXP2knCZs6aIwS1ec4CzwkBBMUf9lUwsg+O PHjCU/2YLITRqlBWeAN2pre+9H648W4OEW1U+pn6eI5Tegu1EBFVruWWBQYxn7pb lH6Jk2XQRhJP1m0sn5TGOXJcphqgavR3oTC8FxkTdpgNftmBbace/A9o4a8a/NM= =VGrH -----END PGP SIGNATURE----- --Apple-Mail=_E15451F6-07FF-41A7-B2B1-8791DB6077D4-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 19:57:26 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2E2F0188; Thu, 1 Jan 2015 19:57:26 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 00594662D8; Thu, 1 Jan 2015 19:57:26 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01JvPRV020824; Thu, 1 Jan 2015 19:57:25 GMT (envelope-from dchagin@FreeBSD.org) Received: (from dchagin@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01JvPvx020823; Thu, 1 Jan 2015 19:57:25 GMT (envelope-from dchagin@FreeBSD.org) Message-Id: <201501011957.t01JvPvx020823@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dchagin set sender to dchagin@FreeBSD.org using -f From: Dmitry Chagin Date: Thu, 1 Jan 2015 19:57:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276511 - head/sys/compat/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 19:57:26 -0000 Author: dchagin Date: Thu Jan 1 19:57:24 2015 New Revision: 276511 URL: https://svnweb.freebsd.org/changeset/base/276511 Log: Fix Clang warning: passing 'unsigned int *' to parameter of type 'int *' converts between pointers to integer types with different sign. MFC after: 1 week Modified: head/sys/compat/linux/linux_futex.c Modified: head/sys/compat/linux/linux_futex.c ============================================================================== --- head/sys/compat/linux/linux_futex.c Thu Jan 1 18:43:31 2015 (r276510) +++ head/sys/compat/linux/linux_futex.c Thu Jan 1 19:57:24 2015 (r276511) @@ -175,11 +175,12 @@ LIN_SDT_PROBE_DEFINE2(futex, linux_get_r LIN_SDT_PROBE_DEFINE1(futex, linux_get_robust_list, copyout_error, "int"); LIN_SDT_PROBE_DEFINE1(futex, linux_get_robust_list, return, "int"); LIN_SDT_PROBE_DEFINE3(futex, handle_futex_death, entry, "struct proc *", - "uint32_t *", "int"); + "uint32_t *", "unsigned int"); LIN_SDT_PROBE_DEFINE1(futex, handle_futex_death, copyin_error, "int"); LIN_SDT_PROBE_DEFINE1(futex, handle_futex_death, return, "int"); LIN_SDT_PROBE_DEFINE3(futex, fetch_robust_entry, entry, - "struct linux_robust_list **", "struct linux_robust_list **", "int *"); + "struct linux_robust_list **", "struct linux_robust_list **", + "unsigned int *"); LIN_SDT_PROBE_DEFINE1(futex, fetch_robust_entry, copyin_error, "int"); LIN_SDT_PROBE_DEFINE1(futex, fetch_robust_entry, return, "int"); LIN_SDT_PROBE_DEFINE1(futex, release_futexes, entry, "struct proc *"); @@ -1100,7 +1101,7 @@ linux_get_robust_list(struct thread *td, } static int -handle_futex_death(struct proc *p, uint32_t *uaddr, int pi) +handle_futex_death(struct proc *p, uint32_t *uaddr, unsigned int pi) { uint32_t uval, nval, mval; struct futex *f; @@ -1149,7 +1150,7 @@ retry: static int fetch_robust_entry(struct linux_robust_list **entry, - struct linux_robust_list **head, int *pi) + struct linux_robust_list **head, unsigned int *pi) { l_ulong uentry; int error; From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 20:21:07 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C32015C3 for ; Thu, 1 Jan 2015 20:21:07 +0000 (UTC) Received: from mail-wg0-f41.google.com (mail-wg0-f41.google.com [74.125.82.41]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4AB2666562 for ; Thu, 1 Jan 2015 20:21:07 +0000 (UTC) Received: by mail-wg0-f41.google.com with SMTP id y19so23536323wgg.0 for ; Thu, 01 Jan 2015 12:20:59 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to :subject:references:in-reply-to:content-type; bh=VG+wSgJGHTTt/iB29GOL1pk0Hsp8+1ugLxXst/aY3Xs=; b=gx/ht1/8bJ6wblxe62PW97xpFIIfk7moA5ek6CH0Geu78l5WU833hLJtggzKiIdfiF JwhFLZRK2JvZLpF64WSW4LSeGxJV+CJhYcEs/K2YkDsrGB3gIut1fRoK4IHijLeQS+cE IJg5zs1Q3i+KJc5lC2I19SVEWSEO4HblIewiykv7MWbwlmFLBAzPIUgWME9beS0R61GO unmLaaCTr4CSNyjVyYzgLUOKdoFdVjyCYLBOw0ELyd5yA7wrQMP9y4cEUA8iT4y9gC4N m/QJFPX79alJbLqdhOzq1GrrbCcQ4QHcRuDaP84qHjPK1HkX8VlJ+3bxB399Vl/uGf5W pHhQ== X-Gm-Message-State: ALoCoQlH80il//g7pTnFqDncfHZ24ieYP4MohtM9V1f3NPVCdtlI2iCWYgD2NkvdmQKBac1YxqWr X-Received: by 10.194.189.138 with SMTP id gi10mr147062767wjc.86.1420143659458; Thu, 01 Jan 2015 12:20:59 -0800 (PST) Received: from [10.10.1.68] (82-69-141-170.dsl.in-addr.zen.co.uk. [82.69.141.170]) by mx.google.com with ESMTPSA id nj9sm51787558wic.10.2015.01.01.12.20.58 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 01 Jan 2015 12:20:58 -0800 (PST) Message-ID: <54A5AC21.5070802@multiplay.co.uk> Date: Thu, 01 Jan 2015 20:20:49 +0000 From: Steven Hartland User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 MIME-Version: 1.0 To: Xin Li , d@delphij.net, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r276123 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs References: <201412230931.sBN9VPMK017968@svn.freebsd.org> <54A35B88.9090102@delphij.net> <54A39153.8040905@freebsd.org> <54A3ACEF.70905@delphij.net> In-Reply-To: <54A3ACEF.70905@delphij.net> Content-Type: multipart/mixed; boundary="------------070607090801080704000405" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 20:21:07 -0000 This is a multi-part message in MIME format. --------------070607090801080704000405 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit On 31/12/2014 07:59, Xin Li wrote: > Hi, Steven, > > On 12/30/14 22:01, Steven Hartland wrote: >> On 31/12/2014 02:12, Xin Li wrote: >>> On 12/23/14 01:31, Steven Hartland wrote: >>>> Author: smh >>>> Date: Tue Dec 23 09:31:24 2014 >>>> New Revision: 276123 >>>> URL: https://svnweb.freebsd.org/changeset/base/276123 >>>> >>>> Log: >>>> Always sync the global ZFS config cache to reflect the new mosconfig >>>> This fixes out of date zpool.cache for root pools, which can >>>> cause issues >>>> such as confusion of zdb etc. >>>> MFC after: 1 month >>>> >>>> Modified: >>>> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >>>> >>>> Modified: >>>> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >>>> ============================================================================== >>>> >>>> --- >>>> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >>>> Tue Dec 23 08:51:30 2014 (r276122) >>>> +++ >>>> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >>>> Tue Dec 23 09:31:24 2014 (r276123) >>>> @@ -536,8 +536,7 @@ spa_config_update(spa_t *spa, int what) >>>> /* >>>> * Update the global config cache to reflect the new mosconfig. >>>> */ >>>> - if (!spa->spa_is_root) >>>> - spa_config_sync(spa, B_FALSE, what != SPA_CONFIG_UPDATE_POOL); >>>> + spa_config_sync(spa, B_FALSE, what != SPA_CONFIG_UPDATE_POOL); >>>> if (what == SPA_CONFIG_UPDATE_POOL) >>>> spa_config_update(spa, SPA_CONFIG_UPDATE_VDEVS); >>> It seems like that this change breaks systems where not all pools are >>> available (e.g. some of pools are encrypted) at boot time, by removing >>> all these pools from the cache file. >>> >>> As a result, on the next boot, these pools would not be imported even >>> when the devices are available (geli attached), and reverting this >>> change would restore the system to its previous behavior. >>> >>> Perhaps it have exposed an existing bug? >> I've managed to reproduce this here with mdX backed test pools, and >> looking into it this is due to spa_config_sync: >> >> /* >> * Skip over our own pool if we're about to remove >> * ourselves from the spa namespace or any pool >> that >> * is readonly. Since we cannot guarantee that a >> * readonly pool would successfully import upon >> reboot, >> * we don't allow them to be written to the >> cache file. >> */ >> if ((spa == target && removing) || >> !spa_writeable(spa)) { >> continue; >> } >> >> This was added by upstream: >> https://github.com/illumos/illumos-gate/commit/fb02ae025247e3b662600e5a9c1b4c33ecab7d72 >> >> https://www.illumos.org/issues/3639 >> >> It seems the desired behavior was to exclude read only pools, to prevent >> them being mounted writable on reboot, but the check is too wide and >> also excludes unavailable pools too. >> >> The attached patch corrects the test to only check writable on active >> pools so I believe should fix the issue your seeing. >> >> If you can test it and lmk that would be great. > This is an improvement (the attaching of pool is now working) but the > cached configuration is somewhat corrupted, it shows many lines of > vdev_stats[] contents. > > I'll take a look at the code tomorrow and see if I can do some > instruments and possibly figure out the underlying issue. > > Cheers, Looks like the spa_config_sync makes the assumption that the last call to spa_config_generate was done with getstats = 0. This is now an invalid assumption so we need to ensure that stats are removed from the config nvl before persisting to disk. The attached patch, which supersedes the last one I sent, fixes that in my tests here. Let me know if it fixes your test case too? Regards Steve --------------070607090801080704000405 Content-Type: text/plain; charset=windows-1252; name="zpool-cache.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="zpool-cache.patch" Index: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c =================================================================== --- sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c (revision 276123) +++ sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c (working copy) @@ -140,6 +140,26 @@ out: kobj_close_file(file); } +static void +spa_config_clean(nvlist_t *nvl) +{ + nvlist_t **child; + nvlist_t *nvroot = NULL; + uint_t c, children; + + if (nvlist_lookup_nvlist_array(nvl, ZPOOL_CONFIG_CHILDREN, &child, + &children) == 0) { + for (c = 0; c < children; c++) + spa_config_clean(child[c]); + } + + if (nvlist_lookup_nvlist(nvl, ZPOOL_CONFIG_VDEV_TREE, &nvroot) == 0) + spa_config_clean(nvroot); + + nvlist_remove(nvl, ZPOOL_CONFIG_VDEV_STATS, DATA_TYPE_UINT64_ARRAY); + nvlist_remove(nvl, ZPOOL_CONFIG_SCAN_STATS, DATA_TYPE_UINT64_ARRAY); +} + static int spa_config_write(spa_config_dirent_t *dp, nvlist_t *nvl) { @@ -233,6 +253,7 @@ spa_config_sync(spa_t *target, boolean_t removing, */ nvl = NULL; while ((spa = spa_next(spa)) != NULL) { + nvlist_t *nvroot = NULL; /* * Skip over our own pool if we're about to remove * ourselves from the spa namespace or any pool that @@ -241,7 +262,8 @@ spa_config_sync(spa_t *target, boolean_t removing, * we don't allow them to be written to the cache file. */ if ((spa == target && removing) || - !spa_writeable(spa)) + (spa_state(spa) == POOL_STATE_ACTIVE && + !spa_writeable(spa))) continue; mutex_enter(&spa->spa_props_lock); @@ -260,6 +282,9 @@ spa_config_sync(spa_t *target, boolean_t removing, VERIFY(nvlist_add_nvlist(nvl, spa->spa_name, spa->spa_config) == 0); mutex_exit(&spa->spa_props_lock); + + if (nvlist_lookup_nvlist(nvl, spa->spa_name, &nvroot) == 0) + spa_config_clean(nvroot); } error = spa_config_write(dp, nvl); --------------070607090801080704000405-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 20:53:39 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 89BA9C84; Thu, 1 Jan 2015 20:53:39 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 75ADDA8C; Thu, 1 Jan 2015 20:53:39 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01KrdDO049216; Thu, 1 Jan 2015 20:53:39 GMT (envelope-from dchagin@FreeBSD.org) Received: (from dchagin@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01Krd1K049215; Thu, 1 Jan 2015 20:53:39 GMT (envelope-from dchagin@FreeBSD.org) Message-Id: <201501012053.t01Krd1K049215@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dchagin set sender to dchagin@FreeBSD.org using -f From: Dmitry Chagin Date: Thu, 1 Jan 2015 20:53:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276512 - head/sys/compat/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 20:53:39 -0000 Author: dchagin Date: Thu Jan 1 20:53:38 2015 New Revision: 276512 URL: https://svnweb.freebsd.org/changeset/base/276512 Log: Fix Clang -Wpointer-sign warnings. MFC after: 1 week Modified: head/sys/compat/linux/linux_socket.c Modified: head/sys/compat/linux/linux_socket.c ============================================================================== --- head/sys/compat/linux/linux_socket.c Thu Jan 1 19:57:24 2015 (r276511) +++ head/sys/compat/linux/linux_socket.c Thu Jan 1 20:53:38 2015 (r276512) @@ -573,7 +573,8 @@ linux_sendit(struct thread *td, int s, s static int linux_check_hdrincl(struct thread *td, int s) { - int error, optval, size_val; + int error, optval; + socklen_t size_val; size_val = sizeof(optval); error = kern_getsockopt(td, s, IPPROTO_IP, IP_HDRINCL, @@ -932,7 +933,7 @@ linux_getpeername(struct thread *td, str bsd_args.fdes = args->s; bsd_args.asa = (struct sockaddr *)PTRIN(args->addr); - bsd_args.alen = (int *)PTRIN(args->namelen); + bsd_args.alen = (socklen_t *)PTRIN(args->namelen); error = sys_getpeername(td, &bsd_args); bsd_to_linux_sockaddr((struct sockaddr *)bsd_args.asa); if (error) From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 21:14:02 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 08FA51F8; Thu, 1 Jan 2015 21:14:02 +0000 (UTC) Received: from mail-pd0-x22f.google.com (mail-pd0-x22f.google.com [IPv6:2607:f8b0:400e:c02::22f]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BE5D4D32; Thu, 1 Jan 2015 21:14:01 +0000 (UTC) Received: by mail-pd0-f175.google.com with SMTP id g10so22754985pdj.20; Thu, 01 Jan 2015 13:14:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :message-id:references:to; bh=W6AikZ5N4ncFurjnfOvlwNEshIrTi5uUvzmvVmIErv0=; b=Auk7yCAJOt1VDNWgBtVFuB7Y76HSLlFenzc370Yng3JTpcSG16UkzABTrASaupvatY t+FjSqr3uZYRx+rYc64y3OInCmaU3w/L76E7BDzWiQcR7/fBQo7GMgb8j1Z07OD9AM6J PARh4Nt2FaooGyT1j2k/4lGfd9LVCPzWQ0XZAzxIvb2md58P+DQfhXpapdjK/Z8OHpYl uoMEHaMYBbNANDa9PtcVhlcBOCq4DxFVbopu0+2oP6tWSrKef8mxSBKktu26lS/E7Pm2 dnhqkT2zYyUI/ixrw1B7Q45vteAwarcuYOTo5uQYnAG7OnrVXpaAFhCS2X7hy+ERRefb yMFA== X-Received: by 10.68.197.8 with SMTP id iq8mr92102879pbc.66.1420146841067; Thu, 01 Jan 2015 13:14:01 -0800 (PST) Received: from ?IPv6:2601:8:ab80:7d6:6d22:f632:3b17:f5d8? ([2601:8:ab80:7d6:6d22:f632:3b17:f5d8]) by mx.google.com with ESMTPSA id nt6sm44703136pdb.26.2015.01.01.13.13.59 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 01 Jan 2015 13:14:00 -0800 (PST) Content-Type: multipart/signed; boundary="Apple-Mail=_94D28C94-D7E1-47B9-94F7-47655A5DDC34"; protocol="application/pgp-signature"; micalg=pgp-sha512 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: svn commit: r276052 - head From: Garrett Cooper In-Reply-To: <23AC4621-7748-4724-BBDC-139E9F74CD99@gmail.com> Date: Thu, 1 Jan 2015 13:13:57 -0800 Message-Id: <00AE655C-0609-4FB0-A275-4A0B0AC9DF97@gmail.com> References: <201412220452.sBM4qPAx096443@svn.freebsd.org> <68874DE1-3EAE-4A4D-9760-7661DA7AE846@FreeBSD.org> <1420130463.85983.0.camel@freebsd.org> <9A1C084E-B491-4581-A21C-AAB82687C588@FreeBSD.org> <1420133565.85983.5.camel@freebsd.org> <23AC4621-7748-4724-BBDC-139E9F74CD99@gmail.com> To: Dimitry Andric X-Mailer: Apple Mail (2.1878.6) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers , Garrett Cooper , Ian Lepore X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 21:14:02 -0000 --Apple-Mail=_94D28C94-D7E1-47B9-94F7-47655A5DDC34 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 On Jan 1, 2015, at 10:58, Garrett Cooper wrote: > On Jan 1, 2015, at 10:51, Dimitry Andric wrote: >=20 >> On 01 Jan 2015, at 19:42, Garrett Cooper = wrote: >>>=20 >>> On Jan 1, 2015, at 10:38, Garrett Cooper = wrote: >>>> On Jan 1, 2015, at 9:50, Dimitry Andric wrote: >> ... >>>>> No, just MK_INFO=3Dyes, as I said. That is what Garrett tried to = fix in >>>>> this commit, but which only works for native builds. >>>>>=20 >>>>> I'll be coming up with a fix shortly. >>>>=20 >>>> OBJTREE is being populated with TARGET.TARGET_ARCH twice=85 That=92s = the bug. >>>>=20 >>>> Unfortunately this commit only made this issue apparent. Sorry for = not testing with a non-native build :(... >>>=20 >>> I suspect this will fix it. Going to do a tinderbox run then I=92ll = put it out for review: >>>=20 >>> Index: Makefile.inc1 >>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>> --- Makefile.inc1 (revision 276492) >>> +++ Makefile.inc1 (working copy) >>> @@ -267,8 +267,7 @@ >>> MK_LLDB=3Dno MK_TESTS=3Dno >>>=20 >>> # build-tools stage >>> -TMAKE=3D MAKEOBJDIRPREFIX=3D${OBJTREE} \ >>> - ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ >>> +TMAKE=3D ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f = Makefile.inc1 \ >>> TARGET=3D${TARGET} TARGET_ARCH=3D${TARGET_ARCH} \ >>> DESTDIR=3D \ >>> BOOTSTRAPPING=3D${OSRELDATE} \ >>=20 >> Hm, wasn't MAKEOBJDIRPREFIX set to that value on purpose, originally? >> And if so, won't removing it break some assumption elsewhere? That >> said, this was added in r54684, 15 years ago, so maybe this is = slightly >> out of date. :-) >>=20 >> What I've tried instead, is this: >>=20 >> Index: Makefile.inc1 >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >> --- Makefile.inc1 (revision 276480) >> +++ Makefile.inc1 (working copy) >> @@ -270,6 +271,7 @@ >> TMAKE=3D MAKEOBJDIRPREFIX=3D${OBJTREE} \ >> ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f Makefile.inc1 \ >> TARGET=3D${TARGET} TARGET_ARCH=3D${TARGET_ARCH} \ >> + WORLDTMP=3D${WORLDTMP} \ >> DESTDIR=3D \ >> BOOTSTRAPPING=3D${OSRELDATE} \ >> SSP_CFLAGS=3D \ >>=20 >> I'm currently testing this with a buildworld, and while it isn't >> finished yet, it has died either, until now. :) >=20 > Removing MAKEOBJDIRPREFIX got me through build-tools with = TARGET/TARGET_ARCH=3Dpowerpc and a native build as well. >=20 > MAKEOBJDIRPREFIX gets set above it: >=20 > 190 .if ${MACHINE} =3D=3D ${TARGET} && ${MACHINE_ARCH} =3D=3D = ${TARGET_ARCH} && !defined(CROSS_BUILD_TESTING) > 191 OBJTREE=3D ${MAKEOBJDIRPREFIX} > 192 .else > 193 OBJTREE=3D ${MAKEOBJDIRPREFIX}/${TARGET}.${TARGET_ARCH} > 194 .endif > ... > 270 TMAKE=3D ${BMAKEENV} ${MAKE} ${WORLD_FLAGS} -f = Makefile.inc1 \ >=20 > That being said, my commit was probably broken in a cross-build = environment anyhow, as it was installing to ${WORLDTMP}/usr/bin, not = ${WORLDTMP}/legacy/usr/bin (the latter is where all of the build tools = go). Oh cool. More make tinderbox broken-ness=85 = https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D196425 . --Apple-Mail=_94D28C94-D7E1-47B9-94F7-47655A5DDC34 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJUpbiXAAoJEMZr5QU6S73e8BAH/2BkEpAjOSVGedCWJBfELvIQ LuEGUIsjyIeWufd18KMWXPASz/LcHuzvVuo5i8S7ssyMNcaKQmIPFJJnqTXPOOdt tcsRMPlONT4/y+XuXLudbfpKX/gECGFJkJdB1jp2Cjto9RS6p/zpV0G5QCxj0ljt skCjBdUnVPSNyLmDIiM6AbR2keA29uwFDJFpgDgRTArdJWqcQhTU7dQ9qEa3U9Qk uMnsZXEg0IsnfhP9pQa1p/OBgcNuIZ/OnP4q1V1gvLHF893d60+xSFuzXf6PHgBe BfEVQahjFKfHS9Iflass/ydPN7EH1635VD0kFEv4sDadrXsTkvKMsADhCmLAyhU= =0YgZ -----END PGP SIGNATURE----- --Apple-Mail=_94D28C94-D7E1-47B9-94F7-47655A5DDC34-- From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 22:20:20 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CFE72D91; Thu, 1 Jan 2015 22:20:20 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BB7C0645D2; Thu, 1 Jan 2015 22:20:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01MKKlB088393; Thu, 1 Jan 2015 22:20:20 GMT (envelope-from nwhitehorn@FreeBSD.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01MKK7t088392; Thu, 1 Jan 2015 22:20:20 GMT (envelope-from nwhitehorn@FreeBSD.org) Message-Id: <201501012220.t01MKK7t088392@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: nwhitehorn set sender to nwhitehorn@FreeBSD.org using -f From: Nathan Whitehorn Date: Thu, 1 Jan 2015 22:20:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276514 - head/sys/dev/ofw X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 22:20:20 -0000 Author: nwhitehorn Date: Thu Jan 1 22:20:19 2015 New Revision: 276514 URL: https://svnweb.freebsd.org/changeset/base/276514 Log: The path entry for a device tree node and its name property are usually, but not always, identical. In particular, the path entry may contain a unit address that the name does not. If the FDT node does have an explicit name property, treat that as an override of the FDT path rather than ignoring it. MFC after: 2 weeks Modified: head/sys/dev/ofw/ofw_fdt.c Modified: head/sys/dev/ofw/ofw_fdt.c ============================================================================== --- head/sys/dev/ofw/ofw_fdt.c Thu Jan 1 22:18:27 2015 (r276513) +++ head/sys/dev/ofw/ofw_fdt.c Thu Jan 1 22:20:19 2015 (r276514) @@ -222,15 +222,15 @@ ofw_fdt_getproplen(ofw_t ofw, phandle_t if (offset < 0) return (-1); - if (strcmp(propname, "name") == 0) { + len = -1; + prop = fdt_get_property(fdtp, offset, propname, &len); + + if (prop == NULL && strcmp(propname, "name") == 0) { /* Emulate the 'name' property */ fdt_get_name(fdtp, offset, &len); return (len + 1); } - len = -1; - prop = fdt_get_property(fdtp, offset, propname, &len); - return (len); } @@ -247,7 +247,9 @@ ofw_fdt_getprop(ofw_t ofw, phandle_t pac if (offset < 0) return (-1); - if (strcmp(propname, "name") == 0) { + prop = fdt_getprop(fdtp, offset, propname, &len); + + if (prop == NULL && strcmp(propname, "name") == 0) { /* Emulate the 'name' property */ name = fdt_get_name(fdtp, offset, &len); strncpy(buf, name, buflen); @@ -256,7 +258,6 @@ ofw_fdt_getprop(ofw_t ofw, phandle_t pac return (len + 1); } - prop = fdt_getprop(fdtp, offset, propname, &len); if (prop == NULL) return (-1); From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 22:26:14 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 336A6EC; Thu, 1 Jan 2015 22:26:14 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 13FF46471B; Thu, 1 Jan 2015 22:26:14 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01MQDHo091927; Thu, 1 Jan 2015 22:26:13 GMT (envelope-from nwhitehorn@FreeBSD.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01MQD2v091920; Thu, 1 Jan 2015 22:26:13 GMT (envelope-from nwhitehorn@FreeBSD.org) Message-Id: <201501012226.t01MQD2v091920@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: nwhitehorn set sender to nwhitehorn@FreeBSD.org using -f From: Nathan Whitehorn Date: Thu, 1 Jan 2015 22:26:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276515 - in head/sys/powerpc: aim conf ofw pseries X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 22:26:14 -0000 Author: nwhitehorn Date: Thu Jan 1 22:26:12 2015 New Revision: 276515 URL: https://svnweb.freebsd.org/changeset/base/276515 Log: Allow booting with both a real Open Firmware tree and a flattened version of the Open Firmware, as provided by petitboot, for example. Note that this is not quite complete, since RTAS instantiation still depends on callable firmware. MFC after: 2 weeks Modified: head/sys/powerpc/aim/mmu_oea64.c head/sys/powerpc/conf/GENERIC64 head/sys/powerpc/ofw/ofw_machdep.c head/sys/powerpc/pseries/xics.c Modified: head/sys/powerpc/aim/mmu_oea64.c ============================================================================== --- head/sys/powerpc/aim/mmu_oea64.c Thu Jan 1 22:20:19 2015 (r276514) +++ head/sys/powerpc/aim/mmu_oea64.c Thu Jan 1 22:26:12 2015 (r276515) @@ -188,6 +188,7 @@ extern unsigned char _etext[]; extern unsigned char _end[]; extern int dumpsys_minidump; +extern int ofw_real_mode; /* * Map of physical memory regions. @@ -850,7 +851,7 @@ moea64_late_bootstrap(mmu_t mmup, vm_off ihandle_t mmui; phandle_t chosen; phandle_t mmu; - size_t sz; + ssize_t sz; int i; vm_offset_t pa, va; void *dpcpu; @@ -861,15 +862,17 @@ moea64_late_bootstrap(mmu_t mmup, vm_off */ chosen = OF_finddevice("/chosen"); - if (chosen != -1 && OF_getprop(chosen, "mmu", &mmui, 4) != -1) { - mmu = OF_instance_to_package(mmui); - if (mmu == -1 || (sz = OF_getproplen(mmu, "translations")) == -1) - sz = 0; - if (sz > 6144 /* tmpstksz - 2 KB headroom */) - panic("moea64_bootstrap: too many ofw translations"); + if (!ofw_real_mode && chosen != -1 && + OF_getprop(chosen, "mmu", &mmui, 4) != -1) { + mmu = OF_instance_to_package(mmui); + if (mmu == -1 || + (sz = OF_getproplen(mmu, "translations")) == -1) + sz = 0; + if (sz > 6144 /* tmpstksz - 2 KB headroom */) + panic("moea64_bootstrap: too many ofw translations"); - if (sz > 0) - moea64_add_ofw_mappings(mmup, mmu, sz); + if (sz > 0) + moea64_add_ofw_mappings(mmup, mmu, sz); } /* Modified: head/sys/powerpc/conf/GENERIC64 ============================================================================== --- head/sys/powerpc/conf/GENERIC64 Thu Jan 1 22:20:19 2015 (r276514) +++ head/sys/powerpc/conf/GENERIC64 Thu Jan 1 22:26:12 2015 (r276515) @@ -32,6 +32,7 @@ options PS3 #Sony Playstation 3 options MAMBO #IBM Mambo Full System Simulator options PSERIES #PAPR-compliant systems (e.g. IBM p) +options FDT #Flattened Device Tree options SCHED_ULE #ULE scheduler options PREEMPTION #Enable kernel thread preemption options INET #InterNETworking Modified: head/sys/powerpc/ofw/ofw_machdep.c ============================================================================== --- head/sys/powerpc/ofw/ofw_machdep.c Thu Jan 1 22:20:19 2015 (r276514) +++ head/sys/powerpc/ofw/ofw_machdep.c Thu Jan 1 22:26:12 2015 (r276515) @@ -328,6 +328,9 @@ openfirmware_core(void *args) int result; register_t oldmsr; + if (openfirmware_entry == NULL) + return (-1); + /* * Turn off exceptions - we really don't want to end up * anywhere unexpected with PCPU set to something strange @@ -402,7 +405,12 @@ openfirmware(void *args) int result; #ifdef SMP struct ofw_rv_args rv_args; + #endif + if (openfirmware_entry == NULL) + return (-1); + + #ifdef SMP rv_args.args = args; rv_args.in_progress = 1; smp_rendezvous(smp_no_rendevous_barrier, ofw_rendezvous_dispatch, Modified: head/sys/powerpc/pseries/xics.c ============================================================================== --- head/sys/powerpc/pseries/xics.c Thu Jan 1 22:20:19 2015 (r276514) +++ head/sys/powerpc/pseries/xics.c Thu Jan 1 22:26:12 2015 (r276515) @@ -169,10 +169,7 @@ xicp_attach(device_t dev) sc->ibm_set_xive = rtas_token_lookup("ibm,set-xive"); sc->ibm_get_xive = rtas_token_lookup("ibm,get-xive"); - if (OF_getproplen(phandle, "ibm,phandle") > 0) - OF_getprop(phandle, "ibm,phandle", &phandle, sizeof(phandle)); - - powerpc_register_pic(dev, phandle, MAX_XICP_IRQS, + powerpc_register_pic(dev, OF_xref_from_node(phandle), MAX_XICP_IRQS, 1 /* Number of IPIs */, FALSE); root_pic = dev; @@ -184,12 +181,9 @@ xics_attach(device_t dev) { phandle_t phandle = ofw_bus_get_node(dev); - if (OF_getproplen(phandle, "ibm,phandle") > 0) - OF_getprop(phandle, "ibm,phandle", &phandle, sizeof(phandle)); - /* The XICP (root PIC) will handle all our interrupts */ - powerpc_register_pic(root_pic, phandle, MAX_XICP_IRQS, - 1 /* Number of IPIs */, FALSE); + powerpc_register_pic(root_pic, OF_xref_from_node(phandle), + MAX_XICP_IRQS, 1 /* Number of IPIs */, FALSE); return (0); } From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 22:44:03 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C486E3E7; Thu, 1 Jan 2015 22:44:03 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B0B1364985; Thu, 1 Jan 2015 22:44:03 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01Mi3aE001286; Thu, 1 Jan 2015 22:44:03 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01Mi3AV001285; Thu, 1 Jan 2015 22:44:03 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201501012244.t01Mi3AV001285@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Thu, 1 Jan 2015 22:44:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276516 - head/contrib/llvm/tools/clang/lib/Sema X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 22:44:03 -0000 Author: dim Date: Thu Jan 1 22:44:02 2015 New Revision: 276516 URL: https://svnweb.freebsd.org/changeset/base/276516 Log: Pull in r213790 from upstream clang trunk (by Richard Smith): PR20228: don't retain a pointer to a vector element after the container has been resized. This fixes a possible crash when compiling certain parts of libc++'s type_traits header. Modified: head/contrib/llvm/tools/clang/lib/Sema/SemaExprCXX.cpp Modified: head/contrib/llvm/tools/clang/lib/Sema/SemaExprCXX.cpp ============================================================================== --- head/contrib/llvm/tools/clang/lib/Sema/SemaExprCXX.cpp Thu Jan 1 22:26:12 2015 (r276515) +++ head/contrib/llvm/tools/clang/lib/Sema/SemaExprCXX.cpp Thu Jan 1 22:44:02 2015 (r276516) @@ -3642,12 +3642,13 @@ static bool evaluateTypeTrait(Sema &S, T if (T->isObjectType() || T->isFunctionType()) T = S.Context.getRValueReferenceType(T); OpaqueArgExprs.push_back( - OpaqueValueExpr(Args[I]->getTypeLoc().getLocStart(), + OpaqueValueExpr(Args[I]->getTypeLoc().getLocStart(), T.getNonLValueExprType(S.Context), Expr::getValueKindForType(T))); - ArgExprs.push_back(&OpaqueArgExprs.back()); } - + for (Expr &E : OpaqueArgExprs) + ArgExprs.push_back(&E); + // Perform the initialization in an unevaluated context within a SFINAE // trap at translation unit scope. EnterExpressionEvaluationContext Unevaluated(S, Sema::Unevaluated); From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 22:49:18 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9FE275D9; Thu, 1 Jan 2015 22:49:18 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 80E67649E6; Thu, 1 Jan 2015 22:49:18 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01MnIbF002058; Thu, 1 Jan 2015 22:49:18 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01MnIYv002057; Thu, 1 Jan 2015 22:49:18 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201501012249.t01MnIYv002057@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Thu, 1 Jan 2015 22:49:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276517 - head/contrib/libc++/include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 22:49:18 -0000 Author: dim Date: Thu Jan 1 22:49:17 2015 New Revision: 276517 URL: https://svnweb.freebsd.org/changeset/base/276517 Log: Pull in r200010 from upstream libc++ trunk (by Marshall Clow): Rename some internal templates to avoid conflict with complier intrinsics. __is_constructible --> __libcpp_is_constructible, __is_nothrow_constructible --> __libcpp_is_nothrow_constructible, and __is_nothrow_assignable --> __libcpp_is_nothrow_assignable. No functionality change. Pull in r206805 from upstream libc++ trunk (by Marshall Clow): Use compiler intrinsic __is_constructible if available This should fix building parts of world with -std=c++11 enabled. Reported by: Oliver Hartmann MFC after: 1 week Modified: head/contrib/libc++/include/type_traits Modified: head/contrib/libc++/include/type_traits ============================================================================== --- head/contrib/libc++/include/type_traits Thu Jan 1 22:44:02 2015 (r276516) +++ head/contrib/libc++/include/type_traits Thu Jan 1 22:49:17 2015 (r276517) @@ -2015,10 +2015,24 @@ class _LIBCPP_TYPE_VIS_ONLY result_of<_F #endif // _LIBCPP_HAS_NO_VARIADICS -#ifndef _LIBCPP_HAS_NO_VARIADICS - // template struct is_constructible; +namespace __is_construct +{ +struct __nat {}; +} + +#if __has_feature(is_constructible) + +template +struct _LIBCPP_TYPE_VIS_ONLY is_constructible + : public integral_constant + {}; + +#else + +#ifndef _LIBCPP_HAS_NO_VARIADICS + // main is_constructible test template @@ -2030,7 +2044,7 @@ false_type __is_constructible_test(__any, _Args&& ...); template -struct __is_constructible // false, _Tp is not a scalar +struct __libcpp_is_constructible // false, _Tp is not a scalar : public common_type < decltype(__is_constructible_test(declval<_Tp>(), declval<_Args>()...)) @@ -2040,7 +2054,7 @@ struct __is_constructible // false, _Tp // function types are not constructible template -struct __is_constructible +struct __libcpp_is_constructible : public false_type {}; @@ -2049,7 +2063,7 @@ struct __is_constructible -struct __is_constructible +struct __libcpp_is_constructible : public is_scalar<_Tp> {}; @@ -2064,7 +2078,7 @@ struct __is_constructible_ref }; template -struct __is_constructible +struct __libcpp_is_constructible : public common_type < decltype(__is_constructible_ref<_Tp>::__lxx(declval<_A0>())) @@ -2074,7 +2088,7 @@ struct __is_constructible -struct __is_constructible +struct __libcpp_is_constructible : public false_type {}; @@ -2082,7 +2096,7 @@ struct __is_constructible struct __is_constructible_void_check - : public __is_constructible::value || is_reference<_Tp>::value, + : public __libcpp_is_constructible::value || is_reference<_Tp>::value, _Tp, _Args...> {}; @@ -2117,21 +2131,21 @@ struct _LIBCPP_TYPE_VIS_ONLY is_construc // is default constructible template -struct __is_constructible +struct __libcpp_is_constructible : public is_constructible::type> {}; // Otherwise array types are not constructible by this syntax template -struct __is_constructible +struct __libcpp_is_constructible : public false_type {}; // Incomplete array types are not constructible template -struct __is_constructible +struct __libcpp_is_constructible : public false_type {}; @@ -2246,13 +2260,6 @@ struct __is_constructible2_void_check struct _LIBCPP_TYPE_VIS_ONLY is_constructible @@ -2317,6 +2324,7 @@ struct __is_constructible2_imp struct __is_nothrow_constructible; +template struct __libcpp_is_nothrow_constructible; template -struct __is_nothrow_constructible +struct __libcpp_is_nothrow_constructible : public integral_constant()...))> { }; template -struct __is_nothrow_constructible +struct __libcpp_is_nothrow_constructible : public false_type { }; template struct _LIBCPP_TYPE_VIS_ONLY is_nothrow_constructible - : __is_nothrow_constructible::value, _Tp, _Args...> + : __libcpp_is_nothrow_constructible::value, _Tp, _Args...> { }; template struct _LIBCPP_TYPE_VIS_ONLY is_nothrow_constructible<_Tp[_Ns]> - : __is_nothrow_constructible::value, _Tp> + : __libcpp_is_nothrow_constructible::value, _Tp> { }; @@ -2743,23 +2751,23 @@ template struct _LIBCPP_TYPE #if __has_feature(cxx_noexcept) -template struct __is_nothrow_assignable; +template struct __libcpp_is_nothrow_assignable; template -struct __is_nothrow_assignable +struct __libcpp_is_nothrow_assignable : public false_type { }; template -struct __is_nothrow_assignable +struct __libcpp_is_nothrow_assignable : public integral_constant() = _VSTD::declval<_Arg>()) > { }; template struct _LIBCPP_TYPE_VIS_ONLY is_nothrow_assignable - : public __is_nothrow_assignable::value, _Tp, _Arg> + : public __libcpp_is_nothrow_assignable::value, _Tp, _Arg> { }; @@ -2829,23 +2837,23 @@ template struct _LIBCPP_TYPE #if __has_feature(cxx_noexcept) -template struct __is_nothrow_destructible; +template struct __libcpp_is_nothrow_destructible; template -struct __is_nothrow_destructible +struct __libcpp_is_nothrow_destructible : public false_type { }; template -struct __is_nothrow_destructible +struct __libcpp_is_nothrow_destructible : public integral_constant().~_Tp()) > { }; template struct _LIBCPP_TYPE_VIS_ONLY is_nothrow_destructible - : public __is_nothrow_destructible::value, _Tp> + : public __libcpp_is_nothrow_destructible::value, _Tp> { }; From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 23:15:53 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 84BA1A55; Thu, 1 Jan 2015 23:15:53 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 703D5E9E; Thu, 1 Jan 2015 23:15:53 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01NFrtm015633; Thu, 1 Jan 2015 23:15:53 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01NFrPV015632; Thu, 1 Jan 2015 23:15:53 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201501012315.t01NFrPV015632@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Thu, 1 Jan 2015 23:15:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276518 - head/sys/arm/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 23:15:53 -0000 Author: ian Date: Thu Jan 1 23:15:52 2015 New Revision: 276518 URL: https://svnweb.freebsd.org/changeset/base/276518 Log: Rework the vpf support code so that it compiles with clang 3.4, 3.5, and gcc. Michal Meloun did most of the hard work in figuring out what would work with which compiler, I just reformated things a bit before committing. Modified: head/sys/arm/arm/vfp.c Modified: head/sys/arm/arm/vfp.c ============================================================================== --- head/sys/arm/arm/vfp.c Thu Jan 1 22:49:17 2015 (r276517) +++ head/sys/arm/arm/vfp.c Thu Jan 1 23:15:52 2015 (r276518) @@ -51,30 +51,35 @@ static struct undefined_handler vfp10_uh /* If true the VFP unit has 32 double registers, otherwise it has 16 */ static int is_d32; -/* The VFMXR command using coprocessor commands */ +/* + * About .fpu directives in this file... + * + * We should need simply .fpu vfpv3, but clang 3.5 has a quirk where setting + * vfpv3 doesn't imply that vfp2 features are also available -- both have to be + * explicitly set to get all the features of both. This is probably a bug in + * clang, so it may get fixed and require changes here some day. Other changes + * are probably coming in clang too, because there is email and open PRs + * indicating they want to completely disable the ability to use .fpu and + * similar directives in inline asm. That would be catastrophic for us, + * hopefully they come to their senses. There was also some discusion of a new + * syntax such as .push fpu=vfpv3; ...; .pop fpu; and that would be ideal for + * us, better than what we have now really. + * + * For gcc, each .fpu directive completely overrides the prior directive, unlike + * with clang, but luckily on gcc saying v3 implies all the v2 features as well. + */ + #define fmxr(reg, val) \ - __asm __volatile("mcr p10, 7, %0, " __STRING(reg) " , c0, 0" :: "r"(val)); + __asm __volatile(" .fpu vfpv2\n .fpu vfpv3\n" \ + " vmsr " __STRING(reg) ", %0" :: "r"(val)); -/* The VFMRX command using coprocessor commands */ #define fmrx(reg) \ ({ u_int val = 0;\ - __asm __volatile("mrc p10, 7, %0, " __STRING(reg) " , c0, 0" : "=r"(val));\ + __asm __volatile(" .fpu vfpv2\n .fpu vfpv3\n" \ + " vmrs %0, " __STRING(reg) : "=r"(val)); \ val; \ }) -/* - * Work around an issue with GCC where the asm it generates is not unified - * syntax and fails to assemble because it expects the ldcleq instruction in the - * form ldcl, not in the UAL form ldcl, and similar for stcleq. - */ -#ifdef __clang__ -#define LDCLNE "ldclne " -#define STCLNE "stclne " -#else -#define LDCLNE "ldcnel " -#define STCLNE "stcnel " -#endif - static u_int get_coprocessorACR(void) { @@ -103,25 +108,25 @@ vfp_init(void) coproc |= COPROC10 | COPROC11; set_coprocessorACR(coproc); - fpsid = fmrx(VFPSID); /* read the vfp system id */ - fpexc = fmrx(VFPEXC); /* read the vfp exception reg */ + fpsid = fmrx(fpsid); /* read the vfp system id */ + fpexc = fmrx(fpexc); /* read the vfp exception reg */ if (!(fpsid & VFPSID_HARDSOFT_IMP)) { vfp_exists = 1; is_d32 = 0; - PCPU_SET(vfpsid, fpsid); /* save the VFPSID */ + PCPU_SET(vfpsid, fpsid); /* save the fpsid */ vfp_arch = (fpsid & VFPSID_SUBVERSION2_MASK) >> VFPSID_SUBVERSION_OFF; if (vfp_arch >= VFP_ARCH3) { - tmp = fmrx(VMVFR0); + tmp = fmrx(mvfr0); PCPU_SET(vfpmvfr0, tmp); if ((tmp & VMVFR0_RB_MASK) == 2) is_d32 = 1; - tmp = fmrx(VMVFR1); + tmp = fmrx(mvfr1); PCPU_SET(vfpmvfr1, tmp); } @@ -161,10 +166,10 @@ vfp_bounce(u_int addr, u_int insn, struc * something tried to executate a truly invalid instruction that maps to * the VFP. */ - fpexc = fmrx(VFPEXC); + fpexc = fmrx(fpexc); if (fpexc & VFPEXC_EN) { /* Clear any exceptions */ - fmxr(VFPEXC, fpexc & ~(VFPEXC_EX | VFPEXC_FP2V)); + fmxr(fpexc, fpexc & ~(VFPEXC_EX | VFPEXC_FP2V)); /* kill the process - we do not handle emulation */ critical_exit(); @@ -192,7 +197,7 @@ vfp_bounce(u_int addr, u_int insn, struc * the last thread to use the VFP on this core was this thread, then the * VFP state is valid, otherwise restore this thread's state to the VFP. */ - fmxr(VFPEXC, fpexc | VFPEXC_EN); + fmxr(fpexc, fpexc | VFPEXC_EN); curpcb = curthread->td_pcb; cpu = PCPU_GET(cpu); if (curpcb->pcb_vfpcpu != cpu || curthread != PCPU_GET(fpcurthread)) { @@ -213,22 +218,26 @@ vfp_restore(struct vfp_state *vfpsave) { uint32_t fpexc; - /* On VFPv2 we may need to restore FPINST and FPINST2 */ + /* On vfpv3 we may need to restore FPINST and FPINST2 */ fpexc = vfpsave->fpexec; if (fpexc & VFPEXC_EX) { - fmxr(VFPINST, vfpsave->fpinst); + fmxr(fpinst, vfpsave->fpinst); if (fpexc & VFPEXC_FP2V) - fmxr(VFPINST2, vfpsave->fpinst2); + fmxr(fpinst2, vfpsave->fpinst2); } - fmxr(VFPSCR, vfpsave->fpscr); + fmxr(fpscr, vfpsave->fpscr); - __asm __volatile("ldc p10, c0, [%0], #128\n" /* d0-d15 */ - "cmp %1, #0\n" /* -D16 or -D32? */ - LDCLNE "p11, c0, [%0], #128\n" /* d16-d31 */ - "addeq %0, %0, #128\n" /* skip missing regs */ - : : "r" (vfpsave), "r" (is_d32) : "cc"); + __asm __volatile( + " .fpu vfpv2\n" + " .fpu vfpv3\n" + " vldmia %0!, {d0-d15}\n" /* d0-d15 */ + " cmp %1, #0\n" /* -D16 or -D32? */ + " vldmiane %0!, {d16-d31}\n" /* d16-d31 */ + " addeq %0, %0, #128\n" /* skip missing regs */ + : "+&r" (vfpsave) : "r" (is_d32) : "cc" + ); - fmxr(VFPEXC, fpexc); + fmxr(fpexc, fpexc); } /* @@ -241,28 +250,31 @@ vfp_store(struct vfp_state *vfpsave, boo { uint32_t fpexc; - fpexc = fmrx(VFPEXC); /* Is the vfp enabled? */ + fpexc = fmrx(fpexc); /* Is the vfp enabled? */ if (fpexc & VFPEXC_EN) { vfpsave->fpexec = fpexc; - vfpsave->fpscr = fmrx(VFPSCR); + vfpsave->fpscr = fmrx(fpscr); - /* On VFPv2 we may need to save FPINST and FPINST2 */ + /* On vfpv3 we may need to save FPINST and FPINST2 */ if (fpexc & VFPEXC_EX) { - vfpsave->fpinst = fmrx(VFPINST); + vfpsave->fpinst = fmrx(fpinst); if (fpexc & VFPEXC_FP2V) - vfpsave->fpinst2 = fmrx(VFPINST2); + vfpsave->fpinst2 = fmrx(fpinst2); fpexc &= ~VFPEXC_EX; } __asm __volatile( - "stc p11, c0, [%0], #128\n" /* d0-d15 */ - "cmp %1, #0\n" /* -D16 or -D32? */ - STCLNE "p11, c0, [%0], #128\n" /* d16-d31 */ - "addeq %0, %0, #128\n" /* skip missing regs */ - : : "r" (vfpsave), "r" (is_d32) : "cc"); + " .fpu vfpv2\n" + " .fpu vfpv3\n" + " vstmia %0!, {d0-d15}\n" /* d0-d15 */ + " cmp %1, #0\n" /* -D16 or -D32? */ + " vstmiane r0!, {d16-d31}\n" /* d16-d31 */ + " addeq %0, %0, #128\n" /* skip missing regs */ + : "+&r" (vfpsave) : "r" (is_d32) : "cc" + ); if (disable_vfp) - fmxr(VFPEXC , fpexc & ~VFPEXC_EN); + fmxr(fpexc , fpexc & ~VFPEXC_EN); } } @@ -281,9 +293,9 @@ vfp_discard(struct thread *td) if (PCPU_GET(fpcurthread) == td) PCPU_SET(fpcurthread, NULL); - tmp = fmrx(VFPEXC); + tmp = fmrx(fpexc); if (tmp & VFPEXC_EN) - fmxr(VFPEXC, tmp & ~VFPEXC_EN); + fmxr(fpexc, tmp & ~VFPEXC_EN); } #endif From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 23:18:39 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0B175BC8; Thu, 1 Jan 2015 23:18:39 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EB1AAEE3; Thu, 1 Jan 2015 23:18:38 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01NIcR6015998; Thu, 1 Jan 2015 23:18:38 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01NIcgw015995; Thu, 1 Jan 2015 23:18:38 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201501012318.t01NIcgw015995@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Thu, 1 Jan 2015 23:18:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276519 - in head/sys/arm: arm include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 23:18:39 -0000 Author: ian Date: Thu Jan 1 23:18:37 2015 New Revision: 276519 URL: https://svnweb.freebsd.org/changeset/base/276519 Log: Define a WFI macro that expands to the right form of wait-for-interrupt depending on the architecture. Modified: head/sys/arm/arm/locore-v6.S head/sys/arm/include/asm.h head/sys/arm/include/sysreg.h Modified: head/sys/arm/arm/locore-v6.S ============================================================================== --- head/sys/arm/arm/locore-v6.S Thu Jan 1 23:15:52 2015 (r276518) +++ head/sys/arm/arm/locore-v6.S Thu Jan 1 23:18:37 2015 (r276519) @@ -461,7 +461,7 @@ ENTRY_NP(cpu_halt) teq r4, #0 movne pc, r4 1: - wfi + WFI b 1b /* Modified: head/sys/arm/include/asm.h ============================================================================== --- head/sys/arm/include/asm.h Thu Jan 1 23:15:52 2015 (r276518) +++ head/sys/arm/include/asm.h Thu Jan 1 23:18:37 2015 (r276519) @@ -227,14 +227,17 @@ #define ISB isb #define DSB dsb #define DMB dmb +#define WFI wfi #elif __ARM_ARCH == 6 #define ISB mcr CP15_CP15ISB #define DSB mcr CP15_CP15DSB #define DMB mcr CP15_CP15DMB +#define WFI mcr CP15_CP15WFI #else #define ISB mcr CP15_CP15ISB #define DSB mcr CP15_CP15DSB /* DSB and DMB are the */ #define DMB mcr CP15_CP15DSB /* same prior to v6.*/ +/* No form of WFI available on v4, define nothing to get an error on use. */ #endif #endif /* !_MACHINE_ASM_H_ */ Modified: head/sys/arm/include/sysreg.h ============================================================================== --- head/sys/arm/include/sysreg.h Thu Jan 1 23:15:52 2015 (r276518) +++ head/sys/arm/include/sysreg.h Thu Jan 1 23:18:37 2015 (r276519) @@ -166,6 +166,7 @@ /* Only ARMv6: */ #define CP15_CP15DSB p15, 0, r0, c7, c10, 4 /* DSB */ #define CP15_CP15DMB p15, 0, r0, c7, c10, 5 /* DMB */ +#define CP15_CP15WFI p15, 0, r0, c7, c0, 4 /* WFI */ #endif #if __ARM_ARCH >= 7 From owner-svn-src-head@FreeBSD.ORG Thu Jan 1 23:21:50 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D36B2D61; Thu, 1 Jan 2015 23:21:50 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BD6BBFBE; Thu, 1 Jan 2015 23:21:50 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t01NLowZ018018; Thu, 1 Jan 2015 23:21:50 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t01NLljx017992; Thu, 1 Jan 2015 23:21:47 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201501012321.t01NLljx017992@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Thu, 1 Jan 2015 23:21:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276520 - in head/sys/arm: allwinner allwinner/a20 altera/socfpga freescale/imx freescale/vybrid mv rockchip samsung/exynos ti xilinx X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 01 Jan 2015 23:21:50 -0000 Author: ian Date: Thu Jan 1 23:21:46 2015 New Revision: 276520 URL: https://svnweb.freebsd.org/changeset/base/276520 Log: Remove -Wa,-march=armv7a from arm kernel configs, it makes clang 3.5 sad and apparently isn't needed now that we're using the integrated assembler. Modified: head/sys/arm/allwinner/a20/std.a20 head/sys/arm/allwinner/std.a10 head/sys/arm/altera/socfpga/std.socfpga head/sys/arm/freescale/imx/std.imx51 head/sys/arm/freescale/imx/std.imx53 head/sys/arm/freescale/imx/std.imx6 head/sys/arm/freescale/vybrid/std.vybrid head/sys/arm/mv/std-pj4b.mv head/sys/arm/rockchip/std.rk30xx head/sys/arm/samsung/exynos/std.exynos5250 head/sys/arm/samsung/exynos/std.exynos5420 head/sys/arm/ti/std.ti head/sys/arm/xilinx/std.zynq7 Modified: head/sys/arm/allwinner/a20/std.a20 ============================================================================== --- head/sys/arm/allwinner/a20/std.a20 Thu Jan 1 23:18:37 2015 (r276519) +++ head/sys/arm/allwinner/a20/std.a20 Thu Jan 1 23:21:46 2015 (r276520) @@ -3,7 +3,7 @@ cpu CPU_CORTEXA machine arm armv6 -makeoptions CONF_CFLAGS="-march=armv7a -Wa,-march=armv7a" +makeoptions CONF_CFLAGS="-march=armv7a" makeoption ARM_LITTLE_ENDIAN # Physical memory starts at 0x40200000. We assume images are loaded at Modified: head/sys/arm/allwinner/std.a10 ============================================================================== --- head/sys/arm/allwinner/std.a10 Thu Jan 1 23:18:37 2015 (r276519) +++ head/sys/arm/allwinner/std.a10 Thu Jan 1 23:21:46 2015 (r276520) @@ -3,7 +3,7 @@ cpu CPU_CORTEXA machine arm armv6 -makeoptions CONF_CFLAGS="-march=armv7a -Wa,-march=armv7a" +makeoptions CONF_CFLAGS="-march=armv7a" makeoption ARM_LITTLE_ENDIAN # Physical memory starts at 0x40200000. We assume images are loaded at Modified: head/sys/arm/altera/socfpga/std.socfpga ============================================================================== --- head/sys/arm/altera/socfpga/std.socfpga Thu Jan 1 23:18:37 2015 (r276519) +++ head/sys/arm/altera/socfpga/std.socfpga Thu Jan 1 23:21:46 2015 (r276520) @@ -4,7 +4,7 @@ makeoption ARM_LITTLE_ENDIAN cpu CPU_CORTEXA machine arm armv6 -makeoptions CONF_CFLAGS="-march=armv7a -Wa,-march=armv7a" +makeoptions CONF_CFLAGS="-march=armv7a" options PHYSADDR=0x00000000 Modified: head/sys/arm/freescale/imx/std.imx51 ============================================================================== --- head/sys/arm/freescale/imx/std.imx51 Thu Jan 1 23:18:37 2015 (r276519) +++ head/sys/arm/freescale/imx/std.imx51 Thu Jan 1 23:21:46 2015 (r276520) @@ -1,7 +1,7 @@ # $FreeBSD$ machine arm armv6 cpu CPU_CORTEXA -makeoptions CONF_CFLAGS="-march=armv7a -Wa,-march=armv7a" +makeoptions CONF_CFLAGS="-march=armv7a" makeoptions ARM_LITTLE_ENDIAN options ARM_L2_PIPT Modified: head/sys/arm/freescale/imx/std.imx53 ============================================================================== --- head/sys/arm/freescale/imx/std.imx53 Thu Jan 1 23:18:37 2015 (r276519) +++ head/sys/arm/freescale/imx/std.imx53 Thu Jan 1 23:21:46 2015 (r276520) @@ -1,7 +1,7 @@ # $FreeBSD$ machine arm armv6 cpu CPU_CORTEXA -makeoptions CONF_CFLAGS="-march=armv7a -Wa,-march=armv7a" +makeoptions CONF_CFLAGS="-march=armv7a" makeoptions ARM_LITTLE_ENDIAN options ARM_L2_PIPT Modified: head/sys/arm/freescale/imx/std.imx6 ============================================================================== --- head/sys/arm/freescale/imx/std.imx6 Thu Jan 1 23:18:37 2015 (r276519) +++ head/sys/arm/freescale/imx/std.imx6 Thu Jan 1 23:21:46 2015 (r276520) @@ -1,7 +1,7 @@ # $FreeBSD$ machine arm armv6 cpu CPU_CORTEXA -makeoptions CONF_CFLAGS="-march=armv7a -Wa,-march=armv7a" +makeoptions CONF_CFLAGS="-march=armv7a" makeoptions ARM_LITTLE_ENDIAN options ARM_L2_PIPT Modified: head/sys/arm/freescale/vybrid/std.vybrid ============================================================================== --- head/sys/arm/freescale/vybrid/std.vybrid Thu Jan 1 23:18:37 2015 (r276519) +++ head/sys/arm/freescale/vybrid/std.vybrid Thu Jan 1 23:21:46 2015 (r276520) @@ -4,7 +4,7 @@ makeoption ARM_LITTLE_ENDIAN cpu CPU_CORTEXA machine arm armv6 -makeoptions CONF_CFLAGS="-march=armv7a -Wa,-march=armv7a" +makeoptions CONF_CFLAGS="-march=armv7a" options PHYSADDR=0x80000000 Modified: head/sys/arm/mv/std-pj4b.mv ============================================================================== --- head/sys/arm/mv/std-pj4b.mv Thu Jan 1 23:18:37 2015 (r276519) +++ head/sys/arm/mv/std-pj4b.mv Thu Jan 1 23:21:46 2015 (r276520) @@ -3,6 +3,6 @@ files "../mv/files.mv" cpu CPU_MV_PJ4B machine arm armv6 -makeoptions CONF_CFLAGS="-march=armv7a -Wa,-march=armv7a" +makeoptions CONF_CFLAGS="-march=armv7a" options VM_MAXUSER_ADDRESS="(KERNBASE-(1024*1024*1024))" Modified: head/sys/arm/rockchip/std.rk30xx ============================================================================== --- head/sys/arm/rockchip/std.rk30xx Thu Jan 1 23:18:37 2015 (r276519) +++ head/sys/arm/rockchip/std.rk30xx Thu Jan 1 23:21:46 2015 (r276520) @@ -3,7 +3,7 @@ cpu CPU_CORTEXA machine arm armv6 -makeoptions CONF_CFLAGS="-march=armv7a -Wa,-march=armv7a" +makeoptions CONF_CFLAGS="-march=armv7a" makeoption ARM_LITTLE_ENDIAN # Physical memory starts at 0x60400000. We assume images are loaded at Modified: head/sys/arm/samsung/exynos/std.exynos5250 ============================================================================== --- head/sys/arm/samsung/exynos/std.exynos5250 Thu Jan 1 23:18:37 2015 (r276519) +++ head/sys/arm/samsung/exynos/std.exynos5250 Thu Jan 1 23:21:46 2015 (r276520) @@ -4,7 +4,7 @@ makeoption ARM_LITTLE_ENDIAN cpu CPU_CORTEXA machine arm armv6 -makeoptions CONF_CFLAGS="-march=armv7a -Wa,-march=armv7a" +makeoptions CONF_CFLAGS="-march=armv7a" options PHYSADDR=0x40000000 Modified: head/sys/arm/samsung/exynos/std.exynos5420 ============================================================================== --- head/sys/arm/samsung/exynos/std.exynos5420 Thu Jan 1 23:18:37 2015 (r276519) +++ head/sys/arm/samsung/exynos/std.exynos5420 Thu Jan 1 23:21:46 2015 (r276520) @@ -4,7 +4,7 @@ makeoption ARM_LITTLE_ENDIAN cpu CPU_CORTEXA machine arm armv6 -makeoptions CONF_CFLAGS="-march=armv7a -Wa,-march=armv7a" +makeoptions CONF_CFLAGS="-march=armv7a" options PHYSADDR=0x20000000 Modified: head/sys/arm/ti/std.ti ============================================================================== --- head/sys/arm/ti/std.ti Thu Jan 1 23:18:37 2015 (r276519) +++ head/sys/arm/ti/std.ti Thu Jan 1 23:21:46 2015 (r276520) @@ -2,6 +2,6 @@ cpu CPU_CORTEXA machine arm armv6 -makeoptions CONF_CFLAGS="-march=armv7a -Wa,-march=armv7a" +makeoptions CONF_CFLAGS="-march=armv7a" files "../ti/files.ti" Modified: head/sys/arm/xilinx/std.zynq7 ============================================================================== --- head/sys/arm/xilinx/std.zynq7 Thu Jan 1 23:18:37 2015 (r276519) +++ head/sys/arm/xilinx/std.zynq7 Thu Jan 1 23:21:46 2015 (r276520) @@ -5,7 +5,7 @@ cpu CPU_CORTEXA machine arm armv6 -makeoptions CONF_CFLAGS="-march=armv7a -Wa,-march=armv7a" +makeoptions CONF_CFLAGS="-march=armv7a" files "../xilinx/files.zynq7" From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 00:57:41 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 757BBB56; Fri, 2 Jan 2015 00:57:41 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6174D64C88; Fri, 2 Jan 2015 00:57:41 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t020vf7e063192; Fri, 2 Jan 2015 00:57:41 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t020vf4d063191; Fri, 2 Jan 2015 00:57:41 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201501020057.t020vf4d063191@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Garrett Cooper Date: Fri, 2 Jan 2015 00:57:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276521 - head/contrib/netbsd-tests/lib/libm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 00:57:41 -0000 Author: ngie Date: Fri Jan 2 00:57:40 2015 New Revision: 276521 URL: https://svnweb.freebsd.org/changeset/base/276521 Log: Reset errno in :scalbnf_val and :scalbnl_val before running the tests so the tested errno isn't stale This was needed in order for the test to pass on amd64 with stable/10 MFC after: 3 days Modified: head/contrib/netbsd-tests/lib/libm/t_scalbn.c Modified: head/contrib/netbsd-tests/lib/libm/t_scalbn.c ============================================================================== --- head/contrib/netbsd-tests/lib/libm/t_scalbn.c Thu Jan 1 23:21:46 2015 (r276520) +++ head/contrib/netbsd-tests/lib/libm/t_scalbn.c Fri Jan 2 00:57:40 2015 (r276521) @@ -225,6 +225,9 @@ ATF_TC_BODY(scalbnf_val, tc) double rv; for (i = 0; i < tcnt; i++) { +#ifdef __FreeBSD__ + errno = 0; +#endif rv = scalbnf(tests[i].inval, tests[i].exp); ATF_CHECK_EQ_MSG(errno, tests[i].error, "test %zu: errno %d instead of %d", i, errno, @@ -369,6 +372,9 @@ ATF_TC_BODY(scalbnl_val, tc) long double rv; for (i = 0; i < tcnt; i++) { +#ifdef __FreeBSD__ + errno = 0; +#endif rv = scalbnl(tests[i].inval, tests[i].exp); ATF_CHECK_EQ_MSG(errno, tests[i].error, "test %zu: errno %d instead of %d", i, errno, From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 01:00:39 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D8062D79; Fri, 2 Jan 2015 01:00:39 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C46DB64D83; Fri, 2 Jan 2015 01:00:39 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t0210dvM064364; Fri, 2 Jan 2015 01:00:39 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t0210dIx064363; Fri, 2 Jan 2015 01:00:39 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201501020100.t0210dIx064363@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 2 Jan 2015 01:00:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276522 - head/sys/amd64/amd64 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 01:00:40 -0000 Author: kib Date: Fri Jan 2 01:00:38 2015 New Revision: 276522 URL: https://svnweb.freebsd.org/changeset/base/276522 Log: Actually remove GIANT_REQUIRED, declared but not done in r263475. Style. Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/amd64/amd64/mem.c Modified: head/sys/amd64/amd64/mem.c ============================================================================== --- head/sys/amd64/amd64/mem.c Fri Jan 2 00:57:40 2015 (r276521) +++ head/sys/amd64/amd64/mem.c Fri Jan 2 01:00:38 2015 (r276522) @@ -81,8 +81,6 @@ memrw(struct cdev *dev, struct uio *uio, int error, o, sflags; vm_offset_t addr, eaddr; - GIANT_REQUIRED; - error = 0; c = 0; sflags = curthread_pflags_set(TDP_DEVMEMIO); @@ -110,8 +108,7 @@ kmemphys: } error = uiomove((void *)v, (int)c, uio); continue; - } - else if (dev2unit(dev) == CDEV_MINOR_KMEM) { + } else if (dev2unit(dev) == CDEV_MINOR_KMEM) { v = uio->uio_offset; if (v >= DMAP_MIN_ADDRESS && v < DMAP_MAX_ADDRESS) { From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 01:05:09 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id EC523EE9; Fri, 2 Jan 2015 01:05:09 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D817C64DC6; Fri, 2 Jan 2015 01:05:09 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t021591h067720; Fri, 2 Jan 2015 01:05:09 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02159vZ067719; Fri, 2 Jan 2015 01:05:09 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201501020105.t02159vZ067719@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Fri, 2 Jan 2015 01:05:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276523 - head/sys/amd64/amd64 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 01:05:10 -0000 Author: kib Date: Fri Jan 2 01:05:08 2015 New Revision: 276523 URL: https://svnweb.freebsd.org/changeset/base/276523 Log: Callers of pmap_kextract() cannot distinguish between failure and physical address zero. Assume that the lowest page is always mapped by direct map. This restores access to the page at zero through /dev/mem after r263475. Reported and tested by: neel Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/amd64/amd64/mem.c Modified: head/sys/amd64/amd64/mem.c ============================================================================== --- head/sys/amd64/amd64/mem.c Fri Jan 2 01:00:38 2015 (r276522) +++ head/sys/amd64/amd64/mem.c Fri Jan 2 01:05:08 2015 (r276523) @@ -77,7 +77,7 @@ int memrw(struct cdev *dev, struct uio *uio, int flags) { struct iovec *iov; - u_long c, v; + u_long c, v, vd; int error, o, sflags; vm_offset_t addr, eaddr; @@ -98,15 +98,15 @@ memrw(struct cdev *dev, struct uio *uio, kmemphys: o = v & PAGE_MASK; c = min(uio->uio_resid, (u_int)(PAGE_SIZE - o)); - v = PHYS_TO_DMAP(v); - if (v < DMAP_MIN_ADDRESS || - (v > DMAP_MIN_ADDRESS + dmaplimit && - v <= DMAP_MAX_ADDRESS) || - pmap_kextract(v) == 0) { + vd = PHYS_TO_DMAP(v); + if (vd < DMAP_MIN_ADDRESS || + (vd > DMAP_MIN_ADDRESS + dmaplimit && + vd <= DMAP_MAX_ADDRESS) || + (pmap_kextract(vd) == 0 && (v & PG_FRAME) != 0)) { error = EFAULT; goto ret; } - error = uiomove((void *)v, (int)c, uio); + error = uiomove((void *)vd, (int)c, uio); continue; } else if (dev2unit(dev) == CDEV_MINOR_KMEM) { v = uio->uio_offset; From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 02:47:49 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F1809157; Fri, 2 Jan 2015 02:47:48 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id DD38764C56; Fri, 2 Jan 2015 02:47:48 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t022lmM4014441; Fri, 2 Jan 2015 02:47:48 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t022lm7B014440; Fri, 2 Jan 2015 02:47:48 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201501020247.t022lm7B014440@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 2 Jan 2015 02:47:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276524 - head/contrib/elftoolchain/libelf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 02:47:49 -0000 Author: emaste Date: Fri Jan 2 02:47:47 2015 New Revision: 276524 URL: https://svnweb.freebsd.org/changeset/base/276524 Log: libelf: Return an error instead of asserting on an invalid ar file Upstream elftoolchain ticket 467 http://sourceforge.net/p/elftoolchain/tickets/467/ Reported by: Alexander Cherepanov MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Modified: head/contrib/elftoolchain/libelf/libelf_ar_util.c Modified: head/contrib/elftoolchain/libelf/libelf_ar_util.c ============================================================================== --- head/contrib/elftoolchain/libelf/libelf_ar_util.c Fri Jan 2 01:05:08 2015 (r276523) +++ head/contrib/elftoolchain/libelf/libelf_ar_util.c Fri Jan 2 02:47:47 2015 (r276524) @@ -279,7 +279,8 @@ _libelf_ar_open(Elf *e, int reporterror) */ if (arh.ar_name[0] == '/') { - assert(sz > 0); + if (sz == 0) + goto error; e->e_flags |= LIBELF_F_AR_VARIANT_SVR4; From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 03:20:14 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DA88587E; Fri, 2 Jan 2015 03:20:14 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C6E7C14B0; Fri, 2 Jan 2015 03:20:14 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t023KEmG029725; Fri, 2 Jan 2015 03:20:14 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t023KESc029724; Fri, 2 Jan 2015 03:20:14 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201501020320.t023KESc029724@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Fri, 2 Jan 2015 03:20:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276525 - head/sys/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 03:20:15 -0000 Author: ian Date: Fri Jan 2 03:20:13 2015 New Revision: 276525 URL: https://svnweb.freebsd.org/changeset/base/276525 Log: Put in a workaround for bug 196407 (arm modules cause crashes & panics). When we started compiling the kernel with -march=armv7 the compiler started emitting new types of relocation info which are incompatible with the shared-lib file format used by .ko modules. This workaround prevents the compiler from emitting the instruction sequences that require the new relocs. This amounts to using an undocumented internal compiler flag, so this is just a temporary workaround while we look for a good fix. PR: 196407 Modified: head/sys/conf/kmod.mk Modified: head/sys/conf/kmod.mk ============================================================================== --- head/sys/conf/kmod.mk Fri Jan 2 02:47:47 2015 (r276524) +++ head/sys/conf/kmod.mk Fri Jan 2 03:20:13 2015 (r276525) @@ -118,6 +118,11 @@ CFLAGS+= ${DEBUG_FLAGS} CFLAGS+= -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer .endif +# Temporary workaround for PR 196407, which contains the fascinating details. +.if ${MACHINE_CPUARCH} == arm +CFLAGS.clang+= -mllvm -arm-use-movt=0 +.endif + .if ${MACHINE_CPUARCH} == powerpc CFLAGS+= -mlongcall -fno-omit-frame-pointer .endif From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 05:34:17 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C3EF0961; Fri, 2 Jan 2015 05:34:17 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A445D64731; Fri, 2 Jan 2015 05:34:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t025YHvv093794; Fri, 2 Jan 2015 05:34:17 GMT (envelope-from scottl@FreeBSD.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t025YFU5093787; Fri, 2 Jan 2015 05:34:15 GMT (envelope-from scottl@FreeBSD.org) Message-Id: <201501020534.t025YFU5093787@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: scottl set sender to scottl@FreeBSD.org using -f From: Scott Long Date: Fri, 2 Jan 2015 05:34:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276526 - in head: share/man/man4 sys/conf sys/dev/asr sys/i386/conf sys/modules sys/modules/asr X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 05:34:17 -0000 Author: scottl Date: Fri Jan 2 05:34:14 2015 New Revision: 276526 URL: https://svnweb.freebsd.org/changeset/base/276526 Log: Garbage collect the asr driver. Hardware for it has not been produced in roughly 10 years, and the driver has not enjoyed any significant maintenance since long before that. Despite well-meaning efforts from a number of people, myself included, it never made the jump to 64-bit and was relegated to the back-corners of i386. Now its frailty is hampering forward progress with Clang. Any renewed engineering efforts are of course welcome and can happen outside of the tree. No MFC of this is planned. Deleted: head/share/man/man4/asr.4 head/sys/dev/asr/ head/sys/modules/asr/ Modified: head/share/man/man4/Makefile head/sys/conf/files head/sys/conf/options.i386 head/sys/i386/conf/GENERIC head/sys/i386/conf/NOTES head/sys/i386/conf/PAE head/sys/modules/Makefile Modified: head/share/man/man4/Makefile ============================================================================== --- head/share/man/man4/Makefile Fri Jan 2 03:20:13 2015 (r276525) +++ head/share/man/man4/Makefile Fri Jan 2 05:34:14 2015 (r276526) @@ -52,7 +52,6 @@ MAN= aac.4 \ ${_apic.4} \ arcmsr.4 \ ${_asmc.4} \ - asr.4 \ ata.4 \ ath.4 \ ath_ahb.4 \ Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Fri Jan 2 03:20:13 2015 (r276525) +++ head/sys/conf/files Fri Jan 2 05:34:14 2015 (r276526) @@ -673,8 +673,6 @@ dev/an/if_an.c optional an dev/an/if_an_isa.c optional an isa dev/an/if_an_pccard.c optional an pccard dev/an/if_an_pci.c optional an pci -dev/asr/asr.c optional asr pci \ - compile-with "${NORMAL_C} ${NO_WARRAY_BOUNDS}" # dev/ata/ata_if.m optional ata | atacore dev/ata/ata-all.c optional ata | atacore Modified: head/sys/conf/options.i386 ============================================================================== --- head/sys/conf/options.i386 Fri Jan 2 03:20:13 2015 (r276525) +++ head/sys/conf/options.i386 Fri Jan 2 05:34:14 2015 (r276526) @@ -109,7 +109,6 @@ NETGRAPH_CRONYX opt_ng_cronyx.h DEV_APIC opt_apic.h DEV_ATPIC opt_atpic.h DEV_NPX opt_npx.h -ASR_COMPAT opt_asr.h # Debugging NPX_DEBUG opt_npx.h Modified: head/sys/i386/conf/GENERIC ============================================================================== --- head/sys/i386/conf/GENERIC Fri Jan 2 03:20:13 2015 (r276525) +++ head/sys/i386/conf/GENERIC Fri Jan 2 05:34:14 2015 (r276526) @@ -150,7 +150,6 @@ device ses # Enclosure Services (SES # RAID controllers interfaced to the SCSI subsystem device amr # AMI MegaRAID device arcmsr # Areca SATA II RAID -device asr # DPT SmartRAID V, VI and Adaptec SCSI RAID device ciss # Compaq Smart RAID 5* device dpt # DPT Smartcache III, IV - See NOTES for options device hptmv # Highpoint RocketRAID 182x Modified: head/sys/i386/conf/NOTES ============================================================================== --- head/sys/i386/conf/NOTES Fri Jan 2 03:20:13 2015 (r276525) +++ head/sys/i386/conf/NOTES Fri Jan 2 05:34:14 2015 (r276526) @@ -738,12 +738,6 @@ device aacp # SCSI Passthrough interfac # Adaptec by PMC RAID controllers, Series 6/7/8 and upcoming families device aacraid # Container interface, CAM required -# The 'asr' driver provides support for current DPT/Adaptec SCSI RAID -# controllers (SmartRAID V and VI and later). -# These controllers require the CAM infrastructure. -# -device asr - # # Highpoint RocketRAID 27xx. device hpt27xx @@ -1070,6 +1064,3 @@ options VM_KMEM_SIZE_MAX options VM_KMEM_SIZE_SCALE -# asr old ioctls support, needed by raidutils - -options ASR_COMPAT Modified: head/sys/i386/conf/PAE ============================================================================== --- head/sys/i386/conf/PAE Fri Jan 2 03:20:13 2015 (r276525) +++ head/sys/i386/conf/PAE Fri Jan 2 05:34:14 2015 (r276526) @@ -17,7 +17,6 @@ nodevice hptmv nodevice ida # The following drivers don't work with PAE enabled. -makeoptions WITHOUT_MODULES+="asr ncr pst" -nodevice asr +makeoptions WITHOUT_MODULES+="ncr pst" nodevice ncr nodevice pst Modified: head/sys/modules/Makefile ============================================================================== --- head/sys/modules/Makefile Fri Jan 2 03:20:13 2015 (r276525) +++ head/sys/modules/Makefile Fri Jan 2 05:34:14 2015 (r276526) @@ -44,7 +44,6 @@ SUBDIR= \ ${_arcmsr} \ ${_arcnet} \ ${_asmc} \ - ${_asr} \ ata \ ath \ ath_pci \ @@ -649,7 +648,6 @@ _xe= xe .if ${MK_EISA} != "no" _ahb= ahb .endif -_asr= asr _bios= bios _cm= cm .if ${MK_SOURCELESS_UCODE} != "no" From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 05:35:26 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0D00DA99; Fri, 2 Jan 2015 05:35:26 +0000 (UTC) Received: from mail-pd0-x233.google.com (mail-pd0-x233.google.com [IPv6:2607:f8b0:400e:c02::233]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C72B26473C; Fri, 2 Jan 2015 05:35:25 +0000 (UTC) Received: by mail-pd0-f179.google.com with SMTP id fp1so23218809pdb.38; Thu, 01 Jan 2015 21:35:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :message-id:references:to; bh=Gd7eVGWNMWmFTVNu2RYCNQ9J/SXGkd22wpTt4cU4mdk=; b=T3Njyw+iVDGmZ9XE7oXbUtEPljtVOA6hNXAEBJ0g+c/krtS6C261IAfPAsDmFAHl0O FmxqOZTjN73CcoQOC5SEyw+vtzLyizgb9lJ4sRiYiNqu/cI5Uur9BwYxVl3G7/r6wuhX YoBkxAvswAF4eB00bRiLvGRBwdPxDELNXOR8O3XlysGpC+5LnyFg69UA3eMF9wC9NyQi ViBgEH3eavAETb0kucp5dS2JnbxUKZwRl/AN8r2/6arkY4jI2pSbNJGSHhXJOiZ5rulW WO5hoBFsjiK5QSEZytdwwPMNbeZXhQWvKSY8wvV17bmvzXa6xTbkupM4eqSd9bujmqwu nqow== X-Received: by 10.70.90.10 with SMTP id bs10mr118539327pdb.165.1420176925097; Thu, 01 Jan 2015 21:35:25 -0800 (PST) Received: from ?IPv6:2601:8:ab80:7d6:6d22:f632:3b17:f5d8? ([2601:8:ab80:7d6:6d22:f632:3b17:f5d8]) by mx.google.com with ESMTPSA id cm10sm45700679pad.46.2015.01.01.21.35.23 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 01 Jan 2015 21:35:24 -0800 (PST) Content-Type: multipart/signed; boundary="Apple-Mail=_6A69A06F-E9EC-4D9A-BF53-FC6AF6D71609"; protocol="application/pgp-signature"; micalg=pgp-sha512 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: svn commit: r276526 - in head: share/man/man4 sys/conf sys/dev/asr sys/i386/conf sys/modules sys/modules/asr From: Garrett Cooper In-Reply-To: <201501020534.t025YFU5093787@svn.freebsd.org> Date: Thu, 1 Jan 2015 21:35:19 -0800 Message-Id: References: <201501020534.t025YFU5093787@svn.freebsd.org> To: Scott Long X-Mailer: Apple Mail (2.1878.6) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers , Dimitry Andric X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 05:35:26 -0000 --Apple-Mail=_6A69A06F-E9EC-4D9A-BF53-FC6AF6D71609 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On Jan 1, 2015, at 21:34, Scott Long wrote: > Author: scottl > Date: Fri Jan 2 05:34:14 2015 > New Revision: 276526 > URL: https://svnweb.freebsd.org/changeset/base/276526 >=20 > Log: > Garbage collect the asr driver. Hardware for it has not been = produced in > roughly 10 years, and the driver has not enjoyed any significant = maintenance > since long before that. Despite well-meaning efforts from a number = of > people, myself included, it never made the jump to 64-bit and was = relegated > to the back-corners of i386. Now its frailty is hampering forward = progress > with Clang. Any renewed engineering efforts are of course welcome = and can > happen outside of the tree. No MFC of this is planned. An MFC will be required if clang 3.5.0 is going to be MFCed to stable/10 = though... --Apple-Mail=_6A69A06F-E9EC-4D9A-BF53-FC6AF6D71609 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJUpi4YAAoJEMZr5QU6S73epcQIAIMsetup0uN1zPpuWQAJB+ZX 6ixbkvvu8f+dlMnfl1hmWdfcU4xhHYocHM3yXcGKz7a/yZ2aOzM7tVFv7VCJuyDQ oCbWIpJW7KWDACSuh2/f9W39WgQM1FocsFodPo7YWqSgzqsBqVZk3WrEY5nSZfoC 2aqtdLhHZtg0eTq+QmYAzcm7JYvj8FSVlm87oTcnPuRHOdZXCxcC7L8z0jWKLLDJ yuucxlTd7AIioEgJwxiJeKh5c83yFF8mq3PiPZJQ9/7XjjIVeyN+xUCrieGdZruY i6Tz95dGMH6UJ0uyzQp5nNoB1ZxN+aMluwz8reBuFxOuYReNWMt93+A7rwd+0U8= =l04U -----END PGP SIGNATURE----- --Apple-Mail=_6A69A06F-E9EC-4D9A-BF53-FC6AF6D71609-- From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 05:40:04 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8F538C8E; Fri, 2 Jan 2015 05:40:04 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 61F7E6478B; Fri, 2 Jan 2015 05:40:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t025e4q4094579; Fri, 2 Jan 2015 05:40:04 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t025e3FD094571; Fri, 2 Jan 2015 05:40:03 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201501020540.t025e3FD094571@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Garrett Cooper Date: Fri, 2 Jan 2015 05:40:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276527 - in head: contrib/netbsd-tests/lib/libc/ssp lib/libc/tests/ssp X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 05:40:04 -0000 Author: ngie Date: Fri Jan 2 05:40:02 2015 New Revision: 276527 URL: https://svnweb.freebsd.org/changeset/base/276527 Log: Don't install h_raw if dealing with clang 3.5.0+ to unbreak the tests2 Jenkins job The h_raw application doesn't do proper bounds checking without the option being supplied via the build, which means that it doesn't throw signals and fail as expected PR: 196430 X-MFC with: r276479 Modified: head/contrib/netbsd-tests/lib/libc/ssp/t_ssp.sh head/lib/libc/tests/ssp/Makefile Modified: head/contrib/netbsd-tests/lib/libc/ssp/t_ssp.sh ============================================================================== --- head/contrib/netbsd-tests/lib/libc/ssp/t_ssp.sh Fri Jan 2 05:34:14 2015 (r276526) +++ head/contrib/netbsd-tests/lib/libc/ssp/t_ssp.sh Fri Jan 2 05:40:02 2015 (r276527) @@ -360,6 +360,9 @@ raw_head() raw_body() { prog="$(atf_get_srcdir)/h_raw" + # Begin FreeBSD + [ -x $prog ] || atf_skip "$prog is missing; skipping testcase" + # End FreeBSD h_pass "$prog 9" # Begin FreeBSD Modified: head/lib/libc/tests/ssp/Makefile ============================================================================== --- head/lib/libc/tests/ssp/Makefile Fri Jan 2 05:34:14 2015 (r276526) +++ head/lib/libc/tests/ssp/Makefile Fri Jan 2 05:40:02 2015 (r276527) @@ -9,10 +9,7 @@ WARNS?= 2 CFLAGS.h_raw+= -fstack-protector-all -Wstack-protector .if ${COMPILER_TYPE} == "clang" -# Disable -fsanitize=bounds until runtime support is done for clang 3.5.0. -.if ${COMPILER_VERSION} < 30500 CFLAGS.h_raw+= -fsanitize=bounds -.endif .elif ${COMPILER_TYPE} == "gcc" CFLAGS.h_raw+= --param ssp-buffer-size=1 DPADD+= ${LIBSSP} @@ -29,7 +26,11 @@ PROGS+= h_getcwd PROGS+= h_memcpy PROGS+= h_memmove PROGS+= h_memset +# This testcase doesn't run properly when not compiled with -fsantize=bounds +# with clang, which is currently contingent on a compiler_rt update +.if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} < 30500 PROGS+= h_raw +.endif PROGS+= h_read PROGS+= h_readlink PROGS+= h_snprintf From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 08:29:02 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BAE48201; Fri, 2 Jan 2015 08:29:02 +0000 (UTC) Received: from mail107.syd.optusnet.com.au (mail107.syd.optusnet.com.au [211.29.132.53]) by mx1.freebsd.org (Postfix) with ESMTP id 7E79D64B23; Fri, 2 Jan 2015 08:29:02 +0000 (UTC) Received: from c122-106-147-133.carlnfd1.nsw.optusnet.com.au (c122-106-147-133.carlnfd1.nsw.optusnet.com.au [122.106.147.133]) by mail107.syd.optusnet.com.au (Postfix) with ESMTPS id 6E5C9D457FB; Fri, 2 Jan 2015 19:03:43 +1100 (AEDT) Date: Fri, 2 Jan 2015 19:03:43 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Garrett Cooper Subject: Re: svn commit: r276521 - head/contrib/netbsd-tests/lib/libm In-Reply-To: <201501020057.t020vf4d063191@svn.freebsd.org> Message-ID: <20150102185046.K943@besplex.bde.org> References: <201501020057.t020vf4d063191@svn.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.1 cv=R8o6R7hX c=1 sm=1 tr=0 a=7NqvjVvQucbO2RlWB8PEog==:117 a=PO7r1zJSAAAA:8 a=kj9zAlcOel0A:10 a=JzwRw_2MAAAA:8 a=vw_EG5dSKMz9CBa7WAkA:9 a=CjuIK1q_8ugA:10 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 08:29:02 -0000 On Fri, 2 Jan 2015, Garrett Cooper wrote: > Log: > Reset errno in :scalbnf_val and :scalbnl_val before running the tests so the > tested errno isn't stale It is a bug to even test errno. No function in libm accesses errno. > This was needed in order for the test to pass on amd64 with stable/10 > > MFC after: 3 days > > Modified: > head/contrib/netbsd-tests/lib/libm/t_scalbn.c > > Modified: head/contrib/netbsd-tests/lib/libm/t_scalbn.c > ============================================================================== > --- head/contrib/netbsd-tests/lib/libm/t_scalbn.c Thu Jan 1 23:21:46 2015 (r276520) > +++ head/contrib/netbsd-tests/lib/libm/t_scalbn.c Fri Jan 2 00:57:40 2015 (r276521) > @@ -225,6 +225,9 @@ ATF_TC_BODY(scalbnf_val, tc) > double rv; > > for (i = 0; i < tcnt; i++) { > +#ifdef __FreeBSD__ > + errno = 0; > +#endif This is not FreeBSD-specific. A correct test might test errno under the condition (math_errhandling & MATH_ERRNO), but that would be a lot of work to test a fundamentally broken implementataion. > rv = scalbnf(tests[i].inval, tests[i].exp); > ATF_CHECK_EQ_MSG(errno, tests[i].error, > "test %zu: errno %d instead of %d", i, errno, The tests might set errno elsewhere, but scalbnf() obviously doesn't in FreeBSD (and shouldn't unless MATH_ERRNO), so the ATF_CHECK_EQ_MSG() test can have no effect. It is surprising that it doesn't sometimes fail if errno is always 0. If it always succeeds, then tests[i].error must be dead data (always 0) and the ATF_CHECK_EQ_MSG() test dead code (always pass). Bruce From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 08:42:46 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1505B63A; Fri, 2 Jan 2015 08:42:46 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 00D3064D13; Fri, 2 Jan 2015 08:42:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t028gjk9080991; Fri, 2 Jan 2015 08:42:45 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t028gjxm080990; Fri, 2 Jan 2015 08:42:45 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201501020842.t028gjxm080990@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Fri, 2 Jan 2015 08:42:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276530 - head/sys/x86/xen X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 08:42:46 -0000 Author: hselasky Date: Fri Jan 2 08:42:44 2015 New Revision: 276530 URL: https://svnweb.freebsd.org/changeset/base/276530 Log: Fix warning about possible use of uninitialized variable. Modified: head/sys/x86/xen/xen_nexus.c Modified: head/sys/x86/xen/xen_nexus.c ============================================================================== --- head/sys/x86/xen/xen_nexus.c Fri Jan 2 08:38:23 2015 (r276529) +++ head/sys/x86/xen/xen_nexus.c Fri Jan 2 08:42:44 2015 (r276530) @@ -67,7 +67,7 @@ nexus_xen_attach(device_t dev) { int error; #ifndef XEN - device_t acpi_dev; + device_t acpi_dev = NULL; #endif nexus_init_resources(); From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 08:52:48 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E370A7BD; Fri, 2 Jan 2015 08:52:48 +0000 (UTC) Received: from mail.turbocat.net (heidi.turbocat.net [88.198.202.214]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3AEF26639B; Fri, 2 Jan 2015 08:51:58 +0000 (UTC) Received: from laptop015.home.selasky.org (cm-176.74.213.204.customer.telag.net [176.74.213.204]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.turbocat.net (Postfix) with ESMTPSA id 1F9131FE022; Fri, 2 Jan 2015 09:51:49 +0100 (CET) Message-ID: <54A65C52.8090207@freebsd.org> Date: Fri, 02 Jan 2015 09:52:34 +0100 From: Hans Petter Selasky User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 MIME-Version: 1.0 To: John-Mark Gurney , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r275732 - in head: etc/mtree share/man/man4 share/man/man7 share/man/man9 sys/conf sys/crypto/aesni sys/crypto/via sys/geom/eli sys/libkern sys/mips/rmi/dev/sec sys/modules/aesni sys/mo... References: <201412121956.sBCJucpj048475@svn.freebsd.org> In-Reply-To: <201412121956.sBCJucpj048475@svn.freebsd.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 08:52:49 -0000 On 12/12/14 20:56, John-Mark Gurney wrote: > Author: jmg > Date: Fri Dec 12 19:56:36 2014 > New Revision: 275732 > URL: https://svnweb.freebsd.org/changeset/base/275732 > > Log: Compile breakage with older compilers: > crypto/aesni/aesni.c: In function 'aesni_process': > crypto/aesni/aesni.c:458: warning: 'ivlen' may be used uninitialized in this function > crypto/aesni/aesni.c:458: note: 'ivlen' was declared here --HPS From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 08:57:37 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C1E99918; Fri, 2 Jan 2015 08:57:37 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id ADEBA66CFF; Fri, 2 Jan 2015 08:57:37 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t028vbcb086151; Fri, 2 Jan 2015 08:57:37 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t028vbbv086150; Fri, 2 Jan 2015 08:57:37 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201501020857.t028vbbv086150@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Fri, 2 Jan 2015 08:57:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276531 - head/sys/dev/xen/pci X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 08:57:37 -0000 Author: hselasky Date: Fri Jan 2 08:57:36 2015 New Revision: 276531 URL: https://svnweb.freebsd.org/changeset/base/276531 Log: Remove duplicate pci_driver class declaration. Modified: head/sys/dev/xen/pci/xen_pci.c Modified: head/sys/dev/xen/pci/xen_pci.c ============================================================================== --- head/sys/dev/xen/pci/xen_pci.c Fri Jan 2 08:42:44 2015 (r276530) +++ head/sys/dev/xen/pci/xen_pci.c Fri Jan 2 08:57:36 2015 (r276531) @@ -72,7 +72,6 @@ static device_method_t xen_pci_methods[] static devclass_t pci_devclass; -DECLARE_CLASS(pci_driver); DEFINE_CLASS_1(pci, xen_pci_driver, xen_pci_methods, sizeof(struct pci_softc), pci_driver); DRIVER_MODULE(xen_pci, pcib, xen_pci_driver, pci_devclass, 0, 0); From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 09:49:31 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1FB0544D for ; Fri, 2 Jan 2015 09:49:30 +0000 (UTC) Received: from o1.l99.sendgrid.net (o1.l99.sendgrid.net [198.37.153.74]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8D3021369 for ; Fri, 2 Jan 2015 09:49:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sendgrid.info; h=from:mime-version:to:subject:references:in-reply-to:content-type:content-transfer-encoding; s=smtpapi; bh=ddM3cQjS7/IQGXOv3qyZSt9bRKc=; b=EohF2X4/BbS0geZS/f PJRcWC/Q7FM2Aw5DfMrIk6AKehxzxhtlB4ZkygbfUonHdaqUMXqAdbej7H6czXG9 lYtlxw+jMXQirQF9rV9PA2rPX+s/dUeUqlU78S36+kdFuYFFoHVakB34zftUhoqT NUVkW8WETRw3R7tte+v7MuUd8= Received: by filter0311p1mdw1.sendgrid.net with SMTP id filter0311p1mdw1.17107.54A6697DF 2015-01-02 09:48:47.001024909 +0000 UTC Received: from mail.tarsnap.com (unknown [10.100.60.108]) by ismtpd-003 (SG) with ESMTP id 14aaa0c17bf.5695.66b42a for ; Fri, 02 Jan 2015 09:48:46 +0000 (UTC) Received: (qmail 24986 invoked from network); 2 Jan 2015 09:48:32 -0000 Received: from unknown (HELO clamshell.daemonology.net) (127.0.0.1) by ec2-107-20-205-189.compute-1.amazonaws.com with ESMTP; 2 Jan 2015 09:48:32 -0000 Received: (qmail 16024 invoked from network); 2 Jan 2015 09:48:40 -0000 Received: from unknown (HELO clamshell.daemonology.net) (127.0.0.1) by clamshell.daemonology.net with SMTP; 2 Jan 2015 09:48:40 -0000 Message-ID: <54A66978.1070108@freebsd.org> Date: Fri, 02 Jan 2015 01:48:40 -0800 From: Colin Percival User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:31.0) Gecko/20100101 Thunderbird/31.2.0 MIME-Version: 1.0 To: Hans Petter Selasky , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org, =?UTF-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= Subject: Re: svn commit: r276530 - head/sys/x86/xen References: <201501020842.t028gjxm080990@svn.freebsd.org> In-Reply-To: <201501020842.t028gjxm080990@svn.freebsd.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-SG-EID: EvYvoie/qnEezyq2t4eRKjDm9X7ZKbCMt75WvXA+XNGy83fCrcT4G3+6ZOyB87ibzlAciSYQ7o6WvI 7DsRDreuz2ykbDOkDSFySVcePFVm2rEjSQgMQb8gqmyqRDwsML91aLYzY5pZ6rkcMaqle3CGAy6N11 EUCxqVS8tiVxt84pFmYbLGOk1NZ6CGL5CCD6 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 09:49:31 -0000 On 01/02/15 00:42, Hans Petter Selasky wrote: > Author: hselasky > Date: Fri Jan 2 08:42:44 2015 > New Revision: 276530 > URL: https://svnweb.freebsd.org/changeset/base/276530 > > Log: > Fix warning about possible use of uninitialized variable. Looks to me like the right solution here would be to add bool initial_domain = xen_initial_domain(); and then s/xen_initial_domain()/initial_domain/ in the rest of the function. That should make it clear to static analysis tools that acpi_dev will not be used uninitialized -- since the problem right now is that they don't know that xen_initial_domain() always returns the same value -- without having a bogus initialization which could hide a future bug. -- Colin Percival Security Officer Emeritus, FreeBSD | The power to serve Founder, Tarsnap | www.tarsnap.com | Online backups for the truly paranoid From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 13:10:34 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8F7843DB; Fri, 2 Jan 2015 13:10:34 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7BB6A64ECB; Fri, 2 Jan 2015 13:10:34 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02DAYfj001839; Fri, 2 Jan 2015 13:10:34 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02DAYhn001838; Fri, 2 Jan 2015 13:10:34 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201501021310.t02DAYhn001838@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Fri, 2 Jan 2015 13:10:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276532 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 13:10:34 -0000 Author: hselasky Date: Fri Jan 2 13:10:33 2015 New Revision: 276532 URL: https://svnweb.freebsd.org/changeset/base/276532 Log: The "cnputs_mtx" mutex must be allowed to recurse. Debug prints and/or witness printouts in the console driver clients can cause this mutex to recurse by calls to "printf()" from witness for example. In particular this can happen if "debug.witness.skipspin=0" is set in the boot environment. MFC after: 1 week Modified: head/sys/kern/kern_cons.c Modified: head/sys/kern/kern_cons.c ============================================================================== --- head/sys/kern/kern_cons.c Fri Jan 2 08:57:36 2015 (r276531) +++ head/sys/kern/kern_cons.c Fri Jan 2 13:10:33 2015 (r276532) @@ -601,7 +601,13 @@ static void cn_drvinit(void *unused) { - mtx_init(&cnputs_mtx, "cnputs_mtx", NULL, MTX_SPIN | MTX_NOWITNESS); + /* + * NOTE: Debug prints and/or witness printouts in console + * driver clients can cause the "cnputs_mtx" mutex to + * recurse. Make sure the "MTX_RECURSE" flags is set! + */ + mtx_init(&cnputs_mtx, "cnputs_mtx", NULL, MTX_SPIN | + MTX_NOWITNESS | MTX_RECURSE); use_cnputs_mtx = 1; } From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 13:15:38 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3700C552; Fri, 2 Jan 2015 13:15:38 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 21BE864F1A; Fri, 2 Jan 2015 13:15:38 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02DFc0f005905; Fri, 2 Jan 2015 13:15:38 GMT (envelope-from br@FreeBSD.org) Received: (from br@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02DFbKJ005902; Fri, 2 Jan 2015 13:15:37 GMT (envelope-from br@FreeBSD.org) Message-Id: <201501021315.t02DFbKJ005902@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: br set sender to br@FreeBSD.org using -f From: Ruslan Bukin Date: Fri, 2 Jan 2015 13:15:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276533 - in head/sys: arm/altera/socfpga boot/fdt/dts/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 13:15:38 -0000 Author: br Date: Fri Jan 2 13:15:36 2015 New Revision: 276533 URL: https://svnweb.freebsd.org/changeset/base/276533 Log: Add driver for general-purpose I/O (GPIO). Sponsored by: DARPA, AFRL Added: head/sys/arm/altera/socfpga/socfpga_gpio.c (contents, props changed) Modified: head/sys/arm/altera/socfpga/files.socfpga head/sys/boot/fdt/dts/arm/socfpga.dtsi Modified: head/sys/arm/altera/socfpga/files.socfpga ============================================================================== --- head/sys/arm/altera/socfpga/files.socfpga Fri Jan 2 13:10:33 2015 (r276532) +++ head/sys/arm/altera/socfpga/files.socfpga Fri Jan 2 13:15:36 2015 (r276533) @@ -18,6 +18,7 @@ arm/altera/socfpga/socfpga_machdep.c st arm/altera/socfpga/socfpga_manager.c standard arm/altera/socfpga/socfpga_rstmgr.c standard arm/altera/socfpga/socfpga_mp.c optional smp +arm/altera/socfpga/socfpga_gpio.c optional gpio dev/dwc/if_dwc.c optional dwc dev/mii/micphy.c optional micphy Added: head/sys/arm/altera/socfpga/socfpga_gpio.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/arm/altera/socfpga/socfpga_gpio.c Fri Jan 2 13:15:36 2015 (r276533) @@ -0,0 +1,437 @@ +/*- + * Copyright (c) 2015 Ruslan Bukin + * All rights reserved. + * + * This software was developed by SRI International and the University of + * Cambridge Computer Laboratory under DARPA/AFRL contract (FA8750-10-C-0237) + * ("CTSRD"), as part of the DARPA CRASH research programme. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +/* + * SOCFPGA General-Purpose I/O Interface. + * Chapter 22, Cyclone V Device Handbook (CV-5V2 2014.07.22) + */ + +/* + * The GPIO modules are instances of the Synopsys® DesignWare® APB General + * Purpose Programming I/O (DW_apb_gpio) peripheral. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include +#include +#include +#include + +#include "gpio_if.h" + +#define READ4(_sc, _reg) \ + bus_read_4((_sc)->res[0], _reg) +#define WRITE4(_sc, _reg, _val) \ + bus_write_4((_sc)->res[0], _reg, _val) + +#define GPIO_SWPORTA_DR 0x00 /* Port A Data Register */ +#define GPIO_SWPORTA_DDR 0x04 /* Port A Data Direction Register */ +#define GPIO_INTEN 0x30 /* Interrupt Enable Register */ +#define GPIO_INTMASK 0x34 /* Interrupt Mask Register */ +#define GPIO_INTTYPE_LEVEL 0x38 /* Interrupt Level Register */ +#define GPIO_INT_POLARITY 0x3C /* Interrupt Polarity Register */ +#define GPIO_INTSTATUS 0x40 /* Interrupt Status Register */ +#define GPIO_RAW_INTSTATUS 0x44 /* Raw Interrupt Status Register */ +#define GPIO_DEBOUNCE 0x48 /* Debounce Enable Register */ +#define GPIO_PORTA_EOI 0x4C /* Clear Interrupt Register */ +#define GPIO_EXT_PORTA 0x50 /* External Port A Register */ +#define GPIO_LS_SYNC 0x60 /* Synchronization Level Register */ +#define GPIO_ID_CODE 0x64 /* ID Code Register */ +#define GPIO_VER_ID_CODE 0x6C /* GPIO Version Register */ +#define GPIO_CONFIG_REG2 0x70 /* Configuration Register 2 */ +#define ENCODED_ID_PWIDTH_M 0x1f /* Width of GPIO Port N Mask */ +#define ENCODED_ID_PWIDTH_S(n) (5 * n) /* Width of GPIO Port N Shift */ +#define GPIO_CONFIG_REG1 0x74 /* Configuration Register 1 */ + +enum port_no { + PORTA, + PORTB, + PORTC, + PORTD, +}; + +#define NR_GPIO_MAX 32 /* Maximum pins per port */ + +#define GPIO_LOCK(_sc) mtx_lock(&(_sc)->sc_mtx) +#define GPIO_UNLOCK(_sc) mtx_unlock(&(_sc)->sc_mtx) + +#define DEFAULT_CAPS (GPIO_PIN_INPUT | GPIO_PIN_OUTPUT) + +/* + * GPIO interface + */ +static int socfpga_gpio_pin_max(device_t, int *); +static int socfpga_gpio_pin_getcaps(device_t, uint32_t, uint32_t *); +static int socfpga_gpio_pin_getname(device_t, uint32_t, char *); +static int socfpga_gpio_pin_getflags(device_t, uint32_t, uint32_t *); +static int socfpga_gpio_pin_setflags(device_t, uint32_t, uint32_t); +static int socfpga_gpio_pin_set(device_t, uint32_t, unsigned int); +static int socfpga_gpio_pin_get(device_t, uint32_t, unsigned int *); +static int socfpga_gpio_pin_toggle(device_t, uint32_t pin); + +struct socfpga_gpio_softc { + struct resource *res[1]; + bus_space_tag_t bst; + bus_space_handle_t bsh; + + device_t dev; + struct mtx sc_mtx; + int gpio_npins; + struct gpio_pin gpio_pins[NR_GPIO_MAX]; +}; + +struct socfpga_gpio_softc *gpio_sc; + +static struct resource_spec socfpga_gpio_spec[] = { + { SYS_RES_MEMORY, 0, RF_ACTIVE }, + { -1, 0 } +}; + +static int +socfpga_gpio_probe(device_t dev) +{ + + if (!ofw_bus_status_okay(dev)) + return (ENXIO); + + if (!ofw_bus_is_compatible(dev, "snps,dw-apb-gpio")) + return (ENXIO); + + device_set_desc(dev, "DesignWare General-Purpose I/O Interface"); + return (BUS_PROBE_DEFAULT); +} + +static int +socfpga_gpio_attach(device_t dev) +{ + struct socfpga_gpio_softc *sc; + int version; + int nr_pins; + int cfg2; + int i; + + sc = device_get_softc(dev); + sc->dev = dev; + mtx_init(&sc->sc_mtx, device_get_nameunit(dev), NULL, MTX_DEF); + + if (bus_alloc_resources(dev, socfpga_gpio_spec, sc->res)) { + device_printf(dev, "could not allocate resources\n"); + return (ENXIO); + } + + /* Memory interface */ + sc->bst = rman_get_bustag(sc->res[0]); + sc->bsh = rman_get_bushandle(sc->res[0]); + + gpio_sc = sc; + + version = READ4(sc, GPIO_VER_ID_CODE); +#if 0 + device_printf(sc->dev, "Version = 0x%08x\n", version); +#endif + + /* + * Take number of pins from hardware. + * XXX: Assume we have GPIO port A only. + */ + cfg2 = READ4(sc, GPIO_CONFIG_REG2); + nr_pins = (cfg2 >> ENCODED_ID_PWIDTH_S(PORTA)) & \ + ENCODED_ID_PWIDTH_M; + sc->gpio_npins = nr_pins + 1; + + for (i = 0; i < sc->gpio_npins; i++) { + sc->gpio_pins[i].gp_pin = i; + sc->gpio_pins[i].gp_caps = DEFAULT_CAPS; + sc->gpio_pins[i].gp_flags = + (READ4(sc, GPIO_SWPORTA_DDR) & (1 << i)) ? + GPIO_PIN_OUTPUT: GPIO_PIN_INPUT; + snprintf(sc->gpio_pins[i].gp_name, GPIOMAXNAME, + "socfpga_gpio%d.%d", device_get_unit(dev), i); + } + + device_add_child(dev, "gpioc", -1); + device_add_child(dev, "gpiobus", -1); + + return (bus_generic_attach(dev)); +} + +static int +socfpga_gpio_pin_max(device_t dev, int *maxpin) +{ + struct socfpga_gpio_softc *sc; + + sc = device_get_softc(dev); + + *maxpin = sc->gpio_npins - 1; + + return (0); +} + +static int +socfpga_gpio_pin_getname(device_t dev, uint32_t pin, char *name) +{ + struct socfpga_gpio_softc *sc; + int i; + + sc = device_get_softc(dev); + for (i = 0; i < sc->gpio_npins; i++) { + if (sc->gpio_pins[i].gp_pin == pin) + break; + } + + if (i >= sc->gpio_npins) + return (EINVAL); + + GPIO_LOCK(sc); + memcpy(name, sc->gpio_pins[i].gp_name, GPIOMAXNAME); + GPIO_UNLOCK(sc); + + return (0); +} + +static int +socfpga_gpio_pin_getcaps(device_t dev, uint32_t pin, uint32_t *caps) +{ + struct socfpga_gpio_softc *sc; + int i; + + sc = device_get_softc(dev); + for (i = 0; i < sc->gpio_npins; i++) { + if (sc->gpio_pins[i].gp_pin == pin) + break; + } + + if (i >= sc->gpio_npins) + return (EINVAL); + + GPIO_LOCK(sc); + *caps = sc->gpio_pins[i].gp_caps; + GPIO_UNLOCK(sc); + + return (0); +} + +static int +socfpga_gpio_pin_getflags(device_t dev, uint32_t pin, uint32_t *flags) +{ + struct socfpga_gpio_softc *sc; + int i; + + sc = device_get_softc(dev); + for (i = 0; i < sc->gpio_npins; i++) { + if (sc->gpio_pins[i].gp_pin == pin) + break; + } + + if (i >= sc->gpio_npins) + return (EINVAL); + + GPIO_LOCK(sc); + *flags = sc->gpio_pins[i].gp_flags; + GPIO_UNLOCK(sc); + + return (0); +} + +static int +socfpga_gpio_pin_get(device_t dev, uint32_t pin, unsigned int *val) +{ + struct socfpga_gpio_softc *sc; + int i; + + sc = device_get_softc(dev); + for (i = 0; i < sc->gpio_npins; i++) { + if (sc->gpio_pins[i].gp_pin == pin) + break; + } + + if (i >= sc->gpio_npins) + return (EINVAL); + + GPIO_LOCK(sc); + *val = (READ4(sc, GPIO_EXT_PORTA) & (1 << i)) ? 1 : 0; + GPIO_UNLOCK(sc); + + return (0); +} + +static int +socfpga_gpio_pin_toggle(device_t dev, uint32_t pin) +{ + struct socfpga_gpio_softc *sc; + int reg; + int i; + + sc = device_get_softc(dev); + for (i = 0; i < sc->gpio_npins; i++) { + if (sc->gpio_pins[i].gp_pin == pin) + break; + } + + if (i >= sc->gpio_npins) + return (EINVAL); + + GPIO_LOCK(sc); + reg = READ4(sc, GPIO_SWPORTA_DR); + if (reg & (1 << i)) + reg &= ~(1 << i); + else + reg |= (1 << i); + WRITE4(sc, GPIO_SWPORTA_DR, reg); + GPIO_UNLOCK(sc); + + return (0); +} + + +static void +socfpga_gpio_pin_configure(struct socfpga_gpio_softc *sc, + struct gpio_pin *pin, unsigned int flags) +{ + int reg; + + GPIO_LOCK(sc); + + /* + * Manage input/output + */ + + reg = READ4(sc, GPIO_SWPORTA_DDR); + if (flags & (GPIO_PIN_INPUT|GPIO_PIN_OUTPUT)) { + pin->gp_flags &= ~(GPIO_PIN_INPUT|GPIO_PIN_OUTPUT); + if (flags & GPIO_PIN_OUTPUT) { + pin->gp_flags |= GPIO_PIN_OUTPUT; + reg |= (1 << pin->gp_pin); + } else { + pin->gp_flags |= GPIO_PIN_INPUT; + reg &= ~(1 << pin->gp_pin); + } + } + + WRITE4(sc, GPIO_SWPORTA_DDR, reg); + GPIO_UNLOCK(sc); +} + + +static int +socfpga_gpio_pin_setflags(device_t dev, uint32_t pin, uint32_t flags) +{ + struct socfpga_gpio_softc *sc; + int i; + + sc = device_get_softc(dev); + for (i = 0; i < sc->gpio_npins; i++) { + if (sc->gpio_pins[i].gp_pin == pin) + break; + } + + if (i >= sc->gpio_npins) + return (EINVAL); + + socfpga_gpio_pin_configure(sc, &sc->gpio_pins[i], flags); + + return (0); +} + +static int +socfpga_gpio_pin_set(device_t dev, uint32_t pin, unsigned int value) +{ + struct socfpga_gpio_softc *sc; + int reg; + int i; + + sc = device_get_softc(dev); + + for (i = 0; i < sc->gpio_npins; i++) { + if (sc->gpio_pins[i].gp_pin == pin) + break; + } + + if (i >= sc->gpio_npins) + return (EINVAL); + + GPIO_LOCK(sc); + reg = READ4(sc, GPIO_SWPORTA_DR); + if (value) + reg |= (1 << i); + else + reg &= ~(1 << i); + WRITE4(sc, GPIO_SWPORTA_DR, reg); + GPIO_UNLOCK(sc); + + return (0); +} + +static device_method_t socfpga_gpio_methods[] = { + DEVMETHOD(device_probe, socfpga_gpio_probe), + DEVMETHOD(device_attach, socfpga_gpio_attach), + + /* GPIO protocol */ + DEVMETHOD(gpio_pin_max, socfpga_gpio_pin_max), + DEVMETHOD(gpio_pin_getname, socfpga_gpio_pin_getname), + DEVMETHOD(gpio_pin_getcaps, socfpga_gpio_pin_getcaps), + DEVMETHOD(gpio_pin_getflags, socfpga_gpio_pin_getflags), + DEVMETHOD(gpio_pin_get, socfpga_gpio_pin_get), + DEVMETHOD(gpio_pin_toggle, socfpga_gpio_pin_toggle), + DEVMETHOD(gpio_pin_setflags, socfpga_gpio_pin_setflags), + DEVMETHOD(gpio_pin_set, socfpga_gpio_pin_set), + { 0, 0 } +}; + +static driver_t socfpga_gpio_driver = { + "gpio", + socfpga_gpio_methods, + sizeof(struct socfpga_gpio_softc), +}; + +static devclass_t socfpga_gpio_devclass; + +DRIVER_MODULE(socfpga_gpio, simplebus, socfpga_gpio_driver, + socfpga_gpio_devclass, 0, 0); Modified: head/sys/boot/fdt/dts/arm/socfpga.dtsi ============================================================================== --- head/sys/boot/fdt/dts/arm/socfpga.dtsi Fri Jan 2 13:10:33 2015 (r276532) +++ head/sys/boot/fdt/dts/arm/socfpga.dtsi Fri Jan 2 13:15:36 2015 (r276533) @@ -76,6 +76,11 @@ reg = <0xffd08000 0x1000>; }; + clkmgr: clkmgr@ffd04000 { + compatible = "altr,clk-mgr"; + reg = <0xffd04000 0x1000>; + }; + rstmgr: rstmgr@ffd05000 { compatible = "altr,rst-mgr"; reg = <0xffd05000 0x1000>; @@ -94,6 +99,36 @@ interrupt-parent = <&GIC>; }; + gpio0: gpio@ff708000 { + compatible = "snps,dw-apb-gpio"; + reg = <0xff708000 0x1000>; + porta: gpio-controller@0 { + compatible = "snps,dw-apb-gpio-port"; + gpio-controller; + snps,nr-gpios = <29>; + }; + }; + + gpio1: gpio@ff709000 { + compatible = "snps,dw-apb-gpio"; + reg = <0xff709000 0x1000>; + portb: gpio-controller@0 { + compatible = "snps,dw-apb-gpio-port"; + gpio-controller; + snps,nr-gpios = <29>; + }; + }; + + gpio2: gpio@ff70a000 { + compatible = "snps,dw-apb-gpio"; + reg = <0xff70a000 0x1000>; + portc: gpio-controller@0 { + compatible = "snps,dw-apb-gpio-port"; + gpio-controller; + snps,nr-gpios = <27>; + }; + }; + serial0: serial@ffc02000 { compatible = "ns16550"; reg = <0xffc02000 0x1000>; From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 13:35:11 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 826DB835; Fri, 2 Jan 2015 13:35:11 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 551F366F8A; Fri, 2 Jan 2015 13:35:11 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02DZB3G015073; Fri, 2 Jan 2015 13:35:11 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02DZBRm015072; Fri, 2 Jan 2015 13:35:11 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201501021335.t02DZBRm015072@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Fri, 2 Jan 2015 13:35:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276534 - head/sys/dev/vt X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 13:35:11 -0000 Author: hselasky Date: Fri Jan 2 13:35:10 2015 New Revision: 276534 URL: https://svnweb.freebsd.org/changeset/base/276534 Log: The "vt_suspend_flush_timer()" function is sometimes called locked which prevents us from doing a "callout_drain()" call. The callout in question has a lock associated with it and we are not freeing the callout. That means we can use the "callout_stop()" function to atomically stop the callback iff the "callout_stop()" function is called locked. This patch applies proper locking to "callout_stop()" and replaces a "callout_drain()" with a "callout_stop()". MFC after: 1 week Modified: head/sys/dev/vt/vt_core.c Modified: head/sys/dev/vt/vt_core.c ============================================================================== --- head/sys/dev/vt/vt_core.c Fri Jan 2 13:15:36 2015 (r276533) +++ head/sys/dev/vt/vt_core.c Fri Jan 2 13:35:10 2015 (r276534) @@ -114,6 +114,7 @@ const struct terminal_class vt_termclass #define VT_LOCK(vd) mtx_lock(&(vd)->vd_lock) #define VT_UNLOCK(vd) mtx_unlock(&(vd)->vd_lock) +#define VT_LOCK_ASSERT(vd, what) mtx_assert(&(vd)->vd_lock, what) #define VT_UNIT(vw) ((vw)->vw_device->vd_unit * VT_MAXWINDOWS + \ (vw)->vw_number) @@ -283,12 +284,18 @@ vt_resume_flush_timer(struct vt_device * static void vt_suspend_flush_timer(struct vt_device *vd) { + /* + * As long as this function is called locked, callout_stop() + * has the same effect like callout_drain() with regard to + * preventing the callback function from executing. + */ + VT_LOCK_ASSERT(vd, MA_OWNED); if (!(vd->vd_flags & VDF_ASYNC) || !atomic_cmpset_int(&vd->vd_timer_armed, 1, 0)) return; - callout_drain(&vd->vd_timer); + callout_stop(&vd->vd_timer); } static void @@ -2604,7 +2611,9 @@ vt_allocate(struct vt_driver *drv, void if (vd->vd_flags & VDF_ASYNC) { /* Stop vt_flush periodic task. */ + VT_LOCK(vd); vt_suspend_flush_timer(vd); + VT_UNLOCK(vd); /* * Mute current terminal until we done. vt_change_font (called * from vt_resize) will unmute it. From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 13:54:04 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3F076C79; Fri, 2 Jan 2015 13:54:04 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2B658133A; Fri, 2 Jan 2015 13:54:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02Ds4Ow024092; Fri, 2 Jan 2015 13:54:04 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02Ds4rE024091; Fri, 2 Jan 2015 13:54:04 GMT (envelope-from bapt@FreeBSD.org) Message-Id: <201501021354.t02Ds4rE024091@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f From: Baptiste Daroussin Date: Fri, 2 Jan 2015 13:54:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276535 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 13:54:04 -0000 Author: bapt Date: Fri Jan 2 13:54:03 2015 New Revision: 276535 URL: https://svnweb.freebsd.org/changeset/base/276535 Log: Use mandoc -Tlint instead of groff for manlint target Modified: head/share/mk/bsd.man.mk Modified: head/share/mk/bsd.man.mk ============================================================================== --- head/share/mk/bsd.man.mk Fri Jan 2 13:35:10 2015 (r276534) +++ head/share/mk/bsd.man.mk Fri Jan 2 13:54:03 2015 (r276535) @@ -55,6 +55,7 @@ MINSTALL?= ${INSTALL} -o ${MANOWN} -g ${ CATDIR= ${MANDIR:H:S/$/\/cat/} CATEXT= .cat MROFF_CMD?= groff -Tascii -mtty-char -man -t +MANDOC_CMD?= mandoc MCOMPRESS_CMD?= ${COMPRESS_CMD} MCOMPRESS_EXT?= ${COMPRESS_EXT} @@ -239,9 +240,9 @@ manlint: manlint: ${__page}lint ${__page}lint: ${__page} .if defined(MANFILTER) - ${MANFILTER} < ${.ALLSRC} | ${MROFF_CMD} -ww -z + ${MANFILTER} < ${.ALLSRC} | ${MANDOC_CMD} -Tlint .else - ${MROFF_CMD} -ww -z ${.ALLSRC} + ${MANDOC_CMD} -Tlint ${.ALLSRC} .endif .endfor .endif From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 14:05:31 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BA61EED9; Fri, 2 Jan 2015 14:05:31 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8CB39151C; Fri, 2 Jan 2015 14:05:31 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02E5V7C028991; Fri, 2 Jan 2015 14:05:31 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02E5VON028990; Fri, 2 Jan 2015 14:05:31 GMT (envelope-from bapt@FreeBSD.org) Message-Id: <201501021405.t02E5VON028990@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f From: Baptiste Daroussin Date: Fri, 2 Jan 2015 14:05:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276536 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 14:05:31 -0000 Author: bapt Date: Fri Jan 2 14:05:30 2015 New Revision: 276536 URL: https://svnweb.freebsd.org/changeset/base/276536 Log: Use mandoc to generate cat pages Modified: head/share/mk/bsd.man.mk Modified: head/share/mk/bsd.man.mk ============================================================================== --- head/share/mk/bsd.man.mk Fri Jan 2 13:54:03 2015 (r276535) +++ head/share/mk/bsd.man.mk Fri Jan 2 14:05:30 2015 (r276536) @@ -38,7 +38,7 @@ # MANBUILDCAT create preformatted manual pages in addition to normal # pages. [not set] # -# MROFF_CMD command and flags to create preformatted pages +# MANDOC_CMD command and flags to create preformatted pages # # +++ targets +++ # @@ -54,8 +54,7 @@ MINSTALL?= ${INSTALL} -o ${MANOWN} -g ${ CATDIR= ${MANDIR:H:S/$/\/cat/} CATEXT= .cat -MROFF_CMD?= groff -Tascii -mtty-char -man -t -MANDOC_CMD?= mandoc +MANDOC_CMD?= mandoc -Tascii MCOMPRESS_CMD?= ${COMPRESS_CMD} MCOMPRESS_EXT?= ${COMPRESS_EXT} @@ -101,7 +100,7 @@ ${__target}: ${__page} .for __target in ${__page:T:S/$/${CATEXT}${FILTEXTENSION}/g} _manpages: ${__target} ${__target}: ${__page} - ${MANFILTER} < ${.ALLSRC} | ${MROFF_CMD} > ${.TARGET} + ${MANFILTER} < ${.ALLSRC} | ${MANDOC_CMD} > ${.TARGET} .endfor .endif .endfor @@ -114,7 +113,7 @@ CLEANFILES+= ${MAN:T:S/$/${CATEXT}/g} .for __target in ${__page:T:S/$/${CATEXT}/g} _manpages: ${__target} ${__target}: ${__page} - ${MROFF_CMD} ${.ALLSRC} > ${.TARGET} + ${MANDOC_CMD} ${.ALLSRC} > ${.TARGET} .endfor .endfor .else @@ -145,9 +144,9 @@ ${__target}: ${__page} _manpages: ${__target} ${__target}: ${__page} .if defined(MANFILTER) - ${MANFILTER} < ${.ALLSRC} | ${MROFF_CMD} | ${MCOMPRESS_CMD} > ${.TARGET} + ${MANFILTER} < ${.ALLSRC} | ${MANDOC_CMD} | ${MCOMPRESS_CMD} > ${.TARGET} .else - ${MROFF_CMD} ${.ALLSRC} | ${MCOMPRESS_CMD} > ${.TARGET} + ${MANDOC_CMD} ${.ALLSRC} | ${MCOMPRESS_CMD} > ${.TARGET} .endif .endfor .endif From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 14:55:03 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 39B6C9E5; Fri, 2 Jan 2015 14:55:03 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 263C264C7F; Fri, 2 Jan 2015 14:55:03 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02Et3Qh052804; Fri, 2 Jan 2015 14:55:03 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02Et2BA052802; Fri, 2 Jan 2015 14:55:02 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201501021455.t02Et2BA052802@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Fri, 2 Jan 2015 14:55:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276537 - head/contrib/llvm/lib/Target/ARM/AsmParser X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 14:55:03 -0000 Author: dim Date: Fri Jan 2 14:55:02 2015 New Revision: 276537 URL: https://svnweb.freebsd.org/changeset/base/276537 Log: Pull in r222587 from upstream llvm trunk (by Jörg Sonnenberger): Fix transformation of add with pc argument to adr for non-immediate arguments. This fixes an "Unimplemented" error when assembling certain ARM add instructions with pc-relative arguments. Reported by: sbruno PR: 196412, 196423 Modified: head/contrib/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp Modified: head/contrib/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp ============================================================================== --- head/contrib/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp Fri Jan 2 14:05:30 2015 (r276536) +++ head/contrib/llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp Fri Jan 2 14:55:02 2015 (r276537) @@ -314,7 +314,7 @@ class ARMAsmParser : public MCTargetAsmP void cvtThumbBranches(MCInst &Inst, const OperandVector &); bool validateInstruction(MCInst &Inst, const OperandVector &Ops); - bool processInstruction(MCInst &Inst, const OperandVector &Ops); + bool processInstruction(MCInst &Inst, const OperandVector &Ops, MCStreamer &Out); bool shouldOmitCCOutOperand(StringRef Mnemonic, OperandVector &Operands); bool shouldOmitPredicateOperand(StringRef Mnemonic, OperandVector &Operands); @@ -6175,7 +6175,8 @@ static unsigned getRealVLDOpcode(unsigne } bool ARMAsmParser::processInstruction(MCInst &Inst, - const OperandVector &Operands) { + const OperandVector &Operands, + MCStreamer &Out) { switch (Inst.getOpcode()) { // Alias for alternate form of 'ldr{,b}t Rt, [Rn], #imm' instruction. case ARM::LDRT_POST: @@ -6216,12 +6217,31 @@ bool ARMAsmParser::processInstruction(MC // Alias for alternate form of 'ADR Rd, #imm' instruction. case ARM::ADDri: { if (Inst.getOperand(1).getReg() != ARM::PC || - Inst.getOperand(5).getReg() != 0) + Inst.getOperand(5).getReg() != 0 || + !(Inst.getOperand(2).isExpr() || Inst.getOperand(2).isImm())) return false; MCInst TmpInst; TmpInst.setOpcode(ARM::ADR); TmpInst.addOperand(Inst.getOperand(0)); - TmpInst.addOperand(Inst.getOperand(2)); + if (Inst.getOperand(2).isImm()) { + TmpInst.addOperand(Inst.getOperand(2)); + } else { + // Turn PC-relative expression into absolute expression. + // Reading PC provides the start of the current instruction + 8 and + // the transform to adr is biased by that. + MCSymbol *Dot = getContext().CreateTempSymbol(); + Out.EmitLabel(Dot); + const MCExpr *OpExpr = Inst.getOperand(2).getExpr(); + const MCExpr *InstPC = MCSymbolRefExpr::Create(Dot, + MCSymbolRefExpr::VK_None, + getContext()); + const MCExpr *Const8 = MCConstantExpr::Create(8, getContext()); + const MCExpr *ReadPC = MCBinaryExpr::CreateAdd(InstPC, Const8, + getContext()); + const MCExpr *FixupAddr = MCBinaryExpr::CreateAdd(ReadPC, OpExpr, + getContext()); + TmpInst.addOperand(MCOperand::CreateExpr(FixupAddr)); + } TmpInst.addOperand(Inst.getOperand(3)); TmpInst.addOperand(Inst.getOperand(4)); Inst = TmpInst; @@ -8061,7 +8081,7 @@ bool ARMAsmParser::MatchAndEmitInstructi // encoding is selected. Loop on it while changes happen so the // individual transformations can chain off each other. E.g., // tPOP(r8)->t2LDMIA_UPD(sp,r8)->t2STR_POST(sp,r8) - while (processInstruction(Inst, Operands)) + while (processInstruction(Inst, Operands, Out)) ; // Only after the instruction is fully processed, we can validate it From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 14:58:42 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B33B2B8C; Fri, 2 Jan 2015 14:58:42 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 95C1F64CCA; Fri, 2 Jan 2015 14:58:42 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02EwgIl053311; Fri, 2 Jan 2015 14:58:42 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02EwgOe053309; Fri, 2 Jan 2015 14:58:42 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201501021458.t02EwgOe053309@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Fri, 2 Jan 2015 14:58:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276538 - head/contrib/llvm/patches X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 14:58:42 -0000 Author: dim Date: Fri Jan 2 14:58:41 2015 New Revision: 276538 URL: https://svnweb.freebsd.org/changeset/base/276538 Log: Add clang and llvm patches corresponding to r276516 and r276537. Added: head/contrib/llvm/patches/patch-29-clang-r213790-type_traits-crash.diff head/contrib/llvm/patches/patch-30-llvm-r222587-arm-add-pc.diff Added: head/contrib/llvm/patches/patch-29-clang-r213790-type_traits-crash.diff ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/contrib/llvm/patches/patch-29-clang-r213790-type_traits-crash.diff Fri Jan 2 14:58:41 2015 (r276538) @@ -0,0 +1,57 @@ +Pull in r213790 from upstream clang trunk (by Richard Smith): + + PR20228: don't retain a pointer to a vector element after the + container has been resized. + +This fixes a possible crash when compiling certain parts of libc++'s +type_traits header. + +Introduced here: http://svnweb.freebsd.org/changeset/base/276516 + +Index: tools/clang/lib/Sema/SemaExprCXX.cpp +=================================================================== +--- tools/clang/lib/Sema/SemaExprCXX.cpp ++++ tools/clang/lib/Sema/SemaExprCXX.cpp +@@ -3642,12 +3642,13 @@ static bool evaluateTypeTrait(Sema &S, TypeTrait K + if (T->isObjectType() || T->isFunctionType()) + T = S.Context.getRValueReferenceType(T); + OpaqueArgExprs.push_back( +- OpaqueValueExpr(Args[I]->getTypeLoc().getLocStart(), ++ OpaqueValueExpr(Args[I]->getTypeLoc().getLocStart(), + T.getNonLValueExprType(S.Context), + Expr::getValueKindForType(T))); +- ArgExprs.push_back(&OpaqueArgExprs.back()); + } +- ++ for (Expr &E : OpaqueArgExprs) ++ ArgExprs.push_back(&E); ++ + // Perform the initialization in an unevaluated context within a SFINAE + // trap at translation unit scope. + EnterExpressionEvaluationContext Unevaluated(S, Sema::Unevaluated); +Index: tools/clang/test/SemaCXX/type-traits.cpp +=================================================================== +--- tools/clang/test/SemaCXX/type-traits.cpp ++++ tools/clang/test/SemaCXX/type-traits.cpp +@@ -146,6 +146,10 @@ struct ThreeArgCtor { + ThreeArgCtor(int*, char*, int); + }; + ++struct VariadicCtor { ++ template VariadicCtor(T...); ++}; ++ + void is_pod() + { + { int arr[T(__is_pod(int))]; } +@@ -1968,6 +1972,10 @@ void constructible_checks() { + // PR19178 + { int arr[F(__is_constructible(Abstract))]; } + { int arr[F(__is_nothrow_constructible(Abstract))]; } ++ ++ // PR20228 ++ { int arr[T(__is_constructible(VariadicCtor, ++ int, int, int, int, int, int, int, int, int))]; } + } + + // Instantiation of __is_trivially_constructible Added: head/contrib/llvm/patches/patch-30-llvm-r222587-arm-add-pc.diff ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/contrib/llvm/patches/patch-30-llvm-r222587-arm-add-pc.diff Fri Jan 2 14:58:41 2015 (r276538) @@ -0,0 +1,108 @@ +Pull in r222587 from upstream llvm trunk (by Jörg Sonnenberger): + + Fix transformation of add with pc argument to adr for non-immediate + arguments. + +This fixes an "Unimplemented" error when assembling certain ARM add +instructions with pc-relative arguments. + +Reported by: sbruno +PR: 196412, 196423 + +Introduced here: http://svnweb.freebsd.org/changeset/base/276537 + +Index: lib/Target/ARM/AsmParser/ARMAsmParser.cpp +=================================================================== +--- lib/Target/ARM/AsmParser/ARMAsmParser.cpp ++++ lib/Target/ARM/AsmParser/ARMAsmParser.cpp +@@ -314,7 +314,7 @@ class ARMAsmParser : public MCTargetAsmParser { + void cvtThumbBranches(MCInst &Inst, const OperandVector &); + + bool validateInstruction(MCInst &Inst, const OperandVector &Ops); +- bool processInstruction(MCInst &Inst, const OperandVector &Ops); ++ bool processInstruction(MCInst &Inst, const OperandVector &Ops, MCStreamer &Out); + bool shouldOmitCCOutOperand(StringRef Mnemonic, OperandVector &Operands); + bool shouldOmitPredicateOperand(StringRef Mnemonic, OperandVector &Operands); + +@@ -6175,7 +6175,8 @@ static unsigned getRealVLDOpcode(unsigned Opc, uns + } + + bool ARMAsmParser::processInstruction(MCInst &Inst, +- const OperandVector &Operands) { ++ const OperandVector &Operands, ++ MCStreamer &Out) { + switch (Inst.getOpcode()) { + // Alias for alternate form of 'ldr{,b}t Rt, [Rn], #imm' instruction. + case ARM::LDRT_POST: +@@ -6216,12 +6217,31 @@ bool ARMAsmParser::processInstruction(MCInst &Inst + // Alias for alternate form of 'ADR Rd, #imm' instruction. + case ARM::ADDri: { + if (Inst.getOperand(1).getReg() != ARM::PC || +- Inst.getOperand(5).getReg() != 0) ++ Inst.getOperand(5).getReg() != 0 || ++ !(Inst.getOperand(2).isExpr() || Inst.getOperand(2).isImm())) + return false; + MCInst TmpInst; + TmpInst.setOpcode(ARM::ADR); + TmpInst.addOperand(Inst.getOperand(0)); +- TmpInst.addOperand(Inst.getOperand(2)); ++ if (Inst.getOperand(2).isImm()) { ++ TmpInst.addOperand(Inst.getOperand(2)); ++ } else { ++ // Turn PC-relative expression into absolute expression. ++ // Reading PC provides the start of the current instruction + 8 and ++ // the transform to adr is biased by that. ++ MCSymbol *Dot = getContext().CreateTempSymbol(); ++ Out.EmitLabel(Dot); ++ const MCExpr *OpExpr = Inst.getOperand(2).getExpr(); ++ const MCExpr *InstPC = MCSymbolRefExpr::Create(Dot, ++ MCSymbolRefExpr::VK_None, ++ getContext()); ++ const MCExpr *Const8 = MCConstantExpr::Create(8, getContext()); ++ const MCExpr *ReadPC = MCBinaryExpr::CreateAdd(InstPC, Const8, ++ getContext()); ++ const MCExpr *FixupAddr = MCBinaryExpr::CreateAdd(ReadPC, OpExpr, ++ getContext()); ++ TmpInst.addOperand(MCOperand::CreateExpr(FixupAddr)); ++ } + TmpInst.addOperand(Inst.getOperand(3)); + TmpInst.addOperand(Inst.getOperand(4)); + Inst = TmpInst; +@@ -8061,7 +8081,7 @@ bool ARMAsmParser::MatchAndEmitInstruction(SMLoc I + // encoding is selected. Loop on it while changes happen so the + // individual transformations can chain off each other. E.g., + // tPOP(r8)->t2LDMIA_UPD(sp,r8)->t2STR_POST(sp,r8) +- while (processInstruction(Inst, Operands)) ++ while (processInstruction(Inst, Operands, Out)) + ; + + // Only after the instruction is fully processed, we can validate it +Index: test/MC/ARM/basic-arm-instructions.s +=================================================================== +--- test/MC/ARM/basic-arm-instructions.s ++++ test/MC/ARM/basic-arm-instructions.s +@@ -191,8 +191,10 @@ Lforward: + + add r0, #-4 + add r4, r5, #-21 +- add r0, pc, #0xc0000000 ++ add r0, pc, #0xc0000000 + ++ add r0, pc, #(Lback - .) ++ + @ CHECK: add r4, r5, #61440 @ encoding: [0x0f,0x4a,0x85,0xe2] + @ CHECK: add r4, r5, r6 @ encoding: [0x06,0x40,0x85,0xe0] + @ CHECK: add r4, r5, r6, lsl #5 @ encoding: [0x86,0x42,0x85,0xe0] +@@ -222,7 +224,11 @@ Lforward: + + @ CHECK: sub r0, r0, #4 @ encoding: [0x04,0x00,0x40,0xe2] + @ CHECK: sub r4, r5, #21 @ encoding: [0x15,0x40,0x45,0xe2] +-@ CHECK: adr r0, #-1073741824 @ encoding: [0x03,0x01,0x8f,0xe2] ++@ CHECK: adr r0, #-1073741824 @ encoding: [0x03,0x01,0x8f,0xe2] ++@ CHECK: Ltmp0: ++@ CHECK-NEXT: Ltmp1: ++@ CHECK-NEXT: adr r0, (Ltmp1+8)+(Lback-Ltmp0) @ encoding: [A,A,0x0f'A',0xe2'A'] ++@ CHECK-NEXT: @ fixup A - offset: 0, value: (Ltmp1+8)+(Lback-Ltmp0), kind: fixup_arm_adr_pcrel_12 + + @ Test right shift by 32, which is encoded as 0 + add r3, r1, r2, lsr #32 From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 15:36:32 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 358B149E; Fri, 2 Jan 2015 15:36:32 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1F2C566282; Fri, 2 Jan 2015 15:36:32 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02FaWEY072190; Fri, 2 Jan 2015 15:36:32 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02FaUcM072185; Fri, 2 Jan 2015 15:36:30 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201501021536.t02FaUcM072185@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 2 Jan 2015 15:36:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276539 - in head/sys: arm/include mips/include sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 15:36:32 -0000 Author: emaste Date: Fri Jan 2 15:36:29 2015 New Revision: 276539 URL: https://svnweb.freebsd.org/changeset/base/276539 Log: Update ELF headers to include additional defines The elftoolchain project includes these additional defines for various userland programs. Given that arch-specific defines are still interesting in the context of userland programs reading or writing ELF metadata, they should be included in top-level ELF headers. Remove duplicate defines from ARM and MIPS elf headers. Submitted by: will (initial version) Reviewed by: imp, will Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D844 Modified: head/sys/arm/include/elf.h head/sys/mips/include/elf.h head/sys/sys/elf32.h head/sys/sys/elf64.h head/sys/sys/elf_common.h Modified: head/sys/arm/include/elf.h ============================================================================== --- head/sys/arm/include/elf.h Fri Jan 2 14:58:41 2015 (r276538) +++ head/sys/arm/include/elf.h Fri Jan 2 15:36:29 2015 (r276539) @@ -104,7 +104,6 @@ __ElfType(Auxinfo); #define ELF_TARG_VER 1 /* Defines specific for arm headers */ -#define EF_ARM_EABIMASK 0xff000000 #define EF_ARM_EABI_VERSION(x) (((x) & EF_ARM_EABIMASK) >> 24) #define EF_ARM_EABI_VERSION_UNKNOWN 0 #define EF_ARM_EABI_FREEBSD_MIN 4 Modified: head/sys/mips/include/elf.h ============================================================================== --- head/sys/mips/include/elf.h Fri Jan 2 14:58:41 2015 (r276538) +++ head/sys/mips/include/elf.h Fri Jan 2 15:36:29 2015 (r276539) @@ -238,39 +238,10 @@ __ElfType(Auxinfo); #define R_MIPS_COPY 126 #define R_MIPS_JUMP_SLOT 127 -/* mips dynamic tags */ - -#define DT_MIPS_RLD_VERSION 0x70000001 -#define DT_MIPS_TIME_STAMP 0x70000002 -#define DT_MIPS_ICHECKSUM 0x70000003 -#define DT_MIPS_IVERSION 0x70000004 -#define DT_MIPS_FLAGS 0x70000005 -#define DT_MIPS_BASE_ADDRESS 0x70000006 -#define DT_MIPS_CONFLICT 0x70000008 -#define DT_MIPS_LIBLIST 0x70000009 -#define DT_MIPS_CONFLICTNO 0x7000000b -#define DT_MIPS_LOCAL_GOTNO 0x7000000a /* number of local got ents */ -#define DT_MIPS_LIBLISTNO 0x70000010 -#define DT_MIPS_SYMTABNO 0x70000011 /* number of .dynsym entries */ -#define DT_MIPS_UNREFEXTNO 0x70000012 -#define DT_MIPS_GOTSYM 0x70000013 /* first dynamic sym in got */ -#define DT_MIPS_HIPAGENO 0x70000014 -#define DT_MIPS_RLD_MAP 0x70000016 /* address of loader map */ -#define DT_MIPS_PLTGOT 0x70000032 -#define DT_MIPS_RWPLT 0x70000034 - /* * ELF Flags */ -#define EF_MIPS_PIC 0x00000002 /* Contains PIC code */ -#define EF_MIPS_CPIC 0x00000004 /* STD PIC calling sequence */ -#define EF_MIPS_ABI2 0x00000020 /* N32 */ - -#define EF_MIPS_ARCH_ASE 0x0f000000 /* Architectural extensions */ -#define EF_MIPS_ARCH_MDMX 0x08000000 /* MDMX multimedia extension */ -#define EF_MIPS_ARCH_M16 0x04000000 /* MIPS-16 ISA extensions */ -#define EF_MIPS_ARCH 0xf0000000 /* Architecture field */ #define EF_MIPS_ARCH_1 0x00000000 /* -mips1 code */ #define EF_MIPS_ARCH_2 0x10000000 /* -mips2 code */ #define EF_MIPS_ARCH_3 0x20000000 /* -mips3 code */ Modified: head/sys/sys/elf32.h ============================================================================== --- head/sys/sys/elf32.h Fri Jan 2 14:58:41 2015 (r276538) +++ head/sys/sys/elf32.h Fri Jan 2 15:36:29 2015 (r276539) @@ -70,6 +70,18 @@ typedef struct { } Elf32_Ehdr; /* + * Shared object information, found in SHT_MIPS_LIBLIST. + */ + +typedef struct { + Elf32_Word l_name; /* The name of a shared object. */ + Elf32_Word l_time_stamp; /* 32-bit timestamp. */ + Elf32_Word l_checksum; /* Checksum of visible symbols, sizes. */ + Elf32_Word l_version; /* Interface version string index. */ + Elf32_Word l_flags; /* Flags (LL_*). */ +} Elf32_Lib; + +/* * Section header. */ Modified: head/sys/sys/elf64.h ============================================================================== --- head/sys/sys/elf64.h Fri Jan 2 14:58:41 2015 (r276538) +++ head/sys/sys/elf64.h Fri Jan 2 15:36:29 2015 (r276539) @@ -79,6 +79,18 @@ typedef struct { } Elf64_Ehdr; /* + * Shared object information, found in SHT_MIPS_LIBLIST. + */ + +typedef struct { + Elf64_Word l_name; /* The name of a shared object. */ + Elf64_Word l_time_stamp; /* 64-bit timestamp. */ + Elf64_Word l_checksum; /* Checksum of visible symbols, sizes. */ + Elf64_Word l_version; /* Interface version string index. */ + Elf64_Word l_flags; /* Flags (LL_*). */ +} Elf64_Lib; + +/* * Section header. */ Modified: head/sys/sys/elf_common.h ============================================================================== --- head/sys/sys/elf_common.h Fri Jan 2 14:58:41 2015 (r276538) +++ head/sys/sys/elf_common.h Fri Jan 2 15:36:29 2015 (r276539) @@ -50,6 +50,61 @@ typedef struct { } Elf_Note; /* + * Option kinds. + */ +#define ODK_NULL 0 /* undefined */ +#define ODK_REGINFO 1 /* register usage info */ +#define ODK_EXCEPTIONS 2 /* exception processing info */ +#define ODK_PAD 3 /* section padding */ +#define ODK_HWPATCH 4 /* hardware patch applied */ +#define ODK_FILL 5 /* fill value used by the linker */ +#define ODK_TAGS 6 /* reserved space for tools */ +#define ODK_HWAND 7 /* hardware AND patch applied */ +#define ODK_HWOR 8 /* hardware OR patch applied */ +#define ODK_GP_GROUP 9 /* GP group for text/data sections */ +#define ODK_IDENT 10 /* ID information */ +#define ODK_PAGESIZE 11 /* page size information */ + +/* + * ODK_EXCEPTIONS info field masks. + */ +#define OEX_FPU_MIN 0x0000001f /* min FPU exception required */ +#define OEX_FPU_MAX 0x00001f00 /* max FPU exception allowed */ +#define OEX_PAGE0 0x00010000 /* page zero must be mapped */ +#define OEX_SMM 0x00020000 /* run in sequential memory mode */ +#define OEX_PRECISEFP 0x00040000 /* run in precise FP exception mode */ +#define OEX_DISMISS 0x00080000 /* dismiss invalid address traps */ + +/* + * ODK_PAD info field masks. + */ +#define OPAD_PREFIX 0x0001 +#define OPAD_POSTFIX 0x0002 +#define OPAD_SYMBOL 0x0004 + +/* + * ODK_HWPATCH info field masks. + */ +#define OHW_R4KEOP 0x00000001 /* patch for R4000 branch at end-of-page bug */ +#define OHW_R8KPFETCH 0x00000002 /* R8000 prefetch bug may occur */ +#define OHW_R5KEOP 0x00000004 /* patch for R5000 branch at end-of-page bug */ +#define OHW_R5KCVTL 0x00000008 /* R5000 cvt.[ds].l bug: clean == 1 */ +#define OHW_R10KLDL 0x00000010UL /* need patch for R10000 misaligned load */ + +/* + * ODK_HWAND/ODK_HWOR info field and hwp_flags[12] masks. + */ +#define OHWA0_R4KEOP_CHECKED 0x00000001 /* object checked for R4000 end-of-page bug */ +#define OHWA0_R4KEOP_CLEAN 0x00000002 /* object verified clean for R4000 end-of-page bug */ +#define OHWO0_FIXADE 0x00000001 /* object requires call to fixade */ + +/* + * ODK_IDENT/ODK_GP_GROUP info field masks. + */ +#define OGP_GROUP 0x0000ffff /* GP group number */ +#define OGP_SELF 0x00010000 /* GP group is self-contained */ + +/* * The header for GNU-style hash sections. */ @@ -119,6 +174,7 @@ typedef struct { #define ELFOSABI_SYSV ELFOSABI_NONE /* symbol used in old spec */ #define ELFOSABI_MONTEREY ELFOSABI_AIX /* Monterey */ +#define ELFOSABI_GNU ELFOSABI_LINUX /* e_ident */ #define IS_ELF(ehdr) ((ehdr).e_ident[EI_MAG0] == ELFMAG0 && \ @@ -245,6 +301,60 @@ typedef struct { #define EM_ALPHA_STD 41 /* Digital Alpha (standard value). */ #define EM_ALPHA 0x9026 /* Alpha (written in the absence of an ABI) */ +/** + * e_flags + */ +#define EF_ARM_RELEXEC 0x1 +#define EF_ARM_HASENTRY 0x2 +#define EF_ARM_SYMSARESORTED 0x4 +#define EF_ARM_DYNSYMSUSESEGIDX 0x8 +#define EF_ARM_MAPSYMSFIRST 0x10 +#define EF_ARM_LE8 0x00400000 +#define EF_ARM_BE8 0x00800000 +#define EF_ARM_EABIMASK 0xFF000000 +#define EF_ARM_EABI_UNKNOWN 0x00000000 +#define EF_ARM_EABI_VER1 0x01000000 +#define EF_ARM_EABI_VER2 0x02000000 +#define EF_ARM_EABI_VER3 0x03000000 +#define EF_ARM_EABI_VER4 0x04000000 +#define EF_ARM_EABI_VER5 0x05000000 +#define EF_ARM_INTERWORK 0x00000004 +#define EF_ARM_APCS_26 0x00000008 +#define EF_ARM_APCS_FLOAT 0x00000010 +#define EF_ARM_PIC 0x00000020 +#define EF_ARM_ALIGN8 0x00000040 +#define EF_ARM_NEW_ABI 0x00000080 +#define EF_ARM_OLD_ABI 0x00000100 +#define EF_ARM_SOFT_FLOAT 0x00000200 +#define EF_ARM_VFP_FLOAT 0x00000400 +#define EF_ARM_MAVERICK_FLOAT 0x00000800 + +#define EF_MIPS_NOREORDER 0x00000001 +#define EF_MIPS_PIC 0x00000002 /* Contains PIC code */ +#define EF_MIPS_CPIC 0x00000004 /* STD PIC calling sequence */ +#define EF_MIPS_UCODE 0x00000010 +#define EF_MIPS_ABI2 0x00000020 /* N32 */ +#define EF_MIPS_OPTIONS_FIRST 0x00000080 +#define EF_MIPS_ARCH_ASE 0x0F000000 /* Architectural extensions */ +#define EF_MIPS_ARCH_ASE_MDMX 0x08000000 /* MDMX multimedia extension */ +#define EF_MIPS_ARCH_ASE_M16 0x04000000 /* MIPS-16 ISA extensions */ +#define EF_MIPS_ARCH 0xF0000000 /* Architecture field */ + +#define EF_PPC_EMB 0x80000000 +#define EF_PPC_RELOCATABLE 0x00010000 +#define EF_PPC_RELOCATABLE_LIB 0x00008000 + +#define EF_SPARC_EXT_MASK 0x00ffff00 +#define EF_SPARC_32PLUS 0x00000100 +#define EF_SPARC_SUN_US1 0x00000200 +#define EF_SPARC_HAL_R1 0x00000200 +#define EF_SPARC_SUN_US3 0x00000800 + +#define EF_SPARCV9_MM 0x00000003 +#define EF_SPARCV9_TSO 0x00000000 +#define EF_SPARCV9_PSO 0x00000001 +#define EF_SPARCV9_RMO 0x00000002 + /* Special section indexes. */ #define SHN_UNDEF 0 /* Undefined, missing, irrelevant. */ #define SHN_LORESERVE 0xff00 /* First of reserved range. */ @@ -279,6 +389,7 @@ typedef struct { #define SHT_LOSUNW 0x6ffffff4 #define SHT_SUNW_dof 0x6ffffff4 #define SHT_SUNW_cap 0x6ffffff5 +#define SHT_GNU_ATTRIBUTES 0x6ffffff5 #define SHT_SUNW_SIGNATURE 0x6ffffff6 #define SHT_GNU_HASH 0x6ffffff6 #define SHT_GNU_LIBLIST 0x6ffffff7 @@ -298,6 +409,7 @@ typedef struct { #define SHT_HIOS 0x6fffffff /* Last of OS specific semantics */ #define SHT_LOPROC 0x70000000 /* reserved range for processor */ #define SHT_AMD64_UNWIND 0x70000001 /* unwind information */ + #define SHT_ARM_EXIDX 0x70000001 /* Exception index table. */ #define SHT_ARM_PREEMPTMAP 0x70000002 /* BPABI DLL dynamic linking pre-emption map. */ @@ -305,9 +417,38 @@ typedef struct { attributes. */ #define SHT_ARM_DEBUGOVERLAY 0x70000004 /* See DBGOVL for details. */ #define SHT_ARM_OVERLAYSECTION 0x70000005 /* See DBGOVL for details. */ +#define SHT_MIPS_LIBLIST 0x70000000 +#define SHT_MIPS_MSYM 0x70000001 +#define SHT_MIPS_CONFLICT 0x70000002 +#define SHT_MIPS_GPTAB 0x70000003 +#define SHT_MIPS_UCODE 0x70000004 +#define SHT_MIPS_DEBUG 0x70000005 #define SHT_MIPS_REGINFO 0x70000006 +#define SHT_MIPS_PACKAGE 0x70000007 +#define SHT_MIPS_PACKSYM 0x70000008 +#define SHT_MIPS_RELD 0x70000009 +#define SHT_MIPS_IFACE 0x7000000b +#define SHT_MIPS_CONTENT 0x7000000c #define SHT_MIPS_OPTIONS 0x7000000d +#define SHT_MIPS_DELTASYM 0x7000001b +#define SHT_MIPS_DELTAINST 0x7000001c +#define SHT_MIPS_DELTACLASS 0x7000001d #define SHT_MIPS_DWARF 0x7000001e /* MIPS gcc uses MIPS_DWARF */ +#define SHT_MIPS_DELTADECL 0x7000001f +#define SHT_MIPS_SYMBOL_LIB 0x70000020 +#define SHT_MIPS_EVENTS 0x70000021 +#define SHT_MIPS_TRANSLATE 0x70000022 +#define SHT_MIPS_PIXIE 0x70000023 +#define SHT_MIPS_XLATE 0x70000024 +#define SHT_MIPS_XLATE_DEBUG 0x70000025 +#define SHT_MIPS_WHIRL 0x70000026 +#define SHT_MIPS_EH_REGION 0x70000027 +#define SHT_MIPS_XLATE_OLD 0x70000028 +#define SHT_MIPS_PDR_EXCEPTION 0x70000029 + +#define SHT_SPARC_GOTDATA 0x70000000 + +#define SHTORDERED #define SHT_HIPROC 0x7fffffff /* specific section header types */ #define SHT_LOUSER 0x80000000 /* reserved range for application */ #define SHT_HIUSER 0xffffffff /* specific indexes */ @@ -424,11 +565,15 @@ typedef struct { * Dyn.d_un.d_val field of the Elf*_Dyn structure. */ #define DT_VALRNGLO 0x6ffffd00 +#define DT_GNU_PRELINKED 0x6ffffdf5 /* prelinking timestamp */ +#define DT_GNU_CONFLICTSZ 0x6ffffdf6 /* size of conflict section */ +#define DT_GNU_LIBLISTSZ 0x6ffffdf7 /* size of library list */ #define DT_CHECKSUM 0x6ffffdf8 /* elf checksum */ #define DT_PLTPADSZ 0x6ffffdf9 /* pltpadding size */ #define DT_MOVEENT 0x6ffffdfa /* move table entry size */ #define DT_MOVESZ 0x6ffffdfb /* move table size */ #define DT_FEATURE 0x6ffffdfc /* feature holder */ +#define DT_FEATURE_1 DT_FEATURE #define DT_POSFLAG_1 0x6ffffdfd /* flags for DT_* entries, effecting */ /* the following DT_* entry. */ /* See DF_P1_* definitions */ @@ -445,6 +590,8 @@ typedef struct { */ #define DT_ADDRRNGLO 0x6ffffe00 #define DT_GNU_HASH 0x6ffffef5 /* GNU-style hash table */ +#define DT_GNU_CONFLICT 0x6ffffef8 /* address of conflict section */ +#define DT_GNU_LIBLIST 0x6ffffef9 /* address of library list */ #define DT_CONFIG 0x6ffffefa /* configuration information */ #define DT_DEPAUDIT 0x6ffffefb /* dependency auditing */ #define DT_AUDIT 0x6ffffefc /* object auditing */ @@ -463,7 +610,67 @@ typedef struct { #define DT_VERNEEDNUM 0x6fffffff /* Number of elems in verneed section */ #define DT_LOPROC 0x70000000 /* First processor-specific type. */ + +#define DT_ARM_SYMTABSZ 0x70000001 +#define DT_ARM_PREEMPTMAP 0x70000002 + +#define DT_SPARC_REGISTER 0x70000001 #define DT_DEPRECATED_SPARC_REGISTER 0x7000001 + +#define DT_MIPS_RLD_VERSION 0x70000001 +#define DT_MIPS_TIME_STAMP 0x70000002 +#define DT_MIPS_ICHECKSUM 0x70000003 +#define DT_MIPS_IVERSION 0x70000004 +#define DT_MIPS_FLAGS 0x70000005 +#define DT_MIPS_BASE_ADDRESS 0x70000006 +#define DT_MIPS_CONFLICT 0x70000008 +#define DT_MIPS_LIBLIST 0x70000009 +#define DT_MIPS_LOCAL_GOTNO 0x7000000a +#define DT_MIPS_CONFLICTNO 0x7000000b +#define DT_MIPS_LIBLISTNO 0x70000010 +#define DT_MIPS_SYMTABNO 0x70000011 +#define DT_MIPS_UNREFEXTNO 0x70000012 +#define DT_MIPS_GOTSYM 0x70000013 +#define DT_MIPS_HIPAGENO 0x70000014 +#define DT_MIPS_RLD_MAP 0x70000016 +#define DT_MIPS_DELTA_CLASS 0x70000017 +#define DT_MIPS_DELTA_CLASS_NO 0x70000018 +#define DT_MIPS_DELTA_INSTANCE 0x70000019 +#define DT_MIPS_DELTA_INSTANCE_NO 0x7000001A +#define DT_MIPS_DELTA_RELOC 0x7000001B +#define DT_MIPS_DELTA_RELOC_NO 0x7000001C +#define DT_MIPS_DELTA_SYM 0x7000001D +#define DT_MIPS_DELTA_SYM_NO 0x7000001E +#define DT_MIPS_DELTA_CLASSSYM 0x70000020 +#define DT_MIPS_DELTA_CLASSSYM_NO 0x70000021 +#define DT_MIPS_CXX_FLAGS 0x70000022 +#define DT_MIPS_PIXIE_INIT 0x70000023 +#define DT_MIPS_SYMBOL_LIB 0x70000024 +#define DT_MIPS_LOCALPAGE_GOTIDX 0x70000025 +#define DT_MIPS_LOCAL_GOTIDX 0x70000026 +#define DT_MIPS_HIDDEN_GOTIDX 0x70000027 +#define DT_MIPS_PROTECTED_GOTIDX 0x70000028 +#define DT_MIPS_OPTIONS 0x70000029 +#define DT_MIPS_INTERFACE 0x7000002A +#define DT_MIPS_DYNSTR_ALIGN 0x7000002B +#define DT_MIPS_INTERFACE_SIZE 0x7000002C +#define DT_MIPS_RLD_TEXT_RESOLVE_ADDR 0x7000002D +#define DT_MIPS_PERF_SUFFIX 0x7000002E +#define DT_MIPS_COMPACT_SIZE 0x7000002F +#define DT_MIPS_GP_VALUE 0x70000030 +#define DT_MIPS_AUX_DYNAMIC 0x70000031 +#define DT_MIPS_PLTGOT 0x70000032 +#define DT_MIPS_RLD_OBJ_UPDATE 0x70000033 +#define DT_MIPS_RWPLT 0x70000034 + +#define DT_PPC_GOT 0x70000000 +#define DT_PPC_TLSOPT 0x70000001 + +#define DT_PPC64_GLINK 0x70000000 +#define DT_PPC64_OPD 0x70000001 +#define DT_PPC64_OPDSZ 0x70000002 +#define DT_PPC64_TLSOPT 0x70000003 + #define DT_AUXILIARY 0x7ffffffd /* shared library auxiliary name */ #define DT_USED 0x7ffffffe /* ignored - same as needed */ #define DT_FILTER 0x7fffffff /* shared library filter name */ @@ -494,6 +701,15 @@ typedef struct { #define DF_1_INTERPOSE 0x00000400 /* Interpose all objects but main */ #define DF_1_NODEFLIB 0x00000800 /* Do not search default paths */ +/* Values for l_flags. */ +#define LL_NONE 0x0 /* no flags */ +#define LL_EXACT_MATCH 0x1 /* require an exact match */ +#define LL_IGNORE_INT_VER 0x2 /* ignore version incompatibilities */ +#define LL_REQUIRE_MINOR 0x4 +#define LL_EXPORTS 0x8 +#define LL_DELAY_LOAD 0x10 +#define LL_DELTA 0x20 + /* Values for n_type. Used in core files. */ #define NT_PRSTATUS 1 /* Process status. */ #define NT_FPREGSET 2 /* Floating point registers. */ From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 15:46:55 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E0C64A25; Fri, 2 Jan 2015 15:46:55 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CD67566452; Fri, 2 Jan 2015 15:46:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02Fkt1q077058; Fri, 2 Jan 2015 15:46:55 GMT (envelope-from scottl@FreeBSD.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02Fktei077057; Fri, 2 Jan 2015 15:46:55 GMT (envelope-from scottl@FreeBSD.org) Message-Id: <201501021546.t02Fktei077057@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: scottl set sender to scottl@FreeBSD.org using -f From: Scott Long Date: Fri, 2 Jan 2015 15:46:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276540 - head/sys/amd64/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 15:46:56 -0000 Author: scottl Date: Fri Jan 2 15:46:54 2015 New Revision: 276540 URL: https://svnweb.freebsd.org/changeset/base/276540 Log: Fix a missed comment from r276526. Modified: head/sys/amd64/conf/GENERIC Modified: head/sys/amd64/conf/GENERIC ============================================================================== --- head/sys/amd64/conf/GENERIC Fri Jan 2 15:36:29 2015 (r276539) +++ head/sys/amd64/conf/GENERIC Fri Jan 2 15:46:54 2015 (r276540) @@ -145,8 +145,6 @@ device ses # Enclosure Services (SES # RAID controllers interfaced to the SCSI subsystem device amr # AMI MegaRAID device arcmsr # Areca SATA II RAID -#XXX it is not 64-bit clean, -scottl -#device asr # DPT SmartRAID V, VI and Adaptec SCSI RAID device ciss # Compaq Smart RAID 5* device dpt # DPT Smartcache III, IV - See NOTES for options device hptmv # Highpoint RocketRAID 182x From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 16:43:11 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 44CF624E; Fri, 2 Jan 2015 16:43:11 +0000 (UTC) Received: from c.mail.sonic.net (c.mail.sonic.net [64.142.111.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2AD371BD4; Fri, 2 Jan 2015 16:43:10 +0000 (UTC) Received: from comporellon.tachypleus.net (polaris.tachypleus.net [75.101.50.44]) (authenticated bits=0) by c.mail.sonic.net (8.14.9/8.14.9) with ESMTP id t02Gh8lp017273 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Fri, 2 Jan 2015 08:43:08 -0800 Message-ID: <54A6CA9C.2050506@freebsd.org> Date: Fri, 02 Jan 2015 08:43:08 -0800 From: Nathan Whitehorn User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:31.0) Gecko/20100101 Thunderbird/31.1.0 MIME-Version: 1.0 To: Konstantin Belousov , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r276522 - head/sys/amd64/amd64 References: <201501020100.t0210dIx064363@svn.freebsd.org> In-Reply-To: <201501020100.t0210dIx064363@svn.freebsd.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Sonic-CAuth: UmFuZG9tSVaLfxEGmusTpYuoEZDlNMwrcm1i1iY7PI+0JO7IvCPjM1lhZOPjYwSv+fM5kAt/hmwdyDYgGRHXZ1U6TMqpJ1hkDgBkFxYLeDc= X-Sonic-ID: C;hFdnbp6S5BG0cPCsS5uE/A== M;2uW+bp6S5BG0cPCsS5uE/A== X-Spam-Flag: No X-Sonic-Spam-Details: 0.0/5.0 by cerberusd X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 16:43:11 -0000 Other architectures (PowerPC, for example) seem to have this same code there by copy and paste. Any chance you could do a global sweep? -Nathan On 01/01/15 17:00, Konstantin Belousov wrote: > Author: kib > Date: Fri Jan 2 01:00:38 2015 > New Revision: 276522 > URL: https://svnweb.freebsd.org/changeset/base/276522 > > Log: > Actually remove GIANT_REQUIRED, declared but not done in r263475. > Style. > > Sponsored by: The FreeBSD Foundation > MFC after: 1 week > > Modified: > head/sys/amd64/amd64/mem.c > > Modified: head/sys/amd64/amd64/mem.c > ============================================================================== > --- head/sys/amd64/amd64/mem.c Fri Jan 2 00:57:40 2015 (r276521) > +++ head/sys/amd64/amd64/mem.c Fri Jan 2 01:00:38 2015 (r276522) > @@ -81,8 +81,6 @@ memrw(struct cdev *dev, struct uio *uio, > int error, o, sflags; > vm_offset_t addr, eaddr; > > - GIANT_REQUIRED; > - > error = 0; > c = 0; > sflags = curthread_pflags_set(TDP_DEVMEMIO); > @@ -110,8 +108,7 @@ kmemphys: > } > error = uiomove((void *)v, (int)c, uio); > continue; > - } > - else if (dev2unit(dev) == CDEV_MINOR_KMEM) { > + } else if (dev2unit(dev) == CDEV_MINOR_KMEM) { > v = uio->uio_offset; > > if (v >= DMAP_MIN_ADDRESS && v < DMAP_MAX_ADDRESS) { > From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 17:33:28 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7EE5F3CE for ; Fri, 2 Jan 2015 17:33:28 +0000 (UTC) Received: from mail-ig0-x22c.google.com (mail-ig0-x22c.google.com [IPv6:2607:f8b0:4001:c05::22c]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3176566359 for ; Fri, 2 Jan 2015 17:33:28 +0000 (UTC) Received: by mail-ig0-f172.google.com with SMTP id a13so4910060igq.5 for ; Fri, 02 Jan 2015 09:33:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=netflix.com; s=google; h=from:content-type:mime-version:subject:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=3h+M27K1X5wuJNLZpkTQdW5Ei18TIxVFymCh6mAcyXY=; b=FSlHrBe3Jj4X5zHgGrfF9csxFrWX9OhFtoFtTej8fkZwEIRPE/eJBoGRzxi+gQ+zox svUdIcOXakCabjcJB2TggYsunYMZufkcP5zju+7iLxTNH6KqdueKW8/F+m3Q5Mudi+t4 GVufs5mbq9YwSWOCQlaVYlOWGB3GJaHRhvgb4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:content-type:mime-version:subject :in-reply-to:date:cc:content-transfer-encoding:message-id:references :to; bh=3h+M27K1X5wuJNLZpkTQdW5Ei18TIxVFymCh6mAcyXY=; b=c6KgUW9CW2wdZbp5tEbYNyoA07HRrLTafpXPnKXjG/Kdgnk4jEFRWG3X2PvDok9hV7 P+0aJ1bemXqRHE7ZDEmk0rOKrGpmOkPih0R7rhk6N/UveqMAXgWHoad5ZnjWiEnJyAQw JZTJqjARg4ztqJd/c/n15EWuUQ3cZWgoeMZUhvIL3R9zfebgGtOUFKh8UHlWt9KKbJeK AF/xrH7QIH1xUHvX5wQXCiiGwjQUJJJ3l/3JlnVQZL++7sQUs6Ya0qhA9V10R509tLa+ BeHzOQAXuqPxitURF03o6LM8pZ8YczQprmHx3quJqYSJUxNoBoSqcmHqEEGjM8DwxrH/ EAGg== X-Gm-Message-State: ALoCoQku/3cT5ewQbSfsSGwcreBWnFNVL9c84/kAOvPe/y3agFLPaK4+lqAbzE9XlD5rDur0WHCY X-Received: by 10.50.28.8 with SMTP id x8mr9051339igg.19.1420220007357; Fri, 02 Jan 2015 09:33:27 -0800 (PST) Received: from netflix-mac-wired.bsdimp.com ([50.253.99.174]) by mx.google.com with ESMTPSA id e63sm23089990ioe.15.2015.01.02.09.33.26 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 02 Jan 2015 09:33:26 -0800 (PST) From: Warner Losh X-Google-Original-From: Warner Losh Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Subject: Re: svn commit: r276499 - head/sys/conf In-Reply-To: <201501011007.t01A7wYW032884@svn.freebsd.org> Date: Fri, 2 Jan 2015 10:33:25 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <41CF0351-83A3-4D54-B308-32F310DCD3DA@gmail.com> References: <201501011007.t01A7wYW032884@svn.freebsd.org> To: Roman Divacky X-Mailer: Apple Mail (2.1993) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 17:33:28 -0000 This breaks building the kernel with clang 3.4.1 Warner > On Jan 1, 2015, at 3:07 AM, Roman Divacky = wrote: >=20 > Author: rdivacky > Date: Thu Jan 1 10:07:57 2015 > New Revision: 276499 > URL: https://svnweb.freebsd.org/changeset/base/276499 >=20 > Log: > LLVM integrated assembler can assemble these files just fine. >=20 > Modified: > head/sys/conf/Makefile.amd64 > head/sys/conf/Makefile.i386 > head/sys/conf/Makefile.pc98 >=20 > Modified: head/sys/conf/Makefile.amd64 > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/sys/conf/Makefile.amd64 Thu Jan 1 09:33:46 2015 = (r276498) > +++ head/sys/conf/Makefile.amd64 Thu Jan 1 10:07:57 2015 = (r276499) > @@ -37,11 +37,6 @@ INCLUDES+=3D -I$S/contrib/libfdt > CFLAGS+=3D -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer > .endif >=20 > -# XXX: clang integrated-as doesn't grok .codeNN directives yet > -ASM_CFLAGS.acpi_wakecode.S=3D ${CLANG_NO_IAS} > -ASM_CFLAGS.mpboot.S=3D ${CLANG_NO_IAS} > -ASM_CFLAGS+=3D ${ASM_CFLAGS.${.IMPSRC:T}} > - > %BEFORE_DEPEND >=20 > %OBJS >=20 > Modified: head/sys/conf/Makefile.i386 > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/sys/conf/Makefile.i386 Thu Jan 1 09:33:46 2015 = (r276498) > +++ head/sys/conf/Makefile.i386 Thu Jan 1 10:07:57 2015 = (r276499) > @@ -32,11 +32,6 @@ S=3D ../../.. >=20 > INCLUDES+=3D -I$S/contrib/libfdt >=20 > -# XXX: clang integrated-as doesn't grok .codeNN directives yet > -ASM_CFLAGS.acpi_wakecode.S=3D ${CLANG_NO_IAS} > -ASM_CFLAGS.mpboot.s=3D ${CLANG_NO_IAS} > -ASM_CFLAGS+=3D ${ASM_CFLAGS.${.IMPSRC:T}} > - > %BEFORE_DEPEND >=20 > %OBJS >=20 > Modified: head/sys/conf/Makefile.pc98 > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/sys/conf/Makefile.pc98 Thu Jan 1 09:33:46 2015 = (r276498) > +++ head/sys/conf/Makefile.pc98 Thu Jan 1 10:07:57 2015 = (r276499) > @@ -30,10 +30,6 @@ S=3D ../../.. > .endif > .include "$S/conf/kern.pre.mk" >=20 > -# XXX: clang integrated-as doesn't grok .codeNN directives yet > -ASM_CFLAGS.mpboot.s=3D ${CLANG_NO_IAS} > -ASM_CFLAGS+=3D ${ASM_CFLAGS.${.IMPSRC:T}} > - > %BEFORE_DEPEND >=20 > %OBJS >=20 From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 17:54:48 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1B271E78; Fri, 2 Jan 2015 17:54:48 +0000 (UTC) Received: from anubis.delphij.net (anubis.delphij.net [64.62.153.212]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "anubis.delphij.net", Issuer "StartCom Class 1 Primary Intermediate Server CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id F22E966653; Fri, 2 Jan 2015 17:54:47 +0000 (UTC) Received: from zeta.ixsystems.com (unknown [12.229.62.2]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by anubis.delphij.net (Postfix) with ESMTPSA id B82121757E; Fri, 2 Jan 2015 09:54:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=delphij.net; s=anubis; t=1420221281; x=1420235681; bh=3P/pjBpXTn9onY+CAyW0r/wDUfzUuFIbJ/BIg0jBg60=; h=Date:From:Reply-To:To:Subject:References:In-Reply-To; b=jO817TEaEhTWP7kblN39vWhmi8rGqSLe7gKXh+zGvOA6WlbCo1/PpZatDicaIf562 S6eiGgmcYw8UcvXORso4/tUCkFfmttkR/34NSAsxnNCYkg+Dwe15rWfIaBBVy5QgiO B2lLKhvF8N3L40t83swaXxf9+iaq8c3/u5Yf5ZQw= Message-ID: <54A6DB61.9060607@delphij.net> Date: Fri, 02 Jan 2015 09:54:41 -0800 From: Xin Li Reply-To: d@delphij.net Organization: The FreeBSD Project MIME-Version: 1.0 To: Steven Hartland , d@delphij.net, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r276123 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs References: <201412230931.sBN9VPMK017968@svn.freebsd.org> <54A35B88.9090102@delphij.net> <54A39153.8040905@freebsd.org> <54A3ACEF.70905@delphij.net> <54A5AC21.5070802@multiplay.co.uk> In-Reply-To: <54A5AC21.5070802@multiplay.co.uk> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 17:54:48 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 On 01/01/15 12:20, Steven Hartland wrote: > > On 31/12/2014 07:59, Xin Li wrote: >> Hi, Steven, >> >> On 12/30/14 22:01, Steven Hartland wrote: >>> On 31/12/2014 02:12, Xin Li wrote: >>>> On 12/23/14 01:31, Steven Hartland wrote: >>>>> Author: smh Date: Tue Dec 23 09:31:24 2014 New Revision: >>>>> 276123 URL: >>>>> https://svnweb.freebsd.org/changeset/base/276123 >>>>> >>>>> Log: Always sync the global ZFS config cache to reflect the >>>>> new mosconfig This fixes out of date zpool.cache for root >>>>> pools, which can cause issues such as confusion of zdb >>>>> etc. MFC after: 1 month >>>>> >>>>> Modified: >>>>> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >>>>> >>>>> >>>>> Modified: >>>>> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >>>>> >>>>> ============================================================================== >>>>> >>>>> >>>>> --- >>>>> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >>>>> >>>>> Tue Dec 23 08:51:30 2014 (r276122) >>>>> +++ >>>>> head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c >>>>> >>>>> Tue Dec 23 09:31:24 2014 (r276123) >>>>> @@ -536,8 +536,7 @@ spa_config_update(spa_t *spa, int >>>>> what) /* * Update the global config cache to reflect the >>>>> new mosconfig. */ - if (!spa->spa_is_root) - >>>>> spa_config_sync(spa, B_FALSE, what != >>>>> SPA_CONFIG_UPDATE_POOL); + spa_config_sync(spa, B_FALSE, >>>>> what != SPA_CONFIG_UPDATE_POOL); if (what == >>>>> SPA_CONFIG_UPDATE_POOL) spa_config_update(spa, >>>>> SPA_CONFIG_UPDATE_VDEVS); >>>> It seems like that this change breaks systems where not all >>>> pools are available (e.g. some of pools are encrypted) at >>>> boot time, by removing all these pools from the cache file. >>>> >>>> As a result, on the next boot, these pools would not be >>>> imported even when the devices are available (geli attached), >>>> and reverting this change would restore the system to its >>>> previous behavior. >>>> >>>> Perhaps it have exposed an existing bug? >>> I've managed to reproduce this here with mdX backed test pools, >>> and looking into it this is due to spa_config_sync: >>> >>> /* * Skip over our own pool if we're about to remove * >>> ourselves from the spa namespace or any pool that * is >>> readonly. Since we cannot guarantee that a * readonly pool >>> would successfully import upon reboot, * we don't allow them to >>> be written to the cache file. */ if ((spa == target && >>> removing) || !spa_writeable(spa)) { continue; } >>> >>> This was added by upstream: >>> https://github.com/illumos/illumos-gate/commit/fb02ae025247e3b662600e5a9c1b4c33ecab7d72 >>> >>> >>> >>> https://www.illumos.org/issues/3639 >>> >>> It seems the desired behavior was to exclude read only pools, >>> to prevent them being mounted writable on reboot, but the check >>> is too wide and also excludes unavailable pools too. >>> >>> The attached patch corrects the test to only check writable on >>> active pools so I believe should fix the issue your seeing. >>> >>> If you can test it and lmk that would be great. >> This is an improvement (the attaching of pool is now working) but >> the cached configuration is somewhat corrupted, it shows many >> lines of vdev_stats[] contents. >> >> I'll take a look at the code tomorrow and see if I can do some >> instruments and possibly figure out the underlying issue. >> >> Cheers, > Looks like the spa_config_sync makes the assumption that the last > call to spa_config_generate was done with getstats = 0. > > This is now an invalid assumption so we need to ensure that stats > are removed from the config nvl before persisting to disk. > > The attached patch, which supersedes the last one I sent, fixes > that in my tests here. > > Let me know if it fixes your test case too? Yes, this fixes the problem, thanks for working on it. I'm not fully convinced with the approach though -- shouldn't we update the cachefile (again) when the pool become available? Cheers, - -- Xin LI https://www.delphij.net/ FreeBSD - The Power to Serve! Live free or die -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.1.1 (FreeBSD) iQIcBAEBCgAGBQJUptteAAoJEJW2GBstM+nsrKIQAIGex0+PbAXgMzXgKh4dB+gw ZX2VN6XBFYsG0Eu7m0ZNDv5cdYayLEM5gL2RXd7XTLssDXFi7TecWOmrZydXawES vhc8uvjFboZN8jxlKBw+AL3gPaRx4IY05pX36DBo4Rnj+b2+A7HZFegdPUPrVMwS LZRk+ABrE3dobVu3QYtjBjNc+U6sAgDRJyewGslLQNITrwNyWXRM5O+NjGOitY3a +xlhmyuod2zNddz14oIDcJ/3Y7NUNlvSkldmLJhBnaX9WvLSVvBlK8J5fsZpwDAI TJ6kzUd97C4A7t5twX88zIHWhZMFqxsHXACQkpY5Uq3JIp5VVwPHLbuh7THmKi2e IiGVynGT9Agt0XwgeCQRRvD048cHX0MMnSIIo7VB1eXihMTXvcVxsZnaGS16lO5U H8uhegeB9EbFx/lcg+dGpVmbpjqQ+jbrxu0wBx1Gfj0KHe4t/ajkdTnUQuNpUV+o r/8R2uL1H33dYjDtJDRPTOJEttNDcssZSt7EM1Rp1UdlYpWgXVP/wiKf5o4Ad9yZ /H2PTczcHSqOUEvXFfLUmy+T0u1htHCzi6FqI+wBh9PMBbDtZhetWTfVbjy4GIQr AzmGESjzrj97WQWum7ArmtuWYLnOfbsAtgj8XO1q94OfYoaTAkreOQndym/l+lRG mfScLpmdOJtY+ghicS6l =97mC -----END PGP SIGNATURE----- From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 18:36:09 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5BD36A33; Fri, 2 Jan 2015 18:36:09 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 482A31BD8; Fri, 2 Jan 2015 18:36:09 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02Ia959061960; Fri, 2 Jan 2015 18:36:09 GMT (envelope-from dchagin@FreeBSD.org) Received: (from dchagin@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02Ia92s061959; Fri, 2 Jan 2015 18:36:09 GMT (envelope-from dchagin@FreeBSD.org) Message-Id: <201501021836.t02Ia92s061959@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dchagin set sender to dchagin@FreeBSD.org using -f From: Dmitry Chagin Date: Fri, 2 Jan 2015 18:36:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276550 - head/sys/compat/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 18:36:09 -0000 Author: dchagin Date: Fri Jan 2 18:36:08 2015 New Revision: 276550 URL: https://svnweb.freebsd.org/changeset/base/276550 Log: Remove Giant from linux_getcwd() due to VFS is MPSAFE now. Discussed with: kib MFC after: 1 week Modified: head/sys/compat/linux/linux_getcwd.c Modified: head/sys/compat/linux/linux_getcwd.c ============================================================================== --- head/sys/compat/linux/linux_getcwd.c Fri Jan 2 18:32:53 2015 (r276549) +++ head/sys/compat/linux/linux_getcwd.c Fri Jan 2 18:36:08 2015 (r276550) @@ -450,11 +450,8 @@ linux_getcwd(struct thread *td, struct l * limit it to N/2 vnodes for an N byte buffer. */ - mtx_lock(&Giant); error = linux_getcwd_common (td->td_proc->p_fd->fd_cdir, NULL, &bp, path, len/2, GETCWD_CHECK_ACCESS, td); - mtx_unlock(&Giant); - if (error) goto out; lenused = bend - bp; From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 18:45:07 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A76A8F3E; Fri, 2 Jan 2015 18:45:07 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 88F6D1D9F; Fri, 2 Jan 2015 18:45:07 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02Ij7vA067438; Fri, 2 Jan 2015 18:45:07 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02Ij3fX067411; Fri, 2 Jan 2015 18:45:03 GMT (envelope-from bapt@FreeBSD.org) Message-Id: <201501021845.t02Ij3fX067411@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f From: Baptiste Daroussin Date: Fri, 2 Jan 2015 18:45:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276551 - in head: . contrib/texinfo gnu/usr.bin gnu/usr.bin/binutils gnu/usr.bin/binutils/doc gnu/usr.bin/cc gnu/usr.bin/cc/doc gnu/usr.bin/gdb gnu/usr.bin/gdb/doc gnu/usr.bin/grep gnu... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 18:45:07 -0000 Author: bapt Date: Fri Jan 2 18:45:03 2015 New Revision: 276551 URL: https://svnweb.freebsd.org/changeset/base/276551 Log: Remove GNU texinfo from base along with all info pages. To be able to info pages consider installing texinfo from ports print/texinfo or via pkg: pkg install texinfo Differential Revision: https://reviews.freebsd.org/D1409 Reviewed by: emaste, imp (previous version) Relnotes: yes Deleted: head/contrib/texinfo/ head/gnu/usr.bin/binutils/doc/ head/gnu/usr.bin/cc/doc/ head/gnu/usr.bin/gdb/doc/ head/gnu/usr.bin/grep/doc/ head/gnu/usr.bin/groff/doc/ head/gnu/usr.bin/texinfo/ head/kerberos5/doc/ head/lib/libcom_err/doc/ head/tools/build/options/WITH_INFO head/usr.sbin/amd/doc/ Modified: head/Makefile.inc1 head/ObsoleteFiles.inc head/UPDATING head/gnu/usr.bin/Makefile head/gnu/usr.bin/binutils/Makefile head/gnu/usr.bin/cc/Makefile head/gnu/usr.bin/gdb/Makefile head/gnu/usr.bin/grep/Makefile head/gnu/usr.bin/groff/Makefile head/kerberos5/Makefile head/lib/libcom_err/Makefile head/tools/build/mk/OptionalObsoleteFiles.inc head/usr.sbin/amd/Makefile Modified: head/Makefile.inc1 ============================================================================== --- head/Makefile.inc1 Fri Jan 2 18:36:08 2015 (r276550) +++ head/Makefile.inc1 Fri Jan 2 18:45:03 2015 (r276551) @@ -260,7 +260,7 @@ BMAKE= MAKEOBJDIRPREFIX=${WORLDTMP} \ DESTDIR= \ BOOTSTRAPPING=${OSRELDATE} \ SSP_CFLAGS= \ - MK_HTML=no MK_INFO=no NO_LINT=yes MK_MAN=no \ + MK_HTML=no NO_LINT=yes MK_MAN=no \ -DNO_PIC MK_PROFILE=no -DNO_SHARED \ -DNO_CPU_CFLAGS MK_WARNS=no MK_CTF=no \ MK_CLANG_EXTRAS=no MK_CLANG_FULL=no \ @@ -293,7 +293,7 @@ KTMAKE= TOOLS_PREFIX=${WORLDTMP} MAKEOB DESTDIR= \ BOOTSTRAPPING=${OSRELDATE} \ SSP_CFLAGS= \ - MK_HTML=no MK_INFO=no -DNO_LINT MK_MAN=no \ + MK_HTML=no -DNO_LINT MK_MAN=no \ -DNO_PIC MK_PROFILE=no -DNO_SHARED \ -DNO_CPU_CFLAGS MK_WARNS=no MK_CTF=no @@ -438,7 +438,7 @@ LIB32WMAKEFLAGS+= CC="${XCC} ${LIB32FLAG MK_TESTS=no LIB32WMAKE= ${LIB32WMAKEENV} ${MAKE} ${LIB32WMAKEFLAGS} \ - MK_MAN=no MK_INFO=no MK_HTML=no + MK_MAN=no MK_HTML=no LIB32IMAKE= ${LIB32WMAKE:NINSTALL=*:NDESTDIR=*:N_LDSCRIPTROOT=*} \ MK_TOOLCHAIN=no ${IMAKE_INSTALL} .endif @@ -590,7 +590,7 @@ _libraries: @echo ">>> stage 4.2: building libraries" @echo "--------------------------------------------------------------" ${_+_}cd ${.CURDIR}; \ - ${WMAKE} -DNO_FSCHG MK_HTML=no MK_INFO=no -DNO_LINT MK_MAN=no \ + ${WMAKE} -DNO_FSCHG MK_HTML=no -DNO_LINT MK_MAN=no \ MK_PROFILE=no MK_TESTS=no MK_TESTS_SUPPORT=${MK_TESTS} libraries _depend: @echo @@ -784,9 +784,6 @@ __installcheck_UGID: # # Required install tools to be saved in a scratch dir for safety. # -.if ${MK_INFO} != "no" -_install-info= install-info -.endif .if ${MK_ZONEINFO} != "no" _zoneinfo= zic tzsetup .endif @@ -1367,11 +1364,6 @@ _share= share/syscons/scrnmaps _gcc_tools= gnu/usr.bin/cc/cc_tools .endif -.if ${MK_INFO} != "no" -_texinfo= gnu/usr.bin/texinfo/libtxi \ - gnu/usr.bin/texinfo/makeinfo -.endif - .if ${MK_RESCUE} != "no" _rescue= rescue/rescue .endif @@ -1403,16 +1395,6 @@ build-tools: .MAKE ${MAKE} DIRPRFX=${_tool}/ depend && \ ${MAKE} DIRPRFX=${_tool}/ all .endfor -.for _tool in \ - ${_texinfo} - ${_+_}@${ECHODIR} "===> ${_tool} (obj,depend,all,install)"; \ - cd ${.CURDIR}/${_tool} && \ - ${MAKE} DIRPRFX=${_tool}/ obj && \ - ${MAKE} DIRPRFX=${_tool}/ depend && \ - ${MAKE} DIRPRFX=${_tool}/ all && \ - ${MAKE} DIRPRFX=${_tool}/ install DESTDIR=${WORLDTMP} -.endfor - # # kernel-tools: Build kernel-building tools @@ -1495,7 +1477,7 @@ NXBMAKE= ${NXBENV} ${MAKE} \ MACHINE=${TARGET} MACHINE_ARCH=${TARGET_ARCH} \ MK_GDB=no MK_TESTS=no \ SSP_CFLAGS= \ - MK_HTML=no MK_INFO=no NO_LINT=yes MK_MAN=no \ + MK_HTML=no NO_LINT=yes MK_MAN=no \ -DNO_PIC MK_PROFILE=no -DNO_SHARED \ -DNO_CPU_CFLAGS MK_WARNS=no MK_CTF=no \ MK_CLANG_EXTRAS=no MK_CLANG_FULL=no \ @@ -2024,7 +2006,7 @@ XDEV_CPUTYPE?=${CPUTYPE} XDEV_CPUTYPE?=${TARGET_CPUTYPE} .endif -NOFUN=-DNO_FSCHG MK_HTML=no MK_INFO=no -DNO_LINT \ +NOFUN=-DNO_FSCHG MK_HTML=no -DNO_LINT \ MK_MAN=no MK_NLS=no MK_PROFILE=no \ MK_KERBEROS=no MK_RESCUE=no MK_TESTS=no MK_WARNS=no \ TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \ Modified: head/ObsoleteFiles.inc ============================================================================== --- head/ObsoleteFiles.inc Fri Jan 2 18:36:08 2015 (r276550) +++ head/ObsoleteFiles.inc Fri Jan 2 18:45:03 2015 (r276551) @@ -38,6 +38,38 @@ # xargs -n1 | sort | uniq -d; # done +# 20150103: removal of texinfo +OLD_FILES+=usr/bin/info +OLD_FILES+=usr/bin/infokey +OLD_FILES+=usr/bin/install-info +OLD_FILES+=usr/bin/makeinfo +OLD_FILES+=usr/bin/texindex +OLD_FILES+=usr/share/info/am-utils.info.gz +OLD_FILES+=usr/share/info/as-utils.info.gz +OLD_FILES+=usr/share/info/binutils.info.gz +OLD_FILES+=usr/share/info/com_err.info.gz +OLD_FILES+=usr/share/info/diff.info.gz +OLD_FILES+=usr/share/info/gdb.info.gz +OLD_FILES+=usr/share/info/gdbint.info.gz +OLD_FILES+=usr/share/info/gperf.info.gz +OLD_FILES+=usr/share/info/grep.info.gz +OLD_FILES+=usr/share/info/groff.info.gz +OLD_FILES+=usr/share/info/heimdal.info.gz +OLD_FILES+=usr/share/info/history.info.gz +OLD_FILES+=usr/share/info/info-stnd.info.gz +OLD_FILES+=usr/share/info/info.info.gz +OLD_FILES+=usr/share/info/ld.info.gz +OLD_FILES+=usr/share/info/regex.info.gz +OLD_FILES+=usr/share/info/rluserman.info.gz +OLD_FILES+=usr/share/info/stabs.info.gz +OLD_FILES+=usr/share/info/texinfo.info.gz +OLD_FILES+=usr/share/man/man1/info.1.gz +OLD_FILES+=usr/share/man/man1/infokey.1.gz +OLD_FILES+=usr/share/man/man1/install-info.1.gz +OLD_FILES+=usr/share/man/man1/makeinfo.1.gz +OLD_FILES+=usr/share/man/man1/texindex.1.gz +OLD_FILES+=usr/share/man/man5/info.5.gz +OLD_FILES+=usr/share/man/man5/texinfo.5.gz # 20141231: new clang import which bumps version from 3.4.1 to 3.5.0. OLD_FILES+=usr/include/clang/3.4.1/__wmmintrin_aes.h OLD_FILES+=usr/include/clang/3.4.1/__wmmintrin_pclmul.h Modified: head/UPDATING ============================================================================== --- head/UPDATING Fri Jan 2 18:36:08 2015 (r276550) +++ head/UPDATING Fri Jan 2 18:45:03 2015 (r276551) @@ -31,6 +31,10 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20150102: + The GNU texinfo and GNU info pages have been removed. + To be able to view GNU info pages please install texinfo from ports. + 20141231: Clang, llvm and lldb have been upgraded to 3.5.0 release. @@ -176,6 +180,7 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11 The GNU texinfo and GNU info pages are not built and installed anymore, WITH_INFO knob has been added to allow to built and install them again. + UPDATE: see 20150102 entry on texinfo's removal 20140708: The GNU readline library is now an INTERNALLIB - that is, it is Modified: head/gnu/usr.bin/Makefile ============================================================================== --- head/gnu/usr.bin/Makefile Fri Jan 2 18:36:08 2015 (r276550) +++ head/gnu/usr.bin/Makefile Fri Jan 2 18:45:03 2015 (r276551) @@ -14,8 +14,7 @@ SUBDIR= ${_binutils} \ ${_groff} \ ${_rcs} \ sdiff \ - ${_tests} \ - ${_texinfo} + ${_tests} .if ${MK_CXX} != "no" .if ${MK_GCC} != "no" @@ -30,10 +29,6 @@ _groff= groff _dtc= dtc .endif -.if ${MK_INFO} != "no" -_texinfo= texinfo -.endif - .if ${MK_RCS} != "no" _rcs= rcs .endif Modified: head/gnu/usr.bin/binutils/Makefile ============================================================================== --- head/gnu/usr.bin/binutils/Makefile Fri Jan 2 18:36:08 2015 (r276550) +++ head/gnu/usr.bin/binutils/Makefile Fri Jan 2 18:45:03 2015 (r276551) @@ -15,9 +15,8 @@ SUBDIR= libiberty \ readelf \ ${_size} \ ${_strings} \ - ${_strip} \ - doc - + ${_strip} + .if ${MK_ELFTOOLCHAIN_TOOLS} == "no" _addr2line= addr2line _nm= nm Modified: head/gnu/usr.bin/cc/Makefile ============================================================================== --- head/gnu/usr.bin/cc/Makefile Fri Jan 2 18:36:08 2015 (r276550) +++ head/gnu/usr.bin/cc/Makefile Fri Jan 2 18:45:03 2015 (r276551) @@ -5,7 +5,7 @@ # The order of some of these are rather important. Some depend on previous # subdirs. -SUBDIR= cc_tools libiberty libcpp libdecnumber cc_int cc cc1 include doc +SUBDIR= cc_tools libiberty libcpp libdecnumber cc_int cc cc1 include .if ${MK_CPP} != "no" SUBDIR+= cpp Modified: head/gnu/usr.bin/gdb/Makefile ============================================================================== --- head/gnu/usr.bin/gdb/Makefile Fri Jan 2 18:36:08 2015 (r276550) +++ head/gnu/usr.bin/gdb/Makefile Fri Jan 2 18:45:03 2015 (r276551) @@ -1,6 +1,6 @@ # $FreeBSD$ -SUBDIR= doc libgdb gdb gdbtui kgdb +SUBDIR= libgdb gdb gdbtui kgdb .if exists(${.CURDIR}/gdbserver/reg-${MACHINE_CPUARCH}.c) SUBDIR+=gdbserver Modified: head/gnu/usr.bin/grep/Makefile ============================================================================== --- head/gnu/usr.bin/grep/Makefile Fri Jan 2 18:36:08 2015 (r276550) +++ head/gnu/usr.bin/grep/Makefile Fri Jan 2 18:45:03 2015 (r276551) @@ -45,8 +45,6 @@ MLINKS+=grep.1 zgrep.1 grep.1 zegrep.1 g gnugrep.1: grep.1 cp ${.ALLSRC} ${.TARGET} -SUBDIR+=doc - check: all @failed=0; total=0; \ for tst in ${TESTS}; do \ Modified: head/gnu/usr.bin/groff/Makefile ============================================================================== --- head/gnu/usr.bin/groff/Makefile Fri Jan 2 18:36:08 2015 (r276550) +++ head/gnu/usr.bin/groff/Makefile Fri Jan 2 18:45:03 2015 (r276551) @@ -1,6 +1,6 @@ # $FreeBSD$ -SUBDIR= contrib doc font man src tmac +SUBDIR= contrib font man src tmac .for subdir in ${SUBDIR:Nsrc} SUBDIR_DEPEND_${subdir}= src Modified: head/kerberos5/Makefile ============================================================================== --- head/kerberos5/Makefile Fri Jan 2 18:36:08 2015 (r276550) +++ head/kerberos5/Makefile Fri Jan 2 18:45:03 2015 (r276551) @@ -1,6 +1,6 @@ # $FreeBSD$ -SUBDIR= doc lib libexec tools usr.bin usr.sbin +SUBDIR= lib libexec tools usr.bin usr.sbin # These are the programs which depend on Kerberos. KPROGS= lib/libpam \ Modified: head/lib/libcom_err/Makefile ============================================================================== --- head/lib/libcom_err/Makefile Fri Jan 2 18:36:08 2015 (r276550) +++ head/lib/libcom_err/Makefile Fri Jan 2 18:45:03 2015 (r276551) @@ -10,8 +10,6 @@ CFLAGS+= -I${COM_ERRDIR} LDFLAGS= -Wl,--no-undefined VERSION_MAP= ${COM_ERRDIR}/version-script.map -SUBDIR= doc - .include .PATH: ${COM_ERRDIR} Modified: head/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- head/tools/build/mk/OptionalObsoleteFiles.inc Fri Jan 2 18:36:08 2015 (r276550) +++ head/tools/build/mk/OptionalObsoleteFiles.inc Fri Jan 2 18:45:03 2015 (r276551) @@ -1967,40 +1967,6 @@ OLD_FILES+=usr/share/man/man8/traceroute OLD_FILES+=rescue/ping6 .endif -.if ${MK_INFO} == no -OLD_FILES+=usr/bin/info -OLD_FILES+=usr/bin/infokey -OLD_FILES+=usr/bin/install-info -OLD_FILES+=usr/bin/makeinfo -OLD_FILES+=usr/bin/texindex -OLD_FILES+=usr/share/info/am-utils.info.gz -OLD_FILES+=usr/share/info/as-utils.info.gz -OLD_FILES+=usr/share/info/binutils.info.gz -OLD_FILES+=usr/share/info/com_err.info.gz -OLD_FILES+=usr/share/info/diff.info.gz -OLD_FILES+=usr/share/info/gdb.info.gz -OLD_FILES+=usr/share/info/gdbint.info.gz -OLD_FILES+=usr/share/info/gperf.info.gz -OLD_FILES+=usr/share/info/grep.info.gz -OLD_FILES+=usr/share/info/groff.info.gz -OLD_FILES+=usr/share/info/heimdal.info.gz -OLD_FILES+=usr/share/info/history.info.gz -OLD_FILES+=usr/share/info/info-stnd.info.gz -OLD_FILES+=usr/share/info/info.info.gz -OLD_FILES+=usr/share/info/ld.info.gz -OLD_FILES+=usr/share/info/regex.info.gz -OLD_FILES+=usr/share/info/rluserman.info.gz -OLD_FILES+=usr/share/info/stabs.info.gz -OLD_FILES+=usr/share/info/texinfo.info.gz -OLD_FILES+=usr/share/man/man1/info.1.gz -OLD_FILES+=usr/share/man/man1/infokey.1.gz -OLD_FILES+=usr/share/man/man1/install-info.1.gz -OLD_FILES+=usr/share/man/man1/makeinfo.1.gz -OLD_FILES+=usr/share/man/man1/texindex.1.gz -OLD_FILES+=usr/share/man/man5/info.5.gz -OLD_FILES+=usr/share/man/man5/texinfo.5.gz -.endif - .if ${MK_IPFILTER} == no OLD_FILES+=etc/periodic/security/510.ipfdenied OLD_FILES+=etc/periodic/security/610.ipf6denied Modified: head/usr.sbin/amd/Makefile ============================================================================== --- head/usr.sbin/amd/Makefile Fri Jan 2 18:36:08 2015 (r276550) +++ head/usr.sbin/amd/Makefile Fri Jan 2 18:45:03 2015 (r276551) @@ -5,7 +5,7 @@ # # $FreeBSD$ -SUBDIR= include libamu amd amq doc fixmount fsinfo hlfsd mk-amd-map pawd \ +SUBDIR= include libamu amd amq fixmount fsinfo hlfsd mk-amd-map pawd \ scripts wire-test .include From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 18:45:49 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 511D71E0; Fri, 2 Jan 2015 18:45:49 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3DD9E1DB6; Fri, 2 Jan 2015 18:45:49 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02Ijn3n067738; Fri, 2 Jan 2015 18:45:49 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02Ijn3m067737; Fri, 2 Jan 2015 18:45:49 GMT (envelope-from bapt@FreeBSD.org) Message-Id: <201501021845.t02Ijn3m067737@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f From: Baptiste Daroussin Date: Fri, 2 Jan 2015 18:45:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276552 - head X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 18:45:49 -0000 Author: bapt Date: Fri Jan 2 18:45:48 2015 New Revision: 276552 URL: https://svnweb.freebsd.org/changeset/base/276552 Log: Fix the date of texinfo removal Modified: head/ObsoleteFiles.inc Modified: head/ObsoleteFiles.inc ============================================================================== --- head/ObsoleteFiles.inc Fri Jan 2 18:45:03 2015 (r276551) +++ head/ObsoleteFiles.inc Fri Jan 2 18:45:48 2015 (r276552) @@ -38,7 +38,7 @@ # xargs -n1 | sort | uniq -d; # done -# 20150103: removal of texinfo +# 20150102: removal of texinfo OLD_FILES+=usr/bin/info OLD_FILES+=usr/bin/infokey OLD_FILES+=usr/bin/install-info From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 18:54:56 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 683688AC; Fri, 2 Jan 2015 18:54:56 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 54FA41F5B; Fri, 2 Jan 2015 18:54:56 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02IsuD7075648; Fri, 2 Jan 2015 18:54:56 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02IsuLm075647; Fri, 2 Jan 2015 18:54:56 GMT (envelope-from bapt@FreeBSD.org) Message-Id: <201501021854.t02IsuLm075647@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f From: Baptiste Daroussin Date: Fri, 2 Jan 2015 18:54:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276556 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 18:54:56 -0000 Author: bapt Date: Fri Jan 2 18:54:55 2015 New Revision: 276556 URL: https://svnweb.freebsd.org/changeset/base/276556 Log: Remove leftovers from r276551 Modified: head/share/mk/bsd.opts.mk Modified: head/share/mk/bsd.opts.mk ============================================================================== --- head/share/mk/bsd.opts.mk Fri Jan 2 18:52:18 2015 (r276555) +++ head/share/mk/bsd.opts.mk Fri Jan 2 18:54:55 2015 (r276556) @@ -68,8 +68,7 @@ __DEFAULT_YES_OPTIONS = \ __DEFAULT_NO_OPTIONS = \ CTF \ DEBUG_FILES \ - INSTALL_AS_USER \ - INFO + INSTALL_AS_USER .include From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 18:57:59 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7DC9CC60; Fri, 2 Jan 2015 18:57:59 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6A3FD1FC5; Fri, 2 Jan 2015 18:57:59 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02Ivxku076443; Fri, 2 Jan 2015 18:57:59 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02Ivxvj076442; Fri, 2 Jan 2015 18:57:59 GMT (envelope-from bapt@FreeBSD.org) Message-Id: <201501021857.t02Ivxvj076442@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f From: Baptiste Daroussin Date: Fri, 2 Jan 2015 18:57:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276559 - head/tools/build/options X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 18:57:59 -0000 Author: bapt Date: Fri Jan 2 18:57:58 2015 New Revision: 276559 URL: https://svnweb.freebsd.org/changeset/base/276559 Log: Fix typo Modified: head/tools/build/options/WITHOUT_WARNS Modified: head/tools/build/options/WITHOUT_WARNS ============================================================================== --- head/tools/build/options/WITHOUT_WARNS Fri Jan 2 18:57:51 2015 (r276558) +++ head/tools/build/options/WITHOUT_WARNS Fri Jan 2 18:57:58 2015 (r276559) @@ -2,4 +2,4 @@ Set this to not add warning flags to the compiler invocations. Useful as a temporary workaround when code enters the tree which triggers warnings in environments that differ from the -original develoepr. +original developer. From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 19:01:37 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 576F5B6; Fri, 2 Jan 2015 19:01:37 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 204A1640D1; Fri, 2 Jan 2015 19:01:37 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02J1axN080394; Fri, 2 Jan 2015 19:01:36 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02J1aeV080393; Fri, 2 Jan 2015 19:01:36 GMT (envelope-from bapt@FreeBSD.org) Message-Id: <201501021901.t02J1aeV080393@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f From: Baptiste Daroussin Date: Fri, 2 Jan 2015 19:01:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276561 - head/share/man/man5 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 19:01:37 -0000 Author: bapt Date: Fri Jan 2 19:01:36 2015 New Revision: 276561 URL: https://svnweb.freebsd.org/changeset/base/276561 Log: Regen after removal of texinfo Modified: head/share/man/man5/src.conf.5 Modified: head/share/man/man5/src.conf.5 ============================================================================== --- head/share/man/man5/src.conf.5 Fri Jan 2 19:01:00 2015 (r276560) +++ head/share/man/man5/src.conf.5 Fri Jan 2 19:01:36 2015 (r276561) @@ -1,7 +1,7 @@ .\" DO NOT EDIT-- this file is automatically generated. .\" from FreeBSD: head/tools/build/options/makeman 255964 2013-10-01 07:22:04Z des .\" $FreeBSD$ -.Dd December 1, 2014 +.Dd January 2, 2015 .Dt SRC.CONF 5 .Os .Sh NAME @@ -506,9 +506,6 @@ BSD grep. .It Va WITHOUT_GNU_SUPPORT .\" from FreeBSD: head/tools/build/options/WITHOUT_GNU_SUPPORT 156932 2006-03-21 07:50:50Z ru Set to build some programs without optional GNU support. -.It Va WITHOUT_GPIB -.\" from FreeBSD: head/tools/build/options/WITHOUT_GPIB 156932 2006-03-21 07:50:50Z ru -Set to not build GPIB bus support. .It Va WITHOUT_GPIO .\" from FreeBSD: head/tools/build/options/WITHOUT_GPIO 228081 2011-11-28 17:54:34Z dim Set to not build @@ -574,11 +571,6 @@ Set to build libraries, programs, and ke .It Va WITHOUT_INET_SUPPORT .\" from FreeBSD: head/tools/build/options/WITHOUT_INET_SUPPORT 221266 2011-04-30 17:58:28Z bz Set to build libraries, programs, and kernel modules without IPv4 support. -.It Va WITH_INFO -.\" from FreeBSD: head/tools/build/options/WITH_INFO 268496 2014-07-10 15:05:41Z bapt -Set to make or install -.Xr info 5 -files. .It Va WITHOUT_INSTALLLIB .\" from FreeBSD: head/tools/build/options/WITHOUT_INSTALLLIB 174497 2007-12-09 21:56:21Z dougb Set this if you do not want to install optional libraries. @@ -1139,7 +1131,7 @@ Set to not build .Xr vt 4 support files (fonts and keymaps). .It Va WITHOUT_WARNS -.\" from FreeBSD: head/tools/build/options/WITHOUT_WARNS 265830 2014-05-10 16:37:53Z imp +.\" from FreeBSD: head/tools/build/options/WITHOUT_WARNS 276559 2015-01-02 18:57:58Z bapt Set this to not add warning flags to the compiler invocations. Useful as a temporary workaround when code enters the tree which triggers warnings in environments that differ from the From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 19:05:40 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C9926262; Fri, 2 Jan 2015 19:05:40 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B5DD264104; Fri, 2 Jan 2015 19:05:40 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02J5eDu081835; Fri, 2 Jan 2015 19:05:40 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02J5e0n081834; Fri, 2 Jan 2015 19:05:40 GMT (envelope-from bapt@FreeBSD.org) Message-Id: <201501021905.t02J5e0n081834@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f From: Baptiste Daroussin Date: Fri, 2 Jan 2015 19:05:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276562 - in head/gnu/lib/libregex: . doc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 19:05:40 -0000 Author: bapt Date: Fri Jan 2 19:05:39 2015 New Revision: 276562 URL: https://svnweb.freebsd.org/changeset/base/276562 Log: Remove info pages Deleted: head/gnu/lib/libregex/doc/ Modified: head/gnu/lib/libregex/Makefile Modified: head/gnu/lib/libregex/Makefile ============================================================================== --- head/gnu/lib/libregex/Makefile Fri Jan 2 19:01:36 2015 (r276561) +++ head/gnu/lib/libregex/Makefile Fri Jan 2 19:05:39 2015 (r276562) @@ -1,7 +1,5 @@ # $FreeBSD$ -SUBDIR= doc - LIB= gnuregex SHLIB_MAJOR= 5 From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 19:06:28 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CB0A93A8; Fri, 2 Jan 2015 19:06:28 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B73C16411C; Fri, 2 Jan 2015 19:06:28 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02J6SF3082056; Fri, 2 Jan 2015 19:06:28 GMT (envelope-from rwatson@FreeBSD.org) Received: (from rwatson@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02J6Sau082055; Fri, 2 Jan 2015 19:06:28 GMT (envelope-from rwatson@FreeBSD.org) Message-Id: <201501021906.t02J6Sau082055@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: rwatson set sender to rwatson@FreeBSD.org using -f From: Robert Watson Date: Fri, 2 Jan 2015 19:06:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276563 - head/sys/dev/cxgb/ulp/tom X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 19:06:28 -0000 Author: rwatson Date: Fri Jan 2 19:06:27 2015 New Revision: 276563 URL: https://svnweb.freebsd.org/changeset/base/276563 Log: In mbuf_to_synq_entry(), use M_START() and M_SIZE() to calculate an offset into mbuf storage, to reduce knowledge about mbuf/cluster layout in the cxgb device driver. Reviewed by: np Sponsored by: EMC / Isilon Storage Division Modified: head/sys/dev/cxgb/ulp/tom/cxgb_listen.c Modified: head/sys/dev/cxgb/ulp/tom/cxgb_listen.c ============================================================================== --- head/sys/dev/cxgb/ulp/tom/cxgb_listen.c Fri Jan 2 19:05:39 2015 (r276562) +++ head/sys/dev/cxgb/ulp/tom/cxgb_listen.c Fri Jan 2 19:06:27 2015 (r276563) @@ -442,26 +442,13 @@ static struct synq_entry * mbuf_to_synq_entry(struct mbuf *m) { int len = roundup(sizeof (struct synq_entry), 8); - uint8_t *buf; - int buflen; if (__predict_false(M_TRAILINGSPACE(m) < len)) { panic("%s: no room for synq_entry (%td, %d)\n", __func__, M_TRAILINGSPACE(m), len); } - if (m->m_flags & M_EXT) { - buf = m->m_ext.ext_buf; - buflen = m->m_ext.ext_size; - } else if (m->m_flags & M_PKTHDR) { - buf = &m->m_pktdat[0]; - buflen = MHLEN; - } else { - buf = &m->m_dat[0]; - buflen = MLEN; - } - - return ((void *)(buf + buflen - len)); + return ((void *)(M_START(m) + M_SIZE(m) - len)); } #ifdef KTR From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 19:29:34 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F158874C; Fri, 2 Jan 2015 19:29:33 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id DD9302450; Fri, 2 Jan 2015 19:29:33 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02JTXYs093293; Fri, 2 Jan 2015 19:29:33 GMT (envelope-from dchagin@FreeBSD.org) Received: (from dchagin@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02JTXd7093292; Fri, 2 Jan 2015 19:29:33 GMT (envelope-from dchagin@FreeBSD.org) Message-Id: <201501021929.t02JTXd7093292@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: dchagin set sender to dchagin@FreeBSD.org using -f From: Dmitry Chagin Date: Fri, 2 Jan 2015 19:29:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276564 - head/sys/compat/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 19:29:34 -0000 Author: dchagin Date: Fri Jan 2 19:29:32 2015 New Revision: 276564 URL: https://svnweb.freebsd.org/changeset/base/276564 Log: Cast *path to silence clang -Wpointer-sign warning. MFC after: 1 week Modified: head/sys/compat/linux/linux_getcwd.c Modified: head/sys/compat/linux/linux_getcwd.c ============================================================================== --- head/sys/compat/linux/linux_getcwd.c Fri Jan 2 19:06:27 2015 (r276563) +++ head/sys/compat/linux/linux_getcwd.c Fri Jan 2 19:29:32 2015 (r276564) @@ -430,7 +430,7 @@ linux_getcwd(struct thread *td, struct l path = (char *)malloc(len, M_TEMP, M_WAITOK); - error = kern___getcwd(td, path, UIO_SYSSPACE, len); + error = kern___getcwd(td, (u_char *)path, UIO_SYSSPACE, len); if (!error) { lenused = strlen(path) + 1; if (lenused <= args->bufsize) { From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 20:23:21 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DCCFFFE4; Fri, 2 Jan 2015 20:23:20 +0000 (UTC) Received: from tensor.andric.com (unknown [IPv6:2001:7b8:3a7:1:2d0:b7ff:fea0:8c26]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client CN "tensor.andric.com", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 84BE32D7D; Fri, 2 Jan 2015 20:23:20 +0000 (UTC) Received: from [IPv6:2001:7b8:3a7::fd7c:bcc2:17c:e893] (unknown [IPv6:2001:7b8:3a7:0:fd7c:bcc2:17c:e893]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id 7BCB9B80A; Fri, 2 Jan 2015 21:23:16 +0100 (CET) Subject: Re: svn commit: r276499 - head/sys/conf Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Content-Type: multipart/signed; boundary="Apple-Mail=_EB1095E1-34C5-4036-A3A9-EF5C539A485B"; protocol="application/pgp-signature"; micalg=pgp-sha1 X-Pgp-Agent: GPGMail 2.5b4 From: Dimitry Andric In-Reply-To: <41CF0351-83A3-4D54-B308-32F310DCD3DA@gmail.com> Date: Fri, 2 Jan 2015 21:23:09 +0100 Message-Id: References: <201501011007.t01A7wYW032884@svn.freebsd.org> <41CF0351-83A3-4D54-B308-32F310DCD3DA@gmail.com> To: Warner Losh X-Mailer: Apple Mail (2.1993) Cc: svn-src-head@freebsd.org, Roman Divacky , src-committers , svn-src-all@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 20:23:21 -0000 --Apple-Mail=_EB1095E1-34C5-4036-A3A9-EF5C539A485B Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii Hm, conditionalizing this on the compiler version is rather ugly. Isn't this only relevant when we do an MFC? But maybe it is indeed better to have the same Makefile for different toolchain envronments. -Dimitry > On 02 Jan 2015, at 18:33, Warner Losh wrote: >=20 > This breaks building the kernel with clang 3.4.1 >=20 > Warner >=20 >=20 >> On Jan 1, 2015, at 3:07 AM, Roman Divacky = wrote: >>=20 >> Author: rdivacky >> Date: Thu Jan 1 10:07:57 2015 >> New Revision: 276499 >> URL: https://svnweb.freebsd.org/changeset/base/276499 >>=20 >> Log: >> LLVM integrated assembler can assemble these files just fine. >>=20 >> Modified: >> head/sys/conf/Makefile.amd64 >> head/sys/conf/Makefile.i386 >> head/sys/conf/Makefile.pc98 >>=20 >> Modified: head/sys/conf/Makefile.amd64 >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- head/sys/conf/Makefile.amd64 Thu Jan 1 09:33:46 2015 = (r276498) >> +++ head/sys/conf/Makefile.amd64 Thu Jan 1 10:07:57 2015 = (r276499) >> @@ -37,11 +37,6 @@ INCLUDES+=3D -I$S/contrib/libfdt >> CFLAGS+=3D -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer >> .endif >>=20 >> -# XXX: clang integrated-as doesn't grok .codeNN directives yet >> -ASM_CFLAGS.acpi_wakecode.S=3D ${CLANG_NO_IAS} >> -ASM_CFLAGS.mpboot.S=3D ${CLANG_NO_IAS} >> -ASM_CFLAGS+=3D ${ASM_CFLAGS.${.IMPSRC:T}} >> - >> %BEFORE_DEPEND >>=20 >> %OBJS >>=20 >> Modified: head/sys/conf/Makefile.i386 >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- head/sys/conf/Makefile.i386 Thu Jan 1 09:33:46 2015 = (r276498) >> +++ head/sys/conf/Makefile.i386 Thu Jan 1 10:07:57 2015 = (r276499) >> @@ -32,11 +32,6 @@ S=3D ../../.. >>=20 >> INCLUDES+=3D -I$S/contrib/libfdt >>=20 >> -# XXX: clang integrated-as doesn't grok .codeNN directives yet >> -ASM_CFLAGS.acpi_wakecode.S=3D ${CLANG_NO_IAS} >> -ASM_CFLAGS.mpboot.s=3D ${CLANG_NO_IAS} >> -ASM_CFLAGS+=3D ${ASM_CFLAGS.${.IMPSRC:T}} >> - >> %BEFORE_DEPEND >>=20 >> %OBJS >>=20 >> Modified: head/sys/conf/Makefile.pc98 >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- head/sys/conf/Makefile.pc98 Thu Jan 1 09:33:46 2015 = (r276498) >> +++ head/sys/conf/Makefile.pc98 Thu Jan 1 10:07:57 2015 = (r276499) >> @@ -30,10 +30,6 @@ S=3D ../../.. >> .endif >> .include "$S/conf/kern.pre.mk" >>=20 >> -# XXX: clang integrated-as doesn't grok .codeNN directives yet >> -ASM_CFLAGS.mpboot.s=3D ${CLANG_NO_IAS} >> -ASM_CFLAGS+=3D ${ASM_CFLAGS.${.IMPSRC:T}} >> - >> %BEFORE_DEPEND >>=20 >> %OBJS >>=20 >=20 >=20 --Apple-Mail=_EB1095E1-34C5-4036-A3A9-EF5C539A485B Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.26 iEYEARECAAYFAlSm/jQACgkQsF6jCi4glqNFjgCg0NI8rl/HwNJK/MB1QvTH9Mbf /BIAn0UkX9YhUdD6FxNegCSOLiD+gVFP =RTGU -----END PGP SIGNATURE----- --Apple-Mail=_EB1095E1-34C5-4036-A3A9-EF5C539A485B-- From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 20:34:57 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A5756502; Fri, 2 Jan 2015 20:34:57 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7786164E1D; Fri, 2 Jan 2015 20:34:57 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02KYvaQ030457; Fri, 2 Jan 2015 20:34:57 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02KYu1I030453; Fri, 2 Jan 2015 20:34:56 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201501022034.t02KYu1I030453@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Garrett Cooper Date: Fri, 2 Jan 2015 20:34:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276565 - in head/gnu: lib/libstdc++/doc usr.bin/diff usr.bin/diff/doc usr.bin/gdb usr.bin/gperf usr.bin/gperf/doc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 20:34:57 -0000 Author: ngie Date: Fri Jan 2 20:34:55 2015 New Revision: 276565 URL: https://svnweb.freebsd.org/changeset/base/276565 Log: Remove gnu/ info pages to unbreak the build with MK_GCC != no, etc Reported by: Ivan Klymenko Reviewed by: bapt Differential Revision: D1412 Deleted: head/gnu/lib/libstdc++/doc/ head/gnu/usr.bin/diff/doc/ head/gnu/usr.bin/gperf/doc/Makefile Modified: head/gnu/usr.bin/diff/Makefile head/gnu/usr.bin/gdb/Makefile.inc head/gnu/usr.bin/gperf/Makefile Modified: head/gnu/usr.bin/diff/Makefile ============================================================================== --- head/gnu/usr.bin/diff/Makefile Fri Jan 2 19:29:32 2015 (r276564) +++ head/gnu/usr.bin/diff/Makefile Fri Jan 2 20:34:55 2015 (r276565) @@ -24,8 +24,6 @@ CFLAGS+=-I${.CURDIR}/../../../contrib/di CFLAGS+=-I${.CURDIR}/../../../contrib/diff/lib CFLAGS+=-I${DESTDIR}/usr/include/gnu -SUBDIR+=doc - LIBADD+= gnuregex .if ${MK_TESTS} != "no" Modified: head/gnu/usr.bin/gdb/Makefile.inc ============================================================================== --- head/gnu/usr.bin/gdb/Makefile.inc Fri Jan 2 19:29:32 2015 (r276564) +++ head/gnu/usr.bin/gdb/Makefile.inc Fri Jan 2 20:34:55 2015 (r276565) @@ -32,8 +32,6 @@ TARGET_SUBDIR= ${BMAKE_GDB}/arch/${TARGE GDB_CROSS_DEBUGGER= .endif -.if !defined(INFO) - .PATH: ${CNTRB_GDB}/gdb ${CNTRB_GDB}/gdb/cli ${CNTRB_GDB}/gdb/mi \ ${CNTRB_GDB}/gdb/signals ${CNTRB_GDB}/gdb/tui ${TARGET_SUBDIR} @@ -62,10 +60,4 @@ MAN= SRCS+= ${GENSRCS} CLEANFILES+= ${GENSRCS} -.else - -.PATH: ${CNTRB_GDB}/gdb ${CNTRB_GDB}/gdb/doc ${CNTRB_RL}/doc - -.endif - .include "../Makefile.inc" Modified: head/gnu/usr.bin/gperf/Makefile ============================================================================== --- head/gnu/usr.bin/gperf/Makefile Fri Jan 2 19:29:32 2015 (r276564) +++ head/gnu/usr.bin/gperf/Makefile Fri Jan 2 20:34:55 2015 (r276565) @@ -5,8 +5,6 @@ GPERFDIR= ${.CURDIR}/../../../contrib/gp .PATH: ${GPERFDIR}/src ${GPERFDIR}/lib ${GPERFDIR}/doc -SUBDIR= doc - PROG_CXX= gperf SRCS= bool-array.cc hash-table.cc input.cc keyword-list.cc keyword.cc \ main.cc options.cc output.cc positions.cc search.cc version.cc \ From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 20:47:53 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5DF408B7; Fri, 2 Jan 2015 20:47:53 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 303D2116B; Fri, 2 Jan 2015 20:47:53 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02KlrKs036442; Fri, 2 Jan 2015 20:47:53 GMT (envelope-from jkim@FreeBSD.org) Received: (from jkim@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02Klret036440; Fri, 2 Jan 2015 20:47:53 GMT (envelope-from jkim@FreeBSD.org) Message-Id: <201501022047.t02Klret036440@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: jkim set sender to jkim@FreeBSD.org using -f From: Jung-uk Kim Date: Fri, 2 Jan 2015 20:47:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276566 - head/gnu/usr.bin/gperf/doc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 20:47:53 -0000 Author: jkim Date: Fri Jan 2 20:47:52 2015 New Revision: 276566 URL: https://svnweb.freebsd.org/changeset/base/276566 Log: Garbage collect the empty directory. Deleted: head/gnu/usr.bin/gperf/doc/ From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 20:49:44 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7E671A9B; Fri, 2 Jan 2015 20:49:44 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 51442119B; Fri, 2 Jan 2015 20:49:44 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02KniF3036851; Fri, 2 Jan 2015 20:49:44 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02Kni1P036850; Fri, 2 Jan 2015 20:49:44 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201501022049.t02Kni1P036850@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 2 Jan 2015 20:49:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276567 - head/contrib/elftoolchain/readelf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 20:49:44 -0000 Author: emaste Date: Fri Jan 2 20:49:43 2015 New Revision: 276567 URL: https://svnweb.freebsd.org/changeset/base/276567 Log: readelf: Correct rounding on note padding In general 64-bit ELF notes use 4-byte padding, not 8, despite what is claimed in various specs. Upstream elftoolchain ticket 472 https://sourceforge.net/p/elftoolchain/tickets/472/ Sponsored by: The FreeBSD Foundation Modified: head/contrib/elftoolchain/readelf/readelf.c Modified: head/contrib/elftoolchain/readelf/readelf.c ============================================================================== --- head/contrib/elftoolchain/readelf/readelf.c Fri Jan 2 20:47:52 2015 (r276566) +++ head/contrib/elftoolchain/readelf/readelf.c Fri Jan 2 20:49:43 2015 (r276567) @@ -1492,6 +1492,7 @@ note_type(unsigned int osabi, unsigned i return "NT_FPREGSET (Floating point information)"; case NT_PRPSINFO: return "NT_PRPSINFO (Process information)"; +#if 0 case NT_AUXV: return "NT_AUXV (Auxiliary vector)"; case NT_PRXFPREG: @@ -1506,12 +1507,14 @@ note_type(unsigned int osabi, unsigned i return "NT_LWPSTATUS (Linux lwpstatus_t type)"; case NT_LWPSINFO: return "NT_LWPSINFO (Linux lwpinfo_t type)"; +#endif default: snprintf(s_nt, sizeof(s_nt), "", nt); return (s_nt); } } else { switch (nt) { +#if 0 case NT_ABI_TAG: switch (osabi) { case ELFOSABI_FREEBSD: @@ -1529,11 +1532,13 @@ note_type(unsigned int osabi, unsigned i return "NT_GNU_BUILD_ID (Build id set by ld(1))"; case NT_GNU_GOLD_VERSION: return "NT_GNU_GOLD_VERSION (GNU gold version)"; +#endif default: snprintf(s_nt, sizeof(s_nt), "", nt); return (s_nt); } } + (void)osabi; } static struct { @@ -3592,13 +3597,8 @@ dump_notes_content(struct readelf *re, c (uintmax_t) note->n_descsz); printf(" %s\n", note_type(re->ehdr.e_ident[EI_OSABI], re->ehdr.e_type, note->n_type)); - buf += sizeof(Elf_Note); - if (re->ec == ELFCLASS32) - buf += roundup2(note->n_namesz, 4) + - roundup2(note->n_descsz, 4); - else - buf += roundup2(note->n_namesz, 8) + - roundup2(note->n_descsz, 8); + buf += sizeof(Elf_Note) + roundup2(note->n_namesz, 4) + + roundup2(note->n_descsz, 4); } } From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 20:52:52 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 74816F53; Fri, 2 Jan 2015 20:52:52 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 60CAA12D5; Fri, 2 Jan 2015 20:52:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02Kqqxm041185; Fri, 2 Jan 2015 20:52:52 GMT (envelope-from np@FreeBSD.org) Received: (from np@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02Kqq7V041184; Fri, 2 Jan 2015 20:52:52 GMT (envelope-from np@FreeBSD.org) Message-Id: <201501022052.t02Kqq7V041184@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: np set sender to np@FreeBSD.org using -f From: Navdeep Parhar Date: Fri, 2 Jan 2015 20:52:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276570 - head/sys/dev/cxgbe/tom X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 20:52:52 -0000 Author: np Date: Fri Jan 2 20:52:51 2015 New Revision: 276570 URL: https://svnweb.freebsd.org/changeset/base/276570 Log: cxgbe/tom: log some more details in send_flowc_wr. MFC after: 1 week Modified: head/sys/dev/cxgbe/tom/t4_cpl_io.c Modified: head/sys/dev/cxgbe/tom/t4_cpl_io.c ============================================================================== --- head/sys/dev/cxgbe/tom/t4_cpl_io.c Fri Jan 2 20:50:15 2015 (r276569) +++ head/sys/dev/cxgbe/tom/t4_cpl_io.c Fri Jan 2 20:52:51 2015 (r276570) @@ -111,8 +111,6 @@ send_flowc_wr(struct toepcb *toep, struc KASSERT(!(toep->flags & TPF_FLOWC_WR_SENT), ("%s: flowc for tid %u sent already", __func__, toep->tid)); - CTR2(KTR_CXGBE, "%s: tid %u", __func__, toep->tid); - flowclen = sizeof(*flowc) + nparams * sizeof(struct fw_flowc_mnemval); wr = alloc_wrqe(roundup2(flowclen, 16), toep->ofld_txq); @@ -147,11 +145,18 @@ send_flowc_wr(struct toepcb *toep, struc flowc->mnemval[6].val = htobe32(sndbuf); flowc->mnemval[7].mnemonic = FW_FLOWC_MNEM_MSS; flowc->mnemval[7].val = htobe32(ftxp->mss); + + CTR6(KTR_CXGBE, + "%s: tid %u, mss %u, sndbuf %u, snd_nxt 0x%x, rcv_nxt 0x%x", + __func__, toep->tid, ftxp->mss, sndbuf, ftxp->snd_nxt, + ftxp->rcv_nxt); } else { flowc->mnemval[4].mnemonic = FW_FLOWC_MNEM_SNDBUF; flowc->mnemval[4].val = htobe32(512); flowc->mnemval[5].mnemonic = FW_FLOWC_MNEM_MSS; flowc->mnemval[5].val = htobe32(512); + + CTR2(KTR_CXGBE, "%s: tid %u", __func__, toep->tid); } txsd->tx_credits = howmany(flowclen, 16); From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 20:56:18 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 834F8167; Fri, 2 Jan 2015 20:56:18 +0000 (UTC) Received: from troutmask.apl.washington.edu (troutmask.apl.washington.edu [128.95.76.21]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "troutmask", Issuer "troutmask" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 610D112FF; Fri, 2 Jan 2015 20:56:18 +0000 (UTC) Received: from troutmask.apl.washington.edu (localhost [127.0.0.1]) by troutmask.apl.washington.edu (8.14.9/8.14.9) with ESMTP id t02KiweQ072285 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Fri, 2 Jan 2015 12:44:58 -0800 (PST) (envelope-from sgk@troutmask.apl.washington.edu) Received: (from sgk@localhost) by troutmask.apl.washington.edu (8.14.9/8.14.9/Submit) id t02Kiw5l072284; Fri, 2 Jan 2015 12:44:58 -0800 (PST) (envelope-from sgk) Date: Fri, 2 Jan 2015 12:44:58 -0800 From: Steve Kargl To: Garrett Cooper Subject: Re: svn commit: r276565 - in head/gnu: lib/libstdc++/doc usr.bin/diff usr.bin/diff/doc usr.bin/gdb usr.bin/gperf usr.bin/gperf/doc Message-ID: <20150102204458.GA72199@troutmask.apl.washington.edu> References: <201501022034.t02KYu1I030453@svn.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201501022034.t02KYu1I030453@svn.freebsd.org> User-Agent: Mutt/1.5.23 (2014-03-12) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 20:56:18 -0000 On Fri, Jan 02, 2015 at 08:34:56PM +0000, Garrett Cooper wrote: > Author: ngie > Date: Fri Jan 2 20:34:55 2015 > New Revision: 276565 > URL: https://svnweb.freebsd.org/changeset/base/276565 > > Log: > Remove gnu/ info pages to unbreak the build with MK_GCC != no, etc > Does this mean that FreeBSD is now shipping utilities without documentation? -- Steve From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 20:59:13 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 64C3C2CD; Fri, 2 Jan 2015 20:59:13 +0000 (UTC) Received: from mail-wi0-x232.google.com (mail-wi0-x232.google.com [IPv6:2a00:1450:400c:c05::232]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E19821341; Fri, 2 Jan 2015 20:59:12 +0000 (UTC) Received: by mail-wi0-f178.google.com with SMTP id em10so155303wid.5; Fri, 02 Jan 2015 12:59:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=2WAbs673plw+p+HppIT/M7u/NbpyiyAXUrPmVrKvwFE=; b=eeYawMP+sqledRfv0eZcehJ8U6XAarmyXVXbKa8UIc1SZnbnY1HoMBonMuNJ2ccT/s bORx7fNPoQ4rjFxcWqhQHQg0pyWsUbnzKNRdsu+P9vl9XwdWxeGsWzlXjMtt/gjestmv +/WR5w2v4VpQP2ftjdYABjJzs4OikPNGPDc+jU0GwCRJ8mpFB47d8Tpe9teWTP64dgEd UzMAaNv1l76LMpVOCFCLxHJVylDgSJ3vuHefTjCvLHBxJD85UZE1HzxP6Fs3BAATU1Zo qtkgb+/ADNQv0Ldstq4L1utxyICc3sikIH8qT9mQtdGWjcX8oevT/vbLok/3jhzFyMsh IGIQ== MIME-Version: 1.0 X-Received: by 10.180.228.108 with SMTP id sh12mr997842wic.55.1420232351153; Fri, 02 Jan 2015 12:59:11 -0800 (PST) Received: by 10.27.179.168 with HTTP; Fri, 2 Jan 2015 12:59:11 -0800 (PST) In-Reply-To: <20150102204458.GA72199@troutmask.apl.washington.edu> References: <201501022034.t02KYu1I030453@svn.freebsd.org> <20150102204458.GA72199@troutmask.apl.washington.edu> Date: Fri, 2 Jan 2015 15:59:11 -0500 Message-ID: Subject: Re: svn commit: r276565 - in head/gnu: lib/libstdc++/doc usr.bin/diff usr.bin/diff/doc usr.bin/gdb usr.bin/gperf usr.bin/gperf/doc From: Benjamin Kaduk To: Steve Kargl Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.18-1 Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" , Garrett Cooper X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 20:59:13 -0000 On Fri, Jan 2, 2015 at 3:44 PM, Steve Kargl < sgk@troutmask.apl.washington.edu> wrote: > On Fri, Jan 02, 2015 at 08:34:56PM +0000, Garrett Cooper wrote: > > Author: ngie > > Date: Fri Jan 2 20:34:55 2015 > > New Revision: 276565 > > URL: https://svnweb.freebsd.org/changeset/base/276565 > > > > Log: > > Remove gnu/ info pages to unbreak the build with MK_GCC != no, etc > > > > Does this mean that FreeBSD is now shipping utilities without > documentation? > I'm pretty sure we've been doing that for a long, long time. Note that MK_GCC=no is the default on head for the tier-1 platforms. -Ben From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 21:02:42 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9F4C0462; Fri, 2 Jan 2015 21:02:42 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8AD6414A9; Fri, 2 Jan 2015 21:02:42 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02L2gBR046878; Fri, 2 Jan 2015 21:02:42 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02L2g60046875; Fri, 2 Jan 2015 21:02:42 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <201501022102.t02L2g60046875@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Fri, 2 Jan 2015 21:02:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276571 - head/usr.sbin/portsnap/phttpget X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 21:02:42 -0000 Author: delphij Date: Fri Jan 2 21:02:41 2015 New Revision: 276571 URL: https://svnweb.freebsd.org/changeset/base/276571 Log: Add a manual page for phttpget(8). MFC after: 1 month Added: head/usr.sbin/portsnap/phttpget/phttpget.8 (contents, props changed) Modified: head/usr.sbin/portsnap/phttpget/Makefile Modified: head/usr.sbin/portsnap/phttpget/Makefile ============================================================================== --- head/usr.sbin/portsnap/phttpget/Makefile Fri Jan 2 20:52:51 2015 (r276570) +++ head/usr.sbin/portsnap/phttpget/Makefile Fri Jan 2 21:02:41 2015 (r276571) @@ -1,7 +1,7 @@ # $FreeBSD$ PROG= phttpget -MAN= +MAN= phttpget.8 BINDIR= ${LIBEXECDIR} Added: head/usr.sbin/portsnap/phttpget/phttpget.8 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/usr.sbin/portsnap/phttpget/phttpget.8 Fri Jan 2 21:02:41 2015 (r276571) @@ -0,0 +1,88 @@ +.\"- +.\" Copyright (c) 2015 Xin Li +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" $FreeBSD$ +.\" +.Dd January 3, 2015 +.Dt PHTTPGET 8 +.Os +.Sh NAME +.Nm phttpget +.Nd retrieve multiple files via pipelined HTTP +.Sh SYNOPSIS +.Nm +.Ar server +.Ar file ... +.Sh DESCRIPTION +The +.Nm +utility is a minimalist pipelined HTTP client, +which is used to retrieve multiple +.Ar file Ns s +from one +.Ar server , +and saves the downloaded files in the current working directory, +using the last portion of their download path as file names. +.Pp +By making several "in flight" HTTP requests, +it can dramatically increase performance when a large number of +small files need to be downloaded. +.Pp +The +.Xr freebsd-update 8 +and +.Xr portnap 8 +tools use +.Nm +to download binary patch files. +.Sh ENVIRONMENT +.Bl -tag -width HTTP_PROXY_AUTH +.It Ev HTTP_PROXY +URL of the proxy to use for HTTP requests. +.It Ev HTTP_PROXY_AUTH +Authorization parameters for the HTTP proxy. +.It Ev HTTP_USER_AGENT +The User-Agent string to use for HTTP requests. +The default is +.Dq phttpget/0.1 . +.It Ev HTTP_TIMEOUT +Timeout for HTTP request in seconds. +.El +.Sh SEE ALSO +.Xr fetch 1 , +.Xr freebsd-update 8 , +.Xr portsnap 8 +.Sh AUTHORS +.An -nosplit +The +.Nm +utility was written by +.An Colin Percival Aq Mt cperciva@FreeBSD.org +for use with +.Xr portsnap 8 +and later with +.Xr freebsd-update 8 . +This manual page was written by +.An Xin LI Aq Mt delphij@FreeBSD.org . From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 21:09:55 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 6E66A8EE; Fri, 2 Jan 2015 21:09:55 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5863F157C; Fri, 2 Jan 2015 21:09:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02L9txR048433; Fri, 2 Jan 2015 21:09:55 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02L9tqU048432; Fri, 2 Jan 2015 21:09:55 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201501022109.t02L9tqU048432@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Fri, 2 Jan 2015 21:09:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276573 - head/release/doc/en_US.ISO8859-1/hardware X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 21:09:55 -0000 Author: gjb Date: Fri Jan 2 21:09:54 2015 New Revision: 276573 URL: https://svnweb.freebsd.org/changeset/base/276573 Log: Remove hwlist.asr macro, asr(4) removed in r276526. Sponsored by: The FreeBSD Foundation Modified: head/release/doc/en_US.ISO8859-1/hardware/article.xml Modified: head/release/doc/en_US.ISO8859-1/hardware/article.xml ============================================================================== --- head/release/doc/en_US.ISO8859-1/hardware/article.xml Fri Jan 2 21:08:34 2015 (r276572) +++ head/release/doc/en_US.ISO8859-1/hardware/article.xml Fri Jan 2 21:09:54 2015 (r276573) @@ -669,8 +669,6 @@ &hwlist.arcmsr; - &hwlist.asr; - &hwlist.bt; &hwlist.ciss; From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 21:13:26 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 041A0A6D; Fri, 2 Jan 2015 21:13:26 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E48AD16B8; Fri, 2 Jan 2015 21:13:25 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02LDPns052650; Fri, 2 Jan 2015 21:13:25 GMT (envelope-from np@FreeBSD.org) Received: (from np@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02LDPIF052649; Fri, 2 Jan 2015 21:13:25 GMT (envelope-from np@FreeBSD.org) Message-Id: <201501022113.t02LDPIF052649@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: np set sender to np@FreeBSD.org using -f From: Navdeep Parhar Date: Fri, 2 Jan 2015 21:13:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276574 - head/sys/dev/cxgbe/tom X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 21:13:26 -0000 Author: np Date: Fri Jan 2 21:13:24 2015 New Revision: 276574 URL: https://svnweb.freebsd.org/changeset/base/276574 Log: cxgbe/tom: fix the MSS calculation for IPv6 connections handled by the TOE. MFC after: 1 week Modified: head/sys/dev/cxgbe/tom/t4_cpl_io.c Modified: head/sys/dev/cxgbe/tom/t4_cpl_io.c ============================================================================== --- head/sys/dev/cxgbe/tom/t4_cpl_io.c Fri Jan 2 21:09:54 2015 (r276573) +++ head/sys/dev/cxgbe/tom/t4_cpl_io.c Fri Jan 2 21:13:24 2015 (r276574) @@ -44,6 +44,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #define TCPSTATES #include @@ -236,11 +237,20 @@ static void assign_rxopt(struct tcpcb *tp, unsigned int opt) { struct toepcb *toep = tp->t_toe; + struct inpcb *inp = tp->t_inpcb; struct adapter *sc = td_adapter(toep->td); + int n; + + INP_LOCK_ASSERT(inp); - INP_LOCK_ASSERT(tp->t_inpcb); + if (inp->inp_inc.inc_flags & INC_ISIPV6) + n = sizeof(struct ip6_hdr) + sizeof(struct tcphdr); + else + n = sizeof(struct ip) + sizeof(struct tcphdr); + tp->t_maxseg = tp->t_maxopd = sc->params.mtus[G_TCPOPT_MSS(opt)] - n; - tp->t_maxseg = tp->t_maxopd = sc->params.mtus[G_TCPOPT_MSS(opt)] - 40; + CTR4(KTR_CXGBE, "%s: tid %d, mtu_idx %u (%u)", __func__, toep->tid, + G_TCPOPT_MSS(opt), sc->params.mtus[G_TCPOPT_MSS(opt)]); if (G_TCPOPT_TSTAMP(opt)) { tp->t_flags |= TF_RCVD_TSTMP; /* timestamps ok */ From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 21:20:09 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2F402E54; Fri, 2 Jan 2015 21:20:09 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 180021760; Fri, 2 Jan 2015 21:20:09 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02LK9UX054201; Fri, 2 Jan 2015 21:20:09 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02LK3up054153; Fri, 2 Jan 2015 21:20:03 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <201501022120.t02LK3up054153@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Fri, 2 Jan 2015 21:20:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276577 - in head: contrib/file contrib/file/doc contrib/file/magic contrib/file/magic/Magdir contrib/file/python contrib/file/src contrib/file/tests lib/libmagic X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 21:20:09 -0000 Author: delphij Date: Fri Jan 2 21:20:02 2015 New Revision: 276577 URL: https://svnweb.freebsd.org/changeset/base/276577 Log: MFV r276568: Update file to 5.22. MFC after: 2 weeks Added: head/contrib/file/magic/Magdir/qt - copied unchanged from r276570, vendor/file/dist/magic/Magdir/qt Modified: head/contrib/file/ChangeLog head/contrib/file/Makefile.in head/contrib/file/README head/contrib/file/aclocal.m4 head/contrib/file/configure head/contrib/file/configure.ac head/contrib/file/doc/Makefile.in head/contrib/file/doc/file.man head/contrib/file/doc/libmagic.man head/contrib/file/doc/magic.man head/contrib/file/magic/Localstuff head/contrib/file/magic/Magdir/cafebabe head/contrib/file/magic/Magdir/filesystems head/contrib/file/magic/Magdir/images head/contrib/file/magic/Magdir/jpeg head/contrib/file/magic/Makefile.am head/contrib/file/magic/Makefile.in head/contrib/file/missing head/contrib/file/python/Makefile.in head/contrib/file/src/Makefile.in head/contrib/file/src/apprentice.c head/contrib/file/src/compress.c head/contrib/file/src/elfclass.h head/contrib/file/src/file.c head/contrib/file/src/file.h head/contrib/file/src/file_opts.h head/contrib/file/src/funcs.c head/contrib/file/src/getline.c head/contrib/file/src/magic.c head/contrib/file/src/magic.h head/contrib/file/src/magic.h.in head/contrib/file/src/readelf.c head/contrib/file/src/softmagic.c head/contrib/file/tests/Makefile.in head/lib/libmagic/config.h Directory Properties: head/contrib/file/ (props changed) Modified: head/contrib/file/ChangeLog ============================================================================== --- head/contrib/file/ChangeLog Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/ChangeLog Fri Jan 2 21:20:02 2015 (r276577) @@ -1,3 +1,29 @@ +2015-01-02 15:15 Christos Zoulas + + * release 5.22 + +2015-01-01 12:01 Christos Zoulas + + * add indirect relative for TIFF/Exif + +2014-12-16 18:10 Christos Zoulas + + * restructure elf note printing to avoid repeated messages + * add note limit, suggested by Alexander Cherepanov + +2014-12-16 16:53 Christos Zoulas + + * Bail out on partial pread()'s (Alexander Cherepanov) + * Fix incorrect bounds check in file_printable (Alexander Cherepanov) + +2014-12-11 20:01 Christos Zoulas + + * PR/405: ignore SIGPIPE from uncompress programs + * change printable -> file_printable and use it in + more places for safety + * in ELF, instead of "(uses dynamic libraries)" when PT_INTERP + is present print the interpreter name. + 2014-12-10 20:01 Christos Zoulas * release 5.21 @@ -23,6 +49,8 @@ - reduce the number of recursion levels from 20 to 10 - preserve error messages in indirect magic handling + This is tracked as CVE-2014-8116 and CVE-2014-8117 + 2014-11-12 10:30 Christos Zoulas * fix bogus free in the user buffer case. Modified: head/contrib/file/Makefile.in ============================================================================== --- head/contrib/file/Makefile.in Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/Makefile.in Fri Jan 2 21:20:02 2015 (r276577) @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.14.1 from Makefile.am. +# Makefile.in generated by automake 1.14 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. @@ -618,10 +618,9 @@ distcheck: dist && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && am__cwd=`pwd` \ && $(am__cd) $(distdir)/_build \ - && ../configure \ + && ../configure --srcdir=.. --prefix="$$dc_install_base" \ $(AM_DISTCHECK_CONFIGURE_FLAGS) \ $(DISTCHECK_CONFIGURE_FLAGS) \ - --srcdir=.. --prefix="$$dc_install_base" \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ && $(MAKE) $(AM_MAKEFLAGS) check \ Modified: head/contrib/file/README ============================================================================== --- head/contrib/file/README Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/README Fri Jan 2 21:20:02 2015 (r276577) @@ -1,6 +1,6 @@ ## README for file(1) Command ## - @(#) $File: README,v 1.48 2014/03/07 13:55:30 christos Exp $ + @(#) $File: README,v 1.49 2015/01/02 20:23:04 christos Exp $ Mailing List: file@mx.gw.com Mailing List archives: http://mx.gw.com/pipermail/file/ @@ -25,8 +25,8 @@ A public read-only git repository of the https://github.com/file/file -The major changes for 5.x are CDF file parsing, indirect magic, and -overhaul in mime and ascii encoding handling. +The major changes for 5.x are CDF file parsing, indirect magic, name/use +(recursion) and overhaul in mime and ascii encoding handling. The major feature of 4.x is the refactoring of the code into a library, and the re-write of the file command in terms of that library. The library @@ -67,33 +67,41 @@ in magic(5) format please, to the mainta COPYING - read this first. README - read this second (you are currently reading this file). INSTALL - read on how to install - src/apprentice.c - parses /etc/magic to learn magic +src/asctime_r.c - replacement for OS's that don't have it. src/apptype.c - used for OS/2 specific application type magic src/asprintf.c - replacement for OS's that don't have it. src/ascmagic.c - third & last set of tests, based on hardwired assumptions. -src/asctime_r.c - for systems that don't have it. -src/asprintf.c - for systems that don't have it. -src/cdf.c - parser for Microsoft Compound Document Files +src/asctime_r.c - replacement for OS's that don't have it. +src/asprintf.c - replacement for OS's that don't have it. +src/cdf.[ch] - parser for Microsoft Compound Document Files src/cdf_time.c - time converter for CDF. src/compress.c - handles decompressing files to look inside. -src/ctime_r.c - for systems that don't have it. +src/ctime_r.c - replacement for OS's that don't have it. +src/elfclass.h - common code for elf 32/64. src/encoding.c - handles unicode encodings src/file.c - the main program src/file.h - header file +src/file_opts.h - list of options +src/fmtcheck.c - replacement for OS's that don't have it. src/fsmagic.c - first set of tests the program runs, based on filesystem info src/funcs.c - utilility functions -src/getopt_long.c - for systems that don't have it. -src/getline.c - for systems that don't have it. +src/getline.c - replacement for OS's that don't have it. +src/getopt_long.c - replacement for OS's that don't have it. src/is_tar.c, tar.h - knows about tarchives (courtesy John Gilmore). src/names.h - header file for ascmagic.c +src/magic.h.in - source file for magic.h src/magic.c - the libmagic api +src/pread.c - replacement for OS's that don't have it. src/print.c - print results, errors, warnings. src/readcdf.c - CDF wrapper. src/readelf.[ch] - Stand-alone elf parsing code. src/softmagic.c - 2nd set of tests, based on /etc/magic -src/strlcat.c - for systems that don't have it. -src/strlcpy.c - for systems that don't have it. +src/mygetopt.h - replacement for OS's that don't have it. +src/strcasestr.c - replacement for OS's that don't have it. +src/strlcat.c - replacement for OS's that don't have it. +src/strlcpy.c - replacement for OS's that don't have it. +src/tar.h - tar file definitions src/vasprintf.c - for systems that don't have it. doc/file.man - man page for the command doc/magic.man - man page for the magic file, courtesy Guy Harris. Modified: head/contrib/file/aclocal.m4 ============================================================================== --- head/contrib/file/aclocal.m4 Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/aclocal.m4 Fri Jan 2 21:20:02 2015 (r276577) @@ -1,4 +1,4 @@ -# generated automatically by aclocal 1.14.1 -*- Autoconf -*- +# generated automatically by aclocal 1.14 -*- Autoconf -*- # Copyright (C) 1996-2013 Free Software Foundation, Inc. @@ -21,7 +21,7 @@ If you have problems, you may need to re To do so, use the procedure documented by the package, typically 'autoreconf'.])]) # visibility.m4 serial 5 (gettext-0.18.2) -dnl Copyright (C) 2005, 2008, 2010-2014 Free Software Foundation, Inc. +dnl Copyright (C) 2005, 2008, 2010-2013 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -113,7 +113,7 @@ AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version='1.14' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.14.1], [], +m4_if([$1], [1.14], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) @@ -129,7 +129,7 @@ m4_define([_AM_AUTOCONF_VERSION], []) # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.14.1])dnl +[AM_AUTOMAKE_VERSION([1.14])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) Modified: head/contrib/file/configure ============================================================================== --- head/contrib/file/configure Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/configure Fri Jan 2 21:20:02 2015 (r276577) @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for file 5.21. +# Generated by GNU Autoconf 2.69 for file 5.22. # # Report bugs to . # @@ -590,8 +590,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='file' PACKAGE_TARNAME='file' -PACKAGE_VERSION='5.21' -PACKAGE_STRING='file 5.21' +PACKAGE_VERSION='5.22' +PACKAGE_STRING='file 5.22' PACKAGE_BUGREPORT='christos@astron.com' PACKAGE_URL='' @@ -1327,7 +1327,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures file 5.21 to adapt to many kinds of systems. +\`configure' configures file 5.22 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1397,7 +1397,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of file 5.21:";; + short | recursive ) echo "Configuration of file 5.22:";; esac cat <<\_ACEOF @@ -1507,7 +1507,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -file configure 5.21 +file configure 5.22 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2163,7 +2163,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by file $as_me 5.21, which was +It was created by file $as_me 5.22, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3029,7 +3029,7 @@ fi # Define the identity of the package. PACKAGE='file' - VERSION='5.21' + VERSION='5.22' cat >>confdefs.h <<_ACEOF @@ -14998,7 +14998,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_wri # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by file $as_me 5.21, which was +This file was extended by file $as_me 5.22, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -15064,7 +15064,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -file config.status 5.21 +file config.status 5.22 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" Modified: head/contrib/file/configure.ac ============================================================================== --- head/contrib/file/configure.ac Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/configure.ac Fri Jan 2 21:20:02 2015 (r276577) @@ -1,5 +1,5 @@ dnl Process this file with autoconf to produce a configure script. -AC_INIT([file],[5.21],[christos@astron.com]) +AC_INIT([file],[5.22],[christos@astron.com]) AM_INIT_AUTOMAKE([subdir-objects foreign]) m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) Modified: head/contrib/file/doc/Makefile.in ============================================================================== --- head/contrib/file/doc/Makefile.in Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/doc/Makefile.in Fri Jan 2 21:20:02 2015 (r276577) @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.14.1 from Makefile.am. +# Makefile.in generated by automake 1.14 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. Modified: head/contrib/file/doc/file.man ============================================================================== --- head/contrib/file/doc/file.man Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/doc/file.man Fri Jan 2 21:20:02 2015 (r276577) @@ -1,5 +1,5 @@ -.\" $File: file.man,v 1.110 2014/11/28 02:46:39 christos Exp $ -.Dd November 27, 2014 +.\" $File: file.man,v 1.111 2014/12/16 23:18:40 christos Exp $ +.Dd December 16, 2014 .Dt FILE __CSECTION__ .Os .Sh NAME @@ -310,6 +310,7 @@ Set various parameter limits. .It Sy "Name" Ta Sy "Default" Ta Sy "Explanation" .It Li indir Ta 15 Ta recursion limit for indirect magic .It Li name Ta 30 Ta use count limit for name/use magic +.It Li elf_notes Ta 256 Ta max ELF notes processed .It Li elf_phnum Ta 128 Ta max ELF program sections processed .It Li elf_shnum Ta 32768 Ta max ELF sections processed .El Modified: head/contrib/file/doc/libmagic.man ============================================================================== --- head/contrib/file/doc/libmagic.man Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/doc/libmagic.man Fri Jan 2 21:20:02 2015 (r276577) @@ -1,4 +1,4 @@ -.\" $File: libmagic.man,v 1.33 2014/11/28 02:46:39 christos Exp $ +.\" $File: libmagic.man,v 1.34 2014/12/16 23:18:40 christos Exp $ .\" .\" Copyright (c) Christos Zoulas 2003. .\" All Rights Reserved. @@ -25,7 +25,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd November 27, 2014 +.Dd December 16, 2014 .Dt LIBMAGIC 3 .Os .Sh NAME @@ -284,6 +284,7 @@ library. .It Sy "Parameter" Ta Sy "Type" Ta Sy "Default" .It Li MAGIC_PARAM_INDIR_MAX Ta size_t Ta 15 .It Li MAGIC_PARAM_NAME_MAX Ta size_t Ta 30 +.It Li MAGIC_PARAM_ELF_NOTES_MAX Ta size_t Ta 256 .It Li MAGIC_PARAM_ELF_PHNUM_MAX Ta size_t Ta 128 .It Li MAGIC_PARAM_ELF_SHNUM_MAX Ta size_t Ta 32768 .El @@ -303,12 +304,16 @@ The parameter controls the maximum number of calls for name/use. .Pp The +.Dv MAGIC_PARAM_NOTES_MAX +parameter controls how many ELF notes will be processed. +.Pp +The .Dv MAGIC_PARAM_PHNUM_MAX -parameter controls how many elf program sections will be processed. +parameter controls how many ELF program sections will be processed. .Pp The .Dv MAGIC_PARAM_SHNUM_MAX -parameter controls how many elf sections will be processed. +parameter controls how many ELF sections will be processed. .Pp The .Fn magic_version Modified: head/contrib/file/doc/magic.man ============================================================================== --- head/contrib/file/doc/magic.man Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/doc/magic.man Fri Jan 2 21:20:02 2015 (r276577) @@ -1,5 +1,5 @@ -.\" $File: magic.man,v 1.84 2014/06/03 19:01:34 christos Exp $ -.Dd June 3, 2014 +.\" $File: magic.man,v 1.85 2015/01/01 17:07:34 christos Exp $ +.Dd January 1, 2015 .Dt MAGIC __FSECTION__ .Os .\" install as magic.4 on USG, magic.5 on V7, Berkeley and Linux systems. @@ -200,6 +200,11 @@ interpreted as a UNIX-style date, but in than UTC. .It Dv indirect Starting at the given offset, consult the magic database again. +The offset of th +.Dv indirect +magic is by default absolute in the file, but one can specify +.Dv /r +to indicate that the offset is relative from the beginning of the entry. .It Dv name Define a .Dq named Modified: head/contrib/file/magic/Localstuff ============================================================================== --- head/contrib/file/magic/Localstuff Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/magic/Localstuff Fri Jan 2 21:20:02 2015 (r276577) @@ -2,6 +2,6 @@ #------------------------------------------------------------------------------ # Localstuff: file(1) magic for locally observed files # -# $File: Localstuff,v 1.5 2007/01/12 17:38:27 christos Exp $ +# $File: Localstuff,v 1.4 2003/03/23 04:17:27 christos Exp $ # Add any locally observed files here. Remember: # text if readable, executable if runnable binary, data if unreadable. Modified: head/contrib/file/magic/Magdir/cafebabe ============================================================================== --- head/contrib/file/magic/Magdir/cafebabe Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/magic/Magdir/cafebabe Fri Jan 2 21:20:02 2015 (r276577) @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: cafebabe,v 1.16 2014/04/30 21:41:02 christos Exp $ +# $File: cafebabe,v 1.17 2015/01/01 17:07:00 christos Exp $ # Cafe Babes unite! # # Since Java bytecode and Mach-O universal binaries have the same magic number, @@ -45,7 +45,7 @@ 0 name mach-o \b [ >0 use mach-o-cpu \b ->&(8.L) indirect \b: +>(8.L) indirect \b: >0 belong x \b] 0 belong 0xcafebabe Modified: head/contrib/file/magic/Magdir/filesystems ============================================================================== --- head/contrib/file/magic/Magdir/filesystems Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/magic/Magdir/filesystems Fri Jan 2 21:20:02 2015 (r276577) @@ -1,5 +1,5 @@ #------------------------------------------------------------------------------ -# $File: filesystems,v 1.107 2014/12/03 18:02:52 christos Exp $ +# $File: filesystems,v 1.108 2015/01/01 17:43:47 christos Exp $ # filesystems: file(1) magic for different filesystems # 0 name partid @@ -260,6 +260,13 @@ >>(11.s-2) uleshort 0xAA55 DOS/MBR boot sector # for sector sizes with 512 or more Bytes >0x1FE leshort 0xAA55 DOS/MBR boot sector + +# keep old DOS/MBR boot sector as dummy for mbr and bootloader displaying +# only for sector sizes with 512 or more Bytes +0x1FE leshort 0xAA55 DOS/MBR boot sector +# +# to display information (50) before DOS BPB (strength=70) and after DOS floppy (120) like in old file version +!:strength +65 >2 string OSBS OS/BS MBR # added by Joerg Jenderek at Feb 2013 according to http://thestarman.pcministry.com/asm/mbr/ # and http://en.wikipedia.org/wiki/Master_Boot_Record Modified: head/contrib/file/magic/Magdir/images ============================================================================== --- head/contrib/file/magic/Magdir/images Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/magic/Magdir/images Fri Jan 2 21:20:02 2015 (r276577) @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: images,v 1.97 2014/12/08 16:06:19 christos Exp $ +# $File: images,v 1.102 2015/01/02 02:36:35 christos Exp $ # images: file(1) magic for image formats (see also "iff", and "c-lang" for # XPM bitmaps) # @@ -115,7 +115,7 @@ # never changed. The TIFF specification recommends testing for it. 0 string MM\x00\x2a TIFF image data, big-endian !:mime image/tiff ->(4.L) use tiff_ifd +>(4.L) use \^tiff_ifd 0 string II\x2a\x00 TIFF image data, little-endian !:mime image/tiff >(4.l) use tiff_ifd @@ -125,54 +125,57 @@ >2 use tiff_entry 0 name tiff_entry +# NewSubFileType +>0 leshort 0xfe +>>12 use tiff_entry >0 leshort 0x100 >>4 lelong 1 >>>12 use tiff_entry ->>>8 lelong x \b, width=%d +>>>8 leshort x \b, width=%d >0 leshort 0x101 >>4 lelong 1 ->>>8 lelong x \b, height=%d +>>>8 leshort x \b, height=%d >>>12 use tiff_entry >0 leshort 0x102 ->>8 lelong x \b, bps=%d +>>8 leshort x \b, bps=%d >>12 use tiff_entry >0 leshort 0x103 >>4 lelong 1 \b, compression= ->>>8 lelong 1 \bnone ->>>8 lelong 2 \bhuffman ->>>8 lelong 3 \bbi-level group 3 ->>>8 lelong 4 \bbi-level group 4 ->>>8 lelong 5 \bLZW ->>>8 lelong 6 \bJPEG (old) ->>>8 lelong 7 \bJPEG ->>>8 lelong 8 \bdeflate ->>>8 lelong 9 \bJBIG, ITU-T T.85 ->>>8 lelong 0xa \bJBIG, ITU-T T.43 ->>>8 lelong 0x7ffe \bNeXT RLE 2-bit ->>>8 lelong 0x8005 \bPackBits (Macintosh RLE) ->>>8 lelong 0x8029 \bThunderscan RLE ->>>8 lelong 0x807f \bRasterPadding (CT or MP) ->>>8 lelong 0x8080 \bRLE (Line Work) ->>>8 lelong 0x8081 \bRLE (High-Res Cont-Tone) ->>>8 lelong 0x8082 \bRLE (Binary Line Work) ->>>8 lelong 0x80b2 \bDeflate (PKZIP) ->>>8 lelong 0x80b3 \bKodak DCS ->>>8 lelong 0x8765 \bJBIG ->>>8 lelong 0x8798 \bJPEG2000 ->>>8 lelong 0x8799 \bNikon NEF Compressed +>>>8 leshort 1 \bnone +>>>8 leshort 2 \bhuffman +>>>8 leshort 3 \bbi-level group 3 +>>>8 leshort 4 \bbi-level group 4 +>>>8 leshort 5 \bLZW +>>>8 leshort 6 \bJPEG (old) +>>>8 leshort 7 \bJPEG +>>>8 leshort 8 \bdeflate +>>>8 leshort 9 \bJBIG, ITU-T T.85 +>>>8 leshort 0xa \bJBIG, ITU-T T.43 +>>>8 leshort 0x7ffe \bNeXT RLE 2-bit +>>>8 leshort 0x8005 \bPackBits (Macintosh RLE) +>>>8 leshort 0x8029 \bThunderscan RLE +>>>8 leshort 0x807f \bRasterPadding (CT or MP) +>>>8 leshort 0x8080 \bRLE (Line Work) +>>>8 leshort 0x8081 \bRLE (High-Res Cont-Tone) +>>>8 leshort 0x8082 \bRLE (Binary Line Work) +>>>8 leshort 0x80b2 \bDeflate (PKZIP) +>>>8 leshort 0x80b3 \bKodak DCS +>>>8 leshort 0x8765 \bJBIG +>>>8 leshort 0x8798 \bJPEG2000 +>>>8 leshort 0x8799 \bNikon NEF Compressed >>>8 default x ->>>>8 lelong x \b(unknown 0x%x) +>>>>8 leshort x \b(unknown 0x%x) >>>12 use tiff_entry >0 leshort 0x106 \b, PhotometricIntepretation= ->>8 lelong 0 \bWhiteIsZero ->>8 lelong 1 \bBlackIsZero ->>8 lelong 2 \bRGB ->>8 lelong 3 \bRGB Palette ->>8 lelong 4 \bTransparency Mask ->>8 lelong 5 \bCMYK ->>8 lelong 6 \bYCbCr ->>8 lelong 8 \bCIELab ->>>8 lelong x \b(unknown=0x%x) +>>8 leshort 0 \bWhiteIsZero +>>8 leshort 1 \bBlackIsZero +>>8 leshort 2 \bRGB +>>8 leshort 3 \bRGB Palette +>>8 leshort 4 \bTransparency Mask +>>8 leshort 5 \bCMYK +>>8 leshort 6 \bYCbCr +>>8 leshort 8 \bCIELab +>>>8 leshort x \b(unknown=0x%x) >>12 use tiff_entry # FillOrder >0 leshort 0x10a @@ -186,21 +189,79 @@ >0 leshort 0x10e >>(8.l) string x \b, description=%s >>>12 use tiff_entry +# Make +>0 leshort 0x10f +>>(8.l) string x \b, manufacturer=%s +>>>12 use tiff_entry +# Model +>0 leshort 0x110 +>>(8.l) string x \b, model=%s +>>>12 use tiff_entry # StripOffsets >0 leshort 0x111 >>12 use tiff_entry -# NewSubFileType ->0 leshort 0xfe +# Orientation +>0 leshort 0x112 \b, orientation= +>>8 leshort 1 \bupper-left +>>8 leshort 3 \blower-right +>>8 leshort 6 \bupper-right +>>8 leshort 8 \blower-left +>>8 leshort 9 \bundefined +>>8 default x +>>>8 leshort x \b[*%d*] +>>12 use tiff_entry +# XResolution +>0 leshort 0x11a +>>8 lelong x \b, xresolution=%d +>>12 use tiff_entry +# YResolution +>0 leshort 0x11b +>>8 lelong x \b, yresolution=%d +>>12 use tiff_entry +# ResolutionUnit +>0 leshort 0x128 +>>8 leshort x \b, resolutionunit=%d +>>12 use tiff_entry +# Software +>0 leshort 0x131 +>>(8.l) string x \b, software=%s >>12 use tiff_entry # Datetime >0 leshort 0x132 >>(8.l) string x \b, datetime=%s ->>>12 use tiff_entry +>>12 use tiff_entry # HostComputer >0 leshort 0x13c >>(8.l) string x \b, hostcomputer=%s ->>>12 use tiff_entry +>>12 use tiff_entry +# WhitePoint +>0 leshort 0x13e +>>12 use tiff_entry +# PrimaryChromaticities +>0 leshort 0x13f +>>12 use tiff_entry +# YCbCrCoefficients +>0 leshort 0x211 +>>12 use tiff_entry +# YCbCrPositioning +>0 leshort 0x213 +>>12 use tiff_entry +# ReferenceBlackWhite +>0 leshort 0x214 +>>12 use tiff_entry +# Copyright +>0 leshort 0x8298 +>>(8.l) string x \b, copyright=%s +>>12 use tiff_entry +# ExifOffset +>0 leshort 0x8769 +>>12 use tiff_entry +# GPS IFD +>0 leshort 0x8825 \b, GPS-Data +>>12 use tiff_entry + #>0 leshort x \b, unknown=0x%x +#>>12 use tiff_entry 0 string MM\x00\x2b Big TIFF image data, big-endian !:mime image/tiff Modified: head/contrib/file/magic/Magdir/jpeg ============================================================================== --- head/contrib/file/magic/Magdir/jpeg Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/magic/Magdir/jpeg Fri Jan 2 21:20:02 2015 (r276577) @@ -1,6 +1,6 @@ #------------------------------------------------------------------------------ -# $File: jpeg,v 1.21 2014/09/12 20:47:00 christos Exp $ +# $File: jpeg,v 1.25 2015/01/02 16:56:50 christos Exp $ # JPEG images # SunOS 5.5.1 had # @@ -31,98 +31,9 @@ # Next, show thumbnail info, if it exists: >>18 byte !0 \b, thumbnail %dx >>>19 byte x \b%d - -# EXIF moved down here to avoid reporting a bogus version number, -# and EXIF version number printing added. -# - Patrik R=E5dman ->6 string Exif \b, EXIF standard -# Look for EXIF IFD offset in IFD 0, and then look for EXIF version tag in EXIF IFD. -# All possible combinations of entries have to be enumerated, since no looping -# is possible. And both endians are possible... -# The combinations included below are from real-world JPEGs. -# Little-endian ->>12 string II -# IFD 0 Entry #5: ->>>70 leshort 0x8769 -# EXIF IFD Entry #1: ->>>>(78.l+14) leshort 0x9000 ->>>>>(78.l+23) byte x %c ->>>>>(78.l+24) byte x \b.%c ->>>>>(78.l+25) byte !0x30 \b%c -# IFD 0 Entry #9: ->>>118 leshort 0x8769 -# EXIF IFD Entry #3: ->>>>(126.l+38) leshort 0x9000 ->>>>>(126.l+47) byte x %c ->>>>>(126.l+48) byte x \b.%c ->>>>>(126.l+49) byte !0x30 \b%c -# IFD 0 Entry #10 ->>>130 leshort 0x8769 -# EXIF IFD Entry #3: ->>>>(138.l+38) leshort 0x9000 ->>>>>(138.l+47) byte x %c ->>>>>(138.l+48) byte x \b.%c ->>>>>(138.l+49) byte !0x30 \b%c -# EXIF IFD Entry #4: ->>>>(138.l+50) leshort 0x9000 ->>>>>(138.l+59) byte x %c ->>>>>(138.l+60) byte x \b.%c ->>>>>(138.l+61) byte !0x30 \b%c -# EXIF IFD Entry #5: ->>>>(138.l+62) leshort 0x9000 ->>>>>(138.l+71) byte x %c ->>>>>(138.l+72) byte x \b.%c ->>>>>(138.l+73) byte !0x30 \b%c -# IFD 0 Entry #11 ->>>142 leshort 0x8769 -# EXIF IFD Entry #3: ->>>>(150.l+38) leshort 0x9000 ->>>>>(150.l+47) byte x %c ->>>>>(150.l+48) byte x \b.%c ->>>>>(150.l+49) byte !0x30 \b%c -# EXIF IFD Entry #4: ->>>>(150.l+50) leshort 0x9000 ->>>>>(150.l+59) byte x %c ->>>>>(150.l+60) byte x \b.%c ->>>>>(150.l+61) byte !0x30 \b%c -# EXIF IFD Entry #5: ->>>>(150.l+62) leshort 0x9000 ->>>>>(150.l+71) byte x %c ->>>>>(150.l+72) byte x \b.%c ->>>>>(150.l+73) byte !0x30 \b%c -# Big-endian ->>12 string MM -# IFD 0 Entry #9: ->>>118 beshort 0x8769 -# EXIF IFD Entry #1: ->>>>(126.L+14) beshort 0x9000 ->>>>>(126.L+23) byte x %c ->>>>>(126.L+24) byte x \b.%c ->>>>>(126.L+25) byte !0x30 \b%c -# EXIF IFD Entry #3: ->>>>(126.L+38) beshort 0x9000 ->>>>>(126.L+47) byte x %c ->>>>>(126.L+48) byte x \b.%c ->>>>>(126.L+49) byte !0x30 \b%c -# IFD 0 Entry #10 ->>>130 beshort 0x8769 -# EXIF IFD Entry #3: ->>>>(138.L+38) beshort 0x9000 ->>>>>(138.L+47) byte x %c ->>>>>(138.L+48) byte x \b.%c ->>>>>(138.L+49) byte !0x30 \b%c -# EXIF IFD Entry #5: ->>>>(138.L+62) beshort 0x9000 ->>>>>(138.L+71) byte x %c ->>>>>(138.L+72) byte x \b.%c ->>>>>(138.L+73) byte !0x30 \b%c -# IFD 0 Entry #11 ->>>142 beshort 0x8769 -# EXIF IFD Entry #4: ->>>>(150.L+50) beshort 0x9000 ->>>>>(150.L+59) byte x %c ->>>>>(150.L+60) byte x \b.%c ->>>>>(150.L+61) byte !0x30 \b%c +>6 string Exif \b, Exif standard: [ +>>12 indirect/r x +>>12 string x \b] # Jump to the first segment >(4.S+4) use jpeg_segment @@ -158,6 +69,12 @@ >0 beshort 0xFFC4 >>(2.S+2) use jpeg_segment +>0 beshort 0xFFE1 +#>>(2.S+2) use jpeg_segment +>>4 string Exif \b, Exif Standard: [ +>>>10 indirect/r x +>>>10 string x \b] + # Application specific markers >0 beshort&0xFFE0 =0xFFE0 >>(2.S+2) use jpeg_segment @@ -170,6 +87,9 @@ >0 beshort&0xFFD0 =0xFFD0 >>(2.S+2) use jpeg_segment +#>0 beshort x unknown 0x%x +#>>(2.S+2) use jpeg_segment + # HSI is Handmade Software's proprietary JPEG encoding scheme 0 string hsi1 JPEG image data, HSI proprietary Copied: head/contrib/file/magic/Magdir/qt (from r276570, vendor/file/dist/magic/Magdir/qt) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/contrib/file/magic/Magdir/qt Fri Jan 2 21:20:02 2015 (r276577, copy of r276570, vendor/file/dist/magic/Magdir/qt) @@ -0,0 +1,19 @@ + +#------------------------------------------------------------------------------ +# $File: qt,v 1.2 2014/12/16 19:49:29 christos Exp $ +# qt: file(1) magic for Qt + +# http://doc.qt.io/qt-5/resources.html +0 string \ Qt Resource Collection file + +# https://qt.gitorious.org/qt/qtbase/source/\ +# 5367fa356233da4c0f28172a8f817791525f5457:\ +# src/tools/rcc/rcc.cpp#L840 +0 string qres\0\0 Qt Binary Resource file +0 search/1024 The\040Resource\040Compiler\040for\040Qt Qt C-code resource file + +# https://qt.gitorious.org/qt/qtbase/source/\ +# 5367fa356233da4c0f28172a8f817791525f5457:\ +# src/corelib/kernel/qtranslator.cpp#L62 +0 string \x3c\xb8\x64\x18\xca\xef\x9c\x95 +>8 string \xcd\x21\x1c\xbf\x60\xa1\xbd\xdd Qt Translation file Modified: head/contrib/file/magic/Makefile.am ============================================================================== --- head/contrib/file/magic/Makefile.am Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/magic/Makefile.am Fri Jan 2 21:20:02 2015 (r276577) @@ -1,5 +1,5 @@ # -# $File: Makefile.am,v 1.100 2014/12/10 18:45:43 christos Exp $ +# $File: Makefile.am,v 1.101 2014/12/12 16:48:39 christos Exp $ # MAGIC_FRAGMENT_BASE = Magdir MAGIC_DIR = $(top_srcdir)/magic @@ -198,6 +198,7 @@ $(MAGIC_FRAGMENT_DIR)/pulsar \ $(MAGIC_FRAGMENT_DIR)/pwsafe \ $(MAGIC_FRAGMENT_DIR)/pyramid \ $(MAGIC_FRAGMENT_DIR)/python \ +$(MAGIC_FRAGMENT_DIR)/qt \ $(MAGIC_FRAGMENT_DIR)/revision \ $(MAGIC_FRAGMENT_DIR)/riff \ $(MAGIC_FRAGMENT_DIR)/rpm \ Modified: head/contrib/file/magic/Makefile.in ============================================================================== --- head/contrib/file/magic/Makefile.in Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/magic/Makefile.in Fri Jan 2 21:20:02 2015 (r276577) @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.14.1 from Makefile.am. +# Makefile.in generated by automake 1.14 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. @@ -262,7 +262,7 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ # -# $File: Makefile.am,v 1.100 2014/12/10 18:45:43 christos Exp $ +# $File: Makefile.am,v 1.101 2014/12/12 16:48:39 christos Exp $ # MAGIC_FRAGMENT_BASE = Magdir MAGIC_DIR = $(top_srcdir)/magic @@ -459,6 +459,7 @@ $(MAGIC_FRAGMENT_DIR)/pulsar \ $(MAGIC_FRAGMENT_DIR)/pwsafe \ $(MAGIC_FRAGMENT_DIR)/pyramid \ $(MAGIC_FRAGMENT_DIR)/python \ +$(MAGIC_FRAGMENT_DIR)/qt \ $(MAGIC_FRAGMENT_DIR)/revision \ $(MAGIC_FRAGMENT_DIR)/riff \ $(MAGIC_FRAGMENT_DIR)/rpm \ Modified: head/contrib/file/missing ============================================================================== --- head/contrib/file/missing Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/missing Fri Jan 2 21:20:02 2015 (r276577) @@ -1,7 +1,7 @@ #! /bin/sh # Common wrapper for a few potentially missing GNU programs. -scriptversion=2013-10-28.13; # UTC +scriptversion=2012-06-26.16; # UTC # Copyright (C) 1996-2013 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard , 1996. @@ -160,7 +160,7 @@ give_advice () ;; autom4te*) echo "You might have modified some maintainer files that require" - echo "the 'autom4te' program to be rebuilt." + echo "the 'automa4te' program to be rebuilt." program_details 'autom4te' ;; bison*|yacc*) Modified: head/contrib/file/python/Makefile.in ============================================================================== --- head/contrib/file/python/Makefile.in Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/python/Makefile.in Fri Jan 2 21:20:02 2015 (r276577) @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.14.1 from Makefile.am. +# Makefile.in generated by automake 1.14 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. Modified: head/contrib/file/src/Makefile.in ============================================================================== --- head/contrib/file/src/Makefile.in Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/src/Makefile.in Fri Jan 2 21:20:02 2015 (r276577) @@ -1,4 +1,4 @@ -# Makefile.in generated by automake 1.14.1 from Makefile.am. +# Makefile.in generated by automake 1.14 from Makefile.am. # @configure_input@ # Copyright (C) 1994-2013 Free Software Foundation, Inc. @@ -81,9 +81,9 @@ build_triplet = @build@ host_triplet = @host@ bin_PROGRAMS = file$(EXEEXT) subdir = src -DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am strcasestr.c \ - pread.c strlcpy.c vasprintf.c getopt_long.c asctime_r.c \ - strlcat.c ctime_r.c getline.c asprintf.c fmtcheck.c \ +DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am ctime_r.c \ + vasprintf.c asctime_r.c asprintf.c strcasestr.c pread.c \ + getline.c strlcpy.c strlcat.c fmtcheck.c getopt_long.c \ $(top_srcdir)/depcomp $(include_HEADERS) ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \ Modified: head/contrib/file/src/apprentice.c ============================================================================== --- head/contrib/file/src/apprentice.c Fri Jan 2 21:16:13 2015 (r276576) +++ head/contrib/file/src/apprentice.c Fri Jan 2 21:20:02 2015 (r276577) @@ -32,7 +32,7 @@ #include "file.h" #ifndef lint -FILE_RCSID("@(#)$File: apprentice.c,v 1.227 2014/11/28 02:46:39 christos Exp $") +FILE_RCSID("@(#)$File: apprentice.c,v 1.229 2015/01/01 17:07:34 christos Exp $") #endif /* lint */ #include "magic.h" @@ -528,6 +528,7 @@ file_ms_alloc(int flags) ms->name_max = FILE_NAME_MAX; ms->elf_shnum_max = FILE_ELF_SHNUM_MAX; ms->elf_phnum_max = FILE_ELF_PHNUM_MAX; + ms->elf_notes_max = FILE_ELF_NOTES_MAX; return ms; free: free(ms); @@ -1604,6 +1605,145 @@ check_cond(struct magic_set *ms, int con } #endif /* ENABLE_CONDITIONALS */ +private int +parse_indirect_modifier(struct magic_set *ms, struct magic *m, const char **lp) +{ + const char *l = *lp; + + while (!isspace((unsigned char)*++l)) + switch (*l) { + case CHAR_INDIRECT_RELATIVE: + m->str_flags |= INDIRECT_RELATIVE; + break; + default: + if (ms->flags & MAGIC_CHECK) + file_magwarn(ms, "indirect modifier `%c' " + "invalid", *l); + *lp = l; + return -1; + } + *lp = l; + return 0; +} + +private void +parse_op_modifier(struct magic_set *ms, struct magic *m, const char **lp, + int op) +{ + const char *l = *lp; + char *t; + uint64_t val; + + ++l; + m->mask_op |= op; + val = (uint64_t)strtoull(l, &t, 0); + l = t; + m->num_mask = file_signextend(ms, m, val); + eatsize(&l); + *lp = l; +} + +private int +parse_string_modifier(struct magic_set *ms, struct magic *m, const char **lp) +{ + const char *l = *lp; + char *t; + int have_range = 0; + + while (!isspace((unsigned char)*++l)) { + switch (*l) { + case '0': case '1': case '2': + case '3': case '4': case '5': + case '6': case '7': case '8': + case '9': + if (have_range && (ms->flags & MAGIC_CHECK)) + file_magwarn(ms, "multiple ranges"); + have_range = 1; + m->str_range = CAST(uint32_t, strtoul(l, &t, 0)); + if (m->str_range == 0) + file_magwarn(ms, "zero range"); + l = t - 1; + break; + case CHAR_COMPACT_WHITESPACE: + m->str_flags |= STRING_COMPACT_WHITESPACE; + break; + case CHAR_COMPACT_OPTIONAL_WHITESPACE: + m->str_flags |= STRING_COMPACT_OPTIONAL_WHITESPACE; + break; + case CHAR_IGNORE_LOWERCASE: + m->str_flags |= STRING_IGNORE_LOWERCASE; + break; + case CHAR_IGNORE_UPPERCASE: + m->str_flags |= STRING_IGNORE_UPPERCASE; + break; + case CHAR_REGEX_OFFSET_START: + m->str_flags |= REGEX_OFFSET_START; + break; + case CHAR_BINTEST: + m->str_flags |= STRING_BINTEST; + break; + case CHAR_TEXTTEST: + m->str_flags |= STRING_TEXTTEST; + break; + case CHAR_TRIM: + m->str_flags |= STRING_TRIM; + break; + case CHAR_PSTRING_1_LE: +#define SET_LENGTH(a) m->str_flags = (m->str_flags & ~PSTRING_LEN) | (a) + if (m->type != FILE_PSTRING) + goto bad; + SET_LENGTH(PSTRING_1_LE); + break; + case CHAR_PSTRING_2_BE: + if (m->type != FILE_PSTRING) + goto bad; + SET_LENGTH(PSTRING_2_BE); + break; + case CHAR_PSTRING_2_LE: + if (m->type != FILE_PSTRING) + goto bad; + SET_LENGTH(PSTRING_2_LE); + break; + case CHAR_PSTRING_4_BE: + if (m->type != FILE_PSTRING) + goto bad; + SET_LENGTH(PSTRING_4_BE); + break; + case CHAR_PSTRING_4_LE: + switch (m->type) { + case FILE_PSTRING: + case FILE_REGEX: + break; + default: + goto bad; + } + SET_LENGTH(PSTRING_4_LE); + break; + case CHAR_PSTRING_LENGTH_INCLUDES_ITSELF: + if (m->type != FILE_PSTRING) + goto bad; + m->str_flags |= PSTRING_LENGTH_INCLUDES_ITSELF; + break; + default: + bad: + if (ms->flags & MAGIC_CHECK) + file_magwarn(ms, "string modifier `%c' " + "invalid", *l); + goto out; + } + /* allow multiple '/' for readability */ + if (l[1] == '/' && !isspace((unsigned char)l[2])) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 21:33:42 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B64547DB; Fri, 2 Jan 2015 21:33:42 +0000 (UTC) Received: from troutmask.apl.washington.edu (troutmask.apl.washington.edu [128.95.76.21]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "troutmask", Issuer "troutmask" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 907E81A49; Fri, 2 Jan 2015 21:33:42 +0000 (UTC) Received: from troutmask.apl.washington.edu (localhost [127.0.0.1]) by troutmask.apl.washington.edu (8.14.9/8.14.9) with ESMTP id t02LXgvg072616 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Fri, 2 Jan 2015 13:33:42 -0800 (PST) (envelope-from sgk@troutmask.apl.washington.edu) Received: (from sgk@localhost) by troutmask.apl.washington.edu (8.14.9/8.14.9/Submit) id t02LXggs072615; Fri, 2 Jan 2015 13:33:42 -0800 (PST) (envelope-from sgk) Date: Fri, 2 Jan 2015 13:33:41 -0800 From: Steve Kargl To: Benjamin Kaduk Subject: Re: svn commit: r276565 - in head/gnu: lib/libstdc++/doc usr.bin/diff usr.bin/diff/doc usr.bin/gdb usr.bin/gperf usr.bin/gperf/doc Message-ID: <20150102213341.GA72376@troutmask.apl.washington.edu> References: <201501022034.t02KYu1I030453@svn.freebsd.org> <20150102204458.GA72199@troutmask.apl.washington.edu> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" , Garrett Cooper X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 21:33:42 -0000 On Fri, Jan 02, 2015 at 03:59:11PM -0500, Benjamin Kaduk wrote: > On Fri, Jan 2, 2015 at 3:44 PM, Steve Kargl < > sgk@troutmask.apl.washington.edu> wrote: > > > On Fri, Jan 02, 2015 at 08:34:56PM +0000, Garrett Cooper wrote: > > > Author: ngie > > > Date: Fri Jan 2 20:34:55 2015 > > > New Revision: 276565 > > > URL: https://svnweb.freebsd.org/changeset/base/276565 > > > > > > Log: > > > Remove gnu/ info pages to unbreak the build with MK_GCC != no, etc > > > > > > > Does this mean that FreeBSD is now shipping utilities without > > documentation? > > > > I'm pretty sure we've been doing that for a long, long time. > > Note that MK_GCC=no is the default on head for the tier-1 platforms. > Yeah, I know what the default is for tier-1, which is somewhat irrelevant to my question. bapt@ has removed info pages (and Garrett seems to have cleanup after bapt). Noting that FreeBSD has more than just tier-1, the question remains. Is FreeBSD now shipping utilities without proper documentation? -- Steve From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 21:36:02 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BB2EB95E; Fri, 2 Jan 2015 21:36:02 +0000 (UTC) Received: from mail-wg0-x233.google.com (mail-wg0-x233.google.com [IPv6:2a00:1450:400c:c00::233]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 633F61A69; Fri, 2 Jan 2015 21:36:02 +0000 (UTC) Received: by mail-wg0-f51.google.com with SMTP id x12so24490016wgg.38; Fri, 02 Jan 2015 13:36:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=SNrlaV4YHawPtmQ3T8T61RgxrB8PIJPmZLKdozIRlpE=; b=nKW+WEFhZp7f5zUl7KmwqdCPLiRgqI7RbEAK2D8yggBB07Nm3lvNAEsC3uOWjwaohX jmpHPtadwuWAhGPh2vsds1oH33xm7j2IaIU+ZHaZcUpqUFYWDS/creIkw7KRnjoCOF3U WNlLM5V0LmkY40VHA0e8peQcAyWrKWeGkBq2KOTMdNufr6htT8OInp2+mZn+f8+qHJbX QzxIzMTulbmRfuuUQPrqVRipbZI/vudZgHNpSCQ86Rb20NzKDdF5PsnmTYsoPk3yo7Vs ZOw2KPVdXzUpIrpxgocJTD00hDqYC9RBi0T2kVsD/HvBKQCfpfL4+gJDne8s8kSVh/je xOTA== X-Received: by 10.180.91.193 with SMTP id cg1mr1483122wib.26.1420234560598; Fri, 02 Jan 2015 13:36:00 -0800 (PST) Received: from ivaldir.etoilebsd.net ([2001:41d0:8:db4c::1]) by mx.google.com with ESMTPSA id eu15sm465466wid.18.2015.01.02.13.35.59 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 02 Jan 2015 13:35:59 -0800 (PST) Sender: Baptiste Daroussin Date: Fri, 2 Jan 2015 22:35:57 +0100 From: Baptiste Daroussin To: Steve Kargl Subject: Re: svn commit: r276565 - in head/gnu: lib/libstdc++/doc usr.bin/diff usr.bin/diff/doc usr.bin/gdb usr.bin/gperf usr.bin/gperf/doc Message-ID: <20150102213557.GE288@ivaldir.etoilebsd.net> References: <201501022034.t02KYu1I030453@svn.freebsd.org> <20150102204458.GA72199@troutmask.apl.washington.edu> <20150102213341.GA72376@troutmask.apl.washington.edu> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="jKBxcB1XkHIR0Eqt" Content-Disposition: inline In-Reply-To: <20150102213341.GA72376@troutmask.apl.washington.edu> User-Agent: Mutt/1.5.23 (2014-03-12) Cc: Benjamin Kaduk , "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" , Garrett Cooper X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 21:36:03 -0000 --jKBxcB1XkHIR0Eqt Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Jan 02, 2015 at 01:33:41PM -0800, Steve Kargl wrote: > On Fri, Jan 02, 2015 at 03:59:11PM -0500, Benjamin Kaduk wrote: > > On Fri, Jan 2, 2015 at 3:44 PM, Steve Kargl < > > sgk@troutmask.apl.washington.edu> wrote: > >=20 > > > On Fri, Jan 02, 2015 at 08:34:56PM +0000, Garrett Cooper wrote: > > > > Author: ngie > > > > Date: Fri Jan 2 20:34:55 2015 > > > > New Revision: 276565 > > > > URL: https://svnweb.freebsd.org/changeset/base/276565 > > > > > > > > Log: > > > > Remove gnu/ info pages to unbreak the build with MK_GCC !=3D no, = etc > > > > > > > > > > Does this mean that FreeBSD is now shipping utilities without > > > documentation? > > > > >=20 > > I'm pretty sure we've been doing that for a long, long time. > >=20 > > Note that MK_GCC=3Dno is the default on head for the tier-1 platforms. > >=20 >=20 > Yeah, I know what the default is for tier-1, which is somewhat > irrelevant to my question. bapt@ has removed info pages (and > Garrett seems to have cleanup after bapt). Noting that FreeBSD > has more than just tier-1, the question remains. Is FreeBSD > now shipping utilities without proper documentation? >=20 The man pages remains, for binutils for examples, the manpages were generat= ed out of the texinfo files meaning the manpage contains the same amount of informations Bapt --jKBxcB1XkHIR0Eqt Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iEYEABECAAYFAlSnDz0ACgkQ8kTtMUmk6EyFUgCfY46hUYG9+JZ2ZNTTCwybrzhq 0FQAnjBepgebXyn/9/VjfQMToctQJGiU =S31U -----END PGP SIGNATURE----- --jKBxcB1XkHIR0Eqt-- From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 21:37:13 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B9763AB2; Fri, 2 Jan 2015 21:37:13 +0000 (UTC) Received: from elvis.mu.org (elvis.mu.org [IPv6:2001:470:1f05:b76::196]) by mx1.freebsd.org (Postfix) with ESMTP id 9FC4D1AA9; Fri, 2 Jan 2015 21:37:13 +0000 (UTC) Received: from AlfredMacbookAir.local (c-76-21-10-192.hsd1.ca.comcast.net [76.21.10.192]) by elvis.mu.org (Postfix) with ESMTPSA id E5563341F85F; Fri, 2 Jan 2015 13:37:12 -0800 (PST) Message-ID: <54A70FB7.1060202@freebsd.org> Date: Fri, 02 Jan 2015 13:37:59 -0800 From: Alfred Perlstein Organization: FreeBSD User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 MIME-Version: 1.0 To: Steve Kargl , Benjamin Kaduk Subject: Re: svn commit: r276565 - in head/gnu: lib/libstdc++/doc usr.bin/diff usr.bin/diff/doc usr.bin/gdb usr.bin/gperf usr.bin/gperf/doc References: <201501022034.t02KYu1I030453@svn.freebsd.org> <20150102204458.GA72199@troutmask.apl.washington.edu> <20150102213341.GA72376@troutmask.apl.washington.edu> In-Reply-To: <20150102213341.GA72376@troutmask.apl.washington.edu> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" , Garrett Cooper X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 21:37:13 -0000 On 1/2/15 1:33 PM, Steve Kargl wrote: > On Fri, Jan 02, 2015 at 03:59:11PM -0500, Benjamin Kaduk wrote: >> On Fri, Jan 2, 2015 at 3:44 PM, Steve Kargl < >> sgk@troutmask.apl.washington.edu> wrote: >> >>> On Fri, Jan 02, 2015 at 08:34:56PM +0000, Garrett Cooper wrote: >>>> Author: ngie >>>> Date: Fri Jan 2 20:34:55 2015 >>>> New Revision: 276565 >>>> URL: https://svnweb.freebsd.org/changeset/base/276565 >>>> >>>> Log: >>>> Remove gnu/ info pages to unbreak the build with MK_GCC != no, etc >>>> >>> Does this mean that FreeBSD is now shipping utilities without >>> documentation? >>> >> I'm pretty sure we've been doing that for a long, long time. >> >> Note that MK_GCC=no is the default on head for the tier-1 platforms. >> > Yeah, I know what the default is for tier-1, which is somewhat > irrelevant to my question. bapt@ has removed info pages (and > Garrett seems to have cleanup after bapt). Noting that FreeBSD > has more than just tier-1, the question remains. Is FreeBSD > now shipping utilities without proper documentation? > The docs are there, you just need to install a package to read them. It was explained in the commit log. -Alfred From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 21:41:26 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B943BE79; Fri, 2 Jan 2015 21:41:26 +0000 (UTC) Received: from troutmask.apl.washington.edu (troutmask.apl.washington.edu [128.95.76.21]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "troutmask", Issuer "troutmask" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 918021BBB; Fri, 2 Jan 2015 21:41:26 +0000 (UTC) Received: from troutmask.apl.washington.edu (localhost [127.0.0.1]) by troutmask.apl.washington.edu (8.14.9/8.14.9) with ESMTP id t02LfQ1g072719 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Fri, 2 Jan 2015 13:41:26 -0800 (PST) (envelope-from sgk@troutmask.apl.washington.edu) Received: (from sgk@localhost) by troutmask.apl.washington.edu (8.14.9/8.14.9/Submit) id t02LfQkq072718; Fri, 2 Jan 2015 13:41:26 -0800 (PST) (envelope-from sgk) Date: Fri, 2 Jan 2015 13:41:26 -0800 From: Steve Kargl To: Baptiste Daroussin Subject: Re: svn commit: r276565 - in head/gnu: lib/libstdc++/doc usr.bin/diff usr.bin/diff/doc usr.bin/gdb usr.bin/gperf usr.bin/gperf/doc Message-ID: <20150102214126.GA72685@troutmask.apl.washington.edu> References: <201501022034.t02KYu1I030453@svn.freebsd.org> <20150102204458.GA72199@troutmask.apl.washington.edu> <20150102213341.GA72376@troutmask.apl.washington.edu> <20150102213557.GE288@ivaldir.etoilebsd.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150102213557.GE288@ivaldir.etoilebsd.net> User-Agent: Mutt/1.5.23 (2014-03-12) Cc: Benjamin Kaduk , "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" , Garrett Cooper X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 21:41:26 -0000 On Fri, Jan 02, 2015 at 10:35:57PM +0100, Baptiste Daroussin wrote: > On Fri, Jan 02, 2015 at 01:33:41PM -0800, Steve Kargl wrote: > > > > Yeah, I know what the default is for tier-1, which is somewhat > > irrelevant to my question. bapt@ has removed info pages (and > > Garrett seems to have cleanup after bapt). Noting that FreeBSD > > has more than just tier-1, the question remains. Is FreeBSD > > now shipping utilities without proper documentation? > > > The man pages remains, for binutils for examples, the manpages were generated > out of the texinfo files meaning the manpage contains the same amount of > informations > Thanks for the clarification. -- Steve From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 21:45:36 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A56C23BD; Fri, 2 Jan 2015 21:45:36 +0000 (UTC) Received: from mail-ie0-x229.google.com (mail-ie0-x229.google.com [IPv6:2607:f8b0:4001:c03::229]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 62B4866981; Fri, 2 Jan 2015 21:45:36 +0000 (UTC) Received: by mail-ie0-f169.google.com with SMTP id y20so17286733ier.0; Fri, 02 Jan 2015 13:45:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:content-type; bh=qIyfcFPSREGYkZjfxux9FEeNsNsHJ+5UlCDgg03jxUI=; b=uN2L/BKxqWZF/R/zbo717gG7IxSRQUjkYa3tT3J/Ac2G8lc4OBRY0c0HT+7lUGM8Q7 GR2vaa2YQSAVY8XT+7YwQruy2P7VjrFRFQtH1vMRpS+K6k2aC7RFIZ2/+T6D9R5jEe3G uzK/JCT2cYWvCZX9KfLR/IwAr24WSY+lHlbeV0sGlIFVomveZWZ5XGveqgQOiCrovums /BpQqB7g0tEhQd+13hIpNms2Ud2v2TJzdRJutC/ATUoNeh+x6FJAbzm3GQjAA+DOm57n UjNzsqpeG7odjyjwx7qK/5y1oah3GJVjX34y/1LfVbeJR1VOjInimmSiP4O5wfpF8qYb K7EA== X-Received: by 10.50.66.198 with SMTP id h6mr827952igt.22.1420235135666; Fri, 02 Jan 2015 13:45:35 -0800 (PST) MIME-Version: 1.0 Sender: carpeddiem@gmail.com Received: by 10.107.0.85 with HTTP; Fri, 2 Jan 2015 13:45:15 -0800 (PST) In-Reply-To: <201501022049.t02Kni1P036850@svn.freebsd.org> References: <201501022049.t02Kni1P036850@svn.freebsd.org> From: Ed Maste Date: Fri, 2 Jan 2015 16:45:15 -0500 X-Google-Sender-Auth: fy441JwTK_48PTtG_ZEKkORFIi4 Message-ID: Subject: Re: svn commit: r276567 - head/contrib/elftoolchain/readelf To: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 21:45:36 -0000 On 2 January 2015 at 15:49, Ed Maste wrote: > Author: emaste > Date: Fri Jan 2 20:49:43 2015 > New Revision: 276567 > URL: https://svnweb.freebsd.org/changeset/base/276567 > ... > +#if 0 > case NT_AUXV: > return "NT_AUXV (Auxiliary vector)"; Oops, the #if 0s here were unintentionally included in the commit. It is currently needed to build elftoolchain's readelf though, as the set of NT_ defines here are actually Linux ones. In fact, readelf's note parsing does not properly support multiple operating systems right now: http://sourceforge.net/p/elftoolchain/tickets/473/ This is fairly easily addressed, and will replace this #if 0'd code later on. From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 21:46:55 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3F3C268E; Fri, 2 Jan 2015 21:46:55 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 12D7F669F5; Fri, 2 Jan 2015 21:46:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02Lks3I070338; Fri, 2 Jan 2015 21:46:54 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02LksAs070337; Fri, 2 Jan 2015 21:46:54 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201501022146.t02LksAs070337@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Fri, 2 Jan 2015 21:46:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276582 - head/release/doc/en_US.ISO8859-1/readme X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 21:46:55 -0000 Author: gjb Date: Fri Jan 2 21:46:53 2015 New Revision: 276582 URL: https://svnweb.freebsd.org/changeset/base/276582 Log: Update the 'Submitting Problem Reports' section to reflect send-pr(1) deprecation, taking the text from the document in stable/10. Sponsored by: The FreeBSD Foundation Modified: head/release/doc/en_US.ISO8859-1/readme/article.xml Modified: head/release/doc/en_US.ISO8859-1/readme/article.xml ============================================================================== --- head/release/doc/en_US.ISO8859-1/readme/article.xml Fri Jan 2 21:41:52 2015 (r276581) +++ head/release/doc/en_US.ISO8859-1/readme/article.xml Fri Jan 2 21:46:53 2015 (r276582) @@ -249,26 +249,24 @@ course even more welcome. The preferred method to submit bug reports from a machine - with Internet mail connectivity is to use the &man.send-pr.1; - command. + with Internet connectivity is to use the + Bugzilla bug tracker. Problem Reports (PRs) submitted in this way will be filed and their progress tracked; the &os; developers will do their best to respond to all reported bugs as soon as - possible. A list - of all active PRs is available on the &os; Web site; - this list is useful to see what potential problems other users - have encountered. - - Note that &man.send-pr.1; itself is a shell script that - should be easy to move even onto a non-&os; system. Using - this interface is highly preferred. If, for some reason, you - are unable to use &man.send-pr.1; to submit a bug report, you - can try to send it to the &a.bugs;. - - For more information, Writing - &os; Problem Reports, available on the &os; Web - site, has a number of helpful hints on writing and submitting - effective problem reports. + possible. A list of all + active PRs is available on the &os; Web site; this + list is useful to see what potential problems other users have + encountered. + + Note that &man.send-pr.1; is deprecated. + + For more information, Writing + &os; Problem Reports, available on the &os; + Web site, has a number of helpful hints on writing and + submitting effective problem reports. From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 21:46:58 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B1DB67C9; Fri, 2 Jan 2015 21:46:58 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7960E669F6; Fri, 2 Jan 2015 21:46:58 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02LkwFq070396; Fri, 2 Jan 2015 21:46:58 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02Lkweh070395; Fri, 2 Jan 2015 21:46:58 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201501022146.t02Lkweh070395@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Fri, 2 Jan 2015 21:46:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276583 - head/release/doc/en_US.ISO8859-1/readme X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 21:46:58 -0000 Author: gjb Date: Fri Jan 2 21:46:57 2015 New Revision: 276583 URL: https://svnweb.freebsd.org/changeset/base/276583 Log: Bump copyright year. Sponsored by: The FreeBSD Foundation Modified: head/release/doc/en_US.ISO8859-1/readme/article.xml Modified: head/release/doc/en_US.ISO8859-1/readme/article.xml ============================================================================== --- head/release/doc/en_US.ISO8859-1/readme/article.xml Fri Jan 2 21:46:53 2015 (r276582) +++ head/release/doc/en_US.ISO8859-1/readme/article.xml Fri Jan 2 21:46:57 2015 (r276583) @@ -36,6 +36,7 @@ 2012 2013 2014 + 2015 The &os; Documentation Project From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 21:47:24 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id AFD07904; Fri, 2 Jan 2015 21:47:24 +0000 (UTC) Received: from troutmask.apl.washington.edu (troutmask.apl.washington.edu [128.95.76.21]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "troutmask", Issuer "troutmask" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 83BE166A0D; Fri, 2 Jan 2015 21:47:24 +0000 (UTC) Received: from troutmask.apl.washington.edu (localhost [127.0.0.1]) by troutmask.apl.washington.edu (8.14.9/8.14.9) with ESMTP id t02LlN38072822 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Fri, 2 Jan 2015 13:47:23 -0800 (PST) (envelope-from sgk@troutmask.apl.washington.edu) Received: (from sgk@localhost) by troutmask.apl.washington.edu (8.14.9/8.14.9/Submit) id t02LlNqR072821; Fri, 2 Jan 2015 13:47:23 -0800 (PST) (envelope-from sgk) Date: Fri, 2 Jan 2015 13:47:23 -0800 From: Steve Kargl To: Alfred Perlstein Subject: Re: svn commit: r276565 - in head/gnu: lib/libstdc++/doc usr.bin/diff usr.bin/diff/doc usr.bin/gdb usr.bin/gperf usr.bin/gperf/doc Message-ID: <20150102214723.GB72685@troutmask.apl.washington.edu> References: <201501022034.t02KYu1I030453@svn.freebsd.org> <20150102204458.GA72199@troutmask.apl.washington.edu> <20150102213341.GA72376@troutmask.apl.washington.edu> <54A70FB7.1060202@freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <54A70FB7.1060202@freebsd.org> User-Agent: Mutt/1.5.23 (2014-03-12) Cc: Benjamin Kaduk , "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" , Garrett Cooper X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 21:47:24 -0000 On Fri, Jan 02, 2015 at 01:37:59PM -0800, Alfred Perlstein wrote: > > On 1/2/15 1:33 PM, Steve Kargl wrote: >> Yeah, I know what the default is for tier-1, which is somewhat >> >> irrelevant to my question. bapt@ has removed info pages (and >> Garrett seems to have cleanup after bapt). Noting that FreeBSD >> has more than just tier-1, the question remains. Is FreeBSD >> now shipping utilities without proper documentation? >> > The docs are there, you just need to install a package to read them. > > It was explained in the commit log. > Well, no, it wasn't explained. The commit messages notes that one needs to install print/texinfo to read info pages. The commit message does not explain how to read the now removed usr/share/info/{as,ld,gdb,...}.info that correspond to specific versions of utilities shipped by FreeBSD. -- Steve From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 21:52:02 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D386BB7B; Fri, 2 Jan 2015 21:52:02 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BFDE966C4B; Fri, 2 Jan 2015 21:52:02 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02Lq2lx075079; Fri, 2 Jan 2015 21:52:02 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02Lq2U1075078; Fri, 2 Jan 2015 21:52:02 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201501022152.t02Lq2U1075078@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Fri, 2 Jan 2015 21:52:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276584 - head/release/doc/en_US.ISO8859-1/relnotes X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 21:52:02 -0000 Author: gjb Date: Fri Jan 2 21:52:01 2015 New Revision: 276584 URL: https://svnweb.freebsd.org/changeset/base/276584 Log: Document asr(4) removal in r276526. Sponsored by: The FreeBSD Foundation Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml ============================================================================== --- head/release/doc/en_US.ISO8859-1/relnotes/article.xml Fri Jan 2 21:46:57 2015 (r276583) +++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml Fri Jan 2 21:52:01 2015 (r276584) @@ -283,6 +283,9 @@ Support for the disklabel64 partitioning scheme has been added to &man.gpart.8;. + + The asr(4) driver has + been removed, and is no longer supported. From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 22:11:20 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D93B31F6; Fri, 2 Jan 2015 22:11:19 +0000 (UTC) Received: from mail-wi0-x236.google.com (mail-wi0-x236.google.com [IPv6:2a00:1450:400c:c05::236]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 58EDA66F58; Fri, 2 Jan 2015 22:11:19 +0000 (UTC) Received: by mail-wi0-f182.google.com with SMTP id h11so212730wiw.9; Fri, 02 Jan 2015 14:11:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=nSQeKhrZP8VJ1lCCSlQzuGMH/uud2kgeKJOVZuMlS9g=; b=twTQYcrbqhstK5HCWpboRTPatTVSalxXAI70DVnr7GOYiEkEJCZvQ9Mqmevwq+K/nz vo9bYV8PO0Ki8AoP+x7PE/ZTfEFDlCAK3J3mmLc4rJQqBLTcN/pBsrS0vveQo6l/JkzF fkcP8RhBluz7K4jl/uj/52K7QN0sWU2pOI2tlqLrJNqhKeJfhPzRBIT4JCz63yRb/gyJ WLR8L6O8ffMRLoAhYqAZ3vODbVJVOzm1wzOEEzifwOBeGc2Ee0Fil8IxzontMZcfEXJT ZtzeleMwxdqZ1ywmUb0dyIJuOGvj/hO4YJnQRPxHt7CM6yHe0dyVQumMlDiy3IbzwOS0 xLDw== X-Received: by 10.180.82.137 with SMTP id i9mr1697945wiy.38.1420236677704; Fri, 02 Jan 2015 14:11:17 -0800 (PST) Received: from ivaldir.etoilebsd.net ([2001:41d0:8:db4c::1]) by mx.google.com with ESMTPSA id gb10sm40813676wjb.21.2015.01.02.14.11.16 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 02 Jan 2015 14:11:16 -0800 (PST) Sender: Baptiste Daroussin Date: Fri, 2 Jan 2015 23:11:14 +0100 From: Baptiste Daroussin To: Steve Kargl Subject: Re: svn commit: r276565 - in head/gnu: lib/libstdc++/doc usr.bin/diff usr.bin/diff/doc usr.bin/gdb usr.bin/gperf usr.bin/gperf/doc Message-ID: <20150102221114.GF288@ivaldir.etoilebsd.net> References: <201501022034.t02KYu1I030453@svn.freebsd.org> <20150102204458.GA72199@troutmask.apl.washington.edu> <20150102213341.GA72376@troutmask.apl.washington.edu> <20150102213557.GE288@ivaldir.etoilebsd.net> <20150102214126.GA72685@troutmask.apl.washington.edu> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="HCdXmnRlPgeNBad2" Content-Disposition: inline In-Reply-To: <20150102214126.GA72685@troutmask.apl.washington.edu> User-Agent: Mutt/1.5.23 (2014-03-12) Cc: Benjamin Kaduk , "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" , Garrett Cooper X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 22:11:20 -0000 --HCdXmnRlPgeNBad2 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Jan 02, 2015 at 01:41:26PM -0800, Steve Kargl wrote: > On Fri, Jan 02, 2015 at 10:35:57PM +0100, Baptiste Daroussin wrote: > > On Fri, Jan 02, 2015 at 01:33:41PM -0800, Steve Kargl wrote: > > >=20 > > > Yeah, I know what the default is for tier-1, which is somewhat > > > irrelevant to my question. bapt@ has removed info pages (and > > > Garrett seems to have cleanup after bapt). Noting that FreeBSD > > > has more than just tier-1, the question remains. Is FreeBSD > > > now shipping utilities without proper documentation? > > >=20 > > The man pages remains, for binutils for examples, the manpages were gen= erated > > out of the texinfo files meaning the manpage contains the same amount of > > informations > >=20 >=20 > Thanks for the clarification. I forgot to say that if a documentation is missing for a user, I'll make su= re to make this doc available. I just needs to be aware of it :) Best regards, Bapt --HCdXmnRlPgeNBad2 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iEYEABECAAYFAlSnF38ACgkQ8kTtMUmk6ExENACfYkLTqeJJ37Y5DSmLzLnrbeK5 0/AAnj0bnFFptwuULtBnolLxNd+EFrbT =4hnG -----END PGP SIGNATURE----- --HCdXmnRlPgeNBad2-- From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 22:26:56 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 07214992; Fri, 2 Jan 2015 22:26:56 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E73E421E6; Fri, 2 Jan 2015 22:26:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02MQt0b092461; Fri, 2 Jan 2015 22:26:55 GMT (envelope-from emaste@FreeBSD.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02MQteT092460; Fri, 2 Jan 2015 22:26:55 GMT (envelope-from emaste@FreeBSD.org) Message-Id: <201501022226.t02MQteT092460@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: emaste set sender to emaste@FreeBSD.org using -f From: Ed Maste Date: Fri, 2 Jan 2015 22:26:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276587 - head/usr.bin/readelf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 22:26:56 -0000 Author: emaste Date: Fri Jan 2 22:26:54 2015 New Revision: 276587 URL: https://svnweb.freebsd.org/changeset/base/276587 Log: Add Makefile for elftoolchain readelf(1) Sponsored by: The FreeBSD Foundation Added: head/usr.bin/readelf/ head/usr.bin/readelf/Makefile (contents, props changed) Added: head/usr.bin/readelf/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/usr.bin/readelf/Makefile Fri Jan 2 22:26:54 2015 (r276587) @@ -0,0 +1,14 @@ +# $FreeBSD$ + +ELFTCDIR= ${.CURDIR}/../../contrib/elftoolchain +READELFDIR= ${ELFTCDIR}/readelf + +.PATH: ${READELFDIR} + +PROG= readelf + +LIBADD= dwarf elftc elf + +CFLAGS+=-I${ELFTCDIR}/libelftc -I${ELFTCDIR}/common + +.include From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 22:34:01 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5B5BFE33; Fri, 2 Jan 2015 22:34:01 +0000 (UTC) Received: from mail-la0-x22e.google.com (mail-la0-x22e.google.com [IPv6:2a00:1450:4010:c03::22e]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E5BC924A9; Fri, 2 Jan 2015 22:34:00 +0000 (UTC) Received: by mail-la0-f46.google.com with SMTP id q1so16323797lam.33; Fri, 02 Jan 2015 14:33:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=OY+4aYYKZpo4W9aXIivSxw+DwHHnqYjAN9fS328J6NQ=; b=BXn27WKYR4Y68ttvHZJxkHNG2H78EKtHBzN2EZlQmpkDagQLrzJgbJUIjZDMd3K1qa mDJDFkiloynGtiYAWkC8Jp3iHtb92hLJpoI6OSdfFZY+ClWNYPrgr624neNjFdFALAMK +2UkO4sLjymT/tcYRfIJyEcP6oy+iMcbOAWJn1OPAeth9/biZSrJWzIrycrBPb54b6Zb ARqrtIWrfkeHZ6pmBHSS+HgKfG3kT9wMpRF8BpFu30r3TA1UxHXAe1XXAldITJJgLJMK lHI2mnaSb1IhHMwN4oW1+cWlL4kK0ff3N7o9CZVk5G16CoEBLOvL/5aGXE2Hzs1gCCf7 AUeQ== MIME-Version: 1.0 X-Received: by 10.112.51.44 with SMTP id h12mr79058171lbo.5.1420238038856; Fri, 02 Jan 2015 14:33:58 -0800 (PST) Sender: crodr001@gmail.com Received: by 10.112.141.5 with HTTP; Fri, 2 Jan 2015 14:33:58 -0800 (PST) In-Reply-To: <201501022120.t02LK3up054153@svn.freebsd.org> References: <201501022120.t02LK3up054153@svn.freebsd.org> Date: Fri, 2 Jan 2015 14:33:58 -0800 X-Google-Sender-Auth: 9kN4vv8HBe9HOp5aUhv-wrvSEvE Message-ID: Subject: Re: svn commit: r276577 - in head: contrib/file contrib/file/doc contrib/file/magic contrib/file/magic/Magdir contrib/file/python contrib/file/src contrib/file/tests lib/libmagic From: Craig Rodrigues To: Xin LI Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.18-1 Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 22:34:01 -0000 On Fri, Jan 2, 2015 at 1:20 PM, Xin LI wrote: > Author: delphij > Date: Fri Jan 2 21:20:02 2015 > New Revision: 276577 > URL: https://svnweb.freebsd.org/changeset/base/276577 > > Log: > MFV r276568: > > Update file to 5.22. > In future for commits like this, please set the "Relnotes:" flag in your commit log message, to make it easier for re@ to track updates to contrib code in the release notes. -- Craig From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 22:34:04 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 80EAFF65; Fri, 2 Jan 2015 22:34:04 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6D13A24AA; Fri, 2 Jan 2015 22:34:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02MY43e097351; Fri, 2 Jan 2015 22:34:04 GMT (envelope-from nwhitehorn@FreeBSD.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02MY4RI097350; Fri, 2 Jan 2015 22:34:04 GMT (envelope-from nwhitehorn@FreeBSD.org) Message-Id: <201501022234.t02MY4RI097350@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: nwhitehorn set sender to nwhitehorn@FreeBSD.org using -f From: Nathan Whitehorn Date: Fri, 2 Jan 2015 22:34:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276588 - head/sys/powerpc/ofw X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 22:34:04 -0000 Author: nwhitehorn Date: Fri Jan 2 22:34:03 2015 New Revision: 276588 URL: https://svnweb.freebsd.org/changeset/base/276588 Log: Remove last vestige of Apple-specific memory parsing removed in r258807. Modified: head/sys/powerpc/ofw/ofw_machdep.c Modified: head/sys/powerpc/ofw/ofw_machdep.c ============================================================================== --- head/sys/powerpc/ofw/ofw_machdep.c Fri Jan 2 22:26:54 2015 (r276587) +++ head/sys/powerpc/ofw/ofw_machdep.c Fri Jan 2 22:34:03 2015 (r276588) @@ -141,11 +141,9 @@ parse_ofw_memory(phandle_t node, const c cell_t address_cells, size_cells; cell_t OFmem[4 * PHYS_AVAIL_SZ]; int sz, i, j; - int apple_hack_mode; phandle_t phandle; sz = 0; - apple_hack_mode = 0; /* * Get #address-cells from root node, defaulting to 1 if it cannot From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 22:42:04 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CB1C125E; Fri, 2 Jan 2015 22:42:04 +0000 (UTC) Received: from mail-ig0-x234.google.com (mail-ig0-x234.google.com [IPv6:2607:f8b0:4001:c05::234]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 84A1825FF; Fri, 2 Jan 2015 22:42:04 +0000 (UTC) Received: by mail-ig0-f180.google.com with SMTP id h15so204480igd.13; Fri, 02 Jan 2015 14:42:03 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=9XXH9V5r694iKdTuBIr6pL8qwpyAtFCou4oxk6ZyBMY=; b=vBTdvIExUT44dMub2ECZEuNJc8fR0HbnYoyhvWDVYEhf6BTj0AI/MgxLLixUEWeop2 1lKMkY95Bq8UV1yHbl2vI8VyxyzP04RAQLo5p4RBWW3pGT7D1C3yj0ECuN5iBtXHfWrn GKQxaLIEyaGiOjsm2qvGD4KYDNXGu1XdUgNpu8wkft6yPYtUilfZfrLmWqSx5U0+5oc0 vaV0iLFvGwC+Xcaramd7Zwf9sG9U9m34hHRvvT4gp1d+zKSqxFt05APqHpux1RFx21s3 3QUV9EWtq+yPzJLyuiUj+4FK3GNHoaC8DIRJ7MTjXBQKE5QsgYln71adHsdZlZwxkDQB tUGA== X-Received: by 10.43.154.138 with SMTP id le10mr57737520icc.50.1420238523844; Fri, 02 Jan 2015 14:42:03 -0800 (PST) MIME-Version: 1.0 Sender: carpeddiem@gmail.com Received: by 10.107.0.85 with HTTP; Fri, 2 Jan 2015 14:41:43 -0800 (PST) In-Reply-To: References: <201501022120.t02LK3up054153@svn.freebsd.org> From: Ed Maste Date: Fri, 2 Jan 2015 17:41:43 -0500 X-Google-Sender-Auth: FTQydRUJUxSlMlVL2E57hpPPL8A Message-ID: Subject: Re: svn commit: r276577 - in head: contrib/file contrib/file/doc contrib/file/magic contrib/file/magic/Magdir contrib/file/python contrib/file/src contrib/file/tests lib/libmagic To: Craig Rodrigues Content-Type: text/plain; charset=UTF-8 Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" , Xin LI X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 22:42:04 -0000 On 2 January 2015 at 17:33, Craig Rodrigues wrote: > > In future for commits like this, please set the "Relnotes:" flag in your > commit log message, to make it easier for re@ to track updates to > contrib code in the release notes. Good point. Perhaps we should add a note in the Committer's Guide Subversion Primer as well. I'll review it and see if there are other things we may want to comment on. From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 22:44:58 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 25EDA41B; Fri, 2 Jan 2015 22:44:58 +0000 (UTC) Received: from mail-pa0-x235.google.com (mail-pa0-x235.google.com [IPv6:2607:f8b0:400e:c03::235]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E1FE5263C; Fri, 2 Jan 2015 22:44:57 +0000 (UTC) Received: by mail-pa0-f53.google.com with SMTP id kq14so24814709pab.40; Fri, 02 Jan 2015 14:44:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=content-type:mime-version:subject:from:in-reply-to:date:cc :message-id:references:to; bh=dPs0fyJ1bb/8cOm0GouTxzmuC+hAFR8CMug/sas3U4U=; b=mHb4WDShEQQ+9bmVeGEEuHj+MdDzfyrZCvDtZpwMsjKiG2GGdkvQRhGuGCVJIRRul1 ccRqVxZS/wbq4OoWhmrt3/3DLcWyYtk69EikM7Rtljddam4NDbDglcWSgEfd/HlQ2E5o ax87QQGs9Nx3jlNpf6YrOZhRJhJjzvRgRVB9U3xMrrWDnKDBQp92VXjD4L1ghPkuz0Sq QcpoKGPkDSRQgHgB136frp6sD7z/gavjve7aFQX26RHcodU2ruJ8nm9rl9OIya4IrLsD +5WjsUa08LCjqQwK1ubPIkdt1zrFfj//kjNsA9AkX+kH5toWFaXZ2yAuwv11fuHJQnMv GR+Q== X-Received: by 10.68.196.231 with SMTP id ip7mr68524112pbc.156.1420238697488; Fri, 02 Jan 2015 14:44:57 -0800 (PST) Received: from ?IPv6:2601:8:ab80:7d6:9824:7859:76bd:f878? ([2601:8:ab80:7d6:9824:7859:76bd:f878]) by mx.google.com with ESMTPSA id kr10sm26989830pdb.42.2015.01.02.14.44.56 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 02 Jan 2015 14:44:56 -0800 (PST) Content-Type: multipart/signed; boundary="Apple-Mail=_0D91F331-A51B-41FF-BF57-56C9EE97BB7B"; protocol="application/pgp-signature"; micalg=pgp-sha512 Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\)) Subject: Re: svn commit: r276566 - head/gnu/usr.bin/gperf/doc From: Garrett Cooper In-Reply-To: <201501022047.t02Klret036440@svn.freebsd.org> Date: Fri, 2 Jan 2015 14:44:53 -0800 Message-Id: References: <201501022047.t02Klret036440@svn.freebsd.org> To: Jung-uk Kim X-Mailer: Apple Mail (2.1878.6) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 22:44:58 -0000 --Apple-Mail=_0D91F331-A51B-41FF-BF57-56C9EE97BB7B Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii On Jan 2, 2015, at 12:47, Jung-uk Kim wrote: > Author: jkim > Date: Fri Jan 2 20:47:52 2015 > New Revision: 276566 > URL: https://svnweb.freebsd.org/changeset/base/276566 > > Log: > Garbage collect the empty directory. Thanks for getting that! --Apple-Mail=_0D91F331-A51B-41FF-BF57-56C9EE97BB7B Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJUpx9mAAoJEMZr5QU6S73eULMIAJvwuUMuke3vKvbvjYvX9JyV ld8hpSfXLw06JSDTrfq+aNqoQrsR9E4uFLp+Zs8vfNcu7zO7BJZNXB9j8GVfruHG wfaqpeZGx7i3wBwpQOyzzLTwTMgc1+SCx6l3dEflkhp0ghtc5LWwhsr+kIs2+dvq TWd9qqT/LIut/YYhMpvYjLDgt4m8Qy5koT7AotAEIom6MaBDMbIR2+gYG/BLa8pi R7x3s0/KldJIWgeDkMjte0bWf36lDVN9CGteQIt84V/UY9dyDaQAJVIVQC1vAIcu hmL1uNnkPX3VhNBJkIC15LUPy2Vt5iUlC5t+idq6UFI0NM+UrP6kyoeLuuXha0M= =gDKT -----END PGP SIGNATURE----- --Apple-Mail=_0D91F331-A51B-41FF-BF57-56C9EE97BB7B-- From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 22:45:56 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1B7B655D; Fri, 2 Jan 2015 22:45:56 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0797A2650; Fri, 2 Jan 2015 22:45:56 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02MjttB003143; Fri, 2 Jan 2015 22:45:55 GMT (envelope-from loos@FreeBSD.org) Received: (from loos@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02Mjtdw003142; Fri, 2 Jan 2015 22:45:55 GMT (envelope-from loos@FreeBSD.org) Message-Id: <201501022245.t02Mjtdw003142@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: loos set sender to loos@FreeBSD.org using -f From: Luiz Otavio O Souza Date: Fri, 2 Jan 2015 22:45:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276589 - head/sys/dev/puc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 22:45:56 -0000 Author: loos Date: Fri Jan 2 22:45:55 2015 New Revision: 276589 URL: https://svnweb.freebsd.org/changeset/base/276589 Log: puc(4): Add an entry for the Feasso PCI FPP-02 2S1P card. MFC after: 1 week Modified: head/sys/dev/puc/pucdata.c Modified: head/sys/dev/puc/pucdata.c ============================================================================== --- head/sys/dev/puc/pucdata.c Fri Jan 2 22:34:03 2015 (r276588) +++ head/sys/dev/puc/pucdata.c Fri Jan 2 22:45:55 2015 (r276589) @@ -1035,6 +1035,12 @@ const struct puc_cfg puc_pci_devices[] = .config_function = puc_config_sunix }, + { 0x5372, 0x6872, 0xffff, 0, + "Feasso PCI FPP-02 2S1P", + DEFAULT_RCLK, + PUC_PORT_2S1P, 0x10, 4, 0, + }, + { 0x5372, 0x6873, 0xffff, 0, "Sun 1040 PCI Quad Serial", DEFAULT_RCLK, From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 22:46:51 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 481796A4; Fri, 2 Jan 2015 22:46:51 +0000 (UTC) Received: from mail-lb0-x22a.google.com (mail-lb0-x22a.google.com [IPv6:2a00:1450:4010:c04::22a]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D0D092690; Fri, 2 Jan 2015 22:46:50 +0000 (UTC) Received: by mail-lb0-f170.google.com with SMTP id 10so15702394lbg.15; Fri, 02 Jan 2015 14:46:48 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=3imFhnvM/8WGAm2BMHuCHUmRUzGFvewo7apI6+1nfeE=; b=GSkNXbxQev5E2U8/xNaDAXYyVwQZj4G7/d/PWZ08BBN/3A182DW/uZbbCve6j5vTyg b6mHBawweC9u5MQOFBMrsqH2kmVtLw8+X3ds6m16Zz0D8bhEH35LOvuhJYlqCr1mBPqH B+A0BEO9FJKKZHtqdN2gQ+WXIJXI9lh7eu1EOxNpyhS3qHDykK5yohSvd+GDN4RNMeSN SY797QO27mTCmS3bUajXzwrJ0Rof1xk8jxdN4uRujy0m1zDjj1PrF1HF5jikl6A/8DMo yJQoBU7gG+XmU+HCp2UmVWw9aqpM+VKA/ekn3BePFLY28FELQwX1wL485i2fl3tvLyCf wpJQ== MIME-Version: 1.0 X-Received: by 10.152.6.67 with SMTP id y3mr78442260lay.90.1420238808732; Fri, 02 Jan 2015 14:46:48 -0800 (PST) Sender: crodr001@gmail.com Received: by 10.112.141.5 with HTTP; Fri, 2 Jan 2015 14:46:48 -0800 (PST) In-Reply-To: References: <201501022120.t02LK3up054153@svn.freebsd.org> Date: Fri, 2 Jan 2015 14:46:48 -0800 X-Google-Sender-Auth: jCPW-MSRRakhoMHDjBTjE9je5bg Message-ID: Subject: Re: svn commit: r276577 - in head: contrib/file contrib/file/doc contrib/file/magic contrib/file/magic/Magdir contrib/file/python contrib/file/src contrib/file/tests lib/libmagic From: Craig Rodrigues To: Ed Maste Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.18-1 Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 22:46:51 -0000 On Fri, Jan 2, 2015 at 2:41 PM, Ed Maste wrote: > > Good point. Perhaps we should add a note in the Committer's Guide > Subversion Primer as well. I'll review it and see if there are other > things we may want to comment on. > https://www.freebsd.org/doc/en/articles/committers-guide/commit-log-message.html mentions "Relnotes:" briefly. However, it is too brief. The example on that page is too brief, and does not give the new committer a good idea as to when to set "Relnotes:". -- Craig From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 22:49:08 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 39354825; Fri, 2 Jan 2015 22:49:08 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2428B26C9; Fri, 2 Jan 2015 22:49:08 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02Mn87N003584; Fri, 2 Jan 2015 22:49:08 GMT (envelope-from jilles@FreeBSD.org) Received: (from jilles@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02Mn6VN003573; Fri, 2 Jan 2015 22:49:06 GMT (envelope-from jilles@FreeBSD.org) Message-Id: <201501022249.t02Mn6VN003573@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: jilles set sender to jilles@FreeBSD.org using -f From: Jilles Tjoelker Date: Fri, 2 Jan 2015 22:49:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276590 - in head: contrib/netbsd-tests/lib/libc/c063 lib/libc/tests/c063 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 22:49:08 -0000 Author: jilles Date: Fri Jan 2 22:49:05 2015 New Revision: 276590 URL: https://svnweb.freebsd.org/changeset/base/276590 Log: Link lib/libc/c063 tests to the build. Some files lack required #include . The #ifdef is per ngie's request; the includes are clearly necessary for struct stat. The faccessat test fails because it tries to use AT_SYMLINK_NOFOLLOW with faccessat(), which is not specified by POSIX.1-2008. Differential Revision: https://reviews.freebsd.org/D1411 Reviewed by: ngie Modified: head/contrib/netbsd-tests/lib/libc/c063/t_faccessat.c head/contrib/netbsd-tests/lib/libc/c063/t_fchmodat.c head/contrib/netbsd-tests/lib/libc/c063/t_fchownat.c head/contrib/netbsd-tests/lib/libc/c063/t_fstatat.c head/lib/libc/tests/c063/Makefile Modified: head/contrib/netbsd-tests/lib/libc/c063/t_faccessat.c ============================================================================== --- head/contrib/netbsd-tests/lib/libc/c063/t_faccessat.c Fri Jan 2 22:45:55 2015 (r276589) +++ head/contrib/netbsd-tests/lib/libc/c063/t_faccessat.c Fri Jan 2 22:49:05 2015 (r276590) @@ -165,6 +165,9 @@ ATF_TC_BODY(faccessat_fdlink, tc) ATF_REQUIRE(faccessat(dfd, BASELINK, F_OK, 0) == -1); ATF_REQUIRE(errno == ENOENT); +#ifdef __FreeBSD__ + atf_tc_expect_fail("Depends on non-standard behavior not mentioned in POSIX.1-2008"); +#endif ATF_REQUIRE(faccessat(dfd, BASELINK, F_OK, AT_SYMLINK_NOFOLLOW) == 0); ATF_REQUIRE(close(dfd) == 0); Modified: head/contrib/netbsd-tests/lib/libc/c063/t_fchmodat.c ============================================================================== --- head/contrib/netbsd-tests/lib/libc/c063/t_fchmodat.c Fri Jan 2 22:45:55 2015 (r276589) +++ head/contrib/netbsd-tests/lib/libc/c063/t_fchmodat.c Fri Jan 2 22:49:05 2015 (r276590) @@ -40,6 +40,9 @@ __RCSID("$NetBSD: t_fchmodat.c,v 1.2 201 #include #include #include +#ifdef __FreeBSD__ +#include +#endif #define DIR "dir" #define FILE "dir/fchmodat" Modified: head/contrib/netbsd-tests/lib/libc/c063/t_fchownat.c ============================================================================== --- head/contrib/netbsd-tests/lib/libc/c063/t_fchownat.c Fri Jan 2 22:45:55 2015 (r276589) +++ head/contrib/netbsd-tests/lib/libc/c063/t_fchownat.c Fri Jan 2 22:49:05 2015 (r276590) @@ -41,6 +41,9 @@ __RCSID("$NetBSD: t_fchownat.c,v 1.3 201 #include #include #include +#ifdef __FreeBSD__ +#include +#endif #define DIR "dir" #define FILE "dir/fchownat" Modified: head/contrib/netbsd-tests/lib/libc/c063/t_fstatat.c ============================================================================== --- head/contrib/netbsd-tests/lib/libc/c063/t_fstatat.c Fri Jan 2 22:45:55 2015 (r276589) +++ head/contrib/netbsd-tests/lib/libc/c063/t_fstatat.c Fri Jan 2 22:49:05 2015 (r276590) @@ -40,6 +40,9 @@ __RCSID("$NetBSD: t_fstatat.c,v 1.2 2013 #include #include #include +#ifdef __FreeBSD__ +#include +#endif #define DIR "dir" #define FILE "dir/fstatat" Modified: head/lib/libc/tests/c063/Makefile ============================================================================== --- head/lib/libc/tests/c063/Makefile Fri Jan 2 22:45:55 2015 (r276589) +++ head/lib/libc/tests/c063/Makefile Fri Jan 2 22:49:05 2015 (r276590) @@ -4,21 +4,23 @@ TESTSDIR= ${TESTSBASE}/lib/libc/c063 #TODO: t_o_search, t_utimensat -NETBSD_ATF_TESTS_C= t_faccessat -NETBSD_ATF_TESTS_C+= t_fchmodat -NETBSD_ATF_TESTS_C+= t_fchownat -NETBSD_ATF_TESTS_C+= t_fexecve -NETBSD_ATF_TESTS_C+= t_fstatat -NETBSD_ATF_TESTS_C+= t_linkat -NETBSD_ATF_TESTS_C+= t_mkdirat -NETBSD_ATF_TESTS_C+= t_mkfifoat -NETBSD_ATF_TESTS_C+= t_mknodat -NETBSD_ATF_TESTS_C+= t_openat -NETBSD_ATF_TESTS_C+= t_readlinkat -NETBSD_ATF_TESTS_C+= t_renameat -NETBSD_ATF_TESTS_C+= t_symlinkat -NETBSD_ATF_TESTS_C+= t_unlinkat +NETBSD_ATF_TESTS_C= faccessat +NETBSD_ATF_TESTS_C+= fchmodat +NETBSD_ATF_TESTS_C+= fchownat +NETBSD_ATF_TESTS_C+= fexecve +NETBSD_ATF_TESTS_C+= fstatat +NETBSD_ATF_TESTS_C+= linkat +NETBSD_ATF_TESTS_C+= mkdirat +NETBSD_ATF_TESTS_C+= mkfifoat +NETBSD_ATF_TESTS_C+= mknodat +NETBSD_ATF_TESTS_C+= openat +NETBSD_ATF_TESTS_C+= readlinkat +NETBSD_ATF_TESTS_C+= renameat +NETBSD_ATF_TESTS_C+= symlinkat +NETBSD_ATF_TESTS_C+= unlinkat CFLAGS+= -D_INCOMPLETE_XOPEN_C063 +.include "../Makefile.netbsd-tests" + .include From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 22:55:31 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C61E1AF5; Fri, 2 Jan 2015 22:55:31 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B20801652; Fri, 2 Jan 2015 22:55:31 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02MtVtY007911; Fri, 2 Jan 2015 22:55:31 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02MtVnb007910; Fri, 2 Jan 2015 22:55:31 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201501022255.t02MtVnb007910@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Garrett Cooper Date: Fri, 2 Jan 2015 22:55:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276592 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 22:55:31 -0000 Author: ngie Date: Fri Jan 2 22:55:30 2015 New Revision: 276592 URL: https://svnweb.freebsd.org/changeset/base/276592 Log: Remove MK_INFO guards in bsd.info.mk per r276556 As a side-effect now info pages will always be built/installed if MK_INFO == yes, whereas before their presence was conditional based on the value of MK_INFO This .mk file might be removed in the future, pending discussion on -arch. For now unbreak its use outside of src (with the only use in ports according to bapt being devel/cvs*) X-MFC with: r276551, r276556 Reviewed by: bapt Differential Revision: D1413 Modified: head/share/mk/bsd.info.mk Modified: head/share/mk/bsd.info.mk ============================================================================== --- head/share/mk/bsd.info.mk Fri Jan 2 22:53:03 2015 (r276591) +++ head/share/mk/bsd.info.mk Fri Jan 2 22:55:30 2015 (r276592) @@ -121,7 +121,6 @@ DVIPS2ASCII?= dvips2ascii IFILENS+= ${INFO:S/$/.${_f}/} .endfor -.if ${MK_INFO} != "no" CLEANFILES+= ${IFILENS} .if !defined(NO_INFOCOMPRESS) CLEANFILES+= ${IFILENS:S/$/${ICOMPRESS_EXT}/} @@ -131,9 +130,6 @@ all: ${IFILES} IFILES= ${IFILENS} all: ${IFILES} .endif -.else -all: -.endif .for x in ${IFILENS} ${x:S/$/${ICOMPRESS_EXT}/}: ${x} @@ -177,7 +173,7 @@ CLEANFILES+= ${INFO:S/$/-la.texi/} CLEANFILES+= ${INFO:S/$/.info.*.html/} ${INFO:S/$/.info/} .endif -.if ${MK_INFO} != "no" && defined(INFO) +.if defined(INFO) install: ${INSTALLINFODIRS} .if !empty(IFILES:N*.html) ${INSTALL} -o ${INFOOWN} -g ${INFOGRP} -m ${INFOMODE} \ From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 23:10:29 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5598AD2E; Fri, 2 Jan 2015 23:10:29 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4108C1A0E; Fri, 2 Jan 2015 23:10:29 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02NATRn013703; Fri, 2 Jan 2015 23:10:29 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02NATjU013702; Fri, 2 Jan 2015 23:10:29 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <201501022310.t02NATjU013702@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Fri, 2 Jan 2015 23:10:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276593 - head/release/doc/en_US.ISO8859-1/relnotes X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 23:10:29 -0000 Author: delphij Date: Fri Jan 2 23:10:28 2015 New Revision: 276593 URL: https://svnweb.freebsd.org/changeset/base/276593 Log: Document file update. Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml ============================================================================== --- head/release/doc/en_US.ISO8859-1/relnotes/article.xml Fri Jan 2 22:55:30 2015 (r276592) +++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml Fri Jan 2 23:10:28 2015 (r276593) @@ -415,6 +415,9 @@ OpenSSL has been updated to version 1.0.1h. + + file has been + updated to version 5.22. From owner-svn-src-head@FreeBSD.ORG Fri Jan 2 23:46:31 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 000F46B7; Fri, 2 Jan 2015 23:46:30 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D497E1F40; Fri, 2 Jan 2015 23:46:30 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t02NkUfR032795; Fri, 2 Jan 2015 23:46:30 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t02NkRgd032775; Fri, 2 Jan 2015 23:46:27 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201501022346.t02NkRgd032775@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Fri, 2 Jan 2015 23:46:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276596 - in head/sys/arm: arm include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Jan 2015 23:46:31 -0000 Author: ian Date: Fri Jan 2 23:46:26 2015 New Revision: 276596 URL: https://svnweb.freebsd.org/changeset/base/276596 Log: Fix alignment directives in arm asm code after clang 3.5 import. The ancient gas we've been using interprets .align 0 as align to the minimum required alignment for the current section. Clang's integrated assembler interprets it as align to a byte boundary. Fortunately both assemblers interpret a non-zero value as align to 2^N so just make sure we have appropriate non-zero values everywhere. Modified: head/sys/arm/arm/bcopyinout.S head/sys/arm/arm/bcopyinout_xscale.S head/sys/arm/arm/copystr.S head/sys/arm/arm/cpufunc_asm.S head/sys/arm/arm/cpufunc_asm_arm10.S head/sys/arm/arm/cpufunc_asm_arm9.S head/sys/arm/arm/cpufunc_asm_armv5.S head/sys/arm/arm/exception.S head/sys/arm/arm/fusu.S head/sys/arm/arm/locore-v4.S head/sys/arm/arm/locore-v6.S head/sys/arm/include/asm.h head/sys/arm/include/profile.h Modified: head/sys/arm/arm/bcopyinout.S ============================================================================== --- head/sys/arm/arm/bcopyinout.S Fri Jan 2 23:27:16 2015 (r276595) +++ head/sys/arm/arm/bcopyinout.S Fri Jan 2 23:46:26 2015 (r276596) @@ -52,7 +52,7 @@ __FBSDID("$FreeBSD$"); #else .text - .align 0 + .align 2 #ifdef _ARM_ARCH_6 #define GET_PCB(tmp) \ Modified: head/sys/arm/arm/bcopyinout_xscale.S ============================================================================== --- head/sys/arm/arm/bcopyinout_xscale.S Fri Jan 2 23:27:16 2015 (r276595) +++ head/sys/arm/arm/bcopyinout_xscale.S Fri Jan 2 23:46:26 2015 (r276596) @@ -40,7 +40,7 @@ __FBSDID("$FreeBSD$"); .syntax unified .text - .align 0 + .align 2 #ifdef _ARM_ARCH_6 #define GET_PCB(tmp) \ Modified: head/sys/arm/arm/copystr.S ============================================================================== --- head/sys/arm/arm/copystr.S Fri Jan 2 23:27:16 2015 (r276595) +++ head/sys/arm/arm/copystr.S Fri Jan 2 23:46:26 2015 (r276596) @@ -47,7 +47,7 @@ __FBSDID("$FreeBSD$"); #include .text - .align 0 + .align 2 #ifdef _ARM_ARCH_6 #define GET_PCB(tmp) \ @@ -210,5 +210,5 @@ END(copyoutstr) Lcopystrpcbfaulttext: .asciz "No valid PCB during copyinoutstr() addr1=%08x addr2=%08x\n" - .align 0 + .align 2 #endif Modified: head/sys/arm/arm/cpufunc_asm.S ============================================================================== --- head/sys/arm/arm/cpufunc_asm.S Fri Jan 2 23:27:16 2015 (r276595) +++ head/sys/arm/arm/cpufunc_asm.S Fri Jan 2 23:46:26 2015 (r276596) @@ -46,7 +46,7 @@ __FBSDID("$FreeBSD$"); .text - .align 0 + .align 2 ENTRY(cpufunc_nullop) RET @@ -138,7 +138,7 @@ ENTRY(cpufunc_control) RET .Lglou: .asciz "plop %p\n" - .align 0 + .align 2 END(cpufunc_control) /* Modified: head/sys/arm/arm/cpufunc_asm_arm10.S ============================================================================== --- head/sys/arm/arm/cpufunc_asm_arm10.S Fri Jan 2 23:27:16 2015 (r276595) +++ head/sys/arm/arm/cpufunc_asm_arm10.S Fri Jan 2 23:46:26 2015 (r276596) @@ -265,7 +265,7 @@ END(arm10_context_switch) * four variables is assumed in the code above. Hence the reason for * declaring them in the assembler file. */ - .align 0 + .align 2 C_OBJECT(arm10_dcache_sets_max) .space 4 C_OBJECT(arm10_dcache_index_max) Modified: head/sys/arm/arm/cpufunc_asm_arm9.S ============================================================================== --- head/sys/arm/arm/cpufunc_asm_arm9.S Fri Jan 2 23:27:16 2015 (r276595) +++ head/sys/arm/arm/cpufunc_asm_arm9.S Fri Jan 2 23:46:26 2015 (r276596) @@ -252,7 +252,7 @@ END(arm9_context_switch) * four variables is assumed in the code above. Hence the reason for * declaring them in the assembler file. */ - .align 0 + .align 2 C_OBJECT(arm9_dcache_sets_max) .space 4 C_OBJECT(arm9_dcache_index_max) Modified: head/sys/arm/arm/cpufunc_asm_armv5.S ============================================================================== --- head/sys/arm/arm/cpufunc_asm_armv5.S Fri Jan 2 23:27:16 2015 (r276595) +++ head/sys/arm/arm/cpufunc_asm_armv5.S Fri Jan 2 23:46:26 2015 (r276596) @@ -236,7 +236,7 @@ END(armv5_idcache_wbinv_all) * four variables is assumed in the code above. Hence the reason for * declaring them in the assembler file. */ - .align 0 + .align 2 C_OBJECT(armv5_dcache_sets_max) .space 4 C_OBJECT(armv5_dcache_index_max) Modified: head/sys/arm/arm/exception.S ============================================================================== --- head/sys/arm/arm/exception.S Fri Jan 2 23:27:16 2015 (r276595) +++ head/sys/arm/arm/exception.S Fri Jan 2 23:46:26 2015 (r276596) @@ -54,7 +54,7 @@ __FBSDID("$FreeBSD$"); .text - .align 0 + .align 2 /* * ASM macros for pushing and pulling trapframes from the stack Modified: head/sys/arm/arm/fusu.S ============================================================================== --- head/sys/arm/arm/fusu.S Fri Jan 2 23:27:16 2015 (r276595) +++ head/sys/arm/arm/fusu.S Fri Jan 2 23:46:26 2015 (r276596) @@ -204,7 +204,7 @@ Lblock_userspace_access: .word _C_LABEL(block_userspace_access) .data - .align 0 + .align 2 .global _C_LABEL(block_userspace_access) _C_LABEL(block_userspace_access): .word 0 Modified: head/sys/arm/arm/locore-v4.S ============================================================================== --- head/sys/arm/arm/locore-v4.S Fri Jan 2 23:27:16 2015 (r276595) +++ head/sys/arm/arm/locore-v4.S Fri Jan 2 23:46:26 2015 (r276596) @@ -74,7 +74,7 @@ __FBSDID("$FreeBSD$"); * the running kernel. */ .text - .align 0 + .align 2 #ifdef PHYSADDR .globl kernbase .set kernbase,KERNBASE @@ -373,7 +373,7 @@ Lend: .Lmainreturned: .asciz "main() returned" - .align 0 + .align 2 .bss svcstk: @@ -389,7 +389,7 @@ pagetable: .space L1_TABLE_SIZE .text - .align 0 + .align 2 .Lcpufuncs: .word _C_LABEL(cpufuncs) @@ -476,7 +476,7 @@ mpvirt_done: .Lmpreturned: .asciz "init_secondary() returned" - .align 0 + .align 2 END(mpentry) #endif @@ -584,7 +584,7 @@ END(sigcode) .word SYS_sigreturn .word SYS_exit - .align 0 + .align 2 .global _C_LABEL(esigcode) _C_LABEL(esigcode): Modified: head/sys/arm/arm/locore-v6.S ============================================================================== --- head/sys/arm/arm/locore-v6.S Fri Jan 2 23:27:16 2015 (r276595) +++ head/sys/arm/arm/locore-v6.S Fri Jan 2 23:46:26 2015 (r276596) @@ -49,7 +49,7 @@ __FBSDID("$FreeBSD$"); #define INIT_ARM_STACK_SIZE 2048 .text - .align 0 + .align 2 /* * On entry for FreeBSD boot ABI: @@ -373,7 +373,7 @@ VA_TO_PA_POINTER(Lpagetable, boot_pt1) .Lmainreturned: .asciz "main() returned" - .align 0 + .align 2 .bss svcstk: @@ -390,7 +390,7 @@ boot_pt1: .space L1_TABLE_SIZE .text - .align 0 + .align 2 .Lcpufuncs: .word _C_LABEL(cpufuncs) @@ -443,11 +443,11 @@ ASENTRY_NP(mpentry) adr r0, .Lmpreturned b _C_LABEL(panic) /* NOTREACHED */ +END(mpentry) .Lmpreturned: .asciz "init_secondary() returned" - .align 0 -END(mpentry) + .align 2 #endif ENTRY_NP(cpu_halt) @@ -525,7 +525,7 @@ END(sigcode) .word SYS_sigreturn .word SYS_exit - .align 0 + .align 2 .global _C_LABEL(esigcode) _C_LABEL(esigcode): Modified: head/sys/arm/include/asm.h ============================================================================== --- head/sys/arm/include/asm.h Fri Jan 2 23:27:16 2015 (r276595) +++ head/sys/arm/include/asm.h Fri Jan 2 23:46:26 2015 (r276596) @@ -46,7 +46,7 @@ #define _ASM_LABEL(x) x #ifndef _ALIGN_TEXT -# define _ALIGN_TEXT .align 0 +# define _ALIGN_TEXT .align 2 #endif #if defined(__ARM_EABI__) && !defined(_STANDALONE) @@ -129,11 +129,11 @@ pclabel: add got, got, pc #ifdef __thumb__ #define GOT_INITSYM(gotsym,pclabel) \ - .align 0; \ + .align 2; \ gotsym: .word _C_LABEL(_GLOBAL_OFFSET_TABLE_) - (pclabel+4) #else #define GOT_INITSYM(gotsym,pclabel) \ - .align 0; \ + .align 2; \ gotsym: .word _C_LABEL(_GLOBAL_OFFSET_TABLE_) - (pclabel+8) #endif Modified: head/sys/arm/include/profile.h ============================================================================== --- head/sys/arm/include/profile.h Fri Jan 2 23:27:16 2015 (r276595) +++ head/sys/arm/include/profile.h Fri Jan 2 23:46:26 2015 (r276596) @@ -60,7 +60,7 @@ typedef u_long fptrdiff_t; #define MCOUNT \ __asm__(".text"); \ - __asm__(".align 0"); \ + __asm__(".align 2"); \ __asm__(".type __mcount ,%function"); \ __asm__(".global __mcount"); \ __asm__("__mcount:"); \ From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 00:09:23 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1F6A5B0B; Sat, 3 Jan 2015 00:09:23 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0AEC720B3; Sat, 3 Jan 2015 00:09:23 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t0309MqI043520; Sat, 3 Jan 2015 00:09:22 GMT (envelope-from np@FreeBSD.org) Received: (from np@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t0309MQk043517; Sat, 3 Jan 2015 00:09:22 GMT (envelope-from np@FreeBSD.org) Message-Id: <201501030009.t0309MQk043517@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: np set sender to np@FreeBSD.org using -f From: Navdeep Parhar Date: Sat, 3 Jan 2015 00:09:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276597 - in head/sys/dev/cxgbe: . tom X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 00:09:23 -0000 Author: np Date: Sat Jan 3 00:09:21 2015 New Revision: 276597 URL: https://svnweb.freebsd.org/changeset/base/276597 Log: cxgbe/tom: do not engage the TOE's payload chopper for payload < 2 MSS or for 10Gbps ports. MFC after: 2 weeks Modified: head/sys/dev/cxgbe/offload.h head/sys/dev/cxgbe/t4_main.c head/sys/dev/cxgbe/tom/t4_cpl_io.c Modified: head/sys/dev/cxgbe/offload.h ============================================================================== --- head/sys/dev/cxgbe/offload.h Fri Jan 2 23:46:26 2015 (r276596) +++ head/sys/dev/cxgbe/offload.h Sat Jan 3 00:09:21 2015 (r276597) @@ -147,6 +147,7 @@ struct tom_tunables { int indsz; int ddp_thres; int rx_coalesce; + int tx_align; }; int t4_register_uld(struct uld_info *); Modified: head/sys/dev/cxgbe/t4_main.c ============================================================================== --- head/sys/dev/cxgbe/t4_main.c Fri Jan 2 23:46:26 2015 (r276596) +++ head/sys/dev/cxgbe/t4_main.c Sat Jan 3 00:09:21 2015 (r276597) @@ -4801,6 +4801,10 @@ t4_sysctls(struct adapter *sc) sc->tt.rx_coalesce = 1; SYSCTL_ADD_INT(ctx, children, OID_AUTO, "rx_coalesce", CTLFLAG_RW, &sc->tt.rx_coalesce, 0, "receive coalescing"); + + sc->tt.tx_align = 1; + SYSCTL_ADD_INT(ctx, children, OID_AUTO, "tx_align", + CTLFLAG_RW, &sc->tt.tx_align, 0, "chop and align payload"); } #endif Modified: head/sys/dev/cxgbe/tom/t4_cpl_io.c ============================================================================== --- head/sys/dev/cxgbe/tom/t4_cpl_io.c Fri Jan 2 23:46:26 2015 (r276596) +++ head/sys/dev/cxgbe/tom/t4_cpl_io.c Sat Jan 3 00:09:21 2015 (r276597) @@ -491,7 +491,7 @@ max_dsgl_nsegs(int tx_credits) static inline void write_tx_wr(void *dst, struct toepcb *toep, unsigned int immdlen, - unsigned int plen, uint8_t credits, int shove, int ulp_mode) + unsigned int plen, uint8_t credits, int shove, int ulp_mode, int txalign) { struct fw_ofld_tx_data_wr *txwr = dst; unsigned int wr_ulp_mode; @@ -513,6 +513,19 @@ write_tx_wr(void *dst, struct toepcb *to V_FW_OFLD_TX_DATA_WR_URGENT(0) | /* XXX */ V_FW_OFLD_TX_DATA_WR_SHOVE(shove)); txwr->plen = htobe32(plen); + + if (txalign > 0) { + struct tcpcb *tp = intotcpcb(toep->inp); + + if (plen < 2 * tp->t_maxseg || is_10G_port(toep->port)) + txwr->lsodisable_to_proxy |= + htobe32(F_FW_OFLD_TX_DATA_WR_LSODISABLE); + else + txwr->lsodisable_to_proxy |= + htobe32(F_FW_OFLD_TX_DATA_WR_ALIGNPLD | + (tp->t_flags & TF_NODELAY ? 0 : + F_FW_OFLD_TX_DATA_WR_ALIGNPLDSHOVE)); + } } /* @@ -716,7 +729,8 @@ t4_push_frames(struct adapter *sc, struc } txwr = wrtod(wr); credits = howmany(wr->wr_len, 16); - write_tx_wr(txwr, toep, plen, plen, credits, shove, 0); + write_tx_wr(txwr, toep, plen, plen, credits, shove, 0, + sc->tt.tx_align); m_copydata(sndptr, 0, plen, (void *)(txwr + 1)); nsegs = 0; } else { @@ -734,7 +748,8 @@ t4_push_frames(struct adapter *sc, struc } txwr = wrtod(wr); credits = howmany(wr_len, 16); - write_tx_wr(txwr, toep, 0, plen, credits, shove, 0); + write_tx_wr(txwr, toep, 0, plen, credits, shove, 0, + sc->tt.tx_align); write_tx_sgl(txwr + 1, sndptr, m, nsegs, max_nsegs_1mbuf); if (wr_len & 0xf) { @@ -890,7 +905,7 @@ t4_ulp_push_frames(struct adapter *sc, s txwr = wrtod(wr); credits = howmany(wr->wr_len, 16); write_tx_wr(txwr, toep, plen, ulp_len, credits, shove, - ulp_mode); + ulp_mode, 0); m_copydata(sndptr, 0, plen, (void *)(txwr + 1)); } else { int wr_len; @@ -907,7 +922,7 @@ t4_ulp_push_frames(struct adapter *sc, s txwr = wrtod(wr); credits = howmany(wr_len, 16); write_tx_wr(txwr, toep, 0, ulp_len, credits, shove, - ulp_mode); + ulp_mode, 0); write_tx_sgl(txwr + 1, sndptr, m, nsegs, max_nsegs_1mbuf); if (wr_len & 0xf) { From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 00:26:22 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B1BF3E19; Sat, 3 Jan 2015 00:26:22 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9BFC82579; Sat, 3 Jan 2015 00:26:22 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t030QMVL052469; Sat, 3 Jan 2015 00:26:22 GMT (envelope-from np@FreeBSD.org) Received: (from np@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t030QM6U052465; Sat, 3 Jan 2015 00:26:22 GMT (envelope-from np@FreeBSD.org) Message-Id: <201501030026.t030QM6U052465@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: np set sender to np@FreeBSD.org using -f From: Navdeep Parhar Date: Sat, 3 Jan 2015 00:26:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276598 - head/tools/tools/cxgbetool X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 00:26:22 -0000 Author: np Date: Sat Jan 3 00:26:21 2015 New Revision: 276598 URL: https://svnweb.freebsd.org/changeset/base/276598 Log: Add a manual page for cxgbetool. It is incomplete but definitely better than nothing. MFC after: 1 month Added: head/tools/tools/cxgbetool/cxgbetool.8 (contents, props changed) Modified: head/tools/tools/cxgbetool/Makefile Modified: head/tools/tools/cxgbetool/Makefile ============================================================================== --- head/tools/tools/cxgbetool/Makefile Sat Jan 3 00:09:21 2015 (r276597) +++ head/tools/tools/cxgbetool/Makefile Sat Jan 3 00:26:21 2015 (r276598) @@ -2,7 +2,7 @@ PROG= cxgbetool SRCS= cxgbetool.c -MAN= +MAN= cxgbetool.8 CFLAGS+= -I${.CURDIR}/../../../sys/dev/cxgbe -I${.CURDIR}/../../../sys -I. BINDIR?= /usr/sbin Added: head/tools/tools/cxgbetool/cxgbetool.8 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/tools/tools/cxgbetool/cxgbetool.8 Sat Jan 3 00:26:21 2015 (r276598) @@ -0,0 +1,497 @@ +." Copyright (c) 2015, Chelsio Inc +.\" All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions are met: +.\" +.\" 1. Redistributions of source code must retain the above copyright notice, +.\" this list of conditions and the following disclaimer. +.\" +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" +.\" 3. Neither the name of the Chelsio Inc nor the names of its +.\" contributors may be used to endorse or promote products derived from +.\" this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +.\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE +.\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +.\" POSSIBILITY OF SUCH DAMAGE. +.\" +.\" * Other names and brands may be claimed as the property of others. +.\" +.\" $FreeBSD$ +.\" +.Dd February 1, 2013 +.Dt CXGBETOOL 8 +.Os +.Sh NAME +.Nm cxgbetool +.Nd Userspace companion to +.Xr cxgbe 4 +.Sh SYNOPSIS +.Bl -item -compact +.It +.Nm Ar nexus command Op Ar parameter ... +.Pp +.It +.Nm Ar nexus Cm clearstats Ar port_id +.It +.Nm Ar nexus Cm context Bro Cm ingress | egress | fl | cong Brc Ar cntxt_id +.It +.Nm Ar nexus Cm filter mode Op Ar match-criteria ... +.It +.Nm Ar nexus Cm filter Ar idx Bro Ar filter-specification | Cm delete Brc +.It +.Nm Ar nexus Cm filter list +.It +.Nm Ar nexus Cm i2c Ar port_id devaddr addr Op Ar len +.It +.Nm Ar nexus Cm loadfw Ar fw-image.bin +.It +.Nm Ar nexus Cm memdump Ar addr len +.It +.Nm Ar nexus Bro Cm reg | reg64 Brc Ar addr Ns Op Ar =val +.It +.Nm Ar nexus Cm regdump Op Ar register-block ... +.It +.Nm Ar nexus Cm sched-class Ar sub-command Op Ar param Ar value +.It +.Nm Ar nexus Cm sched-queue Ar port Ar queue Ar class +.It +.Nm Ar nexus Cm stdio +.It +.Nm Ar nexus Cm tcb Ar tid +.El +.Sh DESCRIPTION +.Nm +provides command-line access to features and debug facilities exported by +.Xr cxgbe 4 +via private ioctls. +The target nexus device, +.Va t4nex%d +, is always the first argument. +(The parent nexus for an Ethernet port +.Va cxgbe%d +is listed in +.Va dev.cxgbe.%d.%parent +in the +.Xr sysctl 8 +MIB). +The rest consists of a command and any parameters required by that command. +.Ss Commands +.Bl -ohang +.It Cm clearstats Ar port_id +Clear all transmit, receive, and error statistics of all queues associated +with a port. +The total number of ports attached to a nexus is listed in +.Va dev.t4nex.%d.nports +and the 0 based +.Ar port_id +identifies a port within this range. +.Pp +.Bl -item -compact +.It +.Cm context ingress Ar ingress_cntxt_id +.It +.Cm context cong Ar ingress_cntxt_id +.It +.Cm context egress Ar egress_cntxt_id +.It +.Cm context fl Ar flm_cntxt_id +.El +Display hardware context for an ingress queue, congestion manager, egress +queue, or freelist manager. +.Bl -tag -width ingress_cntxt_id -compact +.It Ar ingress_cntxt_id +context id of an ingress queue -- the value listed in one of +.Va dev.t4nex.%d.fwq.cntxt_id Ns , +.Va dev.cxgbe.%d.rxq.%d.cntxt_id Ns , +or +.Va dev.cxgbe.%d.ofld_rxq.%d.cntxt_id Ns . +.It Ar egress_cntxt_id +context id of an egress queue -- the value listed in one of +.Va dev.t4nex.%d.mgmtq.cntxt_id Ns , +.Va dev.cxgbe.%d.txq.%d.cntxt_id Ns , +.Va dev.cxgbe.%d.ctrlq.%d.cntxt_id Ns , +.Va dev.cxgbe.%d.ofld_txq.%d.cntxt_id Ns , +.Va dev.cxgbe.%d.rxq.%d.fl.cntxt_id Ns , +or +.Va dev.cxgbe.%d.ofld_rxq.%d.fl.cntxt_id Ns . +Note that freelists are egress queues too. +.It Ar flm_cntxt_id +context id of a freelist manager. The FLM context id is displayed in the +egress context dump of a freelist as FLMcontextID. +.El +.It Cm filter mode Op Ar match-criteria ... +Display or set the nexus's filter mode. +.Ar match-criteria +is a whitespace separated list of criteria from the table below. +Each criteria has an associated budget which is also listed in the table. +The total budget allowed is 36 and attempts to set a filter mode that +exceeds this will be rejected. +Every filter must conform to the filter mode -- multiple match criteria +per filter are allowed but only from among those in the current setting +of the filter mode. +The filter mode can only be changed when there are no existing filters. +Its default value is +.Cm ipv4 ipv6 sip dip sport dport matchtype proto vlan iport fcoe +.Pp +(Note that +.Ar mask +defaults to all 1s when not provided explicitly. +Also note that many of the items being matched are discrete numeric +values rather than bit fields and should be masked with caution.) +.TS +center expand; +cb cb cb cbw(40m) +cb c l l. +Criteria Budget Usage Matches if ... +_ +ipv4 0 T{ +.Cm type ipv4 +T} T{ +incoming packet is an IPv4 datagram. +T} +_ +ipv6 0 T{ +.Cm type ipv6 +T} T{ +incoming packet is an IPv6 datagram. +T} +_ +sip 0 T{ +.Cm sip Ar addr Ns Op / Ns Ar mask +T} T{ +bitwise and of the source address in an incoming IP datagram with +.Ar mask +equals +.Ar addr Ns . +.Ar addr +can be an IPv4 or IPv6 address. +T} +_ +dip 0 T{ +.Cm dip Ar addr Ns Op / Ns Ar mask +T} T{ +bitwise and of the destination address in an incoming IP datagram with +.Ar mask +equals +.Ar addr Ns . +.Ar addr +can be an IPv4 or IPv6 address. +T} +_ +sport 0 T{ +.Cm sport Ar port Ns Op : Ns Ar mask +T} T{ +bitwise and of the source port in an incoming TCP or UDP datagram with +.Ar mask +equals +.Ar port Ns . +T} +_ +dport 0 T{ +.Cm dport Ar port Ns Op : Ns Ar mask +T} T{ +bitwise and of the destination port in an incoming TCP or UDP datagram with +.Ar mask +equals +.Ar port Ns . +T} +_ +fcoe 1 T{ +.Cm fcoe Brq 0 | 1 +T} T{ +incoming frame is Fibre Channel over Ethernet(1) or not(0). +T} +_ +iport 3 T{ +.Cm iport Ar val Ns Op : Ns Ar mask +T} T{ +bitwise and of the ingress port with +.Ar mask +equals +.Ar val Ns . +The ingress port is a 3 bit number that identifies the port on which a +frame arrived. +Physical ports are numbered 0-3 and 4-7 are internal loopback paths +within the chip. +Note that ingress port is not a bit field so it is not always possible +to match an arbitrary subset of ingress ports with a single filter rule. +T} +_ +ovlan 17 T{ +.Cm ovlan Ar tag Ns Op : Ns Ar mask +T} T{ +bitwise and of the 16-bit outer VLAN tag of an incoming frame with +.Ar mask +equals +.Ar tag Ns . +T} +_ +vlan 17 T{ +.Cm vlan Ar tag Ns Op : Ns Ar mask +T} T{ +bitwise and of the 16-bit VLAN tag of an incoming QinQ frame with +.Ar mask +equals +.Ar tag Ns . +The inner VLAN tag is used if the incoming frame is QinQ. +T} +_ +tos 8 T{ +.Cm tos Ar val Ns Op : Ns Ar mask +T} T{ +bitwise and of the 8-bit IP Type of Service/IPv6 Traffic Class in an +incoming packet with +.Ar mask +equals +.Ar val Ns . +T} +_ +proto 8 T{ +.Cm proto Ar ipproto Ns Op : Ns Ar mask +T} T{ +bitwise and of the 8-bit IP protocol in an incoming packet with +.Ar mask +equals +.Ar ipproto Ns . +T} +_ +ethtype 16 T{ +.Cm ethtype Ar type Ns Op : Ns Ar mask +T} T{ +bitwise and of the 16-bit Ethernet type field of an incoming frame with +.Ar mask +equals +.Ar type Ns . +T} +_ +macidx 9 T{ +.Cm macidx Ar idx Ns Op : Ns Ar mask +T} T{ +bitwise and of the MAC Address Match Index of an incoming frame with +.Ar mask +equals +.Ar idx Ns . +The MAC Address Match Index refers to an entry in the MPS TCAM or in the +MPS hash. See +.Cm matchtype +for more information. +T} +_ +matchtype 3 T{ +.Cm matchtype Ar type Ns Op : Ns Ar mask +T} T{ +bitwise and of the Match Type of an incoming frame with +.Ar mask +equals +.Ar idx Ns . +Match Type is one of the following: +.Bl -tag -width "n" -compact +.It 0 +destination MAC in incoming frame is a unicast L2 address that is +programmed in the MPS TCAM. +.Cm macidx +can be used to match the index (and thus the MAC address) of the match +in the TCAM. +.It 1 +destination MAC in incoming frame is a unicast L2 address that "hit" a +hash entry in the MPS hash table. +.Cm macidx +can be used to match the index of the entry in the MPS hash table. +.It 2 +destination MAC in incoming frame is a multicast L2 address that is +programmed in the MPS TCAM. +.Cm macidx +can be used to match the index (and thus the MAC address) of the match +in the TCAM. +.It 3 +destination MAC in incoming frame is a multicast L2 address that "hit" +an entry in the MPS hash table. +.It 4 +interface on which incoming frame was received is in promiscuous mode +and the destination MAC in the frame is not a broadcast address, and +does not match in the MPS TCAM or the MPS hash either. (The frame would +have been discarded if the interface wasn't in promiscuous mode.) +.It 5 +interface on which incoming frame was received is in promiscuous mode +and the destination MAC in the frame is not a broadcast address; it +wasn't looked up in the MPS TCAM or the MPS hash because the chip is +configured to give precedence to promiscuous mode classification. +.It 6 +destination MAC in incoming frame is a broadcast address. +.It 7 +Not documented. Do not use. +.El +T} +_ +frag 1 T{ +.Cm frag Brq 0 | 1 +T} T{ +incoming frame is part of a fragmented IP datagram(1) or not(0). +T} +.TE +.It Cm filter Ar idx Ar filter-specification +Program a filter at the index specified by +.Ar idx Ns . +.Ar filter-specification +consists of one or more matches to try against an incoming frame and an +action to perform when all matches succeed. +.It Cm filter Ar idx Cm delete +Delete filter that is at the given index. +.It Cm filter Cm list +List all filters programmed into the hardware. +.It Cm i2c Ar port_id devaddr addr Op Ar len +.It Cm loadfw Ar fw-image.bin +Install the firmware contained in +.Ar fw-image.bin +to the card. +.It Cm memdump Ar addr len +Display +.Ar len +bytes of data of the card's memory starting at +.Ar addr Ns . +The card's memory map is available in +.Va dev.t4nex.%d.misc.meminfo Ns . +.It Bro Cm reg | reg64 Brc Ar addr Ns Op Ar =val +.It Cm regdump Op Ar register-block ... +Display contents of device registers. One or more +.Ar register-block +can be specified to limit the registers displayed. +The default is to display registers for all blocks. +Registers with read side effects are not read during a +.Cm regdump +operation. +.Ar register-block +can be +.Cm sge pci dbg mc ma edc0 edc1 cim tp ulp_rx ulp_tx pmrx pmtx mps cplsw +.Cm smb i2c mi uart pmu sf pl le ncsi xgmac Ns . +.It Cm sched-class config Op Ar param Ar value +Configure optional feature capabilities for the TX scheduler. +.Bl -ohang -offset indent +.It Sy type Ar scheduler-type +Use packet for the packet scheduler. +.It Sy minmax Ar value +A non-zero value will enable "minmax" mode; a zero value will disable "minmax" mode. +.Pp +NOTE: Many (most) of the parameters and constraints are adapter-specific +- for instance the number of channels and classes which are available +whether various modes are implemented, etc. Consult the adapter documentation for specific information on any limitations. +.El +.It Cm sched-class params Op Ar param Ar value +Configure parameters for a scheduling class. +.Bl -ohang -offset indent +.It Sy type Ar scheduler-type +Use packet for packet scheduler. +.It Sy level Ar scheduler-hierarchy-level +The "level" within the scheduling hierarchy which is being programed: +.Pp +.Bl -tag -width "cl-wrr" -compact -offset indent +.It Sy cl-rl +Class Rate Limiting. +.Pp +.It Sy cl-wrr +Class Weighted Round Robin. +.Pp +.It Sy cl-wrr +Channel Rate Limiting. +.El +.Pp +.It Sy mode Ar scheduler-mode +The mode in which the scheduling class is going to operate: +.Pp +.Bl -tag -width "class" -compact -offset indent +.It Sy class +All of the "flows" bound to the scheduling class will be held to aggregate scheduling constraints. +.Pp +.It Sy flow +Each of the "flows" bound to the scheduling class will be held to the scheduling constraints. +.El +.Pp +E.g. if the scheduling class has a TX bandwidth of 10Mb/s, in +.Cm class +mode, all of the "flows" bound to the class would be limited to an +aggregate bandwidth of 10Mb/s; but in +.Cm flow +mode, each of the "flows" bound to the scheduling class would be limited to 10Mb/s. +.Pp +.It Sy rate-unit Ar scheduler-rate-unit +The units of the scheduler rate constraints: +.Pp +.Bl -tag -width "bits" -compact -offset indent +.It Sy bits +bit rate in Kb/s. +.Pp +.It Sy pkts +packets/s. +.El +.It Sy rate-mode Ar scheduler-rate-mode +The mode of the scheduler rate constraints: +.Pp +.Bl -tag -width "relative" -compact -offset indent +.It Sy relative +percent of port rate. +.Pp +.It Sy absolute +Kb/s. +.El +.Pp +.It Sy channel Ar scheduler-channel-index +The scheduling channel to which the scheduling class will be bound. +.Pp +.It Sy class Ar scheduler-class-index +The scheduling class being programmed. +.Pp +.It Sy min-rate Ar minimum-rate +The minimum guaranteed rate to which a rate-limiting scheduling class hierarchy will have access. +.Pp +.It Sy max-rate Ar maximum-rate +The maximum rate for a rate-limiting scheduling class hierarchy. +.Pp +.It Sy weight Ar round-robin-weight +The weight to be used for a weighted-round-robin scheduling hierarchy. +.It Sy pkt-size Ar average-packet-size +The average packet size will be used to compute scheduler constraints for a rate-limited scheduler class hierarchy. +.Pp +NOTE: Many (most) of the parameters and constraints are adapter-specific - for instance the number of channels and classes which are available, +whether various modes are implemented, etc. Consult the adapter documentation for specific information on any limitations. +.El +.It Cm sched-queue Ar port queue class +Bind the indicated port's NIC TX +.Ar queue +to the specified TX Scheduler +.Ar class. +If the TX +.Ar queue +is +.Cm all, * +or any negative value, the binding will apply to +all of the TX queues associated with the +.Ar interface. +If the class is +.Cm unbind, clear +or any negative value, the TX queue(s) will be unbound from +any current TX Scheduler Class binding. +.It Cm stdio +Switch to interactive mode. +.It Cm tcb Ar tid +Display contents of the hardware TCB (TCP Control Block) for the +connection identfied by +.Ar tid Ns . +.El +.Sh FILES +/sys/dev/cxgbe/t4_ioctl.h +.Sh AUTHORS +This manual page was written by +.An Navdeep Parhar Aq np@FreeBSD.org . From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 00:31:54 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0C7C4FF4; Sat, 3 Jan 2015 00:31:54 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EC1CB26CE; Sat, 3 Jan 2015 00:31:53 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t030Vr2P056650; Sat, 3 Jan 2015 00:31:53 GMT (envelope-from des@FreeBSD.org) Received: (from des@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t030VrF2056649; Sat, 3 Jan 2015 00:31:53 GMT (envelope-from des@FreeBSD.org) Message-Id: <201501030031.t030VrF2056649@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: des set sender to des@FreeBSD.org using -f From: Dag-Erling Smørgrav Date: Sat, 3 Jan 2015 00:31:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276599 - head/contrib/unbound X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 00:31:54 -0000 Author: des Date: Sat Jan 3 00:31:52 2015 New Revision: 276599 URL: https://svnweb.freebsd.org/changeset/base/276599 Log: Recognize the lexer and parser sources. Modified: head/contrib/unbound/freebsd-sources.pl Modified: head/contrib/unbound/freebsd-sources.pl ============================================================================== --- head/contrib/unbound/freebsd-sources.pl Sat Jan 3 00:26:21 2015 (r276598) +++ head/contrib/unbound/freebsd-sources.pl Sat Jan 3 00:31:52 2015 (r276599) @@ -51,7 +51,11 @@ sub get_sources($) { close(MAKE); chomp($objs); $objs =~ s/\.l?o\b/.c/g; - return (split(/\s+/, $objs)); + return map { + /lexer/ && s/c$/l/; + /parser/ && s/c$/y/; + $_; + } split(/\s+/, $objs); } MAIN:{ @@ -70,4 +74,3 @@ MAIN:{ } 1; - From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 01:28:59 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D987C772; Sat, 3 Jan 2015 01:28:59 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id AB4F11E02; Sat, 3 Jan 2015 01:28:59 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t031Sxll080822; Sat, 3 Jan 2015 01:28:59 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t031SxiF080819; Sat, 3 Jan 2015 01:28:59 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201501030128.t031SxiF080819@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Sat, 3 Jan 2015 01:28:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276600 - in head/sys/amd64: amd64 include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 01:29:00 -0000 Author: kib Date: Sat Jan 3 01:28:58 2015 New Revision: 276600 URL: https://svnweb.freebsd.org/changeset/base/276600 Log: For /dev/mem and /dev/kmem accesses, avoid asserting that addresses are within direct map. We want to return error instead of panicing. PR: 194995 Sponsored by: The FreeBSD Foundation Modified: head/sys/amd64/amd64/mem.c head/sys/amd64/include/vmparam.h Modified: head/sys/amd64/amd64/mem.c ============================================================================== --- head/sys/amd64/amd64/mem.c Sat Jan 3 00:31:52 2015 (r276599) +++ head/sys/amd64/amd64/mem.c Sat Jan 3 01:28:58 2015 (r276600) @@ -98,7 +98,7 @@ memrw(struct cdev *dev, struct uio *uio, kmemphys: o = v & PAGE_MASK; c = min(uio->uio_resid, (u_int)(PAGE_SIZE - o)); - vd = PHYS_TO_DMAP(v); + vd = PHYS_TO_DMAP_RAW(v); if (vd < DMAP_MIN_ADDRESS || (vd > DMAP_MIN_ADDRESS + dmaplimit && vd <= DMAP_MAX_ADDRESS) || @@ -112,7 +112,7 @@ kmemphys: v = uio->uio_offset; if (v >= DMAP_MIN_ADDRESS && v < DMAP_MAX_ADDRESS) { - v = DMAP_TO_PHYS(v); + v = DMAP_TO_PHYS_RAW(v); goto kmemphys; } Modified: head/sys/amd64/include/vmparam.h ============================================================================== --- head/sys/amd64/include/vmparam.h Sat Jan 3 00:31:52 2015 (r276599) +++ head/sys/amd64/include/vmparam.h Sat Jan 3 01:28:58 2015 (r276600) @@ -183,6 +183,8 @@ #define VM_MAX_ADDRESS UPT_MAX_ADDRESS #define VM_MIN_ADDRESS (0) +#define PHYS_TO_DMAP_RAW(x) ((x) | DMAP_MIN_ADDRESS) +#define DMAP_TO_PHYS_RAW(x) ((x) & ~DMAP_MIN_ADDRESS) /* * XXX Allowing dmaplimit == 0 is a temporary workaround for vt(4) efifb's * early use of PHYS_TO_DMAP before the mapping is actually setup. This works @@ -193,14 +195,14 @@ KASSERT(dmaplimit == 0 || (x) < dmaplimit, \ ("physical address %#jx not covered by the DMAP", \ (uintmax_t)x)); \ - (x) | DMAP_MIN_ADDRESS; }) + PHYS_TO_DMAP_RAW(x); }) #define DMAP_TO_PHYS(x) ({ \ KASSERT((x) < (DMAP_MIN_ADDRESS + dmaplimit) && \ (x) >= DMAP_MIN_ADDRESS, \ ("virtual address %#jx not covered by the DMAP", \ (uintmax_t)x)); \ - (x) & ~DMAP_MIN_ADDRESS; }) + DMAP_TO_PHYS_RAW(x); }) /* * How many physical pages per kmem arena virtual page. From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 01:52:07 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 44ED9DF0; Sat, 3 Jan 2015 01:52:07 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 310E0642FC; Sat, 3 Jan 2015 01:52:07 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t031q7vH094141; Sat, 3 Jan 2015 01:52:07 GMT (envelope-from des@FreeBSD.org) Received: (from des@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t031q7EN094140; Sat, 3 Jan 2015 01:52:07 GMT (envelope-from des@FreeBSD.org) Message-Id: <201501030152.t031q7EN094140@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: des set sender to des@FreeBSD.org using -f From: Dag-Erling Smørgrav Date: Sat, 3 Jan 2015 01:52:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276602 - head/sbin/routed X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 01:52:07 -0000 Author: des Date: Sat Jan 3 01:52:06 2015 New Revision: 276602 URL: https://svnweb.freebsd.org/changeset/base/276602 Log: Belatedly commit the patch for SA-14:21 to head. It was not committed to head at the time because it's a band-aid, rather than a complete fix, but the complete fix never materialized. Modified: head/sbin/routed/input.c Modified: head/sbin/routed/input.c ============================================================================== --- head/sbin/routed/input.c Sat Jan 3 01:41:10 2015 (r276601) +++ head/sbin/routed/input.c Sat Jan 3 01:52:06 2015 (r276602) @@ -288,6 +288,10 @@ input(struct sockaddr_in *from, /* rece /* Answer a query from a utility program * with all we know. */ + if (aifp == NULL) { + trace_pkt("ignore remote query"); + return; + } if (from->sin_port != htons(RIP_PORT)) { /* * insecure: query from non-router node From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 02:34:24 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9D4E039F; Sat, 3 Jan 2015 02:34:24 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 892E36672D; Sat, 3 Jan 2015 02:34:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t032YOXm013330; Sat, 3 Jan 2015 02:34:24 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t032YOl1013329; Sat, 3 Jan 2015 02:34:24 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201501030234.t032YOl1013329@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Sat, 3 Jan 2015 02:34:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276603 - head/sys/mips/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 02:34:24 -0000 Author: adrian Date: Sat Jan 3 02:34:23 2015 New Revision: 276603 URL: https://svnweb.freebsd.org/changeset/base/276603 Log: The kernel has gotten too big; trim out MSDOSFS for the DIR825B1. Modified: head/sys/mips/conf/DIR-825B1 Modified: head/sys/mips/conf/DIR-825B1 ============================================================================== --- head/sys/mips/conf/DIR-825B1 Sat Jan 3 01:52:06 2015 (r276602) +++ head/sys/mips/conf/DIR-825B1 Sat Jan 3 02:34:23 2015 (r276603) @@ -61,7 +61,7 @@ options AR71XX_REALMEM=64*1024*1024 options AR71XX_ENV_UBOOT -options MSDOSFS # Read MSDOS filesystems; useful for USB/CF +# options MSDOSFS # Read MSDOS filesystems; useful for USB/CF # options MD_ROOT # options MD_ROOT_SIZE="6144" From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 02:39:29 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 71B6C5F3; Sat, 3 Jan 2015 02:39:29 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5D66966778; Sat, 3 Jan 2015 02:39:29 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t032dT1L013999; Sat, 3 Jan 2015 02:39:29 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t032dTR6013998; Sat, 3 Jan 2015 02:39:29 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201501030239.t032dTR6013998@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Sat, 3 Jan 2015 02:39:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276604 - head/sys/mips/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 02:39:29 -0000 Author: adrian Date: Sat Jan 3 02:39:28 2015 New Revision: 276604 URL: https://svnweb.freebsd.org/changeset/base/276604 Log: For now build random into the kernel - there seems to be issues kldload'ing it at early boot. Modified: head/sys/mips/conf/DIR-825B1 Modified: head/sys/mips/conf/DIR-825B1 ============================================================================== --- head/sys/mips/conf/DIR-825B1 Sat Jan 3 02:34:23 2015 (r276603) +++ head/sys/mips/conf/DIR-825B1 Sat Jan 3 02:39:28 2015 (r276604) @@ -19,7 +19,7 @@ hints "DIR-825B1.hints" # Since the kernel image must fit inside 1024KiB, we have to build almost # everything as modules. -nodevice random +# nodevice random nodevice gpio nodevice gpioled nodevice gif From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 02:40:54 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 39C97743; Sat, 3 Jan 2015 02:40:54 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 20B146682A; Sat, 3 Jan 2015 02:40:54 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t032esZW016552; Sat, 3 Jan 2015 02:40:54 GMT (envelope-from des@FreeBSD.org) Received: (from des@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t032eqhB016542; Sat, 3 Jan 2015 02:40:52 GMT (envelope-from des@FreeBSD.org) Message-Id: <201501030240.t032eqhB016542@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: des set sender to des@FreeBSD.org using -f From: Dag-Erling Smørgrav Date: Sat, 3 Jan 2015 02:40:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276605 - in head: contrib/unbound contrib/unbound/compat contrib/unbound/daemon contrib/unbound/dns64 contrib/unbound/dnstap contrib/unbound/doc contrib/unbound/iterator contrib/unboun... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 02:40:54 -0000 Author: des Date: Sat Jan 3 02:40:51 2015 New Revision: 276605 URL: https://svnweb.freebsd.org/changeset/base/276605 Log: Upgrade to Unbound 1.5.1. Almost all our local changes to date have been adopted upstream, greatly reducing the diff. Added: head/contrib/unbound/compat/arc4_lock.c - copied, changed from r276541, vendor/unbound/dist/compat/arc4_lock.c head/contrib/unbound/compat/arc4random.c - copied unchanged from r276541, vendor/unbound/dist/compat/arc4random.c head/contrib/unbound/compat/arc4random_uniform.c - copied unchanged from r276541, vendor/unbound/dist/compat/arc4random_uniform.c head/contrib/unbound/compat/chacha_private.h - copied unchanged from r276541, vendor/unbound/dist/compat/chacha_private.h head/contrib/unbound/compat/explicit_bzero.c - copied unchanged from r276541, vendor/unbound/dist/compat/explicit_bzero.c head/contrib/unbound/compat/getentropy_linux.c - copied, changed from r276541, vendor/unbound/dist/compat/getentropy_linux.c head/contrib/unbound/compat/getentropy_osx.c - copied unchanged from r276541, vendor/unbound/dist/compat/getentropy_osx.c head/contrib/unbound/compat/getentropy_solaris.c - copied unchanged from r276541, vendor/unbound/dist/compat/getentropy_solaris.c head/contrib/unbound/compat/getentropy_win.c - copied, changed from r276541, vendor/unbound/dist/compat/getentropy_win.c head/contrib/unbound/compat/sha512.c - copied unchanged from r276541, vendor/unbound/dist/compat/sha512.c head/contrib/unbound/dns64/ - copied from r276541, vendor/unbound/dist/dns64/ head/contrib/unbound/dnstap/ - copied from r276541, vendor/unbound/dist/dnstap/ head/contrib/unbound/doc/README.DNS64 - copied unchanged from r276541, vendor/unbound/dist/doc/README.DNS64 head/contrib/unbound/doc/unbound-host.1.in - copied, changed from r276541, vendor/unbound/dist/doc/unbound-host.1.in Deleted: head/contrib/unbound/doc/unbound-host.1 Modified: head/contrib/unbound/Makefile.in head/contrib/unbound/aclocal.m4 head/contrib/unbound/acx_python.m4 head/contrib/unbound/compat/fake-rfc2553.c head/contrib/unbound/compat/inet_aton.c head/contrib/unbound/compat/memmove.c head/contrib/unbound/compat/strptime.c head/contrib/unbound/config.guess head/contrib/unbound/config.h head/contrib/unbound/config.h.in head/contrib/unbound/config.sub head/contrib/unbound/configure head/contrib/unbound/configure.ac head/contrib/unbound/daemon/cachedump.c head/contrib/unbound/daemon/daemon.c head/contrib/unbound/daemon/daemon.h head/contrib/unbound/daemon/remote.c head/contrib/unbound/daemon/stats.c head/contrib/unbound/daemon/stats.h head/contrib/unbound/daemon/unbound.c head/contrib/unbound/daemon/worker.c head/contrib/unbound/daemon/worker.h head/contrib/unbound/dns64/dns64.c head/contrib/unbound/doc/CREDITS head/contrib/unbound/doc/Changelog head/contrib/unbound/doc/README head/contrib/unbound/doc/README.svn head/contrib/unbound/doc/example.conf.in head/contrib/unbound/doc/libunbound.3 head/contrib/unbound/doc/libunbound.3.in head/contrib/unbound/doc/unbound-anchor.8 head/contrib/unbound/doc/unbound-anchor.8.in head/contrib/unbound/doc/unbound-checkconf.8 head/contrib/unbound/doc/unbound-checkconf.8.in head/contrib/unbound/doc/unbound-control.8 head/contrib/unbound/doc/unbound-control.8.in head/contrib/unbound/doc/unbound.8 head/contrib/unbound/doc/unbound.8.in head/contrib/unbound/doc/unbound.conf.5 head/contrib/unbound/doc/unbound.conf.5.in head/contrib/unbound/doc/unbound.doxygen head/contrib/unbound/iterator/iter_delegpt.c head/contrib/unbound/iterator/iter_hints.c head/contrib/unbound/iterator/iter_utils.c head/contrib/unbound/iterator/iter_utils.h head/contrib/unbound/iterator/iterator.c head/contrib/unbound/iterator/iterator.h head/contrib/unbound/ldns/keyraw.c head/contrib/unbound/ldns/parseutil.c head/contrib/unbound/ldns/rrdef.c head/contrib/unbound/ldns/rrdef.h head/contrib/unbound/ldns/sbuffer.h head/contrib/unbound/ldns/str2wire.c head/contrib/unbound/ldns/wire2str.c head/contrib/unbound/libunbound/libunbound.c head/contrib/unbound/libunbound/libworker.c head/contrib/unbound/libunbound/python/examples/async-lookup.py head/contrib/unbound/libunbound/python/examples/dns-lookup.py head/contrib/unbound/libunbound/python/examples/dnssec-valid.py head/contrib/unbound/libunbound/python/examples/dnssec_test.py head/contrib/unbound/libunbound/python/examples/example8-1.py head/contrib/unbound/libunbound/python/examples/idn-lookup.py head/contrib/unbound/libunbound/python/examples/mx-lookup.py head/contrib/unbound/libunbound/python/examples/ns-lookup.py head/contrib/unbound/libunbound/python/examples/reverse-lookup.py head/contrib/unbound/libunbound/python/libunbound.i head/contrib/unbound/libunbound/ubsyms.def head/contrib/unbound/libunbound/unbound.h head/contrib/unbound/libunbound/worker.h head/contrib/unbound/services/cache/dns.c head/contrib/unbound/services/cache/dns.h head/contrib/unbound/services/listen_dnsport.c head/contrib/unbound/services/listen_dnsport.h head/contrib/unbound/services/localzone.c head/contrib/unbound/services/mesh.c head/contrib/unbound/services/mesh.h head/contrib/unbound/services/modstack.c head/contrib/unbound/services/outside_network.c head/contrib/unbound/services/outside_network.h head/contrib/unbound/smallapp/unbound-anchor.c head/contrib/unbound/smallapp/unbound-checkconf.c head/contrib/unbound/smallapp/unbound-control.c head/contrib/unbound/smallapp/unbound-host.c head/contrib/unbound/smallapp/worker_cb.c head/contrib/unbound/util/config_file.c head/contrib/unbound/util/config_file.h head/contrib/unbound/util/configlexer.lex head/contrib/unbound/util/configparser.y head/contrib/unbound/util/configyyrename.h head/contrib/unbound/util/data/dname.c head/contrib/unbound/util/data/msgreply.c head/contrib/unbound/util/data/msgreply.h head/contrib/unbound/util/data/packed_rrset.h head/contrib/unbound/util/fptr_wlist.c head/contrib/unbound/util/fptr_wlist.h head/contrib/unbound/util/iana_ports.inc head/contrib/unbound/util/locks.h head/contrib/unbound/util/log.c head/contrib/unbound/util/mini_event.h head/contrib/unbound/util/module.h head/contrib/unbound/util/net_help.c head/contrib/unbound/util/net_help.h head/contrib/unbound/util/netevent.c head/contrib/unbound/util/netevent.h head/contrib/unbound/util/random.c head/contrib/unbound/util/storage/lookup3.c head/contrib/unbound/util/storage/slabhash.c head/contrib/unbound/util/storage/slabhash.h head/contrib/unbound/util/winsock_event.h head/contrib/unbound/validator/autotrust.c head/contrib/unbound/validator/val_anchor.c head/contrib/unbound/validator/val_nsec3.c head/contrib/unbound/validator/validator.c head/lib/libunbound/Makefile Modified: head/contrib/unbound/Makefile.in ============================================================================== --- head/contrib/unbound/Makefile.in Sat Jan 3 02:39:28 2015 (r276604) +++ head/contrib/unbound/Makefile.in Sat Jan 3 02:40:51 2015 (r276605) @@ -19,9 +19,10 @@ libtool=@libtool@ staticexe=@staticexe@ EXEEXT=@EXEEXT@ configfile=@ub_conf_file@ -UNBOUND_RUN_DIR=@UNBOUND_RUN_DIR@ CHECKLOCK_SRC=testcode/checklocks.c CHECKLOCK_OBJ=@CHECKLOCK_OBJ@ +DNSTAP_SRC=@DNSTAP_SRC@ +DNSTAP_OBJ=@DNSTAP_OBJ@ WITH_PYTHONMODULE=@WITH_PYTHONMODULE@ WITH_PYUNBOUND=@WITH_PYUNBOUND@ PYTHON_SITE_PKG=@PYTHON_SITE_PKG@ @@ -44,6 +45,7 @@ PYUNBOUND_TARGET=@PYUNBOUND_TARGET@ # K&R C compilers), but causes problems if $U is defined in the env). U= +PROTOC_C=@PROTOC_C@ SWIG=@SWIG@ YACC=@YACC@ LEX=@LEX@ @@ -56,6 +58,7 @@ LIBS=@LIBS@ LIBOBJS=@LIBOBJS@ # filter out ctime_r from compat obj. LIBOBJ_WITHOUT_CTIME=@LIBOBJ_WITHOUT_CTIME@ +LIBOBJ_WITHOUT_CTIMEARC4=@LIBOBJ_WITHOUT_CTIMEARC4@ RUNTIME_PATH=@RUNTIME_PATH@ DEPFLAG=@DEPFLAG@ DATE=@CONFIG_DATE@ @@ -69,15 +72,15 @@ LINT=splint LINTFLAGS=+quiet -weak -warnposix -unrecog -Din_addr_t=uint32_t -Du_int=unsigned -Du_char=uint8_t -preproc -Drlimit=rlimit64 -D__gnuc_va_list=va_list -formatcode #-Dglob64=glob -Dglobfree64=globfree # compat with openssl linux edition. -LINTFLAGS+="-DBN_ULONG=unsigned long" -Dkrb5_int32=int "-Dkrb5_ui_4=unsigned int" -DPQ_64BIT=uint64_t -DRC4_INT=unsigned -fixedformalarray -D"ENGINE=unsigned" -D"RSA=unsigned" -D"DSA=unsigned" -D"EVP_PKEY=unsigned" -D"EVP_MD=unsigned" -D"SSL=unsigned" -D"SSL_CTX=unsigned" -D"X509=unsigned" -D"RC4_KEY=unsigned" -D"EVP_MD_CTX=unsigned" -D"ECDSA_SIG=DSA_SIG" +LINTFLAGS+="-DBN_ULONG=unsigned long" -Dkrb5_int32=int "-Dkrb5_ui_4=unsigned int" -DPQ_64BIT=uint64_t -DRC4_INT=unsigned -fixedformalarray -D"ENGINE=unsigned" -D"RSA=unsigned" -D"DSA=unsigned" -D"EVP_PKEY=unsigned" -D"EVP_MD=unsigned" -D"SSL=unsigned" -D"SSL_CTX=unsigned" -D"X509=unsigned" -D"RC4_KEY=unsigned" -D"EVP_MD_CTX=unsigned" -D"ECDSA_SIG=DSA_SIG" -Dfstrm_res=int # compat with NetBSD LINTFLAGS+=@NETBSD_LINTFLAGS@ # compat with OpenBSD LINTFLAGS+="-Dsigset_t=long" # FreeBSD -LINTFLAGS+="-D__uint16_t=uint16_t" "-DEVP_PKEY_ASN1_METHOD=int" +LINTFLAGS+="-D__uint16_t=uint16_t" "-DEVP_PKEY_ASN1_METHOD=int" "-D_RuneLocale=int" "-D__va_list=va_list" -INSTALL=$(srcdir)/install-sh +INSTALL=$(SHELL) $(srcdir)/install-sh #pythonmod.c is not here, it is mentioned by itself in its own rules, #makedepend fails on missing interface.h otherwise. @@ -106,7 +109,7 @@ util/winsock_event.c validator/autotrust validator/validator.c validator/val_kcache.c validator/val_kentry.c \ validator/val_neg.c validator/val_nsec3.c validator/val_nsec.c \ validator/val_secalgo.c validator/val_sigcrypt.c \ -validator/val_utils.c $(CHECKLOCK_SRC) +validator/val_utils.c dns64/dns64.c $(CHECKLOCK_SRC) $(DNSTAP_SRC) COMMON_OBJ_WITHOUT_NETCALL=dns.lo infra.lo rrset.lo dname.lo msgencode.lo \ msgparse.lo msgreply.lo packed_rrset.lo iterator.lo iter_delegpt.lo \ iter_donotq.lo iter_fwd.lo iter_hints.lo iter_priv.lo iter_resptype.lo \ @@ -116,7 +119,8 @@ fptr_wlist.lo locks.lo log.lo mini_event random.lo rbtree.lo regional.lo rtt.lo dnstree.lo lookup3.lo lruhash.lo \ slabhash.lo timehist.lo tube.lo winsock_event.lo autotrust.lo val_anchor.lo \ validator.lo val_kcache.lo val_kentry.lo val_neg.lo val_nsec3.lo val_nsec.lo \ -val_secalgo.lo val_sigcrypt.lo val_utils.lo $(PYTHONMOD_OBJ) $(CHECKLOCK_OBJ) +val_secalgo.lo val_sigcrypt.lo val_utils.lo dns64.lo \ +$(PYTHONMOD_OBJ) $(CHECKLOCK_OBJ) $(DNSTAP_OBJ) COMMON_OBJ=$(COMMON_OBJ_WITHOUT_NETCALL) netevent.lo listen_dnsport.lo \ outside_network.lo # set to $COMMON_OBJ or to "" if --enableallsymbols @@ -124,9 +128,13 @@ COMMON_OBJ_ALL_SYMBOLS=@COMMON_OBJ_ALL_S COMPAT_SRC=compat/ctime_r.c compat/fake-rfc2553.c compat/gmtime_r.c \ compat/inet_aton.c compat/inet_ntop.c compat/inet_pton.c compat/malloc.c \ compat/memcmp.c compat/memmove.c compat/snprintf.c compat/strlcat.c \ -compat/strlcpy.c compat/strptime.c +compat/strlcpy.c compat/strptime.c compat/getentropy_linux.c \ +compat/getentropy_osx.c compat/getentropy_solaris.c compat/getentropy_win.c \ +compat/explicit_bzero.c compat/arc4random.c compat/arc4random_uniform.c \ +compat/arc4_lock.c compat/sha512.c COMPAT_OBJ=$(LIBOBJS:.o=.lo) COMPAT_OBJ_WITHOUT_CTIME=$(LIBOBJ_WITHOUT_CTIME:.o=.lo) +COMPAT_OBJ_WITHOUT_CTIMEARC4=$(LIBOBJ_WITHOUT_CTIMEARC4:.o=.lo) SLDNS_SRC=ldns/keyraw.c ldns/sbuffer.c ldns/wire2str.c ldns/parse.c \ ldns/parseutil.c ldns/rrdef.c ldns/str2wire.c SLDNS_OBJ=keyraw.lo sbuffer.lo wire2str.lo parse.lo parseutil.lo rrdef.lo \ @@ -156,7 +164,7 @@ CONTROL_OBJ_LINK=$(CONTROL_OBJ) worker_c $(SLDNS_OBJ) $(COMPAT_OBJ) @WIN_CONTROL_OBJ_LINK@ HOST_SRC=smallapp/unbound-host.c HOST_OBJ=unbound-host.lo -HOST_OBJ_LINK=$(HOST_OBJ) $(SLDNS_OBJ) $(COMPAT_OBJ_WITHOUT_CTIME) @WIN_HOST_OBJ_LINK@ +HOST_OBJ_LINK=$(HOST_OBJ) $(SLDNS_OBJ) $(COMPAT_OBJ_WITHOUT_CTIMEARC4) @WIN_HOST_OBJ_LINK@ UBANCHOR_SRC=smallapp/unbound-anchor.c UBANCHOR_OBJ=unbound-anchor.lo UBANCHOR_OBJ_LINK=$(UBANCHOR_OBJ) \ @@ -173,7 +181,7 @@ LOCKVERIFY_OBJ_LINK=$(LOCKVERIFY_OBJ) wo $(SLDNS_OBJ) PETAL_SRC=testcode/petal.c PETAL_OBJ=petal.lo -PETAL_OBJ_LINK=$(PETAL_OBJ) $(COMPAT_OBJ_WITHOUT_CTIME) +PETAL_OBJ_LINK=$(PETAL_OBJ) $(COMPAT_OBJ_WITHOUT_CTIMEARC4) PKTVIEW_SRC=testcode/pktview.c testcode/readhex.c PKTVIEW_OBJ=pktview.lo PKTVIEW_OBJ_LINK=$(PKTVIEW_OBJ) worker_cb.lo readhex.lo $(COMMON_OBJ) \ @@ -348,10 +356,22 @@ signit$(EXEEXT): testcode/signit.c unbound.h: $(srcdir)/libunbound/unbound.h sed -e 's/@''UNBOUND_VERSION_MAJOR@/$(UNBOUND_VERSION_MAJOR)/' -e 's/@''UNBOUND_VERSION_MINOR@/$(UNBOUND_VERSION_MINOR)/' -e 's/@''UNBOUND_VERSION_MICRO@/$(UNBOUND_VERSION_MICRO)/' < $(srcdir)/libunbound/unbound.h > $@ -unbound-control-setup: $(srcdir)/smallapp/unbound-control-setup.sh - sed -e 's:^DESTDIR=.*$$:DESTDIR=$(UNBOUND_RUN_DIR):' < $(srcdir)/smallapp/unbound-control-setup.sh > $@ +unbound-control-setup: smallapp/unbound-control-setup.sh + cp smallapp/unbound-control-setup.sh $@ -chmod +x $@ +# dnstap +dnstap.lo dnstap.o: $(srcdir)/dnstap/dnstap.c config.h dnstap/dnstap_config.h \ + dnstap/dnstap.pb-c.c dnstap/dnstap.pb-c.h $(srcdir)/dnstap/dnstap.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/log.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/net_help.h + +dnstap/dnstap.pb-c.c dnstap/dnstap.pb-c.h: $(srcdir)/dnstap/dnstap.proto + @-if test ! -d dnstap; then $(INSTALL) -d dnstap; fi + $(PROTOC_C) --c_out=. $(srcdir)/dnstap/dnstap.proto + +dnstap.pb-c.lo dnstap.pb-c.o: dnstap/dnstap.pb-c.c dnstap/dnstap.pb-c.h + # Python Module pythonmod.lo pythonmod.o: $(srcdir)/pythonmod/pythonmod.c config.h \ pythonmod/interface.h \ @@ -377,7 +397,7 @@ libunbound/python/libunbound_wrap.c: $(s # Pyunbound python unbound wrapper _unbound.la: libunbound_wrap.lo libunbound.la - $(LIBTOOL) --tag=CC --mode=link $(CC) $(RUNTIME_PATH) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -module -version-info @LIBUNBOUND_CURRENT@:@LIBUNBOUND_REVISION@:@LIBUNBOUND_AGE@ -no-undefined -o $@ libunbound_wrap.lo -rpath $(PYTHON_SITE_PKG) L. -L.libs -lunbound $(LIBS) + $(LIBTOOL) --tag=CC --mode=link $(CC) $(RUNTIME_PATH) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -module -avoid-version -no-undefined -shared -o $@ libunbound_wrap.lo -rpath $(PYTHON_SITE_PKG) L. -L.libs -lunbound util/config_file.c: util/configparser.h util/configlexer.c: $(srcdir)/util/configlexer.lex util/configparser.h @@ -412,7 +432,7 @@ realclean: clean $(LINT) $(LINTFLAGS) -I. -I$(srcdir) $< touch $@ -util/configparser.lint util/configlexer.lint pythonmod/pythonmod.lint libunbound/python/libunbound_wrap.lint: +util/configparser.lint util/configlexer.lint pythonmod/pythonmod.lint libunbound/python/libunbound_wrap.lint dnstap/dnstap.pb-c.lint: # skip lint for generated code touch $@ @@ -495,7 +515,7 @@ install-all: all $(PYTHONMOD_INSTALL) $( $(INSTALL) -c -m 644 doc/unbound-control.8 $(DESTDIR)$(mandir)/man8/unbound-control-setup.8 $(INSTALL) -c -m 644 doc/unbound-anchor.8 $(DESTDIR)$(mandir)/man8 $(INSTALL) -c -m 644 doc/unbound.conf.5 $(DESTDIR)$(mandir)/man5 - $(INSTALL) -c -m 644 $(srcdir)/doc/unbound-host.1 $(DESTDIR)$(mandir)/man1 + $(INSTALL) -c -m 644 doc/unbound-host.1 $(DESTDIR)$(mandir)/man1 $(INSTALL) -c -m 755 unbound-control-setup $(DESTDIR)$(sbindir)/unbound-control-setup if test ! -e $(DESTDIR)$(configfile); then $(INSTALL) -d `dirname $(DESTDIR)$(configfile)`; $(INSTALL) -c -m 644 doc/example.conf $(DESTDIR)$(configfile); fi @@ -572,3 +592,617 @@ depend: rm -f $(DEPEND_TMP) $(DEPEND_TMP2) # Dependencies +dns.lo dns.o: $(srcdir)/services/cache/dns.c config.h $(srcdir)/iterator/iter_delegpt.h $(srcdir)/util/log.h \ + $(srcdir)/validator/val_nsec.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/locks.h $(srcdir)/services/cache/dns.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/util/data/dname.h \ + $(srcdir)/util/module.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/regional.h $(srcdir)/util/config_file.h $(srcdir)/ldns/sbuffer.h +infra.lo infra.o: $(srcdir)/services/cache/infra.c config.h $(srcdir)/ldns/rrdef.h \ + $(srcdir)/services/cache/infra.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/util/rtt.h $(srcdir)/util/storage/slabhash.h $(srcdir)/util/storage/lookup3.h \ + $(srcdir)/util/data/dname.h $(srcdir)/util/net_help.h $(srcdir)/util/config_file.h $(srcdir)/iterator/iterator.h \ + $(srcdir)/services/outbound_list.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/module.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h +rrset.lo rrset.o: $(srcdir)/services/cache/rrset.c config.h $(srcdir)/services/cache/rrset.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/storage/slabhash.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/config_file.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/regional.h $(srcdir)/util/alloc.h +dname.lo dname.o: $(srcdir)/util/data/dname.c config.h $(srcdir)/util/data/dname.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/data/msgparse.h \ + $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/storage/lookup3.h $(srcdir)/ldns/sbuffer.h +msgencode.lo msgencode.o: $(srcdir)/util/data/msgencode.c config.h $(srcdir)/util/data/msgencode.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ + $(srcdir)/util/data/dname.h $(srcdir)/util/regional.h $(srcdir)/util/net_help.h $(srcdir)/ldns/sbuffer.h +msgparse.lo msgparse.o: $(srcdir)/util/data/msgparse.c config.h $(srcdir)/util/data/msgparse.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/ldns/pkthdr.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/util/data/dname.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/storage/lookup3.h $(srcdir)/util/regional.h $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/parseutil.h \ + $(srcdir)/ldns/wire2str.h +msgreply.lo msgreply.o: $(srcdir)/util/data/msgreply.c config.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/storage/lookup3.h $(srcdir)/util/alloc.h $(srcdir)/util/netevent.h $(srcdir)/util/net_help.h \ + $(srcdir)/util/data/dname.h $(srcdir)/util/regional.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/util/data/msgencode.h $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/wire2str.h +packed_rrset.lo packed_rrset.o: $(srcdir)/util/data/packed_rrset.c config.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/util/data/dname.h $(srcdir)/util/storage/lookup3.h $(srcdir)/util/alloc.h $(srcdir)/util/regional.h \ + $(srcdir)/util/net_help.h $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/wire2str.h +iterator.lo iterator.o: $(srcdir)/iterator/iterator.c config.h $(srcdir)/iterator/iterator.h \ + $(srcdir)/services/outbound_list.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/module.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/iterator/iter_utils.h \ + $(srcdir)/iterator/iter_resptype.h $(srcdir)/iterator/iter_hints.h $(srcdir)/util/storage/dnstree.h \ + $(srcdir)/util/rbtree.h $(srcdir)/iterator/iter_fwd.h $(srcdir)/iterator/iter_donotq.h \ + $(srcdir)/iterator/iter_delegpt.h $(srcdir)/iterator/iter_scrub.h $(srcdir)/iterator/iter_priv.h \ + $(srcdir)/validator/val_neg.h $(srcdir)/services/cache/dns.h $(srcdir)/services/cache/infra.h \ + $(srcdir)/util/rtt.h $(srcdir)/util/netevent.h $(srcdir)/util/net_help.h $(srcdir)/util/regional.h \ + $(srcdir)/util/data/dname.h $(srcdir)/util/data/msgencode.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/tube.h \ + $(srcdir)/services/mesh.h $(srcdir)/services/modstack.h $(srcdir)/util/config_file.h $(srcdir)/ldns/wire2str.h \ + $(srcdir)/ldns/parseutil.h $(srcdir)/ldns/sbuffer.h +iter_delegpt.lo iter_delegpt.o: $(srcdir)/iterator/iter_delegpt.c config.h $(srcdir)/iterator/iter_delegpt.h \ + $(srcdir)/util/log.h $(srcdir)/services/cache/dns.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/regional.h \ + $(srcdir)/util/data/dname.h $(srcdir)/util/net_help.h $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/sbuffer.h +iter_donotq.lo iter_donotq.o: $(srcdir)/iterator/iter_donotq.c config.h $(srcdir)/iterator/iter_donotq.h \ + $(srcdir)/util/storage/dnstree.h $(srcdir)/util/rbtree.h $(srcdir)/util/regional.h $(srcdir)/util/log.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/net_help.h +iter_fwd.lo iter_fwd.o: $(srcdir)/iterator/iter_fwd.c config.h $(srcdir)/iterator/iter_fwd.h \ + $(srcdir)/util/rbtree.h $(srcdir)/iterator/iter_delegpt.h $(srcdir)/util/log.h $(srcdir)/util/config_file.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/data/dname.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/str2wire.h +iter_hints.lo iter_hints.o: $(srcdir)/iterator/iter_hints.c config.h $(srcdir)/iterator/iter_hints.h \ + $(srcdir)/util/storage/dnstree.h $(srcdir)/util/rbtree.h $(srcdir)/iterator/iter_delegpt.h $(srcdir)/util/log.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/net_help.h $(srcdir)/util/data/dname.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/str2wire.h \ + $(srcdir)/ldns/wire2str.h +iter_priv.lo iter_priv.o: $(srcdir)/iterator/iter_priv.c config.h $(srcdir)/iterator/iter_priv.h \ + $(srcdir)/util/rbtree.h $(srcdir)/util/regional.h $(srcdir)/util/log.h $(srcdir)/util/config_file.h \ + $(srcdir)/util/data/dname.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/net_help.h \ + $(srcdir)/util/storage/dnstree.h $(srcdir)/ldns/str2wire.h $(srcdir)/ldns/sbuffer.h +iter_resptype.lo iter_resptype.o: $(srcdir)/iterator/iter_resptype.c config.h \ + $(srcdir)/iterator/iter_resptype.h $(srcdir)/iterator/iter_delegpt.h $(srcdir)/util/log.h \ + $(srcdir)/services/cache/dns.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/net_help.h \ + $(srcdir)/util/data/dname.h $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/pkthdr.h +iter_scrub.lo iter_scrub.o: $(srcdir)/iterator/iter_scrub.c config.h $(srcdir)/iterator/iter_scrub.h \ + $(srcdir)/iterator/iterator.h $(srcdir)/services/outbound_list.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/module.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ + $(srcdir)/iterator/iter_priv.h $(srcdir)/util/rbtree.h $(srcdir)/services/cache/rrset.h \ + $(srcdir)/util/storage/slabhash.h $(srcdir)/util/net_help.h $(srcdir)/util/regional.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/data/dname.h $(srcdir)/util/alloc.h $(srcdir)/ldns/sbuffer.h +iter_utils.lo iter_utils.o: $(srcdir)/iterator/iter_utils.c config.h $(srcdir)/iterator/iter_utils.h \ + $(srcdir)/iterator/iter_resptype.h $(srcdir)/iterator/iterator.h $(srcdir)/services/outbound_list.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/module.h $(srcdir)/util/data/msgparse.h \ + $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/iterator/iter_hints.h $(srcdir)/util/storage/dnstree.h \ + $(srcdir)/util/rbtree.h $(srcdir)/iterator/iter_fwd.h $(srcdir)/iterator/iter_donotq.h \ + $(srcdir)/iterator/iter_delegpt.h $(srcdir)/iterator/iter_priv.h $(srcdir)/services/cache/infra.h \ + $(srcdir)/util/rtt.h $(srcdir)/services/cache/dns.h $(srcdir)/services/cache/rrset.h \ + $(srcdir)/util/storage/slabhash.h $(srcdir)/util/net_help.h $(srcdir)/util/config_file.h \ + $(srcdir)/util/regional.h $(srcdir)/util/data/dname.h $(srcdir)/util/random.h $(srcdir)/util/fptr_wlist.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/tube.h $(srcdir)/services/mesh.h $(srcdir)/services/modstack.h \ + $(srcdir)/validator/val_anchor.h $(srcdir)/validator/val_kcache.h $(srcdir)/validator/val_kentry.h \ + $(srcdir)/validator/val_utils.h $(srcdir)/validator/val_sigcrypt.h $(srcdir)/ldns/sbuffer.h +listen_dnsport.lo listen_dnsport.o: $(srcdir)/services/listen_dnsport.c config.h \ + $(srcdir)/services/listen_dnsport.h $(srcdir)/util/netevent.h $(srcdir)/services/outside_network.h \ + $(srcdir)/util/rbtree.h $(srcdir)/util/log.h $(srcdir)/util/config_file.h $(srcdir)/util/net_help.h \ + $(srcdir)/ldns/sbuffer.h +localzone.lo localzone.o: $(srcdir)/services/localzone.c config.h $(srcdir)/services/localzone.h \ + $(srcdir)/util/rbtree.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/ldns/str2wire.h $(srcdir)/ldns/rrdef.h \ + $(srcdir)/ldns/sbuffer.h $(srcdir)/util/regional.h $(srcdir)/util/config_file.h $(srcdir)/util/data/dname.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgencode.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h +mesh.lo mesh.o: $(srcdir)/services/mesh.c config.h $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/data/msgparse.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ + $(srcdir)/util/log.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/services/modstack.h $(srcdir)/services/outbound_list.h \ + $(srcdir)/services/cache/dns.h $(srcdir)/util/net_help.h $(srcdir)/util/regional.h \ + $(srcdir)/util/data/msgencode.h $(srcdir)/util/timehist.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/tube.h \ + $(srcdir)/util/alloc.h $(srcdir)/util/config_file.h $(srcdir)/ldns/sbuffer.h +modstack.lo modstack.o: $(srcdir)/services/modstack.c config.h $(srcdir)/services/modstack.h \ + $(srcdir)/util/module.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgparse.h \ + $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/netevent.h $(srcdir)/util/tube.h \ + $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h $(srcdir)/dns64/dns64.h $(srcdir)/iterator/iterator.h \ + $(srcdir)/services/outbound_list.h $(srcdir)/validator/validator.h $(srcdir)/validator/val_utils.h +outbound_list.lo outbound_list.o: $(srcdir)/services/outbound_list.c config.h \ + $(srcdir)/services/outbound_list.h $(srcdir)/services/outside_network.h $(srcdir)/util/rbtree.h \ + $(srcdir)/util/netevent.h +outside_network.lo outside_network.o: $(srcdir)/services/outside_network.c config.h \ + $(srcdir)/services/outside_network.h $(srcdir)/util/rbtree.h $(srcdir)/util/netevent.h \ + $(srcdir)/services/listen_dnsport.h $(srcdir)/services/cache/infra.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/rtt.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/data/msgencode.h $(srcdir)/util/data/dname.h $(srcdir)/util/net_help.h $(srcdir)/util/random.h \ + $(srcdir)/util/fptr_wlist.h $(srcdir)/util/module.h $(srcdir)/util/tube.h $(srcdir)/services/mesh.h \ + $(srcdir)/services/modstack.h $(srcdir)/ldns/sbuffer.h \ + +alloc.lo alloc.o: $(srcdir)/util/alloc.c config.h $(srcdir)/util/alloc.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/util/regional.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/fptr_wlist.h $(srcdir)/util/netevent.h $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/tube.h \ + $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h $(srcdir)/services/modstack.h +config_file.lo config_file.o: $(srcdir)/util/config_file.c config.h $(srcdir)/util/log.h \ + $(srcdir)/util/configyyrename.h $(srcdir)/util/config_file.h util/configparser.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/data/msgparse.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ + $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/regional.h $(srcdir)/util/fptr_wlist.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/tube.h $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h \ + $(srcdir)/services/modstack.h $(srcdir)/util/data/dname.h $(srcdir)/ldns/wire2str.h $(srcdir)/ldns/parseutil.h \ + $(srcdir)/util/iana_ports.inc +configlexer.lo configlexer.o: util/configlexer.c config.h $(srcdir)/util/configyyrename.h \ + $(srcdir)/util/config_file.h util/configparser.h +configparser.lo configparser.o: util/configparser.c config.h $(srcdir)/util/configyyrename.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/net_help.h $(srcdir)/util/log.h +fptr_wlist.lo fptr_wlist.o: $(srcdir)/util/fptr_wlist.c config.h $(srcdir)/util/fptr_wlist.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/tube.h \ + $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h $(srcdir)/services/modstack.h $(srcdir)/util/mini_event.h \ + $(srcdir)/util/rbtree.h $(srcdir)/services/outside_network.h $(srcdir)/services/localzone.h \ + $(srcdir)/services/cache/infra.h $(srcdir)/util/rtt.h $(srcdir)/services/cache/rrset.h \ + $(srcdir)/util/storage/slabhash.h $(srcdir)/dns64/dns64.h $(srcdir)/iterator/iterator.h \ + $(srcdir)/services/outbound_list.h $(srcdir)/iterator/iter_fwd.h $(srcdir)/validator/validator.h \ + $(srcdir)/validator/val_utils.h $(srcdir)/validator/val_anchor.h $(srcdir)/validator/val_nsec3.h \ + $(srcdir)/validator/val_sigcrypt.h $(srcdir)/validator/val_kentry.h $(srcdir)/validator/val_neg.h \ + $(srcdir)/validator/autotrust.h $(srcdir)/util/storage/dnstree.h $(srcdir)/libunbound/libworker.h \ + $(srcdir)/libunbound/context.h $(srcdir)/util/alloc.h $(srcdir)/libunbound/unbound.h \ + $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h $(srcdir)/util/config_file.h +locks.lo locks.o: $(srcdir)/util/locks.c config.h $(srcdir)/util/locks.h $(srcdir)/util/log.h +log.lo log.o: $(srcdir)/util/log.c config.h $(srcdir)/util/log.h $(srcdir)/util/locks.h $(srcdir)/ldns/sbuffer.h +mini_event.lo mini_event.o: $(srcdir)/util/mini_event.c config.h $(srcdir)/util/mini_event.h $(srcdir)/util/rbtree.h \ + $(srcdir)/util/fptr_wlist.h $(srcdir)/util/netevent.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ + $(srcdir)/util/log.h $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/tube.h \ + $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h $(srcdir)/services/modstack.h +module.lo module.o: $(srcdir)/util/module.c config.h $(srcdir)/util/module.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h +netevent.lo netevent.o: $(srcdir)/util/netevent.c config.h $(srcdir)/util/netevent.h $(srcdir)/util/log.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ + $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/tube.h \ + $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h $(srcdir)/services/modstack.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/util/mini_event.h $(srcdir)/util/rbtree.h +net_help.lo net_help.o: $(srcdir)/util/net_help.c config.h $(srcdir)/util/net_help.h $(srcdir)/util/log.h \ + $(srcdir)/util/data/dname.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/module.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgparse.h \ + $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/regional.h $(srcdir)/ldns/parseutil.h \ + $(srcdir)/ldns/wire2str.h \ + +random.lo random.o: $(srcdir)/util/random.c config.h $(srcdir)/util/random.h $(srcdir)/util/log.h +rbtree.lo rbtree.o: $(srcdir)/util/rbtree.c config.h $(srcdir)/util/log.h $(srcdir)/util/fptr_wlist.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/tube.h \ + $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h $(srcdir)/services/modstack.h +regional.lo regional.o: $(srcdir)/util/regional.c config.h $(srcdir)/util/log.h $(srcdir)/util/regional.h +rtt.lo rtt.o: $(srcdir)/util/rtt.c config.h $(srcdir)/util/rtt.h +dnstree.lo dnstree.o: $(srcdir)/util/storage/dnstree.c config.h $(srcdir)/util/storage/dnstree.h \ + $(srcdir)/util/rbtree.h $(srcdir)/util/data/dname.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ + $(srcdir)/util/log.h $(srcdir)/util/net_help.h +lookup3.lo lookup3.o: $(srcdir)/util/storage/lookup3.c config.h $(srcdir)/util/storage/lookup3.h +lruhash.lo lruhash.o: $(srcdir)/util/storage/lruhash.c config.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/netevent.h $(srcdir)/util/module.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgparse.h \ + $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/tube.h $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h \ + $(srcdir)/services/modstack.h +slabhash.lo slabhash.o: $(srcdir)/util/storage/slabhash.c config.h $(srcdir)/util/storage/slabhash.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h +timehist.lo timehist.o: $(srcdir)/util/timehist.c config.h $(srcdir)/util/timehist.h $(srcdir)/util/log.h +tube.lo tube.o: $(srcdir)/util/tube.c config.h $(srcdir)/util/tube.h $(srcdir)/util/log.h $(srcdir)/util/net_help.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ + $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/services/mesh.h \ + $(srcdir)/util/rbtree.h $(srcdir)/services/modstack.h +winsock_event.lo winsock_event.o: $(srcdir)/util/winsock_event.c config.h +autotrust.lo autotrust.o: $(srcdir)/validator/autotrust.c config.h $(srcdir)/validator/autotrust.h \ + $(srcdir)/util/rbtree.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/validator/val_anchor.h $(srcdir)/validator/val_utils.h \ + $(srcdir)/validator/val_sigcrypt.h $(srcdir)/util/data/dname.h $(srcdir)/util/module.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/config_file.h $(srcdir)/util/regional.h $(srcdir)/util/random.h \ + $(srcdir)/services/mesh.h $(srcdir)/util/netevent.h $(srcdir)/services/modstack.h \ + $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/validator/val_kcache.h \ + $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/wire2str.h $(srcdir)/ldns/str2wire.h $(srcdir)/ldns/keyraw.h \ + +val_anchor.lo val_anchor.o: $(srcdir)/validator/val_anchor.c config.h $(srcdir)/validator/val_anchor.h \ + $(srcdir)/util/rbtree.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/validator/val_sigcrypt.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/validator/autotrust.h \ + $(srcdir)/util/data/dname.h $(srcdir)/util/net_help.h $(srcdir)/util/config_file.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/str2wire.h +validator.lo validator.o: $(srcdir)/validator/validator.c config.h $(srcdir)/validator/validator.h \ + $(srcdir)/util/module.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgparse.h \ + $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/validator/val_utils.h $(srcdir)/validator/val_anchor.h \ + $(srcdir)/util/rbtree.h $(srcdir)/validator/val_kcache.h $(srcdir)/util/storage/slabhash.h \ + $(srcdir)/validator/val_kentry.h $(srcdir)/validator/val_nsec.h $(srcdir)/validator/val_nsec3.h \ + $(srcdir)/validator/val_neg.h $(srcdir)/validator/val_sigcrypt.h $(srcdir)/validator/autotrust.h \ + $(srcdir)/services/cache/dns.h $(srcdir)/util/data/dname.h $(srcdir)/util/net_help.h $(srcdir)/util/regional.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/netevent.h $(srcdir)/util/tube.h \ + $(srcdir)/services/mesh.h $(srcdir)/services/modstack.h $(srcdir)/ldns/wire2str.h +val_kcache.lo val_kcache.o: $(srcdir)/validator/val_kcache.c config.h $(srcdir)/validator/val_kcache.h \ + $(srcdir)/util/storage/slabhash.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/validator/val_kentry.h $(srcdir)/util/config_file.h $(srcdir)/util/data/dname.h \ + $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h +val_kentry.lo val_kentry.o: $(srcdir)/validator/val_kentry.c config.h $(srcdir)/validator/val_kentry.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/data/dname.h $(srcdir)/util/storage/lookup3.h $(srcdir)/util/regional.h $(srcdir)/util/net_help.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/keyraw.h \ + +val_neg.lo val_neg.o: $(srcdir)/validator/val_neg.c config.h \ + $(srcdir)/validator/val_neg.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/rbtree.h \ + $(srcdir)/validator/val_nsec.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/validator/val_nsec3.h $(srcdir)/validator/val_utils.h $(srcdir)/util/data/dname.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/net_help.h $(srcdir)/util/config_file.h \ + $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/services/cache/dns.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/sbuffer.h +val_nsec3.lo val_nsec3.o: $(srcdir)/validator/val_nsec3.c config.h \ + $(srcdir)/validator/val_nsec3.h $(srcdir)/util/rbtree.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/validator/validator.h \ + $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/validator/val_utils.h $(srcdir)/validator/val_kentry.h \ + $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/util/regional.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/data/dname.h $(srcdir)/validator/val_nsec.h $(srcdir)/ldns/sbuffer.h +val_nsec.lo val_nsec.o: $(srcdir)/validator/val_nsec.c config.h $(srcdir)/validator/val_nsec.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/validator/val_utils.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/dname.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/module.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h +val_secalgo.lo val_secalgo.o: $(srcdir)/validator/val_secalgo.c config.h $(srcdir)/validator/val_secalgo.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/keyraw.h \ + $(srcdir)/ldns/sbuffer.h \ + +val_sigcrypt.lo val_sigcrypt.o: $(srcdir)/validator/val_sigcrypt.c config.h \ + $(srcdir)/validator/val_sigcrypt.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/validator/val_secalgo.h $(srcdir)/validator/validator.h \ + $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/validator/val_utils.h $(srcdir)/util/data/dname.h $(srcdir)/util/rbtree.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/regional.h $(srcdir)/ldns/keyraw.h \ + $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/parseutil.h $(srcdir)/ldns/wire2str.h \ + +val_utils.lo val_utils.o: $(srcdir)/validator/val_utils.c config.h $(srcdir)/validator/val_utils.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/validator/validator.h $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/validator/val_kentry.h \ + $(srcdir)/validator/val_sigcrypt.h $(srcdir)/validator/val_anchor.h $(srcdir)/util/rbtree.h \ + $(srcdir)/validator/val_nsec.h $(srcdir)/validator/val_neg.h $(srcdir)/services/cache/rrset.h \ + $(srcdir)/util/storage/slabhash.h $(srcdir)/services/cache/dns.h $(srcdir)/util/data/dname.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/regional.h +dns64.lo dns64.o: $(srcdir)/dns64/dns64.c config.h $(srcdir)/dns64/dns64.h $(srcdir)/util/module.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ + $(srcdir)/services/cache/dns.h $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/netevent.h $(srcdir)/util/tube.h \ + $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h $(srcdir)/services/modstack.h $(srcdir)/util/net_help.h \ + $(srcdir)/util/regional.h +checklocks.lo checklocks.o: $(srcdir)/testcode/checklocks.c config.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/testcode/checklocks.h +unitanchor.lo unitanchor.o: $(srcdir)/testcode/unitanchor.c config.h $(srcdir)/util/log.h $(srcdir)/util/data/dname.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/testcode/unitmain.h \ + $(srcdir)/validator/val_anchor.h $(srcdir)/util/rbtree.h $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/rrdef.h +unitdname.lo unitdname.o: $(srcdir)/testcode/unitdname.c config.h $(srcdir)/util/log.h $(srcdir)/testcode/unitmain.h \ + $(srcdir)/util/data/dname.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/ldns/str2wire.h $(srcdir)/ldns/rrdef.h +unitlruhash.lo unitlruhash.o: $(srcdir)/testcode/unitlruhash.c config.h $(srcdir)/testcode/unitmain.h \ + $(srcdir)/util/log.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/storage/slabhash.h +unitmain.lo unitmain.o: $(srcdir)/testcode/unitmain.c config.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/keyraw.h \ + $(srcdir)/util/log.h $(srcdir)/testcode/unitmain.h $(srcdir)/util/alloc.h $(srcdir)/util/locks.h $(srcdir)/util/net_help.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/rtt.h $(srcdir)/services/cache/infra.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/random.h +unitmsgparse.lo unitmsgparse.o: $(srcdir)/testcode/unitmsgparse.c config.h $(srcdir)/util/log.h \ + $(srcdir)/testcode/unitmain.h $(srcdir)/util/data/msgparse.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/locks.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgencode.h $(srcdir)/util/data/dname.h \ + $(srcdir)/util/alloc.h $(srcdir)/util/regional.h $(srcdir)/util/net_help.h $(srcdir)/testcode/readhex.h \ + $(srcdir)/testcode/testpkts.h $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/str2wire.h $(srcdir)/ldns/wire2str.h +unitneg.lo unitneg.o: $(srcdir)/testcode/unitneg.c config.h $(srcdir)/util/log.h $(srcdir)/util/net_help.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ + $(srcdir)/util/data/dname.h $(srcdir)/testcode/unitmain.h $(srcdir)/validator/val_neg.h $(srcdir)/util/rbtree.h \ + $(srcdir)/ldns/rrdef.h +unitregional.lo unitregional.o: $(srcdir)/testcode/unitregional.c config.h $(srcdir)/testcode/unitmain.h \ + $(srcdir)/util/log.h $(srcdir)/util/regional.h +unitslabhash.lo unitslabhash.o: $(srcdir)/testcode/unitslabhash.c config.h $(srcdir)/testcode/unitmain.h \ + $(srcdir)/util/log.h $(srcdir)/util/storage/slabhash.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h +unitverify.lo unitverify.o: $(srcdir)/testcode/unitverify.c config.h $(srcdir)/util/log.h \ + $(srcdir)/testcode/unitmain.h $(srcdir)/validator/val_sigcrypt.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/validator/val_secalgo.h \ + $(srcdir)/validator/val_nsec.h $(srcdir)/validator/val_nsec3.h $(srcdir)/util/rbtree.h \ + $(srcdir)/validator/validator.h $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/validator/val_utils.h \ + $(srcdir)/testcode/testpkts.h $(srcdir)/util/data/dname.h $(srcdir)/util/regional.h $(srcdir)/util/alloc.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/config_file.h $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/keyraw.h \ + $(srcdir)/ldns/str2wire.h $(srcdir)/ldns/wire2str.h +readhex.lo readhex.o: $(srcdir)/testcode/readhex.c config.h $(srcdir)/testcode/readhex.h $(srcdir)/util/log.h \ + $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/parseutil.h +testpkts.lo testpkts.o: $(srcdir)/testcode/testpkts.c config.h $(srcdir)/testcode/testpkts.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/log.h $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/pkthdr.h \ + $(srcdir)/ldns/str2wire.h $(srcdir)/ldns/wire2str.h +unitldns.lo unitldns.o: $(srcdir)/testcode/unitldns.c config.h $(srcdir)/util/log.h $(srcdir)/testcode/unitmain.h \ + $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/str2wire.h $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/wire2str.h +acl_list.lo acl_list.o: $(srcdir)/daemon/acl_list.c config.h $(srcdir)/daemon/acl_list.h \ + $(srcdir)/util/storage/dnstree.h $(srcdir)/util/rbtree.h $(srcdir)/util/regional.h $(srcdir)/util/log.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/net_help.h +cachedump.lo cachedump.o: $(srcdir)/daemon/cachedump.c config.h \ + $(srcdir)/daemon/cachedump.h $(srcdir)/daemon/remote.h $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h \ + $(srcdir)/ldns/sbuffer.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/netevent.h $(srcdir)/util/alloc.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ + $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h $(srcdir)/services/cache/rrset.h \ + $(srcdir)/util/storage/slabhash.h $(srcdir)/services/cache/dns.h $(srcdir)/services/cache/infra.h \ + $(srcdir)/util/rtt.h $(srcdir)/util/regional.h $(srcdir)/util/net_help.h $(srcdir)/util/data/dname.h \ + $(srcdir)/iterator/iterator.h $(srcdir)/services/outbound_list.h $(srcdir)/iterator/iter_delegpt.h \ + $(srcdir)/iterator/iter_utils.h $(srcdir)/iterator/iter_resptype.h $(srcdir)/iterator/iter_fwd.h \ + $(srcdir)/util/rbtree.h $(srcdir)/iterator/iter_hints.h $(srcdir)/util/storage/dnstree.h \ + $(srcdir)/ldns/wire2str.h $(srcdir)/ldns/str2wire.h +daemon.lo daemon.o: $(srcdir)/daemon/daemon.c config.h \ + $(srcdir)/daemon/daemon.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/alloc.h $(srcdir)/services/modstack.h \ + $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/netevent.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ + $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h $(srcdir)/daemon/remote.h \ + $(srcdir)/daemon/acl_list.h $(srcdir)/util/storage/dnstree.h $(srcdir)/util/rbtree.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/storage/lookup3.h $(srcdir)/util/storage/slabhash.h \ + $(srcdir)/services/listen_dnsport.h $(srcdir)/services/cache/rrset.h $(srcdir)/services/cache/infra.h \ + $(srcdir)/util/rtt.h $(srcdir)/services/localzone.h $(srcdir)/util/random.h $(srcdir)/util/tube.h \ + $(srcdir)/util/net_help.h $(srcdir)/ldns/keyraw.h +remote.lo remote.o: $(srcdir)/daemon/remote.c config.h \ + $(srcdir)/daemon/remote.h \ + $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/alloc.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h \ + $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h \ + $(srcdir)/daemon/daemon.h $(srcdir)/services/modstack.h $(srcdir)/daemon/cachedump.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/net_help.h $(srcdir)/services/listen_dnsport.h \ + $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/services/cache/infra.h \ + $(srcdir)/util/rtt.h $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h $(srcdir)/services/localzone.h \ + $(srcdir)/util/fptr_wlist.h $(srcdir)/util/tube.h $(srcdir)/util/data/dname.h $(srcdir)/validator/validator.h \ + $(srcdir)/validator/val_utils.h $(srcdir)/validator/val_kcache.h $(srcdir)/validator/val_kentry.h \ + $(srcdir)/validator/val_anchor.h $(srcdir)/iterator/iterator.h $(srcdir)/services/outbound_list.h \ + $(srcdir)/iterator/iter_fwd.h $(srcdir)/iterator/iter_hints.h $(srcdir)/util/storage/dnstree.h \ + $(srcdir)/iterator/iter_delegpt.h $(srcdir)/services/outside_network.h $(srcdir)/ldns/str2wire.h \ + $(srcdir)/ldns/parseutil.h $(srcdir)/ldns/wire2str.h +stats.lo stats.o: $(srcdir)/daemon/stats.c config.h $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h \ + $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/alloc.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h \ + $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/module.h $(srcdir)/daemon/daemon.h \ + $(srcdir)/services/modstack.h $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h \ + $(srcdir)/services/outside_network.h $(srcdir)/util/config_file.h $(srcdir)/util/tube.h \ + $(srcdir)/util/net_help.h $(srcdir)/validator/validator.h $(srcdir)/validator/val_utils.h \ + $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/services/cache/infra.h \ + $(srcdir)/util/rtt.h $(srcdir)/validator/val_kcache.h +unbound.lo unbound.o: $(srcdir)/daemon/unbound.c config.h $(srcdir)/util/log.h $(srcdir)/daemon/daemon.h \ + $(srcdir)/util/locks.h $(srcdir)/util/alloc.h $(srcdir)/services/modstack.h $(srcdir)/daemon/remote.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/storage/slabhash.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/services/listen_dnsport.h $(srcdir)/util/netevent.h $(srcdir)/services/cache/rrset.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/services/cache/infra.h $(srcdir)/util/rtt.h \ + $(srcdir)/util/fptr_wlist.h $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/tube.h \ + $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h $(srcdir)/util/net_help.h $(srcdir)/util/mini_event.h \ + $(srcdir)/util/rbtree.h +worker.lo worker.o: $(srcdir)/daemon/worker.c config.h $(srcdir)/util/log.h $(srcdir)/util/net_help.h \ + $(srcdir)/util/random.h $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/alloc.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h \ + $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h \ + $(srcdir)/daemon/daemon.h $(srcdir)/services/modstack.h $(srcdir)/daemon/remote.h \ + $(srcdir)/daemon/acl_list.h $(srcdir)/util/storage/dnstree.h $(srcdir)/util/rbtree.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/regional.h $(srcdir)/util/storage/slabhash.h \ + $(srcdir)/services/listen_dnsport.h $(srcdir)/services/outside_network.h \ + $(srcdir)/services/outbound_list.h $(srcdir)/services/cache/rrset.h $(srcdir)/services/cache/infra.h \ + $(srcdir)/util/rtt.h $(srcdir)/services/cache/dns.h $(srcdir)/services/mesh.h $(srcdir)/services/localzone.h \ + $(srcdir)/util/data/msgencode.h $(srcdir)/util/data/dname.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/tube.h \ + $(srcdir)/iterator/iter_fwd.h $(srcdir)/iterator/iter_hints.h $(srcdir)/validator/autotrust.h \ + $(srcdir)/validator/val_anchor.h $(srcdir)/libunbound/context.h $(srcdir)/libunbound/unbound.h \ + $(srcdir)/libunbound/libworker.h +testbound.lo testbound.o: $(srcdir)/testcode/testbound.c config.h $(srcdir)/testcode/testpkts.h \ + $(srcdir)/testcode/replay.h $(srcdir)/util/netevent.h $(srcdir)/util/rbtree.h $(srcdir)/testcode/fake_event.h \ + $(srcdir)/daemon/remote.h \ + $(srcdir)/util/config_file.h $(srcdir)/ldns/keyraw.h $(srcdir)/daemon/unbound.c $(srcdir)/util/log.h \ + $(srcdir)/daemon/daemon.h $(srcdir)/util/locks.h $(srcdir)/util/alloc.h $(srcdir)/services/modstack.h \ + $(srcdir)/util/storage/slabhash.h $(srcdir)/util/storage/lruhash.h $(srcdir)/services/listen_dnsport.h \ + $(srcdir)/services/cache/rrset.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/services/cache/infra.h \ + $(srcdir)/util/rtt.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/tube.h \ + $(srcdir)/services/mesh.h $(srcdir)/util/net_help.h $(srcdir)/util/mini_event.h $(srcdir)/util/rbtree.h +testpkts.lo testpkts.o: $(srcdir)/testcode/testpkts.c config.h $(srcdir)/testcode/testpkts.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/log.h $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/pkthdr.h \ + $(srcdir)/ldns/str2wire.h $(srcdir)/ldns/wire2str.h +worker.lo worker.o: $(srcdir)/daemon/worker.c config.h $(srcdir)/util/log.h $(srcdir)/util/net_help.h \ + $(srcdir)/util/random.h $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/alloc.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h \ + $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h \ + $(srcdir)/daemon/daemon.h $(srcdir)/services/modstack.h $(srcdir)/daemon/remote.h \ + $(srcdir)/daemon/acl_list.h $(srcdir)/util/storage/dnstree.h $(srcdir)/util/rbtree.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/regional.h $(srcdir)/util/storage/slabhash.h \ + $(srcdir)/services/listen_dnsport.h $(srcdir)/services/outside_network.h \ + $(srcdir)/services/outbound_list.h $(srcdir)/services/cache/rrset.h $(srcdir)/services/cache/infra.h \ + $(srcdir)/util/rtt.h $(srcdir)/services/cache/dns.h $(srcdir)/services/mesh.h $(srcdir)/services/localzone.h \ + $(srcdir)/util/data/msgencode.h $(srcdir)/util/data/dname.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/tube.h \ + $(srcdir)/iterator/iter_fwd.h $(srcdir)/iterator/iter_hints.h $(srcdir)/validator/autotrust.h \ + $(srcdir)/validator/val_anchor.h $(srcdir)/libunbound/context.h $(srcdir)/libunbound/unbound.h \ + $(srcdir)/libunbound/libworker.h +acl_list.lo acl_list.o: $(srcdir)/daemon/acl_list.c config.h $(srcdir)/daemon/acl_list.h \ + $(srcdir)/util/storage/dnstree.h $(srcdir)/util/rbtree.h $(srcdir)/util/regional.h $(srcdir)/util/log.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/net_help.h +daemon.lo daemon.o: $(srcdir)/daemon/daemon.c config.h \ + $(srcdir)/daemon/daemon.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/alloc.h $(srcdir)/services/modstack.h \ + $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/netevent.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ + $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h $(srcdir)/daemon/remote.h \ + $(srcdir)/daemon/acl_list.h $(srcdir)/util/storage/dnstree.h $(srcdir)/util/rbtree.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/storage/lookup3.h $(srcdir)/util/storage/slabhash.h \ + $(srcdir)/services/listen_dnsport.h $(srcdir)/services/cache/rrset.h $(srcdir)/services/cache/infra.h \ + $(srcdir)/util/rtt.h $(srcdir)/services/localzone.h $(srcdir)/util/random.h $(srcdir)/util/tube.h \ + $(srcdir)/util/net_help.h $(srcdir)/ldns/keyraw.h +stats.lo stats.o: $(srcdir)/daemon/stats.c config.h $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h \ + $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/alloc.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h \ + $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/module.h $(srcdir)/daemon/daemon.h \ + $(srcdir)/services/modstack.h $(srcdir)/services/mesh.h $(srcdir)/util/rbtree.h \ + $(srcdir)/services/outside_network.h $(srcdir)/util/config_file.h $(srcdir)/util/tube.h \ + $(srcdir)/util/net_help.h $(srcdir)/validator/validator.h $(srcdir)/validator/val_utils.h \ + $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/services/cache/infra.h \ + $(srcdir)/util/rtt.h $(srcdir)/validator/val_kcache.h +replay.lo replay.o: $(srcdir)/testcode/replay.c config.h $(srcdir)/util/log.h $(srcdir)/util/net_help.h \ + $(srcdir)/util/config_file.h $(srcdir)/testcode/replay.h $(srcdir)/util/netevent.h $(srcdir)/testcode/testpkts.h \ + $(srcdir)/util/rbtree.h $(srcdir)/testcode/fake_event.h $(srcdir)/ldns/str2wire.h $(srcdir)/ldns/rrdef.h +fake_event.lo fake_event.o: $(srcdir)/testcode/fake_event.c config.h $(srcdir)/testcode/fake_event.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/net_help.h $(srcdir)/util/log.h $(srcdir)/util/data/msgparse.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgencode.h \ + $(srcdir)/util/data/dname.h $(srcdir)/util/config_file.h $(srcdir)/services/listen_dnsport.h \ + $(srcdir)/services/outside_network.h $(srcdir)/util/rbtree.h $(srcdir)/services/cache/infra.h \ + $(srcdir)/util/rtt.h $(srcdir)/testcode/replay.h $(srcdir)/testcode/testpkts.h $(srcdir)/util/fptr_wlist.h \ + $(srcdir)/util/module.h $(srcdir)/util/tube.h $(srcdir)/services/mesh.h $(srcdir)/services/modstack.h \ + $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/wire2str.h $(srcdir)/ldns/str2wire.h +lock_verify.lo lock_verify.o: $(srcdir)/testcode/lock_verify.c config.h $(srcdir)/util/log.h $(srcdir)/util/rbtree.h \ + $(srcdir)/util/locks.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/netevent.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/tube.h \ + $(srcdir)/services/mesh.h $(srcdir)/services/modstack.h +pktview.lo pktview.o: $(srcdir)/testcode/pktview.c config.h $(srcdir)/util/log.h $(srcdir)/util/data/dname.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/testcode/unitmain.h $(srcdir)/testcode/readhex.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/ldns/parseutil.h +readhex.lo readhex.o: $(srcdir)/testcode/readhex.c config.h $(srcdir)/testcode/readhex.h $(srcdir)/util/log.h \ + $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/parseutil.h +memstats.lo memstats.o: $(srcdir)/testcode/memstats.c config.h $(srcdir)/util/log.h $(srcdir)/util/rbtree.h \ + $(srcdir)/util/locks.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/netevent.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/tube.h \ + $(srcdir)/services/mesh.h $(srcdir)/services/modstack.h +unbound-checkconf.lo unbound-checkconf.o: $(srcdir)/smallapp/unbound-checkconf.c config.h $(srcdir)/util/log.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/module.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgparse.h \ + $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/net_help.h $(srcdir)/util/regional.h \ + $(srcdir)/iterator/iterator.h $(srcdir)/services/outbound_list.h $(srcdir)/iterator/iter_fwd.h \ + $(srcdir)/util/rbtree.h $(srcdir)/iterator/iter_hints.h $(srcdir)/util/storage/dnstree.h \ + $(srcdir)/validator/validator.h $(srcdir)/validator/val_utils.h $(srcdir)/services/localzone.h \ + $(srcdir)/ldns/sbuffer.h +worker_cb.lo worker_cb.o: $(srcdir)/smallapp/worker_cb.c config.h $(srcdir)/libunbound/context.h \ + $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/alloc.h $(srcdir)/util/rbtree.h $(srcdir)/services/modstack.h \ + $(srcdir)/libunbound/unbound.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h $(srcdir)/util/fptr_wlist.h $(srcdir)/util/netevent.h \ + $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/util/tube.h $(srcdir)/services/mesh.h +context.lo context.o: $(srcdir)/libunbound/context.c config.h $(srcdir)/libunbound/context.h \ + $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/alloc.h $(srcdir)/util/rbtree.h $(srcdir)/services/modstack.h \ + $(srcdir)/libunbound/unbound.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/util/config_file.h $(srcdir)/util/net_help.h $(srcdir)/services/localzone.h \ + $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/services/cache/infra.h \ + $(srcdir)/util/rtt.h $(srcdir)/ldns/sbuffer.h +libunbound.lo libunbound.o: $(srcdir)/libunbound/libunbound.c $(srcdir)/libunbound/unbound.h \ + $(srcdir)/libunbound/unbound-event.h config.h $(srcdir)/libunbound/context.h $(srcdir)/util/locks.h \ + $(srcdir)/util/log.h $(srcdir)/util/alloc.h $(srcdir)/util/rbtree.h $(srcdir)/services/modstack.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/libunbound/libworker.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/regional.h \ + $(srcdir)/util/random.h $(srcdir)/util/net_help.h $(srcdir)/util/tube.h $(srcdir)/services/localzone.h \ + $(srcdir)/services/cache/infra.h $(srcdir)/util/rtt.h $(srcdir)/services/cache/rrset.h \ + $(srcdir)/util/storage/slabhash.h $(srcdir)/ldns/sbuffer.h +libworker.lo libworker.o: $(srcdir)/libunbound/libworker.c config.h \ + $(srcdir)/libunbound/libworker.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/libunbound/context.h $(srcdir)/util/alloc.h $(srcdir)/util/rbtree.h \ + $(srcdir)/services/modstack.h $(srcdir)/libunbound/unbound.h $(srcdir)/libunbound/worker.h \ + $(srcdir)/ldns/sbuffer.h $(srcdir)/libunbound/unbound-event.h $(srcdir)/services/outside_network.h \ + $(srcdir)/util/netevent.h $(srcdir)/services/mesh.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/util/module.h $(srcdir)/util/data/msgreply.h $(srcdir)/services/localzone.h \ + $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/services/outbound_list.h \ + $(srcdir)/util/fptr_wlist.h $(srcdir)/util/tube.h $(srcdir)/util/regional.h $(srcdir)/util/random.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/storage/lookup3.h $(srcdir)/util/net_help.h \ + $(srcdir)/util/data/dname.h $(srcdir)/util/data/msgencode.h $(srcdir)/iterator/iter_fwd.h \ + $(srcdir)/iterator/iter_hints.h $(srcdir)/util/storage/dnstree.h $(srcdir)/ldns/str2wire.h +unbound-host.lo unbound-host.o: $(srcdir)/smallapp/unbound-host.c config.h $(srcdir)/libunbound/unbound.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/wire2str.h +asynclook.lo asynclook.o: $(srcdir)/testcode/asynclook.c config.h $(srcdir)/libunbound/unbound.h \ + $(srcdir)/libunbound/context.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/alloc.h $(srcdir)/util/rbtree.h \ + $(srcdir)/services/modstack.h $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/ldns/rrdef.h +streamtcp.lo streamtcp.o: $(srcdir)/testcode/streamtcp.c config.h $(srcdir)/util/locks.h $(srcdir)/util/log.h \ + $(srcdir)/util/net_help.h $(srcdir)/util/data/msgencode.h $(srcdir)/util/data/msgparse.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/dname.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/ldns/str2wire.h $(srcdir)/ldns/wire2str.h \ + +perf.lo perf.o: $(srcdir)/testcode/perf.c config.h $(srcdir)/util/log.h $(srcdir)/util/locks.h $(srcdir)/util/net_help.h \ + $(srcdir)/util/data/msgencode.h $(srcdir)/util/data/msgreply.h $(srcdir)/util/storage/lruhash.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ + $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/wire2str.h $(srcdir)/ldns/str2wire.h +delayer.lo delayer.o: $(srcdir)/testcode/delayer.c config.h $(srcdir)/util/net_help.h $(srcdir)/util/log.h \ + $(srcdir)/util/config_file.h $(srcdir)/ldns/sbuffer.h +unbound-control.lo unbound-control.o: $(srcdir)/smallapp/unbound-control.c config.h \ + $(srcdir)/util/log.h $(srcdir)/util/config_file.h $(srcdir)/util/locks.h $(srcdir)/util/net_help.h +unbound-anchor.lo unbound-anchor.o: $(srcdir)/smallapp/unbound-anchor.c config.h $(srcdir)/libunbound/unbound.h \ + $(srcdir)/ldns/rrdef.h \ + +petal.lo petal.o: $(srcdir)/testcode/petal.c config.h \ + +pythonmod_utils.lo pythonmod_utils.o: $(srcdir)/pythonmod/pythonmod_utils.c config.h $(srcdir)/util/module.h \ + $(srcdir)/util/storage/lruhash.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/data/msgreply.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ + $(srcdir)/util/netevent.h $(srcdir)/util/net_help.h $(srcdir)/services/cache/dns.h \ + $(srcdir)/services/cache/rrset.h $(srcdir)/util/storage/slabhash.h $(srcdir)/util/regional.h \ + $(srcdir)/ldns/sbuffer.h +win_svc.lo win_svc.o: $(srcdir)/winrc/win_svc.c config.h $(srcdir)/winrc/win_svc.h $(srcdir)/winrc/w_inst.h \ + $(srcdir)/daemon/daemon.h $(srcdir)/util/locks.h $(srcdir)/util/log.h $(srcdir)/util/alloc.h $(srcdir)/services/modstack.h \ + $(srcdir)/daemon/worker.h $(srcdir)/libunbound/worker.h $(srcdir)/ldns/sbuffer.h \ + $(srcdir)/util/data/packed_rrset.h $(srcdir)/util/storage/lruhash.h $(srcdir)/util/netevent.h \ + $(srcdir)/util/data/msgreply.h $(srcdir)/util/data/msgparse.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/rrdef.h \ + $(srcdir)/daemon/stats.h $(srcdir)/util/timehist.h $(srcdir)/util/module.h $(srcdir)/daemon/remote.h \ + $(srcdir)/util/config_file.h $(srcdir)/util/winsock_event.h +w_inst.lo w_inst.o: $(srcdir)/winrc/w_inst.c config.h $(srcdir)/winrc/w_inst.h $(srcdir)/winrc/win_svc.h +unbound-service-install.lo unbound-service-install.o: $(srcdir)/winrc/unbound-service-install.c config.h \ + $(srcdir)/winrc/w_inst.h +unbound-service-remove.lo unbound-service-remove.o: $(srcdir)/winrc/unbound-service-remove.c config.h \ + $(srcdir)/winrc/w_inst.h +anchor-update.lo anchor-update.o: $(srcdir)/winrc/anchor-update.c config.h $(srcdir)/libunbound/unbound.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/wire2str.h +keyraw.lo keyraw.o: $(srcdir)/ldns/keyraw.c config.h $(srcdir)/ldns/keyraw.h \ + $(srcdir)/ldns/rrdef.h \ + +sbuffer.lo sbuffer.o: $(srcdir)/ldns/sbuffer.c config.h $(srcdir)/ldns/sbuffer.h +wire2str.lo wire2str.o: $(srcdir)/ldns/wire2str.c config.h $(srcdir)/ldns/wire2str.h $(srcdir)/ldns/str2wire.h \ + $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/pkthdr.h $(srcdir)/ldns/parseutil.h $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/keyraw.h \ + +parse.lo parse.o: $(srcdir)/ldns/parse.c config.h $(srcdir)/ldns/parse.h $(srcdir)/ldns/parseutil.h \ + $(srcdir)/ldns/sbuffer.h +parseutil.lo parseutil.o: $(srcdir)/ldns/parseutil.c config.h $(srcdir)/ldns/parseutil.h +rrdef.lo rrdef.o: $(srcdir)/ldns/rrdef.c config.h $(srcdir)/ldns/rrdef.h $(srcdir)/ldns/parseutil.h +str2wire.lo str2wire.o: $(srcdir)/ldns/str2wire.c config.h $(srcdir)/ldns/str2wire.h $(srcdir)/ldns/rrdef.h \ + $(srcdir)/ldns/wire2str.h $(srcdir)/ldns/sbuffer.h $(srcdir)/ldns/parse.h $(srcdir)/ldns/parseutil.h +ctime_r.lo ctime_r.o: $(srcdir)/compat/ctime_r.c config.h $(srcdir)/util/locks.h $(srcdir)/util/log.h +fake-rfc2553.lo fake-rfc2553.o: $(srcdir)/compat/fake-rfc2553.c $(srcdir)/compat/fake-rfc2553.h config.h +gmtime_r.lo gmtime_r.o: $(srcdir)/compat/gmtime_r.c config.h +inet_aton.lo inet_aton.o: $(srcdir)/compat/inet_aton.c config.h +inet_ntop.lo inet_ntop.o: $(srcdir)/compat/inet_ntop.c config.h +inet_pton.lo inet_pton.o: $(srcdir)/compat/inet_pton.c config.h +malloc.lo malloc.o: $(srcdir)/compat/malloc.c config.h +memcmp.lo memcmp.o: $(srcdir)/compat/memcmp.c config.h +memmove.lo memmove.o: $(srcdir)/compat/memmove.c config.h +snprintf.lo snprintf.o: $(srcdir)/compat/snprintf.c config.h +strlcat.lo strlcat.o: $(srcdir)/compat/strlcat.c config.h +strlcpy.lo strlcpy.o: $(srcdir)/compat/strlcpy.c config.h +strptime.lo strptime.o: $(srcdir)/compat/strptime.c config.h +getentropy_linux.lo getentropy_linux.o: $(srcdir)/compat/getentropy_linux.c config.h \ + +getentropy_osx.lo getentropy_osx.o: $(srcdir)/compat/getentropy_osx.c config.h +getentropy_solaris.lo getentropy_solaris.o: $(srcdir)/compat/getentropy_solaris.c config.h +getentropy_win.lo getentropy_win.o: $(srcdir)/compat/getentropy_win.c +explicit_bzero.lo explicit_bzero.o: $(srcdir)/compat/explicit_bzero.c config.h +arc4random.lo arc4random.o: $(srcdir)/compat/arc4random.c config.h $(srcdir)/compat/chacha_private.h +arc4random_uniform.lo arc4random_uniform.o: $(srcdir)/compat/arc4random_uniform.c config.h +arc4_lock.lo arc4_lock.o: $(srcdir)/compat/arc4_lock.c config.h $(srcdir)/util/locks.h +sha512.lo sha512.o: $(srcdir)/compat/sha512.c config.h Modified: head/contrib/unbound/aclocal.m4 ============================================================================== --- head/contrib/unbound/aclocal.m4 Sat Jan 3 02:39:28 2015 (r276604) +++ head/contrib/unbound/aclocal.m4 Sat Jan 3 02:40:51 2015 (r276605) @@ -1,6 +1,6 @@ -# generated automatically by aclocal 1.12.2 -*- Autoconf -*- +# generated automatically by aclocal 1.13.4 -*- Autoconf -*- -# Copyright (C) 1996-2012 Free Software Foundation, Inc. +# Copyright (C) 1996-2013 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -11,6 +11,7 @@ # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. +m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, @@ -1317,7 +1318,7 @@ ia64-*-hpux*) rm -rf conftest* ;; -x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \ +x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext @@ -1331,7 +1332,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux* x86_64-*linux*) LD="${LD-ld} -m elf_i386" ;; - ppc64-*linux*|powerpc64-*linux*) + powerpc64le-*linux*) + LD="${LD-ld} -m elf32lppclinux" + ;; + powerpc64-*linux*) LD="${LD-ld} -m elf32ppclinux" ;; s390x-*linux*) @@ -1350,7 +1354,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux* x86_64-*linux*) LD="${LD-ld} -m elf_x86_64" ;; - ppc*-*linux*|powerpc*-*linux*) + powerpcle-*linux*) + LD="${LD-ld} -m elf64lppc" + ;; + powerpc-*linux*) LD="${LD-ld} -m elf64ppc" ;; s390*-*linux*|s390*-*tpf*) Modified: head/contrib/unbound/acx_python.m4 ============================================================================== --- head/contrib/unbound/acx_python.m4 Sat Jan 3 02:39:28 2015 (r276604) +++ head/contrib/unbound/acx_python.m4 Sat Jan 3 02:40:51 2015 (r276605) @@ -14,58 +14,11 @@ AC_DEFUN([AC_PYTHON_DEVEL],[ fi if test -z "$PYTHON_VERSION"; then - PYTHON_VERSION=`$PYTHON -c "import sys, string; \ - print string.split(sys.version)[[0]]"` + PYTHON_VERSION=`$PYTHON -c "import sys; \ + print(sys.version.split()[[0]])"` fi # - # Check for a version of Python >= 2.1.0 - # - AC_MSG_CHECKING([for a version of Python >= '2.1.0']) - ac_supports_python_ver=`$PYTHON -c "import sys, string; \ - ver = string.split(sys.version)[[0]]; \ - print ver >= '2.1.0'"` - if test "$ac_supports_python_ver" != "True"; then - if test -z "$PYTHON_NOVERSIONCHECK"; then - AC_MSG_RESULT([no]) - AC_MSG_FAILURE([ -This version of the AC@&t@_PYTHON_DEVEL macro -doesn't work properly with versions of Python before -2.1.0. You may need to re-run configure, setting the -variables PYTHON_CPPFLAGS, PYTHON_LDFLAGS, PYTHON_SITE_PKG, -PYTHON_EXTRA_LIBS and PYTHON_EXTRA_LDFLAGS by hand. -Moreover, to disable this check, set PYTHON_NOVERSIONCHECK -to something else than an empty string. -]) - else - AC_MSG_RESULT([skip at user request]) - fi - else - AC_MSG_RESULT([yes]) - fi - - # - # if the macro parameter ``version'' is set, honour it - # - if test -n "$1"; then - AC_MSG_CHECKING([for a version of Python $1]) - ac_supports_python_ver=`$PYTHON -c "import sys, string; \ - ver = string.split(sys.version)[[0]]; \ - print ver $1"` - if test "$ac_supports_python_ver" = "True"; then - AC_MSG_RESULT([yes]) - else - AC_MSG_RESULT([no]) - AC_MSG_ERROR([this package requires Python $1. -If you have it installed, but it isn't the default Python -interpreter in your system path, please pass the PYTHON_VERSION -variable to configure. See ``configure --help'' for reference. -]) - PYTHON_VERSION="" - fi - fi - - # # Check if you have distutils, else fail # AC_MSG_CHECKING([for the distutils Python package]) @@ -86,7 +39,7 @@ $ac_distutils_result]) AC_MSG_CHECKING([for Python include path]) if test -z "$PYTHON_CPPFLAGS"; then python_path=`$PYTHON -c "import distutils.sysconfig; \ - print distutils.sysconfig.get_python_inc();"` + print(distutils.sysconfig.get_python_inc());"` if test -n "${python_path}"; then python_path="-I$python_path" fi @@ -100,25 +53,8 @@ $ac_distutils_result]) # AC_MSG_CHECKING([for Python library path]) if test -z "$PYTHON_LDFLAGS"; then - # (makes two attempts to ensure we've got a version number - # from the interpreter) - py_version=`$PYTHON -c "from distutils.sysconfig import *; \ - from string import join; \ - print join(get_config_vars('VERSION'))"` - if test "$py_version" = "[None]"; then - if test -n "$PYTHON_VERSION"; then - py_version=$PYTHON_VERSION - else - py_version=`$PYTHON -c "import sys; \ - print sys.version[[:3]]"` - fi - fi - PYTHON_LDFLAGS=`$PYTHON -c "from distutils.sysconfig import *; \ - from string import join; \ - print '-L' + get_python_lib(0,1), \ - '-L' + os.path.dirname(get_python_lib(0,1)), \ - '-lpython';"`$py_version + print(get_config_var('BLDLIBRARY'));"` fi AC_MSG_RESULT([$PYTHON_LDFLAGS]) AC_SUBST([PYTHON_LDFLAGS]) @@ -129,36 +65,12 @@ $ac_distutils_result]) AC_MSG_CHECKING([for Python site-packages path]) if test -z "$PYTHON_SITE_PKG"; then PYTHON_SITE_PKG=`$PYTHON -c "import distutils.sysconfig; \ - print distutils.sysconfig.get_python_lib(1,0);"` + print(distutils.sysconfig.get_python_lib(1,0));"` fi AC_MSG_RESULT([$PYTHON_SITE_PKG]) AC_SUBST([PYTHON_SITE_PKG]) # - # libraries which must be linked in when embedding - # - AC_MSG_CHECKING(python extra libraries) - if test -z "$PYTHON_EXTRA_LIBS"; then - PYTHON_EXTRA_LIBS=`$PYTHON -c "import distutils.sysconfig; \ - conf = distutils.sysconfig.get_config_var; \ - print conf('LOCALMODLIBS'), conf('LIBS')"` - fi - AC_MSG_RESULT([$PYTHON_EXTRA_LIBS]) - AC_SUBST(PYTHON_EXTRA_LIBS) - - # - # linking flags needed when embedding - # - AC_MSG_CHECKING(python extra linking flags) - if test -z "$PYTHON_EXTRA_LDFLAGS"; then - PYTHON_EXTRA_LDFLAGS=`$PYTHON -c "import distutils.sysconfig; \ - conf = distutils.sysconfig.get_config_var; \ - print conf('LINKFORSHARED')"` - fi - AC_MSG_RESULT([$PYTHON_EXTRA_LDFLAGS]) - AC_SUBST(PYTHON_EXTRA_LDFLAGS) - - # # final check to see if everything compiles alright # AC_MSG_CHECKING([consistency of all components of python development environment]) Copied and modified: head/contrib/unbound/compat/arc4_lock.c (from r276541, vendor/unbound/dist/compat/arc4_lock.c) ============================================================================== --- vendor/unbound/dist/compat/arc4_lock.c Fri Jan 2 17:31:36 2015 (r276541, copy source) +++ head/contrib/unbound/compat/arc4_lock.c Sat Jan 3 02:40:51 2015 (r276605) @@ -53,8 +53,10 @@ static int arc4lockinit = 0; void _ARC4_LOCK(void) { - if(!arc4lockinit) + if(!arc4lockinit) { + arc4lockinit = 1; lock_quick_init(&arc4lock); + } lock_quick_lock(&arc4lock); } Copied: head/contrib/unbound/compat/arc4random.c (from r276541, vendor/unbound/dist/compat/arc4random.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/contrib/unbound/compat/arc4random.c Sat Jan 3 02:40:51 2015 (r276605, copy of r276541, vendor/unbound/dist/compat/arc4random.c) @@ -0,0 +1,231 @@ +/* $OpenBSD: arc4random.c,v 1.41 2014/07/12 13:24:54 deraadt Exp $ */ + +/* + * Copyright (c) 1996, David Mazieres + * Copyright (c) 2008, Damien Miller + * Copyright (c) 2013, Markus Friedl + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ +#include "config.h" + +/* + * ChaCha based random number generator for OpenBSD. *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 03:35:25 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9E1D6F01; Sat, 3 Jan 2015 03:35:25 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7EEA42134; Sat, 3 Jan 2015 03:35:25 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t033ZPJh042079; Sat, 3 Jan 2015 03:35:25 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t033ZJmA042050; Sat, 3 Jan 2015 03:35:19 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201501030335.t033ZJmA042050@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Sat, 3 Jan 2015 03:35:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276606 - in head/sys: conf modules/aic7xxx/ahc/ahc_pci modules/aic7xxx/ahd modules/ath modules/bwn modules/ce modules/drm/r128 modules/drm/radeon modules/drm/via modules/drm2/i915kms m... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 03:35:25 -0000 Author: imp Date: Sat Jan 3 03:35:18 2015 New Revision: 276606 URL: https://svnweb.freebsd.org/changeset/base/276606 Log: Re-support CWARNFLAGS, lost when bsd.sys.mk was removed. Also, support CWARNFALGS.$file centrally so we don't have to have it in all the places. Remove a few warning flags that are no longer needed. Also, always use -Wno-unknown-pragma to (hopefully temporarily) work around #pragma ident in debug.h in the opensolaris code. Remove some stale warning suppression that's no longer necessary. Modified: head/sys/conf/files head/sys/conf/kern.mk head/sys/modules/aic7xxx/ahc/ahc_pci/Makefile head/sys/modules/aic7xxx/ahd/Makefile head/sys/modules/ath/Makefile head/sys/modules/bwn/Makefile head/sys/modules/ce/Makefile head/sys/modules/drm/r128/Makefile head/sys/modules/drm/radeon/Makefile head/sys/modules/drm/via/Makefile head/sys/modules/drm2/i915kms/Makefile head/sys/modules/dtrace/fasttrap/Makefile head/sys/modules/ibcore/Makefile head/sys/modules/ipfilter/Makefile head/sys/modules/ips/Makefile head/sys/modules/mlx4/Makefile head/sys/modules/mpr/Makefile head/sys/modules/mps/Makefile head/sys/modules/nxge/Makefile head/sys/modules/wlan/Makefile head/sys/modules/zfs/Makefile Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/conf/files Sat Jan 3 03:35:18 2015 (r276606) @@ -1270,17 +1270,16 @@ dev/drm/mga_irq.c optional mgadrm dev/drm/mga_state.c optional mgadrm dev/drm/mga_warp.c optional mgadrm dev/drm/r128_cce.c optional r128drm \ - compile-with "${NORMAL_C} ${NO_WUNUSED_VALUE} ${NO_WCONSTANT_CONVERSION}" + compile-with "${NORMAL_C} ${NO_WCONSTANT_CONVERSION}" dev/drm/r128_drv.c optional r128drm dev/drm/r128_irq.c optional r128drm -dev/drm/r128_state.c optional r128drm \ - compile-with "${NORMAL_C} ${NO_WUNUSED_VALUE}" +dev/drm/r128_state.c optional r128drm dev/drm/r300_cmdbuf.c optional radeondrm dev/drm/r600_blit.c optional radeondrm dev/drm/r600_cp.c optional radeondrm \ - compile-with "${NORMAL_C} ${NO_WUNUSED_VALUE} ${NO_WCONSTANT_CONVERSION}" + compile-with "${NORMAL_C} ${NO_WCONSTANT_CONVERSION}" dev/drm/radeon_cp.c optional radeondrm \ - compile-with "${NORMAL_C} ${NO_WUNUSED_VALUE} ${NO_WCONSTANT_CONVERSION}" + compile-with "${NORMAL_C} ${NO_WCONSTANT_CONVERSION}" dev/drm/radeon_cs.c optional radeondrm dev/drm/radeon_drv.c optional radeondrm dev/drm/radeon_irq.c optional radeondrm Modified: head/sys/conf/kern.mk ============================================================================== --- head/sys/conf/kern.mk Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/conf/kern.mk Sat Jan 3 03:35:18 2015 (r276606) @@ -17,12 +17,9 @@ CWARNFLAGS?= -Wall -Wredundant-decls -Wn # a false positive. .if ${COMPILER_TYPE} == "clang" NO_WCONSTANT_CONVERSION= -Wno-constant-conversion -NO_WARRAY_BOUNDS= -Wno-array-bounds NO_WSHIFT_COUNT_NEGATIVE= -Wno-shift-count-negative NO_WSHIFT_COUNT_OVERFLOW= -Wno-shift-count-overflow -NO_WUNUSED_VALUE= -Wno-unused-value NO_WSELF_ASSIGN= -Wno-self-assign -NO_WFORMAT_SECURITY= -Wno-format-security NO_WUNNEEDED_INTERNAL_DECL= -Wno-unneeded-internal-declaration NO_WSOMETIMES_UNINITIALIZED= -Wno-error-sometimes-uninitialized # Several other warnings which might be useful in some cases, but not severe @@ -31,10 +28,7 @@ NO_WSOMETIMES_UNINITIALIZED= -Wno-error- CWARNEXTRA?= -Wno-error-tautological-compare -Wno-error-empty-body \ -Wno-error-parentheses-equality -Wno-error-unused-function \ -Wno-error-pointer-sign -Wno-error-format -Wno-error-parentheses \ - -Wno-error-switch -Wno-error-switch \ - -Wno-error-shift-count-negative \ - -Wno-error-shift-count-overflow \ - -Wno-error-constant-conversion + -Wno-unknown-pragmas .endif .if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 40300 @@ -200,3 +194,6 @@ CFLAGS+= -std=iso9899:1999 .else # CSTD CFLAGS+= -std=${CSTD} .endif # CSTD + +# Pull in any CWARNFLAGS the modules have added. +CFLAGS+= ${CWARNFLAGS} ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/aic7xxx/ahc/ahc_pci/Makefile ============================================================================== --- head/sys/modules/aic7xxx/ahc/ahc_pci/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/aic7xxx/ahc/ahc_pci/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -13,4 +13,3 @@ CFLAGS+= -I${.CURDIR}/../../../../dev/ai .include CWARNFLAGS.ahc_pci.c= ${NO_WCONSTANT_CONVERSION} -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/aic7xxx/ahd/Makefile ============================================================================== --- head/sys/modules/aic7xxx/ahd/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/aic7xxx/ahd/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -44,4 +44,3 @@ CLEANFILES= ${GENSRCS} .include CWARNFLAGS.ahd_pci.c= ${NO_WCONSTANT_CONVERSION} -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/ath/Makefile ============================================================================== --- head/sys/modules/ath/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/ath/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -162,7 +162,6 @@ opt_ah.h: CWARNFLAGS.ah_regdomain.c= ${NO_WSHIFT_COUNT_NEGATIVE} ${NO_WSHIFT_COUNT_OVERFLOW} # XXX Work around clang warnings, until maintainer approves fix. CWARNFLAGS.if_ath.c= ${NO_WSOMETIMES_UNINITIALIZED} -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} # AR9300 HAL build overrides, as there's still some code to tidy up CWARNFLAGS.ar9300_eeprom.c= ${NO_WCONSTANT_CONVERSION} Modified: head/sys/modules/bwn/Makefile ============================================================================== --- head/sys/modules/bwn/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/bwn/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -10,4 +10,3 @@ SRCS+= device_if.h bus_if.h pci_if.h # XXX Work around clang warning, until maintainer approves fix. CWARNFLAGS.if_bwn.c= ${NO_WSOMETIMES_UNINITIALIZED} -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/ce/Makefile ============================================================================== --- head/sys/modules/ce/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/ce/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -28,4 +28,3 @@ opt_ng_cronyx.h: .include CWARNFLAGS.tau32-ddk.c= ${NO_WCONSTANT_CONVERSION} -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/drm/r128/Makefile ============================================================================== --- head/sys/modules/drm/r128/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/drm/r128/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -9,4 +9,3 @@ SRCS +=device_if.h bus_if.h pci_if.h opt CWARNFLAGS.r128_cce.c= -Wno-unused ${NO_WCONSTANT_CONVERSION} CWARNFLAGS.r128_state.c= -Wno-unused -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/drm/radeon/Makefile ============================================================================== --- head/sys/modules/drm/radeon/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/drm/radeon/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -10,4 +10,3 @@ SRCS +=device_if.h bus_if.h pci_if.h opt CWARNFLAGS.r600_cp.c= -Wno-unused ${NO_WCONSTANT_CONVERSION} CWARNFLAGS.radeon_cp.c= -Wno-unused ${NO_WCONSTANT_CONVERSION} -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/drm/via/Makefile ============================================================================== --- head/sys/modules/drm/via/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/drm/via/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -24,4 +24,3 @@ opt_drm.h: CWARNFLAGS.via_dma.c= -Wno-unused-value CWARNFLAGS.via_dmablit.c= -Wno-unused-value -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/drm2/i915kms/Makefile ============================================================================== --- head/sys/modules/drm2/i915kms/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/drm2/i915kms/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -53,4 +53,3 @@ SRCS += \ CWARNFLAGS.i915_debug.c= -Wno-unused-function CWARNFLAGS.intel_lvds.c= -Wno-unused CWARNFLAGS.intel_tv.c= -Wno-unused -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/dtrace/fasttrap/Makefile ============================================================================== --- head/sys/modules/dtrace/fasttrap/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/dtrace/fasttrap/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -28,5 +28,6 @@ CFLAGS+= -DSMP .include CFLAGS+= -include ${SYSDIR}/cddl/compat/opensolaris/sys/debug_compat.h + CWARNFLAGS+= -Wno-cast-qual CWARNFLAGS+= -Wno-unused Modified: head/sys/modules/ibcore/Makefile ============================================================================== --- head/sys/modules/ibcore/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/ibcore/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -21,4 +21,3 @@ CFLAGS+= -DINET6 -DINET -DOFED CFLAGS+= -Wno-cast-qual -Wno-pointer-arith ${GCC_MS_EXTENSIONS} CWARNFLAGS.cm.c= -Wno-unused-function -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/ipfilter/Makefile ============================================================================== --- head/sys/modules/ipfilter/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/ipfilter/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -31,4 +31,3 @@ CWARNFLAGS.ip_proxy.c= ${NO_WSELF_ASSIG CWARNFLAGS.ip_scan.c= -Wno-unused CWARNFLAGS.ip_state.c= -Wno-unused CWARNFLAGS.ip_sync.c= -Wno-unused -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/ips/Makefile ============================================================================== --- head/sys/modules/ips/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/ips/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -9,4 +9,3 @@ SRCS = ips.c ips_pci.c ips.h ips_disk.c # XXX Work around clang warning, until maintainer approves fix. CWARNFLAGS.ips.c= ${NO_WSOMETIMES_UNINITIALIZED} -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/mlx4/Makefile ============================================================================== --- head/sys/modules/mlx4/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/mlx4/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -15,4 +15,3 @@ CFLAGS+= -Wno-cast-qual -Wno-pointer-ari CFLAGS+= -fms-extensions CWARNFLAGS.mcg.c= -Wno-unused -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/mpr/Makefile ============================================================================== --- head/sys/modules/mpr/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/mpr/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -15,4 +15,3 @@ SRCS+= device_if.h bus_if.h pci_if.h CWARNFLAGS.mpr_sas.c= ${NO_WUNNEEDED_INTERNAL_DECL} # XXX Work around clang warning, until maintainer approves fix. CWARNFLAGS.mpr_mapping.c= ${NO_WSOMETIMES_UNINITIALIZED} -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/mps/Makefile ============================================================================== --- head/sys/modules/mps/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/mps/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -15,4 +15,3 @@ SRCS+= device_if.h bus_if.h pci_if.h CWARNFLAGS.mps_sas.c= ${NO_WUNNEEDED_INTERNAL_DECL} # XXX Work around clang warning, until maintainer approves fix. CWARNFLAGS.mps_mapping.c= ${NO_WSOMETIMES_UNINITIALIZED} -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/nxge/Makefile ============================================================================== --- head/sys/modules/nxge/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/nxge/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -48,4 +48,3 @@ CWARNFLAGS.xgehal-channel.c= ${NO_WSELF_ CWARNFLAGS.xgehal-fifo.c= ${NO_WSELF_ASSIGN} CWARNFLAGS.xgehal-stats.c= ${NO_WSELF_ASSIGN} CWARNFLAGS.xgehal-mgmt.c= ${NO_WSELF_ASSIGN} -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/wlan/Makefile ============================================================================== --- head/sys/modules/wlan/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/wlan/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -23,4 +23,3 @@ CWARNFLAGS.ieee80211_crypto.c= -Wno-unus CWARNFLAGS.ieee80211_hostap.c= -Wno-unused-function CWARNFLAGS.ieee80211_mesh.c= -Wno-unused-function CWARNFLAGS.ieee80211_sta.c= -Wno-unused-function -CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}} Modified: head/sys/modules/zfs/Makefile ============================================================================== --- head/sys/modules/zfs/Makefile Sat Jan 3 02:40:51 2015 (r276605) +++ head/sys/modules/zfs/Makefile Sat Jan 3 03:35:18 2015 (r276606) @@ -103,7 +103,6 @@ DEBUG_FLAGS=-g CFLAGS+= -include ${SYSDIR}/cddl/compat/opensolaris/sys/debug_compat.h -CWARNFLAGS+=-Wno-unknown-pragmas CWARNFLAGS+=-Wno-missing-prototypes CWARNFLAGS+=-Wno-undef CWARNFLAGS+=-Wno-strict-prototypes From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 04:14:47 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 520D1592 for ; Sat, 3 Jan 2015 04:14:47 +0000 (UTC) Received: from mail-ie0-f177.google.com (mail-ie0-f177.google.com [209.85.223.177]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 14095925 for ; Sat, 3 Jan 2015 04:14:46 +0000 (UTC) Received: by mail-ie0-f177.google.com with SMTP id rd18so17299525iec.22 for ; Fri, 02 Jan 2015 20:14:40 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:subject:mime-version:content-type :in-reply-to:date:cc:message-id:references:to; bh=kc30ddeC7ukR78u5rIZVPuPm1zJVhiAZedu4+lsRZuk=; b=WD4Eae9nY57lCkpMYN2KMgISANdVmqNNbEcyG7YAOrVBFI+9zQMqC8wwJAPfaGG2Lw +/juJwPlrcWvN7KI7Z9rndWlHVw6S5hGOQB6L+7RrE5LX9HBIzJV++D9o/myya8S6kX+ m8+yD9JO96UfqPzFpCEuXGzXYHtEhcl37a3yJtrohpDKzDch7S8hfuJrjoupd7MmZEX8 f9fbXbNMmUJKA+36+Iyjrdai5Wxcv3WRVmRuOv9NW/RUx0LAn/0PvieBXA/Rzoxzuv+l 85/DwECxJxqJ+tnUpkmiqY3mIbnOYMrNRfiQDk3XprdQ/Af1OgjvHSxXr8hn+WUXp0jx cv6w== X-Gm-Message-State: ALoCoQl5qrzRiAM/Ek4cD8CZDH2rvpNMillVgjCfL5BSykd0GHuRIvYb+FdDXtK4R0NLnisqjc2Q X-Received: by 10.42.66.69 with SMTP id o5mr28684446ici.40.1420258480484; Fri, 02 Jan 2015 20:14:40 -0800 (PST) Received: from netflix-mac-wired.bsdimp.com ([50.253.99.174]) by mx.google.com with ESMTPSA id h36sm23710651iod.17.2015.01.02.20.14.39 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 02 Jan 2015 20:14:39 -0800 (PST) Sender: Warner Losh From: Warner Losh X-Google-Original-From: Warner Losh Subject: Re: svn commit: r276499 - head/sys/conf Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Content-Type: multipart/signed; boundary="Apple-Mail=_1BC221AF-D4D6-47E4-854A-8197EB7222B2"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail 2.5b3 In-Reply-To: Date: Fri, 2 Jan 2015 21:14:38 -0700 Message-Id: <5206DEA5-A5EA-48F3-B653-3E949ABE2EB1@netflix.com> References: <201501011007.t01A7wYW032884@svn.freebsd.org> <41CF0351-83A3-4D54-B308-32F310DCD3DA@gmail.com> To: Dimitry Andric X-Mailer: Apple Mail (2.1993) Cc: svn-src-head@freebsd.org, Roman Divacky , src-committers , svn-src-all@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 04:14:47 -0000 --Apple-Mail=_1BC221AF-D4D6-47E4-854A-8197EB7222B2 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Conditioning on the compiler version is actually rather easy, especially since the number of affected files is so small. It=E2=80=99s an issue when people build the old way on old systems, = which is still a lot more popular than you might think. MFC has nothing to do with the problem. Over the years we=E2=80=99ve fixed dozens of = bugs like this that prevented people from building on older systems and I=E2=80=99d like to avoid breaking things needlessly. I=E2=80=99m happy to do the work to make this happen, if you=E2=80=99re = OK with my backing out these couple of changes. Warner > On Jan 2, 2015, at 1:23 PM, Dimitry Andric wrote: >=20 > Hm, conditionalizing this on the compiler version is rather ugly. = Isn't > this only relevant when we do an MFC? But maybe it is indeed better > to have the same Makefile for different toolchain envronments. >=20 > -Dimitry >=20 >> On 02 Jan 2015, at 18:33, Warner Losh wrote: >>=20 >> This breaks building the kernel with clang 3.4.1 >>=20 >> Warner >>=20 >>=20 >>> On Jan 1, 2015, at 3:07 AM, Roman Divacky = wrote: >>>=20 >>> Author: rdivacky >>> Date: Thu Jan 1 10:07:57 2015 >>> New Revision: 276499 >>> URL: https://svnweb.freebsd.org/changeset/base/276499 >>>=20 >>> Log: >>> LLVM integrated assembler can assemble these files just fine. >>>=20 >>> Modified: >>> head/sys/conf/Makefile.amd64 >>> head/sys/conf/Makefile.i386 >>> head/sys/conf/Makefile.pc98 >>>=20 >>> Modified: head/sys/conf/Makefile.amd64 >>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>> --- head/sys/conf/Makefile.amd64 Thu Jan 1 09:33:46 2015 = (r276498) >>> +++ head/sys/conf/Makefile.amd64 Thu Jan 1 10:07:57 2015 = (r276499) >>> @@ -37,11 +37,6 @@ INCLUDES+=3D -I$S/contrib/libfdt >>> CFLAGS+=3D -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer >>> .endif >>>=20 >>> -# XXX: clang integrated-as doesn't grok .codeNN directives yet >>> -ASM_CFLAGS.acpi_wakecode.S=3D ${CLANG_NO_IAS} >>> -ASM_CFLAGS.mpboot.S=3D ${CLANG_NO_IAS} >>> -ASM_CFLAGS+=3D ${ASM_CFLAGS.${.IMPSRC:T}} >>> - >>> %BEFORE_DEPEND >>>=20 >>> %OBJS >>>=20 >>> Modified: head/sys/conf/Makefile.i386 >>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>> --- head/sys/conf/Makefile.i386 Thu Jan 1 09:33:46 2015 = (r276498) >>> +++ head/sys/conf/Makefile.i386 Thu Jan 1 10:07:57 2015 = (r276499) >>> @@ -32,11 +32,6 @@ S=3D ../../.. >>>=20 >>> INCLUDES+=3D -I$S/contrib/libfdt >>>=20 >>> -# XXX: clang integrated-as doesn't grok .codeNN directives yet >>> -ASM_CFLAGS.acpi_wakecode.S=3D ${CLANG_NO_IAS} >>> -ASM_CFLAGS.mpboot.s=3D ${CLANG_NO_IAS} >>> -ASM_CFLAGS+=3D ${ASM_CFLAGS.${.IMPSRC:T}} >>> - >>> %BEFORE_DEPEND >>>=20 >>> %OBJS >>>=20 >>> Modified: head/sys/conf/Makefile.pc98 >>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>> --- head/sys/conf/Makefile.pc98 Thu Jan 1 09:33:46 2015 = (r276498) >>> +++ head/sys/conf/Makefile.pc98 Thu Jan 1 10:07:57 2015 = (r276499) >>> @@ -30,10 +30,6 @@ S=3D ../../.. >>> .endif >>> .include "$S/conf/kern.pre.mk" >>>=20 >>> -# XXX: clang integrated-as doesn't grok .codeNN directives yet >>> -ASM_CFLAGS.mpboot.s=3D ${CLANG_NO_IAS} >>> -ASM_CFLAGS+=3D ${ASM_CFLAGS.${.IMPSRC:T}} >>> - >>> %BEFORE_DEPEND >>>=20 >>> %OBJS >>>=20 >>=20 >>=20 >=20 --Apple-Mail=_1BC221AF-D4D6-47E4-854A-8197EB7222B2 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJUp2yuAAoJEGwc0Sh9sBEAF0cQAJRRGeBLvyM+Qx7+fJtLe/VY vPINOav/cB/uXRpii+aEqrd9hOIfVnMKoPPRAtFwN2SIc4wQ0oECWiUXYor7mpya +PnScM/aJvTpA4QhkCP6eOBgUvD3U0E8ISAJj8lMqVMDW5HrlWPs89o2w0c4U1en QKK1rfUqb3opNoDZiF4HIvzRrH6pIk87ZqxMSF/lpQyuWoWdo3o3YYV0or3mxg6b hw3sAvz+Wl9yyOK+0EjifbBtoV5zAVH33gH/nyLWSLHfU0GoPZikO9Nb/EodfteW sUtF7B1O4P+/cwCJKHFCboAozE7JXYrbTfpuFCCT/gGbXmt+qEzgca5XQpI0RAyb /MxOlKpr2bLTebWmQeBGGod2Lp8TUcyNBRvKbk5VRGyiUxqthCg6iGFOGJX99W+G wJmyaSbSNADGyA169laeTA3bHkxfr9ojQl/bvIpr+5ND0Q/aLabA7Z5sHOX/zk3k 61EVyT+mn0nVqHHZ4LsOCk9y7xjPyf3yR6NsqKMZqXl8icAOWHSww5QNR7HvH3C9 FB4sViYn1iozkIH9sxumWrtQAO5gxiwKXZGjx/tDpQdYAds0SD6jabZqXjsfrM/N rxUPR7uD4/GvQNInU0B41UkCSzDNhQnXV2Jeo/xtrK1w2u8o9GCbFG4xUaNSzPH8 cNxhLQxL7vhzvmVIACA7 =G2kz -----END PGP SIGNATURE----- --Apple-Mail=_1BC221AF-D4D6-47E4-854A-8197EB7222B2-- From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 04:23:43 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 45204968; Sat, 3 Jan 2015 04:23:43 +0000 (UTC) Received: from tensor.andric.com (tensor.andric.com [87.251.56.140]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client CN "tensor.andric.com", Issuer "COMODO RSA Domain Validation Secure Server CA" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id DA0AFB25; Sat, 3 Jan 2015 04:23:42 +0000 (UTC) Received: from [IPv6:2001:7b8:3a7::fd7c:bcc2:17c:e893] (unknown [IPv6:2001:7b8:3a7:0:fd7c:bcc2:17c:e893]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id 9CA8DB80B; Sat, 3 Jan 2015 05:23:32 +0100 (CET) Subject: Re: svn commit: r276499 - head/sys/conf Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Content-Type: multipart/signed; boundary="Apple-Mail=_4321E6BF-EB4B-4C69-A07E-81D6F6BB6528"; protocol="application/pgp-signature"; micalg=pgp-sha1 X-Pgp-Agent: GPGMail 2.5b4 From: Dimitry Andric In-Reply-To: <5206DEA5-A5EA-48F3-B653-3E949ABE2EB1@netflix.com> Date: Sat, 3 Jan 2015 05:23:31 +0100 Message-Id: <729C40E4-B73A-41D5-9EBF-F5F776CBF0D0@FreeBSD.org> References: <201501011007.t01A7wYW032884@svn.freebsd.org> <41CF0351-83A3-4D54-B308-32F310DCD3DA@gmail.com> <5206DEA5-A5EA-48F3-B653-3E949ABE2EB1@netflix.com> To: Warner Losh X-Mailer: Apple Mail (2.1993) Cc: svn-src-head@freebsd.org, Roman Divacky , src-committers , svn-src-all@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 04:23:43 -0000 --Apple-Mail=_4321E6BF-EB4B-4C69-A07E-81D6F6BB6528 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Sure, I don't have any problem with backing this out for now. For clang 3.5.0 users, it should not matter too much that GNU as is run for just a few files. -Dimitry > On 03 Jan 2015, at 05:14, Warner Losh wrote: >=20 > Conditioning on the compiler version is actually rather easy, > especially since the number of affected files is so small. > It=E2=80=99s an issue when people build the old way on old systems, = which > is still a lot more popular than you might think. MFC has nothing > to do with the problem. Over the years we=E2=80=99ve fixed dozens of = bugs > like this that prevented people from building on older systems and > I=E2=80=99d like to avoid breaking things needlessly. >=20 > I=E2=80=99m happy to do the work to make this happen, if you=E2=80=99re = OK with my > backing out these couple of changes. >=20 > Warner >=20 >=20 >> On Jan 2, 2015, at 1:23 PM, Dimitry Andric wrote: >>=20 >> Hm, conditionalizing this on the compiler version is rather ugly. = Isn't >> this only relevant when we do an MFC? But maybe it is indeed better >> to have the same Makefile for different toolchain envronments. >>=20 >> -Dimitry >>=20 >>> On 02 Jan 2015, at 18:33, Warner Losh wrote: >>>=20 >>> This breaks building the kernel with clang 3.4.1 >>>=20 >>> Warner >>>=20 >>>=20 >>>> On Jan 1, 2015, at 3:07 AM, Roman Divacky = wrote: >>>>=20 >>>> Author: rdivacky >>>> Date: Thu Jan 1 10:07:57 2015 >>>> New Revision: 276499 >>>> URL: https://svnweb.freebsd.org/changeset/base/276499 >>>>=20 >>>> Log: >>>> LLVM integrated assembler can assemble these files just fine. >>>>=20 >>>> Modified: >>>> head/sys/conf/Makefile.amd64 >>>> head/sys/conf/Makefile.i386 >>>> head/sys/conf/Makefile.pc98 >>>>=20 >>>> Modified: head/sys/conf/Makefile.amd64 >>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>> --- head/sys/conf/Makefile.amd64 Thu Jan 1 09:33:46 2015 = (r276498) >>>> +++ head/sys/conf/Makefile.amd64 Thu Jan 1 10:07:57 2015 = (r276499) >>>> @@ -37,11 +37,6 @@ INCLUDES+=3D -I$S/contrib/libfdt >>>> CFLAGS+=3D -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer >>>> .endif >>>>=20 >>>> -# XXX: clang integrated-as doesn't grok .codeNN directives yet >>>> -ASM_CFLAGS.acpi_wakecode.S=3D ${CLANG_NO_IAS} >>>> -ASM_CFLAGS.mpboot.S=3D ${CLANG_NO_IAS} >>>> -ASM_CFLAGS+=3D ${ASM_CFLAGS.${.IMPSRC:T}} >>>> - >>>> %BEFORE_DEPEND >>>>=20 >>>> %OBJS >>>>=20 >>>> Modified: head/sys/conf/Makefile.i386 >>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>> --- head/sys/conf/Makefile.i386 Thu Jan 1 09:33:46 2015 = (r276498) >>>> +++ head/sys/conf/Makefile.i386 Thu Jan 1 10:07:57 2015 = (r276499) >>>> @@ -32,11 +32,6 @@ S=3D ../../.. >>>>=20 >>>> INCLUDES+=3D -I$S/contrib/libfdt >>>>=20 >>>> -# XXX: clang integrated-as doesn't grok .codeNN directives yet >>>> -ASM_CFLAGS.acpi_wakecode.S=3D ${CLANG_NO_IAS} >>>> -ASM_CFLAGS.mpboot.s=3D ${CLANG_NO_IAS} >>>> -ASM_CFLAGS+=3D ${ASM_CFLAGS.${.IMPSRC:T}} >>>> - >>>> %BEFORE_DEPEND >>>>=20 >>>> %OBJS >>>>=20 >>>> Modified: head/sys/conf/Makefile.pc98 >>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>> --- head/sys/conf/Makefile.pc98 Thu Jan 1 09:33:46 2015 = (r276498) >>>> +++ head/sys/conf/Makefile.pc98 Thu Jan 1 10:07:57 2015 = (r276499) >>>> @@ -30,10 +30,6 @@ S=3D ../../.. >>>> .endif >>>> .include "$S/conf/kern.pre.mk" >>>>=20 >>>> -# XXX: clang integrated-as doesn't grok .codeNN directives yet >>>> -ASM_CFLAGS.mpboot.s=3D ${CLANG_NO_IAS} >>>> -ASM_CFLAGS+=3D ${ASM_CFLAGS.${.IMPSRC:T}} >>>> - >>>> %BEFORE_DEPEND >>>>=20 >>>> %OBJS >>>>=20 >>>=20 >>>=20 >>=20 >=20 --Apple-Mail=_4321E6BF-EB4B-4C69-A07E-81D6F6BB6528 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.26 iEYEARECAAYFAlSnbsMACgkQsF6jCi4glqP66wCgwqBgegF4vffaJmIex6mNhLxw 2mQAn3VUpRaDPBU1zgh0chi2A5wlkQ2y =gPzX -----END PGP SIGNATURE----- --Apple-Mail=_4321E6BF-EB4B-4C69-A07E-81D6F6BB6528-- From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 04:44:02 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 07D6CE4E for ; Sat, 3 Jan 2015 04:44:02 +0000 (UTC) Received: from mail-ie0-f169.google.com (mail-ie0-f169.google.com [209.85.223.169]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BEC83D5B for ; Sat, 3 Jan 2015 04:44:01 +0000 (UTC) Received: by mail-ie0-f169.google.com with SMTP id y20so17535903ier.0 for ; Fri, 02 Jan 2015 20:44:01 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:subject:mime-version:content-type:from :in-reply-to:date:cc:message-id:references:to; bh=IgkUUBo8k0bGaBuFryg8ruPirbykK8SW18DEV0yJccw=; b=g51cfO6Toe5bDamTJmAgXTsJzlDWVb0SlwNpbU++Vxavv0Zeyl990ftwUuJ9p9CFQ7 eUXO6/GP0sopBuY1JhydFAMv5b/yaDq4HebgGsZsOgCJIUj5c79kHTdYf9tPQ/jCbqJB zeBegqTXQ782/dDieSqvnJbIal5SZnaUpljustYosfkl16RvG5Q/SqI/+VzMdVyz8ukN I71Y+td6wrgdTQkeUyVISEuWoLVpUgRv9vudjICWLpO1aC7ixGBkJkWyKBO9afXCwnjG DW5TC/Dc601e1frStv6qCyj9yzR81GESWcSksmf4GBX+8LD0iK0lvinXazXmmnQMybyO WnLA== X-Gm-Message-State: ALoCoQlD7uLTHynzj1iMJ+CtW9lmRRcxZ3WnS7LusDtSEQmcYnE2nkECFOR69D8mC5gjkwSl6igj X-Received: by 10.42.151.67 with SMTP id d3mr59414512icw.56.1420259802254; Fri, 02 Jan 2015 20:36:42 -0800 (PST) Received: from netflix-mac-wired.bsdimp.com ([50.253.99.174]) by mx.google.com with ESMTPSA id 71sm23722385ios.42.2015.01.02.20.36.41 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 02 Jan 2015 20:36:41 -0800 (PST) Sender: Warner Losh Subject: Re: svn commit: r276499 - head/sys/conf Mime-Version: 1.0 (Mac OS X Mail 8.1 \(1993\)) Content-Type: multipart/signed; boundary="Apple-Mail=_419A3ACA-00E5-45CF-86D8-075A7053CF33"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail 2.5b3 From: Warner Losh In-Reply-To: <729C40E4-B73A-41D5-9EBF-F5F776CBF0D0@FreeBSD.org> Date: Fri, 2 Jan 2015 21:36:39 -0700 Message-Id: <874E0C45-9FC9-4F19-8741-2D68F5928899@bsdimp.com> References: <201501011007.t01A7wYW032884@svn.freebsd.org> <41CF0351-83A3-4D54-B308-32F310DCD3DA@gmail.com> <5206DEA5-A5EA-48F3-B653-3E949ABE2EB1@netflix.com> <729C40E4-B73A-41D5-9EBF-F5F776CBF0D0@FreeBSD.org> To: Dimitry Andric X-Mailer: Apple Mail (2.1993) Cc: svn-src-head@freebsd.org, Roman Divacky , src-committers , svn-src-all@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 04:44:02 -0000 --Apple-Mail=_419A3ACA-00E5-45CF-86D8-075A7053CF33 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 I=E2=80=99ll back them out in one commit, and commit the fix in the = next, so there will be a one commit window. Warner > On Jan 2, 2015, at 9:23 PM, Dimitry Andric wrote: >=20 > Sure, I don't have any problem with backing this out for now. For = clang > 3.5.0 users, it should not matter too much that GNU as is run for just = a > few files. >=20 > -Dimitry >=20 >> On 03 Jan 2015, at 05:14, Warner Losh wrote: >>=20 >> Conditioning on the compiler version is actually rather easy, >> especially since the number of affected files is so small. >> It=E2=80=99s an issue when people build the old way on old systems, = which >> is still a lot more popular than you might think. MFC has nothing >> to do with the problem. Over the years we=E2=80=99ve fixed dozens of = bugs >> like this that prevented people from building on older systems and >> I=E2=80=99d like to avoid breaking things needlessly. >>=20 >> I=E2=80=99m happy to do the work to make this happen, if you=E2=80=99re= OK with my >> backing out these couple of changes. >>=20 >> Warner >>=20 >>=20 >>> On Jan 2, 2015, at 1:23 PM, Dimitry Andric wrote: >>>=20 >>> Hm, conditionalizing this on the compiler version is rather ugly. = Isn't >>> this only relevant when we do an MFC? But maybe it is indeed better >>> to have the same Makefile for different toolchain envronments. >>>=20 >>> -Dimitry >>>=20 >>>> On 02 Jan 2015, at 18:33, Warner Losh wrote: >>>>=20 >>>> This breaks building the kernel with clang 3.4.1 >>>>=20 >>>> Warner >>>>=20 >>>>=20 >>>>> On Jan 1, 2015, at 3:07 AM, Roman Divacky = wrote: >>>>>=20 >>>>> Author: rdivacky >>>>> Date: Thu Jan 1 10:07:57 2015 >>>>> New Revision: 276499 >>>>> URL: https://svnweb.freebsd.org/changeset/base/276499 >>>>>=20 >>>>> Log: >>>>> LLVM integrated assembler can assemble these files just fine. >>>>>=20 >>>>> Modified: >>>>> head/sys/conf/Makefile.amd64 >>>>> head/sys/conf/Makefile.i386 >>>>> head/sys/conf/Makefile.pc98 >>>>>=20 >>>>> Modified: head/sys/conf/Makefile.amd64 >>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>> --- head/sys/conf/Makefile.amd64 Thu Jan 1 09:33:46 2015 = (r276498) >>>>> +++ head/sys/conf/Makefile.amd64 Thu Jan 1 10:07:57 2015 = (r276499) >>>>> @@ -37,11 +37,6 @@ INCLUDES+=3D -I$S/contrib/libfdt >>>>> CFLAGS+=3D -fno-omit-frame-pointer = -mno-omit-leaf-frame-pointer >>>>> .endif >>>>>=20 >>>>> -# XXX: clang integrated-as doesn't grok .codeNN directives yet >>>>> -ASM_CFLAGS.acpi_wakecode.S=3D ${CLANG_NO_IAS} >>>>> -ASM_CFLAGS.mpboot.S=3D ${CLANG_NO_IAS} >>>>> -ASM_CFLAGS+=3D ${ASM_CFLAGS.${.IMPSRC:T}} >>>>> - >>>>> %BEFORE_DEPEND >>>>>=20 >>>>> %OBJS >>>>>=20 >>>>> Modified: head/sys/conf/Makefile.i386 >>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>> --- head/sys/conf/Makefile.i386 Thu Jan 1 09:33:46 2015 = (r276498) >>>>> +++ head/sys/conf/Makefile.i386 Thu Jan 1 10:07:57 2015 = (r276499) >>>>> @@ -32,11 +32,6 @@ S=3D ../../.. >>>>>=20 >>>>> INCLUDES+=3D -I$S/contrib/libfdt >>>>>=20 >>>>> -# XXX: clang integrated-as doesn't grok .codeNN directives yet >>>>> -ASM_CFLAGS.acpi_wakecode.S=3D ${CLANG_NO_IAS} >>>>> -ASM_CFLAGS.mpboot.s=3D ${CLANG_NO_IAS} >>>>> -ASM_CFLAGS+=3D ${ASM_CFLAGS.${.IMPSRC:T}} >>>>> - >>>>> %BEFORE_DEPEND >>>>>=20 >>>>> %OBJS >>>>>=20 >>>>> Modified: head/sys/conf/Makefile.pc98 >>>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>>> --- head/sys/conf/Makefile.pc98 Thu Jan 1 09:33:46 2015 = (r276498) >>>>> +++ head/sys/conf/Makefile.pc98 Thu Jan 1 10:07:57 2015 = (r276499) >>>>> @@ -30,10 +30,6 @@ S=3D ../../.. >>>>> .endif >>>>> .include "$S/conf/kern.pre.mk" >>>>>=20 >>>>> -# XXX: clang integrated-as doesn't grok .codeNN directives yet >>>>> -ASM_CFLAGS.mpboot.s=3D ${CLANG_NO_IAS} >>>>> -ASM_CFLAGS+=3D ${ASM_CFLAGS.${.IMPSRC:T}} >>>>> - >>>>> %BEFORE_DEPEND >>>>>=20 >>>>> %OBJS >>>>>=20 >>>>=20 >>>>=20 >>>=20 >>=20 >=20 --Apple-Mail=_419A3ACA-00E5-45CF-86D8-075A7053CF33 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJUp3HYAAoJEGwc0Sh9sBEAWAEQANAtOv0y0N5HDvA7qJhp3uHH p1ranZkI5QRU8qrv8bO1wvdKjE0UIe054oQ3Be0j9ie6ChaT3rAo0W4AsQluLJEA 1XYztozT7LtFM3cMc6ej2C8TihYmMxTel4H2NyEwp/Ldq5UCFxAMnJT1rkQS9hvI EP8c1rNKfLCKOw82Wv/4WGiemQd+zjwuTIchbK3mYlPVr/lLs+lgWBQvjk75sdNU cJFX+JCT72bZ1nznAHDQA5e9ssjjmnvS/8a+1R2+EBWQ/yDWsyZ4etWjxLw5XcW6 s9YA/EkMhUI4K7PB6XA8QH8+Ek/Yb04YFkRVg4whUvrEIyNnicZjecjzxCjypevS Vl2o8ms+p7ceofyzkEyfB6SCvdhMd98woyisf0MpvzECL4pdUoQ33ZpabWHSj63H czNa6QF18O27Td5rQJDv8liGJiQYc/+rb+dH8W9CpmENvwy6U4NJj2bcMyxXDgKv DAGhgx37JMOuigNkP9GHC4H1n5TEBVS14tSNZiAGvD3CLeH1gDd2aaezWHfzIPJU oAM0+rR3wV3xHbAntPiDwUW2MctAOIl0tFrUD1IrmM44YFtc7ApNcduhL6XONkbw bXJsPBXae41HFu1ZjTkSgD4I0PW+CqvIo0xPOBcQLcyysi/tf4AhTDK0MdHustWJ 17PDNAgigtabGx5rZjxU =umr1 -----END PGP SIGNATURE----- --Apple-Mail=_419A3ACA-00E5-45CF-86D8-075A7053CF33-- From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 05:39:03 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3CC1D27B; Sat, 3 Jan 2015 05:39:03 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0F9A064414; Sat, 3 Jan 2015 05:39:03 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t035d26C099765; Sat, 3 Jan 2015 05:39:02 GMT (envelope-from np@FreeBSD.org) Received: (from np@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t035d240099764; Sat, 3 Jan 2015 05:39:02 GMT (envelope-from np@FreeBSD.org) Message-Id: <201501030539.t035d240099764@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: np set sender to np@FreeBSD.org using -f From: Navdeep Parhar Date: Sat, 3 Jan 2015 05:39:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276607 - head/tools/tools/cxgbetool X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 05:39:03 -0000 Author: np Date: Sat Jan 3 05:39:01 2015 New Revision: 276607 URL: https://svnweb.freebsd.org/changeset/base/276607 Log: Fix all nits reported by mandoc -Tlint. MFC after: 1 month Modified: head/tools/tools/cxgbetool/cxgbetool.8 Modified: head/tools/tools/cxgbetool/cxgbetool.8 ============================================================================== --- head/tools/tools/cxgbetool/cxgbetool.8 Sat Jan 3 03:35:18 2015 (r276606) +++ head/tools/tools/cxgbetool/cxgbetool.8 Sat Jan 3 05:39:01 2015 (r276607) @@ -1,4 +1,4 @@ -." Copyright (c) 2015, Chelsio Inc +.\" Copyright (c) 2015, Chelsio Inc .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without @@ -93,7 +93,7 @@ The rest consists of a command and any p .It Cm clearstats Ar port_id Clear all transmit, receive, and error statistics of all queues associated with a port. -The total number of ports attached to a nexus is listed in +The total number of ports attached to a nexus is listed in .Va dev.t4nex.%d.nports and the 0 based .Ar port_id @@ -407,7 +407,6 @@ Class Weighted Round Robin. .It Sy cl-wrr Channel Rate Limiting. .El -.Pp .It Sy mode Ar scheduler-mode The mode in which the scheduling class is going to operate: .Pp @@ -425,7 +424,6 @@ mode, all of the "flows" bound to the cl aggregate bandwidth of 10Mb/s; but in .Cm flow mode, each of the "flows" bound to the scheduling class would be limited to 10Mb/s. -.Pp .It Sy rate-unit Ar scheduler-rate-unit The units of the scheduler rate constraints: .Pp @@ -446,19 +444,14 @@ percent of port rate. .It Sy absolute Kb/s. .El -.Pp .It Sy channel Ar scheduler-channel-index The scheduling channel to which the scheduling class will be bound. -.Pp .It Sy class Ar scheduler-class-index The scheduling class being programmed. -.Pp .It Sy min-rate Ar minimum-rate The minimum guaranteed rate to which a rate-limiting scheduling class hierarchy will have access. -.Pp .It Sy max-rate Ar maximum-rate The maximum rate for a rate-limiting scheduling class hierarchy. -.Pp .It Sy weight Ar round-robin-weight The weight to be used for a weighted-round-robin scheduling hierarchy. .It Sy pkt-size Ar average-packet-size From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 06:30:31 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 14FEF64B; Sat, 3 Jan 2015 06:30:31 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 015D96498D; Sat, 3 Jan 2015 06:30:31 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t036UU1g027064; Sat, 3 Jan 2015 06:30:30 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t036UUgB027063; Sat, 3 Jan 2015 06:30:30 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201501030630.t036UUgB027063@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Sat, 3 Jan 2015 06:30:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276608 - head/sys/mips/atheros X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 06:30:31 -0000 Author: adrian Date: Sat Jan 3 06:30:30 2015 New Revision: 276608 URL: https://svnweb.freebsd.org/changeset/base/276608 Log: Add AR934x GPIO function configuration. Obtained from: Linux OpenWRT Modified: head/sys/mips/atheros/ar934xreg.h Modified: head/sys/mips/atheros/ar934xreg.h ============================================================================== --- head/sys/mips/atheros/ar934xreg.h Sat Jan 3 05:39:01 2015 (r276607) +++ head/sys/mips/atheros/ar934xreg.h Sat Jan 3 06:30:30 2015 (r276608) @@ -179,6 +179,12 @@ /* * GPIO block */ +#define AR934X_GPIO_REG_OUT_FUNC0 0x2c +#define AR934X_GPIO_REG_OUT_FUNC1 0x30 +#define AR934X_GPIO_REG_OUT_FUNC2 0x34 +#define AR934X_GPIO_REG_OUT_FUNC3 0x38 +#define AR934X_GPIO_REG_OUT_FUNC4 0x3c +#define AR934X_GPIO_REG_OUT_FUNC5 0x40 #define AR934X_GPIO_REG_FUNC 0x6c #define AR934X_GPIO_COUNT 23 From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 06:35:54 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8FFE88A7; Sat, 3 Jan 2015 06:35:54 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7CBDFC83; Sat, 3 Jan 2015 06:35:54 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t036Zsq9031174; Sat, 3 Jan 2015 06:35:54 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t036Zs2i031173; Sat, 3 Jan 2015 06:35:54 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201501030635.t036Zs2i031173@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Sat, 3 Jan 2015 06:35:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276609 - head/sys/mips/atheros X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 06:35:54 -0000 Author: adrian Date: Sat Jan 3 06:35:53 2015 New Revision: 276609 URL: https://svnweb.freebsd.org/changeset/base/276609 Log: Add AR934x specific GPIO functions and output MUX configuration. Obtained from: Linux OpenWRT Modified: head/sys/mips/atheros/ar934xreg.h Modified: head/sys/mips/atheros/ar934xreg.h ============================================================================== --- head/sys/mips/atheros/ar934xreg.h Sat Jan 3 06:30:30 2015 (r276608) +++ head/sys/mips/atheros/ar934xreg.h Sat Jan 3 06:35:53 2015 (r276609) @@ -188,6 +188,28 @@ #define AR934X_GPIO_REG_FUNC 0x6c #define AR934X_GPIO_COUNT 23 +/* GPIO functions */ +#define AR934X_GPIO_FUNC_CLK_OBS7_EN (1 << 9) +#define AR934X_GPIO_FUNC_CLK_OBS6_EN (1 << 8) +#define AR934X_GPIO_FUNC_CLK_OBS5_EN (1 << 7) +#define AR934X_GPIO_FUNC_CLK_OBS4_EN (1 << 6) +#define AR934X_GPIO_FUNC_CLK_OBS3_EN (1 << 5) +#define AR934X_GPIO_FUNC_CLK_OBS2_EN (1 << 4) +#define AR934X_GPIO_FUNC_CLK_OBS1_EN (1 << 3) +#define AR934X_GPIO_FUNC_CLK_OBS0_EN (1 << 2) +#define AR934X_GPIO_FUNC_JTAG_DISABLE (1 << 1) + +/* GPIO MUX output function: AR934X_GPIO_REG_OUT_FUNCx */ +#define AR934X_GPIO_OUT_GPIO 0 /* I'm a GPIO */ +#define AR934X_GPIO_OUT_SPI_CS1 7 /* I'm SPI CS1 */ +#define AR934X_GPIO_OUT_LED_LINK0 41 /* I'm switch phy link0 */ +#define AR934X_GPIO_OUT_LED_LINK1 42 +#define AR934X_GPIO_OUT_LED_LINK2 43 +#define AR934X_GPIO_OUT_LED_LINK3 44 +#define AR934X_GPIO_OUT_LED_LINK4 45 +#define AR934X_GPIO_OUT_EXT_LNA0 46 /* I'm WMAC EXT LNA chain 0 */ +#define AR934X_GPIO_OUT_EXT_LNA1 47 /* I'm WMAC EXT LNA chain 1 */ + /* * SRIF block */ From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 06:56:00 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 83A45B00; Sat, 3 Jan 2015 06:56:00 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 64B88E9E; Sat, 3 Jan 2015 06:56:00 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t036u00X041793; Sat, 3 Jan 2015 06:56:00 GMT (envelope-from adrian@FreeBSD.org) Received: (from adrian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t036txlJ041790; Sat, 3 Jan 2015 06:55:59 GMT (envelope-from adrian@FreeBSD.org) Message-Id: <201501030655.t036txlJ041790@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: adrian set sender to adrian@FreeBSD.org using -f From: Adrian Chadd Date: Sat, 3 Jan 2015 06:55:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276610 - head/sys/mips/atheros X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 06:56:00 -0000 Author: adrian Date: Sat Jan 3 06:55:58 2015 New Revision: 276610 URL: https://svnweb.freebsd.org/changeset/base/276610 Log: Add a GPIO output mux configuration method. The AR934x and later (which will turn up eventually) have a new GPIO output configuration option - a real MUX rather than a "GPIO or this function." For now I'm squirreling it away in the CPU code just so it's done - I may move this to the GPIO layer later. Specifically, this is required for setting up some boards that have external receive side LNA (low noise amplifier) that gets switched on/off by the on-chip wireless MAC. If we don't add this support for those boards then we'll end up with really poor performance. (I don't yet have one of those APs, but it'll likely show up in a week.) Obtained from: Linux OpenWRT Modified: head/sys/mips/atheros/ar71xx_cpudef.h head/sys/mips/atheros/ar934x_chip.c Modified: head/sys/mips/atheros/ar71xx_cpudef.h ============================================================================== --- head/sys/mips/atheros/ar71xx_cpudef.h Sat Jan 3 06:35:53 2015 (r276609) +++ head/sys/mips/atheros/ar71xx_cpudef.h Sat Jan 3 06:55:58 2015 (r276610) @@ -65,6 +65,8 @@ struct ar71xx_cpu_def { void (* ar71xx_chip_init_gmac) (void); void (* ar71xx_chip_reset_nfc) (int); + + void (* ar71xx_chip_gpio_out_configure) (int, uint8_t); }; extern struct ar71xx_cpu_def * ar71xx_cpu_ops; @@ -149,6 +151,12 @@ static inline void ar71xx_reset_nfc(int ar71xx_cpu_ops->ar71xx_chip_reset_nfc(active); } +static inline void ar71xx_gpio_ouput_configure(int gpio, uint8_t func) +{ + if (ar71xx_cpu_ops->ar71xx_chip_gpio_out_configure) + ar71xx_cpu_ops->ar71xx_chip_gpio_out_configure(gpio, func); +} + /* XXX shouldn't be here! */ extern uint32_t u_ar71xx_refclk; extern uint32_t u_ar71xx_cpu_freq; Modified: head/sys/mips/atheros/ar934x_chip.c ============================================================================== --- head/sys/mips/atheros/ar934x_chip.c Sat Jan 3 06:35:53 2015 (r276609) +++ head/sys/mips/atheros/ar934x_chip.c Sat Jan 3 06:55:58 2015 (r276610) @@ -417,6 +417,37 @@ ar934x_chip_reset_nfc(int active) } } +/* + * Configure the GPIO output mux setup. + * + * The AR934x introduced an output mux which allowed + * certain functions to be configured on any pin. + * Specifically, the switch PHY link LEDs and + * WMAC external RX LNA switches are not limited to + * a specific GPIO pin. + */ +static void +ar934x_chip_gpio_output_configure(int gpio, uint8_t func) +{ + uint32_t reg, s; + uint32_t t; + + if (gpio > AR934X_GPIO_COUNT) + return; + + reg = AR934X_GPIO_REG_OUT_FUNC0 + 4 * (gpio / 4); + s = 8 * (gpio % 4); + + /* read-modify-write */ + t = ATH_READ_REG(AR71XX_GPIO_BASE + reg); + t &= ~(0xff << s); + t |= func << s; + ATH_WRITE_REG(AR71XX_GPIO_BASE + reg, t); + + /* flush write */ + ATH_READ_REG(AR71XX_GPIO_BASE + reg); +} + struct ar71xx_cpu_def ar934x_chip_def = { &ar934x_chip_detect_mem_size, &ar934x_chip_detect_sys_frequency, @@ -434,4 +465,5 @@ struct ar71xx_cpu_def ar934x_chip_def = &ar934x_chip_reset_wmac, &ar934x_chip_init_gmac, &ar934x_chip_reset_nfc, + &ar934x_chip_gpio_output_configure, }; From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 08:06:49 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 32231D82; Sat, 3 Jan 2015 08:06:49 +0000 (UTC) Received: from mail109.syd.optusnet.com.au (mail109.syd.optusnet.com.au [211.29.132.80]) by mx1.freebsd.org (Postfix) with ESMTP id E9440298A; Sat, 3 Jan 2015 08:06:48 +0000 (UTC) Received: from c122-106-147-133.carlnfd1.nsw.optusnet.com.au (c122-106-147-133.carlnfd1.nsw.optusnet.com.au [122.106.147.133]) by mail109.syd.optusnet.com.au (Postfix) with ESMTPS id 95F8AD615FE; Sat, 3 Jan 2015 18:39:49 +1100 (AEDT) Date: Sat, 3 Jan 2015 18:39:48 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Dmitry Chagin Subject: Re: svn commit: r276564 - head/sys/compat/linux In-Reply-To: <201501021929.t02JTXd7093292@svn.freebsd.org> Message-ID: <20150103175627.K979@besplex.bde.org> References: <201501021929.t02JTXd7093292@svn.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.1 cv=R8o6R7hX c=1 sm=1 tr=0 a=7NqvjVvQucbO2RlWB8PEog==:117 a=PO7r1zJSAAAA:8 a=kj9zAlcOel0A:10 a=JzwRw_2MAAAA:8 a=V7-QFCcns0Nmk-jv-oAA:9 a=CjuIK1q_8ugA:10 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 08:06:49 -0000 On Fri, 2 Jan 2015, Dmitry Chagin wrote: > Log: > Cast *path to silence clang -Wpointer-sign warning. Why not fix the bug instead of breaking the warning? (You usually do this better.) > Modified: head/sys/compat/linux/linux_getcwd.c > ============================================================================== > --- head/sys/compat/linux/linux_getcwd.c Fri Jan 2 19:06:27 2015 (r276563) > +++ head/sys/compat/linux/linux_getcwd.c Fri Jan 2 19:29:32 2015 (r276564) > @@ -430,7 +430,7 @@ linux_getcwd(struct thread *td, struct l > > path = (char *)malloc(len, M_TEMP, M_WAITOK); > > - error = kern___getcwd(td, path, UIO_SYSSPACE, len); > + error = kern___getcwd(td, (u_char *)path, UIO_SYSSPACE, len); The bug is that __getcwd(2undoc) has a bogus API that is mismatched with all callers and also with its implementation. libc/gen/getcwd.c misdeclares __getcwd() as taking a plain char * path, but this type mismatch is not detected since libc/gen/getcwd.c doesn't include the header where the syscall is declared (sys/syscallsubr.h). This type pun prevents clang detecting the same problem as above (pathnames are always char * except when bogusly passed to *__getcwd()). __kern_getcwd() internally doesn't actually use or support u_char * paths, except to copy them to a normal char * path. The copying is done using bcopy(), so its behaviour is not undefined like it is with the type pun, but it is still logically wrong and would be physically wrong if signed chars were exotic. The behaviour is only clearly correct if the pointer: 1) starts as plain char * 2) actually points to valid plain chars 3) is converted without type puns before use, either back to the original plain char * pointer for direct use, or to void * for use in bcopy() and then plain char * is used to access the copy. The above bogus cast gives this. This depends only __kern_getcwd() not actually supporting u_char * but doing step (3). I think the bogus cast from 'signed foo_t *' to 'unsigned foo_t *' gives undefined behaviour in general, but for foo_t = char it only gives implementation-defined behaviour (different interpretations of the sign bit and +-0), at least in POSIX where chars are 8 bits so there is no space for extra bits. The only case of even theoretical interest is +-0 on 1's complement systems with plain char = signed char . Then +-0 cannot be distinguished as chars. FreeBSD just doesn't support such systems. At least to the extent of handling the file name "\xff" on a removable disk generated on a 2's complement system. The cast of malloc() is also bogus. Bruce From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 08:33:14 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0C41E374; Sat, 3 Jan 2015 08:33:14 +0000 (UTC) Received: from gold.funkthat.com (gate2.funkthat.com [208.87.223.18]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "gold.funkthat.com", Issuer "gold.funkthat.com" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id DAF172D3F; Sat, 3 Jan 2015 08:33:13 +0000 (UTC) Received: from gold.funkthat.com (localhost [127.0.0.1]) by gold.funkthat.com (8.14.5/8.14.5) with ESMTP id t038XDa8017136 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Sat, 3 Jan 2015 00:33:13 -0800 (PST) (envelope-from jmg@gold.funkthat.com) Received: (from jmg@localhost) by gold.funkthat.com (8.14.5/8.14.5/Submit) id t038XDCN017135; Sat, 3 Jan 2015 00:33:13 -0800 (PST) (envelope-from jmg) Date: Sat, 3 Jan 2015 00:33:13 -0800 From: John-Mark Gurney To: Hans Petter Selasky Subject: Re: svn commit: r275732 - in head: etc/mtree share/man/man4 share/man/man7 share/man/man9 sys/conf sys/crypto/aesni sys/crypto/via sys/geom/eli sys/libkern sys/mips/rmi/dev/sec sys/modules/aesni sys/mo... Message-ID: <20150103083313.GB16816@funkthat.com> References: <201412121956.sBCJucpj048475@svn.freebsd.org> <54A65C52.8090207@freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <54A65C52.8090207@freebsd.org> X-Operating-System: FreeBSD 9.1-PRERELEASE amd64 X-PGP-Fingerprint: 54BA 873B 6515 3F10 9E88 9322 9CB1 8F74 6D3F A396 X-Files: The truth is out there X-URL: http://resnet.uoregon.edu/~gurney_j/ X-Resume: http://resnet.uoregon.edu/~gurney_j/resume.html X-TipJar: bitcoin:13Qmb6AeTgQecazTWph4XasEsP7nGRbAPE X-to-the-FBI-CIA-and-NSA: HI! HOW YA DOIN? can i haz chizburger? User-Agent: Mutt/1.5.21 (2010-09-15) X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.2.7 (gold.funkthat.com [127.0.0.1]); Sat, 03 Jan 2015 00:33:13 -0800 (PST) Cc: John-Mark Gurney , svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 08:33:14 -0000 Hans Petter Selasky wrote this message on Fri, Jan 02, 2015 at 09:52 +0100: > On 12/12/14 20:56, John-Mark Gurney wrote: > > Author: jmg > > Date: Fri Dec 12 19:56:36 2014 > > New Revision: 275732 > > URL: https://svnweb.freebsd.org/changeset/base/275732 > > > > Log: > > Compile breakage with older compilers: > > > crypto/aesni/aesni.c: In function 'aesni_process': > > crypto/aesni/aesni.c:458: warning: 'ivlen' may be used uninitialized in this function > > crypto/aesni/aesni.c:458: note: 'ivlen' was declared here Thanks, I'll fix that tomorrow... I had a email server outage and now just getting things back to working... We really should look at turning of gcc's uninitialized var warning now that it doesn't do a good job... We are now just poluting our code base w/ bad initalizations that could turn into bugs in the future when someone adds a new code path that doesn't initalize the variable and gets the bogus initalization... -- John-Mark Gurney Voice: +1 415 225 5579 "All that I will do, has been done, All that I have, has not." From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 08:34:42 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CBFAE4CD; Sat, 3 Jan 2015 08:34:42 +0000 (UTC) Received: from mail107.syd.optusnet.com.au (mail107.syd.optusnet.com.au [211.29.132.53]) by mx1.freebsd.org (Postfix) with ESMTP id 5BCA32D5C; Sat, 3 Jan 2015 08:34:41 +0000 (UTC) Received: from c122-106-147-133.carlnfd1.nsw.optusnet.com.au (c122-106-147-133.carlnfd1.nsw.optusnet.com.au [122.106.147.133]) by mail107.syd.optusnet.com.au (Postfix) with ESMTPS id C549CD4732D; Sat, 3 Jan 2015 19:34:26 +1100 (AEDT) Date: Sat, 3 Jan 2015 19:34:25 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Ian Lepore Subject: Re: svn commit: r276596 - in head/sys/arm: arm include In-Reply-To: <201501022346.t02NkRgd032775@svn.freebsd.org> Message-ID: <20150103184754.H1159@besplex.bde.org> References: <201501022346.t02NkRgd032775@svn.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.1 cv=Qdxf4Krv c=1 sm=1 tr=0 a=7NqvjVvQucbO2RlWB8PEog==:117 a=PO7r1zJSAAAA:8 a=kj9zAlcOel0A:10 a=JzwRw_2MAAAA:8 a=TkTTPzHaAAAA:8 a=bcXWhih2kQSunO1Cnb4A:9 a=CjuIK1q_8ugA:10 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 08:34:43 -0000 On Fri, 2 Jan 2015, Ian Lepore wrote: > Log: > Fix alignment directives in arm asm code after clang 3.5 import. > > The ancient gas we've been using interprets .align 0 as align to the > minimum required alignment for the current section. Clang's integrated > assembler interprets it as align to a byte boundary. Fortunately both > assemblers interpret a non-zero value as align to 2^N so just make sure > we have appropriate non-zero values everywhere. > Modified: head/sys/arm/arm/bcopyinout.S > ============================================================================== > --- head/sys/arm/arm/bcopyinout.S Fri Jan 2 23:27:16 2015 (r276595) > +++ head/sys/arm/arm/bcopyinout.S Fri Jan 2 23:46:26 2015 (r276596) > @@ -52,7 +52,7 @@ __FBSDID("$FreeBSD$"); > #else > > .text > - .align 0 > + .align 2 This is still confusing. Doesn't clang on arm support .p2align? On x86, '.align N' means align to boundary N, where N must be a power of 2. Alignment to boundary 2**N can be done by expanding 2**N literally or using '.p2align N'. The latter is better, and is always (?) used in FreeBSD sources. It was also generated by gcc-3.3.3. gcc-4 broke this and generates .align, and clang is bug for bug compatible with the newer gcc. .align used to mean power of 2 alignment on x86 too, but gas changed this in 1995, or at least introduced .p2align then: X Wed Apr 26 15:54:10 1995 Ken Raeburn X X Support for more portable alignment handling in assembly code, X based on patches from Bryan Ford : X * read.c (potable): Added balign and p2align, for aligning by X bytes or powers of two independent of what ".align" does for a X given target. X * doc/as.texinfo: Document them. Everything should have, and still should, use .p2align for portability and anti-confusion. FreeBSD on x86 didn't catch up with this change until 1997. The fix is disguised in some ELF changes in rev.1.16. It is also a style bug to hard-code .align statements. x86 is missing this style bug, so only about 3 lines in this file needed to be changed to keep up with the change in gas. I couldn't find when gas changed the default, and suspect that it was conditional on ELF. Other arches never supported aout, but they apparently ended up with the confusing aout semantics for .align. .align is apparently portable now, but it is still too confusing to use. This is especially confusing for small powers of 2 A few related style bugs have crept into x86/*.s: - i386 has 2 hard-coded .aligns for kdtrace - amd64 and i386 have a few hard-coded .p2align's. Half are my fault. There is a SUPERALIGN_TEXT macro, but no SUPERALIGN_DATA macro. The [SUPER]ALIGN_TEXT and ALIGN_DATA macros are a bit too simple. They hide complications for profiling. However, the best alignment is very machine-dependent and context-dependent. Modern compilers generate very different amounts of alignment depending on -march and the context (different for function targets than for other branch targets...). The macros should at least depend on -march. SUPERALIGN_TEXT is just a hard-coding of a special context for -march=i486. Bruce From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 09:01:10 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E877EBA5; Sat, 3 Jan 2015 09:01:09 +0000 (UTC) Received: from dchagin.static.corbina.net (dchagin.static.corbina.ru [78.107.232.239]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "dchagin.static.corbina.net", Issuer "dchagin.static.corbina.net" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 82986118B; Sat, 3 Jan 2015 09:01:08 +0000 (UTC) Received: from dchagin.static.corbina.net (localhost [127.0.0.1]) by dchagin.static.corbina.net (8.14.9/8.14.9) with ESMTP id t03914BT028995 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Sat, 3 Jan 2015 12:01:05 +0300 (MSK) (envelope-from dchagin@dchagin.static.corbina.net) Received: (from dchagin@localhost) by dchagin.static.corbina.net (8.14.9/8.14.9/Submit) id t03914Uj028994; Sat, 3 Jan 2015 12:01:04 +0300 (MSK) (envelope-from dchagin) Date: Sat, 3 Jan 2015 12:01:04 +0300 From: Chagin Dmitry To: Bruce Evans Subject: Re: svn commit: r276564 - head/sys/compat/linux Message-ID: <20150103090104.GA28933@dchagin.static.corbina.net> References: <201501021929.t02JTXd7093292@svn.freebsd.org> <20150103175627.K979@besplex.bde.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150103175627.K979@besplex.bde.org> User-Agent: Mutt/1.5.23 (2014-03-12) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 09:01:10 -0000 On Sat, Jan 03, 2015 at 06:39:48PM +1100, Bruce Evans wrote: > On Fri, 2 Jan 2015, Dmitry Chagin wrote: > > > Log: > > Cast *path to silence clang -Wpointer-sign warning. > > Why not fix the bug instead of breaking the warning? (You usually do > this better.) > > > Modified: head/sys/compat/linux/linux_getcwd.c > > ============================================================================== > > --- head/sys/compat/linux/linux_getcwd.c Fri Jan 2 19:06:27 2015 (r276563) > > +++ head/sys/compat/linux/linux_getcwd.c Fri Jan 2 19:29:32 2015 (r276564) > > @@ -430,7 +430,7 @@ linux_getcwd(struct thread *td, struct l > > > > path = (char *)malloc(len, M_TEMP, M_WAITOK); > > > > - error = kern___getcwd(td, path, UIO_SYSSPACE, len); > > + error = kern___getcwd(td, (u_char *)path, UIO_SYSSPACE, len); > > The bug is that __getcwd(2undoc) has a bogus API that is mismatched with > all callers and also with its implementation. > > libc/gen/getcwd.c misdeclares __getcwd() as taking a plain char * path, but > this type mismatch is not detected since libc/gen/getcwd.c doesn't include > the header where the syscall is declared (sys/syscallsubr.h). This type > pun prevents clang detecting the same problem as above (pathnames are > always char * except when bogusly passed to *__getcwd()). > > __kern_getcwd() internally doesn't actually use or support u_char * paths, > except to copy them to a normal char * path. The copying is done using > bcopy(), so its behaviour is not undefined like it is with the type pun, > but it is still logically wrong and would be physically wrong if signed > chars were exotic. The behaviour is only clearly correct if the pointer: > 1) starts as plain char * > 2) actually points to valid plain chars > 3) is converted without type puns before use, either back to the original > plain char * pointer for direct use, or to void * for use in bcopy() > and then plain char * is used to access the copy. > The above bogus cast gives this. This depends only __kern_getcwd() not > actually supporting u_char * but doing step (3). > > I think the bogus cast from 'signed foo_t *' to 'unsigned foo_t *' gives > undefined behaviour in general, but for foo_t = char it only gives > implementation-defined behaviour (different interpretations of the sign > bit and +-0), at least in POSIX where chars are 8 bits so there is no > space for extra bits. The only case of even theoretical interest is > +-0 on 1's complement systems with plain char = signed char . Then +-0 > cannot be distinguished as chars. FreeBSD just doesn't support such > systems. At least to the extent of handling the file name "\xff" on > a removable disk generated on a 2's complement system. > > The cast of malloc() is also bogus. > Thanks, Bruce! So, let's change kern___getcwd() definition: diff --git a/sys/compat/freebsd32/syscalls.master b/sys/compat/freebsd32/syscalls.master index 5d445a5..ce655bc 100644 --- a/sys/compat/freebsd32/syscalls.master +++ b/sys/compat/freebsd32/syscalls.master @@ -583,7 +583,7 @@ 323 AUE_NULL OBSOL thr_wakeup 324 AUE_MLOCKALL NOPROTO { int mlockall(int how); } 325 AUE_MUNLOCKALL NOPROTO { int munlockall(void); } -326 AUE_GETCWD NOPROTO { int __getcwd(u_char *buf, u_int buflen); } +326 AUE_GETCWD NOPROTO { int __getcwd(char *buf, u_int buflen); } 327 AUE_NULL NOPROTO { int sched_setparam (pid_t pid, \ const struct sched_param *param); } diff --git a/sys/compat/linux/linux_getcwd.c b/sys/compat/linux/linux_getcwd.c index 1278721..448c404 100644 --- a/sys/compat/linux/linux_getcwd.c +++ b/sys/compat/linux/linux_getcwd.c @@ -186,7 +186,7 @@ linux_getcwd_scandir(lvpp, uvpp, bpp, bufp, td) dirbuflen = DIRBLKSIZ; if (dirbuflen < va.va_blocksize) dirbuflen = va.va_blocksize; - dirbuf = (char *)malloc(dirbuflen, M_LINUX, M_WAITOK); + dirbuf = malloc(dirbuflen, M_LINUX, M_WAITOK); #if 0 unionread: @@ -413,7 +413,7 @@ out: int linux_getcwd(struct thread *td, struct linux_getcwd_args *args) { - caddr_t bp, bend, path; + char *bp, *bend, *path; int error, len, lenused; #ifdef DEBUG @@ -428,9 +428,9 @@ linux_getcwd(struct thread *td, struct linux_getcwd_args *args) else if (len < 2) return ERANGE; - path = (char *)malloc(len, M_LINUX, M_WAITOK); + path = malloc(len, M_LINUX, M_WAITOK); - error = kern___getcwd(td, (u_char *)path, UIO_SYSSPACE, len); + error = kern___getcwd(td, path, UIO_SYSSPACE, len); if (!error) { lenused = strlen(path) + 1; if (lenused <= args->bufsize) { diff --git a/sys/kern/syscalls.master b/sys/kern/syscalls.master index e0f8b61..089896b 100644 --- a/sys/kern/syscalls.master +++ b/sys/kern/syscalls.master @@ -571,7 +571,7 @@ 323 AUE_NULL OBSOL thr_wakeup 324 AUE_MLOCKALL STD { int mlockall(int how); } 325 AUE_MUNLOCKALL STD { int munlockall(void); } -326 AUE_GETCWD STD { int __getcwd(u_char *buf, u_int buflen); } +326 AUE_GETCWD STD { int __getcwd(char *buf, u_int buflen); } 327 AUE_NULL STD { int sched_setparam (pid_t pid, \ const struct sched_param *param); } diff --git a/sys/kern/vfs_cache.c b/sys/kern/vfs_cache.c index 55e3217..398d21c 100644 --- a/sys/kern/vfs_cache.c +++ b/sys/kern/vfs_cache.c @@ -1043,14 +1043,6 @@ vfs_cache_lookup(ap) return (error); } - -#ifndef _SYS_SYSPROTO_H_ -struct __getcwd_args { - u_char *buf; - u_int buflen; -}; -#endif - /* * XXX All of these sysctls would probably be more productive dead. */ @@ -1060,16 +1052,14 @@ SYSCTL_INT(_debug, OID_AUTO, disablecwd, CTLFLAG_RW, &disablecwd, 0, /* Implementation of the getcwd syscall. */ int -sys___getcwd(td, uap) - struct thread *td; - struct __getcwd_args *uap; +sys___getcwd(struct thread *td, struct __getcwd_args *uap) { return (kern___getcwd(td, uap->buf, UIO_USERSPACE, uap->buflen)); } int -kern___getcwd(struct thread *td, u_char *buf, enum uio_seg bufseg, u_int buflen) +kern___getcwd(struct thread *td, char *buf, enum uio_seg bufseg, u_int buflen) { char *bp, *tmpbuf; struct filedesc *fdp; diff --git a/sys/sys/syscallsubr.h b/sys/sys/syscallsubr.h index 8f074cc..75138ba 100644 --- a/sys/sys/syscallsubr.h +++ b/sys/sys/syscallsubr.h @@ -60,7 +60,7 @@ struct __wrusage; int do_execve(struct thread *td, struct image_args *args, struct mac *mac_p); -int kern___getcwd(struct thread *td, u_char *buf, enum uio_seg bufseg, +int kern___getcwd(struct thread *td, char *buf, enum uio_seg bufseg, u_int buflen); int kern_accept(struct thread *td, int s, struct sockaddr **name, socklen_t *namelen, struct file **fp); -- Have fun! chd From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 11:04:19 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F049FF58; Sat, 3 Jan 2015 11:04:18 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id DC81F662BE; Sat, 3 Jan 2015 11:04:18 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03B4Ikm082134; Sat, 3 Jan 2015 11:04:18 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03B4IKV082133; Sat, 3 Jan 2015 11:04:18 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201501031104.t03B4IKV082133@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Sat, 3 Jan 2015 11:04:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276611 - head/sys/dev/usb/wlan X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 11:04:19 -0000 Author: hselasky Date: Sat Jan 3 11:04:17 2015 New Revision: 276611 URL: https://svnweb.freebsd.org/changeset/base/276611 Log: Make sure an error case exits unlocked. Submitted by: Dmitry Luhtionov MFC after: 1 week Modified: head/sys/dev/usb/wlan/if_rsu.c Modified: head/sys/dev/usb/wlan/if_rsu.c ============================================================================== --- head/sys/dev/usb/wlan/if_rsu.c Sat Jan 3 06:55:58 2015 (r276610) +++ head/sys/dev/usb/wlan/if_rsu.c Sat Jan 3 11:04:17 2015 (r276611) @@ -328,11 +328,11 @@ rsu_attach(device_t self) if (sc->cut != 3) sc->cut = (sc->cut >> 1) + 1; error = rsu_read_rom(sc); + RSU_UNLOCK(sc); if (error != 0) { device_printf(self, "could not read ROM\n"); goto fail_rom; } - RSU_UNLOCK(sc); IEEE80211_ADDR_COPY(sc->sc_bssid, &sc->rom[0x12]); device_printf(self, "MAC/BB RTL8712 cut %d\n", sc->cut); ifp = sc->sc_ifp = if_alloc(IFT_IEEE80211); From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 11:52:44 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B48D14A4; Sat, 3 Jan 2015 11:52:44 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9E8FE183C; Sat, 3 Jan 2015 11:52:44 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03BqiSx005105; Sat, 3 Jan 2015 11:52:44 GMT (envelope-from des@FreeBSD.org) Received: (from des@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03BqiLK005101; Sat, 3 Jan 2015 11:52:44 GMT (envelope-from des@FreeBSD.org) Message-Id: <201501031152.t03BqiLK005101@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: des set sender to des@FreeBSD.org using -f From: Dag-Erling Smørgrav Date: Sat, 3 Jan 2015 11:52:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276612 - in head/contrib/unbound: dnstap doc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 11:52:44 -0000 Author: des Date: Sat Jan 3 11:52:43 2015 New Revision: 276612 URL: https://svnweb.freebsd.org/changeset/base/276612 Log: Add generated files. Added: head/contrib/unbound/dnstap/dnstap_config.h head/contrib/unbound/doc/example.conf head/contrib/unbound/doc/unbound-host.1 Added: head/contrib/unbound/dnstap/dnstap_config.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/contrib/unbound/dnstap/dnstap_config.h Sat Jan 3 11:52:43 2015 (r276612) @@ -0,0 +1,17 @@ +#ifndef UNBOUND_DNSTAP_CONFIG_H +#define UNBOUND_DNSTAP_CONFIG_H + +/* + * Process this file (dnstap_config.h.in) with AC_CONFIG_FILES to generate + * dnstap_config.h. + * + * This file exists so that USE_DNSTAP can be used without including config.h. + */ + +#if 0 /* ENABLE_DNSTAP */ +# ifndef USE_DNSTAP +# define USE_DNSTAP 1 +# endif +#endif + +#endif /* UNBOUND_DNSTAP_CONFIG_H */ Added: head/contrib/unbound/doc/example.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/contrib/unbound/doc/example.conf Sat Jan 3 11:52:43 2015 (r276612) @@ -0,0 +1,603 @@ +# +# Example configuration file. +# +# See unbound.conf(5) man page, version 1.5.1. +# +# this is a comment. + +#Use this to include other text into the file. +#include: "otherfile.conf" + +# The server clause sets the main parameters. +server: + # whitespace is not necessary, but looks cleaner. + + # verbosity number, 0 is least verbose. 1 is default. + verbosity: 1 + + # print statistics to the log (for every thread) every N seconds. + # Set to "" or 0 to disable. Default is disabled. + # statistics-interval: 0 + + # enable cumulative statistics, without clearing them after printing. + # statistics-cumulative: no + + # enable extended statistics (query types, answer codes, status) + # printed from unbound-control. default off, because of speed. + # extended-statistics: no + + # number of threads to create. 1 disables threading. + # num-threads: 1 + + # specify the interfaces to answer queries from by ip-address. + # The default is to listen to localhost (127.0.0.1 and ::1). + # specify 0.0.0.0 and ::0 to bind to all available interfaces. + # specify every interface[@port] on a new 'interface:' labelled line. + # The listen interfaces are not changed on reload, only on restart. + # interface: 192.0.2.153 + # interface: 192.0.2.154 + # interface: 192.0.2.154@5003 + # interface: 2001:DB8::5 + + # enable this feature to copy the source address of queries to reply. + # Socket options are not supported on all platforms. experimental. + # interface-automatic: no + + # port to answer queries from + # port: 53 + + # specify the interfaces to send outgoing queries to authoritative + # server from by ip-address. If none, the default (all) interface + # is used. Specify every interface on a 'outgoing-interface:' line. + # outgoing-interface: 192.0.2.153 + # outgoing-interface: 2001:DB8::5 + # outgoing-interface: 2001:DB8::6 + + # number of ports to allocate per thread, determines the size of the + # port range that can be open simultaneously. About double the + # num-queries-per-thread, or, use as many as the OS will allow you. + # outgoing-range: 4096 + + # permit unbound to use this port number or port range for + # making outgoing queries, using an outgoing interface. + # outgoing-port-permit: 32768 + + # deny unbound the use this of port number or port range for + # making outgoing queries, using an outgoing interface. + # Use this to make sure unbound does not grab a UDP port that some + # other server on this computer needs. The default is to avoid + # IANA-assigned port numbers. + # If multiple outgoing-port-permit and outgoing-port-avoid options + # are present, they are processed in order. + # outgoing-port-avoid: "3200-3208" + + # number of outgoing simultaneous tcp buffers to hold per thread. + # outgoing-num-tcp: 10 + + # number of incoming simultaneous tcp buffers to hold per thread. + # incoming-num-tcp: 10 + + # buffer size for UDP port 53 incoming (SO_RCVBUF socket option). + # 0 is system default. Use 4m to catch query spikes for busy servers. + # so-rcvbuf: 0 + + # buffer size for UDP port 53 outgoing (SO_SNDBUF socket option). + # 0 is system default. Use 4m to handle spikes on very busy servers. + # so-sndbuf: 0 + + # use SO_REUSEPORT to distribute queries over threads. + # so-reuseport: no + + # EDNS reassembly buffer to advertise to UDP peers (the actual buffer + # is set with msg-buffer-size). 1480 can solve fragmentation (timeouts). + # edns-buffer-size: 4096 + + # Maximum UDP response size (not applied to TCP response). + # Suggested values are 512 to 4096. Default is 4096. 65536 disables it. + # max-udp-size: 4096 + + # buffer size for handling DNS data. No messages larger than this + # size can be sent or received, by UDP or TCP. In bytes. + # msg-buffer-size: 65552 + + # the amount of memory to use for the message cache. + # plain value in bytes or you can append k, m or G. default is "4Mb". + # msg-cache-size: 4m + + # the number of slabs to use for the message cache. + # the number of slabs must be a power of 2. + # more slabs reduce lock contention, but fragment memory usage. + # msg-cache-slabs: 4 + + # the number of queries that a thread gets to service. + # num-queries-per-thread: 1024 + + # if very busy, 50% queries run to completion, 50% get timeout in msec + # jostle-timeout: 200 + + # msec to wait before close of port on timeout UDP. 0 disables. + # delay-close: 0 + + # the amount of memory to use for the RRset cache. + # plain value in bytes or you can append k, m or G. default is "4Mb". + # rrset-cache-size: 4m + + # the number of slabs to use for the RRset cache. + # the number of slabs must be a power of 2. + # more slabs reduce lock contention, but fragment memory usage. + # rrset-cache-slabs: 4 + + # the time to live (TTL) value lower bound, in seconds. Default 0. + # If more than an hour could easily give trouble due to stale data. + # cache-min-ttl: 0 + + # the time to live (TTL) value cap for RRsets and messages in the + # cache. Items are not cached for longer. In seconds. + # cache-max-ttl: 86400 + + # the time to live (TTL) value for cached roundtrip times, lameness and + # EDNS version information for hosts. In seconds. + # infra-host-ttl: 900 + + # the number of slabs to use for the Infrastructure cache. + # the number of slabs must be a power of 2. + # more slabs reduce lock contention, but fragment memory usage. + # infra-cache-slabs: 4 + + # the maximum number of hosts that are cached (roundtrip, EDNS, lame). + # infra-cache-numhosts: 10000 + + # Enable IPv4, "yes" or "no". + # do-ip4: yes + + # Enable IPv6, "yes" or "no". + # do-ip6: yes + + # Enable UDP, "yes" or "no". + # do-udp: yes + + # Enable TCP, "yes" or "no". + # do-tcp: yes + + # upstream connections use TCP only (and no UDP), "yes" or "no" + # useful for tunneling scenarios, default no. + # tcp-upstream: no + + # Detach from the terminal, run in background, "yes" or "no". + # do-daemonize: yes + + # control which clients are allowed to make (recursive) queries + # to this server. Specify classless netblocks with /size and action. + # By default everything is refused, except for localhost. + # Choose deny (drop message), refuse (polite error reply), + # allow (recursive ok), allow_snoop (recursive and nonrecursive ok) + # deny_non_local (drop queries unless can be answered from local-data) + # refuse_non_local (like deny_non_local but polite error reply). + # access-control: 0.0.0.0/0 refuse + # access-control: 127.0.0.0/8 allow + # access-control: ::0/0 refuse + # access-control: ::1 allow + # access-control: ::ffff:127.0.0.1 allow + + # if given, a chroot(2) is done to the given directory. + # i.e. you can chroot to the working directory, for example, + # for extra security, but make sure all files are in that directory. + # + # If chroot is enabled, you should pass the configfile (from the + # commandline) as a full path from the original root. After the + # chroot has been performed the now defunct portion of the config + # file path is removed to be able to reread the config after a reload. + # + # All other file paths (working dir, logfile, roothints, and + # key files) can be specified in several ways: + # o as an absolute path relative to the new root. + # o as a relative path to the working directory. + # o as an absolute path relative to the original root. + # In the last case the path is adjusted to remove the unused portion. + # + # The pid file can be absolute and outside of the chroot, it is + # written just prior to performing the chroot and dropping permissions. + # + # Additionally, unbound may need to access /dev/random (for entropy). + # How to do this is specific to your OS. + # + # If you give "" no chroot is performed. The path must not end in a /. + # chroot: "/var/unbound" + + # if given, user privileges are dropped (after binding port), + # and the given username is assumed. Default is user "unbound". + # If you give "" no privileges are dropped. + # username: "unbound" + + # the working directory. The relative files in this config are + # relative to this directory. If you give "" the working directory + # is not changed. + # directory: "/var/unbound" + + # the log file, "" means log to stderr. + # Use of this option sets use-syslog to "no". + # logfile: "" + + # Log to syslog(3) if yes. The log facility LOG_DAEMON is used to + # log to, with identity "unbound". If yes, it overrides the logfile. + # use-syslog: yes + + # print UTC timestamp in ascii to logfile, default is epoch in seconds. + # log-time-ascii: no + + # print one line with time, IP, name, type, class for every query. + # log-queries: no + + # the pid file. Can be an absolute path outside of chroot/work dir. + # pidfile: "/var/unbound/unbound.pid" + + # file to read root hints from. + # get one from ftp://FTP.INTERNIC.NET/domain/named.cache + # root-hints: "" + + # enable to not answer id.server and hostname.bind queries. + # hide-identity: no + + # enable to not answer version.server and version.bind queries. + # hide-version: no + + # the identity to report. Leave "" or default to return hostname. + # identity: "" + + # the version to report. Leave "" or default to return package version. + # version: "" + + # the target fetch policy. + # series of integers describing the policy per dependency depth. + # The number of values in the list determines the maximum dependency + # depth the recursor will pursue before giving up. Each integer means: + # -1 : fetch all targets opportunistically, + # 0: fetch on demand, + # positive value: fetch that many targets opportunistically. + # Enclose the list of numbers between quotes (""). + # target-fetch-policy: "3 2 1 0 0" + + # Harden against very small EDNS buffer sizes. + # harden-short-bufsize: no + + # Harden against unseemly large queries. + # harden-large-queries: no + + # Harden against out of zone rrsets, to avoid spoofing attempts. + # harden-glue: yes + + # Harden against receiving dnssec-stripped data. If you turn it + # off, failing to validate dnskey data for a trustanchor will + # trigger insecure mode for that zone (like without a trustanchor). + # Default on, which insists on dnssec data for trust-anchored zones. + # harden-dnssec-stripped: yes + + # Harden against queries that fall under dnssec-signed nxdomain names. + # harden-below-nxdomain: no + + # Harden the referral path by performing additional queries for + # infrastructure data. Validates the replies (if possible). + # Default off, because the lookups burden the server. Experimental + # implementation of draft-wijngaards-dnsext-resolver-side-mitigation. + # harden-referral-path: no + + # Use 0x20-encoded random bits in the query to foil spoof attempts. + # This feature is an experimental implementation of draft dns-0x20. + # use-caps-for-id: no + + # Enforce privacy of these addresses. Strips them away from answers. + # It may cause DNSSEC validation to additionally mark it as bogus. + # Protects against 'DNS Rebinding' (uses browser as network proxy). + # Only 'private-domain' and 'local-data' names are allowed to have + # these private addresses. No default. + # private-address: 10.0.0.0/8 + # private-address: 172.16.0.0/12 + # private-address: 192.168.0.0/16 + # private-address: 169.254.0.0/16 + # private-address: fd00::/8 + # private-address: fe80::/10 + + # Allow the domain (and its subdomains) to contain private addresses. + # local-data statements are allowed to contain private addresses too. + # private-domain: "example.com" + + # If nonzero, unwanted replies are not only reported in statistics, + # but also a running total is kept per thread. If it reaches the + # threshold, a warning is printed and a defensive action is taken, + # the cache is cleared to flush potential poison out of it. + # A suggested value is 10000000, the default is 0 (turned off). + # unwanted-reply-threshold: 0 + + # Do not query the following addresses. No DNS queries are sent there. + # List one address per entry. List classless netblocks with /size, + # do-not-query-address: 127.0.0.1/8 + # do-not-query-address: ::1 + + # if yes, the above default do-not-query-address entries are present. + # if no, localhost can be queried (for testing and debugging). + # do-not-query-localhost: yes + + # if yes, perform prefetching of almost expired message cache entries. + # prefetch: no + + # if yes, perform key lookups adjacent to normal lookups. + # prefetch-key: no + + # if yes, Unbound rotates RRSet order in response. + # rrset-roundrobin: no + + # if yes, Unbound doesn't insert authority/additional sections + # into response messages when those sections are not required. + # minimal-responses: no + + # module configuration of the server. A string with identifiers + # separated by spaces. Syntax: "[dns64] [validator] iterator" + # module-config: "validator iterator" + + # File with trusted keys, kept uptodate using RFC5011 probes, + # initial file like trust-anchor-file, then it stores metadata. + # Use several entries, one per domain name, to track multiple zones. + # + # If you want to perform DNSSEC validation, run unbound-anchor before + # you start unbound (i.e. in the system boot scripts). And enable: + # Please note usage of unbound-anchor root anchor is at your own risk + # and under the terms of our LICENSE (see that file in the source). + # auto-trust-anchor-file: "/var/unbound/root.key" + + # File with DLV trusted keys. Same format as trust-anchor-file. + # There can be only one DLV configured, it is trusted from root down. + # Download http://ftp.isc.org/www/dlv/dlv.isc.org.key + # dlv-anchor-file: "dlv.isc.org.key" + + # File with trusted keys for validation. Specify more than one file + # with several entries, one file per entry. + # Zone file format, with DS and DNSKEY entries. + # Note this gets out of date, use auto-trust-anchor-file please. + # trust-anchor-file: "" + + # Trusted key for validation. DS or DNSKEY. specify the RR on a + # single line, surrounded by "". TTL is ignored. class is IN default. + # Note this gets out of date, use auto-trust-anchor-file please. + # (These examples are from August 2007 and may not be valid anymore). + # trust-anchor: "nlnetlabs.nl. DNSKEY 257 3 5 AQPzzTWMz8qSWIQlfRnPckx2BiVmkVN6LPupO3mbz7FhLSnm26n6iG9N Lby97Ji453aWZY3M5/xJBSOS2vWtco2t8C0+xeO1bc/d6ZTy32DHchpW 6rDH1vp86Ll+ha0tmwyy9QP7y2bVw5zSbFCrefk8qCUBgfHm9bHzMG1U BYtEIQ==" + # trust-anchor: "jelte.nlnetlabs.nl. DS 42860 5 1 14D739EB566D2B1A5E216A0BA4D17FA9B038BE4A" + + # File with trusted keys for validation. Specify more than one file + # with several entries, one file per entry. Like trust-anchor-file + # but has a different file format. Format is BIND-9 style format, + # the trusted-keys { name flag proto algo "key"; }; clauses are read. + # you need external update procedures to track changes in keys. + # trusted-keys-file: "" + + # Ignore chain of trust. Domain is treated as insecure. + # domain-insecure: "example.com" + + # Override the date for validation with a specific fixed date. + # Do not set this unless you are debugging signature inception + # and expiration. "" or "0" turns the feature off. -1 ignores date. + # val-override-date: "" + + # The time to live for bogus data, rrsets and messages. This avoids + # some of the revalidation, until the time interval expires. in secs. + # val-bogus-ttl: 60 + + # The signature inception and expiration dates are allowed to be off + # by 10% of the signature lifetime (expir-incep) from our local clock. + # This leeway is capped with a minimum and a maximum. In seconds. + # val-sig-skew-min: 3600 + # val-sig-skew-max: 86400 + + # Should additional section of secure message also be kept clean of + # unsecure data. Useful to shield the users of this validator from + # potential bogus data in the additional section. All unsigned data + # in the additional section is removed from secure messages. + # val-clean-additional: yes + + # Turn permissive mode on to permit bogus messages. Thus, messages + # for which security checks failed will be returned to clients, + # instead of SERVFAIL. It still performs the security checks, which + # result in interesting log files and possibly the AD bit in + # replies if the message is found secure. The default is off. + # val-permissive-mode: no + + # Ignore the CD flag in incoming queries and refuse them bogus data. + # Enable it if the only clients of unbound are legacy servers (w2008) + # that set CD but cannot validate themselves. + # ignore-cd-flag: no + + # Have the validator log failed validations for your diagnosis. + # 0: off. 1: A line per failed user query. 2: With reason and bad IP. + # val-log-level: 0 + + # It is possible to configure NSEC3 maximum iteration counts per + # keysize. Keep this table very short, as linear search is done. + # A message with an NSEC3 with larger count is marked insecure. + # List in ascending order the keysize and count values. + # val-nsec3-keysize-iterations: "1024 150 2048 500 4096 2500" + + # instruct the auto-trust-anchor-file probing to add anchors after ttl. + # add-holddown: 2592000 # 30 days + + # instruct the auto-trust-anchor-file probing to del anchors after ttl. + # del-holddown: 2592000 # 30 days + + # auto-trust-anchor-file probing removes missing anchors after ttl. + # If the value 0 is given, missing anchors are not removed. + # keep-missing: 31622400 # 366 days + + # the amount of memory to use for the key cache. + # plain value in bytes or you can append k, m or G. default is "4Mb". + # key-cache-size: 4m + + # the number of slabs to use for the key cache. + # the number of slabs must be a power of 2. + # more slabs reduce lock contention, but fragment memory usage. + # key-cache-slabs: 4 + + # the amount of memory to use for the negative cache (used for DLV). + # plain value in bytes or you can append k, m or G. default is "1Mb". + # neg-cache-size: 1m + + # By default, for a number of zones a small default 'nothing here' + # reply is built-in. Query traffic is thus blocked. If you + # wish to serve such zone you can unblock them by uncommenting one + # of the nodefault statements below. + # You may also have to use domain-insecure: zone to make DNSSEC work, + # unless you have your own trust anchors for this zone. + # local-zone: "localhost." nodefault + # local-zone: "127.in-addr.arpa." nodefault + # local-zone: "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa." nodefault + # local-zone: "10.in-addr.arpa." nodefault + # local-zone: "16.172.in-addr.arpa." nodefault + # local-zone: "17.172.in-addr.arpa." nodefault + # local-zone: "18.172.in-addr.arpa." nodefault + # local-zone: "19.172.in-addr.arpa." nodefault + # local-zone: "20.172.in-addr.arpa." nodefault + # local-zone: "21.172.in-addr.arpa." nodefault + # local-zone: "22.172.in-addr.arpa." nodefault + # local-zone: "23.172.in-addr.arpa." nodefault + # local-zone: "24.172.in-addr.arpa." nodefault + # local-zone: "25.172.in-addr.arpa." nodefault + # local-zone: "26.172.in-addr.arpa." nodefault + # local-zone: "27.172.in-addr.arpa." nodefault + # local-zone: "28.172.in-addr.arpa." nodefault + # local-zone: "29.172.in-addr.arpa." nodefault + # local-zone: "30.172.in-addr.arpa." nodefault + # local-zone: "31.172.in-addr.arpa." nodefault + # local-zone: "168.192.in-addr.arpa." nodefault + # local-zone: "0.in-addr.arpa." nodefault + # local-zone: "254.169.in-addr.arpa." nodefault + # local-zone: "2.0.192.in-addr.arpa." nodefault + # local-zone: "100.51.198.in-addr.arpa." nodefault + # local-zone: "113.0.203.in-addr.arpa." nodefault + # local-zone: "255.255.255.255.in-addr.arpa." nodefault + # local-zone: "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa." nodefault + # local-zone: "d.f.ip6.arpa." nodefault + # local-zone: "8.e.f.ip6.arpa." nodefault + # local-zone: "9.e.f.ip6.arpa." nodefault + # local-zone: "a.e.f.ip6.arpa." nodefault + # local-zone: "b.e.f.ip6.arpa." nodefault + # local-zone: "8.b.d.0.1.0.0.2.ip6.arpa." nodefault + # And for 64.100.in-addr.arpa. to 127.100.in-addr.arpa. + + # if unbound is running service for the local host then it is useful + # to perform lan-wide lookups to the upstream, and unblock the + # long list of local-zones above. If this unbound is a dns server + # for a network of computers, disabled is better and stops information + # leakage of local lan information. + # unblock-lan-zones: no + + # a number of locally served zones can be configured. + # local-zone: + # local-data: "" + # o deny serves local data (if any), else, drops queries. + # o refuse serves local data (if any), else, replies with error. + # o static serves local data, else, nxdomain or nodata answer. + # o transparent gives local data, but resolves normally for other names + # o redirect serves the zone data for any subdomain in the zone. + # o nodefault can be used to normally resolve AS112 zones. + # o typetransparent resolves normally for other types and other names + # + # defaults are localhost address, reverse for 127.0.0.1 and ::1 + # and nxdomain for AS112 zones. If you configure one of these zones + # the default content is omitted, or you can omit it with 'nodefault'. + # + # If you configure local-data without specifying local-zone, by + # default a transparent local-zone is created for the data. + # + # You can add locally served data with + # local-zone: "local." static + # local-data: "mycomputer.local. IN A 192.0.2.51" + # local-data: 'mytext.local TXT "content of text record"' + # + # You can override certain queries with + # local-data: "adserver.example.com A 127.0.0.1" + # + # You can redirect a domain to a fixed address with + # (this makes example.com, www.example.com, etc, all go to 192.0.2.3) + # local-zone: "example.com" redirect + # local-data: "example.com A 192.0.2.3" + # + # Shorthand to make PTR records, "IPv4 name" or "IPv6 name". + # You can also add PTR records using local-data directly, but then + # you need to do the reverse notation yourself. + # local-data-ptr: "192.0.2.3 www.example.com" + + # service clients over SSL (on the TCP sockets), with plain DNS inside + # the SSL stream. Give the certificate to use and private key. + # default is "" (disabled). requires restart to take effect. + # ssl-service-key: "path/to/privatekeyfile.key" + # ssl-service-pem: "path/to/publiccertfile.pem" + # ssl-port: 443 + + # request upstream over SSL (with plain DNS inside the SSL stream). + # Default is no. Can be turned on and off with unbound-control. + # ssl-upstream: no + + # DNS64 prefix. Must be specified when DNS64 is use. + # Enable dns64 in module-config. Used to synthesize IPv6 from IPv4. + # dns64-prefix: 64:ff9b::0/96 + +# Python config section. To enable: +# o use --with-pythonmodule to configure before compiling. +# o list python in the module-config string (above) to enable. +# o and give a python-script to run. +python: + # Script file to load + # python-script: "/var/unbound/ubmodule-tst.py" + +# Remote control config section. +remote-control: + # Enable remote control with unbound-control(8) here. + # set up the keys and certificates with unbound-control-setup. + # control-enable: no + + # what interfaces are listened to for remote control. + # give 0.0.0.0 and ::0 to listen to all interfaces. + # control-interface: 127.0.0.1 + # control-interface: ::1 + + # port number for remote control operations. + # control-port: 8953 + + # unbound server key file. + # server-key-file: "/var/unbound/unbound_server.key" + + # unbound server certificate file. + # server-cert-file: "/var/unbound/unbound_server.pem" + + # unbound-control key file. + # control-key-file: "/var/unbound/unbound_control.key" + + # unbound-control certificate file. + # control-cert-file: "/var/unbound/unbound_control.pem" + +# Stub zones. +# Create entries like below, to make all queries for 'example.com' and +# 'example.org' go to the given list of nameservers. list zero or more +# nameservers by hostname or by ipaddress. If you set stub-prime to yes, +# the list is treated as priming hints (default is no). +# With stub-first yes, it attempts without the stub if it fails. +# stub-zone: +# name: "example.com" +# stub-addr: 192.0.2.68 +# stub-prime: no +# stub-first: no +# stub-zone: +# name: "example.org" +# stub-host: ns.example.com. + +# Forward zones +# Create entries like below, to make all queries for 'example.com' and +# 'example.org' go to the given list of servers. These servers have to handle +# recursion to other nameservers. List zero or more nameservers by hostname +# or by ipaddress. Use an entry with name "." to forward all queries. +# If you enable forward-first, it attempts without the forward if it fails. +# forward-zone: +# name: "example.com" +# forward-addr: 192.0.2.68 +# forward-addr: 192.0.2.73@5355 # forward to port 5355. +# forward-first: no +# forward-zone: +# name: "example.org" +# forward-host: fwd.example.com Added: head/contrib/unbound/doc/unbound-host.1 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/contrib/unbound/doc/unbound-host.1 Sat Jan 3 11:52:43 2015 (r276612) @@ -0,0 +1,116 @@ +.TH "unbound\-host" "1" "Dec 8, 2014" "NLnet Labs" "unbound 1.5.1" +.\" +.\" unbound-host.1 -- unbound DNS lookup utility +.\" +.\" Copyright (c) 2007, NLnet Labs. All rights reserved. +.\" +.\" See LICENSE for the license. +.\" +.\" +.SH "NAME" +.B unbound\-host +\- unbound DNS lookup utility +.SH "SYNOPSIS" +.B unbound\-host +.RB [ \-vdhr46D ] +.RB [ \-c +.IR class ] +.RB [ \-t +.IR type ] +.I hostname +.RB [ \-y +.IR key ] +.RB [ \-f +.IR keyfile ] +.RB [ \-F +.IR namedkeyfile ] +.RB [ \-C +.IR configfile ] +.SH "DESCRIPTION" +.B Unbound\-host +uses the unbound validating resolver to query for the hostname and display +results. With the \fB\-v\fR option it displays validation +status: secure, insecure, bogus (security failure). +.P +By default it reads no configuration file whatsoever. It attempts to reach +the internet root servers. With \fB\-C\fR an unbound config file and with +\fB\-r\fR resolv.conf can be read. +.P +The available options are: +.TP +.I hostname +This name is resolved (looked up in the DNS). +If a IPv4 or IPv6 address is given, a reverse lookup is performed. +.TP +.B \-h +Show the version and commandline option help. +.TP +.B \-v +Enable verbose output and it shows validation results, on every line. +Secure means that the NXDOMAIN (no such domain name), nodata (no such data) +or positive data response validated correctly with one of the keys. +Insecure means that that domain name has no security set up for it. +Bogus (security failure) means that the response failed one or more checks, +it is likely wrong, outdated, tampered with, or broken. +.TP +.B \-d +Enable debug output to stderr. One \-d shows what the resolver and validator +are doing and may tell you what is going on. More times, \-d \-d, gives a +lot of output, with every packet sent and received. +.TP +.B \-c \fIclass +Specify the class to lookup for, the default is IN the internet class. +.TP +.B \-t \fItype +Specify the type of data to lookup. The default looks for IPv4, IPv6 and +mail handler data, or domain name pointers for reverse queries. +.TP +.B \-y \fIkey +Specify a public key to use as trust anchor. This is the base for a chain +of trust that is built up from the trust anchor to the response, in order +to validate the response message. Can be given as a DS or DNSKEY record. +For example \-y "example.com DS 31560 5 1 1CFED84787E6E19CCF9372C1187325972FE546CD". +.TP +.B \-D +Enables DNSSEC validation. Reads the root anchor from the default configured +root anchor at the default location, \fI/var/unbound/root.key\fR. +.TP +.B \-f \fIkeyfile +Reads keys from a file. Every line has a DS or DNSKEY record, in the format +as for \-y. The zone file format, the same as dig and drill produce. +.TP +.B \-F \fInamedkeyfile +Reads keys from a BIND\-style named.conf file. Only the trusted\-key {}; entries +are read. +.TP +.B \-C \fIconfigfile +Uses the specified unbound.conf to prime +.IR libunbound (3). +.TP +.B \-r +Read /etc/resolv.conf, and use the forward DNS servers from there (those could +have been set by DHCP). More info in +.IR resolv.conf (5). +Breaks validation if those servers do not support DNSSEC. +.TP +.B \-4 +Use solely the IPv4 network for sending packets. +.TP +.B \-6 +Use solely the IPv6 network for sending packets. +.SH "EXAMPLES" +Some examples of use. The keys shown below are fakes, thus a security failure +is encountered. +.P +$ unbound\-host www.example.com +.P +$ unbound\-host \-v \-y "example.com DS 31560 5 1 1CFED84787E6E19CCF9372C1187325972FE546CD" www.example.com +.P +$ unbound\-host \-v \-y "example.com DS 31560 5 1 1CFED84787E6E19CCF9372C1187325972FE546CD" 192.0.2.153 +.SH "EXIT CODE" +The unbound\-host program exits with status code 1 on error, +0 on no error. The data may not be available on exit code 0, exit code 1 +means the lookup encountered a fatal error. +.SH "SEE ALSO" +\fIunbound.conf\fR(5), +\fIunbound\fR(8). From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 16:24:28 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 716359FD; Sat, 3 Jan 2015 16:24:28 +0000 (UTC) Received: from mho-02-ewr.mailhop.org (mho-02-ewr.mailhop.org [204.13.248.72]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4576D10CC; Sat, 3 Jan 2015 16:24:27 +0000 (UTC) Received: from [73.34.117.227] (helo=ilsoft.org) by mho-02-ewr.mailhop.org with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.72) (envelope-from ) id 1Y7RUz-0009sY-7Q; Sat, 03 Jan 2015 16:24:21 +0000 Received: from revolution.hippie.lan (revolution.hippie.lan [172.22.42.240]) by ilsoft.org (8.14.9/8.14.9) with ESMTP id t03GOJft003931; Sat, 3 Jan 2015 09:24:19 -0700 (MST) (envelope-from ian@freebsd.org) X-Mail-Handler: Dyn Standard SMTP by Dyn X-Originating-IP: 73.34.117.227 X-Report-Abuse-To: abuse@dyndns.com (see http://www.dyndns.com/services/sendlabs/outbound_abuse.html for abuse reporting information) X-MHO-User: U2FsdGVkX19rrnfjYhw+XSrrWrkij7YE Message-ID: <1420302259.85983.26.camel@freebsd.org> Subject: Re: svn commit: r276596 - in head/sys/arm: arm include From: Ian Lepore To: Bruce Evans Date: Sat, 03 Jan 2015 09:24:19 -0700 In-Reply-To: <20150103184754.H1159@besplex.bde.org> References: <201501022346.t02NkRgd032775@svn.freebsd.org> <20150103184754.H1159@besplex.bde.org> Content-Type: text/plain; charset="us-ascii" X-Mailer: Evolution 3.12.8 FreeBSD GNOME Team Port Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 16:24:28 -0000 On Sat, 2015-01-03 at 19:34 +1100, Bruce Evans wrote: > On Fri, 2 Jan 2015, Ian Lepore wrote: > > > Log: > > Fix alignment directives in arm asm code after clang 3.5 import. > > > > The ancient gas we've been using interprets .align 0 as align to the > > minimum required alignment for the current section. Clang's integrated > > assembler interprets it as align to a byte boundary. Fortunately both > > assemblers interpret a non-zero value as align to 2^N so just make sure > > we have appropriate non-zero values everywhere. > > > Modified: head/sys/arm/arm/bcopyinout.S > > ============================================================================== > > --- head/sys/arm/arm/bcopyinout.S Fri Jan 2 23:27:16 2015 (r276595) > > +++ head/sys/arm/arm/bcopyinout.S Fri Jan 2 23:46:26 2015 (r276596) > > @@ -52,7 +52,7 @@ __FBSDID("$FreeBSD$"); > > #else > > > > .text > > - .align 0 > > + .align 2 > > This is still confusing. > > Doesn't clang on arm support .p2align? On x86, '.align N' means align to > boundary N, where N must be a power of 2. Alignment to boundary 2**N > can be done by expanding 2**N literally or using '.p2align N'. The latter > is better, and is always (?) used in FreeBSD sources. It was also > generated by gcc-3.3.3. gcc-4 broke this and generates .align, and clang > is bug for bug compatible with the newer gcc. > > .align used to mean power of 2 alignment on x86 too, but gas changed this > in 1995, or at least introduced .p2align then: When I was searching for info on this yesterday what I found was some old mail threads in various toolchain developer venues in which it was mentioned that x86 is the odd one for .align taking a byte count that must be a power of 2 and all other platforms have always had the 2**N interpretation. I also think arm was odd in its interpretation of .align 0; other platforms interpret it as byte-alignment. It leaves arm with no way to change from an alignment of >1 to 1, so this reinterpretation by the clang authors, while a bit inconvenient for old code, seems sensible. I was also thinking that maybe a good solution to this would be ALIGN_TEXT and ALIGN_DATA macros to consolidate the yuck into one place, but that's a project for another day, yesterday I just wanted to get the arm world working again. Before I start adding new macros I really want to investigate the possibilty of using real asm macros instead of CPP, if I can find a useful intersection of syntaxes between the various tools we have to use. -- Ian From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 16:48:09 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CFABDF0D; Sat, 3 Jan 2015 16:48:09 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BC849144E; Sat, 3 Jan 2015 16:48:09 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03Gm9Mr042015; Sat, 3 Jan 2015 16:48:09 GMT (envelope-from imp@FreeBSD.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03Gm9dX042014; Sat, 3 Jan 2015 16:48:09 GMT (envelope-from imp@FreeBSD.org) Message-Id: <201501031648.t03Gm9dX042014@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: imp set sender to imp@FreeBSD.org using -f From: Warner Losh Date: Sat, 3 Jan 2015 16:48:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276625 - head/sys/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 16:48:09 -0000 Author: imp Date: Sat Jan 3 16:48:08 2015 New Revision: 276625 URL: https://svnweb.freebsd.org/changeset/base/276625 Log: Always use -Wno-unknown-pragmas, not just for clang. Modified: head/sys/conf/kern.mk Modified: head/sys/conf/kern.mk ============================================================================== --- head/sys/conf/kern.mk Sat Jan 3 16:04:28 2015 (r276624) +++ head/sys/conf/kern.mk Sat Jan 3 16:48:08 2015 (r276625) @@ -7,6 +7,7 @@ CWARNFLAGS?= -Wall -Wredundant-decls -Wn -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual \ -Wundef -Wno-pointer-sign ${FORMAT_EXTENSIONS} \ -Wmissing-include-dirs -fdiagnostics-show-option \ + -Wno-unknown-pragmas \ ${CWARNEXTRA} # # The following flags are next up for working on: @@ -27,8 +28,7 @@ NO_WSOMETIMES_UNINITIALIZED= -Wno-error- # some incentive to fix them eventually. CWARNEXTRA?= -Wno-error-tautological-compare -Wno-error-empty-body \ -Wno-error-parentheses-equality -Wno-error-unused-function \ - -Wno-error-pointer-sign -Wno-error-format -Wno-error-parentheses \ - -Wno-unknown-pragmas + -Wno-error-pointer-sign -Wno-error-format -Wno-error-parentheses .endif .if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 40300 From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 17:21:20 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5E9CA5A4; Sat, 3 Jan 2015 17:21:20 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4AA2F64A76; Sat, 3 Jan 2015 17:21:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03HLKlt060965; Sat, 3 Jan 2015 17:21:20 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03HLKHp060964; Sat, 3 Jan 2015 17:21:20 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201501031721.t03HLKHp060964@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Sat, 3 Jan 2015 17:21:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276626 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 17:21:20 -0000 Author: hselasky Date: Sat Jan 3 17:21:19 2015 New Revision: 276626 URL: https://svnweb.freebsd.org/changeset/base/276626 Log: Rework r276532 a bit. Always avoid recursing into the console drivers clients, hence they might not handle it very well. This change allows debugging mutex problems with kernel console drivers when "debug.witness.skipspin=0" is set in the boot environment. MFC after: 1 week Modified: head/sys/kern/kern_cons.c Modified: head/sys/kern/kern_cons.c ============================================================================== --- head/sys/kern/kern_cons.c Sat Jan 3 16:48:08 2015 (r276625) +++ head/sys/kern/kern_cons.c Sat Jan 3 17:21:19 2015 (r276626) @@ -512,6 +512,13 @@ cnputs(char *p) int unlock_reqd = 0; if (use_cnputs_mtx) { + /* + * NOTE: Debug prints and/or witness printouts in + * console driver clients can cause the "cnputs_mtx" + * mutex to recurse. Simply return if that happens. + */ + if (mtx_owned(&cnputs_mtx)) + return; mtx_lock_spin(&cnputs_mtx); unlock_reqd = 1; } @@ -601,13 +608,7 @@ static void cn_drvinit(void *unused) { - /* - * NOTE: Debug prints and/or witness printouts in console - * driver clients can cause the "cnputs_mtx" mutex to - * recurse. Make sure the "MTX_RECURSE" flags is set! - */ - mtx_init(&cnputs_mtx, "cnputs_mtx", NULL, MTX_SPIN | - MTX_NOWITNESS | MTX_RECURSE); + mtx_init(&cnputs_mtx, "cnputs_mtx", NULL, MTX_SPIN | MTX_NOWITNESS); use_cnputs_mtx = 1; } From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 18:09:55 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id AD7A0940; Sat, 3 Jan 2015 18:09:55 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 99D2A220A; Sat, 3 Jan 2015 18:09:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03I9t0n083062; Sat, 3 Jan 2015 18:09:55 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03I9sZB083054; Sat, 3 Jan 2015 18:09:54 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201501031809.t03I9sZB083054@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Sat, 3 Jan 2015 18:09:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276627 - in head: lib/libc/gen libexec/rtld-elf sys/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 18:09:55 -0000 Author: kib Date: Sat Jan 3 18:09:53 2015 New Revision: 276627 URL: https://svnweb.freebsd.org/changeset/base/276627 Log: Add rtld private interface for dso to detect dynamic loading vs. static linking. Tested by: pho, antoine (exp-run) Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/lib/libc/gen/Symbol.map head/lib/libc/gen/dlfcn.c head/libexec/rtld-elf/Symbol.map head/libexec/rtld-elf/rtld.c head/libexec/rtld-elf/rtld.h head/sys/sys/link_elf.h Modified: head/lib/libc/gen/Symbol.map ============================================================================== --- head/lib/libc/gen/Symbol.map Sat Jan 3 17:21:19 2015 (r276626) +++ head/lib/libc/gen/Symbol.map Sat Jan 3 18:09:53 2015 (r276627) @@ -487,6 +487,7 @@ FBSDprivate_1.0 { _rtld_atfork_post; _rtld_error; /* for private use */ _rtld_get_stack_prot; + _rtld_is_dlopened; _rtld_thread_init; /* for private use */ __elf_phdr_match_addr; _err; Modified: head/lib/libc/gen/dlfcn.c ============================================================================== --- head/lib/libc/gen/dlfcn.c Sat Jan 3 17:21:19 2015 (r276626) +++ head/lib/libc/gen/dlfcn.c Sat Jan 3 18:09:53 2015 (r276627) @@ -233,3 +233,10 @@ _rtld_get_stack_prot(void) return (PROT_EXEC | PROT_READ | PROT_WRITE); } +#pragma weak _rtld_is_dlopened +int +_rtld_is_dlopened(void *arg) +{ + + return (0); +} Modified: head/libexec/rtld-elf/Symbol.map ============================================================================== --- head/libexec/rtld-elf/Symbol.map Sat Jan 3 17:21:19 2015 (r276626) +++ head/libexec/rtld-elf/Symbol.map Sat Jan 3 18:09:53 2015 (r276627) @@ -30,5 +30,6 @@ FBSDprivate_1.0 { _rtld_atfork_post; _rtld_addr_phdr; _rtld_get_stack_prot; + _rtld_is_dlopened; _r_debug_postinit; }; Modified: head/libexec/rtld-elf/rtld.c ============================================================================== --- head/libexec/rtld-elf/rtld.c Sat Jan 3 17:21:19 2015 (r276626) +++ head/libexec/rtld-elf/rtld.c Sat Jan 3 18:09:53 2015 (r276627) @@ -2222,6 +2222,7 @@ do_load_object(int fd, const char *name, return (NULL); } + obj->dlopened = (flags & RTLD_LO_DLOPEN) != 0; *obj_tail = obj; obj_tail = &obj->next; obj_count++; @@ -4884,6 +4885,27 @@ _rtld_get_stack_prot(void) return (stack_prot); } +int +_rtld_is_dlopened(void *arg) +{ + Obj_Entry *obj; + RtldLockState lockstate; + int res; + + rlock_acquire(rtld_bind_lock, &lockstate); + obj = dlcheck(arg); + if (obj == NULL) + obj = obj_from_addr(arg); + if (obj == NULL) { + _rtld_error("No shared object contains address"); + lock_release(rtld_bind_lock, &lockstate); + return (-1); + } + res = obj->dlopened ? 1 : 0; + lock_release(rtld_bind_lock, &lockstate); + return (res); +} + static void map_stacks_exec(RtldLockState *lockstate) { Modified: head/libexec/rtld-elf/rtld.h ============================================================================== --- head/libexec/rtld-elf/rtld.h Sat Jan 3 17:21:19 2015 (r276626) +++ head/libexec/rtld-elf/rtld.h Sat Jan 3 18:09:53 2015 (r276627) @@ -275,6 +275,7 @@ typedef struct Struct_Obj_Entry { bool crt_no_init : 1; /* Object' crt does not call _init/_fini */ bool valid_hash_sysv : 1; /* A valid System V hash hash tag is available */ bool valid_hash_gnu : 1; /* A valid GNU hash tag is available */ + bool dlopened : 1; /* dlopen()-ed (vs. load statically) */ struct link_map linkmap; /* For GDB and dlinfo() */ Objlist dldags; /* Object belongs to these dlopened DAGs (%) */ Modified: head/sys/sys/link_elf.h ============================================================================== --- head/sys/sys/link_elf.h Sat Jan 3 17:21:19 2015 (r276626) +++ head/sys/sys/link_elf.h Sat Jan 3 18:09:53 2015 (r276627) @@ -94,6 +94,7 @@ typedef int (*__dl_iterate_hdr_callback) extern int dl_iterate_phdr(__dl_iterate_hdr_callback, void *); int _rtld_addr_phdr(const void *, struct dl_phdr_info *); int _rtld_get_stack_prot(void); +int _rtld_is_dlopened(void *); #ifdef __ARM_EABI__ void * dl_unwind_find_exidx(const void *, int *); From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 18:38:55 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 398E0513; Sat, 3 Jan 2015 18:38:55 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 228AA363B; Sat, 3 Jan 2015 18:38:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03Ictdw097664; Sat, 3 Jan 2015 18:38:55 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03Iclot097606; Sat, 3 Jan 2015 18:38:47 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201501031838.t03Iclot097606@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Sat, 3 Jan 2015 18:38:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276630 - in head: contrib/jemalloc/include/jemalloc/internal contrib/jemalloc/src lib/libc lib/libc/compat-43 lib/libc/gen lib/libc/include lib/libc/stdlib lib/libc/stdlib/jemalloc lib... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 18:38:55 -0000 Author: kib Date: Sat Jan 3 18:38:46 2015 New Revision: 276630 URL: https://svnweb.freebsd.org/changeset/base/276630 Log: Fix known issues which blow up the process after dlopen("libthr.so") (or loading a dso linked to libthr.so into process which was not linked against threading library). - Remove libthr interposers of the libc functions, including __error(). Instead, functions calls are indirected through the interposing table, similar to how pthread stubs in libc are already done. Libc by default points either to syscall trampolines or to existing libc implementations. On libthr load, libthr rewrites the pointers to the cancellable implementations already in libthr. The interposition table is separate from pthreads stubs indirection table to not pull pthreads stubs into static binaries. - Postpone the malloc(3) internal mutexes initialization until libthr is loaded. This avoids recursion between calloc(3) and static pthread_mutex_t initialization. - Reinstall signal handlers with wrapper on libthr load. The _rtld_is_dlopened(3) is used to avoid useless calls to sigaction(2) when libthr is statically referenced from the main binary. In the process, fix openat(2), swapcontext(2) and setcontext(2) interposing. The libc symbols were exported at different versions than libthr interposers. Export both libc and libthr versions from libc now, with default set to the higher version from libthr. Remove unused and disconnected swapcontext(3) userspace implementation from libc/gen. No objections from: deischen Tested by: pho, antoine (exp-run) (previous versions) Sponsored by: The FreeBSD Foundation MFC after: 1 week Added: head/lib/libc/gen/__pthread_mutex_init_calloc_cb_stub.c (contents, props changed) head/lib/libc/sys/accept.c (contents, props changed) head/lib/libc/sys/accept4.c (contents, props changed) head/lib/libc/sys/aio_suspend.c (contents, props changed) head/lib/libc/sys/close.c (contents, props changed) head/lib/libc/sys/connect.c (contents, props changed) head/lib/libc/sys/fork.c (contents, props changed) head/lib/libc/sys/fsync.c (contents, props changed) head/lib/libc/sys/interposing_table.c (contents, props changed) head/lib/libc/sys/msync.c (contents, props changed) head/lib/libc/sys/nanosleep.c (contents, props changed) head/lib/libc/sys/open.c (contents, props changed) head/lib/libc/sys/openat.c (contents, props changed) head/lib/libc/sys/poll.c (contents, props changed) head/lib/libc/sys/pselect.c (contents, props changed) head/lib/libc/sys/read.c (contents, props changed) head/lib/libc/sys/readv.c (contents, props changed) head/lib/libc/sys/recvfrom.c (contents, props changed) head/lib/libc/sys/recvmsg.c (contents, props changed) head/lib/libc/sys/select.c (contents, props changed) head/lib/libc/sys/sendmsg.c (contents, props changed) head/lib/libc/sys/sendto.c (contents, props changed) head/lib/libc/sys/setcontext.c (contents, props changed) head/lib/libc/sys/sigaction.c (contents, props changed) head/lib/libc/sys/sigprocmask.c (contents, props changed) head/lib/libc/sys/sigsuspend.c (contents, props changed) head/lib/libc/sys/sigtimedwait.c (contents, props changed) head/lib/libc/sys/sigwaitinfo.c (contents, props changed) head/lib/libc/sys/swapcontext.c - copied, changed from r276627, head/lib/libc/gen/swapcontext.c head/lib/libc/sys/wait4.c (contents, props changed) head/lib/libc/sys/write.c (contents, props changed) head/lib/libc/sys/writev.c (contents, props changed) Deleted: head/lib/libc/gen/swapcontext.c Modified: head/contrib/jemalloc/include/jemalloc/internal/mutex.h head/contrib/jemalloc/src/jemalloc.c head/contrib/jemalloc/src/mutex.c head/lib/libc/Makefile head/lib/libc/compat-43/Symbol.map head/lib/libc/compat-43/creat.c head/lib/libc/gen/Makefile.inc head/lib/libc/gen/Symbol.map head/lib/libc/gen/pause.c head/lib/libc/gen/raise.c head/lib/libc/gen/sleep.c head/lib/libc/gen/termios.c head/lib/libc/gen/usleep.c head/lib/libc/gen/wait.c head/lib/libc/gen/wait3.c head/lib/libc/gen/waitpid.c head/lib/libc/include/libc_private.h head/lib/libc/stdlib/Symbol.map head/lib/libc/stdlib/jemalloc/Symbol.map head/lib/libc/stdlib/system.c head/lib/libc/sys/Makefile.inc head/lib/libc/sys/Symbol.map head/lib/libc/sys/__error.c head/lib/libc/sys/fcntl.c head/lib/libc/sys/sigwait.c head/lib/libthr/Makefile head/lib/libthr/pthread.map head/lib/libthr/sys/thr_error.c head/lib/libthr/thread/thr_create.c head/lib/libthr/thread/thr_fork.c head/lib/libthr/thread/thr_init.c head/lib/libthr/thread/thr_printf.c head/lib/libthr/thread/thr_private.h head/lib/libthr/thread/thr_sig.c head/lib/libthr/thread/thr_syscalls.c Modified: head/contrib/jemalloc/include/jemalloc/internal/mutex.h ============================================================================== --- head/contrib/jemalloc/include/jemalloc/internal/mutex.h Sat Jan 3 18:35:29 2015 (r276629) +++ head/contrib/jemalloc/include/jemalloc/internal/mutex.h Sat Jan 3 18:38:46 2015 (r276630) @@ -49,6 +49,7 @@ bool malloc_mutex_init(malloc_mutex_t *m void malloc_mutex_prefork(malloc_mutex_t *mutex); void malloc_mutex_postfork_parent(malloc_mutex_t *mutex); void malloc_mutex_postfork_child(malloc_mutex_t *mutex); +bool malloc_mutex_first_thread(void); bool mutex_boot(void); #endif /* JEMALLOC_H_EXTERNS */ Modified: head/contrib/jemalloc/src/jemalloc.c ============================================================================== --- head/contrib/jemalloc/src/jemalloc.c Sat Jan 3 18:35:29 2015 (r276629) +++ head/contrib/jemalloc/src/jemalloc.c Sat Jan 3 18:38:46 2015 (r276630) @@ -2061,6 +2061,13 @@ jemalloc_postfork_child(void) ctl_postfork_child(); } +void +_malloc_first_thread(void) +{ + + (void)malloc_mutex_first_thread(); +} + /******************************************************************************/ /* * The following functions are used for TLS allocation/deallocation in static Modified: head/contrib/jemalloc/src/mutex.c ============================================================================== --- head/contrib/jemalloc/src/mutex.c Sat Jan 3 18:35:29 2015 (r276629) +++ head/contrib/jemalloc/src/mutex.c Sat Jan 3 18:38:46 2015 (r276630) @@ -67,15 +67,15 @@ pthread_create(pthread_t *__restrict thr JEMALLOC_EXPORT int _pthread_mutex_init_calloc_cb(pthread_mutex_t *mutex, void *(calloc_cb)(size_t, size_t)); -__weak_reference(_pthread_mutex_init_calloc_cb_stub, - _pthread_mutex_init_calloc_cb); - +#pragma weak _pthread_mutex_init_calloc_cb int -_pthread_mutex_init_calloc_cb_stub(pthread_mutex_t *mutex, +_pthread_mutex_init_calloc_cb(pthread_mutex_t *mutex, void *(calloc_cb)(size_t, size_t)) { - return (0); + return (((int (*)(pthread_mutex_t *, void *(*)(size_t, size_t))) + __libc_interposing[INTERPOS__pthread_mutex_init_calloc_cb])( + mutex, calloc_cb)); } #endif @@ -144,7 +144,7 @@ malloc_mutex_postfork_child(malloc_mutex } bool -mutex_boot(void) +malloc_mutex_first_thread(void) { #ifdef JEMALLOC_MUTEX_INIT_CB @@ -158,3 +158,14 @@ mutex_boot(void) #endif return (false); } + +bool +mutex_boot(void) +{ + +#ifndef JEMALLOC_MUTEX_INIT_CB + return (malloc_mutex_first_thread()); +#else + return (false); +#endif +} Modified: head/lib/libc/Makefile ============================================================================== --- head/lib/libc/Makefile Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/Makefile Sat Jan 3 18:38:46 2015 (r276630) @@ -156,6 +156,10 @@ libkern.${LIBC_ARCH}:: ${KMSRCS} cp -fp ${.ALLSRC} ${DESTDIR}/sys/libkern/${LIBC_ARCH} .endif +.if ${MK_SYSCALL_COMPAT} != "no" +CFLAGS+=-DSYSCALL_COMPAT +.endif + .include .include Modified: head/lib/libc/compat-43/Symbol.map ============================================================================== --- head/lib/libc/compat-43/Symbol.map Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/compat-43/Symbol.map Sat Jan 3 18:38:46 2015 (r276630) @@ -28,4 +28,5 @@ FBSD_1.2 { FBSDprivate_1.0 { __creat; _creat; + __libc_creat; }; Modified: head/lib/libc/compat-43/creat.c ============================================================================== --- head/lib/libc/compat-43/creat.c Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/compat-43/creat.c Sat Jan 3 18:38:46 2015 (r276630) @@ -36,11 +36,23 @@ __FBSDID("$FreeBSD$"); #include "namespace.h" #include #include "un-namespace.h" +#include "libc_private.h" +__weak_reference(__libc_creat, __creat); +__weak_reference(__libc_creat, _creat); + +#pragma weak creat int -__creat(const char *path, mode_t mode) +creat(const char *path, mode_t mode) { - return(_open(path, O_WRONLY|O_CREAT|O_TRUNC, mode)); + + return (((int (*)(const char *, mode_t)) + __libc_interposing[INTERPOS_creat])(path, mode)); +} + +int +__libc_creat(const char *path, mode_t mode) +{ + + return(__sys_open(path, O_WRONLY | O_CREAT | O_TRUNC, mode)); } -__weak_reference(__creat, creat); -__weak_reference(__creat, _creat); Modified: head/lib/libc/gen/Makefile.inc ============================================================================== --- head/lib/libc/gen/Makefile.inc Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/gen/Makefile.inc Sat Jan 3 18:38:46 2015 (r276630) @@ -5,6 +5,7 @@ .PATH: ${LIBC_SRCTOP}/${LIBC_ARCH}/gen ${LIBC_SRCTOP}/gen SRCS+= __getosreldate.c \ + __pthread_mutex_init_calloc_cb_stub.c \ __xuname.c \ _once_stub.c \ _pthread_stubs.c \ Modified: head/lib/libc/gen/Symbol.map ============================================================================== --- head/lib/libc/gen/Symbol.map Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/gen/Symbol.map Sat Jan 3 18:38:46 2015 (r276630) @@ -533,6 +533,15 @@ FBSDprivate_1.0 { _libc_sem_post_compat; _libc_sem_getvalue_compat; + __libc_pause; + __libc_raise; + __libc_sleep; + __libc_tcdrain; + __libc_usleep; + __libc_wait; + __libc_wait3; + __libc_waitpid; + __elf_aux_vector; __pthread_map_stacks_exec; __fillcontextx; Added: head/lib/libc/gen/__pthread_mutex_init_calloc_cb_stub.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lib/libc/gen/__pthread_mutex_init_calloc_cb_stub.c Sat Jan 3 18:38:46 2015 (r276630) @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2014 The FreeBSD Foundation. + * All rights reserved. + * + * Portions of this software were developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice(s), this list of conditions and the following disclaimer as + * the first lines of this file unmodified other than the possible + * addition of one or more copyright notices. + * 2. Redistributions in binary form must reproduce the above copyright + * notice(s), this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include "libc_private.h" + +int +_pthread_mutex_init_calloc_cb_stub(pthread_mutex_t *mutex, + void *(calloc_cb)(size_t, size_t)) +{ + + return (0); +} Modified: head/lib/libc/gen/pause.c ============================================================================== --- head/lib/libc/gen/pause.c Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/gen/pause.c Sat Jan 3 18:38:46 2015 (r276630) @@ -38,11 +38,13 @@ __FBSDID("$FreeBSD$"); #include #include "un-namespace.h" +#include "libc_private.h" + /* * Backwards compatible pause. */ int -__pause(void) +__libc_pause(void) { sigset_t oset; @@ -50,5 +52,15 @@ __pause(void) return (-1); return (_sigsuspend(&oset)); } -__weak_reference(__pause, pause); -__weak_reference(__pause, _pause); + +#pragma weak pause +int +pause(void) +{ + + return (((int (*)(void)) + __libc_interposing[INTERPOS_pause])()); +} + +__weak_reference(__libc_pause, __pause); +__weak_reference(__libc_pause, _pause); Modified: head/lib/libc/gen/raise.c ============================================================================== --- head/lib/libc/gen/raise.c Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/gen/raise.c Sat Jan 3 18:38:46 2015 (r276630) @@ -36,11 +36,23 @@ __FBSDID("$FreeBSD$"); #include #include -__weak_reference(__raise, raise); -__weak_reference(__raise, _raise); +#include "libc_private.h" +__weak_reference(__libc_raise, __raise); +__weak_reference(__libc_raise, _raise); + +#pragma weak raise int -__raise(int s) +raise(int s) { - return(kill(getpid(), s)); + + return (((int (*)(int)) + __libc_interposing[INTERPOS_raise])(s)); +} + +int +__libc_raise(int s) +{ + + return (kill(getpid(), s)); } Modified: head/lib/libc/gen/sleep.c ============================================================================== --- head/lib/libc/gen/sleep.c Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/gen/sleep.c Sat Jan 3 18:38:46 2015 (r276630) @@ -40,8 +40,19 @@ __FBSDID("$FreeBSD$"); #include #include "un-namespace.h" +#include "libc_private.h" + +#pragma weak sleep +unsigned int +sleep(unsigned int seconds) +{ + + return (((unsigned int (*)(unsigned int)) + __libc_interposing[INTERPOS_sleep])(seconds)); +} + unsigned int -__sleep(unsigned int seconds) +__libc_sleep(unsigned int seconds) { struct timespec time_to_sleep; struct timespec time_remaining; @@ -51,7 +62,7 @@ __sleep(unsigned int seconds) * the maximum value for a time_t is >= INT_MAX. */ if (seconds > INT_MAX) - return (seconds - INT_MAX + __sleep(INT_MAX)); + return (seconds - INT_MAX + __libc_sleep(INT_MAX)); time_to_sleep.tv_sec = seconds; time_to_sleep.tv_nsec = 0; @@ -63,5 +74,5 @@ __sleep(unsigned int seconds) (time_remaining.tv_nsec != 0)); /* round up */ } -__weak_reference(__sleep, sleep); -__weak_reference(__sleep, _sleep); +__weak_reference(__libc_sleep, __sleep); +__weak_reference(__libc_sleep, _sleep); Modified: head/lib/libc/gen/termios.c ============================================================================== --- head/lib/libc/gen/termios.c Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/gen/termios.c Sat Jan 3 18:38:46 2015 (r276630) @@ -46,6 +46,8 @@ __FBSDID("$FreeBSD$"); #include #include "un-namespace.h" +#include "libc_private.h" + int tcgetattr(int fd, struct termios *t) { @@ -208,13 +210,23 @@ tcsendbreak(int fd, int len __unused) } int -__tcdrain(int fd) +__libc_tcdrain(int fd) { + return (_ioctl(fd, TIOCDRAIN, 0)); } -__weak_reference(__tcdrain, tcdrain); -__weak_reference(__tcdrain, _tcdrain); +#pragma weak tcdrain +int +tcdrain(int fd) +{ + + return (((int (*)(int)) + __libc_interposing[INTERPOS_tcdrain])(fd)); +} + +__weak_reference(__libc_tcdrain, __tcdrain); +__weak_reference(__libc_tcdrain, _tcdrain); int tcflush(int fd, int which) Modified: head/lib/libc/gen/usleep.c ============================================================================== --- head/lib/libc/gen/usleep.c Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/gen/usleep.c Sat Jan 3 18:38:46 2015 (r276630) @@ -38,8 +38,19 @@ __FBSDID("$FreeBSD$"); #include #include "un-namespace.h" +#include "libc_private.h" + +#pragma weak usleep +int +usleep(useconds_t useconds) +{ + + return (((int (*)(useconds_t)) + __libc_interposing[INTERPOS_usleep])(useconds)); +} + int -__usleep(useconds_t useconds) +__libc_usleep(useconds_t useconds) { struct timespec time_to_sleep; @@ -48,5 +59,5 @@ __usleep(useconds_t useconds) return (_nanosleep(&time_to_sleep, NULL)); } -__weak_reference(__usleep, usleep); -__weak_reference(__usleep, _usleep); +__weak_reference(__libc_usleep, __usleep); +__weak_reference(__libc_usleep, _usleep); Modified: head/lib/libc/gen/wait.c ============================================================================== --- head/lib/libc/gen/wait.c Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/gen/wait.c Sat Jan 3 18:38:46 2015 (r276630) @@ -40,11 +40,23 @@ __FBSDID("$FreeBSD$"); #include #include "un-namespace.h" +#include "libc_private.h" + +#pragma weak wait pid_t -__wait(int *istat) +wait(int *istat) { - return (_wait4(WAIT_ANY, istat, 0, (struct rusage *)0)); + + return (((pid_t (*)(int *)) + __libc_interposing[INTERPOS_wait])(istat)); +} + +pid_t +__libc_wait(int *istat) +{ + + return (__sys_wait4(WAIT_ANY, istat, 0, NULL)); } -__weak_reference(__wait, wait); -__weak_reference(__wait, _wait); +__weak_reference(__libc_wait, __wait); +__weak_reference(__libc_wait, _wait); Modified: head/lib/libc/gen/wait3.c ============================================================================== --- head/lib/libc/gen/wait3.c Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/gen/wait3.c Sat Jan 3 18:38:46 2015 (r276630) @@ -40,11 +40,22 @@ __FBSDID("$FreeBSD$"); #include #include "un-namespace.h" +#include "libc_private.h" + +#pragma weak wait3 +pid_t +wait3(int *istat, int options, struct rusage *rup) +{ + + return (((pid_t (*)(int *, int, struct rusage *)) + __libc_interposing[INTERPOS_wait3])(istat, options, rup)); +} + +__weak_reference(__libc_wait3, __wait3); + pid_t -wait3(istat, options, rup) - int *istat; - int options; - struct rusage *rup; +__libc_wait3(int *istat, int options, struct rusage *rup) { - return (_wait4(WAIT_ANY, istat, options, rup)); + + return (__sys_wait4(WAIT_ANY, istat, options, rup)); } Modified: head/lib/libc/gen/waitpid.c ============================================================================== --- head/lib/libc/gen/waitpid.c Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/gen/waitpid.c Sat Jan 3 18:38:46 2015 (r276630) @@ -40,11 +40,23 @@ __FBSDID("$FreeBSD$"); #include #include "un-namespace.h" +#include "libc_private.h" + +#pragma weak waitpid pid_t -__waitpid(pid_t pid, int *istat, int options) +waitpid(pid_t pid, int *istat, int options) { - return (_wait4(pid, istat, options, (struct rusage *)0)); + + return (((pid_t (*)(pid_t, int *, int)) + __libc_interposing[INTERPOS_waitpid])(pid, istat, options)); +} + +pid_t +__libc_waitpid(pid_t pid, int *istat, int options) +{ + + return (__sys_wait4(pid, istat, options, NULL)); } -__weak_reference(__waitpid, waitpid); -__weak_reference(__waitpid, _waitpid); +__weak_reference(__libc_waitpid, __waitpid); +__weak_reference(__libc_waitpid, _waitpid); Modified: head/lib/libc/include/libc_private.h ============================================================================== --- head/lib/libc/include/libc_private.h Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/include/libc_private.h Sat Jan 3 18:38:46 2015 (r276630) @@ -173,6 +173,61 @@ typedef pthread_func_t pthread_func_entr extern pthread_func_entry_t __thr_jtable[]; +extern int *(*__error_selector)(void); +int _pthread_mutex_init_calloc_cb_stub(pthread_mutex_t *mutex, + void *(calloc_cb)(__size_t, __size_t)); + +typedef int (*interpos_func_t)(void); +interpos_func_t *__libc_interposing_slot(int interposno); +extern interpos_func_t __libc_interposing[]; + +enum { + INTERPOS_accept, + INTERPOS_accept4, + INTERPOS_aio_suspend, + INTERPOS_close, + INTERPOS_connect, + INTERPOS_creat, + INTERPOS_fcntl, + INTERPOS_fsync, + INTERPOS_fork, + INTERPOS_msync, + INTERPOS_nanosleep, + INTERPOS_open, + INTERPOS_openat, + INTERPOS_poll, + INTERPOS_pselect, + INTERPOS_raise, + INTERPOS_recvfrom, + INTERPOS_recvmsg, + INTERPOS_select, + INTERPOS_sendmsg, + INTERPOS_sendto, + INTERPOS_setcontext, + INTERPOS_sigaction, + INTERPOS_sigprocmask, + INTERPOS_sigsuspend, + INTERPOS_sigwait, + INTERPOS_sigtimedwait, + INTERPOS_sigwaitinfo, + INTERPOS_swapcontext, + INTERPOS_system, + INTERPOS_sleep, + INTERPOS_tcdrain, + INTERPOS_usleep, + INTERPOS_pause, + INTERPOS_read, + INTERPOS_readv, + INTERPOS_wait, + INTERPOS_wait3, + INTERPOS_wait4, + INTERPOS_waitpid, + INTERPOS_write, + INTERPOS_writev, + INTERPOS__pthread_mutex_init_calloc_cb, + INTERPOS_MAX +}; + /* * yplib internal interfaces */ @@ -215,42 +270,107 @@ void _malloc_thread_cleanup(void); void _malloc_prefork(void); void _malloc_postfork(void); +void _malloc_first_thread(void); + /* * Function to clean up streams, called from abort() and exit(). */ -extern void (*__cleanup)(void) __hidden; +void (*__cleanup)(void) __hidden; /* * Get kern.osreldate to detect ABI revisions. Explicitly * ignores value of $OSVERSION and caches result. Prototypes * for the wrapped "new" pad-less syscalls are here for now. */ -extern int __getosreldate(void); +int __getosreldate(void); #include -/* Without pad */ -extern __off_t __sys_lseek(int, __off_t, int); -extern int __sys_ftruncate(int, __off_t); -extern int __sys_truncate(const char *, __off_t); -extern __ssize_t __sys_pread(int, void *, __size_t, __off_t); -extern __ssize_t __sys_pwrite(int, const void *, __size_t, __off_t); -extern void * __sys_mmap(void *, __size_t, int, int, int, __off_t); +#include /* With pad */ -extern __off_t __sys_freebsd6_lseek(int, int, __off_t, int); -extern int __sys_freebsd6_ftruncate(int, int, __off_t); -extern int __sys_freebsd6_truncate(const char *, int, __off_t); -extern __ssize_t __sys_freebsd6_pread(int, void *, __size_t, int, __off_t); -extern __ssize_t __sys_freebsd6_pwrite(int, const void *, __size_t, int, __off_t); -extern void * __sys_freebsd6_mmap(void *, __size_t, int, int, int, int, __off_t); - -/* Without back-compat translation */ -extern int __sys_fcntl(int, int, ...); - +__off_t __sys_freebsd6_lseek(int, int, __off_t, int); +int __sys_freebsd6_ftruncate(int, int, __off_t); +int __sys_freebsd6_truncate(const char *, int, __off_t); +__ssize_t __sys_freebsd6_pread(int, void *, __size_t, int, __off_t); +__ssize_t __sys_freebsd6_pwrite(int, const void *, __size_t, int, __off_t); +void * __sys_freebsd6_mmap(void *, __size_t, int, int, int, int, __off_t); + +struct aiocb; +struct fd_set; +struct iovec; +struct msghdr; +struct pollfd; +struct rusage; +struct sigaction; +struct sockaddr; struct timespec; struct timeval; struct timezone; -int __sys_gettimeofday(struct timeval *, struct timezone *); -int __sys_clock_gettime(__clockid_t, struct timespec *ts); +struct __siginfo; +struct __ucontext; +int __sys_aio_suspend(const struct aiocb * const[], int, + const struct timespec *); +int __sys_accept(int, struct sockaddr *, __socklen_t *); +int __sys_accept4(int, struct sockaddr *, __socklen_t *, int); +int __sys_clock_gettime(__clockid_t, struct timespec *ts); +int __sys_close(int); +int __sys_connect(int, const struct sockaddr *, __socklen_t); +int __sys_fcntl(int, int, ...); +int __sys_fsync(int); +__pid_t __sys_fork(void); +int __sys_ftruncate(int, __off_t); +int __sys_gettimeofday(struct timeval *, struct timezone *); +__off_t __sys_lseek(int, __off_t, int); +void *__sys_mmap(void *, __size_t, int, int, int, __off_t); +int __sys_msync(void *, __size_t, int); +int __sys_nanosleep(const struct timespec *, struct timespec *); +int __sys_open(const char *, int, ...); +int __sys_openat(int, const char *, int, ...); +int __sys_pselect(int, struct fd_set *, struct fd_set *, + struct fd_set *, const struct timespec *, + const __sigset_t *); +int __sys_poll(struct pollfd *, unsigned, int); +__ssize_t __sys_pread(int, void *, __size_t, __off_t); +__ssize_t __sys_pwrite(int, const void *, __size_t, __off_t); +__ssize_t __sys_read(int, void *, __size_t); +__ssize_t __sys_readv(int, const struct iovec *, int); +__ssize_t __sys_recv(int, void *, __size_t, int); +__ssize_t __sys_recvfrom(int, void *, __size_t, int, struct sockaddr *, + __socklen_t *); +__ssize_t __sys_recvmsg(int, struct msghdr *, int); +int __sys_select(int, struct fd_set *, struct fd_set *, + struct fd_set *, struct timeval *); +__ssize_t __sys_sendmsg(int, const struct msghdr *, int); +__ssize_t __sys_sendto(int, const void *, __size_t, int, + const struct sockaddr *, __socklen_t); +int __sys_setcontext(const struct __ucontext *); +int __sys_sigaction(int, const struct sigaction *, + struct sigaction *); +int __sys_sigprocmask(int, const __sigset_t *, __sigset_t *); +int __sys_sigsuspend(const __sigset_t *); +int __sys_sigtimedwait(const __sigset_t *, struct __siginfo *, + const struct timespec *); +int __sys_sigwait(const __sigset_t *, int *); +int __sys_sigwaitinfo(const __sigset_t *, struct __siginfo *); +int __sys_swapcontext(struct __ucontext *, + const struct __ucontext *); +int __sys_truncate(const char *, __off_t); +__pid_t __sys_wait4(__pid_t, int *, int, struct rusage *); +__ssize_t __sys_write(int, const void *, __size_t); +__ssize_t __sys_writev(int, const struct iovec *, int); + +int __libc_creat(const char *path, __mode_t mode); +int __libc_pause(void); +int __libc_raise(int); +int __libc_sigwait(const __sigset_t * __restrict, + int * restrict sig); +int __libc_system(const char *); +unsigned int __libc_sleep(unsigned int); +int __libc_tcdrain(int); +int __libc_usleep(__useconds_t); +__pid_t __libc_wait(int *); +__pid_t __libc_wait3(int *, int, struct rusage *); +__pid_t __libc_waitpid(__pid_t, int *, int); +int __fcntl_compat(int fd, int cmd, ...); /* execve() with PATH processing to implement posix_spawnp() */ int _execvpe(const char *, char * const *, char * const *); Modified: head/lib/libc/stdlib/Symbol.map ============================================================================== --- head/lib/libc/stdlib/Symbol.map Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/stdlib/Symbol.map Sat Jan 3 18:38:46 2015 (r276630) @@ -118,4 +118,5 @@ FBSD_1.4 { FBSDprivate_1.0 { __system; _system; + __libc_system; }; Modified: head/lib/libc/stdlib/jemalloc/Symbol.map ============================================================================== --- head/lib/libc/stdlib/jemalloc/Symbol.map Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/stdlib/jemalloc/Symbol.map Sat Jan 3 18:38:46 2015 (r276630) @@ -55,4 +55,5 @@ FBSDprivate_1.0 { _malloc_thread_cleanup; _malloc_prefork; _malloc_postfork; + _malloc_first_thread; }; Modified: head/lib/libc/stdlib/system.c ============================================================================== --- head/lib/libc/stdlib/system.c Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/stdlib/system.c Sat Jan 3 18:38:46 2015 (r276630) @@ -46,8 +46,17 @@ __FBSDID("$FreeBSD$"); #include "un-namespace.h" #include "libc_private.h" +#pragma weak system int -__system(const char *command) +system(const char *command) +{ + + return (((int (*)(const char *)) + __libc_interposing[INTERPOS_system])(command)); +} + +int +__libc_system(const char *command) { pid_t pid, savedpid; int pstat; @@ -95,5 +104,5 @@ __system(const char *command) return(pid == -1 ? -1 : pstat); } -__weak_reference(__system, system); -__weak_reference(__system, _system); +__weak_reference(__libc_system, __system); +__weak_reference(__libc_system, _system); Modified: head/lib/libc/sys/Makefile.inc ============================================================================== --- head/lib/libc/sys/Makefile.inc Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/sys/Makefile.inc Sat Jan 3 18:38:46 2015 (r276630) @@ -20,17 +20,61 @@ NOASM+= clock_gettime.o gettimeofday.o PSEUDO+= _clock_gettime.o _gettimeofday.o # Sources common to both syscall interfaces: -SRCS+= stack_protector.c stack_protector_compat.c __error.c +SRCS+= \ + stack_protector.c \ + stack_protector_compat.c \ + __error.c \ + interposing_table.c + .if ${MK_SYSCALL_COMPAT} != "no" -SYSCALL_COMPAT_SRCS= fcntl.c ftruncate.c lseek.c mmap.c pread.c \ - pwrite.c truncate.c +SYSCALL_COMPAT_SRCS= \ + ftruncate.c \ + lseek.c \ + mmap.c \ + pread.c \ + pwrite.c \ + truncate.c SRCS+= ${SYSCALL_COMPAT_SRCS} NOASM+= ${SYSCALL_COMPAT_SRCS:S/.c/.o/} -PSEUDO+= _fcntl.o .endif -SRCS+= sigwait.c -NOASM+= sigwait.o -PSEUDO+= _sigwait.o + +INTERPOSED = \ + accept \ + accept4 \ + aio_suspend \ + close \ + connect \ + fcntl \ + fsync \ + fork \ + msync \ + nanosleep \ + open \ + openat \ + poll \ + pselect \ + read \ + readv \ + recvfrom \ + recvmsg \ + select \ + sendmsg \ + sendto \ + setcontext \ + sigaction \ + sigprocmask \ + sigsuspend \ + sigtimedwait \ + sigwait \ + sigwaitinfo \ + swapcontext \ + wait4 \ + write \ + writev + +SRCS+= ${INTERPOSED:S/$/.c/} +NOASM+= ${INTERPOSED:S/$/.o/} +PSEUDO+= ${INTERPOSED:C/^.*$/_&.o/} # Add machine dependent asm sources: SRCS+=${MDASM} Modified: head/lib/libc/sys/Symbol.map ============================================================================== --- head/lib/libc/sys/Symbol.map Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/sys/Symbol.map Sat Jan 3 18:38:46 2015 (r276630) @@ -245,7 +245,6 @@ FBSD_1.0 { setaudit; setaudit_addr; setauid; - setcontext; setegid; seteuid; setgid; @@ -286,7 +285,6 @@ FBSD_1.0 { __stack_chk_guard; stat; statfs; - swapcontext; swapoff; swapon; symlink; @@ -351,7 +349,6 @@ FBSD_1.1 { mkfifoat; mknodat; msgctl; - openat; readlinkat; renameat; setfib; @@ -1049,6 +1046,9 @@ FBSDprivate_1.0 { _writev; __sys_writev; __error_unthreaded; + __error_selector; nlm_syscall; gssd_syscall; + __libc_interposing_slot; + __libc_sigwait; }; Modified: head/lib/libc/sys/__error.c ============================================================================== --- head/lib/libc/sys/__error.c Sat Jan 3 18:35:29 2015 (r276629) +++ head/lib/libc/sys/__error.c Sat Jan 3 18:38:46 2015 (r276630) @@ -32,14 +32,17 @@ __FBSDID("$FreeBSD$"); extern int errno; -/* - * Declare a weak reference in case the application is not linked - * with libpthread. - */ -__weak_reference(__error_unthreaded, __error); - int * __error_unthreaded(void) { return(&errno); } + +int *(*__error_selector)(void) = __error_unthreaded; + +int * +__error(void) +{ + + return (__error_selector()); +} Added: head/lib/libc/sys/accept.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lib/libc/sys/accept.c Sat Jan 3 18:38:46 2015 (r276630) @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2014 The FreeBSD Foundation. + * All rights reserved. + * + * Portions of this software were developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice(s), this list of conditions and the following disclaimer as + * the first lines of this file unmodified other than the possible + * addition of one or more copyright notices. + * 2. Redistributions in binary form must reproduce the above copyright + * notice(s), this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include "libc_private.h" + +__weak_reference(__sys_accept, __accept); + +#pragma weak accept +int +accept(int s, struct sockaddr *addr, socklen_t *addrlen) +{ + + return (((int (*)(int, struct sockaddr *, socklen_t *)) + __libc_interposing[INTERPOS_accept])(s, addr, addrlen)); +} Added: head/lib/libc/sys/accept4.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lib/libc/sys/accept4.c Sat Jan 3 18:38:46 2015 (r276630) @@ -0,0 +1,50 @@ +/* + * Copyright (c) 2014 The FreeBSD Foundation. + * All rights reserved. + * + * Portions of this software were developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice(s), this list of conditions and the following disclaimer as + * the first lines of this file unmodified other than the possible + * addition of one or more copyright notices. + * 2. Redistributions in binary form must reproduce the above copyright + * notice(s), this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include "libc_private.h" + +__weak_reference(__sys_accept4, __accept4); + +#pragma weak accept4 +int +accept4(int s, struct sockaddr *addr, socklen_t *addrlen, int flags) +{ + + return (((int (*)(int, struct sockaddr *, socklen_t *, int)) + __libc_interposing[INTERPOS_accept4])(s, addr, addrlen, flags)); +} Added: head/lib/libc/sys/aio_suspend.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lib/libc/sys/aio_suspend.c Sat Jan 3 18:38:46 2015 (r276630) @@ -0,0 +1,51 @@ +/* + * Copyright (c) 2014 The FreeBSD Foundation. + * All rights reserved. + * + * Portions of this software were developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice(s), this list of conditions and the following disclaimer as + * the first lines of this file unmodified other than the possible + * addition of one or more copyright notices. + * 2. Redistributions in binary form must reproduce the above copyright + * notice(s), this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) ``AS IS'' AND ANY + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S) BE + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR + * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE + * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, + * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include "libc_private.h" + +__weak_reference(__sys_aio_suspend, __aio_suspend); + +#pragma weak aio_suspend +int +aio_suspend(const struct aiocb * const iocbs[], int niocb, + const struct timespec *timeout) +{ + + return (((int (*)(const struct aiocb * const[], int, + const struct timespec *)) + __libc_interposing[INTERPOS_aio_suspend])(iocbs, niocb, timeout)); +} Added: head/lib/libc/sys/close.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/lib/libc/sys/close.c Sat Jan 3 18:38:46 2015 (r276630) @@ -0,0 +1,48 @@ +/* + * Copyright (c) 2014 The FreeBSD Foundation. *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 19:38:38 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id ADC7BEEE; Sat, 3 Jan 2015 19:38:38 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9A742104C; Sat, 3 Jan 2015 19:38:38 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03JcciR027719; Sat, 3 Jan 2015 19:38:38 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03JccY2027718; Sat, 3 Jan 2015 19:38:38 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201501031938.t03JccY2027718@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Sat, 3 Jan 2015 19:38:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276632 - head/sys/boot/arm/uboot X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 19:38:38 -0000 Author: ian Date: Sat Jan 3 19:38:37 2015 New Revision: 276632 URL: https://svnweb.freebsd.org/changeset/base/276632 Log: Create a custom /boot/defaults/loader.conf for ARM. This differs from the standard file in the following ways: - modules_path includes /boot/dtb - It doesn't contain 533 lines, of which 500 are either commented out, empty, or something_which_doesnt_work_on_arm_anyway=NO The standard defaults file takes 40+ seconds to process on an arm beaglebone board. This one takes just a couple seconds. This gets installed instead of the original because of the .PATH magic in the makefile. Added: head/sys/boot/arm/uboot/loader.conf (contents, props changed) Added: head/sys/boot/arm/uboot/loader.conf ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/boot/arm/uboot/loader.conf Sat Jan 3 19:38:37 2015 (r276632) @@ -0,0 +1,13 @@ +# This is defaults/loader.conf for ARM, containing defaults for loader(8). +# Do not modify the contents of this file, instead put your customizations +# into /boot/loader.conf or /boot/loader.conf.local +# $FreeBSD$ + +autoboot_delay=10 +bootfile="kernel" # Kernel name (possibly absolute path) +kernel="kernel" # /boot sub-directory containing kernel and modules +loader_conf_files="/boot/loader.conf /boot/loader.conf.local" +module_path="/boot/kernel;/boot/modules;/boot/dtb" +nextboot_conf="/boot/nextboot.conf" +nextboot_enable="NO" +verbose_loading="NO" From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 20:17:51 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E51669B0; Sat, 3 Jan 2015 20:17:50 +0000 (UTC) Received: from mail109.syd.optusnet.com.au (mail109.syd.optusnet.com.au [211.29.132.80]) by mx1.freebsd.org (Postfix) with ESMTP id 90DF916FA; Sat, 3 Jan 2015 20:17:50 +0000 (UTC) Received: from c122-106-147-133.carlnfd1.nsw.optusnet.com.au (c122-106-147-133.carlnfd1.nsw.optusnet.com.au [122.106.147.133]) by mail109.syd.optusnet.com.au (Postfix) with ESMTPS id 3C898D63E03; Sun, 4 Jan 2015 07:17:47 +1100 (AEDT) Date: Sun, 4 Jan 2015 07:17:45 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Hans Petter Selasky Subject: Re: svn commit: r276626 - head/sys/kern In-Reply-To: <201501031721.t03HLKHp060964@svn.freebsd.org> Message-ID: <20150104045338.V2929@besplex.bde.org> References: <201501031721.t03HLKHp060964@svn.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.1 cv=Qdxf4Krv c=1 sm=1 tr=0 a=7NqvjVvQucbO2RlWB8PEog==:117 a=PO7r1zJSAAAA:8 a=kj9zAlcOel0A:10 a=JzwRw_2MAAAA:8 a=ytcfN_hfqfHuf3KFwfQA:9 a=CjuIK1q_8ugA:10 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 20:17:51 -0000 On Sat, 3 Jan 2015, Hans Petter Selasky wrote: > Log: > Rework r276532 a bit. Always avoid recursing into the console drivers > clients, hence they might not handle it very well. This change allows > debugging mutex problems with kernel console drivers when > "debug.witness.skipspin=0" is set in the boot environment. This keeps getting worse. Console drivers are required to be reentrant so that console i/o works in any context, including reentering the console driver a couple of times. (One level of reentrancy always occurs when the console driver is stepped through using ddb -- then the debugger traps occur while the console driver is in any state, and the debugger proceeds to reenter the console driver to do its i/o. ddb doesn't support debugging itself, so the reentering is normally limited to 1 level. However, once the console driver supports one level of reentrancy it is easy to support any number, and another level or two is useful for reporting bugs in ddb. E.g., buggy locking in ddb or the console driver (almost any locking there is buggy, like the locking bugs moved in this commit) then witness might detect the bug and try to print a message about it.) No console driver is reentrant enough to work right (only sio is close; syscons is very broken, and I suspect vt and usb (keyboards) are worse. Full reentrancy is not possible; all that can be asked for is that new i/o is done, and the driver and device states are not corrupted; old and interrupted i/o must not be waited for without bound and it may be corrupted) but that is another bug suite. It cannot be fixed here. > Modified: head/sys/kern/kern_cons.c > ============================================================================== > --- head/sys/kern/kern_cons.c Sat Jan 3 16:48:08 2015 (r276625) > +++ head/sys/kern/kern_cons.c Sat Jan 3 17:21:19 2015 (r276626) > @@ -512,6 +512,13 @@ cnputs(char *p) > int unlock_reqd = 0; > > if (use_cnputs_mtx) { > + /* > + * NOTE: Debug prints and/or witness printouts in > + * console driver clients can cause the "cnputs_mtx" > + * mutex to recurse. Simply return if that happens. > + */ This comment is too verbose, but not verbose enough to mention as many as 1% of the bugs. It is somewhat misleading in saying "Debug prints" (sic). Printing by the debugger (ddb) doesn't go through here (except for the bug that debugger entry uses printf()). Debugging printf()s in console driver code (including code called by the console driver) might recurse here, but there shouldn't be any such printf()s unless you are debugging this deadlock bug. The deadlock bug for witness is a special case of this. Console code shouldn't have any LORs that would cause a witness warning (unless you put the LORs to debug its handling...). However, it is reasonable to recurse here for witness warnings from console non-clients: the console driver may be trapped or interrupted, and then the trap handler may try to acquire a lock, and if this lock is witnessed it may trigger a witness warning. (The main case of a trap is a debugger trap. Only non-maskable interrupts can occur, since spinlocks disable interrupts. The main case of an interrupt is a START or STOP IPI. When I debugged console i/o in syscons, I generated races and deadlocks mainly by sprinkling printfs() in trap() and IPI handlers. Production code shouldn't have such printfs, but they should work. In theory, a fatal trap can occur while in console code. Then panic() will call here. > + if (mtx_owned(&cnputs_mtx)) > + return; The largest obvious new bug here is losing all output from panic() (and possibly other critical output) for panics that occur while the mutex is held by the same CPU. The previous change made this case work (for reentrant console drivers) instead of deadlocking. > mtx_lock_spin(&cnputs_mtx); > unlock_reqd = 1; > } One reason the console driver bugs cannot be fixed here is that this lock only covers one entry point to the console driver. Only line-buffered i/o goes through here. ddb output never goes through here. Line buffering is only done if PRINTF_BUFR_SIZE is configured. PRINTF_BUFR_SIZE gives a very bad implementation of serialization of output. Old message buffer code used atomic ops to avoid deadlock. It was replaced by broken locking. The locking gives deadlock on recursion in the same way as here. However, the race window for it (mainly in msgbuf_addchar()) is much shorter than here and I wasn't able to demonstrate it deadlocking. > @@ -601,13 +608,7 @@ static void > cn_drvinit(void *unused) > { > > - /* > - * NOTE: Debug prints and/or witness printouts in console > - * driver clients can cause the "cnputs_mtx" mutex to > - * recurse. Make sure the "MTX_RECURSE" flags is set! > - */ > - mtx_init(&cnputs_mtx, "cnputs_mtx", NULL, MTX_SPIN | > - MTX_NOWITNESS | MTX_RECURSE); > + mtx_init(&cnputs_mtx, "cnputs_mtx", NULL, MTX_SPIN | MTX_NOWITNESS); > use_cnputs_mtx = 1; > } cnputs() and its lock are used mainly to support the serialization of output done under PRINTF_BUFR_SIZE. It is obviously broken since it gives deadlock. It should at least have used MTX_RECURSE. Your previous change to add this seems to be correct in the sense of not adding new bugs. Any locking here cannot fix driver bugs, but it can act as a serialization hint. The lock here prevents interference from other CPUs and thus improves serialization. Making it recursive changes deadlock to non-serialization in the unusual case of recursion. Note that the locking here (like any normal mutex locking) is still fundamentally broken. The most obviously broken case is when a panic occurs while another CPU holds the lock. Then that CPU will be stopped very early in panic() and never started again. If it is stopped before it can release the lock, then the CPU executing the panic() will deadlock on the lock. Returning would be little better since it would lose all the panic() output, as happens now when the lock is held by the same CPU. Bruce From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 21:06:08 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D39685B3; Sat, 3 Jan 2015 21:06:08 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B4D8F2E7A; Sat, 3 Jan 2015 21:06:08 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03L6884070488; Sat, 3 Jan 2015 21:06:08 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03L67SG070483; Sat, 3 Jan 2015 21:06:07 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201501032106.t03L67SG070483@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Sat, 3 Jan 2015 21:06:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276634 - in head/sys/powerpc: include powerpc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 21:06:09 -0000 Author: jhibbits Date: Sat Jan 3 21:06:06 2015 New Revision: 276634 URL: https://svnweb.freebsd.org/changeset/base/276634 Log: Dump VMX registers into the userland coredump. Reviewed by: nwhitehorn MFC after: 2 weeks Modified: head/sys/powerpc/include/altivec.h head/sys/powerpc/powerpc/altivec.c head/sys/powerpc/powerpc/elf32_machdep.c head/sys/powerpc/powerpc/elf64_machdep.c Modified: head/sys/powerpc/include/altivec.h ============================================================================== --- head/sys/powerpc/include/altivec.h Sat Jan 3 20:29:47 2015 (r276633) +++ head/sys/powerpc/include/altivec.h Sat Jan 3 21:06:06 2015 (r276634) @@ -34,6 +34,7 @@ void enable_vec(struct thread *); void save_vec(struct thread *); +void save_vec_nodrop(struct thread *); #endif /* _MACHINE_ALTIVEC_H_ */ Modified: head/sys/powerpc/powerpc/altivec.c ============================================================================== --- head/sys/powerpc/powerpc/altivec.c Sat Jan 3 20:29:47 2015 (r276633) +++ head/sys/powerpc/powerpc/altivec.c Sat Jan 3 21:06:06 2015 (r276634) @@ -43,6 +43,46 @@ __FBSDID("$FreeBSD$"); #include #include +static void +save_vec_int(struct thread *td) +{ + int msr; + struct pcb *pcb; + + pcb = td->td_pcb; + + /* + * Temporarily re-enable the vector unit during the save + */ + msr = mfmsr(); + mtmsr(msr | PSL_VEC); + isync(); + + /* + * Save the vector registers and VSCR to the PCB + */ +#define STVX(n) __asm ("stvx %1,0,%0" \ + :: "b"(pcb->pcb_vec.vr[n]), "n"(n)); + STVX(0); STVX(1); STVX(2); STVX(3); + STVX(4); STVX(5); STVX(6); STVX(7); + STVX(8); STVX(9); STVX(10); STVX(11); + STVX(12); STVX(13); STVX(14); STVX(15); + STVX(16); STVX(17); STVX(18); STVX(19); + STVX(20); STVX(21); STVX(22); STVX(23); + STVX(24); STVX(25); STVX(26); STVX(27); + STVX(28); STVX(29); STVX(30); STVX(31); +#undef STVX + + __asm __volatile("mfvscr 0; stvewx 0,0,%0" :: "b"(&pcb->pcb_vec.vscr)); + + /* + * Disable vector unit again + */ + isync(); + mtmsr(msr); + +} + void enable_vec(struct thread *td) { @@ -107,40 +147,11 @@ enable_vec(struct thread *td) void save_vec(struct thread *td) { - int msr; - struct pcb *pcb; + struct pcb *pcb; pcb = td->td_pcb; - /* - * Temporarily re-enable the vector unit during the save - */ - msr = mfmsr(); - mtmsr(msr | PSL_VEC); - isync(); - - /* - * Save the vector registers and VSCR to the PCB - */ -#define STVX(n) __asm ("stvx %1,0,%0" \ - :: "b"(pcb->pcb_vec.vr[n]), "n"(n)); - STVX(0); STVX(1); STVX(2); STVX(3); - STVX(4); STVX(5); STVX(6); STVX(7); - STVX(8); STVX(9); STVX(10); STVX(11); - STVX(12); STVX(13); STVX(14); STVX(15); - STVX(16); STVX(17); STVX(18); STVX(19); - STVX(20); STVX(21); STVX(22); STVX(23); - STVX(24); STVX(25); STVX(26); STVX(27); - STVX(28); STVX(29); STVX(30); STVX(31); -#undef STVX - - __asm __volatile("mfvscr 0; stvewx 0,0,%0" :: "b"(&pcb->pcb_vec.vscr)); - - /* - * Disable vector unit again - */ - isync(); - mtmsr(msr); + save_vec_int(td); /* * Clear the current vec thread and pcb's CPU id @@ -150,3 +161,19 @@ save_vec(struct thread *td) PCPU_SET(vecthread, NULL); } +/* + * Save altivec state without dropping ownership. This will only save state if + * the current vector-thread is `td'. + */ +void +save_vec_nodrop(struct thread *td) +{ + struct thread *vtd; + + vtd = PCPU_GET(vecthread); + if (td != vtd) { + return; + } + + save_vec_int(td); +} Modified: head/sys/powerpc/powerpc/elf32_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/elf32_machdep.c Sat Jan 3 20:29:47 2015 (r276633) +++ head/sys/powerpc/powerpc/elf32_machdep.c Sat Jan 3 21:06:06 2015 (r276634) @@ -47,6 +47,7 @@ #include #include +#include #include #include #include @@ -147,9 +148,24 @@ SYSINIT(oelf32, SI_SUB_EXEC, SI_ORDER_AN &freebsd_brand_oinfo); void -elf32_dump_thread(struct thread *td __unused, void *dst __unused, - size_t *off __unused) +elf32_dump_thread(struct thread *td, void *dst, size_t *off) { + size_t len; + struct pcb *pcb; + + len = 0; + pcb = td->td_pcb; + if (pcb->pcb_flags & PCB_VEC) { + save_vec_nodrop(td); + if (dst != NULL) { + len += elf32_populate_note(NT_PPC_VMX, + &pcb->pcb_vec, dst, + sizeof(pcb->pcb_vec), NULL); + } else + len += elf32_populate_note(NT_PPC_VMX, NULL, NULL, + sizeof(pcb->pcb_vec), NULL); + } + *off = len; } #ifndef __powerpc64__ Modified: head/sys/powerpc/powerpc/elf64_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/elf64_machdep.c Sat Jan 3 20:29:47 2015 (r276633) +++ head/sys/powerpc/powerpc/elf64_machdep.c Sat Jan 3 21:06:06 2015 (r276634) @@ -44,6 +44,7 @@ #include #include +#include #include #include #include @@ -119,9 +120,24 @@ SYSINIT(oelf64, SI_SUB_EXEC, SI_ORDER_AN &freebsd_brand_oinfo); void -elf64_dump_thread(struct thread *td __unused, void *dst __unused, - size_t *off __unused) +elf64_dump_thread(struct thread *td, void *dst, size_t *off) { + size_t len; + struct pcb *pcb; + + len = 0; + pcb = td->td_pcb; + if (pcb->pcb_flags & PCB_VEC) { + save_vec_nodrop(td); + if (dst != NULL) { + len += elf64_populate_note(NT_PPC_VMX, + &pcb->pcb_vec, dst, + sizeof(pcb->pcb_vec), NULL); + } else + len += elf64_populate_note(NT_PPC_VMX, NULL, NULL, + sizeof(pcb->pcb_vec), NULL); + } + *off = len; } From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 21:08:28 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id AA3A5729; Sat, 3 Jan 2015 21:08:28 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 95EEC2EAD; Sat, 3 Jan 2015 21:08:28 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03L8Si6070810; Sat, 3 Jan 2015 21:08:28 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03L8Sxi070809; Sat, 3 Jan 2015 21:08:28 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201501032108.t03L8Sxi070809@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Sat, 3 Jan 2015 21:08:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276635 - head/sys/powerpc/include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 21:08:28 -0000 Author: jhibbits Date: Sat Jan 3 21:08:27 2015 New Revision: 276635 URL: https://svnweb.freebsd.org/changeset/base/276635 Log: Resort and resize the altivec registers in the pcb. vrsave and vscr are both 32-bit registers via the PowerPC spec. X-MFC-with: r276634 MFC after: 2 weeks Modified: head/sys/powerpc/include/pcb.h Modified: head/sys/powerpc/include/pcb.h ============================================================================== --- head/sys/powerpc/include/pcb.h Sat Jan 3 21:06:06 2015 (r276634) +++ head/sys/powerpc/include/pcb.h Sat Jan 3 21:08:27 2015 (r276635) @@ -58,9 +58,9 @@ struct pcb { stuff. */ struct vec { uint32_t vr[32][4]; - register_t vrsave; - register_t spare[2]; - register_t vscr; /* aligned at vector element 3 */ + uint32_t spare[2]; + uint32_t vrsave; + uint32_t vscr; /* aligned at vector element 3 */ } pcb_vec __aligned(16); /* Vector processor */ unsigned int pcb_veccpu; /* which CPU had our vector stuff. */ From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 21:44:48 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D6935C4C; Sat, 3 Jan 2015 21:44:48 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C2EDC642ED; Sat, 3 Jan 2015 21:44:48 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03LimGl088805; Sat, 3 Jan 2015 21:44:48 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03LimPk088804; Sat, 3 Jan 2015 21:44:48 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201501032144.t03LimPk088804@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Sat, 3 Jan 2015 21:44:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276636 - head/sys/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 21:44:49 -0000 Author: jhibbits Date: Sat Jan 3 21:44:47 2015 New Revision: 276636 URL: https://svnweb.freebsd.org/changeset/base/276636 Log: Missed the header for the note definition. X-MFC-with: r276634 MFC after: 2 weeks Modified: head/sys/sys/elf_common.h Modified: head/sys/sys/elf_common.h ============================================================================== --- head/sys/sys/elf_common.h Sat Jan 3 21:08:27 2015 (r276635) +++ head/sys/sys/elf_common.h Sat Jan 3 21:44:47 2015 (r276636) @@ -724,6 +724,7 @@ typedef struct { #define NT_PROCSTAT_OSREL 14 /* Procstat osreldate data. */ #define NT_PROCSTAT_PSSTRINGS 15 /* Procstat ps_strings data. */ #define NT_PROCSTAT_AUXV 16 /* Procstat auxv data. */ +#define NT_PPC_VMX 0x100 /* PowerPC Altivec/VMX registers */ #define NT_X86_XSTATE 0x202 /* x86 XSAVE extended state. */ /* Symbol Binding - ELFNN_ST_BIND - st_info */ From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 21:47:33 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D7948E34; Sat, 3 Jan 2015 21:47:33 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C3A916433A; Sat, 3 Jan 2015 21:47:33 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03LlX5J089202; Sat, 3 Jan 2015 21:47:33 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03LlX30089201; Sat, 3 Jan 2015 21:47:33 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201501032147.t03LlX30089201@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Sat, 3 Jan 2015 21:47:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276637 - head/sys/modules/uart X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 21:47:34 -0000 Author: jhibbits Date: Sat Jan 3 21:47:32 2015 New Revision: 276637 URL: https://svnweb.freebsd.org/changeset/base/276637 Log: PowerPC also needs ofw_bus_if.h when using FDT. Modified: head/sys/modules/uart/Makefile Modified: head/sys/modules/uart/Makefile ============================================================================== --- head/sys/modules/uart/Makefile Sat Jan 3 21:44:47 2015 (r276636) +++ head/sys/modules/uart/Makefile Sat Jan 3 21:47:32 2015 (r276637) @@ -10,7 +10,8 @@ uart_bus_ebus= uart_bus_ebus.c uart_dev_lpc= uart_dev_lpc.c .endif -.if ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "sparc64" +.if ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "sparc64" || \ + ${MACHINE_CPUARCH} == "powerpc" ofw_bus_if= ofw_bus_if.h .endif From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 22:33:21 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id EFA2552B; Sat, 3 Jan 2015 22:33:20 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D9B1164BA6; Sat, 3 Jan 2015 22:33:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03MXKmK012079; Sat, 3 Jan 2015 22:33:20 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03MXJDk012071; Sat, 3 Jan 2015 22:33:19 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201501032233.t03MXJDk012071@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Sat, 3 Jan 2015 22:33:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276638 - in head/sys: arm/arm arm/include conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 22:33:21 -0000 Author: ian Date: Sat Jan 3 22:33:18 2015 New Revision: 276638 URL: https://svnweb.freebsd.org/changeset/base/276638 Log: Add a new trap-v6.c which has support for all armv7 exceptions. This mostly paves the way for the new pmap code, and shouldn't result in any noticible behavior differences. Submitted by: Svatopluk Kraus , Michal Meloun + * Copyright 2014 Svatopluk Kraus + * Copyright 2014 Michal Meloun + * Copyright 2014 Andrew Turner + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include "opt_ktrace.h" + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#ifdef KTRACE +#include +#include +#endif + +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include + +#ifdef KDB +#include +#include +#endif + +extern char fusubailout[]; + +struct ksig { + int sig; + u_long code; + vm_offset_t addr; +}; + +typedef int abort_func_t(struct trapframe *, u_int, u_int, u_int, u_int, + struct thread *, struct ksig *); + +static abort_func_t abort_fatal; +static abort_func_t abort_align; +static abort_func_t abort_icache; + +struct abort { + abort_func_t *func; + const char *desc; +}; + +/* + * How are the aborts handled? + * + * Undefined Code: + * - Always fatal as we do not know what does it mean. + * Imprecise External Abort: + * - Always fatal, but can be handled somehow in the future. + * Now, due to PCIe buggy harware, ignored. + * Precise External Abort: + * - Always fatal, but who knows in the future??? + * Debug Event: + * - Special handling. + * External Translation Abort (L1 & L2) + * - Always fatal as something is screwed up in page tables or harware. + * Domain Fault (L1 & L2): + * - Always fatal as we do not play game with domains. + * Alignment Fault: + * - Everything should be aligned in kernel including user to kernel and + * vice versa data copying, so we ignore pcb_onfault, and it's always fatal. + * We generate signal in case of abort from user mode. + * Instruction cache maintenance: + * - According to manual, this is translation fault during cache maintenance + * operation. So, it could be really complex in SMP case and fuzzy too + * for cache operations working on virtual addresses. For now, we will + * consider this abort as fatal. In fact, no cache maintenance on + * not mapped virtual addresses should be called. As cache maintenance + * operation (except DMB, DSB, and Flush Prefetch Buffer) are priviledged, + * the abort is fatal for user mode as well for now. (This is good place to + * note that cache maintenance on virtual address fill TLB.) + * Acces Bit (L1 & L2): + * - Fast hardware emulation for kernel and user mode. + * Translation Fault (L1 & L2): + * - Standard fault mechanism is held including vm_fault(). + * Permission Fault (L1 & L2): + * - Fast harware emulation of modify bits and in other cases, standard + * fault mechanism is held including vm_fault(). + */ + +static const struct abort aborts[] = { + {abort_fatal, "Undefined Code (0x000)"}, + {abort_align, "Alignment Fault"}, + {abort_fatal, "Debug Event"}, + {NULL, "Access Bit (L1)"}, + {abort_icache, "Instruction cache maintenance"}, + {NULL, "Translation Fault (L1)"}, + {NULL, "Access Bit (L2)"}, + {NULL, "Translation Fault (L2)"}, + + {abort_fatal, "External Abort"}, + {abort_fatal, "Domain Fault (L1)"}, + {abort_fatal, "Undefined Code (0x00A)"}, + {abort_fatal, "Domain Fault (L2)"}, + {abort_fatal, "External Translation Abort (L1)"}, + {NULL, "Permission Fault (L1)"}, + {abort_fatal, "External Translation Abort (L2)"}, + {NULL, "Permission Fault (L2)"}, + + {abort_fatal, "TLB Conflict Abort"}, + {abort_fatal, "Undefined Code (0x401)"}, + {abort_fatal, "Undefined Code (0x402)"}, + {abort_fatal, "Undefined Code (0x403)"}, + {abort_fatal, "Undefined Code (0x404)"}, + {abort_fatal, "Undefined Code (0x405)"}, + {abort_fatal, "Asynchronous External Abort"}, + {abort_fatal, "Undefined Code (0x407)"}, + + {abort_fatal, "Asynchronous Parity Error on Memory Access"}, + {abort_fatal, "Parity Error on Memory Access"}, + {abort_fatal, "Undefined Code (0x40A)"}, + {abort_fatal, "Undefined Code (0x40B)"}, + {abort_fatal, "Parity Error on Translation (L1)"}, + {abort_fatal, "Undefined Code (0x40D)"}, + {abort_fatal, "Parity Error on Translation (L2)"}, + {abort_fatal, "Undefined Code (0x40F)"} +}; + + +static __inline void +call_trapsignal(struct thread *td, int sig, int code, vm_offset_t addr) +{ + ksiginfo_t ksi; + + CTR4(KTR_TRAP, "%s: addr: %#x, sig: %d, code: %d", + __func__, addr, sig, code); + + /* + * TODO: some info would be nice to know + * if we are serving data or prefetch abort. + */ + + ksiginfo_init_trap(&ksi); + ksi.ksi_signo = sig; + ksi.ksi_code = code; + ksi.ksi_addr = (void *)addr; + trapsignal(td, &ksi); +} + +/* + * abort_imprecise() handles the following abort: + * + * FAULT_EA_IMPREC - Imprecise External Abort + * + * The imprecise means that we don't know where the abort happened, + * thus FAR is undefined. The abort should not never fire, but hot + * plugging or accidental harware failure can be the cause of it. + * If the abort happens, it can even be on different (thread) context. + * Without any additional support, the abort is fatal, as we do not + * know what really happened. + * + * QQQ: Some additional functionality, like pcb_onfault but global, + * can be implemented. Imprecise handlers could be registered + * which tell us if the abort is caused by something they know + * about. They should return one of three codes like: + * FAULT_IS_MINE, + * FAULT_CAN_BE_MINE, + * FAULT_IS_NOT_MINE. + * The handlers should be called until some of them returns + * FAULT_IS_MINE value or all was called. If all handlers return + * FAULT_IS_NOT_MINE value, then the abort is fatal. + */ +static __inline void +abort_imprecise(struct trapframe *tf, u_int fsr, u_int prefetch, u_int usermode) +{ + /* XXXX We can got imprecise abort as result of access + * to not-present PCI/PCIe configuration space. + */ +#if 0 + goto out; +#endif + abort_fatal(tf, FAULT_EA_IMPREC, fsr, 0, prefetch, curthread, NULL); + + /* + * Returning from this function means that we ignore + * the abort for good reason. Note that imprecise abort + * could fire any time even in user mode. + */ + +#if 0 +out: + if (usermode) + userret(curthread, tf); +#endif +} + +/* + * abort_debug() handles the following abort: + * + * FAULT_DEBUG - Debug Event + * + */ +static __inline void +abort_debug(struct trapframe *tf, u_int fsr, u_int prefetch, u_int usermode, + u_int far) +{ + if (usermode) { + struct thread *td; + + td = curthread; + call_trapsignal(td, SIGTRAP, TRAP_BRKPT, far); + userret(td, tf); + } else { +#ifdef KDB + kdb_trap(T_BREAKPOINT, 0, tf); +#else + printf("No debugger in kernel.\n"); +#endif + } +} + +/* + * Abort handler. + * + * FAR, FSR, and everything what can be lost after enabling + * interrupts must be grabbed before the interrupts will be + * enabled. Note that when interrupts will be enabled, we + * could even migrate to another CPU ... + * + * TODO: move quick cases to ASM + */ +void +abort_handler(struct trapframe *tf, int prefetch) +{ + struct thread *td; + vm_offset_t far, va; + int idx, usermode; + uint32_t fsr; + struct ksig ksig; + struct proc *p; + struct pcb *pcb; + struct vm_map *map; + struct vmspace *vm; + vm_prot_t ftype; + int rv; +#ifdef INVARIANTS + void *onfault; +#endif + td = curthread; + fsr = (prefetch) ? cp15_ifsr_get(): cp15_dfsr_get(); + far = (prefetch) ? TRAPF_PC(tf) : cp15_dfar_get(); + + idx = FSR_TO_FAULT(fsr); + usermode = TRAPF_USERMODE(tf); /* Abort came from user mode? */ + if (usermode) + td->td_frame = tf; + + CTR4(KTR_TRAP, "abort_handler: fsr %#x (idx %u) far %#x prefetch %u", + fsr, idx, far, prefetch); + + /* + * Firstly, handle aborts that are not directly related to mapping. + */ + if (__predict_false(idx == FAULT_EA_IMPREC)) { + abort_imprecise(tf, fsr, prefetch, usermode); + return; + } + + if (__predict_false(idx == FAULT_DEBUG)) { + abort_debug(tf, fsr, prefetch, usermode, far); + return; + } + +#ifdef ARM_NEW_PMAP + rv = pmap_fault(PCPU_GET(curpmap), far, fsr, idx, usermode); + if (rv == 0) { + return; + } else if (rv == EFAULT) { + + call_trapsignal(td, SIGSEGV, SEGV_MAPERR, far); + userret(td, tf); + return; + } +#endif + /* + * Now, when we handled imprecise and debug aborts, the rest of + * aborts should be really related to mapping. + * + */ + + PCPU_INC(cnt.v_trap); + +#ifdef KDB + if (kdb_active) { + kdb_reenter(); + goto out; + } +#endif + if (__predict_false((td->td_pflags & TDP_NOFAULTING) != 0)) { + /* + * Due to both processor errata and lazy TLB invalidation when + * access restrictions are removed from virtual pages, memory + * accesses that are allowed by the physical mapping layer may + * nonetheless cause one spurious page fault per virtual page. + * When the thread is executing a "no faulting" section that + * is bracketed by vm_fault_{disable,enable}_pagefaults(), + * every page fault is treated as a spurious page fault, + * unless it accesses the same virtual address as the most + * recent page fault within the same "no faulting" section. + */ + if (td->td_md.md_spurflt_addr != far || + (td->td_pflags & TDP_RESETSPUR) != 0) { + td->td_md.md_spurflt_addr = far; + td->td_pflags &= ~TDP_RESETSPUR; + + tlb_flush_local(far & ~PAGE_MASK); + return; + } + } else { + /* + * If we get a page fault while in a critical section, then + * it is most likely a fatal kernel page fault. The kernel + * is already going to panic trying to get a sleep lock to + * do the VM lookup, so just consider it a fatal trap so the + * kernel can print out a useful trap message and even get + * to the debugger. + * + * If we get a page fault while holding a non-sleepable + * lock, then it is most likely a fatal kernel page fault. + * If WITNESS is enabled, then it's going to whine about + * bogus LORs with various VM locks, so just skip to the + * fatal trap handling directly. + */ + if (td->td_critnest != 0 || + WITNESS_CHECK(WARN_SLEEPOK | WARN_GIANTOK, NULL, + "Kernel page fault") != 0) { + abort_fatal(tf, idx, fsr, far, prefetch, td, &ksig); + return; + } + } + + /* Re-enable interrupts if they were enabled previously. */ + if (td->td_md.md_spinlock_count == 0) { + if (__predict_true(tf->tf_spsr & PSR_I) == 0) + enable_interrupts(PSR_I); + if (__predict_true(tf->tf_spsr & PSR_F) == 0) + enable_interrupts(PSR_F); + } + + p = td->td_proc; + if (usermode) { + td->td_pticks = 0; + if (td->td_ucred != p->p_ucred) + cred_update_thread(td); + } + + /* Invoke the appropriate handler, if necessary. */ + if (__predict_false(aborts[idx].func != NULL)) { + if ((aborts[idx].func)(tf, idx, fsr, far, prefetch, td, &ksig)) + goto do_trapsignal; + goto out; + } + + /* + * At this point, we're dealing with one of the following aborts: + * + * FAULT_TRAN_xx - Translation + * FAULT_PERM_xx - Permission + * + * These are the main virtual memory-related faults signalled by + * the MMU. + */ + + /* fusubailout is used by [fs]uswintr to avoid page faulting */ + pcb = td->td_pcb; + if (__predict_false(pcb->pcb_onfault == fusubailout)) { + tf->tf_r0 = EFAULT; + tf->tf_pc = (register_t)pcb->pcb_onfault; + return; + } + + /* + * QQQ: ARM has a set of unprivileged load and store instructions + * (LDRT/LDRBT/STRT/STRBT ...) which are supposed to be used + * in other than user mode and OS should recognize their + * aborts and behaved appropriately. However, there is no way + * how to do that reasonably in general unless we restrict + * the handling somehow. One way is to limit the handling for + * aborts which come from undefined mode only. + * + * Anyhow, we do not use these instructions and do not implement + * any special handling for them. + */ + + va = trunc_page(far); + if (va >= KERNBASE) { + /* + * Don't allow user-mode faults in kernel address space. + */ + if (usermode) + goto nogo; + + map = kernel_map; + } else { + /* + * This is a fault on non-kernel virtual memory. If curproc + * is NULL or curproc->p_vmspace is NULL the fault is fatal. + */ + vm = (p != NULL) ? p->p_vmspace : NULL; + if (vm == NULL) + goto nogo; + + map = &vm->vm_map; + if (!usermode && (td->td_intr_nesting_level != 0 || + pcb->pcb_onfault == NULL)) { + abort_fatal(tf, idx, fsr, far, prefetch, td, &ksig); + return; + } + } + + ftype = (fsr & FSR_WNR) ? VM_PROT_WRITE : VM_PROT_READ; + if (prefetch) + ftype |= VM_PROT_EXECUTE; + +#ifndef ARM_NEW_PMAP + if (pmap_fault_fixup(vmspace_pmap(td->td_proc->p_vmspace), va, ftype, + usermode)) { + goto out; + } +#endif + +#ifdef INVARIANTS + onfault = pcb->pcb_onfault; + pcb->pcb_onfault = NULL; +#endif + if (map != kernel_map) { + /* + * Keep swapout from messing with us during this + * critical time. + */ + PROC_LOCK(p); + ++p->p_lock; + PROC_UNLOCK(p); + + /* Fault in the user page: */ + rv = vm_fault(map, va, ftype, VM_FAULT_NORMAL); + + PROC_LOCK(p); + --p->p_lock; + PROC_UNLOCK(p); + } else { + /* + * Don't have to worry about process locking or stacks in the + * kernel. + */ + rv = vm_fault(map, va, ftype, VM_FAULT_NORMAL); + } + +#ifdef INVARIANTS + pcb->pcb_onfault = onfault; +#endif + + if (__predict_true(rv == KERN_SUCCESS)) + goto out; +nogo: + if (!usermode) { + if (td->td_intr_nesting_level == 0 && + pcb->pcb_onfault != NULL) { + tf->tf_r0 = rv; + tf->tf_pc = (int)pcb->pcb_onfault; + return; + } + CTR2(KTR_TRAP, "%s: vm_fault() failed with %d", __func__, rv); + abort_fatal(tf, idx, fsr, far, prefetch, td, &ksig); + return; + } + + ksig.sig = (rv == KERN_PROTECTION_FAILURE) ? SIGBUS : SIGSEGV; + ksig.code = 0; + ksig.addr = far; + +do_trapsignal: + call_trapsignal(td, ksig.sig, ksig.code, ksig.addr); +out: + if (usermode) + userret(td, tf); +} + +/* + * abort_fatal() handles the following data aborts: + + * FAULT_DEBUG - Debug Event + * FAULT_ACCESS_xx - Acces Bit + * FAULT_EA_PREC - Precise External Abort + * FAULT_DOMAIN_xx - Domain Fault + * FAULT_EA_TRAN_xx - External Translation Abort + * FAULT_EA_IMPREC - Imprecise External Abort + * + all undefined codes for ABORT + * + * We should never see these on a properly functioning system. + * + * This function is also called by the other handlers if they + * detect a fatal problem. + * + * Note: If 'l' is NULL, we assume we're dealing with a prefetch abort. + */ +static int +abort_fatal(struct trapframe *tf, u_int idx, u_int fsr, u_int far, u_int prefetch, + struct thread *td, struct ksig *ksig) +{ + u_int usermode; + const char *mode; + const char *rw_mode; + + usermode = TRAPF_USERMODE(tf); + mode = usermode ? "user" : "kernel"; + rw_mode = fsr & FSR_WNR ? "write" : "read"; + disable_interrupts(PSR_I|PSR_F); + + if (td != NULL) { + printf("Fatal %s mode data abort: '%s' on %s\n", mode, + aborts[idx].desc, rw_mode); + printf("trapframe: %p\nFSR=%08x, FAR=", tf, fsr); + if (idx != FAULT_EA_IMPREC) + printf("%08x, ", far); + else + printf("Invalid, "); + printf("spsr=%08x\n", tf->tf_spsr); + } else { + printf("Fatal %s mode prefetch abort at 0x%08x\n", + mode, tf->tf_pc); + printf("trapframe: %p, spsr=%08x\n", tf, tf->tf_spsr); + } + + printf("r0 =%08x, r1 =%08x, r2 =%08x, r3 =%08x\n", + tf->tf_r0, tf->tf_r1, tf->tf_r2, tf->tf_r3); + printf("r4 =%08x, r5 =%08x, r6 =%08x, r7 =%08x\n", + tf->tf_r4, tf->tf_r5, tf->tf_r6, tf->tf_r7); + printf("r8 =%08x, r9 =%08x, r10=%08x, r11=%08x\n", + tf->tf_r8, tf->tf_r9, tf->tf_r10, tf->tf_r11); + printf("r12=%08x, ", tf->tf_r12); + + if (usermode) + printf("usp=%08x, ulr=%08x", + tf->tf_usr_sp, tf->tf_usr_lr); + else + printf("ssp=%08x, slr=%08x", + tf->tf_svc_sp, tf->tf_svc_lr); + printf(", pc =%08x\n\n", tf->tf_pc); + +#ifdef KDB + if (debugger_on_panic || kdb_active) + kdb_trap(fsr, 0, tf); +#endif + panic("Fatal abort"); + /*NOTREACHED*/ +} + +/* + * abort_align() handles the following data abort: + * + * FAULT_ALIGN - Alignment fault + * + * Every memory access should be correctly aligned in kernel including + * user to kernel and vice versa data copying, so we ignore pcb_onfault, + * and it's always fatal. We generate a signal in case of abort from user mode. + */ +static int +abort_align(struct trapframe *tf, u_int idx, u_int fsr, u_int far, u_int prefetch, + struct thread *td, struct ksig *ksig) +{ + u_int usermode; + + usermode = TRAPF_USERMODE(tf); + + /* + * Alignment faults are always fatal if they occur in any but user mode. + * + * XXX The old trap code handles pcb fault even for alignment traps. + * Unfortunately, we don't known why and if is this need. + */ + if (!usermode) { + if (td->td_intr_nesting_level == 0 && td != NULL && + td->td_pcb->pcb_onfault != NULL) { + printf("%s: Got alignment fault with pcb_onfault set" + ", please report this issue\n", __func__); + tf->tf_r0 = EFAULT;; + tf->tf_pc = (int)td->td_pcb->pcb_onfault; + return (0); + } + abort_fatal(tf, idx, fsr, far, prefetch, td, ksig); + } + /* Deliver a bus error signal to the process */ + ksig->code = 0; + ksig->sig = SIGBUS; + ksig->addr = far; + return (1); +} + +/* + * abort_icache() handles the following data abort: + * + * FAULT_ICACHE - Instruction cache maintenance + * + * According to manual, FAULT_ICACHE is translation fault during cache + * maintenance operation. In fact, no cache maintenance operation on + * not mapped virtual addresses should be called. As cache maintenance + * operation (except DMB, DSB, and Flush Prefetch Buffer) are priviledged, + * the abort is concider as fatal for now. However, all the matter with + * cache maintenance operation on virtual addresses could be really complex + * and fuzzy in SMP case, so maybe in future standard fault mechanism + * should be held here including vm_fault() calling. + */ +static int +abort_icache(struct trapframe *tf, u_int idx, u_int fsr, u_int far, u_int prefetch, + struct thread *td, struct ksig *ksig) +{ + abort_fatal(tf, idx, fsr, far, prefetch, td, ksig); + return(0); +} Modified: head/sys/arm/include/armreg.h ============================================================================== --- head/sys/arm/include/armreg.h Sat Jan 3 21:47:32 2015 (r276637) +++ head/sys/arm/include/armreg.h Sat Jan 3 22:33:18 2015 (r276638) @@ -41,6 +41,8 @@ #ifndef MACHINE_ARMREG_H #define MACHINE_ARMREG_H +#include + #define INSN_SIZE 4 #define INSN_COND_MASK 0xf0000000 /* Condition mask */ #define PSR_MODE 0x0000001f /* mode mask */ @@ -351,10 +353,10 @@ #define CACHE_UNI_CACHE 4 /* Fault status register definitions */ - -#define FAULT_TYPE_MASK 0x0f #define FAULT_USER 0x10 +#if __ARM_ARCH < 6 +#define FAULT_TYPE_MASK 0x0f #define FAULT_WRTBUF_0 0x00 /* Vector Exception */ #define FAULT_WRTBUF_1 0x02 /* Terminal Exception */ #define FAULT_BUSERR_0 0x04 /* External Abort on Linefetch -- Section */ @@ -377,14 +379,36 @@ #define FAULT_EXTERNAL 0x400 /* External abort (armv6+) */ #define FAULT_WNR 0x800 /* Write-not-Read access (armv6+) */ -/* Fault status register definitions - v6+ */ -#define FSR_STATUS_TO_IDX(fsr) (((fsr) & 0xF) | \ - (((fsr) & (1 << 10)>> (10 - 4)))) -#define FSR_LPAE (1 << 9) /* LPAE indicator */ -#define FSR_WNR (1 << 11) /* Write-not-Read access */ -#define FSR_EXT (1 << 12) /* DECERR/SLVERR for external*/ -#define FSR_CM (1 << 13) /* Cache maintenance fault */ +#else /* __ARM_ARCH < 6 */ +#define FAULT_ALIGN 0x001 /* Alignment Fault */ +#define FAULT_DEBUG 0x002 /* Debug Event */ +#define FAULT_ACCESS_L1 0x003 /* Access Bit (L1) */ +#define FAULT_ICACHE 0x004 /* Instruction cache maintenance */ +#define FAULT_TRAN_L1 0x005 /* Translation Fault (L1) */ +#define FAULT_ACCESS_L2 0x006 /* Access Bit (L2) */ +#define FAULT_TRAN_L2 0x007 /* Translation Fault (L2) */ +#define FAULT_EA_PREC 0x008 /* External Abort */ +#define FAULT_DOMAIN_L1 0x009 /* Domain Fault (L1) */ +#define FAULT_DOMAIN_L2 0x00B /* Domain Fault (L2) */ +#define FAULT_EA_TRAN_L1 0x00C /* External Translation Abort (L1) */ +#define FAULT_PERM_L1 0x00D /* Permission Fault (L1) */ +#define FAULT_EA_TRAN_L2 0x00E /* External Translation Abort (L2) */ +#define FAULT_PERM_L2 0x00F /* Permission Fault (L2) */ +#define FAULT_TLB_CONFLICT 0x010 /* Permission Fault (L2) */ +#define FAULT_EA_IMPREC 0x016 /* Asynchronous External Abort */ +#define FAULT_PE_IMPREC 0x018 /* Asynchronous Parity Error */ +#define FAULT_PARITY 0x019 /* Parity Error */ +#define FAULT_PE_TRAN_L1 0x01C /* Parity Error on Translation (L1) */ +#define FAULT_PE_TRAN_L2 0x01E /* Parity Error on Translation (L2) */ + +#define FSR_TO_FAULT(fsr) (((fsr) & 0xF) | \ + ((((fsr) & (1 << 10)) >> (10 - 4)))) +#define FSR_LPAE (1 << 9) /* LPAE indicator */ +#define FSR_WNR (1 << 11) /* Write-not-Read access */ +#define FSR_EXT (1 << 12) /* DECERR/SLVERR for external*/ +#define FSR_CM (1 << 13) /* Cache maintenance fault */ +#endif /* !__ARM_ARCH < 6 */ /* * Address of the vector page, low and high versions. Modified: head/sys/arm/include/proc.h ============================================================================== --- head/sys/arm/include/proc.h Sat Jan 3 21:47:32 2015 (r276637) +++ head/sys/arm/include/proc.h Sat Jan 3 22:33:18 2015 (r276638) @@ -48,6 +48,7 @@ struct md_utrap { struct mdthread { int md_spinlock_count; /* (k) */ register_t md_saved_cspr; /* (k) */ + register_t md_spurflt_addr; /* (k) Spurious page fault address. */ int md_ptrace_instr; int md_ptrace_addr; register_t md_tp; Modified: head/sys/conf/files.arm ============================================================================== --- head/sys/conf/files.arm Sat Jan 3 21:47:32 2015 (r276637) +++ head/sys/conf/files.arm Sat Jan 3 22:33:18 2015 (r276638) @@ -53,7 +53,8 @@ arm/arm/support.S standard arm/arm/swtch.S standard arm/arm/sys_machdep.c standard arm/arm/syscall.c standard -arm/arm/trap.c standard +arm/arm/trap.c optional !armv6 +arm/arm/trap-v6.c optional armv6 arm/arm/uio_machdep.c standard arm/arm/undefined.c standard arm/arm/vm_machdep.c standard From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 22:36:20 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2A2AE680; Sat, 3 Jan 2015 22:36:20 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 15D0764BCA; Sat, 3 Jan 2015 22:36:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03MaJif012508; Sat, 3 Jan 2015 22:36:19 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03MaJJY012507; Sat, 3 Jan 2015 22:36:19 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201501032236.t03MaJJY012507@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Sat, 3 Jan 2015 22:36:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276639 - head/sys/modules/drm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 22:36:20 -0000 Author: jhibbits Date: Sat Jan 3 22:36:18 2015 New Revision: 276639 URL: https://svnweb.freebsd.org/changeset/base/276639 Log: The radeon DRI module doesn't really work correctly on powerpc, so don't build it. Hopefully we'll get radeonkms eventually. Discussed with: nwhitehorn MFC after: 2 weeks Modified: head/sys/modules/drm/Makefile Modified: head/sys/modules/drm/Makefile ============================================================================== --- head/sys/modules/drm/Makefile Sat Jan 3 22:33:18 2015 (r276638) +++ head/sys/modules/drm/Makefile Sat Jan 3 22:36:18 2015 (r276639) @@ -21,7 +21,9 @@ SUBDIR = \ .if ${MK_SOURCELESS_UCODE} != "no" _mga= mga _r128= r128 +.if ${MACHINE_CPUARCH} != "powerpc" _radeon= radeon .endif +.endif .include From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 23:16:14 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3F233CDD; Sat, 3 Jan 2015 23:16:14 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2BB9E66151; Sat, 3 Jan 2015 23:16:14 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03NGE5S031974; Sat, 3 Jan 2015 23:16:14 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03NGELR031973; Sat, 3 Jan 2015 23:16:14 GMT (envelope-from bapt@FreeBSD.org) Message-Id: <201501032316.t03NGELR031973@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f From: Baptiste Daroussin Date: Sat, 3 Jan 2015 23:16:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276641 - head/contrib/vis X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 23:16:14 -0000 Author: bapt Date: Sat Jan 3 23:16:13 2015 New Revision: 276641 URL: https://svnweb.freebsd.org/changeset/base/276641 Log: Import NetBSD vis(1) mandoc fixes Modified: head/contrib/vis/vis.1 Directory Properties: head/contrib/vis/ (props changed) Modified: head/contrib/vis/vis.1 ============================================================================== --- head/contrib/vis/vis.1 Sat Jan 3 23:15:01 2015 (r276640) +++ head/contrib/vis/vis.1 Sat Jan 3 23:16:13 2015 (r276641) @@ -1,4 +1,4 @@ -.\" $NetBSD: vis.1,v 1.17 2013/02/14 14:00:00 christos Exp $ +.\" $NetBSD: vis.1,v 1.19 2013/03/14 19:17:23 njoly Exp $ .\" .\" Copyright (c) 1989, 1991, 1993, 1994 .\" The Regents of the University of California. All rights reserved. @@ -29,7 +29,7 @@ .\" .\" @(#)vis.1 8.4 (Berkeley) 4/19/94 .\" -.Dd February 13, 2013 +.Dd February 19, 2013 .Dt VIS 1 .Os .Sh NAME @@ -154,6 +154,7 @@ instead. .It Ev LC_CTYPE Specify the locale of the input data. Set to C if the input data locale is unknown. +.El .Sh SEE ALSO .Xr unvis 1 , .Xr svis 3 , @@ -164,6 +165,6 @@ The command appears in .Bx 4.4 . Myltibyte character support was added in -.Nx 6.1 +.Nx 7.0 and .Fx 9.2 . From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 23:30:31 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 01348F72; Sat, 3 Jan 2015 23:30:30 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C7E1B6636F; Sat, 3 Jan 2015 23:30:30 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03NUUF4039002; Sat, 3 Jan 2015 23:30:30 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03NUU45038999; Sat, 3 Jan 2015 23:30:30 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201501032330.t03NUU45038999@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Sat, 3 Jan 2015 23:30:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276642 - head/sys/arm/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 23:30:31 -0000 Author: ian Date: Sat Jan 3 23:30:29 2015 New Revision: 276642 URL: https://svnweb.freebsd.org/changeset/base/276642 Log: Remove commented-out options SMP and APIC_IO from old arm boards that will never be able to support smp. Modified: head/sys/arm/conf/CRB head/sys/arm/conf/EP80219 head/sys/arm/conf/IQ31244 Modified: head/sys/arm/conf/CRB ============================================================================== --- head/sys/arm/conf/CRB Sat Jan 3 23:16:13 2015 (r276641) +++ head/sys/arm/conf/CRB Sat Jan 3 23:30:29 2015 (r276642) @@ -101,9 +101,6 @@ options DDB # Enable the kernel debug #options WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed #options DIAGNOSTIC -# To make an SMP kernel, the next two are needed -#options SMP # Symmetric MultiProcessor Kernel -#options APIC_IO # Symmetric (APIC) I/O options XSCALE_CACHE_READ_WRITE_ALLOCATE device md device random # Entropy device Modified: head/sys/arm/conf/EP80219 ============================================================================== --- head/sys/arm/conf/EP80219 Sat Jan 3 23:16:13 2015 (r276641) +++ head/sys/arm/conf/EP80219 Sat Jan 3 23:30:29 2015 (r276642) @@ -97,9 +97,6 @@ options DDB # Enable the kernel debug #options WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed #options DIAGNOSTIC -# To make an SMP kernel, the next two are needed -#options SMP # Symmetric MultiProcessor Kernel -#options APIC_IO # Symmetric (APIC) I/O options XSCALE_CACHE_READ_WRITE_ALLOCATE device md device random # Entropy device Modified: head/sys/arm/conf/IQ31244 ============================================================================== --- head/sys/arm/conf/IQ31244 Sat Jan 3 23:16:13 2015 (r276641) +++ head/sys/arm/conf/IQ31244 Sat Jan 3 23:30:29 2015 (r276642) @@ -102,9 +102,6 @@ options DDB # Enable the kernel debug #options WITNESS_SKIPSPIN # Don't run witness on spinlocks for speed #options DIAGNOSTIC -# To make an SMP kernel, the next two are needed -#options SMP # Symmetric MultiProcessor Kernel -#options APIC_IO # Symmetric (APIC) I/O options XSCALE_CACHE_READ_WRITE_ALLOCATE device md device random # Entropy device From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 23:32:13 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 83BA7144; Sat, 3 Jan 2015 23:32:13 +0000 (UTC) Received: from mail.turbocat.net (mail.turbocat.net [IPv6:2a01:4f8:d16:4514::2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2A54B663BA; Sat, 3 Jan 2015 23:32:13 +0000 (UTC) Received: from laptop015.home.selasky.org (cm-176.74.213.204.customer.telag.net [176.74.213.204]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.turbocat.net (Postfix) with ESMTPSA id 8E5171FE022; Sun, 4 Jan 2015 00:32:10 +0100 (CET) Message-ID: <54A87C28.2030304@selasky.org> Date: Sun, 04 Jan 2015 00:32:56 +0100 From: Hans Petter Selasky User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 MIME-Version: 1.0 To: Bruce Evans Subject: Re: svn commit: r276626 - head/sys/kern References: <201501031721.t03HLKHp060964@svn.freebsd.org> <20150104045338.V2929@besplex.bde.org> In-Reply-To: <20150104045338.V2929@besplex.bde.org> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 23:32:13 -0000 On 01/03/15 21:17, Bruce Evans wrote: > On Sat, 3 Jan 2015, Hans Petter Selasky wrote: > >> Log: >> Rework r276532 a bit. Always avoid recursing into the console drivers >> clients, hence they might not handle it very well. This change allows >> debugging mutex problems with kernel console drivers when >> "debug.witness.skipspin=0" is set in the boot environment. > > This keeps getting worse. Console drivers are required to be reentrant > so that console i/o works in any context, including reentering the > console driver a couple of times. > (One level of reentrancy always occurs when the console driver is > stepped through using ddb -- then the debugger traps occur while > the console driver is in any state, and the debugger proceeds to > reenter the console driver to do its i/o. ddb doesn't support > debugging itself, so the reentering is normally limited to 1 level. > However, once the console driver supports one level of reentrancy > it is easy to support any number, and another level or two is useful > for reporting bugs in ddb. E.g., buggy locking in ddb or the console > driver > (almost any locking there is buggy, like the locking bugs moved in > this commit) > then witness might detect the bug and try to print a message about it.) > No console driver is reentrant enough to work right > (only sio is close; syscons is very broken, and I suspect vt and usb > (keyboards) are worse. Full reentrancy is not possible; all that > can be asked for is that new i/o is done, and the driver and device > states are not corrupted; old and interrupted i/o must not be waited > for without bound and it may be corrupted) > but that is another bug suite. It cannot be fixed here. > >> Modified: head/sys/kern/kern_cons.c >> ============================================================================== >> >> --- head/sys/kern/kern_cons.c Sat Jan 3 16:48:08 2015 (r276625) >> +++ head/sys/kern/kern_cons.c Sat Jan 3 17:21:19 2015 (r276626) >> @@ -512,6 +512,13 @@ cnputs(char *p) >> int unlock_reqd = 0; >> >> if (use_cnputs_mtx) { >> + /* >> + * NOTE: Debug prints and/or witness printouts in >> + * console driver clients can cause the "cnputs_mtx" >> + * mutex to recurse. Simply return if that happens. >> + */ > > This comment is too verbose, but not verbose enough to mention as many > as 1% of the bugs. > > It is somewhat misleading in saying "Debug prints" (sic). Printing by > the debugger (ddb) doesn't go through here (except for the bug that > debugger entry uses printf()). Debugging printf()s in console driver > code (including code called by the console driver) might recurse here, > but there shouldn't be any such printf()s unless you are debugging this > deadlock bug. The deadlock bug for witness is a special case of this. > Console code shouldn't have any LORs that would cause a witness warning > (unless you put the LORs to debug its handling...). However, it is > reasonable to recurse here for witness warnings from console non-clients: > the console driver may be trapped or interrupted, and then the trap > handler may try to acquire a lock, and if this lock is witnessed it > may trigger a witness warning. > (The main case of a trap is a debugger trap. Only non-maskable > interrupts can occur, since spinlocks disable interrupts. The main > case of an interrupt is a START or STOP IPI. When I debugged console > i/o in syscons, I generated races and deadlocks mainly by sprinkling > printfs() in trap() and IPI handlers. Production code shouldn't have > such printfs, but they should work. In theory, a fatal trap can occur > while in console code. Then panic() will call here. > >> + if (mtx_owned(&cnputs_mtx)) >> + return; > > The largest obvious new bug here is losing all output from panic() > (and possibly other critical output) for panics that occur while > the mutex is held by the same CPU. The previous change made this > case work (for reentrant console drivers) instead of deadlocking. > >> mtx_lock_spin(&cnputs_mtx); >> unlock_reqd = 1; >> } > > One reason the console driver bugs cannot be fixed here is that this > lock only covers one entry point to the console driver. Only line-buffered > i/o goes through here. ddb output never goes through here. Line > buffering is only done if PRINTF_BUFR_SIZE is configured. PRINTF_BUFR_SIZE > gives a very bad implementation of serialization of output. Old message > buffer code used atomic ops to avoid deadlock. It was replaced by broken > locking. The locking gives deadlock on recursion in the same way as here. > However, the race window for it (mainly in msgbuf_addchar()) is much > shorter than here and I wasn't able to demonstrate it deadlocking. > >> @@ -601,13 +608,7 @@ static void >> cn_drvinit(void *unused) >> { >> >> - /* >> - * NOTE: Debug prints and/or witness printouts in console >> - * driver clients can cause the "cnputs_mtx" mutex to >> - * recurse. Make sure the "MTX_RECURSE" flags is set! >> - */ >> - mtx_init(&cnputs_mtx, "cnputs_mtx", NULL, MTX_SPIN | >> - MTX_NOWITNESS | MTX_RECURSE); >> + mtx_init(&cnputs_mtx, "cnputs_mtx", NULL, MTX_SPIN | MTX_NOWITNESS); >> use_cnputs_mtx = 1; >> } > > cnputs() and its lock are used mainly to support the serialization of > output done under PRINTF_BUFR_SIZE. It is obviously broken since it gives > deadlock. Hi Bruce, Thanks for your analysis. I can get the the full backtrace if you like, but not right now. It is quite long! Quickly summarized, the problem is that printf recurses from inside a mtx_lock_spin() because of a LOR, due to some testing I'm doing, which is because witness calls directly to printf() again. In other words, we cannot use printf() to debug problems in the console drivers, and actually printf() should be disabled when we are inside certain code paths, simply. Instead of a nice LOR printout, I immediately hit a panic, because other mutexes marked as non-recursive suddenly got recursed inside the console drivers, in this case "dev/vt". For now, printouts are not allowed if inside "cnputc()". This at least got me on with the debugging. Previously "cnputs_mtx" was marked non-recursive, and I think that is correct. > It should at least have used MTX_RECURSE. Your previous > change to add this seems to be correct in the sense of not adding new > bugs. Any locking here cannot fix driver bugs, but it can act as a > serialization hint. The lock here prevents interference from other > CPUs and thus improves serialization. Making it recursive changes > deadlock to non-serialization in the unusual case of recursion. My patch is not about locking the whole of "printf()" statements. It is about preventing "printf()" from recursing. > > Note that the locking here (like any normal mutex locking) is still > fundamentally broken. The most obviously broken case is when a panic > occurs while another CPU holds the lock. Then that CPU will be stopped > very early in panic() and never started again. If it is stopped before > it can release the lock, then the CPU executing the panic() will > deadlock on the lock. Returning would be little better since it would > lose all the panic() output, as happens now when the lock is held by > the same CPU. mtx_owned() tells only if the current thread is holding the lock, unlike other implementations of locking. Not if anyone is holding the lock. Summed up: printf() should not debug itself. --HPS From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 23:39:45 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E079A409; Sat, 3 Jan 2015 23:39:45 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CCBD76642B; Sat, 3 Jan 2015 23:39:45 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03Ndj12041769; Sat, 3 Jan 2015 23:39:45 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03NdjYf041768; Sat, 3 Jan 2015 23:39:45 GMT (envelope-from bapt@FreeBSD.org) Message-Id: <201501032339.t03NdjYf041768@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f From: Baptiste Daroussin Date: Sat, 3 Jan 2015 23:39:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276643 - head/usr.bin/man X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 23:39:46 -0000 Author: bapt Date: Sat Jan 3 23:39:44 2015 New Revision: 276643 URL: https://svnweb.freebsd.org/changeset/base/276643 Log: Only manpages with fatal errors should be rendered by groff(1) Modified: head/usr.bin/man/man.sh Modified: head/usr.bin/man/man.sh ============================================================================== --- head/usr.bin/man/man.sh Sat Jan 3 23:30:29 2015 (r276642) +++ head/usr.bin/man/man.sh Sat Jan 3 23:39:44 2015 (r276643) @@ -311,7 +311,7 @@ man_display_page() { return fi - testline="mandoc -Tlint -Werror 2>/dev/null" + testline="mandoc -Tlint -Wfatal 2>/dev/null" pipeline="mandoc | $MANPAGER" if ! eval "$cattool $manpage | $testline" ;then From owner-svn-src-head@FreeBSD.ORG Sat Jan 3 23:57:07 2015 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 16329750; Sat, 3 Jan 2015 23:57:07 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EB6956667C; Sat, 3 Jan 2015 23:57:06 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.9/8.14.9) with ESMTP id t03Nv6gf050922; Sat, 3 Jan 2015 23:57:06 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by svn.freebsd.org (8.14.9/8.14.9/Submit) id t03Nv420050911; Sat, 3 Jan 2015 23:57:04 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201501032357.t03Nv420050911@svn.freebsd.org> X-Authentication-Warning: svn.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Sat, 3 Jan 2015 23:57:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r276644 - head/sys/arm/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 03 Jan 2015 23:57:07 -0000 Author: ian Date: Sat Jan 3 23:57:03 2015 New Revision: 276644 URL: https://svnweb.freebsd.org/changeset/base/276644 Log: Switch all arm kernels with option SMP to use SCHED_ULE instead of 4BSD. Modified: head/sys/arm/conf/ARMADAXP head/sys/arm/conf/CUBIEBOARD2 head/sys/arm/conf/EXYNOS5.common head/sys/arm/conf/PANDABOARD head/sys/arm/conf/RK3188 head/sys/arm/conf/SOCKIT head/sys/arm/conf/SOCKIT-BERI head/sys/arm/conf/ZEDBOARD Modified: head/sys/arm/conf/ARMADAXP ============================================================================== --- head/sys/arm/conf/ARMADAXP Sat Jan 3 23:39:44 2015 (r276643) +++ head/sys/arm/conf/ARMADAXP Sat Jan 3 23:57:03 2015 (r276644) @@ -28,7 +28,7 @@ makeoptions WERROR="-Werror" options HZ=1000 #options SCHED_ULE # ULE scheduler -options SCHED_4BSD # 4BSD scheduler +options SCHED_ULE # ULE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols Modified: head/sys/arm/conf/CUBIEBOARD2 ============================================================================== --- head/sys/arm/conf/CUBIEBOARD2 Sat Jan 3 23:39:44 2015 (r276643) +++ head/sys/arm/conf/CUBIEBOARD2 Sat Jan 3 23:57:03 2015 (r276644) @@ -27,7 +27,7 @@ makeoptions MODULES_OVERRIDE="" makeoptions WITHOUT_MODULES="ahc" options HZ=100 -options SCHED_4BSD # 4BSD scheduler +options SCHED_ULE # ULE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols Modified: head/sys/arm/conf/EXYNOS5.common ============================================================================== --- head/sys/arm/conf/EXYNOS5.common Sat Jan 3 23:39:44 2015 (r276643) +++ head/sys/arm/conf/EXYNOS5.common Sat Jan 3 23:57:03 2015 (r276644) @@ -24,7 +24,7 @@ makeoptions WITHOUT_MODULES="ahc" makeoptions WERROR="-Werror" options HZ=100 -options SCHED_4BSD # 4BSD scheduler +options SCHED_ULE # ULE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols Modified: head/sys/arm/conf/PANDABOARD ============================================================================== --- head/sys/arm/conf/PANDABOARD Sat Jan 3 23:39:44 2015 (r276643) +++ head/sys/arm/conf/PANDABOARD Sat Jan 3 23:57:03 2015 (r276644) @@ -33,7 +33,7 @@ makeoptions MODULES_OVERRIDE="" makeoptions WITHOUT_MODULES="ahc" options HZ=100 -options SCHED_4BSD # 4BSD scheduler +options SCHED_ULE # ULE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols Modified: head/sys/arm/conf/RK3188 ============================================================================== --- head/sys/arm/conf/RK3188 Sat Jan 3 23:39:44 2015 (r276643) +++ head/sys/arm/conf/RK3188 Sat Jan 3 23:57:03 2015 (r276644) @@ -23,7 +23,7 @@ ident RK3188 include "../rockchip/std.rk30xx" options HZ=100 -options SCHED_4BSD # 4BSD scheduler +options SCHED_ULE # ULE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols Modified: head/sys/arm/conf/SOCKIT ============================================================================== --- head/sys/arm/conf/SOCKIT Sat Jan 3 23:39:44 2015 (r276643) +++ head/sys/arm/conf/SOCKIT Sat Jan 3 23:57:03 2015 (r276644) @@ -26,7 +26,7 @@ makeoptions MODULES_OVERRIDE="" makeoptions WERROR="-Werror" options HZ=100 -options SCHED_4BSD # 4BSD scheduler +options SCHED_ULE # ULE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols Modified: head/sys/arm/conf/SOCKIT-BERI ============================================================================== --- head/sys/arm/conf/SOCKIT-BERI Sat Jan 3 23:39:44 2015 (r276643) +++ head/sys/arm/conf/SOCKIT-BERI Sat Jan 3 23:57:03 2015 (r276644) @@ -26,7 +26,7 @@ makeoptions MODULES_OVERRIDE="" makeoptions WERROR="-Werror" options HZ=100 -options SCHED_4BSD # 4BSD scheduler +options SCHED_ULE # ULE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols Modified: head/sys/arm/conf/ZEDBOARD ============================================================================== --- head/sys/arm/conf/ZEDBOARD Sat Jan 3 23:39:44 2015 (r276643) +++ head/sys/arm/conf/ZEDBOARD Sat Jan 3 23:57:03 2015 (r276644) @@ -26,7 +26,7 @@ include "../xilinx/zedboard/std.zedboar makeoptions MODULES_OVERRIDE="" makeoptions WITHOUT_MODULES="ahc" -options SCHED_4BSD # 4BSD scheduler +options SCHED_ULE # ULE scheduler options PREEMPTION # Enable kernel thread preemption options INET # InterNETworking options INET6 # IPv6 communications protocols