From owner-svn-src-all@freebsd.org Sun Mar 5 00:16:51 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 39FFBCF9E90 for ; Sun, 5 Mar 2017 00:16:51 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-it0-x22e.google.com (mail-it0-x22e.google.com [IPv6:2607:f8b0:4001:c0b::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 001A215AE for ; Sun, 5 Mar 2017 00:16:50 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-it0-x22e.google.com with SMTP id 203so31987076ith.0 for ; Sat, 04 Mar 2017 16:16:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=ZMYt84Xd/X+M1A9keEW1VKxszrdgRAYN+oEdcestnjw=; b=kZL9TPtvn6/1eVI03dyMXQmpLeyPS5QAHkD7smXJJJwhyXMbSd1hflBTsxvKCxx6tJ 9Zn4uzBOLKvr/6VDdgcympskGh1ZieiBfytv0BNnWHLtRbHSJ6ElfGgnxw1BNJ86tl15 maDSyU8+6j3byuDfIydmumN9eLz5V48sxqY3iOoOfrOMG0J2MjENdeXFCxAdlBq6UWKV WbaUSB9vETujjmakFKniUkWIvYxJvH9fGvbIem982Xrtk72nkHM4NEjzCgrlNWyDbKcL Z9vrHVnMT2kU9J3j9fggGpWWK3s8iC1vp2kEUIMCUA7yhNmgKk3VDxKk80khxw+nK5CM t7dA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=ZMYt84Xd/X+M1A9keEW1VKxszrdgRAYN+oEdcestnjw=; b=Rd8eGbRGjy1/pjIx1ZSMGJVb7h2LhQjgrkMCx/3ITzXeIi+BuJ6bQXUqppq0XpGnPq 6+mVHzpuCbfW8B0zp5lJcUwYSV3E1aNH73hr0RqN6tqOzfQmTmryGiIsDXCqTPcB7g24 0EyAZlhf38jC+gSM7etmtnW/n5GHZbD1Fheh+yrH2BylmQqMwDUXTzSfHFgf1NU1zIDA bTkZRQy53wOqgOOrZGGJ1hrq4tOHYhLYHXYUypwxYMbobRCKWeG3WC/1B5w7SzXZG9EK 1EH+87SMcc/6Sz7W7vAwPMOPHeQI69hdHEmRnscC0NoDXn6kM1V/wydHTLoP8DWi1mxA xXCw== X-Gm-Message-State: AMke39kVYqHKydnVElOvJ3pcSwmyF8qHpwqhagzGfJxFfhlFSRFNVz7UJo/Q53Fq0wfLYh2QJ83L1e7lcH3nqA== X-Received: by 10.36.147.71 with SMTP id y68mr8868469itd.85.1488673010329; Sat, 04 Mar 2017 16:16:50 -0800 (PST) MIME-Version: 1.0 Sender: wlosh@bsdimp.com Received: by 10.79.134.129 with HTTP; Sat, 4 Mar 2017 16:16:49 -0800 (PST) X-Originating-IP: [69.53.245.200] In-Reply-To: <201703042232.v24MW9jt079229@pdx.rh.CN85.dnsmgr.net> References: <201703042232.v24MW9jt079229@pdx.rh.CN85.dnsmgr.net> From: Warner Losh Date: Sat, 4 Mar 2017 17:16:49 -0700 X-Google-Sender-Auth: N-rbKWn82lX7-Cp7z3WVj3pDtc0 Message-ID: Subject: Re: svn commit: r314657 - in head/kerberos5: . lib/libgssapi_krb5 lib/libgssapi_ntlm lib/libgssapi_spnego lib/libhdb lib/libkafs5 lib/libkrb5 libexec/hprop libexec/kpasswdd tools/asn1_compile tools/slc To: rgrimes@freebsd.org Cc: Ngie Cooper , Bryan Drewery , Ngie Cooper , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 00:16:51 -0000 On Sat, Mar 4, 2017 at 3:32 PM, Rodney W. Grimes wrote: >> >> > On Mar 4, 2017, at 13:43, Warner Losh wrote: >> > >> >> On Sat, Mar 4, 2017 at 1:25 PM, Bryan Drewery wrote: >> >>> On 3/4/2017 12:20 PM, Rodney W. Grimes wrote: >> >>> -- Start of PGP signed section. >> >>> [ Charset windows-1252 unsupported, converting... ] >> >>>>> On 3/4/2017 7:34 AM, Rodney W. Grimes wrote: >> >>>>> What is ${.CURDIR:H:H} ????? Yes that seems to work but now we are obscuring >> >>>>> ../.. into makefile syntax magic, probably not a grand idea. >> >>>> It just trims off the last directory component. This both reduces >> >>>> namecache lookups, lessens the amount of data in a log, and makes >> >>>> debugging a log simpler by not having a crazy path like: >> >>>> /home/bdrewery/big/git/buildserver/sys/modules/usb/template/../../../dev/usb/template/usb_template.c >> >>>> >> >>>> It's far simpler to understand and work with: >> >>>> /home/bdrewery/big/git/buildserver/sys/dev/usb/template/usb_template.c >> >>>> >> >>>> The only downside is it is slightly more obscure in a Makefile, but once >> >>>> you know what :H is then it's not a problem. This is why SRCTOP is even >> >>>> better than this as it is far more clear than even :H and avoids the >> >>>> ../../ problems. >> >>> Lets do one or the other, but not both ${SRCTOP} and :H:H:H. It appears >> >>> that we now have a mix and mashed up some one way others the other. >> >> >> >> That I can agree with. I would prefer to standardize on SRCTOP as :H is >> >> too obscure without learning about make details. >> > >> > :H is insane in 90% of the cases I've seen it used. Let's roll with >> > SRCTOP everywhere we can. That's safer from directory motion anyway... >> >> Ok, I have 3 votes for SRCTOP, so I'll implement the remaining change using SRCTOP (for usr.bin), and reimplement the previous changes using SRCTOP. > > And that some how over rides the 3 votes for not doing any of these changes? > Slow down please. We dont need a bike shed, but I think we need a clear > target and a consense larger than 3+ 3- and less than a 6 hour wall clock > of discussion. > > It would also be best if it was this change and only this change committed > in very large (preferably about 20) commits. We've had about 200-300 commits in the build system in the past year. There's no real need to slow down. It's a real mess (though a lot less of one thanks to Bryan) and SRCTOP is a definite cleanup. Warner From owner-svn-src-all@freebsd.org Sun Mar 5 00:34:13 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6D72CCEC405; Sun, 5 Mar 2017 00:34:13 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2C86E1FC2; Sun, 5 Mar 2017 00:34:13 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v250YCC3057226; Sun, 5 Mar 2017 00:34:12 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v250YCTK057225; Sun, 5 Mar 2017 00:34:12 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201703050034.v250YCTK057225@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Sun, 5 Mar 2017 00:34:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314688 - stable/11/sys/kern X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 00:34:13 -0000 Author: kib Date: Sun Mar 5 00:34:12 2017 New Revision: 314688 URL: https://svnweb.freebsd.org/changeset/base/314688 Log: MFC r314562: Style. Modified: stable/11/sys/kern/imgact_elf.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/kern/imgact_elf.c ============================================================================== --- stable/11/sys/kern/imgact_elf.c Sat Mar 4 23:07:54 2017 (r314687) +++ stable/11/sys/kern/imgact_elf.c Sun Mar 5 00:34:12 2017 (r314688) @@ -413,9 +413,8 @@ __elfN(map_partial)(vm_map_t map, vm_obj error = copyout((caddr_t)sf_buf_kva(sf) + off, (caddr_t)start, end - start); vm_imgact_unmap_page(sf); - if (error) { + if (error != 0) return (KERN_FAILURE); - } } return (KERN_SUCCESS); From owner-svn-src-all@freebsd.org Sun Mar 5 00:35:30 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4B322CEC4BF; Sun, 5 Mar 2017 00:35:30 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail109.syd.optusnet.com.au (mail109.syd.optusnet.com.au [211.29.132.80]) by mx1.freebsd.org (Postfix) with ESMTP id EBAED11F7; Sun, 5 Mar 2017 00:35:29 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from besplex.bde.org (c122-106-153-191.carlnfd1.nsw.optusnet.com.au [122.106.153.191]) by mail109.syd.optusnet.com.au (Postfix) with ESMTPS id 7D6F8D64ED0; Sun, 5 Mar 2017 11:35:27 +1100 (AEDT) Date: Sun, 5 Mar 2017 11:35:26 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Konstantin Belousov cc: John Baldwin , Pedro Giffuni , Slawa Olhovchenkov , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314669 - head/sys/i386/conf In-Reply-To: <20170304231822.GA30979@kib.kiev.ua> Message-ID: <20170305111842.K1472@besplex.bde.org> References: <201703041504.v24F4HMh023937@repo.freebsd.org> <20170304211611.GW2092@kib.kiev.ua> <1951800.W2d2k3eamI@ralph.baldwin.cx> <20170304231822.GA30979@kib.kiev.ua> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=VbSHBBh9 c=1 sm=1 tr=0 a=Tj3pCpwHnMupdyZSltBt7Q==:117 a=Tj3pCpwHnMupdyZSltBt7Q==:17 a=kj9zAlcOel0A:10 a=NQkPwhnM_KHT0HcVA2YA:9 a=cB3OLWhqKwzjs8TJ:21 a=NSmHd3I7PG6UZQw2:21 a=CjuIK1q_8ugA:10 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 00:35:30 -0000 On Sun, 5 Mar 2017, Konstantin Belousov wrote: > On Sat, Mar 04, 2017 at 02:54:56PM -0800, John Baldwin wrote: >> On Saturday, March 04, 2017 11:16:11 PM Konstantin Belousov wrote: >>> On Sat, Mar 04, 2017 at 03:49:52PM -0500, Pedro Giffuni wrote: >>>> The number came out from an old posting involving buildworld times, which I can???t find now :(. >>>> Things seem to have changed a lot: it was surely using GCC back then, I don???t believe clang does much distinction about 486 at all. >>>> >>>> BTW, does it make sense to keep i586 in the configuration still? Both i486 and i586 were once removed but later re-instated in r205336. >>>> >>> What did make significant impact on 32bit shared libraries some time ago >>> was to compile them with -mtune=i686. Default PIC prologue effectively >>> neutered return stack predictor, adding uneccessary overhead to already >>> expensive PIC code. I think that this is even measureable, i.e. it might >>> give >= 5% of difference. I now use -mtune=athlon-xp (and no other -m CFLAGS) to get the same effect with minor additional optimizations/pessimizations for athlon-xp. I forget if I switched to this before or after getting jhb to not use -mtune=pentiumpro. Maybe we didn't know at the time that the pentiumpro optimizations affected little more than this PIC problem. >>> I did not rechecked modern compilers WRT the generated PIC code, but I doubt >>> that the thing changed recently. >>> >>> Several notes: -mtune is not -march, i.e. the code would be still targeted >>> for 486 instruction set, but scheduling is optimized for more modern CPUs. >>> Also, recent gcc puts specific meaning into -mtune=i686, interpreting it >>> as request for scheduling for generic modern CPUs. We already compile >>> 32bit compat libs on amd64 with -march=i686. >>> >>> Working on this stuff would be much more useful than tweaking kernel config >>> for CPU detection. >> >> Hmm, I originally wanted to use -mtune=i686 (spelled as -mcpu=pentiumpro) on >> i386 builds for this reason, but I removed it at bde@'s request in r125252. >> I would be happy to go back to adding -mtune for i386 when CPUTYPE isn't >> specified. > > I just rechecked. > gcc, at least 4.9 and 6.3, generate 'right' prologue, i.e. > call __x86.get_pc_thunk.cx (ecx or whatever register > which is used to address GOT) > __x86.get_pc_thunk.cx: > movl (%esp), %ecx > ret > even when compiling for -march=i486. > > OTOH, clang 3.9.1 uses > calll .L0 > .L0: popl %eax > to get the base even for native nehalem and newer CPUs. > > So indeed there is no reason to bother. gcc become too good to require any > tuning, and clang generates unoptimal code even when hinted. I did not > checked 4.0. The old method might actually be best for the original i386. It is 1 byte larger per call, but 1 instruction shorter by dynamic count. Original i386 has poor instruction fetch bandwidth and no caches and to help or harm. Even the (%esp) address mode can cost a cycle on original i386, and setting up a frame pointer to access the stack would be much worse, while on modern x86 the frame pointer might cost nothing since it can be done in parallel. Maybe some newer CPUs have better return address predictors so the old method is best for them too. It is only clear that generic optimizations should use the new method, since CPU manufacturers won't pessimize it since it looks like a normal function call. Bruce From owner-svn-src-all@freebsd.org Sun Mar 5 00:36:28 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 09FC5CEC544; Sun, 5 Mar 2017 00:36:28 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id BE40A1358; Sun, 5 Mar 2017 00:36:27 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: by freefall.freebsd.org (Postfix, from userid 1235) id 1C87E4752; Sun, 5 Mar 2017 00:36:27 +0000 (UTC) Date: Sun, 5 Mar 2017 01:36:26 +0100 From: Baptiste Daroussin To: Warner Losh Cc: rgrimes@freebsd.org, Ngie Cooper , Bryan Drewery , Ngie Cooper , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Subject: Re: svn commit: r314657 - in head/kerberos5: . lib/libgssapi_krb5 lib/libgssapi_ntlm lib/libgssapi_spnego lib/libhdb lib/libkafs5 lib/libkrb5 libexec/hprop libexec/kpasswdd tools/asn1_compile tools/slc Message-ID: <20170305003626.dvdp4msi36pyqxbn@ivaldir.net> References: <201703042232.v24MW9jt079229@pdx.rh.CN85.dnsmgr.net> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="mfviljg5nubnmw4n" Content-Disposition: inline In-Reply-To: User-Agent: NeoMutt/20170225 (1.8.0) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 00:36:28 -0000 --mfviljg5nubnmw4n Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Mar 04, 2017 at 05:16:49PM -0700, Warner Losh wrote: > On Sat, Mar 4, 2017 at 3:32 PM, Rodney W. Grimes > wrote: > >> > >> > On Mar 4, 2017, at 13:43, Warner Losh wrote: > >> > > >> >> On Sat, Mar 4, 2017 at 1:25 PM, Bryan Drewery wrote: > >> >>> On 3/4/2017 12:20 PM, Rodney W. Grimes wrote: > >> >>> -- Start of PGP signed section. > >> >>> [ Charset windows-1252 unsupported, converting... ] > >> >>>>> On 3/4/2017 7:34 AM, Rodney W. Grimes wrote: > >> >>>>> What is ${.CURDIR:H:H} ????? Yes that seems to work but now we = are obscuring > >> >>>>> ../.. into makefile syntax magic, probably not a grand idea. > >> >>>> It just trims off the last directory component. This both reduces > >> >>>> namecache lookups, lessens the amount of data in a log, and makes > >> >>>> debugging a log simpler by not having a crazy path like: > >> >>>> /home/bdrewery/big/git/buildserver/sys/modules/usb/template/../..= /../dev/usb/template/usb_template.c > >> >>>> > >> >>>> It's far simpler to understand and work with: > >> >>>> /home/bdrewery/big/git/buildserver/sys/dev/usb/template/usb_templ= ate.c > >> >>>> > >> >>>> The only downside is it is slightly more obscure in a Makefile, b= ut once > >> >>>> you know what :H is then it's not a problem. This is why SRCTOP = is even > >> >>>> better than this as it is far more clear than even :H and avoids = the > >> >>>> ../../ problems. > >> >>> Lets do one or the other, but not both ${SRCTOP} and :H:H:H. It a= ppears > >> >>> that we now have a mix and mashed up some one way others the other. > >> >> > >> >> That I can agree with. I would prefer to standardize on SRCTOP as := H is > >> >> too obscure without learning about make details. > >> > > >> > :H is insane in 90% of the cases I've seen it used. Let's roll with > >> > SRCTOP everywhere we can. That's safer from directory motion anyway.= =2E. > >> > >> Ok, I have 3 votes for SRCTOP, so I'll implement the remaining change = using SRCTOP (for usr.bin), and reimplement the previous changes using SRCT= OP. > > > > And that some how over rides the 3 votes for not doing any of these cha= nges? > > Slow down please. We dont need a bike shed, but I think we need a clear > > target and a consense larger than 3+ 3- and less than a 6 hour wall clo= ck > > of discussion. > > > > It would also be best if it was this change and only this change commit= ted > > in very large (preferably about 20) commits. >=20 > We've had about 200-300 commits in the build system in the past year. > There's no real need to slow down. It's a real mess (though a lot less > of one thanks to Bryan) and SRCTOP is a definite cleanup. >=20 I totally agree with Warner on all points :) Bapt --mfviljg5nubnmw4n Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEgOTj3suS2urGXVU3Y4mL3PG3PloFAli7XYcACgkQY4mL3PG3 Ploulw/+KuNFRCf56PLnuiUPRPfxOM8smmIoUbGESdW6B4kuwqRHhyL8H7O/zg54 xk4zWvfkRN/g8gXmTsDqU41ohDroCIQc6E9Kc5h9OEVherUFsLgtZKD56kemKvLU tHkRU9wdALm0I7NtS1ETBvu3z0h9kRYIEHrYxa/l9qodhBJlhdlG2GUiQD+mwdlJ zW8FdmuiE+h+cv5rMvNyNIfdzcOV6TJATQbQATn2X619tq+JjSWELtaYbpBlW1ny U/WgJFPpv1KCaHpxPOn144KtkSTnPg9r7W6q+QvHNo+YmlFjC9haBtkn3IV64MKv U+uwC710zMhMPfbK/ZfurAa7TYBlQF+rqrbPDI4UmNaptkrEa+DYO4LiCNyb6WOl H9yf85z3ovlrKymS/Ne/ZFMEo+fn8Z7AsDwbzqH6xioLjhn6rbeviBNGRXgW4iwX +sRkG5rpZcDbt7CBN/iV2nE0Kr2qZ85HfxCvVPzT7cYgt6e8CGobyAFFtvj6HGmG V/b7NSty2gyW7O+XQHTKz/gAGF1ZsHDnpNBL1A/AY8dhPRgs8ihH/aYgBclLL3NH SJjbeuO5sHwA/0rnkD0xGoH7FIdRB0I/bYM1HpAcrdJzbktyrOGytII9uhBE34t1 jSizhy0v5OWStXM16f5K0JGmqBzgeseNvZhWXOiPMlKfc3PvCyI= =/+nM -----END PGP SIGNATURE----- --mfviljg5nubnmw4n-- From owner-svn-src-all@freebsd.org Sun Mar 5 00:37:12 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 40049CEC5E2; Sun, 5 Mar 2017 00:37:12 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-wr0-x22b.google.com (mail-wr0-x22b.google.com [IPv6:2a00:1450:400c:c0c::22b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id ED9261511; Sun, 5 Mar 2017 00:37:11 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: by mail-wr0-x22b.google.com with SMTP id u48so95092092wrc.0; Sat, 04 Mar 2017 16:37:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=IZN0hnERqnoQURy9R8vu8MjzqGBx5685HGKeezNMSjM=; b=ksCGqPdco5fP5yJkBl16FwWH+m05srYFoVSHzRerZKwzUI1hnZEtcbe9tKcBqjZQjB 6WBAnauGTs12R+tEgh0WuAMS65TbuwB8uDXfoJLr9IP/k3DaK3JwgPuYA4VNuFflaj+2 Nxkdp3HEm33uzIOx7kp6lei7cddXzEMIBO3vFW+hMSzHuVrzxLYvVhov1ea9B0+sqUpO +lF3DA4Xx++1xtSOb6b3EdGTpeVSS9DQaBB3Hk2esWO6jfbt7ExTS2P+LhZGxexXFc9h SEm5WnYNL+uikKkTYV+uhAmvwN42i5SyxUuhxfp/yGUvAk+6/1FJXtXQIlQmZji97PPo hagw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=IZN0hnERqnoQURy9R8vu8MjzqGBx5685HGKeezNMSjM=; b=CqClfcTlcFBuKjodBI1dYZA3W1Qp9I8KwL/QFMRSqFZjGY20hiujqUAsDvd8Y7lUMU pkJMgIB7KTmlSXyz2hQF3iCsr8VVvzDVexNYW3p+MPBR+aPUIpx/pEEXp9tHHuDmilJZ h3tCetCDhtkpu5/FTP2F4L5yyvkw4nCCQolLS+NEIF9LAqgOg2k/A/GVCcZe9OYLTG78 yrSJBmL+c4mzqiRegxQU2XW195JgGVtN+GhAxE6OvshQ6Ovy4oKy2IwGmGS/aIIe8XUa /Gu4v41QE2U3PCGED5j5pF9Pkzm1RmQB8usTUyrKmDCe3SkGz0fg0sDfsvmlXpopDJhn 0SPQ== X-Gm-Message-State: AMke39mmC0aF528Ww3tUoE+rkayXrsk5RgxX9TUS3mBCbnYErNjNlE5j9aVgHdvqFQ+xAcI8cHCEHXOQ5suXzg== X-Received: by 10.223.183.6 with SMTP id l6mr8211065wre.60.1488674229884; Sat, 04 Mar 2017 16:37:09 -0800 (PST) MIME-Version: 1.0 Received: by 10.28.128.133 with HTTP; Sat, 4 Mar 2017 16:37:09 -0800 (PST) In-Reply-To: <201703042307.v24N7sSx021021@repo.freebsd.org> References: <201703042307.v24N7sSx021021@repo.freebsd.org> From: Adrian Chadd Date: Sat, 4 Mar 2017 16:37:09 -0800 Message-ID: Subject: Re: svn commit: r314687 - head/sys/dev/iwn To: Andriy Voskoboinyk Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 00:37:12 -0000 hihi! So the eventualy-ish attention is that if someone wanted to finish p2p/tdls support they could use this function for either context. But it don't think the feature was ever finished, because we don't have p2p/tdls support yet. Well, yet. It's coming. :) -adrian On 4 March 2017 at 15:07, Andriy Voskoboinyk wrote: > Author: avos > Date: Sat Mar 4 23:07:54 2017 > New Revision: 314687 > URL: https://svnweb.freebsd.org/changeset/base/314687 > > Log: > iwn: drop 'channel' parameter from iwn*_set_txpower() > > For 4965 just extract 'is_chan_5ghz' flag from the RXON structure > (like it was done in r281287); for others it was never used. > > Tested with Intel 6205, STA mode. > > Modified: > head/sys/dev/iwn/if_iwn.c > head/sys/dev/iwn/if_iwnvar.h > > Modified: head/sys/dev/iwn/if_iwn.c > ============================================================================== > --- head/sys/dev/iwn/if_iwn.c Sat Mar 4 22:58:34 2017 (r314686) > +++ head/sys/dev/iwn/if_iwn.c Sat Mar 4 23:07:54 2017 (r314687) > @@ -254,10 +254,8 @@ static void iwn_set_led(struct iwn_softc > static int iwn_set_critical_temp(struct iwn_softc *); > static int iwn_set_timing(struct iwn_softc *, struct ieee80211_node *); > static void iwn4965_power_calibration(struct iwn_softc *, int); > -static int iwn4965_set_txpower(struct iwn_softc *, > - struct ieee80211_channel *, int); > -static int iwn5000_set_txpower(struct iwn_softc *, > - struct ieee80211_channel *, int); > +static int iwn4965_set_txpower(struct iwn_softc *, int); > +static int iwn5000_set_txpower(struct iwn_softc *, int); > static int iwn4965_get_rssi(struct iwn_softc *, struct iwn_rx_stat *); > static int iwn5000_get_rssi(struct iwn_softc *, struct iwn_rx_stat *); > static int iwn_get_noise(const struct iwn_rx_general_stats *); > @@ -5510,7 +5508,6 @@ iwn_set_timing(struct iwn_softc *sc, str > static void > iwn4965_power_calibration(struct iwn_softc *sc, int temp) > { > - struct ieee80211com *ic = &sc->sc_ic; > > DPRINTF(sc, IWN_DEBUG_TRACE, "->Doing %s\n", __func__); > > @@ -5520,7 +5517,7 @@ iwn4965_power_calibration(struct iwn_sof > if (abs(temp - sc->temp) >= 3) { > /* Record temperature of last calibration. */ > sc->temp = temp; > - (void)iwn4965_set_txpower(sc, ic->ic_bsschan, 1); > + (void)iwn4965_set_txpower(sc, 1); > } > } > > @@ -5530,8 +5527,7 @@ iwn4965_power_calibration(struct iwn_sof > * the current temperature and the current voltage. > */ > static int > -iwn4965_set_txpower(struct iwn_softc *sc, struct ieee80211_channel *ch, > - int async) > +iwn4965_set_txpower(struct iwn_softc *sc, int async) > { > /* Fixed-point arithmetic division using a n-bit fractional part. */ > #define fdivround(a, b, n) \ > @@ -5546,20 +5542,21 @@ iwn4965_set_txpower(struct iwn_softc *sc > struct iwn4965_eeprom_chan_samples *chans; > const uint8_t *rf_gain, *dsp_gain; > int32_t vdiff, tdiff; > - int i, c, grp, maxpwr; > + int i, is_chan_5ghz, c, grp, maxpwr; > uint8_t chan; > > sc->rxon = &sc->rx_on[IWN_RXON_BSS_CTX]; > /* Retrieve current channel from last RXON. */ > chan = sc->rxon->chan; > + is_chan_5ghz = (sc->rxon->flags & htole32(IWN_RXON_24GHZ)) == 0; > DPRINTF(sc, IWN_DEBUG_RESET, "setting TX power for channel %d\n", > chan); > > memset(&cmd, 0, sizeof cmd); > - cmd.band = IEEE80211_IS_CHAN_5GHZ(ch) ? 0 : 1; > + cmd.band = is_chan_5ghz ? 0 : 1; > cmd.chan = chan; > > - if (IEEE80211_IS_CHAN_5GHZ(ch)) { > + if (is_chan_5ghz) { > maxpwr = sc->maxpwr5GHz; > rf_gain = iwn4965_rf_gain_5ghz; > dsp_gain = iwn4965_dsp_gain_5ghz; > @@ -5681,8 +5678,7 @@ iwn4965_set_txpower(struct iwn_softc *sc > } > > static int > -iwn5000_set_txpower(struct iwn_softc *sc, struct ieee80211_channel *ch, > - int async) > +iwn5000_set_txpower(struct iwn_softc *sc, int async) > { > struct iwn5000_cmd_txpower cmd; > int cmdid; > @@ -6693,7 +6689,7 @@ iwn_config(struct iwn_softc *sc) > } > > /* Configuration has changed, set TX power accordingly. */ > - if ((error = ops->set_txpower(sc, ic->ic_curchan, 0)) != 0) { > + if ((error = ops->set_txpower(sc, 0)) != 0) { > device_printf(sc->sc_dev, "%s: could not set TX power\n", > __func__); > return error; > @@ -7096,7 +7092,7 @@ iwn_auth(struct iwn_softc *sc, struct ie > } > > /* Configuration has changed, set TX power accordingly. */ > - if ((error = ops->set_txpower(sc, ni->ni_chan, 1)) != 0) { > + if ((error = ops->set_txpower(sc, 1)) != 0) { > device_printf(sc->sc_dev, > "%s: could not set TX power, error %d\n", __func__, error); > return error; > @@ -7180,7 +7176,7 @@ iwn_run(struct iwn_softc *sc, struct iee > } > > /* Configuration has changed, set TX power accordingly. */ > - if ((error = ops->set_txpower(sc, ni->ni_chan, 1)) != 0) { > + if ((error = ops->set_txpower(sc, 1)) != 0) { > device_printf(sc->sc_dev, > "%s: could not set TX power, error %d\n", __func__, error); > return error; > > Modified: head/sys/dev/iwn/if_iwnvar.h > ============================================================================== > --- head/sys/dev/iwn/if_iwnvar.h Sat Mar 4 22:58:34 2017 (r314686) > +++ head/sys/dev/iwn/if_iwnvar.h Sat Mar 4 23:07:54 2017 (r314687) > @@ -206,8 +206,7 @@ struct iwn_ops { > uint16_t); > int (*get_temperature)(struct iwn_softc *); > int (*get_rssi)(struct iwn_softc *, struct iwn_rx_stat *); > - int (*set_txpower)(struct iwn_softc *, > - struct ieee80211_channel *, int); > + int (*set_txpower)(struct iwn_softc *, int); > int (*init_gains)(struct iwn_softc *); > int (*set_gains)(struct iwn_softc *); > int (*add_node)(struct iwn_softc *, struct iwn_node_info *, > From owner-svn-src-all@freebsd.org Sun Mar 5 00:37:24 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B5C07CEC62F; Sun, 5 Mar 2017 00:37:24 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7DB9F15F1; Sun, 5 Mar 2017 00:37:24 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v250bNON057499; Sun, 5 Mar 2017 00:37:23 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v250bNH5057498; Sun, 5 Mar 2017 00:37:23 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201703050037.v250bNH5057498@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Sun, 5 Mar 2017 00:37:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314689 - stable/10/sys/kern X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 00:37:24 -0000 Author: kib Date: Sun Mar 5 00:37:23 2017 New Revision: 314689 URL: https://svnweb.freebsd.org/changeset/base/314689 Log: MFC r314562: Style. Modified: stable/10/sys/kern/imgact_elf.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/kern/imgact_elf.c ============================================================================== --- stable/10/sys/kern/imgact_elf.c Sun Mar 5 00:34:12 2017 (r314688) +++ stable/10/sys/kern/imgact_elf.c Sun Mar 5 00:37:23 2017 (r314689) @@ -399,9 +399,8 @@ __elfN(map_partial)(vm_map_t map, vm_obj error = copyout((caddr_t)sf_buf_kva(sf) + off, (caddr_t)start, end - start); vm_imgact_unmap_page(sf); - if (error) { + if (error != 0) return (KERN_FAILURE); - } } return (KERN_SUCCESS); From owner-svn-src-all@freebsd.org Sun Mar 5 01:11:23 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9D228CED2DA for ; Sun, 5 Mar 2017 01:11:23 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from nm7-vm0.bullet.mail.ne1.yahoo.com (nm7-vm0.bullet.mail.ne1.yahoo.com [98.138.91.66]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6BC031A10 for ; Sun, 5 Mar 2017 01:11:23 +0000 (UTC) (envelope-from pfg@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1488676276; bh=wTftmwh+mcCjfko6CtrMZh3vvrUzdxz/w7gZxVagS+Q=; h=Subject:To:References:Cc:From:Date:In-Reply-To:From:Subject; b=YSkZo5x3xFceJGAzWy/Q0h7iThKFzbXrz2w7C2p5Zxt+GzqqhdPARPttjZAYzdOoK4M4F/Ay2MTrYaL0bv7Ab3MU/buDgIeutZ+PR7iycMsGFQoZSj5EAd5MVw2L9biwaasEZiN+Ni7VFK6tsGc5YBloLdeJCYIIOMjH0BMGwX/cISprYeOMknbs9zVaKsVasfpkX1IJld1J5WiijNDBlxV6O3zEtGY0cXrYICuWUNhu2v+4UUe8I8dbK5Jzp5UWdk++i6IhaJYQ4MsU5Z/sZeG53vZOXN+qTTIVRwk96oNFMrp/nzrvfwg0lWzH10O7vurRbdP4uXp1N9kwmCfnjw== Received: from [98.138.100.112] by nm7.bullet.mail.ne1.yahoo.com with NNFMP; 05 Mar 2017 01:11:16 -0000 Received: from [98.138.226.58] by tm103.bullet.mail.ne1.yahoo.com with NNFMP; 05 Mar 2017 01:11:16 -0000 Received: from [127.0.0.1] by smtp209.mail.ne1.yahoo.com with NNFMP; 05 Mar 2017 01:11:16 -0000 X-Yahoo-Newman-Id: 423128.36055.bm@smtp209.mail.ne1.yahoo.com X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: a.PFEqoVM1lXCHmtCT6KEGTRkQkLpKXma13hz3BlacseJ5o m.2fJPomCFAaXfmL1e3.0JX2ReBiDZ9az4di4kJaNSfICbifUiFGkyUF4bBS 7Mj2Rf.Swf1S7XgwDr6gvbKscPzi5ALDd58s32NsuOEkoS_VNk40SGjT3Cuh SMaEtm8UnHeYidS6OmvPJQYaVi4g19e3Y4SToM9_4hkzcnWdYWebWwiKr3om 2rrJlcq6ozQP1Pl.iMT4ZlMtveUAs1tVzHjxOgZibR.K8NFlUIo6fjyJCqc6 wRQh65rcCQ8FKSqhCZh8BNjJhIv6aV5hR1GIs7FwfH78sv6hFwfpdNf.CwhI l7y45Yxgatpf9qnCaRKT4T3X8UebHnq576s6ZR3ZpjVTeXPk6QC5wMHdUYwF E03GhZbGjaRi.Xr2m382JkCZw48qWTz5OYa53Vkzo3qyRazXjrBM7pBVrGkH UcYW6AC08yWtbdR.atb_Cl44caffMNk11DCrfWe1SrlVKEl08DWkUUcP.uPX R8k5F6tSZ8IoyAkIj9Y3mpdtrB9k9pvjtqWsRFvzILS6OlYs- X-Yahoo-SMTP: xcjD0guswBAZaPPIbxpWwLcp9Unf Subject: Re: svn commit: r314669 - head/sys/i386/conf To: John Baldwin References: <201703041504.v24F4HMh023937@repo.freebsd.org> <2368011.hGEX4V32U5@ralph.baldwin.cx> <7873439.f6BlOXHt6g@ralph.baldwin.cx> Cc: Slawa Olhovchenkov , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Pedro Giffuni Message-ID: Date: Sat, 4 Mar 2017 20:14:11 -0500 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <7873439.f6BlOXHt6g@ralph.baldwin.cx> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 01:11:23 -0000 On 3/4/2017 5:51 PM, John Baldwin wrote: > On Saturday, March 04, 2017 03:49:52 PM Pedro Giffuni wrote: >>> Il giorno 04 mar 2017, alle ore 14:43, John Baldwin ha scritto: >>> >>> On Saturday, March 04, 2017 10:52:46 AM Pedro Giffuni wrote: >>>> On 03/04/17 10:32, Slawa Olhovchenkov wrote: >>>>> On Sat, Mar 04, 2017 at 03:04:17PM +0000, Pedro F. Giffuni wrote: >>>>> >>>>>> Author: pfg >>>>>> Date: Sat Mar 4 15:04:17 2017 >>>>>> New Revision: 314669 >>>>>> URL: https://svnweb.freebsd.org/changeset/base/314669 >>>>>> >>>>>> Log: >>>>>> Drop i486 from the default i386 GENERIC kernel configuration. >>>>>> >>>>>> 80486 production was stopped by Intel on September 2007. Dropping the 486 >>>>>> configuration option from the GENERIC kernel improves performance >>>>>> slightly. >>>>>> >>>>>> Removing I486_CPU is consistent at this time: we don't support any >>>>>> processor without a FPU and the PC-98 arch, which frequently involved i486 >>>>>> CPUs, is also gone so we don't test such platforms anymore. >>>>> What is realy mean? >>>> This means we don't do work-arounds that would be required for raw 486. >>>> Instead we will use the 586 instructions by default. >>> This doesn't change that. The kernel already has runtime tests in place >>> for new things on 486 and later via cpuid. >>> >> Hmm ..then I am wondering if I effectively changed anything? > The only change is a 486 now panics on boot when it used to work fine. :-/ > > Nothing for other CPUs has changed. Not much has been lost then. FWIW, I have a "Pentium overdrive" somewhere in the basement which could theoretically boot FreeBSD 12 but last I remember just rebuilding a kernel was painful and the memory and HD limitations really make it a no-go. > >> The number came out from an old posting involving buildworld times, which I can’t find now :(. >> Things seem to have changed a lot: it was surely using GCC back then, I don’t believe clang does much distinction about 486 at all. >> >> BTW, does it make sense to keep i586 in the configuration still? Both i486 and i586 were once removed but later re-instated in r205336. > If anything I'd probably say we should do what bde@ suggested and just > remove CPU class entirely (and act as if 486, 586, and 686 are always > defined). > In any case ... I won't MFC the change and if someone asks me to revert it I will (I'd love to see a dmesg first ;) ). Pedro. From owner-svn-src-all@freebsd.org Sun Mar 5 02:34:13 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1AEFFCF7A5A; Sun, 5 Mar 2017 02:34:13 +0000 (UTC) (envelope-from andriyvos@gmail.com) Received: from mail-lf0-f68.google.com (mail-lf0-f68.google.com [209.85.215.68]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A1E771ED2; Sun, 5 Mar 2017 02:34:12 +0000 (UTC) (envelope-from andriyvos@gmail.com) Received: by mail-lf0-f68.google.com with SMTP id g70so9545208lfh.3; Sat, 04 Mar 2017 18:34:12 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:cc:subject:references:date:mime-version :content-transfer-encoding:from:message-id:in-reply-to:user-agent; bh=OyVHTf6Rb5nCJvtDt+cJXgjtDVkmQFrNSRojxWCeuMk=; b=L6hHE/7SFSJvfQyt/B0bZoqO+8wEkP1Oqu2vf4k3Yo2sTEBzznemZc+mwDiIcAviE0 aRoK+RW+Bjr4GDUYUW3yMk9kzII3axOBTFgLoDwjvuvWe3kTJdMMwDiCsR+1syj9yXTx s81pb6/nUzqzX2+NeBWGL4rTaosmkDOQkJM55OUVhvCgrEvPwgZNHIeePK5NXtE3ZA3A R9rwqvwiY3ulNnoXTsjYR+4M/HNfuYda0p61uTc79qXvga/4VWAZEgCTluqA5l+M8NGn 6U+7EvqQe5I6PxeTmA5x0g155eOiymYaEJP8zjt1ayEDAMD976Smis6BIf/KvsUmb9P+ 2SzA== X-Gm-Message-State: AMke39mBjEfDEm95vWHDXSxn7lream66SnajdIk8TB3ZfQX5ZhmYONWUfBYQIItRcbKWFg== X-Received: by 10.25.25.80 with SMTP id 77mr2785554lfz.64.1488679525786; Sat, 04 Mar 2017 18:05:25 -0800 (PST) Received: from thinkpad-x220 (host-176-37-109-22.la.net.ua. [176.37.109.22]) by smtp.gmail.com with ESMTPSA id 1sm3215804ljo.43.2017.03.04.18.05.24 (version=TLS1 cipher=AES128-SHA bits=128/128); Sat, 04 Mar 2017 18:05:25 -0800 (PST) Content-Type: text/plain; charset=utf-8; format=flowed; delsp=yes To: "Adrian Chadd" Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Subject: Re: svn commit: r314687 - head/sys/dev/iwn References: <201703042307.v24N7sSx021021@repo.freebsd.org> Date: Sun, 05 Mar 2017 04:05:20 +0200 MIME-Version: 1.0 Content-Transfer-Encoding: Quoted-Printable From: "Andriy Voskoboinyk" Message-ID: In-Reply-To: User-Agent: Opera Mail/12.16 (FreeBSD) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 02:34:13 -0000 Sun, 05 Mar 2017 02:37:09 +0200 =D0=B1=D1=83=D0=BB=D0=BE =D0=BD=D0=B0=D0= =BF=D0=B8=D1=81=D0=B0=D0=BD=D0=BE Adrian Chadd = : Hi! Actually, the intention is simpler - redo all the work for wpi(4) here to bring in everything what it can - ad-hoc, hostap, aes-ccm etc > hihi! > > So the eventualy-ish attention is that if someone wanted to finish > p2p/tdls support they could use this function for either context. But > it don't think the feature was ever finished, because we don't have > p2p/tdls support yet. > > Well, yet. It's coming. :) > > > > -adrian > > > On 4 March 2017 at 15:07, Andriy Voskoboinyk wrote:= >> Author: avos >> Date: Sat Mar 4 23:07:54 2017 >> New Revision: 314687 >> URL: https://svnweb.freebsd.org/changeset/base/314687 >> >> Log: >> iwn: drop 'channel' parameter from iwn*_set_txpower() >> >> For 4965 just extract 'is_chan_5ghz' flag from the RXON structure >> (like it was done in r281287); for others it was never used. >> >> Tested with Intel 6205, STA mode. >> >> Modified: >> head/sys/dev/iwn/if_iwn.c >> head/sys/dev/iwn/if_iwnvar.h >> >> Modified: head/sys/dev/iwn/if_iwn.c >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D >> --- head/sys/dev/iwn/if_iwn.c Sat Mar 4 22:58:34 2017 = >> (r314686) >> +++ head/sys/dev/iwn/if_iwn.c Sat Mar 4 23:07:54 2017 = >> (r314687) >> @@ -254,10 +254,8 @@ static void iwn_set_led(struct iwn_softc >> static int iwn_set_critical_temp(struct iwn_softc *); >> static int iwn_set_timing(struct iwn_softc *, struct = >> ieee80211_node *); >> static void iwn4965_power_calibration(struct iwn_softc *, int); >> -static int iwn4965_set_txpower(struct iwn_softc *, >> - struct ieee80211_channel *, int); >> -static int iwn5000_set_txpower(struct iwn_softc *, >> - struct ieee80211_channel *, int); >> +static int iwn4965_set_txpower(struct iwn_softc *, int); >> +static int iwn5000_set_txpower(struct iwn_softc *, int); >> static int iwn4965_get_rssi(struct iwn_softc *, struct iwn_rx_st= at = >> *); >> static int iwn5000_get_rssi(struct iwn_softc *, struct iwn_rx_st= at = >> *); >> static int iwn_get_noise(const struct iwn_rx_general_stats *); >> @@ -5510,7 +5508,6 @@ iwn_set_timing(struct iwn_softc *sc, str >> static void >> iwn4965_power_calibration(struct iwn_softc *sc, int temp) >> { >> - struct ieee80211com *ic =3D &sc->sc_ic; >> >> DPRINTF(sc, IWN_DEBUG_TRACE, "->Doing %s\n", __func__); >> >> @@ -5520,7 +5517,7 @@ iwn4965_power_calibration(struct iwn_sof >> if (abs(temp - sc->temp) >=3D 3) { >> /* Record temperature of last calibration. */ >> sc->temp =3D temp; >> - (void)iwn4965_set_txpower(sc, ic->ic_bsschan, 1); >> + (void)iwn4965_set_txpower(sc, 1); >> } >> } >> >> @@ -5530,8 +5527,7 @@ iwn4965_power_calibration(struct iwn_sof >> * the current temperature and the current voltage. >> */ >> static int >> -iwn4965_set_txpower(struct iwn_softc *sc, struct ieee80211_channel *= ch, >> - int async) >> +iwn4965_set_txpower(struct iwn_softc *sc, int async) >> { >> /* Fixed-point arithmetic division using a n-bit fractional part. */= >> #define fdivround(a, b, n) \ >> @@ -5546,20 +5542,21 @@ iwn4965_set_txpower(struct iwn_softc *sc >> struct iwn4965_eeprom_chan_samples *chans; >> const uint8_t *rf_gain, *dsp_gain; >> int32_t vdiff, tdiff; >> - int i, c, grp, maxpwr; >> + int i, is_chan_5ghz, c, grp, maxpwr; >> uint8_t chan; >> >> sc->rxon =3D &sc->rx_on[IWN_RXON_BSS_CTX]; >> /* Retrieve current channel from last RXON. */ >> chan =3D sc->rxon->chan; >> + is_chan_5ghz =3D (sc->rxon->flags & htole32(IWN_RXON_24GHZ)) = =3D=3D 0; >> DPRINTF(sc, IWN_DEBUG_RESET, "setting TX power for channel = >> %d\n", >> chan); >> >> memset(&cmd, 0, sizeof cmd); >> - cmd.band =3D IEEE80211_IS_CHAN_5GHZ(ch) ? 0 : 1; >> + cmd.band =3D is_chan_5ghz ? 0 : 1; >> cmd.chan =3D chan; >> >> - if (IEEE80211_IS_CHAN_5GHZ(ch)) { >> + if (is_chan_5ghz) { >> maxpwr =3D sc->maxpwr5GHz; >> rf_gain =3D iwn4965_rf_gain_5ghz; >> dsp_gain =3D iwn4965_dsp_gain_5ghz; >> @@ -5681,8 +5678,7 @@ iwn4965_set_txpower(struct iwn_softc *sc >> } >> >> static int >> -iwn5000_set_txpower(struct iwn_softc *sc, struct ieee80211_channel *= ch, >> - int async) >> +iwn5000_set_txpower(struct iwn_softc *sc, int async) >> { >> struct iwn5000_cmd_txpower cmd; >> int cmdid; >> @@ -6693,7 +6689,7 @@ iwn_config(struct iwn_softc *sc) >> } >> >> /* Configuration has changed, set TX power accordingly. */ >> - if ((error =3D ops->set_txpower(sc, ic->ic_curchan, 0)) !=3D = 0) { >> + if ((error =3D ops->set_txpower(sc, 0)) !=3D 0) { >> device_printf(sc->sc_dev, "%s: could not set TX = >> power\n", >> __func__); >> return error; >> @@ -7096,7 +7092,7 @@ iwn_auth(struct iwn_softc *sc, struct ie >> } >> >> /* Configuration has changed, set TX power accordingly. */ >> - if ((error =3D ops->set_txpower(sc, ni->ni_chan, 1)) !=3D 0) = { >> + if ((error =3D ops->set_txpower(sc, 1)) !=3D 0) { >> device_printf(sc->sc_dev, >> "%s: could not set TX power, error %d\n", __func_= _, = >> error); >> return error; >> @@ -7180,7 +7176,7 @@ iwn_run(struct iwn_softc *sc, struct iee >> } >> >> /* Configuration has changed, set TX power accordingly. */ >> - if ((error =3D ops->set_txpower(sc, ni->ni_chan, 1)) !=3D 0) = { >> + if ((error =3D ops->set_txpower(sc, 1)) !=3D 0) { >> device_printf(sc->sc_dev, >> "%s: could not set TX power, error %d\n", __func_= _, = >> error); >> return error; >> >> Modified: head/sys/dev/iwn/if_iwnvar.h >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D >> --- head/sys/dev/iwn/if_iwnvar.h Sat Mar 4 22:58:34 2017 = = >> (r314686) >> +++ head/sys/dev/iwn/if_iwnvar.h Sat Mar 4 23:07:54 2017 = = >> (r314687) >> @@ -206,8 +206,7 @@ struct iwn_ops { >> uint16_t); >> int (*get_temperature)(struct iwn_softc *); >> int (*get_rssi)(struct iwn_softc *, struct = >> iwn_rx_stat *); >> - int (*set_txpower)(struct iwn_softc *, >> - struct ieee80211_channel *, int); >> + int (*set_txpower)(struct iwn_softc *, int); >> int (*init_gains)(struct iwn_softc *); >> int (*set_gains)(struct iwn_softc *); >> int (*add_node)(struct iwn_softc *, struct = >> iwn_node_info *, From owner-svn-src-all@freebsd.org Sun Mar 5 03:05:26 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 661DECED70B; Sun, 5 Mar 2017 03:05:26 +0000 (UTC) (envelope-from badger@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3DDB71F36; Sun, 5 Mar 2017 03:05:26 +0000 (UTC) (envelope-from badger@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v2535PUw020992; Sun, 5 Mar 2017 03:05:25 GMT (envelope-from badger@FreeBSD.org) Received: (from badger@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v2535OYk020986; Sun, 5 Mar 2017 03:05:24 GMT (envelope-from badger@FreeBSD.org) Message-Id: <201703050305.v2535OYk020986@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: badger set sender to badger@FreeBSD.org using -f From: Eric Badger Date: Sun, 5 Mar 2017 03:05:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314690 - in head: share/man/man5 sys/conf sys/fs/procfs sys/modules/procfs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 03:05:26 -0000 Author: badger Date: Sun Mar 5 03:05:24 2017 New Revision: 314690 URL: https://svnweb.freebsd.org/changeset/base/314690 Log: remove procfs ctl interface This interface has no in-tree consumers and has been more or less non-functional for several releases. Remove manpage note that the procfs special file 'mem' is grouped to kmem. This hasn't been true since r81107. Remove procfs' README file. It is an out of date duplication of the manpage (quoth the README: "since the bsd kernel is single-processor..."). Reviewed by: vangyzen, bcr (manpage) Approved by: des (procfs maintainer), vangyzen (mentor) Differential Revision: https://reviews.freebsd.org/D9802 Deleted: head/sys/fs/procfs/README head/sys/fs/procfs/procfs_ctl.c Modified: head/share/man/man5/procfs.5 head/sys/conf/files head/sys/fs/procfs/procfs.c head/sys/fs/procfs/procfs.h head/sys/modules/procfs/Makefile Modified: head/share/man/man5/procfs.5 ============================================================================== --- head/share/man/man5/procfs.5 Sun Mar 5 00:37:23 2017 (r314689) +++ head/share/man/man5/procfs.5 Sun Mar 5 03:05:24 2017 (r314690) @@ -2,7 +2,7 @@ .\" Written by Garrett Wollman .\" This file is in the public domain. .\" -.Dd December 26, 2015 +.Dd March 4, 2017 .Dt PROCFS 5 .Os .Sh NAME @@ -33,48 +33,7 @@ special node called which always refers to the process making the lookup request. .Pp Each node is a directory which contains the following entries: -.Pp -Each directory contains several files: .Bl -tag -width status -.It Pa ctl -a write-only file which supports a variety -of control operations. -Control commands are written as strings to the -.Pa ctl -file. -The control commands are: -.Bl -tag -width detach -compact -.It attach -stops the target process and arranges for the sending -process to become the debug control process. -.It detach -continue execution of the target process and -remove it from control by the debug process (which -need not be the sending process). -.It run -continue running the target process until -a signal is delivered, a breakpoint is hit, or the -target process exits. -.It step -single step the target process, with no signal delivery. -.It wait -wait for the target process to come to a steady -state ready for debugging. -The target process must be in this state before -any of the other commands are allowed. -.El -.Pp -The string can also be the name of a signal, lower case -and without the -.Dv SIG -prefix, -in which case that signal is delivered to the process -(see -.Xr sigaction 2 ) . -.Pp -The -.Xr procctl 8 -utility can be used to clear tracepoints in a stuck process. .It Pa dbregs The debug registers as defined by .Dv "struct dbregs" @@ -188,30 +147,8 @@ to indicate that the process is not runn .El .El .Pp -In a normal debugging environment, -where the target is fork/exec'd by the debugger, -the debugger should fork and the child should stop -itself (with a self-inflicted -.Dv SIGSTOP -for example). -The parent should issue a -.Dv wait -and then an -.Dv attach -command via the appropriate -.Pa ctl -file. -The child process will receive a -.Dv SIGTRAP -immediately after the call to exec (see -.Xr execve 2 ) . -.Pp Each node is owned by the process's user, and belongs to that user's -primary group, except for the -.Pa mem -node, which belongs to the -.Li kmem -group. +primary group. .Sh FILES .Bl -tag -width /proc/curproc/XXXXXXX -compact .It Pa /proc @@ -224,8 +161,6 @@ directory containing process information directory containing process information for the current process .It Pa /proc/curproc/cmdline the process executable name -.It Pa /proc/curproc/ctl -used to send control messages to the process .It Pa /proc/curproc/etype executable type .It Pa /proc/curproc/file Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Sun Mar 5 00:37:23 2017 (r314689) +++ head/sys/conf/files Sun Mar 5 03:05:24 2017 (r314690) @@ -3384,7 +3384,6 @@ fs/nullfs/null_subr.c optional nullfs fs/nullfs/null_vfsops.c optional nullfs fs/nullfs/null_vnops.c optional nullfs fs/procfs/procfs.c optional procfs -fs/procfs/procfs_ctl.c optional procfs fs/procfs/procfs_dbregs.c optional procfs fs/procfs/procfs_fpregs.c optional procfs fs/procfs/procfs_ioctl.c optional procfs Modified: head/sys/fs/procfs/procfs.c ============================================================================== --- head/sys/fs/procfs/procfs.c Sun Mar 5 00:37:23 2017 (r314689) +++ head/sys/fs/procfs/procfs.c Sun Mar 5 03:05:24 2017 (r314690) @@ -104,8 +104,7 @@ procfs_attr(PFS_ATTR_ARGS) { /* XXX inefficient, split into separate functions */ - if (strcmp(pn->pn_name, "ctl") == 0 || - strcmp(pn->pn_name, "note") == 0 || + if (strcmp(pn->pn_name, "note") == 0 || strcmp(pn->pn_name, "notepg") == 0) vap->va_mode = 0200; else if (strcmp(pn->pn_name, "mem") == 0 || @@ -166,8 +165,6 @@ procfs_init(PFS_INIT_ARGS) procfs_attr, NULL, NULL, PFS_PROCDEP); pfs_create_file(dir, "cmdline", procfs_doproccmdline, NULL, NULL, NULL, PFS_RD); - pfs_create_file(dir, "ctl", procfs_doprocctl, - procfs_attr, NULL, NULL, PFS_WR); pfs_create_file(dir, "dbregs", procfs_doprocdbregs, procfs_attr, procfs_candebug, NULL, PFS_RDWR|PFS_RAW); pfs_create_file(dir, "etype", procfs_doproctype, Modified: head/sys/fs/procfs/procfs.h ============================================================================== --- head/sys/fs/procfs/procfs.h Sun Mar 5 00:37:23 2017 (r314689) +++ head/sys/fs/procfs/procfs.h Sun Mar 5 03:05:24 2017 (r314690) @@ -41,7 +41,6 @@ int procfs_docurproc(PFS_FILL_ARGS); int procfs_doosrel(PFS_FILL_ARGS); int procfs_doproccmdline(PFS_FILL_ARGS); -int procfs_doprocctl(PFS_FILL_ARGS); int procfs_doprocdbregs(PFS_FILL_ARGS); int procfs_doprocfile(PFS_FILL_ARGS); int procfs_doprocfpregs(PFS_FILL_ARGS); Modified: head/sys/modules/procfs/Makefile ============================================================================== --- head/sys/modules/procfs/Makefile Sun Mar 5 00:37:23 2017 (r314689) +++ head/sys/modules/procfs/Makefile Sun Mar 5 03:05:24 2017 (r314690) @@ -6,7 +6,6 @@ KMOD= procfs SRCS= SRCS+= opt_compat.h SRCS+= vnode_if.h -SRCS+= procfs_ctl.c SRCS+= procfs_dbregs.c SRCS+= procfs_fpregs.c SRCS+= procfs_ioctl.c From owner-svn-src-all@freebsd.org Sun Mar 5 03:16:13 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4BB0CCEDA28; Sun, 5 Mar 2017 03:16:13 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail105.syd.optusnet.com.au (mail105.syd.optusnet.com.au [211.29.132.249]) by mx1.freebsd.org (Postfix) with ESMTP id EB71F17D2; Sun, 5 Mar 2017 03:16:12 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from besplex.bde.org (c122-106-153-191.carlnfd1.nsw.optusnet.com.au [122.106.153.191]) by mail105.syd.optusnet.com.au (Postfix) with ESMTPS id D75DB1045F0F; Sun, 5 Mar 2017 13:50:26 +1100 (AEDT) Date: Sun, 5 Mar 2017 13:50:26 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Conrad Meyer cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314685 - head/bin/ps In-Reply-To: <201703042238.v24McAD8008837@repo.freebsd.org> Message-ID: <20170305115437.R1556@besplex.bde.org> References: <201703042238.v24McAD8008837@repo.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=VbSHBBh9 c=1 sm=1 tr=0 a=Tj3pCpwHnMupdyZSltBt7Q==:117 a=Tj3pCpwHnMupdyZSltBt7Q==:17 a=kj9zAlcOel0A:10 a=6I5d2MoRAAAA:8 a=t-IPkPogAAAA:8 a=pGLkceISAAAA:8 a=JNNbXLwdEY8w7fO0ZvQA:9 a=PP53H4lZ8oNyuVHU:21 a=xCfBdVL8ZxdAqr7M:21 a=CjuIK1q_8ugA:10 a=OSekkM7Z7ioA:10 a=IjZwj45LgO3ly-622nXo:22 a=TwOW_m0CY6OjrxjWeTv9:22 a=6kGIvZw6iX1k4Y-7sg4_:22 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 03:16:13 -0000 On Sat, 4 Mar 2017, Conrad Meyer wrote: > Author: cem > Date: Sat Mar 4 22:38:10 2017 > New Revision: 314685 > URL: https://svnweb.freebsd.org/changeset/base/314685 > > Log: > ps(1): Only detect terminal width if stdout is a tty > > If stdout isn't a tty, use unlimited width output rather than truncating to > 79 characters. This is helpful for shell scripts or e.g., 'ps | grep foo'. This breaks many interactive uses, e.g., 'ps l | less', to work around a user error. If the user wants an unlimited width, then they should have asked for it using -ww (-w only increases the width to 131 if it was smaller). Shell scripts should be especially careful to use the right options... > This hardcoded width has some history: In The Beginning of History[0], the > width of ps was hardcoded as 80 bytes. In 1985, Bloom@ added detection > using TIOCGWINSZ on stdin.[1] In 1986, Kirk merged a change to check > stdout's window size instead. In 1990, the fallback checks to stderr and > stdin's TIOCGWINSZ were added by Marc@, with the commit message "new > version."[2] > > OS X Darwin has a very similar modification to ps(1), which simply sets > UNLIMITED for all non-tty outputs.[3] I've chosen to respect COLUMNS > instead of behaving identically to Darwin here, but I don't feel strongly > about that. We could match OS X for parity if that is desired. Ignoring COLUMNS would break it completely. COLUMNS is the only way to control the width. Interactive use normally wants the width of the current terminal, but shell scripts might want to create a file to be read on a different terminal, or just back on the same terminal where the script cannout know about the current terminal because it is purely non-interactive (see comments below about checking all 3 std fd's consistently). > [0]: https://svnweb.freebsd.org/csrg/bin/ps/ps.c?annotate=1065 > [1]: https://svnweb.freebsd.org/csrg/bin/ps/ps.c?r1=18105&r2=18106 > [2]: > https://svnweb.freebsd.org/csrg/bin/ps/ps.c?r1=40675&r2=40674&pathrev=40675 > [3]: > https://opensource.apple.com/source/adv_cmds/adv_cmds-168/ps/ps.c.auto.html > > PR: 217159 > Reported by: Deepak Nagaraj > > Modified: > head/bin/ps/ps.c > > Modified: head/bin/ps/ps.c > ============================================================================== > --- head/bin/ps/ps.c Sat Mar 4 22:23:59 2017 (r314684) > +++ head/bin/ps/ps.c Sat Mar 4 22:38:10 2017 (r314685) > @@ -194,6 +194,8 @@ main(int argc, char *argv[]) > > if ((cols = getenv("COLUMNS")) != NULL && *cols != '\0') > termwidth = atoi(cols); > + else if (!isatty(STDOUT_FILENO)) > + termwidth = UNLIMITED; > else if ((ioctl(STDOUT_FILENO, TIOCGWINSZ, (char *)&ws) == -1 && > ioctl(STDERR_FILENO, TIOCGWINSZ, (char *)&ws) == -1 && > ioctl(STDIN_FILENO, TIOCGWINSZ, (char *)&ws) == -1) || For use in shell scripts, the user should know too much about COLUMNS. COLUMNS is set automatically by some shells, but not exported, so it is not normally set here. But shell scripts should worry about the effects of environment variables. Hard-coded -ww would cancel the setting of termwidth here. This is the easiest way to blow away the user's setting of COLUMNS. Security-related scripts should do this. But most scripts should honor the setting. The use might actually want the setting to affect ps in the script. It is probably wrong to check only stdout. ps is only clearly not associated with a terminal if all 3 std fd's are not terminals. If there was a bug in the old version, then it was that the default is chosen too magically, so no one can remember how to control it. (Even simple use of isatty() gives that problem, and causes a larger problem in practice -- stdio gives line-buffered output which is best for interactive use, but as soon as you pipe the output though less it becomes fully buffered and is often delayed too long. Some utilities have an option to give line-buffered output (e.g., -l for tcpdump), but most don't, and I can rarely remember if they do.) The problem is not really different for shell scripts. ps in a shell script still uses the terminal width if the script outputs to a terminal. But if you pipe through less so that you can actually read the output before it scrolls off, then it magically becomes wide, unless you remember the COLUMNS variable, and export it, and the script honors it. This shows why it is indeed wrong to not check all 3 std fd's. Both 'ps | less' and 'script-doing-ps | less' are interactive uses if they are started on a terminal, since stdin is still a terminal and so is stderr since you forgot to pipe it to less. The width should not change in this case. (stdio only does isatty() on the fd of the current stream to set the default for line buffering. It would be too magical for it to check other fd's, especially when the current fd is not a std one. I think the unwanted full buffering for most utilities when they are piped through less to a terminal results from this. They just use stdio, and it doesn't know the context, so it correctly doesn't adjust the magic. Then most utilities don't know about using setvbuf() to adjust the magic to their context, and they really shouldn't know if the output is a pipe...) top(1) has a related non-problem with the default length. For the non- interactive use 'top >file', you normally want to see more lines than fit on the terminal and a probably doing this to see them. But the length doesn't change by default. It is a user error to not use the option to change it. Bruce From owner-svn-src-all@freebsd.org Sun Mar 5 03:32:08 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CD5AACF80B4; Sun, 5 Mar 2017 03:32:08 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: from mail-wm0-f52.google.com (mail-wm0-f52.google.com [74.125.82.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6E940165D; Sun, 5 Mar 2017 03:32:07 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: by mail-wm0-f52.google.com with SMTP id n11so40948184wma.0; Sat, 04 Mar 2017 19:32:07 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:reply-to:in-reply-to:references :from:date:message-id:subject:to:cc; bh=uEc6se7Z1A1HeThyUoZKTaK4LcnxxATCNy7qvB9fEBc=; b=oJ6FAAJqg87otQI2rL/2MSf16GYWnzcxJLuFPHQX/nazV73n5EnAjx6gZJ3f11ADYi BOos4mZeih+Py9O8C4GkJn94rV8/ELqjl0jEjk8aGQu7QFkS5sKCNkByFnpZQGm2bTHy cHJa+938/UffW7wx4YzsuDGNDXZTRtrh3ieeofYGUdqq/qKoHPUX3+Ifmw7oKu5iaAiP C6g8dV5mzgluPiaajqImkFDE8l/WlEE82O7ne4Zy53prCkWuscFNsLiEqGBO3mk9dKaE eDf+RWdYM4LKzyxqGVg8mboDFcx/QTgZjGzZ12ROvNog9ON16hK2KfhR/xfJPqaWZIUy o5Kg== X-Gm-Message-State: AMke39n2rm5LQUUNSwZPay4ZR/G7hsTidVorw5Ta+EB73/4V/nBR0JZLXehfjI/asaCJtQ== X-Received: by 10.28.23.140 with SMTP id 134mr8311525wmx.23.1488684250075; Sat, 04 Mar 2017 19:24:10 -0800 (PST) Received: from mail-wm0-f49.google.com (mail-wm0-f49.google.com. [74.125.82.49]) by smtp.gmail.com with ESMTPSA id c2sm4895117wre.55.2017.03.04.19.24.09 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 04 Mar 2017 19:24:09 -0800 (PST) Received: by mail-wm0-f49.google.com with SMTP id n11so40703760wma.1; Sat, 04 Mar 2017 19:24:09 -0800 (PST) X-Received: by 10.28.174.14 with SMTP id x14mr8454281wme.75.1488684249796; Sat, 04 Mar 2017 19:24:09 -0800 (PST) MIME-Version: 1.0 Reply-To: cem@freebsd.org Received: by 10.80.169.4 with HTTP; Sat, 4 Mar 2017 19:24:09 -0800 (PST) In-Reply-To: <20170305115437.R1556@besplex.bde.org> References: <201703042238.v24McAD8008837@repo.freebsd.org> <20170305115437.R1556@besplex.bde.org> From: Conrad Meyer Date: Sat, 4 Mar 2017 19:24:09 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r314685 - head/bin/ps To: Bruce Evans Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 03:32:08 -0000 On Sat, Mar 4, 2017 at 6:50 PM, Bruce Evans wrote: >> Author: cem >> Date: Sat Mar 4 22:38:10 2017 >> New Revision: 314685 >> URL: https://svnweb.freebsd.org/changeset/base/314685 >> >> Log: >> ps(1): Only detect terminal width if stdout is a tty >> >> If stdout isn't a tty, use unlimited width output rather than truncating >> to >> 79 characters. This is helpful for shell scripts or e.g., 'ps | grep >> foo'. > > This breaks many interactive uses, e.g., 'ps l | less', to work around a > user error. Hi Bruce, Can you illustrate what breaks here? less(1) doesn't wrap lines and instead supports side-to-side scrolling with left/right arrow keys. The user should get basically the same output with 'ps l | less' as with 'ps l', aside from ability to scroll up/down and left/right. Thanks, Conrad From owner-svn-src-all@freebsd.org Sun Mar 5 03:58:58 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AE93BCF8BB8; Sun, 5 Mar 2017 03:58:58 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 77F3A1692; Sun, 5 Mar 2017 03:58:58 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v253wvH0044253; Sun, 5 Mar 2017 03:58:57 GMT (envelope-from rgrimes@FreeBSD.org) Received: (from rgrimes@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v253wvCI044252; Sun, 5 Mar 2017 03:58:57 GMT (envelope-from rgrimes@FreeBSD.org) Message-Id: <201703050358.v253wvCI044252@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rgrimes set sender to rgrimes@FreeBSD.org using -f From: "Rodney W. Grimes" Date: Sun, 5 Mar 2017 03:58:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314691 - head/share/man/man7 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 03:58:58 -0000 Author: rgrimes Date: Sun Mar 5 03:58:57 2017 New Revision: 314691 URL: https://svnweb.freebsd.org/changeset/base/314691 Log: Document 3 more src/ directories Approved by: grehan(mentor) MFC after: 1 week Verified by: igor (same errors before and after) Modified: head/share/man/man7/hier.7 Modified: head/share/man/man7/hier.7 ============================================================================== --- head/share/man/man7/hier.7 Sun Mar 5 03:05:24 2017 (r314690) +++ head/share/man/man7/hier.7 Sun Mar 5 03:58:57 2017 (r314691) @@ -28,7 +28,7 @@ .\" @(#)hier.7 8.1 (Berkeley) 6/5/93 .\" $FreeBSD$ .\" -.Dd March 15, 2016 +.Dd March 2, 2017 .Dt HIER 7 .Os .Sh NAME @@ -704,6 +704,9 @@ source code for files in files required to produce a .Fx release +.It Pa rescue/ +source code for files in +.Pa /rescue .It Pa sbin/ source code for files in .Pa /sbin @@ -715,6 +718,11 @@ source for files in .Pa /usr/share .It Pa sys/ kernel source code +.It Pa targets/ +support for experimental DIRDEPS_BUILD +.It Pa tests/ +source code for files in +.Pa /usr/tests .It Pa tools/ tools used for maintenance and testing of .Fx From owner-svn-src-all@freebsd.org Sun Mar 5 04:02:48 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BE737CF8EC6; Sun, 5 Mar 2017 04:02:48 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8DE121D2F; Sun, 5 Mar 2017 04:02:48 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v2542lDT048254; Sun, 5 Mar 2017 04:02:47 GMT (envelope-from rgrimes@FreeBSD.org) Received: (from rgrimes@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v2542lTY048253; Sun, 5 Mar 2017 04:02:47 GMT (envelope-from rgrimes@FreeBSD.org) Message-Id: <201703050402.v2542lTY048253@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rgrimes set sender to rgrimes@FreeBSD.org using -f From: "Rodney W. Grimes" Date: Sun, 5 Mar 2017 04:02:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314692 - head/share/misc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 04:02:48 -0000 Author: rgrimes Date: Sun Mar 5 04:02:47 2017 New Revision: 314692 URL: https://svnweb.freebsd.org/changeset/base/314692 Log: Move me from Alumni to active src committer. Promote Peter Grehan to a brother of day1 by adding Peter Grehan (grehan) as my mentor. Reviewed by: gjb Approved by: grehan Verified by: dot to make sure it produces output and no cycles occur Modified: head/share/misc/committers-src.dot Modified: head/share/misc/committers-src.dot ============================================================================== --- head/share/misc/committers-src.dot Sun Mar 5 03:58:57 2017 (r314691) +++ head/share/misc/committers-src.dot Sun Mar 5 04:02:47 2017 (r314692) @@ -78,7 +78,6 @@ non [label="Noriaki Mitsnaga\nnon@FreeBS onoe [label="Atsushi Onoe\nonoe@FreeBSD.org\n2000/07/21\n2008/11/10"] rafan [label="Rong-En Fan\nrafan@FreeBSD.org\n2007/01/31\n2012/07/23"] randi [label="Randi Harper\nrandi@FreeBSD.org\n2010/04/20\n2012/05/10"] -rgrimes [label="Rod Grimes\nrgrimes@FreeBSD.org\n1993/06/12\n2003/03/08"] rink [label="Rink Springer\nrink@FreeBSD.org\n2006/01/16\n2010/11/04"] robert [label="Robert Drehmel\nrobert@FreeBSD.org\n2001/08/23\n2006/05/13"] sah [label="Sam Hopkins\nsah@FreeBSD.org\n2004/12/15\n2008/11/10"] @@ -274,6 +273,7 @@ qingli [label="Qing Li\nqingli@FreeBSD.o ray [label="Aleksandr Rybalko\nray@FreeBSD.org\n2011/05/25"] rdivacky [label="Roman Divacky\nrdivacky@FreeBSD.org\n2008/03/13"] remko [label="Remko Lodder\nremko@FreeBSD.org\n2007/02/23"] +rgrimes [label="Rodney W. Grimes\nrgrimes@FreeBSD.org\n1993/06/12\n2017/03/03"] rik [label="Roman Kurakin\nrik@FreeBSD.org\n2003/12/18"] rmacklem [label="Rick Macklem\nrmacklem@FreeBSD.org\n2009/03/27"] rmh [label="Robert Millan\nrmh@FreeBSD.org\n2011/09/18"] @@ -497,6 +497,7 @@ gnn -> karels gonzo -> jmcneill grehan -> bryanv +grehan -> rgrimes grog -> edwin grog -> le From owner-svn-src-all@freebsd.org Sun Mar 5 04:09:20 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0BDBCCF8FDC; Sun, 5 Mar 2017 04:09:20 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CCDD61ED5; Sun, 5 Mar 2017 04:09:19 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v2549I4M048767; Sun, 5 Mar 2017 04:09:18 GMT (envelope-from rgrimes@FreeBSD.org) Received: (from rgrimes@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v2549IwK048766; Sun, 5 Mar 2017 04:09:18 GMT (envelope-from rgrimes@FreeBSD.org) Message-Id: <201703050409.v2549IwK048766@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rgrimes set sender to rgrimes@FreeBSD.org using -f From: "Rodney W. Grimes" Date: Sun, 5 Mar 2017 04:09:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314693 - head/usr.sbin/rmt X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 04:09:20 -0000 Author: rgrimes Date: Sun Mar 5 04:09:18 2017 New Revision: 314693 URL: https://svnweb.freebsd.org/changeset/base/314693 Log: Change /etc/rmt symlink from absolute to relative path, correcting the mistake made in r6499 Approved by: grehan MFC after: 1 week Modified: head/usr.sbin/rmt/Makefile Modified: head/usr.sbin/rmt/Makefile ============================================================================== --- head/usr.sbin/rmt/Makefile Sun Mar 5 04:02:47 2017 (r314692) +++ head/usr.sbin/rmt/Makefile Sun Mar 5 04:09:18 2017 (r314693) @@ -7,6 +7,6 @@ MAN= rmt.8 # called from /usr/src/etc/Makefile etc-rmt: rm -f ${DESTDIR}/etc/rmt - ln -s ${BINDIR}/rmt ${DESTDIR}/etc/rmt + ln -s ..${BINDIR}/rmt ${DESTDIR}/etc/rmt .include From owner-svn-src-all@freebsd.org Sun Mar 5 04:57:32 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2A76ACFA105; Sun, 5 Mar 2017 04:57:32 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail104.syd.optusnet.com.au (mail104.syd.optusnet.com.au [211.29.132.246]) by mx1.freebsd.org (Postfix) with ESMTP id CF1D8160C; Sun, 5 Mar 2017 04:57:31 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from besplex.bde.org (c122-106-153-191.carlnfd1.nsw.optusnet.com.au [122.106.153.191]) by mail104.syd.optusnet.com.au (Postfix) with ESMTPS id 36493427A46; Sun, 5 Mar 2017 15:57:29 +1100 (AEDT) Date: Sun, 5 Mar 2017 15:57:28 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Conrad Meyer cc: Bruce Evans , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314685 - head/bin/ps In-Reply-To: Message-ID: <20170305150734.K2493@besplex.bde.org> References: <201703042238.v24McAD8008837@repo.freebsd.org> <20170305115437.R1556@besplex.bde.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=KeqiiUQD c=1 sm=1 tr=0 a=Tj3pCpwHnMupdyZSltBt7Q==:117 a=Tj3pCpwHnMupdyZSltBt7Q==:17 a=kj9zAlcOel0A:10 a=PO7r1zJSAAAA:8 a=6I5d2MoRAAAA:8 a=D_tafSauxoz0-rkh7v0A:9 a=CjuIK1q_8ugA:10 a=Oa0T6EYmKFNB-xRHvYM1:22 a=IjZwj45LgO3ly-622nXo:22 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 04:57:32 -0000 On Sat, 4 Mar 2017, Conrad Meyer wrote: > On Sat, Mar 4, 2017 at 6:50 PM, Bruce Evans wrote: >>> Author: cem >>> Date: Sat Mar 4 22:38:10 2017 >>> New Revision: 314685 >>> URL: https://svnweb.freebsd.org/changeset/base/314685 >>> >>> Log: >>> ps(1): Only detect terminal width if stdout is a tty >>> >>> If stdout isn't a tty, use unlimited width output rather than truncating >>> to >>> 79 characters. This is helpful for shell scripts or e.g., 'ps | grep >>> foo'. >> >> This breaks many interactive uses, e.g., 'ps l | less', to work around a >> user error. > > Can you illustrate what breaks here? less(1) doesn't wrap lines and > instead supports side-to-side scrolling with left/right arrow keys. less does wrap long lines. However, it has an option -S to cause long lines to be chopped. Also, if you use side-to-side scrolling then it switches to -S mode except at the leftmost column. Thus, less acts like you say if started with -S. If not started with -S, it makes a mess of the leftmost screen. Other display utilities might not have the sideways scrolling. I normally use an old version of less that doesn't have it, and sometimes vi to just read things. It does have -S. vi doesn't have it or even truncation AFAIK. I often use the display method of dropping large output into the terminal's history buffer and scrolling back using the terminal's scroll keys. This works better than less for many purposes. It doesn't do sideways scrolling. With syscons, some of the history survives a frame buffer geometry change but the history is raw so line breaks cannot be recovered, and the current screen is cleared together with its history instead of redrawn. With xterm, there is no bogus clearing but the line breaks are not recovered. Another broken use is ps l | grep where the output is sent to the screen. It is now wide, so hard to read without piping it further through a viewer with sideways scrolling. Sideways scrolling is not too bad for tabular formats like ps's where you often want to look at 1 column at a time, but I don't like it for general use and prefer truncation. less in an xterm can be resized with recoverable line breaks but I rarely use X. Truncation by the viewer is not as good as truncation by the producer. ps should expand leading field widths so as to truncates leading fields less if the output is wide. This would move important later fields into the truncated region if the viewer truncates. > The user should get basically the same output with 'ps l | less' as > with 'ps l', aside from ability to scroll up/down and left/right. This takes a nonstandard version of less (perhaps an alias). So some users would notice this change more than others. It is interesting that ps -ww doesn't work as an alias for ps for users who are used to typing ps args without a '-'. ps -ww -l works, but ps -ww l is a syntax error. Bruce From owner-svn-src-all@freebsd.org Sun Mar 5 05:02:15 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 52134CFA2E6; Sun, 5 Mar 2017 05:02:15 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1EBC61A3C; Sun, 5 Mar 2017 05:02:15 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v2552Evm074340; Sun, 5 Mar 2017 05:02:14 GMT (envelope-from rgrimes@FreeBSD.org) Received: (from rgrimes@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v2552EUi074339; Sun, 5 Mar 2017 05:02:14 GMT (envelope-from rgrimes@FreeBSD.org) Message-Id: <201703050502.v2552EUi074339@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rgrimes set sender to rgrimes@FreeBSD.org using -f From: "Rodney W. Grimes" Date: Sun, 5 Mar 2017 05:02:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314694 - head/share/examples/bhyve X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 05:02:15 -0000 Author: rgrimes Date: Sun Mar 5 05:02:13 2017 New Revision: 314694 URL: https://svnweb.freebsd.org/changeset/base/314694 Log: Make vmrun.sh passthrough -u and -w to bhybe PR: 214273 Submitted by: Martin Birgmeier Approved by: grehan MFC after: 1 week Modified: head/share/examples/bhyve/vmrun.sh Modified: head/share/examples/bhyve/vmrun.sh ============================================================================== --- head/share/examples/bhyve/vmrun.sh Sun Mar 5 04:09:18 2017 (r314693) +++ head/share/examples/bhyve/vmrun.sh Sun Mar 5 05:02:13 2017 (r314694) @@ -65,6 +65,8 @@ usage() { echo " -m: memory size (default is ${DEFAULT_MEMSIZE})" echo " -p: pass-through a host PCI device at bus/slot/func (e.g. 10/0/0)" echo " -t: tap device for virtio-net (default is $DEFAULT_TAPDEV)" + echo " -u: RTC keeps UTC time" + echo " -w: ignore unimplemented MSRs" echo "" [ -n "$msg" ] && errmsg "$msg" exit 1 @@ -93,7 +95,7 @@ loader_opt="" bhyverun_opt="-H -A -P" pass_total=0 -while getopts ac:C:d:e:g:hH:iI:l:m:p:t: c ; do +while getopts ac:C:d:e:g:hH:iI:l:m:p:t:uw c ; do case $c in a) bhyverun_opt="${bhyverun_opt} -a" @@ -140,6 +142,12 @@ while getopts ac:C:d:e:g:hH:iI:l:m:p:t: eval "tap_dev${tap_total}=\"${OPTARG}\"" tap_total=$(($tap_total + 1)) ;; + u) + bhyverun_opt="${bhyverun_opt} -u" + ;; + w) + bhyverun_opt="${bhyverun_opt} -w" + ;; *) usage ;; From owner-svn-src-all@freebsd.org Sun Mar 5 05:15:03 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5AF96CFA532; Sun, 5 Mar 2017 05:15:03 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1CA0D1009; Sun, 5 Mar 2017 05:15:03 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v255F2n7078975; Sun, 5 Mar 2017 05:15:02 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v255F2RO078974; Sun, 5 Mar 2017 05:15:02 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703050515.v255F2RO078974@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Sun, 5 Mar 2017 05:15:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314695 - stable/11/sys/dev/isp X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 05:15:03 -0000 Author: mav Date: Sun Mar 5 05:15:02 2017 New Revision: 314695 URL: https://svnweb.freebsd.org/changeset/base/314695 Log: MFC r313945: Remove broken remnants of obsolete INOT API. Modified: stable/11/sys/dev/isp/isp_freebsd.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/11/sys/dev/isp/isp_freebsd.c Sun Mar 5 05:02:13 2017 (r314694) +++ stable/11/sys/dev/isp/isp_freebsd.c Sun Mar 5 05:15:02 2017 (r314695) @@ -3565,7 +3565,6 @@ isp_action(struct cam_sim *sim, union cc isp_disable_lun(isp, ccb); } break; - case XPT_IMMED_NOTIFY: case XPT_IMMEDIATE_NOTIFY: /* Add Immediate Notify Resource */ case XPT_ACCEPT_TARGET_IO: /* Add Accept Target IO Resource */ { @@ -3616,20 +3615,11 @@ isp_action(struct cam_sim *sim, union cc ISP_PATH_PRT(isp, ISP_LOGTDEBUG2, ccb->ccb_h.path, "Put FREE INOT, (seq id 0x%x) count now %d\n", ccb->cin1.seq_id, tptr->inot_count); ccb->cin1.seq_id = 0; - } else if (ccb->ccb_h.func_code == XPT_IMMED_NOTIFY) { - tptr->inot_count++; - SLIST_INSERT_HEAD(&tptr->inots, &ccb->ccb_h, sim_links.sle); - ISP_PATH_PRT(isp, ISP_LOGTDEBUG2, ccb->ccb_h.path, "Put FREE INOT, (seq id 0x%x) count now %d\n", - ccb->cin1.seq_id, tptr->inot_count); - ccb->cin1.seq_id = 0; } rls_lun_statep(isp, tptr); ccb->ccb_h.status = CAM_REQ_INPROG; break; } - case XPT_NOTIFY_ACK: - ccb->ccb_h.status = CAM_REQ_CMP_ERR; - break; case XPT_NOTIFY_ACKNOWLEDGE: /* notify ack */ { tstate_t *tptr; From owner-svn-src-all@freebsd.org Sun Mar 5 05:15:36 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BB8F5CFA585; Sun, 5 Mar 2017 05:15:36 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8864A1139; Sun, 5 Mar 2017 05:15:36 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v255FZmb079072; Sun, 5 Mar 2017 05:15:35 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v255FZNS079071; Sun, 5 Mar 2017 05:15:35 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703050515.v255FZNS079071@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Sun, 5 Mar 2017 05:15:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314696 - stable/10/sys/dev/isp X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 05:15:36 -0000 Author: mav Date: Sun Mar 5 05:15:35 2017 New Revision: 314696 URL: https://svnweb.freebsd.org/changeset/base/314696 Log: MFC r313945: Remove broken remnants of obsolete INOT API. Modified: stable/10/sys/dev/isp/isp_freebsd.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/10/sys/dev/isp/isp_freebsd.c Sun Mar 5 05:15:02 2017 (r314695) +++ stable/10/sys/dev/isp/isp_freebsd.c Sun Mar 5 05:15:35 2017 (r314696) @@ -3565,7 +3565,6 @@ isp_action(struct cam_sim *sim, union cc isp_disable_lun(isp, ccb); } break; - case XPT_IMMED_NOTIFY: case XPT_IMMEDIATE_NOTIFY: /* Add Immediate Notify Resource */ case XPT_ACCEPT_TARGET_IO: /* Add Accept Target IO Resource */ { @@ -3616,20 +3615,11 @@ isp_action(struct cam_sim *sim, union cc ISP_PATH_PRT(isp, ISP_LOGTDEBUG2, ccb->ccb_h.path, "Put FREE INOT, (seq id 0x%x) count now %d\n", ccb->cin1.seq_id, tptr->inot_count); ccb->cin1.seq_id = 0; - } else if (ccb->ccb_h.func_code == XPT_IMMED_NOTIFY) { - tptr->inot_count++; - SLIST_INSERT_HEAD(&tptr->inots, &ccb->ccb_h, sim_links.sle); - ISP_PATH_PRT(isp, ISP_LOGTDEBUG2, ccb->ccb_h.path, "Put FREE INOT, (seq id 0x%x) count now %d\n", - ccb->cin1.seq_id, tptr->inot_count); - ccb->cin1.seq_id = 0; } rls_lun_statep(isp, tptr); ccb->ccb_h.status = CAM_REQ_INPROG; break; } - case XPT_NOTIFY_ACK: - ccb->ccb_h.status = CAM_REQ_CMP_ERR; - break; case XPT_NOTIFY_ACKNOWLEDGE: /* notify ack */ { tstate_t *tptr; From owner-svn-src-all@freebsd.org Sun Mar 5 05:17:04 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 51EADCFA601; Sun, 5 Mar 2017 05:17:04 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1063F1290; Sun, 5 Mar 2017 05:17:03 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v255H3C6079241; Sun, 5 Mar 2017 05:17:03 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v255H2U3079239; Sun, 5 Mar 2017 05:17:02 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703050517.v255H2U3079239@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Sun, 5 Mar 2017 05:17:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314697 - stable/11/sys/dev/isp X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 05:17:04 -0000 Author: mav Date: Sun Mar 5 05:17:02 2017 New Revision: 314697 URL: https://svnweb.freebsd.org/changeset/base/314697 Log: MFC r313936, r313937: Move CTIO waitq from per-LUN to per-channel. All resources lack of which may put CTIO into the queue are either per-channel or potentially per-queue, but none of them are per-LUN. This is a first step to fix live LUN disabling. Before this change any CTIOs held in a queue in time of disabling were just leaked. Modified: stable/11/sys/dev/isp/isp_freebsd.c stable/11/sys/dev/isp/isp_freebsd.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/11/sys/dev/isp/isp_freebsd.c Sun Mar 5 05:15:35 2017 (r314696) +++ stable/11/sys/dev/isp/isp_freebsd.c Sun Mar 5 05:17:02 2017 (r314697) @@ -153,6 +153,9 @@ isp_attach_chan(ispsoftc_t *isp, struct struct isp_spi *spi = ISP_SPI_PC(isp, chan); spi->sim = sim; spi->path = path; +#ifdef ISP_TARGET_MODE + TAILQ_INIT(&spi->waitq); +#endif } else { fcparam *fcp = FCPARAM(isp, chan); struct isp_fc *fc = ISP_FC_PC(isp, chan); @@ -168,6 +171,9 @@ isp_attach_chan(ispsoftc_t *isp, struct callout_init_mtx(&fc->gdt, &isp->isp_osinfo.lock, 0); TASK_INIT(&fc->gtask, 1, isp_gdt_task, fc); +#ifdef ISP_TARGET_MODE + TAILQ_INIT(&fc->waitq); +#endif isp_loop_changed(isp, chan); ISP_UNLOCK(isp); if (THREAD_CREATE(isp_kthread, fc, &fc->kproc, 0, 0, "%s: fc_thrd%d", device_get_nameunit(isp->isp_osinfo.dev), chan)) { @@ -976,6 +982,7 @@ isp_tmcmd_restart(ispsoftc_t *isp) tstate_t *tptr; union ccb *ccb; struct tslist *lhp; + struct isp_ccbq *waitq; int bus, i; for (bus = 0; bus < isp->isp_nchan; bus++) { @@ -1005,16 +1012,18 @@ isp_tmcmd_restart(ispsoftc_t *isp) break; } } - /* - * We only need to do this once per tptr - */ - if (!TAILQ_EMPTY(&tptr->waitq)) { - ccb = (union ccb *)TAILQ_LAST(&tptr->waitq, isp_ccbq); - TAILQ_REMOVE(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); - isp_target_start_ctio(isp, ccb, FROM_TIMER); - } } } + + /* + * We only need to do this once per channel. + */ + ISP_GET_PC_ADDR(isp, bus, waitq, waitq); + ccb = (union ccb *)TAILQ_FIRST(waitq); + if (ccb != NULL) { + TAILQ_REMOVE(waitq, &ccb->ccb_h, periph_links.tqe); + isp_target_start_ctio(isp, ccb, FROM_TIMER); + } } } @@ -1129,7 +1138,6 @@ create_lun_state(ispsoftc_t *isp, int bu } SLIST_INIT(&tptr->atios); SLIST_INIT(&tptr->inots); - TAILQ_INIT(&tptr->waitq); LIST_INIT(&tptr->atfree); for (i = ATPDPSIZE-1; i >= 0; i--) LIST_INSERT_HEAD(&tptr->atfree, &tptr->atpool[i], next); @@ -1264,6 +1272,7 @@ isp_target_start_ctio(ispsoftc_t *isp, u fcparam *fcp; atio_private_data_t *atp; struct ccb_scsiio *cso; + struct isp_ccbq *waitq; uint32_t dmaresult, handle, xfrlen, sense_length, tmp; uint8_t local[QENTRY_LEN]; @@ -1280,23 +1289,23 @@ isp_target_start_ctio(ispsoftc_t *isp, u isp_prt(isp, ISP_LOGTDEBUG0, "%s: ENTRY[0x%x] how %u xfrlen %u sendstatus %d sense_len %u", __func__, ccb->csio.tag_id, how, ccb->csio.dxfer_len, (ccb->ccb_h.flags & CAM_SEND_STATUS) != 0, ((ccb->ccb_h.flags & CAM_SEND_SENSE)? ccb->csio.sense_len : 0)); + ISP_GET_PC_ADDR(isp, XS_CHANNEL(ccb), waitq, waitq); switch (how) { - case FROM_TIMER: case FROM_CAM: /* * Insert at the tail of the list, if any, waiting CTIO CCBs */ - TAILQ_INSERT_TAIL(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_TAIL(waitq, &ccb->ccb_h, periph_links.tqe); break; + case FROM_TIMER: case FROM_SRR: case FROM_CTIO_DONE: - TAILQ_INSERT_HEAD(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_HEAD(waitq, &ccb->ccb_h, periph_links.tqe); break; } - while (TAILQ_FIRST(&tptr->waitq) != NULL) { - ccb = (union ccb *) TAILQ_FIRST(&tptr->waitq); - TAILQ_REMOVE(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + while ((ccb = (union ccb *) TAILQ_FIRST(waitq)) != NULL) { + TAILQ_REMOVE(waitq, &ccb->ccb_h, periph_links.tqe); cso = &ccb->csio; xfrlen = cso->dxfer_len; @@ -1345,7 +1354,7 @@ isp_target_start_ctio(ispsoftc_t *isp, u */ if (atp->ctcnt >= ATPD_CCB_OUTSTANDING) { isp_prt(isp, ISP_LOGTINFO, "[0x%x] handling only %d CCBs at a time (flags for this ccb: 0x%x)", cso->tag_id, ATPD_CCB_OUTSTANDING, ccb->ccb_h.flags); - TAILQ_INSERT_HEAD(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_HEAD(waitq, &ccb->ccb_h, periph_links.tqe); break; } @@ -1462,7 +1471,7 @@ isp_target_start_ctio(ispsoftc_t *isp, u if (atp->ests == NULL) { atp->ests = isp_get_ecmd(isp); if (atp->ests == NULL) { - TAILQ_INSERT_HEAD(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_HEAD(waitq, &ccb->ccb_h, periph_links.tqe); break; } } @@ -1617,7 +1626,7 @@ isp_target_start_ctio(ispsoftc_t *isp, u if (atp->ests == NULL) { atp->ests = isp_get_ecmd(isp); if (atp->ests == NULL) { - TAILQ_INSERT_HEAD(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_HEAD(waitq, &ccb->ccb_h, periph_links.tqe); break; } } @@ -1706,13 +1715,13 @@ isp_target_start_ctio(ispsoftc_t *isp, u if (isp_get_pcmd(isp, ccb)) { ISP_PATH_PRT(isp, ISP_LOGWARN, ccb->ccb_h.path, "out of PCMDs\n"); - TAILQ_INSERT_HEAD(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_HEAD(waitq, &ccb->ccb_h, periph_links.tqe); break; } handle = isp_allocate_handle(isp, ccb, ISP_HANDLE_TARGET); if (handle == 0) { ISP_PATH_PRT(isp, ISP_LOGWARN, ccb->ccb_h.path, "No XFLIST pointers for %s\n", __func__); - TAILQ_INSERT_HEAD(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_HEAD(waitq, &ccb->ccb_h, periph_links.tqe); isp_free_pcmd(isp, ccb); break; } @@ -1742,7 +1751,7 @@ isp_target_start_ctio(ispsoftc_t *isp, u isp_destroy_handle(isp, handle); isp_free_pcmd(isp, ccb); if (dmaresult == CMD_EAGAIN) { - TAILQ_INSERT_HEAD(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_HEAD(waitq, &ccb->ccb_h, periph_links.tqe); break; } ccb->ccb_h.status = CAM_REQ_CMP_ERR; Modified: stable/11/sys/dev/isp/isp_freebsd.h ============================================================================== --- stable/11/sys/dev/isp/isp_freebsd.h Sun Mar 5 05:15:35 2017 (r314696) +++ stable/11/sys/dev/isp/isp_freebsd.h Sun Mar 5 05:17:02 2017 (r314697) @@ -163,12 +163,10 @@ typedef struct isp_timed_notify_ack { struct callout timer; } isp_tna_t; -TAILQ_HEAD(isp_ccbq, ccb_hdr); typedef struct tstate { SLIST_ENTRY(tstate) next; lun_id_t ts_lun; struct cam_path *owner; - struct isp_ccbq waitq; /* waiting CCBs */ struct ccb_hdr_slist atios; struct ccb_hdr_slist inots; uint32_t hold; @@ -220,6 +218,7 @@ struct isp_nexus { * Per channel information */ SLIST_HEAD(tslist, tstate); +TAILQ_HEAD(isp_ccbq, ccb_hdr); struct isp_fc { struct cam_sim *sim; @@ -249,7 +248,8 @@ struct isp_fc { struct callout gdt; /* gone device timer */ struct task gtask; #ifdef ISP_TARGET_MODE - struct tslist lun_hash[LUN_HASH_SIZE]; + struct tslist lun_hash[LUN_HASH_SIZE]; + struct isp_ccbq waitq; /* waiting CCBs */ #if defined(DEBUG) unsigned int inject_lost_data_frame; #endif @@ -264,7 +264,8 @@ struct isp_spi { simqfrozen : 3, iid : 4; #ifdef ISP_TARGET_MODE - struct tslist lun_hash[LUN_HASH_SIZE]; + struct tslist lun_hash[LUN_HASH_SIZE]; + struct isp_ccbq waitq; /* waiting CCBs */ #endif int num_threads; }; From owner-svn-src-all@freebsd.org Sun Mar 5 05:17:37 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A230BCFA670; Sun, 5 Mar 2017 05:17:37 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5936B13BB; Sun, 5 Mar 2017 05:17:37 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v255HaIs079333; Sun, 5 Mar 2017 05:17:36 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v255Had4079331; Sun, 5 Mar 2017 05:17:36 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703050517.v255Had4079331@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Sun, 5 Mar 2017 05:17:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314698 - stable/10/sys/dev/isp X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 05:17:37 -0000 Author: mav Date: Sun Mar 5 05:17:36 2017 New Revision: 314698 URL: https://svnweb.freebsd.org/changeset/base/314698 Log: MFC r313936, r313937: Move CTIO waitq from per-LUN to per-channel. All resources lack of which may put CTIO into the queue are either per-channel or potentially per-queue, but none of them are per-LUN. This is a first step to fix live LUN disabling. Before this change any CTIOs held in a queue in time of disabling were just leaked. Modified: stable/10/sys/dev/isp/isp_freebsd.c stable/10/sys/dev/isp/isp_freebsd.h Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/10/sys/dev/isp/isp_freebsd.c Sun Mar 5 05:17:02 2017 (r314697) +++ stable/10/sys/dev/isp/isp_freebsd.c Sun Mar 5 05:17:36 2017 (r314698) @@ -153,6 +153,9 @@ isp_attach_chan(ispsoftc_t *isp, struct struct isp_spi *spi = ISP_SPI_PC(isp, chan); spi->sim = sim; spi->path = path; +#ifdef ISP_TARGET_MODE + TAILQ_INIT(&spi->waitq); +#endif } else { fcparam *fcp = FCPARAM(isp, chan); struct isp_fc *fc = ISP_FC_PC(isp, chan); @@ -168,6 +171,9 @@ isp_attach_chan(ispsoftc_t *isp, struct callout_init_mtx(&fc->gdt, &isp->isp_osinfo.lock, 0); TASK_INIT(&fc->gtask, 1, isp_gdt_task, fc); +#ifdef ISP_TARGET_MODE + TAILQ_INIT(&fc->waitq); +#endif isp_loop_changed(isp, chan); ISP_UNLOCK(isp); if (THREAD_CREATE(isp_kthread, fc, &fc->kproc, 0, 0, "%s: fc_thrd%d", device_get_nameunit(isp->isp_osinfo.dev), chan)) { @@ -976,6 +982,7 @@ isp_tmcmd_restart(ispsoftc_t *isp) tstate_t *tptr; union ccb *ccb; struct tslist *lhp; + struct isp_ccbq *waitq; int bus, i; for (bus = 0; bus < isp->isp_nchan; bus++) { @@ -1005,16 +1012,18 @@ isp_tmcmd_restart(ispsoftc_t *isp) break; } } - /* - * We only need to do this once per tptr - */ - if (!TAILQ_EMPTY(&tptr->waitq)) { - ccb = (union ccb *)TAILQ_LAST(&tptr->waitq, isp_ccbq); - TAILQ_REMOVE(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); - isp_target_start_ctio(isp, ccb, FROM_TIMER); - } } } + + /* + * We only need to do this once per channel. + */ + ISP_GET_PC_ADDR(isp, bus, waitq, waitq); + ccb = (union ccb *)TAILQ_FIRST(waitq); + if (ccb != NULL) { + TAILQ_REMOVE(waitq, &ccb->ccb_h, periph_links.tqe); + isp_target_start_ctio(isp, ccb, FROM_TIMER); + } } } @@ -1129,7 +1138,6 @@ create_lun_state(ispsoftc_t *isp, int bu } SLIST_INIT(&tptr->atios); SLIST_INIT(&tptr->inots); - TAILQ_INIT(&tptr->waitq); LIST_INIT(&tptr->atfree); for (i = ATPDPSIZE-1; i >= 0; i--) LIST_INSERT_HEAD(&tptr->atfree, &tptr->atpool[i], next); @@ -1264,6 +1272,7 @@ isp_target_start_ctio(ispsoftc_t *isp, u fcparam *fcp; atio_private_data_t *atp; struct ccb_scsiio *cso; + struct isp_ccbq *waitq; uint32_t dmaresult, handle, xfrlen, sense_length, tmp; uint8_t local[QENTRY_LEN]; @@ -1280,23 +1289,23 @@ isp_target_start_ctio(ispsoftc_t *isp, u isp_prt(isp, ISP_LOGTDEBUG0, "%s: ENTRY[0x%x] how %u xfrlen %u sendstatus %d sense_len %u", __func__, ccb->csio.tag_id, how, ccb->csio.dxfer_len, (ccb->ccb_h.flags & CAM_SEND_STATUS) != 0, ((ccb->ccb_h.flags & CAM_SEND_SENSE)? ccb->csio.sense_len : 0)); + ISP_GET_PC_ADDR(isp, XS_CHANNEL(ccb), waitq, waitq); switch (how) { - case FROM_TIMER: case FROM_CAM: /* * Insert at the tail of the list, if any, waiting CTIO CCBs */ - TAILQ_INSERT_TAIL(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_TAIL(waitq, &ccb->ccb_h, periph_links.tqe); break; + case FROM_TIMER: case FROM_SRR: case FROM_CTIO_DONE: - TAILQ_INSERT_HEAD(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_HEAD(waitq, &ccb->ccb_h, periph_links.tqe); break; } - while (TAILQ_FIRST(&tptr->waitq) != NULL) { - ccb = (union ccb *) TAILQ_FIRST(&tptr->waitq); - TAILQ_REMOVE(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + while ((ccb = (union ccb *) TAILQ_FIRST(waitq)) != NULL) { + TAILQ_REMOVE(waitq, &ccb->ccb_h, periph_links.tqe); cso = &ccb->csio; xfrlen = cso->dxfer_len; @@ -1345,7 +1354,7 @@ isp_target_start_ctio(ispsoftc_t *isp, u */ if (atp->ctcnt >= ATPD_CCB_OUTSTANDING) { isp_prt(isp, ISP_LOGTINFO, "[0x%x] handling only %d CCBs at a time (flags for this ccb: 0x%x)", cso->tag_id, ATPD_CCB_OUTSTANDING, ccb->ccb_h.flags); - TAILQ_INSERT_HEAD(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_HEAD(waitq, &ccb->ccb_h, periph_links.tqe); break; } @@ -1462,7 +1471,7 @@ isp_target_start_ctio(ispsoftc_t *isp, u if (atp->ests == NULL) { atp->ests = isp_get_ecmd(isp); if (atp->ests == NULL) { - TAILQ_INSERT_HEAD(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_HEAD(waitq, &ccb->ccb_h, periph_links.tqe); break; } } @@ -1617,7 +1626,7 @@ isp_target_start_ctio(ispsoftc_t *isp, u if (atp->ests == NULL) { atp->ests = isp_get_ecmd(isp); if (atp->ests == NULL) { - TAILQ_INSERT_HEAD(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_HEAD(waitq, &ccb->ccb_h, periph_links.tqe); break; } } @@ -1706,13 +1715,13 @@ isp_target_start_ctio(ispsoftc_t *isp, u if (isp_get_pcmd(isp, ccb)) { ISP_PATH_PRT(isp, ISP_LOGWARN, ccb->ccb_h.path, "out of PCMDs\n"); - TAILQ_INSERT_HEAD(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_HEAD(waitq, &ccb->ccb_h, periph_links.tqe); break; } handle = isp_allocate_handle(isp, ccb, ISP_HANDLE_TARGET); if (handle == 0) { ISP_PATH_PRT(isp, ISP_LOGWARN, ccb->ccb_h.path, "No XFLIST pointers for %s\n", __func__); - TAILQ_INSERT_HEAD(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_HEAD(waitq, &ccb->ccb_h, periph_links.tqe); isp_free_pcmd(isp, ccb); break; } @@ -1742,7 +1751,7 @@ isp_target_start_ctio(ispsoftc_t *isp, u isp_destroy_handle(isp, handle); isp_free_pcmd(isp, ccb); if (dmaresult == CMD_EAGAIN) { - TAILQ_INSERT_HEAD(&tptr->waitq, &ccb->ccb_h, periph_links.tqe); + TAILQ_INSERT_HEAD(waitq, &ccb->ccb_h, periph_links.tqe); break; } ccb->ccb_h.status = CAM_REQ_CMP_ERR; Modified: stable/10/sys/dev/isp/isp_freebsd.h ============================================================================== --- stable/10/sys/dev/isp/isp_freebsd.h Sun Mar 5 05:17:02 2017 (r314697) +++ stable/10/sys/dev/isp/isp_freebsd.h Sun Mar 5 05:17:36 2017 (r314698) @@ -163,12 +163,10 @@ typedef struct isp_timed_notify_ack { struct callout timer; } isp_tna_t; -TAILQ_HEAD(isp_ccbq, ccb_hdr); typedef struct tstate { SLIST_ENTRY(tstate) next; lun_id_t ts_lun; struct cam_path *owner; - struct isp_ccbq waitq; /* waiting CCBs */ struct ccb_hdr_slist atios; struct ccb_hdr_slist inots; uint32_t hold; @@ -220,6 +218,7 @@ struct isp_nexus { * Per channel information */ SLIST_HEAD(tslist, tstate); +TAILQ_HEAD(isp_ccbq, ccb_hdr); struct isp_fc { struct cam_sim *sim; @@ -249,7 +248,8 @@ struct isp_fc { struct callout gdt; /* gone device timer */ struct task gtask; #ifdef ISP_TARGET_MODE - struct tslist lun_hash[LUN_HASH_SIZE]; + struct tslist lun_hash[LUN_HASH_SIZE]; + struct isp_ccbq waitq; /* waiting CCBs */ #if defined(DEBUG) unsigned int inject_lost_data_frame; #endif @@ -264,7 +264,8 @@ struct isp_spi { simqfrozen : 3, iid : 4; #ifdef ISP_TARGET_MODE - struct tslist lun_hash[LUN_HASH_SIZE]; + struct tslist lun_hash[LUN_HASH_SIZE]; + struct isp_ccbq waitq; /* waiting CCBs */ #endif int num_threads; }; From owner-svn-src-all@freebsd.org Sun Mar 5 07:13:30 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 75397CFA292; Sun, 5 Mar 2017 07:13:30 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4FCB51286; Sun, 5 Mar 2017 07:13:30 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v257DT6W028604; Sun, 5 Mar 2017 07:13:29 GMT (envelope-from manu@FreeBSD.org) Received: (from manu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v257DT3s028601; Sun, 5 Mar 2017 07:13:29 GMT (envelope-from manu@FreeBSD.org) Message-Id: <201703050713.v257DT3s028601@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: manu set sender to manu@FreeBSD.org using -f From: Emmanuel Vadot Date: Sun, 5 Mar 2017 07:13:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314699 - in head/sys: dev/extres/clk kern sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 07:13:30 -0000 Author: manu Date: Sun Mar 5 07:13:29 2017 New Revision: 314699 URL: https://svnweb.freebsd.org/changeset/base/314699 Log: Export a sysctl dev...clocks for each clock domain containing all the clocks that they provide. Each clocks are exported under the node 'clock.' and have the following children nodes : - frequency - parent (The selected parent, if any) - parents (The list of parents, if any) - childrens (The list of childrens, if any) - enable_cnt (The enabled counter) This give us the possibility to examine clocks at runtime and make graph of the clock flow. Reviewed by: mmel MFC after: 2 month Differential Revision: https://reviews.freebsd.org/D9833 Modified: head/sys/dev/extres/clk/clk.c head/sys/kern/kern_mib.c head/sys/sys/sysctl.h Modified: head/sys/dev/extres/clk/clk.c ============================================================================== --- head/sys/dev/extres/clk/clk.c Sun Mar 5 05:17:36 2017 (r314698) +++ head/sys/dev/extres/clk/clk.c Sun Mar 5 07:13:29 2017 (r314699) @@ -38,6 +38,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -118,6 +119,8 @@ struct clknode { /* Cached values. */ uint64_t freq; /* Actual frequency */ + + struct sysctl_ctx_list sysctl_ctx; }; /* @@ -175,6 +178,15 @@ SX_SYSINIT(clock_topology, &clk_topo_loc static void clknode_adjust_parent(struct clknode *clknode, int idx); +enum clknode_sysctl_type { + CLKNODE_SYSCTL_PARENT, + CLKNODE_SYSCTL_PARENTS_LIST, + CLKNODE_SYSCTL_CHILDREN_LIST, +}; + +static int clknode_sysctl(SYSCTL_HANDLER_ARGS); +static int clkdom_sysctl(SYSCTL_HANDLER_ARGS); + /* * Default clock methods for base class. */ @@ -382,6 +394,14 @@ clkdom_create(device_t dev) clkdom->ofw_mapper = clknode_default_ofw_map; #endif + SYSCTL_ADD_PROC(device_get_sysctl_ctx(dev), + SYSCTL_CHILDREN(device_get_sysctl_tree(dev)), + OID_AUTO, "clocks", + CTLTYPE_STRING | CTLFLAG_RD, + clkdom, 0, clkdom_sysctl, + "A", + "Clock list for the domain"); + return (clkdom); } @@ -503,6 +523,7 @@ clknode_create(struct clkdom * clkdom, c const struct clknode_init_def *def) { struct clknode *clknode; + struct sysctl_oid *clknode_oid; KASSERT(def->name != NULL, ("clock name is NULL")); KASSERT(def->name[0] != '\0', ("clock name is empty")); @@ -547,6 +568,42 @@ clknode_create(struct clkdom * clkdom, c clknode->parent_idx = CLKNODE_IDX_NONE; TAILQ_INIT(&clknode->children); + sysctl_ctx_init(&clknode->sysctl_ctx); + clknode_oid = SYSCTL_ADD_NODE(&clknode->sysctl_ctx, + SYSCTL_STATIC_CHILDREN(_clock), + OID_AUTO, clknode->name, + CTLFLAG_RD, 0, "A clock node"); + + SYSCTL_ADD_U64(&clknode->sysctl_ctx, + SYSCTL_CHILDREN(clknode_oid), + OID_AUTO, "frequency", + CTLFLAG_RD, &clknode->freq, 0, "The clock frequency"); + SYSCTL_ADD_PROC(&clknode->sysctl_ctx, + SYSCTL_CHILDREN(clknode_oid), + OID_AUTO, "parent", + CTLTYPE_STRING | CTLFLAG_RD, + clknode, CLKNODE_SYSCTL_PARENT, clknode_sysctl, + "A", + "The clock parent"); + SYSCTL_ADD_PROC(&clknode->sysctl_ctx, + SYSCTL_CHILDREN(clknode_oid), + OID_AUTO, "parents", + CTLTYPE_STRING | CTLFLAG_RD, + clknode, CLKNODE_SYSCTL_PARENTS_LIST, clknode_sysctl, + "A", + "The clock parents list"); + SYSCTL_ADD_PROC(&clknode->sysctl_ctx, + SYSCTL_CHILDREN(clknode_oid), + OID_AUTO, "childrens", + CTLTYPE_STRING | CTLFLAG_RD, + clknode, CLKNODE_SYSCTL_CHILDREN_LIST, clknode_sysctl, + "A", + "The clock childrens list"); + SYSCTL_ADD_INT(&clknode->sysctl_ctx, + SYSCTL_CHILDREN(clknode_oid), + OID_AUTO, "enable_cnt", + CTLFLAG_RD, &clknode->enable_cnt, 0, "The clock enable counter"); + return (clknode); } @@ -1385,3 +1442,64 @@ clk_parse_ofw_clk_name(device_t dev, pha return (0); } #endif + +static int +clkdom_sysctl(SYSCTL_HANDLER_ARGS) +{ + struct clkdom *clkdom = arg1; + struct clknode *clknode; + struct sbuf *sb; + int ret; + + sb = sbuf_new_for_sysctl(NULL, NULL, 4096, req); + if (sb == NULL) + return (ENOMEM); + + CLK_TOPO_SLOCK(); + TAILQ_FOREACH(clknode, &clkdom->clknode_list, clkdom_link) { + sbuf_printf(sb, "%s ", clknode->name); + } + CLK_TOPO_UNLOCK(); + + ret = sbuf_finish(sb); + sbuf_delete(sb); + return (ret); +} + +static int +clknode_sysctl(SYSCTL_HANDLER_ARGS) +{ + struct clknode *clknode, *children; + enum clknode_sysctl_type type = arg2; + struct sbuf *sb; + const char **parent_names; + int ret, i; + + clknode = arg1; + sb = sbuf_new_for_sysctl(NULL, NULL, 512, req); + if (sb == NULL) + return (ENOMEM); + + CLK_TOPO_SLOCK(); + switch (type) { + case CLKNODE_SYSCTL_PARENT: + if (clknode->parent) + sbuf_printf(sb, "%s", clknode->parent->name); + break; + case CLKNODE_SYSCTL_PARENTS_LIST: + parent_names = clknode_get_parent_names(clknode); + for (i = 0; i < clknode->parent_cnt; i++) + sbuf_printf(sb, "%s ", parent_names[i]); + break; + case CLKNODE_SYSCTL_CHILDREN_LIST: + TAILQ_FOREACH(children, &(clknode->children), sibling_link) { + sbuf_printf(sb, "%s ", children->name); + } + break; + } + CLK_TOPO_UNLOCK(); + + ret = sbuf_finish(sb); + sbuf_delete(sb); + return (ret); +} Modified: head/sys/kern/kern_mib.c ============================================================================== --- head/sys/kern/kern_mib.c Sun Mar 5 05:17:36 2017 (r314698) +++ head/sys/kern/kern_mib.c Sun Mar 5 07:13:29 2017 (r314699) @@ -88,6 +88,11 @@ SYSCTL_ROOT_NODE(OID_AUTO, regression, C "Regression test MIB"); #endif +#ifdef EXT_RESOURCES +SYSCTL_ROOT_NODE(OID_AUTO, clock, CTLFLAG_RW, 0, + "Clocks"); +#endif + SYSCTL_STRING(_kern, OID_AUTO, ident, CTLFLAG_RD|CTLFLAG_MPSAFE, kern_ident, 0, "Kernel identifier"); Modified: head/sys/sys/sysctl.h ============================================================================== --- head/sys/sys/sysctl.h Sun Mar 5 05:17:36 2017 (r314698) +++ head/sys/sys/sysctl.h Sun Mar 5 07:13:29 2017 (r314699) @@ -1004,6 +1004,9 @@ SYSCTL_DECL(_compat); SYSCTL_DECL(_regression); SYSCTL_DECL(_security); SYSCTL_DECL(_security_bsd); +#ifdef EXT_RESOURCES +SYSCTL_DECL(_clock); +#endif extern char machine[]; extern char osrelease[]; From owner-svn-src-all@freebsd.org Sun Mar 5 07:46:50 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4D85CCFA7A4; Sun, 5 Mar 2017 07:46:50 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EB4561F07; Sun, 5 Mar 2017 07:46:49 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v257knI3040682; Sun, 5 Mar 2017 07:46:49 GMT (envelope-from avg@FreeBSD.org) Received: (from avg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v257knU2040681; Sun, 5 Mar 2017 07:46:49 GMT (envelope-from avg@FreeBSD.org) Message-Id: <201703050746.v257knU2040681@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avg set sender to avg@FreeBSD.org using -f From: Andriy Gapon Date: Sun, 5 Mar 2017 07:46:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314700 - head/sys/x86/x86 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 07:46:50 -0000 Author: avg Date: Sun Mar 5 07:46:48 2017 New Revision: 314700 URL: https://svnweb.freebsd.org/changeset/base/314700 Log: mca: fix up couple of issues introduced with amd thresholding in r314636 1. There a was a typo in one place where the processor family is checked (16 vs 0x16). Now the checks are consolidated in a single function. 2. Instead of an array of struct amd_et_state objects the code allocated an array of pointers. That was no problem on amd64 where the sizes are the same, but could be a problem on i386. Reported by: tuexen and others Tested by: tuexen (earlier version of the fix) Pointyhat to: avg MFC after: 5 days X-MFC with: r314636 Modified: head/sys/x86/x86/mca.c Modified: head/sys/x86/x86/mca.c ============================================================================== --- head/sys/x86/x86/mca.c Sun Mar 5 07:13:29 2017 (r314699) +++ head/sys/x86/x86/mca.c Sun Mar 5 07:46:48 2017 (r314700) @@ -128,6 +128,13 @@ static struct amd_et_state *amd_et_state static int cmc_throttle = 60; /* Time in seconds to throttle CMCI. */ static int amd_elvt = -1; + +static inline bool +amd_thresholding_supported(void) +{ + return (cpu_vendor_id == CPU_VENDOR_AMD && + CPUID_TO_FAMILY(cpu_id) >= 0x10 && CPUID_TO_FAMILY(cpu_id) <= 0x16); +} #endif static int @@ -809,7 +816,7 @@ static void amd_thresholding_setup(void) { - amd_et_state = malloc((mp_maxid + 1) * sizeof(struct amd_et_state *), + amd_et_state = malloc((mp_maxid + 1) * sizeof(struct amd_et_state), M_MCA, M_WAITOK | M_ZERO); SYSCTL_ADD_PROC(NULL, SYSCTL_STATIC_CHILDREN(_hw_mca), OID_AUTO, "cmc_throttle", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, @@ -854,8 +861,7 @@ mca_setup(uint64_t mcg_cap) #ifdef DEV_APIC if (mcg_cap & MCG_CAP_CMCI_P) cmci_setup(); - else if (cpu_vendor_id == CPU_VENDOR_AMD && - CPUID_TO_FAMILY(cpu_id) >= 0x10 && CPUID_TO_FAMILY(cpu_id) <= 16) + else if (amd_thresholding_supported()) amd_thresholding_setup(); #endif } @@ -1095,9 +1101,7 @@ _mca_init(int boot) * At the moment only the DRAM Error Threshold Group is * supported. */ - if (cpu_vendor_id == CPU_VENDOR_AMD && - CPUID_TO_FAMILY(cpu_id) >= 0x10 && - CPUID_TO_FAMILY(cpu_id) <= 0x16 && + if (amd_thresholding_supported() && (mcg_cap & MCG_CAP_COUNT) >= 4) { if (boot) amd_thresholding_init(); From owner-svn-src-all@freebsd.org Sun Mar 5 10:15:18 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A0B13CF9BD3; Sun, 5 Mar 2017 10:15:18 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 80FDC12E9; Sun, 5 Mar 2017 10:15:18 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: by freefall.freebsd.org (Postfix, from userid 1235) id D2C46301B; Sun, 5 Mar 2017 10:15:17 +0000 (UTC) Date: Sun, 5 Mar 2017 11:15:17 +0100 From: Baptiste Daroussin To: "Rodney W. Grimes" Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314693 - head/usr.sbin/rmt Message-ID: <20170305101517.abhgspc47mrdbdwb@ivaldir.net> References: <201703050409.v2549IwK048766@repo.freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="cz4gnhkzd6qmtyk7" Content-Disposition: inline In-Reply-To: <201703050409.v2549IwK048766@repo.freebsd.org> User-Agent: NeoMutt/20170225 (1.8.0) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 10:15:18 -0000 --cz4gnhkzd6qmtyk7 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Mar 05, 2017 at 04:09:18AM +0000, Rodney W. Grimes wrote: > Author: rgrimes > Date: Sun Mar 5 04:09:18 2017 > New Revision: 314693 > URL: https://svnweb.freebsd.org/changeset/base/314693 >=20 > Log: > Change /etc/rmt symlink from absolute to relative path, > correcting the mistake made in r6499 > =20 > Approved by: grehan > MFC after: 1 week >=20 > Modified: > head/usr.sbin/rmt/Makefile >=20 > Modified: head/usr.sbin/rmt/Makefile > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > --- head/usr.sbin/rmt/Makefile Sun Mar 5 04:02:47 2017 (r314692) > +++ head/usr.sbin/rmt/Makefile Sun Mar 5 04:09:18 2017 (r314693) > @@ -7,6 +7,6 @@ MAN=3D rmt.8 > # called from /usr/src/etc/Makefile > etc-rmt: > rm -f ${DESTDIR}/etc/rmt > - ln -s ${BINDIR}/rmt ${DESTDIR}/etc/rmt > + ln -s ..${BINDIR}/rmt ${DESTDIR}/etc/rmt I think this should be ${INSTALL_RSYMLINK} ${BINDIR}/rmt ${DESTDIR}/etc/rmt The rm -f before can then be removed, the symlink will be relative and the METALOG will be respected=20 Best regards, Bapt --cz4gnhkzd6qmtyk7 Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEgOTj3suS2urGXVU3Y4mL3PG3PloFAli75TMACgkQY4mL3PG3 PlpthA//cSvBLkecIA1zXbBUam+mWJcHzzlosaSkrfbzIE7DaEwMh1IbbZp4q2vW SoCux2DDySi1zoBioXg2bYCviSM9KFldC5BYslDlJGhK0V9ykpVKjt2IlVLBFpng GLdlNjtKrNRFdvAHvqn/UNlWNgKln0DB8bUgPfZS/NlbMEnx/NFBVraV6e2DbZmY nnDe/zeR/iC4ga9mJmXMgJ1NDbXOHX49oTTkC8OQx/unJ1CCsesbrZEBHz0Figys XnHMjC2lFi+n8GysanTqJz5wzSip3wOxdWG8q+yOCvAfa2PB56ur71jiMRUzBLGn tSIDBUK1W3ffy+tqPhyIKp62KpLcI+f6Cbd3i1trO5ZFz7PFMy+KPkcEva1KrCJS N05Cq/ECKEQs9apn86HV6sOO+pHFp9K8w4PmkIfQspIFZxTnJhnhFg6g8ORaVN43 LQMkzr222vFboZJ7U4vYLDvJlDhyl28x53vO9KMd9z+RLhP+18ZKu2b8YOg/tIXM aBS1asLYztf/QP1Nsa8iO5GIS+vz1h79w5+wYe1puMQUOEPDOKoOxt2tvsm6TrrA 9+WbeVIyc9v1RDPwTkd4WzpIcN9463gQXlrbEYJm2VjTW1nDukfpCS8+sCdIkUr5 yY2FcS8QmIUwOI7rNByvF7HEgSJHKBCFyHBsnVXycvxGEJFBCLk= =vtsa -----END PGP SIGNATURE----- --cz4gnhkzd6qmtyk7-- From owner-svn-src-all@freebsd.org Sun Mar 5 12:06:47 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3248ECFA938; Sun, 5 Mar 2017 12:06:47 +0000 (UTC) (envelope-from des@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F34CA137A; Sun, 5 Mar 2017 12:06:46 +0000 (UTC) (envelope-from des@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25C6kWb047950; Sun, 5 Mar 2017 12:06:46 GMT (envelope-from des@FreeBSD.org) Received: (from des@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25C6kU7047949; Sun, 5 Mar 2017 12:06:46 GMT (envelope-from des@FreeBSD.org) Message-Id: <201703051206.v25C6kU7047949@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: des set sender to des@FreeBSD.org using -f From: =?UTF-8?Q?Dag-Erling_Sm=c3=b8rgrav?= Date: Sun, 5 Mar 2017 12:06:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314701 - head/lib/libfetch X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 12:06:47 -0000 Author: des Date: Sun Mar 5 12:06:45 2017 New Revision: 314701 URL: https://svnweb.freebsd.org/changeset/base/314701 Log: Fix partial requests (used by fetch -r) when the requested file is already complete. Since 416 is an error code, any Content-Range header in the response would refer to the error message, not the requested document, so relying on the value of size when we know we got a 416 is wrong. Instead, just verify that offset == 0 and assume that we've reached the end of the document (if offset > 0, we did not request a range, and the server is screwing with us). Note that we cannot distinguish between reaching the end and going past it, but that is a flaw in the protocol, not in the code, so we just have to assume that the caller knows what it's doing. A smart caller would request an offset slightly before what it believes is the end and compare the result to what is already in the file. PR: 212065 Reported by: mandree MFC after: 3 weeks Modified: head/lib/libfetch/http.c Modified: head/lib/libfetch/http.c ============================================================================== --- head/lib/libfetch/http.c Sun Mar 5 07:46:48 2017 (r314700) +++ head/lib/libfetch/http.c Sun Mar 5 12:06:45 2017 (r314701) @@ -1925,7 +1925,7 @@ http_request_body(struct url *URL, const /* requested range not satisfiable */ if (conn->err == HTTP_BAD_RANGE) { - if (url->offset == size && url->length == 0) { + if (url->offset > 0 && url->length == 0) { /* asked for 0 bytes; fake it */ offset = url->offset; clength = -1; From owner-svn-src-all@freebsd.org Sun Mar 5 13:14:19 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B0AB9CF8F6F; Sun, 5 Mar 2017 13:14:19 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 800C0141E; Sun, 5 Mar 2017 13:14:19 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25DEIsg076075; Sun, 5 Mar 2017 13:14:18 GMT (envelope-from kp@FreeBSD.org) Received: (from kp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25DEIj6076074; Sun, 5 Mar 2017 13:14:18 GMT (envelope-from kp@FreeBSD.org) Message-Id: <201703051314.v25DEIj6076074@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org using -f From: Kristof Provost Date: Sun, 5 Mar 2017 13:14:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314702 - stable/11/sys/netpfil/pf X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 13:14:19 -0000 Author: kp Date: Sun Mar 5 13:14:18 2017 New Revision: 314702 URL: https://svnweb.freebsd.org/changeset/base/314702 Log: pf: Fix a crash in low-memory situations If the call to pf_state_key_clone() in pf_get_translation() fails (i.e. there's no more memory for it) it frees skp. This is wrong, because skp is a pf_state_key **, so we need to free *skp, as is done later in the function. Getting it wrong means we try to free a stack variable of the calling pf_test_rule() function, and we panic. Modified: stable/11/sys/netpfil/pf/pf_lb.c Modified: stable/11/sys/netpfil/pf/pf_lb.c ============================================================================== --- stable/11/sys/netpfil/pf/pf_lb.c Sun Mar 5 12:06:45 2017 (r314701) +++ stable/11/sys/netpfil/pf/pf_lb.c Sun Mar 5 13:14:18 2017 (r314702) @@ -553,7 +553,7 @@ pf_get_translation(struct pf_pdesc *pd, return (NULL); *nkp = pf_state_key_clone(*skp); if (*nkp == NULL) { - uma_zfree(V_pf_state_key_z, skp); + uma_zfree(V_pf_state_key_z, *skp); *skp = NULL; return (NULL); } From owner-svn-src-all@freebsd.org Sun Mar 5 13:19:31 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DC337CF9103; Sun, 5 Mar 2017 13:19:31 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 222C316DC; Sun, 5 Mar 2017 13:19:31 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v25DJSkt082917; Sun, 5 Mar 2017 05:19:29 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v25DJSGt082916; Sun, 5 Mar 2017 05:19:28 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703051319.v25DJSGt082916@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314693 - head/usr.sbin/rmt In-Reply-To: <20170305101517.abhgspc47mrdbdwb@ivaldir.net> To: Baptiste Daroussin Date: Sun, 5 Mar 2017 05:19:28 -0800 (PST) CC: "Rodney W. Grimes" , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 13:19:32 -0000 -- Start of PGP signed section. > On Sun, Mar 05, 2017 at 04:09:18AM +0000, Rodney W. Grimes wrote: > > Author: rgrimes > > Date: Sun Mar 5 04:09:18 2017 > > New Revision: 314693 > > URL: https://svnweb.freebsd.org/changeset/base/314693 > > > > Log: > > Change /etc/rmt symlink from absolute to relative path, > > correcting the mistake made in r6499 > > > > Approved by: grehan > > MFC after: 1 week > > > > Modified: > > head/usr.sbin/rmt/Makefile > > > > Modified: head/usr.sbin/rmt/Makefile > > ============================================================================== > > --- head/usr.sbin/rmt/Makefile Sun Mar 5 04:02:47 2017 (r314692) > > +++ head/usr.sbin/rmt/Makefile Sun Mar 5 04:09:18 2017 (r314693) > > @@ -7,6 +7,6 @@ MAN= rmt.8 > > # called from /usr/src/etc/Makefile > > etc-rmt: > > rm -f ${DESTDIR}/etc/rmt > > - ln -s ${BINDIR}/rmt ${DESTDIR}/etc/rmt > > + ln -s ..${BINDIR}/rmt ${DESTDIR}/etc/rmt > > I think this should be ${INSTALL_RSYMLINK} ${BINDIR}/rmt ${DESTDIR}/etc/rmt find /usr/src | xargs grep INSTALL_RSYM (no results) Sorry, no prior work does this, perhaps once I get done sweeping the absolutes out of the tree (about 10 or 15 IIRC) a pass can be made to sweep all ln -s out and propage this internal bsd.lib.mk function out to the rest of the source tree? find /usr/share/mk/ | xargs grep INSTALL_RSYM /usr/share/mk/bsd.own.mk:INSTALL_RSYMLINK?= ${INSTALL} ${RSYMLINK} /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_ARGS},development} ${SHLIB_NAME} ${DESTDIR}${_LIBDIR}/${SHLIB_LINK} /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_ARGS},development} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ This is called from within bsd.lib.mk only, do we want to use this for all symbolics links in the source tree? If so I would of though the person adding this functionality to the .mk files would of made a tree sweeping looking for that and making those changes as well. > The rm -f before can then be removed, the symlink will be relative and the > METALOG will be respected METALOG? The only documentation I can find on this seems to be part of src/tootls/tools/makeroot.8. It appears that something in Makefile.inc uses it and there are references to it in etc/Makefile. Where is this METALOG documented? > Best regards, > Bapt -- End of PGP section, PGP failed! -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Sun Mar 5 13:36:39 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 861C3CF962F; Sun, 5 Mar 2017 13:36:39 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3EC1F10E5; Sun, 5 Mar 2017 13:36:39 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v25DabCu083004; Sun, 5 Mar 2017 05:36:37 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v25DabUu083003; Sun, 5 Mar 2017 05:36:37 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703051336.v25DabUu083003@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314693 - head/usr.sbin/rmt In-Reply-To: <201703051319.v25DJSGt082916@pdx.rh.CN85.dnsmgr.net> To: rgrimes@freebsd.org Date: Sun, 5 Mar 2017 05:36:37 -0800 (PST) CC: Baptiste Daroussin , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 13:36:39 -0000 > -- Start of PGP signed section. > > On Sun, Mar 05, 2017 at 04:09:18AM +0000, Rodney W. Grimes wrote: > > > Author: rgrimes > > > Date: Sun Mar 5 04:09:18 2017 > > > New Revision: 314693 > > > URL: https://svnweb.freebsd.org/changeset/base/314693 > > > > > > Log: > > > Change /etc/rmt symlink from absolute to relative path, > > > correcting the mistake made in r6499 > > > > > > Approved by: grehan > > > MFC after: 1 week > > > > > > Modified: > > > head/usr.sbin/rmt/Makefile > > > > > > Modified: head/usr.sbin/rmt/Makefile > > > ============================================================================== > > > --- head/usr.sbin/rmt/Makefile Sun Mar 5 04:02:47 2017 (r314692) > > > +++ head/usr.sbin/rmt/Makefile Sun Mar 5 04:09:18 2017 (r314693) > > > @@ -7,6 +7,6 @@ MAN= rmt.8 > > > # called from /usr/src/etc/Makefile > > > etc-rmt: > > > rm -f ${DESTDIR}/etc/rmt > > > - ln -s ${BINDIR}/rmt ${DESTDIR}/etc/rmt > > > + ln -s ..${BINDIR}/rmt ${DESTDIR}/etc/rmt > > > > I think this should be ${INSTALL_RSYMLINK} ${BINDIR}/rmt ${DESTDIR}/etc/rmt > > find /usr/src | xargs grep INSTALL_RSYM > (no results) Error in actual command here, that was actually find /usr/src -name Makefile | xargs grep INSTALL_RSYM > > Sorry, no prior work does this, perhaps once I get done sweeping the > absolutes out of the tree (about 10 or 15 IIRC) a pass can be made to > sweep all ln -s out and propage this internal bsd.lib.mk function out > to the rest of the source tree? > > find /usr/share/mk/ | xargs grep INSTALL_RSYM > /usr/share/mk/bsd.own.mk:INSTALL_RSYMLINK?= ${INSTALL} ${RSYMLINK} > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_ARGS},development} ${SHLIB_NAME} ${DESTDIR}${_LIBDIR}/${SHLIB_LINK} > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_ARGS},development} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ > > This is called from within bsd.lib.mk only, do we want to use this for > all symbolics links in the source tree? If so I would of though the > person adding this functionality to the .mk files would of made > a tree sweeping looking for that and making those changes as well. > > > The rm -f before can then be removed, the symlink will be relative and the > > METALOG will be respected > > METALOG? The only documentation I can find on this seems to be part of > src/tootls/tools/makeroot.8. > > It appears that something in Makefile.inc uses it and there are references > to it in etc/Makefile. > > Where is this METALOG documented? > > > Best regards, > > Bapt > -- End of PGP section, PGP failed! > > -- > Rod Grimes rgrimes@freebsd.org > > -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Sun Mar 5 13:42:27 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 824EBCF9994; Sun, 5 Mar 2017 13:42:27 +0000 (UTC) (envelope-from bapt@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 623C41696; Sun, 5 Mar 2017 13:42:27 +0000 (UTC) (envelope-from bapt@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1235) id B40CC5430; Sun, 5 Mar 2017 13:42:26 +0000 (UTC) Date: Sun, 5 Mar 2017 14:42:26 +0100 From: Baptiste Daroussin To: rgrimes@freebsd.org Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314693 - head/usr.sbin/rmt Message-ID: <20170305134226.px4ivdtjjppbgiyf@ivaldir.net> References: <20170305101517.abhgspc47mrdbdwb@ivaldir.net> <201703051319.v25DJSGt082916@pdx.rh.CN85.dnsmgr.net> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="rtnlwvdgxtcumpss" Content-Disposition: inline In-Reply-To: <201703051319.v25DJSGt082916@pdx.rh.CN85.dnsmgr.net> User-Agent: NeoMutt/20170225 (1.8.0) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 13:42:27 -0000 --rtnlwvdgxtcumpss Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Mar 05, 2017 at 05:19:28AM -0800, Rodney W. Grimes wrote: > -- Start of PGP signed section. > > On Sun, Mar 05, 2017 at 04:09:18AM +0000, Rodney W. Grimes wrote: > > > Author: rgrimes > > > Date: Sun Mar 5 04:09:18 2017 > > > New Revision: 314693 > > > URL: https://svnweb.freebsd.org/changeset/base/314693 > > >=20 > > > Log: > > > Change /etc/rmt symlink from absolute to relative path, > > > correcting the mistake made in r6499 > > > =20 > > > Approved by: grehan > > > MFC after: 1 week > > >=20 > > > Modified: > > > head/usr.sbin/rmt/Makefile > > >=20 > > > Modified: head/usr.sbin/rmt/Makefile > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D > > > --- head/usr.sbin/rmt/Makefile Sun Mar 5 04:02:47 2017 (r314692) > > > +++ head/usr.sbin/rmt/Makefile Sun Mar 5 04:09:18 2017 (r314693) > > > @@ -7,6 +7,6 @@ MAN=3D rmt.8 > > > # called from /usr/src/etc/Makefile > > > etc-rmt: > > > rm -f ${DESTDIR}/etc/rmt > > > - ln -s ${BINDIR}/rmt ${DESTDIR}/etc/rmt > > > + ln -s ..${BINDIR}/rmt ${DESTDIR}/etc/rmt > >=20 > > I think this should be ${INSTALL_RSYMLINK} ${BINDIR}/rmt ${DESTDIR}/etc= /rmt >=20 > find /usr/src | xargs grep INSTALL_RSYM > (no results) >=20 > Sorry, no prior work does this, perhaps once I get done sweeping the > absolutes out of the tree (about 10 or 15 IIRC) a pass can be made to > sweep all ln -s out and propage this internal bsd.lib.mk function out > to the rest of the source tree? There is also no Makefiles that do ls -sf directly beside that one. INSTALL_RSYMLINK has exactly be done to be use everywhere it is needed. (I = wrote it for that exact reason :)) >=20 > find /usr/share/mk/ | xargs grep INSTALL_RSYM > /usr/share/mk/bsd.own.mk:INSTALL_RSYMLINK?=3D ${INSTALL} ${RSYMLINK} > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_ARG= S},development} ${SHLIB_NAME} ${DESTDIR}${_LIBDIR}/${SHLIB_LINK} > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTDIR= }${_SHLIBDIR}/${SHLIB_NAME} \ > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_ARG= S},development} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTDIR= }${_SHLIBDIR}/${SHLIB_NAME} \ >=20 > This is called from within bsd.lib.mk only, do we want to use this for > all symbolics links in the source tree? If so I would of though the > person adding this functionality to the .mk files would of made > a tree sweeping looking for that and making those changes as well. When I did it only bsd.lib.mk was using it iirc >=20 > > The rm -f before can then be removed, the symlink will be relative and = the > > METALOG will be respected=20 >=20 > METALOG? The only documentation I can find on this seems to be part of > src/tootls/tools/makeroot.8. >=20 > It appears that something in Makefile.inc uses it and there are references > to it in etc/Makefile. >=20 > Where is this METALOG documented? =20 It is really badly documented and should be :( it is a mtree file that is generated when built is done via -DNO_ROOT for the purpose of being able to generate disk with makefs as a user I have reused it for packaging base. This was designed IIRC by adrian and brooks iirc. Embedded people relies a lot on it. Everything not going though the install(1) command is not tracked that is w= hy this is an issue. Best regards, Bapt --rtnlwvdgxtcumpss Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEgOTj3suS2urGXVU3Y4mL3PG3PloFAli8Fb4ACgkQY4mL3PG3 PlovAg/+INkPWSrdYXoGOdJYa656PoAyL0B8KCGQXIzG6HUFbu9DDcBAsNT9DhQ6 0m5vOY1YrUbCwYpp1Sm2XYyC4viugSjxYRqTGH+pQwXysnT0pdcm/zjIsW3/M15R mKMPgGWjX2ZBv6m60JBgqXGxT9J3/E6dRfCn3xKUMN8cvgs51ZkFW1drJlZkH5OD ZXepw2792z3XqJ+dlIlfzSDUDEYbrawwY75gjLPersNactnvYMZVwcAoB9EvRLiA UIk04piNT1hLwz+yaXBERTSAYXSJvlIm5wX7c1lTJsiYzKNR1AzwH/eUZT9FwqWT WJfICUih07AvKuvDyal3NcCJzesM2kUOeGMMBmR2odY2UrdjERklKT3B28EmeLNk OhrkLQGmBI7/tWQQDsGsaXeGxnqR6T+2D3dKmqKX4XgwozCa9Hyor1sZe+NSRJkc aTii6o8RjMKBXPqHyrZ/BJMenabjIxjYrxstPG13ICqBy3S+j+oSa1Cp0fApEpQ6 ZFxC7tqduC0txlZpJYppuNuU+807nq2ejvNxKhVGUIHmtvmS95ZWrV1USjOf6Hf1 WKA9J0Fc/Je+rodWXe94o1mZUTD4kkTsS+mrBAVfd5bDmHjxXuMn/Zt8YvXygQrT Z/XnqVyms7elH4Rf1NpO0e82itLNqcgS7OxB8rAXasEbvONegcg= =thav -----END PGP SIGNATURE----- --rtnlwvdgxtcumpss-- From owner-svn-src-all@freebsd.org Sun Mar 5 14:40:57 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 15B8BCFA965; Sun, 5 Mar 2017 14:40:57 +0000 (UTC) (envelope-from jilles@stack.nl) Received: from mailout.stack.nl (mailout05.stack.nl [IPv6:2001:610:1108:5010::202]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mailout.stack.nl", Issuer "CA Cert Signing Authority" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id BAA291516; Sun, 5 Mar 2017 14:40:56 +0000 (UTC) (envelope-from jilles@stack.nl) Received: from snail.stack.nl (snail.stack.nl [IPv6:2001:610:1108:5010::131]) by mailout.stack.nl (Postfix) with ESMTP id A707536; Sun, 5 Mar 2017 15:40:45 +0100 (CET) Received: by snail.stack.nl (Postfix, from userid 1677) id 941A528497; Sun, 5 Mar 2017 15:40:45 +0100 (CET) Date: Sun, 5 Mar 2017 15:40:45 +0100 From: Jilles Tjoelker To: Bruce Evans Cc: Konstantin Belousov , John Baldwin , Pedro Giffuni , Slawa Olhovchenkov , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314669 - head/sys/i386/conf Message-ID: <20170305144045.GA15347@stack.nl> References: <201703041504.v24F4HMh023937@repo.freebsd.org> <20170304211611.GW2092@kib.kiev.ua> <1951800.W2d2k3eamI@ralph.baldwin.cx> <20170304231822.GA30979@kib.kiev.ua> <20170305111842.K1472@besplex.bde.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170305111842.K1472@besplex.bde.org> User-Agent: Mutt/1.5.21 (2010-09-15) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 14:40:57 -0000 On Sun, Mar 05, 2017 at 11:35:26AM +1100, Bruce Evans wrote: > On Sun, 5 Mar 2017, Konstantin Belousov wrote: > > On Sat, Mar 04, 2017 at 02:54:56PM -0800, John Baldwin wrote: > >> On Saturday, March 04, 2017 11:16:11 PM Konstantin Belousov wrote: > >>> On Sat, Mar 04, 2017 at 03:49:52PM -0500, Pedro Giffuni wrote: > >>>> The number came out from an old posting involving buildworld times, which I can???t find now :(. > >>>> Things seem to have changed a lot: it was surely using GCC back then, I don???t believe clang does much distinction about 486 at all. > >>>> > >>>> BTW, does it make sense to keep i586 in the configuration still? Both i486 and i586 were once removed but later re-instated in r205336. > >>>> > >>> What did make significant impact on 32bit shared libraries some time ago > >>> was to compile them with -mtune=i686. Default PIC prologue effectively > >>> neutered return stack predictor, adding uneccessary overhead to already > >>> expensive PIC code. I think that this is even measureable, i.e. it might > >>> give >= 5% of difference. > I now use -mtune=athlon-xp (and no other -m CFLAGS) to get the same effect > with minor additional optimizations/pessimizations for athlon-xp. I forget > if I switched to this before or after getting jhb to not use > -mtune=pentiumpro. Maybe we didn't know at the time that the pentiumpro > optimizations affected little more than this PIC problem. > >>> I did not rechecked modern compilers WRT the generated PIC code, > >>> but I doubt that the thing changed recently. > >>> Several notes: -mtune is not -march, i.e. the code would be still targeted > >>> for 486 instruction set, but scheduling is optimized for more modern CPUs. > >>> Also, recent gcc puts specific meaning into -mtune=i686, interpreting it > >>> as request for scheduling for generic modern CPUs. We already compile > >>> 32bit compat libs on amd64 with -march=i686. > >>> Working on this stuff would be much more useful than tweaking > >>> kernel config for CPU detection. > >> Hmm, I originally wanted to use -mtune=i686 (spelled as > >> -mcpu=pentiumpro) on i386 builds for this reason, but I removed it > >> at bde@'s request in r125252. I would be happy to go back to adding > >> -mtune for i386 when CPUTYPE isn't specified. > > I just rechecked. > > gcc, at least 4.9 and 6.3, generate 'right' prologue, i.e. > > call __x86.get_pc_thunk.cx (ecx or whatever register > > which is used to address GOT) > > __x86.get_pc_thunk.cx: > > movl (%esp), %ecx > > ret > > even when compiling for -march=i486. > > OTOH, clang 3.9.1 uses > > calll .L0 > > .L0: popl %eax > > to get the base even for native nehalem and newer CPUs. > > So indeed there is no reason to bother. gcc become too good to require any > > tuning, and clang generates unoptimal code even when hinted. I did not > > checked 4.0. > The old method might actually be best for the original i386. It is > 1 byte larger per call, but 1 instruction shorter by dynamic count. > Original i386 has poor instruction fetch bandwidth and no caches and > to help or harm. Even the (%esp) address mode can cost a cycle on > original i386, and setting up a frame pointer to access the stack would > be much worse, while on modern x86 the frame pointer might cost nothing > since it can be done in parallel. > Maybe some newer CPUs have better return address predictors so the old > method is best for them too. > It is only clear that generic optimizations should use the new method, > since CPU manufacturers won't pessimize it since it looks like a normal > function call. I tried a naive benchmark of a million iterations on a CPU: Intel(R) Core(TM) i5-3330 CPU @ 3.00GHz (2993.26-MHz K8-class CPU) Origin="GenuineIntel" Id=0x306a9 Family=0x6 Model=0x3a Stepping=9 and a subroutine containing the old method is almost as fast as an empty subroutine (3.8ns including loop overhead), while a subroutine containing the new method is slower (6.3 ns including loop overhead). Apparently this CPU knows that a call to the next instruction will not be returned to. Likewise, the old method is faster on a hw.model: Intel(R) Xeon(R) CPU X5675 @ 3.07GHz On the other hand, the old method is slower on an old hw.model: Intel(R) Core(TM)2 CPU 6400 @ 2.13GHz Apparently, LLVM has decided to trade considerably worse performance on CPUs such as Core2 for better performance on newer and older CPUs. What is somewhat surprising is that there is no way to use the GCC method. Then again, LLVM does not support bypassing the PLT either (loading the address from the GOT directly). Given that the old method is quite commonly used, it does not seem very likely that CPU manufacturers will pessimize it in future. -- Jilles Tjoelker From owner-svn-src-all@freebsd.org Sun Mar 5 15:11:48 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 53356CF92A3; Sun, 5 Mar 2017 15:11:48 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from vps1.elischer.org (vps1.elischer.org [204.109.63.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "vps1.elischer.org", Issuer "CA Cert Signing Authority" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 21D7F1566; Sun, 5 Mar 2017 15:11:47 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from Julian-MBP3.local (106-68-109-205.dyn.iinet.net.au [106.68.109.205]) (authenticated bits=0) by vps1.elischer.org (8.15.2/8.15.2) with ESMTPSA id v25FBf6X043253 (version=TLSv1.2 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Sun, 5 Mar 2017 07:11:44 -0800 (PST) (envelope-from julian@freebsd.org) Subject: Re: svn commit: r314693 - head/usr.sbin/rmt To: rgrimes@freebsd.org, Baptiste Daroussin References: <201703051319.v25DJSGt082916@pdx.rh.CN85.dnsmgr.net> Cc: svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Julian Elischer Message-ID: <761e6ecf-89aa-6356-4650-08f3c5c9d6a8@freebsd.org> Date: Sun, 5 Mar 2017 23:11:35 +0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <201703051319.v25DJSGt082916@pdx.rh.CN85.dnsmgr.net> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 15:11:48 -0000 On 5/3/17 9:19 pm, Rodney W. Grimes wrote: > -- Start of PGP signed section. >> On Sun, Mar 05, 2017 at 04:09:18AM +0000, Rodney W. Grimes wrote: >>> Author: rgrimes >>> Date: Sun Mar 5 04:09:18 2017 >>> New Revision: 314693 >>> URL: https://svnweb.freebsd.org/changeset/base/314693 >>> >>> Log: >>> Change /etc/rmt symlink from absolute to relative path, >>> correcting the mistake made in r6499 >>> >>> Approved by: grehan >>> MFC after: 1 week >>> >>> Modified: >>> head/usr.sbin/rmt/Makefile >>> >>> Modified: head/usr.sbin/rmt/Makefile >>> ============================================================================== >>> --- head/usr.sbin/rmt/Makefile Sun Mar 5 04:02:47 2017 (r314692) >>> +++ head/usr.sbin/rmt/Makefile Sun Mar 5 04:09:18 2017 (r314693) >>> @@ -7,6 +7,6 @@ MAN= rmt.8 >>> # called from /usr/src/etc/Makefile >>> etc-rmt: >>> rm -f ${DESTDIR}/etc/rmt >>> - ln -s ${BINDIR}/rmt ${DESTDIR}/etc/rmt >>> + ln -s ..${BINDIR}/rmt ${DESTDIR}/etc/rmt >> I think this should be ${INSTALL_RSYMLINK} ${BINDIR}/rmt ${DESTDIR}/etc/rmt > find /usr/src | xargs grep INSTALL_RSYM > (no results) > > Sorry, no prior work does this, perhaps once I get done sweeping the > absolutes out of the tree (about 10 or 15 IIRC) a pass can be made to > sweep all ln -s out and propage this internal bsd.lib.mk function out > to the rest of the source tree? > > find /usr/share/mk/ | xargs grep INSTALL_RSYM > /usr/share/mk/bsd.own.mk:INSTALL_RSYMLINK?= ${INSTALL} ${RSYMLINK} > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_ARGS},development} ${SHLIB_NAME} ${DESTDIR}${_LIBDIR}/${SHLIB_LINK} > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_ARGS},development} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ > > This is called from within bsd.lib.mk only, do we want to use this for > all symbolics links in the source tree? If so I would of though the > person adding this functionality to the .mk files would of made > a tree sweeping looking for that and making those changes as well. I've been playing around with libpathconv which converts abs paths to relative paths etc. I'w working on the patch to ln to add the -a and -r options that some other versions have. you can specify an absolute path but ln -r (abspath) will generate a relative link. my target was the exact absolute symlinks that you are targeting. Work commitments have made me lay down tools but this reminds me to pick it up again. (libpathconv is in the tree at /lib/libpathconv, but I got interrupted half way through.. I'll do the other half.. >> The rm -f before can then be removed, the symlink will be relative and the >> METALOG will be respected > METALOG? The only documentation I can find on this seems to be part of > src/tootls/tools/makeroot.8. > > It appears that something in Makefile.inc uses it and there are references > to it in etc/Makefile. > > Where is this METALOG documented? > >> Best regards, >> Bapt > -- End of PGP section, PGP failed! > From owner-svn-src-all@freebsd.org Sun Mar 5 15:20:49 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7DF4DCF95DD; Sun, 5 Mar 2017 15:20:49 +0000 (UTC) (envelope-from bapt@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5D98A180A; Sun, 5 Mar 2017 15:20:49 +0000 (UTC) (envelope-from bapt@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1235) id AF9CF655D; Sun, 5 Mar 2017 15:20:48 +0000 (UTC) Date: Sun, 5 Mar 2017 16:20:48 +0100 From: Baptiste Daroussin To: Julian Elischer Cc: rgrimes@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314693 - head/usr.sbin/rmt Message-ID: <20170305152048.gyilvy7qscqg45hr@ivaldir.net> References: <201703051319.v25DJSGt082916@pdx.rh.CN85.dnsmgr.net> <761e6ecf-89aa-6356-4650-08f3c5c9d6a8@freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="37dy46wovsinn4rj" Content-Disposition: inline In-Reply-To: <761e6ecf-89aa-6356-4650-08f3c5c9d6a8@freebsd.org> User-Agent: NeoMutt/20170225 (1.8.0) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 15:20:49 -0000 --37dy46wovsinn4rj Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Mar 05, 2017 at 11:11:35PM +0800, Julian Elischer wrote: > On 5/3/17 9:19 pm, Rodney W. Grimes wrote: > > -- Start of PGP signed section. > > > On Sun, Mar 05, 2017 at 04:09:18AM +0000, Rodney W. Grimes wrote: > > > > Author: rgrimes > > > > Date: Sun Mar 5 04:09:18 2017 > > > > New Revision: 314693 > > > > URL: https://svnweb.freebsd.org/changeset/base/314693 > > > >=20 > > > > Log: > > > > Change /etc/rmt symlink from absolute to relative path, > > > > correcting the mistake made in r6499 > > > > Approved by: grehan > > > > MFC after: 1 week > > > >=20 > > > > Modified: > > > > head/usr.sbin/rmt/Makefile > > > >=20 > > > > Modified: head/usr.sbin/rmt/Makefile > > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D > > > > --- head/usr.sbin/rmt/Makefile Sun Mar 5 04:02:47 2017 (r314692) > > > > +++ head/usr.sbin/rmt/Makefile Sun Mar 5 04:09:18 2017 (r314693) > > > > @@ -7,6 +7,6 @@ MAN=3D rmt.8 > > > > # called from /usr/src/etc/Makefile > > > > etc-rmt: > > > > rm -f ${DESTDIR}/etc/rmt > > > > - ln -s ${BINDIR}/rmt ${DESTDIR}/etc/rmt > > > > + ln -s ..${BINDIR}/rmt ${DESTDIR}/etc/rmt > > > I think this should be ${INSTALL_RSYMLINK} ${BINDIR}/rmt ${DESTDIR}/e= tc/rmt > > find /usr/src | xargs grep INSTALL_RSYM > > (no results) > >=20 > > Sorry, no prior work does this, perhaps once I get done sweeping the > > absolutes out of the tree (about 10 or 15 IIRC) a pass can be made to > > sweep all ln -s out and propage this internal bsd.lib.mk function out > > to the rest of the source tree? > >=20 > > find /usr/share/mk/ | xargs grep INSTALL_RSYM > > /usr/share/mk/bsd.own.mk:INSTALL_RSYMLINK?=3D ${INSTALL} ${RSYMLINK} > > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_A= RGS},development} ${SHLIB_NAME} ${DESTDIR}${_LIBDIR}/${SHLIB_LINK} > > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTD= IR}${_SHLIBDIR}/${SHLIB_NAME} \ > > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_A= RGS},development} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ > > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTD= IR}${_SHLIBDIR}/${SHLIB_NAME} \ > >=20 > > This is called from within bsd.lib.mk only, do we want to use this for > > all symbolics links in the source tree? If so I would of though the > > person adding this functionality to the .mk files would of made > > a tree sweeping looking for that and making those changes as well. >=20 > I've been playing around with libpathconv which converts abs paths to > relative paths etc. > I'w working on the patch to ln to add the -a and -r options that some oth= er > versions have. >=20 > you can specify an absolute path but ln -r (abspath) will generate a > relative link. > my target was the exact absolute symlinks that you are targeting. >=20 > Work commitments have made me lay down tools but this reminds me to pick = it > up again. > (libpathconv is in the tree at /lib/libpathconv, but I got interrupted ha= lf > way through.. > I'll do the other half.. But install -l rs does exactly that, why adding a new mechanism? and install works with metalog as stated earlier so for the build system it might be be= tter. Which reminds me multiple people have asked you if it won't be a good idea = to merge your libpathconv into libutil rather that having a new library for ju= st 2 functions. DSO has a price and you haven't replied, will you consider mergi= ng it? Best regards, Bapt --37dy46wovsinn4rj Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEgOTj3suS2urGXVU3Y4mL3PG3PloFAli8LMwACgkQY4mL3PG3 PlpC+BAAzrjbq9gfY3hD228mnJgMuhJhrmRnJ5usffY1FxkEDD40O+S5aJIUuKEi 8lU5jCW4wI7B34aTQczH1Sd/Q7zOxl88pxBlL6gJlvPcx++mYFD0cPRpiJqWetms MZsQYc1ENT2QxpSUK8NJNAUhJSV0T85ywunF3tcckQu2nFGCnapUjc8pytFa9RCg TNOL1e7PSS2EPW7A2IpKFq9syQ7L7YQ0+seg1RU8t1f5VYJQ1S+eCic/WAwLT56l RmTt0kj75sQ3+B8gxD7yNt3SHBBJFhnI5LGXIbV3h4KdPXs4gnQstOl+dAUbwuvS FNexpssui827iKhRKz/LtaaRXIjIIBVKyQr7eWtAvtpdFUJuDZx5KTUfRQnZe8iq 6qjLog2iSC3Qwd7BrfCbPKCBFRcoV6rk3s9Q9wCi0YHBGGO/7xBeyvXHesT97ZAp BpMG+2sZqEPS/GihOd4+/Rblf2x+n2KR6ZiJrPZYPz1eKGIi9iIWDGcby3++wjxu uVEOQJhC1GlGVuEi4R3Gu13WmcFpHAaBsxjmtlfC5qVtvDcMosaSxfJ5GTF5+y4m TDZKCpe/auBISZQliE16UOB76oDYIJk3I6UTqnX2si9h1zEzRw27EqEX137I3Z84 ItLoGVYfDZZB8/lzXhKUwjWC8Xpban0kdzFA0+BoTpTOjBlPTBo= =8ugM -----END PGP SIGNATURE----- --37dy46wovsinn4rj-- From owner-svn-src-all@freebsd.org Sun Mar 5 15:30:48 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0AE67CF9A5E; Sun, 5 Mar 2017 15:30:48 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from vps1.elischer.org (vps1.elischer.org [204.109.63.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "vps1.elischer.org", Issuer "CA Cert Signing Authority" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4D91C1E44; Sun, 5 Mar 2017 15:30:47 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from Julian-MBP3.local (106-68-109-205.dyn.iinet.net.au [106.68.109.205]) (authenticated bits=0) by vps1.elischer.org (8.15.2/8.15.2) with ESMTPSA id v25FUf8B043312 (version=TLSv1.2 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO); Sun, 5 Mar 2017 07:30:45 -0800 (PST) (envelope-from julian@freebsd.org) Subject: Re: svn commit: r314693 - head/usr.sbin/rmt To: Baptiste Daroussin References: <201703051319.v25DJSGt082916@pdx.rh.CN85.dnsmgr.net> <761e6ecf-89aa-6356-4650-08f3c5c9d6a8@freebsd.org> <20170305152048.gyilvy7qscqg45hr@ivaldir.net> Cc: rgrimes@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Julian Elischer Message-ID: Date: Sun, 5 Mar 2017 23:30:36 +0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <20170305152048.gyilvy7qscqg45hr@ivaldir.net> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 15:30:48 -0000 On 5/3/17 11:20 pm, Baptiste Daroussin wrote: > On Sun, Mar 05, 2017 at 11:11:35PM +0800, Julian Elischer wrote: >> On 5/3/17 9:19 pm, Rodney W. Grimes wrote: >>> -- Start of PGP signed section. >>>> On Sun, Mar 05, 2017 at 04:09:18AM +0000, Rodney W. Grimes wrote: >>>>> Author: rgrimes >>>>> Date: Sun Mar 5 04:09:18 2017 >>>>> New Revision: 314693 >>>>> URL: https://svnweb.freebsd.org/changeset/base/314693 >>>>> >>>>> Log: >>>>> Change /etc/rmt symlink from absolute to relative path, >>>>> correcting the mistake made in r6499 >>>>> Approved by: grehan >>>>> MFC after: 1 week >>>>> >>>>> Modified: >>>>> head/usr.sbin/rmt/Makefile >>>>> >>>>> Modified: head/usr.sbin/rmt/Makefile >>>>> ============================================================================== >>>>> --- head/usr.sbin/rmt/Makefile Sun Mar 5 04:02:47 2017 (r314692) >>>>> +++ head/usr.sbin/rmt/Makefile Sun Mar 5 04:09:18 2017 (r314693) >>>>> @@ -7,6 +7,6 @@ MAN= rmt.8 >>>>> # called from /usr/src/etc/Makefile >>>>> etc-rmt: >>>>> rm -f ${DESTDIR}/etc/rmt >>>>> - ln -s ${BINDIR}/rmt ${DESTDIR}/etc/rmt >>>>> + ln -s ..${BINDIR}/rmt ${DESTDIR}/etc/rmt >>>> I think this should be ${INSTALL_RSYMLINK} ${BINDIR}/rmt ${DESTDIR}/etc/rmt >>> find /usr/src | xargs grep INSTALL_RSYM >>> (no results) >>> >>> Sorry, no prior work does this, perhaps once I get done sweeping the >>> absolutes out of the tree (about 10 or 15 IIRC) a pass can be made to >>> sweep all ln -s out and propage this internal bsd.lib.mk function out >>> to the rest of the source tree? >>> >>> find /usr/share/mk/ | xargs grep INSTALL_RSYM >>> /usr/share/mk/bsd.own.mk:INSTALL_RSYMLINK?= ${INSTALL} ${RSYMLINK} >>> /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_ARGS},development} ${SHLIB_NAME} ${DESTDIR}${_LIBDIR}/${SHLIB_LINK} >>> /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ >>> /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_ARGS},development} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ >>> /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ >>> >>> This is called from within bsd.lib.mk only, do we want to use this for >>> all symbolics links in the source tree? If so I would of though the >>> person adding this functionality to the .mk files would of made >>> a tree sweeping looking for that and making those changes as well. >> I've been playing around with libpathconv which converts abs paths to >> relative paths etc. >> I'w working on the patch to ln to add the -a and -r options that some other >> versions have. >> >> you can specify an absolute path but ln -r (abspath) will generate a >> relative link. >> my target was the exact absolute symlinks that you are targeting. >> >> Work commitments have made me lay down tools but this reminds me to pick it >> up again. >> (libpathconv is in the tree at /lib/libpathconv, but I got interrupted half >> way through.. >> I'll do the other half.. > But install -l rs does exactly that, why adding a new mechanism? and install > works with metalog as stated earlier so for the build system it might be better. > > Which reminds me multiple people have asked you if it won't be a good idea to > merge your libpathconv into libutil rather that having a new library for just 2 > functions. DSO has a price and you haven't replied, will you consider merging > it? > > Best regards, > Bapt I will put it in libutil, but don't want to thrash too much so I'll do that with the ln patch. I hadn't thought that was a possibility originally. I need the ln patch myself and there are other systems that have it so I'm happy to do the work. if install can do that I'm happy to hear it. Nice to learn about it.. Does that mean that libpathconv is already somewhere in our system as install is of the programs that was changed in hte initial pathconv release many years ago. From owner-svn-src-all@freebsd.org Sun Mar 5 15:34:34 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0478FCF9C0A; Sun, 5 Mar 2017 15:34:34 +0000 (UTC) (envelope-from mmel@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C5BA61026; Sun, 5 Mar 2017 15:34:33 +0000 (UTC) (envelope-from mmel@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25FYW6u033243; Sun, 5 Mar 2017 15:34:32 GMT (envelope-from mmel@FreeBSD.org) Received: (from mmel@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25FYWUj033242; Sun, 5 Mar 2017 15:34:32 GMT (envelope-from mmel@FreeBSD.org) Message-Id: <201703051534.v25FYWUj033242@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mmel set sender to mmel@FreeBSD.org using -f From: Michal Meloun Date: Sun, 5 Mar 2017 15:34:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314703 - head/sys/arm/nvidia X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 15:34:34 -0000 Author: mmel Date: Sun Mar 5 15:34:32 2017 New Revision: 314703 URL: https://svnweb.freebsd.org/changeset/base/314703 Log: Add support for card detect and write protect gpio pins to Tegra SDHCI. Modified: head/sys/arm/nvidia/tegra_sdhci.c Modified: head/sys/arm/nvidia/tegra_sdhci.c ============================================================================== --- head/sys/arm/nvidia/tegra_sdhci.c Sun Mar 5 13:14:18 2017 (r314702) +++ head/sys/arm/nvidia/tegra_sdhci.c Sun Mar 5 15:34:32 2017 (r314703) @@ -36,6 +36,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -60,6 +61,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include "sdhci_if.h" @@ -107,9 +109,8 @@ struct tegra_sdhci_softc { uint32_t max_clk; /* Max possible freq */ clk_t clk; hwreset_t reset; - gpio_pin_t gpio_cd; - gpio_pin_t gpio_wp; gpio_pin_t gpio_power; + struct sdhci_fdt_gpio *gpio; int force_card_present; struct sdhci_slot slot; @@ -215,10 +216,19 @@ tegra_sdhci_intr(void *arg) } static int -tegra_generic_get_ro(device_t brdev, device_t reqdev) +tegra_sdhci_get_ro(device_t brdev, device_t reqdev) { + struct tegra_sdhci_softc *sc = device_get_softc(brdev); - return (0); + return (sdhci_fdt_gpio_get_readonly(sc->gpio)); +} + +static bool +tegra_sdhci_get_card_present(device_t dev, struct sdhci_slot *slot) +{ + struct tegra_sdhci_softc *sc = device_get_softc(dev); + + return (sdhci_fdt_gpio_get_present(sc->gpio)); } static int @@ -300,9 +310,7 @@ tegra_sdhci_attach(device_t dev) goto fail; } - gpio_pin_get_by_ofw_property(sc->dev, node, "cd-gpios", &sc->gpio_cd); gpio_pin_get_by_ofw_property(sc->dev, node, "power-gpios", &sc->gpio_power); - gpio_pin_get_by_ofw_property(sc->dev, node, "wp-gpios", &sc->gpio_wp); rv = clk_get_by_ofw_index(dev, 0, 0, &sc->clk); if (rv != 0) { @@ -374,6 +382,8 @@ tegra_sdhci_attach(device_t dev) goto fail; } + sc->gpio = sdhci_fdt_gpio_setup(sc->dev, &sc->slot); + bus_generic_probe(dev); bus_generic_attach(dev); @@ -382,18 +392,16 @@ tegra_sdhci_attach(device_t dev) return (0); fail: - if (sc->gpio_cd != NULL) - gpio_pin_release(sc->gpio_cd); - if (sc->gpio_wp != NULL) - gpio_pin_release(sc->gpio_wp); + if (sc->gpio != NULL) + sdhci_fdt_gpio_teardown(sc->gpio); + if (sc->intr_cookie != NULL) + bus_teardown_intr(dev, sc->irq_res, sc->intr_cookie); if (sc->gpio_power != NULL) gpio_pin_release(sc->gpio_power); if (sc->clk != NULL) clk_release(sc->clk); if (sc->reset != NULL) hwreset_release(sc->reset); - if (sc->intr_cookie != NULL) - bus_teardown_intr(dev, sc->irq_res, sc->intr_cookie); if (sc->irq_res != NULL) bus_release_resource(dev, SYS_RES_IRQ, 0, sc->irq_res); if (sc->mem_res != NULL) @@ -409,6 +417,7 @@ tegra_sdhci_detach(device_t dev) struct sdhci_slot *slot = &sc->slot; bus_generic_detach(dev); + sdhci_fdt_gpio_teardown(sc->gpio); clk_release(sc->clk); bus_teardown_intr(dev, sc->irq_res, sc->intr_cookie); bus_release_resource(dev, SYS_RES_IRQ, rman_get_rid(sc->irq_res), @@ -434,7 +443,7 @@ static device_method_t tegra_sdhci_metho /* MMC bridge interface */ DEVMETHOD(mmcbr_update_ios, sdhci_generic_update_ios), DEVMETHOD(mmcbr_request, sdhci_generic_request), - DEVMETHOD(mmcbr_get_ro, tegra_generic_get_ro), + DEVMETHOD(mmcbr_get_ro, tegra_sdhci_get_ro), DEVMETHOD(mmcbr_acquire_host, sdhci_generic_acquire_host), DEVMETHOD(mmcbr_release_host, sdhci_generic_release_host), @@ -447,6 +456,7 @@ static device_method_t tegra_sdhci_metho DEVMETHOD(sdhci_write_2, tegra_sdhci_write_2), DEVMETHOD(sdhci_write_4, tegra_sdhci_write_4), DEVMETHOD(sdhci_write_multi_4, tegra_sdhci_write_multi_4), + DEVMETHOD(sdhci_get_card_present, tegra_sdhci_get_card_present), DEVMETHOD_END }; From owner-svn-src-all@freebsd.org Sun Mar 5 15:34:51 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B5463CF9C5C; Sun, 5 Mar 2017 15:34:51 +0000 (UTC) (envelope-from bapt@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 940EA116F; Sun, 5 Mar 2017 15:34:51 +0000 (UTC) (envelope-from bapt@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1235) id D189B6827; Sun, 5 Mar 2017 15:34:48 +0000 (UTC) Date: Sun, 5 Mar 2017 16:34:48 +0100 From: Baptiste Daroussin To: Julian Elischer Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, rgrimes@freebsd.org Subject: Re: svn commit: r314693 - head/usr.sbin/rmt Message-ID: <20170305153448.6trjgu7u3yj6phjm@ivaldir.net> References: <201703051319.v25DJSGt082916@pdx.rh.CN85.dnsmgr.net> <761e6ecf-89aa-6356-4650-08f3c5c9d6a8@freebsd.org> <20170305152048.gyilvy7qscqg45hr@ivaldir.net> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="d7s6w52qr5svyvle" Content-Disposition: inline In-Reply-To: User-Agent: NeoMutt/20170225 (1.8.0) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 15:34:51 -0000 --d7s6w52qr5svyvle Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Mar 05, 2017 at 11:30:36PM +0800, Julian Elischer wrote: > On 5/3/17 11:20 pm, Baptiste Daroussin wrote: > > On Sun, Mar 05, 2017 at 11:11:35PM +0800, Julian Elischer wrote: > > > On 5/3/17 9:19 pm, Rodney W. Grimes wrote: > > > > -- Start of PGP signed section. > > > > > On Sun, Mar 05, 2017 at 04:09:18AM +0000, Rodney W. Grimes wrote: > > > > > > Author: rgrimes > > > > > > Date: Sun Mar 5 04:09:18 2017 > > > > > > New Revision: 314693 > > > > > > URL: https://svnweb.freebsd.org/changeset/base/314693 > > > > > >=20 > > > > > > Log: > > > > > > Change /etc/rmt symlink from absolute to relative path, > > > > > > correcting the mistake made in r6499 > > > > > > Approved by: grehan > > > > > > MFC after: 1 week > > > > > >=20 > > > > > > Modified: > > > > > > head/usr.sbin/rmt/Makefile > > > > > >=20 > > > > > > Modified: head/usr.sbin/rmt/Makefile > > > > > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D > > > > > > --- head/usr.sbin/rmt/Makefile Sun Mar 5 04:02:47 2017 (r31469= 2) > > > > > > +++ head/usr.sbin/rmt/Makefile Sun Mar 5 04:09:18 2017 (r31469= 3) > > > > > > @@ -7,6 +7,6 @@ MAN=3D rmt.8 > > > > > > # called from /usr/src/etc/Makefile > > > > > > etc-rmt: > > > > > > rm -f ${DESTDIR}/etc/rmt > > > > > > - ln -s ${BINDIR}/rmt ${DESTDIR}/etc/rmt > > > > > > + ln -s ..${BINDIR}/rmt ${DESTDIR}/etc/rmt > > > > > I think this should be ${INSTALL_RSYMLINK} ${BINDIR}/rmt ${DESTDI= R}/etc/rmt > > > > find /usr/src | xargs grep INSTALL_RSYM > > > > (no results) > > > >=20 > > > > Sorry, no prior work does this, perhaps once I get done sweeping the > > > > absolutes out of the tree (about 10 or 15 IIRC) a pass can be made = to > > > > sweep all ln -s out and propage this internal bsd.lib.mk function o= ut > > > > to the rest of the source tree? > > > >=20 > > > > find /usr/share/mk/ | xargs grep INSTALL_RSYM > > > > /usr/share/mk/bsd.own.mk:INSTALL_RSYMLINK?=3D ${INSTALL} ${RSYM= LINK} > > > > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${T= AG_ARGS},development} ${SHLIB_NAME} ${DESTDIR}${_LIBDIR}/${SHLIB_LINK} > > > > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${D= ESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ > > > > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${T= AG_ARGS},development} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ > > > > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${D= ESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ > > > >=20 > > > > This is called from within bsd.lib.mk only, do we want to use this = for > > > > all symbolics links in the source tree? If so I would of though the > > > > person adding this functionality to the .mk files would of made > > > > a tree sweeping looking for that and making those changes as well. > > > I've been playing around with libpathconv which converts abs paths to > > > relative paths etc. > > > I'w working on the patch to ln to add the -a and -r options that some= other > > > versions have. > > >=20 > > > you can specify an absolute path but ln -r (abspath) will generate a > > > relative link. > > > my target was the exact absolute symlinks that you are targeting. > > >=20 > > > Work commitments have made me lay down tools but this reminds me to p= ick it > > > up again. > > > (libpathconv is in the tree at /lib/libpathconv, but I got interrupte= d half > > > way through.. > > > I'll do the other half.. > > But install -l rs does exactly that, why adding a new mechanism? and in= stall > > works with metalog as stated earlier so for the build system it might b= e better. > >=20 > > Which reminds me multiple people have asked you if it won't be a good i= dea to > > merge your libpathconv into libutil rather that having a new library fo= r just 2 > > functions. DSO has a price and you haven't replied, will you consider m= erging > > it? > >=20 > > Best regards, > > Bapt >=20 > I will put it in libutil, but don't want to thrash too much so I'll do th= at > with the ln patch. Thank you >=20 > I hadn't thought that was a possibility originally. >=20 > I need the ln patch myself and there are other systems that have it so I'm > happy to do the work. >=20 > if install can do that I'm happy to hear it. Nice to learn about it.. >=20 > Does that mean that libpathconv is already somewhere in our system as > install is of the programs that was changed in hte initial pathconv relea= se > many years ago. To be clear I'm happy with ln(1) growing with such functionality. I'm just saying that in this specific case install -l rs is more appropriated :) Best regards, Bapt --d7s6w52qr5svyvle Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEgOTj3suS2urGXVU3Y4mL3PG3PloFAli8MBAACgkQY4mL3PG3 Plo5DxAArciZwtZBw84eDUxraNRKzZExpWrRb0mnwKHgwAaL12Y+P+eUN5qS0J/W 4PcY9hbAvnGEc1YU1FHx+8fu7BSImvj7RZwMGz009JoUF7cbBftoMxEeYry3mvrM QI9fTPF4jG19RngI4T4IPRE/ed0erD5JCT103I9DD60O8zFqnFWnD9XV9UlLYXYR xWqTkzDIlLwgZx05fBc/aT3qlLB+nCISdfmjZpGN8DxMWFTKAvvPIArHz6YqPL41 1SMzIu8wZZjT/Lu/Co3Aa0kBzh7UatRawMcT34BnGBLODpkyLPark0CUrvvC31uJ /EFe7R40U8gJmHmVqw+sdjsawX1sgAYI9TRw/vWUkToGZmKvJXqTDmJJTHzUFH10 w/Oajmih049hG/JUfbkZoE2/b4oWilCNtjkzFSMKJYEfMCBGd9puuLbDDlUNE7ZK ZhHg8Vxp3yyyfwj6WzMFfRQTpLfDikvMt0Bx0ClQV8un+moDlHOI+HWcawHz6z8y kkSJBi9IkXJH9zbjnP4Yt9mEJ8pvjrLcciyfQGYb9h+t2vFCD5e49i5l8cki5E/M 1mab4v2oOmwsqXKrwDPjtZrQG8BGGcQTM3vmlsPUQkifz/K/L+bG78aVAJDkVnej 66NUuzEbt5py+o9cRRnEPQND5YDRmYUKh4oNQWlDtMR4fgOlRyc= =9VyL -----END PGP SIGNATURE----- --d7s6w52qr5svyvle-- From owner-svn-src-all@freebsd.org Sun Mar 5 16:10:37 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D8982CFA58F; Sun, 5 Mar 2017 16:10:37 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B32AD1F1E; Sun, 5 Mar 2017 16:10:37 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25GAa93045359; Sun, 5 Mar 2017 16:10:36 GMT (envelope-from pfg@FreeBSD.org) Received: (from pfg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25GAaUO045351; Sun, 5 Mar 2017 16:10:36 GMT (envelope-from pfg@FreeBSD.org) Message-Id: <201703051610.v25GAaUO045351@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pfg set sender to pfg@FreeBSD.org using -f From: "Pedro F. Giffuni" Date: Sun, 5 Mar 2017 16:10:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314704 - in head/usr.bin: bc dc patch X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 16:10:37 -0000 Author: pfg Date: Sun Mar 5 16:10:35 2017 New Revision: 314704 URL: https://svnweb.freebsd.org/changeset/base/314704 Log: bc/dc/patch: make some use of reallocarray(3). reallocarray(3) is a non portable extension from OpenBSD. Given that it is already in FreeBSD, make easier future merges by adopting in some cases where the code has some shared heritage with OpenBSD. Obtained from: OpenBSD Modified: head/usr.bin/bc/bc.y head/usr.bin/dc/bcode.c head/usr.bin/dc/extern.h head/usr.bin/dc/inout.c head/usr.bin/dc/mem.c head/usr.bin/dc/stack.c head/usr.bin/patch/inp.c Modified: head/usr.bin/bc/bc.y ============================================================================== --- head/usr.bin/bc/bc.y Sun Mar 5 15:34:32 2017 (r314703) +++ head/usr.bin/bc/bc.y Sun Mar 5 16:10:35 2017 (r314704) @@ -1,5 +1,5 @@ %{ -/* $OpenBSD: bc.y,v 1.44 2013/11/20 21:33:54 deraadt Exp $ */ +/* $OpenBSD: bc.y,v 1.46 2014/10/14 15:35:18 deraadt Exp $ */ /* * Copyright (c) 2003, Otto Moerbeek @@ -771,7 +771,7 @@ grow(void) if (current == instr_sz) { newsize = instr_sz * 2 + 1; - p = realloc(instructions, newsize * sizeof(*p)); + p = reallocarray(instructions, newsize, sizeof(*p)); if (p == NULL) { free(instructions); err(1, NULL); @@ -1132,7 +1132,7 @@ main(int argc, char *argv[]) init(); setvbuf(stdout, NULL, _IOLBF, 0); - sargv = malloc(argc * sizeof(char *)); + sargv = reallocarray(NULL, argc, sizeof(char *)); if (sargv == NULL) err(1, NULL); Modified: head/usr.bin/dc/bcode.c ============================================================================== --- head/usr.bin/dc/bcode.c Sun Mar 5 15:34:32 2017 (r314703) +++ head/usr.bin/dc/bcode.c Sun Mar 5 16:10:35 2017 (r314704) @@ -1,4 +1,4 @@ -/* $OpenBSD: bcode.c,v 1.45 2012/11/07 11:06:14 otto Exp $ */ +/* $OpenBSD: bcode.c,v 1.46 2014/10/08 03:59:56 doug Exp $ */ /* * Copyright (c) 2003, Otto Moerbeek @@ -1709,7 +1709,7 @@ eval_string(char *p) if (bmachine.readsp == bmachine.readstack_sz - 1) { size_t newsz = bmachine.readstack_sz * 2; struct source *stack; - stack = realloc(bmachine.readstack, newsz * + stack = reallocarray(bmachine.readstack, newsz, sizeof(struct source)); if (stack == NULL) err(1, "recursion too deep"); Modified: head/usr.bin/dc/extern.h ============================================================================== --- head/usr.bin/dc/extern.h Sun Mar 5 15:34:32 2017 (r314703) +++ head/usr.bin/dc/extern.h Sun Mar 5 16:10:35 2017 (r314704) @@ -1,5 +1,5 @@ /* $FreeBSD$ */ -/* $OpenBSD: extern.h,v 1.3 2006/01/16 08:09:25 otto Exp $ */ +/* $OpenBSD: extern.h,v 1.4 2014/12/01 13:13:00 deraadt Exp $ */ /* * Copyright (c) 2003, Otto Moerbeek @@ -35,7 +35,7 @@ struct number *new_number(void); void free_number(struct number *); struct number *dup_number(const struct number *); void *bmalloc(size_t); -void *brealloc(void *, size_t); +void *breallocarray(void *, size_t, size_t); char *bstrdup(const char *p); void bn_check(int); void bn_checkp(const void *); Modified: head/usr.bin/dc/inout.c ============================================================================== --- head/usr.bin/dc/inout.c Sun Mar 5 15:34:32 2017 (r314703) +++ head/usr.bin/dc/inout.c Sun Mar 5 16:10:35 2017 (r314704) @@ -1,4 +1,4 @@ -/* $OpenBSD: inout.c,v 1.17 2012/11/07 11:06:14 otto Exp $ */ +/* $OpenBSD: inout.c,v 1.18 2014/12/01 13:13:00 deraadt Exp $ */ /* * Copyright (c) 2003, Otto Moerbeek @@ -261,7 +261,7 @@ read_string(struct source *src) escape = false; if (i == sz) { new_sz = sz * 2; - p = brealloc(p, new_sz + 1); + p = breallocarray(p, 1, new_sz + 1); sz = new_sz; } p[i++] = ch; Modified: head/usr.bin/dc/mem.c ============================================================================== --- head/usr.bin/dc/mem.c Sun Mar 5 15:34:32 2017 (r314703) +++ head/usr.bin/dc/mem.c Sun Mar 5 16:10:35 2017 (r314704) @@ -1,4 +1,4 @@ -/* $OpenBSD: mem.c,v 1.5 2009/10/27 23:59:37 deraadt Exp $ */ +/* $OpenBSD: mem.c,v 1.6 2014/12/01 13:13:00 deraadt Exp $ */ /* * Copyright (c) 2003, Otto Moerbeek @@ -72,11 +72,11 @@ bmalloc(size_t sz) } void * -brealloc(void *p, size_t sz) +breallocarray(void *p, size_t nmemb, size_t size) { void *q; - q = realloc(p, sz); + q = reallocarray(p, nmemb, size); if (q == NULL) err(1, NULL); return (q); Modified: head/usr.bin/dc/stack.c ============================================================================== --- head/usr.bin/dc/stack.c Sun Mar 5 15:34:32 2017 (r314703) +++ head/usr.bin/dc/stack.c Sun Mar 5 16:10:35 2017 (r314704) @@ -1,4 +1,4 @@ -/* $OpenBSD: stack.c,v 1.12 2014/11/26 15:05:51 otto Exp $ */ +/* $OpenBSD: stack.c,v 1.13 2014/12/01 13:13:00 deraadt Exp $ */ /* * Copyright (c) 2003, Otto Moerbeek @@ -139,8 +139,8 @@ stack_grow(struct stack *stack) if (++stack->sp == stack->size) { new_size = stack->size * 2 + 1; - stack->stack = brealloc(stack->stack, - new_size * sizeof(*stack->stack)); + stack->stack = breallocarray(stack->stack, + new_size, sizeof(*stack->stack)); stack->size = new_size; } } @@ -313,7 +313,7 @@ array_grow(struct array *array, size_t n { size_t i; - array->data = brealloc(array->data, newsize * sizeof(*array->data)); + array->data = breallocarray(array->data, newsize, sizeof(*array->data)); for (i = array->size; i < newsize; i++) { array->data[i].type = BCODE_NONE; array->data[i].array = NULL; Modified: head/usr.bin/patch/inp.c ============================================================================== --- head/usr.bin/patch/inp.c Sun Mar 5 15:34:32 2017 (r314703) +++ head/usr.bin/patch/inp.c Sun Mar 5 16:10:35 2017 (r314704) @@ -23,7 +23,7 @@ * -C option added in 1998, original code by Marc Espie, based on FreeBSD * behaviour * - * $OpenBSD: inp.c,v 1.36 2012/04/10 14:46:34 ajacoutot Exp $ + * $OpenBSD: inp.c,v 1.44 2015/07/26 14:32:19 millert Exp $ * $FreeBSD$ */ @@ -118,7 +118,7 @@ reallocate_lines(size_t *lines_allocated size_t new_size; new_size = *lines_allocated * 3 / 2; - p = realloc(i_ptr, (new_size + 2) * sizeof(char *)); + p = reallocarray(i_ptr, new_size + 2, sizeof(char *)); if (p == NULL) { /* shucks, it was a near thing */ munmap(i_womp, i_size); i_womp = NULL; From owner-svn-src-all@freebsd.org Sun Mar 5 16:48:15 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B0F57CFA357; Sun, 5 Mar 2017 16:48:15 +0000 (UTC) (envelope-from eadler@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7E0581C00; Sun, 5 Mar 2017 16:48:15 +0000 (UTC) (envelope-from eadler@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25GmEbS062773; Sun, 5 Mar 2017 16:48:14 GMT (envelope-from eadler@FreeBSD.org) Received: (from eadler@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25GmETD062772; Sun, 5 Mar 2017 16:48:14 GMT (envelope-from eadler@FreeBSD.org) Message-Id: <201703051648.v25GmETD062772@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: eadler set sender to eadler@FreeBSD.org using -f From: Eitan Adler Date: Sun, 5 Mar 2017 16:48:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314705 - head/share/misc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 16:48:15 -0000 Author: eadler Date: Sun Mar 5 16:48:14 2017 New Revision: 314705 URL: https://svnweb.freebsd.org/changeset/base/314705 Log: Add macOS 10.12 Modified: head/share/misc/bsd-family-tree Modified: head/share/misc/bsd-family-tree ============================================================================== --- head/share/misc/bsd-family-tree Sun Mar 5 16:10:35 2017 (r314704) +++ head/share/misc/bsd-family-tree Sun Mar 5 16:48:14 2017 (r314705) @@ -346,8 +346,8 @@ FreeBSD 5.2 | | | 10.3 | | | | | | NetBSD 7.0.1 | | | | | | DragonFly 4.6.0 - *--FreeBSD | | OpenBSD 6.0 | - | 11.0 | | | | + *--FreeBSD macOS | OpenBSD 6.0 | + | 11.0 10.12 | | | | | | | | | | | | | FreeBSD 12 -current | NetBSD -current OpenBSD -current DragonFly -current From owner-svn-src-all@freebsd.org Sun Mar 5 16:26:38 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 164ACCFABED; Sun, 5 Mar 2017 16:26:38 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8624A1CE7; Sun, 5 Mar 2017 16:26:37 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v25GQYli083562; Sun, 5 Mar 2017 08:26:34 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v25GQWNd083561; Sun, 5 Mar 2017 08:26:32 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703051626.v25GQWNd083561@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314693 - head/usr.sbin/rmt In-Reply-To: <20170305134226.px4ivdtjjppbgiyf@ivaldir.net> To: Baptiste Daroussin Date: Sun, 5 Mar 2017 08:26:32 -0800 (PST) CC: freebsd-hackers@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-Mailman-Approved-At: Sun, 05 Mar 2017 17:37:01 +0000 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 16:26:38 -0000 Moved thread to -hackers for a quick discussion. > On Sun, Mar 05, 2017 at 05:19:28AM -0800, Rodney W. Grimes wrote: > > -- Start of PGP signed section. > > > On Sun, Mar 05, 2017 at 04:09:18AM +0000, Rodney W. Grimes wrote: > > > > Author: rgrimes > > > > Date: Sun Mar 5 04:09:18 2017 > > > > New Revision: 314693 > > > > URL: https://svnweb.freebsd.org/changeset/base/314693 > > > > > > > > Log: > > > > Change /etc/rmt symlink from absolute to relative path, > > > > correcting the mistake made in r6499 > > > > > > > > Approved by: grehan > > > > MFC after: 1 week > > > > > > > > Modified: > > > > head/usr.sbin/rmt/Makefile > > > > > > > > Modified: head/usr.sbin/rmt/Makefile > > > > ============================================================================== > > > > --- head/usr.sbin/rmt/Makefile Sun Mar 5 04:02:47 2017 (r314692) > > > > +++ head/usr.sbin/rmt/Makefile Sun Mar 5 04:09:18 2017 (r314693) > > > > @@ -7,6 +7,6 @@ MAN= rmt.8 > > > > # called from /usr/src/etc/Makefile > > > > etc-rmt: > > > > rm -f ${DESTDIR}/etc/rmt > > > > - ln -s ${BINDIR}/rmt ${DESTDIR}/etc/rmt > > > > + ln -s ..${BINDIR}/rmt ${DESTDIR}/etc/rmt > > > > > > I think this should be ${INSTALL_RSYMLINK} ${BINDIR}/rmt ${DESTDIR}/etc/rmt > > > > find /usr/src | xargs grep INSTALL_RSYM > > (no results) > > > > Sorry, no prior work does this, perhaps once I get done sweeping the > > absolutes out of the tree (about 10 or 15 IIRC) a pass can be made to > > sweep all ln -s out and propage this internal bsd.lib.mk function out > > to the rest of the source tree? > > There is also no Makefiles that do ls -sf directly beside that one. Unless I have missed a commit: ./crypto/openssh/contrib/cygwin/Makefile: cd $(DESTDIR)$(mandir)/man1 && ln -s ssh.1.gz slogin.1.gz ./usr.sbin/sendmail/Makefile: ln -sf ${.ALLSRC} ${.TARGET} ./usr.sbin/rmt/Makefile: ln -s ${BINDIR}/rmt ${DESTDIR}/etc/rmt ... A summary is there are 50 instances of ln -sf, 28 other variants of ln -s, and 5 ln -fs. I did not search for other permutaions of ln and s f options. > INSTALL_RSYMLINK has exactly be done to be use everywhere it is needed. (I wrote > it for that exact reason :)) Wonderful!! I'll investigate a sweep to finish implementing this tree wide in my spare time.... I notice that SYMLINKS= is hard coded to use INSTALL_SYMLINKS so that can't be used to fix some of these. How would you propose I proceed in that area?? And investigation into using INSTALL_RSYMLINK in SYMLINKS= should be done, I can not think of a reason when you DONT want a relative link installed, but I may be missing some new odd use for symlinks by the FreeBSD base system. > > > > find /usr/share/mk/ | xargs grep INSTALL_RSYM > > /usr/share/mk/bsd.own.mk:INSTALL_RSYMLINK?= ${INSTALL} ${RSYMLINK} > > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_ARGS},development} ${SHLIB_NAME} ${DESTDIR}${_LIBDIR}/${SHLIB_LINK} > > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ > > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS:D${TAG_ARGS},development} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ > > /usr/share/mk/bsd.lib.mk: ${INSTALL_RSYMLINK} ${TAG_ARGS} ${DESTDIR}${_SHLIBDIR}/${SHLIB_NAME} \ > > > > This is called from within bsd.lib.mk only, do we want to use this for > > all symbolics links in the source tree? If so I would of though the > > person adding this functionality to the .mk files would of made > > a tree sweeping looking for that and making those changes as well. > > When I did it only bsd.lib.mk was using it iirc And that appears to still be the case. > > > The rm -f before can then be removed, the symlink will be relative and the > > > METALOG will be respected > > > > METALOG? The only documentation I can find on this seems to be part of > > src/tootls/tools/makeroot.8. > > > > It appears that something in Makefile.inc uses it and there are references > > to it in etc/Makefile. > > > > Where is this METALOG documented? > > It is really badly documented and should be :( it is a mtree file that is > generated when built is done via -DNO_ROOT for the purpose of being able to > generate disk with makefs as a user > > I have reused it for packaging base. > > This was designed IIRC by adrian and brooks iirc. > > Embedded people relies a lot on it. > Everything not going though the install(1) command is not tracked that is why > this is an issue. I guess then that these 83 things I have found are not so important to them? Lets take this to -hackers, discuss it where it should be, and get it fixed. -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Sun Mar 5 18:00:54 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 14789CFA66E; Sun, 5 Mar 2017 18:00:54 +0000 (UTC) (envelope-from eadler@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D64F21D07; Sun, 5 Mar 2017 18:00:53 +0000 (UTC) (envelope-from eadler@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25I0qcL093133; Sun, 5 Mar 2017 18:00:52 GMT (envelope-from eadler@FreeBSD.org) Received: (from eadler@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25I0qvQ093131; Sun, 5 Mar 2017 18:00:52 GMT (envelope-from eadler@FreeBSD.org) Message-Id: <201703051800.v25I0qvQ093131@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: eadler set sender to eadler@FreeBSD.org using -f From: Eitan Adler Date: Sun, 5 Mar 2017 18:00:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314706 - in head/share: man/man4 mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 18:00:54 -0000 Author: eadler Date: Sun Mar 5 18:00:52 2017 New Revision: 314706 URL: https://svnweb.freebsd.org/changeset/base/314706 Log: remove the the duplicate words from share/ Modified: head/share/man/man4/isp.4 head/share/mk/dirdeps.mk Modified: head/share/man/man4/isp.4 ============================================================================== --- head/share/man/man4/isp.4 Sun Mar 5 16:48:14 2017 (r314705) +++ head/share/man/man4/isp.4 Sun Mar 5 18:00:52 2017 (r314706) @@ -68,7 +68,7 @@ and Fabric connections. FC-Tape is supported on 4Gb (2400) and newer controllers. FC-Tape is highly recommended for connections to tape drives that support it. -It encompasses four elements from the the T-10 FCP-4 specification: +It encompasses four elements from the T-10 FCP-4 specification: .Bl -bullet -offset indent .It Precise Delivery of Commands Modified: head/share/mk/dirdeps.mk ============================================================================== --- head/share/mk/dirdeps.mk Sun Mar 5 16:48:14 2017 (r314705) +++ head/share/mk/dirdeps.mk Sun Mar 5 18:00:52 2017 (r314706) @@ -58,7 +58,7 @@ # distinguish them from others. # # Before each Makefile.depend file is read, we set -# DEP_RELDIR to be the the RELDIR (path relative to SRCTOP) for +# DEP_RELDIR to be the RELDIR (path relative to SRCTOP) for # its directory, and DEP_MACHINE etc according to the . # represented by the suffix of the corresponding target. # From owner-svn-src-all@freebsd.org Sun Mar 5 18:37:26 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8CA2FCFAFD6; Sun, 5 Mar 2017 18:37:26 +0000 (UTC) (envelope-from jmg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4EDE61EE2; Sun, 5 Mar 2017 18:37:26 +0000 (UTC) (envelope-from jmg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25IbP8e006912; Sun, 5 Mar 2017 18:37:25 GMT (envelope-from jmg@FreeBSD.org) Received: (from jmg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25IbPW1006911; Sun, 5 Mar 2017 18:37:25 GMT (envelope-from jmg@FreeBSD.org) Message-Id: <201703051837.v25IbPW1006911@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jmg set sender to jmg@FreeBSD.org using -f From: John-Mark Gurney Date: Sun, 5 Mar 2017 18:37:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314707 - head/share/man/man9 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 18:37:26 -0000 Author: jmg Date: Sun Mar 5 18:37:25 2017 New Revision: 314707 URL: https://svnweb.freebsd.org/changeset/base/314707 Log: add missing MLINKS for functions that this man page documents. This page should be renamed to eliminate an unneeded inode. Forgotten by: markm Modified: head/share/man/man9/Makefile Modified: head/share/man/man9/Makefile ============================================================================== --- head/share/man/man9/Makefile Sun Mar 5 18:00:52 2017 (r314706) +++ head/share/man/man9/Makefile Sun Mar 5 18:37:25 2017 (r314707) @@ -1425,6 +1425,9 @@ MLINKS+=random.9 arc4rand.9 \ random.9 read_random.9 \ random.9 read_random_uio.9 \ random.9 srandom.9 +MLINKS+=random_harvest.9 random_harvest_direct.9 \ + random_harvest.9 random_harvest_fast.9 \ + random_harvest.9 random_harvest_queue.9 MLINKS+=refcount.9 refcount_acquire.9 \ refcount.9 refcount_init.9 \ refcount.9 refcount_release.9 From owner-svn-src-all@freebsd.org Sun Mar 5 19:56:21 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 851DFCFA259; Sun, 5 Mar 2017 19:56:21 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 470DA12BB; Sun, 5 Mar 2017 19:56:21 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25JuK8G039507; Sun, 5 Mar 2017 19:56:20 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25JuKoO039506; Sun, 5 Mar 2017 19:56:20 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201703051956.v25JuKoO039506@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Sun, 5 Mar 2017 19:56:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314708 - head/contrib/llvm/lib/Analysis X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 19:56:21 -0000 Author: dim Date: Sun Mar 5 19:56:20 2017 New Revision: 314708 URL: https://svnweb.freebsd.org/changeset/base/314708 Log: For now, revert r287232 from upstream llvm trunk (by Daniil Fukalov): [SCEV] limit recursion depth of CompareSCEVComplexity Summary: CompareSCEVComplexity goes too deep (50+ on a quite a big unrolled loop) and runs almost infinite time. Added cache of "equal" SCEV pairs to earlier cutoff of further estimation. Recursion depth limit was also introduced as a parameter. Reviewers: sanjoy Subscribers: mzolotukhin, tstellarAMD, llvm-commits Differential Revision: https://reviews.llvm.org/D26389 This commit is the cause of excessive compile times on skein_block.c (and possibly other files) during kernel builds on amd64. We never saw the problematic behavior described in this upstream commit, so for now it is better to revert it. An upstream bug has been filed here: https://bugs.llvm.org/show_bug.cgi?id=32142 Reported by: mjg Modified: head/contrib/llvm/lib/Analysis/ScalarEvolution.cpp Modified: head/contrib/llvm/lib/Analysis/ScalarEvolution.cpp ============================================================================== --- head/contrib/llvm/lib/Analysis/ScalarEvolution.cpp Sun Mar 5 18:37:25 2017 (r314707) +++ head/contrib/llvm/lib/Analysis/ScalarEvolution.cpp Sun Mar 5 19:56:20 2017 (r314708) @@ -127,11 +127,6 @@ static cl::opt MulOpsInlineThr cl::desc("Threshold for inlining multiplication operands into a SCEV"), cl::init(1000)); -static cl::opt - MaxCompareDepth("scalar-evolution-max-compare-depth", cl::Hidden, - cl::desc("Maximum depth of recursive compare complexity"), - cl::init(32)); - //===----------------------------------------------------------------------===// // SCEV class definitions //===----------------------------------------------------------------------===// @@ -480,8 +475,8 @@ bool SCEVUnknown::isOffsetOf(Type *&CTy, static int CompareValueComplexity(SmallSet, 8> &EqCache, const LoopInfo *const LI, Value *LV, Value *RV, - unsigned Depth) { - if (Depth > MaxCompareDepth || EqCache.count({LV, RV})) + unsigned DepthLeft = 2) { + if (DepthLeft == 0 || EqCache.count({LV, RV})) return 0; // Order pointer values after integer values. This helps SCEVExpander form @@ -542,23 +537,21 @@ CompareValueComplexity(SmallSetgetOperand(Idx), - RInst->getOperand(Idx), Depth + 1); + RInst->getOperand(Idx), DepthLeft - 1); if (Result != 0) return Result; + EqCache.insert({LV, RV}); } } - EqCache.insert({LV, RV}); return 0; } // Return negative, zero, or positive, if LHS is less than, equal to, or greater // than RHS, respectively. A three-way result allows recursive comparisons to be // more efficient. -static int CompareSCEVComplexity( - SmallSet, 8> &EqCacheSCEV, - const LoopInfo *const LI, const SCEV *LHS, const SCEV *RHS, - unsigned Depth = 0) { +static int CompareSCEVComplexity(const LoopInfo *const LI, const SCEV *LHS, + const SCEV *RHS) { // Fast-path: SCEVs are uniqued so we can do a quick equality check. if (LHS == RHS) return 0; @@ -568,8 +561,6 @@ static int CompareSCEVComplexity( if (LType != RType) return (int)LType - (int)RType; - if (Depth > MaxCompareDepth || EqCacheSCEV.count({LHS, RHS})) - return 0; // Aside from the getSCEVType() ordering, the particular ordering // isn't very important except that it's beneficial to be consistent, // so that (a + b) and (b + a) don't end up as different expressions. @@ -579,11 +570,7 @@ static int CompareSCEVComplexity( const SCEVUnknown *RU = cast(RHS); SmallSet, 8> EqCache; - int X = CompareValueComplexity(EqCache, LI, LU->getValue(), RU->getValue(), - Depth + 1); - if (X == 0) - EqCacheSCEV.insert({LHS, RHS}); - return X; + return CompareValueComplexity(EqCache, LI, LU->getValue(), RU->getValue()); } case scConstant: { @@ -618,12 +605,11 @@ static int CompareSCEVComplexity( // Lexicographically compare. for (unsigned i = 0; i != LNumOps; ++i) { - int X = CompareSCEVComplexity(EqCacheSCEV, LI, LA->getOperand(i), - RA->getOperand(i), Depth + 1); + long X = CompareSCEVComplexity(LI, LA->getOperand(i), RA->getOperand(i)); if (X != 0) return X; } - EqCacheSCEV.insert({LHS, RHS}); + return 0; } @@ -642,13 +628,11 @@ static int CompareSCEVComplexity( for (unsigned i = 0; i != LNumOps; ++i) { if (i >= RNumOps) return 1; - int X = CompareSCEVComplexity(EqCacheSCEV, LI, LC->getOperand(i), - RC->getOperand(i), Depth + 1); + long X = CompareSCEVComplexity(LI, LC->getOperand(i), RC->getOperand(i)); if (X != 0) return X; } - EqCacheSCEV.insert({LHS, RHS}); - return 0; + return (int)LNumOps - (int)RNumOps; } case scUDivExpr: { @@ -656,15 +640,10 @@ static int CompareSCEVComplexity( const SCEVUDivExpr *RC = cast(RHS); // Lexicographically compare udiv expressions. - int X = CompareSCEVComplexity(EqCacheSCEV, LI, LC->getLHS(), RC->getLHS(), - Depth + 1); + long X = CompareSCEVComplexity(LI, LC->getLHS(), RC->getLHS()); if (X != 0) return X; - X = CompareSCEVComplexity(EqCacheSCEV, LI, LC->getRHS(), RC->getRHS(), - Depth + 1); - if (X == 0) - EqCacheSCEV.insert({LHS, RHS}); - return X; + return CompareSCEVComplexity(LI, LC->getRHS(), RC->getRHS()); } case scTruncate: @@ -674,11 +653,7 @@ static int CompareSCEVComplexity( const SCEVCastExpr *RC = cast(RHS); // Compare cast expressions by operand. - int X = CompareSCEVComplexity(EqCacheSCEV, LI, LC->getOperand(), - RC->getOperand(), Depth + 1); - if (X == 0) - EqCacheSCEV.insert({LHS, RHS}); - return X; + return CompareSCEVComplexity(LI, LC->getOperand(), RC->getOperand()); } case scCouldNotCompute: @@ -700,21 +675,19 @@ static int CompareSCEVComplexity( static void GroupByComplexity(SmallVectorImpl &Ops, LoopInfo *LI) { if (Ops.size() < 2) return; // Noop - - SmallSet, 8> EqCache; if (Ops.size() == 2) { // This is the common case, which also happens to be trivially simple. // Special case it. const SCEV *&LHS = Ops[0], *&RHS = Ops[1]; - if (CompareSCEVComplexity(EqCache, LI, RHS, LHS) < 0) + if (CompareSCEVComplexity(LI, RHS, LHS) < 0) std::swap(LHS, RHS); return; } // Do the rough sort by complexity. std::stable_sort(Ops.begin(), Ops.end(), - [&EqCache, LI](const SCEV *LHS, const SCEV *RHS) { - return CompareSCEVComplexity(EqCache, LI, LHS, RHS) < 0; + [LI](const SCEV *LHS, const SCEV *RHS) { + return CompareSCEVComplexity(LI, LHS, RHS) < 0; }); // Now that we are sorted by complexity, group elements of the same From owner-svn-src-all@freebsd.org Sun Mar 5 20:19:33 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 67024CFAAB0 for ; Sun, 5 Mar 2017 20:19:33 +0000 (UTC) (envelope-from ed@nuxi.nl) Received: from mail-yw0-x22e.google.com (mail-yw0-x22e.google.com [IPv6:2607:f8b0:4002:c05::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2FCC1116E for ; Sun, 5 Mar 2017 20:19:33 +0000 (UTC) (envelope-from ed@nuxi.nl) Received: by mail-yw0-x22e.google.com with SMTP id v76so8401546ywg.0 for ; Sun, 05 Mar 2017 12:19:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nuxi-nl.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=IkvlfS0oX8UBYNHPlOJFXuG2FccafzIsFDy8S6FxT3c=; b=GrxrRolbUUER2e7Ds0tsQb4IB8BOvZwjRun7KTtki2rkV6+kUV2naJFCLoFkMCFJO7 DLY+Z4qghdsN3338xlxRq8X9ulmbd5nm8Sa8Tg0W9Vvz1Z6nFqnFQxWKxkNHgZS0+T7O SdiGq5FXkdMPCPJTsF/5Ht/fB8KqEctpwUVSiQkwWA5410bnep+Oi51wjLrkf9KLT174 wTP7R7rSgwgvAHfVKd+ynEtwq2IeQls43VesRlss3nPvfPuD3B3a7QInvGgQzcKmEZbD j1z/MtrMT/Qd1P3ANk/FKy+AaT+KyTApbd05v5+V0vgon5Pqru/KzqftBizLS2kwvJ85 wXsQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=IkvlfS0oX8UBYNHPlOJFXuG2FccafzIsFDy8S6FxT3c=; b=fIIVPlNVQhz+kPQJNOuZvIEosEkSpR8Yv0Z51HWU163WUm+T7nDCXF9mFoqzXuuy1j gIe8ykbB5p7o873EvEc2uUCphuPILb9zVAJ8YLqECvgqzTPY2W2Xtux8T81MhVXeUwST NkKZD3uCcolKN90ajZVLhbDIb8vsqCSc1U/6coBz3TIsuONiRxbdjX1JPv3tNpUHofvX sCnc84co1P6DkYkfroEvV/qhyFVwG2V8RD7UjZ0FnbAjsKoc6lQlFPlt6Y0kTO5HJ3Ci VNoBo184xPnZaqHtjld0m9L/Y39rVfG4qSrRvhbDxQIiuBmGRW2VShIePKy09iJvU29R /NfQ== X-Gm-Message-State: AMke39nZQxOuqx7lbVaXX0ER9yNQLoO2kIXddOQ/24Pqt79tu0yo6Z8ZqXLviyMAAx1oCJnOE1OgWRaoUw7Ong== X-Received: by 10.13.220.65 with SMTP id f62mr8863290ywe.6.1488745172102; Sun, 05 Mar 2017 12:19:32 -0800 (PST) MIME-Version: 1.0 Received: by 10.129.51.198 with HTTP; Sun, 5 Mar 2017 12:19:01 -0800 (PST) In-Reply-To: References: <201703042238.v24McAD8008837@repo.freebsd.org> From: Ed Schouten Date: Sun, 5 Mar 2017 21:19:01 +0100 Message-ID: Subject: Re: svn commit: r314685 - head/bin/ps To: "Conrad E. Meyer" Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 20:19:33 -0000 Hi Conrad, 2017-03-05 0:08 GMT+01:00 Conrad Meyer : >> - If something is a TTY, then our implementation of the TTY layer >> guarantees that TIOCGWINSZ always works. > > Do you know if it did in 1990 too? It's hard to tell why Marc@ made > this change way back then. I wasn't sure so I left it alone. I can't tell. :-) >> - If we're only interested in testing stdout whether it's a TTY, I >> think it makes little sense to check TIOCGWINSZ on stdin, stderr. >> >> I think there would therefore be very little harm to use something like this: >> >> | if ((cols = getenv("COLUMNS")) != NULL && *cols != '\0') >> | termwidth = atoi(cols); >> | else if ((ioctl(STDOUT_FILENO, TIOCGWINSZ, (char *)&ws) == >> -1 && ws.ws_row == 0) > > Shouldn't this remain || ws.ws_row == 0? Err, yes. ||, not &&. -- Ed Schouten Nuxi, 's-Hertogenbosch, the Netherlands KvK-nr.: 62051717 From owner-svn-src-all@freebsd.org Sun Mar 5 21:16:51 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5148BCFA3D2; Sun, 5 Mar 2017 21:16:51 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2052C1671; Sun, 5 Mar 2017 21:16:51 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25LGoXm072415; Sun, 5 Mar 2017 21:16:50 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25LGoEv072414; Sun, 5 Mar 2017 21:16:50 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201703052116.v25LGoEv072414@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Sun, 5 Mar 2017 21:16:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314709 - head X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 21:16:51 -0000 Author: bdrewery Date: Sun Mar 5 21:16:50 2017 New Revision: 314709 URL: https://svnweb.freebsd.org/changeset/base/314709 Log: Fix bootstrapping mtree after r313404 for older systems. r313404 made libnetbsd require sha384.h from libmd. Libmd added it in r292782. Update BOOTSTRAPPING to account for this. Reported by: bde Reviewed by: ngie Modified: head/Makefile.inc1 Modified: head/Makefile.inc1 ============================================================================== --- head/Makefile.inc1 Sun Mar 5 19:56:20 2017 (r314708) +++ head/Makefile.inc1 Sun Mar 5 21:16:50 2017 (r314709) @@ -1618,10 +1618,12 @@ ${_bt}-usr.bin/m4: ${_bt}-lib/libopenbsd ${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 .endif -.if ${BOOTSTRAPPING} < 1000026 -_nmtree= lib/libnetbsd \ +.if ${BOOTSTRAPPING} < 1100093 +_nmtree= lib/libmd \ + lib/libnetbsd \ usr.sbin/nmtree +${_bt}-lib/libnetbsd: ${_bt}-lib/libmd ${_bt}-usr.sbin/nmtree: ${_bt}-lib/libnetbsd .endif From owner-svn-src-all@freebsd.org Sun Mar 5 21:41:49 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 83677CFAB16; Sun, 5 Mar 2017 21:41:49 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4FF1A13C9; Sun, 5 Mar 2017 21:41:49 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25Lfm4Z083684; Sun, 5 Mar 2017 21:41:48 GMT (envelope-from mm@FreeBSD.org) Received: (from mm@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25LfmPb083683; Sun, 5 Mar 2017 21:41:48 GMT (envelope-from mm@FreeBSD.org) Message-Id: <201703052141.v25LfmPb083683@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mm set sender to mm@FreeBSD.org using -f From: Martin Matuska Date: Sun, 5 Mar 2017 21:41:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314710 - stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 21:41:49 -0000 Author: mm Date: Sun Mar 5 21:41:48 2017 New Revision: 314710 URL: https://svnweb.freebsd.org/changeset/base/314710 Log: MFC r314572: Fix null pointer dereference in zfs_freebsd_setacl(). Prevents unprivileged users from panicking the kernel by calling __acl_delete_*() on files or directories inside a ZFS mount. Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Sun Mar 5 21:16:50 2017 (r314709) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Sun Mar 5 21:41:48 2017 (r314710) @@ -5866,6 +5866,9 @@ zfs_freebsd_setacl(ap) if (ap->a_type != ACL_TYPE_NFS4) return (EINVAL); + if (ap->a_aclp == NULL) + return (EINVAL); + if (ap->a_aclp->acl_cnt < 1 || ap->a_aclp->acl_cnt > MAX_ACL_ENTRIES) return (EINVAL); From owner-svn-src-all@freebsd.org Sun Mar 5 21:42:05 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 07A93CFAB6D; Sun, 5 Mar 2017 21:42:05 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C96E1156C; Sun, 5 Mar 2017 21:42:04 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25Lg3CF084483; Sun, 5 Mar 2017 21:42:03 GMT (envelope-from mm@FreeBSD.org) Received: (from mm@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25Lg3oP084482; Sun, 5 Mar 2017 21:42:03 GMT (envelope-from mm@FreeBSD.org) Message-Id: <201703052142.v25Lg3oP084482@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mm set sender to mm@FreeBSD.org using -f From: Martin Matuska Date: Sun, 5 Mar 2017 21:42:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314711 - stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 21:42:05 -0000 Author: mm Date: Sun Mar 5 21:42:03 2017 New Revision: 314711 URL: https://svnweb.freebsd.org/changeset/base/314711 Log: MFC r314572: Fix null pointer dereference in zfs_freebsd_setacl(). Prevents unprivileged users from panicking the kernel by calling __acl_delete_*() on files or directories inside a ZFS mount. Modified: stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c ============================================================================== --- stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Sun Mar 5 21:41:48 2017 (r314710) +++ stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Sun Mar 5 21:42:03 2017 (r314711) @@ -5909,6 +5909,9 @@ zfs_freebsd_setacl(ap) if (ap->a_type != ACL_TYPE_NFS4) return (EINVAL); + if (ap->a_aclp == NULL) + return (EINVAL); + if (ap->a_aclp->acl_cnt < 1 || ap->a_aclp->acl_cnt > MAX_ACL_ENTRIES) return (EINVAL); From owner-svn-src-all@freebsd.org Sun Mar 5 21:43:08 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E7DE7CFACC8; Sun, 5 Mar 2017 21:43:08 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B6D01186F; Sun, 5 Mar 2017 21:43:08 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25Lh7Sb084575; Sun, 5 Mar 2017 21:43:07 GMT (envelope-from mm@FreeBSD.org) Received: (from mm@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25Lh7pt084574; Sun, 5 Mar 2017 21:43:07 GMT (envelope-from mm@FreeBSD.org) Message-Id: <201703052143.v25Lh7pt084574@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mm set sender to mm@FreeBSD.org using -f From: Martin Matuska Date: Sun, 5 Mar 2017 21:43:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r314712 - stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 21:43:09 -0000 Author: mm Date: Sun Mar 5 21:43:07 2017 New Revision: 314712 URL: https://svnweb.freebsd.org/changeset/base/314712 Log: MFC r314572: Fix null pointer dereference in zfs_freebsd_setacl(). Prevents unprivileged users from panicking the kernel by calling __acl_delete_*() on files or directories inside a ZFS mount. Modified: stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Directory Properties: stable/9/ (props changed) stable/9/sys/ (props changed) stable/9/sys/cddl/contrib/opensolaris/ (props changed) Modified: stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c ============================================================================== --- stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Sun Mar 5 21:42:03 2017 (r314711) +++ stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Sun Mar 5 21:43:07 2017 (r314712) @@ -6993,6 +6993,9 @@ zfs_freebsd_setacl(ap) if (ap->a_type != ACL_TYPE_NFS4) return (EINVAL); + if (ap->a_aclp == NULL) + return (EINVAL); + if (ap->a_aclp->acl_cnt < 1 || ap->a_aclp->acl_cnt > MAX_ACL_ENTRIES) return (EINVAL); From owner-svn-src-all@freebsd.org Sun Mar 5 21:44:30 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DDE01CFAD5E; Sun, 5 Mar 2017 21:44:30 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id AA60119C1; Sun, 5 Mar 2017 21:44:30 +0000 (UTC) (envelope-from mm@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25LiTZZ084676; Sun, 5 Mar 2017 21:44:29 GMT (envelope-from mm@FreeBSD.org) Received: (from mm@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25LiTFr084675; Sun, 5 Mar 2017 21:44:29 GMT (envelope-from mm@FreeBSD.org) Message-Id: <201703052144.v25LiTFr084675@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mm set sender to mm@FreeBSD.org using -f From: Martin Matuska Date: Sun, 5 Mar 2017 21:44:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r314713 - stable/8/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 21:44:31 -0000 Author: mm Date: Sun Mar 5 21:44:29 2017 New Revision: 314713 URL: https://svnweb.freebsd.org/changeset/base/314713 Log: MFC r314572: Fix null pointer dereference in zfs_freebsd_setacl(). Prevents unprivileged users from panicking the kernel by calling __acl_delete_*() on files or directories inside a ZFS mount. Modified: stable/8/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Directory Properties: stable/8/ (props changed) stable/8/sys/ (props changed) stable/8/sys/cddl/ (props changed) stable/8/sys/cddl/contrib/opensolaris/ (props changed) Modified: stable/8/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c ============================================================================== --- stable/8/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Sun Mar 5 21:43:07 2017 (r314712) +++ stable/8/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c Sun Mar 5 21:44:29 2017 (r314713) @@ -6740,6 +6740,9 @@ zfs_freebsd_setacl(ap) if (ap->a_type != ACL_TYPE_NFS4) return (EINVAL); + if (ap->a_aclp == NULL) + return (EINVAL); + if (ap->a_aclp->acl_cnt < 1 || ap->a_aclp->acl_cnt > MAX_ACL_ENTRIES) return (EINVAL); From owner-svn-src-all@freebsd.org Sun Mar 5 21:56:05 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C3DA6CFAFEF; Sun, 5 Mar 2017 21:56:05 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 836751F86; Sun, 5 Mar 2017 21:56:05 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25Lu43d088687; Sun, 5 Mar 2017 21:56:04 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25Lu42r088686; Sun, 5 Mar 2017 21:56:04 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201703052156.v25Lu42r088686@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Sun, 5 Mar 2017 21:56:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314714 - head/bin/kill X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 21:56:05 -0000 Author: bdrewery Date: Sun Mar 5 21:56:04 2017 New Revision: 314714 URL: https://svnweb.freebsd.org/changeset/base/314714 Log: Don't kill pid -1 on overflow from strtol(3). Store the result in a proper long and then compare to the proper pid_t for overflow, so that no MD assumptions are made. Reviewed by: jilles MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D9887 Modified: head/bin/kill/kill.c Modified: head/bin/kill/kill.c ============================================================================== --- head/bin/kill/kill.c Sun Mar 5 21:44:29 2017 (r314713) +++ head/bin/kill/kill.c Sun Mar 5 21:56:04 2017 (r314714) @@ -66,7 +66,9 @@ static void usage(void); int main(int argc, char *argv[]) { - int errors, numsig, pid, ret; + long pidl; + pid_t pid; + int errors, numsig, ret; char *ep; if (argc < 2) @@ -137,8 +139,10 @@ main(int argc, char *argv[]) else #endif { - pid = strtol(*argv, &ep, 10); - if (!**argv || *ep) + pidl = strtol(*argv, &ep, 10); + /* Check for overflow of pid_t. */ + pid = (pid_t)pidl; + if (!**argv || *ep || pid != pidl) errx(2, "illegal process id: %s", *argv); ret = kill(pid, numsig); } From owner-svn-src-all@freebsd.org Sun Mar 5 22:19:44 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7FA5DCFAA48; Sun, 5 Mar 2017 22:19:44 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4F55B1BA6; Sun, 5 Mar 2017 22:19:44 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25MJh7x096984; Sun, 5 Mar 2017 22:19:43 GMT (envelope-from ae@FreeBSD.org) Received: (from ae@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25MJhrq096983; Sun, 5 Mar 2017 22:19:43 GMT (envelope-from ae@FreeBSD.org) Message-Id: <201703052219.v25MJhrq096983@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org using -f From: "Andrey V. Elsukov" Date: Sun, 5 Mar 2017 22:19:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314715 - head/sys/netpfil/ipfw X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 22:19:44 -0000 Author: ae Date: Sun Mar 5 22:19:43 2017 New Revision: 314715 URL: https://svnweb.freebsd.org/changeset/base/314715 Log: Reject invalid object types that can not be used with specific opcodes. When we doing reference counting of named objects in the new rule, for existing objects check that opcode references to correct object, otherwise return EINVAL. PR: 217391 MFC after: 1 week Sponsored by: Yandex LLC Modified: head/sys/netpfil/ipfw/ip_fw_sockopt.c Modified: head/sys/netpfil/ipfw/ip_fw_sockopt.c ============================================================================== --- head/sys/netpfil/ipfw/ip_fw_sockopt.c Sun Mar 5 21:56:04 2017 (r314714) +++ head/sys/netpfil/ipfw/ip_fw_sockopt.c Sun Mar 5 22:19:43 2017 (r314715) @@ -2669,7 +2669,14 @@ ref_opcode_object(struct ip_fw_chain *ch return (0); } - /* Found. Bump refcount and update kidx. */ + /* + * Object is already exist. + * Its subtype should match with expected value. + */ + if (ti->type != no->subtype) + return (EINVAL); + + /* Bump refcount and update kidx. */ no->refcnt++; rw->update(cmd, no->kidx); return (0); From owner-svn-src-all@freebsd.org Sun Mar 5 23:41:16 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C811ACFBF03 for ; Sun, 5 Mar 2017 23:41:16 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-io0-x22b.google.com (mail-io0-x22b.google.com [IPv6:2607:f8b0:4001:c06::22b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id A1DE21213 for ; Sun, 5 Mar 2017 23:41:16 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-io0-x22b.google.com with SMTP id f84so102063252ioj.0 for ; Sun, 05 Mar 2017 15:41:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=CQ8NCCHn25kPCaLoKgJscPLbYPWoy7hZjSczm+15FHg=; b=lMM3HBcSqNuZXXH5kqDPl6gpglSgBOw2BSkzFJfl5ylEawPHQ9x10cX8PJbI89Wn0V UNQ/EzDiQTpcEbUZWQD2MOxe7ceL0mEewutli4dSfiypTV+xFhHqJae6xpQeWVcJGeHV LaYCQ1fZ6II2bWIS9lYLuf7zk9/yIEy7HfUqhHP9SqhSTUNRXDafvoOtcSkK9+NqjUHa /9Dutpce7sI40p4C8FzWa1zoD05IdrOho3lFHEPzhGPN+E1jlXSxsXRVO7rYqC7aGz/W 5rUSSr92sK96u2gn7ytdkMidl8c0dWFk75F1YAFEIJdk5eaXv82TsLWl6b6uY/B4Nc89 bAbQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=CQ8NCCHn25kPCaLoKgJscPLbYPWoy7hZjSczm+15FHg=; b=E8QCNreKrH8V/ARYlgaPVRhUsgbZOCvUQ8X9Qwi3OA79fjvVbS+G5rawKVhLm6eZ4l r5UwtWVyLkX5NZXOyF3SH/raihA7wQGUEFNN7p7DehALPHo9uHbg5jgTJnVW1n+Dv9eM 29TSJfSCjOGGb05Ju+k92RPA5gmn4RhPnS5p61h393RbPc+7poVUPYzOuGnQJZ2RZIwh HIVQ9PWXJdkuL/pezy9uPLER7ToDQ7iNTmDAdqN1l4i763E4zNo0E/5lChHPUYRIRx/M 6onFtW35g1CdxDOBGgoblXn4JnlbhZ5l0RVHd3YbsuStF3xgVoQzIQ5Jrqn1XNovBuqA Z/Rw== X-Gm-Message-State: AMke39mJitOyBWcitHNtKEmsgW5ZDHV9MK5tWYWHGEgXj5d3vUXsgyg1z9ZnBnRRLUj8AvC1aphs7ViBzVFbEA== X-Received: by 10.107.198.193 with SMTP id w184mr12234519iof.19.1488757275537; Sun, 05 Mar 2017 15:41:15 -0800 (PST) MIME-Version: 1.0 Sender: wlosh@bsdimp.com Received: by 10.79.134.129 with HTTP; Sun, 5 Mar 2017 15:41:15 -0800 (PST) X-Originating-IP: [69.53.245.200] In-Reply-To: <201703052116.v25LGoEv072414@repo.freebsd.org> References: <201703052116.v25LGoEv072414@repo.freebsd.org> From: Warner Losh Date: Sun, 5 Mar 2017 16:41:15 -0700 X-Google-Sender-Auth: euayF483Kmv_iemNG73Mcv623Wc Message-ID: Subject: Re: svn commit: r314709 - head To: Bryan Drewery Cc: src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 23:41:16 -0000 On Sun, Mar 5, 2017 at 2:16 PM, Bryan Drewery wrote: > Author: bdrewery > Date: Sun Mar 5 21:16:50 2017 > New Revision: 314709 > URL: https://svnweb.freebsd.org/changeset/base/314709 > > Log: > Fix bootstrapping mtree after r313404 for older systems. > > r313404 made libnetbsd require sha384.h from libmd. Libmd added it in > r292782. Update BOOTSTRAPPING to account for this. > > Reported by: bde > Reviewed by: ngie > > Modified: > head/Makefile.inc1 > > Modified: head/Makefile.inc1 > ============================================================================== > --- head/Makefile.inc1 Sun Mar 5 19:56:20 2017 (r314708) > +++ head/Makefile.inc1 Sun Mar 5 21:16:50 2017 (r314709) > @@ -1618,10 +1618,12 @@ ${_bt}-usr.bin/m4: ${_bt}-lib/libopenbsd > ${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 > .endif > > -.if ${BOOTSTRAPPING} < 1000026 > -_nmtree= lib/libnetbsd \ I've been trying to document the bootstrapping stuff inline like # r313404 made libnetbsd require libmd so we know why things are the way they are. Sure, I can chase down a dozen things in the svn logs, but a quick shortcut like that saves a lot of time. Any chance you could do that as well? Warner > +.if ${BOOTSTRAPPING} < 1100093 > +_nmtree= lib/libmd \ > + lib/libnetbsd \ > usr.sbin/nmtree > > +${_bt}-lib/libnetbsd: ${_bt}-lib/libmd > ${_bt}-usr.sbin/nmtree: ${_bt}-lib/libnetbsd > .endif > > From owner-svn-src-all@freebsd.org Sun Mar 5 23:48:25 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C2E1FCFBF91; Sun, 5 Mar 2017 23:48:25 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 818E914B3; Sun, 5 Mar 2017 23:48:25 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25NmOPc032566; Sun, 5 Mar 2017 23:48:24 GMT (envelope-from ae@FreeBSD.org) Received: (from ae@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25NmOI1032562; Sun, 5 Mar 2017 23:48:24 GMT (envelope-from ae@FreeBSD.org) Message-Id: <201703052348.v25NmOI1032562@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org using -f From: "Andrey V. Elsukov" Date: Sun, 5 Mar 2017 23:48:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314716 - head/sys/netpfil/ipfw X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 23:48:25 -0000 Author: ae Date: Sun Mar 5 23:48:24 2017 New Revision: 314716 URL: https://svnweb.freebsd.org/changeset/base/314716 Log: Add IPv6 support to O_IP_DST_LOOKUP opcode. o check the size of O_IP_SRC_LOOKUP opcode, it can not exceed the size of ipfw_insn_u32; o rename ipfw_lookup_table_extended() function into ipfw_lookup_table() and remove old ipfw_lookup_table(); o use args->f_id.flow_id6 that is in host byte order to get DSCP value; o add SCTP ports support to 'lookup src/dst-port' opcode; o add IPv6 support to 'lookup src/dst-ip' opcode. PR: 217292 Reviewed by: melifaro MFC after: 2 weeks Sponsored by: Yandex LLC Differential Revision: https://reviews.freebsd.org/D9873 Modified: head/sys/netpfil/ipfw/ip_fw2.c head/sys/netpfil/ipfw/ip_fw_private.h head/sys/netpfil/ipfw/ip_fw_sockopt.c head/sys/netpfil/ipfw/ip_fw_table.c Modified: head/sys/netpfil/ipfw/ip_fw2.c ============================================================================== --- head/sys/netpfil/ipfw/ip_fw2.c Sun Mar 5 22:19:43 2017 (r314715) +++ head/sys/netpfil/ipfw/ip_fw2.c Sun Mar 5 23:48:24 2017 (r314716) @@ -382,8 +382,8 @@ iface_match(struct ifnet *ifp, ipfw_insn /* Check by name or by IP address */ if (cmd->name[0] != '\0') { /* match by name */ if (cmd->name[0] == '\1') /* use tablearg to match */ - return ipfw_lookup_table_extended(chain, cmd->p.kidx, 0, - &ifp->if_index, tablearg); + return ipfw_lookup_table(chain, cmd->p.kidx, 0, + &ifp->if_index, tablearg); /* Check name */ if (cmd->p.glob) { if (fnmatch(cmd->name, ifp->if_xname, 0) == 0) @@ -1455,86 +1455,130 @@ do { \ src_ip.s_addr); break; - case O_IP_SRC_LOOKUP: case O_IP_DST_LOOKUP: - if (is_ipv4) { - uint32_t key = - (cmd->opcode == O_IP_DST_LOOKUP) ? - dst_ip.s_addr : src_ip.s_addr; - uint32_t v = 0; - - if (cmdlen > F_INSN_SIZE(ipfw_insn_u32)) { - /* generic lookup. The key must be - * in 32bit big-endian format. - */ - v = ((ipfw_insn_u32 *)cmd)->d[1]; - if (v == 0) - key = dst_ip.s_addr; - else if (v == 1) - key = src_ip.s_addr; - else if (v == 6) /* dscp */ - key = (ip->ip_tos >> 2) & 0x3f; - else if (offset != 0) - break; - else if (proto != IPPROTO_TCP && - proto != IPPROTO_UDP) - break; - else if (v == 2) - key = dst_port; - else if (v == 3) - key = src_port; + { + void *pkey; + uint32_t vidx, key; + uint16_t keylen; + + if (cmdlen > F_INSN_SIZE(ipfw_insn_u32)) { + /* Determine lookup key type */ + vidx = ((ipfw_insn_u32 *)cmd)->d[1]; + if (vidx != 4 /* uid */ && + vidx != 5 /* jail */ && + is_ipv6 == 0 && is_ipv4 == 0) + break; + /* Determine key length */ + if (vidx == 0 /* dst-ip */ || + vidx == 1 /* src-ip */) + keylen = is_ipv6 ? + sizeof(struct in6_addr): + sizeof(in_addr_t); + else { + keylen = sizeof(key); + pkey = &key; + } + if (vidx == 0 /* dst-ip */) + pkey = is_ipv4 ? (void *)&dst_ip: + (void *)&args->f_id.dst_ip6; + else if (vidx == 1 /* src-ip */) + pkey = is_ipv4 ? (void *)&src_ip: + (void *)&args->f_id.src_ip6; + else if (vidx == 6 /* dscp */) { + if (is_ipv4) + key = ip->ip_tos >> 2; + else { + key = args->f_id.flow_id6; + key = (key & 0x0f) << 2 | + (key & 0xf000) >> 14; + } + key &= 0x3f; + } else if (vidx == 2 /* dst-port */ || + vidx == 3 /* src-port */) { + /* Skip fragments */ + if (offset != 0) + break; + /* Skip proto without ports */ + if (proto != IPPROTO_TCP && + proto != IPPROTO_UDP && + proto != IPPROTO_SCTP) + break; + if (vidx == 2 /* dst-port */) + key = dst_port; + else + key = src_port; + } #ifndef USERSPACE - else if (v == 4 || v == 5) { - check_uidgid( - (ipfw_insn_u32 *)cmd, - args, &ucred_lookup, + else if (vidx == 4 /* uid */ || + vidx == 5 /* jail */) { + check_uidgid( + (ipfw_insn_u32 *)cmd, + args, &ucred_lookup, #ifdef __FreeBSD__ - &ucred_cache); - if (v == 4 /* O_UID */) - key = ucred_cache->cr_uid; - else if (v == 5 /* O_JAIL */) - key = ucred_cache->cr_prison->pr_id; + &ucred_cache); + if (vidx == 4 /* uid */) + key = ucred_cache->cr_uid; + else if (vidx == 5 /* jail */) + key = ucred_cache->cr_prison->pr_id; #else /* !__FreeBSD__ */ - (void *)&ucred_cache); - if (v ==4 /* O_UID */) - key = ucred_cache.uid; - else if (v == 5 /* O_JAIL */) - key = ucred_cache.xid; + (void *)&ucred_cache); + if (vidx == 4 /* uid */) + key = ucred_cache.uid; + else if (vidx == 5 /* jail */) + key = ucred_cache.xid; #endif /* !__FreeBSD__ */ } #endif /* !USERSPACE */ else - break; - } - match = ipfw_lookup_table(chain, - cmd->arg1, key, &v); - if (!match) + break; + match = ipfw_lookup_table(chain, + cmd->arg1, keylen, pkey, &vidx); + if (!match) + break; + tablearg = vidx; break; - if (cmdlen == F_INSN_SIZE(ipfw_insn_u32)) - match = ((ipfw_insn_u32 *)cmd)->d[0] == - TARG_VAL(chain, v, tag); - else - tablearg = v; + } + /* cmdlen =< F_INSN_SIZE(ipfw_insn_u32) */ + /* FALLTHROUGH */ + } + case O_IP_SRC_LOOKUP: + { + void *pkey; + uint32_t vidx; + uint16_t keylen; + + if (is_ipv4) { + keylen = sizeof(in_addr_t); + if (cmd->opcode == O_IP_DST_LOOKUP) + pkey = &dst_ip; + else + pkey = &src_ip; } else if (is_ipv6) { - uint32_t v = 0; - void *pkey = (cmd->opcode == O_IP_DST_LOOKUP) ? - &args->f_id.dst_ip6: &args->f_id.src_ip6; - match = ipfw_lookup_table_extended(chain, - cmd->arg1, - sizeof(struct in6_addr), - pkey, &v); - if (cmdlen == F_INSN_SIZE(ipfw_insn_u32)) - match = ((ipfw_insn_u32 *)cmd)->d[0] == - TARG_VAL(chain, v, tag); - if (match) - tablearg = v; + keylen = sizeof(struct in6_addr); + if (cmd->opcode == O_IP_DST_LOOKUP) + pkey = &args->f_id.dst_ip6; + else + pkey = &args->f_id.src_ip6; + } else + break; + match = ipfw_lookup_table(chain, cmd->arg1, + keylen, pkey, &vidx); + if (!match) + break; + if (cmdlen == F_INSN_SIZE(ipfw_insn_u32)) { + match = ((ipfw_insn_u32 *)cmd)->d[0] == + TARG_VAL(chain, vidx, tag); + if (!match) + break; } + tablearg = vidx; break; + } case O_IP_FLOW_LOOKUP: { uint32_t v = 0; - match = ipfw_lookup_table_extended(chain, + match = ipfw_lookup_table(chain, cmd->arg1, 0, &args->f_id, &v); if (cmdlen == F_INSN_SIZE(ipfw_insn_u32)) match = ((ipfw_insn_u32 *)cmd)->d[0] == Modified: head/sys/netpfil/ipfw/ip_fw_private.h ============================================================================== --- head/sys/netpfil/ipfw/ip_fw_private.h Sun Mar 5 22:19:43 2017 (r314715) +++ head/sys/netpfil/ipfw/ip_fw_private.h Sun Mar 5 23:48:24 2017 (r314716) @@ -741,10 +741,8 @@ struct table_info; typedef int (table_lookup_t)(struct table_info *ti, void *key, uint32_t keylen, uint32_t *val); -int ipfw_lookup_table(struct ip_fw_chain *ch, uint16_t tbl, in_addr_t addr, - uint32_t *val); -int ipfw_lookup_table_extended(struct ip_fw_chain *ch, uint16_t tbl, - uint16_t plen, void *paddr, uint32_t *val); +int ipfw_lookup_table(struct ip_fw_chain *ch, uint16_t tbl, uint16_t plen, + void *paddr, uint32_t *val); struct named_object *ipfw_objhash_lookup_table_kidx(struct ip_fw_chain *ch, uint16_t kidx); int ipfw_ref_table(struct ip_fw_chain *ch, ipfw_obj_ntlv *ntlv, uint16_t *kidx); Modified: head/sys/netpfil/ipfw/ip_fw_sockopt.c ============================================================================== --- head/sys/netpfil/ipfw/ip_fw_sockopt.c Sun Mar 5 22:19:43 2017 (r314715) +++ head/sys/netpfil/ipfw/ip_fw_sockopt.c Sun Mar 5 23:48:24 2017 (r314716) @@ -1826,6 +1826,8 @@ check_ipfw_rule_body(ipfw_insn *cmd, int break; case O_IP_SRC_LOOKUP: + if (cmdlen > F_INSN_SIZE(ipfw_insn_u32)) + goto bad_size; case O_IP_DST_LOOKUP: if (cmd->arg1 >= V_fw_tables_max) { printf("ipfw: invalid table number %d\n", Modified: head/sys/netpfil/ipfw/ip_fw_table.c ============================================================================== --- head/sys/netpfil/ipfw/ip_fw_table.c Sun Mar 5 22:19:43 2017 (r314715) +++ head/sys/netpfil/ipfw/ip_fw_table.c Sun Mar 5 23:48:24 2017 (r314716) @@ -1657,30 +1657,13 @@ ipfw_unref_table(struct ip_fw_chain *ch, } /* - * Lookup an IP @addr in table @tbl. - * Stores found value in @val. - * - * Returns 1 if @addr was found. - */ -int -ipfw_lookup_table(struct ip_fw_chain *ch, uint16_t tbl, in_addr_t addr, - uint32_t *val) -{ - struct table_info *ti; - - ti = KIDX_TO_TI(ch, tbl); - - return (ti->lookup(ti, &addr, sizeof(in_addr_t), val)); -} - -/* * Lookup an arbtrary key @paddr of legth @plen in table @tbl. * Stores found value in @val. * * Returns 1 if key was found. */ int -ipfw_lookup_table_extended(struct ip_fw_chain *ch, uint16_t tbl, uint16_t plen, +ipfw_lookup_table(struct ip_fw_chain *ch, uint16_t tbl, uint16_t plen, void *paddr, uint32_t *val) { struct table_info *ti; From owner-svn-src-all@freebsd.org Sun Mar 5 23:59:05 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9C716CFA48E; Sun, 5 Mar 2017 23:59:05 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6C4B919C6; Sun, 5 Mar 2017 23:59:05 +0000 (UTC) (envelope-from alc@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v25Nx419036666; Sun, 5 Mar 2017 23:59:04 GMT (envelope-from alc@FreeBSD.org) Received: (from alc@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v25Nx41P036665; Sun, 5 Mar 2017 23:59:04 GMT (envelope-from alc@FreeBSD.org) Message-Id: <201703052359.v25Nx41P036665@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: alc set sender to alc@FreeBSD.org using -f From: Alan Cox Date: Sun, 5 Mar 2017 23:59:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314717 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Mar 2017 23:59:05 -0000 Author: alc Date: Sun Mar 5 23:59:04 2017 New Revision: 314717 URL: https://svnweb.freebsd.org/changeset/base/314717 Log: Style and punctuation fixes. Reviewed by: kib MFC after: 3 days Modified: head/sys/kern/imgact_elf.c Modified: head/sys/kern/imgact_elf.c ============================================================================== --- head/sys/kern/imgact_elf.c Sun Mar 5 23:48:24 2017 (r314716) +++ head/sys/kern/imgact_elf.c Sun Mar 5 23:59:04 2017 (r314717) @@ -405,7 +405,7 @@ __elfN(map_partial)(vm_map_t map, vm_obj /* * Find the page from the underlying object. */ - if (object) { + if (object != NULL) { sf = vm_imgact_map_page(object, offset); if (sf == NULL) return (KERN_FAILURE); @@ -433,7 +433,7 @@ __elfN(map_insert)(struct image_params * if (start != trunc_page(start)) { rv = __elfN(map_partial)(map, object, offset, start, round_page(start), prot); - if (rv) + if (rv != KERN_SUCCESS) return (rv); offset += round_page(start) - start; start = round_page(start); @@ -441,7 +441,7 @@ __elfN(map_insert)(struct image_params * if (end != round_page(end)) { rv = __elfN(map_partial)(map, object, offset + trunc_page(end) - start, trunc_page(end), end, prot); - if (rv) + if (rv != KERN_SUCCESS) return (rv); end = trunc_page(end); } @@ -531,7 +531,7 @@ __elfN(load_section)(struct image_params * We have two choices. We can either clear the data in the last page * of an oversized mapping, or we can start the anon mapping a page * early and copy the initialized data into that first page. We - * choose the second.. + * choose the second. */ if (memsz > filsz) map_len = trunc_page_ps(offset + filsz, pagesize) - file_addr; From owner-svn-src-all@freebsd.org Mon Mar 6 00:26:50 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 04DB3CFAC7F; Mon, 6 Mar 2017 00:26:50 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-wm0-x22c.google.com (mail-wm0-x22c.google.com [IPv6:2a00:1450:400c:c09::22c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8EBDC185C; Mon, 6 Mar 2017 00:26:49 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: by mail-wm0-x22c.google.com with SMTP id n11so52258474wma.0; Sun, 05 Mar 2017 16:26:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=tkDxyB/6S+DwAmmqeA48+fURT5QuQm8Yagx9RFvP3Q4=; b=ds5J3ss4hHtRV8mr8iX1bBsfcgbUYJkDDdd5q4o+VSLbyvYlUKgkGDibi6rTwuNiTa LpGkzr3IL539H/b/Xbyh5jOoBIAKAksP051MpPSR2hh/XB52sEGbJCVSx3c9bBsCF28x wC7U2oacuww7e3dtUujV50lfCRx/m4xshJsG+w1vIU6YqZGGo38uBh52yG61UzDSoH/1 7KWRFS5fMr+XKv1BWEK9byqeETaCASt+4W+w87BNDXj5d4n8+STOn59tEVD61YrZ9VqH 2v/buFYyqGpD2YzlnUQRj0CAgsH1oJ96RuoIjdiw/f1HAg2ovYaF2J4Rg//71bd09VMK IKFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=tkDxyB/6S+DwAmmqeA48+fURT5QuQm8Yagx9RFvP3Q4=; b=q1M0aKagmaY5xiyTgpvJ4pPRkjYFWIFvxbZ+vC1XuCXUUrUxgtR+49SeTARVN034dA Su36gx/HhI9B2Lz1chyynN+x3jCp98DPgOtY15+cZhq98f5MNlLNwaJm/0M+lz0B46mj J6q5qUPEihcedkXXUSUbhQmsxVLhKsiRIDslv9jyatohbSBAsGWo26uMgC0YTCQro0Z7 RXw4CkB3m8C9wwrsX887qFl4pQhKyJKw98HYxqMhGF9JYDSlemntZNKN+g4ZucGiAM3U hY9XUpiDXQ5jXVBbmVaZQI6dlt3b4VpWhcisxUun2fB5F22dNHY6kcBBAd7vac+4jqyT CivQ== X-Gm-Message-State: AMke39mbKTjjvsm6/Gc+IUN4uq47cZO64fznS3ahXweYEL8mGGBc3kCJseeyODbJWPy7z8gL/sXXPsEfJas5ag== X-Received: by 10.28.21.81 with SMTP id 78mr10413104wmv.138.1488760005632; Sun, 05 Mar 2017 16:26:45 -0800 (PST) MIME-Version: 1.0 Received: by 10.28.128.133 with HTTP; Sun, 5 Mar 2017 16:26:45 -0800 (PST) In-Reply-To: References: <201703042307.v24N7sSx021021@repo.freebsd.org> From: Adrian Chadd Date: Sun, 5 Mar 2017 16:26:45 -0800 Message-ID: Subject: Re: svn commit: r314687 - head/sys/dev/iwn To: Andriy Voskoboinyk Cc: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 00:26:50 -0000 Yeah. I mean, iwn and wpi are almost the same damned firmware API and hardware... kinda silly isn't it? :) I kinda wonder whether we should just unify them. -adrian On 4 March 2017 at 18:05, Andriy Voskoboinyk wrote: > Sun, 05 Mar 2017 02:37:09 +0200 =D0=B1=D1=83=D0=BB=D0=BE =D0=BD=D0=B0=D0= =BF=D0=B8=D1=81=D0=B0=D0=BD=D0=BE Adrian Chadd > : > > Hi! > > Actually, the intention is simpler - redo all the work for wpi(4) here > to bring in everything what it can - ad-hoc, hostap, aes-ccm etc > > >> hihi! >> >> So the eventualy-ish attention is that if someone wanted to finish >> p2p/tdls support they could use this function for either context. But >> it don't think the feature was ever finished, because we don't have >> p2p/tdls support yet. >> >> Well, yet. It's coming. :) >> >> >> >> -adrian >> >> >> On 4 March 2017 at 15:07, Andriy Voskoboinyk wrote: >>> >>> Author: avos >>> Date: Sat Mar 4 23:07:54 2017 >>> New Revision: 314687 >>> URL: https://svnweb.freebsd.org/changeset/base/314687 >>> >>> Log: >>> iwn: drop 'channel' parameter from iwn*_set_txpower() >>> >>> For 4965 just extract 'is_chan_5ghz' flag from the RXON structure >>> (like it was done in r281287); for others it was never used. >>> >>> Tested with Intel 6205, STA mode. >>> >>> Modified: >>> head/sys/dev/iwn/if_iwn.c >>> head/sys/dev/iwn/if_iwnvar.h >>> >>> Modified: head/sys/dev/iwn/if_iwn.c >>> >>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D >>> --- head/sys/dev/iwn/if_iwn.c Sat Mar 4 22:58:34 2017 (r31468= 6) >>> +++ head/sys/dev/iwn/if_iwn.c Sat Mar 4 23:07:54 2017 (r31468= 7) >>> @@ -254,10 +254,8 @@ static void iwn_set_led(struct iwn_softc >>> static int iwn_set_critical_temp(struct iwn_softc *); >>> static int iwn_set_timing(struct iwn_softc *, struct ieee80211_nod= e >>> *); >>> static void iwn4965_power_calibration(struct iwn_softc *, int); >>> -static int iwn4965_set_txpower(struct iwn_softc *, >>> - struct ieee80211_channel *, int); >>> -static int iwn5000_set_txpower(struct iwn_softc *, >>> - struct ieee80211_channel *, int); >>> +static int iwn4965_set_txpower(struct iwn_softc *, int); >>> +static int iwn5000_set_txpower(struct iwn_softc *, int); >>> static int iwn4965_get_rssi(struct iwn_softc *, struct iwn_rx_stat >>> *); >>> static int iwn5000_get_rssi(struct iwn_softc *, struct iwn_rx_stat >>> *); >>> static int iwn_get_noise(const struct iwn_rx_general_stats *); >>> @@ -5510,7 +5508,6 @@ iwn_set_timing(struct iwn_softc *sc, str >>> static void >>> iwn4965_power_calibration(struct iwn_softc *sc, int temp) >>> { >>> - struct ieee80211com *ic =3D &sc->sc_ic; >>> >>> DPRINTF(sc, IWN_DEBUG_TRACE, "->Doing %s\n", __func__); >>> >>> @@ -5520,7 +5517,7 @@ iwn4965_power_calibration(struct iwn_sof >>> if (abs(temp - sc->temp) >=3D 3) { >>> /* Record temperature of last calibration. */ >>> sc->temp =3D temp; >>> - (void)iwn4965_set_txpower(sc, ic->ic_bsschan, 1); >>> + (void)iwn4965_set_txpower(sc, 1); >>> } >>> } >>> >>> @@ -5530,8 +5527,7 @@ iwn4965_power_calibration(struct iwn_sof >>> * the current temperature and the current voltage. >>> */ >>> static int >>> -iwn4965_set_txpower(struct iwn_softc *sc, struct ieee80211_channel *ch= , >>> - int async) >>> +iwn4965_set_txpower(struct iwn_softc *sc, int async) >>> { >>> /* Fixed-point arithmetic division using a n-bit fractional part. */ >>> #define fdivround(a, b, n) \ >>> @@ -5546,20 +5542,21 @@ iwn4965_set_txpower(struct iwn_softc *sc >>> struct iwn4965_eeprom_chan_samples *chans; >>> const uint8_t *rf_gain, *dsp_gain; >>> int32_t vdiff, tdiff; >>> - int i, c, grp, maxpwr; >>> + int i, is_chan_5ghz, c, grp, maxpwr; >>> uint8_t chan; >>> >>> sc->rxon =3D &sc->rx_on[IWN_RXON_BSS_CTX]; >>> /* Retrieve current channel from last RXON. */ >>> chan =3D sc->rxon->chan; >>> + is_chan_5ghz =3D (sc->rxon->flags & htole32(IWN_RXON_24GHZ)) = =3D=3D 0; >>> DPRINTF(sc, IWN_DEBUG_RESET, "setting TX power for channel %d\n= ", >>> chan); >>> >>> memset(&cmd, 0, sizeof cmd); >>> - cmd.band =3D IEEE80211_IS_CHAN_5GHZ(ch) ? 0 : 1; >>> + cmd.band =3D is_chan_5ghz ? 0 : 1; >>> cmd.chan =3D chan; >>> >>> - if (IEEE80211_IS_CHAN_5GHZ(ch)) { >>> + if (is_chan_5ghz) { >>> maxpwr =3D sc->maxpwr5GHz; >>> rf_gain =3D iwn4965_rf_gain_5ghz; >>> dsp_gain =3D iwn4965_dsp_gain_5ghz; >>> @@ -5681,8 +5678,7 @@ iwn4965_set_txpower(struct iwn_softc *sc >>> } >>> >>> static int >>> -iwn5000_set_txpower(struct iwn_softc *sc, struct ieee80211_channel *ch= , >>> - int async) >>> +iwn5000_set_txpower(struct iwn_softc *sc, int async) >>> { >>> struct iwn5000_cmd_txpower cmd; >>> int cmdid; >>> @@ -6693,7 +6689,7 @@ iwn_config(struct iwn_softc *sc) >>> } >>> >>> /* Configuration has changed, set TX power accordingly. */ >>> - if ((error =3D ops->set_txpower(sc, ic->ic_curchan, 0)) !=3D 0)= { >>> + if ((error =3D ops->set_txpower(sc, 0)) !=3D 0) { >>> device_printf(sc->sc_dev, "%s: could not set TX power\n= ", >>> __func__); >>> return error; >>> @@ -7096,7 +7092,7 @@ iwn_auth(struct iwn_softc *sc, struct ie >>> } >>> >>> /* Configuration has changed, set TX power accordingly. */ >>> - if ((error =3D ops->set_txpower(sc, ni->ni_chan, 1)) !=3D 0) { >>> + if ((error =3D ops->set_txpower(sc, 1)) !=3D 0) { >>> device_printf(sc->sc_dev, >>> "%s: could not set TX power, error %d\n", __func__, >>> error); >>> return error; >>> @@ -7180,7 +7176,7 @@ iwn_run(struct iwn_softc *sc, struct iee >>> } >>> >>> /* Configuration has changed, set TX power accordingly. */ >>> - if ((error =3D ops->set_txpower(sc, ni->ni_chan, 1)) !=3D 0) { >>> + if ((error =3D ops->set_txpower(sc, 1)) !=3D 0) { >>> device_printf(sc->sc_dev, >>> "%s: could not set TX power, error %d\n", __func__, >>> error); >>> return error; >>> >>> Modified: head/sys/dev/iwn/if_iwnvar.h >>> >>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D >>> --- head/sys/dev/iwn/if_iwnvar.h Sat Mar 4 22:58:34 2017 >>> (r314686) >>> +++ head/sys/dev/iwn/if_iwnvar.h Sat Mar 4 23:07:54 2017 >>> (r314687) >>> @@ -206,8 +206,7 @@ struct iwn_ops { >>> uint16_t); >>> int (*get_temperature)(struct iwn_softc *); >>> int (*get_rssi)(struct iwn_softc *, struct >>> iwn_rx_stat *); >>> - int (*set_txpower)(struct iwn_softc *, >>> - struct ieee80211_channel *, int); >>> + int (*set_txpower)(struct iwn_softc *, int); >>> int (*init_gains)(struct iwn_softc *); >>> int (*set_gains)(struct iwn_softc *); >>> int (*add_node)(struct iwn_softc *, struct >>> iwn_node_info *, From owner-svn-src-all@freebsd.org Mon Mar 6 00:34:34 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DC757CFAFD4; Mon, 6 Mar 2017 00:34:34 +0000 (UTC) (envelope-from cy.schubert@komquats.com) Received: from smtp-out-so.shaw.ca (smtp-out-so.shaw.ca [64.59.136.139]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 92BC21E76; Mon, 6 Mar 2017 00:34:33 +0000 (UTC) (envelope-from cy.schubert@komquats.com) Received: from spqr.komquats.com ([96.50.22.10]) by shaw.ca with SMTP id kgbZcJKKzC3JIkgbacRa7j; Sun, 05 Mar 2017 17:34:26 -0700 X-Authority-Analysis: v=2.2 cv=XbT59Mx5 c=1 sm=1 tr=0 a=jvE2nwUzI0ECrNeyr98KWA==:117 a=jvE2nwUzI0ECrNeyr98KWA==:17 a=kj9zAlcOel0A:10 a=6Iz7jQTuP9IA:10 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=vAimRkpKBPmu871xdtAA:9 a=CjuIK1q_8ugA:10 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTPS id C44C7F0; Sun, 5 Mar 2017 16:34:24 -0800 (PST) Received: from slippy (localhost [127.0.0.1]) by slippy.cwsent.com (8.15.2/8.15.2) with ESMTP id v260YOaN028788; Sun, 5 Mar 2017 16:34:24 -0800 (PST) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <201703060034.v260YOaN028788@slippy.cwsent.com> X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.6 Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: "Andrey V. Elsukov" cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314716 - head/sys/netpfil/ipfw In-Reply-To: Message from "Andrey V. Elsukov" of "Sun, 05 Mar 2017 23:48:24 +0000." <201703052348.v25NmOI1032562@repo.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Sun, 05 Mar 2017 16:34:24 -0800 X-CMAE-Envelope: MS4wfNgFh8FyjcN0UilmoWq9IF6mqw04q+Grk908Uq5LQC4t0lytE2wq/ugp33Uz5L5q5Yl28gfwe0VAZeC5EXYCe4SpQl/CCkvDUM6RrCPBi/itDrzXjpCY Y8b3TqJbp/5IyTIPyoE9JY3HVkUMg+fbuIIcxr33hozPBpGuUVVyhkG2ndqAGslWIlyFhyw1+74FPyGCnxuGA5lXYwkLxVpWlKhCYxqXYY4c6C7+3iqYaIFN Vv+D7ctsy5LMGLCmwEti6ZTGyzBX3Ij1T6hAjQYp1Y0KpoEqpkqTnObj983V5Rhz X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 00:34:35 -0000 In message <201703052348.v25NmOI1032562@repo.freebsd.org>, "Andrey V. Elsukov" writes: > Author: ae > Date: Sun Mar 5 23:48:24 2017 > New Revision: 314716 > URL: https://svnweb.freebsd.org/changeset/base/314716 > > Log: > Add IPv6 support to O_IP_DST_LOOKUP opcode. > > o check the size of O_IP_SRC_LOOKUP opcode, it can not exceed the size of > ipfw_insn_u32; > o rename ipfw_lookup_table_extended() function into ipfw_lookup_table() and > remove old ipfw_lookup_table(); > o use args->f_id.flow_id6 that is in host byte order to get DSCP value; > o add SCTP ports support to 'lookup src/dst-port' opcode; > o add IPv6 support to 'lookup src/dst-ip' opcode. > > PR: 217292 > Reviewed by: melifaro > MFC after: 2 weeks > Sponsored by: Yandex LLC > Differential Revision: https://reviews.freebsd.org/D9873 > > Modified: > head/sys/netpfil/ipfw/ip_fw2.c > head/sys/netpfil/ipfw/ip_fw_private.h > head/sys/netpfil/ipfw/ip_fw_sockopt.c > head/sys/netpfil/ipfw/ip_fw_table.c I seem to bad luck this week. This broke the build in a couple of places next to each other. Does this look good? Index: nat64/nat64stl.c =================================================================== --- nat64/nat64stl.c (revision 314717) +++ nat64/nat64stl.c (working copy) @@ -184,7 +184,7 @@ * IPv4 mapped address. */ ip6i = mtodo(m, hlen); - if (ipfw_lookup_table_extended(chain, cfg->map64, + if (ipfw_lookup_table(chain, cfg->map64, sizeof(struct in6_addr), &ip6i->ip6_dst, &tablearg) == 0) { m_freem(m); return (NAT64RETURN); @@ -220,10 +220,10 @@ switch (args->f_id.addr_type) { case 4: ret = ipfw_lookup_table(chain, cfg->map46, - htonl(args->f_id.dst_ip), &tablearg); + sizeof(dst_ip), htonl(args->f_id.dst_ip), &tablearg); break; case 6: - ret = ipfw_lookup_table_extended(chain, cfg->map64, + ret = ipfw_lookup_table(chain, cfg->map64, sizeof(struct in6_addr), &args->f_id.src_ip6, &tablearg); break; default: -- Cheers, Cy Schubert FreeBSD UNIX: Web: http://www.FreeBSD.org The need of the many outweighs the greed of the few. From owner-svn-src-all@freebsd.org Mon Mar 6 00:41:36 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 24268CF79EB; Mon, 6 Mar 2017 00:41:36 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from mail.baldwin.cx (bigwig.baldwin.cx [IPv6:2001:470:1f11:75::1]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 02EC417B2; Mon, 6 Mar 2017 00:41:36 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from ralph.baldwin.cx (c-73-231-226-104.hsd1.ca.comcast.net [73.231.226.104]) by mail.baldwin.cx (Postfix) with ESMTPSA id 13EBC10A7FA; Sun, 5 Mar 2017 19:41:34 -0500 (EST) From: John Baldwin To: Pedro Giffuni Cc: Slawa Olhovchenkov , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314669 - head/sys/i386/conf Date: Sun, 05 Mar 2017 15:24:59 -0800 Message-ID: <1537596.qhqdTsTLLF@ralph.baldwin.cx> User-Agent: KMail/4.14.10 (FreeBSD/11.0-STABLE; KDE/4.14.10; amd64; ; ) In-Reply-To: References: <201703041504.v24F4HMh023937@repo.freebsd.org> <7873439.f6BlOXHt6g@ralph.baldwin.cx> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.4.3 (mail.baldwin.cx); Sun, 05 Mar 2017 19:41:34 -0500 (EST) X-Virus-Scanned: clamav-milter 0.99.2 at mail.baldwin.cx X-Virus-Status: Clean X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 00:41:36 -0000 On Saturday, March 04, 2017 08:14:11 PM Pedro Giffuni wrote: > > On 3/4/2017 5:51 PM, John Baldwin wrote: > > On Saturday, March 04, 2017 03:49:52 PM Pedro Giffuni wrote: > >>> Il giorno 04 mar 2017, alle ore 14:43, John Baldwin ha scritto: > >>> > >>> On Saturday, March 04, 2017 10:52:46 AM Pedro Giffuni wrote: > >>>> On 03/04/17 10:32, Slawa Olhovchenkov wrote: > >>>>> On Sat, Mar 04, 2017 at 03:04:17PM +0000, Pedro F. Giffuni wrote: > >>>>> > >>>>>> Author: pfg > >>>>>> Date: Sat Mar 4 15:04:17 2017 > >>>>>> New Revision: 314669 > >>>>>> URL: https://svnweb.freebsd.org/changeset/base/314669 > >>>>>> > >>>>>> Log: > >>>>>> Drop i486 from the default i386 GENERIC kernel configuration. > >>>>>> > >>>>>> 80486 production was stopped by Intel on September 2007. Dropping the 486 > >>>>>> configuration option from the GENERIC kernel improves performance > >>>>>> slightly. > >>>>>> > >>>>>> Removing I486_CPU is consistent at this time: we don't support any > >>>>>> processor without a FPU and the PC-98 arch, which frequently involved i486 > >>>>>> CPUs, is also gone so we don't test such platforms anymore. > >>>>> What is realy mean? > >>>> This means we don't do work-arounds that would be required for raw 486. > >>>> Instead we will use the 586 instructions by default. > >>> This doesn't change that. The kernel already has runtime tests in place > >>> for new things on 486 and later via cpuid. > >>> > >> Hmm ..then I am wondering if I effectively changed anything? > > The only change is a 486 now panics on boot when it used to work fine. :-/ > > > > Nothing for other CPUs has changed. > > Not much has been lost then. > FWIW, I have a "Pentium overdrive" somewhere in the basement which could > theoretically boot FreeBSD 12 but last I remember just rebuilding a > kernel was painful and the memory and HD limitations really make it a no-go. So I would rather support 486 in GENERIC or not support it at all. It doesn't cost anything for it to be in GENERIC, so if we have it, I think we should ship it. Also, the original justification for this commit of a 4% performance gain doesn't seem to have any basis in fact. The one gain I can think of is de-cluttering some things like identcpu.c and initcpu.c which can only happen if we remove code entirely, not from removing an option in GENERIC. -- John Baldwin From owner-svn-src-all@freebsd.org Mon Mar 6 00:41:38 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CD9F0CF7A23; Mon, 6 Mar 2017 00:41:38 +0000 (UTC) (envelope-from cy.schubert@komquats.com) Received: from smtp-out-so.shaw.ca (smtp-out-so.shaw.ca [64.59.136.139]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 8311D17E3; Mon, 6 Mar 2017 00:41:38 +0000 (UTC) (envelope-from cy.schubert@komquats.com) Received: from spqr.komquats.com ([96.50.22.10]) by shaw.ca with SMTP id kgiWcJMTJC3JIkgiXcRbIw; Sun, 05 Mar 2017 17:41:37 -0700 X-Authority-Analysis: v=2.2 cv=XbT59Mx5 c=1 sm=1 tr=0 a=jvE2nwUzI0ECrNeyr98KWA==:117 a=jvE2nwUzI0ECrNeyr98KWA==:17 a=kj9zAlcOel0A:10 a=6Iz7jQTuP9IA:10 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=VKfOjvUPJFuBEwFil5AA:9 a=CjuIK1q_8ugA:10 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTPS id 4B70411A; Sun, 5 Mar 2017 16:41:36 -0800 (PST) Received: from slippy (localhost [127.0.0.1]) by slippy.cwsent.com (8.15.2/8.15.2) with ESMTP id v260fa9C078041; Sun, 5 Mar 2017 16:41:36 -0800 (PST) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <201703060041.v260fa9C078041@slippy.cwsent.com> X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.6 Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Cy Schubert cc: "Andrey V. Elsukov" , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314716 - head/sys/netpfil/ipfw In-Reply-To: Message from Cy Schubert of "Sun, 05 Mar 2017 16:34:24 -0800." Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Sun, 05 Mar 2017 16:41:36 -0800 X-CMAE-Envelope: MS4wfEgczR1RA/ynB+6Rvby5Kf5KaRYz5dbhyf4HqjeRxwbCSW/eEIRjdP+AMJj1c8WhVG9QEFt5VMBBlr89qZdx82V0XLdii7tTm7TFs7/NTaRil/iksJOc y0FVAjXqoz33HQb9wVqlXAqlfKWfKplt0KRY4GQtBLPjezLsyGIxNQPg6QufBSB/H2HolCv9b+W287gYNn++jQvb+TssTckOVn4QrOfuM3jBGYoIQMI8K/aq YM2SFVjFu2+B+lWZKnyu2aakWBuhMJ2hN8xs1nZQaQeieFQJuDSyzk/TrNyLg/cS X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 00:41:38 -0000 Cy Schubert writes: > In message <201703052348.v25NmOI1032562@repo.freebsd.org>, "Andrey V. > Elsukov" > writes: > > Author: ae > > Date: Sun Mar 5 23:48:24 2017 > > New Revision: 314716 > > URL: https://svnweb.freebsd.org/changeset/base/314716 > > > > Log: > > Add IPv6 support to O_IP_DST_LOOKUP opcode. > > > > o check the size of O_IP_SRC_LOOKUP opcode, it can not exceed the size of > > ipfw_insn_u32; > > o rename ipfw_lookup_table_extended() function into ipfw_lookup_table() a > nd > > remove old ipfw_lookup_table(); > > o use args->f_id.flow_id6 that is in host byte order to get DSCP value; > > o add SCTP ports support to 'lookup src/dst-port' opcode; > > o add IPv6 support to 'lookup src/dst-ip' opcode. > > > > PR: 217292 > > Reviewed by: melifaro > > MFC after: 2 weeks > > Sponsored by: Yandex LLC > > Differential Revision: https://reviews.freebsd.org/D9873 > > > > Modified: > > head/sys/netpfil/ipfw/ip_fw2.c > > head/sys/netpfil/ipfw/ip_fw_private.h > > head/sys/netpfil/ipfw/ip_fw_sockopt.c > > head/sys/netpfil/ipfw/ip_fw_table.c > > I seem to bad luck this week. This broke the build in a couple of places > next to each other. Does this look good? > > Index: nat64/nat64stl.c > =================================================================== > --- nat64/nat64stl.c (revision 314717) > +++ nat64/nat64stl.c (working copy) > @@ -184,7 +184,7 @@ > * IPv4 mapped address. > */ > ip6i = mtodo(m, hlen); > - if (ipfw_lookup_table_extended(chain, cfg->map64, > + if (ipfw_lookup_table(chain, cfg->map64, > sizeof(struct in6_addr), &ip6i->ip6_dst, &tablearg) == 0) { > m_freem(m); > return (NAT64RETURN); > @@ -220,10 +220,10 @@ > switch (args->f_id.addr_type) { > case 4: > ret = ipfw_lookup_table(chain, cfg->map46, > - htonl(args->f_id.dst_ip), &tablearg); > + sizeof(dst_ip), htonl(args->f_id.dst_ip), &tablearg); This should probably say sizeof(f_id.dst_ip). > break; > case 6: > - ret = ipfw_lookup_table_extended(chain, cfg->map64, > + ret = ipfw_lookup_table(chain, cfg->map64, > sizeof(struct in6_addr), &args->f_id.src_ip6, &tablearg); > break; > default: > -- Cheers, Cy Schubert FreeBSD UNIX: Web: http://www.FreeBSD.org The need of the many outweighs the greed of the few. From owner-svn-src-all@freebsd.org Mon Mar 6 00:42:00 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7D105CF7B52; Mon, 6 Mar 2017 00:42:00 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 49AFD1A53; Mon, 6 Mar 2017 00:42:00 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v260fxp4056381; Mon, 6 Mar 2017 00:41:59 GMT (envelope-from ae@FreeBSD.org) Received: (from ae@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v260fx8I056380; Mon, 6 Mar 2017 00:41:59 GMT (envelope-from ae@FreeBSD.org) Message-Id: <201703060041.v260fx8I056380@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org using -f From: "Andrey V. Elsukov" Date: Mon, 6 Mar 2017 00:41:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314718 - head/sys/netpfil/ipfw/nat64 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 00:42:00 -0000 Author: ae Date: Mon Mar 6 00:41:59 2017 New Revision: 314718 URL: https://svnweb.freebsd.org/changeset/base/314718 Log: Fix the build. Use new ipfw_lookup_table() in the nat64 too. Reported by: cy MFC after: 2 weeks Modified: head/sys/netpfil/ipfw/nat64/nat64stl.c Modified: head/sys/netpfil/ipfw/nat64/nat64stl.c ============================================================================== --- head/sys/netpfil/ipfw/nat64/nat64stl.c Sun Mar 5 23:59:04 2017 (r314717) +++ head/sys/netpfil/ipfw/nat64/nat64stl.c Mon Mar 6 00:41:59 2017 (r314718) @@ -184,7 +184,7 @@ nat64stl_handle_icmp6(struct ip_fw_chain * IPv4 mapped address. */ ip6i = mtodo(m, hlen); - if (ipfw_lookup_table_extended(chain, cfg->map64, + if (ipfw_lookup_table(chain, cfg->map64, sizeof(struct in6_addr), &ip6i->ip6_dst, &tablearg) == 0) { m_freem(m); return (NAT64RETURN); @@ -204,6 +204,7 @@ ipfw_nat64stl(struct ip_fw_chain *chain, { ipfw_insn *icmd; struct nat64stl_cfg *cfg; + in_addr_t dst4; uint32_t tablearg; int ret; @@ -219,11 +220,12 @@ ipfw_nat64stl(struct ip_fw_chain *chain, switch (args->f_id.addr_type) { case 4: - ret = ipfw_lookup_table(chain, cfg->map46, - htonl(args->f_id.dst_ip), &tablearg); + dst4 = htonl(args->f_id.dst_ip); + ret = ipfw_lookup_table(chain, cfg->map46, sizeof(in_addr_t), + &dst4, &tablearg); break; case 6: - ret = ipfw_lookup_table_extended(chain, cfg->map64, + ret = ipfw_lookup_table(chain, cfg->map64, sizeof(struct in6_addr), &args->f_id.src_ip6, &tablearg); break; default: From owner-svn-src-all@freebsd.org Mon Mar 6 00:45:42 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 549DECF7C38; Mon, 6 Mar 2017 00:45:42 +0000 (UTC) (envelope-from cy.schubert@komquats.com) Received: from smtp-out-so.shaw.ca (smtp-out-so.shaw.ca [64.59.136.139]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 0B3311D23; Mon, 6 Mar 2017 00:45:41 +0000 (UTC) (envelope-from cy.schubert@komquats.com) Received: from spqr.komquats.com ([96.50.22.10]) by shaw.ca with SMTP id kgmScJNguC3JIkgmTcRbyt; Sun, 05 Mar 2017 17:45:41 -0700 X-Authority-Analysis: v=2.2 cv=XbT59Mx5 c=1 sm=1 tr=0 a=jvE2nwUzI0ECrNeyr98KWA==:117 a=jvE2nwUzI0ECrNeyr98KWA==:17 a=kj9zAlcOel0A:10 a=6Iz7jQTuP9IA:10 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=447PbnccGau49XnNYn8A:9 a=CjuIK1q_8ugA:10 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 Received: from slippy.cwsent.com (slippy [10.1.1.91]) by spqr.komquats.com (Postfix) with ESMTPS id CAC6A130; Sun, 5 Mar 2017 16:45:39 -0800 (PST) Received: from slippy (localhost [127.0.0.1]) by slippy.cwsent.com (8.15.2/8.15.2) with ESMTP id v260jdth017864; Sun, 5 Mar 2017 16:45:39 -0800 (PST) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <201703060045.v260jdth017864@slippy.cwsent.com> X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.6 Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: "Andrey V. Elsukov" cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314718 - head/sys/netpfil/ipfw/nat64 In-Reply-To: Message from "Andrey V. Elsukov" of "Mon, 06 Mar 2017 00:41:59 +0000." <201703060041.v260fx8I056380@repo.freebsd.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Sun, 05 Mar 2017 16:45:39 -0800 X-CMAE-Envelope: MS4wfPpGhEGyeKsQXNC5AQ3SKAfnGewNWdOw0Oa4T0abdjj62aF4LRFoIfZanvrOIBRZnYDabdHH+3bk5JJS7/Rquo6N735AntIM9t8mfdo8U7p9h2XBT78r AaDaksN4xeh0+sI3l0z0kio2ZL+mD0eL+/ncahdPLvpfOigZpsOhEF12xoneTt+MXt+EFgv85YzM8f7B7SsG22kNNAe94NICs5WZa5AoMbwhpA2wxEdxlWt8 FmLU/SlElIm0EDI/aGSGk2haQn2s8EVSO6r7QKXNUu0NQWPxsJA6cmPzWo0xUt/N X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 00:45:42 -0000 In message <201703060041.v260fx8I056380@repo.freebsd.org>, "Andrey V. Elsukov" writes: > Author: ae > Date: Mon Mar 6 00:41:59 2017 > New Revision: 314718 > URL: https://svnweb.freebsd.org/changeset/base/314718 > > Log: > Fix the build. Use new ipfw_lookup_table() in the nat64 too. > > Reported by: cy > MFC after: 2 weeks > > Modified: > head/sys/netpfil/ipfw/nat64/nat64stl.c > > Modified: head/sys/netpfil/ipfw/nat64/nat64stl.c > ============================================================================= > = > --- head/sys/netpfil/ipfw/nat64/nat64stl.c Sun Mar 5 23:59:04 2017 > (r314717) > +++ head/sys/netpfil/ipfw/nat64/nat64stl.c Mon Mar 6 00:41:59 2017 > (r314718) > @@ -184,7 +184,7 @@ nat64stl_handle_icmp6(struct ip_fw_chain > * IPv4 mapped address. > */ > ip6i = mtodo(m, hlen); > - if (ipfw_lookup_table_extended(chain, cfg->map64, > + if (ipfw_lookup_table(chain, cfg->map64, > sizeof(struct in6_addr), &ip6i->ip6_dst, &tablearg) == 0) { > m_freem(m); > return (NAT64RETURN); > @@ -204,6 +204,7 @@ ipfw_nat64stl(struct ip_fw_chain *chain, > { > ipfw_insn *icmd; > struct nat64stl_cfg *cfg; > + in_addr_t dst4; > uint32_t tablearg; > int ret; > > @@ -219,11 +220,12 @@ ipfw_nat64stl(struct ip_fw_chain *chain, > > switch (args->f_id.addr_type) { > case 4: > - ret = ipfw_lookup_table(chain, cfg->map46, > - htonl(args->f_id.dst_ip), &tablearg); > + dst4 = htonl(args->f_id.dst_ip); > + ret = ipfw_lookup_table(chain, cfg->map46, sizeof(in_addr_t), > + &dst4, &tablearg); > break; > case 6: > - ret = ipfw_lookup_table_extended(chain, cfg->map64, > + ret = ipfw_lookup_table(chain, cfg->map64, > sizeof(struct in6_addr), &args->f_id.src_ip6, &tablearg); > break; > default: > > Cool. Thanks. Better than my quick workaround before I leave the house.. -- Cheers, Cy Schubert FreeBSD UNIX: Web: http://www.FreeBSD.org The need of the many outweighs the greed of the few. From owner-svn-src-all@freebsd.org Mon Mar 6 01:06:08 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 374E7CF7FE4; Mon, 6 Mar 2017 01:06:08 +0000 (UTC) (envelope-from drosih@rpi.edu) Received: from smtp9.server.rpi.edu (smtp9.server.rpi.edu [128.113.2.229]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "canit.localdomain", Issuer "canit.localdomain" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id F0E4E14BA; Mon, 6 Mar 2017 01:06:07 +0000 (UTC) (envelope-from drosih@rpi.edu) Received: from smtp-auth3.server.rpi.edu (route.canit.rpi.edu [128.113.2.233]) by smtp9.server.rpi.edu (8.14.4/8.14.4/Debian-8+deb8u1) with ESMTP id v2615w7W011978 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sun, 5 Mar 2017 20:05:59 -0500 Received: from smtp-auth3.server.rpi.edu (localhost [127.0.0.1]) by smtp-auth3.server.rpi.edu (Postfix) with ESMTP id E154358052; Sun, 5 Mar 2017 20:05:58 -0500 (EST) Received: from [128.113.24.47] (gilead-qc124.netel.rpi.edu [128.113.124.17]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: drosih) by smtp-auth3.server.rpi.edu (Postfix) with ESMTPSA id C64BA58037; Sun, 5 Mar 2017 20:05:58 -0500 (EST) From: "Garance A Drosehn" To: "Ngie Cooper" Cc: rgrimes@FreeBSD.org, src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org Subject: Re: svn commit: r314654 - in head/cddl: lib/drti lib/libavl lib/libctf lib/libdtrace lib/libnvpair lib/libumem lib/libuutil lib/libzfs lib/libzfs_core lib/libzpool sbin/zfs sbin/zpool usr.bin/ctfconver... Date: Sun, 05 Mar 2017 20:05:52 -0500 Message-ID: <7B9F63AD-4EC4-4D5E-884B-3D0A22AB3952@rpi.edu> In-Reply-To: <03156186-221F-4EEB-A86E-077E46E28296@gmail.com> References: <201703042039.v24KdcDE078734@pdx.rh.CN85.dnsmgr.net> <03156186-221F-4EEB-A86E-077E46E28296@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; format=flowed X-Mailer: MailMate (1.9.6r5347) X-Virus-Scanned: ClamAV using ClamSMTP X-Bayes-Prob: 0.0001 (Score 0, tokens from: outgoing, @@RPTN) X-Spam-Score: 0.00 () [Hold at 10.10] X-CanIt-Incident-Id: 02SQp5XgA X-CanIt-Geo: ip=128.113.124.17; country=US; region=New York; city=Troy; latitude=42.7495; longitude=-73.5951; http://maps.google.com/maps?q=42.7495,-73.5951&z=6 X-CanItPRO-Stream: outgoing X-Canit-Stats-ID: Bayes signature not available X-Scanned-By: CanIt (www . roaringpenguin . com) on 128.113.2.229 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 01:06:08 -0000 On 4 Mar 2017, at 15:42, Ngie Cooper (yaneurabeya) wrote: >> On Mar 4, 2017, at 12:39, Rodney W. Grimes wrote: >> >> On 4 Mar 2017, at 15:13, Bryan Drewery wrote: >>> >>> Where is this discussion? The only one I can find is >>> https://reviews.freebsd.org/D9207 which seems to have >>> a consensus of moving to SRCTOP and :H vs '../..'. >> >> There was a short discussion here on the commiters list >> with some others expressing the preferred the relative >> status of things even though it clutters logs. >> >> D9207 touches 15 files.. I would not consider that an >> adequate review that is actually going to change nearly >> every Makefile in the tree, and change what people have >> been looking and at working with for 30 years. >> >> I don't think any differntial that only had 3 or 4 people >> involved that is going to effect all developers is >> adequate either. Tree wide sweeping changes should be >> discussed far more widely. >> >> Idk, maybe I am to personally attached to the relative >> paths.. cause I had a major part in helping them all to >> work, or perhaps its my been burned by absolute paths >> that had to be reworked too many times in my past. But >> my gut is telling me this change is Bad(tm). > > I care about this for the reasons brewery posted, but I > also care because it slows down my terminal output and > it bloats my disk with typescript logs that contain > unnecessary information. FWIW, here was my method to fix the "slows down output" issue. I wrote a wrapper around 'make' which I called "wcmake", and it runs the output from a 'make' command through a script which does a variety of analysis on that output. Among other things, it truncates the lines of make-output to screen width, but it saves the full output to a temp file, and then compresses that temp file. It also parses and condenses the output so what the user sees at the console looks like: cc -c /usr/src/usr.bin/make/arch.c -O2 -pipe -I/usr/src/usr.bin/make -DMAKE_V|+ cc -c /usr/src/usr.bin/make/buf.c -O2 -pipe -I/usr/src/usr.bin/make -DMAKE_VE|+ cc -c /usr/src/usr.bin/make/cond.c -O2 -pipe -I/usr/src/usr.bin/make -DMAKE_V|+ instead of: cc -O2 -pipe -I/usr/src/usr.bin/make -DMAKE_VERSION=\"9201210220\" -DDEFSHELLNAME=\"sh\" -std=gnu99 -fstack-protector -Wsystem-headers -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -c /usr/src/usr.bin/make/arch.c -o arch.o cc -O2 -pipe -I/usr/src/usr.bin/make -DMAKE_VERSION=\"9201210220\" -DDEFSHELLNAME=\"sh\" -std=gnu99 -fstack-protector -Wsystem-headers -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -c /usr/src/usr.bin/make/buf.c -o buf.o cc -O2 -pipe -I/usr/src/usr.bin/make -DMAKE_VERSION=\"9201210220\" -DDEFSHELLNAME=\"sh\" -std=gnu99 -fstack-protector -Wsystem-headers -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-externs -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -c /usr/src/usr.bin/make/cond.c -o cond.o # [I added blank-lines between the lines of make-output, so # it doesn't look so much like a solid wall of characters] (ie, it moves the '-c filename' to the start of the line, strips the setting of any environment variables at the start, and tacks on the '|+' at the end if it has truncated the line). It also parses the output looking for warning messages, and writes a summary of messages-seen after the 'make' has finished. One of the goals was to speed up buildworld's when I was doing them via a serial console-session or over a slow ssh-connection. But this way if something really bad or odd *did* come up, I could look at the original full make-output which was saved on disk. Adding a wrapper-script obviously adds more CPU work to the build, but my builds definitely finished faster as-far-as wall-clock time because I was writing so much less output to the console. I have two versions of this script, and I don't remember why there are two versions. The first one was written in perl, and later I wrote a second one in ruby. Both are under ~gad/scripts on the machines at freebsd.org. I'm sure the code in the scripts is probably lousy and somewhat embarrassing (to me), but you could at least check them out and see where I was going with it. disclaimer: I haven't taken a serious look at these scripts a few years. I'm sure they need to be updated due to new commands and new warning messages which have appeared since then. -- Garance Alistair Drosehn = drosih@rpi.edu Senior Systems Programmer or gad@FreeBSD.org Rensselaer Polytechnic Institute; Troy, NY; USA From owner-svn-src-all@freebsd.org Mon Mar 6 01:11:36 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3D9B4CF71D2; Mon, 6 Mar 2017 01:11:36 +0000 (UTC) (envelope-from badger@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EE5D3173A; Mon, 6 Mar 2017 01:11:35 +0000 (UTC) (envelope-from badger@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v261BZJf066013; Mon, 6 Mar 2017 01:11:35 GMT (envelope-from badger@FreeBSD.org) Received: (from badger@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v261BZMM066012; Mon, 6 Mar 2017 01:11:35 GMT (envelope-from badger@FreeBSD.org) Message-Id: <201703060111.v261BZMM066012@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: badger set sender to badger@FreeBSD.org using -f From: Eric Badger Date: Mon, 6 Mar 2017 01:11:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314719 - stable/11/sys/kern X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 01:11:36 -0000 Author: badger Date: Mon Mar 6 01:11:34 2017 New Revision: 314719 URL: https://svnweb.freebsd.org/changeset/base/314719 Log: MFC r313733: sleepq_catch_signals: do thread suspension before signal check Since locks are dropped when a thread suspends, it's possible for another thread to deliver a signal to the suspended thread. If the thread awakens from suspension without checking for signals, it may go to sleep despite having a pending signal that should wake it up. Therefore the suspension check is done first, so any signals sent while suspended will be caught in the subsequent signal check. Approved by: kib (mentor) Sponsored by: Dell EMC Modified: stable/11/sys/kern/subr_sleepqueue.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/kern/subr_sleepqueue.c ============================================================================== --- stable/11/sys/kern/subr_sleepqueue.c Mon Mar 6 00:41:59 2017 (r314718) +++ stable/11/sys/kern/subr_sleepqueue.c Mon Mar 6 01:11:34 2017 (r314719) @@ -430,6 +430,7 @@ sleepq_catch_signals(void *wchan, int pr struct sigacts *ps; int sig, ret; + ret = 0; td = curthread; p = curproc; sc = SC_LOOKUP(wchan); @@ -443,53 +444,65 @@ sleepq_catch_signals(void *wchan, int pr } /* - * See if there are any pending signals for this thread. If not - * we can switch immediately. Otherwise do the signal processing - * directly. + * See if there are any pending signals or suspension requests for this + * thread. If not, we can switch immediately. */ thread_lock(td); - if ((td->td_flags & (TDF_NEEDSIGCHK | TDF_NEEDSUSPCHK)) == 0) { - sleepq_switch(wchan, pri); - return (0); - } - thread_unlock(td); - mtx_unlock_spin(&sc->sc_lock); - CTR3(KTR_PROC, "sleepq catching signals: thread %p (pid %ld, %s)", - (void *)td, (long)p->p_pid, td->td_name); - PROC_LOCK(p); - ps = p->p_sigacts; - mtx_lock(&ps->ps_mtx); - sig = cursig(td); - if (sig == -1) { - mtx_unlock(&ps->ps_mtx); - KASSERT((td->td_flags & TDF_SBDRY) != 0, ("lost TDF_SBDRY")); - KASSERT(TD_SBDRY_INTR(td), - ("lost TDF_SERESTART of TDF_SEINTR")); - KASSERT((td->td_flags & (TDF_SEINTR | TDF_SERESTART)) != - (TDF_SEINTR | TDF_SERESTART), - ("both TDF_SEINTR and TDF_SERESTART")); - ret = TD_SBDRY_ERRNO(td); - } else if (sig == 0) { - mtx_unlock(&ps->ps_mtx); - ret = thread_suspend_check(1); - MPASS(ret == 0 || ret == EINTR || ret == ERESTART); - } else { - if (SIGISMEMBER(ps->ps_sigintr, sig)) - ret = EINTR; - else - ret = ERESTART; - mtx_unlock(&ps->ps_mtx); + if ((td->td_flags & (TDF_NEEDSIGCHK | TDF_NEEDSUSPCHK)) != 0) { + thread_unlock(td); + mtx_unlock_spin(&sc->sc_lock); + CTR3(KTR_PROC, "sleepq catching signals: thread %p (pid %ld, %s)", + (void *)td, (long)p->p_pid, td->td_name); + PROC_LOCK(p); + /* + * Check for suspension first. Checking for signals and then + * suspending could result in a missed signal, since a signal + * can be delivered while this thread is suspended. + */ + if ((td->td_flags & TDF_NEEDSUSPCHK) != 0) { + ret = thread_suspend_check(1); + MPASS(ret == 0 || ret == EINTR || ret == ERESTART); + if (ret != 0) { + PROC_UNLOCK(p); + mtx_lock_spin(&sc->sc_lock); + thread_lock(td); + goto out; + } + } + if ((td->td_flags & TDF_NEEDSIGCHK) != 0) { + ps = p->p_sigacts; + mtx_lock(&ps->ps_mtx); + sig = cursig(td); + if (sig == -1) { + mtx_unlock(&ps->ps_mtx); + KASSERT((td->td_flags & TDF_SBDRY) != 0, + ("lost TDF_SBDRY")); + KASSERT(TD_SBDRY_INTR(td), + ("lost TDF_SERESTART of TDF_SEINTR")); + KASSERT((td->td_flags & + (TDF_SEINTR | TDF_SERESTART)) != + (TDF_SEINTR | TDF_SERESTART), + ("both TDF_SEINTR and TDF_SERESTART")); + ret = TD_SBDRY_ERRNO(td); + } else if (sig != 0) { + ret = SIGISMEMBER(ps->ps_sigintr, sig) ? + EINTR : ERESTART; + mtx_unlock(&ps->ps_mtx); + } else { + mtx_unlock(&ps->ps_mtx); + } + } + /* + * Lock the per-process spinlock prior to dropping the PROC_LOCK + * to avoid a signal delivery race. PROC_LOCK, PROC_SLOCK, and + * thread_lock() are currently held in tdsendsignal(). + */ + PROC_SLOCK(p); + mtx_lock_spin(&sc->sc_lock); + PROC_UNLOCK(p); + thread_lock(td); + PROC_SUNLOCK(p); } - /* - * Lock the per-process spinlock prior to dropping the PROC_LOCK - * to avoid a signal delivery race. PROC_LOCK, PROC_SLOCK, and - * thread_lock() are currently held in tdsendsignal(). - */ - PROC_SLOCK(p); - mtx_lock_spin(&sc->sc_lock); - PROC_UNLOCK(p); - thread_lock(td); - PROC_SUNLOCK(p); if (ret == 0) { sleepq_switch(wchan, pri); return (0); From owner-svn-src-all@freebsd.org Mon Mar 6 01:37:06 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EF094CF77E0; Mon, 6 Mar 2017 01:37:06 +0000 (UTC) (envelope-from des@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9850F1396; Mon, 6 Mar 2017 01:37:06 +0000 (UTC) (envelope-from des@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v261b5gO076547; Mon, 6 Mar 2017 01:37:05 GMT (envelope-from des@FreeBSD.org) Received: (from des@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v261b55H076543; Mon, 6 Mar 2017 01:37:05 GMT (envelope-from des@FreeBSD.org) Message-Id: <201703060137.v261b55H076543@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: des set sender to des@FreeBSD.org using -f From: =?UTF-8?Q?Dag-Erling_Sm=c3=b8rgrav?= Date: Mon, 6 Mar 2017 01:37:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314720 - in head: crypto/openssh crypto/openssh/contrib crypto/openssh/contrib/redhat crypto/openssh/contrib/suse crypto/openssh/openbsd-compat crypto/openssh/openbsd-compat/regress cr... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 01:37:07 -0000 Author: des Date: Mon Mar 6 01:37:05 2017 New Revision: 314720 URL: https://svnweb.freebsd.org/changeset/base/314720 Log: Upgrade to OpenSSH 7.4p1. Added: - copied unchanged from r313012, vendor-crypto/openssh/dist/openbsd-compat/strcasestr.c head/crypto/openssh/regress/allow-deny-users.sh - copied unchanged from r313012, vendor-crypto/openssh/dist/regress/allow-deny-users.sh head/crypto/openssh/regress/keygen-moduli.sh - copied unchanged from r313012, vendor-crypto/openssh/dist/regress/keygen-moduli.sh - copied unchanged from r313012, vendor-crypto/openssh/dist/regress/moduli.in head/crypto/openssh/regress/unittests/match/ - copied from r313012, vendor-crypto/openssh/dist/regress/unittests/match/ Directory Properties: head/crypto/openssh/openbsd-compat/strcasestr.c (props changed) head/crypto/openssh/regress/moduli.in (props changed) Deleted: head/crypto/openssh/auth-chall.c head/crypto/openssh/auth-rh-rsa.c head/crypto/openssh/auth-rsa.c head/crypto/openssh/monitor_mm.c head/crypto/openssh/monitor_mm.h head/crypto/openssh/openbsd-compat/xmmap.c Modified: head/crypto/openssh/.skipped-commit-ids head/crypto/openssh/CREDITS head/crypto/openssh/ChangeLog head/crypto/openssh/INSTALL head/crypto/openssh/Makefile.in head/crypto/openssh/PROTOCOL head/crypto/openssh/README head/crypto/openssh/README.platform head/crypto/openssh/README.privsep head/crypto/openssh/TODO head/crypto/openssh/aclocal.m4 head/crypto/openssh/addrmatch.c head/crypto/openssh/atomicio.c head/crypto/openssh/audit-bsm.c head/crypto/openssh/audit-linux.c head/crypto/openssh/audit.c head/crypto/openssh/audit.h head/crypto/openssh/auth-options.c head/crypto/openssh/auth-options.h head/crypto/openssh/auth-pam.c head/crypto/openssh/auth-pam.h head/crypto/openssh/auth-rhosts.c head/crypto/openssh/auth.c head/crypto/openssh/auth.h head/crypto/openssh/auth2-pubkey.c head/crypto/openssh/authfile.c head/crypto/openssh/buildpkg.sh.in head/crypto/openssh/chacha.h head/crypto/openssh/channels.c head/crypto/openssh/channels.h head/crypto/openssh/cipher-3des1.c head/crypto/openssh/cipher-bf1.c head/crypto/openssh/cipher-chachapoly.c head/crypto/openssh/cipher.c head/crypto/openssh/cipher.h head/crypto/openssh/clientloop.c head/crypto/openssh/clientloop.h head/crypto/openssh/config.guess head/crypto/openssh/config.h head/crypto/openssh/config.sub head/crypto/openssh/configure.ac head/crypto/openssh/contrib/Makefile head/crypto/openssh/contrib/gnome-ssh-askpass2.c head/crypto/openssh/contrib/redhat/openssh.spec head/crypto/openssh/contrib/suse/openssh.spec head/crypto/openssh/defines.h head/crypto/openssh/dh.c head/crypto/openssh/entropy.h head/crypto/openssh/gss-genr.c head/crypto/openssh/hostfile.c head/crypto/openssh/kex.c head/crypto/openssh/kex.h head/crypto/openssh/kexgexc.c head/crypto/openssh/kexgexs.c head/crypto/openssh/key.h head/crypto/openssh/krl.c head/crypto/openssh/mac.c head/crypto/openssh/match.c head/crypto/openssh/md5crypt.h head/crypto/openssh/mdoc2man.awk head/crypto/openssh/misc.c head/crypto/openssh/misc.h head/crypto/openssh/moduli head/crypto/openssh/moduli.c head/crypto/openssh/monitor.c head/crypto/openssh/monitor.h head/crypto/openssh/monitor_wrap.c head/crypto/openssh/monitor_wrap.h head/crypto/openssh/mux.c head/crypto/openssh/myproposal.h head/crypto/openssh/opacket.h head/crypto/openssh/openbsd-compat/Makefile.in head/crypto/openssh/openbsd-compat/base64.h head/crypto/openssh/openbsd-compat/bsd-asprintf.c head/crypto/openssh/openbsd-compat/bsd-cray.c head/crypto/openssh/openbsd-compat/bsd-cray.h head/crypto/openssh/openbsd-compat/bsd-cygwin_util.c head/crypto/openssh/openbsd-compat/bsd-cygwin_util.h head/crypto/openssh/openbsd-compat/bsd-misc.c head/crypto/openssh/openbsd-compat/bsd-misc.h head/crypto/openssh/openbsd-compat/bsd-nextstep.c head/crypto/openssh/openbsd-compat/bsd-nextstep.h head/crypto/openssh/openbsd-compat/bsd-openpty.c head/crypto/openssh/openbsd-compat/bsd-poll.c head/crypto/openssh/openbsd-compat/bsd-setres_id.c head/crypto/openssh/openbsd-compat/bsd-setres_id.h head/crypto/openssh/openbsd-compat/bsd-statvfs.c head/crypto/openssh/openbsd-compat/bsd-statvfs.h head/crypto/openssh/openbsd-compat/bsd-waitpid.c head/crypto/openssh/openbsd-compat/bsd-waitpid.h head/crypto/openssh/openbsd-compat/explicit_bzero.c head/crypto/openssh/openbsd-compat/fake-rfc2553.c head/crypto/openssh/openbsd-compat/fake-rfc2553.h head/crypto/openssh/openbsd-compat/getcwd.c head/crypto/openssh/openbsd-compat/getgrouplist.c head/crypto/openssh/openbsd-compat/openbsd-compat.h head/crypto/openssh/openbsd-compat/openssl-compat.c head/crypto/openssh/openbsd-compat/openssl-compat.h head/crypto/openssh/openbsd-compat/port-aix.c head/crypto/openssh/openbsd-compat/port-aix.h head/crypto/openssh/openbsd-compat/port-irix.c head/crypto/openssh/openbsd-compat/port-irix.h head/crypto/openssh/openbsd-compat/port-linux.c head/crypto/openssh/openbsd-compat/port-linux.h head/crypto/openssh/openbsd-compat/port-solaris.c head/crypto/openssh/openbsd-compat/port-solaris.h head/crypto/openssh/openbsd-compat/port-tun.c head/crypto/openssh/openbsd-compat/readpassphrase.c head/crypto/openssh/openbsd-compat/setproctitle.c head/crypto/openssh/openbsd-compat/sha2.c head/crypto/openssh/openbsd-compat/sha2.h head/crypto/openssh/openbsd-compat/vis.c head/crypto/openssh/openbsd-compat/xcrypt.c head/crypto/openssh/opensshd.init.in head/crypto/openssh/packet.c head/crypto/openssh/packet.h head/crypto/openssh/platform-tracing.c (contents, props changed) head/crypto/openssh/platform.c head/crypto/openssh/platform.h head/crypto/openssh/readconf.c head/crypto/openssh/regress/Makefile head/crypto/openssh/regress/agent-getpeereid.sh head/crypto/openssh/regress/cert-file.sh (contents, props changed) head/crypto/openssh/regress/cert-userkey.sh head/crypto/openssh/regress/connect-privsep.sh head/crypto/openssh/regress/integrity.sh head/crypto/openssh/regress/keys-command.sh head/crypto/openssh/regress/login-timeout.sh head/crypto/openssh/regress/misc/kexfuzz/README head/crypto/openssh/regress/misc/kexfuzz/kexfuzz.c (contents, props changed) head/crypto/openssh/regress/principals-command.sh (contents, props changed) head/crypto/openssh/regress/putty-ciphers.sh head/crypto/openssh/regress/putty-kex.sh head/crypto/openssh/regress/putty-transfer.sh head/crypto/openssh/regress/reexec.sh head/crypto/openssh/regress/sftp-chroot.sh head/crypto/openssh/regress/test-exec.sh head/crypto/openssh/regress/unittests/Makefile (contents, props changed) head/crypto/openssh/regress/unittests/Makefile.inc head/crypto/openssh/regress/unittests/bitmap/Makefile (contents, props changed) head/crypto/openssh/regress/unittests/hostkeys/Makefile (contents, props changed) head/crypto/openssh/regress/unittests/kex/Makefile (contents, props changed) head/crypto/openssh/regress/unittests/sshbuf/Makefile (contents, props changed) head/crypto/openssh/regress/unittests/sshkey/Makefile (contents, props changed) head/crypto/openssh/regress/unittests/utf8/Makefile (contents, props changed) head/crypto/openssh/regress/unittests/utf8/tests.c (contents, props changed) head/crypto/openssh/sandbox-darwin.c head/crypto/openssh/sandbox-rlimit.c head/crypto/openssh/scp.c head/crypto/openssh/servconf.c head/crypto/openssh/servconf.h head/crypto/openssh/serverloop.c head/crypto/openssh/serverloop.h head/crypto/openssh/session.c head/crypto/openssh/session.h head/crypto/openssh/sftp-client.c head/crypto/openssh/sftp-common.c head/crypto/openssh/sftp-server.c head/crypto/openssh/sftp.c head/crypto/openssh/ssh-agent.1 head/crypto/openssh/ssh-agent.c head/crypto/openssh/ssh-keygen.c head/crypto/openssh/ssh-pkcs11.c head/crypto/openssh/ssh-rsa.c head/crypto/openssh/ssh.c head/crypto/openssh/ssh_config head/crypto/openssh/ssh_config.5 head/crypto/openssh/sshbuf.c (contents, props changed) head/crypto/openssh/sshbuf.h (contents, props changed) head/crypto/openssh/sshconnect.c head/crypto/openssh/sshconnect1.c head/crypto/openssh/sshconnect2.c head/crypto/openssh/sshd.8 head/crypto/openssh/sshd.c head/crypto/openssh/sshd_config head/crypto/openssh/sshd_config.5 head/crypto/openssh/sshkey.c (contents, props changed) head/crypto/openssh/sshkey.h (contents, props changed) head/crypto/openssh/sshpty.c head/crypto/openssh/sshpty.h head/crypto/openssh/utf8.c (contents, props changed) head/crypto/openssh/utf8.h (contents, props changed) head/crypto/openssh/version.h head/secure/lib/libssh/Makefile head/secure/usr.sbin/sshd/Makefile Directory Properties: head/crypto/openssh/ (props changed) head/crypto/openssh/cipher-aesctr.c (props changed) head/crypto/openssh/cipher-aesctr.h (props changed) head/crypto/openssh/openbsd-compat/bsd-err.c (props changed) head/crypto/openssh/openbsd-compat/kludge-fd_set.c (props changed) head/crypto/openssh/openbsd-compat/regress/opensslvertest.c (props changed) head/crypto/openssh/platform-pledge.c (props changed) head/crypto/openssh/regress/cfgparse.sh (props changed) head/crypto/openssh/regress/check-perm.c (props changed) head/crypto/openssh/regress/hostkey-agent.sh (props changed) head/crypto/openssh/regress/hostkey-rotate.sh (props changed) head/crypto/openssh/regress/keygen-knownhosts.sh (props changed) head/crypto/openssh/regress/limit-keytype.sh (props changed) head/crypto/openssh/regress/misc/Makefile (props changed) head/crypto/openssh/regress/misc/kexfuzz/Makefile (props changed) head/crypto/openssh/regress/multipubkey.sh (props changed) head/crypto/openssh/regress/unittests/hostkeys/mktestdata.sh (props changed) head/crypto/openssh/regress/unittests/match/Makefile (props changed) head/crypto/openssh/regress/unittests/match/tests.c (props changed) head/crypto/openssh/regress/unittests/sshbuf/test_sshbuf.c (props changed) head/crypto/openssh/regress/unittests/sshbuf/test_sshbuf_fixed.c (props changed) head/crypto/openssh/regress/unittests/sshbuf/test_sshbuf_fuzz.c (props changed) head/crypto/openssh/regress/unittests/sshbuf/test_sshbuf_getput_basic.c (props changed) head/crypto/openssh/regress/unittests/sshbuf/test_sshbuf_getput_crypto.c (props changed) head/crypto/openssh/regress/unittests/sshbuf/test_sshbuf_getput_fuzz.c (props changed) head/crypto/openssh/regress/unittests/sshbuf/test_sshbuf_misc.c (props changed) head/crypto/openssh/regress/unittests/sshbuf/tests.c (props changed) head/crypto/openssh/regress/unittests/sshkey/common.c (props changed) head/crypto/openssh/regress/unittests/sshkey/common.h (props changed) head/crypto/openssh/regress/unittests/sshkey/test_file.c (props changed) head/crypto/openssh/regress/unittests/sshkey/test_fuzz.c (props changed) head/crypto/openssh/regress/unittests/sshkey/test_sshkey.c (props changed) head/crypto/openssh/regress/unittests/sshkey/tests.c (props changed) head/crypto/openssh/regress/unittests/test_helper/Makefile (props changed) head/crypto/openssh/regress/unittests/test_helper/fuzz.c (props changed) head/crypto/openssh/regress/unittests/test_helper/test_helper.c (props changed) head/crypto/openssh/regress/unittests/test_helper/test_helper.h (props changed) head/crypto/openssh/regress/valgrind-unit.sh (props changed) head/crypto/openssh/sandbox-pledge.c (props changed) head/crypto/openssh/sandbox-solaris.c (props changed) head/crypto/openssh/sshbuf-getput-basic.c (props changed) head/crypto/openssh/sshbuf-getput-crypto.c (props changed) head/crypto/openssh/sshbuf-misc.c (props changed) head/crypto/openssh/ssherr.c (props changed) head/crypto/openssh/ssherr.h (props changed) Modified: head/crypto/openssh/.skipped-commit-ids ============================================================================== --- head/crypto/openssh/.skipped-commit-ids Mon Mar 6 01:11:34 2017 (r314719) +++ head/crypto/openssh/.skipped-commit-ids Mon Mar 6 01:37:05 2017 (r314720) @@ -9,3 +9,5 @@ edbfde98c40007b7752a4ac106095e060c25c1ef 180d84674be1344e45a63990d60349988187c1ae Update moduli f6ae971186ba68d066cd102e57d5b0b2c211a5ee systrace is dead. 96c5054e3e1f170c6276902d5bc65bb3b87a2603 remove DEBUGLIBS from Makefile +6da9a37f74aef9f9cc639004345ad893cad582d8 Update moduli file +77bcb50e47b68c7209c7f0a5a020d73761e5143b unset REGRESS_FAIL_EARLY Modified: head/crypto/openssh/CREDITS ============================================================================== --- head/crypto/openssh/CREDITS Mon Mar 6 01:11:34 2017 (r314719) +++ head/crypto/openssh/CREDITS Mon Mar 6 01:37:05 2017 (r314720) @@ -100,6 +100,3 @@ Zack Weinberg - G Apologies to anyone I have missed. Damien Miller - -$Id: CREDITS,v 1.81 2006/08/30 17:24:41 djm Exp $ - Modified: head/crypto/openssh/ChangeLog ============================================================================== --- head/crypto/openssh/ChangeLog Mon Mar 6 01:11:34 2017 (r314719) +++ head/crypto/openssh/ChangeLog Mon Mar 6 01:37:05 2017 (r314720) @@ -1,9202 +1,10266 @@ -commit 99522ba7ec6963a05c04a156bf20e3ba3605987c -Author: Damien Miller -Date: Thu Jul 28 08:54:27 2016 +1000 - - define _OPENBSD_SOURCE for reallocarray on NetBSD - - Report by and debugged with Hisashi T Fujinaka, dtucker nailed - the problem (lack of prototype causing return type confusion). - -commit 3e1e076550c27c6bbdddf36d8f42bd79fbaaa187 -Author: Damien Miller -Date: Wed Jul 27 08:25:42 2016 +1000 - - KNF - -commit d99ee9c4e5e217e7d05eeec84e9ce641f4675331 +commit 4a354fc231174901f2629437c2a6e924a2dd6772 Author: Damien Miller -Date: Wed Jul 27 08:25:23 2016 +1000 - - Linux auditing also needs packet.h - -commit 393bd381a45884b589baa9aed4394f1d250255ca -Author: Damien Miller -Date: Wed Jul 27 08:18:05 2016 +1000 - - fix auditing on Linux - - get_remote_ipaddr() was replaced with ssh_remote_ipaddr() - -commit 80e766fb089de4f3c92b1600eb99e9495e37c992 -Author: Damien Miller -Date: Sun Jul 24 21:50:13 2016 +1000 +Date: Mon Dec 19 15:59:26 2016 +1100 - crank version numbers + crank version numbers for release -commit b1a478792d458f2e938a302e64bab2b520edc1b3 +commit 5f8d0bb8413d4d909cc7aa3c616fb0538224c3c9 Author: djm@openbsd.org -Date: Sun Jul 24 11:45:36 2016 +0000 +Date: Mon Dec 19 04:55:51 2016 +0000 upstream commit - openssh-7.3 - - Upstream-ID: af106a7eb665f642648cf1993e162c899f358718 - -commit 353766e0881f069aeca30275ab706cd60a1a8fdd -Author: Darren Tucker -Date: Sat Jul 23 16:14:42 2016 +1000 - - Move Cygwin IPPORT_RESERVED overrride to defines.h + openssh-7.4 - Patch from vinschen at redhat.com. + Upstream-ID: 1ee404adba6bbe10ae9277cbae3a94abe2867b79 -commit 368dd977ae07afb93f4ecea23615128c95ab2b32 +commit 3a8213ea0ed843523e34e55ab9c852332bab4c7b Author: djm@openbsd.org -Date: Sat Jul 23 02:54:08 2016 +0000 +Date: Mon Dec 19 04:55:18 2016 +0000 upstream commit - fix pledge violation with ssh -f; reported by Valentin - Kozamernik ok dtucker@ + remove testcase that depends on exact output and + behaviour of snprintf(..., "%s", NULL) - Upstream-ID: a61db7988db88d9dac3c4dd70e18876a8edf84aa + Upstream-Regress-ID: cab4288531766bd9593cb556613b91a2eeefb56f -commit f00211e3c6d24d6ea2b64b4b1209f671f6c1d42e -Author: djm@openbsd.org -Date: Fri Jul 22 07:00:46 2016 +0000 +commit eae735a82d759054f6ec7b4e887fb7a5692c66d7 +Author: dtucker@openbsd.org +Date: Mon Dec 19 03:32:57 2016 +0000 upstream commit - improve wording; suggested by jmc@ + Use LOGNAME to get current user and fall back to whoami if + not set. Mainly to benefit -portable since some platforms don't have whoami. - Upstream-ID: 55cb0a24c8e0618b3ceec80998dc82c85db2d2f8 + Upstream-Regress-ID: e3a16b7836a3ae24dc8f8a4e43fdf8127a60bdfa -commit 83cbca693c3b0719270e6a0f2efe3f9ee93a65b8 +commit 0d2f88428487518eea60602bd593989013831dcf Author: dtucker@openbsd.org -Date: Fri Jul 22 05:46:11 2016 +0000 +Date: Fri Dec 16 03:51:19 2016 +0000 upstream commit - Lower loglevel for "Authenticated with partial success" - message similar to other similar level. bz#2599, patch from cgallek at - gmail.com, ok markus@ + Add regression test for AllowUsers and DenyUsers. Patch from + Zev Weiss - Upstream-ID: 3faab814e947dc7b2e292edede23e94c608cb4dd + Upstream-Regress-ID: 8f1aac24d52728398871dac14ad26ea38b533fb9 -commit 10358abd087ab228b7ce2048efc4f3854a9ab9a6 -Author: Damien Miller -Date: Fri Jul 22 14:06:36 2016 +1000 +commit 3bc8180a008929f6fe98af4a56fb37d04444b417 +Author: Darren Tucker +Date: Fri Dec 16 15:02:24 2016 +1100 - retry waitpid on EINTR failure + Add missing monitor.h include. - patch from Jakub Jelen on bz#2581; ok dtucker@ + Fixes warning pointed out by Zev Weiss -commit da88a70a89c800e74ea8e5661ffa127a3cc79a92 +commit 410681f9015d76cc7b137dd90dac897f673244a0 Author: djm@openbsd.org -Date: Fri Jul 22 03:47:36 2016 +0000 +Date: Fri Dec 16 02:48:55 2016 +0000 upstream commit - constify a few functions' arguments; patch from Jakub - Jelen bz#2581 + revert to rev1.2; the new bits in this test depend on changes + to ssh that aren't yet committed - Upstream-ID: f2043f51454ea37830ff6ad60c8b32b4220f448d + Upstream-Regress-ID: 828ffc2c7afcf65d50ff2cf3dfc47a073ad39123 -commit c36d91bd4ebf767f310f7cea88d61d1c15f53ddf -Author: djm@openbsd.org -Date: Fri Jul 22 03:39:13 2016 +0000 +commit 2f2ffa4fbe4b671bbffa0611f15ba44cff64d58e +Author: dtucker@openbsd.org +Date: Fri Dec 16 01:06:27 2016 +0000 upstream commit - move debug("%p", key) to before key is free'd; probable - undefined behaviour on strict compilers; reported by Jakub Jelen bz#2581 + Move the "stop sshd" code into its own helper function. + Patch from Zev Weiss , ok djm@ - Upstream-ID: 767f323e1f5819508a0e35e388ec241bac2f953a + Upstream-Regress-ID: a113dea77df5bd97fb4633ea31f3d72dbe356329 -commit 286f5a77c3bfec1e8892ca268087ac885ac871bf +commit e15e7152331e3976b35475fd4e9c72897ad0f074 Author: djm@openbsd.org -Date: Fri Jul 22 03:35:11 2016 +0000 +Date: Fri Dec 16 01:01:07 2016 +0000 upstream commit - reverse the order in which -J/JumpHost proxies are visited to - be more intuitive and document - - reported by and manpage bits naddy@ + regression test for certificates along with private key + with no public half. bz#2617, mostly from Adam Eijdenberg - Upstream-ID: 3a68fd6a841fd6cf8cedf6552a9607ba99df179a + Upstream-Regress-ID: 2e74dc2c726f4dc839609b3ce045466b69f01115 -commit fcd135c9df440bcd2d5870405ad3311743d78d97 +commit 9a70ec085faf6e55db311cd1a329f1a35ad2a500 Author: dtucker@openbsd.org -Date: Thu Jul 21 01:39:35 2016 +0000 +Date: Thu Dec 15 23:50:37 2016 +0000 upstream commit - Skip passwords longer than 1k in length so clients can't - easily DoS sshd by sending very long passwords, causing it to spend CPU - hashing them. feedback djm@, ok markus@. - - Brought to our attention by tomas.kuthan at oracle.com, shilei-c at - 360.cn and coredump at autistici.org + Use $SUDO to read pidfile in case root's umask is + restricted. From portable. - Upstream-ID: d0af7d4a2190b63ba1d38eec502bc4be0be9e333 + Upstream-Regress-ID: f6b1c7ffbc5a0dfb7d430adb2883344899174a98 -commit 324583e8fb3935690be58790425793df619c6d4d -Author: naddy@openbsd.org -Date: Wed Jul 20 10:45:27 2016 +0000 +commit fe06b68f824f8f55670442fb31f2c03526dd326c +Author: dtucker@openbsd.org +Date: Thu Dec 15 21:29:05 2016 +0000 upstream commit - Do not clobber the global jump_host variables when - parsing an inactive configuration. ok djm@ + Add missing braces in DenyUsers code. Patch from zev at + bewilderbeest.net, ok deraadt@ - Upstream-ID: 5362210944d91417d5976346d41ac0b244350d31 + Upstream-ID: d747ace338dcf943b077925f90f85f789714b54e -commit 32d921c323b989d28405e78d0a8923d12913d737 -Author: jmc@openbsd.org -Date: Tue Jul 19 12:59:16 2016 +0000 +commit dcc7d74242a574fd5c4afbb4224795b1644321e7 +Author: dtucker@openbsd.org +Date: Thu Dec 15 21:20:41 2016 +0000 upstream commit - tweak previous; + Fix text in error message. Patch from zev at + bewilderbeest.net. - Upstream-ID: f3c1a5b3f05dff366f60c028728a2b43f15ff534 + Upstream-ID: deb0486e175e7282f98f9a15035d76c55c84f7f6 -commit d7eabc86fa049a12ba2c3fb198bd1d51b37f7025 -Author: dtucker@openbsd.org -Date: Tue Jul 19 11:38:53 2016 +0000 +commit b737e4d7433577403a31cff6614f6a1b0b5e22f4 +Author: djm@openbsd.org +Date: Wed Dec 14 00:36:34 2016 +0000 upstream commit - Allow wildcard for PermitOpen hosts as well as ports. - bz#2582, patch from openssh at mzpqnxow.com and jjelen at redhat.com. ok - markus@ + disable Unix-domain socket forwarding when privsep is + disabled - Upstream-ID: af0294e9b9394c4e16e991424ca0a47a7cc605f2 + Upstream-ID: ab61516ae0faadad407857808517efa900a0d6d0 -commit b98a2a8348e907b3d71caafd80f0be8fdd075943 -Author: markus@openbsd.org -Date: Mon Jul 18 11:35:33 2016 +0000 +commit 08a1e7014d65c5b59416a0e138c1f73f417496eb +Author: djm@openbsd.org +Date: Fri Dec 9 03:04:29 2016 +0000 upstream commit - Reduce timing attack against obsolete CBC modes by always - computing the MAC over a fixed size of data. Reported by Jean Paul - Degabriele, Kenny Paterson, Torben Hansen and Martin Albrecht. ok djm@ + log connections dropped in excess of MaxStartups at + verbose LogLevel; bz#2613 based on diff from Tomas Kuthan; ok dtucker@ - Upstream-ID: f20a13279b00ba0afbacbcc1f04e62e9d41c2912 + Upstream-ID: 703ae690dbf9b56620a6018f8a3b2389ce76d92b -commit dbf788b4d9d9490a5fff08a7b09888272bb10fcc +commit 10e290ec00964b2bf70faab15a10a5574bb80527 Author: Darren Tucker -Date: Thu Jul 21 14:17:31 2016 +1000 +Date: Tue Dec 13 13:51:32 2016 +1100 - Search users for one with a valid salt. - - If the root account is locked (eg password "!!" or "*LK*") keep looking - until we find a user with a valid salt to use for crypting passwords of - invalid users. ok djm@ + Get default of TEST_SSH_UTF8 from environment. -commit e8b58f48fbb1b524fb4f0d4865fa0005d6a4b782 +commit b9b8ba3f9ed92c6220b58d70d1e6d8aa3eea1104 Author: Darren Tucker -Date: Mon Jul 18 17:22:49 2016 +1000 +Date: Tue Dec 13 12:56:40 2016 +1100 - Explicitly specify source files for regress tools. + Remove commented-out includes. - Since adding $(REGRESSLIBS), $? is wrong because it includes only the - changed source files. $< seems like it'd be right however it doesn't - seem to work on some non-GNU makes, so do what works everywhere. + These commented-out includes have "Still needed?" comments. Since + they've been commented out for ~13 years I assert that they're not. -commit eac1bbd06872c273f16ac0f9976b0aef026b701b +commit 25275f1c9d5f01a0877d39444e8f90521a598ea0 Author: Darren Tucker -Date: Mon Jul 18 17:12:22 2016 +1000 +Date: Tue Dec 13 12:54:23 2016 +1100 - Conditionally include err.h. + Add prototype for strcasestr in compat library. -commit 0a454147568746c503f669e1ba861f76a2e7a585 +commit afec07732aa2985142f3e0b9a01eb6391f523dec Author: Darren Tucker -Date: Mon Jul 18 16:26:26 2016 +1000 +Date: Tue Dec 13 10:23:03 2016 +1100 - Remove local implementation of err, errx. + Add strcasestr to compat library. - We now have a shared implementation in libopenbsd-compat. + Fixes build on (at least) Solaris 10. -commit eb999a4590846ba4d56ddc90bd07c23abfbab7b1 -Author: djm@openbsd.org -Date: Mon Jul 18 06:08:01 2016 +0000 +commit dda78a03af32e7994f132d923c2046e98b7c56c8 +Author: Damien Miller +Date: Mon Dec 12 13:57:10 2016 +1100 - upstream commit + Force Turkish locales back to C/POSIX; bz#2643 - Add some unsigned overflow checks for extra_pad. None of - these are reachable with the amount of padding that we use internally. - bz#2566, pointed out by Torben Hansen. ok markus@ + Turkish locales are unique in their handling of the letters 'i' and + 'I' (yes, they are different letters) and OpenSSH isn't remotely + prepared to deal with that. For now, the best we can do is to force + OpenSSH to use the C/POSIX locale and try to preserve the UTF-8 + encoding if possible. - Upstream-ID: 4d4be8450ab2fc1b852d5884339f8e8c31c3fd76 + ok dtucker@ -commit c71ba790c304545464bb494de974cdf0f4b5cf1e +commit c35995048f41239fc8895aadc3374c5f75180554 Author: Darren Tucker -Date: Mon Jul 18 15:43:25 2016 +1000 +Date: Fri Dec 9 12:52:02 2016 +1100 - Add dependency on libs for unit tests. - - Makes "./configure && make tests" work again. ok djm@ + exit is in stdlib.h not unistd.h (that's _exit). -commit 8199d0311aea3e6fd0284c9025e7a83f4ece79e8 +commit d399a8b914aace62418c0cfa20341aa37a192f98 Author: Darren Tucker -Date: Mon Jul 18 13:47:39 2016 +1000 +Date: Fri Dec 9 12:33:25 2016 +1100 - Correct location for kexfuzz in clean target. + Include for exit in utf8 locale test. -commit 01558b7b07af43da774d3a11a5c51fa9c310849d +commit 47b8c99ab3221188ad3926108dd9d36da3b528ec Author: Darren Tucker -Date: Mon Jul 18 09:33:25 2016 +1000 +Date: Thu Dec 8 15:48:34 2016 +1100 - Handle PAM_MAXTRIES from modules. + Check for utf8 local support before testing it. - bz#2249: handle the case where PAM returns PAM_MAXTRIES by ceasing to offer - password and keyboard-interative authentication methods. Should prevent - "sshd ignoring max retries" warnings in the log. ok djm@ + Check for utf8 local support and if not found, do not attempt to run the + utf8 tests. Suggested by djm@ + +commit 4089fc1885b3a2822204effbb02b74e3da58240d +Author: Darren Tucker +Date: Thu Dec 8 12:57:24 2016 +1100 + + Use AC_PATH_TOOL for krb5-config. - It probably won't trigger with keyboard-interactive in the default - configuration because the retry counter is stored in module-private - storage which goes away with the sshd PAM process (see bz#688). On the - other hand, those cases probably won't log a warning either. + This will use the host-prefixed version when cross compiling; patch from + david.michael at coreos.com. -commit 65c6c6b567ab5ab12945a5ad8e0ab3a8c26119cc +commit b4867e0712c89b93be905220c82f0a15e6865d1e Author: djm@openbsd.org -Date: Sun Jul 17 04:20:16 2016 +0000 +Date: Tue Dec 6 07:48:01 2016 +0000 upstream commit - support UTF-8 characters in ssh(1) banners using - schwarze@'s safe fmprintf printer; bz#2058 + make IdentityFile successfully load and use certificates that + have no corresponding bare public key. E.g. just a private id_rsa and + certificate id_rsa-cert.pub (and no id_rsa.pub). - feedback schwarze@ ok dtucker@ + bz#2617 ok dtucker@ - Upstream-ID: a72ce4e3644c957643c9524eea2959e41b91eea7 + Upstream-ID: c1e9699b8c0e3b63cc4189e6972e3522b6292604 -commit e4eb7d910976fbfc7ce3e90c95c11b07b483d0d7 -Author: jmc@openbsd.org -Date: Sat Jul 16 06:57:55 2016 +0000 +commit c9792783a98881eb7ed295680013ca97a958f8ac +Author: Damien Miller +Date: Fri Nov 25 14:04:21 2016 +1100 + + Add a gnome-ssh-askpass3 target for GTK+3 version + + Based on patch from Colin Watson via bz#2640 + +commit 7be85ae02b9de0993ce0a1d1e978e11329f6e763 +Author: Damien Miller +Date: Fri Nov 25 14:03:53 2016 +1100 + + Make gnome-ssh-askpass2.c GTK+3-friendly + + Patch from Colin Watson via bz#2640 + +commit b9844a45c7f0162fd1b5465683879793d4cc4aaa +Author: djm@openbsd.org +Date: Sun Dec 4 23:54:02 2016 +0000 upstream commit - - add proxyjump to the options list - formatting fixes - - update usage() + Fix public key authentication when multiple + authentication is in use. Instead of deleting and re-preparing the entire + keys list, just reset the 'used' flags; the keys list is already in a good + order (with already- tried keys at the back) - ok djm + Analysis and patch from Vincent Brillault on bz#2642; ok dtucker@ - Upstream-ID: 43d318e14ce677a2eec8f21ef5ba2f9f68a59457 + Upstream-ID: 7123f12dc2f3bcaae715853035a97923d7300176 -commit af1f084857621f14bd9391aba8033d35886c2455 +commit f2398eb774075c687b13af5bc22009eb08889abe Author: dtucker@openbsd.org -Date: Fri Jul 15 05:01:58 2016 +0000 +Date: Sun Dec 4 22:27:25 2016 +0000 upstream commit - Reduce the syslog level of some relatively common protocol - events from LOG_CRIT by replacing fatal() calls with logdie(). Part of - bz#2585, ok djm@ + Unlink PidFile on SIGHUP and always recreate it when the + new sshd starts. Regression tests (and possibly other things) depend on the + pidfile being recreated after SIGHUP, and unlinking it means it won't contain + a stale pid if sshd fails to restart. ok djm@ markus@ - Upstream-ID: 9005805227c94edf6ac02a160f0e199638d288e5 - -commit bd5f2b78b69cf38d6049a0de445a79c8595e4a1f -Author: Damien Miller -Date: Fri Jul 15 19:14:48 2016 +1000 + Upstream-ID: 132dd6dda0c77dd49d2f15b2573b5794f6160870 - missing openssl/dh.h - -commit 4a984fd342effe5f0aad874a0d538c4322d973c0 -Author: Damien Miller -Date: Fri Jul 15 18:47:07 2016 +1000 - - cast to avoid type warning in error message - -commit 5abfb15ced985c340359ae7fb65a625ed3692b3e -Author: Darren Tucker -Date: Fri Jul 15 14:48:30 2016 +1000 +commit 85aa2efeba51a96bf6834f9accf2935d96150296 +Author: djm@openbsd.org +Date: Wed Nov 30 03:01:33 2016 +0000 - Move VA_COPY macro into compat header. + upstream commit - Some AIX compilers unconditionally undefine va_copy but don't set it back - to an internal function, causing link errors. In some compat code we - already use VA_COPY instead so move the two existing instances into the - shared header and use for sshbuf-getput-basic.c too. Should fix building - with at lease some versions of AIX's compiler. bz#2589, ok djm@ - -commit 832b7443b7a8e181c95898bc5d73497b7190decd -Author: Damien Miller -Date: Fri Jul 15 14:45:34 2016 +1000 - - disable ciphers not supported by OpenSSL + test new behaviour of cert force-command restriction vs. + authorized_key/ principals - bz#2466 ok dtucker@ + Upstream-Regress-ID: 399efa7469d40c404c0b0a295064ce75d495387c -commit 5fbe93fc6fbb2fe211e035703dec759d095e3dd8 -Author: Damien Miller -Date: Fri Jul 15 13:54:31 2016 +1000 +commit 5d333131cd8519d022389cfd3236280818dae1bc +Author: jmc@openbsd.org +Date: Wed Nov 30 06:54:26 2016 +0000 - add a --disable-pkcs11 knob + upstream commit + + tweak previous; while here fix up FILES and AUTHORS; + + Upstream-ID: 93f6e54086145a75df8d8ec7d8689bdadbbac8fa -commit 679ce88ec2a8e2fe6515261c489e8c1449bb9da9 -Author: Damien Miller -Date: Fri Jul 15 13:44:38 2016 +1000 +commit 786d5994da79151180cb14a6cf157ebbba61c0cc +Author: djm@openbsd.org +Date: Wed Nov 30 03:07:37 2016 +0000 - fix newline escaping for unsupported_algorithms + upstream commit - The hmac-ripemd160 was incorrect and could lead to broken - Makefiles on systems that lacked support for it, but I made - all the others consistent too. + add a whitelist of paths from which ssh-agent will load + (via ssh-pkcs11-helper) a PKCS#11 module; ok markus@ + + Upstream-ID: fe79769469d9cd6d26fe0dc15751b83ef2a06e8f -commit ed877ef653847d056bb433975d731b7a1132a979 +commit 7844f357cdd90530eec81340847783f1f1da010b Author: djm@openbsd.org -Date: Fri Jul 15 00:24:30 2016 +0000 +Date: Wed Nov 30 03:00:05 2016 +0000 upstream commit - Add a ProxyJump ssh_config(5) option and corresponding -J - ssh(1) command-line flag to allow simplified indirection through a SSH - bastion or "jump host". - - These options construct a proxy command that connects to the - specified jump host(s) (more than one may be specified) and uses - port-forwarding to establish a connection to the next destination. - - This codifies the safest way of indirecting connections through SSH - servers and makes it easy to use. + Add a sshd_config DisableForwaring option that disables + X11, agent, TCP, tunnel and Unix domain socket forwarding, as well as + anything else we might implement in the future. - ok markus@ + This, like the 'restrict' authorized_keys flag, is intended to be a + simple and future-proof way of restricting an account. Suggested as + a complement to 'restrict' by Jann Horn; ok markus@ - Upstream-ID: fa899cb8b26d889da8f142eb9774c1ea36b04397 + Upstream-ID: 203803f66e533a474086b38a59ceb4cf2410fcf7 -commit 5c02dd126206a26785379e80f2d3848e4470b711 -Author: Darren Tucker -Date: Fri Jul 15 12:56:39 2016 +1000 +commit fd6dcef2030d23c43f986d26979f84619c10589d +Author: djm@openbsd.org +Date: Wed Nov 30 02:57:40 2016 +0000 - Map umac_ctx struct name too. + upstream commit - Prevents size mismatch linker warnings on Solaris 11. - -commit 283b97ff33ea2c641161950849931bd578de6946 -Author: Darren Tucker -Date: Fri Jul 15 13:49:44 2016 +1000 - - Mitigate timing of disallowed users PAM logins. + When a forced-command appears in both a certificate and + an authorized keys/principals command= restriction, refuse to accept the + certificate unless they are identical. - When sshd decides to not allow a login (eg PermitRootLogin=no) and - it's using PAM, it sends a fake password to PAM so that the timing for - the failure is not noticeably different whether or not the password - is correct. This behaviour can be detected by sending a very long - password string which is slower to hash than the fake password. + The previous (documented) behaviour of having the certificate forced- + command override the other could be a bit confused and more error-prone. - Mitigate by constructing an invalid password that is the same length - as the one from the client and thus takes the same time to hash. - Diff from djm@ + Pointed out by Jann Horn of Project Zero; ok dtucker@ + + Upstream-ID: 79d811b6eb6bbe1221bf146dde6928f92d2cd05f -commit 9286875a73b2de7736b5e50692739d314cd8d9dc -Author: Darren Tucker -Date: Fri Jul 15 13:32:45 2016 +1000 +commit 7fc4766ac78abae81ee75b22b7550720bfa28a33 +Author: dtucker@openbsd.org +Date: Wed Nov 30 00:28:31 2016 +0000 - Determine appropriate salt for invalid users. + upstream commit - When sshd is processing a non-PAM login for a non-existent user it uses - the string from the fakepw structure as the salt for crypt(3)ing the - password supplied by the client. That string has a Blowfish prefix, so on - systems that don't understand that crypt will fail fast due to an invalid - salt, and even on those that do it may have significantly different timing - from the hash methods used for real accounts (eg sha512). This allows - user enumeration by, eg, sending large password strings. This was noted - by EddieEzra.Harari at verint.com (CVE-2016-6210). + On startup, check to see if sshd is already daemonized + and if so, skip the call to daemon() and do not rewrite the PidFile. This + means that when sshd re-execs itself on SIGHUP the process ID will no longer + change. Should address bz#2641. ok djm@ markus@. - To mitigate, use the same hash algorithm that root uses for hashing - passwords for users that do not exist on the system. ok djm@ + Upstream-ID: 5ea0355580056fb3b25c1fd6364307d9638a37b9 -commit a162dd5e58ca5b224d7500abe35e1ef32b5de071 -Author: Darren Tucker -Date: Thu Jul 14 21:19:59 2016 +1000 - - OpenSSL 1.1.x not currently supported. - -commit 7df91b01fc558a33941c5c5f31abbcdc53a729fb -Author: Darren Tucker -Date: Thu Jul 14 12:25:24 2016 +1000 +commit c9f880c195c65f1dddcbc4ce9d6bfea7747debcc +Author: Damien Miller +Date: Wed Nov 30 13:51:49 2016 +1100 - Check for VIS_ALL. + factor out common PRNG reseed before privdrop - If we don't have it, set BROKEN_STRNVIS to activate the compat replacement. + Add a call to RAND_poll() to ensure than more than pid+time gets + stirred into child processes states. Prompted by analysis from Jann + Horn at Project Zero. ok dtucker@ -commit ee67716f61f1042d5e67f91c23707cca5dcdd7d0 +commit 79e4829ec81dead1b30999e1626eca589319a47f Author: dtucker@openbsd.org -Date: Thu Jul 14 01:24:21 2016 +0000 +Date: Fri Nov 25 03:02:01 2016 +0000 upstream commit - Correct equal in test. + Allow PuTTY interop tests to run unattended. bz#2639, + patch from cjwatson at debian.org. - Upstream-Regress-ID: 4e32f7a5c57a619c4e8766cb193be2a1327ec37a + Upstream-Regress-ID: 4345253558ac23b2082aebabccd48377433b6fe0 -commit 372807c2065c8572fdc6478b25cc5ac363743073 -Author: tb@openbsd.org -Date: Mon Jul 11 21:38:13 2016 +0000 +commit 504c3a9a1bf090f6b27260fc3e8ea7d984d163dc +Author: dtucker@openbsd.org +Date: Fri Nov 25 02:56:49 2016 +0000 upstream commit - Add missing "recvfd" pledge promise: Raf Czlonka reported - ssh coredumps when Control* keywords were set in ssh_config. This patch also - fixes similar problems with scp and sftp. - - ok deraadt, looks good to millert + Reverse args to sshd-log-wrapper. Matches change in + portable, where it allows sshd do be optionally run under Valgrind. - Upstream-ID: ca2099eade1ef3e87a79614fefa26a0297ad8a3b + Upstream-Regress-ID: b438d1c6726dc5caa2a45153e6103a0393faa906 -commit e0453f3df64bf485c61c7eb6bd12893eee9fe2cd -Author: tedu@openbsd.org -Date: Mon Jul 11 03:19:44 2016 +0000 +commit bd13017736ec2f8f9ca498fe109fb0035f322733 +Author: dtucker@openbsd.org +Date: Fri Nov 25 02:49:18 2016 +0000 upstream commit - obsolete note about fascistloggin is obsolete. ok djm - dtucker + Fix typo in trace message; from portable. - Upstream-ID: dae60df23b2bb0e89f42661ddd96a7b0d1b7215a + Upstream-Regress-ID: 4c4a2ba0d37faf5fd230a91b4c7edb5699fbd73a -commit a2333584170a565adf4f209586772ef8053b10b8 -Author: Darren Tucker -Date: Thu Jul 14 10:59:09 2016 +1000 +commit 7da751d8b007c7f3e814fd5737c2351440d78b4c +Author: tb@openbsd.org +Date: Tue Nov 1 13:43:27 2016 +0000 - Add compat code for missing wcwidth. + upstream commit - If we don't have wcwidth force fallback implementations of nl_langinfo - and mbtowc. Based on advice from Ingo Schwarze. - -commit 8aaec7050614494014c47510b7e94daf6e644c62 -Author: Damien Miller -Date: Thu Jul 14 09:48:48 2016 +1000 - - fix missing include for systems with err.h - -commit 6310ef27a2567cda66d6cf0c1ad290ee1167f243 -Author: Darren Tucker -Date: Wed Jul 13 14:42:35 2016 +1000 - - Move err.h replacements into compat lib. + Clean up MALLOC_OPTIONS. For the unittests, move + MALLOC_OPTIONS and TEST_ENV to unittets/Makefile.inc. - Move implementations of err.h replacement functions into their own file - in the libopenbsd-compat so we can use them in kexfuzz.c too. ok djm@ - -commit f3f2cc8386868f51440c45210098f65f9787449a -Author: Darren Tucker -Date: Mon Jul 11 17:23:38 2016 +1000 - - Check for wchar.h and langinfo.h + ok otto - Wrap includes in the appropriate #ifdefs. + Upstream-Regress-ID: 890d497e0a38eeddfebb11cc429098d76cf29f12 -commit b9c50614eba9d90939b2b119b6e1b7e03b462278 -Author: Damien Miller -Date: Fri Jul 8 13:59:13 2016 +1000 +commit 36f58e68221bced35e06d1cca8d97c48807a8b71 +Author: tb@openbsd.org +Date: Mon Oct 31 23:45:08 2016 +0000 - whitelist more architectures for seccomp-bpf + upstream commit - bz#2590 - testing and patch from Jakub Jelen + Remove the obsolete A and P flags from MALLOC_OPTIONS. + + ok dtucker + + Upstream-Regress-ID: 6cc25024c8174a87e5734a0dc830194be216dd59 -commit 18813a32b6fd964037e0f5e1893cb4468ac6a758 -Author: guenther@openbsd.org -Date: Mon Jul 4 18:01:44 2016 +0000 +commit b0899ee26a6630883c0f2350098b6a35e647f512 +Author: dtucker@openbsd.org +Date: Tue Nov 29 03:54:50 2016 +0000 upstream commit - DEBUGLIBS has been broken since the gcc4 switch, so delete - it. CFLAGS contains -g by default anyway - - problem noted by Edgar Pettijohn (edgar (at) pettijohn-web.com) - ok millert@ kettenis@ deraadt@ + Factor out code to disconnect from controlling terminal + into its own function. ok djm@ - Upstream-Regress-ID: 4a0bb72f95c63f2ae9daa8a040ac23914bddb542 + Upstream-ID: 39fd9e8ebd7222615a837312face5cc7ae962885 -commit 6d31193d0baa3da339c196ac49625b7ba1c2ecc7 +commit 54d022026aae4f53fa74cc636e4a032d9689b64d Author: djm@openbsd.org -Date: Fri Jul 8 03:44:42 2016 +0000 +Date: Fri Nov 25 23:24:45 2016 +0000 upstream commit - Improve crypto ordering for Encrypt-then-MAC (EtM) mode - MAC algorithms. - - Previously we were computing the MAC, decrypting the packet and then - checking the MAC. This gave rise to the possibility of creating a - side-channel oracle in the decryption step, though no such oracle has - been identified. - - This adds a mac_check() function that computes and checks the MAC in - one pass, and uses it to advance MAC checking for EtM algorithms to - before payload decryption. + use sshbuf_allocate() to pre-allocate the buffer used for + loading keys. This avoids implicit realloc inside the buffer code, which + might theoretically leave fragments of the key on the heap. This doesn't + appear to happen in practice for normal sized keys, but was observed for + novelty oversize ones. - Reported by Jean Paul Degabriele, Kenny Paterson, Torben Hansen and - Martin Albrecht. feedback and ok markus@ + Pointed out by Jann Horn of Project Zero; ok markus@ - Upstream-ID: 1999bb67cab47dda5b10b80d8155fe83d4a1867b + Upstream-ID: d620e1d46a29fdea56aeadeda120879eddc60ab1 -commit 71f5598f06941f645a451948c4a5125c83828e1c -Author: guenther@openbsd.org -Date: Mon Jul 4 18:01:44 2016 +0000 +commit a9c746088787549bb5b1ae3add7d06a1b6d93d5e +Author: djm@openbsd.org +Date: Fri Nov 25 23:22:04 2016 +0000 upstream commit - DEBUGLIBS has been broken since the gcc4 switch, so - delete it. CFLAGS contains -g by default anyway - - problem noted by Edgar Pettijohn (edgar (at) pettijohn-web.com) - ok millert@ kettenis@ deraadt@ + split allocation out of sshbuf_reserve() into a separate + sshbuf_allocate() function; ok markus@ - Upstream-ID: 96c5054e3e1f170c6276902d5bc65bb3b87a2603 + Upstream-ID: 11b8a2795afeeb1418d508a2c8095b3355577ec2 -commit e683fc6f1c8c7295648dbda679df8307786ec1ce -Author: dtucker@openbsd.org -Date: Thu Jun 30 05:17:05 2016 +0000 +commit f0ddedee460486fa0e32fefb2950548009e5026e +Author: markus@openbsd.org +Date: Wed Nov 23 23:14:15 2016 +0000 upstream commit - Explicitly check for 100% completion to avoid potential - floating point rounding error, which could cause progressmeter to report 99% - on completion. While there invert the test so the 100% case is clearer. with - & ok djm@ + allow ClientAlive{Interval,CountMax} in Match; ok dtucker, + djm - Upstream-ID: a166870c5878e422f3c71ff802e2ccd7032f715d + Upstream-ID: 8beb4c1eadd588f1080b58932281983864979f55 -commit 772e6cec0ed740fc7db618dc30b4134f5a358b43 -Author: jmc@openbsd.org -Date: Wed Jun 29 17:14:28 2016 +0000 +commit 1a6f9d2e2493d445cd9ee496e6e3c2a2f283f66a +Author: djm@openbsd.org +Date: Tue Nov 8 22:04:34 2016 +0000 upstream commit - sort the -o list; + unbreak DenyUsers; reported by henning@ - Upstream-ID: 1a97465ede8790b4d47cb618269978e07f41f8ac + Upstream-ID: 1c67d4148f5e953c35acdb62e7c08ae8e33f7cb2 -commit 46ecd19e554ccca15a7309cd1b6b44bc8e6b84af +commit 010359b32659f455fddd2bd85fd7cc4d7a3b994a Author: djm@openbsd.org -Date: Thu Jun 23 05:17:51 2016 +0000 +Date: Sun Nov 6 05:46:37 2016 +0000 upstream commit - fix AuthenticationMethods during configuration re-parse; - reported by Juan Francisco Cantero Hurtado + Validate address ranges for AllowUser/DenyUsers at + configuration load time and refuse to accept bad ones. It was previously + possible to specify invalid CIDR address ranges (e.g. djm@127.1.2.3/55) and + these would always match. - Upstream-ID: 8ffa1dac25c7577eca8238e825317ab20848f9b4 + Thanks to Laurence Parry for a detailed bug report. ok markus (for + a previous diff version) + + Upstream-ID: 9dfcdd9672b06e65233ea4434c38226680d40bfb -commit 3147e7595d0f2f842a666c844ac53e6c7a253d7e +commit efb494e81d1317209256b38b49f4280897c61e69 Author: djm@openbsd.org -Date: Sun Jun 19 07:48:02 2016 +0000 +Date: Fri Oct 28 03:33:52 2016 +0000 upstream commit - revert 1.34; causes problems loading public keys + Improve pkcs11_add_provider() logging: demote some + excessively verbose error()s to debug()s, include PKCS#11 provider name and + slot in log messages where possible. bz#2610, based on patch from Jakub Jelen - reported by semarie@ + Upstream-ID: 3223ef693cfcbff9079edfc7e89f55bf63e1973d + +commit 5ee3fb5affd7646f141749483205ade5fc54adaf +Author: Darren Tucker +Date: Tue Nov 1 08:12:33 2016 +1100 + + Use ptrace(PT_DENY_ATTACH, ..) on OS X. + +commit 315d2a4e674d0b7115574645cb51f968420ebb34 +Author: Damien Miller +Date: Fri Oct 28 14:34:07 2016 +1100 + + Unbreak AES-CTR ciphers on old (~0.9.8) OpenSSL - Upstream-ID: b393794f8935c8b15d98a407fe7721c62d2ed179 + ok dtucker@ -commit ad23a75509f4320d43f628c50f0817e3ad12bfa7 -Author: jmc@openbsd.org -Date: Fri Jun 17 06:33:30 2016 +0000 +commit a9ff3950b8e80ff971b4d44bbce96df27aed28af +Author: Darren Tucker +Date: Fri Oct 28 14:26:58 2016 +1100 - upstream commit + Move OPENSSL_NO_RIPEMD160 to compat. - grammar fix; + Move OPENSSL_NO_RIPEMD160 to compat and add ifdefs to mac.c around the + ripemd160 MACs. + +commit bce58885160e5db2adda3054c3b81fe770f7285a +Author: Darren Tucker +Date: Fri Oct 28 13:52:31 2016 +1100 + + Check if RIPEMD160 is disabled in OpenSSL. + +commit d924640d4c355d1b5eca1f4cc60146a9975dbbff +Author: Darren Tucker +Date: Fri Oct 28 13:38:19 2016 +1100 + + Skip ssh1 specfic ciphers. - Upstream-ID: 5d5b21c80f1e81db367333ce0bb3e5874fb3e463 + cipher-3des1.c and cipher-bf1.c are specific to sshv1 so don't even try + to compile them when Protocol 1 is not enabled. -commit 5e28b1a2a3757548b40018cc2493540a17c82e27 -Author: djm@openbsd.org -Date: Fri Jun 17 05:06:23 2016 +0000 +commit 79d078e7a49caef746516d9710ec369ba45feab6 +Author: jsg@openbsd.org +Date: Tue Oct 25 04:08:13 2016 +0000 upstream commit - translate OpenSSL error codes to something more - meaninful; bz#2522 reported by Jakub Jelen, ok dtucker@ + Fix logic in add_local_forward() that inverted a test + when code was refactored out into bind_permitted(). This broke ssh port + forwarding for non-priv ports as a non root user. - Upstream-ID: 4cb0795a366381724314e6515d57790c5930ffe5 + ok dtucker@ 'looks good' deraadt@ + + Upstream-ID: ddb8156ca03cc99997de284ce7777536ff9570c9 -commit b64faeb5eda7eff8210c754d00464f9fe9d23de5 -Author: djm@openbsd.org -Date: Fri Jun 17 05:03:40 2016 +0000 +commit a903e315dee483e555c8a3a02c2946937f9b4e5d +Author: dtucker@openbsd.org +Date: Mon Oct 24 01:09:17 2016 +0000 upstream commit - ban AuthenticationMethods="" and accept - AuthenticationMethods=any for the default behaviour of not requiring multiple - authentication + Remove dead breaks, found via opencoverage.net. ok + deraadt@ - bz#2398 from Jakub Jelen; ok dtucker@ + Upstream-ID: ad9cc655829d67fad219762810770787ba913069 + +commit b4e96b4c9bea4182846e4942ba2048e6d708ee54 +Author: Darren Tucker +Date: Wed Oct 26 08:43:25 2016 +1100 *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Mon Mar 6 01:43:30 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E5EA2CF7A59; Mon, 6 Mar 2017 01:43:30 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pf0-x241.google.com (mail-pf0-x241.google.com [IPv6:2607:f8b0:400e:c00::241]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B3CDF1867; Mon, 6 Mar 2017 01:43:30 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pf0-x241.google.com with SMTP id j5so15886771pfb.3; Sun, 05 Mar 2017 17:43:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=xeI+91DTWsER4immuEpm9zeUVml/VSixmQ4Yp0KzlkY=; b=rjsz8UWK0fVidxlOSDhNuYB4udogn4UWFO+aEYQOOJXeoCsXF3E/dRH8/Tnjm6rVdV 60m9fM3EkcFVoMpzoouuA1doR4YzNBN/oiVM2MoAw60d/niML4E/HUE1uhIOFXyVy+j5 yflQLBZutgAU7hlNW9sDxQHE3fDwXY38CesVjYov4AHPo2ssAjmBC5bqX5JgjMZYAftn +LJn24ji38hjq0eQCU6CQdkhElxadGq9IIq/rS8ElWdcZfluLKijnBMd+2x+eXn/MLjs mPdPKLg0JrdgAnCGSnsIr7fu/vL0NdGgt4CG7tO8nuvHOwP1cr5cLBqlOYL6VKrJePgm Uz+A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=xeI+91DTWsER4immuEpm9zeUVml/VSixmQ4Yp0KzlkY=; b=Si5ZgayI4unatjy+VekLOSLn0R3UIAqXSgqW9SWV7gRsPQQ0soNlAeTS/fw04IPvKR Zw3yOnWvuMGvnqv3Rr8QsHbu58W5p0J8+Jkc8rjSvkncmvhmCDSiZhm6PjRjgStbx1qx WuPzo3HXmBHyBaIGla48PaynDXCu0ZTXdNdc2HmQaHdo3Y+NDYa2CzfwcNn3hOLUofXU hL/JGcnHQD3KSivvztXSN5b0OdbarjbKKSAmbM/KY8OVGh2ioe/MHqGozJAmOPiQe1Is bfmnUhItc1KVTGe5ph8czoacemF5sDpqyVs+6vasAcZulEQMxFTTU0+nOYwitt1u4bQy JmDg== X-Gm-Message-State: AMke39ny1fQ56vB7XISQ9DuZcpwMgilynqlJKM9LtkhT96kx7iSdSZl4W4jrrqNHF2iBBA== X-Received: by 10.99.238.5 with SMTP id e5mr17183958pgi.49.1488764609813; Sun, 05 Mar 2017 17:43:29 -0800 (PST) Received: from ?IPv6:2607:fb90:2786:84e5:b134:3c24:b080:8a96? ([2607:fb90:2786:84e5:b134:3c24:b080:8a96]) by smtp.gmail.com with ESMTPSA id e2sm35754261pga.61.2017.03.05.17.43.28 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 05 Mar 2017 17:43:28 -0800 (PST) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (1.0) Subject: Re: svn commit: r314654 - in head/cddl: lib/drti lib/libavl lib/libctf lib/libdtrace lib/libnvpair lib/libumem lib/libuutil lib/libzfs lib/libzfs_core lib/libzpool sbin/zfs sbin/zpool usr.bin/ctfconver... From: Ngie Cooper X-Mailer: iPhone Mail (14D27) In-Reply-To: <7B9F63AD-4EC4-4D5E-884B-3D0A22AB3952@rpi.edu> Date: Sun, 5 Mar 2017 17:43:27 -0800 Cc: rgrimes@FreeBSD.org, src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org Content-Transfer-Encoding: quoted-printable Message-Id: <9494378A-5164-4C0A-B99A-6B9E91A281ED@gmail.com> References: <201703042039.v24KdcDE078734@pdx.rh.CN85.dnsmgr.net> <03156186-221F-4EEB-A86E-077E46E28296@gmail.com> <7B9F63AD-4EC4-4D5E-884B-3D0A22AB3952@rpi.edu> To: Garance A Drosehn X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 01:43:31 -0000 > On Mar 5, 2017, at 17:05, Garance A Drosehn wrote: >=20 > On 4 Mar 2017, at 15:42, Ngie Cooper (yaneurabeya) wrote: >=20 >>> On Mar 4, 2017, at 12:39, Rodney W. Grimes wrote: >>>=20 >>>> On 4 Mar 2017, at 15:13, Bryan Drewery wrote: >>>>=20 >>>> Where is this discussion? The only one I can find is >>>> https://reviews.freebsd.org/D9207 which seems to have >>>> a consensus of moving to SRCTOP and :H vs '../..'. >>>=20 >>> There was a short discussion here on the commiters list >>> with some others expressing the preferred the relative >>> status of things even though it clutters logs. >>>=20 >>> D9207 touches 15 files.. I would not consider that an >>> adequate review that is actually going to change nearly >>> every Makefile in the tree, and change what people have >>> been looking and at working with for 30 years. >>>=20 >>> I don't think any differntial that only had 3 or 4 people >>> involved that is going to effect all developers is >>> adequate either. Tree wide sweeping changes should be >>> discussed far more widely. >>>=20 >>> Idk, maybe I am to personally attached to the relative >>> paths.. cause I had a major part in helping them all to >>> work, or perhaps its my been burned by absolute paths >>> that had to be reworked too many times in my past. But >>> my gut is telling me this change is Bad(tm). >>=20 >> I care about this for the reasons brewery posted, but I >> also care because it slows down my terminal output and >> it bloats my disk with typescript logs that contain >> unnecessary information. >=20 > FWIW, here was my method to fix the "slows down output" issue. > I wrote a wrapper around 'make' which I called "wcmake", and > it runs the output from a 'make' command through a script > which does a variety of analysis on that output. >=20 > Among other things, it truncates the lines of make-output to > screen width, but it saves the full output to a temp file, and > then compresses that temp file. It also parses and condenses > the output so what the user sees at the console looks like: >=20 > cc -c /usr/src/usr.bin/make/arch.c -O2 -pipe -I/usr/src/usr.bin/make -DMAK= E_V|+ > cc -c /usr/src/usr.bin/make/buf.c -O2 -pipe -I/usr/src/usr.bin/make -DMAKE= _VE|+ > cc -c /usr/src/usr.bin/make/cond.c -O2 -pipe -I/usr/src/usr.bin/make -DMAK= E_V|+ >=20 > instead of: >=20 > cc -O2 -pipe -I/usr/src/usr.bin/make -DMAKE_VERSION=3D\"9201210220\" -DDEFS= HELLNAME=3D\"sh\" -std=3Dgnu99 -fstack-protector -Wsystem-headers -Wall -Wn= o-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototyp= es -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshad= ow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-exter= ns -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -c /usr/src/us= r.bin/make/arch.c -o arch.o >=20 > cc -O2 -pipe -I/usr/src/usr.bin/make -DMAKE_VERSION=3D\"9201210220\" -DDEFS= HELLNAME=3D\"sh\" -std=3Dgnu99 -fstack-protector -Wsystem-headers -Wall -Wn= o-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototyp= es -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshad= ow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-exter= ns -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -c /usr/src/us= r.bin/make/buf.c -o buf.o >=20 > cc -O2 -pipe -I/usr/src/usr.bin/make -DMAKE_VERSION=3D\"9201210220\" -DDEFS= HELLNAME=3D\"sh\" -std=3Dgnu99 -fstack-protector -Wsystem-headers -Wall -Wn= o-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototyp= es -Wpointer-arith -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshad= ow -Wunused-parameter -Wcast-align -Wchar-subscripts -Winline -Wnested-exter= ns -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -c /usr/src/us= r.bin/make/cond.c -o cond.o >=20 > # [I added blank-lines between the lines of make-output, so > # it doesn't look so much like a solid wall of characters] >=20 > (ie, it moves the '-c filename' to the start of the line, strips > the setting of any environment variables at the start, and tacks > on the '|+' at the end if it has truncated the line). It also > parses the output looking for warning messages, and writes a > summary of messages-seen after the 'make' has finished. >=20 > One of the goals was to speed up buildworld's when I was doing > them via a serial console-session or over a slow ssh-connection. > But this way if something really bad or odd *did* come up, I > could look at the original full make-output which was saved on > disk. Adding a wrapper-script obviously adds more CPU work to > the build, but my builds definitely finished faster as-far-as > wall-clock time because I was writing so much less output to > the console. >=20 > I have two versions of this script, and I don't remember why > there are two versions. The first one was written in perl, and > later I wrote a second one in ruby. Both are under ~gad/scripts > on the machines at freebsd.org. I'm sure the code in the > scripts is probably lousy and somewhat embarrassing (to me), > but you could at least check them out and see where I was > going with it. >=20 > disclaimer: I haven't taken a serious look at these scripts a > few years. I'm sure they need to be updated due to new commands > and new warning messages which have appeared since then. Hi! Have you considered using make -s instead? It definitely abbreviates the= output quite a bit... I probably could do similar for my local builds. Our Jenkins runs don't d= o that, but maybe they should though.. Thanks, -Ngie= From owner-svn-src-all@freebsd.org Mon Mar 6 02:39:04 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 83638CF9BA2; Mon, 6 Mar 2017 02:39:04 +0000 (UTC) (envelope-from drosih@rpi.edu) Received: from smtp10.server.rpi.edu (gateway.canit.rpi.edu [128.113.2.230]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "canit.localdomain", Issuer "canit.localdomain" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 5205D106D; Mon, 6 Mar 2017 02:39:03 +0000 (UTC) (envelope-from drosih@rpi.edu) Received: from smtp-auth1.server.rpi.edu (smtp-auth1.server.rpi.edu [128.113.2.231]) by smtp10.server.rpi.edu (8.14.4/8.14.4/Debian-8+deb8u1) with ESMTP id v262aNnE006347 (version=TLSv1/SSLv3 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sun, 5 Mar 2017 21:36:25 -0500 Received: from smtp-auth1.server.rpi.edu (localhost [127.0.0.1]) by smtp-auth1.server.rpi.edu (Postfix) with ESMTP id 8011B5800A; Sun, 5 Mar 2017 21:36:23 -0500 (EST) Received: from [128.113.24.47] (gilead-qc124.netel.rpi.edu [128.113.124.17]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: drosih) by smtp-auth1.server.rpi.edu (Postfix) with ESMTPSA id 27D8E58003; Sun, 5 Mar 2017 21:36:23 -0500 (EST) From: "Garance A Drosehn" To: "Ngie Cooper" Cc: src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org Subject: Re: svn commit: r314654 - in head/cddl: lib/drti lib/libavl lib/libctf lib/libdtrace lib/libnvpair lib/libumem lib/libuutil lib/libzfs lib/libzfs_core lib/libzpool sbin/zfs sbin/zpool usr.bin/ctfconver... Date: Sun, 05 Mar 2017 21:36:22 -0500 Message-ID: <013D018A-02D1-4812-A2D2-D9A730E66E8C@rpi.edu> In-Reply-To: <9494378A-5164-4C0A-B99A-6B9E91A281ED@gmail.com> References: <201703042039.v24KdcDE078734@pdx.rh.CN85.dnsmgr.net> <03156186-221F-4EEB-A86E-077E46E28296@gmail.com> <7B9F63AD-4EC4-4D5E-884B-3D0A22AB3952@rpi.edu> <9494378A-5164-4C0A-B99A-6B9E91A281ED@gmail.com> MIME-Version: 1.0 X-Mailer: MailMate (1.9.6r5347) X-Virus-Scanned: ClamAV using ClamSMTP X-Bayes-Prob: 0.0001 (Score 0, tokens from: outgoing, @@RPTN) X-Spam-Score: 0.00 () [Hold at 10.10] X-CanIt-Incident-Id: 03SQqAnUo X-CanIt-Geo: ip=128.113.124.17; country=US; region=New York; city=Troy; latitude=42.7495; longitude=-73.5951; http://maps.google.com/maps?q=42.7495,-73.5951&z=6 X-CanItPRO-Stream: outgoing X-Canit-Stats-ID: Bayes signature not available X-Scanned-By: CanIt (www . roaringpenguin . com) on 128.113.2.230 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 02:39:04 -0000 On 5 Mar 2017, at 20:43, Ngie Cooper wrote: >> On Mar 5, 2017, at 17:05, Garance A Drosehn wrote: >> >> FWIW, here was my method to fix the "slows down output" issue. >> I wrote a wrapper around 'make' which I called "wcmake", and >> it runs the output from a 'make' command through a script >> which does a variety of analysis on that output. > > Hi! > Have you considered using make -s instead? It definitely > abbreviates the output quite a bit... > I probably could do similar for my local builds. Our > Jenkins runs don't do that, but maybe they should though.. > Thanks, > -Ngie Well, the scripts are doing a lot more than just abbreviating the output sent to the console. They save the entire output, and compress that file to reduce the space used. They also generate a summary of warnings-seen at the end. This was very helpful when I was fixing all the compile-time warnings in 'lpr'. My first tactic was sending the output to /dev/null, but then I was stuck when "something weird" happened, and I had no idea where 'make' had been before it went off the rails. Especially when using 'make -j', it can be important to see the last 30-50 lines of make's output to understand what really went wrong. And sometimes what-went-wrong was that some file was being built with the wrong parameters, and I'd lose that info with 'make -s'. Also, I use these same 'wcmake' scripts on multiple platforms. These scripts don't care which version of 'make' needs to be used. -- Garance Alistair Drosehn = drosih@rpi.edu Senior Systems Programmer or gad@FreeBSD.org Rensselaer Polytechnic Institute; Troy, NY; USA From owner-svn-src-all@freebsd.org Mon Mar 6 02:42:41 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2FE86CF9D8C for ; Mon, 6 Mar 2017 02:42:41 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx1.freebsd.org (Postfix) with SMTP id 02F9814AF for ; Mon, 6 Mar 2017 02:42:40 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: (qmail 34736 invoked by uid 99); 6 Mar 2017 02:42:39 -0000 Received: from mail-relay.apache.org (HELO mail-relay.apache.org) (140.211.11.15) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 06 Mar 2017 02:42:39 +0000 Received: from [192.168.0.104] (unknown [190.157.139.67]) by mail-relay.apache.org (ASF Mail Server at mail-relay.apache.org) with ESMTPSA id BD0A81A0995; Mon, 6 Mar 2017 02:42:37 +0000 (UTC) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 10.2 \(3259\)) Subject: Re: svn commit: r314669 - head/sys/i386/conf From: Pedro Giffuni In-Reply-To: <1537596.qhqdTsTLLF@ralph.baldwin.cx> Date: Sun, 5 Mar 2017 21:43:03 -0500 Cc: Slawa Olhovchenkov , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: <3351E9C7-CC12-472A-9E81-4973710E9C8C@FreeBSD.org> References: <201703041504.v24F4HMh023937@repo.freebsd.org> <7873439.f6BlOXHt6g@ralph.baldwin.cx> <1537596.qhqdTsTLLF@ralph.baldwin.cx> To: John Baldwin X-Mailer: Apple Mail (2.3259) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 02:42:41 -0000 > Il giorno 05 mar 2017, alle ore 18:24, John Baldwin = ha scritto: >=20 > On Saturday, March 04, 2017 08:14:11 PM Pedro Giffuni wrote: >>=20 >> On 3/4/2017 5:51 PM, John Baldwin wrote: >>> On Saturday, March 04, 2017 03:49:52 PM Pedro Giffuni wrote: >>>>> Il giorno 04 mar 2017, alle ore 14:43, John Baldwin = ha scritto: >>>>>=20 >>>>> On Saturday, March 04, 2017 10:52:46 AM Pedro Giffuni wrote: >>>>>> On 03/04/17 10:32, Slawa Olhovchenkov wrote: >>>>>>> On Sat, Mar 04, 2017 at 03:04:17PM +0000, Pedro F. Giffuni = wrote: >>>>>>>=20 >>>>>>>> Author: pfg >>>>>>>> Date: Sat Mar 4 15:04:17 2017 >>>>>>>> New Revision: 314669 >>>>>>>> URL: https://svnweb.freebsd.org/changeset/base/314669 >>>>>>>>=20 >>>>>>>> Log: >>>>>>>> Drop i486 from the default i386 GENERIC kernel configuration. >>>>>>>>=20 >>>>>>>> 80486 production was stopped by Intel on September 2007. = Dropping the 486 >>>>>>>> configuration option from the GENERIC kernel improves = performance >>>>>>>> slightly. >>>>>>>>=20 >>>>>>>> Removing I486_CPU is consistent at this time: we don't support = any >>>>>>>> processor without a FPU and the PC-98 arch, which frequently = involved i486 >>>>>>>> CPUs, is also gone so we don't test such platforms anymore. >>>>>>> What is realy mean? >>>>>> This means we don't do work-arounds that would be required for = raw 486. >>>>>> Instead we will use the 586 instructions by default. >>>>> This doesn't change that. The kernel already has runtime tests in = place >>>>> for new things on 486 and later via cpuid. >>>>>=20 >>>> Hmm ..then I am wondering if I effectively changed anything? >>> The only change is a 486 now panics on boot when it used to work = fine. :-/ >>>=20 >>> Nothing for other CPUs has changed. >>=20 >> Not much has been lost then. >> FWIW, I have a "Pentium overdrive" somewhere in the basement which = could=20 >> theoretically boot FreeBSD 12 but last I remember just rebuilding a=20= >> kernel was painful and the memory and HD limitations really make it a = no-go. >=20 > So I would rather support 486 in GENERIC or not support it at all. It = doesn't > cost anything for it to be in GENERIC, so if we have it, I think we = should ship > it. Also, the original justification for this commit of a 4% = performance gain > doesn't seem to have any basis in fact. The one gain I can think of = is > de-cluttering some things like identcpu.c and initcpu.c which can only = happen if > we remove code entirely, not from removing an option in GENERIC. >=20 OK, that=E2=80=99s reasonable. I will revert the change. Pedro. From owner-svn-src-all@freebsd.org Mon Mar 6 03:12:46 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9868ECF7917; Mon, 6 Mar 2017 03:12:46 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 54FC71808; Mon, 6 Mar 2017 03:12:46 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by freefall.freebsd.org (Postfix) with ESMTPS id 78C4A6232; Mon, 6 Mar 2017 03:12:45 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 7B7C4355C9; Mon, 6 Mar 2017 03:12:39 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id YmZudh0nBxwm; Mon, 6 Mar 2017 03:12:27 +0000 (UTC) Subject: Re: svn commit: r314709 - head DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com 6DB14355C4 To: Warner Losh References: <201703052116.v25LGoEv072414@repo.freebsd.org> Cc: src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" From: Bryan Drewery Organization: FreeBSD Message-ID: <55159e24-f318-dd61-fe13-c340826fe006@FreeBSD.org> Date: Sun, 5 Mar 2017 19:12:09 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="QNSvsL1wVn4d1OV6j8j4iG6lVsT0JuLSi" X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 03:12:46 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --QNSvsL1wVn4d1OV6j8j4iG6lVsT0JuLSi Content-Type: multipart/mixed; boundary="aEJVlVO0HmheavpeIoIuWtbhG9eVi1GaW"; protected-headers="v1" From: Bryan Drewery To: Warner Losh Cc: src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Message-ID: <55159e24-f318-dd61-fe13-c340826fe006@FreeBSD.org> Subject: Re: svn commit: r314709 - head References: <201703052116.v25LGoEv072414@repo.freebsd.org> In-Reply-To: --aEJVlVO0HmheavpeIoIuWtbhG9eVi1GaW Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 3/5/17 3:41 PM, Warner Losh wrote: > On Sun, Mar 5, 2017 at 2:16 PM, Bryan Drewery wr= ote: >> Author: bdrewery >> Date: Sun Mar 5 21:16:50 2017 >> New Revision: 314709 >> URL: https://svnweb.freebsd.org/changeset/base/314709 >> >> Log: >> Fix bootstrapping mtree after r313404 for older systems. >> >> r313404 made libnetbsd require sha384.h from libmd. Libmd added it = in >> r292782. Update BOOTSTRAPPING to account for this. >> >> Reported by: bde >> Reviewed by: ngie >> >> Modified: >> head/Makefile.inc1 >> >> Modified: head/Makefile.inc1 >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D >> --- head/Makefile.inc1 Sun Mar 5 19:56:20 2017 (r314708) >> +++ head/Makefile.inc1 Sun Mar 5 21:16:50 2017 (r314709) >> @@ -1618,10 +1618,12 @@ ${_bt}-usr.bin/m4: ${_bt}-lib/libopenbsd >> ${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 >> .endif >> >> -.if ${BOOTSTRAPPING} < 1000026 >> -_nmtree=3D lib/libnetbsd \ >=20 > I've been trying to document the bootstrapping stuff inline like >=20 > # r313404 made libnetbsd require libmd Definitely. I forgot about that. I think my change is incomplete and need to chase down a 2nd failure report. I'll add the comment once that is figured out. >=20 > so we know why things are the way they are. Sure, I can chase down a > dozen things in the svn logs, but a quick shortcut like that saves a > lot of time. >=20 > Any chance you could do that as well? >=20 > Warner >=20 >> +.if ${BOOTSTRAPPING} < 1100093 >> +_nmtree=3D lib/libmd \ >> + lib/libnetbsd \ >> usr.sbin/nmtree >> >> +${_bt}-lib/libnetbsd: ${_bt}-lib/libmd >> ${_bt}-usr.sbin/nmtree: ${_bt}-lib/libnetbsd >> .endif >> >> --=20 Regards, Bryan Drewery --aEJVlVO0HmheavpeIoIuWtbhG9eVi1GaW-- --QNSvsL1wVn4d1OV6j8j4iG6lVsT0JuLSi Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJYvNOKAAoJEDXXcbtuRpfP8s0H/04+GV/dTMg4k/TAsrWx5IMt QdjiaPzThh9kF9fWXdLbxHNeVeUNr3QvydbrsqJ7CefZL0wiu58QUYVyxqATORyL yX6D8InTVjozK/ywyvARMhmNf6jvjeFcJGc7ONxHTRmJ30cfEPiYVTsItigIrdt6 e7Ibo9d3uZoaP5MvO4L7Vjf70IOFXz8HLp/g1sjddYTJ7ivB1DbfkyXbfLrqMp3H AtV4zkm71n044fVS9EKKvfY4xBJvicHO4YGUqkg8dOk/CE41bpsObboxXL4+5vOJ w9RpMgEiz0QR4LW9X5r8BVFqJKOWKAhAbPNH1uslICfqCqAW8QzaZfT8ZOf2t5c= =Uze6 -----END PGP SIGNATURE----- --QNSvsL1wVn4d1OV6j8j4iG6lVsT0JuLSi-- From owner-svn-src-all@freebsd.org Mon Mar 6 03:52:16 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C4941CFB01F; Mon, 6 Mar 2017 03:52:16 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8C0EC16EA; Mon, 6 Mar 2017 03:52:16 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v263qFEM033370; Mon, 6 Mar 2017 03:52:15 GMT (envelope-from pfg@FreeBSD.org) Received: (from pfg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v263qFoe033368; Mon, 6 Mar 2017 03:52:15 GMT (envelope-from pfg@FreeBSD.org) Message-Id: <201703060352.v263qFoe033368@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pfg set sender to pfg@FreeBSD.org using -f From: "Pedro F. Giffuni" Date: Mon, 6 Mar 2017 03:52:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314721 - in head: . sys/i386/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 03:52:16 -0000 Author: pfg Date: Mon Mar 6 03:52:15 2017 New Revision: 314721 URL: https://svnweb.freebsd.org/changeset/base/314721 Log: Revert r314669, r314670: Bring back the i486 option in GENERIC by default. The code related to i386 CPU variants configuration has received many changes in the last years: most of the features are detected automatically, so there are no performance penalties from keeping the 486 support enabled. Re-instate the 486 support: while the general configuration could still be cleaned a bit, there is no advantage in removing it. Differential Revision: https://reviews.freebsd.org/D9879 Modified: head/UPDATING head/sys/i386/conf/GENERIC Modified: head/UPDATING ============================================================================== --- head/UPDATING Mon Mar 6 01:37:05 2017 (r314720) +++ head/UPDATING Mon Mar 6 03:52:15 2017 (r314721) @@ -51,11 +51,6 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 12 ****************************** SPECIAL WARNING: ****************************** -20170304: - Support for i486 has been dropped from the defauilt GENERIC i386 - kernel. Users of such old processors can still build custom kernels - or can upgrade the processor. - 20170302: Clang, llvm, lldb, compiler-rt and libc++ have been upgraded to 4.0.0. Please see the 20141231 entry below for information about prerequisites Modified: head/sys/i386/conf/GENERIC ============================================================================== --- head/sys/i386/conf/GENERIC Mon Mar 6 01:37:05 2017 (r314720) +++ head/sys/i386/conf/GENERIC Mon Mar 6 03:52:15 2017 (r314721) @@ -18,6 +18,7 @@ # # $FreeBSD$ +cpu I486_CPU cpu I586_CPU cpu I686_CPU ident GENERIC From owner-svn-src-all@freebsd.org Mon Mar 6 04:02:01 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4B339CFB20D; Mon, 6 Mar 2017 04:02:01 +0000 (UTC) (envelope-from eri@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0F3251CF4; Mon, 6 Mar 2017 04:02:00 +0000 (UTC) (envelope-from eri@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26420r1035501; Mon, 6 Mar 2017 04:02:00 GMT (envelope-from eri@FreeBSD.org) Received: (from eri@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v2641wS9035400; Mon, 6 Mar 2017 04:01:58 GMT (envelope-from eri@FreeBSD.org) Message-Id: <201703060401.v2641wS9035400@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: eri set sender to eri@FreeBSD.org using -f From: =?UTF-8?Q?Ermal_Lu=c3=a7i?= Date: Mon, 6 Mar 2017 04:01:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314722 - in head: share/man/man4 sys/netinet sys/netinet6 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 04:02:01 -0000 Author: eri Date: Mon Mar 6 04:01:58 2017 New Revision: 314722 URL: https://svnweb.freebsd.org/changeset/base/314722 Log: The patch provides the same socket option as Linux IP_ORIGDSTADDR. Unfortunately they will have different integer value due to Linux value being already assigned in FreeBSD. The patch is similar to IP_RECVDSTADDR but also provides the destination port value to the application. This allows/improves implementation of transparent proxies on UDP sockets due to having the whole information on forwarded packets. Reviewed by: adrian, aw Approved by: ae (mentor) Sponsored by: rsync.net Differential Revision: D9235 Modified: head/share/man/man4/ip.4 head/share/man/man4/ip6.4 head/sys/netinet/in.h head/sys/netinet/in_pcb.c head/sys/netinet/in_pcb.h head/sys/netinet/ip_output.c head/sys/netinet/udp_usrreq.c head/sys/netinet6/in6.h head/sys/netinet6/in6_pcb.c head/sys/netinet6/in6_pcb.h head/sys/netinet6/ip6_output.c head/sys/netinet6/raw_ip6.c head/sys/netinet6/udp6_usrreq.c Modified: head/share/man/man4/ip.4 ============================================================================== --- head/share/man/man4/ip.4 Mon Mar 6 03:52:15 2017 (r314721) +++ head/share/man/man4/ip.4 Mon Mar 6 04:01:58 2017 (r314722) @@ -136,6 +136,37 @@ determined by the destination address, r error. .Pp If the +.Dv IP_ORIGDSTADDR +option is enabled on a +.Dv SOCK_DGRAM +socket, +the +.Xr recvmsg 2 +call will return the destination +.Tn IP +address and destination port or a +.Tn UDP +datagram. +The +.Vt msg_control +field in the +.Vt msghdr +structure points to a buffer +that contains a +.Vt cmsghdr +structure followed by the +.Tn in_sockkaddr +structre. +The +.Vt cmsghdr +fields have the following values: +.Bd -literal +cmsg_len = CMSG_LEN(sizeof(struct in_sockaddr)) +cmsg_level = IPPROTO_IP +cmsg_type = IP_ORIGDSTADDR +.Ed +.Pp +If the .Dv IP_RECVDSTADDR option is enabled on a .Dv SOCK_DGRAM Modified: head/share/man/man4/ip6.4 ============================================================================== --- head/share/man/man4/ip6.4 Mon Mar 6 03:52:15 2017 (r314721) +++ head/share/man/man4/ip6.4 Mon Mar 6 04:01:58 2017 (r314722) @@ -156,6 +156,9 @@ datagrams sent on this socket. .\" .It Dv IPV6_RECVDSTADDR Fa "int *" .\" Get or set the status of whether datagrams are received with .\" destination addresses. +.\" .It Dv IPV6_ORIGDSTADDR Fa "int *" +.\" Get or set the status of whether datagrams are received with +.\" destination addresses and destination ports. .\" .It Dv IPV6_RETOPTS .\" Get or set IPv6 options. .It Dv IPV6_MULTICAST_IF Fa "u_int *" Modified: head/sys/netinet/in.h ============================================================================== --- head/sys/netinet/in.h Mon Mar 6 03:52:15 2017 (r314721) +++ head/sys/netinet/in.h Mon Mar 6 04:01:58 2017 (r314722) @@ -433,6 +433,8 @@ __END_DECLS #define IP_BINDANY 24 /* bool: allow bind to any address */ #define IP_BINDMULTI 25 /* bool: allow multiple listeners on a tuple */ #define IP_RSS_LISTEN_BUCKET 26 /* int; set RSS listen bucket */ +#define IP_ORIGDSTADDR 27 /* bool: receive IP dst addr/port w/dgram */ +#define IP_RECVORIGDSTADDR IP_ORIGDSTADDR /* * Options for controlling the firewall and dummynet. Modified: head/sys/netinet/in_pcb.c ============================================================================== --- head/sys/netinet/in_pcb.c Mon Mar 6 03:52:15 2017 (r314721) +++ head/sys/netinet/in_pcb.c Mon Mar 6 04:01:58 2017 (r314722) @@ -2492,6 +2492,10 @@ db_print_inpflags(int inp_flags) db_printf("%sINP_RECVDSTADDR", comma ? ", " : ""); comma = 1; } + if (inp_flags & INP_ORIGDSTADDR) { + db_printf("%sINP_ORIGDSTADDR", comma ? ", " : ""); + comma = 1; + } if (inp_flags & INP_HDRINCL) { db_printf("%sINP_HDRINCL", comma ? ", " : ""); comma = 1; Modified: head/sys/netinet/in_pcb.h ============================================================================== --- head/sys/netinet/in_pcb.h Mon Mar 6 03:52:15 2017 (r314721) +++ head/sys/netinet/in_pcb.h Mon Mar 6 04:01:58 2017 (r314722) @@ -618,6 +618,7 @@ short inp_so_options(const struct inpcb #define INP_RECVFLOWID 0x00000100 /* populate recv datagram with flow info */ #define INP_RECVRSSBUCKETID 0x00000200 /* populate recv datagram with bucket id */ #define INP_RATE_LIMIT_CHANGED 0x00000400 /* rate limit needs attention */ +#define INP_ORIGDSTADDR 0x00000800 /* receive IP dst address/port */ /* * Flags passed to in_pcblookup*() functions. Modified: head/sys/netinet/ip_output.c ============================================================================== --- head/sys/netinet/ip_output.c Mon Mar 6 03:52:15 2017 (r314721) +++ head/sys/netinet/ip_output.c Mon Mar 6 04:01:58 2017 (r314722) @@ -1065,6 +1065,7 @@ ip_ctloutput(struct socket *so, struct s case IP_MINTTL: case IP_RECVOPTS: case IP_RECVRETOPTS: + case IP_ORIGDSTADDR: case IP_RECVDSTADDR: case IP_RECVTTL: case IP_RECVIF: @@ -1126,6 +1127,10 @@ ip_ctloutput(struct socket *so, struct s OPTSET(INP_RECVDSTADDR); break; + case IP_ORIGDSTADDR: + OPTSET2(INP_ORIGDSTADDR, optval); + break; + case IP_RECVTTL: OPTSET(INP_RECVTTL); break; @@ -1258,6 +1263,7 @@ ip_ctloutput(struct socket *so, struct s case IP_MINTTL: case IP_RECVOPTS: case IP_RECVRETOPTS: + case IP_ORIGDSTADDR: case IP_RECVDSTADDR: case IP_RECVTTL: case IP_RECVIF: @@ -1303,6 +1309,10 @@ ip_ctloutput(struct socket *so, struct s optval = OPTBIT(INP_RECVDSTADDR); break; + case IP_ORIGDSTADDR: + optval = OPTBIT2(INP_ORIGDSTADDR); + break; + case IP_RECVTTL: optval = OPTBIT(INP_RECVTTL); break; Modified: head/sys/netinet/udp_usrreq.c ============================================================================== --- head/sys/netinet/udp_usrreq.c Mon Mar 6 03:52:15 2017 (r314721) +++ head/sys/netinet/udp_usrreq.c Mon Mar 6 04:01:58 2017 (r314722) @@ -304,7 +304,7 @@ udp_append(struct inpcb *inp, struct ip { struct sockaddr *append_sa; struct socket *so; - struct mbuf *opts = NULL; + struct mbuf *tmpopts, *opts = NULL; #ifdef INET6 struct sockaddr_in6 udp_in6; #endif @@ -319,7 +319,7 @@ udp_append(struct inpcb *inp, struct ip if (up->u_tun_func != NULL) { in_pcbref(inp); INP_RUNLOCK(inp); - (*up->u_tun_func)(n, off, inp, (struct sockaddr *)udp_in, + (*up->u_tun_func)(n, off, inp, (struct sockaddr *)&udp_in[0], up->u_tun_ctx); INP_RLOCK(inp); return (in_pcbrele_rlocked(inp)); @@ -355,16 +355,27 @@ udp_append(struct inpcb *inp, struct ip #endif /* INET6 */ ip_savecontrol(inp, &opts, ip, n); } + if ((inp->inp_vflag & INP_IPV4) && (inp->inp_flags2 & INP_ORIGDSTADDR)) { + tmpopts = sbcreatecontrol((caddr_t)&udp_in[1], + sizeof(struct sockaddr_in), IP_ORIGDSTADDR, IPPROTO_IP); + if (tmpopts) { + if (opts) { + tmpopts->m_next = opts; + opts = tmpopts; + } else + opts = tmpopts; + } + } #ifdef INET6 if (inp->inp_vflag & INP_IPV6) { bzero(&udp_in6, sizeof(udp_in6)); udp_in6.sin6_len = sizeof(udp_in6); udp_in6.sin6_family = AF_INET6; - in6_sin_2_v4mapsin6(udp_in, &udp_in6); + in6_sin_2_v4mapsin6(&udp_in[0], &udp_in6); append_sa = (struct sockaddr *)&udp_in6; } else #endif /* INET6 */ - append_sa = (struct sockaddr *)udp_in; + append_sa = (struct sockaddr *)&udp_in[0]; m_adj(n, off); so = inp->inp_socket; @@ -390,7 +401,7 @@ udp_input(struct mbuf **mp, int *offp, i uint16_t len, ip_len; struct inpcbinfo *pcbinfo; struct ip save_ip; - struct sockaddr_in udp_in; + struct sockaddr_in udp_in[2]; struct mbuf *m; struct m_tag *fwd_tag; int cscov_partial, iphlen; @@ -435,11 +446,15 @@ udp_input(struct mbuf **mp, int *offp, i * Construct sockaddr format source address. Stuff source address * and datagram in user buffer. */ - bzero(&udp_in, sizeof(udp_in)); - udp_in.sin_len = sizeof(udp_in); - udp_in.sin_family = AF_INET; - udp_in.sin_port = uh->uh_sport; - udp_in.sin_addr = ip->ip_src; + bzero(&udp_in[0], sizeof(struct sockaddr_in) * 2); + udp_in[0].sin_len = sizeof(struct sockaddr_in); + udp_in[0].sin_family = AF_INET; + udp_in[0].sin_port = uh->uh_sport; + udp_in[0].sin_addr = ip->ip_src; + udp_in[1].sin_len = sizeof(struct sockaddr_in); + udp_in[1].sin_family = AF_INET; + udp_in[1].sin_port = uh->uh_dport; + udp_in[1].sin_addr = ip->ip_dst; /* * Make mbuf data length reflect UDP length. If not enough data to @@ -568,7 +583,7 @@ udp_input(struct mbuf **mp, int *offp, i blocked = imo_multi_filter(imo, ifp, (struct sockaddr *)&group, - (struct sockaddr *)&udp_in); + (struct sockaddr *)&udp_in[0]); if (blocked != MCAST_PASS) { if (blocked == MCAST_NOTGMEMBER) IPSTAT_INC(ips_notmember); @@ -587,7 +602,7 @@ udp_input(struct mbuf **mp, int *offp, i UDP_PROBE(receive, NULL, last, ip, last, uh); if (udp_append(last, ip, n, iphlen, - &udp_in)) { + udp_in)) { goto inp_lost; } } @@ -620,7 +635,7 @@ udp_input(struct mbuf **mp, int *offp, i goto badunlocked; } UDP_PROBE(receive, NULL, last, ip, last, uh); - if (udp_append(last, ip, m, iphlen, &udp_in) == 0) + if (udp_append(last, ip, m, iphlen, udp_in) == 0) INP_RUNLOCK(last); inp_lost: INP_INFO_RUNLOCK(pcbinfo); @@ -710,7 +725,7 @@ udp_input(struct mbuf **mp, int *offp, i } UDP_PROBE(receive, NULL, inp, ip, inp, uh); - if (udp_append(inp, ip, m, iphlen, &udp_in) == 0) + if (udp_append(inp, ip, m, iphlen, udp_in) == 0) INP_RUNLOCK(inp); return (IPPROTO_DONE); Modified: head/sys/netinet6/in6.h ============================================================================== --- head/sys/netinet6/in6.h Mon Mar 6 03:52:15 2017 (r314721) +++ head/sys/netinet6/in6.h Mon Mar 6 04:01:58 2017 (r314722) @@ -497,6 +497,9 @@ struct route_in6 { #define IPV6_RECVFLOWID 70 /* bool; receive IP6 flowid/flowtype w/ datagram */ #define IPV6_RECVRSSBUCKETID 71 /* bool; receive IP6 RSS bucket id w/ datagram */ +#define IPV6_ORIGDSTADDR 72 /* bool: allow getting dstaddr /port info */ +#define IPV6_RECVORIGDSTADDR IPV6_ORIGDSTADDR + /* * The following option is private; do not use it from user applications. * It is deliberately defined to the same value as IP_MSFILTER. Modified: head/sys/netinet6/in6_pcb.c ============================================================================== --- head/sys/netinet6/in6_pcb.c Mon Mar 6 03:52:15 2017 (r314721) +++ head/sys/netinet6/in6_pcb.c Mon Mar 6 04:01:58 2017 (r314722) @@ -1267,7 +1267,7 @@ in6_pcblookup_mbuf(struct inpcbinfo *pcb } void -init_sin6(struct sockaddr_in6 *sin6, struct mbuf *m) +init_sin6(struct sockaddr_in6 *sin6, struct mbuf *m, int srcordst) { struct ip6_hdr *ip; @@ -1275,7 +1275,7 @@ init_sin6(struct sockaddr_in6 *sin6, str bzero(sin6, sizeof(*sin6)); sin6->sin6_len = sizeof(*sin6); sin6->sin6_family = AF_INET6; - sin6->sin6_addr = ip->ip6_src; + sin6->sin6_addr = srcordst ? ip->ip6_dst : ip->ip6_src; (void)sa6_recoverscope(sin6); /* XXX: should catch errors... */ Modified: head/sys/netinet6/in6_pcb.h ============================================================================== --- head/sys/netinet6/in6_pcb.h Mon Mar 6 03:52:15 2017 (r314721) +++ head/sys/netinet6/in6_pcb.h Mon Mar 6 04:01:58 2017 (r314722) @@ -113,7 +113,7 @@ int in6_mapped_sockaddr(struct socket *s int in6_mapped_peeraddr(struct socket *so, struct sockaddr **nam); int in6_selecthlim(struct in6pcb *, struct ifnet *); int in6_pcbsetport(struct in6_addr *, struct inpcb *, struct ucred *); -void init_sin6(struct sockaddr_in6 *sin6, struct mbuf *m); +void init_sin6(struct sockaddr_in6 *sin6, struct mbuf *m, int); #endif /* _KERNEL */ #endif /* !_NETINET6_IN6_PCB_H_ */ Modified: head/sys/netinet6/ip6_output.c ============================================================================== --- head/sys/netinet6/ip6_output.c Mon Mar 6 03:52:15 2017 (r314721) +++ head/sys/netinet6/ip6_output.c Mon Mar 6 04:01:58 2017 (r314722) @@ -1545,6 +1545,7 @@ ip6_ctloutput(struct socket *so, struct #endif case IPV6_V6ONLY: case IPV6_AUTOFLOWLABEL: + case IPV6_ORIGDSTADDR: case IPV6_BINDANY: case IPV6_BINDMULTI: #ifdef RSS @@ -1730,6 +1731,9 @@ do { \ OPTSET(IN6P_AUTOFLOWLABEL); break; + case IPV6_ORIGDSTADDR: + OPTSET2(INP_ORIGDSTADDR, optval); + break; case IPV6_BINDANY: OPTSET(INP_BINDANY); break; @@ -2018,6 +2022,10 @@ do { \ optval = OPTBIT(IN6P_AUTOFLOWLABEL); break; + case IPV6_ORIGDSTADDR: + optval = OPTBIT2(INP_ORIGDSTADDR); + break; + case IPV6_BINDANY: optval = OPTBIT(INP_BINDANY); break; Modified: head/sys/netinet6/raw_ip6.c ============================================================================== --- head/sys/netinet6/raw_ip6.c Mon Mar 6 03:52:15 2017 (r314721) +++ head/sys/netinet6/raw_ip6.c Mon Mar 6 04:01:58 2017 (r314722) @@ -166,7 +166,7 @@ rip6_input(struct mbuf **mp, int *offp, RIP6STAT_INC(rip6s_ipackets); - init_sin6(&fromsa, m); /* general init */ + init_sin6(&fromsa, m, 0); /* general init */ ifp = m->m_pkthdr.rcvif; Modified: head/sys/netinet6/udp6_usrreq.c ============================================================================== --- head/sys/netinet6/udp6_usrreq.c Mon Mar 6 03:52:15 2017 (r314721) +++ head/sys/netinet6/udp6_usrreq.c Mon Mar 6 04:01:58 2017 (r314722) @@ -137,7 +137,7 @@ udp6_append(struct inpcb *inp, struct mb struct sockaddr_in6 *fromsa) { struct socket *so; - struct mbuf *opts; + struct mbuf *opts = NULL, *tmp_opts; struct udpcb *up; INP_LOCK_ASSERT(inp); @@ -149,7 +149,7 @@ udp6_append(struct inpcb *inp, struct mb if (up->u_tun_func != NULL) { in_pcbref(inp); INP_RUNLOCK(inp); - (*up->u_tun_func)(n, off, inp, (struct sockaddr *)fromsa, + (*up->u_tun_func)(n, off, inp, (struct sockaddr *)&fromsa[0], up->u_tun_ctx); INP_RLOCK(inp); return (in_pcbrele_rlocked(inp)); @@ -173,11 +173,23 @@ udp6_append(struct inpcb *inp, struct mb if (inp->inp_flags & INP_CONTROLOPTS || inp->inp_socket->so_options & SO_TIMESTAMP) ip6_savecontrol(inp, n, &opts); + if ((inp->inp_vflag & INP_IPV6) && (inp->inp_flags2 & INP_ORIGDSTADDR)) { + tmp_opts = sbcreatecontrol((caddr_t)&fromsa[1], + sizeof(struct sockaddr_in6), IPV6_ORIGDSTADDR, IPPROTO_IPV6); + if (tmp_opts) { + if (opts) { + tmp_opts->m_next = opts; + opts = tmp_opts; + } else + opts = tmp_opts; + } + + } m_adj(n, off + sizeof(struct udphdr)); so = inp->inp_socket; SOCKBUF_LOCK(&so->so_rcv); - if (sbappendaddr_locked(&so->so_rcv, (struct sockaddr *)fromsa, n, + if (sbappendaddr_locked(&so->so_rcv, (struct sockaddr *)&fromsa[0], n, opts) == 0) { SOCKBUF_UNLOCK(&so->so_rcv); m_freem(n); @@ -202,7 +214,7 @@ udp6_input(struct mbuf **mp, int *offp, int off = *offp; int cscov_partial; int plen, ulen; - struct sockaddr_in6 fromsa; + struct sockaddr_in6 fromsa[2]; struct m_tag *fwd_tag; uint16_t uh_sum; uint8_t nxt; @@ -277,8 +289,10 @@ udp6_input(struct mbuf **mp, int *offp, /* * Construct sockaddr format source address. */ - init_sin6(&fromsa, m); - fromsa.sin6_port = uh->uh_sport; + init_sin6(&fromsa[0], m, 0); + fromsa[0].sin6_port = uh->uh_sport; + init_sin6(&fromsa[1], m, 1); + fromsa[1].sin6_port = uh->uh_dport; pcbinfo = udp_get_inpcbinfo(nxt); if (IN6_IS_ADDR_MULTICAST(&ip6->ip6_dst)) { @@ -349,7 +363,7 @@ udp6_input(struct mbuf **mp, int *offp, blocked = im6o_mc_filter(imo, ifp, (struct sockaddr *)&mcaddr, - (struct sockaddr *)&fromsa); + (struct sockaddr *)&fromsa[0]); if (blocked != MCAST_PASS) { if (blocked == MCAST_NOTGMEMBER) IP6STAT_INC(ip6s_notmember); @@ -370,7 +384,7 @@ udp6_input(struct mbuf **mp, int *offp, INP_RLOCK(last); UDP_PROBE(receive, NULL, last, ip6, last, uh); - if (udp6_append(last, n, off, &fromsa)) + if (udp6_append(last, n, off, fromsa)) goto inp_lost; INP_RUNLOCK(last); } @@ -402,7 +416,7 @@ udp6_input(struct mbuf **mp, int *offp, INP_RLOCK(last); INP_INFO_RUNLOCK(pcbinfo); UDP_PROBE(receive, NULL, last, ip6, last, uh); - if (udp6_append(last, m, off, &fromsa) == 0) + if (udp6_append(last, m, off, fromsa) == 0) INP_RUNLOCK(last); inp_lost: return (IPPROTO_DONE); @@ -482,7 +496,7 @@ udp6_input(struct mbuf **mp, int *offp, } } UDP_PROBE(receive, NULL, inp, ip6, inp, uh); - if (udp6_append(inp, m, off, &fromsa) == 0) + if (udp6_append(inp, m, off, fromsa) == 0) INP_RUNLOCK(inp); return (IPPROTO_DONE); From owner-svn-src-all@freebsd.org Mon Mar 6 04:16:36 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B1095CFB72E; Mon, 6 Mar 2017 04:16:36 +0000 (UTC) (envelope-from ian@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7FB8D13DF; Mon, 6 Mar 2017 04:16:36 +0000 (UTC) (envelope-from ian@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v264GZmU041776; Mon, 6 Mar 2017 04:16:35 GMT (envelope-from ian@FreeBSD.org) Received: (from ian@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v264GZHs041775; Mon, 6 Mar 2017 04:16:35 GMT (envelope-from ian@FreeBSD.org) Message-Id: <201703060416.v264GZHs041775@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ian set sender to ian@FreeBSD.org using -f From: Ian Lepore Date: Mon, 6 Mar 2017 04:16:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314723 - head/sys/modules/dtb/imx6 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 04:16:36 -0000 Author: ian Date: Mon Mar 6 04:16:35 2017 New Revision: 314723 URL: https://svnweb.freebsd.org/changeset/base/314723 Log: Build the dtb files for the revb1 versions of wandboard. Modified: head/sys/modules/dtb/imx6/Makefile Modified: head/sys/modules/dtb/imx6/Makefile ============================================================================== --- head/sys/modules/dtb/imx6/Makefile Mon Mar 6 04:01:58 2017 (r314722) +++ head/sys/modules/dtb/imx6/Makefile Mon Mar 6 04:16:35 2017 (r314723) @@ -12,6 +12,8 @@ DTS= \ imx6sx-nitrogen6sx.dts \ imx6dl-riotboard.dts \ imx6dl-wandboard.dts \ - imx6q-wandboard.dts + imx6dl-wandboard-revb1.dts \ + imx6q-wandboard.dts \ + imx6q-wandboard-revb1.dts \ .include From owner-svn-src-all@freebsd.org Mon Mar 6 06:08:18 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AADC7CFB2E3; Mon, 6 Mar 2017 06:08:18 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 777FD1BF8; Mon, 6 Mar 2017 06:08:18 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v2668HZX086004; Mon, 6 Mar 2017 06:08:17 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v2668HNS086003; Mon, 6 Mar 2017 06:08:17 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060608.v2668HNS086003@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:08:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314724 - stable/11/sys/dev/firewire X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:08:18 -0000 Author: mav Date: Mon Mar 6 06:08:17 2017 New Revision: 314724 URL: https://svnweb.freebsd.org/changeset/base/314724 Log: MFC r314358: Announce that sbp_targ(4) does not support initiator mode. Modified: stable/11/sys/dev/firewire/sbp_targ.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/firewire/sbp_targ.c ============================================================================== --- stable/11/sys/dev/firewire/sbp_targ.c Mon Mar 6 04:16:35 2017 (r314723) +++ stable/11/sys/dev/firewire/sbp_targ.c Mon Mar 6 06:08:17 2017 (r314724) @@ -1324,7 +1324,8 @@ sbp_targ_action1(struct cam_sim *sim, un | PIT_DISCONNECT | PIT_TERM_IO; cpi->transport = XPORT_SPI; /* FIXME add XPORT_FW type to cam */ - cpi->hba_misc = PIM_NOBUSRESET | PIM_NO_6_BYTE; + cpi->hba_misc = PIM_NOINITIATOR | PIM_NOBUSRESET | + PIM_NO_6_BYTE; cpi->hba_eng_cnt = 0; cpi->max_target = 7; /* XXX */ cpi->max_lun = MAX_LUN - 1; From owner-svn-src-all@freebsd.org Mon Mar 6 06:09:35 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0869ECFB446; Mon, 6 Mar 2017 06:09:35 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CBD511D40; Mon, 6 Mar 2017 06:09:34 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v2669XT6086138; Mon, 6 Mar 2017 06:09:33 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v2669Xgo086137; Mon, 6 Mar 2017 06:09:33 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060609.v2669Xgo086137@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:09:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314725 - stable/10/sys/dev/firewire X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:09:35 -0000 Author: mav Date: Mon Mar 6 06:09:33 2017 New Revision: 314725 URL: https://svnweb.freebsd.org/changeset/base/314725 Log: MFC r314358: Announce that sbp_targ(4) does not support initiator mode. Modified: stable/10/sys/dev/firewire/sbp_targ.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/firewire/sbp_targ.c ============================================================================== --- stable/10/sys/dev/firewire/sbp_targ.c Mon Mar 6 06:08:17 2017 (r314724) +++ stable/10/sys/dev/firewire/sbp_targ.c Mon Mar 6 06:09:33 2017 (r314725) @@ -1327,7 +1327,8 @@ sbp_targ_action1(struct cam_sim *sim, un | PIT_DISCONNECT | PIT_TERM_IO; cpi->transport = XPORT_SPI; /* FIXME add XPORT_FW type to cam */ - cpi->hba_misc = PIM_NOBUSRESET | PIM_NO_6_BYTE; + cpi->hba_misc = PIM_NOINITIATOR | PIM_NOBUSRESET | + PIM_NO_6_BYTE; cpi->hba_eng_cnt = 0; cpi->max_target = 7; /* XXX */ cpi->max_lun = MAX_LUN - 1; From owner-svn-src-all@freebsd.org Mon Mar 6 06:18:32 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2C1BECFBF56; Mon, 6 Mar 2017 06:18:32 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 817D41687; Mon, 6 Mar 2017 06:18:31 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266IUwT090443; Mon, 6 Mar 2017 06:18:30 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266IUj8090442; Mon, 6 Mar 2017 06:18:30 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060618.v266IUj8090442@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:18:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314726 - stable/11/sys/cam/ctl X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:18:32 -0000 Author: mav Date: Mon Mar 6 06:18:30 2017 New Revision: 314726 URL: https://svnweb.freebsd.org/changeset/base/314726 Log: MFC r314027: Do not blindly free completed ATIOs/INOTs on invalidation. When LUN is disabled, SIM starts returning queued ATIOs/INOTs. But at the same time there can be some ATIOs/INOTs still carrying real new requests. If we free those, SIM may leak some resources, forever expecting for any response from us. So try to be careful, separating ATIOs/INOTs carrying requests which still must be processed, from ATIOs/INOTs completed with errors which can be freed. Modified: stable/11/sys/cam/ctl/scsi_ctl.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:09:33 2017 (r314725) +++ stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:18:30 2017 (r314726) @@ -1102,6 +1102,7 @@ ctlfedone(struct cam_periph *periph, uni struct ccb_accept_tio *atio = NULL; union ctl_io *io = NULL; struct mtx *mtx; + cam_status status; KASSERT((done_ccb->ccb_h.flags & CAM_UNLOCKED) != 0, ("CCB in ctlfedone() without CAM_UNLOCKED flag")); @@ -1128,30 +1129,15 @@ ctlfedone(struct cam_periph *periph, uni mtx = cam_periph_mtx(periph); mtx_lock(mtx); - /* - * If the peripheral is invalid, ATIOs and immediate notify CCBs - * need to be freed. Most of the ATIOs and INOTs that come back - * will be CCBs that are being returned from the SIM as a result of - * our disabling the LUN. - * - * Other CCB types are handled in their respective cases below. - */ - if (periph->flags & CAM_PERIPH_INVALID) { - switch (done_ccb->ccb_h.func_code) { - case XPT_ACCEPT_TARGET_IO: - case XPT_IMMEDIATE_NOTIFY: - case XPT_NOTIFY_ACKNOWLEDGE: - ctlfe_free_ccb(periph, done_ccb); - goto out; - default: - break; - } - - } switch (done_ccb->ccb_h.func_code) { case XPT_ACCEPT_TARGET_IO: { atio = &done_ccb->atio; + status = atio->ccb_h.status & CAM_STATUS_MASK; + if (status != CAM_CDB_RECVD) { + ctlfe_free_ccb(periph, done_ccb); + goto out; + } resubmit: /* @@ -1430,14 +1416,9 @@ ctlfedone(struct cam_periph *periph, uni case XPT_IMMEDIATE_NOTIFY: { union ctl_io *io; struct ccb_immediate_notify *inot; - cam_status status; int send_ctl_io; inot = &done_ccb->cin1; - printf("%s: got XPT_IMMEDIATE_NOTIFY status %#x tag %#x " - "seq %#x\n", __func__, inot->ccb_h.status, - inot->tag_id, inot->seq_id); - io = done_ccb->ccb_h.io_ptr; ctl_zero_io(io); @@ -1503,40 +1484,22 @@ ctlfedone(struct cam_periph *periph, uni break; default: xpt_print(periph->path, - "%s: unsupported message 0x%x\n", - __func__, inot->arg); + "%s: unsupported INOT message 0x%x\n", + __func__, inot->arg); send_ctl_io = 0; break; } break; + default: + xpt_print(periph->path, + "%s: unsupported INOT status 0x%x\n", + __func__, status); + /* FALLTHROUGH */ case CAM_REQ_ABORTED: - /* - * This request was sent back by the driver. - * XXX KDM what do we do here? - */ - send_ctl_io = 0; - break; case CAM_REQ_INVALID: + case CAM_DEV_NOT_THERE: case CAM_PROVIDE_FAIL: - default: - /* - * We should only get here if we're talking - * to a talking to a SIM that is target - * capable but supports the old API. In - * that case, we need to just free the CCB. - * If we actually send a notify acknowledge, - * it will send that back with an error as - * well. - */ - - if ((status != CAM_REQ_INVALID) - && (status != CAM_PROVIDE_FAIL)) - xpt_print(periph->path, - "%s: unsupported CAM status 0x%x\n", - __func__, status); - ctlfe_free_ccb(periph, done_ccb); - goto out; } if (send_ctl_io != 0) { @@ -1549,6 +1512,11 @@ ctlfedone(struct cam_periph *periph, uni break; } case XPT_NOTIFY_ACKNOWLEDGE: + if (periph->flags & CAM_PERIPH_INVALID) { + ctlfe_free_ccb(periph, done_ccb); + goto out; + } + /* * Queue this back down to the SIM as an immediate notify. */ @@ -2030,14 +1998,6 @@ ctlfe_done(union ctl_io *io) if (io->io_hdr.io_type == CTL_IO_TASK) { /* - * Task management commands don't require any further - * communication back to the adapter. Requeue the CCB - * to the adapter, and free the CTL I/O. - */ - xpt_print(ccb->ccb_h.path, "%s: returning task I/O " - "tag %#x seq %#x\n", __func__, - ccb->cin1.tag_id, ccb->cin1.seq_id); - /* * Send the notify acknowledge down to the SIM, to let it * know we processed the task management command. */ From owner-svn-src-all@freebsd.org Mon Mar 6 06:19:05 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A1F1ACFA0B1; Mon, 6 Mar 2017 06:19:05 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B9B2318A2; Mon, 6 Mar 2017 06:19:03 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266J2u9090521; Mon, 6 Mar 2017 06:19:02 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266J2C4090519; Mon, 6 Mar 2017 06:19:02 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060619.v266J2C4090519@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:19:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314727 - stable/10/sys/cam/ctl X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:19:05 -0000 Author: mav Date: Mon Mar 6 06:19:02 2017 New Revision: 314727 URL: https://svnweb.freebsd.org/changeset/base/314727 Log: MFC r314027: Do not blindly free completed ATIOs/INOTs on invalidation. When LUN is disabled, SIM starts returning queued ATIOs/INOTs. But at the same time there can be some ATIOs/INOTs still carrying real new requests. If we free those, SIM may leak some resources, forever expecting for any response from us. So try to be careful, separating ATIOs/INOTs carrying requests which still must be processed, from ATIOs/INOTs completed with errors which can be freed. Modified: stable/10/sys/cam/ctl/scsi_ctl.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:18:30 2017 (r314726) +++ stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:19:02 2017 (r314727) @@ -1102,6 +1102,7 @@ ctlfedone(struct cam_periph *periph, uni struct ccb_accept_tio *atio = NULL; union ctl_io *io = NULL; struct mtx *mtx; + cam_status status; KASSERT((done_ccb->ccb_h.flags & CAM_UNLOCKED) != 0, ("CCB in ctlfedone() without CAM_UNLOCKED flag")); @@ -1128,30 +1129,15 @@ ctlfedone(struct cam_periph *periph, uni mtx = cam_periph_mtx(periph); mtx_lock(mtx); - /* - * If the peripheral is invalid, ATIOs and immediate notify CCBs - * need to be freed. Most of the ATIOs and INOTs that come back - * will be CCBs that are being returned from the SIM as a result of - * our disabling the LUN. - * - * Other CCB types are handled in their respective cases below. - */ - if (periph->flags & CAM_PERIPH_INVALID) { - switch (done_ccb->ccb_h.func_code) { - case XPT_ACCEPT_TARGET_IO: - case XPT_IMMEDIATE_NOTIFY: - case XPT_NOTIFY_ACKNOWLEDGE: - ctlfe_free_ccb(periph, done_ccb); - goto out; - default: - break; - } - - } switch (done_ccb->ccb_h.func_code) { case XPT_ACCEPT_TARGET_IO: { atio = &done_ccb->atio; + status = atio->ccb_h.status & CAM_STATUS_MASK; + if (status != CAM_CDB_RECVD) { + ctlfe_free_ccb(periph, done_ccb); + goto out; + } resubmit: /* @@ -1430,14 +1416,9 @@ ctlfedone(struct cam_periph *periph, uni case XPT_IMMEDIATE_NOTIFY: { union ctl_io *io; struct ccb_immediate_notify *inot; - cam_status status; int send_ctl_io; inot = &done_ccb->cin1; - printf("%s: got XPT_IMMEDIATE_NOTIFY status %#x tag %#x " - "seq %#x\n", __func__, inot->ccb_h.status, - inot->tag_id, inot->seq_id); - io = done_ccb->ccb_h.io_ptr; ctl_zero_io(io); @@ -1503,40 +1484,22 @@ ctlfedone(struct cam_periph *periph, uni break; default: xpt_print(periph->path, - "%s: unsupported message 0x%x\n", - __func__, inot->arg); + "%s: unsupported INOT message 0x%x\n", + __func__, inot->arg); send_ctl_io = 0; break; } break; + default: + xpt_print(periph->path, + "%s: unsupported INOT status 0x%x\n", + __func__, status); + /* FALLTHROUGH */ case CAM_REQ_ABORTED: - /* - * This request was sent back by the driver. - * XXX KDM what do we do here? - */ - send_ctl_io = 0; - break; case CAM_REQ_INVALID: + case CAM_DEV_NOT_THERE: case CAM_PROVIDE_FAIL: - default: - /* - * We should only get here if we're talking - * to a talking to a SIM that is target - * capable but supports the old API. In - * that case, we need to just free the CCB. - * If we actually send a notify acknowledge, - * it will send that back with an error as - * well. - */ - - if ((status != CAM_REQ_INVALID) - && (status != CAM_PROVIDE_FAIL)) - xpt_print(periph->path, - "%s: unsupported CAM status 0x%x\n", - __func__, status); - ctlfe_free_ccb(periph, done_ccb); - goto out; } if (send_ctl_io != 0) { @@ -1549,6 +1512,11 @@ ctlfedone(struct cam_periph *periph, uni break; } case XPT_NOTIFY_ACKNOWLEDGE: + if (periph->flags & CAM_PERIPH_INVALID) { + ctlfe_free_ccb(periph, done_ccb); + goto out; + } + /* * Queue this back down to the SIM as an immediate notify. */ @@ -2029,14 +1997,6 @@ ctlfe_done(union ctl_io *io) if (io->io_hdr.io_type == CTL_IO_TASK) { /* - * Task management commands don't require any further - * communication back to the adapter. Requeue the CCB - * to the adapter, and free the CTL I/O. - */ - xpt_print(ccb->ccb_h.path, "%s: returning task I/O " - "tag %#x seq %#x\n", __func__, - ccb->cin1.tag_id, ccb->cin1.seq_id); - /* * Send the notify acknowledge down to the SIM, to let it * know we processed the task management command. */ From owner-svn-src-all@freebsd.org Mon Mar 6 06:19:45 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0CBEBCFA1E4; Mon, 6 Mar 2017 06:19:45 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 734CA1AA4; Mon, 6 Mar 2017 06:19:43 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266JgnV090598; Mon, 6 Mar 2017 06:19:42 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266JgqU090596; Mon, 6 Mar 2017 06:19:42 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060619.v266JgqU090596@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:19:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314728 - stable/11/sys/dev/isp X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:19:45 -0000 Author: mav Date: Mon Mar 6 06:19:42 2017 New Revision: 314728 URL: https://svnweb.freebsd.org/changeset/base/314728 Log: MFC r314038: Remove ancient __FreeBSD_version checks. Modified: stable/11/sys/dev/isp/isp_freebsd.c stable/11/sys/dev/isp/isp_freebsd.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:19:02 2017 (r314727) +++ stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:19:42 2017 (r314728) @@ -41,12 +41,6 @@ __FBSDID("$FreeBSD$"); #include #include -#if __FreeBSD_version < 800002 -#define THREAD_CREATE kthread_create -#else -#define THREAD_CREATE kproc_create -#endif - MODULE_VERSION(isp, 1); MODULE_DEPEND(isp, cam, 1, 1, 1); int isp_announced = 0; @@ -176,7 +170,8 @@ isp_attach_chan(ispsoftc_t *isp, struct #endif isp_loop_changed(isp, chan); ISP_UNLOCK(isp); - if (THREAD_CREATE(isp_kthread, fc, &fc->kproc, 0, 0, "%s: fc_thrd%d", device_get_nameunit(isp->isp_osinfo.dev), chan)) { + if (kproc_create(isp_kthread, fc, &fc->kproc, 0, 0, + "%s_%d", device_get_nameunit(isp->isp_osinfo.dev), chan)) { xpt_free_path(fc->path); ISP_LOCK(isp); xpt_bus_deregister(cam_sim_path(fc->sim)); Modified: stable/11/sys/dev/isp/isp_freebsd.h ============================================================================== --- stable/11/sys/dev/isp/isp_freebsd.h Mon Mar 6 06:19:02 2017 (r314727) +++ stable/11/sys/dev/isp/isp_freebsd.h Mon Mar 6 06:19:42 2017 (r314728) @@ -88,14 +88,6 @@ isp_ecmd_t * isp_get_ecmd(struct ispsoft void isp_put_ecmd(struct ispsoftc *, isp_ecmd_t *); #ifdef ISP_TARGET_MODE -/* Not quite right, but there was no bump for this change */ -#if __FreeBSD_version < 225469 -#define SDFIXED(x) (&x) -#else -#define SDFIXED(x) ((struct scsi_sense_data_fixed *)(&x)) -#endif - -#define ISP_TARGET_FUNCTIONS 1 #define ATPDPSIZE 4096 #define ATPDPHASHSIZE 32 #define ATPDPHASH(x) ((((x) >> 24) ^ ((x) >> 16) ^ ((x) >> 8) ^ (x)) & \ From owner-svn-src-all@freebsd.org Mon Mar 6 06:20:16 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3B975CFA2FF; Mon, 6 Mar 2017 06:20:16 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C3F041C84; Mon, 6 Mar 2017 06:20:15 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266KEaD090697; Mon, 6 Mar 2017 06:20:14 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266KE4W090695; Mon, 6 Mar 2017 06:20:14 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060620.v266KE4W090695@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:20:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314729 - stable/10/sys/dev/isp X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:20:16 -0000 Author: mav Date: Mon Mar 6 06:20:14 2017 New Revision: 314729 URL: https://svnweb.freebsd.org/changeset/base/314729 Log: MFC r314038: Remove ancient __FreeBSD_version checks. Modified: stable/10/sys/dev/isp/isp_freebsd.c stable/10/sys/dev/isp/isp_freebsd.h Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:19:42 2017 (r314728) +++ stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:20:14 2017 (r314729) @@ -41,12 +41,6 @@ __FBSDID("$FreeBSD$"); #include #include -#if __FreeBSD_version < 800002 -#define THREAD_CREATE kthread_create -#else -#define THREAD_CREATE kproc_create -#endif - MODULE_VERSION(isp, 1); MODULE_DEPEND(isp, cam, 1, 1, 1); int isp_announced = 0; @@ -176,7 +170,8 @@ isp_attach_chan(ispsoftc_t *isp, struct #endif isp_loop_changed(isp, chan); ISP_UNLOCK(isp); - if (THREAD_CREATE(isp_kthread, fc, &fc->kproc, 0, 0, "%s: fc_thrd%d", device_get_nameunit(isp->isp_osinfo.dev), chan)) { + if (kproc_create(isp_kthread, fc, &fc->kproc, 0, 0, + "%s_%d", device_get_nameunit(isp->isp_osinfo.dev), chan)) { xpt_free_path(fc->path); ISP_LOCK(isp); xpt_bus_deregister(cam_sim_path(fc->sim)); Modified: stable/10/sys/dev/isp/isp_freebsd.h ============================================================================== --- stable/10/sys/dev/isp/isp_freebsd.h Mon Mar 6 06:19:42 2017 (r314728) +++ stable/10/sys/dev/isp/isp_freebsd.h Mon Mar 6 06:20:14 2017 (r314729) @@ -88,14 +88,6 @@ isp_ecmd_t * isp_get_ecmd(struct ispsoft void isp_put_ecmd(struct ispsoftc *, isp_ecmd_t *); #ifdef ISP_TARGET_MODE -/* Not quite right, but there was no bump for this change */ -#if __FreeBSD_version < 225469 -#define SDFIXED(x) (&x) -#else -#define SDFIXED(x) ((struct scsi_sense_data_fixed *)(&x)) -#endif - -#define ISP_TARGET_FUNCTIONS 1 #define ATPDPSIZE 4096 #define ATPDPHASHSIZE 32 #define ATPDPHASH(x) ((((x) >> 24) ^ ((x) >> 16) ^ ((x) >> 8) ^ (x)) & \ From owner-svn-src-all@freebsd.org Mon Mar 6 06:20:59 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EDFD7CFA440; Mon, 6 Mar 2017 06:20:59 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4F8DB1E0E; Mon, 6 Mar 2017 06:20:59 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266Kw6H090774; Mon, 6 Mar 2017 06:20:58 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266KwUB090773; Mon, 6 Mar 2017 06:20:58 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060620.v266KwUB090773@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:20:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314730 - stable/11/sys/dev/isp X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:21:00 -0000 Author: mav Date: Mon Mar 6 06:20:58 2017 New Revision: 314730 URL: https://svnweb.freebsd.org/changeset/base/314730 Log: MFC r314045: Remove duplicate INOT allocation. For some reason isp_handle_platform_notify_fc() allocated INOT just before calling isp_handle_platform_target_tmf(), which also allocates INOT. It seems to be a braino introduced in r196008. Modified: stable/11/sys/dev/isp/isp_freebsd.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:20:14 2017 (r314729) +++ stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:20:58 2017 (r314730) @@ -2564,13 +2564,11 @@ isp_handle_platform_notify_fc(ispsoftc_t break; case IN_ABORT_TASK: { - tstate_t *tptr; uint16_t nphdl, lun; uint32_t sid; uint64_t wwn; - atio_private_data_t *atp; fcportdb_t *lp; - struct ccb_immediate_notify *inot = NULL; + isp_notify_t tmp, *nt = &tmp; if (ISP_CAP_SCCFW(isp)) { lun = inp->in_scclun; @@ -2592,47 +2590,25 @@ isp_handle_platform_notify_fc(ispsoftc_t wwn = INI_ANY; sid = PORT_ANY; } - tptr = get_lun_statep(isp, 0, lun); - if (tptr == NULL) { - tptr = get_lun_statep(isp, 0, CAM_LUN_WILDCARD); - if (tptr == NULL) { - isp_prt(isp, ISP_LOGWARN, "ABORT TASK for lun %x, but no tstate", lun); - return; - } - } - atp = isp_find_atpd(isp, tptr, inp->in_seqid); - - if (atp) { - inot = (struct ccb_immediate_notify *) SLIST_FIRST(&tptr->inots); - isp_prt(isp, ISP_LOGTDEBUG0, "ABORT TASK RX_ID %x WWN 0x%016llx state %d", inp->in_seqid, (unsigned long long) wwn, atp->state); - if (inot) { - tptr->inot_count--; - SLIST_REMOVE_HEAD(&tptr->inots, sim_links.sle); - ISP_PATH_PRT(isp, ISP_LOGTDEBUG2, inot->ccb_h.path, "%s: Take FREE INOT count now %d\n", __func__, tptr->inot_count); - } else { - ISP_PATH_PRT(isp, ISP_LOGWARN, tptr->owner, "out of INOT structures\n"); - } - } else { - ISP_PATH_PRT(isp, ISP_LOGWARN, tptr->owner, "abort task RX_ID %x from wwn 0x%016llx, state unknown\n", inp->in_seqid, wwn); - } - if (inot) { - isp_notify_t tmp, *nt = &tmp; - ISP_MEMZERO(nt, sizeof (isp_notify_t)); - nt->nt_hba = isp; - nt->nt_tgt = FCPARAM(isp, 0)->isp_wwpn; - nt->nt_wwn = wwn; - nt->nt_nphdl = nphdl; - nt->nt_sid = sid; - nt->nt_did = PORT_ANY; - nt->nt_lun = lun; - nt->nt_need_ack = 1; - nt->nt_channel = 0; - nt->nt_ncode = NT_ABORT_TASK; - nt->nt_lreserved = inot; - isp_handle_platform_target_tmf(isp, nt); - needack = 0; - } - rls_lun_statep(isp, tptr); + isp_prt(isp, ISP_LOGTDEBUG0, "ABORT TASK RX_ID %x WWN 0x%016llx", + inp->in_seqid, (unsigned long long) wwn); + + ISP_MEMZERO(nt, sizeof (isp_notify_t)); + nt->nt_hba = isp; + nt->nt_tgt = FCPARAM(isp, 0)->isp_wwpn; + nt->nt_wwn = wwn; + nt->nt_nphdl = nphdl; + nt->nt_sid = sid; + nt->nt_did = PORT_ANY; + nt->nt_lun = lun; + nt->nt_tagval = inp->in_seqid; + nt->nt_tagval |= (((uint64_t)(isp->isp_serno++)) << 32); + nt->nt_need_ack = 1; + nt->nt_channel = 0; + nt->nt_ncode = NT_ABORT_TASK; + nt->nt_lreserved = inp; + isp_handle_platform_target_tmf(isp, nt); + needack = 0; break; } default: From owner-svn-src-all@freebsd.org Mon Mar 6 06:21:28 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AEDA3CFA5F5; Mon, 6 Mar 2017 06:21:27 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6E99010BF; Mon, 6 Mar 2017 06:21:27 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266LQVq093665; Mon, 6 Mar 2017 06:21:26 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266LQh3093664; Mon, 6 Mar 2017 06:21:26 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060621.v266LQh3093664@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:21:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314731 - stable/10/sys/dev/isp X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:21:28 -0000 Author: mav Date: Mon Mar 6 06:21:26 2017 New Revision: 314731 URL: https://svnweb.freebsd.org/changeset/base/314731 Log: MFC r314045: Remove duplicate INOT allocation. For some reason isp_handle_platform_notify_fc() allocated INOT just before calling isp_handle_platform_target_tmf(), which also allocates INOT. It seems to be a braino introduced in r196008. Modified: stable/10/sys/dev/isp/isp_freebsd.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:20:58 2017 (r314730) +++ stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:21:26 2017 (r314731) @@ -2564,13 +2564,11 @@ isp_handle_platform_notify_fc(ispsoftc_t break; case IN_ABORT_TASK: { - tstate_t *tptr; uint16_t nphdl, lun; uint32_t sid; uint64_t wwn; - atio_private_data_t *atp; fcportdb_t *lp; - struct ccb_immediate_notify *inot = NULL; + isp_notify_t tmp, *nt = &tmp; if (ISP_CAP_SCCFW(isp)) { lun = inp->in_scclun; @@ -2592,47 +2590,25 @@ isp_handle_platform_notify_fc(ispsoftc_t wwn = INI_ANY; sid = PORT_ANY; } - tptr = get_lun_statep(isp, 0, lun); - if (tptr == NULL) { - tptr = get_lun_statep(isp, 0, CAM_LUN_WILDCARD); - if (tptr == NULL) { - isp_prt(isp, ISP_LOGWARN, "ABORT TASK for lun %x, but no tstate", lun); - return; - } - } - atp = isp_find_atpd(isp, tptr, inp->in_seqid); - - if (atp) { - inot = (struct ccb_immediate_notify *) SLIST_FIRST(&tptr->inots); - isp_prt(isp, ISP_LOGTDEBUG0, "ABORT TASK RX_ID %x WWN 0x%016llx state %d", inp->in_seqid, (unsigned long long) wwn, atp->state); - if (inot) { - tptr->inot_count--; - SLIST_REMOVE_HEAD(&tptr->inots, sim_links.sle); - ISP_PATH_PRT(isp, ISP_LOGTDEBUG2, inot->ccb_h.path, "%s: Take FREE INOT count now %d\n", __func__, tptr->inot_count); - } else { - ISP_PATH_PRT(isp, ISP_LOGWARN, tptr->owner, "out of INOT structures\n"); - } - } else { - ISP_PATH_PRT(isp, ISP_LOGWARN, tptr->owner, "abort task RX_ID %x from wwn 0x%016llx, state unknown\n", inp->in_seqid, wwn); - } - if (inot) { - isp_notify_t tmp, *nt = &tmp; - ISP_MEMZERO(nt, sizeof (isp_notify_t)); - nt->nt_hba = isp; - nt->nt_tgt = FCPARAM(isp, 0)->isp_wwpn; - nt->nt_wwn = wwn; - nt->nt_nphdl = nphdl; - nt->nt_sid = sid; - nt->nt_did = PORT_ANY; - nt->nt_lun = lun; - nt->nt_need_ack = 1; - nt->nt_channel = 0; - nt->nt_ncode = NT_ABORT_TASK; - nt->nt_lreserved = inot; - isp_handle_platform_target_tmf(isp, nt); - needack = 0; - } - rls_lun_statep(isp, tptr); + isp_prt(isp, ISP_LOGTDEBUG0, "ABORT TASK RX_ID %x WWN 0x%016llx", + inp->in_seqid, (unsigned long long) wwn); + + ISP_MEMZERO(nt, sizeof (isp_notify_t)); + nt->nt_hba = isp; + nt->nt_tgt = FCPARAM(isp, 0)->isp_wwpn; + nt->nt_wwn = wwn; + nt->nt_nphdl = nphdl; + nt->nt_sid = sid; + nt->nt_did = PORT_ANY; + nt->nt_lun = lun; + nt->nt_tagval = inp->in_seqid; + nt->nt_tagval |= (((uint64_t)(isp->isp_serno++)) << 32); + nt->nt_need_ack = 1; + nt->nt_channel = 0; + nt->nt_ncode = NT_ABORT_TASK; + nt->nt_lreserved = inp; + isp_handle_platform_target_tmf(isp, nt); + needack = 0; break; } default: From owner-svn-src-all@freebsd.org Mon Mar 6 06:22:09 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 811C5CFA6A2; Mon, 6 Mar 2017 06:22:09 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E358A12C9; Mon, 6 Mar 2017 06:22:08 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266M7u3093766; Mon, 6 Mar 2017 06:22:07 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266M735093764; Mon, 6 Mar 2017 06:22:07 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060622.v266M735093764@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:22:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314732 - stable/11/sys/dev/isp X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:22:09 -0000 Author: mav Date: Mon Mar 6 06:22:07 2017 New Revision: 314732 URL: https://svnweb.freebsd.org/changeset/base/314732 Log: MFC r314086: Fix multiple problems around LUN disable under load. - Move private data about ATIOs/INOTs from per-LUN to per-channel data. This allows active commands to continue operation after LUN destruction. This also simplifies lookup of the data by tag in some situations. - Unify three restart_queue processing implementations. - Complete all ATIOs from restart_queue on LUN disable. - Delete ATIO private data when command completed or aborted, not depending on the ATIO being requeued, that was ugly hack and could never happen. CAM should always call ether XPT_CONT_TARGET_IO with status or XPT_ABORT. - Implement XPT_ABORT for queued ATIOs/INOTs to allow CAM do graceful shutdown, not depending on LUN disable, as it is done in ahd(4)/targ(4). - Unify isp_endcmd() arguments to make it more usable in generic code. - Remove never really used LUN state reference counter. Modified: stable/11/sys/dev/isp/isp_freebsd.c stable/11/sys/dev/isp/isp_freebsd.h stable/11/sys/dev/isp/isp_target.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:21:26 2017 (r314731) +++ stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:22:07 2017 (r314732) @@ -109,6 +109,9 @@ isp_attach_chan(ispsoftc_t *isp, struct struct ccb_setasync csa; struct cam_sim *sim; struct cam_path *path; +#ifdef ISP_TARGET_MODE + int i; +#endif /* * Construct our SIM entry. @@ -149,6 +152,14 @@ isp_attach_chan(ispsoftc_t *isp, struct spi->path = path; #ifdef ISP_TARGET_MODE TAILQ_INIT(&spi->waitq); + STAILQ_INIT(&spi->ntfree); + for (i = 0; i < ATPDPSIZE; i++) + STAILQ_INSERT_TAIL(&spi->ntfree, &spi->ntpool[i], next); + LIST_INIT(&spi->atfree); + for (i = ATPDPSIZE-1; i >= 0; i--) + LIST_INSERT_HEAD(&spi->atfree, &spi->atpool[i], next); + for (i = 0; i < ATPDPHASHSIZE; i++) + LIST_INIT(&spi->atused[i]); #endif } else { fcparam *fcp = FCPARAM(isp, chan); @@ -167,6 +178,14 @@ isp_attach_chan(ispsoftc_t *isp, struct TASK_INIT(&fc->gtask, 1, isp_gdt_task, fc); #ifdef ISP_TARGET_MODE TAILQ_INIT(&fc->waitq); + STAILQ_INIT(&fc->ntfree); + for (i = 0; i < ATPDPSIZE; i++) + STAILQ_INSERT_TAIL(&fc->ntfree, &fc->ntpool[i], next); + LIST_INIT(&fc->atfree); + for (i = ATPDPSIZE-1; i >= 0; i--) + LIST_INSERT_HEAD(&fc->atfree, &fc->atpool[i], next); + for (i = 0; i < ATPDPHASHSIZE; i++) + LIST_INIT(&fc->atused[i]); #endif isp_loop_changed(isp, chan); ISP_UNLOCK(isp); @@ -831,19 +850,15 @@ isp_free_pcmd(ispsoftc_t *isp, union ccb * Put the target mode functions here, because some are inlines */ #ifdef ISP_TARGET_MODE -static ISP_INLINE int is_lun_enabled(ispsoftc_t *, int, lun_id_t); static ISP_INLINE tstate_t *get_lun_statep(ispsoftc_t *, int, lun_id_t); -static ISP_INLINE tstate_t *get_lun_statep_from_tag(ispsoftc_t *, int, uint32_t); -static ISP_INLINE void rls_lun_statep(ispsoftc_t *, tstate_t *); -static ISP_INLINE inot_private_data_t *get_ntp_from_tagdata(ispsoftc_t *, uint32_t, uint32_t, tstate_t **); -static ISP_INLINE atio_private_data_t *isp_get_atpd(ispsoftc_t *, tstate_t *, uint32_t); -static ISP_INLINE atio_private_data_t *isp_find_atpd(ispsoftc_t *, tstate_t *, uint32_t); -static ISP_INLINE void isp_put_atpd(ispsoftc_t *, tstate_t *, atio_private_data_t *); -static ISP_INLINE inot_private_data_t *isp_get_ntpd(ispsoftc_t *, tstate_t *); -static ISP_INLINE inot_private_data_t *isp_find_ntpd(ispsoftc_t *, tstate_t *, uint32_t, uint32_t); -static ISP_INLINE void isp_put_ntpd(ispsoftc_t *, tstate_t *, inot_private_data_t *); +static atio_private_data_t *isp_get_atpd(ispsoftc_t *, int, uint32_t); +static atio_private_data_t *isp_find_atpd(ispsoftc_t *, int, uint32_t); +static void isp_put_atpd(ispsoftc_t *, int, atio_private_data_t *); +static inot_private_data_t *isp_get_ntpd(ispsoftc_t *, int); +static inot_private_data_t *isp_find_ntpd(ispsoftc_t *, int, uint32_t, uint32_t); +static void isp_put_ntpd(ispsoftc_t *, int, inot_private_data_t *); static cam_status create_lun_state(ispsoftc_t *, int, struct cam_path *, tstate_t **); -static void destroy_lun_state(ispsoftc_t *, tstate_t *); +static void destroy_lun_state(ispsoftc_t *, int, tstate_t *); static void isp_enable_lun(ispsoftc_t *, union ccb *); static void isp_disable_lun(ispsoftc_t *, union ccb *); static timeout_t isp_refire_putback_atio; @@ -859,43 +874,7 @@ static void isp_handle_platform_notify_f static void isp_handle_platform_notify_24xx(ispsoftc_t *, in_fcentry_24xx_t *); static int isp_handle_platform_target_notify_ack(ispsoftc_t *, isp_notify_t *, uint32_t rsp); static void isp_handle_platform_target_tmf(ispsoftc_t *, isp_notify_t *); -static void isp_target_mark_aborted(ispsoftc_t *, union ccb *); -static void isp_target_mark_aborted_early(ispsoftc_t *, tstate_t *, uint32_t); - -static ISP_INLINE int -is_lun_enabled(ispsoftc_t *isp, int bus, lun_id_t lun) -{ - tstate_t *tptr; - struct tslist *lhp; - - ISP_GET_PC_ADDR(isp, bus, lun_hash[LUN_HASH_FUNC(lun)], lhp); - SLIST_FOREACH(tptr, lhp, next) { - if (tptr->ts_lun == lun) { - return (1); - } - } - return (0); -} - -static void -dump_tstates(ispsoftc_t *isp, int bus) -{ - int i, j; - struct tslist *lhp; - tstate_t *tptr = NULL; - - if (bus >= isp->isp_nchan) { - return; - } - for (i = 0; i < LUN_HASH_SIZE; i++) { - ISP_GET_PC_ADDR(isp, bus, lun_hash[i], lhp); - j = 0; - SLIST_FOREACH(tptr, lhp, next) { - xpt_print(tptr->owner, "[%d, %d] atio_cnt=%d inot_cnt=%d\n", i, j, tptr->atio_count, tptr->inot_count); - j++; - } - } -} +static void isp_target_mark_aborted_early(ispsoftc_t *, int chan, tstate_t *, uint32_t); static ISP_INLINE tstate_t * get_lun_statep(ispsoftc_t *isp, int bus, lun_id_t lun) @@ -906,74 +885,50 @@ get_lun_statep(ispsoftc_t *isp, int bus, if (bus < isp->isp_nchan) { ISP_GET_PC_ADDR(isp, bus, lun_hash[LUN_HASH_FUNC(lun)], lhp); SLIST_FOREACH(tptr, lhp, next) { - if (tptr->ts_lun == lun) { - tptr->hold++; + if (tptr->ts_lun == lun) return (tptr); - } } } return (NULL); } -static ISP_INLINE tstate_t * -get_lun_statep_from_tag(ispsoftc_t *isp, int bus, uint32_t tagval) -{ - tstate_t *tptr = NULL; - atio_private_data_t *atp; - struct tslist *lhp; - int i; - - if (bus < isp->isp_nchan && tagval != 0) { - for (i = 0; i < LUN_HASH_SIZE; i++) { - ISP_GET_PC_ADDR(isp, bus, lun_hash[i], lhp); - SLIST_FOREACH(tptr, lhp, next) { - atp = isp_find_atpd(isp, tptr, tagval); - if (atp) { - tptr->hold++; - return (tptr); - } - } - } - } - return (NULL); -} - -static ISP_INLINE inot_private_data_t * -get_ntp_from_tagdata(ispsoftc_t *isp, uint32_t tag_id, uint32_t seq_id, tstate_t **rslt) +static int +isp_atio_restart(ispsoftc_t *isp, int bus, tstate_t *tptr) { inot_private_data_t *ntp; - tstate_t *tptr; - struct tslist *lhp; - int bus, i; + struct ntpdlist rq; - for (bus = 0; bus < isp->isp_nchan; bus++) { - for (i = 0; i < LUN_HASH_SIZE; i++) { - ISP_GET_PC_ADDR(isp, bus, lun_hash[i], lhp); - SLIST_FOREACH(tptr, lhp, next) { - ntp = isp_find_ntpd(isp, tptr, tag_id, seq_id); - if (ntp) { - *rslt = tptr; - tptr->hold++; - return (ntp); - } - } + if (STAILQ_EMPTY(&tptr->restart_queue)) + return (0); + STAILQ_INIT(&rq); + STAILQ_CONCAT(&rq, &tptr->restart_queue); + while ((ntp = STAILQ_FIRST(&rq)) != NULL) { + STAILQ_REMOVE_HEAD(&rq, next); + if (IS_24XX(isp)) { + isp_prt(isp, ISP_LOGTDEBUG0, + "%s: restarting resrc deprived %x", __func__, + ((at7_entry_t *)ntp->data)->at_rxid); + isp_handle_platform_atio7(isp, (at7_entry_t *) ntp->data); + } else { + isp_prt(isp, ISP_LOGTDEBUG0, + "%s: restarting resrc deprived %x", __func__, + ((at2_entry_t *)ntp->data)->at_rxid); + isp_handle_platform_atio2(isp, (at2_entry_t *) ntp->data); } + isp_put_ntpd(isp, bus, ntp); + if (!STAILQ_EMPTY(&tptr->restart_queue)) + break; } - return (NULL); -} - -static ISP_INLINE void -rls_lun_statep(ispsoftc_t *isp, tstate_t *tptr) -{ - KASSERT((tptr->hold), ("tptr not held")); - tptr->hold--; + if (!STAILQ_EMPTY(&rq)) { + STAILQ_CONCAT(&rq, &tptr->restart_queue); + STAILQ_CONCAT(&tptr->restart_queue, &rq); + } + return (!STAILQ_EMPTY(&tptr->restart_queue)); } static void isp_tmcmd_restart(ispsoftc_t *isp) { - inot_private_data_t *ntp; - inot_private_data_t *restart_queue; tstate_t *tptr; union ccb *ccb; struct tslist *lhp; @@ -983,31 +938,8 @@ isp_tmcmd_restart(ispsoftc_t *isp) for (bus = 0; bus < isp->isp_nchan; bus++) { for (i = 0; i < LUN_HASH_SIZE; i++) { ISP_GET_PC_ADDR(isp, bus, lun_hash[i], lhp); - SLIST_FOREACH(tptr, lhp, next) { - if ((restart_queue = tptr->restart_queue) != NULL) - tptr->restart_queue = NULL; - while (restart_queue) { - ntp = restart_queue; - restart_queue = ntp->rd.nt.nt_hba; - if (IS_24XX(isp)) { - isp_prt(isp, ISP_LOGTDEBUG0, "%s: restarting resrc deprived %x", __func__, ((at7_entry_t *)ntp->rd.data)->at_rxid); - isp_handle_platform_atio7(isp, (at7_entry_t *) ntp->rd.data); - } else { - isp_prt(isp, ISP_LOGTDEBUG0, "%s: restarting resrc deprived %x", __func__, ((at2_entry_t *)ntp->rd.data)->at_rxid); - isp_handle_platform_atio2(isp, (at2_entry_t *) ntp->rd.data); - } - isp_put_ntpd(isp, tptr, ntp); - if (tptr->restart_queue && restart_queue != NULL) { - ntp = tptr->restart_queue; - tptr->restart_queue = restart_queue; - while (restart_queue->rd.nt.nt_hba) { - restart_queue = restart_queue->rd.nt.nt_hba; - } - restart_queue->rd.nt.nt_hba = ntp; - break; - } - } - } + SLIST_FOREACH(tptr, lhp, next) + isp_atio_restart(isp, bus, tptr); } /* @@ -1022,95 +954,108 @@ isp_tmcmd_restart(ispsoftc_t *isp) } } -static ISP_INLINE atio_private_data_t * -isp_get_atpd(ispsoftc_t *isp, tstate_t *tptr, uint32_t tag) +static atio_private_data_t * +isp_get_atpd(ispsoftc_t *isp, int chan, uint32_t tag) { + struct atpdlist *atfree; + struct atpdlist *atused; atio_private_data_t *atp; - atp = LIST_FIRST(&tptr->atfree); + ISP_GET_PC_ADDR(isp, chan, atfree, atfree); + atp = LIST_FIRST(atfree); if (atp) { LIST_REMOVE(atp, next); atp->tag = tag; - LIST_INSERT_HEAD(&tptr->atused[ATPDPHASH(tag)], atp, next); + ISP_GET_PC(isp, chan, atused, atused); + LIST_INSERT_HEAD(&atused[ATPDPHASH(tag)], atp, next); } return (atp); } -static ISP_INLINE atio_private_data_t * -isp_find_atpd(ispsoftc_t *isp, tstate_t *tptr, uint32_t tag) +static atio_private_data_t * +isp_find_atpd(ispsoftc_t *isp, int chan, uint32_t tag) { + struct atpdlist *atused; atio_private_data_t *atp; - LIST_FOREACH(atp, &tptr->atused[ATPDPHASH(tag)], next) { + ISP_GET_PC(isp, chan, atused, atused); + LIST_FOREACH(atp, &atused[ATPDPHASH(tag)], next) { if (atp->tag == tag) return (atp); } return (NULL); } -static ISP_INLINE void -isp_put_atpd(ispsoftc_t *isp, tstate_t *tptr, atio_private_data_t *atp) +static void +isp_put_atpd(ispsoftc_t *isp, int chan, atio_private_data_t *atp) { + struct atpdlist *atfree; + if (atp->ests) { isp_put_ecmd(isp, atp->ests); } LIST_REMOVE(atp, next); memset(atp, 0, sizeof (*atp)); - LIST_INSERT_HEAD(&tptr->atfree, atp, next); + ISP_GET_PC_ADDR(isp, chan, atfree, atfree); + LIST_INSERT_HEAD(atfree, atp, next); } static void -isp_dump_atpd(ispsoftc_t *isp, tstate_t *tptr) +isp_dump_atpd(ispsoftc_t *isp, int chan) { - atio_private_data_t *atp; + atio_private_data_t *atp, *atpool; const char *states[8] = { "Free", "ATIO", "CAM", "CTIO", "LAST_CTIO", "PDON", "?6", "7" }; - for (atp = tptr->atpool; atp < &tptr->atpool[ATPDPSIZE]; atp++) { - xpt_print(tptr->owner, "ATP: [0x%x] origdlen %u bytes_xfrd %u lun %x nphdl 0x%04x s_id 0x%06x d_id 0x%06x oxid 0x%04x state %s\n", - atp->tag, atp->orig_datalen, atp->bytes_xfered, atp->lun, atp->nphdl, atp->sid, atp->portid, atp->oxid, states[atp->state & 0x7]); + ISP_GET_PC(isp, chan, atpool, atpool); + for (atp = atpool; atp < &atpool[ATPDPSIZE]; atp++) { + isp_prt(isp, ISP_LOGALL, "Chan %d ATP [0x%x] origdlen %u bytes_xfrd %u lun %jx nphdl 0x%04x s_id 0x%06x d_id 0x%06x oxid 0x%04x state %s\n", + chan, atp->tag, atp->orig_datalen, atp->bytes_xfered, (uintmax_t)atp->lun, atp->nphdl, atp->sid, atp->portid, atp->oxid, states[atp->state & 0x7]); } } - -static ISP_INLINE inot_private_data_t * -isp_get_ntpd(ispsoftc_t *isp, tstate_t *tptr) +static inot_private_data_t * +isp_get_ntpd(ispsoftc_t *isp, int chan) { + struct ntpdlist *ntfree; inot_private_data_t *ntp; - ntp = tptr->ntfree; - if (ntp) { - tptr->ntfree = ntp->next; - } + + ISP_GET_PC_ADDR(isp, chan, ntfree, ntfree); + ntp = STAILQ_FIRST(ntfree); + if (ntp) + STAILQ_REMOVE_HEAD(ntfree, next); return (ntp); } -static ISP_INLINE inot_private_data_t * -isp_find_ntpd(ispsoftc_t *isp, tstate_t *tptr, uint32_t tag_id, uint32_t seq_id) +static inot_private_data_t * +isp_find_ntpd(ispsoftc_t *isp, int chan, uint32_t tag_id, uint32_t seq_id) { - inot_private_data_t *ntp; - for (ntp = tptr->ntpool; ntp < &tptr->ntpool[ATPDPSIZE]; ntp++) { - if (ntp->rd.tag_id == tag_id && ntp->rd.seq_id == seq_id) { + inot_private_data_t *ntp, *ntp2; + + ISP_GET_PC(isp, chan, ntpool, ntp); + ISP_GET_PC_ADDR(isp, chan, ntpool[ATPDPSIZE], ntp2); + for (; ntp < ntp2; ntp++) { + if (ntp->tag_id == tag_id && ntp->seq_id == seq_id) return (ntp); - } } return (NULL); } -static ISP_INLINE void -isp_put_ntpd(ispsoftc_t *isp, tstate_t *tptr, inot_private_data_t *ntp) +static void +isp_put_ntpd(ispsoftc_t *isp, int chan, inot_private_data_t *ntp) { - ntp->rd.tag_id = ntp->rd.seq_id = 0; - ntp->next = tptr->ntfree; - tptr->ntfree = ntp; + struct ntpdlist *ntfree; + + ntp->tag_id = ntp->seq_id = 0; + ISP_GET_PC_ADDR(isp, chan, ntfree, ntfree); + STAILQ_INSERT_HEAD(ntfree, ntp, next); } static cam_status create_lun_state(ispsoftc_t *isp, int bus, struct cam_path *path, tstate_t **rslt) { - cam_status status; lun_id_t lun; struct tslist *lhp; tstate_t *tptr; - int i; lun = xpt_path_lun_id(path); if (lun != CAM_LUN_WILDCARD) { @@ -1118,30 +1063,13 @@ create_lun_state(ispsoftc_t *isp, int bu return (CAM_LUN_INVALID); } } - if (is_lun_enabled(isp, bus, lun)) { - return (CAM_LUN_ALRDY_ENA); - } tptr = malloc(sizeof (tstate_t), M_DEVBUF, M_NOWAIT|M_ZERO); if (tptr == NULL) { return (CAM_RESRC_UNAVAIL); } tptr->ts_lun = lun; - status = xpt_create_path(&tptr->owner, NULL, xpt_path_path_id(path), xpt_path_target_id(path), lun); - if (status != CAM_REQ_CMP) { - free(tptr, M_DEVBUF); - return (status); - } SLIST_INIT(&tptr->atios); SLIST_INIT(&tptr->inots); - LIST_INIT(&tptr->atfree); - for (i = ATPDPSIZE-1; i >= 0; i--) - LIST_INSERT_HEAD(&tptr->atfree, &tptr->atpool[i], next); - for (i = 0; i < ATPDPHASHSIZE; i++) - LIST_INIT(&tptr->atused[i]); - for (i = 0; i < ATPDPSIZE-1; i++) - tptr->ntpool[i].next = &tptr->ntpool[i+1]; - tptr->ntfree = tptr->ntpool; - tptr->hold = 1; ISP_GET_PC_ADDR(isp, bus, lun_hash[LUN_HASH_FUNC(lun)], lhp); SLIST_INSERT_HEAD(lhp, tptr, next); *rslt = tptr; @@ -1149,34 +1077,30 @@ create_lun_state(ispsoftc_t *isp, int bu return (CAM_REQ_CMP); } -static ISP_INLINE void -destroy_lun_state(ispsoftc_t *isp, tstate_t *tptr) +static void +destroy_lun_state(ispsoftc_t *isp, int bus, tstate_t *tptr) { union ccb *ccb; struct tslist *lhp; + inot_private_data_t *ntp; - KASSERT((tptr->hold != 0), ("tptr is not held")); - KASSERT((tptr->hold == 1), ("tptr still held (%d)", tptr->hold)); - do { - ccb = (union ccb *)SLIST_FIRST(&tptr->atios); - if (ccb) { - SLIST_REMOVE_HEAD(&tptr->atios, sim_links.sle); - ccb->ccb_h.status = CAM_REQ_ABORTED; - xpt_done(ccb); - } - } while (ccb); - do { - ccb = (union ccb *)SLIST_FIRST(&tptr->inots); - if (ccb) { - SLIST_REMOVE_HEAD(&tptr->inots, sim_links.sle); - ccb->ccb_h.status = CAM_REQ_ABORTED; - xpt_done(ccb); - } - } while (ccb); - ISP_GET_PC_ADDR(isp, cam_sim_bus(xpt_path_sim(tptr->owner)), lun_hash[LUN_HASH_FUNC(tptr->ts_lun)], lhp); + while ((ccb = (union ccb *)SLIST_FIRST(&tptr->atios)) != NULL) { + SLIST_REMOVE_HEAD(&tptr->atios, sim_links.sle); + ccb->ccb_h.status = CAM_REQ_ABORTED; + xpt_done(ccb); + }; + while ((ccb = (union ccb *)SLIST_FIRST(&tptr->inots)) != NULL) { + SLIST_REMOVE_HEAD(&tptr->inots, sim_links.sle); + ccb->ccb_h.status = CAM_REQ_ABORTED; + xpt_done(ccb); + } + while ((ntp = STAILQ_FIRST(&tptr->restart_queue)) != NULL) { + isp_endcmd(isp, ntp->data, NIL_HANDLE, bus, SCSI_STATUS_BUSY, 0); + STAILQ_REMOVE_HEAD(&tptr->restart_queue, next); + isp_put_ntpd(isp, bus, ntp); + } + ISP_GET_PC_ADDR(isp, bus, lun_hash[LUN_HASH_FUNC(tptr->ts_lun)], lhp); SLIST_REMOVE(lhp, tptr, tstate, next); - ISP_PATH_PRT(isp, ISP_LOGTDEBUG0, tptr->owner, "destroyed tstate\n"); - xpt_free_path(tptr->owner); free(tptr, M_DEVBUF); } @@ -1223,7 +1147,6 @@ isp_enable_lun(ispsoftc_t *isp, union cc return; } - rls_lun_statep(isp, tptr); ccb->ccb_h.status = CAM_REQ_CMP; xpt_done(ccb); } @@ -1254,7 +1177,7 @@ isp_disable_lun(ispsoftc_t *isp, union c return; } - destroy_lun_state(isp, tptr); + destroy_lun_state(isp, bus, tptr); ccb->ccb_h.status = CAM_REQ_CMP; xpt_done(ccb); } @@ -1263,7 +1186,6 @@ static void isp_target_start_ctio(ispsoftc_t *isp, union ccb *ccb, enum Start_Ctio_How how) { int fctape, sendstatus, resid; - tstate_t *tptr; fcparam *fcp; atio_private_data_t *atp; struct ccb_scsiio *cso; @@ -1271,16 +1193,6 @@ isp_target_start_ctio(ispsoftc_t *isp, u uint32_t dmaresult, handle, xfrlen, sense_length, tmp; uint8_t local[QENTRY_LEN]; - tptr = get_lun_statep(isp, XS_CHANNEL(ccb), XS_LUN(ccb)); - if (tptr == NULL) { - tptr = get_lun_statep(isp, XS_CHANNEL(ccb), CAM_LUN_WILDCARD); - if (tptr == NULL) { - isp_prt(isp, ISP_LOGERR, "%s: [0x%x] cannot find tstate pointer", __func__, ccb->csio.tag_id); - ccb->ccb_h.status = CAM_DEV_NOT_THERE; - xpt_done(ccb); - return; - } - } isp_prt(isp, ISP_LOGTDEBUG0, "%s: ENTRY[0x%x] how %u xfrlen %u sendstatus %d sense_len %u", __func__, ccb->csio.tag_id, how, ccb->csio.dxfer_len, (ccb->ccb_h.flags & CAM_SEND_STATUS) != 0, ((ccb->ccb_h.flags & CAM_SEND_SENSE)? ccb->csio.sense_len : 0)); @@ -1313,10 +1225,10 @@ isp_target_start_ctio(ispsoftc_t *isp, u } } - atp = isp_find_atpd(isp, tptr, cso->tag_id); + atp = isp_find_atpd(isp, XS_CHANNEL(ccb), cso->tag_id); if (atp == NULL) { isp_prt(isp, ISP_LOGERR, "%s: [0x%x] cannot find private data adjunct in %s", __func__, cso->tag_id, __func__); - isp_dump_atpd(isp, tptr); + isp_dump_atpd(isp, XS_CHANNEL(ccb)); ccb->ccb_h.status = CAM_REQ_CMP_ERR; xpt_done(ccb); continue; @@ -1763,7 +1675,6 @@ isp_target_start_ctio(ispsoftc_t *isp, u atp->ctcnt++; atp->seqno++; } - rls_lun_statep(isp, tptr); } static void @@ -1860,7 +1771,7 @@ isp_handle_platform_atio2(ispsoftc_t *is */ if ((aep->at_status & ~QLTM_SVALID) != AT_CDB) { isp_prt(isp, ISP_LOGWARN, "bogus atio (0x%x) leaked to platform", aep->at_status); - isp_endcmd(isp, aep, SCSI_STATUS_BUSY, 0); + isp_endcmd(isp, aep, NIL_HANDLE, 0, SCSI_STATUS_BUSY, 0); return; } @@ -1884,9 +1795,9 @@ isp_handle_platform_atio2(ispsoftc_t *is if (tptr == NULL) { isp_prt(isp, ISP_LOGWARN, "%s: [0x%x] no state pointer for lun %jx or wildcard", __func__, aep->at_rxid, (uintmax_t)lun); if (lun == 0) { - isp_endcmd(isp, aep, SCSI_STATUS_BUSY, 0); + isp_endcmd(isp, aep, nphdl, 0, SCSI_STATUS_BUSY, 0); } else { - isp_endcmd(isp, aep, SCSI_STATUS_CHECK_COND | ECMD_SVALID | (0x5 << 12) | (0x25 << 16), 0); + isp_endcmd(isp, aep, nphdl, 0, SCSI_STATUS_CHECK_COND | ECMD_SVALID | (0x5 << 12) | (0x25 << 16), 0); } return; } @@ -1895,38 +1806,15 @@ isp_handle_platform_atio2(ispsoftc_t *is /* * Start any commands pending resources first. */ - if (tptr->restart_queue) { - inot_private_data_t *restart_queue = tptr->restart_queue; - tptr->restart_queue = NULL; - while (restart_queue) { - ntp = restart_queue; - restart_queue = ntp->rd.nt.nt_hba; - isp_prt(isp, ISP_LOGTDEBUG0, "%s: restarting resrc deprived %x", __func__, ((at2_entry_t *)ntp->rd.data)->at_rxid); - isp_handle_platform_atio2(isp, (at2_entry_t *) ntp->rd.data); - isp_put_ntpd(isp, tptr, ntp); - /* - * If a recursion caused the restart queue to start to fill again, - * stop and splice the new list on top of the old list and restore - * it and go to noresrc. - */ - if (tptr->restart_queue) { - ntp = tptr->restart_queue; - tptr->restart_queue = restart_queue; - while (restart_queue->rd.nt.nt_hba) { - restart_queue = restart_queue->rd.nt.nt_hba; - } - restart_queue->rd.nt.nt_hba = ntp; - goto noresrc; - } - } - } + if (isp_atio_restart(isp, 0, tptr)) + goto noresrc; atiop = (struct ccb_accept_tio *) SLIST_FIRST(&tptr->atios); if (atiop == NULL) { goto noresrc; } - atp = isp_get_atpd(isp, tptr, aep->at_rxid); + atp = isp_get_atpd(isp, 0, aep->at_rxid); if (atp == NULL) { goto noresrc; } @@ -2001,19 +1889,15 @@ isp_handle_platform_atio2(ispsoftc_t *is atp->state = ATPD_STATE_CAM; xpt_done((union ccb *)atiop); isp_prt(isp, ISP_LOGTDEBUG0, "ATIO2[0x%x] CDB=0x%x lun %jx datalen %u", aep->at_rxid, atp->cdb0, (uintmax_t)lun, atp->orig_datalen); - rls_lun_statep(isp, tptr); return; noresrc: - ntp = isp_get_ntpd(isp, tptr); + ntp = isp_get_ntpd(isp, 0); if (ntp == NULL) { - rls_lun_statep(isp, tptr); - isp_endcmd(isp, aep, SCSI_STATUS_BUSY, 0); + isp_endcmd(isp, aep, nphdl, 0, SCSI_STATUS_BUSY, 0); return; } - memcpy(ntp->rd.data, aep, QENTRY_LEN); - ntp->rd.nt.nt_hba = tptr->restart_queue; - tptr->restart_queue = ntp; - rls_lun_statep(isp, tptr); + memcpy(ntp->data, aep, QENTRY_LEN); + STAILQ_INSERT_TAIL(&tptr->restart_queue, ntp, next); } static void @@ -2118,40 +2002,13 @@ isp_handle_platform_atio7(ispsoftc_t *is /* * Start any commands pending resources first. */ - if (tptr->restart_queue) { - inot_private_data_t *restart_queue = tptr->restart_queue; - tptr->restart_queue = NULL; - while (restart_queue) { - ntp = restart_queue; - restart_queue = ntp->rd.nt.nt_hba; - isp_prt(isp, ISP_LOGTDEBUG0, "%s: restarting resrc deprived %x", __func__, ((at7_entry_t *)ntp->rd.data)->at_rxid); - isp_handle_platform_atio7(isp, (at7_entry_t *) ntp->rd.data); - isp_put_ntpd(isp, tptr, ntp); - /* - * If a recursion caused the restart queue to start to fill again, - * stop and splice the new list on top of the old list and restore - * it and go to noresrc. - */ - if (tptr->restart_queue) { - isp_prt(isp, ISP_LOGTDEBUG0, "%s: restart queue refilling", __func__); - if (restart_queue) { - ntp = tptr->restart_queue; - tptr->restart_queue = restart_queue; - while (restart_queue->rd.nt.nt_hba) { - restart_queue = restart_queue->rd.nt.nt_hba; - } - restart_queue->rd.nt.nt_hba = ntp; - } - goto noresrc; - } - } - } + if (isp_atio_restart(isp, chan, tptr)) + goto noresrc; /* * If the f/w is out of resources, just send a BUSY status back. */ if (aep->at_rxid == AT7_NORESRC_RXID) { - rls_lun_statep(isp, tptr); isp_endcmd(isp, aep, nphdl, chan, SCSI_BUSY, 0); return; } @@ -2165,7 +2022,7 @@ isp_handle_platform_atio7(ispsoftc_t *is goto noresrc; } - oatp = isp_find_atpd(isp, tptr, aep->at_rxid); + oatp = isp_find_atpd(isp, chan, aep->at_rxid); if (oatp) { isp_prt(isp, ISP_LOGTDEBUG0, "[0x%x] tag wraparound in isp_handle_platforms_atio7 (N-Port Handle 0x%04x S_ID 0x%04x OX_ID 0x%04x) oatp state %d", aep->at_rxid, nphdl, sid, aep->at_hdr.ox_id, oatp->state); @@ -2174,7 +2031,7 @@ isp_handle_platform_atio7(ispsoftc_t *is */ goto noresrc; } - atp = isp_get_atpd(isp, tptr, aep->at_rxid); + atp = isp_get_atpd(isp, chan, aep->at_rxid); if (atp == NULL) { isp_prt(isp, ISP_LOGTDEBUG0, "[0x%x] out of atps", aep->at_rxid); goto noresrc; @@ -2230,22 +2087,17 @@ isp_handle_platform_atio7(ispsoftc_t *is isp_prt(isp, ISP_LOGTDEBUG0, "ATIO7[0x%x] CDB=0x%x lun %jx datalen %u", aep->at_rxid, atp->cdb0, (uintmax_t)lun, atp->orig_datalen); xpt_done((union ccb *)atiop); - rls_lun_statep(isp, tptr); return; noresrc: - if (atp) { - isp_put_atpd(isp, tptr, atp); - } - ntp = isp_get_ntpd(isp, tptr); + if (atp) + isp_put_atpd(isp, chan, atp); + ntp = isp_get_ntpd(isp, chan); if (ntp == NULL) { - rls_lun_statep(isp, tptr); isp_endcmd(isp, aep, nphdl, chan, SCSI_STATUS_BUSY, 0); return; } - memcpy(ntp->rd.data, aep, QENTRY_LEN); - ntp->rd.nt.nt_hba = tptr->restart_queue; - tptr->restart_queue = ntp; - rls_lun_statep(isp, tptr); + memcpy(ntp->data, aep, QENTRY_LEN); + STAILQ_INSERT_TAIL(&tptr->restart_queue, ntp, next); } @@ -2256,7 +2108,7 @@ noresrc: * transaction. */ static void -isp_handle_srr_start(ispsoftc_t *isp, tstate_t *tptr, atio_private_data_t *atp) +isp_handle_srr_start(ispsoftc_t *isp, atio_private_data_t *atp) { in_fcentry_24xx_t *inot; uint32_t srr_off, ccb_off, ccb_len, ccb_end; @@ -2356,7 +2208,6 @@ mdp: static void isp_handle_srr_notify(ispsoftc_t *isp, void *inot_raw) { - tstate_t *tptr; in_fcentry_24xx_t *inot = inot_raw; atio_private_data_t *atp; uint32_t tag = inot->in_rxid; @@ -2367,15 +2218,8 @@ isp_handle_srr_notify(ispsoftc_t *isp, v return; } - tptr = get_lun_statep_from_tag(isp, bus, tag); - if (tptr == NULL) { - isp_prt(isp, ISP_LOGERR, "%s: cannot find tptr for tag %x in SRR Notify", __func__, tag); - isp_async(isp, ISPASYNC_TARGET_NOTIFY_ACK, inot); - return; - } - atp = isp_find_atpd(isp, tptr, tag); + atp = isp_find_atpd(isp, bus, tag); if (atp == NULL) { - rls_lun_statep(isp, tptr); isp_prt(isp, ISP_LOGERR, "%s: cannot find adjunct for %x in SRR Notify", __func__, tag); isp_async(isp, ISPASYNC_TARGET_NOTIFY_ACK, inot); return; @@ -2385,8 +2229,7 @@ isp_handle_srr_notify(ispsoftc_t *isp, v isp_prt(isp, ISP_LOGTINFO /* ISP_LOGTDEBUG0 */, "SRR[0x%x] inot->in_rxid flags 0x%x srr_iu=%x reloff 0x%x", inot->in_rxid, inot->in_flags, inot->in_srr_iu, inot->in_srr_reloff_lo | (inot->in_srr_reloff_hi << 16)); if (atp->srr_ccb) - isp_handle_srr_start(isp, tptr, atp); - rls_lun_statep(isp, tptr); + isp_handle_srr_start(isp, atp); } static void @@ -2394,7 +2237,6 @@ isp_handle_platform_ctio(ispsoftc_t *isp { union ccb *ccb; int sentstatus = 0, ok = 0, notify_cam = 0, resid = 0, failure = 0; - tstate_t *tptr = NULL; atio_private_data_t *atp = NULL; int bus; uint32_t handle, moved_data = 0, data_requested; @@ -2413,19 +2255,10 @@ isp_handle_platform_ctio(ispsoftc_t *isp } bus = XS_CHANNEL(ccb); - tptr = get_lun_statep(isp, bus, XS_LUN(ccb)); - if (tptr == NULL) { - tptr = get_lun_statep(isp, bus, CAM_LUN_WILDCARD); - } - if (tptr == NULL) { - isp_prt(isp, ISP_LOGERR, "%s: cannot find tptr for tag %x after I/O", __func__, ccb->csio.tag_id); - return; - } - if (IS_24XX(isp)) { - atp = isp_find_atpd(isp, tptr, ((ct7_entry_t *)arg)->ct_rxid); + atp = isp_find_atpd(isp, bus, ((ct7_entry_t *)arg)->ct_rxid); } else { - atp = isp_find_atpd(isp, tptr, ((ct2_entry_t *)arg)->ct_rxid); + atp = isp_find_atpd(isp, bus, ((ct2_entry_t *)arg)->ct_rxid); } if (atp == NULL) { /* @@ -2433,10 +2266,9 @@ isp_handle_platform_ctio(ispsoftc_t *isp * ct_rxid value, filling only ct_syshandle. Workaround * that using tag_id from the CCB, pointed by ct_syshandle. */ - atp = isp_find_atpd(isp, tptr, ccb->csio.tag_id); + atp = isp_find_atpd(isp, bus, ccb->csio.tag_id); } if (atp == NULL) { - rls_lun_statep(isp, tptr); isp_prt(isp, ISP_LOGERR, "%s: cannot find adjunct for %x after I/O", __func__, ccb->csio.tag_id); return; } @@ -2451,8 +2283,7 @@ isp_handle_platform_ctio(ispsoftc_t *isp if (ct->ct_nphdl == CT7_SRR) { atp->srr_ccb = ccb; if (atp->srr_notify_rcvd) - isp_handle_srr_start(isp, tptr, atp); - rls_lun_statep(isp, tptr); + isp_handle_srr_start(isp, atp); return; } if (ct->ct_nphdl == CT_HBA_RESET) { @@ -2473,8 +2304,7 @@ isp_handle_platform_ctio(ispsoftc_t *isp if (ct->ct_status == CT_SRR) { atp->srr_ccb = ccb; if (atp->srr_notify_rcvd) - isp_handle_srr_start(isp, tptr, atp); - rls_lun_statep(isp, tptr); + isp_handle_srr_start(isp, atp); isp_target_putback_atio(ccb); return; } @@ -2509,7 +2339,6 @@ isp_handle_platform_ctio(ispsoftc_t *isp ccb->ccb_h.status |= CAM_REQ_CMP_ERR; } atp->state = ATPD_STATE_PDON; - rls_lun_statep(isp, tptr); /* * We never *not* notify CAM when there has been any error (ok == 0), @@ -2525,6 +2354,12 @@ isp_handle_platform_ctio(ispsoftc_t *isp } /* + * If we sent status or error happened, we are done with this ATIO. + */ + if (sentstatus || !ok) + isp_put_atpd(isp, bus, atp); + + /* * We're telling CAM we're done with this CTIO transaction. * * 24XX cards never need an ATIO put back. @@ -2904,11 +2739,11 @@ isp_handle_platform_target_tmf(ispsoftc_ switch (notify->nt_ncode) { case NT_ABORT_TASK: - isp_target_mark_aborted_early(isp, tptr, inot->tag_id); + isp_target_mark_aborted_early(isp, notify->nt_channel, tptr, inot->tag_id); inot->arg = MSG_ABORT_TASK; break; case NT_ABORT_TASK_SET: - isp_target_mark_aborted_early(isp, tptr, TAG_ANY); + isp_target_mark_aborted_early(isp, notify->nt_channel, tptr, TAG_ANY); inot->arg = MSG_ABORT_TASK_SET; break; case NT_CLEAR_ACA: @@ -2934,30 +2769,26 @@ isp_handle_platform_target_tmf(ispsoftc_ goto bad; } - ntp = isp_get_ntpd(isp, tptr); + ntp = isp_get_ntpd(isp, notify->nt_channel); if (ntp == NULL) { isp_prt(isp, ISP_LOGWARN, "%s: out of inotify private structures", __func__); goto bad; } - ISP_MEMCPY(&ntp->rd.nt, notify, sizeof (isp_notify_t)); + ISP_MEMCPY(&ntp->nt, notify, sizeof (isp_notify_t)); if (notify->nt_lreserved) { - ISP_MEMCPY(&ntp->rd.data, notify->nt_lreserved, QENTRY_LEN); - ntp->rd.nt.nt_lreserved = &ntp->rd.data; + ISP_MEMCPY(&ntp->data, notify->nt_lreserved, QENTRY_LEN); + ntp->nt.nt_lreserved = &ntp->data; } - ntp->rd.seq_id = notify->nt_tagval; - ntp->rd.tag_id = notify->nt_tagval >> 32; + ntp->seq_id = notify->nt_tagval; + ntp->tag_id = notify->nt_tagval >> 32; tptr->inot_count--; SLIST_REMOVE_HEAD(&tptr->inots, sim_links.sle); - rls_lun_statep(isp, tptr); ISP_PATH_PRT(isp, ISP_LOGTDEBUG2, inot->ccb_h.path, "%s: Take FREE INOT count now %d\n", __func__, tptr->inot_count); inot->ccb_h.status = CAM_MESSAGE_RECV; xpt_done((union ccb *)inot); return; bad: - if (tptr) { - rls_lun_statep(isp, tptr); - } if (notify->nt_need_ack && notify->nt_lreserved) { if (((isphdr_t *)notify->nt_lreserved)->rqs_entry_type == RQSTYPE_ABTS_RCVD) { if (isp_acknak_abts(isp, notify->nt_lreserved, ENOMEM)) { @@ -2969,72 +2800,39 @@ bad: } } -/* - * Find the associated private data and mark it as dead so - * we don't try to work on it any further. - */ -static void -isp_target_mark_aborted(ispsoftc_t *isp, union ccb *ccb) -{ - tstate_t *tptr; - atio_private_data_t *atp; - union ccb *accb = ccb->cab.abort_ccb; - - tptr = get_lun_statep(isp, XS_CHANNEL(accb), XS_LUN(accb)); - if (tptr == NULL) { - tptr = get_lun_statep(isp, XS_CHANNEL(accb), CAM_LUN_WILDCARD); - if (tptr == NULL) { - ccb->ccb_h.status = CAM_REQ_INVALID; - return; - } - } - - atp = isp_find_atpd(isp, tptr, accb->atio.tag_id); - if (atp == NULL) { - ccb->ccb_h.status = CAM_REQ_INVALID; - } else { - atp->dead = 1; - ccb->ccb_h.status = CAM_REQ_CMP; - } - rls_lun_statep(isp, tptr); -} - static void -isp_target_mark_aborted_early(ispsoftc_t *isp, tstate_t *tptr, uint32_t tag_id) +isp_target_mark_aborted_early(ispsoftc_t *isp, int chan, tstate_t *tptr, uint32_t tag_id) { - atio_private_data_t *atp; - inot_private_data_t *restart_queue = tptr->restart_queue; + atio_private_data_t *atp, *atpool; + inot_private_data_t *ntp, *tmp; + uint32_t this_tag_id; /* * First, clean any commands pending restart */ - tptr->restart_queue = NULL; - while (restart_queue) { - uint32_t this_tag_id; - inot_private_data_t *ntp = restart_queue; - - restart_queue = ntp->rd.nt.nt_hba; - - if (IS_24XX(isp)) { - this_tag_id = ((at7_entry_t *)ntp->rd.data)->at_rxid; - } else { - this_tag_id = ((at2_entry_t *)ntp->rd.data)->at_rxid; - } + STAILQ_FOREACH_SAFE(ntp, &tptr->restart_queue, next, tmp) { + if (IS_24XX(isp)) + this_tag_id = ((at7_entry_t *)ntp->data)->at_rxid; + else + this_tag_id = ((at2_entry_t *)ntp->data)->at_rxid; if ((uint64_t)tag_id == TAG_ANY || tag_id == this_tag_id) { - isp_put_ntpd(isp, tptr, ntp); - } else { - ntp->rd.nt.nt_hba = tptr->restart_queue; - tptr->restart_queue = ntp; + isp_endcmd(isp, ntp->data, NIL_HANDLE, chan, + ECMD_TERMINATE, 0); + isp_put_ntpd(isp, chan, ntp); + STAILQ_REMOVE(&tptr->restart_queue, ntp, + inot_private_data, next); } } /* * Now mark other ones dead as well. */ - for (atp = tptr->atpool; atp < &tptr->atpool[ATPDPSIZE]; atp++) { - if ((uint64_t)tag_id == TAG_ANY || atp->tag == tag_id) { + ISP_GET_PC(isp, chan, atpool, atpool); + for (atp = atpool; atp < &atpool[ATPDPSIZE]; atp++) { + if (atp->lun != tptr->ts_lun) + continue; + if ((uint64_t)tag_id == TAG_ANY || atp->tag == tag_id) atp->dead = 1; - } } } #endif @@ -3433,6 +3231,77 @@ isp_kthread(void *arg) kthread_exit(); } +#ifdef ISP_TARGET_MODE +static void +isp_abort_atio(ispsoftc_t *isp, union ccb *ccb) +{ + atio_private_data_t *atp; + union ccb *accb = ccb->cab.abort_ccb; + struct ccb_hdr *sccb; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Mon Mar 6 06:22:39 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 42989CFA750; Mon, 6 Mar 2017 06:22:39 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D4BC114B1; Mon, 6 Mar 2017 06:22:38 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266MblK094706; Mon, 6 Mar 2017 06:22:37 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266MbjK094704; Mon, 6 Mar 2017 06:22:37 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060622.v266MbjK094704@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:22:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314733 - stable/10/sys/dev/isp X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:22:39 -0000 Author: mav Date: Mon Mar 6 06:22:37 2017 New Revision: 314733 URL: https://svnweb.freebsd.org/changeset/base/314733 Log: MFC r314086: Fix multiple problems around LUN disable under load. - Move private data about ATIOs/INOTs from per-LUN to per-channel data. This allows active commands to continue operation after LUN destruction. This also simplifies lookup of the data by tag in some situations. - Unify three restart_queue processing implementations. - Complete all ATIOs from restart_queue on LUN disable. - Delete ATIO private data when command completed or aborted, not depending on the ATIO being requeued, that was ugly hack and could never happen. CAM should always call ether XPT_CONT_TARGET_IO with status or XPT_ABORT. - Implement XPT_ABORT for queued ATIOs/INOTs to allow CAM do graceful shutdown, not depending on LUN disable, as it is done in ahd(4)/targ(4). - Unify isp_endcmd() arguments to make it more usable in generic code. - Remove never really used LUN state reference counter. Modified: stable/10/sys/dev/isp/isp_freebsd.c stable/10/sys/dev/isp/isp_freebsd.h stable/10/sys/dev/isp/isp_target.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:22:07 2017 (r314732) +++ stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:22:37 2017 (r314733) @@ -109,6 +109,9 @@ isp_attach_chan(ispsoftc_t *isp, struct struct ccb_setasync csa; struct cam_sim *sim; struct cam_path *path; +#ifdef ISP_TARGET_MODE + int i; +#endif /* * Construct our SIM entry. @@ -149,6 +152,14 @@ isp_attach_chan(ispsoftc_t *isp, struct spi->path = path; #ifdef ISP_TARGET_MODE TAILQ_INIT(&spi->waitq); + STAILQ_INIT(&spi->ntfree); + for (i = 0; i < ATPDPSIZE; i++) + STAILQ_INSERT_TAIL(&spi->ntfree, &spi->ntpool[i], next); + LIST_INIT(&spi->atfree); + for (i = ATPDPSIZE-1; i >= 0; i--) + LIST_INSERT_HEAD(&spi->atfree, &spi->atpool[i], next); + for (i = 0; i < ATPDPHASHSIZE; i++) + LIST_INIT(&spi->atused[i]); #endif } else { fcparam *fcp = FCPARAM(isp, chan); @@ -167,6 +178,14 @@ isp_attach_chan(ispsoftc_t *isp, struct TASK_INIT(&fc->gtask, 1, isp_gdt_task, fc); #ifdef ISP_TARGET_MODE TAILQ_INIT(&fc->waitq); + STAILQ_INIT(&fc->ntfree); + for (i = 0; i < ATPDPSIZE; i++) + STAILQ_INSERT_TAIL(&fc->ntfree, &fc->ntpool[i], next); + LIST_INIT(&fc->atfree); + for (i = ATPDPSIZE-1; i >= 0; i--) + LIST_INSERT_HEAD(&fc->atfree, &fc->atpool[i], next); + for (i = 0; i < ATPDPHASHSIZE; i++) + LIST_INIT(&fc->atused[i]); #endif isp_loop_changed(isp, chan); ISP_UNLOCK(isp); @@ -831,19 +850,15 @@ isp_free_pcmd(ispsoftc_t *isp, union ccb * Put the target mode functions here, because some are inlines */ #ifdef ISP_TARGET_MODE -static ISP_INLINE int is_lun_enabled(ispsoftc_t *, int, lun_id_t); static ISP_INLINE tstate_t *get_lun_statep(ispsoftc_t *, int, lun_id_t); -static ISP_INLINE tstate_t *get_lun_statep_from_tag(ispsoftc_t *, int, uint32_t); -static ISP_INLINE void rls_lun_statep(ispsoftc_t *, tstate_t *); -static ISP_INLINE inot_private_data_t *get_ntp_from_tagdata(ispsoftc_t *, uint32_t, uint32_t, tstate_t **); -static ISP_INLINE atio_private_data_t *isp_get_atpd(ispsoftc_t *, tstate_t *, uint32_t); -static ISP_INLINE atio_private_data_t *isp_find_atpd(ispsoftc_t *, tstate_t *, uint32_t); -static ISP_INLINE void isp_put_atpd(ispsoftc_t *, tstate_t *, atio_private_data_t *); -static ISP_INLINE inot_private_data_t *isp_get_ntpd(ispsoftc_t *, tstate_t *); -static ISP_INLINE inot_private_data_t *isp_find_ntpd(ispsoftc_t *, tstate_t *, uint32_t, uint32_t); -static ISP_INLINE void isp_put_ntpd(ispsoftc_t *, tstate_t *, inot_private_data_t *); +static atio_private_data_t *isp_get_atpd(ispsoftc_t *, int, uint32_t); +static atio_private_data_t *isp_find_atpd(ispsoftc_t *, int, uint32_t); +static void isp_put_atpd(ispsoftc_t *, int, atio_private_data_t *); +static inot_private_data_t *isp_get_ntpd(ispsoftc_t *, int); +static inot_private_data_t *isp_find_ntpd(ispsoftc_t *, int, uint32_t, uint32_t); +static void isp_put_ntpd(ispsoftc_t *, int, inot_private_data_t *); static cam_status create_lun_state(ispsoftc_t *, int, struct cam_path *, tstate_t **); -static void destroy_lun_state(ispsoftc_t *, tstate_t *); +static void destroy_lun_state(ispsoftc_t *, int, tstate_t *); static void isp_enable_lun(ispsoftc_t *, union ccb *); static void isp_disable_lun(ispsoftc_t *, union ccb *); static timeout_t isp_refire_putback_atio; @@ -859,43 +874,7 @@ static void isp_handle_platform_notify_f static void isp_handle_platform_notify_24xx(ispsoftc_t *, in_fcentry_24xx_t *); static int isp_handle_platform_target_notify_ack(ispsoftc_t *, isp_notify_t *, uint32_t rsp); static void isp_handle_platform_target_tmf(ispsoftc_t *, isp_notify_t *); -static void isp_target_mark_aborted(ispsoftc_t *, union ccb *); -static void isp_target_mark_aborted_early(ispsoftc_t *, tstate_t *, uint32_t); - -static ISP_INLINE int -is_lun_enabled(ispsoftc_t *isp, int bus, lun_id_t lun) -{ - tstate_t *tptr; - struct tslist *lhp; - - ISP_GET_PC_ADDR(isp, bus, lun_hash[LUN_HASH_FUNC(lun)], lhp); - SLIST_FOREACH(tptr, lhp, next) { - if (tptr->ts_lun == lun) { - return (1); - } - } - return (0); -} - -static void -dump_tstates(ispsoftc_t *isp, int bus) -{ - int i, j; - struct tslist *lhp; - tstate_t *tptr = NULL; - - if (bus >= isp->isp_nchan) { - return; - } - for (i = 0; i < LUN_HASH_SIZE; i++) { - ISP_GET_PC_ADDR(isp, bus, lun_hash[i], lhp); - j = 0; - SLIST_FOREACH(tptr, lhp, next) { - xpt_print(tptr->owner, "[%d, %d] atio_cnt=%d inot_cnt=%d\n", i, j, tptr->atio_count, tptr->inot_count); - j++; - } - } -} +static void isp_target_mark_aborted_early(ispsoftc_t *, int chan, tstate_t *, uint32_t); static ISP_INLINE tstate_t * get_lun_statep(ispsoftc_t *isp, int bus, lun_id_t lun) @@ -906,74 +885,50 @@ get_lun_statep(ispsoftc_t *isp, int bus, if (bus < isp->isp_nchan) { ISP_GET_PC_ADDR(isp, bus, lun_hash[LUN_HASH_FUNC(lun)], lhp); SLIST_FOREACH(tptr, lhp, next) { - if (tptr->ts_lun == lun) { - tptr->hold++; + if (tptr->ts_lun == lun) return (tptr); - } } } return (NULL); } -static ISP_INLINE tstate_t * -get_lun_statep_from_tag(ispsoftc_t *isp, int bus, uint32_t tagval) -{ - tstate_t *tptr = NULL; - atio_private_data_t *atp; - struct tslist *lhp; - int i; - - if (bus < isp->isp_nchan && tagval != 0) { - for (i = 0; i < LUN_HASH_SIZE; i++) { - ISP_GET_PC_ADDR(isp, bus, lun_hash[i], lhp); - SLIST_FOREACH(tptr, lhp, next) { - atp = isp_find_atpd(isp, tptr, tagval); - if (atp) { - tptr->hold++; - return (tptr); - } - } - } - } - return (NULL); -} - -static ISP_INLINE inot_private_data_t * -get_ntp_from_tagdata(ispsoftc_t *isp, uint32_t tag_id, uint32_t seq_id, tstate_t **rslt) +static int +isp_atio_restart(ispsoftc_t *isp, int bus, tstate_t *tptr) { inot_private_data_t *ntp; - tstate_t *tptr; - struct tslist *lhp; - int bus, i; + struct ntpdlist rq; - for (bus = 0; bus < isp->isp_nchan; bus++) { - for (i = 0; i < LUN_HASH_SIZE; i++) { - ISP_GET_PC_ADDR(isp, bus, lun_hash[i], lhp); - SLIST_FOREACH(tptr, lhp, next) { - ntp = isp_find_ntpd(isp, tptr, tag_id, seq_id); - if (ntp) { - *rslt = tptr; - tptr->hold++; - return (ntp); - } - } + if (STAILQ_EMPTY(&tptr->restart_queue)) + return (0); + STAILQ_INIT(&rq); + STAILQ_CONCAT(&rq, &tptr->restart_queue); + while ((ntp = STAILQ_FIRST(&rq)) != NULL) { + STAILQ_REMOVE_HEAD(&rq, next); + if (IS_24XX(isp)) { + isp_prt(isp, ISP_LOGTDEBUG0, + "%s: restarting resrc deprived %x", __func__, + ((at7_entry_t *)ntp->data)->at_rxid); + isp_handle_platform_atio7(isp, (at7_entry_t *) ntp->data); + } else { + isp_prt(isp, ISP_LOGTDEBUG0, + "%s: restarting resrc deprived %x", __func__, + ((at2_entry_t *)ntp->data)->at_rxid); + isp_handle_platform_atio2(isp, (at2_entry_t *) ntp->data); } + isp_put_ntpd(isp, bus, ntp); + if (!STAILQ_EMPTY(&tptr->restart_queue)) + break; } - return (NULL); -} - -static ISP_INLINE void -rls_lun_statep(ispsoftc_t *isp, tstate_t *tptr) -{ - KASSERT((tptr->hold), ("tptr not held")); - tptr->hold--; + if (!STAILQ_EMPTY(&rq)) { + STAILQ_CONCAT(&rq, &tptr->restart_queue); + STAILQ_CONCAT(&tptr->restart_queue, &rq); + } + return (!STAILQ_EMPTY(&tptr->restart_queue)); } static void isp_tmcmd_restart(ispsoftc_t *isp) { - inot_private_data_t *ntp; - inot_private_data_t *restart_queue; tstate_t *tptr; union ccb *ccb; struct tslist *lhp; @@ -983,31 +938,8 @@ isp_tmcmd_restart(ispsoftc_t *isp) for (bus = 0; bus < isp->isp_nchan; bus++) { for (i = 0; i < LUN_HASH_SIZE; i++) { ISP_GET_PC_ADDR(isp, bus, lun_hash[i], lhp); - SLIST_FOREACH(tptr, lhp, next) { - if ((restart_queue = tptr->restart_queue) != NULL) - tptr->restart_queue = NULL; - while (restart_queue) { - ntp = restart_queue; - restart_queue = ntp->rd.nt.nt_hba; - if (IS_24XX(isp)) { - isp_prt(isp, ISP_LOGTDEBUG0, "%s: restarting resrc deprived %x", __func__, ((at7_entry_t *)ntp->rd.data)->at_rxid); - isp_handle_platform_atio7(isp, (at7_entry_t *) ntp->rd.data); - } else { - isp_prt(isp, ISP_LOGTDEBUG0, "%s: restarting resrc deprived %x", __func__, ((at2_entry_t *)ntp->rd.data)->at_rxid); - isp_handle_platform_atio2(isp, (at2_entry_t *) ntp->rd.data); - } - isp_put_ntpd(isp, tptr, ntp); - if (tptr->restart_queue && restart_queue != NULL) { - ntp = tptr->restart_queue; - tptr->restart_queue = restart_queue; - while (restart_queue->rd.nt.nt_hba) { - restart_queue = restart_queue->rd.nt.nt_hba; - } - restart_queue->rd.nt.nt_hba = ntp; - break; - } - } - } + SLIST_FOREACH(tptr, lhp, next) + isp_atio_restart(isp, bus, tptr); } /* @@ -1022,95 +954,108 @@ isp_tmcmd_restart(ispsoftc_t *isp) } } -static ISP_INLINE atio_private_data_t * -isp_get_atpd(ispsoftc_t *isp, tstate_t *tptr, uint32_t tag) +static atio_private_data_t * +isp_get_atpd(ispsoftc_t *isp, int chan, uint32_t tag) { + struct atpdlist *atfree; + struct atpdlist *atused; atio_private_data_t *atp; - atp = LIST_FIRST(&tptr->atfree); + ISP_GET_PC_ADDR(isp, chan, atfree, atfree); + atp = LIST_FIRST(atfree); if (atp) { LIST_REMOVE(atp, next); atp->tag = tag; - LIST_INSERT_HEAD(&tptr->atused[ATPDPHASH(tag)], atp, next); + ISP_GET_PC(isp, chan, atused, atused); + LIST_INSERT_HEAD(&atused[ATPDPHASH(tag)], atp, next); } return (atp); } -static ISP_INLINE atio_private_data_t * -isp_find_atpd(ispsoftc_t *isp, tstate_t *tptr, uint32_t tag) +static atio_private_data_t * +isp_find_atpd(ispsoftc_t *isp, int chan, uint32_t tag) { + struct atpdlist *atused; atio_private_data_t *atp; - LIST_FOREACH(atp, &tptr->atused[ATPDPHASH(tag)], next) { + ISP_GET_PC(isp, chan, atused, atused); + LIST_FOREACH(atp, &atused[ATPDPHASH(tag)], next) { if (atp->tag == tag) return (atp); } return (NULL); } -static ISP_INLINE void -isp_put_atpd(ispsoftc_t *isp, tstate_t *tptr, atio_private_data_t *atp) +static void +isp_put_atpd(ispsoftc_t *isp, int chan, atio_private_data_t *atp) { + struct atpdlist *atfree; + if (atp->ests) { isp_put_ecmd(isp, atp->ests); } LIST_REMOVE(atp, next); memset(atp, 0, sizeof (*atp)); - LIST_INSERT_HEAD(&tptr->atfree, atp, next); + ISP_GET_PC_ADDR(isp, chan, atfree, atfree); + LIST_INSERT_HEAD(atfree, atp, next); } static void -isp_dump_atpd(ispsoftc_t *isp, tstate_t *tptr) +isp_dump_atpd(ispsoftc_t *isp, int chan) { - atio_private_data_t *atp; + atio_private_data_t *atp, *atpool; const char *states[8] = { "Free", "ATIO", "CAM", "CTIO", "LAST_CTIO", "PDON", "?6", "7" }; - for (atp = tptr->atpool; atp < &tptr->atpool[ATPDPSIZE]; atp++) { - xpt_print(tptr->owner, "ATP: [0x%x] origdlen %u bytes_xfrd %u lun %x nphdl 0x%04x s_id 0x%06x d_id 0x%06x oxid 0x%04x state %s\n", - atp->tag, atp->orig_datalen, atp->bytes_xfered, atp->lun, atp->nphdl, atp->sid, atp->portid, atp->oxid, states[atp->state & 0x7]); + ISP_GET_PC(isp, chan, atpool, atpool); + for (atp = atpool; atp < &atpool[ATPDPSIZE]; atp++) { + isp_prt(isp, ISP_LOGALL, "Chan %d ATP [0x%x] origdlen %u bytes_xfrd %u lun %jx nphdl 0x%04x s_id 0x%06x d_id 0x%06x oxid 0x%04x state %s\n", + chan, atp->tag, atp->orig_datalen, atp->bytes_xfered, (uintmax_t)atp->lun, atp->nphdl, atp->sid, atp->portid, atp->oxid, states[atp->state & 0x7]); } } - -static ISP_INLINE inot_private_data_t * -isp_get_ntpd(ispsoftc_t *isp, tstate_t *tptr) +static inot_private_data_t * +isp_get_ntpd(ispsoftc_t *isp, int chan) { + struct ntpdlist *ntfree; inot_private_data_t *ntp; - ntp = tptr->ntfree; - if (ntp) { - tptr->ntfree = ntp->next; - } + + ISP_GET_PC_ADDR(isp, chan, ntfree, ntfree); + ntp = STAILQ_FIRST(ntfree); + if (ntp) + STAILQ_REMOVE_HEAD(ntfree, next); return (ntp); } -static ISP_INLINE inot_private_data_t * -isp_find_ntpd(ispsoftc_t *isp, tstate_t *tptr, uint32_t tag_id, uint32_t seq_id) +static inot_private_data_t * +isp_find_ntpd(ispsoftc_t *isp, int chan, uint32_t tag_id, uint32_t seq_id) { - inot_private_data_t *ntp; - for (ntp = tptr->ntpool; ntp < &tptr->ntpool[ATPDPSIZE]; ntp++) { - if (ntp->rd.tag_id == tag_id && ntp->rd.seq_id == seq_id) { + inot_private_data_t *ntp, *ntp2; + + ISP_GET_PC(isp, chan, ntpool, ntp); + ISP_GET_PC_ADDR(isp, chan, ntpool[ATPDPSIZE], ntp2); + for (; ntp < ntp2; ntp++) { + if (ntp->tag_id == tag_id && ntp->seq_id == seq_id) return (ntp); - } } return (NULL); } -static ISP_INLINE void -isp_put_ntpd(ispsoftc_t *isp, tstate_t *tptr, inot_private_data_t *ntp) +static void +isp_put_ntpd(ispsoftc_t *isp, int chan, inot_private_data_t *ntp) { - ntp->rd.tag_id = ntp->rd.seq_id = 0; - ntp->next = tptr->ntfree; - tptr->ntfree = ntp; + struct ntpdlist *ntfree; + + ntp->tag_id = ntp->seq_id = 0; + ISP_GET_PC_ADDR(isp, chan, ntfree, ntfree); + STAILQ_INSERT_HEAD(ntfree, ntp, next); } static cam_status create_lun_state(ispsoftc_t *isp, int bus, struct cam_path *path, tstate_t **rslt) { - cam_status status; lun_id_t lun; struct tslist *lhp; tstate_t *tptr; - int i; lun = xpt_path_lun_id(path); if (lun != CAM_LUN_WILDCARD) { @@ -1118,30 +1063,13 @@ create_lun_state(ispsoftc_t *isp, int bu return (CAM_LUN_INVALID); } } - if (is_lun_enabled(isp, bus, lun)) { - return (CAM_LUN_ALRDY_ENA); - } tptr = malloc(sizeof (tstate_t), M_DEVBUF, M_NOWAIT|M_ZERO); if (tptr == NULL) { return (CAM_RESRC_UNAVAIL); } tptr->ts_lun = lun; - status = xpt_create_path(&tptr->owner, NULL, xpt_path_path_id(path), xpt_path_target_id(path), lun); - if (status != CAM_REQ_CMP) { - free(tptr, M_DEVBUF); - return (status); - } SLIST_INIT(&tptr->atios); SLIST_INIT(&tptr->inots); - LIST_INIT(&tptr->atfree); - for (i = ATPDPSIZE-1; i >= 0; i--) - LIST_INSERT_HEAD(&tptr->atfree, &tptr->atpool[i], next); - for (i = 0; i < ATPDPHASHSIZE; i++) - LIST_INIT(&tptr->atused[i]); - for (i = 0; i < ATPDPSIZE-1; i++) - tptr->ntpool[i].next = &tptr->ntpool[i+1]; - tptr->ntfree = tptr->ntpool; - tptr->hold = 1; ISP_GET_PC_ADDR(isp, bus, lun_hash[LUN_HASH_FUNC(lun)], lhp); SLIST_INSERT_HEAD(lhp, tptr, next); *rslt = tptr; @@ -1149,34 +1077,30 @@ create_lun_state(ispsoftc_t *isp, int bu return (CAM_REQ_CMP); } -static ISP_INLINE void -destroy_lun_state(ispsoftc_t *isp, tstate_t *tptr) +static void +destroy_lun_state(ispsoftc_t *isp, int bus, tstate_t *tptr) { union ccb *ccb; struct tslist *lhp; + inot_private_data_t *ntp; - KASSERT((tptr->hold != 0), ("tptr is not held")); - KASSERT((tptr->hold == 1), ("tptr still held (%d)", tptr->hold)); - do { - ccb = (union ccb *)SLIST_FIRST(&tptr->atios); - if (ccb) { - SLIST_REMOVE_HEAD(&tptr->atios, sim_links.sle); - ccb->ccb_h.status = CAM_REQ_ABORTED; - xpt_done(ccb); - } - } while (ccb); - do { - ccb = (union ccb *)SLIST_FIRST(&tptr->inots); - if (ccb) { - SLIST_REMOVE_HEAD(&tptr->inots, sim_links.sle); - ccb->ccb_h.status = CAM_REQ_ABORTED; - xpt_done(ccb); - } - } while (ccb); - ISP_GET_PC_ADDR(isp, cam_sim_bus(xpt_path_sim(tptr->owner)), lun_hash[LUN_HASH_FUNC(tptr->ts_lun)], lhp); + while ((ccb = (union ccb *)SLIST_FIRST(&tptr->atios)) != NULL) { + SLIST_REMOVE_HEAD(&tptr->atios, sim_links.sle); + ccb->ccb_h.status = CAM_REQ_ABORTED; + xpt_done(ccb); + }; + while ((ccb = (union ccb *)SLIST_FIRST(&tptr->inots)) != NULL) { + SLIST_REMOVE_HEAD(&tptr->inots, sim_links.sle); + ccb->ccb_h.status = CAM_REQ_ABORTED; + xpt_done(ccb); + } + while ((ntp = STAILQ_FIRST(&tptr->restart_queue)) != NULL) { + isp_endcmd(isp, ntp->data, NIL_HANDLE, bus, SCSI_STATUS_BUSY, 0); + STAILQ_REMOVE_HEAD(&tptr->restart_queue, next); + isp_put_ntpd(isp, bus, ntp); + } + ISP_GET_PC_ADDR(isp, bus, lun_hash[LUN_HASH_FUNC(tptr->ts_lun)], lhp); SLIST_REMOVE(lhp, tptr, tstate, next); - ISP_PATH_PRT(isp, ISP_LOGTDEBUG0, tptr->owner, "destroyed tstate\n"); - xpt_free_path(tptr->owner); free(tptr, M_DEVBUF); } @@ -1223,7 +1147,6 @@ isp_enable_lun(ispsoftc_t *isp, union cc return; } - rls_lun_statep(isp, tptr); ccb->ccb_h.status = CAM_REQ_CMP; xpt_done(ccb); } @@ -1254,7 +1177,7 @@ isp_disable_lun(ispsoftc_t *isp, union c return; } - destroy_lun_state(isp, tptr); + destroy_lun_state(isp, bus, tptr); ccb->ccb_h.status = CAM_REQ_CMP; xpt_done(ccb); } @@ -1263,7 +1186,6 @@ static void isp_target_start_ctio(ispsoftc_t *isp, union ccb *ccb, enum Start_Ctio_How how) { int fctape, sendstatus, resid; - tstate_t *tptr; fcparam *fcp; atio_private_data_t *atp; struct ccb_scsiio *cso; @@ -1271,16 +1193,6 @@ isp_target_start_ctio(ispsoftc_t *isp, u uint32_t dmaresult, handle, xfrlen, sense_length, tmp; uint8_t local[QENTRY_LEN]; - tptr = get_lun_statep(isp, XS_CHANNEL(ccb), XS_LUN(ccb)); - if (tptr == NULL) { - tptr = get_lun_statep(isp, XS_CHANNEL(ccb), CAM_LUN_WILDCARD); - if (tptr == NULL) { - isp_prt(isp, ISP_LOGERR, "%s: [0x%x] cannot find tstate pointer", __func__, ccb->csio.tag_id); - ccb->ccb_h.status = CAM_DEV_NOT_THERE; - xpt_done(ccb); - return; - } - } isp_prt(isp, ISP_LOGTDEBUG0, "%s: ENTRY[0x%x] how %u xfrlen %u sendstatus %d sense_len %u", __func__, ccb->csio.tag_id, how, ccb->csio.dxfer_len, (ccb->ccb_h.flags & CAM_SEND_STATUS) != 0, ((ccb->ccb_h.flags & CAM_SEND_SENSE)? ccb->csio.sense_len : 0)); @@ -1313,10 +1225,10 @@ isp_target_start_ctio(ispsoftc_t *isp, u } } - atp = isp_find_atpd(isp, tptr, cso->tag_id); + atp = isp_find_atpd(isp, XS_CHANNEL(ccb), cso->tag_id); if (atp == NULL) { isp_prt(isp, ISP_LOGERR, "%s: [0x%x] cannot find private data adjunct in %s", __func__, cso->tag_id, __func__); - isp_dump_atpd(isp, tptr); + isp_dump_atpd(isp, XS_CHANNEL(ccb)); ccb->ccb_h.status = CAM_REQ_CMP_ERR; xpt_done(ccb); continue; @@ -1763,7 +1675,6 @@ isp_target_start_ctio(ispsoftc_t *isp, u atp->ctcnt++; atp->seqno++; } - rls_lun_statep(isp, tptr); } static void @@ -1860,7 +1771,7 @@ isp_handle_platform_atio2(ispsoftc_t *is */ if ((aep->at_status & ~QLTM_SVALID) != AT_CDB) { isp_prt(isp, ISP_LOGWARN, "bogus atio (0x%x) leaked to platform", aep->at_status); - isp_endcmd(isp, aep, SCSI_STATUS_BUSY, 0); + isp_endcmd(isp, aep, NIL_HANDLE, 0, SCSI_STATUS_BUSY, 0); return; } @@ -1884,9 +1795,9 @@ isp_handle_platform_atio2(ispsoftc_t *is if (tptr == NULL) { isp_prt(isp, ISP_LOGWARN, "%s: [0x%x] no state pointer for lun %d or wildcard", __func__, aep->at_rxid, lun); if (lun == 0) { - isp_endcmd(isp, aep, SCSI_STATUS_BUSY, 0); + isp_endcmd(isp, aep, nphdl, 0, SCSI_STATUS_BUSY, 0); } else { - isp_endcmd(isp, aep, SCSI_STATUS_CHECK_COND | ECMD_SVALID | (0x5 << 12) | (0x25 << 16), 0); + isp_endcmd(isp, aep, nphdl, 0, SCSI_STATUS_CHECK_COND | ECMD_SVALID | (0x5 << 12) | (0x25 << 16), 0); } return; } @@ -1895,38 +1806,15 @@ isp_handle_platform_atio2(ispsoftc_t *is /* * Start any commands pending resources first. */ - if (tptr->restart_queue) { - inot_private_data_t *restart_queue = tptr->restart_queue; - tptr->restart_queue = NULL; - while (restart_queue) { - ntp = restart_queue; - restart_queue = ntp->rd.nt.nt_hba; - isp_prt(isp, ISP_LOGTDEBUG0, "%s: restarting resrc deprived %x", __func__, ((at2_entry_t *)ntp->rd.data)->at_rxid); - isp_handle_platform_atio2(isp, (at2_entry_t *) ntp->rd.data); - isp_put_ntpd(isp, tptr, ntp); - /* - * If a recursion caused the restart queue to start to fill again, - * stop and splice the new list on top of the old list and restore - * it and go to noresrc. - */ - if (tptr->restart_queue) { - ntp = tptr->restart_queue; - tptr->restart_queue = restart_queue; - while (restart_queue->rd.nt.nt_hba) { - restart_queue = restart_queue->rd.nt.nt_hba; - } - restart_queue->rd.nt.nt_hba = ntp; - goto noresrc; - } - } - } + if (isp_atio_restart(isp, 0, tptr)) + goto noresrc; atiop = (struct ccb_accept_tio *) SLIST_FIRST(&tptr->atios); if (atiop == NULL) { goto noresrc; } - atp = isp_get_atpd(isp, tptr, aep->at_rxid); + atp = isp_get_atpd(isp, 0, aep->at_rxid); if (atp == NULL) { goto noresrc; } @@ -2001,19 +1889,15 @@ isp_handle_platform_atio2(ispsoftc_t *is atp->state = ATPD_STATE_CAM; xpt_done((union ccb *)atiop); isp_prt(isp, ISP_LOGTDEBUG0, "ATIO2[0x%x] CDB=0x%x lun %d datalen %u", aep->at_rxid, atp->cdb0, lun, atp->orig_datalen); - rls_lun_statep(isp, tptr); return; noresrc: - ntp = isp_get_ntpd(isp, tptr); + ntp = isp_get_ntpd(isp, 0); if (ntp == NULL) { - rls_lun_statep(isp, tptr); - isp_endcmd(isp, aep, SCSI_STATUS_BUSY, 0); + isp_endcmd(isp, aep, nphdl, 0, SCSI_STATUS_BUSY, 0); return; } - memcpy(ntp->rd.data, aep, QENTRY_LEN); - ntp->rd.nt.nt_hba = tptr->restart_queue; - tptr->restart_queue = ntp; - rls_lun_statep(isp, tptr); + memcpy(ntp->data, aep, QENTRY_LEN); + STAILQ_INSERT_TAIL(&tptr->restart_queue, ntp, next); } static void @@ -2118,40 +2002,13 @@ isp_handle_platform_atio7(ispsoftc_t *is /* * Start any commands pending resources first. */ - if (tptr->restart_queue) { - inot_private_data_t *restart_queue = tptr->restart_queue; - tptr->restart_queue = NULL; - while (restart_queue) { - ntp = restart_queue; - restart_queue = ntp->rd.nt.nt_hba; - isp_prt(isp, ISP_LOGTDEBUG0, "%s: restarting resrc deprived %x", __func__, ((at7_entry_t *)ntp->rd.data)->at_rxid); - isp_handle_platform_atio7(isp, (at7_entry_t *) ntp->rd.data); - isp_put_ntpd(isp, tptr, ntp); - /* - * If a recursion caused the restart queue to start to fill again, - * stop and splice the new list on top of the old list and restore - * it and go to noresrc. - */ - if (tptr->restart_queue) { - isp_prt(isp, ISP_LOGTDEBUG0, "%s: restart queue refilling", __func__); - if (restart_queue) { - ntp = tptr->restart_queue; - tptr->restart_queue = restart_queue; - while (restart_queue->rd.nt.nt_hba) { - restart_queue = restart_queue->rd.nt.nt_hba; - } - restart_queue->rd.nt.nt_hba = ntp; - } - goto noresrc; - } - } - } + if (isp_atio_restart(isp, chan, tptr)) + goto noresrc; /* * If the f/w is out of resources, just send a BUSY status back. */ if (aep->at_rxid == AT7_NORESRC_RXID) { - rls_lun_statep(isp, tptr); isp_endcmd(isp, aep, nphdl, chan, SCSI_BUSY, 0); return; } @@ -2165,7 +2022,7 @@ isp_handle_platform_atio7(ispsoftc_t *is goto noresrc; } - oatp = isp_find_atpd(isp, tptr, aep->at_rxid); + oatp = isp_find_atpd(isp, chan, aep->at_rxid); if (oatp) { isp_prt(isp, ISP_LOGTDEBUG0, "[0x%x] tag wraparound in isp_handle_platforms_atio7 (N-Port Handle 0x%04x S_ID 0x%04x OX_ID 0x%04x) oatp state %d", aep->at_rxid, nphdl, sid, aep->at_hdr.ox_id, oatp->state); @@ -2174,7 +2031,7 @@ isp_handle_platform_atio7(ispsoftc_t *is */ goto noresrc; } - atp = isp_get_atpd(isp, tptr, aep->at_rxid); + atp = isp_get_atpd(isp, chan, aep->at_rxid); if (atp == NULL) { isp_prt(isp, ISP_LOGTDEBUG0, "[0x%x] out of atps", aep->at_rxid); goto noresrc; @@ -2230,22 +2087,17 @@ isp_handle_platform_atio7(ispsoftc_t *is isp_prt(isp, ISP_LOGTDEBUG0, "ATIO7[0x%x] CDB=0x%x lun %jx datalen %u", aep->at_rxid, atp->cdb0, (uintmax_t)lun, atp->orig_datalen); xpt_done((union ccb *)atiop); - rls_lun_statep(isp, tptr); return; noresrc: - if (atp) { - isp_put_atpd(isp, tptr, atp); - } - ntp = isp_get_ntpd(isp, tptr); + if (atp) + isp_put_atpd(isp, chan, atp); + ntp = isp_get_ntpd(isp, chan); if (ntp == NULL) { - rls_lun_statep(isp, tptr); isp_endcmd(isp, aep, nphdl, chan, SCSI_STATUS_BUSY, 0); return; } - memcpy(ntp->rd.data, aep, QENTRY_LEN); - ntp->rd.nt.nt_hba = tptr->restart_queue; - tptr->restart_queue = ntp; - rls_lun_statep(isp, tptr); + memcpy(ntp->data, aep, QENTRY_LEN); + STAILQ_INSERT_TAIL(&tptr->restart_queue, ntp, next); } @@ -2256,7 +2108,7 @@ noresrc: * transaction. */ static void -isp_handle_srr_start(ispsoftc_t *isp, tstate_t *tptr, atio_private_data_t *atp) +isp_handle_srr_start(ispsoftc_t *isp, atio_private_data_t *atp) { in_fcentry_24xx_t *inot; uint32_t srr_off, ccb_off, ccb_len, ccb_end; @@ -2356,7 +2208,6 @@ mdp: static void isp_handle_srr_notify(ispsoftc_t *isp, void *inot_raw) { - tstate_t *tptr; in_fcentry_24xx_t *inot = inot_raw; atio_private_data_t *atp; uint32_t tag = inot->in_rxid; @@ -2367,15 +2218,8 @@ isp_handle_srr_notify(ispsoftc_t *isp, v return; } - tptr = get_lun_statep_from_tag(isp, bus, tag); - if (tptr == NULL) { - isp_prt(isp, ISP_LOGERR, "%s: cannot find tptr for tag %x in SRR Notify", __func__, tag); - isp_async(isp, ISPASYNC_TARGET_NOTIFY_ACK, inot); - return; - } - atp = isp_find_atpd(isp, tptr, tag); + atp = isp_find_atpd(isp, bus, tag); if (atp == NULL) { - rls_lun_statep(isp, tptr); isp_prt(isp, ISP_LOGERR, "%s: cannot find adjunct for %x in SRR Notify", __func__, tag); isp_async(isp, ISPASYNC_TARGET_NOTIFY_ACK, inot); return; @@ -2385,8 +2229,7 @@ isp_handle_srr_notify(ispsoftc_t *isp, v isp_prt(isp, ISP_LOGTINFO /* ISP_LOGTDEBUG0 */, "SRR[0x%x] inot->in_rxid flags 0x%x srr_iu=%x reloff 0x%x", inot->in_rxid, inot->in_flags, inot->in_srr_iu, inot->in_srr_reloff_lo | (inot->in_srr_reloff_hi << 16)); if (atp->srr_ccb) - isp_handle_srr_start(isp, tptr, atp); - rls_lun_statep(isp, tptr); + isp_handle_srr_start(isp, atp); } static void @@ -2394,7 +2237,6 @@ isp_handle_platform_ctio(ispsoftc_t *isp { union ccb *ccb; int sentstatus = 0, ok = 0, notify_cam = 0, resid = 0, failure = 0; - tstate_t *tptr = NULL; atio_private_data_t *atp = NULL; int bus; uint32_t handle, moved_data = 0, data_requested; @@ -2413,19 +2255,10 @@ isp_handle_platform_ctio(ispsoftc_t *isp } bus = XS_CHANNEL(ccb); - tptr = get_lun_statep(isp, bus, XS_LUN(ccb)); - if (tptr == NULL) { - tptr = get_lun_statep(isp, bus, CAM_LUN_WILDCARD); - } - if (tptr == NULL) { - isp_prt(isp, ISP_LOGERR, "%s: cannot find tptr for tag %x after I/O", __func__, ccb->csio.tag_id); - return; - } - if (IS_24XX(isp)) { - atp = isp_find_atpd(isp, tptr, ((ct7_entry_t *)arg)->ct_rxid); + atp = isp_find_atpd(isp, bus, ((ct7_entry_t *)arg)->ct_rxid); } else { - atp = isp_find_atpd(isp, tptr, ((ct2_entry_t *)arg)->ct_rxid); + atp = isp_find_atpd(isp, bus, ((ct2_entry_t *)arg)->ct_rxid); } if (atp == NULL) { /* @@ -2433,10 +2266,9 @@ isp_handle_platform_ctio(ispsoftc_t *isp * ct_rxid value, filling only ct_syshandle. Workaround * that using tag_id from the CCB, pointed by ct_syshandle. */ - atp = isp_find_atpd(isp, tptr, ccb->csio.tag_id); + atp = isp_find_atpd(isp, bus, ccb->csio.tag_id); } if (atp == NULL) { - rls_lun_statep(isp, tptr); isp_prt(isp, ISP_LOGERR, "%s: cannot find adjunct for %x after I/O", __func__, ccb->csio.tag_id); return; } @@ -2451,8 +2283,7 @@ isp_handle_platform_ctio(ispsoftc_t *isp if (ct->ct_nphdl == CT7_SRR) { atp->srr_ccb = ccb; if (atp->srr_notify_rcvd) - isp_handle_srr_start(isp, tptr, atp); - rls_lun_statep(isp, tptr); + isp_handle_srr_start(isp, atp); return; } if (ct->ct_nphdl == CT_HBA_RESET) { @@ -2473,8 +2304,7 @@ isp_handle_platform_ctio(ispsoftc_t *isp if (ct->ct_status == CT_SRR) { atp->srr_ccb = ccb; if (atp->srr_notify_rcvd) - isp_handle_srr_start(isp, tptr, atp); - rls_lun_statep(isp, tptr); + isp_handle_srr_start(isp, atp); isp_target_putback_atio(ccb); return; } @@ -2509,7 +2339,6 @@ isp_handle_platform_ctio(ispsoftc_t *isp ccb->ccb_h.status |= CAM_REQ_CMP_ERR; } atp->state = ATPD_STATE_PDON; - rls_lun_statep(isp, tptr); /* * We never *not* notify CAM when there has been any error (ok == 0), @@ -2525,6 +2354,12 @@ isp_handle_platform_ctio(ispsoftc_t *isp } /* + * If we sent status or error happened, we are done with this ATIO. + */ + if (sentstatus || !ok) + isp_put_atpd(isp, bus, atp); + + /* * We're telling CAM we're done with this CTIO transaction. * * 24XX cards never need an ATIO put back. @@ -2904,11 +2739,11 @@ isp_handle_platform_target_tmf(ispsoftc_ switch (notify->nt_ncode) { case NT_ABORT_TASK: - isp_target_mark_aborted_early(isp, tptr, inot->tag_id); + isp_target_mark_aborted_early(isp, notify->nt_channel, tptr, inot->tag_id); inot->arg = MSG_ABORT_TASK; break; case NT_ABORT_TASK_SET: - isp_target_mark_aborted_early(isp, tptr, TAG_ANY); + isp_target_mark_aborted_early(isp, notify->nt_channel, tptr, TAG_ANY); inot->arg = MSG_ABORT_TASK_SET; break; case NT_CLEAR_ACA: @@ -2934,30 +2769,26 @@ isp_handle_platform_target_tmf(ispsoftc_ goto bad; } - ntp = isp_get_ntpd(isp, tptr); + ntp = isp_get_ntpd(isp, notify->nt_channel); if (ntp == NULL) { isp_prt(isp, ISP_LOGWARN, "%s: out of inotify private structures", __func__); goto bad; } - ISP_MEMCPY(&ntp->rd.nt, notify, sizeof (isp_notify_t)); + ISP_MEMCPY(&ntp->nt, notify, sizeof (isp_notify_t)); if (notify->nt_lreserved) { - ISP_MEMCPY(&ntp->rd.data, notify->nt_lreserved, QENTRY_LEN); - ntp->rd.nt.nt_lreserved = &ntp->rd.data; + ISP_MEMCPY(&ntp->data, notify->nt_lreserved, QENTRY_LEN); + ntp->nt.nt_lreserved = &ntp->data; } - ntp->rd.seq_id = notify->nt_tagval; - ntp->rd.tag_id = notify->nt_tagval >> 32; + ntp->seq_id = notify->nt_tagval; + ntp->tag_id = notify->nt_tagval >> 32; tptr->inot_count--; SLIST_REMOVE_HEAD(&tptr->inots, sim_links.sle); - rls_lun_statep(isp, tptr); ISP_PATH_PRT(isp, ISP_LOGTDEBUG2, inot->ccb_h.path, "%s: Take FREE INOT count now %d\n", __func__, tptr->inot_count); inot->ccb_h.status = CAM_MESSAGE_RECV; xpt_done((union ccb *)inot); return; bad: - if (tptr) { - rls_lun_statep(isp, tptr); - } if (notify->nt_need_ack && notify->nt_lreserved) { if (((isphdr_t *)notify->nt_lreserved)->rqs_entry_type == RQSTYPE_ABTS_RCVD) { if (isp_acknak_abts(isp, notify->nt_lreserved, ENOMEM)) { @@ -2969,72 +2800,39 @@ bad: } } -/* - * Find the associated private data and mark it as dead so - * we don't try to work on it any further. - */ -static void -isp_target_mark_aborted(ispsoftc_t *isp, union ccb *ccb) -{ - tstate_t *tptr; - atio_private_data_t *atp; - union ccb *accb = ccb->cab.abort_ccb; - - tptr = get_lun_statep(isp, XS_CHANNEL(accb), XS_LUN(accb)); - if (tptr == NULL) { - tptr = get_lun_statep(isp, XS_CHANNEL(accb), CAM_LUN_WILDCARD); - if (tptr == NULL) { - ccb->ccb_h.status = CAM_REQ_INVALID; - return; - } - } - - atp = isp_find_atpd(isp, tptr, accb->atio.tag_id); - if (atp == NULL) { - ccb->ccb_h.status = CAM_REQ_INVALID; - } else { - atp->dead = 1; - ccb->ccb_h.status = CAM_REQ_CMP; - } - rls_lun_statep(isp, tptr); -} - static void -isp_target_mark_aborted_early(ispsoftc_t *isp, tstate_t *tptr, uint32_t tag_id) +isp_target_mark_aborted_early(ispsoftc_t *isp, int chan, tstate_t *tptr, uint32_t tag_id) { - atio_private_data_t *atp; - inot_private_data_t *restart_queue = tptr->restart_queue; + atio_private_data_t *atp, *atpool; + inot_private_data_t *ntp, *tmp; + uint32_t this_tag_id; /* * First, clean any commands pending restart */ - tptr->restart_queue = NULL; - while (restart_queue) { - uint32_t this_tag_id; - inot_private_data_t *ntp = restart_queue; - - restart_queue = ntp->rd.nt.nt_hba; - - if (IS_24XX(isp)) { - this_tag_id = ((at7_entry_t *)ntp->rd.data)->at_rxid; - } else { - this_tag_id = ((at2_entry_t *)ntp->rd.data)->at_rxid; - } + STAILQ_FOREACH_SAFE(ntp, &tptr->restart_queue, next, tmp) { + if (IS_24XX(isp)) + this_tag_id = ((at7_entry_t *)ntp->data)->at_rxid; + else + this_tag_id = ((at2_entry_t *)ntp->data)->at_rxid; if ((uint64_t)tag_id == TAG_ANY || tag_id == this_tag_id) { - isp_put_ntpd(isp, tptr, ntp); - } else { - ntp->rd.nt.nt_hba = tptr->restart_queue; - tptr->restart_queue = ntp; + isp_endcmd(isp, ntp->data, NIL_HANDLE, chan, + ECMD_TERMINATE, 0); + isp_put_ntpd(isp, chan, ntp); + STAILQ_REMOVE(&tptr->restart_queue, ntp, + inot_private_data, next); } } /* * Now mark other ones dead as well. */ - for (atp = tptr->atpool; atp < &tptr->atpool[ATPDPSIZE]; atp++) { - if ((uint64_t)tag_id == TAG_ANY || atp->tag == tag_id) { + ISP_GET_PC(isp, chan, atpool, atpool); + for (atp = atpool; atp < &atpool[ATPDPSIZE]; atp++) { + if (atp->lun != tptr->ts_lun) + continue; + if ((uint64_t)tag_id == TAG_ANY || atp->tag == tag_id) atp->dead = 1; - } } } #endif @@ -3433,6 +3231,77 @@ isp_kthread(void *arg) kthread_exit(); } +#ifdef ISP_TARGET_MODE +static void +isp_abort_atio(ispsoftc_t *isp, union ccb *ccb) +{ + atio_private_data_t *atp; + union ccb *accb = ccb->cab.abort_ccb; + struct ccb_hdr *sccb; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Mon Mar 6 06:23:18 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E3263CFA80D; Mon, 6 Mar 2017 06:23:18 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id AFF77165B; Mon, 6 Mar 2017 06:23:18 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266NHOr094786; Mon, 6 Mar 2017 06:23:17 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266NHs2094785; Mon, 6 Mar 2017 06:23:17 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060623.v266NHs2094785@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:23:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314734 - stable/11/sys/dev/isp X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:23:19 -0000 Author: mav Date: Mon Mar 6 06:23:17 2017 New Revision: 314734 URL: https://svnweb.freebsd.org/changeset/base/314734 Log: MFC r314088: Slightly polish isp_dump_atpd(). Modified: stable/11/sys/dev/isp/isp_freebsd.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:22:37 2017 (r314733) +++ stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:23:17 2017 (r314734) @@ -1008,7 +1008,9 @@ isp_dump_atpd(ispsoftc_t *isp, int chan) ISP_GET_PC(isp, chan, atpool, atpool); for (atp = atpool; atp < &atpool[ATPDPSIZE]; atp++) { - isp_prt(isp, ISP_LOGALL, "Chan %d ATP [0x%x] origdlen %u bytes_xfrd %u lun %jx nphdl 0x%04x s_id 0x%06x d_id 0x%06x oxid 0x%04x state %s\n", + if (atp->state == ATPD_STATE_FREE) + continue; + isp_prt(isp, ISP_LOGALL, "Chan %d ATP [0x%x] origdlen %u bytes_xfrd %u lun %jx nphdl 0x%04x s_id 0x%06x d_id 0x%06x oxid 0x%04x state %s", chan, atp->tag, atp->orig_datalen, atp->bytes_xfered, (uintmax_t)atp->lun, atp->nphdl, atp->sid, atp->portid, atp->oxid, states[atp->state & 0x7]); } } From owner-svn-src-all@freebsd.org Mon Mar 6 06:23:47 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8FFEBCFA88B; Mon, 6 Mar 2017 06:23:47 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D9D431793; Mon, 6 Mar 2017 06:23:46 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266NjMk094858; Mon, 6 Mar 2017 06:23:45 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266NjBm094857; Mon, 6 Mar 2017 06:23:45 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060623.v266NjBm094857@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:23:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314735 - stable/10/sys/dev/isp X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:23:47 -0000 Author: mav Date: Mon Mar 6 06:23:45 2017 New Revision: 314735 URL: https://svnweb.freebsd.org/changeset/base/314735 Log: MFC r314088: Slightly polish isp_dump_atpd(). Modified: stable/10/sys/dev/isp/isp_freebsd.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:23:17 2017 (r314734) +++ stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:23:45 2017 (r314735) @@ -1008,7 +1008,9 @@ isp_dump_atpd(ispsoftc_t *isp, int chan) ISP_GET_PC(isp, chan, atpool, atpool); for (atp = atpool; atp < &atpool[ATPDPSIZE]; atp++) { - isp_prt(isp, ISP_LOGALL, "Chan %d ATP [0x%x] origdlen %u bytes_xfrd %u lun %jx nphdl 0x%04x s_id 0x%06x d_id 0x%06x oxid 0x%04x state %s\n", + if (atp->state == ATPD_STATE_FREE) + continue; + isp_prt(isp, ISP_LOGALL, "Chan %d ATP [0x%x] origdlen %u bytes_xfrd %u lun %jx nphdl 0x%04x s_id 0x%06x d_id 0x%06x oxid 0x%04x state %s", chan, atp->tag, atp->orig_datalen, atp->bytes_xfered, (uintmax_t)atp->lun, atp->nphdl, atp->sid, atp->portid, atp->oxid, states[atp->state & 0x7]); } } From owner-svn-src-all@freebsd.org Mon Mar 6 06:24:25 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E98F2CFA91D; Mon, 6 Mar 2017 06:24:25 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A7CDB18F9; Mon, 6 Mar 2017 06:24:25 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266OO8w094940; Mon, 6 Mar 2017 06:24:24 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266OOoW094939; Mon, 6 Mar 2017 06:24:24 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060624.v266OOoW094939@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:24:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314736 - stable/11/sys/cam/ctl X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:24:26 -0000 Author: mav Date: Mon Mar 6 06:24:24 2017 New Revision: 314736 URL: https://svnweb.freebsd.org/changeset/base/314736 Log: MFC r314193: Some code cleanup. Modified: stable/11/sys/cam/ctl/scsi_ctl.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:23:45 2017 (r314735) +++ stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:24:24 2017 (r314736) @@ -842,52 +842,32 @@ ctlfestart(struct cam_periph *periph, un (io->io_hdr.flags & CTL_FLAG_ABORT_STATUS) == 0) { io->io_hdr.flags &= ~CTL_FLAG_STATUS_QUEUED; - /* - * If this command was aborted, we don't - * need to send status back to the SIM. - * Just free the CTIO and ctl_io, and - * recycle the ATIO back to the SIM. - */ - xpt_print(periph->path, "%s: aborted " - "command 0x%04x discarded\n", - __func__, io->scsiio.tag_num); - /* - * For a wildcard attachment, commands can - * come in with a specific target/lun. Reset - * the target and LUN fields back to the - * wildcard values before we send them back - * down to the SIM. The SIM has a wildcard - * LUN enabled, not whatever target/lun - * these happened to be. - */ - if (softc->flags & CTLFE_LUN_WILDCARD) { - atio->ccb_h.target_id = CAM_TARGET_WILDCARD; - atio->ccb_h.target_lun = CAM_LUN_WILDCARD; - } - - if (atio->ccb_h.func_code != XPT_ACCEPT_TARGET_IO) { - xpt_print(periph->path, "%s: func_code " - "is %#x\n", __func__, - atio->ccb_h.func_code); - } + /* Tell the SIM that we've aborted this ATIO */ +#ifdef CTLFEDEBUG + printf("%s: tag %04x abort\n", __func__, atio->tag_id); +#endif + KASSERT(atio->ccb_h.func_code == XPT_ACCEPT_TARGET_IO, + ("func_code %#x is not ATIO", atio->ccb_h.func_code)); start_ccb->ccb_h.func_code = XPT_ABORT; start_ccb->cab.abort_ccb = (union ccb *)atio; - - /* Tell the SIM that we've aborted this ATIO */ xpt_action(start_ccb); softc->ccbs_freed++; xpt_release_ccb(start_ccb); /* * Send the ATIO back down to the SIM. + * For a wildcard attachment, commands can come in + * with a specific target/lun. Reset the target and + * LUN fields back to the wildcard values before we + * send them back down to the SIM. */ + if (softc->flags & CTLFE_LUN_WILDCARD) { + atio->ccb_h.target_id = CAM_TARGET_WILDCARD; + atio->ccb_h.target_lun = CAM_LUN_WILDCARD; + } xpt_action((union ccb *)atio); - /* - * If we still have work to do, ask for - * another CCB. Otherwise, deactivate our - * callout. - */ + /* If we still have work to do, ask for another CCB. */ if (!TAILQ_EMPTY(&softc->work_queue)) xpt_schedule(periph, /*priority*/ 1); return; @@ -911,9 +891,6 @@ ctlfestart(struct cam_periph *periph, un if (csio->sense_len != 0) { csio->sense_data = io->scsiio.sense_data; flags |= CAM_SEND_SENSE; - } else if (scsi_status == SCSI_STATUS_CHECK_COND) { - xpt_print(periph->path, "%s: check condition " - "with no sense\n", __func__); } } From owner-svn-src-all@freebsd.org Mon Mar 6 06:24:55 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4B4AECFA9AC; Mon, 6 Mar 2017 06:24:55 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0DF141A8D; Mon, 6 Mar 2017 06:24:54 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266Ost1095054; Mon, 6 Mar 2017 06:24:54 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266OsdW095053; Mon, 6 Mar 2017 06:24:54 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060624.v266OsdW095053@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:24:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314737 - stable/10/sys/cam/ctl X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:24:55 -0000 Author: mav Date: Mon Mar 6 06:24:53 2017 New Revision: 314737 URL: https://svnweb.freebsd.org/changeset/base/314737 Log: MFC r314193: Some code cleanup. Modified: stable/10/sys/cam/ctl/scsi_ctl.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:24:24 2017 (r314736) +++ stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:24:53 2017 (r314737) @@ -842,52 +842,32 @@ ctlfestart(struct cam_periph *periph, un (io->io_hdr.flags & CTL_FLAG_ABORT_STATUS) == 0) { io->io_hdr.flags &= ~CTL_FLAG_STATUS_QUEUED; - /* - * If this command was aborted, we don't - * need to send status back to the SIM. - * Just free the CTIO and ctl_io, and - * recycle the ATIO back to the SIM. - */ - xpt_print(periph->path, "%s: aborted " - "command 0x%04x discarded\n", - __func__, io->scsiio.tag_num); - /* - * For a wildcard attachment, commands can - * come in with a specific target/lun. Reset - * the target and LUN fields back to the - * wildcard values before we send them back - * down to the SIM. The SIM has a wildcard - * LUN enabled, not whatever target/lun - * these happened to be. - */ - if (softc->flags & CTLFE_LUN_WILDCARD) { - atio->ccb_h.target_id = CAM_TARGET_WILDCARD; - atio->ccb_h.target_lun = CAM_LUN_WILDCARD; - } - - if (atio->ccb_h.func_code != XPT_ACCEPT_TARGET_IO) { - xpt_print(periph->path, "%s: func_code " - "is %#x\n", __func__, - atio->ccb_h.func_code); - } + /* Tell the SIM that we've aborted this ATIO */ +#ifdef CTLFEDEBUG + printf("%s: tag %04x abort\n", __func__, atio->tag_id); +#endif + KASSERT(atio->ccb_h.func_code == XPT_ACCEPT_TARGET_IO, + ("func_code %#x is not ATIO", atio->ccb_h.func_code)); start_ccb->ccb_h.func_code = XPT_ABORT; start_ccb->cab.abort_ccb = (union ccb *)atio; - - /* Tell the SIM that we've aborted this ATIO */ xpt_action(start_ccb); softc->ccbs_freed++; xpt_release_ccb(start_ccb); /* * Send the ATIO back down to the SIM. + * For a wildcard attachment, commands can come in + * with a specific target/lun. Reset the target and + * LUN fields back to the wildcard values before we + * send them back down to the SIM. */ + if (softc->flags & CTLFE_LUN_WILDCARD) { + atio->ccb_h.target_id = CAM_TARGET_WILDCARD; + atio->ccb_h.target_lun = CAM_LUN_WILDCARD; + } xpt_action((union ccb *)atio); - /* - * If we still have work to do, ask for - * another CCB. Otherwise, deactivate our - * callout. - */ + /* If we still have work to do, ask for another CCB. */ if (!TAILQ_EMPTY(&softc->work_queue)) xpt_schedule(periph, /*priority*/ 1); return; @@ -911,9 +891,6 @@ ctlfestart(struct cam_periph *periph, un if (csio->sense_len != 0) { csio->sense_data = io->scsiio.sense_data; flags |= CAM_SEND_SENSE; - } else if (scsi_status == SCSI_STATUS_CHECK_COND) { - xpt_print(periph->path, "%s: check condition " - "with no sense\n", __func__); } } From owner-svn-src-all@freebsd.org Mon Mar 6 06:25:34 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E59EACFAA38; Mon, 6 Mar 2017 06:25:34 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A530B1C1F; Mon, 6 Mar 2017 06:25:34 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266PXDQ095145; Mon, 6 Mar 2017 06:25:33 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266PXPA095144; Mon, 6 Mar 2017 06:25:33 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060625.v266PXPA095144@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:25:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314738 - stable/11/sys/cam/ctl X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:25:35 -0000 Author: mav Date: Mon Mar 6 06:25:33 2017 New Revision: 314738 URL: https://svnweb.freebsd.org/changeset/base/314738 Log: MFC r314196: Unify ATIO/INOT CCBs requeuing. Modified: stable/11/sys/cam/ctl/scsi_ctl.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:24:53 2017 (r314737) +++ stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:25:33 2017 (r314738) @@ -210,6 +210,10 @@ static void ctlfe_dump_queue(struct ctl static void ctlfe_datamove(union ctl_io *io); static void ctlfe_done(union ctl_io *io); static void ctlfe_dump(void); +static void ctlfe_free_ccb(struct cam_periph *periph, + union ccb *ccb); +static void ctlfe_requeue_ccb(struct cam_periph *periph, + union ccb *ccb, int unlock); static struct periph_driver ctlfe_driver = { @@ -808,6 +812,7 @@ ctlfestart(struct cam_periph *periph, un softc = (struct ctlfe_lun_softc *)periph->softc; softc->ccbs_alloced++; +next: ccb_h = TAILQ_FIRST(&softc->work_queue); if (ccb_h == NULL) { softc->ccbs_freed++; @@ -851,26 +856,12 @@ ctlfestart(struct cam_periph *periph, un start_ccb->ccb_h.func_code = XPT_ABORT; start_ccb->cab.abort_ccb = (union ccb *)atio; xpt_action(start_ccb); - softc->ccbs_freed++; - xpt_release_ccb(start_ccb); - /* - * Send the ATIO back down to the SIM. - * For a wildcard attachment, commands can come in - * with a specific target/lun. Reset the target and - * LUN fields back to the wildcard values before we - * send them back down to the SIM. - */ - if (softc->flags & CTLFE_LUN_WILDCARD) { - atio->ccb_h.target_id = CAM_TARGET_WILDCARD; - atio->ccb_h.target_lun = CAM_LUN_WILDCARD; - } - xpt_action((union ccb *)atio); + ctlfe_requeue_ccb(periph, (union ccb *)atio, + /* unlock */0); - /* If we still have work to do, ask for another CCB. */ - if (!TAILQ_EMPTY(&softc->work_queue)) - xpt_schedule(periph, /*priority*/ 1); - return; + /* XPT_ABORT is not queued, so we can take next I/O. */ + goto next; } data_ptr = NULL; dxfer_len = 0; @@ -1003,6 +994,37 @@ ctlfe_free_ccb(struct cam_periph *periph } } +/* + * Send the ATIO/INOT back to the SIM, or free it if periph was invalidated. + */ +static void +ctlfe_requeue_ccb(struct cam_periph *periph, union ccb *ccb, int unlock) +{ + struct ctlfe_lun_softc *softc; + + if (periph->flags & CAM_PERIPH_INVALID) { + ctlfe_free_ccb(periph, ccb); + if (unlock) + cam_periph_unlock(periph); + return; + } + if (unlock) + cam_periph_unlock(periph); + + /* + * For a wildcard attachment, commands can come in with a specific + * target/lun. Reset the target and LUN fields back to the wildcard + * values before we send them back down to the SIM. + */ + softc = (struct ctlfe_lun_softc *)periph->softc; + if (softc->flags & CTLFE_LUN_WILDCARD) { + ccb->ccb_h.target_id = CAM_TARGET_WILDCARD; + ccb->ccb_h.target_lun = CAM_LUN_WILDCARD; + } + + xpt_action(ccb); +} + static int ctlfe_adjust_cdb(struct ccb_accept_tio *atio, uint32_t offset) { @@ -1266,25 +1288,9 @@ ctlfedone(struct cam_periph *periph, uni if ((io->io_hdr.flags & CTL_FLAG_DMA_INPROG) == 0) { softc->ccbs_freed++; xpt_release_ccb(done_ccb); - /* - * For a wildcard attachment, commands can come in - * with a specific target/lun. Reset the target - * and LUN fields back to the wildcard values before - * we send them back down to the SIM. The SIM has - * a wildcard LUN enabled, not whatever target/lun - * these happened to be. - */ - if (softc->flags & CTLFE_LUN_WILDCARD) { - atio->ccb_h.target_id = CAM_TARGET_WILDCARD; - atio->ccb_h.target_lun = CAM_LUN_WILDCARD; - } - if (periph->flags & CAM_PERIPH_INVALID) { - ctlfe_free_ccb(periph, (union ccb *)atio); - } else { - mtx_unlock(mtx); - xpt_action((union ccb *)atio); - return; - } + ctlfe_requeue_ccb(periph, (union ccb *)atio, + /* unlock */1); + return; } else { struct ctlfe_cmd_info *cmd_info; struct ccb_scsiio *csio; @@ -1489,18 +1495,11 @@ ctlfedone(struct cam_periph *periph, uni break; } case XPT_NOTIFY_ACKNOWLEDGE: - if (periph->flags & CAM_PERIPH_INVALID) { - ctlfe_free_ccb(periph, done_ccb); - goto out; - } - - /* - * Queue this back down to the SIM as an immediate notify. - */ + /* Queue this back down to the SIM as an immediate notify. */ done_ccb->ccb_h.status = CAM_REQ_INPROG; done_ccb->ccb_h.func_code = XPT_IMMEDIATE_NOTIFY; - xpt_action(done_ccb); - break; + ctlfe_requeue_ccb(periph, done_ccb, /* unlock */1); + return; case XPT_SET_SIM_KNOB: case XPT_GET_SIM_KNOB: case XPT_GET_SIM_KNOB_OLD: @@ -2004,17 +2003,8 @@ ctlfe_done(union ctl_io *io) ccb->cna2.arg |= scsi_3btoul(io->taskio.task_resp) << 8; xpt_action(ccb); } else if (io->io_hdr.flags & CTL_FLAG_STATUS_SENT) { - if (softc->flags & CTLFE_LUN_WILDCARD) { - ccb->ccb_h.target_id = CAM_TARGET_WILDCARD; - ccb->ccb_h.target_lun = CAM_LUN_WILDCARD; - } - if (periph->flags & CAM_PERIPH_INVALID) { - ctlfe_free_ccb(periph, ccb); - } else { - cam_periph_unlock(periph); - xpt_action(ccb); - return; - } + ctlfe_requeue_ccb(periph, ccb, /* unlock */1); + return; } else { io->io_hdr.flags |= CTL_FLAG_STATUS_QUEUED; TAILQ_INSERT_TAIL(&softc->work_queue, &ccb->ccb_h, From owner-svn-src-all@freebsd.org Mon Mar 6 06:26:04 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7E18CCFAA98; Mon, 6 Mar 2017 06:26:04 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 214FE1D4F; Mon, 6 Mar 2017 06:26:03 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266Q3We095222; Mon, 6 Mar 2017 06:26:03 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266Q3Vv095221; Mon, 6 Mar 2017 06:26:03 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060626.v266Q3Vv095221@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:26:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314739 - stable/10/sys/cam/ctl X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:26:04 -0000 Author: mav Date: Mon Mar 6 06:26:02 2017 New Revision: 314739 URL: https://svnweb.freebsd.org/changeset/base/314739 Log: MFC r314196: Unify ATIO/INOT CCBs requeuing. Modified: stable/10/sys/cam/ctl/scsi_ctl.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:25:33 2017 (r314738) +++ stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:26:02 2017 (r314739) @@ -210,6 +210,10 @@ static void ctlfe_dump_queue(struct ctl static void ctlfe_datamove(union ctl_io *io); static void ctlfe_done(union ctl_io *io); static void ctlfe_dump(void); +static void ctlfe_free_ccb(struct cam_periph *periph, + union ccb *ccb); +static void ctlfe_requeue_ccb(struct cam_periph *periph, + union ccb *ccb, int unlock); static struct periph_driver ctlfe_driver = { @@ -808,6 +812,7 @@ ctlfestart(struct cam_periph *periph, un softc = (struct ctlfe_lun_softc *)periph->softc; softc->ccbs_alloced++; +next: ccb_h = TAILQ_FIRST(&softc->work_queue); if (ccb_h == NULL) { softc->ccbs_freed++; @@ -851,26 +856,12 @@ ctlfestart(struct cam_periph *periph, un start_ccb->ccb_h.func_code = XPT_ABORT; start_ccb->cab.abort_ccb = (union ccb *)atio; xpt_action(start_ccb); - softc->ccbs_freed++; - xpt_release_ccb(start_ccb); - /* - * Send the ATIO back down to the SIM. - * For a wildcard attachment, commands can come in - * with a specific target/lun. Reset the target and - * LUN fields back to the wildcard values before we - * send them back down to the SIM. - */ - if (softc->flags & CTLFE_LUN_WILDCARD) { - atio->ccb_h.target_id = CAM_TARGET_WILDCARD; - atio->ccb_h.target_lun = CAM_LUN_WILDCARD; - } - xpt_action((union ccb *)atio); + ctlfe_requeue_ccb(periph, (union ccb *)atio, + /* unlock */0); - /* If we still have work to do, ask for another CCB. */ - if (!TAILQ_EMPTY(&softc->work_queue)) - xpt_schedule(periph, /*priority*/ 1); - return; + /* XPT_ABORT is not queued, so we can take next I/O. */ + goto next; } data_ptr = NULL; dxfer_len = 0; @@ -1003,6 +994,37 @@ ctlfe_free_ccb(struct cam_periph *periph } } +/* + * Send the ATIO/INOT back to the SIM, or free it if periph was invalidated. + */ +static void +ctlfe_requeue_ccb(struct cam_periph *periph, union ccb *ccb, int unlock) +{ + struct ctlfe_lun_softc *softc; + + if (periph->flags & CAM_PERIPH_INVALID) { + ctlfe_free_ccb(periph, ccb); + if (unlock) + cam_periph_unlock(periph); + return; + } + if (unlock) + cam_periph_unlock(periph); + + /* + * For a wildcard attachment, commands can come in with a specific + * target/lun. Reset the target and LUN fields back to the wildcard + * values before we send them back down to the SIM. + */ + softc = (struct ctlfe_lun_softc *)periph->softc; + if (softc->flags & CTLFE_LUN_WILDCARD) { + ccb->ccb_h.target_id = CAM_TARGET_WILDCARD; + ccb->ccb_h.target_lun = CAM_LUN_WILDCARD; + } + + xpt_action(ccb); +} + static int ctlfe_adjust_cdb(struct ccb_accept_tio *atio, uint32_t offset) { @@ -1266,25 +1288,9 @@ ctlfedone(struct cam_periph *periph, uni if ((io->io_hdr.flags & CTL_FLAG_DMA_INPROG) == 0) { softc->ccbs_freed++; xpt_release_ccb(done_ccb); - /* - * For a wildcard attachment, commands can come in - * with a specific target/lun. Reset the target - * and LUN fields back to the wildcard values before - * we send them back down to the SIM. The SIM has - * a wildcard LUN enabled, not whatever target/lun - * these happened to be. - */ - if (softc->flags & CTLFE_LUN_WILDCARD) { - atio->ccb_h.target_id = CAM_TARGET_WILDCARD; - atio->ccb_h.target_lun = CAM_LUN_WILDCARD; - } - if (periph->flags & CAM_PERIPH_INVALID) { - ctlfe_free_ccb(periph, (union ccb *)atio); - } else { - mtx_unlock(mtx); - xpt_action((union ccb *)atio); - return; - } + ctlfe_requeue_ccb(periph, (union ccb *)atio, + /* unlock */1); + return; } else { struct ctlfe_cmd_info *cmd_info; struct ccb_scsiio *csio; @@ -1489,18 +1495,11 @@ ctlfedone(struct cam_periph *periph, uni break; } case XPT_NOTIFY_ACKNOWLEDGE: - if (periph->flags & CAM_PERIPH_INVALID) { - ctlfe_free_ccb(periph, done_ccb); - goto out; - } - - /* - * Queue this back down to the SIM as an immediate notify. - */ + /* Queue this back down to the SIM as an immediate notify. */ done_ccb->ccb_h.status = CAM_REQ_INPROG; done_ccb->ccb_h.func_code = XPT_IMMEDIATE_NOTIFY; - xpt_action(done_ccb); - break; + ctlfe_requeue_ccb(periph, done_ccb, /* unlock */1); + return; case XPT_SET_SIM_KNOB: case XPT_GET_SIM_KNOB: break; @@ -2003,17 +2002,8 @@ ctlfe_done(union ctl_io *io) ccb->cna2.arg |= scsi_3btoul(io->taskio.task_resp) << 8; xpt_action(ccb); } else if (io->io_hdr.flags & CTL_FLAG_STATUS_SENT) { - if (softc->flags & CTLFE_LUN_WILDCARD) { - ccb->ccb_h.target_id = CAM_TARGET_WILDCARD; - ccb->ccb_h.target_lun = CAM_LUN_WILDCARD; - } - if (periph->flags & CAM_PERIPH_INVALID) { - ctlfe_free_ccb(periph, ccb); - } else { - cam_periph_unlock(periph); - xpt_action(ccb); - return; - } + ctlfe_requeue_ccb(periph, ccb, /* unlock */1); + return; } else { io->io_hdr.flags |= CTL_FLAG_STATUS_QUEUED; TAILQ_INSERT_TAIL(&softc->work_queue, &ccb->ccb_h, From owner-svn-src-all@freebsd.org Mon Mar 6 06:26:44 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8270CCFAB1C; Mon, 6 Mar 2017 06:26:44 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4EFFC1E89; Mon, 6 Mar 2017 06:26:44 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266QhVv095300; Mon, 6 Mar 2017 06:26:43 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266QhJs095299; Mon, 6 Mar 2017 06:26:43 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060626.v266QhJs095299@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:26:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314740 - stable/10/sys/cam/ctl X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:26:44 -0000 Author: mav Date: Mon Mar 6 06:26:43 2017 New Revision: 314740 URL: https://svnweb.freebsd.org/changeset/base/314740 Log: MFC r314200: We can't access periph after ctlfe_free_ccb(). Modified: stable/10/sys/cam/ctl/scsi_ctl.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:26:02 2017 (r314739) +++ stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:26:43 2017 (r314740) @@ -1001,11 +1001,13 @@ static void ctlfe_requeue_ccb(struct cam_periph *periph, union ccb *ccb, int unlock) { struct ctlfe_lun_softc *softc; + struct mtx *mtx; if (periph->flags & CAM_PERIPH_INVALID) { + mtx = cam_periph_mtx(periph); ctlfe_free_ccb(periph, ccb); if (unlock) - cam_periph_unlock(periph); + mtx_unlock(mtx); return; } if (unlock) From owner-svn-src-all@freebsd.org Mon Mar 6 06:27:16 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6077BCFAB82; Mon, 6 Mar 2017 06:27:16 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2FBFA1FCB; Mon, 6 Mar 2017 06:27:16 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266RF2O095382; Mon, 6 Mar 2017 06:27:15 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266RFdQ095381; Mon, 6 Mar 2017 06:27:15 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060627.v266RFdQ095381@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:27:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314741 - stable/11/sys/cam/ctl X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:27:16 -0000 Author: mav Date: Mon Mar 6 06:27:15 2017 New Revision: 314741 URL: https://svnweb.freebsd.org/changeset/base/314741 Log: MFC r314200: We can't access periph after ctlfe_free_ccb(). Modified: stable/11/sys/cam/ctl/scsi_ctl.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:26:43 2017 (r314740) +++ stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:27:15 2017 (r314741) @@ -1001,11 +1001,13 @@ static void ctlfe_requeue_ccb(struct cam_periph *periph, union ccb *ccb, int unlock) { struct ctlfe_lun_softc *softc; + struct mtx *mtx; if (periph->flags & CAM_PERIPH_INVALID) { + mtx = cam_periph_mtx(periph); ctlfe_free_ccb(periph, ccb); if (unlock) - cam_periph_unlock(periph); + mtx_unlock(mtx); return; } if (unlock) From owner-svn-src-all@freebsd.org Mon Mar 6 06:28:01 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 54F4BCFABED; Mon, 6 Mar 2017 06:28:01 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 216C51104; Mon, 6 Mar 2017 06:28:01 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266S0QM095465; Mon, 6 Mar 2017 06:28:00 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266S0q3095464; Mon, 6 Mar 2017 06:28:00 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060628.v266S0q3095464@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:28:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314742 - stable/11/sys/dev/isp X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:28:01 -0000 Author: mav Date: Mon Mar 6 06:27:59 2017 New Revision: 314742 URL: https://svnweb.freebsd.org/changeset/base/314742 Log: MFC r314203: Fix missing xpt_done() for ATIO/INOT on missing LUN. Modified: stable/11/sys/dev/isp/isp_freebsd.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:27:15 2017 (r314741) +++ stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:27:59 2017 (r314742) @@ -3428,9 +3428,10 @@ isp_action(struct cam_sim *sim, union cc else str = "XPT_ACCEPT_TARGET_IO"; ISP_PATH_PRT(isp, ISP_LOGWARN, ccb->ccb_h.path, - "%s: [0x%x] no state pointer found for %s\n", + "%s: no state pointer found for %s\n", __func__, str); ccb->ccb_h.status = CAM_DEV_NOT_THERE; + xpt_done(ccb); break; } ccb->ccb_h.spriv_field0 = 0; From owner-svn-src-all@freebsd.org Mon Mar 6 06:28:32 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1B58FCFAC51; Mon, 6 Mar 2017 06:28:32 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id DEBFA1245; Mon, 6 Mar 2017 06:28:31 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266SUaK095540; Mon, 6 Mar 2017 06:28:30 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266SUi1095539; Mon, 6 Mar 2017 06:28:30 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060628.v266SUi1095539@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:28:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314743 - stable/10/sys/dev/isp X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:28:32 -0000 Author: mav Date: Mon Mar 6 06:28:30 2017 New Revision: 314743 URL: https://svnweb.freebsd.org/changeset/base/314743 Log: MFC r314203: Fix missing xpt_done() for ATIO/INOT on missing LUN. Modified: stable/10/sys/dev/isp/isp_freebsd.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:27:59 2017 (r314742) +++ stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:28:30 2017 (r314743) @@ -3428,9 +3428,10 @@ isp_action(struct cam_sim *sim, union cc else str = "XPT_ACCEPT_TARGET_IO"; ISP_PATH_PRT(isp, ISP_LOGWARN, ccb->ccb_h.path, - "%s: [0x%x] no state pointer found for %s\n", + "%s: no state pointer found for %s\n", __func__, str); ccb->ccb_h.status = CAM_DEV_NOT_THERE; + xpt_done(ccb); break; } ccb->ccb_h.spriv_field0 = 0; From owner-svn-src-all@freebsd.org Mon Mar 6 06:29:11 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8E093CFACFB; Mon, 6 Mar 2017 06:29:11 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4ED6913AC; Mon, 6 Mar 2017 06:29:11 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266TA2S095737; Mon, 6 Mar 2017 06:29:10 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266TA0R095736; Mon, 6 Mar 2017 06:29:10 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060629.v266TA0R095736@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:29:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314744 - stable/11/sys/cam/ctl X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:29:11 -0000 Author: mav Date: Mon Mar 6 06:29:10 2017 New Revision: 314744 URL: https://svnweb.freebsd.org/changeset/base/314744 Log: MFC r314204: Explicitly abort ATIO if CTIO sending status has failed. This helps SIM to free related resources in questionable cases. Modified: stable/11/sys/cam/ctl/scsi_ctl.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:28:30 2017 (r314743) +++ stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:29:10 2017 (r314744) @@ -1288,6 +1288,14 @@ ctlfedone(struct cam_periph *periph, uni * datamove done routine. */ if ((io->io_hdr.flags & CTL_FLAG_DMA_INPROG) == 0) { + /* Abort ATIO if CTIO sending status has failed. */ + if ((done_ccb->ccb_h.status & CAM_STATUS_MASK) != + CAM_REQ_CMP) { + done_ccb->ccb_h.func_code = XPT_ABORT; + done_ccb->cab.abort_ccb = (union ccb *)atio; + xpt_action(done_ccb); + } + softc->ccbs_freed++; xpt_release_ccb(done_ccb); ctlfe_requeue_ccb(periph, (union ccb *)atio, From owner-svn-src-all@freebsd.org Mon Mar 6 06:29:43 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DC9C9CFAD76; Mon, 6 Mar 2017 06:29:43 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id AB89F15FA; Mon, 6 Mar 2017 06:29:43 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266TgWV095816; Mon, 6 Mar 2017 06:29:42 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266TgeA095815; Mon, 6 Mar 2017 06:29:42 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060629.v266TgeA095815@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:29:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314745 - stable/10/sys/cam/ctl X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:29:44 -0000 Author: mav Date: Mon Mar 6 06:29:42 2017 New Revision: 314745 URL: https://svnweb.freebsd.org/changeset/base/314745 Log: MFC r314204: Explicitly abort ATIO if CTIO sending status has failed. This helps SIM to free related resources in questionable cases. Modified: stable/10/sys/cam/ctl/scsi_ctl.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:29:10 2017 (r314744) +++ stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:29:42 2017 (r314745) @@ -1288,6 +1288,14 @@ ctlfedone(struct cam_periph *periph, uni * datamove done routine. */ if ((io->io_hdr.flags & CTL_FLAG_DMA_INPROG) == 0) { + /* Abort ATIO if CTIO sending status has failed. */ + if ((done_ccb->ccb_h.status & CAM_STATUS_MASK) != + CAM_REQ_CMP) { + done_ccb->ccb_h.func_code = XPT_ABORT; + done_ccb->cab.abort_ccb = (union ccb *)atio; + xpt_action(done_ccb); + } + softc->ccbs_freed++; xpt_release_ccb(done_ccb); ctlfe_requeue_ccb(periph, (union ccb *)atio, From owner-svn-src-all@freebsd.org Mon Mar 6 06:30:29 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 39974CFAE37; Mon, 6 Mar 2017 06:30:29 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F139D17CA; Mon, 6 Mar 2017 06:30:28 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266URI9095920; Mon, 6 Mar 2017 06:30:27 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266URdG095919; Mon, 6 Mar 2017 06:30:27 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060630.v266URdG095919@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:30:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314746 - stable/11/sys/dev/isp X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:30:29 -0000 Author: mav Date: Mon Mar 6 06:30:27 2017 New Revision: 314746 URL: https://svnweb.freebsd.org/changeset/base/314746 Log: MFC r314208: Respecting r314204 tighten ATIO cleanup requirements. Every ATIO must complete with either successfully sent status or XPT_ABORT. Modified: stable/11/sys/dev/isp/isp_freebsd.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:29:42 2017 (r314745) +++ stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:30:27 2017 (r314746) @@ -2289,6 +2289,8 @@ isp_handle_platform_ctio(ispsoftc_t *isp return; } if (ct->ct_nphdl == CT_HBA_RESET) { + sentstatus = (ccb->ccb_h.flags & CAM_SEND_STATUS) && + (atp->sendst == 0); failure = CAM_UNREC_HBA_ERROR; } else { sentstatus = ct->ct_flags & CT7_SENDSTATUS; @@ -2311,6 +2313,8 @@ isp_handle_platform_ctio(ispsoftc_t *isp return; } if (ct->ct_status == CT_HBA_RESET) { + sentstatus = (ccb->ccb_h.flags & CAM_SEND_STATUS) && + (atp->sendst == 0); failure = CAM_UNREC_HBA_ERROR; } else { sentstatus = ct->ct_flags & CT2_SENDSTATUS; @@ -2356,9 +2360,10 @@ isp_handle_platform_ctio(ispsoftc_t *isp } /* - * If we sent status or error happened, we are done with this ATIO. + * We are done with this ATIO if we successfully sent status. + * In all other cases expect either another CTIO or XPT_ABORT. */ - if (sentstatus || !ok) + if (ok && sentstatus) isp_put_atpd(isp, bus, atp); /* From owner-svn-src-all@freebsd.org Mon Mar 6 06:30:57 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2D720CFAEB4; Mon, 6 Mar 2017 06:30:57 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D1EC5196C; Mon, 6 Mar 2017 06:30:56 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266UtUL096719; Mon, 6 Mar 2017 06:30:55 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266UtO9096718; Mon, 6 Mar 2017 06:30:55 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060630.v266UtO9096718@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:30:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314747 - stable/10/sys/dev/isp X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:30:57 -0000 Author: mav Date: Mon Mar 6 06:30:55 2017 New Revision: 314747 URL: https://svnweb.freebsd.org/changeset/base/314747 Log: MFC r314208: Respecting r314204 tighten ATIO cleanup requirements. Every ATIO must complete with either successfully sent status or XPT_ABORT. Modified: stable/10/sys/dev/isp/isp_freebsd.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:30:27 2017 (r314746) +++ stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:30:55 2017 (r314747) @@ -2289,6 +2289,8 @@ isp_handle_platform_ctio(ispsoftc_t *isp return; } if (ct->ct_nphdl == CT_HBA_RESET) { + sentstatus = (ccb->ccb_h.flags & CAM_SEND_STATUS) && + (atp->sendst == 0); failure = CAM_UNREC_HBA_ERROR; } else { sentstatus = ct->ct_flags & CT7_SENDSTATUS; @@ -2311,6 +2313,8 @@ isp_handle_platform_ctio(ispsoftc_t *isp return; } if (ct->ct_status == CT_HBA_RESET) { + sentstatus = (ccb->ccb_h.flags & CAM_SEND_STATUS) && + (atp->sendst == 0); failure = CAM_UNREC_HBA_ERROR; } else { sentstatus = ct->ct_flags & CT2_SENDSTATUS; @@ -2356,9 +2360,10 @@ isp_handle_platform_ctio(ispsoftc_t *isp } /* - * If we sent status or error happened, we are done with this ATIO. + * We are done with this ATIO if we successfully sent status. + * In all other cases expect either another CTIO or XPT_ABORT. */ - if (sentstatus || !ok) + if (ok && sentstatus) isp_put_atpd(isp, bus, atp); /* From owner-svn-src-all@freebsd.org Mon Mar 6 06:31:43 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 79FD6CF80A4; Mon, 6 Mar 2017 06:31:43 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3569F1B98; Mon, 6 Mar 2017 06:31:43 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266Vggt096808; Mon, 6 Mar 2017 06:31:42 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266VgYo096807; Mon, 6 Mar 2017 06:31:42 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060631.v266VgYo096807@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:31:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314748 - stable/11/sys/cam/ctl X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:31:43 -0000 Author: mav Date: Mon Mar 6 06:31:42 2017 New Revision: 314748 URL: https://svnweb.freebsd.org/changeset/base/314748 Log: MFC r314246: Improve CAM target frontend reference counting. Before this change it was possible to trigger some use-after-free panics by disabling LUNs/ports under heavy load. Modified: stable/11/sys/cam/ctl/scsi_ctl.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:30:55 2017 (r314747) +++ stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:31:42 2017 (r314748) @@ -53,6 +53,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include @@ -103,15 +104,11 @@ struct ctlfe_lun_softc { struct ctlfe_softc *parent_softc; struct cam_periph *periph; ctlfe_lun_flags flags; - uint64_t ccbs_alloced; - uint64_t ccbs_freed; - uint64_t ctios_sent; - uint64_t ctios_returned; - uint64_t atios_alloced; - uint64_t atios_freed; - uint64_t inots_alloced; - uint64_t inots_freed; - /* bus_dma_tag_t dma_tag; */ + int ctios_sent; /* Number of active CTIOs */ + int refcount; /* Number of active xpt_action() */ + int atios_alloced; /* Number of ATIOs not freed */ + int inots_alloced; /* Number of INOTs not freed */ + struct task refdrain_task; TAILQ_HEAD(, ccb_hdr) work_queue; STAILQ_ENTRY(ctlfe_lun_softc) links; }; @@ -683,18 +680,14 @@ ctlfecleanup(struct cam_periph *periph) softc = (struct ctlfe_lun_softc *)periph->softc; - KASSERT(softc->ccbs_freed == softc->ccbs_alloced, ("%s: " - "ccbs_freed %ju != ccbs_alloced %ju", __func__, - softc->ccbs_freed, softc->ccbs_alloced)); - KASSERT(softc->ctios_returned == softc->ctios_sent, ("%s: " - "ctios_returned %ju != ctios_sent %ju", __func__, - softc->ctios_returned, softc->ctios_sent)); - KASSERT(softc->atios_freed == softc->atios_alloced, ("%s: " - "atios_freed %ju != atios_alloced %ju", __func__, - softc->atios_freed, softc->atios_alloced)); - KASSERT(softc->inots_freed == softc->inots_alloced, ("%s: " - "inots_freed %ju != inots_alloced %ju", __func__, - softc->inots_freed, softc->inots_alloced)); + KASSERT(softc->ctios_sent == 0, ("%s: ctios_sent %d != 0", + __func__, softc->ctios_sent)); + KASSERT(softc->refcount == 0, ("%s: refcount %d != 0", + __func__, softc->refcount)); + KASSERT(softc->atios_alloced == 0, ("%s: atios_alloced %d != 0", + __func__, softc->atios_alloced)); + KASSERT(softc->inots_alloced == 0, ("%s: inots_alloced %d != 0", + __func__, softc->inots_alloced)); free(softc, M_CTLFE); } @@ -810,12 +803,10 @@ ctlfestart(struct cam_periph *periph, un uint8_t scsi_status; softc = (struct ctlfe_lun_softc *)periph->softc; - softc->ccbs_alloced++; next: ccb_h = TAILQ_FIRST(&softc->work_queue); if (ccb_h == NULL) { - softc->ccbs_freed++; xpt_release_ccb(start_ccb); return; } @@ -937,16 +928,32 @@ next: io->io_hdr.flags &= ~(CTL_FLAG_DMA_QUEUED | CTL_FLAG_STATUS_QUEUED); softc->ctios_sent++; - + softc->refcount++; cam_periph_unlock(periph); xpt_action(start_ccb); cam_periph_lock(periph); + softc->refcount--; /* * If we still have work to do, ask for another CCB. */ if (!TAILQ_EMPTY(&softc->work_queue)) - xpt_schedule(periph, /*priority*/ 1); + xpt_schedule(periph, CAM_PRIORITY_NORMAL); +} + +static void +ctlfe_drain(void *context, int pending) +{ + struct cam_periph *periph = context; + struct ctlfe_lun_softc *softc = periph->softc; + + cam_periph_lock(periph); + while (softc->refcount != 0) { + cam_periph_sleep(periph, &softc->refcount, PRIBIO, + "ctlfe_drain", 1); + } + cam_periph_unlock(periph); + cam_periph_release(periph); } static void @@ -961,13 +968,13 @@ ctlfe_free_ccb(struct cam_periph *periph switch (ccb->ccb_h.func_code) { case XPT_ACCEPT_TARGET_IO: - softc->atios_freed++; + softc->atios_alloced--; cmd_info = PRIV_INFO(io); free(cmd_info, M_CTLFE); break; case XPT_IMMEDIATE_NOTIFY: case XPT_NOTIFY_ACKNOWLEDGE: - softc->inots_freed++; + softc->inots_alloced--; break; default: break; @@ -976,21 +983,24 @@ ctlfe_free_ccb(struct cam_periph *periph ctl_free_io(io); free(ccb, M_CTLFE); - KASSERT(softc->atios_freed <= softc->atios_alloced, ("%s: " - "atios_freed %ju > atios_alloced %ju", __func__, - softc->atios_freed, softc->atios_alloced)); - KASSERT(softc->inots_freed <= softc->inots_alloced, ("%s: " - "inots_freed %ju > inots_alloced %ju", __func__, - softc->inots_freed, softc->inots_alloced)); + KASSERT(softc->atios_alloced >= 0, ("%s: atios_alloced %d < 0", + __func__, softc->atios_alloced)); + KASSERT(softc->inots_alloced >= 0, ("%s: inots_alloced %d < 0", + __func__, softc->inots_alloced)); /* * If we have received all of our CCBs, we can release our * reference on the peripheral driver. It will probably go away * now. */ - if ((softc->atios_freed == softc->atios_alloced) - && (softc->inots_freed == softc->inots_alloced)) { - cam_periph_release_locked(periph); + if (softc->atios_alloced == 0 && softc->inots_alloced == 0) { + if (softc->refcount == 0) { + cam_periph_release_locked(periph); + } else { + TASK_INIT(&softc->refdrain_task, 0, ctlfe_drain, periph); + taskqueue_enqueue(taskqueue_thread, + &softc->refdrain_task); + } } } @@ -1216,7 +1226,7 @@ ctlfedone(struct cam_periph *periph, uni atio = (struct ccb_accept_tio *)done_ccb->ccb_h.ccb_atio; io = (union ctl_io *)atio->ccb_h.io_ptr; - softc->ctios_returned++; + softc->ctios_sent--; #ifdef CTLFEDEBUG printf("%s: got XPT_CONT_TARGET_IO tag %#x flags %#x\n", __func__, atio->tag_id, done_ccb->ccb_h.flags); @@ -1252,11 +1262,10 @@ ctlfedone(struct cam_periph *periph, uni io->scsiio.ext_data_filled = srr_off; io->scsiio.io_hdr.status = CTL_STATUS_NONE; io->io_hdr.flags |= CTL_FLAG_DMA_QUEUED; - softc->ccbs_freed++; xpt_release_ccb(done_ccb); TAILQ_INSERT_HEAD(&softc->work_queue, &atio->ccb_h, periph_links.tqe); - xpt_schedule(periph, /*priority*/ 1); + xpt_schedule(periph, CAM_PRIORITY_NORMAL); break; } @@ -1267,7 +1276,6 @@ ctlfedone(struct cam_periph *periph, uni * should work. */ if (srr && (io->io_hdr.flags & CTL_FLAG_DMA_INPROG) == 0) { - softc->ccbs_freed++; xpt_release_ccb(done_ccb); if (ctlfe_adjust_cdb(atio, srr_off) == 0) { done_ccb = (union ccb *)atio; @@ -1296,7 +1304,6 @@ ctlfedone(struct cam_periph *periph, uni xpt_action(done_ccb); } - softc->ccbs_freed++; xpt_release_ccb(done_ccb); ctlfe_requeue_ccb(periph, (union ccb *)atio, /* unlock */1); @@ -1395,7 +1402,6 @@ ctlfedone(struct cam_periph *periph, uni * Release the CTIO. The ATIO will be sent back * down to the SIM once we send status. */ - softc->ccbs_freed++; xpt_release_ccb(done_ccb); mtx_unlock(mtx); @@ -1929,16 +1935,8 @@ ctlfe_dump_queue(struct ctlfe_lun_softc } } - xpt_print(periph->path, "%d requests total waiting for CCBs\n", - num_items); - xpt_print(periph->path, "%ju CCBs outstanding (%ju allocated, %ju " - "freed)\n", (uintmax_t)(softc->ccbs_alloced - - softc->ccbs_freed), (uintmax_t)softc->ccbs_alloced, - (uintmax_t)softc->ccbs_freed); - xpt_print(periph->path, "%ju CTIOs outstanding (%ju sent, %ju " - "returned\n", (uintmax_t)(softc->ctios_sent - - softc->ctios_returned), softc->ctios_sent, - softc->ctios_returned); + xpt_print(periph->path, "%d requests waiting for CCBs\n", num_items); + xpt_print(periph->path, "%d CTIOs outstanding\n", softc->ctios_sent); } /* @@ -1966,7 +1964,7 @@ ctlfe_datamove(union ctl_io *io) io->io_hdr.flags |= CTL_FLAG_STATUS_QUEUED; TAILQ_INSERT_TAIL(&softc->work_queue, &ccb->ccb_h, periph_links.tqe); - xpt_schedule(periph, /*priority*/ 1); + xpt_schedule(periph, CAM_PRIORITY_NORMAL); cam_periph_unlock(periph); } @@ -2019,7 +2017,7 @@ ctlfe_done(union ctl_io *io) io->io_hdr.flags |= CTL_FLAG_STATUS_QUEUED; TAILQ_INSERT_TAIL(&softc->work_queue, &ccb->ccb_h, periph_links.tqe); - xpt_schedule(periph, /*priority*/ 1); + xpt_schedule(periph, CAM_PRIORITY_NORMAL); } cam_periph_unlock(periph); From owner-svn-src-all@freebsd.org Mon Mar 6 06:32:15 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BA0EFCF81B8; Mon, 6 Mar 2017 06:32:15 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 74EB21E2F; Mon, 6 Mar 2017 06:32:15 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266WErg097546; Mon, 6 Mar 2017 06:32:14 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266WEYO097545; Mon, 6 Mar 2017 06:32:14 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060632.v266WEYO097545@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:32:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314749 - stable/10/sys/cam/ctl X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:32:15 -0000 Author: mav Date: Mon Mar 6 06:32:14 2017 New Revision: 314749 URL: https://svnweb.freebsd.org/changeset/base/314749 Log: MFC r314246: Improve CAM target frontend reference counting. Before this change it was possible to trigger some use-after-free panics by disabling LUNs/ports under heavy load. Modified: stable/10/sys/cam/ctl/scsi_ctl.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:31:42 2017 (r314748) +++ stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:32:14 2017 (r314749) @@ -53,6 +53,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include @@ -103,15 +104,11 @@ struct ctlfe_lun_softc { struct ctlfe_softc *parent_softc; struct cam_periph *periph; ctlfe_lun_flags flags; - uint64_t ccbs_alloced; - uint64_t ccbs_freed; - uint64_t ctios_sent; - uint64_t ctios_returned; - uint64_t atios_alloced; - uint64_t atios_freed; - uint64_t inots_alloced; - uint64_t inots_freed; - /* bus_dma_tag_t dma_tag; */ + int ctios_sent; /* Number of active CTIOs */ + int refcount; /* Number of active xpt_action() */ + int atios_alloced; /* Number of ATIOs not freed */ + int inots_alloced; /* Number of INOTs not freed */ + struct task refdrain_task; TAILQ_HEAD(, ccb_hdr) work_queue; STAILQ_ENTRY(ctlfe_lun_softc) links; }; @@ -683,18 +680,14 @@ ctlfecleanup(struct cam_periph *periph) softc = (struct ctlfe_lun_softc *)periph->softc; - KASSERT(softc->ccbs_freed == softc->ccbs_alloced, ("%s: " - "ccbs_freed %ju != ccbs_alloced %ju", __func__, - softc->ccbs_freed, softc->ccbs_alloced)); - KASSERT(softc->ctios_returned == softc->ctios_sent, ("%s: " - "ctios_returned %ju != ctios_sent %ju", __func__, - softc->ctios_returned, softc->ctios_sent)); - KASSERT(softc->atios_freed == softc->atios_alloced, ("%s: " - "atios_freed %ju != atios_alloced %ju", __func__, - softc->atios_freed, softc->atios_alloced)); - KASSERT(softc->inots_freed == softc->inots_alloced, ("%s: " - "inots_freed %ju != inots_alloced %ju", __func__, - softc->inots_freed, softc->inots_alloced)); + KASSERT(softc->ctios_sent == 0, ("%s: ctios_sent %d != 0", + __func__, softc->ctios_sent)); + KASSERT(softc->refcount == 0, ("%s: refcount %d != 0", + __func__, softc->refcount)); + KASSERT(softc->atios_alloced == 0, ("%s: atios_alloced %d != 0", + __func__, softc->atios_alloced)); + KASSERT(softc->inots_alloced == 0, ("%s: inots_alloced %d != 0", + __func__, softc->inots_alloced)); free(softc, M_CTLFE); } @@ -810,12 +803,10 @@ ctlfestart(struct cam_periph *periph, un uint8_t scsi_status; softc = (struct ctlfe_lun_softc *)periph->softc; - softc->ccbs_alloced++; next: ccb_h = TAILQ_FIRST(&softc->work_queue); if (ccb_h == NULL) { - softc->ccbs_freed++; xpt_release_ccb(start_ccb); return; } @@ -937,16 +928,32 @@ next: io->io_hdr.flags &= ~(CTL_FLAG_DMA_QUEUED | CTL_FLAG_STATUS_QUEUED); softc->ctios_sent++; - + softc->refcount++; cam_periph_unlock(periph); xpt_action(start_ccb); cam_periph_lock(periph); + softc->refcount--; /* * If we still have work to do, ask for another CCB. */ if (!TAILQ_EMPTY(&softc->work_queue)) - xpt_schedule(periph, /*priority*/ 1); + xpt_schedule(periph, CAM_PRIORITY_NORMAL); +} + +static void +ctlfe_drain(void *context, int pending) +{ + struct cam_periph *periph = context; + struct ctlfe_lun_softc *softc = periph->softc; + + cam_periph_lock(periph); + while (softc->refcount != 0) { + cam_periph_sleep(periph, &softc->refcount, PRIBIO, + "ctlfe_drain", 1); + } + cam_periph_unlock(periph); + cam_periph_release(periph); } static void @@ -961,13 +968,13 @@ ctlfe_free_ccb(struct cam_periph *periph switch (ccb->ccb_h.func_code) { case XPT_ACCEPT_TARGET_IO: - softc->atios_freed++; + softc->atios_alloced--; cmd_info = PRIV_INFO(io); free(cmd_info, M_CTLFE); break; case XPT_IMMEDIATE_NOTIFY: case XPT_NOTIFY_ACKNOWLEDGE: - softc->inots_freed++; + softc->inots_alloced--; break; default: break; @@ -976,21 +983,24 @@ ctlfe_free_ccb(struct cam_periph *periph ctl_free_io(io); free(ccb, M_CTLFE); - KASSERT(softc->atios_freed <= softc->atios_alloced, ("%s: " - "atios_freed %ju > atios_alloced %ju", __func__, - softc->atios_freed, softc->atios_alloced)); - KASSERT(softc->inots_freed <= softc->inots_alloced, ("%s: " - "inots_freed %ju > inots_alloced %ju", __func__, - softc->inots_freed, softc->inots_alloced)); + KASSERT(softc->atios_alloced >= 0, ("%s: atios_alloced %d < 0", + __func__, softc->atios_alloced)); + KASSERT(softc->inots_alloced >= 0, ("%s: inots_alloced %d < 0", + __func__, softc->inots_alloced)); /* * If we have received all of our CCBs, we can release our * reference on the peripheral driver. It will probably go away * now. */ - if ((softc->atios_freed == softc->atios_alloced) - && (softc->inots_freed == softc->inots_alloced)) { - cam_periph_release_locked(periph); + if (softc->atios_alloced == 0 && softc->inots_alloced == 0) { + if (softc->refcount == 0) { + cam_periph_release_locked(periph); + } else { + TASK_INIT(&softc->refdrain_task, 0, ctlfe_drain, periph); + taskqueue_enqueue(taskqueue_thread, + &softc->refdrain_task); + } } } @@ -1216,7 +1226,7 @@ ctlfedone(struct cam_periph *periph, uni atio = (struct ccb_accept_tio *)done_ccb->ccb_h.ccb_atio; io = (union ctl_io *)atio->ccb_h.io_ptr; - softc->ctios_returned++; + softc->ctios_sent--; #ifdef CTLFEDEBUG printf("%s: got XPT_CONT_TARGET_IO tag %#x flags %#x\n", __func__, atio->tag_id, done_ccb->ccb_h.flags); @@ -1252,11 +1262,10 @@ ctlfedone(struct cam_periph *periph, uni io->scsiio.ext_data_filled = srr_off; io->scsiio.io_hdr.status = CTL_STATUS_NONE; io->io_hdr.flags |= CTL_FLAG_DMA_QUEUED; - softc->ccbs_freed++; xpt_release_ccb(done_ccb); TAILQ_INSERT_HEAD(&softc->work_queue, &atio->ccb_h, periph_links.tqe); - xpt_schedule(periph, /*priority*/ 1); + xpt_schedule(periph, CAM_PRIORITY_NORMAL); break; } @@ -1267,7 +1276,6 @@ ctlfedone(struct cam_periph *periph, uni * should work. */ if (srr && (io->io_hdr.flags & CTL_FLAG_DMA_INPROG) == 0) { - softc->ccbs_freed++; xpt_release_ccb(done_ccb); if (ctlfe_adjust_cdb(atio, srr_off) == 0) { done_ccb = (union ccb *)atio; @@ -1296,7 +1304,6 @@ ctlfedone(struct cam_periph *periph, uni xpt_action(done_ccb); } - softc->ccbs_freed++; xpt_release_ccb(done_ccb); ctlfe_requeue_ccb(periph, (union ccb *)atio, /* unlock */1); @@ -1395,7 +1402,6 @@ ctlfedone(struct cam_periph *periph, uni * Release the CTIO. The ATIO will be sent back * down to the SIM once we send status. */ - softc->ccbs_freed++; xpt_release_ccb(done_ccb); mtx_unlock(mtx); @@ -1928,16 +1934,8 @@ ctlfe_dump_queue(struct ctlfe_lun_softc } } - xpt_print(periph->path, "%d requests total waiting for CCBs\n", - num_items); - xpt_print(periph->path, "%ju CCBs outstanding (%ju allocated, %ju " - "freed)\n", (uintmax_t)(softc->ccbs_alloced - - softc->ccbs_freed), (uintmax_t)softc->ccbs_alloced, - (uintmax_t)softc->ccbs_freed); - xpt_print(periph->path, "%ju CTIOs outstanding (%ju sent, %ju " - "returned\n", (uintmax_t)(softc->ctios_sent - - softc->ctios_returned), softc->ctios_sent, - softc->ctios_returned); + xpt_print(periph->path, "%d requests waiting for CCBs\n", num_items); + xpt_print(periph->path, "%d CTIOs outstanding\n", softc->ctios_sent); } /* @@ -1965,7 +1963,7 @@ ctlfe_datamove(union ctl_io *io) io->io_hdr.flags |= CTL_FLAG_STATUS_QUEUED; TAILQ_INSERT_TAIL(&softc->work_queue, &ccb->ccb_h, periph_links.tqe); - xpt_schedule(periph, /*priority*/ 1); + xpt_schedule(periph, CAM_PRIORITY_NORMAL); cam_periph_unlock(periph); } @@ -2018,7 +2016,7 @@ ctlfe_done(union ctl_io *io) io->io_hdr.flags |= CTL_FLAG_STATUS_QUEUED; TAILQ_INSERT_TAIL(&softc->work_queue, &ccb->ccb_h, periph_links.tqe); - xpt_schedule(periph, /*priority*/ 1); + xpt_schedule(periph, CAM_PRIORITY_NORMAL); } cam_periph_unlock(periph); From owner-svn-src-all@freebsd.org Mon Mar 6 06:32:52 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4DFA0CF8272; Mon, 6 Mar 2017 06:32:52 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0F7621FAB; Mon, 6 Mar 2017 06:32:51 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266WpiJ099896; Mon, 6 Mar 2017 06:32:51 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266WpkZ099895; Mon, 6 Mar 2017 06:32:51 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060632.v266WpkZ099895@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:32:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314750 - stable/11/sys/cam/ctl X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:32:52 -0000 Author: mav Date: Mon Mar 6 06:32:50 2017 New Revision: 314750 URL: https://svnweb.freebsd.org/changeset/base/314750 Log: MFC r314247: Axe out some forever disabled questionable functionality. This code is complicated enough even in its base shape. Modified: stable/11/sys/cam/ctl/scsi_ctl.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:32:14 2017 (r314749) +++ stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:32:50 2017 (r314750) @@ -90,10 +90,6 @@ struct ctlfe_softc { STAILQ_HEAD(, ctlfe_softc) ctlfe_softc_list; struct mtx ctlfe_list_mtx; static char ctlfe_mtx_desc[] = "ctlfelist"; -#ifdef CTLFE_INIT_ENABLE -static int ctlfe_max_targets = 1; -static int ctlfe_num_targets = 0; -#endif typedef enum { CTLFE_LUN_NONE = 0x00, @@ -152,12 +148,9 @@ struct ctlfe_cmd_info { #define CTLFE_IN_PER_LUN 1024 /* - * Timeout (in seconds) on CTIO CCB allocation for doing a DMA or sending - * status to the initiator. The SIM is expected to have its own timeouts, - * so we're not putting this timeout around the CCB execution time. The - * SIM should timeout and let us know if it has an issue. + * Timeout (in seconds) on CTIO CCB doing DMA or sending status */ -#define CTLFE_DMA_TIMEOUT 60 +#define CTLFE_TIMEOUT 5 /* * Turn this on to enable extra debugging prints. @@ -166,15 +159,6 @@ struct ctlfe_cmd_info { #define CTLFE_DEBUG #endif -/* - * Use randomly assigned WWNN/WWPN values. This is to work around an issue - * in the FreeBSD initiator that makes it unable to rescan the target if - * the target gets rebooted and the WWNN/WWPN stay the same. - */ -#if 0 -#define RANDOM_WWNN -#endif - MALLOC_DEFINE(M_CTLFE, "CAM CTL FE", "CAM CTL FE interface"); #define io_ptr ppriv_ptr0 @@ -305,49 +289,6 @@ ctlfeasync(void *callback_arg, uint32_t break; } -#ifdef CTLFE_INIT_ENABLE - if (ctlfe_num_targets >= ctlfe_max_targets) { - union ccb *ccb; - - ccb = (union ccb *)malloc(sizeof(*ccb), M_TEMP, - M_NOWAIT | M_ZERO); - if (ccb == NULL) { - printf("%s: unable to malloc CCB!\n", __func__); - return; - } - xpt_setup_ccb(&ccb->ccb_h, path, CAM_PRIORITY_NONE); - - ccb->ccb_h.func_code = XPT_SET_SIM_KNOB; - ccb->knob.xport_specific.valid = KNOB_VALID_ROLE; - ccb->knob.xport_specific.fc.role = KNOB_ROLE_INITIATOR; - - xpt_action(ccb); - - if ((ccb->ccb_h.status & CAM_STATUS_MASK) != - CAM_REQ_CMP) { - printf("%s: SIM %s%d (path id %d) initiator " - "enable failed with status %#x\n", - __func__, cpi->dev_name, - cpi->unit_number, cpi->ccb_h.path_id, - ccb->ccb_h.status); - } else { - printf("%s: SIM %s%d (path id %d) initiator " - "enable succeeded\n", - __func__, cpi->dev_name, - cpi->unit_number, cpi->ccb_h.path_id); - } - - free(ccb, M_TEMP); - - break; - } else { - ctlfe_num_targets++; - } - - printf("%s: ctlfe_num_targets = %d\n", __func__, - ctlfe_num_targets); -#endif /* CTLFE_INIT_ENABLE */ - /* * We're in an interrupt context here, so we have to * use M_NOWAIT. Of course this means trouble if we @@ -385,7 +326,7 @@ ctlfeasync(void *callback_arg, uint32_t port->port_type = CTL_PORT_SCSI; /* XXX KDM what should the real number be here? */ - port->num_requested_ctl_io = 4096; + port->num_requested_ctl_io = CTLFE_REQ_CTL_IO; snprintf(softc->port_name, sizeof(softc->port_name), "%s%d", cpi->dev_name, cpi->unit_number); /* @@ -410,15 +351,7 @@ ctlfeasync(void *callback_arg, uint32_t port->max_targets = cpi->max_target; port->max_target_id = cpi->max_target; port->targ_port = -1; - - /* - * XXX KDM need to figure out whether we're the master or - * slave. - */ -#ifdef CTLFEDEBUG - printf("%s: calling ctl_port_register() for %s%d\n", - __func__, cpi->dev_name, cpi->unit_number); -#endif + retval = ctl_port_register(port); if (retval != 0) { printf("%s: ctl_port_register() failed with " @@ -920,7 +853,7 @@ next: scsi_status, /*data_ptr*/ data_ptr, /*dxfer_len*/ dxfer_len, - /*timeout*/ 5 * 1000); + /*timeout*/ CTLFE_TIMEOUT * 1000); start_ccb->ccb_h.flags |= CAM_UNLOCKED; start_ccb->ccb_h.ccb_atio = atio; if (io->io_hdr.flags & CTL_FLAG_DMA_QUEUED) @@ -1388,7 +1321,7 @@ ctlfedone(struct cam_periph *periph, uni 0, /*data_ptr*/ data_ptr, /*dxfer_len*/ dxfer_len, - /*timeout*/ 5 * 1000); + CTLFE_TIMEOUT * 1000); csio->ccb_h.flags |= CAM_UNLOCKED; csio->resid = 0; @@ -1568,9 +1501,6 @@ ctlfe_onoffline(void *arg, int online) */ if (online != 0) { if ((ccb->knob.xport_specific.valid & KNOB_VALID_ADDRESS) != 0){ -#ifdef RANDOM_WWNN - uint64_t random_bits; -#endif printf("%s: %s current WWNN %#jx\n", __func__, bus_softc->port_name, @@ -1579,45 +1509,6 @@ ctlfe_onoffline(void *arg, int online) bus_softc->port_name, ccb->knob.xport_specific.fc.wwpn); -#ifdef RANDOM_WWNN - arc4rand(&random_bits, sizeof(random_bits), 0); -#endif - - /* - * XXX KDM this is a bit of a kludge for now. We - * take the current WWNN/WWPN from the card, and - * replace the company identifier and the NL-Port - * indicator and the port number (for the WWPN). - * This should be replaced later with ddb_GetWWNN, - * or possibly a more centralized scheme. (It - * would be nice to have the WWNN/WWPN for each - * port stored in the ctl_port structure.) - */ -#ifdef RANDOM_WWNN - ccb->knob.xport_specific.fc.wwnn = - (random_bits & - 0x0000000fffffff00ULL) | - /* Company ID */ 0x5000ED5000000000ULL | - /* NL-Port */ 0x0300; - ccb->knob.xport_specific.fc.wwpn = - (random_bits & - 0x0000000fffffff00ULL) | - /* Company ID */ 0x5000ED5000000000ULL | - /* NL-Port */ 0x3000 | - /* Port Num */ (bus_softc->port.targ_port & 0xff); - - /* - * This is a bit of an API break/reversal, but if - * we're doing the random WWNN that's a little - * different anyway. So record what we're actually - * using with the frontend code so it's reported - * accurately. - */ - ctl_port_set_wwns(&bus_softc->port, - true, ccb->knob.xport_specific.fc.wwnn, - true, ccb->knob.xport_specific.fc.wwpn); - set_wwnn = 1; -#else /* RANDOM_WWNN */ /* * If the user has specified a WWNN/WWPN, send them * down to the SIM. Otherwise, record what the SIM @@ -1643,7 +1534,6 @@ ctlfe_onoffline(void *arg, int online) false, 0, true, ccb->knob.xport_specific.fc.wwpn); } -#endif /* RANDOM_WWNN */ if (set_wwnn != 0) { From owner-svn-src-all@freebsd.org Mon Mar 6 06:33:20 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 85555CF82E6; Mon, 6 Mar 2017 06:33:20 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C437110E8; Mon, 6 Mar 2017 06:33:19 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266XICa099989; Mon, 6 Mar 2017 06:33:18 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266XIaA099988; Mon, 6 Mar 2017 06:33:18 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060633.v266XIaA099988@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:33:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314751 - stable/10/sys/cam/ctl X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:33:20 -0000 Author: mav Date: Mon Mar 6 06:33:18 2017 New Revision: 314751 URL: https://svnweb.freebsd.org/changeset/base/314751 Log: MFC r314247: Axe out some forever disabled questionable functionality. This code is complicated enough even in its base shape. Modified: stable/10/sys/cam/ctl/scsi_ctl.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:32:50 2017 (r314750) +++ stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:33:18 2017 (r314751) @@ -90,10 +90,6 @@ struct ctlfe_softc { STAILQ_HEAD(, ctlfe_softc) ctlfe_softc_list; struct mtx ctlfe_list_mtx; static char ctlfe_mtx_desc[] = "ctlfelist"; -#ifdef CTLFE_INIT_ENABLE -static int ctlfe_max_targets = 1; -static int ctlfe_num_targets = 0; -#endif typedef enum { CTLFE_LUN_NONE = 0x00, @@ -152,12 +148,9 @@ struct ctlfe_cmd_info { #define CTLFE_IN_PER_LUN 1024 /* - * Timeout (in seconds) on CTIO CCB allocation for doing a DMA or sending - * status to the initiator. The SIM is expected to have its own timeouts, - * so we're not putting this timeout around the CCB execution time. The - * SIM should timeout and let us know if it has an issue. + * Timeout (in seconds) on CTIO CCB doing DMA or sending status */ -#define CTLFE_DMA_TIMEOUT 60 +#define CTLFE_TIMEOUT 5 /* * Turn this on to enable extra debugging prints. @@ -166,15 +159,6 @@ struct ctlfe_cmd_info { #define CTLFE_DEBUG #endif -/* - * Use randomly assigned WWNN/WWPN values. This is to work around an issue - * in the FreeBSD initiator that makes it unable to rescan the target if - * the target gets rebooted and the WWNN/WWPN stay the same. - */ -#if 0 -#define RANDOM_WWNN -#endif - MALLOC_DEFINE(M_CTLFE, "CAM CTL FE", "CAM CTL FE interface"); #define io_ptr ppriv_ptr0 @@ -305,49 +289,6 @@ ctlfeasync(void *callback_arg, uint32_t break; } -#ifdef CTLFE_INIT_ENABLE - if (ctlfe_num_targets >= ctlfe_max_targets) { - union ccb *ccb; - - ccb = (union ccb *)malloc(sizeof(*ccb), M_TEMP, - M_NOWAIT | M_ZERO); - if (ccb == NULL) { - printf("%s: unable to malloc CCB!\n", __func__); - return; - } - xpt_setup_ccb(&ccb->ccb_h, path, CAM_PRIORITY_NONE); - - ccb->ccb_h.func_code = XPT_SET_SIM_KNOB; - ccb->knob.xport_specific.valid = KNOB_VALID_ROLE; - ccb->knob.xport_specific.fc.role = KNOB_ROLE_INITIATOR; - - xpt_action(ccb); - - if ((ccb->ccb_h.status & CAM_STATUS_MASK) != - CAM_REQ_CMP) { - printf("%s: SIM %s%d (path id %d) initiator " - "enable failed with status %#x\n", - __func__, cpi->dev_name, - cpi->unit_number, cpi->ccb_h.path_id, - ccb->ccb_h.status); - } else { - printf("%s: SIM %s%d (path id %d) initiator " - "enable succeeded\n", - __func__, cpi->dev_name, - cpi->unit_number, cpi->ccb_h.path_id); - } - - free(ccb, M_TEMP); - - break; - } else { - ctlfe_num_targets++; - } - - printf("%s: ctlfe_num_targets = %d\n", __func__, - ctlfe_num_targets); -#endif /* CTLFE_INIT_ENABLE */ - /* * We're in an interrupt context here, so we have to * use M_NOWAIT. Of course this means trouble if we @@ -385,7 +326,7 @@ ctlfeasync(void *callback_arg, uint32_t port->port_type = CTL_PORT_SCSI; /* XXX KDM what should the real number be here? */ - port->num_requested_ctl_io = 4096; + port->num_requested_ctl_io = CTLFE_REQ_CTL_IO; snprintf(softc->port_name, sizeof(softc->port_name), "%s%d", cpi->dev_name, cpi->unit_number); /* @@ -410,15 +351,7 @@ ctlfeasync(void *callback_arg, uint32_t port->max_targets = cpi->max_target; port->max_target_id = cpi->max_target; port->targ_port = -1; - - /* - * XXX KDM need to figure out whether we're the master or - * slave. - */ -#ifdef CTLFEDEBUG - printf("%s: calling ctl_port_register() for %s%d\n", - __func__, cpi->dev_name, cpi->unit_number); -#endif + retval = ctl_port_register(port); if (retval != 0) { printf("%s: ctl_port_register() failed with " @@ -920,7 +853,7 @@ next: scsi_status, /*data_ptr*/ data_ptr, /*dxfer_len*/ dxfer_len, - /*timeout*/ 5 * 1000); + /*timeout*/ CTLFE_TIMEOUT * 1000); start_ccb->ccb_h.flags |= CAM_UNLOCKED; start_ccb->ccb_h.ccb_atio = atio; if (io->io_hdr.flags & CTL_FLAG_DMA_QUEUED) @@ -1388,7 +1321,7 @@ ctlfedone(struct cam_periph *periph, uni 0, /*data_ptr*/ data_ptr, /*dxfer_len*/ dxfer_len, - /*timeout*/ 5 * 1000); + CTLFE_TIMEOUT * 1000); csio->ccb_h.flags |= CAM_UNLOCKED; csio->resid = 0; @@ -1567,9 +1500,6 @@ ctlfe_onoffline(void *arg, int online) */ if (online != 0) { if ((ccb->knob.xport_specific.valid & KNOB_VALID_ADDRESS) != 0){ -#ifdef RANDOM_WWNN - uint64_t random_bits; -#endif printf("%s: %s current WWNN %#jx\n", __func__, bus_softc->port_name, @@ -1578,45 +1508,6 @@ ctlfe_onoffline(void *arg, int online) bus_softc->port_name, ccb->knob.xport_specific.fc.wwpn); -#ifdef RANDOM_WWNN - arc4rand(&random_bits, sizeof(random_bits), 0); -#endif - - /* - * XXX KDM this is a bit of a kludge for now. We - * take the current WWNN/WWPN from the card, and - * replace the company identifier and the NL-Port - * indicator and the port number (for the WWPN). - * This should be replaced later with ddb_GetWWNN, - * or possibly a more centralized scheme. (It - * would be nice to have the WWNN/WWPN for each - * port stored in the ctl_port structure.) - */ -#ifdef RANDOM_WWNN - ccb->knob.xport_specific.fc.wwnn = - (random_bits & - 0x0000000fffffff00ULL) | - /* Company ID */ 0x5000ED5000000000ULL | - /* NL-Port */ 0x0300; - ccb->knob.xport_specific.fc.wwpn = - (random_bits & - 0x0000000fffffff00ULL) | - /* Company ID */ 0x5000ED5000000000ULL | - /* NL-Port */ 0x3000 | - /* Port Num */ (bus_softc->port.targ_port & 0xff); - - /* - * This is a bit of an API break/reversal, but if - * we're doing the random WWNN that's a little - * different anyway. So record what we're actually - * using with the frontend code so it's reported - * accurately. - */ - ctl_port_set_wwns(&bus_softc->port, - true, ccb->knob.xport_specific.fc.wwnn, - true, ccb->knob.xport_specific.fc.wwpn); - set_wwnn = 1; -#else /* RANDOM_WWNN */ /* * If the user has specified a WWNN/WWPN, send them * down to the SIM. Otherwise, record what the SIM @@ -1642,7 +1533,6 @@ ctlfe_onoffline(void *arg, int online) false, 0, true, ccb->knob.xport_specific.fc.wwpn); } -#endif /* RANDOM_WWNN */ if (set_wwnn != 0) { From owner-svn-src-all@freebsd.org Mon Mar 6 06:35:04 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F3E2FCF844B; Mon, 6 Mar 2017 06:35:03 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B5014128D; Mon, 6 Mar 2017 06:35:03 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266Z21t000227; Mon, 6 Mar 2017 06:35:02 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266Z2rA000224; Mon, 6 Mar 2017 06:35:02 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060635.v266Z2rA000224@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:35:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314752 - stable/11/sys/cam/ctl X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:35:04 -0000 Author: mav Date: Mon Mar 6 06:35:02 2017 New Revision: 314752 URL: https://svnweb.freebsd.org/changeset/base/314752 Log: MFC r314255: Reenable CTL_WITH_CA, optimizing it for lower memory usage. This code was disabled due to its high memory usage. But now we need this functionality for cfumass(4) frontend, since USB MS BBB transport does not support autosense. Modified: stable/11/sys/cam/ctl/ctl.c stable/11/sys/cam/ctl/ctl_private.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/ctl/ctl.c ============================================================================== --- stable/11/sys/cam/ctl/ctl.c Mon Mar 6 06:33:18 2017 (r314751) +++ stable/11/sys/cam/ctl/ctl.c Mon Mar 6 06:35:02 2017 (r314752) @@ -2146,8 +2146,8 @@ ctl_add_initiator(struct ctl_port *port, port->wwpn_iid[iid].name); /* - * XXX KDM clear have_ca and ua_pending on each LUN for - * this initiator. + * XXX KDM clear pending_sense and pending_ua on each LUN + * for this initiator. */ } take: @@ -9145,7 +9145,7 @@ ctl_request_sense(struct ctl_scsiio *cts struct ctl_softc *softc = CTL_SOFTC(ctsio); struct ctl_lun *lun = CTL_LUN(ctsio); struct scsi_request_sense *cdb; - struct scsi_sense_data *sense_ptr; + struct scsi_sense_data *sense_ptr, *ps; uint32_t initidx; int have_error; u_int sense_len = SSD_FULL_SIZE; @@ -9201,15 +9201,17 @@ ctl_request_sense(struct ctl_scsiio *cts * Pending sense gets returned first, then pending unit attentions. */ mtx_lock(&lun->lun_lock); -#ifdef CTL_WITH_CA - if (ctl_is_set(lun->have_ca, initidx)) { + ps = lun->pending_sense[initidx / CTL_MAX_INIT_PER_PORT]; + if (ps != NULL) + ps += initidx % CTL_MAX_INIT_PER_PORT; + if (ps != NULL && ps->error_code != 0) { scsi_sense_data_type stored_format; /* * Check to see which sense format was used for the stored * sense data. */ - stored_format = scsi_sense_type(&lun->pending_sense[initidx]); + stored_format = scsi_sense_type(ps); /* * If the user requested a different sense format than the @@ -9224,23 +9226,17 @@ ctl_request_sense(struct ctl_scsiio *cts if ((stored_format == SSD_TYPE_FIXED) && (sense_format == SSD_TYPE_DESC)) ctl_sense_to_desc((struct scsi_sense_data_fixed *) - &lun->pending_sense[initidx], - (struct scsi_sense_data_desc *)sense_ptr); + ps, (struct scsi_sense_data_desc *)sense_ptr); else if ((stored_format == SSD_TYPE_DESC) && (sense_format == SSD_TYPE_FIXED)) ctl_sense_to_fixed((struct scsi_sense_data_desc *) - &lun->pending_sense[initidx], - (struct scsi_sense_data_fixed *)sense_ptr); + ps, (struct scsi_sense_data_fixed *)sense_ptr); else - memcpy(sense_ptr, &lun->pending_sense[initidx], - MIN(sizeof(*sense_ptr), - sizeof(lun->pending_sense[initidx]))); + memcpy(sense_ptr, ps, sizeof(*sense_ptr)); - ctl_clear_mask(lun->have_ca, initidx); + ps->error_code = 0; have_error = 1; - } else -#endif - if (have_error == 0) { + } else { ua_type = ctl_build_ua(lun, initidx, sense_ptr, &sense_len, sense_format); if (ua_type != CTL_UA_NONE) @@ -11357,17 +11353,19 @@ ctl_scsiio_precheck(struct ctl_softc *so initidx = ctl_get_initindex(&ctsio->io_hdr.nexus); -#ifdef CTL_WITH_CA /* * If we've got a request sense, it'll clear the contingent * allegiance condition. Otherwise, if we have a CA condition for * this initiator, clear it, because it sent down a command other * than request sense. */ - if ((ctsio->cdb[0] != REQUEST_SENSE) - && (ctl_is_set(lun->have_ca, initidx))) - ctl_clear_mask(lun->have_ca, initidx); -#endif + if (ctsio->cdb[0] != REQUEST_SENSE) { + struct scsi_sense_data *ps; + + ps = lun->pending_sense[initidx / CTL_MAX_INIT_PER_PORT]; + if (ps != NULL) + ps[initidx % CTL_MAX_INIT_PER_PORT].error_code = 0; + } /* * If the command has this flag set, it handles its own unit @@ -11705,10 +11703,10 @@ ctl_do_lun_reset(struct ctl_lun *lun, un */ lun->flags &= ~CTL_LUN_RESERVED; -#ifdef CTL_WITH_CA - for (i = 0; i < CTL_MAX_INITIATORS; i++) - ctl_clear_mask(lun->have_ca, i); -#endif + for (i = 0; i < CTL_MAX_PORTS; i++) { + free(lun->pending_sense[i], M_CTL); + lun->pending_sense[i] = NULL; + } lun->prevent_count = 0; if (lun->prevent) { for (i = 0; i < CTL_MAX_INITIATORS; i++) @@ -11834,6 +11832,7 @@ ctl_i_t_nexus_reset(union ctl_io *io) { struct ctl_softc *softc = CTL_SOFTC(io); struct ctl_lun *lun; + struct scsi_sense_data *ps; uint32_t initidx; if (!(io->io_hdr.flags & CTL_FLAG_FROM_OTHER_SC)) { @@ -11854,9 +11853,9 @@ ctl_i_t_nexus_reset(union ctl_io *io) mtx_lock(&lun->lun_lock); ctl_abort_tasks_lun(lun, io->io_hdr.nexus.targ_port, io->io_hdr.nexus.initid, 1); -#ifdef CTL_WITH_CA - ctl_clear_mask(lun->have_ca, initidx); -#endif + ps = lun->pending_sense[initidx / CTL_MAX_INIT_PER_PORT]; + if (ps != NULL) + ps[initidx % CTL_MAX_INIT_PER_PORT].error_code = 0; if ((lun->flags & CTL_LUN_RESERVED) && (lun->res_idx == initidx)) lun->flags &= ~CTL_LUN_RESERVED; if (lun->prevent && ctl_is_set(lun->prevent, initidx)) { @@ -13114,7 +13113,6 @@ bailout: fe_done(io); } -#ifdef CTL_WITH_CA /* * Front end should call this if it doesn't do autosense. When the request * sense comes back in from the initiator, we'll dequeue this and send it. @@ -13125,7 +13123,8 @@ ctl_queue_sense(union ctl_io *io) struct ctl_softc *softc = CTL_SOFTC(io); struct ctl_port *port = CTL_PORT(io); struct ctl_lun *lun; - uint32_t initidx, targ_lun; + struct scsi_sense_data *ps; + uint32_t initidx, p, targ_lun; CTL_DEBUG_PRINT(("ctl_queue_sense\n")); @@ -13148,26 +13147,29 @@ ctl_queue_sense(union ctl_io *io) mtx_lock(&lun->lun_lock); mtx_unlock(&softc->ctl_lock); - /* - * Already have CA set for this LUN...toss the sense information. - */ initidx = ctl_get_initindex(&io->io_hdr.nexus); - if (ctl_is_set(lun->have_ca, initidx)) { + p = initidx / CTL_MAX_INIT_PER_PORT; + if ((ps = lun->pending_sense[p]) == NULL) { mtx_unlock(&lun->lun_lock); - goto bailout; + ps = malloc(sizeof(*ps) * CTL_MAX_INIT_PER_PORT, M_CTL, + M_WAITOK | M_ZERO); + mtx_lock(&lun->lun_lock); + if (lun->pending_sense[p] == NULL) { + lun->pending_sense[p] = ps; + } else { + free(ps, M_CTL); + ps = lun->pending_sense[p]; + } } - - memcpy(&lun->pending_sense[initidx], &io->scsiio.sense_data, - MIN(sizeof(lun->pending_sense[initidx]), - sizeof(io->scsiio.sense_data))); - ctl_set_mask(lun->have_ca, initidx); + ps += initidx % CTL_MAX_INIT_PER_PORT; + memset(ps, 0, sizeof(*ps)); + memcpy(ps, &io->scsiio.sense_data, io->scsiio.sense_len); mtx_unlock(&lun->lun_lock); bailout: ctl_free_io(io); return (CTL_RETVAL_COMPLETE); } -#endif /* * Primary command inlet from frontend ports. All SCSI and task I/O Modified: stable/11/sys/cam/ctl/ctl_private.h ============================================================================== --- stable/11/sys/cam/ctl/ctl_private.h Mon Mar 6 06:33:18 2017 (r314751) +++ stable/11/sys/cam/ctl/ctl_private.h Mon Mar 6 06:35:02 2017 (r314752) @@ -390,10 +390,7 @@ struct ctl_lun { TAILQ_HEAD(ctl_ooaq, ctl_io_hdr) ooa_queue; TAILQ_HEAD(ctl_blockq,ctl_io_hdr) blocked_queue; STAILQ_ENTRY(ctl_lun) links; -#ifdef CTL_WITH_CA - uint32_t have_ca[CTL_MAX_INITIATORS >> 5]; - struct scsi_sense_data pending_sense[CTL_MAX_INITIATORS]; -#endif + struct scsi_sense_data *pending_sense[CTL_MAX_PORTS]; ctl_ua_type *pending_ua[CTL_MAX_PORTS]; uint8_t ua_tpt_info[8]; time_t lasttpt; From owner-svn-src-all@freebsd.org Mon Mar 6 06:35:34 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AFFF6CF84F7; Mon, 6 Mar 2017 06:35:34 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0174513DA; Mon, 6 Mar 2017 06:35:33 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266ZWgn000304; Mon, 6 Mar 2017 06:35:32 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266ZWKM000302; Mon, 6 Mar 2017 06:35:32 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060635.v266ZWKM000302@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:35:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314753 - stable/10/sys/cam/ctl X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:35:34 -0000 Author: mav Date: Mon Mar 6 06:35:32 2017 New Revision: 314753 URL: https://svnweb.freebsd.org/changeset/base/314753 Log: MFC r314255: Reenable CTL_WITH_CA, optimizing it for lower memory usage. This code was disabled due to its high memory usage. But now we need this functionality for cfumass(4) frontend, since USB MS BBB transport does not support autosense. Modified: stable/10/sys/cam/ctl/ctl.c stable/10/sys/cam/ctl/ctl_private.h Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cam/ctl/ctl.c ============================================================================== --- stable/10/sys/cam/ctl/ctl.c Mon Mar 6 06:35:02 2017 (r314752) +++ stable/10/sys/cam/ctl/ctl.c Mon Mar 6 06:35:32 2017 (r314753) @@ -2150,8 +2150,8 @@ ctl_add_initiator(struct ctl_port *port, port->wwpn_iid[iid].name); /* - * XXX KDM clear have_ca and ua_pending on each LUN for - * this initiator. + * XXX KDM clear pending_sense and pending_ua on each LUN + * for this initiator. */ } take: @@ -9136,7 +9136,7 @@ ctl_request_sense(struct ctl_scsiio *cts struct ctl_softc *softc = CTL_SOFTC(ctsio); struct ctl_lun *lun = CTL_LUN(ctsio); struct scsi_request_sense *cdb; - struct scsi_sense_data *sense_ptr; + struct scsi_sense_data *sense_ptr, *ps; uint32_t initidx; int have_error; u_int sense_len = SSD_FULL_SIZE; @@ -9192,15 +9192,17 @@ ctl_request_sense(struct ctl_scsiio *cts * Pending sense gets returned first, then pending unit attentions. */ mtx_lock(&lun->lun_lock); -#ifdef CTL_WITH_CA - if (ctl_is_set(lun->have_ca, initidx)) { + ps = lun->pending_sense[initidx / CTL_MAX_INIT_PER_PORT]; + if (ps != NULL) + ps += initidx % CTL_MAX_INIT_PER_PORT; + if (ps != NULL && ps->error_code != 0) { scsi_sense_data_type stored_format; /* * Check to see which sense format was used for the stored * sense data. */ - stored_format = scsi_sense_type(&lun->pending_sense[initidx]); + stored_format = scsi_sense_type(ps); /* * If the user requested a different sense format than the @@ -9215,23 +9217,17 @@ ctl_request_sense(struct ctl_scsiio *cts if ((stored_format == SSD_TYPE_FIXED) && (sense_format == SSD_TYPE_DESC)) ctl_sense_to_desc((struct scsi_sense_data_fixed *) - &lun->pending_sense[initidx], - (struct scsi_sense_data_desc *)sense_ptr); + ps, (struct scsi_sense_data_desc *)sense_ptr); else if ((stored_format == SSD_TYPE_DESC) && (sense_format == SSD_TYPE_FIXED)) ctl_sense_to_fixed((struct scsi_sense_data_desc *) - &lun->pending_sense[initidx], - (struct scsi_sense_data_fixed *)sense_ptr); + ps, (struct scsi_sense_data_fixed *)sense_ptr); else - memcpy(sense_ptr, &lun->pending_sense[initidx], - MIN(sizeof(*sense_ptr), - sizeof(lun->pending_sense[initidx]))); + memcpy(sense_ptr, ps, sizeof(*sense_ptr)); - ctl_clear_mask(lun->have_ca, initidx); + ps->error_code = 0; have_error = 1; - } else -#endif - if (have_error == 0) { + } else { ua_type = ctl_build_ua(lun, initidx, sense_ptr, &sense_len, sense_format); if (ua_type != CTL_UA_NONE) @@ -11348,17 +11344,19 @@ ctl_scsiio_precheck(struct ctl_softc *so initidx = ctl_get_initindex(&ctsio->io_hdr.nexus); -#ifdef CTL_WITH_CA /* * If we've got a request sense, it'll clear the contingent * allegiance condition. Otherwise, if we have a CA condition for * this initiator, clear it, because it sent down a command other * than request sense. */ - if ((ctsio->cdb[0] != REQUEST_SENSE) - && (ctl_is_set(lun->have_ca, initidx))) - ctl_clear_mask(lun->have_ca, initidx); -#endif + if (ctsio->cdb[0] != REQUEST_SENSE) { + struct scsi_sense_data *ps; + + ps = lun->pending_sense[initidx / CTL_MAX_INIT_PER_PORT]; + if (ps != NULL) + ps[initidx % CTL_MAX_INIT_PER_PORT].error_code = 0; + } /* * If the command has this flag set, it handles its own unit @@ -11696,10 +11694,10 @@ ctl_do_lun_reset(struct ctl_lun *lun, un */ lun->flags &= ~CTL_LUN_RESERVED; -#ifdef CTL_WITH_CA - for (i = 0; i < CTL_MAX_INITIATORS; i++) - ctl_clear_mask(lun->have_ca, i); -#endif + for (i = 0; i < CTL_MAX_PORTS; i++) { + free(lun->pending_sense[i], M_CTL); + lun->pending_sense[i] = NULL; + } lun->prevent_count = 0; if (lun->prevent) { for (i = 0; i < CTL_MAX_INITIATORS; i++) @@ -11825,6 +11823,7 @@ ctl_i_t_nexus_reset(union ctl_io *io) { struct ctl_softc *softc = CTL_SOFTC(io); struct ctl_lun *lun; + struct scsi_sense_data *ps; uint32_t initidx; if (!(io->io_hdr.flags & CTL_FLAG_FROM_OTHER_SC)) { @@ -11845,9 +11844,9 @@ ctl_i_t_nexus_reset(union ctl_io *io) mtx_lock(&lun->lun_lock); ctl_abort_tasks_lun(lun, io->io_hdr.nexus.targ_port, io->io_hdr.nexus.initid, 1); -#ifdef CTL_WITH_CA - ctl_clear_mask(lun->have_ca, initidx); -#endif + ps = lun->pending_sense[initidx / CTL_MAX_INIT_PER_PORT]; + if (ps != NULL) + ps[initidx % CTL_MAX_INIT_PER_PORT].error_code = 0; if ((lun->flags & CTL_LUN_RESERVED) && (lun->res_idx == initidx)) lun->flags &= ~CTL_LUN_RESERVED; if (lun->prevent && ctl_is_set(lun->prevent, initidx)) { @@ -13105,7 +13104,6 @@ bailout: fe_done(io); } -#ifdef CTL_WITH_CA /* * Front end should call this if it doesn't do autosense. When the request * sense comes back in from the initiator, we'll dequeue this and send it. @@ -13116,7 +13114,8 @@ ctl_queue_sense(union ctl_io *io) struct ctl_softc *softc = CTL_SOFTC(io); struct ctl_port *port = CTL_PORT(io); struct ctl_lun *lun; - uint32_t initidx, targ_lun; + struct scsi_sense_data *ps; + uint32_t initidx, p, targ_lun; CTL_DEBUG_PRINT(("ctl_queue_sense\n")); @@ -13139,26 +13138,29 @@ ctl_queue_sense(union ctl_io *io) mtx_lock(&lun->lun_lock); mtx_unlock(&softc->ctl_lock); - /* - * Already have CA set for this LUN...toss the sense information. - */ initidx = ctl_get_initindex(&io->io_hdr.nexus); - if (ctl_is_set(lun->have_ca, initidx)) { + p = initidx / CTL_MAX_INIT_PER_PORT; + if ((ps = lun->pending_sense[p]) == NULL) { mtx_unlock(&lun->lun_lock); - goto bailout; + ps = malloc(sizeof(*ps) * CTL_MAX_INIT_PER_PORT, M_CTL, + M_WAITOK | M_ZERO); + mtx_lock(&lun->lun_lock); + if (lun->pending_sense[p] == NULL) { + lun->pending_sense[p] = ps; + } else { + free(ps, M_CTL); + ps = lun->pending_sense[p]; + } } - - memcpy(&lun->pending_sense[initidx], &io->scsiio.sense_data, - MIN(sizeof(lun->pending_sense[initidx]), - sizeof(io->scsiio.sense_data))); - ctl_set_mask(lun->have_ca, initidx); + ps += initidx % CTL_MAX_INIT_PER_PORT; + memset(ps, 0, sizeof(*ps)); + memcpy(ps, &io->scsiio.sense_data, io->scsiio.sense_len); mtx_unlock(&lun->lun_lock); bailout: ctl_free_io(io); return (CTL_RETVAL_COMPLETE); } -#endif /* * Primary command inlet from frontend ports. All SCSI and task I/O Modified: stable/10/sys/cam/ctl/ctl_private.h ============================================================================== --- stable/10/sys/cam/ctl/ctl_private.h Mon Mar 6 06:35:02 2017 (r314752) +++ stable/10/sys/cam/ctl/ctl_private.h Mon Mar 6 06:35:32 2017 (r314753) @@ -390,10 +390,7 @@ struct ctl_lun { TAILQ_HEAD(ctl_ooaq, ctl_io_hdr) ooa_queue; TAILQ_HEAD(ctl_blockq,ctl_io_hdr) blocked_queue; STAILQ_ENTRY(ctl_lun) links; -#ifdef CTL_WITH_CA - uint32_t have_ca[CTL_MAX_INITIATORS >> 5]; - struct scsi_sense_data pending_sense[CTL_MAX_INITIATORS]; -#endif + struct scsi_sense_data *pending_sense[CTL_MAX_PORTS]; ctl_ua_type *pending_ua[CTL_MAX_PORTS]; uint8_t ua_tpt_info[8]; time_t lasttpt; From owner-svn-src-all@freebsd.org Mon Mar 6 06:36:17 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 83F70CF8664; Mon, 6 Mar 2017 06:36:17 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E5C06164E; Mon, 6 Mar 2017 06:36:16 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266aF8j000388; Mon, 6 Mar 2017 06:36:15 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266aF27000386; Mon, 6 Mar 2017 06:36:15 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060636.v266aF27000386@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:36:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314754 - stable/11/sys/cam/ctl X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:36:17 -0000 Author: mav Date: Mon Mar 6 06:36:15 2017 New Revision: 314754 URL: https://svnweb.freebsd.org/changeset/base/314754 Log: MFC r314257: Add reporting SAS protocol, in case we ever have one. Modified: stable/11/sys/cam/ctl/ctl.c stable/11/sys/cam/ctl/ctl_frontend.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/ctl/ctl.c ============================================================================== --- stable/11/sys/cam/ctl/ctl.c Mon Mar 6 06:35:32 2017 (r314753) +++ stable/11/sys/cam/ctl/ctl.c Mon Mar 6 06:36:15 2017 (r314754) @@ -9549,6 +9549,8 @@ ctl_inquiry_evpd_devid(struct ctl_scsiio if (port && port->port_type == CTL_PORT_FC) proto = SCSI_PROTO_FC << 4; + else if (port->port_type == CTL_PORT_SAS) + proto = SCSI_PROTO_SAS << 4; else if (port && port->port_type == CTL_PORT_ISCSI) proto = SCSI_PROTO_ISCSI << 4; else Modified: stable/11/sys/cam/ctl/ctl_frontend.c ============================================================================== --- stable/11/sys/cam/ctl/ctl_frontend.c Mon Mar 6 06:35:32 2017 (r314753) +++ stable/11/sys/cam/ctl/ctl_frontend.c Mon Mar 6 06:36:15 2017 (r314754) @@ -264,6 +264,8 @@ ctl_port_set_wwns(struct ctl_port *port, if (port->port_type == CTL_PORT_FC) proto = SCSI_PROTO_FC << 4; + else if (port->port_type == CTL_PORT_SAS) + proto = SCSI_PROTO_SAS << 4; else if (port->port_type == CTL_PORT_ISCSI) proto = SCSI_PROTO_ISCSI << 4; else From owner-svn-src-all@freebsd.org Mon Mar 6 06:36:46 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B7D6FCF875B; Mon, 6 Mar 2017 06:36:46 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 85CD317DB; Mon, 6 Mar 2017 06:36:46 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266ajpQ000460; Mon, 6 Mar 2017 06:36:45 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266aju2000458; Mon, 6 Mar 2017 06:36:45 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060636.v266aju2000458@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:36:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314755 - stable/10/sys/cam/ctl X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:36:46 -0000 Author: mav Date: Mon Mar 6 06:36:45 2017 New Revision: 314755 URL: https://svnweb.freebsd.org/changeset/base/314755 Log: MFC r314257: Add reporting SAS protocol, in case we ever have one. Modified: stable/10/sys/cam/ctl/ctl.c stable/10/sys/cam/ctl/ctl_frontend.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cam/ctl/ctl.c ============================================================================== --- stable/10/sys/cam/ctl/ctl.c Mon Mar 6 06:36:15 2017 (r314754) +++ stable/10/sys/cam/ctl/ctl.c Mon Mar 6 06:36:45 2017 (r314755) @@ -9540,6 +9540,8 @@ ctl_inquiry_evpd_devid(struct ctl_scsiio if (port && port->port_type == CTL_PORT_FC) proto = SCSI_PROTO_FC << 4; + else if (port->port_type == CTL_PORT_SAS) + proto = SCSI_PROTO_SAS << 4; else if (port && port->port_type == CTL_PORT_ISCSI) proto = SCSI_PROTO_ISCSI << 4; else Modified: stable/10/sys/cam/ctl/ctl_frontend.c ============================================================================== --- stable/10/sys/cam/ctl/ctl_frontend.c Mon Mar 6 06:36:15 2017 (r314754) +++ stable/10/sys/cam/ctl/ctl_frontend.c Mon Mar 6 06:36:45 2017 (r314755) @@ -264,6 +264,8 @@ ctl_port_set_wwns(struct ctl_port *port, if (port->port_type == CTL_PORT_FC) proto = SCSI_PROTO_FC << 4; + else if (port->port_type == CTL_PORT_SAS) + proto = SCSI_PROTO_SAS << 4; else if (port->port_type == CTL_PORT_ISCSI) proto = SCSI_PROTO_ISCSI << 4; else From owner-svn-src-all@freebsd.org Mon Mar 6 06:37:48 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EC15BCF88E0; Mon, 6 Mar 2017 06:37:48 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8D7AB1A07; Mon, 6 Mar 2017 06:37:45 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266bi4s000552; Mon, 6 Mar 2017 06:37:44 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266bi1U000549; Mon, 6 Mar 2017 06:37:44 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060637.v266bi1U000549@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:37:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314756 - in stable/11/sys: cam/ctl dev/isp X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:37:49 -0000 Author: mav Date: Mon Mar 6 06:37:44 2017 New Revision: 314756 URL: https://svnweb.freebsd.org/changeset/base/314756 Log: MFC r314299, r314300: Fix residual length reporting in target mode. This allows to properly handle cases when target wants to receive or send more data then initiator wants to send or receive. Previously in such cases isp(4) returned CAM_DATA_RUN_ERR, while now it returns resid > 0. Modified: stable/11/sys/cam/ctl/scsi_ctl.c stable/11/sys/dev/isp/isp_freebsd.c stable/11/sys/dev/isp/isp_target.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:36:45 2017 (r314755) +++ stable/11/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:37:44 2017 (r314756) @@ -1259,7 +1259,8 @@ ctlfedone(struct cam_periph *periph, uni */ switch (done_ccb->ccb_h.status & CAM_STATUS_MASK) { case CAM_REQ_CMP: - io->scsiio.kern_data_resid -= csio->dxfer_len; + io->scsiio.kern_data_resid -= + csio->dxfer_len - csio->resid; io->io_hdr.port_status = 0; break; default: @@ -1286,8 +1287,8 @@ ctlfedone(struct cam_periph *periph, uni * pieces, figure out where we are in the list, and * continue sending pieces if necessary. */ - if ((cmd_info->flags & CTLFE_CMD_PIECEWISE) - && (io->io_hdr.port_status == 0)) { + if ((cmd_info->flags & CTLFE_CMD_PIECEWISE) && + io->io_hdr.port_status == 0 && csio->resid == 0) { ccb_flags flags; uint8_t *data_ptr; uint32_t dxfer_len; Modified: stable/11/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:36:45 2017 (r314755) +++ stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:37:44 2017 (r314756) @@ -1316,13 +1316,24 @@ isp_target_start_ctio(ispsoftc_t *isp, u /* * Check for overflow */ - tmp = atp->bytes_xfered + atp->bytes_in_transit + xfrlen; - if (tmp > atp->orig_datalen) { - isp_prt(isp, ISP_LOGERR, "%s: [0x%x] data overflow by %u bytes", __func__, cso->tag_id, tmp - atp->orig_datalen); + tmp = atp->bytes_xfered + atp->bytes_in_transit; + if (xfrlen > 0 && tmp > atp->orig_datalen) { + isp_prt(isp, ISP_LOGERR, + "%s: [0x%x] data overflow by %u bytes", __func__, + cso->tag_id, tmp + xfrlen - atp->orig_datalen); ccb->ccb_h.status = CAM_DATA_RUN_ERR; xpt_done(ccb); continue; } + if (xfrlen > atp->orig_datalen - tmp) { + xfrlen = atp->orig_datalen - tmp; + if (xfrlen == 0 && !sendstatus) { + cso->resid = cso->dxfer_len; + ccb->ccb_h.status = CAM_REQ_CMP; + xpt_done(ccb); + continue; + } + } if (IS_24XX(isp)) { ct7_entry_t *cto = (ct7_entry_t *) local; @@ -1352,16 +1363,13 @@ isp_target_start_ctio(ispsoftc_t *isp, u cto->ct_flags |= CT7_SENDSTATUS | CT7_NO_DATA; resid = atp->orig_datalen - atp->bytes_xfered - atp->bytes_in_transit; if (sense_length <= MAXRESPLEN_24XX) { - if (resid < 0) { - cto->ct_resid = -resid; - } else if (resid > 0) { - cto->ct_resid = resid; - } cto->ct_flags |= CT7_FLAG_MODE1; cto->ct_scsi_status = cso->scsi_status; if (resid < 0) { + cto->ct_resid = -resid; cto->ct_scsi_status |= (FCP_RESID_OVERFLOW << 8); } else if (resid > 0) { + cto->ct_resid = resid; cto->ct_scsi_status |= (FCP_RESID_UNDERFLOW << 8); } if (fctape) { @@ -2238,10 +2246,10 @@ static void isp_handle_platform_ctio(ispsoftc_t *isp, void *arg) { union ccb *ccb; - int sentstatus = 0, ok = 0, notify_cam = 0, resid = 0, failure = 0; + int sentstatus = 0, ok = 0, notify_cam = 0, failure = 0; atio_private_data_t *atp = NULL; int bus; - uint32_t handle, moved_data = 0, data_requested; + uint32_t handle, data_requested, resid; handle = ((ct2_entry_t *)arg)->ct_syshandle; ccb = isp_find_xs(isp, handle); @@ -2250,7 +2258,7 @@ isp_handle_platform_ctio(ispsoftc_t *isp return; } isp_destroy_handle(isp, handle); - data_requested = PISP_PCMD(ccb)->datalen; + resid = data_requested = PISP_PCMD(ccb)->datalen; isp_free_pcmd(isp, ccb); if (isp->isp_nactive) { isp->isp_nactive--; @@ -2296,10 +2304,8 @@ isp_handle_platform_ctio(ispsoftc_t *isp sentstatus = ct->ct_flags & CT7_SENDSTATUS; ok = (ct->ct_nphdl == CT7_OK); notify_cam = (ct->ct_header.rqs_seqno & ATPD_SEQ_NOTIFY_CAM) != 0; - if ((ct->ct_flags & CT7_DATAMASK) != CT7_NO_DATA) { + if ((ct->ct_flags & CT7_DATAMASK) != CT7_NO_DATA) resid = ct->ct_resid; - moved_data = data_requested - resid; - } } isp_prt(isp, ok? ISP_LOGTDEBUG0 : ISP_LOGWARN, "%s: CTIO7[%x] seq %u nc %d sts 0x%x flg 0x%x sns %d resid %d %s", __func__, ct->ct_rxid, ATPD_GET_SEQNO(ct), notify_cam, ct->ct_nphdl, ct->ct_flags, (ccb->ccb_h.status & CAM_SENT_SENSE) != 0, resid, sentstatus? "FIN" : "MID"); @@ -2320,22 +2326,20 @@ isp_handle_platform_ctio(ispsoftc_t *isp sentstatus = ct->ct_flags & CT2_SENDSTATUS; ok = (ct->ct_status & ~QLTM_SVALID) == CT_OK; notify_cam = (ct->ct_header.rqs_seqno & ATPD_SEQ_NOTIFY_CAM) != 0; - if ((ct->ct_flags & CT2_DATAMASK) != CT2_NO_DATA) { + if ((ct->ct_flags & CT2_DATAMASK) != CT2_NO_DATA) resid = ct->ct_resid; - moved_data = data_requested - resid; - } } isp_prt(isp, ok? ISP_LOGTDEBUG0 : ISP_LOGWARN, "%s: CTIO2[%x] seq %u nc %d sts 0x%x flg 0x%x sns %d resid %d %s", __func__, ct->ct_rxid, ATPD_GET_SEQNO(ct), notify_cam, ct->ct_status, ct->ct_flags, (ccb->ccb_h.status & CAM_SENT_SENSE) != 0, resid, sentstatus? "FIN" : "MID"); } if (ok) { - if (moved_data) { - atp->bytes_xfered += moved_data; - ccb->csio.resid = atp->orig_datalen - atp->bytes_xfered - atp->bytes_in_transit; + if (data_requested > 0) { + atp->bytes_xfered += data_requested - resid; + ccb->csio.resid = ccb->csio.dxfer_len - + (data_requested - resid); } - if (sentstatus && (ccb->ccb_h.flags & CAM_SEND_SENSE)) { + if (sentstatus && (ccb->ccb_h.flags & CAM_SEND_SENSE)) ccb->ccb_h.status |= CAM_SENT_SENSE; - } ccb->ccb_h.status |= CAM_REQ_CMP; } else { notify_cam = 1; Modified: stable/11/sys/dev/isp/isp_target.c ============================================================================== --- stable/11/sys/dev/isp/isp_target.c Mon Mar 6 06:36:45 2017 (r314755) +++ stable/11/sys/dev/isp/isp_target.c Mon Mar 6 06:37:44 2017 (r314756) @@ -558,13 +558,9 @@ isp_endcmd(ispsoftc_t *isp, ...) } else { cto->ct_flags |= CT7_FLAG_MODE1 | CT7_SENDSTATUS; } - if (aep->at_cmnd.cdb_dl.sf.fcp_cmnd_dl) { + if (aep->at_cmnd.cdb_dl.sf.fcp_cmnd_dl != 0) { cto->ct_resid = aep->at_cmnd.cdb_dl.sf.fcp_cmnd_dl; - if (cto->ct_resid < 0) { - cto->ct_scsi_status |= (FCP_RESID_OVERFLOW << 8); - } else if (cto->ct_resid > 0) { - cto->ct_scsi_status |= (FCP_RESID_UNDERFLOW << 8); - } + cto->ct_scsi_status |= (FCP_RESID_UNDERFLOW << 8); } cto->ct_syshandle = hdl; } else { From owner-svn-src-all@freebsd.org Mon Mar 6 06:38:28 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 48412CF8998; Mon, 6 Mar 2017 06:38:28 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2046E1BA6; Mon, 6 Mar 2017 06:38:28 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266cRF2000647; Mon, 6 Mar 2017 06:38:27 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266cQFt000644; Mon, 6 Mar 2017 06:38:26 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060638.v266cQFt000644@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:38:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314757 - in stable/10/sys: cam/ctl dev/isp X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:38:28 -0000 Author: mav Date: Mon Mar 6 06:38:26 2017 New Revision: 314757 URL: https://svnweb.freebsd.org/changeset/base/314757 Log: MFC r314299, r314300: Fix residual length reporting in target mode. This allows to properly handle cases when target wants to receive or send more data then initiator wants to send or receive. Previously in such cases isp(4) returned CAM_DATA_RUN_ERR, while now it returns resid > 0. Modified: stable/10/sys/cam/ctl/scsi_ctl.c stable/10/sys/dev/isp/isp_freebsd.c stable/10/sys/dev/isp/isp_target.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cam/ctl/scsi_ctl.c ============================================================================== --- stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:37:44 2017 (r314756) +++ stable/10/sys/cam/ctl/scsi_ctl.c Mon Mar 6 06:38:26 2017 (r314757) @@ -1259,7 +1259,8 @@ ctlfedone(struct cam_periph *periph, uni */ switch (done_ccb->ccb_h.status & CAM_STATUS_MASK) { case CAM_REQ_CMP: - io->scsiio.kern_data_resid -= csio->dxfer_len; + io->scsiio.kern_data_resid -= + csio->dxfer_len - csio->resid; io->io_hdr.port_status = 0; break; default: @@ -1286,8 +1287,8 @@ ctlfedone(struct cam_periph *periph, uni * pieces, figure out where we are in the list, and * continue sending pieces if necessary. */ - if ((cmd_info->flags & CTLFE_CMD_PIECEWISE) - && (io->io_hdr.port_status == 0)) { + if ((cmd_info->flags & CTLFE_CMD_PIECEWISE) && + io->io_hdr.port_status == 0 && csio->resid == 0) { ccb_flags flags; uint8_t *data_ptr; uint32_t dxfer_len; Modified: stable/10/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:37:44 2017 (r314756) +++ stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:38:26 2017 (r314757) @@ -1316,13 +1316,24 @@ isp_target_start_ctio(ispsoftc_t *isp, u /* * Check for overflow */ - tmp = atp->bytes_xfered + atp->bytes_in_transit + xfrlen; - if (tmp > atp->orig_datalen) { - isp_prt(isp, ISP_LOGERR, "%s: [0x%x] data overflow by %u bytes", __func__, cso->tag_id, tmp - atp->orig_datalen); + tmp = atp->bytes_xfered + atp->bytes_in_transit; + if (xfrlen > 0 && tmp > atp->orig_datalen) { + isp_prt(isp, ISP_LOGERR, + "%s: [0x%x] data overflow by %u bytes", __func__, + cso->tag_id, tmp + xfrlen - atp->orig_datalen); ccb->ccb_h.status = CAM_DATA_RUN_ERR; xpt_done(ccb); continue; } + if (xfrlen > atp->orig_datalen - tmp) { + xfrlen = atp->orig_datalen - tmp; + if (xfrlen == 0 && !sendstatus) { + cso->resid = cso->dxfer_len; + ccb->ccb_h.status = CAM_REQ_CMP; + xpt_done(ccb); + continue; + } + } if (IS_24XX(isp)) { ct7_entry_t *cto = (ct7_entry_t *) local; @@ -1352,16 +1363,13 @@ isp_target_start_ctio(ispsoftc_t *isp, u cto->ct_flags |= CT7_SENDSTATUS | CT7_NO_DATA; resid = atp->orig_datalen - atp->bytes_xfered - atp->bytes_in_transit; if (sense_length <= MAXRESPLEN_24XX) { - if (resid < 0) { - cto->ct_resid = -resid; - } else if (resid > 0) { - cto->ct_resid = resid; - } cto->ct_flags |= CT7_FLAG_MODE1; cto->ct_scsi_status = cso->scsi_status; if (resid < 0) { + cto->ct_resid = -resid; cto->ct_scsi_status |= (FCP_RESID_OVERFLOW << 8); } else if (resid > 0) { + cto->ct_resid = resid; cto->ct_scsi_status |= (FCP_RESID_UNDERFLOW << 8); } if (fctape) { @@ -2238,10 +2246,10 @@ static void isp_handle_platform_ctio(ispsoftc_t *isp, void *arg) { union ccb *ccb; - int sentstatus = 0, ok = 0, notify_cam = 0, resid = 0, failure = 0; + int sentstatus = 0, ok = 0, notify_cam = 0, failure = 0; atio_private_data_t *atp = NULL; int bus; - uint32_t handle, moved_data = 0, data_requested; + uint32_t handle, data_requested, resid; handle = ((ct2_entry_t *)arg)->ct_syshandle; ccb = isp_find_xs(isp, handle); @@ -2250,7 +2258,7 @@ isp_handle_platform_ctio(ispsoftc_t *isp return; } isp_destroy_handle(isp, handle); - data_requested = PISP_PCMD(ccb)->datalen; + resid = data_requested = PISP_PCMD(ccb)->datalen; isp_free_pcmd(isp, ccb); if (isp->isp_nactive) { isp->isp_nactive--; @@ -2296,10 +2304,8 @@ isp_handle_platform_ctio(ispsoftc_t *isp sentstatus = ct->ct_flags & CT7_SENDSTATUS; ok = (ct->ct_nphdl == CT7_OK); notify_cam = (ct->ct_header.rqs_seqno & ATPD_SEQ_NOTIFY_CAM) != 0; - if ((ct->ct_flags & CT7_DATAMASK) != CT7_NO_DATA) { + if ((ct->ct_flags & CT7_DATAMASK) != CT7_NO_DATA) resid = ct->ct_resid; - moved_data = data_requested - resid; - } } isp_prt(isp, ok? ISP_LOGTDEBUG0 : ISP_LOGWARN, "%s: CTIO7[%x] seq %u nc %d sts 0x%x flg 0x%x sns %d resid %d %s", __func__, ct->ct_rxid, ATPD_GET_SEQNO(ct), notify_cam, ct->ct_nphdl, ct->ct_flags, (ccb->ccb_h.status & CAM_SENT_SENSE) != 0, resid, sentstatus? "FIN" : "MID"); @@ -2320,22 +2326,20 @@ isp_handle_platform_ctio(ispsoftc_t *isp sentstatus = ct->ct_flags & CT2_SENDSTATUS; ok = (ct->ct_status & ~QLTM_SVALID) == CT_OK; notify_cam = (ct->ct_header.rqs_seqno & ATPD_SEQ_NOTIFY_CAM) != 0; - if ((ct->ct_flags & CT2_DATAMASK) != CT2_NO_DATA) { + if ((ct->ct_flags & CT2_DATAMASK) != CT2_NO_DATA) resid = ct->ct_resid; - moved_data = data_requested - resid; - } } isp_prt(isp, ok? ISP_LOGTDEBUG0 : ISP_LOGWARN, "%s: CTIO2[%x] seq %u nc %d sts 0x%x flg 0x%x sns %d resid %d %s", __func__, ct->ct_rxid, ATPD_GET_SEQNO(ct), notify_cam, ct->ct_status, ct->ct_flags, (ccb->ccb_h.status & CAM_SENT_SENSE) != 0, resid, sentstatus? "FIN" : "MID"); } if (ok) { - if (moved_data) { - atp->bytes_xfered += moved_data; - ccb->csio.resid = atp->orig_datalen - atp->bytes_xfered - atp->bytes_in_transit; + if (data_requested > 0) { + atp->bytes_xfered += data_requested - resid; + ccb->csio.resid = ccb->csio.dxfer_len - + (data_requested - resid); } - if (sentstatus && (ccb->ccb_h.flags & CAM_SEND_SENSE)) { + if (sentstatus && (ccb->ccb_h.flags & CAM_SEND_SENSE)) ccb->ccb_h.status |= CAM_SENT_SENSE; - } ccb->ccb_h.status |= CAM_REQ_CMP; } else { notify_cam = 1; Modified: stable/10/sys/dev/isp/isp_target.c ============================================================================== --- stable/10/sys/dev/isp/isp_target.c Mon Mar 6 06:37:44 2017 (r314756) +++ stable/10/sys/dev/isp/isp_target.c Mon Mar 6 06:38:26 2017 (r314757) @@ -558,13 +558,9 @@ isp_endcmd(ispsoftc_t *isp, ...) } else { cto->ct_flags |= CT7_FLAG_MODE1 | CT7_SENDSTATUS; } - if (aep->at_cmnd.cdb_dl.sf.fcp_cmnd_dl) { + if (aep->at_cmnd.cdb_dl.sf.fcp_cmnd_dl != 0) { cto->ct_resid = aep->at_cmnd.cdb_dl.sf.fcp_cmnd_dl; - if (cto->ct_resid < 0) { - cto->ct_scsi_status |= (FCP_RESID_OVERFLOW << 8); - } else if (cto->ct_resid > 0) { - cto->ct_scsi_status |= (FCP_RESID_UNDERFLOW << 8); - } + cto->ct_scsi_status |= (FCP_RESID_UNDERFLOW << 8); } cto->ct_syshandle = hdl; } else { From owner-svn-src-all@freebsd.org Mon Mar 6 06:39:11 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 97CD2CF8A5A; Mon, 6 Mar 2017 06:39:11 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 588D61D24; Mon, 6 Mar 2017 06:39:11 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266dAOO000739; Mon, 6 Mar 2017 06:39:10 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266dA9t000737; Mon, 6 Mar 2017 06:39:10 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060639.v266dA9t000737@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:39:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314758 - stable/11/sys/dev/isp X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:39:11 -0000 Author: mav Date: Mon Mar 6 06:39:10 2017 New Revision: 314758 URL: https://svnweb.freebsd.org/changeset/base/314758 Log: MFC r314302: Return better error code in case of too long CDB. Its more important for SPI HBAs, as they don't support CDBs above 12 bytes. The new error code makes CAM to fall back to alternative commands. Modified: stable/11/sys/dev/isp/isp.c stable/11/sys/dev/isp/isp_freebsd.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/isp/isp.c ============================================================================== --- stable/11/sys/dev/isp/isp.c Mon Mar 6 06:38:26 2017 (r314757) +++ stable/11/sys/dev/isp/isp.c Mon Mar 6 06:39:10 2017 (r314758) @@ -4317,7 +4317,7 @@ isp_start(XS_T *xs) if (XS_CDBLEN(xs) > (IS_FC(isp)? 16 : 44) || XS_CDBLEN(xs) == 0) { isp_prt(isp, ISP_LOGERR, "unsupported cdb length (%d, CDB[0]=0x%x)", XS_CDBLEN(xs), XS_CDBP(xs)[0] & 0xff); - XS_SETERR(xs, HBA_BOTCH); + XS_SETERR(xs, HBA_REQINVAL); return (CMD_COMPLETE); } @@ -4494,7 +4494,7 @@ isp_start(XS_T *xs) if (IS_SCSI(isp)) { if (cdblen > sizeof (reqp->req_cdb)) { isp_prt(isp, ISP_LOGERR, "Command Length %u too long for this chip", cdblen); - XS_SETERR(xs, HBA_BOTCH); + XS_SETERR(xs, HBA_REQINVAL); return (CMD_COMPLETE); } reqp->req_target = target | (XS_CHANNEL(xs) << 7); @@ -4506,7 +4506,7 @@ isp_start(XS_T *xs) if (cdblen > sizeof (t7->req_cdb)) { isp_prt(isp, ISP_LOGERR, "Command Length %u too long for this chip", cdblen); - XS_SETERR(xs, HBA_BOTCH); + XS_SETERR(xs, HBA_REQINVAL); return (CMD_COMPLETE); } @@ -4539,7 +4539,7 @@ isp_start(XS_T *xs) if (cdblen > sizeof t2->req_cdb) { isp_prt(isp, ISP_LOGERR, "Command Length %u too long for this chip", cdblen); - XS_SETERR(xs, HBA_BOTCH); + XS_SETERR(xs, HBA_REQINVAL); return (CMD_COMPLETE); } if (FCPARAM(isp, XS_CHANNEL(xs))->fctape_enabled && (lp->prli_word3 & PRLI_WD3_RETRY)) { @@ -6567,6 +6567,7 @@ isp_parse_status(ispsoftc_t *isp, ispsta case RQCS_PORT_BUSY: isp_prt(isp, ISP_LOGWARN, "port busy for target %d", XS_TGT(xs)); if (XS_NOERR(xs)) { + *XS_STSP(xs) = SCSI_BUSY; XS_SETERR(xs, HBA_TGTBSY); } return; Modified: stable/11/sys/dev/isp/isp_freebsd.h ============================================================================== --- stable/11/sys/dev/isp/isp_freebsd.h Mon Mar 6 06:38:26 2017 (r314757) +++ stable/11/sys/dev/isp/isp_freebsd.h Mon Mar 6 06:39:10 2017 (r314758) @@ -574,6 +574,7 @@ default: \ # define HBA_CMDTIMEOUT CAM_CMD_TIMEOUT # define HBA_SELTIMEOUT CAM_SEL_TIMEOUT # define HBA_TGTBSY CAM_SCSI_STATUS_ERROR +# define HBA_REQINVAL CAM_REQ_INVALID # define HBA_BUSRESET CAM_SCSI_BUS_RESET # define HBA_ABORTED CAM_REQ_ABORTED # define HBA_DATAOVR CAM_DATA_RUN_ERR From owner-svn-src-all@freebsd.org Mon Mar 6 06:39:44 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 701C6CF8AD7; Mon, 6 Mar 2017 06:39:44 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 301901E7D; Mon, 6 Mar 2017 06:39:44 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266dhal000821; Mon, 6 Mar 2017 06:39:43 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266dhMN000819; Mon, 6 Mar 2017 06:39:43 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060639.v266dhMN000819@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:39:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314759 - stable/10/sys/dev/isp X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:39:44 -0000 Author: mav Date: Mon Mar 6 06:39:42 2017 New Revision: 314759 URL: https://svnweb.freebsd.org/changeset/base/314759 Log: MFC r314302: Return better error code in case of too long CDB. Its more important for SPI HBAs, as they don't support CDBs above 12 bytes. The new error code makes CAM to fall back to alternative commands. Modified: stable/10/sys/dev/isp/isp.c stable/10/sys/dev/isp/isp_freebsd.h Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/isp/isp.c ============================================================================== --- stable/10/sys/dev/isp/isp.c Mon Mar 6 06:39:10 2017 (r314758) +++ stable/10/sys/dev/isp/isp.c Mon Mar 6 06:39:42 2017 (r314759) @@ -4317,7 +4317,7 @@ isp_start(XS_T *xs) if (XS_CDBLEN(xs) > (IS_FC(isp)? 16 : 44) || XS_CDBLEN(xs) == 0) { isp_prt(isp, ISP_LOGERR, "unsupported cdb length (%d, CDB[0]=0x%x)", XS_CDBLEN(xs), XS_CDBP(xs)[0] & 0xff); - XS_SETERR(xs, HBA_BOTCH); + XS_SETERR(xs, HBA_REQINVAL); return (CMD_COMPLETE); } @@ -4494,7 +4494,7 @@ isp_start(XS_T *xs) if (IS_SCSI(isp)) { if (cdblen > sizeof (reqp->req_cdb)) { isp_prt(isp, ISP_LOGERR, "Command Length %u too long for this chip", cdblen); - XS_SETERR(xs, HBA_BOTCH); + XS_SETERR(xs, HBA_REQINVAL); return (CMD_COMPLETE); } reqp->req_target = target | (XS_CHANNEL(xs) << 7); @@ -4506,7 +4506,7 @@ isp_start(XS_T *xs) if (cdblen > sizeof (t7->req_cdb)) { isp_prt(isp, ISP_LOGERR, "Command Length %u too long for this chip", cdblen); - XS_SETERR(xs, HBA_BOTCH); + XS_SETERR(xs, HBA_REQINVAL); return (CMD_COMPLETE); } @@ -4539,7 +4539,7 @@ isp_start(XS_T *xs) if (cdblen > sizeof t2->req_cdb) { isp_prt(isp, ISP_LOGERR, "Command Length %u too long for this chip", cdblen); - XS_SETERR(xs, HBA_BOTCH); + XS_SETERR(xs, HBA_REQINVAL); return (CMD_COMPLETE); } if (FCPARAM(isp, XS_CHANNEL(xs))->fctape_enabled && (lp->prli_word3 & PRLI_WD3_RETRY)) { @@ -6567,6 +6567,7 @@ isp_parse_status(ispsoftc_t *isp, ispsta case RQCS_PORT_BUSY: isp_prt(isp, ISP_LOGWARN, "port busy for target %d", XS_TGT(xs)); if (XS_NOERR(xs)) { + *XS_STSP(xs) = SCSI_BUSY; XS_SETERR(xs, HBA_TGTBSY); } return; Modified: stable/10/sys/dev/isp/isp_freebsd.h ============================================================================== --- stable/10/sys/dev/isp/isp_freebsd.h Mon Mar 6 06:39:10 2017 (r314758) +++ stable/10/sys/dev/isp/isp_freebsd.h Mon Mar 6 06:39:42 2017 (r314759) @@ -574,6 +574,7 @@ default: \ # define HBA_CMDTIMEOUT CAM_CMD_TIMEOUT # define HBA_SELTIMEOUT CAM_SEL_TIMEOUT # define HBA_TGTBSY CAM_SCSI_STATUS_ERROR +# define HBA_REQINVAL CAM_REQ_INVALID # define HBA_BUSRESET CAM_SCSI_BUS_RESET # define HBA_ABORTED CAM_REQ_ABORTED # define HBA_DATAOVR CAM_DATA_RUN_ERR From owner-svn-src-all@freebsd.org Mon Mar 6 06:40:35 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2DD48CF8B9E; Mon, 6 Mar 2017 06:40:35 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F16131FD0; Mon, 6 Mar 2017 06:40:34 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266eYuw000928; Mon, 6 Mar 2017 06:40:34 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266eY2a000927; Mon, 6 Mar 2017 06:40:34 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060640.v266eY2a000927@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:40:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314760 - stable/11/sys/cam/ctl X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:40:35 -0000 Author: mav Date: Mon Mar 6 06:40:33 2017 New Revision: 314760 URL: https://svnweb.freebsd.org/changeset/base/314760 Log: MFC r314387: Make ctl_queue_sense() not sleep. It may be called in non-sleepable frontend context. Modified: stable/11/sys/cam/ctl/ctl.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/ctl/ctl.c ============================================================================== --- stable/11/sys/cam/ctl/ctl.c Mon Mar 6 06:39:42 2017 (r314759) +++ stable/11/sys/cam/ctl/ctl.c Mon Mar 6 06:40:33 2017 (r314760) @@ -13151,21 +13151,15 @@ ctl_queue_sense(union ctl_io *io) initidx = ctl_get_initindex(&io->io_hdr.nexus); p = initidx / CTL_MAX_INIT_PER_PORT; - if ((ps = lun->pending_sense[p]) == NULL) { - mtx_unlock(&lun->lun_lock); - ps = malloc(sizeof(*ps) * CTL_MAX_INIT_PER_PORT, M_CTL, - M_WAITOK | M_ZERO); - mtx_lock(&lun->lun_lock); - if (lun->pending_sense[p] == NULL) { - lun->pending_sense[p] = ps; - } else { - free(ps, M_CTL); - ps = lun->pending_sense[p]; - } + if (lun->pending_sense[p] == NULL) { + lun->pending_sense[p] = malloc(sizeof(*ps) * CTL_MAX_INIT_PER_PORT, + M_CTL, M_NOWAIT | M_ZERO); + } + if ((ps = lun->pending_sense[p]) != NULL) { + ps += initidx % CTL_MAX_INIT_PER_PORT; + memset(ps, 0, sizeof(*ps)); + memcpy(ps, &io->scsiio.sense_data, io->scsiio.sense_len); } - ps += initidx % CTL_MAX_INIT_PER_PORT; - memset(ps, 0, sizeof(*ps)); - memcpy(ps, &io->scsiio.sense_data, io->scsiio.sense_len); mtx_unlock(&lun->lun_lock); bailout: From owner-svn-src-all@freebsd.org Mon Mar 6 06:41:08 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 10B07CF8C25; Mon, 6 Mar 2017 06:41:08 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D1A3B116A; Mon, 6 Mar 2017 06:41:07 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266f6Bi001017; Mon, 6 Mar 2017 06:41:06 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266f6Bf001016; Mon, 6 Mar 2017 06:41:06 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060641.v266f6Bf001016@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:41:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314761 - stable/10/sys/cam/ctl X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:41:08 -0000 Author: mav Date: Mon Mar 6 06:41:06 2017 New Revision: 314761 URL: https://svnweb.freebsd.org/changeset/base/314761 Log: MFC r314387: Make ctl_queue_sense() not sleep. It may be called in non-sleepable frontend context. Modified: stable/10/sys/cam/ctl/ctl.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cam/ctl/ctl.c ============================================================================== --- stable/10/sys/cam/ctl/ctl.c Mon Mar 6 06:40:33 2017 (r314760) +++ stable/10/sys/cam/ctl/ctl.c Mon Mar 6 06:41:06 2017 (r314761) @@ -13142,21 +13142,15 @@ ctl_queue_sense(union ctl_io *io) initidx = ctl_get_initindex(&io->io_hdr.nexus); p = initidx / CTL_MAX_INIT_PER_PORT; - if ((ps = lun->pending_sense[p]) == NULL) { - mtx_unlock(&lun->lun_lock); - ps = malloc(sizeof(*ps) * CTL_MAX_INIT_PER_PORT, M_CTL, - M_WAITOK | M_ZERO); - mtx_lock(&lun->lun_lock); - if (lun->pending_sense[p] == NULL) { - lun->pending_sense[p] = ps; - } else { - free(ps, M_CTL); - ps = lun->pending_sense[p]; - } + if (lun->pending_sense[p] == NULL) { + lun->pending_sense[p] = malloc(sizeof(*ps) * CTL_MAX_INIT_PER_PORT, + M_CTL, M_NOWAIT | M_ZERO); + } + if ((ps = lun->pending_sense[p]) != NULL) { + ps += initidx % CTL_MAX_INIT_PER_PORT; + memset(ps, 0, sizeof(*ps)); + memcpy(ps, &io->scsiio.sense_data, io->scsiio.sense_len); } - ps += initidx % CTL_MAX_INIT_PER_PORT; - memset(ps, 0, sizeof(*ps)); - memcpy(ps, &io->scsiio.sense_data, io->scsiio.sense_len); mtx_unlock(&lun->lun_lock); bailout: From owner-svn-src-all@freebsd.org Mon Mar 6 06:42:49 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3647FCF8DED; Mon, 6 Mar 2017 06:42:49 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 054EB1511; Mon, 6 Mar 2017 06:42:48 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266gm5a004747; Mon, 6 Mar 2017 06:42:48 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266gmp3004746; Mon, 6 Mar 2017 06:42:48 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060642.v266gmp3004746@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:42:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314762 - stable/11/sys/cam/ctl X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:42:49 -0000 Author: mav Date: Mon Mar 6 06:42:47 2017 New Revision: 314762 URL: https://svnweb.freebsd.org/changeset/base/314762 Log: MFC r314496: Add check missed in r314257. Modified: stable/11/sys/cam/ctl/ctl.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/ctl/ctl.c ============================================================================== --- stable/11/sys/cam/ctl/ctl.c Mon Mar 6 06:41:06 2017 (r314761) +++ stable/11/sys/cam/ctl/ctl.c Mon Mar 6 06:42:47 2017 (r314762) @@ -9549,7 +9549,7 @@ ctl_inquiry_evpd_devid(struct ctl_scsiio if (port && port->port_type == CTL_PORT_FC) proto = SCSI_PROTO_FC << 4; - else if (port->port_type == CTL_PORT_SAS) + else if (port && port->port_type == CTL_PORT_SAS) proto = SCSI_PROTO_SAS << 4; else if (port && port->port_type == CTL_PORT_ISCSI) proto = SCSI_PROTO_ISCSI << 4; From owner-svn-src-all@freebsd.org Mon Mar 6 06:43:19 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 57330CF8E74; Mon, 6 Mar 2017 06:43:19 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1CDE21666; Mon, 6 Mar 2017 06:43:19 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266hH6Y004829; Mon, 6 Mar 2017 06:43:17 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266hHsE004828; Mon, 6 Mar 2017 06:43:17 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060643.v266hHsE004828@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:43:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314763 - stable/10/sys/cam/ctl X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:43:19 -0000 Author: mav Date: Mon Mar 6 06:43:17 2017 New Revision: 314763 URL: https://svnweb.freebsd.org/changeset/base/314763 Log: MFC r314496: Add check missed in r314257. Modified: stable/10/sys/cam/ctl/ctl.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cam/ctl/ctl.c ============================================================================== --- stable/10/sys/cam/ctl/ctl.c Mon Mar 6 06:42:47 2017 (r314762) +++ stable/10/sys/cam/ctl/ctl.c Mon Mar 6 06:43:17 2017 (r314763) @@ -9540,7 +9540,7 @@ ctl_inquiry_evpd_devid(struct ctl_scsiio if (port && port->port_type == CTL_PORT_FC) proto = SCSI_PROTO_FC << 4; - else if (port->port_type == CTL_PORT_SAS) + else if (port && port->port_type == CTL_PORT_SAS) proto = SCSI_PROTO_SAS << 4; else if (port && port->port_type == CTL_PORT_ISCSI) proto = SCSI_PROTO_ISCSI << 4; From owner-svn-src-all@freebsd.org Mon Mar 6 06:45:01 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C6DC1CF8F46; Mon, 6 Mar 2017 06:45:01 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9E5FB180B; Mon, 6 Mar 2017 06:45:01 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266j00u004990; Mon, 6 Mar 2017 06:45:00 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266j0JB004987; Mon, 6 Mar 2017 06:45:00 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060645.v266j0JB004987@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:45:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314764 - stable/11/sys/dev/isp X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:45:01 -0000 Author: mav Date: Mon Mar 6 06:45:00 2017 New Revision: 314764 URL: https://svnweb.freebsd.org/changeset/base/314764 Log: MFC r314326: Send TERMINATE to firmware when aborting active ATIO. Modified: stable/11/sys/dev/isp/isp.c stable/11/sys/dev/isp/isp_freebsd.c stable/11/sys/dev/isp/isp_freebsd.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/isp/isp.c ============================================================================== --- stable/11/sys/dev/isp/isp.c Mon Mar 6 06:43:17 2017 (r314763) +++ stable/11/sys/dev/isp/isp.c Mon Mar 6 06:45:00 2017 (r314764) @@ -7133,7 +7133,7 @@ static const uint32_t mbpfc[] = { ISP_FC_OPMAP(0x00, 0x00), /* 0x3f: */ ISP_FC_OPMAP(0x03, 0x01), /* 0x40: MBOX_LOOP_PORT_BYPASS */ ISP_FC_OPMAP(0x03, 0x01), /* 0x41: MBOX_LOOP_PORT_ENABLE */ - ISP_FC_OPMAP_HALF(0x0, 0x01, 0x3, 0xcf), /* 0x42: MBOX_GET_RESOURCE_COUNT */ + ISP_FC_OPMAP_HALF(0x0, 0x01, 0x1f, 0xcf), /* 0x42: MBOX_GET_RESOURCE_COUNT */ ISP_FC_OPMAP(0x01, 0x01), /* 0x43: MBOX_REQUEST_OFFLINE_MODE */ ISP_FC_OPMAP(0x00, 0x00), /* 0x44: */ ISP_FC_OPMAP(0x00, 0x00), /* 0x45: */ Modified: stable/11/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:43:17 2017 (r314763) +++ stable/11/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:45:00 2017 (r314764) @@ -1011,7 +1011,7 @@ isp_dump_atpd(ispsoftc_t *isp, int chan) if (atp->state == ATPD_STATE_FREE) continue; isp_prt(isp, ISP_LOGALL, "Chan %d ATP [0x%x] origdlen %u bytes_xfrd %u lun %jx nphdl 0x%04x s_id 0x%06x d_id 0x%06x oxid 0x%04x state %s", - chan, atp->tag, atp->orig_datalen, atp->bytes_xfered, (uintmax_t)atp->lun, atp->nphdl, atp->sid, atp->portid, atp->oxid, states[atp->state & 0x7]); + chan, atp->tag, atp->orig_datalen, atp->bytes_xfered, (uintmax_t)atp->lun, atp->nphdl, atp->sid, atp->did, atp->oxid, states[atp->state & 0x7]); } } @@ -1344,8 +1344,8 @@ isp_target_start_ctio(ispsoftc_t *isp, u ATPD_SET_SEQNO(cto, atp); cto->ct_nphdl = atp->nphdl; cto->ct_rxid = atp->tag; - cto->ct_iid_lo = atp->portid; - cto->ct_iid_hi = atp->portid >> 16; + cto->ct_iid_lo = atp->sid; + cto->ct_iid_hi = atp->sid >> 16; cto->ct_oxid = atp->oxid; cto->ct_vpidx = ISP_GET_VPIDX(isp, XS_CHANNEL(ccb)); cto->ct_timeout = (XS_TIME(ccb) + 999) / 1000; @@ -2088,7 +2088,8 @@ isp_handle_platform_atio7(ispsoftc_t *is atp->bytes_xfered = 0; atp->lun = lun; atp->nphdl = nphdl; - atp->portid = sid; + atp->sid = sid; + atp->did = did; atp->oxid = aep->at_hdr.ox_id; atp->rxid = aep->at_hdr.rx_id; atp->cdb0 = atiop->cdb_io.cdb_bytes[0]; @@ -3269,7 +3270,23 @@ isp_abort_atio(ispsoftc_t *isp, union cc /* Search for the ATIO among running. */ atp = isp_find_atpd(isp, XS_CHANNEL(accb), accb->atio.tag_id); if (atp != NULL) { - /* XXX Send TERMINATE to firmware here. */ + /* Send TERMINATE to firmware. */ + if (!atp->dead && IS_24XX(isp)) { + uint8_t storage[QENTRY_LEN]; + ct7_entry_t *cto = (ct7_entry_t *) storage; + + ISP_MEMZERO(cto, sizeof (ct7_entry_t)); + cto->ct_header.rqs_entry_type = RQSTYPE_CTIO7; + cto->ct_header.rqs_entry_count = 1; + cto->ct_nphdl = atp->nphdl; + cto->ct_rxid = atp->tag; + cto->ct_iid_lo = atp->sid; + cto->ct_iid_hi = atp->sid >> 16; + cto->ct_oxid = atp->oxid; + cto->ct_vpidx = XS_CHANNEL(accb); + cto->ct_flags = CT7_NOACK|CT7_TERMINATE; + isp_target_put_entry(isp, cto); + } isp_put_atpd(isp, XS_CHANNEL(accb), atp); ccb->ccb_h.status = CAM_REQ_CMP; } else { Modified: stable/11/sys/dev/isp/isp_freebsd.h ============================================================================== --- stable/11/sys/dev/isp/isp_freebsd.h Mon Mar 6 06:43:17 2017 (r314763) +++ stable/11/sys/dev/isp/isp_freebsd.h Mon Mar 6 06:45:00 2017 (r314764) @@ -103,7 +103,7 @@ typedef struct atio_private_data { lun_id_t lun; uint32_t nphdl; uint32_t sid; - uint32_t portid; + uint32_t did; uint16_t rxid; /* wire rxid */ uint16_t oxid; /* wire oxid */ uint16_t word3; /* PRLI word3 params */ From owner-svn-src-all@freebsd.org Mon Mar 6 06:45:36 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9B1EFCF8FC8; Mon, 6 Mar 2017 06:45:36 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7339E1952; Mon, 6 Mar 2017 06:45:36 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266jZkT005066; Mon, 6 Mar 2017 06:45:35 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266jZN2005063; Mon, 6 Mar 2017 06:45:35 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060645.v266jZN2005063@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:45:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314765 - stable/10/sys/dev/isp X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:45:36 -0000 Author: mav Date: Mon Mar 6 06:45:35 2017 New Revision: 314765 URL: https://svnweb.freebsd.org/changeset/base/314765 Log: MFC r314326: Send TERMINATE to firmware when aborting active ATIO. Modified: stable/10/sys/dev/isp/isp.c stable/10/sys/dev/isp/isp_freebsd.c stable/10/sys/dev/isp/isp_freebsd.h Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/isp/isp.c ============================================================================== --- stable/10/sys/dev/isp/isp.c Mon Mar 6 06:45:00 2017 (r314764) +++ stable/10/sys/dev/isp/isp.c Mon Mar 6 06:45:35 2017 (r314765) @@ -7133,7 +7133,7 @@ static const uint32_t mbpfc[] = { ISP_FC_OPMAP(0x00, 0x00), /* 0x3f: */ ISP_FC_OPMAP(0x03, 0x01), /* 0x40: MBOX_LOOP_PORT_BYPASS */ ISP_FC_OPMAP(0x03, 0x01), /* 0x41: MBOX_LOOP_PORT_ENABLE */ - ISP_FC_OPMAP_HALF(0x0, 0x01, 0x3, 0xcf), /* 0x42: MBOX_GET_RESOURCE_COUNT */ + ISP_FC_OPMAP_HALF(0x0, 0x01, 0x1f, 0xcf), /* 0x42: MBOX_GET_RESOURCE_COUNT */ ISP_FC_OPMAP(0x01, 0x01), /* 0x43: MBOX_REQUEST_OFFLINE_MODE */ ISP_FC_OPMAP(0x00, 0x00), /* 0x44: */ ISP_FC_OPMAP(0x00, 0x00), /* 0x45: */ Modified: stable/10/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:45:00 2017 (r314764) +++ stable/10/sys/dev/isp/isp_freebsd.c Mon Mar 6 06:45:35 2017 (r314765) @@ -1011,7 +1011,7 @@ isp_dump_atpd(ispsoftc_t *isp, int chan) if (atp->state == ATPD_STATE_FREE) continue; isp_prt(isp, ISP_LOGALL, "Chan %d ATP [0x%x] origdlen %u bytes_xfrd %u lun %jx nphdl 0x%04x s_id 0x%06x d_id 0x%06x oxid 0x%04x state %s", - chan, atp->tag, atp->orig_datalen, atp->bytes_xfered, (uintmax_t)atp->lun, atp->nphdl, atp->sid, atp->portid, atp->oxid, states[atp->state & 0x7]); + chan, atp->tag, atp->orig_datalen, atp->bytes_xfered, (uintmax_t)atp->lun, atp->nphdl, atp->sid, atp->did, atp->oxid, states[atp->state & 0x7]); } } @@ -1344,8 +1344,8 @@ isp_target_start_ctio(ispsoftc_t *isp, u ATPD_SET_SEQNO(cto, atp); cto->ct_nphdl = atp->nphdl; cto->ct_rxid = atp->tag; - cto->ct_iid_lo = atp->portid; - cto->ct_iid_hi = atp->portid >> 16; + cto->ct_iid_lo = atp->sid; + cto->ct_iid_hi = atp->sid >> 16; cto->ct_oxid = atp->oxid; cto->ct_vpidx = ISP_GET_VPIDX(isp, XS_CHANNEL(ccb)); cto->ct_timeout = (XS_TIME(ccb) + 999) / 1000; @@ -2088,7 +2088,8 @@ isp_handle_platform_atio7(ispsoftc_t *is atp->bytes_xfered = 0; atp->lun = lun; atp->nphdl = nphdl; - atp->portid = sid; + atp->sid = sid; + atp->did = did; atp->oxid = aep->at_hdr.ox_id; atp->rxid = aep->at_hdr.rx_id; atp->cdb0 = atiop->cdb_io.cdb_bytes[0]; @@ -3269,7 +3270,23 @@ isp_abort_atio(ispsoftc_t *isp, union cc /* Search for the ATIO among running. */ atp = isp_find_atpd(isp, XS_CHANNEL(accb), accb->atio.tag_id); if (atp != NULL) { - /* XXX Send TERMINATE to firmware here. */ + /* Send TERMINATE to firmware. */ + if (!atp->dead && IS_24XX(isp)) { + uint8_t storage[QENTRY_LEN]; + ct7_entry_t *cto = (ct7_entry_t *) storage; + + ISP_MEMZERO(cto, sizeof (ct7_entry_t)); + cto->ct_header.rqs_entry_type = RQSTYPE_CTIO7; + cto->ct_header.rqs_entry_count = 1; + cto->ct_nphdl = atp->nphdl; + cto->ct_rxid = atp->tag; + cto->ct_iid_lo = atp->sid; + cto->ct_iid_hi = atp->sid >> 16; + cto->ct_oxid = atp->oxid; + cto->ct_vpidx = XS_CHANNEL(accb); + cto->ct_flags = CT7_NOACK|CT7_TERMINATE; + isp_target_put_entry(isp, cto); + } isp_put_atpd(isp, XS_CHANNEL(accb), atp); ccb->ccb_h.status = CAM_REQ_CMP; } else { Modified: stable/10/sys/dev/isp/isp_freebsd.h ============================================================================== --- stable/10/sys/dev/isp/isp_freebsd.h Mon Mar 6 06:45:00 2017 (r314764) +++ stable/10/sys/dev/isp/isp_freebsd.h Mon Mar 6 06:45:35 2017 (r314765) @@ -103,7 +103,7 @@ typedef struct atio_private_data { lun_id_t lun; uint32_t nphdl; uint32_t sid; - uint32_t portid; + uint32_t did; uint16_t rxid; /* wire rxid */ uint16_t oxid; /* wire oxid */ uint16_t word3; /* PRLI word3 params */ From owner-svn-src-all@freebsd.org Mon Mar 6 06:46:23 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 22657CFB035; Mon, 6 Mar 2017 06:46:23 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F10FD1AB1; Mon, 6 Mar 2017 06:46:22 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266kM5q005151; Mon, 6 Mar 2017 06:46:22 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266kL1C005148; Mon, 6 Mar 2017 06:46:21 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060646.v266kL1C005148@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:46:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314766 - stable/11/sys/cam/ctl X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:46:23 -0000 Author: mav Date: Mon Mar 6 06:46:21 2017 New Revision: 314766 URL: https://svnweb.freebsd.org/changeset/base/314766 Log: MFC r314338: Polish handling of different reset flavours. The biggest change is that ctl_remove_initiator() now generates I_T NEXUS LOSS event, cleaning part of LUs state related to the initiator. Modified: stable/11/sys/cam/ctl/ctl.c stable/11/sys/cam/ctl/ctl_private.h stable/11/sys/cam/ctl/ctl_tpc.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cam/ctl/ctl.c ============================================================================== --- stable/11/sys/cam/ctl/ctl.c Mon Mar 6 06:45:35 2017 (r314765) +++ stable/11/sys/cam/ctl/ctl.c Mon Mar 6 06:46:21 2017 (r314766) @@ -478,15 +478,15 @@ static int ctl_scsiio_precheck(struct ct struct ctl_scsiio *ctsio); static int ctl_scsiio(struct ctl_scsiio *ctsio); -static int ctl_bus_reset(struct ctl_softc *ctl_softc, union ctl_io *io); -static int ctl_target_reset(struct ctl_softc *ctl_softc, union ctl_io *io, - ctl_ua_type ua_type); -static int ctl_do_lun_reset(struct ctl_lun *lun, union ctl_io *io, +static int ctl_target_reset(union ctl_io *io); +static void ctl_do_lun_reset(struct ctl_lun *lun, uint32_t initidx, ctl_ua_type ua_type); -static int ctl_lun_reset(struct ctl_softc *ctl_softc, union ctl_io *io); +static int ctl_lun_reset(union ctl_io *io); static int ctl_abort_task(union ctl_io *io); static int ctl_abort_task_set(union ctl_io *io); static int ctl_query_task(union ctl_io *io, int task_set); +static void ctl_i_t_nexus_loss(struct ctl_softc *softc, uint32_t initidx, + ctl_ua_type ua_type); static int ctl_i_t_nexus_reset(union ctl_io *io); static int ctl_query_async_event(union ctl_io *io); static void ctl_run_task(union ctl_io *io); @@ -1288,6 +1288,9 @@ ctl_isc_iid_sync(struct ctl_softc *softc return; } iid = msg->hdr.nexus.initid; + if (port->wwpn_iid[iid].in_use != 0 && + msg->iid.in_use == 0) + ctl_i_t_nexus_loss(softc, iid, CTL_UA_POWERON); port->wwpn_iid[iid].in_use = msg->iid.in_use; port->wwpn_iid[iid].wwpn = msg->iid.wwpn; free(port->wwpn_iid[iid].name, M_CTL); @@ -2027,6 +2030,7 @@ int ctl_remove_initiator(struct ctl_port *port, int iid) { struct ctl_softc *softc = port->ctl_softc; + int last; mtx_assert(&softc->ctl_lock, MA_NOTOWNED); @@ -2037,9 +2041,11 @@ ctl_remove_initiator(struct ctl_port *po } mtx_lock(&softc->ctl_lock); - port->wwpn_iid[iid].in_use--; + last = (--port->wwpn_iid[iid].in_use == 0); port->wwpn_iid[iid].last_use = time_uptime; mtx_unlock(&softc->ctl_lock); + if (last) + ctl_i_t_nexus_loss(softc, iid, CTL_UA_POWERON); ctl_isc_announce_iid(port, iid); return (0); @@ -2144,11 +2150,6 @@ ctl_add_initiator(struct ctl_port *port, __func__, port->targ_port, iid, wwpn, name, (uintmax_t)port->wwpn_iid[iid].wwpn, port->wwpn_iid[iid].name); - - /* - * XXX KDM clear pending_sense and pending_ua on each LUN - * for this initiator. - */ } take: free(port->wwpn_iid[iid].name, M_CTL); @@ -11600,50 +11601,42 @@ bailout: return (retval); } -/* - * Since we only implement one target right now, a bus reset simply resets - * our single target. - */ static int -ctl_bus_reset(struct ctl_softc *softc, union ctl_io *io) -{ - return(ctl_target_reset(softc, io, CTL_UA_BUS_RESET)); -} - -static int -ctl_target_reset(struct ctl_softc *softc, union ctl_io *io, - ctl_ua_type ua_type) +ctl_target_reset(union ctl_io *io) { + struct ctl_softc *softc = CTL_SOFTC(io); struct ctl_port *port = CTL_PORT(io); struct ctl_lun *lun; - int retval; + uint32_t initidx; + ctl_ua_type ua_type; if (!(io->io_hdr.flags & CTL_FLAG_FROM_OTHER_SC)) { union ctl_ha_msg msg_info; msg_info.hdr.nexus = io->io_hdr.nexus; - if (ua_type==CTL_UA_TARG_RESET) - msg_info.task.task_action = CTL_TASK_TARGET_RESET; - else - msg_info.task.task_action = CTL_TASK_BUS_RESET; + msg_info.task.task_action = io->taskio.task_action; msg_info.hdr.msg_type = CTL_MSG_MANAGE_TASKS; msg_info.hdr.original_sc = NULL; msg_info.hdr.serializing_sc = NULL; ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg_info, sizeof(msg_info.task), M_WAITOK); } - retval = 0; + initidx = ctl_get_initindex(&io->io_hdr.nexus); + if (io->taskio.task_action == CTL_TASK_TARGET_RESET) + ua_type = CTL_UA_TARG_RESET; + else + ua_type = CTL_UA_BUS_RESET; mtx_lock(&softc->ctl_lock); STAILQ_FOREACH(lun, &softc->lun_list, links) { if (port != NULL && ctl_lun_map_to_port(port, lun->lun) == UINT32_MAX) continue; - retval += ctl_do_lun_reset(lun, io, ua_type); + ctl_do_lun_reset(lun, initidx, ua_type); } mtx_unlock(&softc->ctl_lock); io->taskio.task_status = CTL_TASK_FUNCTION_COMPLETE; - return (retval); + return (0); } /* @@ -11667,66 +11660,51 @@ ctl_target_reset(struct ctl_softc *softc * * XXX KDM for now, we're setting unit attention for all initiators. */ -static int -ctl_do_lun_reset(struct ctl_lun *lun, union ctl_io *io, ctl_ua_type ua_type) +static void +ctl_do_lun_reset(struct ctl_lun *lun, uint32_t initidx, ctl_ua_type ua_type) { union ctl_io *xio; -#if 0 - uint32_t initidx; -#endif int i; mtx_lock(&lun->lun_lock); - /* - * Run through the OOA queue and abort each I/O. - */ + /* Abort tasks. */ for (xio = (union ctl_io *)TAILQ_FIRST(&lun->ooa_queue); xio != NULL; xio = (union ctl_io *)TAILQ_NEXT(&xio->io_hdr, ooa_links)) { xio->io_hdr.flags |= CTL_FLAG_ABORT | CTL_FLAG_ABORT_STATUS; } - - /* - * This version sets unit attention for every - */ -#if 0 - initidx = ctl_get_initindex(&io->io_hdr.nexus); - ctl_est_ua_all(lun, initidx, ua_type); -#else - ctl_est_ua_all(lun, -1, ua_type); -#endif - - /* - * A reset (any kind, really) clears reservations established with - * RESERVE/RELEASE. It does not clear reservations established - * with PERSISTENT RESERVE OUT, but we don't support that at the - * moment anyway. See SPC-2, section 5.6. SPC-3 doesn't address - * reservations made with the RESERVE/RELEASE commands, because - * those commands are obsolete in SPC-3. - */ - lun->flags &= ~CTL_LUN_RESERVED; - + /* Clear CA. */ for (i = 0; i < CTL_MAX_PORTS; i++) { free(lun->pending_sense[i], M_CTL); lun->pending_sense[i] = NULL; } - lun->prevent_count = 0; + /* Clear reservation. */ + lun->flags &= ~CTL_LUN_RESERVED; + /* Clear prevent media removal. */ if (lun->prevent) { for (i = 0; i < CTL_MAX_INITIATORS; i++) ctl_clear_mask(lun->prevent, i); + lun->prevent_count = 0; } + /* Clear TPC status */ + ctl_tpc_lun_clear(lun, -1); + /* Establish UA. */ +#if 0 + ctl_est_ua_all(lun, initidx, ua_type); +#else + ctl_est_ua_all(lun, -1, ua_type); +#endif mtx_unlock(&lun->lun_lock); - - return (0); } static int -ctl_lun_reset(struct ctl_softc *softc, union ctl_io *io) +ctl_lun_reset(union ctl_io *io) { + struct ctl_softc *softc = CTL_SOFTC(io); struct ctl_lun *lun; - uint32_t targ_lun; - int retval; + uint32_t targ_lun, initidx; targ_lun = io->io_hdr.nexus.targ_mapped_lun; + initidx = ctl_get_initindex(&io->io_hdr.nexus); mtx_lock(&softc->ctl_lock); if (targ_lun >= CTL_MAX_LUNS || (lun = softc->ctl_luns[targ_lun]) == NULL) { @@ -11734,7 +11712,7 @@ ctl_lun_reset(struct ctl_softc *softc, u io->taskio.task_status = CTL_TASK_LUN_DOES_NOT_EXIST; return (1); } - retval = ctl_do_lun_reset(lun, io, CTL_UA_LUN_RESET); + ctl_do_lun_reset(lun, initidx, CTL_UA_LUN_RESET); mtx_unlock(&softc->ctl_lock); io->taskio.task_status = CTL_TASK_FUNCTION_COMPLETE; @@ -11749,7 +11727,7 @@ ctl_lun_reset(struct ctl_softc *softc, u ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg_info, sizeof(msg_info.task), M_WAITOK); } - return (retval); + return (0); } static void @@ -11829,12 +11807,46 @@ ctl_abort_task_set(union ctl_io *io) return (0); } +static void +ctl_i_t_nexus_loss(struct ctl_softc *softc, uint32_t initidx, + ctl_ua_type ua_type) +{ + struct ctl_lun *lun; + struct scsi_sense_data *ps; + uint32_t p, i; + + p = initidx / CTL_MAX_INIT_PER_PORT; + i = initidx % CTL_MAX_INIT_PER_PORT; + mtx_lock(&softc->ctl_lock); + STAILQ_FOREACH(lun, &softc->lun_list, links) { + mtx_lock(&lun->lun_lock); + /* Abort tasks. */ + ctl_abort_tasks_lun(lun, p, i, 1); + /* Clear CA. */ + ps = lun->pending_sense[p]; + if (ps != NULL) + ps[i].error_code = 0; + /* Clear reservation. */ + if ((lun->flags & CTL_LUN_RESERVED) && (lun->res_idx == initidx)) + lun->flags &= ~CTL_LUN_RESERVED; + /* Clear prevent media removal. */ + if (lun->prevent && ctl_is_set(lun->prevent, initidx)) { + ctl_clear_mask(lun->prevent, initidx); + lun->prevent_count--; + } + /* Clear TPC status */ + ctl_tpc_lun_clear(lun, initidx); + /* Establish UA. */ + ctl_est_ua(lun, initidx, ua_type); + mtx_unlock(&lun->lun_lock); + } + mtx_unlock(&softc->ctl_lock); +} + static int ctl_i_t_nexus_reset(union ctl_io *io) { struct ctl_softc *softc = CTL_SOFTC(io); - struct ctl_lun *lun; - struct scsi_sense_data *ps; uint32_t initidx; if (!(io->io_hdr.flags & CTL_FLAG_FROM_OTHER_SC)) { @@ -11850,24 +11862,7 @@ ctl_i_t_nexus_reset(union ctl_io *io) } initidx = ctl_get_initindex(&io->io_hdr.nexus); - mtx_lock(&softc->ctl_lock); - STAILQ_FOREACH(lun, &softc->lun_list, links) { - mtx_lock(&lun->lun_lock); - ctl_abort_tasks_lun(lun, io->io_hdr.nexus.targ_port, - io->io_hdr.nexus.initid, 1); - ps = lun->pending_sense[initidx / CTL_MAX_INIT_PER_PORT]; - if (ps != NULL) - ps[initidx % CTL_MAX_INIT_PER_PORT].error_code = 0; - if ((lun->flags & CTL_LUN_RESERVED) && (lun->res_idx == initidx)) - lun->flags &= ~CTL_LUN_RESERVED; - if (lun->prevent && ctl_is_set(lun->prevent, initidx)) { - ctl_clear_mask(lun->prevent, initidx); - lun->prevent_count--; - } - ctl_est_ua(lun, initidx, CTL_UA_I_T_NEXUS_LOSS); - mtx_unlock(&lun->lun_lock); - } - mtx_unlock(&softc->ctl_lock); + ctl_i_t_nexus_loss(softc, initidx, CTL_UA_I_T_NEXUS_LOSS); io->taskio.task_status = CTL_TASK_FUNCTION_COMPLETE; return (0); } @@ -12076,7 +12071,6 @@ ctl_query_async_event(union ctl_io *io) static void ctl_run_task(union ctl_io *io) { - struct ctl_softc *softc = CTL_SOFTC(io); int retval = 1; CTL_DEBUG_PRINT(("ctl_run_task\n")); @@ -12098,13 +12092,11 @@ ctl_run_task(union ctl_io *io) retval = ctl_i_t_nexus_reset(io); break; case CTL_TASK_LUN_RESET: - retval = ctl_lun_reset(softc, io); + retval = ctl_lun_reset(io); break; case CTL_TASK_TARGET_RESET: - retval = ctl_target_reset(softc, io, CTL_UA_TARG_RESET); - break; case CTL_TASK_BUS_RESET: - retval = ctl_bus_reset(softc, io); + retval = ctl_target_reset(io); break; case CTL_TASK_PORT_LOGIN: break; Modified: stable/11/sys/cam/ctl/ctl_private.h ============================================================================== --- stable/11/sys/cam/ctl/ctl_private.h Mon Mar 6 06:45:35 2017 (r314765) +++ stable/11/sys/cam/ctl/ctl_private.h Mon Mar 6 06:46:21 2017 (r314766) @@ -528,6 +528,7 @@ int ctl_get_lba_status(struct ctl_scsiio void ctl_tpc_init(struct ctl_softc *softc); void ctl_tpc_shutdown(struct ctl_softc *softc); void ctl_tpc_lun_init(struct ctl_lun *lun); +void ctl_tpc_lun_clear(struct ctl_lun *lun, uint32_t initidx); void ctl_tpc_lun_shutdown(struct ctl_lun *lun); int ctl_inquiry_evpd_tpc(struct ctl_scsiio *ctsio, int alloc_len); int ctl_receive_copy_status_lid1(struct ctl_scsiio *ctsio); Modified: stable/11/sys/cam/ctl/ctl_tpc.c ============================================================================== --- stable/11/sys/cam/ctl/ctl_tpc.c Mon Mar 6 06:45:35 2017 (r314765) +++ stable/11/sys/cam/ctl/ctl_tpc.c Mon Mar 6 06:46:21 2017 (r314766) @@ -222,6 +222,21 @@ ctl_tpc_lun_init(struct ctl_lun *lun) } void +ctl_tpc_lun_clear(struct ctl_lun *lun, uint32_t initidx) +{ + struct tpc_list *list, *tlist; + + TAILQ_FOREACH_SAFE(list, &lun->tpc_lists, links, tlist) { + if (initidx != -1 && list->init_idx != initidx) + continue; + if (!list->completed) + continue; + TAILQ_REMOVE(&lun->tpc_lists, list, links); + free(list, M_CTL); + } +} + +void ctl_tpc_lun_shutdown(struct ctl_lun *lun) { struct ctl_softc *softc = lun->ctl_softc; From owner-svn-src-all@freebsd.org Mon Mar 6 06:47:06 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D4A61CFB09A; Mon, 6 Mar 2017 06:47:06 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id AC8D21C17; Mon, 6 Mar 2017 06:47:06 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v266l5JT005234; Mon, 6 Mar 2017 06:47:05 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v266l5EP005230; Mon, 6 Mar 2017 06:47:05 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703060647.v266l5EP005230@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 06:47:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314767 - stable/10/sys/cam/ctl X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 06:47:06 -0000 Author: mav Date: Mon Mar 6 06:47:05 2017 New Revision: 314767 URL: https://svnweb.freebsd.org/changeset/base/314767 Log: MFC r314338: Polish handling of different reset flavours. The biggest change is that ctl_remove_initiator() now generates I_T NEXUS LOSS event, cleaning part of LUs state related to the initiator. Modified: stable/10/sys/cam/ctl/ctl.c stable/10/sys/cam/ctl/ctl_private.h stable/10/sys/cam/ctl/ctl_tpc.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cam/ctl/ctl.c ============================================================================== --- stable/10/sys/cam/ctl/ctl.c Mon Mar 6 06:46:21 2017 (r314766) +++ stable/10/sys/cam/ctl/ctl.c Mon Mar 6 06:47:05 2017 (r314767) @@ -480,15 +480,15 @@ static int ctl_scsiio_precheck(struct ct struct ctl_scsiio *ctsio); static int ctl_scsiio(struct ctl_scsiio *ctsio); -static int ctl_bus_reset(struct ctl_softc *ctl_softc, union ctl_io *io); -static int ctl_target_reset(struct ctl_softc *ctl_softc, union ctl_io *io, - ctl_ua_type ua_type); -static int ctl_do_lun_reset(struct ctl_lun *lun, union ctl_io *io, +static int ctl_target_reset(union ctl_io *io); +static void ctl_do_lun_reset(struct ctl_lun *lun, uint32_t initidx, ctl_ua_type ua_type); -static int ctl_lun_reset(struct ctl_softc *ctl_softc, union ctl_io *io); +static int ctl_lun_reset(union ctl_io *io); static int ctl_abort_task(union ctl_io *io); static int ctl_abort_task_set(union ctl_io *io); static int ctl_query_task(union ctl_io *io, int task_set); +static void ctl_i_t_nexus_loss(struct ctl_softc *softc, uint32_t initidx, + ctl_ua_type ua_type); static int ctl_i_t_nexus_reset(union ctl_io *io); static int ctl_query_async_event(union ctl_io *io); static void ctl_run_task(union ctl_io *io); @@ -1290,6 +1290,9 @@ ctl_isc_iid_sync(struct ctl_softc *softc return; } iid = msg->hdr.nexus.initid; + if (port->wwpn_iid[iid].in_use != 0 && + msg->iid.in_use == 0) + ctl_i_t_nexus_loss(softc, iid, CTL_UA_POWERON); port->wwpn_iid[iid].in_use = msg->iid.in_use; port->wwpn_iid[iid].wwpn = msg->iid.wwpn; free(port->wwpn_iid[iid].name, M_CTL); @@ -2031,6 +2034,7 @@ int ctl_remove_initiator(struct ctl_port *port, int iid) { struct ctl_softc *softc = port->ctl_softc; + int last; mtx_assert(&softc->ctl_lock, MA_NOTOWNED); @@ -2041,9 +2045,11 @@ ctl_remove_initiator(struct ctl_port *po } mtx_lock(&softc->ctl_lock); - port->wwpn_iid[iid].in_use--; + last = (--port->wwpn_iid[iid].in_use == 0); port->wwpn_iid[iid].last_use = time_uptime; mtx_unlock(&softc->ctl_lock); + if (last) + ctl_i_t_nexus_loss(softc, iid, CTL_UA_POWERON); ctl_isc_announce_iid(port, iid); return (0); @@ -2148,11 +2154,6 @@ ctl_add_initiator(struct ctl_port *port, __func__, port->targ_port, iid, wwpn, name, (uintmax_t)port->wwpn_iid[iid].wwpn, port->wwpn_iid[iid].name); - - /* - * XXX KDM clear pending_sense and pending_ua on each LUN - * for this initiator. - */ } take: free(port->wwpn_iid[iid].name, M_CTL); @@ -11591,50 +11592,42 @@ bailout: return (retval); } -/* - * Since we only implement one target right now, a bus reset simply resets - * our single target. - */ static int -ctl_bus_reset(struct ctl_softc *softc, union ctl_io *io) -{ - return(ctl_target_reset(softc, io, CTL_UA_BUS_RESET)); -} - -static int -ctl_target_reset(struct ctl_softc *softc, union ctl_io *io, - ctl_ua_type ua_type) +ctl_target_reset(union ctl_io *io) { + struct ctl_softc *softc = CTL_SOFTC(io); struct ctl_port *port = CTL_PORT(io); struct ctl_lun *lun; - int retval; + uint32_t initidx; + ctl_ua_type ua_type; if (!(io->io_hdr.flags & CTL_FLAG_FROM_OTHER_SC)) { union ctl_ha_msg msg_info; msg_info.hdr.nexus = io->io_hdr.nexus; - if (ua_type==CTL_UA_TARG_RESET) - msg_info.task.task_action = CTL_TASK_TARGET_RESET; - else - msg_info.task.task_action = CTL_TASK_BUS_RESET; + msg_info.task.task_action = io->taskio.task_action; msg_info.hdr.msg_type = CTL_MSG_MANAGE_TASKS; msg_info.hdr.original_sc = NULL; msg_info.hdr.serializing_sc = NULL; ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg_info, sizeof(msg_info.task), M_WAITOK); } - retval = 0; + initidx = ctl_get_initindex(&io->io_hdr.nexus); + if (io->taskio.task_action == CTL_TASK_TARGET_RESET) + ua_type = CTL_UA_TARG_RESET; + else + ua_type = CTL_UA_BUS_RESET; mtx_lock(&softc->ctl_lock); STAILQ_FOREACH(lun, &softc->lun_list, links) { if (port != NULL && ctl_lun_map_to_port(port, lun->lun) == UINT32_MAX) continue; - retval += ctl_do_lun_reset(lun, io, ua_type); + ctl_do_lun_reset(lun, initidx, ua_type); } mtx_unlock(&softc->ctl_lock); io->taskio.task_status = CTL_TASK_FUNCTION_COMPLETE; - return (retval); + return (0); } /* @@ -11658,66 +11651,51 @@ ctl_target_reset(struct ctl_softc *softc * * XXX KDM for now, we're setting unit attention for all initiators. */ -static int -ctl_do_lun_reset(struct ctl_lun *lun, union ctl_io *io, ctl_ua_type ua_type) +static void +ctl_do_lun_reset(struct ctl_lun *lun, uint32_t initidx, ctl_ua_type ua_type) { union ctl_io *xio; -#if 0 - uint32_t initidx; -#endif int i; mtx_lock(&lun->lun_lock); - /* - * Run through the OOA queue and abort each I/O. - */ + /* Abort tasks. */ for (xio = (union ctl_io *)TAILQ_FIRST(&lun->ooa_queue); xio != NULL; xio = (union ctl_io *)TAILQ_NEXT(&xio->io_hdr, ooa_links)) { xio->io_hdr.flags |= CTL_FLAG_ABORT | CTL_FLAG_ABORT_STATUS; } - - /* - * This version sets unit attention for every - */ -#if 0 - initidx = ctl_get_initindex(&io->io_hdr.nexus); - ctl_est_ua_all(lun, initidx, ua_type); -#else - ctl_est_ua_all(lun, -1, ua_type); -#endif - - /* - * A reset (any kind, really) clears reservations established with - * RESERVE/RELEASE. It does not clear reservations established - * with PERSISTENT RESERVE OUT, but we don't support that at the - * moment anyway. See SPC-2, section 5.6. SPC-3 doesn't address - * reservations made with the RESERVE/RELEASE commands, because - * those commands are obsolete in SPC-3. - */ - lun->flags &= ~CTL_LUN_RESERVED; - + /* Clear CA. */ for (i = 0; i < CTL_MAX_PORTS; i++) { free(lun->pending_sense[i], M_CTL); lun->pending_sense[i] = NULL; } - lun->prevent_count = 0; + /* Clear reservation. */ + lun->flags &= ~CTL_LUN_RESERVED; + /* Clear prevent media removal. */ if (lun->prevent) { for (i = 0; i < CTL_MAX_INITIATORS; i++) ctl_clear_mask(lun->prevent, i); + lun->prevent_count = 0; } + /* Clear TPC status */ + ctl_tpc_lun_clear(lun, -1); + /* Establish UA. */ +#if 0 + ctl_est_ua_all(lun, initidx, ua_type); +#else + ctl_est_ua_all(lun, -1, ua_type); +#endif mtx_unlock(&lun->lun_lock); - - return (0); } static int -ctl_lun_reset(struct ctl_softc *softc, union ctl_io *io) +ctl_lun_reset(union ctl_io *io) { + struct ctl_softc *softc = CTL_SOFTC(io); struct ctl_lun *lun; - uint32_t targ_lun; - int retval; + uint32_t targ_lun, initidx; targ_lun = io->io_hdr.nexus.targ_mapped_lun; + initidx = ctl_get_initindex(&io->io_hdr.nexus); mtx_lock(&softc->ctl_lock); if (targ_lun >= CTL_MAX_LUNS || (lun = softc->ctl_luns[targ_lun]) == NULL) { @@ -11725,7 +11703,7 @@ ctl_lun_reset(struct ctl_softc *softc, u io->taskio.task_status = CTL_TASK_LUN_DOES_NOT_EXIST; return (1); } - retval = ctl_do_lun_reset(lun, io, CTL_UA_LUN_RESET); + ctl_do_lun_reset(lun, initidx, CTL_UA_LUN_RESET); mtx_unlock(&softc->ctl_lock); io->taskio.task_status = CTL_TASK_FUNCTION_COMPLETE; @@ -11740,7 +11718,7 @@ ctl_lun_reset(struct ctl_softc *softc, u ctl_ha_msg_send(CTL_HA_CHAN_CTL, &msg_info, sizeof(msg_info.task), M_WAITOK); } - return (retval); + return (0); } static void @@ -11820,12 +11798,46 @@ ctl_abort_task_set(union ctl_io *io) return (0); } +static void +ctl_i_t_nexus_loss(struct ctl_softc *softc, uint32_t initidx, + ctl_ua_type ua_type) +{ + struct ctl_lun *lun; + struct scsi_sense_data *ps; + uint32_t p, i; + + p = initidx / CTL_MAX_INIT_PER_PORT; + i = initidx % CTL_MAX_INIT_PER_PORT; + mtx_lock(&softc->ctl_lock); + STAILQ_FOREACH(lun, &softc->lun_list, links) { + mtx_lock(&lun->lun_lock); + /* Abort tasks. */ + ctl_abort_tasks_lun(lun, p, i, 1); + /* Clear CA. */ + ps = lun->pending_sense[p]; + if (ps != NULL) + ps[i].error_code = 0; + /* Clear reservation. */ + if ((lun->flags & CTL_LUN_RESERVED) && (lun->res_idx == initidx)) + lun->flags &= ~CTL_LUN_RESERVED; + /* Clear prevent media removal. */ + if (lun->prevent && ctl_is_set(lun->prevent, initidx)) { + ctl_clear_mask(lun->prevent, initidx); + lun->prevent_count--; + } + /* Clear TPC status */ + ctl_tpc_lun_clear(lun, initidx); + /* Establish UA. */ + ctl_est_ua(lun, initidx, ua_type); + mtx_unlock(&lun->lun_lock); + } + mtx_unlock(&softc->ctl_lock); +} + static int ctl_i_t_nexus_reset(union ctl_io *io) { struct ctl_softc *softc = CTL_SOFTC(io); - struct ctl_lun *lun; - struct scsi_sense_data *ps; uint32_t initidx; if (!(io->io_hdr.flags & CTL_FLAG_FROM_OTHER_SC)) { @@ -11841,24 +11853,7 @@ ctl_i_t_nexus_reset(union ctl_io *io) } initidx = ctl_get_initindex(&io->io_hdr.nexus); - mtx_lock(&softc->ctl_lock); - STAILQ_FOREACH(lun, &softc->lun_list, links) { - mtx_lock(&lun->lun_lock); - ctl_abort_tasks_lun(lun, io->io_hdr.nexus.targ_port, - io->io_hdr.nexus.initid, 1); - ps = lun->pending_sense[initidx / CTL_MAX_INIT_PER_PORT]; - if (ps != NULL) - ps[initidx % CTL_MAX_INIT_PER_PORT].error_code = 0; - if ((lun->flags & CTL_LUN_RESERVED) && (lun->res_idx == initidx)) - lun->flags &= ~CTL_LUN_RESERVED; - if (lun->prevent && ctl_is_set(lun->prevent, initidx)) { - ctl_clear_mask(lun->prevent, initidx); - lun->prevent_count--; - } - ctl_est_ua(lun, initidx, CTL_UA_I_T_NEXUS_LOSS); - mtx_unlock(&lun->lun_lock); - } - mtx_unlock(&softc->ctl_lock); + ctl_i_t_nexus_loss(softc, initidx, CTL_UA_I_T_NEXUS_LOSS); io->taskio.task_status = CTL_TASK_FUNCTION_COMPLETE; return (0); } @@ -12067,7 +12062,6 @@ ctl_query_async_event(union ctl_io *io) static void ctl_run_task(union ctl_io *io) { - struct ctl_softc *softc = CTL_SOFTC(io); int retval = 1; CTL_DEBUG_PRINT(("ctl_run_task\n")); @@ -12089,13 +12083,11 @@ ctl_run_task(union ctl_io *io) retval = ctl_i_t_nexus_reset(io); break; case CTL_TASK_LUN_RESET: - retval = ctl_lun_reset(softc, io); + retval = ctl_lun_reset(io); break; case CTL_TASK_TARGET_RESET: - retval = ctl_target_reset(softc, io, CTL_UA_TARG_RESET); - break; case CTL_TASK_BUS_RESET: - retval = ctl_bus_reset(softc, io); + retval = ctl_target_reset(io); break; case CTL_TASK_PORT_LOGIN: break; Modified: stable/10/sys/cam/ctl/ctl_private.h ============================================================================== --- stable/10/sys/cam/ctl/ctl_private.h Mon Mar 6 06:46:21 2017 (r314766) +++ stable/10/sys/cam/ctl/ctl_private.h Mon Mar 6 06:47:05 2017 (r314767) @@ -528,6 +528,7 @@ int ctl_get_lba_status(struct ctl_scsiio void ctl_tpc_init(struct ctl_softc *softc); void ctl_tpc_shutdown(struct ctl_softc *softc); void ctl_tpc_lun_init(struct ctl_lun *lun); +void ctl_tpc_lun_clear(struct ctl_lun *lun, uint32_t initidx); void ctl_tpc_lun_shutdown(struct ctl_lun *lun); int ctl_inquiry_evpd_tpc(struct ctl_scsiio *ctsio, int alloc_len); int ctl_receive_copy_status_lid1(struct ctl_scsiio *ctsio); Modified: stable/10/sys/cam/ctl/ctl_tpc.c ============================================================================== --- stable/10/sys/cam/ctl/ctl_tpc.c Mon Mar 6 06:46:21 2017 (r314766) +++ stable/10/sys/cam/ctl/ctl_tpc.c Mon Mar 6 06:47:05 2017 (r314767) @@ -222,6 +222,21 @@ ctl_tpc_lun_init(struct ctl_lun *lun) } void +ctl_tpc_lun_clear(struct ctl_lun *lun, uint32_t initidx) +{ + struct tpc_list *list, *tlist; + + TAILQ_FOREACH_SAFE(list, &lun->tpc_lists, links, tlist) { + if (initidx != -1 && list->init_idx != initidx) + continue; + if (!list->completed) + continue; + TAILQ_REMOVE(&lun->tpc_lists, list, links); + free(list, M_CTL); + } +} + +void ctl_tpc_lun_shutdown(struct ctl_lun *lun) { struct ctl_softc *softc = lun->ctl_softc; From owner-svn-src-all@freebsd.org Mon Mar 6 07:11:25 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 42039CFB6A9; Mon, 6 Mar 2017 07:11:25 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0F32C1BA0; Mon, 6 Mar 2017 07:11:24 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v267BOw3017458; Mon, 6 Mar 2017 07:11:24 GMT (envelope-from cy@FreeBSD.org) Received: (from cy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v267BOWr017457; Mon, 6 Mar 2017 07:11:24 GMT (envelope-from cy@FreeBSD.org) Message-Id: <201703060711.v267BOWr017457@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org using -f From: Cy Schubert Date: Mon, 6 Mar 2017 07:11:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314768 - head/usr.sbin/ntp/doc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 07:11:25 -0000 Author: cy Date: Mon Mar 6 07:11:23 2017 New Revision: 314768 URL: https://svnweb.freebsd.org/changeset/base/314768 Log: Fix mismerge of r280849. Reported by: des MFC after: 3 days Modified: head/usr.sbin/ntp/doc/ntp.keys.5 Modified: head/usr.sbin/ntp/doc/ntp.keys.5 ============================================================================== --- head/usr.sbin/ntp/doc/ntp.keys.5 Mon Mar 6 06:47:05 2017 (r314767) +++ head/usr.sbin/ntp/doc/ntp.keys.5 Mon Mar 6 07:11:23 2017 (r314768) @@ -11,10 +11,6 @@ .Sh NAME .Nm ntp.keys .Nd NTP symmetric key file format - -.Sh NAME -.Nm ntp.keys -.Nd NTP symmetric key file format .Sh SYNOPSIS .Nm .Op Fl \-option\-name From owner-svn-src-all@freebsd.org Mon Mar 6 08:13:20 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D70B6CFB83E; Mon, 6 Mar 2017 08:13:20 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 873931C95; Mon, 6 Mar 2017 08:13:20 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v268DJxs041692; Mon, 6 Mar 2017 08:13:19 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v268DJUq041691; Mon, 6 Mar 2017 08:13:19 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <201703060813.v268DJUq041691@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Mon, 6 Mar 2017 08:13:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314769 - head/lib/libpcap X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 08:13:20 -0000 Author: delphij Date: Mon Mar 6 08:13:19 2017 New Revision: 314769 URL: https://svnweb.freebsd.org/changeset/base/314769 Log: Remove compatibility with old libpcap. Differential Revision: https://reviews.freebsd.org/D9606 Modified: head/lib/libpcap/pcap-netmap.c Modified: head/lib/libpcap/pcap-netmap.c ============================================================================== --- head/lib/libpcap/pcap-netmap.c Mon Mar 6 07:11:23 2017 (r314768) +++ head/lib/libpcap/pcap-netmap.c Mon Mar 6 08:13:19 2017 (r314769) @@ -22,6 +22,8 @@ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. + * + * $FreeBSD$ */ #ifdef HAVE_CONFIG_H @@ -42,24 +44,7 @@ #include "pcap-int.h" -/* - * $FreeBSD$ - * - * This code is meant to build also on other versions of libpcap. - * - * older libpcap miss p->priv, use p->md.device instead (and allocate). - * Also opt.timeout was in md.timeout before. - * Use #define PCAP_IF_UP to discriminate - */ -#ifdef PCAP_IF_UP #define NM_PRIV(p) ((struct pcap_netmap *)(p->priv)) -#define the_timeout opt.timeout -#else -#define HAVE_NO_PRIV -#define NM_PRIV(p) ((struct pcap_netmap *)(p->md.device)) -#define SET_PRIV(p, x) p->md.device = (void *)x -#define the_timeout md.timeout -#endif #if defined (linux) /* On FreeBSD we use IFF_PPROMISC which is in ifr_flagshigh. @@ -124,7 +109,7 @@ pcap_netmap_dispatch(pcap_t *p, int cnt, if (ret != 0) break; errno = 0; - ret = poll(&pfd, 1, p->the_timeout); + ret = poll(&pfd, 1, p->opt.timeout); } return ret; } @@ -197,10 +182,6 @@ pcap_netmap_close(pcap_t *p) } } nm_close(d); -#ifdef HAVE_NO_PRIV - free(pn); - SET_PRIV(p, NULL); // unnecessary -#endif pcap_cleanup_live_common(p); } @@ -216,10 +197,6 @@ pcap_netmap_activate(pcap_t *p) snprintf(p->errbuf, PCAP_ERRBUF_SIZE, "netmap open: cannot access %s: %s\n", p->opt.device, pcap_strerror(errno)); -#ifdef HAVE_NO_PRIV - free(pn); - SET_PRIV(p, NULL); // unnecessary -#endif pcap_cleanup_live_common(p); return (PCAP_ERROR); } @@ -261,23 +238,9 @@ pcap_netmap_create(const char *device, c *is_ours = (!strncmp(device, "netmap:", 7) || !strncmp(device, "vale", 4)); if (! *is_ours) return NULL; -#ifdef HAVE_NO_PRIV - { - void *pn = calloc(1, sizeof(struct pcap_netmap)); - if (pn == NULL) - return NULL; - p = pcap_create_common(device, ebuf); - if (p == NULL) { - free(pn); - return NULL; - } - SET_PRIV(p, pn); - } -#else p = pcap_create_common(ebuf, sizeof (struct pcap_netmap)); if (p == NULL) return (NULL); -#endif p->activate_op = pcap_netmap_activate; return (p); } From owner-svn-src-all@freebsd.org Mon Mar 6 09:21:24 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A3EFFCFBD71; Mon, 6 Mar 2017 09:21:24 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail104.syd.optusnet.com.au (mail104.syd.optusnet.com.au [211.29.132.246]) by mx1.freebsd.org (Postfix) with ESMTP id 2B3EA1050; Mon, 6 Mar 2017 09:21:23 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from besplex.bde.org (c122-106-153-191.carlnfd1.nsw.optusnet.com.au [122.106.153.191]) by mail104.syd.optusnet.com.au (Postfix) with ESMTPS id 53A21428AAD; Mon, 6 Mar 2017 20:21:13 +1100 (AEDT) Date: Mon, 6 Mar 2017 20:21:12 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Ed Schouten cc: "Conrad E. Meyer" , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314685 - head/bin/ps In-Reply-To: Message-ID: <20170306183546.E1414@besplex.bde.org> References: <201703042238.v24McAD8008837@repo.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=VbSHBBh9 c=1 sm=1 tr=0 a=Tj3pCpwHnMupdyZSltBt7Q==:117 a=Tj3pCpwHnMupdyZSltBt7Q==:17 a=kj9zAlcOel0A:10 a=6I5d2MoRAAAA:8 a=Mimnt9xOvP8K_R8bOPwA:9 a=CjuIK1q_8ugA:10 a=IjZwj45LgO3ly-622nXo:22 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 09:21:24 -0000 On Sun, 5 Mar 2017, Ed Schouten wrote: > 2017-03-05 0:08 GMT+01:00 Conrad Meyer : >>> - If something is a TTY, then our implementation of the TTY layer >>> guarantees that TIOCGWINSZ always works. >> >> Do you know if it did in 1990 too? It's hard to tell why Marc@ made >> this change way back then. I wasn't sure so I left it alone. > > I can't tell. :-) Actually, it is easy to tell. This has nothing to do with kernel bugs that prevent TIOCGWINSZ working. It is to find the user's terminal so that the correct width can be determined. The correct default width is always that of the user's terminal. The problem is that it isn't clear what the user's terminal is in redirected cases. As described in the log message, the default width was originally hard- coded as 80 (not even 79 to allow for autowrap). (BTW, althought the commit was remarkably diligent in describing the history, it is inconvenient to look up the details on the web, and the web pages are almost unreadable even after downloading them and demangling the formatting a bit.) (The commit was not diligent enough to track down the history of the man pages and whether they were consistent with the code. The original man page should have described the hard-coded default as being 80, and said how wrong this is in the BUGS section, including its off-by-1 error.) (The commit and perhaps the man page were also not diligent enough to describe the details of the overrides for the default. In the original version, one -w gave width 132 (another off-by-1-error), and more than 1 -w gave width BUFSIZ (the worst abuse of stdio's BUFSIZ mistake that I remember noticing).) Kirk changed the default to the terminal width given by TIOCWINSZ on stdin (spelled 0 instead of the current STDIN_FILENO). That is good for most uses. Users normally have all 3 std fd's connected to the same terminal, so TIOCWINSZ on any of them works. Plain ps goes to /dev/tty so any choice works. Normal redirection is ps | less and ps >foo; this doesn't redirect stdin, so TIOCWINSZ on stdin works. Hopefully he changed the man page to describe the new behaviour. The following bugs are visible in Kirk's patch: - the magic numbers 80 and 132 and the full terminal width still have the off-by-1 error - the magic numbers are more broken than before. The magic width of 80 is still abused as a flag to determine if -w has already been applied. This no longer works. If the terminal width is anything except 80, then the first -w gives width BUFSIZ with no intermediate step to 132, although such a step is more needed than before if the terminal width is < 80. This is fixed in -current by counting -w's. Next, marc@ improved the detection of user terminals. TIOCGWINSZ is tried on all 3 std fd's. This fixes the case where stdin is redirected but one of the other std fd's is not redirected (and none of the redirected fd's is to a terminal with unsuitable size). It would be unusual to redirect stdin, and not necessary for ps since ps doesn't read stdin. It might be done for invoking a script that uses ps for output but piped input for other utilities in the script. Not redirecting stderr together with stdin has even more uses. The order of the TIOCGWINSZ calls is subtle. marc@ kept stdin first, perhaps for compatibility. stdout is obviously more relevant than stderr so is checked next, then stderr. But since the output should normally be formatted for stdout, especially if stdout is a terminal, it is better to check stdout first. This was done soon atfer marc@'s change. The diligence in the commit wasn't remarkable enough to uncover the details. The order was improved to stdout first and stdin last by some change beteen marc@ and FreeBSD-1. FreeBSD also used the fancy spellings STD*_FILENO. I thought it was from Net/2 slightly earlier than 1990. ps.c has a 1990 Regents copyright but a 5.43 (Berkelely) 7/1/91 sccsid. marc@'s diff has a 1989 Regents copyright and 1.8 and 5.20 sccsids (obscured by the diff format, but clearly early). Counting for -w was still broken in FreeBSD-1, but was fixed in 4.4Lite1. The next fix in FreeBSD was to add COLUMNS support in 1997 (tjr r97804). According to the commit log, this is for SUSv3. This is now required by POSIX. POSIX also has considerable detail on allowable truncations of fields, but at least in 2001 doesn't have anything about the default total width. After that, all related changes discussed here are regressions. Apple places the !isatty(STDOUT_FILENO) check later than in this commit, so it isn't so clear what it does. When stdout is not a tty, the Apple change blows away the defaults set earlier,including the COLUMNS override specified by POSIX. In FreeBSD, isatty() is implemented using tcgetattr(), and tcgetattr() is implemented using ioctl(...TIOCGETA...). It would take a weird terminal to support TIOCGETA but not TIOCGWINSZ. Weird terminals (including initial and lock state devices?) tend to supply dummy values for both. Perhaps they shouldn't supply either, since they are not really terminals. Assume for simplicity that isatty() is true if TIOCGWINSZ succeeds. Then in Apple's version, the carefully ordered TIOCGWINSZ calls on stderr and stdout are dead code, since the result from them will be canceled if they were reached. The FreeBSD version is similar except it doesn't break COLUMNS or obfuscate the initialization by canceling it much later. After COLUMNS, it checks isatty(STDOUT_FILENO). Then under the simplifing assumption, if isatty(STDOUT_FILENO) is true, TIOCGWINSZ on stdout succeeds and the other 2 carefully ordered TIOCGWINSZ calls are unreachable (Apple reaches them but cancels them). Aother bug in the FreeBSD version is that it doesn't update the documentation. Actually, the documentation is fuzzy enough to not be affected by the change. It mainly says: X -w Use 132 columns to display information, instead of the default X which is your window size. If the -w option is specified more X than once, ps will use as many columns as necessary without X regard for your window size. Note that this option has no effect X if the ``command'' column is not the last column displayed. X X COLUMNS If set, specifies the user's preferred output width in X column positions. By default, ps attempts to automatically X determine the terminal width. The first error is the off-by-1 error in 131 and no mention of auto-wrap. Next, the the default width is fuzzily described, but not fuzzily enough to have no errors, exept for COLUMNS it is described as the "best automatic attempt". That the default when there is no terminal is 79 is not mentioned. In the description of -w, it is stated that the default is "your" window size, but as this mail shows it is unclear where this window is. I now remember noticing the caveat in the last sentence for -w. -w works reasonably for ps l, but not for fancier formats. COLUMNS must be broken for fancier formats too, since COLUMNS affects the width variable like -w. >>> - If we're only interested in testing stdout whether it's a TTY, I >>> think it makes little sense to check TIOCGWINSZ on stdin, stderr. This removes the code that was essentially killed by the commit, but it shouldn't have been killed. >>> I think there would therefore be very little harm to use something like this: >>> >>> | if ((cols = getenv("COLUMNS")) != NULL && *cols != '\0') >>> | termwidth = atoi(cols); >>> | else if ((ioctl(STDOUT_FILENO, TIOCGWINSZ, (char *)&ws) == >>> -1 && ws.ws_row == 0) >> >> Shouldn't this remain || ws.ws_row == 0? > > Err, yes. ||, not &&. When any of the 3 std fd's is a terminal, the fixes in 1990-1991 are clearly right. When none of them is a terminal, the default should have been UNLIMITED, but it has always been 79 or 80. ps users should know this, although it is undocumented. If you break this, then you also should break -w and -ww and the 131-column in-beteen value that they give. 131 is just a convenient value between 79 and UNLIMITED. Changing this would break all scripts that assume the undocumented 79 or use -w to get the documented 131. I use ps in scripts mainly for logging and don't really care about the width. I think your suggestion is to remove the defaulting to 79 too, and default to UNLIMITED. This completes breaking of the undocumented 79, but leaves the documented 131 and -w untouched and almost useless. When the default is not 79, they are only reachable if TIOCWINSZ succeeds on stdout (and COLUMNS is not set -- -w really shouldn't pply if COLUMNS is set, but it does). Then if the terminal width is < 132, ps's width can be increased to 131 with one -w. Not very useful. Two -w's are useful for reaching UNLIMITED. Bruce From owner-svn-src-all@freebsd.org Mon Mar 6 09:34:33 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2B46FCFA05A; Mon, 6 Mar 2017 09:34:33 +0000 (UTC) (envelope-from dexuan@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E1EC4174C; Mon, 6 Mar 2017 09:34:32 +0000 (UTC) (envelope-from dexuan@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v269YWve074544; Mon, 6 Mar 2017 09:34:32 GMT (envelope-from dexuan@FreeBSD.org) Received: (from dexuan@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v269YWab074543; Mon, 6 Mar 2017 09:34:32 GMT (envelope-from dexuan@FreeBSD.org) Message-Id: <201703060934.v269YWab074543@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dexuan set sender to dexuan@FreeBSD.org using -f From: Dexuan Cui Date: Mon, 6 Mar 2017 09:34:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314770 - head/sys/boot/efi/loader X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 09:34:33 -0000 Author: dexuan Date: Mon Mar 6 09:34:31 2017 New Revision: 314770 URL: https://svnweb.freebsd.org/changeset/base/314770 Log: loader.efi: fix recent UEFI-boot regression on physical machines This patch fixes my recent patch "loader.efi: reduce the size of the staging area if necessary", which causes EFI-boot failure on physical machines since Mar 2: on the host there is a 1MB LoaderData memory range, which splits the big Conventional Memory range into a small one (15MB) and a big one: the small one is too small to hold the staging area. We can actually use the LoaderData range safely, because when amd64_tramp -> efi_copy_finish() starts to run, we're almost at the very end of the efi loader code and we're going to "return" to the kernel entry, so we're pretty sure we won't access any loader data any more. For people who are interested in the details: please see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=211746#c22 PS, some people also reported the regression happened to FreeBSD VM running on Bhyve in EFI mode. This patch should resolve it too, though I don't have such a setup to test. Reviewed by: sephe Approved by: sephe (mentor) MFC after: 2 weeks Sponsored by: Microsoft Differential Revision: https://reviews.freebsd.org/D9904 Modified: head/sys/boot/efi/loader/copy.c Modified: head/sys/boot/efi/loader/copy.c ============================================================================== --- head/sys/boot/efi/loader/copy.c Mon Mar 6 08:13:19 2017 (r314769) +++ head/sys/boot/efi/loader/copy.c Mon Mar 6 09:34:31 2017 (r314770) @@ -53,7 +53,7 @@ efi_verify_staging_size(unsigned long *n UINT32 dver; EFI_STATUS status; int i, ndesc; - unsigned long available_pages; + unsigned long available_pages = 0; sz = 0; status = BS->GetMemoryMap(&sz, 0, &key, &dsz, &dver); @@ -70,7 +70,6 @@ efi_verify_staging_size(unsigned long *n } ndesc = sz / dsz; - for (i = 0, p = map; i < ndesc; i++, p = NextMemoryDescriptor(p, dsz)) { start = p->PhysicalStart; @@ -81,20 +80,38 @@ efi_verify_staging_size(unsigned long *n continue; if (p->Type != EfiConventionalMemory) - continue; + printf("Warning: wrong EFI memory type: %d\n", + p->Type); available_pages = p->NumberOfPages - ((KERNEL_PHYSICAL_BASE - start) >> EFI_PAGE_SHIFT); + break; + } + + if (available_pages == 0) { + printf("Can't find valid memory map for staging area!\n"); + goto out; + } - if (*nr_pages > available_pages) { - printf("staging area size is reduced: %ld -> %ld!\n", - *nr_pages, available_pages); - *nr_pages = available_pages; - } + for ( ; i < ndesc; + i++, p = NextMemoryDescriptor(p, dsz)) { + if (p->Type != EfiConventionalMemory && + p->Type != EfiLoaderData) + break; - break; + if (p->PhysicalStart != end) + break; + + end = p->PhysicalStart + p->NumberOfPages * EFI_PAGE_SIZE; + + available_pages += p->NumberOfPages; } + if (*nr_pages > available_pages) { + printf("Staging area's size is reduced: %ld -> %ld!\n", + *nr_pages, available_pages); + *nr_pages = available_pages; + } out: free(map); } From owner-svn-src-all@freebsd.org Mon Mar 6 12:20:58 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 44E22CFA3F6; Mon, 6 Mar 2017 12:20:58 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id EFA281BD2; Mon, 6 Mar 2017 12:20:57 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26CKvQm042138; Mon, 6 Mar 2017 12:20:57 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26CKvAp042137; Mon, 6 Mar 2017 12:20:57 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201703061220.v26CKvAp042137@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Mon, 6 Mar 2017 12:20:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314771 - head/sys/compat/linuxkpi/common/include/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 12:20:58 -0000 Author: hselasky Date: Mon Mar 6 12:20:56 2017 New Revision: 314771 URL: https://svnweb.freebsd.org/changeset/base/314771 Log: Give LinuxKPI Read-Write semaphores better debug names when WITNESS_ALL is defined. The lock name is based on the filename and line number where the initialisation happens. MFC after: 1 week Sponsored by: Mellanox Technologies Modified: head/sys/compat/linuxkpi/common/include/linux/rwsem.h Modified: head/sys/compat/linuxkpi/common/include/linux/rwsem.h ============================================================================== --- head/sys/compat/linuxkpi/common/include/linux/rwsem.h Mon Mar 6 09:34:31 2017 (r314770) +++ head/sys/compat/linuxkpi/common/include/linux/rwsem.h Mon Mar 6 12:20:56 2017 (r314771) @@ -2,7 +2,7 @@ * Copyright (c) 2010 Isilon Systems, Inc. * Copyright (c) 2010 iX Systems, Inc. * Copyright (c) 2010 Panasas, Inc. - * Copyright (c) 2013, 2014 Mellanox Technologies, Ltd. + * Copyright (c) 2013-2017 Mellanox Technologies, Ltd. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -48,13 +48,25 @@ struct rw_semaphore { #define down_write_trylock(_rw) !!sx_try_xlock(&(_rw)->sx) #define downgrade_write(_rw) sx_downgrade(&(_rw)->sx) #define down_read_nested(_rw, _sc) down_read(_rw) +#define init_rwsem(_rw) linux_init_rwsem(_rw, rwsem_name("lnxrwsem")) + +#ifdef WITNESS_ALL +/* NOTE: the maximum WITNESS name is 64 chars */ +#define __rwsem_name(name, file, line) \ + (((const char *){file ":" #line "-" name}) + \ + (sizeof(file) > 16 ? sizeof(file) - 16 : 0)) +#else +#define __rwsem_name(name, file, line) name +#endif +#define _rwsem_name(...) __rwsem_name(__VA_ARGS__) +#define rwsem_name(name) _rwsem_name(name, __FILE__, __LINE__) static inline void -init_rwsem(struct rw_semaphore *rw) +linux_init_rwsem(struct rw_semaphore *rw, const char *name) { - memset(&rw->sx, 0, sizeof(rw->sx)); - sx_init_flags(&rw->sx, "lnxrwsem", SX_NOWITNESS); + memset(rw, 0, sizeof(*rw)); + sx_init_flags(&rw->sx, name, SX_NOWITNESS); } -#endif /* _LINUX_RWSEM_H_ */ +#endif /* _LINUX_RWSEM_H_ */ From owner-svn-src-all@freebsd.org Mon Mar 6 12:22:07 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4EB03CFA77B; Mon, 6 Mar 2017 12:22:07 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1B6371ED8; Mon, 6 Mar 2017 12:22:07 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26CM6he045161; Mon, 6 Mar 2017 12:22:06 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26CM6ej045160; Mon, 6 Mar 2017 12:22:06 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201703061222.v26CM6ej045160@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Mon, 6 Mar 2017 12:22:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314772 - head/sys/compat/linuxkpi/common/include/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 12:22:07 -0000 Author: hselasky Date: Mon Mar 6 12:22:05 2017 New Revision: 314772 URL: https://svnweb.freebsd.org/changeset/base/314772 Log: Implement DECLARE_RWSEM() macro in the LinuxKPI to initialize a Read-Write semaphore during module init time. MFC after: 1 week Sponsored by: Mellanox Technologies Modified: head/sys/compat/linuxkpi/common/include/linux/rwsem.h Modified: head/sys/compat/linuxkpi/common/include/linux/rwsem.h ============================================================================== --- head/sys/compat/linuxkpi/common/include/linux/rwsem.h Mon Mar 6 12:20:56 2017 (r314771) +++ head/sys/compat/linuxkpi/common/include/linux/rwsem.h Mon Mar 6 12:22:05 2017 (r314772) @@ -35,6 +35,7 @@ #include #include #include +#include struct rw_semaphore { struct sx sx; @@ -61,6 +62,14 @@ struct rw_semaphore { #define _rwsem_name(...) __rwsem_name(__VA_ARGS__) #define rwsem_name(name) _rwsem_name(name, __FILE__, __LINE__) +#define DECLARE_RWSEM(name) \ +struct rw_semaphore name; \ +static void name##_rwsem_init(void *arg) \ +{ \ + linux_init_rwsem(&name, rwsem_name(#name)) \ +} \ +SYSINIT(name, SI_SUB_LOCKS, SI_ORDER_SECOND, name##_rwsem_init, NULL) + static inline void linux_init_rwsem(struct rw_semaphore *rw, const char *name) { From owner-svn-src-all@freebsd.org Mon Mar 6 14:09:56 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0B88ECFBBD0; Mon, 6 Mar 2017 14:09:56 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A4B0014EB; Mon, 6 Mar 2017 14:09:55 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26E9sO8085980; Mon, 6 Mar 2017 14:09:54 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26E9sg0085979; Mon, 6 Mar 2017 14:09:54 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201703061409.v26E9sg0085979@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Mon, 6 Mar 2017 14:09:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314773 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 14:09:56 -0000 Author: kib Date: Mon Mar 6 14:09:54 2017 New Revision: 314773 URL: https://svnweb.freebsd.org/changeset/base/314773 Log: Instead of direct use of vm_map_insert(), call vm_map_fixed(MAP_CHECK_EXCL). This KPI explicitely indicates the intent of creating the mapping at the fixed address, and incorporates the map locking into the callee. Suggested and reviewed by: alc Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/kern/imgact_elf.c Modified: head/sys/kern/imgact_elf.c ============================================================================== --- head/sys/kern/imgact_elf.c Mon Mar 6 12:22:05 2017 (r314772) +++ head/sys/kern/imgact_elf.c Mon Mar 6 14:09:54 2017 (r314773) @@ -397,10 +397,8 @@ __elfN(map_partial)(vm_map_t map, vm_obj /* * Create the page if it doesn't exist yet. Ignore errors. */ - vm_map_lock(map); - vm_map_insert(map, NULL, 0, trunc_page(start), round_page(end), - VM_PROT_ALL, VM_PROT_ALL, 0); - vm_map_unlock(map); + vm_map_fixed(map, NULL, 0, trunc_page(start), round_page(end) - + trunc_page(start), VM_PROT_ALL, VM_PROT_ALL, MAP_CHECK_EXCL); /* * Find the page from the underlying object. @@ -451,10 +449,8 @@ __elfN(map_insert)(struct image_params * * The mapping is not page aligned. This means we have * to copy the data. Sigh. */ - vm_map_lock(map); - rv = vm_map_insert(map, NULL, 0, start, end, - prot | VM_PROT_WRITE, VM_PROT_ALL, 0); - vm_map_unlock(map); + rv = vm_map_fixed(map, NULL, 0, start, end - start, + prot | VM_PROT_WRITE, VM_PROT_ALL, MAP_CHECK_EXCL); if (rv != KERN_SUCCESS) return (rv); if (object == NULL) @@ -477,10 +473,9 @@ __elfN(map_insert)(struct image_params * rv = KERN_SUCCESS; } else { vm_object_reference(object); - vm_map_lock(map); - rv = vm_map_insert(map, object, offset, start, end, - prot, VM_PROT_ALL, cow); - vm_map_unlock(map); + rv = vm_map_fixed(map, object, offset, start, + end - start, prot, VM_PROT_ALL, + cow | MAP_CHECK_EXCL); if (rv != KERN_SUCCESS) { locked = VOP_ISLOCKED(imgp->vp); VOP_UNLOCK(imgp->vp, 0); From owner-svn-src-all@freebsd.org Mon Mar 6 14:56:58 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A49E6CFAC3B; Mon, 6 Mar 2017 14:56:58 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6FDC710F7; Mon, 6 Mar 2017 14:56:58 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26Euv2P006531; Mon, 6 Mar 2017 14:56:57 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26EuvnE006529; Mon, 6 Mar 2017 14:56:57 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201703061456.v26EuvnE006529@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Mon, 6 Mar 2017 14:56:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314774 - in head/sys/compat/linuxkpi/common: include/linux src X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 14:56:58 -0000 Author: hselasky Date: Mon Mar 6 14:56:57 2017 New Revision: 314774 URL: https://svnweb.freebsd.org/changeset/base/314774 Log: Implement add_timer_on() function in the LinuxKPI. Obtained from: kmacy @ MFC after: 1 week Sponsored by: Mellanox Technologies Modified: head/sys/compat/linuxkpi/common/include/linux/timer.h head/sys/compat/linuxkpi/common/src/linux_compat.c Modified: head/sys/compat/linuxkpi/common/include/linux/timer.h ============================================================================== --- head/sys/compat/linuxkpi/common/include/linux/timer.h Mon Mar 6 14:09:54 2017 (r314773) +++ head/sys/compat/linuxkpi/common/include/linux/timer.h Mon Mar 6 14:56:57 2017 (r314774) @@ -62,6 +62,7 @@ do { \ extern void mod_timer(struct timer_list *, unsigned long); extern void add_timer(struct timer_list *); +extern void add_timer_on(struct timer_list *, int cpu); #define del_timer(timer) callout_stop(&(timer)->timer_callout) #define del_timer_sync(timer) callout_drain(&(timer)->timer_callout) Modified: head/sys/compat/linuxkpi/common/src/linux_compat.c ============================================================================== --- head/sys/compat/linuxkpi/common/src/linux_compat.c Mon Mar 6 14:09:54 2017 (r314773) +++ head/sys/compat/linuxkpi/common/src/linux_compat.c Mon Mar 6 14:56:57 2017 (r314774) @@ -1023,6 +1023,15 @@ add_timer(struct timer_list *timer) &linux_timer_callback_wrapper, timer); } +void +add_timer_on(struct timer_list *timer, int cpu) +{ + + callout_reset_on(&timer->timer_callout, + linux_timer_jiffies_until(timer->expires), + &linux_timer_callback_wrapper, timer, cpu); +} + static void linux_timer_init(void *arg) { From owner-svn-src-all@freebsd.org Mon Mar 6 15:08:28 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 48D1FCFB144 for ; Mon, 6 Mar 2017 15:08:28 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CB9C31AF9 for ; Mon, 6 Mar 2017 15:08:27 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from tom.home (kib@localhost [127.0.0.1]) by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id v26F7XTH063165 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Mon, 6 Mar 2017 17:07:33 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua v26F7XTH063165 Received: (from kostik@localhost) by tom.home (8.15.2/8.15.2/Submit) id v26F7WHE063164; Mon, 6 Mar 2017 17:07:32 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Mon, 6 Mar 2017 17:07:32 +0200 From: Konstantin Belousov To: Jilles Tjoelker Cc: Bruce Evans , John Baldwin , Pedro Giffuni , Slawa Olhovchenkov , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314669 - head/sys/i386/conf Message-ID: <20170306150732.GG30979@kib.kiev.ua> References: <201703041504.v24F4HMh023937@repo.freebsd.org> <20170304211611.GW2092@kib.kiev.ua> <1951800.W2d2k3eamI@ralph.baldwin.cx> <20170304231822.GA30979@kib.kiev.ua> <20170305111842.K1472@besplex.bde.org> <20170305144045.GA15347@stack.nl> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170305144045.GA15347@stack.nl> User-Agent: Mutt/1.8.0 (2017-02-23) X-Spam-Status: No, score=-2.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.1 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on tom.home X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 15:08:28 -0000 On Sun, Mar 05, 2017 at 03:40:45PM +0100, Jilles Tjoelker wrote: > On Sun, Mar 05, 2017 at 11:35:26AM +1100, Bruce Evans wrote: > > On Sun, 5 Mar 2017, Konstantin Belousov wrote: > > > > On Sat, Mar 04, 2017 at 02:54:56PM -0800, John Baldwin wrote: > > >> On Saturday, March 04, 2017 11:16:11 PM Konstantin Belousov wrote: > > >>> On Sat, Mar 04, 2017 at 03:49:52PM -0500, Pedro Giffuni wrote: > > >>>> The number came out from an old posting involving buildworld times, which I can???t find now :(. > > >>>> Things seem to have changed a lot: it was surely using GCC back then, I don???t believe clang does much distinction about 486 at all. > > >>>> > > >>>> BTW, does it make sense to keep i586 in the configuration still? Both i486 and i586 were once removed but later re-instated in r205336. > > >>>> > > >>> What did make significant impact on 32bit shared libraries some time ago > > >>> was to compile them with -mtune=i686. Default PIC prologue effectively > > >>> neutered return stack predictor, adding uneccessary overhead to already > > >>> expensive PIC code. I think that this is even measureable, i.e. it might > > >>> give >= 5% of difference. > > > I now use -mtune=athlon-xp (and no other -m CFLAGS) to get the same effect > > with minor additional optimizations/pessimizations for athlon-xp. I forget > > if I switched to this before or after getting jhb to not use > > -mtune=pentiumpro. Maybe we didn't know at the time that the pentiumpro > > optimizations affected little more than this PIC problem. > > > >>> I did not rechecked modern compilers WRT the generated PIC code, > > >>> but I doubt that the thing changed recently. > > > >>> Several notes: -mtune is not -march, i.e. the code would be still targeted > > >>> for 486 instruction set, but scheduling is optimized for more modern CPUs. > > >>> Also, recent gcc puts specific meaning into -mtune=i686, interpreting it > > >>> as request for scheduling for generic modern CPUs. We already compile > > >>> 32bit compat libs on amd64 with -march=i686. > > > >>> Working on this stuff would be much more useful than tweaking > > >>> kernel config for CPU detection. > > > >> Hmm, I originally wanted to use -mtune=i686 (spelled as > > >> -mcpu=pentiumpro) on i386 builds for this reason, but I removed it > > >> at bde@'s request in r125252. I would be happy to go back to adding > > >> -mtune for i386 when CPUTYPE isn't specified. > > > > I just rechecked. > > > gcc, at least 4.9 and 6.3, generate 'right' prologue, i.e. > > > call __x86.get_pc_thunk.cx (ecx or whatever register > > > which is used to address GOT) > > > __x86.get_pc_thunk.cx: > > > movl (%esp), %ecx > > > ret > > > even when compiling for -march=i486. > > > > OTOH, clang 3.9.1 uses > > > calll .L0 > > > .L0: popl %eax > > > to get the base even for native nehalem and newer CPUs. > > > > So indeed there is no reason to bother. gcc become too good to require any > > > tuning, and clang generates unoptimal code even when hinted. I did not > > > checked 4.0. > > > The old method might actually be best for the original i386. It is > > 1 byte larger per call, but 1 instruction shorter by dynamic count. > > Original i386 has poor instruction fetch bandwidth and no caches and > > to help or harm. Even the (%esp) address mode can cost a cycle on > > original i386, and setting up a frame pointer to access the stack would > > be much worse, while on modern x86 the frame pointer might cost nothing > > since it can be done in parallel. > > > Maybe some newer CPUs have better return address predictors so the old > > method is best for them too. > > > It is only clear that generic optimizations should use the new method, > > since CPU manufacturers won't pessimize it since it looks like a normal > > function call. > > I tried a naive benchmark of a million iterations on a > > CPU: Intel(R) Core(TM) i5-3330 CPU @ 3.00GHz (2993.26-MHz K8-class CPU) > Origin="GenuineIntel" Id=0x306a9 Family=0x6 Model=0x3a Stepping=9 > > and a subroutine containing the old method is almost as fast as an empty > subroutine (3.8ns including loop overhead), while a subroutine > containing the new method is slower (6.3 ns including loop overhead). > Apparently this CPU knows that a call to the next instruction will not > be returned to. Or the branch predictor learned that return happens to the same address always and stack pointer tracking logic was shut down. Of course, this is a speculation, we will never know. > > Likewise, the old method is faster on a > > hw.model: Intel(R) Xeon(R) CPU X5675 @ 3.07GHz > > On the other hand, the old method is slower on an old > > hw.model: Intel(R) Core(TM)2 CPU 6400 @ 2.13GHz > > Apparently, LLVM has decided to trade considerably worse performance on > CPUs such as Core2 for better performance on newer and older CPUs. What > is somewhat surprising is that there is no way to use the GCC method. > Then again, LLVM does not support bypassing the PLT either (loading the > address from the GOT directly). > > Given that the old method is quite commonly used, it does not seem very > likely that CPU manufacturers will pessimize it in future. I do not doubt results of very interesting and refreshing test you did. I only want to point that the bad effects of a call non complemented with ret would be only visible in case where the call stack is deep. I.e., the benchmark should include some levels of calls, and even then, to neuter the neural nets and other tricks, return addresses might need to be dynamic so that other mechanisms do not compensate. It might require some help from the performance monitor counters to detect the presence of the branch misprediction and corresponding roll-backs to state that the branch predictor logic was defeated. From owner-svn-src-all@freebsd.org Mon Mar 6 15:15:01 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 43AE2CFB3DA; Mon, 6 Mar 2017 15:15:01 +0000 (UTC) (envelope-from np@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 1B8C31FE1; Mon, 6 Mar 2017 15:15:01 +0000 (UTC) (envelope-from np@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26FF0np014573; Mon, 6 Mar 2017 15:15:00 GMT (envelope-from np@FreeBSD.org) Received: (from np@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26FExcb014558; Mon, 6 Mar 2017 15:14:59 GMT (envelope-from np@FreeBSD.org) Message-Id: <201703061514.v26FExcb014558@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: np set sender to np@FreeBSD.org using -f From: Navdeep Parhar Date: Mon, 6 Mar 2017 15:14:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314775 - stable/11/sys/dev/cxgbe/iw_cxgbe X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 15:15:01 -0000 Author: np Date: Mon Mar 6 15:14:59 2017 New Revision: 314775 URL: https://svnweb.freebsd.org/changeset/base/314775 Log: MFC r314509 and r314578. r314509: cxgbe/iw_cxgbe: Do not check the size of the memory region being registered. T4/5/6 have no internal limit on this size. This is probably a copy paste from the T3 iw_cxgb driver. r314578: cxgbe/iw_cxgbe: Implement sq/rq drain operation. ULPs can set a qp's state to ERROR and then post a work request on the sq and/or rq. When the reply for that work request comes back it is guaranteed that all previous work requests posted on that queue have been drained. Sponsored by: Chelsio Communications Modified: stable/11/sys/dev/cxgbe/iw_cxgbe/cq.c stable/11/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h stable/11/sys/dev/cxgbe/iw_cxgbe/mem.c stable/11/sys/dev/cxgbe/iw_cxgbe/qp.c stable/11/sys/dev/cxgbe/iw_cxgbe/t4.h Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/cxgbe/iw_cxgbe/cq.c ============================================================================== --- stable/11/sys/dev/cxgbe/iw_cxgbe/cq.c Mon Mar 6 14:56:57 2017 (r314774) +++ stable/11/sys/dev/cxgbe/iw_cxgbe/cq.c Mon Mar 6 15:14:59 2017 (r314775) @@ -450,6 +450,15 @@ static int poll_cq(struct t4_wq *wq, str } /* + * Special cqe for drain WR completions... + */ + if (CQE_OPCODE(hw_cqe) == C4IW_DRAIN_OPCODE) { + *cookie = CQE_DRAIN_COOKIE(hw_cqe); + *cqe = *hw_cqe; + goto skip_cqe; + } + + /* * Gotta tweak READ completions: * 1) the cqe doesn't contain the sq_wptr from the wr. * 2) opcode not reflected from the wr. @@ -665,6 +674,9 @@ static int c4iw_poll_cq_one(struct c4iw_ case FW_RI_FAST_REGISTER: wc->opcode = IB_WC_FAST_REG_MR; break; + case C4IW_DRAIN_OPCODE: + wc->opcode = IB_WC_SEND; + break; default: printf("Unexpected opcode %d " "in the CQE received for QPID = 0x%0x\n", Modified: stable/11/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h ============================================================================== --- stable/11/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h Mon Mar 6 14:56:57 2017 (r314774) +++ stable/11/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h Mon Mar 6 15:14:59 2017 (r314775) @@ -559,6 +559,8 @@ static inline int to_ib_qp_state(int c4i return IB_QPS_ERR; } +#define C4IW_DRAIN_OPCODE FW_RI_SGE_EC_CR_RETURN + static inline u32 c4iw_ib_to_tpt_access(int a) { return (a & IB_ACCESS_REMOTE_WRITE ? FW_RI_MEM_ACCESS_REM_WRITE : 0) | Modified: stable/11/sys/dev/cxgbe/iw_cxgbe/mem.c ============================================================================== --- stable/11/sys/dev/cxgbe/iw_cxgbe/mem.c Mon Mar 6 14:56:57 2017 (r314774) +++ stable/11/sys/dev/cxgbe/iw_cxgbe/mem.c Mon Mar 6 15:14:59 2017 (r314775) @@ -341,9 +341,6 @@ static int build_phys_page_list(struct i PAGE_SIZE - 1) & PAGE_MASK; } - if (*total_size > 0xFFFFFFFFULL) - return -ENOMEM; - /* Find largest page shift we can use to cover buffers */ for (*shift = PAGE_SHIFT; *shift < 27; ++(*shift)) if ((1ULL << *shift) & mask) Modified: stable/11/sys/dev/cxgbe/iw_cxgbe/qp.c ============================================================================== --- stable/11/sys/dev/cxgbe/iw_cxgbe/qp.c Mon Mar 6 14:56:57 2017 (r314774) +++ stable/11/sys/dev/cxgbe/iw_cxgbe/qp.c Mon Mar 6 15:14:59 2017 (r314775) @@ -577,6 +577,66 @@ void c4iw_qp_rem_ref(struct ib_qp *qp) wake_up(&(to_c4iw_qp(qp)->wait)); } +static void complete_sq_drain_wr(struct c4iw_qp *qhp, struct ib_send_wr *wr) +{ + struct t4_cqe cqe = {}; + struct c4iw_cq *schp; + unsigned long flag; + struct t4_cq *cq; + + schp = to_c4iw_cq(qhp->ibqp.send_cq); + cq = &schp->cq; + + PDBG("%s drain sq id %u\n", __func__, qhp->wq.sq.qid); + cqe.u.drain_cookie = wr->wr_id; + cqe.header = cpu_to_be32(V_CQE_STATUS(T4_ERR_SWFLUSH) | + V_CQE_OPCODE(C4IW_DRAIN_OPCODE) | + V_CQE_TYPE(1) | + V_CQE_SWCQE(1) | + V_CQE_QPID(qhp->wq.sq.qid)); + + spin_lock_irqsave(&schp->lock, flag); + cqe.bits_type_ts = cpu_to_be64(V_CQE_GENBIT((u64)cq->gen)); + cq->sw_queue[cq->sw_pidx] = cqe; + t4_swcq_produce(cq); + spin_unlock_irqrestore(&schp->lock, flag); + + spin_lock_irqsave(&schp->comp_handler_lock, flag); + (*schp->ibcq.comp_handler)(&schp->ibcq, + schp->ibcq.cq_context); + spin_unlock_irqrestore(&schp->comp_handler_lock, flag); +} + +static void complete_rq_drain_wr(struct c4iw_qp *qhp, struct ib_recv_wr *wr) +{ + struct t4_cqe cqe = {}; + struct c4iw_cq *rchp; + unsigned long flag; + struct t4_cq *cq; + + rchp = to_c4iw_cq(qhp->ibqp.recv_cq); + cq = &rchp->cq; + + PDBG("%s drain rq id %u\n", __func__, qhp->wq.sq.qid); + cqe.u.drain_cookie = wr->wr_id; + cqe.header = cpu_to_be32(V_CQE_STATUS(T4_ERR_SWFLUSH) | + V_CQE_OPCODE(C4IW_DRAIN_OPCODE) | + V_CQE_TYPE(0) | + V_CQE_SWCQE(1) | + V_CQE_QPID(qhp->wq.sq.qid)); + + spin_lock_irqsave(&rchp->lock, flag); + cqe.bits_type_ts = cpu_to_be64(V_CQE_GENBIT((u64)cq->gen)); + cq->sw_queue[cq->sw_pidx] = cqe; + t4_swcq_produce(cq); + spin_unlock_irqrestore(&rchp->lock, flag); + + spin_lock_irqsave(&rchp->comp_handler_lock, flag); + (*rchp->ibcq.comp_handler)(&rchp->ibcq, + rchp->ibcq.cq_context); + spin_unlock_irqrestore(&rchp->comp_handler_lock, flag); +} + int c4iw_post_send(struct ib_qp *ibqp, struct ib_send_wr *wr, struct ib_send_wr **bad_wr) { @@ -595,7 +655,8 @@ int c4iw_post_send(struct ib_qp *ibqp, s spin_lock_irqsave(&qhp->lock, flag); if (t4_wq_in_error(&qhp->wq)) { spin_unlock_irqrestore(&qhp->lock, flag); - return -EINVAL; + complete_sq_drain_wr(qhp, wr); + return err; } num_wrs = t4_sq_avail(&qhp->wq); if (num_wrs == 0) { @@ -708,7 +769,8 @@ int c4iw_post_receive(struct ib_qp *ibqp spin_lock_irqsave(&qhp->lock, flag); if (t4_wq_in_error(&qhp->wq)) { spin_unlock_irqrestore(&qhp->lock, flag); - return -EINVAL; + complete_rq_drain_wr(qhp, wr); + return err; } num_wrs = t4_rq_avail(&qhp->wq); if (num_wrs == 0) { @@ -1303,7 +1365,12 @@ int c4iw_modify_qp(struct c4iw_dev *rhp, } break; case C4IW_QP_STATE_CLOSING: - if (!internal) { + + /* + * Allow kernel users to move to ERROR for qp draining. + */ + if (!internal && (qhp->ibqp.uobject || attrs->next_state != + C4IW_QP_STATE_ERROR)) { ret = -EINVAL; goto out; } Modified: stable/11/sys/dev/cxgbe/iw_cxgbe/t4.h ============================================================================== --- stable/11/sys/dev/cxgbe/iw_cxgbe/t4.h Mon Mar 6 14:56:57 2017 (r314774) +++ stable/11/sys/dev/cxgbe/iw_cxgbe/t4.h Mon Mar 6 15:14:59 2017 (r314775) @@ -203,6 +203,7 @@ struct t4_cqe { __be32 wrid_hi; __be32 wrid_low; } gen; + u64 drain_cookie; } u; __be64 reserved; __be64 bits_type_ts; @@ -261,6 +262,7 @@ struct t4_cqe { /* generic accessor macros */ #define CQE_WRID_HI(x) ((x)->u.gen.wrid_hi) #define CQE_WRID_LOW(x) ((x)->u.gen.wrid_low) +#define CQE_DRAIN_COOKIE(x) (x)->u.drain_cookie; /* macros for flit 3 of the cqe */ #define S_CQE_GENBIT 63 From owner-svn-src-all@freebsd.org Mon Mar 6 15:16:17 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C9442CFB44E; Mon, 6 Mar 2017 15:16:17 +0000 (UTC) (envelope-from np@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7C0701127; Mon, 6 Mar 2017 15:16:17 +0000 (UTC) (envelope-from np@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26FGGqm014664; Mon, 6 Mar 2017 15:16:16 GMT (envelope-from np@FreeBSD.org) Received: (from np@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26FGGFS014657; Mon, 6 Mar 2017 15:16:16 GMT (envelope-from np@FreeBSD.org) Message-Id: <201703061516.v26FGGFS014657@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: np set sender to np@FreeBSD.org using -f From: Navdeep Parhar Date: Mon, 6 Mar 2017 15:16:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314776 - stable/10/sys/dev/cxgbe/iw_cxgbe X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 15:16:17 -0000 Author: np Date: Mon Mar 6 15:16:15 2017 New Revision: 314776 URL: https://svnweb.freebsd.org/changeset/base/314776 Log: MFC r314509 and r314578. r314509: cxgbe/iw_cxgbe: Do not check the size of the memory region being registered. T4/5/6 have no internal limit on this size. This is probably a copy paste from the T3 iw_cxgb driver. r314578: cxgbe/iw_cxgbe: Implement sq/rq drain operation. ULPs can set a qp's state to ERROR and then post a work request on the sq and/or rq. When the reply for that work request comes back it is guaranteed that all previous work requests posted on that queue have been drained. Sponsored by: Chelsio Communications Modified: stable/10/sys/dev/cxgbe/iw_cxgbe/cq.c stable/10/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h stable/10/sys/dev/cxgbe/iw_cxgbe/mem.c stable/10/sys/dev/cxgbe/iw_cxgbe/qp.c stable/10/sys/dev/cxgbe/iw_cxgbe/t4.h Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/cxgbe/iw_cxgbe/cq.c ============================================================================== --- stable/10/sys/dev/cxgbe/iw_cxgbe/cq.c Mon Mar 6 15:14:59 2017 (r314775) +++ stable/10/sys/dev/cxgbe/iw_cxgbe/cq.c Mon Mar 6 15:16:15 2017 (r314776) @@ -450,6 +450,15 @@ static int poll_cq(struct t4_wq *wq, str } /* + * Special cqe for drain WR completions... + */ + if (CQE_OPCODE(hw_cqe) == C4IW_DRAIN_OPCODE) { + *cookie = CQE_DRAIN_COOKIE(hw_cqe); + *cqe = *hw_cqe; + goto skip_cqe; + } + + /* * Gotta tweak READ completions: * 1) the cqe doesn't contain the sq_wptr from the wr. * 2) opcode not reflected from the wr. @@ -665,6 +674,9 @@ static int c4iw_poll_cq_one(struct c4iw_ case FW_RI_FAST_REGISTER: wc->opcode = IB_WC_FAST_REG_MR; break; + case C4IW_DRAIN_OPCODE: + wc->opcode = IB_WC_SEND; + break; default: printf("Unexpected opcode %d " "in the CQE received for QPID = 0x%0x\n", Modified: stable/10/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h ============================================================================== --- stable/10/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h Mon Mar 6 15:14:59 2017 (r314775) +++ stable/10/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h Mon Mar 6 15:16:15 2017 (r314776) @@ -559,6 +559,8 @@ static inline int to_ib_qp_state(int c4i return IB_QPS_ERR; } +#define C4IW_DRAIN_OPCODE FW_RI_SGE_EC_CR_RETURN + static inline u32 c4iw_ib_to_tpt_access(int a) { return (a & IB_ACCESS_REMOTE_WRITE ? FW_RI_MEM_ACCESS_REM_WRITE : 0) | Modified: stable/10/sys/dev/cxgbe/iw_cxgbe/mem.c ============================================================================== --- stable/10/sys/dev/cxgbe/iw_cxgbe/mem.c Mon Mar 6 15:14:59 2017 (r314775) +++ stable/10/sys/dev/cxgbe/iw_cxgbe/mem.c Mon Mar 6 15:16:15 2017 (r314776) @@ -341,9 +341,6 @@ static int build_phys_page_list(struct i PAGE_SIZE - 1) & PAGE_MASK; } - if (*total_size > 0xFFFFFFFFULL) - return -ENOMEM; - /* Find largest page shift we can use to cover buffers */ for (*shift = PAGE_SHIFT; *shift < 27; ++(*shift)) if ((1ULL << *shift) & mask) Modified: stable/10/sys/dev/cxgbe/iw_cxgbe/qp.c ============================================================================== --- stable/10/sys/dev/cxgbe/iw_cxgbe/qp.c Mon Mar 6 15:14:59 2017 (r314775) +++ stable/10/sys/dev/cxgbe/iw_cxgbe/qp.c Mon Mar 6 15:16:15 2017 (r314776) @@ -576,6 +576,66 @@ void c4iw_qp_rem_ref(struct ib_qp *qp) wake_up(&(to_c4iw_qp(qp)->wait)); } +static void complete_sq_drain_wr(struct c4iw_qp *qhp, struct ib_send_wr *wr) +{ + struct t4_cqe cqe = {}; + struct c4iw_cq *schp; + unsigned long flag; + struct t4_cq *cq; + + schp = to_c4iw_cq(qhp->ibqp.send_cq); + cq = &schp->cq; + + PDBG("%s drain sq id %u\n", __func__, qhp->wq.sq.qid); + cqe.u.drain_cookie = wr->wr_id; + cqe.header = cpu_to_be32(V_CQE_STATUS(T4_ERR_SWFLUSH) | + V_CQE_OPCODE(C4IW_DRAIN_OPCODE) | + V_CQE_TYPE(1) | + V_CQE_SWCQE(1) | + V_CQE_QPID(qhp->wq.sq.qid)); + + spin_lock_irqsave(&schp->lock, flag); + cqe.bits_type_ts = cpu_to_be64(V_CQE_GENBIT((u64)cq->gen)); + cq->sw_queue[cq->sw_pidx] = cqe; + t4_swcq_produce(cq); + spin_unlock_irqrestore(&schp->lock, flag); + + spin_lock_irqsave(&schp->comp_handler_lock, flag); + (*schp->ibcq.comp_handler)(&schp->ibcq, + schp->ibcq.cq_context); + spin_unlock_irqrestore(&schp->comp_handler_lock, flag); +} + +static void complete_rq_drain_wr(struct c4iw_qp *qhp, struct ib_recv_wr *wr) +{ + struct t4_cqe cqe = {}; + struct c4iw_cq *rchp; + unsigned long flag; + struct t4_cq *cq; + + rchp = to_c4iw_cq(qhp->ibqp.recv_cq); + cq = &rchp->cq; + + PDBG("%s drain rq id %u\n", __func__, qhp->wq.sq.qid); + cqe.u.drain_cookie = wr->wr_id; + cqe.header = cpu_to_be32(V_CQE_STATUS(T4_ERR_SWFLUSH) | + V_CQE_OPCODE(C4IW_DRAIN_OPCODE) | + V_CQE_TYPE(0) | + V_CQE_SWCQE(1) | + V_CQE_QPID(qhp->wq.sq.qid)); + + spin_lock_irqsave(&rchp->lock, flag); + cqe.bits_type_ts = cpu_to_be64(V_CQE_GENBIT((u64)cq->gen)); + cq->sw_queue[cq->sw_pidx] = cqe; + t4_swcq_produce(cq); + spin_unlock_irqrestore(&rchp->lock, flag); + + spin_lock_irqsave(&rchp->comp_handler_lock, flag); + (*rchp->ibcq.comp_handler)(&rchp->ibcq, + rchp->ibcq.cq_context); + spin_unlock_irqrestore(&rchp->comp_handler_lock, flag); +} + int c4iw_post_send(struct ib_qp *ibqp, struct ib_send_wr *wr, struct ib_send_wr **bad_wr) { @@ -594,7 +654,8 @@ int c4iw_post_send(struct ib_qp *ibqp, s spin_lock_irqsave(&qhp->lock, flag); if (t4_wq_in_error(&qhp->wq)) { spin_unlock_irqrestore(&qhp->lock, flag); - return -EINVAL; + complete_sq_drain_wr(qhp, wr); + return err; } num_wrs = t4_sq_avail(&qhp->wq); if (num_wrs == 0) { @@ -707,7 +768,8 @@ int c4iw_post_receive(struct ib_qp *ibqp spin_lock_irqsave(&qhp->lock, flag); if (t4_wq_in_error(&qhp->wq)) { spin_unlock_irqrestore(&qhp->lock, flag); - return -EINVAL; + complete_rq_drain_wr(qhp, wr); + return err; } num_wrs = t4_rq_avail(&qhp->wq); if (num_wrs == 0) { @@ -1302,7 +1364,12 @@ int c4iw_modify_qp(struct c4iw_dev *rhp, } break; case C4IW_QP_STATE_CLOSING: - if (!internal) { + + /* + * Allow kernel users to move to ERROR for qp draining. + */ + if (!internal && (qhp->ibqp.uobject || attrs->next_state != + C4IW_QP_STATE_ERROR)) { ret = -EINVAL; goto out; } Modified: stable/10/sys/dev/cxgbe/iw_cxgbe/t4.h ============================================================================== --- stable/10/sys/dev/cxgbe/iw_cxgbe/t4.h Mon Mar 6 15:14:59 2017 (r314775) +++ stable/10/sys/dev/cxgbe/iw_cxgbe/t4.h Mon Mar 6 15:16:15 2017 (r314776) @@ -203,6 +203,7 @@ struct t4_cqe { __be32 wrid_hi; __be32 wrid_low; } gen; + u64 drain_cookie; } u; __be64 reserved; __be64 bits_type_ts; @@ -261,6 +262,7 @@ struct t4_cqe { /* generic accessor macros */ #define CQE_WRID_HI(x) ((x)->u.gen.wrid_hi) #define CQE_WRID_LOW(x) ((x)->u.gen.wrid_low) +#define CQE_DRAIN_COOKIE(x) (x)->u.drain_cookie; /* macros for flit 3 of the cqe */ #define S_CQE_GENBIT 63 From owner-svn-src-all@freebsd.org Mon Mar 6 15:37:35 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A20B1CFBC17; Mon, 6 Mar 2017 15:37:35 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 719BF1D0A; Mon, 6 Mar 2017 15:37:35 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26FbYaS022848; Mon, 6 Mar 2017 15:37:34 GMT (envelope-from pfg@FreeBSD.org) Received: (from pfg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26FbYX0022847; Mon, 6 Mar 2017 15:37:34 GMT (envelope-from pfg@FreeBSD.org) Message-Id: <201703061537.v26FbYX0022847@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pfg set sender to pfg@FreeBSD.org using -f From: "Pedro F. Giffuni" Date: Mon, 6 Mar 2017 15:37:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314777 - head/lib/libpam/modules/pam_exec X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 15:37:35 -0000 Author: pfg Date: Mon Mar 6 15:37:34 2017 New Revision: 314777 URL: https://svnweb.freebsd.org/changeset/base/314777 Log: libfetch: extra bounds checking through reallocarray(3). Reviewed by: des MFC after: 1 week Modified: head/lib/libpam/modules/pam_exec/pam_exec.c Modified: head/lib/libpam/modules/pam_exec/pam_exec.c ============================================================================== --- head/lib/libpam/modules/pam_exec/pam_exec.c Mon Mar 6 15:16:15 2017 (r314776) +++ head/lib/libpam/modules/pam_exec/pam_exec.c Mon Mar 6 15:37:34 2017 (r314777) @@ -138,7 +138,7 @@ _pam_exec(pam_handle_t *pamh __unused, nitems = sizeof(env_items) / sizeof(*env_items); /* Count PAM return values put in the environment. */ nitems_rv = options->return_prog_exit_status ? PAM_RV_COUNT : 0; - tmp = realloc(envlist, (envlen + nitems + 1 + nitems_rv + 1) * + tmp = reallocarray(envlist, envlen + nitems + 1 + nitems_rv + 1, sizeof(*envlist)); if (tmp == NULL) { openpam_free_envlist(envlist); From owner-svn-src-all@freebsd.org Mon Mar 6 15:38:04 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 73DDACFBC75; Mon, 6 Mar 2017 15:38:04 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 409C81E52; Mon, 6 Mar 2017 15:38:04 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26Fc36k022911; Mon, 6 Mar 2017 15:38:03 GMT (envelope-from pfg@FreeBSD.org) Received: (from pfg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26Fc33J022910; Mon, 6 Mar 2017 15:38:03 GMT (envelope-from pfg@FreeBSD.org) Message-Id: <201703061538.v26Fc33J022910@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pfg set sender to pfg@FreeBSD.org using -f From: "Pedro F. Giffuni" Date: Mon, 6 Mar 2017 15:38:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314778 - head/lib/libfetch X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 15:38:04 -0000 Author: pfg Date: Mon Mar 6 15:38:03 2017 New Revision: 314778 URL: https://svnweb.freebsd.org/changeset/base/314778 Log: libfetch: extra bounds checking through reallocarray(3). Reviewed by: des MFC after: 1 week Modified: head/lib/libfetch/common.c Modified: head/lib/libfetch/common.c ============================================================================== --- head/lib/libfetch/common.c Mon Mar 6 15:37:34 2017 (r314777) +++ head/lib/libfetch/common.c Mon Mar 6 15:38:03 2017 (r314778) @@ -1306,7 +1306,7 @@ fetch_add_entry(struct url_ent **p, int } if (*len >= *size - 1) { - tmp = realloc(*p, (*size * 2 + 1) * sizeof(**p)); + tmp = reallocarray(*p, *size * 2 + 1, sizeof(**p)); if (tmp == NULL) { errno = ENOMEM; fetch_syserr(); From owner-svn-src-all@freebsd.org Mon Mar 6 15:42:04 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B7CB9CFBE4D; Mon, 6 Mar 2017 15:42:04 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7F3381240; Mon, 6 Mar 2017 15:42:04 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26Fg3Kr026854; Mon, 6 Mar 2017 15:42:03 GMT (envelope-from pfg@FreeBSD.org) Received: (from pfg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26Fg35T026853; Mon, 6 Mar 2017 15:42:03 GMT (envelope-from pfg@FreeBSD.org) Message-Id: <201703061542.v26Fg35T026853@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pfg set sender to pfg@FreeBSD.org using -f From: "Pedro F. Giffuni" Date: Mon, 6 Mar 2017 15:42:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314779 - head/lib/libpam/modules/pam_exec X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 15:42:04 -0000 Author: pfg Date: Mon Mar 6 15:42:03 2017 New Revision: 314779 URL: https://svnweb.freebsd.org/changeset/base/314779 Log: Revert r314777: wrong log, the change was to libpam. Modified: head/lib/libpam/modules/pam_exec/pam_exec.c Modified: head/lib/libpam/modules/pam_exec/pam_exec.c ============================================================================== --- head/lib/libpam/modules/pam_exec/pam_exec.c Mon Mar 6 15:38:03 2017 (r314778) +++ head/lib/libpam/modules/pam_exec/pam_exec.c Mon Mar 6 15:42:03 2017 (r314779) @@ -138,7 +138,7 @@ _pam_exec(pam_handle_t *pamh __unused, nitems = sizeof(env_items) / sizeof(*env_items); /* Count PAM return values put in the environment. */ nitems_rv = options->return_prog_exit_status ? PAM_RV_COUNT : 0; - tmp = reallocarray(envlist, envlen + nitems + 1 + nitems_rv + 1, + tmp = realloc(envlist, (envlen + nitems + 1 + nitems_rv + 1) * sizeof(*envlist)); if (tmp == NULL) { openpam_free_envlist(envlist); From owner-svn-src-all@freebsd.org Mon Mar 6 15:44:21 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0E46ECFBEF7; Mon, 6 Mar 2017 15:44:21 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E1912154F; Mon, 6 Mar 2017 15:44:20 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: by freefall.freebsd.org (Postfix, from userid 1235) id 34BB21699; Mon, 6 Mar 2017 15:44:20 +0000 (UTC) Date: Mon, 6 Mar 2017 16:44:19 +0100 From: Baptiste Daroussin To: "Pedro F. Giffuni" Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314778 - head/lib/libfetch Message-ID: <20170306154419.psguuxspco3hgw64@ivaldir.net> References: <201703061538.v26Fc33J022910@repo.freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="rtulrpcuyuuqcf2s" Content-Disposition: inline In-Reply-To: <201703061538.v26Fc33J022910@repo.freebsd.org> User-Agent: NeoMutt/20170225 (1.8.0) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 15:44:21 -0000 --rtulrpcuyuuqcf2s Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Mar 06, 2017 at 03:38:03PM +0000, Pedro F. Giffuni wrote: > Author: pfg > Date: Mon Mar 6 15:38:03 2017 > New Revision: 314778 > URL: https://svnweb.freebsd.org/changeset/base/314778 >=20 > Log: > libfetch: extra bounds checking through reallocarray(3). > =20 > Reviewed by: des > MFC after: 1 week >=20 > Modified: > head/lib/libfetch/common.c >=20 > Modified: head/lib/libfetch/common.c > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > --- head/lib/libfetch/common.c Mon Mar 6 15:37:34 2017 (r314777) > +++ head/lib/libfetch/common.c Mon Mar 6 15:38:03 2017 (r314778) > @@ -1306,7 +1306,7 @@ fetch_add_entry(struct url_ent **p, int=20 > } > =20 > if (*len >=3D *size - 1) { > - tmp =3D realloc(*p, (*size * 2 + 1) * sizeof(**p)); > + tmp =3D reallocarray(*p, *size * 2 + 1, sizeof(**p)); It reduces portability of libfetch (which pkg depends on) I can probably ad= d an implementation of reallocarry in pkg itself. Best regards, Bapt --rtulrpcuyuuqcf2s Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEEgOTj3suS2urGXVU3Y4mL3PG3PloFAli9g9MACgkQY4mL3PG3 PlpuSBAA5iAxiI3TVgOf/7KDRNmJ+sUFfeMw/dd2cqcicTRhHXLFI8hwl20xZjz+ agsMoDEUidFi2IiD1qKk1BsWrO84EB527QgTkNk11NOS65dbd40yPqAvEbsQ+nu5 vkOmXxXHTh3CAjH+ILxzJ61KrDj5NcEmcGownHS4UhUEosk6iQhagrddU2ib6YuU LPXim/Itp6SK5t1VGT1xTQRdOX+OMA2y/MujaH68JKpcXjlLn+/ATADMgo/2Or67 ZEtoNFdTE72E+FRcDxB3fOBkQ1R1mUtWGydFYnFRQsJ17aT2ZaNbAmoky4DGXpGZ tNI4nh/R2LUS8PLQVYU++ar3Z6MMwvmA6hDKa1tia/++zmIcLzuAZIon58PffU7R IhicYnGI0yp4QAen396cgsk/tYWrOuhDFQnYoipIr68lueT4fR/TZ77uGNNr0SJn rZBjbeX9B/Kl1ohZ5GrwdQfqRId0PeyI6SzNVekQevmKbghLyF/8n1qZJ3nPw3IK vCZ18EATyH6RCYv7S8SiHY76LCD63dWphfWoYTDJW2HVG0OYIOybK5Y0xZ9heRB/ PFzT0tU57EEikgilwm+tSm9P/R+vxTLVHrpylK+Tl8N+L6S6zkLKStWRJ4Qe9IO6 yWR6mO4oIDmxRXRmEeDxFc4q0Ollv7kIA3JCaPLaskUdPvFyqnw= =63qX -----END PGP SIGNATURE----- --rtulrpcuyuuqcf2s-- From owner-svn-src-all@freebsd.org Mon Mar 6 15:45:47 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 70D67CFBF6D; Mon, 6 Mar 2017 15:45:47 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3DCD716BB; Mon, 6 Mar 2017 15:45:47 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26FjkMT027058; Mon, 6 Mar 2017 15:45:46 GMT (envelope-from pfg@FreeBSD.org) Received: (from pfg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26FjkNI027057; Mon, 6 Mar 2017 15:45:46 GMT (envelope-from pfg@FreeBSD.org) Message-Id: <201703061545.v26FjkNI027057@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: pfg set sender to pfg@FreeBSD.org using -f From: "Pedro F. Giffuni" Date: Mon, 6 Mar 2017 15:45:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314780 - head/lib/libpam/modules/pam_exec X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 15:45:47 -0000 Author: pfg Date: Mon Mar 6 15:45:46 2017 New Revision: 314780 URL: https://svnweb.freebsd.org/changeset/base/314780 Log: libpam: extra bounds checking through reallocarray(3). Reviewed by: des MFC after: 1 week Modified: head/lib/libpam/modules/pam_exec/pam_exec.c Modified: head/lib/libpam/modules/pam_exec/pam_exec.c ============================================================================== --- head/lib/libpam/modules/pam_exec/pam_exec.c Mon Mar 6 15:42:03 2017 (r314779) +++ head/lib/libpam/modules/pam_exec/pam_exec.c Mon Mar 6 15:45:46 2017 (r314780) @@ -138,7 +138,7 @@ _pam_exec(pam_handle_t *pamh __unused, nitems = sizeof(env_items) / sizeof(*env_items); /* Count PAM return values put in the environment. */ nitems_rv = options->return_prog_exit_status ? PAM_RV_COUNT : 0; - tmp = realloc(envlist, (envlen + nitems + 1 + nitems_rv + 1) * + tmp = reallocarray(envlist, envlen + nitems + 1 + nitems_rv + 1, sizeof(*envlist)); if (tmp == NULL) { openpam_free_envlist(envlist); From owner-svn-src-all@freebsd.org Mon Mar 6 16:57:33 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 686E1CFBBDD; Mon, 6 Mar 2017 16:57:33 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 35BF81DE5; Mon, 6 Mar 2017 16:57:33 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26GvWUj057413; Mon, 6 Mar 2017 16:57:32 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26GvWkb057412; Mon, 6 Mar 2017 16:57:32 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201703061657.v26GvWkb057412@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Mon, 6 Mar 2017 16:57:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-svnadmin@freebsd.org Subject: svn commit: r314781 - svnadmin/conf X-SVN-Group: svnadmin MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 16:57:33 -0000 Author: kib Date: Mon Mar 6 16:57:32 2017 New Revision: 314781 URL: https://svnweb.freebsd.org/changeset/base/314781 Log: Free Eric. Discussed with: vangyzen Approved by: core (implicit) Modified: svnadmin/conf/mentors Modified: svnadmin/conf/mentors ============================================================================== --- svnadmin/conf/mentors Mon Mar 6 15:45:46 2017 (r314780) +++ svnadmin/conf/mentors Mon Mar 6 16:57:32 2017 (r314781) @@ -12,7 +12,6 @@ # Mentee Mentor Optional comment achim scottl Co-mentor: emaste anish neel Co-mentor: grehan -badger kib Co-mentor: vangyzen dab vangyzen def pjd dexuan sephe From owner-svn-src-all@freebsd.org Mon Mar 6 17:28:09 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D2986CFBEC7; Mon, 6 Mar 2017 17:28:09 +0000 (UTC) (envelope-from brooks@spindle.one-eyed-alien.net) Received: from spindle.one-eyed-alien.net (spindle.one-eyed-alien.net [199.48.129.229]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9075A17A4; Mon, 6 Mar 2017 17:28:09 +0000 (UTC) (envelope-from brooks@spindle.one-eyed-alien.net) Received: by spindle.one-eyed-alien.net (Postfix, from userid 3001) id 516DC5A9F12; Mon, 6 Mar 2017 17:28:02 +0000 (UTC) Date: Mon, 6 Mar 2017 17:28:02 +0000 From: Brooks Davis To: Warner Losh Cc: rgrimes@freebsd.org, Ngie Cooper , Bryan Drewery , Ngie Cooper , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Subject: Re: svn commit: r314657 - in head/kerberos5: . lib/libgssapi_krb5 lib/libgssapi_ntlm lib/libgssapi_spnego lib/libhdb lib/libkafs5 lib/libkrb5 libexec/hprop libexec/kpasswdd tools/asn1_compile tools/slc Message-ID: <20170306172802.GA84620@spindle.one-eyed-alien.net> References: <201703042232.v24MW9jt079229@pdx.rh.CN85.dnsmgr.net> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="ZPt4rx8FFjLCG7dd" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.7.2 (2016-11-26) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 17:28:09 -0000 --ZPt4rx8FFjLCG7dd Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Mar 04, 2017 at 05:16:49PM -0700, Warner Losh wrote: > On Sat, Mar 4, 2017 at 3:32 PM, Rodney W. Grimes > wrote: > >> > >> > On Mar 4, 2017, at 13:43, Warner Losh wrote: > >> > > >> >> On Sat, Mar 4, 2017 at 1:25 PM, Bryan Drewery wrote: > >> >>> On 3/4/2017 12:20 PM, Rodney W. Grimes wrote: > >> >>> -- Start of PGP signed section. > >> >>> [ Charset windows-1252 unsupported, converting... ] > >> >>>>> On 3/4/2017 7:34 AM, Rodney W. Grimes wrote: > >> >>>>> What is ${.CURDIR:H:H} ????? Yes that seems to work but now we = are obscuring > >> >>>>> ../.. into makefile syntax magic, probably not a grand idea. > >> >>>> It just trims off the last directory component. This both reduces > >> >>>> namecache lookups, lessens the amount of data in a log, and makes > >> >>>> debugging a log simpler by not having a crazy path like: > >> >>>> /home/bdrewery/big/git/buildserver/sys/modules/usb/template/../..= /../dev/usb/template/usb_template.c > >> >>>> > >> >>>> It's far simpler to understand and work with: > >> >>>> /home/bdrewery/big/git/buildserver/sys/dev/usb/template/usb_templ= ate.c > >> >>>> > >> >>>> The only downside is it is slightly more obscure in a Makefile, b= ut once > >> >>>> you know what :H is then it's not a problem. This is why SRCTOP = is even > >> >>>> better than this as it is far more clear than even :H and avoids = the > >> >>>> ../../ problems. > >> >>> Lets do one or the other, but not both ${SRCTOP} and :H:H:H. It a= ppears > >> >>> that we now have a mix and mashed up some one way others the other. > >> >> > >> >> That I can agree with. I would prefer to standardize on SRCTOP as := H is > >> >> too obscure without learning about make details. > >> > > >> > :H is insane in 90% of the cases I've seen it used. Let's roll with > >> > SRCTOP everywhere we can. That's safer from directory motion anyway.= =2E. > >> > >> Ok, I have 3 votes for SRCTOP, so I'll implement the remaining change = using SRCTOP (for usr.bin), and reimplement the previous changes using SRCT= OP. > > > > And that some how over rides the 3 votes for not doing any of these cha= nges? > > Slow down please. We dont need a bike shed, but I think we need a clear > > target and a consense larger than 3+ 3- and less than a 6 hour wall clo= ck > > of discussion. > > > > It would also be best if it was this change and only this change commit= ted > > in very large (preferably about 20) commits. >=20 > We've had about 200-300 commits in the build system in the past year. > There's no real need to slow down. It's a real mess (though a lot less > of one thanks to Bryan) and SRCTOP is a definite cleanup. As someone who get merge conflicts (in CheriBSD) from a fairly part portion of these commits, I much prefer the small commits. While it's arguably the same work, I find it easier to review a small set of merge conflicts than a massive diff which might include multiple types of conflicts. Personally, I like the ${SRCTOP} changes and think using absolute tree relative paths is the way to go. Use of ${SRCTOP} consistently should make it easier to relocate things in the tree when that makes sense and makes including Makefile.inc's from other parts of the tree easier (for example, in CheriBSD, I build a libc_nosyscalls and a libsyscalls by including appropriate bits from libc's build infrastructure. -- Brooks --ZPt4rx8FFjLCG7dd Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEcBAEBAgAGBQJYvZwhAAoJEKzQXbSebgfAoxUIAJ3ncR4Hv6GFlhbx13+VeNZU MwznUgjC0vOzw35s/pmoevMov+w4P1M9y4Sfaz+lRnuDVxl3pETRmAvK6IA07Yxf hvFYbWmA2AtrSzpzKcTkTnCl+wwPWyw9zAOq4lJh5Qa+up5jY3TUk9hefxrmyynY HqEwUia8oVixUCUjSIKc/5jfizHcSXctmLM06KK9jbaKSr/b7dBiau0Xb2H/TmK7 JrxCyry0MGI42JC7HwSeyTOboxathSximL+F1BXX5tUV/ixqPNDLBRDLCLjJcCil 1iOSfc3Beq/w8Zch3sTv0FsOFkrQlSE//gM9NnNVUnGYnOK2UM3hpGjdBIbugnM= =mURZ -----END PGP SIGNATURE----- --ZPt4rx8FFjLCG7dd-- From owner-svn-src-all@freebsd.org Mon Mar 6 17:44:13 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EAB27CFA7B7; Mon, 6 Mar 2017 17:44:13 +0000 (UTC) (envelope-from brooks@spindle.one-eyed-alien.net) Received: from spindle.one-eyed-alien.net (spindle.one-eyed-alien.net [199.48.129.229]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BE9C715C1; Mon, 6 Mar 2017 17:44:13 +0000 (UTC) (envelope-from brooks@spindle.one-eyed-alien.net) Received: by spindle.one-eyed-alien.net (Postfix, from userid 3001) id C1BAE5A9F09; Mon, 6 Mar 2017 17:44:12 +0000 (UTC) Date: Mon, 6 Mar 2017 17:44:12 +0000 From: Brooks Davis To: Allan Jude Cc: Dag-Erling Sm?rgrav , Ed Maste , "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Subject: Re: svn commit: r314527 - in head: crypto/openssh crypto/openssh/contrib crypto/openssh/contrib/cygwin crypto/openssh/contrib/redhat crypto/openssh/contrib/suse crypto/openssh/openbsd-compat crypto/ope... Message-ID: <20170306174412.GB84620@spindle.one-eyed-alien.net> References: <86k28783xe.fsf@desk.des.no> <86fuiv832b.fsf@desk.des.no> <59d9780e-6ec3-4e5d-0c9e-77e3639205f6@freebsd.org> <8FE7A2E0-BB9C-4C48-82D9-B7027CA50358@gmail.com> <86bmti9268.fsf@desk.des.no> <8637eu8ag6.fsf@desk.des.no> <8C2B41F8-3AF4-4CBC-A826-6C0EC25DBB6A@FreeBSD.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="uQr8t48UFsdbeI+V" Content-Disposition: inline In-Reply-To: <8C2B41F8-3AF4-4CBC-A826-6C0EC25DBB6A@FreeBSD.org> User-Agent: Mutt/1.7.2 (2016-11-26) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 17:44:14 -0000 --uQr8t48UFsdbeI+V Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Mar 04, 2017 at 10:36:03PM +0900, Allan Jude wrote: > On March 4, 2017 3:46:49 AM GMT+09:00, "Dag-Erling Sm??rgrav" wrote: > >Ed Maste writes: > >> If you don't want to use Phabricator, I'd ask that you consider > >> removing your account. > > > >I didn't realize that was an option. And I wonder what will happen to > >existing diffs that I have commented on or approved if I do... > > > >DES >=20 > That is a legit concern. There is an experimental clone of phabricator ru= nning at HTTPS://reviews3.freebsd.org if you wanted to try to see what happ= ens Admins could presumably rename the account. -- Brooks --uQr8t48UFsdbeI+V Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEcBAEBAgAGBQJYvZ/sAAoJEKzQXbSebgfAcTAH/Ai+YJJT//UzoijGuuD0vTcO n+ruWDcV9tbd9iis8cBNsZk262Mvyp0TLyN3za8OB4mvFkgodrGdNLtpxtAegsvA 10HmyfGWIjaTMbF0iwiYXCmamYyLpW4xiYs25ycNwvSEAHnqTgPy5OvTAdu9Qeay Xx2SMSy7Z0cRjGR5vtmiP5j6VqKAMLjcKx2MfVkOaX0D+fZwSKTm5ARe1pO9JQjW vtavQuEZss9KacV489hLG5aclk2cfBfaBpcbNdvaVUCnCwmPWuRW9ktFSkeXjSUb B7RLS1m+2Jyb67zozFdDwccOY+Oj4hPJ37PnOFVWsZxCF5E5MlCUqbwvna0Swn8= =2S0f -----END PGP SIGNATURE----- --uQr8t48UFsdbeI+V-- From owner-svn-src-all@freebsd.org Mon Mar 6 18:11:40 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 954B8CFB73F; Mon, 6 Mar 2017 18:11:40 +0000 (UTC) (envelope-from mmokhi@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 578E31C13; Mon, 6 Mar 2017 18:11:40 +0000 (UTC) (envelope-from mmokhi@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26IBd9O087858; Mon, 6 Mar 2017 18:11:39 GMT (envelope-from mmokhi@FreeBSD.org) Received: (from mmokhi@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26IBcZI087851; Mon, 6 Mar 2017 18:11:38 GMT (envelope-from mmokhi@FreeBSD.org) Message-Id: <201703061811.v26IBcZI087851@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mmokhi set sender to mmokhi@FreeBSD.org using -f From: Mahdi Mokhtari Date: Mon, 6 Mar 2017 18:11:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314782 - in head/sys: amd64/linux amd64/linux32 compat/linux i386/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 18:11:40 -0000 Author: mmokhi (ports committer) Date: Mon Mar 6 18:11:38 2017 New Revision: 314782 URL: https://svnweb.freebsd.org/changeset/base/314782 Log: Add UNIMPLEMENTED() placeholder macro for the syscalls that are not implemented in Linux kernel itself. Cleanup DUMMY() macros. Reviewed by: dchagin, trasz Approved by: dchagin MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D9804 Modified: head/sys/amd64/linux/linux_dummy.c head/sys/amd64/linux/syscalls.master head/sys/amd64/linux32/linux32_dummy.c head/sys/amd64/linux32/syscalls.master head/sys/compat/linux/linux_util.h head/sys/i386/linux/linux_dummy.c head/sys/i386/linux/syscalls.master Modified: head/sys/amd64/linux/linux_dummy.c ============================================================================== --- head/sys/amd64/linux/linux_dummy.c Mon Mar 6 16:57:32 2017 (r314781) +++ head/sys/amd64/linux/linux_dummy.c Mon Mar 6 18:11:38 2017 (r314782) @@ -43,6 +43,22 @@ __FBSDID("$FreeBSD$"); /* DTrace init */ LIN_SDT_PROVIDER_DECLARE(LINUX_DTRACE); +UNIMPLEMENTED(afs_syscall); +UNIMPLEMENTED(create_module); /* added in linux 1.0 removed in 2.6 */ +UNIMPLEMENTED(epoll_ctl_old); +UNIMPLEMENTED(epoll_wait_old); +UNIMPLEMENTED(get_kernel_syms); /* added in linux 1.0 removed in 2.6 */ +UNIMPLEMENTED(get_thread_area); +UNIMPLEMENTED(getpmsg); +UNIMPLEMENTED(nfsservctl); /* added in linux 2.2 removed in 3.1 */ +UNIMPLEMENTED(putpmsg); +UNIMPLEMENTED(query_module); /* added in linux 2.2 removed in 2.6 */ +UNIMPLEMENTED(security); +UNIMPLEMENTED(set_thread_area); +UNIMPLEMENTED(tuxcall); +UNIMPLEMENTED(uselib); +UNIMPLEMENTED(vserver); + DUMMY(mincore); DUMMY(sendfile); DUMMY(syslog); @@ -53,22 +69,10 @@ DUMMY(vhangup); DUMMY(pivot_root); DUMMY(adjtimex); DUMMY(swapoff); -DUMMY(create_module); DUMMY(init_module); DUMMY(delete_module); -DUMMY(get_kernel_syms); -DUMMY(query_module); DUMMY(quotactl); -DUMMY(nfsservctl); -DUMMY(getpmsg); -DUMMY(putpmsg); -DUMMY(afs_syscall); -DUMMY(tuxcall); -DUMMY(security); -DUMMY(set_thread_area); DUMMY(lookup_dcookie); -DUMMY(epoll_ctl_old); -DUMMY(epoll_wait_old); DUMMY(remap_file_pages); DUMMY(semtimedop); DUMMY(mbind); Modified: head/sys/amd64/linux/syscalls.master ============================================================================== --- head/sys/amd64/linux/syscalls.master Mon Mar 6 16:57:32 2017 (r314781) +++ head/sys/amd64/linux/syscalls.master Mon Mar 6 18:11:38 2017 (r314782) @@ -333,18 +333,18 @@ l_int len); } 172 AUE_NULL STD { int linux_iopl(l_uint level); } 173 AUE_NULL UNIMPL ioperm -174 AUE_NULL STD { int linux_create_module(void); } +174 AUE_NULL UNIMPL create_module 175 AUE_NULL STD { int linux_init_module(void); } 176 AUE_NULL STD { int linux_delete_module(void); } -177 AUE_NULL STD { int linux_get_kernel_syms(void); } -178 AUE_NULL STD { int linux_query_module(void); } +177 AUE_NULL UNIMPL get_kernel_syms +178 AUE_NULL UNIMPL query_module 179 AUE_QUOTACTL STD { int linux_quotactl(void); } -180 AUE_NULL STD { int linux_nfsservctl(void); } -181 AUE_GETPMSG STD { int linux_getpmsg(void); } -182 AUE_PUTPMSG STD { int linux_putpmsg(void); } -183 AUE_NULL STD { int linux_afs_syscall(void); } -184 AUE_NULL STD { int linux_tuxcall(void); } -185 AUE_NULL STD { int linux_security(void); } +180 AUE_NULL UNIMPL nfsservctl +181 AUE_GETPMSG UNIMPL getpmsg +182 AUE_PUTPMSG UNIMPL putpmsg +183 AUE_NULL UNIMPL afs_syscall +184 AUE_NULL UNIMPL tuxcall +185 AUE_NULL UNIMPL security 186 AUE_NULL STD { int linux_gettid(void); } 187 AUE_NULL UNIMPL linux_readahead 188 AUE_NULL STD { int linux_setxattr(void); } @@ -367,17 +367,17 @@ l_ulong *user_mask_ptr); } 204 AUE_NULL STD { int linux_sched_getaffinity(l_pid_t pid, l_uint len, \ l_ulong *user_mask_ptr); } -205 AUE_NULL STD { int linux_set_thread_area(void); } +205 AUE_NULL UNIMPL set_thread_area 206 AUE_NULL UNIMPL linux_io_setup 207 AUE_NULL UNIMPL linux_io_destroy 208 AUE_NULL UNIMPL linux_io_getevents 209 AUE_NULL UNIMPL linux_io_submit 210 AUE_NULL UNIMPL linux_io_cancel -211 AUE_NULL UNIMPL linux_get_thread_area +211 AUE_NULL UNIMPL get_thread_area 212 AUE_NULL STD { int linux_lookup_dcookie(void); } 213 AUE_NULL STD { int linux_epoll_create(l_int size); } -214 AUE_NULL STD { int linux_epoll_ctl_old(void); } -215 AUE_NULL STD { int linux_epoll_wait_old(void); } +214 AUE_NULL UNIMPL epoll_ctl_old +215 AUE_NULL UNIMPL epoll_wait_old 216 AUE_NULL STD { int linux_remap_file_pages(void); } 217 AUE_GETDIRENTRIES STD { int linux_getdents64(l_uint fd, \ void *dirent, l_uint count); } Modified: head/sys/amd64/linux32/linux32_dummy.c ============================================================================== --- head/sys/amd64/linux32/linux32_dummy.c Mon Mar 6 16:57:32 2017 (r314781) +++ head/sys/amd64/linux32/linux32_dummy.c Mon Mar 6 18:11:38 2017 (r314782) @@ -45,6 +45,24 @@ __FBSDID("$FreeBSD$"); /* DTrace init */ LIN_SDT_PROVIDER_DECLARE(LINUX_DTRACE); +UNIMPLEMENTED(afs_syscall); +UNIMPLEMENTED(break); +UNIMPLEMENTED(create_module); /* added in linux 1.0 removed in 2.6 */ +UNIMPLEMENTED(ftime); +UNIMPLEMENTED(get_kernel_syms); /* added in linux 1.0 removed in 2.6 */ +UNIMPLEMENTED(getpmsg); +UNIMPLEMENTED(gtty); +UNIMPLEMENTED(stty); +UNIMPLEMENTED(lock); +UNIMPLEMENTED(mpx); +UNIMPLEMENTED(nfsservctl); /* added in linux 2.2 removed in 3.1 */ +UNIMPLEMENTED(prof); +UNIMPLEMENTED(profil); +UNIMPLEMENTED(putpmsg); +UNIMPLEMENTED(query_module); /* added in linux 2.2 removed in 2.6 */ +UNIMPLEMENTED(ulimit); +UNIMPLEMENTED(vserver); + DUMMY(stime); DUMMY(olduname); DUMMY(syslog); @@ -52,15 +70,11 @@ DUMMY(uname); DUMMY(vhangup); DUMMY(swapoff); DUMMY(adjtimex); -DUMMY(create_module); DUMMY(init_module); DUMMY(delete_module); -DUMMY(get_kernel_syms); DUMMY(quotactl); DUMMY(bdflush); DUMMY(sysfs); -DUMMY(query_module); -DUMMY(nfsservctl); DUMMY(sendfile); DUMMY(setfsuid); DUMMY(setfsgid); Modified: head/sys/amd64/linux32/syscalls.master ============================================================================== --- head/sys/amd64/linux32/syscalls.master Mon Mar 6 16:57:32 2017 (r314781) +++ head/sys/amd64/linux32/syscalls.master Mon Mar 6 18:11:38 2017 (r314782) @@ -230,10 +230,10 @@ int prot); } 126 AUE_SIGPROCMASK STD { int linux_sigprocmask(l_int how, \ l_osigset_t *mask, l_osigset_t *omask); } -127 AUE_NULL STD { int linux_create_module(void); } +127 AUE_NULL UNIMPL create_module 128 AUE_NULL STD { int linux_init_module(void); } 129 AUE_NULL STD { int linux_delete_module(void); } -130 AUE_NULL STD { int linux_get_kernel_syms(void); } +130 AUE_NULL UNIMPL get_kernel_syms 131 AUE_QUOTACTL STD { int linux_quotactl(void); } 132 AUE_GETPGID NOPROTO { int getpgid(int pid); } 133 AUE_FCHDIR NOPROTO { int fchdir(int fd); } @@ -296,10 +296,10 @@ 165 AUE_GETRESUID STD { int linux_getresuid16(l_uid16_t *ruid, \ l_uid16_t *euid, l_uid16_t *suid); } 166 AUE_NULL UNIMPL vm86 -167 AUE_NULL STD { int linux_query_module(void); } +167 AUE_NULL UNIMPL query_module 168 AUE_POLL NOPROTO { int poll(struct pollfd *fds, \ unsigned int nfds, int timeout); } -169 AUE_NULL STD { int linux_nfsservctl(void); } +169 AUE_NULL UNIMPL nfsservctl 170 AUE_SETRESGID STD { int linux_setresgid16(l_gid16_t rgid, \ l_gid16_t egid, l_gid16_t sgid); } 171 AUE_GETRESGID STD { int linux_getresgid16(l_gid16_t *rgid, \ Modified: head/sys/compat/linux/linux_util.h ============================================================================== --- head/sys/compat/linux/linux_util.h Mon Mar 6 16:57:32 2017 (r314781) +++ head/sys/compat/linux/linux_util.h Mon Mar 6 18:11:38 2017 (r314782) @@ -93,6 +93,14 @@ linux_ ## s(struct thread *td, struct li } \ struct __hack +/* + * This is for the syscalls that are not even yet implemented in Linux. + * + * They're marked as UNIMPL in syscall.master so it will + * have nosys record in linux_sysent[]. + */ +#define UNIMPLEMENTED(s) + void linux_msg(const struct thread *td, const char *fmt, ...) __printflike(2, 3); Modified: head/sys/i386/linux/linux_dummy.c ============================================================================== --- head/sys/i386/linux/linux_dummy.c Mon Mar 6 16:57:32 2017 (r314781) +++ head/sys/i386/linux/linux_dummy.c Mon Mar 6 18:11:38 2017 (r314782) @@ -45,6 +45,24 @@ __FBSDID("$FreeBSD$"); /* DTrace init */ LIN_SDT_PROVIDER_DECLARE(LINUX_DTRACE); +UNIMPLEMENTED(afs_syscall); +UNIMPLEMENTED(break); +UNIMPLEMENTED(create_module); /* added in linux 1.0 removed in 2.6 */ +UNIMPLEMENTED(ftime); +UNIMPLEMENTED(get_kernel_syms); /* added in linux 1.0 removed in 2.6 */ +UNIMPLEMENTED(getpmsg); +UNIMPLEMENTED(gtty); +UNIMPLEMENTED(stty); +UNIMPLEMENTED(lock); +UNIMPLEMENTED(mpx); +UNIMPLEMENTED(nfsservctl); /* added in linux 2.2 removed in 3.1 */ +UNIMPLEMENTED(prof); +UNIMPLEMENTED(profil); +UNIMPLEMENTED(putpmsg); +UNIMPLEMENTED(query_module); /* added in linux 2.2 removed in 2.6 */ +UNIMPLEMENTED(ulimit); +UNIMPLEMENTED(vserver); + DUMMY(stime); DUMMY(fstat); DUMMY(olduname); @@ -54,16 +72,12 @@ DUMMY(vhangup); DUMMY(vm86old); DUMMY(swapoff); DUMMY(adjtimex); -DUMMY(create_module); DUMMY(init_module); DUMMY(delete_module); -DUMMY(get_kernel_syms); DUMMY(quotactl); DUMMY(bdflush); DUMMY(sysfs); DUMMY(vm86); -DUMMY(query_module); -DUMMY(nfsservctl); DUMMY(sendfile); /* different semantics */ DUMMY(setfsuid); DUMMY(setfsgid); Modified: head/sys/i386/linux/syscalls.master ============================================================================== --- head/sys/i386/linux/syscalls.master Mon Mar 6 16:57:32 2017 (r314781) +++ head/sys/i386/linux/syscalls.master Mon Mar 6 18:11:38 2017 (r314782) @@ -232,10 +232,10 @@ int prot); } 126 AUE_SIGPROCMASK STD { int linux_sigprocmask(l_int how, \ l_osigset_t *mask, l_osigset_t *omask); } -127 AUE_NULL STD { int linux_create_module(void); } +127 AUE_NULL UNIMPL create_module 128 AUE_NULL STD { int linux_init_module(void); } 129 AUE_NULL STD { int linux_delete_module(void); } -130 AUE_NULL STD { int linux_get_kernel_syms(void); } +130 AUE_NULL UNIMPL get_kernel_syms 131 AUE_QUOTACTL STD { int linux_quotactl(void); } 132 AUE_GETPGID NOPROTO { int getpgid(int pid); } 133 AUE_FCHDIR NOPROTO { int fchdir(int fd); } @@ -298,10 +298,10 @@ 165 AUE_GETRESUID STD { int linux_getresuid16(l_uid16_t *ruid, \ l_uid16_t *euid, l_uid16_t *suid); } 166 AUE_NULL STD { int linux_vm86(void); } -167 AUE_NULL STD { int linux_query_module(void); } +167 AUE_NULL UNIMPL query_module 168 AUE_POLL NOPROTO { int poll(struct pollfd* fds, \ unsigned int nfds, long timeout); } -169 AUE_NULL STD { int linux_nfsservctl(void); } +169 AUE_NULL UNIMPL nfsservctl 170 AUE_SETRESGID STD { int linux_setresgid16(l_gid16_t rgid, \ l_gid16_t egid, l_gid16_t sgid); } 171 AUE_GETRESGID STD { int linux_getresgid16(l_gid16_t *rgid, \ From owner-svn-src-all@freebsd.org Mon Mar 6 18:18:30 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BF285CFBD35 for ; Mon, 6 Mar 2017 18:18:30 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from nm22-vm4.bullet.mail.ne1.yahoo.com (nm22-vm4.bullet.mail.ne1.yahoo.com [98.138.91.182]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8B8F71151 for ; Mon, 6 Mar 2017 18:18:30 +0000 (UTC) (envelope-from pfg@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1488823943; bh=4DCIN9C5erGG9CGIAWzx2hEmu5CTQMlYIm36dfdKeZU=; h=Subject:To:References:Cc:From:Date:In-Reply-To:From:Subject; b=BpIBTcZhBola98DbKU6FC6tHin4eH7Ccmi6ZptHEO7NNPVcGpslbhuLyOKGKiFO9lmYjXAzrbo6VUOa7mTjv6GVGzRBY85WEqpJq+X8RfwmPimMfLMjc8OpBoUIAXc3hju3Lzs4HaQRPT15mfqvpUKY0OTiZSBDrInlZltkKpcsUHIIIYK8pSjCJObgwEpb5d2FuZ7DT6IcvylXvcD9H+zCutHF8arfhknqvk4hUU7aqDdy3Ey0WzGSunUKcMtOmyLFwYD45QPwGCFE10mGcldMTMtPUMwOVvFhXCOZUXpuXd9NmX3jb4B/jhQU5ROjQ9q0EAY4PMqwZFY5wUxT76w== Received: from [98.138.100.113] by nm22.bullet.mail.ne1.yahoo.com with NNFMP; 06 Mar 2017 18:12:23 -0000 Received: from [98.138.84.46] by tm104.bullet.mail.ne1.yahoo.com with NNFMP; 06 Mar 2017 18:12:23 -0000 Received: from [127.0.0.1] by smtp114.mail.ne1.yahoo.com with NNFMP; 06 Mar 2017 18:12:23 -0000 X-Yahoo-Newman-Id: 521401.28967.bm@smtp114.mail.ne1.yahoo.com X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: ZpGXSB4VM1nMFuAObc9MhaDfgmxKoxHuLQhSGpKMgQcYxEz _ru39bAwizjDWgCvTLBd7O.XqQfuAcW8BRzYlUXtYd7.ilyIQ4ruZs8WOW8L EVMAW5xF2fgccwgQOIaZpHwTZZpG03cvQDTD9pmJhO2OOdeIbTi0shga8VZW i96XW7BIeobCM4QKa06vqx3y7W1DmmZjXGTUdUBMjs.D9xQs_fJJ7pjTiVZL l6aM_i7nBzkIG6DmripnXIuGuL7FW6Z7accJ2Jnuh3rYnfKvuaU1CK1Z6GHT jkpGGwN5iTtkoic.IqHK4LWzfJNsWqtmf_z7RPEytgB9aTAUyNHCZmnCWZ34 cBZ6HNNjV.fvZXf1mPYRz9eNn.9ddt_igBiiDRqKqtCeS4vUdfgdVCowpqEc o0rBI1oE_6SXbwoVMa1PZbQIMC3GHlRuKpwI39bLx8we0vfnoVD3QRtUB2cG qgI7zTrYI7cAnu2NcxnlPBjI5JEMr9s8aimY4lnVCjS61_9PZoickpvp3qWA joDcedZ_PZpFBmbI3lzV4KCl6T7B9MZAX6PrLdGBJ8jAUrq8- X-Yahoo-SMTP: xcjD0guswBAZaPPIbxpWwLcp9Unf Subject: Re: svn commit: r314778 - head/lib/libfetch To: Baptiste Daroussin References: <201703061538.v26Fc33J022910@repo.freebsd.org> <20170306154419.psguuxspco3hgw64@ivaldir.net> Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Pedro Giffuni Message-ID: <9e86f0a7-c24b-2bda-e289-02bacb699c72@FreeBSD.org> Date: Mon, 6 Mar 2017 13:15:21 -0500 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <20170306154419.psguuxspco3hgw64@ivaldir.net> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 18:18:30 -0000 Hi; On 3/6/2017 10:44 AM, Baptiste Daroussin wrote: > On Mon, Mar 06, 2017 at 03:38:03PM +0000, Pedro F. Giffuni wrote: >> Author: pfg >> Date: Mon Mar 6 15:38:03 2017 >> New Revision: 314778 >> URL: https://svnweb.freebsd.org/changeset/base/314778 >> >> Log: >> libfetch: extra bounds checking through reallocarray(3). >> >> Reviewed by: des >> MFC after: 1 week >> >> Modified: >> head/lib/libfetch/common.c >> >> Modified: head/lib/libfetch/common.c >> ============================================================================== >> --- head/lib/libfetch/common.c Mon Mar 6 15:37:34 2017 (r314777) >> +++ head/lib/libfetch/common.c Mon Mar 6 15:38:03 2017 (r314778) >> @@ -1306,7 +1306,7 @@ fetch_add_entry(struct url_ent **p, int >> } >> >> if (*len >= *size - 1) { >> - tmp = realloc(*p, (*size * 2 + 1) * sizeof(**p)); >> + tmp = reallocarray(*p, *size * 2 + 1, sizeof(**p)); > It reduces portability of libfetch (which pkg depends on) I can probably add an > implementation of reallocarry in pkg itself. This is an unavoidable consequence of adding functions to libc: we may find uses for them. Pedro. From owner-svn-src-all@freebsd.org Mon Mar 6 18:20:23 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DAC64CFBE07 for ; Mon, 6 Mar 2017 18:20:23 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from outbound1b.ore.mailhop.org (outbound1b.ore.mailhop.org [54.200.247.200]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BE6C912DA for ; Mon, 6 Mar 2017 18:20:23 +0000 (UTC) (envelope-from ian@freebsd.org) X-MHO-User: 9e170be4-0299-11e7-ba57-8bc134ee460a X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 73.78.92.27 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (unknown [73.78.92.27]) by outbound1.ore.mailhop.org (Halon) with ESMTPSA id 9e170be4-0299-11e7-ba57-8bc134ee460a; Mon, 06 Mar 2017 18:20:46 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.15.2) with ESMTP id v26IKFfS001221; Mon, 6 Mar 2017 11:20:15 -0700 (MST) (envelope-from ian@freebsd.org) Message-ID: <1488824415.18764.30.camel@freebsd.org> Subject: Re: svn commit: r314709 - head From: Ian Lepore To: Bryan Drewery , Warner Losh Cc: src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Date: Mon, 06 Mar 2017 11:20:15 -0700 In-Reply-To: <55159e24-f318-dd61-fe13-c340826fe006@FreeBSD.org> References: <201703052116.v25LGoEv072414@repo.freebsd.org> <55159e24-f318-dd61-fe13-c340826fe006@FreeBSD.org> Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: Evolution 3.18.5.1 FreeBSD GNOME Team Port Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 18:20:24 -0000 On Sun, 2017-03-05 at 19:12 -0800, Bryan Drewery wrote: > On 3/5/17 3:41 PM, Warner Losh wrote: > > > > On Sun, Mar 5, 2017 at 2:16 PM, Bryan Drewery > > wrote: > > > > > > Author: bdrewery > > > Date: Sun Mar  5 21:16:50 2017 > > > New Revision: 314709 > > > URL: https://svnweb.freebsd.org/changeset/base/314709 > > > > > > Log: > > >   Fix bootstrapping mtree after r313404 for older systems. > > > > > >   r313404 made libnetbsd require sha384.h from libmd.  Libmd > > > added it in > > >   r292782.  Update BOOTSTRAPPING to account for this. > > > > > >   Reported by:  bde > > >   Reviewed by:  ngie > > > > > > Modified: > > >   head/Makefile.inc1 > > > > > > Modified: head/Makefile.inc1 > > > ================================================================= > > > ============= > > > --- head/Makefile.inc1  Sun Mar  5 19:56:20 2017        (r314708) > > > +++ head/Makefile.inc1  Sun Mar  5 21:16:50 2017        (r314709) > > > @@ -1618,10 +1618,12 @@ ${_bt}-usr.bin/m4: ${_bt}-lib/libopenbsd > > >  ${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 > > >  .endif > > > > > > -.if ${BOOTSTRAPPING} < 1000026 > > > -_nmtree=       lib/libnetbsd \ > > I've been trying to document the bootstrapping stuff inline like > > > > # r313404 made libnetbsd require libmd > Definitely.  I forgot about that.  I think my change is incomplete > and > need to chase down a 2nd failure report.  I'll add the comment once > that > is figured out. > I tracked this down to the fact that the prototype   char * MD5FileChunk(const char *, char *, off_t, off_t); does not exist in /usr/include/sys/md5.h on older systems.  I don't see any straightforward way to declare that a header file from the /usr/include hierarchy is a bootstrap item that needs a newer version from the source tree being compiled.  It looks like such a header would have to go into the obj/.../tmp/legacy/usr/include to get used in the boostrap compile, I just don't see how you get a file installed there early enough in bootstrap. -- Ian From owner-svn-src-all@freebsd.org Mon Mar 6 18:20:40 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B0A4ECFBE4B; Mon, 6 Mar 2017 18:20:40 +0000 (UTC) (envelope-from mmokhi@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 620DA13D3; Mon, 6 Mar 2017 18:20:40 +0000 (UTC) (envelope-from mmokhi@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26IKdQx090577; Mon, 6 Mar 2017 18:20:39 GMT (envelope-from mmokhi@FreeBSD.org) Received: (from mmokhi@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26IKbkf090562; Mon, 6 Mar 2017 18:20:37 GMT (envelope-from mmokhi@FreeBSD.org) Message-Id: <201703061820.v26IKbkf090562@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mmokhi set sender to mmokhi@FreeBSD.org using -f From: Mahdi Mokhtari Date: Mon, 6 Mar 2017 18:20:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314783 - in head/sys: amd64/linux amd64/linux32 i386/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 18:20:40 -0000 Author: mmokhi (ports committer) Date: Mon Mar 6 18:20:37 2017 New Revision: 314783 URL: https://svnweb.freebsd.org/changeset/base/314783 Log: Regenerated Linuxulator syscall tables for r314782 Approved by: dchagin MFC after: 1 month Modified: head/sys/amd64/linux/linux_proto.h head/sys/amd64/linux/linux_syscall.h head/sys/amd64/linux/linux_syscalls.c head/sys/amd64/linux/linux_sysent.c head/sys/amd64/linux/linux_systrace_args.c head/sys/amd64/linux32/linux32_proto.h head/sys/amd64/linux32/linux32_syscall.h head/sys/amd64/linux32/linux32_syscalls.c head/sys/amd64/linux32/linux32_sysent.c head/sys/amd64/linux32/linux32_systrace_args.c head/sys/i386/linux/linux_proto.h head/sys/i386/linux/linux_syscall.h head/sys/i386/linux/linux_syscalls.c head/sys/i386/linux/linux_sysent.c head/sys/i386/linux/linux_systrace_args.c Modified: head/sys/amd64/linux/linux_proto.h ============================================================================== --- head/sys/amd64/linux/linux_proto.h Mon Mar 6 18:11:38 2017 (r314782) +++ head/sys/amd64/linux/linux_proto.h Mon Mar 6 18:20:37 2017 (r314783) @@ -605,42 +605,15 @@ struct linux_setdomainname_args { struct linux_iopl_args { char level_l_[PADL_(l_uint)]; l_uint level; char level_r_[PADR_(l_uint)]; }; -struct linux_create_module_args { - register_t dummy; -}; struct linux_init_module_args { register_t dummy; }; struct linux_delete_module_args { register_t dummy; }; -struct linux_get_kernel_syms_args { - register_t dummy; -}; -struct linux_query_module_args { - register_t dummy; -}; struct linux_quotactl_args { register_t dummy; }; -struct linux_nfsservctl_args { - register_t dummy; -}; -struct linux_getpmsg_args { - register_t dummy; -}; -struct linux_putpmsg_args { - register_t dummy; -}; -struct linux_afs_syscall_args { - register_t dummy; -}; -struct linux_tuxcall_args { - register_t dummy; -}; -struct linux_security_args { - register_t dummy; -}; struct linux_gettid_args { register_t dummy; }; @@ -705,21 +678,12 @@ struct linux_sched_getaffinity_args { char len_l_[PADL_(l_uint)]; l_uint len; char len_r_[PADR_(l_uint)]; char user_mask_ptr_l_[PADL_(l_ulong *)]; l_ulong * user_mask_ptr; char user_mask_ptr_r_[PADR_(l_ulong *)]; }; -struct linux_set_thread_area_args { - register_t dummy; -}; struct linux_lookup_dcookie_args { register_t dummy; }; struct linux_epoll_create_args { char size_l_[PADL_(l_int)]; l_int size; char size_r_[PADR_(l_int)]; }; -struct linux_epoll_ctl_old_args { - register_t dummy; -}; -struct linux_epoll_wait_old_args { - register_t dummy; -}; struct linux_remap_file_pages_args { register_t dummy; }; @@ -1377,18 +1341,9 @@ int linux_reboot(struct thread *, struct int linux_sethostname(struct thread *, struct linux_sethostname_args *); int linux_setdomainname(struct thread *, struct linux_setdomainname_args *); int linux_iopl(struct thread *, struct linux_iopl_args *); -int linux_create_module(struct thread *, struct linux_create_module_args *); int linux_init_module(struct thread *, struct linux_init_module_args *); int linux_delete_module(struct thread *, struct linux_delete_module_args *); -int linux_get_kernel_syms(struct thread *, struct linux_get_kernel_syms_args *); -int linux_query_module(struct thread *, struct linux_query_module_args *); int linux_quotactl(struct thread *, struct linux_quotactl_args *); -int linux_nfsservctl(struct thread *, struct linux_nfsservctl_args *); -int linux_getpmsg(struct thread *, struct linux_getpmsg_args *); -int linux_putpmsg(struct thread *, struct linux_putpmsg_args *); -int linux_afs_syscall(struct thread *, struct linux_afs_syscall_args *); -int linux_tuxcall(struct thread *, struct linux_tuxcall_args *); -int linux_security(struct thread *, struct linux_security_args *); int linux_gettid(struct thread *, struct linux_gettid_args *); int linux_setxattr(struct thread *, struct linux_setxattr_args *); int linux_lsetxattr(struct thread *, struct linux_lsetxattr_args *); @@ -1407,11 +1362,8 @@ int linux_time(struct thread *, struct l int linux_sys_futex(struct thread *, struct linux_sys_futex_args *); int linux_sched_setaffinity(struct thread *, struct linux_sched_setaffinity_args *); int linux_sched_getaffinity(struct thread *, struct linux_sched_getaffinity_args *); -int linux_set_thread_area(struct thread *, struct linux_set_thread_area_args *); int linux_lookup_dcookie(struct thread *, struct linux_lookup_dcookie_args *); int linux_epoll_create(struct thread *, struct linux_epoll_create_args *); -int linux_epoll_ctl_old(struct thread *, struct linux_epoll_ctl_old_args *); -int linux_epoll_wait_old(struct thread *, struct linux_epoll_wait_old_args *); int linux_remap_file_pages(struct thread *, struct linux_remap_file_pages_args *); int linux_getdents64(struct thread *, struct linux_getdents64_args *); int linux_set_tid_address(struct thread *, struct linux_set_tid_address_args *); @@ -1689,18 +1641,9 @@ int linux_pkey_free(struct thread *, str #define LINUX_SYS_AUE_linux_sethostname AUE_SYSCTL #define LINUX_SYS_AUE_linux_setdomainname AUE_SYSCTL #define LINUX_SYS_AUE_linux_iopl AUE_NULL -#define LINUX_SYS_AUE_linux_create_module AUE_NULL #define LINUX_SYS_AUE_linux_init_module AUE_NULL #define LINUX_SYS_AUE_linux_delete_module AUE_NULL -#define LINUX_SYS_AUE_linux_get_kernel_syms AUE_NULL -#define LINUX_SYS_AUE_linux_query_module AUE_NULL #define LINUX_SYS_AUE_linux_quotactl AUE_QUOTACTL -#define LINUX_SYS_AUE_linux_nfsservctl AUE_NULL -#define LINUX_SYS_AUE_linux_getpmsg AUE_GETPMSG -#define LINUX_SYS_AUE_linux_putpmsg AUE_PUTPMSG -#define LINUX_SYS_AUE_linux_afs_syscall AUE_NULL -#define LINUX_SYS_AUE_linux_tuxcall AUE_NULL -#define LINUX_SYS_AUE_linux_security AUE_NULL #define LINUX_SYS_AUE_linux_gettid AUE_NULL #define LINUX_SYS_AUE_linux_setxattr AUE_NULL #define LINUX_SYS_AUE_linux_lsetxattr AUE_NULL @@ -1719,11 +1662,8 @@ int linux_pkey_free(struct thread *, str #define LINUX_SYS_AUE_linux_sys_futex AUE_NULL #define LINUX_SYS_AUE_linux_sched_setaffinity AUE_NULL #define LINUX_SYS_AUE_linux_sched_getaffinity AUE_NULL -#define LINUX_SYS_AUE_linux_set_thread_area AUE_NULL #define LINUX_SYS_AUE_linux_lookup_dcookie AUE_NULL #define LINUX_SYS_AUE_linux_epoll_create AUE_NULL -#define LINUX_SYS_AUE_linux_epoll_ctl_old AUE_NULL -#define LINUX_SYS_AUE_linux_epoll_wait_old AUE_NULL #define LINUX_SYS_AUE_linux_remap_file_pages AUE_NULL #define LINUX_SYS_AUE_linux_getdents64 AUE_GETDIRENTRIES #define LINUX_SYS_AUE_linux_set_tid_address AUE_NULL Modified: head/sys/amd64/linux/linux_syscall.h ============================================================================== --- head/sys/amd64/linux/linux_syscall.h Mon Mar 6 18:11:38 2017 (r314782) +++ head/sys/amd64/linux/linux_syscall.h Mon Mar 6 18:20:37 2017 (r314783) @@ -176,18 +176,9 @@ #define LINUX_SYS_linux_sethostname 170 #define LINUX_SYS_linux_setdomainname 171 #define LINUX_SYS_linux_iopl 172 -#define LINUX_SYS_linux_create_module 174 #define LINUX_SYS_linux_init_module 175 #define LINUX_SYS_linux_delete_module 176 -#define LINUX_SYS_linux_get_kernel_syms 177 -#define LINUX_SYS_linux_query_module 178 #define LINUX_SYS_linux_quotactl 179 -#define LINUX_SYS_linux_nfsservctl 180 -#define LINUX_SYS_linux_getpmsg 181 -#define LINUX_SYS_linux_putpmsg 182 -#define LINUX_SYS_linux_afs_syscall 183 -#define LINUX_SYS_linux_tuxcall 184 -#define LINUX_SYS_linux_security 185 #define LINUX_SYS_linux_gettid 186 #define LINUX_SYS_linux_setxattr 188 #define LINUX_SYS_linux_lsetxattr 189 @@ -206,11 +197,8 @@ #define LINUX_SYS_linux_sys_futex 202 #define LINUX_SYS_linux_sched_setaffinity 203 #define LINUX_SYS_linux_sched_getaffinity 204 -#define LINUX_SYS_linux_set_thread_area 205 #define LINUX_SYS_linux_lookup_dcookie 212 #define LINUX_SYS_linux_epoll_create 213 -#define LINUX_SYS_linux_epoll_ctl_old 214 -#define LINUX_SYS_linux_epoll_wait_old 215 #define LINUX_SYS_linux_remap_file_pages 216 #define LINUX_SYS_linux_getdents64 217 #define LINUX_SYS_linux_set_tid_address 218 Modified: head/sys/amd64/linux/linux_syscalls.c ============================================================================== --- head/sys/amd64/linux/linux_syscalls.c Mon Mar 6 18:11:38 2017 (r314782) +++ head/sys/amd64/linux/linux_syscalls.c Mon Mar 6 18:20:37 2017 (r314783) @@ -181,18 +181,18 @@ const char *linux_syscallnames[] = { "linux_setdomainname", /* 171 = linux_setdomainname */ "linux_iopl", /* 172 = linux_iopl */ "#173", /* 173 = ioperm */ - "linux_create_module", /* 174 = linux_create_module */ + "#174", /* 174 = create_module */ "linux_init_module", /* 175 = linux_init_module */ "linux_delete_module", /* 176 = linux_delete_module */ - "linux_get_kernel_syms", /* 177 = linux_get_kernel_syms */ - "linux_query_module", /* 178 = linux_query_module */ + "#177", /* 177 = get_kernel_syms */ + "#178", /* 178 = query_module */ "linux_quotactl", /* 179 = linux_quotactl */ - "linux_nfsservctl", /* 180 = linux_nfsservctl */ - "linux_getpmsg", /* 181 = linux_getpmsg */ - "linux_putpmsg", /* 182 = linux_putpmsg */ - "linux_afs_syscall", /* 183 = linux_afs_syscall */ - "linux_tuxcall", /* 184 = linux_tuxcall */ - "linux_security", /* 185 = linux_security */ + "#180", /* 180 = nfsservctl */ + "#181", /* 181 = getpmsg */ + "#182", /* 182 = putpmsg */ + "#183", /* 183 = afs_syscall */ + "#184", /* 184 = tuxcall */ + "#185", /* 185 = security */ "linux_gettid", /* 186 = linux_gettid */ "#187", /* 187 = linux_readahead */ "linux_setxattr", /* 188 = linux_setxattr */ @@ -212,17 +212,17 @@ const char *linux_syscallnames[] = { "linux_sys_futex", /* 202 = linux_sys_futex */ "linux_sched_setaffinity", /* 203 = linux_sched_setaffinity */ "linux_sched_getaffinity", /* 204 = linux_sched_getaffinity */ - "linux_set_thread_area", /* 205 = linux_set_thread_area */ + "#205", /* 205 = set_thread_area */ "#206", /* 206 = linux_io_setup */ "#207", /* 207 = linux_io_destroy */ "#208", /* 208 = linux_io_getevents */ "#209", /* 209 = linux_io_submit */ "#210", /* 210 = linux_io_cancel */ - "#211", /* 211 = linux_get_thread_area */ + "#211", /* 211 = get_thread_area */ "linux_lookup_dcookie", /* 212 = linux_lookup_dcookie */ "linux_epoll_create", /* 213 = linux_epoll_create */ - "linux_epoll_ctl_old", /* 214 = linux_epoll_ctl_old */ - "linux_epoll_wait_old", /* 215 = linux_epoll_wait_old */ + "#214", /* 214 = epoll_ctl_old */ + "#215", /* 215 = epoll_wait_old */ "linux_remap_file_pages", /* 216 = linux_remap_file_pages */ "linux_getdents64", /* 217 = linux_getdents64 */ "linux_set_tid_address", /* 218 = linux_set_tid_address */ Modified: head/sys/amd64/linux/linux_sysent.c ============================================================================== --- head/sys/amd64/linux/linux_sysent.c Mon Mar 6 18:11:38 2017 (r314782) +++ head/sys/amd64/linux/linux_sysent.c Mon Mar 6 18:20:37 2017 (r314783) @@ -191,18 +191,18 @@ struct sysent linux_sysent[] = { { AS(linux_setdomainname_args), (sy_call_t *)linux_setdomainname, AUE_SYSCTL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 171 = linux_setdomainname */ { AS(linux_iopl_args), (sy_call_t *)linux_iopl, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 172 = linux_iopl */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 173 = ioperm */ - { 0, (sy_call_t *)linux_create_module, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 174 = linux_create_module */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 174 = create_module */ { 0, (sy_call_t *)linux_init_module, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 175 = linux_init_module */ { 0, (sy_call_t *)linux_delete_module, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 176 = linux_delete_module */ - { 0, (sy_call_t *)linux_get_kernel_syms, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 177 = linux_get_kernel_syms */ - { 0, (sy_call_t *)linux_query_module, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 178 = linux_query_module */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 177 = get_kernel_syms */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 178 = query_module */ { 0, (sy_call_t *)linux_quotactl, AUE_QUOTACTL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 179 = linux_quotactl */ - { 0, (sy_call_t *)linux_nfsservctl, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 180 = linux_nfsservctl */ - { 0, (sy_call_t *)linux_getpmsg, AUE_GETPMSG, NULL, 0, 0, 0, SY_THR_STATIC }, /* 181 = linux_getpmsg */ - { 0, (sy_call_t *)linux_putpmsg, AUE_PUTPMSG, NULL, 0, 0, 0, SY_THR_STATIC }, /* 182 = linux_putpmsg */ - { 0, (sy_call_t *)linux_afs_syscall, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 183 = linux_afs_syscall */ - { 0, (sy_call_t *)linux_tuxcall, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 184 = linux_tuxcall */ - { 0, (sy_call_t *)linux_security, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 185 = linux_security */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 180 = nfsservctl */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 181 = getpmsg */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 182 = putpmsg */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 183 = afs_syscall */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 184 = tuxcall */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 185 = security */ { 0, (sy_call_t *)linux_gettid, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 186 = linux_gettid */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 187 = linux_readahead */ { 0, (sy_call_t *)linux_setxattr, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 188 = linux_setxattr */ @@ -222,17 +222,17 @@ struct sysent linux_sysent[] = { { AS(linux_sys_futex_args), (sy_call_t *)linux_sys_futex, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 202 = linux_sys_futex */ { AS(linux_sched_setaffinity_args), (sy_call_t *)linux_sched_setaffinity, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 203 = linux_sched_setaffinity */ { AS(linux_sched_getaffinity_args), (sy_call_t *)linux_sched_getaffinity, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 204 = linux_sched_getaffinity */ - { 0, (sy_call_t *)linux_set_thread_area, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 205 = linux_set_thread_area */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 205 = set_thread_area */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 206 = linux_io_setup */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 207 = linux_io_destroy */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 208 = linux_io_getevents */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 209 = linux_io_submit */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 210 = linux_io_cancel */ - { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 211 = linux_get_thread_area */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 211 = get_thread_area */ { 0, (sy_call_t *)linux_lookup_dcookie, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 212 = linux_lookup_dcookie */ { AS(linux_epoll_create_args), (sy_call_t *)linux_epoll_create, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 213 = linux_epoll_create */ - { 0, (sy_call_t *)linux_epoll_ctl_old, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 214 = linux_epoll_ctl_old */ - { 0, (sy_call_t *)linux_epoll_wait_old, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 215 = linux_epoll_wait_old */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 214 = epoll_ctl_old */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 215 = epoll_wait_old */ { 0, (sy_call_t *)linux_remap_file_pages, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 216 = linux_remap_file_pages */ { AS(linux_getdents64_args), (sy_call_t *)linux_getdents64, AUE_GETDIRENTRIES, NULL, 0, 0, 0, SY_THR_STATIC }, /* 217 = linux_getdents64 */ { AS(linux_set_tid_address_args), (sy_call_t *)linux_set_tid_address, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 218 = linux_set_tid_address */ Modified: head/sys/amd64/linux/linux_systrace_args.c ============================================================================== --- head/sys/amd64/linux/linux_systrace_args.c Mon Mar 6 18:11:38 2017 (r314782) +++ head/sys/amd64/linux/linux_systrace_args.c Mon Mar 6 18:20:37 2017 (r314783) @@ -1396,11 +1396,6 @@ systrace_args(int sysnum, void *params, *n_args = 1; break; } - /* linux_create_module */ - case 174: { - *n_args = 0; - break; - } /* linux_init_module */ case 175: { *n_args = 0; @@ -1411,51 +1406,11 @@ systrace_args(int sysnum, void *params, *n_args = 0; break; } - /* linux_get_kernel_syms */ - case 177: { - *n_args = 0; - break; - } - /* linux_query_module */ - case 178: { - *n_args = 0; - break; - } /* linux_quotactl */ case 179: { *n_args = 0; break; } - /* linux_nfsservctl */ - case 180: { - *n_args = 0; - break; - } - /* linux_getpmsg */ - case 181: { - *n_args = 0; - break; - } - /* linux_putpmsg */ - case 182: { - *n_args = 0; - break; - } - /* linux_afs_syscall */ - case 183: { - *n_args = 0; - break; - } - /* linux_tuxcall */ - case 184: { - *n_args = 0; - break; - } - /* linux_security */ - case 185: { - *n_args = 0; - break; - } /* linux_gettid */ case 186: { *n_args = 0; @@ -1566,11 +1521,6 @@ systrace_args(int sysnum, void *params, *n_args = 3; break; } - /* linux_set_thread_area */ - case 205: { - *n_args = 0; - break; - } /* linux_lookup_dcookie */ case 212: { *n_args = 0; @@ -1583,16 +1533,6 @@ systrace_args(int sysnum, void *params, *n_args = 1; break; } - /* linux_epoll_ctl_old */ - case 214: { - *n_args = 0; - break; - } - /* linux_epoll_wait_old */ - case 215: { - *n_args = 0; - break; - } /* linux_remap_file_pages */ case 216: { *n_args = 0; @@ -4771,42 +4711,15 @@ systrace_entry_setargdesc(int sysnum, in break; }; break; - /* linux_create_module */ - case 174: - break; /* linux_init_module */ case 175: break; /* linux_delete_module */ case 176: break; - /* linux_get_kernel_syms */ - case 177: - break; - /* linux_query_module */ - case 178: - break; /* linux_quotactl */ case 179: break; - /* linux_nfsservctl */ - case 180: - break; - /* linux_getpmsg */ - case 181: - break; - /* linux_putpmsg */ - case 182: - break; - /* linux_afs_syscall */ - case 183: - break; - /* linux_tuxcall */ - case 184: - break; - /* linux_security */ - case 185: - break; /* linux_gettid */ case 186: break; @@ -4926,9 +4839,6 @@ systrace_entry_setargdesc(int sysnum, in break; }; break; - /* linux_set_thread_area */ - case 205: - break; /* linux_lookup_dcookie */ case 212: break; @@ -4942,12 +4852,6 @@ systrace_entry_setargdesc(int sysnum, in break; }; break; - /* linux_epoll_ctl_old */ - case 214: - break; - /* linux_epoll_wait_old */ - case 215: - break; /* linux_remap_file_pages */ case 216: break; @@ -7214,30 +7118,12 @@ systrace_return_setargdesc(int sysnum, i if (ndx == 0 || ndx == 1) p = "int"; break; - /* linux_create_module */ - case 174: /* linux_init_module */ case 175: /* linux_delete_module */ case 176: - /* linux_get_kernel_syms */ - case 177: - /* linux_query_module */ - case 178: /* linux_quotactl */ case 179: - /* linux_nfsservctl */ - case 180: - /* linux_getpmsg */ - case 181: - /* linux_putpmsg */ - case 182: - /* linux_afs_syscall */ - case 183: - /* linux_tuxcall */ - case 184: - /* linux_security */ - case 185: /* linux_gettid */ case 186: /* linux_setxattr */ @@ -7289,8 +7175,6 @@ systrace_return_setargdesc(int sysnum, i if (ndx == 0 || ndx == 1) p = "int"; break; - /* linux_set_thread_area */ - case 205: /* linux_lookup_dcookie */ case 212: /* linux_epoll_create */ @@ -7298,10 +7182,6 @@ systrace_return_setargdesc(int sysnum, i if (ndx == 0 || ndx == 1) p = "int"; break; - /* linux_epoll_ctl_old */ - case 214: - /* linux_epoll_wait_old */ - case 215: /* linux_remap_file_pages */ case 216: /* linux_getdents64 */ Modified: head/sys/amd64/linux32/linux32_proto.h ============================================================================== --- head/sys/amd64/linux32/linux32_proto.h Mon Mar 6 18:11:38 2017 (r314782) +++ head/sys/amd64/linux32/linux32_proto.h Mon Mar 6 18:20:37 2017 (r314783) @@ -402,18 +402,12 @@ struct linux_sigprocmask_args { char mask_l_[PADL_(l_osigset_t *)]; l_osigset_t * mask; char mask_r_[PADR_(l_osigset_t *)]; char omask_l_[PADL_(l_osigset_t *)]; l_osigset_t * omask; char omask_r_[PADR_(l_osigset_t *)]; }; -struct linux_create_module_args { - register_t dummy; -}; struct linux_init_module_args { register_t dummy; }; struct linux_delete_module_args { register_t dummy; }; -struct linux_get_kernel_syms_args { - register_t dummy; -}; struct linux_quotactl_args { register_t dummy; }; @@ -524,12 +518,6 @@ struct linux_getresuid16_args { char euid_l_[PADL_(l_uid16_t *)]; l_uid16_t * euid; char euid_r_[PADR_(l_uid16_t *)]; char suid_l_[PADL_(l_uid16_t *)]; l_uid16_t * suid; char suid_r_[PADR_(l_uid16_t *)]; }; -struct linux_query_module_args { - register_t dummy; -}; -struct linux_nfsservctl_args { - register_t dummy; -}; struct linux_setresgid16_args { char rgid_l_[PADL_(l_gid16_t)]; l_gid16_t rgid; char rgid_r_[PADR_(l_gid16_t)]; char egid_l_[PADL_(l_gid16_t)]; l_gid16_t egid; char egid_r_[PADR_(l_gid16_t)]; @@ -1470,10 +1458,8 @@ int linux_newuname(struct thread *, stru int linux_adjtimex(struct thread *, struct linux_adjtimex_args *); int linux_mprotect(struct thread *, struct linux_mprotect_args *); int linux_sigprocmask(struct thread *, struct linux_sigprocmask_args *); -int linux_create_module(struct thread *, struct linux_create_module_args *); int linux_init_module(struct thread *, struct linux_init_module_args *); int linux_delete_module(struct thread *, struct linux_delete_module_args *); -int linux_get_kernel_syms(struct thread *, struct linux_get_kernel_syms_args *); int linux_quotactl(struct thread *, struct linux_quotactl_args *); int linux_bdflush(struct thread *, struct linux_bdflush_args *); int linux_sysfs(struct thread *, struct linux_sysfs_args *); @@ -1500,8 +1486,6 @@ int linux_nanosleep(struct thread *, str int linux_mremap(struct thread *, struct linux_mremap_args *); int linux_setresuid16(struct thread *, struct linux_setresuid16_args *); int linux_getresuid16(struct thread *, struct linux_getresuid16_args *); -int linux_query_module(struct thread *, struct linux_query_module_args *); -int linux_nfsservctl(struct thread *, struct linux_nfsservctl_args *); int linux_setresgid16(struct thread *, struct linux_setresgid16_args *); int linux_getresgid16(struct thread *, struct linux_getresgid16_args *); int linux_prctl(struct thread *, struct linux_prctl_args *); @@ -1816,10 +1800,8 @@ int linux_pkey_free(struct thread *, str #define LINUX32_SYS_AUE_linux_adjtimex AUE_ADJTIME #define LINUX32_SYS_AUE_linux_mprotect AUE_MPROTECT #define LINUX32_SYS_AUE_linux_sigprocmask AUE_SIGPROCMASK -#define LINUX32_SYS_AUE_linux_create_module AUE_NULL #define LINUX32_SYS_AUE_linux_init_module AUE_NULL #define LINUX32_SYS_AUE_linux_delete_module AUE_NULL -#define LINUX32_SYS_AUE_linux_get_kernel_syms AUE_NULL #define LINUX32_SYS_AUE_linux_quotactl AUE_QUOTACTL #define LINUX32_SYS_AUE_linux_bdflush AUE_BDFLUSH #define LINUX32_SYS_AUE_linux_sysfs AUE_NULL @@ -1846,8 +1828,6 @@ int linux_pkey_free(struct thread *, str #define LINUX32_SYS_AUE_linux_mremap AUE_NULL #define LINUX32_SYS_AUE_linux_setresuid16 AUE_SETRESUID #define LINUX32_SYS_AUE_linux_getresuid16 AUE_GETRESUID -#define LINUX32_SYS_AUE_linux_query_module AUE_NULL -#define LINUX32_SYS_AUE_linux_nfsservctl AUE_NULL #define LINUX32_SYS_AUE_linux_setresgid16 AUE_SETRESGID #define LINUX32_SYS_AUE_linux_getresgid16 AUE_GETRESGID #define LINUX32_SYS_AUE_linux_prctl AUE_PRCTL Modified: head/sys/amd64/linux32/linux32_syscall.h ============================================================================== --- head/sys/amd64/linux32/linux32_syscall.h Mon Mar 6 18:11:38 2017 (r314782) +++ head/sys/amd64/linux32/linux32_syscall.h Mon Mar 6 18:20:37 2017 (r314783) @@ -116,10 +116,8 @@ #define LINUX32_SYS_linux_adjtimex 124 #define LINUX32_SYS_linux_mprotect 125 #define LINUX32_SYS_linux_sigprocmask 126 -#define LINUX32_SYS_linux_create_module 127 #define LINUX32_SYS_linux_init_module 128 #define LINUX32_SYS_linux_delete_module 129 -#define LINUX32_SYS_linux_get_kernel_syms 130 #define LINUX32_SYS_linux_quotactl 131 #define LINUX32_SYS_getpgid 132 #define LINUX32_SYS_fchdir 133 @@ -154,9 +152,7 @@ #define LINUX32_SYS_linux_mremap 163 #define LINUX32_SYS_linux_setresuid16 164 #define LINUX32_SYS_linux_getresuid16 165 -#define LINUX32_SYS_linux_query_module 167 #define LINUX32_SYS_poll 168 -#define LINUX32_SYS_linux_nfsservctl 169 #define LINUX32_SYS_linux_setresgid16 170 #define LINUX32_SYS_linux_getresgid16 171 #define LINUX32_SYS_linux_prctl 172 Modified: head/sys/amd64/linux32/linux32_syscalls.c ============================================================================== --- head/sys/amd64/linux32/linux32_syscalls.c Mon Mar 6 18:11:38 2017 (r314782) +++ head/sys/amd64/linux32/linux32_syscalls.c Mon Mar 6 18:20:37 2017 (r314783) @@ -134,10 +134,10 @@ const char *linux32_syscallnames[] = { "linux_adjtimex", /* 124 = linux_adjtimex */ "linux_mprotect", /* 125 = linux_mprotect */ "linux_sigprocmask", /* 126 = linux_sigprocmask */ - "linux_create_module", /* 127 = linux_create_module */ + "#127", /* 127 = create_module */ "linux_init_module", /* 128 = linux_init_module */ "linux_delete_module", /* 129 = linux_delete_module */ - "linux_get_kernel_syms", /* 130 = linux_get_kernel_syms */ + "#130", /* 130 = get_kernel_syms */ "linux_quotactl", /* 131 = linux_quotactl */ "getpgid", /* 132 = getpgid */ "fchdir", /* 133 = fchdir */ @@ -174,9 +174,9 @@ const char *linux32_syscallnames[] = { "linux_setresuid16", /* 164 = linux_setresuid16 */ "linux_getresuid16", /* 165 = linux_getresuid16 */ "#166", /* 166 = vm86 */ - "linux_query_module", /* 167 = linux_query_module */ + "#167", /* 167 = query_module */ "poll", /* 168 = poll */ - "linux_nfsservctl", /* 169 = linux_nfsservctl */ + "#169", /* 169 = nfsservctl */ "linux_setresgid16", /* 170 = linux_setresgid16 */ "linux_getresgid16", /* 171 = linux_getresgid16 */ "linux_prctl", /* 172 = linux_prctl */ Modified: head/sys/amd64/linux32/linux32_sysent.c ============================================================================== --- head/sys/amd64/linux32/linux32_sysent.c Mon Mar 6 18:11:38 2017 (r314782) +++ head/sys/amd64/linux32/linux32_sysent.c Mon Mar 6 18:20:37 2017 (r314783) @@ -145,10 +145,10 @@ struct sysent linux32_sysent[] = { { 0, (sy_call_t *)linux_adjtimex, AUE_ADJTIME, NULL, 0, 0, 0, SY_THR_STATIC }, /* 124 = linux_adjtimex */ { AS(linux_mprotect_args), (sy_call_t *)linux_mprotect, AUE_MPROTECT, NULL, 0, 0, 0, SY_THR_STATIC }, /* 125 = linux_mprotect */ { AS(linux_sigprocmask_args), (sy_call_t *)linux_sigprocmask, AUE_SIGPROCMASK, NULL, 0, 0, 0, SY_THR_STATIC }, /* 126 = linux_sigprocmask */ - { 0, (sy_call_t *)linux_create_module, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 127 = linux_create_module */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 127 = create_module */ { 0, (sy_call_t *)linux_init_module, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 128 = linux_init_module */ { 0, (sy_call_t *)linux_delete_module, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 129 = linux_delete_module */ - { 0, (sy_call_t *)linux_get_kernel_syms, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 130 = linux_get_kernel_syms */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 130 = get_kernel_syms */ { 0, (sy_call_t *)linux_quotactl, AUE_QUOTACTL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 131 = linux_quotactl */ { AS(getpgid_args), (sy_call_t *)sys_getpgid, AUE_GETPGID, NULL, 0, 0, 0, SY_THR_STATIC }, /* 132 = getpgid */ { AS(fchdir_args), (sy_call_t *)sys_fchdir, AUE_FCHDIR, NULL, 0, 0, 0, SY_THR_STATIC }, /* 133 = fchdir */ @@ -185,9 +185,9 @@ struct sysent linux32_sysent[] = { { AS(linux_setresuid16_args), (sy_call_t *)linux_setresuid16, AUE_SETRESUID, NULL, 0, 0, 0, SY_THR_STATIC }, /* 164 = linux_setresuid16 */ { AS(linux_getresuid16_args), (sy_call_t *)linux_getresuid16, AUE_GETRESUID, NULL, 0, 0, 0, SY_THR_STATIC }, /* 165 = linux_getresuid16 */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 166 = vm86 */ - { 0, (sy_call_t *)linux_query_module, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 167 = linux_query_module */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 167 = query_module */ { AS(poll_args), (sy_call_t *)sys_poll, AUE_POLL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 168 = poll */ - { 0, (sy_call_t *)linux_nfsservctl, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 169 = linux_nfsservctl */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 169 = nfsservctl */ { AS(linux_setresgid16_args), (sy_call_t *)linux_setresgid16, AUE_SETRESGID, NULL, 0, 0, 0, SY_THR_STATIC }, /* 170 = linux_setresgid16 */ { AS(linux_getresgid16_args), (sy_call_t *)linux_getresgid16, AUE_GETRESGID, NULL, 0, 0, 0, SY_THR_STATIC }, /* 171 = linux_getresgid16 */ { AS(linux_prctl_args), (sy_call_t *)linux_prctl, AUE_PRCTL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 172 = linux_prctl */ Modified: head/sys/amd64/linux32/linux32_systrace_args.c ============================================================================== --- head/sys/amd64/linux32/linux32_systrace_args.c Mon Mar 6 18:11:38 2017 (r314782) +++ head/sys/amd64/linux32/linux32_systrace_args.c Mon Mar 6 18:20:37 2017 (r314783) @@ -854,11 +854,6 @@ systrace_args(int sysnum, void *params, *n_args = 3; break; } - /* linux_create_module */ - case 127: { - *n_args = 0; - break; - } /* linux_init_module */ case 128: { *n_args = 0; @@ -869,11 +864,6 @@ systrace_args(int sysnum, void *params, *n_args = 0; break; } - /* linux_get_kernel_syms */ - case 130: { - *n_args = 0; - break; - } /* linux_quotactl */ case 131: { *n_args = 0; @@ -1139,11 +1129,6 @@ systrace_args(int sysnum, void *params, *n_args = 3; break; } - /* linux_query_module */ - case 167: { - *n_args = 0; - break; - } /* poll */ case 168: { struct poll_args *p = params; @@ -1153,11 +1138,6 @@ systrace_args(int sysnum, void *params, *n_args = 3; break; } - /* linux_nfsservctl */ - case 169: { - *n_args = 0; - break; - } /* linux_setresgid16 */ case 170: { struct linux_setresgid16_args *p = params; @@ -4026,18 +4006,12 @@ systrace_entry_setargdesc(int sysnum, in break; }; break; - /* linux_create_module */ - case 127: - break; /* linux_init_module */ case 128: break; /* linux_delete_module */ case 129: break; - /* linux_get_kernel_syms */ - case 130: - break; /* linux_quotactl */ case 131: break; @@ -4455,9 +4429,6 @@ systrace_entry_setargdesc(int sysnum, in break; }; break; - /* linux_query_module */ - case 167: - break; /* poll */ case 168: switch(ndx) { @@ -4474,9 +4445,6 @@ systrace_entry_setargdesc(int sysnum, in break; }; break; - /* linux_nfsservctl */ - case 169: - break; /* linux_setresgid16 */ case 170: switch(ndx) { @@ -7464,14 +7432,10 @@ systrace_return_setargdesc(int sysnum, i if (ndx == 0 || ndx == 1) p = "int"; break; - /* linux_create_module */ - case 127: /* linux_init_module */ case 128: /* linux_delete_module */ case 129: - /* linux_get_kernel_syms */ - case 130: /* linux_quotactl */ case 131: /* getpgid */ @@ -7630,15 +7594,11 @@ systrace_return_setargdesc(int sysnum, i if (ndx == 0 || ndx == 1) p = "int"; break; - /* linux_query_module */ - case 167: /* poll */ case 168: if (ndx == 0 || ndx == 1) p = "int"; break; - /* linux_nfsservctl */ - case 169: /* linux_setresgid16 */ case 170: if (ndx == 0 || ndx == 1) Modified: head/sys/i386/linux/linux_proto.h ============================================================================== --- head/sys/i386/linux/linux_proto.h Mon Mar 6 18:11:38 2017 (r314782) +++ head/sys/i386/linux/linux_proto.h Mon Mar 6 18:20:37 2017 (r314783) @@ -410,18 +410,12 @@ struct linux_sigprocmask_args { char mask_l_[PADL_(l_osigset_t *)]; l_osigset_t * mask; char mask_r_[PADR_(l_osigset_t *)]; char omask_l_[PADL_(l_osigset_t *)]; l_osigset_t * omask; char omask_r_[PADR_(l_osigset_t *)]; }; -struct linux_create_module_args { - register_t dummy; -}; struct linux_init_module_args { register_t dummy; }; struct linux_delete_module_args { register_t dummy; }; -struct linux_get_kernel_syms_args { - register_t dummy; -}; struct linux_quotactl_args { register_t dummy; }; @@ -525,12 +519,6 @@ struct linux_getresuid16_args { struct linux_vm86_args { register_t dummy; }; -struct linux_query_module_args { - register_t dummy; -}; -struct linux_nfsservctl_args { - register_t dummy; -}; struct linux_setresgid16_args { char rgid_l_[PADL_(l_gid16_t)]; l_gid16_t rgid; char rgid_r_[PADR_(l_gid16_t)]; char egid_l_[PADL_(l_gid16_t)]; l_gid16_t egid; char egid_r_[PADR_(l_gid16_t)]; @@ -1490,10 +1478,8 @@ int linux_modify_ldt(struct thread *, st int linux_adjtimex(struct thread *, struct linux_adjtimex_args *); int linux_mprotect(struct thread *, struct linux_mprotect_args *); int linux_sigprocmask(struct thread *, struct linux_sigprocmask_args *); -int linux_create_module(struct thread *, struct linux_create_module_args *); int linux_init_module(struct thread *, struct linux_init_module_args *); int linux_delete_module(struct thread *, struct linux_delete_module_args *); -int linux_get_kernel_syms(struct thread *, struct linux_get_kernel_syms_args *); int linux_quotactl(struct thread *, struct linux_quotactl_args *); int linux_bdflush(struct thread *, struct linux_bdflush_args *); int linux_sysfs(struct thread *, struct linux_sysfs_args *); @@ -1519,8 +1505,6 @@ int linux_mremap(struct thread *, struct int linux_setresuid16(struct thread *, struct linux_setresuid16_args *); int linux_getresuid16(struct thread *, struct linux_getresuid16_args *); int linux_vm86(struct thread *, struct linux_vm86_args *); -int linux_query_module(struct thread *, struct linux_query_module_args *); -int linux_nfsservctl(struct thread *, struct linux_nfsservctl_args *); int linux_setresgid16(struct thread *, struct linux_setresgid16_args *); int linux_getresgid16(struct thread *, struct linux_getresgid16_args *); int linux_prctl(struct thread *, struct linux_prctl_args *); @@ -1838,10 +1822,8 @@ int linux_pkey_free(struct thread *, str #define LINUX_SYS_AUE_linux_adjtimex AUE_ADJTIME #define LINUX_SYS_AUE_linux_mprotect AUE_MPROTECT #define LINUX_SYS_AUE_linux_sigprocmask AUE_SIGPROCMASK -#define LINUX_SYS_AUE_linux_create_module AUE_NULL #define LINUX_SYS_AUE_linux_init_module AUE_NULL #define LINUX_SYS_AUE_linux_delete_module AUE_NULL -#define LINUX_SYS_AUE_linux_get_kernel_syms AUE_NULL #define LINUX_SYS_AUE_linux_quotactl AUE_QUOTACTL #define LINUX_SYS_AUE_linux_bdflush AUE_BDFLUSH #define LINUX_SYS_AUE_linux_sysfs AUE_NULL @@ -1867,8 +1849,6 @@ int linux_pkey_free(struct thread *, str #define LINUX_SYS_AUE_linux_setresuid16 AUE_SETRESUID #define LINUX_SYS_AUE_linux_getresuid16 AUE_GETRESUID #define LINUX_SYS_AUE_linux_vm86 AUE_NULL -#define LINUX_SYS_AUE_linux_query_module AUE_NULL -#define LINUX_SYS_AUE_linux_nfsservctl AUE_NULL #define LINUX_SYS_AUE_linux_setresgid16 AUE_SETRESGID #define LINUX_SYS_AUE_linux_getresgid16 AUE_GETRESGID #define LINUX_SYS_AUE_linux_prctl AUE_PRCTL Modified: head/sys/i386/linux/linux_syscall.h ============================================================================== --- head/sys/i386/linux/linux_syscall.h Mon Mar 6 18:11:38 2017 (r314782) +++ head/sys/i386/linux/linux_syscall.h Mon Mar 6 18:20:37 2017 (r314783) @@ -121,10 +121,8 @@ #define LINUX_SYS_linux_adjtimex 124 #define LINUX_SYS_linux_mprotect 125 #define LINUX_SYS_linux_sigprocmask 126 -#define LINUX_SYS_linux_create_module 127 #define LINUX_SYS_linux_init_module 128 #define LINUX_SYS_linux_delete_module 129 -#define LINUX_SYS_linux_get_kernel_syms 130 #define LINUX_SYS_linux_quotactl 131 #define LINUX_SYS_getpgid 132 #define LINUX_SYS_fchdir 133 @@ -160,9 +158,7 @@ #define LINUX_SYS_linux_setresuid16 164 #define LINUX_SYS_linux_getresuid16 165 #define LINUX_SYS_linux_vm86 166 -#define LINUX_SYS_linux_query_module 167 #define LINUX_SYS_poll 168 -#define LINUX_SYS_linux_nfsservctl 169 #define LINUX_SYS_linux_setresgid16 170 #define LINUX_SYS_linux_getresgid16 171 #define LINUX_SYS_linux_prctl 172 Modified: head/sys/i386/linux/linux_syscalls.c ============================================================================== --- head/sys/i386/linux/linux_syscalls.c Mon Mar 6 18:11:38 2017 (r314782) +++ head/sys/i386/linux/linux_syscalls.c Mon Mar 6 18:20:37 2017 (r314783) @@ -134,10 +134,10 @@ const char *linux_syscallnames[] = { "linux_adjtimex", /* 124 = linux_adjtimex */ "linux_mprotect", /* 125 = linux_mprotect */ "linux_sigprocmask", /* 126 = linux_sigprocmask */ - "linux_create_module", /* 127 = linux_create_module */ + "#127", /* 127 = create_module */ "linux_init_module", /* 128 = linux_init_module */ "linux_delete_module", /* 129 = linux_delete_module */ - "linux_get_kernel_syms", /* 130 = linux_get_kernel_syms */ + "#130", /* 130 = get_kernel_syms */ "linux_quotactl", /* 131 = linux_quotactl */ "getpgid", /* 132 = getpgid */ "fchdir", /* 133 = fchdir */ @@ -174,9 +174,9 @@ const char *linux_syscallnames[] = { "linux_setresuid16", /* 164 = linux_setresuid16 */ "linux_getresuid16", /* 165 = linux_getresuid16 */ "linux_vm86", /* 166 = linux_vm86 */ - "linux_query_module", /* 167 = linux_query_module */ + "#167", /* 167 = query_module */ "poll", /* 168 = poll */ - "linux_nfsservctl", /* 169 = linux_nfsservctl */ + "#169", /* 169 = nfsservctl */ "linux_setresgid16", /* 170 = linux_setresgid16 */ "linux_getresgid16", /* 171 = linux_getresgid16 */ "linux_prctl", /* 172 = linux_prctl */ Modified: head/sys/i386/linux/linux_sysent.c ============================================================================== --- head/sys/i386/linux/linux_sysent.c Mon Mar 6 18:11:38 2017 (r314782) +++ head/sys/i386/linux/linux_sysent.c Mon Mar 6 18:20:37 2017 (r314783) @@ -144,10 +144,10 @@ struct sysent linux_sysent[] = { { 0, (sy_call_t *)linux_adjtimex, AUE_ADJTIME, NULL, 0, 0, 0, SY_THR_STATIC }, /* 124 = linux_adjtimex */ { AS(linux_mprotect_args), (sy_call_t *)linux_mprotect, AUE_MPROTECT, NULL, 0, 0, 0, SY_THR_STATIC }, /* 125 = linux_mprotect */ { AS(linux_sigprocmask_args), (sy_call_t *)linux_sigprocmask, AUE_SIGPROCMASK, NULL, 0, 0, 0, SY_THR_STATIC }, /* 126 = linux_sigprocmask */ - { 0, (sy_call_t *)linux_create_module, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 127 = linux_create_module */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 127 = create_module */ { 0, (sy_call_t *)linux_init_module, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 128 = linux_init_module */ { 0, (sy_call_t *)linux_delete_module, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 129 = linux_delete_module */ - { 0, (sy_call_t *)linux_get_kernel_syms, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 130 = linux_get_kernel_syms */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 130 = get_kernel_syms */ { 0, (sy_call_t *)linux_quotactl, AUE_QUOTACTL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 131 = linux_quotactl */ { AS(getpgid_args), (sy_call_t *)sys_getpgid, AUE_GETPGID, NULL, 0, 0, 0, SY_THR_STATIC }, /* 132 = getpgid */ { AS(fchdir_args), (sy_call_t *)sys_fchdir, AUE_FCHDIR, NULL, 0, 0, 0, SY_THR_STATIC }, /* 133 = fchdir */ @@ -184,9 +184,9 @@ struct sysent linux_sysent[] = { { AS(linux_setresuid16_args), (sy_call_t *)linux_setresuid16, AUE_SETRESUID, NULL, 0, 0, 0, SY_THR_STATIC }, /* 164 = linux_setresuid16 */ { AS(linux_getresuid16_args), (sy_call_t *)linux_getresuid16, AUE_GETRESUID, NULL, 0, 0, 0, SY_THR_STATIC }, /* 165 = linux_getresuid16 */ { 0, (sy_call_t *)linux_vm86, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 166 = linux_vm86 */ - { 0, (sy_call_t *)linux_query_module, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 167 = linux_query_module */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 167 = query_module */ { AS(poll_args), (sy_call_t *)sys_poll, AUE_POLL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 168 = poll */ - { 0, (sy_call_t *)linux_nfsservctl, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 169 = linux_nfsservctl */ + { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT }, /* 169 = nfsservctl */ { AS(linux_setresgid16_args), (sy_call_t *)linux_setresgid16, AUE_SETRESGID, NULL, 0, 0, 0, SY_THR_STATIC }, /* 170 = linux_setresgid16 */ { AS(linux_getresgid16_args), (sy_call_t *)linux_getresgid16, AUE_GETRESGID, NULL, 0, 0, 0, SY_THR_STATIC }, /* 171 = linux_getresgid16 */ { AS(linux_prctl_args), (sy_call_t *)linux_prctl, AUE_PRCTL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 172 = linux_prctl */ Modified: head/sys/i386/linux/linux_systrace_args.c ============================================================================== --- head/sys/i386/linux/linux_systrace_args.c Mon Mar 6 18:11:38 2017 (r314782) +++ head/sys/i386/linux/linux_systrace_args.c Mon Mar 6 18:20:37 2017 (r314783) @@ -892,11 +892,6 @@ systrace_args(int sysnum, void *params, *n_args = 3; break; } - /* linux_create_module */ - case 127: { - *n_args = 0; - break; - } /* linux_init_module */ case 128: { *n_args = 0; @@ -907,11 +902,6 @@ systrace_args(int sysnum, void *params, *n_args = 0; break; } - /* linux_get_kernel_syms */ - case 130: { - *n_args = 0; - break; - } /* linux_quotactl */ case 131: { *n_args = 0; @@ -1182,11 +1172,6 @@ systrace_args(int sysnum, void *params, *n_args = 0; break; } - /* linux_query_module */ - case 167: { - *n_args = 0; - break; - } /* poll */ case 168: { struct poll_args *p = params; @@ -1196,11 +1181,6 @@ systrace_args(int sysnum, void *params, *n_args = 3; break; } - /* linux_nfsservctl */ - case 169: { - *n_args = 0; - break; - } /* linux_setresgid16 */ case 170: { struct linux_setresgid16_args *p = params; @@ -4160,18 +4140,12 @@ systrace_entry_setargdesc(int sysnum, in break; }; break; - /* linux_create_module */ - case 127: - break; /* linux_init_module */ case 128: break; /* linux_delete_module */ case 129: break; - /* linux_get_kernel_syms */ - case 130: - break; /* linux_quotactl */ case 131: break; @@ -4592,9 +4566,6 @@ systrace_entry_setargdesc(int sysnum, in /* linux_vm86 */ case 166: break; - /* linux_query_module */ - case 167: - break; /* poll */ case 168: switch(ndx) { @@ -4611,9 +4582,6 @@ systrace_entry_setargdesc(int sysnum, in break; }; break; - /* linux_nfsservctl */ - case 169: - break; /* linux_setresgid16 */ case 170: switch(ndx) { @@ -7717,14 +7685,10 @@ systrace_return_setargdesc(int sysnum, i if (ndx == 0 || ndx == 1) p = "int"; break; - /* linux_create_module */ - case 127: /* linux_init_module */ case 128: /* linux_delete_module */ case 129: - /* linux_get_kernel_syms */ *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Mon Mar 6 18:32:21 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C3673CFC209; Mon, 6 Mar 2017 18:32:21 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6A6411D49; Mon, 6 Mar 2017 18:32:20 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v26IWF0J089543; Mon, 6 Mar 2017 10:32:15 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v26IWFw1089542; Mon, 6 Mar 2017 10:32:15 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703061832.v26IWFw1089542@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314709 - head In-Reply-To: <1488824415.18764.30.camel@freebsd.org> To: Ian Lepore Date: Mon, 6 Mar 2017 10:32:15 -0800 (PST) CC: Bryan Drewery , Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 18:32:21 -0000 [ Charset ISO-8859-1 unsupported, converting... ] > On Sun, 2017-03-05 at 19:12 -0800, Bryan Drewery wrote: > > On 3/5/17 3:41 PM, Warner Losh wrote: > > > > > > On Sun, Mar 5, 2017 at 2:16 PM, Bryan Drewery > > > wrote: > > > > > > > > Author: bdrewery > > > > Date: Sun Mar??5 21:16:50 2017 > > > > New Revision: 314709 > > > > URL: https://svnweb.freebsd.org/changeset/base/314709 > > > > > > > > Log: > > > > ? Fix bootstrapping mtree after r313404 for older systems. > > > > > > > > ? r313404 made libnetbsd require sha384.h from libmd.??Libmd > > > > added it in > > > > ? r292782.??Update BOOTSTRAPPING to account for this. > > > > > > > > ? Reported by:??bde > > > > ? Reviewed by:??ngie > > > > > > > > Modified: > > > > ? head/Makefile.inc1 > > > > > > > > Modified: head/Makefile.inc1 > > > > ================================================================= > > > > ============= > > > > --- head/Makefile.inc1??Sun Mar??5 19:56:20 2017????????(r314708) > > > > +++ head/Makefile.inc1??Sun Mar??5 21:16:50 2017????????(r314709) > > > > @@ -1618,10 +1618,12 @@ ${_bt}-usr.bin/m4: ${_bt}-lib/libopenbsd > > > > ?${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 > > > > ?.endif > > > > > > > > -.if ${BOOTSTRAPPING} < 1000026 > > > > -_nmtree=???????lib/libnetbsd \ > > > I've been trying to document the bootstrapping stuff inline like > > > > > > # r313404 made libnetbsd require libmd > > Definitely.??I forgot about that.??I think my change is incomplete > > and > > need to chase down a 2nd failure report.??I'll add the comment once > > that > > is figured out. > > > > I tracked this down to the fact that the prototype > > ? char * MD5FileChunk(const char *, char *, off_t, off_t); > > does not exist in /usr/include/sys/md5.h on older systems. ?I don't see > any straightforward way to declare that a header file from the > /usr/include hierarchy is a bootstrap item that needs a newer version > from the source tree being compiled. ?It looks like such a header would > have to go into the obj/.../tmp/legacy/usr/include to get used in the > boostrap compile, I just don't see how you get a file installed there > early enough in bootstrap. One way around this is to use the old concept of /usr/include symlinks into the src tree, not sure if you can still do that or not, but something like (cd /usr/src/include; make install SHARED=symlinks) A bootstrapping regresssion test I use to run was to rm -r /usr/include/* before a buildworld run, that would find these issues so they could be fixed before they become forgotten. > -- Ian -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Mon Mar 6 18:58:38 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0C19CCFC7DF for ; Mon, 6 Mar 2017 18:58:38 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from outbound1a.eu.mailhop.org (outbound1a.eu.mailhop.org [52.58.109.202]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9A4A819FA for ; Mon, 6 Mar 2017 18:58:37 +0000 (UTC) (envelope-from ian@freebsd.org) X-MHO-User: e78f63e3-029e-11e7-95b5-6dfd7dbb0ee5 X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 73.78.92.27 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (unknown [73.78.92.27]) by outbound1.eu.mailhop.org (Halon) with ESMTPSA id e78f63e3-029e-11e7-95b5-6dfd7dbb0ee5; Mon, 06 Mar 2017 18:58:38 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.15.2) with ESMTP id v26IwRRU001296; Mon, 6 Mar 2017 11:58:27 -0700 (MST) (envelope-from ian@freebsd.org) Message-ID: <1488826707.18764.34.camel@freebsd.org> Subject: Re: svn commit: r314709 - head From: Ian Lepore To: rgrimes@freebsd.org Cc: Bryan Drewery , Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Date: Mon, 06 Mar 2017 11:58:27 -0700 In-Reply-To: <201703061832.v26IWFw1089542@pdx.rh.CN85.dnsmgr.net> References: <201703061832.v26IWFw1089542@pdx.rh.CN85.dnsmgr.net> Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: Evolution 3.18.5.1 FreeBSD GNOME Team Port Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 18:58:38 -0000 On Mon, 2017-03-06 at 10:32 -0800, Rodney W. Grimes wrote: > [ Charset ISO-8859-1 unsupported, converting... ] > > > > On Sun, 2017-03-05 at 19:12 -0800, Bryan Drewery wrote: > > > > > > On 3/5/17 3:41 PM, Warner Losh wrote: > > > > > > > > > > > > On Sun, Mar 5, 2017 at 2:16 PM, Bryan Drewery > > > .org > > > > > > > > > > wrote: > > > > > > > > > > Author: bdrewery > > > > > Date: Sun Mar??5 21:16:50 2017 > > > > > New Revision: 314709 > > > > > URL: https://svnweb.freebsd.org/changeset/base/314709 > > > > > > > > > > Log: > > > > > ? Fix bootstrapping mtree after r313404 for older systems. > > > > > > > > > > ? r313404 made libnetbsd require sha384.h from libmd.??Libmd > > > > > added it in > > > > > ? r292782.??Update BOOTSTRAPPING to account for this. > > > > > > > > > > ? Reported by:??bde > > > > > ? Reviewed by:??ngie > > > > > > > > > > Modified: > > > > > ? head/Makefile.inc1 > > > > > > > > > > Modified: head/Makefile.inc1 > > > > > ============================================================= > > > > > ==== > > > > > ============= > > > > > --- head/Makefile.inc1??Sun Mar??5 19:56:20 > > > > > 2017????????(r314708) > > > > > +++ head/Makefile.inc1??Sun Mar??5 21:16:50 > > > > > 2017????????(r314709) > > > > > @@ -1618,10 +1618,12 @@ ${_bt}-usr.bin/m4: ${_bt}- > > > > > lib/libopenbsd > > > > > ?${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 > > > > > ?.endif > > > > > > > > > > -.if ${BOOTSTRAPPING} < 1000026 > > > > > -_nmtree=???????lib/libnetbsd \ > > > > I've been trying to document the bootstrapping stuff inline > > > > like > > > > > > > > # r313404 made libnetbsd require libmd > > > Definitely.??I forgot about that.??I think my change is > > > incomplete > > > and > > > need to chase down a 2nd failure report.??I'll add the comment > > > once > > > that > > > is figured out. > > > > > I tracked this down to the fact that the prototype > > > > ? char * MD5FileChunk(const char *, char *, off_t, off_t); > > > > does not exist in /usr/include/sys/md5.h on older systems. ?I don't > > see > > any straightforward way to declare that a header file from the > > /usr/include hierarchy is a bootstrap item that needs a newer > > version > > from the source tree being compiled. ?It looks like such a header > > would > > have to go into the obj/.../tmp/legacy/usr/include to get used in > > the > > boostrap compile, I just don't see how you get a file installed > > there > > early enough in bootstrap. > One way around this is to use the old concept of /usr/include > symlinks > into the src tree, not sure if you can still do that or not, but > something like > (cd /usr/src/include; make install SHARED=symlinks) > > A bootstrapping regresssion test I use to run was to rm -r > /usr/include/* > before a buildworld run, that would find these issues so they could > be fixed before they become forgotten. >   Making my live 10-stable system's /usr/include have symlinks into a 11- or 12- source tree is just not an option in any way.  The first question would be "which source tree" because I have like a dozen of them, not a single one of them rooted at /usr/src (which is an empty dir). This can't be the first time in 30+ years that system header files had to participate in the process of bootstrapping early build tools, but I don't see any machinery in Makefile.inc1 for dealing with it. -- Ian From owner-svn-src-all@freebsd.org Mon Mar 6 19:13:52 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BE5BDCFCC3E; Mon, 6 Mar 2017 19:13:52 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8D657139C; Mon, 6 Mar 2017 19:13:52 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by freefall.freebsd.org (Postfix) with ESMTPS id AC03C55C0; Mon, 6 Mar 2017 19:13:51 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 41B9231E62; Mon, 6 Mar 2017 19:13:50 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id n3xwXZcHSVOm; Mon, 6 Mar 2017 19:13:38 +0000 (UTC) Subject: Re: svn commit: r314709 - head DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com EE1B031E5C To: Ian Lepore , rgrimes@freebsd.org References: <201703061832.v26IWFw1089542@pdx.rh.CN85.dnsmgr.net> <1488826707.18764.34.camel@freebsd.org> Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" From: Bryan Drewery Organization: FreeBSD Message-ID: Date: Mon, 6 Mar 2017 11:13:37 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <1488826707.18764.34.camel@freebsd.org> Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="FtITRsg1kKcg9pA8CE2RLrO7GCBSetE9i" X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:13:52 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --FtITRsg1kKcg9pA8CE2RLrO7GCBSetE9i Content-Type: multipart/mixed; boundary="KiqaAEmxfGQVLJ635roo52N4fntnh5xPR"; protected-headers="v1" From: Bryan Drewery To: Ian Lepore , rgrimes@freebsd.org Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Message-ID: Subject: Re: svn commit: r314709 - head References: <201703061832.v26IWFw1089542@pdx.rh.CN85.dnsmgr.net> <1488826707.18764.34.camel@freebsd.org> In-Reply-To: <1488826707.18764.34.camel@freebsd.org> --KiqaAEmxfGQVLJ635roo52N4fntnh5xPR Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On 3/6/17 10:58 AM, Ian Lepore wrote: > On Mon, 2017-03-06 at 10:32 -0800, Rodney W. Grimes wrote: >> [ Charset ISO-8859-1 unsupported, converting... ] >>> >>> On Sun, 2017-03-05 at 19:12 -0800, Bryan Drewery wrote: >>>> >>>> On 3/5/17 3:41 PM, Warner Losh wrote: >>>>> >>>>> >>>>> On Sun, Mar 5, 2017 at 2:16 PM, Bryan Drewery >>>> .org >>>>>> >>>>>> wrote: >>>>>> >>>>>> Author: bdrewery >>>>>> Date: Sun Mar??5 21:16:50 2017 >>>>>> New Revision: 314709 >>>>>> URL: https://svnweb.freebsd.org/changeset/base/314709 >>>>>> >>>>>> Log: >>>>>> ? Fix bootstrapping mtree after r313404 for older systems. >>>>>> >>>>>> ? r313404 made libnetbsd require sha384.h from libmd.??Libmd >>>>>> added it in >>>>>> ? r292782.??Update BOOTSTRAPPING to account for this. >>>>>> >>>>>> ? Reported by:??bde >>>>>> ? Reviewed by:??ngie >>>>>> >>>>>> Modified: >>>>>> ? head/Makefile.inc1 >>>>>> >>>>>> Modified: head/Makefile.inc1 >>>>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>>>>> =3D=3D=3D=3D >>>>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>>>>> --- head/Makefile.inc1??Sun Mar??5 19:56:20 >>>>>> 2017????????(r314708) >>>>>> +++ head/Makefile.inc1??Sun Mar??5 21:16:50 >>>>>> 2017????????(r314709) >>>>>> @@ -1618,10 +1618,12 @@ ${_bt}-usr.bin/m4: ${_bt}- >>>>>> lib/libopenbsd >>>>>> ?${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 >>>>>> ?.endif >>>>>> >>>>>> -.if ${BOOTSTRAPPING} < 1000026 >>>>>> -_nmtree=3D???????lib/libnetbsd \ >>>>> I've been trying to document the bootstrapping stuff inline >>>>> like >>>>> >>>>> # r313404 made libnetbsd require libmd >>>> Definitely.??I forgot about that.??I think my change is >>>> incomplete >>>> and >>>> need to chase down a 2nd failure report.??I'll add the comment >>>> once >>>> that >>>> is figured out. >>>> >>> I tracked this down to the fact that the prototype >>> >>> ? char * MD5FileChunk(const char *, char *, off_t, off_t); >>> >>> does not exist in /usr/include/sys/md5.h on older systems. ?I don't >>> see >>> any straightforward way to declare that a header file from the >>> /usr/include hierarchy is a bootstrap item that needs a newer >>> version >>> from the source tree being compiled. ?It looks like such a header >>> would >>> have to go into the obj/.../tmp/legacy/usr/include to get used in >>> the >>> boostrap compile, I just don't see how you get a file installed >>> there >>> early enough in bootstrap. >> One way around this is to use the old concept of /usr/include >> symlinks >> into the src tree, not sure if you can still do that or not, but >> something like >> (cd /usr/src/include; make install SHARED=3Dsymlinks) >> >> A bootstrapping regresssion test I use to run was to rm -r >> /usr/include/* >> before a buildworld run, that would find these issues so they could >> be fixed before they become forgotten. >> =20 >=20 > Making my live 10-stable system's /usr/include have symlinks into a 11-= > or 12- source tree is just not an option in any way. The first > question would be "which source tree" because I have like a dozen of > them, not a single one of them rooted at /usr/src (which is an empty > dir). >=20 > This can't be the first time in 30+ years that system header files had > to participate in the process of bootstrapping early build tools, but I= > don't see any machinery in Makefile.inc1 for dealing with it. >=20 > -- Ian >=20 We use some special hacks in some places. Such as most of the elftoolchain build. It just symlinks the minimal headers it needs into its .OBJDIR and uses -I${.OBJDIR} to pick them up. This is done rather than the legacy method so that we don't pollute all of the bootstrapping with these headers; we really want the system headers for all of bootstrapping where possible since we are building *current native system tools*. libmd is already violating this by including some source directories directly, but they should be harmless since they are really just prototypes for the libmd that is being built. > CFLAGS+=3D -I${.CURDIR} -I${SRCTOP}/sys/crypto/sha2 > CFLAGS+=3D -I${SRCTOP}/sys/crypto/skein In the case of the current bootstrap failure, it's probably more than just this 1 function that is causing problems, but what I'm suggesting is= at https://people.freebsd.org/~bdrewery/patches/libmd-sys-md5.h.patch --=20 Regards, Bryan Drewery --KiqaAEmxfGQVLJ635roo52N4fntnh5xPR-- --FtITRsg1kKcg9pA8CE2RLrO7GCBSetE9i Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJYvbTiAAoJEDXXcbtuRpfPnLYH/jljvgjudvZGnm+7k7liXhV0 nHDDNRXWs+hPBGEZWJDUYoMyEWu75uIKnJwruNVhc2S0sF2KeA97OJX7eVQPkueB 2LEAjRI/033GfgErovrlNWN2x7n3Z5OtB2Jyxju0F3IXjIN6GzZnS6ZqvXCRErdc F+cDJ3FpQyV2qDDprhZ+tQIQ5P6kQU3PF8IXY/6KE9G7azmiE6fLR0mYj7v7b+3D mACaPobbhi4qoe1xmNdmRWl6xF8f4TLfSmlDkfOeznmYXaR9d76/DAzA7nZXMPVy KuZqmlgneSP5UqhJZqWzedNKVa2FTxxA55qk/gRYKrTQUJEEx3v2mAa1rqF7Q8A= =MeUf -----END PGP SIGNATURE----- --FtITRsg1kKcg9pA8CE2RLrO7GCBSetE9i-- From owner-svn-src-all@freebsd.org Mon Mar 6 19:14:09 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AD70BCFCC80; Mon, 6 Mar 2017 19:14:09 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 78B791503; Mon, 6 Mar 2017 19:14:09 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26JE84O014835; Mon, 6 Mar 2017 19:14:08 GMT (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26JE8Yr014834; Mon, 6 Mar 2017 19:14:08 GMT (envelope-from glebius@FreeBSD.org) Message-Id: <201703061914.v26JE8Yr014834@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: glebius set sender to glebius@FreeBSD.org using -f From: Gleb Smirnoff Date: Mon, 6 Mar 2017 19:14:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314784 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:14:09 -0000 Author: glebius Date: Mon Mar 6 19:14:08 2017 New Revision: 314784 URL: https://svnweb.freebsd.org/changeset/base/314784 Log: In panic() print current timestamp, which matches timestamp in the dump header. This will help to correlate console server logs with dump files, no matter how precise is clock on a console server appliance, and how buggy the appliance is. Modified: head/sys/kern/kern_shutdown.c Modified: head/sys/kern/kern_shutdown.c ============================================================================== --- head/sys/kern/kern_shutdown.c Mon Mar 6 18:20:37 2017 (r314783) +++ head/sys/kern/kern_shutdown.c Mon Mar 6 19:14:08 2017 (r314784) @@ -764,7 +764,7 @@ vpanic(const char *fmt, va_list ap) #ifdef SMP printf("cpuid = %d\n", PCPU_GET(cpuid)); #endif - + printf("time = %ld\n", time_second); #ifdef KDB if (newpanic && trace_on_panic) kdb_backtrace(); From owner-svn-src-all@freebsd.org Mon Mar 6 19:15:30 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 29E1FCFCD1F; Mon, 6 Mar 2017 19:15:30 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0402C16CB; Mon, 6 Mar 2017 19:15:29 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v26JFSXh089795; Mon, 6 Mar 2017 11:15:28 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v26JFSSd089794; Mon, 6 Mar 2017 11:15:28 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703061915.v26JFSSd089794@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314709 - head In-Reply-To: <1488826707.18764.34.camel@freebsd.org> To: Ian Lepore Date: Mon, 6 Mar 2017 11:15:28 -0800 (PST) CC: rgrimes@freebsd.org, Bryan Drewery , Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:15:30 -0000 [ Charset ISO-8859-1 unsupported, converting... ] > On Mon, 2017-03-06 at 10:32 -0800, Rodney W. Grimes wrote: > > [ Charset ISO-8859-1 unsupported, converting... ] > > > > > > On Sun, 2017-03-05 at 19:12 -0800, Bryan Drewery wrote: > > > > > > > > On 3/5/17 3:41 PM, Warner Losh wrote: > > > > > > > > > > > > > > > On Sun, Mar 5, 2017 at 2:16 PM, Bryan Drewery > > > > .org > > > > > > > > > > > > wrote: > > > > > > > > > > > > Author: bdrewery > > > > > > Date: Sun Mar??5 21:16:50 2017 > > > > > > New Revision: 314709 > > > > > > URL: https://svnweb.freebsd.org/changeset/base/314709 > > > > > > > > > > > > Log: > > > > > > ? Fix bootstrapping mtree after r313404 for older systems. > > > > > > > > > > > > ? r313404 made libnetbsd require sha384.h from libmd.??Libmd > > > > > > added it in > > > > > > ? r292782.??Update BOOTSTRAPPING to account for this. > > > > > > > > > > > > ? Reported by:??bde > > > > > > ? Reviewed by:??ngie > > > > > > > > > > > > Modified: > > > > > > ? head/Makefile.inc1 > > > > > > > > > > > > Modified: head/Makefile.inc1 > > > > > > ============================================================= > > > > > > ==== > > > > > > ============= > > > > > > --- head/Makefile.inc1??Sun Mar??5 19:56:20 > > > > > > 2017????????(r314708) > > > > > > +++ head/Makefile.inc1??Sun Mar??5 21:16:50 > > > > > > 2017????????(r314709) > > > > > > @@ -1618,10 +1618,12 @@ ${_bt}-usr.bin/m4: ${_bt}- > > > > > > lib/libopenbsd > > > > > > ?${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 > > > > > > ?.endif > > > > > > > > > > > > -.if ${BOOTSTRAPPING} < 1000026 > > > > > > -_nmtree=???????lib/libnetbsd \ > > > > > I've been trying to document the bootstrapping stuff inline > > > > > like > > > > > > > > > > # r313404 made libnetbsd require libmd > > > > Definitely.??I forgot about that.??I think my change is > > > > incomplete > > > > and > > > > need to chase down a 2nd failure report.??I'll add the comment > > > > once > > > > that > > > > is figured out. > > > > > > > I tracked this down to the fact that the prototype > > > > > > ? char * MD5FileChunk(const char *, char *, off_t, off_t); > > > > > > does not exist in /usr/include/sys/md5.h on older systems. ?I don't > > > see > > > any straightforward way to declare that a header file from the > > > /usr/include hierarchy is a bootstrap item that needs a newer > > > version > > > from the source tree being compiled. ?It looks like such a header > > > would > > > have to go into the obj/.../tmp/legacy/usr/include to get used in > > > the > > > boostrap compile, I just don't see how you get a file installed > > > there > > > early enough in bootstrap. > > One way around this is to use the old concept of /usr/include > > symlinks > > into the src tree, not sure if you can still do that or not, but > > something like > > (cd /usr/src/include; make install SHARED=symlinks) > > > > A bootstrapping regresssion test I use to run was to rm -r > > /usr/include/* > > before a buildworld run, that would find these issues so they could > > be fixed before they become forgotten. > > ? > > Making my live 10-stable system's /usr/include have symlinks into a 11- > or 12- source tree is just not an option in any way. ?The first > question would be "which source tree" because I have like a dozen of > them, not a single one of them rooted at /usr/src (which is an empty > dir). I dont know that the support of CUrrent -2 building -current with a bootstraping include issue is ever going to be workable. You could try to build a proper include tree someplace to use, this can be done with (cd; usr/src/include; make install DESTDIR=/my/new/tree) This well not touch your /usr/include, but give you a proper include tree, now the work is to get buildworld to use that include tree. If buildworld has degnerated to using stuff out of /usr/include that also needs to be fixed ASAP. > > This can't be the first time in 30+ years that system header files had > to participate in the process of bootstrapping early build tools, but I > don't see any machinery in Makefile.inc1 for dealing with it. Happens often, hence why I had that regression test. But bootstrapping on Current-2 has never been supported and probably never well be supported. > -- Ian -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Mon Mar 6 19:17:22 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9F4B6CFCDB6; Mon, 6 Mar 2017 19:17:22 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6EEB01868; Mon, 6 Mar 2017 19:17:22 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by freefall.freebsd.org (Postfix) with ESMTPS id 8B894592D; Mon, 6 Mar 2017 19:17:21 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 95AA031EBA; Mon, 6 Mar 2017 19:17:20 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id 19R0nl5ZTiOf; Mon, 6 Mar 2017 19:17:08 +0000 (UTC) Subject: Re: svn commit: r314709 - head DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com B951931EB5 To: rgrimes@freebsd.org, Ian Lepore References: <201703061915.v26JFSSd089794@pdx.rh.CN85.dnsmgr.net> Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" From: Bryan Drewery Organization: FreeBSD Message-ID: Date: Mon, 6 Mar 2017 11:17:07 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <201703061915.v26JFSSd089794@pdx.rh.CN85.dnsmgr.net> Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="eBTHG7WMUKV8KGAgUkc5fsvbMHjriaW8F" X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:17:22 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --eBTHG7WMUKV8KGAgUkc5fsvbMHjriaW8F Content-Type: multipart/mixed; boundary="LsvwnNPtI9HNt0xmpWtGWuP3c9rPJfW5M"; protected-headers="v1" From: Bryan Drewery To: rgrimes@freebsd.org, Ian Lepore Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Message-ID: Subject: Re: svn commit: r314709 - head References: <201703061915.v26JFSSd089794@pdx.rh.CN85.dnsmgr.net> In-Reply-To: <201703061915.v26JFSSd089794@pdx.rh.CN85.dnsmgr.net> --LsvwnNPtI9HNt0xmpWtGWuP3c9rPJfW5M Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On 3/6/17 11:15 AM, Rodney W. Grimes wrote: > [ Charset ISO-8859-1 unsupported, converting... ] >> On Mon, 2017-03-06 at 10:32 -0800, Rodney W. Grimes wrote: >>> [ Charset ISO-8859-1 unsupported, converting... ] >>>> >>>> On Sun, 2017-03-05 at 19:12 -0800, Bryan Drewery wrote: >>>>> >>>>> On 3/5/17 3:41 PM, Warner Losh wrote: >>>>>> >>>>>> >>>>>> On Sun, Mar 5, 2017 at 2:16 PM, Bryan Drewery >>>>> .org >>>>>>> >>>>>>> wrote: >>>>>>> >>>>>>> Author: bdrewery >>>>>>> Date: Sun Mar??5 21:16:50 2017 >>>>>>> New Revision: 314709 >>>>>>> URL: https://svnweb.freebsd.org/changeset/base/314709 >>>>>>> >>>>>>> Log: >>>>>>> ? Fix bootstrapping mtree after r313404 for older systems. >>>>>>> >>>>>>> ? r313404 made libnetbsd require sha384.h from libmd.??Libmd >>>>>>> added it in >>>>>>> ? r292782.??Update BOOTSTRAPPING to account for this. >>>>>>> >>>>>>> ? Reported by:??bde >>>>>>> ? Reviewed by:??ngie >>>>>>> >>>>>>> Modified: >>>>>>> ? head/Makefile.inc1 >>>>>>> >>>>>>> Modified: head/Makefile.inc1 >>>>>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>>>>>> =3D=3D=3D=3D >>>>>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>>>>>> --- head/Makefile.inc1??Sun Mar??5 19:56:20 >>>>>>> 2017????????(r314708) >>>>>>> +++ head/Makefile.inc1??Sun Mar??5 21:16:50 >>>>>>> 2017????????(r314709) >>>>>>> @@ -1618,10 +1618,12 @@ ${_bt}-usr.bin/m4: ${_bt}- >>>>>>> lib/libopenbsd >>>>>>> ?${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 >>>>>>> ?.endif >>>>>>> >>>>>>> -.if ${BOOTSTRAPPING} < 1000026 >>>>>>> -_nmtree=3D???????lib/libnetbsd \ >>>>>> I've been trying to document the bootstrapping stuff inline >>>>>> like >>>>>> >>>>>> # r313404 made libnetbsd require libmd >>>>> Definitely.??I forgot about that.??I think my change is >>>>> incomplete >>>>> and >>>>> need to chase down a 2nd failure report.??I'll add the comment >>>>> once >>>>> that >>>>> is figured out. >>>>> >>>> I tracked this down to the fact that the prototype >>>> >>>> ? char * MD5FileChunk(const char *, char *, off_t, off_t); >>>> >>>> does not exist in /usr/include/sys/md5.h on older systems. ?I don't >>>> see >>>> any straightforward way to declare that a header file from the >>>> /usr/include hierarchy is a bootstrap item that needs a newer >>>> version >>>> from the source tree being compiled. ?It looks like such a header >>>> would >>>> have to go into the obj/.../tmp/legacy/usr/include to get used in >>>> the >>>> boostrap compile, I just don't see how you get a file installed >>>> there >>>> early enough in bootstrap. >>> One way around this is to use the old concept of /usr/include >>> symlinks >>> into the src tree, not sure if you can still do that or not, but >>> something like >>> (cd /usr/src/include; make install SHARED=3Dsymlinks) >>> >>> A bootstrapping regresssion test I use to run was to rm -r >>> /usr/include/* >>> before a buildworld run, that would find these issues so they could >>> be fixed before they become forgotten. >>> ? >> >> Making my live 10-stable system's /usr/include have symlinks into a 11= - >> or 12- source tree is just not an option in any way. ?The first >> question would be "which source tree" because I have like a dozen of >> them, not a single one of them rooted at /usr/src (which is an empty >> dir). >=20 > I dont know that the support of CUrrent -2 building -current with > a bootstraping include issue is ever going to be workable. You > could try to build a proper include tree someplace to use, this > can be done with > (cd; usr/src/include; make install DESTDIR=3D/my/new/tree) This > well not touch your /usr/include, but give you a proper include tree, > now the work is to get buildworld to use that include tree. >=20 > If buildworld has degnerated to using stuff out of /usr/include > that also needs to be fixed ASAP. >=20 buildworld using /usr/include is an intended feature to support cross-building and running tools in the build that interface with the current kernel and not the kernel being built. >> >> This can't be the first time in 30+ years that system header files had= >> to participate in the process of bootstrapping early build tools, but = I >> don't see any machinery in Makefile.inc1 for dealing with it. >=20 > Happens often, hence why I had that regression test. But bootstrappin= g > on Current-2 has never been supported and probably never well be suppor= ted. >=20 >=20 >> -- Ian >=20 --=20 Regards, Bryan Drewery --LsvwnNPtI9HNt0xmpWtGWuP3c9rPJfW5M-- --eBTHG7WMUKV8KGAgUkc5fsvbMHjriaW8F Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJYvbWzAAoJEDXXcbtuRpfPNyoH/jOFxQFqe1EmZEMYTygjINj6 grKw/35b2rc7q3ac719o0fPycL/xSbA/5Em12ItN2xBZP2qAVALEgDaptRhIl91f WNxwHcbj66fHgTI6IJxdomfvMVjmx1eWDqNAa1NSTOETIYNVk6AX4An/CllA9yV2 1RueJh1Ma71hw5C+8JlpxGdD93edBf3Vt2c6CEXEPeaGfSYM8lDnV4uBMJuGQEqH XJgY03qPaZmUEDH0Q7hsui/dA8R8ZjwRmV7GZt1Xw6FSxaY47XynAgEUAliSr4Ex 5QLIkYfO7dpfM6o7a9zzSeDqAcni5+XF3ZRFkzThJrpELdxvEK18g56NeoEU7FE= =Veaa -----END PGP SIGNATURE----- --eBTHG7WMUKV8KGAgUkc5fsvbMHjriaW8F-- From owner-svn-src-all@freebsd.org Mon Mar 6 19:19:10 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DF98BCFCE33; Mon, 6 Mar 2017 19:19:10 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id AF7E119E8; Mon, 6 Mar 2017 19:19:10 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by freefall.freebsd.org (Postfix) with ESMTPS id D85175A56; Mon, 6 Mar 2017 19:19:09 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 1603431ED9; Mon, 6 Mar 2017 19:19:09 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id 7piu1oho3d5T; Mon, 6 Mar 2017 19:18:59 +0000 (UTC) Subject: Re: svn commit: r314709 - head DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com 83AEE31ED3 To: rgrimes@freebsd.org, Ian Lepore References: <201703061915.v26JFSSd089794@pdx.rh.CN85.dnsmgr.net> Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" From: Bryan Drewery Organization: FreeBSD Message-ID: <6e319063-5c93-0d70-766c-afabcf23c058@FreeBSD.org> Date: Mon, 6 Mar 2017 11:19:00 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="w1s139qaHobTTcajg6WKFnLApMpx9uJjH" X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:19:11 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --w1s139qaHobTTcajg6WKFnLApMpx9uJjH Content-Type: multipart/mixed; boundary="lDsgCvONPNQuQmSQfVvHaCgd25p01unxD"; protected-headers="v1" From: Bryan Drewery To: rgrimes@freebsd.org, Ian Lepore Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Message-ID: <6e319063-5c93-0d70-766c-afabcf23c058@FreeBSD.org> Subject: Re: svn commit: r314709 - head References: <201703061915.v26JFSSd089794@pdx.rh.CN85.dnsmgr.net> In-Reply-To: --lDsgCvONPNQuQmSQfVvHaCgd25p01unxD Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On 3/6/17 11:17 AM, Bryan Drewery wrote: > On 3/6/17 11:15 AM, Rodney W. Grimes wrote: >> [ Charset ISO-8859-1 unsupported, converting... ] >>> On Mon, 2017-03-06 at 10:32 -0800, Rodney W. Grimes wrote: >>>> [ Charset ISO-8859-1 unsupported, converting... ] >>>>> >>>>> On Sun, 2017-03-05 at 19:12 -0800, Bryan Drewery wrote: >>>>>> >>>>>> On 3/5/17 3:41 PM, Warner Losh wrote: >>>>>>> >>>>>>> >>>>>>> On Sun, Mar 5, 2017 at 2:16 PM, Bryan Drewery >>>>>> .org >>>>>>>> >>>>>>>> wrote: >>>>>>>> >>>>>>>> Author: bdrewery >>>>>>>> Date: Sun Mar??5 21:16:50 2017 >>>>>>>> New Revision: 314709 >>>>>>>> URL: https://svnweb.freebsd.org/changeset/base/314709 >>>>>>>> >>>>>>>> Log: >>>>>>>> ? Fix bootstrapping mtree after r313404 for older systems. >>>>>>>> >>>>>>>> ? r313404 made libnetbsd require sha384.h from libmd.??Libmd >>>>>>>> added it in >>>>>>>> ? r292782.??Update BOOTSTRAPPING to account for this. >>>>>>>> >>>>>>>> ? Reported by:??bde >>>>>>>> ? Reviewed by:??ngie >>>>>>>> >>>>>>>> Modified: >>>>>>>> ? head/Makefile.inc1 >>>>>>>> >>>>>>>> Modified: head/Makefile.inc1 >>>>>>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>>>>>>> =3D=3D=3D=3D >>>>>>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>>>>>>> --- head/Makefile.inc1??Sun Mar??5 19:56:20 >>>>>>>> 2017????????(r314708) >>>>>>>> +++ head/Makefile.inc1??Sun Mar??5 21:16:50 >>>>>>>> 2017????????(r314709) >>>>>>>> @@ -1618,10 +1618,12 @@ ${_bt}-usr.bin/m4: ${_bt}- >>>>>>>> lib/libopenbsd >>>>>>>> ?${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 >>>>>>>> ?.endif >>>>>>>> >>>>>>>> -.if ${BOOTSTRAPPING} < 1000026 >>>>>>>> -_nmtree=3D???????lib/libnetbsd \ >>>>>>> I've been trying to document the bootstrapping stuff inline >>>>>>> like >>>>>>> >>>>>>> # r313404 made libnetbsd require libmd >>>>>> Definitely.??I forgot about that.??I think my change is >>>>>> incomplete >>>>>> and >>>>>> need to chase down a 2nd failure report.??I'll add the comment >>>>>> once >>>>>> that >>>>>> is figured out. >>>>>> >>>>> I tracked this down to the fact that the prototype >>>>> >>>>> ? char * MD5FileChunk(const char *, char *, off_t, off_t); >>>>> >>>>> does not exist in /usr/include/sys/md5.h on older systems. ?I don't= >>>>> see >>>>> any straightforward way to declare that a header file from the >>>>> /usr/include hierarchy is a bootstrap item that needs a newer >>>>> version >>>>> from the source tree being compiled. ?It looks like such a header >>>>> would >>>>> have to go into the obj/.../tmp/legacy/usr/include to get used in >>>>> the >>>>> boostrap compile, I just don't see how you get a file installed >>>>> there >>>>> early enough in bootstrap. >>>> One way around this is to use the old concept of /usr/include >>>> symlinks >>>> into the src tree, not sure if you can still do that or not, but >>>> something like >>>> (cd /usr/src/include; make install SHARED=3Dsymlinks) >>>> >>>> A bootstrapping regresssion test I use to run was to rm -r >>>> /usr/include/* >>>> before a buildworld run, that would find these issues so they could >>>> be fixed before they become forgotten. >>>> ? >>> >>> Making my live 10-stable system's /usr/include have symlinks into a 1= 1- >>> or 12- source tree is just not an option in any way. ?The first >>> question would be "which source tree" because I have like a dozen of >>> them, not a single one of them rooted at /usr/src (which is an empty >>> dir). >> >> I dont know that the support of CUrrent -2 building -current with >> a bootstraping include issue is ever going to be workable. You >> could try to build a proper include tree someplace to use, this >> can be done with >> (cd; usr/src/include; make install DESTDIR=3D/my/new/tree) This >> well not touch your /usr/include, but give you a proper include tree, >> now the work is to get buildworld to use that include tree. >> >> If buildworld has degnerated to using stuff out of /usr/include >> that also needs to be fixed ASAP. >> >=20 > buildworld using /usr/include is an intended feature to support > cross-building and running tools in the build that interface with the > current kernel and not the kernel being built. I go over the various phases of the build and the bootstrapping involved at http://www.bsdcan.org/2016/schedule/events/716.en.html >=20 >>> >>> This can't be the first time in 30+ years that system header files ha= d >>> to participate in the process of bootstrapping early build tools, but= I >>> don't see any machinery in Makefile.inc1 for dealing with it. >> >> Happens often, hence why I had that regression test. But bootstrappi= ng >> on Current-2 has never been supported and probably never well be suppo= rted. >> >> >>> -- Ian >> >=20 >=20 --=20 Regards, Bryan Drewery --lDsgCvONPNQuQmSQfVvHaCgd25p01unxD-- --w1s139qaHobTTcajg6WKFnLApMpx9uJjH Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJYvbYkAAoJEDXXcbtuRpfPNMgIAKbak3pPZK3STf+1AYw6jL2v OyPDIFA9UUsdA2Ag+tuYa2v7nmaMrAxlWlFe7VImPApJxokpKLgACZVilJlEuYsF N0jP+X6ekOKhW/6x/HtULHENh5ynOscdeXePf2P3LEhLigs31I/25Un2WybNrJBP TGzjwxv9qM4qP69qu+Oe+xI58AM9vOh7J/gT6xKJFE9nz+c6UVf13c8EsRY48+0H 0BW48MoaGGJp4ymcdU6Dc/weGroGE5MXosH4+FNETSXQeWjPZjmgyK+5pHP4awrN fNf/bvwaKFC7OlnpmPTezW/vfaIinxwXQBYSTLgnCxQhqMJvEm8NTkmx9kEAMrY= =MlEV -----END PGP SIGNATURE----- --w1s139qaHobTTcajg6WKFnLApMpx9uJjH-- From owner-svn-src-all@freebsd.org Mon Mar 6 19:32:18 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B8534CFB313 for ; Mon, 6 Mar 2017 19:32:18 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from outbound1b.ore.mailhop.org (outbound1b.ore.mailhop.org [54.200.247.200]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8883C14B7 for ; Mon, 6 Mar 2017 19:32:18 +0000 (UTC) (envelope-from ian@freebsd.org) X-MHO-User: acba548a-02a3-11e7-ba57-8bc134ee460a X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 73.78.92.27 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (unknown [73.78.92.27]) by outbound1.ore.mailhop.org (Halon) with ESMTPSA id acba548a-02a3-11e7-ba57-8bc134ee460a; Mon, 06 Mar 2017 19:32:46 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.15.2) with ESMTP id v26JWFKB001364; Mon, 6 Mar 2017 12:32:15 -0700 (MST) (envelope-from ian@freebsd.org) Message-ID: <1488828735.18764.43.camel@freebsd.org> Subject: Re: svn commit: r314709 - head From: Ian Lepore To: rgrimes@freebsd.org Cc: Bryan Drewery , Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Date: Mon, 06 Mar 2017 12:32:15 -0700 In-Reply-To: <201703061915.v26JFSSd089794@pdx.rh.CN85.dnsmgr.net> References: <201703061915.v26JFSSd089794@pdx.rh.CN85.dnsmgr.net> Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: Evolution 3.18.5.1 FreeBSD GNOME Team Port Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:32:18 -0000 On Mon, 2017-03-06 at 11:15 -0800, Rodney W. Grimes wrote: > [ Charset ISO-8859-1 unsupported, converting... ] > > > > On Mon, 2017-03-06 at 10:32 -0800, Rodney W. Grimes wrote: > > > > > > [ Charset ISO-8859-1 unsupported, converting... ] > > > > > > > > > > > > On Sun, 2017-03-05 at 19:12 -0800, Bryan Drewery wrote: > > > > > > > > > > > > > > > On 3/5/17 3:41 PM, Warner Losh wrote: > > > > > > > > > > > > > > > > > > > > > > > > On Sun, Mar 5, 2017 at 2:16 PM, Bryan Drewery > > > > > ebsd > > > > > > .org > > > > > > > > > > > > > > > > > > > > > wrote: > > > > > > > > > > > > > > Author: bdrewery > > > > > > > Date: Sun Mar??5 21:16:50 2017 > > > > > > > New Revision: 314709 > > > > > > > URL: https://svnweb.freebsd.org/changeset/base/314709 > > > > > > > > > > > > > > Log: > > > > > > > ? Fix bootstrapping mtree after r313404 for older > > > > > > > systems. > > > > > > > > > > > > > > ? r313404 made libnetbsd require sha384.h from > > > > > > > libmd.??Libmd > > > > > > > added it in > > > > > > > ? r292782.??Update BOOTSTRAPPING to account for this. > > > > > > > > > > > > > > ? Reported by:??bde > > > > > > > ? Reviewed by:??ngie > > > > > > > > > > > > > > Modified: > > > > > > > ? head/Makefile.inc1 > > > > > > > > > > > > > > Modified: head/Makefile.inc1 > > > > > > > ========================================================= > > > > > > > ==== > > > > > > > ==== > > > > > > > ============= > > > > > > > --- head/Makefile.inc1??Sun Mar??5 19:56:20 > > > > > > > 2017????????(r314708) > > > > > > > +++ head/Makefile.inc1??Sun Mar??5 21:16:50 > > > > > > > 2017????????(r314709) > > > > > > > @@ -1618,10 +1618,12 @@ ${_bt}-usr.bin/m4: ${_bt}- > > > > > > > lib/libopenbsd > > > > > > > ?${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 > > > > > > > ?.endif > > > > > > > > > > > > > > -.if ${BOOTSTRAPPING} < 1000026 > > > > > > > -_nmtree=???????lib/libnetbsd \ > > > > > > I've been trying to document the bootstrapping stuff inline > > > > > > like > > > > > > > > > > > > # r313404 made libnetbsd require libmd > > > > > Definitely.??I forgot about that.??I think my change is > > > > > incomplete > > > > > and > > > > > need to chase down a 2nd failure report.??I'll add the > > > > > comment > > > > > once > > > > > that > > > > > is figured out. > > > > > > > > > I tracked this down to the fact that the prototype > > > > > > > > ? char * MD5FileChunk(const char *, char *, off_t, off_t); > > > > > > > > does not exist in /usr/include/sys/md5.h on older systems. ?I > > > > don't > > > > see > > > > any straightforward way to declare that a header file from the > > > > /usr/include hierarchy is a bootstrap item that needs a newer > > > > version > > > > from the source tree being compiled. ?It looks like such a > > > > header > > > > would > > > > have to go into the obj/.../tmp/legacy/usr/include to get used > > > > in > > > > the > > > > boostrap compile, I just don't see how you get a file installed > > > > there > > > > early enough in bootstrap. > > > One way around this is to use the old concept of /usr/include > > > symlinks > > > into the src tree, not sure if you can still do that or not, but > > > something like > > > (cd /usr/src/include; make install SHARED=symlinks) > > > > > > A bootstrapping regresssion test I use to run was to rm -r > > > /usr/include/* > > > before a buildworld run, that would find these issues so they > > > could > > > be fixed before they become forgotten. > > > ? > > Making my live 10-stable system's /usr/include have symlinks into a > > 11- > > or 12- source tree is just not an option in any way. ?The first > > question would be "which source tree" because I have like a dozen > > of > > them, not a single one of them rooted at /usr/src (which is an > > empty > > dir). > I dont know that the support of CUrrent -2 building -current with > a bootstraping include issue is ever going to be workable.  You > could try to build a proper include tree someplace to use, this > can be done with > (cd; usr/src/include; make install DESTDIR=/my/new/tree)  This > well not touch your /usr/include, but give you a proper include tree, > now the work is to get buildworld to use that include tree. > > If buildworld has degnerated to using stuff out of /usr/include > that also needs to be fixed ASAP. > > > > > > > This can't be the first time in 30+ years that system header files > > had > > to participate in the process of bootstrapping early build tools, > > but I > > don't see any machinery in Makefile.inc1 for dealing with it. > Happens often, hence why I had that regression test.   But > bootstrapping > on Current-2 has never been supported and probably never well be > supported. I'm aware that we officially only support building from current-1, but we've worked hard to do much better than that for many years. The only time I can think of it breaking in the last 10-12 years was late in the 10-current cycle we reached a point where I could no longer build 10-current on an 8-stable system.  That was a special case due to the cutover from gcc to clang and all the related changes.  (Even with that, I had it "almost working" but decided not to finish it and commit all the changes involved because they would have just gotten in the way of other modernization going on in the build system). The reality is, a lot of people rely on building current from current-2 systems for a variety of reasons, and it's worth putting some effort into supporting that. -- Ian From owner-svn-src-all@freebsd.org Mon Mar 6 19:33:16 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EBB53CFB398; Mon, 6 Mar 2017 19:33:16 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9EB141693; Mon, 6 Mar 2017 19:33:16 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26JXFcn023057; Mon, 6 Mar 2017 19:33:15 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26JXFgo023056; Mon, 6 Mar 2017 19:33:15 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703061933.v26JXFgo023056@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Mon, 6 Mar 2017 19:33:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314785 - head/usr.sbin/cxgbetool X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:33:17 -0000 Author: ngie Date: Mon Mar 6 19:33:15 2017 New Revision: 314785 URL: https://svnweb.freebsd.org/changeset/base/314785 Log: Fix some trivial manlint warnings Sentences should begin on new lines, per manlint. Bump .Dd for the change MFC after: 1 month Reviewed by: bcr Reported by: make manlint Sponsored by: Dell EMC Isilon Modified: head/usr.sbin/cxgbetool/cxgbetool.8 Modified: head/usr.sbin/cxgbetool/cxgbetool.8 ============================================================================== --- head/usr.sbin/cxgbetool/cxgbetool.8 Mon Mar 6 19:14:08 2017 (r314784) +++ head/usr.sbin/cxgbetool/cxgbetool.8 Mon Mar 6 19:33:15 2017 (r314785) @@ -31,7 +31,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 1, 2013 +.Dd March 6, 2017 .Dt CXGBETOOL 8 .Os .Sh NAME @@ -133,7 +133,8 @@ or .Va dev.cxgbe.%d.ofld_rxq.%d.fl.cntxt_id Ns . Note that freelists are egress queues too. .It Ar flm_cntxt_id -context id of a freelist manager. The FLM context id is displayed in the +context id of a freelist manager. +The FLM context id is displayed in the egress context dump of a freelist as FLMcontextID. .El .It Cm filter mode Op Ar match-criteria ... @@ -379,7 +380,8 @@ The card's memory map is available in .Va dev.t4nex.%d.misc.meminfo Ns . .It Bro Cm reg | reg64 Brc Ar addr Ns Op Ar =val .It Cm regdump Op Ar register-block ... -Display contents of device registers. One or more +Display contents of device registers. +One or more .Ar register-block can be specified to limit the registers displayed. The default is to display registers for all blocks. @@ -400,7 +402,8 @@ A non-zero value will enable "minmax" mo .Pp NOTE: Many (most) of the parameters and constraints are adapter-specific - for instance the number of channels and classes which are available -whether various modes are implemented, etc. Consult the adapter documentation for specific information on any limitations. +whether various modes are implemented, etc. +Consult the adapter documentation for specific information on any limitations. .El .It Cm sched-class params Op Ar param Ar value Configure parameters for a scheduling class. @@ -471,7 +474,8 @@ The weight to be used for a weighted-rou The average packet size will be used to compute scheduler constraints for a rate-limited scheduler class hierarchy. .Pp NOTE: Many (most) of the parameters and constraints are adapter-specific - for instance the number of channels and classes which are available, -whether various modes are implemented, etc. Consult the adapter documentation for specific information on any limitations. +whether various modes are implemented, etc. +Consult the adapter documentation for specific information on any limitations. .El .It Cm sched-queue Ar port queue class Bind the indicated port's NIC TX From owner-svn-src-all@freebsd.org Mon Mar 6 19:33:23 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B00EBCFB3CA for ; Mon, 6 Mar 2017 19:33:23 +0000 (UTC) (envelope-from ian@freebsd.org) Received: from pmta2.delivery6.ore.mailhop.org (pmta2.delivery6.ore.mailhop.org [54.200.129.228]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9219816E4 for ; Mon, 6 Mar 2017 19:33:23 +0000 (UTC) (envelope-from ian@freebsd.org) X-MHO-User: acbfcb6d-02a3-11e7-b3c2-c9f38144898e X-Report-Abuse-To: https://support.duocircle.com/support/solutions/articles/5000540958-duocircle-standard-smtp-abuse-information X-Originating-IP: 73.78.92.27 X-Mail-Handler: DuoCircle Outbound SMTP Received: from ilsoft.org (unknown [73.78.92.27]) by outbound2.ore.mailhop.org (Halon) with ESMTPSA id acbfcb6d-02a3-11e7-b3c2-c9f38144898e; Mon, 06 Mar 2017 19:32:46 +0000 (UTC) Received: from rev (rev [172.22.42.240]) by ilsoft.org (8.15.2/8.15.2) with ESMTP id v26JXKJn001370; Mon, 6 Mar 2017 12:33:20 -0700 (MST) (envelope-from ian@freebsd.org) Message-ID: <1488828800.18764.44.camel@freebsd.org> Subject: Re: svn commit: r314709 - head From: Ian Lepore To: Bryan Drewery , rgrimes@freebsd.org Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Date: Mon, 06 Mar 2017 12:33:20 -0700 In-Reply-To: References: <201703061832.v26IWFw1089542@pdx.rh.CN85.dnsmgr.net> <1488826707.18764.34.camel@freebsd.org> Content-Type: text/plain; charset="ISO-8859-1" X-Mailer: Evolution 3.18.5.1 FreeBSD GNOME Team Port Mime-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:33:23 -0000 On Mon, 2017-03-06 at 11:13 -0800, Bryan Drewery wrote: > On 3/6/17 10:58 AM, Ian Lepore wrote: > > > > On Mon, 2017-03-06 at 10:32 -0800, Rodney W. Grimes wrote: > > > > > > [ Charset ISO-8859-1 unsupported, converting... ] > > > > > > > > > > > > On Sun, 2017-03-05 at 19:12 -0800, Bryan Drewery wrote: > > > > > > > > > > > > > > > On 3/5/17 3:41 PM, Warner Losh wrote: > > > > > > > > > > > > > > > > > > > > > > > > On Sun, Mar 5, 2017 at 2:16 PM, Bryan Drewery > > > > > ebsd > > > > > > .org > > > > > > > > > > > > > > > > > > > > > wrote: > > > > > > > > > > > > > > Author: bdrewery > > > > > > > Date: Sun Mar??5 21:16:50 2017 > > > > > > > New Revision: 314709 > > > > > > > URL: https://svnweb.freebsd.org/changeset/base/314709 > > > > > > > > > > > > > > Log: > > > > > > > ? Fix bootstrapping mtree after r313404 for older > > > > > > > systems. > > > > > > > > > > > > > > ? r313404 made libnetbsd require sha384.h from > > > > > > > libmd.??Libmd > > > > > > > added it in > > > > > > > ? r292782.??Update BOOTSTRAPPING to account for this. > > > > > > > > > > > > > > ? Reported by:??bde > > > > > > > ? Reviewed by:??ngie > > > > > > > > > > > > > > Modified: > > > > > > > ? head/Makefile.inc1 > > > > > > > > > > > > > > Modified: head/Makefile.inc1 > > > > > > > ========================================================= > > > > > > > ==== > > > > > > > ==== > > > > > > > ============= > > > > > > > --- head/Makefile.inc1??Sun Mar??5 19:56:20 > > > > > > > 2017????????(r314708) > > > > > > > +++ head/Makefile.inc1??Sun Mar??5 21:16:50 > > > > > > > 2017????????(r314709) > > > > > > > @@ -1618,10 +1618,12 @@ ${_bt}-usr.bin/m4: ${_bt}- > > > > > > > lib/libopenbsd > > > > > > > ?${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 > > > > > > > ?.endif > > > > > > > > > > > > > > -.if ${BOOTSTRAPPING} < 1000026 > > > > > > > -_nmtree=???????lib/libnetbsd \ > > > > > > I've been trying to document the bootstrapping stuff inline > > > > > > like > > > > > > > > > > > > # r313404 made libnetbsd require libmd > > > > > Definitely.??I forgot about that.??I think my change is > > > > > incomplete > > > > > and > > > > > need to chase down a 2nd failure report.??I'll add the > > > > > comment > > > > > once > > > > > that > > > > > is figured out. > > > > > > > > > I tracked this down to the fact that the prototype > > > > > > > > ? char * MD5FileChunk(const char *, char *, off_t, off_t); > > > > > > > > does not exist in /usr/include/sys/md5.h on older systems. ?I > > > > don't > > > > see > > > > any straightforward way to declare that a header file from the > > > > /usr/include hierarchy is a bootstrap item that needs a newer > > > > version > > > > from the source tree being compiled. ?It looks like such a > > > > header > > > > would > > > > have to go into the obj/.../tmp/legacy/usr/include to get used > > > > in > > > > the > > > > boostrap compile, I just don't see how you get a file installed > > > > there > > > > early enough in bootstrap. > > > One way around this is to use the old concept of /usr/include > > > symlinks > > > into the src tree, not sure if you can still do that or not, but > > > something like > > > (cd /usr/src/include; make install SHARED=symlinks) > > > > > > A bootstrapping regresssion test I use to run was to rm -r > > > /usr/include/* > > > before a buildworld run, that would find these issues so they > > > could > > > be fixed before they become forgotten. > > >   > > Making my live 10-stable system's /usr/include have symlinks into a > > 11- > > or 12- source tree is just not an option in any way.  The first > > question would be "which source tree" because I have like a dozen > > of > > them, not a single one of them rooted at /usr/src (which is an > > empty > > dir). > > > > This can't be the first time in 30+ years that system header files > > had > > to participate in the process of bootstrapping early build tools, > > but I > > don't see any machinery in Makefile.inc1 for dealing with it. > > > > -- Ian > > > We use some special hacks in some places.  Such as most of the > elftoolchain build.  It just symlinks the minimal headers it needs > into > its .OBJDIR and uses -I${.OBJDIR} to pick them up.  This is done > rather > than the legacy method so that we don't pollute all of the > bootstrapping > with these headers; we really want the system headers for all of > bootstrapping where possible since we are building *current native > system tools*. > > libmd is already violating this by including some source directories > directly, but they should be harmless since they are really just > prototypes for the libmd that is being built. > > > > > CFLAGS+= -I${.CURDIR} -I${SRCTOP}/sys/crypto/sha2 > > CFLAGS+= -I${SRCTOP}/sys/crypto/skein > In the case of the current bootstrap failure, it's probably more than > just this 1 function that is causing problems, but what I'm > suggesting is at > https://people.freebsd.org/~bdrewery/patches/libmd-sys-md5.h.patch > > I've got a build underway with that patch and it's far beyond the point where it was dying (which was almost-immediately before the patch). -- Ian From owner-svn-src-all@freebsd.org Mon Mar 6 19:34:09 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 53510CFB476; Mon, 6 Mar 2017 19:34:09 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pf0-x244.google.com (mail-pf0-x244.google.com [IPv6:2607:f8b0:400e:c00::244]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 20E441964; Mon, 6 Mar 2017 19:34:09 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pf0-x244.google.com with SMTP id o126so4388097pfb.1; Mon, 06 Mar 2017 11:34:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:mime-version:from:in-reply-to:date:cc:message-id:references :to; bh=0fjHi4kasPFJx7v4PIOuzeWtI/Dkmx1CEIjRqCPJoM4=; b=dwtJLJojbdzRALLXtFXPabFq2W06apoAtnRz5QoZ/8xk3uZb/P/39PtstcvttIIlxZ E40ym0nj0pmp0cPwF4ybuWlPgJZ+ChxHafItLxe2oAgJmOYJqXe6S4id8Ya2AbYmgnje 9ZrvZEWrW836PvE0r2DypPqaUIZAhE46CpxpUHnRnL6UZf72G9ivjsGd1S+vXvmgF9jW 1NRUxY6zh9N2BUakEqdRsdTDruZLFWDg4xvRdC0UAPmuGpZmmR4hdBS/ZIuIvjV3lRwt +DjapEXCksCeUPU+F92fCKb8ipNmIYFJaYFG5ldGlZODXnG1sH8vK3xr/A7pBHx+rCxK giCA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:mime-version:from:in-reply-to:date:cc :message-id:references:to; bh=0fjHi4kasPFJx7v4PIOuzeWtI/Dkmx1CEIjRqCPJoM4=; b=kuEWWl3FDUzgQqvmNoPz9tVc3wpFsmmnieEe5S06QYHjqG+t+6YuA3+NSRjXqmX5cp ReT33LxJ2UtLW2p6v9ajMmTJgoHwaLcSgiBJf2H1O7Y0MfvDQrRWmeV0oHCifSiC+HuA ft81HDroleagnW9BI+kQastmbyJG/Htjmu3UEUSOYOXuCR9DYllzlkcUHno8YfrrCM3a fjoqn4HOaCHPUjT0uAbAaEhVrG3Quv1SC9Xy5IIWWhwaxODAuEpl+v7jq/9zmNN4bxm9 A35cUyE2+Z5/tYJlUcrQPw+ewor6aGb9AWYrG1VWdAdJDzNbUZafclfk84wkplppsrJa 6Pxw== X-Gm-Message-State: AMke39nCbtlCY99VYWAiAHv1hiHWQPTnwPK83KGspbiadvyp9qKNUOCthtAZzjMxtGg1Cw== X-Received: by 10.84.205.70 with SMTP id o6mr29105059plh.176.1488828848345; Mon, 06 Mar 2017 11:34:08 -0800 (PST) Received: from pinklady.local (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id f125sm41160216pfc.4.2017.03.06.11.34.07 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 06 Mar 2017 11:34:07 -0800 (PST) Subject: Re: svn commit: r314785 - head/usr.sbin/cxgbetool Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Content-Type: multipart/signed; boundary="Apple-Mail=_B6C224A4-F8E2-483A-86C1-8A1469231466"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail From: "Ngie Cooper (yaneurabeya)" In-Reply-To: <201703061933.v26JXFgo023056@repo.freebsd.org> Date: Mon, 6 Mar 2017 11:34:06 -0800 Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-Id: <3426E101-9EFD-4E60-BC56-AA35D0BB0820@gmail.com> References: <201703061933.v26JXFgo023056@repo.freebsd.org> To: Ngie Cooper X-Mailer: Apple Mail (2.3124) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:34:09 -0000 --Apple-Mail=_B6C224A4-F8E2-483A-86C1-8A1469231466 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii > On Mar 6, 2017, at 11:33, Ngie Cooper wrote: > > Author: ngie > Date: Mon Mar 6 19:33:15 2017 > New Revision: 314785 > URL: https://svnweb.freebsd.org/changeset/base/314785 > > Log: > Fix some trivial manlint warnings > > Sentences should begin on new lines, per manlint. > > Bump .Dd for the change > > MFC after: 1 month > Reviewed by: bcr > Reported by: make manlint > Sponsored by: Dell EMC Isilon Differential Revision: https://reviews.freebsd.org/D9884 --Apple-Mail=_B6C224A4-F8E2-483A-86C1-8A1469231466 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJYvbmuAAoJEPWDqSZpMIYVe1YP/3D+6oXsn6lcmkzXpGyDRJQZ Dn6BYf95elGnnfzk1TBNcUttZ84GMjiDNpR0DH16n3VhAD19Ur6jZZA/FL7zvT2m EeM+DlJkocj+ebFvkk1euxNwjTj46wqXhJ9EGTxIqSkBBOGfj8WDVtGneDwpRreA Taq+hgD1quyvtMLNCo+zU9QvMd+NBGDL8OhjnchsChIYwh+elbIudlJJ32WZANLd tn3vNii33OQuYK6hjLl6I6Hmje1/Io9PJkqBfqo0o26sN9tCaZVVZr9zWlJLkBIS EOrQ5gn1z5gPAhBuElTOb5r5vZpkVA37ARoffNj3LR8ux14Aik9MHBKo2csY+Tnl /gMfKFI1gfCWca62t4QMz7KY+93k7SYlCYG8FqINs1vy+m/8e97bW2RYSbTJd2XZ jiyaWDZCcOLzrURN3bCPkd1LpoFdhZkTfSmOfFsra3C5VRgsMzB9bdDJbfu7LR3o QKFB9a1embVE8y+5WyTN0sJIxomWpOb8lBt+Rz7s0zpzIia6V/P33CuuI1vGTmkr jZfLbfypoDVnmvT6LA5LCxKXzlTjpmdpGZHpLnTjsfbyZlB05XXCKEp9U5YvWFYw bTEQfh/Sco/jG+A62x1FZONWcoCSBCHmEFB8WWy05mrDueJLGoB1hFDeIL3GCiF1 JGX69aaivvWPKY3klE3M =np9j -----END PGP SIGNATURE----- --Apple-Mail=_B6C224A4-F8E2-483A-86C1-8A1469231466-- From owner-svn-src-all@freebsd.org Mon Mar 6 19:35:14 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 15843CFB4E3; Mon, 6 Mar 2017 19:35:14 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D9BF91B00; Mon, 6 Mar 2017 19:35:13 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by freefall.freebsd.org (Postfix) with ESMTPS id 0DBEB635C; Mon, 6 Mar 2017 19:35:13 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 2012D31FB8; Mon, 6 Mar 2017 19:35:12 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id Zkn8PG-MBcHW; Mon, 6 Mar 2017 19:34:59 +0000 (UTC) Subject: Re: svn commit: r314709 - head DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com 23CCD31FB1 To: Ian Lepore , rgrimes@freebsd.org References: <201703061915.v26JFSSd089794@pdx.rh.CN85.dnsmgr.net> <1488828735.18764.43.camel@freebsd.org> Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" From: Bryan Drewery Organization: FreeBSD Message-ID: Date: Mon, 6 Mar 2017 11:34:38 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <1488828735.18764.43.camel@freebsd.org> Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="8evJp0pvDxacEpo7DWNtIXqQgiflsvkAa" X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:35:14 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --8evJp0pvDxacEpo7DWNtIXqQgiflsvkAa Content-Type: multipart/mixed; boundary="lVonaw8jt7pq03hxJJu5XqP0tabbBEmoS"; protected-headers="v1" From: Bryan Drewery To: Ian Lepore , rgrimes@freebsd.org Cc: Warner Losh , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Message-ID: Subject: Re: svn commit: r314709 - head References: <201703061915.v26JFSSd089794@pdx.rh.CN85.dnsmgr.net> <1488828735.18764.43.camel@freebsd.org> In-Reply-To: <1488828735.18764.43.camel@freebsd.org> --lVonaw8jt7pq03hxJJu5XqP0tabbBEmoS Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On 3/6/17 11:32 AM, Ian Lepore wrote: > On Mon, 2017-03-06 at 11:15 -0800, Rodney W. Grimes wrote: >> [ Charset ISO-8859-1 unsupported, converting... ] >>> >>> On Mon, 2017-03-06 at 10:32 -0800, Rodney W. Grimes wrote: >>>> >>>> [ Charset ISO-8859-1 unsupported, converting... ] >>>>> >>>>> >>>>> On Sun, 2017-03-05 at 19:12 -0800, Bryan Drewery wrote: >>>>>> >>>>>> >>>>>> On 3/5/17 3:41 PM, Warner Losh wrote: >>>>>>> >>>>>>> >>>>>>> >>>>>>> On Sun, Mar 5, 2017 at 2:16 PM, Bryan Drewery >>>>>> ebsd >>>>>>> .org >>>>>>>> >>>>>>>> >>>>>>>> wrote: >>>>>>>> >>>>>>>> Author: bdrewery >>>>>>>> Date: Sun Mar??5 21:16:50 2017 >>>>>>>> New Revision: 314709 >>>>>>>> URL: https://svnweb.freebsd.org/changeset/base/314709 >>>>>>>> >>>>>>>> Log: >>>>>>>> ? Fix bootstrapping mtree after r313404 for older >>>>>>>> systems. >>>>>>>> >>>>>>>> ? r313404 made libnetbsd require sha384.h from >>>>>>>> libmd.??Libmd >>>>>>>> added it in >>>>>>>> ? r292782.??Update BOOTSTRAPPING to account for this. >>>>>>>> >>>>>>>> ? Reported by:??bde >>>>>>>> ? Reviewed by:??ngie >>>>>>>> >>>>>>>> Modified: >>>>>>>> ? head/Makefile.inc1 >>>>>>>> >>>>>>>> Modified: head/Makefile.inc1 >>>>>>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>>>>>>> =3D=3D=3D=3D >>>>>>>> =3D=3D=3D=3D >>>>>>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>>>>>>> --- head/Makefile.inc1??Sun Mar??5 19:56:20 >>>>>>>> 2017????????(r314708) >>>>>>>> +++ head/Makefile.inc1??Sun Mar??5 21:16:50 >>>>>>>> 2017????????(r314709) >>>>>>>> @@ -1618,10 +1618,12 @@ ${_bt}-usr.bin/m4: ${_bt}- >>>>>>>> lib/libopenbsd >>>>>>>> ?${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 >>>>>>>> ?.endif >>>>>>>> >>>>>>>> -.if ${BOOTSTRAPPING} < 1000026 >>>>>>>> -_nmtree=3D???????lib/libnetbsd \ >>>>>>> I've been trying to document the bootstrapping stuff inline >>>>>>> like >>>>>>> >>>>>>> # r313404 made libnetbsd require libmd >>>>>> Definitely.??I forgot about that.??I think my change is >>>>>> incomplete >>>>>> and >>>>>> need to chase down a 2nd failure report.??I'll add the >>>>>> comment >>>>>> once >>>>>> that >>>>>> is figured out. >>>>>> >>>>> I tracked this down to the fact that the prototype >>>>> >>>>> ? char * MD5FileChunk(const char *, char *, off_t, off_t); >>>>> >>>>> does not exist in /usr/include/sys/md5.h on older systems. ?I >>>>> don't >>>>> see >>>>> any straightforward way to declare that a header file from the >>>>> /usr/include hierarchy is a bootstrap item that needs a newer >>>>> version >>>>> from the source tree being compiled. ?It looks like such a >>>>> header >>>>> would >>>>> have to go into the obj/.../tmp/legacy/usr/include to get used >>>>> in >>>>> the >>>>> boostrap compile, I just don't see how you get a file installed >>>>> there >>>>> early enough in bootstrap. >>>> One way around this is to use the old concept of /usr/include >>>> symlinks >>>> into the src tree, not sure if you can still do that or not, but >>>> something like >>>> (cd /usr/src/include; make install SHARED=3Dsymlinks) >>>> >>>> A bootstrapping regresssion test I use to run was to rm -r >>>> /usr/include/* >>>> before a buildworld run, that would find these issues so they >>>> could >>>> be fixed before they become forgotten. >>>> ? >>> Making my live 10-stable system's /usr/include have symlinks into a >>> 11- >>> or 12- source tree is just not an option in any way. ?The first >>> question would be "which source tree" because I have like a dozen >>> of >>> them, not a single one of them rooted at /usr/src (which is an >>> empty >>> dir). >> I dont know that the support of CUrrent -2 building -current with >> a bootstraping include issue is ever going to be workable. You >> could try to build a proper include tree someplace to use, this >> can be done with >> (cd; usr/src/include; make install DESTDIR=3D/my/new/tree) This >> well not touch your /usr/include, but give you a proper include tree, >> now the work is to get buildworld to use that include tree. >> >> If buildworld has degnerated to using stuff out of /usr/include >> that also needs to be fixed ASAP. >> >>> >>> >>> This can't be the first time in 30+ years that system header files >>> had >>> to participate in the process of bootstrapping early build tools, >>> but I >>> don't see any machinery in Makefile.inc1 for dealing with it. >> Happens often, hence why I had that regression test. But >> bootstrapping >> on Current-2 has never been supported and probably never well be >> supported. >=20 > I'm aware that we officially only support building from current-1, but > we've worked hard to do much better than that for many years. >=20 > The only time I can think of it breaking in the last 10-12 years was > late in the 10-current cycle we reached a point where I could no longer= > build 10-current on an 8-stable system. That was a special case due to= > the cutover from gcc to clang and all the related changes. (Even with > that, I had it "almost working" but decided not to finish it and commit= > all the changes involved because they would have just gotten in the way= > of other modernization going on in the build system). >=20 > The reality is, a lot of people rely on building current from current-2= =20 > systems for a variety of reasons, and it's worth putting some effort > into supporting that. >=20 There is also a lot of demand for building from Linux or OSX. That will require additional bootstrapping. Either way, we'll never get away from bootstrapping, and the cost of keeping current-2 support is pretty low. --=20 Regards, Bryan Drewery --lVonaw8jt7pq03hxJJu5XqP0tabbBEmoS-- --8evJp0pvDxacEpo7DWNtIXqQgiflsvkAa Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJYvbnOAAoJEDXXcbtuRpfPR1AH/iPmu7wPizyEVHzgWu9pDxFL F75mDgPva3zND7/3FBY1Qe7INHvijiLexD2FR5sPXqJzk6IgKDVMwpk4a80/w9gj kCWw8F4k80sOZRULvKBJfr6Y3ASv1JEFkSRaS/hQLBGWVfjhUG6fgJWzsP3lJPx9 Uv73LD++wmRfZfibx7tvgwvnlBZNUB2HAoCd8HQvKX8onGu9uTsmDTMg5/7U/mo8 mYDKdvbn/L3a5RPhbf9A5A3WeQmjZ1V1Ckd5fllsuhN4mo/Qy1pOkRtwQ78405LW riBNAPVAZqjHLwr9GnxS6daSgRzz7chkH32pLsahfZvMiIIQd/JdEdhF1WEBj2Q= =I86w -----END PGP SIGNATURE----- --8evJp0pvDxacEpo7DWNtIXqQgiflsvkAa-- From owner-svn-src-all@freebsd.org Mon Mar 6 19:38:19 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 21148CFB62C for ; Mon, 6 Mar 2017 19:38:19 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-io0-x22b.google.com (mail-io0-x22b.google.com [IPv6:2607:f8b0:4001:c06::22b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id DD73C1D36 for ; Mon, 6 Mar 2017 19:38:18 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-io0-x22b.google.com with SMTP id z13so76680976iof.2 for ; Mon, 06 Mar 2017 11:38:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=6ZnZKatRKMV4TLQw8PgYZKZNm4J6C4ed5IfbL5Kfbk0=; b=stb8UgtgwsLJQgq3SzVvYk1NtiCjtL+rF7P+T8mR/6eTBOn+okWaKUsIWLJXrKlVwA IAzXlOdLRlqYXayGbP1O30Yf55lfHwg1GKiaClaT2IeUFyygtHwZfZgSxxZlOOLWp3TU knS9DpjysripgpfXv5/PXgUHRYFzoQXmtlb9VmV4Up95aDX5+i/XeGbH/sTjaoyHaben hu2yC1PrdnUUXAXG+w8P7amZyVOPnJkihbSGeOSXW9whv+z18Fv3m16XonZy5OWZcb+9 B/KKD+Y+1Wwj2B4BDE80KGINfgqECa26NaPLqsi4NZcehRCHHbGEQwfrBpHtC5sDXKyE ZRtQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=6ZnZKatRKMV4TLQw8PgYZKZNm4J6C4ed5IfbL5Kfbk0=; b=dV9sQW14PFS862A1lXJgutEYEa1I6hYq0NSo3tTDVgJYHPZMwZPBJpHcjvYnBeVd6o VMmXZHtjW3uaie927a8zM4KfNIm7iQcmWwoJxlqtiu9aE1gEjXGBof5ZwM91HbrQRzXm seXVgXZvjnyAlBTmIdbyUeDaSSqHg95VzOvFRvq9QBsorPJSlvb9nOxwo2msfdaxZdCQ zEYBzSLFuB+wcD0SkzU8wXD8xm163w8b6RSCEqpYY8wn5txdXWItVsb0/4GL+0Az/Nc+ 2xTOpyYsCsZZNCpNWjngPFK2sDW8ab2ZQvIDikCEgXudRzHHyB2oGxp4nKGDWdTgTXNT TNhw== X-Gm-Message-State: AMke39mbLFWqqo2sMUhz3VIexwbJjo2ppajfhZHFBSB9lpf/jhV/O5OWrJXsvqlo2o9wk5jDopwVQKLiSybjMg== X-Received: by 10.107.134.94 with SMTP id i91mr15897332iod.0.1488829098291; Mon, 06 Mar 2017 11:38:18 -0800 (PST) MIME-Version: 1.0 Sender: wlosh@bsdimp.com Received: by 10.79.134.129 with HTTP; Mon, 6 Mar 2017 11:38:17 -0800 (PST) X-Originating-IP: [69.53.245.200] In-Reply-To: <201703061915.v26JFSSd089794@pdx.rh.CN85.dnsmgr.net> References: <1488826707.18764.34.camel@freebsd.org> <201703061915.v26JFSSd089794@pdx.rh.CN85.dnsmgr.net> From: Warner Losh Date: Mon, 6 Mar 2017 12:38:17 -0700 X-Google-Sender-Auth: OfohjRebx1j3s9rg0imMTj_vdps Message-ID: Subject: Re: svn commit: r314709 - head To: rgrimes@freebsd.org Cc: Ian Lepore , Bryan Drewery , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:38:19 -0000 On Mon, Mar 6, 2017 at 12:15 PM, Rodney W. Grimes wrote: > Happens often, hence why I had that regression test. But bootstrapping > on Current-2 has never been supported and probably never well be supported. We do support it. We've supported it since FreeBSD 6.x. It's completely workable. Warner From owner-svn-src-all@freebsd.org Mon Mar 6 19:39:32 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F2EB1CFB73B; Mon, 6 Mar 2017 19:39:32 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CD5D91F88; Mon, 6 Mar 2017 19:39:32 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26JdVEk023519; Mon, 6 Mar 2017 19:39:31 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26JdVQn023515; Mon, 6 Mar 2017 19:39:31 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703061939.v26JdVQn023515@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Mon, 6 Mar 2017 19:39:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314786 - in head/sys/dev/mpr: . mpi X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:39:33 -0000 Author: mav Date: Mon Mar 6 19:39:31 2017 New Revision: 314786 URL: https://svnweb.freebsd.org/changeset/base/314786 Log: Import mpr(4) driver P12 to P14 diff from vendor site. This is mostly a version bump to stay in version number sync with firmware. The only change there was cosmetic: Display degraded speed message upon receiving Active Cable Exception Event with DEGRADED reason code. Discussed with: slm@ MFC after: 1 week Modified: head/sys/dev/mpr/mpi/mpi2_ioc.h head/sys/dev/mpr/mpr_sas_lsi.c head/sys/dev/mpr/mpr_table.c head/sys/dev/mpr/mprvar.h Modified: head/sys/dev/mpr/mpi/mpi2_ioc.h ============================================================================== --- head/sys/dev/mpr/mpi/mpi2_ioc.h Mon Mar 6 19:33:15 2017 (r314785) +++ head/sys/dev/mpr/mpi/mpi2_ioc.h Mon Mar 6 19:39:31 2017 (r314786) @@ -688,7 +688,10 @@ typedef struct _MPI26_EVENT_DATA_ACTIVE_ MPI2_POINTER pMpi26EventDataActiveCableExcept_t; /* defines for ReasonCode field */ -#define MPI26_EVENT_ACTIVE_CABLE_INSUFFICIENT_POWER (0x00) +#define MPI26_EVENT_ACTIVE_CABLE_INSUFFICIENT_POWER (0x00) +#define MPI26_EVENT_ACTIVE_CABLE_PRESENT (0x01) +#define MPI26_EVENT_ACTIVE_CABLE_DEGRADED (0x02) + /* Hard Reset Received Event data */ Modified: head/sys/dev/mpr/mpr_sas_lsi.c ============================================================================== --- head/sys/dev/mpr/mpr_sas_lsi.c Mon Mar 6 19:33:15 2017 (r314785) +++ head/sys/dev/mpr/mpr_sas_lsi.c Mon Mar 6 19:39:31 2017 (r314786) @@ -651,14 +651,26 @@ skip_fp_send: ace_event_data = (pMpi26EventDataActiveCableExcept_t)fw_event->event_data; - if (ace_event_data->ReasonCode == - MPI26_EVENT_ACTIVE_CABLE_INSUFFICIENT_POWER) { - mpr_printf(sc, "Currently an active cable with " + switch(ace_event_data->ReasonCode) { + case MPI26_EVENT_ACTIVE_CABLE_INSUFFICIENT_POWER: + { + mpr_printf(sc, "Currently a cable with " "ReceptacleID %d cannot be powered and device " "connected to this active cable will not be seen. " "This active cable requires %d mW of power.\n", ace_event_data->ReceptacleID, ace_event_data->ActiveCablePowerRequirement); + break; + } + case MPI26_EVENT_ACTIVE_CABLE_DEGRADED: + { + mpr_printf(sc, "Currently a cable with " + "ReceptacleID %d is not running at optimal speed " + "(12 Gb/s rate)\n", ace_event_data->ReceptacleID); + break; + } + default: + break; } break; } Modified: head/sys/dev/mpr/mpr_table.c ============================================================================== --- head/sys/dev/mpr/mpr_table.c Mon Mar 6 19:33:15 2017 (r314785) +++ head/sys/dev/mpr/mpr_table.c Mon Mar 6 19:39:31 2017 (r314786) @@ -95,6 +95,12 @@ struct mpr_table_lookup mpr_event_names[ {"SasPhyCounter", 0x22}, {"GpioInterrupt", 0x23}, {"HbdPhyEvent", 0x24}, + {"SasQuiesce", 0x25}, + {"SasNotifyPrimitive", 0x26}, + {"TempThreshold", 0x27}, + {"HostMessage", 0x28}, + {"PowerPerformanceChange", 0x29}, + {"CableEvent", 0x34}, {NULL, 0}, {"Unknown Event", 0} }; Modified: head/sys/dev/mpr/mprvar.h ============================================================================== --- head/sys/dev/mpr/mprvar.h Mon Mar 6 19:33:15 2017 (r314785) +++ head/sys/dev/mpr/mprvar.h Mon Mar 6 19:39:31 2017 (r314786) @@ -33,7 +33,7 @@ #ifndef _MPRVAR_H #define _MPRVAR_H -#define MPR_DRIVER_VERSION "13.01.00.00-fbsd" +#define MPR_DRIVER_VERSION "15.01.00.00-fbsd" #define MPR_DB_MAX_WAIT 2500 From owner-svn-src-all@freebsd.org Mon Mar 6 19:41:04 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CD979CFB95B for ; Mon, 6 Mar 2017 19:41:04 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-it0-x22f.google.com (mail-it0-x22f.google.com [IPv6:2607:f8b0:4001:c0b::22f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9BCED1258 for ; Mon, 6 Mar 2017 19:41:04 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-it0-x22f.google.com with SMTP id m27so57438655iti.1 for ; Mon, 06 Mar 2017 11:41:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=6K3s0ZTteES2HL34Cex8Zu++5s9O8k0VpANLHqAKcLw=; b=PYawUZysfMemgTSlYU/JoaeFM0vfmLD1JlE4h3sC+TzO1vJ2mqOsGE7jZf1Ar1e0p1 XFJhpknJfpwaQVTJyi7geDRKkX6lcrUhYB9GGhO3zU03+FqykhmQo+KD4NwWQ54iEImA /gORhvQ4BhF5i4TZSja5Suxgwh+9pgueUj9bj0ONgg4PORQIBXCQE4Op3SX1befcRXWI pQhZn4XRTtngWJKHhLVfmrnjKOu6AtOe4R367b1aKK6SIMnRMEH7C4+/PGBWMNTUiI8x rlfJYpBb0/8Sob7NtUBW9UzcPDvTl+VOUI12BNFZp2CvWSeg+Q/O8Bca7TV8NxLo4y3h JBxQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=6K3s0ZTteES2HL34Cex8Zu++5s9O8k0VpANLHqAKcLw=; b=NmhWWkt/f4YlrQjfZvUCJZWl1h6KCgg+Z5HeS/xWxXfHLgRERk6+LNE7x9m/mZfoAn zRZqHf6rKzCgNi0fTqLoGeLH8/APBug5nAd7hLggjZ8H/9T5kGAhogxLEj/B18WumLjY 7mnQxUFXef4sJf9vKefi0aD//sM8mTJtZ+O855cWDRP+ImgegVA/nNPUeGh9QMt5WzNe XLL0FFvlPVkBC1x5pcRJYHk6N8zNV9nbRGws8qHPn4lPOuwKlouQ9W4SVwRKgyok7CV2 T4Za0lSh7bBK/CU6VOaXYQjWfH/TmTCu6l5pssd6IaVa2mrALHlzC/WQWwS5+UTmQcRf g99w== X-Gm-Message-State: AMke39nrJ+TtbzYTaso5UR0PLPNfZsEwK6/koPXAwBuqjmi/eLXoEBtpyhd5JH56EVy4xVWaQ+quBs5pOoNn9w== X-Received: by 10.36.93.213 with SMTP id w204mr18520666ita.60.1488829263849; Mon, 06 Mar 2017 11:41:03 -0800 (PST) MIME-Version: 1.0 Sender: wlosh@bsdimp.com Received: by 10.79.134.129 with HTTP; Mon, 6 Mar 2017 11:41:03 -0800 (PST) X-Originating-IP: [69.53.245.200] In-Reply-To: References: <201703061915.v26JFSSd089794@pdx.rh.CN85.dnsmgr.net> <1488828735.18764.43.camel@freebsd.org> From: Warner Losh Date: Mon, 6 Mar 2017 12:41:03 -0700 X-Google-Sender-Auth: 0Ux257X9jmiWrAoZM--90snbQg0 Message-ID: Subject: Re: svn commit: r314709 - head To: Bryan Drewery Cc: Ian Lepore , rgrimes@freebsd.org, src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:41:04 -0000 On Mon, Mar 6, 2017 at 12:34 PM, Bryan Drewery wrote: > There is also a lot of demand for building from Linux or OSX. That will > require additional bootstrapping. Either way, we'll never get away from > bootstrapping, and the cost of keeping current-2 support is pretty low. Yes. And in this case the workaround should be pretty trival. As I noted elsewhere, we've supported bootstrapping from current-2 since ~FreeBSD 6.x. Juniper needed it for a long time and they maintained it in the tree. The cost is generally tiny (though there has been one issue with clang that required an upgrade to the host compiler due to a bug in the host compiler so that it could compile the compiler). This should be fixed. Glad to see Ian's on it. Warner From owner-svn-src-all@freebsd.org Mon Mar 6 19:45:58 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 841C8CFBBDC for ; Mon, 6 Mar 2017 19:45:58 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-it0-x229.google.com (mail-it0-x229.google.com [IPv6:2607:f8b0:4001:c0b::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4C5E71766 for ; Mon, 6 Mar 2017 19:45:58 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-it0-x229.google.com with SMTP id m27so7500592iti.1 for ; Mon, 06 Mar 2017 11:45:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=SVBsO6CTEaPME61z7NWyUJfOdzQInifp3RwyFOhSYWQ=; b=M7F5UxDfsPhGtWlMQbpUWKE7Ch1F4N5zZx3RGASCgcxi7BgIEbvuXfotFNw1A9+pwq jFKa8Z0vnvglgZ1Up2N10LmLAZ+JzlsVg003o1GNNdKiuR02TbyaJpNSe4Ij9zU1msuG yWAyp4Os2aTp0xlk+Mo1hAz4r6TxZXaQNIKgzX4D7EcVinxrtFR7jqViJh/PKV/pzay1 IL5LmGN9pJcPy3ivGa5wUXvWfD1kETAywyZ+59nlZvjrg7YWK0SpfAr+52f5+zOupfUu XnnGxouSvOOMO+EBn0sQJftQE7DLgIwDeVW9qrR6SjWJlbsqQaOG2LrnOjHifJvqu7LH Ij+g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=SVBsO6CTEaPME61z7NWyUJfOdzQInifp3RwyFOhSYWQ=; b=ZL+Xh5wuCvFeZyoQs+CYcrFkbaDgVmyDQbWt+sfjxShFiRJL7QmKjAEcZaJ8I5NOnb EPED7qxM+ND++9NUqniXktWqBWfAGYvjjC7g4gvuLVbngA/IgsT2UnQEpb9Zg4f1Rlb0 8tvXUyosUVC2rUM12CSLfMkXPxtn2gvFdfbuGSlh+PIMSpPrro9fv0pGjG3Ogd50yHu/ +aQLPeynxAlcsBE2fe3b6nzwm22m9qMzn+fbdZ1+bdVy+4Sv/PMQQptCz1YtCjtZH8ed 4cCi67y9/Z4KQbHbFEuN75+O9NrpNKcDNYsmSq3MNggLCp6yCmmI/wI71fCa1apKpCsd r9NA== X-Gm-Message-State: AMke39liX/5azqGxHU+5fzcMrddlgsavuRLyB88XqAPzw33IqGvDYlI4d6TTW8lNCvcqtFr6x1d8qsV7wQ4IwA== X-Received: by 10.36.212.129 with SMTP id x123mr9131151itg.103.1488829557504; Mon, 06 Mar 2017 11:45:57 -0800 (PST) MIME-Version: 1.0 Sender: wlosh@bsdimp.com Received: by 10.79.134.129 with HTTP; Mon, 6 Mar 2017 11:45:57 -0800 (PST) X-Originating-IP: [69.53.245.200] In-Reply-To: <1488828735.18764.43.camel@freebsd.org> References: <201703061915.v26JFSSd089794@pdx.rh.CN85.dnsmgr.net> <1488828735.18764.43.camel@freebsd.org> From: Warner Losh Date: Mon, 6 Mar 2017 12:45:57 -0700 X-Google-Sender-Auth: 4aUeShEpjjV8cQbIH2fIqjYQqh0 Message-ID: Subject: Re: svn commit: r314709 - head To: Ian Lepore Cc: rgrimes@freebsd.org, Bryan Drewery , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:45:58 -0000 On Mon, Mar 6, 2017 at 12:32 PM, Ian Lepore wrote: > On Mon, 2017-03-06 at 11:15 -0800, Rodney W. Grimes wrote: >> [ Charset ISO-8859-1 unsupported, converting... ] >> > >> > On Mon, 2017-03-06 at 10:32 -0800, Rodney W. Grimes wrote: >> > > >> > > [ Charset ISO-8859-1 unsupported, converting... ] >> > > > >> > > > >> > > > On Sun, 2017-03-05 at 19:12 -0800, Bryan Drewery wrote: >> > > > > >> > > > > >> > > > > On 3/5/17 3:41 PM, Warner Losh wrote: >> > > > > > >> > > > > > >> > > > > > >> > > > > > On Sun, Mar 5, 2017 at 2:16 PM, Bryan Drewery > > > > > > ebsd >> > > > > > .org >> > > > > > > >> > > > > > > >> > > > > > > wrote: >> > > > > > > >> > > > > > > Author: bdrewery >> > > > > > > Date: Sun Mar??5 21:16:50 2017 >> > > > > > > New Revision: 314709 >> > > > > > > URL: https://svnweb.freebsd.org/changeset/base/314709 >> > > > > > > >> > > > > > > Log: >> > > > > > > ? Fix bootstrapping mtree after r313404 for older >> > > > > > > systems. >> > > > > > > >> > > > > > > ? r313404 made libnetbsd require sha384.h from >> > > > > > > libmd.??Libmd >> > > > > > > added it in >> > > > > > > ? r292782.??Update BOOTSTRAPPING to account for this. >> > > > > > > >> > > > > > > ? Reported by:??bde >> > > > > > > ? Reviewed by:??ngie >> > > > > > > >> > > > > > > Modified: >> > > > > > > ? head/Makefile.inc1 >> > > > > > > >> > > > > > > Modified: head/Makefile.inc1 >> > > > > > > ========================================================= >> > > > > > > ==== >> > > > > > > ==== >> > > > > > > ============= >> > > > > > > --- head/Makefile.inc1??Sun Mar??5 19:56:20 >> > > > > > > 2017????????(r314708) >> > > > > > > +++ head/Makefile.inc1??Sun Mar??5 21:16:50 >> > > > > > > 2017????????(r314709) >> > > > > > > @@ -1618,10 +1618,12 @@ ${_bt}-usr.bin/m4: ${_bt}- >> > > > > > > lib/libopenbsd >> > > > > > > ?${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 >> > > > > > > ?.endif >> > > > > > > >> > > > > > > -.if ${BOOTSTRAPPING} < 1000026 >> > > > > > > -_nmtree=???????lib/libnetbsd \ >> > > > > > I've been trying to document the bootstrapping stuff inline >> > > > > > like >> > > > > > >> > > > > > # r313404 made libnetbsd require libmd >> > > > > Definitely.??I forgot about that.??I think my change is >> > > > > incomplete >> > > > > and >> > > > > need to chase down a 2nd failure report.??I'll add the >> > > > > comment >> > > > > once >> > > > > that >> > > > > is figured out. >> > > > > >> > > > I tracked this down to the fact that the prototype >> > > > >> > > > ? char * MD5FileChunk(const char *, char *, off_t, off_t); >> > > > >> > > > does not exist in /usr/include/sys/md5.h on older systems. ?I >> > > > don't >> > > > see >> > > > any straightforward way to declare that a header file from the >> > > > /usr/include hierarchy is a bootstrap item that needs a newer >> > > > version >> > > > from the source tree being compiled. ?It looks like such a >> > > > header >> > > > would >> > > > have to go into the obj/.../tmp/legacy/usr/include to get used >> > > > in >> > > > the >> > > > boostrap compile, I just don't see how you get a file installed >> > > > there >> > > > early enough in bootstrap. >> > > One way around this is to use the old concept of /usr/include >> > > symlinks >> > > into the src tree, not sure if you can still do that or not, but >> > > something like >> > > (cd /usr/src/include; make install SHARED=symlinks) >> > > >> > > A bootstrapping regresssion test I use to run was to rm -r >> > > /usr/include/* >> > > before a buildworld run, that would find these issues so they >> > > could >> > > be fixed before they become forgotten. >> > > ? >> > Making my live 10-stable system's /usr/include have symlinks into a >> > 11- >> > or 12- source tree is just not an option in any way. ?The first >> > question would be "which source tree" because I have like a dozen >> > of >> > them, not a single one of them rooted at /usr/src (which is an >> > empty >> > dir). >> I dont know that the support of CUrrent -2 building -current with >> a bootstraping include issue is ever going to be workable. You >> could try to build a proper include tree someplace to use, this >> can be done with >> (cd; usr/src/include; make install DESTDIR=/my/new/tree) This >> well not touch your /usr/include, but give you a proper include tree, >> now the work is to get buildworld to use that include tree. >> >> If buildworld has degnerated to using stuff out of /usr/include >> that also needs to be fixed ASAP. >> >> > >> > >> > This can't be the first time in 30+ years that system header files >> > had >> > to participate in the process of bootstrapping early build tools, >> > but I >> > don't see any machinery in Makefile.inc1 for dealing with it. >> Happens often, hence why I had that regression test. But >> bootstrapping >> on Current-2 has never been supported and probably never well be >> supported. > > I'm aware that we officially only support building from current-1, but > we've worked hard to do much better than that for many years. The official line is that committers are only required to test for current-1, but that if interested parties want to support and maintain more then that's permitted. Since approximately FreeBSD 6.x, there's been a series of interested parties that have kept the build going for current-2 (and in some cases current -3 or -4). With the switch to clang this has become harder for values > 2. It has been well maintained for 15-odd years. > The only time I can think of it breaking in the last 10-12 years was > late in the 10-current cycle we reached a point where I could no longer > build 10-current on an 8-stable system. That was a special case due to > the cutover from gcc to clang and all the related changes. (Even with > that, I had it "almost working" but decided not to finish it and commit > all the changes involved because they would have just gotten in the way > of other modernization going on in the build system). Yes. This has been supported for a long time. > The reality is, a lot of people rely on building current from current-2 > systems for a variety of reasons, and it's worth putting some effort > into supporting that. Yes. If somebody supports it, we'll keep the version checks in Makefile.inc1 liberal. There's many parties that have wanted this over the years because they have had older build farms that need to build -current. I know this because I negotiated the original peace treaty between two committers back in the FreeBSD 5.x days and have babysat it through a series of maintainers. Warner From owner-svn-src-all@freebsd.org Mon Mar 6 19:47:52 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E0BF0CFBCD4; Mon, 6 Mar 2017 19:47:52 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from cell.glebi.us (glebi.us [96.95.210.25]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "cell.glebi.us", Issuer "cell.glebi.us" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 9CB48192B; Mon, 6 Mar 2017 19:47:52 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from cell.glebi.us (localhost [127.0.0.1]) by cell.glebi.us (8.15.2/8.15.2) with ESMTPS id v26JI5R6080466 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Mon, 6 Mar 2017 11:18:05 -0800 (PST) (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by cell.glebi.us (8.15.2/8.15.2/Submit) id v26JI50e080465; Mon, 6 Mar 2017 11:18:05 -0800 (PST) (envelope-from glebius@FreeBSD.org) X-Authentication-Warning: cell.glebi.us: glebius set sender to glebius@FreeBSD.org using -f Date: Mon, 6 Mar 2017 11:18:05 -0800 From: Gleb Smirnoff To: Mark Linimon Cc: Benjamin Kaduk , "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , Ravi Pokala , "src-committers@freebsd.org" , John Baldwin Subject: Re: svn commit: r314373 - in head: . etc/defaults etc/rc.d lib/libc/regex share/man/man4/man4.i386 share/man/man5 sys/amd64/conf sys/boot/forth sys/compat/svr4 sys/conf sys/dev/streams sys/i386/conf sy... Message-ID: <20170306191805.GC1044@FreeBSD.org> References: <201702280514.v1S5EhPq060885@repo.freebsd.org> <1969312.3TTRqhLH9r@ralph.baldwin.cx> <20170228193605.GJ1044@FreeBSD.org> <20170228213044.GK1044@FreeBSD.org> <20170228235053.GB10976@lonesome.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170228235053.GB10976@lonesome.com> User-Agent: Mutt/1.7.2 (2016-11-26) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:47:53 -0000 Ben and Mark, thanks for explanation! I'll document that 1200023 also marks removal of SVR4. On Tue, Feb 28, 2017 at 05:50:53PM -0600, Mark Linimon wrote: M> On Tue, Feb 28, 2017 at 01:30:44PM -0800, Gleb Smirnoff wrote: M> > How can I check the __FreeBSD_version in a port Makefile? My understanding M> > is that there is no standard way for such thing. M> M> There are hundreds of examples in port Makefiles. I suppose the PH will need M> to be updated to include some of them. It is hinted at under "INCLUDE" in M> https://www.freebsd.org/doc/en/books/porters-handbook/dads-noinstall.html M> but not made specific. M> M> Some quick examples: M> M> devel/cloudabi-toolchain/Makefile:.if ${OSVERSION} >= 1100100 M> M> devel/cvs-syncmail/Makefile:.if ${OPSYS} == FreeBSD && ${OSVERSION} > 1000000 M> M> devel/trio/Makefile.orig:# NB: OSVERSION was not incremented for r308559, so we use the earlier M> devel/trio/Makefile.orig:# 1200014 as a surrogate for now. M> devel/trio/Makefile.orig:.if ${OSVERSION} < 1100506 || ( ${OSVERSION} >= 1200000 && ${OSVERSION} < 1200014 ) M> devel/trio/Makefile.orig:BROKEN_aarch64= needs fixes from r308375, r308487, and/or r308559 M> devel/trio/Makefile.orig:.endif M> M> emulators/i386-wine/Makefile.inc:.if ${OPSYS} != FreeBSD || (!(${OSVERSION} < 1000000) && !(${OSVERSION} >= 1003000 && ${OSVERSION} < 1100000) && !(${OSVERSION} >= 1100121 && ${OSVERSION} < 1200000) && !(${OSVERSION} >= 1200019 && ${OSVERSION} < 1300000)) M> M> lang/ruby22/Makefile:.if exists(/usr/sbin/dtrace) && (${OSVERSION} > 1100032) && (${ARCH} == "amd64" || ${ARCH} == "i386") M> M> lang/tcc/Makefile:.if ${CC:T:M*clang*} || ${OSVERSION} >= 1000024 M> M> sysutils/e2fsprogs/Makefile:.if !empty(PORT_OPTIONS:MNOTESTS) && (${OPSYS} == FreeBSD) && (${OSVERSION} >= 1100000 || ((${ARCH} != i386) && (${ARCH} != amd64))) M> M> However, I am kind of shocked that this is not well understood -- M> especially after I have tried so many times to convince src committers M> to update FreeBSD_version in case of src changes that affect (e.g. break) M> ports. M> M> These are the kinds of things that ports committers have to use to work M> around changes in the src tree. Skipping OSVERSION updates makes this M> work more complicated. M> M> mcl -- Totus tuus, Glebius. From owner-svn-src-all@freebsd.org Mon Mar 6 19:54:58 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 01F46CFC0F0; Mon, 6 Mar 2017 19:54:58 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BE8861014; Mon, 6 Mar 2017 19:54:57 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26Jsugr031393; Mon, 6 Mar 2017 19:54:56 GMT (envelope-from sjg@FreeBSD.org) Received: (from sjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26Jss9i031368; Mon, 6 Mar 2017 19:54:54 GMT (envelope-from sjg@FreeBSD.org) Message-Id: <201703061954.v26Jss9i031368@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sjg set sender to sjg@FreeBSD.org using -f From: "Simon J. Gerraty" Date: Mon, 6 Mar 2017 19:54:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r314787 - in vendor/NetBSD/bmake/dist: . PSD.doc mk unit-tests X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:54:58 -0000 Author: sjg Date: Mon Mar 6 19:54:54 2017 New Revision: 314787 URL: https://svnweb.freebsd.org/changeset/base/314787 Log: Import bmake-20170301 Modified: vendor/NetBSD/bmake/dist/ChangeLog vendor/NetBSD/bmake/dist/Makefile vendor/NetBSD/bmake/dist/PSD.doc/tutorial.ms vendor/NetBSD/bmake/dist/bmake.1 vendor/NetBSD/bmake/dist/bmake.cat1 vendor/NetBSD/bmake/dist/dir.c vendor/NetBSD/bmake/dist/main.c vendor/NetBSD/bmake/dist/make.1 vendor/NetBSD/bmake/dist/meta.c vendor/NetBSD/bmake/dist/mk/ChangeLog vendor/NetBSD/bmake/dist/mk/dirdeps.mk vendor/NetBSD/bmake/dist/mk/dpadd.mk vendor/NetBSD/bmake/dist/mk/install-mk vendor/NetBSD/bmake/dist/mk/meta.stage.mk vendor/NetBSD/bmake/dist/mk/meta2deps.py vendor/NetBSD/bmake/dist/mk/prog.mk vendor/NetBSD/bmake/dist/mk/subdir.mk vendor/NetBSD/bmake/dist/mk/sys.mk vendor/NetBSD/bmake/dist/mk/sys.vars.mk vendor/NetBSD/bmake/dist/os.sh vendor/NetBSD/bmake/dist/parse.c vendor/NetBSD/bmake/dist/unit-tests/varmisc.exp vendor/NetBSD/bmake/dist/unit-tests/varmisc.mk vendor/NetBSD/bmake/dist/var.c Modified: vendor/NetBSD/bmake/dist/ChangeLog ============================================================================== --- vendor/NetBSD/bmake/dist/ChangeLog Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/ChangeLog Mon Mar 6 19:54:54 2017 (r314787) @@ -1,3 +1,32 @@ +2017-03-01 Simon J. Gerraty + + * Makefile (_MAKE_VERSION): 20170301 + Merge with NetBSD make, pick up + o main.c: use -C arg as is rather than getcwd() + if they identify the same directory. + o parse.c: ensure loadfile buffer is \n terminated in non-mmap case + +2017-02-01 Simon J. Gerraty + + * Makefile (_MAKE_VERSION): 20170201 + Merge with NetBSD make, pick up + o var.c: allow :_=var and avoid use of special context. + +2017-01-30 Simon J. Gerraty + + * Makefile (_MAKE_VERSION): 20170130 + Merge with NetBSD make, pick up + o var.c: add :range and :_ + o main.c: partially initialize Dir_* before MainParseArgs() + can be called. + If -V, skip Main_ExportMAKEFLAGS() + +2017-01-14 Simon J. Gerraty + + * Makefile (_MAKE_VERSION): 20170114 + Merge with NetBSD make, pick up + o var.c: allow specifying the utc value used by :{gm,local}time + 2016-12-12 Simon J. Gerraty * Makefile (_MAKE_VERSION): 20161212 Modified: vendor/NetBSD/bmake/dist/Makefile ============================================================================== --- vendor/NetBSD/bmake/dist/Makefile Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/Makefile Mon Mar 6 19:54:54 2017 (r314787) @@ -1,7 +1,7 @@ -# $Id: Makefile,v 1.77 2016/12/12 07:34:19 sjg Exp $ +# $Id: Makefile,v 1.81 2017/03/01 17:01:23 sjg Exp $ # Base version on src date -_MAKE_VERSION= 20161212 +_MAKE_VERSION= 20170301 PROG= bmake Modified: vendor/NetBSD/bmake/dist/PSD.doc/tutorial.ms ============================================================================== --- vendor/NetBSD/bmake/dist/PSD.doc/tutorial.ms Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/PSD.doc/tutorial.ms Mon Mar 6 19:54:54 2017 (r314787) @@ -1,4 +1,4 @@ -.\" $NetBSD: tutorial.ms,v 1.12 2014/09/30 21:33:14 christos Exp $ +.\" $NetBSD: tutorial.ms,v 1.13 2017/03/01 13:05:11 kre Exp $ .\" Copyright (c) 1988, 1989, 1993 .\" The Regents of the University of California. All rights reserved. .\" @@ -117,6 +117,15 @@ .de No .br .ne 0.5i +.ie n \{\ +.nr g3 \w'NOTE ' +.po -\\n(g3u +.br +NOTE +.br +.po +\\n(g3u +.\} +.el \{\ .po -0.5i .br .mk @@ -148,12 +157,14 @@ .rt .ft \\n(g3 .ps \\n(g4 +.\} .. .de Bp .ie !\\n(.$ .IP \(bu 2 .el .IP "\&" 2 .. -.po +.3i +.ie n .po +\w'NOTE 'u +.el .po +.3i .TL PMake \*- A Tutorial .AU Modified: vendor/NetBSD/bmake/dist/bmake.1 ============================================================================== --- vendor/NetBSD/bmake/dist/bmake.1 Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/bmake.1 Mon Mar 6 19:54:54 2017 (r314787) @@ -1,4 +1,4 @@ -.\" $NetBSD: make.1,v 1.263 2016/08/26 23:37:54 dholland Exp $ +.\" $NetBSD: make.1,v 1.266 2017/02/01 18:39:27 sjg Exp $ .\" .\" Copyright (c) 1990, 1993 .\" The Regents of the University of California. All rights reserved. @@ -29,7 +29,7 @@ .\" .\" from: @(#)make.1 8.4 (Berkeley) 3/19/94 .\" -.Dd August 26, 2016 +.Dd February 1, 2017 .Dt BMAKE 1 .Os .Sh NAME @@ -1205,18 +1205,28 @@ safely through recursive invocations of .Nm . .It Cm \&:R Replaces each word in the variable with everything but its suffix. -.It Cm \&:gmtime +.It Cm \&:range[=count] +The value is an integer sequence representing the words of the original +value, or the supplied +.Va count . +.It Cm \&:gmtime[=utc] The value is a format string for .Xr strftime 3 , -using the current +using .Xr gmtime 3 . +If a +.Va utc +value is not provided or is 0, the current time is used. .It Cm \&:hash Compute a 32-bit hash of the value and encode it as hex digits. -.It Cm \&:localtime +.It Cm \&:localtime[=utc] The value is a format string for .Xr strftime 3 , -using the current +using .Xr localtime 3 . +If a +.Va utc +value is not provided or is 0, the current time is used. .It Cm \&:tA Attempt to convert variable to an absolute path using .Xr realpath 3 , @@ -1416,6 +1426,27 @@ For example. .Pp However a single character variable is often more readable: .Dl ${MAKE_PRINT_VAR_ON_ERROR:@v@$v='${$v}'${.newline}@} +.It Cm \&:_[=var] +Save the current variable value in +.Ql $_ +or the named +.Va var +for later reference. +Example usage: +.Bd -literal -offset indent +M_cmpv.units = 1 1000 1000000 +M_cmpv = S,., ,g:_:range:@i@+ $${_:[-$$i]} \&\\ +\\* $${M_cmpv.units:[$$i]}@:S,^,expr 0 ,1:sh + +.Dv .if ${VERSION:${M_cmpv}} < ${3.1.12:L:${M_cmpv}} + +.Ed +Here +.Ql $_ +is used to save the result of the +.Ql :S +modifier which is later referenced using the index values from +.Ql :range . .It Cm \&:U Ns Ar newval If the variable is undefined .Ar newval Modified: vendor/NetBSD/bmake/dist/bmake.cat1 ============================================================================== --- vendor/NetBSD/bmake/dist/bmake.cat1 Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/bmake.cat1 Mon Mar 6 19:54:54 2017 (r314787) @@ -789,16 +789,20 @@ VVAARRIIAABBLLEE AASSSSIIGG ::RR Replaces each word in the variable with everything but its suffix. - ::ggmmttiimmee - The value is a format string for strftime(3), using the current - gmtime(3). + ::rraannggee[[==ccoouunntt]] + The value is an integer sequence representing the words of the orig- + inal value, or the supplied _c_o_u_n_t. + + ::ggmmttiimmee[[==uuttcc]] + The value is a format string for strftime(3), using gmtime(3). If a + _u_t_c value is not provided or is 0, the current time is used. ::hhaasshh Compute a 32-bit hash of the value and encode it as hex digits. - ::llooccaallttiimmee - The value is a format string for strftime(3), using the current - localtime(3). + ::llooccaallttiimmee[[==uuttcc]] + The value is a format string for strftime(3), using localtime(3). + If a _u_t_c value is not provided or is 0, the current time is used. ::ttAA Attempt to convert variable to an absolute path using realpath(3), if that fails, the value is unchanged. @@ -899,6 +903,19 @@ VVAARRIIAABBLLEE AASSSSIIGG However a single character variable is often more readable: ${MAKE_PRINT_VAR_ON_ERROR:@v@$v='${$v}'${.newline}@} + ::__[[==vvaarr]] + Save the current variable value in `$_' or the named _v_a_r for later + reference. Example usage: + + M_cmpv.units = 1 1000 1000000 + M_cmpv = S,., ,g:_:range:@i@+ $${_:[-$$i]} \ + \* $${M_cmpv.units:[$$i]}@:S,^,expr 0 ,1:sh + + .if ${VERSION:${M_cmpv}} < ${3.1.12:L:${M_cmpv}} + + Here `$_' is used to save the result of the `:S' modifier which is + later referenced using the index values from `:range'. + ::UU_n_e_w_v_a_l If the variable is undefined _n_e_w_v_a_l is the value. If the variable is defined, the existing value is returned. This is another ODE @@ -1506,4 +1523,4 @@ BBUUGGSS There is no way of escaping a space character in a filename. -NetBSD 5.1 August 26, 2016 NetBSD 5.1 +NetBSD 7.1_RC1 February 1, 2017 NetBSD 7.1_RC1 Modified: vendor/NetBSD/bmake/dist/dir.c ============================================================================== --- vendor/NetBSD/bmake/dist/dir.c Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/dir.c Mon Mar 6 19:54:54 2017 (r314787) @@ -1,4 +1,4 @@ -/* $NetBSD: dir.c,v 1.68 2016/06/07 00:40:00 sjg Exp $ */ +/* $NetBSD: dir.c,v 1.69 2017/01/31 06:54:23 sjg Exp $ */ /* * Copyright (c) 1988, 1989, 1990 The Regents of the University of California. @@ -70,14 +70,14 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: dir.c,v 1.68 2016/06/07 00:40:00 sjg Exp $"; +static char rcsid[] = "$NetBSD: dir.c,v 1.69 2017/01/31 06:54:23 sjg Exp $"; #else #include #ifndef lint #if 0 static char sccsid[] = "@(#)dir.c 8.2 (Berkeley) 1/2/94"; #else -__RCSID("$NetBSD: dir.c,v 1.68 2016/06/07 00:40:00 sjg Exp $"); +__RCSID("$NetBSD: dir.c,v 1.69 2017/01/31 06:54:23 sjg Exp $"); #endif #endif /* not lint */ #endif @@ -346,11 +346,13 @@ cached_lstat(const char *pathname, void void Dir_Init(const char *cdname) { - dirSearchPath = Lst_Init(FALSE); - openDirectories = Lst_Init(FALSE); - Hash_InitTable(&mtimes, 0); - Hash_InitTable(&lmtimes, 0); - + if (!cdname) { + dirSearchPath = Lst_Init(FALSE); + openDirectories = Lst_Init(FALSE); + Hash_InitTable(&mtimes, 0); + Hash_InitTable(&lmtimes, 0); + return; + } Dir_InitCur(cdname); dotLast = bmake_malloc(sizeof(Path)); Modified: vendor/NetBSD/bmake/dist/main.c ============================================================================== --- vendor/NetBSD/bmake/dist/main.c Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/main.c Mon Mar 6 19:54:54 2017 (r314787) @@ -1,4 +1,4 @@ -/* $NetBSD: main.c,v 1.254 2016/12/10 23:12:39 christos Exp $ */ +/* $NetBSD: main.c,v 1.257 2017/02/08 17:47:36 christos Exp $ */ /* * Copyright (c) 1988, 1989, 1990, 1993 @@ -69,7 +69,7 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: main.c,v 1.254 2016/12/10 23:12:39 christos Exp $"; +static char rcsid[] = "$NetBSD: main.c,v 1.257 2017/02/08 17:47:36 christos Exp $"; #else #include #ifndef lint @@ -81,7 +81,7 @@ __COPYRIGHT("@(#) Copyright (c) 1988, 19 #if 0 static char sccsid[] = "@(#)main.c 8.3 (Berkeley) 3/19/94"; #else -__RCSID("$NetBSD: main.c,v 1.254 2016/12/10 23:12:39 christos Exp $"); +__RCSID("$NetBSD: main.c,v 1.257 2017/02/08 17:47:36 christos Exp $"); #endif #endif /* not lint */ #endif @@ -389,6 +389,7 @@ MainParseArgs(int argc, char **argv) int arginc; char *argvalue; const char *getopt_def; + struct stat sa, sb; char *optscan; Boolean inOption, dashDash = FALSE; char found_path[MAXPATHLEN + 1]; /* for searching for sys.mk */ @@ -457,6 +458,11 @@ rearg: (void)fprintf(stderr, "%s: %s.\n", progname, strerror(errno)); exit(2); } + if (stat(argvalue, &sa) != -1 && + stat(curdir, &sb) != -1 && + sa.st_ino == sb.st_ino && + sa.st_dev == sb.st_dev) + strncpy(curdir, argvalue, MAXPATHLEN); ignorePWD = TRUE; break; case 'D': @@ -1073,6 +1079,8 @@ main(int argc, char **argv) #ifdef USE_META meta_init(); #endif + Dir_Init(NULL); /* Dir_* safe to call from MainParseArgs */ + /* * First snag any flags out of the MAKE environment variable. * (Note this is *not* MAKEFLAGS since /bin/make uses that and it's @@ -1314,8 +1322,9 @@ main(int argc, char **argv) fprintf(debug_file, "job_pipe %d %d, maxjobs %d, tokens %d, compat %d\n", jp_0, jp_1, maxJobs, maxJobTokens, compatMake); - Main_ExportMAKEFLAGS(TRUE); /* initial export */ - + if (!printVars) + Main_ExportMAKEFLAGS(TRUE); /* initial export */ + /* * For compatibility, look at the directories in the VPATH variable * and add them to the search path, if the variable is defined. The @@ -1933,7 +1942,7 @@ PrintAddr(void *a, void *b) static int -addErrorCMD(void *cmdp, void *gnp) +addErrorCMD(void *cmdp, void *gnp MAKE_ATTR_UNUSED) { if (cmdp == NULL) return 1; /* stop */ Modified: vendor/NetBSD/bmake/dist/make.1 ============================================================================== --- vendor/NetBSD/bmake/dist/make.1 Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/make.1 Mon Mar 6 19:54:54 2017 (r314787) @@ -1,4 +1,4 @@ -.\" $NetBSD: make.1,v 1.263 2016/08/26 23:37:54 dholland Exp $ +.\" $NetBSD: make.1,v 1.266 2017/02/01 18:39:27 sjg Exp $ .\" .\" Copyright (c) 1990, 1993 .\" The Regents of the University of California. All rights reserved. @@ -29,7 +29,7 @@ .\" .\" from: @(#)make.1 8.4 (Berkeley) 3/19/94 .\" -.Dd August 26, 2016 +.Dd February 1, 2017 .Dt MAKE 1 .Os .Sh NAME @@ -1205,18 +1205,28 @@ safely through recursive invocations of .Nm . .It Cm \&:R Replaces each word in the variable with everything but its suffix. -.It Cm \&:gmtime +.It Cm \&:range[=count] +The value is an integer sequence representing the words of the original +value, or the supplied +.Va count . +.It Cm \&:gmtime[=utc] The value is a format string for .Xr strftime 3 , -using the current +using .Xr gmtime 3 . +If a +.Va utc +value is not provided or is 0, the current time is used. .It Cm \&:hash Compute a 32-bit hash of the value and encode it as hex digits. -.It Cm \&:localtime +.It Cm \&:localtime[=utc] The value is a format string for .Xr strftime 3 , -using the current +using .Xr localtime 3 . +If a +.Va utc +value is not provided or is 0, the current time is used. .It Cm \&:tA Attempt to convert variable to an absolute path using .Xr realpath 3 , @@ -1416,6 +1426,27 @@ For example. .Pp However a single character variable is often more readable: .Dl ${MAKE_PRINT_VAR_ON_ERROR:@v@$v='${$v}'${.newline}@} +.It Cm \&:_[=var] +Save the current variable value in +.Ql $_ +or the named +.Va var +for later reference. +Example usage: +.Bd -literal -offset indent +M_cmpv.units = 1 1000 1000000 +M_cmpv = S,., ,g:_:range:@i@+ $${_:[-$$i]} \&\\ +\\* $${M_cmpv.units:[$$i]}@:S,^,expr 0 ,1:sh + +.Dv .if ${VERSION:${M_cmpv}} < ${3.1.12:L:${M_cmpv}} + +.Ed +Here +.Ql $_ +is used to save the result of the +.Ql :S +modifier which is later referenced using the index values from +.Ql :range . .It Cm \&:U Ns Ar newval If the variable is undefined .Ar newval Modified: vendor/NetBSD/bmake/dist/meta.c ============================================================================== --- vendor/NetBSD/bmake/dist/meta.c Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/meta.c Mon Mar 6 19:54:54 2017 (r314787) @@ -241,7 +241,7 @@ eat_dots(char *buf, size_t bufsz, int do } static char * -meta_name(struct GNode *gn, char *mname, size_t mnamelen, +meta_name(char *mname, size_t mnamelen, const char *dname, const char *tname, const char *cwd) @@ -396,7 +396,7 @@ printCMD(void *cmdp, void *mfpp) * Do we need/want a .meta file ? */ static Boolean -meta_needed(GNode *gn, const char *dname, const char *tname, +meta_needed(GNode *gn, const char *dname, char *objdir, int verbose) { struct stat fs; @@ -476,7 +476,7 @@ meta_create(BuildMon *pbm, GNode *gn) tname = Var_Value(TARGET, gn, &p[i++]); /* if this succeeds objdir is realpath of dname */ - if (!meta_needed(gn, dname, tname, objdir, TRUE)) + if (!meta_needed(gn, dname, objdir, TRUE)) goto out; dname = objdir; @@ -502,7 +502,7 @@ meta_create(BuildMon *pbm, GNode *gn) /* Don't create meta data. */ goto out; - fname = meta_name(gn, pbm->meta_fname, sizeof(pbm->meta_fname), + fname = meta_name(pbm->meta_fname, sizeof(pbm->meta_fname), dname, tname, objdir); #ifdef DEBUG_META_MODE @@ -1049,7 +1049,7 @@ meta_oodate(GNode *gn, Boolean oodate) tname = Var_Value(TARGET, gn, &pa[i++]); /* if this succeeds fname3 is realpath of dname */ - if (!meta_needed(gn, dname, tname, fname3, FALSE)) + if (!meta_needed(gn, dname, fname3, FALSE)) goto oodate_out; dname = fname3; @@ -1063,7 +1063,7 @@ meta_oodate(GNode *gn, Boolean oodate) */ Make_DoAllVar(gn); - meta_name(gn, fname, sizeof(fname), dname, tname, dname); + meta_name(fname, sizeof(fname), dname, tname, dname); #ifdef DEBUG_META_MODE if (DEBUG(META)) Modified: vendor/NetBSD/bmake/dist/mk/ChangeLog ============================================================================== --- vendor/NetBSD/bmake/dist/mk/ChangeLog Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/mk/ChangeLog Mon Mar 6 19:54:54 2017 (r314787) @@ -1,3 +1,34 @@ +2017-03-01 Simon J. Gerraty + + * install-mk (MK_VERSION): 20170301 + + * dirdeps.mk (_build_all_dirs): update this outside test for empty + DIRDEPS. + + * meta.stage.mk: allow multiple inclusion to the extent it makes + sense. + +2017-02-14 Simon J. Gerraty + + * prog.mk (install_links): depends on realinstall + +2017-02-12 Simon J. Gerraty + + * install-mk (MK_VERSION): 20170212 + + * dpadd.mk: avoid applying :T:R twice to DPLIBS entries + +2017-01-30 Simon J. Gerraty + + * install-mk (MK_VERSION): 20170130 + + * dirdeps.mk: use :range if we can. + + * sys.vars.mk: provide M_cmpv if MAKE_VERSION >= 20170130 + + * meta2deps.py: clean paths without using realpath() where possible. + fix sort_unique. + 2016-12-12 Simon J. Gerraty * install-mk (MK_VERSION): 20161212 Modified: vendor/NetBSD/bmake/dist/mk/dirdeps.mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/dirdeps.mk Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/mk/dirdeps.mk Mon Mar 6 19:54:54 2017 (r314787) @@ -1,4 +1,4 @@ -# $Id: dirdeps.mk,v 1.84 2016/11/27 02:44:34 sjg Exp $ +# $Id: dirdeps.mk,v 1.86 2017/03/01 20:26:51 sjg Exp $ # Copyright (c) 2010-2013, Juniper Networks, Inc. # All rights reserved. @@ -197,7 +197,9 @@ DEP_$v ?= ${$v} # we compute below are fully qualified wrt DEP_TARGET_SPEC. # The makefiles may only partially specify (eg. MACHINE only), # so we need to construct a set of modifiers to fill in the gaps. -.if ${TARGET_SPEC_VARS:[#]} > 10 +.if ${MAKE_VERSION} >= 20170130 +_tspec_x := ${TARGET_SPEC_VARS:range} +.elif ${TARGET_SPEC_VARS:[#]} > 10 # seriously? better have jot(1) or equivalent to produce suitable sequence _tspec_x := ${${JOT:Ujot} ${TARGET_SPEC_VARS:[#]}:L:sh} .else @@ -612,11 +614,11 @@ _build_dirs += \ # qualify everything now _build_dirs := ${_build_dirs:${M_dep_qual_fixes:ts:}:O:u} +.endif # empty DIRDEPS + _build_all_dirs += ${_build_dirs} _build_all_dirs := ${_build_all_dirs:O:u} -.endif # empty DIRDEPS - # Normally if doing make -V something, # we do not want to waste time chasing DIRDEPS # but if we want to count the number of Makefile.depend* read, we do. Modified: vendor/NetBSD/bmake/dist/mk/dpadd.mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/dpadd.mk Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/mk/dpadd.mk Mon Mar 6 19:54:54 2017 (r314787) @@ -1,4 +1,4 @@ -# $Id: dpadd.mk,v 1.22 2016/05/31 23:30:59 sjg Exp $ +# $Id: dpadd.mk,v 1.23 2017/02/13 16:46:01 sjg Exp $ # # @(#) Copyright (c) 2004, Simon J. Gerraty # @@ -49,11 +49,11 @@ CXXFLAGS_LAST += ${CXXFLAGS_DEBUG_XTRA} # DPLIBS helps us ensure we keep DPADD and LDADD in sync DPLIBS+= ${DPLIBS_LAST} DPADD+= ${DPLIBS:N-*} -.for __lib in ${DPLIBS:T:R} +.for __lib in ${DPLIBS} .if "${_lib:M-*}" != "" LDADD += ${__lib} .else -LDADD += ${LDADD_${__lib}:U${__lib:T:R:S/lib/-l/:C/\.so.*//}} +LDADD += ${LDADD_${__lib:T:R}:U${__lib:T:R:S/lib/-l/:C/\.so.*//}} .endif .endfor Modified: vendor/NetBSD/bmake/dist/mk/install-mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/install-mk Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/mk/install-mk Mon Mar 6 19:54:54 2017 (r314787) @@ -55,7 +55,7 @@ # Simon J. Gerraty # RCSid: -# $Id: install-mk,v 1.135 2016/12/12 19:07:42 sjg Exp $ +# $Id: install-mk,v 1.138 2017/03/01 20:26:51 sjg Exp $ # # @(#) Copyright (c) 1994 Simon J. Gerraty # @@ -70,7 +70,7 @@ # sjg@crufty.net # -MK_VERSION=20161212 +MK_VERSION=20170301 OWNER= GROUP= MODE=444 Modified: vendor/NetBSD/bmake/dist/mk/meta.stage.mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/meta.stage.mk Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/mk/meta.stage.mk Mon Mar 6 19:54:54 2017 (r314787) @@ -1,6 +1,6 @@ -# $Id: meta.stage.mk,v 1.47 2016/12/07 23:07:49 sjg Exp $ +# $Id: meta.stage.mk,v 1.48 2017/03/01 22:48:07 sjg Exp $ # -# @(#) Copyright (c) 2011, Simon J. Gerraty +# @(#) Copyright (c) 2011-2017, Simon J. Gerraty # # This file is provided in the hope that it will # be of use. There is absolutely NO WARRANTY. @@ -14,7 +14,7 @@ # .if !target(__${.PARSEFILE}__) -__${.PARSEFILE}__: +# the guard target is defined later .if ${.MAKE.DEPENDFILE_PREFERENCE:U${.MAKE.DEPENDFILE}:M*.${MACHINE}} != "" # this is generally safer anyway @@ -127,26 +127,17 @@ STAGE_AS_SCRIPT = ${STAGE_DIRDEP_SCRIPT} done; :; } # this is simple, a list of the "staged" files depends on this, -_STAGE_BASENAME_USE: .USE ${.TARGET:T} +_STAGE_BASENAME_USE: .USE .dirdep ${.TARGET:T} @${STAGE_FILE_SCRIPT}; StageFiles ${.TARGET:H:${STAGE_DIR_FILTER}} ${.TARGET:T} -_STAGE_AS_BASENAME_USE: .USE ${.TARGET:T} +_STAGE_AS_BASENAME_USE: .USE .dirdep ${.TARGET:T} @${STAGE_AS_SCRIPT}; StageAs ${.TARGET:H:${STAGE_DIR_FILTER}} ${.TARGET:T} ${STAGE_AS_${.TARGET:T}:U${.TARGET:T}} -.if !empty(STAGE_INCSDIR) -STAGE_TARGETS += stage_incs -STAGE_INCS ?= ${.ALLSRC:N.dirdep:Nstage_*} stage_includes: stage_incs stage_incs: .dirdep @${STAGE_FILE_SCRIPT}; StageFiles ${STAGE_INCSDIR:${STAGE_DIR_FILTER}} ${STAGE_INCS} @touch $@ -.endif - -.if !empty(STAGE_LIBDIR) -STAGE_TARGETS += stage_libs - -STAGE_LIBS ?= ${.ALLSRC:N.dirdep:Nstage_*} stage_libs: .dirdep @${STAGE_FILE_SCRIPT}; StageFiles ${STAGE_LIBDIR:${STAGE_DIR_FILTER}} ${STAGE_LIBS} @@ -159,6 +150,18 @@ stage_libs: .dirdep .endif .endif @touch $@ + +.endif # first time + + +.if !empty(STAGE_INCSDIR) +STAGE_TARGETS += stage_incs +STAGE_INCS ?= ${.ALLSRC:N.dirdep:Nstage_*} +.endif + +.if !empty(STAGE_LIBDIR) +STAGE_TARGETS += stage_libs +STAGE_LIBS ?= ${.ALLSRC:N.dirdep:Nstage_*} .endif .if !empty(STAGE_DIR) @@ -184,6 +187,8 @@ STAGE_LINKS_DIR.$s ?= ${STAGE_OBJTOP} STAGE_SYMLINKS_DIR.$s ?= ${STAGE_OBJTOP} STAGE_TARGETS += stage_files +.if !target(.stage_files.$s) +.stage_files.$s: .if $s != "_default" stage_files: stage_files.$s stage_files.$s: .dirdep @@ -192,8 +197,11 @@ stage_files: .dirdep .endif @${STAGE_FILE_SCRIPT}; StageFiles ${FLAGS.$@} ${STAGE_FILES_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_FILES.$s} @touch $@ +.endif STAGE_TARGETS += stage_links +.if !target(.stage_links.$s) +.stage_links.$s: .if $s != "_default" stage_links: stage_links.$s stage_links.$s: .dirdep @@ -202,8 +210,11 @@ stage_links: .dirdep .endif @${STAGE_LINKS_SCRIPT}; StageLinks ${STAGE_LINKS_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_LINKS.$s} @touch $@ +.endif STAGE_TARGETS += stage_symlinks +.if !target(.stage_symlinks.$s) +.stage_symlinks.$s: .if $s != "_default" stage_symlinks: stage_symlinks.$s stage_symlinks.$s: .dirdep @@ -212,6 +223,7 @@ stage_symlinks: .dirdep .endif @${STAGE_LINKS_SCRIPT}; StageLinks -s ${STAGE_SYMLINKS_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_SYMLINKS.$s} @touch $@ +.endif .endfor .endif @@ -231,22 +243,32 @@ STAGE_TARGETS += stage_as stage_as_and_s STAGE_AS.$s ?= ${.ALLSRC:N.dirdep:Nstage_*} STAGE_AS_AND_SYMLINK.$s ?= ${.ALLSRC:N.dirdep:Nstage_*} +.if !target(.stage_as.$s) +.stage_as.$s: stage_as: stage_as.$s stage_as.$s: .dirdep @${STAGE_AS_SCRIPT}; StageAs ${FLAGS.$@} ${STAGE_FILES_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_AS.$s:@f@$f ${STAGE_AS_${f:tA}:U${STAGE_AS_${f:T}:U${f:T}}}@} @touch $@ +.endif +.if !target(.stage_as_and_symlink.$s) +.stage_as_and_symlink.$s: stage_as_and_symlink: stage_as_and_symlink.$s stage_as_and_symlink.$s: .dirdep @${STAGE_AS_SCRIPT}; StageAs ${FLAGS.$@} ${STAGE_FILES_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_AS_AND_SYMLINK.$s:@f@$f ${STAGE_AS_${f:tA}:U${STAGE_AS_${f:T}:U${f:T}}}@} @${STAGE_LINKS_SCRIPT}; StageLinks -s ${STAGE_FILES_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_AS_AND_SYMLINK.$s:@f@${STAGE_AS_${f:tA}:U${STAGE_AS_${f:T}:U${f:T}}} $f@} @touch $@ +.endif .endfor .endif CLEANFILES += ${STAGE_TARGETS} stage_incs stage_includes +# this lot also only makes sense the first time... +.if !target(__${.PARSEFILE}__) +__${.PARSEFILE}__: + # stage_*links usually needs to follow any others. # for non-jobs mode the order here matters staging: ${STAGE_TARGETS:N*_links} ${STAGE_TARGETS:M*_links} Modified: vendor/NetBSD/bmake/dist/mk/meta2deps.py ============================================================================== --- vendor/NetBSD/bmake/dist/mk/meta2deps.py Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/mk/meta2deps.py Mon Mar 6 19:54:54 2017 (r314787) @@ -37,7 +37,7 @@ We only pay attention to a subset of the """ RCSid: - $Id: meta2deps.py,v 1.22 2016/12/12 19:07:42 sjg Exp $ + $Id: meta2deps.py,v 1.24 2017/02/08 22:17:10 sjg Exp $ Copyright (c) 2011-2013, Juniper Networks, Inc. All rights reserved. @@ -103,20 +103,36 @@ def resolve(path, cwd, last_dir=None, de return p return None +def cleanpath(path): + """cleanup path without using realpath(3)""" + if path.startswith('/'): + r = '/' + else: + r = '' + p = [] + w = path.split('/') + for d in w: + if not d or d == '.': + continue + if d == '..': + p.pop() + continue + p.append(d) + + return r + '/'.join(p) + def abspath(path, cwd, last_dir=None, debug=0, debug_out=sys.stderr): """ Return an absolute path, resolving via cwd or last_dir if needed. - this gets called a lot, so we try to avoid calling realpath - until we know we have something. + this gets called a lot, so we try to avoid calling realpath. """ rpath = resolve(path, cwd, last_dir, debug, debug_out) if rpath: path = rpath if (path.find('/') < 0 or path.find('./') > 0 or - path.endswith('/..') or - os.path.islink(path)): - return os.path.realpath(path) + path.endswith('/..')): + path = cleanpath(path) return path def sort_unique(list, cmp=None, key=None, reverse=False): @@ -126,6 +142,7 @@ def sort_unique(list, cmp=None, key=None for e in list: if e == le: continue + le = e nl.append(e) return nl @@ -504,6 +521,8 @@ class MetaFile: dir = abspath(dir, cwd, self.last_dir, self.debug, self.debug_out) if rdir == dir or rdir.find('./') > 0: rdir = None + if os.path.islink(dir): + rdir = os.path.realpath(dir) # now put path back together path = '/'.join([dir,base]) if self.debug > 1: Modified: vendor/NetBSD/bmake/dist/mk/prog.mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/prog.mk Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/mk/prog.mk Mon Mar 6 19:54:54 2017 (r314787) @@ -1,4 +1,4 @@ -# $Id: prog.mk,v 1.27 2016/08/02 20:52:17 sjg Exp $ +# $Id: prog.mk,v 1.28 2017/02/14 21:26:13 sjg Exp $ .if !target(__${.PARSEFILE}__) __${.PARSEFILE}__: @@ -191,6 +191,7 @@ install_links: maninstall: afterinstall afterinstall: realinstall +install_links: realinstall proginstall: beforeinstall realinstall: beforeinstall .endif Modified: vendor/NetBSD/bmake/dist/mk/subdir.mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/subdir.mk Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/mk/subdir.mk Mon Mar 6 19:54:54 2017 (r314787) @@ -1,4 +1,4 @@ -# $Id: subdir.mk,v 1.15 2016/04/05 15:58:37 sjg Exp $ +# $Id: subdir.mk,v 1.16 2017/02/08 22:16:59 sjg Exp $ # skip missing directories... # $NetBSD: bsd.subdir.mk,v 1.11 1996/04/04 02:05:06 jtc Exp $ @@ -45,13 +45,18 @@ _SUBDIRUSE: .USE done ${SUBDIR}:: - @set -e; if test -d ${.CURDIR}/${.TARGET}.${MACHINE}; then \ - _newdir_=${.TARGET}.${MACHINE}; \ + @set -e; _r=${.CURDIR}/; \ + if test -z "${.TARGET:M/*}"; then \ + if test -d ${.CURDIR}/${.TARGET}.${MACHINE}; then \ + _newdir_=${.TARGET}.${MACHINE}; \ + else \ + _newdir_=${.TARGET}; \ + fi; \ else \ - _newdir_=${.TARGET}; \ + _r= _newdir_=${.TARGET}; \ fi; \ ${ECHO_DIR} "===> $${_newdir_}"; \ - cd ${.CURDIR}/$${_newdir_}; \ + cd $${_r}$${_newdir_}; \ ${.MAKE} _THISDIR_="$${_newdir_}" all .endif Modified: vendor/NetBSD/bmake/dist/mk/sys.mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/sys.mk Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/mk/sys.mk Mon Mar 6 19:54:54 2017 (r314787) @@ -1,4 +1,4 @@ -# $Id: sys.mk,v 1.44 2016/10/01 19:11:55 sjg Exp $ +# $Id: sys.mk,v 1.45 2017/02/05 01:26:13 sjg Exp $ # # @(#) Copyright (c) 2003-2009, Simon J. Gerraty # @@ -71,11 +71,11 @@ SYS_OS_MK := ${_sys_mk} # some options we need to know early OPTIONS_DEFAULT_NO += \ DIRDEPS_BUILD \ - DIRDEPS_CACHE \ - META_MODE + DIRDEPS_CACHE OPTIONS_DEFAULT_DEPENDENT += \ AUTO_OBJ/DIRDEPS_BUILD \ + META_MODE/DIRDEPS_BUILD \ STAGING/DIRDEPS_BUILD \ .-include Modified: vendor/NetBSD/bmake/dist/mk/sys.vars.mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/sys.vars.mk Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/mk/sys.vars.mk Mon Mar 6 19:54:54 2017 (r314787) @@ -1,4 +1,4 @@ -# $Id: sys.vars.mk,v 1.1 2016/10/01 19:11:55 sjg Exp $ +# $Id: sys.vars.mk,v 1.2 2017/01/31 07:44:45 sjg Exp $ # # @(#) Copyright (c) 2003-2009, Simon J. Gerraty # @@ -67,5 +67,14 @@ M_tA = tA M_tA = C,.*,('cd' & \&\& 'pwd') 2> /dev/null || echo &,:sh .endif +.if ${MAKE_VERSION:U0} >= 20170130 +# M_cmpv allows comparing dotted versions like 3.1.2 +# ${3.1.2:L:${M_cmpv}} -> 3001002 +# we use big jumps to handle 3 digits per dot: +# ${123.456.789:L:${M_cmpv}} -> 123456789 +M_cmpv.units = 1 1000 1000000 +M_cmpv = S,., ,g:_:range:@i@+ $${_:[-$$i]} \* $${M_cmpv.units:[$$i]}@:S,^,expr 0 ,1:sh +.endif + # absoulte path to what we are reading. _PARSEDIR = ${.PARSEDIR:${M_tA}} Modified: vendor/NetBSD/bmake/dist/os.sh ============================================================================== --- vendor/NetBSD/bmake/dist/os.sh Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/os.sh Mon Mar 6 19:54:54 2017 (r314787) @@ -17,7 +17,7 @@ # Simon J. Gerraty # RCSid: -# $Id: os.sh,v 1.52 2016/06/17 05:15:14 sjg Exp $ +# $Id: os.sh,v 1.53 2017/01/11 20:01:09 sjg Exp $ # # @(#) Copyright (c) 1994 Simon J. Gerraty # @@ -206,7 +206,13 @@ esac TMP_DIRS=${TMP_DIRS:-"/tmp /var/tmp"} MACHINE_ARCH=${MACHINE_ARCH:-$MACHINE} +case "$MACHINE_ARCH" in +x86*64|amd64) MACHINE32_ARCH=i386;; +*64) MACHINE32_ARCH=`echo $MACHINE_ARCH | sed 's,64,32,'`;; +*) MACHINE32_ARCH=$MACHINE_ARCH;; +esac HOST_ARCH=${HOST_ARCH:-$MACHINE_ARCH} +HOST_ARCH32=${HOST_ARCH32:-$MACHINE32_ARCH} # we mount server:/share/arch/$SHARE_ARCH as /usr/local SHARE_ARCH_DEFAULT=$OS/$OSMAJOR.X/$HOST_ARCH SHARE_ARCH=${SHARE_ARCH:-$SHARE_ARCH_DEFAULT} @@ -215,7 +221,8 @@ TR=${TR:-tr} # Some people like have /share/$HOST_TARGET/bin etc. HOST_TARGET=`echo ${OS}${OSMAJOR}-$HOST_ARCH | tr -d / | toLower` -export HOST_TARGET +HOST_TARGET32=`echo ${OS}${OSMAJOR}-$HOST_ARCH32 | tr -d / | toLower` +export HOST_TARGET HOST_TARGET32 case `echo -n .` in -n*) N=; C="\c";; *) N=-n; C=;; esac Modified: vendor/NetBSD/bmake/dist/parse.c ============================================================================== --- vendor/NetBSD/bmake/dist/parse.c Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/parse.c Mon Mar 6 19:54:54 2017 (r314787) @@ -1,4 +1,4 @@ -/* $NetBSD: parse.c,v 1.217 2016/12/09 22:56:21 sjg Exp $ */ +/* $NetBSD: parse.c,v 1.218 2017/03/01 16:39:49 sjg Exp $ */ /* * Copyright (c) 1988, 1989, 1990, 1993 @@ -69,14 +69,14 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: parse.c,v 1.217 2016/12/09 22:56:21 sjg Exp $"; +static char rcsid[] = "$NetBSD: parse.c,v 1.218 2017/03/01 16:39:49 sjg Exp $"; #else #include #ifndef lint #if 0 static char sccsid[] = "@(#)parse.c 8.3 (Berkeley) 3/19/94"; #else -__RCSID("$NetBSD: parse.c,v 1.217 2016/12/09 22:56:21 sjg Exp $"); +__RCSID("$NetBSD: parse.c,v 1.218 2017/03/01 16:39:49 sjg Exp $"); #endif #endif /* not lint */ #endif @@ -578,7 +578,11 @@ loadfile(const char *path, int fd) /* truncate malloc region to actual length (maybe not useful) */ if (lf->len > 0) { + /* as for mmap case, ensure trailing \n */ + if (lf->buf[lf->len - 1] != '\n') + lf->len++; lf->buf = bmake_realloc(lf->buf, lf->len); + lf->buf[lf->len - 1] = '\n'; } #ifdef HAVE_MMAP Modified: vendor/NetBSD/bmake/dist/unit-tests/varmisc.exp ============================================================================== --- vendor/NetBSD/bmake/dist/unit-tests/varmisc.exp Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/unit-tests/varmisc.exp Mon Mar 6 19:54:54 2017 (r314787) @@ -17,4 +17,9 @@ false FALSE do not evaluate or expand :? if discarding is set +year=2016 month=04 day=01 +date=20160401 +Version=123.456.789 == 123456789 +Literal=3.4.5 == 3004005 +We have target specific vars exit status 0 Modified: vendor/NetBSD/bmake/dist/unit-tests/varmisc.mk ============================================================================== --- vendor/NetBSD/bmake/dist/unit-tests/varmisc.mk Mon Mar 6 19:39:31 2017 (r314786) +++ vendor/NetBSD/bmake/dist/unit-tests/varmisc.mk Mon Mar 6 19:54:54 2017 (r314787) @@ -1,8 +1,9 @@ -# $Id: varmisc.mk,v 1.5 2015/10/12 17:10:48 sjg Exp $ +# $Id: varmisc.mk,v 1.9 2017/02/01 18:44:54 sjg Exp $ # # Miscellaneous variable tests. -all: unmatched_var_paren D_true U_true D_false U_false Q_lhs Q_rhs NQ_none +all: unmatched_var_paren D_true U_true D_false U_false Q_lhs Q_rhs NQ_none \ + strftime cmpv unmatched_var_paren: @echo ${foo::=foo-text} @@ -40,3 +41,22 @@ Q_rhs: NQ_none: @echo do not evaluate or expand :? if discarding @echo ${VSET:U${1:L:?${True}:${False}}} + +April1= 1459494000 + +# slightly contorted syntax to use utc via variable +strftime: + @echo ${year=%Y month=%m day=%d:L:gmtime=1459494000} + @echo date=${%Y%m%d:L:${gmtime=${April1}:L}} + *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Mon Mar 6 19:55:09 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 38DFDCFC127; Mon, 6 Mar 2017 19:55:09 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E418410AF; Mon, 6 Mar 2017 19:55:08 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26Jt8tY031470; Mon, 6 Mar 2017 19:55:08 GMT (envelope-from sjg@FreeBSD.org) Received: (from sjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26Jt8DL031469; Mon, 6 Mar 2017 19:55:08 GMT (envelope-from sjg@FreeBSD.org) Message-Id: <201703061955.v26Jt8DL031469@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sjg set sender to sjg@FreeBSD.org using -f From: "Simon J. Gerraty" Date: Mon, 6 Mar 2017 19:55:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r314788 - vendor/NetBSD/bmake/20170301 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 19:55:09 -0000 Author: sjg Date: Mon Mar 6 19:55:07 2017 New Revision: 314788 URL: https://svnweb.freebsd.org/changeset/base/314788 Log: tag bmake-20170301 Added: vendor/NetBSD/bmake/20170301/ - copied from r314787, vendor/NetBSD/bmake/dist/ From owner-svn-src-all@freebsd.org Mon Mar 6 20:25:35 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4B5BDCFC8BF; Mon, 6 Mar 2017 20:25:35 +0000 (UTC) (envelope-from davidcs@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0ABB211F6; Mon, 6 Mar 2017 20:25:34 +0000 (UTC) (envelope-from davidcs@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26KPYP5043722; Mon, 6 Mar 2017 20:25:34 GMT (envelope-from davidcs@FreeBSD.org) Received: (from davidcs@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26KPYSZ043721; Mon, 6 Mar 2017 20:25:34 GMT (envelope-from davidcs@FreeBSD.org) Message-Id: <201703062025.v26KPYSZ043721@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: davidcs set sender to davidcs@FreeBSD.org using -f From: David C Somayajulu Date: Mon, 6 Mar 2017 20:25:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314789 - stable/11/sys/dev/qlxgbe X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 20:25:35 -0000 Author: davidcs Date: Mon Mar 6 20:25:33 2017 New Revision: 314789 URL: https://svnweb.freebsd.org/changeset/base/314789 Log: MFC r314062 add bus_dmamap_unload in ql_free_dmabuf() Modified: stable/11/sys/dev/qlxgbe/ql_os.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/qlxgbe/ql_os.c ============================================================================== --- stable/11/sys/dev/qlxgbe/ql_os.c Mon Mar 6 19:55:07 2017 (r314788) +++ stable/11/sys/dev/qlxgbe/ql_os.c Mon Mar 6 20:25:33 2017 (r314789) @@ -735,6 +735,7 @@ ql_alloc_dmabuf_exit: void ql_free_dmabuf(qla_host_t *ha, qla_dma_t *dma_buf) { + bus_dmamap_unload(dma_buf->dma_tag, dma_buf->dma_map); bus_dmamem_free(dma_buf->dma_tag, dma_buf->dma_b, dma_buf->dma_map); bus_dma_tag_destroy(dma_buf->dma_tag); } From owner-svn-src-all@freebsd.org Mon Mar 6 20:32:18 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AEAC1CFCB93; Mon, 6 Mar 2017 20:32:18 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 791631748; Mon, 6 Mar 2017 20:32:18 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26KWHMv047686; Mon, 6 Mar 2017 20:32:17 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26KWHuW047685; Mon, 6 Mar 2017 20:32:17 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201703062032.v26KWHuW047685@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Mon, 6 Mar 2017 20:32:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314790 - head X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 20:32:18 -0000 Author: bdrewery Date: Mon Mar 6 20:32:17 2017 New Revision: 314790 URL: https://svnweb.freebsd.org/changeset/base/314790 Log: Added comments for why nmtree/libmd are bootstrapped. Modified: head/Makefile.inc1 Modified: head/Makefile.inc1 ============================================================================== --- head/Makefile.inc1 Mon Mar 6 20:25:33 2017 (r314789) +++ head/Makefile.inc1 Mon Mar 6 20:32:17 2017 (r314790) @@ -1618,6 +1618,8 @@ ${_bt}-usr.bin/m4: ${_bt}-lib/libopenbsd ${_bt}-usr.bin/lex: ${_bt}-usr.bin/m4 .endif +# r245440 mtree -N support added +# r313404 requires sha384.h for libnetbsd, added to libmd in r292782 .if ${BOOTSTRAPPING} < 1100093 _nmtree= lib/libmd \ lib/libnetbsd \ From owner-svn-src-all@freebsd.org Mon Mar 6 20:35:04 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 89097CFCC63; Mon, 6 Mar 2017 20:35:04 +0000 (UTC) (envelope-from davidcs@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 580441914; Mon, 6 Mar 2017 20:35:04 +0000 (UTC) (envelope-from davidcs@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26KZ3YU047895; Mon, 6 Mar 2017 20:35:03 GMT (envelope-from davidcs@FreeBSD.org) Received: (from davidcs@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26KZ3kY047894; Mon, 6 Mar 2017 20:35:03 GMT (envelope-from davidcs@FreeBSD.org) Message-Id: <201703062035.v26KZ3kY047894@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: davidcs set sender to davidcs@FreeBSD.org using -f From: David C Somayajulu Date: Mon, 6 Mar 2017 20:35:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314791 - stable/10/sys/dev/qlxgbe X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 20:35:04 -0000 Author: davidcs Date: Mon Mar 6 20:35:03 2017 New Revision: 314791 URL: https://svnweb.freebsd.org/changeset/base/314791 Log: MFC r314062 add bus_dmamap_unload in ql_free_dmabuf() Modified: stable/10/sys/dev/qlxgbe/ql_os.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/qlxgbe/ql_os.c ============================================================================== --- stable/10/sys/dev/qlxgbe/ql_os.c Mon Mar 6 20:32:17 2017 (r314790) +++ stable/10/sys/dev/qlxgbe/ql_os.c Mon Mar 6 20:35:03 2017 (r314791) @@ -735,6 +735,7 @@ ql_alloc_dmabuf_exit: void ql_free_dmabuf(qla_host_t *ha, qla_dma_t *dma_buf) { + bus_dmamap_unload(dma_buf->dma_tag, dma_buf->dma_map); bus_dmamem_free(dma_buf->dma_tag, dma_buf->dma_b, dma_buf->dma_map); bus_dma_tag_destroy(dma_buf->dma_tag); } From owner-svn-src-all@freebsd.org Mon Mar 6 20:47:55 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 319A9CFCF0C; Mon, 6 Mar 2017 20:47:55 +0000 (UTC) (envelope-from davidcs@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 00B051FAB; Mon, 6 Mar 2017 20:47:54 +0000 (UTC) (envelope-from davidcs@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26Kls9S052228; Mon, 6 Mar 2017 20:47:54 GMT (envelope-from davidcs@FreeBSD.org) Received: (from davidcs@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26KlslR052227; Mon, 6 Mar 2017 20:47:54 GMT (envelope-from davidcs@FreeBSD.org) Message-Id: <201703062047.v26KlslR052227@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: davidcs set sender to davidcs@FreeBSD.org using -f From: David C Somayajulu Date: Mon, 6 Mar 2017 20:47:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r314792 - stable/9/sys/dev/qlxgbe X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 20:47:55 -0000 Author: davidcs Date: Mon Mar 6 20:47:53 2017 New Revision: 314792 URL: https://svnweb.freebsd.org/changeset/base/314792 Log: MFC r314062 add bus_dmamap_unload in ql_free_dmabuf() Modified: stable/9/sys/dev/qlxgbe/ql_os.c Directory Properties: stable/9/ (props changed) stable/9/sys/ (props changed) Modified: stable/9/sys/dev/qlxgbe/ql_os.c ============================================================================== --- stable/9/sys/dev/qlxgbe/ql_os.c Mon Mar 6 20:35:03 2017 (r314791) +++ stable/9/sys/dev/qlxgbe/ql_os.c Mon Mar 6 20:47:53 2017 (r314792) @@ -735,6 +735,7 @@ ql_alloc_dmabuf_exit: void ql_free_dmabuf(qla_host_t *ha, qla_dma_t *dma_buf) { + bus_dmamap_unload(dma_buf->dma_tag, dma_buf->dma_map); bus_dmamem_free(dma_buf->dma_tag, dma_buf->dma_b, dma_buf->dma_map); bus_dma_tag_destroy(dma_buf->dma_tag); } From owner-svn-src-all@freebsd.org Mon Mar 6 20:53:26 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1FCBDCFC114; Mon, 6 Mar 2017 20:53:26 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id DC7D7146A; Mon, 6 Mar 2017 20:53:25 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v26KrGIl090403; Mon, 6 Mar 2017 12:53:16 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v26KrG3S090402; Mon, 6 Mar 2017 12:53:16 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703062053.v26KrG3S090402@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314789 - stable/11/sys/dev/qlxgbe In-Reply-To: <201703062025.v26KPYSZ043721@repo.freebsd.org> To: David C Somayajulu Date: Mon, 6 Mar 2017 12:53:16 -0800 (PST) CC: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 20:53:26 -0000 > Author: davidcs > Date: Mon Mar 6 20:25:33 2017 > New Revision: 314789 > URL: https://svnweb.freebsd.org/changeset/base/314789 > > Log: > MFC r314062 > add bus_dmamap_unload in ql_free_dmabuf() > > Modified: > stable/11/sys/dev/qlxgbe/ql_os.c > Directory Properties: > stable/11/ (props changed) > > Modified: stable/11/sys/dev/qlxgbe/ql_os.c > ============================================================================== > --- stable/11/sys/dev/qlxgbe/ql_os.c Mon Mar 6 19:55:07 2017 (r314788) > +++ stable/11/sys/dev/qlxgbe/ql_os.c Mon Mar 6 20:25:33 2017 (r314789) > @@ -735,6 +735,7 @@ ql_alloc_dmabuf_exit: > void > ql_free_dmabuf(qla_host_t *ha, qla_dma_t *dma_buf) > { > + bus_dmamap_unload(dma_buf->dma_tag, dma_buf->dma_map); > bus_dmamem_free(dma_buf->dma_tag, dma_buf->dma_b, dma_buf->dma_map); > bus_dma_tag_destroy(dma_buf->dma_tag); > } That looks as if this file has incorrect leading white space? -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Mon Mar 6 20:54:22 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B56DECFC1B6; Mon, 6 Mar 2017 20:54:22 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 852DD162C; Mon, 6 Mar 2017 20:54:22 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26KsLKW056005; Mon, 6 Mar 2017 20:54:21 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26KsLYT056004; Mon, 6 Mar 2017 20:54:21 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703062054.v26KsLYT056004@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Mon, 6 Mar 2017 20:54:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314793 - head/contrib/atf/atf-c X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 20:54:22 -0000 Author: ngie Date: Mon Mar 6 20:54:21 2017 New Revision: 314793 URL: https://svnweb.freebsd.org/changeset/base/314793 Log: Fix ATF_TP_ADD_TCS example in atf-c-api(3) ATF_TP_ADD_TC should use `tp` as the second argument, not `tcs`, as ATF_TP_ADD_TCS uses `tp` as its first argument. Bump .Dd for the change. MFC after: 1 week Sponsored by: Dell EMC Isilon Modified: head/contrib/atf/atf-c/atf-c-api.3 Modified: head/contrib/atf/atf-c/atf-c-api.3 ============================================================================== --- head/contrib/atf/atf-c/atf-c-api.3 Mon Mar 6 20:47:53 2017 (r314792) +++ head/contrib/atf/atf-c/atf-c-api.3 Mon Mar 6 20:54:21 2017 (r314793) @@ -26,7 +26,7 @@ .\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN .\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd March 2, 2014 +.Dd March 6, 2017 .Dt ATF-C-API 3 .Os .Sh NAME @@ -243,9 +243,9 @@ ATF_TC_BODY(tc3, tc) ATF_TP_ADD_TCS(tp) { - ATF_TP_ADD_TC(tcs, tc1); - ATF_TP_ADD_TC(tcs, tc2); - ATF_TP_ADD_TC(tcs, tc3); + ATF_TP_ADD_TC(tp, tc1); + ATF_TP_ADD_TC(tp, tc2); + ATF_TP_ADD_TC(tp, tc3); ... add additional test cases ... return atf_no_error(); From owner-svn-src-all@freebsd.org Mon Mar 6 21:06:22 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5FBF9CFC456; Mon, 6 Mar 2017 21:06:22 +0000 (UTC) (envelope-from David.Somayajulu@cavium.com) Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on0048.outbound.protection.outlook.com [104.47.36.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (Client CN "mail.protection.outlook.com", Issuer "Microsoft IT SSL SHA2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 13B9B1D00; Mon, 6 Mar 2017 21:06:21 +0000 (UTC) (envelope-from David.Somayajulu@cavium.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=I7a8VKOASLE/EQ7JP78AhnaOEKofEHVV86M/RTuOgcI=; b=V+S3kqxd0xlwza+qyy7Q46JmoXqlfHFRU3LEzdQfLqYBLm5bhPMDASfuBgJTtngG1YRPbc16uH0OOZB96Ccp45Rt4wD9yFOVoUDkXO9CrxdJLli1/A68E7me5QwMzla0j5sTbxvPhUnol2LxFYCJpz0Q9RG9lzx+PtcUiPo1VWs= Received: from BY2PR07MB1474.namprd07.prod.outlook.com (10.162.76.152) by BY2PR07MB1476.namprd07.prod.outlook.com (10.162.76.154) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.947.12; Mon, 6 Mar 2017 21:06:19 +0000 Received: from BY2PR07MB1474.namprd07.prod.outlook.com ([10.162.76.152]) by BY2PR07MB1474.namprd07.prod.outlook.com ([10.162.76.152]) with mapi id 15.01.0947.018; Mon, 6 Mar 2017 21:06:19 +0000 From: "Somayajulu, David" To: "rgrimes@freebsd.org" , David C Somayajulu CC: "src-committers@freebsd.org" , "svn-src-all@freebsd.org" , "svn-src-stable@freebsd.org" , "svn-src-stable-11@freebsd.org" Subject: RE: svn commit: r314789 - stable/11/sys/dev/qlxgbe Thread-Topic: svn commit: r314789 - stable/11/sys/dev/qlxgbe Thread-Index: AQHSlrfafKZCJ8vOekmOy1SFHvGajqGISesAgAAC8IA= Date: Mon, 6 Mar 2017 21:06:19 +0000 Message-ID: References: <201703062025.v26KPYSZ043721@repo.freebsd.org> <201703062053.v26KrG3S090402@pdx.rh.CN85.dnsmgr.net> In-Reply-To: <201703062053.v26KrG3S090402@pdx.rh.CN85.dnsmgr.net> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: freebsd.org; dkim=none (message not signed) header.d=none;freebsd.org; dmarc=none action=none header.from=cavium.com; x-originating-ip: [198.186.0.2] x-ms-office365-filtering-correlation-id: 3a10dd6a-1f4f-4bd7-2e6a-08d464d4a2d8 x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:BY2PR07MB1476; x-microsoft-exchange-diagnostics: 1; BY2PR07MB1476; 7:IO14m33E86Ym88FjMJG2s99HFyZrIucvtqH1br1XbpfWpnxG4yZYpWVdJNh2+d+kE+YKiDvdbSdF5JCo+ZGTyKicA9tUfsKh28QTPjN9v42XmR/3PB/YHm/eNwpVPlquu3J1XQKmBj2CYShSqMeLFysKki5mz7CUOjG+rjz9H3EOHY8O4Hq8nER2WK5h+qzXaevVgX3BERcQaxhhwr7efy/K5izCBi/go5ELLr9ZvUfTTmpWRWaDVDAcigyy9wBunV8YzyiZ8efzn//Nz2DyaU1E3UYQImDUBBgYBjDswwezgDYThdgiyc0Ibc1J6taW6avD20f8nNN9eYhH49Fxzg== x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(56005881305849); x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046)(6041248)(20161123564025)(20161123562025)(20161123555025)(20161123560025)(20161123558025)(6072148); SRVR:BY2PR07MB1476; BCL:0; PCL:0; RULEID:; SRVR:BY2PR07MB1476; x-forefront-prvs: 0238AEEDB0 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(6009001)(7916002)(39450400003)(377454003)(13464003)(3660700001)(2906002)(4326008)(92566002)(6116002)(7696004)(106116001)(305945005)(74316002)(7736002)(9686003)(3280700002)(25786008)(2950100002)(189998001)(6506006)(53936002)(5660300001)(102836003)(3846002)(86362001)(38730400002)(77096006)(54356999)(6246003)(50986999)(76176999)(54906002)(6306002)(55016002)(53546006)(2501003)(66066001)(122556002)(450100001)(8676002)(8936002)(2900100001)(81166006)(33656002)(229853002)(6436002); DIR:OUT; SFP:1101; SCL:1; SRVR:BY2PR07MB1476; H:BY2PR07MB1474.namprd07.prod.outlook.com; FPR:; SPF:None; MLV:sfv; LANG:en; spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-originalarrivaltime: 06 Mar 2017 21:06:19.1034 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR07MB1476 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 21:06:22 -0000 Hi Rodney, I was worried about the same as well. The reason it looks funky is that the= following two lines have a 8 spaces instead of a tab. > bus_dmamem_free(dma_buf->dma_tag, dma_buf->dma_b, dma_buf->dma_m= ap); > bus_dma_tag_destroy(dma_buf->dma_tag); While=20 > + bus_dmamap_unload(dma_buf->dma_tag, dma_buf->dma_map); Uses a tab instead.=20 Thanks David S. -----Original Message----- From: Rodney W. Grimes [mailto:freebsd@pdx.rh.CN85.dnsmgr.net]=20 Sent: Monday, March 06, 2017 12:53 PM To: David C Somayajulu Cc: src-committers@freebsd.org; svn-src-all@freebsd.org; svn-src-stable@fre= ebsd.org; svn-src-stable-11@freebsd.org Subject: Re: svn commit: r314789 - stable/11/sys/dev/qlxgbe > Author: davidcs > Date: Mon Mar 6 20:25:33 2017 > New Revision: 314789 > URL: https://svnweb.freebsd.org/changeset/base/314789 >=20 > Log: > MFC r314062 > add bus_dmamap_unload in ql_free_dmabuf() >=20 > Modified: > stable/11/sys/dev/qlxgbe/ql_os.c > Directory Properties: > stable/11/ (props changed) >=20 > Modified: stable/11/sys/dev/qlxgbe/ql_os.c=20 > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > --- stable/11/sys/dev/qlxgbe/ql_os.c Mon Mar 6 19:55:07 2017 (r314788) > +++ stable/11/sys/dev/qlxgbe/ql_os.c Mon Mar 6 20:25:33 2017 (r314789) > @@ -735,6 +735,7 @@ ql_alloc_dmabuf_exit: > void > ql_free_dmabuf(qla_host_t *ha, qla_dma_t *dma_buf) { > + bus_dmamap_unload(dma_buf->dma_tag, dma_buf->dma_map); > bus_dmamem_free(dma_buf->dma_tag, dma_buf->dma_b, dma_buf->dma_m= ap); > bus_dma_tag_destroy(dma_buf->dma_tag); > } That looks as if this file has incorrect leading white space? --=20 Rod Grimes rgrimes@freebsd.= org From owner-svn-src-all@freebsd.org Mon Mar 6 21:06:56 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C860DCFC53C; Mon, 6 Mar 2017 21:06:56 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 97EED1EA6; Mon, 6 Mar 2017 21:06:56 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26L6tam060384; Mon, 6 Mar 2017 21:06:55 GMT (envelope-from bdrewery@FreeBSD.org) Received: (from bdrewery@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26L6t2s060383; Mon, 6 Mar 2017 21:06:55 GMT (envelope-from bdrewery@FreeBSD.org) Message-Id: <201703062106.v26L6t2s060383@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: bdrewery set sender to bdrewery@FreeBSD.org using -f From: Bryan Drewery Date: Mon, 6 Mar 2017 21:06:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314794 - head/lib/libmd X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 21:06:56 -0000 Author: bdrewery Date: Mon Mar 6 21:06:55 2017 New Revision: 314794 URL: https://svnweb.freebsd.org/changeset/base/314794 Log: Fix bootstrapping libmd on older systems after r314709. This follows another fix to bootstrap libmd after r313404. The MD5FileChunk prototype is needed to build libmd, but it is only reliably in the src tree's sys/md5.h header. Rather than polluting the legacy build with this header for the entire build, just symlink it in here for now as is done in the elftoolchain build. Libmd is already referencing other src tree headers by its used of CFLAGS+= ${SRCTOP}/sys/crypto/sha2. This, and other uses of CFLAGS+= ${SRCTOP}/sys..., may later change to be in the legacy mechanism. Reported by: bde, ian, sjg Tested by: ian Modified: head/lib/libmd/Makefile Modified: head/lib/libmd/Makefile ============================================================================== --- head/lib/libmd/Makefile Mon Mar 6 20:54:21 2017 (r314793) +++ head/lib/libmd/Makefile Mon Mar 6 21:06:55 2017 (r314794) @@ -72,6 +72,13 @@ CLEANFILES+= md[245]hl.c md[245].ref md[ skein256.ref skein512.ref skein1024.ref \ skeindriver +# Need src tree sys/md5.h for MD5FileChunk prototype on older systems. +SRCS+= sys/md5.h +CLEANDIRS= sys +CFLAGS+= -I. +sys/md5.h: ${SRCTOP}/sys/${.TARGET} .NOMETA + ln -sf ${.ALLSRC} ${.TARGET} + # Define WEAK_REFS to provide weak aliases for libmd symbols # # Note that the same sources are also used internally by libcrypt, From owner-svn-src-all@freebsd.org Mon Mar 6 21:14:22 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 04874CFC6EB; Mon, 6 Mar 2017 21:14:22 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id ABCF31332; Mon, 6 Mar 2017 21:14:21 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26LEKaX064480; Mon, 6 Mar 2017 21:14:20 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26LEKtM064479; Mon, 6 Mar 2017 21:14:20 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201703062114.v26LEKtM064479@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Mon, 6 Mar 2017 21:14:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314795 - head/contrib/llvm/lib/Analysis X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 21:14:22 -0000 Author: dim Date: Mon Mar 6 21:14:20 2017 New Revision: 314795 URL: https://svnweb.freebsd.org/changeset/base/314795 Log: Reapply r287232 from upstream llvm trunk (by Daniil Fukalov): [SCEV] limit recursion depth of CompareSCEVComplexity Summary: CompareSCEVComplexity goes too deep (50+ on a quite a big unrolled loop) and runs almost infinite time. Added cache of "equal" SCEV pairs to earlier cutoff of further estimation. Recursion depth limit was also introduced as a parameter. Reviewers: sanjoy Subscribers: mzolotukhin, tstellarAMD, llvm-commits Differential Revision: https://reviews.llvm.org/D26389 Pull in r296992 from upstream llvm trunk (by Sanjoy Das): [SCEV] Decrease the recursion threshold for CompareValueComplexity Fixes PR32142. r287232 accidentally increased the recursion threshold for CompareValueComplexity from 2 to 32. This change reverses that change by introducing a separate flag for CompareValueComplexity's threshold. The latter revision fixes the excessive compile times for skein_block.c. Modified: head/contrib/llvm/lib/Analysis/ScalarEvolution.cpp Modified: head/contrib/llvm/lib/Analysis/ScalarEvolution.cpp ============================================================================== --- head/contrib/llvm/lib/Analysis/ScalarEvolution.cpp Mon Mar 6 21:06:55 2017 (r314794) +++ head/contrib/llvm/lib/Analysis/ScalarEvolution.cpp Mon Mar 6 21:14:20 2017 (r314795) @@ -127,6 +127,16 @@ static cl::opt MulOpsInlineThr cl::desc("Threshold for inlining multiplication operands into a SCEV"), cl::init(1000)); +static cl::opt MaxSCEVCompareDepth( + "scalar-evolution-max-scev-compare-depth", cl::Hidden, + cl::desc("Maximum depth of recursive SCEV complexity comparisons"), + cl::init(32)); + +static cl::opt MaxValueCompareDepth( + "scalar-evolution-max-value-compare-depth", cl::Hidden, + cl::desc("Maximum depth of recursive value complexity comparisons"), + cl::init(2)); + //===----------------------------------------------------------------------===// // SCEV class definitions //===----------------------------------------------------------------------===// @@ -475,8 +485,8 @@ bool SCEVUnknown::isOffsetOf(Type *&CTy, static int CompareValueComplexity(SmallSet, 8> &EqCache, const LoopInfo *const LI, Value *LV, Value *RV, - unsigned DepthLeft = 2) { - if (DepthLeft == 0 || EqCache.count({LV, RV})) + unsigned Depth) { + if (Depth > MaxValueCompareDepth || EqCache.count({LV, RV})) return 0; // Order pointer values after integer values. This helps SCEVExpander form @@ -537,21 +547,23 @@ CompareValueComplexity(SmallSetgetOperand(Idx), - RInst->getOperand(Idx), DepthLeft - 1); + RInst->getOperand(Idx), Depth + 1); if (Result != 0) return Result; - EqCache.insert({LV, RV}); } } + EqCache.insert({LV, RV}); return 0; } // Return negative, zero, or positive, if LHS is less than, equal to, or greater // than RHS, respectively. A three-way result allows recursive comparisons to be // more efficient. -static int CompareSCEVComplexity(const LoopInfo *const LI, const SCEV *LHS, - const SCEV *RHS) { +static int CompareSCEVComplexity( + SmallSet, 8> &EqCacheSCEV, + const LoopInfo *const LI, const SCEV *LHS, const SCEV *RHS, + unsigned Depth = 0) { // Fast-path: SCEVs are uniqued so we can do a quick equality check. if (LHS == RHS) return 0; @@ -561,6 +573,8 @@ static int CompareSCEVComplexity(const L if (LType != RType) return (int)LType - (int)RType; + if (Depth > MaxSCEVCompareDepth || EqCacheSCEV.count({LHS, RHS})) + return 0; // Aside from the getSCEVType() ordering, the particular ordering // isn't very important except that it's beneficial to be consistent, // so that (a + b) and (b + a) don't end up as different expressions. @@ -570,7 +584,11 @@ static int CompareSCEVComplexity(const L const SCEVUnknown *RU = cast(RHS); SmallSet, 8> EqCache; - return CompareValueComplexity(EqCache, LI, LU->getValue(), RU->getValue()); + int X = CompareValueComplexity(EqCache, LI, LU->getValue(), RU->getValue(), + Depth + 1); + if (X == 0) + EqCacheSCEV.insert({LHS, RHS}); + return X; } case scConstant: { @@ -605,11 +623,12 @@ static int CompareSCEVComplexity(const L // Lexicographically compare. for (unsigned i = 0; i != LNumOps; ++i) { - long X = CompareSCEVComplexity(LI, LA->getOperand(i), RA->getOperand(i)); + int X = CompareSCEVComplexity(EqCacheSCEV, LI, LA->getOperand(i), + RA->getOperand(i), Depth + 1); if (X != 0) return X; } - + EqCacheSCEV.insert({LHS, RHS}); return 0; } @@ -628,11 +647,13 @@ static int CompareSCEVComplexity(const L for (unsigned i = 0; i != LNumOps; ++i) { if (i >= RNumOps) return 1; - long X = CompareSCEVComplexity(LI, LC->getOperand(i), RC->getOperand(i)); + int X = CompareSCEVComplexity(EqCacheSCEV, LI, LC->getOperand(i), + RC->getOperand(i), Depth + 1); if (X != 0) return X; } - return (int)LNumOps - (int)RNumOps; + EqCacheSCEV.insert({LHS, RHS}); + return 0; } case scUDivExpr: { @@ -640,10 +661,15 @@ static int CompareSCEVComplexity(const L const SCEVUDivExpr *RC = cast(RHS); // Lexicographically compare udiv expressions. - long X = CompareSCEVComplexity(LI, LC->getLHS(), RC->getLHS()); + int X = CompareSCEVComplexity(EqCacheSCEV, LI, LC->getLHS(), RC->getLHS(), + Depth + 1); if (X != 0) return X; - return CompareSCEVComplexity(LI, LC->getRHS(), RC->getRHS()); + X = CompareSCEVComplexity(EqCacheSCEV, LI, LC->getRHS(), RC->getRHS(), + Depth + 1); + if (X == 0) + EqCacheSCEV.insert({LHS, RHS}); + return X; } case scTruncate: @@ -653,7 +679,11 @@ static int CompareSCEVComplexity(const L const SCEVCastExpr *RC = cast(RHS); // Compare cast expressions by operand. - return CompareSCEVComplexity(LI, LC->getOperand(), RC->getOperand()); + int X = CompareSCEVComplexity(EqCacheSCEV, LI, LC->getOperand(), + RC->getOperand(), Depth + 1); + if (X == 0) + EqCacheSCEV.insert({LHS, RHS}); + return X; } case scCouldNotCompute: @@ -675,19 +705,21 @@ static int CompareSCEVComplexity(const L static void GroupByComplexity(SmallVectorImpl &Ops, LoopInfo *LI) { if (Ops.size() < 2) return; // Noop + + SmallSet, 8> EqCache; if (Ops.size() == 2) { // This is the common case, which also happens to be trivially simple. // Special case it. const SCEV *&LHS = Ops[0], *&RHS = Ops[1]; - if (CompareSCEVComplexity(LI, RHS, LHS) < 0) + if (CompareSCEVComplexity(EqCache, LI, RHS, LHS) < 0) std::swap(LHS, RHS); return; } // Do the rough sort by complexity. std::stable_sort(Ops.begin(), Ops.end(), - [LI](const SCEV *LHS, const SCEV *RHS) { - return CompareSCEVComplexity(LI, LHS, RHS) < 0; + [&EqCache, LI](const SCEV *LHS, const SCEV *RHS) { + return CompareSCEVComplexity(EqCache, LI, LHS, RHS) < 0; }); // Now that we are sorted by complexity, group elements of the same From owner-svn-src-all@freebsd.org Mon Mar 6 21:24:57 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0E0D4CFC935; Mon, 6 Mar 2017 21:24:57 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A4E791888; Mon, 6 Mar 2017 21:24:56 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26LOtkM068437; Mon, 6 Mar 2017 21:24:55 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26LOtmD068436; Mon, 6 Mar 2017 21:24:55 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703062124.v26LOtmD068436@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Mon, 6 Mar 2017 21:24:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314796 - head/contrib/atf/atf-sh X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 21:24:57 -0000 Author: ngie Date: Mon Mar 6 21:24:55 2017 New Revision: 314796 URL: https://svnweb.freebsd.org/changeset/base/314796 Log: Fix atf-sh(3) manpage issues - Fix spelling errors (specifiying -> specifying) [1] - Escape '.' at start of lines using & to tell the roff processor that the line isn't meant to be treated as a command [2]. Bump .Dd for the change MFC after: 1 week Reported by: igor [1], manlint [2] Sponsored by: Dell EMC Isilon Modified: head/contrib/atf/atf-sh/atf-sh.3 Modified: head/contrib/atf/atf-sh/atf-sh.3 ============================================================================== --- head/contrib/atf/atf-sh/atf-sh.3 Mon Mar 6 21:14:20 2017 (r314795) +++ head/contrib/atf/atf-sh/atf-sh.3 Mon Mar 6 21:24:55 2017 (r314796) @@ -22,7 +22,7 @@ .\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR .\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN .\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -.Dd October 13, 2014 +.Dd March 6, 2017 .Dt ATF-SH 3 .Os .Sh NAME @@ -129,7 +129,7 @@ tc2_cleanup() { ... second test case's cleanup ... } -.Ns ... additional test cases ... +\&... additional test cases ... atf_init_test_cases() { atf_add_test_case tc1 @@ -144,7 +144,7 @@ described in .Xr atf-test-case 4 . To define test cases, one can use the .Nm atf_test_case -function, which takes a first parameter specifiying the test case's +function, which takes a first parameter specifying the test case's name and instructs the library to set things up to accept it as a valid test case. The second parameter is optional and, if provided, must be @@ -334,7 +334,7 @@ atf_init_test_cases() { This other example shows how to include a file with extra helper functions in the test program: .Bd -literal -offset indent -.Ns ... definition of test cases ... +\&... definition of test cases ... atf_init_test_cases() { . $(atf_get_srcdir)/helper_functions.sh From owner-svn-src-all@freebsd.org Mon Mar 6 21:26:46 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C824ECFC9A1; Mon, 6 Mar 2017 21:26:46 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 95D4319FF; Mon, 6 Mar 2017 21:26:46 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26LQjQo068573; Mon, 6 Mar 2017 21:26:45 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26LQjGM068572; Mon, 6 Mar 2017 21:26:45 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703062126.v26LQjGM068572@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Mon, 6 Mar 2017 21:26:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314797 - head/contrib/atf/doc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 21:26:46 -0000 Author: ngie Date: Mon Mar 6 21:26:45 2017 New Revision: 314797 URL: https://svnweb.freebsd.org/changeset/base/314797 Log: Fix grammar warning noted by igor Remove surrounding ellipses in e.g. section and add a comma before and after the e.g. reference. MFC after: 1 week Reported by: igor Sponsored by: Dell EMC Isilon Modified: head/contrib/atf/doc/atf-test-case.4 Modified: head/contrib/atf/doc/atf-test-case.4 ============================================================================== --- head/contrib/atf/doc/atf-test-case.4 Mon Mar 6 21:24:55 2017 (r314796) +++ head/contrib/atf/doc/atf-test-case.4 Mon Mar 6 21:26:45 2017 (r314797) @@ -22,7 +22,7 @@ .\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR .\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN .\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -.Dd October 5, 2014 +.Dd March 6, 2017 .Dt ATF-TEST-CASE 4 .Os .Sh NAME @@ -79,8 +79,8 @@ Upon termination, a test case reports a reason describing why the test reported such status. The caller must ensure that the test case really performed the task that its status describes, as the test program may be bogus and therefore providing a -misleading result (e.g. providing a result that indicates success but the -error code of the program says otherwise). +misleading result, e.g., providing a result that indicates success but the +error code of the program says otherwise. .Pp The possible exit status of a test case are one of the following: .Bl -tag -width expectedXfailureXX From owner-svn-src-all@freebsd.org Mon Mar 6 21:30:08 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 17757CFCA14; Mon, 6 Mar 2017 21:30:08 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CDE6F1BFB; Mon, 6 Mar 2017 21:30:07 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26LU6UY068769; Mon, 6 Mar 2017 21:30:06 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26LU6JK068768; Mon, 6 Mar 2017 21:30:06 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703062130.v26LU6JK068768@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Mon, 6 Mar 2017 21:30:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314798 - head/contrib/atf/atf-sh X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 21:30:08 -0000 Author: ngie Date: Mon Mar 6 21:30:06 2017 New Revision: 314798 URL: https://svnweb.freebsd.org/changeset/base/314798 Log: Fix out-of-order sections in atf-sh(1) - `.Op` must be used in the SYNOPSIS section, not the NAME section. - Move ATF_SHELL environment variable description up to first ENVIRONMENT section. Garbage collect the duplicate ENVIRONMENT section. Bump .Dd for the change MFC after: 1 week Reported by: manlint Sponsored by: Dell EMC Isilon Modified: head/contrib/atf/atf-sh/atf-sh.1 Modified: head/contrib/atf/atf-sh/atf-sh.1 ============================================================================== --- head/contrib/atf/atf-sh/atf-sh.1 Mon Mar 6 21:26:45 2017 (r314797) +++ head/contrib/atf/atf-sh/atf-sh.1 Mon Mar 6 21:30:06 2017 (r314798) @@ -22,15 +22,15 @@ .\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR .\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN .\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -.Dd September 27, 2014 +.Dd March 6, 2017 .Dt ATF-SH 1 .Os .Sh NAME .Nm atf-sh -.Op Fl s Ar shell .Nd interpreter for shell-based test programs .Sh SYNOPSIS .Nm +.Op Fl s Ar shell .Ar script .Sh DESCRIPTION .Nm @@ -75,6 +75,8 @@ Should not be overridden other than for Path to the system shell to be used in the generated scripts. Scripts must not rely on this variable being set to select a specific interpreter. +.It Va ATF_SHELL +Path to the system shell to be used in the generated scripts. .El .Sh EXAMPLES Scripts using @@ -98,10 +100,5 @@ option afterwards as a .Bd -literal -offset indent #! /path/to/bin/atf-sh -s/bin/bash .Ed -.Sh ENVIRONMENT -.Bl -tag -width ATFXSHELLXX -compact -.It Va ATF_SHELL -Path to the system shell to be used in the generated scripts. -.El .Sh SEE ALSO .Xr atf-sh 3 From owner-svn-src-all@freebsd.org Mon Mar 6 21:35:35 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 574E0CFCBB8; Mon, 6 Mar 2017 21:35:35 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0A1591037; Mon, 6 Mar 2017 21:35:34 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26LZYxO072722; Mon, 6 Mar 2017 21:35:34 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26LZYAE072721; Mon, 6 Mar 2017 21:35:34 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703062135.v26LZYAE072721@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Mon, 6 Mar 2017 21:35:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314799 - head/contrib/atf/atf-sh X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 21:35:35 -0000 Author: ngie Date: Mon Mar 6 21:35:33 2017 New Revision: 314799 URL: https://svnweb.freebsd.org/changeset/base/314799 Log: Fix manlint issues with atf-check(1) - Use `.Bf Em`/`.Ef` instead of prefixing lines with `.Em`. The forms are equivalent with traditional roff, but unnecessarily verbose. The former form applies the .Em macro to the enclosed block. - Move EXIT_STATUS section down so the section complies with section ordering specified by mdoc(7) and enforced by manlint(1). Bump .Dd for the change MFC after: 1 week Sponsored by: Dell EMC Isilon Modified: head/contrib/atf/atf-sh/atf-check.1 Modified: head/contrib/atf/atf-sh/atf-check.1 ============================================================================== --- head/contrib/atf/atf-sh/atf-check.1 Mon Mar 6 21:30:06 2017 (r314798) +++ head/contrib/atf/atf-sh/atf-check.1 Mon Mar 6 21:35:33 2017 (r314799) @@ -22,7 +22,7 @@ .\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR .\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN .\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -.Dd October 5, 2014 +.Dd March 6, 2017 .Dt ATF-CHECK 1 .Os .Sh NAME @@ -40,10 +40,12 @@ executes a given command and analyzes its results, including exit code, stdout and stderr. .Pp -.Em Test cases must use -.Em Xr atf-sh 3 Ns ' Ns s -.Em Nm atf_check -.Em builtin function instead of calling this utility directly. +.Bf Em +Test cases must use +.Xr atf-sh 3 Ns ' Ns s +.Nm atf_check +builtin function instead of calling this utility directly. +.Ef .Pp In the first synopsis form, .Nm @@ -119,9 +121,6 @@ as a shell command line, executing it wi You should avoid using this flag if at all possible to prevent shell quoting issues. .El -.Sh EXIT STATUS -.Nm -exits 0 on success, and other (unspecified) value on failure. .Sh ENVIRONMENT .Bl -tag -width ATFXSHELLXX -compact .It Va ATF_SHELL @@ -129,6 +128,9 @@ Path to the system shell to be used when .Fl x is given to run commands. .El +.Sh EXIT STATUS +.Nm +exits 0 on success, and other (unspecified) value on failure. .Sh EXAMPLES The following are sample invocations from within a test case. Note that we use the From owner-svn-src-all@freebsd.org Mon Mar 6 21:39:59 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 18F52CFCC99; Mon, 6 Mar 2017 21:39:59 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id DA0971293; Mon, 6 Mar 2017 21:39:58 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26LdvpH072934; Mon, 6 Mar 2017 21:39:57 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26LdvVP072933; Mon, 6 Mar 2017 21:39:57 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703062139.v26LdvVP072933@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Mon, 6 Mar 2017 21:39:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314800 - head/contrib/atf/atf-sh X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 21:39:59 -0000 Author: ngie Date: Mon Mar 6 21:39:57 2017 New Revision: 314800 URL: https://svnweb.freebsd.org/changeset/base/314800 Log: Fix issues with atf-check(1) found by igor and refer to atf-check(1) - Fix typo (specifiying -> specifying) - Add atf-check(1) to SEE ALSO section for completeness. It's mentioned above, but by convention the SEE ALSO section should list all relevant references to other tools and APIs. Bump .Dd for the change MFC after: 1 week Sponsored by: Dell EMC Isilon Modified: head/contrib/atf/atf-sh/atf-sh-api.3 Modified: head/contrib/atf/atf-sh/atf-sh-api.3 ============================================================================== --- head/contrib/atf/atf-sh/atf-sh-api.3 Mon Mar 6 21:35:33 2017 (r314799) +++ head/contrib/atf/atf-sh/atf-sh-api.3 Mon Mar 6 21:39:57 2017 (r314800) @@ -26,7 +26,7 @@ .\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN .\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd March 2, 2014 +.Dd March 6, 2017 .Dt ATF-SH-API 3 .Os .Sh NAME @@ -121,7 +121,7 @@ described in .Xr atf-test-case 4 . To define test cases, one can use the .Fn atf_test_case -function, which takes a first parameter specifiying the test case's +function, which takes a first parameter specifying the test case's name and instructs the library to set things up to accept it as a valid test case. The second parameter is optional and, if provided, must be @@ -335,6 +335,7 @@ grep foo ls || atf_fail "foo file not fo atf_check -s exit:0 -o match:"^foo$" -e empty 'ls' .Ed .Sh SEE ALSO +.Xr atf-check 1 , .Xr atf-sh 1 , .Xr atf-test-program 1 , .Xr atf-test-case 4 From owner-svn-src-all@freebsd.org Mon Mar 6 21:43:48 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BEA7BD000A3; Mon, 6 Mar 2017 21:43:48 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6F34C18BA; Mon, 6 Mar 2017 21:43:48 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26LhlPn076902; Mon, 6 Mar 2017 21:43:47 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26Lhl07076901; Mon, 6 Mar 2017 21:43:47 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703062143.v26Lhl07076901@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Mon, 6 Mar 2017 21:43:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314801 - head/contrib/atf/atf-c X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 21:43:48 -0000 Author: ngie Date: Mon Mar 6 21:43:47 2017 New Revision: 314801 URL: https://svnweb.freebsd.org/changeset/base/314801 Log: Fix igor/manlint issues with atf-c(3) - Remove surrounding ellipses in i.e. section and add a comma before and after the i.e. reference [1]. - Fix typo (specifiying -> specifying) [1]. - Escape '.' at start of lines using & to tell the roff processor that the line isn't meant to be treated as a command [2]. Bump .Dd for the change MFC after: 1 week Reported by: igor [1], manlint [2] Sponsored by: Dell EMC Isilon Modified: head/contrib/atf/atf-c/atf-c.3 Modified: head/contrib/atf/atf-c/atf-c.3 ============================================================================== --- head/contrib/atf/atf-c/atf-c.3 Mon Mar 6 21:39:57 2017 (r314800) +++ head/contrib/atf/atf-c/atf-c.3 Mon Mar 6 21:43:47 2017 (r314801) @@ -22,7 +22,7 @@ .\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR .\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN .\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -.Dd October 13, 2014 +.Dd March 6, 2017 .Dt ATF-C 3 .Os .Sh NAME @@ -203,7 +203,7 @@ ATF provides a C programming interface to implement test programs. C-based test programs follow this template: .Bd -literal -offset indent -.Ns ... C-specific includes go here ... +\&... C-specific includes go here ... #include @@ -237,7 +237,7 @@ ATF_TC_BODY(tc3, tc) ... third test case's body ... } -.Ns ... additional test cases ... +\&... additional test cases ... ATF_TP_ADD_TCS(tp) { @@ -259,7 +259,7 @@ To define test cases, one can use the .Fn ATF_TC_WITH_CLEANUP or the .Fn ATF_TC_WITHOUT_HEAD -macros, which take a single parameter specifiying the test case's name. +macros, which take a single parameter specifying the test case's name. .Fn ATF_TC , requires to define a head and a body for the test case, .Fn ATF_TC_WITH_CLEANUP @@ -299,7 +299,7 @@ library to do it for you. This is done by using the .Fn ATF_TP_ADD_TCS macro, which is passed the name of the object that will hold the test -cases; i.e. the test program instance. +cases, i.e., the test program instance. This name can be whatever you want as long as it is a valid variable identifier. .Pp From owner-svn-src-all@freebsd.org Mon Mar 6 21:45:27 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 38CABD0013D; Mon, 6 Mar 2017 21:45:27 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E7B181AA1; Mon, 6 Mar 2017 21:45:26 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26LjP63077037; Mon, 6 Mar 2017 21:45:25 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26LjP80077036; Mon, 6 Mar 2017 21:45:25 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703062145.v26LjP80077036@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Mon, 6 Mar 2017 21:45:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314802 - head/contrib/atf/atf-c X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 21:45:27 -0000 Author: ngie Date: Mon Mar 6 21:45:25 2017 New Revision: 314802 URL: https://svnweb.freebsd.org/changeset/base/314802 Log: Fix atf-c-api(3) manpage issues - Fix typo (specifiying -> specifying). - Remove surrounding ellipses in i.e. section and add a comma before and after the i.e. reference. Bump .Dd for the change MFC after: 1 week Reported by: igor Sponsored by: Dell EMC Isilon Modified: head/contrib/atf/atf-c/atf-c-api.3 Modified: head/contrib/atf/atf-c/atf-c-api.3 ============================================================================== --- head/contrib/atf/atf-c/atf-c-api.3 Mon Mar 6 21:43:47 2017 (r314801) +++ head/contrib/atf/atf-c/atf-c-api.3 Mon Mar 6 21:45:25 2017 (r314802) @@ -261,7 +261,7 @@ To define test cases, one can use the .Fn ATF_TC_WITH_CLEANUP or the .Fn ATF_TC_WITHOUT_HEAD -macros, which take a single parameter specifiying the test case's name. +macros, which take a single parameter specifying the test case's name. .Fn ATF_TC , requires to define a head and a body for the test case, .Fn ATF_TC_WITH_CLEANUP @@ -301,7 +301,7 @@ library to do it for you. This is done by using the .Fn ATF_TP_ADD_TCS macro, which is passed the name of the object that will hold the test -cases; i.e. the test program instance. +cases, i.e., the test program instance. This name can be whatever you want as long as it is a valid variable identifier. .Pp From owner-svn-src-all@freebsd.org Mon Mar 6 21:50:37 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 266C7D00275; Mon, 6 Mar 2017 21:50:37 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E7A221D42; Mon, 6 Mar 2017 21:50:36 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26LoZAN077287; Mon, 6 Mar 2017 21:50:35 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26LoZ1t077286; Mon, 6 Mar 2017 21:50:35 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703062150.v26LoZ1t077286@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Mon, 6 Mar 2017 21:50:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314803 - head/contrib/atf/atf-c++ X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 21:50:37 -0000 Author: ngie Date: Mon Mar 6 21:50:35 2017 New Revision: 314803 URL: https://svnweb.freebsd.org/changeset/base/314803 Log: Fix typos - specifiying -> specifying - manged -> managed Bump .Dd for the change MFC after: 1 week Reported by: igor Sponsored by: Dell EMC Isilon Modified: head/contrib/atf/atf-c++/atf-c++-api.3 Modified: head/contrib/atf/atf-c++/atf-c++-api.3 ============================================================================== --- head/contrib/atf/atf-c++/atf-c++-api.3 Mon Mar 6 21:45:25 2017 (r314802) +++ head/contrib/atf/atf-c++/atf-c++-api.3 Mon Mar 6 21:50:35 2017 (r314803) @@ -26,7 +26,7 @@ .\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN .\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" -.Dd March 2, 2014 +.Dd March 6, 2017 .Dt ATF-C++-API 3 .Os .Sh NAME @@ -206,7 +206,7 @@ To define test cases, one can use the .Fn ATF_TEST_CASE_WITH_CLEANUP or the .Fn ATF_TEST_CASE_WITHOUT_HEAD -macros, which take a single parameter specifiying the test case's +macros, which take a single parameter specifying the test case's name. .Fn ATF_TEST_CASE , requires to define a head and a body for the test case, @@ -236,7 +236,7 @@ opening and closing brackets. Additionally, the .Fn ATF_TEST_CASE_NAME macro can be used to obtain the name of the class corresponding to a -particular test case, as the name is internally manged by the library to +particular test case, as the name is internally managed by the library to prevent clashes with other user identifiers. Similarly, the .Fn ATF_TEST_CASE_USE From owner-svn-src-all@freebsd.org Mon Mar 6 22:08:49 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 537B2D0055A; Mon, 6 Mar 2017 22:08:49 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 097FC15A9; Mon, 6 Mar 2017 22:08:48 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26M8mpo085246; Mon, 6 Mar 2017 22:08:48 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26M8mDY085245; Mon, 6 Mar 2017 22:08:48 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703062208.v26M8mDY085245@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Mon, 6 Mar 2017 22:08:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314804 - head/contrib/atf/atf-c++ X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 22:08:49 -0000 Author: ngie Date: Mon Mar 6 22:08:47 2017 New Revision: 314804 URL: https://svnweb.freebsd.org/changeset/base/314804 Log: Fix issues noted by igor/manlint - Fix typos [1]: -- manged -> managed -- specifiying -> specifying - Escape '.' at start of lines using & to tell the roff processor that the line isn't meant to be treated as a command [2]. Bump .Dd for the change MFC after: 1 week Reported by: igor [1], manlint [2] Sponsored by: Dell EMC Isilon Modified: head/contrib/atf/atf-c++/atf-c++.3 Modified: head/contrib/atf/atf-c++/atf-c++.3 ============================================================================== --- head/contrib/atf/atf-c++/atf-c++.3 Mon Mar 6 21:50:35 2017 (r314803) +++ head/contrib/atf/atf-c++/atf-c++.3 Mon Mar 6 22:08:47 2017 (r314804) @@ -22,7 +22,7 @@ .\" IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR .\" OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN .\" IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -.Dd October 13, 2014 +.Dd March 6, 2017 .Dt ATF-C++ 3 .Os .Sh NAME @@ -145,10 +145,10 @@ ATF provides a C++ programming interface C++-based test programs follow this template: .Bd -literal -offset indent extern "C" { -.Ns ... C-specific includes go here ... +\&... C-specific includes go here ... } -.Ns ... C++-specific includes go here ... +\&... C++-specific includes go here ... #include @@ -182,7 +182,7 @@ ATF_TEST_CASE_BODY(tc3) ... third test case's body ... } -.Ns ... additional test cases ... +\&... additional test cases ... ATF_INIT_TEST_CASES(tcs) { @@ -202,7 +202,7 @@ To define test cases, one can use the .Fn ATF_TEST_CASE_WITH_CLEANUP or the .Fn ATF_TEST_CASE_WITHOUT_HEAD -macros, which take a single parameter specifiying the test case's +macros, which take a single parameter specifying the test case's name. .Fn ATF_TEST_CASE , requires to define a head and a body for the test case, @@ -232,7 +232,7 @@ opening and closing brackets. Additionally, the .Fn ATF_TEST_CASE_NAME macro can be used to obtain the name of the class corresponding to a -particular test case, as the name is internally manged by the library to +particular test case, as the name is internally managed by the library to prevent clashes with other user identifiers. Similarly, the .Fn ATF_TEST_CASE_USE From owner-svn-src-all@freebsd.org Mon Mar 6 22:18:15 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F38DCD00832; Mon, 6 Mar 2017 22:18:15 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C31241B0B; Mon, 6 Mar 2017 22:18:15 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26MIEhQ089295; Mon, 6 Mar 2017 22:18:14 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26MIEA7089294; Mon, 6 Mar 2017 22:18:14 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703062218.v26MIEA7089294@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Mon, 6 Mar 2017 22:18:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314805 - in head/contrib/atf: atf-c atf-c++ atf-sh X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 22:18:16 -0000 Author: ngie Date: Mon Mar 6 22:18:14 2017 New Revision: 314805 URL: https://svnweb.freebsd.org/changeset/base/314805 Log: Remove *-api(3) manpages removed in ATF 0.21 I overlooked the fact that these manpages had been removed upstream and replaced with their non *-api(3) equivalents. Follow upstream's lead and remove the unused manpages. MFC after: 1 week Sponsored by: Dell EMC Isilon Deleted: head/contrib/atf/atf-c++/atf-c++-api.3 head/contrib/atf/atf-c/atf-c-api.3 head/contrib/atf/atf-sh/atf-sh-api.3 From owner-svn-src-all@freebsd.org Mon Mar 6 22:32:58 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3192DD00E54; Mon, 6 Mar 2017 22:32:58 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0137D17DD; Mon, 6 Mar 2017 22:32:57 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26MWvQs097162; Mon, 6 Mar 2017 22:32:57 GMT (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26MWv91097161; Mon, 6 Mar 2017 22:32:57 GMT (envelope-from glebius@FreeBSD.org) Message-Id: <201703062232.v26MWv91097161@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: glebius set sender to glebius@FreeBSD.org using -f From: Gleb Smirnoff Date: Mon, 6 Mar 2017 22:32:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314806 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 22:32:58 -0000 Author: glebius Date: Mon Mar 6 22:32:56 2017 New Revision: 314806 URL: https://svnweb.freebsd.org/changeset/base/314806 Log: Fix compilation of r314784 on 32 bit. Modified: head/sys/kern/kern_shutdown.c Modified: head/sys/kern/kern_shutdown.c ============================================================================== --- head/sys/kern/kern_shutdown.c Mon Mar 6 22:18:14 2017 (r314805) +++ head/sys/kern/kern_shutdown.c Mon Mar 6 22:32:56 2017 (r314806) @@ -764,7 +764,7 @@ vpanic(const char *fmt, va_list ap) #ifdef SMP printf("cpuid = %d\n", PCPU_GET(cpuid)); #endif - printf("time = %ld\n", time_second); + printf("time = %jd\n", (intmax_t )time_second); #ifdef KDB if (newpanic && trace_on_panic) kdb_backtrace(); From owner-svn-src-all@freebsd.org Mon Mar 6 22:46:51 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2F52DCFB153; Mon, 6 Mar 2017 22:46:51 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F092F1EF1; Mon, 6 Mar 2017 22:46:50 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26MkofQ001847; Mon, 6 Mar 2017 22:46:50 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26MkoYe001846; Mon, 6 Mar 2017 22:46:50 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703062246.v26MkoYe001846@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Mon, 6 Mar 2017 22:46:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314807 - head/lib/libc/tests/nss X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 22:46:51 -0000 Author: ngie Date: Mon Mar 6 22:46:49 2017 New Revision: 314807 URL: https://svnweb.freebsd.org/changeset/base/314807 Log: Move ATF_TC_WITHOUT_HEAD(getgrent) near the testcase it annotates MFC after: 1 week Sponsored by: Dell EMC Isilon Modified: head/lib/libc/tests/nss/getgr_test.c Modified: head/lib/libc/tests/nss/getgr_test.c ============================================================================== --- head/lib/libc/tests/nss/getgr_test.c Mon Mar 6 22:32:56 2017 (r314806) +++ head/lib/libc/tests/nss/getgr_test.c Mon Mar 6 22:46:49 2017 (r314807) @@ -479,6 +479,7 @@ fin: #define SNAPSHOT_FILE "snapshot_grp" +ATF_TC_WITHOUT_HEAD(getgrent); ATF_TC_BODY(getgrent, tc) { @@ -530,7 +531,6 @@ ATF_TC_BODY(getgrnam_with_snapshot, tc) ATF_REQUIRE(run_tests(SNAPSHOT_FILE, TEST_GETGRNAM) == 0); } -ATF_TC_WITHOUT_HEAD(getgrent); ATF_TP_ADD_TCS(tp) { From owner-svn-src-all@freebsd.org Mon Mar 6 23:01:40 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AE2BECFB7E8; Mon, 6 Mar 2017 23:01:40 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from cell.glebi.us (glebi.us [96.95.210.25]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "cell.glebi.us", Issuer "cell.glebi.us" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 95470181F; Mon, 6 Mar 2017 23:01:40 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from cell.glebi.us (localhost [127.0.0.1]) by cell.glebi.us (8.15.2/8.15.2) with ESMTPS id v26N1cWK081937 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Mon, 6 Mar 2017 15:01:38 -0800 (PST) (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by cell.glebi.us (8.15.2/8.15.2/Submit) id v26N1caE081936; Mon, 6 Mar 2017 15:01:38 -0800 (PST) (envelope-from glebius@FreeBSD.org) X-Authentication-Warning: cell.glebi.us: glebius set sender to glebius@FreeBSD.org using -f Date: Mon, 6 Mar 2017 15:01:38 -0800 From: Gleb Smirnoff To: Kristof Provost Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: Re: svn commit: r314702 - stable/11/sys/netpfil/pf Message-ID: <20170306230138.GD1044@FreeBSD.org> References: <201703051314.v25DEIj6076074@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201703051314.v25DEIj6076074@repo.freebsd.org> User-Agent: Mutt/1.7.2 (2016-11-26) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 23:01:40 -0000 Kristof, this seems accidentially committed to stable branch. Please add it to head. And thanks a lot for the fix. Very likely this is my mistake back from 2012. On Sun, Mar 05, 2017 at 01:14:18PM +0000, Kristof Provost wrote: K> Author: kp K> Date: Sun Mar 5 13:14:18 2017 K> New Revision: 314702 K> URL: https://svnweb.freebsd.org/changeset/base/314702 K> K> Log: K> pf: Fix a crash in low-memory situations K> K> If the call to pf_state_key_clone() in pf_get_translation() fails (i.e. there's K> no more memory for it) it frees skp. This is wrong, because skp is a K> pf_state_key **, so we need to free *skp, as is done later in the function. K> Getting it wrong means we try to free a stack variable of the calling K> pf_test_rule() function, and we panic. K> K> Modified: K> stable/11/sys/netpfil/pf/pf_lb.c K> K> Modified: stable/11/sys/netpfil/pf/pf_lb.c K> ============================================================================== K> --- stable/11/sys/netpfil/pf/pf_lb.c Sun Mar 5 12:06:45 2017 (r314701) K> +++ stable/11/sys/netpfil/pf/pf_lb.c Sun Mar 5 13:14:18 2017 (r314702) K> @@ -553,7 +553,7 @@ pf_get_translation(struct pf_pdesc *pd, K> return (NULL); K> *nkp = pf_state_key_clone(*skp); K> if (*nkp == NULL) { K> - uma_zfree(V_pf_state_key_z, skp); K> + uma_zfree(V_pf_state_key_z, *skp); K> *skp = NULL; K> return (NULL); K> } K> _______________________________________________ K> svn-src-all@freebsd.org mailing list K> https://lists.freebsd.org/mailman/listinfo/svn-src-all K> To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org" -- Totus tuus, Glebius. From owner-svn-src-all@freebsd.org Mon Mar 6 23:02:37 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6282BCFBA12; Mon, 6 Mar 2017 23:02:37 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 26FCB1BBF; Mon, 6 Mar 2017 23:02:37 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26N2aLh010004; Mon, 6 Mar 2017 23:02:36 GMT (envelope-from sjg@FreeBSD.org) Received: (from sjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26N2Xt6009979; Mon, 6 Mar 2017 23:02:33 GMT (envelope-from sjg@FreeBSD.org) Message-Id: <201703062302.v26N2Xt6009979@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sjg set sender to sjg@FreeBSD.org using -f From: "Simon J. Gerraty" Date: Mon, 6 Mar 2017 23:02:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314808 - in head: contrib/bmake contrib/bmake/PSD.doc contrib/bmake/mk contrib/bmake/unit-tests usr.bin/bmake X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 23:02:37 -0000 Author: sjg Date: Mon Mar 6 23:02:33 2017 New Revision: 314808 URL: https://svnweb.freebsd.org/changeset/base/314808 Log: Merge bmake-20170301 Modified: head/contrib/bmake/ChangeLog head/contrib/bmake/Makefile head/contrib/bmake/PSD.doc/tutorial.ms head/contrib/bmake/bmake.1 head/contrib/bmake/bmake.cat1 head/contrib/bmake/dir.c head/contrib/bmake/main.c head/contrib/bmake/make.1 head/contrib/bmake/meta.c head/contrib/bmake/mk/ChangeLog head/contrib/bmake/mk/dirdeps.mk head/contrib/bmake/mk/dpadd.mk head/contrib/bmake/mk/install-mk head/contrib/bmake/mk/meta.stage.mk head/contrib/bmake/mk/meta2deps.py head/contrib/bmake/mk/prog.mk head/contrib/bmake/mk/subdir.mk head/contrib/bmake/mk/sys.mk head/contrib/bmake/mk/sys.vars.mk head/contrib/bmake/os.sh head/contrib/bmake/parse.c head/contrib/bmake/unit-tests/varmisc.exp head/contrib/bmake/unit-tests/varmisc.mk head/contrib/bmake/var.c head/usr.bin/bmake/Makefile Directory Properties: head/contrib/bmake/ (props changed) Modified: head/contrib/bmake/ChangeLog ============================================================================== --- head/contrib/bmake/ChangeLog Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/ChangeLog Mon Mar 6 23:02:33 2017 (r314808) @@ -1,3 +1,32 @@ +2017-03-01 Simon J. Gerraty + + * Makefile (_MAKE_VERSION): 20170301 + Merge with NetBSD make, pick up + o main.c: use -C arg as is rather than getcwd() + if they identify the same directory. + o parse.c: ensure loadfile buffer is \n terminated in non-mmap case + +2017-02-01 Simon J. Gerraty + + * Makefile (_MAKE_VERSION): 20170201 + Merge with NetBSD make, pick up + o var.c: allow :_=var and avoid use of special context. + +2017-01-30 Simon J. Gerraty + + * Makefile (_MAKE_VERSION): 20170130 + Merge with NetBSD make, pick up + o var.c: add :range and :_ + o main.c: partially initialize Dir_* before MainParseArgs() + can be called. + If -V, skip Main_ExportMAKEFLAGS() + +2017-01-14 Simon J. Gerraty + + * Makefile (_MAKE_VERSION): 20170114 + Merge with NetBSD make, pick up + o var.c: allow specifying the utc value used by :{gm,local}time + 2016-12-12 Simon J. Gerraty * Makefile (_MAKE_VERSION): 20161212 Modified: head/contrib/bmake/Makefile ============================================================================== --- head/contrib/bmake/Makefile Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/Makefile Mon Mar 6 23:02:33 2017 (r314808) @@ -1,7 +1,7 @@ -# $Id: Makefile,v 1.77 2016/12/12 07:34:19 sjg Exp $ +# $Id: Makefile,v 1.81 2017/03/01 17:01:23 sjg Exp $ # Base version on src date -_MAKE_VERSION= 20161212 +_MAKE_VERSION= 20170301 PROG= bmake Modified: head/contrib/bmake/PSD.doc/tutorial.ms ============================================================================== --- head/contrib/bmake/PSD.doc/tutorial.ms Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/PSD.doc/tutorial.ms Mon Mar 6 23:02:33 2017 (r314808) @@ -1,4 +1,4 @@ -.\" $NetBSD: tutorial.ms,v 1.12 2014/09/30 21:33:14 christos Exp $ +.\" $NetBSD: tutorial.ms,v 1.13 2017/03/01 13:05:11 kre Exp $ .\" Copyright (c) 1988, 1989, 1993 .\" The Regents of the University of California. All rights reserved. .\" @@ -117,6 +117,15 @@ .de No .br .ne 0.5i +.ie n \{\ +.nr g3 \w'NOTE ' +.po -\\n(g3u +.br +NOTE +.br +.po +\\n(g3u +.\} +.el \{\ .po -0.5i .br .mk @@ -148,12 +157,14 @@ .rt .ft \\n(g3 .ps \\n(g4 +.\} .. .de Bp .ie !\\n(.$ .IP \(bu 2 .el .IP "\&" 2 .. -.po +.3i +.ie n .po +\w'NOTE 'u +.el .po +.3i .TL PMake \*- A Tutorial .AU Modified: head/contrib/bmake/bmake.1 ============================================================================== --- head/contrib/bmake/bmake.1 Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/bmake.1 Mon Mar 6 23:02:33 2017 (r314808) @@ -1,4 +1,4 @@ -.\" $NetBSD: make.1,v 1.263 2016/08/26 23:37:54 dholland Exp $ +.\" $NetBSD: make.1,v 1.266 2017/02/01 18:39:27 sjg Exp $ .\" .\" Copyright (c) 1990, 1993 .\" The Regents of the University of California. All rights reserved. @@ -29,7 +29,7 @@ .\" .\" from: @(#)make.1 8.4 (Berkeley) 3/19/94 .\" -.Dd August 26, 2016 +.Dd February 1, 2017 .Dt BMAKE 1 .Os .Sh NAME @@ -1205,18 +1205,28 @@ safely through recursive invocations of .Nm . .It Cm \&:R Replaces each word in the variable with everything but its suffix. -.It Cm \&:gmtime +.It Cm \&:range[=count] +The value is an integer sequence representing the words of the original +value, or the supplied +.Va count . +.It Cm \&:gmtime[=utc] The value is a format string for .Xr strftime 3 , -using the current +using .Xr gmtime 3 . +If a +.Va utc +value is not provided or is 0, the current time is used. .It Cm \&:hash Compute a 32-bit hash of the value and encode it as hex digits. -.It Cm \&:localtime +.It Cm \&:localtime[=utc] The value is a format string for .Xr strftime 3 , -using the current +using .Xr localtime 3 . +If a +.Va utc +value is not provided or is 0, the current time is used. .It Cm \&:tA Attempt to convert variable to an absolute path using .Xr realpath 3 , @@ -1416,6 +1426,27 @@ For example. .Pp However a single character variable is often more readable: .Dl ${MAKE_PRINT_VAR_ON_ERROR:@v@$v='${$v}'${.newline}@} +.It Cm \&:_[=var] +Save the current variable value in +.Ql $_ +or the named +.Va var +for later reference. +Example usage: +.Bd -literal -offset indent +M_cmpv.units = 1 1000 1000000 +M_cmpv = S,., ,g:_:range:@i@+ $${_:[-$$i]} \&\\ +\\* $${M_cmpv.units:[$$i]}@:S,^,expr 0 ,1:sh + +.Dv .if ${VERSION:${M_cmpv}} < ${3.1.12:L:${M_cmpv}} + +.Ed +Here +.Ql $_ +is used to save the result of the +.Ql :S +modifier which is later referenced using the index values from +.Ql :range . .It Cm \&:U Ns Ar newval If the variable is undefined .Ar newval Modified: head/contrib/bmake/bmake.cat1 ============================================================================== --- head/contrib/bmake/bmake.cat1 Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/bmake.cat1 Mon Mar 6 23:02:33 2017 (r314808) @@ -789,16 +789,20 @@ VVAARRIIAABBLLEE AASSSSIIGG ::RR Replaces each word in the variable with everything but its suffix. - ::ggmmttiimmee - The value is a format string for strftime(3), using the current - gmtime(3). + ::rraannggee[[==ccoouunntt]] + The value is an integer sequence representing the words of the orig- + inal value, or the supplied _c_o_u_n_t. + + ::ggmmttiimmee[[==uuttcc]] + The value is a format string for strftime(3), using gmtime(3). If a + _u_t_c value is not provided or is 0, the current time is used. ::hhaasshh Compute a 32-bit hash of the value and encode it as hex digits. - ::llooccaallttiimmee - The value is a format string for strftime(3), using the current - localtime(3). + ::llooccaallttiimmee[[==uuttcc]] + The value is a format string for strftime(3), using localtime(3). + If a _u_t_c value is not provided or is 0, the current time is used. ::ttAA Attempt to convert variable to an absolute path using realpath(3), if that fails, the value is unchanged. @@ -899,6 +903,19 @@ VVAARRIIAABBLLEE AASSSSIIGG However a single character variable is often more readable: ${MAKE_PRINT_VAR_ON_ERROR:@v@$v='${$v}'${.newline}@} + ::__[[==vvaarr]] + Save the current variable value in `$_' or the named _v_a_r for later + reference. Example usage: + + M_cmpv.units = 1 1000 1000000 + M_cmpv = S,., ,g:_:range:@i@+ $${_:[-$$i]} \ + \* $${M_cmpv.units:[$$i]}@:S,^,expr 0 ,1:sh + + .if ${VERSION:${M_cmpv}} < ${3.1.12:L:${M_cmpv}} + + Here `$_' is used to save the result of the `:S' modifier which is + later referenced using the index values from `:range'. + ::UU_n_e_w_v_a_l If the variable is undefined _n_e_w_v_a_l is the value. If the variable is defined, the existing value is returned. This is another ODE @@ -1506,4 +1523,4 @@ BBUUGGSS There is no way of escaping a space character in a filename. -NetBSD 5.1 August 26, 2016 NetBSD 5.1 +NetBSD 7.1_RC1 February 1, 2017 NetBSD 7.1_RC1 Modified: head/contrib/bmake/dir.c ============================================================================== --- head/contrib/bmake/dir.c Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/dir.c Mon Mar 6 23:02:33 2017 (r314808) @@ -1,4 +1,4 @@ -/* $NetBSD: dir.c,v 1.68 2016/06/07 00:40:00 sjg Exp $ */ +/* $NetBSD: dir.c,v 1.69 2017/01/31 06:54:23 sjg Exp $ */ /* * Copyright (c) 1988, 1989, 1990 The Regents of the University of California. @@ -70,14 +70,14 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: dir.c,v 1.68 2016/06/07 00:40:00 sjg Exp $"; +static char rcsid[] = "$NetBSD: dir.c,v 1.69 2017/01/31 06:54:23 sjg Exp $"; #else #include #ifndef lint #if 0 static char sccsid[] = "@(#)dir.c 8.2 (Berkeley) 1/2/94"; #else -__RCSID("$NetBSD: dir.c,v 1.68 2016/06/07 00:40:00 sjg Exp $"); +__RCSID("$NetBSD: dir.c,v 1.69 2017/01/31 06:54:23 sjg Exp $"); #endif #endif /* not lint */ #endif @@ -346,11 +346,13 @@ cached_lstat(const char *pathname, void void Dir_Init(const char *cdname) { - dirSearchPath = Lst_Init(FALSE); - openDirectories = Lst_Init(FALSE); - Hash_InitTable(&mtimes, 0); - Hash_InitTable(&lmtimes, 0); - + if (!cdname) { + dirSearchPath = Lst_Init(FALSE); + openDirectories = Lst_Init(FALSE); + Hash_InitTable(&mtimes, 0); + Hash_InitTable(&lmtimes, 0); + return; + } Dir_InitCur(cdname); dotLast = bmake_malloc(sizeof(Path)); Modified: head/contrib/bmake/main.c ============================================================================== --- head/contrib/bmake/main.c Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/main.c Mon Mar 6 23:02:33 2017 (r314808) @@ -1,4 +1,4 @@ -/* $NetBSD: main.c,v 1.254 2016/12/10 23:12:39 christos Exp $ */ +/* $NetBSD: main.c,v 1.257 2017/02/08 17:47:36 christos Exp $ */ /* * Copyright (c) 1988, 1989, 1990, 1993 @@ -69,7 +69,7 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: main.c,v 1.254 2016/12/10 23:12:39 christos Exp $"; +static char rcsid[] = "$NetBSD: main.c,v 1.257 2017/02/08 17:47:36 christos Exp $"; #else #include #ifndef lint @@ -81,7 +81,7 @@ __COPYRIGHT("@(#) Copyright (c) 1988, 19 #if 0 static char sccsid[] = "@(#)main.c 8.3 (Berkeley) 3/19/94"; #else -__RCSID("$NetBSD: main.c,v 1.254 2016/12/10 23:12:39 christos Exp $"); +__RCSID("$NetBSD: main.c,v 1.257 2017/02/08 17:47:36 christos Exp $"); #endif #endif /* not lint */ #endif @@ -389,6 +389,7 @@ MainParseArgs(int argc, char **argv) int arginc; char *argvalue; const char *getopt_def; + struct stat sa, sb; char *optscan; Boolean inOption, dashDash = FALSE; char found_path[MAXPATHLEN + 1]; /* for searching for sys.mk */ @@ -457,6 +458,11 @@ rearg: (void)fprintf(stderr, "%s: %s.\n", progname, strerror(errno)); exit(2); } + if (stat(argvalue, &sa) != -1 && + stat(curdir, &sb) != -1 && + sa.st_ino == sb.st_ino && + sa.st_dev == sb.st_dev) + strncpy(curdir, argvalue, MAXPATHLEN); ignorePWD = TRUE; break; case 'D': @@ -1073,6 +1079,8 @@ main(int argc, char **argv) #ifdef USE_META meta_init(); #endif + Dir_Init(NULL); /* Dir_* safe to call from MainParseArgs */ + /* * First snag any flags out of the MAKE environment variable. * (Note this is *not* MAKEFLAGS since /bin/make uses that and it's @@ -1314,8 +1322,9 @@ main(int argc, char **argv) fprintf(debug_file, "job_pipe %d %d, maxjobs %d, tokens %d, compat %d\n", jp_0, jp_1, maxJobs, maxJobTokens, compatMake); - Main_ExportMAKEFLAGS(TRUE); /* initial export */ - + if (!printVars) + Main_ExportMAKEFLAGS(TRUE); /* initial export */ + /* * For compatibility, look at the directories in the VPATH variable * and add them to the search path, if the variable is defined. The @@ -1933,7 +1942,7 @@ PrintAddr(void *a, void *b) static int -addErrorCMD(void *cmdp, void *gnp) +addErrorCMD(void *cmdp, void *gnp MAKE_ATTR_UNUSED) { if (cmdp == NULL) return 1; /* stop */ Modified: head/contrib/bmake/make.1 ============================================================================== --- head/contrib/bmake/make.1 Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/make.1 Mon Mar 6 23:02:33 2017 (r314808) @@ -1,4 +1,4 @@ -.\" $NetBSD: make.1,v 1.263 2016/08/26 23:37:54 dholland Exp $ +.\" $NetBSD: make.1,v 1.266 2017/02/01 18:39:27 sjg Exp $ .\" .\" Copyright (c) 1990, 1993 .\" The Regents of the University of California. All rights reserved. @@ -29,7 +29,7 @@ .\" .\" from: @(#)make.1 8.4 (Berkeley) 3/19/94 .\" -.Dd August 26, 2016 +.Dd February 1, 2017 .Dt MAKE 1 .Os .Sh NAME @@ -1216,18 +1216,28 @@ safely through recursive invocations of .Nm . .It Cm \&:R Replaces each word in the variable with everything but its suffix. -.It Cm \&:gmtime +.It Cm \&:range[=count] +The value is an integer sequence representing the words of the original +value, or the supplied +.Va count . +.It Cm \&:gmtime[=utc] The value is a format string for .Xr strftime 3 , -using the current +using .Xr gmtime 3 . +If a +.Va utc +value is not provided or is 0, the current time is used. .It Cm \&:hash Compute a 32-bit hash of the value and encode it as hex digits. -.It Cm \&:localtime +.It Cm \&:localtime[=utc] The value is a format string for .Xr strftime 3 , -using the current +using .Xr localtime 3 . +If a +.Va utc +value is not provided or is 0, the current time is used. .It Cm \&:tA Attempt to convert variable to an absolute path using .Xr realpath 3 , @@ -1427,6 +1437,27 @@ For example. .Pp However a single character variable is often more readable: .Dl ${MAKE_PRINT_VAR_ON_ERROR:@v@$v='${$v}'${.newline}@} +.It Cm \&:_[=var] +Save the current variable value in +.Ql $_ +or the named +.Va var +for later reference. +Example usage: +.Bd -literal -offset indent +M_cmpv.units = 1 1000 1000000 +M_cmpv = S,., ,g:_:range:@i@+ $${_:[-$$i]} \&\\ +\\* $${M_cmpv.units:[$$i]}@:S,^,expr 0 ,1:sh + +.Dv .if ${VERSION:${M_cmpv}} < ${3.1.12:L:${M_cmpv}} + +.Ed +Here +.Ql $_ +is used to save the result of the +.Ql :S +modifier which is later referenced using the index values from +.Ql :range . .It Cm \&:U Ns Ar newval If the variable is undefined .Ar newval Modified: head/contrib/bmake/meta.c ============================================================================== --- head/contrib/bmake/meta.c Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/meta.c Mon Mar 6 23:02:33 2017 (r314808) @@ -241,7 +241,7 @@ eat_dots(char *buf, size_t bufsz, int do } static char * -meta_name(struct GNode *gn, char *mname, size_t mnamelen, +meta_name(char *mname, size_t mnamelen, const char *dname, const char *tname, const char *cwd) @@ -396,7 +396,7 @@ printCMD(void *cmdp, void *mfpp) * Do we need/want a .meta file ? */ static Boolean -meta_needed(GNode *gn, const char *dname, const char *tname, +meta_needed(GNode *gn, const char *dname, char *objdir, int verbose) { struct stat fs; @@ -476,7 +476,7 @@ meta_create(BuildMon *pbm, GNode *gn) tname = Var_Value(TARGET, gn, &p[i++]); /* if this succeeds objdir is realpath of dname */ - if (!meta_needed(gn, dname, tname, objdir, TRUE)) + if (!meta_needed(gn, dname, objdir, TRUE)) goto out; dname = objdir; @@ -502,7 +502,7 @@ meta_create(BuildMon *pbm, GNode *gn) /* Don't create meta data. */ goto out; - fname = meta_name(gn, pbm->meta_fname, sizeof(pbm->meta_fname), + fname = meta_name(pbm->meta_fname, sizeof(pbm->meta_fname), dname, tname, objdir); #ifdef DEBUG_META_MODE @@ -1049,7 +1049,7 @@ meta_oodate(GNode *gn, Boolean oodate) tname = Var_Value(TARGET, gn, &pa[i++]); /* if this succeeds fname3 is realpath of dname */ - if (!meta_needed(gn, dname, tname, fname3, FALSE)) + if (!meta_needed(gn, dname, fname3, FALSE)) goto oodate_out; dname = fname3; @@ -1063,7 +1063,7 @@ meta_oodate(GNode *gn, Boolean oodate) */ Make_DoAllVar(gn); - meta_name(gn, fname, sizeof(fname), dname, tname, dname); + meta_name(fname, sizeof(fname), dname, tname, dname); #ifdef DEBUG_META_MODE if (DEBUG(META)) Modified: head/contrib/bmake/mk/ChangeLog ============================================================================== --- head/contrib/bmake/mk/ChangeLog Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/mk/ChangeLog Mon Mar 6 23:02:33 2017 (r314808) @@ -1,3 +1,34 @@ +2017-03-01 Simon J. Gerraty + + * install-mk (MK_VERSION): 20170301 + + * dirdeps.mk (_build_all_dirs): update this outside test for empty + DIRDEPS. + + * meta.stage.mk: allow multiple inclusion to the extent it makes + sense. + +2017-02-14 Simon J. Gerraty + + * prog.mk (install_links): depends on realinstall + +2017-02-12 Simon J. Gerraty + + * install-mk (MK_VERSION): 20170212 + + * dpadd.mk: avoid applying :T:R twice to DPLIBS entries + +2017-01-30 Simon J. Gerraty + + * install-mk (MK_VERSION): 20170130 + + * dirdeps.mk: use :range if we can. + + * sys.vars.mk: provide M_cmpv if MAKE_VERSION >= 20170130 + + * meta2deps.py: clean paths without using realpath() where possible. + fix sort_unique. + 2016-12-12 Simon J. Gerraty * install-mk (MK_VERSION): 20161212 Modified: head/contrib/bmake/mk/dirdeps.mk ============================================================================== --- head/contrib/bmake/mk/dirdeps.mk Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/mk/dirdeps.mk Mon Mar 6 23:02:33 2017 (r314808) @@ -1,4 +1,4 @@ -# $Id: dirdeps.mk,v 1.84 2016/11/27 02:44:34 sjg Exp $ +# $Id: dirdeps.mk,v 1.86 2017/03/01 20:26:51 sjg Exp $ # Copyright (c) 2010-2013, Juniper Networks, Inc. # All rights reserved. @@ -197,7 +197,9 @@ DEP_$v ?= ${$v} # we compute below are fully qualified wrt DEP_TARGET_SPEC. # The makefiles may only partially specify (eg. MACHINE only), # so we need to construct a set of modifiers to fill in the gaps. -.if ${TARGET_SPEC_VARS:[#]} > 10 +.if ${MAKE_VERSION} >= 20170130 +_tspec_x := ${TARGET_SPEC_VARS:range} +.elif ${TARGET_SPEC_VARS:[#]} > 10 # seriously? better have jot(1) or equivalent to produce suitable sequence _tspec_x := ${${JOT:Ujot} ${TARGET_SPEC_VARS:[#]}:L:sh} .else @@ -612,11 +614,11 @@ _build_dirs += \ # qualify everything now _build_dirs := ${_build_dirs:${M_dep_qual_fixes:ts:}:O:u} +.endif # empty DIRDEPS + _build_all_dirs += ${_build_dirs} _build_all_dirs := ${_build_all_dirs:O:u} -.endif # empty DIRDEPS - # Normally if doing make -V something, # we do not want to waste time chasing DIRDEPS # but if we want to count the number of Makefile.depend* read, we do. Modified: head/contrib/bmake/mk/dpadd.mk ============================================================================== --- head/contrib/bmake/mk/dpadd.mk Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/mk/dpadd.mk Mon Mar 6 23:02:33 2017 (r314808) @@ -1,4 +1,4 @@ -# $Id: dpadd.mk,v 1.22 2016/05/31 23:30:59 sjg Exp $ +# $Id: dpadd.mk,v 1.23 2017/02/13 16:46:01 sjg Exp $ # # @(#) Copyright (c) 2004, Simon J. Gerraty # @@ -49,11 +49,11 @@ CXXFLAGS_LAST += ${CXXFLAGS_DEBUG_XTRA} # DPLIBS helps us ensure we keep DPADD and LDADD in sync DPLIBS+= ${DPLIBS_LAST} DPADD+= ${DPLIBS:N-*} -.for __lib in ${DPLIBS:T:R} +.for __lib in ${DPLIBS} .if "${_lib:M-*}" != "" LDADD += ${__lib} .else -LDADD += ${LDADD_${__lib}:U${__lib:T:R:S/lib/-l/:C/\.so.*//}} +LDADD += ${LDADD_${__lib:T:R}:U${__lib:T:R:S/lib/-l/:C/\.so.*//}} .endif .endfor Modified: head/contrib/bmake/mk/install-mk ============================================================================== --- head/contrib/bmake/mk/install-mk Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/mk/install-mk Mon Mar 6 23:02:33 2017 (r314808) @@ -55,7 +55,7 @@ # Simon J. Gerraty # RCSid: -# $Id: install-mk,v 1.135 2016/12/12 19:07:42 sjg Exp $ +# $Id: install-mk,v 1.138 2017/03/01 20:26:51 sjg Exp $ # # @(#) Copyright (c) 1994 Simon J. Gerraty # @@ -70,7 +70,7 @@ # sjg@crufty.net # -MK_VERSION=20161212 +MK_VERSION=20170301 OWNER= GROUP= MODE=444 Modified: head/contrib/bmake/mk/meta.stage.mk ============================================================================== --- head/contrib/bmake/mk/meta.stage.mk Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/mk/meta.stage.mk Mon Mar 6 23:02:33 2017 (r314808) @@ -1,6 +1,6 @@ -# $Id: meta.stage.mk,v 1.47 2016/12/07 23:07:49 sjg Exp $ +# $Id: meta.stage.mk,v 1.48 2017/03/01 22:48:07 sjg Exp $ # -# @(#) Copyright (c) 2011, Simon J. Gerraty +# @(#) Copyright (c) 2011-2017, Simon J. Gerraty # # This file is provided in the hope that it will # be of use. There is absolutely NO WARRANTY. @@ -14,7 +14,7 @@ # .if !target(__${.PARSEFILE}__) -__${.PARSEFILE}__: +# the guard target is defined later .if ${.MAKE.DEPENDFILE_PREFERENCE:U${.MAKE.DEPENDFILE}:M*.${MACHINE}} != "" # this is generally safer anyway @@ -127,26 +127,17 @@ STAGE_AS_SCRIPT = ${STAGE_DIRDEP_SCRIPT} done; :; } # this is simple, a list of the "staged" files depends on this, -_STAGE_BASENAME_USE: .USE ${.TARGET:T} +_STAGE_BASENAME_USE: .USE .dirdep ${.TARGET:T} @${STAGE_FILE_SCRIPT}; StageFiles ${.TARGET:H:${STAGE_DIR_FILTER}} ${.TARGET:T} -_STAGE_AS_BASENAME_USE: .USE ${.TARGET:T} +_STAGE_AS_BASENAME_USE: .USE .dirdep ${.TARGET:T} @${STAGE_AS_SCRIPT}; StageAs ${.TARGET:H:${STAGE_DIR_FILTER}} ${.TARGET:T} ${STAGE_AS_${.TARGET:T}:U${.TARGET:T}} -.if !empty(STAGE_INCSDIR) -STAGE_TARGETS += stage_incs -STAGE_INCS ?= ${.ALLSRC:N.dirdep:Nstage_*} stage_includes: stage_incs stage_incs: .dirdep @${STAGE_FILE_SCRIPT}; StageFiles ${STAGE_INCSDIR:${STAGE_DIR_FILTER}} ${STAGE_INCS} @touch $@ -.endif - -.if !empty(STAGE_LIBDIR) -STAGE_TARGETS += stage_libs - -STAGE_LIBS ?= ${.ALLSRC:N.dirdep:Nstage_*} stage_libs: .dirdep @${STAGE_FILE_SCRIPT}; StageFiles ${STAGE_LIBDIR:${STAGE_DIR_FILTER}} ${STAGE_LIBS} @@ -159,6 +150,18 @@ stage_libs: .dirdep .endif .endif @touch $@ + +.endif # first time + + +.if !empty(STAGE_INCSDIR) +STAGE_TARGETS += stage_incs +STAGE_INCS ?= ${.ALLSRC:N.dirdep:Nstage_*} +.endif + +.if !empty(STAGE_LIBDIR) +STAGE_TARGETS += stage_libs +STAGE_LIBS ?= ${.ALLSRC:N.dirdep:Nstage_*} .endif .if !empty(STAGE_DIR) @@ -184,6 +187,8 @@ STAGE_LINKS_DIR.$s ?= ${STAGE_OBJTOP} STAGE_SYMLINKS_DIR.$s ?= ${STAGE_OBJTOP} STAGE_TARGETS += stage_files +.if !target(.stage_files.$s) +.stage_files.$s: .if $s != "_default" stage_files: stage_files.$s stage_files.$s: .dirdep @@ -192,8 +197,11 @@ stage_files: .dirdep .endif @${STAGE_FILE_SCRIPT}; StageFiles ${FLAGS.$@} ${STAGE_FILES_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_FILES.$s} @touch $@ +.endif STAGE_TARGETS += stage_links +.if !target(.stage_links.$s) +.stage_links.$s: .if $s != "_default" stage_links: stage_links.$s stage_links.$s: .dirdep @@ -202,8 +210,11 @@ stage_links: .dirdep .endif @${STAGE_LINKS_SCRIPT}; StageLinks ${STAGE_LINKS_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_LINKS.$s} @touch $@ +.endif STAGE_TARGETS += stage_symlinks +.if !target(.stage_symlinks.$s) +.stage_symlinks.$s: .if $s != "_default" stage_symlinks: stage_symlinks.$s stage_symlinks.$s: .dirdep @@ -212,6 +223,7 @@ stage_symlinks: .dirdep .endif @${STAGE_LINKS_SCRIPT}; StageLinks -s ${STAGE_SYMLINKS_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_SYMLINKS.$s} @touch $@ +.endif .endfor .endif @@ -231,22 +243,32 @@ STAGE_TARGETS += stage_as stage_as_and_s STAGE_AS.$s ?= ${.ALLSRC:N.dirdep:Nstage_*} STAGE_AS_AND_SYMLINK.$s ?= ${.ALLSRC:N.dirdep:Nstage_*} +.if !target(.stage_as.$s) +.stage_as.$s: stage_as: stage_as.$s stage_as.$s: .dirdep @${STAGE_AS_SCRIPT}; StageAs ${FLAGS.$@} ${STAGE_FILES_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_AS.$s:@f@$f ${STAGE_AS_${f:tA}:U${STAGE_AS_${f:T}:U${f:T}}}@} @touch $@ +.endif +.if !target(.stage_as_and_symlink.$s) +.stage_as_and_symlink.$s: stage_as_and_symlink: stage_as_and_symlink.$s stage_as_and_symlink.$s: .dirdep @${STAGE_AS_SCRIPT}; StageAs ${FLAGS.$@} ${STAGE_FILES_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_AS_AND_SYMLINK.$s:@f@$f ${STAGE_AS_${f:tA}:U${STAGE_AS_${f:T}:U${f:T}}}@} @${STAGE_LINKS_SCRIPT}; StageLinks -s ${STAGE_FILES_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_AS_AND_SYMLINK.$s:@f@${STAGE_AS_${f:tA}:U${STAGE_AS_${f:T}:U${f:T}}} $f@} @touch $@ +.endif .endfor .endif CLEANFILES += ${STAGE_TARGETS} stage_incs stage_includes +# this lot also only makes sense the first time... +.if !target(__${.PARSEFILE}__) +__${.PARSEFILE}__: + # stage_*links usually needs to follow any others. # for non-jobs mode the order here matters staging: ${STAGE_TARGETS:N*_links} ${STAGE_TARGETS:M*_links} Modified: head/contrib/bmake/mk/meta2deps.py ============================================================================== --- head/contrib/bmake/mk/meta2deps.py Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/mk/meta2deps.py Mon Mar 6 23:02:33 2017 (r314808) @@ -37,7 +37,7 @@ We only pay attention to a subset of the """ RCSid: - $Id: meta2deps.py,v 1.22 2016/12/12 19:07:42 sjg Exp $ + $Id: meta2deps.py,v 1.24 2017/02/08 22:17:10 sjg Exp $ Copyright (c) 2011-2013, Juniper Networks, Inc. All rights reserved. @@ -103,20 +103,36 @@ def resolve(path, cwd, last_dir=None, de return p return None +def cleanpath(path): + """cleanup path without using realpath(3)""" + if path.startswith('/'): + r = '/' + else: + r = '' + p = [] + w = path.split('/') + for d in w: + if not d or d == '.': + continue + if d == '..': + p.pop() + continue + p.append(d) + + return r + '/'.join(p) + def abspath(path, cwd, last_dir=None, debug=0, debug_out=sys.stderr): """ Return an absolute path, resolving via cwd or last_dir if needed. - this gets called a lot, so we try to avoid calling realpath - until we know we have something. + this gets called a lot, so we try to avoid calling realpath. """ rpath = resolve(path, cwd, last_dir, debug, debug_out) if rpath: path = rpath if (path.find('/') < 0 or path.find('./') > 0 or - path.endswith('/..') or - os.path.islink(path)): - return os.path.realpath(path) + path.endswith('/..')): + path = cleanpath(path) return path def sort_unique(list, cmp=None, key=None, reverse=False): @@ -126,6 +142,7 @@ def sort_unique(list, cmp=None, key=None for e in list: if e == le: continue + le = e nl.append(e) return nl @@ -504,6 +521,8 @@ class MetaFile: dir = abspath(dir, cwd, self.last_dir, self.debug, self.debug_out) if rdir == dir or rdir.find('./') > 0: rdir = None + if os.path.islink(dir): + rdir = os.path.realpath(dir) # now put path back together path = '/'.join([dir,base]) if self.debug > 1: Modified: head/contrib/bmake/mk/prog.mk ============================================================================== --- head/contrib/bmake/mk/prog.mk Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/mk/prog.mk Mon Mar 6 23:02:33 2017 (r314808) @@ -1,4 +1,4 @@ -# $Id: prog.mk,v 1.27 2016/08/02 20:52:17 sjg Exp $ +# $Id: prog.mk,v 1.28 2017/02/14 21:26:13 sjg Exp $ .if !target(__${.PARSEFILE}__) __${.PARSEFILE}__: @@ -191,6 +191,7 @@ install_links: maninstall: afterinstall afterinstall: realinstall +install_links: realinstall proginstall: beforeinstall realinstall: beforeinstall .endif Modified: head/contrib/bmake/mk/subdir.mk ============================================================================== --- head/contrib/bmake/mk/subdir.mk Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/mk/subdir.mk Mon Mar 6 23:02:33 2017 (r314808) @@ -1,4 +1,4 @@ -# $Id: subdir.mk,v 1.15 2016/04/05 15:58:37 sjg Exp $ +# $Id: subdir.mk,v 1.16 2017/02/08 22:16:59 sjg Exp $ # skip missing directories... # $NetBSD: bsd.subdir.mk,v 1.11 1996/04/04 02:05:06 jtc Exp $ @@ -45,13 +45,18 @@ _SUBDIRUSE: .USE done ${SUBDIR}:: - @set -e; if test -d ${.CURDIR}/${.TARGET}.${MACHINE}; then \ - _newdir_=${.TARGET}.${MACHINE}; \ + @set -e; _r=${.CURDIR}/; \ + if test -z "${.TARGET:M/*}"; then \ + if test -d ${.CURDIR}/${.TARGET}.${MACHINE}; then \ + _newdir_=${.TARGET}.${MACHINE}; \ + else \ + _newdir_=${.TARGET}; \ + fi; \ else \ - _newdir_=${.TARGET}; \ + _r= _newdir_=${.TARGET}; \ fi; \ ${ECHO_DIR} "===> $${_newdir_}"; \ - cd ${.CURDIR}/$${_newdir_}; \ + cd $${_r}$${_newdir_}; \ ${.MAKE} _THISDIR_="$${_newdir_}" all .endif Modified: head/contrib/bmake/mk/sys.mk ============================================================================== --- head/contrib/bmake/mk/sys.mk Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/mk/sys.mk Mon Mar 6 23:02:33 2017 (r314808) @@ -1,4 +1,4 @@ -# $Id: sys.mk,v 1.44 2016/10/01 19:11:55 sjg Exp $ +# $Id: sys.mk,v 1.45 2017/02/05 01:26:13 sjg Exp $ # # @(#) Copyright (c) 2003-2009, Simon J. Gerraty # @@ -71,11 +71,11 @@ SYS_OS_MK := ${_sys_mk} # some options we need to know early OPTIONS_DEFAULT_NO += \ DIRDEPS_BUILD \ - DIRDEPS_CACHE \ - META_MODE + DIRDEPS_CACHE OPTIONS_DEFAULT_DEPENDENT += \ AUTO_OBJ/DIRDEPS_BUILD \ + META_MODE/DIRDEPS_BUILD \ STAGING/DIRDEPS_BUILD \ .-include Modified: head/contrib/bmake/mk/sys.vars.mk ============================================================================== --- head/contrib/bmake/mk/sys.vars.mk Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/mk/sys.vars.mk Mon Mar 6 23:02:33 2017 (r314808) @@ -1,4 +1,4 @@ -# $Id: sys.vars.mk,v 1.1 2016/10/01 19:11:55 sjg Exp $ +# $Id: sys.vars.mk,v 1.2 2017/01/31 07:44:45 sjg Exp $ # # @(#) Copyright (c) 2003-2009, Simon J. Gerraty # @@ -67,5 +67,14 @@ M_tA = tA M_tA = C,.*,('cd' & \&\& 'pwd') 2> /dev/null || echo &,:sh .endif +.if ${MAKE_VERSION:U0} >= 20170130 +# M_cmpv allows comparing dotted versions like 3.1.2 +# ${3.1.2:L:${M_cmpv}} -> 3001002 +# we use big jumps to handle 3 digits per dot: +# ${123.456.789:L:${M_cmpv}} -> 123456789 +M_cmpv.units = 1 1000 1000000 +M_cmpv = S,., ,g:_:range:@i@+ $${_:[-$$i]} \* $${M_cmpv.units:[$$i]}@:S,^,expr 0 ,1:sh +.endif + # absoulte path to what we are reading. _PARSEDIR = ${.PARSEDIR:${M_tA}} Modified: head/contrib/bmake/os.sh ============================================================================== --- head/contrib/bmake/os.sh Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/os.sh Mon Mar 6 23:02:33 2017 (r314808) @@ -17,7 +17,7 @@ # Simon J. Gerraty # RCSid: -# $Id: os.sh,v 1.52 2016/06/17 05:15:14 sjg Exp $ +# $Id: os.sh,v 1.53 2017/01/11 20:01:09 sjg Exp $ # # @(#) Copyright (c) 1994 Simon J. Gerraty # @@ -206,7 +206,13 @@ esac TMP_DIRS=${TMP_DIRS:-"/tmp /var/tmp"} MACHINE_ARCH=${MACHINE_ARCH:-$MACHINE} +case "$MACHINE_ARCH" in +x86*64|amd64) MACHINE32_ARCH=i386;; +*64) MACHINE32_ARCH=`echo $MACHINE_ARCH | sed 's,64,32,'`;; +*) MACHINE32_ARCH=$MACHINE_ARCH;; +esac HOST_ARCH=${HOST_ARCH:-$MACHINE_ARCH} +HOST_ARCH32=${HOST_ARCH32:-$MACHINE32_ARCH} # we mount server:/share/arch/$SHARE_ARCH as /usr/local SHARE_ARCH_DEFAULT=$OS/$OSMAJOR.X/$HOST_ARCH SHARE_ARCH=${SHARE_ARCH:-$SHARE_ARCH_DEFAULT} @@ -215,7 +221,8 @@ TR=${TR:-tr} # Some people like have /share/$HOST_TARGET/bin etc. HOST_TARGET=`echo ${OS}${OSMAJOR}-$HOST_ARCH | tr -d / | toLower` -export HOST_TARGET +HOST_TARGET32=`echo ${OS}${OSMAJOR}-$HOST_ARCH32 | tr -d / | toLower` +export HOST_TARGET HOST_TARGET32 case `echo -n .` in -n*) N=; C="\c";; *) N=-n; C=;; esac Modified: head/contrib/bmake/parse.c ============================================================================== --- head/contrib/bmake/parse.c Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/parse.c Mon Mar 6 23:02:33 2017 (r314808) @@ -1,4 +1,4 @@ -/* $NetBSD: parse.c,v 1.217 2016/12/09 22:56:21 sjg Exp $ */ +/* $NetBSD: parse.c,v 1.218 2017/03/01 16:39:49 sjg Exp $ */ /* * Copyright (c) 1988, 1989, 1990, 1993 @@ -69,14 +69,14 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: parse.c,v 1.217 2016/12/09 22:56:21 sjg Exp $"; +static char rcsid[] = "$NetBSD: parse.c,v 1.218 2017/03/01 16:39:49 sjg Exp $"; #else #include #ifndef lint #if 0 static char sccsid[] = "@(#)parse.c 8.3 (Berkeley) 3/19/94"; #else -__RCSID("$NetBSD: parse.c,v 1.217 2016/12/09 22:56:21 sjg Exp $"); +__RCSID("$NetBSD: parse.c,v 1.218 2017/03/01 16:39:49 sjg Exp $"); #endif #endif /* not lint */ #endif @@ -578,7 +578,11 @@ loadfile(const char *path, int fd) /* truncate malloc region to actual length (maybe not useful) */ if (lf->len > 0) { + /* as for mmap case, ensure trailing \n */ + if (lf->buf[lf->len - 1] != '\n') + lf->len++; lf->buf = bmake_realloc(lf->buf, lf->len); + lf->buf[lf->len - 1] = '\n'; } #ifdef HAVE_MMAP Modified: head/contrib/bmake/unit-tests/varmisc.exp ============================================================================== --- head/contrib/bmake/unit-tests/varmisc.exp Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/unit-tests/varmisc.exp Mon Mar 6 23:02:33 2017 (r314808) @@ -17,4 +17,9 @@ false FALSE do not evaluate or expand :? if discarding is set +year=2016 month=04 day=01 +date=20160401 +Version=123.456.789 == 123456789 +Literal=3.4.5 == 3004005 +We have target specific vars exit status 0 Modified: head/contrib/bmake/unit-tests/varmisc.mk ============================================================================== --- head/contrib/bmake/unit-tests/varmisc.mk Mon Mar 6 22:46:49 2017 (r314807) +++ head/contrib/bmake/unit-tests/varmisc.mk Mon Mar 6 23:02:33 2017 (r314808) @@ -1,8 +1,9 @@ -# $Id: varmisc.mk,v 1.5 2015/10/12 17:10:48 sjg Exp $ +# $Id: varmisc.mk,v 1.9 2017/02/01 18:44:54 sjg Exp $ # # Miscellaneous variable tests. -all: unmatched_var_paren D_true U_true D_false U_false Q_lhs Q_rhs NQ_none +all: unmatched_var_paren D_true U_true D_false U_false Q_lhs Q_rhs NQ_none \ + strftime cmpv unmatched_var_paren: @echo ${foo::=foo-text} @@ -40,3 +41,22 @@ Q_rhs: NQ_none: @echo do not evaluate or expand :? if discarding @echo ${VSET:U${1:L:?${True}:${False}}} + +April1= 1459494000 + +# slightly contorted syntax to use utc via variable +strftime: + @echo ${year=%Y month=%m day=%d:L:gmtime=1459494000} + @echo date=${%Y%m%d:L:${gmtime=${April1}:L}} + *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Mon Mar 6 23:13:27 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0C85FCFBD2B; Mon, 6 Mar 2017 23:13:27 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D86CB1149; Mon, 6 Mar 2017 23:13:26 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26NDPx7014183; Mon, 6 Mar 2017 23:13:25 GMT (envelope-from sjg@FreeBSD.org) Received: (from sjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26NDP1g014180; Mon, 6 Mar 2017 23:13:25 GMT (envelope-from sjg@FreeBSD.org) Message-Id: <201703062313.v26NDP1g014180@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sjg set sender to sjg@FreeBSD.org using -f From: "Simon J. Gerraty" Date: Mon, 6 Mar 2017 23:13:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314809 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 23:13:27 -0000 Author: sjg Date: Mon Mar 6 23:13:25 2017 New Revision: 314809 URL: https://svnweb.freebsd.org/changeset/base/314809 Log: Update dirdeps/meta bits from latest bmake. Modified: head/share/mk/dirdeps.mk head/share/mk/meta.stage.mk head/share/mk/meta2deps.py Modified: head/share/mk/dirdeps.mk ============================================================================== --- head/share/mk/dirdeps.mk Mon Mar 6 23:02:33 2017 (r314808) +++ head/share/mk/dirdeps.mk Mon Mar 6 23:13:25 2017 (r314809) @@ -1,5 +1,5 @@ # $FreeBSD$ -# $Id: dirdeps.mk,v 1.84 2016/11/27 02:44:34 sjg Exp $ +# $Id: dirdeps.mk,v 1.86 2017/03/01 20:26:51 sjg Exp $ # Copyright (c) 2010-2013, Juniper Networks, Inc. # All rights reserved. @@ -58,7 +58,7 @@ # distinguish them from others. # # Before each Makefile.depend file is read, we set -# DEP_RELDIR to be the RELDIR (path relative to SRCTOP) for +# DEP_RELDIR to be the the RELDIR (path relative to SRCTOP) for # its directory, and DEP_MACHINE etc according to the . # represented by the suffix of the corresponding target. # @@ -198,7 +198,9 @@ DEP_$v ?= ${$v} # we compute below are fully qualified wrt DEP_TARGET_SPEC. # The makefiles may only partially specify (eg. MACHINE only), # so we need to construct a set of modifiers to fill in the gaps. -.if ${TARGET_SPEC_VARS:[#]} > 10 +.if ${MAKE_VERSION} >= 20170130 +_tspec_x := ${TARGET_SPEC_VARS:range} +.elif ${TARGET_SPEC_VARS:[#]} > 10 # seriously? better have jot(1) or equivalent to produce suitable sequence _tspec_x := ${${JOT:Ujot} ${TARGET_SPEC_VARS:[#]}:L:sh} .else @@ -613,11 +615,11 @@ _build_dirs += \ # qualify everything now _build_dirs := ${_build_dirs:${M_dep_qual_fixes:ts:}:O:u} +.endif # empty DIRDEPS + _build_all_dirs += ${_build_dirs} _build_all_dirs := ${_build_all_dirs:O:u} -.endif # empty DIRDEPS - # Normally if doing make -V something, # we do not want to waste time chasing DIRDEPS # but if we want to count the number of Makefile.depend* read, we do. Modified: head/share/mk/meta.stage.mk ============================================================================== --- head/share/mk/meta.stage.mk Mon Mar 6 23:02:33 2017 (r314808) +++ head/share/mk/meta.stage.mk Mon Mar 6 23:13:25 2017 (r314809) @@ -1,7 +1,7 @@ # $FreeBSD$ -# $Id: meta.stage.mk,v 1.47 2016/12/07 23:07:49 sjg Exp $ +# $Id: meta.stage.mk,v 1.48 2017/03/01 22:48:07 sjg Exp $ # -# @(#) Copyright (c) 2011, Simon J. Gerraty +# @(#) Copyright (c) 2011-2017, Simon J. Gerraty # # This file is provided in the hope that it will # be of use. There is absolutely NO WARRANTY. @@ -15,7 +15,7 @@ # .if !target(__${.PARSEFILE}__) -__${.PARSEFILE}__: +# the guard target is defined later .if ${.MAKE.DEPENDFILE_PREFERENCE:U${.MAKE.DEPENDFILE}:M*.${MACHINE}} != "" # this is generally safer anyway @@ -128,26 +128,17 @@ STAGE_AS_SCRIPT = ${STAGE_DIRDEP_SCRIPT} done; :; } # this is simple, a list of the "staged" files depends on this, -_STAGE_BASENAME_USE: .USE ${.TARGET:T} +_STAGE_BASENAME_USE: .USE .dirdep ${.TARGET:T} @${STAGE_FILE_SCRIPT}; StageFiles ${.TARGET:H:${STAGE_DIR_FILTER}} ${.TARGET:T} -_STAGE_AS_BASENAME_USE: .USE ${.TARGET:T} +_STAGE_AS_BASENAME_USE: .USE .dirdep ${.TARGET:T} @${STAGE_AS_SCRIPT}; StageAs ${.TARGET:H:${STAGE_DIR_FILTER}} ${.TARGET:T} ${STAGE_AS_${.TARGET:T}:U${.TARGET:T}} -.if !empty(STAGE_INCSDIR) -STAGE_TARGETS += stage_incs -STAGE_INCS ?= ${.ALLSRC:N.dirdep:Nstage_*} stage_includes: stage_incs stage_incs: .dirdep @${STAGE_FILE_SCRIPT}; StageFiles ${STAGE_INCSDIR:${STAGE_DIR_FILTER}} ${STAGE_INCS} @touch $@ -.endif - -.if !empty(STAGE_LIBDIR) -STAGE_TARGETS += stage_libs - -STAGE_LIBS ?= ${.ALLSRC:N.dirdep:Nstage_*} stage_libs: .dirdep @${STAGE_FILE_SCRIPT}; StageFiles ${STAGE_LIBDIR:${STAGE_DIR_FILTER}} ${STAGE_LIBS} @@ -160,6 +151,18 @@ stage_libs: .dirdep .endif .endif @touch $@ + +.endif # first time + + +.if !empty(STAGE_INCSDIR) +STAGE_TARGETS += stage_incs +STAGE_INCS ?= ${.ALLSRC:N.dirdep:Nstage_*} +.endif + +.if !empty(STAGE_LIBDIR) +STAGE_TARGETS += stage_libs +STAGE_LIBS ?= ${.ALLSRC:N.dirdep:Nstage_*} .endif .if !empty(STAGE_DIR) @@ -185,6 +188,8 @@ STAGE_LINKS_DIR.$s ?= ${STAGE_OBJTOP} STAGE_SYMLINKS_DIR.$s ?= ${STAGE_OBJTOP} STAGE_TARGETS += stage_files +.if !target(.stage_files.$s) +.stage_files.$s: .if $s != "_default" stage_files: stage_files.$s stage_files.$s: .dirdep @@ -193,8 +198,11 @@ stage_files: .dirdep .endif @${STAGE_FILE_SCRIPT}; StageFiles ${FLAGS.$@} ${STAGE_FILES_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_FILES.$s} @touch $@ +.endif STAGE_TARGETS += stage_links +.if !target(.stage_links.$s) +.stage_links.$s: .if $s != "_default" stage_links: stage_links.$s stage_links.$s: .dirdep @@ -203,8 +211,11 @@ stage_links: .dirdep .endif @${STAGE_LINKS_SCRIPT}; StageLinks ${STAGE_LINKS_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_LINKS.$s} @touch $@ +.endif STAGE_TARGETS += stage_symlinks +.if !target(.stage_symlinks.$s) +.stage_symlinks.$s: .if $s != "_default" stage_symlinks: stage_symlinks.$s stage_symlinks.$s: .dirdep @@ -213,6 +224,7 @@ stage_symlinks: .dirdep .endif @${STAGE_LINKS_SCRIPT}; StageLinks -s ${STAGE_SYMLINKS_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_SYMLINKS.$s} @touch $@ +.endif .endfor .endif @@ -232,22 +244,32 @@ STAGE_TARGETS += stage_as stage_as_and_s STAGE_AS.$s ?= ${.ALLSRC:N.dirdep:Nstage_*} STAGE_AS_AND_SYMLINK.$s ?= ${.ALLSRC:N.dirdep:Nstage_*} +.if !target(.stage_as.$s) +.stage_as.$s: stage_as: stage_as.$s stage_as.$s: .dirdep @${STAGE_AS_SCRIPT}; StageAs ${FLAGS.$@} ${STAGE_FILES_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_AS.$s:@f@$f ${STAGE_AS_${f:tA}:U${STAGE_AS_${f:T}:U${f:T}}}@} @touch $@ +.endif +.if !target(.stage_as_and_symlink.$s) +.stage_as_and_symlink.$s: stage_as_and_symlink: stage_as_and_symlink.$s stage_as_and_symlink.$s: .dirdep @${STAGE_AS_SCRIPT}; StageAs ${FLAGS.$@} ${STAGE_FILES_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_AS_AND_SYMLINK.$s:@f@$f ${STAGE_AS_${f:tA}:U${STAGE_AS_${f:T}:U${f:T}}}@} @${STAGE_LINKS_SCRIPT}; StageLinks -s ${STAGE_FILES_DIR.$s:U${STAGE_DIR.$s}:${STAGE_DIR_FILTER}} ${STAGE_AS_AND_SYMLINK.$s:@f@${STAGE_AS_${f:tA}:U${STAGE_AS_${f:T}:U${f:T}}} $f@} @touch $@ +.endif .endfor .endif CLEANFILES += ${STAGE_TARGETS} stage_incs stage_includes +# this lot also only makes sense the first time... +.if !target(__${.PARSEFILE}__) +__${.PARSEFILE}__: + # stage_*links usually needs to follow any others. # for non-jobs mode the order here matters staging: ${STAGE_TARGETS:N*_links} ${STAGE_TARGETS:M*_links} Modified: head/share/mk/meta2deps.py ============================================================================== --- head/share/mk/meta2deps.py Mon Mar 6 23:02:33 2017 (r314808) +++ head/share/mk/meta2deps.py Mon Mar 6 23:13:25 2017 (r314809) @@ -38,7 +38,7 @@ We only pay attention to a subset of the """ RCSid: $FreeBSD$ - $Id: meta2deps.py,v 1.22 2016/12/12 19:07:42 sjg Exp $ + $Id: meta2deps.py,v 1.24 2017/02/08 22:17:10 sjg Exp $ Copyright (c) 2011-2013, Juniper Networks, Inc. All rights reserved. @@ -104,20 +104,36 @@ def resolve(path, cwd, last_dir=None, de return p return None +def cleanpath(path): + """cleanup path without using realpath(3)""" + if path.startswith('/'): + r = '/' + else: + r = '' + p = [] + w = path.split('/') + for d in w: + if not d or d == '.': + continue + if d == '..': + p.pop() + continue + p.append(d) + + return r + '/'.join(p) + def abspath(path, cwd, last_dir=None, debug=0, debug_out=sys.stderr): """ Return an absolute path, resolving via cwd or last_dir if needed. - this gets called a lot, so we try to avoid calling realpath - until we know we have something. + this gets called a lot, so we try to avoid calling realpath. """ rpath = resolve(path, cwd, last_dir, debug, debug_out) if rpath: path = rpath if (path.find('/') < 0 or path.find('./') > 0 or - path.endswith('/..') or - os.path.islink(path)): - return os.path.realpath(path) + path.endswith('/..')): + path = cleanpath(path) return path def sort_unique(list, cmp=None, key=None, reverse=False): @@ -127,6 +143,7 @@ def sort_unique(list, cmp=None, key=None for e in list: if e == le: continue + le = e nl.append(e) return nl @@ -505,6 +522,8 @@ class MetaFile: dir = abspath(dir, cwd, self.last_dir, self.debug, self.debug_out) if rdir == dir or rdir.find('./') > 0: rdir = None + if os.path.islink(dir): + rdir = os.path.realpath(dir) # now put path back together path = '/'.join([dir,base]) if self.debug > 1: From owner-svn-src-all@freebsd.org Mon Mar 6 23:19:27 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4ADE7CFBE36; Mon, 6 Mar 2017 23:19:27 +0000 (UTC) (envelope-from lidl@FreeBSD.org) Received: from hydra.pix.net (hydra.pix.net [IPv6:2001:470:e254::4]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mail.pix.net", Issuer "Pix.Com Technologies LLC CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id F0C5C13E6; Mon, 6 Mar 2017 23:19:26 +0000 (UTC) (envelope-from lidl@FreeBSD.org) Received: from torb.pix.net (torb.pix.net [IPv6:2001:470:e254:10:1042:6a31:1deb:9f8a]) (authenticated bits=0) by hydra.pix.net (8.16.0.19/8.15.2) with ESMTPA id v26NJPGu010595; Mon, 6 Mar 2017 18:19:25 -0500 (EST) (envelope-from lidl@FreeBSD.org) Subject: Re: svn commit: r314654 - in head/cddl: lib/drti lib/libavl lib/libctf lib/libdtrace lib/libnvpair lib/libumem lib/libuutil lib/libzfs lib/libzfs_core lib/libzpool sbin/zfs sbin/zpool usr.bin/ctfconver... To: rgrimes@FreeBSD.org, Bryan Drewery References: <201703042039.v24KdcDE078734@pdx.rh.CN85.dnsmgr.net> Cc: Ngie Cooper , src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org Reply-To: lidl@FreeBSD.org From: Kurt Lidl Message-ID: Date: Mon, 6 Mar 2017 18:19:25 -0500 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <201703042039.v24KdcDE078734@pdx.rh.CN85.dnsmgr.net> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 23:19:27 -0000 On 3/4/17 3:39 PM, Rodney W. Grimes wrote: > Idk, maybe I am to personally attached to the relative paths.. cause I > had a major part in helping them all to work, or perhaps its my been > burned by absolute paths that had to be reworked too many times in > my past. But my gutt is telling me this change is Bad(tm). > At my prior job, where we ended up starting off with a bunch of userland programs in a repository, we had a variable that was set to get you to the top of the source tree. It was set in ../Makefile.inc, so if one just used ".include " in the Makefile, one got the variable "for free", as the stock bsd.prog.mk file would include the ../Makefile.inc by default. While there were maintenance issues with this scheme, I ultimately ended up coding up something similar to the SRCTOP for our purposes, once we decided to start moving programs around in the tree. I think one of the big issues with relative locations of other resources in the tree is that one has to encode two pieces of information in the Makefiles. Both the location of the program being compiled (so it can find the top), and the location of the resource that is being accessed (so the compile can walk down the tree to find whatever is being referenced). With something like SRCTOP, only the second piece of information needs to be encoded in the Makefile. I think that eliminating half of the information about how to find the external resources is actually a good thing. -Kurt From owner-svn-src-all@freebsd.org Mon Mar 6 23:41:24 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B8562D003F5; Mon, 6 Mar 2017 23:41:24 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 881A51F2B; Mon, 6 Mar 2017 23:41:24 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26NfNwU023570; Mon, 6 Mar 2017 23:41:23 GMT (envelope-from kp@FreeBSD.org) Received: (from kp@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26NfNOX023569; Mon, 6 Mar 2017 23:41:23 GMT (envelope-from kp@FreeBSD.org) Message-Id: <201703062341.v26NfNOX023569@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kp set sender to kp@FreeBSD.org using -f From: Kristof Provost Date: Mon, 6 Mar 2017 23:41:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314810 - head/sys/netpfil/pf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 23:41:24 -0000 Author: kp Date: Mon Mar 6 23:41:23 2017 New Revision: 314810 URL: https://svnweb.freebsd.org/changeset/base/314810 Log: pf: Fix a crash in low-memory situations If the call to pf_state_key_clone() in pf_get_translation() fails (i.e. there's no more memory for it) it frees skp. This is wrong, because skp is a pf_state_key **, so we need to free *skp, as is done later in the function. Getting it wrong means we try to free a stack variable of the calling pf_test_rule() function, and we panic. Modified: head/sys/netpfil/pf/pf_lb.c Modified: head/sys/netpfil/pf/pf_lb.c ============================================================================== --- head/sys/netpfil/pf/pf_lb.c Mon Mar 6 23:13:25 2017 (r314809) +++ head/sys/netpfil/pf/pf_lb.c Mon Mar 6 23:41:23 2017 (r314810) @@ -553,7 +553,7 @@ pf_get_translation(struct pf_pdesc *pd, return (NULL); *nkp = pf_state_key_clone(*skp); if (*nkp == NULL) { - uma_zfree(V_pf_state_key_z, skp); + uma_zfree(V_pf_state_key_z, *skp); *skp = NULL; return (NULL); } From owner-svn-src-all@freebsd.org Mon Mar 6 23:43:46 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CB38AD00484; Mon, 6 Mar 2017 23:43:46 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from venus.codepro.be (venus.codepro.be [IPv6:2a01:4f8:162:1127::2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "*.codepro.be", Issuer "Gandi Standard SSL CA 2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 976A512A6; Mon, 6 Mar 2017 23:43:46 +0000 (UTC) (envelope-from kp@FreeBSD.org) Received: from [172.16.1.189] (s224.GtokyoFL6.vectant.ne.jp [222.228.90.224]) (Authenticated sender: kp) by venus.codepro.be (Postfix) with ESMTPSA id ACB2C1E438; Tue, 7 Mar 2017 00:43:41 +0100 (CET) From: "Kristof Provost" To: "Gleb Smirnoff" Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: Re: svn commit: r314702 - stable/11/sys/netpfil/pf Date: Tue, 07 Mar 2017 08:43:38 +0900 Message-ID: <144CFF47-7384-401C-A4A7-B36155C97929@FreeBSD.org> In-Reply-To: <20170306230138.GD1044@FreeBSD.org> References: <201703051314.v25DEIj6076074@repo.freebsd.org> <20170306230138.GD1044@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed; markup=markdown Content-Transfer-Encoding: 8bit X-Mailer: MailMate (2.0BETAr6080) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 23:43:46 -0000 Oops. That’ll teach me to commit things while jet-lagged. It’s been committed on head in r314810. Thanks for the heads up. Regards, Kristof On 7 Mar 2017, at 8:01, Gleb Smirnoff wrote: > Kristof, > > this seems accidentially committed to stable branch. Please add it > to head. > > And thanks a lot for the fix. Very likely this is my mistake back from > 2012. > > On Sun, Mar 05, 2017 at 01:14:18PM +0000, Kristof Provost wrote: > K> Author: kp > K> Date: Sun Mar 5 13:14:18 2017 > K> New Revision: 314702 > K> URL: https://svnweb.freebsd.org/changeset/base/314702 > K> > K> Log: > K> pf: Fix a crash in low-memory situations > K> > K> If the call to pf_state_key_clone() in pf_get_translation() fails > (i.e. there's > K> no more memory for it) it frees skp. This is wrong, because skp > is a > K> pf_state_key **, so we need to free *skp, as is done later in the > function. > K> Getting it wrong means we try to free a stack variable of the > calling > K> pf_test_rule() function, and we panic. > K> > K> Modified: > K> stable/11/sys/netpfil/pf/pf_lb.c > K> > K> Modified: stable/11/sys/netpfil/pf/pf_lb.c > K> > ============================================================================== > K> --- stable/11/sys/netpfil/pf/pf_lb.c Sun Mar 5 12:06:45 > 2017 (r314701) > K> +++ stable/11/sys/netpfil/pf/pf_lb.c Sun Mar 5 13:14:18 > 2017 (r314702) > K> @@ -553,7 +553,7 @@ pf_get_translation(struct pf_pdesc *pd, > K> return (NULL); > K> *nkp = pf_state_key_clone(*skp); > K> if (*nkp == NULL) { > K> - uma_zfree(V_pf_state_key_z, skp); > K> + uma_zfree(V_pf_state_key_z, *skp); > K> *skp = NULL; > K> return (NULL); > K> } > K> _______________________________________________ > K> svn-src-all@freebsd.org mailing list > K> https://lists.freebsd.org/mailman/listinfo/svn-src-all > K> To unsubscribe, send any mail to > "svn-src-all-unsubscribe@freebsd.org" > > -- > Totus tuus, Glebius. From owner-svn-src-all@freebsd.org Mon Mar 6 23:48:02 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 858E7D00525; Mon, 6 Mar 2017 23:48:02 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 304281486; Mon, 6 Mar 2017 23:48:02 +0000 (UTC) (envelope-from marius@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v26Nm1AN026729; Mon, 6 Mar 2017 23:48:01 GMT (envelope-from marius@FreeBSD.org) Received: (from marius@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v26NlxU3026705; Mon, 6 Mar 2017 23:47:59 GMT (envelope-from marius@FreeBSD.org) Message-Id: <201703062347.v26NlxU3026705@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: marius set sender to marius@FreeBSD.org using -f From: Marius Strobl Date: Mon, 6 Mar 2017 23:47:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314811 - in head/sys: arm/allwinner arm/amlogic/aml8726 arm/at91 arm/broadcom/bcm2835 arm/lpc arm/nvidia arm/ti dev/mmc dev/mmc/host dev/sdhci mips/ingenic X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Mar 2017 23:48:02 -0000 Author: marius Date: Mon Mar 6 23:47:59 2017 New Revision: 314811 URL: https://svnweb.freebsd.org/changeset/base/314811 Log: o Another round fixes for mmc(4), mmcsd(4) and sdhci(4) regarding comments, marking unused parameters as such, style(9), whitespace, etc. o In the mmc(4) bridges and sdhci(4) (bus) front-ends: - Remove redundant assignments of the default bus_generic_print_child device method (I've whipped these out of the tree as part of r227843 once, but they keep coming back ...), - use DEVMETHOD_END, - use NULL instead of 0 for pointers. o Trim/adjust includes. Modified: head/sys/arm/allwinner/a10_mmc.c head/sys/arm/amlogic/aml8726/aml8726_mmc.c head/sys/arm/amlogic/aml8726/aml8726_sdxc-m8.c head/sys/arm/at91/at91_mci.c head/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c head/sys/arm/lpc/lpc_mmc.c head/sys/arm/nvidia/tegra_sdhci.c head/sys/arm/ti/ti_sdhci.c head/sys/dev/mmc/bridge.h head/sys/dev/mmc/host/dwmmc.c head/sys/dev/mmc/mmc.c head/sys/dev/mmc/mmcbrvar.h head/sys/dev/mmc/mmcsd.c head/sys/dev/mmc/mmcvar.h head/sys/dev/sdhci/fsl_sdhci.c head/sys/dev/sdhci/sdhci.c head/sys/dev/sdhci/sdhci_acpi.c head/sys/dev/sdhci/sdhci_fdt.c head/sys/dev/sdhci/sdhci_pci.c head/sys/mips/ingenic/jz4780_mmc.c Modified: head/sys/arm/allwinner/a10_mmc.c ============================================================================== --- head/sys/arm/allwinner/a10_mmc.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/arm/allwinner/a10_mmc.c Mon Mar 6 23:47:59 2017 (r314811) @@ -45,7 +45,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include @@ -898,7 +897,6 @@ static device_method_t a10_mmc_methods[] /* Bus interface */ DEVMETHOD(bus_read_ivar, a10_mmc_read_ivar), DEVMETHOD(bus_write_ivar, a10_mmc_write_ivar), - DEVMETHOD(bus_print_child, bus_generic_print_child), /* MMC bridge interface */ DEVMETHOD(mmcbr_update_ios, a10_mmc_update_ios), @@ -918,6 +916,7 @@ static driver_t a10_mmc_driver = { sizeof(struct a10_mmc_softc), }; -DRIVER_MODULE(a10_mmc, simplebus, a10_mmc_driver, a10_mmc_devclass, 0, 0); +DRIVER_MODULE(a10_mmc, simplebus, a10_mmc_driver, a10_mmc_devclass, NULL, + NULL); DRIVER_MODULE(mmc, a10_mmc, mmc_driver, mmc_devclass, NULL, NULL); MODULE_DEPEND(a10_mmc, mmc, 1, 1, 1); Modified: head/sys/arm/amlogic/aml8726/aml8726_mmc.c ============================================================================== --- head/sys/arm/amlogic/aml8726/aml8726_mmc.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/arm/amlogic/aml8726/aml8726_mmc.c Mon Mar 6 23:47:59 2017 (r314811) @@ -33,7 +33,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include #include @@ -51,7 +50,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include @@ -1095,7 +1093,7 @@ static driver_t aml8726_mmc_driver = { static devclass_t aml8726_mmc_devclass; DRIVER_MODULE(aml8726_mmc, simplebus, aml8726_mmc_driver, - aml8726_mmc_devclass, 0, 0); + aml8726_mmc_devclass, NULL, NULL); MODULE_DEPEND(aml8726_mmc, aml8726_gpio, 1, 1, 1); DRIVER_MODULE(mmc, aml8726_mmc, mmc_driver, mmc_devclass, NULL, NULL); MODULE_DEPEND(aml8726_mmc, mmc, 1, 1, 1); Modified: head/sys/arm/amlogic/aml8726/aml8726_sdxc-m8.c ============================================================================== --- head/sys/arm/amlogic/aml8726/aml8726_sdxc-m8.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/arm/amlogic/aml8726/aml8726_sdxc-m8.c Mon Mar 6 23:47:59 2017 (r314811) @@ -33,7 +33,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include #include @@ -1374,7 +1373,7 @@ static driver_t aml8726_sdxc_driver = { static devclass_t aml8726_sdxc_devclass; DRIVER_MODULE(aml8726_sdxc, simplebus, aml8726_sdxc_driver, - aml8726_sdxc_devclass, 0, 0); + aml8726_sdxc_devclass, NULL, NULL); MODULE_DEPEND(aml8726_sdxc, aml8726_gpio, 1, 1, 1); DRIVER_MODULE(mmc, aml8726_sdxc, mmc_driver, mmc_devclass, NULL, NULL); MODULE_DEPEND(aml8726_sdxc, mmc, 1, 1, 1); Modified: head/sys/arm/at91/at91_mci.c ============================================================================== --- head/sys/arm/at91/at91_mci.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/arm/at91/at91_mci.c Mon Mar 6 23:47:59 2017 (r314811) @@ -32,23 +32,16 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include -#include #include #include -#include #include #include #include #include -#include #include #include #include -#include -#include -#include #include #include @@ -59,7 +52,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #ifdef FDT Modified: head/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c ============================================================================== --- head/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c Mon Mar 6 23:47:59 2017 (r314811) @@ -46,9 +46,10 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include + +#include "mmcbr_if.h" #include "sdhci_if.h" #include "bcm2835_dma.h" @@ -642,7 +643,6 @@ static device_method_t bcm_sdhci_methods /* Bus interface */ DEVMETHOD(bus_read_ivar, sdhci_generic_read_ivar), DEVMETHOD(bus_write_ivar, sdhci_generic_write_ivar), - DEVMETHOD(bus_print_child, bus_generic_print_child), /* MMC bridge interface */ DEVMETHOD(mmcbr_update_ios, sdhci_generic_update_ios), @@ -665,7 +665,7 @@ static device_method_t bcm_sdhci_methods DEVMETHOD(sdhci_write_4, bcm_sdhci_write_4), DEVMETHOD(sdhci_write_multi_4, bcm_sdhci_write_multi_4), - { 0, 0 } + DEVMETHOD_END }; static devclass_t bcm_sdhci_devclass; @@ -676,7 +676,8 @@ static driver_t bcm_sdhci_driver = { sizeof(struct bcm_sdhci_softc), }; -DRIVER_MODULE(sdhci_bcm, simplebus, bcm_sdhci_driver, bcm_sdhci_devclass, 0, 0); +DRIVER_MODULE(sdhci_bcm, simplebus, bcm_sdhci_driver, bcm_sdhci_devclass, + NULL, NULL); MODULE_DEPEND(sdhci_bcm, sdhci, 1, 1, 1); DRIVER_MODULE(mmc, sdhci_bcm, mmc_driver, mmc_devclass, NULL, NULL); MODULE_DEPEND(sdhci_bcm, mmc, 1, 1, 1); Modified: head/sys/arm/lpc/lpc_mmc.c ============================================================================== --- head/sys/arm/lpc/lpc_mmc.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/arm/lpc/lpc_mmc.c Mon Mar 6 23:47:59 2017 (r314811) @@ -29,24 +29,14 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include -#include -#include #include -#include #include #include #include #include -#include #include #include -#include -#include -#include - -#include #include #include @@ -56,7 +46,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include @@ -752,7 +741,6 @@ static device_method_t lpc_mmc_methods[] /* Bus interface */ DEVMETHOD(bus_read_ivar, lpc_mmc_read_ivar), DEVMETHOD(bus_write_ivar, lpc_mmc_write_ivar), - DEVMETHOD(bus_print_child, bus_generic_print_child), /* MMC bridge interface */ DEVMETHOD(mmcbr_update_ios, lpc_mmc_update_ios), @@ -761,7 +749,7 @@ static device_method_t lpc_mmc_methods[] DEVMETHOD(mmcbr_acquire_host, lpc_mmc_acquire_host), DEVMETHOD(mmcbr_release_host, lpc_mmc_release_host), - { 0, 0 } + DEVMETHOD_END }; static devclass_t lpc_mmc_devclass; @@ -772,6 +760,6 @@ static driver_t lpc_mmc_driver = { sizeof(struct lpc_mmc_softc), }; -DRIVER_MODULE(lpcmmc, simplebus, lpc_mmc_driver, lpc_mmc_devclass, 0, 0); +DRIVER_MODULE(lpcmmc, simplebus, lpc_mmc_driver, lpc_mmc_devclass, NULL, NULL); DRIVER_MODULE(mmc, lpcmmc, mmc_driver, mmc_devclass, NULL, NULL); MODULE_DEPEND(lpcmmc, mmc, 1, 1, 1); Modified: head/sys/arm/nvidia/tegra_sdhci.c ============================================================================== --- head/sys/arm/nvidia/tegra_sdhci.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/arm/nvidia/tegra_sdhci.c Mon Mar 6 23:47:59 2017 (r314811) @@ -35,7 +35,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include #include @@ -46,7 +45,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include @@ -56,7 +54,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include #include Modified: head/sys/arm/ti/ti_sdhci.c ============================================================================== --- head/sys/arm/ti/ti_sdhci.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/arm/ti/ti_sdhci.c Mon Mar 6 23:47:59 2017 (r314811) @@ -692,7 +692,6 @@ static device_method_t ti_sdhci_methods[ /* Bus interface */ DEVMETHOD(bus_read_ivar, sdhci_generic_read_ivar), DEVMETHOD(bus_write_ivar, sdhci_generic_write_ivar), - DEVMETHOD(bus_print_child, bus_generic_print_child), /* MMC bridge interface */ DEVMETHOD(mmcbr_update_ios, ti_sdhci_update_ios), @@ -723,7 +722,8 @@ static driver_t ti_sdhci_driver = { sizeof(struct ti_sdhci_softc), }; -DRIVER_MODULE(sdhci_ti, simplebus, ti_sdhci_driver, ti_sdhci_devclass, 0, 0); +DRIVER_MODULE(sdhci_ti, simplebus, ti_sdhci_driver, ti_sdhci_devclass, NULL, + NULL); MODULE_DEPEND(sdhci_ti, sdhci, 1, 1, 1); DRIVER_MODULE(mmc, sdhci_ti, mmc_driver, mmc_devclass, NULL, NULL); MODULE_DEPEND(sdhci_ti, mmc, 1, 1, 1); Modified: head/sys/dev/mmc/bridge.h ============================================================================== --- head/sys/dev/mmc/bridge.h Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/dev/mmc/bridge.h Mon Mar 6 23:47:59 2017 (r314811) @@ -52,7 +52,7 @@ */ #ifndef DEV_MMC_BRIDGE_H -#define DEV_MMC_BRIDGE_H +#define DEV_MMC_BRIDGE_H #include @@ -60,7 +60,7 @@ * This file defines interfaces for the mmc bridge. The names chosen * are similar to or the same as the names used in Linux to allow for * easy porting of what Linux calls mmc host drivers. I use the - * FreeBSD terminology of bridge and bus for consistancy with other + * FreeBSD terminology of bridge and bus for consistency with other * drivers in the system. This file corresponds roughly to the Linux * linux/mmc/host.h file. * @@ -73,10 +73,9 @@ * to be added to the mmcbus file). * * Attached to the mmc bridge is an mmcbus. The mmcbus is described - * in dev/mmc/bus.h. + * in dev/mmc/mmcbus_if.m. */ - /* * mmc_ios is a structure that is used to store the state of the mmc/sd * bus configuration. This include the bus' clock speed, its voltage, @@ -130,9 +129,9 @@ struct mmc_host { uint32_t host_ocr; uint32_t ocr; uint32_t caps; -#define MMC_CAP_4_BIT_DATA (1 << 0) /* Can do 4-bit data transfers */ -#define MMC_CAP_8_BIT_DATA (1 << 1) /* Can do 8-bit data transfers */ -#define MMC_CAP_HSPEED (1 << 2) /* Can do High Speed transfers */ +#define MMC_CAP_4_BIT_DATA (1 << 0) /* Can do 4-bit data transfers */ +#define MMC_CAP_8_BIT_DATA (1 << 1) /* Can do 8-bit data transfers */ +#define MMC_CAP_HSPEED (1 << 2) /* Can do High Speed transfers */ enum mmc_card_mode mode; struct mmc_ios ios; /* Current state of the host */ }; Modified: head/sys/dev/mmc/host/dwmmc.c ============================================================================== --- head/sys/dev/mmc/host/dwmmc.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/dev/mmc/host/dwmmc.c Mon Mar 6 23:47:59 2017 (r314811) @@ -43,11 +43,8 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include -#include #include -#include #include #include @@ -1182,7 +1179,7 @@ driver_t dwmmc_driver = { static devclass_t dwmmc_devclass; -DRIVER_MODULE(dwmmc, simplebus, dwmmc_driver, dwmmc_devclass, 0, 0); -DRIVER_MODULE(dwmmc, ofwbus, dwmmc_driver, dwmmc_devclass, 0, 0); +DRIVER_MODULE(dwmmc, simplebus, dwmmc_driver, dwmmc_devclass, NULL, NULL); +DRIVER_MODULE(dwmmc, ofwbus, dwmmc_driver, dwmmc_devclass, NULL, NULL); DRIVER_MODULE(mmc, dwmmc, mmc_driver, mmc_devclass, NULL, NULL); MODULE_DEPEND(dwmmc, mmc, 1, 1, 1); Modified: head/sys/dev/mmc/mmc.c ============================================================================== --- head/sys/dev/mmc/mmc.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/dev/mmc/mmc.c Mon Mar 6 23:47:59 2017 (r314811) @@ -408,7 +408,8 @@ mmc_wait_for_req(struct mmc_softc *sc, s } static int -mmc_wait_for_request(device_t brdev, device_t reqdev, struct mmc_request *req) +mmc_wait_for_request(device_t brdev, device_t reqdev __unused, + struct mmc_request *req) { struct mmc_softc *sc = device_get_softc(brdev); @@ -768,17 +769,29 @@ mmc_set_timing(struct mmc_softc *sc, int return (err); } +static const uint8_t p8[8] = { + 0x55, 0xAA, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; + +static const uint8_t p8ok[8] = { + 0xAA, 0x55, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; + +static const uint8_t p4[4] = { + 0x5A, 0x00, 0x00, 0x00 +}; + +static const uint8_t p4ok[4] = { + 0xA5, 0x00, 0x00, 0x00 +}; + static int mmc_test_bus_width(struct mmc_softc *sc) { struct mmc_command cmd; struct mmc_data data; - int err; uint8_t buf[8]; - uint8_t p8[8] = { 0x55, 0xAA, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; - uint8_t p8ok[8] = { 0xAA, 0x55, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }; - uint8_t p4[4] = { 0x5A, 0x00, 0x00, 0x00, }; - uint8_t p4ok[4] = { 0xA5, 0x00, 0x00, 0x00, }; + int err; if (mmcbr_get_caps(sc->dev) & MMC_CAP_8_BIT_DATA) { mmcbr_set_bus_width(sc->dev, bus_width_8); @@ -792,7 +805,7 @@ mmc_test_bus_width(struct mmc_softc *sc) cmd.flags = MMC_RSP_R1 | MMC_CMD_ADTC; cmd.data = &data; - data.data = p8; + data.data = __DECONST(void *, p8); data.len = 8; data.flags = MMC_DATA_WRITE; mmc_wait_for_cmd(sc, &cmd, 0); @@ -829,7 +842,7 @@ mmc_test_bus_width(struct mmc_softc *sc) cmd.flags = MMC_RSP_R1 | MMC_CMD_ADTC; cmd.data = &data; - data.data = p4; + data.data = __DECONST(void *, p4); data.len = 4; data.flags = MMC_DATA_WRITE; mmc_wait_for_cmd(sc, &cmd, 0); @@ -1291,13 +1304,14 @@ mmc_log_card(device_t dev, struct mmc_iv static void mmc_discover_cards(struct mmc_softc *sc) { + u_char switch_res[64]; + uint32_t raw_cid[4]; struct mmc_ivars *ivar = NULL; device_t *devlist; - int err, i, devcount, newcard; - uint32_t raw_cid[4], resp, sec_count, status; device_t child; + int err, i, devcount, newcard; + uint32_t resp, sec_count, status; uint16_t rca = 2; - u_char switch_res[64]; if (bootverbose || mmc_debug) device_printf(sc->dev, "Probing cards\n"); Modified: head/sys/dev/mmc/mmcbrvar.h ============================================================================== --- head/sys/dev/mmc/mmcbrvar.h Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/dev/mmc/mmcbrvar.h Mon Mar 6 23:47:59 2017 (r314811) @@ -49,7 +49,7 @@ * or the SD Card Association to disclose or distribute any technical * information, know-how or other confidential information to any third party. * - * "$FreeBSD$" + * $FreeBSD$ */ #ifndef DEV_MMC_MMCBRVAR_H @@ -57,6 +57,7 @@ #include #include + #include "mmcbr_if.h" enum mmcbr_device_ivars { @@ -100,12 +101,14 @@ MMCBR_ACCESSOR(max_data, MAX_DATA, int) static int __inline mmcbr_update_ios(device_t dev) { + return (MMCBR_UPDATE_IOS(device_get_parent(dev), dev)); } static int __inline mmcbr_get_ro(device_t dev) { + return (MMCBR_GET_RO(device_get_parent(dev), dev)); } Modified: head/sys/dev/mmc/mmcsd.c ============================================================================== --- head/sys/dev/mmc/mmcsd.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/dev/mmc/mmcsd.c Mon Mar 6 23:47:59 2017 (r314811) @@ -278,14 +278,14 @@ mmcsd_resume(device_t dev) } static int -mmcsd_open(struct disk *dp) +mmcsd_open(struct disk *dp __unused) { return (0); } static int -mmcsd_close(struct disk *dp) +mmcsd_close(struct disk *dp __unused) { return (0); Modified: head/sys/dev/mmc/mmcvar.h ============================================================================== --- head/sys/dev/mmc/mmcvar.h Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/dev/mmc/mmcvar.h Mon Mar 6 23:47:59 2017 (r314811) @@ -49,7 +49,7 @@ * or the SD Card Association to disclose or distribute any technical * information, know-how or other confidential information to any third party. * - * "$FreeBSD$" + * $FreeBSD$ */ #ifndef DEV_MMC_MMCVAR_H Modified: head/sys/dev/sdhci/fsl_sdhci.c ============================================================================== --- head/sys/dev/sdhci/fsl_sdhci.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/dev/sdhci/fsl_sdhci.c Mon Mar 6 23:47:59 2017 (r314811) @@ -38,7 +38,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include #include @@ -60,15 +59,16 @@ __FBSDID("$FreeBSD$"); #endif #include + #include #include #include -#include -#include #include #include + +#include "mmcbr_if.h" #include "sdhci_if.h" struct fsl_sdhci_softc { @@ -961,7 +961,6 @@ static device_method_t fsl_sdhci_methods /* Bus interface */ DEVMETHOD(bus_read_ivar, sdhci_generic_read_ivar), DEVMETHOD(bus_write_ivar, sdhci_generic_write_ivar), - DEVMETHOD(bus_print_child, bus_generic_print_child), /* MMC bridge interface */ DEVMETHOD(mmcbr_update_ios, sdhci_generic_update_ios), @@ -981,7 +980,7 @@ static device_method_t fsl_sdhci_methods DEVMETHOD(sdhci_write_multi_4, fsl_sdhci_write_multi_4), DEVMETHOD(sdhci_get_card_present,fsl_sdhci_get_card_present), - { 0, 0 } + DEVMETHOD_END }; static devclass_t fsl_sdhci_devclass; @@ -992,7 +991,8 @@ static driver_t fsl_sdhci_driver = { sizeof(struct fsl_sdhci_softc), }; -DRIVER_MODULE(sdhci_fsl, simplebus, fsl_sdhci_driver, fsl_sdhci_devclass, 0, 0); +DRIVER_MODULE(sdhci_fsl, simplebus, fsl_sdhci_driver, fsl_sdhci_devclass, + NULL, NULL); MODULE_DEPEND(sdhci_fsl, sdhci, 1, 1, 1); DRIVER_MODULE(mmc, sdhci_fsl, mmc_driver, mmc_devclass, NULL, NULL); MODULE_DEPEND(sdhci_fsl, mmc, 1, 1, 1); Modified: head/sys/dev/sdhci/sdhci.c ============================================================================== --- head/sys/dev/sdhci/sdhci.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/dev/sdhci/sdhci.c Mon Mar 6 23:47:59 2017 (r314811) @@ -170,6 +170,7 @@ static void sdhci_reset(struct sdhci_slot *slot, uint8_t mask) { int timeout; + uint32_t clock; if (slot->quirks & SDHCI_QUIRK_NO_CARD_NO_RESET) { if (!SDHCI_GET_CARD_PRESENT(slot->bus, slot)) @@ -179,8 +180,6 @@ sdhci_reset(struct sdhci_slot *slot, uin /* Some controllers need this kick or reset won't work. */ if ((mask & SDHCI_RESET_ALL) == 0 && (slot->quirks & SDHCI_QUIRK_CLOCK_BEFORE_RESET)) { - uint32_t clock; - /* This is to force an update */ clock = slot->clock; slot->clock = 0; @@ -199,7 +198,7 @@ sdhci_reset(struct sdhci_slot *slot, uin * Resets on TI OMAPs and AM335x are incompatible with SDHCI * specification. The reset bit has internal propagation delay, * so a fast read after write returns 0 even if reset process is - * in progress. The workaround is to poll for 1 before polling + * in progress. The workaround is to poll for 1 before polling * for 0. In the worst case, if we miss seeing it asserted the * time we spent waiting is enough to ensure the reset finishes. */ @@ -267,7 +266,7 @@ sdhci_set_clock(struct sdhci_slot *slot, /* Turn off the clock. */ clk = RD2(slot, SDHCI_CLOCK_CONTROL); WR2(slot, SDHCI_CLOCK_CONTROL, clk & ~SDHCI_CLOCK_CARD_EN); - /* If no clock requested - left it so. */ + /* If no clock requested - leave it so. */ if (clock == 0) return; @@ -364,7 +363,7 @@ sdhci_set_power(struct sdhci_slot *slot, /* Turn off the power. */ pwr = 0; WR1(slot, SDHCI_POWER_CONTROL, pwr); - /* If power down requested - left it so. */ + /* If power down requested - leave it so. */ if (power == 0) return; /* Set voltage. */ @@ -613,7 +612,7 @@ sdhci_init_slot(device_t dev, struct sdh if (err != 0 || slot->paddr == 0) { device_printf(dev, "Can't load DMA memory\n"); SDHCI_LOCK_DESTROY(slot); - if(err) + if (err) return (err); else return (EFAULT); @@ -794,7 +793,7 @@ sdhci_generic_resume(struct sdhci_slot * } uint32_t -sdhci_generic_min_freq(device_t brdev, struct sdhci_slot *slot) +sdhci_generic_min_freq(device_t brdev __unused, struct sdhci_slot *slot) { if (slot->version >= SDHCI_SPEC_300) @@ -804,7 +803,7 @@ sdhci_generic_min_freq(device_t brdev, s } bool -sdhci_generic_get_card_present(device_t brdev, struct sdhci_slot *slot) +sdhci_generic_get_card_present(device_t brdev __unused, struct sdhci_slot *slot) { if (slot->opt & SDHCI_NON_REMOVABLE) @@ -847,7 +846,7 @@ sdhci_generic_update_ios(device_t brdev, slot->hostctrl &= ~SDHCI_CTRL_HISPD; WR1(slot, SDHCI_HOST_CONTROL, slot->hostctrl); /* Some controllers like reset after bus changes. */ - if(slot->quirks & SDHCI_QUIRK_RESET_ON_IOS) + if (slot->quirks & SDHCI_QUIRK_RESET_ON_IOS) sdhci_reset(slot, SDHCI_RESET_CMD | SDHCI_RESET_DATA); SDHCI_UNLOCK(slot); @@ -885,8 +884,7 @@ sdhci_timeout(void *arg) } static void -sdhci_set_transfer_mode(struct sdhci_slot *slot, - struct mmc_data *data) +sdhci_set_transfer_mode(struct sdhci_slot *slot, struct mmc_data *data) { uint16_t mode; @@ -925,8 +923,10 @@ sdhci_start_command(struct sdhci_slot *s return; } - /* Do not issue command if there is no card, clock or power. - * Controller will not detect timeout without clock active. */ + /* + * Do not issue command if there is no card, clock or power. + * Controller will not detect timeout without clock active. + */ if (!SDHCI_GET_CARD_PRESENT(slot->bus, slot) || slot->power == 0 || slot->clock == 0) { @@ -1196,7 +1196,8 @@ sdhci_start(struct sdhci_slot *slot) } int -sdhci_generic_request(device_t brdev, device_t reqdev, struct mmc_request *req) +sdhci_generic_request(device_t brdev __unused, device_t reqdev, + struct mmc_request *req) { struct sdhci_slot *slot = device_get_ivars(reqdev); @@ -1226,7 +1227,7 @@ sdhci_generic_request(device_t brdev, de } int -sdhci_generic_get_ro(device_t brdev, device_t reqdev) +sdhci_generic_get_ro(device_t brdev __unused, device_t reqdev) { struct sdhci_slot *slot = device_get_ivars(reqdev); uint32_t val; @@ -1238,7 +1239,7 @@ sdhci_generic_get_ro(device_t brdev, dev } int -sdhci_generic_acquire_host(device_t brdev, device_t reqdev) +sdhci_generic_acquire_host(device_t brdev __unused, device_t reqdev) { struct sdhci_slot *slot = device_get_ivars(reqdev); int err = 0; @@ -1254,7 +1255,7 @@ sdhci_generic_acquire_host(device_t brde } int -sdhci_generic_release_host(device_t brdev, device_t reqdev) +sdhci_generic_release_host(device_t brdev __unused, device_t reqdev) { struct sdhci_slot *slot = device_get_ivars(reqdev); @@ -1531,6 +1532,8 @@ sdhci_generic_write_ivar(device_t bus, d uintptr_t value) { struct sdhci_slot *slot = device_get_ivars(child); + uint32_t clock, max_clock; + int i; switch (which) { default: @@ -1546,10 +1549,6 @@ sdhci_generic_write_ivar(device_t bus, d break; case MMCBR_IVAR_CLOCK: if (value > 0) { - uint32_t max_clock; - uint32_t clock; - int i; - max_clock = slot->max_clk; clock = max_clock; @@ -1560,8 +1559,7 @@ sdhci_generic_write_ivar(device_t bus, d break; clock >>= 1; } - } - else { + } else { for (i = 0; i < SDHCI_300_MAX_DIVIDER; i += 2) { if (clock <= value) Modified: head/sys/dev/sdhci/sdhci_acpi.c ============================================================================== --- head/sys/dev/sdhci/sdhci_acpi.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/dev/sdhci/sdhci_acpi.c Mon Mar 6 23:47:59 2017 (r314811) @@ -29,7 +29,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include #include @@ -41,16 +40,14 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include #include -#include -#include -#include "sdhci.h" +#include + #include "mmcbr_if.h" #include "sdhci_if.h" @@ -192,7 +189,7 @@ sdhci_acpi_find_device(device_t dev) if ((sdhci_acpi_devices[i].uid != 0) && (sdhci_acpi_devices[i].uid != uid)) continue; - return &sdhci_acpi_devices[i]; + return (&sdhci_acpi_devices[i]); } return (NULL); Modified: head/sys/dev/sdhci/sdhci_fdt.c ============================================================================== --- head/sys/dev/sdhci/sdhci_fdt.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/dev/sdhci/sdhci_fdt.c Mon Mar 6 23:47:59 2017 (r314811) @@ -34,7 +34,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include #include @@ -46,15 +45,13 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include #include #include -#include -#include + #include #include "mmcbr_if.h" Modified: head/sys/dev/sdhci/sdhci_pci.c ============================================================================== --- head/sys/dev/sdhci/sdhci_pci.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/dev/sdhci/sdhci_pci.c Mon Mar 6 23:47:59 2017 (r314811) @@ -29,7 +29,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include #include @@ -44,20 +43,17 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include -#include -#include -#include "sdhci.h" +#include + #include "mmcbr_if.h" #include "sdhci_if.h" /* * PCI registers */ - #define PCI_SDHCI_IFPIO 0x00 #define PCI_SDHCI_IFDMA 0x01 #define PCI_SDHCI_IFVENDOR 0x02 Modified: head/sys/mips/ingenic/jz4780_mmc.c ============================================================================== --- head/sys/mips/ingenic/jz4780_mmc.c Mon Mar 6 23:41:23 2017 (r314810) +++ head/sys/mips/ingenic/jz4780_mmc.c Mon Mar 6 23:47:59 2017 (r314811) @@ -968,7 +968,6 @@ static device_method_t jz4780_mmc_method /* Bus interface */ DEVMETHOD(bus_read_ivar, jz4780_mmc_read_ivar), DEVMETHOD(bus_write_ivar, jz4780_mmc_write_ivar), - DEVMETHOD(bus_print_child, bus_generic_print_child), /* MMC bridge interface */ DEVMETHOD(mmcbr_update_ios, jz4780_mmc_update_ios), @@ -988,6 +987,7 @@ static driver_t jz4780_mmc_driver = { sizeof(struct jz4780_mmc_softc), }; -DRIVER_MODULE(jzmmc, simplebus, jz4780_mmc_driver, jz4780_mmc_devclass, 0, 0); +DRIVER_MODULE(jzmmc, simplebus, jz4780_mmc_driver, jz4780_mmc_devclass, NULL, + NULL); DRIVER_MODULE(mmc, jzmmc, mmc_driver, mmc_devclass, NULL, NULL); MODULE_DEPEND(jzmmc, mmc, 1, 1, 1); From owner-svn-src-all@freebsd.org Tue Mar 7 00:13:55 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6F4AECFA030; Tue, 7 Mar 2017 00:13:55 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 3E0EC16AC; Tue, 7 Mar 2017 00:13:55 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v270DsI1039322; Tue, 7 Mar 2017 00:13:54 GMT (envelope-from ae@FreeBSD.org) Received: (from ae@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v270DrDf039314; Tue, 7 Mar 2017 00:13:53 GMT (envelope-from ae@FreeBSD.org) Message-Id: <201703070013.v270DrDf039314@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org using -f From: "Andrey V. Elsukov" Date: Tue, 7 Mar 2017 00:13:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314812 - in head: lib/libipsec sbin/setkey sys/net sys/netipsec X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 00:13:55 -0000 Author: ae Date: Tue Mar 7 00:13:53 2017 New Revision: 314812 URL: https://svnweb.freebsd.org/changeset/base/314812 Log: Introduce the concept of IPsec security policies scope. Currently are defined three scopes: global, ifnet, and pcb. Generic security policies that IKE daemon can add via PF_KEY interface or an administrator creates with setkey(8) utility have GLOBAL scope. Such policies can be applied by the kernel to outgoing packets and checked agains inbound packets after IPsec processing. Security policies created by if_ipsec(4) interfaces have IFNET scope. Such policies are applied to packets that are passed through if_ipsec(4) interface. And security policies created by application using setsockopt() IP_IPSEC_POLICY option have PCB scope. Such policies are applied to packets related to specific socket. Currently there is no way to list PCB policies via setkey(8) utility. Modify setkey(8) and libipsec(3) to be able distinguish the scope of security policies in the `setkey -DP` listing. Add two optional flags: '-t' to list only policies related to virtual *tunneling* interfaces, i.e. policies with IFNET scope, and '-g' to list only policies with GLOBAL scope. By default policies from all scopes are listed. To implement this PF_KEY's sadb_x_policy structure was modified. sadb_x_policy_reserved field is used to pass the policy scope from the kernel to userland. SADB_SPDDUMP message extended to support filtering by scope: sadb_msg_satype field is used to specify bit mask of requested scopes. For IFNET policies the sadb_x_policy_priority field of struct sadb_x_policy is used to pass if_ipsec's interface if_index to the userland. For GLOBAL policies sadb_x_policy_priority is used only to manage order of security policies in the SPDB. For IFNET policies it is not used, so it can be used to keep if_index. After this change the output of `setkey -DP` now looks like: # setkey -DPt 0.0.0.0/0[any] 0.0.0.0/0[any] any in ipsec esp/tunnel/87.250.242.144-87.250.242.145/unique:145 spid=7 seq=3 pid=58025 scope=ifnet ifname=ipsec0 refcnt=1 # setkey -DPg ::/0 ::/0 icmp6 135,0 out none spid=5 seq=1 pid=872 scope=global refcnt=1 No objection from: #network Obtained from: Yandex LLC MFC after: 2 weeks Sponsored by: Yandex LLC Differential Revision: https://reviews.freebsd.org/D9805 Modified: head/lib/libipsec/pfkey_dump.c head/sbin/setkey/setkey.8 head/sbin/setkey/setkey.c head/sys/net/if_ipsec.c head/sys/net/pfkeyv2.h head/sys/netipsec/ipsec.h head/sys/netipsec/key.c Modified: head/lib/libipsec/pfkey_dump.c ============================================================================== --- head/lib/libipsec/pfkey_dump.c Mon Mar 6 23:47:59 2017 (r314811) +++ head/lib/libipsec/pfkey_dump.c Tue Mar 7 00:13:53 2017 (r314812) @@ -35,8 +35,9 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include +#include #include +#include #include #include @@ -204,6 +205,13 @@ static struct val2str str_alg_comp[] = { { -1, NULL, }, }; +static struct val2str str_sp_scope[] = { + { IPSEC_POLICYSCOPE_GLOBAL, "global" }, + { IPSEC_POLICYSCOPE_IFNET, "ifnet" }, + { IPSEC_POLICYSCOPE_PCB, "pcb"}, + { -1, NULL }, +}; + /* * dump SADB_MSG formated. For debugging, you should use kdebug_sadb(). */ @@ -398,8 +406,7 @@ pfkey_sadump(m) } void -pfkey_spdump(m) - struct sadb_msg *m; +pfkey_spdump(struct sadb_msg *m) { char pbuf[NI_MAXSERV]; caddr_t mhp[SADB_EXT_MAX + 1]; @@ -507,10 +514,15 @@ pfkey_spdump(m) } - printf("\tspid=%ld seq=%ld pid=%ld\n", + printf("\tspid=%ld seq=%ld pid=%ld scope=", (u_long)m_xpl->sadb_x_policy_id, (u_long)m->sadb_msg_seq, (u_long)m->sadb_msg_pid); + GETMSGV2S(str_sp_scope, m_xpl->sadb_x_policy_scope); + if (m_xpl->sadb_x_policy_scope == IPSEC_POLICYSCOPE_IFNET && + if_indextoname(m_xpl->sadb_x_policy_ifindex, pbuf) != NULL) + printf("ifname=%s", pbuf); + printf("\n"); /* XXX TEST */ printf("\trefcnt=%u\n", m->sadb_msg_reserved); Modified: head/sbin/setkey/setkey.8 ============================================================================== --- head/sbin/setkey/setkey.8 Mon Mar 6 23:47:59 2017 (r314811) +++ head/sbin/setkey/setkey.8 Tue Mar 7 00:13:53 2017 (r314812) @@ -29,7 +29,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 27, 2017 +.Dd March 7, 2017 .Dt SETKEY 8 .Os .\" @@ -45,7 +45,7 @@ .Op Fl v .Fl f Ar filename .Nm -.Op Fl aPlv +.Op Fl Pgltv .Fl D .Nm .Op Fl Pv @@ -81,18 +81,21 @@ Flush the SAD entries. If with .Fl P , the SPD entries are flushed. -.It Fl a -The -.Nm -utility -usually does not display dead SAD entries with -.Fl D . -If with -.Fl a , -the dead SAD entries will be displayed as well. -A dead SAD entry means that -it has been expired but remains in the system -because it is referenced by some SPD entries. +.It Fl g +Only SPD entries with global scope are dumped with +.Fl D +and +.Fl P +flags. +.It Fl t +Only SPD entries with ifnet scope are dumped with +.Fl D +and +.Fl P +flags. +Such SPD entries are linked to the corresponding +.Xr if_ipsec 4 +virtual tunneling interface. .It Fl h Add hexadecimal dump on .Fl x @@ -697,6 +700,7 @@ add 10.1.10.34 10.1.10.36 tcp 0x1000 -A .\" .Sh SEE ALSO .Xr ipsec_set_policy 3 , +.Xr if_ipsec 4 , .Xr racoon 8 , .Xr sysctl 8 .Rs Modified: head/sbin/setkey/setkey.c ============================================================================== --- head/sbin/setkey/setkey.c Mon Mar 6 23:47:59 2017 (r314811) +++ head/sbin/setkey/setkey.c Tue Mar 7 00:13:53 2017 (r314812) @@ -56,7 +56,7 @@ void usage(void); int main(int, char **); int get_supported(void); -void sendkeyshort(u_int); +void sendkeyshort(u_int, uint8_t); void promisc(void); int sendkeymsg(char *, size_t); int postproc(struct sadb_msg *, int); @@ -81,6 +81,7 @@ int f_cmddump = 0; int f_policy = 0; int f_hexdump = 0; int f_tflag = 0; +int f_scope = 0; static time_t thiszone; extern int lineno; @@ -93,7 +94,7 @@ usage() printf("usage: setkey [-v] -c\n"); printf(" setkey [-v] -f filename\n"); - printf(" setkey [-Palv] -D\n"); + printf(" setkey [-Pagltv] -D\n"); printf(" setkey [-Pv] -F\n"); printf(" setkey [-h] -x\n"); exit(1); @@ -114,7 +115,7 @@ main(ac, av) thiszone = gmt2local(0); - while ((c = getopt(ac, av, "acdf:hlvxDFP")) != -1) { + while ((c = getopt(ac, av, "acdf:ghltvxDFP")) != -1) { switch (c) { case 'c': f_mode = MODE_SCRIPT; @@ -149,6 +150,12 @@ main(ac, av) case 'P': f_policy = 1; break; + case 'g': /* global */ + f_scope |= IPSEC_POLICYSCOPE_GLOBAL; + break; + case 't': /* tunnel */ + f_scope |= IPSEC_POLICYSCOPE_IFNET; + break; case 'v': f_verbose = 1; break; @@ -166,10 +173,12 @@ main(ac, av) switch (f_mode) { case MODE_CMDDUMP: - sendkeyshort(f_policy ? SADB_X_SPDDUMP: SADB_DUMP); + sendkeyshort(f_policy ? SADB_X_SPDDUMP: SADB_DUMP, + f_policy ? f_scope: SADB_SATYPE_UNSPEC); break; case MODE_CMDFLUSH: - sendkeyshort(f_policy ? SADB_X_SPDFLUSH: SADB_FLUSH); + sendkeyshort(f_policy ? SADB_X_SPDFLUSH: SADB_FLUSH, + SADB_SATYPE_UNSPEC); break; case MODE_SCRIPT: if (get_supported() < 0) { @@ -204,15 +213,14 @@ get_supported() } void -sendkeyshort(type) - u_int type; +sendkeyshort(u_int type, uint8_t satype) { struct sadb_msg msg; msg.sadb_msg_version = PF_KEY_V2; msg.sadb_msg_type = type; msg.sadb_msg_errno = 0; - msg.sadb_msg_satype = SADB_SATYPE_UNSPEC; + msg.sadb_msg_satype = satype; msg.sadb_msg_len = PFKEY_UNIT64(sizeof(msg)); msg.sadb_msg_reserved = 0; msg.sadb_msg_seq = 0; Modified: head/sys/net/if_ipsec.c ============================================================================== --- head/sys/net/if_ipsec.c Mon Mar 6 23:47:59 2017 (r314811) +++ head/sys/net/if_ipsec.c Tue Mar 7 00:13:53 2017 (r314812) @@ -717,7 +717,7 @@ bad: * ipsec esp/tunnel/LocalIP-RemoteIP/unique:reqid */ static int -ipsec_newpolicies(struct secpolicy *sp[IPSEC_SPCOUNT], +ipsec_newpolicies(struct ipsec_softc *sc, struct secpolicy *sp[IPSEC_SPCOUNT], const struct sockaddr *src, const struct sockaddr *dst, uint32_t reqid) { struct ipsecrequest *isr; @@ -734,6 +734,8 @@ ipsec_newpolicies(struct secpolicy *sp[I sp[i]->state = IPSEC_SPSTATE_DEAD; sp[i]->req[sp[i]->tcount++] = isr; sp[i]->created = time_second; + /* Use priority field to store if_index */ + sp[i]->priority = sc->ifp->if_index; isr->level = IPSEC_LEVEL_UNIQUE; isr->saidx.proto = IPPROTO_ESP; isr->saidx.mode = IPSEC_MODE_TUNNEL; @@ -936,7 +938,7 @@ ipsec_set_tunnel(struct ipsec_softc *sc, sx_assert(&ipsec_ioctl_sx, SA_XLOCKED); /* Allocate SP with new addresses. */ - if (ipsec_newpolicies(sp, src, dst, reqid) == 0) { + if (ipsec_newpolicies(sc, sp, src, dst, reqid) == 0) { /* Add new policies to SPDB */ if (key_register_ifnet(sp, IPSEC_SPCOUNT) != 0) { for (i = 0; i < IPSEC_SPCOUNT; i++) Modified: head/sys/net/pfkeyv2.h ============================================================================== --- head/sys/net/pfkeyv2.h Mon Mar 6 23:47:59 2017 (r314811) +++ head/sys/net/pfkeyv2.h Tue Mar 7 00:13:53 2017 (r314812) @@ -223,9 +223,12 @@ struct sadb_x_policy { u_int16_t sadb_x_policy_exttype; u_int16_t sadb_x_policy_type; /* See policy type of ipsec.h */ u_int8_t sadb_x_policy_dir; /* direction, see ipsec.h */ - u_int8_t sadb_x_policy_reserved; + u_int8_t sadb_x_policy_scope; /* scope, see ipsec.h */ u_int32_t sadb_x_policy_id; u_int32_t sadb_x_policy_priority; +#define sadb_x_policy_reserved sadb_x_policy_scope +/* Policy with ifnet scope uses priority field to store ifindex */ +#define sadb_x_policy_ifindex sadb_x_policy_priority }; _Static_assert(sizeof(struct sadb_x_policy) == 16, "struct size mismatch"); Modified: head/sys/netipsec/ipsec.h ============================================================================== --- head/sys/netipsec/ipsec.h Mon Mar 6 23:47:59 2017 (r314811) +++ head/sys/netipsec/ipsec.h Tue Mar 7 00:13:53 2017 (r314812) @@ -179,6 +179,12 @@ struct secspacq { #define IPSEC_POLICY_ENTRUST 3 /* consulting SPD if present. */ #define IPSEC_POLICY_BYPASS 4 /* only for privileged socket. */ +/* Policy scope */ +#define IPSEC_POLICYSCOPE_ANY 0x00 /* unspecified */ +#define IPSEC_POLICYSCOPE_GLOBAL 0x01 /* global scope */ +#define IPSEC_POLICYSCOPE_IFNET 0x02 /* if_ipsec(4) scope */ +#define IPSEC_POLICYSCOPE_PCB 0x04 /* PCB scope */ + /* Security protocol level */ #define IPSEC_LEVEL_DEFAULT 0 /* reference to system default */ #define IPSEC_LEVEL_USE 1 /* use SA if present. */ Modified: head/sys/netipsec/key.c ============================================================================== --- head/sys/netipsec/key.c Mon Mar 6 23:47:59 2017 (r314811) +++ head/sys/netipsec/key.c Tue Mar 7 00:13:53 2017 (r314812) @@ -1660,6 +1660,16 @@ key_sp2msg(struct secpolicy *sp, void *r xpl->sadb_x_policy_dir = sp->spidx.dir; xpl->sadb_x_policy_id = sp->id; xpl->sadb_x_policy_priority = sp->priority; + switch (sp->state) { + case IPSEC_SPSTATE_IFNET: + xpl->sadb_x_policy_scope = IPSEC_POLICYSCOPE_IFNET; + break; + case IPSEC_SPSTATE_PCB: + xpl->sadb_x_policy_scope = IPSEC_POLICYSCOPE_PCB; + break; + default: + xpl->sadb_x_policy_scope = IPSEC_POLICYSCOPE_GLOBAL; + } /* if is the policy for ipsec ? */ if (sp->policy == IPSEC_POLICY_IPSEC) { @@ -2388,16 +2398,25 @@ key_spdflush(struct socket *so, struct m return key_sendup_mbuf(so, m, KEY_SENDUP_ALL); } +static uint8_t +key_satype2scopemask(uint8_t satype) +{ + + if (satype == IPSEC_POLICYSCOPE_ANY) + return (0xff); + return (satype); +} /* * SADB_SPDDUMP processing * receive * - * from the user, and dump all SP leaves - * and send, + * from the user, and dump all SP leaves and send, * ..... * to the ikmpd. * - * m will always be freed. + * NOTE: + * sadb_msg_satype is considered as mask of policy scopes. + * m will always be freed. */ static int key_spddump(struct socket *so, struct mbuf *m, const struct sadb_msghdr *mhp) @@ -2406,7 +2425,7 @@ key_spddump(struct socket *so, struct mb struct secpolicy *sp; struct mbuf *n; int cnt; - u_int dir; + u_int dir, scope; IPSEC_ASSERT(so != NULL, ("null socket")); IPSEC_ASSERT(m != NULL, ("null mbuf")); @@ -2415,13 +2434,16 @@ key_spddump(struct socket *so, struct mb /* search SPD entry and get buffer size. */ cnt = 0; + scope = key_satype2scopemask(mhp->msg->sadb_msg_satype); SPTREE_RLOCK(); for (dir = 0; dir < IPSEC_DIR_MAX; dir++) { - TAILQ_FOREACH(sp, &V_sptree[dir], chain) { - cnt++; - } - TAILQ_FOREACH(sp, &V_sptree_ifnet[dir], chain) { - cnt++; + if (scope & IPSEC_POLICYSCOPE_GLOBAL) { + TAILQ_FOREACH(sp, &V_sptree[dir], chain) + cnt++; + } + if (scope & IPSEC_POLICYSCOPE_IFNET) { + TAILQ_FOREACH(sp, &V_sptree_ifnet[dir], chain) + cnt++; } } @@ -2431,21 +2453,25 @@ key_spddump(struct socket *so, struct mb } for (dir = 0; dir < IPSEC_DIR_MAX; dir++) { - TAILQ_FOREACH(sp, &V_sptree[dir], chain) { - --cnt; - n = key_setdumpsp(sp, SADB_X_SPDDUMP, cnt, - mhp->msg->sadb_msg_pid); - - if (n) - key_sendup_mbuf(so, n, KEY_SENDUP_ONE); - } - TAILQ_FOREACH(sp, &V_sptree_ifnet[dir], chain) { - --cnt; - n = key_setdumpsp(sp, SADB_X_SPDDUMP, cnt, - mhp->msg->sadb_msg_pid); + if (scope & IPSEC_POLICYSCOPE_GLOBAL) { + TAILQ_FOREACH(sp, &V_sptree[dir], chain) { + --cnt; + n = key_setdumpsp(sp, SADB_X_SPDDUMP, cnt, + mhp->msg->sadb_msg_pid); - if (n) - key_sendup_mbuf(so, n, KEY_SENDUP_ONE); + if (n != NULL) + key_sendup_mbuf(so, n, KEY_SENDUP_ONE); + } + } + if (scope & IPSEC_POLICYSCOPE_IFNET) { + TAILQ_FOREACH(sp, &V_sptree_ifnet[dir], chain) { + --cnt; + n = key_setdumpsp(sp, SADB_X_SPDDUMP, cnt, + mhp->msg->sadb_msg_pid); + + if (n != NULL) + key_sendup_mbuf(so, n, KEY_SENDUP_ONE); + } } } @@ -7659,64 +7685,79 @@ key_parse(struct mbuf *m, struct socket msg = mh.msg; - /* check SA type */ - switch (msg->sadb_msg_satype) { - case SADB_SATYPE_UNSPEC: - switch (msg->sadb_msg_type) { - case SADB_GETSPI: - case SADB_UPDATE: - case SADB_ADD: - case SADB_DELETE: - case SADB_GET: - case SADB_ACQUIRE: - case SADB_EXPIRE: - ipseclog((LOG_DEBUG, "%s: must specify satype " - "when msg type=%u.\n", __func__, - msg->sadb_msg_type)); + /* We use satype as scope mask for spddump */ + if (msg->sadb_msg_type == SADB_X_SPDDUMP) { + switch (msg->sadb_msg_satype) { + case IPSEC_POLICYSCOPE_ANY: + case IPSEC_POLICYSCOPE_GLOBAL: + case IPSEC_POLICYSCOPE_IFNET: + case IPSEC_POLICYSCOPE_PCB: + break; + default: + ipseclog((LOG_DEBUG, "%s: illegal satype=%u\n", + __func__, msg->sadb_msg_type)); PFKEYSTAT_INC(out_invsatype); error = EINVAL; goto senderror; } - break; - case SADB_SATYPE_AH: - case SADB_SATYPE_ESP: - case SADB_X_SATYPE_IPCOMP: - case SADB_X_SATYPE_TCPSIGNATURE: - switch (msg->sadb_msg_type) { - case SADB_X_SPDADD: - case SADB_X_SPDDELETE: - case SADB_X_SPDGET: - case SADB_X_SPDDUMP: - case SADB_X_SPDFLUSH: - case SADB_X_SPDSETIDX: - case SADB_X_SPDUPDATE: - case SADB_X_SPDDELETE2: - ipseclog((LOG_DEBUG, "%s: illegal satype=%u\n", - __func__, msg->sadb_msg_type)); + } else { + switch (msg->sadb_msg_satype) { /* check SA type */ + case SADB_SATYPE_UNSPEC: + switch (msg->sadb_msg_type) { + case SADB_GETSPI: + case SADB_UPDATE: + case SADB_ADD: + case SADB_DELETE: + case SADB_GET: + case SADB_ACQUIRE: + case SADB_EXPIRE: + ipseclog((LOG_DEBUG, "%s: must specify satype " + "when msg type=%u.\n", __func__, + msg->sadb_msg_type)); + PFKEYSTAT_INC(out_invsatype); + error = EINVAL; + goto senderror; + } + break; + case SADB_SATYPE_AH: + case SADB_SATYPE_ESP: + case SADB_X_SATYPE_IPCOMP: + case SADB_X_SATYPE_TCPSIGNATURE: + switch (msg->sadb_msg_type) { + case SADB_X_SPDADD: + case SADB_X_SPDDELETE: + case SADB_X_SPDGET: + case SADB_X_SPDFLUSH: + case SADB_X_SPDSETIDX: + case SADB_X_SPDUPDATE: + case SADB_X_SPDDELETE2: + ipseclog((LOG_DEBUG, "%s: illegal satype=%u\n", + __func__, msg->sadb_msg_type)); + PFKEYSTAT_INC(out_invsatype); + error = EINVAL; + goto senderror; + } + break; + case SADB_SATYPE_RSVP: + case SADB_SATYPE_OSPFV2: + case SADB_SATYPE_RIPV2: + case SADB_SATYPE_MIP: + ipseclog((LOG_DEBUG, "%s: type %u isn't supported.\n", + __func__, msg->sadb_msg_satype)); + PFKEYSTAT_INC(out_invsatype); + error = EOPNOTSUPP; + goto senderror; + case 1: /* XXX: What does it do? */ + if (msg->sadb_msg_type == SADB_X_PROMISC) + break; + /*FALLTHROUGH*/ + default: + ipseclog((LOG_DEBUG, "%s: invalid type %u is passed.\n", + __func__, msg->sadb_msg_satype)); PFKEYSTAT_INC(out_invsatype); error = EINVAL; goto senderror; } - break; - case SADB_SATYPE_RSVP: - case SADB_SATYPE_OSPFV2: - case SADB_SATYPE_RIPV2: - case SADB_SATYPE_MIP: - ipseclog((LOG_DEBUG, "%s: type %u isn't supported.\n", - __func__, msg->sadb_msg_satype)); - PFKEYSTAT_INC(out_invsatype); - error = EOPNOTSUPP; - goto senderror; - case 1: /* XXX: What does it do? */ - if (msg->sadb_msg_type == SADB_X_PROMISC) - break; - /*FALLTHROUGH*/ - default: - ipseclog((LOG_DEBUG, "%s: invalid type %u is passed.\n", - __func__, msg->sadb_msg_satype)); - PFKEYSTAT_INC(out_invsatype); - error = EINVAL; - goto senderror; } /* check field of upper layer protocol and address family */ From owner-svn-src-all@freebsd.org Tue Mar 7 00:20:03 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 312C4CFA1F3; Tue, 7 Mar 2017 00:20:03 +0000 (UTC) (envelope-from hiren@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F25E819A3; Tue, 7 Mar 2017 00:20:02 +0000 (UTC) (envelope-from hiren@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v270K2jn039656; Tue, 7 Mar 2017 00:20:02 GMT (envelope-from hiren@FreeBSD.org) Received: (from hiren@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v270K2vA039655; Tue, 7 Mar 2017 00:20:02 GMT (envelope-from hiren@FreeBSD.org) Message-Id: <201703070020.v270K2vA039655@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hiren set sender to hiren@FreeBSD.org using -f From: Hiren Panchasara Date: Tue, 7 Mar 2017 00:20:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314813 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 00:20:03 -0000 Author: hiren Date: Tue Mar 7 00:20:01 2017 New Revision: 314813 URL: https://svnweb.freebsd.org/changeset/base/314813 Log: We've found a recurring problem where some userland process would be stuck spinning at 100% cpu around sbcut_internal(). Inside sbflush_internal(), sb_ccc reached to about 4GB and before passing it to sbcut_internal(), we type-cast it from uint to int making it -ve. The root cause of sockbuf growing this large is unknown. Correct fix is also not clear but based on mailing list discussions, adding KASSERTs to panic instead of looping endlessly. Reviewed by: glebius Sponsored by: Limelight Networks Modified: head/sys/kern/uipc_sockbuf.c Modified: head/sys/kern/uipc_sockbuf.c ============================================================================== --- head/sys/kern/uipc_sockbuf.c Tue Mar 7 00:13:53 2017 (r314812) +++ head/sys/kern/uipc_sockbuf.c Tue Mar 7 00:20:01 2017 (r314813) @@ -1043,6 +1043,11 @@ sbcut_internal(struct sockbuf *sb, int l { struct mbuf *m, *next, *mfree; + KASSERT(len > 0, ("%s: len is %d but it is supposed to be +ve", + __func__, len)); + KASSERT(len <= sb->sb_ccc, ("%s: len: %d is > ccc: %u", + __func__, len, sb->sb_ccc)); + next = (m = sb->sb_mb) ? m->m_nextpkt : 0; mfree = NULL; From owner-svn-src-all@freebsd.org Tue Mar 7 01:13:27 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AFC0BCFB452; Tue, 7 Mar 2017 01:13:27 +0000 (UTC) (envelope-from np@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7D0C315DE; Tue, 7 Mar 2017 01:13:27 +0000 (UTC) (envelope-from np@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v271DQcK063879; Tue, 7 Mar 2017 01:13:26 GMT (envelope-from np@FreeBSD.org) Received: (from np@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v271DQ3R063878; Tue, 7 Mar 2017 01:13:26 GMT (envelope-from np@FreeBSD.org) Message-Id: <201703070113.v271DQ3R063878@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: np set sender to np@FreeBSD.org using -f From: Navdeep Parhar Date: Tue, 7 Mar 2017 01:13:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314814 - head/sys/dev/cxgbe/iw_cxgbe X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 01:13:27 -0000 Author: np Date: Tue Mar 7 01:13:26 2017 New Revision: 314814 URL: https://svnweb.freebsd.org/changeset/base/314814 Log: cxgbe/iw_cxgbe: Abort connection if there is an error during c4iw_modify_qp. Submitted by: KrishnamRaju ErapaRaju @ Chelsio MFC after: 3 days Sponsored by: Chelsio Communications Modified: head/sys/dev/cxgbe/iw_cxgbe/qp.c Modified: head/sys/dev/cxgbe/iw_cxgbe/qp.c ============================================================================== --- head/sys/dev/cxgbe/iw_cxgbe/qp.c Tue Mar 7 00:20:01 2017 (r314813) +++ head/sys/dev/cxgbe/iw_cxgbe/qp.c Tue Mar 7 01:13:26 2017 (r314814) @@ -1427,6 +1427,7 @@ err: qhp->ep = NULL; set_state(qhp, C4IW_QP_STATE_ERROR); free = 1; + abort = 1; BUG_ON(!ep); flush_qp(qhp); wake_up(&qhp->wait); From owner-svn-src-all@freebsd.org Tue Mar 7 01:15:59 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5C855CFB90E; Tue, 7 Mar 2017 01:15:59 +0000 (UTC) (envelope-from sephe@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2A8BF197C; Tue, 7 Mar 2017 01:15:59 +0000 (UTC) (envelope-from sephe@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v271FwCd064023; Tue, 7 Mar 2017 01:15:58 GMT (envelope-from sephe@FreeBSD.org) Received: (from sephe@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v271FwsN064022; Tue, 7 Mar 2017 01:15:58 GMT (envelope-from sephe@FreeBSD.org) Message-Id: <201703070115.v271FwsN064022@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sephe set sender to sephe@FreeBSD.org using -f From: Sepherosa Ziehau Date: Tue, 7 Mar 2017 01:15:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-svnadmin@freebsd.org Subject: svn commit: r314815 - svnadmin/conf X-SVN-Group: svnadmin MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 01:15:59 -0000 Author: sephe Date: Tue Mar 7 01:15:57 2017 New Revision: 314815 URL: https://svnweb.freebsd.org/changeset/base/314815 Log: Release Dexuan from mentorship. Modified: svnadmin/conf/mentors Modified: svnadmin/conf/mentors ============================================================================== --- svnadmin/conf/mentors Tue Mar 7 01:13:26 2017 (r314814) +++ svnadmin/conf/mentors Tue Mar 7 01:15:57 2017 (r314815) @@ -14,7 +14,6 @@ achim scottl Co-mentor: emaste anish neel Co-mentor: grehan dab vangyzen def pjd -dexuan sephe eri ae Co-mentor: thompsa ivadasz adrian Co-mentor: cognet jceel trasz From owner-svn-src-all@freebsd.org Tue Mar 7 01:30:11 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4AFF1CFC56F; Tue, 7 Mar 2017 01:30:11 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 1EBBC15BE; Tue, 7 Mar 2017 01:30:11 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by freefall.freebsd.org (Postfix) with ESMTPS id 593C841E4; Tue, 7 Mar 2017 01:30:10 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 7827A33CAA; Tue, 7 Mar 2017 01:30:09 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id AFPKquioaEyE; Tue, 7 Mar 2017 01:29:56 +0000 (UTC) Subject: Re: svn commit: r314809 - head/share/mk DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com 58FBD33CA5 To: "Simon J. Gerraty" , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201703062313.v26NDP1g014180@repo.freebsd.org> From: Bryan Drewery Organization: FreeBSD Message-ID: <495d38f9-59cf-92c1-9d32-69fb10a1ebcd@FreeBSD.org> Date: Mon, 6 Mar 2017 17:29:40 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <201703062313.v26NDP1g014180@repo.freebsd.org> Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="IpahdAESqOLJ0GgKE9ucelS73lxxLKdSC" X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 01:30:11 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --IpahdAESqOLJ0GgKE9ucelS73lxxLKdSC Content-Type: multipart/mixed; boundary="diUjpSGvdk47fdMrAs40tKKaRDxG6JgtG"; protected-headers="v1" From: Bryan Drewery To: "Simon J. Gerraty" , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-ID: <495d38f9-59cf-92c1-9d32-69fb10a1ebcd@FreeBSD.org> Subject: Re: svn commit: r314809 - head/share/mk References: <201703062313.v26NDP1g014180@repo.freebsd.org> In-Reply-To: <201703062313.v26NDP1g014180@repo.freebsd.org> --diUjpSGvdk47fdMrAs40tKKaRDxG6JgtG Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 3/6/17 3:13 PM, Simon J. Gerraty wrote: > -# DEP_RELDIR to be the RELDIR (path relative to SRCTOP) for > +# DEP_RELDIR to be the the RELDIR (path relative to SRCTOP) for Oops, "the the". --=20 Regards, Bryan Drewery --diUjpSGvdk47fdMrAs40tKKaRDxG6JgtG-- --IpahdAESqOLJ0GgKE9ucelS73lxxLKdSC Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJYvg0EAAoJEDXXcbtuRpfPzckIAI6aqd0QKCJ/+rsKzO9W2r0O jrYki3H20bo552C4BzBCt8zZQ+dV3Vjn+G1hibislFwKSfbRgulxIVDOl/x2lXam PpJtUEz9MAub/m5Uby2nh+Rql4fJD6jwLl9N5P54KfGSeomTe7R26hmZEj+EtFNU RLBkZYMBxCx9XLmEEKFliI2TmYUHAHtmzkDuE6ueLvGYRCuLg6tDCWjLS+1DDCrS dWbZdt/xVZp3K1Vmk/U9KwvKw/eIOMZSUFUrY7hLLdk1XRDtYirU9b5PAO8PPh6p B6I4ZmdOpCg8YWBOZZV0HQ85zD8Fry7LedIlk3uuz/EbBZ3cDHz6Omq9qvBvihU= =bjXc -----END PGP SIGNATURE----- --IpahdAESqOLJ0GgKE9ucelS73lxxLKdSC-- From owner-svn-src-all@freebsd.org Tue Mar 7 01:41:33 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A126FCFCE95; Tue, 7 Mar 2017 01:41:33 +0000 (UTC) (envelope-from sjg@juniper.net) Received: from NAM02-SN1-obe.outbound.protection.outlook.com (mail-sn1nam02on0091.outbound.protection.outlook.com [104.47.36.91]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (Client CN "mail.protection.outlook.com", Issuer "Microsoft IT SSL SHA2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3AF731ECD; Tue, 7 Mar 2017 01:41:32 +0000 (UTC) (envelope-from sjg@juniper.net) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=junipernetworks.onmicrosoft.com; s=selector1-juniper-net; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=0ta+SPppIekuDrBGEMKx8m2r75vvT+12LaISWy87+Sw=; b=T2iSmPyUqH5NWcf/CfhEGehkKXQTajpisQxohkqBkZbR/6sn7N7NTjfeHT+GNwFOCPVGQYISO81VfAlz3vI6hUjpb9xLrZLGaO64I+zQ+oD7jPEW/H5OTJ8ECXm2ETeY9oleBkDGFePPVNOujshHK6scNbHa+rDC0Twynkaeh0o= Received: from MWHPR05CA0003.namprd05.prod.outlook.com (10.168.242.141) by BY2PR0501MB2005.namprd05.prod.outlook.com (10.163.197.16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.961.8; Tue, 7 Mar 2017 01:41:31 +0000 Received: from BY2FFO11OLC008.protection.gbl (2a01:111:f400:7c0c::110) by MWHPR05CA0003.outlook.office365.com (2603:10b6:300:59::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.961.8 via Frontend Transport; Tue, 7 Mar 2017 01:41:31 +0000 Authentication-Results: spf=softfail (sender IP is 66.129.239.18) smtp.mailfrom=juniper.net; FreeBSD.org; dkim=none (message not signed) header.d=none;FreeBSD.org; dmarc=none action=none header.from=juniper.net; Received-SPF: SoftFail (protection.outlook.com: domain of transitioning juniper.net discourages use of 66.129.239.18 as permitted sender) Received: from p-emfe01a-sac.jnpr.net (66.129.239.18) by BY2FFO11OLC008.mail.protection.outlook.com (10.1.14.255) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id 15.1.947.7 via Frontend Transport; Tue, 7 Mar 2017 01:41:29 +0000 Received: from p-mailhub01.juniper.net (10.160.2.17) by p-emfe01a-sac.jnpr.net (172.24.192.21) with Microsoft SMTP Server (TLS) id 14.3.123.3; Mon, 6 Mar 2017 17:41:09 -0800 Received: from kaos.jnpr.net (kaos.jnpr.net [172.21.30.60]) by p-mailhub01.juniper.net (8.14.4/8.11.3) with ESMTP id v271f90Q009859; Mon, 6 Mar 2017 17:41:09 -0800 (envelope-from sjg@juniper.net) Received: from kaos.jnpr.net (localhost [127.0.0.1]) by kaos.jnpr.net (Postfix) with ESMTP id 3BC6C38551F; Mon, 6 Mar 2017 17:41:09 -0800 (PST) To: Bryan Drewery CC: , , , Subject: Re: svn commit: r314809 - head/share/mk In-Reply-To: <495d38f9-59cf-92c1-9d32-69fb10a1ebcd@FreeBSD.org> References: <201703062313.v26NDP1g014180@repo.freebsd.org> <495d38f9-59cf-92c1-9d32-69fb10a1ebcd@FreeBSD.org> Comments: In-reply-to: Bryan Drewery message dated "Mon, 06 Mar 2017 17:29:40 -0800." From: "Simon J. Gerraty" X-Mailer: MH-E 8.6; nmh 1.6; GNU Emacs 24.5.1 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <53950.1488850869.1@kaos.jnpr.net> Date: Mon, 6 Mar 2017 17:41:09 -0800 Message-ID: <53951.1488850869@kaos.jnpr.net> X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:66.129.239.18; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(7916002)(39850400002)(39410400002)(39860400002)(39450400003)(39840400002)(2980300002)(377454003)(24454002)(9170700003)(305945005)(117636001)(46406003)(7696004)(558084003)(105596002)(106466001)(53416004)(4326008)(47776003)(76506005)(6916009)(5660300001)(50226002)(2906002)(54906002)(81166006)(55016002)(8676002)(77096006)(2950100002)(9686003)(2810700001)(189998001)(229853002)(7126002)(107886003)(626004)(110136004)(38730400002)(50986999)(53936002)(6266002)(97756001)(53546006)(50466002)(356003)(92566002)(76176999)(6246003)(86362001)(450100001)(23726003)(42262002); DIR:OUT; SFP:1102; SCL:1; SRVR:BY2PR0501MB2005; H:p-emfe01a-sac.jnpr.net; FPR:; SPF:SoftFail; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11OLC008; 1:wekLwYAkortzSLcODuJFBJGe4ji2MJGmWhL2JykTXjbfLledW5gE9l1rdvr7IlNq8lUCF4xDWB2glyIE5mBFl+A6rdzYSjNI8E3rAAKyH2KfgyqucorZ+BaHCy2bJeVKQIFaSK6zZyNlKEO2whD+29e5yG4tYbFXNNpJtoUuUMp+zc707dMxe+TMizdvW0D4fXHokxCuXTxGY63/D1L9cETNGvFdTRAwEu5vwGvjDv440vBa9nJ/z+6i6bQaPOFzGAESQEYVqnrYCghVUHC8TUZooHRT051h+rZ9vqdAh5OGul44DnJWo1GwTUVzy2BWH0Z0cZZMCHEHYMxVoJhv7Z/ics1PXRa7scorrNQqA82wWpayylnrzcPojjb0rq2bgETHgAZDkv48iOO2eCWn55d3cY2i7BEVB/A21XIvCRq0EaJqOpsH5SekDxjrv4sUZWQHvuTu2vwKqnVpjzRgxqY+Z88RDBByZ2dRfwzVHXktee2QFrayBPDOtKi88JzHHdBfBQKITwDBfriafEPUYzSj7goBhvHvXEOzTPKLvTA= X-MS-Office365-Filtering-Correlation-Id: 1df60547-408e-46d3-49b6-08d464fb148e X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BY2PR0501MB2005; X-Microsoft-Exchange-Diagnostics: 1; BY2PR0501MB2005; 3:xA7pcuLq/8f2LNfO7eVUAzxV+zn1UPmkm1GnVSxaSeNNhLjjQ7iTqu5RGxYck65vbRioQxP8Gk8c9I4qCXKnTtalG1KUDbFXWf4jed1pSSKAMADVCUIQ2F6OO1oCISeH+VTrs/6Qej6FMxb2s2QslIvoMN/wjWEQcwfUEHwM/33DnVUfPs6XVKxMmZ7g/kD8kjlXQLm7312d+i1LxTibDcbNHqDoNgJuh5FHaW2YmDX0icvcynvphqew1FLt+mUc0JEwOw4HYpy5hS1ABcjA0fuiMOoZpFKmZhJsfwTDRcDZ1q+si/ctSSF4SZ9RUCnuHy2Ofqd+yTBda39fXQbEzXJYpm1duWQH5IzDpLN7W047hkaKZNc8NW+UJCH4uO6/; 25:/80b/661eWjuw0Ld4qMp/AhjN+gWMdgwbUuyI/IcBalFXKj2Mhir1yJ7p7EvzQoSLHfGnyZSlMEqXXi7+OhWDY46nyDqgRqUXC0m8c3ZzYZ9XCWvXrjUHoUiZ6NghnFgu7z4hb+GBIgoMUz/JPJiVS8anpLpVJCAV0a0FPoUdhAwknag5ZBU4V1/3O8i3cPG65jn4TMjyp0sHDTcpOVNsV4vQYia9R8vXEOzkl/OHHCmmDFU6UisLDfoVZ0AbZk3dsX/oTFefFS993TE9FiE7JmhlLxyXO4PfyoVE95ZevqNZp0UxTbJqZSLCQuOsl9sFD0PAwusR/eJqdrl4wAZz2oG+2jeev+uLhQhnmInNx3mgtF84j7SrO2Mgkx/sVAKdKDPURZ+DhZLFXOK2KGqsS6Pkh4XZEcdl+YBRvKwPTdR4iyY2r0vC+OlUrrSwK2FmyXg2muKVJ/Z1sxxmob7EA== X-Microsoft-Exchange-Diagnostics: 1; BY2PR0501MB2005; 31:SIhVbc/wpuQ2XtXs2lLzgPml8XTRfeGD6P/Y+rf6hsuK0rQEu2uFZdA5a8xiGxE3U092MEwL+Z3fYH5z1D95j6gZtXmP1y8tagX0e/vfuppTqdf8xualGLgiMl8JIy3a4kDXpm7UmEP0I0JDTUf8nKUu0IGJ1UQGkJKpPt/AIAhWJzVcNz6tMmFSD5caN0FaqB9vUEBfVnKeABmi3EE5ST73DZuoHaGUZ1Yp990HEEga84pdbgk44tQP3et5k0zc; 20:Yn8e6+zL4O16Sfe/iCUYQWBvE+LKgTXR1I1sE9veHqzB7e6SHpfCyo6oa2yLkW87SdkofdLVFrXkDDqxwrlFAmk3Er5JMSru0a7tUEj5rKLMptAB3ixJ9uWWphu0F8k5TSTvhM9ec+Fu/eHiwj9SmTjLT6EyImzXwFGmwsZoocLswfCHUP0v0Tsw/S7z9wKfrUdT45xFQysusV+R/2EBE/wDYuaqYNtkI/7WbOh3/A3vo1i+yYUbmUuVjacRWnJwgNkBVaoO176DfHLPeb/H4CVLiftunM4f4Flx9EbvkurqG8GI1tO8MV0xq28sTq0g+onoCMcFi3xnrDFYqzqUWd/OI9TpE2Frw1dvqW2W5l4nGEYr3Z0gqCK1Mz2V0NBcSqA+ZU+XeZr4S+B8LwJkJBUURDAyHXkj34Gx/j+fhQNwkEuc5Gp4qJbYu041xLd9aaHnFMN19IwVzzfLwsNxIhpH5Kdc4GfCK9pwaO+bE7F3QVOMPkKEiNhTdShL1/ob X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(13018025)(13024025)(13023025)(13017025)(13015025)(8121501046)(5005006)(10201501046)(3002001)(6055026)(6041248)(20161123555025)(20161123562025)(20161123564025)(20161123560025)(20161123558025)(6072148); SRVR:BY2PR0501MB2005; BCL:0; PCL:0; RULEID:; SRVR:BY2PR0501MB2005; X-Microsoft-Exchange-Diagnostics: 1; BY2PR0501MB2005; 4:P0KWTPI/ZTfWvn5tdHiZHLFapWtdv7pFGYtJZbFqrRbbLrRElY49XsJqXWLt8R7FySvWYE2wuo8UHozk4JzKGuN/FF9ZtqsX8stjtEFnYxobJaI4a6+Bl5UrbA+2CZ/vBr2p8Klf+fGfeq/AAxIuz9Y3VjYi7nj8M9E5qawpMdS8cjo/cIsb2AssbnVx/PZtgMQVhSq85oDkv82Vg2juvolMJhjLG7+oaBskPcaUfb0HmveY3KhpcYyLHbDO9LD/UvoT42xUDJ/rJKzb/51EOwtAhXJ+34zieBL6fdJeo//mg7FvAz3UNnWLGiM0YNrOixm3UcP6SBCX0r7MqzF5J+c3jCQOMFdsCZ21c5sv68Dsu8po5lRF/JhlRw90Ff5YBenkoM9zF6u+ir7nqNHmwWhevNosL30cCW/t4uupiqu4ilpzfOLgM1mbLHACIjXep8tgM/bdmbQIZyfIRILRYxkNjcSaZO/dIa77OlIHbnE5LrReN8WeoP7o/ILxVmAB43X4lTOv54qyCcsZbTsJ7NdSGv/HehdG+cApRPP3+fU6aFt1b7yOMsfFL1lvmf/INJmY9u+07yEk3eE4wnO12fzUvDePBXXoEcsO3yqd+CfJipbsgdJINTGQJXTOBuXLqt960BmLxyR8ol3osi1G+3URUmvsnImNPNnfx8d2djmhN1XgG70sKeivkhaqFV6WtmkpH7Cbu+NZibuSh1VXtA== X-Forefront-PRVS: 0239D46DB6 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY2PR0501MB2005; 23:kFl4IQKQKE/TnlxiPDZhfDEXUXdip1VTOP1uvS5?= =?us-ascii?Q?H5FTqCLgC2VV8AzpkRPacGzKajYs737MWjWrneuvHP1S6H7U8utBBl0IV4D4?= =?us-ascii?Q?tlgVBDEKn3EDBg6VICd+jdfhGQPjrw2bdgeAX5D6+nNwNx+lLOeqxp7kmBub?= =?us-ascii?Q?7q+C4n8M3wiKWjMm6NzByoqueIaLDH5ffPAGhOebTwqxq1HbhKBia09VEcXm?= =?us-ascii?Q?+c7nmqHs+R8KvwlFIZppEayxC1A9kOI7suixgm5iWcPjuF/m89oK7rNaI/zQ?= =?us-ascii?Q?YtTk6eJGu8/ItGdQmwQXuKZlG34fPWGb7V+ZN9rGixxJge1nHYa46B6E6WK1?= =?us-ascii?Q?Kpm2+Rol6cHP855RF803WbZojuj1P1B0YDuIC7OcWZQkcmA8davN3+KqsWkk?= =?us-ascii?Q?Qz2mpTOSDE/kiHlmvYKY2MEXTNIwToDYuTaXblRtqe2eVl/43c2sTVRMX1wL?= =?us-ascii?Q?OwcGj+Lg0DjaWwAAvT4CZhsI7q0BaWpiD6ZXnhzDQqwg188tCPJb3TEiwtt0?= =?us-ascii?Q?XLhs2RtMO6VD2VN7wS1yJTuhtnTf0iKJRyLGapXu39fgB3gVJKrQnONokw4O?= =?us-ascii?Q?0ujYf8PmUl+Pw+ocrOnBHL2qqxISFpOeQSvqqtItek66WFhI8PRErZXdz87m?= =?us-ascii?Q?QM6WF9PFJfNq7vrjAxaYCRDpdQeCZCNn0Sp4HdlP0jOmDddFTGXhN2XEU1RC?= =?us-ascii?Q?fc7ebUE0uGoT+RGe+4705oDIAMKe1F4MuL0FY2eI4+hCAN96hi6TBXAPD3zS?= =?us-ascii?Q?d0LFBTLLOGRcb4hz2Wmuzw0nrNU4N6pEIKO2eWaUpIT5a8Ph7FFIs5xudYuk?= =?us-ascii?Q?UHZXsHEAF11gj6/XW/h8B7zf09LfAVFMfP2KXeBUwQ78LgnubKJIPZ+cvSjW?= =?us-ascii?Q?XNonBHxq+ALhhzl2xc1GQRmm/qtJ2J6SWChLMWzxYJZqcV/W+nAC9AcrKP6U?= =?us-ascii?Q?OMV20gCeYlyHpDvtpkIJIUDWljCX0FJfXXx7uA3KCnC/VqiY5yzdDdVdTWSy?= =?us-ascii?Q?6NNYl3vk/jic6pt38+d8D/j7TVMRdm3wMtNvATikq21YCeUqYRZqBwUAOohF?= =?us-ascii?Q?S9p8pr2JR/Al6pS2jHfXCs6CGyMaSYqv8qRM18anouEJGQT7VhHNfbf6E7OP?= =?us-ascii?Q?IbzyaiRhkhdUHJAYo85kjI7HaOLXW1elTvBFHIQpsyqJJ2bpixHJMA2tXzB7?= =?us-ascii?Q?AnnJwCFE7JCtMNvGvzeXyKFWhIJXEK4eYAcpHW0aypgN6e0XYt4M4NFxcwL4?= =?us-ascii?Q?HDhpIWnlBOtAta33JgBLSPID4ADFLDDIUcaKxs1R4sWnmjdCwxPhtVqizmzw?= =?us-ascii?Q?AkSznlnhU+/4jqxH/gGAhYBbIlBBrhYCplea2Ji9cwpi0?= X-Microsoft-Exchange-Diagnostics: 1; BY2PR0501MB2005; 6:ja9MAhesK7koCbLMB0X5SkflJJ+cT9vimp2+L2BDF2QBLUFAq+fLWnZZ9F1mLJEB/CKJdlTY/fCpYXY8npDwW2h543iiKrh78XQQf/Y29rNdWYTVeEnXc9hLqLirUhXLgnfRayY6f911rOLvMC9yC3J2oDvNSzwoZY4NBbREzAAmwZm0RjrtBiuUj1WrmHVP5tukvQwJ+BmF4WJVl3GMJlVYIDSKZE8bpJQXiFpUkOrSVZRLhliFGXMO6E06+so8bpOkXVYKlYNLXj/TpoHeajmDp7znrRFT75EpKbMmv5ed4j+4NdWI/BRoYviJzdNJGsGg0N+DcUxNEpEQ0G0hgpXeedsHTDZ0MHJ5ouRpVC/1BhXcPP3GUZ6AbKetp4n+NQsneUuNGneV2ikNcoAPynnZSMesbxZEuOgQ16VQGrw=; 5:OwWzKvI+z8fHQXLAHHcWA9Nw5i46Q1j7ZovD0jqBM3EelQP8H76r6gHrjRG4ThGZu52j1BQ49Ld/BY/Bqu9br3y2uDkeqLzrdf9G0JhuPRMuBVOFjH4/Axjyee2kMrQ320jNyyD6m/Ybk/kEhxk63A==; 24:8526ORDqt6+LfHY7OPteY8vlVSHcvRmyxeVZnbNZ8QXMNdwhxpPJvT/0+CGCFcngJHWgqD83O+1X7NRl5V0Br8wyp83LD5HN6O/xFfUE7AI= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BY2PR0501MB2005; 7:LiBz7sjj5spTY6j/ty2idp82RM1H1WM3QsslfzVKtQygmPiDiE9ZrjP6fnc7SKU5FPBBvNwZvKOPgpyaapvP8avHXfxYw+zt/uN0kRkLlDyMgfaaaw77+rzR6Sy9wHKcb4yIBh2TkbSHlATzGw1xfzKlgwSj7MsUeDtmExZq5QFW17KH/L5oiugGQxxqyjfHVsKQPrM2fgd57JBMQSX8GxoYVsXFpDAj3MF4z/P/POMRQ+qjIYkh1ARg0Rxo9b0PgVoayJKHiG6DeTjCUV0UF9HV2wlw7Pl01dJDsjldHBU7RQ81UHiFMAnNeQs74dT99FbPA8EJAr7/pOPCCUUTjA== X-OriginatorOrg: juniper.net X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Mar 2017 01:41:29.6169 (UTC) X-MS-Exchange-CrossTenant-Id: bea78b3c-4cdb-4130-854a-1d193232e5f4 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=bea78b3c-4cdb-4130-854a-1d193232e5f4; Ip=[66.129.239.18]; Helo=[p-emfe01a-sac.jnpr.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR0501MB2005 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 01:41:33 -0000 Bryan Drewery wrote: > On 3/6/17 3:13 PM, Simon J. Gerraty wrote: > > -# DEP_RELDIR to be the RELDIR (path relative to SRCTOP) for > > +# DEP_RELDIR to be the the RELDIR (path relative to SRCTOP) for > > Oops, "the the". Doh! From owner-svn-src-all@freebsd.org Tue Mar 7 01:42:31 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9FFCBD00109; Tue, 7 Mar 2017 01:42:31 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6F689126C; Tue, 7 Mar 2017 01:42:31 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v271gUUH076198; Tue, 7 Mar 2017 01:42:30 GMT (envelope-from sjg@FreeBSD.org) Received: (from sjg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v271gUwR076197; Tue, 7 Mar 2017 01:42:30 GMT (envelope-from sjg@FreeBSD.org) Message-Id: <201703070142.v271gUwR076197@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: sjg set sender to sjg@FreeBSD.org using -f From: "Simon J. Gerraty" Date: Tue, 7 Mar 2017 01:42:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314816 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 01:42:31 -0000 Author: sjg Date: Tue Mar 7 01:42:30 2017 New Revision: 314816 URL: https://svnweb.freebsd.org/changeset/base/314816 Log: Fix typo in comment. Modified: head/share/mk/dirdeps.mk Modified: head/share/mk/dirdeps.mk ============================================================================== --- head/share/mk/dirdeps.mk Tue Mar 7 01:15:57 2017 (r314815) +++ head/share/mk/dirdeps.mk Tue Mar 7 01:42:30 2017 (r314816) @@ -58,7 +58,7 @@ # distinguish them from others. # # Before each Makefile.depend file is read, we set -# DEP_RELDIR to be the the RELDIR (path relative to SRCTOP) for +# DEP_RELDIR to be the RELDIR (path relative to SRCTOP) for # its directory, and DEP_MACHINE etc according to the . # represented by the suffix of the corresponding target. # From owner-svn-src-all@freebsd.org Tue Mar 7 01:52:52 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F377BD009B0; Tue, 7 Mar 2017 01:52:51 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6BDBB1AFB; Tue, 7 Mar 2017 01:52:51 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v271qoIV080466; Tue, 7 Mar 2017 01:52:50 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v271qo46080464; Tue, 7 Mar 2017 01:52:50 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703070152.v271qo46080464@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Tue, 7 Mar 2017 01:52:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314817 - in stable/10: contrib/netbsd-tests/dev/audio contrib/netbsd-tests/dev/cgd contrib/netbsd-tests/dev/clock_subr contrib/netbsd-tests/dev/scsipi contrib/netbsd-tests/dev/sysmon c... X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 01:52:52 -0000 Author: ngie Date: Tue Mar 7 01:52:50 2017 New Revision: 314817 URL: https://svnweb.freebsd.org/changeset/base/314817 Log: MFC r314450,r313439: r314450: Add additional __FreeBSD_version guards around the hsearch_r testcases The reasoning for this is the same as r276046: to ease MFCing the tests to ^/stable/10 . This was accidentally missed in r313439 r313439 | ngie | 2017-02-08 01:46:15 -0800 (Wed, 08 Feb 2017) | 25 lines Merge content from ^/projects/netbsd-tests-upstream-01-2017 into ^/head The primary end-goal of this drop is ease future merges with NetBSD and collaborate further with the NetBSD project. The goal was (largely, not completely as some items are still oustanding in the NetBSD GNATS system) achieved by doing the following: - Pushing as many changes required to port contrib/netbsd-tests back to NetBSD as possible, then pull the upstream applied changes back in to FreeBSD. - Diff reduce with upstream where possible by: -- Improving libnetbsd header, etc compat glue. -- Using _SED variables to modify test scripts on the fly for items that could not be upstreamed to NetBSD. As a bonus for this work, this change also introduces testcases for uniq(1). Many thanks to Christos for working with me to get many of the changes back into the NetBSD project. In collaboration with: Christos Zoulas Added: stable/10/contrib/netbsd-tests/dev/clock_subr/ - copied from r313439, head/contrib/netbsd-tests/dev/clock_subr/ stable/10/contrib/netbsd-tests/fs/vfs/t_mtime_otrunc.c - copied unchanged from r313439, head/contrib/netbsd-tests/fs/vfs/t_mtime_otrunc.c stable/10/contrib/netbsd-tests/fs/vfs/t_rwtoro.c - copied unchanged from r313439, head/contrib/netbsd-tests/fs/vfs/t_rwtoro.c stable/10/contrib/netbsd-tests/kernel/arch/ - copied from r313439, head/contrib/netbsd-tests/kernel/arch/ stable/10/contrib/netbsd-tests/lib/libc/gen/exect/ - copied from r313439, head/contrib/netbsd-tests/lib/libc/gen/exect/ stable/10/contrib/netbsd-tests/lib/libc/hash/t_hmac.c - copied unchanged from r313439, head/contrib/netbsd-tests/lib/libc/hash/t_hmac.c stable/10/contrib/netbsd-tests/lib/libpthread_dbg/ - copied from r313439, head/contrib/netbsd-tests/lib/libpthread_dbg/ stable/10/contrib/netbsd-tests/lib/librefuse/ - copied from r313439, head/contrib/netbsd-tests/lib/librefuse/ stable/10/contrib/netbsd-tests/net/carp/t_basic.sh - copied unchanged from r313439, head/contrib/netbsd-tests/net/carp/t_basic.sh stable/10/contrib/netbsd-tests/net/if_tun/ - copied from r313439, head/contrib/netbsd-tests/net/if_tun/ stable/10/contrib/netbsd-tests/net/if_vlan/ - copied from r313439, head/contrib/netbsd-tests/net/if_vlan/ stable/10/contrib/netbsd-tests/sys/uvm/ - copied from r313439, head/contrib/netbsd-tests/sys/uvm/ stable/10/contrib/netbsd-tests/usr.bin/mixerctl/ - copied from r313439, head/contrib/netbsd-tests/usr.bin/mixerctl/ stable/10/contrib/netbsd-tests/usr.bin/uniq/ - copied from r313439, head/contrib/netbsd-tests/usr.bin/uniq/ stable/10/usr.bin/uniq/tests/ - copied from r313439, head/usr.bin/uniq/tests/ Deleted: stable/10/contrib/netbsd-tests/net/carp/t_basic.c Modified: stable/10/contrib/netbsd-tests/dev/audio/t_pad_output.bz2.uue stable/10/contrib/netbsd-tests/dev/cgd/t_cgd_3des.c stable/10/contrib/netbsd-tests/dev/cgd/t_cgd_aes.c stable/10/contrib/netbsd-tests/dev/cgd/t_cgd_blowfish.c stable/10/contrib/netbsd-tests/dev/scsipi/t_cd.c stable/10/contrib/netbsd-tests/dev/sysmon/t_swwdog.c stable/10/contrib/netbsd-tests/fs/common/h_fsmacros.h stable/10/contrib/netbsd-tests/fs/ffs/h_quota2_tests.c stable/10/contrib/netbsd-tests/fs/ffs/t_fifos.c stable/10/contrib/netbsd-tests/fs/ffs/t_mount.c stable/10/contrib/netbsd-tests/fs/ffs/t_quota2_1.c stable/10/contrib/netbsd-tests/fs/ffs/t_quota2_remount.c stable/10/contrib/netbsd-tests/fs/ffs/t_snapshot.c stable/10/contrib/netbsd-tests/fs/ffs/t_snapshot_log.c stable/10/contrib/netbsd-tests/fs/ffs/t_snapshot_v2.c stable/10/contrib/netbsd-tests/fs/hfs/t_pathconvert.c stable/10/contrib/netbsd-tests/fs/kernfs/t_basic.c stable/10/contrib/netbsd-tests/fs/lfs/t_pr.c stable/10/contrib/netbsd-tests/fs/msdosfs/t_snapshot.c stable/10/contrib/netbsd-tests/fs/nfs/t_mountd.c stable/10/contrib/netbsd-tests/fs/nullfs/t_basic.c stable/10/contrib/netbsd-tests/fs/ptyfs/t_nullpts.c stable/10/contrib/netbsd-tests/fs/ptyfs/t_ptyfs.c stable/10/contrib/netbsd-tests/fs/puffs/t_basic.c stable/10/contrib/netbsd-tests/fs/puffs/t_fuzz.c stable/10/contrib/netbsd-tests/fs/puffs/t_io.c stable/10/contrib/netbsd-tests/fs/tmpfs/t_mknod.sh stable/10/contrib/netbsd-tests/fs/tmpfs/t_readdir.sh stable/10/contrib/netbsd-tests/fs/tmpfs/t_renamerace.c stable/10/contrib/netbsd-tests/fs/umapfs/t_basic.c stable/10/contrib/netbsd-tests/fs/union/t_pr.c stable/10/contrib/netbsd-tests/fs/vfs/t_full.c stable/10/contrib/netbsd-tests/fs/vfs/t_io.c stable/10/contrib/netbsd-tests/fs/vfs/t_renamerace.c stable/10/contrib/netbsd-tests/fs/vfs/t_ro.c stable/10/contrib/netbsd-tests/fs/vfs/t_union.c stable/10/contrib/netbsd-tests/fs/vfs/t_unpriv.c stable/10/contrib/netbsd-tests/fs/vfs/t_vfsops.c stable/10/contrib/netbsd-tests/fs/vfs/t_vnops.c stable/10/contrib/netbsd-tests/include/sys/t_socket.c stable/10/contrib/netbsd-tests/kernel/kqueue/read/t_fifo.c stable/10/contrib/netbsd-tests/kernel/kqueue/read/t_file.c stable/10/contrib/netbsd-tests/kernel/kqueue/read/t_file2.c stable/10/contrib/netbsd-tests/kernel/kqueue/read/t_pipe.c stable/10/contrib/netbsd-tests/kernel/kqueue/read/t_ttypty.c stable/10/contrib/netbsd-tests/kernel/kqueue/t_ioctl.c stable/10/contrib/netbsd-tests/kernel/kqueue/t_proc1.c stable/10/contrib/netbsd-tests/kernel/kqueue/t_proc2.c stable/10/contrib/netbsd-tests/kernel/kqueue/t_proc3.c stable/10/contrib/netbsd-tests/kernel/kqueue/t_sig.c stable/10/contrib/netbsd-tests/kernel/kqueue/t_vnode.c stable/10/contrib/netbsd-tests/kernel/kqueue/write/t_fifo.c stable/10/contrib/netbsd-tests/kernel/kqueue/write/t_pipe.c stable/10/contrib/netbsd-tests/kernel/kqueue/write/t_ttypty.c stable/10/contrib/netbsd-tests/kernel/t_extent.c stable/10/contrib/netbsd-tests/kernel/t_filedesc.c stable/10/contrib/netbsd-tests/kernel/t_lock.c stable/10/contrib/netbsd-tests/kernel/t_mqueue.c stable/10/contrib/netbsd-tests/kernel/t_ptrace.c stable/10/contrib/netbsd-tests/kernel/t_ptrace_wait.c stable/10/contrib/netbsd-tests/kernel/t_pty.c stable/10/contrib/netbsd-tests/kernel/t_rnd.c stable/10/contrib/netbsd-tests/lib/libc/c063/t_mkfifoat.c stable/10/contrib/netbsd-tests/lib/libc/db/t_db.sh stable/10/contrib/netbsd-tests/lib/libc/gen/posix_spawn/t_spawnattr.c stable/10/contrib/netbsd-tests/lib/libc/gen/t_glob.c stable/10/contrib/netbsd-tests/lib/libc/gen/t_humanize_number.c stable/10/contrib/netbsd-tests/lib/libc/gen/t_sleep.c stable/10/contrib/netbsd-tests/lib/libc/hash/h_hash.c stable/10/contrib/netbsd-tests/lib/libc/hash/t_sha2.c stable/10/contrib/netbsd-tests/lib/libc/locale/t_io.c stable/10/contrib/netbsd-tests/lib/libc/regex/debug.c stable/10/contrib/netbsd-tests/lib/libc/regex/t_exhaust.c stable/10/contrib/netbsd-tests/lib/libc/regex/t_regex_att.c stable/10/contrib/netbsd-tests/lib/libc/rpc/t_rpc.c stable/10/contrib/netbsd-tests/lib/libc/setjmp/t_setjmp.c stable/10/contrib/netbsd-tests/lib/libc/setjmp/t_threadjmp.c stable/10/contrib/netbsd-tests/lib/libc/ssp/h_memset.c stable/10/contrib/netbsd-tests/lib/libc/ssp/h_read.c stable/10/contrib/netbsd-tests/lib/libc/stdlib/h_getopt.c stable/10/contrib/netbsd-tests/lib/libc/stdlib/h_getopt_long.c stable/10/contrib/netbsd-tests/lib/libc/stdlib/t_hsearch.c stable/10/contrib/netbsd-tests/lib/libc/stdlib/t_strtod.c stable/10/contrib/netbsd-tests/lib/libc/string/t_strlen.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_clock_gettime.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_connect.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_dup.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_getcontext.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_getrusage.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_kevent.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_link.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_listen.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_mincore.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_mlock.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_mmap.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_msgctl.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_msgrcv.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_msgsnd.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_msync.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_nanosleep.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_pipe.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_pipe2.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_posix_fadvise.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_revoke.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_select.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_setrlimit.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_sigaction.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_sigqueue.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_socketpair.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_stat.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_timer_create.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_truncate.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_umask.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_unlink.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_wait.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_wait_noproc.c stable/10/contrib/netbsd-tests/lib/libc/sys/t_write.c stable/10/contrib/netbsd-tests/lib/libm/t_ilogb.c stable/10/contrib/netbsd-tests/lib/libm/t_pow.c stable/10/contrib/netbsd-tests/lib/libm/t_precision.c stable/10/contrib/netbsd-tests/lib/libm/t_scalbn.c stable/10/contrib/netbsd-tests/lib/libposix/t_rename.c stable/10/contrib/netbsd-tests/lib/libpthread/h_common.h stable/10/contrib/netbsd-tests/lib/libpthread/t_condwait.c stable/10/contrib/netbsd-tests/lib/libpthread/t_detach.c stable/10/contrib/netbsd-tests/lib/libpthread/t_fork.c stable/10/contrib/netbsd-tests/lib/libpthread/t_fpu.c stable/10/contrib/netbsd-tests/lib/libpthread/t_join.c stable/10/contrib/netbsd-tests/lib/libpthread/t_mutex.c stable/10/contrib/netbsd-tests/lib/libpthread/t_once.c stable/10/contrib/netbsd-tests/lib/libpthread/t_sem.c stable/10/contrib/netbsd-tests/lib/libpthread/t_swapcontext.c stable/10/contrib/netbsd-tests/lib/librt/t_sem.c stable/10/contrib/netbsd-tests/lib/librumpclient/t_fd.c stable/10/contrib/netbsd-tests/lib/semaphore/sem.c stable/10/contrib/netbsd-tests/libexec/ld.elf_so/t_dlerror-cleared.c stable/10/contrib/netbsd-tests/libexec/ld.elf_so/t_dlerror-false.c stable/10/contrib/netbsd-tests/libexec/ld.elf_so/t_dlinfo.c stable/10/contrib/netbsd-tests/libexec/ld.elf_so/t_ifunc.c stable/10/contrib/netbsd-tests/modules/t_builtin.c stable/10/contrib/netbsd-tests/net/bpf/t_bpf.c stable/10/contrib/netbsd-tests/net/bpf/t_mbuf.c stable/10/contrib/netbsd-tests/net/bpfilter/t_bpfilter.c stable/10/contrib/netbsd-tests/net/bpfjit/t_bpfjit.c stable/10/contrib/netbsd-tests/net/bpfjit/t_cop.c stable/10/contrib/netbsd-tests/net/bpfjit/t_extmem.c stable/10/contrib/netbsd-tests/net/bpfjit/t_mbuf.c stable/10/contrib/netbsd-tests/net/config/netconfig.c stable/10/contrib/netbsd-tests/net/icmp/t_forward.c stable/10/contrib/netbsd-tests/net/icmp/t_ping.c stable/10/contrib/netbsd-tests/net/if/t_ifconfig.sh stable/10/contrib/netbsd-tests/net/if_loop/t_pr.c stable/10/contrib/netbsd-tests/net/ndp/t_ra.sh stable/10/contrib/netbsd-tests/net/net/t_raw.c stable/10/contrib/netbsd-tests/rump/modautoload/t_modautoload.c stable/10/contrib/netbsd-tests/rump/rumpkern/t_kern.c stable/10/contrib/netbsd-tests/rump/rumpkern/t_lwproc.c stable/10/contrib/netbsd-tests/rump/rumpkern/t_modcmd.c stable/10/contrib/netbsd-tests/rump/rumpkern/t_modlinkset.c stable/10/contrib/netbsd-tests/rump/rumpkern/t_signals.c stable/10/contrib/netbsd-tests/rump/rumpkern/t_threads.c stable/10/contrib/netbsd-tests/rump/rumpkern/t_tsleep.c stable/10/contrib/netbsd-tests/rump/rumpkern/t_vm.c stable/10/contrib/netbsd-tests/rump/rumpvfs/t_basic.c stable/10/contrib/netbsd-tests/rump/rumpvfs/t_etfs.c stable/10/contrib/netbsd-tests/rump/rumpvfs/t_p2kifs.c stable/10/contrib/netbsd-tests/usr.bin/grep/t_grep.sh stable/10/contrib/netbsd-tests/usr.sbin/mtree/t_mtree.sh stable/10/etc/mtree/BSD.tests.dist stable/10/lib/libc/tests/hash/Makefile stable/10/lib/libc/tests/regex/Makefile stable/10/tests/sys/fs/tmpfs/Makefile stable/10/usr.bin/uniq/Makefile stable/10/usr.bin/uniq/tests/Makefile Directory Properties: stable/10/ (props changed) Modified: stable/10/contrib/netbsd-tests/dev/audio/t_pad_output.bz2.uue ============================================================================== --- stable/10/contrib/netbsd-tests/dev/audio/t_pad_output.bz2.uue Tue Mar 7 01:42:30 2017 (r314816) +++ stable/10/contrib/netbsd-tests/dev/audio/t_pad_output.bz2.uue Tue Mar 7 01:52:50 2017 (r314817) @@ -1,1040 +1,1035 @@ begin 644 t_pad_output.bz2 -M0EIH.3%!629360S39&D`>;SS,K;%2@`2::%N=I -MVR86:*KOO>O99MMM-XP&76N]W/6T=[SW@<[G'3H:Z'K1F?=WON]WO>]S=WN^ -ML]W>^WN[[W;V\VW>[OMN^WW;;3+3/=TK*Y5E4LVE#-E5H:"S530#1IB5LS:V -MJHK6!JVA2M9LR*V:MFUJ55JBM:Q4*EL,5$`50)L6M11:P55:V%+55:U5C!I3 -M1L,BU5-5JV-%F55-5EL;:@5:K+%5:S--;5-;:M5MJVZZ[:V]>[:7NTN>][;> -M[O/MO-M[NYOM]WN^[K69ON\^][WO(Q/N8ZZ![N''=O3VP[V/>RCRX[0VJ7FW -M-FQJ%7-G0R;9MB*N\G'>PTM*5H%``-LF2NKF=-LQFU*50444`446P`&FV06V -MUE17-HDJB[#--!MBC$-1L#;!MF@JALFIM-IE3-30"JH#2D`$`!,F$R83(830 -M--,AD!H&AH`R#$9`:&AHR`Q-`,":8)D8C`3)@FF":8@P"9,$,"&)D#0)@$&D -MD$TPF@`)@```````-`"8`)@"8F$R8`F3$`)@`:&F@),R83":8$Q---,"8"8( -M,:1D#!,H--)2:$$VF##`"#329,1A-!,Q$:F)A-#$-3TT4>F4]">IZ0&U#3:@ -MVC4#`-(/4#3T@#30&@/1/1#0#1D``#$-!HR:-!)I2E$H&3TVPVH\BE/QIHC1 -M3,34T4]IE-I0WD4?IJ33T0`R:&T0`9!IM0&CRC(`!HT&AZ@`&@`````````` -M``TI$#1IHIFU,F`T:F*>"G@$F:3TP"-3T9&"&FT*/3"3R,33)I/":&C(T&(T -M4\T-`GIDR-,$T:GIJ>1B831II/(&D\C4S(::8F)HU-02:E)*!#5/%/>V,B-H -MB&"-#(TF(Q38BFVE3_48AM!-(]4_*GJ:>4>-4V*'IIE/RFIY-3RFU#$S4WJA -MH](](]&H::/1/4:>IZFF:0/2!DVIZAH-J9`>4!H:?.1!_\Q4%G*&;V=R9PT='B<1$&>Y2K7;'1?;`L!0$`X6":FH$!$6!]N]*1& -M`>)4`P7%5$G@V]E5TZFK&($]>M7]W^OSGV?[[OM^+/=V,U7MZH"`7P^J9Y.4XK0O)T]ML=,$]>C2&`+KJIP7B%-.A(A^%=L6PJT7:EU�$"\C_*-.JQ+2^W+*<`+ -M[7C&UXHH9B@ULW[I"-T:`@7%]:`B#,.N],:_+:SN\[:H0"]MG;I((-):D9I@ -MEY+M.9\`=/Z'Y5'G)UUBI`$7\=-,6\WB0M^K1(IGM("()_S^&EB%H$,(T:^: -MUJXAFG+?)LZ=2(B>DJ4`+\#0+:GW.!F9[Y0"67\4D'5N=?C<2IH"`B?%D\H0 -MGG&E/!&")G6)];))G]L??MF>!#;?]*:P<1'/-^\77VA0`%Z]R -ME-$,ZC*8W\V[=O*,`"`LNLU]SC!;I4"KG=/S#X!?7Y]N/BU*2;"=,Y6JXJ7( -M\0$Q,LORY367(RS2IZ5>L>\@(%\(7%0'&&F:-KRF&'2:+-/TMFDH`&<+FRQ] -M2/+>LL58^19Q"!7L,11[)RREOK.2B(B\T[XU`#;W%RR(G[K(5$X17%G>A! -M5%N-\(U<88J#4CQIX2R!95&T"Z:FJFOLXD$6)JV@!^C#B[K7^`23@`L&RH8#R4AD93YM`Q3];.J--PN6QM[K)JH -M(O;C-[U@O)%QFS:U:_'AEV+O+ML-FTP(.3(!E'S>H'.(0@#>MJ$"'FJI*?4K -MJ(^8_>2M:QGP"F_OWH5:].!EVM>UB'TW=R@(I#\VT2P%KT]_6]DV]DSX*:$B -M$\P$5TX-N@FLFP9/6Z#&OW(]F)2R!;.(FW!F6.80[RE%T=?O6H/*`%S(]JQ[ -MR7,>5IA_&NS_C[WLV",$5K/Y3CA9I<=R)5=2;=$"#3;X4$!A3SS<4MFG&3LO -M(C(AK8$A:MCVU5]2F6(!3!"(X/?9Y:@`ZT))M.B\B78]MY1`BX"?4#9]!56Z -M)(%K(4E%,HP1?M]'(C@/O^H")>Y@&LC0T?.?#9A!9W#]194/2$B@/0R$+"9F]7%, -M*1BYC&C`#LQ@*O)X;[/:@Q((+?>_Z#+K*>EX6<1R+?T&:\=DJ!\#0UPA_,^E -MKZ<2Y.D"5H,L:04L5`\;Q^3FH0!$N<-%2!`?/ZS>I:''+V&_V'MP$I)`W;W0 -M<("[Y"-384_['P.#[FK55I#5ZVMM[DH!4-F!?_"G;WQ+<>IO:.A1D`8W/]@0M8>%BW/(+<-&H2+N=9T(HE -M8\PHC>;Y(&31@"8(L>$>5^/YP&:Y@'%$18BM3_NBBG3?7>!ZKL^1-#L?/ -MI`&OUVRZ_+Y/!HD`*"]TF31QJ9YV"1#B\R/?U",@5[-@I;.4&_W%90)LS8U+ -M`,#YI0(2X6ML1-K;[$WRF]A\#Y!IMEPB$/?B%:LF@SS8@#$1(96`NH:/6&-` -M!:=-[T<("%]0_N*VT8X/5G4]+'5W>2@57]UECJP$[[:29VK4&^<0`O3I=VF? -MKR@)6"J[:JVG6:T`(X0_F^G'Y[@#IX#*^6`L@0>X[PUGR@1M8&GY?GK+(:KI -M_U,(@U>K55\YIW+R5A#A_I*4^UE*=FQJ$`;GLX^GP`%VFAMHQLA -MVW-FEG)_<:*\3(P705=2"A.U_T1]?;OU(#\LK5$7LA$\:N3_/7'@3_L2$4!K -MJ6$S1,[?R[77H`%;Q,<;P<]WB#C?6PY9\/V7UF*!4\2`M<&]Z=&$0`^[XVX` -MP>#"!:ZO,V=QZ_BB!8WP5-F0XF%^[*`J8WXH"<]L!5-)?B8P\`,YVUF%`M%7EW:-*$+>N64?@;# -M6+FLFTL@'_E2321+T;G=ZYGMTB0'"&+[8**(!6Z&96X#]H(:2NZ%,2"$GFN, -M1!^?3G/A^`L*^I@/+HZ6G:DLBAZ_E30+MJ_"3C6J2\[8"57T0*Q`"%5OI.Y. -M:BNS&C[E[K4@%]-&1?WDI(=$YDICRZ]&1/M.`*SX?V1W6>I79`5A)E)=C -MC=S#.CUY].X/Z]T\1.%B=8L[(9KD:Y=]^`D`AJ=I:%X(.1-A<7W`!S-]'$IU -M%-,2`BN_0O@K[OJ'6R\VPY5,3$:,BZ"HE]\AB;53X3@H[X^"Q3E2>4%#6-2: -M>^%"&#=/Z`@,;KO?/M\""U$)66_)4NJ?&F2ZTN,QPSL<'S\O.`#\I/;_'\T\ -M\-UI3`?SYZ:\L#\%AH`3:"O?XZN.EK961YEOS49"&]N%ZP3[JVOQ(P=(?G.6 -M@"M:W;)3<$\42B["?O/^=:1F#6]NZ$72@W50#Y79>"J>K0,*`@N)KT"+ -MZ#V_U(:?,N,'9\5&MI`$7^7$@&/KSB6TZC+HW]3$;[NL`N)UQ1FMLA(2OD\, -MU-4^]`5TS)K^W:"%9?8I@#2TGV8,J0KY?V?HZW)%R@*_M:XB%7\[7[?P:+XG -M]Q&X;\NX'>`&K2Z:_Q+0S=C1O(G$9#64P!8K][WE]U4>TJFLWGKV#V18-2@R -M8+PTOK0G!;/I"G/^B\0/-;"WIP@_PRA]#,0B6+V)K?EQ=JK2J^C(DC[`S_#X -MY"3TWE]1\OSVL0(N;%("2?M9ZI%FL[0`%"TQ] -MLWN_%Q7@Q^2]DUETH`>JNY1%N_++1LROZ>56$Q,7?.DD3?D:TBT$%+8?@O=, -MI("V5)HR`5A@RVJDL_?A(029R?[YENFJ2&8AT% -MAH6LF-70$`OWGS?-)?`A8JG!J?%BHFQ9=TR**BD@F:4QF(@.L`,57(WQ!&7* -MGC:=$3`_\4$,7F=+;N-@^ORPA65Q4U)$1_U9=>^G^O)/=\V,['3Z#NE@24'X -M=@U7X)-@E=Q@E'!@5_O2O$2"(_!93W=VB(#"F-EGAUAGK"PI/7HT9!#`D5[Y -M\+'#?L&`?+99C>0W1!!Z[=:J17*V6,CT(^FX5>=WB+G?#?J>A=T@<1CRU($& -M2/KW2SC-%H(8X0R]O``AJ6;Q6%^K*1B208.WI0!J4>@[T4Z6:D(9;.)+M_1- -MD"V&FA!;[J;:O3>;"4Q<%,4Y9Y.."\W*KZ:-!PZ3;$/=\"N4*'#KN#<9_N@B -MQ2=Z3G3EXJ/09W=Q:+STH`I>+,97UO,$WD!()PS]%F:D('H[F.JU@(>YN9OAUH:$_GW-1*(O^MOQS@06;P87 -M:-R?;K+]`04'98(@+A!K949?(_%S,4L9H$=7%`"GS.&9\=+H:;/X_;W^YMH< -M"`NS4-HBV;9?TX0@D-MV//U([Z4A$+WJ^K::^5S2ZJW[N0=5QIYEJ -M=&Z\W[TBD`7-[6J=-74GF61-$`:NXFO.%)=[[['PD6!H:;V/CZ?H.Q@V*Y3) -M(*(U*S_(`/X`@=4A8N1X;%PR]WU'P@+J3H?%;:O%,!M`$NVB]R")87^3W$@Z@#S-W_E3`9X%)L4B] -M6_71C'P<+:@@B2Q8.33:?)*X7!K<\Y@""[>-"CM-^)"A0$'ZQ -MUML"Y6[R\SL]`>$W58Z2ZL/G<&BN`"S?9P>JEF>9LK)Z?`TF2@=J?D?SU%]\ -MW2C2*QY;KIS^#>[A@(M]1Q3>IZ28P$!0&!DN>1#QKZ+6SW.]/5S;\E4CTD_V -MU!):LAW$J=&UU6.(N$C -MLD@@W6RR($]+)$-=IJ=G_\M`\%7E[I+&X(JO-968S9V4N@0@/FM[:` -M_DOHOVK;9]H"`YSN@MDXZ5!^\;IM^0"ZT[=\^+)':SZM<12_B%("*PA+=^-6 -M4X_PN14]E.7-."Q^B5'&6TA[JYMVGDV@!"6IH/Z6JH@=S^?QJF3 -M!%)(6*9O6O[NA.NF%0*E0`7VVG[["W;V*1;OZ\T -MW:K[M91`=CW>?L7]P`2I.^9+5TYAQM`E(0%F$ZV>R`(-RC7H&]XXFP:UY%BC -M`)R"D*N0[730$"U_3>;"DF%<'PC3?1;![F/0$!`7,+9HVZ(Q&0*AY&)ULVCY -M+1$(Q-SG5-O"<=//)P//$5`7SK)KA'4P'#J4"OU;LGD;/`VB,,ES0$FE7$DK=#UHE`B"R(_/."6="48`%=C -MEUSNIQ$$'36Q-I&5Q98XY)(("#_'Q/I0`.M?]'YG8[&O\#T,WD(20@3N/DL_0J^9;`\([->'9A>G7GCX\9E -M0@!M=I66J/(],51@(@0?HS\478WX*Y0T*XJ_O=U@*6WFC3'B"(E.&1'DANP8 -MA"9[NDG#6V]/W#46R."#QGG`O/#C)\[4?2`5H^5G3W+1P5.,(-QBP&W;-.%? -M>-((FRE+9_]=P/6!9$?X[H"/MB#IS`3J?[;1Z39%A=G\K;XFA6OI;)8DN$C" -M7BML%@PI!R4,UBVE3B=_ZKF<0@AH@GWQH836)<,FH8K\Z1<`_]C"$EEWC%^! -M/Y>[K2`I79%TH]PM=ML)@!SW*@GM%S$@J3N28M)R-`A+=E0XY^IL#V`"]FQ+ -M^_4^]%/H2!_ZO.Z:1OO/.8$>DXQ6NJ6@RJ$@&7W`;:(MKWWPFQW;(@(#-U?F -M5&F]RJ`A#+VFVB@-@,'YAF.IL?V!1W3A`*O%]39V9A:^=$086@"=9YY/=SI% -MP.43I]O%5,)TL*VCMQ>K<+1@HN)6`Y+R!4_X_[?Z1FD()>SVM"YCWW&/D(N1E:+:6?SS"^T^ -M>=9VH1@3/V1P?4WZR_1P%2B?BLO6(!4HEY]22&L[0O;91=\SO%,3IA"MH[!B -M%CFMX;((MF&F@-:$#^/NR4^?H#P+/T?`(?"H1O\3JUR+0$3,YUPX/"V!XHN$ -M4I81(I##TI)/`O^DT'P/ALO4[G$M3G3UU0\M=O((04/Q>A^QPA4[V'_/X-$'J#` -MO++H<>8QCBZ$W -M)UR&A$!99;W<4^-+"5>D]I#=H>!H8G2&P7(Q_(!?:3VM_H>=M^AN) -M]$08[0JX/,N;+V:J5'I6(6V.$(:0ZX_O4^QL.>\MF$P#[-^RDL0I]Q%IA\Z7&&FQAHOC`D/9^WQY/_D&5RP';_%[KSXRXR"- -MF8_*GR>O=!,]"!HE3EGA09H#U/^0V%;4=#9/YAX%'X,O\!"!B0Q? -M0.$N*`P//0.Z40@-,IF["EION'/2:'+N!#DP74'%[`W6W$.LT!L1>2LAH-3&4=%D#P&9C[JB -M];D8SD-)BOV;`_Z^+M/#??G`.L6]X+VMQ,0,SZ)HV(7+922%)EYPV/>7YUQJ -M!F5L#3[/:P0.`4%JR2QH)>8$]JHLV*0:[,(?IQ8<-C8[FQCJ78RA5_6X:=%? -ML;9!'+Z7+@8YD,W0.Z!V<.E@:$%BG_<]G3G5ZM]/H,].8:E4@PJ!J(D)H".9OD;4' -M"EQJXO^TH/ZS1L+=5L$%Z]`8O]7IOZY=8C-N1>,Q1=^BFR@T+P:'@C3,3:*. -M3`"L]U%/UP=A9X#@_-05U7IC2>XUP/.GC'>F"Y[4=*YQM^4F*N%V!PAFPKE1 -M6C!"G!@N@+W^R3SZV=E77GWPH-/N38#!++$4!=X:K+&1A2:W][17AS990I0; -M_Y#W\L@\:%VI#A:K9PY?,VY!>'`[-/7_S]GZET(W$\(#P:6IV9-1`H;VP=R? -M$`$G:%9(6N(ABM$"PMCR#P^[&TL]\"<,%S_QL -MQ(0B^P3W;T0R$$,%O,Q.5^I:K:OQNEMR8W^HR9"+KL.A[&]/%$`O)-.G_<7: -MIEO@!2J#72LI4S)[\@T]>'F\[H=F?&BM:7\O0^-ICQSRP&+Y9<=`EM^-,*'X -M?.R(5S.U$/)84-J#B5/5X#K<8L^0]0=L2#DD7]O],#(!9[U@83@F_Q:-[OF*D/&+-'5/=5`+VG)*RF0!&^C -M6JEQSUE0R*U.P`*S^=SAK8%RM=JW9#^Y\7`(?6_56S7G8;R>EHQ[,XHQCI_6 -M:2&_SJDYG\[4`..FZBLFED?N/A(KAL;1^9VFA:LF05>S^-5\:T/A\T.W2`9Z -MCR5SH84"^^CO0=:VV;P.D748UHW-!?N2_1E1I$^UWXVY#??7?O7MSNQE*Y-H -M`P:-/D3G!;1RA!ZK]T"0R3#7TR$X)IH7CXG#@3499,D8:^1/?H!S7?-HM(@Q -M5K9@4,%"4ZEMT/"_\0SAXXEGRN_`)&U1H,4XI9J%((D#1[,AX1TPPPPBAZA& -M!3:"V2`C$8#"*&6;GU'3+`_,_6_`]S@AW#.X23A3AL[JPI?;_?6!8+%_D?YJ -M"=RQ9,"'UT26,!(G^/'S\&#HPY'/H]/]YA#ZW![^Q`)_(&S?W>C!PZDI$S*_ -MUF+Y[5.P1GTK/PX0EJ?`18=(:`&YJA^N]`U#AQ"+T\#6/?[DT&&`FCR7_5SE -M3GT=O`34]-,T2!`[DP:*Y=PT_6.H1]9U[%)JHU=TQC$I`Y;L,@;.$8:7L$%I -MM"XSG]H0%WK:P_]@,2PP)2Z[_1E93+*BL864BUC^]U@OC2?, -M5HK_HTJ(^6Z-<^88P#OK\;*<(OS,[<;O2_HSYBTHY1P_+Q'R&J6YG@G!0OC: -M>\X;HTP3T>WODBO/KV&');,/W9PJI3G"N7[P80""\*]K-:J[PN8WX-`')Z0Q -M--X#0N7R,,".J0^Z!RMW)_]S`QNHH4L"$:\H;!ENOD+(_R]9VD9X/7%Q)JQ[ -MY9[BYU8,+$#4ST5"'!V*CZA;H/`[?D#]_FIH,]/BKM(!O7/T:`3.2LX]F,#- -M[&$7Y@#SAXL^MW08\-[)B=,(V35`ZHLV.H?2C%@DT.Q^0G;L;W8S,YX'S5FQ -M0]`-49S:KL`7G8CO5,>\PM[OA%:@E#8=HV(YA%,P&#W:#`)SIG$0JJYFRR/@ -M(+%6W79$,W]AO<]5W6UR([/ON4,7;95RLCA'%$_H<%;3OAEL?Y*9]>;#3](/ -M-R@-JH$4LK_`R'1W(2^VPAL`8/K@^'`+$>7=IVL\&G3>NVAYP3\X<%:[TM`< -M+"9Y@CBSG?P=]85NZ'DQNQPA!/)PX)?/^[,<+7DFE6(ATIMM]^U008;L8X"W -M[8QF_,%\FX'5WG$,N8?F+;B7G56R`2>UAA`.;N#K#>-B/V":GQTZEP/"@+2& -MM-+T9%?KWB3'YE+;FW'U5"7A(PKWH;VK.F%=ZR -MS(3]Q`&IWIBP]V+H4P=LP3L=6"K5"Q!G2@<(:94)[VKP&H^:!QE?V@6C?E), -MA4_]'=&O[1+0WBN:K)FZG#59EBBC)ZRR15_BZIL0V4+V[VH?0'#+A<$__@*: -M1$AF]*;V'!.;(TG+1/DO!74UZ1,RB[-,9@O7`ZQMR^81(%,/IHK.9)N=HY+J -M37V]PXP0V*+*^_O=>@,TN;S0AFDU#U+)-BRD?9MJ[U>W/BZE9/])=8,]$&EZ -M-Z39$`8='K/B)J?HK#-E2]+<55)7Y&H@J2T:"NY[7`PCXUIG0`QX[;&;C@%; -M;&NIZ^J,7XHX7#2P-7?AB>�K5LYFY=Y -M?>J;Q;S[(`!>@[EW>7(]]!87MS_!V'$>`/2*"7SXXURC&\UN(&G0';=SP@7+ -MVNAG47FKWFQVT\M&VP^@";ZN!DB&`R26G&XEN>YYQSY0TZ!(-B`EO>HF'`86 -M,#9Z;[R_`0AA)_K.`#-#T?P?T.UTGTR5.Y9\QA/20\KYWM?DZ1I*,56:J`?J -M`<%`JBA\SG0%)YC\Y]/C';2K_N94D+)VP-.#6J[.J0D"*&/'$1Z#4\9?C"_#R^!U=*?2B4 -M$O5>N6J@)VM%-A"%>T7Z<[%`W1,_8CPJVZ!]I2H'MGX\859[G^:;[;.ZT@K2 -MXD/QA?6&O;P39*5)-]]-!88S!6L>*9IUY)MRD(OKWQ;C(LFW*,/)LR0&.IS0 -M*BDINQ+[8/GQ$OIDDC.$:;IWCB5CYV4MA6Y_[PU[)W.K'OOG!J605KP./&_@ -M9>_3AG1%CUH("==L#X3WT%UMUM>O>8O<#OH@O#>DK+CV8J]I]Z++#\?\@"3# -M7&*,YQ)VG)<3AKJ..-128TQGSL\E]G]MT*S_L+849W@I1C>-;)FK,/*H7KR -M*W'9T`MJ,UV%J)E-X;(.TQAC=CV63Q[;`TQ;6EC-6^OAH?ZY8X^W%YHPXYOK -MJ(5*.U*W0]@^VE4!(N%D;#CC&>YZ^\K[=.QZ/N-%]TS/3O=.$KLF<=V7_@8D -MHVW1N<_W4^R#N&+6H:W2S0Q&@,=)Z,/G9'J=O#[2:X"KS4 *4E+FJA=+MIBA.]H>Q78=?8#9:.G@*9W:JJLW@HI>6Y-:[VB4+=@Q!O_T -M+^?.I*GUM.AGE44K_[PI*NZJ?YG3[DQE+;!QH$J:`F&I85,[_J>UR$]Y]_I" -MK)#L[22+9XSI4+CC[9*R]'64IG+*KR`;=.Z@-L4Q/O:%,3V%7LE%ZIN\$_.* -MP$987+OB2FN'*F\M11A6MHY1E(\4D2Q#D%*M1\WXSIE=;*?9F(IYT@BI`M;J -MNBC-P7<#+SYY$?:&(Q/G>KJQ\YFKXWW -M-2QBHGCI#\_Z"C;C2F;(0AX=:D/T[3!P -MI`RQ@#5U=#2]%(&<_6$$_"-&P-D9]??T^\>AAG.&@009*9,DAU:7U#7-GS.' -M*,*!ECV-23)VX_1Z/B2_,G,]"D@5?7P^_8<@@Z7 -MF'?9XZ6-B]O:`*R;E1.X09Z#%H="PVY^^%3V8'!+@[^L%Z'D3&DV-TR -MFN"DMW,-!*[?E')VOE]F>QWJ(A8L/M8+YZ<[KPVC8&7>"7QC#%NYJ.S,6C_T -M-@_IZ6L9^@>G\N*69H*7-C3#1>G7:]J'0,*RPG7S2<%$P;,:#3$K_',B;KIZ -MSXKNY@.[6\S:F"CV1;.5!DPVKB<(UB:]*WR9AL!_2_HG[SZJ.T_!NSEW/$>! -M@O%K:V5/"!V&RTS?S^7YG+-?W4;LU\A"F04VLZ1Q!@8,9?1&+%T/K-K+\.YO -M';3N&L19V=E=\CB<'`0]I'&==V-<_L<+@ENI+=&QR?OF9:_&OEDL.^U@UII< -MZX6RLGR&GS/8THS3VLF;@^@B3U%!/QDMP>GU6`HMCRX`C\,[(Q\ -M@0%&)S2>O$Z9H/7A0@*%^XUITX;\A1`KPKDO<6/Z,\PCEM(BC-884!CC8HM) -MF=3146A@FSQ@F=<)^_*J3W8>!#NO7?.T\&D#)_9W.5\[`*)Z]I)*G\9I(P:U -M@I"4D8JJJ'OT@?I&8^6(=28]6\HNX8$I&&YF3 -M#L#OXN;7LJ`2/!&SDLZ(O5Q_5&*.Y$*FK#:9XQQ?)!?Y!,&CT2=^,HFS1G]: -MPN.WO7,A!3)$*G4#^YNOJR8'Z"+T"J'(Y0-]'XUPJA@YM>>C!L,>NE'1S]*# -MAKO>,3+%V9K>L#BU.W;)-\BV]74>NU\SE422.BPFD&\VN#BM&<,6?0$S2&+T -MW]7@6U%Y$^]M.P'_MMDGHW'F3[+0<%!C<]8!*31_W\--]';+?ZN=6U6XG7'L -M6Q+(UV2OW3G<:O"7P0MI=BGUEJQ#UVL?+A995B40&\&@$M&#I:C&EH`\]^!S -M8,,5$QEJ?/8NL<0K]&F&;BSOK1.X]L_HOOUE)8;YF+\S'Q5S`U2DEM%B[A5] -MT*`UM3&Q[BV77-G;(8KL^<3:0\$!`B@@2S%RH>QY:"L@$HN8;\):5)UN6*SJ -M4G1AOW9J++H*\.;=PM)^E'%VAA;PX$G'_#5O4^T#BHY&\AK+_92,K777?5!8 -MR&YA<51GK$?5I<]H;30:ZPPL+%PKO7ODJ4NYZQKSK%@[&,J=(OS.=NKG%<8F -M7U^NFS]-&;2+S^R@=DQ&,-='/FH^4R[JXD.52=G*4X'"/^O^\_@'Z?[#$^4_ -M*:2GZEA\J*J"2%$MH,(?F2?^J*463X2'FH&F\OT(A\J6/@3M/E>?91+.U>UY -M':#DQ]1O^?//&`6!F<`/#M&2X#MI9<4G:9)1R'.,9EU.,WG:_?,WJZH-K%=H -MNUL]B1!8ST=)^)J:N9N=^JJ.U.IW-2U/(R -MWEA5-[O-YQ`\BDI=4)3VRASN)S_;M@;9A3;7=UT]NG -M+Z[I4\NG40>U>!4_+;-$;9]^4I]?J1W*)7HWJ]X431VG$X'>T\.]Z%'73#F'= -M\+IW)V:S-N-MI:`K)]=A;K@;D#N)0K-RH5Z,\0N+,1YL.'&=5Z=QKF!>G7MN -MP_CJH79C-W_7>1JF>`6J>XPY"ZAB8\"J>/2>B'HR>B",/D(3X1]TDUFR(18!]L`OVC2,8B0]J -MQ?1%$\"CW#)MOQL`,[H]YZ/5\9.58>E`/=0W&PLL[:D]/&NCG*/$9WEB.63# -MG4,ZXCF2EYQEE=1P[9J+D!24HTMQ5?P3J1`&;-R;YZDZ:;XSNB,Z_AE'5\=M -MO_?)W9V+YIZ=LD'S#5TE_`QX,[2.C2)7I)V"9F6674*J89HTKQF7:%1J`&=R -M=0E):BI7,U^#R&M02/K5]QE;?)\\/S<[?N+,R]Z9UV]BW")?Z5W_U2WEMRY3 -MY)3Z>H5`V7\5E):H#U[Z17"1ZW[@38>KC\RV75A(A21Q!TVQ4N[G(YU$H)./ -MG*:"=GUPVKV5+1+V??9_"17,E9L>^S.GD1*;&$:'A<@Y)+(654C@ZR -M_U"SG(2TF9^;EA2P#.V-_ZJC$V5PE/M-EIY_6I4V&$N8/([%`C.&W[BJ\[4[ -M=_;>H;I\_R4O^)`N-$L'WXRK)K84< -M&/WZ$ON<:V&ZDJ7B]D[2?[0ZJWB12F"=#'/#/%H!7-42(#,'E=8'R"+>VT\* -M11-):53)F$*Q4)454&*EJ'ER#G!4C.VS,/5NQY.L$I0$D99I3C7+4Y4T.*VC -MFKFF,_&S0CA<`7!CQP%0+(*J&_/=V58(![P01B23`3Y[`XA^ZH4" -M$\!.F!'@'(R\5?FAFHZUKS"",#APY>A&^M\T;\Q)U^\71U1^\U!J8NHD?YE= -M6:=%?L2P/%9U_\>'1&0?JNM+D+[0_8$P.;GEFDEYO)9?E1QIS?([>FCD(>U7DO*-5?3(_]?\^C$`OQ"4SWG7/^)3 -MJ,2\KBKG>H@#B_Y$9R>49,K^1_A/7B1"MTW&!BH6N5_RG$M8@6PK7*B)JU6$ -MD1.SSE\\&P")E#IAR59+U.;ZX3K[,Q]+29>45>#`E$Q<4O>N>=X-0_-4B%*< -MG9\PW@0YAV[%,M2Y]>I40C!EVJ;H8&OKZ\43D#YHVO.,15X,8Q@5>_FH#QWL -MM%Q23`#!8P"GXE#W.*%]#&(3$^_5U'N@8@>%B?$>8&!'?70')C&1&'5[EF=; -M"[@M3IU_K3F6Z-'_!2+SC0?L5K&.J?1C1T=,YD^&+&?%K4\W_: -MV]+LM_T3'&@UX?,975H)WBA!&>-C)1*R\-N_$1OU!YZ;`<:*$9A23T/^DXMI -MSHBHF.AXALIVVFQ$$39-S1Y5B19.KZ&6"91#_^CYB&E;V5S4BNK#;E%M-GEWK)S.;)!QT9`6>V;59[F9I17'5]56"L/N?S_QNGZ6_&E1`U3XS1 -M$?C6L5!0AB82X&LC4DF((*DGS__?V*?32_$?8^F/JWZ3ZA_2?&^^=I_H8)T- -M;)X;/R6:%FFF-UE?HY,.\K7^B'L-Q\YI.JL]>OP!?HL2U7))C-\XDE#^8R.L -M`3!O/`;5JPR?N):V_[&BH3AZ&GCDY[;#I\\U?5N?*#.1]@B=-NI+MBLG; -M2-=DA72[K4NO!O^RL.L8_Q+EP8*$4S&V*[^W9,W?RF.R.<[O[>%T -MMTNP3*[&EWEE1HK],U,8>WBVU*?RIY_^*=E^Q1J![C6L.KR3<:RCUIR,P& -M*./;G"OU6+H4"'9^MU9T+$0"'O#1T250J*7,Y>XM=H%,V=ZM+DP<+2+MQUD= -M+Z[(.8F7?ZD_U?:M(_QZ#&@V#FUN27XM:J[0S$M(3X3KI^!S5^)8BIR>SRO5 -M03_W/V=I;_!7EL>L\O4X].]R:VK]>.3Y71'E`'G]$#6Z*E#'7Q>QC!B?+I\0 -M]8%#X@5GQ`8,A[)%5!1@'Q(.+*_$M)*(Q9/\#)[7XV'M,GS8L]_@^74..E)8 -MC%+!&(.NPI3G`VH#-A4U`$4QQODU]-]=_%]]]I)=65.1W[#)Q:%$E4/_?+W1 -MJ/2(591#`U1B6PS2WZ\ -M3KQBC`Z\3KLIB@E,A'_ZUX+0E51&!$KUO??&70LJZM*#WG%AB"PJ;%DA^/B^AK5WJ9G>/>Y92TS@^_\+P.Q.W4H#K]=@J=M!8PBC`>/[OKZ7@PU.=@6G9P#9A@H?N=R'4;OUI]*--R$ -M^QCC0K]".78^3M:(>I]K(ZFG8D<1!LK>NMR7YA#Q1>'YC4B>$,*DV[&F -M3="[\K=SM.Z=-:26I@ME67XJ@IU<^E/T[W578(WS\KL-[G1=MU%3D5`0JV_K -MJW?)ECVU'P5W?:^>QR>9\/^]WL?'YOL8C>HYSWR)-76D\?U]ZR+VV51NW5 -M2W3?A(\VM^OR'D_?6SZZ>V:\K*R^D5TYMEHZ'$O>:"/;O7O"-!3X5\75%\3; -M\R^55##>!1!JW@PL*"\JHHD.7(V5(3!9*6EB?AR%`YB%3DX:I[KJ\3V7%F9 -M[4R'2_.XU#Z6<:$(J#NQY[J]7D4ME0K>!->H;NN+QET"'-CT,>41/*%M -M\EJP/1A@LL8HPA0\M*=M)/*HL8R%%\L4/'N'Y_W?Q?DX^M^@\?V/^>S]2M/^ -M5('7UH43YAK'&C\IK_5,GY9ZL*7\Z\ZA34=NO3JLS*B8F)B6IID1U%)(9U%1 -M,V&5X_J%2;LD^['7T<)P@=84LWJ["X%58BFQ@#X&"%0H.`K*2?+ZH5'4V0]* -M+'595;2J"D@4K2J*B<"$_G,*(H:G,/;#XO.5CQY_"7R\J!$ -M#!UAE@0?>SV8KTH]NKB/'#JP0GK\_^VF$TCF+QT;%><8EWI=+8ATM/0_ZT)U -MKXH[:AMN3]/;]7-FY_'H:.C-H;)7!@3/;)2\0+J!+H'HTL)Y8#/*T60/F`8P -M#M34'C\IY4\MFK4&]644U:'0FFM=:89IE#4-P':R4OE_)767%M#W?^2;TE[G -MK$Y?=NG]Z6;.)_X9SIX2?DJDYW1:XDV<]HZ&A/GT&O9^\XU-[<#T[K]?QQU^ -MNCOE1*IP_0X=D@GKC:4/3/`13TP5%MD/3#T[8B*0*1&&,"$"#$8B?P($B@!` -M92`%?.>U]//U#\&CJ5M;\1W_9BP1^9M%W.(OBCW+!722E4!#8G:E%9)2;4*B -MFHI2F=4E9%4*C4YXE1-JYQ7554]B$2F^Y0S*0H9B9H^,\9XIXY'QM)12*2>- -M%C)/'(L$45(&S!LJF!RE#Q?S]^6;^^=GLO9GG6><\H\?@\X]?\OZW_O@MN7R -M^R;_/`C7LCDC_<,/-.5DQR5(K)TZ*8Q^4K^SF6EH@6M,)AW7'>7,4M+O)@\I -MY3R]VWRH."(J>BA&"(^6R1D&*G+9!D5FPTL)RYO"[X;^_X1RPY1O?M#P/F?G -M>_[S_3[>B=?H_3C#]G.[ZUVE^[S'S/*-;5T2HK+"!26$B965UA6D5@UTZ.-. -MX'W(`YR;P7?.P[*8MD:RUHJPG?`4BD#O@,$-Y@";SQX\#$1X$&\2`_XP<*AQ -M'A9'0:T.-[R^ZE4?RW9PULTP3\I0>_IUAT:=DF6U=5W2PL!7D5@R.BD5135U -M9RBUR>U*TN1;J8&=',\8YU=01XF,Y$Y"G(!$G(%7!5$G()QV4"(@'((B(SD, -M`10Y%%:4"SD,ZJ1UO<]]7XE)Q05/`'S/@[!.Q(7P'9BP,0$ -MB*C`-01B/F/'@<8$`XD#YYP.(.).`!.)$'%0Y=>2DOWN?5R=GL=?X/P^;?[& -M?Z%@J*R1CV@TIEI*IIT"1(B3)FX-Q7T>*2/W\W[Q]QK>3N\?DKE9?_6:<[C=MG<7.\FV]O7,_5ZU"74`U)%E%=E<<> -MNP%*Z,`8:D.R`B(R3L`8*(L)V1[]I;";SS@0/GS`CX?KGZSJX3CF&VC$'IZ<=-$W)#ID' -M%*,DP$1('3`0W65(%*S+I@GO:AA]/JGSQ?4GF4[V]K;#@TZ.2E09\O+A2UZ% -M2:$62Q=N''J0GSZFJ)7I41(TY]\?"2`,X,SDT,Z='-99@55@=$!0#4`Q(I)T -M0$42((2D8@4*D"".,$I<7Q'>'5'+'L?.NY#X7SO-6A_KZ'Q5Q?A\8 -MYEWNNZX.Z'CBE(HDIJHDTS5D$[18&9D@`21'2$ZGMZBA.N3J=6*BI)VB#&2= -M8J6AVE"3`:P44SS%-7XS,'Q/35_O][^OW9FYOF9F5-9W/F=B3Z81B$/I3B5" -M!JF<6]IE!+R")8R3,$1BA+R*<:RP+%*9`SR*9V0<[%0YA6@T<#P56NZQU-?[ -M.GL?(7V$S[S/RO:Y?TPRYO[?I)NL-IHB8LL@8D5[5`8;S -MJ/$?(_^_@OM'X1_I^S[J9_B)GP9ARB+WN.+T#%])3%/H11$$8!1>5]'G7P%0 -M$@/R,$PPB2,04`\R?Y63Q8I#FYJ%)0)A!!3%$!C)&QL$;(Q[7K?6_%_J4?*] -M\&?!THIK2S,UP-W)KH9%TV`F;;0V$&,`I%-*4`I%#X?^RF$`VQ19#:&&YVB( -MR;1=GN'':NUV:;2,?T'-BXKZ?^>0;0K[,S*YN[[`3=T6>_S1W-+>-.,4XU@( -M2DA+"!8PI"6`,5D-$-#0D*DSZ*JEA?H4T'@?'ZY[3D\?]*SXA6'$G,-WV/?7 -M)R26Y*+C((8(H&2,23.`L,TE$%@%D.]I@PQD"BDHA<"E7`C@.JZCJCE[!'3N -M7!<'3V;U304:PX6'/'UWNMVW.+HZ?,H;CP[N@=U.W=R*FY0Z";MV,&+8&)'= -MC`%(@Q0#S)#@Q0FZ&Z=&X$W;J4W8W,8(QW,(-/#'2C'F7_F?OG^;Z,F239\K -M+JVI))!4J@T@0#5J`K#J#!TITI2=4!0PRKAG:=6H@(`BLD-X;XHL-_>.KK\/ -MU)^-]3B]CZ#RXO)C7R)EQY''DJ8'&6&*<>5!RM[=I#``P1BH$U23)"JR%F+3 -M)`3C9K$P?`?>?YS_PK'O?52^U"JSGRZ4L4`?AAA8(5?"@0A49"D!$!!0YI, -M/M\6`8`YJ59#5`2TAB#4LAS/T=4+4JBI3B0Z3=TR].!%%#I)4.C$LW$:ZL0#I`6*2:4@@PFL/#)6?0QT9] -M[6=WZW('^3W^3FV]+IDCC(51!5@?@-6`0`0/92I?>)2I*A%(8`%`8J!F(7H5-)HA8"F:J-*B -M@,&"^7R^\O+\RGXI;SN=YG&Y^J8C%BLX\!KJ:[18%`8Q83B(1=:2H2@+B2HL -M0"HI#$8@Q&$TN)O'=_=\;V78/B\.FF?H["OHMNW -M;MMJS8;`V$B1)-A(QMI)L@B(,)LE2&@LV"S9-'9,>34)7>-S-V=I_:[S?M>C -M\OM?%P]C#4X5MX=E=8U:H*&J"13!.L:JH*H=0JR=00WR`Q"=4#:J&,4628)U -M")TQ(S?U8O4>HUITG3N[/G.#LX.$0M)PCPV,X8*3AD'SF@<)$49#A(JPX8<" -M`]NV]U<7#P4Z9@N,8JG%Q);.'B3A:K#B)@(L!$(< -M4`4!&!Q(09!96Q(<0<3*K`H-M8<)QYA#FQ\/1<04H"QG?D.N>'T^][W -M^)V/,/E'$,/>;NQ3KHFN.LVFXW4-VXW&X,,^:W0E0W2+)4A@DPR&Z;DHDH"P -MW!NYIR'SG>]#BX3SNY[@IYQYPGVN;G"*O@W-6U5'3#P>+HVXE"S;5:);2;`VPVMU6&" -M0VR.VPVLL@L\MJ(3`;:63;W:S4=W4?,X*88SQHWV4%')[)PCA=73-HPHX=/" -MZ?J,(!44DTY#U6G4+)@LLD&"L0-,FDP1TVI4X6F;6$1PF?1\'_]X?P>Y\?J= -M/Q'=R[^^90R$RY4B9%,L+$#*112,3"$^;@*:`&@"Z`NAGIHII,>?NC\/C^#E -MET''T=SBG&'$!QR+#4T8%@HLG&V#`*"@H&%JIAF'"JDTS"\+3>5IZQV*.EP> -M4<0MD%4)?(4P"AA+Y!S5"\:35LAJLP -M!>WE&D7]HB9CH'-YN74W=BTR,@^)")UN@Z:*0TU9WK-F>S #%LU0!$V#") -M(B$-@9LLQ0-D48DV;'ME(Z"7`Z*LC^K`.7JPUN@L>W6Y8VXWX4$+KY?4OHPA -M'D`*(&8A@0*6(+`,Q+&6)8D#,"Y@S/JKZL#X84?#I>#SSVN_:EF2BB*(-$4J -M;;%4-D$$&&:9R@LSF;4K(R+(*C"9P-25@9)+DH5)35%(7)DEMK=;;R"V[9V\ -MV*RL2'(@R&1:0Y`#6E0EA%J`:IER8Q+@7HRZ.CQ -M`X#@AP+.`X`[A%(I#@(+.!A1"4.!(482G`R<%CLN,&-O5Q;S$&_;O -MG,WN9;CXMYQC.)D9YMUN:FWY/OL.FF_APFSR!YJ.V6VQ86VU518I:$Q45`*`+:H -M"H18@BD,9,:6RC;93C*;"ZG:W]OB[&R=YT?7[?V#SNQL9LQ>,OU:S5F#,&:J -M*#5@9DF:2*!F@"A,TFJA%S4F;5U5.?O;18]'I]WN=W=B;;;=BZ7-Q=<"PN@" -M(8$)=)%N0&`7(,I!;BZZ1@**C=E&W-MP8*[PK5N[K8._V7ZIBA;?@54@$*HJ -M0@F$"@IG@+)>@(19*HI9#/(L!B`0H(%4E`H2$&%0215$1A+CNS4W\F+'P>]> -MU'7W@\'L]FPQ2DP(FPBPV$FP`1)L:K(%(I%`U(*IJ:E4U-0U#*<7:-KF'P_` -M\0Z1T.AO8]2LAW]FP[_F+ML=NQVM*K#;)L9J2;2&Q-KB(':A%6$1$M(8@I#: -MJAVE)M=NW%QC3R.P[WI^+DY.3(UIDVH:SCXZ:\8M7C+27CQ36@DPUEA-:'"S -MM)J%9-4%FM"MM(4(:33`Q&'$X>,.C?+76YG&/E_@>VXN7+K,R!DUDMRN5L0H -M&AR,#1-22D%%"2(DF@02M(:@&,F8::6K*&?1H:7O!R^\3.^KN]\?!-_NGO\H -MLPEK:VA:%J*`DM8%*(2C&DM5F(D"D,=JUPJ!0&TO(V5Y*[TB"YZ`M"`/R/R60(!`820J/D)M>:.W%MW&V6%P7<*ZHEU2@*A%)<$BPN`6Y%` -M$$$@H)JFB0TBI4!*417<;-2JQ7'7*CF*WM[7!+++@KX-_2/5Z3U^`WS=OF^% -M`63>3I0F]PA+#>P4*)"R,2&H%WUM$-Z8E4W[YTG@ZK>;/S/Z6_=V#?Y60RW< -M?4W>1<270B@72`H7$+A"((@U06F,PG%.KL^J['<]R:'U&@-!ZE70%06/J+*J -MB0[D$8L1`P0AW"=Q(49"QY[`9P8L*//7@YN+G\FO[MX-#/3CXQUVX[E[I\_!JIA%("`LEZJ%^>+G=JL^7I9MKD^)ENZ&[LC= -M26VX\0ACH$06&,BP%DR(&2*1DR061F6+*Q3&1@'7BTV2TV=FPV+ -M1\%U#J*Z*[^OE$*,@Z>'L?5[/7C'!>IZE010QTMDD,!(I*JBD-S64W+#HW8P -M%DE0P!AFYA$)N8544H`UV"&LZ[14=PX865?P^9?SN#>Z8I;QK;MS)F -M"N"F95+99,[9+(*3,DF<)4R64%0469%#(7!=MUN97*5@W#K=#+73U>KR_+_$ -M];S^?LZ-&?GV:VC6UBHZU)K2:R1@YZ*36`UF00%U(2C`H0Z$*DL1%)T3H;;$ -M7G._HUJ2M'!P>%YENT;NW5IERY,EQD,BY$%R3(B0,CD:P&`YV!,$6$L%,Q?8[IM[7/]CO\GDFK?Q.A9FSCG0M3/FS1'U?V_9Z7:^LZ'@9!6QI;K6Y: -MLE0520)!()$D((`I$P];!0U,DH2'7"*2M9`[0**#U2=<[3U^EZ7D\G3O3YCR -MY9>+(USAXSC*IQ/&%(LX(*063CA[9EM4EMD&0X[:K`2+%XV$#3G:-?2[@Z80\"#%-D%AM2,!=+8%(*;6 -MH4!$V@B<7535,SR6^KS8W=!7=^R\C#Q3C5=CT[2K32LJTM):T(=K)%EB"22T -M!8"P+8*H6B*A;9;I60*QVS';Q>-TJW#P#Q/6&R4%! -M2<QAY=KK]CT^;Z/W1[_X?) -MHZ6Z.AG.72FD,$-"(PT0C"+-&+4EA&(&@+!3"32:(AI;=#0T>3E?==\ZGR[? -MA7?V3+J#$R:F295LHI"Z"@HC)E`4,TE8&@3#%K`J.FB)H6!- -M-5MTS;VW9LFT4NOHUXFT>5O]W?CN6W&;5MR71EJ5+B199!9+DIA*@+%+F`PB -MA<%PXJ"KK<&.[:K(59RKNZ/$Y'(,G/XG%Z=KMJ,V&CH:&,8#!HS29H3225(# -M,THU*P*`NCIC!3,\MKEVIJ%:F7+E$\.[J'J -M-YH;-DTQ39IJ4V!*`[*3)DE"2M8%D-C(NR@,N>-A7>5VHGC\/N6[3U?A9[M' -MT)X.0U\>NNO!R)9S2W3?GLFP-C$--$@;&1D58-L$"960U`E299J+%#B'$-O*V'&G'KI@ACMXQ),$!9,3C<3`4!(LF*63%7%H.+: -M0ZSAV<1OZN.KKJZS6S70X]=5)8:TK)0BG$U`FL#"5#6)#N!;22 -MNH;&\3QE$UFTR[J<_=X]-?M[9PG$\1Q3A9Q2SAXJ*1%DK(,A\Q98"PE`4.)# -MB8,%.YCAQQ%'BEO:.'3R5O,>3C^0>5Y.^\Z.A\43O-I8KJ3O3[. -MG?'MX/>_#\X\T/-`\T?-IAPPP",\U&`I)YI'53V[A@%`$S@G&`SCG`L*A?50HA"^!20+V\*9FO? -M@??6-&`,AAUT(AWN=DYCCH=E>$K@!!)<#S%#H#H*&E:1`V6HA4(@(A)LA.5) -M-@1U)BA0ZF4C@=!+0;/)F3E%R.)R(B3)C".5@(19#4 -M0RAK:Y5JAE8:A4(50)P$$^"<34H[M/I=Y"R+I/6]YR -M?-\4Z^2\.OCA;:3B8DX^*DL!2!\N"BDX`Z>4C)RD!A0%=*WIB8=,8A@O]OP& -M.,SUU1#1BGK08)FGHKM"V"DM)C9*82T)%@=J1<"L@@E*`H@3Q"U0AA6$V,&K -M2Q]O+8@3E0+)M8(XHLH2OF$B$1E)D*ASAS@*$YN>R,F.>P#4!4!0$.=B<]0\ -M'90IJQNQ3<[NSG?+NW>EIGU\NLKDG)D:U!89`:T)A)D3#!9(D4U6S#)E%->4 -MRM*9996]KC,CJZS+T#;Z'=RUNOAUZ^[52S*M!CKRP(2=LD,,(D63)BU@6"<% -M`82*!H">9P>&D=FW);ZG5\;)S;//%VS=$`Y4,4-81"*(@1*1SU"JG.\Z!8%$ -M@L%(,#GPXP!4("B$@")2!#$"I`6M&D:U!%2@Y]*ET-W#>VZ5J%\/O^#;7:[3 -M:&U@R*38R(0VB#)4VS:@[5`4!5=5Y2'@+3MI2MK738AYF[=KMB=(1GT$GT"$ -MG@G#C$*0R*$ULF`J`I$FL>/A,)IJJ3Y\,!,*4*%&MJ;_=7(&[AN -M2@2W'@^7PKKX)0H'B'X%(4R%`3-)#,&IJ$U"RM3-FU;"K.'@U.=T^\ZW1QF' -M3PF$4TTPE1285=-L9"P`PC2!*`1TQBP8*+#2CIE"85KA5I\+6-WA<%>-XVT: -MF'A8<,:#"89A2+!`PB19!A%@I,)#2*3@9R@,14G#3$Y70P2J1++;W[&*ICK4 -M6@:`*2**+0A:TRXL8PI+D4&%S(H#`+:J0N&DP,L9!)%DP%K:RZ68++"Q2[2T -M2W15Q='4RMJKT.#HCMUX;>$85A$,0-R,"4B.E218J2$4@01&2`W*$4W)$G1N -MH3%I!"88,4-U3=T(IK)0J7P_,<=!KNUEKUQ`+NON6!8YO=]J$6=F[ -M=><>5XTIA=HP8&UBD$21@;4A&!M9*@*@<((NE2CR/@O91+ZZH>U0^[=L[[UY -MJPTW8U[-<6'WMH(FT(;0-J0ML!(H;=MA8"BS;JHF4WS)EU*W^AUNIQ.O<8C" -M;V+>JRK`V"L=6QP5@3`$Y&,!UF+@AR0-0@5)0,D.1(4B@HD,,E"B)&DUFV]9 -MDNL+@Q&H([I:#=%)[2-L50V6P!E0F=L4!0LF8RVDY&2@%%Y3EN9N!IQI%+E& -MBG.UZ^OT.&H[P:NKRN4+0BE,,4:K"(B1$!$JDA9)SI&0YTA&$?<\^"525I:D -MYL&+B)$]!++#6V;0CR/.--$4:%$UE::1HD(TQ0%"--*C"&%)I,)4(8$(R!OO>CV>\.IZO)I-$'/2C8&C"I2& -M@)HR4`MLBDJ10B0-#,-#/E'+R?2?1:^K7EEN-W3>DY,N2.+AR)#(AQY9 -M^7WO3Z)X=Y;=YOW[T(].^H4FY@DG2[V`LC(;TA$F$I:"*;T97?.># -MTUZ-V[U+=&&JVXW;&!W4P/K,>#QUGV!0I?1]'T?(*%]'R"`'Q4B$T=HCMI*( -M#(*3NF%D=4\,/=">3R9Z?;^SW>S/EUAQAPG`\4XJ)PZN+$L"H09)CZ2J&Q@" -MD*)IL,,PH)IX>'P\8O#MUWQ^CWW%Q'$.0Y^@^+MUAPG$<4XD0XI#B& -M2,#B8%0BH!ID(`43301H-,%#.5=/2&CIQY:RSL->Q8M0B%(6J$M+;J*A<8L% -MDL`7`W,9+FE0E0ERU4QL@6`=LG;(%!
&1$,4R/;TW5?@V<'3M.?S]?=,= -MMI5J+Q)IRU0N8EP%R10&`H%Q)C808%R%S"F)"XN$9=K&//F-7KXC@4X7@G<< -M/`BIC@08IP`<`E9"R`=Q!)W!!)>"BP[EG`IP2[-W:O%W4TZOA^'U_5^B]3PO -M6>'V=_H7];EZVML:VP*:]:VNA>)KDUXTT$UHA%!A->(%C"@FE-"1'2HUR]T& -MN;LX=.SO.]X1N]CFY;CC&+);+;JA4N1EP&)4@R2YE,-)AA(DG*%L`*2L*P#E -M(\M(RV\@AQ,G1YHWN`&).GJ@ -M(2QBP!(I[9`C)-;$8+(,.);36@,GJJ,)#"1'2I-,!:HK1I4J0^>MX/'Q9:S7KUUG&+-=:)#6C$@R>X8L4(A*R37`UH -MZDUFOCFLXSPY%6VW9L#48>IFF7H -M(`I57A?FOIH63-$!(7LO8&9D+))8(H2,EZC(DS5I6&!#!8MYN!Q'<.6?8<%W -M(WN-M:N4KQZTR3)$UZJ9281)DP*)*2(A-5Y?/Z''W-75GH&9PK/4$S@9XR,#.,!(=N8K=JW$8C$XL6*;N.K,:%D,:U8-A0MD!RK1H" -M0R6,D8&3"*1(9(I!@8V%)4QHP3'0.[L)L;`<38YG,Z7K-[>^S^IS?"OX7`>7 -ML\'N_2,%WZK9OW0WUWW>;]Y.G>"I;8;[90-[(,DWH=QA$@+(L*3>MHM#I:XJ -M3`*B5`;MZE9JFH-_'(`>*K$)M&*$0@:2;;8%DVS -M:;5/+AAM#"-47;6NXWW^,\V_9U7WWA8%FQ8$2Q!D0B2)%B$02)2H*A8//8DG -M/&%9*0.<1>=,)#!,+%DSH"YR^N7?L>'U>MCV/5N\W6W8[2ZQ+;"J,%B%I<)< -ML;@+FJJQMLI8R%S$06"@,)B#*A9(ZZJ)1"ARL8=Y[]--.]WYXPET5[\N#G]G -M:V(ADA@@2!'GH'P\Q]A1@1]'E141'R2@P(4`8$8@1D,S*J9E-3-6:HCSK]+9 -MV>#G=WN=+JV[=VW95MUPN,+;:*)*D+;92K","4#""%HD2*6I$TY;L[)A[O:P -M]/OSUIAPCAT8G$8ISZ^U@Q,C5(9%M"9*PC(&0K("0F0!0*$%8F4!1,(:1HBC -M"WNW.=_KW?A['AS,&&S#!L/P)`D#X#^I9?@)@D+T!9&0TE1$(P+QI%)4?(,! -M"E++Y#[N)*NQBPX<*]K4:]2.QW_,]+UQ?&LB"'-,)`1WH&<#/,ZYZE0J(S., -M8"@L,\!K!@2]`L9*A+V(D4$)>BD&&2\-4=E*+[+S.5VD";F&41[TQ8^ -M?B'[PS*73W1PQZT<,$*&`/@/E($`5"JA!>BRRJ%`9"]$0@D+U$IL9"R-ZH^Z -M00_OZ[YX>''C&+O?W+)/;M-!+#5E2'`X`X2CA!28FA,Y-$6`@#I94`I(9KHV -M1=3J6()@L*H4,U+`+H:O:EF\Z[O^-S9_O!WG=6!V;(LQ\J&/BB-(S@J#'<'1 -MT$O17%J(0J=`D%((06($@0",A"$"F,1V2BZHIS!@8H8":AIXQ-CAQX+.KZ3I -M]QU3.='1HOSN?D:,XYH7@S.R@#.P82]%`OLHI(%A`SK%C(1)+`O`SU11GSWG -M(T&^+]NYN5>Q]&/[5.3JZL#T&3"Q^)3"(8AE$BT8U0QI&A)1G0`/0=%QA)$A -M@8&I`H'0:K"PZ$*PO0C.@>@]R?\C+?EOGI^QRW,SY6YN>I,IE4RRJ51=83(8 -M*023*VLB@,#(XV@H0HBL51/!*3Y*%2D.EX>6.'@=HNKOBAL41'1I4G'`CB(X -M$8:#!@9HB08&>E6$0*K`9&DH="E)WCO!YA!.]@N?(YP/J.D?!ZW&F9=:LXV' -M&W$+B.%P#1@@*&B,#1(P-+;I0"DK`$FB$D.(V&P7)-B^+PW>5M2][XBU9'', -MUM*(:((:#01JBH2B7,D9`L$1!06022T48"2Y@+0)%%#14M)N%NYMB87'=9ZN -M_[?WPS^7Z?AO=/+NY=Y<."G4J4JEM3L\'4=3$'J+$G4C;0.HAU'N+)9`JC%D -M6"0ZA!.IB'56JAU([ZG2=._6['W!^'[\;>CO%QO76RRKANA;<#:TA9=)@C`2 -M2X4&"!+A1D%D0ESC9*N1+`:IH"RI*M4;)U!U/3=2YX&[T=99_9F>&O/Q#E=G -M%,]-L,S!?(UQKZ^OJ20WQ3U)M<4V0V4P5*-F!LJH39C(R!LCZ^@H"RJD9-D8 -M,=H-C:VJH\*7.N?F>B%33,!RY9%$DY(R`R&0B -MA$DM&4A"C&8S&KCG/.6/4]GD[O*?+^]Y9H\SW9@^KVGH].PXF'ZB_@_/UN"W -M5R"13(E6XA-220)(B"1"$!*`$H"(=<0,(4`ZV(BP$A.N3K\5QVZ&(:A9)*TQ -M;B!O;2& -M^,G&ED-Z()!(=+`0!4*E0:52H*@VAWFUL[:J-K9Z(R;>YW"R_BZGD>L\ZM\T -MF:S^(?2;?>]EESR?J.QHYG4&)/$'AZUFV"+9-H@I:-FT&%"B*2"AA-U&)!0$ -MDW>.E$C`I%@,..[J0L8!9)U;(Q!,>/&RWT*P<_F')^>#/&V]OF%'"0YM.EUS -M-=`61V5C:6)[=@@&R(HI-3(6`9B5(5`%#4&4A0:AJ`<\QMV3(7\'?]??W_?: -M?'U+.MES%WQQ<76R9J1"+C"!Q%>#Q0@`NA7D"*'B%"(0!*(_9-#`,#(5),R. -M:B5"D49F-LW)?8Q1!,@R:@QV`O*^B_]_G/?+TU+;=E'`XX'"`J@.%M"0@629 -MXM(@P!SJQ96`4GT[,W"30,&A<#2,NNDN!VP>$>*871ZFQ-FM^5HCE.I5>6\' -MV&]`^CP!'=E3NL9#;W8V%1@%ML[I3`X=3"P-#E$$(^&/$/DADR8\+L!H^$R2 -MM=A'=I%O1_1?U^3[8*SS!,[:;FOU3<#-29H:I)F8D6$*3,J]HU`0F98R1D-$ -M8Q(NQD0[LV]V=V)2FW;W9>SQESJ+%9$74Y7ZI]13IJO=[WL?9YAS-KGU,7+Y -MN.]>S*Z7M0D2"N2!6,H+V+(8[Z6"0[%U4A8!JB/<;(,#L)(F%$"H*Y))"$5Z -MQ%>NQE<>TEEEDJYW_,Q?FL.9X(HT+:YTJ[DN2ZW(`JQDF12+&#"*9%5,B62C -M(@9X9D@S.6T6?`G(^(/$XWC7,RIDS,S.5V?"J;8I;A$<Z$.\%PPF\8+`0B\3)&!OB#.E!FIK,`UQSY&A\;CHS,.#>W -M_#?;FR;>8>/T/L,I*2&C1(=R>OZ^0O&XZ/;FX-W>'I-HVDVMI-FD3:-IC`-H -M8,8LB!':H7OL"R%&"3OVV=X.\>^;_;Q[#V>`>]X/7^H[Q^K_'>M]B=\50Q[< -MY=#9_/\M2D<*:?$]/N--0`.L^[4!Q.A.)G%R/`XQB#B8@`Y2.$LAX4AJ"ZKX -M7!"HP1@'A13PTJQ8,DE8PQ3[;[JS4P0E8LG`R6$]T&,408SFY&-0.CI31)C& -MBG4'.@5;M/=?EU3>C2YU`;QW!IK^E)Z]2%50'T;'<_':SGA6[:67D5L8ED$L -MH!E80)0@ST!!((0"4@@D9)J`BG[MA6\R3(:7091!;_.B^16,K)$RDDC'1&G8A#Q(BA%5QC=ZFZ^O-K#QY`E2HD*1,C;F]O.3*]((9;Y9)R>\OX5`BJTE.2[A`H?=/3DHWX$I(E% -MM53ID_`*X:9C,R?8T&GO*'/9XX@1_!SP>RC$4WP,%]+XY!*)?))`%])P*D&$ -MY?!5>SP6260F`58P0YLLLK@?=5Q^QZW0[Y>3V>?;GKHS?6PH@.72DER'WJ1% -MGXH_C6;QJS,BKTA2UTT<67=3C;7<&*ONQ2FK)')M3>1HZ5W:$+S>?GOS1EU7 -M+_7P+'F8.O@&QID%X['6()V+&%$PL"RBE3G!.ZYJ0&#S6F1"%,1((84Q@'X/ -MQQ5ICP/&VC!.U,[!D8X5=6__5G*"&H8`T5G#4.HPLN.C8<.2KE:$VJ$1U\:S -M*BD\[GXBYL-+QO?"<\7%^T0"4G/^M/)3_B^S]TA16EA&K4!H.L8[+BOP$SV# -MN*AFM2X7JG;;W=ET^U[7M?*]KLX>W:;EJJ.;$=9QHIF[O+J?G+G\?X].@X_F5ZC?<5HI];CP";5'!!K0[O -MIQZCQUQ[W&WMX&7<&X8=Q#U/-A!:DL1/?64(8<,^CLLFI)0CZ@'94P.*P,!" -M@XGPQQQ0D(LLT\IZA2^^=CU+511^)T=?+Y4W+R51&&;XJWMCT:;9X[UG0D5- -M@L_]$U-&P4M?^[&J\J$QG7NHM>_-3,@/M'XI,]8NH:UM77%E"Q++>SS\GEO2 -M)G1^$']+Q=^+[`8QZ5/=)OAD8GW[<^HJF*45!8 -M/XE5H$IWUK1(Y!=6!FE8CIJ=F><]ITN/OZK6?!%4I<;/H"'DT!QTW\>,;&(; -MJ!TD(,1*(F\0C$023Q^K3#*J2,">8"B`L$DA#'&(X&!BA(0IUD7+RB]2KOLY/\L`MPF^%6\;P5+ -M!JLX$:-M6W;]U;,)XEE?FAZ5KZE6=TR]-N64R6$3#_#[G/\9KCNP1:(AU./9 -MBG\D2Z?(&]:?MV_%\7Q)I$W0J[K4P)O,*(46RDGJH -MB*1@1]2GJHQ!2"2-OC:@C``XH009[LPL*1]BA-!!C=PK!TP>P.N;Z,O#\88J -M&=[]?R47F.05_'3\*KZ6&S<90WQRFJ3\YP\2V0'85ONGK/6A.(I#$(DV-.=N -M>8O@AAE/M02W+(>=JD@Q`%+D:/$H4.0+[E+HYVBNC]34KW)*&5=I5[=W4QG7P_6SI_LAZ?0`R[D/SOL>DA['KSV#RZ -MF'L+IUV'L`"GF/KJ/KVR"`5FB44D7UXP9JU7']J_[/A':/4K\+ZO\K]J?P># -M'^GH_GGQX05G5H'G4\]L-"7^CZ?-2 -M1R]Q62]"--Q":-2O=;YU41UM?.$6AO-8!_!QK.BSXT"?H*JW>DWN?<;,NUAS -MHFQ]&YRSA\/U)_3\@\=>G,&,+.S7B'9;&@YW9/8V45`]@QBHD#Z -M%B)'YBU!8PD^A7V2D*2?0C#W]D&5!C`XP,+V;$V@WQX#&0FD)T/8G1.Y-C-^ -M:>!T?MG!Z<5V(G7QF7XB90:MPP_`P[_IW9(#ZS[S$0>T([/X+JG1BX]^3>-: -MX&;*'+*FO.[?SL9BS%G._KD6I^C5*._G&0P=>=3%96Y\L]+=P8/3YU$?!?X/*LX>VI;M0_* -M[5RV#CX]G4Y'?[O"T/Z!<.^''WG.\;L@]D-P1AT/%G34#<3Q1Y]`4V0DKJTQ -M1$121)/H$^+[6,!QI23S^U0M*OHM6LP.('P4S,'21\^`<5&?.AAZ#CIL!%-F -M!LY.#@GL._:L)2/YGF8O&"UTM/LHR%*%=DGIT:#X?ZYYC%#RW"ZG:-=PL`\H -M#L"B93=3J+#1(REMQ5K=&"'RBHM1Y\$+<`SP0Z72HK[?X-@5Y5\OP4:Y\ANR -MLV1@8O[RY[_ADI^"8,^.-56_^\JB^U$/ZN]N0C^H-!6%88H, -M.)BZK/-)G>9-@R9_#NNML\IS5H^/-!RG&A44_;(/I].P';K[QYQW%Q&5V>?_ -M;F:\+MG7-->[9>MGI@,#;NTG74#&M]CS=K0MK,[O$`,\*WQPVGXGB\3:\5U: -MH23QY)A>^O-45MF@\M;UIK6(4X"G<33\?>O]_9.A*+Q[K(S.5M;(MP7:GT.; -M4'&D.@:S46EA'N+Q9NHPW(">J871RD_*T3O<.P>*K_HIC9GDG]9MK(/<#F%J -M@9OL8M)F(A>JC\7I-)75DS9'/U\8.;T%[`9W#O1UE60@G-7S5RW1NTX;DA:]H+*WY<)( -MQF-], -M(FH2;>HO:)NB1HJJBLK)I#Q%1=:82-D:.,ZRA(E27/EGPC?;%MS(7LZ4 -MZ;]<]6NDWG2M#"CSH*B-G,-(AJ$)'U(QQC-YX@V@B1&(P]!""JL//8!1"9D0 -M]"O@V4L(STR*LG\=F.W>VIAL_5_(IB'RXD?91A]4S^&?)^2?)[5+\A$#P3=O -MYBZ0]KYKW"N-%K1B3#/ZTIR9K8Z8?2<-]RR"5YY0J`G1N?TPW/WAG2=ILJ#FIQ$!C)ZUK!$H"_Z%"?\VV6O_@/.IQAA`/ -M5V=Y?D21G+"JRD%'45&W\\&G)7V,GLBU1Z$QGR^U -MNL9E&EN#\2B-A-WEF#15&?,+"#_+>S-O*P.7COG?7);1GP-0[1+G?MW_NA.0 -MPT3(-8GJ,R^R$)N[*=EA,VLS53L.X_;_<$^AX*['$WO?,][[H^/ZRR?%$9UZ_:DGQ8JF1D#ZT% -M8#"'UJJOXNU7ZS_/<)'SE2'A9!"XQGS1#1))!!<(`#C$A`T0'4,+,&-A%PM( -M'NWHN!HL?0&?I=,W7`S]M/N9S6Z"-X!@Y3G@V?8VCW?K+8 -MUZABR2.V2LRL4=T!J4(]?)\B1CO=8*Q;\J[*\_#R@G4@5C,X["?OPP@S\BD> -M^*86+UQ87_SS03E=_[\<6;_0?GE&^:[?EXMOC4T?[C.6,WA_7-^N+#"^X\W2 -M*N*Z(<6W5;#F5K#V+.)QY?-6-8"5OQ%Q?I1ZL:1]7ZJJPV*`''9"@4=E,#+L -M8!I75BTTP:(_!OH_"5^)4C;1NY]"LJ),CEL9I\#@+OHK7`#PT47>Q6%7<<-= -M8-!#!3*M)!B -M2F1^/XQP56^Z9=#E(B_,PWN@.U7\"NO626++K%8769KM;`TFPQW0!=>H'(9, -M#9@'CBU^>@4*.C1X078$XT4N_@;)+S?2O;]V?>7OAOA2)8 -M>*.+JES6;(WV\_@+?UP@5G)E,!^@G*3":[L"T5RF,#@BIK'?CF#=IF+I(HUI -MQ&'?:!B+>,$QGT!C!J?@CF`L+P_>*X"QC9@:58\1@.Q/O2VMR&2)M8_MMH.$ -M[&A8-&.[E5?"T4KG993<-<(RR-Z-!::Q@&L._;-9?`,#K[:+!P5)O,WN,^IO -M3>24)IS]CB[LZ.;U=?#(2%BZ5X3L.MKVNTQF6UIH2KPAZXAL]`1_I>!$9#Q$ -M=-Y/-BX@NC+ODES$3']Z?6J8T+5BNMY.N?,?3G)#N^]2U>(SZETO>'SE7&E\ -MA$YMPSDP,,*U<CQAZ-0_HA6C -M1R)V!I-3^NTT5C;(<3@V@_H=Z;$*=10AFUU@I?M#^I<%O%IP,#++Q;[%?BAM -M$R<4*?,[D36.,,#G.,3PJ:9LW>IW>*C6`8:S -M+["BV=P-9?/%HU3=4S`->/RGH*X,/D??G-AY_`L,?*RFI^79U&-B.1!6$(Z" -MGVF"NM`75`?*3.9[$B=+E,L'DM!QK:>-K-PQ]C?SGUC/(AVWV_Q_LI]D_+4GZ/45('SV)44'Z]*2 -M'[%"7]L%BS\"DLD%#ML/G62P#C!D,1'!,8B<]^-^:M:R4(4![.FM!Z#Y;^\, -M[UXC^!3*OD/!(O;#1;K8=QH,#LISY!^"4><5/N&77I&:[I4'&\\"S-,QM'5; -MLJSY/GA4'E[]YLLX@+]>D?NPF/02AS=\(P1>;D')55L&@UGD*\P!!,N6*F'9 -M-#GQ_!&I>)3IW#';>;WD'.1G;YY)'5#\U8]CRE;@6Y:2]Y>@LVS_9O<'M4N< -M3P9FS)PKX6X9-.\*$(!Y,WW4>[1796#-IJ2?2"%Q/_C=O+55UI(X[ICO`XG+ -MQ8K*@=D@7)H?F.&+=^IV-D+E!M;5"V<6PU]%\=/Z&%#OMS]L`-88.C\7I[77 -MH:*0_9B7>V/;(8,*/^>1.ST]1&+QSSI#=D].F#U;>",^2(O>8#M-YI/2$Z&1 -M;R?K=.@,R7UP@8B;-#:]\QGB/XC)LHV8-$NR#G4RR.BP\?C[Y-](1,&_G'IP -MG/`G./=A>:IAO#"9/7^%VT0_4QX$EH@<[]QCPH]);ST[7[5/J)]EB_6\DC=&V3PZ@SC.81#:^D42JT/%;#U%3)\< -M0"`OFE&A3H%+9GV?@"`HZ17?R3U?#6C+H^@\)$:)<8]Q!&PXH&NYL;!;.DTI*7I\+Q:=;Y]O*2S*.594W8F -M8B!%$9\RM>*:,':\!H$[#Q:TP&S(L(DXL>?C'$_F('U/:=4<+:%UKLP&>!L@ -MX"Z5E,\`_&,)\P!'EIVJL8(P)_<0GD,XKU+*1)]JE3]@Q83\WK4?XG^MCJ!Z -M5#OJZEFE.W$[4'Z"?;6'XS/`\_T,!_50[F0YAD7#R9P`X6:L@V;9S-V<>9P: -M->LR"$':8UMS6OTY9.M,%6:%%KX75H+P(4 -MJ/E\WS?^<^)8[8+=IER"5WYCW?:BC?(50M_E1CBD/=EZ/TD,D(/H6&* -MD=>:\3G3<[T&K.EMG'FJ[-Y38'J/*OPHS9:K.MV.I^FI^,!!JKTM@B16#[A6 -M)Q!5UM[@M!I2S-I=X;R!>Z)._Q"H]J!`:+U'@8[;EZQVY3"C/7X14+[PP#I0 -M'R'L3IS_^["D$SQ5F-?=ICG`/S\-4;)KH66.#=9>T-OMWTE[=Q4.'@?+B3P> -M8H51@E//_BC17&A;UX9]^-#_8PN]JW(Q8XYD,:"]7_07=\\DTYN(;K*HX+SZ -MAHH..,&B5$VPMN8,"%HQ%ZXEMM[+O+,_QYLKQG+G3H.$-KIM4>,3:2IK!Q_. -M8!5XB*5C=KVS`G`*1DH6B&^>(F -M4M#.L-Y*[FAC!'.5O5-0Y'5+L&.TC[0X<]7H-]&&A+]_5&FO[CR5C!HLA*!I -M-N?KQB@_ES9Y78I8WGM-J-EU3N*3]LWHM][SAH<]F!9W8XQNX)^4AMN6K-%[ -M4ON#XJ!;-F8SD]-3D3BM*@A%F'1YW!*02JW+X'-N(M49N*+A&L:PM:X"IZ:X -MX%]2V-`7'JCG&R+/=F>..D&:WZ89_M\'TTVFEU'-[3%E->6;XU-K,J!J!NS5 -ME!DX*%I1;WLOI3R*(LV_-\LB=C"`L#"`8K0NN>E)CGYASQNCXGW8@<\UM?BH -MP1)^QL/<,Z7]'=^-G]N?Y[/I6*'+H; -MMZ[X#U=X_=3"!O0ZQ7^3&[=&/I]5`!OIRP16/M1@.WYHES'A;!X:KIAW6PL+ -MW]SO..`/Y1AVBL389V6:]C0X1`:J%JWKEE&)CM:W=&P^7_'F[<05#O^S -M?"[^DGR^(FB!35P"CWLAM_(OZLQ6TFDM&W6F9EAP`^5N&3%:7946I%#_`5PJ -MY]\PP-VD6VSZAY'YD1+M<+_2^#$':4.F_/J!H?KML?!T#H8:`X$30]SDW@#! -MA+>"*3H:+@FBN(\#:,30Y[I3NR67I->C!*J1K0U;EWUT0=*:_GQ_G@KA;ZK_ -ML,IM7E=E>]#K-_D-D+3#51HABC0+5:+M-FDNZ$6MC\K_-VBI_0-<=LS"TM18 -M?UNTT[]$K4]TGB&R%"X\TV(0Y&!GRR<\=]('37I$V%`3'U.X('US+_^C>;M* -MNTC##KS-6,_SX0\3EA;V:E#B'!@^'N%OZP#\#UA5J5YDFX^+8&$K:A^4_U*M -MR0/-Z<28[[754/#JC@V;KG5)PC.1*Z -MP:@%I]/86BI*FA>+WJ`K6PG;'XZ[0_LD`=_#K?^"/WU0/H3O@'#-:,H*>@!^ -M[L#P"MAE:UF1N?)Q3B7IU;'5,JP/^CQ2EF<'H<\L7.B?=7D\0@?3OQPILT(E -MJ%M46O3_[1"_9OAB:PFR=`T9VB]$1\F"J`AZD>0W=,)@M%:5$''FBN/')CXI -M-3[_F@Y]=9Q`&R\^\-CG#]\@U,!19S0UCA:C`;S6LDKJC,LZ^.]D1#C`.SSE -M4S(23!(R];LJ9)=+[O'3/=]Q5+[E3UQXG<_#U6MWAH5\N(&.+2U/FXP"F8N2 -MK>"I-YY@"WS)PP.:L_PS^C"@3AVU3>%^NS.T2[M158(_O/'8RI*%X)W(?O-% -M311H2/&>0/!Y;UN.#RKN]=ZB0+"P%/1G-05OX=:;)NVE",$PY0PX)4D9R@'6 -M\XZ!05/A)9P/O%2XT*7>7JWVF:7`TCT!S3`\T=Y5N`+,Q_$T*,Z4[Z_2+72M -M-@-?J[\M:QFH^^0\/M[VB`[>X-*X/L[^/-+.6H+H?#G&X)H;RHJ#>_SQ[XA^ -MK9(GBR+039BE)9<"V]0=+U\$E5M.B0.3M=Q;'[ORRDF\SI"+TDN>_;Z6!Y+- -M/2F2,AM/SW'>+CK`B4^R:N6!.RCK8C2N1V3*D7>?CBX6(VG!.OXP'A,].!"\ -M*T[,VG*-W1W%N_VK,+'\3"7H-@:PZ`)K9&4\48PJXP+7KQODI]3["<$1J&\X -M:K>TN#/K"W3J7BQ&K450P!+G>#0G+2>]%[0B#U)>WR$BE/:8"]"LJ6OX_.XJ -M9#9X]O'%4@]ICX+*/,6M_S'*2,GFTUG8\9(##ML9Q3L'^ -MOOZ`)`8O_>@X$^L-<:F^]HQ?S(-W=XT0N]MDQ)+<9@E77VB[ZNR"07W@X44D -MI+P"8_)CPA$`EV"&R=]K/G`!%%:BBE^*N);6US>=77`)/46)(*Y_'[A%[T$ -M223UUM4?$JX"^C0A_#T;U,@!:W11GF-MM76UAV!`L\RB(@];9_DTVACSQ%#9 -M>U;ZX9_<#^SP#^(B0A)S+,)%39;7SV6Z=V>";*47CN?AR?82O$-%9IV"J]A$ -MZK7ZZJ2')\.;J`?!,6*RQ316:^O[?H_1_K?W2D0A?5LL=P'B("*OI$H_7#EG -M@]+_RR:%0_G?C:_4A(O!]C^[;3&EQFPOJAXENW)3PY45$,<2!\_/`&DT5\;* -M5G]\KX49P-6[S8+;VM)K1E&AAW2-_/$!D5(?D: -MW7'R*S1Y_D$-!;..@[3OW:KCMO$`M',%>X^O]1\OO^R7BRWTA^JB0_I"0YF& -MS1HNFC.;F$_Z_4B*0Z6K\3CG1G/Q@^N?)0\03)L)Y]EI,^!\_;D1_7+;&R.N -M,CN%F^-@L1HLY/Y;,W?X`&T272NQ9*^.J:3Z0G,/@K;B8.P&P_R[]1G6S]CX -M2L/HC6Y/<0HP&P%;BWN""6_G7R_YZG#1@.!>O4<]YD3E&Q9S'3J_VSUYLMMJ -M)#"BRIEWN&RV<[\74L9G:K.'`-*0.Q(]'\Y#VX'R39&@]8UFG%W,+Z:<"[C; -M'5_6,8YLT!/;2$QE-F_N0AC2ARARL%S-E+:J'*MJ(@Z<'#A77>TPE)33FR=9 -M=^=C964X[T`Z_RD[!_1P/0AOD'21@/8W94&:.U4'=&3F:0J]*3I_SWX7)'[# -MY!^J*V_J"_@\9H4;UU9PO99[92.#K[VF`YM8)XV%SY4V]:(73M)T@TES\PY' -M\@K:T^"6FJ9NIP5M8X&@.?@=@P@#UL:!?3),=!RZ>]^AH24S8&P20?Z[6+^_ -M-%3_Y[FP4]^#F-*:D*O9N.\20490'$F29KM9G$D%\EWIOQ#.M;DN)5"C -M^B`$#L\O.M"BI0.*^S9YC!:;4+SC;<:*/D(,Y'^3#.%/_FNWV@+T8V/*:9`0 -MJ?IXO>WQBX5/_`R"D367BP-&<&_I+9(,36'BG9H_?+"^^R@#"XZ[X.$(>`W& -M0TP$IY:$V.UZ<^:'F+=\HU$Q>9F9+*YVQP.WEK_+] -M"]:0J/F08O&5=^G0V4U=Q_O?30?Z`IJ^&_-@5:/S-6S539%E8O)AC=6&3.%- -M_]3XWCYWT]-Q_!"`5O`6#N^@;`F^L^Z;4$,)TLV6Y.ET.]X@-1I&7\XN/YM& -M@(/V$#;G<&R(TI3A-VKE`+<..U.X -M)T:O(R.#*?@T7H3MCFR*&I,+1!DA*7R?/@^I&"Z;W;1+40NEBN/'MSRAIT%; -M$4*`AQ_]VO!:#Q.&!W"GI'3^8^`_=W;;4A;:F&5#@#.^U)>I8-"PW4:!MYZ* -M-@Y"@-V8K+2_O#Q*,;%@EEJW.@8[4@L&.JG)TXQXM;H -M,>1>^8/I7(L0O%F;W7U)P2?"@048V.YLJU>ZA:6`I:-+XRJ?`W -MJY9=,+.+A38T'W)/@2JH#Q4:[X#Q";_%(!2;6UAY`Z!,KG&`F97!7#CAV"&/ -MZF0VIS-N&GZ?S7=H:*8*[C36JHB%)WM!8#69@\4_W5&#@$K_`*;!S'4!;\1I -M;X1>W+;":.%.S_7(O;M\3:JW2V!\JC@D7O^-W\$?!BCXV&G(LJQSWO.-O/`< -ML*LZV?.B)$.TFFW#&9,&4ZW.J`)1\5=4<5-(/'7-OKE07O^UW6R9T;[C2(`8 -M_J$=P&V67*1``XZ>Y"MCS59"D#O9-)'JHB*TOSZ,E0!,C$1S$M6QXD_N@IG_H>A.)7 -M0QKP11RIQGGA9L\+_B^$%R\&ZW4/MTILWR$$?3.3(\8A&Y3B(D1TN+PN81*N -M'&3[+BSQ#07,&X\T"&L-.;^($Y;Z,V-7^=X0S[;`476`$E08QU.%(<2!(6SD -M:9(TOC4Z#/R/[1NB5`'/P^(V7ZM-!]."(B'-#O)N;`;ES.;8Y -M"<,`;JW06_'T!ZI(O5#;%IHR[/ISOMJB&F=30HUG'H6T`-6XK(J"_H>&#"43 -MW18#G5=TJ"\[\3XAWUOF7)#[4,=%G^)GR+N=MD6M)I$-R0G,%LN;!`-=Z,^U6=X$:'-?R*D80&O,`7])GB$#?8C -M-,K4"5"Y\I@4@9,]JS8S]$"67+-,]%^M_1`2PR(S9O/._)_`I31J -M[VN((A>8+I5TR"O@P`Q6&AAF,(!6`KMGU:*&07I90U!:[(AG:J3W9#@=;J'K -MY?JO#%0!`5.ZOO)VO+T(Q$X$X=P63&=-Q<^0'S:F*?C_ZYT`7>ORN[/C65I$ -M^*\0;%_H(RA`#)7]X[\H0#%KDA*'7\X\)8_#(FAH5\QB4M/YW7QH4,@:?S^EZ[_SI$#5A/,R?;_2]7I0#\9)#5 -M2/?45*?-[;XGCL@0`$-IUN+NXK_=,I$`$WJY!S"8^1;/Y\@2<.WS>^,J[I1'UT1W8G];+J"`$'Y9>L/[3 -M"2?MF_[V-H8>`)4X%5OW2ET&[2>'^?=:.W)UC"VY-$1$C5M%R^!7X7D]5KZ; -M7C/MK&]]6I`@BMS")#GF_/UY#W+R1$"&U1_3LMQA:JN -MVRLLTT3W'S-(0"GOFD[_48TU>OJ\86EGB!BXGM?;<22F`00=MWO.9Y8EPYS' -MR6B4VU9RW2!1T=4!!GIOPD/*]MT[-=W,S'DX1$[32"TX+I):?''N/D`I/IM' -M4OBO@J$>9X2@^`-HD<_V2GNMVOYN#7DD/$Y>ADA;'?[BO4P!W*N*CHVV>W+\ -M9Q84@"C5^1-0&SEE[#`97J331$WN<>*2Q/D!^#\+&.UU<<<`"6G]6]3'FJ^G -M92&9E=;K50=H?!!.3=$G6*J\]@X<7B*0!,-/C125LA;!O[9$%/*D&T>2@`1[?E_6BXQA<='_(;Y>7#JGTJ8`9(T["8PF>E%_ -ME6^"4.OQOY.HR!>=P@2W@[ZM7YA-QSAGQED0(+ZL*M=+4!*WPFN3_9<^"&IW -M?VY3P6\H-XPM4FFU.1K5K[A[$IQ&? -M4[C]X^*D/,671D`)/LW;,Z2(T[*F\1[NXN%0`$OW'2U?8`B&G&77Z>XBO(T; -MIP3I$'-5B/L/=U#&XMBPY0SBDD`N=R[07^H+BZ-@=&C -ME)`*>1:EL0:3C9@(Y,245D=UZC&WX,-)A`!OL2NPA -M=U9HR!)=)XERANOX4R`;(G\IO,1$0;E -M#I3)2^`/W+)&X;9'QLR(`!\SNI[]:!W:.O>N'$L:=K1DHR!62?0_FNE?;76W -M5W:)AFO\4R+W5N7TV07)UA_`_"UL(-$`%WSVXC9^<ZD_O-)1$6O^4M.4Y"S'+V.I<;/6'P%.R\!3FZBN -M'O,K*'CX(8RSB=6NNM^"TE9`-^`J\@);/\T1`:A\@DKJ -MMX"5DZ5($U#F\/HH"*1EG6G)H8H=LF"_`ANFJWT]"339WT)`<7YR+V!A_O:7COO> -MQ.ZO,>;EOJ2`73]8%-ON2*W]T!X",9R*)=+]=CWYU<8FOC;*PLJ9+(A0<`%C -M';J6GLB=4,ZU]5$17%S@>SME_81ZY.3H(D^!.O`"]E]Q -MS^<.YZB^7N5:`X7'?K3T1Y`7_S>W)P\A""&KN&H\-W-G``!B-W9LDY[',0*7 -MXWP\Y[ZP+;TZM$TWTPF86+23"ROSX&< -MQL'G[;HY7B2R$%/]T$P;O/PWCKZ3;/G7LZ[\K*41!O;VHKGDJ_$B-68=..Y\ -M`17>(35W$KZ)1OCY%#3X$91/KA1#'>IR-_)"0&+I'1=-/(2<]N6[29K#I4!$ -M_VQ%Z*C`Y]6:];]D,"O`I`!PW\%YOX$X]3Z3VW-XI@LTZ^A/)C6B!-SR!?>IK$\GH`>!YU:_G^[U^).")MO_$0;<7L+$\*:%.^U$1?80>5H]SP -MH30D,]RUB)?DL`#\=6D()@LHJY]S.P'P2Y<2P']T]3T4:/JGR"UU,@G@@\=+ -M0O`E)A?Z:TA&GC@@WBA6,&X/`KN^NV0@*599L!]YSO)<;@IC:<7,JE$!_,EJ -M`C!0Z5OMOF,2ML&A@41$VZ>YK`,+,<6VF]4C/D2GS>Q)$$<7OVR\.B]F,]NP -M0J1*+?#9LBR=1)QVL71]4"-)(IL`4+.=%A"OVM^CM2#:;;'A,J#;&F$1+V+O -M`%BI;**:12N[VO%:Z5((@QQ$@25,M;D-_)GB&Y5/F14?\V7B_[;0:B@`?,Y2 -M$5_]MPU?N#$1UU3!$(C(M%U;DAB/Y5_YGL=LSH`7$L%?T`6NC0C[N'A?7*&0 -MD"_G6!?!\CY[,H]YQXK/2QD<]YT@`?2& -MC%7R$)5.#(;#':[*O(O2S_6!YCFLGP/3X2`3+T9A9ZG6C,NUT"(A[D\^"QTO -MZ^AL>DEZ=(EM/*+DL%1G9<1WF.D,"\<7KR-5-2XC5;PT!]JF" -M#UF91M0-]]8`AN+`OF5IBLRVA<=>4]UTI%?=AGG""_<=#19D,)+/T0$!F'2S -M(9J,WF.FD>=P6!4X*,B\^.TO@(\YD#SD@`9_G@#ZJ/L6!B)[#D4CZJI"+>@!PXK>5-1R%,%[J.C -M(@DX%)%]!C?*VB4P+_;8&^(J;`8H,W"3CC-:(A%9"80+R@"OEA5",&HL?,?7!KS01D4[R@KS)`#K*,/Q,M>"5DJ(9=$"VA`+75HX9);&Q/1!0?D9!DF=41,JW]1WJCH -M,0/D/ART_6D,OO_'^^M!8[9(`*LBZ2![=N^?EQ3H"%A1,#\`557[T6^2=M,V -M)FO6T8"9>)FM($_92'&Q@?#ZIGO+HFV5^207VA#'Q\K2(-UV\/7`"[U%.QGW -MD1D^D@L5>`N?K\MJ3@M.?Z"9NE'GWXZ"B5D@57]J39)"JX;MHQ_2[FX&7:/( -MZ,B<"''G)T`,5W7%G7=P23Y(LGU"'1U?2'!T,YD2;T`(37A9I'^IW5(AU]9J -M[+2\#*=#Q(2%CE)@$/=R/Q!B5\"*50$HU7GE.^^D0F$(AL\6E:X0$ -MQ=_M83[A&7=\MMQB+(72,(T>YZQ\OB[\=M?P0]%UYUZ8Q.^/W:GO39"FEB)P -M1\S0+W1K]!CT),'6UR20%#&CNO24EI3OCWFX1@KV*(A4V6EKEP920LI%,C`Y -M'6@EEKY1$&#=;FO5;T;F-9HVY/)")6\DO3S0!?/RZO:IZKF=]PU4,C%++$!. -M>!IA'K8\Q$C,0D6[\4H"&P2,8?*DUH57*'54 -M8"Z9_2'37'/[0RX\3:`@XUW*?B!8_2I?VH8:HE76#3IY(%S.]($2P]=G^N_L -MAFC,I$+C"A/>^0$XBEK^U\7Z$`Y<0\W--KIV;`!P%VIW5B#70XH!8O!:+=Q"BFS.;<*U -M>N4T@E`%NJ_>2Q`FY+&EWE'G)%+=*9$!5.1`-3_<_7&C?QF1YTX/9 -M(#+SV6'HZDHD+R`ONS@M/H/'-R$EESXY+HJ`F#.OBQ#Y2?#TE4R';(MEFOL6 -M6","$N_U-%=$0_JTL+% -MQ."K+3NKY7&"0%G?*G_EV?2`W4-\HDJEJQ$*D!3L1`+"U/8F%3/?81!@4:ST -MVY$&&HLNFO)]AH]!91%J*A,`)>`,0)96L"M3OQR>L9:"'"=3I4P`N&0B!]4K -MN!/0DP@R\,>4R&BLR!2'3W.X2LZ'CYCAOI$*R`/J=XO(9I1>T/L]O1:QJ6($ -M!3:!D\(M=7G&R/;)::;4P:-6Z8.B(DBT^K/SDU[J:P`N503,`J5.4].I[Z(./"X?*S^K!%">>`:5F[[4A>1%E]1X+D@+/^?,'_.8\2$.U -MOE,%`(9D@!8S]XO7S"U.1IX=^+1CR->#];K^:A=IIF>.EDU7RT\/AHB`JWRHS6Q#^:243'3F_ -M(AG9*`W5/L$QXC'0;3BG2#>1)C(R/#9H4&10%C)/1D1;#<^N8-P5TIB80#S4 -MS3UB(O1%^-ZFK+/UVVW$L:!`.L5);#2]JH];,FP8E*XJ`18[2J?OU>9//>>A -M49:?*\:BE\H")IH'SHQ50P#:QH4POC=G`+_KO018+U=]G@IMT8/S&I*8$AM6 -MGNWC.`34J\+R*F@,J-4>A&1B7.D@*]:(`0@B'!1HDS@'C2:WKJNC"EJP1:O> -M]Q,V-OVT0S*NG(R$'2>?H]?]%L$!SV;C+ZJDRSY'_UFHUNAE0F9L,1$$/1@E -M.`VORJ]R8,'C?VX,>-#"F`OEZ:.]TMVO*Z5]+>B-,=LX1,!!_8W=WQ^A_NW2 -MU$]I<80'?F$?$T:TQ<-`7?_J>Z[KURF99P`.KXYJ2I[?7'X+[_/R.WORQ$3( -MEV;"IG=`U0"QHCJUEUHP3H2CI%@RFV5L]!.[""+>TSWP,+L5@5^0QHYKD@`);D%:,NF9"A%(V1LK_TIM+)7S",$083.2HU,IAAFT'XT4$ -M?KD3U7')$I1"I._]\#P!!78-ZZX%HIIC4@)GI="3J]'-G"($!/F";"$X;)_"2&TDDA)\#BWJV=LP`]FAV799YS"0\=-?CU[U[ -M]/CISW_1L5^$A`#N#].H2;S%@=VHZ>RV_5"=L-6G!$*Q=R5^L65DQ&(P(P&2:S4C7` -MI8:*T>=/$0=6%U>^QJ]19]OB[<$K&%()RS

-M2X_PW\A4?`_T,KO6V2"`&K3MT,)!CK(Q.$F)Q>PD._D?Y*B^4D*2DD`6%-K8_P_JX2!'5M`WMGAS"KQWJHOF+*UVOQ:T[Y9-3P0*:WWIXLJ?C- -MUZV=DJTK6B``2W7?Q^C,9G.S@>+J0P=!_WD]A`#3_>Y.LY!9N]=.H@! -M5<3DW_A4"O%8FJ8(JMD+#XY#2LZ&2YJ4@!!8^J9Q;X_04\]2WO:]/KHT8(N#N? -M.RP'[7_8W^LB&QHZJGJ<0EMX$D^/^9T'!QBWAHT1$+>ZL+"U4V0E\.+S$-7& -M?.E_'!DT,GI3P(DFW0K0NYLF4^AB>9#5?NG)A+!%U^U&1$P=C,+:I:Z(R=?"9MF:$RKNC2@@'_$L?IRA.PM&PI@"V4DW;=.NQE$!G*O0 -M<2FBEN>ST^PK:4`G?N8HG(2#9=4[9NBPU,@75J,&4W(#B$5)7,">)F//)?JD -M(AAW?&JOS\C;2`8+C-,ECG&;S4V'-F2`BPY76`6C*^TZ<3!ICXBW8Q+(R(IJ -MPD=_V;-<]R\W$)-FF7_LY%TD10_/HQ$.J)0(EAUOI;$\Z-U/"3#'J)?$)`D@ -MT\)L()ABS_02AY,@?!#2]]K`&)V-5J5[<\[M]U\$4M_NV6/ZE)Y$6/%P&&)" -M@##\T3#,]>TX^FMTL@4^0$9,B46EIO_7PTT?JDP$5D\SBBVD6P38:VFJ"(9> -MFWL4HA?5`(4HB`C77YOO')]QKNZYYI^/"QJ>B(%>Q4-LY?.D'#;^-D.`AO\Z -MRP:C/<+\M"$$70[\XF(*$95EYG<%2A1GP0B/7`R#]N4>DDNA506P\X(M\*3B -MYPB@%N)A+!NKIQ7;$^,XIB`^[6,,>0'(WC733>(+6T3*<5RPD$`Q[ZGZQ%$R -MK>_NCIQV9E4NK]JWP)0!6HSR:0_@Y;)SFUH?^7TF^51@A083IZWJJ'*;HWE[ -M!B3-9KT$IQ=$D`$VR-[!;XBS"*"^;+RLFF!H0@#Q6<6D..:(%V[6?%W$:[E: -MW1;9L;^3PJK7V5/0H2U_DO1=@J$OY%>3:5662$!$.'F[;RI9 -M"GX^Q74GI[))>;981@$CSTG`D#;II8WJ2D_P9URN*!((B=OJ<[I%%/N23OH] -M,.9U_'>;^(20![J&#(A5/G*P8MXF7!FZ+CJFH1P7?K$)I$*S-9JV#BFLC)JW -M?,)92?8D\_[=:E``13__IP%L$]^JMVD*JLCH@_%VK58MEKU\E-(`:KZ10`? -M%J[A`OY&P2@0ZF.Z8`A5S7YA.I5[$)0]#8KPJ2`%&7(N_@Y[!`:/8C^SL -M7UN+$XNDTE6R5"40'77+[7T9"S7[+0O]A0LS,XL28`%+NXOFS/%6`JZC?-]M -MM.AUDM2>%,!;B?!+":PA6=>AIF!SS4LBL_CJT)$XYC7R'FL>]VVNNK_O[)I$ -M*F?/_ZR$!E\D.K!KH5LHV)LD:SUT]/4KLCG"(N7\G^9($?A?^_KWHR_G_Y\; -M4[1.VL/[3@0U4S%LY$)Z,P`ZZG4U%#5?#"1D7S[WW[9%XNB_<=]O]3PNVG64 -MDGI((2KQ#XC[B71.G5+,;_A\3XW:(`#X)-!4:M>(N\XL;V]*4&H[/M9*)%92 -MM7FVB:``R3`!2HD$A^&FX*?Q3O$<61]KDD@BHU4!>R?]8Z^?][&\>5$"'8B- -M-)D`Z2./Q[,EG+YQE=6>W`'Y3P0P1C -MP;\VHB%?D)99.NY(&`&/>9NBD%\4BHID!;K7NR"&3LY+AOU0_;[1J -MVX;__9AP3@ABJ4B`$WG;6*"X79OW62Q*;A)B`P5+H31`?$7O5G7UG-#JS-=Y -M]+3[M4(#SNW(GM*1"3'.T>SU\0C)U2E7AA_7T%Y(^M(!#@-W]D0I:`SS,V"W -M=J02^2-RUZ-"1"N7[T`2O/2K%7?^0W]M,9!2Z^8]\FF`$R9ER4D/:(=^]8 -MN/4)\\G>JG9PC(!IK`_=?&[B:NG*;0$`P_CQ+$:0&42BW*HF4$JW-L+N)K6I -M(*XFZOP@3@T]+P`-/@T&,KZK7``L\OLPB>Z0SFL -M9T+85;%-("3U;S5$6WE_,-,FUW?8,V\)O-MTD`?09,@DP&)E(_HU9\"C=MKP -MB(;[,X#:Y=-S"O=6'1:%I88?3!)I`>F@[)`<&6/G#O>:^>Y&0ZR30R!$ -M(/Z]I?I+A6C$(++YCND`G\G1-QW2Z3N>WP -MDB!?R#!.&Y^9%VG.LA+W^89(0'[/I$4P\>F$D-S0^X0]OG]:.]2<"4 -MJP@)^C^ML,>]8_QX:PB+4;/9^0$&.$_#_Y_BT?7=+#+E?8.3AY]"FD`X8Z:(0F-E -M$Z2S"6DZEPH2`#8@O(FHYW?+_X6UWA?QB)0!B(9C:$1Z\"I9RD'']_5,-=7# -MG7T>ED0JZF;N_NUT><`%6I9Y^<6]`G]Z;T",`;JTL:4@/WRF7DC8\^)RW;DD -M0'X3N>"&^?&5N&_2\\\]])<497ZK'=4B*][<)H;]8E;L;)9V,ZN[+?)8&]6: -M,A%#:O^@VN#*.OB6Z%&1>AZ:@`)SVIC6F]QG=]FH#(]"SGZK=*.^3@3]KI/T -MN<`1#G?\S=B^5J!^J8Y=1C8U$,1$E?#Y?N6]29WZ.CAD$I$V]T@*+N?]9 -MEBHVFE$`&YR1%RT&CE+E:VNC^2$BQZ\1#NOFKV4$_I?CY(Z.\%#FTR'ME4`) -M*7*^8`-I.])!NZ*3'*3^!/J\%,0&E@"`NZE-9P.'=8?0J=ED:FQH)-Y64XB' -M<]OV[G7_3R"*.0Q+=UZ=5XO#9.%RUBCLXGDP`P_0H`$8""BP8R\=N5BNYRD@ -MN[2I``[T``5GK,GSKOPI_QC,>Y+(03KWXQK(#.B8\.&F0U.MIT]#XT -M<2BB9=,!"+Y5!X&7;`%LCKDM>2'S6K<%WO(P1^2'FWM6N(0.1GY'^RI`>;"]N+7P4@9XL172P.,X -M$0ZW98YYBB=#JM+/61X.>C[2<0%B`5(W5>C$!WT9CXW+1N=EWW163@O4WVH` -M'<43H?//N?_:2-6`GKQ`[U2CDX%#V,URIF:(AYQ]]:T*W12,,;1HP.MJ7D@3 -M(E^;+3JHF[$.E<)?;N/TL^IPX/5^5:(%(,?BH0!P4=YH>OG-UU--,)9!G]*; -M3P4(1!0QZ;)L^D'U$H*,DS'0&74[G>@%NH7&Y%.BV1QUVG&])T@Y*3Z/Q!"N -MJ0>.N4BQ;VRE:),!6K6"%VOX1FZM/!?I2]UECP,^;SE`F$!.PVY\6.%!9@O' *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Tue Mar 7 01:52:58 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 61216D009B7; Tue, 7 Mar 2017 01:52:58 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C5C371B01; Tue, 7 Mar 2017 01:52:57 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v271quwE080515; Tue, 7 Mar 2017 01:52:56 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v271qufR080513; Tue, 7 Mar 2017 01:52:56 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703070152.v271qufR080513@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Tue, 7 Mar 2017 01:52:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314818 - in stable/11: contrib/netbsd-tests/dev/audio contrib/netbsd-tests/dev/cgd contrib/netbsd-tests/dev/clock_subr contrib/netbsd-tests/dev/scsipi contrib/netbsd-tests/dev/sysmon c... X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 01:52:58 -0000 Author: ngie Date: Tue Mar 7 01:52:56 2017 New Revision: 314818 URL: https://svnweb.freebsd.org/changeset/base/314818 Log: MFC r313439,r314450: r313439: Merge content from ^/projects/netbsd-tests-upstream-01-2017 into ^/head The primary end-goal of this drop is ease future merges with NetBSD and collaborate further with the NetBSD project. The goal was (largely, not completely as some items are still oustanding in the NetBSD GNATS system) achieved by doing the following: - Pushing as many changes required to port contrib/netbsd-tests back to NetBSD as possible, then pull the upstream applied changes back in to FreeBSD. - Diff reduce with upstream where possible by: -- Improving libnetbsd header, etc compat glue. -- Using _SED variables to modify test scripts on the fly for items that could not be upstreamed to NetBSD. As a bonus for this work, this change also introduces testcases for uniq(1). Many thanks to Christos for working with me to get many of the changes back into the NetBSD project. In collaboration with: Christos Zoulas r314450: Add additional __FreeBSD_version guards around the hsearch_r testcases The reasoning for this is the same as r276046: to ease MFCing the tests to ^/stable/10 . This was accidentally missed in r313439 Added: stable/11/contrib/netbsd-tests/dev/clock_subr/ - copied from r313439, head/contrib/netbsd-tests/dev/clock_subr/ stable/11/contrib/netbsd-tests/fs/vfs/t_mtime_otrunc.c - copied unchanged from r313439, head/contrib/netbsd-tests/fs/vfs/t_mtime_otrunc.c stable/11/contrib/netbsd-tests/fs/vfs/t_rwtoro.c - copied unchanged from r313439, head/contrib/netbsd-tests/fs/vfs/t_rwtoro.c stable/11/contrib/netbsd-tests/kernel/arch/ - copied from r313439, head/contrib/netbsd-tests/kernel/arch/ stable/11/contrib/netbsd-tests/lib/libc/gen/exect/ - copied from r313439, head/contrib/netbsd-tests/lib/libc/gen/exect/ stable/11/contrib/netbsd-tests/lib/libc/hash/t_hmac.c - copied unchanged from r313439, head/contrib/netbsd-tests/lib/libc/hash/t_hmac.c stable/11/contrib/netbsd-tests/lib/libpthread_dbg/ - copied from r313439, head/contrib/netbsd-tests/lib/libpthread_dbg/ stable/11/contrib/netbsd-tests/lib/librefuse/ - copied from r313439, head/contrib/netbsd-tests/lib/librefuse/ stable/11/contrib/netbsd-tests/net/carp/t_basic.sh - copied unchanged from r313439, head/contrib/netbsd-tests/net/carp/t_basic.sh stable/11/contrib/netbsd-tests/net/if_tun/ - copied from r313439, head/contrib/netbsd-tests/net/if_tun/ stable/11/contrib/netbsd-tests/net/if_vlan/ - copied from r313439, head/contrib/netbsd-tests/net/if_vlan/ stable/11/contrib/netbsd-tests/sys/uvm/ - copied from r313439, head/contrib/netbsd-tests/sys/uvm/ stable/11/contrib/netbsd-tests/usr.bin/mixerctl/ - copied from r313439, head/contrib/netbsd-tests/usr.bin/mixerctl/ stable/11/contrib/netbsd-tests/usr.bin/uniq/ - copied from r313439, head/contrib/netbsd-tests/usr.bin/uniq/ stable/11/usr.bin/uniq/tests/ - copied from r313439, head/usr.bin/uniq/tests/ Deleted: stable/11/contrib/netbsd-tests/net/carp/t_basic.c Modified: stable/11/contrib/netbsd-tests/dev/audio/t_pad_output.bz2.uue stable/11/contrib/netbsd-tests/dev/cgd/t_cgd_3des.c stable/11/contrib/netbsd-tests/dev/cgd/t_cgd_aes.c stable/11/contrib/netbsd-tests/dev/cgd/t_cgd_blowfish.c stable/11/contrib/netbsd-tests/dev/scsipi/t_cd.c stable/11/contrib/netbsd-tests/dev/sysmon/t_swwdog.c stable/11/contrib/netbsd-tests/fs/common/h_fsmacros.h stable/11/contrib/netbsd-tests/fs/ffs/h_quota2_tests.c stable/11/contrib/netbsd-tests/fs/ffs/t_fifos.c stable/11/contrib/netbsd-tests/fs/ffs/t_mount.c stable/11/contrib/netbsd-tests/fs/ffs/t_quota2_1.c stable/11/contrib/netbsd-tests/fs/ffs/t_quota2_remount.c stable/11/contrib/netbsd-tests/fs/ffs/t_snapshot.c stable/11/contrib/netbsd-tests/fs/ffs/t_snapshot_log.c stable/11/contrib/netbsd-tests/fs/ffs/t_snapshot_v2.c stable/11/contrib/netbsd-tests/fs/hfs/t_pathconvert.c stable/11/contrib/netbsd-tests/fs/kernfs/t_basic.c stable/11/contrib/netbsd-tests/fs/lfs/t_pr.c stable/11/contrib/netbsd-tests/fs/msdosfs/t_snapshot.c stable/11/contrib/netbsd-tests/fs/nfs/t_mountd.c stable/11/contrib/netbsd-tests/fs/nullfs/t_basic.c stable/11/contrib/netbsd-tests/fs/ptyfs/t_nullpts.c stable/11/contrib/netbsd-tests/fs/ptyfs/t_ptyfs.c stable/11/contrib/netbsd-tests/fs/puffs/t_basic.c stable/11/contrib/netbsd-tests/fs/puffs/t_fuzz.c stable/11/contrib/netbsd-tests/fs/puffs/t_io.c stable/11/contrib/netbsd-tests/fs/tmpfs/t_mknod.sh stable/11/contrib/netbsd-tests/fs/tmpfs/t_readdir.sh stable/11/contrib/netbsd-tests/fs/tmpfs/t_renamerace.c stable/11/contrib/netbsd-tests/fs/umapfs/t_basic.c stable/11/contrib/netbsd-tests/fs/union/t_pr.c stable/11/contrib/netbsd-tests/fs/vfs/t_full.c stable/11/contrib/netbsd-tests/fs/vfs/t_io.c stable/11/contrib/netbsd-tests/fs/vfs/t_renamerace.c stable/11/contrib/netbsd-tests/fs/vfs/t_ro.c stable/11/contrib/netbsd-tests/fs/vfs/t_union.c stable/11/contrib/netbsd-tests/fs/vfs/t_unpriv.c stable/11/contrib/netbsd-tests/fs/vfs/t_vfsops.c stable/11/contrib/netbsd-tests/fs/vfs/t_vnops.c stable/11/contrib/netbsd-tests/include/sys/t_socket.c stable/11/contrib/netbsd-tests/kernel/kqueue/read/t_fifo.c stable/11/contrib/netbsd-tests/kernel/kqueue/read/t_file.c stable/11/contrib/netbsd-tests/kernel/kqueue/read/t_file2.c stable/11/contrib/netbsd-tests/kernel/kqueue/read/t_pipe.c stable/11/contrib/netbsd-tests/kernel/kqueue/read/t_ttypty.c stable/11/contrib/netbsd-tests/kernel/kqueue/t_ioctl.c stable/11/contrib/netbsd-tests/kernel/kqueue/t_proc1.c stable/11/contrib/netbsd-tests/kernel/kqueue/t_proc2.c stable/11/contrib/netbsd-tests/kernel/kqueue/t_proc3.c stable/11/contrib/netbsd-tests/kernel/kqueue/t_sig.c stable/11/contrib/netbsd-tests/kernel/kqueue/t_vnode.c stable/11/contrib/netbsd-tests/kernel/kqueue/write/t_fifo.c stable/11/contrib/netbsd-tests/kernel/kqueue/write/t_pipe.c stable/11/contrib/netbsd-tests/kernel/kqueue/write/t_ttypty.c stable/11/contrib/netbsd-tests/kernel/t_extent.c stable/11/contrib/netbsd-tests/kernel/t_filedesc.c stable/11/contrib/netbsd-tests/kernel/t_lock.c stable/11/contrib/netbsd-tests/kernel/t_mqueue.c stable/11/contrib/netbsd-tests/kernel/t_ptrace.c stable/11/contrib/netbsd-tests/kernel/t_ptrace_wait.c stable/11/contrib/netbsd-tests/kernel/t_pty.c stable/11/contrib/netbsd-tests/kernel/t_rnd.c stable/11/contrib/netbsd-tests/lib/libc/c063/t_mkfifoat.c stable/11/contrib/netbsd-tests/lib/libc/db/t_db.sh stable/11/contrib/netbsd-tests/lib/libc/gen/posix_spawn/t_spawnattr.c stable/11/contrib/netbsd-tests/lib/libc/gen/t_glob.c stable/11/contrib/netbsd-tests/lib/libc/gen/t_humanize_number.c stable/11/contrib/netbsd-tests/lib/libc/gen/t_sleep.c stable/11/contrib/netbsd-tests/lib/libc/hash/h_hash.c stable/11/contrib/netbsd-tests/lib/libc/hash/t_sha2.c stable/11/contrib/netbsd-tests/lib/libc/locale/t_io.c stable/11/contrib/netbsd-tests/lib/libc/locale/t_mbtowc.c stable/11/contrib/netbsd-tests/lib/libc/regex/debug.c stable/11/contrib/netbsd-tests/lib/libc/regex/t_exhaust.c stable/11/contrib/netbsd-tests/lib/libc/regex/t_regex_att.c stable/11/contrib/netbsd-tests/lib/libc/rpc/t_rpc.c stable/11/contrib/netbsd-tests/lib/libc/setjmp/t_setjmp.c stable/11/contrib/netbsd-tests/lib/libc/setjmp/t_threadjmp.c stable/11/contrib/netbsd-tests/lib/libc/ssp/h_memset.c stable/11/contrib/netbsd-tests/lib/libc/ssp/h_read.c stable/11/contrib/netbsd-tests/lib/libc/stdlib/h_getopt.c stable/11/contrib/netbsd-tests/lib/libc/stdlib/h_getopt_long.c stable/11/contrib/netbsd-tests/lib/libc/stdlib/t_hsearch.c stable/11/contrib/netbsd-tests/lib/libc/stdlib/t_strtod.c stable/11/contrib/netbsd-tests/lib/libc/string/t_strlen.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_clock_gettime.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_connect.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_dup.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_getcontext.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_getrusage.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_kevent.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_link.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_listen.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_mincore.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_mlock.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_mmap.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_msgctl.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_msgrcv.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_msgsnd.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_msync.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_nanosleep.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_pipe.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_pipe2.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_posix_fadvise.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_revoke.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_select.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_setrlimit.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_sigaction.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_sigqueue.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_socketpair.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_stat.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_timer_create.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_truncate.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_umask.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_unlink.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_wait.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_wait_noproc.c stable/11/contrib/netbsd-tests/lib/libc/sys/t_write.c stable/11/contrib/netbsd-tests/lib/libm/t_ilogb.c stable/11/contrib/netbsd-tests/lib/libm/t_pow.c stable/11/contrib/netbsd-tests/lib/libm/t_precision.c stable/11/contrib/netbsd-tests/lib/libm/t_scalbn.c stable/11/contrib/netbsd-tests/lib/libposix/t_rename.c stable/11/contrib/netbsd-tests/lib/libpthread/h_common.h stable/11/contrib/netbsd-tests/lib/libpthread/t_condwait.c stable/11/contrib/netbsd-tests/lib/libpthread/t_detach.c stable/11/contrib/netbsd-tests/lib/libpthread/t_fork.c stable/11/contrib/netbsd-tests/lib/libpthread/t_fpu.c stable/11/contrib/netbsd-tests/lib/libpthread/t_join.c stable/11/contrib/netbsd-tests/lib/libpthread/t_mutex.c stable/11/contrib/netbsd-tests/lib/libpthread/t_once.c stable/11/contrib/netbsd-tests/lib/libpthread/t_sem.c stable/11/contrib/netbsd-tests/lib/libpthread/t_swapcontext.c stable/11/contrib/netbsd-tests/lib/librt/t_sem.c stable/11/contrib/netbsd-tests/lib/librumpclient/t_fd.c stable/11/contrib/netbsd-tests/lib/semaphore/sem.c stable/11/contrib/netbsd-tests/libexec/ld.elf_so/t_dlerror-cleared.c stable/11/contrib/netbsd-tests/libexec/ld.elf_so/t_dlerror-false.c stable/11/contrib/netbsd-tests/libexec/ld.elf_so/t_dlinfo.c stable/11/contrib/netbsd-tests/libexec/ld.elf_so/t_ifunc.c stable/11/contrib/netbsd-tests/modules/t_builtin.c stable/11/contrib/netbsd-tests/net/bpf/t_bpf.c stable/11/contrib/netbsd-tests/net/bpf/t_mbuf.c stable/11/contrib/netbsd-tests/net/bpfilter/t_bpfilter.c stable/11/contrib/netbsd-tests/net/bpfjit/t_bpfjit.c stable/11/contrib/netbsd-tests/net/bpfjit/t_cop.c stable/11/contrib/netbsd-tests/net/bpfjit/t_extmem.c stable/11/contrib/netbsd-tests/net/bpfjit/t_mbuf.c stable/11/contrib/netbsd-tests/net/config/netconfig.c stable/11/contrib/netbsd-tests/net/icmp/t_forward.c stable/11/contrib/netbsd-tests/net/icmp/t_ping.c stable/11/contrib/netbsd-tests/net/if/t_ifconfig.sh stable/11/contrib/netbsd-tests/net/if_loop/t_pr.c stable/11/contrib/netbsd-tests/net/ndp/t_ra.sh stable/11/contrib/netbsd-tests/net/net/t_raw.c stable/11/contrib/netbsd-tests/rump/modautoload/t_modautoload.c stable/11/contrib/netbsd-tests/rump/rumpkern/t_kern.c stable/11/contrib/netbsd-tests/rump/rumpkern/t_lwproc.c stable/11/contrib/netbsd-tests/rump/rumpkern/t_modcmd.c stable/11/contrib/netbsd-tests/rump/rumpkern/t_modlinkset.c stable/11/contrib/netbsd-tests/rump/rumpkern/t_signals.c stable/11/contrib/netbsd-tests/rump/rumpkern/t_threads.c stable/11/contrib/netbsd-tests/rump/rumpkern/t_tsleep.c stable/11/contrib/netbsd-tests/rump/rumpkern/t_vm.c stable/11/contrib/netbsd-tests/rump/rumpvfs/t_basic.c stable/11/contrib/netbsd-tests/rump/rumpvfs/t_etfs.c stable/11/contrib/netbsd-tests/rump/rumpvfs/t_p2kifs.c stable/11/contrib/netbsd-tests/usr.bin/grep/t_grep.sh stable/11/contrib/netbsd-tests/usr.sbin/mtree/t_mtree.sh stable/11/etc/mtree/BSD.tests.dist stable/11/lib/libc/tests/hash/Makefile stable/11/lib/libc/tests/regex/Makefile stable/11/tests/sys/fs/tmpfs/Makefile stable/11/usr.bin/uniq/Makefile Directory Properties: stable/11/ (props changed) Modified: stable/11/contrib/netbsd-tests/dev/audio/t_pad_output.bz2.uue ============================================================================== --- stable/11/contrib/netbsd-tests/dev/audio/t_pad_output.bz2.uue Tue Mar 7 01:52:50 2017 (r314817) +++ stable/11/contrib/netbsd-tests/dev/audio/t_pad_output.bz2.uue Tue Mar 7 01:52:56 2017 (r314818) @@ -1,1040 +1,1035 @@ begin 644 t_pad_output.bz2 -M0EIH.3%!629360S39&D`>;SS,K;%2@`2::%N=I -MVR86:*KOO>O99MMM-XP&76N]W/6T=[SW@<[G'3H:Z'K1F?=WON]WO>]S=WN^ -ML]W>^WN[[W;V\VW>[OMN^WW;;3+3/=TK*Y5E4LVE#-E5H:"S530#1IB5LS:V -MJHK6!JVA2M9LR*V:MFUJ55JBM:Q4*EL,5$`50)L6M11:P55:V%+55:U5C!I3 -M1L,BU5-5JV-%F55-5EL;:@5:K+%5:S--;5-;:M5MJVZZ[:V]>[:7NTN>][;> -M[O/MO-M[NYOM]WN^[K69ON\^][WO(Q/N8ZZ![N''=O3VP[V/>RCRX[0VJ7FW -M-FQJ%7-G0R;9MB*N\G'>PTM*5H%``-LF2NKF=-LQFU*50444`446P`&FV06V -MUE17-HDJB[#--!MBC$-1L#;!MF@JALFIM-IE3-30"JH#2D`$`!,F$R83(830 -M--,AD!H&AH`R#$9`:&AHR`Q-`,":8)D8C`3)@FF":8@P"9,$,"&)D#0)@$&D -MD$TPF@`)@```````-`"8`)@"8F$R8`F3$`)@`:&F@),R83":8$Q---,"8"8( -M,:1D#!,H--)2:$$VF##`"#329,1A-!,Q$:F)A-#$-3TT4>F4]">IZ0&U#3:@ -MVC4#`-(/4#3T@#30&@/1/1#0#1D``#$-!HR:-!)I2E$H&3TVPVH\BE/QIHC1 -M3,34T4]IE-I0WD4?IJ33T0`R:&T0`9!IM0&CRC(`!HT&AZ@`&@`````````` -M``TI$#1IHIFU,F`T:F*>"G@$F:3TP"-3T9&"&FT*/3"3R,33)I/":&C(T&(T -M4\T-`GIDR-,$T:GIJ>1B831II/(&D\C4S(::8F)HU-02:E)*!#5/%/>V,B-H -MB&"-#(TF(Q38BFVE3_48AM!-(]4_*GJ:>4>-4V*'IIE/RFIY-3RFU#$S4WJA -MH](](]&H::/1/4:>IZFF:0/2!DVIZAH-J9`>4!H:?.1!_\Q4%G*&;V=R9PT='B<1$&>Y2K7;'1?;`L!0$`X6":FH$!$6!]N]*1& -M`>)4`P7%5$G@V]E5TZFK&($]>M7]W^OSGV?[[OM^+/=V,U7MZH"`7P^J9Y.4XK0O)T]ML=,$]>C2&`+KJIP7B%-.A(A^%=L6PJT7:EU�$"\C_*-.JQ+2^W+*<`+ -M[7C&UXHH9B@ULW[I"-T:`@7%]:`B#,.N],:_+:SN\[:H0"]MG;I((-):D9I@ -MEY+M.9\`=/Z'Y5'G)UUBI`$7\=-,6\WB0M^K1(IGM("()_S^&EB%H$,(T:^: -MUJXAFG+?)LZ=2(B>DJ4`+\#0+:GW.!F9[Y0"67\4D'5N=?C<2IH"`B?%D\H0 -MGG&E/!&")G6)];))G]L??MF>!#;?]*:P<1'/-^\77VA0`%Z]R -ME-$,ZC*8W\V[=O*,`"`LNLU]SC!;I4"KG=/S#X!?7Y]N/BU*2;"=,Y6JXJ7( -M\0$Q,LORY367(RS2IZ5>L>\@(%\(7%0'&&F:-KRF&'2:+-/TMFDH`&<+FRQ] -M2/+>LL58^19Q"!7L,11[)RREOK.2B(B\T[XU`#;W%RR(G[K(5$X17%G>A! -M5%N-\(U<88J#4CQIX2R!95&T"Z:FJFOLXD$6)JV@!^C#B[K7^`23@`L&RH8#R4AD93YM`Q3];.J--PN6QM[K)JH -M(O;C-[U@O)%QFS:U:_'AEV+O+ML-FTP(.3(!E'S>H'.(0@#>MJ$"'FJI*?4K -MJ(^8_>2M:QGP"F_OWH5:].!EVM>UB'TW=R@(I#\VT2P%KT]_6]DV]DSX*:$B -M$\P$5TX-N@FLFP9/6Z#&OW(]F)2R!;.(FW!F6.80[RE%T=?O6H/*`%S(]JQ[ -MR7,>5IA_&NS_C[WLV",$5K/Y3CA9I<=R)5=2;=$"#3;X4$!A3SS<4MFG&3LO -M(C(AK8$A:MCVU5]2F6(!3!"(X/?9Y:@`ZT))M.B\B78]MY1`BX"?4#9]!56Z -M)(%K(4E%,HP1?M]'(C@/O^H")>Y@&LC0T?.?#9A!9W#]194/2$B@/0R$+"9F]7%, -M*1BYC&C`#LQ@*O)X;[/:@Q((+?>_Z#+K*>EX6<1R+?T&:\=DJ!\#0UPA_,^E -MKZ<2Y.D"5H,L:04L5`\;Q^3FH0!$N<-%2!`?/ZS>I:''+V&_V'MP$I)`W;W0 -M<("[Y"-384_['P.#[FK55I#5ZVMM[DH!4-F!?_"G;WQ+<>IO:.A1D`8W/]@0M8>%BW/(+<-&H2+N=9T(HE -M8\PHC>;Y(&31@"8(L>$>5^/YP&:Y@'%$18BM3_NBBG3?7>!ZKL^1-#L?/ -MI`&OUVRZ_+Y/!HD`*"]TF31QJ9YV"1#B\R/?U",@5[-@I;.4&_W%90)LS8U+ -M`,#YI0(2X6ML1-K;[$WRF]A\#Y!IMEPB$/?B%:LF@SS8@#$1(96`NH:/6&-` -M!:=-[T<("%]0_N*VT8X/5G4]+'5W>2@57]UECJP$[[:29VK4&^<0`O3I=VF? -MKR@)6"J[:JVG6:T`(X0_F^G'Y[@#IX#*^6`L@0>X[PUGR@1M8&GY?GK+(:KI -M_U,(@U>K55\YIW+R5A#A_I*4^UE*=FQJ$`;GLX^GP`%VFAMHQLA -MVW-FEG)_<:*\3(P705=2"A.U_T1]?;OU(#\LK5$7LA$\:N3_/7'@3_L2$4!K -MJ6$S1,[?R[77H`%;Q,<;P<]WB#C?6PY9\/V7UF*!4\2`M<&]Z=&$0`^[XVX` -MP>#"!:ZO,V=QZ_BB!8WP5-F0XF%^[*`J8WXH"<]L!5-)?B8P\`,YVUF%`M%7EW:-*$+>N64?@;# -M6+FLFTL@'_E2321+T;G=ZYGMTB0'"&+[8**(!6Z&96X#]H(:2NZ%,2"$GFN, -M1!^?3G/A^`L*^I@/+HZ6G:DLBAZ_E30+MJ_"3C6J2\[8"57T0*Q`"%5OI.Y. -M:BNS&C[E[K4@%]-&1?WDI(=$YDICRZ]&1/M.`*SX?V1W6>I79`5A)E)=C -MC=S#.CUY].X/Z]T\1.%B=8L[(9KD:Y=]^`D`AJ=I:%X(.1-A<7W`!S-]'$IU -M%-,2`BN_0O@K[OJ'6R\VPY5,3$:,BZ"HE]\AB;53X3@H[X^"Q3E2>4%#6-2: -M>^%"&#=/Z`@,;KO?/M\""U$)66_)4NJ?&F2ZTN,QPSL<'S\O.`#\I/;_'\T\ -M\-UI3`?SYZ:\L#\%AH`3:"O?XZN.EK961YEOS49"&]N%ZP3[JVOQ(P=(?G.6 -M@"M:W;)3<$\42B["?O/^=:1F#6]NZ$72@W50#Y79>"J>K0,*`@N)KT"+ -MZ#V_U(:?,N,'9\5&MI`$7^7$@&/KSB6TZC+HW]3$;[NL`N)UQ1FMLA(2OD\, -MU-4^]`5TS)K^W:"%9?8I@#2TGV8,J0KY?V?HZW)%R@*_M:XB%7\[7[?P:+XG -M]Q&X;\NX'>`&K2Z:_Q+0S=C1O(G$9#64P!8K][WE]U4>TJFLWGKV#V18-2@R -M8+PTOK0G!;/I"G/^B\0/-;"WIP@_PRA]#,0B6+V)K?EQ=JK2J^C(DC[`S_#X -MY"3TWE]1\OSVL0(N;%("2?M9ZI%FL[0`%"TQ] -MLWN_%Q7@Q^2]DUETH`>JNY1%N_++1LROZ>56$Q,7?.DD3?D:TBT$%+8?@O=, -MI("V5)HR`5A@RVJDL_?A(029R?[YENFJ2&8AT% -MAH6LF-70$`OWGS?-)?`A8JG!J?%BHFQ9=TR**BD@F:4QF(@.L`,57(WQ!&7* -MGC:=$3`_\4$,7F=+;N-@^ORPA65Q4U)$1_U9=>^G^O)/=\V,['3Z#NE@24'X -M=@U7X)-@E=Q@E'!@5_O2O$2"(_!93W=VB(#"F-EGAUAGK"PI/7HT9!#`D5[Y -M\+'#?L&`?+99C>0W1!!Z[=:J17*V6,CT(^FX5>=WB+G?#?J>A=T@<1CRU($& -M2/KW2SC-%H(8X0R]O``AJ6;Q6%^K*1B208.WI0!J4>@[T4Z6:D(9;.)+M_1- -MD"V&FA!;[J;:O3>;"4Q<%,4Y9Y.."\W*KZ:-!PZ3;$/=\"N4*'#KN#<9_N@B -MQ2=Z3G3EXJ/09W=Q:+STH`I>+,97UO,$WD!()PS]%F:D('H[F.JU@(>YN9OAUH:$_GW-1*(O^MOQS@06;P87 -M:-R?;K+]`04'98(@+A!K949?(_%S,4L9H$=7%`"GS.&9\=+H:;/X_;W^YMH< -M"`NS4-HBV;9?TX0@D-MV//U([Z4A$+WJ^K::^5S2ZJW[N0=5QIYEJ -M=&Z\W[TBD`7-[6J=-74GF61-$`:NXFO.%)=[[['PD6!H:;V/CZ?H.Q@V*Y3) -M(*(U*S_(`/X`@=4A8N1X;%PR]WU'P@+J3H?%;:O%,!M`$NVB]R")87^3W$@Z@#S-W_E3`9X%)L4B] -M6_71C'P<+:@@B2Q8.33:?)*X7!K<\Y@""[>-"CM-^)"A0$'ZQ -MUML"Y6[R\SL]`>$W58Z2ZL/G<&BN`"S?9P>JEF>9LK)Z?`TF2@=J?D?SU%]\ -MW2C2*QY;KIS^#>[A@(M]1Q3>IZ28P$!0&!DN>1#QKZ+6SW.]/5S;\E4CTD_V -MU!):LAW$J=&UU6.(N$C -MLD@@W6RR($]+)$-=IJ=G_\M`\%7E[I+&X(JO-968S9V4N@0@/FM[:` -M_DOHOVK;9]H"`YSN@MDXZ5!^\;IM^0"ZT[=\^+)':SZM<12_B%("*PA+=^-6 -M4X_PN14]E.7-."Q^B5'&6TA[JYMVGDV@!"6IH/Z6JH@=S^?QJF3 -M!%)(6*9O6O[NA.NF%0*E0`7VVG[["W;V*1;OZ\T -MW:K[M91`=CW>?L7]P`2I.^9+5TYAQM`E(0%F$ZV>R`(-RC7H&]XXFP:UY%BC -M`)R"D*N0[730$"U_3>;"DF%<'PC3?1;![F/0$!`7,+9HVZ(Q&0*AY&)ULVCY -M+1$(Q-SG5-O"<=//)P//$5`7SK)KA'4P'#J4"OU;LGD;/`VB,,ES0$FE7$DK=#UHE`B"R(_/."6="48`%=C -MEUSNIQ$$'36Q-I&5Q98XY)(("#_'Q/I0`.M?]'YG8[&O\#T,WD(20@3N/DL_0J^9;`\([->'9A>G7GCX\9E -M0@!M=I66J/(],51@(@0?HS\478WX*Y0T*XJ_O=U@*6WFC3'B"(E.&1'DANP8 -MA"9[NDG#6V]/W#46R."#QGG`O/#C)\[4?2`5H^5G3W+1P5.,(-QBP&W;-.%? -M>-((FRE+9_]=P/6!9$?X[H"/MB#IS`3J?[;1Z39%A=G\K;XFA6OI;)8DN$C" -M7BML%@PI!R4,UBVE3B=_ZKF<0@AH@GWQH836)<,FH8K\Z1<`_]C"$EEWC%^! -M/Y>[K2`I79%TH]PM=ML)@!SW*@GM%S$@J3N28M)R-`A+=E0XY^IL#V`"]FQ+ -M^_4^]%/H2!_ZO.Z:1OO/.8$>DXQ6NJ6@RJ$@&7W`;:(MKWWPFQW;(@(#-U?F -M5&F]RJ`A#+VFVB@-@,'YAF.IL?V!1W3A`*O%]39V9A:^=$086@"=9YY/=SI% -MP.43I]O%5,)TL*VCMQ>K<+1@HN)6`Y+R!4_X_[?Z1FD()>SVM"YCWW&/D(N1E:+:6?SS"^T^ -M>=9VH1@3/V1P?4WZR_1P%2B?BLO6(!4HEY]22&L[0O;91=\SO%,3IA"MH[!B -M%CFMX;((MF&F@-:$#^/NR4^?H#P+/T?`(?"H1O\3JUR+0$3,YUPX/"V!XHN$ -M4I81(I##TI)/`O^DT'P/ALO4[G$M3G3UU0\M=O((04/Q>A^QPA4[V'_/X-$'J#` -MO++H<>8QCBZ$W -M)UR&A$!99;W<4^-+"5>D]I#=H>!H8G2&P7(Q_(!?:3VM_H>=M^AN) -M]$08[0JX/,N;+V:J5'I6(6V.$(:0ZX_O4^QL.>\MF$P#[-^RDL0I]Q%IA\Z7&&FQAHOC`D/9^WQY/_D&5RP';_%[KSXRXR"- -MF8_*GR>O=!,]"!HE3EGA09H#U/^0V%;4=#9/YAX%'X,O\!"!B0Q? -M0.$N*`P//0.Z40@-,IF["EION'/2:'+N!#DP74'%[`W6W$.LT!L1>2LAH-3&4=%D#P&9C[JB -M];D8SD-)BOV;`_Z^+M/#??G`.L6]X+VMQ,0,SZ)HV(7+922%)EYPV/>7YUQJ -M!F5L#3[/:P0.`4%JR2QH)>8$]JHLV*0:[,(?IQ8<-C8[FQCJ78RA5_6X:=%? -ML;9!'+Z7+@8YD,W0.Z!V<.E@:$%BG_<]G3G5ZM]/H,].8:E4@PJ!J(D)H".9OD;4' -M"EQJXO^TH/ZS1L+=5L$%Z]`8O]7IOZY=8C-N1>,Q1=^BFR@T+P:'@C3,3:*. -M3`"L]U%/UP=A9X#@_-05U7IC2>XUP/.GC'>F"Y[4=*YQM^4F*N%V!PAFPKE1 -M6C!"G!@N@+W^R3SZV=E77GWPH-/N38#!++$4!=X:K+&1A2:W][17AS990I0; -M_Y#W\L@\:%VI#A:K9PY?,VY!>'`[-/7_S]GZET(W$\(#P:6IV9-1`H;VP=R? -M$`$G:%9(6N(ABM$"PMCR#P^[&TL]\"<,%S_QL -MQ(0B^P3W;T0R$$,%O,Q.5^I:K:OQNEMR8W^HR9"+KL.A[&]/%$`O)-.G_<7: -MIEO@!2J#72LI4S)[\@T]>'F\[H=F?&BM:7\O0^-ICQSRP&+Y9<=`EM^-,*'X -M?.R(5S.U$/)84-J#B5/5X#K<8L^0]0=L2#DD7]O],#(!9[U@83@F_Q:-[OF*D/&+-'5/=5`+VG)*RF0!&^C -M6JEQSUE0R*U.P`*S^=SAK8%RM=JW9#^Y\7`(?6_56S7G8;R>EHQ[,XHQCI_6 -M:2&_SJDYG\[4`..FZBLFED?N/A(KAL;1^9VFA:LF05>S^-5\:T/A\T.W2`9Z -MCR5SH84"^^CO0=:VV;P.D748UHW-!?N2_1E1I$^UWXVY#??7?O7MSNQE*Y-H -M`P:-/D3G!;1RA!ZK]T"0R3#7TR$X)IH7CXG#@3499,D8:^1/?H!S7?-HM(@Q -M5K9@4,%"4ZEMT/"_\0SAXXEGRN_`)&U1H,4XI9J%((D#1[,AX1TPPPPBAZA& -M!3:"V2`C$8#"*&6;GU'3+`_,_6_`]S@AW#.X23A3AL[JPI?;_?6!8+%_D?YJ -M"=RQ9,"'UT26,!(G^/'S\&#HPY'/H]/]YA#ZW![^Q`)_(&S?W>C!PZDI$S*_ -MUF+Y[5.P1GTK/PX0EJ?`18=(:`&YJA^N]`U#AQ"+T\#6/?[DT&&`FCR7_5SE -M3GT=O`34]-,T2!`[DP:*Y=PT_6.H1]9U[%)JHU=TQC$I`Y;L,@;.$8:7L$%I -MM"XSG]H0%WK:P_]@,2PP)2Z[_1E93+*BL864BUC^]U@OC2?, -M5HK_HTJ(^6Z-<^88P#OK\;*<(OS,[<;O2_HSYBTHY1P_+Q'R&J6YG@G!0OC: -M>\X;HTP3T>WODBO/KV&');,/W9PJI3G"N7[P80""\*]K-:J[PN8WX-`')Z0Q -M--X#0N7R,,".J0^Z!RMW)_]S`QNHH4L"$:\H;!ENOD+(_R]9VD9X/7%Q)JQ[ -MY9[BYU8,+$#4ST5"'!V*CZA;H/`[?D#]_FIH,]/BKM(!O7/T:`3.2LX]F,#- -M[&$7Y@#SAXL^MW08\-[)B=,(V35`ZHLV.H?2C%@DT.Q^0G;L;W8S,YX'S5FQ -M0]`-49S:KL`7G8CO5,>\PM[OA%:@E#8=HV(YA%,P&#W:#`)SIG$0JJYFRR/@ -M(+%6W79$,W]AO<]5W6UR([/ON4,7;95RLCA'%$_H<%;3OAEL?Y*9]>;#3](/ -M-R@-JH$4LK_`R'1W(2^VPAL`8/K@^'`+$>7=IVL\&G3>NVAYP3\X<%:[TM`< -M+"9Y@CBSG?P=]85NZ'DQNQPA!/)PX)?/^[,<+7DFE6(ATIMM]^U008;L8X"W -M[8QF_,%\FX'5WG$,N8?F+;B7G56R`2>UAA`.;N#K#>-B/V":GQTZEP/"@+2& -MM-+T9%?KWB3'YE+;FW'U5"7A(PKWH;VK.F%=ZR -MS(3]Q`&IWIBP]V+H4P=LP3L=6"K5"Q!G2@<(:94)[VKP&H^:!QE?V@6C?E), -MA4_]'=&O[1+0WBN:K)FZG#59EBBC)ZRR15_BZIL0V4+V[VH?0'#+A<$__@*: -M1$AF]*;V'!.;(TG+1/DO!74UZ1,RB[-,9@O7`ZQMR^81(%,/IHK.9)N=HY+J -M37V]PXP0V*+*^_O=>@,TN;S0AFDU#U+)-BRD?9MJ[U>W/BZE9/])=8,]$&EZ -M-Z39$`8='K/B)J?HK#-E2]+<55)7Y&H@J2T:"NY[7`PCXUIG0`QX[;&;C@%; -M;&NIZ^J,7XHX7#2P-7?AB>�K5LYFY=Y -M?>J;Q;S[(`!>@[EW>7(]]!87MS_!V'$>`/2*"7SXXURC&\UN(&G0';=SP@7+ -MVNAG47FKWFQVT\M&VP^@";ZN!DB&`R26G&XEN>YYQSY0TZ!(-B`EO>HF'`86 -M,#9Z;[R_`0AA)_K.`#-#T?P?T.UTGTR5.Y9\QA/20\KYWM?DZ1I*,56:J`?J -M`<%`JBA\SG0%)YC\Y]/C';2K_N94D+)VP-.#6J[.J0D"*&/'$1Z#4\9?C"_#R^!U=*?2B4 -M$O5>N6J@)VM%-A"%>T7Z<[%`W1,_8CPJVZ!]I2H'MGX\859[G^:;[;.ZT@K2 -MXD/QA?6&O;P39*5)-]]-!88S!6L>*9IUY)MRD(OKWQ;C(LFW*,/)LR0&.IS0 -M*BDINQ+[8/GQ$OIDDC.$:;IWCB5CYV4MA6Y_[PU[)W.K'OOG!J605KP./&_@ -M9>_3AG1%CUH("==L#X3WT%UMUM>O>8O<#OH@O#>DK+CV8J]I]Z++#\?\@"3# -M7&*,YQ)VG)<3AKJ..-128TQGSL\E]G]MT*S_L+849W@I1C>-;)FK,/*H7KR -M*W'9T`MJ,UV%J)E-X;(.TQAC=CV63Q[;`TQ;6EC-6^OAH?ZY8X^W%YHPXYOK -MJ(5*.U*W0]@^VE4!(N%D;#CC&>YZ^\K[=.QZ/N-%]TS/3O=.$KLF<=V7_@8D -MHVW1N<_W4^R#N&+6H:W2S0Q&@,=)Z,/G9'J=O#[2:X"KS4 *4E+FJA=+MIBA.]H>Q78=?8#9:.G@*9W:JJLW@HI>6Y-:[VB4+=@Q!O_T -M+^?.I*GUM.AGE44K_[PI*NZJ?YG3[DQE+;!QH$J:`F&I85,[_J>UR$]Y]_I" -MK)#L[22+9XSI4+CC[9*R]'64IG+*KR`;=.Z@-L4Q/O:%,3V%7LE%ZIN\$_.* -MP$987+OB2FN'*F\M11A6MHY1E(\4D2Q#D%*M1\WXSIE=;*?9F(IYT@BI`M;J -MNBC-P7<#+SYY$?:&(Q/G>KJQ\YFKXWW -M-2QBHGCI#\_Z"C;C2F;(0AX=:D/T[3!P -MI`RQ@#5U=#2]%(&<_6$$_"-&P-D9]??T^\>AAG.&@009*9,DAU:7U#7-GS.' -M*,*!ECV-23)VX_1Z/B2_,G,]"D@5?7P^_8<@@Z7 -MF'?9XZ6-B]O:`*R;E1.X09Z#%H="PVY^^%3V8'!+@[^L%Z'D3&DV-TR -MFN"DMW,-!*[?E')VOE]F>QWJ(A8L/M8+YZ<[KPVC8&7>"7QC#%NYJ.S,6C_T -M-@_IZ6L9^@>G\N*69H*7-C3#1>G7:]J'0,*RPG7S2<%$P;,:#3$K_',B;KIZ -MSXKNY@.[6\S:F"CV1;.5!DPVKB<(UB:]*WR9AL!_2_HG[SZJ.T_!NSEW/$>! -M@O%K:V5/"!V&RTS?S^7YG+-?W4;LU\A"F04VLZ1Q!@8,9?1&+%T/K-K+\.YO -M';3N&L19V=E=\CB<'`0]I'&==V-<_L<+@ENI+=&QR?OF9:_&OEDL.^U@UII< -MZX6RLGR&GS/8THS3VLF;@^@B3U%!/QDMP>GU6`HMCRX`C\,[(Q\ -M@0%&)S2>O$Z9H/7A0@*%^XUITX;\A1`KPKDO<6/Z,\PCEM(BC-884!CC8HM) -MF=3146A@FSQ@F=<)^_*J3W8>!#NO7?.T\&D#)_9W.5\[`*)Z]I)*G\9I(P:U -M@I"4D8JJJ'OT@?I&8^6(=28]6\HNX8$I&&YF3 -M#L#OXN;7LJ`2/!&SDLZ(O5Q_5&*.Y$*FK#:9XQQ?)!?Y!,&CT2=^,HFS1G]: -MPN.WO7,A!3)$*G4#^YNOJR8'Z"+T"J'(Y0-]'XUPJA@YM>>C!L,>NE'1S]*# -MAKO>,3+%V9K>L#BU.W;)-\BV]74>NU\SE422.BPFD&\VN#BM&<,6?0$S2&+T -MW]7@6U%Y$^]M.P'_MMDGHW'F3[+0<%!C<]8!*31_W\--]';+?ZN=6U6XG7'L -M6Q+(UV2OW3G<:O"7P0MI=BGUEJQ#UVL?+A995B40&\&@$M&#I:C&EH`\]^!S -M8,,5$QEJ?/8NL<0K]&F&;BSOK1.X]L_HOOUE)8;YF+\S'Q5S`U2DEM%B[A5] -MT*`UM3&Q[BV77-G;(8KL^<3:0\$!`B@@2S%RH>QY:"L@$HN8;\):5)UN6*SJ -M4G1AOW9J++H*\.;=PM)^E'%VAA;PX$G'_#5O4^T#BHY&\AK+_92,K777?5!8 -MR&YA<51GK$?5I<]H;30:ZPPL+%PKO7ODJ4NYZQKSK%@[&,J=(OS.=NKG%<8F -M7U^NFS]-&;2+S^R@=DQ&,-='/FH^4R[JXD.52=G*4X'"/^O^\_@'Z?[#$^4_ -M*:2GZEA\J*J"2%$MH,(?F2?^J*463X2'FH&F\OT(A\J6/@3M/E>?91+.U>UY -M':#DQ]1O^?//&`6!F<`/#M&2X#MI9<4G:9)1R'.,9EU.,WG:_?,WJZH-K%=H -MNUL]B1!8ST=)^)J:N9N=^JJ.U.IW-2U/(R -MWEA5-[O-YQ`\BDI=4)3VRASN)S_;M@;9A3;7=UT]NG -M+Z[I4\NG40>U>!4_+;-$;9]^4I]?J1W*)7HWJ]X431VG$X'>T\.]Z%'73#F'= -M\+IW)V:S-N-MI:`K)]=A;K@;D#N)0K-RH5Z,\0N+,1YL.'&=5Z=QKF!>G7MN -MP_CJH79C-W_7>1JF>`6J>XPY"ZAB8\"J>/2>B'HR>B",/D(3X1]TDUFR(18!]L`OVC2,8B0]J -MQ?1%$\"CW#)MOQL`,[H]YZ/5\9.58>E`/=0W&PLL[:D]/&NCG*/$9WEB.63# -MG4,ZXCF2EYQEE=1P[9J+D!24HTMQ5?P3J1`&;-R;YZDZ:;XSNB,Z_AE'5\=M -MO_?)W9V+YIZ=LD'S#5TE_`QX,[2.C2)7I)V"9F6674*J89HTKQF7:%1J`&=R -M=0E):BI7,U^#R&M02/K5]QE;?)\\/S<[?N+,R]Z9UV]BW")?Z5W_U2WEMRY3 -MY)3Z>H5`V7\5E):H#U[Z17"1ZW[@38>KC\RV75A(A21Q!TVQ4N[G(YU$H)./ -MG*:"=GUPVKV5+1+V??9_"17,E9L>^S.GD1*;&$:'A<@Y)+(654C@ZR -M_U"SG(2TF9^;EA2P#.V-_ZJC$V5PE/M-EIY_6I4V&$N8/([%`C.&W[BJ\[4[ -M=_;>H;I\_R4O^)`N-$L'WXRK)K84< -M&/WZ$ON<:V&ZDJ7B]D[2?[0ZJWB12F"=#'/#/%H!7-42(#,'E=8'R"+>VT\* -M11-):53)F$*Q4)454&*EJ'ER#G!4C.VS,/5NQY.L$I0$D99I3C7+4Y4T.*VC -MFKFF,_&S0CA<`7!CQP%0+(*J&_/=V58(![P01B23`3Y[`XA^ZH4" -M$\!.F!'@'(R\5?FAFHZUKS"",#APY>A&^M\T;\Q)U^\71U1^\U!J8NHD?YE= -M6:=%?L2P/%9U_\>'1&0?JNM+D+[0_8$P.;GEFDEYO)9?E1QIS?([>FCD(>U7DO*-5?3(_]?\^C$`OQ"4SWG7/^)3 -MJ,2\KBKG>H@#B_Y$9R>49,K^1_A/7B1"MTW&!BH6N5_RG$M8@6PK7*B)JU6$ -MD1.SSE\\&P")E#IAR59+U.;ZX3K[,Q]+29>45>#`E$Q<4O>N>=X-0_-4B%*< -MG9\PW@0YAV[%,M2Y]>I40C!EVJ;H8&OKZ\43D#YHVO.,15X,8Q@5>_FH#QWL -MM%Q23`#!8P"GXE#W.*%]#&(3$^_5U'N@8@>%B?$>8&!'?70')C&1&'5[EF=; -M"[@M3IU_K3F6Z-'_!2+SC0?L5K&.J?1C1T=,YD^&+&?%K4\W_: -MV]+LM_T3'&@UX?,975H)WBA!&>-C)1*R\-N_$1OU!YZ;`<:*$9A23T/^DXMI -MSHBHF.AXALIVVFQ$$39-S1Y5B19.KZ&6"91#_^CYB&E;V5S4BNK#;E%M-GEWK)S.;)!QT9`6>V;59[F9I17'5]56"L/N?S_QNGZ6_&E1`U3XS1 -M$?C6L5!0AB82X&LC4DF((*DGS__?V*?32_$?8^F/JWZ3ZA_2?&^^=I_H8)T- -M;)X;/R6:%FFF-UE?HY,.\K7^B'L-Q\YI.JL]>OP!?HL2U7))C-\XDE#^8R.L -M`3!O/`;5JPR?N):V_[&BH3AZ&GCDY[;#I\\U?5N?*#.1]@B=-NI+MBLG; -M2-=DA72[K4NO!O^RL.L8_Q+EP8*$4S&V*[^W9,W?RF.R.<[O[>%T -MMTNP3*[&EWEE1HK],U,8>WBVU*?RIY_^*=E^Q1J![C6L.KR3<:RCUIR,P& -M*./;G"OU6+H4"'9^MU9T+$0"'O#1T250J*7,Y>XM=H%,V=ZM+DP<+2+MQUD= -M+Z[(.8F7?ZD_U?:M(_QZ#&@V#FUN27XM:J[0S$M(3X3KI^!S5^)8BIR>SRO5 -M03_W/V=I;_!7EL>L\O4X].]R:VK]>.3Y71'E`'G]$#6Z*E#'7Q>QC!B?+I\0 -M]8%#X@5GQ`8,A[)%5!1@'Q(.+*_$M)*(Q9/\#)[7XV'M,GS8L]_@^74..E)8 -MC%+!&(.NPI3G`VH#-A4U`$4QQODU]-]=_%]]]I)=65.1W[#)Q:%$E4/_?+W1 -MJ/2(591#`U1B6PS2WZ\ -M3KQBC`Z\3KLIB@E,A'_ZUX+0E51&!$KUO??&70LJZM*#WG%AB"PJ;%DA^/B^AK5WJ9G>/>Y92TS@^_\+P.Q.W4H#K]=@J=M!8PBC`>/[OKZ7@PU.=@6G9P#9A@H?N=R'4;OUI]*--R$ -M^QCC0K]".78^3M:(>I]K(ZFG8D<1!LK>NMR7YA#Q1>'YC4B>$,*DV[&F -M3="[\K=SM.Z=-:26I@ME67XJ@IU<^E/T[W578(WS\KL-[G1=MU%3D5`0JV_K -MJW?)ECVU'P5W?:^>QR>9\/^]WL?'YOL8C>HYSWR)-76D\?U]ZR+VV51NW5 -M2W3?A(\VM^OR'D_?6SZZ>V:\K*R^D5TYMEHZ'$O>:"/;O7O"-!3X5\75%\3; -M\R^55##>!1!JW@PL*"\JHHD.7(V5(3!9*6EB?AR%`YB%3DX:I[KJ\3V7%F9 -M[4R'2_.XU#Z6<:$(J#NQY[J]7D4ME0K>!->H;NN+QET"'-CT,>41/*%M -M\EJP/1A@LL8HPA0\M*=M)/*HL8R%%\L4/'N'Y_W?Q?DX^M^@\?V/^>S]2M/^ -M5('7UH43YAK'&C\IK_5,GY9ZL*7\Z\ZA34=NO3JLS*B8F)B6IID1U%)(9U%1 -M,V&5X_J%2;LD^['7T<)P@=84LWJ["X%58BFQ@#X&"%0H.`K*2?+ZH5'4V0]* -M+'595;2J"D@4K2J*B<"$_G,*(H:G,/;#XO.5CQY_"7R\J!$ -M#!UAE@0?>SV8KTH]NKB/'#JP0GK\_^VF$TCF+QT;%><8EWI=+8ATM/0_ZT)U -MKXH[:AMN3]/;]7-FY_'H:.C-H;)7!@3/;)2\0+J!+H'HTL)Y8#/*T60/F`8P -M#M34'C\IY4\MFK4&]644U:'0FFM=:89IE#4-P':R4OE_)767%M#W?^2;TE[G -MK$Y?=NG]Z6;.)_X9SIX2?DJDYW1:XDV<]HZ&A/GT&O9^\XU-[<#T[K]?QQU^ -MNCOE1*IP_0X=D@GKC:4/3/`13TP5%MD/3#T[8B*0*1&&,"$"#$8B?P($B@!` -M92`%?.>U]//U#\&CJ5M;\1W_9BP1^9M%W.(OBCW+!722E4!#8G:E%9)2;4*B -MFHI2F=4E9%4*C4YXE1-JYQ7554]B$2F^Y0S*0H9B9H^,\9XIXY'QM)12*2>- -M%C)/'(L$45(&S!LJF!RE#Q?S]^6;^^=GLO9GG6><\H\?@\X]?\OZW_O@MN7R -M^R;_/`C7LCDC_<,/-.5DQR5(K)TZ*8Q^4K^SF6EH@6M,)AW7'>7,4M+O)@\I -MY3R]VWRH."(J>BA&"(^6R1D&*G+9!D5FPTL)RYO"[X;^_X1RPY1O?M#P/F?G -M>_[S_3[>B=?H_3C#]G.[ZUVE^[S'S/*-;5T2HK+"!26$B965UA6D5@UTZ.-. -MX'W(`YR;P7?.P[*8MD:RUHJPG?`4BD#O@,$-Y@";SQX\#$1X$&\2`_XP<*AQ -M'A9'0:T.-[R^ZE4?RW9PULTP3\I0>_IUAT:=DF6U=5W2PL!7D5@R.BD5135U -M9RBUR>U*TN1;J8&=',\8YU=01XF,Y$Y"G(!$G(%7!5$G()QV4"(@'((B(SD, -M`10Y%%:4"SD,ZJ1UO<]]7XE)Q05/`'S/@[!.Q(7P'9BP,0$ -MB*C`-01B/F/'@<8$`XD#YYP.(.).`!.)$'%0Y=>2DOWN?5R=GL=?X/P^;?[& -M?Z%@J*R1CV@TIEI*IIT"1(B3)FX-Q7T>*2/W\W[Q]QK>3N\?DKE9?_6:<[C=MG<7.\FV]O7,_5ZU"74`U)%E%=E<<> -MNP%*Z,`8:D.R`B(R3L`8*(L)V1[]I;";SS@0/GS`CX?KGZSJX3CF&VC$'IZ<=-$W)#ID' -M%*,DP$1('3`0W65(%*S+I@GO:AA]/JGSQ?4GF4[V]K;#@TZ.2E09\O+A2UZ% -M2:$62Q=N''J0GSZFJ)7I41(TY]\?"2`,X,SDT,Z='-99@55@=$!0#4`Q(I)T -M0$42((2D8@4*D"".,$I<7Q'>'5'+'L?.NY#X7SO-6A_KZ'Q5Q?A\8 -MYEWNNZX.Z'CBE(HDIJHDTS5D$[18&9D@`21'2$ZGMZBA.N3J=6*BI)VB#&2= -M8J6AVE"3`:P44SS%-7XS,'Q/35_O][^OW9FYOF9F5-9W/F=B3Z81B$/I3B5" -M!JF<6]IE!+R")8R3,$1BA+R*<:RP+%*9`SR*9V0<[%0YA6@T<#P56NZQU-?[ -M.GL?(7V$S[S/RO:Y?TPRYO[?I)NL-IHB8LL@8D5[5`8;S -MJ/$?(_^_@OM'X1_I^S[J9_B)GP9ARB+WN.+T#%])3%/H11$$8!1>5]'G7P%0 -M$@/R,$PPB2,04`\R?Y63Q8I#FYJ%)0)A!!3%$!C)&QL$;(Q[7K?6_%_J4?*] -M\&?!THIK2S,UP-W)KH9%TV`F;;0V$&,`I%-*4`I%#X?^RF$`VQ19#:&&YVB( -MR;1=GN'':NUV:;2,?T'-BXKZ?^>0;0K[,S*YN[[`3=T6>_S1W-+>-.,4XU@( -M2DA+"!8PI"6`,5D-$-#0D*DSZ*JEA?H4T'@?'ZY[3D\?]*SXA6'$G,-WV/?7 -M)R26Y*+C((8(H&2,23.`L,TE$%@%D.]I@PQD"BDHA<"E7`C@.JZCJCE[!'3N -M7!<'3V;U304:PX6'/'UWNMVW.+HZ?,H;CP[N@=U.W=R*FY0Z";MV,&+8&)'= -MC`%(@Q0#S)#@Q0FZ&Z=&X$W;J4W8W,8(QW,(-/#'2C'F7_F?OG^;Z,F239\K -M+JVI))!4J@T@0#5J`K#J#!TITI2=4!0PRKAG:=6H@(`BLD-X;XHL-_>.KK\/ -MU)^-]3B]CZ#RXO)C7R)EQY''DJ8'&6&*<>5!RM[=I#``P1BH$U23)"JR%F+3 -M)`3C9K$P?`?>?YS_PK'O?52^U"JSGRZ4L4`?AAA8(5?"@0A49"D!$!!0YI, -M/M\6`8`YJ59#5`2TAB#4LAS/T=4+4JBI3B0Z3=TR].!%%#I)4.C$LW$:ZL0#I`6*2:4@@PFL/#)6?0QT9] -M[6=WZW('^3W^3FV]+IDCC(51!5@?@-6`0`0/92I?>)2I*A%(8`%`8J!F(7H5-)HA8"F:J-*B -M@,&"^7R^\O+\RGXI;SN=YG&Y^J8C%BLX\!KJ:[18%`8Q83B(1=:2H2@+B2HL -M0"HI#$8@Q&$TN)O'=_=\;V78/B\.FF?H["OHMNW -M;MMJS8;`V$B1)-A(QMI)L@B(,)LE2&@LV"S9-'9,>34)7>-S-V=I_:[S?M>C -M\OM?%P]C#4X5MX=E=8U:H*&J"13!.L:JH*H=0JR=00WR`Q"=4#:J&,4628)U -M")TQ(S?U8O4>HUITG3N[/G.#LX.$0M)PCPV,X8*3AD'SF@<)$49#A(JPX8<" -M`]NV]U<7#P4Z9@N,8JG%Q);.'B3A:K#B)@(L!$(< -M4`4!&!Q(09!96Q(<0<3*K`H-M8<)QYA#FQ\/1<04H"QG?D.N>'T^][W -M^)V/,/E'$,/>;NQ3KHFN.LVFXW4-VXW&X,,^:W0E0W2+)4A@DPR&Z;DHDH"P -MW!NYIR'SG>]#BX3SNY[@IYQYPGVN;G"*O@W-6U5'3#P>+HVXE"S;5:);2;`VPVMU6&" -M0VR.VPVLL@L\MJ(3`;:63;W:S4=W4?,X*88SQHWV4%')[)PCA=73-HPHX=/" -MZ?J,(!44DTY#U6G4+)@LLD&"L0-,FDP1TVI4X6F;6$1PF?1\'_]X?P>Y\?J= -M/Q'=R[^^90R$RY4B9%,L+$#*112,3"$^;@*:`&@"Z`NAGIHII,>?NC\/C^#E -MET''T=SBG&'$!QR+#4T8%@HLG&V#`*"@H&%JIAF'"JDTS"\+3>5IZQV*.EP> -M4<0MD%4)?(4P"AA+Y!S5"\:35LAJLP -M!>WE&D7]HB9CH'-YN74W=BTR,@^)")UN@Z:*0TU9WK-F>S #%LU0!$V#") -M(B$-@9LLQ0-D48DV;'ME(Z"7`Z*LC^K`.7JPUN@L>W6Y8VXWX4$+KY?4OHPA -M'D`*(&8A@0*6(+`,Q+&6)8D#,"Y@S/JKZL#X84?#I>#SSVN_:EF2BB*(-$4J -M;;%4-D$$&&:9R@LSF;4K(R+(*C"9P-25@9)+DH5)35%(7)DEMK=;;R"V[9V\ -MV*RL2'(@R&1:0Y`#6E0EA%J`:IER8Q+@7HRZ.CQ -M`X#@AP+.`X`[A%(I#@(+.!A1"4.!(482G`R<%CLN,&-O5Q;S$&_;O -MG,WN9;CXMYQC.)D9YMUN:FWY/OL.FF_APFSR!YJ.V6VQ86VU518I:$Q45`*`+:H -M"H18@BD,9,:6RC;93C*;"ZG:W]OB[&R=YT?7[?V#SNQL9LQ>,OU:S5F#,&:J -M*#5@9DF:2*!F@"A,TFJA%S4F;5U5.?O;18]'I]WN=W=B;;;=BZ7-Q=<"PN@" -M(8$)=)%N0&`7(,I!;BZZ1@**C=E&W-MP8*[PK5N[K8._V7ZIBA;?@54@$*HJ -M0@F$"@IG@+)>@(19*HI9#/(L!B`0H(%4E`H2$&%0215$1A+CNS4W\F+'P>]> -MU'7W@\'L]FPQ2DP(FPBPV$FP`1)L:K(%(I%`U(*IJ:E4U-0U#*<7:-KF'P_` -M\0Z1T.AO8]2LAW]FP[_F+ML=NQVM*K#;)L9J2;2&Q-KB(':A%6$1$M(8@I#: -MJAVE)M=NW%QC3R.P[WI^+DY.3(UIDVH:SCXZ:\8M7C+27CQ36@DPUEA-:'"S -MM)J%9-4%FM"MM(4(:33`Q&'$X>,.C?+76YG&/E_@>VXN7+K,R!DUDMRN5L0H -M&AR,#1-22D%%"2(DF@02M(:@&,F8::6K*&?1H:7O!R^\3.^KN]\?!-_NGO\H -MLPEK:VA:%J*`DM8%*(2C&DM5F(D"D,=JUPJ!0&TO(V5Y*[TB"YZ`M"`/R/R60(!`820J/D)M>:.W%MW&V6%P7<*ZHEU2@*A%)<$BPN`6Y%` -M$$$@H)JFB0TBI4!*417<;-2JQ7'7*CF*WM[7!+++@KX-_2/5Z3U^`WS=OF^% -M`63>3I0F]PA+#>P4*)"R,2&H%WUM$-Z8E4W[YTG@ZK>;/S/Z6_=V#?Y60RW< -M?4W>1<270B@72`H7$+A"((@U06F,PG%.KL^J['<]R:'U&@-!ZE70%06/J+*J -MB0[D$8L1`P0AW"=Q(49"QY[`9P8L*//7@YN+G\FO[MX-#/3CXQUVX[E[I\_!JIA%("`LEZJ%^>+G=JL^7I9MKD^)ENZ&[LC= -M26VX\0ACH$06&,BP%DR(&2*1DR061F6+*Q3&1@'7BTV2TV=FPV+ -M1\%U#J*Z*[^OE$*,@Z>'L?5[/7C'!>IZE010QTMDD,!(I*JBD-S64W+#HW8P -M%DE0P!AFYA$)N8544H`UV"&LZ[14=PX865?P^9?SN#>Z8I;QK;MS)F -M"N"F95+99,[9+(*3,DF<)4R64%0469%#(7!=MUN97*5@W#K=#+73U>KR_+_$ -M];S^?LZ-&?GV:VC6UBHZU)K2:R1@YZ*36`UF00%U(2C`H0Z$*DL1%)T3H;;$ -M7G._HUJ2M'!P>%YENT;NW5IERY,EQD,BY$%R3(B0,CD:P&`YV!,$6$L%,Q?8[IM[7/]CO\GDFK?Q.A9FSCG0M3/FS1'U?V_9Z7:^LZ'@9!6QI;K6Y: -MLE0520)!()$D((`I$P];!0U,DH2'7"*2M9`[0**#U2=<[3U^EZ7D\G3O3YCR -MY9>+(USAXSC*IQ/&%(LX(*063CA[9EM4EMD&0X[:K`2+%XV$#3G:-?2[@Z80\"#%-D%AM2,!=+8%(*;6 -MH4!$V@B<7535,SR6^KS8W=!7=^R\C#Q3C5=CT[2K32LJTM):T(=K)%EB"22T -M!8"P+8*H6B*A;9;I60*QVS';Q>-TJW#P#Q/6&R4%! -M2<QAY=KK]CT^;Z/W1[_X?) -MHZ6Z.AG.72FD,$-"(PT0C"+-&+4EA&(&@+!3"32:(AI;=#0T>3E?==\ZGR[? -MA7?V3+J#$R:F295LHI"Z"@HC)E`4,TE8&@3#%K`J.FB)H6!- -M-5MTS;VW9LFT4NOHUXFT>5O]W?CN6W&;5MR71EJ5+B199!9+DIA*@+%+F`PB -MA<%PXJ"KK<&.[:K(59RKNZ/$Y'(,G/XG%Z=KMJ,V&CH:&,8#!HS29H3225(# -M,THU*P*`NCIC!3,\MKEVIJ%:F7+E$\.[J'J -M-YH;-DTQ39IJ4V!*`[*3)DE"2M8%D-C(NR@,N>-A7>5VHGC\/N6[3U?A9[M' -MT)X.0U\>NNO!R)9S2W3?GLFP-C$--$@;&1D58-L$"960U`E299J+%#B'$-O*V'&G'KI@ACMXQ),$!9,3C<3`4!(LF*63%7%H.+: -M0ZSAV<1OZN.KKJZS6S70X]=5)8:TK)0BG$U`FL#"5#6)#N!;22 -MNH;&\3QE$UFTR[J<_=X]-?M[9PG$\1Q3A9Q2SAXJ*1%DK(,A\Q98"PE`4.)# -MB8,%.YCAQQ%'BEO:.'3R5O,>3C^0>5Y.^\Z.A\43O-I8KJ3O3[. -MG?'MX/>_#\X\T/-`\T?-IAPPP",\U&`I)YI'53V[A@%`$S@G&`SCG`L*A?50HA"^!20+V\*9FO? -M@??6-&`,AAUT(AWN=DYCCH=E>$K@!!)<#S%#H#H*&E:1`V6HA4(@(A)LA.5) -M-@1U)BA0ZF4C@=!+0;/)F3E%R.)R(B3)C".5@(19#4 -M0RAK:Y5JAE8:A4(50)P$$^"<34H[M/I=Y"R+I/6]YR -M?-\4Z^2\.OCA;:3B8DX^*DL!2!\N"BDX`Z>4C)RD!A0%=*WIB8=,8A@O]OP& -M.,SUU1#1BGK08)FGHKM"V"DM)C9*82T)%@=J1<"L@@E*`H@3Q"U0AA6$V,&K -M2Q]O+8@3E0+)M8(XHLH2OF$B$1E)D*ASAS@*$YN>R,F.>P#4!4!0$.=B<]0\ -M'90IJQNQ3<[NSG?+NW>EIGU\NLKDG)D:U!89`:T)A)D3#!9(D4U6S#)E%->4 -MRM*9996]KC,CJZS+T#;Z'=RUNOAUZ^[52S*M!CKRP(2=LD,,(D63)BU@6"<% -M`82*!H">9P>&D=FW);ZG5\;)S;//%VS=$`Y4,4-81"*(@1*1SU"JG.\Z!8%$ -M@L%(,#GPXP!4("B$@")2!#$"I`6M&D:U!%2@Y]*ET-W#>VZ5J%\/O^#;7:[3 -M:&U@R*38R(0VB#)4VS:@[5`4!5=5Y2'@+3MI2MK738AYF[=KMB=(1GT$GT"$ -MG@G#C$*0R*$ULF`J`I$FL>/A,)IJJ3Y\,!,*4*%&MJ;_=7(&[AN -M2@2W'@^7PKKX)0H'B'X%(4R%`3-)#,&IJ$U"RM3-FU;"K.'@U.=T^\ZW1QF' -M3PF$4TTPE1285=-L9"P`PC2!*`1TQBP8*+#2CIE"85KA5I\+6-WA<%>-XVT: -MF'A8<,:#"89A2+!`PB19!A%@I,)#2*3@9R@,14G#3$Y70P2J1++;W[&*ICK4 -M6@:`*2**+0A:TRXL8PI+D4&%S(H#`+:J0N&DP,L9!)%DP%K:RZ68++"Q2[2T -M2W15Q='4RMJKT.#HCMUX;>$85A$,0-R,"4B.E218J2$4@01&2`W*$4W)$G1N -MH3%I!"88,4-U3=T(IK)0J7P_,<=!KNUEKUQ`+NON6!8YO=]J$6=F[ -M=><>5XTIA=HP8&UBD$21@;4A&!M9*@*@<((NE2CR/@O91+ZZH>U0^[=L[[UY -MJPTW8U[-<6'WMH(FT(;0-J0ML!(H;=MA8"BS;JHF4WS)EU*W^AUNIQ.O<8C" -M;V+>JRK`V"L=6QP5@3`$Y&,!UF+@AR0-0@5)0,D.1(4B@HD,,E"B)&DUFV]9 -MDNL+@Q&H([I:#=%)[2-L50V6P!E0F=L4!0LF8RVDY&2@%%Y3EN9N!IQI%+E& -MBG.UZ^OT.&H[P:NKRN4+0BE,,4:K"(B1$!$JDA9)SI&0YTA&$?<\^"525I:D -MYL&+B)$]!++#6V;0CR/.--$4:%$UE::1HD(TQ0%"--*C"&%)I,)4(8$(R!OO>CV>\.IZO)I-$'/2C8&C"I2& -M@)HR4`MLBDJ10B0-#,-#/E'+R?2?1:^K7EEN-W3>DY,N2.+AR)#(AQY9 -M^7WO3Z)X=Y;=YOW[T(].^H4FY@DG2[V`LC(;TA$F$I:"*;T97?.># -MTUZ-V[U+=&&JVXW;&!W4P/K,>#QUGV!0I?1]'T?(*%]'R"`'Q4B$T=HCMI*( -M#(*3NF%D=4\,/=">3R9Z?;^SW>S/EUAQAPG`\4XJ)PZN+$L"H09)CZ2J&Q@" -MD*)IL,,PH)IX>'P\8O#MUWQ^CWW%Q'$.0Y^@^+MUAPG$<4XD0XI#B& -M2,#B8%0BH!ID(`43301H-,%#.5=/2&CIQY:RSL->Q8M0B%(6J$M+;J*A<8L% -MDL`7`W,9+FE0E0ERU4QL@6`=LG;(%!

&1$,4R/;TW5?@V<'3M.?S]?=,= -MMI5J+Q)IRU0N8EP%R10&`H%Q)C808%R%S"F)"XN$9=K&//F-7KXC@4X7@G<< -M/`BIC@08IP`<`E9"R`=Q!)W!!)>"BP[EG`IP2[-W:O%W4TZOA^'U_5^B]3PO -M6>'V=_H7];EZVML:VP*:]:VNA>)KDUXTT$UHA%!A->(%C"@FE-"1'2HUR]T& -MN;LX=.SO.]X1N]CFY;CC&+);+;JA4N1EP&)4@R2YE,-)AA(DG*%L`*2L*P#E -M(\M(RV\@AQ,G1YHWN`&).GJ@ -M(2QBP!(I[9`C)-;$8+(,.);36@,GJJ,)#"1'2I-,!:HK1I4J0^>MX/'Q9:S7KUUG&+-=:)#6C$@R>X8L4(A*R37`UH -MZDUFOCFLXSPY%6VW9L#48>IFF7H -M(`I57A?FOIH63-$!(7LO8&9D+))8(H2,EZC(DS5I6&!#!8MYN!Q'<.6?8<%W -M(WN-M:N4KQZTR3)$UZJ9281)DP*)*2(A-5Y?/Z''W-75GH&9PK/4$S@9XR,#.,!(=N8K=JW$8C$XL6*;N.K,:%D,:U8-A0MD!RK1H" -M0R6,D8&3"*1(9(I!@8V%)4QHP3'0.[L)L;`<38YG,Z7K-[>^S^IS?"OX7`>7 -ML\'N_2,%WZK9OW0WUWW>;]Y.G>"I;8;[90-[(,DWH=QA$@+(L*3>MHM#I:XJ -M3`*B5`;MZE9JFH-_'(`>*K$)M&*$0@:2;;8%DVS -M:;5/+AAM#"-47;6NXWW^,\V_9U7WWA8%FQ8$2Q!D0B2)%B$02)2H*A8//8DG -M/&%9*0.<1>=,)#!,+%DSH"YR^N7?L>'U>MCV/5N\W6W8[2ZQ+;"J,%B%I<)< -ML;@+FJJQMLI8R%S$06"@,)B#*A9(ZZJ)1"ARL8=Y[]--.]WYXPET5[\N#G]G -M:V(ADA@@2!'GH'P\Q]A1@1]'E141'R2@P(4`8$8@1D,S*J9E-3-6:HCSK]+9 -MV>#G=WN=+JV[=VW95MUPN,+;:*)*D+;92K","4#""%HD2*6I$TY;L[)A[O:P -M]/OSUIAPCAT8G$8ISZ^U@Q,C5(9%M"9*PC(&0K("0F0!0*$%8F4!1,(:1HBC -M"WNW.=_KW?A['AS,&&S#!L/P)`D#X#^I9?@)@D+T!9&0TE1$(P+QI%)4?(,! -M"E++Y#[N)*NQBPX<*]K4:]2.QW_,]+UQ?&LB"'-,)`1WH&<#/,ZYZE0J(S., -M8"@L,\!K!@2]`L9*A+V(D4$)>BD&&2\-4=E*+[+S.5VD";F&41[TQ8^ -M?B'[PS*73W1PQZT<,$*&`/@/E($`5"JA!>BRRJ%`9"]$0@D+U$IL9"R-ZH^Z -M00_OZ[YX>''C&+O?W+)/;M-!+#5E2'`X`X2CA!28FA,Y-$6`@#I94`I(9KHV -M1=3J6()@L*H4,U+`+H:O:EF\Z[O^-S9_O!WG=6!V;(LQ\J&/BB-(S@J#'<'1 -MT$O17%J(0J=`D%((06($@0",A"$"F,1V2BZHIS!@8H8":AIXQ-CAQX+.KZ3I -M]QU3.='1HOSN?D:,XYH7@S.R@#.P82]%`OLHI(%A`SK%C(1)+`O`SU11GSWG -M(T&^+]NYN5>Q]&/[5.3JZL#T&3"Q^)3"(8AE$BT8U0QI&A)1G0`/0=%QA)$A -M@8&I`H'0:K"PZ$*PO0C.@>@]R?\C+?EOGI^QRW,SY6YN>I,IE4RRJ51=83(8 -M*023*VLB@,#(XV@H0HBL51/!*3Y*%2D.EX>6.'@=HNKOBAL41'1I4G'`CB(X -M$8:#!@9HB08&>E6$0*K`9&DH="E)WCO!YA!.]@N?(YP/J.D?!ZW&F9=:LXV' -M&W$+B.%P#1@@*&B,#1(P-+;I0"DK`$FB$D.(V&P7)-B^+PW>5M2][XBU9'', -MUM*(:((:#01JBH2B7,D9`L$1!06022T48"2Y@+0)%%#14M)N%NYMB87'=9ZN -M_[?WPS^7Z?AO=/+NY=Y<."G4J4JEM3L\'4=3$'J+$G4C;0.HAU'N+)9`JC%D -M6"0ZA!.IB'56JAU([ZG2=._6['W!^'[\;>CO%QO76RRKANA;<#:TA9=)@C`2 -M2X4&"!+A1D%D0ESC9*N1+`:IH"RI*M4;)U!U/3=2YX&[T=99_9F>&O/Q#E=G -M%,]-L,S!?(UQKZ^OJ20WQ3U)M<4V0V4P5*-F!LJH39C(R!LCZ^@H"RJD9-D8 -M,=H-C:VJH\*7.N?F>B%33,!RY9%$DY(R`R&0B -MA$DM&4A"C&8S&KCG/.6/4]GD[O*?+^]Y9H\SW9@^KVGH].PXF'ZB_@_/UN"W -M5R"13(E6XA-220)(B"1"$!*`$H"(=<0,(4`ZV(BP$A.N3K\5QVZ&(:A9)*TQ -M;B!O;2& -M^,G&ED-Z()!(=+`0!4*E0:52H*@VAWFUL[:J-K9Z(R;>YW"R_BZGD>L\ZM\T -MF:S^(?2;?>]EESR?J.QHYG4&)/$'AZUFV"+9-H@I:-FT&%"B*2"AA-U&)!0$ -MDW>.E$C`I%@,..[J0L8!9)U;(Q!,>/&RWT*P<_F')^>#/&V]OF%'"0YM.EUS -M-=`61V5C:6)[=@@&R(HI-3(6`9B5(5`%#4&4A0:AJ`<\QMV3(7\'?]??W_?: -M?'U+.MES%WQQ<76R9J1"+C"!Q%>#Q0@`NA7D"*'B%"(0!*(_9-#`,#(5),R. -M:B5"D49F-LW)?8Q1!,@R:@QV`O*^B_]_G/?+TU+;=E'`XX'"`J@.%M"0@629 -MXM(@P!SJQ96`4GT[,W"30,&A<#2,NNDN!VP>$>*871ZFQ-FM^5HCE.I5>6\' -MV&]`^CP!'=E3NL9#;W8V%1@%ML[I3`X=3"P-#E$$(^&/$/DADR8\+L!H^$R2 -MM=A'=I%O1_1?U^3[8*SS!,[:;FOU3<#-29H:I)F8D6$*3,J]HU`0F98R1D-$ -M8Q(NQD0[LV]V=V)2FW;W9>SQESJ+%9$74Y7ZI]13IJO=[WL?9YAS-KGU,7+Y -MN.]>S*Z7M0D2"N2!6,H+V+(8[Z6"0[%U4A8!JB/<;(,#L)(F%$"H*Y))"$5Z -MQ%>NQE<>TEEEDJYW_,Q?FL.9X(HT+:YTJ[DN2ZW(`JQDF12+&#"*9%5,B62C -M(@9X9D@S.6T6?`G(^(/$XWC7,RIDS,S.5V?"J;8I;A$<Z$.\%PPF\8+`0B\3)&!OB#.E!FIK,`UQSY&A\;CHS,.#>W -M_#?;FR;>8>/T/L,I*2&C1(=R>OZ^0O&XZ/;FX-W>'I-HVDVMI-FD3:-IC`-H -M8,8LB!':H7OL"R%&"3OVV=X.\>^;_;Q[#V>`>]X/7^H[Q^K_'>M]B=\50Q[< -MY=#9_/\M2D<*:?$]/N--0`.L^[4!Q.A.)G%R/`XQB#B8@`Y2.$LAX4AJ"ZKX -M7!"HP1@'A13PTJQ8,DE8PQ3[;[JS4P0E8LG`R6$]T&,408SFY&-0.CI31)C& -MBG4'.@5;M/=?EU3>C2YU`;QW!IK^E)Z]2%50'T;'<_':SGA6[:67D5L8ED$L -MH!E80)0@ST!!((0"4@@D9)J`BG[MA6\R3(:7091!;_.B^16,K)$RDDC'1&G8A#Q(BA%5QC=ZFZ^O-K#QY`E2HD*1,C;F]O.3*]((9;Y9)R>\OX5`BJTE.2[A`H?=/3DHWX$I(E% -MM53ID_`*X:9C,R?8T&GO*'/9XX@1_!SP>RC$4WP,%]+XY!*)?))`%])P*D&$ -MY?!5>SP6260F`58P0YLLLK@?=5Q^QZW0[Y>3V>?;GKHS?6PH@.72DER'WJ1% -MGXH_C6;QJS,BKTA2UTT<67=3C;7<&*ONQ2FK)')M3>1HZ5W:$+S>?GOS1EU7 -M+_7P+'F8.O@&QID%X['6()V+&%$PL"RBE3G!.ZYJ0&#S6F1"%,1((84Q@'X/ -MQQ5ICP/&VC!.U,[!D8X5=6__5G*"&H8`T5G#4.HPLN.C8<.2KE:$VJ$1U\:S -M*BD\[GXBYL-+QO?"<\7%^T0"4G/^M/)3_B^S]TA16EA&K4!H.L8[+BOP$SV# -MN*AFM2X7JG;;W=ET^U[7M?*]KLX>W:;EJJ.;$=9QHIF[O+J?G+G\?X].@X_F5ZC?<5HI];CP";5'!!K0[O -MIQZCQUQ[W&WMX&7<&X8=Q#U/-A!:DL1/?64(8<,^CLLFI)0CZ@'94P.*P,!" -M@XGPQQQ0D(LLT\IZA2^^=CU+511^)T=?+Y4W+R51&&;XJWMCT:;9X[UG0D5- -M@L_]$U-&P4M?^[&J\J$QG7NHM>_-3,@/M'XI,]8NH:UM77%E"Q++>SS\GEO2 -M)G1^$']+Q=^+[`8QZ5/=)OAD8GW[<^HJF*45!8 -M/XE5H$IWUK1(Y!=6!FE8CIJ=F><]ITN/OZK6?!%4I<;/H"'DT!QTW\>,;&(; -MJ!TD(,1*(F\0C$023Q^K3#*J2,">8"B`L$DA#'&(X&!BA(0IUD7+RB]2KOLY/\L`MPF^%6\;P5+ -M!JLX$:-M6W;]U;,)XEE?FAZ5KZE6=TR]-N64R6$3#_#[G/\9KCNP1:(AU./9 -MBG\D2Z?(&]:?MV_%\7Q)I$W0J[K4P)O,*(46RDGJH -MB*1@1]2GJHQ!2"2-OC:@C``XH009[LPL*1]BA-!!C=PK!TP>P.N;Z,O#\88J -M&=[]?R47F.05_'3\*KZ6&S<90WQRFJ3\YP\2V0'85ONGK/6A.(I#$(DV-.=N -M>8O@AAE/M02W+(>=JD@Q`%+D:/$H4.0+[E+HYVBNC]34KW)*&5=I5[=W4QG7P_6SI_LAZ?0`R[D/SOL>DA['KSV#RZ -MF'L+IUV'L`"GF/KJ/KVR"`5FB44D7UXP9JU7']J_[/A':/4K\+ZO\K]J?P># -M'^GH_GGQX05G5H'G4\]L-"7^CZ?-2 -M1R]Q62]"--Q":-2O=;YU41UM?.$6AO-8!_!QK.BSXT"?H*JW>DWN?<;,NUAS -MHFQ]&YRSA\/U)_3\@\=>G,&,+.S7B'9;&@YW9/8V45`]@QBHD#Z -M%B)'YBU!8PD^A7V2D*2?0C#W]D&5!C`XP,+V;$V@WQX#&0FD)T/8G1.Y-C-^ -M:>!T?MG!Z<5V(G7QF7XB90:MPP_`P[_IW9(#ZS[S$0>T([/X+JG1BX]^3>-: -MX&;*'+*FO.[?SL9BS%G._KD6I^C5*._G&0P=>=3%96Y\L]+=P8/3YU$?!?X/*LX>VI;M0_* -M[5RV#CX]G4Y'?[O"T/Z!<.^''WG.\;L@]D-P1AT/%G34#<3Q1Y]`4V0DKJTQ -M1$121)/H$^+[6,!QI23S^U0M*OHM6LP.('P4S,'21\^`<5&?.AAZ#CIL!%-F -M!LY.#@GL._:L)2/YGF8O&"UTM/LHR%*%=DGIT:#X?ZYYC%#RW"ZG:-=PL`\H -M#L"B93=3J+#1(REMQ5K=&"'RBHM1Y\$+<`SP0Z72HK[?X-@5Y5\OP4:Y\ANR -MLV1@8O[RY[_ADI^"8,^.-56_^\JB^U$/ZN]N0C^H-!6%88H, -M.)BZK/-)G>9-@R9_#NNML\IS5H^/-!RG&A44_;(/I].P';K[QYQW%Q&5V>?_ -M;F:\+MG7-->[9>MGI@,#;NTG74#&M]CS=K0MK,[O$`,\*WQPVGXGB\3:\5U: -MH23QY)A>^O-45MF@\M;UIK6(4X"G<33\?>O]_9.A*+Q[K(S.5M;(MP7:GT.; -M4'&D.@:S46EA'N+Q9NHPW(">J871RD_*T3O<.P>*K_HIC9GDG]9MK(/<#F%J -M@9OL8M)F(A>JC\7I-)75DS9'/U\8.;T%[`9W#O1UE60@G-7S5RW1NTX;DA:]H+*WY<)( -MQF-], -M(FH2;>HO:)NB1HJJBLK)I#Q%1=:82-D:.,ZRA(E27/EGPC?;%MS(7LZ4 -MZ;]<]6NDWG2M#"CSH*B-G,-(AJ$)'U(QQC-YX@V@B1&(P]!""JL//8!1"9D0 -M]"O@V4L(STR*LG\=F.W>VIAL_5_(IB'RXD?91A]4S^&?)^2?)[5+\A$#P3=O -MYBZ0]KYKW"N-%K1B3#/ZTIR9K8Z8?2<-]RR"5YY0J`G1N?TPW/WAG2=ILJ#FIQ$!C)ZUK!$H"_Z%"?\VV6O_@/.IQAA`/ -M5V=Y?D21G+"JRD%'45&W\\&G)7V,GLBU1Z$QGR^U -MNL9E&EN#\2B-A-WEF#15&?,+"#_+>S-O*P.7COG?7);1GP-0[1+G?MW_NA.0 -MPT3(-8GJ,R^R$)N[*=EA,VLS53L.X_;_<$^AX*['$WO?,][[H^/ZRR?%$9UZ_:DGQ8JF1D#ZT% -M8#"'UJJOXNU7ZS_/<)'SE2'A9!"XQGS1#1))!!<(`#C$A`T0'4,+,&-A%PM( -M'NWHN!HL?0&?I=,W7`S]M/N9S6Z"-X!@Y3G@V?8VCW?K+8 -MUZABR2.V2LRL4=T!J4(]?)\B1CO=8*Q;\J[*\_#R@G4@5C,X["?OPP@S\BD> -M^*86+UQ87_SS03E=_[\<6;_0?GE&^:[?EXMOC4T?[C.6,WA_7-^N+#"^X\W2 -M*N*Z(<6W5;#F5K#V+.)QY?-6-8"5OQ%Q?I1ZL:1]7ZJJPV*`''9"@4=E,#+L -M8!I75BTTP:(_!OH_"5^)4C;1NY]"LJ),CEL9I\#@+OHK7`#PT47>Q6%7<<-= -M8-!#!3*M)!B -M2F1^/XQP56^Z9=#E(B_,PWN@.U7\"NO626++K%8769KM;`TFPQW0!=>H'(9, -M#9@'CBU^>@4*.C1X078$XT4N_@;)+S?2O;]V?>7OAOA2)8 -M>*.+JES6;(WV\_@+?UP@5G)E,!^@G*3":[L"T5RF,#@BIK'?CF#=IF+I(HUI -MQ&'?:!B+>,$QGT!C!J?@CF`L+P_>*X"QC9@:58\1@.Q/O2VMR&2)M8_MMH.$ -M[&A8-&.[E5?"T4KG993<-<(RR-Z-!::Q@&L._;-9?`,#K[:+!P5)O,WN,^IO -M3>24)IS]CB[LZ.;U=?#(2%BZ5X3L.MKVNTQF6UIH2KPAZXAL]`1_I>!$9#Q$ -M=-Y/-BX@NC+ODES$3']Z?6J8T+5BNMY.N?,?3G)#N^]2U>(SZETO>'SE7&E\ -MA$YMPSDP,,*U<CQAZ-0_HA6C -M1R)V!I-3^NTT5C;(<3@V@_H=Z;$*=10AFUU@I?M#^I<%O%IP,#++Q;[%?BAM -M$R<4*?,[D36.,,#G.,3PJ:9LW>IW>*C6`8:S -M+["BV=P-9?/%HU3=4S`->/RGH*X,/D??G-AY_`L,?*RFI^79U&-B.1!6$(Z" -MGVF"NM`75`?*3.9[$B=+E,L'DM!QK:>-K-PQ]C?SGUC/(AVWV_Q_LI]D_+4GZ/45('SV)44'Z]*2 -M'[%"7]L%BS\"DLD%#ML/G62P#C!D,1'!,8B<]^-^:M:R4(4![.FM!Z#Y;^\, -M[UXC^!3*OD/!(O;#1;K8=QH,#LISY!^"4><5/N&77I&:[I4'&\\"S-,QM'5; -MLJSY/GA4'E[]YLLX@+]>D?NPF/02AS=\(P1>;D')55L&@UGD*\P!!,N6*F'9 -M-#GQ_!&I>)3IW#';>;WD'.1G;YY)'5#\U8]CRE;@6Y:2]Y>@LVS_9O<'M4N< -M3P9FS)PKX6X9-.\*$(!Y,WW4>[1796#-IJ2?2"%Q/_C=O+55UI(X[ICO`XG+ -MQ8K*@=D@7)H?F.&+=^IV-D+E!M;5"V<6PU]%\=/Z&%#OMS]L`-88.C\7I[77 -MH:*0_9B7>V/;(8,*/^>1.ST]1&+QSSI#=D].F#U;>",^2(O>8#M-YI/2$Z&1 -M;R?K=.@,R7UP@8B;-#:]\QGB/XC)LHV8-$NR#G4RR.BP\?C[Y-](1,&_G'IP -MG/`G./=A>:IAO#"9/7^%VT0_4QX$EH@<[]QCPH]);ST[7[5/J)]EB_6\DC=&V3PZ@SC.81#:^D42JT/%;#U%3)\< -M0"`OFE&A3H%+9GV?@"`HZ17?R3U?#6C+H^@\)$:)<8]Q!&PXH&NYL;!;.DTI*7I\+Q:=;Y]O*2S*.594W8F -M8B!%$9\RM>*:,':\!H$[#Q:TP&S(L(DXL>?C'$_F('U/:=4<+:%UKLP&>!L@ -MX"Z5E,\`_&,)\P!'EIVJL8(P)_<0GD,XKU+*1)]JE3]@Q83\WK4?XG^MCJ!Z -M5#OJZEFE.W$[4'Z"?;6'XS/`\_T,!_50[F0YAD7#R9P`X6:L@V;9S-V<>9P: -M->LR"$':8UMS6OTY9.M,%6:%%KX75H+P(4 -MJ/E\WS?^<^)8[8+=IER"5WYCW?:BC?(50M_E1CBD/=EZ/TD,D(/H6&* -MD=>:\3G3<[T&K.EMG'FJ[-Y38'J/*OPHS9:K.MV.I^FI^,!!JKTM@B16#[A6 -M)Q!5UM[@M!I2S-I=X;R!>Z)._Q"H]J!`:+U'@8[;EZQVY3"C/7X14+[PP#I0 -M'R'L3IS_^["D$SQ5F-?=ICG`/S\-4;)KH66.#=9>T-OMWTE[=Q4.'@?+B3P> -M8H51@E//_BC17&A;UX9]^-#_8PN]JW(Q8XYD,:"]7_07=\\DTYN(;K*HX+SZ -MAHH..,&B5$VPMN8,"%HQ%ZXEMM[+O+,_QYLKQG+G3H.$-KIM4>,3:2IK!Q_. -M8!5XB*5C=KVS`G`*1DH6B&^>(F -M4M#.L-Y*[FAC!'.5O5-0Y'5+L&.TC[0X<]7H-]&&A+]_5&FO[CR5C!HLA*!I -M-N?KQB@_ES9Y78I8WGM-J-EU3N*3]LWHM][SAH<]F!9W8XQNX)^4AMN6K-%[ -M4ON#XJ!;-F8SD]-3D3BM*@A%F'1YW!*02JW+X'-N(M49N*+A&L:PM:X"IZ:X -MX%]2V-`7'JCG&R+/=F>..D&:WZ89_M\'TTVFEU'-[3%E->6;XU-K,J!J!NS5 -ME!DX*%I1;WLOI3R*(LV_-\LB=C"`L#"`8K0NN>E)CGYASQNCXGW8@<\UM?BH -MP1)^QL/<,Z7]'=^-G]N?Y[/I6*'+H; -MMZ[X#U=X_=3"!O0ZQ7^3&[=&/I]5`!OIRP16/M1@.WYHES'A;!X:KIAW6PL+ -MW]SO..`/Y1AVBL389V6:]C0X1`:J%JWKEE&)CM:W=&P^7_'F[<05#O^S -M?"[^DGR^(FB!35P"CWLAM_(OZLQ6TFDM&W6F9EAP`^5N&3%:7946I%#_`5PJ -MY]\PP-VD6VSZAY'YD1+M<+_2^#$':4.F_/J!H?KML?!T#H8:`X$30]SDW@#! -MA+>"*3H:+@FBN(\#:,30Y[I3NR67I->C!*J1K0U;EWUT0=*:_GQ_G@KA;ZK_ -ML,IM7E=E>]#K-_D-D+3#51HABC0+5:+M-FDNZ$6MC\K_-VBI_0-<=LS"TM18 -M?UNTT[]$K4]TGB&R%"X\TV(0Y&!GRR<\=]('37I$V%`3'U.X('US+_^C>;M* -MNTC##KS-6,_SX0\3EA;V:E#B'!@^'N%OZP#\#UA5J5YDFX^+8&$K:A^4_U*M -MR0/-Z<28[[754/#JC@V;KG5)PC.1*Z -MP:@%I]/86BI*FA>+WJ`K6PG;'XZ[0_LD`=_#K?^"/WU0/H3O@'#-:,H*>@!^ -M[L#P"MAE:UF1N?)Q3B7IU;'5,JP/^CQ2EF<'H<\L7.B?=7D\0@?3OQPILT(E -MJ%M46O3_[1"_9OAB:PFR=`T9VB]$1\F"J`AZD>0W=,)@M%:5$''FBN/')CXI -M-3[_F@Y]=9Q`&R\^\-CG#]\@U,!19S0UCA:C`;S6LDKJC,LZ^.]D1#C`.SSE -M4S(23!(R];LJ9)=+[O'3/=]Q5+[E3UQXG<_#U6MWAH5\N(&.+2U/FXP"F8N2 -MK>"I-YY@"WS)PP.:L_PS^C"@3AVU3>%^NS.T2[M158(_O/'8RI*%X)W(?O-% -M311H2/&>0/!Y;UN.#RKN]=ZB0+"P%/1G-05OX=:;)NVE",$PY0PX)4D9R@'6 -M\XZ!05/A)9P/O%2XT*7>7JWVF:7`TCT!S3`\T=Y5N`+,Q_$T*,Z4[Z_2+72M -M-@-?J[\M:QFH^^0\/M[VB`[>X-*X/L[^/-+.6H+H?#G&X)H;RHJ#>_SQ[XA^ -MK9(GBR+039BE)9<"V]0=+U\$E5M.B0.3M=Q;'[ORRDF\SI"+TDN>_;Z6!Y+- -M/2F2,AM/SW'>+CK`B4^R:N6!.RCK8C2N1V3*D7>?CBX6(VG!.OXP'A,].!"\ -M*T[,VG*-W1W%N_VK,+'\3"7H-@:PZ`)K9&4\48PJXP+7KQODI]3["<$1J&\X -M:K>TN#/K"W3J7BQ&K450P!+G>#0G+2>]%[0B#U)>WR$BE/:8"]"LJ6OX_.XJ -M9#9X]O'%4@]ICX+*/,6M_S'*2,GFTUG8\9(##ML9Q3L'^ -MOOZ`)`8O_>@X$^L-<:F^]HQ?S(-W=XT0N]MDQ)+<9@E77VB[ZNR"07W@X44D -MI+P"8_)CPA$`EV"&R=]K/G`!%%:BBE^*N);6US>=77`)/46)(*Y_'[A%[T$ -M223UUM4?$JX"^C0A_#T;U,@!:W11GF-MM76UAV!`L\RB(@];9_DTVACSQ%#9 -M>U;ZX9_<#^SP#^(B0A)S+,)%39;7SV6Z=V>";*47CN?AR?82O$-%9IV"J]A$ -MZK7ZZJ2')\.;J`?!,6*RQ316:^O[?H_1_K?W2D0A?5LL=P'B("*OI$H_7#EG -M@]+_RR:%0_G?C:_4A(O!]C^[;3&EQFPOJAXENW)3PY45$,<2!\_/`&DT5\;* -M5G]\KX49P-6[S8+;VM)K1E&AAW2-_/$!D5(?D: -MW7'R*S1Y_D$-!;..@[3OW:KCMO$`M',%>X^O]1\OO^R7BRWTA^JB0_I"0YF& -MS1HNFC.;F$_Z_4B*0Z6K\3CG1G/Q@^N?)0\03)L)Y]EI,^!\_;D1_7+;&R.N -M,CN%F^-@L1HLY/Y;,W?X`&T272NQ9*^.J:3Z0G,/@K;B8.P&P_R[]1G6S]CX -M2L/HC6Y/<0HP&P%;BWN""6_G7R_YZG#1@.!>O4<]YD3E&Q9S'3J_VSUYLMMJ -M)#"BRIEWN&RV<[\74L9G:K.'`-*0.Q(]'\Y#VX'R39&@]8UFG%W,+Z:<"[C; -M'5_6,8YLT!/;2$QE-F_N0AC2ARARL%S-E+:J'*MJ(@Z<'#A77>TPE)33FR=9 -M=^=C964X[T`Z_RD[!_1P/0AOD'21@/8W94&:.U4'=&3F:0J]*3I_SWX7)'[# -MY!^J*V_J"_@\9H4;UU9PO99[92.#K[VF`YM8)XV%SY4V]:(73M)T@TES\PY' -M\@K:T^"6FJ9NIP5M8X&@.?@=@P@#UL:!?3),=!RZ>]^AH24S8&P20?Z[6+^_ -M-%3_Y[FP4]^#F-*:D*O9N.\20490'$F29KM9G$D%\EWIOQ#.M;DN)5"C -M^B`$#L\O.M"BI0.*^S9YC!:;4+SC;<:*/D(,Y'^3#.%/_FNWV@+T8V/*:9`0 -MJ?IXO>WQBX5/_`R"D367BP-&<&_I+9(,36'BG9H_?+"^^R@#"XZ[X.$(>`W& -M0TP$IY:$V.UZ<^:'F+=\HU$Q>9F9+*YVQP.WEK_+] -M"]:0J/F08O&5=^G0V4U=Q_O?30?Z`IJ^&_-@5:/S-6S539%E8O)AC=6&3.%- -M_]3XWCYWT]-Q_!"`5O`6#N^@;`F^L^Z;4$,)TLV6Y.ET.]X@-1I&7\XN/YM& -M@(/V$#;G<&R(TI3A-VKE`+<..U.X -M)T:O(R.#*?@T7H3MCFR*&I,+1!DA*7R?/@^I&"Z;W;1+40NEBN/'MSRAIT%; -M$4*`AQ_]VO!:#Q.&!W"GI'3^8^`_=W;;4A;:F&5#@#.^U)>I8-"PW4:!MYZ* -M-@Y"@-V8K+2_O#Q*,;%@EEJW.@8[4@L&.JG)TXQXM;H -M,>1>^8/I7(L0O%F;W7U)P2?"@048V.YLJU>ZA:6`I:-+XRJ?`W -MJY9=,+.+A38T'W)/@2JH#Q4:[X#Q";_%(!2;6UAY`Z!,KG&`F97!7#CAV"&/ -MZF0VIS-N&GZ?S7=H:*8*[C36JHB%)WM!8#69@\4_W5&#@$K_`*;!S'4!;\1I -M;X1>W+;":.%.S_7(O;M\3:JW2V!\JC@D7O^-W\$?!BCXV&G(LJQSWO.-O/`< -ML*LZV?.B)$.TFFW#&9,&4ZW.J`)1\5=4<5-(/'7-OKE07O^UW6R9T;[C2(`8 -M_J$=P&V67*1``XZ>Y"MCS59"D#O9-)'JHB*TOSZ,E0!,C$1S$M6QXD_N@IG_H>A.)7 -M0QKP11RIQGGA9L\+_B^$%R\&ZW4/MTILWR$$?3.3(\8A&Y3B(D1TN+PN81*N -M'&3[+BSQ#07,&X\T"&L-.;^($Y;Z,V-7^=X0S[;`476`$E08QU.%(<2!(6SD -M:9(TOC4Z#/R/[1NB5`'/P^(V7ZM-!]."(B'-#O)N;`;ES.;8Y -M"<,`;JW06_'T!ZI(O5#;%IHR[/ISOMJB&F=30HUG'H6T`-6XK(J"_H>&#"43 -MW18#G5=TJ"\[\3XAWUOF7)#[4,=%G^)GR+N=MD6M)I$-R0G,%LN;!`-=Z,^U6=X$:'-?R*D80&O,`7])GB$#?8C -M-,K4"5"Y\I@4@9,]JS8S]$"67+-,]%^M_1`2PR(S9O/._)_`I31J -M[VN((A>8+I5TR"O@P`Q6&AAF,(!6`KMGU:*&07I90U!:[(AG:J3W9#@=;J'K -MY?JO#%0!`5.ZOO)VO+T(Q$X$X=P63&=-Q<^0'S:F*?C_ZYT`7>ORN[/C65I$ -M^*\0;%_H(RA`#)7]X[\H0#%KDA*'7\X\)8_#(FAH5\QB4M/YW7QH4,@:?S^EZ[_SI$#5A/,R?;_2]7I0#\9)#5 -M2/?45*?-[;XGCL@0`$-IUN+NXK_=,I$`$WJY!S"8^1;/Y\@2<.WS>^,J[I1'UT1W8G];+J"`$'Y9>L/[3 -M"2?MF_[V-H8>`)4X%5OW2ET&[2>'^?=:.W)UC"VY-$1$C5M%R^!7X7D]5KZ; -M7C/MK&]]6I`@BMS")#GF_/UY#W+R1$"&U1_3LMQA:JN -MVRLLTT3W'S-(0"GOFD[_48TU>OJ\86EGB!BXGM?;<22F`00=MWO.9Y8EPYS' -MR6B4VU9RW2!1T=4!!GIOPD/*]MT[-=W,S'DX1$[32"TX+I):?''N/D`I/IM' -M4OBO@J$>9X2@^`-HD<_V2GNMVOYN#7DD/$Y>ADA;'?[BO4P!W*N*CHVV>W+\ -M9Q84@"C5^1-0&SEE[#`97J331$WN<>*2Q/D!^#\+&.UU<<<`"6G]6]3'FJ^G -M92&9E=;K50=H?!!.3=$G6*J\]@X<7B*0!,-/C125LA;!O[9$%/*D&T>2@`1[?E_6BXQA<='_(;Y>7#JGTJ8`9(T["8PF>E%_ -ME6^"4.OQOY.HR!>=P@2W@[ZM7YA-QSAGQED0(+ZL*M=+4!*WPFN3_9<^"&IW -M?VY3P6\H-XPM4FFU.1K5K[A[$IQ&? -M4[C]X^*D/,671D`)/LW;,Z2(T[*F\1[NXN%0`$OW'2U?8`B&G&77Z>XBO(T; -MIP3I$'-5B/L/=U#&XMBPY0SBDD`N=R[07^H+BZ-@=&C -ME)`*>1:EL0:3C9@(Y,245D=UZC&WX,-)A`!OL2NPA -M=U9HR!)=)XERANOX4R`;(G\IO,1$0;E -M#I3)2^`/W+)&X;9'QLR(`!\SNI[]:!W:.O>N'$L:=K1DHR!62?0_FNE?;76W -M5W:)AFO\4R+W5N7TV07)UA_`_"UL(-$`%WSVXC9^<ZD_O-)1$6O^4M.4Y"S'+V.I<;/6'P%.R\!3FZBN -M'O,K*'CX(8RSB=6NNM^"TE9`-^`J\@);/\T1`:A\@DKJ -MMX"5DZ5($U#F\/HH"*1EG6G)H8H=LF"_`ANFJWT]"339WT)`<7YR+V!A_O:7COO> -MQ.ZO,>;EOJ2`73]8%-ON2*W]T!X",9R*)=+]=CWYU<8FOC;*PLJ9+(A0<`%C -M';J6GLB=4,ZU]5$17%S@>SME_81ZY.3H(D^!.O`"]E]Q -MS^<.YZB^7N5:`X7'?K3T1Y`7_S>W)P\A""&KN&H\-W-G``!B-W9LDY[',0*7 -MXWP\Y[ZP+;TZM$TWTPF86+23"ROSX&< -MQL'G[;HY7B2R$%/]T$P;O/PWCKZ3;/G7LZ[\K*41!O;VHKGDJ_$B-68=..Y\ -M`17>(35W$KZ)1OCY%#3X$91/KA1#'>IR-_)"0&+I'1=-/(2<]N6[29K#I4!$ -M_VQ%Z*C`Y]6:];]D,"O`I`!PW\%YOX$X]3Z3VW-XI@LTZ^A/)C6B!-SR!?>IK$\GH`>!YU:_G^[U^).")MO_$0;<7L+$\*:%.^U$1?80>5H]SP -MH30D,]RUB)?DL`#\=6D()@LHJY]S.P'P2Y<2P']T]3T4:/JGR"UU,@G@@\=+ -M0O`E)A?Z:TA&GC@@WBA6,&X/`KN^NV0@*599L!]YSO)<;@IC:<7,JE$!_,EJ -M`C!0Z5OMOF,2ML&A@41$VZ>YK`,+,<6VF]4C/D2GS>Q)$$<7OVR\.B]F,]NP -M0J1*+?#9LBR=1)QVL71]4"-)(IL`4+.=%A"OVM^CM2#:;;'A,J#;&F$1+V+O -M`%BI;**:12N[VO%:Z5((@QQ$@25,M;D-_)GB&Y5/F14?\V7B_[;0:B@`?,Y2 -M$5_]MPU?N#$1UU3!$(C(M%U;DAB/Y5_YGL=LSH`7$L%?T`6NC0C[N'A?7*&0 -MD"_G6!?!\CY[,H]YQXK/2QD<]YT@`?2& -MC%7R$)5.#(;#':[*O(O2S_6!YCFLGP/3X2`3+T9A9ZG6C,NUT"(A[D\^"QTO -MZ^AL>DEZ=(EM/*+DL%1G9<1WF.D,"\<7KR-5-2XC5;PT!]JF" -M#UF91M0-]]8`AN+`OF5IBLRVA<=>4]UTI%?=AGG""_<=#19D,)+/T0$!F'2S -M(9J,WF.FD>=P6!4X*,B\^.TO@(\YD#SD@`9_G@#ZJ/L6!B)[#D4CZJI"+>@!PXK>5-1R%,%[J.C -M(@DX%)%]!C?*VB4P+_;8&^(J;`8H,W"3CC-:(A%9"80+R@"OEA5",&HL?,?7!KS01D4[R@KS)`#K*,/Q,M>"5DJ(9=$"VA`+75HX9);&Q/1!0?D9!DF=41,JW]1WJCH -M,0/D/ART_6D,OO_'^^M!8[9(`*LBZ2![=N^?EQ3H"%A1,#\`557[T6^2=M,V -M)FO6T8"9>)FM($_92'&Q@?#ZIGO+HFV5^207VA#'Q\K2(-UV\/7`"[U%.QGW -MD1D^D@L5>`N?K\MJ3@M.?Z"9NE'GWXZ"B5D@57]J39)"JX;MHQ_2[FX&7:/( -MZ,B<"''G)T`,5W7%G7=P23Y(LGU"'1U?2'!T,YD2;T`(37A9I'^IW5(AU]9J -M[+2\#*=#Q(2%CE)@$/=R/Q!B5\"*50$HU7GE.^^D0F$(AL\6E:X0$ -MQ=_M83[A&7=\MMQB+(72,(T>YZQ\OB[\=M?P0]%UYUZ8Q.^/W:GO39"FEB)P -M1\S0+W1K]!CT),'6UR20%#&CNO24EI3OCWFX1@KV*(A4V6EKEP920LI%,C`Y -M'6@EEKY1$&#=;FO5;T;F-9HVY/)")6\DO3S0!?/RZO:IZKF=]PU4,C%++$!. -M>!IA'K8\Q$C,0D6[\4H"&P2,8?*DUH57*'54 -M8"Z9_2'37'/[0RX\3:`@XUW*?B!8_2I?VH8:HE76#3IY(%S.]($2P]=G^N_L -MAFC,I$+C"A/>^0$XBEK^U\7Z$`Y<0\W--KIV;`!P%VIW5B#70XH!8O!:+=Q"BFS.;<*U -M>N4T@E`%NJ_>2Q`FY+&EWE'G)%+=*9$!5.1`-3_<_7&C?QF1YTX/9 -M(#+SV6'HZDHD+R`ONS@M/H/'-R$EESXY+HJ`F#.OBQ#Y2?#TE4R';(MEFOL6 -M6","$N_U-%=$0_JTL+% -MQ."K+3NKY7&"0%G?*G_EV?2`W4-\HDJEJQ$*D!3L1`+"U/8F%3/?81!@4:ST -MVY$&&HLNFO)]AH]!91%J*A,`)>`,0)96L"M3OQR>L9:"'"=3I4P`N&0B!]4K -MN!/0DP@R\,>4R&BLR!2'3W.X2LZ'CYCAOI$*R`/J=XO(9I1>T/L]O1:QJ6($ -M!3:!D\(M=7G&R/;)::;4P:-6Z8.B(DBT^K/SDU[J:P`N503,`J5.4].I[Z(./"X?*S^K!%">>`:5F[[4A>1%E]1X+D@+/^?,'_.8\2$.U -MOE,%`(9D@!8S]XO7S"U.1IX=^+1CR->#];K^:A=IIF>.EDU7RT\/AHB`JWRHS6Q#^:243'3F_ -M(AG9*`W5/L$QXC'0;3BG2#>1)C(R/#9H4&10%C)/1D1;#<^N8-P5TIB80#S4 -MS3UB(O1%^-ZFK+/UVVW$L:!`.L5);#2]JH];,FP8E*XJ`18[2J?OU>9//>>A -M49:?*\:BE\H")IH'SHQ50P#:QH4POC=G`+_KO018+U=]G@IMT8/S&I*8$AM6 -MGNWC.`34J\+R*F@,J-4>A&1B7.D@*]:(`0@B'!1HDS@'C2:WKJNC"EJP1:O> -M]Q,V-OVT0S*NG(R$'2>?H]?]%L$!SV;C+ZJDRSY'_UFHUNAE0F9L,1$$/1@E -M.`VORJ]R8,'C?VX,>-#"F`OEZ:.]TMVO*Z5]+>B-,=LX1,!!_8W=WQ^A_NW2 -MU$]I<80'?F$?$T:TQ<-`7?_J>Z[KURF99P`.KXYJ2I[?7'X+[_/R.WORQ$3( -MEV;"IG=`U0"QHCJUEUHP3H2CI%@RFV5L]!.[""+>TSWP,+L5@5^0QHYKD@`);D%:,NF9"A%(V1LK_TIM+)7S",$083.2HU,IAAFT'XT4$ -M?KD3U7')$I1"I._]\#P!!78-ZZX%HIIC4@)GI="3J]'-G"($!/F";"$X;)_"2&TDDA)\#BWJV=LP`]FAV799YS"0\=-?CU[U[ -M]/CISW_1L5^$A`#N#].H2;S%@=VHZ>RV_5"=L-6G!$*Q=R5^L65DQ&(P(P&2:S4C7` -MI8:*T>=/$0=6%U>^QJ]19]OB[<$K&%()RS

-M2X_PW\A4?`_T,KO6V2"`&K3MT,)!CK(Q.$F)Q>PD._D?Y*B^4D*2DD`6%-K8_P_JX2!'5M`WMGAS"KQWJHOF+*UVOQ:T[Y9-3P0*:WWIXLJ?C- -MUZV=DJTK6B``2W7?Q^C,9G.S@>+J0P=!_WD]A`#3_>Y.LY!9N]=.H@! -M5<3DW_A4"O%8FJ8(JMD+#XY#2LZ&2YJ4@!!8^J9Q;X_04\]2WO:]/KHT8(N#N? -M.RP'[7_8W^LB&QHZJGJ<0EMX$D^/^9T'!QBWAHT1$+>ZL+"U4V0E\.+S$-7& -M?.E_'!DT,GI3P(DFW0K0NYLF4^AB>9#5?NG)A+!%U^U&1$P=C,+:I:Z(R=?"9MF:$RKNC2@@'_$L?IRA.PM&PI@"V4DW;=.NQE$!G*O0 -M<2FBEN>ST^PK:4`G?N8HG(2#9=4[9NBPU,@75J,&4W(#B$5)7,">)F//)?JD -M(AAW?&JOS\C;2`8+C-,ECG&;S4V'-F2`BPY76`6C*^TZ<3!ICXBW8Q+(R(IJ -MPD=_V;-<]R\W$)-FF7_LY%TD10_/HQ$.J)0(EAUOI;$\Z-U/"3#'J)?$)`D@ -MT\)L()ABS_02AY,@?!#2]]K`&)V-5J5[<\[M]U\$4M_NV6/ZE)Y$6/%P&&)" -M@##\T3#,]>TX^FMTL@4^0$9,B46EIO_7PTT?JDP$5D\SBBVD6P38:VFJ"(9> -MFWL4HA?5`(4HB`C77YOO')]QKNZYYI^/"QJ>B(%>Q4-LY?.D'#;^-D.`AO\Z -MRP:C/<+\M"$$70[\XF(*$95EYG<%2A1GP0B/7`R#]N4>DDNA506P\X(M\*3B -MYPB@%N)A+!NKIQ7;$^,XIB`^[6,,>0'(WC733>(+6T3*<5RPD$`Q[ZGZQ%$R -MK>_NCIQV9E4NK]JWP)0!6HSR:0_@Y;)SFUH?^7TF^51@A083IZWJJ'*;HWE[ -M!B3-9KT$IQ=$D`$VR-[!;XBS"*"^;+RLFF!H0@#Q6<6D..:(%V[6?%W$:[E: -MW1;9L;^3PJK7V5/0H2U_DO1=@J$OY%>3:5662$!$.'F[;RI9 -M"GX^Q74GI[))>;981@$CSTG`D#;II8WJ2D_P9URN*!((B=OJ<[I%%/N23OH] -M,.9U_'>;^(20![J&#(A5/G*P8MXF7!FZ+CJFH1P7?K$)I$*S-9JV#BFLC)JW -M?,)92?8D\_[=:E``13__IP%L$]^JMVD*JLCH@_%VK58MEKU\E-(`:KZ10`? -M%J[A`OY&P2@0ZF.Z8`A5S7YA.I5[$)0]#8KPJ2`%&7(N_@Y[!`:/8C^SL -M7UN+$XNDTE6R5"40'77+[7T9"S7[+0O]A0LS,XL28`%+NXOFS/%6`JZC?-]M -MM.AUDM2>%,!;B?!+":PA6=>AIF!SS4LBL_CJT)$XYC7R'FL>]VVNNK_O[)I$ -M*F?/_ZR$!E\D.K!KH5LHV)LD:SUT]/4KLCG"(N7\G^9($?A?^_KWHR_G_Y\; -M4[1.VL/[3@0U4S%LY$)Z,P`ZZG4U%#5?#"1D7S[WW[9%XNB_<=]O]3PNVG64 -MDGI((2KQ#XC[B71.G5+,;_A\3XW:(`#X)-!4:M>(N\XL;V]*4&H[/M9*)%92 -MM7FVB:``R3`!2HD$A^&FX*?Q3O$<61]KDD@BHU4!>R?]8Z^?][&\>5$"'8B- -M-)D`Z2./Q[,EG+YQE=6>W`'Y3P0P1C -MP;\VHB%?D)99.NY(&`&/>9NBD%\4BHID!;K7NR"&3LY+AOU0_;[1J -MVX;__9AP3@ABJ4B`$WG;6*"X79OW62Q*;A)B`P5+H31`?$7O5G7UG-#JS-=Y -M]+3[M4(#SNW(GM*1"3'.T>SU\0C)U2E7AA_7T%Y(^M(!#@-W]D0I:`SS,V"W -M=J02^2-RUZ-"1"N7[T`2O/2K%7?^0W]M,9!2Z^8]\FF`$R9ER4D/:(=^]8 -MN/4)\\G>JG9PC(!IK`_=?&[B:NG*;0$`P_CQ+$:0&42BW*HF4$JW-L+N)K6I -M(*XFZOP@3@T]+P`-/@T&,KZK7``L\OLPB>Z0SFL -M9T+85;%-("3U;S5$6WE_,-,FUW?8,V\)O-MTD`?09,@DP&)E(_HU9\"C=MKP -MB(;[,X#:Y=-S"O=6'1:%I88?3!)I`>F@[)`<&6/G#O>:^>Y&0ZR30R!$ -M(/Z]I?I+A6C$(++YCND`G\G1-QW2Z3N>WP -MDB!?R#!.&Y^9%VG.LA+W^89(0'[/I$4P\>F$D-S0^X0]OG]:.]2<"4 -MJP@)^C^ML,>]8_QX:PB+4;/9^0$&.$_#_Y_BT?7=+#+E?8.3AY]"FD`X8Z:(0F-E -M$Z2S"6DZEPH2`#8@O(FHYW?+_X6UWA?QB)0!B(9C:$1Z\"I9RD'']_5,-=7# -MG7T>ED0JZF;N_NUT><`%6I9Y^<6]`G]Z;T",`;JTL:4@/WRF7DC8\^)RW;DD -M0'X3N>"&^?&5N&_2\\\]])<497ZK'=4B*][<)H;]8E;L;)9V,ZN[+?)8&]6: -M,A%#:O^@VN#*.OB6Z%&1>AZ:@`)SVIC6F]QG=]FH#(]"SGZK=*.^3@3]KI/T -MN<`1#G?\S=B^5J!^J8Y=1C8U$,1$E?#Y?N6]29WZ.CAD$I$V]T@*+N?]9 -MEBHVFE$`&YR1%RT&CE+E:VNC^2$BQZ\1#NOFKV4$_I?CY(Z.\%#FTR'ME4`) -M*7*^8`-I.])!NZ*3'*3^!/J\%,0&E@"`NZE-9P.'=8?0J=ED:FQH)-Y64XB' -M<]OV[G7_3R"*.0Q+=UZ=5XO#9.%RUBCLXGDP`P_0H`$8""BP8R\=N5BNYRD@ -MN[2I``[T``5GK,GSKOPI_QC,>Y+(03KWXQK(#.B8\.&F0U.MIT]#XT -M<2BB9=,!"+Y5!X&7;`%LCKDM>2'S6K<%WO(P1^2'FWM6N(0.1GY'^RI`>;"]N+7P4@9XL172P.,X -M$0ZW98YYBB=#JM+/61X.>C[2<0%B`5(W5>C$!WT9CXW+1N=EWW163@O4WVH` -M'<43H?//N?_:2-6`GKQ`[U2CDX%#V,URIF:(AYQ]]:T*W12,,;1HP.MJ7D@3 -M(E^;+3JHF[$.E<)?;N/TL^IPX/5^5:(%(,?BH0!P4=YH>OG-UU--,)9!G]*; -M3P4(1!0QZ;)L^D'U$H*,DS'0&74[G>@%NH7&Y%.BV1QUVG&])T@Y*3Z/Q!"N -MJ0>.N4BQ;VRE:),!6K6"%VOX1FZM/!?I2]UECP,^;SE`F$!.PVY\6.%!9@O' *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Tue Mar 7 01:58:40 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CDB09D00E9A; Tue, 7 Mar 2017 01:58:40 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7FAD41FDA; Tue, 7 Mar 2017 01:58:40 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v271wdoV080885; Tue, 7 Mar 2017 01:58:39 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v271wdmF080884; Tue, 7 Mar 2017 01:58:39 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703070158.v271wdmF080884@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Tue, 7 Mar 2017 01:58:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314819 - stable/11/lib/libutil X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 01:58:40 -0000 Author: ngie Date: Tue Mar 7 01:58:39 2017 New Revision: 314819 URL: https://svnweb.freebsd.org/changeset/base/314819 Log: MFC r313438: Clean up trailing and leading whitespace for variables to make it consistent with the rest of the file and style.Makefile(9) a bit more Modified: stable/11/lib/libutil/Makefile Directory Properties: stable/11/ (props changed) Modified: stable/11/lib/libutil/Makefile ============================================================================== --- stable/11/lib/libutil/Makefile Tue Mar 7 01:52:56 2017 (r314818) +++ stable/11/lib/libutil/Makefile Tue Mar 7 01:58:39 2017 (r314819) @@ -35,7 +35,7 @@ MAN+= expand_number.3 flopen.3 fparseln. property.3 pty.3 quotafile.3 realhostname.3 realhostname_sa.3 \ _secure_path.3 trimdomain.3 uucplock.3 pw_util.3 MAN+= login.conf.5 -MLINKS+= kld.3 kld_isloaded.3 kld.3 kld_load.3 +MLINKS+=kld.3 kld_isloaded.3 kld.3 kld_load.3 MLINKS+=login_auth.3 auth_cat.3 login_auth.3 auth_checknologin.3 MLINKS+=login_cap.3 login_close.3 login_cap.3 login_getcapbool.3 \ login_cap.3 login_getcaplist.3 login_cap.3 login_getcapnum.3 \ @@ -57,9 +57,9 @@ MLINKS+=pidfile.3 pidfile_close.3 \ pidfile.3 pidfile_open.3 \ pidfile.3 pidfile_remove.3 \ pidfile.3 pidfile_write.3 -MLINKS+= property.3 property_find.3 property.3 properties_free.3 -MLINKS+= property.3 properties_read.3 -MLINKS+= pty.3 forkpty.3 pty.3 openpty.3 +MLINKS+=property.3 property_find.3 property.3 properties_free.3 +MLINKS+=property.3 properties_read.3 +MLINKS+=pty.3 forkpty.3 pty.3 openpty.3 MLINKS+=quotafile.3 quota_close.3 \ quotafile.3 quota_fsname.3 \ quotafile.3 quota_open.3 \ @@ -69,7 +69,7 @@ MLINKS+=quotafile.3 quota_close.3 \ quotafile.3 quota_write_limits.3 \ quotafile.3 quota_write_usage.3 MLINKS+=uucplock.3 uu_lock.3 uucplock.3 uu_lock_txfr.3 \ - uucplock.3 uu_lockerr.3 uucplock.3 uu_unlock.3 + uucplock.3 uu_lockerr.3 uucplock.3 uu_unlock.3 MLINKS+=pw_util.3 pw_copy.3 \ pw_util.3 pw_dup.3 \ pw_util.3 pw_edit.3 \ From owner-svn-src-all@freebsd.org Tue Mar 7 01:58:58 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5DA07D00F0E; Tue, 7 Mar 2017 01:58:58 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 144B01102; Tue, 7 Mar 2017 01:58:58 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v271wvTU080951; Tue, 7 Mar 2017 01:58:57 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v271wvgE080950; Tue, 7 Mar 2017 01:58:57 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703070158.v271wvgE080950@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Tue, 7 Mar 2017 01:58:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314820 - stable/10/lib/libutil X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 01:58:58 -0000 Author: ngie Date: Tue Mar 7 01:58:56 2017 New Revision: 314820 URL: https://svnweb.freebsd.org/changeset/base/314820 Log: MFC r313438: Clean up trailing and leading whitespace for variables to make it consistent with the rest of the file and style.Makefile(9) a bit more Modified: stable/10/lib/libutil/Makefile Directory Properties: stable/10/ (props changed) Modified: stable/10/lib/libutil/Makefile ============================================================================== --- stable/10/lib/libutil/Makefile Tue Mar 7 01:58:39 2017 (r314819) +++ stable/10/lib/libutil/Makefile Tue Mar 7 01:58:56 2017 (r314820) @@ -34,7 +34,7 @@ MAN+= expand_number.3 flopen.3 fparseln. property.3 pty.3 quotafile.3 realhostname.3 realhostname_sa.3 \ _secure_path.3 trimdomain.3 uucplock.3 pw_util.3 MAN+= login.conf.5 -MLINKS+= kld.3 kld_isloaded.3 kld.3 kld_load.3 +MLINKS+=kld.3 kld_isloaded.3 kld.3 kld_load.3 MLINKS+=login_auth.3 auth_cat.3 login_auth.3 auth_checknologin.3 MLINKS+=login_cap.3 login_close.3 login_cap.3 login_getcapbool.3 \ login_cap.3 login_getcaplist.3 login_cap.3 login_getcapnum.3 \ @@ -56,9 +56,9 @@ MLINKS+=pidfile.3 pidfile_close.3 \ pidfile.3 pidfile_open.3 \ pidfile.3 pidfile_remove.3 \ pidfile.3 pidfile_write.3 -MLINKS+= property.3 property_find.3 property.3 properties_free.3 -MLINKS+= property.3 properties_read.3 -MLINKS+= pty.3 forkpty.3 pty.3 openpty.3 +MLINKS+=property.3 property_find.3 property.3 properties_free.3 +MLINKS+=property.3 properties_read.3 +MLINKS+=pty.3 forkpty.3 pty.3 openpty.3 MLINKS+=quotafile.3 quota_close.3 \ quotafile.3 quota_fsname.3 \ quotafile.3 quota_open.3 \ @@ -68,7 +68,7 @@ MLINKS+=quotafile.3 quota_close.3 \ quotafile.3 quota_write_limits.3 \ quotafile.3 quota_write_usage.3 MLINKS+=uucplock.3 uu_lock.3 uucplock.3 uu_lock_txfr.3 \ - uucplock.3 uu_lockerr.3 uucplock.3 uu_unlock.3 + uucplock.3 uu_lockerr.3 uucplock.3 uu_unlock.3 MLINKS+=pw_util.3 pw_copy.3 \ pw_util.3 pw_dup.3 \ pw_util.3 pw_edit.3 \ From owner-svn-src-all@freebsd.org Tue Mar 7 02:01:03 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A1352D00194; Tue, 7 Mar 2017 02:01:03 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 708991357; Tue, 7 Mar 2017 02:01:03 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v272127w083988; Tue, 7 Mar 2017 02:01:02 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27212uk083987; Tue, 7 Mar 2017 02:01:02 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703070201.v27212uk083987@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Tue, 7 Mar 2017 02:01:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314821 - stable/11/lib/libclang_rt/profile X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 02:01:03 -0000 Author: ngie Date: Tue Mar 7 02:01:02 2017 New Revision: 314821 URL: https://svnweb.freebsd.org/changeset/base/314821 Log: MFC r313009: Expose symbols in lib/libclang_rt/profile to fix --coverage The symbols currently hidden in libprofile_rt are needed for linking with `clang --coverage` to add coverage counters at link time and produce coverage numbers at runtime. In collaboration with: dim Modified: stable/11/lib/libclang_rt/profile/Makefile Directory Properties: stable/11/ (props changed) Modified: stable/11/lib/libclang_rt/profile/Makefile ============================================================================== --- stable/11/lib/libclang_rt/profile/Makefile Tue Mar 7 01:58:56 2017 (r314820) +++ stable/11/lib/libclang_rt/profile/Makefile Tue Mar 7 02:01:02 2017 (r314821) @@ -4,6 +4,9 @@ LIB= clang_rt.profile-${CRTARCH} +# This is needed for --coverage +CFLAGS+= -fvisibility=default + SRCS+= profile/GCDAProfiling.c SRCS+= profile/InstrProfiling.c SRCS+= profile/InstrProfilingBuffer.c From owner-svn-src-all@freebsd.org Tue Mar 7 02:01:33 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6D034D00228; Tue, 7 Mar 2017 02:01:33 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 39BF11551; Tue, 7 Mar 2017 02:01:33 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v2721Wdr084050; Tue, 7 Mar 2017 02:01:32 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v2721WSR084049; Tue, 7 Mar 2017 02:01:32 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703070201.v2721WSR084049@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Tue, 7 Mar 2017 02:01:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314822 - stable/10/usr.sbin/syslogd X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 02:01:33 -0000 Author: ngie Date: Tue Mar 7 02:01:32 2017 New Revision: 314822 URL: https://svnweb.freebsd.org/changeset/base/314822 Log: MFC r314226: Use SRCTOP instead of .CURDIR relative paths with ".." This simplifies pathing in make/displayed output Modified: stable/10/usr.sbin/syslogd/Makefile Directory Properties: stable/10/ (props changed) Modified: stable/10/usr.sbin/syslogd/Makefile ============================================================================== --- stable/10/usr.sbin/syslogd/Makefile Tue Mar 7 02:01:02 2017 (r314821) +++ stable/10/usr.sbin/syslogd/Makefile Tue Mar 7 02:01:32 2017 (r314822) @@ -3,7 +3,7 @@ .include -.PATH: ${.CURDIR}/../../usr.bin/wall +.PATH: ${SRCTOP}/usr.bin/wall PROG= syslogd MAN= syslog.conf.5 syslogd.8 @@ -18,6 +18,6 @@ WARNS?= 3 CFLAGS+= -DINET6 .endif -CFLAGS+= -I${.CURDIR}/../../usr.bin/wall +CFLAGS+= -I${SRCTOP}/usr.bin/wall .include From owner-svn-src-all@freebsd.org Tue Mar 7 02:02:25 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3909ED00320; Tue, 7 Mar 2017 02:02:25 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0855B18AE; Tue, 7 Mar 2017 02:02:24 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v2722OkW084894; Tue, 7 Mar 2017 02:02:24 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v2722ODm084893; Tue, 7 Mar 2017 02:02:24 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703070202.v2722ODm084893@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Tue, 7 Mar 2017 02:02:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314823 - stable/11/usr.sbin/syslogd X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 02:02:25 -0000 Author: ngie Date: Tue Mar 7 02:02:23 2017 New Revision: 314823 URL: https://svnweb.freebsd.org/changeset/base/314823 Log: MFC r314226: Use SRCTOP instead of .CURDIR relative paths with ".." This simplifies pathing in make/displayed output Modified: stable/11/usr.sbin/syslogd/Makefile Directory Properties: stable/11/ (props changed) Modified: stable/11/usr.sbin/syslogd/Makefile ============================================================================== --- stable/11/usr.sbin/syslogd/Makefile Tue Mar 7 02:01:32 2017 (r314822) +++ stable/11/usr.sbin/syslogd/Makefile Tue Mar 7 02:02:23 2017 (r314823) @@ -3,7 +3,7 @@ .include -.PATH: ${.CURDIR}/../../usr.bin/wall +.PATH: ${SRCTOP}/usr.bin/wall PROG= syslogd MAN= syslog.conf.5 syslogd.8 @@ -17,6 +17,6 @@ WARNS?= 3 CFLAGS+= -DINET6 .endif -CFLAGS+= -I${.CURDIR}/../../usr.bin/wall +CFLAGS+= -I${SRCTOP}/usr.bin/wall .include From owner-svn-src-all@freebsd.org Tue Mar 7 02:02:53 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2D79FD003D8; Tue, 7 Mar 2017 02:02:53 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F0D281A4B; Tue, 7 Mar 2017 02:02:52 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v2722qM3084952; Tue, 7 Mar 2017 02:02:52 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v2722qc7084951; Tue, 7 Mar 2017 02:02:52 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703070202.v2722qc7084951@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Tue, 7 Mar 2017 02:02:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314824 - stable/10/tools/build/mk X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 02:02:53 -0000 Author: ngie Date: Tue Mar 7 02:02:51 2017 New Revision: 314824 URL: https://svnweb.freebsd.org/changeset/base/314824 Log: MFC r314242: Remove MK_CRYPT stub It doesn't directly control what gets installed today; it indirectly pulls other knobs (like MK_KERBEROS, etc). Modified: stable/10/tools/build/mk/OptionalObsoleteFiles.inc Directory Properties: stable/10/ (props changed) Modified: stable/10/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- stable/10/tools/build/mk/OptionalObsoleteFiles.inc Tue Mar 7 02:02:23 2017 (r314823) +++ stable/10/tools/build/mk/OptionalObsoleteFiles.inc Tue Mar 7 02:02:51 2017 (r314824) @@ -1033,10 +1033,6 @@ OLD_FILES+=usr/bin/cpp OLD_FILES+=usr/share/man/man1/cpp.1.gz .endif -#.if ${MK_CRYPT} == no -# to be filled in -#.endif - .if ${MK_CTM} == no OLD_FILES+=usr/sbin/ctm OLD_FILES+=usr/sbin/ctm_dequeue From owner-svn-src-all@freebsd.org Tue Mar 7 02:14:24 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 589A0D00C8D; Tue, 7 Mar 2017 02:14:24 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: from mail-wm0-f45.google.com (mail-wm0-f45.google.com [74.125.82.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id EDB0211F0; Tue, 7 Mar 2017 02:14:23 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: by mail-wm0-f45.google.com with SMTP id v186so78427087wmd.0; Mon, 06 Mar 2017 18:14:23 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:reply-to:in-reply-to:references :from:date:message-id:subject:to:cc; bh=C8zsQH1iZE9ofQ177mwz6YrF8E4iXgQIgG+iqXkz6PA=; b=J4XPQlA7YM1FexLWopAwUkIO00MkjrGO/zYzsSHuxCxDPuM+jcXP6Dwnq8bn2qb01m eTNPlBBQfKE8f+9XQA7FKJ6lnW14XdpYMAV6rq2ANupx4JFW1faLO3gYP54LJu2FHk07 IyBs69XobXZxHdjO0Q+G0THrwu7O3TTg5xxVR/Jiz/B8b7M/C7s6NS0C6+C6YxmdIogS nzlffBA7xxmGyZd9Eh4z7lrVfLyPxvQHs6mgzWzk9Qq8NWOgy5pHYj/G2MmxuvSTumnx OgWDvxtxKUK1dBvbkGh5fifjRD6s4b10p/E2BCEB4MCUer8PCpaflKO4yndUQDRGzzhM grhw== X-Gm-Message-State: AMke39lbSKNcQf9ePLUK8Esu3cDLrDyLSmys6SGzt9Fjo3NloK7Ir8nZLdiEN1iZxjI/1A== X-Received: by 10.28.74.194 with SMTP id n63mr10950564wmi.15.1488852856431; Mon, 06 Mar 2017 18:14:16 -0800 (PST) Received: from mail-wr0-f169.google.com (mail-wr0-f169.google.com. [209.85.128.169]) by smtp.gmail.com with ESMTPSA id w17sm29178873wra.28.2017.03.06.18.14.16 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 06 Mar 2017 18:14:16 -0800 (PST) Received: by mail-wr0-f169.google.com with SMTP id u108so129175782wrb.3; Mon, 06 Mar 2017 18:14:16 -0800 (PST) X-Received: by 10.223.160.243 with SMTP id n48mr18382615wrn.198.1488852856198; Mon, 06 Mar 2017 18:14:16 -0800 (PST) MIME-Version: 1.0 Reply-To: cem@freebsd.org Received: by 10.80.169.4 with HTTP; Mon, 6 Mar 2017 18:14:15 -0800 (PST) In-Reply-To: <201703061545.v26FjkNI027057@repo.freebsd.org> References: <201703061545.v26FjkNI027057@repo.freebsd.org> From: Conrad Meyer Date: Mon, 6 Mar 2017 18:14:15 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r314780 - head/lib/libpam/modules/pam_exec To: "Pedro F. Giffuni" Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 02:14:24 -0000 Thanks for fixing the commit log this way. It makes 'svn annotate' history correct. IMO this is strongly preferable to a "forced commit." Best, Conrad On Mon, Mar 6, 2017 at 7:45 AM, Pedro F. Giffuni wrote: > Author: pfg > Date: Mon Mar 6 15:45:46 2017 > New Revision: 314780 > URL: https://svnweb.freebsd.org/changeset/base/314780 > > Log: > libpam: extra bounds checking through reallocarray(3). > > Reviewed by: des > MFC after: 1 week > > Modified: > head/lib/libpam/modules/pam_exec/pam_exec.c > > Modified: head/lib/libpam/modules/pam_exec/pam_exec.c > ============================================================================== > --- head/lib/libpam/modules/pam_exec/pam_exec.c Mon Mar 6 15:42:03 2017 (r314779) > +++ head/lib/libpam/modules/pam_exec/pam_exec.c Mon Mar 6 15:45:46 2017 (r314780) > @@ -138,7 +138,7 @@ _pam_exec(pam_handle_t *pamh __unused, > nitems = sizeof(env_items) / sizeof(*env_items); > /* Count PAM return values put in the environment. */ > nitems_rv = options->return_prog_exit_status ? PAM_RV_COUNT : 0; > - tmp = realloc(envlist, (envlen + nitems + 1 + nitems_rv + 1) * > + tmp = reallocarray(envlist, envlen + nitems + 1 + nitems_rv + 1, > sizeof(*envlist)); > if (tmp == NULL) { > openpam_free_envlist(envlist); > From owner-svn-src-all@freebsd.org Tue Mar 7 02:16:42 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 24BACD00E7A; Tue, 7 Mar 2017 02:16:42 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E5B7C144D; Tue, 7 Mar 2017 02:16:41 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v272GeE6089043; Tue, 7 Mar 2017 02:16:40 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v272GeCM089041; Tue, 7 Mar 2017 02:16:40 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703070216.v272GeCM089041@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Tue, 7 Mar 2017 02:16:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314825 - stable/11/tools/build/mk X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 02:16:42 -0000 Author: ngie Date: Tue Mar 7 02:16:40 2017 New Revision: 314825 URL: https://svnweb.freebsd.org/changeset/base/314825 Log: MFC r314242: Remove MK_CRYPT stub It doesn't directly control what gets installed today; it indirectly pulls other knobs (like MK_KERBEROS, etc). Modified: stable/11/tools/build/mk/OptionalObsoleteFiles.inc Directory Properties: stable/11/ (props changed) Modified: stable/11/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- stable/11/tools/build/mk/OptionalObsoleteFiles.inc Tue Mar 7 02:02:51 2017 (r314824) +++ stable/11/tools/build/mk/OptionalObsoleteFiles.inc Tue Mar 7 02:16:40 2017 (r314825) @@ -1518,10 +1518,6 @@ OLD_FILES+=usr/bin/cpp OLD_FILES+=usr/share/man/man1/cpp.1.gz .endif -#.if ${MK_CRYPT} == no -# to be filled in -#.endif - .if ${MK_CTM} == no OLD_FILES+=usr/sbin/ctm OLD_FILES+=usr/sbin/ctm_dequeue From owner-svn-src-all@freebsd.org Tue Mar 7 02:17:39 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5E3E5D00F52; Tue, 7 Mar 2017 02:17:39 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2DDF21605; Tue, 7 Mar 2017 02:17:39 +0000 (UTC) (envelope-from jhibbits@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v272HckW089128; Tue, 7 Mar 2017 02:17:38 GMT (envelope-from jhibbits@FreeBSD.org) Received: (from jhibbits@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v272HceV089127; Tue, 7 Mar 2017 02:17:38 GMT (envelope-from jhibbits@FreeBSD.org) Message-Id: <201703070217.v272HceV089127@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: jhibbits set sender to jhibbits@FreeBSD.org using -f From: Justin Hibbits Date: Tue, 7 Mar 2017 02:17:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314826 - head/lib/csu/powerpc64 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 02:17:39 -0000 Author: jhibbits Date: Tue Mar 7 02:17:38 2017 New Revision: 314826 URL: https://svnweb.freebsd.org/changeset/base/314826 Log: Clang in base now supports -mlongcall, so remove this hack PR: 215947 MFC after: 2 weeks Modified: head/lib/csu/powerpc64/Makefile Modified: head/lib/csu/powerpc64/Makefile ============================================================================== --- head/lib/csu/powerpc64/Makefile Tue Mar 7 02:16:40 2017 (r314825) +++ head/lib/csu/powerpc64/Makefile Tue Mar 7 02:17:38 2017 (r314826) @@ -9,16 +9,6 @@ CFLAGS+= -I${.CURDIR:H}/common \ -I${SRCTOP}/lib/libc/include \ -mlongcall -# XXX: See the log for r232932 as to why the above -mlongcall is needed. Since -# clang doesn't support -mlongcall, and testing shows a clang linked with a -# clang-built csu segfaults, this must currently be compiled with gcc. Once -# clang supports -mlongcall, or we get a fixed ld, this can be revisited. -.include -.if ${COMPILER_TYPE} != "gcc" -CC:= gcc -COMPILER_TYPE:= gcc -.endif - FILES= ${OBJS} FILESMODE= ${LIBMODE} FILESOWN= ${LIBOWN} From owner-svn-src-all@freebsd.org Tue Mar 7 03:00:26 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 6AB8FD00B9D; Tue, 7 Mar 2017 03:00:26 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 19D9B1627; Tue, 7 Mar 2017 03:00:25 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v2730NYx091880; Mon, 6 Mar 2017 19:00:23 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v2730N2F091879; Mon, 6 Mar 2017 19:00:23 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703070300.v2730N2F091879@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314819 - stable/11/lib/libutil In-Reply-To: <201703070158.v271wdmF080884@repo.freebsd.org> To: Ngie Cooper Date: Mon, 6 Mar 2017 19:00:23 -0800 (PST) CC: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 03:00:26 -0000 [ Charset UTF-8 unsupported, converting... ] > Author: ngie > Date: Tue Mar 7 01:58:39 2017 > New Revision: 314819 > URL: https://svnweb.freebsd.org/changeset/base/314819 > > Log: > MFC r313438: > > Clean up trailing and leading whitespace for variables to make it > consistent with the rest of the file and style.Makefile(9) a bit > more > > Modified: > stable/11/lib/libutil/Makefile > Directory Properties: > stable/11/ (props changed) > > Modified: stable/11/lib/libutil/Makefile > ============================================================================== > --- stable/11/lib/libutil/Makefile Tue Mar 7 01:52:56 2017 (r314818) > +++ stable/11/lib/libutil/Makefile Tue Mar 7 01:58:39 2017 (r314819) > @@ -35,7 +35,7 @@ MAN+= expand_number.3 flopen.3 fparseln. > property.3 pty.3 quotafile.3 realhostname.3 realhostname_sa.3 \ > _secure_path.3 trimdomain.3 uucplock.3 pw_util.3 > MAN+= login.conf.5 > -MLINKS+= kld.3 kld_isloaded.3 kld.3 kld_load.3 > +MLINKS+=kld.3 kld_isloaded.3 kld.3 kld_load.3 > MLINKS+=login_auth.3 auth_cat.3 login_auth.3 auth_checknologin.3 > MLINKS+=login_cap.3 login_close.3 login_cap.3 login_getcapbool.3 \ Thats actually counter style.Makefile(9), Normally you have a tab here, or a space should the variable name extend beyond column 9. > login_cap.3 login_getcaplist.3 login_cap.3 login_getcapnum.3 \ > @@ -57,9 +57,9 @@ MLINKS+=pidfile.3 pidfile_close.3 \ > pidfile.3 pidfile_open.3 \ > pidfile.3 pidfile_remove.3 \ > pidfile.3 pidfile_write.3 > -MLINKS+= property.3 property_find.3 property.3 properties_free.3 > -MLINKS+= property.3 properties_read.3 > -MLINKS+= pty.3 forkpty.3 pty.3 openpty.3 > +MLINKS+=property.3 property_find.3 property.3 properties_free.3 > +MLINKS+=property.3 properties_read.3 > +MLINKS+=pty.3 forkpty.3 pty.3 openpty.3 Ditto. > MLINKS+=quotafile.3 quota_close.3 \ > quotafile.3 quota_fsname.3 \ > quotafile.3 quota_open.3 \ > @@ -69,7 +69,7 @@ MLINKS+=quotafile.3 quota_close.3 \ > quotafile.3 quota_write_limits.3 \ > quotafile.3 quota_write_usage.3 > MLINKS+=uucplock.3 uu_lock.3 uucplock.3 uu_lock_txfr.3 \ > - uucplock.3 uu_lockerr.3 uucplock.3 uu_unlock.3 > + uucplock.3 uu_lockerr.3 uucplock.3 uu_unlock.3 > MLINKS+=pw_util.3 pw_copy.3 \ > pw_util.3 pw_dup.3 \ > pw_util.3 pw_edit.3 \ > -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Mar 7 03:01:11 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 220DCD00CA5; Tue, 7 Mar 2017 03:01:11 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id E56A61A00; Tue, 7 Mar 2017 03:01:10 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v2731AOE007907; Tue, 7 Mar 2017 03:01:10 GMT (envelope-from ae@FreeBSD.org) Received: (from ae@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v2731A4V007906; Tue, 7 Mar 2017 03:01:10 GMT (envelope-from ae@FreeBSD.org) Message-Id: <201703070301.v2731A4V007906@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org using -f From: "Andrey V. Elsukov" Date: Tue, 7 Mar 2017 03:01:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314827 - stable/11/sys/netinet6 X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 03:01:11 -0000 Author: ae Date: Tue Mar 7 03:01:09 2017 New Revision: 314827 URL: https://svnweb.freebsd.org/changeset/base/314827 Log: MFC r314430: When IPv6 fragments reassembly is complete, update mbuf's csum_data and csum_flags using information from all fragments. This fixes dropping of reassembled packets due to wrong checksum when the IPv6 checksum offloading is enabled on a network card. Modified: stable/11/sys/netinet6/frag6.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/netinet6/frag6.c ============================================================================== --- stable/11/sys/netinet6/frag6.c Tue Mar 7 02:17:38 2017 (r314826) +++ stable/11/sys/netinet6/frag6.c Tue Mar 7 03:01:09 2017 (r314827) @@ -528,6 +528,11 @@ insert: af6 = ip6af->ip6af_down; frag6_deq(ip6af); while (af6 != (struct ip6asfrag *)q6) { + m->m_pkthdr.csum_flags &= + IP6_REASS_MBUF(af6)->m_pkthdr.csum_flags; + m->m_pkthdr.csum_data += + IP6_REASS_MBUF(af6)->m_pkthdr.csum_data; + af6dwn = af6->ip6af_down; frag6_deq(af6); while (t->m_next) @@ -538,6 +543,10 @@ insert: af6 = af6dwn; } + while (m->m_pkthdr.csum_data & 0xffff0000) + m->m_pkthdr.csum_data = (m->m_pkthdr.csum_data & 0xffff) + + (m->m_pkthdr.csum_data >> 16); + /* adjust offset to point where the original next header starts */ offset = ip6af->ip6af_offset - sizeof(struct ip6_frag); free(ip6af, M_FTABLE); From owner-svn-src-all@freebsd.org Tue Mar 7 03:08:44 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 681BED0045F; Tue, 7 Mar 2017 03:08:44 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pg0-x244.google.com (mail-pg0-x244.google.com [IPv6:2607:f8b0:400e:c05::244]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 3593814B1; Tue, 7 Mar 2017 03:08:44 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pg0-x244.google.com with SMTP id b5so4663043pgg.1; Mon, 06 Mar 2017 19:08:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:mime-version:from:in-reply-to:date:cc:message-id:references :to; bh=SQhwi73/pXfNGUlNXQuNzJvoRbfzskMEndUmtbvfkXo=; b=YxowizEdo5BBL957an/wvyMNIaU71PwG0bqb2UPrdz6pqAhRG5fZwYx/SbLuge+urS AYsc+RiGH+brk5VLEVGCudqZM647f421OK1JgVJBD2UnRqWKOGRJYRb6sKaMUTc+5Vxp QCE/DV7JPcco46w6DHrkVgjbipWSSjly/c5zqP6vuu3J4yqQDIEYrteI4YGxDl8b/B/e CH+yFsfogJLtQulXbVmKofoDtbVhGdzNDde3cHgP2q4v7Ui7wVQQDJY5Jadmt6b0xYaZ gLr6ZiauWUniZJ79cn5KmHZW/85DGFumzr/HejG5/598kxqwYNNVGZCGOFTzuxonnjpQ cxnA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:mime-version:from:in-reply-to:date:cc :message-id:references:to; bh=SQhwi73/pXfNGUlNXQuNzJvoRbfzskMEndUmtbvfkXo=; b=VTgj41QjOoS9BAi7kVGWZEv3TqyYF6UIWO7tD2Cbm+XTm5aHO3RdkHvXI2rLsxH9Wo KJ54QpjaevziTNCX2S1OXbAQLmd5YTp3/wjYKrnZSnOkX9MHYgWuP5kp7yo6DJmhmE7m i83IuQrnlIqvZjmVwFPpnpW8EudR2C7OODVNCZXvawvox62hnaIng5iK7ylrc1aQshlQ LNYEGzM7/6onc8a/Lqy5lH8xihnFxMQqiOWzTcEuKk4hwvzDt4Sfe4m2pWBvoz1rge3j brjUd9fQb3tp9Y+CEKI/ZHoDUdi2FZ6ceWCKduRujewH2RTJCR22yhlob7+5p4V+a8n8 Afgg== X-Gm-Message-State: AMke39kPuLXBLyAaruOrCfStOvbvaovNlBSIJ5mgQw99Oi+l8Mvy0ZaLgiVThMFHgTXMbg== X-Received: by 10.84.199.170 with SMTP id r39mr31533883pld.144.1488856123413; Mon, 06 Mar 2017 19:08:43 -0800 (PST) Received: from pinklady.local (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id t6sm42394464pgo.42.2017.03.06.19.08.42 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 06 Mar 2017 19:08:42 -0800 (PST) Subject: Re: svn commit: r314813 - head/sys/kern Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Content-Type: multipart/signed; boundary="Apple-Mail=_EC34DEF2-B0E7-49DF-9080-3BD8406A1988"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail From: "Ngie Cooper (yaneurabeya)" In-Reply-To: <201703070020.v270K2vA039655@repo.freebsd.org> Date: Mon, 6 Mar 2017 19:08:41 -0800 Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-Id: <9747B513-8D23-487D-8FF9-721265C1CF44@gmail.com> References: <201703070020.v270K2vA039655@repo.freebsd.org> To: Hiren Panchasara X-Mailer: Apple Mail (2.3124) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 03:08:44 -0000 --Apple-Mail=_EC34DEF2-B0E7-49DF-9080-3BD8406A1988 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Mar 6, 2017, at 16:20, Hiren Panchasara wrote: >=20 > Author: hiren > Date: Tue Mar 7 00:20:01 2017 > New Revision: 314813 > URL: https://svnweb.freebsd.org/changeset/base/314813 >=20 > Log: > We've found a recurring problem where some userland process would be > stuck spinning at 100% cpu around sbcut_internal(). Inside > sbflush_internal(), sb_ccc reached to about 4GB and before passing it > to sbcut_internal(), we type-cast it from uint to int making it -ve. >=20 > The root cause of sockbuf growing this large is unknown. Correct fix > is also not clear but based on mailing list discussions, adding > KASSERTs to panic instead of looping endlessly. >=20 > Reviewed by: glebius > Sponsored by: Limelight Networks >=20 > Modified: > head/sys/kern/uipc_sockbuf.c >=20 > Modified: head/sys/kern/uipc_sockbuf.c > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/sys/kern/uipc_sockbuf.c Tue Mar 7 00:13:53 2017 = (r314812) > +++ head/sys/kern/uipc_sockbuf.c Tue Mar 7 00:20:01 2017 = (r314813) > @@ -1043,6 +1043,11 @@ sbcut_internal(struct sockbuf *sb, int l > { > struct mbuf *m, *next, *mfree; >=20 > + KASSERT(len > 0, ("%s: len is %d but it is supposed to be +ve", > + __func__, len)); > + KASSERT(len <=3D sb->sb_ccc, ("%s: len: %d is > ccc: %u", > + __func__, len, sb->sb_ccc)); > + > next =3D (m =3D sb->sb_mb) ? m->m_nextpkt : 0; > mfree =3D NULL; The KASSERT is bad =E2=80=94 please fix it. =46rom = https://ci.freebsd.org/job/FreeBSD-head-amd64-test/1994/console : add host 127.0.0.1panic: sbcut_internal: len is 0 but it is supposed to = be +ve --Apple-Mail=_EC34DEF2-B0E7-49DF-9080-3BD8406A1988 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJYviQ5AAoJEPWDqSZpMIYVeYUQALIxYiXbyF61wxGb1r7weTnV Sa3SIHJH5hB/V93SH6kBrRNySSn5wjIl189Y+monm/lf7klVrC4XKCLTMz3o+rOp EzPVQ8Ept2VZlh83T6jFOOsrLSXpla4la/duuE26EFKJKQ2x6aVG3U9JUeNOyQnB db4yPl8Sxzn9FdOR8O5KU5TCh7i3uABD+kjWVpio9afUSsuuZ/OdPeg5mkNlihSO XoZYENxuh6gYeet/6rM1Z13qGEE2/pY1qaIcXFJooapOG8cNH2sjixgGIZsmJ4nq HvuNiZzMIQD9MJ2Nr79M4Wjs1+PwlfNGUuCoKjtjouUTJCpMbIysmRezFf+5ywuF QWv9al5Nm3vaqZGnA5WTtbpp9NGFwa1dgxrStt6vbaGpaJ49WGh+XySvgAkcH7mu 7rvtFhyBDWkUWyaFKLpCHKRyTwSXQYVeu24k+wiRxgZfjYAj9fZxVZJdu8d8x4gR bArHETl0s/EoEiPM0BMFjajj2gOLoWdb7/EZyR6oZO0Eq4gIFlXXCbQtvBysjhxx S5NOdfmh6LBXluiogCr+dU3vuRNAvKJIaT7LNG7kB1uxjnDNg+3MTDehExuW6OEx Fpzmh/0qdLyDljBk5hrZasws9ia0ekZsGtWVb4w4vp1XrvanOeaaYpg2WZydX4dD 9x7o/8Kb2NGF1gDxYmsJ =uFEH -----END PGP SIGNATURE----- --Apple-Mail=_EC34DEF2-B0E7-49DF-9080-3BD8406A1988-- From owner-svn-src-all@freebsd.org Tue Mar 7 03:10:51 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 04B52D00577; Tue, 7 Mar 2017 03:10:51 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pf0-x244.google.com (mail-pf0-x244.google.com [IPv6:2607:f8b0:400e:c00::244]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id CACE216BD; Tue, 7 Mar 2017 03:10:50 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pf0-x244.google.com with SMTP id o126so5386045pfb.1; Mon, 06 Mar 2017 19:10:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:mime-version:from:in-reply-to:date:cc:message-id:references :to; bh=dVNuX8zpi48li/lEo3X/0JgL69t0JxvK2xFqwzNRNJs=; b=CNz1QPzkJ6y9d4Q8cT7VoqQ3eYAo9AngqTqqgmgLUeiSxblWV+ZPNZABhozdMKCrba iCywnJ8Ver7Y2CLiPFOpKkUW5U5toxLaGq2Tr2ykfDHv0kgytnVJtL5YO3ApG3YizPGH pk7Ror3LeTsvzhNo9CoDVvaMIUfoTG1mUwgYaZrcD8PTu5hu15Zmx45TRrvBjmvfGkv4 3SVt+/Kv/zSrF4bGr9oJRWY39mtqrRnonJDBtTanPpTTmyIbe57MDc83s3q1wae4KrHf 4yHfaz9g6AFDMRX5xVrQEJWio0fKmC7c0EX4/eHb93KTAdxkoZl9OK79TGdPLMCMKIr0 h3GA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:mime-version:from:in-reply-to:date:cc :message-id:references:to; bh=dVNuX8zpi48li/lEo3X/0JgL69t0JxvK2xFqwzNRNJs=; b=VIrz7KC2gCL6ce2UTAqwWOnAYRL8CwJKSC6dDJ9CKWQ6ueFi6ezx8vtCZJz/TtqE9W 71CTzISdiPkol0IxiCUDPFrCEDYd59wIcpNUq99MqQ/KVGAKBNIaBfoNyOqM2ARBKPm1 9/J7IAtPhJH0zm7HC8j+aMnhqHlWWeeQ+yjDGdokylMydNntIKHrLS4S//Q6H5PHMSaY MlovaD98h7s+IAqYLVgifelZGhJkHw+U1rm91a4001o2etzaSCgi73XtqKzrTpHfnXqp 87WfTB91ZuMiCVx6PKt//DUY1yLFCzVeNDSE80pNqd7gPazss7RBH3sobhGBemSmZLJs tzgA== X-Gm-Message-State: AMke39kj3oYTz0xRfs7B8g4V7r7dXYJVXBLnBFm+VIdhmxy+gEKTHGvv67alNjWCY7HuIA== X-Received: by 10.84.137.169 with SMTP id 38mr31900859pln.125.1488856250173; Mon, 06 Mar 2017 19:10:50 -0800 (PST) Received: from pinklady.local (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id t5sm24800153pgb.36.2017.03.06.19.10.49 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 06 Mar 2017 19:10:49 -0800 (PST) Subject: Re: svn commit: r314819 - stable/11/lib/libutil Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Content-Type: multipart/signed; boundary="Apple-Mail=_D269F9CB-A031-4221-B61D-397AD5F26863"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail From: "Ngie Cooper (yaneurabeya)" In-Reply-To: <201703070300.v2730N2F091879@pdx.rh.CN85.dnsmgr.net> Date: Mon, 6 Mar 2017 19:10:48 -0800 Cc: Ngie Cooper , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Message-Id: <1DB4959E-059E-40FB-96EB-67DCDE9BBAA0@gmail.com> References: <201703070300.v2730N2F091879@pdx.rh.CN85.dnsmgr.net> To: rgrimes@freebsd.org X-Mailer: Apple Mail (2.3124) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 03:10:51 -0000 --Apple-Mail=_D269F9CB-A031-4221-B61D-397AD5F26863 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Mar 6, 2017, at 19:00, Rodney W. Grimes = wrote: >=20 > [ Charset UTF-8 unsupported, converting... ] >> Author: ngie >> Date: Tue Mar 7 01:58:39 2017 >> New Revision: 314819 >> URL: https://svnweb.freebsd.org/changeset/base/314819 >>=20 >> Log: >> MFC r313438: >>=20 >> Clean up trailing and leading whitespace for variables to make it >> consistent with the rest of the file and style.Makefile(9) a bit >> more >>=20 >> Modified: >> stable/11/lib/libutil/Makefile >> Directory Properties: >> stable/11/ (props changed) >>=20 >> Modified: stable/11/lib/libutil/Makefile >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- stable/11/lib/libutil/Makefile Tue Mar 7 01:52:56 2017 = (r314818) >> +++ stable/11/lib/libutil/Makefile Tue Mar 7 01:58:39 2017 = (r314819) >> @@ -35,7 +35,7 @@ MAN+=3D expand_number.3 flopen.3 fparseln. >> property.3 pty.3 quotafile.3 realhostname.3 realhostname_sa.3 \ >> _secure_path.3 trimdomain.3 uucplock.3 pw_util.3 >> MAN+=3D login.conf.5 >> -MLINKS+=3D kld.3 kld_isloaded.3 kld.3 kld_load.3 >> +MLINKS+=3Dkld.3 kld_isloaded.3 kld.3 kld_load.3 >> MLINKS+=3Dlogin_auth.3 auth_cat.3 login_auth.3 auth_checknologin.3 >> MLINKS+=3Dlogin_cap.3 login_close.3 login_cap.3 login_getcapbool.3 \ >=20 > Thats actually counter style.Makefile(9), Normally you have a tab = here, > or a space should the variable name extend beyond column 9. >=20 >> login_cap.3 login_getcaplist.3 login_cap.3 login_getcapnum.3 \ >> @@ -57,9 +57,9 @@ MLINKS+=3Dpidfile.3 pidfile_close.3 \ >> pidfile.3 pidfile_open.3 \ >> pidfile.3 pidfile_remove.3 \ >> pidfile.3 pidfile_write.3 >> -MLINKS+=3D property.3 property_find.3 property.3 properties_free.3 >> -MLINKS+=3D property.3 properties_read.3 >> -MLINKS+=3D pty.3 forkpty.3 pty.3 openpty.3 >> +MLINKS+=3Dproperty.3 property_find.3 property.3 properties_free.3 >> +MLINKS+=3Dproperty.3 properties_read.3 >> +MLINKS+=3Dpty.3 forkpty.3 pty.3 openpty.3 >=20 > Ditto. Yeah, I tried to leave things alone (except is surrounding areas for the = following change), but I=E2=80=99ll go and hack away at the Makefile = some more. Thanks, -Ngie --Apple-Mail=_D269F9CB-A031-4221-B61D-397AD5F26863 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJYviS4AAoJEPWDqSZpMIYVJDEP/1UwAsSK2dQzUf5nh+9IYsex zg3q3x+EXO+uT7DSUTwmpID9xWOD20T4Leux21BN3CQwdC+XOW5VXiLnYUoQozA6 xG7IyE94wyL96TcXa0xvphpXOzING1Kfifp+MopI5Eg8GAWJ5m1nnVFslmRtfTg7 +mQxNHiKf1kWGByzgLnBFY8vCy0RJ7mH3B0UmenfcCGTT10An+ZHjSKXPiZRxRHc ADRSoe4NIO9t0NgDlMW56sgEEAx1WmYjxShXs+PbpXh8FdtNC5u1tp5eYJizXC9Q 6DRoHbvSJ8zWrugc3V4p09I3ru/HSkWs5jzMhNpa9+QjM8ycneJdLHb97VP0dPB0 HwuvdZJgZwDZBa3QHrOvkyxpNu8X/nmy7Po0RcrIrLvupgeCn92KUMyzgh5WLMpV gIRyRJu7nvEggosPKRP+hmA3dN2vNqKOnEfE/FDURCbF0cXSpp1YVLLGDmNmOWKL kyXnqm6PetQ3d/5bIDsvcb+m1myP6iYpwbf3fcYCw4BPA2lzYj/EI3UD3/vU89vl tZTcBo2hPgkpi+9WZ1tqnDeHmH2YiTLpqq9GcrP8hiVe8Z5v0N7tRkaCtZCpjHRG nkFfE0YFDMSw3wyADLRSRLatq1sLwAi8DruySFn5+LOTtEkLwrXFMcprY9/84Wr6 4RoKxTxjpQ+OHcKzZmGO =Yc+2 -----END PGP SIGNATURE----- --Apple-Mail=_D269F9CB-A031-4221-B61D-397AD5F26863-- From owner-svn-src-all@freebsd.org Tue Mar 7 03:15:10 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C2CC8D0096C; Tue, 7 Mar 2017 03:15:10 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pg0-x242.google.com (mail-pg0-x242.google.com [IPv6:2607:f8b0:400e:c05::242]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 8F3E31C3B; Tue, 7 Mar 2017 03:15:10 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pg0-x242.google.com with SMTP id b5so4676682pgg.1; Mon, 06 Mar 2017 19:15:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:mime-version:from:in-reply-to:date:cc:message-id:references :to; bh=rzftuUUY7Tg5nokXKu9R4n9fFKjWinBD7IWOfgtsfqk=; b=SauNQXgJ7AAS3AHLnMEM/R2j6ZNlUJQyXDWirgNA6X+2p7zM3DfsR6613vX+ZNMz+R RT8Dtsb3czPpSA54MPE8Jac8GLKTDFOiK3Nw432c28wH0rnjVmQ3TpAHdq1+dIa3LHJ0 3WN67PR+c3Y9n/y4Py6c03H+9o3nUMU0xVQHPtWgSdm6FJe3q9GXB2dYMuzdek+xiG/z TJw63goDqWt4Cexq3giDPOKknH46QAGmUb3gUl/M+JWa8KrnFwRRzv2EiK5hGEaZZgu/ tNKO2muFBZQJu+6q3fLdSBebjREjZGQtx/y0Glcjeax2DEjZH2cJweJ4yXCK7iUo+8Qv MA0g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:mime-version:from:in-reply-to:date:cc :message-id:references:to; bh=rzftuUUY7Tg5nokXKu9R4n9fFKjWinBD7IWOfgtsfqk=; b=GVaWamlYBE6O4pU+wbZrFTXupbZrku1cpladkWlxoMzU3OLuIt7QC3Fz0ippzvZKjr j/PS1hm0TGVkUgcBAVuDUGnKxnQZHi6v51qIfBhox4MikW8hnuYE/fWboxt99HC3BnZB I2MdZZJqyzalW/ZJQc+dQveocJl785q6+sBPwFfr8YeLp5yowGLYj6e7ZjSNwaz3VQ3c 0qAXuCD1EH6adJbEXPrxQIk+wcmFQBGx6PIQvuKc7DXVcCpZa3LCJNyrHmldmYR+p9BD cLhzXnAMvA+oAUpO+kDmB7MuHT2Fb3NJ6/PA2UNuvlkWlSSTldkV6Zoaq9ePY9yIbH4D aJpw== X-Gm-Message-State: AMke39nuaa0DcsZonVHg/oYhydjDnjqQq9pYZdG+igo2R00NJX5y5zgXVCS6V/qZX3fs1w== X-Received: by 10.99.121.78 with SMTP id u75mr24552671pgc.202.1488856509903; Mon, 06 Mar 2017 19:15:09 -0800 (PST) Received: from pinklady.local (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id 74sm12191663pge.14.2017.03.06.19.15.08 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 06 Mar 2017 19:15:09 -0800 (PST) Subject: Re: svn commit: r314819 - stable/11/lib/libutil Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Content-Type: multipart/signed; boundary="Apple-Mail=_8D89B284-D983-45BF-87EF-8196243D664C"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail From: "Ngie Cooper (yaneurabeya)" In-Reply-To: <1DB4959E-059E-40FB-96EB-67DCDE9BBAA0@gmail.com> Date: Mon, 6 Mar 2017 19:15:08 -0800 Cc: Ngie Cooper , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Message-Id: <699FBEE3-2379-414E-9E50-C3F726212949@gmail.com> References: <201703070300.v2730N2F091879@pdx.rh.CN85.dnsmgr.net> <1DB4959E-059E-40FB-96EB-67DCDE9BBAA0@gmail.com> To: rgrimes@freebsd.org X-Mailer: Apple Mail (2.3124) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 03:15:10 -0000 --Apple-Mail=_8D89B284-D983-45BF-87EF-8196243D664C Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Mar 6, 2017, at 19:10, Ngie Cooper (yaneurabeya) = wrote: >=20 >>=20 >> On Mar 6, 2017, at 19:00, Rodney W. Grimes = wrote: >>=20 >> [ Charset UTF-8 unsupported, converting... ] >>> Author: ngie >>> Date: Tue Mar 7 01:58:39 2017 >>> New Revision: 314819 >>> URL: https://svnweb.freebsd.org/changeset/base/314819 >>>=20 >>> Log: >>> MFC r313438: >>>=20 >>> Clean up trailing and leading whitespace for variables to make it >>> consistent with the rest of the file and style.Makefile(9) a bit >>> more >>>=20 >>> Modified: >>> stable/11/lib/libutil/Makefile >>> Directory Properties: >>> stable/11/ (props changed) >>>=20 >>> Modified: stable/11/lib/libutil/Makefile >>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>> --- stable/11/lib/libutil/Makefile Tue Mar 7 01:52:56 2017 = (r314818) >>> +++ stable/11/lib/libutil/Makefile Tue Mar 7 01:58:39 2017 = (r314819) >>> @@ -35,7 +35,7 @@ MAN+=3D expand_number.3 flopen.3 fparseln. >>> property.3 pty.3 quotafile.3 realhostname.3 realhostname_sa.3 \ >>> _secure_path.3 trimdomain.3 uucplock.3 pw_util.3 >>> MAN+=3D login.conf.5 >>> -MLINKS+=3D kld.3 kld_isloaded.3 kld.3 kld_load.3 >>> +MLINKS+=3Dkld.3 kld_isloaded.3 kld.3 kld_load.3 >>> MLINKS+=3Dlogin_auth.3 auth_cat.3 login_auth.3 auth_checknologin.3 >>> MLINKS+=3Dlogin_cap.3 login_close.3 login_cap.3 login_getcapbool.3 \ >>=20 >> Thats actually counter style.Makefile(9), Normally you have a tab = here, >> or a space should the variable name extend beyond column 9. >>=20 >>> login_cap.3 login_getcaplist.3 login_cap.3 login_getcapnum.3 \ >>> @@ -57,9 +57,9 @@ MLINKS+=3Dpidfile.3 pidfile_close.3 \ >>> pidfile.3 pidfile_open.3 \ >>> pidfile.3 pidfile_remove.3 \ >>> pidfile.3 pidfile_write.3 >>> -MLINKS+=3D property.3 property_find.3 property.3 properties_free.3 >>> -MLINKS+=3D property.3 properties_read.3 >>> -MLINKS+=3D pty.3 forkpty.3 pty.3 openpty.3 >>> +MLINKS+=3Dproperty.3 property_find.3 property.3 properties_free.3 >>> +MLINKS+=3Dproperty.3 properties_read.3 >>> +MLINKS+=3Dpty.3 forkpty.3 pty.3 openpty.3 >>=20 >> Ditto. >=20 > Yeah, I tried to leave things alone (except is surrounding areas for = the following change), but I=E2=80=99ll go and hack away at the Makefile = some more. > Thanks, Actually, on second thought, I=E2=80=99m not going to modify the = Makefile to just introduce gratuitous whitespace. If I need to touch = this again, I=E2=80=99ll do it, but it doesn=E2=80=99t make sense = churning over this Makefile like that (it=E2=80=99s a mishmash of = different =E2=80=9Cstyles=E2=80=9D). Thanks, -Ngie --Apple-Mail=_8D89B284-D983-45BF-87EF-8196243D664C Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJYviW8AAoJEPWDqSZpMIYVGiUP/3uyhF0Q75I8cK8eJ6gGlXYF EHt9eMwl9tarylGmAvhJXvTXsPBpQ8AfzqfmDvRkVq72iUBWuZVWOgyhoDTL+VsK HM4U/6WSntxlGxLOEIu2l1jRR5G0zQQCtoECDxZvL8b8ZXWunbQvNpG8ubLUjKy8 rN7jSWs9mJ0lHW6AcmRoImTRkrvjhkJITsxTLNfzyZxn+0IiJbxhjFi1pZtLNrXe b//d4ATjtjv1CKnQ1dkWTaDPoKAsOVp80ZlJLGRiyQ3nWSxBQ6AGaKGsdTK2qgl6 3ve/73n9x48kf2Seb+9UvQ6gniluDzeKKBlXQcilQL1q8rg58XMHqoFyPhoTvu07 /KVljo5zgFnHhAcLK1rHTlkBbVh0YecFoFa+BFexB784oz+ghGAYsTPoNARJNm48 cUB7MkPtBBJwa/DJWxvUYgelY0+XSsuNNrrRuKksIe82uD9lPufJxwxp6+Czx4/l rSV7jgwqUee6qPH9WIslRu1kFS3AhBus6l3Swi2DM/Z4ajXOuTWWXfo99G6NIlpv eRsP0Ih4dsT80DCO3wr+67p7uwcE5vtH8Du3XgDJXl4fCLNUfkJPslgj9PQAecuD g+wfR6Ko72Fq8bd66Pc8y015jZ6WKhZ0zRtqcHnE6k8F74nzgzwjXE2KPIstdQiR 8C374qQmtvAGZiXIirna =+6t9 -----END PGP SIGNATURE----- --Apple-Mail=_8D89B284-D983-45BF-87EF-8196243D664C-- From owner-svn-src-all@freebsd.org Tue Mar 7 03:21:29 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DC53FD00C19; Tue, 7 Mar 2017 03:21:29 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8B0701F35; Tue, 7 Mar 2017 03:21:28 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v273LRuW092049; Mon, 6 Mar 2017 19:21:27 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v273LRb5092048; Mon, 6 Mar 2017 19:21:27 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703070321.v273LRb5092048@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314819 - stable/11/lib/libutil In-Reply-To: <1DB4959E-059E-40FB-96EB-67DCDE9BBAA0@gmail.com> To: "Ngie Cooper (yaneurabeya)" Date: Mon, 6 Mar 2017 19:21:27 -0800 (PST) CC: rgrimes@freebsd.org, Ngie Cooper , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 03:21:30 -0000 [ Charset UTF-8 unsupported, converting... ] > > > On Mar 6, 2017, at 19:00, Rodney W. Grimes wrote: > > > > [ Charset UTF-8 unsupported, converting... ] > >> Author: ngie > >> Date: Tue Mar 7 01:58:39 2017 > >> New Revision: 314819 > >> URL: https://svnweb.freebsd.org/changeset/base/314819 > >> > >> Log: > >> MFC r313438: > >> > >> Clean up trailing and leading whitespace for variables to make it > >> consistent with the rest of the file and style.Makefile(9) a bit > >> more > >> > >> Modified: > >> stable/11/lib/libutil/Makefile > >> Directory Properties: > >> stable/11/ (props changed) > >> > >> Modified: stable/11/lib/libutil/Makefile > >> ============================================================================== > >> --- stable/11/lib/libutil/Makefile Tue Mar 7 01:52:56 2017 (r314818) > >> +++ stable/11/lib/libutil/Makefile Tue Mar 7 01:58:39 2017 (r314819) > >> @@ -35,7 +35,7 @@ MAN+= expand_number.3 flopen.3 fparseln. > >> property.3 pty.3 quotafile.3 realhostname.3 realhostname_sa.3 \ > >> _secure_path.3 trimdomain.3 uucplock.3 pw_util.3 > >> MAN+= login.conf.5 > >> -MLINKS+= kld.3 kld_isloaded.3 kld.3 kld_load.3 > >> +MLINKS+=kld.3 kld_isloaded.3 kld.3 kld_load.3 > >> MLINKS+=login_auth.3 auth_cat.3 login_auth.3 auth_checknologin.3 > >> MLINKS+=login_cap.3 login_close.3 login_cap.3 login_getcapbool.3 \ > > > > Thats actually counter style.Makefile(9), Normally you have a tab here, > > or a space should the variable name extend beyond column 9. > > > >> login_cap.3 login_getcaplist.3 login_cap.3 login_getcapnum.3 \ > >> @@ -57,9 +57,9 @@ MLINKS+=pidfile.3 pidfile_close.3 \ > >> pidfile.3 pidfile_open.3 \ > >> pidfile.3 pidfile_remove.3 \ > >> pidfile.3 pidfile_write.3 > >> -MLINKS+= property.3 property_find.3 property.3 properties_free.3 > >> -MLINKS+= property.3 properties_read.3 > >> -MLINKS+= pty.3 forkpty.3 pty.3 openpty.3 > >> +MLINKS+=property.3 property_find.3 property.3 properties_free.3 > >> +MLINKS+=property.3 properties_read.3 > >> +MLINKS+=pty.3 forkpty.3 pty.3 openpty.3 > > > > Ditto. > > Yeah, I tried to leave things alone (except is surrounding areas for the following change), but I?ll go and hack away at the Makefile some more. > Thanks, Its fine to counter style.Makefile(9) if these results in a minimized diff for work your doing in the Makefile, but then the commit should say something like ignoring style.Makeifle(9) to minimize diff. I am fine with that, its just you stated a style(9).Makefile cleanup and thats not what this commit does. Several of my absolute to relative symbolic link fixes coming well have that very issue, basically I ignored all the style errors I was seeing and just fixed my goal keeping the style of the Makefile exactly as it was. > -Ngie -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Mar 7 03:31:40 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DC5B7D00FE5; Tue, 7 Mar 2017 03:31:40 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9456714E6; Tue, 7 Mar 2017 03:31:40 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v273Vcia092093; Mon, 6 Mar 2017 19:31:38 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v273VcBc092092; Mon, 6 Mar 2017 19:31:38 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703070331.v273VcBc092092@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314819 - stable/11/lib/libutil In-Reply-To: <699FBEE3-2379-414E-9E50-C3F726212949@gmail.com> To: "Ngie Cooper (yaneurabeya)" Date: Mon, 6 Mar 2017 19:31:38 -0800 (PST) CC: rgrimes@freebsd.org, Ngie Cooper , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 03:31:41 -0000 [ Charset UTF-8 unsupported, converting... ] > > > On Mar 6, 2017, at 19:10, Ngie Cooper (yaneurabeya) wrote: > > > >> > >> On Mar 6, 2017, at 19:00, Rodney W. Grimes wrote: > >> > >> [ Charset UTF-8 unsupported, converting... ] > >>> Author: ngie > >>> Date: Tue Mar 7 01:58:39 2017 > >>> New Revision: 314819 > >>> URL: https://svnweb.freebsd.org/changeset/base/314819 > >>> > >>> Log: > >>> MFC r313438: > >>> > >>> Clean up trailing and leading whitespace for variables to make it > >>> consistent with the rest of the file and style.Makefile(9) a bit > >>> more > >>> > >>> Modified: > >>> stable/11/lib/libutil/Makefile > >>> Directory Properties: > >>> stable/11/ (props changed) > >>> > >>> Modified: stable/11/lib/libutil/Makefile > >>> ============================================================================== > >>> --- stable/11/lib/libutil/Makefile Tue Mar 7 01:52:56 2017 (r314818) > >>> +++ stable/11/lib/libutil/Makefile Tue Mar 7 01:58:39 2017 (r314819) > >>> @@ -35,7 +35,7 @@ MAN+= expand_number.3 flopen.3 fparseln. > >>> property.3 pty.3 quotafile.3 realhostname.3 realhostname_sa.3 \ > >>> _secure_path.3 trimdomain.3 uucplock.3 pw_util.3 > >>> MAN+= login.conf.5 > >>> -MLINKS+= kld.3 kld_isloaded.3 kld.3 kld_load.3 > >>> +MLINKS+=kld.3 kld_isloaded.3 kld.3 kld_load.3 > >>> MLINKS+=login_auth.3 auth_cat.3 login_auth.3 auth_checknologin.3 > >>> MLINKS+=login_cap.3 login_close.3 login_cap.3 login_getcapbool.3 \ > >> > >> Thats actually counter style.Makefile(9), Normally you have a tab here, > >> or a space should the variable name extend beyond column 9. > >> > >>> login_cap.3 login_getcaplist.3 login_cap.3 login_getcapnum.3 \ > >>> @@ -57,9 +57,9 @@ MLINKS+=pidfile.3 pidfile_close.3 \ > >>> pidfile.3 pidfile_open.3 \ > >>> pidfile.3 pidfile_remove.3 \ > >>> pidfile.3 pidfile_write.3 > >>> -MLINKS+= property.3 property_find.3 property.3 properties_free.3 > >>> -MLINKS+= property.3 properties_read.3 > >>> -MLINKS+= pty.3 forkpty.3 pty.3 openpty.3 > >>> +MLINKS+=property.3 property_find.3 property.3 properties_free.3 > >>> +MLINKS+=property.3 properties_read.3 > >>> +MLINKS+=pty.3 forkpty.3 pty.3 openpty.3 > >> > >> Ditto. > > > > Yeah, I tried to leave things alone (except is surrounding areas for the following change), but I?ll go and hack away at the Makefile some more. > > Thanks, > > Actually, on second thought, I?m not going to modify the Makefile to just introduce gratuitous whitespace. If I need to touch this again, I?ll do it, but it doesn?t make sense churning over this Makefile like that (it?s a mishmash of different ?styles?). I am less concered about fixing this and more concerned about making sure you understood what the actual sytle.Makeilfe(9) rules are becuase it appeared that given the counter style changes you thought there should be no white space after VAR= in a Makefile. You probably understand that better than most and this is just a poor choice of words in the commit message. > -Ngie -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Mar 7 03:35:29 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id ECBE8CF72F7; Tue, 7 Mar 2017 03:35:29 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pf0-x241.google.com (mail-pf0-x241.google.com [IPv6:2607:f8b0:400e:c00::241]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id B409F18A5; Tue, 7 Mar 2017 03:35:29 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pf0-x241.google.com with SMTP id o126so5447924pfb.1; Mon, 06 Mar 2017 19:35:29 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:mime-version:from:in-reply-to:date:cc:message-id:references :to; bh=4LqlOKjpcZBGm6l4Pv9pwdoHxawimuM2HZU26EQdfUQ=; b=JazqSkHo8HErWRE1Hr9RfBbkhHCQOu2ac7/fdRW1PZf5CSSFV+HkafRPbEc3VXdKWm /JFn/QZQB+MuJ6e9hJk4CyXtSXPneLOLA1ZXaR1k/bqDQC60bBdnCtrBBsNWJBiUvzrq SSwtydzUHPItqjrLawbX4W1sJkm4TD6C7Yy9zo8OpNRKyIHFvJYqz46PL6wM9x21JrOk CAenPxMVXGSNY3T0qx/9x5clhFXqbT3ETDxpRRgUYIJ4gjnBbTmyCFDQv4Efi4ZxLGKA B3awQa7Y8ud/YBpMBIFsZKI345yViPGgZ//l4uY4BsNbDJjsuZky7eyxp5UV6qU/ogaf vONQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:mime-version:from:in-reply-to:date:cc :message-id:references:to; bh=4LqlOKjpcZBGm6l4Pv9pwdoHxawimuM2HZU26EQdfUQ=; b=sgb68+hgRzA/LEb0uovbX07ToPRu9dKebASHnhvkN60C9fk4YBhgYAn8exO+wquUhq atVaixjBj2mIfT2aTR472udhfy47dKrisPOlc+8Hsf7u4pYSrz1e2EoakaiiBK0z8EUl mzdTd3UP4bIty/6CXSUMG0mzpG1xM1DrHSdaxgXBetFJPQYao/7wp0kppSW9ttVTWC0D 7jbbELHVSbHH/ycaWyKiUJa2LK36fo74aIzPv7AmFB40wj6vXWuYg+RWQgi5k05gpaE8 Zt0EKjmXQI50HEr/7HOV56M+Ygbf11n26ocL+xyvAjxoDvPt/s9v6rL3yXCo7dfEMDes PVoA== X-Gm-Message-State: AMke39kNsz8abcBzAsGTCCD6+vqpt0kbCxCnHcyZ8q7PB6ulfbouOMqMtdsTvjncdNLikQ== X-Received: by 10.98.149.147 with SMTP id c19mr25223585pfk.36.1488857729033; Mon, 06 Mar 2017 19:35:29 -0800 (PST) Received: from pinklady.local (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id b83sm42147186pfe.12.2017.03.06.19.35.28 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 06 Mar 2017 19:35:28 -0800 (PST) Subject: Re: svn commit: r314819 - stable/11/lib/libutil Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Content-Type: multipart/signed; boundary="Apple-Mail=_BCE332C6-E574-446C-B46E-4D29720CFC77"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail From: "Ngie Cooper (yaneurabeya)" In-Reply-To: <201703070331.v273VcBc092092@pdx.rh.CN85.dnsmgr.net> Date: Mon, 6 Mar 2017 19:35:27 -0800 Cc: Ngie Cooper , src-committers , svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Message-Id: <6096856C-D75C-4287-AD6E-2D8F9A6C7043@gmail.com> References: <201703070331.v273VcBc092092@pdx.rh.CN85.dnsmgr.net> To: rgrimes@freebsd.org X-Mailer: Apple Mail (2.3124) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 03:35:30 -0000 --Apple-Mail=_BCE332C6-E574-446C-B46E-4D29720CFC77 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Mar 6, 2017, at 19:31, Rodney W. Grimes = wrote: =E2=80=A6 > I am less concered about fixing this and more concerned about making = sure you > understood what the actual sytle.Makeilfe(9) rules are becuase it = appeared > that given the counter style changes you thought there should be no = white > space after VAR=3D in a Makefile. >=20 > You probably understand that better than most and this is just a poor > choice of words in the commit message. I was intentionally fixing single space in leading whitespace in this = commit along with unnecessary/incorrect trailing whitespace. That=E2=80=99= s all I was trying to do, and I suppose the style.Makefile(9) portion of = the commit message was overkill=E2=80=94technically it was fixing as = little as possible so my eyes didn=E2=80=99t hurt whenever I opened the = Makefile with vim, which also suited this requirement. So yes, "opportunistic whitespace cleaning to fix my eyes bleeding from = the red colorization from my editor =E2=80=94 vim=E2=80=9D might have = been more accurate. -Ngie --Apple-Mail=_BCE332C6-E574-446C-B46E-4D29720CFC77 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJYvip/AAoJEPWDqSZpMIYVPoQP/iosb4BBWhPxIW6ygQLOYpw4 8wXjq5vCqX9WBwuF+mEvtwnO/hJ0ukWn1+P6WOJQVSXWX5ojTCXKepXVE88RnIcZ M9Ud15aqc3aDEQSYtk0wLl3jzGjccP/d+Jx/MOUp2hr86J5sDEv1+On11cvLMDAg yvww+NM4Yl/FheZgYNj4Q5tXZT+RSLhVRNQI39aQ3mPglfmr14EeOpAc1WrF3AqG gese7HQZP+orNiucFceYf/C9nDmbALJakmlVq94AKPcGqiRUxQbz2NPJ36t6nG2L 5psro7A7wwbfZUJsWhBl9cBKT7x7pv4xg8R5nWNAjWW4LQpQP1OBIQALYlmU7Mt5 yqZW+/TwQRPS1gRhrrKqmPP8QREeT6lBgRNC8i/A7lvPX9cxcW100ivyXBqh7epb QTqVlaAW+Fg4Mm12jb6ICe3xTPI+7Z1YQhaivOXzqaG8iOPnNU+EGpji8mgQXCVK 2RGYER0b1M965IVWkjkFrzQueIJvxouNivPvC9qw0yzs8KXjn4JLUGu/1YeOIuo7 HmxxuJcwXujyd57/FvPfk3+CN+49fut1PQeFMEA3PBlM7wEL0WeG5AaL2++QsICO wykA5VsguXs2vTuIuTkSoVoHua6uB6hj1aOZRR7g/ZH7hCBvyPfYfFAl9kxu2VmN Fir4VRWm1jOt91t4tV/B =KBFf -----END PGP SIGNATURE----- --Apple-Mail=_BCE332C6-E574-446C-B46E-4D29720CFC77-- From owner-svn-src-all@freebsd.org Tue Mar 7 03:35:51 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D19CBCF7419; Tue, 7 Mar 2017 03:35:51 +0000 (UTC) (envelope-from dexuan@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A13AF19EA; Tue, 7 Mar 2017 03:35:51 +0000 (UTC) (envelope-from dexuan@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v273Zo09023136; Tue, 7 Mar 2017 03:35:50 GMT (envelope-from dexuan@FreeBSD.org) Received: (from dexuan@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v273Zogt023135; Tue, 7 Mar 2017 03:35:50 GMT (envelope-from dexuan@FreeBSD.org) Message-Id: <201703070335.v273Zogt023135@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dexuan set sender to dexuan@FreeBSD.org using -f From: Dexuan Cui Date: Tue, 7 Mar 2017 03:35:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314828 - head/sys/boot/efi/loader X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 03:35:51 -0000 Author: dexuan Date: Tue Mar 7 03:35:50 2017 New Revision: 314828 URL: https://svnweb.freebsd.org/changeset/base/314828 Log: loader.efi: fix an off-by-one bug in efi_verify_staging_size() Also remove the warning message: it may not be unusual to see the memory range containing 2MB is not of EfiConventionalMemory. MFC after: 2 weeks2 weeks Sponsored by: Microsoft Modified: head/sys/boot/efi/loader/copy.c Modified: head/sys/boot/efi/loader/copy.c ============================================================================== --- head/sys/boot/efi/loader/copy.c Tue Mar 7 03:01:09 2017 (r314827) +++ head/sys/boot/efi/loader/copy.c Tue Mar 7 03:35:50 2017 (r314828) @@ -79,10 +79,6 @@ efi_verify_staging_size(unsigned long *n KERNEL_PHYSICAL_BASE >= end) continue; - if (p->Type != EfiConventionalMemory) - printf("Warning: wrong EFI memory type: %d\n", - p->Type); - available_pages = p->NumberOfPages - ((KERNEL_PHYSICAL_BASE - start) >> EFI_PAGE_SHIFT); break; @@ -93,6 +89,7 @@ efi_verify_staging_size(unsigned long *n goto out; } + i++; for ( ; i < ndesc; i++, p = NextMemoryDescriptor(p, dsz)) { if (p->Type != EfiConventionalMemory && From owner-svn-src-all@freebsd.org Tue Mar 7 03:53:10 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C651DCF7D10; Tue, 7 Mar 2017 03:53:10 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 95822136C; Tue, 7 Mar 2017 03:53:10 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v273r9wN031050; Tue, 7 Mar 2017 03:53:09 GMT (envelope-from ae@FreeBSD.org) Received: (from ae@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v273r9Yc031049; Tue, 7 Mar 2017 03:53:09 GMT (envelope-from ae@FreeBSD.org) Message-Id: <201703070353.v273r9Yc031049@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ae set sender to ae@FreeBSD.org using -f From: "Andrey V. Elsukov" Date: Tue, 7 Mar 2017 03:53:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314829 - stable/10/sys/netinet6 X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 03:53:10 -0000 Author: ae Date: Tue Mar 7 03:53:09 2017 New Revision: 314829 URL: https://svnweb.freebsd.org/changeset/base/314829 Log: MFC r314430: When IPv6 fragments reassembly is complete, update mbuf's csum_data and csum_flags using information from all fragments. This fixes dropping of reassembled packets due to wrong checksum when the IPv6 checksum offloading is enabled on a network card. Modified: stable/10/sys/netinet6/frag6.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/netinet6/frag6.c ============================================================================== --- stable/10/sys/netinet6/frag6.c Tue Mar 7 03:35:50 2017 (r314828) +++ stable/10/sys/netinet6/frag6.c Tue Mar 7 03:53:09 2017 (r314829) @@ -533,6 +533,11 @@ insert: af6 = ip6af->ip6af_down; frag6_deq(ip6af); while (af6 != (struct ip6asfrag *)q6) { + m->m_pkthdr.csum_flags &= + IP6_REASS_MBUF(af6)->m_pkthdr.csum_flags; + m->m_pkthdr.csum_data += + IP6_REASS_MBUF(af6)->m_pkthdr.csum_data; + af6dwn = af6->ip6af_down; frag6_deq(af6); while (t->m_next) @@ -543,6 +548,10 @@ insert: af6 = af6dwn; } + while (m->m_pkthdr.csum_data & 0xffff0000) + m->m_pkthdr.csum_data = (m->m_pkthdr.csum_data & 0xffff) + + (m->m_pkthdr.csum_data >> 16); + /* adjust offset to point where the original next header starts */ offset = ip6af->ip6af_offset - sizeof(struct ip6_frag); free(ip6af, M_FTABLE); From owner-svn-src-all@freebsd.org Tue Mar 7 03:53:16 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3FECBCF7D42; Tue, 7 Mar 2017 03:53:16 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from zxy.spb.ru (zxy.spb.ru [195.70.199.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0329713A1; Tue, 7 Mar 2017 03:53:16 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from slw by zxy.spb.ru with local (Exim 4.86 (FreeBSD)) (envelope-from ) id 1cl6BQ-000HNP-Ky; Tue, 07 Mar 2017 06:53:08 +0300 Date: Tue, 7 Mar 2017 06:53:08 +0300 From: Slawa Olhovchenkov To: Andriy Gapon Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314274 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs Message-ID: <20170307035308.GN15630@zxy.spb.ru> References: <201702251703.v1PH3nQd044474@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201702251703.v1PH3nQd044474@repo.freebsd.org> User-Agent: Mutt/1.5.24 (2015-08-30) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: slw@zxy.spb.ru X-SA-Exim-Scanned: No (on zxy.spb.ru); SAEximRunCond expanded to false X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 03:53:16 -0000 On Sat, Feb 25, 2017 at 05:03:49PM +0000, Andriy Gapon wrote: > Author: avg > Date: Sat Feb 25 17:03:48 2017 > New Revision: 314274 > URL: https://svnweb.freebsd.org/changeset/base/314274 > > Log: > l2arc: try to fix write size calculation broken by Compressed ARC commit > > While there, make a change to not evict a first buffer outside the > requested eviciton range. > > To do: > - give more consistent names to the size variables > - upstream to OpenZFS Mem: 6647M Active, 8399M Inact, 87G Wired, 49K Buf, 23G Free ^^^^^^^^^ ARC: 130G Total, 255M MFU, 80G MRU, 267M Anon, 72M Header, 41M Other ^^^^^ 128GB phys mem From owner-svn-src-all@freebsd.org Tue Mar 7 04:04:22 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 2F22AD01212; Tue, 7 Mar 2017 04:04:22 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pg0-x244.google.com (mail-pg0-x244.google.com [IPv6:2607:f8b0:400e:c05::244]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id EFCC21B1E; Tue, 7 Mar 2017 04:04:21 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pg0-x244.google.com with SMTP id 77so8877957pgc.0; Mon, 06 Mar 2017 20:04:21 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:mime-version:from:in-reply-to:date:cc:message-id:references :to; bh=3KBwyTsPOfurwVDQYCuzu8BQaUIxHscVbSrJcXA3FkU=; b=gfIS68GeSJAIjPQpvKbbJglvlN7v1cEZ+8vHlx1TGBC5OV1yOBstIN1I94QKG7OtAd dPQ/8fQSUAbFQpKCovrxHbR6FMyBWbW3+I0Qrqih3GZHRAFItjOVZKTugSoHjIuGyd0C RHmiXg40EPodxPDg1Q+NDPfNWGpgMAeuzFGDaIBPfB05YBi/LBdWFaF83Nf7AghikQBm vU2QE5708NlzemCwEi26DqC1YU3riwjbf1FBaZNUzM0LmShC0NGQrb6BKpT8RYOokCVC yMXD0SygX3WHU6IJ1GEWXFQulcDwDrzVuk2B+tWJyZzkZPqydVxeGYcbhY/Q0IRny1Fq H1Dg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:mime-version:from:in-reply-to:date:cc :message-id:references:to; bh=3KBwyTsPOfurwVDQYCuzu8BQaUIxHscVbSrJcXA3FkU=; b=nLE5vrXUBCL6cEXsUnrEcdkZOFUQjSti7zpQ6fs5P6Wvx/RLOQPkQ3hz89SHtocpL5 Oh6Vs4siS99X1y/v938ddLtNjIrpE69Z141BagTAZPWnw/jIC7aANoLAkkbcks23HSIK Ef72+13PQc4WhLEAd4BcZIsgi72x6JNyQcrp0YL2bEjWJMtgZ7d91eFaSfsOoFOxKqH+ mqV2DvU3Z/z+NtzU6lgpQmUleQWcJvg3mkIuTWHAPxWuWqP74gpTej2gdivS6IguMEfS ShyOJzLl2+epuwR7FHhiggxMsPQuiYlQF7I5t7FDyFVDcrJZXmy4Xp4bB9R6rXL90aui OdPA== X-Gm-Message-State: AMke39lp7rDyNUwR0T7sntIcoA+E3gL8f8xfot6am/Lqto+zp23uleiFL5/Awr0uPCM3CQ== X-Received: by 10.84.129.3 with SMTP id 3mr32001461plb.150.1488859460942; Mon, 06 Mar 2017 20:04:20 -0800 (PST) Received: from pinklady.local (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id m136sm42509910pga.22.2017.03.06.20.04.19 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 06 Mar 2017 20:04:20 -0800 (PST) Subject: Re: svn commit: r314813 - head/sys/kern Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Content-Type: multipart/signed; boundary="Apple-Mail=_BE731604-DDB7-4FF4-A7DE-13CC71B59B16"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail From: "Ngie Cooper (yaneurabeya)" In-Reply-To: <9747B513-8D23-487D-8FF9-721265C1CF44@gmail.com> Date: Mon, 6 Mar 2017 20:04:19 -0800 Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org, Gleb Smirnoff Message-Id: <2CEAC560-E2D2-4790-9006-FEED1BFF5A78@gmail.com> References: <201703070020.v270K2vA039655@repo.freebsd.org> <9747B513-8D23-487D-8FF9-721265C1CF44@gmail.com> To: Hiren Panchasara X-Mailer: Apple Mail (2.3124) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 04:04:22 -0000 --Apple-Mail=_BE731604-DDB7-4FF4-A7DE-13CC71B59B16 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Mar 6, 2017, at 19:08, Ngie Cooper (yaneurabeya) = wrote: =E2=80=A6 > The KASSERT is bad =E2=80=94 please fix it. =46rom = https://ci.freebsd.org/job/FreeBSD-head-amd64-test/1994/console : >=20 > add host 127.0.0.1panic: sbcut_internal: len is 0 but it is supposed = to be +ve len =3D=3D 0 has special meaning; please see sbflush_internal. This = works. Thanks, -Ngie $ svn diff sys/kern/uipc_sockbuf.c Index: sys/kern/uipc_sockbuf.c =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- sys/kern/uipc_sockbuf.c (revision 314827) +++ sys/kern/uipc_sockbuf.c (working copy) @@ -1043,8 +1043,7 @@ { struct mbuf *m, *next, *mfree; - KASSERT(len > 0, ("%s: len is %d but it is supposed to be +ve", - __func__, len)); + KASSERT(len >=3D 0, ("%s: len is negative (%d)", __func__, = len)); KASSERT(len <=3D sb->sb_ccc, ("%s: len: %d is > ccc: %u", __func__, len, sb->sb_ccc)); --Apple-Mail=_BE731604-DDB7-4FF4-A7DE-13CC71B59B16 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJYvjFDAAoJEPWDqSZpMIYV2C4P/R/mEhZeNSeOXOfoYeb71RmI YbnBfeS+aoojK5KswcgEmsGHcTBBDAuncNhAysz19h/BX98X14dBRq9qw7YjGZml b0SlaBSciVCPgIoDXmOPks3btbnxDOUdzSRYPe2RPW4uQtD+YYDjpSmpvOk0Ukyx MdhHHc9QNxJ+Pl47QF6nI/835/w/SU5Muhv2UQ8zTabQCymk6NPnU78MoDWc1mJH tJqEQldpPCMt6tbyhqDuZTq0WapMueBjGox+ZarS5+WSq9YZEwmIASFsK6av33pG kC96mzEQdljt76ffMpqx6Hx/1+e9HDU7w9hJ4irlcZRH0+t2AunKfkpX9TfbCJ2l cxLCvg9TIhYSg73S0slpMFK+6zrqDCPxihkmShaU8HrinPlDhWIApyyhEiS5b0wn F2zEK6AjoRagyIl15GJSZy+SpV6Bcr1civDfQ853kB2PMnP+nhgpFc2ODb5vgMpM K+wtQVb1/sxQj3w9sriukpfVlriEdYKH5goQGXK/DsTqXsbmILAMIyYjWOoLEJn/ YsS35SYVo53QwdyYvgss3Qh3BflNJidmYW1xQHBIeuM5u+r6S+HdK+hDtq6ccpHV z0TzPLUbhgqbBMeKyBitJjbpU/cu0NDonARQyHsnjZiBQKe9+8/psUNN678+gl0k fP7L35mZ10ftWiZIlTQN =JFcS -----END PGP SIGNATURE----- --Apple-Mail=_BE731604-DDB7-4FF4-A7DE-13CC71B59B16-- From owner-svn-src-all@freebsd.org Tue Mar 7 04:11:50 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CC3A5D0150A; Tue, 7 Mar 2017 04:11:50 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 971C91F6E; Tue, 7 Mar 2017 04:11:50 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by freefall.freebsd.org (Postfix) with ESMTPS id B4E3016D; Tue, 7 Mar 2017 04:11:49 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 0DC9A35446; Tue, 7 Mar 2017 04:11:42 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id 6QoruNJisccL; Tue, 7 Mar 2017 04:11:33 +0000 (UTC) Subject: Re: svn commit: r314685 - head/bin/ps DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com D45E43543F To: Conrad Meyer , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201703042238.v24McAD8008837@repo.freebsd.org> From: Bryan Drewery Organization: FreeBSD Message-ID: <01dddec8-89c0-e18a-a481-e802643f9e0e@FreeBSD.org> Date: Mon, 6 Mar 2017 20:11:31 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <201703042238.v24McAD8008837@repo.freebsd.org> Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="up7CmC8UErl3C1ts7tV7q9B45s4Ejl54E" X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 04:11:50 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --up7CmC8UErl3C1ts7tV7q9B45s4Ejl54E Content-Type: multipart/mixed; boundary="CuUcadL6ajKhjO0sj0Hxtk5uDKlRqp8fC"; protected-headers="v1" From: Bryan Drewery To: Conrad Meyer , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-ID: <01dddec8-89c0-e18a-a481-e802643f9e0e@FreeBSD.org> Subject: Re: svn commit: r314685 - head/bin/ps References: <201703042238.v24McAD8008837@repo.freebsd.org> In-Reply-To: <201703042238.v24McAD8008837@repo.freebsd.org> --CuUcadL6ajKhjO0sj0Hxtk5uDKlRqp8fC Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 3/4/17 2:38 PM, Conrad Meyer wrote: > Author: cem > Date: Sat Mar 4 22:38:10 2017 > New Revision: 314685 > URL: https://svnweb.freebsd.org/changeset/base/314685 >=20 > Log: > ps(1): Only detect terminal width if stdout is a tty > =20 > If stdout isn't a tty, use unlimited width output rather than truncat= ing to > 79 characters. This is helpful for shell scripts or e.g., 'ps | grep= foo'. This change actually makes things worse for me for 'ps uaxwd|less' Before: > nobody 83979 0.0 0.0 9016 1364 3 I+J 20:03 0:00.= 06 | | `-- /usr/bin/make -C /usr/ports/lang/perl5.24 build After: > nobody 89743 0.0 0.0 9016 1368 3 S+J 20:07 0:00.= 05 | | `-- /usr/bin/make -C /usr/ports/lang/perl5.24 I now have to specify -ww to not cut things off, but that's far more than I want to see. > =20 > This hardcoded width has some history: In The Beginning of History[0]= , the > width of ps was hardcoded as 80 bytes. In 1985, Bloom@ added detecti= on > using TIOCGWINSZ on stdin.[1] In 1986, Kirk merged a change to check= > stdout's window size instead. In 1990, the fallback checks to stderr= and > stdin's TIOCGWINSZ were added by Marc@, with the commit message "new > version."[2] > =20 > OS X Darwin has a very similar modification to ps(1), which simply se= ts > UNLIMITED for all non-tty outputs.[3] I've chosen to respect COLUMNS= > instead of behaving identically to Darwin here, but I don't feel stro= ngly > about that. We could match OS X for parity if that is desired. > =20 > [0]: https://svnweb.freebsd.org/csrg/bin/ps/ps.c?annotate=3D1065 > [1]: https://svnweb.freebsd.org/csrg/bin/ps/ps.c?r1=3D18105&r2=3D1810= 6 > [2]: > https://svnweb.freebsd.org/csrg/bin/ps/ps.c?r1=3D40675&r2=3D40674&pat= hrev=3D40675 > [3]: > https://opensource.apple.com/source/adv_cmds/adv_cmds-168/ps/ps.c.aut= o.html > =20 > PR: 217159 > Reported by: Deepak Nagaraj >=20 > Modified: > head/bin/ps/ps.c >=20 > Modified: head/bin/ps/ps.c > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > --- head/bin/ps/ps.c Sat Mar 4 22:23:59 2017 (r314684) > +++ head/bin/ps/ps.c Sat Mar 4 22:38:10 2017 (r314685) > @@ -194,6 +194,8 @@ main(int argc, char *argv[]) > =20 > if ((cols =3D getenv("COLUMNS")) !=3D NULL && *cols !=3D '\0') > termwidth =3D atoi(cols); > + else if (!isatty(STDOUT_FILENO)) > + termwidth =3D UNLIMITED; > else if ((ioctl(STDOUT_FILENO, TIOCGWINSZ, (char *)&ws) =3D=3D -1 && > ioctl(STDERR_FILENO, TIOCGWINSZ, (char *)&ws) =3D=3D -1 && > ioctl(STDIN_FILENO, TIOCGWINSZ, (char *)&ws) =3D=3D -1) || >=20 --=20 Regards, Bryan Drewery --CuUcadL6ajKhjO0sj0Hxtk5uDKlRqp8fC-- --up7CmC8UErl3C1ts7tV7q9B45s4Ejl54E Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJYvjL0AAoJEDXXcbtuRpfP+5IH/0QCsQX4BtJgdFD2h5oV8nml bFRxd+O0koTdSlj8RO7M6oQ5oeKb6P8KK+s8iDwJNeF8KGAL3jPc/vgJKO4Ev+ND L5p3pj3Fk2wCNpwlgKyH1gOlHd0nzbw3T7+TyskCYXMhAPw0GTA/ucdNNpdErjWp 7CCRwgkj93l8i4ccq0pJELHO5xBIR+DxDiBwHYLzvRZ8hu74tFzmFdrbkmXW3EQY u/vbhfTOvPweuSxH4hqBxiui5sUZDKb7kA8se6PjRoxnBxDVu5eMKk0f6lr40hp0 2XsXsoUEhplS/+81KNtCzaQRsXWMtqEnyZBI+PI0Ep7cgTp5lrds/HDI93e2mo0= =zKeo -----END PGP SIGNATURE----- --up7CmC8UErl3C1ts7tV7q9B45s4Ejl54E-- From owner-svn-src-all@freebsd.org Tue Mar 7 04:13:23 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BC2B4D015EB; Tue, 7 Mar 2017 04:13:23 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8BD661170; Tue, 7 Mar 2017 04:13:23 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v274DMf0039183; Tue, 7 Mar 2017 04:13:22 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v274DMEU039182; Tue, 7 Mar 2017 04:13:22 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703070413.v274DMEU039182@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Tue, 7 Mar 2017 04:13:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314830 - head/usr.sbin/mergemaster X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 04:13:23 -0000 Author: ngie Date: Tue Mar 7 04:13:22 2017 New Revision: 314830 URL: https://svnweb.freebsd.org/changeset/base/314830 Log: mergemaster: fix description of -p -p only handles updating /etc/master.passwd and /etc/group . No more, no less. Also, mergemaster (and no other portions of the vanilla FreeBSD build process) should be messing with __MAKECONF or SRCCONF as part of the installworld or distribution process. Don't insinuate that mergemaster does that as it's a false claim. MFC after: 1 week Sponsored by: Dell EMC Isilon Modified: head/usr.sbin/mergemaster/mergemaster.8 Modified: head/usr.sbin/mergemaster/mergemaster.8 ============================================================================== --- head/usr.sbin/mergemaster/mergemaster.8 Tue Mar 7 03:53:09 2017 (r314829) +++ head/usr.sbin/mergemaster/mergemaster.8 Tue Mar 7 04:13:22 2017 (r314830) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd September 29, 2015 +.Dd March 6, 2017 .Dt MERGEMASTER 8 .Os .Sh NAME @@ -226,9 +226,10 @@ destination directory. .It Fl p Pre-buildworld mode. Compares only files known to be essential to the success of -{build|install}world, -including -.Pa /etc/make.conf . +{build|install}world, i.e., +.Pa /etc/group +and +.Pa /etc/master.passwd . .It Fl F If the files differ only by VCS Id ($FreeBSD) install the new file. From owner-svn-src-all@freebsd.org Tue Mar 7 04:14:12 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CFC32D0165D; Tue, 7 Mar 2017 04:14:12 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pf0-x241.google.com (mail-pf0-x241.google.com [IPv6:2607:f8b0:400e:c00::241]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 9DB0412C5; Tue, 7 Mar 2017 04:14:12 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pf0-x241.google.com with SMTP id v190so8782912pfb.0; Mon, 06 Mar 2017 20:14:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:mime-version:from:in-reply-to:date:cc:message-id:references :to; bh=7zogav+bctY+SGCeflJ1vEf40EvdMfTp45Uu1KnWmkQ=; b=C7a8z9ckln4SrVwbrYeTRWBOo8ZhPgUYc3pSSFups0M7NdWqt8TQENcLx7obMWSygd X89ALe3vDe6KdRLW7ZgCXB74BygtXPryx4v4or2Gn095DunqF2Bcq0DE55MJ9QNl7ZsY blZAV/RPo8F3EXB/TJN4XsSS6xOfIQAKL7oYqwKpsDUf9JzszJhMd6dkH/yIa6ZCpmB4 X5j1/shKiQiwmpP5GW8pLu7qpzN8m8Jj7X8PjTnM7aZuJ3GFYJzsmL99PwWJtj534+oR q3w1IX5QtX6usAm92sGJADkGgSDb1HdGymAeJ1Z03rANvc0jk0Kxqg0TdYBD3koNHtW2 eMbw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:mime-version:from:in-reply-to:date:cc :message-id:references:to; bh=7zogav+bctY+SGCeflJ1vEf40EvdMfTp45Uu1KnWmkQ=; b=CUnyNUHZbHC7twXdfBA18tV1jsVvv8ZeWJ7wwNuvgx2JvM/dxVM+SIxK8ZL8qv5HPX e5DVKOQNvxZVdQh9lX52/1WVHDJeGhkA04+/mzWJVtx5PST5BDC+KtMv9qevWCBlNGTU bY3p+29GcfkyQqXDNF90VdpmaxLSugwIYlg+JH9SD+/rCKreENAqG/6PDJytkzsSI+/r cy5RGcixBmwxCE3Wt8DwDiXDZsPVh8/e/DrQh2hFEsZ9W3uGkH7XEGyMXt/WukQUdD6j ceCY7QMvwv2X9d1BrZwAleqg/kYnptPtXJg1ROOYLNEpAyPAkmdb/RXl0FfIMjxQFNAC cU9Q== X-Gm-Message-State: AMke39moFEAQsH0HZ1sFibMVr3IZhEkilEwY1v6TmVY/qtgZU7InIURyZh5B8By+MYmUvw== X-Received: by 10.98.23.202 with SMTP id 193mr25554138pfx.141.1488860052092; Mon, 06 Mar 2017 20:14:12 -0800 (PST) Received: from pinklady.local (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id q7sm42236578pfb.98.2017.03.06.20.14.11 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 06 Mar 2017 20:14:11 -0800 (PST) Subject: Re: svn commit: r314830 - head/usr.sbin/mergemaster Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Content-Type: multipart/signed; boundary="Apple-Mail=_C47541B9-53AC-43B6-8AEA-F4E01B997476"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail From: "Ngie Cooper (yaneurabeya)" In-Reply-To: <201703070413.v274DMEU039182@repo.freebsd.org> Date: Mon, 6 Mar 2017 20:14:10 -0800 Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-Id: <4778322D-C39C-4291-90A4-6575232A7A53@gmail.com> References: <201703070413.v274DMEU039182@repo.freebsd.org> To: Ngie Cooper X-Mailer: Apple Mail (2.3124) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 04:14:12 -0000 --Apple-Mail=_C47541B9-53AC-43B6-8AEA-F4E01B997476 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii > On Mar 6, 2017, at 20:13, Ngie Cooper wrote: > > Author: ngie > Date: Tue Mar 7 04:13:22 2017 > New Revision: 314830 > URL: https://svnweb.freebsd.org/changeset/base/314830 > > Log: > mergemaster: fix description of -p > > -p only handles updating /etc/master.passwd and /etc/group . No more, > no less. > > Also, mergemaster (and no other portions of the vanilla FreeBSD build > process) should be messing with __MAKECONF or SRCCONF as part of the *should not Bleh. -Ngie --Apple-Mail=_C47541B9-53AC-43B6-8AEA-F4E01B997476 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJYvjOSAAoJEPWDqSZpMIYVqYwP/jfrB8tX6EbQ9owW3HqDYANu CJt4elzkjnBp/2fpiFprhhUEkzFza5mPGYYfKDYazsa9CUGhr+B4txSUDNWjQk1a AQoR+yqLmBt40HbQWHef/4Zr8edPKwgTn5t/PwczQz4Q7KX+e0yb/p1Fr2lGNUse HMsTw0h3zZNN+PWyTvk9AdF1JtWpB+EY9c4FLSuPvAMMSPRVD5nNjqEC6uveAHSB /zFJ0/dV0Kcu2SopvTQubAS8LHLsml5ff8XhNfR0VbAR0R+dxaj0A5JmSefYayeB if6n91chEvQR9G9sDb8CCb9SfbphG2TlkZd5URC5yM+d9oGMklrjwhRBITE5rrkT OSbQ+0p5yxV/KaYEvMb0XCuKrd81+yI8SYzsaSnnMGbuJ07DC/iyATPqYQzH74F1 D5h9BAUafu8vjA5TDdDfmjKY55IyvJ+ho/SdZgfXx1PCCe/Sv8ruE4dxiEr2G9Ur cttAFyZJpknYf/cAhkd6KmpqWomCI5pEeiQW3Ajfc4AskwhX7vmHncTUUApP+cZ5 BI47yO02RW8GgWIKg5W+N8an+pUAxPzd1m+LUYGBy6wubWrlcflxJqvXqYHQSRjC OpzM5BP3mnnAp6q3aYbHhW54lr4pI73GLP0uMMmQdi4YiJz0O34c/fXJ4Y+qzx6B GHs8K3afl8ARD5PKC1KU =5npV -----END PGP SIGNATURE----- --Apple-Mail=_C47541B9-53AC-43B6-8AEA-F4E01B997476-- From owner-svn-src-all@freebsd.org Tue Mar 7 04:15:24 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 81E6ED016D8; Tue, 7 Mar 2017 04:15:24 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pg0-x22e.google.com (mail-pg0-x22e.google.com [IPv6:2607:f8b0:400e:c05::22e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4E9061453; Tue, 7 Mar 2017 04:15:24 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pg0-x22e.google.com with SMTP id b129so74019705pgc.2; Mon, 06 Mar 2017 20:15:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:mime-version:from:in-reply-to:date:cc:message-id:references :to; bh=fJTppxW4Ane78KNGznUp68xMotPCEFFwe1omBgU9Myg=; b=fI2A125rR2CRwYiSlacf5R7vZxtb0yxG9K4cdij0yhyw9C7zB2/nYQT7G71Wtd5wdI /lJnRpGwSObeeMf9I+em50+R0onZjoWleOVwUZcg8XWSMfUA+4kwpT1Y+P7w4D3IexVp OrqrC4Ve5wqYbrlCWzflwGrGN4eMHPyisC5lYdC66rIzcYD2itPLjodAR3ZyzQ1fl2Js FRPwcvWz+9jDvJoboR2DYivc2aYIo1P6aPaQwAqNVNW+EzeE/vNBR+p2vffaOm3n8eap wRXHl5dQLUtB9aQ9+UGcGzQ4lRBRgHTtprd/cs49hmqbcO4sdky6UolddoqAHTI1PmvI XW7w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:mime-version:from:in-reply-to:date:cc :message-id:references:to; bh=fJTppxW4Ane78KNGznUp68xMotPCEFFwe1omBgU9Myg=; b=JRmtxxCskayXpt7lNzxh9mqpaJ7ORzGL9DPMyUbo/c4uj2Etgk/uBV2r9fHWweQUMg sQ159/zvJBqeUnsLU478LTzI8/jffjw9MZmnbKxxVVcijybqCi9/BWikRfAk4VI7dks0 2/NM7ss8Hji554QP1GXZnJLTEoDne88o4VHhVC7+7vPZJof14mMwcInog8RurzZPJrhu basAJL0gmoxPbEmq69Uf/Y4LmaeeJn/HxdAMSDR501NJAapgv9kDMu/jlwtDJhEy1rVs SNH2N4Abgic2GiCYOOGsHcGMddqT3yrIm3E20ygZutVuzUDI5xT1BaRPdruuYH4rht4P SAAA== X-Gm-Message-State: AMke39mUaXJHPkluTzJXweMGmsl8eGZ+2swXbvxb4nX4PLkXZQf51NM9s/LS5oCfxOSfGQ== X-Received: by 10.98.223.76 with SMTP id u73mr25752266pfg.147.1488860123752; Mon, 06 Mar 2017 20:15:23 -0800 (PST) Received: from pinklady.local (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id e16sm11759972pfb.102.2017.03.06.20.15.23 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 06 Mar 2017 20:15:23 -0800 (PST) Subject: Re: svn commit: r314830 - head/usr.sbin/mergemaster Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Content-Type: multipart/signed; boundary="Apple-Mail=_7D4D5DC8-CC56-4FC5-B30F-2F2195B9A4C9"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail From: "Ngie Cooper (yaneurabeya)" In-Reply-To: <4778322D-C39C-4291-90A4-6575232A7A53@gmail.com> Date: Mon, 6 Mar 2017 20:15:22 -0800 Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-Id: References: <201703070413.v274DMEU039182@repo.freebsd.org> <4778322D-C39C-4291-90A4-6575232A7A53@gmail.com> To: Ngie Cooper X-Mailer: Apple Mail (2.3124) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 04:15:24 -0000 --Apple-Mail=_7D4D5DC8-CC56-4FC5-B30F-2F2195B9A4C9 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Mar 6, 2017, at 20:14, Ngie Cooper (yaneurabeya) = wrote: >=20 >>=20 >> On Mar 6, 2017, at 20:13, Ngie Cooper wrote: >>=20 >> Author: ngie >> Date: Tue Mar 7 04:13:22 2017 >> New Revision: 314830 >> URL: https://svnweb.freebsd.org/changeset/base/314830 >>=20 >> Log: >> mergemaster: fix description of -p >>=20 >> -p only handles updating /etc/master.passwd and /etc/group . No more, >> no less. >>=20 >> Also, mergemaster (and no other portions of the vanilla FreeBSD build >> process) should be messing with __MAKECONF or SRCCONF as part of the >=20 > *should not Pfft. Stupid double-negative with =E2=80=9Cand no=E2=80=9D as well. Time to step away from the keyboard. -Ngie --Apple-Mail=_7D4D5DC8-CC56-4FC5-B30F-2F2195B9A4C9 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJYvjPaAAoJEPWDqSZpMIYVHNEQAM67eDlLPqZZOKIqbSQCAZN+ A5UqUuiGV6OUJynKz9xMr9Xbd55Zq9xeF+tXOvL80JM5lGfRRCYOXqGvU48PkVBm KA6gQ/b7ruerf68czZ9RMNoET/KqFlVmG+72Cw1ZEqlcayAcibyfA6n9W2l/nese p+LcgA6MzvrAdsieN1nC/OmMCZs5zu2EQBqpbI+DZEALA6Jw/hnl9NqCT/Zhoapm H+cFIfXTnSe+Z8xOmvPac1shKUfDfsGlpORE2fKSqqxmyZkE5fMcMnw4ZJsRpZLs g8+Z4UzZAlEauMjxGtAbRwj4SjvrsHk/xEWtO8cdz8rIPdbBLkJYdNXwTuf49PYB IdxFtRWogpLPVGYDNdBcjC8Rs5iK0J+D+WAtx0IR8U/7ML8oMsRv/JrhCpw7LtFv M1drVFu+zxp/ixfk975S0VmOkI5y5Z56SG7/RXipQEBceZHrxtursoUxMfwcF7mx VbvNfRHJnQ9pDt4wktVl6fOwWX9Tgj6c8h+ZqzDzvC9XH7uV2haW9ptgldR8a9/N avEW7Emv6qZQx8a/diVMTzbTukC2ClcM3Qv5psEp0Ft8IIgEEGP3NmQ1dZyaxCTd jh1cNPOpijICRIB5K9uBOV58zGFjEZqV3hepY8lpPtw2WRqBLTr28WsWrcC9BXaw Rcs0V7KZuahBGsyLgSCe =9zLy -----END PGP SIGNATURE----- --Apple-Mail=_7D4D5DC8-CC56-4FC5-B30F-2F2195B9A4C9-- From owner-svn-src-all@freebsd.org Tue Mar 7 04:26:42 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9A8D8D019FD; Tue, 7 Mar 2017 04:26:42 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6D0C01942; Tue, 7 Mar 2017 04:26:42 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by freefall.freebsd.org (Postfix) with ESMTPS id 8D1F562C; Tue, 7 Mar 2017 04:26:41 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from mail.xzibition.com (localhost [172.31.3.2]) by mail.xzibition.com (Postfix) with ESMTP id 890E8354A0; Tue, 7 Mar 2017 04:26:35 +0000 (UTC) X-Virus-Scanned: amavisd-new at mail.xzibition.com Received: from mail.xzibition.com ([172.31.3.2]) by mail.xzibition.com (mail.xzibition.com [172.31.3.2]) (amavisd-new, port 10026) with LMTP id O1V8Dihuw2yo; Tue, 7 Mar 2017 04:26:21 +0000 (UTC) Subject: Re: svn commit: r314685 - head/bin/ps DKIM-Filter: OpenDKIM Filter v2.9.2 mail.xzibition.com 8E5E83549B To: Conrad Meyer , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201703042238.v24McAD8008837@repo.freebsd.org> <01dddec8-89c0-e18a-a481-e802643f9e0e@FreeBSD.org> From: Bryan Drewery Organization: FreeBSD Message-ID: <52877752-ab4b-45ea-05f4-ef050e1a2983@FreeBSD.org> Date: Mon, 6 Mar 2017 20:26:14 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <01dddec8-89c0-e18a-a481-e802643f9e0e@FreeBSD.org> Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="gTltGfjTpF8TIjHLg0sX0GM4Qr512rC7f" X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 04:26:42 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --gTltGfjTpF8TIjHLg0sX0GM4Qr512rC7f Content-Type: multipart/mixed; boundary="iCNvVh0AeaLkKqtwAFqavhhXGPHmuODwi"; protected-headers="v1" From: Bryan Drewery To: Conrad Meyer , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-ID: <52877752-ab4b-45ea-05f4-ef050e1a2983@FreeBSD.org> Subject: Re: svn commit: r314685 - head/bin/ps References: <201703042238.v24McAD8008837@repo.freebsd.org> <01dddec8-89c0-e18a-a481-e802643f9e0e@FreeBSD.org> In-Reply-To: <01dddec8-89c0-e18a-a481-e802643f9e0e@FreeBSD.org> --iCNvVh0AeaLkKqtwAFqavhhXGPHmuODwi Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 3/6/17 8:11 PM, Bryan Drewery wrote: > On 3/4/17 2:38 PM, Conrad Meyer wrote: >> Author: cem >> Date: Sat Mar 4 22:38:10 2017 >> New Revision: 314685 >> URL: https://svnweb.freebsd.org/changeset/base/314685 >> >> Log: >> ps(1): Only detect terminal width if stdout is a tty >> =20 >> If stdout isn't a tty, use unlimited width output rather than trunca= ting to >> 79 characters. This is helpful for shell scripts or e.g., 'ps | gre= p foo'. >=20 > This change actually makes things worse for me for 'ps uaxwd|less' >=20 > Before: >> nobody 83979 0.0 0.0 9016 1364 3 I+J 20:03 0:00= =2E06 | | `-- /usr/bin/make -C /usr/ports/lang/perl5.24 build >=20 > After: >> nobody 89743 0.0 0.0 9016 1368 3 S+J 20:07 0:00= =2E05 | | `-- /usr/bin/make -C /usr/ports/lang/perl5.24 >=20 >=20 > I now have to specify -ww to not cut things off, but that's far more > than I want to see. >=20 The problem is that -w is parsed *after* termwidth =3D UNLIMITED is set (which is 0). This patch fixes it, but I haven't tested it extensively: > Index: ps.c > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > --- ps.c (revision 314708) > +++ ps.c (working copy) > @@ -401,7 +401,7 @@ main(int argc, char *argv[]) > case 'w': > if (wflag) > termwidth =3D UNLIMITED; > - else if (termwidth < 131) > + else if (termwidth < 131 && termwidth !=3D UNLI= MITED) > termwidth =3D 131; > wflag++; > break; -1 for the original commit. If I wanted -ww I would specify it. The original commit causes some text to wrap on my terminal even with some extending right. >=20 >> =20 >> This hardcoded width has some history: In The Beginning of History[0= ], the >> width of ps was hardcoded as 80 bytes. In 1985, Bloom@ added detect= ion >> using TIOCGWINSZ on stdin.[1] In 1986, Kirk merged a change to chec= k >> stdout's window size instead. In 1990, the fallback checks to stder= r and >> stdin's TIOCGWINSZ were added by Marc@, with the commit message "new= >> version."[2] >> =20 >> OS X Darwin has a very similar modification to ps(1), which simply s= ets >> UNLIMITED for all non-tty outputs.[3] I've chosen to respect COLUMN= S >> instead of behaving identically to Darwin here, but I don't feel str= ongly >> about that. We could match OS X for parity if that is desired. >> =20 >> [0]: https://svnweb.freebsd.org/csrg/bin/ps/ps.c?annotate=3D1065 >> [1]: https://svnweb.freebsd.org/csrg/bin/ps/ps.c?r1=3D18105&r2=3D181= 06 >> [2]: >> https://svnweb.freebsd.org/csrg/bin/ps/ps.c?r1=3D40675&r2=3D40674&pa= threv=3D40675 >> [3]: >> https://opensource.apple.com/source/adv_cmds/adv_cmds-168/ps/ps.c.au= to.html >> =20 >> PR: 217159 >> Reported by: Deepak Nagaraj >> >> Modified: >> head/bin/ps/ps.c >> >> Modified: head/bin/ps/ps.c >> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D >> --- head/bin/ps/ps.c Sat Mar 4 22:23:59 2017 (r314684) >> +++ head/bin/ps/ps.c Sat Mar 4 22:38:10 2017 (r314685) >> @@ -194,6 +194,8 @@ main(int argc, char *argv[]) >> =20 >> if ((cols =3D getenv("COLUMNS")) !=3D NULL && *cols !=3D '\0') >> termwidth =3D atoi(cols); >> + else if (!isatty(STDOUT_FILENO)) >> + termwidth =3D UNLIMITED; >> else if ((ioctl(STDOUT_FILENO, TIOCGWINSZ, (char *)&ws) =3D=3D -1 &&= >> ioctl(STDERR_FILENO, TIOCGWINSZ, (char *)&ws) =3D=3D -1 && >> ioctl(STDIN_FILENO, TIOCGWINSZ, (char *)&ws) =3D=3D -1) || >> >=20 >=20 --=20 Regards, Bryan Drewery --iCNvVh0AeaLkKqtwAFqavhhXGPHmuODwi-- --gTltGfjTpF8TIjHLg0sX0GM4Qr512rC7f Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQEcBAEBCgAGBQJYvjZnAAoJEDXXcbtuRpfPmy4IAI/QQ221scyCn/YVDRrGIqlo de6gbWzK9PX7ARLFUQHbvhTVX9jrsKFlxvagPq3iVdUOKDejgimzDafXl3w4Ya5W bZB0+uK/Laz1OeLeoS34k6kV1dEhlMhBT9ZFU0hGasA+hcWiSNAZWMoGFJAPzHqs Qj1JI+DHP7zHi8vwguXkgOorSxVvE044vXGys1w1O/HQwCEZWWa/LUA04Kp9mu6k u7GUXN4dBmpZ920vd1qX8ELSUbq+OdQV9V2LxUy1EMQvBEiK+l2ntPnhuEVrm6U1 0cK/6pMtw9lU7S6YbyGJ22lquLybbCGw3Hf+3Po7/Xxbc0o6Bo+pNamA1pXPFyM= =291A -----END PGP SIGNATURE----- --gTltGfjTpF8TIjHLg0sX0GM4Qr512rC7f-- From owner-svn-src-all@freebsd.org Tue Mar 7 04:33:18 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EBD3CD01C1F; Tue, 7 Mar 2017 04:33:18 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BB8021DC3; Tue, 7 Mar 2017 04:33:18 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v274XHRW047281; Tue, 7 Mar 2017 04:33:17 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v274XHBa047280; Tue, 7 Mar 2017 04:33:17 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703070433.v274XHBa047280@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Tue, 7 Mar 2017 04:33:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314831 - head/usr.bin/fortune X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 04:33:19 -0000 Author: ngie Date: Tue Mar 7 04:33:17 2017 New Revision: 314831 URL: https://svnweb.freebsd.org/changeset/base/314831 Log: Don't rely on dependency in Makefile.inc1 for strfile; make datfiles depend on strfile In most cases strfile is built as part of build-tools, but in the event that someone cd'ed to the directory, tried to build from scratch, and had MK_GAMES=no previously, the build would fail in .../datfiles , trying to find strfile . Mark this directory tree "SUBDIR_PARALLEL" safe to help facilitate this, instead of shuffling around the SUBDIR entries (all of the other Makefiles will build standalone). MFC after: 1 week Sponsored by: Dell EMC Isilon Modified: head/usr.bin/fortune/Makefile Modified: head/usr.bin/fortune/Makefile ============================================================================== --- head/usr.bin/fortune/Makefile Tue Mar 7 04:13:22 2017 (r314830) +++ head/usr.bin/fortune/Makefile Tue Mar 7 04:33:17 2017 (r314831) @@ -1,5 +1,11 @@ # @(#)Makefile 8.1 (Berkeley) 5/31/93 +# +# $FreeBSD$ -SUBDIR= fortune strfile datfiles unstr +SUBDIR= fortune strfile datfiles unstr + +SUBDIR_DEPEND_datfiles= strfile + +SUBDIR_PARALLEL= .include From owner-svn-src-all@freebsd.org Tue Mar 7 04:51:37 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 16F7DD0155F; Tue, 7 Mar 2017 04:51:37 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id DB0D21D71; Tue, 7 Mar 2017 04:51:36 +0000 (UTC) (envelope-from cem@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v274pZRU052435; Tue, 7 Mar 2017 04:51:35 GMT (envelope-from cem@FreeBSD.org) Received: (from cem@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v274pZl6052434; Tue, 7 Mar 2017 04:51:35 GMT (envelope-from cem@FreeBSD.org) Message-Id: <201703070451.v274pZl6052434@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cem set sender to cem@FreeBSD.org using -f From: Conrad Meyer Date: Tue, 7 Mar 2017 04:51:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314832 - head/bin/ps X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 04:51:37 -0000 Author: cem Date: Tue Mar 7 04:51:35 2017 New Revision: 314832 URL: https://svnweb.freebsd.org/changeset/base/314832 Log: ps(1): Fix -w + UNLIMITED handling A follow-up fix for r314685. Because the -w flag is parsed after ps(1) infers termwidth from COLUMNS and stdout, and UNLIMITED happens to be the zero value, the single -w flag in combination with a non-terminal stdout or COLUMNS=0 could result in output truncated at 131 characters. (Despite the output being unlimited without -w.) Obviously, adding more -w shouldn't truncate output lines. The committed patch is from bdrewery@, and I've reviewed and tested it. Submitted by: bdrewery@ Reported by: bdrewery@ Sponsored by: Dell EMC Isilon Modified: head/bin/ps/ps.c Modified: head/bin/ps/ps.c ============================================================================== --- head/bin/ps/ps.c Tue Mar 7 04:33:17 2017 (r314831) +++ head/bin/ps/ps.c Tue Mar 7 04:51:35 2017 (r314832) @@ -401,7 +401,7 @@ main(int argc, char *argv[]) case 'w': if (wflag) termwidth = UNLIMITED; - else if (termwidth < 131) + else if (termwidth < 131 && termwidth != UNLIMITED) termwidth = 131; wflag++; break; From owner-svn-src-all@freebsd.org Tue Mar 7 05:00:28 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 15204D019CD; Tue, 7 Mar 2017 05:00:28 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A66151236; Tue, 7 Mar 2017 05:00:27 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v2750Q1h092456; Mon, 6 Mar 2017 21:00:26 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v2750Qqd092455; Mon, 6 Mar 2017 21:00:26 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703070500.v2750Qqd092455@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314831 - head/usr.bin/fortune In-Reply-To: <201703070433.v274XHBa047280@repo.freebsd.org> To: Ngie Cooper Date: Mon, 6 Mar 2017 21:00:26 -0800 (PST) CC: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 05:00:28 -0000 [ Charset UTF-8 unsupported, converting... ] > Author: ngie > Date: Tue Mar 7 04:33:17 2017 > New Revision: 314831 > URL: https://svnweb.freebsd.org/changeset/base/314831 > > Log: > Don't rely on dependency in Makefile.inc1 for strfile; make datfiles depend on strfile > > In most cases strfile is built as part of build-tools, but in the event that someone > cd'ed to the directory, tried to build from scratch, and had MK_GAMES=no previously, > the build would fail in .../datfiles , trying to find strfile . > > Mark this directory tree "SUBDIR_PARALLEL" safe to help facilitate this, instead of > shuffling around the SUBDIR entries (all of the other Makefiles will build standalone). > > MFC after: 1 week > Sponsored by: Dell EMC Isilon > > Modified: > head/usr.bin/fortune/Makefile > > Modified: head/usr.bin/fortune/Makefile > ============================================================================== > --- head/usr.bin/fortune/Makefile Tue Mar 7 04:13:22 2017 (r314830) > +++ head/usr.bin/fortune/Makefile Tue Mar 7 04:33:17 2017 (r314831) > @@ -1,5 +1,11 @@ > # @(#)Makefile 8.1 (Berkeley) 5/31/93 > +# > +# $FreeBSD$ > > -SUBDIR= fortune strfile datfiles unstr > +SUBDIR= fortune strfile datfiles unstr > + > +SUBDIR_DEPEND_datfiles= strfile That should be a space, variable ends past column 9. > + > +SUBDIR_PARALLEL= > > .include -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Mar 7 05:02:01 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CBFB0D01B79; Tue, 7 Mar 2017 05:02:01 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pg0-x242.google.com (mail-pg0-x242.google.com [IPv6:2607:f8b0:400e:c05::242]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 993D9169F; Tue, 7 Mar 2017 05:02:01 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pg0-x242.google.com with SMTP id 77so9016527pgc.0; Mon, 06 Mar 2017 21:02:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:mime-version:from:in-reply-to:date:cc:message-id:references :to; bh=leoCmje+EWYTeuCMLfDbrsQunZaPIcEc10dr3D0Litk=; b=FMJ3/kyz58yZrBpd0atCy7FRRI+oUd43GQQ6vBJ7F2pbiB2Rnj5qjre5qoAYlEpftM nhktWKKOha4LKEtOeJLS7+YhaioAmend9FAucQS+z4cHe24jF0ZgvaAKTF1QFUlJGCNA tnrpOSFBidGHc7Op6ZC10LRKu5qvX1spUvXt7yh1DihEjJLIr26EhpJTkTuux0maGR0H 8IyGJJWgjtKJe6cmzqahv58QYtZNhKHs70sThWl2QrHADwFzMBDaPTJTLIjmdrMQ9NfN dsf9y4Ml9Hp82/iPveH9LKplviiysWkxG+I2fXimgBQ0Cl1mOXCy6QkilaX80w6pbbd0 Fx1w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:mime-version:from:in-reply-to:date:cc :message-id:references:to; bh=leoCmje+EWYTeuCMLfDbrsQunZaPIcEc10dr3D0Litk=; b=MyKaMV8+xrhvJex5V+bMtYoLG/MHUNZuozEo1ByMlGcix/5+kQK9i3EhEDW4dWVITU VyGrqTIflyDW3ibe1/hsyXxaf0s2zRI+8PXG9hXTLfPTuKggsP4DnWFOVpgAzqUi41Sz tS0KRLwGKzAdE8Wi6IOcfvigDHVjBELTkjD/K3r7UFC1Fw62qAwJ3bNs9n04Qwkr7Vbt 5XgStR5Ht4fqDh79skjQGdxRoZjbXVEhE4ND/UXlItgpMQEiUrWMouNQejJxdRaLVhSr AKMc8R+5CWvNTEGe9hfXSzywoOJbSDp1WcjOidAb44Fc1wtLi3TijWBmg34izaqAhEKu sUHA== X-Gm-Message-State: AMke39kmE0iBKdLT36OCtHcg6hZMjWbzf8zFhtlybJGuHV+pMwOePbKnLerJfVj36ECQbQ== X-Received: by 10.84.169.36 with SMTP id g33mr32121098plb.36.1488862921097; Mon, 06 Mar 2017 21:02:01 -0800 (PST) Received: from pinklady.local (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id h71sm42581441pfj.65.2017.03.06.21.02.00 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 06 Mar 2017 21:02:00 -0800 (PST) Subject: Re: svn commit: r314831 - head/usr.bin/fortune Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Content-Type: multipart/signed; boundary="Apple-Mail=_4A169F45-0EAC-46FA-AE9B-CCCA36145675"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail From: "Ngie Cooper (yaneurabeya)" In-Reply-To: <201703070500.v2750Qqd092455@pdx.rh.CN85.dnsmgr.net> Date: Mon, 6 Mar 2017 21:01:59 -0800 Cc: Ngie Cooper , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-Id: References: <201703070500.v2750Qqd092455@pdx.rh.CN85.dnsmgr.net> To: rgrimes@freebsd.org X-Mailer: Apple Mail (2.3124) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 05:02:01 -0000 --Apple-Mail=_4A169F45-0EAC-46FA-AE9B-CCCA36145675 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Mar 6, 2017, at 21:00, Rodney W. Grimes = wrote: >=20 > [ Charset UTF-8 unsupported, converting... ] >> Author: ngie >> Date: Tue Mar 7 04:33:17 2017 >> New Revision: 314831 >> URL: https://svnweb.freebsd.org/changeset/base/314831 >>=20 >> Log: >> Don't rely on dependency in Makefile.inc1 for strfile; make datfiles = depend on strfile >>=20 >> In most cases strfile is built as part of build-tools, but in the = event that someone >> cd'ed to the directory, tried to build from scratch, and had = MK_GAMES=3Dno previously, >> the build would fail in .../datfiles , trying to find strfile . >>=20 >> Mark this directory tree "SUBDIR_PARALLEL" safe to help facilitate = this, instead of >> shuffling around the SUBDIR entries (all of the other Makefiles will = build standalone). >>=20 >> MFC after: 1 week >> Sponsored by: Dell EMC Isilon >>=20 >> Modified: >> head/usr.bin/fortune/Makefile >>=20 >> Modified: head/usr.bin/fortune/Makefile >> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >> --- head/usr.bin/fortune/Makefile Tue Mar 7 04:13:22 2017 = (r314830) >> +++ head/usr.bin/fortune/Makefile Tue Mar 7 04:33:17 2017 = (r314831) >> @@ -1,5 +1,11 @@ >> # @(#)Makefile 8.1 (Berkeley) 5/31/93 >> +# >> +# $FreeBSD$ >>=20 >> -SUBDIR=3D fortune strfile datfiles unstr >> +SUBDIR=3D fortune strfile datfiles unstr >> + >> +SUBDIR_DEPEND_datfiles=3D strfile > That should be a space, variable ends past column 9. "An ASCII space is allowed for variable names that extend beyond column = 9. =E2=80=9C "is allowed=E2=80=9D !=3D =E2=80=9Cmust=E2=80=9D. Thanks, -Ngie --Apple-Mail=_4A169F45-0EAC-46FA-AE9B-CCCA36145675 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJYvj7HAAoJEPWDqSZpMIYVrU0P/3HrKpkkcXhbICmE+D1LBUbH Xackvqo6y//qRoFNCm9pqWPCt2FbhxGyMzk6pbRtZ4JbfZgGcg8+eDpdrY+51zrw Bvlay+hWbjo/ErEZ14KUugJRZk5K0+msL98IchN6vqzmBnr3OFPJSuPiHGRWZwfw y5Z5Nd3SKwtwkJSwUa0wjAEnB97v8zCu5sGkv14HlGq7VfVKruMe+ydar/LwhNZI 1uK1ReVEuhwYr2msnvCeRt8E0R7ageQvp4IRGUkWzCOKmVzZYoaKgmMlYy8OvtFx PVJKpP/E3hoXo4fP7n/bEGbEvQk1uj/ZSqKZcamOOu9R6nAXDhNfYAnJCn6/JHEz XqMRPYztCWNRT6Za09UvHSaBtbFXy95gooKQwOIsqEnVdE7UjA/CGZiw6/5Kbz3j jgNgGMmEjwOZV6U3lAH+tQfxmuovVRxKbQC1EnbeBrrRjAxJgTOpASuBG6HYf76i pcLVTyolcV9SWvYuQWoIUdqvb4U9sjLCFGY6Kg0Z2EIJ0qe1FzKNAWG6yPR1tKPl BoxIMlP6SMKeDCWvLm30obARu465LX8CAuFMp9CwSYKHUr9DTKfijaIH21+OQre0 sUwaooYdjoWnlk97IXIEC0fd3dz9Ih8cZMUo1vXPchbuedEQV/o1sYtSXINvkvQU USyc7pnybZlVcT6dDRSW =kgjz -----END PGP SIGNATURE----- --Apple-Mail=_4A169F45-0EAC-46FA-AE9B-CCCA36145675-- From owner-svn-src-all@freebsd.org Tue Mar 7 05:07:20 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 61CE5D01D19; Tue, 7 Mar 2017 05:07:20 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pf0-x243.google.com (mail-pf0-x243.google.com [IPv6:2607:f8b0:400e:c00::243]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2E9C01954; Tue, 7 Mar 2017 05:07:20 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pf0-x243.google.com with SMTP id o126so5688012pfb.1; Mon, 06 Mar 2017 21:07:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:mime-version:from:in-reply-to:date:cc:message-id:references :to; bh=wxd7P4fZZxulRbw64xnaMDWp86o3jZUaV4VM28+gkzA=; b=QBbFebskeKCNot36FAa4MmPCIHR47fmAIJ6BZRSk08Y2s6QWbIbM80uenSx2oIgIq2 X54JHAf7pX2UHgTl7rLMhQJSs11MDjrL4glr/4nSydg9UUas4nCjffCpFQkSBQmfUMKx RUqKqtP4Hdae2ZuVwgmdP1MXpSpwhKfVjkHrG01sdQRD9jb1szbjuqd6rlYFwGWxHvOM XPbZQTVtY5zdDlvXHtYonxxXXGarNBJFWReHrk8qfXqvGdeZcpBc36W6SdvvxeVdUbzY G8wV6AeIS2xGTCrcO7EFnYgd+wQpHs+DGviG0OqRs7fNeMW8QoZfhDGMrf2BLEPQAcqQ FWtw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:mime-version:from:in-reply-to:date:cc :message-id:references:to; bh=wxd7P4fZZxulRbw64xnaMDWp86o3jZUaV4VM28+gkzA=; b=aixxXxH6V+xX5/ku8YHIv9uneHNQXjri4Vx0YfCVecdSusYmyqiU6PqmCt0srlFfIV yNHbHqsosVGHNKAOywvb8xBtlLhWvRCB6dVI0F7HPiO6sbQIxhEBQxS+9/CesvgWlvtN OJt4t6+F/EkokFwKOBlt3RnKQ5QUABBH0DRXixrQGqUUge05VBR2/BCovMzfwnaHllVQ 3LHtMgTI7gPOuSS3dvKTddigmtli9T+NehThI4T9RalZ7gQu93WGliek+9lbm6807VQ/ 74L0bUgs5ReUWF0llf3taaHtOqkGR6JamEf0kIIX70reNrtXNNsemKV+FDuZSPwH3goo roHw== X-Gm-Message-State: AMke39m6ehPlDCL+Cwli+LdrXOpe5nVh4xyrKQP7E/1wknXZXDw8g78Loq6zAKELEqeyYg== X-Received: by 10.98.67.193 with SMTP id l62mr25563663pfi.148.1488863239515; Mon, 06 Mar 2017 21:07:19 -0800 (PST) Received: from pinklady.local (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id c1sm42533068pfk.112.2017.03.06.21.07.18 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 06 Mar 2017 21:07:18 -0800 (PST) Subject: Re: svn commit: r314831 - head/usr.bin/fortune Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Content-Type: multipart/signed; boundary="Apple-Mail=_103D9FF1-644D-4568-8118-913F38E8E55F"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail From: "Ngie Cooper (yaneurabeya)" In-Reply-To: Date: Mon, 6 Mar 2017 21:07:18 -0800 Cc: Ngie Cooper , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-Id: References: <201703070500.v2750Qqd092455@pdx.rh.CN85.dnsmgr.net> To: rgrimes@freebsd.org X-Mailer: Apple Mail (2.3124) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 05:07:20 -0000 --Apple-Mail=_103D9FF1-644D-4568-8118-913F38E8E55F Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Mar 6, 2017, at 21:01, Ngie Cooper (yaneurabeya) = wrote: >=20 >=20 >> On Mar 6, 2017, at 21:00, Rodney W. Grimes = wrote: >>=20 >> [ Charset UTF-8 unsupported, converting... ] >>> Author: ngie >>> Date: Tue Mar 7 04:33:17 2017 >>> New Revision: 314831 >>> URL: https://svnweb.freebsd.org/changeset/base/314831 >>>=20 >>> Log: >>> Don't rely on dependency in Makefile.inc1 for strfile; make datfiles = depend on strfile >>>=20 >>> In most cases strfile is built as part of build-tools, but in the = event that someone >>> cd'ed to the directory, tried to build from scratch, and had = MK_GAMES=3Dno previously, >>> the build would fail in .../datfiles , trying to find strfile . >>>=20 >>> Mark this directory tree "SUBDIR_PARALLEL" safe to help facilitate = this, instead of >>> shuffling around the SUBDIR entries (all of the other Makefiles will = build standalone). >>>=20 >>> MFC after: 1 week >>> Sponsored by: Dell EMC Isilon >>>=20 >>> Modified: >>> head/usr.bin/fortune/Makefile >>>=20 >>> Modified: head/usr.bin/fortune/Makefile >>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>> --- head/usr.bin/fortune/Makefile Tue Mar 7 04:13:22 2017 = (r314830) >>> +++ head/usr.bin/fortune/Makefile Tue Mar 7 04:33:17 2017 = (r314831) >>> @@ -1,5 +1,11 @@ >>> # @(#)Makefile 8.1 (Berkeley) 5/31/93 >>> +# >>> +# $FreeBSD$ >>>=20 >>> -SUBDIR=3D fortune strfile datfiles unstr >>> +SUBDIR=3D fortune strfile datfiles unstr >>> + >>> +SUBDIR_DEPEND_datfiles=3D strfile >> That should be a space, variable ends past column 9. >=20 > "An ASCII space is allowed for variable names that extend beyond = column 9. =E2=80=9C >=20 > "is allowed=E2=80=9D !=3D =E2=80=9Cmust=E2=80=9D. And being extremely aesthetically nitpicky, as the queer person I am = with my attention to colors and design (:P..), I would be kind of = annoyed with right hand sides being unaligned, e.g., SOMETHING_REALLY_LONG=3D foo # 1 hard tab SOMETHING_SHORTER=3D bar # 2 hard tabs vs SOMETHING_REALLY_LONG=3D foo # 1 space SOMETHING_SHORTER=3D bar # 2 spaces --Apple-Mail=_103D9FF1-644D-4568-8118-913F38E8E55F Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJYvkAGAAoJEPWDqSZpMIYVy3wP/2+hrG3RZvJOSH68V9whb5DA 8LK8eOs1Z+YMmbtX0JCc6Zr5MUcAMg/Ta3LlLQXpnOtF7n3otswLS37LJoZKNU/O 1CUK90mMeSlAEysjvprg7NW9rxyxceJEcm/ClyLDMImzbSMSHnlCkO7yYxhr/ZGw kZ1dC1mI2I3bWtzPrjDou4eLQGD5If68oJLlrJi+q0grWdHo9io30UVz/snrC9Y3 LIyqyiYdFLS8kYxwMs7GQG1WNH3nFKokuuovLxQwWL4n2Rt084DBdAWMP0sQ3Bw5 HkDlMY15mdQ+WjomD8dZG3uW4csweTZCWxmzQd5mRb+/cKdukharlv8BF0yellOJ i1M5MLIsG0k8VrhuqrWkIG35AbS6a5FsLffIDn+LzoGuGNdvYHiyXJWsFk16H+i2 j/jt31sFlMW/43P4OROxjjj8tvIb29BDeEVXhFX4pSYD9wXKB3dj5t87GViXkji9 /ttKtBCZ73WBQ2wk4n9mbwsDCdS3n/0oKo0hyP/eWSa2+t0zfOTRdzGpF72/4SD7 Fukw0avklGuf3w5q6SlsInnBusLcX/bTCDpb0y6LoyzP+7fqhzzj8m2qncoOMEWd e7l7yeCQhqIUAP+aWoj7oX1F2Ibzbhdwutn5FcQZh5WJhnUA+z4tkjPnGDScswnR i3Ipxcmf4iHMkSwXdxZN =eYIY -----END PGP SIGNATURE----- --Apple-Mail=_103D9FF1-644D-4568-8118-913F38E8E55F-- From owner-svn-src-all@freebsd.org Tue Mar 7 05:10:40 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E6B78D01DEC; Tue, 7 Mar 2017 05:10:40 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C12FA1B20; Tue, 7 Mar 2017 05:10:40 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v275Adw7059926; Tue, 7 Mar 2017 05:10:39 GMT (envelope-from rgrimes@FreeBSD.org) Received: (from rgrimes@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v275AdYd059917; Tue, 7 Mar 2017 05:10:39 GMT (envelope-from rgrimes@FreeBSD.org) Message-Id: <201703070510.v275AdYd059917@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rgrimes set sender to rgrimes@FreeBSD.org using -f From: "Rodney W. Grimes" Date: Tue, 7 Mar 2017 05:10:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314833 - in head: bin/pkill lib/libxo/tests/encoder libexec/rtld-elf share/termcap usr.bin/chpass usr.bin/passwd usr.sbin/bsdinstall/partedit usr.sbin/mailwrapper usr.sbin/nologin X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 05:10:41 -0000 Author: rgrimes Date: Tue Mar 7 05:10:38 2017 New Revision: 314833 URL: https://svnweb.freebsd.org/changeset/base/314833 Log: Convert absolute links to relative links. Style.Makefile(9) has been ignored to produce minimal diffs. Approved by: grehan (mentor) MFC after: 1 week Modified: head/bin/pkill/Makefile head/lib/libxo/tests/encoder/Makefile head/libexec/rtld-elf/Makefile head/share/termcap/Makefile head/usr.bin/chpass/Makefile head/usr.bin/passwd/Makefile head/usr.sbin/bsdinstall/partedit/Makefile head/usr.sbin/mailwrapper/Makefile head/usr.sbin/nologin/Makefile Modified: head/bin/pkill/Makefile ============================================================================== --- head/bin/pkill/Makefile Tue Mar 7 04:51:35 2017 (r314832) +++ head/bin/pkill/Makefile Tue Mar 7 05:10:38 2017 (r314833) @@ -16,8 +16,8 @@ MLINKS= pkill.1 pgrep.1 # keep in mind that pkill is installed to /usr/bin in other # OS types, e.g., NetBSD, OpenBSD, Solaris, and Linux. # -SYMLINKS= ${BINDIR}/pkill /usr/bin/pkill -SYMLINKS+= ${BINDIR}/pgrep /usr/bin/pgrep +SYMLINKS= ../..${BINDIR}/pkill /usr/bin/pkill +SYMLINKS+= ../..${BINDIR}/pgrep /usr/bin/pgrep .if ${MK_TESTS} != "no" SUBDIR+= tests Modified: head/lib/libxo/tests/encoder/Makefile ============================================================================== --- head/lib/libxo/tests/encoder/Makefile Tue Mar 7 04:51:35 2017 (r314832) +++ head/lib/libxo/tests/encoder/Makefile Tue Mar 7 05:10:38 2017 (r314833) @@ -8,7 +8,7 @@ SHLIB_NAME= libenc_test.so LIBDIR= ${TESTSBASE}/lib/libxo -SYMLINKS+= ${LIBDIR}/${SHLIB_NAME} /usr/lib/libxo/encoder/test.enc +SYMLINKS+= ../../../tests/lib/libxo/${SHLIB_NAME} /usr/lib/libxo/encoder/test.enc SRCS= enc_test.c Modified: head/libexec/rtld-elf/Makefile ============================================================================== --- head/libexec/rtld-elf/Makefile Tue Mar 7 04:51:35 2017 (r314832) +++ head/libexec/rtld-elf/Makefile Tue Mar 7 05:10:38 2017 (r314833) @@ -34,7 +34,7 @@ WARNS?= 2 INSTALLFLAGS= -C -b PRECIOUSPROG= BINDIR= /libexec -SYMLINKS= ${BINDIR}/${PROG} ${LIBEXECDIR}/${PROG} +SYMLINKS= ../..${BINDIR}/${PROG} ${LIBEXECDIR}/${PROG} MLINKS= rtld.1 ld-elf.so.1.1 \ rtld.1 ld.so.1 Modified: head/share/termcap/Makefile ============================================================================== --- head/share/termcap/Makefile Tue Mar 7 04:51:35 2017 (r314832) +++ head/share/termcap/Makefile Tue Mar 7 05:10:38 2017 (r314833) @@ -24,6 +24,6 @@ termcap.db: termcap cap_mkdb ${CAP_MKDB_ENDIAN} -f ${.TARGET:R} ${.ALLSRC} etc-termcap: - ${INSTALL_SYMLINK} ${BINDIR}/misc/termcap ${DESTDIR}/etc/termcap + ${INSTALL_RSYMLINK} ${BINDIR}/misc/termcap ${DESTDIR}/etc/termcap .include Modified: head/usr.bin/chpass/Makefile ============================================================================== --- head/usr.bin/chpass/Makefile Tue Mar 7 04:51:35 2017 (r314832) +++ head/usr.bin/chpass/Makefile Tue Mar 7 05:10:38 2017 (r314833) @@ -22,12 +22,12 @@ LIBADD= crypt util LIBADD+= ypclnt .endif -SYMLINKS= ${BINDIR}/chpass ${BINDIR}/chfn -SYMLINKS+= ${BINDIR}/chpass ${BINDIR}/chsh +SYMLINKS= chpass ${BINDIR}/chfn +SYMLINKS+= chpass ${BINDIR}/chsh .if ${MK_NIS} != "no" -SYMLINKS+= ${BINDIR}/chpass ${BINDIR}/ypchpass -SYMLINKS+= ${BINDIR}/chpass ${BINDIR}/ypchfn -SYMLINKS+= ${BINDIR}/chpass ${BINDIR}/ypchsh +SYMLINKS+= chpass ${BINDIR}/ypchfn +SYMLINKS+= chpass ${BINDIR}/ypchpass +SYMLINKS+= chpass ${BINDIR}/ypchsh .endif MLINKS= chpass.1 chfn.1 chpass.1 chsh.1 Modified: head/usr.bin/passwd/Makefile ============================================================================== --- head/usr.bin/passwd/Makefile Tue Mar 7 04:51:35 2017 (r314832) +++ head/usr.bin/passwd/Makefile Tue Mar 7 05:10:38 2017 (r314833) @@ -9,7 +9,7 @@ BINMODE = 4555 PRECIOUSPROG= LIBADD = pam .if ${MK_NIS} != "no" -SYMLINKS = ${BINDIR}/passwd ${BINDIR}/yppasswd +SYMLINKS = passwd ${BINDIR}/yppasswd MLINKS = passwd.1 yppasswd.1 .endif Modified: head/usr.sbin/bsdinstall/partedit/Makefile ============================================================================== --- head/usr.sbin/bsdinstall/partedit/Makefile Tue Mar 7 04:51:35 2017 (r314832) +++ head/usr.sbin/bsdinstall/partedit/Makefile Tue Mar 7 05:10:38 2017 (r314833) @@ -4,7 +4,7 @@ BINDIR= ${LIBEXECDIR}/bsdinstall PROG= partedit LINKS= ${BINDIR}/partedit ${BINDIR}/autopart \ ${BINDIR}/partedit ${BINDIR}/scriptedpart -SYMLINKS= ${BINDIR}/partedit /usr/sbin/sade +SYMLINKS= ../libexec/bsdinstall/partedit /usr/sbin/sade LIBADD+= geom ncursesw util dialog m PARTEDIT_ARCH= ${MACHINE} Modified: head/usr.sbin/mailwrapper/Makefile ============================================================================== --- head/usr.sbin/mailwrapper/Makefile Tue Mar 7 04:51:35 2017 (r314832) +++ head/usr.sbin/mailwrapper/Makefile Tue Mar 7 05:10:38 2017 (r314833) @@ -10,19 +10,19 @@ LIBADD= util .endif .if ${MK_MAILWRAPPER} != "no" || ${MK_SENDMAIL} != "no" -SYMLINKS= ${BINDIR}/mailwrapper /usr/sbin/sendmail \ - ${BINDIR}/mailwrapper /usr/sbin/hoststat \ - ${BINDIR}/mailwrapper /usr/sbin/purgestat \ - ${BINDIR}/mailwrapper /usr/bin/newaliases \ - ${BINDIR}/mailwrapper /usr/bin/mailq +SYMLINKS= ../sbin/mailwrapper /usr/bin/mailq \ + ../sbin/mailwrapper /usr/bin/newaliases \ + mailwrapper /usr/sbin/hoststat \ + mailwrapper /usr/sbin/purgestat \ + mailwrapper /usr/sbin/sendmail .if ${MK_MAILWRAPPER} == "no" && ${MK_SENDMAIL} != "no" -SYMLINKS+= /usr/libexec/sendmail/sendmail ${BINDIR}/mailwrapper +SYMLINKS+= ../libexec/sendmail/sendmail ${BINDIR}/mailwrapper .endif .endif .if ${MK_MAILWRAPPER} != "no" && ${MK_SENDMAIL} == "no" -SYMLINKS+= ${BINDIR}/mailwrapper /bin/rmail +SYMLINKS+= ..${BINDIR}/mailwrapper /bin/rmail .endif .if ${MK_MAILWRAPPER} != "no" Modified: head/usr.sbin/nologin/Makefile ============================================================================== --- head/usr.sbin/nologin/Makefile Tue Mar 7 04:51:35 2017 (r314832) +++ head/usr.sbin/nologin/Makefile Tue Mar 7 05:10:38 2017 (r314833) @@ -4,7 +4,7 @@ PROG= nologin MAN= nologin.5 nologin.8 -SYMLINKS= ${BINDIR}/nologin /sbin/nologin +SYMLINKS= ..${BINDIR}/nologin /sbin/nologin # It is important that nologin be statically linked for security # reasons. A dynamic non-setuid binary can be linked against a trojan From owner-svn-src-all@freebsd.org Tue Mar 7 05:15:54 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 29B9FD01FEC; Tue, 7 Mar 2017 05:15:54 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pf0-x22b.google.com (mail-pf0-x22b.google.com [IPv6:2607:f8b0:400e:c00::22b]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id EA0B11029; Tue, 7 Mar 2017 05:15:53 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pf0-x22b.google.com with SMTP id o126so22632269pfb.3; Mon, 06 Mar 2017 21:15:53 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:mime-version:from:in-reply-to:date:cc:message-id:references :to; bh=G2LzBrQzBM72vVay2XTIqc5YziPJl5FUMcOxx+LSfDE=; b=PKiZDuLG10p3y8sikDUoGTmCtIbFWdR/LsxEuk3EL65uLxaNWV+lOOiI+CMBAXO+aT jaPD7HN+eZMlZsgbhg5HWMVf9JixddtWD+f4VZB88Fs7TgtrKZZnih8NWc3AcXP49LZC z6rnvS9g8M1VrUlTdEyNse1qLlB6w8ZAAPvwxyEfuh3c2z39ItvHA2PqWDrc+JUQqKDN Zg0Bqwxi+0AZ2CDwH61LOHXAhWh2m7mi7ZTtS7XBjpwT4ZdcbadyxnMTUqx7Lr35hxml 7XQDsL+Pd9Oa2cynaAeuTtp83srLFp7nVu0GsY64KNetcLLd7H6PBpxhEhXl+nx5SeK9 k3SQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:mime-version:from:in-reply-to:date:cc :message-id:references:to; bh=G2LzBrQzBM72vVay2XTIqc5YziPJl5FUMcOxx+LSfDE=; b=rv5BrTKDq1iJqxMYdtUZNMWDyMsupYcVxo53zSK74Xv+pZoJu9xY7NojqMqh/qRtHF emAdJdq7olxuIc5dUZdVVJMAHeoayn6lUAJsGNLRJZ9jwnrkGd5qHw05iMFN6ShvZA0I NoymmnMJtqn+VCvAApYZ24DCxMPiyKQBehV/evGNcyugWkTjF1H4O0BC/14dxUUMp6yM 6+gJZ58goCYzjvUV2GeOEzEHJzWg4fRBEPvkUdOKP+sxyekGkhmgJZOFEDQulbzcztna Ew4h9pnW9KCPRYlSBV9C8l2p6g8ge+7q5mHglmuQtSxcuSQHExNBpseK/DtcbhnI9kgo FbYQ== X-Gm-Message-State: AMke39kAPD3ymfFhuakPLAJA0VFF5JXe8G3Lm/DdU2dch3p/83PGEiXw6tSF+ieN/hegZw== X-Received: by 10.84.217.199 with SMTP id d7mr32320318plj.80.1488863752780; Mon, 06 Mar 2017 21:15:52 -0800 (PST) Received: from pinklady.local (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id e16sm12119830pfb.102.2017.03.06.21.15.52 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 06 Mar 2017 21:15:52 -0800 (PST) Subject: Re: svn commit: r314833 - in head: bin/pkill lib/libxo/tests/encoder libexec/rtld-elf share/termcap usr.bin/chpass usr.bin/passwd usr.sbin/bsdinstall/partedit usr.sbin/mailwrapper usr.sbin/nologin Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Content-Type: multipart/signed; boundary="Apple-Mail=_FCC61D3E-BE32-4ED6-8E02-A6BFD1B58AA9"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail From: "Ngie Cooper (yaneurabeya)" In-Reply-To: <201703070510.v275AdYd059917@repo.freebsd.org> Date: Mon, 6 Mar 2017 21:15:51 -0800 Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-Id: <21A8D529-BFB9-4774-83FB-5CABD2BC689C@gmail.com> References: <201703070510.v275AdYd059917@repo.freebsd.org> To: "Rodney W. Grimes" X-Mailer: Apple Mail (2.3124) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 05:15:54 -0000 --Apple-Mail=_FCC61D3E-BE32-4ED6-8E02-A6BFD1B58AA9 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii > On Mar 6, 2017, at 21:10, Rodney W. Grimes = wrote: >=20 > Author: rgrimes > Date: Tue Mar 7 05:10:38 2017 > New Revision: 314833 > URL: https://svnweb.freebsd.org/changeset/base/314833 >=20 > Log: > Convert absolute links to relative links. > Style.Makefile(9) has been ignored to produce minimal diffs. >=20 > Approved by: grehan (mentor) > MFC after: 1 week >=20 > Modified: > head/bin/pkill/Makefile > head/lib/libxo/tests/encoder/Makefile > head/libexec/rtld-elf/Makefile > head/share/termcap/Makefile > head/usr.bin/chpass/Makefile > head/usr.bin/passwd/Makefile > head/usr.sbin/bsdinstall/partedit/Makefile > head/usr.sbin/mailwrapper/Makefile > head/usr.sbin/nologin/Makefile >=20 > Modified: head/bin/pkill/Makefile > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/bin/pkill/Makefile Tue Mar 7 04:51:35 2017 = (r314832) > +++ head/bin/pkill/Makefile Tue Mar 7 05:10:38 2017 = (r314833) > @@ -16,8 +16,8 @@ MLINKS=3D pkill.1 pgrep.1 > # keep in mind that pkill is installed to /usr/bin in other > # OS types, e.g., NetBSD, OpenBSD, Solaris, and Linux. > # > -SYMLINKS=3D ${BINDIR}/pkill /usr/bin/pkill > -SYMLINKS+=3D ${BINDIR}/pgrep /usr/bin/pgrep > +SYMLINKS=3D ../..${BINDIR}/pkill /usr/bin/pkill > +SYMLINKS+=3D ../..${BINDIR}/pgrep /usr/bin/pgrep >=20 > .if ${MK_TESTS} !=3D "no" > SUBDIR+=3D tests >=20 > Modified: head/lib/libxo/tests/encoder/Makefile > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/lib/libxo/tests/encoder/Makefile Tue Mar 7 04:51:35 2017 = (r314832) > +++ head/lib/libxo/tests/encoder/Makefile Tue Mar 7 05:10:38 2017 = (r314833) > @@ -8,7 +8,7 @@ SHLIB_NAME=3D libenc_test.so >=20 > LIBDIR=3D ${TESTSBASE}/lib/libxo >=20 > -SYMLINKS+=3D ${LIBDIR}/${SHLIB_NAME} /usr/lib/libxo/encoder/test.enc > +SYMLINKS+=3D ../../../tests/lib/libxo/${SHLIB_NAME} = /usr/lib/libxo/encoder/test.enc This change breaks setting TESTSBASE !=3D /usr/tests . Please = fix (my employer depends on this being functional). Thanks, -Ngie --Apple-Mail=_FCC61D3E-BE32-4ED6-8E02-A6BFD1B58AA9 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJYvkIHAAoJEPWDqSZpMIYVwO8P/jwilO7Y1fo27Mzq6NKDRinn GDu/V16tTr/JuDP0EJV3jdKGXmT/0hDnXmKq9PlTV3boPHqZyByCZei7+i9Rp+LR Ke6u3AdhPwsx/kZQ4dezXBHQLv0IXEibWoF5ngo5yvTudB3qUP1uPLzjbJz/W+tb vzB6enryh6loigq3d5xSXDI3Ie0ktKlmWMAeTOozeMOoDKUKNmF4ngv+S1WJFpir 1CHu59g5RiZcZ7cWuz3qdbb7qE1095/a+A9H9GpUF1DvQmfMH80D1FZSLMju2jDu nEEAUhIp/NDomRdz7DO5jMt9ZUXaM01k/fEzFgEOZGVhWjHKeNwthmjsUITrOIzt seq18WmywXyRqnnPpvNz0ITfEQi9K3JbcnhXioKNypapJSXcztoqrt6DcoANRvYi et5pjPvx5HqhgaGgpVgnGBSzwyNzmnHe594SICM00EODFD7V1y2fX43hCMlb3QRa b4/1lk+Fdo0vHu9VhJSDBvmZcEwQS7Eibol678w2frEOL+8CSlNYQyrAXNE7Xq/0 KhCRIZ5IX0pikJRTW211Ma89tdNFE1fDKsN5WNUMhuHbZIkSshE7WddNfzg7ABPT WX62xgmqNTzdb83rClXI6cLENq9W2zrJwkwhdQiJA4G/lqEYtAZrWtri7nReUg6x i3Bh6K/c02AH90EBd6Tg =9NOH -----END PGP SIGNATURE----- --Apple-Mail=_FCC61D3E-BE32-4ED6-8E02-A6BFD1B58AA9-- From owner-svn-src-all@freebsd.org Tue Mar 7 05:29:36 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B6BB2D0146F; Tue, 7 Mar 2017 05:29:36 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6A25F1661; Tue, 7 Mar 2017 05:29:36 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v275TYnm092594; Mon, 6 Mar 2017 21:29:34 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v275TYnT092593; Mon, 6 Mar 2017 21:29:34 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703070529.v275TYnT092593@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314833 - in head: bin/pkill lib/libxo/tests/encoder libexec/rtld-elf share/termcap usr.bin/chpass usr.bin/passwd usr.sbin/bsdinstall/partedit usr.sbin/mailwrapper usr.sbin/nologin In-Reply-To: <21A8D529-BFB9-4774-83FB-5CABD2BC689C@gmail.com> To: "Ngie Cooper (yaneurabeya)" Date: Mon, 6 Mar 2017 21:29:34 -0800 (PST) CC: "Rodney W. Grimes" , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 05:29:36 -0000 -- Start of PGP signed section. > > > On Mar 6, 2017, at 21:10, Rodney W. Grimes wrote: > > > > Author: rgrimes > > Date: Tue Mar 7 05:10:38 2017 > > New Revision: 314833 > > URL: https://svnweb.freebsd.org/changeset/base/314833 > > > > Log: > > Convert absolute links to relative links. > > Style.Makefile(9) has been ignored to produce minimal diffs. > > > > Approved by: grehan (mentor) > > MFC after: 1 week > > > > Modified: > > head/bin/pkill/Makefile > > head/lib/libxo/tests/encoder/Makefile > > head/libexec/rtld-elf/Makefile > > head/share/termcap/Makefile > > head/usr.bin/chpass/Makefile > > head/usr.bin/passwd/Makefile > > head/usr.sbin/bsdinstall/partedit/Makefile > > head/usr.sbin/mailwrapper/Makefile > > head/usr.sbin/nologin/Makefile > > > > Modified: head/bin/pkill/Makefile > > ============================================================================== > > --- head/bin/pkill/Makefile Tue Mar 7 04:51:35 2017 (r314832) > > +++ head/bin/pkill/Makefile Tue Mar 7 05:10:38 2017 (r314833) > > @@ -16,8 +16,8 @@ MLINKS= pkill.1 pgrep.1 > > # keep in mind that pkill is installed to /usr/bin in other > > # OS types, e.g., NetBSD, OpenBSD, Solaris, and Linux. > > # > > -SYMLINKS= ${BINDIR}/pkill /usr/bin/pkill > > -SYMLINKS+= ${BINDIR}/pgrep /usr/bin/pgrep > > +SYMLINKS= ../..${BINDIR}/pkill /usr/bin/pkill > > +SYMLINKS+= ../..${BINDIR}/pgrep /usr/bin/pgrep > > > > .if ${MK_TESTS} != "no" > > SUBDIR+= tests > > > > Modified: head/lib/libxo/tests/encoder/Makefile > > ============================================================================== > > --- head/lib/libxo/tests/encoder/Makefile Tue Mar 7 04:51:35 2017 (r314832) > > +++ head/lib/libxo/tests/encoder/Makefile Tue Mar 7 05:10:38 2017 (r314833) > > @@ -8,7 +8,7 @@ SHLIB_NAME= libenc_test.so > > > > LIBDIR= ${TESTSBASE}/lib/libxo > > > > -SYMLINKS+= ${LIBDIR}/${SHLIB_NAME} /usr/lib/libxo/encoder/test.enc > > +SYMLINKS+= ../../../tests/lib/libxo/${SHLIB_NAME} /usr/lib/libxo/encoder/test.enc > > This change breaks setting TESTSBASE != /usr/tests . Please fix (my employer depends on this being functional). That well happen when I resolve the SYMLINKS .mk glue that should probalby be calling INSTALL_RSYMLINKS and not INSTALL_SYMLINKS. For now this was the minimal diff that corrected the contents of DESTDIR. I did not get a response from either Bdrewery or Bapt on my direct question about the issue that SYMLINKS has no relative mechansim, other than we could add a RSYMLINKS possibly. > Thanks, > -Ngie -- End of PGP section, PGP failed! -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Mar 7 05:35:15 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A3860D01672; Tue, 7 Mar 2017 05:35:15 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 728E71B0D; Tue, 7 Mar 2017 05:35:15 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v275ZEwY072031; Tue, 7 Mar 2017 05:35:14 GMT (envelope-from cy@FreeBSD.org) Received: (from cy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v275ZEqc072030; Tue, 7 Mar 2017 05:35:14 GMT (envelope-from cy@FreeBSD.org) Message-Id: <201703070535.v275ZEqc072030@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org using -f From: Cy Schubert Date: Tue, 7 Mar 2017 05:35:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314834 - in stable: 10/contrib/ipfilter/lib 11/contrib/ipfilter/lib X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 05:35:15 -0000 Author: cy Date: Tue Mar 7 05:35:14 2017 New Revision: 314834 URL: https://svnweb.freebsd.org/changeset/base/314834 Log: MFC r314627: Fix leak (free str before returning when ctx's calloc fails). Submitted by: trix_juniper.net (Tom Rix) Reviewed by: cy, ngie Discovered by: clang's static analyzer Differential Revision: D9877 Modified: stable/11/contrib/ipfilter/lib/save_v2trap.c Directory Properties: stable/11/ (props changed) Changes in other areas also in this revision: Modified: stable/10/contrib/ipfilter/lib/save_v2trap.c Directory Properties: stable/10/ (props changed) Modified: stable/11/contrib/ipfilter/lib/save_v2trap.c ============================================================================== --- stable/11/contrib/ipfilter/lib/save_v2trap.c Tue Mar 7 05:10:38 2017 (r314833) +++ stable/11/contrib/ipfilter/lib/save_v2trap.c Tue Mar 7 05:35:14 2017 (r314834) @@ -124,8 +124,10 @@ snmpv2_parse(char **strings) str = strdup(*strings); ctx = calloc(1, sizeof(*ctx)); - if (ctx == NULL) + if (ctx == NULL) { + free(str); return NULL; + } ctx->fd = -1; From owner-svn-src-all@freebsd.org Tue Mar 7 05:35:15 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E9C00D0167A; Tue, 7 Mar 2017 05:35:15 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B64171B0E; Tue, 7 Mar 2017 05:35:15 +0000 (UTC) (envelope-from cy@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v275ZE1I072037; Tue, 7 Mar 2017 05:35:14 GMT (envelope-from cy@FreeBSD.org) Received: (from cy@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v275ZEDC072036; Tue, 7 Mar 2017 05:35:14 GMT (envelope-from cy@FreeBSD.org) Message-Id: <201703070535.v275ZEDC072036@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: cy set sender to cy@FreeBSD.org using -f From: Cy Schubert Date: Tue, 7 Mar 2017 05:35:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314834 - in stable: 10/contrib/ipfilter/lib 11/contrib/ipfilter/lib X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 05:35:16 -0000 Author: cy Date: Tue Mar 7 05:35:14 2017 New Revision: 314834 URL: https://svnweb.freebsd.org/changeset/base/314834 Log: MFC r314627: Fix leak (free str before returning when ctx's calloc fails). Submitted by: trix_juniper.net (Tom Rix) Reviewed by: cy, ngie Discovered by: clang's static analyzer Differential Revision: D9877 Modified: stable/10/contrib/ipfilter/lib/save_v2trap.c Directory Properties: stable/10/ (props changed) Changes in other areas also in this revision: Modified: stable/11/contrib/ipfilter/lib/save_v2trap.c Directory Properties: stable/11/ (props changed) Modified: stable/10/contrib/ipfilter/lib/save_v2trap.c ============================================================================== --- stable/10/contrib/ipfilter/lib/save_v2trap.c Tue Mar 7 05:10:38 2017 (r314833) +++ stable/10/contrib/ipfilter/lib/save_v2trap.c Tue Mar 7 05:35:14 2017 (r314834) @@ -124,8 +124,10 @@ snmpv2_parse(char **strings) str = strdup(*strings); ctx = calloc(1, sizeof(*ctx)); - if (ctx == NULL) + if (ctx == NULL) { + free(str); return NULL; + } ctx->fd = -1; From owner-svn-src-all@freebsd.org Tue Mar 7 05:39:11 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CD548D01845; Tue, 7 Mar 2017 05:39:11 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: from mail-wr0-f173.google.com (mail-wr0-f173.google.com [209.85.128.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6F8B61DEB; Tue, 7 Mar 2017 05:39:11 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: by mail-wr0-f173.google.com with SMTP id u48so131189354wrc.0; Mon, 06 Mar 2017 21:39:11 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:reply-to:in-reply-to:references :from:date:message-id:subject:to:cc:content-transfer-encoding; bh=Uz/gKmOtqxpzOwCECyI9KhK52u4PJ/SC690evTd9SaY=; b=L5nJL4iB5KCc+r8s7ePUFUdJAI5/H8KjVChiS6KBYjI6XhAQ/6m73O+mHdqUYOdCtT 3NW4gBSqYJ+BJjldv0xmpz+cb1RxQ8nIqdv8YgfSn4D+1JAWq6vxHXDM/tOMZ/kMQsf0 mH2dXD8WT77PNc6fQjwAgqbjM6KyGA/xG1/iSGx2XnmUOQmIsJhZwkYpBTNE1B1BmcaL 1XU0z6nkiXEZOrYUrXc5chR3R4VBEr13JkSZbB8w0Tgsv2XsD9aRvzRD6QcC8JQ4p7u7 HkG81EGzIm40lDXV4VqFRPUIXMuFwoAE/lFsS7YmezVmPnLiCS24xTtTLrzyKvr5bP2s RbCg== X-Gm-Message-State: AMke39lcL6MEKuyWrQxKzO/5H5YJOIg/S8/u34YwMjMF31ZK/e6YeXEIZq76hZJ+z5wGgA== X-Received: by 10.223.153.17 with SMTP id x17mr17176788wrb.55.1488865143963; Mon, 06 Mar 2017 21:39:03 -0800 (PST) Received: from mail-wr0-f175.google.com (mail-wr0-f175.google.com. [209.85.128.175]) by smtp.gmail.com with ESMTPSA id 11sm29562106wrb.10.2017.03.06.21.39.03 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 06 Mar 2017 21:39:03 -0800 (PST) Received: by mail-wr0-f175.google.com with SMTP id u108so131061200wrb.3; Mon, 06 Mar 2017 21:39:03 -0800 (PST) X-Received: by 10.223.160.243 with SMTP id n48mr18982502wrn.198.1488865143703; Mon, 06 Mar 2017 21:39:03 -0800 (PST) MIME-Version: 1.0 Reply-To: cem@freebsd.org Received: by 10.80.169.4 with HTTP; Mon, 6 Mar 2017 21:39:03 -0800 (PST) In-Reply-To: <201703070510.v275AdYd059917@repo.freebsd.org> References: <201703070510.v275AdYd059917@repo.freebsd.org> From: Conrad Meyer Date: Mon, 6 Mar 2017 21:39:03 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r314833 - in head: bin/pkill lib/libxo/tests/encoder libexec/rtld-elf share/termcap usr.bin/chpass usr.bin/passwd usr.sbin/bsdinstall/partedit usr.sbin/mailwrapper usr.sbin/nologin To: "Rodney W. Grimes" Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 05:39:11 -0000 On Mon, Mar 6, 2017 at 9:10 PM, Rodney W. Grimes wrot= e: > Author: rgrimes > Date: Tue Mar 7 05:10:38 2017 > New Revision: 314833 > URL: https://svnweb.freebsd.org/changeset/base/314833 > > Log: > Convert absolute links to relative links. > Style.Makefile(9) has been ignored to produce minimal diffs. Hey Rod, Not to pick nits excessively, but the style.Makefile manual page (which I'd never heard of before today) appears to be in section 5, not 9. That may be wrong =E2=80=94 I thought 5 was for configuration files= . Best, Conrad From owner-svn-src-all@freebsd.org Tue Mar 7 05:50:27 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 56A36D01B35; Tue, 7 Mar 2017 05:50:27 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0BF441364; Tue, 7 Mar 2017 05:50:26 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v275oOVJ092698; Mon, 6 Mar 2017 21:50:24 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v275oOE5092697; Mon, 6 Mar 2017 21:50:24 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703070550.v275oOE5092697@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314833 - in head: bin/pkill lib/libxo/tests/encoder libexec/rtld-elf share/termcap usr.bin/chpass usr.bin/passwd usr.sbin/bsdinstall/partedit usr.sbin/mailwrapper usr.sbin/nologin In-Reply-To: <21A8D529-BFB9-4774-83FB-5CABD2BC689C@gmail.com> To: "Ngie Cooper (yaneurabeya)" Date: Mon, 6 Mar 2017 21:50:24 -0800 (PST) CC: "Rodney W. Grimes" , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 05:50:27 -0000 > > On Mar 6, 2017, at 21:10, Rodney W. Grimes wrote: > > > > Author: rgrimes > > Date: Tue Mar 7 05:10:38 2017 > > New Revision: 314833 > > URL: https://svnweb.freebsd.org/changeset/base/314833 ... > > > > -SYMLINKS+= ${LIBDIR}/${SHLIB_NAME} /usr/lib/libxo/encoder/test.enc > > +SYMLINKS+= ../../../tests/lib/libxo/${SHLIB_NAME} /usr/lib/libxo/encoder/test.enc > > This change breaks setting TESTSBASE != /usr/tests . Please fix (my employer depends on this being functional). > Thanks, I am just going to revert this until the issue with SYMLINKS vs RSYMLINKS and probably a much better fix in bsd.*.mk can be implemented. I can live with one last nasty wart of an absolute link in DESTDIR until then. The important functional ones are gone now. To fix this without changing SYMLINKS would involve adding a local install: target which would be more mess than having the one absolute link. > -Ngie -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Mar 7 05:53:52 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 31A6BD01CE9; Tue, 7 Mar 2017 05:53:52 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail105.syd.optusnet.com.au (mail105.syd.optusnet.com.au [211.29.132.249]) by mx1.freebsd.org (Postfix) with ESMTP id ECDE4180E; Tue, 7 Mar 2017 05:53:51 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from besplex.bde.org (c122-106-153-191.carlnfd1.nsw.optusnet.com.au [122.106.153.191]) by mail105.syd.optusnet.com.au (Postfix) with ESMTPS id 9241C1047D0E; Tue, 7 Mar 2017 16:53:47 +1100 (AEDT) Date: Tue, 7 Mar 2017 16:53:46 +1100 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Bryan Drewery cc: Conrad Meyer , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314685 - head/bin/ps In-Reply-To: <52877752-ab4b-45ea-05f4-ef050e1a2983@FreeBSD.org> Message-ID: <20170307161527.X10112@besplex.bde.org> References: <201703042238.v24McAD8008837@repo.freebsd.org> <01dddec8-89c0-e18a-a481-e802643f9e0e@FreeBSD.org> <52877752-ab4b-45ea-05f4-ef050e1a2983@FreeBSD.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.2 cv=VbSHBBh9 c=1 sm=1 tr=0 a=Tj3pCpwHnMupdyZSltBt7Q==:117 a=Tj3pCpwHnMupdyZSltBt7Q==:17 a=kj9zAlcOel0A:10 a=6I5d2MoRAAAA:8 a=0ilfchANsudAHDDNryAA:9 a=CjuIK1q_8ugA:10 a=IjZwj45LgO3ly-622nXo:22 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 05:53:52 -0000 On Mon, 6 Mar 2017, Bryan Drewery wrote: > On 3/6/17 8:11 PM, Bryan Drewery wrote: >> On 3/4/17 2:38 PM, Conrad Meyer wrote: >>> Author: cem >>> Date: Sat Mar 4 22:38:10 2017 >>> New Revision: 314685 >>> URL: https://svnweb.freebsd.org/changeset/base/314685 >>> >>> Log: >>> ps(1): Only detect terminal width if stdout is a tty >>> >>> If stdout isn't a tty, use unlimited width output rather than truncating to >>> 79 characters. This is helpful for shell scripts or e.g., 'ps | grep foo'. >> >> This change actually makes things worse for me for 'ps uaxwd|less' No surprise. >> Before: >>> nobody 83979 0.0 0.0 9016 1364 3 I+J 20:03 0:00.06 | | `-- /usr/bin/make -C /usr/ports/lang/perl5.24 build >> >> After: >>> nobody 89743 0.0 0.0 9016 1368 3 S+J 20:07 0:00.05 | | `-- /usr/bin/make -C /usr/ports/lang/perl5.24 >> >> I now have to specify -ww to not cut things off, but that's far more >> than I want to see. > > The problem is that -w is parsed *after* termwidth = UNLIMITED is set > (which is 0). This patch fixes it, but I haven't tested it extensively: > >> Index: ps.c >> =================================================================== >> --- ps.c (revision 314708) >> +++ ps.c (working copy) >> @@ -401,7 +401,7 @@ main(int argc, char *argv[]) >> case 'w': >> if (wflag) >> termwidth = UNLIMITED; >> - else if (termwidth < 131) >> + else if (termwidth < 131 && termwidth != UNLIMITED) >> termwidth = 131; I pointed out many nearby bugs, but missed this one. 0 is a fail-unsafe value for UNLIMITED. 0 for the default width of 79 unless modified by -w and INT_MAX for UNLIMITED would be less magic. ps now has complications using xo. It now uses the POSIX mistake _POSIX2_LINE_MAX for at least xo output, so UNLIMITED no longer means unlimited. _POSIX2_LINE_MAX is only 2048. Probably good enough for ps. So UNLIMITED should be unobfuscated by spelling it (_POSIX2_LINE_MAX - 1). The user's COLUMNS is not honored when it is larger than this, and the user can do foot shooting by setting COLUMNS to the current internal magic value for UNLIMIT or exercise sign extension and overflow bugs by setting it to negative. 'COLUMNS=-1 ps' actually gives normal output except for messing up the COMAMND column (e.g., "-bash (bash)" becomes "[bash]". I forget what the brackets mean, and this is not documented in ps.1. >> wflag++; >> break; > > -1 for the original commit. If I wanted -ww I would specify it. The > original commit causes some text to wrap on my terminal even with some > extending right. Bruce From owner-svn-src-all@freebsd.org Tue Mar 7 05:56:14 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 224A1D01DF1; Tue, 7 Mar 2017 05:56:14 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BE62F1ABD; Tue, 7 Mar 2017 05:56:13 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v275uCtF092746; Mon, 6 Mar 2017 21:56:12 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v275uCiQ092745; Mon, 6 Mar 2017 21:56:12 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703070556.v275uCiQ092745@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314833 - in head: bin/pkill lib/libxo/tests/encoder libexec/rtld-elf share/termcap usr.bin/chpass usr.bin/passwd usr.sbin/bsdinstall/partedit usr.sbin/mailwrapper usr.sbin/nologin In-Reply-To: To: cem@freebsd.org Date: Mon, 6 Mar 2017 21:56:11 -0800 (PST) CC: "Rodney W. Grimes" , src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 05:56:14 -0000 > On Mon, Mar 6, 2017 at 9:10 PM, Rodney W. Grimes wrote: > > Author: rgrimes > > Date: Tue Mar 7 05:10:38 2017 > > New Revision: 314833 > > URL: https://svnweb.freebsd.org/changeset/base/314833 > > > > Log: > > Convert absolute links to relative links. > > Style.Makefile(9) has been ignored to produce minimal diffs. > > Hey Rod, > > Not to pick nits excessively, but the style.Makefile manual page > (which I'd never heard of before today) appears to be in section 5, > not 9. That may be wrong ? I thought 5 was for configuration files. *sigh* Yet more messes to sweep up. It defanitly does not belong in 5, I had just assumed it was in 9 as that is where style(9) is. I am in no hurry to fix this, but glad you get to read some new info. -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Mar 7 05:56:49 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8D47DD01E9E; Tue, 7 Mar 2017 05:56:49 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 59FD31CFA; Tue, 7 Mar 2017 05:56:49 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v275um0p079996; Tue, 7 Mar 2017 05:56:48 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v275umCk079995; Tue, 7 Mar 2017 05:56:48 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703070556.v275umCk079995@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Tue, 7 Mar 2017 05:56:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314835 - stable/11/sys/dev/firewire X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 05:56:49 -0000 Author: mav Date: Tue Mar 7 05:56:48 2017 New Revision: 314835 URL: https://svnweb.freebsd.org/changeset/base/314835 Log: MFC r314374: Add safety check against too long CDB. SBP-2 specification defined maximum CDB length as 12 bytes. Newer SBP-3 specification allows CDB of any size, but this driver is too old. Proper solution would be to look on maximal ORB size supported by the target. Modified: stable/11/sys/dev/firewire/sbp.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/firewire/sbp.c ============================================================================== --- stable/11/sys/dev/firewire/sbp.c Tue Mar 7 05:35:14 2017 (r314834) +++ stable/11/sys/dev/firewire/sbp.c Tue Mar 7 05:56:48 2017 (r314835) @@ -2367,6 +2367,11 @@ END_DEBUG xpt_done(ccb); return; } + if (csio->cdb_len > sizeof(ocb->orb) - 5 * sizeof(uint32_t)) { + ccb->ccb_h.status = CAM_REQ_INVALID; + xpt_done(ccb); + return; + } #if 0 /* if we are in probe stage, pass only probe commands */ if (sdev->status == SBP_DEV_PROBE) { From owner-svn-src-all@freebsd.org Tue Mar 7 05:57:19 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EB53ED01F26; Tue, 7 Mar 2017 05:57:19 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BA7101E3D; Tue, 7 Mar 2017 05:57:19 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v275vIMw080076; Tue, 7 Mar 2017 05:57:18 GMT (envelope-from mav@FreeBSD.org) Received: (from mav@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v275vI0m080075; Tue, 7 Mar 2017 05:57:18 GMT (envelope-from mav@FreeBSD.org) Message-Id: <201703070557.v275vI0m080075@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: mav set sender to mav@FreeBSD.org using -f From: Alexander Motin Date: Tue, 7 Mar 2017 05:57:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314836 - stable/10/sys/dev/firewire X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 05:57:20 -0000 Author: mav Date: Tue Mar 7 05:57:18 2017 New Revision: 314836 URL: https://svnweb.freebsd.org/changeset/base/314836 Log: MFC r314374: Add safety check against too long CDB. SBP-2 specification defined maximum CDB length as 12 bytes. Newer SBP-3 specification allows CDB of any size, but this driver is too old. Proper solution would be to look on maximal ORB size supported by the target. Modified: stable/10/sys/dev/firewire/sbp.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/firewire/sbp.c ============================================================================== --- stable/10/sys/dev/firewire/sbp.c Tue Mar 7 05:56:48 2017 (r314835) +++ stable/10/sys/dev/firewire/sbp.c Tue Mar 7 05:57:18 2017 (r314836) @@ -2403,6 +2403,11 @@ END_DEBUG xpt_done(ccb); return; } + if (csio->cdb_len > sizeof(ocb->orb) - 5 * sizeof(uint32_t)) { + ccb->ccb_h.status = CAM_REQ_INVALID; + xpt_done(ccb); + return; + } #if 0 /* if we are in probe stage, pass only probe commands */ if (sdev->status == SBP_DEV_PROBE) { From owner-svn-src-all@freebsd.org Tue Mar 7 06:08:12 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3269FD01231; Tue, 7 Mar 2017 06:08:12 +0000 (UTC) (envelope-from SRS0=+dDw=2Q=me.com=jordanhubbard@ixsystems.com) Received: from mx.ixsystems.com (mx.ixsystems.com [12.229.62.28]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN ".", Issuer "." (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 1968F12E5; Tue, 7 Mar 2017 06:08:12 +0000 (UTC) (envelope-from SRS0=+dDw=2Q=me.com=jordanhubbard@ixsystems.com) Received: from localhost (localhost.localdomain [127.0.0.1]) by mx.ixsystems.com (Postfix) with ESMTP id 3vcmRS50dzzCrX0; Mon, 6 Mar 2017 22:08:04 -0800 (PST) X-Virus-Scanned: Scrollout F1 at ixsystems.com Received: from mx.ixsystems.com ([127.0.0.1]) by localhost (mx.ixsystems.com [127.0.0.1]) (amavisd-new, port 10024) with LMTP id HrwMSiwgoLiQ; Mon, 6 Mar 2017 22:08:02 -0800 (PST) Received: from zimbra.ixsystems.com (mail.ixsystems.com [10.246.0.20]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx.ixsystems.com (Postfix) with ESMTPS id 3vcmR346m1zCrTr; Mon, 6 Mar 2017 22:07:43 -0800 (PST) Received: from zimbra.ixsystems.com (localhost [127.0.0.1]) by zimbra.ixsystems.com (Postfix) with ESMTPS id 7F740461A58; Mon, 6 Mar 2017 22:07:43 -0800 (PST) Received: from localhost (localhost [127.0.0.1]) by zimbra.ixsystems.com (Postfix) with ESMTP id 6F8B0461AAD; Mon, 6 Mar 2017 22:07:43 -0800 (PST) Received: from zimbra.ixsystems.com ([127.0.0.1]) by localhost (zimbra.ixsystems.com [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id pK4WeaeXrLR3; Mon, 6 Mar 2017 22:07:43 -0800 (PST) Received: from [10.250.1.247] (unknown [10.250.1.247]) by zimbra.ixsystems.com (Postfix) with ESMTPSA id 258DB461A58; Mon, 6 Mar 2017 22:07:43 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 10.3 \(3271\)) Subject: Re: svn commit: r314831 - head/usr.bin/fortune From: Jordan Hubbard In-Reply-To: <201703070500.v2750Qqd092455@pdx.rh.CN85.dnsmgr.net> Date: Mon, 6 Mar 2017 22:07:42 -0800 Cc: Ngie Cooper , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Transfer-Encoding: quoted-printable Message-Id: References: <201703070500.v2750Qqd092455@pdx.rh.CN85.dnsmgr.net> To: rgrimes@freebsd.org X-Mailer: Apple Mail (2.3271) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 06:08:12 -0000 [ Charset ISO-Latin1 unsupported, converting=E2=80=A6 ] Is it true you still use mutt to read your e-mail? :-) - Jordan From owner-svn-src-all@freebsd.org Tue Mar 7 06:11:37 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B58C4D012D8; Tue, 7 Mar 2017 06:11:37 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 733381592; Tue, 7 Mar 2017 06:11:37 +0000 (UTC) (envelope-from rgrimes@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v276Baqo087358; Tue, 7 Mar 2017 06:11:36 GMT (envelope-from rgrimes@FreeBSD.org) Received: (from rgrimes@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v276Ba02087357; Tue, 7 Mar 2017 06:11:36 GMT (envelope-from rgrimes@FreeBSD.org) Message-Id: <201703070611.v276Ba02087357@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: rgrimes set sender to rgrimes@FreeBSD.org using -f From: "Rodney W. Grimes" Date: Tue, 7 Mar 2017 06:11:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314837 - head/lib/libxo/tests/encoder X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 06:11:37 -0000 Author: rgrimes Date: Tue Mar 7 06:11:36 2017 New Revision: 314837 URL: https://svnweb.freebsd.org/changeset/base/314837 Log: The relative symlink fix causes downstream issues for EMC DELL Isilon so revert the relative symlink fix pending a better solution. Reported by: ngie Approved by: greham (mentor) Implicit as reverting MFC after: 1 week Modified: head/lib/libxo/tests/encoder/Makefile Modified: head/lib/libxo/tests/encoder/Makefile ============================================================================== --- head/lib/libxo/tests/encoder/Makefile Tue Mar 7 05:57:18 2017 (r314836) +++ head/lib/libxo/tests/encoder/Makefile Tue Mar 7 06:11:36 2017 (r314837) @@ -8,7 +8,7 @@ SHLIB_NAME= libenc_test.so LIBDIR= ${TESTSBASE}/lib/libxo -SYMLINKS+= ../../../tests/lib/libxo/${SHLIB_NAME} /usr/lib/libxo/encoder/test.enc +SYMLINKS+= ${LIBDIR}/${SHLIB_NAME} /usr/lib/libxo/encoder/test.enc SRCS= enc_test.c From owner-svn-src-all@freebsd.org Tue Mar 7 06:30:31 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 24A87D01871; Tue, 7 Mar 2017 06:30:31 +0000 (UTC) (envelope-from alfred@freebsd.org) Received: from elvis.mu.org (elvis.mu.org [IPv6:2001:470:1f05:b76::196]) by mx1.freebsd.org (Postfix) with ESMTP id 160781ECD; Tue, 7 Mar 2017 06:30:31 +0000 (UTC) (envelope-from alfred@freebsd.org) Received: from Alfreds-MacBook-Pro-2.local (unknown [IPv6:2601:645:8003:a4d6:3d7f:fc1c:34cc:24d0]) by elvis.mu.org (Postfix) with ESMTPSA id 21A8A346DDDC; Mon, 6 Mar 2017 22:30:30 -0800 (PST) Subject: Re: svn commit: r314831 - head/usr.bin/fortune To: Jordan Hubbard , rgrimes@freebsd.org References: <201703070500.v2750Qqd092455@pdx.rh.CN85.dnsmgr.net> Cc: Ngie Cooper , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org From: Alfred Perlstein Organization: FreeBSD Message-ID: Date: Mon, 6 Mar 2017 22:30:29 -0800 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 06:30:31 -0000 On 3/6/17 10:07 PM, Jordan Hubbard wrote: > [ Charset ISO-Latin1 unsupported, converting… ] > > Is it true you still use mutt to read your e-mail? :-) > > - Jordan > > I had to use mutt(1) to send a patch to the git project to support FreeBSD's propset commands a couple years back. was... fun? I sorta miss it! -Alfred From owner-svn-src-all@freebsd.org Tue Mar 7 06:36:44 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 24A56D01C20; Tue, 7 Mar 2017 06:36:44 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 764581516; Tue, 7 Mar 2017 06:36:42 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v276afHd092909; Mon, 6 Mar 2017 22:36:41 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v276afD1092908; Mon, 6 Mar 2017 22:36:41 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703070636.v276afD1092908@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314831 - head/usr.bin/fortune In-Reply-To: To: Jordan Hubbard Date: Mon, 6 Mar 2017 22:36:41 -0800 (PST) CC: rgrimes@freebsd.org, Ngie Cooper , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 06:36:44 -0000 > > Is it true you still use mutt to read your e-mail? :-) Oh, its far older than Mutt... elm2.4me and I have a port of gated that runs on 12-current. I am considering an upgrade to mutt :-) -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Mar 7 06:46:40 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 12349D01E7F; Tue, 7 Mar 2017 06:46:40 +0000 (UTC) (envelope-from hiren@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D53D61A0C; Tue, 7 Mar 2017 06:46:39 +0000 (UTC) (envelope-from hiren@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v276kcEX000652; Tue, 7 Mar 2017 06:46:38 GMT (envelope-from hiren@FreeBSD.org) Received: (from hiren@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v276kcDQ000651; Tue, 7 Mar 2017 06:46:38 GMT (envelope-from hiren@FreeBSD.org) Message-Id: <201703070646.v276kcDQ000651@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hiren set sender to hiren@FreeBSD.org using -f From: Hiren Panchasara Date: Tue, 7 Mar 2017 06:46:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314838 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 06:46:40 -0000 Author: hiren Date: Tue Mar 7 06:46:38 2017 New Revision: 314838 URL: https://svnweb.freebsd.org/changeset/base/314838 Log: Fix the KASSERT check from r314813. len being 0 is valid. Submitted by: ngie Reported by: ngie (via jenkins test run) Sponsored by: Limelight Networks Modified: head/sys/kern/uipc_sockbuf.c Modified: head/sys/kern/uipc_sockbuf.c ============================================================================== --- head/sys/kern/uipc_sockbuf.c Tue Mar 7 06:11:36 2017 (r314837) +++ head/sys/kern/uipc_sockbuf.c Tue Mar 7 06:46:38 2017 (r314838) @@ -1043,7 +1043,7 @@ sbcut_internal(struct sockbuf *sb, int l { struct mbuf *m, *next, *mfree; - KASSERT(len > 0, ("%s: len is %d but it is supposed to be +ve", + KASSERT(len >= 0, ("%s: len is %d but it is supposed to be >= 0", __func__, len)); KASSERT(len <= sb->sb_ccc, ("%s: len: %d is > ccc: %u", __func__, len, sb->sb_ccc)); From owner-svn-src-all@freebsd.org Tue Mar 7 06:47:36 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7915AD01EE1; Tue, 7 Mar 2017 06:47:36 +0000 (UTC) (envelope-from hiren@FreeBSD.org) Received: from mail.strugglingcoder.info (strugglingcoder.info [104.236.146.68]) by mx1.freebsd.org (Postfix) with ESMTP id 6AE0D1B93; Tue, 7 Mar 2017 06:47:36 +0000 (UTC) (envelope-from hiren@FreeBSD.org) Received: from localhost (unknown [10.1.1.3]) (Authenticated sender: hiren@strugglingcoder.info) by mail.strugglingcoder.info (Postfix) with ESMTPA id A124617DA3; Mon, 6 Mar 2017 22:47:36 -0800 (PST) Date: Mon, 6 Mar 2017 22:47:36 -0800 From: Hiren Panchasara To: "Ngie Cooper (yaneurabeya)" Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314813 - head/sys/kern Message-ID: <20170307064736.GC71537@strugglingcoder.info> References: <201703070020.v270K2vA039655@repo.freebsd.org> <9747B513-8D23-487D-8FF9-721265C1CF44@gmail.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="Km1U/tdNT/EmXiR1" Content-Disposition: inline In-Reply-To: <9747B513-8D23-487D-8FF9-721265C1CF44@gmail.com> User-Agent: Mutt/1.5.23 (2014-03-12) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 06:47:36 -0000 --Km1U/tdNT/EmXiR1 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On 03/06/17 at 07:08P, Ngie Cooper (yaneurabeya) wrote: >=20 > > On Mar 6, 2017, at 16:20, Hiren Panchasara wrote: > >=20 > > Author: hiren > > Date: Tue Mar 7 00:20:01 2017 > > New Revision: 314813 > > URL: https://svnweb.freebsd.org/changeset/base/314813 > >=20 > > Log: > > We've found a recurring problem where some userland process would be > > stuck spinning at 100% cpu around sbcut_internal(). Inside > > sbflush_internal(), sb_ccc reached to about 4GB and before passing it > > to sbcut_internal(), we type-cast it from uint to int making it -ve. > >=20 > > The root cause of sockbuf growing this large is unknown. Correct fix > > is also not clear but based on mailing list discussions, adding > > KASSERTs to panic instead of looping endlessly. > >=20 > > Reviewed by: glebius > > Sponsored by: Limelight Networks > >=20 > > Modified: > > head/sys/kern/uipc_sockbuf.c > >=20 > > Modified: head/sys/kern/uipc_sockbuf.c > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D > > --- head/sys/kern/uipc_sockbuf.c Tue Mar 7 00:13:53 2017 (r314812) > > +++ head/sys/kern/uipc_sockbuf.c Tue Mar 7 00:20:01 2017 (r314813) > > @@ -1043,6 +1043,11 @@ sbcut_internal(struct sockbuf *sb, int l > > { > > struct mbuf *m, *next, *mfree; > >=20 > > + KASSERT(len > 0, ("%s: len is %d but it is supposed to be +ve", > > + __func__, len)); > > + KASSERT(len <=3D sb->sb_ccc, ("%s: len: %d is > ccc: %u", > > + __func__, len, sb->sb_ccc)); > > + > > next =3D (m =3D sb->sb_mb) ? m->m_nextpkt : 0; > > mfree =3D NULL; >=20 > The KASSERT is bad ? please fix it. From https://ci.freebsd.org/job/FreeB= SD-head-amd64-test/1994/console : >=20 > add host 127.0.0.1panic: sbcut_internal: len is 0 but it is supposed to b= e +ve Thanks, fixed in r314838. Cheers, Hiren --Km1U/tdNT/EmXiR1 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQF8BAABCgBmBQJYvleAXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXRBNEUyMEZBMUQ4Nzg4RjNGMTdFNjZGMDI4 QjkyNTBFMTU2M0VERkU1AAoJEIuSUOFWPt/lZfsH+wf+0HGVDnkdB8vjMvONxDgE abQh4BPHQw+t/Bafr3P908ivdL4eTgRszwisjXt6vKqB+7neKmPgv6Ojdd2E0UL3 mGmmpKCikmxdFBfcUbGa1wY7my+MqHJ0j0s56GdJP9rTr9OluTjpwGztC29L8RNR nSSBi8DmNK7mkQ9ux8RCp1SaXV/9PY5r04O2JmDcpwbgx0hNgt1GbOj5CU1tVyvH dq72COuLIb5DV8owrMHSPKdjZPir/MHd9vl2IN+42CQvHHRNSoAObMYpuGJMgGMN rW2HI0o0SD2nEiNENXpYsmL371bjNt6mAAfDZwoKaqByUqKtuphyeR3xhU0mvm0= =d5aA -----END PGP SIGNATURE----- --Km1U/tdNT/EmXiR1-- From owner-svn-src-all@freebsd.org Tue Mar 7 07:44:20 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A3628CFBE47; Tue, 7 Mar 2017 07:44:20 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pf0-x232.google.com (mail-pf0-x232.google.com [IPv6:2607:f8b0:400e:c00::232]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6EF671574; Tue, 7 Mar 2017 07:44:20 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pf0-x232.google.com with SMTP id o126so24286415pfb.3; Mon, 06 Mar 2017 23:44:20 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:mime-version:from:in-reply-to:date:cc:message-id:references :to; bh=IYDma4sXL9l3YhC0dtRpqIcxAPrzE3zEjgYDD4XZYCY=; b=Q/eu+tFqF/e6HZlhAOtT4ZMQNsaVNw1A9e1sHMvmfD6ZqoOkicKkRw0uqkx6iu/esG bzKE5Ke9yqk3fygm8q0Jgou1ObxkseKppxZKbKuBWdhWJJclB7hJ9GiN8YKQ4QtM6jDW 3x5OVL56BMUr8Gc95y24UNhYD/GfZpq2GyFUdjWCozIWqNGwxOapfrFZpfn75m+yVVGK wVQWKH6DzqnwMESwsXKV+ITLuQxI2yEACa+K8k5LzmQ6mCJBYliun9IzLRbS2gZx8yEY X+nUTY1aeCcBPs97Zok+qdTY/zMfQDRJHs2AYASUOgP0hPzK05QOlS4+Fa+0jxS5AIkv xWsQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:mime-version:from:in-reply-to:date:cc :message-id:references:to; bh=IYDma4sXL9l3YhC0dtRpqIcxAPrzE3zEjgYDD4XZYCY=; b=mjREFiS7wdyxHh/g+Evehn5CUJkJqdce8wlCxyeTa2hcsgJCYReeuKWZCPiu4dsQnl t4Lc2a9kJxm6Yeur898Lf/+TE7OZhWZ8n18+1v5fzzRq29mPUEGTbX2/X9XEVNmdP/7f xMj0joN7MQVPe8CjBSr12lU3NgBncuhtoDrnBYLI86dGf43Tpi/uspK79l3OJ3E7hWOk RLjrghba//lzsPmeNWMlC8G4+9IipQ7coBY4SqyIlTFyNpkBO1EsCRGJpe8LT/E6EyX6 I1VXs7LVtF3lEs4jwnSjnwZXikQU60I3ehLre7PRPP6Dhw51knlPDJj8jnj6Y8Ud9ku6 nnLg== X-Gm-Message-State: AMke39njhZfMkA6R/E0nCEnqrgP0z+o54p0WAkSDlUJKGpP9rsOlOnLZWr9mIkSxiPHHJg== X-Received: by 10.98.107.194 with SMTP id g185mr10895534pfc.22.1488872659833; Mon, 06 Mar 2017 23:44:19 -0800 (PST) Received: from pinklady.local (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id f21sm1545244pff.48.2017.03.06.23.44.18 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Mon, 06 Mar 2017 23:44:19 -0800 (PST) Subject: Re: svn commit: r314833 - in head: bin/pkill lib/libxo/tests/encoder libexec/rtld-elf share/termcap usr.bin/chpass usr.bin/passwd usr.sbin/bsdinstall/partedit usr.sbin/mailwrapper usr.sbin/nologin Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Content-Type: multipart/signed; boundary="Apple-Mail=_031C1697-FD9A-40CE-9189-A3DB4AB3E303"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail From: "Ngie Cooper (yaneurabeya)" In-Reply-To: <201703070556.v275uCiQ092745@pdx.rh.CN85.dnsmgr.net> Date: Mon, 6 Mar 2017 23:44:17 -0800 Cc: cem@freebsd.org, src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-Id: <65B51BF3-536B-4ED7-963D-A2076D60D006@gmail.com> References: <201703070556.v275uCiQ092745@pdx.rh.CN85.dnsmgr.net> To: rgrimes@freebsd.org X-Mailer: Apple Mail (2.3124) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 07:44:20 -0000 --Apple-Mail=_031C1697-FD9A-40CE-9189-A3DB4AB3E303 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii > On Mar 6, 2017, at 21:56, Rodney W. Grimes = wrote: >=20 >> On Mon, Mar 6, 2017 at 9:10 PM, Rodney W. Grimes = wrote: >>> Author: rgrimes >>> Date: Tue Mar 7 05:10:38 2017 >>> New Revision: 314833 >>> URL: https://svnweb.freebsd.org/changeset/base/314833 >>>=20 >>> Log: >>> Convert absolute links to relative links. >>> Style.Makefile(9) has been ignored to produce minimal diffs. >>=20 >> Hey Rod, >>=20 >> Not to pick nits excessively, but the style.Makefile manual page >> (which I'd never heard of before today) appears to be in section 5, >> not 9. That may be wrong ? I thought 5 was for configuration files. >=20 > *sigh* Yet more messes to sweep up. It defanitly does not belong > in 5, I had just assumed it was in 9 as that is where style(9) is. >=20 > I am in no hurry to fix this, but glad you get to read some new > info. Why does it belong in 9 (also, thanks Conrad for noting my faux pas = too)? 5. FreeBSD File Formats Manual ... 9. FreeBSD Kernel Developer's Manual 9 looks inappropriate in this case according to `man man` :). Thanks, -Ngie --Apple-Mail=_031C1697-FD9A-40CE-9189-A3DB4AB3E303 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJYvmTSAAoJEPWDqSZpMIYVN1QQAKRHKnyd1mjzukry722MiyHv JIt4nl7ZS4UzQ5OX+rzSksD5vYvn1GtA9uBQJkjzRHqW3VJoGdFnchoi131RTpDV VqMAjetf4pmmPBm8gIMAnNCbocFAvxyv7rh/1kEwGSgx3Xt62v/i16kXGuipqmcY m1r3eD9cRccuT1GtdXPgt4FqdIZpYTopiWSvcy4jYXH6rW8CoNXdx6b0Voupm7w9 zZYC11Uu5kYFrTdSheU/CIpWdhsboKlJHAtPx0ZjWJ7LIT0ibOFrbFvwx0bVEx/j D5jD7lRzYhHbHaXsqSxfPDMga6b0TxjyPQHqOxlxUzmM8QG/QJ70J+IzPskI05rL bok9oKqUpbAZw0Ol9T7EHhlUE00Hz7YR0KrD0ShFotEC5XFwhptrvRK8OdvmgHK7 2kwMuF/K9U1C3W3e4EQKYywOYXEP3cV8pySIqz+FojNBwHd/7cZ8qPHyxDRZNuT/ PTRCSJvkUchWf+TCv0LeqckIB3kOOD9MAr3DLUmZHhPtRaSae5nomKbiRMkFCbao rukeLSrsyVDS5ihJEzsDGnXb2Yt0juHQTBhJYGXFdDZGjYenZ46zvbH4TGJphWRz GpuvwyKOA7QNjPb1URauE1KyLYK3s+3CF5yhMAq608cBvP56ymiGIGA3lNoJedua e+PcwDpROK4xdjFvNORM =H57f -----END PGP SIGNATURE----- --Apple-Mail=_031C1697-FD9A-40CE-9189-A3DB4AB3E303-- From owner-svn-src-all@freebsd.org Tue Mar 7 07:46:26 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id ACC3CCFBED6 for ; Tue, 7 Mar 2017 07:46:26 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: from mail-it0-x22c.google.com (mail-it0-x22c.google.com [IPv6:2607:f8b0:4001:c0b::22c]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 769F816DE for ; Tue, 7 Mar 2017 07:46:26 +0000 (UTC) (envelope-from wlosh@bsdimp.com) Received: by mail-it0-x22c.google.com with SMTP id m27so66628736iti.1 for ; Mon, 06 Mar 2017 23:46:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20150623.gappssmtp.com; s=20150623; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=Bkz+QCzrBp8hrqT2ePDPYwNixGLKJ+S4FuT3GO25aFY=; b=Zgl+0jyK/6m9cNYImObseveUtqO3uZPztifpn83Zs0kHD3jS2iHJvrFKvBQ0LTyLwf 8t7l7nyCLnUao90wk4dzGsWcrovvDvBiBi+0QxLLUpK3KOUJ7RyBgRQ9buGs7udby/hy DmO6UbeP6Bkl3HT+l1WPYKaq9BSqLmuJWf0B78LoHbmk420Sc/IWMin6f4oBfR3Ba4ZM 9CISuCmLo/L2pFjPM6u5oQhgYiakXG0eJSha9JuHYxraPDYUPjponxZcKnDDoWpCAuT4 +8wSmNl0EPBbFeSIF/WQ0ukfacY+VnGBcMi+2KReShnlRToEnNGb6GQq84deILrs+ikv DaeA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=Bkz+QCzrBp8hrqT2ePDPYwNixGLKJ+S4FuT3GO25aFY=; b=TVzPRbkjjwhTCets4xFBdY0pDZGOk219HntUCsLCbcJYuYoLCOzhg0C4aP6VFE3qp5 7cRKYoPHH4F9/EKsXi9GscrJS5XPqBnQZ2NG+Od90MInYSIDOph3o1FCepGDgOYhwwHU AgEbJsmLp2R0fxfkv4lmYI16OTX6JFtGJZTA4cxok9PyeixxD3OVrnx9Q0CmkAC3hdPr a3pmAbfOee1Dkhm/Goc3QKhh70q9Gk0vFB5IHHRVbC57QiFehjSE2BPbDUd1wB7Dm2i5 O85b6Ha5BX8WKOC3q+yc3woB1XuUd1PFrty7mYmNFNgBOPZScNo4cW38wh8wQtglcY2w eEFQ== X-Gm-Message-State: AMke39lk6kIPiahHjhmuBdft+YamXnymuyJG9W9F0bmpFndBf1dyJI/09LAC6fsmrIUJJxqaUfXS2bX1VeIDHQ== X-Received: by 10.36.212.129 with SMTP id x123mr11292319itg.103.1488872785729; Mon, 06 Mar 2017 23:46:25 -0800 (PST) MIME-Version: 1.0 Sender: wlosh@bsdimp.com Received: by 10.79.134.129 with HTTP; Mon, 6 Mar 2017 23:46:25 -0800 (PST) X-Originating-IP: [69.53.245.200] In-Reply-To: <65B51BF3-536B-4ED7-963D-A2076D60D006@gmail.com> References: <201703070556.v275uCiQ092745@pdx.rh.CN85.dnsmgr.net> <65B51BF3-536B-4ED7-963D-A2076D60D006@gmail.com> From: Warner Losh Date: Tue, 7 Mar 2017 00:46:25 -0700 X-Google-Sender-Auth: cgGVAaPCh2Ev0UqLXpJP1M933ck Message-ID: Subject: Re: svn commit: r314833 - in head: bin/pkill lib/libxo/tests/encoder libexec/rtld-elf share/termcap usr.bin/chpass usr.bin/passwd usr.sbin/bsdinstall/partedit usr.sbin/mailwrapper usr.sbin/nologin To: "Ngie Cooper (yaneurabeya)" Cc: rgrimes@freebsd.org, "Conrad E. Meyer" , src-committers , "svn-src-all@freebsd.org" , "svn-src-head@freebsd.org" Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 07:46:26 -0000 On Tue, Mar 7, 2017 at 12:44 AM, Ngie Cooper (yaneurabeya) wrote: > >> On Mar 6, 2017, at 21:56, Rodney W. Grimes wrote: >> >>> On Mon, Mar 6, 2017 at 9:10 PM, Rodney W. Grimes wrote: >>>> Author: rgrimes >>>> Date: Tue Mar 7 05:10:38 2017 >>>> New Revision: 314833 >>>> URL: https://svnweb.freebsd.org/changeset/base/314833 >>>> >>>> Log: >>>> Convert absolute links to relative links. >>>> Style.Makefile(9) has been ignored to produce minimal diffs. >>> >>> Hey Rod, >>> >>> Not to pick nits excessively, but the style.Makefile manual page >>> (which I'd never heard of before today) appears to be in section 5, >>> not 9. That may be wrong ? I thought 5 was for configuration files. >> >> *sigh* Yet more messes to sweep up. It defanitly does not belong >> in 5, I had just assumed it was in 9 as that is where style(9) is. >> >> I am in no hurry to fix this, but glad you get to read some new >> info. > > Why does it belong in 9 (also, thanks Conrad for noting my faux pas too)? > > 5. FreeBSD File Formats Manual > ... > 9. FreeBSD Kernel Developer's Manual > > 9 looks inappropriate in this case according to `man man` :). style(9) is there because it started out life for the kernel. It belongs in section 5. This was extensively debated when it went into the tree. Please do not move it. Warner From owner-svn-src-all@freebsd.org Tue Mar 7 07:49:27 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4D791CFBF5C; Tue, 7 Mar 2017 07:49:27 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0554D1870; Tue, 7 Mar 2017 07:49:26 +0000 (UTC) (envelope-from avos@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v277nQPY024888; Tue, 7 Mar 2017 07:49:26 GMT (envelope-from avos@FreeBSD.org) Received: (from avos@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v277nQnu024887; Tue, 7 Mar 2017 07:49:26 GMT (envelope-from avos@FreeBSD.org) Message-Id: <201703070749.v277nQnu024887@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avos set sender to avos@FreeBSD.org using -f From: Andriy Voskoboinyk Date: Tue, 7 Mar 2017 07:49:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314839 - head/sys/dev/iwn X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 07:49:27 -0000 Author: avos Date: Tue Mar 7 07:49:25 2017 New Revision: 314839 URL: https://svnweb.freebsd.org/changeset/base/314839 Log: iwn: deduplicate (RXON + txpower + broadcast node) command sequence. Was previously applied to wpi(4) as a part of r278366. Tested with Intel 6205, STA / MONITOR modes. Modified: head/sys/dev/iwn/if_iwn.c Modified: head/sys/dev/iwn/if_iwn.c ============================================================================== --- head/sys/dev/iwn/if_iwn.c Tue Mar 7 06:46:38 2017 (r314838) +++ head/sys/dev/iwn/if_iwn.c Tue Mar 7 07:49:25 2017 (r314839) @@ -278,6 +278,7 @@ static int iwn_set_pslevel(struct iwn_so static int iwn_send_btcoex(struct iwn_softc *); static int iwn_send_advanced_btcoex(struct iwn_softc *); static int iwn5000_runtime_calib(struct iwn_softc *); +static int iwn_send_rxon(struct iwn_softc *, int, int); static int iwn_config(struct iwn_softc *); static int iwn_scan(struct iwn_softc *, struct ieee80211vap *, struct ieee80211_scan_state *, struct ieee80211_channel *); @@ -6534,9 +6535,49 @@ iwn_get_rxon_ht_flags(struct iwn_softc * } static int -iwn_config(struct iwn_softc *sc) +iwn_send_rxon(struct iwn_softc *sc, int assoc, int async) { struct iwn_ops *ops = &sc->ops; + int error; + + IWN_LOCK_ASSERT(sc); + + if (sc->sc_is_scanning) + device_printf(sc->sc_dev, + "%s: is_scanning set, before RXON\n", + __func__); + error = iwn_cmd(sc, IWN_CMD_RXON, sc->rxon, sc->rxonsz, async); + if (error != 0) { + device_printf(sc->sc_dev, "%s: RXON command failed\n", + __func__); + return (error); + } + + /* + * Reconfiguring RXON clears the firmware nodes table so we must + * add the broadcast node again. + */ + if ((sc->rxon->filter & htole32(IWN_FILTER_BSS)) == 0) { + if ((error = iwn_add_broadcast_node(sc, async)) != 0) { + device_printf(sc->sc_dev, + "%s: could not add broadcast node\n", __func__); + return (error); + } + } + + /* Configuration has changed, set TX power accordingly. */ + if ((error = ops->set_txpower(sc, async)) != 0) { + device_printf(sc->sc_dev, "%s: could not set TX power\n", + __func__); + return (error); + } + + return (0); +} + +static int +iwn_config(struct iwn_softc *sc) +{ struct ieee80211com *ic = &sc->sc_ic; struct ieee80211vap *vap = TAILQ_FIRST(&ic->ic_vaps); const uint8_t *macaddr; @@ -6671,26 +6712,8 @@ iwn_config(struct iwn_softc *sc) DPRINTF(sc, IWN_DEBUG_RESET, "%s: setting configuration; flags=0x%08x\n", __func__, le32toh(sc->rxon->flags)); - if (sc->sc_is_scanning) - device_printf(sc->sc_dev, - "%s: is_scanning set, before RXON\n", - __func__); - error = iwn_cmd(sc, IWN_CMD_RXON, sc->rxon, sc->rxonsz, 0); - if (error != 0) { - device_printf(sc->sc_dev, "%s: RXON command failed\n", - __func__); - return error; - } - - if ((error = iwn_add_broadcast_node(sc, 0)) != 0) { - device_printf(sc->sc_dev, "%s: could not add broadcast node\n", - __func__); - return error; - } - - /* Configuration has changed, set TX power accordingly. */ - if ((error = ops->set_txpower(sc, 0)) != 0) { - device_printf(sc->sc_dev, "%s: could not set TX power\n", + if ((error = iwn_send_rxon(sc, 0, 0)) != 0) { + device_printf(sc->sc_dev, "%s: could not send RXON\n", __func__); return error; } @@ -7044,7 +7067,6 @@ iwn_scan(struct iwn_softc *sc, struct ie static int iwn_auth(struct iwn_softc *sc, struct ieee80211vap *vap) { - struct iwn_ops *ops = &sc->ops; struct ieee80211com *ic = &sc->sc_ic; struct ieee80211_node *ni = vap->iv_bss; int error; @@ -7080,37 +7102,16 @@ iwn_auth(struct iwn_softc *sc, struct ie DPRINTF(sc, IWN_DEBUG_STATE, "rxon chan %d flags %x cck %x ofdm %x\n", sc->rxon->chan, sc->rxon->flags, sc->rxon->cck_mask, sc->rxon->ofdm_mask); - if (sc->sc_is_scanning) - device_printf(sc->sc_dev, - "%s: is_scanning set, before RXON\n", - __func__); - error = iwn_cmd(sc, IWN_CMD_RXON, sc->rxon, sc->rxonsz, 1); - if (error != 0) { - device_printf(sc->sc_dev, "%s: RXON command failed, error %d\n", - __func__, error); - return error; - } - /* Configuration has changed, set TX power accordingly. */ - if ((error = ops->set_txpower(sc, 1)) != 0) { - device_printf(sc->sc_dev, - "%s: could not set TX power, error %d\n", __func__, error); - return error; - } - /* - * Reconfiguring RXON clears the firmware nodes table so we must - * add the broadcast node again. - */ - if ((error = iwn_add_broadcast_node(sc, 1)) != 0) { - device_printf(sc->sc_dev, - "%s: could not add broadcast node, error %d\n", __func__, - error); - return error; + if ((error = iwn_send_rxon(sc, 0, 1)) != 0) { + device_printf(sc->sc_dev, "%s: could not send RXON\n", + __func__); + return (error); } DPRINTF(sc, IWN_DEBUG_TRACE, "->%s: end\n",__func__); - return 0; + return (0); } static int @@ -7163,22 +7164,10 @@ iwn_run(struct iwn_softc *sc, struct iee sc->rxon->filter |= htole32(IWN_FILTER_BSS); DPRINTF(sc, IWN_DEBUG_STATE, "rxon chan %d flags %x, curhtprotmode=%d\n", sc->rxon->chan, le32toh(sc->rxon->flags), ic->ic_curhtprotmode); - if (sc->sc_is_scanning) - device_printf(sc->sc_dev, - "%s: is_scanning set, before RXON\n", - __func__); - error = iwn_cmd(sc, IWN_CMD_RXON, sc->rxon, sc->rxonsz, 1); - if (error != 0) { - device_printf(sc->sc_dev, - "%s: could not update configuration, error %d\n", __func__, - error); - return error; - } - /* Configuration has changed, set TX power accordingly. */ - if ((error = ops->set_txpower(sc, 1)) != 0) { - device_printf(sc->sc_dev, - "%s: could not set TX power, error %d\n", __func__, error); + if ((error = iwn_send_rxon(sc, 0, 1)) != 0) { + device_printf(sc->sc_dev, "%s: could not send RXON\n", + __func__); return error; } From owner-svn-src-all@freebsd.org Tue Mar 7 08:51:13 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1EADBCFA213; Tue, 7 Mar 2017 08:51:13 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pf0-x231.google.com (mail-pf0-x231.google.com [IPv6:2607:f8b0:400e:c00::231]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id DEBD817C4; Tue, 7 Mar 2017 08:51:12 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pf0-x231.google.com with SMTP id w189so72154972pfb.0; Tue, 07 Mar 2017 00:51:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:mime-version:from:in-reply-to:date:cc:message-id:references :to; bh=GUkeYkOkJFmj8INOhdfkTDF5e52B+P7xaHwt6cSJJjA=; b=ESW996im0LkRzA6WvQH2ov+qMiIrrndebzyxv6PcqFJi5tQm2uHmsUC6PTms6nQSPK YrvAjQq5vR3hVKrt1CwQz7KkTBHdAUmGvJYBfmXTj5wViv9O3+k1tVGyLmBynj3ytL9k 8thKrO1XZdGQXlOU7RLqDcIpQ7dx/53w6MHTAWh0AQ1fttqYrZLBnrudUAvS9AsV6O6F bMz+ipEVPgRvXkg+57tLX2etKFfZAd47yG0IZL0A7OO20zYJusXmMbiHMP+GnpJ4S7Qe gs8yCz/hV9gjIER+zd9HV/M7sw9Q1XHoGSu5NTFKe3WbOCHDOaihohB+iUR9EqEQtoNU aT4w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:mime-version:from:in-reply-to:date:cc :message-id:references:to; bh=GUkeYkOkJFmj8INOhdfkTDF5e52B+P7xaHwt6cSJJjA=; b=q1LGkLFYJD/BHEwDL2huJ2bLCit0h9Um5xOnE+25aA8bnm9AWF5kVBIvHpk8sf8c8w iusoz91kK95/5Z+YvP/xWQQhbF6lIFXuBbmtkEFvSy3iUa7ot9/JJNoheis6fQHqd58u QjZ5efrw6XIA6IInUowIGbbRb9HVoA2OAtMMsjogoWwk8bc5Oz8SvewL6yseJw2tt1mU sXkIwa1xHfElK+RNuXsKYEwTRhsI5E9pFfZyyM4GUjJc1Pp1ExL+QXcYCah7OxUVnijX EpIahkb/0JhYIhSzes8lnswPKTfGe0lwCvisrvg/cIuthL5KHBzFWGNHFWhLwNOX3l4f 6WIQ== X-Gm-Message-State: AMke39k6mYoN8W1vspMQjl+lUQptuobRUpbevPEpXt9gEWVerqi5m0xrfDZjJ9BPU+0V9Q== X-Received: by 10.99.240.83 with SMTP id s19mr25760504pgj.45.1488876672065; Tue, 07 Mar 2017 00:51:12 -0800 (PST) Received: from pinklady.local (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id z74sm44282198pfd.70.2017.03.07.00.51.11 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 07 Mar 2017 00:51:11 -0800 (PST) Subject: Re: svn commit: r314833 - in head: bin/pkill lib/libxo/tests/encoder libexec/rtld-elf share/termcap usr.bin/chpass usr.bin/passwd usr.sbin/bsdinstall/partedit usr.sbin/mailwrapper usr.sbin/nologin Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Content-Type: multipart/signed; boundary="Apple-Mail=_76AA0D18-8A7B-4DC3-BC2D-06CEDE271722"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail From: "Ngie Cooper (yaneurabeya)" In-Reply-To: <201703070550.v275oOE5092697@pdx.rh.CN85.dnsmgr.net> Date: Tue, 7 Mar 2017 00:51:10 -0800 Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-Id: <7544F39D-EFC9-4685-9238-67A45D7FE037@gmail.com> References: <201703070550.v275oOE5092697@pdx.rh.CN85.dnsmgr.net> To: rgrimes@freebsd.org X-Mailer: Apple Mail (2.3124) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 08:51:13 -0000 --Apple-Mail=_76AA0D18-8A7B-4DC3-BC2D-06CEDE271722 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii > On Mar 6, 2017, at 21:50, Rodney W. Grimes = wrote: >=20 >>> On Mar 6, 2017, at 21:10, Rodney W. Grimes = wrote: >>>=20 >>> Author: rgrimes >>> Date: Tue Mar 7 05:10:38 2017 >>> New Revision: 314833 >>> URL: https://svnweb.freebsd.org/changeset/base/314833 > ... >=20 >>>=20 >>> -SYMLINKS+=3D ${LIBDIR}/${SHLIB_NAME} = /usr/lib/libxo/encoder/test.enc >>> +SYMLINKS+=3D ../../../tests/lib/libxo/${SHLIB_NAME} = /usr/lib/libxo/encoder/test.enc >>=20 >> This change breaks setting TESTSBASE !=3D /usr/tests . Please = fix (my employer depends on this being functional). >> Thanks, >=20 > I am just going to revert this until the issue with SYMLINKS vs = RSYMLINKS and > probably a much better fix in bsd.*.mk can be implemented. I can live = with > one last nasty wart of an absolute link in DESTDIR until then. The = important > functional ones are gone now. >=20 > To fix this without changing SYMLINKS would involve adding a local = install: > target which would be more mess than having the one absolute link. The proposed enhancement for bsd.links.mk for RSYMLINKS can be found = here: https://reviews.freebsd.org/D9919 . Thanks, -Ngie --Apple-Mail=_76AA0D18-8A7B-4DC3-BC2D-06CEDE271722 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJYvnR+AAoJEPWDqSZpMIYVypEQAI+jhE0jkncLufM5Z3/KacPv xG8kFydf/ObUApPWEyegYI/XVIiotVvyc4dTFIVvvwxiFENka3DtjDswUx+VDne5 rPyMDN8WGuceXgkcQf0Aey/br7jOtbIkZpgVxkYIl0y/txujo9LfltAh1Jtz9Kt8 a295o4kIWdBuFUXlJ6Avx4BS60fW9uVAV/p1xQe6tRbHtpmzLGE2JSYkEyQ+WzVk +ASwCOdXF0vR+0kCTqrHI1wNMAZdTYYvyGhX/uTolomCQXI9Oyl2dG66PmXYxLf3 05h1THuBdXaaUVZtDxoa1pi5JmiUFH7t4L+z85LVD/S04ZNL0h+sJ6V7zCQzrvv2 1eLEtDIKVD0VzZLye6smmExLlfCdI9TC0Oa82+tMnPwhEIyFQRQyOi847OoxQeCL LaxZayHuNejOnzwtcXn4ZCuGAPTMXXnJHV14dUA2Q3bmNGk3CzU3uZaOlVyUnIer WMJ0yywF4dJfaHbqBpa08OqDtqLommmStOIn7Xb2N2W0QbVw6RbBWChq8mJCAuES bGGpIp2i3nT47vOuWyzwvSZsNe7iJjmX5YKrNwSuiGSIRYk0DIMKSfxtDGzhKeHW JluGTIWDq/lsT3n+nirD00/KfsYfDv+QuUq+nfh6t/yq6MjyOSdz9OugqZ4o5k9V JPbm4lGH3M9UbsI2xh+F =CE+3 -----END PGP SIGNATURE----- --Apple-Mail=_76AA0D18-8A7B-4DC3-BC2D-06CEDE271722-- From owner-svn-src-all@freebsd.org Tue Mar 7 09:03:44 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9D915CFABFB; Tue, 7 Mar 2017 09:03:44 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from citapm.icyb.net.ua (citapm.icyb.net.ua [212.40.38.140]) by mx1.freebsd.org (Postfix) with ESMTP id 8C5A113A4; Tue, 7 Mar 2017 09:03:42 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from porto.starpoint.kiev.ua (porto-e.starpoint.kiev.ua [212.40.38.100]) by citapm.icyb.net.ua (8.8.8p3/ICyb-2.3exp) with ESMTP id LAA10040; Tue, 07 Mar 2017 11:03:41 +0200 (EET) (envelope-from avg@FreeBSD.org) Received: from localhost ([127.0.0.1]) by porto.starpoint.kiev.ua with esmtp (Exim 4.34 (FreeBSD)) id 1clB1x-000FUk-K6; Tue, 07 Mar 2017 11:03:41 +0200 Subject: Re: svn commit: r314274 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs To: Slawa Olhovchenkov References: <201702251703.v1PH3nQd044474@repo.freebsd.org> <20170307035308.GN15630@zxy.spb.ru> Cc: src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org From: Andriy Gapon Message-ID: Date: Tue, 7 Mar 2017 11:02:46 +0200 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <20170307035308.GN15630@zxy.spb.ru> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 09:03:44 -0000 On 07/03/2017 05:53, Slawa Olhovchenkov wrote: > On Sat, Feb 25, 2017 at 05:03:49PM +0000, Andriy Gapon wrote: > >> Author: avg >> Date: Sat Feb 25 17:03:48 2017 >> New Revision: 314274 >> URL: https://svnweb.freebsd.org/changeset/base/314274 >> >> Log: >> l2arc: try to fix write size calculation broken by Compressed ARC commit >> >> While there, make a change to not evict a first buffer outside the >> requested eviciton range. >> >> To do: >> - give more consistent names to the size variables >> - upstream to OpenZFS > > Mem: 6647M Active, 8399M Inact, 87G Wired, 49K Buf, 23G Free > ^^^^^^^^^ > ARC: 130G Total, 255M MFU, 80G MRU, 267M Anon, 72M Header, 41M Other > ^^^^^ > > 128GB phys mem > Why this commit? -- Andriy Gapon From owner-svn-src-all@freebsd.org Tue Mar 7 09:04:30 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 8F4F2CFAC93; Tue, 7 Mar 2017 09:04:30 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 21F58157F; Tue, 7 Mar 2017 09:04:29 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v2794ReG093615; Tue, 7 Mar 2017 01:04:27 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v2794RLY093614; Tue, 7 Mar 2017 01:04:27 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703070904.v2794RLY093614@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314833 - in head: bin/pkill lib/libxo/tests/encoder libexec/rtld-elf share/termcap usr.bin/chpass usr.bin/passwd usr.sbin/bsdinstall/partedit usr.sbin/mailwrapper usr.sbin/nologin In-Reply-To: <7544F39D-EFC9-4685-9238-67A45D7FE037@gmail.com> To: "Ngie Cooper (yaneurabeya)" Date: Tue, 7 Mar 2017 01:04:27 -0800 (PST) CC: rgrimes@freebsd.org, src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 09:04:30 -0000 > > > On Mar 6, 2017, at 21:50, Rodney W. Grimes wrote: > > > >>> On Mar 6, 2017, at 21:10, Rodney W. Grimes wrote: > >>> > >>> Author: rgrimes > >>> Date: Tue Mar 7 05:10:38 2017 > >>> New Revision: 314833 > >>> URL: https://svnweb.freebsd.org/changeset/base/314833 > > ... > > > >>> > >>> -SYMLINKS+= ${LIBDIR}/${SHLIB_NAME} /usr/lib/libxo/encoder/test.enc > >>> +SYMLINKS+= ../../../tests/lib/libxo/${SHLIB_NAME} /usr/lib/libxo/encoder/test.enc > >> > >> This change breaks setting TESTSBASE != /usr/tests . Please fix (my employer depends on this being functional). > >> Thanks, > > > > I am just going to revert this until the issue with SYMLINKS vs RSYMLINKS and > > probably a much better fix in bsd.*.mk can be implemented. I can live with > > one last nasty wart of an absolute link in DESTDIR until then. The important > > functional ones are gone now. > > > > To fix this without changing SYMLINKS would involve adding a local install: > > target which would be more mess than having the one absolute link. > > The proposed enhancement for bsd.links.mk for RSYMLINKS can be found here: https://reviews.freebsd.org/D9919 . I dont think that is what bapt/bdrewery had in mind, I think they wanted to replicate the SYMLINK= as RSYMLINK= and use that when needed. I have thought about this and we do not ever want absolute links in the tree, so much simpler fix is to just convert SYMLINKS to call INSTALL_RSYMLINKS instead of INSTALL_SYMLINKS and bam, its all fixed and shall always be fixed, and as long as no one uses INSTALL_SYMLINKS. > Thanks, > -Ngie -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Mar 7 09:12:33 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A2C1FD001C5; Tue, 7 Mar 2017 09:12:33 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pf0-x22f.google.com (mail-pf0-x22f.google.com [IPv6:2607:f8b0:400e:c00::22f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 6E0281D4C; Tue, 7 Mar 2017 09:12:33 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: by mail-pf0-x22f.google.com with SMTP id w189so72392126pfb.0; Tue, 07 Mar 2017 01:12:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:mime-version:from:in-reply-to:date:cc:message-id:references :to; bh=m6Vei1lawii4jr0tx16yCLjw+zjuWvi6KdEqeAI6PaI=; b=o7opE0P3ffq42qwgUHvHE0lyeUbOIQPZeU2Sa1aLi/Dk2HtdVCWsDId+FzTSBrGeLZ ZIwGNEgRI9+JUk7lDJoUxKekccspuZpJP8l3N5xqlNf95g5Rsz8FUc0r0SakHENBfDZq f2n7/0WWoWwe2eg/gIKESbjSfRgnEBe2s2K3+rFkMcAbqmyVUE0XqPoZIgp4ZTHxjdB4 pg3no51Rkh5y8+hjE/BbIbkGj4VXkufkZ/T794zkA8La++v1FvcjpFges1MgM55l0wXB cQaKkmeuPN7ws6jMhAKL4dCkdvkiWidd8L39eaOPhCPrWYupAXIk69BSXqyjw8Y87LVZ qBTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:mime-version:from:in-reply-to:date:cc :message-id:references:to; bh=m6Vei1lawii4jr0tx16yCLjw+zjuWvi6KdEqeAI6PaI=; b=nZ49RYr4Q0cmeNh7RW3xnJtLPmKrNnQDDE59XDa3nQZBKewph4zD3bBrFyzWzhKxOO 81kDTm3tr748ZSUL70jebl++3l+rmY8zP4Qa/AtzqbH7zu79GaaFomT3nSyIbyrW1IZ9 X6cABJxMEUoqD81OvI8JQN2IyQWx+ykaaSNj6rgIGtdEv/FkVuxlsoXuo8EYK65YqXt3 VGVeEPGTZ40FwodX8BmoidA1/fiaiFfH4zVC1NOegRpOy89BsugtE9ILDj/9GozuNb2h VQQV5dwHSehR4gbv70aSPBTmkO0MOsEzUchs7EkBTeCdpMate20u408g+CyD7bI6YgD/ mCRA== X-Gm-Message-State: AMke39m9uXDdaJni5FdWhFfKQz/3AavLyjY8ijBTIS+ftLnV+bjddc8dqLtWdY+9O8ay7Q== X-Received: by 10.99.225.5 with SMTP id z5mr25805756pgh.145.1488877952843; Tue, 07 Mar 2017 01:12:32 -0800 (PST) Received: from pinklady.local (c-73-19-52-228.hsd1.wa.comcast.net. [73.19.52.228]) by smtp.gmail.com with ESMTPSA id a5sm14268558pfh.124.2017.03.07.01.12.31 (version=TLS1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 07 Mar 2017 01:12:32 -0800 (PST) Subject: Re: svn commit: r314833 - in head: bin/pkill lib/libxo/tests/encoder libexec/rtld-elf share/termcap usr.bin/chpass usr.bin/passwd usr.sbin/bsdinstall/partedit usr.sbin/mailwrapper usr.sbin/nologin Mime-Version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Content-Type: multipart/signed; boundary="Apple-Mail=_6FD328DE-9B26-4456-B9FB-36A36D79A277"; protocol="application/pgp-signature"; micalg=pgp-sha512 X-Pgp-Agent: GPGMail From: "Ngie Cooper (yaneurabeya)" In-Reply-To: <201703070904.v2794RLY093614@pdx.rh.CN85.dnsmgr.net> Date: Tue, 7 Mar 2017 01:12:31 -0800 Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-Id: References: <201703070904.v2794RLY093614@pdx.rh.CN85.dnsmgr.net> To: rgrimes@freebsd.org X-Mailer: Apple Mail (2.3124) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 09:12:33 -0000 --Apple-Mail=_6FD328DE-9B26-4456-B9FB-36A36D79A277 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On Mar 7, 2017, at 01:04, Rodney W. Grimes = wrote: >=20 >>>=20 >>> On Mar 6, 2017, at 21:50, Rodney W. Grimes = wrote: >>>=20 >>>>> On Mar 6, 2017, at 21:10, Rodney W. Grimes = wrote: >>>>>=20 >>>>> Author: rgrimes >>>>> Date: Tue Mar 7 05:10:38 2017 >>>>> New Revision: 314833 >>>>> URL: https://svnweb.freebsd.org/changeset/base/314833 >>> ... >>>=20 >>>>>=20 >>>>> -SYMLINKS+=3D ${LIBDIR}/${SHLIB_NAME} = /usr/lib/libxo/encoder/test.enc >>>>> +SYMLINKS+=3D ../../../tests/lib/libxo/${SHLIB_NAME} = /usr/lib/libxo/encoder/test.enc >>>>=20 >>>> This change breaks setting TESTSBASE !=3D /usr/tests . Please = fix (my employer depends on this being functional). >>>> Thanks, >>>=20 >>> I am just going to revert this until the issue with SYMLINKS vs = RSYMLINKS and >>> probably a much better fix in bsd.*.mk can be implemented. I can = live with >>> one last nasty wart of an absolute link in DESTDIR until then. The = important >>> functional ones are gone now. >>>=20 >>> To fix this without changing SYMLINKS would involve adding a local = install: >>> target which would be more mess than having the one absolute link. >>=20 >> The proposed enhancement for bsd.links.mk for RSYMLINKS can be found = here: https://reviews.freebsd.org/D9919 . >=20 > I dont think that is what bapt/bdrewery had in mind, I think they = wanted to > replicate the SYMLINK=3D as RSYMLINK=3D and use that when needed. >=20 > I have thought about this and we do not ever want absolute links in = the tree, > so much simpler fix is to just convert SYMLINKS to call = INSTALL_RSYMLINKS > instead of INSTALL_SYMLINKS and bam, its all fixed and shall always be = fixed, > and as long as no one uses INSTALL_SYMLINKS. SYMLINKS has been around since r245752. I personally don=E2=80=99t know = if it=E2=80=99s wise to remove functionality that=E2=80=99s been =E2=80=9C= in production=E2=80=9D for 4+ years. Making the target intelligently use one command over the other might = seem ok, but it could have unintended consequences. I think it=E2=80=99s = best to have another well-documented variable that uses INSTALL_RSYMLINK = vs INSTALL_SYMLINK. Also, in the CR, please note that the SYMLINKS piece doesn=E2=80=99t = prefix source targets with ${DESTDIR}, whereas the LINKS (and soon to be = RSYMLINKS portion) will need it in order to compute the right paths and = execute the right behavior. Otherwise, you=E2=80=99re going to be = breaking someone=E2=80=99s use for SYMLINKS for no good reason. Thanks, -Ngie --Apple-Mail=_6FD328DE-9B26-4456-B9FB-36A36D79A277 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJYvnl/AAoJEPWDqSZpMIYV9FwP/RMj3HAeTCsRRR2RtR4qQf7Y Kx/SLxc9DMPwCBMja2H8U00SEItld294N+Ze3V0Kxp1amFEhMuhgiDRdwRhLGTMp 8VkN8EIBqBAAfr3i6/0bmyHYxV4HhDRTRsSg4dX3UfxiTXo+cJDSBiCiZp+kr8B6 9kK9wNeKucR8Lu3TsH8vwwLYEq/+wVwYeLPbRjIxbMrYpbWUw/nm+PB9S2gfqDxH uwr9+a4zCWL4GWuc6AuKnw0N8Ixc2YqdreiozETVqcvv6Xv7LElyYVNqD8zsjbO/ cIRpnHjlQykZ75xEl7m4GvTJvH4C81SRmxQLQPjwyNPrJ63T6z1HeOU7uiBtud+d opADMG0phZtT95p+PKZe7HHRQMDit0BAA0C4QZzJW+7zmCHgAMddF6ld7bfujaO5 8vybSn/1KlBpdlNDL9IljDTkwrvy++jp/4FWGgkrBlwn5Z7nLZq3EZMKU/UyGmXe N5QM7uVsFHIeniYDcwtSswAsVdyWQNyXlsuGE0TKN4xCiiR1xIZi081qIACyuwhU mfV5gLLaNjN/J8yVGOWNdXGTqkg5UWWUoRd2o+MLgHxGfQnojY10bJ+Jdf05CI5Z XZcxs6RU54tWiBC4338ImoxrntOFtW5c1C98pocS0PV4ddxMBjhJ9cKMiwp/01sR q5MO6RCRe8/K06RoWZL7 =fZs5 -----END PGP SIGNATURE----- --Apple-Mail=_6FD328DE-9B26-4456-B9FB-36A36D79A277-- From owner-svn-src-all@freebsd.org Tue Mar 7 09:16:53 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9C165D00371; Tue, 7 Mar 2017 09:16:53 +0000 (UTC) (envelope-from royger@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5CCDD1FB4; Tue, 7 Mar 2017 09:16:53 +0000 (UTC) (envelope-from royger@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v279GqlB061705; Tue, 7 Mar 2017 09:16:52 GMT (envelope-from royger@FreeBSD.org) Received: (from royger@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v279Gqgn061700; Tue, 7 Mar 2017 09:16:52 GMT (envelope-from royger@FreeBSD.org) Message-Id: <201703070916.v279Gqgn061700@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: royger set sender to royger@FreeBSD.org using -f From: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Date: Tue, 7 Mar 2017 09:16:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314840 - in head/sys: dev/xen/blkfront dev/xen/control dev/xen/netfront xen xen/xenbus X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 09:16:53 -0000 Author: royger Date: Tue Mar 7 09:16:51 2017 New Revision: 314840 URL: https://svnweb.freebsd.org/changeset/base/314840 Log: xen: add support for canceled suspend When running on Xen, it's possible that a suspend request to the hypervisor fails (return from HYPERVISOR_suspend different than 0). This means that the suspend hasn't succeed, and the resume procedure needs to properly handle this case. First of all, when such situation happens there's no need to reset the vector callback, hypercall page, shared info, event channels or grant table, because it's state is preserved. Also, the PV drivers don't need to be reset to the initial state, since the connection with the backed has not been interrupted. Submitted by: Liuyingdong Reviewed by: royger MFC after: 2 weeks Differential revision: https://reviews.freebsd.org/D9635 Modified: head/sys/dev/xen/blkfront/blkfront.c head/sys/dev/xen/control/control.c head/sys/dev/xen/netfront/netfront.c head/sys/xen/xen-os.h head/sys/xen/xenbus/xenbusb.c Modified: head/sys/dev/xen/blkfront/blkfront.c ============================================================================== --- head/sys/dev/xen/blkfront/blkfront.c Tue Mar 7 07:49:25 2017 (r314839) +++ head/sys/dev/xen/blkfront/blkfront.c Tue Mar 7 09:16:51 2017 (r314840) @@ -1537,6 +1537,11 @@ xbd_resume(device_t dev) { struct xbd_softc *sc = device_get_softc(dev); + if (xen_suspend_cancelled) { + sc->xbd_state = XBD_STATE_CONNECTED; + return (0); + } + DPRINTK("xbd_resume: %s\n", xenbus_get_node(dev)); xbd_free(sc); Modified: head/sys/dev/xen/control/control.c ============================================================================== --- head/sys/dev/xen/control/control.c Tue Mar 7 07:49:25 2017 (r314839) +++ head/sys/dev/xen/control/control.c Tue Mar 7 09:16:51 2017 (r314840) @@ -148,6 +148,7 @@ __FBSDID("$FreeBSD$"); #include +bool xen_suspend_cancelled; /*--------------------------- Forward Declarations --------------------------*/ /** Function signature for shutdown event handlers. */ typedef void (xctrl_shutdown_handler_t)(void); @@ -196,7 +197,6 @@ xctrl_suspend() #ifdef SMP cpuset_t cpu_suspend_map; #endif - int suspend_cancelled; EVENTHANDLER_INVOKE(power_suspend_early); stop_all_proc(); @@ -267,16 +267,20 @@ xctrl_suspend() intr_suspend(); xen_hvm_suspend(); - suspend_cancelled = HYPERVISOR_suspend(0); + xen_suspend_cancelled = !!HYPERVISOR_suspend(0); - xen_hvm_resume(suspend_cancelled != 0); - intr_resume(suspend_cancelled != 0); + if (!xen_suspend_cancelled) { + xen_hvm_resume(false); + } + intr_resume(xen_suspend_cancelled != 0); enable_intr(); /* * Reset grant table info. */ - gnttab_resume(NULL); + if (!xen_suspend_cancelled) { + gnttab_resume(NULL); + } #ifdef SMP if (!CPU_EMPTY(&cpu_suspend_map)) { Modified: head/sys/dev/xen/netfront/netfront.c ============================================================================== --- head/sys/dev/xen/netfront/netfront.c Tue Mar 7 07:49:25 2017 (r314839) +++ head/sys/dev/xen/netfront/netfront.c Tue Mar 7 09:16:51 2017 (r314840) @@ -439,6 +439,20 @@ static int netfront_resume(device_t dev) { struct netfront_info *info = device_get_softc(dev); + u_int i; + + if (xen_suspend_cancelled) { + for (i = 0; i < info->num_queues; i++) { + XN_RX_LOCK(&info->rxq[i]); + XN_TX_LOCK(&info->txq[i]); + } + netfront_carrier_on(info); + for (i = 0; i < info->num_queues; i++) { + XN_RX_UNLOCK(&info->rxq[i]); + XN_TX_UNLOCK(&info->txq[i]); + } + return (0); + } netif_disconnect_backend(info); return (0); Modified: head/sys/xen/xen-os.h ============================================================================== --- head/sys/xen/xen-os.h Tue Mar 7 07:49:25 2017 (r314839) +++ head/sys/xen/xen-os.h Tue Mar 7 09:16:51 2017 (r314840) @@ -56,6 +56,8 @@ extern char *console_page; extern int xen_disable_pv_disks; extern int xen_disable_pv_nics; +extern bool xen_suspend_cancelled; + enum xen_domain_type { XEN_NATIVE, /* running on bare hardware */ XEN_PV_DOMAIN, /* running in a PV domain */ Modified: head/sys/xen/xenbus/xenbusb.c ============================================================================== --- head/sys/xen/xenbus/xenbusb.c Tue Mar 7 07:49:25 2017 (r314839) +++ head/sys/xen/xenbus/xenbusb.c Tue Mar 7 09:16:51 2017 (r314840) @@ -791,6 +791,11 @@ xenbusb_resume(device_t dev) if (device_get_state(kids[i]) == DS_NOTPRESENT) continue; + if (xen_suspend_cancelled) { + DEVICE_RESUME(kids[i]); + continue; + } + ivars = device_get_ivars(kids[i]); xs_unregister_watch(&ivars->xd_otherend_watch); From owner-svn-src-all@freebsd.org Tue Mar 7 09:17:50 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0BD48D00406; Tue, 7 Mar 2017 09:17:50 +0000 (UTC) (envelope-from royger@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B6AE61123; Tue, 7 Mar 2017 09:17:49 +0000 (UTC) (envelope-from royger@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v279HmUW061786; Tue, 7 Mar 2017 09:17:48 GMT (envelope-from royger@FreeBSD.org) Received: (from royger@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v279HmBg061783; Tue, 7 Mar 2017 09:17:48 GMT (envelope-from royger@FreeBSD.org) Message-Id: <201703070917.v279HmBg061783@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: royger set sender to royger@FreeBSD.org using -f From: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Date: Tue, 7 Mar 2017 09:17:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314841 - in head/sys: dev/xen/control dev/xen/xenstore xen/xenstore X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 09:17:50 -0000 Author: royger Date: Tue Mar 7 09:17:48 2017 New Revision: 314841 URL: https://svnweb.freebsd.org/changeset/base/314841 Log: xenstore: fix suspension when using the xenstore device Lock the xenstore request mutex when suspending user-space processes, in order to prevent any process from holding this lock when going into suspension, or else the xenstore suspend process is going to deadlock. Submitted by: Liuyingdong Reviewed by: royger MFC after: 2 weeks Differential revision: https://reviews.freebsd.org/D9638 Modified: head/sys/dev/xen/control/control.c head/sys/dev/xen/xenstore/xenstore.c head/sys/xen/xenstore/xenstorevar.h Modified: head/sys/dev/xen/control/control.c ============================================================================== --- head/sys/dev/xen/control/control.c Tue Mar 7 09:16:51 2017 (r314840) +++ head/sys/dev/xen/control/control.c Tue Mar 7 09:17:48 2017 (r314841) @@ -199,7 +199,9 @@ xctrl_suspend() #endif EVENTHANDLER_INVOKE(power_suspend_early); + xs_lock(); stop_all_proc(); + xs_unlock(); EVENTHANDLER_INVOKE(power_suspend); #ifdef EARLY_AP_STARTUP Modified: head/sys/dev/xen/xenstore/xenstore.c ============================================================================== --- head/sys/dev/xen/xenstore/xenstore.c Tue Mar 7 09:16:51 2017 (r314840) +++ head/sys/dev/xen/xenstore/xenstore.c Tue Mar 7 09:17:48 2017 (r314841) @@ -1699,3 +1699,20 @@ xs_unregister_watch(struct xs_watch *wat sx_xunlock(&xs.xenwatch_mutex); } } + +void +xs_lock(void) +{ + + sx_xlock(&xs.request_mutex); + return; +} + +void +xs_unlock(void) +{ + + sx_xunlock(&xs.request_mutex); + return; +} + Modified: head/sys/xen/xenstore/xenstorevar.h ============================================================================== --- head/sys/xen/xenstore/xenstorevar.h Tue Mar 7 09:16:51 2017 (r314840) +++ head/sys/xen/xenstore/xenstorevar.h Tue Mar 7 09:17:48 2017 (r314841) @@ -338,4 +338,15 @@ void xs_unregister_watch(struct xs_watch */ struct sbuf *xs_join(const char *, const char *); +/** + * Lock the xenstore request mutex. + */ +void xs_lock(void); + +/** + * Unlock the xenstore request mutex. + */ +void xs_unlock(void); + #endif /* _XEN_XENSTORE_XENSTOREVAR_H */ + From owner-svn-src-all@freebsd.org Tue Mar 7 09:18:21 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CD69ED00493; Tue, 7 Mar 2017 09:18:21 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from zxy.spb.ru (zxy.spb.ru [195.70.199.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 910D11294; Tue, 7 Mar 2017 09:18:21 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from slw by zxy.spb.ru with local (Exim 4.86 (FreeBSD)) (envelope-from ) id 1clBG6-0002w0-QV; Tue, 07 Mar 2017 12:18:18 +0300 Date: Tue, 7 Mar 2017 12:18:18 +0300 From: Slawa Olhovchenkov To: Andriy Gapon Cc: src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org Subject: Re: svn commit: r314274 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs Message-ID: <20170307091818.GY70430@zxy.spb.ru> References: <201702251703.v1PH3nQd044474@repo.freebsd.org> <20170307035308.GN15630@zxy.spb.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.24 (2015-08-30) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: slw@zxy.spb.ru X-SA-Exim-Scanned: No (on zxy.spb.ru); SAEximRunCond expanded to false X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 09:18:21 -0000 On Tue, Mar 07, 2017 at 11:02:46AM +0200, Andriy Gapon wrote: > On 07/03/2017 05:53, Slawa Olhovchenkov wrote: > > On Sat, Feb 25, 2017 at 05:03:49PM +0000, Andriy Gapon wrote: > > > >> Author: avg > >> Date: Sat Feb 25 17:03:48 2017 > >> New Revision: 314274 > >> URL: https://svnweb.freebsd.org/changeset/base/314274 > >> > >> Log: > >> l2arc: try to fix write size calculation broken by Compressed ARC commit > >> > >> While there, make a change to not evict a first buffer outside the > >> requested eviciton range. > >> > >> To do: > >> - give more consistent names to the size variables > >> - upstream to OpenZFS > > > > Mem: 6647M Active, 8399M Inact, 87G Wired, 49K Buf, 23G Free > > ^^^^^^^^^ > > ARC: 130G Total, 255M MFU, 80G MRU, 267M Anon, 72M Header, 41M Other > > ^^^^^ > > > > 128GB phys mem > > > > Why this commit? revert this commit and r307265 resolve this. i.e. may be r307265, but r307265 related to this. From owner-svn-src-all@freebsd.org Tue Mar 7 09:18:54 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 25937D004F8; Tue, 7 Mar 2017 09:18:54 +0000 (UTC) (envelope-from royger@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CBA0113DB; Tue, 7 Mar 2017 09:18:53 +0000 (UTC) (envelope-from royger@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v279IqLM061871; Tue, 7 Mar 2017 09:18:52 GMT (envelope-from royger@FreeBSD.org) Received: (from royger@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v279Iq8Y061870; Tue, 7 Mar 2017 09:18:52 GMT (envelope-from royger@FreeBSD.org) Message-Id: <201703070918.v279Iq8Y061870@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: royger set sender to royger@FreeBSD.org using -f From: =?UTF-8?Q?Roger_Pau_Monn=c3=a9?= Date: Tue, 7 Mar 2017 09:18:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314842 - head/sys/dev/xen/netfront X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 09:18:54 -0000 Author: royger Date: Tue Mar 7 09:18:52 2017 New Revision: 314842 URL: https://svnweb.freebsd.org/changeset/base/314842 Log: xen/netfront: fix inbound packet flags for checksum offload Currently netfront is setting the flags of inbound packets with the checksum not present (offloaded) to (CSUM_IP_CHECKED | CSUM_IP_VALID | CSUM_DATA_VALID | CSUM_PSEUDO_HDR). According to the mbuf(9) man page this is not the correct combination of flags, it should instead be (CSUM_DATA_VALID | CSUM_PSEUDO_HDR). Reviewed by: Wei Liu MFC after: 2 weeks Sponsored by: Citrix Systems R&D Differential revision: https://reviews.freebsd.org/D9831 Modified: head/sys/dev/xen/netfront/netfront.c Modified: head/sys/dev/xen/netfront/netfront.c ============================================================================== --- head/sys/dev/xen/netfront/netfront.c Tue Mar 7 09:17:48 2017 (r314841) +++ head/sys/dev/xen/netfront/netfront.c Tue Mar 7 09:18:52 2017 (r314842) @@ -1192,15 +1192,17 @@ xn_rxeof(struct netfront_rxq *rxq) m->m_pkthdr.rcvif = ifp; if ( rx->flags & NETRXF_data_validated ) { - /* Tell the stack the checksums are okay */ /* - * XXX this isn't necessarily the case - need to add - * check + * According to mbuf(9) the correct way to tell + * the stack that the checksum of an inbound + * packet is correct, without it actually being + * present (because the underlying interface + * doesn't provide it), is to set the + * CSUM_DATA_VALID and CSUM_PSEUDO_HDR flags, + * and the csum_data field to 0xffff. */ - - m->m_pkthdr.csum_flags |= - (CSUM_IP_CHECKED | CSUM_IP_VALID | CSUM_DATA_VALID - | CSUM_PSEUDO_HDR); + m->m_pkthdr.csum_flags |= (CSUM_DATA_VALID + | CSUM_PSEUDO_HDR); m->m_pkthdr.csum_data = 0xffff; } if ((rx->flags & NETRXF_extra_info) != 0 && From owner-svn-src-all@freebsd.org Tue Mar 7 09:21:12 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B776AD0061A; Tue, 7 Mar 2017 09:21:12 +0000 (UTC) (envelope-from danfe@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2610:1c1:1:6074::16:84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 969E516A9; Tue, 7 Mar 2017 09:21:12 +0000 (UTC) (envelope-from danfe@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1033) id E92FC5179; Tue, 7 Mar 2017 09:21:11 +0000 (UTC) Date: Tue, 7 Mar 2017 09:21:11 +0000 From: Alexey Dokuchaev To: Jordan Hubbard Cc: rgrimes@freebsd.org, svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Ngie Cooper Subject: Re: svn commit: r314831 - head/usr.bin/fortune Message-ID: <20170307092111.GA90747@FreeBSD.org> References: <201703070500.v2750Qqd092455@pdx.rh.CN85.dnsmgr.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.7.1 (2016-10-04) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 09:21:12 -0000 On Mon, Mar 06, 2017 at 10:07:42PM -0800, Jordan Hubbard wrote: > > [ Charset ISO-Latin1 unsupported, converting ] > > Is it true you still use mutt to read your e-mail? :-) I'm using mutt(1) against KOI8-R. Reading FreeBSD email had become a real PITA during some recent years, due to abuse of UTF-8, broken line wrapping (or lack thereof), extreme overquoting, etc. :-( ./danfe From owner-svn-src-all@freebsd.org Tue Mar 7 09:25:46 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 10F96D008E2; Tue, 7 Mar 2017 09:25:46 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from citapm.icyb.net.ua (citapm.icyb.net.ua [212.40.38.140]) by mx1.freebsd.org (Postfix) with ESMTP id F1E831AC0; Tue, 7 Mar 2017 09:25:44 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from porto.starpoint.kiev.ua (porto-e.starpoint.kiev.ua [212.40.38.100]) by citapm.icyb.net.ua (8.8.8p3/ICyb-2.3exp) with ESMTP id LAA10166; Tue, 07 Mar 2017 11:25:43 +0200 (EET) (envelope-from avg@FreeBSD.org) Received: from localhost ([127.0.0.1]) by porto.starpoint.kiev.ua with esmtp (Exim 4.34 (FreeBSD)) id 1clBNG-000FX3-Q7; Tue, 07 Mar 2017 11:25:42 +0200 Subject: Re: svn commit: r314274 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs To: Slawa Olhovchenkov References: <201702251703.v1PH3nQd044474@repo.freebsd.org> <20170307035308.GN15630@zxy.spb.ru> <20170307091818.GY70430@zxy.spb.ru> Cc: src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org From: Andriy Gapon Message-ID: <5e1fa060-719e-4677-164a-856e3f6c779f@FreeBSD.org> Date: Tue, 7 Mar 2017 11:24:42 +0200 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <20170307091818.GY70430@zxy.spb.ru> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 09:25:46 -0000 On 07/03/2017 11:18, Slawa Olhovchenkov wrote: > On Tue, Mar 07, 2017 at 11:02:46AM +0200, Andriy Gapon wrote: > >> On 07/03/2017 05:53, Slawa Olhovchenkov wrote: >>> On Sat, Feb 25, 2017 at 05:03:49PM +0000, Andriy Gapon wrote: >>> >>>> Author: avg >>>> Date: Sat Feb 25 17:03:48 2017 >>>> New Revision: 314274 >>>> URL: https://svnweb.freebsd.org/changeset/base/314274 >>>> >>>> Log: >>>> l2arc: try to fix write size calculation broken by Compressed ARC commit >>>> >>>> While there, make a change to not evict a first buffer outside the >>>> requested eviciton range. >>>> >>>> To do: >>>> - give more consistent names to the size variables >>>> - upstream to OpenZFS >>> >>> Mem: 6647M Active, 8399M Inact, 87G Wired, 49K Buf, 23G Free >>> ^^^^^^^^^ >>> ARC: 130G Total, 255M MFU, 80G MRU, 267M Anon, 72M Header, 41M Other >>> ^^^^^ >>> >>> 128GB phys mem >>> >> >> Why this commit? > > revert this commit and r307265 resolve this. > i.e. may be r307265, but r307265 related to this. So, why not comment on r307265 or bisect first? -- Andriy Gapon From owner-svn-src-all@freebsd.org Tue Mar 7 09:29:24 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 566EDD00A3A; Tue, 7 Mar 2017 09:29:24 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from zxy.spb.ru (zxy.spb.ru [195.70.199.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 18B321D64; Tue, 7 Mar 2017 09:29:24 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from slw by zxy.spb.ru with local (Exim 4.86 (FreeBSD)) (envelope-from ) id 1clBQo-0003IB-6e; Tue, 07 Mar 2017 12:29:22 +0300 Date: Tue, 7 Mar 2017 12:29:22 +0300 From: Slawa Olhovchenkov To: Andriy Gapon Cc: src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org Subject: Re: svn commit: r314274 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs Message-ID: <20170307092922.GZ70430@zxy.spb.ru> References: <201702251703.v1PH3nQd044474@repo.freebsd.org> <20170307035308.GN15630@zxy.spb.ru> <20170307091818.GY70430@zxy.spb.ru> <5e1fa060-719e-4677-164a-856e3f6c779f@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <5e1fa060-719e-4677-164a-856e3f6c779f@FreeBSD.org> User-Agent: Mutt/1.5.24 (2015-08-30) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: slw@zxy.spb.ru X-SA-Exim-Scanned: No (on zxy.spb.ru); SAEximRunCond expanded to false X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 09:29:24 -0000 On Tue, Mar 07, 2017 at 11:24:42AM +0200, Andriy Gapon wrote: > On 07/03/2017 11:18, Slawa Olhovchenkov wrote: > > On Tue, Mar 07, 2017 at 11:02:46AM +0200, Andriy Gapon wrote: > > > >> On 07/03/2017 05:53, Slawa Olhovchenkov wrote: > >>> On Sat, Feb 25, 2017 at 05:03:49PM +0000, Andriy Gapon wrote: > >>> > >>>> Author: avg > >>>> Date: Sat Feb 25 17:03:48 2017 > >>>> New Revision: 314274 > >>>> URL: https://svnweb.freebsd.org/changeset/base/314274 > >>>> > >>>> Log: > >>>> l2arc: try to fix write size calculation broken by Compressed ARC commit > >>>> > >>>> While there, make a change to not evict a first buffer outside the > >>>> requested eviciton range. > >>>> > >>>> To do: > >>>> - give more consistent names to the size variables > >>>> - upstream to OpenZFS > >>> > >>> Mem: 6647M Active, 8399M Inact, 87G Wired, 49K Buf, 23G Free > >>> ^^^^^^^^^ > >>> ARC: 130G Total, 255M MFU, 80G MRU, 267M Anon, 72M Header, 41M Other > >>> ^^^^^ > >>> > >>> 128GB phys mem > >>> > >> > >> Why this commit? > > > > revert this commit and r307265 resolve this. > > i.e. may be r307265, but r307265 related to this. > > So, why not comment on r307265 or bisect first? You are kidding?! How to work this commit w/o r307265? r307265 is l2arc compression suport (buggly). this commit fix l2arc part. arc part still buggly. hmm, may be I am not clean, I am not rever ALL to r307265. I am rever exact r307265 and 314274. This is like bisect by one try. From owner-svn-src-all@freebsd.org Tue Mar 7 09:31:31 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1E31CD00C6F; Tue, 7 Mar 2017 09:31:31 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (br1.CN84in.dnsmgr.net [69.59.192.140]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id ECD631FC5; Tue, 7 Mar 2017 09:31:30 +0000 (UTC) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: from pdx.rh.CN85.dnsmgr.net (localhost [127.0.0.1]) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3) with ESMTP id v279VTCA093743; Tue, 7 Mar 2017 01:31:29 -0800 (PST) (envelope-from freebsd@pdx.rh.CN85.dnsmgr.net) Received: (from freebsd@localhost) by pdx.rh.CN85.dnsmgr.net (8.13.3/8.13.3/Submit) id v279VSng093742; Tue, 7 Mar 2017 01:31:28 -0800 (PST) (envelope-from freebsd) From: "Rodney W. Grimes" Message-Id: <201703070931.v279VSng093742@pdx.rh.CN85.dnsmgr.net> Subject: Re: svn commit: r314833 - in head: bin/pkill lib/libxo/tests/encoder libexec/rtld-elf share/termcap usr.bin/chpass usr.bin/passwd usr.sbin/bsdinstall/partedit usr.sbin/mailwrapper usr.sbin/nologin In-Reply-To: To: "Ngie Cooper (yaneurabeya)" Date: Tue, 7 Mar 2017 01:31:28 -0800 (PST) CC: rgrimes@freebsd.org, src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Reply-To: rgrimes@freebsd.org X-Mailer: ELM [version 2.4ME+ PL121h (25)] MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 09:31:31 -0000 -- Start of PGP signed section. [ Charset UTF-8 unsupported, converting... ] > > > On Mar 7, 2017, at 01:04, Rodney W. Grimes wrote: > > > >>> > >>> On Mar 6, 2017, at 21:50, Rodney W. Grimes wrote: > >>> > >>>>> On Mar 6, 2017, at 21:10, Rodney W. Grimes wrote: > >>>>> > >>>>> Author: rgrimes > >>>>> Date: Tue Mar 7 05:10:38 2017 > >>>>> New Revision: 314833 > >>>>> URL: https://svnweb.freebsd.org/changeset/base/314833 > >>> ... > >>> > >>>>> > >>>>> -SYMLINKS+= ${LIBDIR}/${SHLIB_NAME} /usr/lib/libxo/encoder/test.enc > >>>>> +SYMLINKS+= ../../../tests/lib/libxo/${SHLIB_NAME} /usr/lib/libxo/encoder/test.enc > >>>> > >>>> This change breaks setting TESTSBASE != /usr/tests . Please fix (my employer depends on this being functional). > >>>> Thanks, > >>> > >>> I am just going to revert this until the issue with SYMLINKS vs RSYMLINKS and > >>> probably a much better fix in bsd.*.mk can be implemented. I can live with > >>> one last nasty wart of an absolute link in DESTDIR until then. The important > >>> functional ones are gone now. > >>> > >>> To fix this without changing SYMLINKS would involve adding a local install: > >>> target which would be more mess than having the one absolute link. > >> > >> The proposed enhancement for bsd.links.mk for RSYMLINKS can be found here: https://reviews.freebsd.org/D9919 . > > > > I dont think that is what bapt/bdrewery had in mind, I think they wanted to > > replicate the SYMLINK= as RSYMLINK= and use that when needed. > > > > I have thought about this and we do not ever want absolute links in the tree, > > so much simpler fix is to just convert SYMLINKS to call INSTALL_RSYMLINKS > > instead of INSTALL_SYMLINKS and bam, its all fixed and shall always be fixed, > > and as long as no one uses INSTALL_SYMLINKS. > > SYMLINKS has been around since r245752. I personally don?t know if it?s wise to remove functionality that?s been ?in production? for 4+ years. SYMLINKS has been around since 198x. > Making the target intelligently use one command over the other might seem ok, but it could have unintended consequences. > I think it?s best to have another well-documented variable that uses INSTALL_RSYMLINK vs INSTALL_SYMLINK. It has 0 consequencies, it actually achives that all installed symbolic links be relative, which is how things should be. There is no doubt about this, if you have doubt please defer to myself, Julian Elisher and some other grey beards that know about this. You simply do NOT want absolute path symbolic links in the distribution, ever! > Also, in the CR, please note that the SYMLINKS piece doesn?t prefix source targets with ${DESTDIR}, whereas the LINKS (and soon to be RSYMLINKS portion) will need it in order to compute the right paths and execute the right behavior. Otherwise, you?re going to be breaking someone?s use for SYMLINKS for no good reason. That is correct, LINKS need 2 absolute paths to things in DESTDIR to create the proper hardlink, where as SYMLINKS need the prooper DESTDIR relative source to place as the link body at the target. I suggest your run a make installworld DESTDIR=/some/place and see just how broken your symbolic links end up if you add ${DESTDIOR] to both sides of SYMLINK > -Ngie -- Rod Grimes rgrimes@freebsd.org From owner-svn-src-all@freebsd.org Tue Mar 7 09:37:32 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id AC20AD00E74; Tue, 7 Mar 2017 09:37:32 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from citapm.icyb.net.ua (citapm.icyb.net.ua [212.40.38.140]) by mx1.freebsd.org (Postfix) with ESMTP id 92C91147F; Tue, 7 Mar 2017 09:37:31 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from porto.starpoint.kiev.ua (porto-e.starpoint.kiev.ua [212.40.38.100]) by citapm.icyb.net.ua (8.8.8p3/ICyb-2.3exp) with ESMTP id LAA10216; Tue, 07 Mar 2017 11:37:29 +0200 (EET) (envelope-from avg@FreeBSD.org) Received: from localhost ([127.0.0.1]) by porto.starpoint.kiev.ua with esmtp (Exim 4.34 (FreeBSD)) id 1clBYf-000FY2-Id; Tue, 07 Mar 2017 11:37:29 +0200 Subject: Re: svn commit: r314274 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs To: Slawa Olhovchenkov References: <201702251703.v1PH3nQd044474@repo.freebsd.org> <20170307035308.GN15630@zxy.spb.ru> <20170307091818.GY70430@zxy.spb.ru> <5e1fa060-719e-4677-164a-856e3f6c779f@FreeBSD.org> <20170307092922.GZ70430@zxy.spb.ru> Cc: src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org From: Andriy Gapon Message-ID: <566f2577-eee7-a084-2196-362e6942d661@FreeBSD.org> Date: Tue, 7 Mar 2017 11:36:34 +0200 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:45.0) Gecko/20100101 Thunderbird/45.7.1 MIME-Version: 1.0 In-Reply-To: <20170307092922.GZ70430@zxy.spb.ru> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 09:37:32 -0000 On 07/03/2017 11:29, Slawa Olhovchenkov wrote: > You are kidding?! How to work this commit w/o r307265? > r307265 is l2arc compression suport (buggly). > this commit fix l2arc part. > arc part still buggly. > > hmm, may be I am not clean, I am not rever ALL to r307265. I am rever > exact r307265 and 314274. This is like bisect by one try. I am not sure what you are saying... Do you see the problem with just r307265? Or with r307265 + r314274 ? -- Andriy Gapon From owner-svn-src-all@freebsd.org Tue Mar 7 09:39:53 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 73E28D00F1C; Tue, 7 Mar 2017 09:39:53 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from zxy.spb.ru (zxy.spb.ru [195.70.199.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 35C841632; Tue, 7 Mar 2017 09:39:53 +0000 (UTC) (envelope-from slw@zxy.spb.ru) Received: from slw by zxy.spb.ru with local (Exim 4.86 (FreeBSD)) (envelope-from ) id 1clBaw-0003bc-Ur; Tue, 07 Mar 2017 12:39:50 +0300 Date: Tue, 7 Mar 2017 12:39:50 +0300 From: Slawa Olhovchenkov To: Andriy Gapon Cc: src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org Subject: Re: svn commit: r314274 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs Message-ID: <20170307093950.GA70430@zxy.spb.ru> References: <201702251703.v1PH3nQd044474@repo.freebsd.org> <20170307035308.GN15630@zxy.spb.ru> <20170307091818.GY70430@zxy.spb.ru> <5e1fa060-719e-4677-164a-856e3f6c779f@FreeBSD.org> <20170307092922.GZ70430@zxy.spb.ru> <566f2577-eee7-a084-2196-362e6942d661@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <566f2577-eee7-a084-2196-362e6942d661@FreeBSD.org> User-Agent: Mutt/1.5.24 (2015-08-30) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: slw@zxy.spb.ru X-SA-Exim-Scanned: No (on zxy.spb.ru); SAEximRunCond expanded to false X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 09:39:53 -0000 On Tue, Mar 07, 2017 at 11:36:34AM +0200, Andriy Gapon wrote: > On 07/03/2017 11:29, Slawa Olhovchenkov wrote: > > You are kidding?! How to work this commit w/o r307265? > > r307265 is l2arc compression suport (buggly). > > this commit fix l2arc part. > > arc part still buggly. > > > > hmm, may be I am not clean, I am not rever ALL to r307265. I am rever > > exact r307265 and 314274. This is like bisect by one try. > > I am not sure what you are saying... > Do you see the problem with just r307265? > Or with r307265 + r314274 ? r307265 + r314274 Don't try r307265 (by bad feedbacks). From owner-svn-src-all@freebsd.org Tue Mar 7 12:09:16 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 1E25AD00707; Tue, 7 Mar 2017 12:09:16 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id DAC711901; Tue, 7 Mar 2017 12:09:15 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27C9Fxq031897; Tue, 7 Mar 2017 12:09:15 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27C9EnN031891; Tue, 7 Mar 2017 12:09:14 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201703071209.v27C9EnN031891@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Tue, 7 Mar 2017 12:09:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314843 - in head/sys: compat/linuxkpi/common/include/linux compat/linuxkpi/common/src conf modules/linuxkpi X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 12:09:16 -0000 Author: hselasky Date: Tue Mar 7 12:09:14 2017 New Revision: 314843 URL: https://svnweb.freebsd.org/changeset/base/314843 Log: LinuxKPI workqueue cleanup. This change makes the workqueue implementation behave more like in Linux, both functionality wise and structure wise. All workqueue code has been moved to linux_work.c Add an atomic based statemachine to the work_struct to ensure proper operation. Prior to this change struct_work was directly mapped to a FreeBSD task. When a taskqueue has multiple threads the same task may end up being executed on more than one worker thread simultaneously. This might cause problems with code coming from Linux, which expects serial behaviour, similar to Linux tasklets. Move all global workqueue function names into the linux_xxx domain to avoid symbol name clashes in the future. Implement a few more workqueue related functions and macros. Create two multithreaded taskqueues for the LinuxKPI during module load, one for time-consuming callbacks and one for non-time consuming callbacks. MFC after: 1 week Sponsored by: Mellanox Technologies Added: head/sys/compat/linuxkpi/common/src/linux_work.c (contents, props changed) Modified: head/sys/compat/linuxkpi/common/include/linux/workqueue.h head/sys/compat/linuxkpi/common/src/linux_compat.c head/sys/conf/files head/sys/modules/linuxkpi/Makefile Modified: head/sys/compat/linuxkpi/common/include/linux/workqueue.h ============================================================================== --- head/sys/compat/linuxkpi/common/include/linux/workqueue.h Tue Mar 7 09:18:52 2017 (r314842) +++ head/sys/compat/linuxkpi/common/include/linux/workqueue.h Tue Mar 7 12:09:14 2017 (r314843) @@ -2,7 +2,7 @@ * Copyright (c) 2010 Isilon Systems, Inc. * Copyright (c) 2010 iX Systems, Inc. * Copyright (c) 2010 Panasas, Inc. - * Copyright (c) 2013-2015 Mellanox Technologies, Ltd. + * Copyright (c) 2013-2017 Mellanox Technologies, Ltd. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -38,179 +38,189 @@ #include +#include +#include #include +#include + +#define WORK_CPU_UNBOUND MAXCPU +#define WQ_UNBOUND (1 << 0) +#define WQ_HIGHPRI (1 << 1) + +struct work_struct; +typedef void (*work_func_t)(struct work_struct *); + +struct work_exec { + TAILQ_ENTRY(work_exec) entry; + struct work_struct *target; +}; struct workqueue_struct { - struct taskqueue *taskqueue; - atomic_t draining; + struct taskqueue *taskqueue; + struct mtx exec_mtx; + TAILQ_HEAD(, work_exec) exec_head; + atomic_t draining; }; +#define WQ_EXEC_LOCK(wq) mtx_lock(&(wq)->exec_mtx) +#define WQ_EXEC_UNLOCK(wq) mtx_unlock(&(wq)->exec_mtx) + struct work_struct { - struct task work_task; - struct taskqueue *taskqueue; - void (*fn)(struct work_struct *); + struct task work_task; + struct workqueue_struct *work_queue; + work_func_t func; + atomic_t state; }; -typedef __typeof(((struct work_struct *)0)->fn) work_func_t; +#define DECLARE_WORK(name, fn) \ + struct work_struct name = { .func = (fn) } struct delayed_work { - struct work_struct work; - struct callout timer; + struct work_struct work; + struct { + struct callout callout; + struct mtx mtx; + int expires; + } timer; }; -extern void linux_work_fn(void *, int); -extern void linux_flush_fn(void *, int); -extern void linux_delayed_work_fn(void *); -extern struct workqueue_struct *linux_create_workqueue_common(const char *, int); -extern void destroy_workqueue(struct workqueue_struct *); +#define DECLARE_DELAYED_WORK(name, fn) \ + struct delayed_work name; \ + static void name##_init(void *arg) \ + { \ + linux_init_delayed_work(&name, fn); \ + } \ + SYSINIT(name, SI_SUB_LOCK, SI_ORDER_SECOND, name##_init, NULL) static inline struct delayed_work * to_delayed_work(struct work_struct *work) { - - return container_of(work, struct delayed_work, work); + return (container_of(work, struct delayed_work, work)); } -#define INIT_WORK(work, func) \ +#define INIT_WORK(work, fn) \ do { \ - (work)->fn = (func); \ - (work)->taskqueue = NULL; \ - TASK_INIT(&(work)->work_task, 0, linux_work_fn, (work)); \ + (work)->func = (fn); \ + (work)->work_queue = NULL; \ + atomic_set(&(work)->state, 0); \ + TASK_INIT(&(work)->work_task, 0, linux_work_fn, (work)); \ } while (0) -#define INIT_DELAYED_WORK(_work, func) \ -do { \ - INIT_WORK(&(_work)->work, func); \ - callout_init(&(_work)->timer, 1); \ -} while (0) +#define INIT_WORK_ONSTACK(work, fn) \ + INIT_WORK(work, fn) -#define INIT_DEFERRABLE_WORK(...) INIT_DELAYED_WORK(__VA_ARGS__) +#define INIT_DELAYED_WORK(dwork, fn) \ + linux_init_delayed_work(dwork, fn) -#define schedule_work(work) \ -do { \ - (work)->taskqueue = taskqueue_thread; \ - taskqueue_enqueue(taskqueue_thread, &(work)->work_task); \ -} while (0) +#define INIT_DEFERRABLE_WORK(dwork, fn) \ + INIT_DELAYED_WORK(dwork, fn) -#define flush_scheduled_work() flush_taskqueue(taskqueue_thread) +#define flush_scheduled_work() \ + taskqueue_drain_all(system_wq->taskqueue) -static inline int -queue_work(struct workqueue_struct *wq, struct work_struct *work) -{ - work->taskqueue = wq->taskqueue; - /* Check for draining */ - if (atomic_read(&wq->draining) != 0) - return (!work->work_task.ta_pending); - /* Return opposite value to align with Linux logic */ - return (!taskqueue_enqueue(wq->taskqueue, &work->work_task)); -} +#define queue_work(wq, work) \ + linux_queue_work_on(WORK_CPU_UNBOUND, wq, work) -static inline int -queue_delayed_work(struct workqueue_struct *wq, struct delayed_work *work, - unsigned long delay) -{ - int pending; +#define schedule_work(work) \ + linux_queue_work_on(WORK_CPU_UNBOUND, system_wq, work) - work->work.taskqueue = wq->taskqueue; - if (atomic_read(&wq->draining) != 0) { - pending = work->work.work_task.ta_pending; - } else if (delay != 0) { - pending = work->work.work_task.ta_pending; - callout_reset(&work->timer, delay, linux_delayed_work_fn, work); - } else { - callout_stop(&work->timer); - pending = taskqueue_enqueue(work->work.taskqueue, - &work->work.work_task); - } - return (!pending); -} +#define queue_delayed_work(wq, dwork, delay) \ + linux_queue_delayed_work_on(WORK_CPU_UNBOUND, wq, dwork, delay) -static inline bool -schedule_delayed_work(struct delayed_work *dwork, - unsigned long delay) -{ - struct workqueue_struct wq; +#define schedule_delayed_work_on(cpu, dwork, delay) \ + linux_queue_delayed_work_on(cpu, system_wq, dwork, delay) - wq.taskqueue = taskqueue_thread; - atomic_set(&wq.draining, 0); - return (queue_delayed_work(&wq, dwork, delay)); -} +#define queue_work_on(cpu, wq, work) \ + linux_queue_work_on(cpu, wq, work) -#define create_singlethread_workqueue(name) \ +#define schedule_delayed_work(dwork, delay) \ + linux_queue_delayed_work_on(WORK_CPU_UNBOUND, system_wq, dwork, delay) + +#define queue_delayed_work_on(cpu, wq, dwork, delay) \ + linux_queue_delayed_work_on(cpu, wq, dwork, delay) + +#define create_singlethread_workqueue(name) \ linux_create_workqueue_common(name, 1) -#define create_workqueue(name) \ - linux_create_workqueue_common(name, MAXCPU) +#define create_workqueue(name) \ + linux_create_workqueue_common(name, mp_ncpus) -#define alloc_ordered_workqueue(name, flags) \ +#define alloc_ordered_workqueue(name, flags) \ linux_create_workqueue_common(name, 1) -#define alloc_workqueue(name, flags, max_active) \ +#define alloc_workqueue(name, flags, max_active) \ linux_create_workqueue_common(name, max_active) -#define flush_workqueue(wq) flush_taskqueue((wq)->taskqueue) +#define flush_workqueue(wq) \ + taskqueue_drain_all((wq)->taskqueue) -static inline void -flush_taskqueue(struct taskqueue *tq) -{ - struct task flushtask; +#define drain_workqueue(wq) do { \ + atomic_inc(&(wq)->draining); \ + taskqueue_drain_all((wq)->taskqueue); \ + atomic_dec(&(wq)->draining); \ +} while (0) - PHOLD(curproc); - TASK_INIT(&flushtask, 0, linux_flush_fn, NULL); - taskqueue_enqueue(tq, &flushtask); - taskqueue_drain(tq, &flushtask); - PRELE(curproc); -} +#define mod_delayed_work(wq, dwork, delay) ({ \ + bool __retval; \ + __retval = linux_cancel_delayed_work(dwork); \ + linux_queue_delayed_work_on(WORK_CPU_UNBOUND, \ + wq, dwork, delay); \ + __retval; \ +}) -static inline void -drain_workqueue(struct workqueue_struct *wq) -{ - atomic_inc(&wq->draining); - flush_taskqueue(wq->taskqueue); - atomic_dec(&wq->draining); -} +#define delayed_work_pending(dwork) \ + linux_work_pending(&(dwork)->work) -static inline int -cancel_work_sync(struct work_struct *work) -{ - if (work->taskqueue && - taskqueue_cancel(work->taskqueue, &work->work_task, NULL)) - taskqueue_drain(work->taskqueue, &work->work_task); - return 0; -} +#define cancel_delayed_work(dwork) \ + linux_cancel_delayed_work(dwork) -/* - * This may leave work running on another CPU as it does on Linux. - */ -static inline int -cancel_delayed_work(struct delayed_work *work) -{ +#define cancel_work_sync(work) \ + linux_cancel_work_sync(work) - callout_stop(&work->timer); - if (work->work.taskqueue) - return (taskqueue_cancel(work->work.taskqueue, - &work->work.work_task, NULL) == 0); - return 0; -} +#define cancel_delayed_work_sync(dwork) \ + linux_cancel_delayed_work_sync(dwork) -static inline int -cancel_delayed_work_sync(struct delayed_work *work) -{ +#define flush_work(work) \ + linux_flush_work(work) - callout_drain(&work->timer); - if (work->work.taskqueue && - taskqueue_cancel(work->work.taskqueue, &work->work.work_task, NULL)) - taskqueue_drain(work->work.taskqueue, &work->work.work_task); - return 0; -} +#define flush_delayed_work(dwork) \ + linux_flush_delayed_work(dwork) -static inline bool -mod_delayed_work(struct workqueue_struct *wq, struct delayed_work *dwork, - unsigned long delay) -{ - cancel_delayed_work(dwork); - queue_delayed_work(wq, dwork, delay); - return false; -} +#define work_pending(work) \ + linux_work_pending(work) + +#define work_busy(work) \ + linux_work_busy(work) + +#define destroy_work_on_stack(work) \ + do { } while (0) + +#define destroy_delayed_work_on_stack(dwork) \ + do { } while (0) + +#define destroy_workqueue(wq) \ + linux_destroy_workqueue(wq) + +/* prototypes */ + +extern struct workqueue_struct *system_wq; +extern struct workqueue_struct *system_long_wq; +extern struct workqueue_struct *system_unbound_wq; +extern struct workqueue_struct *system_power_efficient_wq; + +extern void linux_init_delayed_work(struct delayed_work *, work_func_t); +extern void linux_work_fn(void *, int); +extern struct workqueue_struct *linux_create_workqueue_common(const char *, int); +extern void linux_destroy_workqueue(struct workqueue_struct *); +extern bool linux_queue_work_on(int cpu, struct workqueue_struct *, struct work_struct *); +extern bool linux_queue_delayed_work_on(int cpu, struct workqueue_struct *, + struct delayed_work *, unsigned delay); +extern bool linux_cancel_delayed_work(struct delayed_work *); +extern bool linux_cancel_work_sync(struct work_struct *); +extern bool linux_cancel_delayed_work_sync(struct delayed_work *); +extern bool linux_flush_work(struct work_struct *); +extern bool linux_flush_delayed_work(struct delayed_work *); +extern bool linux_work_pending(struct work_struct *); +extern bool linux_work_busy(struct work_struct *); -#endif /* _LINUX_WORKQUEUE_H_ */ +#endif /* _LINUX_WORKQUEUE_H_ */ Modified: head/sys/compat/linuxkpi/common/src/linux_compat.c ============================================================================== --- head/sys/compat/linuxkpi/common/src/linux_compat.c Tue Mar 7 09:18:52 2017 (r314842) +++ head/sys/compat/linuxkpi/common/src/linux_compat.c Tue Mar 7 12:09:14 2017 (r314843) @@ -68,7 +68,6 @@ __FBSDID("$FreeBSD$"); #include #include #include -#include #include #include #include @@ -1164,50 +1163,6 @@ linux_completion_done(struct completion return (isdone); } -void -linux_delayed_work_fn(void *arg) -{ - struct delayed_work *work; - - work = arg; - taskqueue_enqueue(work->work.taskqueue, &work->work.work_task); -} - -void -linux_work_fn(void *context, int pending) -{ - struct work_struct *work; - - work = context; - work->fn(work); -} - -void -linux_flush_fn(void *context, int pending) -{ -} - -struct workqueue_struct * -linux_create_workqueue_common(const char *name, int cpus) -{ - struct workqueue_struct *wq; - - wq = kmalloc(sizeof(*wq), M_WAITOK); - wq->taskqueue = taskqueue_create(name, M_WAITOK, - taskqueue_thread_enqueue, &wq->taskqueue); - atomic_set(&wq->draining, 0); - taskqueue_start_threads(&wq->taskqueue, cpus, PWAIT, "%s", name); - - return (wq); -} - -void -destroy_workqueue(struct workqueue_struct *wq) -{ - taskqueue_free(wq->taskqueue); - kfree(wq); -} - static void linux_cdev_release(struct kobject *kobj) { Added: head/sys/compat/linuxkpi/common/src/linux_work.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/compat/linuxkpi/common/src/linux_work.c Tue Mar 7 12:09:14 2017 (r314843) @@ -0,0 +1,563 @@ +/*- + * Copyright (c) 2017 Hans Petter Selasky + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice unmodified, this list of conditions, and the following + * disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include + +#include + +/* + * Define all work struct states + */ +enum { + WORK_ST_IDLE, /* idle - not started */ + WORK_ST_TIMER, /* timer is being started */ + WORK_ST_TASK, /* taskqueue is being queued */ + WORK_ST_EXEC, /* callback is being called */ + WORK_ST_CANCEL, /* cancel is being requested */ + WORK_ST_MAX, +}; + +/* + * Define global workqueues + */ +static struct workqueue_struct *linux_system_short_wq; +static struct workqueue_struct *linux_system_long_wq; + +struct workqueue_struct *system_wq; +struct workqueue_struct *system_long_wq; +struct workqueue_struct *system_unbound_wq; +struct workqueue_struct *system_power_efficient_wq; + +static void linux_delayed_work_timer_fn(void *); + +/* + * This function atomically updates the work state and returns the + * previous state at the time of update. + */ +static const uint8_t +linux_update_state(atomic_t *v, const uint8_t *pstate) +{ + int c, old; + + c = v->counter; + + while ((old = atomic_cmpxchg(v, c, pstate[c])) != c) + c = old; + + return (c); +} + +/* + * A LinuxKPI task is allowed to free itself inside the callback function + * and cannot safely be referred after the callback function has + * completed. This function gives the linux_work_fn() function a hint, + * that the task is not going away and can have its state checked + * again. Without this extra hint LinuxKPI tasks cannot be serialized + * accross multiple worker threads. + */ +static const bool +linux_work_exec_unblock(struct work_struct *work) +{ + struct workqueue_struct *wq; + struct work_exec *exec; + bool retval = 0; + + wq = work->work_queue; + if (unlikely(wq == NULL)) + goto done; + + WQ_EXEC_LOCK(wq); + TAILQ_FOREACH(exec, &wq->exec_head, entry) { + if (exec->target == work) { + exec->target = NULL; + retval = 1; + break; + } + } + WQ_EXEC_UNLOCK(wq); +done: + return (retval); +} + +static void +linux_delayed_work_enqueue(struct delayed_work *dwork) +{ + struct taskqueue *tq; + + tq = dwork->work.work_queue->taskqueue; + taskqueue_enqueue(tq, &dwork->work.work_task); +} + +/* + * This function queues the given work structure on the given + * workqueue. It returns non-zero if the work was successfully + * [re-]queued. Else the work is already pending for completion. + */ +bool +linux_queue_work_on(int cpu __unused, struct workqueue_struct *wq, + struct work_struct *work) +{ + static const uint8_t states[WORK_ST_MAX] __aligned(8) = { + [WORK_ST_IDLE] = WORK_ST_TASK, /* start queuing task */ + [WORK_ST_TIMER] = WORK_ST_TIMER, /* NOP */ + [WORK_ST_TASK] = WORK_ST_TASK, /* NOP */ + [WORK_ST_EXEC] = WORK_ST_TASK, /* queue task another time */ + [WORK_ST_CANCEL] = WORK_ST_TASK, /* start queuing task again */ + }; + + if (atomic_read(&wq->draining) != 0) + return (!work_pending(work)); + + switch (linux_update_state(&work->state, states)) { + case WORK_ST_EXEC: + case WORK_ST_CANCEL: + if (linux_work_exec_unblock(work) != 0) + return (1); + /* FALLTHROUGH */ + case WORK_ST_IDLE: + work->work_queue = wq; + taskqueue_enqueue(wq->taskqueue, &work->work_task); + return (1); + default: + return (0); /* already on a queue */ + } +} + +/* + * This function queues the given work structure on the given + * workqueue after a given delay in ticks. It returns non-zero if the + * work was successfully [re-]queued. Else the work is already pending + * for completion. + */ +bool +linux_queue_delayed_work_on(int cpu, struct workqueue_struct *wq, + struct delayed_work *dwork, unsigned delay) +{ + static const uint8_t states[WORK_ST_MAX] __aligned(8) = { + [WORK_ST_IDLE] = WORK_ST_TIMER, /* start timeout */ + [WORK_ST_TIMER] = WORK_ST_TIMER, /* NOP */ + [WORK_ST_TASK] = WORK_ST_TASK, /* NOP */ + [WORK_ST_EXEC] = WORK_ST_TIMER, /* start timeout */ + [WORK_ST_CANCEL] = WORK_ST_TIMER, /* start timeout */ + }; + + if (atomic_read(&wq->draining) != 0) + return (!work_pending(&dwork->work)); + + switch (linux_update_state(&dwork->work.state, states)) { + case WORK_ST_EXEC: + case WORK_ST_CANCEL: + if (delay == 0 && linux_work_exec_unblock(&dwork->work) != 0) { + dwork->timer.expires = jiffies; + return (1); + } + /* FALLTHROUGH */ + case WORK_ST_IDLE: + dwork->work.work_queue = wq; + dwork->timer.expires = jiffies + delay; + + if (delay == 0) { + linux_delayed_work_enqueue(dwork); + } else if (unlikely(cpu != WORK_CPU_UNBOUND)) { + mtx_lock(&dwork->timer.mtx); + callout_reset_on(&dwork->timer.callout, delay, + &linux_delayed_work_timer_fn, dwork, cpu); + mtx_unlock(&dwork->timer.mtx); + } else { + mtx_lock(&dwork->timer.mtx); + callout_reset(&dwork->timer.callout, delay, + &linux_delayed_work_timer_fn, dwork); + mtx_unlock(&dwork->timer.mtx); + } + return (1); + default: + return (0); /* already on a queue */ + } +} + +void +linux_work_fn(void *context, int pending) +{ + static const uint8_t states[WORK_ST_MAX] __aligned(8) = { + [WORK_ST_IDLE] = WORK_ST_IDLE, /* NOP */ + [WORK_ST_TIMER] = WORK_ST_EXEC, /* delayed work w/o timeout */ + [WORK_ST_TASK] = WORK_ST_EXEC, /* call callback */ + [WORK_ST_EXEC] = WORK_ST_IDLE, /* complete callback */ + [WORK_ST_CANCEL] = WORK_ST_IDLE, /* complete cancel */ + }; + struct work_struct *work; + struct workqueue_struct *wq; + struct work_exec exec; + + linux_set_current(curthread); + + /* setup local variables */ + work = context; + wq = work->work_queue; + + /* store target pointer */ + exec.target = work; + + /* insert executor into list */ + WQ_EXEC_LOCK(wq); + TAILQ_INSERT_TAIL(&wq->exec_head, &exec, entry); + while (1) { + switch (linux_update_state(&work->state, states)) { + case WORK_ST_TIMER: + case WORK_ST_TASK: + WQ_EXEC_UNLOCK(wq); + + /* call work function */ + work->func(work); + + WQ_EXEC_LOCK(wq); + /* check if unblocked */ + if (exec.target != work) { + /* reapply block */ + exec.target = work; + break; + } + /* FALLTHROUGH */ + default: + goto done; + } + } +done: + /* remove executor from list */ + TAILQ_REMOVE(&wq->exec_head, &exec, entry); + WQ_EXEC_UNLOCK(wq); +} + +static void +linux_delayed_work_timer_fn(void *arg) +{ + static const uint8_t states[WORK_ST_MAX] __aligned(8) = { + [WORK_ST_IDLE] = WORK_ST_IDLE, /* NOP */ + [WORK_ST_TIMER] = WORK_ST_TASK, /* start queueing task */ + [WORK_ST_TASK] = WORK_ST_TASK, /* NOP */ + [WORK_ST_EXEC] = WORK_ST_TASK, /* queue task another time */ + [WORK_ST_CANCEL] = WORK_ST_IDLE, /* complete cancel */ + }; + struct delayed_work *dwork = arg; + + switch (linux_update_state(&dwork->work.state, states)) { + case WORK_ST_TIMER: + linux_delayed_work_enqueue(dwork); + break; + default: + break; + } +} + +/* + * This function cancels the given work structure in a synchronous + * fashion. It returns non-zero if the work was successfully + * cancelled. Else the work was already cancelled. + */ +bool +linux_cancel_work_sync(struct work_struct *work) +{ + static const uint8_t states[WORK_ST_MAX] __aligned(8) = { + [WORK_ST_IDLE] = WORK_ST_IDLE, /* NOP */ + [WORK_ST_TIMER] = WORK_ST_IDLE, /* idle */ + [WORK_ST_TASK] = WORK_ST_IDLE, /* idle */ + [WORK_ST_EXEC] = WORK_ST_IDLE, /* idle */ + [WORK_ST_CANCEL] = WORK_ST_IDLE, /* idle */ + }; + struct taskqueue *tq; + + WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, + "linux_cancel_work_sync() might sleep"); + + switch (linux_update_state(&work->state, states)) { + case WORK_ST_IDLE: + return (0); + default: + tq = work->work_queue->taskqueue; + if (taskqueue_cancel(tq, &work->work_task, NULL) != 0) + taskqueue_drain(tq, &work->work_task); + return (1); + } +} + +/* + * This function atomically stops the timer and callback. The timer + * callback will not be called after this function returns. This + * functions returns true when the timeout was cancelled. Else the + * timeout was not started or has already been called. + */ +static inline bool +linux_cancel_timer(struct delayed_work *dwork, bool drain) +{ + bool cancelled; + + mtx_lock(&dwork->timer.mtx); + cancelled = (callout_stop(&dwork->timer.callout) == 1); + mtx_unlock(&dwork->timer.mtx); + + /* check if we should drain */ + if (drain) + callout_drain(&dwork->timer.callout); + return (cancelled); +} + +/* + * This function cancels the given delayed work structure in a + * non-blocking fashion. It returns non-zero if the work was + * successfully cancelled. Else the work may still be busy or already + * cancelled. + */ +bool +linux_cancel_delayed_work(struct delayed_work *dwork) +{ + static const uint8_t states[WORK_ST_MAX] __aligned(8) = { + [WORK_ST_IDLE] = WORK_ST_IDLE, /* NOP */ + [WORK_ST_TIMER] = WORK_ST_CANCEL, /* cancel */ + [WORK_ST_TASK] = WORK_ST_CANCEL, /* cancel */ + [WORK_ST_EXEC] = WORK_ST_CANCEL, /* cancel */ + [WORK_ST_CANCEL] = WORK_ST_CANCEL, /* cancel */ + }; + struct taskqueue *tq; + + switch (linux_update_state(&dwork->work.state, states)) { + case WORK_ST_TIMER: + if (linux_cancel_timer(dwork, 0)) + return (1); + /* FALLTHROUGH */ + case WORK_ST_TASK: + case WORK_ST_EXEC: + tq = dwork->work.work_queue->taskqueue; + if (taskqueue_cancel(tq, &dwork->work.work_task, NULL) == 0) + return (1); + /* FALLTHROUGH */ + default: + return (0); + } +} + +/* + * This function cancels the given work structure in a synchronous + * fashion. It returns non-zero if the work was successfully + * cancelled. Else the work was already cancelled. + */ +bool +linux_cancel_delayed_work_sync(struct delayed_work *dwork) +{ + static const uint8_t states[WORK_ST_MAX] __aligned(8) = { + [WORK_ST_IDLE] = WORK_ST_IDLE, /* NOP */ + [WORK_ST_TIMER] = WORK_ST_IDLE, /* idle */ + [WORK_ST_TASK] = WORK_ST_IDLE, /* idle */ + [WORK_ST_EXEC] = WORK_ST_IDLE, /* idle */ + [WORK_ST_CANCEL] = WORK_ST_IDLE, /* idle */ + }; + struct taskqueue *tq; + + WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, + "linux_cancel_delayed_work_sync() might sleep"); + + switch (linux_update_state(&dwork->work.state, states)) { + case WORK_ST_IDLE: + return (0); + case WORK_ST_TIMER: + if (linux_cancel_timer(dwork, 1)) { + /* + * Make sure taskqueue is also drained before + * returning: + */ + tq = dwork->work.work_queue->taskqueue; + taskqueue_drain(tq, &dwork->work.work_task); + return (1); + } + /* FALLTHROUGH */ + default: + tq = dwork->work.work_queue->taskqueue; + if (taskqueue_cancel(tq, &dwork->work.work_task, NULL) != 0) + taskqueue_drain(tq, &dwork->work.work_task); + return (1); + } +} + +/* + * This function waits until the given work structure is completed. + * It returns non-zero if the work was successfully + * waited for. Else the work was not waited for. + */ +bool +linux_flush_work(struct work_struct *work) +{ + struct taskqueue *tq; + + WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, + "linux_flush_work() might sleep"); + + switch (atomic_read(&work->state)) { + case WORK_ST_IDLE: + return (0); + default: + tq = work->work_queue->taskqueue; + taskqueue_drain(tq, &work->work_task); + return (1); + } +} + +/* + * This function waits until the given delayed work structure is + * completed. It returns non-zero if the work was successfully waited + * for. Else the work was not waited for. + */ +bool +linux_flush_delayed_work(struct delayed_work *dwork) +{ + struct taskqueue *tq; + + WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, + "linux_flush_delayed_work() might sleep"); + + switch (atomic_read(&dwork->work.state)) { + case WORK_ST_IDLE: + return (0); + case WORK_ST_TIMER: + if (linux_cancel_timer(dwork, 1)) + linux_delayed_work_enqueue(dwork); + /* FALLTHROUGH */ + default: + tq = dwork->work.work_queue->taskqueue; + taskqueue_drain(tq, &dwork->work.work_task); + return (1); + } +} + +/* + * This function returns true if the given work is pending, and not + * yet executing: + */ +bool +linux_work_pending(struct work_struct *work) +{ + switch (atomic_read(&work->state)) { + case WORK_ST_TIMER: + case WORK_ST_TASK: + return (1); + default: + return (0); + } +} + +/* + * This function returns true if the given work is busy. + */ +bool +linux_work_busy(struct work_struct *work) +{ + struct taskqueue *tq; + + switch (atomic_read(&work->state)) { + case WORK_ST_IDLE: + return (0); + case WORK_ST_EXEC: + case WORK_ST_CANCEL: + tq = work->work_queue->taskqueue; + return (taskqueue_poll_is_busy(tq, &work->work_task)); + default: + return (1); + } +} + +struct workqueue_struct * +linux_create_workqueue_common(const char *name, int cpus) +{ + struct workqueue_struct *wq; + + wq = kmalloc(sizeof(*wq), M_WAITOK | M_ZERO); + wq->taskqueue = taskqueue_create(name, M_WAITOK, + taskqueue_thread_enqueue, &wq->taskqueue); + atomic_set(&wq->draining, 0); + taskqueue_start_threads(&wq->taskqueue, cpus, PWAIT, "%s", name); + TAILQ_INIT(&wq->exec_head); + mtx_init(&wq->exec_mtx, "linux_wq_exec", NULL, MTX_DEF); + + return (wq); +} + +void +linux_destroy_workqueue(struct workqueue_struct *wq) +{ + atomic_inc(&wq->draining); + drain_workqueue(wq); + taskqueue_free(wq->taskqueue); + mtx_destroy(&wq->exec_mtx); + kfree(wq); +} + +void +linux_init_delayed_work(struct delayed_work *dwork, work_func_t func) +{ + memset(dwork, 0, sizeof(*dwork)); + INIT_WORK(&dwork->work, func); + mtx_init(&dwork->timer.mtx, spin_lock_name("lkpi-dwork"), NULL, + MTX_DEF | MTX_NOWITNESS); + callout_init_mtx(&dwork->timer.callout, &dwork->timer.mtx, 0); +} + +static void +linux_work_init(void *arg) +{ + int max_wq_cpus = mp_ncpus + 1; + + /* avoid deadlock when there are too few threads */ + if (max_wq_cpus < 4) + max_wq_cpus = 4; + + linux_system_short_wq = alloc_workqueue("linuxkpi_short_wq", 0, max_wq_cpus); + linux_system_long_wq = alloc_workqueue("linuxkpi_long_wq", 0, max_wq_cpus); + + /* populate the workqueue pointers */ + system_long_wq = linux_system_long_wq; + system_wq = linux_system_short_wq; + system_power_efficient_wq = linux_system_short_wq; + system_unbound_wq = linux_system_short_wq; +} +SYSINIT(linux_work_init, SI_SUB_LOCK, SI_ORDER_SECOND, linux_work_init, NULL); + +static void +linux_work_uninit(void *arg) +{ + destroy_workqueue(linux_system_short_wq); + destroy_workqueue(linux_system_long_wq); + + /* clear workqueue pointers */ + system_long_wq = NULL; + system_wq = NULL; + system_power_efficient_wq = NULL; + system_unbound_wq = NULL; +} +SYSUNINIT(linux_work_uninit, SI_SUB_LOCK, SI_ORDER_SECOND, linux_work_uninit, NULL); Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Tue Mar 7 09:18:52 2017 (r314842) +++ head/sys/conf/files Tue Mar 7 12:09:14 2017 (r314843) @@ -4298,6 +4298,8 @@ compat/linuxkpi/common/src/linux_rcu.c compile-with "${LINUXKPI_C} -I$S/contrib/ck/include" compat/linuxkpi/common/src/linux_usb.c optional compat_linuxkpi usb \ compile-with "${LINUXKPI_C}" +compat/linuxkpi/common/src/linux_work.c optional compat_linuxkpi \ + compile-with "${LINUXKPI_C}" # OpenFabrics Enterprise Distribution (Infiniband) ofed/drivers/infiniband/core/addr.c optional ofed \ Modified: head/sys/modules/linuxkpi/Makefile ============================================================================== --- head/sys/modules/linuxkpi/Makefile Tue Mar 7 09:18:52 2017 (r314842) +++ head/sys/modules/linuxkpi/Makefile Tue Mar 7 12:09:14 2017 (r314843) @@ -12,7 +12,8 @@ SRCS= linux_kmod.c \ linux_rcu.c \ linux_tasklet.c \ linux_idr.c \ - linux_usb.c + linux_usb.c \ + linux_work.c SRCS+= bus_if.h \ device_if.h \ From owner-svn-src-all@freebsd.org Tue Mar 7 12:16:48 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 91F0BD00C06; Tue, 7 Mar 2017 12:16:48 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5E84A1010; Tue, 7 Mar 2017 12:16:48 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27CGlxD035942; Tue, 7 Mar 2017 12:16:47 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27CGlDl035940; Tue, 7 Mar 2017 12:16:47 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201703071216.v27CGlDl035940@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Tue, 7 Mar 2017 12:16:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314844 - in stable/11/sys: amd64/amd64 i386/i386 X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 12:16:48 -0000 Author: kib Date: Tue Mar 7 12:16:47 2017 New Revision: 314844 URL: https://svnweb.freebsd.org/changeset/base/314844 Log: MFC r314429: Initialize pcb_save for thread0. Modified: stable/11/sys/amd64/amd64/machdep.c stable/11/sys/i386/i386/machdep.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/amd64/amd64/machdep.c ============================================================================== --- stable/11/sys/amd64/amd64/machdep.c Tue Mar 7 12:09:14 2017 (r314843) +++ stable/11/sys/amd64/amd64/machdep.c Tue Mar 7 12:16:47 2017 (r314844) @@ -1734,6 +1734,7 @@ hammer_time(u_int64_t modulep, u_int64_t * area. */ thread0.td_pcb = get_pcb_td(&thread0); + thread0.td_pcb->pcb_save = get_pcb_user_save_td(&thread0); bzero(get_pcb_user_save_td(&thread0), cpu_max_ext_state_size); if (use_xsave) { xhdr = (struct xstate_hdr *)(get_pcb_user_save_td(&thread0) + Modified: stable/11/sys/i386/i386/machdep.c ============================================================================== --- stable/11/sys/i386/i386/machdep.c Tue Mar 7 12:09:14 2017 (r314843) +++ stable/11/sys/i386/i386/machdep.c Tue Mar 7 12:16:47 2017 (r314844) @@ -2709,6 +2709,7 @@ init386(int first) * area. */ thread0.td_pcb = get_pcb_td(&thread0); + thread0.td_pcb->pcb_save = get_pcb_user_save_td(&thread0); bzero(get_pcb_user_save_td(&thread0), cpu_max_ext_state_size); if (use_xsave) { xhdr = (struct xstate_hdr *)(get_pcb_user_save_td(&thread0) + From owner-svn-src-all@freebsd.org Tue Mar 7 12:24:03 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7C37DCFB1E6; Tue, 7 Mar 2017 12:24:03 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4B3FA17F0; Tue, 7 Mar 2017 12:24:03 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27CO2xA040524; Tue, 7 Mar 2017 12:24:02 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27CO21M040522; Tue, 7 Mar 2017 12:24:02 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201703071224.v27CO21M040522@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Tue, 7 Mar 2017 12:24:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314845 - in stable/10/sys: amd64/amd64 i386/i386 X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 12:24:03 -0000 Author: kib Date: Tue Mar 7 12:24:02 2017 New Revision: 314845 URL: https://svnweb.freebsd.org/changeset/base/314845 Log: MFC r314429: Initialize pcb_save for thread0. Modified: stable/10/sys/amd64/amd64/machdep.c stable/10/sys/i386/i386/machdep.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/amd64/amd64/machdep.c ============================================================================== --- stable/10/sys/amd64/amd64/machdep.c Tue Mar 7 12:16:47 2017 (r314844) +++ stable/10/sys/amd64/amd64/machdep.c Tue Mar 7 12:24:02 2017 (r314845) @@ -2023,6 +2023,7 @@ hammer_time(u_int64_t modulep, u_int64_t * area. */ thread0.td_pcb = get_pcb_td(&thread0); + thread0.td_pcb->pcb_save = get_pcb_user_save_td(&thread0); bzero(get_pcb_user_save_td(&thread0), cpu_max_ext_state_size); if (use_xsave) { xhdr = (struct xstate_hdr *)(get_pcb_user_save_td(&thread0) + Modified: stable/10/sys/i386/i386/machdep.c ============================================================================== --- stable/10/sys/i386/i386/machdep.c Tue Mar 7 12:16:47 2017 (r314844) +++ stable/10/sys/i386/i386/machdep.c Tue Mar 7 12:24:02 2017 (r314845) @@ -3420,6 +3420,7 @@ init386(int first) * area. */ thread0.td_pcb = get_pcb_td(&thread0); + thread0.td_pcb->pcb_save = get_pcb_user_save_td(&thread0); bzero(get_pcb_user_save_td(&thread0), cpu_max_ext_state_size); #ifdef CPU_ENABLE_SSE if (use_xsave) { From owner-svn-src-all@freebsd.org Tue Mar 7 12:39:43 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 769FBCFB9AF; Tue, 7 Mar 2017 12:39:43 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 235331312; Tue, 7 Mar 2017 12:39:43 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27Cdgd7044984; Tue, 7 Mar 2017 12:39:42 GMT (envelope-from manu@FreeBSD.org) Received: (from manu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27CdgLX044983; Tue, 7 Mar 2017 12:39:42 GMT (envelope-from manu@FreeBSD.org) Message-Id: <201703071239.v27CdgLX044983@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: manu set sender to manu@FreeBSD.org using -f From: Emmanuel Vadot Date: Tue, 7 Mar 2017 12:39:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-svnadmin@freebsd.org Subject: svn commit: r314846 - svnadmin/conf X-SVN-Group: svnadmin MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 12:39:43 -0000 Author: manu Date: Tue Mar 7 12:39:41 2017 New Revision: 314846 URL: https://svnweb.freebsd.org/changeset/base/314846 Log: Add myself for DTS import Modified: svnadmin/conf/sizelimit.conf Modified: svnadmin/conf/sizelimit.conf ============================================================================== --- svnadmin/conf/sizelimit.conf Tue Mar 7 12:24:02 2017 (r314845) +++ svnadmin/conf/sizelimit.conf Tue Mar 7 12:39:41 2017 (r314846) @@ -22,6 +22,7 @@ dim imp jb jeff +manu mm np obrien From owner-svn-src-all@freebsd.org Tue Mar 7 12:41:12 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 27EFCCFBBA6; Tue, 7 Mar 2017 12:41:12 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4564D15CE; Tue, 7 Mar 2017 12:41:11 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27CfAPV047205; Tue, 7 Mar 2017 12:41:10 GMT (envelope-from manu@FreeBSD.org) Received: (from manu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27Cf8P3047184; Tue, 7 Mar 2017 12:41:08 GMT (envelope-from manu@FreeBSD.org) Message-Id: <201703071241.v27Cf8P3047184@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: manu set sender to manu@FreeBSD.org using -f From: Emmanuel Vadot Date: Tue, 7 Mar 2017 12:41:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r314847 - in vendor/device-tree/dist: Bindings Bindings/arm Bindings/arm/altera Bindings/arm/bcm Bindings/arm/hisilicon Bindings/arm/keystone Bindings/arm/marvell Bindings/arm/mediatek ... X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 12:41:12 -0000 Author: manu Date: Tue Mar 7 12:41:06 2017 New Revision: 314847 URL: https://svnweb.freebsd.org/changeset/base/314847 Log: Update to Linux 4.10 Added: vendor/device-tree/dist/Bindings/arm/amlogic,scpi.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/bcm/brcm,bcm23550-cpu-method.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/bcm/brcm,bcm23550.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/bcm/brcm,ns2.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/cpu-capacity.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/hisilicon/hi3519-sysctrl.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/juno,scpi.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/keystone/ti,sci.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/marvell/marvell,orion5x.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,bdpsys.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,ethsys.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,hifsys.txt (contents, props changed) vendor/device-tree/dist/Bindings/arm/swir.txt (contents, props changed) vendor/device-tree/dist/Bindings/ata/brcm,sata-brcm.txt (contents, props changed) vendor/device-tree/dist/Bindings/auxdisplay/ vendor/device-tree/dist/Bindings/auxdisplay/img-ascii-lcd.txt (contents, props changed) vendor/device-tree/dist/Bindings/bus/nvidia,tegra20-gmi.txt (contents, props changed) vendor/device-tree/dist/Bindings/bus/nvidia,tegra210-aconnect.txt (contents, props changed) vendor/device-tree/dist/Bindings/bus/qcom,ebi2.txt (contents, props changed) vendor/device-tree/dist/Bindings/bus/ti,da850-mstpri.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/amlogic,gxbb-aoclkc.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/amlogic,gxbb-clkc.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/armada3700-periph-clock.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/armada3700-tbg-clock.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/armada3700-xtal-clock.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/brcm,bcm53573-ilp.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/hisi-crg.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/qcom,rpmcc.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/rockchip,rk1108-cru.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/sunxi-ccu.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/uniphier-clock.txt (contents, props changed) vendor/device-tree/dist/Bindings/clock/zx296718-clk.txt (contents, props changed) vendor/device-tree/dist/Bindings/cpufreq/brcm,stb-avs-cpu-freq.txt (contents, props changed) vendor/device-tree/dist/Bindings/devfreq/event/rockchip-dfi.txt (contents, props changed) vendor/device-tree/dist/Bindings/devfreq/rk3399_dmc.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/amlogic,meson-vpu.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/arm,malidp.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/bridge/dumb-vga-dac.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/bridge/sii902x.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/bridge/ti,tfp410.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/bridge/toshiba,tc358767.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/ht16k33.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/mediatek/mediatek,hdmi.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/msm/mdp4.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/msm/mdp5.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/auo,g133han01.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/auo,g185han01.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/auo,t215hvn01.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/chunghwa,claa070wp03xg.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/innolux,g101ice-l01.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/jdi,lt070me05000.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/lg,lp079qx1-sp0v.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/lg,lp097qx1-spa1.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/nvd,9128.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/samsung,lsn122dl01-c01.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/sharp,lq101k1ly04.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/sharp,lq123p1jx31.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/sharp,lq150x1lg11.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/starry,kr122ea0sra.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/panel/tpo,tpg110.txt (contents, props changed) vendor/device-tree/dist/Bindings/display/zte,vou.txt (contents, props changed) vendor/device-tree/dist/Bindings/dma/mv-xor-v2.txt (contents, props changed) vendor/device-tree/dist/Bindings/dma/st_fdma.txt (contents, props changed) vendor/device-tree/dist/Bindings/dma/xilinx/zynqmp_dma.txt (contents, props changed) vendor/device-tree/dist/Bindings/extcon/qcom,pm8941-misc.txt (contents, props changed) vendor/device-tree/dist/Bindings/firmware/ vendor/device-tree/dist/Bindings/firmware/meson/ vendor/device-tree/dist/Bindings/firmware/meson/meson_sm.txt (contents, props changed) vendor/device-tree/dist/Bindings/firmware/nvidia,tegra186-bpmp.txt (contents, props changed) vendor/device-tree/dist/Bindings/firmware/qcom,scm.txt (contents, props changed) vendor/device-tree/dist/Bindings/fpga/altera-fpga2sdram-bridge.txt (contents, props changed) vendor/device-tree/dist/Bindings/fpga/altera-freeze-bridge.txt (contents, props changed) vendor/device-tree/dist/Bindings/fpga/altera-hps2fpga-bridge.txt (contents, props changed) vendor/device-tree/dist/Bindings/fpga/altera-socfpga-a10-fpga-mgr.txt (contents, props changed) vendor/device-tree/dist/Bindings/fpga/fpga-region.txt (contents, props changed) vendor/device-tree/dist/Bindings/gpio/brcm,bcm6345-gpio.txt (contents, props changed) vendor/device-tree/dist/Bindings/gpio/gpio-aspeed.txt (contents, props changed) vendor/device-tree/dist/Bindings/gpio/gpio-axp209.txt (contents, props changed) vendor/device-tree/dist/Bindings/gpio/gpio-max77620.txt (contents, props changed) vendor/device-tree/dist/Bindings/gpio/gpio-tpic2810.txt (contents, props changed) vendor/device-tree/dist/Bindings/gpio/gpio-ts4900.txt (contents, props changed) vendor/device-tree/dist/Bindings/gpio/gpio_oxnas.txt (contents, props changed) vendor/device-tree/dist/Bindings/hwmon/apm-xgene-hwmon.txt (contents, props changed) vendor/device-tree/dist/Bindings/hwmon/jc42.txt (contents, props changed) vendor/device-tree/dist/Bindings/hwmon/ltc4151.txt (contents, props changed) vendor/device-tree/dist/Bindings/hwmon/max6650.txt (contents, props changed) vendor/device-tree/dist/Bindings/hwmon/mcp3021.txt (contents, props changed) vendor/device-tree/dist/Bindings/hwmon/tmp108.txt (contents, props changed) vendor/device-tree/dist/Bindings/i2c/i2c-arb.txt (contents, props changed) vendor/device-tree/dist/Bindings/i2c/i2c-gate.txt (contents, props changed) vendor/device-tree/dist/Bindings/i2c/i2c-imx-lpi2c.txt (contents, props changed) vendor/device-tree/dist/Bindings/i2c/nxp,pca9541.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/accel/dmard06.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/accel/kionix,kxsd9.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/adc/brcm,iproc-static-adc.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/adc/envelope-detector.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/adc/max1363.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/adc/mt6577_auxadc.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/adc/st,stm32-adc.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/adc/ti-adc12138.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/adc/ti-adc161s626.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/chemical/atlas,ec-sm.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/chemical/atlas,orp-sm.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/dac/ad5755.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/dac/dpot-dac.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/dac/mcp4725.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/gyroscope/ vendor/device-tree/dist/Bindings/iio/gyroscope/invensense,mpu3050.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/humidity/hts221.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/light/isl29018.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/light/tsl2583.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/magnetometer/ak8974.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/potentiostat/ vendor/device-tree/dist/Bindings/iio/potentiostat/lmp91000.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/pressure/zpa2326.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/proximity/sx9500.txt (contents, props changed) vendor/device-tree/dist/Bindings/iio/temperature/maxim_thermocouple.txt (contents, props changed) vendor/device-tree/dist/Bindings/infiniband/ vendor/device-tree/dist/Bindings/infiniband/hisilicon-hns-roce.txt (contents, props changed) vendor/device-tree/dist/Bindings/input/adc-keys.txt (contents, props changed) vendor/device-tree/dist/Bindings/input/atmel,captouch.txt (contents, props changed) vendor/device-tree/dist/Bindings/input/gpio-decoder.txt (contents, props changed) vendor/device-tree/dist/Bindings/input/raydium_i2c_ts.txt (contents, props changed) vendor/device-tree/dist/Bindings/input/touchscreen/ektf2127.txt (contents, props changed) vendor/device-tree/dist/Bindings/input/touchscreen/melfas_mip4.txt (contents, props changed) vendor/device-tree/dist/Bindings/input/touchscreen/silead_gsl1680.txt (contents, props changed) vendor/device-tree/dist/Bindings/input/touchscreen/sis_i2c.txt (contents, props changed) vendor/device-tree/dist/Bindings/interrupt-controller/aspeed,ast2400-vic.txt (contents, props changed) vendor/device-tree/dist/Bindings/interrupt-controller/jcore,aic.txt (contents, props changed) vendor/device-tree/dist/Bindings/interrupt-controller/marvell,armada-8k-pic.txt (contents, props changed) vendor/device-tree/dist/Bindings/interrupt-controller/st,stm32-exti.txt (contents, props changed) vendor/device-tree/dist/Bindings/iommu/msm,iommu-v0.txt (contents, props changed) vendor/device-tree/dist/Bindings/ipmi/ vendor/device-tree/dist/Bindings/ipmi/aspeed,ast2400-ibt-bmc.txt (contents, props changed) vendor/device-tree/dist/Bindings/ipmi/ipmi-smic.txt (contents, props changed) vendor/device-tree/dist/Bindings/leds/leds-is31fl319x.txt (contents, props changed) vendor/device-tree/dist/Bindings/leds/leds-pca9532.txt (contents, props changed) vendor/device-tree/dist/Bindings/leds/leds-pm8058.txt (contents, props changed) vendor/device-tree/dist/Bindings/mailbox/brcm,iproc-pdc-mbox.txt (contents, props changed) vendor/device-tree/dist/Bindings/mailbox/meson-mhu.txt (contents, props changed) vendor/device-tree/dist/Bindings/mailbox/nvidia,tegra186-hsp.txt (contents, props changed) vendor/device-tree/dist/Bindings/media/atmel-isc.txt (contents, props changed) vendor/device-tree/dist/Bindings/media/i2c/ad5820.txt (contents, props changed) vendor/device-tree/dist/Bindings/media/mediatek-mdp.txt (contents, props changed) vendor/device-tree/dist/Bindings/media/mediatek-vcodec.txt (contents, props changed) vendor/device-tree/dist/Bindings/media/mediatek-vpu.txt (contents, props changed) vendor/device-tree/dist/Bindings/media/nokia,n900-ir vendor/device-tree/dist/Bindings/media/renesas,fcp.txt (contents, props changed) vendor/device-tree/dist/Bindings/media/renesas,fdp1.txt (contents, props changed) vendor/device-tree/dist/Bindings/media/s5p-cec.txt (contents, props changed) vendor/device-tree/dist/Bindings/media/st,st-hva.txt (contents, props changed) vendor/device-tree/dist/Bindings/media/stih-cec.txt (contents, props changed) vendor/device-tree/dist/Bindings/memory-controllers/atmel,ebi.txt (contents, props changed) vendor/device-tree/dist/Bindings/memory-controllers/fsl/ddr.txt (contents, props changed) vendor/device-tree/dist/Bindings/memory-controllers/ti-da8xx-ddrctl.txt (contents, props changed) vendor/device-tree/dist/Bindings/mfd/ac100.txt (contents, props changed) vendor/device-tree/dist/Bindings/mfd/altera-a10sr.txt (contents, props changed) vendor/device-tree/dist/Bindings/mfd/aspeed-scu.txt (contents, props changed) vendor/device-tree/dist/Bindings/mfd/lp873x.txt (contents, props changed) vendor/device-tree/dist/Bindings/mfd/samsung,exynos5433-lpass.txt (contents, props changed) vendor/device-tree/dist/Bindings/mmc/amlogic,meson-gx.txt (contents, props changed) vendor/device-tree/dist/Bindings/mmc/brcm,sdhci-brcmstb.txt (contents, props changed) vendor/device-tree/dist/Bindings/mmc/sdhci-cadence.txt (contents, props changed) vendor/device-tree/dist/Bindings/mmc/sdhci.txt (contents, props changed) vendor/device-tree/dist/Bindings/mtd/atmel-quadspi.txt (contents, props changed) vendor/device-tree/dist/Bindings/mtd/cadence-quadspi.txt (contents, props changed) vendor/device-tree/dist/Bindings/mtd/hisilicon,fmc-spi-nor.txt (contents, props changed) vendor/device-tree/dist/Bindings/mtd/mtk-nand.txt (contents, props changed) vendor/device-tree/dist/Bindings/mtd/oxnas-nand.txt (contents, props changed) vendor/device-tree/dist/Bindings/mtd/samsung-s3c2410.txt (contents, props changed) vendor/device-tree/dist/Bindings/mtd/tango-nand.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/apm-xgene-mdio.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/brcm,amac.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/brcm,bgmac-nsp.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/brcm,mdio-mux-iproc.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/can/rcar_canfd.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/cirrus,cs89x0.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/dsa/b53.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/dsa/qca8k.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/hisilicon-femac-mdio.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/hisilicon-femac.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/mscc-phy-vsc8531.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/oxnas-dwmac.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/qcom-emac.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/stm32-dwmac.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/wireless/esp,esp8089.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/wireless/marvell-8xxx.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/wireless/qca,ath9k.txt (contents, props changed) vendor/device-tree/dist/Bindings/net/xilinx_gmii2rgmii.txt (contents, props changed) vendor/device-tree/dist/Bindings/nvmem/amlogic-efuse.txt (contents, props changed) vendor/device-tree/dist/Bindings/nvmem/brcm,ocotp.txt (contents, props changed) vendor/device-tree/dist/Bindings/nvmem/lpc1850-otp.txt (contents, props changed) vendor/device-tree/dist/Bindings/pci/aardvark-pci.txt (contents, props changed) vendor/device-tree/dist/Bindings/pci/axis,artpec6-pcie.txt (contents, props changed) vendor/device-tree/dist/Bindings/pci/pci-iommu.txt (contents, props changed) vendor/device-tree/dist/Bindings/pci/rockchip-pcie.txt (contents, props changed) vendor/device-tree/dist/Bindings/perf/ vendor/device-tree/dist/Bindings/perf/apm-xgene-pmu.txt (contents, props changed) vendor/device-tree/dist/Bindings/phy/bcm-ns-usb3-phy.txt (contents, props changed) vendor/device-tree/dist/Bindings/phy/brcm,mdio-mux-bus-pci.txt (contents, props changed) vendor/device-tree/dist/Bindings/phy/meson8b-usb2-phy.txt (contents, props changed) vendor/device-tree/dist/Bindings/phy/phy-da8xx-usb.txt (contents, props changed) vendor/device-tree/dist/Bindings/phy/phy-rockchip-inno-usb2.txt (contents, props changed) vendor/device-tree/dist/Bindings/phy/phy-rockchip-typec.txt (contents, props changed) vendor/device-tree/dist/Bindings/phy/rockchip-pcie-phy.txt (contents, props changed) vendor/device-tree/dist/Bindings/pinctrl/brcm,nsp-pinmux.txt (contents, props changed) vendor/device-tree/dist/Bindings/pinctrl/nvidia,tegra124-dpaux-padctl.txt (contents, props changed) vendor/device-tree/dist/Bindings/pinctrl/oxnas,pinctrl.txt (contents, props changed) vendor/device-tree/dist/Bindings/pinctrl/pinctrl-aspeed.txt (contents, props changed) vendor/device-tree/dist/Bindings/pinctrl/pinctrl-max77620.txt (contents, props changed) vendor/device-tree/dist/Bindings/pinctrl/pinctrl-sx150x.txt (contents, props changed) vendor/device-tree/dist/Bindings/pinctrl/qcom,mdm9615-pinctrl.txt (contents, props changed) vendor/device-tree/dist/Bindings/pinctrl/qcom,msm8994-pinctrl.txt (contents, props changed) vendor/device-tree/dist/Bindings/pinctrl/ti,da850-pupd.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/domain-idle-state.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/max8903-charger.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/renesas,apmu.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/reset/axxia-reset.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/reset/brcm,bcm21664-resetmgr.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/reset/imx-snvs-poweroff.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/reset/msm-poweroff.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/reset/qnap-poweroff.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/reset/reboot-mode.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/reset/restart-poweroff.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/reset/syscon-reboot-mode.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/ vendor/device-tree/dist/Bindings/power/supply/ab8500/ vendor/device-tree/dist/Bindings/power/supply/ab8500/btemp.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/ab8500/chargalg.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/ab8500/charger.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/ab8500/fg.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/act8945a-charger.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/axp20x_usb_power.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/bq2415x.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/bq24257.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/bq25890.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/charger-manager.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/da9150-charger.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/da9150-fg.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/gpio-charger.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/isp1704.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/lp8727_charger.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/ltc2941.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/max17042_battery.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/max8925_batter.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/olpc_battery.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/power_supply.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/qcom,coincell-charger.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/qcom_smbb.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/rt9455_charger.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/rx51-battery.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/sbs_sbs-battery.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/ti,bq24735.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/tps65090.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/tps65217_charger.txt (contents, props changed) vendor/device-tree/dist/Bindings/power/supply/twl-charger.txt (contents, props changed) vendor/device-tree/dist/Bindings/powerpc/opal/ vendor/device-tree/dist/Bindings/powerpc/opal/oppanel-opal.txt (contents, props changed) vendor/device-tree/dist/Bindings/pwm/brcm,iproc-pwm.txt (contents, props changed) vendor/device-tree/dist/Bindings/pwm/google,cros-ec-pwm.txt (contents, props changed) vendor/device-tree/dist/Bindings/pwm/pwm-hibvt.txt (contents, props changed) vendor/device-tree/dist/Bindings/pwm/pwm-meson.txt (contents, props changed) vendor/device-tree/dist/Bindings/pwm/st,stmpe-pwm.txt (contents, props changed) vendor/device-tree/dist/Bindings/regulator/ltc3676.txt (contents, props changed) vendor/device-tree/dist/Bindings/regulator/mt6323-regulator.txt (contents, props changed) vendor/device-tree/dist/Bindings/remoteproc/qcom,adsp.txt (contents, props changed) vendor/device-tree/dist/Bindings/remoteproc/qcom,q6v5.txt (contents, props changed) vendor/device-tree/dist/Bindings/remoteproc/qcom,wcnss-pil.txt (contents, props changed) vendor/device-tree/dist/Bindings/reserved-memory/ramoops.txt (contents, props changed) vendor/device-tree/dist/Bindings/reset/amlogic,meson-reset.txt (contents, props changed) vendor/device-tree/dist/Bindings/reset/renesas,rst.txt (contents, props changed) vendor/device-tree/dist/Bindings/reset/st,stm32-rcc.txt (contents, props changed) vendor/device-tree/dist/Bindings/reset/ti-syscon-reset.txt (contents, props changed) vendor/device-tree/dist/Bindings/reset/uniphier-reset.txt (contents, props changed) vendor/device-tree/dist/Bindings/rng/amlogic,meson-rng.txt (contents, props changed) vendor/device-tree/dist/Bindings/rtc/epson,rtc7301.txt (contents, props changed) vendor/device-tree/dist/Bindings/rtc/epson,rx8900.txt (contents, props changed) vendor/device-tree/dist/Bindings/rtc/ingenic,jz4740-rtc.txt (contents, props changed) vendor/device-tree/dist/Bindings/security/tpm/ibmvtpm.txt (contents, props changed) vendor/device-tree/dist/Bindings/security/tpm/tpm-i2c.txt (contents, props changed) vendor/device-tree/dist/Bindings/security/tpm/tpm_tis_mmio.txt (contents, props changed) vendor/device-tree/dist/Bindings/security/tpm/tpm_tis_spi.txt (contents, props changed) vendor/device-tree/dist/Bindings/serial/st,stm32-usart.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/ vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/cpm/ vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/cpm.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/cpm/brg.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/cpm/i2c.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/cpm/pic.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/cpm/usb.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/gpio.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/network.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/qe/ vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/qe.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/qe/firmware.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/qe/par_io.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/qe/pincfg.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/qe/ucc.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/qe/usb.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/serial.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/cpm_qe/uqe_serial.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/fsl/guts.txt (contents, props changed) vendor/device-tree/dist/Bindings/soc/qcom/qcom,wcnss.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/adi,adau7002.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/axentia,tse850-pcm5142.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/brcm,cygnus-audio.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/cs35l33.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/cs35l34.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/cs42l42.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/cs53l30.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/max98504.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/max9860.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/mt2701-afe-pcm.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/mt2701-cs42448.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/nau8810.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/nvidia,tegra-audio-sgtl5000.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/qcom,msm8916-wcd-analog.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/qcom,msm8916-wcd-digital.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/rockchip,rk3399-gru-sound.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/rt5660.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/rt5663.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/rt5665.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/samsung,tm2-audio.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/simple-scu-card.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/sun4i-i2s.txt (contents, props changed) vendor/device-tree/dist/Bindings/sound/sun8i-codec-analog.txt (contents, props changed) vendor/device-tree/dist/Bindings/spi/brcm,spi-bcm-qspi.txt (contents, props changed) vendor/device-tree/dist/Bindings/spi/jcore,spi.txt (contents, props changed) vendor/device-tree/dist/Bindings/spi/spi-armada-3700.txt (contents, props changed) vendor/device-tree/dist/Bindings/spi/spi-clps711x.txt (contents, props changed) vendor/device-tree/dist/Bindings/spi/spi-fsl-lpspi.txt (contents, props changed) vendor/device-tree/dist/Bindings/thermal/brcm,bcm2835-thermal.txt (contents, props changed) vendor/device-tree/dist/Bindings/thermal/max77620_thermal.txt (contents, props changed) vendor/device-tree/dist/Bindings/thermal/qcom-tsens.txt (contents, props changed) vendor/device-tree/dist/Bindings/timer/ezchip,nps400-timer0.txt (contents, props changed) vendor/device-tree/dist/Bindings/timer/ezchip,nps400-timer1.txt (contents, props changed) vendor/device-tree/dist/Bindings/timer/jcore,pit.txt (contents, props changed) vendor/device-tree/dist/Bindings/timer/oxsemi,rps-timer.txt (contents, props changed) vendor/device-tree/dist/Bindings/timer/rockchip,rk-timer.txt (contents, props changed) vendor/device-tree/dist/Bindings/ufs/tc-dwc-g210-pltfrm.txt (contents, props changed) vendor/device-tree/dist/Bindings/usb/da8xx-usb.txt (contents, props changed) vendor/device-tree/dist/Bindings/usb/dwc3-cavium.txt (contents, props changed) vendor/device-tree/dist/Bindings/usb/mt8173-mtu3.txt (contents, props changed) vendor/device-tree/dist/Bindings/usb/ohci-da8xx.txt (contents, props changed) vendor/device-tree/dist/Bindings/usb/rockchip,dwc3.txt (contents, props changed) vendor/device-tree/dist/Bindings/usb/s3c2410-usb.txt (contents, props changed) vendor/device-tree/dist/Bindings/usb/usb4604.txt (contents, props changed) vendor/device-tree/dist/Bindings/video/bridge/sil-sii8620.txt (contents, props changed) vendor/device-tree/dist/Bindings/watchdog/aspeed-wdt.txt (contents, props changed) vendor/device-tree/dist/Bindings/watchdog/meson-gxbb-wdt.txt (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/gxbb-aoclkc.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/gxbb-clkc.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/hi3516cv300-clock.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/histb-clock.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/maxim,max77620.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/mt2701-clk.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/oxsemi,ox810se.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/oxsemi,ox820.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/qcom,gcc-mdm9615.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/qcom,gcc-msm8994.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/qcom,lcc-mdm9615.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/qcom,rpmcc.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/r8a7743-cpg-mssr.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/r8a7745-cpg-mssr.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/r8a7792-clock.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/r8a7796-cpg-mssr.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/rk1108-cru.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/sun50i-a64-ccu.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/sun6i-a31-ccu.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/sun8i-a23-a33-ccu.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/sun8i-h3-ccu.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/tegra186-clock.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/clock/zx296718-clock.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/display/ vendor/device-tree/dist/include/dt-bindings/display/tda998x.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/gpio/meson-gxl-gpio.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/leds/leds-pca9532.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/mailbox/ vendor/device-tree/dist/include/dt-bindings/mailbox/tegra186-hsp.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/memory/mt2701-larb-port.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/mfd/stm32f4-rcc.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/pinctrl/keystone.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/pinctrl/samsung.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/pinctrl/stm32f746-pinfunc.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/power/mt2701-power.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/power/r8a7743-sysc.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/power/r8a7745-sysc.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/power/r8a7792-sysc.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/power/r8a7796-sysc.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/power/tegra186-powergate.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/reset/amlogic,meson-gxbb-reset.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/reset/amlogic,meson8b-reset.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/reset/gxbb-aoclkc.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/reset/mt2701-resets.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/reset/oxsemi,ox810se.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/reset/oxsemi,ox820.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/reset/qcom,gcc-mdm9615.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/reset/sun50i-a64-ccu.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/reset/sun6i-a31-ccu.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/reset/sun8i-a23-a33-ccu.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/reset/sun8i-h3-ccu.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/reset/tegra186-reset.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/reset/ti-syscon.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/soc/rockchip,boot-mode.h (contents, props changed) vendor/device-tree/dist/include/dt-bindings/sound/cs42l42.h (contents, props changed) vendor/device-tree/dist/src/arc/ vendor/device-tree/dist/src/arc/abilis_tb100.dtsi (contents, props changed) vendor/device-tree/dist/src/arc/abilis_tb100_dvk.dts (contents, props changed) vendor/device-tree/dist/src/arc/abilis_tb101.dtsi (contents, props changed) vendor/device-tree/dist/src/arc/abilis_tb101_dvk.dts (contents, props changed) vendor/device-tree/dist/src/arc/abilis_tb10x.dtsi (contents, props changed) vendor/device-tree/dist/src/arc/axc001.dtsi (contents, props changed) vendor/device-tree/dist/src/arc/axc003.dtsi (contents, props changed) vendor/device-tree/dist/src/arc/axc003_idu.dtsi (contents, props changed) vendor/device-tree/dist/src/arc/axs101.dts (contents, props changed) vendor/device-tree/dist/src/arc/axs103.dts (contents, props changed) vendor/device-tree/dist/src/arc/axs103_idu.dts (contents, props changed) vendor/device-tree/dist/src/arc/axs10x_mb.dtsi (contents, props changed) vendor/device-tree/dist/src/arc/eznps.dts (contents, props changed) vendor/device-tree/dist/src/arc/haps_hs.dts (contents, props changed) vendor/device-tree/dist/src/arc/haps_hs_idu.dts (contents, props changed) vendor/device-tree/dist/src/arc/nsim_700.dts (contents, props changed) vendor/device-tree/dist/src/arc/nsim_hs.dts (contents, props changed) vendor/device-tree/dist/src/arc/nsim_hs_idu.dts (contents, props changed) vendor/device-tree/dist/src/arc/nsimosci.dts (contents, props changed) vendor/device-tree/dist/src/arc/nsimosci_hs.dts (contents, props changed) vendor/device-tree/dist/src/arc/nsimosci_hs_idu.dts (contents, props changed) vendor/device-tree/dist/src/arc/skeleton.dtsi (contents, props changed) vendor/device-tree/dist/src/arc/skeleton_hs.dtsi (contents, props changed) vendor/device-tree/dist/src/arc/skeleton_hs_idu.dtsi (contents, props changed) vendor/device-tree/dist/src/arc/vdk_axc003.dtsi (contents, props changed) vendor/device-tree/dist/src/arc/vdk_axc003_idu.dtsi (contents, props changed) vendor/device-tree/dist/src/arc/vdk_axs10x_mb.dtsi (contents, props changed) vendor/device-tree/dist/src/arc/vdk_hs38.dts (contents, props changed) vendor/device-tree/dist/src/arc/vdk_hs38_smp.dts (contents, props changed) vendor/device-tree/dist/src/arm/am571x-idk.dts (contents, props changed) vendor/device-tree/dist/src/arm/am57xx-beagle-x15-common.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/am57xx-beagle-x15-revb1.dts (contents, props changed) vendor/device-tree/dist/src/arm/arm-realview-eb-11mp-bbrevd-ctrevb.dts (contents, props changed) vendor/device-tree/dist/src/arm/arm-realview-eb-11mp-bbrevd.dts (contents, props changed) vendor/device-tree/dist/src/arm/arm-realview-eb-11mp-ctrevb.dts (contents, props changed) vendor/device-tree/dist/src/arm/arm-realview-eb-a9mp-bbrevd.dts (contents, props changed) vendor/device-tree/dist/src/arm/arm-realview-eb-bbrevd.dts (contents, props changed) vendor/device-tree/dist/src/arm/arm-realview-eb-bbrevd.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/armada-385-turris-omnia.dts (contents, props changed) vendor/device-tree/dist/src/arm/armada-390-db.dts (contents, props changed) vendor/device-tree/dist/src/arm/armada-395-gp.dts (contents, props changed) vendor/device-tree/dist/src/arm/armada-395.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/at91-sam9_l9260.dts (contents, props changed) vendor/device-tree/dist/src/arm/at91sam9260ek.dts (contents, props changed) vendor/device-tree/dist/src/arm/axp809.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/bcm23550-sparrow.dts (contents, props changed) vendor/device-tree/dist/src/arm/bcm23550.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/bcm2835-rpi-zero.dts (contents, props changed) vendor/device-tree/dist/src/arm/bcm283x-rpi-smsc9512.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/bcm283x-rpi-smsc9514.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/bcm283x-rpi-usb-host.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/bcm4708-luxul-xap-1510.dts (contents, props changed) vendor/device-tree/dist/src/arm/bcm4709-tplink-archer-c9-v1.dts (contents, props changed) vendor/device-tree/dist/src/arm/bcm4709.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/bcm47094-luxul-xwr-3100.dts (contents, props changed) vendor/device-tree/dist/src/arm/bcm47094-netgear-r8500.dts (contents, props changed) vendor/device-tree/dist/src/arm/bcm47094.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/bcm47189-tenda-ac9.dts (contents, props changed) vendor/device-tree/dist/src/arm/bcm5301x-nand-cs0-bch1.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/bcm5301x-nand-cs0-bch4.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/bcm5301x-nand-cs0.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/bcm53573.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/bcm953012er.dts (contents, props changed) vendor/device-tree/dist/src/arm/bcm958522er.dts (contents, props changed) vendor/device-tree/dist/src/arm/bcm958525er.dts (contents, props changed) vendor/device-tree/dist/src/arm/bcm958525xmc.dts (contents, props changed) vendor/device-tree/dist/src/arm/bcm958622hr.dts (contents, props changed) vendor/device-tree/dist/src/arm/bcm958623hr.dts (contents, props changed) vendor/device-tree/dist/src/arm/bcm958625hr.dts (contents, props changed) vendor/device-tree/dist/src/arm/bcm988312hr.dts (contents, props changed) vendor/device-tree/dist/src/arm/cloudengines-pogoplug-series-3.dts (contents, props changed) vendor/device-tree/dist/src/arm/da850-lcdk.dts (contents, props changed) vendor/device-tree/dist/src/arm/dra71-evm.dts (contents, props changed) vendor/device-tree/dist/src/arm/dra72-evm-tps65917.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/ep7209.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/ep7211-edb7211.dts (contents, props changed) vendor/device-tree/dist/src/arm/ep7211.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/exynos-mfc-reserved-memory.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/exynos4412-itop-elite.dts (contents, props changed) vendor/device-tree/dist/src/arm/exynos4412-itop-scp-core.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/exynos5410-odroidxu.dts (contents, props changed) vendor/device-tree/dist/src/arm/exynos54xx-odroidxu-leds.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/exynos54xx.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/hi3519-demb.dts (contents, props changed) vendor/device-tree/dist/src/arm/hi3519.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx23-sansa.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx23-xfi3.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx53-usbarmory.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6dl-colibri-eval-v3.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6dl-gw553x.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6dl-icore.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6dl-ts4900.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6q-gw553x.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6q-h100.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6q-icore.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6q-nitrogen6_som2.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6q-ts4900.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6q-utilite-pro.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6qdl-colibri.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx6qdl-gw553x.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx6qdl-icore.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx6qdl-nitrogen6_som2.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx6qdl-ts4900.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx6sx-udoo-neo-basic.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6sx-udoo-neo-extended.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6sx-udoo-neo-full.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6sx-udoo-neo.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx6ul-geam-kit.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6ul-geam.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx6ul-liteboard.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6ul-litesom.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx6ull-14x14-evk.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx6ull-pinfunc.h (contents, props changed) vendor/device-tree/dist/src/arm/imx6ull.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx7-colibri-eval-v3.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx7-colibri.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx7d-colibri-eval-v3.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx7d-colibri.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx7s-colibri-eval-v3.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx7s-colibri.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/imx7s-warp.dts (contents, props changed) vendor/device-tree/dist/src/arm/imx7s.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/omap4-droid4-xt894.dts (contents, props changed) vendor/device-tree/dist/src/arm/orion5x-linkstation-lschl.dts (contents, props changed) vendor/device-tree/dist/src/arm/orion5x-mv88f5181.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/orion5x-netgear-wnr854t.dts (contents, props changed) vendor/device-tree/dist/src/arm/ox820.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/pxa25x.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/qcom-apq8060-dragonboard.dts (contents, props changed) vendor/device-tree/dist/src/arm/qcom-apq8064-arrow-sd-600eval-pins.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/qcom-apq8064-arrow-sd-600eval.dts (contents, props changed) vendor/device-tree/dist/src/arm/qcom-mdm9615-wp8548-mangoh-green.dts (contents, props changed) vendor/device-tree/dist/src/arm/qcom-mdm9615-wp8548.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/qcom-mdm9615.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/qcom-msm8974-lge-nexus5-hammerhead.dts (contents, props changed) vendor/device-tree/dist/src/arm/r7s72100-rskrza1.dts (contents, props changed) vendor/device-tree/dist/src/arm/r8a7743-sk-rzg1m.dts (contents, props changed) vendor/device-tree/dist/src/arm/r8a7743.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/r8a7745-sk-rzg1e.dts (contents, props changed) vendor/device-tree/dist/src/arm/r8a7745.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/r8a7792-blanche.dts (contents, props changed) vendor/device-tree/dist/src/arm/r8a7792-wheat.dts (contents, props changed) vendor/device-tree/dist/src/arm/r8a7792.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/rk1108-evb.dts (contents, props changed) vendor/device-tree/dist/src/arm/rk1108.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/rk3066a-mk808.dts (contents, props changed) vendor/device-tree/dist/src/arm/rk3188-px3-evb.dts (contents, props changed) vendor/device-tree/dist/src/arm/rk3229-evb.dts (contents, props changed) vendor/device-tree/dist/src/arm/rk322x.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/rk3288-fennec.dts (contents, props changed) vendor/device-tree/dist/src/arm/rk3288-firefly-reload-core.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/rk3288-firefly-reload.dts (contents, props changed) vendor/device-tree/dist/src/arm/rk3288-veyron-analog-audio.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/sama5d3xmb_emac.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/sama5d3xmb_gmac.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/socfpga_arria10_socdk_qspi.dts (contents, props changed) vendor/device-tree/dist/src/arm/socfpga_cyclone5_sodia.dts (contents, props changed) vendor/device-tree/dist/src/arm/stih410-b2260.dts (contents, props changed) vendor/device-tree/dist/src/arm/stm32746g-eval.dts (contents, props changed) vendor/device-tree/dist/src/arm/stm32f746.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/sun5i-a13-empire-electronix-m712.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun5i-gr8-chip-pro.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun5i-gr8-evb.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun5i-gr8.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/sun5i-reference-design-tablet.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/sun6i-a31s-inet-q972.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun6i-reference-design-tablet.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/sun7i-a20-bananapi-m1-plus.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun8i-a23-inet86dz.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun8i-a23-polaroid-mid2407pxe03.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun8i-a33-inet-d978-rev2.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun8i-a33-olinuxino.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun8i-h3-bananapi-m2-plus.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun8i-h3-nanopi-m1.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun8i-h3-nanopi-neo.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun8i-h3-nanopi.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/sun8i-h3-orangepi-lite.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun8i-h3-orangepi-pc-plus.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun8i-h3-orangepi-plus2e.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun8i-r16-parrot.dts (contents, props changed) vendor/device-tree/dist/src/arm/sun8i-reference-design-tablet.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/sunxi-reference-design-tablet.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/tegra124-apalis-emc.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/tegra124-apalis-eval.dts (contents, props changed) vendor/device-tree/dist/src/arm/tegra124-apalis.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-ld4-ref.dts (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-ld4.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-ld6b-ref.dts (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-ld6b.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-pro4-ace.dts (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-pro4-ref.dts (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-pro4-sanji.dts (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-pro4.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-pro5.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-pxs2-gentil.dts (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-pxs2-vodka.dts (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-pxs2.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-sld3-ref.dts (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-sld3.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-sld8-ref.dts (contents, props changed) vendor/device-tree/dist/src/arm/uniphier-sld8.dtsi (contents, props changed) vendor/device-tree/dist/src/arm/zynq-microzed.dts (contents, props changed) vendor/device-tree/dist/src/arm64/allwinner/ vendor/device-tree/dist/src/arm64/allwinner/sun50i-a64-pine64-plus.dts (contents, props changed) vendor/device-tree/dist/src/arm64/allwinner/sun50i-a64-pine64.dts (contents, props changed) vendor/device-tree/dist/src/arm64/allwinner/sun50i-a64.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gx-p23x-q20x.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gx.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gxbb-nexbox-a95x.dts (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-nexbox-a95x.dts (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s905d-p230.dts (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s905d-p231.dts (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s905d.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s905x-p212.dts (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gxl-s905x.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gxl.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gxm-nexbox-a1.dts (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gxm-s912-q200.dts (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gxm-s912-q201.dts (contents, props changed) vendor/device-tree/dist/src/arm64/amlogic/meson-gxm.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/broadcom/bcm2835-rpi.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/broadcom/bcm2837-rpi-3-b.dts (contents, props changed) vendor/device-tree/dist/src/arm64/broadcom/bcm2837.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/broadcom/bcm283x-rpi-smsc9514.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/broadcom/bcm283x-rpi-usb-host.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/broadcom/bcm283x.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/exynos/exynos5433-pinctrl.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/exynos/exynos5433-tm2.dts (contents, props changed) vendor/device-tree/dist/src/arm64/exynos/exynos5433-tm2e.dts (contents, props changed) vendor/device-tree/dist/src/arm64/exynos/exynos5433-tmu-g3d-sensor-conf.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/exynos/exynos5433-tmu-sensor-conf.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/exynos/exynos5433-tmu.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/exynos/exynos5433.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/freescale/fsl-ls1046a-qds.dts (contents, props changed) vendor/device-tree/dist/src/arm64/freescale/fsl-ls1046a-rdb.dts (contents, props changed) vendor/device-tree/dist/src/arm64/freescale/fsl-ls1046a.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/hisilicon/hip07-d05.dts (contents, props changed) vendor/device-tree/dist/src/arm64/hisilicon/hip07.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/lg/lg1313-ref.dts (contents, props changed) vendor/device-tree/dist/src/arm64/lg/lg1313.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/marvell/armada-3720-espressobin.dts (contents, props changed) vendor/device-tree/dist/src/arm64/marvell/armada-8040-db.dts (contents, props changed) vendor/device-tree/dist/src/arm64/marvell/armada-cp110-slave.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/mediatek/mt6755-evb.dts (contents, props changed) vendor/device-tree/dist/src/arm64/mediatek/mt6755.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/nvidia/tegra186-p2771-0000.dts (contents, props changed) vendor/device-tree/dist/src/arm64/nvidia/tegra186-p3310.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/nvidia/tegra186.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/apq8096-db820c-pins.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/apq8096-db820c-pmic-pins.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/apq8096-db820c.dts (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/apq8096-db820c.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/msm8992-bullhead-rev-101.dts (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/msm8992-pins.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/msm8992.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/msm8994-angler-rev-101.dts (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/msm8994-pins.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/msm8994.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/qcom/msm8996-pins.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/renesas/r8a7795-h3ulcb.dts (contents, props changed) vendor/device-tree/dist/src/arm64/renesas/r8a7796-m3ulcb.dts (contents, props changed) vendor/device-tree/dist/src/arm64/renesas/r8a7796-salvator-x.dts (contents, props changed) vendor/device-tree/dist/src/arm64/renesas/r8a7796.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/rockchip/rk3368-orion-r68-meta.dts (contents, props changed) vendor/device-tree/dist/src/arm64/rockchip/rk3368-px5-evb.dts (contents, props changed) vendor/device-tree/dist/src/arm64/socionext/uniphier-ld11-ref.dts (contents, props changed) vendor/device-tree/dist/src/arm64/socionext/uniphier-ld11.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/socionext/uniphier-ld20-ref.dts (contents, props changed) vendor/device-tree/dist/src/arm64/socionext/uniphier-ld20.dtsi (contents, props changed) vendor/device-tree/dist/src/arm64/zte/ vendor/device-tree/dist/src/arm64/zte/zx296718-evb.dts (contents, props changed) vendor/device-tree/dist/src/arm64/zte/zx296718.dtsi (contents, props changed) vendor/device-tree/dist/src/c6x/ vendor/device-tree/dist/src/c6x/dsk6455.dts (contents, props changed) vendor/device-tree/dist/src/c6x/evmc6457.dts (contents, props changed) vendor/device-tree/dist/src/c6x/evmc6472.dts (contents, props changed) vendor/device-tree/dist/src/c6x/evmc6474.dts (contents, props changed) vendor/device-tree/dist/src/c6x/evmc6678.dts (contents, props changed) vendor/device-tree/dist/src/c6x/tms320c6455.dtsi (contents, props changed) vendor/device-tree/dist/src/c6x/tms320c6457.dtsi (contents, props changed) vendor/device-tree/dist/src/c6x/tms320c6472.dtsi (contents, props changed) vendor/device-tree/dist/src/c6x/tms320c6474.dtsi (contents, props changed) vendor/device-tree/dist/src/c6x/tms320c6678.dtsi (contents, props changed) vendor/device-tree/dist/src/cris/ vendor/device-tree/dist/src/cris/artpec3.dtsi (contents, props changed) vendor/device-tree/dist/src/cris/dev88.dts (contents, props changed) vendor/device-tree/dist/src/cris/etraxfs.dtsi (contents, props changed) vendor/device-tree/dist/src/cris/p1343.dts (contents, props changed) vendor/device-tree/dist/src/h8300/ vendor/device-tree/dist/src/h8300/edosk2674.dts (contents, props changed) vendor/device-tree/dist/src/h8300/h8300h_sim.dts (contents, props changed) vendor/device-tree/dist/src/h8300/h8s_sim.dts (contents, props changed) vendor/device-tree/dist/src/metag/ vendor/device-tree/dist/src/metag/skeleton.dts (contents, props changed) vendor/device-tree/dist/src/metag/skeleton.dtsi (contents, props changed) vendor/device-tree/dist/src/metag/tz1090.dtsi (contents, props changed) vendor/device-tree/dist/src/metag/tz1090_generic.dts (contents, props changed) vendor/device-tree/dist/src/mips/brcm/bcm3368-netgear-cvg834g.dts (contents, props changed) vendor/device-tree/dist/src/mips/brcm/bcm3368.dtsi (contents, props changed) vendor/device-tree/dist/src/mips/brcm/bcm63268-comtrend-vr-3032u.dts (contents, props changed) vendor/device-tree/dist/src/mips/brcm/bcm63268.dtsi (contents, props changed) vendor/device-tree/dist/src/mips/brcm/bcm6358-neufbox4-sercomm.dts (contents, props changed) vendor/device-tree/dist/src/mips/brcm/bcm6362-neufbox6-sercomm.dts (contents, props changed) vendor/device-tree/dist/src/mips/brcm/bcm6362.dtsi (contents, props changed) vendor/device-tree/dist/src/mips/brcm/bcm97xxx-nand-cs1-bch24.dtsi (contents, props changed) vendor/device-tree/dist/src/mips/brcm/bcm97xxx-nand-cs1-bch4.dtsi (contents, props changed) vendor/device-tree/dist/src/mips/cavium-octeon/dlink_dsr-500n-1000n.dtsi (contents, props changed) vendor/device-tree/dist/src/mips/cavium-octeon/dlink_dsr-500n.dts (contents, props changed) vendor/device-tree/dist/src/nios2/ vendor/device-tree/dist/src/nios2/10m50_devboard.dts (contents, props changed) vendor/device-tree/dist/src/nios2/3c120_devboard.dts (contents, props changed) vendor/device-tree/dist/src/openrisc/ vendor/device-tree/dist/src/openrisc/or1ksim.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/ vendor/device-tree/dist/src/powerpc/a3m071.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/a4m072.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/ac14xx.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/acadia.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/adder875-redboot.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/adder875-uboot.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/akebono.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/amigaone.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/arches.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/asp834x-redboot.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/bamboo.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/bluestone.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/c2k.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/canyonlands.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/charon.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/cm5200.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/currituck.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/digsy_mtc.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/ebony.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/eiger.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/ep405.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/ep8248e.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/ep88xc.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/ vendor/device-tree/dist/src/powerpc/fsl/b4420qds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/b4420si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/b4420si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/b4860qds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/b4860si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/b4860si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/b4qds.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/b4si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/bsc9131rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/bsc9131rdb.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/bsc9131si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/bsc9131si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/bsc9132qds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/bsc9132qds.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/bsc9132si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/bsc9132si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/c293pcie.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/c293si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/c293si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/cyrus_p5020.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/e500mc_power_isa.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/e500v2_power_isa.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/e5500_power_isa.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/e6500_power_isa.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/elo3-dma-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/elo3-dma-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/elo3-dma-2.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/ge_imp3a.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/gef_ppc9a.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/gef_sbc310.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/gef_sbc610.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/interlaken-lac-portals.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/interlaken-lac.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/kmcoge4.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8536ds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8536ds.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8536ds_36b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8536si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8536si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8540ads.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8541cds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8544ds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8544ds.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8544si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8544si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8548cds.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8548cds_32b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8548cds_36b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8548si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8548si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8555cds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8560ads.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8568mds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8568si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8568si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8569mds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8569si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8569si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8572ds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8572ds.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8572ds_36b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8572ds_camp_core0.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8572ds_camp_core1.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8572si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8572si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8641_hpcn.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8641_hpcn_36b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8641si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mpc8641si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mvme2500.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/mvme7100.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/oca4080.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1010rdb-pa.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1010rdb-pa.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1010rdb-pa_36b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1010rdb-pb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1010rdb-pb_36b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1010rdb.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1010rdb_32b.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1010rdb_36b.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1010si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1010si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020mbg-pc.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020mbg-pc_32b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020mbg-pc_36b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020rdb-pc.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020rdb-pc_32b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020rdb-pc_36b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020rdb-pc_camp_core0.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020rdb-pc_camp_core1.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020rdb-pd.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020rdb.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020rdb_36b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020utm-pc.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020utm-pc_32b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1020utm-pc_36b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1021mds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1021rdb-pc.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1021rdb-pc_32b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1021rdb-pc_36b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1021si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1021si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1022ds.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1022ds_32b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1022ds_36b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1022rdk.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1022si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1022si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1023rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1023si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1023si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1024rdb.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1024rdb_32b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1024rdb_36b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1025rdb.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1025rdb_32b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1025rdb_36b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1025twr.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p1025twr.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p2020ds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p2020ds.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p2020rdb-pc.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p2020rdb-pc_32b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p2020rdb-pc_36b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p2020rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p2020si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p2020si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p2041rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p2041si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p2041si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p3041ds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p3041si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p3041si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p4080ds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p4080si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p4080si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p5020ds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p5020si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p5020si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p5040ds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p5040si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/p5040si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/ppa8548.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-dma-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-dma-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-duart-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-esdhc-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-espi-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-etsec1-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-etsec1-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-etsec1-2.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-etsec1-3.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-etsec1-timer-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-etsec2-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-etsec2-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-etsec2-2.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-etsec2-grp2-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-etsec2-grp2-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-etsec2-grp2-2.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-gpio-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-i2c-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-i2c-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-mpic-message-B.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-mpic-timer-B.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-mpic.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-rmu-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-sata2-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-sata2-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-sec2.1-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-sec3.0-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-sec3.1-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-sec3.3-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-sec4.4-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-usb2-dr-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/pq3-usb2-dr-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qonverge-usb2-dr-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-bman1-portals.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-bman1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-clockgen1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-clockgen2.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-dma-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-dma-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-duart-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-duart-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-esdhc-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-espi-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman-0-10g-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman-0-1g-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman-0-1g-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman-0-1g-2.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman-0-1g-3.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman-0-1g-4.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman-1-10g-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman-1-1g-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman-1-1g-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman-1-1g-2.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman-1-1g-3.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman-1-1g-4.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-0-10g-0-best-effort.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-0-10g-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-0-10g-1-best-effort.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-0-10g-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-0-1g-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-0-1g-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-0-1g-2.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-0-1g-3.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-0-1g-4.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-0-1g-5.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-1-10g-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-1-10g-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-1-1g-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-1-1g-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-1-1g-2.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-1-1g-3.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-1-1g-4.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-1-1g-5.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-fman3l-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-gpio-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-gpio-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-gpio-2.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-gpio-3.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-i2c-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-i2c-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-mpic.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-mpic4.3.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-qman1-portals.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-qman1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-qman3.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-raid1.0-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-rmu-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-sata2-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-sata2-1.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-sec4.0-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-sec4.2-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-sec5.0-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-sec5.2-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-sec5.3-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-sec6.0-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-usb2-dr-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/qoriq-usb2-mph-0.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/sbc8641d.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t1023rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t1023si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t1024qds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t1024rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t1024si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t102xsi-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t1040d4rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t1040qds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t1040rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t1040si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t1042d4rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t1042qds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t1042rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t1042rdb_pi.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t1042si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t104xd4rdb.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t104xqds.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t104xrdb.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t104xsi-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t2080qds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t2080rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t2080si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t2081qds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t2081si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t208xqds.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t208xrdb.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t208xsi-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t4240qds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t4240rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t4240si-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/fsl/t4240si-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/gamecube.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/glacier.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/haleakala.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/holly.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/hotfoot.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/icon.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/iss4xx-mpic.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/iss4xx.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/katmai.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/kilauea.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/klondike.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/kmeter1.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/ksi8560.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/kuroboxHD.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/kuroboxHG.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/lite5200.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/lite5200b.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/makalu.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/media5200.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mgcoge.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/motionpro.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc5121.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc5121ads.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc5125twr.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc5200b.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc7448hpc2.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc8272ads.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc8308_p1m.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc8308rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc8313erdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc8315erdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc832x_mds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc832x_rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc8349emitx.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc8349emitxgp.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc834x_mds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc836x_mds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc836x_rdk.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc8377_mds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc8377_rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc8377_wlan.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc8378_mds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc8378_rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc8379_mds.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc8379_rdb.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc8610_hpcd.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc866ads.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mpc885ads.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mucmc52.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/mvme5100.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/o2d.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/o2d.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/o2d300.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/o2dnt2.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/o2i.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/o2mnt.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/o3dnt.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/obs600.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/pcm030.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/pcm032.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/pdm360ng.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/pq2fads.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/ps3.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/rainier.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/redwood.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/sam440ep.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/sbc8349.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/sbc8548-altflash.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/sbc8548-post.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/sbc8548-pre.dtsi (contents, props changed) vendor/device-tree/dist/src/powerpc/sbc8548.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/sequoia.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/socrates.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/storcenter.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/stx_gp3_8560.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/stxssa8555.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/taishan.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/tqm5200.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/tqm8540.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/tqm8541.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/tqm8548-bigflash.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/tqm8548.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/tqm8555.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/tqm8560.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/tqm8xx.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/uc101.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/virtex440-ml507.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/virtex440-ml510.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/walnut.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/warp.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/wii.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/xcalibur1501.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/xpedite5200.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/xpedite5200_xmon.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/xpedite5301.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/xpedite5330.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/xpedite5370.dts (contents, props changed) vendor/device-tree/dist/src/powerpc/yosemite.dts (contents, props changed) vendor/device-tree/dist/src/sh/ vendor/device-tree/dist/src/sh/j2_mimas_v2.dts (contents, props changed) vendor/device-tree/dist/src/x86/ vendor/device-tree/dist/src/x86/falconfalls.dts (contents, props changed) vendor/device-tree/dist/src/xtensa/ vendor/device-tree/dist/src/xtensa/csp.dts (contents, props changed) vendor/device-tree/dist/src/xtensa/kc705.dts (contents, props changed) vendor/device-tree/dist/src/xtensa/kc705_nommu.dts (contents, props changed) vendor/device-tree/dist/src/xtensa/lx200mx.dts (contents, props changed) vendor/device-tree/dist/src/xtensa/lx60.dts (contents, props changed) vendor/device-tree/dist/src/xtensa/ml605.dts (contents, props changed) vendor/device-tree/dist/src/xtensa/xtfpga-flash-128m.dtsi (contents, props changed) vendor/device-tree/dist/src/xtensa/xtfpga-flash-16m.dtsi (contents, props changed) vendor/device-tree/dist/src/xtensa/xtfpga-flash-4m.dtsi (contents, props changed) vendor/device-tree/dist/src/xtensa/xtfpga.dtsi (contents, props changed) Modified: vendor/device-tree/dist/Bindings/arm/altera/socfpga-eccmgr.txt vendor/device-tree/dist/Bindings/arm/amlogic.txt vendor/device-tree/dist/Bindings/arm/arch_timer.txt vendor/device-tree/dist/Bindings/arm/arm,scpi.txt vendor/device-tree/dist/Bindings/arm/arm-boards vendor/device-tree/dist/Bindings/arm/atmel-at91.txt vendor/device-tree/dist/Bindings/arm/bcm/brcm,bcm11351-cpu-method.txt vendor/device-tree/dist/Bindings/arm/bcm/brcm,bcm2835.txt vendor/device-tree/dist/Bindings/arm/coresight.txt vendor/device-tree/dist/Bindings/arm/cpus.txt vendor/device-tree/dist/Bindings/arm/davinci.txt vendor/device-tree/dist/Bindings/arm/fsl.txt vendor/device-tree/dist/Bindings/arm/hisilicon/hisilicon.txt vendor/device-tree/dist/Bindings/arm/l2c2x0.txt vendor/device-tree/dist/Bindings/arm/marvell/armada-39x.txt vendor/device-tree/dist/Bindings/arm/mediatek.txt vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,apmixedsys.txt vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,imgsys.txt vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,infracfg.txt vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,mmsys.txt vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,pericfg.txt vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,topckgen.txt vendor/device-tree/dist/Bindings/arm/mediatek/mediatek,vdecsys.txt vendor/device-tree/dist/Bindings/arm/olimex.txt vendor/device-tree/dist/Bindings/arm/omap/omap.txt vendor/device-tree/dist/Bindings/arm/oxnas.txt vendor/device-tree/dist/Bindings/arm/pmu.txt vendor/device-tree/dist/Bindings/arm/qcom.txt vendor/device-tree/dist/Bindings/arm/rockchip.txt vendor/device-tree/dist/Bindings/arm/samsung/pmu.txt vendor/device-tree/dist/Bindings/arm/samsung/samsung-boards.txt vendor/device-tree/dist/Bindings/arm/shmobile.txt vendor/device-tree/dist/Bindings/arm/sunxi.txt vendor/device-tree/dist/Bindings/arm/technologic.txt vendor/device-tree/dist/Bindings/arm/tegra.txt vendor/device-tree/dist/Bindings/arm/xen.txt vendor/device-tree/dist/Bindings/arm/zte.txt vendor/device-tree/dist/Bindings/ata/ahci-fsl-qoriq.txt vendor/device-tree/dist/Bindings/ata/ahci-platform.txt vendor/device-tree/dist/Bindings/ata/ahci-st.txt vendor/device-tree/dist/Bindings/clock/arm-syscon-icst.txt vendor/device-tree/dist/Bindings/clock/at91-clock.txt vendor/device-tree/dist/Bindings/clock/clk-exynos-audss.txt vendor/device-tree/dist/Bindings/clock/clps711x-clock.txt vendor/device-tree/dist/Bindings/clock/exynos5410-clock.txt vendor/device-tree/dist/Bindings/clock/exynos5433-clock.txt vendor/device-tree/dist/Bindings/clock/fixed-factor-clock.txt vendor/device-tree/dist/Bindings/clock/imx31-clock.txt vendor/device-tree/dist/Bindings/clock/maxim,max77686.txt vendor/device-tree/dist/Bindings/clock/mvebu-core-clock.txt vendor/device-tree/dist/Bindings/clock/mvebu-gated-clock.txt vendor/device-tree/dist/Bindings/clock/oxnas,stdclk.txt vendor/device-tree/dist/Bindings/clock/qcom,gcc.txt vendor/device-tree/dist/Bindings/clock/qcom,lcc.txt vendor/device-tree/dist/Bindings/clock/qoriq-clock.txt vendor/device-tree/dist/Bindings/clock/renesas,cpg-mssr.txt vendor/device-tree/dist/Bindings/clock/renesas,cpg-mstp-clocks.txt vendor/device-tree/dist/Bindings/clock/renesas,rcar-gen2-cpg-clocks.txt vendor/device-tree/dist/Bindings/clock/st,stm32-rcc.txt vendor/device-tree/dist/Bindings/clock/st/st,clkgen-mux.txt vendor/device-tree/dist/Bindings/clock/st/st,clkgen-pll.txt vendor/device-tree/dist/Bindings/clock/st/st,clkgen.txt vendor/device-tree/dist/Bindings/clock/st/st,flexgen.txt vendor/device-tree/dist/Bindings/clock/st/st,quadfs.txt vendor/device-tree/dist/Bindings/clock/xgene.txt vendor/device-tree/dist/Bindings/crypto/fsl-sec4.txt vendor/device-tree/dist/Bindings/display/brcm,bcm-vc4.txt vendor/device-tree/dist/Bindings/display/bridge/adi,adv7511.txt vendor/device-tree/dist/Bindings/display/bridge/analogix_dp.txt vendor/device-tree/dist/Bindings/display/bridge/dw_hdmi.txt vendor/device-tree/dist/Bindings/display/bridge/tda998x.txt vendor/device-tree/dist/Bindings/display/cirrus,clps711x-fb.txt vendor/device-tree/dist/Bindings/display/connector/hdmi-connector.txt vendor/device-tree/dist/Bindings/display/exynos/exynos_hdmi.txt vendor/device-tree/dist/Bindings/display/fsl,dcu.txt vendor/device-tree/dist/Bindings/display/msm/dsi.txt vendor/device-tree/dist/Bindings/display/msm/hdmi.txt vendor/device-tree/dist/Bindings/display/mxsfb.txt vendor/device-tree/dist/Bindings/display/panel/display-timing.txt vendor/device-tree/dist/Bindings/display/panel/panel-dpi.txt vendor/device-tree/dist/Bindings/display/renesas,du.txt vendor/device-tree/dist/Bindings/display/rockchip/analogix_dp-rockchip.txt vendor/device-tree/dist/Bindings/display/rockchip/rockchip-vop.txt vendor/device-tree/dist/Bindings/display/sunxi/sun4i-drm.txt vendor/device-tree/dist/Bindings/display/tegra/nvidia,tegra20-host1x.txt vendor/device-tree/dist/Bindings/display/tilcdc/tilcdc.txt vendor/device-tree/dist/Bindings/dma/fsl-imx-sdma.txt vendor/device-tree/dist/Bindings/dma/nbpfaxi.txt vendor/device-tree/dist/Bindings/dma/qcom_hidma_mgmt.txt vendor/device-tree/dist/Bindings/dma/renesas,rcar-dmac.txt vendor/device-tree/dist/Bindings/dma/snps-dma.txt vendor/device-tree/dist/Bindings/dma/sun6i-dma.txt vendor/device-tree/dist/Bindings/dma/ti-edma.txt vendor/device-tree/dist/Bindings/dma/xilinx/xilinx_dma.txt vendor/device-tree/dist/Bindings/extcon/extcon-arizona.txt vendor/device-tree/dist/Bindings/extcon/extcon-usb-gpio.txt vendor/device-tree/dist/Bindings/gpio/cirrus,clps711x-mctrl-gpio.txt vendor/device-tree/dist/Bindings/gpio/gpio-clps711x.txt vendor/device-tree/dist/Bindings/gpio/gpio-pca953x.txt vendor/device-tree/dist/Bindings/gpio/mrvl-gpio.txt vendor/device-tree/dist/Bindings/gpio/renesas,gpio-rcar.txt vendor/device-tree/dist/Bindings/i2c/i2c-arb-gpio-challenge.txt vendor/device-tree/dist/Bindings/i2c/i2c-meson.txt vendor/device-tree/dist/Bindings/i2c/i2c-mux.txt vendor/device-tree/dist/Bindings/i2c/i2c-pxa.txt vendor/device-tree/dist/Bindings/i2c/i2c-rcar.txt vendor/device-tree/dist/Bindings/i2c/i2c-rk3x.txt vendor/device-tree/dist/Bindings/i2c/i2c-sh_mobile.txt vendor/device-tree/dist/Bindings/i2c/i2c.txt vendor/device-tree/dist/Bindings/i2c/trivial-devices.txt vendor/device-tree/dist/Bindings/iio/adc/at91_adc.txt vendor/device-tree/dist/Bindings/iio/adc/rockchip-saradc.txt vendor/device-tree/dist/Bindings/iio/pressure/bmp085.txt vendor/device-tree/dist/Bindings/iio/st-sensors.txt vendor/device-tree/dist/Bindings/input/clps711x-keypad.txt vendor/device-tree/dist/Bindings/input/da9062-onkey.txt vendor/device-tree/dist/Bindings/input/gpio-keys-polled.txt vendor/device-tree/dist/Bindings/input/rmi4/rmi_i2c.txt vendor/device-tree/dist/Bindings/input/rotary-encoder.txt vendor/device-tree/dist/Bindings/input/touchscreen/edt-ft5x06.txt vendor/device-tree/dist/Bindings/input/touchscreen/imx6ul_tsc.txt vendor/device-tree/dist/Bindings/input/touchscreen/touchscreen.txt vendor/device-tree/dist/Bindings/input/tps65218-pwrbutton.txt vendor/device-tree/dist/Bindings/interrupt-controller/arm,gic.txt vendor/device-tree/dist/Bindings/interrupt-controller/cirrus,clps711x-intc.txt vendor/device-tree/dist/Bindings/interrupt-controller/marvell,odmi-controller.txt vendor/device-tree/dist/Bindings/interrupt-controller/mediatek,sysirq.txt vendor/device-tree/dist/Bindings/interrupt-controller/renesas,irqc.txt vendor/device-tree/dist/Bindings/interrupt-controller/snps,archs-idu-intc.txt vendor/device-tree/dist/Bindings/iommu/arm,smmu-v3.txt vendor/device-tree/dist/Bindings/iommu/arm,smmu.txt vendor/device-tree/dist/Bindings/iommu/mediatek,iommu.txt vendor/device-tree/dist/Bindings/leds/backlight/lp855x.txt vendor/device-tree/dist/Bindings/leds/common.txt vendor/device-tree/dist/Bindings/leds/leds-bcm6328.txt vendor/device-tree/dist/Bindings/leds/leds-bcm6358.txt vendor/device-tree/dist/Bindings/leds/leds-gpio.txt vendor/device-tree/dist/Bindings/leds/pca963x.txt vendor/device-tree/dist/Bindings/leds/register-bit-led.txt vendor/device-tree/dist/Bindings/mailbox/brcm,bcm2835-mbox.txt vendor/device-tree/dist/Bindings/media/exynos4-fimc-is.txt vendor/device-tree/dist/Bindings/media/exynos5-gsc.txt vendor/device-tree/dist/Bindings/media/hix5hd2-ir.txt vendor/device-tree/dist/Bindings/media/i2c/adv7180.txt vendor/device-tree/dist/Bindings/media/i2c/adv7604.txt vendor/device-tree/dist/Bindings/media/meson-ir.txt vendor/device-tree/dist/Bindings/media/renesas,vsp1.txt vendor/device-tree/dist/Bindings/media/s5p-mfc.txt vendor/device-tree/dist/Bindings/memory-controllers/mediatek,smi-common.txt vendor/device-tree/dist/Bindings/memory-controllers/mediatek,smi-larb.txt vendor/device-tree/dist/Bindings/memory-controllers/omap-gpmc.txt vendor/device-tree/dist/Bindings/mfd/act8945a.txt vendor/device-tree/dist/Bindings/mfd/arizona.txt vendor/device-tree/dist/Bindings/mfd/axp20x.txt vendor/device-tree/dist/Bindings/mfd/da9052-i2c.txt vendor/device-tree/dist/Bindings/mfd/max77620.txt vendor/device-tree/dist/Bindings/mfd/max77693.txt vendor/device-tree/dist/Bindings/mfd/qcom-pm8xxx.txt vendor/device-tree/dist/Bindings/mfd/qcom-rpm.txt vendor/device-tree/dist/Bindings/mfd/rk808.txt vendor/device-tree/dist/Bindings/mfd/rn5t618.txt vendor/device-tree/dist/Bindings/mfd/stmpe.txt vendor/device-tree/dist/Bindings/mfd/tps65086.txt vendor/device-tree/dist/Bindings/mfd/twl6040.txt vendor/device-tree/dist/Bindings/mips/brcm/soc.txt vendor/device-tree/dist/Bindings/mmc/arasan,sdhci.txt vendor/device-tree/dist/Bindings/mmc/brcm,sdhci-iproc.txt vendor/device-tree/dist/Bindings/mmc/fsl-imx-esdhc.txt vendor/device-tree/dist/Bindings/mmc/mmc-pwrseq-simple.txt vendor/device-tree/dist/Bindings/mmc/mmc.txt vendor/device-tree/dist/Bindings/mmc/renesas,mmcif.txt vendor/device-tree/dist/Bindings/mmc/rockchip-dw-mshc.txt vendor/device-tree/dist/Bindings/mmc/sdhci-msm.txt vendor/device-tree/dist/Bindings/mmc/sdhci-st.txt vendor/device-tree/dist/Bindings/mmc/sunxi-mmc.txt vendor/device-tree/dist/Bindings/mmc/synopsys-dw-mshc.txt vendor/device-tree/dist/Bindings/mmc/tmio_mmc.txt vendor/device-tree/dist/Bindings/mtd/brcm,brcmnand.txt vendor/device-tree/dist/Bindings/mtd/gpmc-nand.txt vendor/device-tree/dist/Bindings/mtd/nand.txt vendor/device-tree/dist/Bindings/mtd/sunxi-nand.txt vendor/device-tree/dist/Bindings/net/apm-xgene-enet.txt vendor/device-tree/dist/Bindings/net/brcm,bcm7445-switch-v4.0.txt vendor/device-tree/dist/Bindings/net/can/rcar_can.txt vendor/device-tree/dist/Bindings/net/cavium-pip.txt vendor/device-tree/dist/Bindings/net/cpsw.txt vendor/device-tree/dist/Bindings/net/davinci-mdio.txt vendor/device-tree/dist/Bindings/net/dsa/dsa.txt vendor/device-tree/dist/Bindings/net/dsa/marvell.txt vendor/device-tree/dist/Bindings/net/ethernet.txt vendor/device-tree/dist/Bindings/net/fsl-fec.txt vendor/device-tree/dist/Bindings/net/hisilicon-hix5hd2-gmac.txt vendor/device-tree/dist/Bindings/net/hisilicon-hns-dsaf.txt vendor/device-tree/dist/Bindings/net/keystone-netcp.txt vendor/device-tree/dist/Bindings/net/macb.txt vendor/device-tree/dist/Bindings/net/marvell-armada-370-neta.txt vendor/device-tree/dist/Bindings/net/marvell-orion-net.txt vendor/device-tree/dist/Bindings/net/mdio-mux-mmioreg.txt vendor/device-tree/dist/Bindings/net/mdio-mux.txt vendor/device-tree/dist/Bindings/net/mediatek-net.txt vendor/device-tree/dist/Bindings/net/meson-dwmac.txt vendor/device-tree/dist/Bindings/net/micrel-ksz90x1.txt vendor/device-tree/dist/Bindings/net/micrel.txt vendor/device-tree/dist/Bindings/net/phy.txt vendor/device-tree/dist/Bindings/net/renesas,ravb.txt vendor/device-tree/dist/Bindings/net/rockchip-dwmac.txt vendor/device-tree/dist/Bindings/net/sh_eth.txt vendor/device-tree/dist/Bindings/net/smsc-lan91c111.txt vendor/device-tree/dist/Bindings/net/smsc911x.txt vendor/device-tree/dist/Bindings/net/snps,dwc-qos-ethernet.txt vendor/device-tree/dist/Bindings/net/socfpga-dwmac.txt vendor/device-tree/dist/Bindings/net/stmmac.txt vendor/device-tree/dist/Bindings/net/ti,dp83867.txt vendor/device-tree/dist/Bindings/net/wireless/ti,wlcore,spi.txt vendor/device-tree/dist/Bindings/nvmem/rockchip-efuse.txt vendor/device-tree/dist/Bindings/opp/opp.txt vendor/device-tree/dist/Bindings/pci/brcm,iproc-pcie.txt vendor/device-tree/dist/Bindings/pci/designware-pcie.txt vendor/device-tree/dist/Bindings/pci/layerscape-pci.txt vendor/device-tree/dist/Bindings/pci/nvidia,tegra20-pcie.txt vendor/device-tree/dist/Bindings/pci/pci.txt vendor/device-tree/dist/Bindings/pci/qcom,pcie.txt vendor/device-tree/dist/Bindings/pci/rcar-pci.txt vendor/device-tree/dist/Bindings/pci/xilinx-nwl-pcie.txt vendor/device-tree/dist/Bindings/phy/brcm-sata-phy.txt vendor/device-tree/dist/Bindings/phy/mxs-usb-phy.txt vendor/device-tree/dist/Bindings/phy/nvidia,tegra124-xusb-padctl.txt vendor/device-tree/dist/Bindings/phy/rcar-gen3-phy-usb2.txt vendor/device-tree/dist/Bindings/phy/rockchip-emmc-phy.txt vendor/device-tree/dist/Bindings/phy/rockchip-usb-phy.txt vendor/device-tree/dist/Bindings/phy/sun4i-usb-phy.txt vendor/device-tree/dist/Bindings/phy/ti-phy.txt vendor/device-tree/dist/Bindings/pinctrl/allwinner,sunxi-pinctrl.txt vendor/device-tree/dist/Bindings/pinctrl/atmel,at91-pinctrl.txt vendor/device-tree/dist/Bindings/pinctrl/brcm,iproc-gpio.txt vendor/device-tree/dist/Bindings/pinctrl/marvell,orion-pinctrl.txt vendor/device-tree/dist/Bindings/pinctrl/meson,pinctrl.txt vendor/device-tree/dist/Bindings/pinctrl/pinctrl-bindings.txt vendor/device-tree/dist/Bindings/pinctrl/pinctrl-palmas.txt vendor/device-tree/dist/Bindings/pinctrl/pinctrl-single.txt vendor/device-tree/dist/Bindings/pinctrl/pinctrl-st.txt vendor/device-tree/dist/Bindings/pinctrl/qcom,msm8660-pinctrl.txt vendor/device-tree/dist/Bindings/pinctrl/qcom,msm8974-pinctrl.txt vendor/device-tree/dist/Bindings/pinctrl/qcom,pmic-gpio.txt vendor/device-tree/dist/Bindings/pinctrl/qcom,pmic-mpp.txt vendor/device-tree/dist/Bindings/pinctrl/renesas,pfc-pinctrl.txt vendor/device-tree/dist/Bindings/pinctrl/rockchip,pinctrl.txt vendor/device-tree/dist/Bindings/pinctrl/samsung-pinctrl.txt vendor/device-tree/dist/Bindings/pinctrl/st,stm32-pinctrl.txt vendor/device-tree/dist/Bindings/power/power_domain.txt vendor/device-tree/dist/Bindings/power/renesas,rcar-sysc.txt vendor/device-tree/dist/Bindings/power/reset/st-reset.txt vendor/device-tree/dist/Bindings/powerpc/fsl/fman.txt vendor/device-tree/dist/Bindings/pwm/cirrus,clps711x-pwm.txt vendor/device-tree/dist/Bindings/pwm/nvidia,tegra20-pwm.txt vendor/device-tree/dist/Bindings/pwm/pwm-bcm2835.txt vendor/device-tree/dist/Bindings/pwm/pwm-mtk-disp.txt vendor/device-tree/dist/Bindings/pwm/pwm-omap-dmtimer.txt vendor/device-tree/dist/Bindings/pwm/pwm-st.txt vendor/device-tree/dist/Bindings/pwm/pwm-sun4i.txt vendor/device-tree/dist/Bindings/pwm/pwm-tiecap.txt vendor/device-tree/dist/Bindings/pwm/pwm-tiehrpwm.txt vendor/device-tree/dist/Bindings/pwm/pwm-tipwmss.txt vendor/device-tree/dist/Bindings/pwm/renesas,pwm-rcar.txt vendor/device-tree/dist/Bindings/regmap/regmap.txt vendor/device-tree/dist/Bindings/regulator/da9210.txt vendor/device-tree/dist/Bindings/regulator/da9211.txt vendor/device-tree/dist/Bindings/regulator/pv88080.txt vendor/device-tree/dist/Bindings/regulator/pwm-regulator.txt vendor/device-tree/dist/Bindings/regulator/qcom,spmi-regulator.txt vendor/device-tree/dist/Bindings/regulator/regulator.txt vendor/device-tree/dist/Bindings/regulator/tps65218.txt vendor/device-tree/dist/Bindings/reset/hisilicon,hi6220-reset.txt vendor/device-tree/dist/Bindings/reset/oxnas,reset.txt vendor/device-tree/dist/Bindings/reset/st,sti-powerdown.txt vendor/device-tree/dist/Bindings/reset/st,sti-softreset.txt vendor/device-tree/dist/Bindings/rng/brcm,bcm2835.txt vendor/device-tree/dist/Bindings/rng/omap_rng.txt vendor/device-tree/dist/Bindings/rtc/dallas,ds1390.txt vendor/device-tree/dist/Bindings/rtc/maxim,ds3231.txt vendor/device-tree/dist/Bindings/rtc/pcf8563.txt vendor/device-tree/dist/Bindings/rtc/rtc-omap.txt vendor/device-tree/dist/Bindings/rtc/rtc-opal.txt vendor/device-tree/dist/Bindings/rtc/twl-rtc.txt vendor/device-tree/dist/Bindings/scsi/hisilicon-sas.txt vendor/device-tree/dist/Bindings/serial/8250.txt vendor/device-tree/dist/Bindings/serial/cdns,uart.txt vendor/device-tree/dist/Bindings/serial/cirrus,clps711x-uart.txt vendor/device-tree/dist/Bindings/serial/mtk-uart.txt vendor/device-tree/dist/Bindings/serial/nvidia,tegra20-hsuart.txt vendor/device-tree/dist/Bindings/serial/qcom,msm-uartdm.txt vendor/device-tree/dist/Bindings/serial/renesas,sci-serial.txt vendor/device-tree/dist/Bindings/soc/mediatek/scpsys.txt vendor/device-tree/dist/Bindings/soc/qcom/qcom,smd.txt vendor/device-tree/dist/Bindings/soc/qcom/qcom,smp2p.txt vendor/device-tree/dist/Bindings/soc/qcom/qcom,smsm.txt vendor/device-tree/dist/Bindings/sound/adi,adau17x1.txt vendor/device-tree/dist/Bindings/sound/bt-sco.txt vendor/device-tree/dist/Bindings/sound/davinci-mcbsp.txt vendor/device-tree/dist/Bindings/sound/designware-i2s.txt vendor/device-tree/dist/Bindings/sound/fsl-asoc-card.txt vendor/device-tree/dist/Bindings/sound/mt8173-rt5650.txt vendor/device-tree/dist/Bindings/sound/omap-abe-twl6040.txt vendor/device-tree/dist/Bindings/sound/qcom,apq8016-sbc.txt vendor/device-tree/dist/Bindings/sound/renesas,rsnd.txt vendor/device-tree/dist/Bindings/sound/rockchip-i2s.txt vendor/device-tree/dist/Bindings/sound/rt5514.txt vendor/device-tree/dist/Bindings/sound/rt5659.txt vendor/device-tree/dist/Bindings/sound/sgtl5000.txt vendor/device-tree/dist/Bindings/sound/simple-card.txt vendor/device-tree/dist/Bindings/sound/st,sti-asoc-card.txt vendor/device-tree/dist/Bindings/sound/sun4i-codec.txt vendor/device-tree/dist/Bindings/sound/sunxi,sun4i-spdif.txt vendor/device-tree/dist/Bindings/sound/tlv320aic31xx.txt vendor/device-tree/dist/Bindings/sound/wm8580.txt vendor/device-tree/dist/Bindings/spi/fsl-imx-cspi.txt vendor/device-tree/dist/Bindings/spi/sh-msiof.txt vendor/device-tree/dist/Bindings/spi/spi-bus.txt vendor/device-tree/dist/Bindings/spi/spi-davinci.txt vendor/device-tree/dist/Bindings/spi/spi-meson.txt vendor/device-tree/dist/Bindings/spi/spi-orion.txt vendor/device-tree/dist/Bindings/spi/spi-rockchip.txt vendor/device-tree/dist/Bindings/spi/spi-samsung.txt vendor/device-tree/dist/Bindings/spi/spi-sun6i.txt vendor/device-tree/dist/Bindings/spi/ti_qspi.txt vendor/device-tree/dist/Bindings/sram/sram.txt vendor/device-tree/dist/Bindings/submitting-patches.txt vendor/device-tree/dist/Bindings/thermal/mediatek-thermal.txt vendor/device-tree/dist/Bindings/thermal/nvidia,tegra124-soctherm.txt vendor/device-tree/dist/Bindings/thermal/rockchip-thermal.txt vendor/device-tree/dist/Bindings/thermal/st-thermal.txt vendor/device-tree/dist/Bindings/thermal/thermal.txt vendor/device-tree/dist/Bindings/timer/allwinner,sun5i-a13-hstimer.txt vendor/device-tree/dist/Bindings/timer/cirrus,clps711x-timer.txt vendor/device-tree/dist/Bindings/timer/moxa,moxart-timer.txt vendor/device-tree/dist/Bindings/ufs/ufs-qcom.txt vendor/device-tree/dist/Bindings/ufs/ufshcd-pltfrm.txt vendor/device-tree/dist/Bindings/usb/atmel-usb.txt vendor/device-tree/dist/Bindings/usb/ci-hdrc-usb2.txt vendor/device-tree/dist/Bindings/usb/dwc2.txt vendor/device-tree/dist/Bindings/usb/dwc3.txt vendor/device-tree/dist/Bindings/usb/generic.txt vendor/device-tree/dist/Bindings/usb/mt8173-xhci.txt vendor/device-tree/dist/Bindings/usb/nvidia,tegra124-xusb.txt vendor/device-tree/dist/Bindings/usb/renesas_usbhs.txt vendor/device-tree/dist/Bindings/usb/usb-ohci.txt vendor/device-tree/dist/Bindings/usb/usb-xhci.txt vendor/device-tree/dist/Bindings/usb/usbmisc-imx.txt vendor/device-tree/dist/Bindings/vendor-prefixes.txt vendor/device-tree/dist/Bindings/watchdog/of-xilinx-wdt.txt vendor/device-tree/dist/Bindings/watchdog/qcom-wdt.txt vendor/device-tree/dist/Bindings/watchdog/renesas-wdt.txt vendor/device-tree/dist/Bindings/watchdog/st_lpc_wdt.txt vendor/device-tree/dist/include/dt-bindings/clock/exynos5410.h vendor/device-tree/dist/include/dt-bindings/clock/exynos5420.h vendor/device-tree/dist/include/dt-bindings/clock/exynos5433.h vendor/device-tree/dist/include/dt-bindings/clock/exynos5440.h vendor/device-tree/dist/include/dt-bindings/clock/hi6220-clock.h vendor/device-tree/dist/include/dt-bindings/clock/imx5-clock.h vendor/device-tree/dist/include/dt-bindings/clock/imx6qdl-clock.h vendor/device-tree/dist/include/dt-bindings/clock/imx6ul-clock.h vendor/device-tree/dist/include/dt-bindings/clock/lpc32xx-clock.h vendor/device-tree/dist/include/dt-bindings/clock/meson8b-clkc.h vendor/device-tree/dist/include/dt-bindings/clock/qcom,gcc-msm8996.h vendor/device-tree/dist/include/dt-bindings/clock/qcom,mmcc-msm8996.h vendor/device-tree/dist/include/dt-bindings/clock/r7s72100-clock.h vendor/device-tree/dist/include/dt-bindings/clock/r8a7794-clock.h vendor/device-tree/dist/include/dt-bindings/clock/rk3188-cru-common.h vendor/device-tree/dist/include/dt-bindings/clock/rk3228-cru.h vendor/device-tree/dist/include/dt-bindings/clock/rk3399-cru.h vendor/device-tree/dist/include/dt-bindings/clock/stih407-clks.h vendor/device-tree/dist/include/dt-bindings/clock/tegra210-car.h vendor/device-tree/dist/include/dt-bindings/input/linux-event-codes.h vendor/device-tree/dist/include/dt-bindings/mfd/qcom-rpm.h vendor/device-tree/dist/include/dt-bindings/pinctrl/at91.h vendor/device-tree/dist/include/dt-bindings/pinctrl/bcm2835.h vendor/device-tree/dist/include/dt-bindings/pinctrl/qcom,pmic-gpio.h vendor/device-tree/dist/include/dt-bindings/pinctrl/qcom,pmic-mpp.h vendor/device-tree/dist/include/dt-bindings/pinctrl/rockchip.h vendor/device-tree/dist/include/dt-bindings/reset/hisi,hi6220-resets.h vendor/device-tree/dist/include/dt-bindings/thermal/tegra124-soctherm.h vendor/device-tree/dist/scripts/merge-new-release.sh vendor/device-tree/dist/src/arm/aks-cdu.dts vendor/device-tree/dist/src/arm/am335x-baltos-ir2110.dts vendor/device-tree/dist/src/arm/am335x-baltos-ir3220.dts vendor/device-tree/dist/src/arm/am335x-baltos-ir5221.dts vendor/device-tree/dist/src/arm/am335x-baltos.dtsi vendor/device-tree/dist/src/arm/am335x-base0033.dts vendor/device-tree/dist/src/arm/am335x-bone-common.dtsi vendor/device-tree/dist/src/arm/am335x-boneblack.dts vendor/device-tree/dist/src/arm/am335x-chilisom.dtsi vendor/device-tree/dist/src/arm/am335x-cm-t335.dts vendor/device-tree/dist/src/arm/am335x-evm.dts vendor/device-tree/dist/src/arm/am335x-evmsk.dts vendor/device-tree/dist/src/arm/am335x-icev2.dts vendor/device-tree/dist/src/arm/am335x-igep0033.dtsi vendor/device-tree/dist/src/arm/am335x-lxm.dts vendor/device-tree/dist/src/arm/am335x-nano.dts vendor/device-tree/dist/src/arm/am335x-pepper.dts vendor/device-tree/dist/src/arm/am335x-phycore-som.dtsi vendor/device-tree/dist/src/arm/am335x-shc.dts vendor/device-tree/dist/src/arm/am335x-sl50.dts vendor/device-tree/dist/src/arm/am335x-wega.dtsi vendor/device-tree/dist/src/arm/am33xx.dtsi vendor/device-tree/dist/src/arm/am3517-craneboard.dts vendor/device-tree/dist/src/arm/am3517-evm.dts vendor/device-tree/dist/src/arm/am3517.dtsi vendor/device-tree/dist/src/arm/am3517_mt_ventoux.dts vendor/device-tree/dist/src/arm/am4372.dtsi vendor/device-tree/dist/src/arm/am437x-cm-t43.dts vendor/device-tree/dist/src/arm/am437x-gp-evm.dts vendor/device-tree/dist/src/arm/am437x-idk-evm.dts vendor/device-tree/dist/src/arm/am437x-sbc-t43.dts vendor/device-tree/dist/src/arm/am437x-sk-evm.dts vendor/device-tree/dist/src/arm/am43x-epos-evm.dts vendor/device-tree/dist/src/arm/am43xx-clocks.dtsi vendor/device-tree/dist/src/arm/am572x-idk.dts vendor/device-tree/dist/src/arm/am57xx-beagle-x15.dts vendor/device-tree/dist/src/arm/am57xx-cl-som-am57x.dts vendor/device-tree/dist/src/arm/am57xx-idk-common.dtsi vendor/device-tree/dist/src/arm/am57xx-sbc-am57x.dts vendor/device-tree/dist/src/arm/animeo_ip.dts vendor/device-tree/dist/src/arm/arm-realview-eb-11mp.dts vendor/device-tree/dist/src/arm/arm-realview-eb.dtsi vendor/device-tree/dist/src/arm/arm-realview-pbx-a9.dts vendor/device-tree/dist/src/arm/armada-370-db.dts vendor/device-tree/dist/src/arm/armada-370-dlink-dns327l.dts vendor/device-tree/dist/src/arm/armada-370-mirabox.dts vendor/device-tree/dist/src/arm/armada-370-netgear-rn102.dts vendor/device-tree/dist/src/arm/armada-370-netgear-rn104.dts vendor/device-tree/dist/src/arm/armada-370-rd.dts vendor/device-tree/dist/src/arm/armada-370-seagate-nas-4bay.dts vendor/device-tree/dist/src/arm/armada-370-seagate-nas-xbay.dtsi vendor/device-tree/dist/src/arm/armada-370-seagate-personal-cloud.dtsi vendor/device-tree/dist/src/arm/armada-370-synology-ds213j.dts vendor/device-tree/dist/src/arm/armada-370-xp.dtsi vendor/device-tree/dist/src/arm/armada-370.dtsi vendor/device-tree/dist/src/arm/armada-375-db.dts vendor/device-tree/dist/src/arm/armada-375.dtsi vendor/device-tree/dist/src/arm/armada-385-db-ap.dts vendor/device-tree/dist/src/arm/armada-385-linksys.dtsi vendor/device-tree/dist/src/arm/armada-388-clearfog.dts vendor/device-tree/dist/src/arm/armada-388-db.dts vendor/device-tree/dist/src/arm/armada-388-gp.dts vendor/device-tree/dist/src/arm/armada-388-rd.dts vendor/device-tree/dist/src/arm/armada-38x.dtsi vendor/device-tree/dist/src/arm/armada-390.dtsi vendor/device-tree/dist/src/arm/armada-398-db.dts vendor/device-tree/dist/src/arm/armada-398.dtsi vendor/device-tree/dist/src/arm/armada-39x.dtsi vendor/device-tree/dist/src/arm/armada-xp-axpwifiap.dts vendor/device-tree/dist/src/arm/armada-xp-db.dts vendor/device-tree/dist/src/arm/armada-xp-gp.dts vendor/device-tree/dist/src/arm/armada-xp-lenovo-ix4-300d.dts vendor/device-tree/dist/src/arm/armada-xp-linksys-mamba.dts vendor/device-tree/dist/src/arm/armada-xp-matrix.dts vendor/device-tree/dist/src/arm/armada-xp-mv78230.dtsi vendor/device-tree/dist/src/arm/armada-xp-mv78260.dtsi vendor/device-tree/dist/src/arm/armada-xp-mv78460.dtsi vendor/device-tree/dist/src/arm/armada-xp-netgear-rn2120.dts vendor/device-tree/dist/src/arm/armada-xp-openblocks-ax3-4.dts vendor/device-tree/dist/src/arm/armada-xp-synology-ds414.dts vendor/device-tree/dist/src/arm/armada-xp.dtsi vendor/device-tree/dist/src/arm/armv7-m.dtsi vendor/device-tree/dist/src/arm/artpec6-devboard.dts vendor/device-tree/dist/src/arm/artpec6.dtsi vendor/device-tree/dist/src/arm/at91-ariag25.dts vendor/device-tree/dist/src/arm/at91-cosino.dtsi vendor/device-tree/dist/src/arm/at91-foxg20.dts vendor/device-tree/dist/src/arm/at91-kizbox.dts vendor/device-tree/dist/src/arm/at91-qil_a9260.dts vendor/device-tree/dist/src/arm/at91-sama5d2_xplained.dts vendor/device-tree/dist/src/arm/at91-sama5d3_xplained.dts vendor/device-tree/dist/src/arm/at91-sama5d4_ma5d4.dtsi vendor/device-tree/dist/src/arm/at91-sama5d4_ma5d4evk.dts vendor/device-tree/dist/src/arm/at91-sama5d4_xplained.dts vendor/device-tree/dist/src/arm/at91-sama5d4ek.dts vendor/device-tree/dist/src/arm/at91-vinco.dts vendor/device-tree/dist/src/arm/at91rm9200.dtsi vendor/device-tree/dist/src/arm/at91sam9260.dtsi vendor/device-tree/dist/src/arm/at91sam9261.dtsi vendor/device-tree/dist/src/arm/at91sam9263.dtsi vendor/device-tree/dist/src/arm/at91sam9263ek.dts vendor/device-tree/dist/src/arm/at91sam9g20ek_common.dtsi vendor/device-tree/dist/src/arm/at91sam9g25ek.dts vendor/device-tree/dist/src/arm/at91sam9g45.dtsi vendor/device-tree/dist/src/arm/at91sam9n12.dtsi vendor/device-tree/dist/src/arm/at91sam9rl.dtsi vendor/device-tree/dist/src/arm/at91sam9rlek.dts vendor/device-tree/dist/src/arm/at91sam9x5.dtsi vendor/device-tree/dist/src/arm/at91sam9x5ek.dtsi vendor/device-tree/dist/src/arm/axp209.dtsi vendor/device-tree/dist/src/arm/axp22x.dtsi vendor/device-tree/dist/src/arm/bcm-cygnus.dtsi vendor/device-tree/dist/src/arm/bcm-nsp.dtsi vendor/device-tree/dist/src/arm/bcm11351.dtsi vendor/device-tree/dist/src/arm/bcm21664.dtsi vendor/device-tree/dist/src/arm/bcm2835-rpi-a-plus.dts vendor/device-tree/dist/src/arm/bcm2835-rpi-a.dts vendor/device-tree/dist/src/arm/bcm2835-rpi-b-plus.dts vendor/device-tree/dist/src/arm/bcm2835-rpi-b-rev2.dts vendor/device-tree/dist/src/arm/bcm2835-rpi-b.dts vendor/device-tree/dist/src/arm/bcm2835-rpi.dtsi vendor/device-tree/dist/src/arm/bcm2835.dtsi vendor/device-tree/dist/src/arm/bcm2836-rpi-2-b.dts vendor/device-tree/dist/src/arm/bcm2836.dtsi vendor/device-tree/dist/src/arm/bcm283x.dtsi vendor/device-tree/dist/src/arm/bcm4708-buffalo-wzr-1750dhp.dts vendor/device-tree/dist/src/arm/bcm4708-netgear-r6250.dts vendor/device-tree/dist/src/arm/bcm4708-netgear-r6300-v2.dts vendor/device-tree/dist/src/arm/bcm4708-smartrg-sr400ac.dts vendor/device-tree/dist/src/arm/bcm4709-asus-rt-ac87u.dts vendor/device-tree/dist/src/arm/bcm4709-buffalo-wxr-1900dhp.dts vendor/device-tree/dist/src/arm/bcm4709-netgear-r7000.dts vendor/device-tree/dist/src/arm/bcm4709-netgear-r8000.dts vendor/device-tree/dist/src/arm/bcm47094-dlink-dir-885l.dts vendor/device-tree/dist/src/arm/bcm5301x-nand-cs0-bch8.dtsi vendor/device-tree/dist/src/arm/bcm5301x.dtsi vendor/device-tree/dist/src/arm/bcm958625k.dts vendor/device-tree/dist/src/arm/berlin2-sony-nsz-gs7.dts vendor/device-tree/dist/src/arm/berlin2.dtsi vendor/device-tree/dist/src/arm/berlin2cd-google-chromecast.dts vendor/device-tree/dist/src/arm/berlin2cd.dtsi vendor/device-tree/dist/src/arm/berlin2q-marvell-dmp.dts vendor/device-tree/dist/src/arm/berlin2q.dtsi vendor/device-tree/dist/src/arm/compulab-sb-som.dtsi vendor/device-tree/dist/src/arm/da850-evm.dts vendor/device-tree/dist/src/arm/da850.dtsi vendor/device-tree/dist/src/arm/dm8148-evm.dts vendor/device-tree/dist/src/arm/dm8148-t410.dts vendor/device-tree/dist/src/arm/dm814x.dtsi vendor/device-tree/dist/src/arm/dm8168-evm.dts vendor/device-tree/dist/src/arm/dm816x.dtsi vendor/device-tree/dist/src/arm/dra62x-j5eco-evm.dts vendor/device-tree/dist/src/arm/dra7-evm.dts vendor/device-tree/dist/src/arm/dra7.dtsi vendor/device-tree/dist/src/arm/dra72-evm-common.dtsi vendor/device-tree/dist/src/arm/dra72-evm-revc.dts vendor/device-tree/dist/src/arm/dra72-evm.dts vendor/device-tree/dist/src/arm/dra72x.dtsi vendor/device-tree/dist/src/arm/dra74x.dtsi vendor/device-tree/dist/src/arm/dra7xx-clocks.dtsi vendor/device-tree/dist/src/arm/efm32gg-dk3750.dts vendor/device-tree/dist/src/arm/efm32gg.dtsi vendor/device-tree/dist/src/arm/emev2-kzm9d.dts vendor/device-tree/dist/src/arm/emev2.dtsi vendor/device-tree/dist/src/arm/ethernut5.dts vendor/device-tree/dist/src/arm/evk-pro3.dts vendor/device-tree/dist/src/arm/exynos3250-artik5-eval.dts vendor/device-tree/dist/src/arm/exynos3250-artik5.dtsi vendor/device-tree/dist/src/arm/exynos3250-monk.dts vendor/device-tree/dist/src/arm/exynos3250-pinctrl.dtsi vendor/device-tree/dist/src/arm/exynos3250-rinato.dts vendor/device-tree/dist/src/arm/exynos3250.dtsi vendor/device-tree/dist/src/arm/exynos4.dtsi vendor/device-tree/dist/src/arm/exynos4210-origen.dts vendor/device-tree/dist/src/arm/exynos4210-pinctrl.dtsi vendor/device-tree/dist/src/arm/exynos4210-smdkv310.dts vendor/device-tree/dist/src/arm/exynos4210-trats.dts vendor/device-tree/dist/src/arm/exynos4210-universal_c210.dts vendor/device-tree/dist/src/arm/exynos4210.dtsi vendor/device-tree/dist/src/arm/exynos4412-odroid-common.dtsi vendor/device-tree/dist/src/arm/exynos4412-odroidu3.dts vendor/device-tree/dist/src/arm/exynos4412-odroidx.dts vendor/device-tree/dist/src/arm/exynos4412-odroidx2.dts vendor/device-tree/dist/src/arm/exynos4412-origen.dts vendor/device-tree/dist/src/arm/exynos4412-smdk4412.dts vendor/device-tree/dist/src/arm/exynos4412-tiny4412.dts vendor/device-tree/dist/src/arm/exynos4412-trats2.dts vendor/device-tree/dist/src/arm/exynos4x12-pinctrl.dtsi vendor/device-tree/dist/src/arm/exynos4x12.dtsi vendor/device-tree/dist/src/arm/exynos5.dtsi vendor/device-tree/dist/src/arm/exynos5250-arndale.dts vendor/device-tree/dist/src/arm/exynos5250-pinctrl.dtsi vendor/device-tree/dist/src/arm/exynos5250-smdk5250.dts vendor/device-tree/dist/src/arm/exynos5250-snow-common.dtsi vendor/device-tree/dist/src/arm/exynos5250-snow-rev5.dts vendor/device-tree/dist/src/arm/exynos5250-snow.dts vendor/device-tree/dist/src/arm/exynos5250-spring.dts vendor/device-tree/dist/src/arm/exynos5250.dtsi vendor/device-tree/dist/src/arm/exynos5260-pinctrl.dtsi vendor/device-tree/dist/src/arm/exynos5260-xyref5260.dts vendor/device-tree/dist/src/arm/exynos5260.dtsi vendor/device-tree/dist/src/arm/exynos5410-pinctrl.dtsi vendor/device-tree/dist/src/arm/exynos5410-smdk5410.dts vendor/device-tree/dist/src/arm/exynos5410.dtsi vendor/device-tree/dist/src/arm/exynos5420-arndale-octa.dts vendor/device-tree/dist/src/arm/exynos5420-peach-pit.dts vendor/device-tree/dist/src/arm/exynos5420-pinctrl.dtsi vendor/device-tree/dist/src/arm/exynos5420-smdk5420.dts vendor/device-tree/dist/src/arm/exynos5420.dtsi vendor/device-tree/dist/src/arm/exynos5422-odroidxu3-common.dtsi vendor/device-tree/dist/src/arm/exynos5422-odroidxu3-lite.dts vendor/device-tree/dist/src/arm/exynos5422-odroidxu3.dts vendor/device-tree/dist/src/arm/exynos5440-sd5v1.dts vendor/device-tree/dist/src/arm/exynos5440-ssdk5440.dts vendor/device-tree/dist/src/arm/exynos5440.dtsi vendor/device-tree/dist/src/arm/exynos5800-peach-pi.dts vendor/device-tree/dist/src/arm/ge863-pro3.dtsi vendor/device-tree/dist/src/arm/hi3620.dtsi vendor/device-tree/dist/src/arm/hip01.dtsi vendor/device-tree/dist/src/arm/hisi-x5hd2.dtsi vendor/device-tree/dist/src/arm/imx1-ads.dts vendor/device-tree/dist/src/arm/imx1-apf9328.dts vendor/device-tree/dist/src/arm/imx1.dtsi vendor/device-tree/dist/src/arm/imx23.dtsi vendor/device-tree/dist/src/arm/imx25-eukrea-mbimxsd25-baseboard.dts vendor/device-tree/dist/src/arm/imx25-pdk.dts vendor/device-tree/dist/src/arm/imx25-pinfunc.h vendor/device-tree/dist/src/arm/imx25.dtsi vendor/device-tree/dist/src/arm/imx27-eukrea-cpuimx27.dtsi vendor/device-tree/dist/src/arm/imx27-eukrea-mbimxsd27-baseboard.dts vendor/device-tree/dist/src/arm/imx27-pdk.dts vendor/device-tree/dist/src/arm/imx27-phytec-phycard-s-rdk.dts vendor/device-tree/dist/src/arm/imx27-phytec-phycore-rdk.dts vendor/device-tree/dist/src/arm/imx27.dtsi vendor/device-tree/dist/src/arm/imx28-apf28dev.dts vendor/device-tree/dist/src/arm/imx28-cfa10049.dts vendor/device-tree/dist/src/arm/imx28-eukrea-mbmx28lc.dtsi vendor/device-tree/dist/src/arm/imx28-evk.dts vendor/device-tree/dist/src/arm/imx28-m28.dtsi vendor/device-tree/dist/src/arm/imx28-m28evk.dts vendor/device-tree/dist/src/arm/imx28-tx28.dts vendor/device-tree/dist/src/arm/imx28.dtsi vendor/device-tree/dist/src/arm/imx31-bug.dts vendor/device-tree/dist/src/arm/imx31.dtsi vendor/device-tree/dist/src/arm/imx35-eukrea-mbimxsd35-baseboard.dts vendor/device-tree/dist/src/arm/imx35-pdk.dts vendor/device-tree/dist/src/arm/imx35.dtsi vendor/device-tree/dist/src/arm/imx50.dtsi vendor/device-tree/dist/src/arm/imx51-babbage.dts vendor/device-tree/dist/src/arm/imx51-eukrea-mbimxsd51-baseboard.dts vendor/device-tree/dist/src/arm/imx51-ts4800.dts vendor/device-tree/dist/src/arm/imx51.dtsi vendor/device-tree/dist/src/arm/imx53-m53.dtsi vendor/device-tree/dist/src/arm/imx53-m53evk.dts vendor/device-tree/dist/src/arm/imx53-qsb.dts vendor/device-tree/dist/src/arm/imx53-smd.dts vendor/device-tree/dist/src/arm/imx53-tqma53.dtsi vendor/device-tree/dist/src/arm/imx53-tx53.dtsi vendor/device-tree/dist/src/arm/imx53.dtsi vendor/device-tree/dist/src/arm/imx6dl-riotboard.dts vendor/device-tree/dist/src/arm/imx6dl-tx6dl-comtft.dts vendor/device-tree/dist/src/arm/imx6dl-tx6u-801x.dts vendor/device-tree/dist/src/arm/imx6dl.dtsi vendor/device-tree/dist/src/arm/imx6q-apalis-ixora.dts vendor/device-tree/dist/src/arm/imx6q-arm2.dts vendor/device-tree/dist/src/arm/imx6q-b450v3.dts vendor/device-tree/dist/src/arm/imx6q-b650v3.dts vendor/device-tree/dist/src/arm/imx6q-ba16.dtsi vendor/device-tree/dist/src/arm/imx6q-bx50v3.dtsi vendor/device-tree/dist/src/arm/imx6q-cm-fx6.dts vendor/device-tree/dist/src/arm/imx6q-dmo-edmqmx6.dts vendor/device-tree/dist/src/arm/imx6q-evi.dts vendor/device-tree/dist/src/arm/imx6q-gw5400-a.dts vendor/device-tree/dist/src/arm/imx6q-marsboard.dts vendor/device-tree/dist/src/arm/imx6q-novena.dts vendor/device-tree/dist/src/arm/imx6q-phytec-pbab01.dts vendor/device-tree/dist/src/arm/imx6q-sbc6x.dts vendor/device-tree/dist/src/arm/imx6q-tbs2910.dts vendor/device-tree/dist/src/arm/imx6q-tx6q-1010-comtft.dts vendor/device-tree/dist/src/arm/imx6q-tx6q-1010.dts vendor/device-tree/dist/src/arm/imx6q-tx6q-1020-comtft.dts vendor/device-tree/dist/src/arm/imx6q-tx6q-1020.dts vendor/device-tree/dist/src/arm/imx6q.dtsi vendor/device-tree/dist/src/arm/imx6qdl-apalis.dtsi vendor/device-tree/dist/src/arm/imx6qdl-apf6dev.dtsi vendor/device-tree/dist/src/arm/imx6qdl-aristainetos.dtsi vendor/device-tree/dist/src/arm/imx6qdl-aristainetos2.dtsi vendor/device-tree/dist/src/arm/imx6qdl-dfi-fs700-m60.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw51xx.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw52xx.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw53xx.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw54xx.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw551x.dtsi vendor/device-tree/dist/src/arm/imx6qdl-gw552x.dtsi vendor/device-tree/dist/src/arm/imx6qdl-icore-rqs.dtsi vendor/device-tree/dist/src/arm/imx6qdl-microsom.dtsi vendor/device-tree/dist/src/arm/imx6qdl-nit6xlite.dtsi vendor/device-tree/dist/src/arm/imx6qdl-nitrogen6_max.dtsi vendor/device-tree/dist/src/arm/imx6qdl-nitrogen6x.dtsi vendor/device-tree/dist/src/arm/imx6qdl-phytec-pfla02.dtsi vendor/device-tree/dist/src/arm/imx6qdl-rex.dtsi vendor/device-tree/dist/src/arm/imx6qdl-sabreauto.dtsi vendor/device-tree/dist/src/arm/imx6qdl-sabrelite.dtsi vendor/device-tree/dist/src/arm/imx6qdl-sabresd.dtsi vendor/device-tree/dist/src/arm/imx6qdl-tx6.dtsi vendor/device-tree/dist/src/arm/imx6qdl-udoo.dtsi vendor/device-tree/dist/src/arm/imx6qdl-wandboard-revb1.dtsi vendor/device-tree/dist/src/arm/imx6qdl-wandboard.dtsi vendor/device-tree/dist/src/arm/imx6qdl.dtsi vendor/device-tree/dist/src/arm/imx6qp.dtsi vendor/device-tree/dist/src/arm/imx6sl-warp.dts vendor/device-tree/dist/src/arm/imx6sl.dtsi vendor/device-tree/dist/src/arm/imx6sx-nitrogen6sx.dts vendor/device-tree/dist/src/arm/imx6sx-pinfunc.h vendor/device-tree/dist/src/arm/imx6sx-sabreauto.dts vendor/device-tree/dist/src/arm/imx6sx-sdb.dtsi vendor/device-tree/dist/src/arm/imx6sx.dtsi vendor/device-tree/dist/src/arm/imx6ul-14x14-evk.dts vendor/device-tree/dist/src/arm/imx6ul-pico-hobbit.dts vendor/device-tree/dist/src/arm/imx6ul-tx6ul-mainboard.dts vendor/device-tree/dist/src/arm/imx6ul-tx6ul.dtsi vendor/device-tree/dist/src/arm/imx6ul.dtsi vendor/device-tree/dist/src/arm/imx7d-cl-som-imx7.dts vendor/device-tree/dist/src/arm/imx7d-nitrogen7.dts vendor/device-tree/dist/src/arm/imx7d-pinfunc.h vendor/device-tree/dist/src/arm/imx7d-sdb.dts vendor/device-tree/dist/src/arm/imx7d.dtsi vendor/device-tree/dist/src/arm/integratorap.dts vendor/device-tree/dist/src/arm/integratorcp.dts vendor/device-tree/dist/src/arm/keystone-k2e-evm.dts vendor/device-tree/dist/src/arm/keystone-k2e.dtsi vendor/device-tree/dist/src/arm/keystone-k2g-evm.dts vendor/device-tree/dist/src/arm/keystone-k2g.dtsi vendor/device-tree/dist/src/arm/keystone-k2hk-evm.dts vendor/device-tree/dist/src/arm/keystone-k2l-evm.dts vendor/device-tree/dist/src/arm/keystone-k2l.dtsi vendor/device-tree/dist/src/arm/keystone.dtsi vendor/device-tree/dist/src/arm/kirkwood-ib62x0.dts vendor/device-tree/dist/src/arm/kirkwood-ns2lite.dts vendor/device-tree/dist/src/arm/kirkwood-openblocks_a6.dts vendor/device-tree/dist/src/arm/kirkwood-openrd.dtsi vendor/device-tree/dist/src/arm/kirkwood-topkick.dts vendor/device-tree/dist/src/arm/logicpd-som-lv-37xx-devkit.dts vendor/device-tree/dist/src/arm/logicpd-som-lv.dtsi vendor/device-tree/dist/src/arm/logicpd-torpedo-37xx-devkit.dts vendor/device-tree/dist/src/arm/logicpd-torpedo-som.dtsi vendor/device-tree/dist/src/arm/lpc18xx.dtsi vendor/device-tree/dist/src/arm/lpc32xx.dtsi vendor/device-tree/dist/src/arm/lpc4337-ciaa.dts vendor/device-tree/dist/src/arm/lpc4350-hitex-eval.dts vendor/device-tree/dist/src/arm/lpc4357-ea4357-devkit.dts vendor/device-tree/dist/src/arm/ls1021a-twr.dts vendor/device-tree/dist/src/arm/ls1021a.dtsi vendor/device-tree/dist/src/arm/meson8-minix-neo-x8.dts vendor/device-tree/dist/src/arm/meson8b.dtsi vendor/device-tree/dist/src/arm/mpa1600.dts vendor/device-tree/dist/src/arm/mps2-an385.dts vendor/device-tree/dist/src/arm/mps2-an399.dts vendor/device-tree/dist/src/arm/mps2.dtsi vendor/device-tree/dist/src/arm/mt2701.dtsi vendor/device-tree/dist/src/arm/omap2.dtsi vendor/device-tree/dist/src/arm/omap2420-h4.dts vendor/device-tree/dist/src/arm/omap2420-n8x0-common.dtsi vendor/device-tree/dist/src/arm/omap2420.dtsi vendor/device-tree/dist/src/arm/omap2430-sdp.dts vendor/device-tree/dist/src/arm/omap2430.dtsi vendor/device-tree/dist/src/arm/omap24xx-clocks.dtsi vendor/device-tree/dist/src/arm/omap3-beagle-xm.dts vendor/device-tree/dist/src/arm/omap3-beagle.dts vendor/device-tree/dist/src/arm/omap3-cm-t3x.dtsi vendor/device-tree/dist/src/arm/omap3-devkit8000-common.dtsi vendor/device-tree/dist/src/arm/omap3-devkit8000-lcd-common.dtsi vendor/device-tree/dist/src/arm/omap3-devkit8000-lcd43.dts vendor/device-tree/dist/src/arm/omap3-devkit8000-lcd70.dts vendor/device-tree/dist/src/arm/omap3-evm-37xx.dts vendor/device-tree/dist/src/arm/omap3-evm.dts vendor/device-tree/dist/src/arm/omap3-gta04.dtsi vendor/device-tree/dist/src/arm/omap3-ha-lcd.dts vendor/device-tree/dist/src/arm/omap3-igep.dtsi vendor/device-tree/dist/src/arm/omap3-igep0020-common.dtsi vendor/device-tree/dist/src/arm/omap3-ldp.dts vendor/device-tree/dist/src/arm/omap3-lilly-a83x.dtsi vendor/device-tree/dist/src/arm/omap3-n900.dts vendor/device-tree/dist/src/arm/omap3-n950-n9.dtsi vendor/device-tree/dist/src/arm/omap3-overo-alto35-common.dtsi vendor/device-tree/dist/src/arm/omap3-overo-base.dtsi vendor/device-tree/dist/src/arm/omap3-overo-chestnut43-common.dtsi vendor/device-tree/dist/src/arm/omap3-overo-common-dvi.dtsi vendor/device-tree/dist/src/arm/omap3-overo-common-lcd35.dtsi vendor/device-tree/dist/src/arm/omap3-overo-common-lcd43.dtsi vendor/device-tree/dist/src/arm/omap3-overo-gallop43-common.dtsi vendor/device-tree/dist/src/arm/omap3-overo-palo35-common.dtsi vendor/device-tree/dist/src/arm/omap3-overo-palo43-common.dtsi vendor/device-tree/dist/src/arm/omap3-overo-tobi-common.dtsi vendor/device-tree/dist/src/arm/omap3-overo-tobiduo-common.dtsi vendor/device-tree/dist/src/arm/omap3-pandora-common.dtsi vendor/device-tree/dist/src/arm/omap3-sb-t35.dtsi vendor/device-tree/dist/src/arm/omap3-sniper.dts vendor/device-tree/dist/src/arm/omap3-tao3530.dtsi vendor/device-tree/dist/src/arm/omap3-thunder.dts vendor/device-tree/dist/src/arm/omap3-zoom3.dts vendor/device-tree/dist/src/arm/omap3.dtsi vendor/device-tree/dist/src/arm/omap3430-sdp.dts vendor/device-tree/dist/src/arm/omap34xx.dtsi vendor/device-tree/dist/src/arm/omap36xx.dtsi vendor/device-tree/dist/src/arm/omap4-duovero-parlor.dts vendor/device-tree/dist/src/arm/omap4-duovero.dtsi vendor/device-tree/dist/src/arm/omap4-kc1.dts vendor/device-tree/dist/src/arm/omap4-panda-common.dtsi vendor/device-tree/dist/src/arm/omap4-sdp.dts vendor/device-tree/dist/src/arm/omap4-var-om44customboard.dtsi vendor/device-tree/dist/src/arm/omap4-var-som-om44.dtsi vendor/device-tree/dist/src/arm/omap4.dtsi vendor/device-tree/dist/src/arm/omap5-board-common.dtsi vendor/device-tree/dist/src/arm/omap5-cm-t54.dts vendor/device-tree/dist/src/arm/omap5-igep0050.dts vendor/device-tree/dist/src/arm/omap5-uevm.dts vendor/device-tree/dist/src/arm/omap5.dtsi vendor/device-tree/dist/src/arm/orion5x-linkstation-lsgl.dts vendor/device-tree/dist/src/arm/orion5x.dtsi vendor/device-tree/dist/src/arm/pm9g45.dts vendor/device-tree/dist/src/arm/pxa27x.dtsi vendor/device-tree/dist/src/arm/pxa2xx.dtsi vendor/device-tree/dist/src/arm/pxa3xx.dtsi vendor/device-tree/dist/src/arm/qcom-apq8064-asus-nexus7-flo.dts vendor/device-tree/dist/src/arm/qcom-apq8064-ifc6410.dts vendor/device-tree/dist/src/arm/qcom-apq8064-pins.dtsi vendor/device-tree/dist/src/arm/qcom-apq8064-sony-xperia-yuga.dts vendor/device-tree/dist/src/arm/qcom-apq8064.dtsi vendor/device-tree/dist/src/arm/qcom-apq8074-dragonboard.dts vendor/device-tree/dist/src/arm/qcom-apq8084.dtsi vendor/device-tree/dist/src/arm/qcom-ipq4019.dtsi vendor/device-tree/dist/src/arm/qcom-ipq8064-ap148.dts vendor/device-tree/dist/src/arm/qcom-ipq8064.dtsi vendor/device-tree/dist/src/arm/qcom-msm8660-surf.dts vendor/device-tree/dist/src/arm/qcom-msm8660.dtsi vendor/device-tree/dist/src/arm/qcom-msm8960.dtsi vendor/device-tree/dist/src/arm/qcom-msm8974-sony-xperia-honami.dts vendor/device-tree/dist/src/arm/qcom-msm8974.dtsi vendor/device-tree/dist/src/arm/qcom-pm8941.dtsi vendor/device-tree/dist/src/arm/qcom-pma8084.dtsi vendor/device-tree/dist/src/arm/r7s72100-genmai.dts vendor/device-tree/dist/src/arm/r7s72100.dtsi vendor/device-tree/dist/src/arm/r8a73a4-ape6evm.dts vendor/device-tree/dist/src/arm/r8a73a4.dtsi vendor/device-tree/dist/src/arm/r8a7740-armadillo800eva.dts vendor/device-tree/dist/src/arm/r8a7740.dtsi vendor/device-tree/dist/src/arm/r8a7778-bockw.dts vendor/device-tree/dist/src/arm/r8a7778.dtsi vendor/device-tree/dist/src/arm/r8a7779-marzen.dts vendor/device-tree/dist/src/arm/r8a7779.dtsi vendor/device-tree/dist/src/arm/r8a7790-lager.dts vendor/device-tree/dist/src/arm/r8a7790.dtsi vendor/device-tree/dist/src/arm/r8a7791-koelsch.dts vendor/device-tree/dist/src/arm/r8a7791-porter.dts vendor/device-tree/dist/src/arm/r8a7791.dtsi vendor/device-tree/dist/src/arm/r8a7793-gose.dts vendor/device-tree/dist/src/arm/r8a7793.dtsi vendor/device-tree/dist/src/arm/r8a7794-alt.dts vendor/device-tree/dist/src/arm/r8a7794-silk.dts vendor/device-tree/dist/src/arm/r8a7794.dtsi vendor/device-tree/dist/src/arm/rk3036-evb.dts vendor/device-tree/dist/src/arm/rk3036-kylin.dts vendor/device-tree/dist/src/arm/rk3036.dtsi vendor/device-tree/dist/src/arm/rk3066a-bqcurie2.dts vendor/device-tree/dist/src/arm/rk3066a-marsboard.dts vendor/device-tree/dist/src/arm/rk3066a-rayeager.dts vendor/device-tree/dist/src/arm/rk3066a.dtsi vendor/device-tree/dist/src/arm/rk3188-radxarock.dts vendor/device-tree/dist/src/arm/rk3188.dtsi vendor/device-tree/dist/src/arm/rk3228-evb.dts vendor/device-tree/dist/src/arm/rk3288-evb-act8846.dts vendor/device-tree/dist/src/arm/rk3288-evb-rk808.dts vendor/device-tree/dist/src/arm/rk3288-evb.dtsi vendor/device-tree/dist/src/arm/rk3288-firefly.dtsi vendor/device-tree/dist/src/arm/rk3288-miqi.dts vendor/device-tree/dist/src/arm/rk3288-popmetal.dts vendor/device-tree/dist/src/arm/rk3288-r89.dts vendor/device-tree/dist/src/arm/rk3288-rock2-som.dtsi vendor/device-tree/dist/src/arm/rk3288-veyron-chromebook.dtsi vendor/device-tree/dist/src/arm/rk3288-veyron.dtsi vendor/device-tree/dist/src/arm/rk3288.dtsi vendor/device-tree/dist/src/arm/rk3xxx.dtsi vendor/device-tree/dist/src/arm/s3c2416-pinctrl.dtsi vendor/device-tree/dist/src/arm/s3c6410-mini6410.dts vendor/device-tree/dist/src/arm/s3c64xx-pinctrl.dtsi vendor/device-tree/dist/src/arm/s5pv210-aquila.dts vendor/device-tree/dist/src/arm/s5pv210-goni.dts vendor/device-tree/dist/src/arm/s5pv210-pinctrl.dtsi vendor/device-tree/dist/src/arm/s5pv210-smdkc110.dts vendor/device-tree/dist/src/arm/s5pv210-smdkv210.dts vendor/device-tree/dist/src/arm/s5pv210-torbreck.dts vendor/device-tree/dist/src/arm/s5pv210.dtsi vendor/device-tree/dist/src/arm/sama5d2.dtsi vendor/device-tree/dist/src/arm/sama5d3.dtsi vendor/device-tree/dist/src/arm/sama5d31ek.dts vendor/device-tree/dist/src/arm/sama5d33ek.dts vendor/device-tree/dist/src/arm/sama5d34ek.dts vendor/device-tree/dist/src/arm/sama5d35ek.dts vendor/device-tree/dist/src/arm/sama5d36ek.dts vendor/device-tree/dist/src/arm/sama5d3xcm.dtsi vendor/device-tree/dist/src/arm/sama5d3xmb.dtsi vendor/device-tree/dist/src/arm/sama5d4.dtsi vendor/device-tree/dist/src/arm/sh73a0-kzm9g.dts vendor/device-tree/dist/src/arm/sh73a0.dtsi vendor/device-tree/dist/src/arm/skeleton.dtsi vendor/device-tree/dist/src/arm/socfpga.dtsi vendor/device-tree/dist/src/arm/socfpga_arria10.dtsi vendor/device-tree/dist/src/arm/socfpga_arria10_socdk.dtsi vendor/device-tree/dist/src/arm/socfpga_arria10_socdk_sdmmc.dts vendor/device-tree/dist/src/arm/socfpga_arria5_socdk.dts vendor/device-tree/dist/src/arm/socfpga_cyclone5_de0_sockit.dts vendor/device-tree/dist/src/arm/socfpga_cyclone5_mcv.dtsi vendor/device-tree/dist/src/arm/socfpga_cyclone5_mcvevk.dts vendor/device-tree/dist/src/arm/socfpga_cyclone5_socdk.dts vendor/device-tree/dist/src/arm/socfpga_cyclone5_sockit.dts vendor/device-tree/dist/src/arm/socfpga_cyclone5_socrates.dts vendor/device-tree/dist/src/arm/socfpga_cyclone5_vining_fpga.dts vendor/device-tree/dist/src/arm/spear13xx.dtsi vendor/device-tree/dist/src/arm/ste-dbx5x0.dtsi vendor/device-tree/dist/src/arm/ste-href-tvk1281618.dtsi vendor/device-tree/dist/src/arm/ste-href.dtsi vendor/device-tree/dist/src/arm/ste-hrefv60plus.dtsi vendor/device-tree/dist/src/arm/ste-nomadik-nhk15.dts vendor/device-tree/dist/src/arm/ste-nomadik-stn8815.dtsi vendor/device-tree/dist/src/arm/ste-snowball.dts vendor/device-tree/dist/src/arm/stih407-clock.dtsi vendor/device-tree/dist/src/arm/stih407-family.dtsi vendor/device-tree/dist/src/arm/stih407-pinctrl.dtsi vendor/device-tree/dist/src/arm/stih407.dtsi vendor/device-tree/dist/src/arm/stih410-clock.dtsi vendor/device-tree/dist/src/arm/stih410.dtsi vendor/device-tree/dist/src/arm/stih418-b2199.dts vendor/device-tree/dist/src/arm/stih418-clock.dtsi vendor/device-tree/dist/src/arm/stihxxx-b2120.dtsi vendor/device-tree/dist/src/arm/stm32429i-eval.dts vendor/device-tree/dist/src/arm/stm32f429-disco.dts vendor/device-tree/dist/src/arm/stm32f429.dtsi vendor/device-tree/dist/src/arm/stm32f469-disco.dts vendor/device-tree/dist/src/arm/sun4i-a10-a1000.dts vendor/device-tree/dist/src/arm/sun4i-a10-ba10-tvbox.dts vendor/device-tree/dist/src/arm/sun4i-a10-hackberry.dts vendor/device-tree/dist/src/arm/sun4i-a10-jesurun-q5.dts vendor/device-tree/dist/src/arm/sun4i-a10.dtsi vendor/device-tree/dist/src/arm/sun5i-a10s-auxtek-t004.dts vendor/device-tree/dist/src/arm/sun5i-a10s-mk802.dts vendor/device-tree/dist/src/arm/sun5i-a10s-olinuxino-micro.dts vendor/device-tree/dist/src/arm/sun5i-a10s-wobo-i5.dts vendor/device-tree/dist/src/arm/sun5i-a10s.dtsi vendor/device-tree/dist/src/arm/sun5i-a13-difrnce-dit4350.dts vendor/device-tree/dist/src/arm/sun5i-a13-inet-98v-rev2.dts vendor/device-tree/dist/src/arm/sun5i-a13-olinuxino.dts vendor/device-tree/dist/src/arm/sun5i-a13-q8-tablet.dts vendor/device-tree/dist/src/arm/sun5i-a13-utoo-p66.dts vendor/device-tree/dist/src/arm/sun5i-a13.dtsi vendor/device-tree/dist/src/arm/sun5i-r8-chip.dts vendor/device-tree/dist/src/arm/sun5i-r8.dtsi vendor/device-tree/dist/src/arm/sun5i.dtsi vendor/device-tree/dist/src/arm/sun6i-a31-hummingbird.dts vendor/device-tree/dist/src/arm/sun6i-a31-m9.dts vendor/device-tree/dist/src/arm/sun6i-a31-mele-a1000g-quad.dts vendor/device-tree/dist/src/arm/sun6i-a31.dtsi vendor/device-tree/dist/src/arm/sun6i-a31s-colorfly-e708-q1.dts vendor/device-tree/dist/src/arm/sun6i-a31s-sina31s.dts vendor/device-tree/dist/src/arm/sun6i-a31s.dtsi vendor/device-tree/dist/src/arm/sun7i-a20-lamobo-r1.dts vendor/device-tree/dist/src/arm/sun7i-a20-olimex-som-evb.dts vendor/device-tree/dist/src/arm/sun7i-a20-olinuxino-lime2-emmc.dts vendor/device-tree/dist/src/arm/sun7i-a20.dtsi vendor/device-tree/dist/src/arm/sun8i-a23-a33.dtsi vendor/device-tree/dist/src/arm/sun8i-a23-gt90h-v4.dts vendor/device-tree/dist/src/arm/sun8i-a23-ippo-q8h-v1.2.dts vendor/device-tree/dist/src/arm/sun8i-a23-ippo-q8h-v5.dts vendor/device-tree/dist/src/arm/sun8i-a23-polaroid-mid2809pxe04.dts vendor/device-tree/dist/src/arm/sun8i-a23-q8-tablet.dts vendor/device-tree/dist/src/arm/sun8i-a23.dtsi vendor/device-tree/dist/src/arm/sun8i-a33-et-q8-v1.6.dts vendor/device-tree/dist/src/arm/sun8i-a33-ga10h-v1.1.dts vendor/device-tree/dist/src/arm/sun8i-a33-ippo-q8h-v1.2.dts vendor/device-tree/dist/src/arm/sun8i-a33-q8-tablet.dts vendor/device-tree/dist/src/arm/sun8i-a33-sinlinx-sina33.dts vendor/device-tree/dist/src/arm/sun8i-a33.dtsi vendor/device-tree/dist/src/arm/sun8i-h3-orangepi-2.dts vendor/device-tree/dist/src/arm/sun8i-h3-orangepi-one.dts vendor/device-tree/dist/src/arm/sun8i-h3-orangepi-pc.dts vendor/device-tree/dist/src/arm/sun8i-h3-orangepi-plus.dts vendor/device-tree/dist/src/arm/sun8i-h3.dtsi vendor/device-tree/dist/src/arm/sun8i-q8-common.dtsi vendor/device-tree/dist/src/arm/sun9i-a80-cubieboard4.dts vendor/device-tree/dist/src/arm/sun9i-a80-optimus.dts vendor/device-tree/dist/src/arm/sun9i-a80.dtsi vendor/device-tree/dist/src/arm/tegra114-dalmore.dts vendor/device-tree/dist/src/arm/tegra114-roth.dts vendor/device-tree/dist/src/arm/tegra114-tn7.dts vendor/device-tree/dist/src/arm/tegra114.dtsi vendor/device-tree/dist/src/arm/tegra124-jetson-tk1-emc.dtsi vendor/device-tree/dist/src/arm/tegra124-jetson-tk1.dts vendor/device-tree/dist/src/arm/tegra124-nyan-big-emc.dtsi vendor/device-tree/dist/src/arm/tegra124-nyan-big.dts vendor/device-tree/dist/src/arm/tegra124-nyan-blaze-emc.dtsi vendor/device-tree/dist/src/arm/tegra124-nyan-blaze.dts vendor/device-tree/dist/src/arm/tegra124-nyan.dtsi vendor/device-tree/dist/src/arm/tegra124-venice2.dts vendor/device-tree/dist/src/arm/tegra124.dtsi vendor/device-tree/dist/src/arm/tegra20-colibri-512.dtsi vendor/device-tree/dist/src/arm/tegra20-harmony.dts vendor/device-tree/dist/src/arm/tegra20-paz00.dts vendor/device-tree/dist/src/arm/tegra20-seaboard.dts vendor/device-tree/dist/src/arm/tegra20-tamonten.dtsi vendor/device-tree/dist/src/arm/tegra20-trimslice.dts vendor/device-tree/dist/src/arm/tegra20-ventana.dts vendor/device-tree/dist/src/arm/tegra20-whistler.dts vendor/device-tree/dist/src/arm/tegra20.dtsi vendor/device-tree/dist/src/arm/tegra30-apalis.dtsi vendor/device-tree/dist/src/arm/tegra30-beaver.dts vendor/device-tree/dist/src/arm/tegra30-cardhu.dtsi vendor/device-tree/dist/src/arm/tegra30-colibri-eval-v3.dts vendor/device-tree/dist/src/arm/tegra30-colibri.dtsi vendor/device-tree/dist/src/arm/tegra30.dtsi vendor/device-tree/dist/src/arm/tny_a9260_common.dtsi vendor/device-tree/dist/src/arm/tny_a9263.dts vendor/device-tree/dist/src/arm/tps65217.dtsi vendor/device-tree/dist/src/arm/uniphier-pinctrl.dtsi vendor/device-tree/dist/src/arm/usb_a9260_common.dtsi vendor/device-tree/dist/src/arm/usb_a9263.dts vendor/device-tree/dist/src/arm/usb_a9g20_common.dtsi vendor/device-tree/dist/src/arm/vexpress-v2p-ca15-tc1.dts vendor/device-tree/dist/src/arm/vexpress-v2p-ca15_a7.dts vendor/device-tree/dist/src/arm/vf-colibri-eval-v3.dtsi vendor/device-tree/dist/src/arm/vf-colibri.dtsi vendor/device-tree/dist/src/arm/vf500.dtsi vendor/device-tree/dist/src/arm/vf610-zii-dev-rev-b.dts vendor/device-tree/dist/src/arm/vf610m4.dtsi vendor/device-tree/dist/src/arm/vfxxx.dtsi vendor/device-tree/dist/src/arm/zynq-7000.dtsi vendor/device-tree/dist/src/arm/zynq-parallella.dts vendor/device-tree/dist/src/arm/zynq-zc702.dts vendor/device-tree/dist/src/arm/zynq-zc706.dts vendor/device-tree/dist/src/arm/zynq-zed.dts vendor/device-tree/dist/src/arm/zynq-zybo.dts vendor/device-tree/dist/src/arm64/altera/socfpga_stratix10.dtsi vendor/device-tree/dist/src/arm64/amlogic/meson-gxbb-odroidc2.dts vendor/device-tree/dist/src/arm64/amlogic/meson-gxbb-p200.dts vendor/device-tree/dist/src/arm64/amlogic/meson-gxbb-p20x.dtsi vendor/device-tree/dist/src/arm64/amlogic/meson-gxbb-vega-s95.dtsi vendor/device-tree/dist/src/arm64/amlogic/meson-gxbb.dtsi vendor/device-tree/dist/src/arm64/apm/apm-merlin.dts vendor/device-tree/dist/src/arm64/apm/apm-mustang.dts vendor/device-tree/dist/src/arm64/apm/apm-shadowcat.dtsi vendor/device-tree/dist/src/arm64/apm/apm-storm.dtsi vendor/device-tree/dist/src/arm64/arm/juno-base.dtsi vendor/device-tree/dist/src/arm64/arm/juno-r1.dts vendor/device-tree/dist/src/arm64/arm/juno-r2.dts vendor/device-tree/dist/src/arm64/arm/juno.dts vendor/device-tree/dist/src/arm64/arm/rtsm_ve-aemv8a.dts vendor/device-tree/dist/src/arm64/broadcom/ns2-svk.dts vendor/device-tree/dist/src/arm64/broadcom/ns2.dtsi vendor/device-tree/dist/src/arm64/cavium/thunder-88xx.dtsi vendor/device-tree/dist/src/arm64/exynos/exynos7-espresso.dts vendor/device-tree/dist/src/arm64/exynos/exynos7-pinctrl.dtsi vendor/device-tree/dist/src/arm64/exynos/exynos7.dtsi vendor/device-tree/dist/src/arm64/freescale/fsl-ls1043a-qds.dts vendor/device-tree/dist/src/arm64/freescale/fsl-ls1043a-rdb.dts vendor/device-tree/dist/src/arm64/freescale/fsl-ls1043a.dtsi vendor/device-tree/dist/src/arm64/freescale/fsl-ls2080a-qds.dts vendor/device-tree/dist/src/arm64/freescale/fsl-ls2080a-rdb.dts vendor/device-tree/dist/src/arm64/freescale/fsl-ls2080a-simu.dts vendor/device-tree/dist/src/arm64/freescale/fsl-ls2080a.dtsi vendor/device-tree/dist/src/arm64/hisilicon/hi6220-hikey.dts vendor/device-tree/dist/src/arm64/hisilicon/hi6220.dtsi vendor/device-tree/dist/src/arm64/hisilicon/hip05.dtsi vendor/device-tree/dist/src/arm64/hisilicon/hip06-d03.dts vendor/device-tree/dist/src/arm64/hisilicon/hip06.dtsi vendor/device-tree/dist/src/arm64/marvell/armada-3720-db.dts vendor/device-tree/dist/src/arm64/marvell/armada-37xx.dtsi vendor/device-tree/dist/src/arm64/marvell/armada-8020.dtsi vendor/device-tree/dist/src/arm64/marvell/armada-8040.dtsi vendor/device-tree/dist/src/arm64/marvell/armada-ap806.dtsi vendor/device-tree/dist/src/arm64/marvell/armada-cp110-master.dtsi vendor/device-tree/dist/src/arm64/marvell/berlin4ct-dmp.dts vendor/device-tree/dist/src/arm64/marvell/berlin4ct-stb.dts vendor/device-tree/dist/src/arm64/marvell/berlin4ct.dtsi vendor/device-tree/dist/src/arm64/mediatek/mt8173-evb.dts vendor/device-tree/dist/src/arm64/mediatek/mt8173.dtsi vendor/device-tree/dist/src/arm64/nvidia/tegra132.dtsi vendor/device-tree/dist/src/arm64/nvidia/tegra210-p2180.dtsi vendor/device-tree/dist/src/arm64/nvidia/tegra210-p2371-2180.dts vendor/device-tree/dist/src/arm64/nvidia/tegra210-p2597.dtsi vendor/device-tree/dist/src/arm64/nvidia/tegra210-smaug.dts vendor/device-tree/dist/src/arm64/nvidia/tegra210.dtsi vendor/device-tree/dist/src/arm64/qcom/apq8016-sbc-soc-pins.dtsi vendor/device-tree/dist/src/arm64/qcom/apq8016-sbc.dtsi vendor/device-tree/dist/src/arm64/qcom/msm8916.dtsi vendor/device-tree/dist/src/arm64/qcom/msm8996.dtsi vendor/device-tree/dist/src/arm64/qcom/pm8916.dtsi vendor/device-tree/dist/src/arm64/qcom/pm8994.dtsi vendor/device-tree/dist/src/arm64/renesas/r8a7795-salvator-x.dts vendor/device-tree/dist/src/arm64/renesas/r8a7795.dtsi vendor/device-tree/dist/src/arm64/rockchip/rk3368-geekbox.dts vendor/device-tree/dist/src/arm64/rockchip/rk3368-r88.dts vendor/device-tree/dist/src/arm64/rockchip/rk3368.dtsi vendor/device-tree/dist/src/arm64/rockchip/rk3399-evb.dts vendor/device-tree/dist/src/arm64/rockchip/rk3399.dtsi vendor/device-tree/dist/src/arm64/socionext/uniphier-pinctrl.dtsi vendor/device-tree/dist/src/arm64/xilinx/zynqmp-ep108.dts vendor/device-tree/dist/src/arm64/xilinx/zynqmp.dtsi vendor/device-tree/dist/src/mips/brcm/bcm7125.dtsi vendor/device-tree/dist/src/mips/brcm/bcm7346.dtsi vendor/device-tree/dist/src/mips/brcm/bcm7358.dtsi vendor/device-tree/dist/src/mips/brcm/bcm7360.dtsi vendor/device-tree/dist/src/mips/brcm/bcm7362.dtsi vendor/device-tree/dist/src/mips/brcm/bcm7420.dtsi vendor/device-tree/dist/src/mips/brcm/bcm7425.dtsi vendor/device-tree/dist/src/mips/brcm/bcm7435.dtsi vendor/device-tree/dist/src/mips/brcm/bcm97125cbmb.dts vendor/device-tree/dist/src/mips/brcm/bcm97346dbsmb.dts vendor/device-tree/dist/src/mips/brcm/bcm97358svmb.dts vendor/device-tree/dist/src/mips/brcm/bcm97360svmb.dts vendor/device-tree/dist/src/mips/brcm/bcm97362svmb.dts vendor/device-tree/dist/src/mips/brcm/bcm97420c.dts vendor/device-tree/dist/src/mips/brcm/bcm97425svmb.dts vendor/device-tree/dist/src/mips/brcm/bcm97435svmb.dts vendor/device-tree/dist/src/mips/cavium-octeon/dlink_dsr-1000n.dts vendor/device-tree/dist/src/mips/cavium-octeon/octeon_3xxx.dts vendor/device-tree/dist/src/mips/ingenic/jz4740.dtsi vendor/device-tree/dist/src/mips/ingenic/qi_lb60.dts vendor/device-tree/dist/src/mips/mti/malta.dts vendor/device-tree/dist/src/mips/mti/sead3.dts Modified: vendor/device-tree/dist/Bindings/arm/altera/socfpga-eccmgr.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/altera/socfpga-eccmgr.txt Tue Mar 7 12:39:41 2017 (r314846) +++ vendor/device-tree/dist/Bindings/arm/altera/socfpga-eccmgr.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -61,7 +61,9 @@ Required Properties: - #address-cells: must be 1 - #size-cells: must be 1 - interrupts : Should be single bit error interrupt, then double bit error - interrupt. Note the rising edge type. + interrupt. +- interrupt-controller : boolean indicator that ECC Manager is an interrupt controller +- #interrupt-cells : must be set to 2. - ranges : standard definition, should translate from local addresses Subcomponents: @@ -70,11 +72,64 @@ L2 Cache ECC Required Properties: - compatible : Should be "altr,socfpga-a10-l2-ecc" - reg : Address and size for ECC error interrupt clear registers. +- interrupts : Should be single bit error interrupt, then double bit error + interrupt, in this order. On-Chip RAM ECC Required Properties: - compatible : Should be "altr,socfpga-a10-ocram-ecc" - reg : Address and size for ECC block registers. +- interrupts : Should be single bit error interrupt, then double bit error + interrupt, in this order. + +Ethernet FIFO ECC +Required Properties: +- compatible : Should be "altr,socfpga-eth-mac-ecc" +- reg : Address and size for ECC block registers. +- altr,ecc-parent : phandle to parent Ethernet node. +- interrupts : Should be single bit error interrupt, then double bit error + interrupt, in this order. + +NAND FIFO ECC +Required Properties: +- compatible : Should be "altr,socfpga-nand-ecc" +- reg : Address and size for ECC block registers. +- altr,ecc-parent : phandle to parent NAND node. +- interrupts : Should be single bit error interrupt, then double bit error + interrupt, in this order. + +DMA FIFO ECC +Required Properties: +- compatible : Should be "altr,socfpga-dma-ecc" +- reg : Address and size for ECC block registers. +- altr,ecc-parent : phandle to parent DMA node. +- interrupts : Should be single bit error interrupt, then double bit error + interrupt, in this order. + +USB FIFO ECC +Required Properties: +- compatible : Should be "altr,socfpga-usb-ecc" +- reg : Address and size for ECC block registers. +- altr,ecc-parent : phandle to parent USB node. +- interrupts : Should be single bit error interrupt, then double bit error + interrupt, in this order. + +QSPI FIFO ECC +Required Properties: +- compatible : Should be "altr,socfpga-qspi-ecc" +- reg : Address and size for ECC block registers. +- altr,ecc-parent : phandle to parent QSPI node. +- interrupts : Should be single bit error interrupt, then double bit error + interrupt, in this order. + +SDMMC FIFO ECC +Required Properties: +- compatible : Should be "altr,socfpga-sdmmc-ecc" +- reg : Address and size for ECC block registers. +- altr,ecc-parent : phandle to parent SD/MMC node. +- interrupts : Should be single bit error interrupt, then double bit error + interrupt, in this order for port A, and then single bit error interrupt, + then double bit error interrupt in this order for port B. Example: @@ -85,15 +140,94 @@ Example: #size-cells = <1>; interrupts = <0 2 IRQ_TYPE_LEVEL_HIGH>, <0 0 IRQ_TYPE_LEVEL_HIGH>; + interrupt-controller; + #interrupt-cells = <2>; ranges; l2-ecc@ffd06010 { compatible = "altr,socfpga-a10-l2-ecc"; reg = <0xffd06010 0x4>; + interrupts = <0 IRQ_TYPE_LEVEL_HIGH>, + <32 IRQ_TYPE_LEVEL_HIGH>; }; ocram-ecc@ff8c3000 { compatible = "altr,socfpga-a10-ocram-ecc"; reg = <0xff8c3000 0x90>; + interrupts = <1 IRQ_TYPE_LEVEL_HIGH>, + <33 IRQ_TYPE_LEVEL_HIGH> ; + }; + + emac0-rx-ecc@ff8c0800 { + compatible = "altr,socfpga-eth-mac-ecc"; + reg = <0xff8c0800 0x400>; + altr,ecc-parent = <&gmac0>; + interrupts = <4 IRQ_TYPE_LEVEL_HIGH>, + <36 IRQ_TYPE_LEVEL_HIGH>; + }; + + emac0-tx-ecc@ff8c0c00 { + compatible = "altr,socfpga-eth-mac-ecc"; + reg = <0xff8c0c00 0x400>; + altr,ecc-parent = <&gmac0>; + interrupts = <5 IRQ_TYPE_LEVEL_HIGH>, + <37 IRQ_TYPE_LEVEL_HIGH>; + }; + + nand-buf-ecc@ff8c2000 { + compatible = "altr,socfpga-nand-ecc"; + reg = <0xff8c2000 0x400>; + altr,ecc-parent = <&nand>; + interrupts = <11 IRQ_TYPE_LEVEL_HIGH>, + <43 IRQ_TYPE_LEVEL_HIGH>; + }; + + nand-rd-ecc@ff8c2400 { + compatible = "altr,socfpga-nand-ecc"; + reg = <0xff8c2400 0x400>; + altr,ecc-parent = <&nand>; + interrupts = <13 IRQ_TYPE_LEVEL_HIGH>, + <45 IRQ_TYPE_LEVEL_HIGH>; + }; + + nand-wr-ecc@ff8c2800 { + compatible = "altr,socfpga-nand-ecc"; + reg = <0xff8c2800 0x400>; + altr,ecc-parent = <&nand>; + interrupts = <12 IRQ_TYPE_LEVEL_HIGH>, + <44 IRQ_TYPE_LEVEL_HIGH>; + }; + + dma-ecc@ff8c8000 { + compatible = "altr,socfpga-dma-ecc"; + reg = <0xff8c8000 0x400>; + altr,ecc-parent = <&pdma>; + interrupts = <10 IRQ_TYPE_LEVEL_HIGH>, + <42 IRQ_TYPE_LEVEL_HIGH>; + + usb0-ecc@ff8c8800 { + compatible = "altr,socfpga-usb-ecc"; + reg = <0xff8c8800 0x400>; + altr,ecc-parent = <&usb0>; + interrupts = <2 IRQ_TYPE_LEVEL_HIGH>, + <34 IRQ_TYPE_LEVEL_HIGH>; + }; + + qspi-ecc@ff8c8400 { + compatible = "altr,socfpga-qspi-ecc"; + reg = <0xff8c8400 0x400>; + altr,ecc-parent = <&qspi>; + interrupts = <14 IRQ_TYPE_LEVEL_HIGH>, + <46 IRQ_TYPE_LEVEL_HIGH>; + }; + + sdmmc-ecc@ff8c2c00 { + compatible = "altr,socfpga-sdmmc-ecc"; + reg = <0xff8c2c00 0x400>; + altr,ecc-parent = <&mmc>; + interrupts = <15 IRQ_TYPE_LEVEL_HIGH>, + <47 IRQ_TYPE_LEVEL_HIGH>, + <16 IRQ_TYPE_LEVEL_HIGH>, + <48 IRQ_TYPE_LEVEL_HIGH>; }; }; Added: vendor/device-tree/dist/Bindings/arm/amlogic,scpi.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/device-tree/dist/Bindings/arm/amlogic,scpi.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -0,0 +1,20 @@ +System Control and Power Interface (SCPI) Message Protocol +(in addition to the standard binding in [0]) +---------------------------------------------------------- +Required properties + +- compatible : should be "amlogic,meson-gxbb-scpi" + +AMLOGIC SRAM and Shared Memory for SCPI +------------------------------------ + +Required properties: +- compatible : should be "amlogic,meson-gxbb-sram" + +Each sub-node represents the reserved area for SCPI. + +Required sub-node properties: +- compatible : should be "amlogic,meson-gxbb-scp-shmem" for SRAM based shared + memory on Amlogic GXBB SoC. + +[0] Documentation/devicetree/bindings/arm/arm,scpi.txt Modified: vendor/device-tree/dist/Bindings/arm/amlogic.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/amlogic.txt Tue Mar 7 12:39:41 2017 (r314846) +++ vendor/device-tree/dist/Bindings/arm/amlogic.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -17,6 +17,18 @@ Boards with the Amlogic Meson GXBaby SoC Required root node property: compatible: "amlogic,meson-gxbb"; +Boards with the Amlogic Meson GXL S905X SoC shall have the following properties: + Required root node property: + compatible: "amlogic,s905x", "amlogic,meson-gxl"; + +Boards with the Amlogic Meson GXL S905D SoC shall have the following properties: + Required root node property: + compatible: "amlogic,s905d", "amlogic,meson-gxl"; + +Boards with the Amlogic Meson GXM S912 SoC shall have the following properties: + Required root node property: + compatible: "amlogic,s912", "amlogic,meson-gxm"; + Board compatible values: - "geniatech,atv1200" (Meson6) - "minix,neo-x8" (Meson8) @@ -28,3 +40,10 @@ Board compatible values: - "hardkernel,odroid-c2" (Meson gxbb) - "amlogic,p200" (Meson gxbb) - "amlogic,p201" (Meson gxbb) + - "amlogic,p212" (Meson gxl s905x) + - "amlogic,p230" (Meson gxl s905d) + - "amlogic,p231" (Meson gxl s905d) + - "amlogic,q200" (Meson gxm s912) + - "amlogic,q201" (Meson gxm s912) + - "nexbox,a95x" (Meson gxbb or Meson gxl s905x) + - "nexbox,a1" (Meson gxm s912) Modified: vendor/device-tree/dist/Bindings/arm/arch_timer.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/arch_timer.txt Tue Mar 7 12:39:41 2017 (r314846) +++ vendor/device-tree/dist/Bindings/arm/arch_timer.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -25,6 +25,12 @@ to deliver its interrupts via SPIs. - always-on : a boolean property. If present, the timer is powered through an always-on power domain, therefore it never loses context. +- fsl,erratum-a008585 : A boolean property. Indicates the presence of + QorIQ erratum A-008585, which says that reading the counter is + unreliable unless the same value is returned by back-to-back reads. + This also affects writes to the tval register, due to the implicit + counter read. + ** Optional properties: - arm,cpu-registers-not-fw-configured : Firmware does not initialize @@ -32,6 +38,11 @@ to deliver its interrupts via SPIs. architecturally-defined reset values. Only supported for 32-bit systems which follow the ARMv7 architected reset values. +- arm,no-tick-in-suspend : The main counter does not tick when the system is in + low-power system suspend on some SoCs. This behavior does not match the + Architecture Reference Manual's specification that the system counter "must + be implemented in an always-on power domain." + Example: Modified: vendor/device-tree/dist/Bindings/arm/arm,scpi.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/arm,scpi.txt Tue Mar 7 12:39:41 2017 (r314846) +++ vendor/device-tree/dist/Bindings/arm/arm,scpi.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -7,7 +7,10 @@ by Linux to initiate various system cont Required properties: -- compatible : should be "arm,scpi" +- compatible : should be + * "arm,scpi" : For implementations complying to SCPI v1.0 or above + * "arm,scpi-pre-1.0" : For implementations complying to all + unversioned releases prior to SCPI v1.0 - mboxes: List of phandle and mailbox channel specifiers All the channels reserved by remote SCP firmware for use by SCPI message protocol should be specified in any order @@ -59,18 +62,14 @@ SRAM and Shared Memory for SCPI A small area of SRAM is reserved for SCPI communication between application processors and SCP. -Required properties: -- compatible : should be "arm,juno-sram-ns" for Non-secure SRAM on Juno - -The rest of the properties should follow the generic mmio-sram description -found in ../../sram/sram.txt +The properties should follow the generic mmio-sram description found in [3] Each sub-node represents the reserved area for SCPI. Required sub-node properties: - reg : The base offset and size of the reserved area with the SRAM -- compatible : should be "arm,juno-scp-shmem" for Non-secure SRAM based - shared memory on Juno platforms +- compatible : should be "arm,scp-shmem" for Non-secure SRAM based + shared memory Sensor bindings for the sensors based on SCPI Message Protocol -------------------------------------------------------------- @@ -81,16 +80,37 @@ Required properties: - #thermal-sensor-cells: should be set to 1. This property follows the thermal device tree bindings[2]. - Valid cell values are raw identifiers (Sensor - ID) as used by the firmware. Refer to - platform documentation for your - implementation for the IDs to use. For Juno - R0 and Juno R1 refer to [3]. + Valid cell values are raw identifiers (Sensor ID) + as used by the firmware. Refer to platform details + for your implementation for the IDs to use. + +Power domain bindings for the power domains based on SCPI Message Protocol +------------------------------------------------------------ + +This binding uses the generic power domain binding[4]. + +PM domain providers +=================== + +Required properties: + - #power-domain-cells : Should be 1. Contains the device or the power + domain ID value used by SCPI commands. + - num-domains: Total number of power domains provided by SCPI. This is + needed as the SCPI message protocol lacks a mechanism to + query this information at runtime. + +PM domain consumers +=================== + +Required properties: + - power-domains : A phandle and PM domain specifier as defined by bindings of + the power controller specified by phandle. [0] http://infocenter.arm.com/help/topic/com.arm.doc.dui0922b/index.html [1] Documentation/devicetree/bindings/clock/clock-bindings.txt [2] Documentation/devicetree/bindings/thermal/thermal.txt -[3] http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0922b/apas03s22.html +[3] Documentation/devicetree/bindings/sram/sram.txt +[4] Documentation/devicetree/bindings/power/power_domain.txt Example: @@ -144,6 +164,12 @@ scpi_protocol: scpi@2e000000 { compatible = "arm,scpi-sensors"; #thermal-sensor-cells = <1>; }; + + scpi_devpd: scpi-power-domains { + compatible = "arm,scpi-power-domains"; + num-domains = <2>; + #power-domain-cells = <1>; + }; }; cpu@0 { @@ -156,6 +182,7 @@ hdlcd@7ff60000 { ... reg = <0 0x7ff60000 0 0x1000>; clocks = <&scpi_clk 4>; + power-domains = <&scpi_devpd 1>; }; thermal-zones { @@ -186,3 +213,7 @@ The thermal-sensors property in the soc_ temperature sensor provided by SCP firmware to setup a thermal zone. The ID "3" is the sensor identifier for the temperature sensor as used by the firmware. + +The num-domains property in scpi-power-domains domain specifies that +SCPI provides 2 power domains. The hdlcd node uses the power domain with +domain ID 1. Modified: vendor/device-tree/dist/Bindings/arm/arm-boards ============================================================================== --- vendor/device-tree/dist/Bindings/arm/arm-boards Tue Mar 7 12:39:41 2017 (r314846) +++ vendor/device-tree/dist/Bindings/arm/arm-boards Tue Mar 7 12:41:06 2017 (r314847) @@ -148,11 +148,12 @@ Example: /dts-v1/; #include -#include "skeleton.dtsi" / { model = "ARM RealView PB1176 with device tree"; compatible = "arm,realview-pb1176"; + #address-cells = <1>; + #size-cells = <1>; soc { #address-cells = <1>; Modified: vendor/device-tree/dist/Bindings/arm/atmel-at91.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/atmel-at91.txt Tue Mar 7 12:39:41 2017 (r314846) +++ vendor/device-tree/dist/Bindings/arm/atmel-at91.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -225,3 +225,19 @@ required properties: compatible = "atmel,sama5d3-sfr", "syscon"; reg = <0xf0038000 0x60>; }; + +Security Module (SECUMOD) + +The Security Module macrocell provides all necessary secure functions to avoid +voltage, temperature, frequency and mechanical attacks on the chip. It also +embeds secure memories that can be scrambled + +required properties: +- compatible: Should be "atmel,-secumod", "syscon". + can be "sama5d2". +- reg: Should contain registers location and length + + secumod@fc040000 { + compatible = "atmel,sama5d2-secumod", "syscon"; + reg = <0xfc040000 0x100>; + }; Modified: vendor/device-tree/dist/Bindings/arm/bcm/brcm,bcm11351-cpu-method.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/bcm/brcm,bcm11351-cpu-method.txt Tue Mar 7 12:39:41 2017 (r314846) +++ vendor/device-tree/dist/Bindings/arm/bcm/brcm,bcm11351-cpu-method.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -5,7 +5,7 @@ CPUs in the following Broadcom SoCs: BCM11130, BCM11140, BCM11351, BCM28145, BCM28155, BCM21664 The enable method is specified by defining the following required -properties in the "cpus" device tree node: +properties in the "cpu" device tree node: - enable-method = "brcm,bcm11351-cpu-method"; - secondary-boot-reg = <...>; @@ -19,8 +19,6 @@ Example: cpus { #address-cells = <1>; #size-cells = <0>; - enable-method = "brcm,bcm11351-cpu-method"; - secondary-boot-reg = <0x3500417c>; cpu0: cpu@0 { device_type = "cpu"; @@ -32,5 +30,7 @@ Example: device_type = "cpu"; compatible = "arm,cortex-a9"; reg = <1>; + enable-method = "brcm,bcm11351-cpu-method"; + secondary-boot-reg = <0x3500417c>; }; }; Added: vendor/device-tree/dist/Bindings/arm/bcm/brcm,bcm23550-cpu-method.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/device-tree/dist/Bindings/arm/bcm/brcm,bcm23550-cpu-method.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -0,0 +1,36 @@ +Broadcom Kona Family CPU Enable Method +-------------------------------------- +This binding defines the enable method used for starting secondary +CPUs in the following Broadcom SoCs: + BCM23550 + +The enable method is specified by defining the following required +properties in the "cpu" device tree node: + - enable-method = "brcm,bcm23550"; + - secondary-boot-reg = <...>; + +The secondary-boot-reg property is a u32 value that specifies the +physical address of the register used to request the ROM holding pen +code release a secondary CPU. The value written to the register is +formed by encoding the target CPU id into the low bits of the +physical start address it should jump to. + +Example: + cpus { + #address-cells = <1>; + #size-cells = <0>; + + cpu0: cpu@0 { + device_type = "cpu"; + compatible = "arm,cortex-a9"; + reg = <0>; + }; + + cpu1: cpu@1 { + device_type = "cpu"; + compatible = "arm,cortex-a9"; + reg = <1>; + enable-method = "brcm,bcm23550"; + secondary-boot-reg = <0x3500417c>; + }; + }; Added: vendor/device-tree/dist/Bindings/arm/bcm/brcm,bcm23550.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/device-tree/dist/Bindings/arm/bcm/brcm,bcm23550.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -0,0 +1,15 @@ +Broadcom BCM23550 device tree bindings +-------------------------------------- + +This document describes the device tree bindings for boards with the BCM23550 +SoC. + +Required root node property: + - compatible: brcm,bcm23550 + +Example: + / { + model = "BCM23550 SoC"; + compatible = "brcm,bcm23550"; + [...] + } Modified: vendor/device-tree/dist/Bindings/arm/bcm/brcm,bcm2835.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/bcm/brcm,bcm2835.txt Tue Mar 7 12:39:41 2017 (r314846) +++ vendor/device-tree/dist/Bindings/arm/bcm/brcm,bcm2835.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -30,10 +30,18 @@ Raspberry Pi 2 Model B Required root node properties: compatible = "raspberrypi,2-model-b", "brcm,bcm2836"; +Raspberry Pi 3 Model B +Required root node properties: +compatible = "raspberrypi,3-model-b", "brcm,bcm2837"; + Raspberry Pi Compute Module Required root node properties: compatible = "raspberrypi,compute-module", "brcm,bcm2835"; +Raspberry Pi Zero +Required root node properties: +compatible = "raspberrypi,model-zero", "brcm,bcm2835"; + Generic BCM2835 board Required root node properties: compatible = "brcm,bcm2835"; Added: vendor/device-tree/dist/Bindings/arm/bcm/brcm,ns2.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/device-tree/dist/Bindings/arm/bcm/brcm,ns2.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -0,0 +1,9 @@ +Broadcom North Star 2 (NS2) device tree bindings +------------------------------------------------ + +Boards with NS2 shall have the following properties: + +Required root node property: + +NS2 SVK board +compatible = "brcm,ns2-svk", "brcm,ns2"; Modified: vendor/device-tree/dist/Bindings/arm/coresight.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/coresight.txt Tue Mar 7 12:39:41 2017 (r314846) +++ vendor/device-tree/dist/Bindings/arm/coresight.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -12,14 +12,33 @@ its hardware characteristcs. * compatible: These have to be supplemented with "arm,primecell" as drivers are using the AMBA bus interface. Possible values include: - - "arm,coresight-etb10", "arm,primecell"; - - "arm,coresight-tpiu", "arm,primecell"; - - "arm,coresight-tmc", "arm,primecell"; - - "arm,coresight-funnel", "arm,primecell"; - - "arm,coresight-etm3x", "arm,primecell"; - - "arm,coresight-etm4x", "arm,primecell"; - - "qcom,coresight-replicator1x", "arm,primecell"; - - "arm,coresight-stm", "arm,primecell"; [1] + - Embedded Trace Buffer (version 1.0): + "arm,coresight-etb10", "arm,primecell"; + + - Trace Port Interface Unit: + "arm,coresight-tpiu", "arm,primecell"; + + - Trace Memory Controller, used for Embedded Trace Buffer(ETB), + Embedded Trace FIFO(ETF) and Embedded Trace Router(ETR) + configuration. The configuration mode (ETB, ETF, ETR) is + discovered at boot time when the device is probed. + "arm,coresight-tmc", "arm,primecell"; + + - Trace Funnel: + "arm,coresight-funnel", "arm,primecell"; + + - Embedded Trace Macrocell (version 3.x) and + Program Flow Trace Macrocell: + "arm,coresight-etm3x", "arm,primecell"; + + - Embedded Trace Macrocell (version 4.x): + "arm,coresight-etm4x", "arm,primecell"; + + - Qualcomm Configurable Replicator (version 1.x): + "qcom,coresight-replicator1x", "arm,primecell"; + + - System Trace Macrocell: + "arm,coresight-stm", "arm,primecell"; [1] * reg: physical base address and length of the register set(s) of the component. Added: vendor/device-tree/dist/Bindings/arm/cpu-capacity.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/device-tree/dist/Bindings/arm/cpu-capacity.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -0,0 +1,236 @@ +========================================== +ARM CPUs capacity bindings +========================================== + +========================================== +1 - Introduction +========================================== + +ARM systems may be configured to have cpus with different power/performance +characteristics within the same chip. In this case, additional information has +to be made available to the kernel for it to be aware of such differences and +take decisions accordingly. + +========================================== +2 - CPU capacity definition +========================================== + +CPU capacity is a number that provides the scheduler information about CPUs +heterogeneity. Such heterogeneity can come from micro-architectural differences +(e.g., ARM big.LITTLE systems) or maximum frequency at which CPUs can run +(e.g., SMP systems with multiple frequency domains). Heterogeneity in this +context is about differing performance characteristics; this binding tries to +capture a first-order approximation of the relative performance of CPUs. + +CPU capacities are obtained by running a suitable benchmark. This binding makes +no guarantees on the validity or suitability of any particular benchmark, the +final capacity should, however, be: + +* A "single-threaded" or CPU affine benchmark +* Divided by the running frequency of the CPU executing the benchmark +* Not subject to dynamic frequency scaling of the CPU + +For the time being we however advise usage of the Dhrystone benchmark. What +above thus becomes: + +CPU capacities are obtained by running the Dhrystone benchmark on each CPU at +max frequency (with caches enabled). The obtained DMIPS score is then divided +by the frequency (in MHz) at which the benchmark has been run, so that +DMIPS/MHz are obtained. Such values are then normalized w.r.t. the highest +score obtained in the system. + +========================================== +3 - capacity-dmips-mhz +========================================== + +capacity-dmips-mhz is an optional cpu node [1] property: u32 value +representing CPU capacity expressed in normalized DMIPS/MHz. At boot time, the +maximum frequency available to the cpu is then used to calculate the capacity +value internally used by the kernel. + +capacity-dmips-mhz property is all-or-nothing: if it is specified for a cpu +node, it has to be specified for every other cpu nodes, or the system will +fall back to the default capacity value for every CPU. If cpufreq is not +available, final capacities are calculated by directly using capacity-dmips- +mhz values (normalized w.r.t. the highest value found while parsing the DT). + +=========================================== +4 - Examples +=========================================== + +Example 1 (ARM 64-bit, 6-cpu system, two clusters): +capacities-dmips-mhz are scaled w.r.t. 1024 (cpu@0 and cpu@1) +supposing cluster0@max-freq=1100 and custer1@max-freq=850, +final capacities are 1024 for cluster0 and 446 for cluster1 + +cpus { + #address-cells = <2>; + #size-cells = <0>; + + cpu-map { + cluster0 { + core0 { + cpu = <&A57_0>; + }; + core1 { + cpu = <&A57_1>; + }; + }; + + cluster1 { + core0 { + cpu = <&A53_0>; + }; + core1 { + cpu = <&A53_1>; + }; + core2 { + cpu = <&A53_2>; + }; + core3 { + cpu = <&A53_3>; + }; + }; + }; + + idle-states { + entry-method = "arm,psci"; + + CPU_SLEEP_0: cpu-sleep-0 { + compatible = "arm,idle-state"; + arm,psci-suspend-param = <0x0010000>; + local-timer-stop; + entry-latency-us = <100>; + exit-latency-us = <250>; + min-residency-us = <150>; + }; + + CLUSTER_SLEEP_0: cluster-sleep-0 { + compatible = "arm,idle-state"; + arm,psci-suspend-param = <0x1010000>; + local-timer-stop; + entry-latency-us = <800>; + exit-latency-us = <700>; + min-residency-us = <2500>; + }; + }; + + A57_0: cpu@0 { + compatible = "arm,cortex-a57","arm,armv8"; + reg = <0x0 0x0>; + device_type = "cpu"; + enable-method = "psci"; + next-level-cache = <&A57_L2>; + clocks = <&scpi_dvfs 0>; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; + capacity-dmips-mhz = <1024>; + }; + + A57_1: cpu@1 { + compatible = "arm,cortex-a57","arm,armv8"; + reg = <0x0 0x1>; + device_type = "cpu"; + enable-method = "psci"; + next-level-cache = <&A57_L2>; + clocks = <&scpi_dvfs 0>; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; + capacity-dmips-mhz = <1024>; + }; + + A53_0: cpu@100 { + compatible = "arm,cortex-a53","arm,armv8"; + reg = <0x0 0x100>; + device_type = "cpu"; + enable-method = "psci"; + next-level-cache = <&A53_L2>; + clocks = <&scpi_dvfs 1>; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; + capacity-dmips-mhz = <578>; + }; + + A53_1: cpu@101 { + compatible = "arm,cortex-a53","arm,armv8"; + reg = <0x0 0x101>; + device_type = "cpu"; + enable-method = "psci"; + next-level-cache = <&A53_L2>; + clocks = <&scpi_dvfs 1>; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; + capacity-dmips-mhz = <578>; + }; + + A53_2: cpu@102 { + compatible = "arm,cortex-a53","arm,armv8"; + reg = <0x0 0x102>; + device_type = "cpu"; + enable-method = "psci"; + next-level-cache = <&A53_L2>; + clocks = <&scpi_dvfs 1>; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; + capacity-dmips-mhz = <578>; + }; + + A53_3: cpu@103 { + compatible = "arm,cortex-a53","arm,armv8"; + reg = <0x0 0x103>; + device_type = "cpu"; + enable-method = "psci"; + next-level-cache = <&A53_L2>; + clocks = <&scpi_dvfs 1>; + cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; + capacity-dmips-mhz = <578>; + }; + + A57_L2: l2-cache0 { + compatible = "cache"; + }; + + A53_L2: l2-cache1 { + compatible = "cache"; + }; +}; + +Example 2 (ARM 32-bit, 4-cpu system, two clusters, + cpus 0,1@1GHz, cpus 2,3@500MHz): +capacities-dmips-mhz are scaled w.r.t. 2 (cpu@0 and cpu@1), this means that first +cpu@0 and cpu@1 are twice fast than cpu@2 and cpu@3 (at the same frequency) + +cpus { + #address-cells = <1>; + #size-cells = <0>; + + cpu0: cpu@0 { + device_type = "cpu"; + compatible = "arm,cortex-a15"; + reg = <0>; + capacity-dmips-mhz = <2>; + }; + + cpu1: cpu@1 { + device_type = "cpu"; + compatible = "arm,cortex-a15"; + reg = <1>; + capacity-dmips-mhz = <2>; + }; + + cpu2: cpu@2 { + device_type = "cpu"; + compatible = "arm,cortex-a15"; + reg = <0x100>; + capacity-dmips-mhz = <1>; + }; + + cpu3: cpu@3 { + device_type = "cpu"; + compatible = "arm,cortex-a15"; + reg = <0x101>; + capacity-dmips-mhz = <1>; + }; +}; + +=========================================== +5 - References +=========================================== + +[1] ARM Linux Kernel documentation - CPUs bindings + Documentation/devicetree/bindings/arm/cpus.txt Modified: vendor/device-tree/dist/Bindings/arm/cpus.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/cpus.txt Tue Mar 7 12:39:41 2017 (r314846) +++ vendor/device-tree/dist/Bindings/arm/cpus.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -178,6 +178,7 @@ nodes to be present and contain the prop "marvell,pj4b" "marvell,sheeva-v5" "nvidia,tegra132-denver" + "nvidia,tegra186-denver" "qcom,krait" "qcom,kryo" "qcom,scorpion" @@ -193,6 +194,8 @@ nodes to be present and contain the prop "allwinner,sun6i-a31" "allwinner,sun8i-a23" "arm,realview-smp" + "brcm,bcm11351-cpu-method" + "brcm,bcm23550" "brcm,bcm-nsp-smp" "brcm,brahma-b15" "marvell,armada-375-smp" @@ -204,6 +207,7 @@ nodes to be present and contain the prop "qcom,gcc-msm8660" "qcom,kpss-acc-v1" "qcom,kpss-acc-v2" + "renesas,apmu" "rockchip,rk3036-smp" "rockchip,rk3066-smp" "ste,dbx500-smp" @@ -238,6 +242,14 @@ nodes to be present and contain the prop # List of phandles to idle state nodes supported by this cpu [3]. + - capacity-dmips-mhz + Usage: Optional + Value type: + Definition: + # u32 value representing CPU capacity [3] in + DMIPS/MHz, relative to highest capacity-dmips-mhz + in the system. + - rockchip,pmu Usage: optional for systems that have an "enable-method" property value of "rockchip,rk3066-smp" @@ -461,3 +473,5 @@ cpus { [2] arm/msm/qcom,kpss-acc.txt [3] ARM Linux kernel documentation - idle states bindings Documentation/devicetree/bindings/arm/idle-states.txt +[3] ARM Linux kernel documentation - cpu capacity bindings + Documentation/devicetree/bindings/arm/cpu-capacity.txt Modified: vendor/device-tree/dist/Bindings/arm/davinci.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/davinci.txt Tue Mar 7 12:39:41 2017 (r314846) +++ vendor/device-tree/dist/Bindings/arm/davinci.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -5,6 +5,10 @@ DA850/OMAP-L138/AM18x Evaluation Module Required root node properties: - compatible = "ti,da850-evm", "ti,da850"; +DA850/OMAP-L138/AM18x L138/C6748 Development Kit (LCDK) board +Required root node properties: + - compatible = "ti,da850-lcdk", "ti,da850"; + EnBW AM1808 based CMC board Required root node properties: - compatible = "enbw,cmc", "ti,da850; Modified: vendor/device-tree/dist/Bindings/arm/fsl.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/fsl.txt Tue Mar 7 12:39:41 2017 (r314846) +++ vendor/device-tree/dist/Bindings/arm/fsl.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -97,7 +97,7 @@ Freescale LS1021A Platform Device Tree B Required root node compatible properties: - compatible = "fsl,ls1021a"; -Freescale LS1021A SoC-specific Device Tree Bindings +Freescale SoC-specific Device Tree Bindings ------------------------------------------- Freescale SCFG @@ -105,7 +105,11 @@ Freescale SCFG configuration and status registers for the chip. Such as getting PEX port status. Required properties: - - compatible: should be "fsl,ls1021a-scfg" + - compatible: Should contain a chip-specific compatible string, + Chip-specific strings are of the form "fsl,-scfg", + The following s are known to be supported: + ls1021a, ls1043a, ls1046a, ls2080a. + - reg: should contain base address and length of SCFG memory-mapped registers Example: @@ -119,7 +123,11 @@ Freescale DCFG configuration and status for the device. Such as setting the secondary core start address and release the secondary core from holdoff and startup. Required properties: - - compatible: should be "fsl,ls1021a-dcfg" + - compatible: Should contain a chip-specific compatible string, + Chip-specific strings are of the form "fsl,-dcfg", + The following s are known to be supported: + ls1021a, ls1043a, ls1046a, ls2080a. + - reg : should contain base address and length of DCFG memory-mapped registers Example: @@ -131,6 +139,10 @@ Example: Freescale ARMv8 based Layerscape SoC family Device Tree Bindings ---------------------------------------------------------------- +LS1043A SoC +Required root node properties: + - compatible = "fsl,ls1043a"; + LS1043A ARMv8 based RDB Board Required root node properties: - compatible = "fsl,ls1043a-rdb", "fsl,ls1043a"; @@ -139,6 +151,22 @@ LS1043A ARMv8 based QDS Board Required root node properties: - compatible = "fsl,ls1043a-qds", "fsl,ls1043a"; +LS1046A SoC +Required root node properties: + - compatible = "fsl,ls1046a"; + +LS1046A ARMv8 based QDS Board +Required root node properties: + - compatible = "fsl,ls1046a-qds", "fsl,ls1046a"; + +LS1046A ARMv8 based RDB Board +Required root node properties: + - compatible = "fsl,ls1046a-rdb", "fsl,ls1046a"; + +LS2080A SoC +Required root node properties: + - compatible = "fsl,ls2080a"; + LS2080A ARMv8 based Simulator model Required root node properties: - compatible = "fsl,ls2080a-simu", "fsl,ls2080a"; Added: vendor/device-tree/dist/Bindings/arm/hisilicon/hi3519-sysctrl.txt ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/device-tree/dist/Bindings/arm/hisilicon/hi3519-sysctrl.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -0,0 +1,14 @@ +* Hisilicon Hi3519 System Controller Block + +This bindings use the following binding: +Documentation/devicetree/bindings/mfd/syscon.txt + +Required properties: +- compatible: "hisilicon,hi3519-sysctrl". +- reg: the register region of this block + +Examples: +sysctrl: system-controller@12010000 { + compatible = "hisilicon,hi3519-sysctrl", "syscon"; + reg = <0x12010000 0x1000>; +}; Modified: vendor/device-tree/dist/Bindings/arm/hisilicon/hisilicon.txt ============================================================================== --- vendor/device-tree/dist/Bindings/arm/hisilicon/hisilicon.txt Tue Mar 7 12:39:41 2017 (r314846) +++ vendor/device-tree/dist/Bindings/arm/hisilicon/hisilicon.txt Tue Mar 7 12:41:06 2017 (r314847) @@ -28,6 +28,10 @@ HiP06 D03 Board Required root node properties: - compatible = "hisilicon,hip06-d03"; +HiP07 D05 Board +Required root node properties: + - compatible = "hisilicon,hip07-d05"; + Hisilicon system controller Required properties: @@ -175,38 +179,55 @@ Example: }; ----------------------------------------------------------------------- -Hisilicon HiP05 PCIe-SAS system controller +Hisilicon HiP05/HiP06 PCIe-SAS sub system controller Required properties: - compatible : "hisilicon,pcie-sas-subctrl", "syscon"; - reg : Register address and size -The HiP05 PCIe-SAS system controller is shared by PCIe and SAS controllers in -HiP05 Soc to implement some basic configurations. +The PCIe-SAS sub system controller is shared by PCIe and SAS controllers in +HiP05 or HiP06 Soc to implement some basic configurations. Example: - /* for HiP05 PCIe-SAS system */ - pcie_sas: system_controller@0xb0000000 { + /* for HiP05 PCIe-SAS sub system */ + pcie_sas: system_controller@b0000000 { compatible = "hisilicon,pcie-sas-subctrl", "syscon"; reg = <0xb0000000 0x10000>; }; -Hisilicon HiP05 PERISUB system controller +Hisilicon HiP05/HiP06 PERI sub system controller Required properties: -- compatible : "hisilicon,hip05-perisubc", "syscon"; +- compatible : "hisilicon,peri-subctrl", "syscon"; - reg : Register address and size -The HiP05 PERISUB system controller is shared by peripheral controllers in -HiP05 Soc to implement some basic configurations. The peripheral *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Tue Mar 7 12:43:38 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 7A239CFBE10; Tue, 7 Mar 2017 12:43:38 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2D64A1AE1; Tue, 7 Mar 2017 12:43:38 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27ChbQh048742; Tue, 7 Mar 2017 12:43:37 GMT (envelope-from manu@FreeBSD.org) Received: (from manu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27ChbQp048741; Tue, 7 Mar 2017 12:43:37 GMT (envelope-from manu@FreeBSD.org) Message-Id: <201703071243.v27ChbQp048741@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: manu set sender to manu@FreeBSD.org using -f From: Emmanuel Vadot Date: Tue, 7 Mar 2017 12:43:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r314848 - vendor/device-tree/4.10 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 12:43:38 -0000 Author: manu Date: Tue Mar 7 12:43:37 2017 New Revision: 314848 URL: https://svnweb.freebsd.org/changeset/base/314848 Log: Tag update of DTS to Linux 4.10 Added: vendor/device-tree/4.10/ - copied from r314847, vendor/device-tree/dist/ From owner-svn-src-all@freebsd.org Tue Mar 7 13:36:44 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 91146D00ED2; Tue, 7 Mar 2017 13:36:44 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 5E3D5161A; Tue, 7 Mar 2017 13:36:44 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27DahM6070013; Tue, 7 Mar 2017 13:36:43 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27DahJO070012; Tue, 7 Mar 2017 13:36:43 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201703071336.v27DahJO070012@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Tue, 7 Mar 2017 13:36:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314849 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 13:36:44 -0000 Author: kib Date: Tue Mar 7 13:36:43 2017 New Revision: 314849 URL: https://svnweb.freebsd.org/changeset/base/314849 Log: Consistently use vm_ooffset_t type for the vm object offset in elf_load_section. The values passed currently as vm_offset_t are phdr.p_offset, which have the native Elf word size. Since elf_load_section interprets them as the file offset, use vm object offset type. Noted and reviewed by: alc Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/kern/imgact_elf.c Modified: head/sys/kern/imgact_elf.c ============================================================================== --- head/sys/kern/imgact_elf.c Tue Mar 7 12:43:37 2017 (r314848) +++ head/sys/kern/imgact_elf.c Tue Mar 7 13:36:43 2017 (r314849) @@ -89,7 +89,7 @@ static Elf_Brandinfo *__elfN(get_brandin const char *interp, int interp_name_len, int32_t *osrel); static int __elfN(load_file)(struct proc *p, const char *file, u_long *addr, u_long *entry, size_t pagesize); -static int __elfN(load_section)(struct image_params *imgp, vm_offset_t offset, +static int __elfN(load_section)(struct image_params *imgp, vm_ooffset_t offset, caddr_t vmaddr, size_t memsz, size_t filsz, vm_prot_t prot, size_t pagesize); static int __CONCAT(exec_, __elfN(imgact))(struct image_params *imgp); @@ -490,7 +490,7 @@ __elfN(map_insert)(struct image_params * } static int -__elfN(load_section)(struct image_params *imgp, vm_offset_t offset, +__elfN(load_section)(struct image_params *imgp, vm_ooffset_t offset, caddr_t vmaddr, size_t memsz, size_t filsz, vm_prot_t prot, size_t pagesize) { @@ -501,7 +501,7 @@ __elfN(load_section)(struct image_params vm_offset_t map_addr; int error, rv, cow; size_t copy_len; - vm_offset_t file_addr; + vm_ooffset_t file_addr; /* * It's necessary to fail if the filsz + offset taken from the From owner-svn-src-all@freebsd.org Tue Mar 7 13:37:36 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B2421D00F4C; Tue, 7 Mar 2017 13:37:36 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7F7C51776; Tue, 7 Mar 2017 13:37:36 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27DbZNv070087; Tue, 7 Mar 2017 13:37:35 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27DbZWe070086; Tue, 7 Mar 2017 13:37:35 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201703071337.v27DbZWe070086@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Tue, 7 Mar 2017 13:37:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314850 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 13:37:36 -0000 Author: kib Date: Tue Mar 7 13:37:35 2017 New Revision: 314850 URL: https://svnweb.freebsd.org/changeset/base/314850 Log: Require whole brand string matching for old Elf branding. Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/kern/imgact_elf.c Modified: head/sys/kern/imgact_elf.c ============================================================================== --- head/sys/kern/imgact_elf.c Tue Mar 7 13:36:43 2017 (r314849) +++ head/sys/kern/imgact_elf.c Tue Mar 7 13:37:35 2017 (r314850) @@ -309,8 +309,8 @@ __elfN(get_brandinfo)(struct image_param continue; if (hdr->e_machine == bi->machine && (hdr->e_ident[EI_OSABI] == bi->brand || - strncmp((const char *)&hdr->e_ident[OLD_EI_BRAND], - bi->compat_3_brand, strlen(bi->compat_3_brand)) == 0)) { + strcmp((const char *)&hdr->e_ident[OLD_EI_BRAND], + bi->compat_3_brand) == 0)) { /* Looks good, but give brand a chance to veto */ if (!bi->header_supported || bi->header_supported(imgp)) return (bi); From owner-svn-src-all@freebsd.org Tue Mar 7 13:38:26 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E347CD00FAF; Tue, 7 Mar 2017 13:38:26 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id B303518FE; Tue, 7 Mar 2017 13:38:26 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27DcP86070167; Tue, 7 Mar 2017 13:38:25 GMT (envelope-from kib@FreeBSD.org) Received: (from kib@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27DcPDQ070166; Tue, 7 Mar 2017 13:38:25 GMT (envelope-from kib@FreeBSD.org) Message-Id: <201703071338.v27DcPDQ070166@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: kib set sender to kib@FreeBSD.org using -f From: Konstantin Belousov Date: Tue, 7 Mar 2017 13:38:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314851 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 13:38:27 -0000 Author: kib Date: Tue Mar 7 13:38:25 2017 New Revision: 314851 URL: https://svnweb.freebsd.org/changeset/base/314851 Log: When selecting brand based on old Elf branding, prefer the brand which interpreter exactly matches the one requested by the activated image. This change applies r295277, which did the same for note branding, to the old brand selection, with the same reasoning of fixing compat32 interpreter substitution. PR: 211837 Reported by: kenji@kens.fm Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/sys/kern/imgact_elf.c Modified: head/sys/kern/imgact_elf.c ============================================================================== --- head/sys/kern/imgact_elf.c Tue Mar 7 13:37:35 2017 (r314850) +++ head/sys/kern/imgact_elf.c Tue Mar 7 13:38:25 2017 (r314851) @@ -312,10 +312,23 @@ __elfN(get_brandinfo)(struct image_param strcmp((const char *)&hdr->e_ident[OLD_EI_BRAND], bi->compat_3_brand) == 0)) { /* Looks good, but give brand a chance to veto */ - if (!bi->header_supported || bi->header_supported(imgp)) - return (bi); + if (!bi->header_supported || + bi->header_supported(imgp)) { + /* + * Again, prefer strictly matching + * interpreter path. + */ + if (strlen(bi->interp_path) + 1 == + interp_name_len && strncmp(interp, + bi->interp_path, interp_name_len) == 0) + return (bi); + if (bi_m == NULL) + bi_m = bi; + } } } + if (bi_m != NULL) + return (bi_m); /* No known brand, see if the header is recognized by any brand */ for (i = 0; i < MAX_BRANDS; i++) { From owner-svn-src-all@freebsd.org Tue Mar 7 13:41:03 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 31779D011DE; Tue, 7 Mar 2017 13:41:03 +0000 (UTC) (envelope-from badger@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 04F691B07; Tue, 7 Mar 2017 13:41:02 +0000 (UTC) (envelope-from badger@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27Df2WE070328; Tue, 7 Mar 2017 13:41:02 GMT (envelope-from badger@FreeBSD.org) Received: (from badger@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27Df2N6070326; Tue, 7 Mar 2017 13:41:02 GMT (envelope-from badger@FreeBSD.org) Message-Id: <201703071341.v27Df2N6070326@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: badger set sender to badger@FreeBSD.org using -f From: Eric Badger Date: Tue, 7 Mar 2017 13:41:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314852 - in head: sys/kern tests/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 13:41:03 -0000 Author: badger Date: Tue Mar 7 13:41:01 2017 New Revision: 314852 URL: https://svnweb.freebsd.org/changeset/base/314852 Log: don't stop in issignal() if P_SINGLE_EXIT is set Suppose a traced process is stopped in ptracestop() due to receipt of a SIGSTOP signal, and is awaiting orders from the tracing process on how to handle the signal. Before sending any such orders, the tracing process exits. This should kill the traced process. But suppose a second thread handles the SIGKILL and proceeds to exit1(), calling thread_single(). The first thread will now awaken and will have a chance to check once more if it should go to sleep due to the SIGSTOP. It must not sleep after P_SINGLE_EXIT has been set; this would prevent the SIGKILL from taking effect, leaving a stopped orphan behind after the tracing process dies. Also add new tests for this condition. Reviewed by: kib MFC after: 2 weeks Sponsored by: Dell EMC Differential Revision: https://reviews.freebsd.org/D9890 Modified: head/sys/kern/kern_sig.c head/tests/sys/kern/ptrace_test.c Modified: head/sys/kern/kern_sig.c ============================================================================== --- head/sys/kern/kern_sig.c Tue Mar 7 13:38:25 2017 (r314851) +++ head/sys/kern/kern_sig.c Tue Mar 7 13:41:01 2017 (r314852) @@ -2859,14 +2859,15 @@ issignal(struct thread *td) break; /* == ignore */ } /* - * If there is a pending stop signal to process - * with default action, stop here, - * then clear the signal. However, - * if process is member of an orphaned - * process group, ignore tty stop signals. + * If there is a pending stop signal to process with + * default action, stop here, then clear the signal. + * Traced or exiting processes should ignore stops. + * Additionally, a member of an orphaned process group + * should ignore tty stops. */ if (prop & SIGPROP_STOP) { - if (p->p_flag & (P_TRACED|P_WEXIT) || + if (p->p_flag & + (P_TRACED | P_WEXIT | P_SINGLE_EXIT) || (p->p_pgrp->pg_jobc == 0 && prop & SIGPROP_TTYSTOP)) break; /* == ignore */ Modified: head/tests/sys/kern/ptrace_test.c ============================================================================== --- head/tests/sys/kern/ptrace_test.c Tue Mar 7 13:38:25 2017 (r314851) +++ head/tests/sys/kern/ptrace_test.c Tue Mar 7 13:41:01 2017 (r314852) @@ -31,6 +31,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -2785,6 +2786,139 @@ ATF_TC_BODY(ptrace__PT_CONTINUE_with_sig ATF_REQUIRE(errno == ECHILD); } +static void * +raise_sigstop_thread(void *arg __unused) +{ + + raise(SIGSTOP); + return NULL; +} + +static void * +sleep_thread(void *arg __unused) +{ + + sleep(60); + return NULL; +} + +static void +terminate_with_pending_sigstop(bool sigstop_from_main_thread) +{ + pid_t fpid, wpid; + int status, i; + cpuset_t setmask; + cpusetid_t setid; + pthread_t t; + + /* + * Become the reaper for this process tree. We need to be able to check + * that both child and grandchild have died. + */ + ATF_REQUIRE(procctl(P_PID, getpid(), PROC_REAP_ACQUIRE, NULL) == 0); + + fpid = fork(); + ATF_REQUIRE(fpid >= 0); + if (fpid == 0) { + fpid = fork(); + CHILD_REQUIRE(fpid >= 0); + if (fpid == 0) { + trace_me(); + + /* Pin to CPU 0 to serialize thread execution. */ + CPU_ZERO(&setmask); + CPU_SET(0, &setmask); + CHILD_REQUIRE(cpuset(&setid) == 0); + CHILD_REQUIRE(cpuset_setaffinity(CPU_LEVEL_CPUSET, + CPU_WHICH_CPUSET, setid, + sizeof(setmask), &setmask) == 0); + + if (sigstop_from_main_thread) { + /* + * We expect the SIGKILL sent when our parent + * dies to be delivered to the new thread. + * Raise the SIGSTOP in this thread so the + * threads compete. + */ + CHILD_REQUIRE(pthread_create(&t, NULL, + sleep_thread, NULL) == 0); + raise(SIGSTOP); + } else { + /* + * We expect the SIGKILL to be delivered to + * this thread. After creating the new thread, + * just get off the CPU so the other thread can + * raise the SIGSTOP. + */ + CHILD_REQUIRE(pthread_create(&t, NULL, + raise_sigstop_thread, NULL) == 0); + sleep(60); + } + + exit(0); + } + /* First stop is trace_me() immediately after fork. */ + wpid = waitpid(fpid, &status, 0); + CHILD_REQUIRE(wpid == fpid); + CHILD_REQUIRE(WIFSTOPPED(status)); + CHILD_REQUIRE(WSTOPSIG(status) == SIGSTOP); + + CHILD_REQUIRE(ptrace(PT_CONTINUE, fpid, (caddr_t)1, 0) == 0); + + /* Second stop is from the raise(SIGSTOP). */ + wpid = waitpid(fpid, &status, 0); + CHILD_REQUIRE(wpid == fpid); + CHILD_REQUIRE(WIFSTOPPED(status)); + CHILD_REQUIRE(WSTOPSIG(status) == SIGSTOP); + + /* + * Terminate tracing process without detaching. Our child + * should be killed. + */ + exit(0); + } + + /* + * We should get a normal exit from our immediate child and a SIGKILL + * exit from our grandchild. The latter case is the interesting one. + * Our grandchild should not have stopped due to the SIGSTOP that was + * left dangling when its parent died. + */ + for (i = 0; i < 2; ++i) { + wpid = wait(&status); + if (wpid == fpid) + ATF_REQUIRE(WIFEXITED(status) && + WEXITSTATUS(status) == 0); + else + ATF_REQUIRE(WIFSIGNALED(status) && + WTERMSIG(status) == SIGKILL); + } +} + +/* + * These two tests ensure that if the tracing process exits without detaching + * just after the child received a SIGSTOP, the child is cleanly killed and + * doesn't go to sleep due to the SIGSTOP. The parent's death will send a + * SIGKILL to the child. If the SIGKILL and the SIGSTOP are handled by + * different threads, the SIGKILL must win. There are two variants of this + * test, designed to catch the case where the SIGKILL is delivered to the + * younger thread (the first test) and the case where the SIGKILL is delivered + * to the older thread (the second test). This behavior has changed in the + * past, so make no assumption. + */ +ATF_TC_WITHOUT_HEAD(ptrace__parent_terminate_with_pending_sigstop1); +ATF_TC_BODY(ptrace__parent_terminate_with_pending_sigstop1, tc) +{ + + terminate_with_pending_sigstop(true); +} +ATF_TC_WITHOUT_HEAD(ptrace__parent_terminate_with_pending_sigstop2); +ATF_TC_BODY(ptrace__parent_terminate_with_pending_sigstop2, tc) +{ + + terminate_with_pending_sigstop(false); +} + ATF_TP_ADD_TCS(tp) { @@ -2829,6 +2963,8 @@ ATF_TP_ADD_TCS(tp) ATF_TP_ADD_TC(tp, ptrace__PT_CONTINUE_with_signal_mix); ATF_TP_ADD_TC(tp, ptrace__PT_CONTINUE_with_signal_kqueue); ATF_TP_ADD_TC(tp, ptrace__PT_CONTINUE_with_signal_thread_sigmask); + ATF_TP_ADD_TC(tp, ptrace__parent_terminate_with_pending_sigstop1); + ATF_TP_ADD_TC(tp, ptrace__parent_terminate_with_pending_sigstop2); return (atf_no_error()); } From owner-svn-src-all@freebsd.org Tue Mar 7 13:51:15 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 68E4AD014EF; Tue, 7 Mar 2017 13:51:15 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 439C61195; Tue, 7 Mar 2017 13:51:15 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27DpE59074900; Tue, 7 Mar 2017 13:51:14 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27DpEpT074899; Tue, 7 Mar 2017 13:51:14 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201703071351.v27DpEpT074899@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Tue, 7 Mar 2017 13:51:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314853 - head/sys/compat/linuxkpi/common/src X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 13:51:15 -0000 Author: hselasky Date: Tue Mar 7 13:51:14 2017 New Revision: 314853 URL: https://svnweb.freebsd.org/changeset/base/314853 Log: Use grouptaskqueue for tasklets in the LinuxKPI. This avoids creating own per-CPU threads and also ensures the tasklet execution happens on the same CPU core invoking the tasklet. MFC after: 1 week Sponsored by: Mellanox Technologies Modified: head/sys/compat/linuxkpi/common/src/linux_tasklet.c Modified: head/sys/compat/linuxkpi/common/src/linux_tasklet.c ============================================================================== --- head/sys/compat/linuxkpi/common/src/linux_tasklet.c Tue Mar 7 13:41:01 2017 (r314852) +++ head/sys/compat/linuxkpi/common/src/linux_tasklet.c Tue Mar 7 13:51:14 2017 (r314853) @@ -29,12 +29,11 @@ __FBSDID("$FreeBSD$"); #include #include -#include +#include #include #include #include -#include #include #define TASKLET_ST_IDLE 0 @@ -54,17 +53,16 @@ __FBSDID("$FreeBSD$"); struct tasklet_worker { struct mtx mtx; TAILQ_HEAD(, tasklet_struct) head; - struct taskqueue *taskqueue; - struct task task; + struct grouptask gtask; } __aligned(CACHE_LINE_SIZE); #define TASKLET_WORKER_LOCK(tw) mtx_lock(&(tw)->mtx) #define TASKLET_WORKER_UNLOCK(tw) mtx_unlock(&(tw)->mtx) -static struct tasklet_worker tasklet_worker; +static DPCPU_DEFINE(struct tasklet_worker, tasklet_worker); static void -tasklet_handler(void *arg, int pending) +tasklet_handler(void *arg) { struct tasklet_worker *tw = (struct tasklet_worker *)arg; struct tasklet_struct *ts; @@ -72,7 +70,6 @@ tasklet_handler(void *arg, int pending) linux_set_current(curthread); TASKLET_WORKER_LOCK(tw); - local_bh_disable(); /* pin thread to CPU */ while (1) { ts = TAILQ_FIRST(&tw->head); if (ts == NULL) @@ -89,32 +86,47 @@ tasklet_handler(void *arg, int pending) } while (TASKLET_ST_CMPSET(ts, TASKLET_ST_EXEC, TASKLET_ST_IDLE) == 0); TASKLET_WORKER_LOCK(tw); } - local_bh_enable(); /* unpin thread from CPU */ TASKLET_WORKER_UNLOCK(tw); } static void tasklet_subsystem_init(void *arg __unused) { - struct tasklet_worker *tw = &tasklet_worker; - - tw->taskqueue = taskqueue_create("tasklet", M_WAITOK, - taskqueue_thread_enqueue, &tw->taskqueue); - mtx_init(&tw->mtx, "linux_tasklet", NULL, MTX_DEF); - TAILQ_INIT(&tw->head); - TASK_INIT(&tw->task, 0, tasklet_handler, tw); - taskqueue_start_threads(&tw->taskqueue, 1, PI_NET, "tasklet"); + struct tasklet_worker *tw; + char buf[32]; + int i; + + CPU_FOREACH(i) { + if (CPU_ABSENT(i)) + continue; + + tw = DPCPU_ID_PTR(i, tasklet_worker); + + mtx_init(&tw->mtx, "linux_tasklet", NULL, MTX_DEF); + TAILQ_INIT(&tw->head); + GROUPTASK_INIT(&tw->gtask, 0, tasklet_handler, tw); + snprintf(buf, sizeof(buf), "softirq%d", i); + taskqgroup_attach_cpu(qgroup_softirq, &tw->gtask, + "tasklet", i, -1, buf); + } } SYSINIT(linux_tasklet, SI_SUB_INIT_IF, SI_ORDER_THIRD, tasklet_subsystem_init, NULL); static void tasklet_subsystem_uninit(void *arg __unused) { - struct tasklet_worker *tw = &tasklet_worker; + struct tasklet_worker *tw; + int i; + + CPU_FOREACH(i) { + if (CPU_ABSENT(i)) + continue; + + tw = DPCPU_ID_PTR(i, tasklet_worker); - taskqueue_free(tw->taskqueue); - tw->taskqueue = NULL; - mtx_destroy(&tw->mtx); + taskqgroup_detach(qgroup_softirq, &tw->gtask); + mtx_destroy(&tw->mtx); + } } SYSUNINIT(linux_tasklet, SI_SUB_INIT_IF, SI_ORDER_THIRD, tasklet_subsystem_uninit, NULL); @@ -147,14 +159,16 @@ tasklet_schedule(struct tasklet_struct * if (TASKLET_ST_CMPSET(ts, TASKLET_ST_EXEC, TASKLET_ST_LOOP)) { /* tasklet_handler() will loop */ } else if (TASKLET_ST_CMPSET(ts, TASKLET_ST_IDLE, TASKLET_ST_BUSY)) { - struct tasklet_worker *tw = &tasklet_worker; + struct tasklet_worker *tw; + + tw = &DPCPU_GET(tasklet_worker); /* tasklet_handler() was not queued */ TASKLET_WORKER_LOCK(tw); /* enqueue tasklet */ TAILQ_INSERT_TAIL(&tw->head, ts, entry); /* schedule worker */ - taskqueue_enqueue(tw->taskqueue, &tw->task); + GROUPTASK_ENQUEUE(&tw->gtask); TASKLET_WORKER_UNLOCK(tw); } else { /* From owner-svn-src-all@freebsd.org Tue Mar 7 13:56:52 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9BACFD0178A; Tue, 7 Mar 2017 13:56:52 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2DB3A161E; Tue, 7 Mar 2017 13:56:52 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27DupGg078286; Tue, 7 Mar 2017 13:56:51 GMT (envelope-from manu@FreeBSD.org) Received: (from manu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27DunPb078269; Tue, 7 Mar 2017 13:56:49 GMT (envelope-from manu@FreeBSD.org) Message-Id: <201703071356.v27DunPb078269@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: manu set sender to manu@FreeBSD.org using -f From: Emmanuel Vadot Date: Tue, 7 Mar 2017 13:56:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314854 - in head/sys/gnu/dts: arm include/dt-bindings/clock include/dt-bindings/display include/dt-bindings/gpio include/dt-bindings/input include/dt-bindings/leds include/dt-bindings/... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 13:56:52 -0000 Author: manu Date: Tue Mar 7 13:56:49 2017 New Revision: 314854 URL: https://svnweb.freebsd.org/changeset/base/314854 Log: Update our device tree files to a Linux 4.10 Added: head/sys/gnu/dts/arm/am571x-idk.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/am571x-idk.dts head/sys/gnu/dts/arm/am57xx-beagle-x15-common.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/am57xx-beagle-x15-common.dtsi head/sys/gnu/dts/arm/am57xx-beagle-x15-revb1.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/am57xx-beagle-x15-revb1.dts head/sys/gnu/dts/arm/arm-realview-eb-11mp-bbrevd-ctrevb.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/arm-realview-eb-11mp-bbrevd-ctrevb.dts head/sys/gnu/dts/arm/arm-realview-eb-11mp-bbrevd.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/arm-realview-eb-11mp-bbrevd.dts head/sys/gnu/dts/arm/arm-realview-eb-11mp-ctrevb.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/arm-realview-eb-11mp-ctrevb.dts head/sys/gnu/dts/arm/arm-realview-eb-a9mp-bbrevd.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/arm-realview-eb-a9mp-bbrevd.dts head/sys/gnu/dts/arm/arm-realview-eb-bbrevd.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/arm-realview-eb-bbrevd.dts head/sys/gnu/dts/arm/arm-realview-eb-bbrevd.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/arm-realview-eb-bbrevd.dtsi head/sys/gnu/dts/arm/armada-385-turris-omnia.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/armada-385-turris-omnia.dts head/sys/gnu/dts/arm/armada-390-db.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/armada-390-db.dts head/sys/gnu/dts/arm/armada-395-gp.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/armada-395-gp.dts head/sys/gnu/dts/arm/armada-395.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/armada-395.dtsi head/sys/gnu/dts/arm/at91-sam9_l9260.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/at91-sam9_l9260.dts head/sys/gnu/dts/arm/at91sam9260ek.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/at91sam9260ek.dts head/sys/gnu/dts/arm/axp809.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/axp809.dtsi head/sys/gnu/dts/arm/bcm23550-sparrow.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm23550-sparrow.dts head/sys/gnu/dts/arm/bcm23550.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm23550.dtsi head/sys/gnu/dts/arm/bcm2835-rpi-zero.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm2835-rpi-zero.dts head/sys/gnu/dts/arm/bcm283x-rpi-smsc9512.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm283x-rpi-smsc9512.dtsi head/sys/gnu/dts/arm/bcm283x-rpi-smsc9514.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm283x-rpi-smsc9514.dtsi head/sys/gnu/dts/arm/bcm283x-rpi-usb-host.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm283x-rpi-usb-host.dtsi head/sys/gnu/dts/arm/bcm4708-luxul-xap-1510.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm4708-luxul-xap-1510.dts head/sys/gnu/dts/arm/bcm4709-tplink-archer-c9-v1.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm4709-tplink-archer-c9-v1.dts head/sys/gnu/dts/arm/bcm4709.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm4709.dtsi head/sys/gnu/dts/arm/bcm47094-luxul-xwr-3100.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm47094-luxul-xwr-3100.dts head/sys/gnu/dts/arm/bcm47094-netgear-r8500.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm47094-netgear-r8500.dts head/sys/gnu/dts/arm/bcm47094.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm47094.dtsi head/sys/gnu/dts/arm/bcm47189-tenda-ac9.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm47189-tenda-ac9.dts head/sys/gnu/dts/arm/bcm5301x-nand-cs0-bch1.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm5301x-nand-cs0-bch1.dtsi head/sys/gnu/dts/arm/bcm5301x-nand-cs0-bch4.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm5301x-nand-cs0-bch4.dtsi head/sys/gnu/dts/arm/bcm5301x-nand-cs0.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm5301x-nand-cs0.dtsi head/sys/gnu/dts/arm/bcm53573.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm53573.dtsi head/sys/gnu/dts/arm/bcm953012er.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm953012er.dts head/sys/gnu/dts/arm/bcm958522er.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm958522er.dts head/sys/gnu/dts/arm/bcm958525er.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm958525er.dts head/sys/gnu/dts/arm/bcm958525xmc.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm958525xmc.dts head/sys/gnu/dts/arm/bcm958622hr.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm958622hr.dts head/sys/gnu/dts/arm/bcm958623hr.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm958623hr.dts head/sys/gnu/dts/arm/bcm958625hr.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm958625hr.dts head/sys/gnu/dts/arm/bcm988312hr.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/bcm988312hr.dts head/sys/gnu/dts/arm/cloudengines-pogoplug-series-3.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/cloudengines-pogoplug-series-3.dts head/sys/gnu/dts/arm/da850-lcdk.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/da850-lcdk.dts head/sys/gnu/dts/arm/dra71-evm.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/dra71-evm.dts head/sys/gnu/dts/arm/dra72-evm-tps65917.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/dra72-evm-tps65917.dtsi head/sys/gnu/dts/arm/ep7209.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/ep7209.dtsi head/sys/gnu/dts/arm/ep7211-edb7211.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/ep7211-edb7211.dts head/sys/gnu/dts/arm/ep7211.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/ep7211.dtsi head/sys/gnu/dts/arm/exynos-mfc-reserved-memory.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/exynos-mfc-reserved-memory.dtsi head/sys/gnu/dts/arm/exynos4412-itop-elite.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/exynos4412-itop-elite.dts head/sys/gnu/dts/arm/exynos4412-itop-scp-core.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/exynos4412-itop-scp-core.dtsi head/sys/gnu/dts/arm/exynos5410-odroidxu.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/exynos5410-odroidxu.dts head/sys/gnu/dts/arm/exynos54xx-odroidxu-leds.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/exynos54xx-odroidxu-leds.dtsi head/sys/gnu/dts/arm/exynos54xx.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/exynos54xx.dtsi head/sys/gnu/dts/arm/hi3519-demb.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/hi3519-demb.dts head/sys/gnu/dts/arm/hi3519.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/hi3519.dtsi head/sys/gnu/dts/arm/imx23-sansa.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx23-sansa.dts head/sys/gnu/dts/arm/imx23-xfi3.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx23-xfi3.dts head/sys/gnu/dts/arm/imx53-usbarmory.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx53-usbarmory.dts head/sys/gnu/dts/arm/imx6dl-colibri-eval-v3.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6dl-colibri-eval-v3.dts head/sys/gnu/dts/arm/imx6dl-gw553x.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6dl-gw553x.dts head/sys/gnu/dts/arm/imx6dl-icore.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6dl-icore.dts head/sys/gnu/dts/arm/imx6dl-ts4900.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6dl-ts4900.dts head/sys/gnu/dts/arm/imx6q-gw553x.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6q-gw553x.dts head/sys/gnu/dts/arm/imx6q-h100.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6q-h100.dts head/sys/gnu/dts/arm/imx6q-icore.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6q-icore.dts head/sys/gnu/dts/arm/imx6q-nitrogen6_som2.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6q-nitrogen6_som2.dts head/sys/gnu/dts/arm/imx6q-ts4900.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6q-ts4900.dts head/sys/gnu/dts/arm/imx6q-utilite-pro.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6q-utilite-pro.dts head/sys/gnu/dts/arm/imx6qdl-colibri.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6qdl-colibri.dtsi head/sys/gnu/dts/arm/imx6qdl-gw553x.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6qdl-gw553x.dtsi head/sys/gnu/dts/arm/imx6qdl-icore.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6qdl-icore.dtsi head/sys/gnu/dts/arm/imx6qdl-nitrogen6_som2.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6qdl-nitrogen6_som2.dtsi head/sys/gnu/dts/arm/imx6qdl-ts4900.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6qdl-ts4900.dtsi head/sys/gnu/dts/arm/imx6sx-udoo-neo-basic.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6sx-udoo-neo-basic.dts head/sys/gnu/dts/arm/imx6sx-udoo-neo-extended.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6sx-udoo-neo-extended.dts head/sys/gnu/dts/arm/imx6sx-udoo-neo-full.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6sx-udoo-neo-full.dts head/sys/gnu/dts/arm/imx6sx-udoo-neo.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6sx-udoo-neo.dtsi head/sys/gnu/dts/arm/imx6ul-geam-kit.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6ul-geam-kit.dts head/sys/gnu/dts/arm/imx6ul-geam.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6ul-geam.dtsi head/sys/gnu/dts/arm/imx6ul-liteboard.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6ul-liteboard.dts head/sys/gnu/dts/arm/imx6ul-litesom.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6ul-litesom.dtsi head/sys/gnu/dts/arm/imx6ull-14x14-evk.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6ull-14x14-evk.dts head/sys/gnu/dts/arm/imx6ull-pinfunc.h - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6ull-pinfunc.h head/sys/gnu/dts/arm/imx6ull.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx6ull.dtsi head/sys/gnu/dts/arm/imx7-colibri-eval-v3.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx7-colibri-eval-v3.dtsi head/sys/gnu/dts/arm/imx7-colibri.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx7-colibri.dtsi head/sys/gnu/dts/arm/imx7d-colibri-eval-v3.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx7d-colibri-eval-v3.dts head/sys/gnu/dts/arm/imx7d-colibri.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx7d-colibri.dtsi head/sys/gnu/dts/arm/imx7s-colibri-eval-v3.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx7s-colibri-eval-v3.dts head/sys/gnu/dts/arm/imx7s-colibri.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx7s-colibri.dtsi head/sys/gnu/dts/arm/imx7s-warp.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx7s-warp.dts head/sys/gnu/dts/arm/imx7s.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/imx7s.dtsi head/sys/gnu/dts/arm/omap4-droid4-xt894.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/omap4-droid4-xt894.dts head/sys/gnu/dts/arm/orion5x-linkstation-lschl.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/orion5x-linkstation-lschl.dts head/sys/gnu/dts/arm/orion5x-mv88f5181.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/orion5x-mv88f5181.dtsi head/sys/gnu/dts/arm/orion5x-netgear-wnr854t.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/orion5x-netgear-wnr854t.dts head/sys/gnu/dts/arm/ox820.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/ox820.dtsi head/sys/gnu/dts/arm/pxa25x.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/pxa25x.dtsi head/sys/gnu/dts/arm/qcom-apq8060-dragonboard.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/qcom-apq8060-dragonboard.dts head/sys/gnu/dts/arm/qcom-apq8064-arrow-sd-600eval-pins.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/qcom-apq8064-arrow-sd-600eval-pins.dtsi head/sys/gnu/dts/arm/qcom-apq8064-arrow-sd-600eval.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/qcom-apq8064-arrow-sd-600eval.dts head/sys/gnu/dts/arm/qcom-mdm9615-wp8548-mangoh-green.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/qcom-mdm9615-wp8548-mangoh-green.dts head/sys/gnu/dts/arm/qcom-mdm9615-wp8548.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/qcom-mdm9615-wp8548.dtsi head/sys/gnu/dts/arm/qcom-mdm9615.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/qcom-mdm9615.dtsi head/sys/gnu/dts/arm/qcom-msm8974-lge-nexus5-hammerhead.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/qcom-msm8974-lge-nexus5-hammerhead.dts head/sys/gnu/dts/arm/r7s72100-rskrza1.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/r7s72100-rskrza1.dts head/sys/gnu/dts/arm/r8a7743-sk-rzg1m.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/r8a7743-sk-rzg1m.dts head/sys/gnu/dts/arm/r8a7743.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/r8a7743.dtsi head/sys/gnu/dts/arm/r8a7745-sk-rzg1e.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/r8a7745-sk-rzg1e.dts head/sys/gnu/dts/arm/r8a7745.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/r8a7745.dtsi head/sys/gnu/dts/arm/r8a7792-blanche.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/r8a7792-blanche.dts head/sys/gnu/dts/arm/r8a7792-wheat.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/r8a7792-wheat.dts head/sys/gnu/dts/arm/r8a7792.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/r8a7792.dtsi head/sys/gnu/dts/arm/rk1108-evb.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/rk1108-evb.dts head/sys/gnu/dts/arm/rk1108.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/rk1108.dtsi head/sys/gnu/dts/arm/rk3066a-mk808.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/rk3066a-mk808.dts head/sys/gnu/dts/arm/rk3188-px3-evb.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/rk3188-px3-evb.dts head/sys/gnu/dts/arm/rk3229-evb.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/rk3229-evb.dts head/sys/gnu/dts/arm/rk322x.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/rk322x.dtsi head/sys/gnu/dts/arm/rk3288-fennec.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/rk3288-fennec.dts head/sys/gnu/dts/arm/rk3288-firefly-reload-core.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/rk3288-firefly-reload-core.dtsi head/sys/gnu/dts/arm/rk3288-firefly-reload.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/rk3288-firefly-reload.dts head/sys/gnu/dts/arm/rk3288-veyron-analog-audio.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/rk3288-veyron-analog-audio.dtsi head/sys/gnu/dts/arm/sama5d3xmb_emac.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sama5d3xmb_emac.dtsi head/sys/gnu/dts/arm/sama5d3xmb_gmac.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sama5d3xmb_gmac.dtsi head/sys/gnu/dts/arm/socfpga_arria10_socdk_qspi.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/socfpga_arria10_socdk_qspi.dts head/sys/gnu/dts/arm/socfpga_cyclone5_sodia.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/socfpga_cyclone5_sodia.dts head/sys/gnu/dts/arm/stih410-b2260.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/stih410-b2260.dts head/sys/gnu/dts/arm/stm32746g-eval.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/stm32746g-eval.dts head/sys/gnu/dts/arm/stm32f746.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/stm32f746.dtsi head/sys/gnu/dts/arm/sun5i-a13-empire-electronix-m712.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun5i-a13-empire-electronix-m712.dts head/sys/gnu/dts/arm/sun5i-gr8-chip-pro.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun5i-gr8-chip-pro.dts head/sys/gnu/dts/arm/sun5i-gr8-evb.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun5i-gr8-evb.dts head/sys/gnu/dts/arm/sun5i-gr8.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun5i-gr8.dtsi head/sys/gnu/dts/arm/sun5i-reference-design-tablet.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun5i-reference-design-tablet.dtsi head/sys/gnu/dts/arm/sun6i-a31s-inet-q972.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun6i-a31s-inet-q972.dts head/sys/gnu/dts/arm/sun6i-reference-design-tablet.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun6i-reference-design-tablet.dtsi head/sys/gnu/dts/arm/sun7i-a20-bananapi-m1-plus.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun7i-a20-bananapi-m1-plus.dts head/sys/gnu/dts/arm/sun8i-a23-inet86dz.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun8i-a23-inet86dz.dts head/sys/gnu/dts/arm/sun8i-a23-polaroid-mid2407pxe03.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun8i-a23-polaroid-mid2407pxe03.dts head/sys/gnu/dts/arm/sun8i-a33-inet-d978-rev2.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun8i-a33-inet-d978-rev2.dts head/sys/gnu/dts/arm/sun8i-a33-olinuxino.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun8i-a33-olinuxino.dts head/sys/gnu/dts/arm/sun8i-h3-bananapi-m2-plus.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun8i-h3-bananapi-m2-plus.dts head/sys/gnu/dts/arm/sun8i-h3-nanopi-m1.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun8i-h3-nanopi-m1.dts head/sys/gnu/dts/arm/sun8i-h3-nanopi-neo.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun8i-h3-nanopi-neo.dts head/sys/gnu/dts/arm/sun8i-h3-nanopi.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun8i-h3-nanopi.dtsi head/sys/gnu/dts/arm/sun8i-h3-orangepi-lite.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun8i-h3-orangepi-lite.dts head/sys/gnu/dts/arm/sun8i-h3-orangepi-pc-plus.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun8i-h3-orangepi-pc-plus.dts head/sys/gnu/dts/arm/sun8i-h3-orangepi-plus2e.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun8i-h3-orangepi-plus2e.dts head/sys/gnu/dts/arm/sun8i-r16-parrot.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun8i-r16-parrot.dts head/sys/gnu/dts/arm/sun8i-reference-design-tablet.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sun8i-reference-design-tablet.dtsi head/sys/gnu/dts/arm/sunxi-reference-design-tablet.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/sunxi-reference-design-tablet.dtsi head/sys/gnu/dts/arm/tegra124-apalis-emc.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/tegra124-apalis-emc.dtsi head/sys/gnu/dts/arm/tegra124-apalis-eval.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/tegra124-apalis-eval.dts head/sys/gnu/dts/arm/tegra124-apalis.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/tegra124-apalis.dtsi head/sys/gnu/dts/arm/uniphier-ld4-ref.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-ld4-ref.dts head/sys/gnu/dts/arm/uniphier-ld4.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-ld4.dtsi head/sys/gnu/dts/arm/uniphier-ld6b-ref.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-ld6b-ref.dts head/sys/gnu/dts/arm/uniphier-ld6b.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-ld6b.dtsi head/sys/gnu/dts/arm/uniphier-pro4-ace.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-pro4-ace.dts head/sys/gnu/dts/arm/uniphier-pro4-ref.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-pro4-ref.dts head/sys/gnu/dts/arm/uniphier-pro4-sanji.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-pro4-sanji.dts head/sys/gnu/dts/arm/uniphier-pro4.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-pro4.dtsi head/sys/gnu/dts/arm/uniphier-pro5.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-pro5.dtsi head/sys/gnu/dts/arm/uniphier-pxs2-gentil.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-pxs2-gentil.dts head/sys/gnu/dts/arm/uniphier-pxs2-vodka.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-pxs2-vodka.dts head/sys/gnu/dts/arm/uniphier-pxs2.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-pxs2.dtsi head/sys/gnu/dts/arm/uniphier-sld3-ref.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-sld3-ref.dts head/sys/gnu/dts/arm/uniphier-sld3.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-sld3.dtsi head/sys/gnu/dts/arm/uniphier-sld8-ref.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-sld8-ref.dts head/sys/gnu/dts/arm/uniphier-sld8.dtsi - copied unchanged from r314847, vendor/device-tree/dist/src/arm/uniphier-sld8.dtsi head/sys/gnu/dts/arm/zynq-microzed.dts - copied unchanged from r314847, vendor/device-tree/dist/src/arm/zynq-microzed.dts head/sys/gnu/dts/include/dt-bindings/clock/gxbb-aoclkc.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/gxbb-aoclkc.h head/sys/gnu/dts/include/dt-bindings/clock/gxbb-clkc.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/gxbb-clkc.h head/sys/gnu/dts/include/dt-bindings/clock/hi3516cv300-clock.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/hi3516cv300-clock.h head/sys/gnu/dts/include/dt-bindings/clock/histb-clock.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/histb-clock.h head/sys/gnu/dts/include/dt-bindings/clock/maxim,max77620.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/maxim,max77620.h head/sys/gnu/dts/include/dt-bindings/clock/mt2701-clk.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/mt2701-clk.h head/sys/gnu/dts/include/dt-bindings/clock/oxsemi,ox810se.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/oxsemi,ox810se.h head/sys/gnu/dts/include/dt-bindings/clock/oxsemi,ox820.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/oxsemi,ox820.h head/sys/gnu/dts/include/dt-bindings/clock/qcom,gcc-mdm9615.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/qcom,gcc-mdm9615.h head/sys/gnu/dts/include/dt-bindings/clock/qcom,gcc-msm8994.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/qcom,gcc-msm8994.h head/sys/gnu/dts/include/dt-bindings/clock/qcom,lcc-mdm9615.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/qcom,lcc-mdm9615.h head/sys/gnu/dts/include/dt-bindings/clock/qcom,rpmcc.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/qcom,rpmcc.h head/sys/gnu/dts/include/dt-bindings/clock/r8a7743-cpg-mssr.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/r8a7743-cpg-mssr.h head/sys/gnu/dts/include/dt-bindings/clock/r8a7745-cpg-mssr.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/r8a7745-cpg-mssr.h head/sys/gnu/dts/include/dt-bindings/clock/r8a7792-clock.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/r8a7792-clock.h head/sys/gnu/dts/include/dt-bindings/clock/r8a7796-cpg-mssr.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/r8a7796-cpg-mssr.h head/sys/gnu/dts/include/dt-bindings/clock/rk1108-cru.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/rk1108-cru.h head/sys/gnu/dts/include/dt-bindings/clock/sun50i-a64-ccu.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/sun50i-a64-ccu.h head/sys/gnu/dts/include/dt-bindings/clock/sun6i-a31-ccu.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/sun6i-a31-ccu.h head/sys/gnu/dts/include/dt-bindings/clock/sun8i-a23-a33-ccu.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/sun8i-a23-a33-ccu.h head/sys/gnu/dts/include/dt-bindings/clock/sun8i-h3-ccu.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/sun8i-h3-ccu.h head/sys/gnu/dts/include/dt-bindings/clock/tegra186-clock.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/tegra186-clock.h head/sys/gnu/dts/include/dt-bindings/clock/zx296718-clock.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/clock/zx296718-clock.h head/sys/gnu/dts/include/dt-bindings/display/ - copied from r314847, vendor/device-tree/dist/include/dt-bindings/display/ head/sys/gnu/dts/include/dt-bindings/gpio/meson-gxl-gpio.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/gpio/meson-gxl-gpio.h head/sys/gnu/dts/include/dt-bindings/leds/leds-pca9532.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/leds/leds-pca9532.h head/sys/gnu/dts/include/dt-bindings/mailbox/ - copied from r314847, vendor/device-tree/dist/include/dt-bindings/mailbox/ head/sys/gnu/dts/include/dt-bindings/memory/mt2701-larb-port.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/memory/mt2701-larb-port.h head/sys/gnu/dts/include/dt-bindings/mfd/stm32f4-rcc.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/mfd/stm32f4-rcc.h head/sys/gnu/dts/include/dt-bindings/pinctrl/keystone.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/pinctrl/keystone.h head/sys/gnu/dts/include/dt-bindings/pinctrl/samsung.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/pinctrl/samsung.h head/sys/gnu/dts/include/dt-bindings/pinctrl/stm32f746-pinfunc.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/pinctrl/stm32f746-pinfunc.h head/sys/gnu/dts/include/dt-bindings/power/mt2701-power.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/power/mt2701-power.h head/sys/gnu/dts/include/dt-bindings/power/r8a7743-sysc.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/power/r8a7743-sysc.h head/sys/gnu/dts/include/dt-bindings/power/r8a7745-sysc.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/power/r8a7745-sysc.h head/sys/gnu/dts/include/dt-bindings/power/r8a7792-sysc.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/power/r8a7792-sysc.h head/sys/gnu/dts/include/dt-bindings/power/r8a7796-sysc.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/power/r8a7796-sysc.h head/sys/gnu/dts/include/dt-bindings/power/tegra186-powergate.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/power/tegra186-powergate.h head/sys/gnu/dts/include/dt-bindings/reset/amlogic,meson-gxbb-reset.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/reset/amlogic,meson-gxbb-reset.h head/sys/gnu/dts/include/dt-bindings/reset/amlogic,meson8b-reset.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/reset/amlogic,meson8b-reset.h head/sys/gnu/dts/include/dt-bindings/reset/gxbb-aoclkc.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/reset/gxbb-aoclkc.h head/sys/gnu/dts/include/dt-bindings/reset/mt2701-resets.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/reset/mt2701-resets.h head/sys/gnu/dts/include/dt-bindings/reset/oxsemi,ox810se.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/reset/oxsemi,ox810se.h head/sys/gnu/dts/include/dt-bindings/reset/oxsemi,ox820.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/reset/oxsemi,ox820.h head/sys/gnu/dts/include/dt-bindings/reset/qcom,gcc-mdm9615.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/reset/qcom,gcc-mdm9615.h head/sys/gnu/dts/include/dt-bindings/reset/sun50i-a64-ccu.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/reset/sun50i-a64-ccu.h head/sys/gnu/dts/include/dt-bindings/reset/sun6i-a31-ccu.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/reset/sun6i-a31-ccu.h head/sys/gnu/dts/include/dt-bindings/reset/sun8i-a23-a33-ccu.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/reset/sun8i-a23-a33-ccu.h head/sys/gnu/dts/include/dt-bindings/reset/sun8i-h3-ccu.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/reset/sun8i-h3-ccu.h head/sys/gnu/dts/include/dt-bindings/reset/tegra186-reset.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/reset/tegra186-reset.h head/sys/gnu/dts/include/dt-bindings/reset/ti-syscon.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/reset/ti-syscon.h head/sys/gnu/dts/include/dt-bindings/soc/rockchip,boot-mode.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/soc/rockchip,boot-mode.h head/sys/gnu/dts/include/dt-bindings/sound/cs42l42.h - copied unchanged from r314847, vendor/device-tree/dist/include/dt-bindings/sound/cs42l42.h Modified: head/sys/gnu/dts/arm/aks-cdu.dts head/sys/gnu/dts/arm/am335x-baltos-ir2110.dts head/sys/gnu/dts/arm/am335x-baltos-ir3220.dts head/sys/gnu/dts/arm/am335x-baltos-ir5221.dts head/sys/gnu/dts/arm/am335x-baltos.dtsi head/sys/gnu/dts/arm/am335x-base0033.dts head/sys/gnu/dts/arm/am335x-bone-common.dtsi head/sys/gnu/dts/arm/am335x-boneblack.dts head/sys/gnu/dts/arm/am335x-chilisom.dtsi head/sys/gnu/dts/arm/am335x-cm-t335.dts head/sys/gnu/dts/arm/am335x-evm.dts head/sys/gnu/dts/arm/am335x-evmsk.dts head/sys/gnu/dts/arm/am335x-icev2.dts head/sys/gnu/dts/arm/am335x-igep0033.dtsi head/sys/gnu/dts/arm/am335x-lxm.dts head/sys/gnu/dts/arm/am335x-nano.dts head/sys/gnu/dts/arm/am335x-pepper.dts head/sys/gnu/dts/arm/am335x-phycore-som.dtsi head/sys/gnu/dts/arm/am335x-shc.dts head/sys/gnu/dts/arm/am335x-sl50.dts head/sys/gnu/dts/arm/am335x-wega.dtsi head/sys/gnu/dts/arm/am33xx.dtsi head/sys/gnu/dts/arm/am3517-craneboard.dts head/sys/gnu/dts/arm/am3517-evm.dts head/sys/gnu/dts/arm/am3517.dtsi head/sys/gnu/dts/arm/am3517_mt_ventoux.dts head/sys/gnu/dts/arm/am4372.dtsi head/sys/gnu/dts/arm/am437x-cm-t43.dts head/sys/gnu/dts/arm/am437x-gp-evm.dts head/sys/gnu/dts/arm/am437x-idk-evm.dts head/sys/gnu/dts/arm/am437x-sbc-t43.dts head/sys/gnu/dts/arm/am437x-sk-evm.dts head/sys/gnu/dts/arm/am43x-epos-evm.dts head/sys/gnu/dts/arm/am43xx-clocks.dtsi head/sys/gnu/dts/arm/am572x-idk.dts head/sys/gnu/dts/arm/am57xx-beagle-x15.dts head/sys/gnu/dts/arm/am57xx-cl-som-am57x.dts head/sys/gnu/dts/arm/am57xx-idk-common.dtsi head/sys/gnu/dts/arm/am57xx-sbc-am57x.dts head/sys/gnu/dts/arm/animeo_ip.dts head/sys/gnu/dts/arm/arm-realview-eb-11mp.dts head/sys/gnu/dts/arm/arm-realview-eb.dtsi head/sys/gnu/dts/arm/arm-realview-pbx-a9.dts head/sys/gnu/dts/arm/armada-370-db.dts head/sys/gnu/dts/arm/armada-370-dlink-dns327l.dts head/sys/gnu/dts/arm/armada-370-mirabox.dts head/sys/gnu/dts/arm/armada-370-netgear-rn102.dts head/sys/gnu/dts/arm/armada-370-netgear-rn104.dts head/sys/gnu/dts/arm/armada-370-rd.dts head/sys/gnu/dts/arm/armada-370-seagate-nas-4bay.dts head/sys/gnu/dts/arm/armada-370-seagate-nas-xbay.dtsi head/sys/gnu/dts/arm/armada-370-seagate-personal-cloud.dtsi head/sys/gnu/dts/arm/armada-370-synology-ds213j.dts head/sys/gnu/dts/arm/armada-370-xp.dtsi head/sys/gnu/dts/arm/armada-370.dtsi head/sys/gnu/dts/arm/armada-375-db.dts head/sys/gnu/dts/arm/armada-375.dtsi head/sys/gnu/dts/arm/armada-385-db-ap.dts head/sys/gnu/dts/arm/armada-385-linksys.dtsi head/sys/gnu/dts/arm/armada-388-clearfog.dts head/sys/gnu/dts/arm/armada-388-db.dts head/sys/gnu/dts/arm/armada-388-gp.dts head/sys/gnu/dts/arm/armada-388-rd.dts head/sys/gnu/dts/arm/armada-38x.dtsi head/sys/gnu/dts/arm/armada-390.dtsi head/sys/gnu/dts/arm/armada-398-db.dts head/sys/gnu/dts/arm/armada-398.dtsi head/sys/gnu/dts/arm/armada-39x.dtsi head/sys/gnu/dts/arm/armada-xp-axpwifiap.dts head/sys/gnu/dts/arm/armada-xp-db.dts head/sys/gnu/dts/arm/armada-xp-gp.dts head/sys/gnu/dts/arm/armada-xp-lenovo-ix4-300d.dts head/sys/gnu/dts/arm/armada-xp-linksys-mamba.dts head/sys/gnu/dts/arm/armada-xp-matrix.dts head/sys/gnu/dts/arm/armada-xp-mv78230.dtsi head/sys/gnu/dts/arm/armada-xp-mv78260.dtsi head/sys/gnu/dts/arm/armada-xp-mv78460.dtsi head/sys/gnu/dts/arm/armada-xp-netgear-rn2120.dts head/sys/gnu/dts/arm/armada-xp-openblocks-ax3-4.dts head/sys/gnu/dts/arm/armada-xp-synology-ds414.dts head/sys/gnu/dts/arm/armada-xp.dtsi head/sys/gnu/dts/arm/armv7-m.dtsi head/sys/gnu/dts/arm/artpec6-devboard.dts head/sys/gnu/dts/arm/artpec6.dtsi head/sys/gnu/dts/arm/at91-ariag25.dts head/sys/gnu/dts/arm/at91-cosino.dtsi head/sys/gnu/dts/arm/at91-foxg20.dts head/sys/gnu/dts/arm/at91-kizbox.dts head/sys/gnu/dts/arm/at91-qil_a9260.dts head/sys/gnu/dts/arm/at91-sama5d2_xplained.dts head/sys/gnu/dts/arm/at91-sama5d3_xplained.dts head/sys/gnu/dts/arm/at91-sama5d4_ma5d4.dtsi head/sys/gnu/dts/arm/at91-sama5d4_ma5d4evk.dts head/sys/gnu/dts/arm/at91-sama5d4_xplained.dts head/sys/gnu/dts/arm/at91-sama5d4ek.dts head/sys/gnu/dts/arm/at91-vinco.dts head/sys/gnu/dts/arm/at91rm9200.dtsi head/sys/gnu/dts/arm/at91sam9260.dtsi head/sys/gnu/dts/arm/at91sam9261.dtsi head/sys/gnu/dts/arm/at91sam9263.dtsi head/sys/gnu/dts/arm/at91sam9263ek.dts head/sys/gnu/dts/arm/at91sam9g20ek_common.dtsi head/sys/gnu/dts/arm/at91sam9g25ek.dts head/sys/gnu/dts/arm/at91sam9g45.dtsi head/sys/gnu/dts/arm/at91sam9n12.dtsi head/sys/gnu/dts/arm/at91sam9rl.dtsi head/sys/gnu/dts/arm/at91sam9rlek.dts head/sys/gnu/dts/arm/at91sam9x5.dtsi head/sys/gnu/dts/arm/at91sam9x5ek.dtsi head/sys/gnu/dts/arm/axp209.dtsi head/sys/gnu/dts/arm/axp22x.dtsi head/sys/gnu/dts/arm/bcm-cygnus.dtsi head/sys/gnu/dts/arm/bcm-nsp.dtsi head/sys/gnu/dts/arm/bcm11351.dtsi head/sys/gnu/dts/arm/bcm21664.dtsi head/sys/gnu/dts/arm/bcm2835-rpi-a-plus.dts head/sys/gnu/dts/arm/bcm2835-rpi-a.dts head/sys/gnu/dts/arm/bcm2835-rpi-b-plus.dts head/sys/gnu/dts/arm/bcm2835-rpi-b-rev2.dts head/sys/gnu/dts/arm/bcm2835-rpi-b.dts head/sys/gnu/dts/arm/bcm2835-rpi.dtsi head/sys/gnu/dts/arm/bcm2835.dtsi head/sys/gnu/dts/arm/bcm2836-rpi-2-b.dts head/sys/gnu/dts/arm/bcm2836.dtsi head/sys/gnu/dts/arm/bcm283x.dtsi head/sys/gnu/dts/arm/bcm4708-buffalo-wzr-1750dhp.dts head/sys/gnu/dts/arm/bcm4708-netgear-r6250.dts head/sys/gnu/dts/arm/bcm4708-netgear-r6300-v2.dts head/sys/gnu/dts/arm/bcm4708-smartrg-sr400ac.dts head/sys/gnu/dts/arm/bcm4709-asus-rt-ac87u.dts head/sys/gnu/dts/arm/bcm4709-buffalo-wxr-1900dhp.dts head/sys/gnu/dts/arm/bcm4709-netgear-r7000.dts head/sys/gnu/dts/arm/bcm4709-netgear-r8000.dts head/sys/gnu/dts/arm/bcm47094-dlink-dir-885l.dts head/sys/gnu/dts/arm/bcm5301x-nand-cs0-bch8.dtsi head/sys/gnu/dts/arm/bcm5301x.dtsi head/sys/gnu/dts/arm/bcm958625k.dts head/sys/gnu/dts/arm/berlin2-sony-nsz-gs7.dts head/sys/gnu/dts/arm/berlin2.dtsi head/sys/gnu/dts/arm/berlin2cd-google-chromecast.dts head/sys/gnu/dts/arm/berlin2cd.dtsi head/sys/gnu/dts/arm/berlin2q-marvell-dmp.dts head/sys/gnu/dts/arm/berlin2q.dtsi head/sys/gnu/dts/arm/compulab-sb-som.dtsi head/sys/gnu/dts/arm/da850-evm.dts head/sys/gnu/dts/arm/da850.dtsi head/sys/gnu/dts/arm/dm8148-evm.dts head/sys/gnu/dts/arm/dm8148-t410.dts head/sys/gnu/dts/arm/dm814x.dtsi head/sys/gnu/dts/arm/dm8168-evm.dts head/sys/gnu/dts/arm/dm816x.dtsi head/sys/gnu/dts/arm/dra62x-j5eco-evm.dts head/sys/gnu/dts/arm/dra7-evm.dts head/sys/gnu/dts/arm/dra7.dtsi head/sys/gnu/dts/arm/dra72-evm-common.dtsi head/sys/gnu/dts/arm/dra72-evm-revc.dts head/sys/gnu/dts/arm/dra72-evm.dts head/sys/gnu/dts/arm/dra72x.dtsi head/sys/gnu/dts/arm/dra74x.dtsi head/sys/gnu/dts/arm/dra7xx-clocks.dtsi head/sys/gnu/dts/arm/efm32gg-dk3750.dts head/sys/gnu/dts/arm/efm32gg.dtsi head/sys/gnu/dts/arm/emev2-kzm9d.dts head/sys/gnu/dts/arm/emev2.dtsi head/sys/gnu/dts/arm/ethernut5.dts head/sys/gnu/dts/arm/evk-pro3.dts head/sys/gnu/dts/arm/exynos3250-artik5-eval.dts head/sys/gnu/dts/arm/exynos3250-artik5.dtsi head/sys/gnu/dts/arm/exynos3250-monk.dts head/sys/gnu/dts/arm/exynos3250-pinctrl.dtsi head/sys/gnu/dts/arm/exynos3250-rinato.dts head/sys/gnu/dts/arm/exynos3250.dtsi head/sys/gnu/dts/arm/exynos4.dtsi head/sys/gnu/dts/arm/exynos4210-origen.dts head/sys/gnu/dts/arm/exynos4210-pinctrl.dtsi head/sys/gnu/dts/arm/exynos4210-smdkv310.dts head/sys/gnu/dts/arm/exynos4210-trats.dts head/sys/gnu/dts/arm/exynos4210-universal_c210.dts head/sys/gnu/dts/arm/exynos4210.dtsi head/sys/gnu/dts/arm/exynos4412-odroid-common.dtsi head/sys/gnu/dts/arm/exynos4412-odroidu3.dts head/sys/gnu/dts/arm/exynos4412-odroidx.dts head/sys/gnu/dts/arm/exynos4412-odroidx2.dts head/sys/gnu/dts/arm/exynos4412-origen.dts head/sys/gnu/dts/arm/exynos4412-smdk4412.dts head/sys/gnu/dts/arm/exynos4412-tiny4412.dts head/sys/gnu/dts/arm/exynos4412-trats2.dts head/sys/gnu/dts/arm/exynos4x12-pinctrl.dtsi head/sys/gnu/dts/arm/exynos4x12.dtsi head/sys/gnu/dts/arm/exynos5.dtsi head/sys/gnu/dts/arm/exynos5250-arndale.dts head/sys/gnu/dts/arm/exynos5250-pinctrl.dtsi head/sys/gnu/dts/arm/exynos5250-smdk5250.dts head/sys/gnu/dts/arm/exynos5250-snow-common.dtsi head/sys/gnu/dts/arm/exynos5250-snow-rev5.dts head/sys/gnu/dts/arm/exynos5250-snow.dts head/sys/gnu/dts/arm/exynos5250-spring.dts head/sys/gnu/dts/arm/exynos5250.dtsi head/sys/gnu/dts/arm/exynos5260-pinctrl.dtsi head/sys/gnu/dts/arm/exynos5260-xyref5260.dts head/sys/gnu/dts/arm/exynos5260.dtsi head/sys/gnu/dts/arm/exynos5410-pinctrl.dtsi head/sys/gnu/dts/arm/exynos5410-smdk5410.dts head/sys/gnu/dts/arm/exynos5410.dtsi head/sys/gnu/dts/arm/exynos5420-arndale-octa.dts head/sys/gnu/dts/arm/exynos5420-peach-pit.dts head/sys/gnu/dts/arm/exynos5420-pinctrl.dtsi head/sys/gnu/dts/arm/exynos5420-smdk5420.dts head/sys/gnu/dts/arm/exynos5420.dtsi head/sys/gnu/dts/arm/exynos5422-odroidxu3-common.dtsi head/sys/gnu/dts/arm/exynos5422-odroidxu3-lite.dts head/sys/gnu/dts/arm/exynos5422-odroidxu3.dts head/sys/gnu/dts/arm/exynos5440-sd5v1.dts head/sys/gnu/dts/arm/exynos5440-ssdk5440.dts head/sys/gnu/dts/arm/exynos5440.dtsi head/sys/gnu/dts/arm/exynos5800-peach-pi.dts head/sys/gnu/dts/arm/ge863-pro3.dtsi head/sys/gnu/dts/arm/hi3620.dtsi head/sys/gnu/dts/arm/hip01.dtsi head/sys/gnu/dts/arm/hisi-x5hd2.dtsi head/sys/gnu/dts/arm/imx1-ads.dts head/sys/gnu/dts/arm/imx1-apf9328.dts head/sys/gnu/dts/arm/imx1.dtsi head/sys/gnu/dts/arm/imx23.dtsi head/sys/gnu/dts/arm/imx25-eukrea-mbimxsd25-baseboard.dts head/sys/gnu/dts/arm/imx25-pdk.dts head/sys/gnu/dts/arm/imx25-pinfunc.h head/sys/gnu/dts/arm/imx25.dtsi head/sys/gnu/dts/arm/imx27-eukrea-cpuimx27.dtsi head/sys/gnu/dts/arm/imx27-eukrea-mbimxsd27-baseboard.dts head/sys/gnu/dts/arm/imx27-pdk.dts head/sys/gnu/dts/arm/imx27-phytec-phycard-s-rdk.dts head/sys/gnu/dts/arm/imx27-phytec-phycore-rdk.dts head/sys/gnu/dts/arm/imx27.dtsi head/sys/gnu/dts/arm/imx28-apf28dev.dts head/sys/gnu/dts/arm/imx28-cfa10049.dts head/sys/gnu/dts/arm/imx28-eukrea-mbmx28lc.dtsi head/sys/gnu/dts/arm/imx28-evk.dts head/sys/gnu/dts/arm/imx28-m28.dtsi head/sys/gnu/dts/arm/imx28-m28evk.dts head/sys/gnu/dts/arm/imx28-tx28.dts head/sys/gnu/dts/arm/imx28.dtsi head/sys/gnu/dts/arm/imx31-bug.dts head/sys/gnu/dts/arm/imx31.dtsi head/sys/gnu/dts/arm/imx35-eukrea-mbimxsd35-baseboard.dts head/sys/gnu/dts/arm/imx35-pdk.dts head/sys/gnu/dts/arm/imx35.dtsi head/sys/gnu/dts/arm/imx50.dtsi head/sys/gnu/dts/arm/imx51-babbage.dts head/sys/gnu/dts/arm/imx51-eukrea-mbimxsd51-baseboard.dts head/sys/gnu/dts/arm/imx51-ts4800.dts head/sys/gnu/dts/arm/imx51.dtsi head/sys/gnu/dts/arm/imx53-m53.dtsi head/sys/gnu/dts/arm/imx53-m53evk.dts head/sys/gnu/dts/arm/imx53-qsb.dts head/sys/gnu/dts/arm/imx53-smd.dts head/sys/gnu/dts/arm/imx53-tqma53.dtsi head/sys/gnu/dts/arm/imx53-tx53.dtsi head/sys/gnu/dts/arm/imx53.dtsi head/sys/gnu/dts/arm/imx6dl-riotboard.dts head/sys/gnu/dts/arm/imx6dl-tx6dl-comtft.dts head/sys/gnu/dts/arm/imx6dl-tx6u-801x.dts head/sys/gnu/dts/arm/imx6dl.dtsi head/sys/gnu/dts/arm/imx6q-apalis-ixora.dts head/sys/gnu/dts/arm/imx6q-arm2.dts head/sys/gnu/dts/arm/imx6q-b450v3.dts head/sys/gnu/dts/arm/imx6q-b650v3.dts head/sys/gnu/dts/arm/imx6q-ba16.dtsi head/sys/gnu/dts/arm/imx6q-bx50v3.dtsi head/sys/gnu/dts/arm/imx6q-cm-fx6.dts head/sys/gnu/dts/arm/imx6q-dmo-edmqmx6.dts head/sys/gnu/dts/arm/imx6q-evi.dts head/sys/gnu/dts/arm/imx6q-gw5400-a.dts head/sys/gnu/dts/arm/imx6q-marsboard.dts head/sys/gnu/dts/arm/imx6q-novena.dts head/sys/gnu/dts/arm/imx6q-phytec-pbab01.dts head/sys/gnu/dts/arm/imx6q-sbc6x.dts head/sys/gnu/dts/arm/imx6q-tbs2910.dts head/sys/gnu/dts/arm/imx6q-tx6q-1010-comtft.dts head/sys/gnu/dts/arm/imx6q-tx6q-1010.dts head/sys/gnu/dts/arm/imx6q-tx6q-1020-comtft.dts head/sys/gnu/dts/arm/imx6q-tx6q-1020.dts head/sys/gnu/dts/arm/imx6q.dtsi head/sys/gnu/dts/arm/imx6qdl-apalis.dtsi head/sys/gnu/dts/arm/imx6qdl-apf6dev.dtsi head/sys/gnu/dts/arm/imx6qdl-aristainetos.dtsi head/sys/gnu/dts/arm/imx6qdl-aristainetos2.dtsi head/sys/gnu/dts/arm/imx6qdl-dfi-fs700-m60.dtsi head/sys/gnu/dts/arm/imx6qdl-gw51xx.dtsi head/sys/gnu/dts/arm/imx6qdl-gw52xx.dtsi head/sys/gnu/dts/arm/imx6qdl-gw53xx.dtsi head/sys/gnu/dts/arm/imx6qdl-gw54xx.dtsi head/sys/gnu/dts/arm/imx6qdl-gw551x.dtsi head/sys/gnu/dts/arm/imx6qdl-gw552x.dtsi head/sys/gnu/dts/arm/imx6qdl-icore-rqs.dtsi head/sys/gnu/dts/arm/imx6qdl-microsom.dtsi head/sys/gnu/dts/arm/imx6qdl-nit6xlite.dtsi head/sys/gnu/dts/arm/imx6qdl-nitrogen6_max.dtsi head/sys/gnu/dts/arm/imx6qdl-nitrogen6x.dtsi head/sys/gnu/dts/arm/imx6qdl-phytec-pfla02.dtsi head/sys/gnu/dts/arm/imx6qdl-rex.dtsi head/sys/gnu/dts/arm/imx6qdl-sabreauto.dtsi head/sys/gnu/dts/arm/imx6qdl-sabrelite.dtsi head/sys/gnu/dts/arm/imx6qdl-sabresd.dtsi head/sys/gnu/dts/arm/imx6qdl-tx6.dtsi head/sys/gnu/dts/arm/imx6qdl-udoo.dtsi head/sys/gnu/dts/arm/imx6qdl-wandboard-revb1.dtsi head/sys/gnu/dts/arm/imx6qdl-wandboard.dtsi head/sys/gnu/dts/arm/imx6qdl.dtsi head/sys/gnu/dts/arm/imx6qp.dtsi head/sys/gnu/dts/arm/imx6sl-warp.dts head/sys/gnu/dts/arm/imx6sl.dtsi head/sys/gnu/dts/arm/imx6sx-nitrogen6sx.dts head/sys/gnu/dts/arm/imx6sx-pinfunc.h head/sys/gnu/dts/arm/imx6sx-sabreauto.dts head/sys/gnu/dts/arm/imx6sx-sdb.dtsi head/sys/gnu/dts/arm/imx6sx.dtsi head/sys/gnu/dts/arm/imx6ul-14x14-evk.dts head/sys/gnu/dts/arm/imx6ul-pico-hobbit.dts head/sys/gnu/dts/arm/imx6ul-tx6ul-mainboard.dts head/sys/gnu/dts/arm/imx6ul-tx6ul.dtsi head/sys/gnu/dts/arm/imx6ul.dtsi head/sys/gnu/dts/arm/imx7d-cl-som-imx7.dts head/sys/gnu/dts/arm/imx7d-nitrogen7.dts head/sys/gnu/dts/arm/imx7d-pinfunc.h head/sys/gnu/dts/arm/imx7d-sdb.dts head/sys/gnu/dts/arm/imx7d.dtsi head/sys/gnu/dts/arm/integratorap.dts head/sys/gnu/dts/arm/integratorcp.dts head/sys/gnu/dts/arm/keystone-k2e-evm.dts head/sys/gnu/dts/arm/keystone-k2e.dtsi head/sys/gnu/dts/arm/keystone-k2g-evm.dts head/sys/gnu/dts/arm/keystone-k2g.dtsi head/sys/gnu/dts/arm/keystone-k2hk-evm.dts head/sys/gnu/dts/arm/keystone-k2l-evm.dts head/sys/gnu/dts/arm/keystone-k2l.dtsi head/sys/gnu/dts/arm/keystone.dtsi head/sys/gnu/dts/arm/kirkwood-ib62x0.dts head/sys/gnu/dts/arm/kirkwood-ns2lite.dts head/sys/gnu/dts/arm/kirkwood-openblocks_a6.dts head/sys/gnu/dts/arm/kirkwood-openrd.dtsi head/sys/gnu/dts/arm/kirkwood-topkick.dts head/sys/gnu/dts/arm/logicpd-som-lv-37xx-devkit.dts head/sys/gnu/dts/arm/logicpd-som-lv.dtsi head/sys/gnu/dts/arm/logicpd-torpedo-37xx-devkit.dts head/sys/gnu/dts/arm/logicpd-torpedo-som.dtsi head/sys/gnu/dts/arm/lpc18xx.dtsi head/sys/gnu/dts/arm/lpc32xx.dtsi head/sys/gnu/dts/arm/lpc4337-ciaa.dts head/sys/gnu/dts/arm/lpc4350-hitex-eval.dts head/sys/gnu/dts/arm/lpc4357-ea4357-devkit.dts head/sys/gnu/dts/arm/ls1021a-twr.dts head/sys/gnu/dts/arm/ls1021a.dtsi head/sys/gnu/dts/arm/meson8-minix-neo-x8.dts head/sys/gnu/dts/arm/meson8b.dtsi head/sys/gnu/dts/arm/mpa1600.dts head/sys/gnu/dts/arm/mps2-an385.dts head/sys/gnu/dts/arm/mps2-an399.dts head/sys/gnu/dts/arm/mps2.dtsi head/sys/gnu/dts/arm/mt2701.dtsi head/sys/gnu/dts/arm/omap2.dtsi head/sys/gnu/dts/arm/omap2420-h4.dts head/sys/gnu/dts/arm/omap2420-n8x0-common.dtsi head/sys/gnu/dts/arm/omap2420.dtsi head/sys/gnu/dts/arm/omap2430-sdp.dts head/sys/gnu/dts/arm/omap2430.dtsi head/sys/gnu/dts/arm/omap24xx-clocks.dtsi head/sys/gnu/dts/arm/omap3-beagle-xm.dts head/sys/gnu/dts/arm/omap3-beagle.dts head/sys/gnu/dts/arm/omap3-cm-t3x.dtsi head/sys/gnu/dts/arm/omap3-devkit8000-common.dtsi head/sys/gnu/dts/arm/omap3-devkit8000-lcd-common.dtsi head/sys/gnu/dts/arm/omap3-devkit8000-lcd43.dts head/sys/gnu/dts/arm/omap3-devkit8000-lcd70.dts head/sys/gnu/dts/arm/omap3-evm-37xx.dts head/sys/gnu/dts/arm/omap3-evm.dts head/sys/gnu/dts/arm/omap3-gta04.dtsi head/sys/gnu/dts/arm/omap3-ha-lcd.dts head/sys/gnu/dts/arm/omap3-igep.dtsi head/sys/gnu/dts/arm/omap3-igep0020-common.dtsi head/sys/gnu/dts/arm/omap3-ldp.dts head/sys/gnu/dts/arm/omap3-lilly-a83x.dtsi head/sys/gnu/dts/arm/omap3-n900.dts head/sys/gnu/dts/arm/omap3-n950-n9.dtsi head/sys/gnu/dts/arm/omap3-overo-alto35-common.dtsi head/sys/gnu/dts/arm/omap3-overo-base.dtsi head/sys/gnu/dts/arm/omap3-overo-chestnut43-common.dtsi head/sys/gnu/dts/arm/omap3-overo-common-dvi.dtsi head/sys/gnu/dts/arm/omap3-overo-common-lcd35.dtsi head/sys/gnu/dts/arm/omap3-overo-common-lcd43.dtsi head/sys/gnu/dts/arm/omap3-overo-gallop43-common.dtsi head/sys/gnu/dts/arm/omap3-overo-palo35-common.dtsi head/sys/gnu/dts/arm/omap3-overo-palo43-common.dtsi head/sys/gnu/dts/arm/omap3-overo-tobi-common.dtsi head/sys/gnu/dts/arm/omap3-overo-tobiduo-common.dtsi head/sys/gnu/dts/arm/omap3-pandora-common.dtsi head/sys/gnu/dts/arm/omap3-sb-t35.dtsi head/sys/gnu/dts/arm/omap3-sniper.dts head/sys/gnu/dts/arm/omap3-tao3530.dtsi head/sys/gnu/dts/arm/omap3-thunder.dts head/sys/gnu/dts/arm/omap3-zoom3.dts head/sys/gnu/dts/arm/omap3.dtsi head/sys/gnu/dts/arm/omap3430-sdp.dts head/sys/gnu/dts/arm/omap34xx.dtsi head/sys/gnu/dts/arm/omap36xx.dtsi head/sys/gnu/dts/arm/omap4-duovero-parlor.dts head/sys/gnu/dts/arm/omap4-duovero.dtsi head/sys/gnu/dts/arm/omap4-kc1.dts head/sys/gnu/dts/arm/omap4-panda-common.dtsi head/sys/gnu/dts/arm/omap4-sdp.dts head/sys/gnu/dts/arm/omap4-var-om44customboard.dtsi head/sys/gnu/dts/arm/omap4-var-som-om44.dtsi head/sys/gnu/dts/arm/omap4.dtsi head/sys/gnu/dts/arm/omap5-board-common.dtsi head/sys/gnu/dts/arm/omap5-cm-t54.dts head/sys/gnu/dts/arm/omap5-igep0050.dts head/sys/gnu/dts/arm/omap5-uevm.dts head/sys/gnu/dts/arm/omap5.dtsi head/sys/gnu/dts/arm/orion5x-linkstation-lsgl.dts head/sys/gnu/dts/arm/orion5x.dtsi head/sys/gnu/dts/arm/pm9g45.dts head/sys/gnu/dts/arm/pxa27x.dtsi head/sys/gnu/dts/arm/pxa2xx.dtsi head/sys/gnu/dts/arm/pxa3xx.dtsi head/sys/gnu/dts/arm/qcom-apq8064-asus-nexus7-flo.dts head/sys/gnu/dts/arm/qcom-apq8064-ifc6410.dts head/sys/gnu/dts/arm/qcom-apq8064-pins.dtsi head/sys/gnu/dts/arm/qcom-apq8064-sony-xperia-yuga.dts head/sys/gnu/dts/arm/qcom-apq8064.dtsi head/sys/gnu/dts/arm/qcom-apq8074-dragonboard.dts head/sys/gnu/dts/arm/qcom-apq8084.dtsi head/sys/gnu/dts/arm/qcom-ipq4019.dtsi head/sys/gnu/dts/arm/qcom-ipq8064-ap148.dts head/sys/gnu/dts/arm/qcom-ipq8064.dtsi head/sys/gnu/dts/arm/qcom-msm8660-surf.dts head/sys/gnu/dts/arm/qcom-msm8660.dtsi head/sys/gnu/dts/arm/qcom-msm8960.dtsi head/sys/gnu/dts/arm/qcom-msm8974-sony-xperia-honami.dts head/sys/gnu/dts/arm/qcom-msm8974.dtsi head/sys/gnu/dts/arm/qcom-pm8941.dtsi head/sys/gnu/dts/arm/qcom-pma8084.dtsi head/sys/gnu/dts/arm/r7s72100-genmai.dts head/sys/gnu/dts/arm/r7s72100.dtsi head/sys/gnu/dts/arm/r8a73a4-ape6evm.dts head/sys/gnu/dts/arm/r8a73a4.dtsi head/sys/gnu/dts/arm/r8a7740-armadillo800eva.dts head/sys/gnu/dts/arm/r8a7740.dtsi head/sys/gnu/dts/arm/r8a7778-bockw.dts head/sys/gnu/dts/arm/r8a7778.dtsi head/sys/gnu/dts/arm/r8a7779-marzen.dts head/sys/gnu/dts/arm/r8a7779.dtsi head/sys/gnu/dts/arm/r8a7790-lager.dts head/sys/gnu/dts/arm/r8a7790.dtsi head/sys/gnu/dts/arm/r8a7791-koelsch.dts head/sys/gnu/dts/arm/r8a7791-porter.dts head/sys/gnu/dts/arm/r8a7791.dtsi head/sys/gnu/dts/arm/r8a7793-gose.dts head/sys/gnu/dts/arm/r8a7793.dtsi head/sys/gnu/dts/arm/r8a7794-alt.dts head/sys/gnu/dts/arm/r8a7794-silk.dts head/sys/gnu/dts/arm/r8a7794.dtsi head/sys/gnu/dts/arm/rk3036-evb.dts head/sys/gnu/dts/arm/rk3036-kylin.dts head/sys/gnu/dts/arm/rk3036.dtsi head/sys/gnu/dts/arm/rk3066a-bqcurie2.dts head/sys/gnu/dts/arm/rk3066a-marsboard.dts head/sys/gnu/dts/arm/rk3066a-rayeager.dts head/sys/gnu/dts/arm/rk3066a.dtsi head/sys/gnu/dts/arm/rk3188-radxarock.dts head/sys/gnu/dts/arm/rk3188.dtsi head/sys/gnu/dts/arm/rk3228-evb.dts head/sys/gnu/dts/arm/rk3288-evb-act8846.dts head/sys/gnu/dts/arm/rk3288-evb-rk808.dts head/sys/gnu/dts/arm/rk3288-evb.dtsi head/sys/gnu/dts/arm/rk3288-firefly.dtsi head/sys/gnu/dts/arm/rk3288-miqi.dts head/sys/gnu/dts/arm/rk3288-popmetal.dts head/sys/gnu/dts/arm/rk3288-r89.dts head/sys/gnu/dts/arm/rk3288-rock2-som.dtsi head/sys/gnu/dts/arm/rk3288-veyron-chromebook.dtsi head/sys/gnu/dts/arm/rk3288-veyron.dtsi head/sys/gnu/dts/arm/rk3288.dtsi head/sys/gnu/dts/arm/rk3xxx.dtsi head/sys/gnu/dts/arm/s3c2416-pinctrl.dtsi head/sys/gnu/dts/arm/s3c6410-mini6410.dts head/sys/gnu/dts/arm/s3c64xx-pinctrl.dtsi head/sys/gnu/dts/arm/s5pv210-aquila.dts head/sys/gnu/dts/arm/s5pv210-goni.dts head/sys/gnu/dts/arm/s5pv210-pinctrl.dtsi head/sys/gnu/dts/arm/s5pv210-smdkc110.dts head/sys/gnu/dts/arm/s5pv210-smdkv210.dts head/sys/gnu/dts/arm/s5pv210-torbreck.dts head/sys/gnu/dts/arm/s5pv210.dtsi head/sys/gnu/dts/arm/sama5d2.dtsi head/sys/gnu/dts/arm/sama5d3.dtsi head/sys/gnu/dts/arm/sama5d31ek.dts head/sys/gnu/dts/arm/sama5d33ek.dts head/sys/gnu/dts/arm/sama5d34ek.dts head/sys/gnu/dts/arm/sama5d35ek.dts head/sys/gnu/dts/arm/sama5d36ek.dts head/sys/gnu/dts/arm/sama5d3xcm.dtsi head/sys/gnu/dts/arm/sama5d3xmb.dtsi head/sys/gnu/dts/arm/sama5d4.dtsi head/sys/gnu/dts/arm/sh73a0-kzm9g.dts head/sys/gnu/dts/arm/sh73a0.dtsi head/sys/gnu/dts/arm/skeleton.dtsi head/sys/gnu/dts/arm/socfpga.dtsi head/sys/gnu/dts/arm/socfpga_arria5_socdk.dts head/sys/gnu/dts/arm/socfpga_cyclone5_de0_sockit.dts head/sys/gnu/dts/arm/socfpga_cyclone5_mcv.dtsi head/sys/gnu/dts/arm/socfpga_cyclone5_mcvevk.dts head/sys/gnu/dts/arm/socfpga_cyclone5_socdk.dts head/sys/gnu/dts/arm/socfpga_cyclone5_sockit.dts head/sys/gnu/dts/arm/socfpga_cyclone5_socrates.dts head/sys/gnu/dts/arm/socfpga_cyclone5_vining_fpga.dts head/sys/gnu/dts/arm/spear13xx.dtsi head/sys/gnu/dts/arm/ste-dbx5x0.dtsi head/sys/gnu/dts/arm/ste-href-tvk1281618.dtsi head/sys/gnu/dts/arm/ste-href.dtsi head/sys/gnu/dts/arm/ste-hrefv60plus.dtsi head/sys/gnu/dts/arm/ste-nomadik-nhk15.dts head/sys/gnu/dts/arm/ste-nomadik-stn8815.dtsi head/sys/gnu/dts/arm/ste-snowball.dts head/sys/gnu/dts/arm/stih407-clock.dtsi head/sys/gnu/dts/arm/stih407-family.dtsi head/sys/gnu/dts/arm/stih407-pinctrl.dtsi head/sys/gnu/dts/arm/stih407.dtsi head/sys/gnu/dts/arm/stih410-clock.dtsi head/sys/gnu/dts/arm/stih410.dtsi head/sys/gnu/dts/arm/stih418-b2199.dts head/sys/gnu/dts/arm/stih418-clock.dtsi head/sys/gnu/dts/arm/stihxxx-b2120.dtsi head/sys/gnu/dts/arm/stm32429i-eval.dts head/sys/gnu/dts/arm/stm32f429-disco.dts head/sys/gnu/dts/arm/stm32f429.dtsi head/sys/gnu/dts/arm/stm32f469-disco.dts head/sys/gnu/dts/arm/sun4i-a10-a1000.dts head/sys/gnu/dts/arm/sun4i-a10-ba10-tvbox.dts head/sys/gnu/dts/arm/sun4i-a10-hackberry.dts head/sys/gnu/dts/arm/sun4i-a10-jesurun-q5.dts head/sys/gnu/dts/arm/sun4i-a10.dtsi head/sys/gnu/dts/arm/sun5i-a10s-auxtek-t004.dts head/sys/gnu/dts/arm/sun5i-a10s-mk802.dts head/sys/gnu/dts/arm/sun5i-a10s-olinuxino-micro.dts head/sys/gnu/dts/arm/sun5i-a10s-wobo-i5.dts head/sys/gnu/dts/arm/sun5i-a10s.dtsi head/sys/gnu/dts/arm/sun5i-a13-difrnce-dit4350.dts head/sys/gnu/dts/arm/sun5i-a13-inet-98v-rev2.dts head/sys/gnu/dts/arm/sun5i-a13-olinuxino.dts head/sys/gnu/dts/arm/sun5i-a13-q8-tablet.dts head/sys/gnu/dts/arm/sun5i-a13-utoo-p66.dts head/sys/gnu/dts/arm/sun5i-a13.dtsi head/sys/gnu/dts/arm/sun5i-r8-chip.dts head/sys/gnu/dts/arm/sun5i-r8.dtsi head/sys/gnu/dts/arm/sun5i.dtsi head/sys/gnu/dts/arm/sun6i-a31-hummingbird.dts head/sys/gnu/dts/arm/sun6i-a31-m9.dts head/sys/gnu/dts/arm/sun6i-a31-mele-a1000g-quad.dts head/sys/gnu/dts/arm/sun6i-a31.dtsi head/sys/gnu/dts/arm/sun6i-a31s-colorfly-e708-q1.dts head/sys/gnu/dts/arm/sun6i-a31s-sina31s.dts head/sys/gnu/dts/arm/sun6i-a31s.dtsi head/sys/gnu/dts/arm/sun7i-a20-lamobo-r1.dts head/sys/gnu/dts/arm/sun7i-a20-olimex-som-evb.dts head/sys/gnu/dts/arm/sun7i-a20-olinuxino-lime2-emmc.dts head/sys/gnu/dts/arm/sun7i-a20.dtsi head/sys/gnu/dts/arm/sun8i-a23-a33.dtsi head/sys/gnu/dts/arm/sun8i-a23-gt90h-v4.dts head/sys/gnu/dts/arm/sun8i-a23-ippo-q8h-v1.2.dts head/sys/gnu/dts/arm/sun8i-a23-ippo-q8h-v5.dts head/sys/gnu/dts/arm/sun8i-a23-polaroid-mid2809pxe04.dts head/sys/gnu/dts/arm/sun8i-a23-q8-tablet.dts head/sys/gnu/dts/arm/sun8i-a23.dtsi head/sys/gnu/dts/arm/sun8i-a33-et-q8-v1.6.dts head/sys/gnu/dts/arm/sun8i-a33-ga10h-v1.1.dts head/sys/gnu/dts/arm/sun8i-a33-ippo-q8h-v1.2.dts head/sys/gnu/dts/arm/sun8i-a33-q8-tablet.dts head/sys/gnu/dts/arm/sun8i-a33-sinlinx-sina33.dts head/sys/gnu/dts/arm/sun8i-a33.dtsi head/sys/gnu/dts/arm/sun8i-h3-orangepi-2.dts head/sys/gnu/dts/arm/sun8i-h3-orangepi-one.dts head/sys/gnu/dts/arm/sun8i-h3-orangepi-pc.dts head/sys/gnu/dts/arm/sun8i-h3-orangepi-plus.dts head/sys/gnu/dts/arm/sun8i-h3.dtsi head/sys/gnu/dts/arm/sun8i-q8-common.dtsi head/sys/gnu/dts/arm/sun9i-a80-cubieboard4.dts head/sys/gnu/dts/arm/sun9i-a80-optimus.dts head/sys/gnu/dts/arm/sun9i-a80.dtsi head/sys/gnu/dts/arm/tegra114-dalmore.dts head/sys/gnu/dts/arm/tegra114-roth.dts head/sys/gnu/dts/arm/tegra114-tn7.dts head/sys/gnu/dts/arm/tegra114.dtsi head/sys/gnu/dts/arm/tegra124-jetson-tk1-emc.dtsi head/sys/gnu/dts/arm/tegra124-jetson-tk1.dts head/sys/gnu/dts/arm/tegra124-nyan-big-emc.dtsi head/sys/gnu/dts/arm/tegra124-nyan-big.dts head/sys/gnu/dts/arm/tegra124-nyan-blaze-emc.dtsi head/sys/gnu/dts/arm/tegra124-nyan-blaze.dts head/sys/gnu/dts/arm/tegra124-nyan.dtsi head/sys/gnu/dts/arm/tegra124-venice2.dts head/sys/gnu/dts/arm/tegra124.dtsi head/sys/gnu/dts/arm/tegra20-colibri-512.dtsi head/sys/gnu/dts/arm/tegra20-harmony.dts head/sys/gnu/dts/arm/tegra20-paz00.dts head/sys/gnu/dts/arm/tegra20-seaboard.dts head/sys/gnu/dts/arm/tegra20-tamonten.dtsi head/sys/gnu/dts/arm/tegra20-trimslice.dts head/sys/gnu/dts/arm/tegra20-ventana.dts head/sys/gnu/dts/arm/tegra20-whistler.dts head/sys/gnu/dts/arm/tegra20.dtsi head/sys/gnu/dts/arm/tegra30-apalis.dtsi head/sys/gnu/dts/arm/tegra30-beaver.dts head/sys/gnu/dts/arm/tegra30-cardhu.dtsi head/sys/gnu/dts/arm/tegra30-colibri-eval-v3.dts head/sys/gnu/dts/arm/tegra30-colibri.dtsi head/sys/gnu/dts/arm/tegra30.dtsi head/sys/gnu/dts/arm/tny_a9260_common.dtsi head/sys/gnu/dts/arm/tny_a9263.dts head/sys/gnu/dts/arm/tps65217.dtsi head/sys/gnu/dts/arm/uniphier-pinctrl.dtsi head/sys/gnu/dts/arm/usb_a9260_common.dtsi head/sys/gnu/dts/arm/usb_a9263.dts head/sys/gnu/dts/arm/usb_a9g20_common.dtsi head/sys/gnu/dts/arm/vexpress-v2p-ca15-tc1.dts head/sys/gnu/dts/arm/vexpress-v2p-ca15_a7.dts head/sys/gnu/dts/arm/vf-colibri-eval-v3.dtsi head/sys/gnu/dts/arm/vf-colibri.dtsi head/sys/gnu/dts/arm/vf500.dtsi head/sys/gnu/dts/arm/vf610-zii-dev-rev-b.dts head/sys/gnu/dts/arm/vf610m4.dtsi head/sys/gnu/dts/arm/vfxxx.dtsi head/sys/gnu/dts/arm/zynq-7000.dtsi head/sys/gnu/dts/arm/zynq-parallella.dts head/sys/gnu/dts/arm/zynq-zc702.dts head/sys/gnu/dts/arm/zynq-zc706.dts head/sys/gnu/dts/arm/zynq-zed.dts head/sys/gnu/dts/arm/zynq-zybo.dts head/sys/gnu/dts/include/dt-bindings/clock/exynos5410.h head/sys/gnu/dts/include/dt-bindings/clock/exynos5420.h head/sys/gnu/dts/include/dt-bindings/clock/exynos5433.h head/sys/gnu/dts/include/dt-bindings/clock/exynos5440.h head/sys/gnu/dts/include/dt-bindings/clock/hi6220-clock.h head/sys/gnu/dts/include/dt-bindings/clock/imx5-clock.h head/sys/gnu/dts/include/dt-bindings/clock/imx6qdl-clock.h head/sys/gnu/dts/include/dt-bindings/clock/imx6ul-clock.h head/sys/gnu/dts/include/dt-bindings/clock/lpc32xx-clock.h head/sys/gnu/dts/include/dt-bindings/clock/meson8b-clkc.h head/sys/gnu/dts/include/dt-bindings/clock/qcom,gcc-msm8996.h head/sys/gnu/dts/include/dt-bindings/clock/qcom,mmcc-msm8996.h head/sys/gnu/dts/include/dt-bindings/clock/r7s72100-clock.h head/sys/gnu/dts/include/dt-bindings/clock/r8a7794-clock.h head/sys/gnu/dts/include/dt-bindings/clock/rk3188-cru-common.h head/sys/gnu/dts/include/dt-bindings/clock/rk3228-cru.h head/sys/gnu/dts/include/dt-bindings/clock/rk3399-cru.h head/sys/gnu/dts/include/dt-bindings/clock/stih407-clks.h head/sys/gnu/dts/include/dt-bindings/clock/tegra210-car.h head/sys/gnu/dts/include/dt-bindings/input/linux-event-codes.h head/sys/gnu/dts/include/dt-bindings/mfd/qcom-rpm.h head/sys/gnu/dts/include/dt-bindings/pinctrl/at91.h head/sys/gnu/dts/include/dt-bindings/pinctrl/bcm2835.h head/sys/gnu/dts/include/dt-bindings/pinctrl/qcom,pmic-gpio.h head/sys/gnu/dts/include/dt-bindings/pinctrl/qcom,pmic-mpp.h head/sys/gnu/dts/include/dt-bindings/pinctrl/rockchip.h head/sys/gnu/dts/include/dt-bindings/reset/hisi,hi6220-resets.h head/sys/gnu/dts/include/dt-bindings/thermal/tegra124-soctherm.h Directory Properties: head/sys/gnu/dts/arm/ (props changed) head/sys/gnu/dts/include/ (props changed) Modified: head/sys/gnu/dts/arm/aks-cdu.dts ============================================================================== --- head/sys/gnu/dts/arm/aks-cdu.dts Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/aks-cdu.dts Tue Mar 7 13:56:49 2017 (r314854) @@ -57,7 +57,7 @@ }; }; - usb0: ohci@00500000 { + usb0: ohci@500000 { num-ports = <2>; status = "okay"; }; Modified: head/sys/gnu/dts/arm/am335x-baltos-ir2110.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-baltos-ir2110.dts Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/am335x-baltos-ir2110.dts Tue Mar 7 13:56:49 2017 (r314854) @@ -54,16 +54,22 @@ dr_mode = "host"; }; +&davinci_mdio { + phy0: ethernet-phy@0 { + reg = <1>; + }; +}; + &cpsw_emac0 { - phy_id = <&davinci_mdio>, <1>; phy-mode = "rmii"; dual_emac_res_vlan = <1>; + phy-handle = <&phy0>; }; &cpsw_emac1 { - phy_id = <&davinci_mdio>, <7>; phy-mode = "rgmii-txid"; dual_emac_res_vlan = <2>; + phy-handle = <&phy1>; }; &phy_sel { Modified: head/sys/gnu/dts/arm/am335x-baltos-ir3220.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-baltos-ir3220.dts Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/am335x-baltos-ir3220.dts Tue Mar 7 13:56:49 2017 (r314854) @@ -109,9 +109,9 @@ }; &cpsw_emac1 { - phy_id = <&davinci_mdio>, <7>; phy-mode = "rgmii-txid"; dual_emac_res_vlan = <2>; + phy-handle = <&phy1>; }; &phy_sel { Modified: head/sys/gnu/dts/arm/am335x-baltos-ir5221.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-baltos-ir5221.dts Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/am335x-baltos-ir5221.dts Tue Mar 7 13:56:49 2017 (r314854) @@ -114,7 +114,7 @@ &usb1 { status = "okay"; - dr_mode = "otg"; + dr_mode = "host"; }; &cpsw_emac0 { @@ -127,9 +127,9 @@ }; &cpsw_emac1 { - phy_id = <&davinci_mdio>, <7>; phy-mode = "rgmii-txid"; dual_emac_res_vlan = <2>; + phy-handle = <&phy1>; }; &phy_sel { Modified: head/sys/gnu/dts/arm/am335x-baltos.dtsi ============================================================================== --- head/sys/gnu/dts/arm/am335x-baltos.dtsi Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/am335x-baltos.dtsi Tue Mar 7 13:56:49 2017 (r314854) @@ -24,12 +24,12 @@ }; }; - memory { + memory@80000000 { device_type = "memory"; reg = <0x80000000 0x10000000>; /* 256 MB */ }; - vbat: fixedregulator@0 { + vbat: fixedregulator0 { compatible = "regulator-fixed"; regulator-name = "vbat"; regulator-min-microvolt = <5000000>; @@ -37,7 +37,7 @@ regulator-boot-on; }; - wl12xx_vmmc: fixedregulator@2 { + wl12xx_vmmc: fixedregulator2 { pinctrl-names = "default"; pinctrl-0 = <&wl12xx_gpio>; compatible = "regulator-fixed"; @@ -226,7 +226,7 @@ #address-cells = <1>; #size-cells = <1>; - elm_id = <&elm>; + ti,elm-id = <&elm>; }; }; @@ -364,11 +364,14 @@ }; &davinci_mdio { + status = "okay"; pinctrl-names = "default", "sleep"; pinctrl-0 = <&davinci_mdio_default>; pinctrl-1 = <&davinci_mdio_sleep>; - status = "okay"; + phy1: ethernet-phy@1 { + reg = <7>; + }; }; &mmc1 { @@ -406,3 +409,7 @@ &gpio0 { ti,no-reset-on-init; }; + +&gpio3 { + ti,no-reset-on-init; +}; Modified: head/sys/gnu/dts/arm/am335x-base0033.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-base0033.dts Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/am335x-base0033.dts Tue Mar 7 13:56:49 2017 (r314854) @@ -29,13 +29,13 @@ compatible = "gpio-leds"; - led@0 { + led0 { label = "base:red:user"; gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>; /* gpio1_21 */ default-state = "off"; }; - led@1 { + led1 { label = "base:green:user"; gpios = <&gpio2 0 GPIO_ACTIVE_HIGH>; /* gpio2_0 */ default-state = "off"; Modified: head/sys/gnu/dts/arm/am335x-bone-common.dtsi ============================================================================== --- head/sys/gnu/dts/arm/am335x-bone-common.dtsi Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/am335x-bone-common.dtsi Tue Mar 7 13:56:49 2017 (r314854) @@ -13,39 +13,43 @@ }; }; - memory { + memory@80000000 { device_type = "memory"; reg = <0x80000000 0x10000000>; /* 256 MB */ }; + chosen { + stdout-path = &uart0; + }; + leds { pinctrl-names = "default"; pinctrl-0 = <&user_leds_s0>; compatible = "gpio-leds"; - led@2 { + led2 { label = "beaglebone:green:heartbeat"; gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>; linux,default-trigger = "heartbeat"; default-state = "off"; }; - led@3 { + led3 { label = "beaglebone:green:mmc0"; gpios = <&gpio1 22 GPIO_ACTIVE_HIGH>; linux,default-trigger = "mmc0"; default-state = "off"; }; - led@4 { + led4 { label = "beaglebone:green:usr2"; gpios = <&gpio1 23 GPIO_ACTIVE_HIGH>; linux,default-trigger = "cpu0"; default-state = "off"; }; - led@5 { + led5 { label = "beaglebone:green:usr3"; gpios = <&gpio1 24 GPIO_ACTIVE_HIGH>; linux,default-trigger = "mmc1"; @@ -53,7 +57,7 @@ }; }; - vmmcsd_fixed: fixedregulator@0 { + vmmcsd_fixed: fixedregulator0 { compatible = "regulator-fixed"; regulator-name = "vmmcsd_fixed"; regulator-min-microvolt = <3300000>; @@ -306,8 +310,23 @@ * by the hardware problems. (Tip: double-check by performing a current * measurement after shutdown: it should be less than 1 mA.) */ + + interrupts = <7>; /* NMI */ + interrupt-parent = <&intc>; + ti,pmic-shutdown-controller; + charger { + interrupts = <0>, <1>; + interrupt-names = "USB", "AC"; + status = "okay"; + }; + + pwrbutton { + interrupts = <2>; + status = "okay"; + }; + regulators { dcdc1_reg: regulator@0 { regulator-name = "vdds_dpr"; @@ -318,7 +337,7 @@ /* VDD_MPU voltage limits 0.95V - 1.26V with +/-4% tolerance */ regulator-name = "vdd_mpu"; regulator-min-microvolt = <925000>; - regulator-max-microvolt = <1325000>; + regulator-max-microvolt = <1351500>; regulator-boot-on; regulator-always-on; }; @@ -359,12 +378,8 @@ phy-mode = "mii"; }; -&cpsw_emac1 { - phy_id = <&davinci_mdio>, <1>; - phy-mode = "mii"; -}; - &mac { + slaves = <1>; pinctrl-names = "default", "sleep"; pinctrl-0 = <&cpsw_default>; pinctrl-1 = <&cpsw_sleep>; @@ -393,3 +408,8 @@ &sham { status = "okay"; }; + +&rtc { + clocks = <&clk_32768_ck>, <&clkdiv32k_ick>; + clock-names = "ext-clk", "int-clk"; +}; Modified: head/sys/gnu/dts/arm/am335x-boneblack.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-boneblack.dts Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/am335x-boneblack.dts Tue Mar 7 13:56:49 2017 (r314854) @@ -9,6 +9,7 @@ #include "am33xx.dtsi" #include "am335x-bone-common.dtsi" +#include / { model = "TI AM335x BeagleBone Black"; @@ -64,10 +65,28 @@ AM33XX_IOPAD(0x9b0, PIN_OUTPUT_PULLDOWN | MUX_MODE3) /* xdma_event_intr0 */ >; }; + + mcasp0_pins: mcasp0_pins { + pinctrl-single,pins = < + AM33XX_IOPAD(0x9ac, PIN_INPUT_PULLUP | MUX_MODE0) /* mcasp0_ahcklx.mcasp0_ahclkx */ + AM33XX_IOPAD(0x99c, PIN_OUTPUT_PULLDOWN | MUX_MODE2) /* mcasp0_ahclkr.mcasp0_axr2*/ + AM33XX_IOPAD(0x994, PIN_OUTPUT_PULLUP | MUX_MODE0) /* mcasp0_fsx.mcasp0_fsx */ + AM33XX_IOPAD(0x990, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mcasp0_aclkx.mcasp0_aclkx */ + AM33XX_IOPAD(0x86c, PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* gpmc_a11.GPIO1_27 */ + >; + }; }; &lcdc { status = "okay"; + + /* If you want to get 24 bit RGB and 16 BGR mode instead of + * current 16 bit RGB and 24 BGR modes, set the propety + * below to "crossed" and uncomment the video-ports -property + * in tda19988 node. + */ + blue-and-red-wiring = "straight"; + port { lcdc_0: endpoint@0 { remote-endpoint = <&hdmi_0>; @@ -76,16 +95,25 @@ }; &i2c0 { - tda19988 { + tda19988: tda19988 { compatible = "nxp,tda998x"; reg = <0x70>; + pinctrl-names = "default", "off"; pinctrl-0 = <&nxp_hdmi_bonelt_pins>; pinctrl-1 = <&nxp_hdmi_bonelt_off_pins>; - port { - hdmi_0: endpoint@0 { - remote-endpoint = <&lcdc_0>; + /* Convert 24bit BGR to RGB, e.g. cross red and blue wiring */ + /* video-ports = <0x234501>; */ + + #sound-dai-cells = <0>; + audio-ports = < TDA998x_I2S 0x03>; + + ports { + port@0 { + hdmi_0: endpoint@0 { + remote-endpoint = <&lcdc_0>; + }; }; }; }; @@ -94,3 +122,49 @@ &rtc { system-power-controller; }; + +&mcasp0 { + #sound-dai-cells = <0>; + pinctrl-names = "default"; + pinctrl-0 = <&mcasp0_pins>; + status = "okay"; + op-mode = <0>; /* MCASP_IIS_MODE */ + tdm-slots = <2>; + serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */ + 0 0 1 0 + >; + tx-num-evt = <32>; + rx-num-evt = <32>; +}; + +/ { + clk_mcasp0_fixed: clk_mcasp0_fixed { + #clock-cells = <0>; + compatible = "fixed-clock"; + clock-frequency = <24576000>; + }; + + clk_mcasp0: clk_mcasp0 { + #clock-cells = <0>; + compatible = "gpio-gate-clock"; + clocks = <&clk_mcasp0_fixed>; + enable-gpios = <&gpio1 27 0>; /* BeagleBone Black Clk enable on GPIO1_27 */ + }; + + sound { + compatible = "simple-audio-card"; + simple-audio-card,name = "TI BeagleBone Black"; + simple-audio-card,format = "i2s"; + simple-audio-card,bitclock-master = <&dailink0_master>; + simple-audio-card,frame-master = <&dailink0_master>; + + dailink0_master: simple-audio-card,cpu { + sound-dai = <&mcasp0>; + clocks = <&clk_mcasp0>; + }; + + simple-audio-card,codec { + sound-dai = <&tda19988>; + }; + }; +}; Modified: head/sys/gnu/dts/arm/am335x-chilisom.dtsi ============================================================================== --- head/sys/gnu/dts/arm/am335x-chilisom.dtsi Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/am335x-chilisom.dtsi Tue Mar 7 13:56:49 2017 (r314854) @@ -19,7 +19,7 @@ }; }; - memory { + memory@80000000 { device_type = "memory"; reg = <0x80000000 0x20000000>; /* 512 MB */ }; Modified: head/sys/gnu/dts/arm/am335x-cm-t335.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-cm-t335.dts Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/am335x-cm-t335.dts Tue Mar 7 13:56:49 2017 (r314854) @@ -17,7 +17,7 @@ model = "CompuLab CM-T335"; compatible = "compulab,cm-t335", "ti,am33xx"; - memory { + memory@80000000 { device_type = "memory"; reg = <0x80000000 0x8000000>; /* 128 MB */ }; @@ -26,7 +26,7 @@ compatible = "gpio-leds"; pinctrl-names = "default"; pinctrl-0 = <&gpio_led_pins>; - led@0 { + led0 { label = "cm_t335:green"; gpios = <&gpio2 0 GPIO_ACTIVE_LOW>; /* gpio2_0 */ linux,default-trigger = "heartbeat"; @@ -34,7 +34,7 @@ }; /* regulator for mmc */ - vmmc_fixed: fixedregulator@0 { + vmmc_fixed: fixedregulator0 { compatible = "regulator-fixed"; regulator-name = "vmmc_fixed"; regulator-min-microvolt = <3300000>; @@ -42,7 +42,7 @@ }; /* Regulator for WiFi */ - vwlan_fixed: fixedregulator@2 { + vwlan_fixed: fixedregulator2 { compatible = "regulator-fixed"; regulator-name = "vwlan_fixed"; gpio = <&gpio0 20 GPIO_ACTIVE_HIGH>; /* gpio0_20 */ Modified: head/sys/gnu/dts/arm/am335x-evm.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-evm.dts Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/am335x-evm.dts Tue Mar 7 13:56:49 2017 (r314854) @@ -20,12 +20,12 @@ }; }; - memory { + memory@80000000 { device_type = "memory"; reg = <0x80000000 0x10000000>; /* 256 MB */ }; - vbat: fixedregulator@0 { + vbat: fixedregulator0 { compatible = "regulator-fixed"; regulator-name = "vbat"; regulator-min-microvolt = <5000000>; @@ -33,13 +33,13 @@ regulator-boot-on; }; - lis3_reg: fixedregulator@1 { + lis3_reg: fixedregulator1 { compatible = "regulator-fixed"; regulator-name = "lis3_reg"; regulator-boot-on; }; - wlan_en_reg: fixedregulator@2 { + wlan_en_reg: fixedregulator2 { compatible = "regulator-fixed"; regulator-name = "wlan-en-regulator"; regulator-min-microvolt = <1800000>; @@ -53,7 +53,7 @@ enable-active-high; }; - matrix_keypad: matrix_keypad@0 { + matrix_keypad: matrix_keypad0 { compatible = "gpio-matrix-keypad"; debounce-delay-ms = <5>; col-scan-delay-us = <2>; @@ -73,20 +73,20 @@ 0x0201006c>; /* DOWN */ }; - gpio_keys: volume_keys@0 { + gpio_keys: volume_keys0 { compatible = "gpio-keys"; #address-cells = <1>; #size-cells = <0>; autorepeat; - switch@9 { + switch9 { label = "volume-up"; linux,code = <115>; gpios = <&gpio0 2 GPIO_ACTIVE_LOW>; wakeup-source; }; - switch@10 { + switch10 { label = "volume-down"; linux,code = <114>; gpios = <&gpio0 3 GPIO_ACTIVE_LOW>; @@ -497,6 +497,8 @@ &lcdc { status = "okay"; + + blue-and-red-wiring = "crossed"; }; &elm { @@ -640,7 +642,7 @@ /* VDD_MPU voltage limits 0.95V - 1.26V with +/-4% tolerance */ regulator-name = "vdd_mpu"; regulator-min-microvolt = <912500>; - regulator-max-microvolt = <1312500>; + regulator-max-microvolt = <1351500>; regulator-boot-on; regulator-always-on; }; @@ -781,3 +783,8 @@ pinctrl-names = "default"; pinctrl-0 = <&dcan1_pins_default>; }; + +&rtc { + clocks = <&clk_32768_ck>, <&clkdiv32k_ick>; + clock-names = "ext-clk", "int-clk"; +}; Modified: head/sys/gnu/dts/arm/am335x-evmsk.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-evmsk.dts Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/am335x-evmsk.dts Tue Mar 7 13:56:49 2017 (r314854) @@ -27,12 +27,12 @@ }; }; - memory { + memory@80000000 { device_type = "memory"; reg = <0x80000000 0x10000000>; /* 256 MB */ }; - vbat: fixedregulator@0 { + vbat: fixedregulator0 { compatible = "regulator-fixed"; regulator-name = "vbat"; regulator-min-microvolt = <5000000>; @@ -40,13 +40,13 @@ regulator-boot-on; }; - lis3_reg: fixedregulator@1 { + lis3_reg: fixedregulator1 { compatible = "regulator-fixed"; regulator-name = "lis3_reg"; regulator-boot-on; }; - wl12xx_vmmc: fixedregulator@2 { + wl12xx_vmmc: fixedregulator2 { pinctrl-names = "default"; pinctrl-0 = <&wl12xx_gpio>; compatible = "regulator-fixed"; @@ -58,7 +58,7 @@ enable-active-high; }; - vtt_fixed: fixedregulator@3 { + vtt_fixed: fixedregulator3 { compatible = "regulator-fixed"; regulator-name = "vtt"; regulator-min-microvolt = <1500000>; @@ -75,26 +75,26 @@ compatible = "gpio-leds"; - led@1 { + led1 { label = "evmsk:green:usr0"; gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>; default-state = "off"; }; - led@2 { + led2 { label = "evmsk:green:usr1"; gpios = <&gpio1 5 GPIO_ACTIVE_HIGH>; default-state = "off"; }; - led@3 { + led3 { label = "evmsk:green:mmc0"; gpios = <&gpio1 6 GPIO_ACTIVE_HIGH>; linux,default-trigger = "mmc0"; default-state = "off"; }; - led@4 { + led4 { label = "evmsk:green:heartbeat"; gpios = <&gpio1 7 GPIO_ACTIVE_HIGH>; linux,default-trigger = "heartbeat"; @@ -102,31 +102,31 @@ }; }; - gpio_buttons: gpio_buttons@0 { + gpio_buttons: gpio_buttons0 { compatible = "gpio-keys"; #address-cells = <1>; #size-cells = <0>; - switch@1 { + switch1 { label = "button0"; linux,code = <0x100>; gpios = <&gpio2 3 GPIO_ACTIVE_HIGH>; }; - switch@2 { + switch2 { label = "button1"; linux,code = <0x101>; gpios = <&gpio2 2 GPIO_ACTIVE_HIGH>; }; - switch@3 { + switch3 { label = "button2"; linux,code = <0x102>; gpios = <&gpio0 30 GPIO_ACTIVE_HIGH>; wakeup-source; }; - switch@4 { + switch4 { label = "button3"; linux,code = <0x103>; gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>; @@ -170,29 +170,29 @@ pinctrl-1 = <&lcd_pins_sleep>; status = "okay"; panel-info { - ac-bias = <255>; - ac-bias-intrpt = <0>; - dma-burst-sz = <16>; - bpp = <32>; - fdd = <0x80>; - sync-edge = <0>; - sync-ctrl = <1>; - raster-order = <0>; - fifo-th = <0>; + ac-bias = <255>; + ac-bias-intrpt = <0>; + dma-burst-sz = <16>; + bpp = <32>; + fdd = <0x80>; + sync-edge = <0>; + sync-ctrl = <1>; + raster-order = <0>; + fifo-th = <0>; }; display-timings { 480x272 { - hactive = <480>; - vactive = <272>; - hback-porch = <43>; - hfront-porch = <8>; - hsync-len = <4>; - vback-porch = <12>; - vfront-porch = <4>; - vsync-len = <10>; + hactive = <480>; + vactive = <272>; + hback-porch = <43>; + hfront-porch = <8>; + hsync-len = <4>; + vback-porch = <12>; + vfront-porch = <4>; + vsync-len = <10>; clock-frequency = <9000000>; - hsync-active = <0>; - vsync-active = <0>; + hsync-active = <0>; + vsync-active = <0>; }; }; }; @@ -560,7 +560,7 @@ /* VDD_MPU voltage limits 0.95V - 1.26V with +/-4% tolerance */ regulator-name = "vdd_mpu"; regulator-min-microvolt = <912500>; - regulator-max-microvolt = <1312500>; + regulator-max-microvolt = <1351500>; regulator-boot-on; regulator-always-on; }; @@ -711,5 +711,12 @@ }; &lcdc { - status = "okay"; + status = "okay"; + + blue-and-red-wiring = "crossed"; +}; + +&rtc { + clocks = <&clk_32768_ck>, <&clkdiv32k_ick>; + clock-names = "ext-clk", "int-clk"; }; Modified: head/sys/gnu/dts/arm/am335x-icev2.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-icev2.dts Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/am335x-icev2.dts Tue Mar 7 13:56:49 2017 (r314854) @@ -19,12 +19,12 @@ model = "TI AM3359 ICE-V2"; compatible = "ti,am3359-icev2", "ti,am33xx"; - memory { + memory@80000000 { device_type = "memory"; reg = <0x80000000 0x10000000>; /* 256 MB */ }; - vbat: fixedregulator@0 { + vbat: fixedregulator0 { compatible = "regulator-fixed"; regulator-name = "vbat"; regulator-min-microvolt = <5000000>; @@ -32,7 +32,7 @@ regulator-boot-on; }; - vtt_fixed: fixedregulator@1 { + vtt_fixed: fixedregulator1 { compatible = "regulator-fixed"; regulator-name = "vtt"; regulator-min-microvolt = <1500000>; @@ -43,52 +43,52 @@ enable-active-high; }; - leds@0 { + leds-iio { + status = "disabled"; compatible = "gpio-leds"; - - led@0 { + led-out0 { label = "out0"; gpios = <&tpic2810 0 GPIO_ACTIVE_HIGH>; default-state = "off"; }; - led@1 { + led-out1 { label = "out1"; gpios = <&tpic2810 1 GPIO_ACTIVE_HIGH>; default-state = "off"; }; - led@2 { + led-out2 { label = "out2"; gpios = <&tpic2810 2 GPIO_ACTIVE_HIGH>; default-state = "off"; }; - led@3 { + led-out3 { label = "out3"; gpios = <&tpic2810 3 GPIO_ACTIVE_HIGH>; default-state = "off"; }; - led@4 { + led-out4 { label = "out4"; gpios = <&tpic2810 4 GPIO_ACTIVE_HIGH>; default-state = "off"; }; - led@5 { + led-out5 { label = "out5"; gpios = <&tpic2810 5 GPIO_ACTIVE_HIGH>; default-state = "off"; }; - led@6 { + led-out6 { label = "out6"; gpios = <&tpic2810 6 GPIO_ACTIVE_HIGH>; default-state = "off"; }; - led@7 { + led-out7 { label = "out7"; gpios = <&tpic2810 7 GPIO_ACTIVE_HIGH>; default-state = "off"; @@ -96,49 +96,58 @@ }; /* Tricolor status LEDs */ - leds@1 { + leds1 { compatible = "gpio-leds"; pinctrl-names = "default"; pinctrl-0 = <&user_leds>; - led@0 { + led0 { label = "status0:red:cpu0"; gpios = <&gpio0 17 GPIO_ACTIVE_HIGH>; default-state = "off"; linux,default-trigger = "cpu0"; }; - led@1 { + led1 { label = "status0:green:usr"; gpios = <&gpio0 16 GPIO_ACTIVE_HIGH>; default-state = "off"; }; - led@2 { + led2 { label = "status0:yellow:usr"; gpios = <&gpio3 9 GPIO_ACTIVE_HIGH>; default-state = "off"; }; - led@3 { + led3 { label = "status1:red:mmc0"; gpios = <&gpio1 30 GPIO_ACTIVE_HIGH>; default-state = "off"; linux,default-trigger = "mmc0"; }; - led@4 { + led4 { label = "status1:green:usr"; gpios = <&gpio0 20 GPIO_ACTIVE_HIGH>; default-state = "off"; }; - led@5 { + led5 { label = "status1:yellow:usr"; gpios = <&gpio0 19 GPIO_ACTIVE_HIGH>; default-state = "off"; }; }; + gpio-decoder { + compatible = "gpio-decoder"; + gpios = <&pca9536 3 GPIO_ACTIVE_HIGH>, + <&pca9536 2 GPIO_ACTIVE_HIGH>, + <&pca9536 1 GPIO_ACTIVE_HIGH>, + <&pca9536 0 GPIO_ACTIVE_HIGH>; + linux,axis = <0>; /* ABS_X */ + decoder-max-value = <9>; + }; }; &am33xx_pinmux { @@ -161,7 +170,6 @@ AM33XX_IOPAD(0x8fc, PIN_INPUT_PULLUP | MUX_MODE0) /* (G16) mmc0_dat0.mmc0_dat0 */ AM33XX_IOPAD(0x900, PIN_INPUT_PULLUP | MUX_MODE0) /* (G17) mmc0_clk.mmc0_clk */ AM33XX_IOPAD(0x904, PIN_INPUT_PULLUP | MUX_MODE0) /* (G18) mmc0_cmd.mmc0_cmd */ - AM33XX_IOPAD(0x960, PIN_INPUT_PULLUP | MUX_MODE5) /* (C15) spi0_cs1.mmc0_sdcd */ >; }; @@ -178,6 +186,8 @@ AM33XX_IOPAD(0x954, PIN_INPUT_PULLUP | MUX_MODE0) /* (B17) spi0_d0.spi0_d0 */ AM33XX_IOPAD(0x958, PIN_INPUT_PULLUP | MUX_MODE0) /* (B16) spi0_d1.spi0_d1 */ AM33XX_IOPAD(0x95c, PIN_INPUT_PULLUP | MUX_MODE0) /* (A16) spi0_cs0.spi0_cs0 */ + AM33XX_IOPAD(0x960, PIN_INPUT_PULLUP | MUX_MODE0) /* (C15) spi0_cs1.spi0_cs1 */ + AM33XX_IOPAD(0x9a0, PIN_INPUT_PULLUP | MUX_MODE7) /* (B12) mcasp0_aclkr.gpio3[18] */ >; }; @@ -206,6 +216,38 @@ gpio-controller; #gpio-cells = <2>; }; + + pca9536: gpio@41 { + compatible = "ti,pca9536"; + reg = <0x41>; + gpio-controller; + #gpio-cells = <2>; + }; +}; + +&spi0 { + status = "okay"; + pinctrl-names = "default"; + pinctrl-0 = <&spi0_pins_default>; + + sn65hvs882@1 { + compatible = "pisosr-gpio"; + gpio-controller; + #gpio-cells = <2>; + + load-gpios = <&gpio3 18 GPIO_ACTIVE_LOW>; + + reg = <1>; + spi-max-frequency = <1000000>; + spi-cpol; + }; +}; + +&tscadc { + status = "okay"; + adc { + ti,adc-channels = <1 2 3 4 5 6 7>; + }; }; #include "tps65910.dtsi" Modified: head/sys/gnu/dts/arm/am335x-igep0033.dtsi ============================================================================== --- head/sys/gnu/dts/arm/am335x-igep0033.dtsi Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/am335x-igep0033.dtsi Tue Mar 7 13:56:49 2017 (r314854) @@ -20,7 +20,7 @@ }; }; - memory { + memory@80000000 { device_type = "memory"; reg = <0x80000000 0x10000000>; /* 256 MB */ }; @@ -31,14 +31,14 @@ compatible = "gpio-leds"; - led@0 { + led0 { label = "com:green:user"; gpios = <&gpio1 23 GPIO_ACTIVE_HIGH>; default-state = "on"; }; }; - vbat: fixedregulator@0 { + vbat: fixedregulator0 { compatible = "regulator-fixed"; regulator-name = "vbat"; regulator-min-microvolt = <5000000>; @@ -46,7 +46,7 @@ regulator-boot-on; }; - vmmc: fixedregulator@0 { + vmmc: fixedregulator1 { compatible = "regulator-fixed"; regulator-name = "vmmc"; regulator-min-microvolt = <3300000>; @@ -161,7 +161,7 @@ #address-cells = <1>; #size-cells = <1>; - elm_id = <&elm>; + ti,elm-id = <&elm>; /* MTD partition table */ partition@0 { Modified: head/sys/gnu/dts/arm/am335x-lxm.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-lxm.dts Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/am335x-lxm.dts Tue Mar 7 13:56:49 2017 (r314854) @@ -19,13 +19,13 @@ }; }; - memory { + memory@80000000 { device_type = "memory"; reg = <0x80000000 0x20000000>; /* 512 MB */ }; /* Power supply provides a fixed 5V @2A */ - vbat: fixedregulator@0 { + vbat: fixedregulator0 { compatible = "regulator-fixed"; regulator-name = "vbat"; regulator-min-microvolt = <5000000>; @@ -34,7 +34,7 @@ }; /* Power supply provides a fixed 3.3V @3A */ - vmmcsd_fixed: fixedregulator@1 { + vmmcsd_fixed: fixedregulator1 { compatible = "regulator-fixed"; regulator-name = "vmmcsd_fixed"; regulator-min-microvolt = <3300000>; Modified: head/sys/gnu/dts/arm/am335x-nano.dts ============================================================================== --- head/sys/gnu/dts/arm/am335x-nano.dts Tue Mar 7 13:51:14 2017 (r314853) +++ head/sys/gnu/dts/arm/am335x-nano.dts Tue Mar 7 13:56:49 2017 (r314854) @@ -19,7 +19,7 @@ }; }; - memory { *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@freebsd.org Tue Mar 7 13:59:31 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 97284D0182F; Tue, 7 Mar 2017 13:59:31 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 50CCB189A; Tue, 7 Mar 2017 13:59:31 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27DxUHH078432; Tue, 7 Mar 2017 13:59:30 GMT (envelope-from manu@FreeBSD.org) Received: (from manu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27DxUHO078430; Tue, 7 Mar 2017 13:59:30 GMT (envelope-from manu@FreeBSD.org) Message-Id: <201703071359.v27DxUHO078430@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: manu set sender to manu@FreeBSD.org using -f From: Emmanuel Vadot Date: Tue, 7 Mar 2017 13:59:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314855 - head/sys/boot/fdt/dts/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 13:59:31 -0000 Author: manu Date: Tue Mar 7 13:59:30 2017 New Revision: 314855 URL: https://svnweb.freebsd.org/changeset/base/314855 Log: Update our Allwinner DTS to latest DTS changes in Linux 4.10 Modified: head/sys/boot/fdt/dts/arm/h3.dtsi head/sys/boot/fdt/dts/arm/orangepi-plus-2e.dts Modified: head/sys/boot/fdt/dts/arm/h3.dtsi ============================================================================== --- head/sys/boot/fdt/dts/arm/h3.dtsi Tue Mar 7 13:56:49 2017 (r314854) +++ head/sys/boot/fdt/dts/arm/h3.dtsi Tue Mar 7 13:59:30 2017 (r314855) @@ -26,91 +26,29 @@ * $FreeBSD$ */ -#include - / { cpus { cpu0: cpu@0 { - clocks = <&cpu>; + clocks = <&ccu CLK_CPUX>; clock-latency = <2000000>; }; }; - clocks { - pll2: clk@01c20008 { - #clock-cells = <1>; - compatible = "allwinner,sun8i-h3-pll2-clk"; - reg = <0x01c20008 0x4>; - clocks = <&osc24M>; - clock-output-names = "pll2-1x", "pll2-2x", - "pll2-4x", "pll2-8x"; - }; - - ths_clk: clk@1c20074 { - #clock-cells = <0>; - compatible = "allwinner,sun8i-h3-ths-clk"; - reg = <0x01c20074 0x4>; - clocks = <&osc24M>; - clock-output-names = "ths"; - }; - - codec_clk: clk@01c20140 { - #clock-cells = <0>; - compatible = "allwinner,sun4i-a10-codec-clk"; - reg = <0x01c20140 0x4>; - clocks = <&pll2 SUN4I_A10_PLL2_1X>; - clock-output-names = "codec"; - }; - }; - soc { emac: ethernet@1c30000 { compatible = "allwinner,sun8i-h3-emac"; reg = <0x01c30000 0x104>, <0x01c00030 0x4>; reg-names = "emac", "syscon"; interrupts = ; - resets = <&ahb_rst 17>, <&ahb_rst 66>; + resets = <&ccu RST_BUS_EMAC>, <&ccu RST_BUS_EPHY>; reset-names = "ahb", "ephy"; - clocks = <&bus_gates 17>, <&bus_gates 128>; + clocks = <&ccu CLK_BUS_EMAC>, <&ccu CLK_BUS_EPHY>; clock-names = "ahb", "ephy"; #address-cells = <1>; #size-cells = <0>; status = "disabled"; }; - i2c0: i2c@1c2ac00 { - compatible = "allwinner,sun6i-a31-i2c"; - reg = <0x01c2ac00 0x400>; - interrupts = ; - clocks = <&bus_gates 96>; - resets = <&apb2_rst 0>; - status = "disabled"; - #address-cells = <1>; - #size-cells = <0>; - }; - - i2c1: i2c@1c2b000 { - compatible = "allwinner,sun6i-a31-i2c"; - reg = <0x01c2b000 0x400>; - interrupts = ; - clocks = <&bus_gates 97>; - resets = <&apb2_rst 1>; - status = "disabled"; - #address-cells = <1>; - #size-cells = <0>; - }; - - i2c2: i2c@1c2b400 { - compatible = "allwinner,sun6i-a31-i2c"; - reg = <0x01c2b400 0x400>; - interrupts = ; - clocks = <&bus_gates 98>; - resets = <&apb2_rst 2>; - status = "disabled"; - #address-cells = <1>; - #size-cells = <0>; - }; - r_i2c: i2c@1f02400 { compatible = "allwinner,sun6i-a31-i2c"; reg = <0x01f02400 0x400>; @@ -129,44 +67,29 @@ compatible = "allwinner,sun8i-h3-ts"; reg = <0x01c25000 0x400>; interrupts = ; - clocks = <&bus_gates 72>, <&ths_clk>; + clocks = <&ccu CLK_BUS_THS>, <&ccu CLK_THS>; clock-names = "ahb", "ths"; - resets = <&apb1_rst 8>; + resets = <&ccu RST_BUS_THS 8>; #thermal-sensor-cells = <0>; }; - dma: dma-controller@01c02000 { - compatible = "allwinner,sun8i-h3-dma"; - reg = <0x01c02000 0x1000>; - interrupts = ; - clocks = <&bus_gates 6>; - clock-names = "ahb"; - resets = <&ahb_rst 6>; - reset-names = "ahb"; - #dma-cells = <1>; - }; - - codec: codec@01c22c00 { - compatible = "allwinner,sun8i-h3-codec"; - reg = <0x01c22c00 0x100>, <0x01f015c0 0x4>; - reg-names = "codec", "pr"; - interrupts = ; - clocks = <&bus_gates 64>, <&codec_clk>; - clock-names = "ahb", "codec"; - resets = <&ahb_rst 128>; - reset-names = "ahb"; - dmas = <&dma 15>, <&dma 15>; - dma-names = "rx", "tx"; - status = "disabled"; - }; + /* codec: codec@01c22c00 { */ + /* compatible = "allwinner,sun8i-h3-codec"; */ + /* reg = <0x01c22c00 0x100>, <0x01f015c0 0x4>; */ + /* reg-names = "codec", "pr"; */ + /* interrupts = ; */ + /* clocks = <&ccu CLK_BUS_CODEC>, <&codec_clk>; */ + /* clock-names = "ahb", "codec"; */ + /* resets = <&ahb_rst 128>; */ + /* reset-names = "ahb"; */ + /* dmas = <&dma 15>, <&dma 15>; */ + /* dma-names = "rx", "tx"; */ + /* status = "disabled"; */ + /* }; */ }; }; -&pll1 { - compatible = "allwinner,sun8i-h3-pll1-clk"; -}; - &pio { emac_pins_rgmii_a: emac_rgmii@0 { allwinner,pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", @@ -176,4 +99,11 @@ allwinner,drive = ; allwinner,pull = ; }; + + emac_phy_reset_pin: emac_phy_reset_pin@0 { + allwinner,pins = "PD6"; + allwinner,function = "gpio_out"; + allwinner,drive = ; + allwinner,pull = ; + }; }; Modified: head/sys/boot/fdt/dts/arm/orangepi-plus-2e.dts ============================================================================== --- head/sys/boot/fdt/dts/arm/orangepi-plus-2e.dts Tue Mar 7 13:56:49 2017 (r314854) +++ head/sys/boot/fdt/dts/arm/orangepi-plus-2e.dts Tue Mar 7 13:59:30 2017 (r314855) @@ -101,12 +101,12 @@ }; }; -&codec { - pinctrl-names = "default"; - pinctrl-0 = <&codec_pa_pin>; - allwinner,pa-gpios = <&pio 0 16 GPIO_ACTIVE_HIGH>; /* PA16 */ - status = "okay"; -}; +/* &codec { */ +/* pinctrl-names = "default"; */ +/* pinctrl-0 = <&codec_pa_pin>; */ +/* allwinner,pa-gpios = <&pio 0 16 GPIO_ACTIVE_HIGH>; /\* PA16 *\/ */ +/* status = "okay"; */ +/* }; */ &cpu0 { cpu-supply = <&vdd_cpu>; From owner-svn-src-all@freebsd.org Tue Mar 7 14:01:35 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 577AED018DA; Tue, 7 Mar 2017 14:01:35 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 03E141C39; Tue, 7 Mar 2017 14:01:34 +0000 (UTC) (envelope-from manu@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27E1YCf078583; Tue, 7 Mar 2017 14:01:34 GMT (envelope-from manu@FreeBSD.org) Received: (from manu@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27E1YFa078582; Tue, 7 Mar 2017 14:01:34 GMT (envelope-from manu@FreeBSD.org) Message-Id: <201703071401.v27E1YFa078582@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: manu set sender to manu@FreeBSD.org using -f From: Emmanuel Vadot Date: Tue, 7 Mar 2017 14:01:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-svnadmin@freebsd.org Subject: svn commit: r314856 - svnadmin/conf X-SVN-Group: svnadmin MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 14:01:35 -0000 Author: manu Date: Tue Mar 7 14:01:33 2017 New Revision: 314856 URL: https://svnweb.freebsd.org/changeset/base/314856 Log: Remove myself after DTS import Modified: svnadmin/conf/sizelimit.conf Modified: svnadmin/conf/sizelimit.conf ============================================================================== --- svnadmin/conf/sizelimit.conf Tue Mar 7 13:59:30 2017 (r314855) +++ svnadmin/conf/sizelimit.conf Tue Mar 7 14:01:33 2017 (r314856) @@ -22,7 +22,6 @@ dim imp jb jeff -manu mm np obrien From owner-svn-src-all@freebsd.org Tue Mar 7 15:27:25 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 479E2D0132E; Tue, 7 Mar 2017 15:27:25 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 0B86A1A42; Tue, 7 Mar 2017 15:27:24 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27FROwc016041; Tue, 7 Mar 2017 15:27:24 GMT (envelope-from avg@FreeBSD.org) Received: (from avg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27FROu8016040; Tue, 7 Mar 2017 15:27:24 GMT (envelope-from avg@FreeBSD.org) Message-Id: <201703071527.v27FROu8016040@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avg set sender to avg@FreeBSD.org using -f From: Andriy Gapon Date: Tue, 7 Mar 2017 15:27:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r314857 - stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 15:27:25 -0000 Author: avg Date: Tue Mar 7 15:27:23 2017 New Revision: 314857 URL: https://svnweb.freebsd.org/changeset/base/314857 Log: MFC r314058: zfs: lower priority of zio_write_issue threads by four Obtained from: Panzura Sponsored by: Panzura Modified: stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c ============================================================================== --- stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c Tue Mar 7 14:01:33 2017 (r314856) +++ stable/10/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c Tue Mar 7 15:27:23 2017 (r314857) @@ -924,9 +924,17 @@ spa_taskqs_init(spa_t *spa, zio_type_t t * The write issue taskq can be extremely CPU * intensive. Run it at slightly lower priority * than the other taskqs. + * FreeBSD notes: + * - numerically higher priorities are lower priorities; + * - if priorities divided by four (RQ_PPQ) are equal + * then a difference between them is insignificant. */ if (t == ZIO_TYPE_WRITE && q == ZIO_TASKQ_ISSUE) - pri++; +#ifdef illumos + pri--; +#else + pri += 4; +#endif tq = taskq_create_proc(name, value, pri, 50, INT_MAX, spa->spa_proc, flags); From owner-svn-src-all@freebsd.org Tue Mar 7 15:27:41 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A92B0D013AF; Tue, 7 Mar 2017 15:27:41 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 70B1D1BAA; Tue, 7 Mar 2017 15:27:41 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27FRef8016094; Tue, 7 Mar 2017 15:27:40 GMT (envelope-from avg@FreeBSD.org) Received: (from avg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27FRe8l016093; Tue, 7 Mar 2017 15:27:40 GMT (envelope-from avg@FreeBSD.org) Message-Id: <201703071527.v27FRe8l016093@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avg set sender to avg@FreeBSD.org using -f From: Andriy Gapon Date: Tue, 7 Mar 2017 15:27:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r314858 - stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-11 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 15:27:41 -0000 Author: avg Date: Tue Mar 7 15:27:40 2017 New Revision: 314858 URL: https://svnweb.freebsd.org/changeset/base/314858 Log: MFC r314058: zfs: lower priority of zio_write_issue threads by four Obtained from: Panzura Sponsored by: Panzura Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c ============================================================================== --- stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c Tue Mar 7 15:27:23 2017 (r314857) +++ stable/11/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c Tue Mar 7 15:27:40 2017 (r314858) @@ -923,9 +923,17 @@ spa_taskqs_init(spa_t *spa, zio_type_t t * The write issue taskq can be extremely CPU * intensive. Run it at slightly lower priority * than the other taskqs. + * FreeBSD notes: + * - numerically higher priorities are lower priorities; + * - if priorities divided by four (RQ_PPQ) are equal + * then a difference between them is insignificant. */ if (t == ZIO_TYPE_WRITE && q == ZIO_TASKQ_ISSUE) - pri++; +#ifdef illumos + pri--; +#else + pri += 4; +#endif tq = taskq_create_proc(name, value, pri, 50, INT_MAX, spa->spa_proc, flags); From owner-svn-src-all@freebsd.org Tue Mar 7 15:32:34 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 54066D0175F; Tue, 7 Mar 2017 15:32:34 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C61D712CF; Tue, 7 Mar 2017 15:32:33 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from tom.home (kib@localhost [127.0.0.1]) by kib.kiev.ua (8.15.2/8.15.2) with ESMTPS id v27FWRmv089555 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Tue, 7 Mar 2017 17:32:27 +0200 (EET) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.10.3 kib.kiev.ua v27FWRmv089555 Received: (from kostik@localhost) by tom.home (8.15.2/8.15.2/Submit) id v27FWRUQ089554; Tue, 7 Mar 2017 17:32:27 +0200 (EET) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Tue, 7 Mar 2017 17:32:27 +0200 From: Konstantin Belousov To: Conrad Meyer Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r314677 - head/lib/libc/gen Message-ID: <20170307153227.GN30979@kib.kiev.ua> References: <201703042046.v24KkvTw062504@repo.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201703042046.v24KkvTw062504@repo.freebsd.org> User-Agent: Mutt/1.8.0 (2017-02-23) X-Spam-Status: No, score=-2.0 required=5.0 tests=ALL_TRUSTED,BAYES_00, DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED autolearn=no autolearn_force=no version=3.4.1 X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on tom.home X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 15:32:34 -0000 On Sat, Mar 04, 2017 at 08:46:57PM +0000, Conrad Meyer wrote: > Author: cem > Date: Sat Mar 4 20:46:57 2017 > New Revision: 314677 > URL: https://svnweb.freebsd.org/changeset/base/314677 > > Log: > fts: Fix a potential memory leak in error case > > Dan Krejsa reports a potential memory leak in an fts_build error case, > detected by Coverity. (It doesn't seem to show up in Coverity Scan, so I > don't have a CID to point to.) > > I don't know whether it is actually possible to arrive in this case with a > non-empty 'head' list. The cost is low, though. One additional branch in a > terminal error case isn't the end of the world. > > PR: 217125 > Submitted by: Dan Krejsa > > Modified: > head/lib/libc/gen/fts.c > > Modified: head/lib/libc/gen/fts.c > ============================================================================== > --- head/lib/libc/gen/fts.c Sat Mar 4 20:35:34 2017 (r314676) > +++ head/lib/libc/gen/fts.c Sat Mar 4 20:46:57 2017 (r314677) > @@ -850,6 +850,7 @@ mem1: saved_errno = errno; > (cur->fts_level == FTS_ROOTLEVEL ? > FCHDIR(sp, sp->fts_rfd) : > fts_safe_changedir(sp, cur->fts_parent, -1, ".."))) { > + fts_lfree(head); > cur->fts_info = FTS_ERR; > SET(FTS_STOP); > return (NULL); Shouldn't the same patch applied to fts-compat.c at line 872 ? From owner-svn-src-all@freebsd.org Tue Mar 7 15:33:39 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id F189DD01824; Tue, 7 Mar 2017 15:33:39 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id BE34C14CD; Tue, 7 Mar 2017 15:33:39 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27FXcJT020098; Tue, 7 Mar 2017 15:33:38 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27FXcqE020097; Tue, 7 Mar 2017 15:33:38 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201703071533.v27FXcqE020097@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Tue, 7 Mar 2017 15:33:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314859 - head/sys/compat/linuxkpi/common/include/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 15:33:40 -0000 Author: hselasky Date: Tue Mar 7 15:33:38 2017 New Revision: 314859 URL: https://svnweb.freebsd.org/changeset/base/314859 Log: Make sure jiffies value is cast to an integer in the LinuxKPI before doing millisecond conversion. Under FreeBSD jiffies are 32-bit. MFC after: 1 week Sponsored by: Mellanox Technologies Modified: head/sys/compat/linuxkpi/common/include/linux/jiffies.h Modified: head/sys/compat/linuxkpi/common/include/linux/jiffies.h ============================================================================== --- head/sys/compat/linuxkpi/common/include/linux/jiffies.h Tue Mar 7 15:27:40 2017 (r314858) +++ head/sys/compat/linuxkpi/common/include/linux/jiffies.h Tue Mar 7 15:33:38 2017 (r314859) @@ -40,7 +40,7 @@ #define jiffies ticks #define jiffies_64 ticks -#define jiffies_to_msecs(x) (((int64_t)(x)) * 1000 / hz) +#define jiffies_to_msecs(x) (((int64_t)(int)(x)) * 1000 / hz) #define MAX_JIFFY_OFFSET ((INT_MAX >> 1) - 1) From owner-svn-src-all@freebsd.org Tue Mar 7 15:34:50 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DFAC7D018F2; Tue, 7 Mar 2017 15:34:50 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id AC539166F; Tue, 7 Mar 2017 15:34:50 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27FYnFF020178; Tue, 7 Mar 2017 15:34:49 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27FYnBf020177; Tue, 7 Mar 2017 15:34:49 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201703071534.v27FYnBf020177@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Tue, 7 Mar 2017 15:34:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314860 - head/sys/compat/linuxkpi/common/include/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 15:34:51 -0000 Author: hselasky Date: Tue Mar 7 15:34:49 2017 New Revision: 314860 URL: https://svnweb.freebsd.org/changeset/base/314860 Log: Fix implementation of the DECLARE_RWSEM() macro in the LinuxKPI. MFC after: 1 week Sponsored by: Mellanox Technologies Modified: head/sys/compat/linuxkpi/common/include/linux/rwsem.h Modified: head/sys/compat/linuxkpi/common/include/linux/rwsem.h ============================================================================== --- head/sys/compat/linuxkpi/common/include/linux/rwsem.h Tue Mar 7 15:33:38 2017 (r314859) +++ head/sys/compat/linuxkpi/common/include/linux/rwsem.h Tue Mar 7 15:34:49 2017 (r314860) @@ -66,9 +66,9 @@ struct rw_semaphore { struct rw_semaphore name; \ static void name##_rwsem_init(void *arg) \ { \ - linux_init_rwsem(&name, rwsem_name(#name)) \ + linux_init_rwsem(&name, rwsem_name(#name)); \ } \ -SYSINIT(name, SI_SUB_LOCKS, SI_ORDER_SECOND, name##_rwsem_init, NULL) +SYSINIT(name, SI_SUB_LOCK, SI_ORDER_SECOND, name##_rwsem_init, NULL) static inline void linux_init_rwsem(struct rw_semaphore *rw, const char *name) From owner-svn-src-all@freebsd.org Tue Mar 7 15:37:52 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9A3EDD01A1E; Tue, 7 Mar 2017 15:37:52 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 698891901; Tue, 7 Mar 2017 15:37:52 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27Fbp0L020334; Tue, 7 Mar 2017 15:37:51 GMT (envelope-from hselasky@FreeBSD.org) Received: (from hselasky@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27Fbpg8020333; Tue, 7 Mar 2017 15:37:51 GMT (envelope-from hselasky@FreeBSD.org) Message-Id: <201703071537.v27Fbpg8020333@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: hselasky set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky Date: Tue, 7 Mar 2017 15:37:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314861 - head/sys/compat/linuxkpi/common/include/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 15:37:52 -0000 Author: hselasky Date: Tue Mar 7 15:37:51 2017 New Revision: 314861 URL: https://svnweb.freebsd.org/changeset/base/314861 Log: Implement time_is_after_eq_jiffies() function in the LinuxKPI. MFC after: 1 week Sponsored by: Mellanox Technologies Modified: head/sys/compat/linuxkpi/common/include/linux/jiffies.h Modified: head/sys/compat/linuxkpi/common/include/linux/jiffies.h ============================================================================== --- head/sys/compat/linuxkpi/common/include/linux/jiffies.h Tue Mar 7 15:34:49 2017 (r314860) +++ head/sys/compat/linuxkpi/common/include/linux/jiffies.h Tue Mar 7 15:37:51 2017 (r314861) @@ -50,6 +50,7 @@ #define time_before_eq(a, b) time_after_eq(b, a) #define time_in_range(a,b,c) \ (time_after_eq(a,b) && time_before_eq(a,c)) +#define time_is_after_eq_jiffies(a) time_after_eq(a, jiffies) #define HZ hz From owner-svn-src-all@freebsd.org Tue Mar 7 15:43:50 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CF84BD01D70; Tue, 7 Mar 2017 15:43:50 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9F48E1E1F; Tue, 7 Mar 2017 15:43:50 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27FhnPu024243; Tue, 7 Mar 2017 15:43:49 GMT (envelope-from avg@FreeBSD.org) Received: (from avg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27FhnoL024242; Tue, 7 Mar 2017 15:43:49 GMT (envelope-from avg@FreeBSD.org) Message-Id: <201703071543.v27FhnoL024242@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avg set sender to avg@FreeBSD.org using -f From: Andriy Gapon Date: Tue, 7 Mar 2017 15:43:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314862 - head/sys/modules/qlxgbe X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 15:43:50 -0000 Author: avg Date: Tue Mar 7 15:43:49 2017 New Revision: 314862 URL: https://svnweb.freebsd.org/changeset/base/314862 Log: qlxgbe: add GCC_MS_EXTENSIONS to CFLAGS to make old base GCC happy The module uses unnamed structure and union fields and base GCC in stable/10 doesn't like it. I think that that is a C11 feature, so it is courteous of more modern compilers to not complain about it when compiling in C99 mode. Approved by: davidcs MFC after: 5 days Modified: head/sys/modules/qlxgbe/Makefile Modified: head/sys/modules/qlxgbe/Makefile ============================================================================== --- head/sys/modules/qlxgbe/Makefile Tue Mar 7 15:37:51 2017 (r314861) +++ head/sys/modules/qlxgbe/Makefile Tue Mar 7 15:43:49 2017 (r314862) @@ -43,6 +43,9 @@ SRCS+= ql_minidump.c SRCS+= device_if.h bus_if.h pci_if.h +# Uses unnamed structure and union fields +CFLAGS+= ${GCC_MS_EXTENSIONS} + #CFLAGS += -DQL_DBG # Please turn off QL_LDFLASH_FW when you enable QL_ENABLE_ISCSI_TLV # You may comment out both QL_LDFLASH_FW and QL_ENABLE_ISCSI_TLV if you like From owner-svn-src-all@freebsd.org Tue Mar 7 16:06:54 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id D6CEFD0192E; Tue, 7 Mar 2017 16:06:54 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id A5BF01E28; Tue, 7 Mar 2017 16:06:54 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27G6rub032735; Tue, 7 Mar 2017 16:06:53 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27G6rWq032733; Tue, 7 Mar 2017 16:06:53 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <201703071606.v27G6rWq032733@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Tue, 7 Mar 2017 16:06:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314863 - in head: . lib/libpcap X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 16:06:54 -0000 Author: delphij Date: Tue Mar 7 16:06:53 2017 New Revision: 314863 URL: https://svnweb.freebsd.org/changeset/base/314863 Log: Stop installing pcap-int.h, which is the internal interface for libpcap. Reference: https://github.com/the-tcpdump-group/libpcap/issues/560 PR: 217221 Modified: head/ObsoleteFiles.inc head/lib/libpcap/Makefile Modified: head/ObsoleteFiles.inc ============================================================================== --- head/ObsoleteFiles.inc Tue Mar 7 15:43:49 2017 (r314862) +++ head/ObsoleteFiles.inc Tue Mar 7 16:06:53 2017 (r314863) @@ -38,6 +38,8 @@ # xargs -n1 | sort | uniq -d; # done +# 20170307: remove pcap-int.h +OLD_FILES+=usr/include/pcap-int.h # 20170302: new libc++ import which bumps version from 3.9.1 to 4.0.0. OLD_FILES+=usr/include/c++/v1/__undef___deallocate OLD_FILES+=usr/include/c++/v1/tr1/__undef___deallocate Modified: head/lib/libpcap/Makefile ============================================================================== --- head/lib/libpcap/Makefile Tue Mar 7 15:43:49 2017 (r314862) +++ head/lib/libpcap/Makefile Tue Mar 7 16:06:53 2017 (r314863) @@ -14,7 +14,7 @@ SRCS= grammar.y tokdefs.h pcap_version.h scanner.l sf-pcap.c sf-pcap-ng.c version.c # Old compatibility headers -INCS= pcap.h pcap-int.h pcap-namedb.h pcap-bpf.h +INCS= pcap.h pcap-namedb.h pcap-bpf.h PCAPINCS= pcap/pcap.h pcap/namedb.h pcap/bpf.h pcap/dlt.h pcap/export-defs.h PCAPINCSDIR= ${INCLUDEDIR}/pcap From owner-svn-src-all@freebsd.org Tue Mar 7 16:07:53 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id DD330D019AB; Tue, 7 Mar 2017 16:07:53 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 9CF8D1F9E; Tue, 7 Mar 2017 16:07:53 +0000 (UTC) (envelope-from avg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27G7qne032837; Tue, 7 Mar 2017 16:07:52 GMT (envelope-from avg@FreeBSD.org) Received: (from avg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27G7qdt032836; Tue, 7 Mar 2017 16:07:52 GMT (envelope-from avg@FreeBSD.org) Message-Id: <201703071607.v27G7qdt032836@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: avg set sender to avg@FreeBSD.org using -f From: Andriy Gapon Date: Tue, 7 Mar 2017 16:07:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314864 - head/sys/dev/firewire X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 16:07:54 -0000 Author: avg Date: Tue Mar 7 16:07:52 2017 New Revision: 314864 URL: https://svnweb.freebsd.org/changeset/base/314864 Log: firewire/sbp: try to improve locking, plus a few style nits This change tries to fix the most obvious locking problems. sbp_cam_scan_lun() is never called with the sbp lock held, so the lock needs to be acquired internally (if it's needed at all). Without this change a kernel with INVARIANTS panics when a firewire disk is connected: panic: mutex sbp not owned at /usr/src/sys/dev/firewire/sbp.c:967 KDB: stack backtrace: db_trace_self_wrapper() at 0xffffffff80420bbb = db_trace_self_wrapper+0x2b/frame 0xfffffe0504df0930 kdb_backtrace() at 0xffffffff80670359 = kdb_backtrace+0x39/frame 0xfffffe0504df09e0 vpanic() at 0xffffffff8063986c = vpanic+0x14c/frame 0xfffffe0504df0a20 panic() at 0xffffffff806395b3 = panic+0x43/frame 0xfffffe0504df0a80 __mtx_assert() at 0xffffffff8061c40d = __mtx_assert+0xed/frame 0xfffffe0504df0ac0 sbp_cam_scan_lun() at 0xffffffff80474667 = sbp_cam_scan_lun+0x37/frame 0xfffffe0504df0af0 xpt_done_process() at 0xffffffff802aacfa = xpt_done_process+0x2da/frame 0xfffffe0504df0b30 xpt_done_td() at 0xffffffff802ac2e5 = xpt_done_td+0xd5/frame 0xfffffe0504df0b80 fork_exit() at 0xffffffff805ff72f = fork_exit+0xdf/frame 0xfffffe0504df0bf0 fork_trampoline() at 0xffffffff8082483e = fork_trampoline+0xe/frame 0xfffffe0504df0bf0 --- trap 0, rip = 0, rsp = 0, rbp = 0 --- Also, I tried to reduce the scope of the sbp lock to avoid holding it while doing bus_dma allocations. The code badly needs some re-engineering. SBP really should implement a CAM transport, so that it avoids control flow inversion when re-scanning the bus. Also, the sbp lock seems to be too coarse. Additionally, the commit includes some changes not related to locking. - sbp_cam_scan_lun: restore CAM_DEV_QFREEZE before re-queueing the ccb because xpt_setup_ccb resets ccb_h.flags - sbp_post_busreset: call xpt_release_simq only if it's actually frozen - don't place private SIMQ_FREEZED flag (sic, "freezed") into sim->flags, use sbp->flags for that - some style fixes and control flow enhancements Reviewed by: sbruno MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D9898 Modified: head/sys/dev/firewire/sbp.c Modified: head/sys/dev/firewire/sbp.c ============================================================================== --- head/sys/dev/firewire/sbp.c Tue Mar 7 16:06:53 2017 (r314863) +++ head/sys/dev/firewire/sbp.c Tue Mar 7 16:07:52 2017 (r314864) @@ -425,7 +425,6 @@ sbp_alloc_lun(struct sbp_target *target) int maxlun, lun, i; sbp = target->sbp; - SBP_LOCK_ASSERT(sbp); crom_init_context(&cc, target->fwdev->csrrom); /* XXX shoud parse appropriate unit directories only */ maxlun = -1; @@ -558,7 +557,9 @@ END_DEBUG goto next; } callout_init_mtx(&ocb->timer, &sbp->mtx, 0); + SBP_LOCK(sbp); sbp_free_ocb(sdev, ocb); + SBP_UNLOCK(sbp); } next: crom_next(&cc); @@ -687,9 +688,8 @@ END_DEBUG && crom_has_specver((fwdev)->csrrom, CSRVAL_ANSIT10, CSRVAL_T10SBP2)) static void -sbp_probe_target(void *arg) +sbp_probe_target(struct sbp_target *target) { - struct sbp_target *target = (struct sbp_target *)arg; struct sbp_softc *sbp = target->sbp; struct sbp_dev *sdev; int i, alive; @@ -701,8 +701,6 @@ SBP_DEBUG(1) (!alive) ? " not " : ""); END_DEBUG - sbp = target->sbp; - SBP_LOCK_ASSERT(sbp); sbp_alloc_lun(target); /* XXX untimeout mgm_ocb and dequeue */ @@ -718,7 +716,9 @@ END_DEBUG sbp_probe_lun(sdev); sbp_show_sdev_info(sdev); + SBP_LOCK(sbp); sbp_abort_all_ocbs(sdev, CAM_SCSI_BUS_RESET); + SBP_UNLOCK(sbp); switch (sdev->status) { case SBP_DEV_RESET: /* new or revived target */ @@ -773,9 +773,9 @@ SBP_DEBUG(0) printf("sbp_post_busreset\n"); END_DEBUG SBP_LOCK(sbp); - if ((sbp->sim->flags & SIMQ_FREEZED) == 0) { + if ((sbp->flags & SIMQ_FREEZED) == 0) { xpt_freeze_simq(sbp->sim, /*count*/1); - sbp->sim->flags |= SIMQ_FREEZED; + sbp->flags |= SIMQ_FREEZED; } microtime(&sbp->last_busreset); SBP_UNLOCK(sbp); @@ -800,19 +800,15 @@ END_DEBUG sbp_cold--; SBP_LOCK(sbp); -#if 0 - /* - * XXX don't let CAM the bus rest. - * CAM tries to do something with freezed (DEV_RETRY) devices. - */ - xpt_async(AC_BUS_RESET, sbp->path, /*arg*/ NULL); -#endif /* Garbage Collection */ for (i = 0; i < SBP_NUM_TARGETS; i++) { target = &sbp->targets[i]; + if (target->fwdev == NULL) + continue; + STAILQ_FOREACH(fwdev, &sbp->fd.fc->devices, link) - if (target->fwdev == NULL || target->fwdev == fwdev) + if (target->fwdev == fwdev) break; if (fwdev == NULL) { /* device has removed in lower driver */ @@ -820,6 +816,7 @@ END_DEBUG sbp_free_target(target); } } + /* traverse device list */ STAILQ_FOREACH(fwdev, &sbp->fd.fc->devices, link) { SBP_DEBUG(0) @@ -846,12 +843,24 @@ END_DEBUG continue; } } - sbp_probe_target((void *)target); + + /* + * It is safe to drop the lock here as the target is already + * reserved, so there should be no contenders for it. + * And the target is not yet exposed, so there should not be + * any other accesses to it. + * Finally, the list being iterated is protected somewhere else. + */ + SBP_UNLOCK(sbp); + sbp_probe_target(target); + SBP_LOCK(sbp); if (target->num_lun == 0) sbp_free_target(target); } - xpt_release_simq(sbp->sim, /*run queue*/TRUE); - sbp->sim->flags &= ~SIMQ_FREEZED; + if ((sbp->flags & SIMQ_FREEZED) != 0) { + xpt_release_simq(sbp->sim, /*run queue*/TRUE); + sbp->flags &= ~SIMQ_FREEZED; + } SBP_UNLOCK(sbp); } @@ -959,30 +968,36 @@ sbp_next_dev(struct sbp_target *target, static void sbp_cam_scan_lun(struct cam_periph *periph, union ccb *ccb) { + struct sbp_softc *sbp; struct sbp_target *target; struct sbp_dev *sdev; sdev = (struct sbp_dev *) ccb->ccb_h.ccb_sdev_ptr; target = sdev->target; - SBP_LOCK_ASSERT(target->sbp); + sbp = target->sbp; + SBP_LOCK(sbp); SBP_DEBUG(0) - device_printf(sdev->target->sbp->fd.dev, + device_printf(sbp->fd.dev, "%s:%s\n", __func__, sdev->bustgtlun); END_DEBUG if ((ccb->ccb_h.status & CAM_STATUS_MASK) == CAM_REQ_CMP) { sdev->status = SBP_DEV_ATTACHED; } else { - device_printf(sdev->target->sbp->fd.dev, + device_printf(sbp->fd.dev, "%s:%s failed\n", __func__, sdev->bustgtlun); } sdev = sbp_next_dev(target, sdev->lun_id + 1); if (sdev == NULL) { + SBP_UNLOCK(sbp); free(ccb, M_SBP); return; } /* reuse ccb */ xpt_setup_ccb(&ccb->ccb_h, sdev->path, SCAN_PRI); ccb->ccb_h.ccb_sdev_ptr = sdev; + ccb->ccb_h.flags |= CAM_DEV_QFREEZE; + SBP_UNLOCK(sbp); + xpt_action(ccb); xpt_release_devq(sdev->path, sdev->freeze, TRUE); sdev->freeze = 1; @@ -1011,6 +1026,8 @@ END_DEBUG printf("sbp_cam_scan_target: malloc failed\n"); return; } + SBP_UNLOCK(target->sbp); + xpt_setup_ccb(&ccb->ccb_h, sdev->path, SCAN_PRI); ccb->ccb_h.func_code = XPT_SCAN_LUN; ccb->ccb_h.cbfcnp = sbp_cam_scan_lun; @@ -1020,6 +1037,8 @@ END_DEBUG /* The scan is in progress now. */ xpt_action(ccb); + + SBP_LOCK(target->sbp); xpt_release_devq(sdev->path, sdev->freeze, TRUE); sdev->freeze = 1; } @@ -1977,8 +1996,8 @@ END_DEBUG sbp->fd.post_explore = sbp_post_explore; if (fc->status != -1) { - sbp_post_busreset((void *)sbp); - sbp_post_explore((void *)sbp); + sbp_post_busreset(sbp); + sbp_post_explore(sbp); } SBP_LOCK(sbp); xpt_async(AC_BUS_RESET, sbp->path, /*arg*/ NULL); From owner-svn-src-all@freebsd.org Tue Mar 7 16:09:38 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id BDB5BD01A2C; Tue, 7 Mar 2017 16:09:38 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 8ADCB114C; Tue, 7 Mar 2017 16:09:38 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27G9bwv032946; Tue, 7 Mar 2017 16:09:37 GMT (envelope-from delphij@FreeBSD.org) Received: (from delphij@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27G9br9032945; Tue, 7 Mar 2017 16:09:37 GMT (envelope-from delphij@FreeBSD.org) Message-Id: <201703071609.v27G9br9032945@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: delphij set sender to delphij@FreeBSD.org using -f From: Xin LI Date: Tue, 7 Mar 2017 16:09:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314865 - head/sys/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 16:09:38 -0000 Author: delphij Date: Tue Mar 7 16:09:37 2017 New Revision: 314865 URL: https://svnweb.freebsd.org/changeset/base/314865 Log: Bump __FreeBSD_version for removal of pcap-int.h. PR: 217221 Modified: head/sys/sys/param.h Modified: head/sys/sys/param.h ============================================================================== --- head/sys/sys/param.h Tue Mar 7 16:07:52 2017 (r314864) +++ head/sys/sys/param.h Tue Mar 7 16:09:37 2017 (r314865) @@ -58,7 +58,7 @@ * in the range 5 to 9. */ #undef __FreeBSD_version -#define __FreeBSD_version 1200023 /* Master, propagated to newvers */ +#define __FreeBSD_version 1200024 /* Master, propagated to newvers */ /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, From owner-svn-src-all@freebsd.org Tue Mar 7 16:56:18 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3CF10D02952; Tue, 7 Mar 2017 16:56:18 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: from mail-wm0-f41.google.com (mail-wm0-f41.google.com [74.125.82.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id D1AC61F7B; Tue, 7 Mar 2017 16:56:17 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: by mail-wm0-f41.google.com with SMTP id n11so94864298wma.1; Tue, 07 Mar 2017 08:56:17 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:reply-to:in-reply-to:references :from:date:message-id:subject:to:cc; bh=Ecm9Cs2MKK1OwgHlrxCjW92kuU0e3WxjeRyP43Ukd5w=; b=iP+BIVp7Dxn8wb1ez5NrOWQqpeZZPiifFxqVk5wesgqEia5N6HxdeGJ/bGVj0Dcr13 HTO+hB/PKKyA+9OyI2MR+Q2TXCkmFx32DK8KMuKPOq2sgwyZXKVDiUHMrilGW674Z17M beh23RTVJW0Xr6HAn4JiN+3LvHN6po6lbvjmVNclrnyil4nNP0m12vNFPNWsafbi7U7l ZwAv3hblBUOna+e7IkJhYNzfDH5ZSUpxeAPq+x6zOydT7tLQp4mWq+X86rnv7fvTNEaQ K6C9WFynVdZJuxbEt4a6gWhSGfrfBhLi/+7IWhYCpRxAVy6GuK0mh5N3rjlX0n1Ly4zM tX1Q== X-Gm-Message-State: AMke39kEGJ+5Q3WnTAi7xIicoqBuILK9BVpWXgrLAWxPzuxVNMJFeTmtMt/sU4ZEPGprNg== X-Received: by 10.28.43.6 with SMTP id r6mr19071738wmr.0.1488905377182; Tue, 07 Mar 2017 08:49:37 -0800 (PST) Received: from mail-wr0-f174.google.com (mail-wr0-f174.google.com. [209.85.128.174]) by smtp.gmail.com with ESMTPSA id g5sm672028wrb.48.2017.03.07.08.49.36 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 07 Mar 2017 08:49:37 -0800 (PST) Received: by mail-wr0-f174.google.com with SMTP id l37so5636445wrc.1; Tue, 07 Mar 2017 08:49:36 -0800 (PST) X-Received: by 10.223.145.97 with SMTP id j88mr1120669wrj.178.1488905376833; Tue, 07 Mar 2017 08:49:36 -0800 (PST) MIME-Version: 1.0 Reply-To: cem@freebsd.org Received: by 10.80.169.4 with HTTP; Tue, 7 Mar 2017 08:49:36 -0800 (PST) In-Reply-To: <20170307153227.GN30979@kib.kiev.ua> References: <201703042046.v24KkvTw062504@repo.freebsd.org> <20170307153227.GN30979@kib.kiev.ua> From: Conrad Meyer Date: Tue, 7 Mar 2017 08:49:36 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r314677 - head/lib/libc/gen To: Konstantin Belousov Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 16:56:18 -0000 Yes. On Tue, Mar 7, 2017 at 7:32 AM, Konstantin Belousov wrote: > On Sat, Mar 04, 2017 at 08:46:57PM +0000, Conrad Meyer wrote: >> Author: cem >> Date: Sat Mar 4 20:46:57 2017 >> New Revision: 314677 >> URL: https://svnweb.freebsd.org/changeset/base/314677 >> >> Log: >> fts: Fix a potential memory leak in error case >> >> Dan Krejsa reports a potential memory leak in an fts_build error case, >> detected by Coverity. (It doesn't seem to show up in Coverity Scan, so I >> don't have a CID to point to.) >> >> I don't know whether it is actually possible to arrive in this case with a >> non-empty 'head' list. The cost is low, though. One additional branch in a >> terminal error case isn't the end of the world. >> >> PR: 217125 >> Submitted by: Dan Krejsa >> >> Modified: >> head/lib/libc/gen/fts.c >> >> Modified: head/lib/libc/gen/fts.c >> ============================================================================== >> --- head/lib/libc/gen/fts.c Sat Mar 4 20:35:34 2017 (r314676) >> +++ head/lib/libc/gen/fts.c Sat Mar 4 20:46:57 2017 (r314677) >> @@ -850,6 +850,7 @@ mem1: saved_errno = errno; >> (cur->fts_level == FTS_ROOTLEVEL ? >> FCHDIR(sp, sp->fts_rfd) : >> fts_safe_changedir(sp, cur->fts_parent, -1, ".."))) { >> + fts_lfree(head); >> cur->fts_info = FTS_ERR; >> SET(FTS_STOP); >> return (NULL); > > Shouldn't the same patch applied to fts-compat.c at line 872 ? From owner-svn-src-all@freebsd.org Tue Mar 7 17:06:32 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 528DED02F02; Tue, 7 Mar 2017 17:06:32 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: from mail-wm0-f41.google.com (mail-wm0-f41.google.com [74.125.82.41]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E58D610A6; Tue, 7 Mar 2017 17:06:31 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: by mail-wm0-f41.google.com with SMTP id n11so95131644wma.1; Tue, 07 Mar 2017 09:06:31 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:reply-to:in-reply-to:references :from:date:message-id:subject:to:cc; bh=CAX6QFZJRuZXkYu92pO+/vETrCBwxrkN7y2NgxWVt/A=; b=J/5QD7I1Q5ovd5C1RVApezhC/RoROGJaUW4JoMuKF/Ax8snAVdRqQKYYamygL/7k+m nJvJbbJTEz0OohWwNKDkBtGk7u/IzeT+3JgJ1MMLpqld3oYnlfPdKNiqGwHCcvQlalIF nAhQ+liTx1OmJvsKinrjMLr/hWQLKDtlBaDtH8kk5ur5dDRJ4sJDs02rU5aiJYIV5XyM Zq57OoNKkUgK2Ulik6LK+C2JtGUMevSgRMF6Hhpv11uPZ7cQQTRGg+m5cxHJcgsfbvbU h3rJv67uhYysJFaccDppq2g8i/OQNPl8u2Y6Ux5SNTaJIEIdK64lkiXmBdoaP+RqVuX2 fMaQ== X-Gm-Message-State: AMke39nVjn8qdYh9chQVfIhgO2qffewLZZWxlpRTv2HBvkgjnSJRd+rIJyJ08U/CI/p75g== X-Received: by 10.28.46.73 with SMTP id u70mr18780186wmu.54.1488905883479; Tue, 07 Mar 2017 08:58:03 -0800 (PST) Received: from mail-wm0-f46.google.com (mail-wm0-f46.google.com. [74.125.82.46]) by smtp.gmail.com with ESMTPSA id v1sm677561wra.65.2017.03.07.08.58.03 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 07 Mar 2017 08:58:03 -0800 (PST) Received: by mail-wm0-f46.google.com with SMTP id n11so94912232wma.1; Tue, 07 Mar 2017 08:58:03 -0800 (PST) X-Received: by 10.28.179.7 with SMTP id c7mr18837913wmf.128.1488905883235; Tue, 07 Mar 2017 08:58:03 -0800 (PST) MIME-Version: 1.0 Reply-To: cem@freebsd.org Received: by 10.80.169.4 with HTTP; Tue, 7 Mar 2017 08:58:02 -0800 (PST) In-Reply-To: <201703070020.v270K2vA039655@repo.freebsd.org> References: <201703070020.v270K2vA039655@repo.freebsd.org> From: Conrad Meyer Date: Tue, 7 Mar 2017 08:58:02 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r314813 - head/sys/kern To: Hiren Panchasara Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 17:06:32 -0000 Hi Hiren, On Mon, Mar 6, 2017 at 4:20 PM, Hiren Panchasara wrote: > Author: hiren > Date: Tue Mar 7 00:20:01 2017 > New Revision: 314813 > URL: https://svnweb.freebsd.org/changeset/base/314813 > > ... > @@ -1043,6 +1043,11 @@ sbcut_internal(struct sockbuf *sb, int l > { > struct mbuf *m, *next, *mfree; > > + KASSERT(len > 0, ("%s: len is %d but it is supposed to be +ve", > + __func__, len)); Can you change the spelling from +ve to positive? I guess that might mean wrapping the line, but I find the full word much more clear. (Also, I guess the assert is >= 0 now? So that should read "non-negative" rather than "positive." :-) ) > + KASSERT(len <= sb->sb_ccc, ("%s: len: %d is > ccc: %u", > + __func__, len, sb->sb_ccc)); > + > next = (m = sb->sb_mb) ? m->m_nextpkt : 0; > mfree = NULL; Best, Conrad From owner-svn-src-all@freebsd.org Tue Mar 7 17:07:17 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E98D5D02F71; Tue, 7 Mar 2017 17:07:17 +0000 (UTC) (envelope-from dchagin@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id AE18711FF; Tue, 7 Mar 2017 17:07:17 +0000 (UTC) (envelope-from dchagin@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27H7GNo058247; Tue, 7 Mar 2017 17:07:16 GMT (envelope-from dchagin@FreeBSD.org) Received: (from dchagin@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27H7GVL058242; Tue, 7 Mar 2017 17:07:16 GMT (envelope-from dchagin@FreeBSD.org) Message-Id: <201703071707.v27H7GVL058242@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dchagin set sender to dchagin@FreeBSD.org using -f From: Dmitry Chagin Date: Tue, 7 Mar 2017 17:07:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314866 - in head/sys: amd64/linux amd64/linux32 compat/linux i386/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 17:07:18 -0000 Author: dchagin Date: Tue Mar 7 17:07:16 2017 New Revision: 314866 URL: https://svnweb.freebsd.org/changeset/base/314866 Log: Reduce code duplication between MD Linux code by moving SYSV IPC 64-bit related struct definitions out into the MI path. Invert the native ipc structs to the Linux ipc structs convesion logic. Since 64-bit variant of ipc structs has more precision convert native ipc structs to the 64-bit Linux ipc structs and then truncate 64-bit values into the non 64-bit if needed. Unlike Linux, return EOVERFLOW if the values do not fit. Fix SYSV IPC for 64-bit Linuxulator which never sets IPC_64 bit. MFC after: 1 month Added: head/sys/compat/linux/linux_ipc64.h - copied, changed from r314865, head/sys/i386/linux/linux_ipc64.h Deleted: head/sys/amd64/linux/linux_ipc64.h head/sys/amd64/linux32/linux32_ipc64.h head/sys/i386/linux/linux_ipc64.h Modified: head/sys/amd64/linux/linux.h head/sys/amd64/linux32/linux.h head/sys/compat/linux/linux_ipc.c head/sys/i386/linux/linux.h Modified: head/sys/amd64/linux/linux.h ============================================================================== --- head/sys/amd64/linux/linux.h Tue Mar 7 16:09:37 2017 (r314865) +++ head/sys/amd64/linux/linux.h Tue Mar 7 17:07:16 2017 (r314866) @@ -69,7 +69,9 @@ typedef l_long l_clock_t; typedef l_int l_daddr_t; typedef l_ulong l_dev_t; typedef l_uint l_gid_t; +typedef l_ushort l_gid16_t; typedef l_uint l_uid_t; +typedef l_ushort l_uid16_t; typedef l_ulong l_ino_t; typedef l_int l_key_t; typedef l_long l_loff_t; @@ -381,16 +383,6 @@ union l_semun { l_uintptr_t __pad; }; -struct l_ipc_perm { - l_key_t key; - l_uid_t uid; - l_gid_t gid; - l_uid_t cuid; - l_gid_t cgid; - l_ushort mode; - l_ushort seq; -}; - /* * Socket defines */ Modified: head/sys/amd64/linux32/linux.h ============================================================================== --- head/sys/amd64/linux32/linux.h Tue Mar 7 16:09:37 2017 (r314865) +++ head/sys/amd64/linux32/linux.h Tue Mar 7 17:07:16 2017 (r314866) @@ -474,16 +474,6 @@ union l_semun { l_uintptr_t __pad; } __packed; -struct l_ipc_perm { - l_key_t key; - l_uid16_t uid; - l_gid16_t gid; - l_uid16_t cuid; - l_gid16_t cgid; - l_ushort mode; - l_ushort seq; -}; - /* * Socket defines */ Modified: head/sys/compat/linux/linux_ipc.c ============================================================================== --- head/sys/compat/linux/linux_ipc.c Tue Mar 7 16:09:37 2017 (r314865) +++ head/sys/compat/linux/linux_ipc.c Tue Mar 7 17:07:16 2017 (r314866) @@ -44,15 +44,27 @@ __FBSDID("$FreeBSD$"); #ifdef COMPAT_LINUX32 #include #include -#include #else #include #include -#include #endif #include +#include #include +/* + * old, pre 2.4 kernel + */ +struct l_ipc_perm { + l_key_t key; + l_uid16_t uid; + l_gid16_t gid; + l_uid16_t cuid; + l_gid16_t cgid; + l_ushort mode; + l_ushort seq; +}; + struct l_seminfo { l_int semmap; l_int semmni; @@ -95,7 +107,7 @@ struct l_msginfo { }; static void -bsd_to_linux_shminfo( struct shminfo *bpp, struct l_shminfo *lpp) +bsd_to_linux_shminfo( struct shminfo *bpp, struct l_shminfo64 *lpp) { lpp->shmmax = bpp->shmmax; @@ -109,16 +121,16 @@ static void bsd_to_linux_shm_info( struct shm_info *bpp, struct l_shm_info *lpp) { - lpp->used_ids = bpp->used_ids ; - lpp->shm_tot = bpp->shm_tot ; - lpp->shm_rss = bpp->shm_rss ; - lpp->shm_swp = bpp->shm_swp ; - lpp->swap_attempts = bpp->swap_attempts ; - lpp->swap_successes = bpp->swap_successes ; + lpp->used_ids = bpp->used_ids; + lpp->shm_tot = bpp->shm_tot; + lpp->shm_rss = bpp->shm_rss; + lpp->shm_swp = bpp->shm_swp; + lpp->swap_attempts = bpp->swap_attempts; + lpp->swap_successes = bpp->swap_successes; } static void -linux_to_bsd_ipc_perm(struct l_ipc_perm *lpp, struct ipc_perm *bpp) +linux_to_bsd_ipc_perm(struct l_ipc64_perm *lpp, struct ipc_perm *bpp) { bpp->key = lpp->key; @@ -131,7 +143,7 @@ linux_to_bsd_ipc_perm(struct l_ipc_perm } static void -bsd_to_linux_ipc_perm(struct ipc_perm *bpp, struct l_ipc_perm *lpp) +bsd_to_linux_ipc_perm(struct ipc_perm *bpp, struct l_ipc64_perm *lpp) { lpp->key = bpp->key; @@ -185,29 +197,27 @@ struct l_shmid_ds { }; static void -linux_to_bsd_semid_ds(struct l_semid_ds *lsp, struct semid_ds *bsp) +linux_to_bsd_semid_ds(struct l_semid64_ds *lsp, struct semid_ds *bsp) { linux_to_bsd_ipc_perm(&lsp->sem_perm, &bsp->sem_perm); bsp->sem_otime = lsp->sem_otime; bsp->sem_ctime = lsp->sem_ctime; bsp->sem_nsems = lsp->sem_nsems; - bsp->sem_base = PTRIN(lsp->sem_base); } static void -bsd_to_linux_semid_ds(struct semid_ds *bsp, struct l_semid_ds *lsp) +bsd_to_linux_semid_ds(struct semid_ds *bsp, struct l_semid64_ds *lsp) { bsd_to_linux_ipc_perm(&bsp->sem_perm, &lsp->sem_perm); lsp->sem_otime = bsp->sem_otime; lsp->sem_ctime = bsp->sem_ctime; lsp->sem_nsems = bsp->sem_nsems; - lsp->sem_base = PTROUT(bsp->sem_base); } static void -linux_to_bsd_shmid_ds(struct l_shmid_ds *lsp, struct shmid_ds *bsp) +linux_to_bsd_shmid_ds(struct l_shmid64_ds *lsp, struct shmid_ds *bsp) { linux_to_bsd_ipc_perm(&lsp->shm_perm, &bsp->shm_perm); @@ -221,28 +231,21 @@ linux_to_bsd_shmid_ds(struct l_shmid_ds } static void -bsd_to_linux_shmid_ds(struct shmid_ds *bsp, struct l_shmid_ds *lsp) +bsd_to_linux_shmid_ds(struct shmid_ds *bsp, struct l_shmid64_ds *lsp) { bsd_to_linux_ipc_perm(&bsp->shm_perm, &lsp->shm_perm); - if (bsp->shm_segsz > INT_MAX) - lsp->shm_segsz = INT_MAX; - else - lsp->shm_segsz = bsp->shm_segsz; + lsp->shm_segsz = bsp->shm_segsz; lsp->shm_lpid = bsp->shm_lpid; lsp->shm_cpid = bsp->shm_cpid; - if (bsp->shm_nattch > SHRT_MAX) - lsp->shm_nattch = SHRT_MAX; - else - lsp->shm_nattch = bsp->shm_nattch; + lsp->shm_nattch = bsp->shm_nattch; lsp->shm_atime = bsp->shm_atime; lsp->shm_dtime = bsp->shm_dtime; lsp->shm_ctime = bsp->shm_ctime; - lsp->private3 = 0; } static void -linux_to_bsd_msqid_ds(struct l_msqid_ds *lsp, struct msqid_ds *bsp) +linux_to_bsd_msqid_ds(struct l_msqid64_ds *lsp, struct msqid_ds *bsp) { linux_to_bsd_ipc_perm(&lsp->msg_perm, &bsp->msg_perm); @@ -257,7 +260,7 @@ linux_to_bsd_msqid_ds(struct l_msqid_ds } static void -bsd_to_linux_msqid_ds(struct msqid_ds *bsp, struct l_msqid_ds *lsp) +bsd_to_linux_msqid_ds(struct msqid_ds *bsp, struct l_msqid64_ds *lsp) { bsd_to_linux_ipc_perm(&bsp->msg_perm, &lsp->msg_perm); @@ -271,11 +274,10 @@ bsd_to_linux_msqid_ds(struct msqid_ds *b lsp->msg_ctime = bsp->msg_ctime; } -static void -linux_ipc_perm_to_ipc64_perm(struct l_ipc_perm *in, struct l_ipc64_perm *out) +static int +linux_ipc64_perm_to_ipc_perm(struct l_ipc64_perm *in, struct l_ipc_perm *out) { - /* XXX: do we really need to do something here? */ out->key = in->key; out->uid = in->uid; out->gid = in->gid; @@ -283,186 +285,222 @@ linux_ipc_perm_to_ipc64_perm(struct l_ip out->cgid = in->cgid; out->mode = in->mode; out->seq = in->seq; + + /* Linux does not check overflow */ + if (out->uid != in->uid || out->gid != in->gid || + out->cuid != in->cuid || out->cgid != in->cgid || + out->mode != in->mode) + return (EOVERFLOW); + else + return (0); } static int -linux_msqid_pullup(l_int ver, struct l_msqid_ds *linux_msqid, caddr_t uaddr) +linux_msqid_pullup(l_int ver, struct l_msqid64_ds *linux_msqid64, caddr_t uaddr) { - struct l_msqid64_ds linux_msqid64; + struct l_msqid_ds linux_msqid; int error; - if (ver == LINUX_IPC_64) { - error = copyin(uaddr, &linux_msqid64, sizeof(linux_msqid64)); + if (ver == LINUX_IPC_64 || SV_CURPROC_FLAG(SV_LP64)) + return (copyin(uaddr, linux_msqid64, sizeof(*linux_msqid64))); + else { + error = copyin(uaddr, &linux_msqid, sizeof(linux_msqid)); if (error != 0) return (error); - bzero(linux_msqid, sizeof(*linux_msqid)); - - linux_msqid->msg_perm.uid = linux_msqid64.msg_perm.uid; - linux_msqid->msg_perm.gid = linux_msqid64.msg_perm.gid; - linux_msqid->msg_perm.mode = linux_msqid64.msg_perm.mode; + bzero(linux_msqid64, sizeof(*linux_msqid64)); - if (linux_msqid64.msg_qbytes > USHRT_MAX) - linux_msqid->msg_lqbytes = linux_msqid64.msg_qbytes; + linux_msqid64->msg_perm.uid = linux_msqid.msg_perm.uid; + linux_msqid64->msg_perm.gid = linux_msqid.msg_perm.gid; + linux_msqid64->msg_perm.mode = linux_msqid.msg_perm.mode; + if (linux_msqid.msg_qbytes == 0) + linux_msqid64->msg_qbytes = linux_msqid.msg_lqbytes; else - linux_msqid->msg_qbytes = linux_msqid64.msg_qbytes; - } else - error = copyin(uaddr, linux_msqid, sizeof(*linux_msqid)); - - return (error); + linux_msqid64->msg_qbytes = linux_msqid.msg_qbytes; + return (0); + } } static int -linux_msqid_pushdown(l_int ver, struct l_msqid_ds *linux_msqid, caddr_t uaddr) +linux_msqid_pushdown(l_int ver, struct l_msqid64_ds *linux_msqid64, caddr_t uaddr) { - struct l_msqid64_ds linux_msqid64; + struct l_msqid_ds linux_msqid; + int error; - if (ver == LINUX_IPC_64) { - bzero(&linux_msqid64, sizeof(linux_msqid64)); + if (ver == LINUX_IPC_64 || SV_CURPROC_FLAG(SV_LP64)) + return (copyout(linux_msqid64, uaddr, sizeof(*linux_msqid64))); + else { + bzero(&linux_msqid, sizeof(linux_msqid)); - linux_ipc_perm_to_ipc64_perm(&linux_msqid->msg_perm, - &linux_msqid64.msg_perm); + error = linux_ipc64_perm_to_ipc_perm(&linux_msqid64->msg_perm, + &linux_msqid.msg_perm); + if (error != 0) + return (error); - linux_msqid64.msg_stime = linux_msqid->msg_stime; - linux_msqid64.msg_rtime = linux_msqid->msg_rtime; - linux_msqid64.msg_ctime = linux_msqid->msg_ctime; + linux_msqid.msg_stime = linux_msqid64->msg_stime; + linux_msqid.msg_rtime = linux_msqid64->msg_rtime; + linux_msqid.msg_ctime = linux_msqid64->msg_ctime; - if (linux_msqid->msg_cbytes == 0) - linux_msqid64.msg_cbytes = linux_msqid->msg_lcbytes; + if (linux_msqid64->msg_cbytes > USHRT_MAX) + linux_msqid.msg_cbytes = USHRT_MAX; else - linux_msqid64.msg_cbytes = linux_msqid->msg_cbytes; - - linux_msqid64.msg_qnum = linux_msqid->msg_qnum; - - if (linux_msqid->msg_qbytes == 0) - linux_msqid64.msg_qbytes = linux_msqid->msg_lqbytes; + linux_msqid.msg_cbytes = linux_msqid64->msg_cbytes; + linux_msqid.msg_lcbytes = linux_msqid64->msg_cbytes; + if (linux_msqid64->msg_qnum > USHRT_MAX) + linux_msqid.msg_qnum = linux_msqid64->msg_qnum; else - linux_msqid64.msg_qbytes = linux_msqid->msg_qbytes; - - linux_msqid64.msg_lspid = linux_msqid->msg_lspid; - linux_msqid64.msg_lrpid = linux_msqid->msg_lrpid; + linux_msqid.msg_qnum = linux_msqid64->msg_qnum; + if (linux_msqid64->msg_qbytes > USHRT_MAX) + linux_msqid.msg_qbytes = linux_msqid64->msg_qbytes; + else + linux_msqid.msg_qbytes = linux_msqid64->msg_qbytes; + linux_msqid.msg_lqbytes = linux_msqid64->msg_qbytes; + linux_msqid.msg_lspid = linux_msqid64->msg_lspid; + linux_msqid.msg_lrpid = linux_msqid64->msg_lrpid; + + /* Linux does not check overflow */ + if (linux_msqid.msg_stime != linux_msqid64->msg_stime || + linux_msqid.msg_rtime != linux_msqid64->msg_rtime || + linux_msqid.msg_ctime != linux_msqid64->msg_ctime) + return (EOVERFLOW); - return (copyout(&linux_msqid64, uaddr, sizeof(linux_msqid64))); - } else - return (copyout(linux_msqid, uaddr, sizeof(*linux_msqid))); + return (copyout(&linux_msqid, uaddr, sizeof(linux_msqid))); + } } static int -linux_semid_pullup(l_int ver, struct l_semid_ds *linux_semid, caddr_t uaddr) +linux_semid_pullup(l_int ver, struct l_semid64_ds *linux_semid64, caddr_t uaddr) { - struct l_semid64_ds linux_semid64; + struct l_semid_ds linux_semid; int error; - if (ver == LINUX_IPC_64) { - error = copyin(uaddr, &linux_semid64, sizeof(linux_semid64)); + if (ver == LINUX_IPC_64 || SV_CURPROC_FLAG(SV_LP64)) + return (copyin(uaddr, linux_semid64, sizeof(*linux_semid64))); + else { + error = copyin(uaddr, &linux_semid, sizeof(linux_semid)); if (error != 0) return (error); - bzero(linux_semid, sizeof(*linux_semid)); - - linux_semid->sem_perm.uid = linux_semid64.sem_perm.uid; - linux_semid->sem_perm.gid = linux_semid64.sem_perm.gid; - linux_semid->sem_perm.mode = linux_semid64.sem_perm.mode; - } else - error = copyin(uaddr, linux_semid, sizeof(*linux_semid)); + bzero(linux_semid64, sizeof(*linux_semid64)); - return (error); + linux_semid64->sem_perm.uid = linux_semid.sem_perm.uid; + linux_semid64->sem_perm.gid = linux_semid.sem_perm.gid; + linux_semid64->sem_perm.mode = linux_semid.sem_perm.mode; + return (0); + } } static int -linux_semid_pushdown(l_int ver, struct l_semid_ds *linux_semid, caddr_t uaddr) +linux_semid_pushdown(l_int ver, struct l_semid64_ds *linux_semid64, caddr_t uaddr) { - struct l_semid64_ds linux_semid64; + struct l_semid_ds linux_semid; + int error; + + if (ver == LINUX_IPC_64 || SV_CURPROC_FLAG(SV_LP64)) + return (copyout(linux_semid64, uaddr, sizeof(*linux_semid64))); + else { + bzero(&linux_semid, sizeof(linux_semid)); + + error = linux_ipc64_perm_to_ipc_perm(&linux_semid64->sem_perm, + &linux_semid.sem_perm); + if (error != 0) + return (error); - if (ver == LINUX_IPC_64) { - bzero(&linux_semid64, sizeof(linux_semid64)); + linux_semid.sem_otime = linux_semid64->sem_otime; + linux_semid.sem_ctime = linux_semid64->sem_ctime; + linux_semid.sem_nsems = linux_semid64->sem_nsems; - linux_ipc_perm_to_ipc64_perm(&linux_semid->sem_perm, - &linux_semid64.sem_perm); + /* Linux does not check overflow */ + if (linux_semid.sem_otime != linux_semid64->sem_otime || + linux_semid.sem_ctime != linux_semid64->sem_ctime || + linux_semid.sem_nsems != linux_semid64->sem_nsems) + return (EOVERFLOW); - linux_semid64.sem_otime = linux_semid->sem_otime; - linux_semid64.sem_ctime = linux_semid->sem_ctime; - linux_semid64.sem_nsems = linux_semid->sem_nsems; - - return (copyout(&linux_semid64, uaddr, sizeof(linux_semid64))); - } else - return (copyout(linux_semid, uaddr, sizeof(*linux_semid))); + return (copyout(&linux_semid, uaddr, sizeof(linux_semid))); + } } static int -linux_shmid_pullup(l_int ver, struct l_shmid_ds *linux_shmid, caddr_t uaddr) +linux_shmid_pullup(l_int ver, struct l_shmid64_ds *linux_shmid64, caddr_t uaddr) { - struct l_shmid64_ds linux_shmid64; + struct l_shmid_ds linux_shmid; int error; - if (ver == LINUX_IPC_64) { - error = copyin(uaddr, &linux_shmid64, sizeof(linux_shmid64)); + if (ver == LINUX_IPC_64 || SV_CURPROC_FLAG(SV_LP64)) + return (copyin(uaddr, linux_shmid64, sizeof(*linux_shmid64))); + else { + error = copyin(uaddr, &linux_shmid, sizeof(linux_shmid)); if (error != 0) return (error); - bzero(linux_shmid, sizeof(*linux_shmid)); + bzero(linux_shmid64, sizeof(*linux_shmid64)); - linux_shmid->shm_perm.uid = linux_shmid64.shm_perm.uid; - linux_shmid->shm_perm.gid = linux_shmid64.shm_perm.gid; - linux_shmid->shm_perm.mode = linux_shmid64.shm_perm.mode; - } else - error = copyin(uaddr, linux_shmid, sizeof(*linux_shmid)); - - return (error); + linux_shmid64->shm_perm.uid = linux_shmid.shm_perm.uid; + linux_shmid64->shm_perm.gid = linux_shmid.shm_perm.gid; + linux_shmid64->shm_perm.mode = linux_shmid.shm_perm.mode; + return (0); + } } static int -linux_shmid_pushdown(l_int ver, struct l_shmid_ds *linux_shmid, caddr_t uaddr) +linux_shmid_pushdown(l_int ver, struct l_shmid64_ds *linux_shmid64, caddr_t uaddr) { - struct l_shmid64_ds linux_shmid64; + struct l_shmid_ds linux_shmid; + int error; - /* - * XXX: This is backwards and loses information in shm_nattch - * and shm_segsz. We should probably either expose the BSD - * shmid structure directly and convert it to either the - * non-64 or 64 variant directly or the code should always - * convert to the 64 variant and then truncate values into the - * non-64 variant if needed since the 64 variant has more - * precision. - */ - if (ver == LINUX_IPC_64) { - bzero(&linux_shmid64, sizeof(linux_shmid64)); + if (ver == LINUX_IPC_64 || SV_CURPROC_FLAG(SV_LP64)) + return (copyout(linux_shmid64, uaddr, sizeof(*linux_shmid64))); + else { + bzero(&linux_shmid, sizeof(linux_shmid)); + + error = linux_ipc64_perm_to_ipc_perm(&linux_shmid64->shm_perm, + &linux_shmid.shm_perm); + if (error != 0) + return (error); - linux_ipc_perm_to_ipc64_perm(&linux_shmid->shm_perm, - &linux_shmid64.shm_perm); + linux_shmid.shm_segsz = linux_shmid64->shm_segsz; + linux_shmid.shm_atime = linux_shmid64->shm_atime; + linux_shmid.shm_dtime = linux_shmid64->shm_dtime; + linux_shmid.shm_ctime = linux_shmid64->shm_ctime; + linux_shmid.shm_cpid = linux_shmid64->shm_cpid; + linux_shmid.shm_lpid = linux_shmid64->shm_lpid; + linux_shmid.shm_nattch = linux_shmid64->shm_nattch; + + /* Linux does not check overflow */ + if (linux_shmid.shm_segsz != linux_shmid64->shm_segsz || + linux_shmid.shm_atime != linux_shmid64->shm_atime || + linux_shmid.shm_dtime != linux_shmid64->shm_dtime || + linux_shmid.shm_ctime != linux_shmid64->shm_ctime || + linux_shmid.shm_cpid != linux_shmid64->shm_cpid || + linux_shmid.shm_lpid != linux_shmid64->shm_lpid || + linux_shmid.shm_nattch != linux_shmid64->shm_nattch) + return (EOVERFLOW); - linux_shmid64.shm_segsz = linux_shmid->shm_segsz; - linux_shmid64.shm_atime = linux_shmid->shm_atime; - linux_shmid64.shm_dtime = linux_shmid->shm_dtime; - linux_shmid64.shm_ctime = linux_shmid->shm_ctime; - linux_shmid64.shm_cpid = linux_shmid->shm_cpid; - linux_shmid64.shm_lpid = linux_shmid->shm_lpid; - linux_shmid64.shm_nattch = linux_shmid->shm_nattch; - - return (copyout(&linux_shmid64, uaddr, sizeof(linux_shmid64))); - } else - return (copyout(linux_shmid, uaddr, sizeof(*linux_shmid))); + return (copyout(&linux_shmid, uaddr, sizeof(linux_shmid))); + } } static int -linux_shminfo_pushdown(l_int ver, struct l_shminfo *linux_shminfo, +linux_shminfo_pushdown(l_int ver, struct l_shminfo64 *linux_shminfo64, caddr_t uaddr) { - struct l_shminfo64 linux_shminfo64; + struct l_shminfo linux_shminfo; - if (ver == LINUX_IPC_64) { - bzero(&linux_shminfo64, sizeof(linux_shminfo64)); + if (ver == LINUX_IPC_64 || SV_CURPROC_FLAG(SV_LP64)) + return (copyout(linux_shminfo64, uaddr, + sizeof(*linux_shminfo64))); + else { + bzero(&linux_shminfo, sizeof(linux_shminfo)); + + linux_shminfo.shmmax = linux_shminfo64->shmmax; + linux_shminfo.shmmin = linux_shminfo64->shmmin; + linux_shminfo.shmmni = linux_shminfo64->shmmni; + linux_shminfo.shmseg = linux_shminfo64->shmseg; + linux_shminfo.shmall = linux_shminfo64->shmall; - linux_shminfo64.shmmax = linux_shminfo->shmmax; - linux_shminfo64.shmmin = linux_shminfo->shmmin; - linux_shminfo64.shmmni = linux_shminfo->shmmni; - linux_shminfo64.shmseg = linux_shminfo->shmseg; - linux_shminfo64.shmall = linux_shminfo->shmall; - - return (copyout(&linux_shminfo64, uaddr, - sizeof(linux_shminfo64))); - } else - return (copyout(linux_shminfo, uaddr, sizeof(*linux_shminfo))); + return (copyout(&linux_shminfo, uaddr, + sizeof(linux_shminfo))); + } } int @@ -500,7 +538,7 @@ linux_semget(struct thread *td, struct l int linux_semctl(struct thread *td, struct linux_semctl_args *args) { - struct l_semid_ds linux_semid; + struct l_semid64_ds linux_semid64; struct l_seminfo linux_seminfo; struct semid_ds semid; union semun semun; @@ -530,29 +568,35 @@ linux_semctl(struct thread *td, struct l case LINUX_IPC_SET: cmd = IPC_SET; error = linux_semid_pullup(args->cmd & LINUX_IPC_64, - &linux_semid, PTRIN(args->arg.buf)); + &linux_semid64, PTRIN(args->arg.buf)); if (error != 0) return (error); - linux_to_bsd_semid_ds(&linux_semid, &semid); + linux_to_bsd_semid_ds(&linux_semid64, &semid); semun.buf = &semid; return (kern_semctl(td, args->semid, args->semnum, cmd, &semun, td->td_retval)); case LINUX_IPC_STAT: + cmd = IPC_STAT; + semun.buf = &semid; + error = kern_semctl(td, args->semid, args->semnum, cmd, &semun, + &rval); + if (error != 0) + return (error); + bsd_to_linux_semid_ds(&semid, &linux_semid64); + return (linux_semid_pushdown(args->cmd & LINUX_IPC_64, + &linux_semid64, PTRIN(args->arg.buf))); case LINUX_SEM_STAT: - if ((args->cmd & ~LINUX_IPC_64) == LINUX_IPC_STAT) - cmd = IPC_STAT; - else - cmd = SEM_STAT; + cmd = SEM_STAT; semun.buf = &semid; error = kern_semctl(td, args->semid, args->semnum, cmd, &semun, &rval); if (error != 0) return (error); - bsd_to_linux_semid_ds(&semid, &linux_semid); + bsd_to_linux_semid_ds(&semid, &linux_semid64); error = linux_semid_pushdown(args->cmd & LINUX_IPC_64, - &linux_semid, PTRIN(args->arg.buf)); + &linux_semid64, PTRIN(args->arg.buf)); if (error == 0) - td->td_retval[0] = (cmd == SEM_STAT) ? rval : 0; + td->td_retval[0] = rval; return (error); case LINUX_IPC_INFO: case LINUX_SEM_INFO: @@ -575,15 +619,18 @@ linux_semctl(struct thread *td, struct l PTRIN(args->arg.buf), sizeof(linux_seminfo)); if (error != 0) return (error); + /* + * TODO: Linux return the last assigned id, not the semmni. + */ td->td_retval[0] = seminfo.semmni; - return (0); /* No need for __semctl call */ + return (0); case LINUX_GETALL: cmd = GETALL; - semun.val = args->arg.val; + semun.array = PTRIN(args->arg.array); break; case LINUX_SETALL: cmd = SETALL; - semun.val = args->arg.val; + semun.array = PTRIN(args->arg.array); break; default: linux_msg(td, "ipc type %d is not implemented", @@ -649,7 +696,7 @@ int linux_msgctl(struct thread *td, struct linux_msgctl_args *args) { int error, bsd_cmd; - struct l_msqid_ds linux_msqid; + struct l_msqid64_ds linux_msqid64; struct msqid_ds bsd_msqid; bsd_cmd = args->cmd & ~LINUX_IPC_64; @@ -689,10 +736,10 @@ linux_msgctl(struct thread *td, struct l case LINUX_IPC_SET: error = linux_msqid_pullup(args->cmd & LINUX_IPC_64, - &linux_msqid, PTRIN(args->buf)); + &linux_msqid64, PTRIN(args->buf)); if (error != 0) return (error); - linux_to_bsd_msqid_ds(&linux_msqid, &bsd_msqid); + linux_to_bsd_msqid_ds(&linux_msqid64, &bsd_msqid); break; case LINUX_IPC_RMID: @@ -705,14 +752,17 @@ linux_msgctl(struct thread *td, struct l } error = kern_msgctl(td, args->msqid, bsd_cmd, &bsd_msqid); - if (error != 0) + if (error != 0) { + if (bsd_cmd == LINUX_IPC_RMID && error == EACCES) + return (EPERM); if (bsd_cmd != LINUX_IPC_RMID || error != EINVAL) return (error); + } if (bsd_cmd == LINUX_IPC_STAT) { - bsd_to_linux_msqid_ds(&bsd_msqid, &linux_msqid); + bsd_to_linux_msqid_ds(&bsd_msqid, &linux_msqid64); return (linux_msqid_pushdown(args->cmd & LINUX_IPC_64, - &linux_msqid, PTRIN(args->buf))); + &linux_msqid64, PTRIN(args->buf))); } return (0); @@ -774,8 +824,8 @@ linux_shmget(struct thread *td, struct l int linux_shmctl(struct thread *td, struct linux_shmctl_args *args) { - struct l_shmid_ds linux_shmid; - struct l_shminfo linux_shminfo; + struct l_shmid64_ds linux_shmid64; + struct l_shminfo64 linux_shminfo64; struct l_shm_info linux_shm_info; struct shmid_ds bsd_shmid; int error; @@ -791,10 +841,10 @@ linux_shmctl(struct thread *td, struct l if (error != 0) return (error); - bsd_to_linux_shminfo(&bsd_shminfo, &linux_shminfo); + bsd_to_linux_shminfo(&bsd_shminfo, &linux_shminfo64); return (linux_shminfo_pushdown(args->cmd & LINUX_IPC_64, - &linux_shminfo, PTRIN(args->buf))); + &linux_shminfo64, PTRIN(args->buf))); } case LINUX_SHM_INFO: { @@ -819,10 +869,10 @@ linux_shmctl(struct thread *td, struct l if (error != 0) return (error); - bsd_to_linux_shmid_ds(&bsd_shmid, &linux_shmid); + bsd_to_linux_shmid_ds(&bsd_shmid, &linux_shmid64); return (linux_shmid_pushdown(args->cmd & LINUX_IPC_64, - &linux_shmid, PTRIN(args->buf))); + &linux_shmid64, PTRIN(args->buf))); case LINUX_SHM_STAT: /* Perform shmctl wanting removed segments lookup */ @@ -831,18 +881,18 @@ linux_shmctl(struct thread *td, struct l if (error != 0) return (error); - bsd_to_linux_shmid_ds(&bsd_shmid, &linux_shmid); + bsd_to_linux_shmid_ds(&bsd_shmid, &linux_shmid64); return (linux_shmid_pushdown(args->cmd & LINUX_IPC_64, - &linux_shmid, PTRIN(args->buf))); + &linux_shmid64, PTRIN(args->buf))); case LINUX_IPC_SET: error = linux_shmid_pullup(args->cmd & LINUX_IPC_64, - &linux_shmid, PTRIN(args->buf)); + &linux_shmid64, PTRIN(args->buf)); if (error != 0) return (error); - linux_to_bsd_shmid_ds(&linux_shmid, &bsd_shmid); + linux_to_bsd_shmid_ds(&linux_shmid64, &bsd_shmid); /* Perform shmctl wanting removed segments lookup */ return (kern_shmctl(td, args->shmid, IPC_SET, @@ -855,10 +905,10 @@ linux_shmctl(struct thread *td, struct l buf = NULL; else { error = linux_shmid_pullup(args->cmd & LINUX_IPC_64, - &linux_shmid, PTRIN(args->buf)); + &linux_shmid64, PTRIN(args->buf)); if (error != 0) return (error); - linux_to_bsd_shmid_ds(&linux_shmid, &bsd_shmid); + linux_to_bsd_shmid_ds(&linux_shmid64, &bsd_shmid); buf = (void *)&bsd_shmid; } return (kern_shmctl(td, args->shmid, IPC_RMID, buf, NULL)); Copied and modified: head/sys/compat/linux/linux_ipc64.h (from r314865, head/sys/i386/linux/linux_ipc64.h) ============================================================================== --- head/sys/i386/linux/linux_ipc64.h Tue Mar 7 16:09:37 2017 (r314865, copy source) +++ head/sys/compat/linux/linux_ipc64.h Tue Mar 7 17:07:16 2017 (r314866) @@ -6,7 +6,7 @@ * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer + * notice, this list of conditions and the following disclaimer * in this position and unchanged. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the @@ -28,19 +28,19 @@ * $FreeBSD$ */ -#ifndef _I386_LINUX_LINUX_IPC64_H_ -#define _I386_LINUX_LINUX_IPC64_H_ +#ifndef _LINUX_IPC64_H_ +#define _LINUX_IPC64_H_ /* - * The ipc64_perm structure for i386 architecture. + * The generic ipc64_perm structure. * Note extra padding because this structure is passed back and forth * between kernel and user space. * * Pad space is left for: - * - 32-bit mode_t and seq + * - 32-bit mode_t on architectures that only had 16 bit + * - 32-bit seq * - 2 miscellaneous 32-bit values */ - struct l_ipc64_perm { l_key_t key; @@ -49,7 +49,8 @@ struct l_ipc64_perm l_uid_t cuid; l_gid_t cgid; l_mode_t mode; - l_ushort __pad1; + /* pad if mode_t is ushort: */ + unsigned char __pad1[sizeof(l_int) - sizeof(l_mode_t)]; l_ushort seq; l_ushort __pad2; l_ulong __unused1; @@ -57,7 +58,7 @@ struct l_ipc64_perm }; /* - * The msqid64_ds structure for i386 architecture. + * The generic msqid64_ds structure fro x86 architecture. * Note extra padding because this structure is passed back and forth * between kernel and user space. * @@ -69,11 +70,17 @@ struct l_ipc64_perm struct l_msqid64_ds { struct l_ipc64_perm msg_perm; l_time_t msg_stime; /* last msgsnd time */ +#if !defined(__LP64__) || defined(COMPAT_LINUX32) l_ulong __unused1; +#endif l_time_t msg_rtime; /* last msgrcv time */ +#if !defined(__LP64__) || defined(COMPAT_LINUX32) l_ulong __unused2; +#endif l_time_t msg_ctime; /* last change time */ +#if !defined(__LP64__) || defined(COMPAT_LINUX32) l_ulong __unused3; +#endif l_ulong msg_cbytes; /* current number of bytes on queue */ l_ulong msg_qnum; /* number of messages in queue */ l_ulong msg_qbytes; /* max number of bytes on queue */ @@ -84,7 +91,7 @@ struct l_msqid64_ds { }; /* - * The semid64_ds structure for i386 architecture. + * The generic semid64_ds structure for x86 architecture. * Note extra padding because this structure is passed back and forth * between kernel and user space. * @@ -105,7 +112,7 @@ struct l_semid64_ds { }; /* - * The shmid64_ds structure for i386 architecture. + * The generic shmid64_ds structure for x86 architecture. * Note extra padding because this structure is passed back and forth * between kernel and user space. * @@ -118,11 +125,17 @@ struct l_shmid64_ds { struct l_ipc64_perm shm_perm; /* operation perms */ l_size_t shm_segsz; /* size of segment (bytes) */ l_time_t shm_atime; /* last attach time */ +#if !defined(__LP64__) || defined(COMPAT_LINUX32) l_ulong __unused1; +#endif l_time_t shm_dtime; /* last detach time */ +#if !defined(__LP64__) || defined(COMPAT_LINUX32) l_ulong __unused2; +#endif l_time_t shm_ctime; /* last change time */ +#if !defined(__LP64__) || defined(COMPAT_LINUX32) l_ulong __unused3; +#endif l_pid_t shm_cpid; /* pid of creator */ l_pid_t shm_lpid; /* pid of last operator */ l_ulong shm_nattch; /* no. of current attaches */ @@ -131,15 +144,15 @@ struct l_shmid64_ds { }; struct l_shminfo64 { - l_ulong shmmax; - l_ulong shmmin; - l_ulong shmmni; - l_ulong shmseg; - l_ulong shmall; + l_ulong shmmax; + l_ulong shmmin; + l_ulong shmmni; + l_ulong shmseg; + l_ulong shmall; l_ulong __unused1; - l_ulong __unused2; - l_ulong __unused3; - l_ulong __unused4; + l_ulong __unused2; + l_ulong __unused3; + l_ulong __unused4; }; -#endif /* !_I386_LINUX_LINUX_IPC64_H_ */ +#endif /* !LINUX_IPC64_H_ */ Modified: head/sys/i386/linux/linux.h ============================================================================== --- head/sys/i386/linux/linux.h Tue Mar 7 16:09:37 2017 (r314865) +++ head/sys/i386/linux/linux.h Tue Mar 7 17:07:16 2017 (r314866) @@ -453,16 +453,6 @@ union l_semun { void *__pad; }; -struct l_ipc_perm { - l_key_t key; - l_uid16_t uid; - l_gid16_t gid; - l_uid16_t cuid; - l_gid16_t cgid; - l_ushort mode; - l_ushort seq; -}; - /* * Socket defines */ From owner-svn-src-all@freebsd.org Tue Mar 7 17:09:14 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 06D9BD02FE3; Tue, 7 Mar 2017 17:09:14 +0000 (UTC) (envelope-from dchagin@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id CA7E31362; Tue, 7 Mar 2017 17:09:13 +0000 (UTC) (envelope-from dchagin@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27H9CuH058352; Tue, 7 Mar 2017 17:09:12 GMT (envelope-from dchagin@FreeBSD.org) Received: (from dchagin@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27H9Cng058351; Tue, 7 Mar 2017 17:09:12 GMT (envelope-from dchagin@FreeBSD.org) Message-Id: <201703071709.v27H9Cng058351@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dchagin set sender to dchagin@FreeBSD.org using -f From: Dmitry Chagin Date: Tue, 7 Mar 2017 17:09:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314867 - head/sys/compat/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 17:09:14 -0000 Author: dchagin Date: Tue Mar 7 17:09:12 2017 New Revision: 314867 URL: https://svnweb.freebsd.org/changeset/base/314867 Log: Linux kernel does not export to the user space ipc_perm.mode values other than S_IRWXUGO (0777). MFC after: 1 month Modified: head/sys/compat/linux/linux_ipc.c Modified: head/sys/compat/linux/linux_ipc.c ============================================================================== --- head/sys/compat/linux/linux_ipc.c Tue Mar 7 17:07:16 2017 (r314866) +++ head/sys/compat/linux/linux_ipc.c Tue Mar 7 17:09:12 2017 (r314867) @@ -38,6 +38,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include "opt_compat.h" @@ -151,7 +152,7 @@ bsd_to_linux_ipc_perm(struct ipc_perm *b lpp->gid = bpp->gid; lpp->cuid = bpp->cuid; lpp->cgid = bpp->cgid; - lpp->mode = bpp->mode; + lpp->mode = bpp->mode & (S_IRWXU|S_IRWXG|S_IRWXO); lpp->seq = bpp->seq; } From owner-svn-src-all@freebsd.org Tue Mar 7 17:12:23 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id C5612D011E2; Tue, 7 Mar 2017 17:12:23 +0000 (UTC) (envelope-from dchagin@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 94FDB17ED; Tue, 7 Mar 2017 17:12:23 +0000 (UTC) (envelope-from dchagin@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27HCMHe062342; Tue, 7 Mar 2017 17:12:22 GMT (envelope-from dchagin@FreeBSD.org) Received: (from dchagin@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27HCM3q062341; Tue, 7 Mar 2017 17:12:22 GMT (envelope-from dchagin@FreeBSD.org) Message-Id: <201703071712.v27HCM3q062341@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dchagin set sender to dchagin@FreeBSD.org using -f From: Dmitry Chagin Date: Tue, 7 Mar 2017 17:12:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314868 - head/sys/compat/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 17:12:23 -0000 Author: dchagin Date: Tue Mar 7 17:12:22 2017 New Revision: 314868 URL: https://svnweb.freebsd.org/changeset/base/314868 Log: Linux semop system call return EINVAL in case when the invalid nsops or semid values specified. MFC after: 1 month Modified: head/sys/compat/linux/linux_ipc.c Modified: head/sys/compat/linux/linux_ipc.c ============================================================================== --- head/sys/compat/linux/linux_ipc.c Tue Mar 7 17:09:12 2017 (r314867) +++ head/sys/compat/linux/linux_ipc.c Tue Mar 7 17:12:22 2017 (r314868) @@ -513,6 +513,8 @@ linux_semop(struct thread *td, struct li int nsops; } */ bsd_args; + if (args->nsops < 1 || args->semid < 0) + return (EINVAL); bsd_args.semid = args->semid; bsd_args.sops = PTRIN(args->tsops); bsd_args.nsops = args->nsops; From owner-svn-src-all@freebsd.org Tue Mar 7 17:24:40 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5C825D01631; Tue, 7 Mar 2017 17:24:40 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: from mail-wr0-f172.google.com (mail-wr0-f172.google.com [209.85.128.172]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E78141FB1; Tue, 7 Mar 2017 17:24:39 +0000 (UTC) (envelope-from cse.cem@gmail.com) Received: by mail-wr0-f172.google.com with SMTP id g10so6345358wrg.2; Tue, 07 Mar 2017 09:24:39 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:reply-to:in-reply-to:references :from:date:message-id:subject:to:cc; bh=z9HOtJFXM/zv8oaYUUzshmeQFq0DQM/143nE4DZR8ko=; b=GafSDW+m1tulydVV4Pm0tFi1NNnGPRatzoHY325SZ9j3lWIEJGs8G3N6y7ZVrIKqbI 7QIorSzOTX+lwbGWMC3vaKEQb6Pe18LslVg1F7KL43yplnPKEV8KfK0pudiz4dgZm6NI MTJ6z3pCbfLX0CWTn/LFiX5NKzc0K7HeGZVzLWw9PjfTCtScgPstSir620ptdqnYAg1f /J7DXyONkXj2TTLb1Y5JC/mkV+TpdnvjaSdCsqkbaJldtOdl1O+d/bTAXEgghUTNR4Q/ IMpCJoaTImXPiL/dwNey2Pgebpw4QhPqaEPkRvobf4SxpqYYppnZ51Y7/VJttwy8/icS vWGQ== X-Gm-Message-State: AMke39lu+JPYqKiFjREG0HINQTN1Y0Ks4tLci3qfA378NHDiWPEQw1pipwGm+ZOaHY/jDg== X-Received: by 10.223.136.33 with SMTP id d30mr1247157wrd.117.1488905997557; Tue, 07 Mar 2017 08:59:57 -0800 (PST) Received: from mail-wm0-f42.google.com (mail-wm0-f42.google.com. [74.125.82.42]) by smtp.gmail.com with ESMTPSA id e16sm715892wra.36.2017.03.07.08.59.57 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 07 Mar 2017 08:59:57 -0800 (PST) Received: by mail-wm0-f42.google.com with SMTP id v186so94935816wmd.0; Tue, 07 Mar 2017 08:59:57 -0800 (PST) X-Received: by 10.28.111.136 with SMTP id c8mr1751047wmi.128.1488905996993; Tue, 07 Mar 2017 08:59:56 -0800 (PST) MIME-Version: 1.0 Reply-To: cem@freebsd.org Received: by 10.80.169.4 with HTTP; Tue, 7 Mar 2017 08:59:56 -0800 (PST) In-Reply-To: References: <201703070020.v270K2vA039655@repo.freebsd.org> From: Conrad Meyer Date: Tue, 7 Mar 2017 08:59:56 -0800 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: svn commit: r314813 - head/sys/kern To: Hiren Panchasara Cc: src-committers , svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset=UTF-8 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 17:24:40 -0000 Sorry, I had not seen r314838 yet. Please disregard. Thanks, Conrad On Tue, Mar 7, 2017 at 8:58 AM, Conrad Meyer wrote: > Hi Hiren, > > On Mon, Mar 6, 2017 at 4:20 PM, Hiren Panchasara wrote: >> Author: hiren >> Date: Tue Mar 7 00:20:01 2017 >> New Revision: 314813 >> URL: https://svnweb.freebsd.org/changeset/base/314813 >> >> ... >> @@ -1043,6 +1043,11 @@ sbcut_internal(struct sockbuf *sb, int l >> { >> struct mbuf *m, *next, *mfree; >> >> + KASSERT(len > 0, ("%s: len is %d but it is supposed to be +ve", >> + __func__, len)); > > Can you change the spelling from +ve to positive? I guess that might > mean wrapping the line, but I find the full word much more clear. > (Also, I guess the assert is >= 0 now? So that should read > "non-negative" rather than "positive." :-) ) > > >> + KASSERT(len <= sb->sb_ccc, ("%s: len: %d is > ccc: %u", >> + __func__, len, sb->sb_ccc)); >> + >> next = (m = sb->sb_mb) ? m->m_nextpkt : 0; >> mfree = NULL; > > Best, > Conrad From owner-svn-src-all@freebsd.org Tue Mar 7 17:38:53 2017 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 56D13D01AE7; Tue, 7 Mar 2017 17:38:53 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 2ECFB173A; Tue, 7 Mar 2017 17:38:53 +0000 (UTC) (envelope-from ngie@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id v27HcqSD070555; Tue, 7 Mar 2017 17:38:52 GMT (envelope-from ngie@FreeBSD.org) Received: (from ngie@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id v27Hcq3Y070554; Tue, 7 Mar 2017 17:38:52 GMT (envelope-from ngie@FreeBSD.org) Message-Id: <201703071738.v27Hcq3Y070554@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ngie set sender to ngie@FreeBSD.org using -f From: Ngie Cooper Date: Tue, 7 Mar 2017 17:38:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r314869 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Mar 2017 17:38:53 -0000 Author: ngie Date: Tue Mar 7 17:38:52 2017 New Revision: 314869 URL: https://svnweb.freebsd.org/changeset/base/314869 Log: Alphabetically sort variables The only content change is minor rewording around CLEANDIRS/CLEANFILES to accomodate sorting order. MFC after: 1 week Sponsored by: Dell EMC Isilon Modified: head/share/mk/bsd.README Modified: head/share/mk/bsd.README ============================================================================== --- head/share/mk/bsd.README Tue Mar 7 17:12:22 2017 (r314868) +++ head/share/mk/bsd.README Tue Mar 7 17:38:52 2017 (r314869) @@ -180,19 +180,19 @@ It has three targets: It sets/uses the following variables: +MAN The manual pages to be installed (use a .1 - .9 suffix). + MANDIR Base path for manual installation. MANGRP Manual group. -MANOWN Manual owner. - MANMODE Manual mode. +MANOWN Manual owner. + MANSUBDIR Subdirectory under the manual page section, i.e. "/vax" or "/tahoe" for machine specific manual pages. -MAN The manual pages to be installed (use a .1 - .9 suffix). - MLINKS List of manual page links (using a .1 - .9 suffix). The linked-to file must come first, the linked file second, and there may be multiple pairs. The files are hard-linked. @@ -211,18 +211,18 @@ It sets/uses the following variables: BINGRP Binary group. -BINOWN Binary owner. - BINMODE Binary mode. +BINOWN Binary owner. + MANDIR Base path for manual installation. MANGRP Manual group. -MANOWN Manual owner. - MANMODE Manual mode. +MANOWN Manual owner. + This file is generally useful when building your own Makefiles so that they use the same default owners etc. as the rest of the tree. @@ -257,23 +257,43 @@ It has seven targets: It sets/uses the following variables: -AFLAGS Flags to the assembler when assembling .s files. - ACFLAGS Flags to the compiler when preprocessing and assembling .S files. -BINGRP Binary group. +AFLAGS Flags to the assembler when assembling .s files. -BINOWN Binary owner. +BINGRP Binary group. BINMODE Binary mode. -CLEANFILES Additional files to remove and -CLEANDIRS additional directories to remove during clean and cleandir - targets. "rm -f" and "rm -rf" used respectively. +BINOWN Binary owner. CFLAGS Flags to the compiler when creating C objects. +CLEANDIRS Additional files (CLEANFILES) and directories (CLEANDIRS) to +CLEANFILES remove during clean and cleandir targets. "rm -rf" and + "rm -f" are used, respectively. + +DPADD Additional dependencies for the program. Usually used for + libraries. For example, to depend on the compatibility and + utility libraries use: + + DPADD=${LIBCOMPAT} ${LIBUTIL} + + There is a predefined identifier for each (non-profiled, + non-shared) library and object. Library file names are + transformed to identifiers by removing the extension and + converting to upper case. + + There are no special identifiers for profiled or shared + libraries or objects. The identifiers for the standard + libraries are used in DPADD. This works correctly iff all + the libraries are built at the same time. Unfortunately, + it causes unnecessary relinks to shared libraries when + only the static libraries have changed. Dependencies on + shared libraries should be only on the library version + numbers. + FILES A list of non-executable files. The installation is controlled by the FILESNAME, FILESOWN, FILESGRP, FILESMODE, FILESDIR variables that can be @@ -285,14 +305,14 @@ LDADD Additional loader objects. Usual LDADD=-lutil -lcompat -LIBADD Additional libraries. This is for base system libraries - and is only valid inside of the /usr/src tree. - Rather than use LDADD=-lname use LIBADD=name. - LDFLAGS Additional loader flags. Passed to the loader via CC, since that's used to link programs as well, so loader specific flags need to be prefixed with -Wl, to work. +LIBADD Additional libraries. This is for base system libraries + and is only valid inside of the /usr/src tree. + Rather than use LDADD=-lname use LIBADD=name. + LINKS The list of binary links; should be full pathnames, the linked-to file coming first, followed by the linked file. The files are hard-linked. For example, to link @@ -306,6 +326,9 @@ MAN Manual pages (should end in .1 - .9 PROG The name of the program to build. If not supplied, nothing is built. +PROGNAME The name that the above program will be installed as, if + different from ${PROG}. + PROG_CXX If defined, the name of the program to build. Also causes to link the program with the standard C++ library. PROG_CXX overrides the value @@ -344,33 +367,15 @@ PROGS_CXX PROG and PROGS_CXX in one Make - STRIP - WARNS -PROGNAME The name that the above program will be installed as, if - different from ${PROG}. +SCRIPTS A list of interpreter scripts [file.{sh,csh,pl,awk,...}]. + The installation is controlled by the SCRIPTSNAME, SCRIPTSOWN, + SCRIPTSGRP, SCRIPTSMODE, SCRIPTSDIR variables that can be + further specialized by SCRIPTS_