From owner-svn-soc-all@freebsd.org Wed Aug 1 19:54:14 2018 Return-Path: Delivered-To: svn-soc-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2BC4910679EF for ; Wed, 1 Aug 2018 19:54:14 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C631F84E5F for ; Wed, 1 Aug 2018 19:54:13 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org (socsvn.freebsd.org [IPv6:2001:1900:2254:206a::50:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id 1FE601F28E for ; Wed, 1 Aug 2018 19:54:13 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org ([127.0.1.124]) by socsvn.freebsd.org (8.15.2/8.15.2) with ESMTP id w71JsCb3008708 for ; Wed, 1 Aug 2018 19:54:12 GMT (envelope-from sduo@FreeBSD.org) Received: (from www@localhost) by socsvn.freebsd.org (8.15.2/8.15.2/Submit) id w71JsCLV008656 for svn-soc-all@FreeBSD.org; Wed, 1 Aug 2018 19:54:12 GMT (envelope-from sduo@FreeBSD.org) Date: Wed, 1 Aug 2018 19:54:12 GMT Message-Id: <201808011954.w71JsCLV008656@socsvn.freebsd.org> X-Authentication-Warning: socsvn.freebsd.org: www set sender to sduo@FreeBSD.org using -f From: sduo@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r337271 - soc2018/sduo/head/sys/conf MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-soc-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the entire Summer of Code repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Aug 2018 19:54:14 -0000 Author: sduo Date: Wed Aug 1 19:54:10 2018 New Revision: 337271 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=337271 Log: fixed compilation issue Modified: soc2018/sduo/head/sys/conf/kern.pre.mk Modified: soc2018/sduo/head/sys/conf/kern.pre.mk ============================================================================== --- soc2018/sduo/head/sys/conf/kern.pre.mk Tue Jul 24 17:33:28 2018 (r337270) +++ soc2018/sduo/head/sys/conf/kern.pre.mk Wed Aug 1 19:54:10 2018 (r337271) @@ -77,7 +77,7 @@ .endif NOSTDINC= -nostdinc -INCLUDES= ${NOSTDINC} ${INCLMAGIC} -I. -I$S -I$S/contrib/ck/include +INCLUDES= ${NOSTDINC} ${INCLMAGIC} -I. -I$S CFLAGS= ${COPTFLAGS} ${DEBUG} CFLAGS+= ${INCLUDES} -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h @@ -121,9 +121,6 @@ .endif .if ${MACHINE_CPUARCH} == "amd64" -.if defined(LINKER_FEATURES) && ${LINKER_FEATURES:Mifunc} == "" -.error amd64 kernel requires linker ifunc support -.endif LDFLAGS+= -Wl,-z max-page-size=2097152 -Wl,-z common-page-size=4096 .endif From owner-svn-soc-all@freebsd.org Wed Aug 1 20:04:42 2018 Return-Path: Delivered-To: svn-soc-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 82A0C1067DD1 for ; Wed, 1 Aug 2018 20:04:42 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 13E0A85464 for ; Wed, 1 Aug 2018 20:04:42 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org (socsvn.freebsd.org [IPv6:2001:1900:2254:206a::50:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id 465EA1F3EC for ; Wed, 1 Aug 2018 20:04:41 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org ([127.0.1.124]) by socsvn.freebsd.org (8.15.2/8.15.2) with ESMTP id w71K4foC052957 for ; Wed, 1 Aug 2018 20:04:41 GMT (envelope-from sduo@FreeBSD.org) Received: (from www@localhost) by socsvn.freebsd.org (8.15.2/8.15.2/Submit) id w71K4cX3052945 for svn-soc-all@FreeBSD.org; Wed, 1 Aug 2018 20:04:38 GMT (envelope-from sduo@FreeBSD.org) Date: Wed, 1 Aug 2018 20:04:38 GMT Message-Id: <201808012004.w71K4cX3052945@socsvn.freebsd.org> X-Authentication-Warning: socsvn.freebsd.org: www set sender to sduo@FreeBSD.org using -f From: sduo@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r337272 - in soc2018/sduo/head/sys: dev/cxgbe dev/ixl net MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-soc-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the entire Summer of Code repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Aug 2018 20:04:42 -0000 Author: sduo Date: Wed Aug 1 20:04:37 2018 New Revision: 337272 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=337272 Log: Updated calls to NMB(), PNMB() and NETMAP_BUF_SIZE(). Modified: soc2018/sduo/head/sys/dev/cxgbe/t4_netmap.c soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c soc2018/sduo/head/sys/net/iflib.c Modified: soc2018/sduo/head/sys/dev/cxgbe/t4_netmap.c ============================================================================== --- soc2018/sduo/head/sys/dev/cxgbe/t4_netmap.c Wed Aug 1 19:54:10 2018 (r337271) +++ soc2018/sduo/head/sys/dev/cxgbe/t4_netmap.c Wed Aug 1 20:04:37 2018 (r337272) @@ -328,12 +328,12 @@ hwb = &sc->sge.hw_buf_info[0]; for (i = 0; i < SGE_FLBUF_SIZES; i++, hwb++) { - if (hwb->size == NETMAP_BUF_SIZE(na)) + if (hwb->size == NETMAP_BUF_SIZE(na, 0)) break; } if (i >= SGE_FLBUF_SIZES) { if_printf(ifp, "no hwidx for netmap buffer size %d.\n", - NETMAP_BUF_SIZE(na)); + NETMAP_BUF_SIZE(na, 0)); return (ENXIO); } hwidx = i; @@ -360,7 +360,7 @@ for (j = 0; j < nm_rxq->fl_sidx; j++) { uint64_t ba; - PNMB(na, &slot[j], &ba); + PNMB(kring, &slot[j], &ba); MPASS(ba != 0); nm_rxq->fl_desc[j] = htobe64(ba | hwidx); } @@ -598,7 +598,7 @@ for (i = 0; i < n; i++) { slot = &ring->slot[kring->nr_hwcur]; - PNMB(kring->na, slot, &ba); + PNMB(kring, slot, &ba); MPASS(ba != 0); cpl->ctrl0 = nm_txq->cpl_ctrl0; @@ -825,7 +825,7 @@ while (n > 0) { for (i = 0; i < 8; i++, fl_pidx++, slot++) { - PNMB(na, slot, &ba); + PNMB(kring, slot, &ba); MPASS(ba != 0); nm_rxq->fl_desc[fl_pidx] = htobe64(ba | hwidx); slot->flags &= ~NS_BUF_CHANGED; Modified: soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c ============================================================================== --- soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c Wed Aug 1 19:54:10 2018 (r337271) +++ soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c Wed Aug 1 20:04:37 2018 (r337272) @@ -616,8 +616,9 @@ * netmap slot index, si */ if (slot) { - int si = netmap_idx_n2k(na->tx_rings[que->me], i); - netmap_load_map(na, buf->tag, buf->map, NMB(na, slot + si)); + struct netmap_kring *kring = na->tx_rings[que->me]; + int si = netmap_idx_n2k(kring, i); + netmap_load_map(na, buf->tag, buf->map, NMB(kring, slot + si)); } #endif /* DEV_NETMAP */ /* Clear the EOP index */ @@ -1417,11 +1418,12 @@ * an mbuf, so end the block with a continue; */ if (slot) { - int sj = netmap_idx_n2k(na->rx_rings[que->me], j); + struct netmap_kring *kring = na->rx_rings[que->me]; + int sj = netmap_idx_n2k(kring, j); uint64_t paddr; void *addr; - addr = PNMB(na, slot + sj, &paddr); + addr = PNMB(kring, slot + sj, &paddr); netmap_load_map(na, rxr->dma.tag, buf->pmap, addr); /* Update descriptor and the cached value */ rxr->base[j].read.pkt_addr = htole64(paddr); Modified: soc2018/sduo/head/sys/net/iflib.c ============================================================================== --- soc2018/sduo/head/sys/net/iflib.c Wed Aug 1 19:54:10 2018 (r337271) +++ soc2018/sduo/head/sys/net/iflib.c Wed Aug 1 20:04:37 2018 (r337272) @@ -847,7 +847,7 @@ while (nm_i != head) { for (int tmp_pidx = 0; tmp_pidx < IFLIB_MAX_RX_REFRESH && nm_i != head; tmp_pidx++) { struct netmap_slot *slot = &ring->slot[nm_i]; - void *addr = PNMB(na, slot, &fl->ifl_bus_addrs[tmp_pidx]); + void *addr = PNMB(kring, slot, &fl->ifl_bus_addrs[tmp_pidx]); uint32_t nic_i_dma = refill_pidx; nic_i = netmap_idx_k2n(kring, nm_i); @@ -975,7 +975,7 @@ struct netmap_slot *slot = &ring->slot[nm_i]; u_int len = slot->len; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); int flags = (slot->flags & NS_REPORT || nic_i == 0 || nic_i == report_frequency) ? IPI_TX_INTR : 0; @@ -1201,8 +1201,9 @@ * netmap_idx_n2k() maps a nic index, i, into the corresponding * netmap slot index, si */ - int si = netmap_idx_n2k(na->tx_rings[txq->ift_id], i); - netmap_load_map(na, txq->ift_desc_tag, txq->ift_sds.ifsd_map[i], NMB(na, slot + si)); + struct netmap_kring *kring = na->tx_rings[txq->ift_id]; + int si = netmap_idx_n2k(kring, i); + netmap_load_map(na, txq->ift_desc_tag, txq->ift_sds.ifsd_map[i], NMB(kring, slot + si)); } } From owner-svn-soc-all@freebsd.org Wed Aug 1 20:28:27 2018 Return-Path: Delivered-To: svn-soc-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3E160106857B for ; Wed, 1 Aug 2018 20:28:27 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D74778650E for ; Wed, 1 Aug 2018 20:28:26 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org (socsvn.freebsd.org [IPv6:2001:1900:2254:206a::50:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id 31A9A1F6CA for ; Wed, 1 Aug 2018 20:28:26 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org ([127.0.1.124]) by socsvn.freebsd.org (8.15.2/8.15.2) with ESMTP id w71KSQFG096736 for ; Wed, 1 Aug 2018 20:28:26 GMT (envelope-from sduo@FreeBSD.org) Received: (from www@localhost) by socsvn.freebsd.org (8.15.2/8.15.2/Submit) id w71KSOCp096729 for svn-soc-all@FreeBSD.org; Wed, 1 Aug 2018 20:28:24 GMT (envelope-from sduo@FreeBSD.org) Date: Wed, 1 Aug 2018 20:28:24 GMT Message-Id: <201808012028.w71KSOCp096729@socsvn.freebsd.org> X-Authentication-Warning: socsvn.freebsd.org: www set sender to sduo@FreeBSD.org using -f From: sduo@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r337273 - in soc2018/sduo/head/sys: dev/ixl net MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-soc-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the entire Summer of Code repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Aug 2018 20:28:27 -0000 Author: sduo Date: Wed Aug 1 20:28:22 2018 New Revision: 337273 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=337273 Log: Updated calls to netmap_load_map(). Modified: soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c soc2018/sduo/head/sys/net/iflib.c Modified: soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c ============================================================================== --- soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c Wed Aug 1 20:04:37 2018 (r337272) +++ soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c Wed Aug 1 20:28:22 2018 (r337273) @@ -618,7 +618,8 @@ if (slot) { struct netmap_kring *kring = na->tx_rings[que->me]; int si = netmap_idx_n2k(kring, i); - netmap_load_map(na, buf->tag, buf->map, NMB(kring, slot + si)); + netmap_load_map(na, buf->tag, buf->map, NMB(kring, slot + si), + NETMAP_BUF_SIZE(kring, 0)); } #endif /* DEV_NETMAP */ /* Clear the EOP index */ @@ -1424,7 +1425,8 @@ void *addr; addr = PNMB(kring, slot + sj, &paddr); - netmap_load_map(na, rxr->dma.tag, buf->pmap, addr); + netmap_load_map(na, rxr->dma.tag, buf->pmap, addr, + NETMAP_BUF_SIZE(kring, 0)); /* Update descriptor and the cached value */ rxr->base[j].read.pkt_addr = htole64(paddr); rxr->base[j].read.hdr_addr = 0; Modified: soc2018/sduo/head/sys/net/iflib.c ============================================================================== --- soc2018/sduo/head/sys/net/iflib.c Wed Aug 1 20:04:37 2018 (r337272) +++ soc2018/sduo/head/sys/net/iflib.c Wed Aug 1 20:28:22 2018 (r337273) @@ -858,7 +858,8 @@ fl->ifl_vm_addrs[tmp_pidx] = addr; if (__predict_false(init) && map) { - netmap_load_map(na, fl->ifl_ifdi->idi_tag, map[nic_i], addr); + netmap_load_map(na, fl->ifl_ifdi->idi_tag, map[nic_i], addr, + NETMAP_BUF_SIZE(kring, 0)); } else if (map && (slot->flags & NS_BUF_CHANGED)) { /* buffer has changed, reload map */ netmap_reload_map(na, fl->ifl_ifdi->idi_tag, map[nic_i], addr); @@ -1203,7 +1204,7 @@ */ struct netmap_kring *kring = na->tx_rings[txq->ift_id]; int si = netmap_idx_n2k(kring, i); - netmap_load_map(na, txq->ift_desc_tag, txq->ift_sds.ifsd_map[i], NMB(kring, slot + si)); + netmap_load_map(na, txq->ift_desc_tag, txq->ift_sds.ifsd_map[i], NMB(kring, slot + si), NETMAP_BUF_SIZE(kring, 0)); } } From owner-svn-soc-all@freebsd.org Wed Aug 1 20:34:28 2018 Return-Path: Delivered-To: svn-soc-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BB0611068947 for ; Wed, 1 Aug 2018 20:34:28 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5EF5C869CD for ; Wed, 1 Aug 2018 20:34:28 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org (socsvn.freebsd.org [IPv6:2001:1900:2254:206a::50:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id 93A801F827 for ; Wed, 1 Aug 2018 20:34:27 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org ([127.0.1.124]) by socsvn.freebsd.org (8.15.2/8.15.2) with ESMTP id w71KYRwd012024 for ; Wed, 1 Aug 2018 20:34:27 GMT (envelope-from sduo@FreeBSD.org) Received: (from www@localhost) by socsvn.freebsd.org (8.15.2/8.15.2/Submit) id w71KYPap012021 for svn-soc-all@FreeBSD.org; Wed, 1 Aug 2018 20:34:25 GMT (envelope-from sduo@FreeBSD.org) Date: Wed, 1 Aug 2018 20:34:25 GMT Message-Id: <201808012034.w71KYPap012021@socsvn.freebsd.org> X-Authentication-Warning: socsvn.freebsd.org: www set sender to sduo@FreeBSD.org using -f From: sduo@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r337274 - in soc2018/sduo/head/sys: dev/ixl net MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-soc-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the entire Summer of Code repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Aug 2018 20:34:28 -0000 Author: sduo Date: Wed Aug 1 20:34:24 2018 New Revision: 337274 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=337274 Log: Fixed a bunch of calls to NETMAP_BUF_SIZE(). Modified: soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c soc2018/sduo/head/sys/net/iflib.c Modified: soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c ============================================================================== --- soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c Wed Aug 1 20:28:22 2018 (r337273) +++ soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c Wed Aug 1 20:34:24 2018 (r337274) @@ -619,7 +619,7 @@ struct netmap_kring *kring = na->tx_rings[que->me]; int si = netmap_idx_n2k(kring, i); netmap_load_map(na, buf->tag, buf->map, NMB(kring, slot + si), - NETMAP_BUF_SIZE(kring, 0)); + NETMAP_BUF_SIZE(na, 0)); } #endif /* DEV_NETMAP */ /* Clear the EOP index */ @@ -1426,7 +1426,7 @@ addr = PNMB(kring, slot + sj, &paddr); netmap_load_map(na, rxr->dma.tag, buf->pmap, addr, - NETMAP_BUF_SIZE(kring, 0)); + NETMAP_BUF_SIZE(na, 0)); /* Update descriptor and the cached value */ rxr->base[j].read.pkt_addr = htole64(paddr); rxr->base[j].read.hdr_addr = 0; Modified: soc2018/sduo/head/sys/net/iflib.c ============================================================================== --- soc2018/sduo/head/sys/net/iflib.c Wed Aug 1 20:28:22 2018 (r337273) +++ soc2018/sduo/head/sys/net/iflib.c Wed Aug 1 20:34:24 2018 (r337274) @@ -859,7 +859,7 @@ fl->ifl_vm_addrs[tmp_pidx] = addr; if (__predict_false(init) && map) { netmap_load_map(na, fl->ifl_ifdi->idi_tag, map[nic_i], addr, - NETMAP_BUF_SIZE(kring, 0)); + NETMAP_BUF_SIZE(na, 0)); } else if (map && (slot->flags & NS_BUF_CHANGED)) { /* buffer has changed, reload map */ netmap_reload_map(na, fl->ifl_ifdi->idi_tag, map[nic_i], addr); @@ -1204,7 +1204,7 @@ */ struct netmap_kring *kring = na->tx_rings[txq->ift_id]; int si = netmap_idx_n2k(kring, i); - netmap_load_map(na, txq->ift_desc_tag, txq->ift_sds.ifsd_map[i], NMB(kring, slot + si), NETMAP_BUF_SIZE(kring, 0)); + netmap_load_map(na, txq->ift_desc_tag, txq->ift_sds.ifsd_map[i], NMB(kring, slot + si), NETMAP_BUF_SIZE(na, 0)); } } From owner-svn-soc-all@freebsd.org Thu Aug 2 00:07:51 2018 Return-Path: Delivered-To: svn-soc-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 529AB106D492 for ; Thu, 2 Aug 2018 00:07:50 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 200B38E600 for ; Thu, 2 Aug 2018 00:07:49 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org (socsvn.freebsd.org [IPv6:2001:1900:2254:206a::50:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id 653152156C for ; Thu, 2 Aug 2018 00:07:48 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org ([127.0.1.124]) by socsvn.freebsd.org (8.15.2/8.15.2) with ESMTP id w7207m65080786 for ; Thu, 2 Aug 2018 00:07:48 GMT (envelope-from sduo@FreeBSD.org) Received: (from www@localhost) by socsvn.freebsd.org (8.15.2/8.15.2/Submit) id w7207dlD075072 for svn-soc-all@FreeBSD.org; Thu, 2 Aug 2018 00:07:39 GMT (envelope-from sduo@FreeBSD.org) Date: Thu, 2 Aug 2018 00:07:39 GMT Message-Id: <201808020007.w7207dlD075072@socsvn.freebsd.org> X-Authentication-Warning: socsvn.freebsd.org: www set sender to sduo@FreeBSD.org using -f From: sduo@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r337275 - in soc2018/sduo/head: . bin/setfacl bin/sh bin/sh/tests/builtins bin/sh/tests/parser cddl/contrib/opensolaris/cmd/zfs cddl/contrib/opensolaris/cmd/zpool cddl/contrib/openso... MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-soc-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the entire Summer of Code repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 02 Aug 2018 00:07:51 -0000 Author: sduo Date: Thu Aug 2 00:07:30 2018 New Revision: 337275 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=337275 Log: fixed compilation issues Added: soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/stats_tsd.h soc2018/sduo/head/contrib/sqlite3/tea/ soc2018/sduo/head/contrib/sqlite3/tea/Makefile.in soc2018/sduo/head/contrib/sqlite3/tea/README soc2018/sduo/head/contrib/sqlite3/tea/aclocal.m4 soc2018/sduo/head/contrib/sqlite3/tea/configure (contents, props changed) soc2018/sduo/head/contrib/sqlite3/tea/configure.ac soc2018/sduo/head/contrib/sqlite3/tea/doc/ soc2018/sduo/head/contrib/sqlite3/tea/doc/sqlite3.n soc2018/sduo/head/contrib/sqlite3/tea/generic/ soc2018/sduo/head/contrib/sqlite3/tea/generic/tclsqlite3.c soc2018/sduo/head/contrib/sqlite3/tea/license.terms soc2018/sduo/head/contrib/sqlite3/tea/pkgIndex.tcl.in soc2018/sduo/head/contrib/sqlite3/tea/tclconfig/ soc2018/sduo/head/contrib/sqlite3/tea/tclconfig/install-sh soc2018/sduo/head/contrib/sqlite3/tea/tclconfig/tcl.m4 soc2018/sduo/head/contrib/sqlite3/tea/win/ soc2018/sduo/head/contrib/sqlite3/tea/win/makefile.vc soc2018/sduo/head/contrib/sqlite3/tea/win/nmakehlp.c soc2018/sduo/head/contrib/sqlite3/tea/win/rules.vc soc2018/sduo/head/contrib/subversion/subversion/libsvn_delta/debug_editor.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/README soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/authz_pool.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/compress.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/utf8proc/LICENSE soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/utf8proc/README soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/utf8proc/utf8proc.h soc2018/sduo/head/contrib/unbound/libunbound/python/ soc2018/sduo/head/contrib/unbound/libunbound/python/LICENSE soc2018/sduo/head/contrib/unbound/libunbound/python/Makefile soc2018/sduo/head/contrib/unbound/libunbound/python/doc/ soc2018/sduo/head/contrib/unbound/libunbound/python/doc/_static/ soc2018/sduo/head/contrib/unbound/libunbound/python/doc/_static/readme soc2018/sduo/head/contrib/unbound/libunbound/python/doc/conf.py soc2018/sduo/head/contrib/unbound/libunbound/python/doc/examples/ soc2018/sduo/head/contrib/unbound/libunbound/python/doc/examples/example1a.rst soc2018/sduo/head/contrib/unbound/libunbound/python/doc/examples/example1b.rst soc2018/sduo/head/contrib/unbound/libunbound/python/doc/examples/example2.rst soc2018/sduo/head/contrib/unbound/libunbound/python/doc/examples/example3.rst soc2018/sduo/head/contrib/unbound/libunbound/python/doc/examples/example4.rst soc2018/sduo/head/contrib/unbound/libunbound/python/doc/examples/example5.rst soc2018/sduo/head/contrib/unbound/libunbound/python/doc/examples/example6-1.py soc2018/sduo/head/contrib/unbound/libunbound/python/doc/examples/example6.rst soc2018/sduo/head/contrib/unbound/libunbound/python/doc/examples/example7-1.py soc2018/sduo/head/contrib/unbound/libunbound/python/doc/examples/example7-2.py soc2018/sduo/head/contrib/unbound/libunbound/python/doc/examples/example7.rst soc2018/sduo/head/contrib/unbound/libunbound/python/doc/examples/example8-1.py soc2018/sduo/head/contrib/unbound/libunbound/python/doc/examples/example8.rst soc2018/sduo/head/contrib/unbound/libunbound/python/doc/examples/index.rst soc2018/sduo/head/contrib/unbound/libunbound/python/doc/index.rst soc2018/sduo/head/contrib/unbound/libunbound/python/doc/install.rst soc2018/sduo/head/contrib/unbound/libunbound/python/doc/intro.rst soc2018/sduo/head/contrib/unbound/libunbound/python/doc/modules/ soc2018/sduo/head/contrib/unbound/libunbound/python/doc/modules/unbound.rst soc2018/sduo/head/contrib/unbound/libunbound/python/examples/ soc2018/sduo/head/contrib/unbound/libunbound/python/examples/async-lookup.py soc2018/sduo/head/contrib/unbound/libunbound/python/examples/dns-lookup.py soc2018/sduo/head/contrib/unbound/libunbound/python/examples/dnssec-valid.py soc2018/sduo/head/contrib/unbound/libunbound/python/examples/dnssec_test.py soc2018/sduo/head/contrib/unbound/libunbound/python/examples/example8-1.py soc2018/sduo/head/contrib/unbound/libunbound/python/examples/idn-lookup.py soc2018/sduo/head/contrib/unbound/libunbound/python/examples/mx-lookup.py soc2018/sduo/head/contrib/unbound/libunbound/python/examples/ns-lookup.py soc2018/sduo/head/contrib/unbound/libunbound/python/examples/reverse-lookup.py soc2018/sduo/head/contrib/unbound/libunbound/python/file_py3.i soc2018/sduo/head/contrib/unbound/libunbound/python/libunbound.i soc2018/sduo/head/crypto/openssh/blocks.c soc2018/sduo/head/crypto/openssh/cipher-3des1.c soc2018/sduo/head/crypto/openssh/cipher-bf1.c soc2018/sduo/head/crypto/openssh/deattack.c soc2018/sduo/head/crypto/openssh/deattack.h soc2018/sduo/head/crypto/openssh/fixprogs (contents, props changed) soc2018/sduo/head/crypto/openssh/md-sha256.c soc2018/sduo/head/crypto/openssh/openbsd-compat/bsd-cray.c soc2018/sduo/head/crypto/openssh/openbsd-compat/bsd-cray.h soc2018/sduo/head/crypto/openssh/openbsd-compat/port-tun.c soc2018/sduo/head/crypto/openssh/openbsd-compat/port-tun.h soc2018/sduo/head/crypto/openssh/rsa.c soc2018/sduo/head/crypto/openssh/rsa.h soc2018/sduo/head/crypto/openssh/ssh1.h soc2018/sduo/head/crypto/openssh/sshconnect1.c soc2018/sduo/head/share/man/man4/ixgb.4 soc2018/sduo/head/share/man/man4/lmc.4 soc2018/sduo/head/share/man/man4/nxge.4 soc2018/sduo/head/share/skel/dot.rhosts soc2018/sduo/head/sys/amd64/conf/MYKERNEL soc2018/sduo/head/sys/dev/cxgbe/firmware/t4fw-1.16.63.0.bin.uu soc2018/sduo/head/sys/dev/cxgbe/firmware/t5fw-1.16.63.0.bin.uu soc2018/sduo/head/sys/dev/cxgbe/firmware/t6fw-1.16.63.0.bin.uu soc2018/sduo/head/sys/dev/ixgb/ soc2018/sduo/head/sys/dev/ixgb/LICENSE soc2018/sduo/head/sys/dev/ixgb/README soc2018/sduo/head/sys/dev/ixgb/if_ixgb.c soc2018/sduo/head/sys/dev/ixgb/if_ixgb.h soc2018/sduo/head/sys/dev/ixgb/if_ixgb_osdep.h soc2018/sduo/head/sys/dev/ixgb/ixgb_ee.c soc2018/sduo/head/sys/dev/ixgb/ixgb_ee.h soc2018/sduo/head/sys/dev/ixgb/ixgb_hw.c soc2018/sduo/head/sys/dev/ixgb/ixgb_hw.h soc2018/sduo/head/sys/dev/ixgb/ixgb_ids.h soc2018/sduo/head/sys/dev/ixl/i40e_virtchnl.h soc2018/sduo/head/sys/dev/lmc/ soc2018/sduo/head/sys/dev/lmc/if_lmc.c soc2018/sduo/head/sys/dev/lmc/if_lmc.h soc2018/sduo/head/sys/dev/nxge/ soc2018/sduo/head/sys/dev/nxge/if_nxge.c soc2018/sduo/head/sys/dev/nxge/if_nxge.h soc2018/sduo/head/sys/dev/nxge/include/ soc2018/sduo/head/sys/dev/nxge/include/build-version.h soc2018/sduo/head/sys/dev/nxge/include/version.h soc2018/sduo/head/sys/dev/nxge/include/xge-debug.h soc2018/sduo/head/sys/dev/nxge/include/xge-defs.h soc2018/sduo/head/sys/dev/nxge/include/xge-list.h soc2018/sduo/head/sys/dev/nxge/include/xge-os-pal.h soc2018/sduo/head/sys/dev/nxge/include/xge-queue.h soc2018/sduo/head/sys/dev/nxge/include/xgehal-channel.h soc2018/sduo/head/sys/dev/nxge/include/xgehal-config.h soc2018/sduo/head/sys/dev/nxge/include/xgehal-device.h soc2018/sduo/head/sys/dev/nxge/include/xgehal-driver.h soc2018/sduo/head/sys/dev/nxge/include/xgehal-event.h soc2018/sduo/head/sys/dev/nxge/include/xgehal-fifo.h soc2018/sduo/head/sys/dev/nxge/include/xgehal-mgmt.h soc2018/sduo/head/sys/dev/nxge/include/xgehal-mgmtaux.h soc2018/sduo/head/sys/dev/nxge/include/xgehal-mm.h soc2018/sduo/head/sys/dev/nxge/include/xgehal-regs.h soc2018/sduo/head/sys/dev/nxge/include/xgehal-ring.h soc2018/sduo/head/sys/dev/nxge/include/xgehal-stats.h soc2018/sduo/head/sys/dev/nxge/include/xgehal-types.h soc2018/sduo/head/sys/dev/nxge/include/xgehal.h soc2018/sduo/head/sys/dev/nxge/xge-osdep.h soc2018/sduo/head/sys/dev/nxge/xgehal/ soc2018/sduo/head/sys/dev/nxge/xgehal/xge-queue.c soc2018/sduo/head/sys/dev/nxge/xgehal/xgehal-channel-fp.c soc2018/sduo/head/sys/dev/nxge/xgehal/xgehal-channel.c soc2018/sduo/head/sys/dev/nxge/xgehal/xgehal-config.c soc2018/sduo/head/sys/dev/nxge/xgehal/xgehal-device-fp.c soc2018/sduo/head/sys/dev/nxge/xgehal/xgehal-device.c soc2018/sduo/head/sys/dev/nxge/xgehal/xgehal-driver.c soc2018/sduo/head/sys/dev/nxge/xgehal/xgehal-fifo-fp.c soc2018/sduo/head/sys/dev/nxge/xgehal/xgehal-fifo.c soc2018/sduo/head/sys/dev/nxge/xgehal/xgehal-mgmt.c soc2018/sduo/head/sys/dev/nxge/xgehal/xgehal-mgmtaux.c soc2018/sduo/head/sys/dev/nxge/xgehal/xgehal-mm.c soc2018/sduo/head/sys/dev/nxge/xgehal/xgehal-ring-fp.c soc2018/sduo/head/sys/dev/nxge/xgehal/xgehal-ring.c soc2018/sduo/head/sys/dev/nxge/xgehal/xgehal-stats.c soc2018/sduo/head/sys/dev/nxge/xgell-version.h soc2018/sduo/head/sys/dts/arm/overlays/sun8i-a83t-bananapi-m3-emac.dtso soc2018/sduo/head/sys/dts/arm/overlays/sun8i-a83t-emac.dtso soc2018/sduo/head/sys/gnu/dts/arm/cloudengines-pogoplug-series-3.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl-microsom-ar8035.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl-microsom.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx7d-pico.dts soc2018/sduo/head/sys/gnu/dts/arm/wd-mbwe.dts soc2018/sduo/head/sys/i386/linux/linux_support.s soc2018/sduo/head/sys/modules/dtb/overlays/ soc2018/sduo/head/sys/modules/dtb/overlays/Makefile soc2018/sduo/head/sys/modules/ixgb/ soc2018/sduo/head/sys/modules/ixgb/Makefile soc2018/sduo/head/sys/modules/lmc/ soc2018/sduo/head/sys/modules/lmc/Makefile soc2018/sduo/head/sys/modules/nxge/ soc2018/sduo/head/sys/modules/nxge/Makefile soc2018/sduo/head/sys/modules/random/ soc2018/sduo/head/sys/powerpc/powerpc/bcopy.c soc2018/sduo/head/sys/powerpc/powerpc/fuswintr.c soc2018/sduo/head/sys/powerpc/powerpc/suswintr.c soc2018/sduo/head/sys/riscv/riscv/bcopy.c soc2018/sduo/head/tools/build/options/WITHOUT_BSD_GREP_FASTMATCH soc2018/sduo/head/tools/build/options/WITH_BSD_GREP_FASTMATCH soc2018/sduo/head/tools/kerneldoc/subsys/Doxyfile-dev_ixgb soc2018/sduo/head/tools/kerneldoc/subsys/Doxyfile-dev_lmc soc2018/sduo/head/tools/kerneldoc/subsys/Doxyfile-dev_nxge soc2018/sduo/head/tools/tools/nxge/ soc2018/sduo/head/tools/tools/nxge/Makefile soc2018/sduo/head/tools/tools/nxge/xge_cmn.h soc2018/sduo/head/tools/tools/nxge/xge_info.c soc2018/sduo/head/tools/tools/nxge/xge_info.h soc2018/sduo/head/tools/tools/nxge/xge_log.c soc2018/sduo/head/tools/tools/nxge/xge_log.h soc2018/sduo/head/usr.bin/grep/regex/ soc2018/sduo/head/usr.bin/grep/regex/fastmatch.c soc2018/sduo/head/usr.bin/grep/regex/fastmatch.h soc2018/sduo/head/usr.bin/grep/regex/glue.h soc2018/sduo/head/usr.bin/grep/regex/hashtable.c soc2018/sduo/head/usr.bin/grep/regex/hashtable.h soc2018/sduo/head/usr.bin/grep/regex/tre-compile.c soc2018/sduo/head/usr.bin/grep/regex/tre-fastmatch.c soc2018/sduo/head/usr.bin/grep/regex/tre-fastmatch.h soc2018/sduo/head/usr.sbin/lmcconfig/ soc2018/sduo/head/usr.sbin/lmcconfig/Makefile soc2018/sduo/head/usr.sbin/lmcconfig/Makefile.depend soc2018/sduo/head/usr.sbin/lmcconfig/lmcconfig.8 soc2018/sduo/head/usr.sbin/lmcconfig/lmcconfig.c soc2018/sduo/head/usr.sbin/unbound/local-setup/ soc2018/sduo/head/usr.sbin/unbound/local-setup/Makefile soc2018/sduo/head/usr.sbin/unbound/local-setup/Makefile.depend soc2018/sduo/head/usr.sbin/unbound/local-setup/local-unbound-setup.sh (contents, props changed) Modified: soc2018/sduo/head/COPYRIGHT soc2018/sduo/head/Makefile.inc1 soc2018/sduo/head/ObsoleteFiles.inc soc2018/sduo/head/UPDATING soc2018/sduo/head/bin/setfacl/file.c soc2018/sduo/head/bin/setfacl/mask.c soc2018/sduo/head/bin/setfacl/merge.c soc2018/sduo/head/bin/setfacl/remove.c soc2018/sduo/head/bin/setfacl/setfacl.c soc2018/sduo/head/bin/setfacl/setfacl.h soc2018/sduo/head/bin/sh/expand.c soc2018/sduo/head/bin/sh/tests/builtins/Makefile soc2018/sduo/head/bin/sh/tests/parser/Makefile soc2018/sduo/head/cddl/contrib/opensolaris/cmd/zfs/zfs.8 soc2018/sduo/head/cddl/contrib/opensolaris/cmd/zpool/zpool-features.7 soc2018/sduo/head/cddl/contrib/opensolaris/cmd/zpool/zpool.8 soc2018/sduo/head/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_sendrecv.c soc2018/sduo/head/cddl/usr.sbin/dwatch/dwatch soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/Makefile soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/chmod soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/errno soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/io soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/ip soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/kill soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/nanosleep soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/open soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/proc soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/rw soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/sched soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/tcp soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/udp soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/vop_create soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/vop_readdir soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/vop_rename soc2018/sduo/head/cddl/usr.sbin/dwatch/libexec/vop_symlink soc2018/sduo/head/contrib/bsnmp/snmpd/snmpmod.3 soc2018/sduo/head/contrib/elftoolchain/ar/Makefile soc2018/sduo/head/contrib/elftoolchain/common/Makefile soc2018/sduo/head/contrib/elftoolchain/common/os.Linux.mk soc2018/sduo/head/contrib/elftoolchain/elfcopy/Makefile soc2018/sduo/head/contrib/elftoolchain/elfcopy/binary.c soc2018/sduo/head/contrib/elftoolchain/elfcopy/elfcopy.1 soc2018/sduo/head/contrib/elftoolchain/elfcopy/main.c soc2018/sduo/head/contrib/elftoolchain/elfdump/elfdump.c soc2018/sduo/head/contrib/elftoolchain/libdwarf/Makefile soc2018/sduo/head/contrib/elftoolchain/libdwarf/libdwarf.h soc2018/sduo/head/contrib/elftoolchain/libdwarf/libdwarf_frame.c soc2018/sduo/head/contrib/elftoolchain/libdwarf/libdwarf_reloc.c soc2018/sduo/head/contrib/elftoolchain/libelf/Makefile soc2018/sduo/head/contrib/elftoolchain/libelf/_libelf_config.h soc2018/sduo/head/contrib/elftoolchain/libelf/gelf_phdr.c soc2018/sduo/head/contrib/elftoolchain/libelf/libelf_ehdr.c soc2018/sduo/head/contrib/elftoolchain/libelftc/Makefile soc2018/sduo/head/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c soc2018/sduo/head/contrib/elftoolchain/libpe/Makefile soc2018/sduo/head/contrib/elftoolchain/nm/nm.1 soc2018/sduo/head/contrib/elftoolchain/readelf/readelf.c soc2018/sduo/head/contrib/elftoolchain/strings/strings.c soc2018/sduo/head/contrib/jemalloc/COPYING soc2018/sduo/head/contrib/jemalloc/ChangeLog soc2018/sduo/head/contrib/jemalloc/FREEBSD-Xlist soc2018/sduo/head/contrib/jemalloc/FREEBSD-diffs soc2018/sduo/head/contrib/jemalloc/VERSION soc2018/sduo/head/contrib/jemalloc/doc/jemalloc.3 soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/arena_externs.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/arena_inlines_a.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/arena_inlines_b.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/arena_structs_b.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/arena_types.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/background_thread_externs.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/background_thread_structs.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/base_externs.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/base_inlines.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/base_structs.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/base_types.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/ctl.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/extent_externs.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/extent_inlines.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/extent_structs.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/extent_types.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/hash.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal_decls.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal_defs.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal_inlines_a.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal_inlines_c.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal_macros.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/jemalloc_internal_types.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/jemalloc_preamble.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/malloc_io.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/mutex_prof.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/pages.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/private_namespace.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/prof_inlines_a.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/prof_inlines_b.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/rtree.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/rtree_tsd.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/spin.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/stats.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/sz.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/tcache_externs.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/tcache_inlines.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/tcache_structs.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/tcache_types.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/ticker.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/tsd.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/tsd_tls.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/internal/witness.h soc2018/sduo/head/contrib/jemalloc/include/jemalloc/jemalloc.h soc2018/sduo/head/contrib/jemalloc/src/arena.c soc2018/sduo/head/contrib/jemalloc/src/background_thread.c soc2018/sduo/head/contrib/jemalloc/src/base.c soc2018/sduo/head/contrib/jemalloc/src/ctl.c soc2018/sduo/head/contrib/jemalloc/src/extent.c soc2018/sduo/head/contrib/jemalloc/src/extent_dss.c soc2018/sduo/head/contrib/jemalloc/src/jemalloc.c soc2018/sduo/head/contrib/jemalloc/src/malloc_io.c soc2018/sduo/head/contrib/jemalloc/src/mutex.c soc2018/sduo/head/contrib/jemalloc/src/pages.c soc2018/sduo/head/contrib/jemalloc/src/prof.c soc2018/sduo/head/contrib/jemalloc/src/stats.c soc2018/sduo/head/contrib/jemalloc/src/sz.c soc2018/sduo/head/contrib/jemalloc/src/tcache.c soc2018/sduo/head/contrib/jemalloc/src/tsd.c soc2018/sduo/head/contrib/ldns/Changelog soc2018/sduo/head/contrib/ldns/Makefile.in soc2018/sduo/head/contrib/ldns/README soc2018/sduo/head/contrib/ldns/README.git soc2018/sduo/head/contrib/ldns/aclocal.m4 soc2018/sduo/head/contrib/ldns/acx_nlnetlabs.m4 soc2018/sduo/head/contrib/ldns/buffer.c soc2018/sduo/head/contrib/ldns/compat/b64_pton.c soc2018/sduo/head/contrib/ldns/compat/malloc.c soc2018/sduo/head/contrib/ldns/compat/snprintf.c soc2018/sduo/head/contrib/ldns/config.guess soc2018/sduo/head/contrib/ldns/config.sub soc2018/sduo/head/contrib/ldns/configure soc2018/sduo/head/contrib/ldns/configure.ac soc2018/sduo/head/contrib/ldns/dane.c soc2018/sduo/head/contrib/ldns/dname.c soc2018/sduo/head/contrib/ldns/dnssec.c soc2018/sduo/head/contrib/ldns/dnssec_sign.c soc2018/sduo/head/contrib/ldns/dnssec_verify.c soc2018/sduo/head/contrib/ldns/dnssec_zone.c soc2018/sduo/head/contrib/ldns/drill/chasetrace.c soc2018/sduo/head/contrib/ldns/drill/config.h soc2018/sduo/head/contrib/ldns/drill/config.h.in soc2018/sduo/head/contrib/ldns/drill/configure soc2018/sduo/head/contrib/ldns/drill/configure.ac soc2018/sduo/head/contrib/ldns/drill/drill.1 soc2018/sduo/head/contrib/ldns/drill/drill.1.in soc2018/sduo/head/contrib/ldns/drill/drill.c soc2018/sduo/head/contrib/ldns/drill/drill.h soc2018/sduo/head/contrib/ldns/drill/error.c soc2018/sduo/head/contrib/ldns/drill/securetrace.c soc2018/sduo/head/contrib/ldns/drill/work.c soc2018/sduo/head/contrib/ldns/duration.c soc2018/sduo/head/contrib/ldns/error.c soc2018/sduo/head/contrib/ldns/freebsd-configure.sh soc2018/sduo/head/contrib/ldns/higher.c soc2018/sduo/head/contrib/ldns/host2str.c soc2018/sduo/head/contrib/ldns/host2wire.c soc2018/sduo/head/contrib/ldns/install-sh soc2018/sduo/head/contrib/ldns/keys.c soc2018/sduo/head/contrib/ldns/ldns/buffer.h soc2018/sduo/head/contrib/ldns/ldns/common.h soc2018/sduo/head/contrib/ldns/ldns/common.h.in soc2018/sduo/head/contrib/ldns/ldns/config.h soc2018/sduo/head/contrib/ldns/ldns/config.h.in soc2018/sduo/head/contrib/ldns/ldns/dane.h soc2018/sduo/head/contrib/ldns/ldns/dname.h soc2018/sduo/head/contrib/ldns/ldns/dnssec.h soc2018/sduo/head/contrib/ldns/ldns/dnssec_sign.h soc2018/sduo/head/contrib/ldns/ldns/dnssec_verify.h soc2018/sduo/head/contrib/ldns/ldns/dnssec_zone.h soc2018/sduo/head/contrib/ldns/ldns/duration.h soc2018/sduo/head/contrib/ldns/ldns/error.h soc2018/sduo/head/contrib/ldns/ldns/higher.h soc2018/sduo/head/contrib/ldns/ldns/host2str.h soc2018/sduo/head/contrib/ldns/ldns/host2wire.h soc2018/sduo/head/contrib/ldns/ldns/keys.h soc2018/sduo/head/contrib/ldns/ldns/net.h soc2018/sduo/head/contrib/ldns/ldns/net.h.in soc2018/sduo/head/contrib/ldns/ldns/packet.h soc2018/sduo/head/contrib/ldns/ldns/radix.h soc2018/sduo/head/contrib/ldns/ldns/rbtree.h soc2018/sduo/head/contrib/ldns/ldns/rdata.h soc2018/sduo/head/contrib/ldns/ldns/resolver.h soc2018/sduo/head/contrib/ldns/ldns/rr.h soc2018/sduo/head/contrib/ldns/ldns/str2host.h soc2018/sduo/head/contrib/ldns/ldns/tsig.h soc2018/sduo/head/contrib/ldns/ldns/update.h soc2018/sduo/head/contrib/ldns/ldns/util.h soc2018/sduo/head/contrib/ldns/ldns/util.h.in soc2018/sduo/head/contrib/ldns/ldns/wire2host.h soc2018/sduo/head/contrib/ldns/ldns/zone.h soc2018/sduo/head/contrib/ldns/libdns.doxygen soc2018/sduo/head/contrib/ldns/ltmain.sh soc2018/sduo/head/contrib/ldns/m4/libtool.m4 soc2018/sduo/head/contrib/ldns/m4/ltoptions.m4 soc2018/sduo/head/contrib/ldns/m4/ltsugar.m4 soc2018/sduo/head/contrib/ldns/m4/ltversion.m4 soc2018/sduo/head/contrib/ldns/m4/lt~obsolete.m4 soc2018/sduo/head/contrib/ldns/net.c soc2018/sduo/head/contrib/ldns/packaging/ldns-config.1 soc2018/sduo/head/contrib/ldns/packaging/ldns-config.in soc2018/sduo/head/contrib/ldns/packet.c soc2018/sduo/head/contrib/ldns/parse.c soc2018/sduo/head/contrib/ldns/radix.c soc2018/sduo/head/contrib/ldns/rbtree.c soc2018/sduo/head/contrib/ldns/rdata.c soc2018/sduo/head/contrib/ldns/resolver.c soc2018/sduo/head/contrib/ldns/rr.c soc2018/sduo/head/contrib/ldns/rr_functions.c soc2018/sduo/head/contrib/ldns/str2host.c soc2018/sduo/head/contrib/ldns/tsig.c soc2018/sduo/head/contrib/ldns/update.c soc2018/sduo/head/contrib/ldns/util.c soc2018/sduo/head/contrib/ldns/wire2host.c soc2018/sduo/head/contrib/ldns/zone.c soc2018/sduo/head/contrib/llvm/include/llvm/CodeGen/MachineBasicBlock.h soc2018/sduo/head/contrib/llvm/lib/CodeGen/MachineBasicBlock.cpp soc2018/sduo/head/contrib/llvm/lib/Target/X86/Disassembler/X86Disassembler.cpp soc2018/sduo/head/contrib/llvm/lib/Target/X86/X86.h soc2018/sduo/head/contrib/llvm/lib/Target/X86/X86ISelLowering.cpp soc2018/sduo/head/contrib/llvm/lib/Target/X86/X86ISelLowering.h soc2018/sduo/head/contrib/llvm/lib/Target/X86/X86InstrCompiler.td soc2018/sduo/head/contrib/llvm/lib/Target/X86/X86InstrInfo.cpp soc2018/sduo/head/contrib/llvm/lib/Target/X86/X86InstrInfo.h soc2018/sduo/head/contrib/llvm/lib/Target/X86/X86InstrInfo.td soc2018/sduo/head/contrib/llvm/lib/Target/X86/X86InstrSystem.td soc2018/sduo/head/contrib/llvm/lib/Target/X86/X86RegisterInfo.td soc2018/sduo/head/contrib/llvm/lib/Target/X86/X86Schedule.td soc2018/sduo/head/contrib/llvm/lib/Target/X86/X86ScheduleAtom.td soc2018/sduo/head/contrib/llvm/lib/Target/X86/X86TargetMachine.cpp soc2018/sduo/head/contrib/llvm/tools/clang/include/clang/Driver/Options.td soc2018/sduo/head/contrib/llvm/tools/clang/lib/Basic/Targets/X86.cpp soc2018/sduo/head/contrib/llvm/tools/clang/lib/Basic/Targets/X86.h soc2018/sduo/head/contrib/llvm/tools/lld/ELF/Writer.cpp soc2018/sduo/head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/FreeBSDThread.cpp soc2018/sduo/head/contrib/llvm/tools/lldb/source/Plugins/Process/FreeBSD/ProcessMonitor.cpp soc2018/sduo/head/contrib/ofed/libibumad/umad.c soc2018/sduo/head/contrib/ofed/libibverbs/init.c soc2018/sduo/head/contrib/sqlite3/Makefile.am soc2018/sduo/head/contrib/sqlite3/Makefile.in soc2018/sduo/head/contrib/sqlite3/Makefile.msc soc2018/sduo/head/contrib/sqlite3/configure soc2018/sduo/head/contrib/sqlite3/configure.ac soc2018/sduo/head/contrib/sqlite3/shell.c soc2018/sduo/head/contrib/sqlite3/sqlite3.c soc2018/sduo/head/contrib/sqlite3/sqlite3.h soc2018/sduo/head/contrib/sqlite3/sqlite3ext.h soc2018/sduo/head/contrib/subversion/CHANGES soc2018/sduo/head/contrib/subversion/COMMITTERS soc2018/sduo/head/contrib/subversion/INSTALL soc2018/sduo/head/contrib/subversion/LICENSE soc2018/sduo/head/contrib/subversion/Makefile.in soc2018/sduo/head/contrib/subversion/NOTICE soc2018/sduo/head/contrib/subversion/README soc2018/sduo/head/contrib/subversion/aclocal.m4 soc2018/sduo/head/contrib/subversion/build-outputs.mk soc2018/sduo/head/contrib/subversion/build.conf soc2018/sduo/head/contrib/subversion/configure soc2018/sduo/head/contrib/subversion/configure.ac soc2018/sduo/head/contrib/subversion/doc/doxygen.conf soc2018/sduo/head/contrib/subversion/gen-make.py soc2018/sduo/head/contrib/subversion/get-deps.sh soc2018/sduo/head/contrib/subversion/subversion/include/private/ra_svn_sasl.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_atomic.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_cache.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_cmdline_private.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_delta_private.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_dep_compat.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_diff_private.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_diff_tree.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_fs_fs_private.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_fs_private.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_fs_util.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_io_private.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_log.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_mergeinfo_private.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_mutex.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_object_pool.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_packed_data.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_ra_svn_private.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_repos_private.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_sorts_private.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_sqlite.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_string_private.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_subr_private.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_temp_serializer.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_utf_private.h soc2018/sduo/head/contrib/subversion/subversion/include/private/svn_wc_private.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_auth.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_base64.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_checksum.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_client.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_cmdline.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_config.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_dav.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_delta.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_diff.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_error.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_error_codes.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_fs.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_hash.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_io.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_props.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_ra.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_ra_svn.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_repos.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_string.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_types.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_user.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_version.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_wc.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_x509.h soc2018/sduo/head/contrib/subversion/subversion/include/svn_xml.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_auth_gnome_keyring/gnome_keyring.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_auth_kwallet/kwallet.cpp soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/checkout.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/client.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/copy.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/deprecated.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/diff.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/diff_local.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/export.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/externals.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/import.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/info.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/list.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/merge.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/mergeinfo.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/mtcc.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/patch.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/ra.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/relocate.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/resolved.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/revisions.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_client/upgrade.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_delta/cancel.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_delta/compat.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_delta/debug_editor.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_delta/default_editor.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_delta/svndiff.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_delta/text_delta.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_delta/xdelta.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_diff/binary_diff.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_diff/diff.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_diff/diff3.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_diff/diff_file.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_diff/diff_memory.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_diff/parse-diff.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs/deprecated.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs/editor.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs/fs-loader.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs/fs-loader.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_base/bdb/rev-table.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_base/fs.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_base/lock.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_base/revs-txns.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_base/revs-txns.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_base/tree.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/cached_data.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/cached_data.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/caching.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/dag.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/fs.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/fs.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/fs_fs.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/fs_fs.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/hotcopy.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/hotcopy.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/id.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/index.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/load-index.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/lock.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/low_level.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/low_level.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/pack.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/recovery.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/rep-cache-db.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/rep-cache-db.sql soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/rep-cache.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/rep-cache.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/rev_file.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/revprops.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/revprops.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/stats.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/structure soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/structure-indexes soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/temp_serializer.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/temp_serializer.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/transaction.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/tree.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/util.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/util.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_fs/verify.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_util/fs-util.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/cached_data.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/cached_data.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/caching.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/changes.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/changes.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/dag.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/dag.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/fs.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/fs.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/fs_x.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/fs_x.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/hotcopy.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/hotcopy.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/index.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/index.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/lock.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/lock.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/low_level.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/low_level.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/noderevs.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/noderevs.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/pack.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/pack.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/recovery.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/recovery.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/rep-cache-db.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/rep-cache.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/rep-cache.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/reps.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/reps.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/rev_file.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/rev_file.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/revprops.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/revprops.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/string_table.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/string_table.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/temp_serializer.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/temp_serializer.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/transaction.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/transaction.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/tree.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/tree.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/util.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/util.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/verify.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_fs_x/verify.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra/ra_loader.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra/ra_loader.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_local/ra_plugin.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/blame.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/commit.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/eagain_bucket.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/get_file.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/getlocations.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/getlocationsegments.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/libsvn_ra_serf.pc.in soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/lock.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/log.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/merge.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/mergeinfo.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/multistatus.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/options.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/property.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/ra_serf.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/replay.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/sb_bucket.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/serf.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/stat.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/update.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/util.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_serf/xml.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_svn/client.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_svn/cram.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_svn/cyrus_auth.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_svn/deprecated.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_svn/editorp.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_svn/internal_auth.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_svn/marshal.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_svn/protocol soc2018/sduo/head/contrib/subversion/subversion/libsvn_ra_svn/ra_svn.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/authz.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/commit.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/config_pool.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/delta.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/deprecated.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/dump.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/fs-wrap.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/hooks.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/load-fs-vtable.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/load.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/log.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/replay.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/reporter.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/repos.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/repos.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_repos/rev_hunt.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/atomic.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/auth.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/base64.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/cache-inprocess.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/cache-membuffer.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/checksum.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/cmdline.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/config.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/config_auth.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/config_file.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/config_impl.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/config_win.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/deprecated.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/dirent_uri.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/dso.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/eol.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/error.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/errorcode.inc soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/fnv1a.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/fnv1a.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/gpg_agent.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/hash.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/internal_statements.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/io.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/libsvn_subr.pc.in soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/log.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/mergeinfo.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/mutex.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/object_pool.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/opt.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/packed_data.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/path.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/pool.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/prefix_string.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/prompt.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/properties.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/skel.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/sorts.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/spillbuf.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/sqlite.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/sqlite3wrapper.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/stream.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/string.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/subst.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/sysinfo.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/temp_serializer.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/user.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/utf.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/utf8proc.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/utf8proc/utf8proc.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/utf8proc/utf8proc_data.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/version.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/win32_crashrpt.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/win32_crashrpt_dll.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/win32_crypto.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/win32_xlate.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/x509info.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/x509parse.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_subr/xml.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/adm_crawler.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/conflicts.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/copy.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/crop.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/deprecated.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/diff.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/diff_editor.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/diff_local.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/entries.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/externals.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/node.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/old-and-busted.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/props.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/status.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/translate.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/upgrade.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/wc-checks.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/wc-metadata.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/wc-metadata.sql soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/wc-queries.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/wc-queries.sql soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/wc.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/wc_db.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/wc_db.h soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/wc_db_pristine.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/wc_db_update_move.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/wc_db_util.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/wcroot_anchor.c soc2018/sduo/head/contrib/subversion/subversion/libsvn_wc/workqueue.c soc2018/sduo/head/contrib/subversion/subversion/svn/cl-conflicts.c soc2018/sduo/head/contrib/subversion/subversion/svn/cl-conflicts.h soc2018/sduo/head/contrib/subversion/subversion/svn/cl-log.h soc2018/sduo/head/contrib/subversion/subversion/svn/cl.h soc2018/sduo/head/contrib/subversion/subversion/svn/cleanup-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svn/conflict-callbacks.c soc2018/sduo/head/contrib/subversion/subversion/svn/diff-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svn/help-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svn/info-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svn/list-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svn/log-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svn/merge-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svn/notify.c soc2018/sduo/head/contrib/subversion/subversion/svn/propdel-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svn/propedit-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svn/propget-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svn/propset-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svn/resolve-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svn/status.c soc2018/sduo/head/contrib/subversion/subversion/svn/svn.c soc2018/sduo/head/contrib/subversion/subversion/svn/switch-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svn/update-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svn/util.c soc2018/sduo/head/contrib/subversion/subversion/svn_private_config.h.in soc2018/sduo/head/contrib/subversion/subversion/svn_private_config.hw soc2018/sduo/head/contrib/subversion/subversion/svnadmin/svnadmin.c soc2018/sduo/head/contrib/subversion/subversion/svnbench/cl.h soc2018/sduo/head/contrib/subversion/subversion/svnbench/null-export-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svnbench/null-list-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svnbench/null-log-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svnbench/svnbench.c soc2018/sduo/head/contrib/subversion/subversion/svndumpfilter/svndumpfilter.c soc2018/sduo/head/contrib/subversion/subversion/svnfsfs/load-index-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svnfsfs/stats-cmd.c soc2018/sduo/head/contrib/subversion/subversion/svnfsfs/svnfsfs.c soc2018/sduo/head/contrib/subversion/subversion/svnfsfs/svnfsfs.h soc2018/sduo/head/contrib/subversion/subversion/svnlook/svnlook.c soc2018/sduo/head/contrib/subversion/subversion/svnmucc/svnmucc.c soc2018/sduo/head/contrib/subversion/subversion/svnrdump/dump_editor.c soc2018/sduo/head/contrib/subversion/subversion/svnrdump/load_editor.c soc2018/sduo/head/contrib/subversion/subversion/svnrdump/svnrdump.c soc2018/sduo/head/contrib/subversion/subversion/svnrdump/svnrdump.h soc2018/sduo/head/contrib/subversion/subversion/svnrdump/util.c soc2018/sduo/head/contrib/subversion/subversion/svnserve/cyrus_auth.c soc2018/sduo/head/contrib/subversion/subversion/svnserve/serve.c soc2018/sduo/head/contrib/subversion/subversion/svnserve/server.h soc2018/sduo/head/contrib/subversion/subversion/svnserve/svnserve.c soc2018/sduo/head/contrib/subversion/subversion/svnsync/svnsync.c soc2018/sduo/head/contrib/subversion/win-tests.py soc2018/sduo/head/contrib/top/display.c soc2018/sduo/head/contrib/top/screen.c soc2018/sduo/head/contrib/top/screen.h soc2018/sduo/head/contrib/top/top.c soc2018/sduo/head/contrib/tzdata/Makefile soc2018/sduo/head/contrib/tzdata/NEWS soc2018/sduo/head/contrib/tzdata/africa soc2018/sduo/head/contrib/tzdata/asia soc2018/sduo/head/contrib/tzdata/australasia soc2018/sduo/head/contrib/tzdata/europe soc2018/sduo/head/contrib/tzdata/theory.html soc2018/sduo/head/contrib/tzdata/version soc2018/sduo/head/contrib/tzdata/ziguard.awk soc2018/sduo/head/contrib/unbound/Makefile.in soc2018/sduo/head/contrib/unbound/ac_pkg_swig.m4 soc2018/sduo/head/contrib/unbound/aclocal.m4 soc2018/sduo/head/contrib/unbound/acx_nlnetlabs.m4 soc2018/sduo/head/contrib/unbound/acx_python.m4 soc2018/sduo/head/contrib/unbound/cachedb/cachedb.c soc2018/sduo/head/contrib/unbound/cachedb/cachedb.h soc2018/sduo/head/contrib/unbound/compat/arc4_lock.c soc2018/sduo/head/contrib/unbound/compat/ctime_r.c soc2018/sduo/head/contrib/unbound/config.guess soc2018/sduo/head/contrib/unbound/config.h soc2018/sduo/head/contrib/unbound/config.h.in soc2018/sduo/head/contrib/unbound/config.sub soc2018/sduo/head/contrib/unbound/configure soc2018/sduo/head/contrib/unbound/configure.ac soc2018/sduo/head/contrib/unbound/contrib/README soc2018/sduo/head/contrib/unbound/contrib/aaaa-filter-iterator.patch soc2018/sduo/head/contrib/unbound/contrib/libunbound.pc.in soc2018/sduo/head/contrib/unbound/contrib/parseunbound.pl soc2018/sduo/head/contrib/unbound/contrib/unbound_munin_ soc2018/sduo/head/contrib/unbound/daemon/acl_list.c soc2018/sduo/head/contrib/unbound/daemon/acl_list.h soc2018/sduo/head/contrib/unbound/daemon/cachedump.c soc2018/sduo/head/contrib/unbound/daemon/daemon.c soc2018/sduo/head/contrib/unbound/daemon/daemon.h soc2018/sduo/head/contrib/unbound/daemon/remote.c soc2018/sduo/head/contrib/unbound/daemon/stats.c soc2018/sduo/head/contrib/unbound/daemon/stats.h soc2018/sduo/head/contrib/unbound/daemon/unbound.c soc2018/sduo/head/contrib/unbound/daemon/worker.c soc2018/sduo/head/contrib/unbound/daemon/worker.h soc2018/sduo/head/contrib/unbound/dns64/dns64.c soc2018/sduo/head/contrib/unbound/dnstap/dnstap.c soc2018/sduo/head/contrib/unbound/dnstap/dnstap.proto soc2018/sduo/head/contrib/unbound/doc/Changelog soc2018/sduo/head/contrib/unbound/doc/README soc2018/sduo/head/contrib/unbound/doc/example.conf soc2018/sduo/head/contrib/unbound/doc/example.conf.in soc2018/sduo/head/contrib/unbound/doc/libunbound.3 soc2018/sduo/head/contrib/unbound/doc/libunbound.3.in soc2018/sduo/head/contrib/unbound/doc/requirements.txt soc2018/sduo/head/contrib/unbound/doc/unbound-anchor.8 soc2018/sduo/head/contrib/unbound/doc/unbound-anchor.8.in soc2018/sduo/head/contrib/unbound/doc/unbound-checkconf.8 soc2018/sduo/head/contrib/unbound/doc/unbound-checkconf.8.in soc2018/sduo/head/contrib/unbound/doc/unbound-control.8 soc2018/sduo/head/contrib/unbound/doc/unbound-control.8.in soc2018/sduo/head/contrib/unbound/doc/unbound-host.1 soc2018/sduo/head/contrib/unbound/doc/unbound-host.1.in soc2018/sduo/head/contrib/unbound/doc/unbound.8 soc2018/sduo/head/contrib/unbound/doc/unbound.8.in soc2018/sduo/head/contrib/unbound/doc/unbound.conf.5 soc2018/sduo/head/contrib/unbound/doc/unbound.conf.5.in soc2018/sduo/head/contrib/unbound/iterator/iter_delegpt.c soc2018/sduo/head/contrib/unbound/iterator/iter_delegpt.h soc2018/sduo/head/contrib/unbound/iterator/iter_donotq.h soc2018/sduo/head/contrib/unbound/iterator/iter_fwd.c soc2018/sduo/head/contrib/unbound/iterator/iter_fwd.h soc2018/sduo/head/contrib/unbound/iterator/iter_hints.c soc2018/sduo/head/contrib/unbound/iterator/iter_hints.h soc2018/sduo/head/contrib/unbound/iterator/iter_priv.h soc2018/sduo/head/contrib/unbound/iterator/iter_scrub.c soc2018/sduo/head/contrib/unbound/iterator/iter_utils.c soc2018/sduo/head/contrib/unbound/iterator/iter_utils.h soc2018/sduo/head/contrib/unbound/iterator/iterator.c soc2018/sduo/head/contrib/unbound/iterator/iterator.h soc2018/sduo/head/contrib/unbound/libunbound/context.c soc2018/sduo/head/contrib/unbound/libunbound/context.h soc2018/sduo/head/contrib/unbound/libunbound/libunbound.c soc2018/sduo/head/contrib/unbound/libunbound/libworker.c soc2018/sduo/head/contrib/unbound/libunbound/libworker.h soc2018/sduo/head/contrib/unbound/libunbound/unbound-event.h soc2018/sduo/head/contrib/unbound/libunbound/unbound.h soc2018/sduo/head/contrib/unbound/libunbound/worker.h soc2018/sduo/head/contrib/unbound/services/cache/dns.c soc2018/sduo/head/contrib/unbound/services/cache/dns.h soc2018/sduo/head/contrib/unbound/services/cache/infra.c soc2018/sduo/head/contrib/unbound/services/cache/infra.h soc2018/sduo/head/contrib/unbound/services/cache/rrset.c soc2018/sduo/head/contrib/unbound/services/cache/rrset.h soc2018/sduo/head/contrib/unbound/services/listen_dnsport.c soc2018/sduo/head/contrib/unbound/services/listen_dnsport.h soc2018/sduo/head/contrib/unbound/services/localzone.c soc2018/sduo/head/contrib/unbound/services/localzone.h soc2018/sduo/head/contrib/unbound/services/mesh.c soc2018/sduo/head/contrib/unbound/services/mesh.h soc2018/sduo/head/contrib/unbound/services/modstack.c soc2018/sduo/head/contrib/unbound/services/modstack.h soc2018/sduo/head/contrib/unbound/services/outside_network.c soc2018/sduo/head/contrib/unbound/services/outside_network.h soc2018/sduo/head/contrib/unbound/sldns/keyraw.c soc2018/sduo/head/contrib/unbound/sldns/keyraw.h soc2018/sduo/head/contrib/unbound/sldns/parse.c soc2018/sduo/head/contrib/unbound/sldns/parse.h soc2018/sduo/head/contrib/unbound/sldns/parseutil.c soc2018/sduo/head/contrib/unbound/sldns/parseutil.h soc2018/sduo/head/contrib/unbound/sldns/rrdef.c soc2018/sduo/head/contrib/unbound/sldns/rrdef.h soc2018/sduo/head/contrib/unbound/sldns/sbuffer.c soc2018/sduo/head/contrib/unbound/sldns/sbuffer.h soc2018/sduo/head/contrib/unbound/sldns/str2wire.c soc2018/sduo/head/contrib/unbound/sldns/str2wire.h soc2018/sduo/head/contrib/unbound/sldns/wire2str.c soc2018/sduo/head/contrib/unbound/sldns/wire2str.h soc2018/sduo/head/contrib/unbound/smallapp/unbound-anchor.c soc2018/sduo/head/contrib/unbound/smallapp/unbound-checkconf.c soc2018/sduo/head/contrib/unbound/smallapp/unbound-control.c soc2018/sduo/head/contrib/unbound/smallapp/unbound-host.c soc2018/sduo/head/contrib/unbound/smallapp/worker_cb.c soc2018/sduo/head/contrib/unbound/util/alloc.c soc2018/sduo/head/contrib/unbound/util/alloc.h soc2018/sduo/head/contrib/unbound/util/config_file.c soc2018/sduo/head/contrib/unbound/util/config_file.h soc2018/sduo/head/contrib/unbound/util/configlexer.lex soc2018/sduo/head/contrib/unbound/util/configparser.y soc2018/sduo/head/contrib/unbound/util/data/dname.c soc2018/sduo/head/contrib/unbound/util/data/dname.h soc2018/sduo/head/contrib/unbound/util/data/msgencode.c soc2018/sduo/head/contrib/unbound/util/data/msgparse.c soc2018/sduo/head/contrib/unbound/util/data/msgparse.h soc2018/sduo/head/contrib/unbound/util/data/msgreply.c soc2018/sduo/head/contrib/unbound/util/data/msgreply.h soc2018/sduo/head/contrib/unbound/util/data/packed_rrset.c soc2018/sduo/head/contrib/unbound/util/data/packed_rrset.h soc2018/sduo/head/contrib/unbound/util/fptr_wlist.c soc2018/sduo/head/contrib/unbound/util/fptr_wlist.h soc2018/sduo/head/contrib/unbound/util/iana_ports.inc soc2018/sduo/head/contrib/unbound/util/locks.c soc2018/sduo/head/contrib/unbound/util/locks.h soc2018/sduo/head/contrib/unbound/util/log.c soc2018/sduo/head/contrib/unbound/util/log.h soc2018/sduo/head/contrib/unbound/util/mini_event.c soc2018/sduo/head/contrib/unbound/util/mini_event.h soc2018/sduo/head/contrib/unbound/util/module.c soc2018/sduo/head/contrib/unbound/util/module.h soc2018/sduo/head/contrib/unbound/util/net_help.c soc2018/sduo/head/contrib/unbound/util/net_help.h soc2018/sduo/head/contrib/unbound/util/netevent.c soc2018/sduo/head/contrib/unbound/util/netevent.h soc2018/sduo/head/contrib/unbound/util/rbtree.c soc2018/sduo/head/contrib/unbound/util/rbtree.h soc2018/sduo/head/contrib/unbound/util/storage/dnstree.c soc2018/sduo/head/contrib/unbound/util/storage/dnstree.h soc2018/sduo/head/contrib/unbound/util/storage/lookup3.c soc2018/sduo/head/contrib/unbound/util/storage/lruhash.c soc2018/sduo/head/contrib/unbound/util/storage/lruhash.h soc2018/sduo/head/contrib/unbound/util/storage/slabhash.c soc2018/sduo/head/contrib/unbound/util/storage/slabhash.h soc2018/sduo/head/contrib/unbound/util/timehist.c soc2018/sduo/head/contrib/unbound/util/timehist.h soc2018/sduo/head/contrib/unbound/util/tube.c soc2018/sduo/head/contrib/unbound/util/tube.h soc2018/sduo/head/contrib/unbound/util/ub_event.c soc2018/sduo/head/contrib/unbound/util/ub_event.h soc2018/sduo/head/contrib/unbound/util/winsock_event.c soc2018/sduo/head/contrib/unbound/util/winsock_event.h soc2018/sduo/head/contrib/unbound/validator/autotrust.c soc2018/sduo/head/contrib/unbound/validator/autotrust.h soc2018/sduo/head/contrib/unbound/validator/val_anchor.c soc2018/sduo/head/contrib/unbound/validator/val_anchor.h soc2018/sduo/head/contrib/unbound/validator/val_neg.c soc2018/sduo/head/contrib/unbound/validator/val_neg.h soc2018/sduo/head/contrib/unbound/validator/val_nsec.c soc2018/sduo/head/contrib/unbound/validator/val_nsec.h soc2018/sduo/head/contrib/unbound/validator/val_nsec3.c soc2018/sduo/head/contrib/unbound/validator/val_nsec3.h soc2018/sduo/head/contrib/unbound/validator/val_secalgo.c soc2018/sduo/head/contrib/unbound/validator/val_sigcrypt.c soc2018/sduo/head/contrib/unbound/validator/val_sigcrypt.h soc2018/sduo/head/contrib/unbound/validator/val_utils.c soc2018/sduo/head/contrib/unbound/validator/val_utils.h soc2018/sduo/head/contrib/unbound/validator/validator.c soc2018/sduo/head/contrib/unbound/validator/validator.h soc2018/sduo/head/crypto/openssh/.skipped-commit-ids soc2018/sduo/head/crypto/openssh/ChangeLog soc2018/sduo/head/crypto/openssh/FREEBSD-upgrade soc2018/sduo/head/crypto/openssh/INSTALL soc2018/sduo/head/crypto/openssh/LICENCE soc2018/sduo/head/crypto/openssh/Makefile.in soc2018/sduo/head/crypto/openssh/PROTOCOL soc2018/sduo/head/crypto/openssh/PROTOCOL.agent soc2018/sduo/head/crypto/openssh/PROTOCOL.certkeys soc2018/sduo/head/crypto/openssh/README soc2018/sduo/head/crypto/openssh/README.privsep soc2018/sduo/head/crypto/openssh/auth-options.c soc2018/sduo/head/crypto/openssh/auth-options.h soc2018/sduo/head/crypto/openssh/auth-pam.c soc2018/sduo/head/crypto/openssh/auth-pam.h soc2018/sduo/head/crypto/openssh/auth-passwd.c soc2018/sduo/head/crypto/openssh/auth-sia.c soc2018/sduo/head/crypto/openssh/auth.c soc2018/sduo/head/crypto/openssh/auth.h soc2018/sduo/head/crypto/openssh/auth2-chall.c soc2018/sduo/head/crypto/openssh/auth2-gss.c soc2018/sduo/head/crypto/openssh/auth2-hostbased.c soc2018/sduo/head/crypto/openssh/auth2-kbdint.c soc2018/sduo/head/crypto/openssh/auth2-none.c soc2018/sduo/head/crypto/openssh/auth2-passwd.c soc2018/sduo/head/crypto/openssh/auth2-pubkey.c soc2018/sduo/head/crypto/openssh/auth2.c soc2018/sduo/head/crypto/openssh/authfd.c soc2018/sduo/head/crypto/openssh/authfd.h soc2018/sduo/head/crypto/openssh/authfile.c soc2018/sduo/head/crypto/openssh/bitmap.c soc2018/sduo/head/crypto/openssh/bitmap.h soc2018/sduo/head/crypto/openssh/bufbn.c soc2018/sduo/head/crypto/openssh/buffer.h soc2018/sduo/head/crypto/openssh/channels.c soc2018/sduo/head/crypto/openssh/channels.h soc2018/sduo/head/crypto/openssh/cipher.c soc2018/sduo/head/crypto/openssh/cipher.h soc2018/sduo/head/crypto/openssh/clientloop.c soc2018/sduo/head/crypto/openssh/clientloop.h soc2018/sduo/head/crypto/openssh/compat.c soc2018/sduo/head/crypto/openssh/compat.h soc2018/sduo/head/crypto/openssh/config.h soc2018/sduo/head/crypto/openssh/configure.ac soc2018/sduo/head/crypto/openssh/contrib/aix/README soc2018/sduo/head/crypto/openssh/contrib/aix/buildbff.sh soc2018/sduo/head/crypto/openssh/contrib/aix/inventory.sh soc2018/sduo/head/crypto/openssh/contrib/cygwin/Makefile soc2018/sduo/head/crypto/openssh/contrib/findssl.sh soc2018/sduo/head/crypto/openssh/contrib/redhat/openssh.spec soc2018/sduo/head/crypto/openssh/contrib/redhat/sshd.init soc2018/sduo/head/crypto/openssh/contrib/redhat/sshd.init.old soc2018/sduo/head/crypto/openssh/contrib/ssh-copy-id soc2018/sduo/head/crypto/openssh/contrib/suse/openssh.spec soc2018/sduo/head/crypto/openssh/crypto_api.h soc2018/sduo/head/crypto/openssh/defines.h soc2018/sduo/head/crypto/openssh/dh.c soc2018/sduo/head/crypto/openssh/digest-libc.c soc2018/sduo/head/crypto/openssh/digest-openssl.c soc2018/sduo/head/crypto/openssh/digest.h soc2018/sduo/head/crypto/openssh/dispatch.c soc2018/sduo/head/crypto/openssh/dispatch.h soc2018/sduo/head/crypto/openssh/dns.c soc2018/sduo/head/crypto/openssh/dns.h soc2018/sduo/head/crypto/openssh/entropy.c soc2018/sduo/head/crypto/openssh/gss-serv.c soc2018/sduo/head/crypto/openssh/hash.c soc2018/sduo/head/crypto/openssh/hostfile.c soc2018/sduo/head/crypto/openssh/includes.h soc2018/sduo/head/crypto/openssh/install-sh soc2018/sduo/head/crypto/openssh/kex.c soc2018/sduo/head/crypto/openssh/kex.h soc2018/sduo/head/crypto/openssh/kexc25519c.c soc2018/sduo/head/crypto/openssh/kexc25519s.c soc2018/sduo/head/crypto/openssh/kexdhc.c soc2018/sduo/head/crypto/openssh/kexdhs.c soc2018/sduo/head/crypto/openssh/kexecdhc.c soc2018/sduo/head/crypto/openssh/kexecdhs.c soc2018/sduo/head/crypto/openssh/kexgexc.c soc2018/sduo/head/crypto/openssh/kexgexs.c soc2018/sduo/head/crypto/openssh/key.c soc2018/sduo/head/crypto/openssh/key.h soc2018/sduo/head/crypto/openssh/krl.c soc2018/sduo/head/crypto/openssh/log.c soc2018/sduo/head/crypto/openssh/log.h soc2018/sduo/head/crypto/openssh/loginrec.c soc2018/sduo/head/crypto/openssh/mac.c soc2018/sduo/head/crypto/openssh/md5crypt.c soc2018/sduo/head/crypto/openssh/mdoc2man.awk soc2018/sduo/head/crypto/openssh/misc.c soc2018/sduo/head/crypto/openssh/misc.h soc2018/sduo/head/crypto/openssh/mkinstalldirs soc2018/sduo/head/crypto/openssh/moduli soc2018/sduo/head/crypto/openssh/moduli.c soc2018/sduo/head/crypto/openssh/monitor.c soc2018/sduo/head/crypto/openssh/monitor_wrap.c soc2018/sduo/head/crypto/openssh/monitor_wrap.h soc2018/sduo/head/crypto/openssh/mux.c soc2018/sduo/head/crypto/openssh/myproposal.h soc2018/sduo/head/crypto/openssh/nchan.c soc2018/sduo/head/crypto/openssh/opacket.c soc2018/sduo/head/crypto/openssh/opacket.h soc2018/sduo/head/crypto/openssh/openbsd-compat/Makefile.in soc2018/sduo/head/crypto/openssh/openbsd-compat/bsd-err.c soc2018/sduo/head/crypto/openssh/openbsd-compat/bsd-misc.c soc2018/sduo/head/crypto/openssh/openbsd-compat/bsd-misc.h soc2018/sduo/head/crypto/openssh/openbsd-compat/bsd-openpty.c soc2018/sduo/head/crypto/openssh/openbsd-compat/bsd-statvfs.c soc2018/sduo/head/crypto/openssh/openbsd-compat/bsd-statvfs.h soc2018/sduo/head/crypto/openssh/openbsd-compat/explicit_bzero.c soc2018/sduo/head/crypto/openssh/openbsd-compat/fmt_scaled.c soc2018/sduo/head/crypto/openssh/openbsd-compat/openbsd-compat.h soc2018/sduo/head/crypto/openssh/openbsd-compat/port-aix.c soc2018/sduo/head/crypto/openssh/openbsd-compat/port-linux.c soc2018/sduo/head/crypto/openssh/openbsd-compat/port-uw.c soc2018/sduo/head/crypto/openssh/openbsd-compat/readpassphrase.c soc2018/sduo/head/crypto/openssh/openbsd-compat/regress/Makefile.in soc2018/sduo/head/crypto/openssh/openbsd-compat/strnlen.c soc2018/sduo/head/crypto/openssh/opensshd.init.in soc2018/sduo/head/crypto/openssh/packet.c soc2018/sduo/head/crypto/openssh/packet.h soc2018/sduo/head/crypto/openssh/pathnames.h soc2018/sduo/head/crypto/openssh/platform.c soc2018/sduo/head/crypto/openssh/readconf.c soc2018/sduo/head/crypto/openssh/readconf.h soc2018/sduo/head/crypto/openssh/regress/Makefile soc2018/sduo/head/crypto/openssh/regress/README.regress soc2018/sduo/head/crypto/openssh/regress/agent-getpeereid.sh soc2018/sduo/head/crypto/openssh/regress/agent-pkcs11.sh soc2018/sduo/head/crypto/openssh/regress/agent-ptrace.sh soc2018/sduo/head/crypto/openssh/regress/agent.sh soc2018/sduo/head/crypto/openssh/regress/allow-deny-users.sh soc2018/sduo/head/crypto/openssh/regress/banner.sh soc2018/sduo/head/crypto/openssh/regress/broken-pipe.sh soc2018/sduo/head/crypto/openssh/regress/brokenkeys.sh soc2018/sduo/head/crypto/openssh/regress/cert-file.sh soc2018/sduo/head/crypto/openssh/regress/cert-hostkey.sh soc2018/sduo/head/crypto/openssh/regress/cert-userkey.sh soc2018/sduo/head/crypto/openssh/regress/cfgmatch.sh soc2018/sduo/head/crypto/openssh/regress/cipher-speed.sh soc2018/sduo/head/crypto/openssh/regress/connect-privsep.sh soc2018/sduo/head/crypto/openssh/regress/connect.sh soc2018/sduo/head/crypto/openssh/regress/dhgex.sh soc2018/sduo/head/crypto/openssh/regress/dynamic-forward.sh soc2018/sduo/head/crypto/openssh/regress/exit-status.sh soc2018/sduo/head/crypto/openssh/regress/forcecommand.sh soc2018/sduo/head/crypto/openssh/regress/forward-control.sh soc2018/sduo/head/crypto/openssh/regress/forwarding.sh soc2018/sduo/head/crypto/openssh/regress/host-expand.sh soc2018/sduo/head/crypto/openssh/regress/hostkey-agent.sh soc2018/sduo/head/crypto/openssh/regress/integrity.sh soc2018/sduo/head/crypto/openssh/regress/key-options.sh soc2018/sduo/head/crypto/openssh/regress/keygen-change.sh soc2018/sduo/head/crypto/openssh/regress/keys-command.sh soc2018/sduo/head/crypto/openssh/regress/keyscan.sh soc2018/sduo/head/crypto/openssh/regress/keytype.sh soc2018/sduo/head/crypto/openssh/regress/limit-keytype.sh soc2018/sduo/head/crypto/openssh/regress/localcommand.sh soc2018/sduo/head/crypto/openssh/regress/login-timeout.sh soc2018/sduo/head/crypto/openssh/regress/misc/kexfuzz/Makefile soc2018/sduo/head/crypto/openssh/regress/misc/kexfuzz/README soc2018/sduo/head/crypto/openssh/regress/misc/kexfuzz/kexfuzz.c soc2018/sduo/head/crypto/openssh/regress/multiplex.sh soc2018/sduo/head/crypto/openssh/regress/netcat.c soc2018/sduo/head/crypto/openssh/regress/principals-command.sh soc2018/sduo/head/crypto/openssh/regress/proto-mismatch.sh soc2018/sduo/head/crypto/openssh/regress/proto-version.sh soc2018/sduo/head/crypto/openssh/regress/proxy-connect.sh soc2018/sduo/head/crypto/openssh/regress/putty-ciphers.sh soc2018/sduo/head/crypto/openssh/regress/putty-kex.sh soc2018/sduo/head/crypto/openssh/regress/putty-transfer.sh soc2018/sduo/head/crypto/openssh/regress/reconfigure.sh soc2018/sduo/head/crypto/openssh/regress/reexec.sh soc2018/sduo/head/crypto/openssh/regress/sftp-chroot.sh soc2018/sduo/head/crypto/openssh/regress/sftp.sh soc2018/sduo/head/crypto/openssh/regress/ssh-com.sh soc2018/sduo/head/crypto/openssh/regress/sshd-log-wrapper.sh soc2018/sduo/head/crypto/openssh/regress/stderr-after-eof.sh soc2018/sduo/head/crypto/openssh/regress/stderr-data.sh soc2018/sduo/head/crypto/openssh/regress/test-exec.sh soc2018/sduo/head/crypto/openssh/regress/transfer.sh soc2018/sduo/head/crypto/openssh/regress/try-ciphers.sh soc2018/sduo/head/crypto/openssh/regress/unittests/Makefile soc2018/sduo/head/crypto/openssh/regress/unittests/Makefile.inc soc2018/sduo/head/crypto/openssh/regress/unittests/bitmap/Makefile soc2018/sduo/head/crypto/openssh/regress/unittests/conversion/Makefile soc2018/sduo/head/crypto/openssh/regress/unittests/hostkeys/Makefile soc2018/sduo/head/crypto/openssh/regress/unittests/hostkeys/mktestdata.sh soc2018/sduo/head/crypto/openssh/regress/unittests/hostkeys/test_iterate.c soc2018/sduo/head/crypto/openssh/regress/unittests/hostkeys/testdata/known_hosts soc2018/sduo/head/crypto/openssh/regress/unittests/kex/Makefile soc2018/sduo/head/crypto/openssh/regress/unittests/match/Makefile soc2018/sduo/head/crypto/openssh/regress/unittests/sshbuf/Makefile soc2018/sduo/head/crypto/openssh/regress/unittests/sshkey/Makefile soc2018/sduo/head/crypto/openssh/regress/unittests/sshkey/mktestdata.sh soc2018/sduo/head/crypto/openssh/regress/unittests/sshkey/test_file.c soc2018/sduo/head/crypto/openssh/regress/unittests/sshkey/test_fuzz.c soc2018/sduo/head/crypto/openssh/regress/unittests/sshkey/test_sshkey.c soc2018/sduo/head/crypto/openssh/regress/unittests/test_helper/test_helper.c soc2018/sduo/head/crypto/openssh/regress/unittests/test_helper/test_helper.h soc2018/sduo/head/crypto/openssh/regress/unittests/utf8/Makefile soc2018/sduo/head/crypto/openssh/regress/yes-head.sh soc2018/sduo/head/crypto/openssh/sandbox-seccomp-filter.c soc2018/sduo/head/crypto/openssh/sandbox-solaris.c soc2018/sduo/head/crypto/openssh/scp.1 soc2018/sduo/head/crypto/openssh/scp.c soc2018/sduo/head/crypto/openssh/servconf.c soc2018/sduo/head/crypto/openssh/servconf.h soc2018/sduo/head/crypto/openssh/serverloop.c soc2018/sduo/head/crypto/openssh/serverloop.h soc2018/sduo/head/crypto/openssh/session.c soc2018/sduo/head/crypto/openssh/session.h soc2018/sduo/head/crypto/openssh/sftp-client.c soc2018/sduo/head/crypto/openssh/sftp-common.c soc2018/sduo/head/crypto/openssh/sftp-server.c soc2018/sduo/head/crypto/openssh/sftp.1 soc2018/sduo/head/crypto/openssh/sftp.c soc2018/sduo/head/crypto/openssh/ssh-add.1 soc2018/sduo/head/crypto/openssh/ssh-add.c soc2018/sduo/head/crypto/openssh/ssh-agent.c soc2018/sduo/head/crypto/openssh/ssh-dss.c soc2018/sduo/head/crypto/openssh/ssh-ecdsa.c soc2018/sduo/head/crypto/openssh/ssh-gss.h soc2018/sduo/head/crypto/openssh/ssh-keygen.1 soc2018/sduo/head/crypto/openssh/ssh-keygen.c soc2018/sduo/head/crypto/openssh/ssh-keyscan.1 soc2018/sduo/head/crypto/openssh/ssh-keyscan.c soc2018/sduo/head/crypto/openssh/ssh-keysign.c soc2018/sduo/head/crypto/openssh/ssh-pkcs11-client.c soc2018/sduo/head/crypto/openssh/ssh-pkcs11-helper.c soc2018/sduo/head/crypto/openssh/ssh-pkcs11.c soc2018/sduo/head/crypto/openssh/ssh-rsa.c soc2018/sduo/head/crypto/openssh/ssh.1 soc2018/sduo/head/crypto/openssh/ssh.c soc2018/sduo/head/crypto/openssh/ssh.h soc2018/sduo/head/crypto/openssh/ssh_api.c soc2018/sduo/head/crypto/openssh/ssh_config soc2018/sduo/head/crypto/openssh/ssh_config.5 soc2018/sduo/head/crypto/openssh/ssh_namespace.h soc2018/sduo/head/crypto/openssh/sshbuf-getput-basic.c soc2018/sduo/head/crypto/openssh/sshbuf.c soc2018/sduo/head/crypto/openssh/sshbuf.h soc2018/sduo/head/crypto/openssh/sshconnect.c soc2018/sduo/head/crypto/openssh/sshconnect.h soc2018/sduo/head/crypto/openssh/sshconnect2.c soc2018/sduo/head/crypto/openssh/sshd.8 soc2018/sduo/head/crypto/openssh/sshd.c soc2018/sduo/head/crypto/openssh/sshd_config soc2018/sduo/head/crypto/openssh/sshd_config.5 soc2018/sduo/head/crypto/openssh/ssherr.c soc2018/sduo/head/crypto/openssh/ssherr.h soc2018/sduo/head/crypto/openssh/sshkey.c soc2018/sduo/head/crypto/openssh/sshkey.h soc2018/sduo/head/crypto/openssh/sshpty.c soc2018/sduo/head/crypto/openssh/ttymodes.c soc2018/sduo/head/crypto/openssh/ttymodes.h soc2018/sduo/head/crypto/openssh/umac.c soc2018/sduo/head/crypto/openssh/umac128.c soc2018/sduo/head/crypto/openssh/utf8.c soc2018/sduo/head/crypto/openssh/version.h soc2018/sduo/head/crypto/openssh/xmalloc.c soc2018/sduo/head/crypto/openssh/xmalloc.h soc2018/sduo/head/etc/defaults/rc.conf soc2018/sduo/head/etc/etc.aarch64/ttys soc2018/sduo/head/etc/etc.amd64/ttys soc2018/sduo/head/etc/etc.arm/ttys soc2018/sduo/head/etc/etc.i386/ttys soc2018/sduo/head/etc/etc.powerpc/ttys soc2018/sduo/head/etc/etc.riscv/ttys soc2018/sduo/head/etc/etc.sparc64/ttys soc2018/sduo/head/etc/mtree/BSD.include.dist soc2018/sduo/head/etc/mtree/BSD.tests.dist soc2018/sduo/head/etc/newsyslog.conf soc2018/sduo/head/etc/rc.d/Makefile soc2018/sduo/head/etc/rc.d/bthidd soc2018/sduo/head/etc/rc.d/ddb soc2018/sduo/head/etc/rc.d/devmatch soc2018/sduo/head/etc/rc.d/hostid soc2018/sduo/head/etc/rc.d/kldxref soc2018/sduo/head/etc/rc.d/local_unbound soc2018/sduo/head/etc/rc.d/sshd soc2018/sduo/head/etc/rc.d/static_arp soc2018/sduo/head/etc/rc.d/static_ndp soc2018/sduo/head/gnu/usr.bin/grep/Makefile soc2018/sduo/head/include/Makefile soc2018/sduo/head/lib/clang/freebsd_cc_version.h soc2018/sduo/head/lib/clang/include/lld/Common/Version.inc soc2018/sduo/head/lib/clang/libllvm/Makefile soc2018/sduo/head/lib/libbluetooth/bluetooth.3 soc2018/sduo/head/lib/libbluetooth/bluetooth.h soc2018/sduo/head/lib/libbluetooth/hci.c soc2018/sduo/head/lib/libc/Makefile soc2018/sduo/head/lib/libc/db/mpool/mpool-compat.c soc2018/sduo/head/lib/libc/gen/libc_dlopen.c soc2018/sduo/head/lib/libc/locale/isdigit.3 soc2018/sduo/head/lib/libc/locale/isxdigit.3 soc2018/sduo/head/lib/libc/riscv/Makefile.inc soc2018/sduo/head/lib/libc/riscv/gen/_setjmp.S soc2018/sduo/head/lib/libc/riscv/gen/fabs.S soc2018/sduo/head/lib/libc/riscv/gen/flt_rounds.c soc2018/sduo/head/lib/libc/riscv/gen/setjmp.S soc2018/sduo/head/lib/libc/secure/stack_protector.c soc2018/sduo/head/lib/libc/stdio/printf.3 soc2018/sduo/head/lib/libc/stdlib/jemalloc/Makefile.inc soc2018/sduo/head/lib/libc/stdlib/qsort.3 soc2018/sduo/head/lib/libc/string/strchrnul.c soc2018/sduo/head/lib/libc/string/strcpy.3 soc2018/sduo/head/lib/libc/string/strlen.3 soc2018/sduo/head/lib/libc/string/strlen.c soc2018/sduo/head/lib/libc/sys/bindat.2 soc2018/sduo/head/lib/libc/sys/clock_nanosleep.c soc2018/sduo/head/lib/libc/sys/connectat.2 soc2018/sduo/head/lib/libc/sys/fcntl.2 soc2018/sduo/head/lib/libc/sys/fsync.2 soc2018/sduo/head/lib/libc/sys/procctl.2 soc2018/sduo/head/lib/libc/sys/rtprio.2 soc2018/sduo/head/lib/libc/tests/iconv/iconvctl_test.c soc2018/sduo/head/lib/libcapsicum/capsicum_helpers.3 soc2018/sduo/head/lib/libcapsicum/capsicum_helpers.h soc2018/sduo/head/lib/libelftc/elftc_version.c soc2018/sduo/head/lib/libfetch/http.c soc2018/sduo/head/lib/libifconfig/libifconfig_media.c soc2018/sduo/head/lib/libjail/jail.c soc2018/sduo/head/lib/libkvm/kvm_getswapinfo.c soc2018/sduo/head/lib/libmd/mdXhl.c soc2018/sduo/head/lib/libmemstat/memstat.c soc2018/sduo/head/lib/libpam/modules/pam_ssh/pam_ssh.c soc2018/sduo/head/lib/libsdp/sdp.3 soc2018/sduo/head/lib/libsdp/sdp.h soc2018/sduo/head/lib/libsdp/session.c soc2018/sduo/head/lib/libsysdecode/Makefile soc2018/sduo/head/lib/libsysdecode/errno.c soc2018/sduo/head/lib/libsysdecode/syscallnames.c soc2018/sduo/head/lib/libsysdecode/sysdecode.3 soc2018/sduo/head/lib/libufs/ufs_disk_close.3 soc2018/sduo/head/lib/libunbound/Makefile soc2018/sduo/head/lib/libz/zopen.3 soc2018/sduo/head/lib/msun/riscv/Makefile.inc soc2018/sduo/head/lib/msun/riscv/fenv.c soc2018/sduo/head/lib/msun/riscv/fenv.h soc2018/sduo/head/libexec/rtld-elf/Makefile soc2018/sduo/head/libexec/rtld-elf/rtld.c soc2018/sduo/head/release/Makefile.gce soc2018/sduo/head/release/amd64/mkisoimages.sh soc2018/sduo/head/release/arm/BEAGLEBONE.conf soc2018/sduo/head/release/arm/GUMSTIX.conf soc2018/sduo/head/release/arm/PANDABOARD.conf soc2018/sduo/head/release/arm/RPI-B.conf soc2018/sduo/head/release/tools/arm.subr soc2018/sduo/head/release/tools/ec2.conf soc2018/sduo/head/release/tools/gce.conf soc2018/sduo/head/sbin/camcontrol/camcontrol.c soc2018/sduo/head/sbin/devd/devd.cc soc2018/sduo/head/sbin/dumpon/dumpon.8 soc2018/sduo/head/sbin/dumpon/dumpon.c soc2018/sduo/head/sbin/etherswitchcfg/ifmedia.c soc2018/sduo/head/sbin/fsck_msdosfs/check.c soc2018/sduo/head/sbin/geom/class/eli/geli.8 soc2018/sduo/head/sbin/geom/class/eli/geom_eli.c soc2018/sduo/head/sbin/geom/class/part/gpart.8 soc2018/sduo/head/sbin/ifconfig/ifclone.c soc2018/sduo/head/sbin/ifconfig/ifconfig.c soc2018/sduo/head/sbin/ifconfig/ifconfig.h soc2018/sduo/head/sbin/ifconfig/ifgroup.c soc2018/sduo/head/sbin/ifconfig/iflagg.c soc2018/sduo/head/sbin/ifconfig/ifmedia.c soc2018/sduo/head/sbin/ipfw/ipfw.8 soc2018/sduo/head/sbin/ipfw/ipfw2.c soc2018/sduo/head/sbin/ipfw/ipfw2.h soc2018/sduo/head/sbin/ipfw/nat64lsn.c soc2018/sduo/head/sbin/ipfw/nat64stl.c soc2018/sduo/head/sbin/nvmecontrol/Makefile soc2018/sduo/head/sbin/nvmecontrol/devlist.c soc2018/sduo/head/sbin/nvmecontrol/nvmecontrol.c soc2018/sduo/head/sbin/nvmecontrol/nvmecontrol.h soc2018/sduo/head/sbin/pfctl/pfctl.c soc2018/sduo/head/secure/lib/libssh/Makefile soc2018/sduo/head/secure/usr.bin/ssh/Makefile soc2018/sduo/head/share/examples/Makefile soc2018/sduo/head/share/examples/drivers/make_device_driver.sh soc2018/sduo/head/share/examples/drivers/make_pseudo_driver.sh soc2018/sduo/head/share/examples/etc/bsd-style-copyright soc2018/sduo/head/share/examples/mdoc/POSIX-copyright soc2018/sduo/head/share/examples/mdoc/example.1 soc2018/sduo/head/share/examples/mdoc/example.3 soc2018/sduo/head/share/examples/mdoc/example.4 soc2018/sduo/head/share/examples/mdoc/example.9 soc2018/sduo/head/share/man/man3/pthread_affinity_np.3 soc2018/sduo/head/share/man/man3/pthread_attr_affinity_np.3 soc2018/sduo/head/share/man/man3/siginfo.3 soc2018/sduo/head/share/man/man4/Makefile soc2018/sduo/head/share/man/man4/aw_sid.4 soc2018/sduo/head/share/man/man4/aw_syscon.4 soc2018/sduo/head/share/man/man4/carp.4 soc2018/sduo/head/share/man/man4/cdce.4 soc2018/sduo/head/share/man/man4/cfumass.4 soc2018/sduo/head/share/man/man4/ehci.4 soc2018/sduo/head/share/man/man4/ohci.4 soc2018/sduo/head/share/man/man4/polling.4 soc2018/sduo/head/share/man/man4/rights.4 soc2018/sduo/head/share/man/man4/rsu.4 soc2018/sduo/head/share/man/man4/rsufw.4 soc2018/sduo/head/share/man/man4/sn.4 soc2018/sduo/head/share/man/man4/ucom.4 soc2018/sduo/head/share/man/man4/ugen.4 soc2018/sduo/head/share/man/man4/uhci.4 soc2018/sduo/head/share/man/man4/uhid.4 soc2018/sduo/head/share/man/man4/ukbd.4 soc2018/sduo/head/share/man/man4/umodem.4 soc2018/sduo/head/share/man/man4/ums.4 soc2018/sduo/head/share/man/man4/uplcom.4 soc2018/sduo/head/share/man/man4/usb.4 soc2018/sduo/head/share/man/man4/usb_template.4 soc2018/sduo/head/share/man/man4/vlan.4 soc2018/sduo/head/share/man/man4/vxge.4 soc2018/sduo/head/share/man/man4/xhci.4 soc2018/sduo/head/share/man/man5/rc.conf.5 soc2018/sduo/head/share/man/man5/src.conf.5 soc2018/sduo/head/share/man/man5/tmpfs.5 soc2018/sduo/head/share/man/man7/c99.7 soc2018/sduo/head/share/man/man7/development.7 soc2018/sduo/head/share/man/man9/Makefile soc2018/sduo/head/share/man/man9/OF_device_from_xref.9 soc2018/sduo/head/share/man/man9/cnv.9 soc2018/sduo/head/share/man/man9/copy.9 soc2018/sduo/head/share/man/man9/fetch.9 soc2018/sduo/head/share/man/man9/iflibdd.9 soc2018/sduo/head/share/man/man9/printf.9 soc2018/sduo/head/share/man/man9/store.9 soc2018/sduo/head/share/man/man9/style.9 soc2018/sduo/head/share/man/man9/style.lua.9 soc2018/sduo/head/share/misc/committers-ports.dot soc2018/sduo/head/share/misc/committers-src.dot soc2018/sduo/head/share/misc/pci_vendors soc2018/sduo/head/share/mk/bsd.README soc2018/sduo/head/share/mk/bsd.compiler.mk soc2018/sduo/head/share/mk/bsd.cpu.mk soc2018/sduo/head/share/mk/bsd.dep.mk soc2018/sduo/head/share/mk/bsd.files.mk soc2018/sduo/head/share/mk/bsd.lib.mk soc2018/sduo/head/share/mk/bsd.linker.mk soc2018/sduo/head/share/mk/bsd.own.mk soc2018/sduo/head/share/mk/bsd.sys.mk soc2018/sduo/head/share/mk/meta.autodep.mk soc2018/sduo/head/share/mk/src.libnames.mk soc2018/sduo/head/share/mk/src.opts.mk soc2018/sduo/head/share/skel/Makefile soc2018/sduo/head/share/syscons/keymaps/INDEX.keymaps soc2018/sduo/head/share/syscons/keymaps/Makefile soc2018/sduo/head/stand/arm64/Makefile soc2018/sduo/head/stand/common/bootstrap.h soc2018/sduo/head/stand/common/commands.c soc2018/sduo/head/stand/common/zfs_cmd.c soc2018/sduo/head/stand/efi/boot1/boot1.c soc2018/sduo/head/stand/efi/boot1/fat-amd64.tmpl.xz soc2018/sduo/head/stand/efi/boot1/fat-arm.tmpl.xz soc2018/sduo/head/stand/efi/boot1/fat-arm64.tmpl.xz soc2018/sduo/head/stand/efi/boot1/fat-i386.tmpl.xz soc2018/sduo/head/stand/efi/boot1/generate-fat.sh soc2018/sduo/head/stand/efi/loader/framebuffer.c soc2018/sduo/head/stand/forth/efi.4th soc2018/sduo/head/stand/geli/geliboot.c soc2018/sduo/head/stand/i386/Makefile.inc soc2018/sduo/head/stand/liblua/float.h soc2018/sduo/head/stand/liblua/locale.h soc2018/sduo/head/stand/liblua/math.h soc2018/sduo/head/stand/lua/cli.lua soc2018/sduo/head/stand/lua/core.lua.8 soc2018/sduo/head/stand/lua/hook.lua soc2018/sduo/head/stand/lua/logo-beastie.lua soc2018/sduo/head/stand/lua/logo-beastiebw.lua soc2018/sduo/head/stand/lua/logo-fbsdbw.lua soc2018/sduo/head/stand/lua/logo-orb.lua soc2018/sduo/head/stand/lua/logo-orbbw.lua soc2018/sduo/head/stand/lua/menu.lua.8 soc2018/sduo/head/sys/amd64/amd64/cpu_switch.S soc2018/sduo/head/sys/amd64/amd64/elf_machdep.c soc2018/sduo/head/sys/amd64/amd64/exception.S soc2018/sduo/head/sys/amd64/amd64/fpu.c soc2018/sduo/head/sys/amd64/amd64/genassym.c soc2018/sduo/head/sys/amd64/amd64/machdep.c soc2018/sduo/head/sys/amd64/amd64/minidump_machdep.c soc2018/sduo/head/sys/amd64/amd64/mp_machdep.c soc2018/sduo/head/sys/amd64/amd64/pmap.c soc2018/sduo/head/sys/amd64/amd64/support.S soc2018/sduo/head/sys/amd64/amd64/trap.c soc2018/sduo/head/sys/amd64/conf/GENERIC soc2018/sduo/head/sys/amd64/conf/NOTES soc2018/sduo/head/sys/amd64/include/asmacros.h soc2018/sduo/head/sys/amd64/include/pcpu.h soc2018/sduo/head/sys/amd64/include/vmparam.h soc2018/sduo/head/sys/amd64/linux/linux_sysvec.c soc2018/sduo/head/sys/amd64/linux32/linux32_sysvec.c soc2018/sduo/head/sys/amd64/vmm/io/ppt.c soc2018/sduo/head/sys/amd64/vmm/vmm_host.c soc2018/sduo/head/sys/arm/allwinner/a10_ahci.c soc2018/sduo/head/sys/arm/allwinner/a10_ehci.c soc2018/sduo/head/sys/arm/allwinner/aw_machdep.c soc2018/sduo/head/sys/arm/allwinner/aw_mmc.c soc2018/sduo/head/sys/arm/allwinner/aw_mmc.h soc2018/sduo/head/sys/arm/allwinner/aw_syscon.c soc2018/sduo/head/sys/arm/allwinner/clkng/aw_clk.h soc2018/sduo/head/sys/arm/allwinner/clkng/ccu_a83t.c soc2018/sduo/head/sys/arm/allwinner/clkng/ccu_a83t.h soc2018/sduo/head/sys/arm/arm/copystr.S soc2018/sduo/head/sys/arm/arm/fusu.S soc2018/sduo/head/sys/arm/arm/minidump_machdep.c soc2018/sduo/head/sys/arm/at91/at91_aic.c soc2018/sduo/head/sys/arm/at91/at91_common.c soc2018/sduo/head/sys/arm/at91/at91_gpio.h soc2018/sduo/head/sys/arm/at91/at91_mci.c soc2018/sduo/head/sys/arm/at91/at91_mcireg.h soc2018/sduo/head/sys/arm/at91/at91_ohci.c soc2018/sduo/head/sys/arm/at91/at91_ohci_fdt.c soc2018/sduo/head/sys/arm/at91/at91_pdcreg.h soc2018/sduo/head/sys/arm/at91/at91_pinctrl.c soc2018/sduo/head/sys/arm/at91/at91_pio.c soc2018/sduo/head/sys/arm/at91/at91_pioreg.h soc2018/sduo/head/sys/arm/at91/at91_piovar.h soc2018/sduo/head/sys/arm/at91/at91_pmc.c soc2018/sduo/head/sys/arm/at91/at91_pmcreg.h soc2018/sduo/head/sys/arm/at91/at91_pmcvar.h soc2018/sduo/head/sys/arm/at91/at91_rtc.c soc2018/sduo/head/sys/arm/at91/at91_rtcreg.h soc2018/sduo/head/sys/arm/at91/at91_sdramc.c soc2018/sduo/head/sys/arm/at91/at91_shdwc.c soc2018/sduo/head/sys/arm/at91/at91_smc.c soc2018/sduo/head/sys/arm/at91/at91_smc.h soc2018/sduo/head/sys/arm/at91/at91_spireg.h soc2018/sduo/head/sys/arm/at91/at91_ssc.c soc2018/sduo/head/sys/arm/at91/at91_sscreg.h soc2018/sduo/head/sys/arm/at91/at91_streg.h soc2018/sduo/head/sys/arm/at91/at91_tcb.c soc2018/sduo/head/sys/arm/at91/at91_twi.c soc2018/sduo/head/sys/arm/at91/at91_twiio.h soc2018/sduo/head/sys/arm/at91/at91_twireg.h soc2018/sduo/head/sys/arm/at91/at91board.h soc2018/sduo/head/sys/arm/at91/at91rm9200_devices.c soc2018/sduo/head/sys/arm/at91/at91rm9200var.h soc2018/sduo/head/sys/arm/at91/at91sam9x5.c soc2018/sduo/head/sys/arm/at91/at91soc.c soc2018/sduo/head/sys/arm/at91/at91soc.h soc2018/sduo/head/sys/arm/at91/board_bwct.c soc2018/sduo/head/sys/arm/at91/board_eb9200.c soc2018/sduo/head/sys/arm/at91/board_hl200.c soc2018/sduo/head/sys/arm/at91/board_hl201.c soc2018/sduo/head/sys/arm/at91/board_kb920x.c soc2018/sduo/head/sys/arm/at91/board_tsc4370.c soc2018/sduo/head/sys/arm/at91/if_ate.c soc2018/sduo/head/sys/arm/at91/if_atereg.h soc2018/sduo/head/sys/arm/broadcom/bcm2835/bcm2836.c soc2018/sduo/head/sys/arm/cavium/cns11xx/ehci_ebus.c soc2018/sduo/head/sys/arm/conf/ARMADA38X soc2018/sduo/head/sys/arm/conf/GENERIC soc2018/sduo/head/sys/arm/conf/SOCFPGA soc2018/sduo/head/sys/arm/conf/genboardid.awk soc2018/sduo/head/sys/arm/freescale/imx/imx6_ahci.c soc2018/sduo/head/sys/arm/freescale/imx/imx_gpio.c soc2018/sduo/head/sys/arm/freescale/vybrid/vf_ehci.c soc2018/sduo/head/sys/arm/include/_bus.h soc2018/sduo/head/sys/arm/include/at91_gpio.h soc2018/sduo/head/sys/arm/include/atags.h soc2018/sduo/head/sys/arm/include/atomic-v4.h soc2018/sduo/head/sys/arm/include/atomic-v6.h soc2018/sduo/head/sys/arm/include/board.h soc2018/sduo/head/sys/arm/include/db_machdep.h soc2018/sduo/head/sys/arm/mv/gpio.c soc2018/sduo/head/sys/arm/mv/mv_common.c soc2018/sduo/head/sys/arm/samsung/exynos/exynos5_ehci.c soc2018/sduo/head/sys/arm/ti/am335x/am335x_prcm.c soc2018/sduo/head/sys/arm/ti/usb/omap_ehci.c soc2018/sduo/head/sys/arm/xilinx/zy7_ehci.c soc2018/sduo/head/sys/arm64/arm64/minidump_machdep.c soc2018/sduo/head/sys/arm64/arm64/support.S soc2018/sduo/head/sys/arm64/arm64/trap.c soc2018/sduo/head/sys/arm64/conf/GENERIC soc2018/sduo/head/sys/arm64/conf/GENERIC-NODEBUG soc2018/sduo/head/sys/arm64/rockchip/clk/rk3328_cru.c soc2018/sduo/head/sys/arm64/rockchip/clk/rk_clk_composite.c soc2018/sduo/head/sys/arm64/rockchip/clk/rk_clk_pll.c soc2018/sduo/head/sys/arm64/rockchip/clk/rk_clk_pll.h soc2018/sduo/head/sys/arm64/rockchip/clk/rk_cru.c soc2018/sduo/head/sys/cam/ata/ata_da.c soc2018/sduo/head/sys/cam/cam_iosched.c soc2018/sduo/head/sys/cam/cam_iosched.h soc2018/sduo/head/sys/cam/cam_periph.c soc2018/sduo/head/sys/cam/ctl/ctl.c soc2018/sduo/head/sys/cam/ctl/ctl.h soc2018/sduo/head/sys/cam/ctl/ctl_backend.c soc2018/sduo/head/sys/cam/ctl/ctl_backend.h soc2018/sduo/head/sys/cam/ctl/ctl_backend_block.c soc2018/sduo/head/sys/cam/ctl/ctl_backend_ramdisk.c soc2018/sduo/head/sys/cam/ctl/ctl_frontend.c soc2018/sduo/head/sys/cam/ctl/ctl_frontend.h soc2018/sduo/head/sys/cam/ctl/ctl_frontend_ioctl.c soc2018/sduo/head/sys/cam/ctl/ctl_frontend_iscsi.c soc2018/sduo/head/sys/cam/ctl/ctl_ioctl.h soc2018/sduo/head/sys/cam/ctl/ctl_tpc.c soc2018/sduo/head/sys/cam/nvme/nvme_all.c soc2018/sduo/head/sys/cam/nvme/nvme_all.h soc2018/sduo/head/sys/cam/nvme/nvme_da.c soc2018/sduo/head/sys/cam/nvme/nvme_xpt.c soc2018/sduo/head/sys/cam/scsi/scsi_cd.c soc2018/sduo/head/sys/cam/scsi/scsi_da.c soc2018/sduo/head/sys/cam/scsi/scsi_pass.c soc2018/sduo/head/sys/cam/scsi/scsi_sa.c soc2018/sduo/head/sys/cam/scsi/scsi_sg.c soc2018/sduo/head/sys/cddl/compat/opensolaris/kern/opensolaris_taskq.c soc2018/sduo/head/sys/cddl/compat/opensolaris/sys/file.h soc2018/sduo/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c soc2018/sduo/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c soc2018/sduo/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/arc.h soc2018/sduo/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c soc2018/sduo/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_onexit.c soc2018/sduo/head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c soc2018/sduo/head/sys/cddl/dev/dtmalloc/dtmalloc.c soc2018/sduo/head/sys/cddl/dev/dtrace/aarch64/dtrace_isa.c soc2018/sduo/head/sys/cddl/dev/sdt/sdt.c soc2018/sduo/head/sys/cddl/dev/systrace/systrace.c soc2018/sduo/head/sys/compat/cloudabi/cloudabi_file.c soc2018/sduo/head/sys/compat/freebsd32/freebsd32_misc.c soc2018/sduo/head/sys/compat/linprocfs/linprocfs.c soc2018/sduo/head/sys/compat/linsysfs/linsysfs.c soc2018/sduo/head/sys/compat/linux/linux_errno.inc soc2018/sduo/head/sys/compat/linux/linux_event.c soc2018/sduo/head/sys/compat/linux/linux_file.c soc2018/sduo/head/sys/compat/linux/linux_futex.c soc2018/sduo/head/sys/compat/linux/linux_futex.h soc2018/sduo/head/sys/compat/linux/linux_ioctl.c soc2018/sduo/head/sys/compat/linux/linux_mmap.c soc2018/sduo/head/sys/compat/linux/linux_socket.c soc2018/sduo/head/sys/compat/linux/linux_stats.c soc2018/sduo/head/sys/compat/linuxkpi/common/include/linux/file.h soc2018/sduo/head/sys/compat/linuxkpi/common/include/linux/hrtimer.h soc2018/sduo/head/sys/compat/linuxkpi/common/include/linux/time.h soc2018/sduo/head/sys/compat/linuxkpi/common/src/linux_hrtimer.c soc2018/sduo/head/sys/compat/linuxkpi/common/src/linux_rcu.c soc2018/sduo/head/sys/conf/NOTES soc2018/sduo/head/sys/conf/files soc2018/sduo/head/sys/conf/files.amd64 soc2018/sduo/head/sys/conf/files.arm64 soc2018/sduo/head/sys/conf/files.i386 soc2018/sduo/head/sys/conf/files.powerpc soc2018/sduo/head/sys/conf/files.riscv soc2018/sduo/head/sys/conf/kern.mk soc2018/sduo/head/sys/conf/kmod.mk soc2018/sduo/head/sys/conf/ldscript.amd64 soc2018/sduo/head/sys/conf/options soc2018/sduo/head/sys/contrib/dev/acpica/changes.txt soc2018/sduo/head/sys/contrib/dev/acpica/common/adfile.c soc2018/sduo/head/sys/contrib/dev/acpica/common/dmtbinfo2.c soc2018/sduo/head/sys/contrib/dev/acpica/compiler/aslcompiler.h soc2018/sduo/head/sys/contrib/dev/acpica/compiler/aslglobal.h soc2018/sduo/head/sys/contrib/dev/acpica/compiler/aslhex.c soc2018/sduo/head/sys/contrib/dev/acpica/compiler/aslload.c soc2018/sduo/head/sys/contrib/dev/acpica/compiler/aslmessages.c soc2018/sduo/head/sys/contrib/dev/acpica/compiler/aslmessages.h soc2018/sduo/head/sys/contrib/dev/acpica/compiler/asloperands.c soc2018/sduo/head/sys/contrib/dev/acpica/compiler/asltypes.h soc2018/sduo/head/sys/contrib/dev/acpica/compiler/aslutils.c soc2018/sduo/head/sys/contrib/dev/acpica/compiler/aslxref.c soc2018/sduo/head/sys/contrib/dev/acpica/components/debugger/dbnames.c soc2018/sduo/head/sys/contrib/dev/acpica/components/debugger/dbtest.c soc2018/sduo/head/sys/contrib/dev/acpica/components/dispatcher/dswscope.c soc2018/sduo/head/sys/contrib/dev/acpica/components/executer/exconfig.c soc2018/sduo/head/sys/contrib/dev/acpica/components/namespace/nsinit.c soc2018/sduo/head/sys/contrib/dev/acpica/components/resources/rsdump.c soc2018/sduo/head/sys/contrib/dev/acpica/components/tables/tbinstal.c soc2018/sduo/head/sys/contrib/dev/acpica/components/utilities/utbuffer.c soc2018/sduo/head/sys/contrib/dev/acpica/components/utilities/utstring.c soc2018/sduo/head/sys/contrib/dev/acpica/include/acapps.h soc2018/sduo/head/sys/contrib/dev/acpica/include/aclocal.h soc2018/sduo/head/sys/contrib/dev/acpica/include/acnames.h soc2018/sduo/head/sys/contrib/dev/acpica/include/acnamesp.h soc2018/sduo/head/sys/contrib/dev/acpica/include/acpixf.h soc2018/sduo/head/sys/contrib/ena-com/ena_plat.h soc2018/sduo/head/sys/contrib/ipfilter/netinet/fil.c soc2018/sduo/head/sys/contrib/ipfilter/netinet/ip_dstlist.c soc2018/sduo/head/sys/ddb/db_access.c soc2018/sduo/head/sys/ddb/db_command.c soc2018/sduo/head/sys/ddb/db_main.c soc2018/sduo/head/sys/ddb/ddb.h soc2018/sduo/head/sys/dev/acpica/Osd/OsdHardware.c soc2018/sduo/head/sys/dev/acpica/acpi.c soc2018/sduo/head/sys/dev/acpica/acpi_cpu.c soc2018/sduo/head/sys/dev/acpica/acpi_hpet.c soc2018/sduo/head/sys/dev/acpica/acpi_resource.c soc2018/sduo/head/sys/dev/alc/if_alc.c soc2018/sduo/head/sys/dev/amdsbwd/amd_chipset.h soc2018/sduo/head/sys/dev/amdsbwd/amdsbwd.c soc2018/sduo/head/sys/dev/bce/if_bce.c soc2018/sduo/head/sys/dev/bge/if_bge.c soc2018/sduo/head/sys/dev/bktr/msp34xx.c soc2018/sduo/head/sys/dev/bxe/bxe.c soc2018/sduo/head/sys/dev/bxe/bxe.h soc2018/sduo/head/sys/dev/cxgb/cxgb_adapter.h soc2018/sduo/head/sys/dev/cxgb/cxgb_main.c soc2018/sduo/head/sys/dev/cxgb/cxgb_sge.c soc2018/sduo/head/sys/dev/cxgbe/adapter.h soc2018/sduo/head/sys/dev/cxgbe/common/common.h soc2018/sduo/head/sys/dev/cxgbe/common/t4_hw.c soc2018/sduo/head/sys/dev/cxgbe/common/t4_msg.h soc2018/sduo/head/sys/dev/cxgbe/firmware/t4fw_interface.h soc2018/sduo/head/sys/dev/cxgbe/firmware/t6fw_cfg_uwire.txt soc2018/sduo/head/sys/dev/cxgbe/offload.h soc2018/sduo/head/sys/dev/cxgbe/t4_ioctl.h soc2018/sduo/head/sys/dev/cxgbe/t4_main.c soc2018/sduo/head/sys/dev/cxgbe/t4_netmap.c soc2018/sduo/head/sys/dev/cxgbe/t4_sge.c soc2018/sduo/head/sys/dev/cxgbe/tom/t4_connect.c soc2018/sduo/head/sys/dev/cxgbe/tom/t4_cpl_io.c soc2018/sduo/head/sys/dev/cxgbe/tom/t4_ddp.c soc2018/sduo/head/sys/dev/cxgbe/tom/t4_tls.c soc2018/sduo/head/sys/dev/cxgbe/tom/t4_tom.c soc2018/sduo/head/sys/dev/cxgbe/tom/t4_tom.h soc2018/sduo/head/sys/dev/e1000/e1000_80003es2lan.c soc2018/sduo/head/sys/dev/e1000/e1000_82571.c soc2018/sduo/head/sys/dev/e1000/e1000_82575.c soc2018/sduo/head/sys/dev/e1000/e1000_hw.h soc2018/sduo/head/sys/dev/e1000/e1000_i210.c soc2018/sduo/head/sys/dev/e1000/e1000_i210.h soc2018/sduo/head/sys/dev/e1000/e1000_ich8lan.c soc2018/sduo/head/sys/dev/e1000/e1000_mac.c soc2018/sduo/head/sys/dev/e1000/e1000_mac.h soc2018/sduo/head/sys/dev/e1000/e1000_osdep.h soc2018/sduo/head/sys/dev/e1000/em_txrx.c soc2018/sduo/head/sys/dev/e1000/if_em.c soc2018/sduo/head/sys/dev/ena/ena.c soc2018/sduo/head/sys/dev/ena/ena.h soc2018/sduo/head/sys/dev/evdev/uinput.c soc2018/sduo/head/sys/dev/evdev/uinput.h soc2018/sduo/head/sys/dev/exca/exca.c soc2018/sduo/head/sys/dev/exca/excareg.h soc2018/sduo/head/sys/dev/exca/excavar.h soc2018/sduo/head/sys/dev/extres/clk/clk.c soc2018/sduo/head/sys/dev/extres/regulator/regulator.c soc2018/sduo/head/sys/dev/extres/syscon/syscon.c soc2018/sduo/head/sys/dev/extres/syscon/syscon.h soc2018/sduo/head/sys/dev/extres/syscon/syscon_generic.h soc2018/sduo/head/sys/dev/filemon/filemon.c soc2018/sduo/head/sys/dev/flash/mx25lreg.h soc2018/sduo/head/sys/dev/hwpmc/hwpmc_amd.c soc2018/sduo/head/sys/dev/hwpmc/hwpmc_core.c soc2018/sduo/head/sys/dev/hwpmc/hwpmc_e500.c soc2018/sduo/head/sys/dev/hwpmc/hwpmc_intel.c soc2018/sduo/head/sys/dev/hwpmc/hwpmc_logging.c soc2018/sduo/head/sys/dev/hwpmc/hwpmc_mod.c soc2018/sduo/head/sys/dev/hwpmc/hwpmc_mpc7xxx.c soc2018/sduo/head/sys/dev/hwpmc/hwpmc_piv.c soc2018/sduo/head/sys/dev/hwpmc/hwpmc_ppc970.c soc2018/sduo/head/sys/dev/hwpmc/hwpmc_ppro.c soc2018/sduo/head/sys/dev/hwpmc/hwpmc_soft.c soc2018/sduo/head/sys/dev/iicbus/icee.c soc2018/sduo/head/sys/dev/ixgbe/if_ix.c soc2018/sduo/head/sys/dev/ixl/i40e_adminq.c soc2018/sduo/head/sys/dev/ixl/i40e_adminq.h soc2018/sduo/head/sys/dev/ixl/i40e_adminq_cmd.h soc2018/sduo/head/sys/dev/ixl/i40e_alloc.h soc2018/sduo/head/sys/dev/ixl/i40e_common.c soc2018/sduo/head/sys/dev/ixl/i40e_devids.h soc2018/sduo/head/sys/dev/ixl/i40e_hmc.c soc2018/sduo/head/sys/dev/ixl/i40e_hmc.h soc2018/sduo/head/sys/dev/ixl/i40e_lan_hmc.c soc2018/sduo/head/sys/dev/ixl/i40e_lan_hmc.h soc2018/sduo/head/sys/dev/ixl/i40e_nvm.c soc2018/sduo/head/sys/dev/ixl/i40e_osdep.c soc2018/sduo/head/sys/dev/ixl/i40e_osdep.h soc2018/sduo/head/sys/dev/ixl/i40e_prototype.h soc2018/sduo/head/sys/dev/ixl/i40e_register.h soc2018/sduo/head/sys/dev/ixl/i40e_status.h soc2018/sduo/head/sys/dev/ixl/i40e_type.h soc2018/sduo/head/sys/dev/ixl/if_ixl.c soc2018/sduo/head/sys/dev/ixl/if_ixlv.c soc2018/sduo/head/sys/dev/ixl/ixl.h soc2018/sduo/head/sys/dev/ixl/ixl_iw.c soc2018/sduo/head/sys/dev/ixl/ixl_iw.h soc2018/sduo/head/sys/dev/ixl/ixl_iw_int.h soc2018/sduo/head/sys/dev/ixl/ixl_pf.h soc2018/sduo/head/sys/dev/ixl/ixl_pf_i2c.c soc2018/sduo/head/sys/dev/ixl/ixl_pf_iov.c soc2018/sduo/head/sys/dev/ixl/ixl_pf_iov.h soc2018/sduo/head/sys/dev/ixl/ixl_pf_main.c soc2018/sduo/head/sys/dev/ixl/ixl_pf_qmgr.c soc2018/sduo/head/sys/dev/ixl/ixl_pf_qmgr.h soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c soc2018/sduo/head/sys/dev/ixl/ixlv.h soc2018/sduo/head/sys/dev/ixl/ixlv_vc_mgr.h soc2018/sduo/head/sys/dev/ixl/ixlvc.c soc2018/sduo/head/sys/dev/mlx5/mlx5_en/mlx5_en_flow_table.c soc2018/sduo/head/sys/dev/mpr/mpr_mapping.c soc2018/sduo/head/sys/dev/nand/nfc_at91.h soc2018/sduo/head/sys/dev/netmap/if_em_netmap.h soc2018/sduo/head/sys/dev/netmap/if_igb_netmap.h soc2018/sduo/head/sys/dev/netmap/if_ixl_netmap.h soc2018/sduo/head/sys/dev/netmap/if_lem_netmap.h soc2018/sduo/head/sys/dev/netmap/if_ptnet.c soc2018/sduo/head/sys/dev/netmap/if_re_netmap.h soc2018/sduo/head/sys/dev/netmap/if_vtnet_netmap.h soc2018/sduo/head/sys/dev/netmap/ixgbe_netmap.h soc2018/sduo/head/sys/dev/netmap/netmap.c soc2018/sduo/head/sys/dev/netmap/netmap_bdg.c soc2018/sduo/head/sys/dev/netmap/netmap_generic.c soc2018/sduo/head/sys/dev/netmap/netmap_kern.h soc2018/sduo/head/sys/dev/netmap/netmap_monitor.c soc2018/sduo/head/sys/dev/netmap/netmap_offloadings.c soc2018/sduo/head/sys/dev/netmap/netmap_pipe.c soc2018/sduo/head/sys/dev/netmap/netmap_vale.c soc2018/sduo/head/sys/dev/null/null.c soc2018/sduo/head/sys/dev/nvme/nvme_ctrlr.c soc2018/sduo/head/sys/dev/nvme/nvme_ns.c soc2018/sduo/head/sys/dev/nvme/nvme_qpair.c soc2018/sduo/head/sys/dev/nvme/nvme_sim.c soc2018/sduo/head/sys/dev/oce/oce_if.h soc2018/sduo/head/sys/dev/oce/oce_mbox.c soc2018/sduo/head/sys/dev/ocs_fc/ocs_os.c soc2018/sduo/head/sys/dev/ocs_fc/ocs_os.h soc2018/sduo/head/sys/dev/pccbb/pccbbvar.h soc2018/sduo/head/sys/dev/pci/vga_pci.c soc2018/sduo/head/sys/dev/puc/puc_pci.c soc2018/sduo/head/sys/dev/qlxgbe/ql_boot.c soc2018/sduo/head/sys/dev/qlxgbe/ql_fw.c soc2018/sduo/head/sys/dev/qlxgbe/ql_minidump.c soc2018/sduo/head/sys/dev/qlxgbe/ql_reset.c soc2018/sduo/head/sys/dev/qlxgbe/ql_ver.h soc2018/sduo/head/sys/dev/re/if_re.c soc2018/sduo/head/sys/dev/sound/pci/hda/hdaa_patches.c soc2018/sduo/head/sys/dev/sound/pci/hda/hdac.h soc2018/sduo/head/sys/dev/uart/uart_dev_snps.c soc2018/sduo/head/sys/dev/usb/controller/xhci.c soc2018/sduo/head/sys/dev/usb/controller/xhci.h soc2018/sduo/head/sys/dev/usb/controller/xhci_pci.c soc2018/sduo/head/sys/dev/usb/net/if_smsc.c soc2018/sduo/head/sys/dev/usb/serial/umodem.c soc2018/sduo/head/sys/dev/usb/serial/usb_serial.c soc2018/sduo/head/sys/dev/usb/serial/usb_serial.h soc2018/sduo/head/sys/dev/usb/serial/uslcom.c soc2018/sduo/head/sys/dev/usb/usbdevs soc2018/sduo/head/sys/dev/vale_vlan/vale_vlan.c soc2018/sduo/head/sys/dev/virtio/network/if_vtnet.c soc2018/sduo/head/sys/dev/vt/colors/vt_termcolors.c soc2018/sduo/head/sys/dev/vt/colors/vt_termcolors.h soc2018/sduo/head/sys/dev/vt/hw/vga/vt_vga.c soc2018/sduo/head/sys/dev/vxge/vxge.c soc2018/sduo/head/sys/dev/xen/gntdev/gntdev.c soc2018/sduo/head/sys/dts/arm/db78100.dts soc2018/sduo/head/sys/dts/arm/db88f5182.dts soc2018/sduo/head/sys/dts/arm/db88f5281.dts soc2018/sduo/head/sys/dts/arm/db88f6281.dts soc2018/sduo/head/sys/dts/arm/dockstar.dts soc2018/sduo/head/sys/dts/arm/overlays/sun8i-a83t-sid.dtso soc2018/sduo/head/sys/dts/arm/overlays/sun8i-h3-sid.dtso soc2018/sduo/head/sys/dts/arm/sheevaplug.dts soc2018/sduo/head/sys/dts/arm/socfpga_arria10_socdk_sdmmc.dts soc2018/sduo/head/sys/dts/bindings-gpio.txt soc2018/sduo/head/sys/fs/devfs/devfs_vfsops.c soc2018/sduo/head/sys/fs/fdescfs/fdesc_vfsops.c soc2018/sduo/head/sys/fs/fdescfs/fdesc_vnops.c soc2018/sduo/head/sys/fs/fuse/fuse_vfsops.c soc2018/sduo/head/sys/fs/msdosfs/msdosfs_conv.c soc2018/sduo/head/sys/fs/msdosfs/msdosfs_denode.c soc2018/sduo/head/sys/fs/msdosfs/msdosfs_vnops.c soc2018/sduo/head/sys/fs/nfs/nfs_var.h soc2018/sduo/head/sys/fs/nfsclient/nfs_clport.c soc2018/sduo/head/sys/fs/nfsserver/nfs_nfsdserv.c soc2018/sduo/head/sys/fs/nfsserver/nfs_nfsdsocket.c soc2018/sduo/head/sys/fs/nfsserver/nfs_nfsdstate.c soc2018/sduo/head/sys/fs/nullfs/null_vfsops.c soc2018/sduo/head/sys/fs/procfs/procfs.c soc2018/sduo/head/sys/fs/procfs/procfs.h soc2018/sduo/head/sys/fs/pseudofs/pseudofs.h soc2018/sduo/head/sys/fs/tmpfs/tmpfs_vfsops.c soc2018/sduo/head/sys/geom/eli/g_eli.c soc2018/sduo/head/sys/geom/eli/g_eli.h soc2018/sduo/head/sys/geom/eli/g_eli_ctl.c soc2018/sduo/head/sys/geom/eli/g_eli_key.c soc2018/sduo/head/sys/geom/geom_dev.c soc2018/sduo/head/sys/geom/mirror/g_mirror.c soc2018/sduo/head/sys/geom/part/g_part.c soc2018/sduo/head/sys/geom/part/g_part.h soc2018/sduo/head/sys/geom/part/g_part_ebr.c soc2018/sduo/head/sys/geom/part/g_part_ldm.c soc2018/sduo/head/sys/geom/part/g_part_mbr.c soc2018/sduo/head/sys/gnu/dts/arm/am335x-bone-common.dtsi soc2018/sduo/head/sys/gnu/dts/arm/am335x-boneblue.dts soc2018/sduo/head/sys/gnu/dts/arm/am335x-evm.dts soc2018/sduo/head/sys/gnu/dts/arm/am335x-evmsk.dts soc2018/sduo/head/sys/gnu/dts/arm/am335x-pepper.dts soc2018/sduo/head/sys/gnu/dts/arm/am33xx-clocks.dtsi soc2018/sduo/head/sys/gnu/dts/arm/am33xx.dtsi soc2018/sduo/head/sys/gnu/dts/arm/am3517.dtsi soc2018/sduo/head/sys/gnu/dts/arm/am4372.dtsi soc2018/sduo/head/sys/gnu/dts/arm/am437x-gp-evm.dts soc2018/sduo/head/sys/gnu/dts/arm/am437x-idk-evm.dts soc2018/sduo/head/sys/gnu/dts/arm/am437x-sk-evm.dts soc2018/sduo/head/sys/gnu/dts/arm/am43x-epos-evm.dts soc2018/sduo/head/sys/gnu/dts/arm/am43xx-clocks.dtsi soc2018/sduo/head/sys/gnu/dts/arm/am571x-idk.dts soc2018/sduo/head/sys/gnu/dts/arm/am572x-idk.dts soc2018/sduo/head/sys/gnu/dts/arm/am57xx-beagle-x15-common.dtsi soc2018/sduo/head/sys/gnu/dts/arm/animeo_ip.dts soc2018/sduo/head/sys/gnu/dts/arm/arm-realview-eb-mp.dtsi soc2018/sduo/head/sys/gnu/dts/arm/armada-38x.dtsi soc2018/sduo/head/sys/gnu/dts/arm/aspeed-ast2500-evb.dts soc2018/sduo/head/sys/gnu/dts/arm/aspeed-bmc-opp-palmetto.dts soc2018/sduo/head/sys/gnu/dts/arm/aspeed-bmc-opp-romulus.dts soc2018/sduo/head/sys/gnu/dts/arm/aspeed-g4.dtsi soc2018/sduo/head/sys/gnu/dts/arm/aspeed-g5.dtsi soc2018/sduo/head/sys/gnu/dts/arm/at91-ariag25.dts soc2018/sduo/head/sys/gnu/dts/arm/at91-ariettag25.dts soc2018/sduo/head/sys/gnu/dts/arm/at91-cosino.dtsi soc2018/sduo/head/sys/gnu/dts/arm/at91-foxg20.dts soc2018/sduo/head/sys/gnu/dts/arm/at91-kizbox.dts soc2018/sduo/head/sys/gnu/dts/arm/at91-kizbox2.dts soc2018/sduo/head/sys/gnu/dts/arm/at91-kizboxmini.dts soc2018/sduo/head/sys/gnu/dts/arm/at91-linea.dtsi soc2018/sduo/head/sys/gnu/dts/arm/at91-qil_a9260.dts soc2018/sduo/head/sys/gnu/dts/arm/at91-sam9_l9260.dts soc2018/sduo/head/sys/gnu/dts/arm/at91-sama5d27_som1_ek.dts soc2018/sduo/head/sys/gnu/dts/arm/at91-sama5d2_xplained.dts soc2018/sduo/head/sys/gnu/dts/arm/at91-sama5d3_xplained.dts soc2018/sduo/head/sys/gnu/dts/arm/at91-sama5d4_ma5d4.dtsi soc2018/sduo/head/sys/gnu/dts/arm/at91-sama5d4_xplained.dts soc2018/sduo/head/sys/gnu/dts/arm/at91-sama5d4ek.dts soc2018/sduo/head/sys/gnu/dts/arm/at91-vinco.dts soc2018/sduo/head/sys/gnu/dts/arm/at91rm9200.dtsi soc2018/sduo/head/sys/gnu/dts/arm/at91rm9200ek.dts soc2018/sduo/head/sys/gnu/dts/arm/at91sam9260.dtsi soc2018/sduo/head/sys/gnu/dts/arm/at91sam9260ek.dts soc2018/sduo/head/sys/gnu/dts/arm/at91sam9261.dtsi soc2018/sduo/head/sys/gnu/dts/arm/at91sam9261ek.dts soc2018/sduo/head/sys/gnu/dts/arm/at91sam9263.dtsi soc2018/sduo/head/sys/gnu/dts/arm/at91sam9263ek.dts soc2018/sduo/head/sys/gnu/dts/arm/at91sam9g20ek_common.dtsi soc2018/sduo/head/sys/gnu/dts/arm/at91sam9g25ek.dts soc2018/sduo/head/sys/gnu/dts/arm/at91sam9g45.dtsi soc2018/sduo/head/sys/gnu/dts/arm/at91sam9m10g45ek.dts soc2018/sduo/head/sys/gnu/dts/arm/at91sam9n12.dtsi soc2018/sduo/head/sys/gnu/dts/arm/at91sam9n12ek.dts soc2018/sduo/head/sys/gnu/dts/arm/at91sam9rl.dtsi soc2018/sduo/head/sys/gnu/dts/arm/at91sam9rlek.dts soc2018/sduo/head/sys/gnu/dts/arm/at91sam9x5.dtsi soc2018/sduo/head/sys/gnu/dts/arm/at91sam9x5cm.dtsi soc2018/sduo/head/sys/gnu/dts/arm/axp81x.dtsi soc2018/sduo/head/sys/gnu/dts/arm/bcm11351.dtsi soc2018/sduo/head/sys/gnu/dts/arm/bcm21664.dtsi soc2018/sduo/head/sys/gnu/dts/arm/bcm2835-rpi-a-plus.dts soc2018/sduo/head/sys/gnu/dts/arm/bcm2835-rpi-a.dts soc2018/sduo/head/sys/gnu/dts/arm/bcm2835-rpi-b-plus.dts soc2018/sduo/head/sys/gnu/dts/arm/bcm2835-rpi-b-rev2.dts soc2018/sduo/head/sys/gnu/dts/arm/bcm2835-rpi-b.dts soc2018/sduo/head/sys/gnu/dts/arm/bcm2835.dtsi soc2018/sduo/head/sys/gnu/dts/arm/bcm2836-rpi-2-b.dts soc2018/sduo/head/sys/gnu/dts/arm/bcm2836.dtsi soc2018/sduo/head/sys/gnu/dts/arm/bcm2837-rpi-3-b.dts soc2018/sduo/head/sys/gnu/dts/arm/bcm2837.dtsi soc2018/sduo/head/sys/gnu/dts/arm/bcm283x.dtsi soc2018/sduo/head/sys/gnu/dts/arm/bcm958625hr.dts soc2018/sduo/head/sys/gnu/dts/arm/dm814x-clocks.dtsi soc2018/sduo/head/sys/gnu/dts/arm/dm814x.dtsi soc2018/sduo/head/sys/gnu/dts/arm/dm816x-clocks.dtsi soc2018/sduo/head/sys/gnu/dts/arm/dm816x.dtsi soc2018/sduo/head/sys/gnu/dts/arm/dra62x-j5eco-evm.dts soc2018/sduo/head/sys/gnu/dts/arm/dra7-evm-common.dtsi soc2018/sduo/head/sys/gnu/dts/arm/dra7-evm.dts soc2018/sduo/head/sys/gnu/dts/arm/dra7.dtsi soc2018/sduo/head/sys/gnu/dts/arm/dra72-evm-common.dtsi soc2018/sduo/head/sys/gnu/dts/arm/dra72-evm-tps65917.dtsi soc2018/sduo/head/sys/gnu/dts/arm/dra72x.dtsi soc2018/sduo/head/sys/gnu/dts/arm/dra74x.dtsi soc2018/sduo/head/sys/gnu/dts/arm/dra76-evm.dts soc2018/sduo/head/sys/gnu/dts/arm/dra7xx-clocks.dtsi soc2018/sduo/head/sys/gnu/dts/arm/efm32gg-dk3750.dts soc2018/sduo/head/sys/gnu/dts/arm/ethernut5.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos3250-artik5-eval.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos3250-artik5.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos3250-monk.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos3250-pinctrl.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos3250-rinato.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos3250.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos4-cpu-thermal.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos4.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos4210-origen.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos4210-pinctrl.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos4210-smdkv310.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos4210-trats.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos4210-universal_c210.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos4210.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos4412-itop-elite.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos4412-itop-scp-core.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos4412-odroid-common.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos4412-odroidu3.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos4412-odroidx.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos4412-odroidx2.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos4412-origen.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos4412-pinctrl.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos4412-ppmu-common.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos4412-prime.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos4412-smdk4412.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos4412-trats2.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos4412.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5250-arndale.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5250-pinctrl.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5250-smdk5250.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5250-snow-common.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5250-snow-rev5.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5250-snow.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5250-spring.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5250.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5260-pinctrl.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5260-xyref5260.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5260.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5410-odroidxu.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5410-pinctrl.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5410-smdk5410.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5410.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5420-arndale-octa.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5420-cpus.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5420-peach-pit.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5420-pinctrl.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5420-smdk5420.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5420-tmu-sensor-conf.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5420-trip-points.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5420.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5422-cpus.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5422-odroid-core.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5422-odroidhc1.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5422-odroidxu3-audio.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5422-odroidxu3-common.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5422-odroidxu3-lite.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5422-odroidxu3.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5422-odroidxu4.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5440-sd5v1.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5440-ssdk5440.dts soc2018/sduo/head/sys/gnu/dts/arm/exynos5440-tmu-sensor-conf.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5440-trip-points.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos5440.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos54xx-odroidxu-leds.dtsi soc2018/sduo/head/sys/gnu/dts/arm/exynos54xx.dtsi soc2018/sduo/head/sys/gnu/dts/arm/ge863-pro3.dtsi soc2018/sduo/head/sys/gnu/dts/arm/gemini-dlink-dir-685.dts soc2018/sduo/head/sys/gnu/dts/arm/gemini-nas4220b.dts soc2018/sduo/head/sys/gnu/dts/arm/gemini-rut1xx.dts soc2018/sduo/head/sys/gnu/dts/arm/gemini-wbd111.dts soc2018/sduo/head/sys/gnu/dts/arm/gemini-wbd222.dts soc2018/sduo/head/sys/gnu/dts/arm/gemini.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx25.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx27-pdk.dts soc2018/sduo/head/sys/gnu/dts/arm/imx27-phytec-phycore-rdk.dts soc2018/sduo/head/sys/gnu/dts/arm/imx27-phytec-phycore-som.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx28.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx35.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx51-babbage.dts soc2018/sduo/head/sys/gnu/dts/arm/imx51-eukrea-mbimxsd51-baseboard.dts soc2018/sduo/head/sys/gnu/dts/arm/imx51-ts4800.dts soc2018/sduo/head/sys/gnu/dts/arm/imx51-zii-rdu1.dts soc2018/sduo/head/sys/gnu/dts/arm/imx51.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx53-cx9020.dts soc2018/sduo/head/sys/gnu/dts/arm/imx53-m53.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx53-tx53-x03x.dts soc2018/sduo/head/sys/gnu/dts/arm/imx53-tx53.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx53.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6dl-aristainetos_4.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6dl-aristainetos_7.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6dl-colibri-eval-v3.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6dl-cubox-i.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6dl-hummingboard.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6dl-icore-rqs.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6dl-pinfunc.h soc2018/sduo/head/sys/gnu/dts/arm/imx6dl.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6q-apalis-eval.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6q-apalis-ixora-v1.1.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6q-apalis-ixora.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6q-b450v3.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6q-b650v3.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6q-b850v3.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6q-bx50v3.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6q-cubox-i.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6q-display5.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6q-h100.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6q-hummingboard.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6q-pinfunc.h soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl-apalis.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl-apf6dev.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl-aristainetos.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl-aristainetos2.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl-colibri.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl-cubox-i.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl-hummingboard.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl-nitrogen6_max.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl-nitrogen6x.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl-sabreauto.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl-udoo.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl-wandboard-revd1.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl-zii-rdu2.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6qdl.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6sl-evk.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6sl.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6sx-sdb.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6sx.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx6ul-14x14-evk.dts soc2018/sduo/head/sys/gnu/dts/arm/imx6ul.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx7-colibri-eval-v3.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx7-colibri.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx7d-colibri-eval-v3.dts soc2018/sduo/head/sys/gnu/dts/arm/imx7d-colibri.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx7d-sdb.dts soc2018/sduo/head/sys/gnu/dts/arm/imx7d.dtsi soc2018/sduo/head/sys/gnu/dts/arm/imx7s.dtsi soc2018/sduo/head/sys/gnu/dts/arm/iwg20d-q7-common.dtsi soc2018/sduo/head/sys/gnu/dts/arm/iwg20d-q7-dbcm-ca.dtsi soc2018/sduo/head/sys/gnu/dts/arm/keystone-clocks.dtsi soc2018/sduo/head/sys/gnu/dts/arm/keystone-k2e-clocks.dtsi soc2018/sduo/head/sys/gnu/dts/arm/keystone-k2e-evm.dts soc2018/sduo/head/sys/gnu/dts/arm/keystone-k2e-netcp.dtsi soc2018/sduo/head/sys/gnu/dts/arm/keystone-k2e.dtsi soc2018/sduo/head/sys/gnu/dts/arm/keystone-k2g-evm.dts soc2018/sduo/head/sys/gnu/dts/arm/keystone-k2g-ice.dts soc2018/sduo/head/sys/gnu/dts/arm/keystone-k2g.dtsi soc2018/sduo/head/sys/gnu/dts/arm/keystone-k2hk-clocks.dtsi soc2018/sduo/head/sys/gnu/dts/arm/keystone-k2hk-evm.dts soc2018/sduo/head/sys/gnu/dts/arm/keystone-k2hk-netcp.dtsi soc2018/sduo/head/sys/gnu/dts/arm/keystone-k2hk.dtsi soc2018/sduo/head/sys/gnu/dts/arm/keystone-k2l-clocks.dtsi soc2018/sduo/head/sys/gnu/dts/arm/keystone-k2l-evm.dts soc2018/sduo/head/sys/gnu/dts/arm/keystone-k2l-netcp.dtsi soc2018/sduo/head/sys/gnu/dts/arm/keystone-k2l.dtsi soc2018/sduo/head/sys/gnu/dts/arm/keystone.dtsi soc2018/sduo/head/sys/gnu/dts/arm/kirkwood-linksys-viper.dts soc2018/sduo/head/sys/gnu/dts/arm/logicpd-som-lv-37xx-devkit.dts soc2018/sduo/head/sys/gnu/dts/arm/logicpd-som-lv.dtsi soc2018/sduo/head/sys/gnu/dts/arm/logicpd-torpedo-37xx-devkit.dts soc2018/sduo/head/sys/gnu/dts/arm/logicpd-torpedo-som.dtsi soc2018/sduo/head/sys/gnu/dts/arm/lpc3250-ea3250.dts soc2018/sduo/head/sys/gnu/dts/arm/lpc3250-phy3250.dts soc2018/sduo/head/sys/gnu/dts/arm/lpc4337-ciaa.dts soc2018/sduo/head/sys/gnu/dts/arm/lpc4350-hitex-eval.dts soc2018/sduo/head/sys/gnu/dts/arm/lpc4357-ea4357-devkit.dts soc2018/sduo/head/sys/gnu/dts/arm/ls1021a-qds.dts soc2018/sduo/head/sys/gnu/dts/arm/ls1021a-twr.dts soc2018/sduo/head/sys/gnu/dts/arm/ls1021a.dtsi soc2018/sduo/head/sys/gnu/dts/arm/meson8.dtsi soc2018/sduo/head/sys/gnu/dts/arm/meson8b.dtsi soc2018/sduo/head/sys/gnu/dts/arm/mpa1600.dts soc2018/sduo/head/sys/gnu/dts/arm/mt2701.dtsi soc2018/sduo/head/sys/gnu/dts/arm/mt7623.dtsi soc2018/sduo/head/sys/gnu/dts/arm/mt7623n-bananapi-bpi-r2.dts soc2018/sduo/head/sys/gnu/dts/arm/mt7623n-rfb-nand.dts soc2018/sduo/head/sys/gnu/dts/arm/omap2420-n8x0-common.dtsi soc2018/sduo/head/sys/gnu/dts/arm/omap3-cm-t3x.dtsi soc2018/sduo/head/sys/gnu/dts/arm/omap3-evm-37xx.dts soc2018/sduo/head/sys/gnu/dts/arm/omap3-gta04.dtsi soc2018/sduo/head/sys/gnu/dts/arm/omap3-igep.dtsi soc2018/sduo/head/sys/gnu/dts/arm/omap3-lilly-a83x.dtsi soc2018/sduo/head/sys/gnu/dts/arm/omap3-n9.dts soc2018/sduo/head/sys/gnu/dts/arm/omap3-n900.dts soc2018/sduo/head/sys/gnu/dts/arm/omap3-n950-n9.dtsi soc2018/sduo/head/sys/gnu/dts/arm/omap3-n950.dts soc2018/sduo/head/sys/gnu/dts/arm/omap3-pandora-common.dtsi soc2018/sduo/head/sys/gnu/dts/arm/omap3.dtsi soc2018/sduo/head/sys/gnu/dts/arm/omap3430-sdp.dts soc2018/sduo/head/sys/gnu/dts/arm/omap34xx.dtsi soc2018/sduo/head/sys/gnu/dts/arm/omap36xx.dtsi soc2018/sduo/head/sys/gnu/dts/arm/omap4-droid4-xt894.dts soc2018/sduo/head/sys/gnu/dts/arm/omap4.dtsi soc2018/sduo/head/sys/gnu/dts/arm/omap44xx-clocks.dtsi soc2018/sduo/head/sys/gnu/dts/arm/omap5-uevm.dts soc2018/sduo/head/sys/gnu/dts/arm/omap5.dtsi soc2018/sduo/head/sys/gnu/dts/arm/omap54xx-clocks.dtsi soc2018/sduo/head/sys/gnu/dts/arm/pm9g45.dts soc2018/sduo/head/sys/gnu/dts/arm/qcom-msm8974-fairphone-fp2.dts soc2018/sduo/head/sys/gnu/dts/arm/r7s72100-genmai.dts soc2018/sduo/head/sys/gnu/dts/arm/r8a73a4.dtsi soc2018/sduo/head/sys/gnu/dts/arm/r8a7740-armadillo800eva.dts soc2018/sduo/head/sys/gnu/dts/arm/r8a7740.dtsi soc2018/sduo/head/sys/gnu/dts/arm/r8a7743.dtsi soc2018/sduo/head/sys/gnu/dts/arm/r8a7745-iwg22d-sodimm.dts soc2018/sduo/head/sys/gnu/dts/arm/r8a7745.dtsi soc2018/sduo/head/sys/gnu/dts/arm/r8a7778.dtsi soc2018/sduo/head/sys/gnu/dts/arm/r8a7779.dtsi soc2018/sduo/head/sys/gnu/dts/arm/r8a7790-lager.dts soc2018/sduo/head/sys/gnu/dts/arm/r8a7790.dtsi soc2018/sduo/head/sys/gnu/dts/arm/r8a7791-koelsch.dts soc2018/sduo/head/sys/gnu/dts/arm/r8a7791.dtsi soc2018/sduo/head/sys/gnu/dts/arm/r8a7792.dtsi soc2018/sduo/head/sys/gnu/dts/arm/r8a7793.dtsi soc2018/sduo/head/sys/gnu/dts/arm/r8a7794-alt.dts soc2018/sduo/head/sys/gnu/dts/arm/r8a7794.dtsi soc2018/sduo/head/sys/gnu/dts/arm/rk3036.dtsi soc2018/sduo/head/sys/gnu/dts/arm/rk3066a-rayeager.dts soc2018/sduo/head/sys/gnu/dts/arm/rk322x.dtsi soc2018/sduo/head/sys/gnu/dts/arm/rk3288-phycore-som.dtsi soc2018/sduo/head/sys/gnu/dts/arm/rk3288.dtsi soc2018/sduo/head/sys/gnu/dts/arm/s3c2416-pinctrl.dtsi soc2018/sduo/head/sys/gnu/dts/arm/s3c2416-smdk2416.dts soc2018/sduo/head/sys/gnu/dts/arm/s3c2416.dtsi soc2018/sduo/head/sys/gnu/dts/arm/s3c24xx.dtsi soc2018/sduo/head/sys/gnu/dts/arm/s3c6400.dtsi soc2018/sduo/head/sys/gnu/dts/arm/s3c6410-mini6410.dts soc2018/sduo/head/sys/gnu/dts/arm/s3c6410-smdk6410.dts soc2018/sduo/head/sys/gnu/dts/arm/s3c6410.dtsi soc2018/sduo/head/sys/gnu/dts/arm/s3c64xx-pinctrl.dtsi soc2018/sduo/head/sys/gnu/dts/arm/s3c64xx.dtsi soc2018/sduo/head/sys/gnu/dts/arm/s5pv210-aquila.dts soc2018/sduo/head/sys/gnu/dts/arm/s5pv210-goni.dts soc2018/sduo/head/sys/gnu/dts/arm/s5pv210-pinctrl.dtsi soc2018/sduo/head/sys/gnu/dts/arm/s5pv210-smdkc110.dts soc2018/sduo/head/sys/gnu/dts/arm/s5pv210-smdkv210.dts soc2018/sduo/head/sys/gnu/dts/arm/s5pv210-torbreck.dts soc2018/sduo/head/sys/gnu/dts/arm/s5pv210.dtsi soc2018/sduo/head/sys/gnu/dts/arm/sama5d2.dtsi soc2018/sduo/head/sys/gnu/dts/arm/sama5d3.dtsi soc2018/sduo/head/sys/gnu/dts/arm/sama5d3_tcb1.dtsi soc2018/sduo/head/sys/gnu/dts/arm/sama5d3xcm.dtsi soc2018/sduo/head/sys/gnu/dts/arm/sama5d3xcm_cmp.dtsi soc2018/sduo/head/sys/gnu/dts/arm/sama5d3xmb.dtsi soc2018/sduo/head/sys/gnu/dts/arm/sama5d3xmb_cmp.dtsi soc2018/sduo/head/sys/gnu/dts/arm/sama5d4.dtsi soc2018/sduo/head/sys/gnu/dts/arm/sh73a0.dtsi soc2018/sduo/head/sys/gnu/dts/arm/socfpga.dtsi soc2018/sduo/head/sys/gnu/dts/arm/socfpga_arria10_socdk.dtsi soc2018/sduo/head/sys/gnu/dts/arm/socfpga_cyclone5_vining_fpga.dts soc2018/sduo/head/sys/gnu/dts/arm/spear1310-evb.dts soc2018/sduo/head/sys/gnu/dts/arm/spear1340.dtsi soc2018/sduo/head/sys/gnu/dts/arm/spear13xx.dtsi soc2018/sduo/head/sys/gnu/dts/arm/spear600.dtsi soc2018/sduo/head/sys/gnu/dts/arm/ste-nomadik-stn8815.dtsi soc2018/sduo/head/sys/gnu/dts/arm/stih407.dtsi soc2018/sduo/head/sys/gnu/dts/arm/stih410.dtsi soc2018/sduo/head/sys/gnu/dts/arm/sun5i-a13-olinuxino.dts soc2018/sduo/head/sys/gnu/dts/arm/sun6i-a31s-sinovoip-bpi-m2.dts soc2018/sduo/head/sys/gnu/dts/arm/sun7i-a20-pcduino3-nano.dts soc2018/sduo/head/sys/gnu/dts/arm/sun8i-a83t-bananapi-m3.dts soc2018/sduo/head/sys/gnu/dts/arm/sun8i-a83t-cubietruck-plus.dts soc2018/sduo/head/sys/gnu/dts/arm/sun8i-a83t-tbs-a711.dts soc2018/sduo/head/sys/gnu/dts/arm/sun8i-a83t.dtsi soc2018/sduo/head/sys/gnu/dts/arm/sun8i-h3-bananapi-m2-plus.dts soc2018/sduo/head/sys/gnu/dts/arm/sun8i-h3-nanopi-m1-plus.dts soc2018/sduo/head/sys/gnu/dts/arm/sun8i-h3-nanopi-m1.dts soc2018/sduo/head/sys/gnu/dts/arm/sun8i-h3-nanopi-neo.dts soc2018/sduo/head/sys/gnu/dts/arm/sun8i-h3-orangepi-plus.dts soc2018/sduo/head/sys/gnu/dts/arm/sun8i-h3.dtsi soc2018/sduo/head/sys/gnu/dts/arm/sunxi-h3-h5.dtsi soc2018/sduo/head/sys/gnu/dts/arm/tegra20.dtsi soc2018/sduo/head/sys/gnu/dts/arm/tny_a9260_common.dtsi soc2018/sduo/head/sys/gnu/dts/arm/tny_a9263.dts soc2018/sduo/head/sys/gnu/dts/arm/uniphier-ld4-ref.dts soc2018/sduo/head/sys/gnu/dts/arm/uniphier-ld4.dtsi soc2018/sduo/head/sys/gnu/dts/arm/uniphier-ld6b-ref.dts soc2018/sduo/head/sys/gnu/dts/arm/uniphier-pro4-ref.dts soc2018/sduo/head/sys/gnu/dts/arm/uniphier-pro4.dtsi soc2018/sduo/head/sys/gnu/dts/arm/uniphier-pro5.dtsi soc2018/sduo/head/sys/gnu/dts/arm/uniphier-pxs2.dtsi soc2018/sduo/head/sys/gnu/dts/arm/uniphier-sld8-ref.dts soc2018/sduo/head/sys/gnu/dts/arm/uniphier-sld8.dtsi soc2018/sduo/head/sys/gnu/dts/arm/usb_a9260_common.dtsi soc2018/sduo/head/sys/gnu/dts/arm/usb_a9263.dts soc2018/sduo/head/sys/gnu/dts/arm/vf-colibri-eval-v3.dtsi soc2018/sduo/head/sys/gnu/dts/arm/vf500.dtsi soc2018/sduo/head/sys/gnu/dts/arm/vf610-zii-dev-rev-b.dts soc2018/sduo/head/sys/gnu/dts/arm/vf610-zii-dev-rev-c.dts soc2018/sduo/head/sys/gnu/dts/arm/vf610-zii-dev.dtsi soc2018/sduo/head/sys/gnu/dts/arm/vfxxx.dtsi soc2018/sduo/head/sys/gnu/dts/arm/zx296702.dtsi soc2018/sduo/head/sys/gnu/dts/include/dt-bindings/clock/hi3660-clock.h soc2018/sduo/head/sys/gnu/dts/include/dt-bindings/clock/qcom,gcc-ipq8074.h soc2018/sduo/head/sys/gnu/dts/include/dt-bindings/gpio/gpio.h soc2018/sduo/head/sys/gnu/dts/include/dt-bindings/input/linux-event-codes.h soc2018/sduo/head/sys/gnu/dts/include/dt-bindings/pinctrl/am43xx.h soc2018/sduo/head/sys/gnu/dts/include/dt-bindings/pinctrl/stm32-pinfunc.h soc2018/sduo/head/sys/i386/conf/GENERIC soc2018/sduo/head/sys/i386/i386/copyout.c soc2018/sduo/head/sys/i386/i386/db_trace.c soc2018/sduo/head/sys/i386/i386/elf_machdep.c soc2018/sduo/head/sys/i386/i386/exception.s soc2018/sduo/head/sys/i386/i386/machdep.c soc2018/sduo/head/sys/i386/i386/minidump_machdep.c soc2018/sduo/head/sys/i386/i386/pmap.c soc2018/sduo/head/sys/i386/i386/support.s soc2018/sduo/head/sys/i386/i386/trap.c soc2018/sduo/head/sys/i386/include/asmacros.h soc2018/sduo/head/sys/i386/include/md_var.h soc2018/sduo/head/sys/i386/include/pcb_ext.h soc2018/sduo/head/sys/i386/include/pcpu.h soc2018/sduo/head/sys/i386/linux/linux_sysvec.c soc2018/sduo/head/sys/kern/kern_cpu.c soc2018/sduo/head/sys/kern/kern_descrip.c soc2018/sduo/head/sys/kern/kern_dtrace.c soc2018/sduo/head/sys/kern/kern_dump.c soc2018/sduo/head/sys/kern/kern_event.c soc2018/sduo/head/sys/kern/kern_exec.c soc2018/sduo/head/sys/kern/kern_exit.c soc2018/sduo/head/sys/kern/kern_jail.c soc2018/sduo/head/sys/kern/kern_ktrace.c soc2018/sduo/head/sys/kern/kern_lock.c soc2018/sduo/head/sys/kern/kern_lockf.c soc2018/sduo/head/sys/kern/kern_lockstat.c soc2018/sduo/head/sys/kern/kern_loginclass.c soc2018/sduo/head/sys/kern/kern_malloc.c soc2018/sduo/head/sys/kern/kern_mbuf.c soc2018/sduo/head/sys/kern/kern_mib.c soc2018/sduo/head/sys/kern/kern_pmc.c soc2018/sduo/head/sys/kern/kern_procctl.c soc2018/sduo/head/sys/kern/kern_prot.c soc2018/sduo/head/sys/kern/kern_racct.c soc2018/sduo/head/sys/kern/kern_rctl.c soc2018/sduo/head/sys/kern/kern_rmlock.c soc2018/sduo/head/sys/kern/kern_sendfile.c soc2018/sduo/head/sys/kern/kern_shutdown.c soc2018/sduo/head/sys/kern/kern_sig.c soc2018/sduo/head/sys/kern/kern_synch.c soc2018/sduo/head/sys/kern/kern_syscalls.c soc2018/sduo/head/sys/kern/kern_tc.c soc2018/sduo/head/sys/kern/kern_thread.c soc2018/sduo/head/sys/kern/link_elf.c soc2018/sduo/head/sys/kern/link_elf_obj.c soc2018/sduo/head/sys/kern/sched_4bsd.c soc2018/sduo/head/sys/kern/sched_ule.c soc2018/sduo/head/sys/kern/subr_bus.c soc2018/sduo/head/sys/kern/subr_capability.c soc2018/sduo/head/sys/kern/subr_gtaskqueue.c soc2018/sduo/head/sys/kern/subr_prof.c soc2018/sduo/head/sys/kern/subr_syscall.c soc2018/sduo/head/sys/kern/subr_trap.c soc2018/sduo/head/sys/kern/subr_turnstile.c soc2018/sduo/head/sys/kern/subr_witness.c soc2018/sduo/head/sys/kern/sys_capability.c soc2018/sduo/head/sys/kern/sys_generic.c soc2018/sduo/head/sys/kern/sys_procdesc.c soc2018/sduo/head/sys/kern/uipc_mqueue.c soc2018/sduo/head/sys/kern/uipc_sem.c soc2018/sduo/head/sys/kern/uipc_syscalls.c soc2018/sduo/head/sys/kern/vfs_aio.c soc2018/sduo/head/sys/kern/vfs_bio.c soc2018/sduo/head/sys/kern/vfs_init.c soc2018/sduo/head/sys/kern/vfs_mount.c soc2018/sduo/head/sys/kern/vfs_subr.c soc2018/sduo/head/sys/kern/vfs_syscalls.c soc2018/sduo/head/sys/libkern/strlen.c soc2018/sduo/head/sys/mips/include/cpufunc.h soc2018/sduo/head/sys/mips/include/db_machdep.h soc2018/sduo/head/sys/mips/include/proc.h soc2018/sduo/head/sys/mips/mips/minidump_machdep.c soc2018/sduo/head/sys/mips/mips/pm_machdep.c soc2018/sduo/head/sys/mips/mips/support.S soc2018/sduo/head/sys/mips/mips/trap.c soc2018/sduo/head/sys/modules/Makefile soc2018/sduo/head/sys/modules/blake2/Makefile soc2018/sduo/head/sys/modules/crypto/Makefile soc2018/sduo/head/sys/modules/cxgbe/if_cxgbe/Makefile soc2018/sduo/head/sys/modules/cxgbe/t4_firmware/Makefile soc2018/sduo/head/sys/modules/cxgbe/t5_firmware/Makefile soc2018/sduo/head/sys/modules/cxgbe/t6_firmware/Makefile soc2018/sduo/head/sys/modules/dtb/allwinner/Makefile soc2018/sduo/head/sys/modules/ipfw_nat64/Makefile soc2018/sduo/head/sys/modules/ixl/Makefile soc2018/sduo/head/sys/modules/linux/Makefile soc2018/sduo/head/sys/modules/netmap/Makefile soc2018/sduo/head/sys/modules/ocs_fc/Makefile soc2018/sduo/head/sys/modules/puc/Makefile soc2018/sduo/head/sys/net/bpf.c soc2018/sduo/head/sys/net/if.c soc2018/sduo/head/sys/net/if.h soc2018/sduo/head/sys/net/if_bridge.c soc2018/sduo/head/sys/net/if_bridgevar.h soc2018/sduo/head/sys/net/if_clone.c soc2018/sduo/head/sys/net/if_clone.h soc2018/sduo/head/sys/net/if_ethersubr.c soc2018/sduo/head/sys/net/if_ipsec.c soc2018/sduo/head/sys/net/if_loop.c soc2018/sduo/head/sys/net/if_media.c soc2018/sduo/head/sys/net/if_media.h soc2018/sduo/head/sys/net/if_var.h soc2018/sduo/head/sys/net/if_vlan.c soc2018/sduo/head/sys/net/ifdi_if.m soc2018/sduo/head/sys/net/iflib.c soc2018/sduo/head/sys/net/iflib.h soc2018/sduo/head/sys/net/netmap.h soc2018/sduo/head/sys/net/netmap_user.h soc2018/sduo/head/sys/net/rtsock.c soc2018/sduo/head/sys/netinet/cc/cc_cubic.h soc2018/sduo/head/sys/netinet/igmp.c soc2018/sduo/head/sys/netinet/igmp_var.h soc2018/sduo/head/sys/netinet/in.c soc2018/sduo/head/sys/netinet/in_mcast.c soc2018/sduo/head/sys/netinet/in_pcb.c soc2018/sduo/head/sys/netinet/in_pcb.h soc2018/sduo/head/sys/netinet/in_var.h soc2018/sduo/head/sys/netinet/ip_carp.c soc2018/sduo/head/sys/netinet/ip_var.h soc2018/sduo/head/sys/netinet/sctp_indata.c soc2018/sduo/head/sys/netinet/sctputil.c soc2018/sduo/head/sys/netinet/tcp_input.c soc2018/sduo/head/sys/netinet/tcp_output.c soc2018/sduo/head/sys/netinet/tcp_stacks/fastpath.c soc2018/sduo/head/sys/netinet/tcp_subr.c soc2018/sduo/head/sys/netinet/tcp_syncache.c soc2018/sduo/head/sys/netinet/tcp_timer.c soc2018/sduo/head/sys/netinet/tcp_usrreq.c soc2018/sduo/head/sys/netinet/tcp_var.h soc2018/sduo/head/sys/netinet6/icmp6.c soc2018/sduo/head/sys/netinet6/in6.c soc2018/sduo/head/sys/netinet6/in6_ifattach.c soc2018/sduo/head/sys/netinet6/in6_mcast.c soc2018/sduo/head/sys/netinet6/in6_pcb.c soc2018/sduo/head/sys/netinet6/in6_var.h soc2018/sduo/head/sys/netinet6/ip6_fastfwd.c soc2018/sduo/head/sys/netinet6/mld6.c soc2018/sduo/head/sys/netinet6/mld6_var.h soc2018/sduo/head/sys/netipsec/ipsec_mbuf.c soc2018/sduo/head/sys/netpfil/ipfw/nat64/ip_fw_nat64.c soc2018/sduo/head/sys/netpfil/ipfw/nat64/ip_fw_nat64.h soc2018/sduo/head/sys/netpfil/ipfw/nat64/nat64_translate.c soc2018/sduo/head/sys/netpfil/ipfw/nat64/nat64_translate.h soc2018/sduo/head/sys/netpfil/ipfw/nat64/nat64lsn.c soc2018/sduo/head/sys/netpfil/ipfw/nat64/nat64lsn.h soc2018/sduo/head/sys/netpfil/ipfw/nat64/nat64lsn_control.c soc2018/sduo/head/sys/netpfil/ipfw/nat64/nat64stl.c soc2018/sduo/head/sys/netpfil/ipfw/nat64/nat64stl.h soc2018/sduo/head/sys/netpfil/ipfw/nat64/nat64stl_control.c soc2018/sduo/head/sys/netpfil/pf/pf.c soc2018/sduo/head/sys/netsmb/smb_dev.c soc2018/sduo/head/sys/opencrypto/cryptosoft.c soc2018/sduo/head/sys/powerpc/aim/aim_machdep.c soc2018/sduo/head/sys/powerpc/aim/mmu_oea64.c soc2018/sduo/head/sys/powerpc/aim/mmu_oea64.h soc2018/sduo/head/sys/powerpc/aim/moea64_native.c soc2018/sduo/head/sys/powerpc/aim/mp_cpudep.c soc2018/sduo/head/sys/powerpc/booke/locore.S soc2018/sduo/head/sys/powerpc/include/cpu.h soc2018/sduo/head/sys/powerpc/include/db_machdep.h soc2018/sduo/head/sys/powerpc/include/md_var.h soc2018/sduo/head/sys/powerpc/include/pcb.h soc2018/sduo/head/sys/powerpc/include/pte.h soc2018/sduo/head/sys/powerpc/include/spr.h soc2018/sduo/head/sys/powerpc/mpc85xx/fsl_diu.c soc2018/sduo/head/sys/powerpc/mpc85xx/mpc85xx.c soc2018/sduo/head/sys/powerpc/mpc85xx/mpc85xx.h soc2018/sduo/head/sys/powerpc/mpc85xx/platform_mpc85xx.c soc2018/sduo/head/sys/powerpc/ofw/ofw_machdep.c soc2018/sduo/head/sys/powerpc/powermac/cuda.c soc2018/sduo/head/sys/powerpc/powermac/macio.c soc2018/sduo/head/sys/powerpc/powerpc/cpu.c soc2018/sduo/head/sys/powerpc/powerpc/elf32_machdep.c soc2018/sduo/head/sys/powerpc/powerpc/elf64_machdep.c soc2018/sduo/head/sys/powerpc/powerpc/exec_machdep.c soc2018/sduo/head/sys/powerpc/powerpc/genassym.c soc2018/sduo/head/sys/powerpc/powerpc/machdep.c soc2018/sduo/head/sys/powerpc/powerpc/swtch64.S soc2018/sduo/head/sys/powerpc/powerpc/trap.c soc2018/sduo/head/sys/powerpc/pseries/mmu_phyp.c soc2018/sduo/head/sys/powerpc/pseries/platform_chrp.c soc2018/sduo/head/sys/riscv/riscv/support.S soc2018/sduo/head/sys/riscv/riscv/trap.c soc2018/sduo/head/sys/sparc64/conf/GENERIC soc2018/sduo/head/sys/sparc64/include/db_machdep.h soc2018/sduo/head/sys/sparc64/sparc64/dump_machdep.c soc2018/sduo/head/sys/sparc64/sparc64/support.S soc2018/sduo/head/sys/sparc64/sparc64/trap.c soc2018/sduo/head/sys/sys/_stdarg.h soc2018/sduo/head/sys/sys/bus.h soc2018/sduo/head/sys/sys/capsicum.h soc2018/sduo/head/sys/sys/conf.h soc2018/sduo/head/sys/sys/disk/mbr.h soc2018/sduo/head/sys/sys/elf_common.h soc2018/sduo/head/sys/sys/filedesc.h soc2018/sduo/head/sys/sys/gtaskqueue.h soc2018/sduo/head/sys/sys/imgact.h soc2018/sduo/head/sys/sys/jail.h soc2018/sduo/head/sys/sys/kdb.h soc2018/sduo/head/sys/sys/ktrace.h soc2018/sduo/head/sys/sys/linker.h soc2018/sduo/head/sys/sys/lockstat.h soc2018/sduo/head/sys/sys/mbuf.h soc2018/sduo/head/sys/sys/mount.h soc2018/sduo/head/sys/sys/param.h soc2018/sduo/head/sys/sys/pmc.h soc2018/sduo/head/sys/sys/pmckern.h soc2018/sduo/head/sys/sys/proc.h soc2018/sduo/head/sys/sys/procctl.h soc2018/sduo/head/sys/sys/resourcevar.h soc2018/sduo/head/sys/sys/sched.h soc2018/sduo/head/sys/sys/sysctl.h soc2018/sduo/head/sys/sys/sysent.h soc2018/sduo/head/sys/sys/systm.h soc2018/sduo/head/sys/sys/turnstile.h soc2018/sduo/head/sys/sys/vmmeter.h soc2018/sduo/head/sys/sys/zutil.h soc2018/sduo/head/sys/vm/uma.h soc2018/sduo/head/sys/vm/uma_core.c soc2018/sduo/head/sys/vm/uma_int.h soc2018/sduo/head/sys/vm/vm_fault.c soc2018/sduo/head/sys/vm/vm_meter.c soc2018/sduo/head/sys/vm/vm_object.c soc2018/sduo/head/sys/vm/vm_page.c soc2018/sduo/head/sys/vm/vm_page.h soc2018/sduo/head/sys/vm/vm_pageout.c soc2018/sduo/head/sys/vm/vm_pagequeue.h soc2018/sduo/head/sys/vm/vm_phys.c soc2018/sduo/head/sys/vm/vm_swapout.c soc2018/sduo/head/sys/x86/acpica/acpi_wakeup.c soc2018/sduo/head/sys/x86/include/x86_var.h soc2018/sduo/head/sys/x86/x86/cpu_machdep.c soc2018/sduo/head/sys/x86/x86/mca.c soc2018/sduo/head/sys/x86/x86/mp_x86.c soc2018/sduo/head/sys/x86/x86/msi.c soc2018/sduo/head/sys/x86/x86/tsc.c soc2018/sduo/head/sys/x86/xen/pv.c soc2018/sduo/head/sys/xen/gntdev.h soc2018/sduo/head/tests/sys/Makefile soc2018/sduo/head/tests/sys/aio/Makefile soc2018/sduo/head/tests/sys/aio/lio_test.c soc2018/sduo/head/tests/sys/cddl/zfs/tests/exec/Makefile soc2018/sduo/head/tests/sys/cddl/zfs/tests/history/Makefile soc2018/sduo/head/tests/sys/cddl/zfs/tests/link_count/Makefile soc2018/sduo/head/tests/sys/cddl/zfs/tests/migration/Makefile soc2018/sduo/head/tests/sys/cddl/zfs/tests/mount/Makefile soc2018/sduo/head/tests/sys/kern/Makefile soc2018/sduo/head/tests/sys/kern/ptrace_test.c soc2018/sduo/head/tools/build/mk/OptionalObsoleteFiles.inc soc2018/sduo/head/tools/diag/prtblknos/Makefile soc2018/sduo/head/tools/diag/prtblknos/main.c soc2018/sduo/head/tools/diag/prtblknos/prtblknos.c soc2018/sduo/head/tools/tools/README soc2018/sduo/head/tools/tools/nanobsd/dhcpd/common soc2018/sduo/head/tools/tools/nanobsd/dhcpd/os-base soc2018/sduo/head/tools/tools/nanobsd/embedded/beaglebone.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/common soc2018/sduo/head/tools/tools/nanobsd/embedded/i386.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/pandaboard.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/qemu-amd64-uefi-bios.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/qemu-amd64-uefi.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/qemu-amd64.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/qemu-armv7.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/qemu-i386.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/qemu-mips.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/qemu-mips64.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/qemu-powerpc.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/qemu-powerpc64.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/qemu-sparc64.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/rpi.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/rpi2.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/rpi3.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/sam9260ek.cfg soc2018/sduo/head/tools/tools/nanobsd/embedded/sam9g20ek.cfg soc2018/sduo/head/tools/tools/nanobsd/mtree-dedup.awk soc2018/sduo/head/tools/tools/tinybsd/conf/bridge/TINYBSD soc2018/sduo/head/tools/tools/tinybsd/conf/default/TINYBSD soc2018/sduo/head/tools/tools/tinybsd/conf/firewall/TINYBSD soc2018/sduo/head/tools/tools/tinybsd/conf/vpn/TINYBSD soc2018/sduo/head/tools/tools/tinybsd/conf/wireless/TINYBSD soc2018/sduo/head/tools/tools/tinybsd/conf/wrap/TINYBSD soc2018/sduo/head/usr.bin/calendar/calendars/calendar.freebsd soc2018/sduo/head/usr.bin/chpass/util.c soc2018/sduo/head/usr.bin/cmp/cmp.1 soc2018/sduo/head/usr.bin/cmp/cmp.c soc2018/sduo/head/usr.bin/enigma/enigma.1 soc2018/sduo/head/usr.bin/enigma/enigma.c soc2018/sduo/head/usr.bin/etdump/etdump.1 soc2018/sduo/head/usr.bin/expand/expand.c soc2018/sduo/head/usr.bin/fetch/fetch.1 soc2018/sduo/head/usr.bin/fetch/fetch.c soc2018/sduo/head/usr.bin/grep/Makefile soc2018/sduo/head/usr.bin/grep/file.c soc2018/sduo/head/usr.bin/grep/grep.1 soc2018/sduo/head/usr.bin/grep/grep.c soc2018/sduo/head/usr.bin/grep/grep.h soc2018/sduo/head/usr.bin/grep/nls/C.msg soc2018/sduo/head/usr.bin/grep/nls/es_ES.ISO8859-1.msg soc2018/sduo/head/usr.bin/grep/nls/gl_ES.ISO8859-1.msg soc2018/sduo/head/usr.bin/grep/nls/hu_HU.ISO8859-2.msg soc2018/sduo/head/usr.bin/grep/nls/ja_JP.SJIS.msg soc2018/sduo/head/usr.bin/grep/nls/ja_JP.UTF-8.msg soc2018/sduo/head/usr.bin/grep/nls/ja_JP.eucJP.msg soc2018/sduo/head/usr.bin/grep/nls/pt_BR.ISO8859-1.msg soc2018/sduo/head/usr.bin/grep/nls/ru_RU.KOI8-R.msg soc2018/sduo/head/usr.bin/grep/nls/uk_UA.UTF-8.msg soc2018/sduo/head/usr.bin/grep/nls/zh_CN.UTF-8.msg soc2018/sduo/head/usr.bin/grep/tests/grep_freebsd_test.sh soc2018/sduo/head/usr.bin/grep/util.c soc2018/sduo/head/usr.bin/gzip/unpack.c soc2018/sduo/head/usr.bin/hexdump/tests/hexdump_test.sh soc2018/sduo/head/usr.bin/hexdump/tests/od_test.sh soc2018/sduo/head/usr.bin/ident/ident.c soc2018/sduo/head/usr.bin/kdump/kdump.c soc2018/sduo/head/usr.bin/man/man.1 soc2018/sduo/head/usr.bin/quota/quota.c soc2018/sduo/head/usr.bin/seq/seq.1 soc2018/sduo/head/usr.bin/seq/seq.c soc2018/sduo/head/usr.bin/svn/lib/libsvn_client/Makefile soc2018/sduo/head/usr.bin/svn/lib/libsvn_delta/Makefile soc2018/sduo/head/usr.bin/svn/lib/libsvn_fs_x/Makefile soc2018/sduo/head/usr.bin/svn/lib/libsvn_ra_serf/Makefile soc2018/sduo/head/usr.bin/svn/lib/libsvn_ra_svn/Makefile soc2018/sduo/head/usr.bin/svn/lib/libsvn_repos/Makefile soc2018/sduo/head/usr.bin/svn/lib/libsvn_subr/Makefile soc2018/sduo/head/usr.bin/svn/svn/Makefile soc2018/sduo/head/usr.bin/svn/svn_private_config.h soc2018/sduo/head/usr.bin/systat/ifstat.c soc2018/sduo/head/usr.bin/systat/tcp.c soc2018/sduo/head/usr.bin/time/time.c soc2018/sduo/head/usr.bin/tip/tip/tip.1 soc2018/sduo/head/usr.bin/uniq/uniq.1 soc2018/sduo/head/usr.bin/uniq/uniq.c soc2018/sduo/head/usr.bin/zstd/Makefile soc2018/sduo/head/usr.sbin/Makefile soc2018/sduo/head/usr.sbin/bhyve/Makefile soc2018/sduo/head/usr.sbin/bhyve/bhyve.8 soc2018/sduo/head/usr.sbin/bhyve/bhyverun.c soc2018/sduo/head/usr.sbin/bhyve/mem.c soc2018/sduo/head/usr.sbin/bhyve/mem.h soc2018/sduo/head/usr.sbin/bhyve/rfb.c soc2018/sduo/head/usr.sbin/bluetooth/bthidcontrol/Makefile soc2018/sduo/head/usr.sbin/bluetooth/bthidcontrol/sdp.c soc2018/sduo/head/usr.sbin/bluetooth/bthidd/Makefile soc2018/sduo/head/usr.sbin/bluetooth/bthidd/bthid_config.h soc2018/sduo/head/usr.sbin/bluetooth/bthidd/bthidd.8 soc2018/sduo/head/usr.sbin/bluetooth/bthidd/bthidd.c soc2018/sduo/head/usr.sbin/bluetooth/bthidd/bthidd.conf.sample soc2018/sduo/head/usr.sbin/bluetooth/bthidd/bthidd.h soc2018/sduo/head/usr.sbin/bluetooth/bthidd/client.c soc2018/sduo/head/usr.sbin/bluetooth/bthidd/hid.c soc2018/sduo/head/usr.sbin/bluetooth/bthidd/kbd.c soc2018/sduo/head/usr.sbin/bluetooth/bthidd/lexer.l soc2018/sduo/head/usr.sbin/bluetooth/bthidd/parser.y soc2018/sduo/head/usr.sbin/bluetooth/bthidd/server.c soc2018/sduo/head/usr.sbin/bluetooth/bthidd/session.c soc2018/sduo/head/usr.sbin/bsdconfig/share/device.subr soc2018/sduo/head/usr.sbin/camdd/camdd.c soc2018/sduo/head/usr.sbin/cpucontrol/intel.c soc2018/sduo/head/usr.sbin/ctladm/Makefile soc2018/sduo/head/usr.sbin/ctladm/ctladm.8 soc2018/sduo/head/usr.sbin/ctladm/ctladm.c soc2018/sduo/head/usr.sbin/ctld/Makefile soc2018/sduo/head/usr.sbin/ctld/ctld.c soc2018/sduo/head/usr.sbin/ctld/ctld.h soc2018/sduo/head/usr.sbin/ctld/kernel.c soc2018/sduo/head/usr.sbin/ctld/parse.y soc2018/sduo/head/usr.sbin/ctld/uclparse.c soc2018/sduo/head/usr.sbin/cxgbetool/cxgbetool.8 soc2018/sduo/head/usr.sbin/daemon/daemon.8 soc2018/sduo/head/usr.sbin/daemon/daemon.c soc2018/sduo/head/usr.sbin/efibootmgr/efibootmgr.8 soc2018/sduo/head/usr.sbin/efibootmgr/efibootmgr.c soc2018/sduo/head/usr.sbin/fstyp/zfs.c soc2018/sduo/head/usr.sbin/iostat/iostat.c soc2018/sduo/head/usr.sbin/ipfwpcap/ipfwpcap.8 soc2018/sduo/head/usr.sbin/jail/jail.8 soc2018/sduo/head/usr.sbin/makefs/Makefile soc2018/sduo/head/usr.sbin/makefs/cd9660/Makefile.inc soc2018/sduo/head/usr.sbin/makefs/ffs/Makefile.inc soc2018/sduo/head/usr.sbin/makefs/mtree.c soc2018/sduo/head/usr.sbin/mld6query/mld6.c soc2018/sduo/head/usr.sbin/mld6query/mld6query.8 soc2018/sduo/head/usr.sbin/mountd/mountd.c soc2018/sduo/head/usr.sbin/portsnap/phttpget/phttpget.8 soc2018/sduo/head/usr.sbin/pwd_mkdb/pwd_mkdb.8 soc2018/sduo/head/usr.sbin/pwd_mkdb/pwd_mkdb.c soc2018/sduo/head/usr.sbin/route6d/route6d.c soc2018/sduo/head/usr.sbin/rtadvd/rrenum.c soc2018/sduo/head/usr.sbin/syslogd/syslogd.c soc2018/sduo/head/usr.sbin/traceroute6/traceroute6.8 soc2018/sduo/head/usr.sbin/unbound/Makefile soc2018/sduo/head/usr.sbin/unbound/Makefile.inc soc2018/sduo/head/usr.sbin/unbound/anchor/Makefile soc2018/sduo/head/usr.sbin/unbound/checkconf/Makefile soc2018/sduo/head/usr.sbin/unbound/control/Makefile soc2018/sduo/head/usr.sbin/unbound/daemon/Makefile soc2018/sduo/head/usr.sbin/usbconfig/usbconfig.8 soc2018/sduo/head/usr.sbin/usbconfig/usbconfig.c Modified: soc2018/sduo/head/COPYRIGHT ============================================================================== --- soc2018/sduo/head/COPYRIGHT Wed Aug 1 20:34:24 2018 (r337274) +++ soc2018/sduo/head/COPYRIGHT Thu Aug 2 00:07:30 2018 (r337275) @@ -4,7 +4,7 @@ The compilation of software known as FreeBSD is distributed under the following terms: -Copyright (c) 1992-2018 The FreeBSD Project. +Copyright (c) 1992-2018 The FreeBSD Project. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions Modified: soc2018/sduo/head/Makefile.inc1 ============================================================================== --- soc2018/sduo/head/Makefile.inc1 Wed Aug 1 20:34:24 2018 (r337274) +++ soc2018/sduo/head/Makefile.inc1 Thu Aug 2 00:07:30 2018 (r337275) @@ -524,9 +524,9 @@ # BOOTSTRAPPING?= 0 -# Keep these in sync -MINIMUM_SUPPORTED_OSREL?= 1002501 -MINIMUM_SUPPORTED_REL?= 10.3 +# Keep these in sync -- see below for special case exception +MINIMUM_SUPPORTED_OSREL?= 900044 +MINIMUM_SUPPORTED_REL?= 9.1 # Common environment for world related stages CROSSENV+= \ @@ -1845,6 +1845,18 @@ .endif legacy: .PHONY +# Temporary special case for automatically detecting the clang compiler issue +# Note: 9.x didn't have FreeBSD_version bumps often enough, so you may need to +# set BOOTSTRAPPING to 0 if you're stable/9 tree post-dates r286035 but is before +# the version bump in r296219 (from July 29, 2015 -> Feb 29, 2016). +.if ${BOOTSTRAPPING} != 0 && \ + ${WANT_COMPILER_TYPE} == "clang" && ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} < 30601 +.if ${BOOTSTRAPPING} > 10000000 && ${BOOTSTRAPPING} < 1002501 + @echo "ERROR: Source upgrades from stable/10 prior to r286033 are not supported."; false +.elif ${BOOTSTRAPPING} > 9000000 && ${BOOTSTRAPPING} < 903509 + @echo "ERROR: Source upgrades from stable/9 prior to r286035 are not supported."; false +.endif +.endif .if ${BOOTSTRAPPING} < ${MINIMUM_SUPPORTED_OSREL} && ${BOOTSTRAPPING} != 0 @echo "ERROR: Source upgrades from versions prior to ${MINIMUM_SUPPORTED_REL} are not supported."; \ false Modified: soc2018/sduo/head/ObsoleteFiles.inc ============================================================================== --- soc2018/sduo/head/ObsoleteFiles.inc Wed Aug 1 20:34:24 2018 (r337274) +++ soc2018/sduo/head/ObsoleteFiles.inc Thu Aug 2 00:07:30 2018 (r337275) @@ -38,37 +38,9 @@ # xargs -n1 | sort | uniq -d; # done -# 20180512: Rename Unbound tools -OLD_FILES+=usr/sbin/unbound -OLD_FILES+=usr/sbin/unbound-anchor -OLD_FILES+=usr/sbin/unbound-checkconf -OLD_FILES+=usr/sbin/unbound-control -OLD_FILES+=usr/share/man/man5/unbound.conf.5.gz -OLD_FILES+=usr/share/man/man8/unbound-anchor.8.gz -OLD_FILES+=usr/share/man/man8/unbound-checkconf.8.gz -OLD_FILES+=usr/share/man/man8/unbound-control.8.gz -OLD_FILES+=usr/share/man/man8/unbound.8.gz -# 20180508: retire nxge -OLD_FILES+=usr/share/man/man4/if_nxge.4.gz -OLD_FILES+=usr/share/man/man4/nxge.4.gz -# 20180505: rhosts -OLD_FILES+=usr/share/skel/dot.rhosts -# 20180502: retire ixgb -OLD_FILES+=usr/share/man/man4/if_ixgb.4.gz -OLD_FILES+=usr/share/man/man4/ixgb.4.gz -# 20180501: retire lmc -OLD_FILES+=usr/include/dev/lmc/if_lmc.h -OLD_DIRS+=usr/include/dev/lmc -OLD_FILES+=usr/sbin/lmcconfig -OLD_FILES+=usr/share/man/man4/lmc.4.gz -OLD_FILES+=usr/share/man/man4/if_lmc.4.gz -OLD_FILES+=usr/share/man/man8/lmcconfig.8.gz -# 20180417: remove fuswintr and suswintr -OLD_FILES+=usr/share/man/man9/fuswintr.9.gz -OLD_FILES+=usr/share/man/man9/suswintr.9.gz # 20180413: remove Arcnet support OLD_FILES+=usr/include/net/if_arc.h -OLD_FILES+=usr/share/man/man4/cm.4.gz +OLD_FILES+=usr/share/man/man4/cm.4 # 20180409: remove FDDI support OLD_FILES+=usr/include/net/fddi.h OLD_FILES+=usr/share/man/man4/fpa.4.gz @@ -447,7 +419,7 @@ OLD_FILES+=usr/lib/libstand.a OLD_FILES+=usr/lib/libstand_p.a OLD_FILES+=usr/include/stand.h -OLD_FILES+=usr/share/man/man3/libstand.3.gz +OLD_FILES+=usr/share/man/man3/libstand.3 # 20171003: remove RCMDS OLD_FILES+=bin/rcp OLD_FILES+=rescue/rcp Modified: soc2018/sduo/head/UPDATING ============================================================================== --- soc2018/sduo/head/UPDATING Wed Aug 1 20:34:24 2018 (r337274) +++ soc2018/sduo/head/UPDATING Thu Aug 2 00:07:30 2018 (r337275) @@ -51,31 +51,6 @@ ****************************** SPECIAL WARNING: ****************************** -20180508: - The nxge(4) driver has been removed. This driver was for PCI-X 10g - cards made by s2io/Neterion. The company was aquired by Exar and - no longer sells or supports Ethernet products. If you have device - nxge in your kernel config file it must be removed. - -20180504: - The tz database (tzdb) has been updated to 2018e. This version more - correctly models time stamps in time zones with negative DST such as - Europe/Dublin (from 1971 on), Europe/Prague (1946/7), and - Africa/Windhoek (1994/2017). This does not affect the UT offsets, only - time zone abbreviations and the tm_isdst flag. - -20180502: - The ixgb(4) driver has been removed. This driver was for an early and - uncommon legacy PCI 10GbE for a single ASIC, Intel 82597EX. Intel - quickly shifted to the long lived ixgbe family. If you have device - ixgb in your kernel config file it must be removed. - -20180501: - The lmc(4) driver has been removed. This was a WAN interface - card that was already reportedly rare in 2003, and had an ambiguous - license. If you have device lmc in your kernel config file it must - be removed. - 20180413: Support for Arcnet networks has been removed. If you have device arcnet or device cm in your kernel config file they must be @@ -1450,6 +1425,512 @@ The stable/10 branch has been created in subversion from head revision r256279. +20131010: + The rc.d/jail script has been updated to support jail(8) + configuration file. The "jail__*" rc.conf(5) variables + for per-jail configuration are automatically converted to + /var/run/jail..conf before the jail(8) utility is invoked. + This is transparently backward compatible. See below about some + incompatibilities and rc.conf(5) manual page for more details. + + These variables are now deprecated in favor of jail(8) configuration + file. One can use "rc.d/jail config " command to generate + a jail(8) configuration file in /var/run/jail..conf without + running the jail(8) utility. The default pathname of the + configuration file is /etc/jail.conf and can be specified by + using $jail_conf or $jail__conf variables. + + Please note that jail_devfs_ruleset accepts an integer at + this moment. Please consider to rewrite the ruleset name + with an integer. + +20130930: + BIND has been removed from the base system. If all you need + is a local resolver, simply enable and start the local_unbound + service instead. Otherwise, several versions of BIND are + available in the ports tree. The dns/bind99 port is one example. + + With this change, nslookup(1) and dig(1) are no longer in the base + system. Users should instead use host(1) and drill(1) which are + in the base system. Alternatively, nslookup and dig can + be obtained by installing the dns/bind-tools port. + +20130916: + With the addition of unbound(8), a new unbound user is now + required during installworld. "mergemaster -p" can be used to + add the user prior to installworld, as documented in the handbook. + +20130911: + OpenSSH is now built with DNSSEC support, and will by default + silently trust signed SSHFP records. This can be controlled with + the VerifyHostKeyDNS client configuration setting. DNSSEC support + can be disabled entirely with the WITHOUT_LDNS option in src.conf. + +20130906: + The GNU Compiler Collection and C++ standard library (libstdc++) + are no longer built by default on platforms where clang is the system + compiler. You can enable them with the WITH_GCC and WITH_GNUCXX + options in src.conf. + +20130905: + The PROCDESC kernel option is now part of the GENERIC kernel + configuration and is required for the rwhod(8) to work. + If you are using custom kernel configuration, you should include + 'options PROCDESC'. + +20130905: + The API and ABI related to the Capsicum framework was modified + in backward incompatible way. The userland libraries and programs + have to be recompiled to work with the new kernel. This includes the + following libraries and programs, but the whole buildworld is + advised: libc, libprocstat, dhclient, tcpdump, hastd, hastctl, + kdump, procstat, rwho, rwhod, uniq. + +20130903: + AES-NI intrinsic support has been added to gcc. The AES-NI module + has been updated to use this support. A new gcc is required to build + the aesni module on both i386 and amd64. + +20130821: + The PADLOCK_RNG and RDRAND_RNG kernel options are now devices. + Thus "device padlock_rng" and "device rdrand_rng" should be + used instead of "options PADLOCK_RNG" & "options RDRAND_RNG". + +20130813: + WITH_ICONV has been split into two feature sets. WITH_ICONV now + enables just the iconv* functionality and is now on by default. + WITH_LIBICONV_COMPAT enables the libiconv api and link time + compatibility. Set WITHOUT_ICONV to build the old way. + If you have been using WITH_ICONV before, you will very likely + need to turn on WITH_LIBICONV_COMPAT. + +20130806: + INVARIANTS option now enables DEBUG for code with OpenSolaris and + Illumos origin, including ZFS. If you have INVARIANTS in your + kernel configuration, then there is no need to set DEBUG or ZFS_DEBUG + explicitly. + DEBUG used to enable witness(9) tracking of OpenSolaris (mostly ZFS) + locks if WITNESS option was set. Because that generated a lot of + witness(9) reports and all of them were believed to be false + positives, this is no longer done. New option OPENSOLARIS_WITNESS + can be used to achieve the previous behavior. + +20130806: + Timer values in IPv6 data structures now use time_uptime instead + of time_second. Although this is not a user-visible functional + change, userland utilities which directly use them---ndp(8), + rtadvd(8), and rtsold(8) in the base system---need to be updated + to r253970 or later. + +20130802: + find -delete can now delete the pathnames given as arguments, + instead of only files found below them or if the pathname did + not contain any slashes. Formerly, the following error message + would result: + + find: -delete: : relative path potentially not safe + + Deleting the pathnames given as arguments can be prevented + without error messages using -mindepth 1 or by changing + directory and passing "." as argument to find. This works in the + old as well as the new version of find. + +20130726: + Behavior of devfs rules path matching has been changed. + Pattern is now always matched against fully qualified devfs + path and slash characters must be explicitly matched by + slashes in pattern (FNM_PATHNAME). Rulesets involving devfs + subdirectories must be reviewed. + +20130716: + The default ARM ABI has changed to the ARM EABI. The old ABI is + incompatible with the ARM EABI and all programs and modules will + need to be rebuilt to work with a new kernel. + + To keep using the old ABI ensure the WITHOUT_ARM_EABI knob is set. + + NOTE: Support for the old ABI will be removed in the future and + users are advised to upgrade. + +20130709: + pkg_install has been disconnected from the build if you really need it + you should add WITH_PKGTOOLS in your src.conf(5). + +20130709: + Most of network statistics structures were changed to be able + keep 64-bits counters. Thus all tools, that work with networking + statistics, must be rebuilt (netstat(1), bsnmpd(1), etc.) + +20130618: + Fix a bug that allowed a tracing process (e.g. gdb) to write + to a memory-mapped file in the traced process's address space + even if neither the traced process nor the tracing process had + write access to that file. + +20130615: + CVS has been removed from the base system. An exact copy + of the code is available from the devel/cvs port. + +20130613: + Some people report the following error after the switch to bmake: + + make: illegal option -- J + usage: make [-BPSXeiknpqrstv] [-C directory] [-D variable] + ... + *** [buildworld] Error code 2 + + this likely due to an old instance of make in + ${MAKEPATH} (${MAKEOBJDIRPREFIX}${.CURDIR}/make.${MACHINE}) + which src/Makefile will use that blindly, if it exists, so if + you see the above error: + + rm -rf `make -V MAKEPATH` + + should resolve it. + +20130516: + Use bmake by default. + Whereas before one could choose to build with bmake via + -DWITH_BMAKE one must now use -DWITHOUT_BMAKE to use the old + make. The goal is to remove these knobs for 10-RELEASE. + + It is worth noting that bmake (like gmake) treats the command + line as the unit of failure, rather than statements within the + command line. Thus '(cd some/where && dosomething)' is safer + than 'cd some/where; dosomething'. The '()' allows consistent + behavior in parallel build. + +20130429: + Fix a bug that allows NFS clients to issue READDIR on files. + +20130426: + The WITHOUT_IDEA option has been removed because + the IDEA patent expired. + +20130426: + The sysctl which controls TRIM support under ZFS has been renamed + from vfs.zfs.trim_disable -> vfs.zfs.trim.enabled and has been + enabled by default. + +20130425: + The mergemaster command now uses the default MAKEOBJDIRPREFIX + rather than creating it's own in the temporary directory in + order allow access to bootstrapped versions of tools such as + install and mtree. When upgrading from version of FreeBSD where + the install command does not support -l, you will need to + install a new mergemaster command if mergemaster -p is required. + This can be accomplished with the command (cd src/usr.sbin/mergemaster + && make install). + +20130404: + Legacy ATA stack, disabled and replaced by new CAM-based one since + FreeBSD 9.0, completely removed from the sources. Kernel modules + atadisk and atapi*, user-level tools atacontrol and burncd are + removed. Kernel option `options ATA_CAM` is now permanently enabled + and removed. + +20130319: + SOCK_CLOEXEC and SOCK_NONBLOCK flags have been added to socket(2) + and socketpair(2). Software, in particular Kerberos, may + automatically detect and use these during building. The resulting + binaries will not work on older kernels. + +20130308: + CTL_DISABLE has also been added to the sparc64 GENERIC (for further + information, see the respective 20130304 entry). + +20130304: + Recent commits to callout(9) changed the size of struct callout, + so the KBI is probably heavily disturbed. Also, some functions + in callout(9)/sleep(9)/sleepqueue(9)/condvar(9) KPIs were replaced + by macros. Every kernel module using it won't load, so rebuild + is requested. + + The ctl device has been re-enabled in GENERIC for i386 and amd64, + but does not initialize by default (because of the new CTL_DISABLE + option) to save memory. To re-enable it, remove the CTL_DISABLE + option from the kernel config file or set kern.cam.ctl.disable=0 + in /boot/loader.conf. + +20130301: + The ctl device has been disabled in GENERIC for i386 and amd64. + This was done due to the extra memory being allocated at system + initialisation time by the ctl driver which was only used if + a CAM target device was created. This makes a FreeBSD system + unusable on 128MB or less of RAM. + +20130208: + A new compression method (lz4) has been merged to -HEAD. Please + refer to zpool-features(7) for more information. + + Please refer to the "ZFS notes" section of this file for information + on upgrading boot ZFS pools. + +20130129: + A BSD-licensed patch(1) variant has been added and is installed + as bsdpatch, being the GNU version the default patch. + To inverse the logic and use the BSD-licensed one as default, + while having the GNU version installed as gnupatch, rebuild + and install world with the WITH_BSD_PATCH knob set. + +20130121: + Due to the use of the new -l option to install(1) during build + and install, you must take care not to directly set the INSTALL + make variable in your /etc/make.conf, /etc/src.conf, or on the + command line. If you wish to use the -C flag for all installs + you may be able to add INSTALL+=-C to /etc/make.conf or + /etc/src.conf. + +20130118: + The install(1) option -M has changed meaning and now takes an + argument that is a file or path to append logs to. In the + unlikely event that -M was the last option on the command line + and the command line contained at least two files and a target + directory the first file will have logs appended to it. The -M + option served little practical purpose in the last decade so its + use is expected to be extremely rare. + +20121223: + After switching to Clang as the default compiler some users of ZFS + on i386 systems started to experience stack overflow kernel panics. + Please consider using 'options KSTACK_PAGES=4' in such configurations. + +20121222: + GEOM_LABEL now mangles label names read from file system metadata. + Mangling affect labels containing spaces, non-printable characters, + '%' or '"'. Device names in /etc/fstab and other places may need to + be updated. + +20121217: + By default, only the 10 most recent kernel dumps will be saved. To + restore the previous behaviour (no limit on the number of kernel dumps + stored in the dump directory) add the following line to /etc/rc.conf: + + savecore_flags="" + +20121201: + With the addition of auditdistd(8), a new auditdistd user is now + required during installworld. "mergemaster -p" can be used to + add the user prior to installworld, as documented in the handbook. + +20121117: + The sin6_scope_id member variable in struct sockaddr_in6 is now + filled by the kernel before passing the structure to the userland via + sysctl or routing socket. This means the KAME-specific embedded scope + id in sin6_addr.s6_addr[2] is always cleared in userland application. + This behavior can be controlled by net.inet6.ip6.deembed_scopeid. + __FreeBSD_version is bumped to 1000025. + +20121105: + On i386 and amd64 systems WITH_CLANG_IS_CC is now the default. + This means that the world and kernel will be compiled with clang + and that clang will be installed as /usr/bin/cc, /usr/bin/c++, + and /usr/bin/cpp. To disable this behavior and revert to building + with gcc, compile with WITHOUT_CLANG_IS_CC. Really old versions + of current may need to bootstrap WITHOUT_CLANG first if the clang + build fails (its compatibility window doesn't extend to the 9 stable + branch point). + +20121102: + The IPFIREWALL_FORWARD kernel option has been removed. Its + functionality now turned on by default. + +20121023: + The ZERO_COPY_SOCKET kernel option has been removed and + split into SOCKET_SEND_COW and SOCKET_RECV_PFLIP. + NB: SOCKET_SEND_COW uses the VM page based copy-on-write + mechanism which is not safe and may result in kernel crashes. + NB: The SOCKET_RECV_PFLIP mechanism is useless as no current + driver supports disposeable external page sized mbuf storage. + Proper replacements for both zero-copy mechanisms are under + consideration and will eventually lead to complete removal + of the two kernel options. + +20121023: + The IPv4 network stack has been converted to network byte + order. The following modules need to be recompiled together + with kernel: carp(4), divert(4), gif(4), siftr(4), gre(4), + pf(4), ipfw(4), ng_ipfw(4), stf(4). + +20121022: + Support for non-MPSAFE filesystems was removed from VFS. The + VFS_VERSION was bumped, all filesystem modules shall be + recompiled. + +20121018: + All the non-MPSAFE filesystems have been disconnected from + the build. The full list includes: codafs, hpfs, ntfs, nwfs, + portalfs, smbfs, xfs. + +20121016: + The interface cloning API and ABI has changed. The following + modules need to be recompiled together with kernel: + ipfw(4), pfsync(4), pflog(4), usb(4), wlan(4), stf(4), + vlan(4), disc(4), edsc(4), if_bridge(4), gif(4), tap(4), + faith(4), epair(4), enc(4), tun(4), if_lagg(4), gre(4). + +20121015: + The sdhci driver was split in two parts: sdhci (generic SD Host + Controller logic) and sdhci_pci (actual hardware driver). + No kernel config modifications are required, but if you + load sdhc as a module you must switch to sdhci_pci instead. + +20121014: + Import the FUSE kernel and userland support into base system. + +20121013: + The GNU sort(1) program has been removed since the BSD-licensed + sort(1) has been the default for quite some time and no serious + problems have been reported. The corresponding WITH_GNU_SORT + knob has also gone. + +20121006: + The pfil(9) API/ABI for AF_INET family has been changed. Packet + filtering modules: pf(4), ipfw(4), ipfilter(4) need to be recompiled + with new kernel. + +20121001: + The net80211(4) ABI has been changed to allow for improved driver + PS-POLL and power-save support. All wireless drivers need to be + recompiled to work with the new kernel. + +20120913: + The random(4) support for the VIA hardware random number + generator (`PADLOCK') is no longer enabled unconditionally. + Add the padlock_rng device in the custom kernel config if + needed. The GENERIC kernels on i386 and amd64 do include the + device, so the change only affects the custom kernel + configurations. + +20120908: + The pf(4) packet filter ABI has been changed. pfctl(8) and + snmp_pf module need to be recompiled to work with new kernel. + +20120828: + A new ZFS feature flag "com.delphix:empty_bpobj" has been merged + to -HEAD. Pools that have empty_bpobj in active state can not be + imported read-write with ZFS implementations that do not support + this feature. For more information read the zpool-features(5) + manual page. + +20120727: + The sparc64 ZFS loader has been changed to no longer try to auto- + detect ZFS providers based on diskN aliases but now requires these + to be explicitly listed in the OFW boot-device environment variable. + +20120712: + The OpenSSL has been upgraded to 1.0.1c. Any binaries requiring + libcrypto.so.6 or libssl.so.6 must be recompiled. Also, there are + configuration changes. Make sure to merge /etc/ssl/openssl.cnf. + +20120712: + The following sysctls and tunables have been renamed for consistency + with other variables: + kern.cam.da.da_send_ordered -> kern.cam.da.send_ordered + kern.cam.ada.ada_send_ordered -> kern.cam.ada.send_ordered + +20120628: + The sort utility has been replaced with BSD sort. For now, GNU sort + is also available as "gnusort" or the default can be set back to + GNU sort by setting WITH_GNU_SORT. In this case, BSD sort will be + installed as "bsdsort". + +20120611: + A new version of ZFS (pool version 5000) has been merged to -HEAD. + Starting with this version the old system of ZFS pool versioning + is superseded by "feature flags". This concept enables forward + compatibility against certain future changes in functionality of ZFS + pools. The first read-only compatible "feature flag" for ZFS pools + is named "com.delphix:async_destroy". For more information + read the new zpool-features(5) manual page. + Please refer to the "ZFS notes" section of this file for information + on upgrading boot ZFS pools. + +20120417: + The malloc(3) implementation embedded in libc now uses sources imported + as contrib/jemalloc. The most disruptive API change is to + /etc/malloc.conf. If your system has an old-style /etc/malloc.conf, + delete it prior to installworld, and optionally re-create it using the + new format after rebooting. See malloc.conf(5) for details + (specifically the TUNING section and the "opt.*" entries in the MALLCTL + NAMESPACE section). + +20120328: + Big-endian MIPS TARGET_ARCH values no longer end in "eb". mips64eb + is now spelled mips64. mipsn32eb is now spelled mipsn32. mipseb is + now spelled mips. This is to aid compatibility with third-party + software that expects this naming scheme in uname(3). Little-endian + settings are unchanged. If you are updating a big-endian mips64 machine + from before this change, you may need to set MACHINE_ARCH=mips64 in + your environment before the new build system will recognize your machine. + +20120306: + Disable by default the option VFS_ALLOW_NONMPSAFE for all supported + platforms. + +20120229: + Now unix domain sockets behave "as expected" on nullfs(5). Previously + nullfs(5) did not pass through all behaviours to the underlying layer, + as a result if we bound to a socket on the lower layer we could connect + only to the lower path; if we bound to the upper layer we could connect + only to the upper path. The new behavior is one can connect to both the + lower and the upper paths regardless what layer path one binds to. + +20120211: + The getifaddrs upgrade path broken with 20111215 has been restored. + If you have upgraded in between 20111215 and 20120209 you need to + recompile libc again with your kernel. You still need to recompile + world to be able to configure CARP but this restriction already + comes from 20111215. + +20120114: + The set_rcvar() function has been removed from /etc/rc.subr. All + base and ports rc.d scripts have been updated, so if you have a + port installed with a script in /usr/local/etc/rc.d you can either + hand-edit the rcvar= line, or reinstall the port. + + An easy way to handle the mass-update of /etc/rc.d: + rm /etc/rc.d/* && mergemaster -i + +20120109: + panic(9) now stops other CPUs in the SMP systems, disables interrupts + on the current CPU and prevents other threads from running. + This behavior can be reverted using the kern.stop_scheduler_on_panic + tunable/sysctl. + The new behavior can be incompatible with kern.sync_on_panic. + +20111215: + The carp(4) facility has been changed significantly. Configuration + of the CARP protocol via ifconfig(8) has changed, as well as format + of CARP events submitted to devd(8) has changed. See manual pages + for more information. The arpbalance feature of carp(4) is currently + not supported anymore. + + Size of struct in_aliasreq, struct in6_aliasreq has changed. User + utilities using SIOCAIFADDR, SIOCAIFADDR_IN6, e.g. ifconfig(8), + need to be recompiled. + +20111122: + The acpi_wmi(4) status device /dev/wmistat has been renamed to + /dev/wmistat0. + +20111108: + The option VFS_ALLOW_NONMPSAFE option has been added in order to + explicitely support non-MPSAFE filesystems. + It is on by default for all supported platform at this present + time. + +20111101: + The broken amd(4) driver has been replaced with esp(4) in the amd64, + i386 and pc98 GENERIC kernel configuration files. + +20110930: + sysinstall has been removed + +20110923: + The stable/9 branch created in subversion. This corresponds to the + RELENG_9 branch in CVS. + COMMON ITEMS: General Notes Modified: soc2018/sduo/head/bin/setfacl/file.c ============================================================================== --- soc2018/sduo/head/bin/setfacl/file.c Wed Aug 1 20:34:24 2018 (r337274) +++ soc2018/sduo/head/bin/setfacl/file.c Thu Aug 2 00:07:30 2018 (r337275) @@ -50,10 +50,10 @@ err(1, "(null) filename in get_acl_from_file()"); if (strcmp(filename, "-") == 0) { - if (have_stdin) + if (have_stdin != 0) err(1, "cannot specify more than one stdin"); file = stdin; - have_stdin = true; + have_stdin = 1; } else { file = fopen(filename, "r"); if (file == NULL) Modified: soc2018/sduo/head/bin/setfacl/mask.c ============================================================================== --- soc2018/sduo/head/bin/setfacl/mask.c Wed Aug 1 20:34:24 2018 (r337274) +++ soc2018/sduo/head/bin/setfacl/mask.c Thu Aug 2 00:07:30 2018 (r337275) @@ -61,7 +61,7 @@ if (acl == NULL) err(1, "%s: acl_dup() failed", filename); - if (!n_flag) { + if (n_flag == 0) { /* * If no mask entry is specified and the -n option is not * specified, then the permissions of the resulting ACL mask Modified: soc2018/sduo/head/bin/setfacl/merge.c ============================================================================== --- soc2018/sduo/head/bin/setfacl/merge.c Wed Aug 1 20:34:24 2018 (r337274) +++ soc2018/sduo/head/bin/setfacl/merge.c Thu Aug 2 00:07:30 2018 (r337275) @@ -123,7 +123,7 @@ err(1, "%s: acl_get_tag_type() failed - " "invalid ACL entry", filename); if (tag == ACL_MASK) - have_mask = true; + have_mask = 1; /* check against the existing ACL entries */ entry_id_new = ACL_FIRST_ENTRY; Modified: soc2018/sduo/head/bin/setfacl/remove.c ============================================================================== --- soc2018/sduo/head/bin/setfacl/remove.c Wed Aug 1 20:34:24 2018 (r337274) +++ soc2018/sduo/head/bin/setfacl/remove.c Thu Aug 2 00:07:30 2018 (r337275) @@ -75,7 +75,7 @@ if (acl_get_tag_type(entry, &tag) == -1) err(1, "%s: acl_get_tag_type() failed", filename); if (tag == ACL_MASK) - have_mask = true; + have_mask++; if (acl_delete_entry(acl_new, entry) == -1) { carried_error++; warnx("%s: cannot remove non-existent ACL entry", @@ -124,7 +124,7 @@ if (acl_get_tag_type(entry, &tag) == -1) err(1, "%s: acl_get_tag_type() failed", filename); if (tag == ACL_MASK) - have_mask = true; + have_mask++; } if (acl_delete_entry_np(acl_new, entry_number) == -1) { Modified: soc2018/sduo/head/bin/setfacl/setfacl.c ============================================================================== --- soc2018/sduo/head/bin/setfacl/setfacl.c Wed Aug 1 20:34:24 2018 (r337274) +++ soc2018/sduo/head/bin/setfacl/setfacl.c Thu Aug 2 00:07:30 2018 (r337275) @@ -62,18 +62,11 @@ }; static TAILQ_HEAD(, sf_entry) entrylist; -bool have_mask; -bool have_stdin; -bool n_flag; -static bool h_flag; -static bool H_flag; -static bool L_flag; -static bool R_flag; -static bool need_mask; -static acl_type_t acl_type = ACL_TYPE_ACCESS; +uint have_mask; +uint need_mask; +uint have_stdin; +uint n_flag; -static int handle_file(FTS *ftsp, FTSENT *file); -static char **stdin_files(void); static void usage(void); static void @@ -86,215 +79,16 @@ exit(1); } -static char ** -stdin_files(void) -{ - char **files_list; - char filename[PATH_MAX]; - size_t fl_count, i; - - if (have_stdin) - err(1, "cannot have more than one stdin"); - - i = 0; - have_stdin = true; - bzero(&filename, sizeof(filename)); - /* Start with an array size sufficient for basic cases. */ - fl_count = 1024; - files_list = zmalloc(fl_count * sizeof(char *)); - while (fgets(filename, (int)sizeof(filename), stdin)) { - /* remove the \n */ - filename[strlen(filename) - 1] = '\0'; - files_list[i] = strdup(filename); - if (files_list[i] == NULL) - err(1, "strdup() failed"); - /* Grow array if necessary. */ - if (++i == fl_count) { - fl_count <<= 1; - if (fl_count > SIZE_MAX / sizeof(char *)) - errx(1, "Too many input files"); - files_list = zrealloc(files_list, - fl_count * sizeof(char *)); - } - } - - /* fts_open() requires the last array element to be NULL. */ - files_list[i] = NULL; - - return (files_list); -} - -static int -handle_file(FTS *ftsp, FTSENT *file) -{ - acl_t acl; - acl_entry_t unused_entry; - int local_error, ret; - struct sf_entry *entry; - bool follow_symlink; - - local_error = 0; - switch (file->fts_info) { - case FTS_D: - /* Do not recurse if -R not specified. */ - if (!R_flag) - fts_set(ftsp, file, FTS_SKIP); - break; - case FTS_DP: - /* Skip the second visit to a directory. */ - return (0); - case FTS_DNR: - case FTS_ERR: - warnx("%s: %s", file->fts_path, strerror(file->fts_errno)); - return (0); - default: - break; - } - - if (acl_type == ACL_TYPE_DEFAULT && file->fts_info != FTS_D) { - warnx("%s: default ACL may only be set on a directory", - file->fts_path); - return (1); - } - - follow_symlink = (!R_flag && !h_flag) || (R_flag && L_flag) || - (R_flag && H_flag && file->fts_level == FTS_ROOTLEVEL); - - if (follow_symlink) - ret = pathconf(file->fts_accpath, _PC_ACL_NFS4); - else - ret = lpathconf(file->fts_accpath, _PC_ACL_NFS4); - if (ret > 0) { - if (acl_type == ACL_TYPE_DEFAULT) { - warnx("%s: there are no default entries in NFSv4 ACLs", - file->fts_path); - return (1); - } - acl_type = ACL_TYPE_NFS4; - } else if (ret == 0) { - if (acl_type == ACL_TYPE_NFS4) - acl_type = ACL_TYPE_ACCESS; - } else if (ret < 0 && errno != EINVAL) { - warn("%s: pathconf(..., _PC_ACL_NFS4) failed", - file->fts_path); - } - - if (follow_symlink) - acl = acl_get_file(file->fts_accpath, acl_type); - else - acl = acl_get_link_np(file->fts_accpath, acl_type); - if (acl == NULL) { - if (follow_symlink) - warn("%s: acl_get_file() failed", file->fts_path); - else - warn("%s: acl_get_link_np() failed", file->fts_path); - return (1); - } - - /* Cycle through each option. */ - TAILQ_FOREACH(entry, &entrylist, next) { - if (local_error) - continue; - - switch(entry->op) { - case OP_ADD_ACL: - local_error += add_acl(entry->acl, entry->entry_number, - &acl, file->fts_path); - break; - case OP_MERGE_ACL: - local_error += merge_acl(entry->acl, &acl, - file->fts_path); - need_mask = true; - break; - case OP_REMOVE_EXT: - /* - * Don't try to call remove_ext() for empty - * default ACL. - */ - if (acl_type == ACL_TYPE_DEFAULT && - acl_get_entry(acl, ACL_FIRST_ENTRY, - &unused_entry) == 0) { - local_error += remove_default(&acl, - file->fts_path); - break; - } - remove_ext(&acl, file->fts_path); - need_mask = false; - break; - case OP_REMOVE_DEF: - if (acl_type == ACL_TYPE_NFS4) { - warnx("%s: there are no default entries in " - "NFSv4 ACLs; cannot remove", - file->fts_path); - local_error++; - break; - } - if (acl_delete_def_file(file->fts_accpath) == -1) { - warn("%s: acl_delete_def_file() failed", - file->fts_path); - local_error++; - } - if (acl_type == ACL_TYPE_DEFAULT) - local_error += remove_default(&acl, - file->fts_path); - need_mask = false; - break; - case OP_REMOVE_ACL: - local_error += remove_acl(entry->acl, &acl, - file->fts_path); - need_mask = true; - break; - case OP_REMOVE_BY_NUMBER: - local_error += remove_by_number(entry->entry_number, - &acl, file->fts_path); - need_mask = true; - break; - } - } - - /* - * Don't try to set an empty default ACL; it will always fail. - * Use acl_delete_def_file(3) instead. - */ - if (acl_type == ACL_TYPE_DEFAULT && - acl_get_entry(acl, ACL_FIRST_ENTRY, &unused_entry) == 0) { - if (acl_delete_def_file(file->fts_accpath) == -1) { - warn("%s: acl_delete_def_file() failed", - file->fts_path); - return (1); - } - return (0); - } - - /* Don't bother setting the ACL if something is broken. */ - if (local_error) { - return (1); - } - - if (acl_type != ACL_TYPE_NFS4 && need_mask && - set_acl_mask(&acl, file->fts_path) == -1) { - warnx("%s: failed to set ACL mask", file->fts_path); - return (1); - } else if (follow_symlink) { - if (acl_set_file(file->fts_accpath, acl_type, acl) == -1) { - warn("%s: acl_set_file() failed", file->fts_path); - return (1); - } - } else { - if (acl_set_link_np(file->fts_accpath, acl_type, acl) == -1) { - warn("%s: acl_set_link_np() failed", file->fts_path); - return (1); - } - } - - acl_free(acl); - return (0); -} - int main(int argc, char *argv[]) { - int carried_error, ch, entry_number, fts_options; + acl_t acl; + acl_type_t acl_type; + acl_entry_t unused_entry; + char filename[PATH_MAX]; + int local_error, carried_error, ch, entry_number, ret, fts_options; + bool h_flag, H_flag, L_flag, R_flag, follow_symlink; + size_t fl_count, i; FTS *ftsp; FTSENT *file; char **files_list; @@ -302,8 +96,9 @@ char *end; acl_type = ACL_TYPE_ACCESS; - carried_error = fts_options = 0; - have_mask = have_stdin = n_flag = false; + carried_error = local_error = fts_options = 0; + have_mask = have_stdin = n_flag = need_mask = 0; + h_flag = H_flag = L_flag = R_flag = false; TAILQ_INIT(&entrylist); @@ -321,8 +116,7 @@ entry = zmalloc(sizeof(struct sf_entry)); entry->acl = get_acl_from_file(optarg); if (entry->acl == NULL) - err(1, "%s: get_acl_from_file() failed", - optarg); + err(1, "%s: get_acl_from_file() failed", optarg); entry->op = OP_MERGE_ACL; TAILQ_INSERT_TAIL(&entrylist, entry, next); break; @@ -345,9 +139,7 @@ if (end - optarg != (int)strlen(optarg)) errx(1, "%s: invalid entry number", optarg); if (entry_number < 0) - errx(1, - "%s: entry number cannot be less than zero", - optarg); + errx(1, "%s: entry number cannot be less than zero", optarg); entry->entry_number = entry_number; if (argv[optind] == NULL) @@ -384,16 +176,14 @@ TAILQ_INSERT_TAIL(&entrylist, entry, next); break; case 'n': - n_flag = true; + n_flag++; break; case 'x': entry = zmalloc(sizeof(struct sf_entry)); entry_number = strtol(optarg, &end, 10); if (end - optarg == (int)strlen(optarg)) { if (entry_number < 0) - errx(1, - "%s: entry number cannot be less than zero", - optarg); + errx(1, "%s: entry number cannot be less than zero", optarg); entry->entry_number = entry_number; entry->op = OP_REMOVE_BY_NUMBER; } else { @@ -411,12 +201,37 @@ *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-soc-all@freebsd.org Thu Aug 2 10:04:05 2018 Return-Path: Delivered-To: svn-soc-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4ED521061AEA for ; Thu, 2 Aug 2018 10:04:05 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B05298140E for ; Thu, 2 Aug 2018 10:04:04 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org (socsvn.freebsd.org [IPv6:2001:1900:2254:206a::50:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id 1A89D26A3D for ; Thu, 2 Aug 2018 10:04:04 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org ([127.0.1.124]) by socsvn.freebsd.org (8.15.2/8.15.2) with ESMTP id w72A44E4022859 for ; Thu, 2 Aug 2018 10:04:04 GMT (envelope-from sduo@FreeBSD.org) Received: (from www@localhost) by socsvn.freebsd.org (8.15.2/8.15.2/Submit) id w72A3rci022646 for svn-soc-all@FreeBSD.org; Thu, 2 Aug 2018 10:03:53 GMT (envelope-from sduo@FreeBSD.org) Date: Thu, 2 Aug 2018 10:03:53 GMT Message-Id: <201808021003.w72A3rci022646@socsvn.freebsd.org> X-Authentication-Warning: socsvn.freebsd.org: www set sender to sduo@FreeBSD.org using -f From: sduo@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r337276 - in soc2018/sduo/head/sys: dev/netmap net MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-soc-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the entire Summer of Code repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 02 Aug 2018 10:04:05 -0000 Author: sduo Date: Thu Aug 2 10:03:51 2018 New Revision: 337276 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=337276 Log: Updated netmap files. Modified: soc2018/sduo/head/sys/dev/netmap/if_em_netmap.h soc2018/sduo/head/sys/dev/netmap/if_igb_netmap.h soc2018/sduo/head/sys/dev/netmap/if_ixl_netmap.h soc2018/sduo/head/sys/dev/netmap/if_lem_netmap.h soc2018/sduo/head/sys/dev/netmap/if_ptnet.c soc2018/sduo/head/sys/dev/netmap/if_re_netmap.h soc2018/sduo/head/sys/dev/netmap/if_vtnet_netmap.h soc2018/sduo/head/sys/dev/netmap/ixgbe_netmap.h soc2018/sduo/head/sys/dev/netmap/netmap.c soc2018/sduo/head/sys/dev/netmap/netmap_bdg.c soc2018/sduo/head/sys/dev/netmap/netmap_generic.c soc2018/sduo/head/sys/dev/netmap/netmap_kern.h soc2018/sduo/head/sys/dev/netmap/netmap_mem2.c soc2018/sduo/head/sys/dev/netmap/netmap_mem2.h soc2018/sduo/head/sys/dev/netmap/netmap_monitor.c soc2018/sduo/head/sys/dev/netmap/netmap_offloadings.c soc2018/sduo/head/sys/dev/netmap/netmap_pipe.c soc2018/sduo/head/sys/dev/netmap/netmap_vale.c soc2018/sduo/head/sys/net/netmap.h soc2018/sduo/head/sys/net/netmap_user.h Modified: soc2018/sduo/head/sys/dev/netmap/if_em_netmap.h ============================================================================== --- soc2018/sduo/head/sys/dev/netmap/if_em_netmap.h Thu Aug 2 00:07:30 2018 (r337275) +++ soc2018/sduo/head/sys/dev/netmap/if_em_netmap.h Thu Aug 2 10:03:51 2018 (r337276) @@ -142,9 +142,10 @@ nic_i = netmap_idx_k2n(kring, nm_i); for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; + uint64_t offset = kring->fixed_buf_offset + slot->offset; u_int len = slot->len; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); /* device-specific */ struct e1000_tx_desc *curr = &txr->tx_base[nic_i]; @@ -158,7 +159,8 @@ if (slot->flags & NS_BUF_CHANGED) { curr->buffer_addr = htole64(paddr); /* buffer has changed, reload map */ - netmap_reload_map(na, txr->txtag, txbuf->map, addr); + netmap_reload_map(na, txr->txtag, txbuf->map, + addr, NETMAP_BUF_SIZE(na, offset)); } slot->flags &= ~(NS_REPORT | NS_BUF_CHANGED); @@ -266,8 +268,9 @@ nic_i = netmap_idx_k2n(kring, nm_i); for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; + uint64_t offset = kring->fixed_buf_offset + slot->offset; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); union e1000_rx_desc_extended *curr = &rxr->rx_base[nic_i]; struct em_rxbuffer *rxbuf = &rxr->rx_buffers[nic_i]; @@ -278,7 +281,8 @@ curr->read.buffer_addr = htole64(paddr); if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ - netmap_reload_map(na, rxr->rxtag, rxbuf->map, addr); + netmap_reload_map(na, rxr->rxtag, rxbuf->map, + addr, NETMAP_BUF_SIZE(na, offset)); slot->flags &= ~NS_BUF_CHANGED; } curr->wb.upper.status_error = 0; Modified: soc2018/sduo/head/sys/dev/netmap/if_igb_netmap.h ============================================================================== --- soc2018/sduo/head/sys/dev/netmap/if_igb_netmap.h Thu Aug 2 00:07:30 2018 (r337275) +++ soc2018/sduo/head/sys/dev/netmap/if_igb_netmap.h Thu Aug 2 10:03:51 2018 (r337276) @@ -113,9 +113,10 @@ nic_i = netmap_idx_k2n(kring, nm_i); for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; + uint64_t offset = kring->fixed_buf_offset + slot->offset; u_int len = slot->len; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); /* device-specific */ union e1000_adv_tx_desc *curr = @@ -129,7 +130,8 @@ if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ - netmap_reload_map(na, txr->txtag, txbuf->map, addr); + netmap_reload_map(na, txr->txtag, txbuf->map, + addr, NETMAP_BUF_SIZE(na, offset)); } slot->flags &= ~(NS_REPORT | NS_BUF_CHANGED); @@ -246,8 +248,9 @@ nic_i = netmap_idx_k2n(kring, nm_i); for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; + uint64_t offset = kring->fixed_buf_offset + slot->offset; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); union e1000_adv_rx_desc *curr = &rxr->rx_base[nic_i]; struct igb_rx_buf *rxbuf = &rxr->rx_buffers[nic_i]; @@ -257,7 +260,8 @@ if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ - netmap_reload_map(na, rxr->ptag, rxbuf->pmap, addr); + netmap_reload_map(na, rxr->ptag, rxbuf->pmap, + addr, NETMAP_BUF_SIZE(na, offset)); slot->flags &= ~NS_BUF_CHANGED; } curr->wb.upper.status_error = 0; Modified: soc2018/sduo/head/sys/dev/netmap/if_ixl_netmap.h ============================================================================== --- soc2018/sduo/head/sys/dev/netmap/if_ixl_netmap.h Thu Aug 2 00:07:30 2018 (r337275) +++ soc2018/sduo/head/sys/dev/netmap/if_ixl_netmap.h Thu Aug 2 10:03:51 2018 (r337276) @@ -214,9 +214,10 @@ for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; + uint64_t offset = kring->fixed_buf_offset + slot->offset; u_int len = slot->len; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); /* device-specific */ struct i40e_tx_desc *curr = &txr->base[nic_i]; @@ -233,7 +234,8 @@ if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ - netmap_reload_map(na, txr->dma.tag, txbuf->map, addr); + netmap_reload_map(na, txr->dma.tag, txbuf->map, + addr, NETMAP_BUF_SIZE(na, offset)); } slot->flags &= ~(NS_REPORT | NS_BUF_CHANGED); @@ -376,8 +378,9 @@ nic_i = netmap_idx_k2n(kring, nm_i); for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; + uint64_t offset = kring->fixed_buf_offset + slot->offset; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); union i40e_32byte_rx_desc *curr = &rxr->base[nic_i]; struct ixl_rx_buf *rxbuf = &rxr->buffers[nic_i]; @@ -387,7 +390,8 @@ if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ - netmap_reload_map(na, rxr->ptag, rxbuf->pmap, addr); + netmap_reload_map(na, rxr->ptag, rxbuf->pmap, + addr, NETMAP_BUF_SIZE(na, offset)); slot->flags &= ~NS_BUF_CHANGED; } curr->read.pkt_addr = htole64(paddr); Modified: soc2018/sduo/head/sys/dev/netmap/if_lem_netmap.h ============================================================================== --- soc2018/sduo/head/sys/dev/netmap/if_lem_netmap.h Thu Aug 2 00:07:30 2018 (r337275) +++ soc2018/sduo/head/sys/dev/netmap/if_lem_netmap.h Thu Aug 2 10:03:51 2018 (r337276) @@ -124,9 +124,10 @@ nic_i = netmap_idx_k2n(kring, nm_i); while (nm_i != head) { struct netmap_slot *slot = &ring->slot[nm_i]; + uint64_t offset = kring->fixed_buf_offset + slot->offset; u_int len = slot->len; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); /* device-specific */ struct e1000_tx_desc *curr = &adapter->tx_desc_base[nic_i]; @@ -140,7 +141,8 @@ if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ curr->buffer_addr = htole64(paddr); - netmap_reload_map(na, adapter->txtag, txbuf->map, addr); + netmap_reload_map(na, adapter->txtag, txbuf->map, + addr, NETMAP_BUF_SIZE(na, offset)); } slot->flags &= ~(NS_REPORT | NS_BUF_CHANGED); @@ -258,8 +260,9 @@ nic_i = netmap_idx_k2n(kring, nm_i); for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; + uint64_t offset = kring->fixed_buf_offset + slot->offset; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); struct e1000_rx_desc *curr = &adapter->rx_desc_base[nic_i]; struct em_buffer *rxbuf = &adapter->rx_buffer_area[nic_i]; @@ -270,7 +273,8 @@ if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ curr->buffer_addr = htole64(paddr); - netmap_reload_map(na, adapter->rxtag, rxbuf->map, addr); + netmap_reload_map(na, adapter->rxtag, rxbuf->map, + addr, NETMAP_BUF_SIZE(na, offset)); slot->flags &= ~NS_BUF_CHANGED; } curr->status = 0; Modified: soc2018/sduo/head/sys/dev/netmap/if_ptnet.c ============================================================================== --- soc2018/sduo/head/sys/dev/netmap/if_ptnet.c Thu Aug 2 00:07:30 2018 (r337275) +++ soc2018/sduo/head/sys/dev/netmap/if_ptnet.c Thu Aug 2 10:03:51 2018 (r337276) @@ -909,7 +909,7 @@ goto err_register; } - nm_buf_size = NETMAP_BUF_SIZE(na_dr); + nm_buf_size = NETMAP_BUF_SIZE(na_dr, 0); KASSERT(nm_buf_size > 0, ("Invalid netmap buffer size")); sc->min_tx_space = PTNET_MAX_PKT_SIZE / nm_buf_size + 2; @@ -1107,12 +1107,13 @@ ptnet_nm_config(struct netmap_adapter *na, struct nm_config_info *info) { struct ptnet_softc *sc = if_getsoftc(na->ifp); + uint64_t offset = 0; info->num_tx_rings = bus_read_4(sc->iomem, PTNET_IO_NUM_TX_RINGS); info->num_rx_rings = bus_read_4(sc->iomem, PTNET_IO_NUM_RX_RINGS); info->num_tx_descs = bus_read_4(sc->iomem, PTNET_IO_NUM_TX_SLOTS); info->num_rx_descs = bus_read_4(sc->iomem, PTNET_IO_NUM_RX_SLOTS); - info->rx_buf_maxsize = NETMAP_BUF_SIZE(na); + info->rx_buf_maxsize = NETMAP_BUF_SIZE(na, offset); device_printf(sc->dev, "txr %u, rxr %u, txd %u, rxd %u, rxbufsz %u\n", info->num_tx_rings, info->num_rx_rings, @@ -1801,7 +1802,7 @@ /* Initialize transmission state variables. */ slot = ring->slot + head; - nmbuf = NMB(na, slot); + nmbuf = NMB(kring, slot); nmbuf_bytes = 0; /* If needed, prepare the virtio-net header at the beginning @@ -1842,7 +1843,8 @@ int mlen = mf->m_len; for (;;) { - int copy = NETMAP_BUF_SIZE(na) - nmbuf_bytes; + uint64_t offset = kring->fixed_buf_offset + slot->offset; + int copy = NETMAP_BUF_SIZE(na, offset) - nmbuf_bytes; if (mlen < copy) { copy = mlen; @@ -1865,7 +1867,7 @@ KASSERT(head != ring->tail, ("Unexpectedly run out of TX space")); slot = ring->slot + head; - nmbuf = NMB(na, slot); + nmbuf = NMB(kring, slot); nmbuf_bytes = 0; } } @@ -2074,7 +2076,7 @@ /* Initialize ring state variables, possibly grabbing the * virtio-net header. */ slot = ring->slot + head; - nmbuf = NMB(na, slot); + nmbuf = NMB(kring, slot); nmbuf_len = slot->len; vh = (struct virtio_net_hdr *)nmbuf; @@ -2160,7 +2162,7 @@ } slot = ring->slot + head; - nmbuf = NMB(na, slot); + nmbuf = NMB(kring, slot); nmbuf_len = slot->len; mhead->m_pkthdr.len += nmbuf_len; } Modified: soc2018/sduo/head/sys/dev/netmap/if_re_netmap.h ============================================================================== --- soc2018/sduo/head/sys/dev/netmap/if_re_netmap.h Thu Aug 2 00:07:30 2018 (r337275) +++ soc2018/sduo/head/sys/dev/netmap/if_re_netmap.h Thu Aug 2 10:03:51 2018 (r337276) @@ -94,9 +94,10 @@ for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; + uint64_t offset = kring->fixed_buf_offset + slot->offset; u_int len = slot->len; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); /* device-specific */ struct rl_desc *desc = &sc->rl_ldata.rl_tx_list[nic_i]; @@ -113,7 +114,8 @@ desc->rl_bufaddr_lo = htole32(RL_ADDR_LO(paddr)); desc->rl_bufaddr_hi = htole32(RL_ADDR_HI(paddr)); netmap_reload_map(na, sc->rl_ldata.rl_tx_mtag, - txd[nic_i].tx_dmamap, addr); + txd[nic_i].tx_dmamap, addr, + NETMAP_BUF_SIZE(na, offset)); } slot->flags &= ~(NS_REPORT | NS_BUF_CHANGED); @@ -236,11 +238,12 @@ nic_i = netmap_idx_k2n(kring, nm_i); for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; + uint64_t offset = kring->fixed_buf_offset + slot->offset; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); struct rl_desc *desc = &sc->rl_ldata.rl_rx_list[nic_i]; - int cmd = NETMAP_BUF_SIZE(na) | RL_RDESC_CMD_OWN; + int cmd = NETMAP_BUF_SIZE(na, offset) | RL_RDESC_CMD_OWN; if (addr == NETMAP_BUF_BASE(na)) /* bad buf */ goto ring_reset; @@ -253,7 +256,8 @@ desc->rl_bufaddr_lo = htole32(RL_ADDR_LO(paddr)); desc->rl_bufaddr_hi = htole32(RL_ADDR_HI(paddr)); netmap_reload_map(na, sc->rl_ldata.rl_rx_mtag, - rxd[nic_i].rx_dmamap, addr); + rxd[nic_i].rx_dmamap, addr, + NETMAP_BUF_SIZE(na, offset)); slot->flags &= ~NS_BUF_CHANGED; } desc->rl_cmdstat = htole32(cmd); @@ -301,14 +305,17 @@ /* l points in the netmap ring, i points in the NIC ring */ for (i = 0; i < n; i++) { + struct netmap_kring *kring = na->tx_rings[0]; + uint64_t offset = kring->fixed_buf_offset; uint64_t paddr; - int l = netmap_idx_n2k(na->tx_rings[0], i); - void *addr = PNMB(na, slot + l, &paddr); + int l = netmap_idx_n2k(kring, i); + void *addr = PNMB(kring, slot + l, &paddr); desc[i].rl_bufaddr_lo = htole32(RL_ADDR_LO(paddr)); desc[i].rl_bufaddr_hi = htole32(RL_ADDR_HI(paddr)); netmap_load_map(na, sc->rl_ldata.rl_tx_mtag, - txd[i].tx_dmamap, addr); + txd[i].tx_dmamap, addr, + NETMAP_BUF_SIZE(na, offset)); } } @@ -318,6 +325,7 @@ struct netmap_adapter *na = NA(sc->rl_ifp); struct netmap_slot *slot = netmap_reset(na, NR_RX, 0, 0); struct rl_desc *desc = sc->rl_ldata.rl_rx_list; + struct netmap_kring *kring = na->rx_rings[0]; uint32_t cmdstat; uint32_t nic_i, max_avail; uint32_t const n = sc->rl_ldata.rl_rx_desc_cnt; @@ -328,21 +336,23 @@ * Do not release the slots owned by userspace, * and also keep one empty. */ - max_avail = n - 1 - nm_kr_rxspace(na->rx_rings[0]); + max_avail = n - 1 - nm_kr_rxspace(kring); for (nic_i = 0; nic_i < n; nic_i++) { + uint32_t nm_i = netmap_idx_n2k(kring, nic_i); + uint64_t offset = kring->fixed_buf_offset + (slot + nm_i)->offset; void *addr; uint64_t paddr; - uint32_t nm_i = netmap_idx_n2k(na->rx_rings[0], nic_i); - addr = PNMB(na, slot + nm_i, &paddr); + addr = PNMB(kring, slot + nm_i, &paddr); netmap_reload_map(na, sc->rl_ldata.rl_rx_mtag, - sc->rl_ldata.rl_rx_desc[nic_i].rx_dmamap, addr); + sc->rl_ldata.rl_rx_desc[nic_i].rx_dmamap, + addr, NETMAP_BUF_SIZE(na, offset)); bus_dmamap_sync(sc->rl_ldata.rl_rx_mtag, sc->rl_ldata.rl_rx_desc[nic_i].rx_dmamap, BUS_DMASYNC_PREREAD); desc[nic_i].rl_bufaddr_lo = htole32(RL_ADDR_LO(paddr)); desc[nic_i].rl_bufaddr_hi = htole32(RL_ADDR_HI(paddr)); - cmdstat = NETMAP_BUF_SIZE(na); + cmdstat = NETMAP_BUF_SIZE(na, offset); if (nic_i == n - 1) /* mark the end of ring */ cmdstat |= RL_RDESC_CMD_EOR; if (nic_i < max_avail) Modified: soc2018/sduo/head/sys/dev/netmap/if_vtnet_netmap.h ============================================================================== --- soc2018/sduo/head/sys/dev/netmap/if_vtnet_netmap.h Thu Aug 2 00:07:30 2018 (r337275) +++ soc2018/sduo/head/sys/dev/netmap/if_vtnet_netmap.h Thu Aug 2 10:03:51 2018 (r337276) @@ -140,7 +140,7 @@ struct netmap_slot *slot = &ring->slot[nm_i]; u_int len = slot->len; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); int err; NM_CHECK_ADDR_LEN(na, addr, len); @@ -242,8 +242,9 @@ for (n = 0; nm_i != head; n++) { static struct virtio_net_hdr_mrg_rxbuf hdr; struct netmap_slot *slot = &ring->slot[nm_i]; + uint64_t offset = kring->fixed_buf_offset + slot->offset; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); int err = 0; if (addr == NETMAP_BUF_BASE(na)) { /* bad buf */ @@ -254,7 +255,7 @@ slot->flags &= ~NS_BUF_CHANGED; sglist_reset(&sg); // cheap err = sglist_append(&sg, &hdr, sc->vtnet_hdr_size); - err = sglist_append_phys(&sg, paddr, NETMAP_BUF_SIZE(na)); + err = sglist_append_phys(&sg, paddr, NETMAP_BUF_SIZE(na, offset)); /* writable for the host */ err = virtqueue_enqueue(vq, rxq, &sg, 0, sg.sg_nseg); if (err < 0) { Modified: soc2018/sduo/head/sys/dev/netmap/ixgbe_netmap.h ============================================================================== --- soc2018/sduo/head/sys/dev/netmap/ixgbe_netmap.h Thu Aug 2 00:07:30 2018 (r337275) +++ soc2018/sduo/head/sys/dev/netmap/ixgbe_netmap.h Thu Aug 2 10:03:51 2018 (r337276) @@ -236,9 +236,10 @@ for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; + uint64_t offset = kring->fixed_buf_offset; u_int len = slot->len; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); /* device-specific */ union ixgbe_adv_tx_desc *curr = &txr->tx_base[nic_i]; @@ -255,7 +256,8 @@ if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ - netmap_reload_map(na, txr->txtag, txbuf->map, addr); + netmap_reload_map(na, txr->txtag, txbuf->map, + addr, NETMAP_BUF_SIZE(na, offset)); } slot->flags &= ~(NS_REPORT | NS_BUF_CHANGED); @@ -437,8 +439,9 @@ nic_i = netmap_idx_k2n(kring, nm_i); for (n = 0; nm_i != head; n++) { struct netmap_slot *slot = &ring->slot[nm_i]; + uint64_t offset = kring->fixed_buf_offset + slot->offset; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); union ixgbe_adv_rx_desc *curr = &rxr->rx_base[nic_i]; struct ixgbe_rx_buf *rxbuf = &rxr->rx_buffers[nic_i]; @@ -448,7 +451,8 @@ if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ - netmap_reload_map(na, rxr->ptag, rxbuf->pmap, addr); + netmap_reload_map(na, rxr->ptag, rxbuf->pmap, + addr, NETMAP_BUF_SIZE(na, offset)); slot->flags &= ~NS_BUF_CHANGED; } curr->wb.upper.status_error = 0; Modified: soc2018/sduo/head/sys/dev/netmap/netmap.c ============================================================================== --- soc2018/sduo/head/sys/dev/netmap/netmap.c Thu Aug 2 00:07:30 2018 (r337275) +++ soc2018/sduo/head/sys/dev/netmap/netmap.c Thu Aug 2 10:03:51 2018 (r337276) @@ -1163,16 +1163,17 @@ for (n = kring->nr_hwcur; n != head; n = nm_next(n, lim)) { struct mbuf *m; struct netmap_slot *slot = &kring->ring->slot[n]; + uint64_t offset = kring->fixed_buf_offset + slot->offset; if ((slot->flags & NS_FORWARD) == 0 && !force) continue; - if (slot->len < 14 || slot->len > NETMAP_BUF_SIZE(na)) { + if (slot->len < 14 || slot->len > NETMAP_BUF_SIZE(na, offset)) { RD(5, "bad pkt at %d len %d", n, slot->len); continue; } slot->flags &= ~NS_FORWARD; // XXX needed ? /* XXX TODO: adapt to the case of a multisegment packet */ - m = m_devget(NMB(na, slot), slot->len, 0, na->ifp, NULL); + m = m_devget(NMB(kring, slot), slot->len, 0, na->ifp, NULL); if (m == NULL) break; @@ -1328,10 +1329,10 @@ int len = MBUF_LEN(m); struct netmap_slot *slot = &ring->slot[nm_i]; - m_copydata(m, 0, len, NMB(na, slot)); + m_copydata(m, 0, len, NMB(kring, slot)); ND("nm %d len %d", nm_i, len); if (netmap_verbose) - D("%s", nm_dump_buf(NMB(na, slot),len, 128, NULL)); + D("%s", nm_dump_buf(NMB(kring, slot),len, 128, NULL)); slot->len = len; slot->flags = 0; @@ -1770,11 +1771,13 @@ for (i = 0; i <= lim; i++) { u_int idx = ring->slot[i].buf_idx; u_int len = ring->slot[i].len; + uint64_t offset = kring->fixed_buf_offset + ring->slot[i].offset; + if (idx < 2 || idx >= kring->na->na_lut.objtotal) { RD(5, "bad index at slot %d idx %d len %d ", i, idx, len); ring->slot[i].buf_idx = 0; ring->slot[i].len = 0; - } else if (len > NETMAP_BUF_SIZE(kring->na)) { + } else if (len > NETMAP_BUF_SIZE(kring->na, offset)) { ring->slot[i].len = 0; RD(5, "bad len at slot %d idx %d len %d", i, idx, len); } @@ -2091,7 +2094,8 @@ */ int netmap_do_regif(struct netmap_priv_d *priv, struct netmap_adapter *na, - uint32_t nr_mode, uint16_t nr_ringid, uint64_t nr_flags) + uint32_t nr_mode, uint16_t nr_ringid, uint64_t nr_flags, + uint64_t fixed_buf_offset) { struct netmap_if *nifp = NULL; int error; @@ -2128,7 +2132,7 @@ */ if (na->ifp && nm_priv_rx_enabled(priv)) { /* This netmap adapter is attached to an ifnet. */ - unsigned nbs = NETMAP_BUF_SIZE(na); + unsigned nbs = NETMAP_BUF_SIZE(na, fixed_buf_offset); unsigned mtu = nm_os_ifnet_mtu(na->ifp); ND("%s: mtu %d rx_buf_maxsize %d netmap_buf_size %d", @@ -2250,6 +2254,89 @@ return error; } +/* Checks that every every buffer, belonging to [first_ring, last_ring[ + * (tx/rx dependings on t) of the specified na, is bigger than the + * specified offset. + */ +int +check_fixed_offset(struct netmap_adapter *na, enum txrx t, u_int first_ring, + u_int last_ring, uint64_t offset) +{ + u_int i; + + for (i = first_ring; i < last_ring; ++i) { + struct netmap_kring *kring = NMR(na, t)[i]; + struct netmap_ring *ring = kring->ring; + + if (ring->nr_buf_size <= offset) { + return EINVAL; + } + } + + return 0; +} + +/* Sets the fields needed to use the specified offset for every + * buffer belonging to [first_ring, last_ring[ (tx/rx dependings on t) + * of the specified na. + */ +void +set_fixed_offset(struct netmap_adapter *na, enum txrx t, u_int first_ring, + u_int last_ring, uint64_t offset) +{ + u_int i; + + for (i = first_ring; i < last_ring; ++i) { + struct netmap_kring *kring = NMR(na, t)[i]; + struct netmap_ring *ring = kring->ring; + uint32_t buf_size; + int j; + + kring->fixed_buf_offset = offset; + ring->fixed_buf_offset = offset; + buf_size = ring->nr_buf_size - offset; + *(uint32_t *)(uintptr_t)&ring->nr_buf_size = buf_size; + for (j = 0; j < ring->num_slots; ++j) { + struct netmap_slot *slot = &ring->slot[j]; + + slot->len -= offset; + } + } +} + +/* Default callback to set fixed per-ring offsets. Applies the offset + * to every ring the request is trying to open. + */ +int +netmap_set_fixed_offset(struct netmap_adapter *na, struct netmap_priv_d *priv, + struct nmreq_opt_ring_offset *opt) +{ + uint64_t fixed_buf_offset; + enum txrx t; + int ret; + + if (opt == NULL) { + return 0; + } + + fixed_buf_offset = opt->nro_fixed_buf_offset; + for_rx_tx(t) { + ret = check_fixed_offset(na, t, priv->np_qfirst[t], + priv->np_qlast[t], fixed_buf_offset); + if (ret != 0) { + opt->nro_opt.nro_status = ret; + return ret; + } + } + + for_rx_tx(t) { + set_fixed_offset(na, t, priv->np_qfirst[t], priv->np_qlast[t], + fixed_buf_offset); + } + + opt->nro_opt.nro_status = 0; + return 0; +} /* * update kring and ring at the end of rxsync/txsync. @@ -2282,6 +2369,40 @@ static int nmreq_copyout(struct nmreq_header *, int); static int nmreq_checkoptions(struct nmreq_header *); +static int +netmap_handle_slot_offset(struct nmreq_header *hdr, struct netmap_adapter *na) +{ + struct nmreq_opt_slot_offset *off_opt; + struct nmreq_option *opt; + uint32_t mem_flag; + int error; + + if (hdr->nr_flags & NETMAP_REQ_LEGACY) { + /* Legacy requests do not support per-slot variable offsets */ + mem_flag = NETMAP_MEM_LEGACY; + opt = NULL; + } else { + opt = nmreq_findoption((struct nmreq_option *)(uintptr_t)hdr->nr_options, + NETMAP_REQ_OPT_SLOT_OFFSET); + if (opt == NULL) { + /* Default behaviour: per-slot variable offsets disabled */ + mem_flag = NETMAP_MEM_LEGACY; + } else { + /* If there's an option embedded in the request, + * do as the user says */ + off_opt = (struct nmreq_opt_slot_offset *)opt; + mem_flag = (off_opt->nro_enable == 0) ? + NETMAP_MEM_LEGACY : NETMAP_MEM_OFFSET; + } + } + + error = netmap_mem_flag_offset(na->nm_mem, mem_flag); + if (opt != NULL) { + opt->nro_status = error; + } + return error; +} + /* * ioctl(2) support for the "netmap" device. * @@ -2346,10 +2467,10 @@ /* Protect access to priv from concurrent requests. */ NMG_LOCK(); do { - u_int memflags; -#ifdef WITH_EXTMEM + struct nmreq_opt_ring_offset *off_opt = NULL; + uint64_t fixed_buf_offset; struct nmreq_option *opt; -#endif /* WITH_EXTMEM */ + u_int memflags; if (priv->np_nifp != NULL) { /* thread already registered */ error = EBUSY; @@ -2375,7 +2496,6 @@ break; } #endif /* WITH_EXTMEM */ - if (nmd == NULL && req->nr_mem_id) { /* find the allocator and get a reference */ nmd = netmap_mem_find(req->nr_mem_id); @@ -2399,8 +2519,23 @@ break; } + opt = nmreq_findoption( + (struct nmreq_option *)(uintptr_t)hdr->nr_options, + NETMAP_REQ_OPT_RING_OFFSET); + if (opt == NULL) { + fixed_buf_offset = 0; + } else if (nmreq_checkduplicate(opt) != 0) { + opt->nro_status = EINVAL; + error = opt->nro_status; + break; + } else { + off_opt = (struct nmreq_opt_ring_offset *)opt; + fixed_buf_offset = off_opt->nro_fixed_buf_offset; + } + error = netmap_do_regif(priv, na, req->nr_mode, - req->nr_ringid, req->nr_flags); + req->nr_ringid, req->nr_flags, + fixed_buf_offset); if (error) { /* reg. failed, release priv and ref */ break; } @@ -2412,6 +2547,7 @@ req->nr_tx_rings = na->num_tx_rings; req->nr_rx_slots = na->num_rx_desc; req->nr_tx_slots = na->num_tx_desc; + error = netmap_mem_get_info(na->nm_mem, &req->nr_memsize, &memflags, &req->nr_mem_id); if (error) { @@ -2437,8 +2573,29 @@ } req->nr_offset = netmap_mem_if_offset(na->nm_mem, nifp); + /* Fixed per-ring offset handling */ + if (na->nm_set_fixed_offset != NULL) { + nm_prinf("netmap: setting fixed offset for %s\n", + na->name); + error = na->nm_set_fixed_offset(na, priv, off_opt); + if (error != 0) { + nm_prinf("netmap: error while setting " + "fixed offset\n"); + netmap_do_unregif(priv); + break; + } + } + + error = netmap_handle_slot_offset(hdr, na); + if (error != 0) { + nm_prinf("netmap: failed to set slot offsets\n"); + netmap_do_unregif(priv); + break; + } + error = nmreq_checkoptions(hdr); if (error) { + nm_prinf("netmap: an option failed\n"); netmap_do_unregif(priv); break; } @@ -2558,7 +2715,8 @@ (struct netmap_vp_adapter *)na; na->virt_hdr_len = req->nr_hdr_len; if (na->virt_hdr_len) { - vpna->mfs = NETMAP_BUF_SIZE(na); + /* TODO: Retrieve biggest offset from krings? */ + vpna->mfs = NETMAP_BUF_SIZE(na, 0); } D("Using vnet_hdr_len %d for %p", na->virt_hdr_len, na); netmap_adapter_put(na); @@ -2761,6 +2919,12 @@ rv = sizeof(struct nmreq_opt_extmem); break; #endif /* WITH_EXTMEM */ + case NETMAP_REQ_OPT_RING_OFFSET: + rv = sizeof(struct nmreq_opt_ring_offset); + break; + case NETMAP_REQ_OPT_SLOT_OFFSET: + rv = sizeof(struct nmreq_opt_slot_offset); + break; } /* subtract the common header */ return rv - sizeof(struct nmreq_option); @@ -3602,6 +3766,7 @@ u_int len = MBUF_LEN(m); u_int error = ENOBUFS; unsigned int txr; + uint64_t offset; struct mbq *q; int busy; u_int i; @@ -3611,6 +3776,7 @@ i = i % na->num_host_rx_rings; } kring = NMR(na, NR_RX)[nma_get_nrings(na, NR_RX) + i]; + offset = kring->fixed_buf_offset; // XXX [Linux] we do not need this lock // if we follow the down/configure/up protocol -gl @@ -3635,9 +3801,9 @@ q = &kring->rx_queue; // XXX reconsider long packets if we handle fragments - if (len > NETMAP_BUF_SIZE(na)) { /* too long for us */ + if (len > NETMAP_BUF_SIZE(na, offset)) { /* too long for us */ D("%s from_host, drop packet size %d > %d", na->name, - len, NETMAP_BUF_SIZE(na)); + len, NETMAP_BUF_SIZE(na, offset)); goto done; } Modified: soc2018/sduo/head/sys/dev/netmap/netmap_bdg.c ============================================================================== --- soc2018/sduo/head/sys/dev/netmap/netmap_bdg.c Thu Aug 2 00:07:30 2018 (r337275) +++ soc2018/sduo/head/sys/dev/netmap/netmap_bdg.c Thu Aug 2 10:03:51 2018 (r337276) @@ -1130,7 +1130,6 @@ static int netmap_vp_rxsync_locked(struct netmap_kring *kring, int flags) { - struct netmap_adapter *na = kring->na; struct netmap_ring *ring = kring->ring; u_int nm_i, lim = kring->nkr_num_slots - 1; u_int head = kring->rhead; @@ -1151,7 +1150,7 @@ /* consistency check, but nothing really important here */ for (n = 0; likely(nm_i != head); n++) { struct netmap_slot *slot = &ring->slot[nm_i]; - void *addr = NMB(na, slot); + void *addr = NMB(kring, slot); if (addr == NETMAP_BUF_BASE(kring->na)) { /* bad buf */ D("bad buffer index %d, ignore ?", @@ -1436,10 +1435,6 @@ NMR(na, t)[i]->ring = NULL; } } - /* reset the number of host rings to default */ - for_rx_tx(t) { - nma_set_host_nrings(hwna, t, 1); - } } @@ -1658,7 +1653,7 @@ return ENOMEM; npriv->np_ifp = na->ifp; /* let the priv destructor release the ref */ error = netmap_do_regif(npriv, na, req->reg.nr_mode, - req->reg.nr_ringid, req->reg.nr_flags); + req->reg.nr_ringid, req->reg.nr_flags, 0); if (error) { netmap_priv_delete(npriv); return error; @@ -1726,24 +1721,12 @@ na->na_flags |= NAF_SW_ONLY; na->na_flags |= NAF_HOST_RINGS; hostna = &bna->host.up; - - /* limit the number of host rings to that of hw */ - nm_bound_var(&hostna->num_tx_rings, 1, 1, - nma_get_nrings(hwna, NR_TX), NULL); - nm_bound_var(&hostna->num_rx_rings, 1, 1, - nma_get_nrings(hwna, NR_RX), NULL); - snprintf(hostna->name, sizeof(hostna->name), "%s^", na->name); hostna->ifp = hwna->ifp; for_rx_tx(t) { enum txrx r = nm_txrx_swap(t); - u_int nr = nma_get_nrings(hostna, t); - - nma_set_nrings(hostna, t, nr); - nma_set_host_nrings(na, t, nr); - if (nma_get_host_nrings(hwna, t) < nr) { - nma_set_host_nrings(hwna, t, nr); - } + nma_set_nrings(hostna, t, 1); + nma_set_host_nrings(na, t, 1); nma_set_ndesc(hostna, t, nma_get_ndesc(hwna, r)); } // hostna->nm_txsync = netmap_bwrap_host_txsync; Modified: soc2018/sduo/head/sys/dev/netmap/netmap_generic.c ============================================================================== --- soc2018/sduo/head/sys/dev/netmap/netmap_generic.c Thu Aug 2 00:07:30 2018 (r337275) +++ soc2018/sduo/head/sys/dev/netmap/netmap_generic.c Thu Aug 2 10:03:51 2018 (r337276) @@ -708,8 +708,9 @@ while (nm_i != head) { struct netmap_slot *slot = &ring->slot[nm_i]; + uint64_t offset = kring->fixed_buf_offset + slot->offset; u_int len = slot->len; - void *addr = NMB(na, slot); + void *addr = NMB(kring, slot); /* device-specific */ struct mbuf *m; int tx_ret; @@ -721,7 +722,7 @@ m = kring->tx_pool[nm_i]; if (unlikely(m == NULL)) { kring->tx_pool[nm_i] = m = - nm_os_get_mbuf(ifp, NETMAP_BUF_SIZE(na)); + nm_os_get_mbuf(ifp, NETMAP_BUF_SIZE(na, offset)); if (m == NULL) { RD(2, "Failed to replenish mbuf"); /* Here we could schedule a timer which @@ -835,12 +836,14 @@ struct netmap_kring *kring; u_int work_done; u_int r = MBUF_RXQ(m); /* receive ring number */ + uint64_t offset; if (r >= na->num_rx_rings) { r = r % na->num_rx_rings; } kring = na->rx_rings[r]; + offset = kring->fixed_buf_offset; if (kring->nr_mode == NKR_NETMAP_OFF) { /* We must not intercept this mbuf. */ @@ -848,7 +851,7 @@ } /* limit the size of the queue */ - if (unlikely(!gna->rxsg && MBUF_LEN(m) > NETMAP_BUF_SIZE(na))) { + if (unlikely(!gna->rxsg && MBUF_LEN(m) > NETMAP_BUF_SIZE(na, offset))) { /* This may happen when GRO/LRO features are enabled for * the NIC driver when the generic adapter does not * support RX scatter-gather. */ @@ -892,6 +895,7 @@ { struct netmap_ring *ring = kring->ring; struct netmap_adapter *na = kring->na; + uint64_t offset = kring->fixed_buf_offset; u_int nm_i; /* index into the netmap ring */ //j, u_int n; u_int const lim = kring->nkr_num_slots - 1; @@ -899,7 +903,7 @@ int force_update = (flags & NAF_FORCE_READ) || kring->nr_kflags & NKR_PENDINTR; /* Adapter-specific variables. */ - u_int nm_buf_len = NETMAP_BUF_SIZE(na); + u_int nm_buf_len = NETMAP_BUF_SIZE(na, offset); struct mbq tmpq; struct mbuf *m; int avail; /* in bytes */ @@ -1000,7 +1004,7 @@ } do { - nmaddr = NMB(na, &ring->slot[nm_i]); + nmaddr = NMB(kring, &ring->slot[nm_i]); /* We only check the address here on generic rx rings. */ if (nmaddr == NETMAP_BUF_BASE(na)) { /* Bad buffer */ m_freem(m); @@ -1117,11 +1121,11 @@ na->ifp = ifp; na->num_tx_desc = num_tx_desc; na->num_rx_desc = num_rx_desc; - na->rx_buf_maxsize = 32768; na->nm_register = &generic_netmap_register; na->nm_txsync = &generic_netmap_txsync; na->nm_rxsync = &generic_netmap_rxsync; na->nm_dtor = &generic_netmap_dtor; + na->nm_set_fixed_offset = &netmap_set_fixed_offset; /* when using generic, NAF_NETMAP_ON is set so we force * NAF_SKIP_INTR to use the regular interrupt handler */ Modified: soc2018/sduo/head/sys/dev/netmap/netmap_kern.h ============================================================================== --- soc2018/sduo/head/sys/dev/netmap/netmap_kern.h Thu Aug 2 00:07:30 2018 (r337275) +++ soc2018/sduo/head/sys/dev/netmap/netmap_kern.h Thu Aug 2 10:03:51 2018 (r337276) @@ -538,6 +538,8 @@ int (*mon_notify)(struct netmap_kring *kring, int flags); #endif + /* Fixed per-ring offset, set during the first regif. */ + uint64_t fixed_buf_offset; } #ifdef _WIN32 __declspec(align(64)); @@ -676,30 +678,32 @@ */ NM_OS_MAGIC magic; uint32_t na_flags; /* enabled, and other flags */ -#define NAF_SKIP_INTR 1 /* use the regular interrupt handler. +#define NAF_SKIP_INTR 1 /* use the regular interrupt handler. * useful during initialization */ -#define NAF_SW_ONLY 2 /* forward packets only to sw adapter */ -#define NAF_BDG_MAYSLEEP 4 /* the bridge is allowed to sleep when +#define NAF_SW_ONLY 2 /* forward packets only to sw adapter */ +#define NAF_BDG_MAYSLEEP 4 /* the bridge is allowed to sleep when * forwarding packets coming from this * interface */ -#define NAF_MEM_OWNER 8 /* the adapter uses its own memory area +#define NAF_MEM_OWNER 8 /* the adapter uses its own memory area * that cannot be changed */ -#define NAF_NATIVE 16 /* the adapter is native. +#define NAF_NATIVE 16 /* the adapter is native. * Virtual ports (non persistent vale ports, * pipes, monitors...) should never use * this flag. */ -#define NAF_NETMAP_ON 32 /* netmap is active (either native or +#define NAF_NETMAP_ON 32 /* netmap is active (either native or * emulated). Where possible (e.g. FreeBSD) * IFCAP_NETMAP also mirrors this flag. */ -#define NAF_HOST_RINGS 64 /* the adapter supports the host rings */ -#define NAF_FORCE_NATIVE 128 /* the adapter is always NATIVE */ +#define NAF_HOST_RINGS 64 /* the adapter supports the host rings */ +#define NAF_FORCE_NATIVE 128 /* the adapter is always NATIVE */ #define NAF_PTNETMAP_HOST 256 /* the adapter supports ptnetmap in the host */ -#define NAF_MOREFRAG 512 /* the adapter supports NS_MOREFRAG */ +#define NAF_MOREFRAG 512 /* the adapter supports NS_MOREFRAG */ +#define NAF_LEGACY_OPEN (1U<<10) +#define NAF_OFFSET_OPEN (1U<<11) #define NAF_ZOMBIE (1U<<30) /* the nic driver has been unloaded */ #define NAF_BUSY (1U<<31) /* the adapter is used internally and * cannot be registered from userspace @@ -862,6 +866,10 @@ #ifdef WITH_MONITOR unsigned long monitor_id; /* debugging */ #endif + + /* Called during a NETMAP_REQ_REGISTER to handle fixed offset */ + int (*nm_set_fixed_offset)(struct netmap_adapter *, + struct netmap_priv_d *, struct nmreq_opt_ring_offset *); }; static __inline u_int @@ -1364,16 +1372,19 @@ /* check/fix address and len in tx rings */ #if 1 /* debug version */ #define NM_CHECK_ADDR_LEN(_na, _a, _l) do { \ - if (_a == NETMAP_BUF_BASE(_na) || _l > NETMAP_BUF_SIZE(_na)) { \ + uint64_t offset = kring->fixed_buf_offset; \ + if (_a == NETMAP_BUF_BASE(_na) || \ + _l > NETMAP_BUF_SIZE(_na, offset)) { \ RD(5, "bad addr/len ring %d slot %d idx %d len %d", \ kring->ring_id, nm_i, slot->buf_idx, len); \ - if (_l > NETMAP_BUF_SIZE(_na)) \ - _l = NETMAP_BUF_SIZE(_na); \ + if (_l > NETMAP_BUF_SIZE(_na, offset)) \ + _l = NETMAP_BUF_SIZE(_na, offset); \ *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-soc-all@freebsd.org Thu Aug 2 10:11:41 2018 Return-Path: Delivered-To: svn-soc-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B85EF1061D60 for ; Thu, 2 Aug 2018 10:11:41 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 58C428161E for ; Thu, 2 Aug 2018 10:11:41 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org (socsvn.freebsd.org [IPv6:2001:1900:2254:206a::50:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id A6C7926B6D for ; Thu, 2 Aug 2018 10:11:40 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org ([127.0.1.124]) by socsvn.freebsd.org (8.15.2/8.15.2) with ESMTP id w72ABeqr034297 for ; Thu, 2 Aug 2018 10:11:40 GMT (envelope-from sduo@FreeBSD.org) Received: (from www@localhost) by socsvn.freebsd.org (8.15.2/8.15.2/Submit) id w72ABce0034216 for svn-soc-all@FreeBSD.org; Thu, 2 Aug 2018 10:11:38 GMT (envelope-from sduo@FreeBSD.org) Date: Thu, 2 Aug 2018 10:11:38 GMT Message-Id: <201808021011.w72ABce0034216@socsvn.freebsd.org> X-Authentication-Warning: socsvn.freebsd.org: www set sender to sduo@FreeBSD.org using -f From: sduo@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r337277 - in soc2018/sduo/head/sys: dev/cxgbe dev/ixl net MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-soc-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the entire Summer of Code repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 02 Aug 2018 10:11:42 -0000 Author: sduo Date: Thu Aug 2 10:11:37 2018 New Revision: 337277 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=337277 Log: Updated calls to NMB() and PNMB(). Modified: soc2018/sduo/head/sys/dev/cxgbe/t4_netmap.c soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c soc2018/sduo/head/sys/net/iflib.c Modified: soc2018/sduo/head/sys/dev/cxgbe/t4_netmap.c ============================================================================== --- soc2018/sduo/head/sys/dev/cxgbe/t4_netmap.c Thu Aug 2 10:03:51 2018 (r337276) +++ soc2018/sduo/head/sys/dev/cxgbe/t4_netmap.c Thu Aug 2 10:11:37 2018 (r337277) @@ -360,7 +360,7 @@ for (j = 0; j < nm_rxq->fl_sidx; j++) { uint64_t ba; - PNMB(na, &slot[j], &ba); + PNMB(kring, &slot[j], &ba); MPASS(ba != 0); nm_rxq->fl_desc[j] = htobe64(ba | hwidx); } @@ -598,7 +598,7 @@ for (i = 0; i < n; i++) { slot = &ring->slot[kring->nr_hwcur]; - PNMB(kring->na, slot, &ba); + PNMB(kring, slot, &ba); MPASS(ba != 0); cpl->ctrl0 = nm_txq->cpl_ctrl0; @@ -825,7 +825,7 @@ while (n > 0) { for (i = 0; i < 8; i++, fl_pidx++, slot++) { - PNMB(na, slot, &ba); + PNMB(kring, slot, &ba); MPASS(ba != 0); nm_rxq->fl_desc[fl_pidx] = htobe64(ba | hwidx); slot->flags &= ~NS_BUF_CHANGED; Modified: soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c ============================================================================== --- soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c Thu Aug 2 10:03:51 2018 (r337276) +++ soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c Thu Aug 2 10:11:37 2018 (r337277) @@ -547,8 +547,9 @@ * netmap slot index, si */ if (slot) { - int si = netmap_idx_n2k(na->tx_rings[que->me], i); - netmap_load_map(na, buf->tag, buf->map, NMB(na, slot + si)); + struct netmap_kring *kring = na->tx_rings[que->me]; + int si = netmap_idx_n2k(kring, i); + netmap_load_map(na, buf->tag, buf->map, NMB(kring, slot + si)); } #endif /* DEV_NETMAP */ /* Clear the EOP index */ @@ -1214,11 +1215,12 @@ * an mbuf, so end the block with a continue; */ if (slot) { - int sj = netmap_idx_n2k(na->rx_rings[que->me], j); + struct netmap_kring *kring = na->rx_rings[que->me]; + int sj = netmap_idx_n2k(kring, j); uint64_t paddr; void *addr; - addr = PNMB(na, slot + sj, &paddr); + addr = PNMB(kring, slot + sj, &paddr); netmap_load_map(na, rxr->dma.tag, buf->pmap, addr); /* Update descriptor and the cached value */ rxr->base[j].read.pkt_addr = htole64(paddr); Modified: soc2018/sduo/head/sys/net/iflib.c ============================================================================== --- soc2018/sduo/head/sys/net/iflib.c Thu Aug 2 10:03:51 2018 (r337276) +++ soc2018/sduo/head/sys/net/iflib.c Thu Aug 2 10:11:37 2018 (r337277) @@ -832,7 +832,7 @@ while (nm_i != head) { for (int tmp_pidx = 0; tmp_pidx < IFLIB_MAX_RX_REFRESH && nm_i != head; tmp_pidx++) { struct netmap_slot *slot = &ring->slot[nm_i]; - void *addr = PNMB(na, slot, &fl->ifl_bus_addrs[tmp_pidx]); + void *addr = PNMB(kring, slot, &fl->ifl_bus_addrs[tmp_pidx]); uint32_t nic_i_dma = refill_pidx; nic_i = netmap_idx_k2n(kring, nm_i); @@ -959,7 +959,7 @@ struct netmap_slot *slot = &ring->slot[nm_i]; u_int len = slot->len; uint64_t paddr; - void *addr = PNMB(na, slot, &paddr); + void *addr = PNMB(kring, slot, &paddr); int flags = (slot->flags & NS_REPORT || nic_i == 0 || nic_i == report_frequency) ? IPI_TX_INTR : 0; @@ -1185,8 +1185,9 @@ * netmap_idx_n2k() maps a nic index, i, into the corresponding * netmap slot index, si */ - int si = netmap_idx_n2k(na->tx_rings[txq->ift_id], i); - netmap_load_map(na, txq->ift_desc_tag, txq->ift_sds.ifsd_map[i], NMB(na, slot + si)); + struct netmap_kring *kring = na->tx_rings[txq->ift_id]; + int si = netmap_idx_n2k(kring, i); + netmap_load_map(na, txq->ift_desc_tag, txq->ift_sds.ifsd_map[i], NMB(kring, slot + si)); } } From owner-svn-soc-all@freebsd.org Thu Aug 2 10:14:25 2018 Return-Path: Delivered-To: svn-soc-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A703E1061D91 for ; Thu, 2 Aug 2018 10:14:25 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4A1418181C for ; Thu, 2 Aug 2018 10:14:25 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org (socsvn.freebsd.org [IPv6:2001:1900:2254:206a::50:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id 97F9826B9A for ; Thu, 2 Aug 2018 10:14:24 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org ([127.0.1.124]) by socsvn.freebsd.org (8.15.2/8.15.2) with ESMTP id w72AEO6u042522 for ; Thu, 2 Aug 2018 10:14:24 GMT (envelope-from sduo@FreeBSD.org) Received: (from www@localhost) by socsvn.freebsd.org (8.15.2/8.15.2/Submit) id w72AEMmN042517 for svn-soc-all@FreeBSD.org; Thu, 2 Aug 2018 10:14:22 GMT (envelope-from sduo@FreeBSD.org) Date: Thu, 2 Aug 2018 10:14:22 GMT Message-Id: <201808021014.w72AEMmN042517@socsvn.freebsd.org> X-Authentication-Warning: socsvn.freebsd.org: www set sender to sduo@FreeBSD.org using -f From: sduo@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r337278 - in soc2018/sduo/head/sys: dev/ixl net MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-soc-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the entire Summer of Code repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 02 Aug 2018 10:14:25 -0000 Author: sduo Date: Thu Aug 2 10:14:21 2018 New Revision: 337278 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=337278 Log: Updated calls to netmap_load_map(). Modified: soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c soc2018/sduo/head/sys/net/iflib.c Modified: soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c ============================================================================== --- soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c Thu Aug 2 10:11:37 2018 (r337277) +++ soc2018/sduo/head/sys/dev/ixl/ixl_txrx.c Thu Aug 2 10:14:21 2018 (r337278) @@ -549,7 +549,8 @@ if (slot) { struct netmap_kring *kring = na->tx_rings[que->me]; int si = netmap_idx_n2k(kring, i); - netmap_load_map(na, buf->tag, buf->map, NMB(kring, slot + si)); + netmap_load_map(na, buf->tag, buf->map, NMB(kring, slot + si), + NETMAP_BUF_SIZE(na, 0)); } #endif /* DEV_NETMAP */ /* Clear the EOP index */ @@ -1221,7 +1222,8 @@ void *addr; addr = PNMB(kring, slot + sj, &paddr); - netmap_load_map(na, rxr->dma.tag, buf->pmap, addr); + netmap_load_map(na, rxr->dma.tag, buf->pmap, addr, + NETMAP_BUF_SIZE(na, 0)); /* Update descriptor and the cached value */ rxr->base[j].read.pkt_addr = htole64(paddr); rxr->base[j].read.hdr_addr = 0; Modified: soc2018/sduo/head/sys/net/iflib.c ============================================================================== --- soc2018/sduo/head/sys/net/iflib.c Thu Aug 2 10:11:37 2018 (r337277) +++ soc2018/sduo/head/sys/net/iflib.c Thu Aug 2 10:14:21 2018 (r337278) @@ -843,7 +843,8 @@ fl->ifl_vm_addrs[tmp_pidx] = addr; if (__predict_false(init) && map) { - netmap_load_map(na, fl->ifl_ifdi->idi_tag, map[nic_i], addr); + netmap_load_map(na, fl->ifl_ifdi->idi_tag, map[nic_i], addr, + NETMAP_BUF_SIZE(na, 0)); } else if (map && (slot->flags & NS_BUF_CHANGED)) { /* buffer has changed, reload map */ netmap_reload_map(na, fl->ifl_ifdi->idi_tag, map[nic_i], addr); @@ -1187,7 +1188,7 @@ */ struct netmap_kring *kring = na->tx_rings[txq->ift_id]; int si = netmap_idx_n2k(kring, i); - netmap_load_map(na, txq->ift_desc_tag, txq->ift_sds.ifsd_map[i], NMB(kring, slot + si)); + netmap_load_map(na, txq->ift_desc_tag, txq->ift_sds.ifsd_map[i], NMB(kring, slot + si), NETMAP_BUF_SIZE(na, 0)); } } From owner-svn-soc-all@freebsd.org Thu Aug 2 10:26:04 2018 Return-Path: Delivered-To: svn-soc-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 00149106226C for ; Thu, 2 Aug 2018 10:26:03 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 838A181D8E for ; Thu, 2 Aug 2018 10:26:03 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org (socsvn.freebsd.org [IPv6:2001:1900:2254:206a::50:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id B137C26D19 for ; Thu, 2 Aug 2018 10:26:02 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org ([127.0.1.124]) by socsvn.freebsd.org (8.15.2/8.15.2) with ESMTP id w72AQ2hk065384 for ; Thu, 2 Aug 2018 10:26:02 GMT (envelope-from sduo@FreeBSD.org) Received: (from www@localhost) by socsvn.freebsd.org (8.15.2/8.15.2/Submit) id w72AQ1P5065382 for svn-soc-all@FreeBSD.org; Thu, 2 Aug 2018 10:26:01 GMT (envelope-from sduo@FreeBSD.org) Date: Thu, 2 Aug 2018 10:26:01 GMT Message-Id: <201808021026.w72AQ1P5065382@socsvn.freebsd.org> X-Authentication-Warning: socsvn.freebsd.org: www set sender to sduo@FreeBSD.org using -f From: sduo@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r337279 - soc2018/sduo/head/sys/dev/vale_vlan MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-soc-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the entire Summer of Code repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 02 Aug 2018 10:26:04 -0000 Author: sduo Date: Thu Aug 2 10:26:00 2018 New Revision: 337279 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=337279 Log: Updated vale_vlan files. Modified: soc2018/sduo/head/sys/dev/vale_vlan/vale_vlan.c Modified: soc2018/sduo/head/sys/dev/vale_vlan/vale_vlan.c ============================================================================== --- soc2018/sduo/head/sys/dev/vale_vlan/vale_vlan.c Thu Aug 2 10:14:21 2018 (r337278) +++ soc2018/sduo/head/sys/dev/vale_vlan/vale_vlan.c Thu Aug 2 10:26:00 2018 (r337279) @@ -12,60 +12,90 @@ tag_frame(struct nm_bdg_fwd *ft, struct netmap_vp_adapter *vpna, uint16_t vlan_id) { - struct nm_bdg_fwd *ft_end = ft + ft->ft_frags - 1; - struct nm_bdg_fwd *ft_cur = NULL; - uint8_t *buf = NULL; - uint32_t buf_size; uint16_t be_tpid; uint16_t be_tci; /* at the moment PCP and DEI are always set to 0 */ - int n_bytes = 0; + char *buf; - buf_size = NETMAP_BUF_SIZE((struct netmap_adapter *)vpna); - if (ft_end->ft_len + TAG_LENGTH > buf_size) { - nm_prinf("Not enough space for the tag in the last fragment\n"); - return EINVAL; - } - if (ft->ft_offset + TAG_END > ft->ft_len) { + if (ft->ft_virtio_offset + TAG_END > ft->ft_len) { nm_prinf("Header split between two nm_bdg_fwd," "at the moment not supported\n"); return EINVAL; } - ft_end->ft_len += TAG_LENGTH; - for (ft_cur = ft_end; ft_cur != ft - 1; --ft_cur) { - uint8_t *start_addr = NULL; - uint8_t *dest_addr = NULL; - uint16_t buf_len = ft_cur->ft_len; - buf = ft_cur->ft_buf; + if (likely(ft->ft_head_space >= TAG_LENGTH)) { + /* Best case: the netmap slot has an offset >= TAG_LENGTH, + * thus we can just move the virtio-net header + MAC addresses + * back by TAG_LENGTH bytes + */ + if (ft->ft_flags & NS_INDIRECT) { + return EINVAL; + } - if (ft_cur->ft_flags & NS_INDIRECT) { + buf = (char *)ft->ft_buf - TAG_LENGTH; + memmove(buf, ft->ft_buf, TAG_START + ft->ft_virtio_offset); + ft->ft_head_space -= TAG_LENGTH; + ft->ft_len += TAG_LENGTH; + ft->ft_buf = buf; + } else { + /* Worst case: we need to move everything forward by + * TAG_LENGTH bytes. + */ + struct nm_bdg_fwd *ft_end = ft + ft->ft_frags - 1; + uint32_t buf_size = + NETMAP_BUF_SIZE(&vpna->up, ft->ft_head_space); + struct nm_bdg_fwd *ft_cur; + + if (ft_end->ft_len + ft_end->ft_head_space + TAG_LENGTH > + buf_size) { + nm_prinf("Not enough space for the tag in the last " + "fragment\n"); return EINVAL; } - if (ft_cur != ft_end) { - /* copy 4 bytes from the end of the current buffer - * to the beginning of the next buffer + ft_end->ft_len += TAG_LENGTH; + + for (ft_cur = ft_end; ft_cur != ft - 1; --ft_cur) { + uint16_t buf_len = ft_cur->ft_len; + uint8_t *start_addr; + uint8_t *dest_addr; + int n_bytes; + + if (ft_cur->ft_flags & NS_INDIRECT) { + return EINVAL; + } + + buf = ft_cur->ft_buf; + if (ft_cur != ft_end) { + /* copy 4 bytes from the end of the current + * buffer + * to the beginning of the next buffer + */ + uint8_t *next_buf = (ft_cur + 1)->ft_buf; + + start_addr = buf + buf_len - TAG_LENGTH; + dest_addr = next_buf; + *(uint32_t *)dest_addr = + *(uint32_t *)start_addr; + } + + start_addr = buf + ft_cur->ft_virtio_offset; + dest_addr = start_addr + TAG_LENGTH; + /* we already added TAG_LENGTH to ft_end->ft_len, + * therefore the + * last fragment case is covered without any additional + * check */ - uint8_t *next_buf = (ft_cur + 1)->ft_buf; - start_addr = buf + buf_len - TAG_LENGTH; - dest_addr = next_buf; - *(uint32_t *)dest_addr = *(uint32_t *)start_addr; + n_bytes = + buf_len - TAG_LENGTH - ft_cur->ft_virtio_offset; + memmove(dest_addr, start_addr, n_bytes); } - - start_addr = buf + ft_cur->ft_offset; - dest_addr = start_addr + TAG_LENGTH; - /* we already added TAG_LENGTH to ft_end->ft_len, therefore the - * last fragment case is covered without any additional check - */ - n_bytes = buf_len - TAG_LENGTH - ft_cur->ft_offset; - memmove(dest_addr, start_addr, n_bytes); } /* now we need to write the tag */ - be_tpid = htobe16(0x8100); - be_tci = htobe16(vlan_id); - buf = ft->ft_buf; - *(uint16_t *)(buf + ft->ft_offset + TAG_PID) = be_tpid; - *(uint16_t *)(buf + ft->ft_offset + TAG_CI) = be_tci; + be_tpid = htobe16(0x8100); + be_tci = htobe16(vlan_id); + buf = (char *)ft->ft_buf + ft->ft_virtio_offset; + *(uint16_t *)(buf + TAG_PID) = be_tpid; + *(uint16_t *)(buf + TAG_CI) = be_tci; return 0; } @@ -74,28 +104,21 @@ untag_frame(struct nm_bdg_fwd *ft, struct netmap_vp_adapter *vpna, uint16_t *vlan_id) { - struct nm_bdg_fwd *ft_end = ft + ft->ft_frags - 1; - struct nm_bdg_fwd *ft_cur = NULL; - uint8_t *buf = NULL; uint16_t be_tpid; uint16_t be_tci; - int n_bytes = 0; + char *buf; - if (ft->ft_offset + TAG_END > ft->ft_len) { - /* VLAN header not contained in the first fragment */ + if (ft->ft_virtio_offset + TAG_END > ft->ft_len) { + /* VLAN header not contained in the first fragment. */ return EINVAL; } - if (ft_end->ft_len < TAG_LENGTH) { - /* During the untagging we strip TAG_LENGTH bytes from the - * frame, therefore in this case last fragment would become - * empty and we would need to update fragmentation flags etc. - * At the moment we don't handle this case. - */ + if (ft->ft_flags & NS_INDIRECT) { + /* At the moment indirect buffers are not supported. */ return EINVAL; } - /* first we retrieve the informations we need */ - buf = (uint8_t *)ft->ft_buf + ft->ft_offset; + /* Retrieve informations from IEEE 802.1Q header */ + buf = (char *)ft->ft_buf + ft->ft_virtio_offset; be_tpid = *(uint16_t *)(buf + TAG_PID); if (be_tpid != htobe16(0x8100)) { nm_prinf("Not an IEEE802.Q frame\n"); @@ -104,37 +127,12 @@ be_tci = *(uint16_t *)(buf + TAG_CI); *vlan_id = be16toh(be_tci) & 0x0FFF; - /* then we remove the tag */ - for (ft_cur = ft; ft_cur != ft_end + 1; ++ft_cur) { - uint8_t *start_addr = NULL; - uint8_t *dest_addr = NULL; - uint16_t buf_len = ft_cur->ft_len; - buf = ft_cur->ft_buf; - - if (ft_cur->ft_flags & NS_INDIRECT) { - /* we do not support indirect userspace buffers */ - return EINVAL; - } - if (ft_cur != ft) { - /* copy 4 bytes from the start of the current buffer - * to the end of the previous buffer - */ - struct nm_bdg_fwd *prev_ft = ft_cur - 1; - uint8_t *prev_buf = prev_ft->ft_buf; - uint16_t prev_buf_len = prev_ft->ft_len; - - start_addr = buf; - dest_addr = prev_buf + prev_buf_len - TAG_LENGTH; - *(uint32_t *)dest_addr = *(uint32_t *)start_addr; - } + /* Remove IEEE 802.1Q header */ + buf = (char *)ft->ft_buf + TAG_LENGTH; + memmove(buf, ft->ft_buf, ft->ft_virtio_offset + TAG_START); + ft->ft_buf = buf; + ft->ft_len -= TAG_LENGTH; - dest_addr = buf + ft->ft_offset; - start_addr = dest_addr + TAG_LENGTH; - n_bytes = buf_len - TAG_LENGTH - ft->ft_offset; - memmove(dest_addr, start_addr, n_bytes); - } - - ft_end->ft_len -= TAG_LENGTH; return 0; } @@ -156,6 +154,9 @@ { int i; + // nm_prinf("Initializing lookup data %p, NM_BDG_MAXPORTS = %d\n", + // l_data, NM_BDG_MAXPORTS); + l_data->trunk_port = NM_BDG_NOPORT; for (i = 0; i < NM_BDG_MAXPORTS; ++i) { l_data->port_to_vlan_id[i] = 0x000; @@ -191,7 +192,6 @@ get_vlan_bdg_name(char *bridge_name, size_t len, const char *conf_name, uint16_t vlan_id) { - snprintf(bridge_name, len, "valeV%d%s:", vlan_id, conf_name); } @@ -199,7 +199,6 @@ get_ap_name(char *port_name, size_t len, const char *conf_name, uint16_t vlan_id) { - snprintf(port_name, len, "%sAP%d", conf_name, vlan_id); } @@ -209,14 +208,12 @@ static inline void get_tagging_bdg_name(char *bridge_name, size_t len, const char *conf_name) { - snprintf(bridge_name, len, "valeV%sTP:", conf_name); } static void initialize_conf(struct vale_vlan_conf *conf) { - initialize_lookup_data(&(conf->l_data)); conf->conf_name[0] = '\0'; bzero(conf->vlan_bdg_auth_tokens, sizeof(conf->vlan_bdg_auth_tokens)); @@ -237,6 +234,9 @@ int ret = 0; bdg_name = netmap_bdg_name(vpna); + // nm_prinf("vlan_lookup for %s:%s\n", bdg_name, vpna->up.name); + // nm_prinf("lookup data = %p\n", lookup_data); + // nm_prinf("vpna = %p, bdg_port = %u\n", vpna, bdg_port); if (unlikely(ft->ft_flags & NS_INDIRECT)) { /* we do not handle userspace indirect buffers */ @@ -244,6 +244,7 @@ } if (bdg_port == l_data->trunk_port) { + // nm_prinf("%s is a trunk port\n", vpna->up.name); ret = untag_frame(ft, vpna, &vlan_id); if (ret) { return NM_BDG_NOPORT; @@ -251,6 +252,8 @@ dest_port = l_data->vlan_id_to_port[vlan_id]; } else { + // nm_prinf("%s is an access port\n", + // vpna->up.name); vlan_id = l_data->port_to_vlan_id[bdg_port]; ret = tag_frame(ft, vpna, vlan_id); if (ret) { @@ -271,6 +274,7 @@ nm_prinf("Trying to modify bdg %s for conf %s\n", bdg_name, conf->conf_name); + // nm_prinf("lookup data = %p\n", &conf->l_data); return netmap_bdg_regops(bdg_name, &vlan_ops, &conf->l_data, conf->mod_bdg_auth_token); } @@ -346,7 +350,7 @@ nm_prerr("Error %d during bridge %s regops()\n", ret, tagging_bdg_name); ret2 = netmap_vale_destroy(tagging_bdg_name, - conf->mod_bdg_auth_token); + conf->mod_bdg_auth_token); if (ret2) { /* cannot happen */ nm_prerr("Error %d during bridge %s destroy(), " @@ -506,7 +510,7 @@ hdr.nr_name[sizeof(hdr.nr_name) - 1] = '\0'; bzero(&newif, sizeof(newif)); - hdr.nr_body = (uintptr_t)&newif; + hdr.nr_body = (uint64_t)(uintptr_t)&newif; ret = nm_vi_create(&hdr); if (ret == 0) { @@ -593,7 +597,7 @@ bzero(&hdr, sizeof(hdr)); hdr.nr_version = NM_API_VERSION; hdr.nr_reqtype = NETMAP_REQ_VALE_ATTACH; - hdr.nr_body = (uintptr_t)&nmr_att; + hdr.nr_body = (uint64_t)(uintptr_t)&nmr_att; snprintf(hdr.nr_name, sizeof(hdr.nr_name), "%s%s", bdg_name, port_name); ret = nm_bdg_ctl_attach(&hdr, auth_token); @@ -618,7 +622,7 @@ bzero(&hdr, sizeof(hdr)); hdr.nr_version = NM_API_VERSION; hdr.nr_reqtype = NETMAP_REQ_VALE_DETACH; - hdr.nr_body = (uintptr_t)&nmr_det; + hdr.nr_body = (uint64_t)(uintptr_t)&nmr_det; snprintf(hdr.nr_name, sizeof(hdr.nr_name), "%s%s", bdg_name, port_name); ret = nm_bdg_ctl_detach(&hdr, auth_token); @@ -1198,50 +1202,39 @@ int vv_read(struct vale_vlan_dev *dev, uint8_t *buf, size_t *len) { + struct vale_vlan_conf *conf; + struct port_elem *p_elem; + size_t ret = 0; if (dev->selected_conf == -1) { return EINVAL; } - if (dev->error_entry != -1) { - /* error read() */ - if (*len != sizeof(dev->error_entry)) { - nm_prerr("After receiving an error from a write() call," - " read() must receive a int32_t pointer\n"); - return EINVAL; - } - - memcpy(buf, &dev->error_entry, sizeof(dev->error_entry)); - *len = sizeof(dev->error_entry); - dev->error_entry = -1; - } else { - /* conf read() */ - struct vale_vlan_conf *conf; - struct port_elem *p_elem; - size_t ret = 0; - - if (*len % sizeof(struct port) != 0) { - nm_prerr("read() must receive an array of " - "'struct vlan_conf_entry'\n"); - return EINVAL; - } + if (*len % sizeof(struct port) != 0) { + nm_prerr("read() must receive an array of " + "'struct vlan_conf_entry'\n"); + return EINVAL; + } - conf = &vlan_confs[dev->selected_conf]; - vv_list_foreach(p_elem, &conf->port_list, list) - { - if (*len < ret + sizeof(struct port)) { - *len = ret; - return 0; - } - memcpy(buf, &p_elem->port_desc, - sizeof(p_elem->port_desc)); - ret += sizeof(struct port); - buf += sizeof(struct port); + conf = &vlan_confs[dev->selected_conf]; + vv_list_foreach(p_elem, &conf->port_list, list) + { + if (*len < ret + sizeof(struct port)) { + /* At the moment we don't keep track of what + * we have read between multiple read() calls, + * therefore a configuration must be read in + * a single read() call. + */ + *len = ret; + return 0; } - *len = ret; + memcpy(buf, &p_elem->port_desc, sizeof(p_elem->port_desc)); + ret += sizeof(struct port); + buf += sizeof(struct port); } + *len = ret; return 0; } @@ -1297,6 +1290,7 @@ default: return EINVAL; } + return 0; } From owner-svn-soc-all@freebsd.org Thu Aug 2 10:29:45 2018 Return-Path: Delivered-To: svn-soc-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B2CF5106229E for ; Thu, 2 Aug 2018 10:29:45 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3C0E581DC8 for ; Thu, 2 Aug 2018 10:29:45 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org (socsvn.freebsd.org [IPv6:2001:1900:2254:206a::50:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id 8092126D1A for ; Thu, 2 Aug 2018 10:29:44 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org ([127.0.1.124]) by socsvn.freebsd.org (8.15.2/8.15.2) with ESMTP id w72ATiIG069051 for ; Thu, 2 Aug 2018 10:29:44 GMT (envelope-from sduo@FreeBSD.org) Received: (from www@localhost) by socsvn.freebsd.org (8.15.2/8.15.2/Submit) id w72ATh6N069044 for svn-soc-all@FreeBSD.org; Thu, 2 Aug 2018 10:29:43 GMT (envelope-from sduo@FreeBSD.org) Date: Thu, 2 Aug 2018 10:29:43 GMT Message-Id: <201808021029.w72ATh6N069044@socsvn.freebsd.org> X-Authentication-Warning: socsvn.freebsd.org: www set sender to sduo@FreeBSD.org using -f From: sduo@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r337280 - soc2018/sduo/head/sys/net MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-soc-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the entire Summer of Code repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 02 Aug 2018 10:29:45 -0000 Author: sduo Date: Thu Aug 2 10:29:42 2018 New Revision: 337280 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=337280 Log: Updated calls to netmap_reload_map(). Modified: soc2018/sduo/head/sys/net/iflib.c Modified: soc2018/sduo/head/sys/net/iflib.c ============================================================================== --- soc2018/sduo/head/sys/net/iflib.c Thu Aug 2 10:26:00 2018 (r337279) +++ soc2018/sduo/head/sys/net/iflib.c Thu Aug 2 10:29:42 2018 (r337280) @@ -847,7 +847,8 @@ NETMAP_BUF_SIZE(na, 0)); } else if (map && (slot->flags & NS_BUF_CHANGED)) { /* buffer has changed, reload map */ - netmap_reload_map(na, fl->ifl_ifdi->idi_tag, map[nic_i], addr); + netmap_reload_map(na, fl->ifl_ifdi->idi_tag, map[nic_i], addr, + NETMAP_BUF_SIZE(na, 0)); } slot->flags &= ~NS_BUF_CHANGED; @@ -987,7 +988,7 @@ if (slot->flags & NS_BUF_CHANGED) { /* buffer has changed, reload map */ - netmap_reload_map(na, txq->ift_desc_tag, txq->ift_sds.ifsd_map[nic_i], addr); + netmap_reload_map(na, txq->ift_desc_tag, txq->ift_sds.ifsd_map[nic_i], addr, NETMAP_BUF_SIZE(na, 0)); } /* make sure changes to the buffer are synced */ bus_dmamap_sync(txq->ift_ifdi->idi_tag, txq->ift_sds.ifsd_map[nic_i], From owner-svn-soc-all@freebsd.org Thu Aug 2 10:33:32 2018 Return-Path: Delivered-To: svn-soc-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2151210625F5 for ; Thu, 2 Aug 2018 10:33:32 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BBDE8821CD for ; Thu, 2 Aug 2018 10:33:31 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org (socsvn.freebsd.org [IPv6:2001:1900:2254:206a::50:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id 15EB826E73 for ; Thu, 2 Aug 2018 10:33:31 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org ([127.0.1.124]) by socsvn.freebsd.org (8.15.2/8.15.2) with ESMTP id w72AXUfH081543 for ; Thu, 2 Aug 2018 10:33:30 GMT (envelope-from sduo@FreeBSD.org) Received: (from www@localhost) by socsvn.freebsd.org (8.15.2/8.15.2/Submit) id w72AXUU6081525 for svn-soc-all@FreeBSD.org; Thu, 2 Aug 2018 10:33:30 GMT (envelope-from sduo@FreeBSD.org) Date: Thu, 2 Aug 2018 10:33:30 GMT Message-Id: <201808021033.w72AXUU6081525@socsvn.freebsd.org> X-Authentication-Warning: socsvn.freebsd.org: www set sender to sduo@FreeBSD.org using -f From: sduo@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r337281 - soc2018/sduo/head/sys/dev/cxgbe MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-soc-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the entire Summer of Code repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 02 Aug 2018 10:33:32 -0000 Author: sduo Date: Thu Aug 2 10:33:29 2018 New Revision: 337281 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=337281 Log: Updated calls to NETMAP_BUF_SIZE(). Modified: soc2018/sduo/head/sys/dev/cxgbe/t4_netmap.c Modified: soc2018/sduo/head/sys/dev/cxgbe/t4_netmap.c ============================================================================== --- soc2018/sduo/head/sys/dev/cxgbe/t4_netmap.c Thu Aug 2 10:29:42 2018 (r337280) +++ soc2018/sduo/head/sys/dev/cxgbe/t4_netmap.c Thu Aug 2 10:33:29 2018 (r337281) @@ -328,12 +328,12 @@ hwb = &sc->sge.hw_buf_info[0]; for (i = 0; i < SGE_FLBUF_SIZES; i++, hwb++) { - if (hwb->size == NETMAP_BUF_SIZE(na)) + if (hwb->size == NETMAP_BUF_SIZE(na, 0)) break; } if (i >= SGE_FLBUF_SIZES) { if_printf(ifp, "no hwidx for netmap buffer size %d.\n", - NETMAP_BUF_SIZE(na)); + NETMAP_BUF_SIZE(na, 0)); return (ENXIO); } hwidx = i; From owner-svn-soc-all@freebsd.org Thu Aug 2 11:28:53 2018 Return-Path: Delivered-To: svn-soc-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6A3621063A9C for ; Thu, 2 Aug 2018 11:28:53 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 0BDAA83A86 for ; Thu, 2 Aug 2018 11:28:53 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org (socsvn.freebsd.org [IPv6:2001:1900:2254:206a::50:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id 5349F2754F for ; Thu, 2 Aug 2018 11:28:52 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org ([127.0.1.124]) by socsvn.freebsd.org (8.15.2/8.15.2) with ESMTP id w72BSqTK008455 for ; Thu, 2 Aug 2018 11:28:52 GMT (envelope-from sduo@FreeBSD.org) Received: (from www@localhost) by socsvn.freebsd.org (8.15.2/8.15.2/Submit) id w72BSpfc008401 for svn-soc-all@FreeBSD.org; Thu, 2 Aug 2018 11:28:51 GMT (envelope-from sduo@FreeBSD.org) Date: Thu, 2 Aug 2018 11:28:51 GMT Message-Id: <201808021128.w72BSpfc008401@socsvn.freebsd.org> X-Authentication-Warning: socsvn.freebsd.org: www set sender to sduo@FreeBSD.org using -f From: sduo@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r337282 - soc2018/sduo/netmap_utils MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-soc-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the entire Summer of Code repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 02 Aug 2018 11:28:53 -0000 Author: sduo Date: Thu Aug 2 11:28:50 2018 New Revision: 337282 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=337282 Log: Updated Makefile. Modified: soc2018/sduo/netmap_utils/GNUmakefile Modified: soc2018/sduo/netmap_utils/GNUmakefile ============================================================================== --- soc2018/sduo/netmap_utils/GNUmakefile Thu Aug 2 10:33:29 2018 (r337281) +++ soc2018/sduo/netmap_utils/GNUmakefile Thu Aug 2 11:28:50 2018 (r337282) @@ -4,7 +4,7 @@ CLEANFILES = $(PROGS) *.o -SRCDIR ?= .. +SRCDIR ?= ../head VPATH = $(SRCDIR)/utils NO_MAN= From owner-svn-soc-all@freebsd.org Fri Aug 3 15:04:07 2018 Return-Path: Delivered-To: svn-soc-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2125D106C6D1 for ; Fri, 3 Aug 2018 15:04:07 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id F05EE87370 for ; Fri, 3 Aug 2018 15:04:04 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org (socsvn.freebsd.org [IPv6:2001:1900:2254:206a::50:2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id 57C5CDE4F for ; Fri, 3 Aug 2018 15:04:03 +0000 (UTC) (envelope-from sduo@FreeBSD.org) Received: from socsvn.freebsd.org ([127.0.1.124]) by socsvn.freebsd.org (8.15.2/8.15.2) with ESMTP id w73F437Z062416 for ; Fri, 3 Aug 2018 15:04:03 GMT (envelope-from sduo@FreeBSD.org) Received: (from www@localhost) by socsvn.freebsd.org (8.15.2/8.15.2/Submit) id w73F41vM062387 for svn-soc-all@FreeBSD.org; Fri, 3 Aug 2018 15:04:01 GMT (envelope-from sduo@FreeBSD.org) Date: Fri, 3 Aug 2018 15:04:01 GMT Message-Id: <201808031504.w73F41vM062387@socsvn.freebsd.org> X-Authentication-Warning: socsvn.freebsd.org: www set sender to sduo@FreeBSD.org using -f From: sduo@FreeBSD.org To: svn-soc-all@FreeBSD.org Subject: socsvn commit: r337283 - in soc2018/sduo: head/tools/tools/vale_vlan vale_vlan_utils MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-soc-all@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: SVN commit messages for the entire Summer of Code repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 03 Aug 2018 15:04:07 -0000 Author: sduo Date: Fri Aug 3 15:03:56 2018 New Revision: 337283 URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=337283 Log: Updated vale-vlan-ctl. Added: soc2018/sduo/vale_vlan_utils/ soc2018/sduo/vale_vlan_utils/Makefile soc2018/sduo/vale_vlan_utils/vale-vlan-ctl.c Deleted: soc2018/sduo/head/tools/tools/vale_vlan/ Added: soc2018/sduo/vale_vlan_utils/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ soc2018/sduo/vale_vlan_utils/Makefile Fri Aug 3 15:03:56 2018 (r337283) @@ -0,0 +1,7 @@ +CFLAGS = -Wall -g -I$(PWD)/../head/sys + +all: + $(CC) $(CFLAGS) vale-vlan-ctl.c -o vale-vlan-ctl + +clean: + rm -f *.o vale-vlan-ctl Added: soc2018/sduo/vale_vlan_utils/vale-vlan-ctl.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ soc2018/sduo/vale_vlan_utils/vale-vlan-ctl.c Fri Aug 3 15:03:56 2018 (r337283) @@ -0,0 +1,417 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#define DEVICE_NAME "/dev/vale_vlan" + +static int +vlan_ioctl(int fd, const char *conf_name, uint16_t req_type) +{ + struct vlanreq_header hdr; + + memset(&hdr, 0, sizeof(hdr)); + hdr.vr_req_type = req_type; + snprintf(hdr.vr_conf_name, sizeof(hdr.vr_conf_name), "%s", conf_name); + + return ioctl(fd, VV_IOCCTRL, &hdr); +} + +#define MAX_LIST_ENTRIES 256 + +static void +list_conf(int fd) +{ + struct port *port_entries = NULL; + int ret; + int i; + + port_entries = malloc(sizeof(struct port) * MAX_LIST_ENTRIES); + if (!port_entries) { + perror(""); + exit(EXIT_FAILURE); + } + + ret = read(fd, port_entries, sizeof(struct port) * MAX_LIST_ENTRIES); + if (ret < 0) { + perror("Error reading the configuration"); + exit(EXIT_FAILURE); + } + + for (i = 0; i < ret / (int)sizeof(struct port); ++i) { + printf("%s%s, type:", port_entries[i].bdg_name, + port_entries[i].port_name); + if (port_entries[i].port_type == TRUNK_PORT) { + printf("trunk port\n"); + } else { + printf("access port, vlan id:%d\n", + port_entries[i].vlan_id); + } + } + + free(port_entries); +} + +static int +parse_attach_argument(const char *arg, char *port_name, int len, + uint16_t *vlan_id, const char *arg_name) +{ + int ret = 0; + char *token; + char *buf; + + buf = strdup(arg); + if (buf == NULL) { + perror("strdup()"); + exit(EXIT_FAILURE); + } + + token = strtok(buf, "="); + if (token == NULL) { + fprintf(stderr, "%s %s: missing IF_NAME\n", arg_name, arg); + ret = 1; + goto free_buf; + } + snprintf(port_name, len, "%s", token); + + token = strtok(NULL, "="); + if (token == NULL) { + fprintf(stderr, "%s %s: missing VLAN_ID\n", arg_name, arg); + ret = 1; + goto free_buf; + } + + *vlan_id = atoi(token); + if (*vlan_id >= 4095) { + fprintf(stderr, "%s %s: invalid VLAN_ID\n", arg_name, arg); + ret = 1; + goto free_buf; + } + +free_buf: + free(buf); + return ret; +} + +static void +usage(const char *file_name, FILE *std_stream) +{ + fprintf(std_stream, + "Usage:\n" + "%s {-c, -s, -d} CONF_NAME ...\n" + "\t-n CONF_NAME create (and select) configuration " + "conf_name\n" + "\t-s CONF_NAME select configuration conf_name\n" + "\t-r CONF_NAME delete configuration conf_name\n" + + "\t[-t IF_NAME] attach interface as trunk port\n" + "\t[-T] detach trunk port\n" + "\t[-p IF_NAME] create persistent VALE port " + "and attach it as trunk port\n" + "\t[-P] detach trunk port and destroy it (must " + "have been created through -p)\n" + "\t[-a IF_NAME=VLAN_ID] attach interface as an access " + "port with " + "id VLAN_ID\n" + "\t[-A IF_NAME] detach vlan port interface\n" + "\t[-c IF_NAME=VLAN_ID] create a VALE port and attach " + "it as an access port with id VLAN_ID\n" + "\t[-C IF_NAME] detach access port and destroy " + "it (must " + "have been created through -c)\n" + "\t[-l] list attached interfaces " + "(always executed " + " last)\n", + file_name); +} + +#define MAX_ACTIONS 128 + +struct cli_arguments { + char conf_name[VV_CONF_NAME_LENGTH]; + uint16_t req_type; + + struct vlan_conf_entry actions[MAX_ACTIONS]; + unsigned int action_num; + + unsigned int read_conf; +}; + +/* Debugging. +static void +print_parsed_arguments(struct cli_arguments *args) +{ + int i; + + if (args->conf_name) { + printf("conf name: %s\n", args->conf_name); + } + + printf("\n"); + for (i = 0; i < args->action_num; ++i) { + struct vlan_conf_entry *entry = &args->actions[i]; + + printf("port name: %s\n", entry->port_name); + printf("port type: %s\n", entry->port_type == TRUNK_PORT ? + "TRUNK_PORT" : "ACCESS_PORT"); + printf("action: "); + if (entry->action == ATTACH_PORT) + printf("ATTACH_PORT\n"); + else if (entry->action == DETACH_PORT) + printf("DETACH_PORT\n"); + else if (entry->action == CREATE_AND_ATTACH_PORT) + printf("CREATE_AND_ATTACH_PORT\n"); + else + printf("DETACH_AND_DESTROY_PORT\n"); + printf("vlan id: %" PRIu16 "\n", entry->vlan_id); + printf("\n"); + } +} +*/ + +int +main(int argc, char **argv) +{ + struct vlan_conf_entry *entry; + struct cli_arguments args; + ssize_t size; + int ret; + char c; + int fd; + + if (argc == 1) { + usage(argv[0], stderr); + exit(EXIT_FAILURE); + } + + fd = open(DEVICE_NAME, O_RDWR); + if (fd < 0) { + perror(DEVICE_NAME); + exit(EXIT_FAILURE); + } + + memset(&args, 0, sizeof(args)); + while ((c = getopt(argc, argv, "n:s:r:t:Tp:Pc:C:a:A:hl")) != -1) { + switch (c) { + case 'n': /* create new configuration */ + if (args.req_type != 0) { + fprintf(stderr, + "One configuration at a time\n"); + usage(argv[0], stderr); + exit(EXIT_FAILURE); + } + + snprintf(args.conf_name, sizeof(args.conf_name), "%s", + optarg); + args.req_type = VV_REQ_CREATE_CONF; + break; + + case 'r': /* destroy existing configuration */ + if (args.req_type != 0) { + fprintf(stderr, + "One configuration at a time\n"); + usage(argv[0], stderr); + exit(EXIT_FAILURE); + } + + snprintf(args.conf_name, sizeof(args.conf_name), "%s", + optarg); + args.req_type = VV_REQ_DELETE_CONF; + break; + + case 's': /* select existing configuration */ + if (args.req_type != 0) { + fprintf(stderr, + "One configuration at a time\n"); + usage(argv[0], stderr); + exit(EXIT_FAILURE); + } + + snprintf(args.conf_name, sizeof(args.conf_name), "%s", + optarg); + args.req_type = VV_REQ_SELECT_CONF; + break; + + case 't': /* attach trunk port */ + if (args.action_num >= MAX_ACTIONS) { + fprintf(stderr, + "Max actions number %d reached\n", + MAX_ACTIONS); + exit(EXIT_FAILURE); + } + + entry = &args.actions[args.action_num++]; + snprintf(entry->port_name, sizeof(entry->port_name), + "%s", optarg); + entry->port_type = TRUNK_PORT; + entry->action = ATTACH_PORT; + break; + + case 'T': /* detach trunk port */ + if (args.action_num >= MAX_ACTIONS) { + fprintf(stderr, + "Max actions number %d reached\n", + MAX_ACTIONS); + exit(EXIT_FAILURE); + } + + entry = &args.actions[args.action_num++]; + entry->port_type = TRUNK_PORT; + entry->action = DETACH_PORT; + break; + + case 'p': /* create and attach trunk port */ + if (args.action_num >= MAX_ACTIONS) { + fprintf(stderr, + "Max actions number %d reached\n", + MAX_ACTIONS); + exit(EXIT_FAILURE); + } + + entry = &args.actions[args.action_num++]; + snprintf(entry->port_name, sizeof(entry->port_name), + "%s", optarg); + entry->action = CREATE_AND_ATTACH_PORT; + entry->port_type = TRUNK_PORT; + break; + + case 'P': /* detach and destroy trunk port */ + if (args.action_num >= MAX_ACTIONS) { + fprintf(stderr, + "Max actions number %d reached\n", + MAX_ACTIONS); + exit(EXIT_FAILURE); + } + + entry = &args.actions[args.action_num++]; + entry->port_type = TRUNK_PORT; + entry->action = DETACH_AND_DESTROY_PORT; + break; + + case 'a': /* attach vlan port */ + if (args.action_num >= MAX_ACTIONS) { + fprintf(stderr, + "Max actions number %d reached\n", + MAX_ACTIONS); + exit(EXIT_FAILURE); + } + + entry = &args.actions[args.action_num++]; + if (parse_attach_argument(optarg, entry->port_name, + sizeof(entry->port_name), &entry->vlan_id, "-a")) { + usage(argv[0], stderr); + exit(EXIT_FAILURE); + } + + entry->port_type = ACCESS_PORT; + entry->action = ATTACH_PORT; + break; + + case 'A': /* detach vlan port */ + if (args.action_num >= MAX_ACTIONS) { + fprintf(stderr, + "Max actions number %d reached\n", + MAX_ACTIONS); + exit(EXIT_FAILURE); + } + + entry = &args.actions[args.action_num++]; + snprintf(entry->port_name, sizeof(entry->port_name), + "%s", optarg); + entry->port_type = ACCESS_PORT; + entry->action = DETACH_PORT; + break; + + case 'c': /* create and attach vlan port */ + if (args.action_num >= MAX_ACTIONS) { + fprintf(stderr, + "Max actions number %d reached\n", + MAX_ACTIONS); + exit(EXIT_FAILURE); + } + + entry = &args.actions[args.action_num++]; + if (parse_attach_argument(optarg, entry->port_name, + sizeof(entry->port_name), &entry->vlan_id, "-c")) { + usage(argv[0], stderr); + exit(EXIT_FAILURE); + } + + entry->action = CREATE_AND_ATTACH_PORT; + entry->port_type = ACCESS_PORT; + break; + + case 'C': /* detach and destroy vlan port */ + if (args.action_num >= MAX_ACTIONS) { + fprintf(stderr, + "Max actions number %d reached\n", + MAX_ACTIONS); + exit(EXIT_FAILURE); + } + + entry = &args.actions[args.action_num++]; + snprintf(entry->port_name, sizeof(entry->port_name), + "%s", optarg); + entry->port_type = ACCESS_PORT; + entry->action = DETACH_AND_DESTROY_PORT; + break; + + case 'l': /* list existing configuration */ + args.read_conf = 1; + break; + + case 'h': /* help */ + usage(argv[0], stdout); + exit(0); + + default: /* error, unknown option or missing parameter */ + usage(argv[0], stdout); + exit(EXIT_FAILURE); + } + } + + //print_parsed_arguments(&args); + + if (args.req_type == 0) { + fprintf(stderr, + "You must select/create/delete a configuration\n"); + exit(EXIT_FAILURE); + } + + if (args.req_type == VV_REQ_DELETE_CONF && args.action_num != 0) { + fprintf(stderr, "You can't specify actions after deleting a " + "configuration\n"); + exit(EXIT_FAILURE); + } + + ret = vlan_ioctl(fd, args.conf_name, args.req_type); + if (ret != 0) { + perror(args.conf_name); + exit(EXIT_FAILURE); + } + + size = args.action_num * sizeof(args.actions[0]); + ret = write(fd, args.actions, size); + if (ret != size) { + perror("Error executing actions"); + exit(EXIT_FAILURE); + } + + if (args.read_conf != 0) { + list_conf(fd); + } + + return 0; +}