From owner-svn-src-projects@freebsd.org Mon Feb 15 12:34:49 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 648A8AA0AB0 for ; Mon, 15 Feb 2016 12:34:49 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 21736135A; Mon, 15 Feb 2016 12:34:49 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1FCYmC1063665; Mon, 15 Feb 2016 12:34:48 GMT (envelope-from bz@FreeBSD.org) Received: (from bz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1FCYlH1063661; Mon, 15 Feb 2016 12:34:47 GMT (envelope-from bz@FreeBSD.org) Message-Id: <201602151234.u1FCYlH1063661@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bz set sender to bz@FreeBSD.org using -f From: "Bjoern A. Zeeb" Date: Mon, 15 Feb 2016 12:34:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295624 - projects/vnet/sys/netinet X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Feb 2016 12:34:49 -0000 Author: bz Date: Mon Feb 15 12:34:47 2016 New Revision: 295624 URL: https://svnweb.freebsd.org/changeset/base/295624 Log: Cleanup the SCTP changes: - backout the atomic change now that we seem to have the races under control - make printfs SCTP_PRINTFs. - cleanup comments. Sponsored by: The FreeBSD Foundation Modified: projects/vnet/sys/netinet/sctp_bsd_addr.c projects/vnet/sys/netinet/sctp_pcb.c projects/vnet/sys/netinet/sctp_structs.h projects/vnet/sys/netinet/sctputil.c Modified: projects/vnet/sys/netinet/sctp_bsd_addr.c ============================================================================== --- projects/vnet/sys/netinet/sctp_bsd_addr.c Mon Feb 15 07:35:40 2016 (r295623) +++ projects/vnet/sys/netinet/sctp_bsd_addr.c Mon Feb 15 12:34:47 2016 (r295624) @@ -77,7 +77,7 @@ struct iterator_control sctp_it_ctl; void sctp_wakeup_iterator(void) { - wakeup(&sctp_it_ctl.iterator_flags); + wakeup(&sctp_it_ctl.iterator_running); } static void @@ -86,7 +86,7 @@ sctp_iterator_thread(void *v SCTP_UNUSED SCTP_IPI_ITERATOR_WQ_LOCK(); /* In FreeBSD this thread never terminates. */ for (;;) { - msleep(&sctp_it_ctl.iterator_flags, + msleep(&sctp_it_ctl.iterator_running, &sctp_it_ctl.ipi_iterator_wq_mtx, 0, "waiting_for_work", 0); sctp_iterator_worker(); Modified: projects/vnet/sys/netinet/sctp_pcb.c ============================================================================== --- projects/vnet/sys/netinet/sctp_pcb.c Mon Feb 15 07:35:40 2016 (r295623) +++ projects/vnet/sys/netinet/sctp_pcb.c Mon Feb 15 12:34:47 2016 (r295624) @@ -5920,7 +5920,7 @@ sctp_pcb_finish(void) struct sctp_iterator *it, *nit; if (SCTP_BASE_VAR(sctp_pcb_initialized) == 0) { - printf("%s: race condition on teardown.\n", __func__); + SCTP_PRINTF("%s: race condition on teardown.\n", __func__); return; } SCTP_BASE_VAR(sctp_pcb_initialized) = 0; @@ -5942,8 +5942,7 @@ retry: r = atomic_fetchadd_int(&sctp_it_ctl.iterator_running, 0); if (r != 0 || sctp_it_ctl.cur_it != NULL) { SCTP_IPI_ITERATOR_WQ_UNLOCK(); - /* XXX-BZ make this a statistics variable. */ - printf("%s: Iterator running while we held the lock. Retry. " + SCTP_PRINTF("%s: Iterator running while we held the lock. Retry. " "r=%u cur_it=%p\n", __func__, r, sctp_it_ctl.cur_it); DELAY(10); goto retry; @@ -7014,7 +7013,7 @@ sctp_initiate_iterator(inp_func inpf, return (-1); } if (SCTP_BASE_VAR(sctp_pcb_initialized) == 0) { - printf("%s: abort on initialize being %d\n", __func__, + SCTP_PRINTF("%s: abort on initialize being %d\n", __func__, SCTP_BASE_VAR(sctp_pcb_initialized)); return (-1); } @@ -7058,14 +7057,14 @@ sctp_initiate_iterator(inp_func inpf, SCTP_IPI_ITERATOR_WQ_LOCK(); if (SCTP_BASE_VAR(sctp_pcb_initialized) == 0) { SCTP_IPI_ITERATOR_WQ_UNLOCK(); - printf("%s: rollback on initialize being %d it=%p\n", __func__, - SCTP_BASE_VAR(sctp_pcb_initialized), it); + SCTP_PRINTF("%s: rollback on initialize being %d it=%p\n", + __func__, SCTP_BASE_VAR(sctp_pcb_initialized), it); SCTP_FREE(it, SCTP_M_ITER); return (-1); } TAILQ_INSERT_TAIL(&sctp_it_ctl.iteratorhead, it, sctp_nxt_itr); - if (atomic_fetchadd_int(&sctp_it_ctl.iterator_running, 0) == 0) { + if (sctp_it_ctl.iterator_running == 0) { sctp_wakeup_iterator(); } SCTP_IPI_ITERATOR_WQ_UNLOCK(); Modified: projects/vnet/sys/netinet/sctp_structs.h ============================================================================== --- projects/vnet/sys/netinet/sctp_structs.h Mon Feb 15 07:35:40 2016 (r295623) +++ projects/vnet/sys/netinet/sctp_structs.h Mon Feb 15 12:34:47 2016 (r295624) @@ -180,7 +180,7 @@ struct iterator_control { SCTP_PROCESS_STRUCT thread_proc; struct sctpiterators iteratorhead; struct sctp_iterator *cur_it; - volatile uint32_t iterator_running; + uint32_t iterator_running; uint32_t iterator_flags; }; Modified: projects/vnet/sys/netinet/sctputil.c ============================================================================== --- projects/vnet/sys/netinet/sctputil.c Mon Feb 15 07:35:40 2016 (r295623) +++ projects/vnet/sys/netinet/sctputil.c Mon Feb 15 12:34:47 2016 (r295624) @@ -1421,7 +1421,7 @@ sctp_iterator_worker(void) /* This function is called with the WQ lock in place */ - atomic_store_rel_int(&sctp_it_ctl.iterator_running, 1); + sctp_it_ctl.iterator_running = 1; TAILQ_FOREACH_SAFE(it, &sctp_it_ctl.iteratorhead, sctp_nxt_itr, nit) { sctp_it_ctl.cur_it = it; /* now lets work on this one */ @@ -1434,7 +1434,7 @@ sctp_iterator_worker(void) SCTP_IPI_ITERATOR_WQ_LOCK(); /* sa_ignore FREED_MEMORY */ } - atomic_store_rel_int(&sctp_it_ctl.iterator_running, 0); + sctp_it_ctl.iterator_running = 0; return; } @@ -1483,7 +1483,7 @@ sctp_handle_addr_wq(void) if (ret) { SCTP_PRINTF("Failed to initiate iterator for handle_addr_wq\n"); SCTP_LTRACE_ERR_RET(NULL, NULL, NULL, SCTP_FROM_SCTPUTIL, EFAULT); - /* XXX-BZ Freeing if we are stopping or put back on the addr_wq. */ + /* Freeing if we are stopping; putting back on the addr_wq otherwise. */ if (SCTP_BASE_VAR(sctp_pcb_initialized) == 0) { sctp_asconf_iterator_end(asc, 0); } else { From owner-svn-src-projects@freebsd.org Mon Feb 15 21:58:55 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 69E85AA91C8 for ; Mon, 15 Feb 2016 21:58:55 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 2617210D4; Mon, 15 Feb 2016 21:58:55 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1FLwscM034690; Mon, 15 Feb 2016 21:58:54 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1FLwq26034672; Mon, 15 Feb 2016 21:58:52 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201602152158.u1FLwq26034672@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Mon, 15 Feb 2016 21:58:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295639 - in projects/release-pkg: . contrib/elftoolchain/addr2line contrib/elftoolchain/ar contrib/elftoolchain/brandelf contrib/elftoolchain/common contrib/elftoolchain/cxxfilt contri... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 15 Feb 2016 21:58:55 -0000 Author: gjb Date: Mon Feb 15 21:58:52 2016 New Revision: 295639 URL: https://svnweb.freebsd.org/changeset/base/295639 Log: MFH Sponsored by: The FreeBSD Foundation Added: projects/release-pkg/contrib/elftoolchain/addr2line/os.NetBSD.mk - copied unchanged from r295638, head/contrib/elftoolchain/addr2line/os.NetBSD.mk projects/release-pkg/contrib/elftoolchain/elfcopy/pe.c - copied unchanged from r295638, head/contrib/elftoolchain/elfcopy/pe.c projects/release-pkg/contrib/elftoolchain/elfdump/os.NetBSD.mk - copied unchanged from r295638, head/contrib/elftoolchain/elfdump/os.NetBSD.mk projects/release-pkg/contrib/elftoolchain/libdwarf/os.NetBSD.mk - copied unchanged from r295638, head/contrib/elftoolchain/libdwarf/os.NetBSD.mk projects/release-pkg/contrib/elftoolchain/libelftc/os.NetBSD.mk - copied unchanged from r295638, head/contrib/elftoolchain/libelftc/os.NetBSD.mk projects/release-pkg/contrib/elftoolchain/libpe/ - copied from r295638, head/contrib/elftoolchain/libpe/ projects/release-pkg/contrib/elftoolchain/nm/os.NetBSD.mk - copied unchanged from r295638, head/contrib/elftoolchain/nm/os.NetBSD.mk projects/release-pkg/contrib/elftoolchain/readelf/os.NetBSD.mk - copied unchanged from r295638, head/contrib/elftoolchain/readelf/os.NetBSD.mk projects/release-pkg/contrib/elftoolchain/size/os.NetBSD.mk - copied unchanged from r295638, head/contrib/elftoolchain/size/os.NetBSD.mk projects/release-pkg/contrib/elftoolchain/strings/os.NetBSD.mk - copied unchanged from r295638, head/contrib/elftoolchain/strings/os.NetBSD.mk projects/release-pkg/contrib/unbound/util/as112.c - copied unchanged from r295638, head/contrib/unbound/util/as112.c projects/release-pkg/contrib/unbound/util/as112.h - copied unchanged from r295638, head/contrib/unbound/util/as112.h projects/release-pkg/lib/libpe/ - copied from r295638, head/lib/libpe/ projects/release-pkg/share/examples/jails/VIMAGE - copied unchanged from r295638, head/share/examples/jails/VIMAGE projects/release-pkg/sys/arm/allwinner/a10_dmac.c - copied unchanged from r295638, head/sys/arm/allwinner/a10_dmac.c projects/release-pkg/sys/arm/allwinner/a10_dmac.h - copied unchanged from r295638, head/sys/arm/allwinner/a10_dmac.h projects/release-pkg/sys/arm/allwinner/axp209.c - copied unchanged from r295638, head/sys/arm/allwinner/axp209.c projects/release-pkg/sys/arm/allwinner/sunxi_dma_if.m - copied unchanged from r295638, head/sys/arm/allwinner/sunxi_dma_if.m projects/release-pkg/sys/arm/conf/A10 - copied unchanged from r295638, head/sys/arm/conf/A10 projects/release-pkg/sys/arm/ti/omap4/omap4_wugen.c - copied unchanged from r295638, head/sys/arm/ti/omap4/omap4_wugen.c projects/release-pkg/sys/boot/fdt/dts/arm/olimex-a20-som-evb.dts - copied unchanged from r295638, head/sys/boot/fdt/dts/arm/olimex-a20-som-evb.dts projects/release-pkg/sys/boot/fdt/dts/arm/olinuxino-lime.dts - copied unchanged from r295638, head/sys/boot/fdt/dts/arm/olinuxino-lime.dts projects/release-pkg/sys/boot/fdt/dts/riscv/qemu.dts - copied unchanged from r295638, head/sys/boot/fdt/dts/riscv/qemu.dts projects/release-pkg/sys/dev/iicbus/twsi/ - copied from r295638, head/sys/dev/iicbus/twsi/ projects/release-pkg/sys/mips/include/intr.h - copied unchanged from r295638, head/sys/mips/include/intr.h projects/release-pkg/sys/mips/mips/mips_pic.c - copied unchanged from r295638, head/sys/mips/mips/mips_pic.c projects/release-pkg/sys/riscv/conf/QEMU - copied unchanged from r295638, head/sys/riscv/conf/QEMU projects/release-pkg/sys/riscv/conf/SPIKE - copied unchanged from r295638, head/sys/riscv/conf/SPIKE projects/release-pkg/sys/sys/_ucontext.h - copied unchanged from r295638, head/sys/sys/_ucontext.h projects/release-pkg/sys/sys/intr.h - copied unchanged from r295638, head/sys/sys/intr.h projects/release-pkg/tools/build/options/WITHOUT_ELFTOOLCHAIN_BOOTSTRAP - copied unchanged from r295638, head/tools/build/options/WITHOUT_ELFTOOLCHAIN_BOOTSTRAP projects/release-pkg/tools/build/options/WITH_BINUTILS - copied unchanged from r295638, head/tools/build/options/WITH_BINUTILS projects/release-pkg/tools/build/options/WITH_BINUTILS_BOOTSTRAP - copied unchanged from r295638, head/tools/build/options/WITH_BINUTILS_BOOTSTRAP projects/release-pkg/tools/build/options/WITH_GDB - copied unchanged from r295638, head/tools/build/options/WITH_GDB Deleted: projects/release-pkg/contrib/elftoolchain/libelftc/elftc_symbol_table_create.3 projects/release-pkg/sys/arm/mv/twsi.c projects/release-pkg/sys/arm/xilinx/zedboard/ projects/release-pkg/sys/mips/mips/bus_space_fdt.c Modified: projects/release-pkg/Makefile.inc1 projects/release-pkg/ObsoleteFiles.inc projects/release-pkg/contrib/elftoolchain/addr2line/addr2line.c projects/release-pkg/contrib/elftoolchain/ar/ar.c projects/release-pkg/contrib/elftoolchain/brandelf/brandelf.c projects/release-pkg/contrib/elftoolchain/common/elfdefinitions.h projects/release-pkg/contrib/elftoolchain/common/native-elf-format projects/release-pkg/contrib/elftoolchain/cxxfilt/cxxfilt.c projects/release-pkg/contrib/elftoolchain/elfcopy/Makefile projects/release-pkg/contrib/elftoolchain/elfcopy/archive.c projects/release-pkg/contrib/elftoolchain/elfcopy/elfcopy.1 projects/release-pkg/contrib/elftoolchain/elfcopy/elfcopy.h projects/release-pkg/contrib/elftoolchain/elfcopy/main.c projects/release-pkg/contrib/elftoolchain/elfcopy/sections.c projects/release-pkg/contrib/elftoolchain/elfcopy/segments.c projects/release-pkg/contrib/elftoolchain/elfcopy/symbols.c projects/release-pkg/contrib/elftoolchain/elfdump/elfdump.c projects/release-pkg/contrib/elftoolchain/libdwarf/_libdwarf.h projects/release-pkg/contrib/elftoolchain/libdwarf/dwarf.3 projects/release-pkg/contrib/elftoolchain/libdwarf/dwarf_str.c projects/release-pkg/contrib/elftoolchain/libdwarf/libdwarf.h projects/release-pkg/contrib/elftoolchain/libdwarf/libdwarf_rw.c projects/release-pkg/contrib/elftoolchain/libelf/_libelf_config.h projects/release-pkg/contrib/elftoolchain/libelftc/Makefile projects/release-pkg/contrib/elftoolchain/libelftc/elftc_bfd_find_target.3 projects/release-pkg/contrib/elftoolchain/libelftc/elftc_copyfile.c projects/release-pkg/contrib/elftoolchain/libelftc/elftc_demangle.c projects/release-pkg/contrib/elftoolchain/libelftc/libelftc.h projects/release-pkg/contrib/elftoolchain/libelftc/libelftc_bfdtarget.c projects/release-pkg/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c projects/release-pkg/contrib/elftoolchain/libelftc/make-toolchain-version projects/release-pkg/contrib/elftoolchain/readelf/readelf.c projects/release-pkg/contrib/elftoolchain/strings/strings.1 projects/release-pkg/contrib/elftoolchain/strings/strings.c projects/release-pkg/contrib/unbound/Makefile.in projects/release-pkg/contrib/unbound/doc/example.conf projects/release-pkg/contrib/unbound/doc/example.conf.in projects/release-pkg/contrib/unbound/doc/unbound.conf.5 projects/release-pkg/contrib/unbound/doc/unbound.conf.5.in projects/release-pkg/contrib/unbound/services/localzone.c projects/release-pkg/contrib/unbound/util/config_file.c projects/release-pkg/contrib/unbound/util/config_file.h projects/release-pkg/contrib/unbound/util/configlexer.lex projects/release-pkg/contrib/unbound/util/configparser.y projects/release-pkg/contrib/unbound/validator/val_anchor.c projects/release-pkg/etc/defaults/rc.conf projects/release-pkg/etc/rc.d/jail projects/release-pkg/etc/rc.d/ntpd projects/release-pkg/include/signal.h projects/release-pkg/lib/Makefile projects/release-pkg/lib/libc/stdio/fgetln.3 projects/release-pkg/lib/libc/stdio/fgetln.c projects/release-pkg/lib/libc/stdio/fputs.c projects/release-pkg/lib/libc/sys/jail.2 projects/release-pkg/lib/libelftc/elftc_version.c projects/release-pkg/lib/libfetch/http.c projects/release-pkg/lib/libunbound/Makefile projects/release-pkg/share/examples/jails/README projects/release-pkg/share/examples/jails/jib projects/release-pkg/share/examples/jails/jng projects/release-pkg/share/man/man4/ds3231.4 projects/release-pkg/share/man/man5/rc.conf.5 projects/release-pkg/share/man/man8/uefi.8 projects/release-pkg/share/mk/src.libnames.mk projects/release-pkg/sys/arm/allwinner/a10_clk.c projects/release-pkg/sys/arm/allwinner/a10_clk.h projects/release-pkg/sys/arm/allwinner/a10_common.c projects/release-pkg/sys/arm/allwinner/a10_ehci.c projects/release-pkg/sys/arm/allwinner/a10_gpio.c projects/release-pkg/sys/arm/allwinner/a10_mmc.c projects/release-pkg/sys/arm/allwinner/a10_wdog.c projects/release-pkg/sys/arm/allwinner/a20/a20_cpu_cfg.c projects/release-pkg/sys/arm/allwinner/aintc.c projects/release-pkg/sys/arm/allwinner/files.a10 projects/release-pkg/sys/arm/allwinner/files.allwinner projects/release-pkg/sys/arm/allwinner/if_emac.c projects/release-pkg/sys/arm/allwinner/timer.c projects/release-pkg/sys/arm/altera/socfpga/socfpga_common.c projects/release-pkg/sys/arm/amlogic/aml8726/aml8726_machdep.c projects/release-pkg/sys/arm/annapurna/alpine/common.c projects/release-pkg/sys/arm/arm/generic_timer.c projects/release-pkg/sys/arm/arm/syscall.c projects/release-pkg/sys/arm/at91/at91_common.c projects/release-pkg/sys/arm/broadcom/bcm2835/bcm2835_common.c projects/release-pkg/sys/arm/conf/A20 projects/release-pkg/sys/arm/conf/ALPINE projects/release-pkg/sys/arm/conf/ARMADA38X projects/release-pkg/sys/arm/conf/ARMADAXP projects/release-pkg/sys/arm/conf/DB-78XXX projects/release-pkg/sys/arm/conf/DB-88F5XXX projects/release-pkg/sys/arm/conf/DB-88F6XXX projects/release-pkg/sys/arm/conf/DOCKSTAR projects/release-pkg/sys/arm/conf/DREAMPLUG-1001 projects/release-pkg/sys/arm/conf/EXYNOS5.common projects/release-pkg/sys/arm/conf/NOTES projects/release-pkg/sys/arm/conf/ODROIDC1 projects/release-pkg/sys/arm/conf/PANDABOARD projects/release-pkg/sys/arm/conf/RK3188 projects/release-pkg/sys/arm/conf/SOCKIT.common projects/release-pkg/sys/arm/conf/VIRT projects/release-pkg/sys/arm/conf/VSATV102 projects/release-pkg/sys/arm/conf/VYBRID projects/release-pkg/sys/arm/conf/ZEDBOARD projects/release-pkg/sys/arm/freescale/imx/imx_common.c projects/release-pkg/sys/arm/freescale/vybrid/vf_common.c projects/release-pkg/sys/arm/include/intr.h projects/release-pkg/sys/arm/lpc/lpc_intc.c projects/release-pkg/sys/arm/mv/files.mv projects/release-pkg/sys/arm/mv/mv_common.c projects/release-pkg/sys/arm/qemu/virt_common.c projects/release-pkg/sys/arm/rockchip/rk30xx_common.c projects/release-pkg/sys/arm/samsung/exynos/exynos5_common.c projects/release-pkg/sys/arm/ti/omap4/files.omap4 projects/release-pkg/sys/arm/versatile/versatile_common.c projects/release-pkg/sys/arm/xilinx/zy7_machdep.c projects/release-pkg/sys/arm64/arm64/disassem.c projects/release-pkg/sys/arm64/arm64/gic.c projects/release-pkg/sys/arm64/arm64/gic_v3.c projects/release-pkg/sys/arm64/arm64/gic_v3_its.c projects/release-pkg/sys/arm64/arm64/gic_v3_reg.h projects/release-pkg/sys/arm64/arm64/gic_v3_var.h projects/release-pkg/sys/arm64/arm64/intr_machdep.c projects/release-pkg/sys/arm64/arm64/nexus.c projects/release-pkg/sys/arm64/arm64/pic_if.m projects/release-pkg/sys/arm64/arm64/swtch.S projects/release-pkg/sys/arm64/include/armreg.h projects/release-pkg/sys/arm64/include/intr.h projects/release-pkg/sys/boot/fdt/dts/arm/bananapi.dts projects/release-pkg/sys/boot/fdt/dts/arm/cubieboard2.dts projects/release-pkg/sys/boot/fdt/dts/arm/sun4i-a10.dtsi projects/release-pkg/sys/boot/fdt/dts/arm/sun7i-a20.dtsi projects/release-pkg/sys/cam/ctl/ctl.c projects/release-pkg/sys/conf/files.arm projects/release-pkg/sys/conf/files.mips projects/release-pkg/sys/dev/cxgb/cxgb_sge.c projects/release-pkg/sys/dev/cxgbe/common/t4_msg.h projects/release-pkg/sys/dev/cxgbe/t4_main.c projects/release-pkg/sys/dev/cxgbe/t4_sge.c projects/release-pkg/sys/dev/hwpmc/hwpmc_core.c projects/release-pkg/sys/dev/hwpmc/hwpmc_core.h projects/release-pkg/sys/dev/hwpmc/hwpmc_mod.c projects/release-pkg/sys/dev/hyperv/netvsc/hv_netvsc_drv_freebsd.c projects/release-pkg/sys/dev/ioat/ioat.c projects/release-pkg/sys/dev/ioat/ioat_hw.h projects/release-pkg/sys/dev/ioat/ioat_internal.h projects/release-pkg/sys/dev/iscsi/icl.c projects/release-pkg/sys/dev/iscsi/iscsi.h projects/release-pkg/sys/dev/ntb/ntb_hw/ntb_hw.c projects/release-pkg/sys/dev/ntb/ntb_hw/ntb_hw.h projects/release-pkg/sys/dev/ntb/ntb_hw/ntb_regs.h projects/release-pkg/sys/dev/nvme/nvme_ctrlr.c projects/release-pkg/sys/dev/sfxge/common/efx.h projects/release-pkg/sys/dev/sfxge/common/efx_mcdi.c projects/release-pkg/sys/dev/sfxge/common/efx_mcdi.h projects/release-pkg/sys/dev/sfxge/common/efx_phy.c projects/release-pkg/sys/dev/sfxge/sfxge.c projects/release-pkg/sys/dev/uart/uart_bus_fdt.c projects/release-pkg/sys/dev/uart/uart_dev_lpc.c projects/release-pkg/sys/dev/uart/uart_dev_ns8250.c projects/release-pkg/sys/dev/usb/controller/ehci_pci.c projects/release-pkg/sys/dev/usb/net/if_smsc.c projects/release-pkg/sys/dev/usb/wlan/if_rum.c projects/release-pkg/sys/dev/usb/wlan/if_rumreg.h projects/release-pkg/sys/dev/xen/blkfront/blkfront.c projects/release-pkg/sys/dev/xen/netfront/netfront.c projects/release-pkg/sys/fs/cd9660/cd9660_vfsops.c projects/release-pkg/sys/fs/ext2fs/ext2_bmap.c projects/release-pkg/sys/fs/ext2fs/ext2_extents.c projects/release-pkg/sys/fs/ext2fs/ext2_extents.h projects/release-pkg/sys/fs/ext2fs/ext2_vnops.c projects/release-pkg/sys/fs/tmpfs/tmpfs_vnops.c projects/release-pkg/sys/kern/kern_mbuf.c projects/release-pkg/sys/kern/link_elf.c projects/release-pkg/sys/kern/link_elf_obj.c projects/release-pkg/sys/kern/subr_intr.c projects/release-pkg/sys/kern/subr_turnstile.c projects/release-pkg/sys/kern/uipc_mbuf.c projects/release-pkg/sys/mips/conf/AR71XX_BASE projects/release-pkg/sys/mips/conf/AR724X_BASE projects/release-pkg/sys/mips/conf/AR91XX_BASE projects/release-pkg/sys/mips/conf/QCA953X_BASE projects/release-pkg/sys/mips/include/bus.h projects/release-pkg/sys/mips/include/fdt.h projects/release-pkg/sys/mips/include/smp.h projects/release-pkg/sys/mips/include/ucontext.h projects/release-pkg/sys/mips/mips/bus_space_generic.c projects/release-pkg/sys/mips/mips/exception.S projects/release-pkg/sys/mips/mips/nexus.c projects/release-pkg/sys/mips/mips/tick.c projects/release-pkg/sys/modules/dtb/allwinner/Makefile projects/release-pkg/sys/net/route.c projects/release-pkg/sys/netinet/in_rmx.c projects/release-pkg/sys/netinet/sctp_constants.h projects/release-pkg/sys/netinet/sctp_sysctl.c projects/release-pkg/sys/netinet/tcp_lro.c projects/release-pkg/sys/netinet/tcp_pcap.c projects/release-pkg/sys/netinet6/in6_rmx.c projects/release-pkg/sys/netinet6/nd6.c projects/release-pkg/sys/netinet6/nd6.h projects/release-pkg/sys/netinet6/nd6_nbr.c projects/release-pkg/sys/netinet6/nd6_rtr.c projects/release-pkg/sys/netinet6/scope6.c projects/release-pkg/sys/powerpc/booke/pmap.c projects/release-pkg/sys/powerpc/booke/trap_subr.S projects/release-pkg/sys/powerpc/include/pte.h projects/release-pkg/sys/powerpc/include/ucontext.h projects/release-pkg/sys/powerpc/powerpc/genassym.c projects/release-pkg/sys/riscv/conf/GENERIC projects/release-pkg/sys/riscv/htif/htif.c projects/release-pkg/sys/riscv/include/ucontext.h projects/release-pkg/sys/sparc64/include/ucontext.h projects/release-pkg/sys/sys/mbuf.h projects/release-pkg/sys/sys/pmc.h projects/release-pkg/sys/sys/signal.h projects/release-pkg/sys/sys/ucontext.h projects/release-pkg/sys/x86/include/ucontext.h projects/release-pkg/tests/sys/geom/class/gate/3_test.sh projects/release-pkg/tools/build/mk/OptionalObsoleteFiles.inc projects/release-pkg/tools/build/options/WITHOUT_BINUTILS_BOOTSTRAP projects/release-pkg/usr.bin/elfcopy/Makefile projects/release-pkg/usr.bin/hexdump/display.c projects/release-pkg/usr.bin/truss/amd64-linux32.c projects/release-pkg/usr.bin/truss/i386-linux.c projects/release-pkg/usr.sbin/ctld/login.c projects/release-pkg/usr.sbin/jail/jail.8 projects/release-pkg/usr.sbin/jail/jail.conf.5 projects/release-pkg/usr.sbin/services_mkdb/services_mkdb.c projects/release-pkg/usr.sbin/unbound/control/Makefile projects/release-pkg/usr.sbin/unbound/local-setup/local-unbound-setup.sh Directory Properties: projects/release-pkg/ (props changed) projects/release-pkg/contrib/elftoolchain/ (props changed) projects/release-pkg/contrib/elftoolchain/ar/ (props changed) projects/release-pkg/contrib/elftoolchain/brandelf/ (props changed) projects/release-pkg/contrib/elftoolchain/elfdump/ (props changed) projects/release-pkg/contrib/unbound/ (props changed) projects/release-pkg/include/ (props changed) projects/release-pkg/lib/libc/ (props changed) projects/release-pkg/share/ (props changed) projects/release-pkg/share/man/man4/ (props changed) projects/release-pkg/sys/ (props changed) projects/release-pkg/sys/boot/ (props changed) projects/release-pkg/sys/conf/ (props changed) projects/release-pkg/sys/dev/hyperv/ (props changed) projects/release-pkg/usr.sbin/jail/ (props changed) Modified: projects/release-pkg/Makefile.inc1 ============================================================================== --- projects/release-pkg/Makefile.inc1 Mon Feb 15 21:18:52 2016 (r295638) +++ projects/release-pkg/Makefile.inc1 Mon Feb 15 21:58:52 2016 (r295639) @@ -1804,6 +1804,7 @@ _binutils= gnu/usr.bin/binutils .endif .if ${MK_ELFTOOLCHAIN_BOOTSTRAP} != "no" _elftctools= lib/libelftc \ + lib/libpe \ usr.bin/elfcopy \ usr.bin/nm \ usr.bin/size \ @@ -1816,6 +1817,7 @@ _elftctools+= usr.bin/addr2line # If cross-building with an external binutils we still need to build strip for # the target (for at least crunchide). _elftctools= lib/libelftc \ + lib/libpe \ usr.bin/elfcopy .endif Modified: projects/release-pkg/ObsoleteFiles.inc ============================================================================== --- projects/release-pkg/ObsoleteFiles.inc Mon Feb 15 21:18:52 2016 (r295638) +++ projects/release-pkg/ObsoleteFiles.inc Mon Feb 15 21:58:52 2016 (r295639) @@ -38,6 +38,8 @@ # xargs -n1 | sort | uniq -d; # done +# 20160211: Remove obsolete unbound-control-setup +OLD_FILES+=usr/sbin/unbound-control-setup # 20160116: Update mandoc to cvs snapshot 20160116 OLD_FILES+=usr/share/mdocml/example.style.css OLD_FILES+=usr/share/mdocml/style.css Modified: projects/release-pkg/contrib/elftoolchain/addr2line/addr2line.c ============================================================================== --- projects/release-pkg/contrib/elftoolchain/addr2line/addr2line.c Mon Feb 15 21:18:52 2016 (r295638) +++ projects/release-pkg/contrib/elftoolchain/addr2line/addr2line.c Mon Feb 15 21:58:52 2016 (r295639) @@ -40,7 +40,7 @@ #include "uthash.h" #include "_elftc.h" -ELFTC_VCSID("$Id: addr2line.c 3264 2015-11-30 05:38:14Z kaiwang27 $"); +ELFTC_VCSID("$Id: addr2line.c 3273 2015-12-11 21:38:57Z kaiwang27 $"); struct Func { char *name; @@ -368,7 +368,8 @@ print_inlines(struct CU *cu, struct Func printf("%s\n", f->name); } } - (void) printf("%s:%ju\n", base ? basename(file) : file, call_line); + (void) printf("%s:%ju\n", base ? basename(file) : file, + (uintmax_t) call_line); if (f->inlined_caller != NULL) print_inlines(cu, f->inlined_caller, f->call_file, @@ -562,7 +563,8 @@ out: } } - (void) printf("%s:%ju\n", base ? basename(file) : file, lineno); + (void) printf("%s:%ju\n", base ? basename(file) : file, + (uintmax_t) lineno); if (ret == DW_DLV_OK && inlines && cu != NULL && cu->srcfiles != NULL && f != NULL && f->inlined_caller != NULL) Copied: projects/release-pkg/contrib/elftoolchain/addr2line/os.NetBSD.mk (from r295638, head/contrib/elftoolchain/addr2line/os.NetBSD.mk) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/release-pkg/contrib/elftoolchain/addr2line/os.NetBSD.mk Mon Feb 15 21:58:52 2016 (r295639, copy of r295638, head/contrib/elftoolchain/addr2line/os.NetBSD.mk) @@ -0,0 +1,2 @@ +# TODO(#511): Revert after the source tree is -Wconversion clean. +WARNS=5 Modified: projects/release-pkg/contrib/elftoolchain/ar/ar.c ============================================================================== --- projects/release-pkg/contrib/elftoolchain/ar/ar.c Mon Feb 15 21:18:52 2016 (r295638) +++ projects/release-pkg/contrib/elftoolchain/ar/ar.c Mon Feb 15 21:58:52 2016 (r295639) @@ -72,7 +72,7 @@ #include "ar.h" -ELFTC_VCSID("$Id: ar.c 3243 2015-08-31 19:28:45Z emaste $"); +ELFTC_VCSID("$Id: ar.c 3319 2016-01-13 21:37:53Z jkoshy $"); enum options { @@ -407,7 +407,7 @@ Usage: %s [options] archive fi -F FORMAT | --flavor=FORMAT\n\ Create archives with the specified format.\n\ -S Do not generate an archive symbol table.\n\ - -U Use original metadata, for unique archive checksums.\n" + -U Use original metadata for archive members.\n" static void bsdar_usage(void) Modified: projects/release-pkg/contrib/elftoolchain/brandelf/brandelf.c ============================================================================== --- projects/release-pkg/contrib/elftoolchain/brandelf/brandelf.c Mon Feb 15 21:18:52 2016 (r295638) +++ projects/release-pkg/contrib/elftoolchain/brandelf/brandelf.c Mon Feb 15 21:58:52 2016 (r295639) @@ -44,7 +44,7 @@ #include "_elftc.h" -ELFTC_VCSID("$Id: brandelf.c 3234 2015-07-31 12:35:09Z emaste $"); +ELFTC_VCSID("$Id: brandelf.c 3354 2016-01-18 21:50:15Z jkoshy $"); static int elftype(const char *); static const char *iselftype(int); @@ -212,7 +212,7 @@ main(int argc, char **argv) /* * Update the ABI type. */ - ehdr.e_ident[EI_OSABI] = type; + ehdr.e_ident[EI_OSABI] = (unsigned char) type; if (gelf_update_ehdr(elf, &ehdr) == 0) { warnx("gelf_update_ehdr error: %s", elf_errmsg(-1)); Modified: projects/release-pkg/contrib/elftoolchain/common/elfdefinitions.h ============================================================================== --- projects/release-pkg/contrib/elftoolchain/common/elfdefinitions.h Mon Feb 15 21:18:52 2016 (r295638) +++ projects/release-pkg/contrib/elftoolchain/common/elfdefinitions.h Mon Feb 15 21:58:52 2016 (r295639) @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: elfdefinitions.h 3253 2015-10-10 18:31:33Z kaiwang27 $ + * $Id: elfdefinitions.h 3392 2016-02-05 19:51:22Z emaste $ */ /* @@ -1228,6 +1228,7 @@ _ELF_DEFINE_STB(STB_GLOBAL, 1, _ELF_DEFINE_STB(STB_WEAK, 2, \ "visible across all object files but with low precedence") \ _ELF_DEFINE_STB(STB_LOOS, 10, "start of OS-specific range") \ +_ELF_DEFINE_STB(STB_GNU_UNIQUE, 10, "unique symbol (GNU)") \ _ELF_DEFINE_STB(STB_HIOS, 12, "end of OS-specific range") \ _ELF_DEFINE_STB(STB_LOPROC, 13, \ "start of processor-specific range") \ @@ -1259,6 +1260,7 @@ _ELF_DEFINE_STT(STT_LOPROC, 13, "start of processor-specific types") \ _ELF_DEFINE_STT(STT_ARM_TFUNC, 13, "Thumb function (GNU)") \ _ELF_DEFINE_STT(STT_ARM_16BIT, 15, "Thumb label (GNU)") \ +_ELF_DEFINE_STT(STT_SPARC_REGISTER, 13, "SPARC register information") \ _ELF_DEFINE_STT(STT_HIPROC, 15, \ "end of processor-specific types") @@ -1395,7 +1397,7 @@ _ELF_DEFINE_RELOC(R_386_GOT32, 3) \ _ELF_DEFINE_RELOC(R_386_PLT32, 4) \ _ELF_DEFINE_RELOC(R_386_COPY, 5) \ _ELF_DEFINE_RELOC(R_386_GLOB_DAT, 6) \ -_ELF_DEFINE_RELOC(R_386_JMP_SLOT, 7) \ +_ELF_DEFINE_RELOC(R_386_JUMP_SLOT, 7) \ _ELF_DEFINE_RELOC(R_386_RELATIVE, 8) \ _ELF_DEFINE_RELOC(R_386_GOTOFF, 9) \ _ELF_DEFINE_RELOC(R_386_GOTPC, 10) \ @@ -1407,9 +1409,129 @@ _ELF_DEFINE_RELOC(R_386_PC8, 23) /* */ -#define _ELF_DEFINE_AARCH64_RELOCATIONS() \ -_ELF_DEFINE_RELOC(R_AARCH64_ABS64, 257) \ -_ELF_DEFINE_RELOC(R_AARCH64_ABS32, 258) \ +#define _ELF_DEFINE_AARCH64_RELOCATIONS() \ +_ELF_DEFINE_RELOC(R_AARCH64_NONE, 0) \ +_ELF_DEFINE_RELOC(R_AARCH64_ABS64, 257) \ +_ELF_DEFINE_RELOC(R_AARCH64_ABS32, 258) \ +_ELF_DEFINE_RELOC(R_AARCH64_ABS16, 259) \ +_ELF_DEFINE_RELOC(R_AARCH64_PREL64, 260) \ +_ELF_DEFINE_RELOC(R_AARCH64_PREL32, 261) \ +_ELF_DEFINE_RELOC(R_AARCH64_PREL16, 262) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_UABS_G0, 263) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_UABS_G0_NC, 264) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_UABS_G1, 265) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_UABS_G1_NC, 266) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_UABS_G2, 267) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_UABS_G2_NC, 268) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_UABS_G3, 269) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_SABS_G0, 270) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_SABS_G1, 271) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_SABS_G2, 272) \ +_ELF_DEFINE_RELOC(R_AARCH64_LD_PREL_LO19, 273) \ +_ELF_DEFINE_RELOC(R_AARCH64_ADR_PREL_LO21, 274) \ +_ELF_DEFINE_RELOC(R_AARCH64_ADR_PREL_PG_HI21, 275) \ +_ELF_DEFINE_RELOC(R_AARCH64_ADR_PREL_PG_HI21_NC, 276) \ +_ELF_DEFINE_RELOC(R_AARCH64_ADD_ABS_LO12_NC, 277) \ +_ELF_DEFINE_RELOC(R_AARCH64_LDST8_ABS_LO12_NC, 278) \ +_ELF_DEFINE_RELOC(R_AARCH64_TSTBR14, 279) \ +_ELF_DEFINE_RELOC(R_AARCH64_CONDBR19, 280) \ +_ELF_DEFINE_RELOC(R_AARCH64_JUMP26, 282) \ +_ELF_DEFINE_RELOC(R_AARCH64_CALL26, 283) \ +_ELF_DEFINE_RELOC(R_AARCH64_LDST16_ABS_LO12_NC, 284) \ +_ELF_DEFINE_RELOC(R_AARCH64_LDST32_ABS_LO12_NC, 285) \ +_ELF_DEFINE_RELOC(R_AARCH64_LDST64_ABS_LO12_NC, 286) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_PREL_G0, 287) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_PREL_G0_NC, 288) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_PREL_G1, 289) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_PREL_G1_NC, 290) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_PREL_G2, 291) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_PREL_G2_NC, 292) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_PREL_G3, 293) \ +_ELF_DEFINE_RELOC(R_AARCH64_LDST128_ABS_LO12_NC, 299) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_GOTOFF_G0, 300) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_GOTOFF_G0_NC, 301) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_GOTOFF_G1, 302) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_GOTOFF_G1_NC, 303) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_GOTOFF_G2, 304) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_GOTOFF_G2_NC, 305) \ +_ELF_DEFINE_RELOC(R_AARCH64_MOVW_GOTOFF_G3, 306) \ +_ELF_DEFINE_RELOC(R_AARCH64_GOTREL64, 307) \ +_ELF_DEFINE_RELOC(R_AARCH64_GOTREL32, 308) \ +_ELF_DEFINE_RELOC(R_AARCH64_GOT_LD_PREL19, 309) \ +_ELF_DEFINE_RELOC(R_AARCH64_LD64_GOTOFF_LO15, 310) \ +_ELF_DEFINE_RELOC(R_AARCH64_ADR_GOT_PAGE, 311) \ +_ELF_DEFINE_RELOC(R_AARCH64_LD64_GOT_LO12_NC, 312) \ +_ELF_DEFINE_RELOC(R_AARCH64_LD64_GOTPAGE_LO15, 313) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSGD_ADR_PREL21, 512) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSGD_ADR_PAGE21, 513) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSGD_ADD_LO12_NC, 514) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSGD_MOVW_G1, 515) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSGD_MOVW_G0_NC, 516) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_ADR_PREL21, 517) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_ADR_PAGE21, 518) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_ADD_LO12_NC, 519) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_MOVW_G1, 520) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_MOVW_G0_NC, 521) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_LD_PREL19, 522) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_MOVW_DTPREL_G2, 523) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_MOVW_DTPREL_G1, 524) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC, 525) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_MOVW_DTPREL_G0, 526) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC, 527) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_ADD_DTPREL_HI12, 529) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC, 530) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_LDST8_DTPREL_LO12, 531) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC, 532) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_LDST16_DTPREL_LO12, 533) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC, 534) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_LDST32_DTPREL_LO12, 535) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC, 536) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_LDST64_DTPREL_LO12, 537) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC, 538) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSIE_MOVW_GOTTPREL_G1, 539) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC, 540) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21, 541) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC, 542) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSIE_LD_GOTTPREL_PREL19, 543) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_MOVW_TPREL_G2, 544) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_MOVW_TPREL_G1, 545) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_MOVW_TPREL_G1_NC, 546) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_MOVW_TPREL_G0, 547) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_MOVW_TPREL_G0_NC, 548) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_ADD_TPREL_HI12, 549) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_ADD_TPREL_LO12, 550) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_ADD_TPREL_LO12_NC, 551) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_LDST8_TPREL_LO12, 552) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC, 553) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_LDST16_TPREL_LO12, 554) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC, 555) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_LDST32_TPREL_LO12, 556) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC, 557) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_LDST64_TPREL_LO12, 558) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC, 559) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSDESC_LD_PREL19, 560) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSDESC_ADR_PREL21, 561) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSDESC_ADR_PAGE21, 562) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSDESC_LD64_LO12, 563) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSDESC_ADD_LO12, 564) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSDESC_OFF_G1, 565) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSDESC_OFF_G0_NC, 566) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSDESC_LDR, 567) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSDESC_ADD, 568) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSDESC_CALL, 569) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_LDST128_TPREL_LO12, 570) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC, 571) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_LDST128_DTPREL_LO12, 572) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC, 573) \ +_ELF_DEFINE_RELOC(R_AARCH64_COPY, 1024) \ +_ELF_DEFINE_RELOC(R_AARCH64_GLOB_DAT, 1025) \ +_ELF_DEFINE_RELOC(R_AARCH64_JUMP_SLOT, 1026) \ +_ELF_DEFINE_RELOC(R_AARCH64_RELATIVE, 1027) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLS_DTPREL64, 1028) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLS_DTPMOD64, 1029) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLS_TPREL64, 1030) \ +_ELF_DEFINE_RELOC(R_AARCH64_TLSDESC, 1031) \ +_ELF_DEFINE_RELOC(R_AARCH64_IRELATIVE, 1032) /* * These are the symbols used in the Sun ``Linkers and Loaders @@ -1633,7 +1755,7 @@ _ELF_DEFINE_RELOC(R_IA_64_LTV32MSB, 0x7 _ELF_DEFINE_RELOC(R_IA_64_LTV32LSB, 0x75) \ _ELF_DEFINE_RELOC(R_IA_64_LTV64MSB, 0x76) \ _ELF_DEFINE_RELOC(R_IA_64_LTV64LSB, 0x77) \ -_ELF_DEFINE_RELOC(R_IA_64_PCREL21BIa, 0x79) \ +_ELF_DEFINE_RELOC(R_IA_64_PCREL21BI, 0x79) \ _ELF_DEFINE_RELOC(R_IA_64_PCREL22, 0x7A) \ _ELF_DEFINE_RELOC(R_IA_64_PCREL64I, 0x7B) \ _ELF_DEFINE_RELOC(R_IA_64_IPLTMSB, 0x80) \ @@ -1723,7 +1845,7 @@ _ELF_DEFINE_RELOC(R_PPC_REL32, 26) \ _ELF_DEFINE_RELOC(R_PPC_PLT32, 27) \ _ELF_DEFINE_RELOC(R_PPC_PLTREL32, 28) \ _ELF_DEFINE_RELOC(R_PPC_PLT16_LO, 29) \ -_ELF_DEFINE_RELOC(R_PPL_PLT16_HI, 30) \ +_ELF_DEFINE_RELOC(R_PPC_PLT16_HI, 30) \ _ELF_DEFINE_RELOC(R_PPC_PLT16_HA, 31) \ _ELF_DEFINE_RELOC(R_PPC_SDAREL16, 32) \ _ELF_DEFINE_RELOC(R_PPC_SECTOFF, 33) \ @@ -1926,7 +2048,7 @@ _ELF_DEFINE_RELOC(R_RISCV_SUB32, 39) \ _ELF_DEFINE_RELOC(R_RISCV_SUB64, 40) \ _ELF_DEFINE_RELOC(R_RISCV_GNU_VTINHERIT, 41) \ _ELF_DEFINE_RELOC(R_RISCV_GNU_VTENTRY, 42) \ -_ELF_DEFINE_RELOC(R_RISCV_ALIGN 43) \ +_ELF_DEFINE_RELOC(R_RISCV_ALIGN, 43) \ _ELF_DEFINE_RELOC(R_RISCV_RVC_BRANCH, 44) \ _ELF_DEFINE_RELOC(R_RISCV_RVC_JUMP, 45) @@ -2042,6 +2164,7 @@ _ELF_DEFINE_IA64_RELOCATIONS() \ _ELF_DEFINE_MIPS_RELOCATIONS() \ _ELF_DEFINE_PPC32_RELOCATIONS() \ _ELF_DEFINE_PPC64_RELOCATIONS() \ +_ELF_DEFINE_RISCV_RELOCATIONS() \ _ELF_DEFINE_SPARC_RELOCATIONS() \ _ELF_DEFINE_X86_64_RELOCATIONS() Modified: projects/release-pkg/contrib/elftoolchain/common/native-elf-format ============================================================================== --- projects/release-pkg/contrib/elftoolchain/common/native-elf-format Mon Feb 15 21:18:52 2016 (r295638) +++ projects/release-pkg/contrib/elftoolchain/common/native-elf-format Mon Feb 15 21:58:52 2016 (r295639) @@ -1,6 +1,6 @@ #!/bin/sh # -# $Id: native-elf-format 3186 2015-04-16 22:16:40Z emaste $ +# $Id: native-elf-format 3293 2016-01-07 19:26:27Z emaste $ # # Find the native ELF format for a host platform by compiling a # test object and examining the resulting object. @@ -33,6 +33,8 @@ $1 ~ "Data:" { $1 ~ "Machine:" { if (match($0, "Intel.*386")) { elfarch = "EM_386"; + } else if (match($0, "MIPS")) { + elfarch = "EM_MIPS"; } else if (match($0, ".*[xX]86-64")) { elfarch = "EM_X86_64"; } else { Modified: projects/release-pkg/contrib/elftoolchain/cxxfilt/cxxfilt.c ============================================================================== --- projects/release-pkg/contrib/elftoolchain/cxxfilt/cxxfilt.c Mon Feb 15 21:18:52 2016 (r295638) +++ projects/release-pkg/contrib/elftoolchain/cxxfilt/cxxfilt.c Mon Feb 15 21:58:52 2016 (r295639) @@ -35,7 +35,7 @@ #include "_elftc.h" -ELFTC_VCSID("$Id: cxxfilt.c 3174 2015-03-27 17:13:41Z emaste $"); +ELFTC_VCSID("$Id: cxxfilt.c 3356 2016-01-22 22:31:38Z jkoshy $"); #define STRBUFSZ 8192 @@ -112,11 +112,11 @@ find_format(const char *fstr) } static char * -demangle(char *name, int strict, int *pos) +demangle(char *name, int strict, size_t *pos) { static char dem[STRBUFSZ]; char nb[STRBUFSZ]; - int p, t; + size_t p, t; if (stripus && *name == '_') { strncpy(nb, name + 1, sizeof(nb) - 1); @@ -128,10 +128,10 @@ demangle(char *name, int strict, int *po nb[sizeof(nb) - 1] = '\0'; p = strlen(nb); - if (p <= 0) + if (p == 0) return NULL; - while (elftc_demangle(nb, dem, sizeof(dem), format) < 0) { + while (elftc_demangle(nb, dem, sizeof(dem), (unsigned) format) < 0) { if (!strict && p > 1) { nb[--p] = '\0'; continue; @@ -149,7 +149,8 @@ int main(int argc, char **argv) { char *dem, buf[STRBUFSZ]; - int c, i, p, s, opt; + size_t i, p, s; + int c, n, opt; while ((opt = getopt_long(argc, argv, "_nps:V", longopts, NULL)) != -1) { @@ -182,9 +183,9 @@ main(int argc, char **argv) argc -= optind; if (*argv != NULL) { - for (i = 0; i < argc; i++) { - if ((dem = demangle(argv[i], 1, NULL)) == NULL) - fprintf(stderr, "Failed: %s\n", argv[i]); + for (n = 0; n < argc; n++) { + if ((dem = demangle(argv[n], 1, NULL)) == NULL) + fprintf(stderr, "Failed: %s\n", argv[n]); else printf("%s\n", dem); } @@ -213,7 +214,7 @@ main(int argc, char **argv) if ((size_t) p >= sizeof(buf) - 1) warnx("buffer overflowed"); else - buf[p++] = c; + buf[p++] = (char) c; } } Modified: projects/release-pkg/contrib/elftoolchain/elfcopy/Makefile ============================================================================== --- projects/release-pkg/contrib/elftoolchain/elfcopy/Makefile Mon Feb 15 21:18:52 2016 (r295638) +++ projects/release-pkg/contrib/elftoolchain/elfcopy/Makefile Mon Feb 15 21:58:52 2016 (r295639) @@ -1,10 +1,13 @@ -# $Id: Makefile 2290 2011-12-04 07:20:46Z jkoshy $ +# $Id: Makefile 3381 2016-01-30 19:39:47Z jkoshy $ TOP= .. +.include "${TOP}/mk/elftoolchain.components.mk" + PROG= elfcopy -SRCS= archive.c ascii.c binary.c main.c sections.c segments.c symbols.c +SRCS= archive.c ascii.c binary.c main.c sections.c segments.c \ + symbols.c WARNS?= 5 @@ -15,14 +18,24 @@ LDADD= -lelf -lelftc LDADD+= -larchive .endif +.if defined(WITH_PE) && ${WITH_PE:tl} == "yes" +SRCS+= pe.c +CFLAGS+= -DWITH_PE=1 + +DPADD+= ${LIBPE} +LDADD+= -lpe +.endif + MAN= elfcopy.1 mcs.1 strip.1 +MLINKS= elfcopy.1 objcopy.1 NO_SHARED?= yes -LINKS= ${BINDIR}/elfcopy ${BINDIR}/strip \ - ${BINDIR}/elfcopy ${BINDIR}/mcs +LINKS= ${BINDIR}/elfcopy ${BINDIR}/mcs \ + ${BINDIR}/elfcopy ${BINDIR}/objcopy \ + ${BINDIR}/elfcopy ${BINDIR}/strip -EXTRA_TARGETS= strip mcs +EXTRA_TARGETS= mcs strip objcopy CLEANFILES+= ${EXTRA_TARGETS} Modified: projects/release-pkg/contrib/elftoolchain/elfcopy/archive.c ============================================================================== --- projects/release-pkg/contrib/elftoolchain/elfcopy/archive.c Mon Feb 15 21:18:52 2016 (r295638) +++ projects/release-pkg/contrib/elftoolchain/elfcopy/archive.c Mon Feb 15 21:58:52 2016 (r295639) @@ -38,7 +38,7 @@ #include "elfcopy.h" -ELFTC_VCSID("$Id: archive.c 3174 2015-03-27 17:13:41Z emaste $"); +ELFTC_VCSID("$Id: archive.c 3287 2015-12-31 16:58:48Z emaste $"); #define _ARMAG_LEN 8 /* length of ar magic string */ #define _ARHDR_LEN 60 /* length of ar header */ @@ -382,7 +382,7 @@ ac_read_objs(struct elfcopy *ecp, int if if (lseek(ifd, 0, SEEK_SET) == -1) err(EXIT_FAILURE, "lseek failed"); if ((a = archive_read_new()) == NULL) - errx(EXIT_FAILURE, "%s", archive_error_string(a)); + errx(EXIT_FAILURE, "archive_read_new failed"); archive_read_support_format_ar(a); AC(archive_read_open_fd(a, ifd, 10240)); for(;;) { @@ -443,7 +443,7 @@ ac_write_objs(struct elfcopy *ecp, int o int nr; if ((a = archive_write_new()) == NULL) - errx(EXIT_FAILURE, "%s", archive_error_string(a)); + errx(EXIT_FAILURE, "archive_write_new failed"); archive_write_set_format_ar_svr4(a); AC(archive_write_open_fd(a, ofd)); Modified: projects/release-pkg/contrib/elftoolchain/elfcopy/elfcopy.1 ============================================================================== --- projects/release-pkg/contrib/elftoolchain/elfcopy/elfcopy.1 Mon Feb 15 21:18:52 2016 (r295638) +++ projects/release-pkg/contrib/elftoolchain/elfcopy/elfcopy.1 Mon Feb 15 21:58:52 2016 (r295639) @@ -21,13 +21,14 @@ .\" out of the use of this software, even if advised of the possibility of .\" such damage. .\" -.\" $Id: elfcopy.1 3266 2015-12-07 15:38:26Z emaste $ +.\" $Id: elfcopy.1 3381 2016-01-30 19:39:47Z jkoshy $ .\" -.Dd December 7, 2015 +.Dd January 29, 2016 .Os .Dt ELFCOPY 1 .Sh NAME -.Nm elfcopy +.Nm elfcopy , +.Nm objcopy .Nd copy and translate object files .Sh SYNOPSIS .Nm @@ -85,7 +86,7 @@ .Sh DESCRIPTION The .Nm -utility copies the content of the ELF object named by argument +utility copies the content of the binary object named by argument .Ar infile to that named by argument .Ar outfile , @@ -121,6 +122,10 @@ to the output. .It Fl O Ar objformat | Fl -output-target= Ns Ar objformat Write the output file using the object format specified in argument .Ar objformat . +The argument +.Ar objformat +should be one of the target names recognized by +.Xr elftc_bfd_find_target 3 . .It Fl R Ar sectionname | Fl -remove-section= Ns Ar sectionname Remove any section with name .Ar sectionname @@ -330,8 +335,14 @@ Do not copy symbols that are not needed .Xr mcs 1 , .Xr strip 1 , .Xr elf 3 , +.Xr elftc_bfd_find_target 3 , .Xr ar 5 , .Xr elf 5 +.Sh COMPATIBILITY +The +.Nm +utility is expected to be option compatible with GNU +.Nm objcopy . .Sh HISTORY .Nm has been implemented by Modified: projects/release-pkg/contrib/elftoolchain/elfcopy/elfcopy.h ============================================================================== --- projects/release-pkg/contrib/elftoolchain/elfcopy/elfcopy.h Mon Feb 15 21:18:52 2016 (r295638) +++ projects/release-pkg/contrib/elftoolchain/elfcopy/elfcopy.h Mon Feb 15 21:58:52 2016 (r295639) @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: elfcopy.h 3221 2015-05-24 23:42:43Z kaiwang27 $ + * $Id: elfcopy.h 3310 2016-01-10 09:10:54Z kaiwang27 $ */ #include @@ -287,6 +287,7 @@ struct section *create_external_section( int _loadable); void create_external_symtab(struct elfcopy *_ecp); void create_ihex(int _ifd, int _ofd); +void create_pe(struct elfcopy *_ecp, int _ifd, int _ofd); void create_scn(struct elfcopy *_ecp); void create_srec(struct elfcopy *_ecp, int _ifd, int _ofd, const char *_ofn); void create_symtab(struct elfcopy *_ecp); Modified: projects/release-pkg/contrib/elftoolchain/elfcopy/main.c ============================================================================== --- projects/release-pkg/contrib/elftoolchain/elfcopy/main.c Mon Feb 15 21:18:52 2016 (r295638) +++ projects/release-pkg/contrib/elftoolchain/elfcopy/main.c Mon Feb 15 21:58:52 2016 (r295639) @@ -39,7 +39,7 @@ #include "elfcopy.h" -ELFTC_VCSID("$Id: main.c 3268 2015-12-07 20:30:55Z emaste $"); +ELFTC_VCSID("$Id: main.c 3399 2016-02-12 18:07:56Z emaste $"); enum options { @@ -316,6 +316,7 @@ create_elf(struct elfcopy *ecp) oeh.e_entry = ieh.e_entry; oeh.e_version = ieh.e_version; + ecp->flags &= ~(EXECUTABLE | DYNAMIC | RELOCATABLE); if (ieh.e_type == ET_EXEC) ecp->flags |= EXECUTABLE; else if (ieh.e_type == ET_DYN) @@ -722,6 +723,15 @@ create_file(struct elfcopy *ecp, const c create_srec(ecp, ofd, ofd0, dst != NULL ? dst : src); break; + case ETF_PE: + case ETF_EFI: +#if WITH_PE + create_pe(ecp, ofd, ofd0); +#else + errx(EXIT_FAILURE, "PE/EFI support not enabled" + " at compile time"); +#endif + break; default: errx(EXIT_FAILURE, "Internal: unsupported" " output flavour %d", ecp->oec); @@ -1345,6 +1355,9 @@ set_output_target(struct elfcopy *ecp, c ecp->oed = elftc_bfd_target_byteorder(tgt); ecp->oem = elftc_bfd_target_machine(tgt); } + if (ecp->otf == ETF_EFI || ecp->otf == ETF_PE) + ecp->oem = elftc_bfd_target_machine(tgt); + ecp->otgt = target_name; } @@ -1366,7 +1379,7 @@ set_osabi(struct elfcopy *ecp, const cha #define ELFCOPY_USAGE_MESSAGE "\ Usage: %s [options] infile [outfile]\n\ - Transform an ELF object.\n\n\ + Transform object files.\n\n\ Options:\n\ -d | -g | --strip-debug Remove debugging information from the output.\n\ -j SECTION | --only-section=SECTION\n\ @@ -1382,6 +1395,8 @@ Usage: %s [options] infile [outfile]\n\ -N SYM | --strip-symbol=SYM Do not copy symbol SYM to the output.\n\ -O FORMAT | --output-target=FORMAT\n\ Specify object format for the output file.\n\ + FORMAT should be a target name understood by\n\ + elftc_bfd_find_target(3).\n\ -R NAME | --remove-section=NAME\n\ Remove the named section.\n\ -S | --strip-all Remove all symbol and relocation information\n\ @@ -1471,6 +1486,7 @@ Usage: %s [options] file...\n\ Options:\n\ -d | -g | -S | --strip-debug Remove debugging symbols.\n\ -h | --help Print a help message.\n\ + -o FILE | --output-file FILE Write output to FILE.\n\ --only-keep-debug Keep debugging information only.\n\ -p | --preserve-dates Preserve access and modification times.\n\ -s | --strip-all Remove all symbols.\n\ Copied: projects/release-pkg/contrib/elftoolchain/elfcopy/pe.c (from r295638, head/contrib/elftoolchain/elfcopy/pe.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/release-pkg/contrib/elftoolchain/elfcopy/pe.c Mon Feb 15 21:58:52 2016 (r295639, copy of r295638, head/contrib/elftoolchain/elfcopy/pe.c) @@ -0,0 +1,233 @@ +/*- + * Copyright (c) 2016 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. + */ + +#include +#include +#include +#include +#include +#include +#include + +#include "elfcopy.h" + +ELFTC_VCSID("$Id: pe.c 3312 2016-01-10 09:23:51Z kaiwang27 $"); + +/* Convert ELF object to Portable Executable (PE). */ +void +create_pe(struct elfcopy *ecp, int ifd, int ofd) +{ + Elf *e; + Elf_Scn *scn; + Elf_Data *d; + GElf_Ehdr eh; + GElf_Shdr sh; + PE *pe; + PE_Scn *ps; + PE_SecHdr psh; + PE_CoffHdr pch; + PE_OptHdr poh; + PE_Object po; + PE_Buffer *pb; + const char *name; + size_t indx; + int elferr, i; + + if (ecp->otf == ETF_EFI || ecp->oem == EM_X86_64) + po = PE_O_PE32P; + else + po = PE_O_PE32; + + if ((e = elf_begin(ifd, ELF_C_READ, NULL)) == NULL) + errx(EXIT_FAILURE, "elf_begin() failed: %s", + elf_errmsg(-1)); + + if (gelf_getehdr(e, &eh) == NULL) + errx(EXIT_FAILURE, "gelf_getehdr() failed: %s", + elf_errmsg(-1)); + + if (elf_getshstrndx(ecp->ein, &indx) == 0) + errx(EXIT_FAILURE, "elf_getshstrndx() failed: %s", + elf_errmsg(-1)); + + if ((pe = pe_init(ofd, PE_C_WRITE, po)) == NULL) + err(EXIT_FAILURE, "pe_init() failed"); + + /* Setup PE COFF header. */ + memset(&pch, 0, sizeof(pch)); + switch (ecp->oem) { + case EM_386: + pch.ch_machine = IMAGE_FILE_MACHINE_I386; + break; + case EM_X86_64: + pch.ch_machine = IMAGE_FILE_MACHINE_AMD64; + break; + default: + pch.ch_machine = IMAGE_FILE_MACHINE_UNKNOWN; + break; + } + pch.ch_timestamp = (uint32_t) time(NULL); + if (pe_update_coff_header(pe, &pch) < 0) + err(EXIT_FAILURE, "pe_update_coff_header() failed"); + + /* Setup PE optional header. */ + memset(&poh, 0, sizeof(poh)); + if (ecp->otf == ETF_EFI) + poh.oh_subsystem = IMAGE_SUBSYSTEM_EFI_APPLICATION; + poh.oh_entry = (uint32_t) eh.e_entry; + + /* + * Default section alignment and file alignment. (Here the + * section alignment is set to the default page size of the + * archs supported. We should use different section alignment + * for some arch. (e.g. IA64) + */ + poh.oh_secalign = 0x1000; + poh.oh_filealign = 0x200; + + /* Copy sections. */ + scn = NULL; + while ((scn = elf_nextscn(e, scn)) != NULL) { + + /* + * Read in ELF section. + */ + + if (gelf_getshdr(scn, &sh) == NULL) { + warnx("gelf_getshdr() failed: %s", elf_errmsg(-1)); + (void) elf_errno(); + continue; + } + if ((name = elf_strptr(ecp->ein, indx, sh.sh_name)) == + NULL) { + warnx("elf_strptr() failed: %s", elf_errmsg(-1)); + (void) elf_errno(); + continue; + } + + /* Skip sections unneeded. */ + if (strcmp(name, ".shstrtab") == 0 || + strcmp(name, ".symtab") == 0 || + strcmp(name, ".strtab") == 0) + continue; + + if ((d = elf_getdata(scn, NULL)) == NULL) { + warnx("elf_getdata() failed: %s", elf_errmsg(-1)); + (void) elf_errno(); + continue; + } + + if (strcmp(name, ".text") == 0) { + poh.oh_textbase = (uint32_t) sh.sh_addr; + poh.oh_textsize = (uint32_t) roundup(sh.sh_size, + poh.oh_filealign); + } else { + if (po == PE_O_PE32 && strcmp(name, ".data") == 0) + poh.oh_database = sh.sh_addr; + if (sh.sh_type == SHT_NOBITS) + poh.oh_bsssize += (uint32_t) + roundup(sh.sh_size, poh.oh_filealign); + else if (sh.sh_flags & SHF_ALLOC) + poh.oh_datasize += (uint32_t) + roundup(sh.sh_size, poh.oh_filealign); + } + + /* + * Create PE/COFF section. + */ + + if ((ps = pe_newscn(pe)) == NULL) { + warn("pe_newscn() failed"); + continue; + } + + /* + * Setup PE/COFF section header. The section name is not + * NUL-terminated if its length happens to be 8. Long + * section name should be truncated for PE image according + * to the PE/COFF specification. + */ + memset(&psh, 0, sizeof(psh)); + strncpy(psh.sh_name, name, sizeof(psh.sh_name)); + psh.sh_addr = sh.sh_addr; + psh.sh_virtsize = sh.sh_size; + if (sh.sh_type != SHT_NOBITS) + psh.sh_rawsize = sh.sh_size; + else + psh.sh_char |= IMAGE_SCN_CNT_UNINITIALIZED_DATA; + + /* + * Translate ELF section flags to PE/COFF section flags. + */ + psh.sh_char |= IMAGE_SCN_MEM_READ; + if (sh.sh_flags & SHF_WRITE) + psh.sh_char |= IMAGE_SCN_MEM_WRITE; + if (sh.sh_flags & SHF_EXECINSTR) + psh.sh_char |= IMAGE_SCN_MEM_EXECUTE | + IMAGE_SCN_CNT_CODE; + if ((sh.sh_flags & SHF_ALLOC) && (psh.sh_char & 0xF0) == 0) + psh.sh_char |= IMAGE_SCN_CNT_INITIALIZED_DATA; + for (i = 0xE; i > 0; i--) { + if (sh.sh_addralign & (1U << (i - 1))) { + psh.sh_char |= i << 20; + break; + } + } + + /* Mark relocation section "discardable". */ + if (strcmp(name, ".reloc") == 0) + psh.sh_char |= IMAGE_SCN_MEM_DISCARDABLE; + + if (pe_update_section_header(ps, &psh) < 0) { + warn("pe_update_section_header() failed"); + continue; + } + + /* Copy section content. */ + if ((pb = pe_newbuffer(ps)) == NULL) { + warn("pe_newbuffer() failed"); + continue; + } + pb->pb_align = 1; + pb->pb_off = 0; + pb->pb_size = sh.sh_size; + pb->pb_buf = d->d_buf; + } + elferr = elf_errno(); + if (elferr != 0) + warnx("elf_nextscn() failed: %s", elf_errmsg(elferr)); + + /* Update PE optional header. */ + if (pe_update_opt_header(pe, &poh) < 0) + err(EXIT_FAILURE, "pe_update_opt_header() failed"); + + /* Write out PE/COFF object. */ + if (pe_update(pe) < 0) + err(EXIT_FAILURE, "pe_update() failed"); + + pe_finish(pe); + elf_end(e); +} Modified: projects/release-pkg/contrib/elftoolchain/elfcopy/sections.c ============================================================================== --- projects/release-pkg/contrib/elftoolchain/elfcopy/sections.c Mon Feb 15 21:18:52 2016 (r295638) +++ projects/release-pkg/contrib/elftoolchain/elfcopy/sections.c Mon Feb 15 21:58:52 2016 (r295639) @@ -34,7 +34,7 @@ #include "elfcopy.h" -ELFTC_VCSID("$Id: sections.c 3272 2015-12-11 20:00:54Z kaiwang27 $"); +ELFTC_VCSID("$Id: sections.c 3346 2016-01-17 20:09:15Z kaiwang27 $"); static void add_gnu_debuglink(struct elfcopy *ecp); static uint32_t calc_crc32(const char *p, size_t len, uint32_t crc); @@ -223,6 +223,7 @@ static int is_debug_section(const char *name) { const char *dbg_sec[] = { + ".apple_", ".debug", ".gnu.linkonce.wi.", ".line", @@ -369,7 +370,7 @@ create_scn(struct elfcopy *ecp) is = NULL; while ((is = elf_nextscn(ecp->ein, is)) != NULL) { if (gelf_getshdr(is, &ish) == NULL) - errx(EXIT_FAILURE, "219 gelf_getshdr failed: %s", + errx(EXIT_FAILURE, "gelf_getshdr failed: %s", elf_errmsg(-1)); if ((name = elf_strptr(ecp->ein, indx, ish.sh_name)) == NULL) errx(EXIT_FAILURE, "elf_strptr failed: %s", @@ -416,12 +417,19 @@ create_scn(struct elfcopy *ecp) * is loadable, but if user explicitly set section flags * while neither "load" nor "alloc" is set, we make the * section unloadable. + * + * Sections in relocatable object is loadable if + * section flag SHF_ALLOC is set. */ if (sec_flags && (sec_flags & (SF_LOAD | SF_ALLOC)) == 0) s->loadable = 0; - else + else { s->loadable = add_to_inseg_list(ecp, s); + if ((ecp->flags & RELOCATABLE) && + (ish.sh_flags & SHF_ALLOC)) + s->loadable = 1; + } } else { /* Assuming .shstrtab is "unloadable". */ s = ecp->shstrtab; @@ -875,10 +883,10 @@ resync_sections(struct elfcopy *ecp) if (s->align == 0) s->align = 1; if (off <= s->off) { - if (!s->loadable) + if (!s->loadable || (ecp->flags & RELOCATABLE)) s->off = roundup(off, s->align); } else { - if (s->loadable) + if (s->loadable && (ecp->flags & RELOCATABLE) == 0) warnx("moving loadable section %s, " "is this intentional?", s->name); s->off = roundup(off, s->align); @@ -1028,8 +1036,11 @@ print_section(struct section *s) print_data(s->buf, s->sz); } else { id = NULL; - while ((id = elf_getdata(s->is, id)) != NULL) + while ((id = elf_getdata(s->is, id)) != NULL || + (id = elf_rawdata(s->is, id)) != NULL) { + (void) elf_errno(); print_data(id->d_buf, id->d_size); + } elferr = elf_errno(); if (elferr != 0) errx(EXIT_FAILURE, "elf_getdata() failed: %s", @@ -1049,7 +1060,9 @@ read_section(struct section *s, size_t * sz = 0; b = NULL; id = NULL; - while ((id = elf_getdata(s->is, id)) != NULL) { + while ((id = elf_getdata(s->is, id)) != NULL || + (id = elf_rawdata(s->is, id)) != NULL) { + (void) elf_errno(); if (b == NULL) b = malloc(id->d_size); else @@ -1077,10 +1090,10 @@ copy_shdr(struct elfcopy *ecp, struct se GElf_Shdr ish, osh; if (gelf_getshdr(s->is, &ish) == NULL) - errx(EXIT_FAILURE, "526 gelf_getshdr() failed: %s", + errx(EXIT_FAILURE, "gelf_getshdr() failed: %s", elf_errmsg(-1)); if (gelf_getshdr(s->os, &osh) == NULL) - errx(EXIT_FAILURE, "529 gelf_getshdr() failed: %s", + errx(EXIT_FAILURE, "gelf_getshdr() failed: %s", elf_errmsg(-1)); if (copy) @@ -1097,19 +1110,32 @@ copy_shdr(struct elfcopy *ecp, struct se if (sec_flags) { osh.sh_flags = 0; - if (sec_flags & SF_ALLOC) { + if (sec_flags & SF_ALLOC) osh.sh_flags |= SHF_ALLOC; - if (!s->loadable) - warnx("set SHF_ALLOC flag for " - "unloadable section %s", - s->name); - } if ((sec_flags & SF_READONLY) == 0) osh.sh_flags |= SHF_WRITE; if (sec_flags & SF_CODE) osh.sh_flags |= SHF_EXECINSTR; + if ((sec_flags & SF_CONTENTS) && + s->type == SHT_NOBITS && s->sz > 0) { + /* + * Convert SHT_NOBITS section to section with + * (zero'ed) content on file. + */ + osh.sh_type = s->type = SHT_PROGBITS; + if ((s->buf = calloc(1, s->sz)) == NULL) + err(EXIT_FAILURE, "malloc failed"); + s->nocopy = 1; + } } else { osh.sh_flags = ish.sh_flags; + /* + * Newer binutils as(1) emits the section flag + * SHF_INFO_LINK for relocation sections. elfcopy + * emits this flag in the output section if it's + * missing in the input section, to remain compatible + * with binutils. + */ if (ish.sh_type == SHT_REL || ish.sh_type == SHT_RELA) osh.sh_flags |= SHF_INFO_LINK; } @@ -1135,11 +1161,14 @@ copy_data(struct section *s) return; if ((id = elf_getdata(s->is, NULL)) == NULL) { - elferr = elf_errno(); - if (elferr != 0) - errx(EXIT_FAILURE, "elf_getdata() failed: %s", - elf_errmsg(elferr)); *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@freebsd.org Tue Feb 16 01:18:51 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 30AB0AA9BF8 for ; Tue, 16 Feb 2016 01:18:51 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 0462413A8; Tue, 16 Feb 2016 01:18:50 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1G1Ioon093528; Tue, 16 Feb 2016 01:18:50 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1G1InOY093526; Tue, 16 Feb 2016 01:18:49 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201602160118.u1G1InOY093526@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Tue, 16 Feb 2016 01:18:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295640 - in projects/release-pkg: sbin/iscontrol usr.bin/iscsictl X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Feb 2016 01:18:51 -0000 Author: gjb Date: Tue Feb 16 01:18:49 2016 New Revision: 295640 URL: https://svnweb.freebsd.org/changeset/base/295640 Log: Include correct is*ct*l program in iscsi package, and package the legacy version separately. Submitted by: trasz Sponsored by: The FreeBSD Foundation Modified: projects/release-pkg/sbin/iscontrol/Makefile projects/release-pkg/usr.bin/iscsictl/Makefile Modified: projects/release-pkg/sbin/iscontrol/Makefile ============================================================================== --- projects/release-pkg/sbin/iscontrol/Makefile Mon Feb 15 21:58:52 2016 (r295639) +++ projects/release-pkg/sbin/iscontrol/Makefile Tue Feb 16 01:18:49 2016 (r295640) @@ -1,6 +1,6 @@ # $FreeBSD$ -PACKAGE=iscsi +PACKAGE=iscsi_legacy SRCS= iscontrol.c pdu.c fsm.c config.c login.c auth_subr.c misc.c PROG= iscontrol LIBADD= cam md Modified: projects/release-pkg/usr.bin/iscsictl/Makefile ============================================================================== --- projects/release-pkg/usr.bin/iscsictl/Makefile Mon Feb 15 21:58:52 2016 (r295639) +++ projects/release-pkg/usr.bin/iscsictl/Makefile Tue Feb 16 01:18:49 2016 (r295640) @@ -1,5 +1,6 @@ # $FreeBSD$ +PACKAGE= iscsi PROG= iscsictl SRCS= iscsictl.c periphs.c parse.y token.l y.tab.h CFLAGS+= -I${.CURDIR} From owner-svn-src-projects@freebsd.org Tue Feb 16 20:11:01 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7D6C0AAA12D for ; Tue, 16 Feb 2016 20:11:01 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 30DDAD6B; Tue, 16 Feb 2016 20:11:01 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1GKB0wY027388; Tue, 16 Feb 2016 20:11:00 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1GKB0MP027387; Tue, 16 Feb 2016 20:11:00 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201602162011.u1GKB0MP027387@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Tue, 16 Feb 2016 20:11:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295669 - projects/release-pkg X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 16 Feb 2016 20:11:01 -0000 Author: gjb Date: Tue Feb 16 20:11:00 2016 New Revision: 295669 URL: https://svnweb.freebsd.org/changeset/base/295669 Log: Always include the kernel name in the resulting package. While functionally expected to be a no-op on big-iron hardware, embedded hardware (arm, mips) do not have a GENERIC kernel, so the KERNCONF value must be included in the package to avoid conflicting packages for the default kernel (RPI-B versus RPI2, for example). While here, correct the kernel name in the metadata. Sponsored by: The FreeBSD Foundation Modified: projects/release-pkg/Makefile.inc1 Modified: projects/release-pkg/Makefile.inc1 ============================================================================== --- projects/release-pkg/Makefile.inc1 Tue Feb 16 19:36:25 2016 (r295668) +++ projects/release-pkg/Makefile.inc1 Tue Feb 16 20:11:00 2016 (r295669) @@ -1424,25 +1424,25 @@ create-kernel-packages: _pkgbootstrap .for flavor in release debug @cd ${DESTDIR}/${DISTDIR} ; \ awk -f ${SRCDIR}/release/scripts/mtree-to-plist.awk \ - -v kernel=yes \ + -v kernel=yes -v _kernconf=${INSTALLKERNEL} \ ${DESTDIR}/kernel.meta ; \ cap_arg=`cd ${SRCDIR}/etc ; ${MAKE} -VCAP_MKDB_ENDIAN` ; \ pwd_arg=`cd ${SRCDIR}/etc ; ${MAKE} -VPWD_MKDB_ENDIAN` ; \ sed -e "s/%VERSION%/${PKG_VERSION}/" \ - -e "s/%PKGNAME%/kernel-${flavor}/" \ - -e "s/%COMMENT%/FreeBSD ${INSTKERNNAME} kernel ${flavor}/" \ - -e "s/%DESC%/FreeBSD ${INSTKERNNAME} kernel ${flavor}/" \ + -e "s/%PKGNAME%/kernel-${INSTALLKERNEL:tl}-${flavor}/" \ + -e "s/%COMMENT%/FreeBSD ${INSTALLKERNEL} kernel ${flavor}/" \ + -e "s/%DESC%/FreeBSD ${INSTALLKERNEL} kernel ${flavor}/" \ -e "s/%CAP_MKDB_ENDIAN%/$${cap_arg}/g" \ -e "s/%PWD_MKDB_ENDIAN%/$${pwd_arg}/g" \ ${SRCDIR}/release/packages/kernel.ucl \ - > ${DESTDIR}/${DISTDIR}/kernel-${flavor}.ucl ; \ + > ${DESTDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}-${flavor}.ucl ; \ awk -F\" ' \ /name/ { printf("===> Creating %s-", $$2); next } \ /version/ {print $$2; next } ' \ - ${DESTDIR}/${DISTDIR}/kernel-${flavor}.ucl ; \ + ${DESTDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}-${flavor}.ucl ; \ pkg -o ABI_FILE=${WSTAGEDIR}/bin/sh \ - create -M ${DESTDIR}/${DISTDIR}/kernel-${flavor}.ucl \ - -p ${DESTDIR}/${DISTDIR}/kernel-${flavor}.plist \ + create -M ${DESTDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}-${flavor}.ucl \ + -p ${DESTDIR}/${DISTDIR}/kernel.${INSTALLKERNEL}-${flavor}.plist \ -r ${DESTDIR}/${DISTDIR} \ -o ${REPODIR}/$$(pkg -o ABI_FILE=${WSTAGEDIR}/bin/sh config ABI)/${PKG_VERSION} .endfor From owner-svn-src-projects@freebsd.org Wed Feb 17 16:13:24 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 00732AAB27D for ; Wed, 17 Feb 2016 16:13:24 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 A68601981; Wed, 17 Feb 2016 16:13:23 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1HGDMo4081176; Wed, 17 Feb 2016 16:13:22 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1HGDMZX081175; Wed, 17 Feb 2016 16:13:22 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201602171613.u1HGDMZX081175@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Wed, 17 Feb 2016 16:13:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295706 - projects/mips64-clang X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 17 Feb 2016 16:13:24 -0000 Author: sbruno Date: Wed Feb 17 16:13:22 2016 New Revision: 295706 URL: https://svnweb.freebsd.org/changeset/base/295706 Log: Project branch to document what I've done to get a mips64 buildworld via an external clang-head toolchain. Added: - copied from r295705, head/ Directory Properties: projects/mips64-clang/ (props changed) From owner-svn-src-projects@freebsd.org Wed Feb 17 22:52:13 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 657B7AAA97B for ; Wed, 17 Feb 2016 22:52:13 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 3308112B1; Wed, 17 Feb 2016 22:52:13 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1HMqCOI098804; Wed, 17 Feb 2016 22:52:12 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1HMqCwf098803; Wed, 17 Feb 2016 22:52:12 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201602172252.u1HMqCwf098803@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Wed, 17 Feb 2016 22:52:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295722 - projects/mips64-clang/share/mk X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 17 Feb 2016 22:52:13 -0000 Author: sbruno Date: Wed Feb 17 22:52:11 2016 New Revision: 295722 URL: https://svnweb.freebsd.org/changeset/base/295722 Log: Turn on clang by default for mips64 in this branch. Modified: projects/mips64-clang/share/mk/src.opts.mk Modified: projects/mips64-clang/share/mk/src.opts.mk ============================================================================== --- projects/mips64-clang/share/mk/src.opts.mk Wed Feb 17 21:24:26 2016 (r295721) +++ projects/mips64-clang/share/mk/src.opts.mk Wed Feb 17 22:52:11 2016 (r295722) @@ -214,7 +214,8 @@ __TT=${MACHINE} # build Clang without using an external compiler. .if ${COMPILER_FEATURES:Mc++11} && (${__T} == "aarch64" || \ - ${__T} == "amd64" || ${__TT} == "arm" || ${__T} == "i386") + ${__T} == "amd64" || ${__TT} == "arm" || ${__T} == "i386" || \ + ${__T} == "mips64") # Clang is enabled, and will be installed as the default /usr/bin/cc. __DEFAULT_YES_OPTIONS+=CLANG CLANG_BOOTSTRAP CLANG_FULL CLANG_IS_CC __DEFAULT_NO_OPTIONS+=GCC GCC_BOOTSTRAP GNUCXX From owner-svn-src-projects@freebsd.org Wed Feb 17 22:52:59 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7C82EAAA9B3 for ; Wed, 17 Feb 2016 22:52:59 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 4C95F13D9; Wed, 17 Feb 2016 22:52:59 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1HMqwEU098872; Wed, 17 Feb 2016 22:52:58 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1HMqw9B098870; Wed, 17 Feb 2016 22:52:58 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201602172252.u1HMqw9B098870@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Wed, 17 Feb 2016 22:52:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295723 - in projects/mips64-clang: sys/boot/mips usr.bin X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 17 Feb 2016 22:52:59 -0000 Author: sbruno Date: Wed Feb 17 22:52:58 2016 New Revision: 295723 URL: https://svnweb.freebsd.org/changeset/base/295723 Log: Disable the beri bits for clang enabled mips64 builds. Disable xlint for clang enabled mips64 builds. Modified: projects/mips64-clang/sys/boot/mips/Makefile projects/mips64-clang/usr.bin/Makefile Modified: projects/mips64-clang/sys/boot/mips/Makefile ============================================================================== --- projects/mips64-clang/sys/boot/mips/Makefile Wed Feb 17 22:52:11 2016 (r295722) +++ projects/mips64-clang/sys/boot/mips/Makefile Wed Feb 17 22:52:58 2016 (r295723) @@ -1,12 +1,15 @@ # $FreeBSD$ +.include # # The BERI boot loader port works only on 64-bit MIPS; not a hard port to # 32-bit if someone is interested. Build on all 64-bit MIPS platforms to # ensure it gets adequate build-test coverage. # -.if ${MACHINE_ARCH} == "mips64" +.if ${MACHINE_ARCH} == "mips64" +.if ${COMPILER_TYPE} == "gcc" SUBDIR= beri .endif +.endif .include Modified: projects/mips64-clang/usr.bin/Makefile ============================================================================== --- projects/mips64-clang/usr.bin/Makefile Wed Feb 17 22:52:11 2016 (r295722) +++ projects/mips64-clang/usr.bin/Makefile Wed Feb 17 22:52:58 2016 (r295723) @@ -281,7 +281,8 @@ SUBDIR.${MK_TOOLCHAIN}+= rpcgen SUBDIR.${MK_TOOLCHAIN}+= unifdef SUBDIR.${MK_TOOLCHAIN}+= size SUBDIR.${MK_TOOLCHAIN}+= strings -.if ${MACHINE_ARCH} != "aarch64" # ARM64TODO xlint does not build +.if ${MACHINE_ARCH} != "aarch64" && \ # ARM64TODO xlint does not build + (${MACHINE_ARCH} == "mips64" && ${COMPILER_TYPE} == "gcc") # mips64 clang doesn't build this yet SUBDIR.${MK_TOOLCHAIN}+= xlint .endif SUBDIR.${MK_TOOLCHAIN}+= xstr From owner-svn-src-projects@freebsd.org Wed Feb 17 22:53:31 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A3FBFAAAA03 for ; Wed, 17 Feb 2016 22:53:31 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 759471553; Wed, 17 Feb 2016 22:53:31 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1HMrUPq098935; Wed, 17 Feb 2016 22:53:30 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1HMrUp0098934; Wed, 17 Feb 2016 22:53:30 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201602172253.u1HMrUp0098934@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Wed, 17 Feb 2016 22:53:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295724 - projects/mips64-clang/contrib/top X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 17 Feb 2016 22:53:31 -0000 Author: sbruno Date: Wed Feb 17 22:53:30 2016 New Revision: 295724 URL: https://svnweb.freebsd.org/changeset/base/295724 Log: Make the #defines clang friendly here. Modified: projects/mips64-clang/contrib/top/loadavg.h Modified: projects/mips64-clang/contrib/top/loadavg.h ============================================================================== --- projects/mips64-clang/contrib/top/loadavg.h Wed Feb 17 22:52:58 2016 (r295723) +++ projects/mips64-clang/contrib/top/loadavg.h Wed Feb 17 22:53:30 2016 (r295724) @@ -19,7 +19,7 @@ * * Defined types: load_avg for load averages, pctcpu for cpu percentages. */ -#if defined(mips) && !(defined(NetBSD) || defined(FreeBSD)) +#if defined(mips) && !(defined(NetBSD) || defined(__FreeBSD__)) # include # if defined(FBITS) && !defined(FSCALE) # define FSCALE (1 << FBITS) /* RISC/os on mips */ From owner-svn-src-projects@freebsd.org Wed Feb 17 22:56:56 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D27D3AAAB08 for ; Wed, 17 Feb 2016 22:56:56 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 901FE1760; Wed, 17 Feb 2016 22:56:56 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1HMutoS099113; Wed, 17 Feb 2016 22:56:55 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1HMuthi099112; Wed, 17 Feb 2016 22:56:55 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201602172256.u1HMuthi099112@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Wed, 17 Feb 2016 22:56:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295725 - projects/mips64-clang/contrib/binutils/bfd X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 17 Feb 2016 22:56:57 -0000 Author: sbruno Date: Wed Feb 17 22:56:55 2016 New Revision: 295725 URL: https://svnweb.freebsd.org/changeset/base/295725 Log: Copy binutils change from CHERIBSD: https://github.com/CTSRD-CHERI/cheribsd/commit/85ff1bcfc56c82334e50835ba3694e3fb17594ba Implement support for R_MIPS_PC32 by copying the code in elf32-mips.c to elf64-mips.c. From examining other relocations, no other changes appear to be required, but I'm not sure how to test the result. It is sufficient to allow code where llvm produces R_MIPS_PC32 relocations to link (or since such code is mostly threaded, to fail due to missing jemalloc symbols rather than linker errors). Submitted by: brooks Modified: projects/mips64-clang/contrib/binutils/bfd/elf64-mips.c Modified: projects/mips64-clang/contrib/binutils/bfd/elf64-mips.c ============================================================================== --- projects/mips64-clang/contrib/binutils/bfd/elf64-mips.c Wed Feb 17 22:53:30 2016 (r295724) +++ projects/mips64-clang/contrib/binutils/bfd/elf64-mips.c Wed Feb 17 22:56:55 2016 (r295725) @@ -1673,6 +1673,24 @@ static reloc_howto_type elf_mips_gnu_rel 0, /* src_mask */ 0x0000ffff, /* dst_mask */ TRUE); /* pcrel_offset */ + +/* 32 bit pc-relative. This was a GNU extension used by embedded-PIC. + It was co-opted by mips-linux for exception-handling data. */ +/* XXXBD: blind cut and paste from elf32-mips.c */ +static reloc_howto_type elf_mips_gnu_pcrel32 = + HOWTO (R_MIPS_PC32, /* type */ + 0, /* rightshift */ + 2, /* size (0 = byte, 1 = short, 2 = long) */ + 32, /* bitsize */ + TRUE, /* pc_relative */ + 0, /* bitpos */ + complain_overflow_signed, /* complain_on_overflow */ + _bfd_mips_elf_generic_reloc, /* special_function */ + "R_MIPS_PC32", /* name */ + TRUE, /* partial_inplace */ + 0xffffffff, /* src_mask */ + 0xffffffff, /* dst_mask */ + TRUE); /* pcrel_offset */ /* Swap in a MIPS 64-bit Rel reloc. */ @@ -2231,6 +2249,8 @@ bfd_elf64_bfd_reloc_type_lookup (bfd *ab return &elf_mips_gnu_vtinherit_howto; case BFD_RELOC_VTABLE_ENTRY: return &elf_mips_gnu_vtentry_howto; + case BFD_RELOC_32_PCREL: + return &elf_mips_gnu_pcrel32; default: bfd_set_error (bfd_error_bad_value); return NULL; @@ -2262,6 +2282,8 @@ bfd_elf64_bfd_reloc_name_lookup (bfd *ab return &elf_mips_gnu_vtinherit_howto; if (strcasecmp (elf_mips_gnu_vtentry_howto.name, r_name) == 0) return &elf_mips_gnu_vtentry_howto; + if (strcasecmp (elf_mips_gnu_pcrel32.name, r_name) == 0) + return &elf_mips_gnu_pcrel32; if (strcasecmp (elf_mips_gnu_rel16_s2.name, r_name) == 0) return &elf_mips_gnu_rel16_s2; if (strcasecmp (elf_mips_gnu_rela16_s2.name, r_name) == 0) @@ -2286,6 +2308,8 @@ mips_elf64_rtype_to_howto (unsigned int return &elf_mips_gnu_rela16_s2; else return &elf_mips_gnu_rel16_s2; + case R_MIPS_PC32: + return &elf_mips_gnu_pcrel32; default: if (r_type >= R_MIPS16_min && r_type < R_MIPS16_max) { From owner-svn-src-projects@freebsd.org Wed Feb 17 22:58:10 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 33836AAAB64 for ; Wed, 17 Feb 2016 22:58:10 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 055A6188D; Wed, 17 Feb 2016 22:58:09 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1HMw9GO099200; Wed, 17 Feb 2016 22:58:09 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1HMw9EX099199; Wed, 17 Feb 2016 22:58:09 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201602172258.u1HMw9EX099199@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Wed, 17 Feb 2016 22:58:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295726 - projects/mips64-clang/sys/mips/mips X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 17 Feb 2016 22:58:10 -0000 Author: sbruno Date: Wed Feb 17 22:58:08 2016 New Revision: 295726 URL: https://svnweb.freebsd.org/changeset/base/295726 Log: Make fn_name() clang friendly here. Submitted by: emaste Modified: projects/mips64-clang/sys/mips/mips/db_trace.c Modified: projects/mips64-clang/sys/mips/mips/db_trace.c ============================================================================== --- projects/mips64-clang/sys/mips/mips/db_trace.c Wed Feb 17 22:56:55 2016 (r295725) +++ projects/mips64-clang/sys/mips/mips/db_trace.c Wed Feb 17 22:58:08 2016 (r295726) @@ -105,7 +105,7 @@ static struct { /* * Map a function address to a string name, if known; or a hex string. */ -static char * +static const char * fn_name(uintptr_t addr) { static char buf[17]; @@ -113,12 +113,12 @@ fn_name(uintptr_t addr) db_expr_t diff; c_db_sym_t sym; - char *symname; + const char *symname; diff = 0; symname = NULL; sym = db_search_symbol((db_addr_t)addr, DB_STGY_ANY, &diff); - db_symbol_values(sym, (const char **)&symname, (db_expr_t *)0); + db_symbol_values(sym, &symname, (db_expr_t *)0); if (symname && diff == 0) return (symname); From owner-svn-src-projects@freebsd.org Wed Feb 17 22:58:49 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3C376AAABAB for ; Wed, 17 Feb 2016 22:58:49 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 162AD19C6; Wed, 17 Feb 2016 22:58:49 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1HMwmIH099277; Wed, 17 Feb 2016 22:58:48 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1HMwlTW099273; Wed, 17 Feb 2016 22:58:47 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201602172258.u1HMwlTW099273@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Wed, 17 Feb 2016 22:58:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295727 - in projects/mips64-clang/sys/mips: include mips X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 17 Feb 2016 22:58:49 -0000 Author: sbruno Date: Wed Feb 17 22:58:47 2016 New Revision: 295727 URL: https://svnweb.freebsd.org/changeset/base/295727 Log: Sundry ASM changes here to play nice with the Clang IAS. Submitted by: emaste Modified: projects/mips64-clang/sys/mips/include/asm.h projects/mips64-clang/sys/mips/mips/exception.S projects/mips64-clang/sys/mips/mips/fp.S projects/mips64-clang/sys/mips/mips/locore.S Modified: projects/mips64-clang/sys/mips/include/asm.h ============================================================================== --- projects/mips64-clang/sys/mips/include/asm.h Wed Feb 17 22:58:08 2016 (r295726) +++ projects/mips64-clang/sys/mips/include/asm.h Wed Feb 17 22:58:47 2016 (r295727) @@ -253,7 +253,7 @@ _C_LABEL(x): MSG(msg) #define MSG(msg) \ - .rdata; \ + .section .rdata; \ 9: .asciiz msg; \ .text Modified: projects/mips64-clang/sys/mips/mips/exception.S ============================================================================== --- projects/mips64-clang/sys/mips/mips/exception.S Wed Feb 17 22:58:08 2016 (r295726) +++ projects/mips64-clang/sys/mips/mips/exception.S Wed Feb 17 22:58:47 2016 (r295727) @@ -197,7 +197,9 @@ VECTOR(MipsException, unknown) PTR_SLL k1, k1, 1 # shift to get 8-byte offset #endif 1: + .set at PTR_LA k0, _C_LABEL(machExceptionTable) # get base of the jump table + .set noat PTR_ADDU k0, k0, k1 # Get the address of the # function entry. Note that # the cause is already Modified: projects/mips64-clang/sys/mips/mips/fp.S ============================================================================== --- projects/mips64-clang/sys/mips/mips/fp.S Wed Feb 17 22:58:08 2016 (r295726) +++ projects/mips64-clang/sys/mips/mips/fp.S Wed Feb 17 22:58:47 2016 (r295727) @@ -115,7 +115,7 @@ NESTED(MipsEmulateFP, CALLFRAME_SIZ, ra) ctc1 a1, MIPS_FPU_CSR j a3 - .rdata + .section .rdata func_fmt_tbl: .word add_s # 0 .word add_d # 0 @@ -2272,7 +2272,7 @@ LEAF(get_fs_int) lw a3, get_fs_int_tbl(a3) # switch on register number j a3 - .rdata + .section .rdata get_fs_int_tbl: .word get_fs_int_f0 .word get_fs_int_f2 @@ -2370,7 +2370,7 @@ LEAF(get_ft_fs_s) lw a3, get_ft_s_tbl(a3) # switch on register number j a3 - .rdata + .section .rdata get_ft_s_tbl: .word get_ft_s_f0 .word get_ft_s_f2 @@ -2468,7 +2468,7 @@ XLEAF(get_fs_s) lw a3, get_fs_s_tbl(a3) # switch on register number j a3 - .rdata + .section .rdata get_fs_s_tbl: .word get_fs_s_f0 .word get_fs_s_f2 @@ -2572,7 +2572,7 @@ LEAF(get_ft_fs_d) lw a3, get_ft_d_tbl(a3) # switch on register number j a3 - .rdata + .section .rdata get_ft_d_tbl: .word get_ft_d_f0 .word get_ft_d_f2 @@ -2687,7 +2687,7 @@ XLEAF(get_fs_d) lw a3, get_fs_d_tbl(a3) # switch on register number j a3 - .rdata + .section .rdata get_fs_d_tbl: .word get_fs_d_f0 .word get_fs_d_f2 @@ -2805,7 +2805,7 @@ LEAF(get_cmp_s) lw a3, cmp_fs_s_tbl(a3) # switch on register number j a3 - .rdata + .section .rdata cmp_fs_s_tbl: .word cmp_fs_s_f0 .word cmp_fs_s_f2 @@ -2883,7 +2883,7 @@ cmp_fs_s_done: lw a3, cmp_ft_s_tbl(a3) # switch on register number j a3 - .rdata + .section .rdata cmp_ft_s_tbl: .word cmp_ft_s_f0 .word cmp_ft_s_f2 @@ -2983,7 +2983,7 @@ LEAF(get_cmp_d) lw a3, cmp_fs_d_tbl(a3) # switch on register number j a3 - .rdata + .section .rdata cmp_fs_d_tbl: .word cmp_fs_d_f0 .word cmp_fs_d_f2 @@ -3077,7 +3077,7 @@ cmp_fs_d_done: lw a3, cmp_ft_d_tbl(a3) # switch on register number j a3 - .rdata + .section .rdata cmp_ft_d_tbl: .word cmp_ft_d_f0 .word cmp_ft_d_f2 @@ -3202,7 +3202,7 @@ XLEAF(set_fd_word) lw a3, set_fd_s_tbl(a3) # switch on register number j a3 - .rdata + .section .rdata set_fd_s_tbl: .word set_fd_s_f0 .word set_fd_s_f2 @@ -3297,7 +3297,7 @@ LEAF(set_fd_d) lw a3, set_fd_d_tbl(a3) # switch on register number j a3 - .rdata + .section .rdata set_fd_d_tbl: .word set_fd_d_f0 .word set_fd_d_f2 Modified: projects/mips64-clang/sys/mips/mips/locore.S ============================================================================== --- projects/mips64-clang/sys/mips/mips/locore.S Wed Feb 17 22:58:08 2016 (r295726) +++ projects/mips64-clang/sys/mips/mips/locore.S Wed Feb 17 22:58:47 2016 (r295727) @@ -180,7 +180,7 @@ VECTOR(_locore, unknown) PTR_SUBU sp, a0, CALLFRAME_SIZ jal _C_LABEL(mi_startup) # mi_startup(frame) - sw zero, CALLFRAME_SIZ - 8(sp) # Zero out old fp for debugger + sw zero, ((CALLFRAME_SIZ) - 8)(sp) # Zero out old fp for debugger PANIC("Startup failed!") From owner-svn-src-projects@freebsd.org Wed Feb 17 23:36:59 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BF45FAABF14 for ; Wed, 17 Feb 2016 23:36:59 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 906211F95; Wed, 17 Feb 2016 23:36:59 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1HNaw2D011532; Wed, 17 Feb 2016 23:36:58 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1HNawML011531; Wed, 17 Feb 2016 23:36:58 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201602172336.u1HNawML011531@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Wed, 17 Feb 2016 23:36:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295728 - projects/mips64-clang/sys/netinet X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 17 Feb 2016 23:36:59 -0000 Author: sbruno Date: Wed Feb 17 23:36:58 2016 New Revision: 295728 URL: https://svnweb.freebsd.org/changeset/base/295728 Log: char is, apparently, not always unsigned ... who knew. Submitted by: cem Modified: projects/mips64-clang/sys/netinet/ip_var.h Modified: projects/mips64-clang/sys/netinet/ip_var.h ============================================================================== --- projects/mips64-clang/sys/netinet/ip_var.h Wed Feb 17 22:58:47 2016 (r295727) +++ projects/mips64-clang/sys/netinet/ip_var.h Wed Feb 17 23:36:58 2016 (r295728) @@ -75,7 +75,7 @@ struct ipq { struct ipoption { struct in_addr ipopt_dst; /* first-hop dst if source routed */ - char ipopt_list[MAX_IPOPTLEN]; /* options proper */ + uint8_t ipopt_list[MAX_IPOPTLEN]; /* options proper */ }; /* From owner-svn-src-projects@freebsd.org Thu Feb 18 00:00:37 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BD871AAC90D for ; Thu, 18 Feb 2016 00:00:37 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 8B3101C3D; Thu, 18 Feb 2016 00:00:37 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1I00adh017654; Thu, 18 Feb 2016 00:00:36 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1I00aFV017653; Thu, 18 Feb 2016 00:00:36 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201602180000.u1I00aFV017653@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Thu, 18 Feb 2016 00:00:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295731 - projects/mips64-clang/sys/conf X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 18 Feb 2016 00:00:37 -0000 Author: sbruno Date: Thu Feb 18 00:00:36 2016 New Revision: 295731 URL: https://svnweb.freebsd.org/changeset/base/295731 Log: Mark these three mips ASM files as not buildable by clang IAS Modified: projects/mips64-clang/sys/conf/Makefile.mips Modified: projects/mips64-clang/sys/conf/Makefile.mips ============================================================================== --- projects/mips64-clang/sys/conf/Makefile.mips Wed Feb 17 23:55:24 2016 (r295730) +++ projects/mips64-clang/sys/conf/Makefile.mips Thu Feb 18 00:00:36 2016 (r295731) @@ -28,6 +28,10 @@ S= ../../.. .endif .include "$S/conf/kern.pre.mk" +ASM_CFLAGS.exception.S= ${CLANG_NO_IAS} +ASM_CFLAGS.fp.S= ${CLANG_NO_IAS} +ASM_CFLAGS.swtch.S= ${CLANG_NO_IAS} + INCLUDES+= -I$S/contrib/libfdt LDSCRIPT_NAME?=ldscript.$M From owner-svn-src-projects@freebsd.org Thu Feb 18 00:38:03 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 155A6AABC38 for ; Thu, 18 Feb 2016 00:38:03 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 B17EC160A; Thu, 18 Feb 2016 00:38:02 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1I0c1U3032087; Thu, 18 Feb 2016 00:38:01 GMT (envelope-from gjb@FreeBSD.org) Received: (from gjb@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1I0bxad032053; Thu, 18 Feb 2016 00:37:59 GMT (envelope-from gjb@FreeBSD.org) Message-Id: <201602180037.u1I0bxad032053@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: gjb set sender to gjb@FreeBSD.org using -f From: Glen Barber Date: Thu, 18 Feb 2016 00:37:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295734 - in projects/release-pkg: . bin/sh/tests cddl/usr.sbin/dtrace/tests/common contrib/elftoolchain/elfcopy gnu/usr.bin/rcs/doc lib/clang/libllvmdebuginfodwarf lib/clang/libllvmdeb... X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 18 Feb 2016 00:38:03 -0000 Author: gjb Date: Thu Feb 18 00:37:58 2016 New Revision: 295734 URL: https://svnweb.freebsd.org/changeset/base/295734 Log: MFH Sponsored by: The FreeBSD Foundation Added: projects/release-pkg/lib/clang/libllvmdebuginfodwarf/Makefile.depend - copied unchanged from r295733, head/lib/clang/libllvmdebuginfodwarf/Makefile.depend projects/release-pkg/lib/clang/libllvmdebuginfopdb/Makefile.depend - copied unchanged from r295733, head/lib/clang/libllvmdebuginfopdb/Makefile.depend projects/release-pkg/lib/clang/libllvmlibdriver/Makefile.depend - copied unchanged from r295733, head/lib/clang/libllvmlibdriver/Makefile.depend projects/release-pkg/lib/clang/libllvmlto/Makefile.depend - copied unchanged from r295733, head/lib/clang/libllvmlto/Makefile.depend projects/release-pkg/lib/clang/libllvmmirparser/Makefile.depend - copied unchanged from r295733, head/lib/clang/libllvmmirparser/Makefile.depend projects/release-pkg/lib/clang/libllvmorcjit/Makefile.depend - copied unchanged from r295733, head/lib/clang/libllvmorcjit/Makefile.depend projects/release-pkg/lib/clang/libllvmpasses/Makefile.depend - copied unchanged from r295733, head/lib/clang/libllvmpasses/Makefile.depend projects/release-pkg/lib/libpe/Makefile.depend - copied unchanged from r295733, head/lib/libpe/Makefile.depend projects/release-pkg/libexec/makewhatis.local/ - copied from r295733, head/libexec/makewhatis.local/ projects/release-pkg/sys/arm/allwinner/a10_codec.c - copied unchanged from r295733, head/sys/arm/allwinner/a10_codec.c projects/release-pkg/sys/arm/allwinner/a10_padconf.c - copied unchanged from r295733, head/sys/arm/allwinner/a10_padconf.c projects/release-pkg/sys/arm/allwinner/a20/a20_padconf.c - copied unchanged from r295733, head/sys/arm/allwinner/a20/a20_padconf.c projects/release-pkg/sys/arm/allwinner/allwinner_pinctrl.h - copied unchanged from r295733, head/sys/arm/allwinner/allwinner_pinctrl.h projects/release-pkg/sys/arm64/cavium/thunder_pcie_pem.h - copied unchanged from r295733, head/sys/arm64/cavium/thunder_pcie_pem.h projects/release-pkg/sys/arm64/cavium/thunder_pcie_pem_fdt.c - copied unchanged from r295733, head/sys/arm64/cavium/thunder_pcie_pem_fdt.c projects/release-pkg/usr.bin/bmake/tests/Makefile.inc - copied unchanged from r295733, head/usr.bin/bmake/tests/Makefile.inc projects/release-pkg/usr.bin/clang/bugpoint/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/bugpoint/Makefile.depend projects/release-pkg/usr.bin/clang/llc/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llc/Makefile.depend projects/release-pkg/usr.bin/clang/lli/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/lli/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-ar/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-ar/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-as/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-as/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-bcanalyzer/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-bcanalyzer/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-cov/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-cov/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-cxxdump/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-cxxdump/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-diff/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-diff/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-dis/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-dis/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-dwarfdump/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-dwarfdump/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-extract/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-extract/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-link/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-link/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-lto/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-lto/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-mc/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-mc/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-nm/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-nm/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-objdump/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-objdump/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-pdbdump/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-pdbdump/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-profdata/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-profdata/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-rtdyld/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-rtdyld/Makefile.depend projects/release-pkg/usr.bin/clang/llvm-symbolizer/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/llvm-symbolizer/Makefile.depend projects/release-pkg/usr.bin/clang/macho-dump/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/macho-dump/Makefile.depend projects/release-pkg/usr.bin/clang/opt/Makefile.depend - copied unchanged from r295733, head/usr.bin/clang/opt/Makefile.depend projects/release-pkg/usr.bin/truss/Makefile.depend - copied unchanged from r295733, head/usr.bin/truss/Makefile.depend Deleted: projects/release-pkg/usr.bin/truss/Makefile.depend.amd64 Modified: projects/release-pkg/Makefile.inc1 projects/release-pkg/bin/sh/tests/Makefile projects/release-pkg/cddl/usr.sbin/dtrace/tests/common/Makefile projects/release-pkg/contrib/elftoolchain/elfcopy/main.c projects/release-pkg/gnu/usr.bin/rcs/doc/rcs.ms projects/release-pkg/lib/libc/tests/Makefile projects/release-pkg/libexec/Makefile projects/release-pkg/libexec/rtld-elf/tests/Makefile projects/release-pkg/sbin/kldstat/Makefile.depend projects/release-pkg/secure/lib/libssh/Makefile.depend projects/release-pkg/share/misc/committers-ports.dot projects/release-pkg/share/mk/bsd.dep.mk projects/release-pkg/share/mk/bsd.init.mk projects/release-pkg/share/mk/bsd.lib.mk projects/release-pkg/share/mk/bsd.obj.mk projects/release-pkg/share/mk/bsd.prog.mk projects/release-pkg/share/mk/bsd.subdir.mk projects/release-pkg/share/mk/bsd.test.mk projects/release-pkg/sys/arm/allwinner/a10_ahci.c projects/release-pkg/sys/arm/allwinner/a10_gpio.c projects/release-pkg/sys/arm/allwinner/a20/a20_if_dwc.c projects/release-pkg/sys/arm/allwinner/a20/files.a20 projects/release-pkg/sys/arm/allwinner/axp209.c projects/release-pkg/sys/arm/allwinner/files.a10 projects/release-pkg/sys/arm/allwinner/files.allwinner projects/release-pkg/sys/arm/allwinner/if_emac.c projects/release-pkg/sys/arm/arm/bus_space_generic.c projects/release-pkg/sys/arm/arm/devmap.c projects/release-pkg/sys/arm/arm/fiq.c projects/release-pkg/sys/arm/arm/genassym.c projects/release-pkg/sys/arm/arm/locore-v6.S projects/release-pkg/sys/arm/arm/ofw_machdep.c projects/release-pkg/sys/arm/arm/pmap-v6.c projects/release-pkg/sys/arm/at91/at91_machdep.c projects/release-pkg/sys/arm/broadcom/bcm2835/bcm2835_dma.c projects/release-pkg/sys/arm/broadcom/bcm2835/bcm2835_dma.h projects/release-pkg/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c projects/release-pkg/sys/arm/cavium/cns11xx/econa_machdep.c projects/release-pkg/sys/arm/conf/A10 projects/release-pkg/sys/arm/conf/A20 projects/release-pkg/sys/arm/conf/CUBIEBOARD projects/release-pkg/sys/arm/freescale/imx/imx6_machdep.c projects/release-pkg/sys/arm/include/devmap.h projects/release-pkg/sys/arm/include/pmap-v6.h projects/release-pkg/sys/arm/include/pmap_var.h projects/release-pkg/sys/arm/include/vm.h projects/release-pkg/sys/arm/mv/mv_localbus.c projects/release-pkg/sys/arm/mv/mv_machdep.c projects/release-pkg/sys/arm/mv/mv_pci.c projects/release-pkg/sys/arm/mv/orion/db88f5xxx.c projects/release-pkg/sys/arm/ti/ti_scm.c projects/release-pkg/sys/arm/versatile/versatile_machdep.c projects/release-pkg/sys/arm/xscale/i8134x/crb_machdep.c projects/release-pkg/sys/arm/xscale/ixp425/avila_machdep.c projects/release-pkg/sys/arm/xscale/pxa/pxa_machdep.c projects/release-pkg/sys/arm64/arm64/ofw_machdep.c projects/release-pkg/sys/arm64/cavium/thunder_pcie_common.h projects/release-pkg/sys/arm64/cavium/thunder_pcie_pem.c projects/release-pkg/sys/arm64/include/devmap.h projects/release-pkg/sys/boot/efi/boot1/Makefile.depend projects/release-pkg/sys/boot/fdt/dts/arm/bananapi.dts projects/release-pkg/sys/boot/fdt/dts/arm/cubieboard.dts projects/release-pkg/sys/boot/fdt/dts/arm/pandaboard-common.dtsi projects/release-pkg/sys/boot/fdt/dts/arm/sun4i-a10.dtsi projects/release-pkg/sys/boot/fdt/dts/arm/sun7i-a20.dtsi projects/release-pkg/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c projects/release-pkg/sys/conf/files.arm64 projects/release-pkg/sys/conf/kern.post.mk projects/release-pkg/sys/conf/kmod.mk projects/release-pkg/sys/conf/options.arm projects/release-pkg/sys/dev/ae/if_ae.c projects/release-pkg/sys/dev/ata/chipsets/ata-promise.c projects/release-pkg/sys/dev/ata/chipsets/ata-serverworks.c projects/release-pkg/sys/dev/filemon/filemon_wrapper.c projects/release-pkg/sys/dev/ichsmb/ichsmb_pci.c projects/release-pkg/sys/dev/mmc/mmcsd.c projects/release-pkg/sys/dev/ofw/openfirm.h projects/release-pkg/sys/dev/pci/pci_pci.c projects/release-pkg/sys/dev/random/nehemiah.c projects/release-pkg/sys/dev/tsec/if_tsec_fdt.c projects/release-pkg/sys/dev/uart/uart_cpu_fdt.c projects/release-pkg/sys/dev/uart/uart_cpu_powerpc.c projects/release-pkg/sys/dev/virtio/block/virtio_blk.c projects/release-pkg/sys/dev/vt/hw/ofwfb/ofwfb.c projects/release-pkg/sys/fs/nullfs/null_vnops.c projects/release-pkg/sys/geom/geom.h projects/release-pkg/sys/geom/geom_io.c projects/release-pkg/sys/geom/journal/g_journal.c projects/release-pkg/sys/geom/mirror/g_mirror.c projects/release-pkg/sys/geom/raid/g_raid.c projects/release-pkg/sys/geom/raid3/g_raid3.c projects/release-pkg/sys/kern/kern_physio.c projects/release-pkg/sys/kern/vfs_subr.c projects/release-pkg/sys/mips/mips/ofw_machdep.c projects/release-pkg/sys/netinet/sctp_asconf.c projects/release-pkg/sys/netinet/sctp_bsd_addr.c projects/release-pkg/sys/netinet/sctp_input.c projects/release-pkg/sys/netinet/sctp_output.c projects/release-pkg/sys/netinet/sctp_pcb.c projects/release-pkg/sys/netinet/sctp_pcb.h projects/release-pkg/sys/netinet/sctp_timer.c projects/release-pkg/sys/netinet/sctp_timer.h projects/release-pkg/sys/netinet/sctputil.c projects/release-pkg/sys/netinet6/in6.c projects/release-pkg/sys/netinet6/nd6.h projects/release-pkg/sys/netinet6/nd6_nbr.c projects/release-pkg/sys/netinet6/nd6_rtr.c projects/release-pkg/sys/powerpc/booke/pmap.c projects/release-pkg/sys/powerpc/include/pte.h projects/release-pkg/sys/powerpc/ofw/ofw_machdep.c projects/release-pkg/sys/powerpc/ofw/ofw_syscons.c projects/release-pkg/sys/powerpc/ps3/ps3bus.c projects/release-pkg/sys/riscv/include/atomic.h projects/release-pkg/sys/riscv/include/ucontext.h projects/release-pkg/sys/riscv/riscv/swtch.S projects/release-pkg/sys/riscv/riscv/vm_machdep.c projects/release-pkg/sys/sys/param.h projects/release-pkg/sys/sys/sockbuf.h projects/release-pkg/sys/sys/socketvar.h projects/release-pkg/targets/pseudo/clang/Makefile.depend projects/release-pkg/targets/pseudo/userland/lib/Makefile.depend projects/release-pkg/tests/sys/Makefile projects/release-pkg/tests/sys/pjdfstest/tests/Makefile projects/release-pkg/usr.bin/calendar/calendars/calendar.freebsd projects/release-pkg/usr.bin/elfcopy/Makefile.depend projects/release-pkg/usr.bin/kdump/Makefile.depend projects/release-pkg/usr.bin/mail/def.h projects/release-pkg/usr.bin/makewhatis/Makefile projects/release-pkg/usr.bin/truss/setup.c projects/release-pkg/usr.bin/truss/syscall.h projects/release-pkg/usr.bin/truss/syscalls.c projects/release-pkg/usr.sbin/amd/include/Makefile projects/release-pkg/usr.sbin/cron/cron/do_command.c projects/release-pkg/usr.sbin/cron/crontab/crontab.c projects/release-pkg/usr.sbin/ctld/Makefile.depend Directory Properties: projects/release-pkg/ (props changed) projects/release-pkg/cddl/ (props changed) projects/release-pkg/contrib/elftoolchain/ (props changed) projects/release-pkg/lib/libc/ (props changed) projects/release-pkg/sbin/ (props changed) projects/release-pkg/share/ (props changed) projects/release-pkg/sys/ (props changed) projects/release-pkg/sys/boot/ (props changed) projects/release-pkg/sys/cddl/contrib/opensolaris/ (props changed) projects/release-pkg/sys/conf/ (props changed) projects/release-pkg/targets/ (props changed) projects/release-pkg/usr.bin/calendar/ (props changed) Modified: projects/release-pkg/Makefile.inc1 ============================================================================== --- projects/release-pkg/Makefile.inc1 Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/Makefile.inc1 Thu Feb 18 00:37:58 2016 (r295734) @@ -1128,7 +1128,7 @@ distrib-dirs distribution: .MAKE .PHONY .if make(distribution) ${_+_}cd ${.CURDIR}; ${CROSSENV} PATH=${TMPPATH} \ ${MAKE} -f Makefile.inc1 ${IMAKE_INSTALL} \ - METALOG=${METALOG} installconfig + METALOG=${METALOG} MK_TESTS=no installconfig .endif # Modified: projects/release-pkg/bin/sh/tests/Makefile ============================================================================== --- projects/release-pkg/bin/sh/tests/Makefile Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/bin/sh/tests/Makefile Thu Feb 18 00:37:58 2016 (r295734) @@ -14,6 +14,4 @@ TESTS_SUBDIRS+= parameters TESTS_SUBDIRS+= parser TESTS_SUBDIRS+= set-e -SUBDIR_PARALLEL= - .include Modified: projects/release-pkg/cddl/usr.sbin/dtrace/tests/common/Makefile ============================================================================== --- projects/release-pkg/cddl/usr.sbin/dtrace/tests/common/Makefile Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/cddl/usr.sbin/dtrace/tests/common/Makefile Thu Feb 18 00:37:58 2016 (r295734) @@ -86,6 +86,4 @@ TESTS_SUBDIRS+= aggs \ .PATH: ${.CURDIR:H:H:H:H:H}/tests KYUAFILE= YES -SUBDIR_PARALLEL= - .include Modified: projects/release-pkg/contrib/elftoolchain/elfcopy/main.c ============================================================================== --- projects/release-pkg/contrib/elftoolchain/elfcopy/main.c Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/contrib/elftoolchain/elfcopy/main.c Thu Feb 18 00:37:58 2016 (r295734) @@ -641,6 +641,18 @@ create_file(struct elfcopy *ecp, const c * ELF object before processing. */ if (ecp->itf != ETF_ELF) { + /* + * If the output object is not an ELF file, choose an arbitrary + * ELF format for the intermediate file. srec, ihex and binary + * formats are independent of class, endianness and machine + * type so these choices do not affect the output. + */ + if (ecp->otf != ETF_ELF) { + if (ecp->oec == ELFCLASSNONE) + ecp->oec = ELFCLASS64; + if (ecp->oed == ELFDATANONE) + ecp->oed = ELFDATA2LSB; + } create_tempfile(&elftemp, &efd); if ((ecp->eout = elf_begin(efd, ELF_C_WRITE, NULL)) == NULL) errx(EXIT_FAILURE, "elf_begin() failed: %s", Modified: projects/release-pkg/gnu/usr.bin/rcs/doc/rcs.ms ============================================================================== --- projects/release-pkg/gnu/usr.bin/rcs/doc/rcs.ms Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/gnu/usr.bin/rcs/doc/rcs.ms Thu Feb 18 00:37:58 2016 (r295734) @@ -16,7 +16,7 @@ .R .. .de Id -.ND \\$4 +.ND 1 June 1995 .. .Id $FreeBSD$ .RP Copied: projects/release-pkg/lib/clang/libllvmdebuginfodwarf/Makefile.depend (from r295733, head/lib/clang/libllvmdebuginfodwarf/Makefile.depend) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/release-pkg/lib/clang/libllvmdebuginfodwarf/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/clang/libllvmdebuginfodwarf/Makefile.depend) @@ -0,0 +1,15 @@ +# $FreeBSD$ +# Autogenerated - do NOT edit! + +DIRDEPS = \ + include \ + include/xlocale \ + lib/libc++ \ + lib/msun \ + + +.include + +.if ${DEP_RELDIR} == ${_DEP_RELDIR} +# local dependencies - needed for -jN in clean tree +.endif Copied: projects/release-pkg/lib/clang/libllvmdebuginfopdb/Makefile.depend (from r295733, head/lib/clang/libllvmdebuginfopdb/Makefile.depend) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/release-pkg/lib/clang/libllvmdebuginfopdb/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/clang/libllvmdebuginfopdb/Makefile.depend) @@ -0,0 +1,15 @@ +# $FreeBSD$ +# Autogenerated - do NOT edit! + +DIRDEPS = \ + include \ + include/xlocale \ + lib/libc++ \ + lib/msun \ + + +.include + +.if ${DEP_RELDIR} == ${_DEP_RELDIR} +# local dependencies - needed for -jN in clean tree +.endif Copied: projects/release-pkg/lib/clang/libllvmlibdriver/Makefile.depend (from r295733, head/lib/clang/libllvmlibdriver/Makefile.depend) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/release-pkg/lib/clang/libllvmlibdriver/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/clang/libllvmlibdriver/Makefile.depend) @@ -0,0 +1,18 @@ +# $FreeBSD$ +# Autogenerated - do NOT edit! + +DIRDEPS = \ + include \ + include/xlocale \ + lib/libc++ \ + lib/msun \ + usr.bin/clang/tblgen.host \ + + +.include + +.if ${DEP_RELDIR} == ${_DEP_RELDIR} +# local dependencies - needed for -jN in clean tree +LibDriver.o: Options.inc.h +LibDriver.po: Options.inc.h +.endif Copied: projects/release-pkg/lib/clang/libllvmlto/Makefile.depend (from r295733, head/lib/clang/libllvmlto/Makefile.depend) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/release-pkg/lib/clang/libllvmlto/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/clang/libllvmlto/Makefile.depend) @@ -0,0 +1,18 @@ +# $FreeBSD$ +# Autogenerated - do NOT edit! + +DIRDEPS = \ + include \ + include/xlocale \ + lib/libc++ \ + lib/msun \ + usr.bin/clang/tblgen.host \ + + +.include + +.if ${DEP_RELDIR} == ${_DEP_RELDIR} +# local dependencies - needed for -jN in clean tree +LTOCodeGenerator.o: Intrinsics.inc.h +LTOCodeGenerator.po: Intrinsics.inc.h +.endif Copied: projects/release-pkg/lib/clang/libllvmmirparser/Makefile.depend (from r295733, head/lib/clang/libllvmmirparser/Makefile.depend) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/release-pkg/lib/clang/libllvmmirparser/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/clang/libllvmmirparser/Makefile.depend) @@ -0,0 +1,15 @@ +# $FreeBSD$ +# Autogenerated - do NOT edit! + +DIRDEPS = \ + include \ + include/xlocale \ + lib/libc++ \ + lib/msun \ + + +.include + +.if ${DEP_RELDIR} == ${_DEP_RELDIR} +# local dependencies - needed for -jN in clean tree +.endif Copied: projects/release-pkg/lib/clang/libllvmorcjit/Makefile.depend (from r295733, head/lib/clang/libllvmorcjit/Makefile.depend) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/release-pkg/lib/clang/libllvmorcjit/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/clang/libllvmorcjit/Makefile.depend) @@ -0,0 +1,15 @@ +# $FreeBSD$ +# Autogenerated - do NOT edit! + +DIRDEPS = \ + include \ + include/xlocale \ + lib/libc++ \ + lib/msun \ + + +.include + +.if ${DEP_RELDIR} == ${_DEP_RELDIR} +# local dependencies - needed for -jN in clean tree +.endif Copied: projects/release-pkg/lib/clang/libllvmpasses/Makefile.depend (from r295733, head/lib/clang/libllvmpasses/Makefile.depend) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/release-pkg/lib/clang/libllvmpasses/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/clang/libllvmpasses/Makefile.depend) @@ -0,0 +1,18 @@ +# $FreeBSD$ +# Autogenerated - do NOT edit! + +DIRDEPS = \ + include \ + include/xlocale \ + lib/libc++ \ + lib/msun \ + usr.bin/clang/tblgen.host \ + + +.include + +.if ${DEP_RELDIR} == ${_DEP_RELDIR} +# local dependencies - needed for -jN in clean tree +PassBuilder.o: Intrinsics.inc.h +PassBuilder.po: Intrinsics.inc.h +.endif Modified: projects/release-pkg/lib/libc/tests/Makefile ============================================================================== --- projects/release-pkg/lib/libc/tests/Makefile Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/lib/libc/tests/Makefile Thu Feb 18 00:37:58 2016 (r295734) @@ -26,6 +26,8 @@ TESTS_SUBDIRS+= termios TESTS_SUBDIRS+= tls TESTS_SUBDIRS+= ttyio +SUBDIR_DEPEND_tls= tls_dso + .if ${MK_LOCALES} != "no" TESTS_SUBDIRS+= locale .endif Copied: projects/release-pkg/lib/libpe/Makefile.depend (from r295733, head/lib/libpe/Makefile.depend) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/release-pkg/lib/libpe/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/lib/libpe/Makefile.depend) @@ -0,0 +1,13 @@ +# $FreeBSD$ +# Autogenerated - do NOT edit! + +DIRDEPS = \ + include \ + include/xlocale \ + + +.include + +.if ${DEP_RELDIR} == ${_DEP_RELDIR} +# local dependencies - needed for -jN in clean tree +.endif Modified: projects/release-pkg/libexec/Makefile ============================================================================== --- projects/release-pkg/libexec/Makefile Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/libexec/Makefile Thu Feb 18 00:37:58 2016 (r295734) @@ -10,6 +10,7 @@ SUBDIR= ${_atf} \ ${_dma} \ getty \ ${_mail.local} \ + ${_makewhatis.local} \ ${_mknetid} \ ${_pppoed} \ revnetgroup \ @@ -88,6 +89,10 @@ _mail.local= mail.local _smrsh= smrsh .endif +.if ${MK_MAN_UTILS} != "no" +_makewhatis.local= makewhatis.local +.endif + .if ${MK_TALK} != "no" SUBDIR+= talkd .endif Modified: projects/release-pkg/libexec/rtld-elf/tests/Makefile ============================================================================== --- projects/release-pkg/libexec/rtld-elf/tests/Makefile Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/libexec/rtld-elf/tests/Makefile Thu Feb 18 00:37:58 2016 (r295734) @@ -7,6 +7,7 @@ FILESGROUPS= TESTS TESTSPACKAGE= ${PACKAGE} SUBDIR+= libpythagoras target +SUBDIR_DEPEND_target= libpythagoras ATF_TESTS_C= ld_library_pathfds .include Modified: projects/release-pkg/sbin/kldstat/Makefile.depend ============================================================================== --- projects/release-pkg/sbin/kldstat/Makefile.depend Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/sbin/kldstat/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734) @@ -8,6 +8,7 @@ DIRDEPS = \ lib/${CSU_DIR} \ lib/libc \ lib/libcompiler_rt \ + lib/libutil \ .include Modified: projects/release-pkg/secure/lib/libssh/Makefile.depend ============================================================================== --- projects/release-pkg/secure/lib/libssh/Makefile.depend Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/secure/lib/libssh/Makefile.depend Thu Feb 18 00:37:58 2016 (r295734) @@ -6,6 +6,7 @@ DIRDEPS = \ gnu/lib/libgcc \ include \ include/arpa \ + include/gssapi \ include/xlocale \ lib/${CSU_DIR} \ lib/libc \ Modified: projects/release-pkg/share/misc/committers-ports.dot ============================================================================== --- projects/release-pkg/share/misc/committers-ports.dot Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/share/misc/committers-ports.dot Thu Feb 18 00:37:58 2016 (r295734) @@ -175,6 +175,7 @@ nork [label="Norikatsu Shigemura\nnork@F novel [label="Roman Bogorodskiy\nnovel@FreeBSD.org\n2005/03/07"] nox [label="Juergen Lock\nnox@FreeBSD.org\n2006/12/22"] obrien [label="David E. O'Brien\nobrien@FreeBSD.org\n1996/10/29"] +olivier [label="Olivier Cochard-Labbe\nolivier@FreeBSD.org\n2016/02/02"] olivierd [label="Olivier Duchateau\nolivierd@FreeBSD.org\n2012/05/29"] osa [label="Sergey A. Osokin\nosa@FreeBSD.org\n2003/06/04"] pat [label="Patrick Li\npat@FreeBSD.org\n2001/11/14"] @@ -400,6 +401,7 @@ itetcu -> sylvio jadawin -> bapt jadawin -> flo +jadawin -> olivier jadawin -> riggs jadawin -> sbz jadawin -> wen Modified: projects/release-pkg/share/mk/bsd.dep.mk ============================================================================== --- projects/release-pkg/share/mk/bsd.dep.mk Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/share/mk/bsd.dep.mk Thu Feb 18 00:37:58 2016 (r295734) @@ -5,6 +5,11 @@ # # +++ variables +++ # +# CLEANDEPENDDIRS Additional directories to remove for the cleandepend +# target. +# +# CLEANDEPENDFILES Additional files to remove for the cleandepend target. +# # CTAGS A tags file generation program [gtags] # # CTAGSFLAGS Options for ctags(1) [not set] @@ -27,7 +32,8 @@ # +++ targets +++ # # cleandepend: -# Remove depend and tags file +# remove ${CLEANDEPENDFILES}; remove ${CLEANDEPENDDIRS} and all +# contents. # # depend: # Make the dependencies for the source files, and store @@ -59,7 +65,7 @@ DEPENDFILE?= .depend .if ${MK_DIRDEPS_BUILD} == "no" .MAKE.DEPENDFILE= ${DEPENDFILE} .endif -DEPENDFILES= ${DEPENDFILE} +CLEANDEPENDFILES= ${DEPENDFILE} ${DEPENDFILE}.* # Keep `tags' here, before SRCS are mangled below for `depend'. .if !target(tags) && defined(SRCS) && !defined(NO_TAGS) @@ -156,7 +162,6 @@ ${_D}.po: ${_DSRC} ${POBJS:S/^${_D}.po$/ .if ${MK_FAST_DEPEND} == "yes" && \ (${.MAKE.MODE:Mmeta} == "" || ${.MAKE.MODE:Mnofilemon} != "") -DEPENDFILES+= ${DEPENDFILE}.* DEPEND_MP?= -MP # Handle OBJS=../somefile.o hacks. Just replace '/' rather than use :T to # avoid collisions. @@ -205,14 +210,6 @@ depend: beforedepend ${DEPENDFILE} after # This could be simpler with bmake :tW but needs to support fmake for MFC. _CFLAGS_INCLUDES= ${CFLAGS:Q:S/\\ /,/g:C/-include,/-include%/g:C/,/ /g:M-include*:C/%/ /g} _CXXFLAGS_INCLUDES= ${CXXFLAGS:Q:S/\\ /,/g:C/-include,/-include%/g:C/,/ /g:M-include*:C/%/ /g} -# XXX: Temporary hack to workaround .depend files not tracking -include -_hdrincludes=${_CFLAGS_INCLUDES:M*.h} ${_CXXFLAGS_INCLUDES:M*.h} -.for _hdr in ${_hdrincludes:O:u} -.if exists(${_hdr}) -${OBJS} ${POBJS} ${SOBJS}: ${_hdr} -.endif -.endfor -.undef _hdrincludes # Different types of sources are compiled with slightly different flags. # Split up the sources, and filter out headers and non-applicable flags. @@ -261,16 +258,20 @@ afterdepend: .endif .endif -.if !target(cleandepend) -cleandepend: -.if defined(SRCS) .if ${CTAGS:T} == "gtags" - rm -f ${DEPENDFILES} GPATH GRTAGS GSYMS GTAGS +CLEANDEPENDFILES+= GPATH GRTAGS GSYMS GTAGS .if defined(HTML) - rm -rf HTML +CLEANDEPENDDIRS+= HTML .endif .else - rm -f ${DEPENDFILES} tags +CLEANDEPENDFILES+= tags +.endif +.if !target(cleandepend) +cleandepend: +.if defined(SRCS) + rm -f ${CLEANDEPENDFILES} +.if !empty(CLEANDEPENDDIRS) + rm -rf ${CLEANDEPENDDIRS} .endif .endif .endif Modified: projects/release-pkg/share/mk/bsd.init.mk ============================================================================== --- projects/release-pkg/share/mk/bsd.init.mk Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/share/mk/bsd.init.mk Thu Feb 18 00:37:58 2016 (r295734) @@ -15,6 +15,10 @@ ____: .endif .include .MAIN: all +beforebuild: .PHONY .NOTMAIN +.if !defined(_SKIP_BUILD) +all: beforebuild .WAIT +.endif .if ${.MAKE.LEVEL:U1} == 0 && ${BUILD_AT_LEVEL0:Uyes:tl} == "no" && !make(clean*) # this tells lib.mk and prog.mk to not actually build anything Modified: projects/release-pkg/share/mk/bsd.lib.mk ============================================================================== --- projects/release-pkg/share/mk/bsd.lib.mk Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/share/mk/bsd.lib.mk Thu Feb 18 00:37:58 2016 (r295734) @@ -139,11 +139,6 @@ PO_FLAG=-pg -c ${.IMPSRC} -o ${.TARGET} ${CTFCONVERT_CMD} -.if !defined(_SKIP_BUILD) -all: beforebuild .WAIT -beforebuild: objwarn -.endif - _LIBDIR:=${LIBDIR} _SHLIBDIR:=${SHLIBDIR} Modified: projects/release-pkg/share/mk/bsd.obj.mk ============================================================================== --- projects/release-pkg/share/mk/bsd.obj.mk Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/share/mk/bsd.obj.mk Thu Feb 18 00:37:58 2016 (r295734) @@ -89,6 +89,7 @@ objwarn: canonical ${CANONICALOBJDIR}" .endif .endif +beforebuild: objwarn .if !defined(NO_OBJ) .if !target(obj) Modified: projects/release-pkg/share/mk/bsd.prog.mk ============================================================================== --- projects/release-pkg/share/mk/bsd.prog.mk Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/share/mk/bsd.prog.mk Thu Feb 18 00:37:58 2016 (r295734) @@ -155,8 +155,7 @@ MAN1= ${MAN} .if defined(_SKIP_BUILD) all: .else -all: beforebuild .WAIT ${PROG} ${SCRIPTS} -beforebuild: objwarn +all: ${PROG} ${SCRIPTS} .if ${MK_MAN} != "no" all: _manpages .endif Modified: projects/release-pkg/share/mk/bsd.subdir.mk ============================================================================== --- projects/release-pkg/share/mk/bsd.subdir.mk Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/share/mk/bsd.subdir.mk Thu Feb 18 00:37:58 2016 (r295734) @@ -89,6 +89,7 @@ ${__stage}install: install: beforeinstall realinstall afterinstall .ORDER: beforeinstall realinstall afterinstall .endif +.ORDER: all install # SUBDIR recursing may be disabled for MK_DIRDEPS_BUILD .if !target(_SUBDIR) Modified: projects/release-pkg/share/mk/bsd.test.mk ============================================================================== --- projects/release-pkg/share/mk/bsd.test.mk Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/share/mk/bsd.test.mk Thu Feb 18 00:37:58 2016 (r295734) @@ -69,6 +69,7 @@ _TESTS= SUBDIR+= ${ts} .endif .endfor +SUBDIR_PARALLEL= t .endif # it is rare for test cases to have man pages Modified: projects/release-pkg/sys/arm/allwinner/a10_ahci.c ============================================================================== --- projects/release-pkg/sys/arm/allwinner/a10_ahci.c Thu Feb 18 00:26:21 2016 (r295733) +++ projects/release-pkg/sys/arm/allwinner/a10_ahci.c Thu Feb 18 00:37:58 2016 (r295734) @@ -41,7 +41,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include @@ -49,7 +48,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include "gpio_if.h" /* * Allwinner a1x/a2x/a8x SATA attachment. This is just the AHCI register @@ -119,9 +117,6 @@ __FBSDID("$FreeBSD$"); #define AHCI_P0PHYCR 0x0078 #define AHCI_P0PHYSR 0x007C -/* Kludge for CUBIEBOARD (and Banana PI too) */ -#define GPIO_AHCI_PWR 40 - static void inline ahci_set(struct resource *m, bus_size_t off, uint32_t set) { @@ -298,7 +293,6 @@ ahci_a10_probe(device_t dev) static int ahci_a10_attach(device_t dev) { - device_t gpio; int error; struct ahci_controller *ctlr; @@ -316,19 +310,6 @@ ahci_a10_attach(device_t dev) /* Turn on the PLL for SATA */ a10_clk_ahci_activate(); - /* Apply power to the drive, if any */ - gpio = devclass_get_device(devclass_find("gpio"), 0); - if (gpio == NULL) { - device_printf(dev, - "GPIO device not yet present (SATA won't work).\n"); - bus_release_resource(dev, SYS_RES_MEMORY, ctlr->r_rid, - ctlr->r_mem); - return (ENXIO); - } - GPIO_PIN_SETFLAGS(gpio, GPIO_AHCI_PWR, GPIO_PIN_OUTPUT); - GPIO_PIN_SET(gpio, GPIO_AHCI_PWR, GPIO_PIN_HIGH); - DELAY(10000); - /* Reset controller */ if ((error = ahci_a10_ctlr_reset(dev)) != 0) { bus_release_resource(dev, SYS_RES_MEMORY, ctlr->r_rid, Copied: projects/release-pkg/sys/arm/allwinner/a10_codec.c (from r295733, head/sys/arm/allwinner/a10_codec.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/release-pkg/sys/arm/allwinner/a10_codec.c Thu Feb 18 00:37:58 2016 (r295734, copy of r295733, head/sys/arm/allwinner/a10_codec.c) @@ -0,0 +1,850 @@ +/*- + * Copyright (c) 2014-2016 Jared D. McNeill + * 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 ``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. + * + * $FreeBSD$ + */ + +/* + * Allwinner A10/A20 Audio Codec + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include +#include + +#include +#include + +#include + +#include "sunxi_dma_if.h" +#include "mixer_if.h" +#include "gpio_if.h" + +#define TX_TRIG_LEVEL 0xf +#define RX_TRIG_LEVEL 0x7 +#define DRQ_CLR_CNT 0x3 + +#define AC_DAC_DPC 0x00 +#define DAC_DPC_EN_DA 0x80000000 +#define AC_DAC_FIFOC 0x04 +#define DAC_FIFOC_FS_SHIFT 29 +#define DAC_FIFOC_FS_MASK (7U << DAC_FIFOC_FS_SHIFT) +#define DAC_FS_48KHZ 0 +#define DAC_FS_32KHZ 1 +#define DAC_FS_24KHZ 2 +#define DAC_FS_16KHZ 3 +#define DAC_FS_12KHZ 4 +#define DAC_FS_8KHZ 5 +#define DAC_FS_192KHZ 6 +#define DAC_FS_96KHZ 7 +#define DAC_FIFOC_FIFO_MODE_SHIFT 24 +#define DAC_FIFOC_FIFO_MODE_MASK (3U << DAC_FIFOC_FIFO_MODE_SHIFT) +#define FIFO_MODE_24_31_8 0 +#define FIFO_MODE_16_31_16 0 +#define FIFO_MODE_16_15_0 1 +#define DAC_FIFOC_DRQ_CLR_CNT_SHIFT 21 +#define DAC_FIFOC_DRQ_CLR_CNT_MASK (3U << DAC_FIFOC_DRQ_CLR_CNT_SHIFT) +#define DAC_FIFOC_TX_TRIG_LEVEL_SHIFT 8 +#define DAC_FIFOC_TX_TRIG_LEVEL_MASK (0x7f << DAC_FIFOC_TX_TRIG_LEVEL_SHIFT) +#define DAC_FIFOC_MONO_EN (1U << 6) +#define DAC_FIFOC_TX_BITS (1U << 5) +#define DAC_FIFOC_DRQ_EN (1U << 4) +#define DAC_FIFOC_FIFO_FLUSH (1U << 0) +#define AC_DAC_FIFOS 0x08 +#define AC_DAC_TXDATA 0x0c +#define AC_DAC_ACTL 0x10 +#define DAC_ACTL_DACAREN (1U << 31) +#define DAC_ACTL_DACALEN (1U << 30) +#define DAC_ACTL_MIXEN (1U << 29) +#define DAC_ACTL_DACPAS (1U << 8) +#define DAC_ACTL_PAMUTE (1U << 6) +#define DAC_ACTL_PAVOL_SHIFT 0 +#define DAC_ACTL_PAVOL_MASK (0x3f << DAC_ACTL_PAVOL_SHIFT) +#define AC_ADC_FIFOC 0x1c +#define ADC_FIFOC_FS_SHIFT 29 +#define ADC_FIFOC_FS_MASK (7U << ADC_FIFOC_FS_SHIFT) +#define ADC_FS_48KHZ 0 +#define ADC_FIFOC_EN_AD (1U << 28) +#define ADC_FIFOC_RX_FIFO_MODE (1U << 24) +#define ADC_FIFOC_RX_TRIG_LEVEL_SHIFT 8 +#define ADC_FIFOC_RX_TRIG_LEVEL_MASK (0x1f << ADC_FIFOC_RX_TRIG_LEVEL_SHIFT) +#define ADC_FIFOC_MONO_EN (1U << 7) +#define ADC_FIFOC_RX_BITS (1U << 6) +#define ADC_FIFOC_DRQ_EN (1U << 4) +#define ADC_FIFOC_FIFO_FLUSH (1U << 1) +#define AC_ADC_FIFOS 0x20 +#define AC_ADC_RXDATA 0x24 +#define AC_ADC_ACTL 0x28 +#define ADC_ACTL_ADCREN (1U << 31) +#define ADC_ACTL_ADCLEN (1U << 30) +#define ADC_ACTL_PREG1EN (1U << 29) +#define ADC_ACTL_PREG2EN (1U << 28) +#define ADC_ACTL_VMICEN (1U << 27) +#define ADC_ACTL_ADCG_SHIFT 20 +#define ADC_ACTL_ADCG_MASK (7U << ADC_ACTL_ADCG_SHIFT) +#define ADC_ACTL_ADCIS_SHIFT 17 +#define ADC_ACTL_ADCIS_MASK (7U << ADC_ACTL_ADCIS_SHIFT) +#define ADC_IS_LINEIN 0 +#define ADC_IS_FMIN 1 +#define ADC_IS_MIC1 2 +#define ADC_IS_MIC2 3 +#define ADC_IS_MIC1_L_MIC2_R 4 +#define ADC_IS_MIC1_LR_MIC2_LR 5 +#define ADC_IS_OMIX 6 +#define ADC_IS_LINEIN_L_MIC1_R 7 +#define ADC_ACTL_LNRDF (1U << 16) +#define ADC_ACTL_LNPREG_SHIFT 13 +#define ADC_ACTL_LNPREG_MASK (7U << ADC_ACTL_LNPREG_SHIFT) +#define ADC_ACTL_PA_EN (1U << 4) +#define ADC_ACTL_DDE (1U << 3) +#define AC_DAC_CNT 0x30 +#define AC_ADC_CNT 0x34 + +static uint32_t a10codec_fmt[] = { + SND_FORMAT(AFMT_S16_LE, 1, 0), + SND_FORMAT(AFMT_S16_LE, 2, 0), + 0 +}; + +static struct pcmchan_caps a10codec_pcaps = { 8000, 192000, a10codec_fmt, 0 }; +static struct pcmchan_caps a10codec_rcaps = { 8000, 48000, a10codec_fmt, 0 }; + +struct a10codec_info; + +struct a10codec_chinfo { + struct snd_dbuf *buffer; + struct pcm_channel *channel; + struct a10codec_info *parent; + bus_dmamap_t dmamap; + void *dmaaddr; + bus_addr_t physaddr; + bus_size_t fifo; + device_t dmac; + void *dmachan; + + int dir; + int run; + uint32_t pos; + uint32_t format; + uint32_t blocksize; + uint32_t speed; +}; + +struct a10codec_info { + device_t dev; + struct resource *res[2]; + struct mtx *lock; + bus_dma_tag_t dmat; + unsigned dmasize; + void *ih; + + unsigned drqtype_codec; + unsigned drqtype_sdram; + + struct a10codec_chinfo play; + struct a10codec_chinfo rec; +}; + +static struct resource_spec a10codec_spec[] = { + { SYS_RES_MEMORY, 0, RF_ACTIVE }, + { SYS_RES_IRQ, 0, RF_ACTIVE }, + { -1, 0 } +}; + +#define CODEC_READ(sc, reg) bus_read_4((sc)->res[0], (reg)) +#define CODEC_WRITE(sc, reg, val) bus_write_4((sc)->res[0], (reg), (val)) + +/* + * Mixer interface + */ + +static int +a10codec_mixer_init(struct snd_mixer *m) +{ + struct a10codec_info *sc = mix_getdevinfo(m); + pcell_t prop[4]; + phandle_t node; + device_t gpio; + uint32_t val; + ssize_t len; + int pin; + + mix_setdevs(m, SOUND_MASK_VOLUME | SOUND_MASK_LINE | SOUND_MASK_RECLEV); + mix_setrecdevs(m, SOUND_MASK_LINE | SOUND_MASK_LINE1 | SOUND_MASK_MIC); + + /* Unmute input source to PA */ + val = CODEC_READ(sc, AC_DAC_ACTL); + val |= DAC_ACTL_PAMUTE; + CODEC_WRITE(sc, AC_DAC_ACTL, val); + + /* Enable PA */ + val = CODEC_READ(sc, AC_ADC_ACTL); + val |= ADC_ACTL_PA_EN; + CODEC_WRITE(sc, AC_ADC_ACTL, val); + + /* Unmute PA */ + node = ofw_bus_get_node(sc->dev); + len = OF_getencprop(node, "allwinner,pa-gpios", prop, sizeof(prop)); + if (len > 0 && (len / sizeof(prop[0])) == 4) { + gpio = OF_device_from_xref(prop[0]); + if (gpio != NULL) { + pin = prop[1] * 32 + prop[2]; + GPIO_PIN_SETFLAGS(gpio, pin, GPIO_PIN_OUTPUT); + GPIO_PIN_SET(gpio, pin, GPIO_PIN_LOW); + } + } + + return (0); +} + +static const struct a10codec_mixer { + unsigned reg; + unsigned mask; + unsigned shift; +} a10codec_mixers[SOUND_MIXER_NRDEVICES] = { + [SOUND_MIXER_VOLUME] = { AC_DAC_ACTL, DAC_ACTL_PAVOL_MASK, + DAC_ACTL_PAVOL_SHIFT }, + [SOUND_MIXER_LINE] = { AC_ADC_ACTL, ADC_ACTL_LNPREG_MASK, + ADC_ACTL_LNPREG_SHIFT }, + [SOUND_MIXER_RECLEV] = { AC_ADC_ACTL, ADC_ACTL_ADCG_MASK, + ADC_ACTL_ADCG_SHIFT }, +}; + +static int +a10codec_mixer_set(struct snd_mixer *m, unsigned dev, unsigned left, + unsigned right) +{ + struct a10codec_info *sc = mix_getdevinfo(m); + uint32_t val; + unsigned nvol, max; + + max = a10codec_mixers[dev].mask >> a10codec_mixers[dev].shift; + nvol = (left * max) / 100; + + val = CODEC_READ(sc, a10codec_mixers[dev].reg); + val &= ~a10codec_mixers[dev].mask; + val |= (nvol << a10codec_mixers[dev].shift); + CODEC_WRITE(sc, a10codec_mixers[dev].reg, val); + + left = right = (left * 100) / max; + return (left | (right << 8)); +} + +static uint32_t +a10codec_mixer_setrecsrc(struct snd_mixer *m, uint32_t src) +{ + struct a10codec_info *sc = mix_getdevinfo(m); + uint32_t val; + + val = CODEC_READ(sc, AC_ADC_ACTL); + + switch (src) { + case SOUND_MASK_LINE: /* line-in */ + val &= ~ADC_ACTL_ADCIS_MASK; + val |= (ADC_IS_LINEIN << ADC_ACTL_ADCIS_SHIFT); + break; + case SOUND_MASK_MIC: /* MIC1 */ + val &= ~ADC_ACTL_ADCIS_MASK; + val |= (ADC_IS_MIC1 << ADC_ACTL_ADCIS_SHIFT); + break; + case SOUND_MASK_LINE1: /* MIC2 */ + val &= ~ADC_ACTL_ADCIS_MASK; + val |= (ADC_IS_MIC2 << ADC_ACTL_ADCIS_SHIFT); + break; + default: + break; + } + + CODEC_WRITE(sc, AC_ADC_ACTL, val); + + switch ((val & ADC_ACTL_ADCIS_MASK) >> ADC_ACTL_ADCIS_SHIFT) { + case ADC_IS_LINEIN: + return (SOUND_MASK_LINE); + case ADC_IS_MIC1: + return (SOUND_MASK_MIC); + case ADC_IS_MIC2: + return (SOUND_MASK_LINE1); + default: + return (0); + } +} + +static kobj_method_t a10codec_mixer_methods[] = { + KOBJMETHOD(mixer_init, a10codec_mixer_init), + KOBJMETHOD(mixer_set, a10codec_mixer_set), + KOBJMETHOD(mixer_setrecsrc, a10codec_mixer_setrecsrc), + KOBJMETHOD_END +}; +MIXER_DECLARE(a10codec_mixer); + + +/* + * Channel interface + */ + +static void +a10codec_dmamap_cb(void *arg, bus_dma_segment_t *segs, int nseg, int error) +{ + struct a10codec_chinfo *ch = arg; + + if (error != 0) + return; + + ch->physaddr = segs[0].ds_addr; +} + +static void +a10codec_transfer(struct a10codec_chinfo *ch) +{ + bus_addr_t src, dst; + int error; + + if (ch->dir == PCMDIR_PLAY) { + src = ch->physaddr + ch->pos; + dst = ch->fifo; + } else { + src = ch->fifo; + dst = ch->physaddr + ch->pos; + } + + error = SUNXI_DMA_TRANSFER(ch->dmac, ch->dmachan, src, dst, + ch->blocksize); + if (error) { + ch->run = 0; + device_printf(ch->parent->dev, "DMA transfer failed: %d\n", + error); + } +} + +static void +a10codec_dmaconfig(struct a10codec_chinfo *ch) +{ + struct a10codec_info *sc = ch->parent; + struct sunxi_dma_config conf; + + memset(&conf, 0, sizeof(conf)); + conf.src_width = conf.dst_width = 16; + conf.src_burst_len = conf.dst_burst_len = 4; + + if (ch->dir == PCMDIR_PLAY) { + conf.dst_noincr = true; + conf.src_drqtype = sc->drqtype_sdram; + conf.dst_drqtype = sc->drqtype_codec; + } else { + conf.src_noincr = true; + conf.src_drqtype = sc->drqtype_codec; + conf.dst_drqtype = sc->drqtype_sdram; + } + + SUNXI_DMA_SET_CONFIG(ch->dmac, ch->dmachan, &conf); +} + +static void +a10codec_dmaintr(void *priv) +{ + struct a10codec_chinfo *ch = priv; + unsigned bufsize; + + bufsize = sndbuf_getsize(ch->buffer); + + ch->pos += ch->blocksize; + if (ch->pos >= bufsize) + ch->pos -= bufsize; + + if (ch->run) { + chn_intr(ch->channel); + a10codec_transfer(ch); + } +} + +static unsigned +a10codec_fs(struct a10codec_chinfo *ch) +{ + switch (ch->speed) { + case 48000: + return (DAC_FS_48KHZ); + case 24000: + return (DAC_FS_24KHZ); + case 12000: + return (DAC_FS_12KHZ); + case 192000: + return (DAC_FS_192KHZ); + case 32000: + return (DAC_FS_32KHZ); + case 16000: + return (DAC_FS_16KHZ); + case 8000: + return (DAC_FS_8KHZ); + case 96000: + return (DAC_FS_96KHZ); + default: + return (DAC_FS_48KHZ); + } +} + +static void +a10codec_start(struct a10codec_chinfo *ch) +{ + struct a10codec_info *sc = ch->parent; + uint32_t val; + + ch->pos = 0; + + if (ch->dir == PCMDIR_PLAY) { + /* Flush DAC FIFO */ + CODEC_WRITE(sc, AC_DAC_FIFOC, DAC_FIFOC_FIFO_FLUSH); + + /* Clear DAC FIFO status */ + CODEC_WRITE(sc, AC_DAC_FIFOS, CODEC_READ(sc, AC_DAC_FIFOS)); + + /* Enable DAC analog left/right channels and output mixer */ + val = CODEC_READ(sc, AC_DAC_ACTL); + val |= DAC_ACTL_DACAREN; + val |= DAC_ACTL_DACALEN; + val |= DAC_ACTL_DACPAS; + CODEC_WRITE(sc, AC_DAC_ACTL, val); + + /* Configure DAC DMA channel */ + a10codec_dmaconfig(ch); + + /* Configure DAC FIFO */ + CODEC_WRITE(sc, AC_DAC_FIFOC, + (AFMT_CHANNEL(ch->format) == 1 ? DAC_FIFOC_MONO_EN : 0) | + (a10codec_fs(ch) << DAC_FIFOC_FS_SHIFT) | + (FIFO_MODE_16_15_0 << DAC_FIFOC_FIFO_MODE_SHIFT) | + (DRQ_CLR_CNT << DAC_FIFOC_DRQ_CLR_CNT_SHIFT) | + (TX_TRIG_LEVEL << DAC_FIFOC_TX_TRIG_LEVEL_SHIFT)); + + /* Enable DAC DRQ */ + val = CODEC_READ(sc, AC_DAC_FIFOC); + val |= DAC_FIFOC_DRQ_EN; + CODEC_WRITE(sc, AC_DAC_FIFOC, val); + } else { + /* Flush ADC FIFO */ + CODEC_WRITE(sc, AC_ADC_FIFOC, ADC_FIFOC_FIFO_FLUSH); + + /* Clear ADC FIFO status */ + CODEC_WRITE(sc, AC_ADC_FIFOS, CODEC_READ(sc, AC_ADC_FIFOS)); + + /* Enable ADC analog left/right channels, MIC1 preamp, + * and VMIC pin voltage + */ + val = CODEC_READ(sc, AC_ADC_ACTL); + val |= ADC_ACTL_ADCREN; + val |= ADC_ACTL_ADCLEN; + val |= ADC_ACTL_PREG1EN; + val |= ADC_ACTL_VMICEN; + CODEC_WRITE(sc, AC_ADC_ACTL, val); + + /* Configure ADC DMA channel */ + a10codec_dmaconfig(ch); + + /* Configure ADC FIFO */ + CODEC_WRITE(sc, AC_ADC_FIFOC, + ADC_FIFOC_EN_AD | + ADC_FIFOC_RX_FIFO_MODE | + (AFMT_CHANNEL(ch->format) == 1 ? ADC_FIFOC_MONO_EN : 0) | + (a10codec_fs(ch) << ADC_FIFOC_FS_SHIFT) | + (RX_TRIG_LEVEL << ADC_FIFOC_RX_TRIG_LEVEL_SHIFT)); + + /* Enable ADC DRQ */ + val = CODEC_READ(sc, AC_ADC_FIFOC); + val |= ADC_FIFOC_DRQ_EN; + CODEC_WRITE(sc, AC_ADC_FIFOC, val); + } + + /* Start DMA transfer */ + a10codec_transfer(ch); +} + +static void +a10codec_stop(struct a10codec_chinfo *ch) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-projects@freebsd.org Fri Feb 19 16:37:07 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E6521AAE12C for ; Fri, 19 Feb 2016 16:37:07 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 B3A961F90; Fri, 19 Feb 2016 16:37:07 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1JGb6gl055075; Fri, 19 Feb 2016 16:37:06 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1JGb6lm055074; Fri, 19 Feb 2016 16:37:06 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201602191637.u1JGb6lm055074@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Fri, 19 Feb 2016 16:37:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295812 - projects/mips64-clang/sys/mips/rmi X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Feb 2016 16:37:08 -0000 Author: sbruno Date: Fri Feb 19 16:37:06 2016 New Revision: 295812 URL: https://svnweb.freebsd.org/changeset/base/295812 Log: Change a static const string to a #define as the strcpy() throws a warn/error with clang. /home/sbruno/mips64-clang/sys/mips/rmi/xls_ehci.c:133:25: error: format string is not a string literal (potentially insecure) [-Werror,-Wformat-security] sprintf(sc->sc_vendor, xlr_vendor_desc); Modified: projects/mips64-clang/sys/mips/rmi/xls_ehci.c Modified: projects/mips64-clang/sys/mips/rmi/xls_ehci.c ============================================================================== --- projects/mips64-clang/sys/mips/rmi/xls_ehci.c Fri Feb 19 15:53:08 2016 (r295811) +++ projects/mips64-clang/sys/mips/rmi/xls_ehci.c Fri Feb 19 16:37:06 2016 (r295812) @@ -73,7 +73,7 @@ static device_attach_t ehci_xls_attach; static device_detach_t ehci_xls_detach; static const char *xlr_usb_dev_desc = "RMI XLR USB 2.0 controller"; -static const char *xlr_vendor_desc = "RMI Corp"; +#define XLR_VENDOR_DESC "RMI Corp"; static int ehci_xls_probe(device_t self) @@ -130,7 +130,7 @@ ehci_xls_attach(device_t self) device_set_ivars(sc->sc_bus.bdev, &sc->sc_bus); device_set_desc(sc->sc_bus.bdev, xlr_usb_dev_desc); - sprintf(sc->sc_vendor, xlr_vendor_desc); + sprintf(sc->sc_vendor, XLR_VENDOR_DESC); err = bus_setup_intr(self, sc->sc_irq_res, INTR_TYPE_BIO | INTR_MPSAFE, NULL, From owner-svn-src-projects@freebsd.org Fri Feb 19 16:43:10 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5747EAAE340 for ; Fri, 19 Feb 2016 16:43:10 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 18DFC15A4; Fri, 19 Feb 2016 16:43:09 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1JGh9wS058051; Fri, 19 Feb 2016 16:43:09 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1JGh9l9058050; Fri, 19 Feb 2016 16:43:09 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201602191643.u1JGh9l9058050@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Fri, 19 Feb 2016 16:43:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295814 - projects/mips64-clang/sys/mips/mips X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Feb 2016 16:43:10 -0000 Author: sbruno Date: Fri Feb 19 16:43:08 2016 New Revision: 295814 URL: https://svnweb.freebsd.org/changeset/base/295814 Log: Remove uneeded parens, noted by clang. Modified: projects/mips64-clang/sys/mips/mips/busdma_machdep.c Modified: projects/mips64-clang/sys/mips/mips/busdma_machdep.c ============================================================================== --- projects/mips64-clang/sys/mips/mips/busdma_machdep.c Fri Feb 19 16:43:03 2016 (r295813) +++ projects/mips64-clang/sys/mips/mips/busdma_machdep.c Fri Feb 19 16:43:08 2016 (r295814) @@ -745,7 +745,7 @@ _bus_dmamap_count_phys(bus_dma_tag_t dma bus_addr_t curaddr; bus_size_t sgsize; - if ((map->pagesneeded == 0)) { + if (map->pagesneeded == 0) { CTR3(KTR_BUSDMA, "lowaddr= %d, boundary= %d, alignment= %d", dmat->lowaddr, dmat->boundary, dmat->alignment); CTR2(KTR_BUSDMA, "map= %p, pagesneeded= %d", @@ -776,7 +776,7 @@ _bus_dmamap_count_pages(bus_dma_tag_t dm vm_offset_t vendaddr; bus_addr_t paddr; - if ((map->pagesneeded == 0)) { + if (map->pagesneeded == 0) { CTR3(KTR_BUSDMA, "lowaddr= %d, boundary= %d, alignment= %d", dmat->lowaddr, dmat->boundary, dmat->alignment); CTR2(KTR_BUSDMA, "map= %p, pagesneeded= %d", From owner-svn-src-projects@freebsd.org Fri Feb 19 16:43:38 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7E471AAE3CF for ; Fri, 19 Feb 2016 16:43:38 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 5068B183F; Fri, 19 Feb 2016 16:43:38 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1JGhbVZ058107; Fri, 19 Feb 2016 16:43:37 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1JGhbDh058106; Fri, 19 Feb 2016 16:43:37 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201602191643.u1JGhbDh058106@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Fri, 19 Feb 2016 16:43:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295815 - projects/mips64-clang/sys/mips/mips X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Feb 2016 16:43:38 -0000 Author: sbruno Date: Fri Feb 19 16:43:37 2016 New Revision: 295815 URL: https://svnweb.freebsd.org/changeset/base/295815 Log: Remove uneeded parens, noted by clang. Modified: projects/mips64-clang/sys/mips/mips/stack_machdep.c Modified: projects/mips64-clang/sys/mips/mips/stack_machdep.c ============================================================================== --- projects/mips64-clang/sys/mips/mips/stack_machdep.c Fri Feb 19 16:43:08 2016 (r295814) +++ projects/mips64-clang/sys/mips/mips/stack_machdep.c Fri Feb 19 16:43:37 2016 (r295815) @@ -95,7 +95,7 @@ stack_capture(struct stack *st, u_regist switch (insn.IType.op) { case OP_SPECIAL: - if((insn.RType.func == OP_JR)) + if(insn.RType.func == OP_JR) { if (ra >= (u_register_t)(intptr_t)btext) break; From owner-svn-src-projects@freebsd.org Fri Feb 19 16:53:43 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1DCE0AAE80B for ; Fri, 19 Feb 2016 16:53:43 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 DFAF91139; Fri, 19 Feb 2016 16:53:42 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1JGrfQM061150; Fri, 19 Feb 2016 16:53:41 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1JGrfAm061149; Fri, 19 Feb 2016 16:53:41 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201602191653.u1JGrfAm061149@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Fri, 19 Feb 2016 16:53:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295817 - projects/mips64-clang/sys/mips/mips X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Feb 2016 16:53:43 -0000 Author: sbruno Date: Fri Feb 19 16:53:41 2016 New Revision: 295817 URL: https://svnweb.freebsd.org/changeset/base/295817 Log: Apparently, tlb_write_random() is unused in the mips kernel. #ifdef it out but leave it in place so it can be evaluated. Modified: projects/mips64-clang/sys/mips/mips/tlb.c Modified: projects/mips64-clang/sys/mips/mips/tlb.c ============================================================================== --- projects/mips64-clang/sys/mips/mips/tlb.c Fri Feb 19 16:53:21 2016 (r295816) +++ projects/mips64-clang/sys/mips/mips/tlb.c Fri Feb 19 16:53:41 2016 (r295817) @@ -88,12 +88,19 @@ tlb_write_indexed(void) mips_cp0_sync(); } +/* + * Appears to be unused as reported by clang. Leave it here + * commented out until such time as we decide that we don't want + * it anymore. + */ +#if 0 static inline void tlb_write_random(void) { __asm __volatile ("tlbwr" : : : "memory"); mips_cp0_sync(); } +#endif static void tlb_invalidate_one(unsigned); From owner-svn-src-projects@freebsd.org Fri Feb 19 17:32:31 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E1244AAD4A9 for ; Fri, 19 Feb 2016 17:32:31 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 B2F081937; Fri, 19 Feb 2016 17:32:31 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1JHWUmP073015; Fri, 19 Feb 2016 17:32:30 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1JHWUCv073014; Fri, 19 Feb 2016 17:32:30 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201602191732.u1JHWUCv073014@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Fri, 19 Feb 2016 17:32:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295820 - projects/mips64-clang/sys/mips/mips X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Feb 2016 17:32:32 -0000 Author: sbruno Date: Fri Feb 19 17:32:30 2016 New Revision: 295820 URL: https://svnweb.freebsd.org/changeset/base/295820 Log: clang IAS just doesn't handle $at the same way as binutils. This fixes errors and will allow a build of GXEMUL to succeed. Similar to r295727 Modified: projects/mips64-clang/sys/mips/mips/mpboot.S Modified: projects/mips64-clang/sys/mips/mips/mpboot.S ============================================================================== --- projects/mips64-clang/sys/mips/mips/mpboot.S Fri Feb 19 17:14:34 2016 (r295819) +++ projects/mips64-clang/sys/mips/mips/mpboot.S Fri Feb 19 17:32:30 2016 (r295820) @@ -70,20 +70,26 @@ GLOBAL(mpentry) /* * Initialize stack and call machine startup */ + .set at PTR_LA sp, _C_LABEL(pcpu_space) + .set noat addiu sp, (PAGE_SIZE * 2) - CALLFRAME_SIZ sll t0, s0, PAGE_SHIFT + 1 addu sp, sp, t0 /* Zero out old ra and old fp for debugger */ - sw zero, CALLFRAME_SIZ - 4(sp) - sw zero, CALLFRAME_SIZ - 8(sp) + sw zero, ((CALLFRAME_SIZ) - 4)(sp) + sw zero, ((CALLFRAME_SIZ) - 8)(sp) + .set at PTR_LA gp, _C_LABEL(_gp) + .set noat jal platform_init_ap move a0, s0 jal smp_init_secondary move a0, s0 + .set at PANIC("AP startup failed!") + .set noat From owner-svn-src-projects@freebsd.org Fri Feb 19 17:34:12 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7BF23AAD534 for ; Fri, 19 Feb 2016 17:34:12 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::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 49C911ACA; Fri, 19 Feb 2016 17:34:12 +0000 (UTC) (envelope-from sbruno@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u1JHYB5o073146; Fri, 19 Feb 2016 17:34:11 GMT (envelope-from sbruno@FreeBSD.org) Received: (from sbruno@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u1JHYBZ4073145; Fri, 19 Feb 2016 17:34:11 GMT (envelope-from sbruno@FreeBSD.org) Message-Id: <201602191734.u1JHYBZ4073145@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sbruno set sender to sbruno@FreeBSD.org using -f From: Sean Bruno Date: Fri, 19 Feb 2016 17:34:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r295821 - projects/mips64-clang/sys/dev/gxemul/disk X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 19 Feb 2016 17:34:12 -0000 Author: sbruno Date: Fri Feb 19 17:34:11 2016 New Revision: 295821 URL: https://svnweb.freebsd.org/changeset/base/295821 Log: Provide a format for new_providerf() to ensure a successeful compilation. Modified: projects/mips64-clang/sys/dev/gxemul/disk/gxemul_disk.c Modified: projects/mips64-clang/sys/dev/gxemul/disk/gxemul_disk.c ============================================================================== --- projects/mips64-clang/sys/dev/gxemul/disk/gxemul_disk.c Fri Feb 19 17:32:30 2016 (r295820) +++ projects/mips64-clang/sys/dev/gxemul/disk/gxemul_disk.c Fri Feb 19 17:34:11 2016 (r295821) @@ -171,7 +171,7 @@ gxemul_disk_attach_geom(void *arg, int f sc->sc_geom = g_new_geomf(&g_gxemul_disk_class, "%s", device_get_nameunit(sc->sc_dev)); sc->sc_geom->softc = sc; - sc->sc_provider = g_new_providerf(sc->sc_geom, sc->sc_geom->name); + sc->sc_provider = g_new_providerf(sc->sc_geom, "%s",sc->sc_geom->name); sc->sc_provider->sectorsize = GXEMUL_DISK_DEV_BLOCKSIZE; sc->sc_provider->mediasize = sc->sc_size; g_error_provider(sc->sc_provider, 0); From owner-svn-src-projects@freebsd.org Sat Feb 20 18:30:09 2016 Return-Path: Delivered-To: svn-src-projects@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 56FCCAAF122 for ; Sat, 20 Feb 2016 18:30:09 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-qg0-x229.google.com (mail-qg0-x229.google.com [IPv6:2607:f8b0:400d:c04::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 20602F21 for ; Sat, 20 Feb 2016 18:30:09 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-qg0-x229.google.com with SMTP id b35so85149298qge.0 for ; Sat, 20 Feb 2016 10:30:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=bRatjUQT2v38NmRd1Z8tOFzysgrG4hepFbPgABZPQiE=; b=EltcrS/QZ6SuSErDRJQ/E4eEWzq6M2pYVRc55zdPzF5Bczx7u5YU7r+xlOyYstkF+U lFdyNZoRnDcePoeIjVyKl9Vpp+jiLLavn2fG/x0jJ1g90cyznItml9t/2gOe98eyHUSh l34UrtJ8F7Bm5h7bI0gkoAGyzrNT+xLo0wPhWsN7C/uSIQK8a7aGkvB6WCmWs+HPmTBD UinrD2HLb1uvWUWjm555GoiW8tFYtwYaczn4+juz3fWH1INlVWirKkeEDBuL8tmEN/Gt EfGQZ0Gpmd4ZpvTXcnBc1ygVlf+pp/2kU/qI25osFbu8kEMPT0161ItgMKgoQgbPUa0o u5xg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=bRatjUQT2v38NmRd1Z8tOFzysgrG4hepFbPgABZPQiE=; b=l/5gm1cOrrnov3xO495AxHAgY2JgtQXKXmpYLyw+USn33OrTuReL8R8Oc3PCgft+Ez GGj3eEhJVzk3I8S/nbs8Ymx88g/n8ZEJKIca+o7194GjBYa5TqeuO0+6C6mpoyQ0ZJ6j 4e2EaWpa91nOY8KL6Hcu+Y+prjxs1D5JHDZl03p4mriehiGdb3WZ3/GUcLSuATIOe/WE KXv85wqfmeWH+etu2OVOCKwcwJYuNLCQCdGmA9IRetyHaeU6pPPtw+hC8aD7NutwdXOY 2VCIk4Sblt0e7LthTsO5aV2BQBpBmpSzjer0B9ZyYtJwPYhAId301zPqioLBL9K2uWFS 02GA== X-Gm-Message-State: AG10YOQqQN7MwqzG34aDI3Fc7Kdkk+PVDZ112I44dd9mA1zjQNhhOVQBMimHeyRhqEzi412CC7774jZ+kuk6sw== MIME-Version: 1.0 X-Received: by 10.140.43.180 with SMTP id e49mr24164770qga.50.1455993008145; Sat, 20 Feb 2016 10:30:08 -0800 (PST) Sender: wlosh@bsdimp.com Received: by 10.140.30.166 with HTTP; Sat, 20 Feb 2016 10:30:08 -0800 (PST) X-Originating-IP: [50.242.69.61] In-Reply-To: <201602191732.u1JHWUCv073014@repo.freebsd.org> References: <201602191732.u1JHWUCv073014@repo.freebsd.org> Date: Sat, 20 Feb 2016 10:30:08 -0800 X-Google-Sender-Auth: LmWwUqWHV0zonbL1jL6uZ-422b0 Message-ID: Subject: Re: svn commit: r295820 - projects/mips64-clang/sys/mips/mips From: Warner Losh To: Sean Bruno Cc: src-committers , svn-src-projects@freebsd.org Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.20 X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 20 Feb 2016 18:30:09 -0000 On Fri, Feb 19, 2016 at 9:32 AM, Sean Bruno wrote: > Author: sbruno > Date: Fri Feb 19 17:32:30 2016 > New Revision: 295820 > URL: https://svnweb.freebsd.org/changeset/base/295820 > > Log: > clang IAS just doesn't handle $at the same way as binutils. This fixes > errors and will allow a build of GXEMUL to succeed. > > Similar to r295727 > > Modified: > projects/mips64-clang/sys/mips/mips/mpboot.S > > Modified: projects/mips64-clang/sys/mips/mips/mpboot.S > > ============================================================================== > --- projects/mips64-clang/sys/mips/mips/mpboot.S Fri Feb 19 > 17:14:34 2016 (r295819) > +++ projects/mips64-clang/sys/mips/mips/mpboot.S Fri Feb 19 > 17:32:30 2016 (r295820) > @@ -70,20 +70,26 @@ GLOBAL(mpentry) > /* > * Initialize stack and call machine startup > */ > + .set at > PTR_LA sp, _C_LABEL(pcpu_space) > + .set noat > clang IAS is simply wrong. While it doesn't matter so much here, it will in the interrupt handler where it can't use AT. > addiu sp, (PAGE_SIZE * 2) - CALLFRAME_SIZ > sll t0, s0, PAGE_SHIFT + 1 > addu sp, sp, t0 > > /* Zero out old ra and old fp for debugger */ > - sw zero, CALLFRAME_SIZ - 4(sp) > - sw zero, CALLFRAME_SIZ - 8(sp) > + sw zero, ((CALLFRAME_SIZ) - 4)(sp) > + sw zero, ((CALLFRAME_SIZ) - 8)(sp) > clang is wrong here and should be fixed. > + .set at > PTR_LA gp, _C_LABEL(_gp) > + .set noat > > jal platform_init_ap > move a0, s0 > jal smp_init_secondary > move a0, s0 > > + .set at > PANIC("AP startup failed!") > + .set noat > >