From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 03:06:05 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 97623A86 for ; Sun, 16 Jun 2013 03:06:05 +0000 (UTC) (envelope-from peter@wemm.org) Received: from mail-ve0-x234.google.com (mail-ve0-x234.google.com [IPv6:2607:f8b0:400c:c01::234]) by mx1.freebsd.org (Postfix) with ESMTP id 5692817DC for ; Sun, 16 Jun 2013 03:06:04 +0000 (UTC) Received: by mail-ve0-f180.google.com with SMTP id pa12so1343114veb.25 for ; Sat, 15 Jun 2013 20:06:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wemm.org; s=google; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=QS5qjM7o7ZJfDB4CEi3OXiHsD6HnQMdg6GRKPzOLw08=; b=NrTQHzHyUlNkbzZagNQAHieLSgDGYR4Q/etmWzUDSpbbqkqe0FRv5AbukN+0Nlyyjk WblOt1V4LOqKiH4dOz6N3zwI3L4bEsrkEMoo1niBwKgOH6m9kncAY/q3difqHOTPMFAv zdINAF2GV2pq3lMzKbucxOxtHHi6mskHVK60w= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:x-gm-message-state; bh=QS5qjM7o7ZJfDB4CEi3OXiHsD6HnQMdg6GRKPzOLw08=; b=HklwwK0wyANvkHqgpy2IDWKaIbP+mIfybx4RSVCBvHa7L/MnUb9y/EnsrNla9QLRPw bKscSnT9q3Fa80Kjgb2JWlfj/m/6csd9dI3KDFpD1bLLOqZsbzXjTcAW5r7XH40qNzpC WLMWoNTE3NqWrLUvpjcYkVoScRYLwWjFhv4AaorsMrEV7UREp5xCYgGCT9ZcLj6n6pHh nR7iTJWmv3zG4mjP4f05u8CgDmBeazGfVPIKoIofWB1hQgPNZTdXp6cYzVRbOPux8+xO VeDPrUu8x5I75+ySjfpRFNldkIltRMbcw3+LrdvogGNWDaLmsyTADtDdN71WMitWdzpc CtbQ== MIME-Version: 1.0 X-Received: by 10.52.66.171 with SMTP id g11mr798211vdt.132.1371351963871; Sat, 15 Jun 2013 20:06:03 -0700 (PDT) Received: by 10.220.20.133 with HTTP; Sat, 15 Jun 2013 20:06:03 -0700 (PDT) In-Reply-To: <51BCFA1C.4030100@FreeBSD.org> References: <201306152029.r5FKT8S3012945@svn.freebsd.org> <51BCEBED.9060101@FreeBSD.org> <51BCFA1C.4030100@FreeBSD.org> Date: Sat, 15 Jun 2013 20:06:03 -0700 Message-ID: Subject: Re: svn commit: r251794 - in head: . contrib/cvs etc etc/mtree gnu/usr.bin gnu/usr.bin/cvs share/doc/psd share/doc/psd/28.cvs share/mk tools/build/mk tools/build/options tools/tools/nanobsd/gateworks From: Peter Wemm To: Bryan Drewery Content-Type: text/plain; charset=ISO-8859-1 X-Gm-Message-State: ALoCoQk4aRLM7zsHeW0mw5+oxuCXA6H0fln5oovdm7btbSyY/c2tmCEIoQmJh1KDLGYQ6bOY1Tbb Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Eitan Adler X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 03:06:05 -0000 On Sat, Jun 15, 2013 at 4:34 PM, Bryan Drewery wrote: > There are build-time dependencies on cvs. This is just grepping my last > (partial) exp-run logs for '/usr/bin/n?cvs' Where was this righteous indignation when the perl 5.14.2 -> 5.14 directory rename abomination was unleashed? Why wasn't every perl port micro version bumped? If ever there was a festering pile of horse excrement, that was one. -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com; KI6FJV On IRC, talking about C++: I think that it is a good thing I will never meet Bjarne on a street cause really, I don't want to end up in prison or anything From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 03:14:48 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 90E1BC79; Sun, 16 Jun 2013 03:14:48 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from onyx.glenbarber.us (onyx.glenbarber.us [IPv6:2607:fc50:1000:c200::face]) by mx1.freebsd.org (Postfix) with ESMTP id 606E81839; Sun, 16 Jun 2013 03:14:48 +0000 (UTC) Received: from glenbarber.us (kaos.glenbarber.us [71.224.221.174]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: gjb) by onyx.glenbarber.us (Postfix) with ESMTPSA id 9B9AE23F841; Sat, 15 Jun 2013 23:14:46 -0400 (EDT) DKIM-Filter: OpenDKIM Filter v2.8.3 onyx.glenbarber.us 9B9AE23F841 Authentication-Results: onyx.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Sat, 15 Jun 2013 23:14:44 -0400 From: Glen Barber To: Peter Wemm Subject: Re: svn commit: r251794 - in head: . contrib/cvs etc etc/mtree gnu/usr.bin gnu/usr.bin/cvs share/doc/psd share/doc/psd/28.cvs share/mk tools/build/mk tools/build/options tools/tools/nanobsd/gateworks Message-ID: <20130616031444.GE1692@glenbarber.us> References: <201306152029.r5FKT8S3012945@svn.freebsd.org> <51BCEBED.9060101@FreeBSD.org> <51BCFA1C.4030100@FreeBSD.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="pY3vCvL1qV+PayAL" Content-Disposition: inline In-Reply-To: X-Operating-System: FreeBSD 10.0-CURRENT amd64 User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Eitan Adler , Bryan Drewery X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 03:14:48 -0000 --pY3vCvL1qV+PayAL Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Jun 15, 2013 at 08:06:03PM -0700, Peter Wemm wrote: > On Sat, Jun 15, 2013 at 4:34 PM, Bryan Drewery wro= te: >=20 > > There are build-time dependencies on cvs. This is just grepping my last > > (partial) exp-run logs for '/usr/bin/n?cvs' >=20 > Where was this righteous indignation when the perl 5.14.2 -> 5.14 > directory rename abomination was unleashed? Why wasn't every perl > port micro version bumped? If ever there was a festering pile of > horse excrement, that was one. >=20 Please see ports/sysutils/cfengine port for how we can start to avoid this insanity with such version bumps. All we need is a little bit of testing, and someone to pull the trigger. Bapt likes the idea. Let's get moving. Glen --pY3vCvL1qV+PayAL Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iQEcBAEBCAAGBQJRvS2kAAoJEFJPDDeguUajJwUH/j3LQ/8wpoKccOZhoeNMNK/A ex/zj/xiWf7KU4KG/GJPG0VUXK4kndYhty3Ujps02MKUnbaTZxp5Zqpe/uGpX0FH G5eRvp6UklR0knHwbQYOX79dRtLzLXoWJuf9mQ2Fk2a0+y27cdqBAiCFqMTpVIk3 HIlurPGUdMpWg02IlKSmMVf8N223ndy9nCtdywVSC5290V9NfT1zk5Cl+NBQ4RXf HIu4gD6lyz93yUl4PVjU+MvmDS+DTOK1sOzYqReg2rKsoimvYjFA8GpjmxYApDZI SA+6sG+sb7q4vdlZX+gBE0cBD7txpQC6lopXYZ7dRAKc5q7pdB+74A3zMlFyrHg= =ja4B -----END PGP SIGNATURE----- --pY3vCvL1qV+PayAL-- From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 03:20:59 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 13637E75 for ; Sun, 16 Jun 2013 03:20:59 +0000 (UTC) (envelope-from peter@wemm.org) Received: from mail-vb0-x231.google.com (mail-vb0-x231.google.com [IPv6:2607:f8b0:400c:c02::231]) by mx1.freebsd.org (Postfix) with ESMTP id C53C51867 for ; Sun, 16 Jun 2013 03:20:58 +0000 (UTC) Received: by mail-vb0-f49.google.com with SMTP id 12so1244100vbf.22 for ; Sat, 15 Jun 2013 20:20:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wemm.org; s=google; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=re8mehKTJz9RE7PP3ByW1r38lKGgqQ7c0Gtx35ZXgs8=; b=MU4it6v5ZQa4V5RveFoo8YVOKrpdrv2I3PgxRvDtCcd+PY8YgbgeMLmBzCsGCKosTd dhPZsJhjM7iUUbqImvAadtmyr6tdR1wb94xkkD97Sp/dJDW67OgCt/X+TfYp3W/9PLSc 5Tn9MEqP9Lyaov2fXx7M/9Ho1Z8pBFe+km4PY= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:x-gm-message-state; bh=re8mehKTJz9RE7PP3ByW1r38lKGgqQ7c0Gtx35ZXgs8=; b=oc+bBzW50Rip5avxlezKKaL06v0RhW65Ss9DDOyldTmhhSKA0ypiOjccW88DDvUw/j PzRUhQpw1QoESVmj6Cc3/l4PH8hbRq+x8UOKKG8Ux5rsGfr92n7iXuL0AZIXV9Y94Wxy jUu5Bk1M/e68jHCfykueZDY2yaxo4zcBJ/H18lPhuK8gOUlEfAtKJDAsvfWA2V74vB4d NwflDKjbWTMhwO4WkEs956AIfAx825vuyYnmyRXTxWbmFrA2fGSeff3fh+BUrVo9+Ra6 yyzKOhc5gFIkveFR5CqPBFDpTiwGR8eoHWZ5nxdiCgyMwSSpt07vtcNE3YR+XtEY/6uj cOZw== MIME-Version: 1.0 X-Received: by 10.59.9.69 with SMTP id dq5mr193510ved.87.1371352858341; Sat, 15 Jun 2013 20:20:58 -0700 (PDT) Received: by 10.220.20.133 with HTTP; Sat, 15 Jun 2013 20:20:58 -0700 (PDT) In-Reply-To: <20130616031444.GE1692@glenbarber.us> References: <201306152029.r5FKT8S3012945@svn.freebsd.org> <51BCEBED.9060101@FreeBSD.org> <51BCFA1C.4030100@FreeBSD.org> <20130616031444.GE1692@glenbarber.us> Date: Sat, 15 Jun 2013 20:20:58 -0700 Message-ID: Subject: Re: svn commit: r251794 - in head: . contrib/cvs etc etc/mtree gnu/usr.bin gnu/usr.bin/cvs share/doc/psd share/doc/psd/28.cvs share/mk tools/build/mk tools/build/options tools/tools/nanobsd/gateworks From: Peter Wemm To: Glen Barber Content-Type: text/plain; charset=ISO-8859-1 X-Gm-Message-State: ALoCoQlZNjyqVVJn6YwemW9E3ktwGiDIP7obhGqjRtIt0MXoM02T/oGR2Y4P82h2Ho4YLNyfw01D Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Eitan Adler , Bryan Drewery X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 03:20:59 -0000 On Sat, Jun 15, 2013 at 8:14 PM, Glen Barber wrote: > On Sat, Jun 15, 2013 at 08:06:03PM -0700, Peter Wemm wrote: >> On Sat, Jun 15, 2013 at 4:34 PM, Bryan Drewery wrote: >> >> > There are build-time dependencies on cvs. This is just grepping my last >> > (partial) exp-run logs for '/usr/bin/n?cvs' >> >> Where was this righteous indignation when the perl 5.14.2 -> 5.14 >> directory rename abomination was unleashed? Why wasn't every perl >> port micro version bumped? If ever there was a festering pile of >> horse excrement, that was one. >> > > Please see ports/sysutils/cfengine port for how we can start to avoid > this insanity with such version bumps. All we need is a little bit of > testing, and someone to pull the trigger. What does cfengine have to do with two ports with the same version but with different contents? -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com; KI6FJV On IRC, talking about C++: I think that it is a good thing I will never meet Bjarne on a street cause really, I don't want to end up in prison or anything From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 03:27:28 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id BA608FE9; Sun, 16 Jun 2013 03:27:28 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from onyx.glenbarber.us (onyx.glenbarber.us [199.48.134.227]) by mx1.freebsd.org (Postfix) with ESMTP id 94B771894; Sun, 16 Jun 2013 03:27:28 +0000 (UTC) Received: from glenbarber.us (kaos.glenbarber.us [71.224.221.174]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: gjb) by onyx.glenbarber.us (Postfix) with ESMTPSA id 20DC023F841; Sat, 15 Jun 2013 23:27:26 -0400 (EDT) DKIM-Filter: OpenDKIM Filter v2.8.3 onyx.glenbarber.us 20DC023F841 Authentication-Results: onyx.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Sat, 15 Jun 2013 23:27:25 -0400 From: Glen Barber To: Peter Wemm Subject: Re: svn commit: r251794 - in head: . contrib/cvs etc etc/mtree gnu/usr.bin gnu/usr.bin/cvs share/doc/psd share/doc/psd/28.cvs share/mk tools/build/mk tools/build/options tools/tools/nanobsd/gateworks Message-ID: <20130616032725.GF1692@glenbarber.us> References: <201306152029.r5FKT8S3012945@svn.freebsd.org> <51BCEBED.9060101@FreeBSD.org> <51BCFA1C.4030100@FreeBSD.org> <20130616031444.GE1692@glenbarber.us> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="NQTVMVnDVuULnIzU" Content-Disposition: inline In-Reply-To: X-Operating-System: FreeBSD 10.0-CURRENT amd64 User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Eitan Adler , Bryan Drewery X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 03:27:28 -0000 --NQTVMVnDVuULnIzU Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Jun 15, 2013 at 08:20:58PM -0700, Peter Wemm wrote: > On Sat, Jun 15, 2013 at 8:14 PM, Glen Barber wrote: > > On Sat, Jun 15, 2013 at 08:06:03PM -0700, Peter Wemm wrote: > >> On Sat, Jun 15, 2013 at 4:34 PM, Bryan Drewery = wrote: > >> > >> > There are build-time dependencies on cvs. This is just grepping my l= ast > >> > (partial) exp-run logs for '/usr/bin/n?cvs' > >> > >> Where was this righteous indignation when the perl 5.14.2 -> 5.14 > >> directory rename abomination was unleashed? Why wasn't every perl > >> port micro version bumped? If ever there was a festering pile of > >> horse excrement, that was one. > >> > > > > Please see ports/sysutils/cfengine port for how we can start to avoid > > this insanity with such version bumps. All we need is a little bit of > > testing, and someone to pull the trigger. >=20 > What does cfengine have to do with two ports with the same version but > with different contents? >=20 What two ports with the same version? lang/perl5.14.2 didn't exist. It was always lang/perl5.14. Glen --NQTVMVnDVuULnIzU Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iQEcBAEBCAAGBQJRvTCdAAoJEFJPDDeguUajr2oIAI8uEJd4VEsS9bjvT2pbsZt1 G9G1sNFXDGsJ57mSoaR9XwzuvN13XW9cLdonSKvyFrq6VWjjKsYZx4zoXRhJ3ADU y4dcuqW9TWyxGJB0eJzGV2e3xD1mj3S4NeclCQIRpa/nFSHi/Z71N9zRRrlyaxF1 KbGmacwwYFETcRkCBinEfZJk9dBFDJtxe/swtk+ood5nVxv1doQadFpxPzjKfR+G 1tjV7AbfpBttd1G+On55H7pqu73++dah9rcBpTwxUH5gujcfo+huqhOzgTxTHWzl m+Vc4KxfcH31rMDjKsgVCtgyudAq8OhQznrEsvc1f12VO2jnZbO5iRrp0VKzrow= =7khT -----END PGP SIGNATURE----- --NQTVMVnDVuULnIzU-- From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 04:02:57 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 5BD1F494 for ; Sun, 16 Jun 2013 04:02:57 +0000 (UTC) (envelope-from peter@wemm.org) Received: from mail-ve0-x232.google.com (mail-ve0-x232.google.com [IPv6:2607:f8b0:400c:c01::232]) by mx1.freebsd.org (Postfix) with ESMTP id 170E71983 for ; Sun, 16 Jun 2013 04:02:57 +0000 (UTC) Received: by mail-ve0-f178.google.com with SMTP id pb11so1367975veb.37 for ; Sat, 15 Jun 2013 21:02:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wemm.org; s=google; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=a1eufyb+jBxnP8yhu1TowptaxyKy/U367TaqgcCOI68=; b=JVUcMAif+IUKEl1L3kj9cqmATJ0fXIm2c1VdCoq8HYCoLNo63QHp8YnGNRV7zCfFmW L1PXdxTm3Wpd7BV6M0zvCeotvwU2i7Xq+E0uqdhIb+70F1b69GyAP7k7P6bhaN0XhKzj q3BuhUAiCDgqhay0UqgcOzk1VzMXDuV3VbYWc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:x-gm-message-state; bh=a1eufyb+jBxnP8yhu1TowptaxyKy/U367TaqgcCOI68=; b=YvNDhonGLMpXX1EOdLlc8L57VNWim7EB/OiW5qz0yy1k0CZkZ731idG19u5mIz1Je5 11XitUPJ+u+WyM25fYA17m+gKWYSJT/QMswZN8uPDU02bCIZtzGfUSjNJJs9+a4tdtSg ZhCXW+ok3ETlS/Tn8VRjDzdwAAL019igOzGrFw0/0mPj/hf69ep3kzx5deKS4KvkS2x3 IaA1jjiuF41Nmo35JR/RFj2V/XA89YwYAsIe4rE4H5+9AaJqZcgy5gH9nLRRq5RR0Ymt yYC7MBuhKI5AbsUFueHYiRWJlfWIcYqtANvbfmfit+KDIPR5sgtZkpppgJgX7lCkieFH 7tRg== MIME-Version: 1.0 X-Received: by 10.58.172.135 with SMTP id bc7mr1814335vec.67.1371355376566; Sat, 15 Jun 2013 21:02:56 -0700 (PDT) Received: by 10.220.20.133 with HTTP; Sat, 15 Jun 2013 21:02:56 -0700 (PDT) In-Reply-To: <20130616032725.GF1692@glenbarber.us> References: <201306152029.r5FKT8S3012945@svn.freebsd.org> <51BCEBED.9060101@FreeBSD.org> <51BCFA1C.4030100@FreeBSD.org> <20130616031444.GE1692@glenbarber.us> <20130616032725.GF1692@glenbarber.us> Date: Sat, 15 Jun 2013 21:02:56 -0700 Message-ID: Subject: Re: svn commit: r251794 - in head: . contrib/cvs etc etc/mtree gnu/usr.bin gnu/usr.bin/cvs share/doc/psd share/doc/psd/28.cvs share/mk tools/build/mk tools/build/options tools/tools/nanobsd/gateworks From: Peter Wemm To: Glen Barber Content-Type: text/plain; charset=ISO-8859-1 X-Gm-Message-State: ALoCoQn6plUQq/PyEvDbnPkbyDdpiAmlSTflEjMbTTmACaSc7z1nEnwpstIMWXgmDE1YDhnbYOXo Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Eitan Adler , Bryan Drewery X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 04:02:57 -0000 On Sat, Jun 15, 2013 at 8:27 PM, Glen Barber wrote: > On Sat, Jun 15, 2013 at 08:20:58PM -0700, Peter Wemm wrote: >> On Sat, Jun 15, 2013 at 8:14 PM, Glen Barber wrote: >> > On Sat, Jun 15, 2013 at 08:06:03PM -0700, Peter Wemm wrote: >> >> On Sat, Jun 15, 2013 at 4:34 PM, Bryan Drewery wrote: >> >> >> >> > There are build-time dependencies on cvs. This is just grepping my last >> >> > (partial) exp-run logs for '/usr/bin/n?cvs' >> >> >> >> Where was this righteous indignation when the perl 5.14.2 -> 5.14 >> >> directory rename abomination was unleashed? Why wasn't every perl >> >> port micro version bumped? If ever there was a festering pile of >> >> horse excrement, that was one. >> >> >> > >> > Please see ports/sysutils/cfengine port for how we can start to avoid >> > this insanity with such version bumps. All we need is a little bit of >> > testing, and someone to pull the trigger. >> >> What does cfengine have to do with two ports with the same version but >> with different contents? >> > > What two ports with the same version? lang/perl5.14.2 didn't exist. It > was always lang/perl5.14. No, the problem is things like: p5-Net-DNS-0.72 Perl5 interface to the DNS resolver, and dynamic updates p5-Net-DNS-SEC-0.16 DNSSEC extensions to Net::DNS The behind-the-scenes change caused "p5-Net-DNS-0.72" to have files in different locations depending on when it was built. Then the @INC paths don't match and stuff catches fire. peter@canning[9:00pm]~-103> pkg info -l p5-Net-DNS-0.72 ... /usr/local/lib/perl5/site_perl/5.14.2/mach/Net/DNS/ZoneFile.pm /usr/local/lib/perl5/site_perl/5.14.2/mach/auto/Net/DNS/.packlist /usr/local/lib/perl5/site_perl/5.14.2/mach/auto/Net/DNS/DNS.bs ... and if I force rebuild it now, it has different contents with the same version number. And it won't work unless you remember to do so. -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com; KI6FJV On IRC, talking about C++: I think that it is a good thing I will never meet Bjarne on a street cause really, I don't want to end up in prison or anything From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 04:26:10 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 758516D6; Sun, 16 Jun 2013 04:26:10 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from onyx.glenbarber.us (onyx.glenbarber.us [199.48.134.227]) by mx1.freebsd.org (Postfix) with ESMTP id 49B9819EB; Sun, 16 Jun 2013 04:26:10 +0000 (UTC) Received: from glenbarber.us (kaos.glenbarber.us [71.224.221.174]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: gjb) by onyx.glenbarber.us (Postfix) with ESMTPSA id 6B4E023F841; Sun, 16 Jun 2013 00:26:06 -0400 (EDT) DKIM-Filter: OpenDKIM Filter v2.8.3 onyx.glenbarber.us 6B4E023F841 Authentication-Results: onyx.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Sun, 16 Jun 2013 00:26:04 -0400 From: Glen Barber To: Peter Wemm Subject: Re: svn commit: r251794 - in head: . contrib/cvs etc etc/mtree gnu/usr.bin gnu/usr.bin/cvs share/doc/psd share/doc/psd/28.cvs share/mk tools/build/mk tools/build/options tools/tools/nanobsd/gateworks Message-ID: <20130616042604.GJ1692@glenbarber.us> References: <201306152029.r5FKT8S3012945@svn.freebsd.org> <51BCEBED.9060101@FreeBSD.org> <51BCFA1C.4030100@FreeBSD.org> <20130616031444.GE1692@glenbarber.us> <20130616032725.GF1692@glenbarber.us> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="j/HO4hzKTNbM1mOX" Content-Disposition: inline In-Reply-To: X-Operating-System: FreeBSD 10.0-CURRENT amd64 User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Eitan Adler , Bryan Drewery X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 04:26:10 -0000 --j/HO4hzKTNbM1mOX Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Jun 15, 2013 at 09:02:56PM -0700, Peter Wemm wrote: > On Sat, Jun 15, 2013 at 8:27 PM, Glen Barber wrote: > > On Sat, Jun 15, 2013 at 08:20:58PM -0700, Peter Wemm wrote: > >> On Sat, Jun 15, 2013 at 8:14 PM, Glen Barber wrote: > >> > On Sat, Jun 15, 2013 at 08:06:03PM -0700, Peter Wemm wrote: > >> >> On Sat, Jun 15, 2013 at 4:34 PM, Bryan Drewery wrote: > >> >> > >> >> > There are build-time dependencies on cvs. This is just grepping m= y last > >> >> > (partial) exp-run logs for '/usr/bin/n?cvs' > >> >> > >> >> Where was this righteous indignation when the perl 5.14.2 -> 5.14 > >> >> directory rename abomination was unleashed? Why wasn't every perl > >> >> port micro version bumped? If ever there was a festering pile of > >> >> horse excrement, that was one. > >> >> > >> > > >> > Please see ports/sysutils/cfengine port for how we can start to avoid > >> > this insanity with such version bumps. All we need is a little bit = of > >> > testing, and someone to pull the trigger. > >> > >> What does cfengine have to do with two ports with the same version but > >> with different contents? > >> > > > > What two ports with the same version? lang/perl5.14.2 didn't exist. It > > was always lang/perl5.14. >=20 > No, the problem is things like: > p5-Net-DNS-0.72 Perl5 interface to the DNS resolver, > and dynamic updates > p5-Net-DNS-SEC-0.16 DNSSEC extensions to Net::DNS >=20 > The behind-the-scenes change caused "p5-Net-DNS-0.72" to have files in > different locations depending on when it was built. Then the @INC > paths don't match and stuff catches fire. >=20 > peter@canning[9:00pm]~-103> pkg info -l p5-Net-DNS-0.72 > ... > /usr/local/lib/perl5/site_perl/5.14.2/mach/Net/DNS/ZoneFile.pm > /usr/local/lib/perl5/site_perl/5.14.2/mach/auto/Net/DNS/.packlist > /usr/local/lib/perl5/site_perl/5.14.2/mach/auto/Net/DNS/DNS.bs > ... > and if I force rebuild it now, it has different contents with the same > version number. And it won't work unless you remember to do so. >=20 Right. So, I solved this problem over a year ago. Basically, using perl as the example, you have the master port lang/perl5, containing something like this: VERSIONS=3D 5.12 5.14 PERL_DEFAULT?=3D 5.14 PERL_MINOR?=3D 2 Now instead of p5-BLAH requiring lang/perl5.14 explicitly, it requires lang/perl5. So when PERL_DEFAULT changes (as a ports-global version bump), the PERL_MINOR is bumped as well, so all dependent ports "see" the version change. Or, in this case, PERL_MINOR itself changes from '2' to '4'; now the "parent" port version has changed, so dependent ports "see" that change as well. This also solves the problem of users needing to do things like changing port origins for major version bumps within the tree. For what it is worth, I've done testing with this specific thing over a year ago, and had success with apache, perl, php, ruby, postfix, and a few others. Glen --j/HO4hzKTNbM1mOX Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iQEcBAEBCAAGBQJRvT5cAAoJEFJPDDeguUajZ9YH/303uE2qdQGFcfbHIxwqpW0w 3lCE5eBpTGilmd1o1VqtBBgLM4wuCBm/BB5dy8GtVQReExgwoj5hYU8xTpTwrtQm 08maK2SLXir7EsDBlJ7rQuxx/FZp5dssSyKanBB86kR/qvpex+L3CjDLOCOaqOLa Ut/YyNRblZAjRHFOQsCLLwGXFvIfW6L7vagSf0p3i7aWzRY7v1D3ddLsEZhiu9dp U8pO3Mu4/8ZjiSteFqc4bzNq8Fbdp/LQGlN6hBSgoRYcdir380FZVc9ETvDhwXP0 DlHIaV8/CaOK0+ZZoQKYwas6iDXgf0nfpM0wP/2dWqe0NTiF/RsXIbFsEqrDZyc= =pbzz -----END PGP SIGNATURE----- --j/HO4hzKTNbM1mOX-- From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 04:40:03 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 44A358AA; Sun, 16 Jun 2013 04:40:03 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 1CDFC1A24; Sun, 16 Jun 2013 04:40:03 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5G4e2fO066994; Sun, 16 Jun 2013 04:40:02 GMT (envelope-from hrs@svn.freebsd.org) Received: (from hrs@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5G4e2Gb066993; Sun, 16 Jun 2013 04:40:02 GMT (envelope-from hrs@svn.freebsd.org) Message-Id: <201306160440.r5G4e2Gb066993@svn.freebsd.org> From: Hiroki Sato Date: Sun, 16 Jun 2013 04:40:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251799 - head/sys/net X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 04:40:03 -0000 Author: hrs Date: Sun Jun 16 04:40:02 2013 New Revision: 251799 URL: http://svnweb.freebsd.org/changeset/base/251799 Log: Return ENETDOWN when the parent interface is down. MFC after: 1 week Modified: head/sys/net/if_vlan.c Modified: head/sys/net/if_vlan.c ============================================================================== --- head/sys/net/if_vlan.c Sun Jun 16 00:59:24 2013 (r251798) +++ head/sys/net/if_vlan.c Sun Jun 16 04:40:02 2013 (r251799) @@ -1042,7 +1042,7 @@ vlan_transmit(struct ifnet *ifp, struct if (!UP_AND_RUNNING(p)) { m_freem(m); ifp->if_oerrors++; - return (0); + return (ENETDOWN); } /* From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 07:16:45 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 6774A7A4; Sun, 16 Jun 2013 07:16:45 +0000 (UTC) (envelope-from joel@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 59A721D1F; Sun, 16 Jun 2013 07:16:45 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5G7GjLG016463; Sun, 16 Jun 2013 07:16:45 GMT (envelope-from joel@svn.freebsd.org) Received: (from joel@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5G7Gjpt016462; Sun, 16 Jun 2013 07:16:45 GMT (envelope-from joel@svn.freebsd.org) Message-Id: <201306160716.r5G7Gjpt016462@svn.freebsd.org> From: Joel Dahl Date: Sun, 16 Jun 2013 07:16:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251801 - 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-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 07:16:45 -0000 Author: joel (doc committer) Date: Sun Jun 16 07:16:44 2013 New Revision: 251801 URL: http://svnweb.freebsd.org/changeset/base/251801 Log: cvsweb -> svnweb Modified: head/share/misc/bsd-family-tree Modified: head/share/misc/bsd-family-tree ============================================================================== --- head/share/misc/bsd-family-tree Sun Jun 16 06:56:17 2013 (r251800) +++ head/share/misc/bsd-family-tree Sun Jun 16 07:16:44 2013 (r251801) @@ -638,6 +638,6 @@ Steven M. Schultz for providing 2.8BSD, -- Copyright (c) 1997-2012 Wolfram Schneider -URL: http://cvsweb.freebsd.org/src/share/misc/bsd-family-tree +URL: http://svnweb.freebsd.org/base/head/share/misc/bsd-family-tree $FreeBSD$ From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 07:52:49 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 2CE7BEFC; Sun, 16 Jun 2013 07:52:49 +0000 (UTC) (envelope-from jlh@FreeBSD.org) Received: from caravan.chchile.org (caravan.chchile.org [178.32.125.136]) by mx1.freebsd.org (Postfix) with ESMTP id C8A651E04; Sun, 16 Jun 2013 07:52:48 +0000 (UTC) Received: by caravan.chchile.org (Postfix, from userid 1000) id 2278FBE963; Sun, 16 Jun 2013 07:46:59 +0000 (UTC) Date: Sun, 16 Jun 2013 09:46:59 +0200 From: Jeremie Le Hen To: Ed Maste Subject: Re: svn commit: r251512 - in head: . etc etc/mtree gnu/usr.bin/gdb gnu/usr.bin/gdb/arch/amd64 gnu/usr.bin/gdb/arch/arm gnu/usr.bin/gdb/arch/i386 gnu/usr.bin/gdb/arch/ia64 gnu/usr.bin/gdb/arch/mips gnu/... Message-ID: <20130616074659.GI70224@caravan.chchile.org> Mail-Followup-To: Ed Maste , Don Lewis , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201306072140.r57Le2Ct069230@svn.freebsd.org> <201306072335.r57NZN9H087680@gw.catspoiler.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, Don Lewis , src-committers@freebsd.org, svn-src-all@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 07:52:49 -0000 On Fri, Jun 07, 2013 at 07:53:04PM -0400, Ed Maste wrote: > On 7 June 2013 19:35, Don Lewis wrote: > > Can the debug files be compressed so they don't take up as much room? It > > looks like gdb supports compressed symbol files. The same would be nice > > for /boot/kernel/*.symbols, btw ... > > Unfortunately our binutils is too old, so we're out of luck in the > short term. This is most likely a project to undertake once we've > migrated from binutils. Do you know if it has been undertaken? -- Jeremie Le Hen Scientists say the world is made up of Protons, Neutrons and Electrons. They forgot to mention Morons. From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 09:30:36 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 376CC1D7; Sun, 16 Jun 2013 09:30:36 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 104E8112C; Sun, 16 Jun 2013 09:30:36 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5G9UZep059295; Sun, 16 Jun 2013 09:30:35 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5G9UZfE059294; Sun, 16 Jun 2013 09:30:35 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201306160930.r5G9UZfE059294@svn.freebsd.org> From: Ed Schouten Date: Sun, 16 Jun 2013 09:30:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251803 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 09:30:36 -0000 Author: ed Date: Sun Jun 16 09:30:35 2013 New Revision: 251803 URL: http://svnweb.freebsd.org/changeset/base/251803 Log: Change callout use counter to use C11 atomics. In order to get some coverage of C11 atomics in kernelspace, switch at least one piece of code in kernelspace to use C11 atomics instead of . While there, slightly improve the code by adding an assertion to prevent the use count from going negative. Modified: head/sys/kern/kern_event.c Modified: head/sys/kern/kern_event.c ============================================================================== --- head/sys/kern/kern_event.c Sun Jun 16 07:18:07 2013 (r251802) +++ head/sys/kern/kern_event.c Sun Jun 16 09:30:35 2013 (r251803) @@ -47,6 +47,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -182,9 +183,9 @@ static struct filterops user_filtops = { }; static uma_zone_t knote_zone; -static int kq_ncallouts = 0; -static int kq_calloutmax = (4 * 1024); -SYSCTL_INT(_kern, OID_AUTO, kq_calloutmax, CTLFLAG_RW, +static atomic_uint kq_ncallouts = ATOMIC_VAR_INIT(0); +static unsigned int kq_calloutmax = 4 * 1024; +SYSCTL_UINT(_kern, OID_AUTO, kq_calloutmax, CTLFLAG_RW, &kq_calloutmax, 0, "Maximum number of callouts allocated for kqueue"); /* XXX - ensure not KN_INFLUX?? */ @@ -549,13 +550,15 @@ static int filt_timerattach(struct knote *kn) { struct callout *calloutp; + unsigned int ncallouts; - atomic_add_int(&kq_ncallouts, 1); - - if (kq_ncallouts >= kq_calloutmax) { - atomic_add_int(&kq_ncallouts, -1); - return (ENOMEM); - } + ncallouts = atomic_load_explicit(&kq_ncallouts, memory_order_relaxed); + do { + if (ncallouts >= kq_calloutmax) + return (ENOMEM); + } while (!atomic_compare_exchange_weak_explicit(&kq_ncallouts, + &ncallouts, ncallouts + 1, memory_order_relaxed, + memory_order_relaxed)); kn->kn_flags |= EV_CLEAR; /* automatically set */ kn->kn_status &= ~KN_DETACHED; /* knlist_add usually sets it */ @@ -573,11 +576,13 @@ static void filt_timerdetach(struct knote *kn) { struct callout *calloutp; + unsigned int old; calloutp = (struct callout *)kn->kn_hook; callout_drain(calloutp); free(calloutp, M_KQUEUE); - atomic_add_int(&kq_ncallouts, -1); + old = atomic_fetch_sub_explicit(&kq_ncallouts, 1, memory_order_relaxed); + KASSERT(old > 0, ("Number of callouts cannot become negative")); kn->kn_status |= KN_DETACHED; /* knlist_remove usually clears it */ } From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 09:42:22 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 81D6C416; Sun, 16 Jun 2013 09:42:22 +0000 (UTC) (envelope-from edschouten@gmail.com) Received: from mail-ve0-x229.google.com (mail-ve0-x229.google.com [IPv6:2607:f8b0:400c:c01::229]) by mx1.freebsd.org (Postfix) with ESMTP id 0FB611175; Sun, 16 Jun 2013 09:42:21 +0000 (UTC) Received: by mail-ve0-f169.google.com with SMTP id m1so1454524ves.28 for ; Sun, 16 Jun 2013 02:42:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=OFoR0RFHuKdbG4UVUXOLaoiYzB/i/eduKD5LOx5CUUU=; b=PD2gVaMOhqsQJW0kADYKTQVOSsOB8yQGeSrDPCkccBUw+kQLAL+12oRowIWxCwLxx8 85zIHfTB4RX0SNocGqVKPCRLWJ74iSTz4ZkK6cjY32Ue3YmlY8lgwr3SND/7Fb8XBods E/5avjRqr7z49k2UJdI23Z6x19tzHPwM8kohs2mrHaHB5ovOE8MPNq6VztzQlQQZjqEY tYQRxYI2NOUrrFaKxzaw1TNtPMdU3fT7zfyNo8pA1yy98APnTmR8+/F8MimTshHegTSz Ze+0t3JBWsb+DLJ3t30wYEK9K9jwFzjefZQQHw4H4wh/EBilyPOshDBJ4AB+8qFgdFzg MbPg== MIME-Version: 1.0 X-Received: by 10.59.0.2 with SMTP id au2mr2101165ved.83.1371375741581; Sun, 16 Jun 2013 02:42:21 -0700 (PDT) Sender: edschouten@gmail.com Received: by 10.220.107.139 with HTTP; Sun, 16 Jun 2013 02:42:21 -0700 (PDT) In-Reply-To: <20130615232314.GB1403@garage.freebsd.pl> References: <201306152218.r5FMI0uT047135@svn.freebsd.org> <20130615232314.GB1403@garage.freebsd.pl> Date: Sun, 16 Jun 2013 11:42:21 +0200 X-Google-Sender-Auth: poax0zvSKecOZO7puWAGT169MrA Message-ID: Subject: Re: svn commit: r251796 - head/sbin/hastd From: Ed Schouten To: Pawel Jakub Dawidek Content-Type: text/plain; charset=UTF-8 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 09:42:22 -0000 Hello Pawel, 2013/6/16 Pawel Jakub Dawidek : > Hmm, I don't like HAST to be a victim of bad LLVM import. This is not > the kind of software you run on HEAD (so it might go unnoticed > initially) and this is the kind of software that when breaks can have > serious consequences. > > What kind of breaks are we talking about? That HAST will stop compiling > or HAST can start corrupting data? My intent is that we shouldn't see a whole lot of C11 atomics in FreeBSD appear before we have at least one stable branch that supports it properly (10.0). The problem with this approach is that I've noticed that if we import things into our base system that we hardly use, it will get almost no coverage. This causes all sorts of breakage that could have prevented easily. Good examples: http://svnweb.freebsd.org/base/head/sys/sys/stdatomic.h?r1=251347&r2=251566 http://svnweb.freebsd.org/base/head/sys/sys/stdatomic.h?r1=250883&r2=251192 http://svnweb.freebsd.org/base/head/sys/sys/stdatomic.h?r1=228862&r2=228880 By at least letting a couple of pieces of code use C11, this is less likely to regress again. The examples that I gave of course refer to breakage of , not regressions in LLVM itself. I merely named regressions in LLVM as a worst-case example. My assumption would be that any breakage in LLVM related to C11 atomics is as likely as any other kind of regression. If you want, I can revert this change. Still, I would actually prefer it if we not only let HAST use C11 atomics, but also a small number of other pieces of code. That way any kind of breakage would become pretty visible. Thoughts? -- Ed Schouten From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 10:02:35 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7C0BE8F4 for ; Sun, 16 Jun 2013 10:02:35 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 468F011FD for ; Sun, 16 Jun 2013 10:02:35 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id r5GA2Yap083223 for ; Sun, 16 Jun 2013 10:02:34 GMT (envelope-from bdrewery@freefall.freebsd.org) Received: (from bdrewery@localhost) by freefall.freebsd.org (8.14.7/8.14.7/Submit) id r5GA2YIj083220 for svn-src-head@freebsd.org; Sun, 16 Jun 2013 10:02:34 GMT (envelope-from bdrewery) Received: (qmail 19326 invoked from network); 16 Jun 2013 05:02:32 -0500 Received: from unknown (HELO ?10.10.1.133?) (freebsd@shatow.net@10.10.1.133) by sweb.xzibition.com with ESMTPA; 16 Jun 2013 05:02:32 -0500 Message-ID: <51BD8D37.1050206@FreeBSD.org> Date: Sun, 16 Jun 2013 05:02:31 -0500 From: Bryan Drewery Organization: FreeBSD User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130509 Thunderbird/17.0.6 MIME-Version: 1.0 To: Peter Wemm Subject: Re: svn commit: r251794 - in head: . contrib/cvs etc etc/mtree gnu/usr.bin gnu/usr.bin/cvs share/doc/psd share/doc/psd/28.cvs share/mk tools/build/mk tools/build/options tools/tools/nanobsd/gateworks References: <201306152029.r5FKT8S3012945@svn.freebsd.org> <51BCEBED.9060101@FreeBSD.org> <51BCFA1C.4030100@FreeBSD.org> In-Reply-To: X-Enigmail-Version: 1.5.1 OpenPGP: id=3C9B0CF9; url=http://www.shatow.net/bryan/bryan.asc Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="----enig2CRVFGKRRWBPHLXTUVPRC" Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Eitan Adler X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 10:02:35 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) ------enig2CRVFGKRRWBPHLXTUVPRC Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On 6/15/2013 10:06 PM, Peter Wemm wrote: > On Sat, Jun 15, 2013 at 4:34 PM, Bryan Drewery w= rote: >=20 >> There are build-time dependencies on cvs. This is just grepping my las= t >> (partial) exp-run logs for '/usr/bin/n?cvs' >=20 > Where was this righteous indignation when the perl 5.14.2 -> 5.14 > directory rename abomination was unleashed? Why wasn't every perl > port micro version bumped? If ever there was a festering pile of > horse excrement, that was one. >=20 ports/178368 --=20 Regards, Bryan Drewery ------enig2CRVFGKRRWBPHLXTUVPRC Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (MingW32) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQIcBAEBAgAGBQJRvY03AAoJEG54KsA8mwz5DtcQALqOdxL8Zx9FM1kMDDTIVMm3 4Uxd1oPiq1AyuMUh9SDqlj++H2FmjJ3/ITwmmkna4Mz2hXQlyygb7+WXUMLcpT8s hxwutsLoeiijEu9KkywZLNnOtrYfcXaBHcCdAxxSbJfv4jU2SRDYxqL4pCXeCmAO gfxa+etm2/WllNCDr6SoN0gwh6FANqlDfKhwkLSYyCrwHvld4NXz2vRyq7EKfWN+ b6lR4lRQ4oku9L3UPmt5LyAFb7wtlyOifioRexk1+bXD15vAuZrmvNW5DSi7sn1a zSvTTm5JUrd1InMkXNd7ClbmJmxFqJRIewjoPLw3lPb5qrlT7ME/2wKNJDvWsTZu ghMNglZPeQbDK3Z9OtlLkwmKGviU+eDpHjqnPPtyQrrgr8cwfHSIP+FB4pzvf8az w8NId4ndQQK8DLHLPESNyJGqpouEdbYsG9nmb9xIHCuBQwhluRew+ZcbAtfcY2md hwvd2XGCBF0Ti3FQ63nIHjlrkBNkGNuvl96nV4+8pOJEiMbChbmFrFpdN1eRMbUT qsT3uZQufDlq13fCwRVsXe2oIpjoNeQhS1j65I1/tj7cb7EJKScIp1dNmdLOxWyX /WAjpRPVQ46H9VUuAb8UMMLAjzm659JkttR6EFj34fYxzd8UEIBN8BWa806eiTA1 jKHKVtHSiGJv1Nti2h+Y =RJu8 -----END PGP SIGNATURE----- ------enig2CRVFGKRRWBPHLXTUVPRC-- From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 10:48:48 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id AA1C458E; Sun, 16 Jun 2013 10:48:48 +0000 (UTC) (envelope-from ed@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 9D0E3137D; Sun, 16 Jun 2013 10:48:48 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5GAmmGj082612; Sun, 16 Jun 2013 10:48:48 GMT (envelope-from ed@svn.freebsd.org) Received: (from ed@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5GAmmkG082610; Sun, 16 Jun 2013 10:48:48 GMT (envelope-from ed@svn.freebsd.org) Message-Id: <201306161048.r5GAmmkG082610@svn.freebsd.org> From: Ed Schouten Date: Sun, 16 Jun 2013 10:48:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251804 - head/sys/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 10:48:48 -0000 Author: ed Date: Sun Jun 16 10:48:47 2013 New Revision: 251804 URL: http://svnweb.freebsd.org/changeset/base/251804 Log: Move _Atomic() into . That way _Atomic() is defined next to all the other C11 keywords for which we provide compatibility for pre-C11 compilers. While there, fix the definition to place "volatile" at the end. Otherwise pointer types will become "volatile T *" instead of "T * volatile". Modified: head/sys/sys/cdefs.h head/sys/sys/stdatomic.h Modified: head/sys/sys/cdefs.h ============================================================================== --- head/sys/sys/cdefs.h Sun Jun 16 09:30:35 2013 (r251803) +++ head/sys/sys/cdefs.h Sun Jun 16 10:48:47 2013 (r251804) @@ -268,6 +268,14 @@ #define _Alignof(x) __alignof(x) #endif +#if !__has_extension(c_atomic) && !__has_extension(cxx_atomic) +/* + * No native support for _Atomic(). Place object in structure to prevent + * most forms of direct non-atomic access. + */ +#define _Atomic(T) struct { T volatile __val; } +#endif + #if defined(__cplusplus) && __cplusplus >= 201103L #define _Noreturn [[noreturn]] #else Modified: head/sys/sys/stdatomic.h ============================================================================== --- head/sys/sys/stdatomic.h Sun Jun 16 09:30:35 2013 (r251803) +++ head/sys/sys/stdatomic.h Sun Jun 16 10:48:47 2013 (r251804) @@ -43,10 +43,6 @@ #error "stdatomic.h does not support your compiler" #endif -#if !defined(__CLANG_ATOMICS) -#define _Atomic(T) struct { volatile T __val; } -#endif - /* * 7.17.1 Atomic lock-free macros. */ From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 11:06:33 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 00A267A3; Sun, 16 Jun 2013 11:06:32 +0000 (UTC) (envelope-from baptiste.daroussin@gmail.com) Received: from mail-we0-x22d.google.com (mail-we0-x22d.google.com [IPv6:2a00:1450:400c:c03::22d]) by mx1.freebsd.org (Postfix) with ESMTP id E0D41144F; Sun, 16 Jun 2013 11:06:31 +0000 (UTC) Received: by mail-we0-f173.google.com with SMTP id x54so1583669wes.18 for ; Sun, 16 Jun 2013 04:06:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=ZRAlIe6sqloI4gTwL4vNPA+trpa9SqjiUEpsl/uOYF8=; b=BwrDndGZPKON36mzaHHGZnYdf2b0xwDjIl44aiPT6wvSv6bxirgaYovtD32JUf5Iwb 5u9CQeocw4CTJYwkamdzay4VFsM/ByObI1ujRjkdipqaSSzPaUqJNuTZcFAKo7Yl7nI2 hWC/pE2tICPnRpPvVxO/+/NFqX5nxLVjjQsos+65h+AaKn5s6f+G0uRX7cppkphm/EvM UZvQWqSeqxIYXQqzBQFuLOSfYe9ZoZSpqdtohSrnubYeuXLtK9+zByCH3auIJ23Andxn uFhhzoaRjrtND9espWbaa8VQweNapAf8mK7lPSC/WRDkGm3m9BO2+QXjZrn73dxl78Wa u5pg== X-Received: by 10.194.91.194 with SMTP id cg2mr5658056wjb.53.1371380791036; Sun, 16 Jun 2013 04:06:31 -0700 (PDT) Received: from ithaqua.etoilebsd.net (ithaqua.etoilebsd.net. [37.59.37.188]) by mx.google.com with ESMTPSA id fo10sm14724610wib.8.2013.06.16.04.06.29 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Sun, 16 Jun 2013 04:06:29 -0700 (PDT) Sender: Baptiste Daroussin Date: Sun, 16 Jun 2013 13:06:27 +0200 From: Baptiste Daroussin To: Peter Wemm Subject: Re: svn commit: r251794 - in head: . contrib/cvs etc etc/mtree gnu/usr.bin gnu/usr.bin/cvs share/doc/psd share/doc/psd/28.cvs share/mk tools/build/mk tools/build/options tools/tools/nanobsd/gateworks Message-ID: <20130616110627.GJ72830@ithaqua.etoilebsd.net> References: <201306152029.r5FKT8S3012945@svn.freebsd.org> <51BCEBED.9060101@FreeBSD.org> <51BCFA1C.4030100@FreeBSD.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="GlnCQLZWzqLRJED8" Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Eitan Adler , Bryan Drewery X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 11:06:33 -0000 --GlnCQLZWzqLRJED8 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Jun 15, 2013 at 08:06:03PM -0700, Peter Wemm wrote: > On Sat, Jun 15, 2013 at 4:34 PM, Bryan Drewery wro= te: >=20 > > There are build-time dependencies on cvs. This is just grepping my last > > (partial) exp-run logs for '/usr/bin/n?cvs' >=20 > Where was this righteous indignation when the perl 5.14.2 -> 5.14 > directory rename abomination was unleashed? Why wasn't every perl > port micro version bumped? If ever there was a festering pile of > horse excrement, that was one. >=20 Wow that is nice, and very respectful of others work, given that the perl c= ase has a reason to be (able to properly handle updates in binary only world) p= lus it was exp-run, and there is a load a explaindd way to upgrade: see UPDATIN= G, users were informed via mails, plus updating. On the other hand this commit we all want to see in, breaks a lots of ports= with no documented way to recover, no testing on side effects etc, That is the concern bryan is trying to explain, a simple exp-run would have cost 18h ho= urs and we would have been able to at least warn the users. We want working packagss on HEAD but we don't want the pay the price of it = aka, testing changes against ports before committing, with poudriere it is now v= ery even on self hardware to do such tests. Bapt --GlnCQLZWzqLRJED8 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iEYEARECAAYFAlG9nDMACgkQ8kTtMUmk6Ey37ACeIqcs0iRWG3bCL0r39WJL8X+H kF8AnA+MO+VdfBqpbL0pQHuvDG/T7ahu =WAl4 -----END PGP SIGNATURE----- --GlnCQLZWzqLRJED8-- From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 11:49:10 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id AAD163DB; Sun, 16 Jun 2013 11:49:10 +0000 (UTC) (envelope-from edschouten@gmail.com) Received: from mail-vb0-x22d.google.com (mail-vb0-x22d.google.com [IPv6:2607:f8b0:400c:c02::22d]) by mx1.freebsd.org (Postfix) with ESMTP id 4A4E416A8; Sun, 16 Jun 2013 11:49:10 +0000 (UTC) Received: by mail-vb0-f45.google.com with SMTP id p14so1360868vbm.18 for ; Sun, 16 Jun 2013 04:49:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=AnVwRZvhsnpvnrfU+2RdhOauqO51auMpyKgtsgKscVg=; b=02SXNfcwioTqSH0t++XO0o+PheW4F5pr64APvzDZYvMDzKZYL5YjYyT2KFVJ18ntRL XFdVmlYxQ++zX/pVpw69Q8DkBNlPQyLbU+VZUdGazWzV6ZTI24DayCwbucXO7wxpkeMx no28NDq4rCl4HBGpJ12b18vHK+3sC0+gH3EO/5cjnJMDvoDa84pkEYR/BCvFPM/RNyHc WbqsJBB2W5C1jAMe75Am6ynkDE/oSKsqUL0nVBTJWsilVylEwA+Q2uC8bKpn5GT99z3x w6huRfqxCVTCHd6TAZvEc5aAHEk3KDr1sPsMMun/1IKEPnb7CBubZKMe1Wy2YKVYqco3 /5WQ== MIME-Version: 1.0 X-Received: by 10.58.198.44 with SMTP id iz12mr2190223vec.85.1371383349669; Sun, 16 Jun 2013 04:49:09 -0700 (PDT) Sender: edschouten@gmail.com Received: by 10.220.107.139 with HTTP; Sun, 16 Jun 2013 04:49:09 -0700 (PDT) In-Reply-To: <20130615125651.GH91573@alchemy.franken.de> References: <201306150821.r5F8Lst5089231@svn.freebsd.org> <20130615125651.GH91573@alchemy.franken.de> Date: Sun, 16 Jun 2013 13:49:09 +0200 X-Google-Sender-Auth: dgkWoVUqsjIpEJbvSIQOJLRhRjs Message-ID: Subject: Re: svn commit: r251782 - head/sys/sparc64/sparc64 From: Ed Schouten To: Marius Strobl Content-Type: text/plain; charset=UTF-8 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 11:49:10 -0000 Hi Marius, 2013/6/15 Marius Strobl : > Semantically, this change is wrong; what we really need here is an > acquire variant. Using the release variant instead happens to also > work - albeit additionally wastes CPU cycles for the write memory > barrier - because in total store order, atomic operations implicitly > include the read memory barrier necessary for acquire semantics. In > other words, atomic(9) is in dare need of atomic_store_acq_(). I personally dislike the idea of extending the existing atomic(9) API. My long-term goal would be that we could just use C11 atomics instead of using our own home-grown API. If we can't express this using the atomic(9) API, I'd just like us to use instead. Reading up on the C11 standard (section 5.1.2.4), it seems that the abstract model of threads described does not allow stores to be a acquire operations. This does make sense, though. A load can of course not be a release operation. Because releases synchronize with acquires, a store being an acquire operation would have nothing to synchronize with. So I guess in this case we should solve it by using a relaxed store, followed by an acquire fence: http://80386.nl/pub/sparc64-atomic.txt Would that work for you? -- Ed Schouten From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 14:43:04 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 63AAC388; Sun, 16 Jun 2013 14:43:04 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from smtpauth3.wiscmail.wisc.edu (wmauth3.doit.wisc.edu [144.92.197.226]) by mx1.freebsd.org (Postfix) with ESMTP id 3D2891B12; Sun, 16 Jun 2013 14:43:03 +0000 (UTC) MIME-version: 1.0 Received: from avs-daemon.smtpauth3.wiscmail.wisc.edu by smtpauth3.wiscmail.wisc.edu (Oracle Communications Messaging Server 7u4-27.01(7.0.4.27.0) 64bit (built Aug 30 2012)) id <0MOH00E00P6EE900@smtpauth3.wiscmail.wisc.edu>; Sun, 16 Jun 2013 09:42:57 -0500 (CDT) X-Spam-PmxInfo: Server=avs-3, Version=6.0.2.2308539, Antispam-Engine: 2.7.2.2107409, Antispam-Data: 2013.6.16.143329, SenderIP=0.0.0.0 X-Spam-Report: AuthenticatedSender=yes, SenderIP=0.0.0.0 Received: from comporellon.tachypleus.net (adsl-76-208-69-84.dsl.mdsnwi.sbcglobal.net [76.208.69.84]) by smtpauth3.wiscmail.wisc.edu (Oracle Communications Messaging Server 7u4-27.01(7.0.4.27.0) 64bit (built Aug 30 2012)) with ESMTPSA id <0MOH00H40Q748000@smtpauth3.wiscmail.wisc.edu>; Sun, 16 Jun 2013 09:42:41 -0500 (CDT) Date: Sun, 16 Jun 2013 09:42:40 -0500 From: Nathan Whitehorn Subject: Re: svn commit: r251803 - head/sys/kern In-reply-to: <201306160930.r5G9UZfE059294@svn.freebsd.org> To: Ed Schouten Message-id: <51BDCEE0.8050000@freebsd.org> References: <201306160930.r5G9UZfE059294@svn.freebsd.org> User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130410 Thunderbird/17.0.5 Content-Type: text/plain; CHARSET=US-ASCII; format=flowed Content-Transfer-Encoding: 7BIT X-Content-Filtered-By: Mailman/MimeDel 2.1.14 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 14:43:04 -0000 On 06/16/13 04:30, Ed Schouten wrote: > Author: ed > Date: Sun Jun 16 09:30:35 2013 > New Revision: 251803 > URL: http://svnweb.freebsd.org/changeset/base/251803 > > Log: > Change callout use counter to use C11 atomics. > > In order to get some coverage of C11 atomics in kernelspace, switch at > least one piece of code in kernelspace to use C11 atomics instead of > . > > While there, slightly improve the code by adding an assertion to prevent > the use count from going negative. I'm a little worried about these kinds of changes from a performance standpoint when using GCC 4.2. In particular, from the GCC manual: "In most cases, these builtins are considered a full barrier." This is much more synchronization that many of the atomic ops in machine/atomic.h actually require. I'm worried this could lead to serious performance regressions on e.g. PowerPC. gcc mostly seems to do the right thing, but I'm not completely sure and it probably needs extensive testing. One way to accomplish that could be to implement atomic(9) in terms of stdatomic. If nothing breaks or becomes slow, then we will know we are in the clear permanently. -Nathan From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 15:06:28 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 35A406D1; Sun, 16 Jun 2013 15:06:28 +0000 (UTC) (envelope-from marius@alchemy.franken.de) Received: from alchemy.franken.de (alchemy.franken.de [194.94.249.214]) by mx1.freebsd.org (Postfix) with ESMTP id B79BF1BC7; Sun, 16 Jun 2013 15:06:27 +0000 (UTC) Received: from alchemy.franken.de (localhost [127.0.0.1]) by alchemy.franken.de (8.14.6/8.14.6/ALCHEMY.FRANKEN.DE) with ESMTP id r5GF6JXw034114; Sun, 16 Jun 2013 17:06:20 +0200 (CEST) (envelope-from marius@alchemy.franken.de) Received: (from marius@localhost) by alchemy.franken.de (8.14.6/8.14.6/Submit) id r5GF6JSo034113; Sun, 16 Jun 2013 17:06:19 +0200 (CEST) (envelope-from marius) Date: Sun, 16 Jun 2013 17:06:19 +0200 From: Marius Strobl To: Ed Schouten Subject: Re: svn commit: r251782 - head/sys/sparc64/sparc64 Message-ID: <20130616150619.GI91573@alchemy.franken.de> References: <201306150821.r5F8Lst5089231@svn.freebsd.org> <20130615125651.GH91573@alchemy.franken.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 15:06:28 -0000 On Sun, Jun 16, 2013 at 01:49:09PM +0200, Ed Schouten wrote: > Hi Marius, > > 2013/6/15 Marius Strobl : > > Semantically, this change is wrong; what we really need here is an > > acquire variant. Using the release variant instead happens to also > > work - albeit additionally wastes CPU cycles for the write memory > > barrier - because in total store order, atomic operations implicitly > > include the read memory barrier necessary for acquire semantics. In > > other words, atomic(9) is in dare need of atomic_store_acq_(). > > I personally dislike the idea of extending the existing atomic(9) API. > My long-term goal would be that we could just use C11 atomics instead > of using our own home-grown API. If we can't express this using the > atomic(9) API, I'd just like us to use instead. > > Reading up on the C11 standard (section 5.1.2.4), it seems that the > abstract model of threads described does not allow stores to be a > acquire operations. This does make sense, though. A load can of course > not be a release operation. Because releases synchronize with > acquires, a store being an acquire operation would have nothing to > synchronize with. > > So I guess in this case we should solve it by using a relaxed store, > followed by an acquire fence: > > http://80386.nl/pub/sparc64-atomic.txt > > Would that work for you? > Generally, I dislike the concept of passing control of how atomics are implemented over to the compiler, at least as far as the kernel is concerned and especially since the actual code generated for them depends on the flavour and version of the compiler used. It's also unclear to me how the C11 memory orders relate to SPARC v9 memory models. We run the kernel and all of userland in total store order regardless of the memory model denoted in the ELF header (which at least GCC 4.2.1 uses relaxed memory ordering for). Partially that is because - contrary to what one might expect - it turned out that employing total store order and its implicit memory barriers per- forms considerably better than running things with relaxed memory order and inserting explicit memory barriers as needed. With GCC 4.2.1 and your change to kern_event.c to use C11 atomics what happens is that the compiler includes memory barriers in a sledgehammer-fashion, though. In the particular case of the pmap stuff, parts of the atomic accesses to it are implemented in swtch.S. Currently, these are in sync with the code generated when using atomic(9) in C. Also, modulo r251782, the model employed as a whole, i. e. within C and assembler code, for accessing these pmap bits matches as far as acquire and release semantics are concerned. I really want to preserve this determinism and not make the actual code and semantics generated for the C half of it subject to the compiler of the day. So, in order to go forward and if atomic_{load,store}() conflicts with , what I like to do is to introduce an MD atomic_store_acq_ptr() and just live with that. Marius From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 16:01:25 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 45EF5637; Sun, 16 Jun 2013 16:01:25 +0000 (UTC) (envelope-from gibbs@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 3724C1D86; Sun, 16 Jun 2013 16:01:25 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5GG1PYP082827; Sun, 16 Jun 2013 16:01:25 GMT (envelope-from gibbs@svn.freebsd.org) Received: (from gibbs@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5GG1P7m082826; Sun, 16 Jun 2013 16:01:25 GMT (envelope-from gibbs@svn.freebsd.org) Message-Id: <201306161601.r5GG1P7m082826@svn.freebsd.org> From: "Justin T. Gibbs" Date: Sun, 16 Jun 2013 16:01:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251807 - head/sys/dev/xen/blkfront X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 16:01:25 -0000 Author: gibbs Date: Sun Jun 16 16:01:24 2013 New Revision: 251807 URL: http://svnweb.freebsd.org/changeset/base/251807 Log: sys/dev/xen/blkfront/blkfront.c: In xbd_thaw(), fix inverted logic to verify the queue is frozen before attempting a thaw. MFC after: 1 week Modified: head/sys/dev/xen/blkfront/blkfront.c Modified: head/sys/dev/xen/blkfront/blkfront.c ============================================================================== --- head/sys/dev/xen/blkfront/blkfront.c Sun Jun 16 15:35:13 2013 (r251806) +++ head/sys/dev/xen/blkfront/blkfront.c Sun Jun 16 16:01:24 2013 (r251807) @@ -103,7 +103,7 @@ xbd_thaw(struct xbd_softc *sc, xbd_flag_ if (xbd_flag != XBDF_NONE && (sc->xbd_flags & xbd_flag) == 0) return; - if (sc->xbd_qfrozen_cnt != 0) + if (sc->xbd_qfrozen_cnt == 0) panic("%s: Thaw with flag 0x%x while not frozen.", __func__, xbd_flag); From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 16:10:47 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 7392DB47; Sun, 16 Jun 2013 16:10:47 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 656991DF3; Sun, 16 Jun 2013 16:10:47 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5GGAlpQ086106; Sun, 16 Jun 2013 16:10:47 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5GGAk6x086100; Sun, 16 Jun 2013 16:10:46 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201306161610.r5GGAk6x086100@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Sun, 16 Jun 2013 16:10:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251809 - head/sys/fs/ext2fs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 16:10:47 -0000 Author: pfg Date: Sun Jun 16 16:10:45 2013 New Revision: 251809 URL: http://svnweb.freebsd.org/changeset/base/251809 Log: Re-sort ext2fs headers to make things easier to find. In the ext2fs driver we have a mixture of headers: - The ext2_ prefixed headers have strong influence from NetBSD and are carry specific ext2/3/4 information. - The unprefixed headers are inspired on UFS and carry implementation specific information. Do some small adjustments so that the information is easier to find coming from either UFS or the NetBSD implementation. MFC after: 3 days Modified: head/sys/fs/ext2fs/ext2_alloc.c head/sys/fs/ext2fs/ext2_balloc.c head/sys/fs/ext2fs/ext2_dinode.h head/sys/fs/ext2fs/ext2fs.h head/sys/fs/ext2fs/fs.h head/sys/fs/ext2fs/inode.h Modified: head/sys/fs/ext2fs/ext2_alloc.c ============================================================================== --- head/sys/fs/ext2fs/ext2_alloc.c Sun Jun 16 16:07:34 2013 (r251808) +++ head/sys/fs/ext2fs/ext2_alloc.c Sun Jun 16 16:10:45 2013 (r251809) @@ -46,10 +46,10 @@ #include #include +#include #include #include #include -#include #include static daddr_t ext2_alloccg(struct inode *, int, daddr_t, int); Modified: head/sys/fs/ext2fs/ext2_balloc.c ============================================================================== --- head/sys/fs/ext2fs/ext2_balloc.c Sun Jun 16 16:07:34 2013 (r251808) +++ head/sys/fs/ext2fs/ext2_balloc.c Sun Jun 16 16:10:45 2013 (r251809) @@ -44,11 +44,13 @@ #include #include +#include #include #include -#include +#include #include #include + /* * Balloc defines the structure of filesystem storage * by allocating the physical blocks on a device given Modified: head/sys/fs/ext2fs/ext2_dinode.h ============================================================================== --- head/sys/fs/ext2fs/ext2_dinode.h Sun Jun 16 16:07:34 2013 (r251808) +++ head/sys/fs/ext2fs/ext2_dinode.h Sun Jun 16 16:10:45 2013 (r251809) @@ -81,6 +81,16 @@ EXT2F_ROCOMPAT_EXTRA_ISIZE)) /* + * Constants relative to the data blocks + */ +#define EXT2_NDIR_BLOCKS 12 +#define EXT2_IND_BLOCK EXT2_NDIR_BLOCKS +#define EXT2_DIND_BLOCK (EXT2_IND_BLOCK + 1) +#define EXT2_TIND_BLOCK (EXT2_DIND_BLOCK + 1) +#define EXT2_N_BLOCKS (EXT2_TIND_BLOCK + 1) +#define EXT2_MAXSYMLINKLEN (EXT2_N_BLOCKS * sizeof(uint32_t)) + +/* * Structure of an inode on the disk */ struct ext2fs_dinode { Modified: head/sys/fs/ext2fs/ext2fs.h ============================================================================== --- head/sys/fs/ext2fs/ext2fs.h Sun Jun 16 16:07:34 2013 (r251808) +++ head/sys/fs/ext2fs/ext2fs.h Sun Jun 16 16:10:45 2013 (r251809) @@ -45,26 +45,6 @@ #define EXT2_LINK_MAX 32000 /* - * A summary of contiguous blocks of various sizes is maintained - * in each cylinder group. Normally this is set by the initial - * value of fs_maxcontig. - * - * XXX:FS_MAXCONTIG is set to 16 to conserve space. Here we set - * EXT2_MAXCONTIG to 32 for better performance. - */ -#define EXT2_MAXCONTIG 32 - -/* - * Constants relative to the data blocks - */ -#define EXT2_NDIR_BLOCKS 12 -#define EXT2_IND_BLOCK EXT2_NDIR_BLOCKS -#define EXT2_DIND_BLOCK (EXT2_IND_BLOCK + 1) -#define EXT2_TIND_BLOCK (EXT2_DIND_BLOCK + 1) -#define EXT2_N_BLOCKS (EXT2_TIND_BLOCK + 1) -#define EXT2_MAXSYMLINKLEN (EXT2_N_BLOCKS * sizeof(uint32_t)) - -/* * The path name on which the file system is mounted is maintained * in fs_fsmnt. MAXMNTLEN defines the amount of space allocated in * the super block for this name. @@ -175,11 +155,12 @@ struct m_ext2fs { struct csum *e2fs_clustersum; /* cluster summary in each cyl group */ }; -/* - * The second extended file system version - */ -#define E2FS_DATE "95/08/09" -#define E2FS_VERSION "0.5b" +/* cluster summary information */ + +struct csum { + int8_t cs_init; /* cluster summary has been initialized */ + int32_t *cs_sum; /* cluster summary array */ +}; /* * The second extended file system magic number @@ -192,9 +173,6 @@ struct m_ext2fs { #define E2FS_REV0 0 /* The good old (original) format */ #define E2FS_REV1 1 /* V2 format w/ dynamic inode sizes */ -#define E2FS_CURRENT_REV E2FS_REV0 -#define E2FS_MAX_SUPP_REV E2FS_REV1 - #define E2FS_REV0_INODE_SIZE 128 /* @@ -251,23 +229,6 @@ struct m_ext2fs { ( EXT2_SB(sb)->e2fs->e2fs_features_incompat & htole32(mask) ) /* - * Definitions of behavior on errors - */ -#define E2FS_BEH_CONTINUE 1 /* continue operation */ -#define E2FS_BEH_READONLY 2 /* remount fs read only */ -#define E2FS_BEH_PANIC 3 /* cause panic */ -#define E2FS_BEH_DEFAULT E2FS_BEH_CONTINUE - -/* - * OS identification - */ -#define E2FS_OS_LINUX 0 -#define E2FS_OS_HURD 1 -#define E2FS_OS_MASIX 2 -#define E2FS_OS_FREEBSD 3 -#define E2FS_OS_LITES 4 - -/* * File clean flags */ #define E2FS_ISCLEAN 0x0001 /* Unmounted cleanly */ @@ -290,12 +251,6 @@ struct ext2_gd { uint16_t ext2bgd_csum; /* group descriptor checksum */ }; -/* cluster summary information */ - -struct csum { - int8_t cs_init; /* cluster summary has been initialized */ - int32_t *cs_sum; /* cluster summary array */ -}; /* EXT2FS metadatas are stored in little-endian byte order. These macros * helps reading these metadatas Modified: head/sys/fs/ext2fs/fs.h ============================================================================== --- head/sys/fs/ext2fs/fs.h Sun Jun 16 16:07:34 2013 (r251808) +++ head/sys/fs/ext2fs/fs.h Sun Jun 16 16:10:45 2013 (r251809) @@ -65,6 +65,16 @@ #define MAXMNTLEN 512 /* + * A summary of contiguous blocks of various sizes is maintained + * in each cylinder group. Normally this is set by the initial + * value of fs_maxcontig. + * + * XXX:FS_MAXCONTIG is set to 16 to conserve space. Here we set + * EXT2_MAXCONTIG to 32 for better performance. + */ +#define EXT2_MAXCONTIG 32 + +/* * Grigoriy Orlov has done some extensive work to fine * tune the layout preferences for directories within a filesystem. * His algorithm can be tuned by adjusting the following parameters Modified: head/sys/fs/ext2fs/inode.h ============================================================================== --- head/sys/fs/ext2fs/inode.h Sun Jun 16 16:07:34 2013 (r251808) +++ head/sys/fs/ext2fs/inode.h Sun Jun 16 16:10:45 2013 (r251809) @@ -41,14 +41,14 @@ #include #include -#define NDADDR 12 /* Direct addresses in inode. */ -#define NIADDR 3 /* Indirect addresses in inode. */ - /* * This must agree with the definition in . */ #define doff_t int32_t +#define NDADDR 12 /* Direct addresses in inode. */ +#define NIADDR 3 /* Indirect addresses in inode. */ + /* * The inode is used to describe each active (or recently active) file in the * EXT2FS filesystem. It is composed of two types of information. The first From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 16:29:24 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 6ACDF342; Sun, 16 Jun 2013 16:29:24 +0000 (UTC) (envelope-from jlh@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5C9C61E71; Sun, 16 Jun 2013 16:29:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5GGTOoT090933; Sun, 16 Jun 2013 16:29:24 GMT (envelope-from jlh@svn.freebsd.org) Received: (from jlh@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5GGTOK9090932; Sun, 16 Jun 2013 16:29:24 GMT (envelope-from jlh@svn.freebsd.org) Message-Id: <201306161629.r5GGTOK9090932@svn.freebsd.org> From: Jeremie Le Hen Date: Sun, 16 Jun 2013 16:29:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251810 - head/share/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 16:29:24 -0000 Author: jlh Date: Sun Jun 16 16:29:23 2013 New Revision: 251810 URL: http://svnweb.freebsd.org/changeset/base/251810 Log: Fix install from read-only obj dir when SHLIB_LDSCRIPT is used. Reported by: joeld Tested by: joeld Modified: head/share/mk/bsd.lib.mk Modified: head/share/mk/bsd.lib.mk ============================================================================== --- head/share/mk/bsd.lib.mk Sun Jun 16 16:10:45 2013 (r251809) +++ head/share/mk/bsd.lib.mk Sun Jun 16 16:29:23 2013 (r251810) @@ -330,9 +330,12 @@ _libinstall: .if defined(SHLIB_LDSCRIPT) && !empty(SHLIB_LDSCRIPT) && exists(${.CURDIR}/${SHLIB_LDSCRIPT}) sed -e 's,@@SHLIB@@,${_LDSCRIPTROOT}${SHLIBDIR}/${SHLIB_NAME},g' \ -e 's,@@LIBDIR@@,${_LDSCRIPTROOT}${LIBDIR},g' \ - ${.CURDIR}/${SHLIB_LDSCRIPT} > lib${LIB}.ld + ${.CURDIR}/${SHLIB_LDSCRIPT} > ${DESTDIR}${LIBDIR}/${SHLIB_LINK:R}.ld ${INSTALL} -S -C -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \ - ${_INSTALLFLAGS} lib${LIB}.ld ${DESTDIR}${LIBDIR}/${SHLIB_LINK} + ${_INSTALLFLAGS} ${DESTDIR}${LIBDIR}/${SHLIB_LINK:R}.ld \ + ${DESTDIR}${LIBDIR}/${SHLIB_LINK} + rm -f ${DESTDIR}${LIBDIR}/${SHLIB_LINK:R}.ld + .else .if ${SHLIBDIR} == ${LIBDIR} ${INSTALL_SYMLINK} ${SHLIB_NAME} ${DESTDIR}${LIBDIR}/${SHLIB_LINK} From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 16:38:46 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 41E2A51B; Sun, 16 Jun 2013 16:38:46 +0000 (UTC) (envelope-from jlh@FreeBSD.org) Received: from caravan.chchile.org (caravan.chchile.org [178.32.125.136]) by mx1.freebsd.org (Postfix) with ESMTP id 0E2B11EAE; Sun, 16 Jun 2013 16:38:45 +0000 (UTC) Received: by caravan.chchile.org (Postfix, from userid 1000) id B7D1DBED5A; Sun, 16 Jun 2013 16:38:44 +0000 (UTC) Date: Sun, 16 Jun 2013 18:38:44 +0200 From: Jeremie Le Hen To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r251810 - head/share/mk Message-ID: <20130616163844.GJ70224@caravan.chchile.org> Mail-Followup-To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org References: <201306161629.r5GGTOK9090932@svn.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201306161629.r5GGTOK9090932@svn.freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 16:38:46 -0000 On Sun, Jun 16, 2013 at 04:29:24PM +0000, Jeremie Le Hen wrote: > Author: jlh > Date: Sun Jun 16 16:29:23 2013 > New Revision: 251810 > URL: http://svnweb.freebsd.org/changeset/base/251810 > > Log: > Fix install from read-only obj dir when SHLIB_LDSCRIPT is used. > > Reported by: joeld > Tested by: joeld This is actually "joel" on FreeBSD.org. Sorry for this mistake. -- Jeremie Le Hen Scientists say the world is made up of Protons, Neutrons and Electrons. They forgot to mention Morons. From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 17:54:57 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 3B4438CA; Sun, 16 Jun 2013 17:54:57 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 28732112E; Sun, 16 Jun 2013 17:54:57 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5GHsvrU018555; Sun, 16 Jun 2013 17:54:57 GMT (envelope-from gjb@svn.freebsd.org) Received: (from gjb@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5GHsvMk018554; Sun, 16 Jun 2013 17:54:57 GMT (envelope-from gjb@svn.freebsd.org) Message-Id: <201306161754.r5GHsvMk018554@svn.freebsd.org> From: Glen Barber Date: Sun, 16 Jun 2013 17:54:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251811 - head/release X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 17:54:57 -0000 Author: gjb Date: Sun Jun 16 17:54:56 2013 New Revision: 251811 URL: http://svnweb.freebsd.org/changeset/base/251811 Log: Fix OSVERSION variable within PBUILD_FLAGS. Submitted by: Garrett Cooper (in part) Approved by: kib (mentor) MFC After: 1 week X-MFC-With: r251652 X-MFC-To: stable/9 only Modified: head/release/release.sh Modified: head/release/release.sh ============================================================================== --- head/release/release.sh Sun Jun 16 16:29:23 2013 (r251810) +++ head/release/release.sh Sun Jun 16 17:54:56 2013 (r251811) @@ -165,7 +165,7 @@ build_doc_ports() { ## Trick the ports 'run-autotools-fixup' target to do the right thing. _OSVERSION=$(sysctl -n kern.osreldate) if [ -d ${CHROOTDIR}/usr/doc ] && [ "x${NODOC}" != "x" ]; then - PBUILD_FLAGS="OSVERSION=${OSVERSION} WITHOUT_JADETEX=yes BATCH=yes" + PBUILD_FLAGS="OSVERSION=${_OSVERSION} WITHOUT_JADETEX=yes BATCH=yes" chroot ${CHROOTDIR} make -C /usr/ports/textproc/docproj \ ${PBUILD_FLAGS} install fi From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 18:33:01 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 86DA9C5A; Sun, 16 Jun 2013 18:33:00 +0000 (UTC) (envelope-from antoine@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 2079F12E6; Sun, 16 Jun 2013 18:33:00 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5GIWxFA031347; Sun, 16 Jun 2013 18:32:59 GMT (envelope-from antoine@svn.freebsd.org) Received: (from antoine@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5GIWxbe031346; Sun, 16 Jun 2013 18:32:59 GMT (envelope-from antoine@svn.freebsd.org) Message-Id: <201306161832.r5GIWxbe031346@svn.freebsd.org> From: Antoine Brodin Date: Sun, 16 Jun 2013 18:32:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251815 - head X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 18:33:01 -0000 Author: antoine Date: Sun Jun 16 18:32:59 2013 New Revision: 251815 URL: http://svnweb.freebsd.org/changeset/base/251815 Log: Add more obsolete files. Modified: head/ObsoleteFiles.inc Modified: head/ObsoleteFiles.inc ============================================================================== --- head/ObsoleteFiles.inc Sun Jun 16 18:32:02 2013 (r251814) +++ head/ObsoleteFiles.inc Sun Jun 16 18:32:59 2013 (r251815) @@ -41,6 +41,8 @@ # 20130614: remove CVS from base OLD_FILES+=usr/bin/cvs OLD_FILES+=usr/bin/cvsbug +OLD_FILES+=usr/share/doc/psd/28.cvs/paper.ascii.gz +OLD_DIRS+=usr/share/doc/psd/28.cvs OLD_FILES+=usr/share/examples/cvs/contrib/README OLD_FILES+=usr/share/examples/cvs/contrib/clmerge OLD_FILES+=usr/share/examples/cvs/contrib/cln_hist @@ -60,11 +62,15 @@ OLD_FILES+=usr/share/examples/cvs/contri OLD_FILES+=usr/share/examples/cvs/contrib/rcs2log OLD_FILES+=usr/share/examples/cvs/contrib/rcslock OLD_FILES+=usr/share/examples/cvs/contrib/sccs2rcs +OLD_DIRS+=usr/share/examples/cvs/contrib +OLD_DIRS+=usr/share/examples/cvs OLD_FILES+=usr/share/info/cvs.info.gz OLD_FILES+=usr/share/info/cvsclient.info.gz OLD_FILES+=usr/share/man/man1/cvs.1.gz OLD_FILES+=usr/share/man/man5/cvs.5.gz OLD_FILES+=usr/share/man/man8/cvsbug.8.gz +# 20130607: WITH_DEBUG_FILES added +OLD_FILES+=lib/libufs.so.6.symbols # 20130417: nfs fha moved from nfsserver to nfs OLD_FILES+=usr/include/nfsserver/nfs_fha.h # 20130411: new clang import which bumps version from 3.2 to 3.3. From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 19:07:07 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 5952995B; Sun, 16 Jun 2013 19:07:07 +0000 (UTC) (envelope-from antoine@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4A7F413C3; Sun, 16 Jun 2013 19:07:07 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5GJ77k4041576; Sun, 16 Jun 2013 19:07:07 GMT (envelope-from antoine@svn.freebsd.org) Received: (from antoine@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5GJ77dB041575; Sun, 16 Jun 2013 19:07:07 GMT (envelope-from antoine@svn.freebsd.org) Message-Id: <201306161907.r5GJ77dB041575@svn.freebsd.org> From: Antoine Brodin Date: Sun, 16 Jun 2013 19:07:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251817 - head X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 19:07:07 -0000 Author: antoine Date: Sun Jun 16 19:07:06 2013 New Revision: 251817 URL: http://svnweb.freebsd.org/changeset/base/251817 Log: One more obsolete file. Modified: head/ObsoleteFiles.inc Modified: head/ObsoleteFiles.inc ============================================================================== --- head/ObsoleteFiles.inc Sun Jun 16 18:59:07 2013 (r251816) +++ head/ObsoleteFiles.inc Sun Jun 16 19:07:06 2013 (r251817) @@ -71,6 +71,7 @@ OLD_FILES+=usr/share/man/man5/cvs.5.gz OLD_FILES+=usr/share/man/man8/cvsbug.8.gz # 20130607: WITH_DEBUG_FILES added OLD_FILES+=lib/libufs.so.6.symbols +OLD_FILES+=usr/lib32/libufs.so.6.symbols # 20130417: nfs fha moved from nfsserver to nfs OLD_FILES+=usr/include/nfsserver/nfs_fha.h # 20130411: new clang import which bumps version from 3.2 to 3.3. From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 19:35:03 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id A244F482; Sun, 16 Jun 2013 19:35:03 +0000 (UTC) (envelope-from eadler@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 84F551674; Sun, 16 Jun 2013 19:35:03 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5GJZ3mV050826; Sun, 16 Jun 2013 19:35:03 GMT (envelope-from eadler@svn.freebsd.org) Received: (from eadler@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5GJZ109050810; Sun, 16 Jun 2013 19:35:01 GMT (envelope-from eadler@svn.freebsd.org) Message-Id: <201306161935.r5GJZ109050810@svn.freebsd.org> From: Eitan Adler Date: Sun, 16 Jun 2013 19:35:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251818 - head/tools/regression/lib/libc/nss X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 19:35:03 -0000 Author: eadler Date: Sun Jun 16 19:35:01 2013 New Revision: 251818 URL: http://svnweb.freebsd.org/changeset/base/251818 Log: Remove lines declaring "All rights reserved" or similar comments: they are not true as the files are actually under the BSD-2 license Approved by: bushman Modified: head/tools/regression/lib/libc/nss/test-getaddr.c head/tools/regression/lib/libc/nss/test-getgr.c head/tools/regression/lib/libc/nss/test-gethostby.c head/tools/regression/lib/libc/nss/test-getproto.c head/tools/regression/lib/libc/nss/test-getpw.c head/tools/regression/lib/libc/nss/test-getrpc.c head/tools/regression/lib/libc/nss/test-getserv.c head/tools/regression/lib/libc/nss/test-getusershell.c head/tools/regression/lib/libc/nss/testutil.h Modified: head/tools/regression/lib/libc/nss/test-getaddr.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-getaddr.c Sun Jun 16 19:07:06 2013 (r251817) +++ head/tools/regression/lib/libc/nss/test-getaddr.c Sun Jun 16 19:35:01 2013 (r251818) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2006 Michael Bushkov - * All rights rehted. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: head/tools/regression/lib/libc/nss/test-getgr.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-getgr.c Sun Jun 16 19:07:06 2013 (r251817) +++ head/tools/regression/lib/libc/nss/test-getgr.c Sun Jun 16 19:35:01 2013 (r251818) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2006 Michael Bushkov - * All rights regrped. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: head/tools/regression/lib/libc/nss/test-gethostby.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-gethostby.c Sun Jun 16 19:07:06 2013 (r251817) +++ head/tools/regression/lib/libc/nss/test-gethostby.c Sun Jun 16 19:35:01 2013 (r251818) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2006 Michael Bushkov - * All rights rehted. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: head/tools/regression/lib/libc/nss/test-getproto.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-getproto.c Sun Jun 16 19:07:06 2013 (r251817) +++ head/tools/regression/lib/libc/nss/test-getproto.c Sun Jun 16 19:35:01 2013 (r251818) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2006 Michael Bushkov - * All rights repeed. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: head/tools/regression/lib/libc/nss/test-getpw.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-getpw.c Sun Jun 16 19:07:06 2013 (r251817) +++ head/tools/regression/lib/libc/nss/test-getpw.c Sun Jun 16 19:35:01 2013 (r251818) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2006 Michael Bushkov - * All rights repwded. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: head/tools/regression/lib/libc/nss/test-getrpc.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-getrpc.c Sun Jun 16 19:07:06 2013 (r251817) +++ head/tools/regression/lib/libc/nss/test-getrpc.c Sun Jun 16 19:35:01 2013 (r251818) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2006 Michael Bushkov - * All rights repeed. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: head/tools/regression/lib/libc/nss/test-getserv.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-getserv.c Sun Jun 16 19:07:06 2013 (r251817) +++ head/tools/regression/lib/libc/nss/test-getserv.c Sun Jun 16 19:35:01 2013 (r251818) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2006 Michael Bushkov - * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: head/tools/regression/lib/libc/nss/test-getusershell.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-getusershell.c Sun Jun 16 19:07:06 2013 (r251817) +++ head/tools/regression/lib/libc/nss/test-getusershell.c Sun Jun 16 19:35:01 2013 (r251818) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2006 Michael Bushkov - * All rights repwded. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: head/tools/regression/lib/libc/nss/testutil.h ============================================================================== --- head/tools/regression/lib/libc/nss/testutil.h Sun Jun 16 19:07:06 2013 (r251817) +++ head/tools/regression/lib/libc/nss/testutil.h Sun Jun 16 19:35:01 2013 (r251818) @@ -1,6 +1,5 @@ /*- * Copyright (c) 2006 Michael Bushkov - * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 19:44:08 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id AAC4A781 for ; Sun, 16 Jun 2013 19:44:08 +0000 (UTC) (envelope-from lists@eitanadler.com) Received: from mail-pb0-x22e.google.com (mail-pb0-x22e.google.com [IPv6:2607:f8b0:400e:c01::22e]) by mx1.freebsd.org (Postfix) with ESMTP id 8565E16B7 for ; Sun, 16 Jun 2013 19:44:08 +0000 (UTC) Received: by mail-pb0-f46.google.com with SMTP id rq2so2092164pbb.19 for ; Sun, 16 Jun 2013 12:44:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=eitanadler.com; s=0xdeadbeef; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:content-type; bh=+ERpfeNxwfRG9RYeKI/wCaUjgS988y4F3S9p3NR+fzE=; b=XsNHEwSs4nrQFYosEbJUjWhuIIkACBbv4fXV8aK0Lpr4tcSfov8zmVU05dJl71BBuJ c9YoSEtV3nf+SJylUX6lGsYBUH+ZrnHSUrwsxWodbU6DkUZgmW4uB25IJC/74BUIWXz1 /dwn9MKM86Ib65xeSXNZ/zMhryLHUP+nLAuXo= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:content-type :x-gm-message-state; bh=+ERpfeNxwfRG9RYeKI/wCaUjgS988y4F3S9p3NR+fzE=; b=kC1//VxzpHXagz66qHddhPWvPLnS51VNhJ6d8LYQt8AHX8ul2q24wnvoDBagr+TytJ j/t+onV/TWlXQUJ03/xjjeGD1H6iaFnfbIcaEiDRRnOZWTnEMOjuzu+PPOWsNtbkVXto E9mDHUdsageDjk4yWrxY4/DQ1IPVlVVUeYuedj/yV7/cwwYWuY1I1uLTTHNG563iVPFR jYhhTnZXP2YnS1y9HvemdBIyobq32lKm0whiO8LdXroKdfsyqMQ7ihWyzZqFZ3q81YAP wWM3vSZeSOstcPWU4mFJUsYvM+yQi1PuhdtqnfKYtQEF/n8weQI0ckF3q4Us32/Riiwy oBaQ== X-Received: by 10.68.170.68 with SMTP id ak4mr10092223pbc.211.1371411848374; Sun, 16 Jun 2013 12:44:08 -0700 (PDT) MIME-Version: 1.0 Sender: lists@eitanadler.com Received: by 10.70.45.33 with HTTP; Sun, 16 Jun 2013 12:43:37 -0700 (PDT) In-Reply-To: <201306161935.r5GJZ109050810@svn.freebsd.org> References: <201306161935.r5GJZ109050810@svn.freebsd.org> From: Eitan Adler Date: Sun, 16 Jun 2013 21:43:37 +0200 X-Google-Sender-Auth: eDsXoxGMFrwaMSTRS_tE1sB7dB8 Message-ID: Subject: Re: svn commit: r251818 - head/tools/regression/lib/libc/nss To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Content-Type: text/plain; charset=UTF-8 X-Gm-Message-State: ALoCoQn9a2D7REUWa0rNLlvo7yQjFEYijDduBGD52bvdibufXDLV0yKs/iHn6iRMVTwXllWLMTy3 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 19:44:08 -0000 On Sun, Jun 16, 2013 at 9:35 PM, Eitan Adler wrote: > Author: eadler > Date: Sun Jun 16 19:35:01 2013 > New Revision: 251818 > URL: http://svnweb.freebsd.org/changeset/base/251818 > > Log: > Remove lines declaring "All rights reserved" or similar comments: they > are not true as the files are actually under the BSD-2 license I was notified to these because of the spelling mistakes, but after looking around it seems actually that this phrase is part of the license template. I'm not sure why because the phrase makes little to no sense when accompanied with a license, but I'll ask about switching to the standard text here instead. -- Eitan Adler Source, Ports, Doc committer Bugmeister, Ports Security teams From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 20:51:44 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D20F84BE; Sun, 16 Jun 2013 20:51:44 +0000 (UTC) (envelope-from zeising@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C489C1882; Sun, 16 Jun 2013 20:51:44 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5GKpih8075796; Sun, 16 Jun 2013 20:51:44 GMT (envelope-from zeising@svn.freebsd.org) Received: (from zeising@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5GKpifO075795; Sun, 16 Jun 2013 20:51:44 GMT (envelope-from zeising@svn.freebsd.org) Message-Id: <201306162051.r5GKpifO075795@svn.freebsd.org> From: Niclas Zeising Date: Sun, 16 Jun 2013 20:51:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251819 - head/share/man/man5 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 20:51:44 -0000 Author: zeising (doc,ports committer) Date: Sun Jun 16 20:51:44 2013 New Revision: 251819 URL: http://svnweb.freebsd.org/changeset/base/251819 Log: Fix the libc++ option. This somehow got reverted when this was updated after the CVS removal. Modified: head/share/man/man5/src.conf.5 Modified: head/share/man/man5/src.conf.5 ============================================================================== --- head/share/man/man5/src.conf.5 Sun Jun 16 19:35:01 2013 (r251818) +++ head/share/man/man5/src.conf.5 Sun Jun 16 20:51:44 2013 (r251819) @@ -1,7 +1,7 @@ .\" DO NOT EDIT-- this file is automatically generated. .\" from FreeBSD: head/tools/build/options/makeman 251685 2013-06-13 13:05:08Z emaste .\" $FreeBSD$ -.Dd June 15, 2013 +.Dd June 16, 2013 .Dt SRC.CONF 5 .Os .Sh NAME @@ -698,9 +698,9 @@ and On amd64, set to not build 32-bit library set and a .Nm ld-elf32.so.1 runtime linker. -.It Va WITH_LIBCPLUSPLUS -.\" from FreeBSD: head/tools/build/options/WITH_LIBCPLUSPLUS 228082 2011-11-28 17:56:46Z dim -Set to build libcxxrt and libc++. +.It Va WITHOUT_LIBCPLUSPLUS +.\" from FreeBSD: head/tools/build/options/WITHOUT_LIBCPLUSPLUS 246262 2013-02-02 22:42:46Z dim +Set to avoid building libcxxrt and libc++. .It Va WITHOUT_LIBPTHREAD .\" from FreeBSD: head/tools/build/options/WITHOUT_LIBPTHREAD 188848 2009-02-20 11:09:55Z mtm Set to not build the From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 21:15:35 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 9A51EC10; Sun, 16 Jun 2013 21:15:35 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8CC831972; Sun, 16 Jun 2013 21:15:35 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5GLFZJT083211; Sun, 16 Jun 2013 21:15:35 GMT (envelope-from theraven@svn.freebsd.org) Received: (from theraven@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5GLFZ9n083210; Sun, 16 Jun 2013 21:15:35 GMT (envelope-from theraven@svn.freebsd.org) Message-Id: <201306162115.r5GLFZ9n083210@svn.freebsd.org> From: David Chisnall Date: Sun, 16 Jun 2013 21:15:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251820 - head/gnu/lib/libsupc++ X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 21:15:35 -0000 Author: theraven Date: Sun Jun 16 21:15:35 2013 New Revision: 251820 URL: http://svnweb.freebsd.org/changeset/base/251820 Log: Fix some missing symbols in the libsupc++ Version.map MFC after: 1 week Modified: head/gnu/lib/libsupc++/Version.map Modified: head/gnu/lib/libsupc++/Version.map ============================================================================== --- head/gnu/lib/libsupc++/Version.map Sun Jun 16 20:51:44 2013 (r251819) +++ head/gnu/lib/libsupc++/Version.map Sun Jun 16 21:15:35 2013 (r251820) @@ -147,6 +147,13 @@ GLIBCXX_3.4 { std::set_terminate*; std::set_unexpected*; + "std::unexpected()"; + "std::get_terminate()"; + "std::get_unexpected()"; + "std::uncaught_exception()"; + "std::terminate()"; + + std::bad_alloc; std::bad_cast; std::exception*; @@ -154,14 +161,20 @@ GLIBCXX_3.4 { "typeinfo for std::bad_alloc"; "typeinfo for std::bad_cast"; "typeinfo for std::exception"; + "typeinfo for std::type_info"; "typeinfo name for std::bad_alloc"; "typeinfo name for std::bad_cast"; "typeinfo name for std::exception"; + "typeinfo name for std::type_info"; "vtable for std::bad_alloc"; "vtable for std::bad_cast"; "vtable for std::exception"; + "vtable for std::type_info"; + + std::type_info::__*; + "std::type_info::~type_info()"; }; }; From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 21:30:35 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 3B700198; Sun, 16 Jun 2013 21:30:35 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from onyx.glenbarber.us (onyx.glenbarber.us [IPv6:2607:fc50:1000:c200::face]) by mx1.freebsd.org (Postfix) with ESMTP id EE4ED1A0E; Sun, 16 Jun 2013 21:30:34 +0000 (UTC) Received: from glenbarber.us (kaos.glenbarber.us [71.224.221.174]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: gjb) by onyx.glenbarber.us (Postfix) with ESMTPSA id 0E88F23F841; Sun, 16 Jun 2013 17:30:34 -0400 (EDT) DKIM-Filter: OpenDKIM Filter v2.8.3 onyx.glenbarber.us 0E88F23F841 Authentication-Results: onyx.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Sun, 16 Jun 2013 17:30:32 -0400 From: Glen Barber To: "Justin T. Gibbs" Subject: Re: svn commit: r251767 - in head/sys: amd64/include/xen i386/include/xen xen xen/interface xen/interface/arch-arm/hvm xen/interface/arch-ia64 xen/interface/arch-ia64/hvm xen/interface/arch-x86 xen/int... Message-ID: <20130616213032.GW1692@glenbarber.us> References: <201306142343.r5ENhjC0025604@svn.freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="q5iovQLtJQXc0+Hs" Content-Disposition: inline In-Reply-To: <201306142343.r5ENhjC0025604@svn.freebsd.org> X-Operating-System: FreeBSD 10.0-CURRENT amd64 User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 21:30:35 -0000 --q5iovQLtJQXc0+Hs Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Jun 14, 2013 at 11:43:45PM +0000, Justin T. Gibbs wrote: > Author: gibbs > Date: Fri Jun 14 23:43:44 2013 > New Revision: 251767 > URL: http://svnweb.freebsd.org/changeset/base/251767 >=20 > Log: > Upgrade Xen interface headers to Xen 4.2.1. > =20 > Move FreeBSD from interface version 0x00030204 to 0x00030208. > Updates are required to our grant table implementation before we > can bump this further. > =20 > sys/xen/hvm.h: > Replace the implementation of hvm_get_parameter(), formerly located > in sys/xen/interface/hvm/params.h. Linux has a similar file which > primarily stores this function. > =20 > sys/xen/xenstore/xenstore.c: > Include new xen/hvm.h header file to get hvm_get_parameter(). > =20 > sys/amd64/include/xen/xen-os.h: > sys/i386/include/xen/xen-os.h: > Correctly protect function definition and variables from being > included into assembly files in xen-os.h > =20 > Xen memory barriers are now prefixed with "xen_" to avoid conflicts > with OS native primatives. Define Xen memory barriers in terms of > the native FreeBSD primatives. > =20 =20 [...] > Modified: head/sys/xen/interface/arch-ia64.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/xen/interface/arch-ia64.h Fri Jun 14 23:04:31 2013 (r251766) > +++ head/sys/xen/interface/arch-ia64.h Fri Jun 14 23:43:44 2013 (r251767) > @@ -49,10 +49,11 @@ > #define XEN_GUEST_HANDLE(name) __guest_handle_ ## name > #define XEN_GUEST_HANDLE_64(name) XEN_GUEST_HANDLE(name) > #define uint64_aligned_t uint64_t > -#define set_xen_guest_handle(hnd, val) do { (hnd).p =3D val; } while (0) > +#define set_xen_guest_handle_raw(hnd, val) do { (hnd).p =3D val; } whil= e (0) > #ifdef __XEN_TOOLS__ > #define get_xen_guest_handle(val, hnd) do { val =3D (hnd).p; } while (0) > #endif > +#define set_xen_guest_handle(hnd, val) set_xen_guest_handle_raw(hnd, val) > =20 > #ifndef __ASSEMBLY__ > typedef unsigned long xen_pfn_t; > @@ -66,7 +67,7 @@ typedef unsigned long xen_pfn_t; > =20 > /* Maximum number of virtual CPUs in multi-processor guests. */ > /* WARNING: before changing this, check that shared_info fits on a page = */ > -#define MAX_VIRT_CPUS 64 > +#define XEN_LEGACY_MAX_VCPUS 64 > =20 I think this is breaking the i386 XEN build: cc -c -O -pipe -std=3Dc99 -g -Wall -Wredundant-decls -Wnested-externs -Ws= trict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-poi= nter-sign -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option -Wno-error-tautological-compare -Wno-error-empty-body -Wno-error-parenthese= s-equality -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/libfdt= -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -mno-aes -mno-avx -mno-= mmx -mno-sse -msoft-float -ffreestanding -fstack-protector -Werror /src/sys/xen/evtchn/e= vtchn.c /src/sys/xen/evtchn/evtchn.c:149:38: error: use of undeclared identifier 'M= AX_VIRT_CPUS' static unsigned long cpu_evtchn_mask[MAX_VIRT_CPUS][NR_EVENT_CHANNELS/LONG_BIT]; ^ /src/sys/xen/evtchn/evtchn.c:1001:22: error: use of undeclared identifier 'MAX_VIRT_CPUS' for (cpu =3D 1; cpu < MAX_VIRT_CPUS; cpu++) { ^ 2 errors generated. *** Error code 1 =20 Stop. make: stopped in /obj/i386.i386/src/sys/XEN *** Error code 1 =20 Glen --q5iovQLtJQXc0+Hs Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iQEcBAEBCAAGBQJRvi54AAoJEFJPDDeguUajUMIIAKfgrfbNfPknIdmIzVByAC9R aZSRwQKJzt6vfENEsVsCbBp6roH0CY0s46nxBzS0CZPhrK55qNsE72nXOsQ4yvaE 4fCgbOReWnJYladeDTA1+9qbkdf7+ooHT1s2n0GwusOeLGUS23NFqjzFIPGRJPIO 91z1BoqbKmQZMDPW/udYSVED0WVzP95CX6l5h4eUry03K3A4ZkUSBjiDD8tozqHj rH8Xt2Yfovr9mcUyudwQvqVX3LPcW6oakrZvMzYITqACBiSOQnURWyrK5myCbRcy S2A5yGge7JV3/lN5inwUwgOjkNXioHmJHtl6R0Yqs+UTnOgx79lUBWLPxlh+alk= =TGrC -----END PGP SIGNATURE----- --q5iovQLtJQXc0+Hs-- From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 21:32:02 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id E31F3313; Sun, 16 Jun 2013 21:32:02 +0000 (UTC) (envelope-from bjkfbsd@gmail.com) Received: from mail-qe0-f52.google.com (mail-qe0-f52.google.com [209.85.128.52]) by mx1.freebsd.org (Postfix) with ESMTP id 23D1D1A19; Sun, 16 Jun 2013 21:32:02 +0000 (UTC) Received: by mail-qe0-f52.google.com with SMTP id i11so1300589qej.39 for ; Sun, 16 Jun 2013 14:31:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=0bAVEJVZD7q/1feWfz5W/q1qwZltXaK3AszZU4xvLJI=; b=d0sJFIMAC3C/tRboHD3TRn/sKpRQ22fwPqsRK3wpcDehEAyvD8APflCsHj16lFkPaH o7Cg8vSZOwF2/VQJrJYHWK+GXVZwTZfybkKcjCWQ8phVw11cmL64iHj5XQzUR4u8BufU oPZVjU11dZk+7hWT4VUVyx07Qe6pLmM1re6Kfd7WclPc6oatvOiaqMIVNaMFy5TodYkA lVuDyWd3e/FlhZx2PWw7M0HxFV4OkyWL2w+VpHJgqcBFOD/U6jaQoxX9F6qLopoCKcMK 1FLU2ad6azOusBtJ6rMdhvJ2ovtEQALMIeHWGjzvbYB+FHR0p3zWzD9pFA9iySpZHirK jn0Q== MIME-Version: 1.0 X-Received: by 10.229.195.2 with SMTP id ea2mr5202175qcb.120.1371418315660; Sun, 16 Jun 2013 14:31:55 -0700 (PDT) Received: by 10.49.3.36 with HTTP; Sun, 16 Jun 2013 14:31:55 -0700 (PDT) In-Reply-To: References: <201306161935.r5GJZ109050810@svn.freebsd.org> Date: Sun, 16 Jun 2013 17:31:55 -0400 Message-ID: Subject: Re: svn commit: r251818 - head/tools/regression/lib/libc/nss From: Benjamin Kaduk To: Eitan Adler Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.14 Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 21:32:03 -0000 On Sun, Jun 16, 2013 at 3:43 PM, Eitan Adler wrote: > On Sun, Jun 16, 2013 at 9:35 PM, Eitan Adler wrote: > > Author: eadler > > Date: Sun Jun 16 19:35:01 2013 > > New Revision: 251818 > > URL: http://svnweb.freebsd.org/changeset/base/251818 > > > > Log: > > Remove lines declaring "All rights reserved" or similar comments: they > > are not true as the files are actually under the BSD-2 license > > I was notified to these because of the spelling mistakes, but after > looking around it seems actually that this phrase is part of the > license template. > > I'm not sure why because the phrase makes little to no sense when > accompanied with a license, but I'll ask about switching to the > standard text here instead. > Sure it makes sense. All rights are reserved except those which are subsequently granted by the explicit license text. In some jurisdictions (I believe, but I am not a lawyer), in the absence of an explicit declaration that all rights are reserved, some rights are implicitly granted to the reader/user which may not be covered by the subsequent explicit grant. There is presumably a reason why it is in the licensing template, and removing it without the consent of competent legal counsel seems ill-advised. -Ben From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 21:45:05 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 6ADEA761; Sun, 16 Jun 2013 21:45:05 +0000 (UTC) (envelope-from vg@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5E5E01A8F; Sun, 16 Jun 2013 21:45:05 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5GLj5b7092233; Sun, 16 Jun 2013 21:45:05 GMT (envelope-from vg@svn.freebsd.org) Received: (from vg@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5GLj5DZ092232; Sun, 16 Jun 2013 21:45:05 GMT (envelope-from vg@svn.freebsd.org) Message-Id: <201306162145.r5GLj5DZ092232@svn.freebsd.org> From: Veniamin Gvozdikov Date: Sun, 16 Jun 2013 21:45:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251821 - 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-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 21:45:05 -0000 Author: vg (ports committer) Date: Sun Jun 16 21:45:04 2013 New Revision: 251821 URL: http://svnweb.freebsd.org/changeset/base/251821 Log: Add myself as ports committer. Approved by: rm (mentor) Modified: head/share/misc/committers-ports.dot Modified: head/share/misc/committers-ports.dot ============================================================================== --- head/share/misc/committers-ports.dot Sun Jun 16 21:15:35 2013 (r251820) +++ head/share/misc/committers-ports.dot Sun Jun 16 21:45:04 2013 (r251821) @@ -204,6 +204,7 @@ trasz [label="Edward Tomasz Napierala\nt trhodes [label="Tom Rhodes\ntrhodes@FreeBSD.org\n2004/07/06"] uqs [label="Ulrich Spoerlein\nuqs@FreeBSD.org\n2012/01/19"] vd [label="Vasil Dimov\nvd@FreeBSD.org\n2006/01/19"] +vg [label="Veniamin Gvozdikov\nvg@FreeBSD.org\n2013/06/11"] wen [label="Wen Heping\nwen@FreeBSD.org\n2010/12/13"] wg [label="William Grzybowski\nwg@FreeBSD.org\n2013/04/01"] wxs [label="Wesley Shields\nwxs@FreeBSD.org\n2008/01/03"] @@ -462,6 +463,8 @@ rene -> crees rene -> jgh rene -> olivierd +rm -> vg + sahil -> culot sahil -> eadler From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 21:46:03 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 507D08E2 for ; Sun, 16 Jun 2013 21:46:03 +0000 (UTC) (envelope-from lists@eitanadler.com) Received: from mail-pd0-f170.google.com (mail-pd0-f170.google.com [209.85.192.170]) by mx1.freebsd.org (Postfix) with ESMTP id 27ECB1A97 for ; Sun, 16 Jun 2013 21:46:03 +0000 (UTC) Received: by mail-pd0-f170.google.com with SMTP id x11so2137732pdj.29 for ; Sun, 16 Jun 2013 14:46:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=eitanadler.com; s=0xdeadbeef; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:cc:content-type; bh=Uvp8TavdFg36o3wUcY2SGbiRV0nuUGh6tdMD0voeVqs=; b=FuQ6siV5KWmfVhXMKwLaPjyyEwiwwbf4PuzZi9kNYriQSrIM9vHnnRyoKF0R3gwmrG K/FaZcXni+vez2WGS49Eb/OJNZVTcRURTs9Jm2dMDG65cptO/+F0RuCLK7lA7Yz/VZcv krMzjo8nK7t/ZOnPYdCM0qSYAcBhwf5M3vFx8= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:cc:content-type :x-gm-message-state; bh=Uvp8TavdFg36o3wUcY2SGbiRV0nuUGh6tdMD0voeVqs=; b=FHL/Aiz1yLYTrS7+DuWkDi04/iOxBuxjn4Jif3xaJiO+Ql0YCVrz9ptoww5nKmPm9A tf0uCcWEACeXiThrSkiQaopHORTfLLEUmMbWy2wolbM6d1d58g2y3myvqlDWuiKmxybx j+NQ3KiMnKgz2O+Z1RVlmcIeUmXM/FO4YaKzLu9pT/mM8gXtakRmDxZeidjW71yGQ4wp hMwrjkDf9msyZhMhap0wFbdn73PPMq2EnBBgWRY92y+53R+68sdMxc0Z1ZH0NUg2/vM/ ZEo5hlc7dIfcIDUhDL0a7Qp1uyplSbBLgcnJ/s2DEyvpR8+6rCy4HjGfc9TJcDsQWzLW R6Nw== X-Received: by 10.68.236.42 with SMTP id ur10mr10398874pbc.206.1371419162742; Sun, 16 Jun 2013 14:46:02 -0700 (PDT) MIME-Version: 1.0 Sender: lists@eitanadler.com Received: by 10.70.45.33 with HTTP; Sun, 16 Jun 2013 14:45:32 -0700 (PDT) In-Reply-To: References: <201306161935.r5GJZ109050810@svn.freebsd.org> From: Eitan Adler Date: Sun, 16 Jun 2013 23:45:32 +0200 X-Google-Sender-Auth: fDqqKZFCZlhPfVCy6v8QcSr4FCw Message-ID: Subject: Re: svn commit: r251818 - head/tools/regression/lib/libc/nss To: Benjamin Kaduk Content-Type: text/plain; charset=UTF-8 X-Gm-Message-State: ALoCoQnRVDzdYdGkOzb3TsTUS4Ore8LElFG9it2M1T37iCvOZ1Z+SBOBI5EAeQ4is0PZFCdMQwPo Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 21:46:03 -0000 On Sun, Jun 16, 2013 at 11:31 PM, Benjamin Kaduk wrote: > There is presumably a reason why it is in the licensing template, and > removing it without the consent of competent legal counsel seems > ill-advised. IANAL. Agreed. I already asked the author for permission to use the standard license - I did not realize the words were in the standard template prior. I will ask about this though to an attorney, as it seems quite unusual to me. -- Eitan Adler Source, Ports, Doc committer Bugmeister, Ports Security teams From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 21:49:37 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 95045A92; Sun, 16 Jun 2013 21:49:37 +0000 (UTC) (envelope-from vg@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 87DFA1AB9; Sun, 16 Jun 2013 21:49:37 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5GLnbqb092878; Sun, 16 Jun 2013 21:49:37 GMT (envelope-from vg@svn.freebsd.org) Received: (from vg@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5GLnbe6092877; Sun, 16 Jun 2013 21:49:37 GMT (envelope-from vg@svn.freebsd.org) Message-Id: <201306162149.r5GLnbe6092877@svn.freebsd.org> From: Veniamin Gvozdikov Date: Sun, 16 Jun 2013 21:49:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251822 - 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-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 21:49:37 -0000 Author: vg (ports committer) Date: Sun Jun 16 21:49:37 2013 New Revision: 251822 URL: http://svnweb.freebsd.org/changeset/base/251822 Log: Added my another mentors: osa and eadler Approved by: rm (mentor) Modified: head/share/misc/committers-ports.dot Modified: head/share/misc/committers-ports.dot ============================================================================== --- head/share/misc/committers-ports.dot Sun Jun 16 21:45:04 2013 (r251821) +++ head/share/misc/committers-ports.dot Sun Jun 16 21:49:37 2013 (r251822) @@ -290,6 +290,7 @@ eadler -> dbn eadler -> bdrewery eadler -> gjb eadler -> tj +eadler -> vg edwin -> cperciva edwin -> erwin @@ -440,6 +441,8 @@ novel -> rm obrien -> mharo obrien -> gerald +osa -> vg + pat -> adamw pav -> ahze From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 22:26:04 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 572CA777; Sun, 16 Jun 2013 22:26:04 +0000 (UTC) (envelope-from gavin@FreeBSD.org) Received: from mail-gw11.york.ac.uk (mail-gw11.york.ac.uk [144.32.129.150]) by mx1.freebsd.org (Postfix) with ESMTP id 1FDA71C48; Sun, 16 Jun 2013 22:26:03 +0000 (UTC) Received: from ury.york.ac.uk ([144.32.64.162]:57903) by mail-gw11.york.ac.uk with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.76) (envelope-from ) id 1UoLOW-0000yD-Vy; Sun, 16 Jun 2013 23:25:57 +0100 Date: Sun, 16 Jun 2013 23:25:56 +0100 (BST) From: Gavin Atkinson X-X-Sender: gavin@thunderhorn.york.ac.uk To: Eitan Adler Subject: Re: svn commit: r251507 - head/usr.sbin/portsnap/portsnap In-Reply-To: Message-ID: References: <201306072021.r57KLUfD046462@svn.freebsd.org> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Xin LI X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 22:26:04 -0000 On Sat, 8 Jun 2013, Eitan Adler wrote: > On 7 June 2013 22:21, Xin LI wrote: > > Author: delphij > > Date: Fri Jun 7 20:21:30 2013 > > New Revision: 251507 > > URL: http://svnweb.freebsd.org/changeset/base/251507 > > > > Log: > > Make 'portsnap alfred' overwrite ports tree if it's not created by a > > portsnap. > > FWIW, the 'alfred' command is poorly named and is used by other > projects (ISTR portshaker uses it). It should also be documented. I would love to see this renamed - unfortunately the most obvious name for it "update" is already taken. I wonder if it should be named "auto"? Thanks, Gavin From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 23:14:50 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id C52C85AE; Sun, 16 Jun 2013 23:14:50 +0000 (UTC) (envelope-from gibbs@FreeBSD.org) Received: from aslan.scsiguy.com (mail.scsiguy.com [70.89.174.89]) by mx1.freebsd.org (Postfix) with ESMTP id 618511DD1; Sun, 16 Jun 2013 23:14:49 +0000 (UTC) Received: from macbook.scsiguy.com (macbook.scsiguy.com [192.168.0.100]) (authenticated bits=0) by aslan.scsiguy.com (8.14.7/8.14.5) with ESMTP id r5GNEkAW044412 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Sun, 16 Jun 2013 23:14:47 GMT (envelope-from gibbs@FreeBSD.org) Content-Type: multipart/signed; boundary="Apple-Mail=_4F837D89-065C-46C8-BD10-F598F6843CA0"; protocol="application/pgp-signature"; micalg=pgp-sha1 Mime-Version: 1.0 (Mac OS X Mail 6.5 \(1508\)) Subject: Re: svn commit: r251767 - in head/sys: amd64/include/xen i386/include/xen xen xen/interface xen/interface/arch-arm/hvm xen/interface/arch-ia64 xen/interface/arch-ia64/hvm xen/interface/arch-x86 xen/int... From: "Justin T. Gibbs" In-Reply-To: <20130616213032.GW1692@glenbarber.us> Date: Sun, 16 Jun 2013 17:14:46 -0600 Message-Id: References: <201306142343.r5ENhjC0025604@svn.freebsd.org> <20130616213032.GW1692@glenbarber.us> To: Glen Barber X-Mailer: Apple Mail (2.1508) X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.4.3 (aslan.scsiguy.com [192.168.0.4]); Sun, 16 Jun 2013 23:14:47 +0000 (UTC) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 23:14:50 -0000 --Apple-Mail=_4F837D89-065C-46C8-BD10-F598F6843CA0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On Jun 16, 2013, at 3:30 PM, Glen Barber wrote: > On Fri, Jun 14, 2013 at 11:43:45PM +0000, Justin T. Gibbs wrote: >> Author: gibbs >> Date: Fri Jun 14 23:43:44 2013 >> New Revision: 251767 >> URL: http://svnweb.freebsd.org/changeset/base/251767 >>=20 >> Log: >> Upgrade Xen interface headers to Xen 4.2.1. >>=20 >> Move FreeBSD from interface version 0x00030204 to 0x00030208. >> Updates are required to our grant table implementation before we >> can bump this further. >>=20 >> sys/xen/hvm.h: >> Replace the implementation of hvm_get_parameter(), formerly = located >> in sys/xen/interface/hvm/params.h. Linux has a similar file = which >> primarily stores this function. >>=20 >> sys/xen/xenstore/xenstore.c: >> Include new xen/hvm.h header file to get hvm_get_parameter(). >>=20 >> sys/amd64/include/xen/xen-os.h: >> sys/i386/include/xen/xen-os.h: >> Correctly protect function definition and variables from being >> included into assembly files in xen-os.h >>=20 >> Xen memory barriers are now prefixed with "xen_" to avoid = conflicts >> with OS native primatives. Define Xen memory barriers in terms = of >> the native FreeBSD primatives. >>=20 >=20 > [...] >=20 >> Modified: head/sys/xen/interface/arch-ia64.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/xen/interface/arch-ia64.h Fri Jun 14 23:04:31 2013 = (r251766) >> +++ head/sys/xen/interface/arch-ia64.h Fri Jun 14 23:43:44 2013 = (r251767) >> @@ -49,10 +49,11 @@ >> #define XEN_GUEST_HANDLE(name) __guest_handle_ ## name >> #define XEN_GUEST_HANDLE_64(name) XEN_GUEST_HANDLE(name) >> #define uint64_aligned_t uint64_t >> -#define set_xen_guest_handle(hnd, val) do { (hnd).p =3D val; } = while (0) >> +#define set_xen_guest_handle_raw(hnd, val) do { (hnd).p =3D val; } = while (0) >> #ifdef __XEN_TOOLS__ >> #define get_xen_guest_handle(val, hnd) do { val =3D (hnd).p; } while = (0) >> #endif >> +#define set_xen_guest_handle(hnd, val) set_xen_guest_handle_raw(hnd, = val) >>=20 >> #ifndef __ASSEMBLY__ >> typedef unsigned long xen_pfn_t; >> @@ -66,7 +67,7 @@ typedef unsigned long xen_pfn_t; >>=20 >> /* Maximum number of virtual CPUs in multi-processor guests. */ >> /* WARNING: before changing this, check that shared_info fits on a = page */ >> -#define MAX_VIRT_CPUS 64 >> +#define XEN_LEGACY_MAX_VCPUS 64 >>=20 >=20 > I think this is breaking the i386 XEN build: >=20 > cc -c -O -pipe -std=3Dc99 -g -Wall -Wredundant-decls = -Wnested-externs -Wstrict-prototypes > -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef = -Wno-pointer-sign > -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option > -Wno-error-tautological-compare -Wno-error-empty-body = -Wno-error-parentheses-equality > -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq = -I/src/sys/contrib/libfdt -D_KERNEL > -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -mno-aes -mno-avx = -mno-mmx -mno-sse > -msoft-float -ffreestanding -fstack-protector -Werror = /src/sys/xen/evtchn/evtchn.c > /src/sys/xen/evtchn/evtchn.c:149:38: error: use of undeclared = identifier 'MAX_VIRT_CPUS' > static unsigned long > cpu_evtchn_mask[MAX_VIRT_CPUS][NR_EVENT_CHANNELS/LONG_BIT]; > ^ > /src/sys/xen/evtchn/evtchn.c:1001:22: error: use of undeclared > identifier 'MAX_VIRT_CPUS' > for (cpu =3D 1; cpu < MAX_VIRT_CPUS; cpu++) { > ^ > 2 errors generated. > *** Error code 1 >=20 > Stop. > make: stopped in /obj/i386.i386/src/sys/XEN > *** Error code 1 >=20 >=20 > Glen Yup, because of the change to the x86 version of the header you = reference. I have a patch ready and am just waiting on a build. -- Justin --Apple-Mail=_4F837D89-065C-46C8-BD10-F598F6843CA0 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.19 (Darwin) iQEcBAEBAgAGBQJRvkbmAAoJED9n8CuvaSf48N8IAJ/gv9S1jKT02MyE3Iw5DkeS HS2r4GditCsY9Ac9kTxp6PiQ/Q3L/EXgqQzstPstrdR+1PNqL/yn/rdxdJ+D8TP5 t9ztbYcoGR97IQteO6uX/K31uVyI5rQMJy1T9Z1ry1FuLanXePprGILUJPFqiztQ H34IxZY9yqCg/NLexJQp5xjtTbqF44+33on55RFzVTiI5d4xLm8XDq+i+/7kFbd7 IrMa5arkJHg5EDJM1CnaUiZ450ul/FNtTzo/vcn2TaCCFeECw2+EBi7BkR6DMJeV cFnRHpUC1ypuKu2S4zRb0YWAWX2IH1BkpLGNZdRNiil49aywXesLY+0t2AiHQVo= =JW3x -----END PGP SIGNATURE----- --Apple-Mail=_4F837D89-065C-46C8-BD10-F598F6843CA0-- From owner-svn-src-head@FreeBSD.ORG Sun Jun 16 23:21:24 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 114117EF; Sun, 16 Jun 2013 23:21:24 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from onyx.glenbarber.us (onyx.glenbarber.us [199.48.134.227]) by mx1.freebsd.org (Postfix) with ESMTP id DA2951E09; Sun, 16 Jun 2013 23:21:23 +0000 (UTC) Received: from glenbarber.us (kaos.glenbarber.us [71.224.221.174]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: gjb) by onyx.glenbarber.us (Postfix) with ESMTPSA id 384A823F841; Sun, 16 Jun 2013 19:21:22 -0400 (EDT) DKIM-Filter: OpenDKIM Filter v2.8.3 onyx.glenbarber.us 384A823F841 Authentication-Results: onyx.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Sun, 16 Jun 2013 19:21:20 -0400 From: Glen Barber To: "Justin T. Gibbs" Subject: Re: svn commit: r251767 - in head/sys: amd64/include/xen i386/include/xen xen xen/interface xen/interface/arch-arm/hvm xen/interface/arch-ia64 xen/interface/arch-ia64/hvm xen/interface/arch-x86 xen/int... Message-ID: <20130616232120.GZ1692@glenbarber.us> References: <201306142343.r5ENhjC0025604@svn.freebsd.org> <20130616213032.GW1692@glenbarber.us> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="SHFFXbs3XlGSDX14" Content-Disposition: inline In-Reply-To: X-Operating-System: FreeBSD 10.0-CURRENT amd64 User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 23:21:24 -0000 --SHFFXbs3XlGSDX14 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Jun 16, 2013 at 05:14:46PM -0600, Justin T. Gibbs wrote: > On Jun 16, 2013, at 3:30 PM, Glen Barber wrote: >=20 > > On Fri, Jun 14, 2013 at 11:43:45PM +0000, Justin T. Gibbs wrote: > >> Author: gibbs > >> Date: Fri Jun 14 23:43:44 2013 > >> New Revision: 251767 > >> URL: http://svnweb.freebsd.org/changeset/base/251767 > >>=20 > >> Log: > >> Upgrade Xen interface headers to Xen 4.2.1. > >>=20 > >> Move FreeBSD from interface version 0x00030204 to 0x00030208. > >> Updates are required to our grant table implementation before we > >> can bump this further. > >>=20 > >> sys/xen/hvm.h: > >> Replace the implementation of hvm_get_parameter(), formerly located > >> in sys/xen/interface/hvm/params.h. Linux has a similar file which > >> primarily stores this function. > >>=20 > >> sys/xen/xenstore/xenstore.c: > >> Include new xen/hvm.h header file to get hvm_get_parameter(). > >>=20 > >> sys/amd64/include/xen/xen-os.h: > >> sys/i386/include/xen/xen-os.h: > >> Correctly protect function definition and variables from being > >> included into assembly files in xen-os.h > >>=20 > >> Xen memory barriers are now prefixed with "xen_" to avoid conflicts > >> with OS native primatives. Define Xen memory barriers in terms of > >> the native FreeBSD primatives. > >>=20 > >=20 > > [...] > >=20 > >> Modified: head/sys/xen/interface/arch-ia64.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/xen/interface/arch-ia64.h Fri Jun 14 23:04:31 2013 (r2517= 66) > >> +++ head/sys/xen/interface/arch-ia64.h Fri Jun 14 23:43:44 2013 (r2517= 67) > >> @@ -49,10 +49,11 @@ > >> #define XEN_GUEST_HANDLE(name) __guest_handle_ ## name > >> #define XEN_GUEST_HANDLE_64(name) XEN_GUEST_HANDLE(name) > >> #define uint64_aligned_t uint64_t > >> -#define set_xen_guest_handle(hnd, val) do { (hnd).p =3D val; } while= (0) > >> +#define set_xen_guest_handle_raw(hnd, val) do { (hnd).p =3D val; } w= hile (0) > >> #ifdef __XEN_TOOLS__ > >> #define get_xen_guest_handle(val, hnd) do { val =3D (hnd).p; } while = (0) > >> #endif > >> +#define set_xen_guest_handle(hnd, val) set_xen_guest_handle_raw(hnd, = val) > >>=20 > >> #ifndef __ASSEMBLY__ > >> typedef unsigned long xen_pfn_t; > >> @@ -66,7 +67,7 @@ typedef unsigned long xen_pfn_t; > >>=20 > >> /* Maximum number of virtual CPUs in multi-processor guests. */ > >> /* WARNING: before changing this, check that shared_info fits on a pag= e */ > >> -#define MAX_VIRT_CPUS 64 > >> +#define XEN_LEGACY_MAX_VCPUS 64 > >>=20 > >=20 > > I think this is breaking the i386 XEN build: > >=20 > > cc -c -O -pipe -std=3Dc99 -g -Wall -Wredundant-decls -Wnested-externs= -Wstrict-prototypes > > -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno= -pointer-sign > > -fformat-extensions -Wmissing-include-dirs -fdiagnostics-show-option > > -Wno-error-tautological-compare -Wno-error-empty-body -Wno-error-parent= heses-equality > > -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/li= bfdt -D_KERNEL > > -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -mno-aes -mno-avx -= mno-mmx -mno-sse > > -msoft-float -ffreestanding -fstack-protector -Werror /src/sys/xen/evtc= hn/evtchn.c > > /src/sys/xen/evtchn/evtchn.c:149:38: error: use of undeclared identifie= r 'MAX_VIRT_CPUS' > > static unsigned long > > cpu_evtchn_mask[MAX_VIRT_CPUS][NR_EVENT_CHANNELS/LONG_BIT]; > > ^ > > /src/sys/xen/evtchn/evtchn.c:1001:22: error: use of undeclared > > identifier 'MAX_VIRT_CPUS' > > for (cpu =3D 1; cpu < MAX_VIRT_CPUS; cpu++) { > > ^ > > 2 errors generated. > > *** Error code 1 > >=20 > > Stop. > > make: stopped in /obj/i386.i386/src/sys/XEN > > *** Error code 1 > >=20 > >=20 > > Glen >=20 > Yup, because of the change to the x86 version of the header you reference= =2E I have a patch > ready and am just waiting on a build. >=20 Great, thanks! If I can do anything to build-test, please let me know. Glen --SHFFXbs3XlGSDX14 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iQEcBAEBCAAGBQJRvkhwAAoJEFJPDDeguUajH3gH/jpDsKghjNw4GICD/7txyiKd WCNuTamTlVfmGV3k/iw/+KZnKxLon/ESR9xcGkHI3K12CTLnOjnscNAAJ/l/e2aq hYFPTleHA8T6PLRfnA5rCeL38JKZT/19rvxNM4M412klPG77E4wa3JXdKzL8zQKK G4PpIsBhrZbQJHWK4HfBCYfA0gWJtwH90RSiYG19Sz3EqGOqAOJ4OKd+mdHsm3SZ cGBiOnwLZxEWSpbUIe0Hm4jsYzYN/jMu+q0+L6yDlvFPqZBVH2rfNVKABBtM27kA 58gkn194kCLXymsuQkTaamh3gybi755oxDX1Rj8sohUPu83DCvcIrNZ/iV6FPyk= =OTG8 -----END PGP SIGNATURE----- --SHFFXbs3XlGSDX14-- From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 00:39:24 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id AB99FCB5; Mon, 17 Jun 2013 00:39:24 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 9C99B10C1; Mon, 17 Jun 2013 00:39:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5H0dOhV046203; Mon, 17 Jun 2013 00:39:24 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5H0dOPT046202; Mon, 17 Jun 2013 00:39:24 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201306170039.r5H0dOPT046202@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Mon, 17 Jun 2013 00:39:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251823 - head/sys/fs/ext2fs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 00:39:24 -0000 Author: pfg Date: Mon Jun 17 00:39:23 2013 New Revision: 251823 URL: http://svnweb.freebsd.org/changeset/base/251823 Log: Rename remaining DIAGNOSTIC to INVARIANTS. MFC after: 3 days Modified: head/sys/fs/ext2fs/ext2_bmap.c Modified: head/sys/fs/ext2fs/ext2_bmap.c ============================================================================== --- head/sys/fs/ext2fs/ext2_bmap.c Sun Jun 16 21:49:37 2013 (r251822) +++ head/sys/fs/ext2fs/ext2_bmap.c Mon Jun 17 00:39:23 2013 (r251823) @@ -172,7 +172,7 @@ ext2_bmaparray(struct vnode *vp, int32_t bp = getblk(vp, metalbn, bsize, 0, 0, 0); if ((bp->b_flags & B_CACHE) == 0) { -#ifdef DIAGNOSTIC +#ifdef INVARIANTS if (!daddr) panic("ext2_bmaparray: indirect block not in cache"); #endif From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 01:43:08 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 82B00880; Mon, 17 Jun 2013 01:43:08 +0000 (UTC) (envelope-from gibbs@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 645281285; Mon, 17 Jun 2013 01:43:08 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5H1h8Hn067308; Mon, 17 Jun 2013 01:43:08 GMT (envelope-from gibbs@svn.freebsd.org) Received: (from gibbs@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5H1h74v067301; Mon, 17 Jun 2013 01:43:07 GMT (envelope-from gibbs@svn.freebsd.org) Message-Id: <201306170143.r5H1h74v067301@svn.freebsd.org> From: "Justin T. Gibbs" Date: Mon, 17 Jun 2013 01:43:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251824 - in head/sys: i386/include/xen i386/xen xen/evtchn xen/interface/foreign X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 01:43:08 -0000 Author: gibbs Date: Mon Jun 17 01:43:07 2013 New Revision: 251824 URL: http://svnweb.freebsd.org/changeset/base/251824 Log: Adjust i386 Xen PV support for updated Xen interface files. sys/i386/include/xen/xenvar.h: sys/i386/xen/xen_machdep.c: sys/xen/interface/foreign/structs.py: sys/xen/evtchn/evtchn.c: MAX_VIRT_CPUS => XEN_LEGACY_MAX_VCPUS Submitted by: Roger Pau Monné Reviewed by: gibbs Modified: head/sys/i386/include/xen/xenvar.h head/sys/i386/xen/xen_machdep.c head/sys/xen/evtchn/evtchn.c head/sys/xen/interface/foreign/structs.py Modified: head/sys/i386/include/xen/xenvar.h ============================================================================== --- head/sys/i386/include/xen/xenvar.h Mon Jun 17 00:39:23 2013 (r251823) +++ head/sys/i386/include/xen/xenvar.h Mon Jun 17 01:43:07 2013 (r251824) @@ -93,7 +93,7 @@ extern xen_pfn_t *xen_machine_phys; void xpq_init(void); #define BITS_PER_LONG 32 -#define NR_CPUS MAX_VIRT_CPUS +#define NR_CPUS XEN_LEGACY_MAX_VCPUS #define BITS_TO_LONGS(bits) \ (((bits)+BITS_PER_LONG-1)/BITS_PER_LONG) Modified: head/sys/i386/xen/xen_machdep.c ============================================================================== --- head/sys/i386/xen/xen_machdep.c Mon Jun 17 00:39:23 2013 (r251823) +++ head/sys/i386/xen/xen_machdep.c Mon Jun 17 01:43:07 2013 (r251824) @@ -203,11 +203,11 @@ struct mmu_log { #ifdef SMP /* per-cpu queues and indices */ #ifdef INVARIANTS -static struct mmu_log xpq_queue_log[MAX_VIRT_CPUS][XPQUEUE_SIZE]; +static struct mmu_log xpq_queue_log[XEN_LEGACY_MAX_VCPUS][XPQUEUE_SIZE]; #endif -static int xpq_idx[MAX_VIRT_CPUS]; -static mmu_update_t xpq_queue[MAX_VIRT_CPUS][XPQUEUE_SIZE]; +static int xpq_idx[XEN_LEGACY_MAX_VCPUS]; +static mmu_update_t xpq_queue[XEN_LEGACY_MAX_VCPUS][XPQUEUE_SIZE]; #define XPQ_QUEUE_LOG xpq_queue_log[vcpu] #define XPQ_QUEUE xpq_queue[vcpu] Modified: head/sys/xen/evtchn/evtchn.c ============================================================================== --- head/sys/xen/evtchn/evtchn.c Mon Jun 17 00:39:23 2013 (r251823) +++ head/sys/xen/evtchn/evtchn.c Mon Jun 17 01:43:07 2013 (r251824) @@ -146,7 +146,7 @@ static int irq_bindcount[NR_IRQS]; #ifdef SMP static uint8_t cpu_evtchn[NR_EVENT_CHANNELS]; -static unsigned long cpu_evtchn_mask[MAX_VIRT_CPUS][NR_EVENT_CHANNELS/LONG_BIT]; +static unsigned long cpu_evtchn_mask[XEN_LEGACY_MAX_VCPUS][NR_EVENT_CHANNELS/LONG_BIT]; #define active_evtchns(cpu,sh,idx) \ ((sh)->evtchn_pending[idx] & \ @@ -998,7 +998,7 @@ void irq_resume(void) } /* Secondary CPUs must have no VIRQ or IPI bindings. */ - for (cpu = 1; cpu < MAX_VIRT_CPUS; cpu++) { + for (cpu = 1; cpu < XEN_LEGACY_MAX_VCPUS; cpu++) { for (virq = 0; virq < NR_VIRQS; virq++) { KASSERT(pcpu_find(cpu)->pc_virq_to_irq[virq] == -1, ("virq_to_irq inconsistent")); Modified: head/sys/xen/interface/foreign/structs.py ============================================================================== --- head/sys/xen/interface/foreign/structs.py Mon Jun 17 00:39:23 2013 (r251823) +++ head/sys/xen/interface/foreign/structs.py Mon Jun 17 01:43:07 2013 (r251824) @@ -53,6 +53,6 @@ defines = [ "__i386__", # all archs "xen_pfn_to_cr3", - "MAX_VIRT_CPUS", + "XEN_LEGACY_MAX_VCPUS", "MAX_GUEST_CMDLINE" ]; From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 02:16:38 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 39C16C56; Mon, 17 Jun 2013 02:16:38 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: from mail-qc0-x22e.google.com (mail-qc0-x22e.google.com [IPv6:2607:f8b0:400d:c01::22e]) by mx1.freebsd.org (Postfix) with ESMTP id BFBD11344; Mon, 17 Jun 2013 02:16:37 +0000 (UTC) Received: by mail-qc0-f174.google.com with SMTP id m15so1327692qcq.33 for ; Sun, 16 Jun 2013 19:16:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=O7M6+Mb5stv8BBN43Tg6PQvFAHW7IiFEKjFkPh8eYAg=; b=UBTb9RIWCD2dMI8vg8/p77kGCtqwjneC/4tv2K6SXZq0Pvyxk+6lt/NXbXvAhELq2s T0yTvcEUb11GNLQoDM+mIbWn6NNebArmhP22MgPYrY8Mvfz2JLs3EsIiJG2PyBeMfm+I 6XhJF07C/0CeNryckaZ5JJlYJMVu+aAoHbfXF2i4LKrDR3xAYdDSbZpPsBllFnO7PPlZ sjxOaE3ZFCRbL2EeAs1/cYJP6wljK+npNK2jwhk2CVne35oHLM+5VWc71TQEHvoNLdkj YXK65traJa6H3PQ6Sz0Y62zcBJ7q0C3hA+JCQAxRoeL9kqrvwmC7LwWAI81uS+mPPcag gfNg== MIME-Version: 1.0 X-Received: by 10.229.139.4 with SMTP id c4mr5145805qcu.118.1371435397249; Sun, 16 Jun 2013 19:16:37 -0700 (PDT) Sender: carpeddiem@gmail.com Received: by 10.224.72.206 with HTTP; Sun, 16 Jun 2013 19:16:37 -0700 (PDT) In-Reply-To: <51BCF756.9010204@daemonic.se> References: <201306152129.r5FLTl0T031625@svn.freebsd.org> <51BCF756.9010204@daemonic.se> Date: Sun, 16 Jun 2013 22:16:37 -0400 X-Google-Sender-Auth: ImGMyetHEJTOETSwl-4KHyq2ysY Message-ID: Subject: Re: svn commit: r251795 - head/share/man/man5 From: Ed Maste To: Niclas Zeising Content-Type: text/plain; charset=ISO-8859-1 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Eitan Adler X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 02:16:38 -0000 On 15 June 2013 19:23, Niclas Zeising wrote: > On 2013-06-15 23:29, Eitan Adler wrote: >> Author: eadler >> Date: Sat Jun 15 21:29:47 2013 >> New Revision: 251795 >> URL: http://svnweb.freebsd.org/changeset/base/251795 >> >> Log: >> Regenerate after CVS removal (and it seems other missed changes) >> >> @@ -701,9 +698,9 @@ and >> On amd64, set to not build 32-bit library set and a >> .Nm ld-elf32.so.1 >> runtime linker. >> -.It Va WITHOUT_LIBCPLUSPLUS >> -.\" from FreeBSD: head/tools/build/options/WITHOUT_LIBCPLUSPLUS 246262 2013-02-02 22:42:46Z dim >> -Set to avoid building libcxxrt and libc++. >> +.It Va WITH_LIBCPLUSPLUS >> +.\" from FreeBSD: head/tools/build/options/WITH_LIBCPLUSPLUS 228082 2011-11-28 17:56:46Z dim >> +Set to build libcxxrt and libc++. >> .It Va WITHOUT_LIBPTHREAD >> .\" from FreeBSD: head/tools/build/options/WITHOUT_LIBPTHREAD 188848 2009-02-20 11:09:55Z mtm >> Set to not build the > > This part seems really strange. Can you please double check that it is > as intended? The build defaults to WITH_LIBCPLUSPLUS if the compiler supports c++11 (clang) and and WITHOUT_LIBCPLUSPLUS otherwise. It looks like makeman's use is probably picking up the build host's compiler, resulting in WITHOUT_ on 9.x and WITH_ on -current. From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 03:32:28 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D9BCABB1; Mon, 17 Jun 2013 03:32:28 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B284618BC; Mon, 17 Jun 2013 03:32:28 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5H3WSu8003165; Mon, 17 Jun 2013 03:32:28 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5H3WRm7003160; Mon, 17 Jun 2013 03:32:27 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201306170332.r5H3WRm7003160@svn.freebsd.org> From: Xin LI Date: Mon, 17 Jun 2013 03:32:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251825 - in 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-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 03:32:28 -0000 Author: delphij Date: Mon Jun 17 03:32:27 2013 New Revision: 251825 URL: http://svnweb.freebsd.org/changeset/base/251825 Log: Remove vfs_mount(9), it have been died since 2004. Noticed by: git via alfred MFC after: 2 weeks Deleted: head/share/man/man9/vfs_mount.9 Modified: head/ObsoleteFiles.inc head/share/man/man9/Makefile head/share/man/man9/kernel_mount.9 head/share/man/man9/vfsconf.9 Modified: head/ObsoleteFiles.inc ============================================================================== --- head/ObsoleteFiles.inc Mon Jun 17 01:43:07 2013 (r251824) +++ head/ObsoleteFiles.inc Mon Jun 17 03:32:27 2013 (r251825) @@ -38,6 +38,8 @@ # xargs -n1 | sort | uniq -d; # done +# 20130616: vfs_mounted.9 removed +OLD_FILES+=usr/share/man/man9/vfs_mount.9.gz # 20130614: remove CVS from base OLD_FILES+=usr/bin/cvs OLD_FILES+=usr/bin/cvsbug Modified: head/share/man/man9/Makefile ============================================================================== --- head/share/man/man9/Makefile Mon Jun 17 01:43:07 2013 (r251824) +++ head/share/man/man9/Makefile Mon Jun 17 03:32:27 2013 (r251825) @@ -282,7 +282,6 @@ MAN= accept_filter.9 \ vfs_getopt.9 \ vfs_getvfs.9 \ VFS_MOUNT.9 \ - vfs_mount.9 \ vfs_mountedfrom.9 \ VFS_QUOTACTL.9 \ VFS_ROOT.9 \ Modified: head/share/man/man9/kernel_mount.9 ============================================================================== --- head/share/man/man9/kernel_mount.9 Mon Jun 17 01:43:07 2013 (r251824) +++ head/share/man/man9/kernel_mount.9 Mon Jun 17 03:32:27 2013 (r251825) @@ -195,7 +195,6 @@ must come in pairs, e.g., .Sh SEE ALSO .Xr VFS 9 , .Xr VFS_MOUNT 9 , -.Xr vfs_mount 9 .Sh HISTORY The .Fn kernel_mount Modified: head/share/man/man9/vfsconf.9 ============================================================================== --- head/share/man/man9/vfsconf.9 Mon Jun 17 01:43:07 2013 (r251824) +++ head/share/man/man9/vfsconf.9 Mon Jun 17 03:32:27 2013 (r251825) @@ -26,7 +26,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 21, 2001 +.Dd June 16, 2013 .Dt VFSCONF 9 .Os .Sh NAME @@ -58,7 +58,7 @@ struct vfsconf { .Ed .Pp When a new file system is mounted, -.Xr vfs_mount 9 +.Xr mount 2 does a lookup of the .Vt vfsconf structure by its name, and if it is not already registered, @@ -143,7 +143,7 @@ or .Fn vfs_unregister , whatever the case. .Sh SEE ALSO -.Xr vfs_mount 9 , +.Xr mount 2 , .Xr vfs_rootmountalloc 9 , .Xr VFS_SET 9 .Sh AUTHORS From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 03:43:48 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 94117E8A; Mon, 17 Jun 2013 03:43:48 +0000 (UTC) (envelope-from jeff@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 862991915; Mon, 17 Jun 2013 03:43:48 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5H3hmJ8006364; Mon, 17 Jun 2013 03:43:48 GMT (envelope-from jeff@svn.freebsd.org) Received: (from jeff@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5H3hmtq006361; Mon, 17 Jun 2013 03:43:48 GMT (envelope-from jeff@svn.freebsd.org) Message-Id: <201306170343.r5H3hmtq006361@svn.freebsd.org> From: Jeff Roberson Date: Mon, 17 Jun 2013 03:43:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251826 - head/sys/vm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 03:43:48 -0000 Author: jeff Date: Mon Jun 17 03:43:47 2013 New Revision: 251826 URL: http://svnweb.freebsd.org/changeset/base/251826 Log: - Add a new UMA API: uma_zcache_create(). This makes a zone without any backing memory that is only a container for per-cpu caches of arbitrary pointer items. These zones have no kegs. - Convert the regular keg based allocator to use the new import/release functions. - Move some stats to be atomics since they would require excessive zone locking/unlocking with the new import/release paradigm. Make zone_free_item simpler now that callers can manage more stats. - Check for these cache-only zones in the public APIs and debugging code by checking zone_first_keg() against NULL. Sponsored by: EMC / Isilong Storage Division Modified: head/sys/vm/uma.h head/sys/vm/uma_core.c head/sys/vm/uma_int.h Modified: head/sys/vm/uma.h ============================================================================== --- head/sys/vm/uma.h Mon Jun 17 03:32:27 2013 (r251825) +++ head/sys/vm/uma.h Mon Jun 17 03:43:47 2013 (r251826) @@ -124,6 +124,16 @@ typedef int (*uma_init)(void *mem, int s typedef void (*uma_fini)(void *mem, int size); /* + * Import new memory into a cache zone. + */ +typedef int (*uma_import)(void *arg, void **store, int count, int flags); + +/* + * Free memory from a cache zone. + */ +typedef void (*uma_release)(void *arg, void **store, int count); + +/* * What's the difference between initializing and constructing? * * The item is initialized when it is cached, and this is the state that the @@ -216,6 +226,19 @@ uma_zone_t uma_zsecond_create(char *name int uma_zsecond_add(uma_zone_t zone, uma_zone_t master); /* + * Create cache-only zones. + * + * This allows uma's per-cpu cache facilities to handle arbitrary + * pointers. Consumers must specify the import and release functions to + * fill and destroy caches. UMA does not allocate any memory for these + * zones. The 'arg' parameter is passed to import/release and is caller + * specific. + */ +uma_zone_t uma_zcache_create(char *name, uma_ctor ctor, uma_dtor dtor, + uma_init zinit, uma_fini zfini, uma_import zimport, + uma_release zrelease, void *arg, int flags); + +/* * Definitions for uma_zcreate flags * * These flags share space with UMA_ZFLAGs in uma_int.h. Be careful not to Modified: head/sys/vm/uma_core.c ============================================================================== --- head/sys/vm/uma_core.c Mon Jun 17 03:32:27 2013 (r251825) +++ head/sys/vm/uma_core.c Mon Jun 17 03:43:47 2013 (r251826) @@ -131,14 +131,14 @@ static int bucketdisable = 1; static LIST_HEAD(,uma_keg) uma_kegs = LIST_HEAD_INITIALIZER(uma_kegs); /* This mutex protects the keg list */ -static struct mtx uma_mtx; +static struct mtx_padalign uma_mtx; /* Linked list of boot time pages */ static LIST_HEAD(,uma_slab) uma_boot_pages = LIST_HEAD_INITIALIZER(uma_boot_pages); /* This mutex protects the boot time pages list */ -static struct mtx uma_boot_pages_mtx; +static struct mtx_padalign uma_boot_pages_mtx; /* Is the VM done starting up? */ static int booted = 0; @@ -172,6 +172,9 @@ struct uma_zctor_args { uma_dtor dtor; uma_init uminit; uma_fini fini; + uma_import import; + uma_release release; + void *arg; uma_keg_t keg; int align; uint32_t flags; @@ -216,9 +219,6 @@ static uint8_t bucket_size[BUCKET_ZONES] */ enum zfreeskip { SKIP_NONE = 0, SKIP_DTOR, SKIP_FINI }; -#define ZFREE_STATFAIL 0x00000001 /* Update zone failure statistic. */ -#define ZFREE_STATFREE 0x00000002 /* Update zone free statistic. */ - /* Prototypes.. */ static void *noobj_alloc(uma_zone_t, int, uint8_t *, int); @@ -244,8 +244,7 @@ static void hash_free(struct uma_hash *h static void uma_timeout(void *); static void uma_startup3(void); static void *zone_alloc_item(uma_zone_t, void *, int); -static void zone_free_item(uma_zone_t, void *, void *, enum zfreeskip, - int); +static void zone_free_item(uma_zone_t, void *, void *, enum zfreeskip); static void bucket_enable(void); static void bucket_init(void); static uma_bucket_t bucket_alloc(int, int); @@ -254,11 +253,14 @@ static void bucket_zone_drain(void); static int zone_alloc_bucket(uma_zone_t zone, int flags); static uma_slab_t zone_fetch_slab(uma_zone_t zone, uma_keg_t last, int flags); static uma_slab_t zone_fetch_slab_multi(uma_zone_t zone, uma_keg_t last, int flags); -static void *slab_alloc_item(uma_zone_t zone, uma_slab_t slab); +static void *slab_alloc_item(uma_keg_t keg, uma_slab_t slab); +static void slab_free_item(uma_keg_t keg, uma_slab_t slab, void *item); static uma_keg_t uma_kcreate(uma_zone_t zone, size_t size, uma_init uminit, uma_fini fini, int align, uint32_t flags); static inline void zone_relock(uma_zone_t zone, uma_keg_t keg); static inline void keg_relock(uma_keg_t keg, uma_zone_t zone); +static int zone_import(uma_zone_t zone, void **bucket, int max, int flags); +static void zone_release(uma_zone_t zone, void **bucket, int cnt); void uma_print_zone(uma_zone_t); void uma_print_stats(void); @@ -363,8 +365,7 @@ bucket_free(uma_bucket_t bucket) struct uma_bucket_zone *ubz; ubz = bucket_zone_lookup(bucket->ub_entries); - zone_free_item(ubz->ubz_zone, bucket, NULL, SKIP_NONE, - ZFREE_STATFREE); + zone_free_item(ubz->ubz_zone, bucket, NULL, SKIP_NONE); } static void @@ -388,13 +389,6 @@ zone_log_warning(uma_zone_t zone) printf("[zone: %s] %s\n", zone->uz_name, zone->uz_warning); } -static inline uma_keg_t -zone_first_keg(uma_zone_t zone) -{ - - return (LIST_FIRST(&zone->uz_kegs)->kl_keg); -} - static void zone_foreach_keg(uma_zone_t zone, void (*kegfn)(uma_keg_t)) { @@ -579,8 +573,7 @@ hash_free(struct uma_hash *hash) if (hash->uh_slab_hash == NULL) return; if (hash->uh_hashsize == UMA_HASH_SIZE_INIT) - zone_free_item(hashzone, - hash->uh_slab_hash, NULL, SKIP_NONE, ZFREE_STATFREE); + zone_free_item(hashzone, hash->uh_slab_hash, NULL, SKIP_NONE); else free(hash->uh_slab_hash, M_UMAHASH); } @@ -599,21 +592,16 @@ hash_free(struct uma_hash *hash) static void bucket_drain(uma_zone_t zone, uma_bucket_t bucket) { - void *item; + int i; if (bucket == NULL) return; - while (bucket->ub_cnt > 0) { - bucket->ub_cnt--; - item = bucket->ub_bucket[bucket->ub_cnt]; -#ifdef INVARIANTS - bucket->ub_bucket[bucket->ub_cnt] = NULL; - KASSERT(item != NULL, - ("bucket_drain: botched ptr, item is NULL")); -#endif - zone_free_item(zone, item, NULL, SKIP_DTOR, 0); - } + if (zone->uz_fini) + for (i = 0; i < bucket->ub_cnt; i++) + zone->uz_fini(bucket->ub_bucket[i], zone->uz_size); + zone->uz_release(zone->uz_arg, bucket->ub_bucket, bucket->ub_cnt); + bucket->ub_cnt = 0; } /* @@ -767,8 +755,7 @@ finished: obj); } if (keg->uk_flags & UMA_ZONE_OFFPAGE) - zone_free_item(keg->uk_slabzone, slab, NULL, - SKIP_NONE, ZFREE_STATFREE); + zone_free_item(keg->uk_slabzone, slab, NULL, SKIP_NONE); #ifdef UMA_DEBUG printf("%s: Returning %d bytes.\n", keg->uk_name, PAGE_SIZE * keg->uk_ppera); @@ -842,7 +829,7 @@ keg_alloc_slab(uma_keg_t keg, uma_zone_t slab = NULL; #ifdef UMA_DEBUG - printf("slab_zalloc: Allocating a new slab for %s\n", keg->uk_name); + printf("alloc_slab: Allocating a new slab for %s\n", keg->uk_name); #endif allocf = keg->uk_allocf; KEG_UNLOCK(keg); @@ -874,8 +861,7 @@ keg_alloc_slab(uma_keg_t keg, uma_zone_t mem = allocf(zone, keg->uk_ppera * PAGE_SIZE, &flags, wait); if (mem == NULL) { if (keg->uk_flags & UMA_ZONE_OFFPAGE) - zone_free_item(keg->uk_slabzone, slab, NULL, - SKIP_NONE, ZFREE_STATFREE); + zone_free_item(keg->uk_slabzone, slab, NULL, SKIP_NONE); KEG_LOCK(keg); return (NULL); } @@ -929,7 +915,7 @@ keg_alloc_slab(uma_keg_t keg, uma_zone_t } if (keg->uk_flags & UMA_ZONE_OFFPAGE) zone_free_item(keg->uk_slabzone, slab, - NULL, SKIP_NONE, ZFREE_STATFREE); + NULL, SKIP_NONE); keg->uk_freef(mem, PAGE_SIZE * keg->uk_ppera, flags); KEG_LOCK(keg); @@ -1483,6 +1469,24 @@ zone_ctor(void *mem, int size, void *uda timevalclear(&zone->uz_ratecheck); keg = arg->keg; + /* + * This is a pure cache zone, no kegs. + */ + if (arg->import) { + zone->uz_import = arg->import; + zone->uz_release = arg->release; + zone->uz_arg = arg->arg; + zone->uz_count = BUCKET_MAX; + return (0); + } + + /* + * Use the regular zone/keg/slab allocator. + */ + zone->uz_import = (uma_import)zone_import; + zone->uz_release = (uma_release)zone_release; + zone->uz_arg = zone; + if (arg->flags & UMA_ZONE_SECONDARY) { KASSERT(arg->keg != NULL, ("Secondary zone on zero'd keg")); zone->uz_init = arg->uminit; @@ -1519,6 +1523,7 @@ zone_ctor(void *mem, int size, void *uda if (error) return (error); } + /* * Link in the first keg. */ @@ -1616,12 +1621,11 @@ zone_dtor(void *arg, int size, void *uda /* * We only destroy kegs from non secondary zones. */ - if ((zone->uz_flags & UMA_ZONE_SECONDARY) == 0) { + if (keg != NULL && (zone->uz_flags & UMA_ZONE_SECONDARY) == 0) { mtx_lock(&uma_mtx); LIST_REMOVE(keg, uk_link); mtx_unlock(&uma_mtx); - zone_free_item(kegs, keg, NULL, SKIP_NONE, - ZFREE_STATFREE); + zone_free_item(kegs, keg, NULL, SKIP_NONE); } } @@ -1665,6 +1669,7 @@ uma_startup(void *bootmem, int boot_page mtx_init(&uma_mtx, "UMA lock", NULL, MTX_DEF); /* "manually" create the initial zone */ + memset(&args, 0, sizeof(args)); args.name = "UMA Kegs"; args.size = sizeof(struct uma_keg); args.ctor = keg_ctor; @@ -1805,6 +1810,7 @@ uma_zcreate(const char *name, size_t siz struct uma_zctor_args args; /* This stuff is essential for the zone ctor */ + memset(&args, 0, sizeof(args)); args.name = name; args.size = size; args.ctor = ctor; @@ -1827,6 +1833,7 @@ uma_zsecond_create(char *name, uma_ctor uma_keg_t keg; keg = zone_first_keg(master); + memset(&args, 0, sizeof(args)); args.name = name; args.size = keg->uk_size; args.ctor = ctor; @@ -1841,6 +1848,30 @@ uma_zsecond_create(char *name, uma_ctor return (zone_alloc_item(zones, &args, M_WAITOK)); } +/* See uma.h */ +uma_zone_t +uma_zcache_create(char *name, uma_ctor ctor, uma_dtor dtor, uma_init zinit, + uma_fini zfini, uma_import zimport, uma_release zrelease, + void *arg, int flags) +{ + struct uma_zctor_args args; + + memset(&args, 0, sizeof(args)); + args.name = name; + args.size = 0; + args.ctor = ctor; + args.dtor = dtor; + args.uminit = zinit; + args.fini = zfini; + args.import = zimport; + args.release = zrelease; + args.arg = arg; + args.align = 0; + args.flags = flags; + + return (zone_alloc_item(zones, &args, M_WAITOK)); +} + static void zone_lock_pair(uma_zone_t a, uma_zone_t b) { @@ -1932,7 +1963,7 @@ void uma_zdestroy(uma_zone_t zone) { - zone_free_item(zones, zone, NULL, SKIP_NONE, ZFREE_STATFREE); + zone_free_item(zones, zone, NULL, SKIP_NONE); } /* See uma.h */ @@ -2011,9 +2042,9 @@ zalloc_start: if (zone->uz_ctor != NULL) { if (zone->uz_ctor(item, zone->uz_size, udata, flags) != 0) { + atomic_add_long(&zone->uz_fails, 1); zone_free_item(zone, item, udata, - SKIP_DTOR, ZFREE_STATFAIL | - ZFREE_STATFREE); + SKIP_DTOR); return (NULL); } } @@ -2069,9 +2100,9 @@ zalloc_start: } /* Since we have locked the zone we may as well send back our stats */ - zone->uz_allocs += cache->uc_allocs; + atomic_add_long(&zone->uz_allocs, cache->uc_allocs); + atomic_add_long(&zone->uz_frees, cache->uc_frees); cache->uc_allocs = 0; - zone->uz_frees += cache->uc_frees; cache->uc_frees = 0; /* Our old one is now a free bucket */ @@ -2319,13 +2350,12 @@ zone_fetch_slab_multi(uma_zone_t zone, u } static void * -slab_alloc_item(uma_zone_t zone, uma_slab_t slab) +slab_alloc_item(uma_keg_t keg, uma_slab_t slab) { - uma_keg_t keg; void *item; uint8_t freei; - keg = slab->us_keg; + MPASS(keg == slab->us_keg); mtx_assert(&keg->uk_lock, MA_OWNED); freei = BIT_FFS(SLAB_SETSIZE, &slab->us_free) - 1; @@ -2344,36 +2374,41 @@ slab_alloc_item(uma_zone_t zone, uma_sla } static int -zone_alloc_bucket(uma_zone_t zone, int flags) +zone_import(uma_zone_t zone, void **bucket, int max, int flags) { - uma_bucket_t bucket; uma_slab_t slab; uma_keg_t keg; - int16_t saved; - int max, origflags = flags; - - /* - * Try this zone's free list first so we don't allocate extra buckets. - */ - if ((bucket = LIST_FIRST(&zone->uz_free_bucket)) != NULL) { - KASSERT(bucket->ub_cnt == 0, - ("zone_alloc_bucket: Bucket on free list is not empty.")); - LIST_REMOVE(bucket, ub_link); - } else { - int bflags; + int i; - bflags = (flags & ~M_ZERO); - if (zone->uz_flags & UMA_ZFLAG_CACHEONLY) - bflags |= M_NOVM; + ZONE_LOCK(zone); + /* Try to keep the buckets totally full */ + slab = NULL; + keg = NULL; + for (i = 0; i < max; ) { + if ((slab = zone->uz_slab(zone, keg, flags)) == NULL) + break; + keg = slab->us_keg; + while (slab->us_freecount && i < max) + bucket[i++] = slab_alloc_item(keg, slab); - ZONE_UNLOCK(zone); - bucket = bucket_alloc(zone->uz_count, bflags); - ZONE_LOCK(zone); + /* Don't block on the next fill */ + flags &= ~M_WAITOK; + flags |= M_NOWAIT; } + if (slab != NULL) + KEG_UNLOCK(keg); + else + ZONE_UNLOCK(zone); - if (bucket == NULL) { - return (0); - } + return i; +} + +static int +zone_alloc_bucket(uma_zone_t zone, int flags) +{ + uma_bucket_t bucket; + int bflags; + int max; #ifdef SMP /* @@ -2382,79 +2417,75 @@ zone_alloc_bucket(uma_zone_t zone, int f * is done so that we don't allocate more memory than we really need. */ if (zone->uz_fills >= mp_ncpus) - goto done; + return (0); #endif zone->uz_fills++; + max = zone->uz_count; - max = MIN(bucket->ub_entries, zone->uz_count); - /* Try to keep the buckets totally full */ - saved = bucket->ub_cnt; - slab = NULL; - keg = NULL; - while (bucket->ub_cnt < max && - (slab = zone->uz_slab(zone, keg, flags)) != NULL) { - keg = slab->us_keg; - while (slab->us_freecount && bucket->ub_cnt < max) { - bucket->ub_bucket[bucket->ub_cnt++] = - slab_alloc_item(zone, slab); - } - - /* Don't block on the next fill */ - flags |= M_NOWAIT; + /* + * Try this zone's free list first so we don't allocate extra buckets. + */ + if ((bucket = LIST_FIRST(&zone->uz_free_bucket)) != NULL) { + KASSERT(bucket->ub_cnt == 0, + ("zone_alloc_bucket: Bucket on free list is not empty.")); + LIST_REMOVE(bucket, ub_link); + ZONE_UNLOCK(zone); + } else { + bflags = (flags & ~M_ZERO); + if (zone->uz_flags & UMA_ZFLAG_CACHEONLY) + bflags |= M_NOVM; + ZONE_UNLOCK(zone); + bucket = bucket_alloc(zone->uz_count, bflags); + if (bucket == NULL) + goto out; } - if (slab) - zone_relock(zone, keg); + + max = MIN(bucket->ub_entries, max); + bucket->ub_cnt = zone->uz_import(zone->uz_arg, bucket->ub_bucket, + max, flags); /* - * We unlock here because we need to call the zone's init. - * It should be safe to unlock because the slab dealt with - * above is already on the appropriate list within the keg - * and the bucket we filled is not yet on any list, so we - * own it. + * Initialize the memory if necessary. */ - if (zone->uz_init != NULL) { + if (bucket->ub_cnt != 0 && zone->uz_init != NULL) { int i; - ZONE_UNLOCK(zone); - for (i = saved; i < bucket->ub_cnt; i++) + for (i = 0; i < bucket->ub_cnt; i++) if (zone->uz_init(bucket->ub_bucket[i], zone->uz_size, - origflags) != 0) + flags) != 0) break; /* * If we couldn't initialize the whole bucket, put the * rest back onto the freelist. */ if (i != bucket->ub_cnt) { - int j; - - for (j = i; j < bucket->ub_cnt; j++) { - zone_free_item(zone, bucket->ub_bucket[j], - NULL, SKIP_FINI, 0); + zone->uz_release(zone->uz_arg, bucket->ub_bucket[i], + bucket->ub_cnt - i); #ifdef INVARIANTS - bucket->ub_bucket[j] = NULL; + bzero(&bucket->ub_bucket[i], + sizeof(void *) * (bucket->ub_cnt - i)); #endif - } bucket->ub_cnt = i; } - ZONE_LOCK(zone); } +out: + ZONE_LOCK(zone); zone->uz_fills--; - if (bucket->ub_cnt != 0) { + if (bucket != NULL && bucket->ub_cnt != 0) { LIST_INSERT_HEAD(&zone->uz_full_bucket, bucket, ub_link); return (1); } -#ifdef SMP -done: -#endif - bucket_free(bucket); + atomic_add_long(&zone->uz_fails, 1); + if (bucket != NULL) + bucket_free(bucket); return (0); } /* - * Allocates an item for an internal zone + * Allocates a single item from a zone. * * Arguments * zone The zone to alloc for. @@ -2469,7 +2500,6 @@ done: static void * zone_alloc_item(uma_zone_t zone, void *udata, int flags) { - uma_slab_t slab; void *item; item = NULL; @@ -2477,20 +2507,9 @@ zone_alloc_item(uma_zone_t zone, void *u #ifdef UMA_DEBUG_ALLOC printf("INTERNAL: Allocating one item from %s(%p)\n", zone->uz_name, zone); #endif - ZONE_LOCK(zone); - - slab = zone->uz_slab(zone, NULL, flags); - if (slab == NULL) { - zone->uz_fails++; - ZONE_UNLOCK(zone); - return (NULL); - } - - item = slab_alloc_item(zone, slab); - - zone_relock(zone, slab->us_keg); - zone->uz_allocs++; - ZONE_UNLOCK(zone); + if (zone->uz_import(zone->uz_arg, &item, 1, flags) != 1) + goto fail; + atomic_add_long(&zone->uz_allocs, 1); /* * We have to call both the zone's init (not the keg's init) @@ -2500,25 +2519,27 @@ zone_alloc_item(uma_zone_t zone, void *u */ if (zone->uz_init != NULL) { if (zone->uz_init(item, zone->uz_size, flags) != 0) { - zone_free_item(zone, item, udata, SKIP_FINI, - ZFREE_STATFAIL | ZFREE_STATFREE); - return (NULL); + zone_free_item(zone, item, udata, SKIP_FINI); + goto fail; } } if (zone->uz_ctor != NULL) { if (zone->uz_ctor(item, zone->uz_size, udata, flags) != 0) { - zone_free_item(zone, item, udata, SKIP_DTOR, - ZFREE_STATFAIL | ZFREE_STATFREE); - return (NULL); + zone_free_item(zone, item, udata, SKIP_DTOR); + goto fail; } } #ifdef INVARIANTS - uma_dbg_alloc(zone, slab, item); + uma_dbg_alloc(zone, NULL, item); #endif if (flags & M_ZERO) bzero(item, zone->uz_size); return (item); + +fail: + atomic_add_long(&zone->uz_fails, 1); + return (NULL); } /* See uma.h */ @@ -2648,9 +2669,9 @@ zfree_start: } /* Since we have locked the zone we may as well send back our stats */ - zone->uz_allocs += cache->uc_allocs; + atomic_add_long(&zone->uz_allocs, cache->uc_allocs); + atomic_add_long(&zone->uz_frees, cache->uc_frees); cache->uc_allocs = 0; - zone->uz_frees += cache->uc_frees; cache->uc_frees = 0; bucket = cache->uc_freebucket; @@ -2699,69 +2720,17 @@ zfree_start: * If nothing else caught this, we'll just do an internal free. */ zfree_internal: - zone_free_item(zone, item, udata, SKIP_DTOR, ZFREE_STATFREE); + zone_free_item(zone, item, udata, SKIP_DTOR); return; } -/* - * Frees an item to an INTERNAL zone or allocates a free bucket - * - * Arguments: - * zone The zone to free to - * item The item we're freeing - * udata User supplied data for the dtor - * skip Skip dtors and finis - */ static void -zone_free_item(uma_zone_t zone, void *item, void *udata, - enum zfreeskip skip, int flags) +slab_free_item(uma_keg_t keg, uma_slab_t slab, void *item) { - uma_slab_t slab; - uma_keg_t keg; - uint8_t *mem; uint8_t freei; - int clearfull; -#ifdef INVARIANTS - if (skip == SKIP_NONE) { - if (zone->uz_flags & UMA_ZONE_MALLOC) - uma_dbg_free(zone, udata, item); - else - uma_dbg_free(zone, NULL, item); - } -#endif - if (skip < SKIP_DTOR && zone->uz_dtor) - zone->uz_dtor(item, zone->uz_size, udata); - - if (skip < SKIP_FINI && zone->uz_fini) - zone->uz_fini(item, zone->uz_size); - - ZONE_LOCK(zone); - - if (flags & ZFREE_STATFAIL) - zone->uz_fails++; - if (flags & ZFREE_STATFREE) - zone->uz_frees++; - - if (!(zone->uz_flags & UMA_ZONE_VTOSLAB)) { - mem = (uint8_t *)((uintptr_t)item & (~UMA_SLAB_MASK)); - keg = zone_first_keg(zone); /* Must only be one. */ - if (zone->uz_flags & UMA_ZONE_HASH) { - slab = hash_sfind(&keg->uk_hash, mem); - } else { - mem += keg->uk_pgoff; - slab = (uma_slab_t)mem; - } - } else { - /* This prevents redundant lookups via free(). */ - if ((zone->uz_flags & UMA_ZONE_MALLOC) && udata != NULL) - slab = (uma_slab_t)udata; - else - slab = vtoslab((vm_offset_t)item); - keg = slab->us_keg; - keg_relock(keg, zone); - } + mtx_assert(&keg->uk_lock, MA_OWNED); MPASS(keg == slab->us_keg); /* Do we need to remove from any lists? */ @@ -2780,31 +2749,94 @@ zone_free_item(uma_zone_t zone, void *it /* Keg statistics. */ keg->uk_free++; +} + +static void +zone_release(uma_zone_t zone, void **bucket, int cnt) +{ + void *item; + uma_slab_t slab; + uma_keg_t keg; + uint8_t *mem; + int clearfull; + int i; clearfull = 0; - if (keg->uk_flags & UMA_ZFLAG_FULL) { - if (keg->uk_pages < keg->uk_maxpages) { - keg->uk_flags &= ~UMA_ZFLAG_FULL; - clearfull = 1; + ZONE_LOCK(zone); + keg = zone_first_keg(zone); + for (i = 0; i < cnt; i++) { + item = bucket[i]; + if (!(zone->uz_flags & UMA_ZONE_VTOSLAB)) { + mem = (uint8_t *)((uintptr_t)item & (~UMA_SLAB_MASK)); + if (zone->uz_flags & UMA_ZONE_HASH) { + slab = hash_sfind(&keg->uk_hash, mem); + } else { + mem += keg->uk_pgoff; + slab = (uma_slab_t)mem; + } + } else { + slab = vtoslab((vm_offset_t)item); + if (slab->us_keg != keg) { + KEG_UNLOCK(keg); + keg = slab->us_keg; + KEG_LOCK(keg); + } } + slab_free_item(keg, slab, item); + if (keg->uk_flags & UMA_ZFLAG_FULL) { + if (keg->uk_pages < keg->uk_maxpages) { + keg->uk_flags &= ~UMA_ZFLAG_FULL; + clearfull = 1; + } - /* - * We can handle one more allocation. Since we're - * clearing ZFLAG_FULL, wake up all procs blocked - * on pages. This should be uncommon, so keeping this - * simple for now (rather than adding count of blocked - * threads etc). - */ - wakeup(keg); + /* + * We can handle one more allocation. Since we're + * clearing ZFLAG_FULL, wake up all procs blocked + * on pages. This should be uncommon, so keeping this + * simple for now (rather than adding count of blocked + * threads etc). + */ + wakeup(keg); + } } + zone_relock(zone, keg); if (clearfull) { - zone_relock(zone, keg); zone->uz_flags &= ~UMA_ZFLAG_FULL; wakeup(zone); - ZONE_UNLOCK(zone); - } else - KEG_UNLOCK(keg); + } + ZONE_UNLOCK(zone); + +} + +/* + * Frees a single item to any zone. + * + * Arguments: + * zone The zone to free to + * item The item we're freeing + * udata User supplied data for the dtor + * skip Skip dtors and finis + */ +static void +zone_free_item(uma_zone_t zone, void *item, void *udata, enum zfreeskip skip) +{ +#ifdef INVARIANTS + if (skip == SKIP_NONE) { + if (zone->uz_flags & UMA_ZONE_MALLOC) + uma_dbg_free(zone, udata, item); + else + uma_dbg_free(zone, NULL, item); + } +#endif + if (skip < SKIP_DTOR && zone->uz_dtor) + zone->uz_dtor(item, zone->uz_size, udata); + + if (skip < SKIP_FINI && zone->uz_fini) + zone->uz_fini(item, zone->uz_size); + + atomic_add_long(&zone->uz_frees, 1); + zone->uz_release(zone->uz_arg, &item, 1); } /* See uma.h */ @@ -2813,8 +2845,10 @@ uma_zone_set_max(uma_zone_t zone, int ni { uma_keg_t keg; - ZONE_LOCK(zone); keg = zone_first_keg(zone); + if (keg == NULL) + return (0); + ZONE_LOCK(zone); keg->uk_maxpages = (nitems / keg->uk_ipers) * keg->uk_ppera; if (keg->uk_maxpages * keg->uk_ipers < nitems) keg->uk_maxpages += keg->uk_ppera; @@ -2831,8 +2865,10 @@ uma_zone_get_max(uma_zone_t zone) int nitems; uma_keg_t keg; - ZONE_LOCK(zone); keg = zone_first_keg(zone); + if (keg == NULL) + return (0); + ZONE_LOCK(zone); nitems = keg->uk_maxpages * keg->uk_ipers; ZONE_UNLOCK(zone); @@ -2880,6 +2916,7 @@ uma_zone_set_init(uma_zone_t zone, uma_i ZONE_LOCK(zone); keg = zone_first_keg(zone); + KASSERT(keg != NULL, ("uma_zone_set_init: Invalid zone type")); KASSERT(keg->uk_pages == 0, ("uma_zone_set_init on non-empty keg")); keg->uk_init = uminit; @@ -2894,6 +2931,7 @@ uma_zone_set_fini(uma_zone_t zone, uma_f ZONE_LOCK(zone); keg = zone_first_keg(zone); + KASSERT(keg != NULL, ("uma_zone_set_init: Invalid zone type")); KASSERT(keg->uk_pages == 0, ("uma_zone_set_fini on non-empty keg")); keg->uk_fini = fini; @@ -2927,9 +2965,12 @@ uma_zone_set_zfini(uma_zone_t zone, uma_ void uma_zone_set_freef(uma_zone_t zone, uma_free freef) { + uma_keg_t keg; ZONE_LOCK(zone); - zone_first_keg(zone)->uk_freef = freef; + keg = zone_first_keg(zone); + KASSERT(keg != NULL, ("uma_zone_set_init: Invalid zone type")); + keg->uk_freef = freef; ZONE_UNLOCK(zone); } @@ -2956,6 +2997,8 @@ uma_zone_reserve_kva(uma_zone_t zone, in int pages; keg = zone_first_keg(zone); + if (keg == NULL) + return (0); pages = count / keg->uk_ipers; if (pages * keg->uk_ipers < count) @@ -2994,6 +3037,8 @@ uma_prealloc(uma_zone_t zone, int items) uma_keg_t keg; keg = zone_first_keg(zone); + if (keg == NULL) + return; ZONE_LOCK(zone); slabs = items / keg->uk_ipers; if (slabs * keg->uk_ipers < items) @@ -3083,8 +3128,7 @@ uma_large_malloc(int size, int wait) slab->us_flags = flags | UMA_SLAB_MALLOC; slab->us_size = size; } else { - zone_free_item(slabzone, slab, NULL, SKIP_NONE, - ZFREE_STATFAIL | ZFREE_STATFREE); + zone_free_item(slabzone, slab, NULL, SKIP_NONE); } return (mem); @@ -3095,7 +3139,7 @@ uma_large_free(uma_slab_t slab) { vsetobj((vm_offset_t)slab->us_data, kmem_object); page_free(slab->us_data, slab->us_size, slab->us_flags); - zone_free_item(slabzone, slab, NULL, SKIP_NONE, ZFREE_STATFREE); + zone_free_item(slabzone, slab, NULL, SKIP_NONE); } void Modified: head/sys/vm/uma_int.h ============================================================================== --- head/sys/vm/uma_int.h Mon Jun 17 03:32:27 2013 (r251825) +++ head/sys/vm/uma_int.h Mon Jun 17 03:43:47 2013 (r251826) @@ -296,14 +296,17 @@ struct uma_zone { uma_ctor uz_ctor; /* Constructor for each allocation */ uma_dtor uz_dtor; /* Destructor */ uma_init uz_init; /* Initializer for each item */ - uma_fini uz_fini; /* Discards memory */ + uma_fini uz_fini; /* Finalizer for each item. */ + uma_import uz_import; /* Import new memory to cache. */ + uma_release uz_release; /* Release memory from cache. */ + void *uz_arg; /* Import/release argument. */ uint32_t uz_flags; /* Flags inherited from kegs */ uint32_t uz_size; /* Size inherited from kegs */ - uint64_t uz_allocs UMA_ALIGN; /* Total number of allocations */ - uint64_t uz_frees; /* Total number of frees */ - uint64_t uz_fails; /* Total number of alloc failures */ + volatile u_long uz_allocs UMA_ALIGN; /* Total number of allocations */ + volatile u_long uz_fails; /* Total number of alloc failures */ + volatile u_long uz_frees; /* Total number of frees */ uint64_t uz_sleeps; /* Total number of alloc sleeps */ uint16_t uz_fills; /* Outstanding bucket fills */ uint16_t uz_count; /* Highest amount of items in bucket */ @@ -333,6 +336,13 @@ struct uma_zone { #define UMA_ZFLAG_INHERIT (UMA_ZFLAG_INTERNAL | UMA_ZFLAG_CACHEONLY | \ UMA_ZFLAG_BUCKET) +static inline uma_keg_t +zone_first_keg(uma_zone_t zone) +{ + + return (LIST_FIRST(&zone->uz_kegs)->kl_keg); +} + #undef UMA_ALIGN #ifdef _KERNEL From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 03:56:31 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id C4504191; Mon, 17 Jun 2013 03:56:31 +0000 (UTC) (envelope-from rm@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 9D8DE1973; Mon, 17 Jun 2013 03:56:31 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5H3uV1v009845; Mon, 17 Jun 2013 03:56:31 GMT (envelope-from rm@svn.freebsd.org) Received: (from rm@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5H3uV4F009844; Mon, 17 Jun 2013 03:56:31 GMT (envelope-from rm@svn.freebsd.org) Message-Id: <201306170356.r5H3uV4F009844@svn.freebsd.org> From: Ruslan Makhmatkhanov Date: Mon, 17 Jun 2013 03:56:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251827 - 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-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 03:56:31 -0000 Author: rm (ports committer) Date: Mon Jun 17 03:56:31 2013 New Revision: 251827 URL: http://svnweb.freebsd.org/changeset/base/251827 Log: - add my mentor -> mentee relation with koobs Modified: head/share/misc/committers-ports.dot Modified: head/share/misc/committers-ports.dot ============================================================================== --- head/share/misc/committers-ports.dot Mon Jun 17 03:43:47 2013 (r251826) +++ head/share/misc/committers-ports.dot Mon Jun 17 03:56:31 2013 (r251827) @@ -466,6 +466,7 @@ rene -> crees rene -> jgh rene -> olivierd +rm -> koobs rm -> vg sahil -> culot From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 04:00:46 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id A368234D; Mon, 17 Jun 2013 04:00:46 +0000 (UTC) (envelope-from rm@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 95C61199B; Mon, 17 Jun 2013 04:00:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5H40kfD012239; Mon, 17 Jun 2013 04:00:46 GMT (envelope-from rm@svn.freebsd.org) Received: (from rm@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5H40k4I012238; Mon, 17 Jun 2013 04:00:46 GMT (envelope-from rm@svn.freebsd.org) Message-Id: <201306170400.r5H40k4I012238@svn.freebsd.org> From: Ruslan Makhmatkhanov Date: Mon, 17 Jun 2013 04:00:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251828 - head/usr.bin/calendar/calendars X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 04:00:46 -0000 Author: rm (ports committer) Date: Mon Jun 17 04:00:46 2013 New Revision: 251828 URL: http://svnweb.freebsd.org/changeset/base/251828 Log: - add myself Modified: head/usr.bin/calendar/calendars/calendar.freebsd Modified: head/usr.bin/calendar/calendars/calendar.freebsd ============================================================================== --- head/usr.bin/calendar/calendars/calendar.freebsd Mon Jun 17 03:56:31 2013 (r251827) +++ head/usr.bin/calendar/calendars/calendar.freebsd Mon Jun 17 04:00:46 2013 (r251828) @@ -73,6 +73,7 @@ 02/24 Colin Percival born in Burnaby, Canada, 1981 02/26 Pietro Cerutti born in Faido, Switzerland, 1984 02/28 Daichi GOTO born in Shimizu Suntou, Shizuoka, Japan, 1980 +02/28 Ruslan Makhmatkhanov born in Rostov-on-Don, USSR, 1984 03/01 Hye-Shik Chang born in Daejeon, Republic of Korea, 1980 03/02 Cy Schubert born in Edmonton, Alberta, Canada, 1956 03/03 Sergey Matveychuk born in Moscow, Russian Federation, 1973 From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 08:57:10 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D4DCF683; Mon, 17 Jun 2013 08:57:10 +0000 (UTC) (envelope-from scottl@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C57E915DE; Mon, 17 Jun 2013 08:57:10 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5H8vA05004452; Mon, 17 Jun 2013 08:57:10 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5H8v9bk004445; Mon, 17 Jun 2013 08:57:09 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306170857.r5H8v9bk004445@svn.freebsd.org> From: Scott Long Date: Mon, 17 Jun 2013 08:57:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251837 - in head/sys/cam: . scsi X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 08:57:10 -0000 Author: scottl Date: Mon Jun 17 08:57:09 2013 New Revision: 251837 URL: http://svnweb.freebsd.org/changeset/base/251837 Log: Add infrastructure for doing compatibility shims, as has been sorely needed for the last 10 years. Far too much of the internal API is exposed, and every small adjustment causes applications to stop working. To kick this off, bump the API version to 0x17 as should have been done with r246713, but add shims to compensate. Thanks to the shims, there should be no visible change in application behavior. I have plans to do a significant overhaul of the API to harnen it for the future, but until then, I welcome others to add shims for older versions of the API. Obtained from: Netflix Added: head/sys/cam/cam_compat.c (contents, props changed) head/sys/cam/cam_compat.h (contents, props changed) Modified: head/sys/cam/cam_ccb.h head/sys/cam/cam_xpt.c head/sys/cam/scsi/scsi_pass.c Modified: head/sys/cam/cam_ccb.h ============================================================================== --- head/sys/cam/cam_ccb.h Mon Jun 17 08:53:55 2013 (r251836) +++ head/sys/cam/cam_ccb.h Mon Jun 17 08:57:09 2013 (r251837) @@ -541,7 +541,7 @@ struct ccb_dev_match { /* * Definitions for the path inquiry CCB fields. */ -#define CAM_VERSION 0x16 /* Hex value for current version */ +#define CAM_VERSION 0x17 /* Hex value for current version */ typedef enum { PI_MDP_ABLE = 0x80, /* Supports MDP message */ Added: head/sys/cam/cam_compat.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/cam/cam_compat.c Mon Jun 17 08:57:09 2013 (r251837) @@ -0,0 +1,89 @@ +/*- + * CAM ioctl compatibility shims + * + * Copyright (c) 2013 Scott Long + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions, and the following disclaimer, + * without modification, immediately at the beginning of the file. + * 2. The name of the author may not be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include +#include +#include + +#include + +#include "opt_cam.h" + +int +cam_compat_ioctl(struct cdev *dev, u_long *cmd, caddr_t *addr, int *flag, struct thread *td) +{ + int error; + + switch (*cmd) { + case CAMIOCOMMAND_0x16: + { + union ccb *ccb; + + ccb = (union ccb *)*addr; + if (ccb->ccb_h.flags & CAM_SG_LIST_PHYS_0x16) { + ccb->ccb_h.flags &= ~CAM_SG_LIST_PHYS_0x16; + ccb->ccb_h.flags |= CAM_DATA_SG_PADDR; + } + if (ccb->ccb_h.flags & CAM_DATA_PHYS_0x16) { + ccb->ccb_h.flags &= ~CAM_DATA_PHYS_0x16; + ccb->ccb_h.flags |= CAM_DATA_PADDR; + } + if (ccb->ccb_h.flags & CAM_SCATTER_VALID_0x16) { + ccb->ccb_h.flags &= CAM_SCATTER_VALID_0x16; + ccb->ccb_h.flags |= CAM_DATA_SG; + } + *cmd = CAMIOCOMMAND; + error = EAGAIN; + break; + } + case CAMGETPASSTHRU_0x16: + *cmd = CAMGETPASSTHRU; + error = EAGAIN; + break; + default: + error = ENOTTY; + } + + return (error); +} Added: head/sys/cam/cam_compat.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/cam/cam_compat.h Mon Jun 17 08:57:09 2013 (r251837) @@ -0,0 +1,48 @@ +/*- + * CAM ioctl compatibility shims + * + * Copyright (c) 2013 Scott Long + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions, and the following disclaimer, + * without modification, immediately at the beginning of the file. + * 2. The name of the author may not be used to endorse or promote products + * derived from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR + * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#ifndef _CAM_CAM_COMPAT_H +#define _CAM_CAM_COMPAT_H + +int cam_compat_ioctl(struct cdev *dev, u_long *cmd, caddr_t *addr, int *flag, struct thread *td); + +/* Version 0x16 compatibility */ +#define CAM_VERSION_0x16 0x16 + +/* The size of the union ccb didn't change when going to 0x17 */ +#define CAMIOCOMMAND_0x16 _IOWR(CAM_VERSION_0x16, 2, union ccb) +#define CAMGETPASSTHRU_0x16 _IOWR(CAM_VERSION_0x16, 3, union ccb) + +#define CAM_SCATTER_VALID_0x16 0x10 +#define CAM_SG_LIST_PHYS_0x16 0x40000 +#define CAM_DATA_PHYS_0x16 0x20000 + +#endif + Modified: head/sys/cam/cam_xpt.c ============================================================================== --- head/sys/cam/cam_xpt.c Mon Jun 17 08:53:55 2013 (r251836) +++ head/sys/cam/cam_xpt.c Mon Jun 17 08:57:09 2013 (r251837) @@ -58,6 +58,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include @@ -180,6 +181,7 @@ PERIPHDRIVER_DECLARE(xpt, xpt_driver); static d_open_t xptopen; static d_close_t xptclose; static d_ioctl_t xptioctl; +static d_ioctl_t xptdoioctl; static struct cdevsw xpt_cdevsw = { .d_version = D_VERSION, @@ -395,6 +397,19 @@ xptioctl(struct cdev *dev, u_long cmd, c { int error; + if ((error = xptdoioctl(dev, cmd, addr, flag, td)) == ENOTTY) { + error = cam_compat_ioctl(dev, &cmd, &addr, &flag, td); + if (error == EAGAIN) + return (xptdoioctl(dev, cmd, addr, flag, td)); + } + return (error); +} + +static int +xptdoioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, struct thread *td) +{ + int error; + error = 0; switch(cmd) { Modified: head/sys/cam/scsi/scsi_pass.c ============================================================================== --- head/sys/cam/scsi/scsi_pass.c Mon Jun 17 08:53:55 2013 (r251836) +++ head/sys/cam/scsi/scsi_pass.c Mon Jun 17 08:57:09 2013 (r251837) @@ -48,6 +48,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include @@ -87,6 +88,7 @@ struct pass_softc { static d_open_t passopen; static d_close_t passclose; static d_ioctl_t passioctl; +static d_ioctl_t passdoioctl; static periph_init_t passinit; static periph_ctor_t passregister; @@ -575,6 +577,19 @@ passdone(struct cam_periph *periph, unio static int passioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, struct thread *td) { + int error; + + if ((error = passdoioctl(dev, cmd, addr, flag, td)) == ENOTTY) { + error = cam_compat_ioctl(dev, &cmd, &addr, &flag, td); + if (error == EAGAIN) + return (passdoioctl(dev, cmd, addr, flag, td)); + } + return (error); +} + +static int +passdoioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag, struct thread *td) +{ struct cam_periph *periph; struct pass_softc *softc; int error; From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 09:49:08 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 0AFC9482; Mon, 17 Jun 2013 09:49:08 +0000 (UTC) (envelope-from lstewart@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id F0D0817E2; Mon, 17 Jun 2013 09:49:07 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5H9n7TT020729; Mon, 17 Jun 2013 09:49:07 GMT (envelope-from lstewart@svn.freebsd.org) Received: (from lstewart@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5H9n7oc020728; Mon, 17 Jun 2013 09:49:07 GMT (envelope-from lstewart@svn.freebsd.org) Message-Id: <201306170949.r5H9n7oc020728@svn.freebsd.org> From: Lawrence Stewart Date: Mon, 17 Jun 2013 09:49:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251838 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 09:49:08 -0000 Author: lstewart Date: Mon Jun 17 09:49:07 2013 New Revision: 251838 URL: http://svnweb.freebsd.org/changeset/base/251838 Log: The fix committed in r250951 replaced the reported panic with a deadlock... gold star for me. EVENTHANDLER_DEREGISTER() attempts to acquire the lock which is held by the event handler framework while executing event handler functions, leading to deadlock. Move EVENTHANDLER_DEREGISTER() to alq_load_handler() and thus deregister the ALQ shutdown_pre_sync handler at module unload time, which takes care of the originally reported panic and fixes the deadlock introduced in r250951. Reported by: Luiz Otavio O Souza MFC after: 3 days X-MFC with: 250951 Modified: head/sys/kern/kern_alq.c Modified: head/sys/kern/kern_alq.c ============================================================================== --- head/sys/kern/kern_alq.c Mon Jun 17 08:57:09 2013 (r251837) +++ head/sys/kern/kern_alq.c Mon Jun 17 09:49:07 2013 (r251838) @@ -229,8 +229,6 @@ ald_shutdown(void *arg, int howto) { struct alq *alq; - EVENTHANDLER_DEREGISTER(shutdown_pre_sync, alq_eventhandler_tag); - ALD_LOCK(); /* Ensure no new queues can be created. */ @@ -938,6 +936,8 @@ alq_load_handler(module_t mod, int what, if (LIST_FIRST(&ald_queues) == NULL) { ald_shutingdown = 1; ALD_UNLOCK(); + EVENTHANDLER_DEREGISTER(shutdown_pre_sync, + alq_eventhandler_tag); ald_shutdown(NULL, 0); mtx_destroy(&ald_mtx); } else { From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 10:21:38 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id C7CCB398; Mon, 17 Jun 2013 10:21:38 +0000 (UTC) (envelope-from scottl@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B9261198C; Mon, 17 Jun 2013 10:21:38 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HALcJQ032559; Mon, 17 Jun 2013 10:21:38 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HALcXA032557; Mon, 17 Jun 2013 10:21:38 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306171021.r5HALcXA032557@svn.freebsd.org> From: Scott Long Date: Mon, 17 Jun 2013 10:21:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251842 - in head/sys: conf modules/cam X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 10:21:38 -0000 Author: scottl Date: Mon Jun 17 10:21:38 2013 New Revision: 251842 URL: http://svnweb.freebsd.org/changeset/base/251842 Log: This is an addendum to r251837. Missed adding the new references to cam_compat.c to the various makefiles. Obtained from: Netflix Modified: head/sys/conf/files head/sys/modules/cam/Makefile Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Mon Jun 17 10:14:08 2013 (r251841) +++ head/sys/conf/files Mon Jun 17 10:21:38 2013 (r251842) @@ -103,6 +103,7 @@ usbdevs_data.h optional usb \ no-obj no-implicit-rule before-depend \ clean "usbdevs_data.h" cam/cam.c optional scbus +cam/cam_compat.c optional scbus cam/cam_periph.c optional scbus cam/cam_queue.c optional scbus cam/cam_sim.c optional scbus Modified: head/sys/modules/cam/Makefile ============================================================================== --- head/sys/modules/cam/Makefile Mon Jun 17 10:14:08 2013 (r251841) +++ head/sys/modules/cam/Makefile Mon Jun 17 10:21:38 2013 (r251842) @@ -15,6 +15,7 @@ SRCS+= opt_pt.h SRCS+= opt_sa.h SRCS+= device_if.h bus_if.h vnode_if.h SRCS+= cam.c +SRCS+= cam_compat.c .if exists($S/${MACHINE}/${MACHINE}/cam_machdep.c) SRCS+= cam_machdep.c .endif From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 10:28:56 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 500646BB; Mon, 17 Jun 2013 10:28:56 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 405DE19F9; Mon, 17 Jun 2013 10:28:56 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HAStWP033643; Mon, 17 Jun 2013 10:28:55 GMT (envelope-from bapt@svn.freebsd.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HAStR2033639; Mon, 17 Jun 2013 10:28:55 GMT (envelope-from bapt@svn.freebsd.org) Message-Id: <201306171028.r5HAStR2033639@svn.freebsd.org> From: Baptiste Daroussin Date: Mon, 17 Jun 2013 10:28:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251843 - in head: contrib/dialog contrib/dialog/package contrib/dialog/package/debian contrib/dialog/po contrib/dialog/samples contrib/dialog/samples/copifuncs contrib/dialog/samples/i... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 10:28:56 -0000 Author: bapt Date: Mon Jun 17 10:28:55 2013 New Revision: 251843 URL: http://svnweb.freebsd.org/changeset/base/251843 Log: Update dialog to 1.2-20130523 Level up WARNS Added: head/contrib/dialog/buildlist.c - copied unchanged from r251840, vendor/dialog/dist/buildlist.c head/contrib/dialog/po/an.po - copied unchanged from r251840, vendor/dialog/dist/po/an.po head/contrib/dialog/po/ia.po - copied unchanged from r251840, vendor/dialog/dist/po/ia.po head/contrib/dialog/rangebox.c - copied unchanged from r251840, vendor/dialog/dist/rangebox.c head/contrib/dialog/samples/buildlist - copied unchanged from r251840, vendor/dialog/dist/samples/buildlist head/contrib/dialog/samples/buildlist2 - copied unchanged from r251840, vendor/dialog/dist/samples/buildlist2 head/contrib/dialog/samples/checklist12 - copied unchanged from r251840, vendor/dialog/dist/samples/checklist12 head/contrib/dialog/samples/dft-cancel - copied unchanged from r251840, vendor/dialog/dist/samples/dft-cancel head/contrib/dialog/samples/dft-extra - copied unchanged from r251840, vendor/dialog/dist/samples/dft-extra head/contrib/dialog/samples/dft-help - copied unchanged from r251840, vendor/dialog/dist/samples/dft-help head/contrib/dialog/samples/dft-no - copied unchanged from r251840, vendor/dialog/dist/samples/dft-no head/contrib/dialog/samples/fselect0 - copied unchanged from r251840, vendor/dialog/dist/samples/fselect0 head/contrib/dialog/samples/menubox12 - copied unchanged from r251840, vendor/dialog/dist/samples/menubox12 head/contrib/dialog/samples/rangebox - copied unchanged from r251840, vendor/dialog/dist/samples/rangebox head/contrib/dialog/samples/rangebox2 - copied unchanged from r251840, vendor/dialog/dist/samples/rangebox2 head/contrib/dialog/samples/rangebox3 - copied unchanged from r251840, vendor/dialog/dist/samples/rangebox3 head/contrib/dialog/samples/rangebox4 - copied unchanged from r251840, vendor/dialog/dist/samples/rangebox4 head/contrib/dialog/samples/treeview - copied unchanged from r251840, vendor/dialog/dist/samples/treeview head/contrib/dialog/samples/treeview2 - copied unchanged from r251840, vendor/dialog/dist/samples/treeview2 head/contrib/dialog/samples/with-dquotes - copied unchanged from r251840, vendor/dialog/dist/samples/with-dquotes head/contrib/dialog/samples/with-squotes - copied unchanged from r251840, vendor/dialog/dist/samples/with-squotes head/contrib/dialog/treeview.c - copied unchanged from r251840, vendor/dialog/dist/treeview.c Deleted: head/contrib/dialog/samples/copifuncs/admin.funcs head/contrib/dialog/samples/copifuncs/common.funcs head/contrib/dialog/samples/copifuncs/copi.funcs head/contrib/dialog/samples/copifuncs/copi.ifman1 head/contrib/dialog/samples/copifuncs/copi.ifman2 head/contrib/dialog/samples/copifuncs/copi.ifmcfg2 head/contrib/dialog/samples/copifuncs/copi.ifmcfg4 head/contrib/dialog/samples/copifuncs/copi.ifmcfg5 head/contrib/dialog/samples/copifuncs/copi.ifpoll1 head/contrib/dialog/samples/copifuncs/copi.ifpoll2 head/contrib/dialog/samples/copifuncs/copi.ifreq1 head/contrib/dialog/samples/copifuncs/copi.ifreq2 head/contrib/dialog/samples/copifuncs/copi.rcnews head/contrib/dialog/samples/copifuncs/copi.sendifm1 head/contrib/dialog/samples/copifuncs/copi.sendifm2 head/contrib/dialog/samples/copifuncs/copi.trnrc head/contrib/dialog/samples/copifuncs/copi.wheel head/contrib/dialog/samples/copifuncs/ifpatch head/contrib/dialog/samples/copismall head/contrib/dialog/samples/dselect head/contrib/dialog/samples/install/FDISK.TEST head/contrib/dialog/samples/install/makefile.in head/contrib/dialog/samples/install/setup.c head/contrib/dialog/samples/install/setup.help head/contrib/dialog/samples/valgrind.log Modified: head/contrib/dialog/CHANGES head/contrib/dialog/VERSION head/contrib/dialog/aclocal.m4 head/contrib/dialog/argv.c head/contrib/dialog/arrows.c head/contrib/dialog/buttons.c head/contrib/dialog/calendar.c head/contrib/dialog/checklist.c head/contrib/dialog/columns.c head/contrib/dialog/config.guess head/contrib/dialog/config.sub head/contrib/dialog/configure head/contrib/dialog/configure.in head/contrib/dialog/dialog-config.in head/contrib/dialog/dialog.1 head/contrib/dialog/dialog.3 head/contrib/dialog/dialog.c head/contrib/dialog/dialog.h head/contrib/dialog/dlg_colors.h head/contrib/dialog/dlg_keys.c head/contrib/dialog/dlg_keys.h head/contrib/dialog/editbox.c head/contrib/dialog/formbox.c head/contrib/dialog/fselect.c head/contrib/dialog/guage.c head/contrib/dialog/headers-sh.in head/contrib/dialog/help.c head/contrib/dialog/inputbox.c head/contrib/dialog/inputstr.c head/contrib/dialog/makefile.in head/contrib/dialog/menubox.c head/contrib/dialog/mixedform.c head/contrib/dialog/mixedgauge.c head/contrib/dialog/mouse.c head/contrib/dialog/mousewget.c head/contrib/dialog/msgbox.c head/contrib/dialog/package/debian/changelog head/contrib/dialog/package/dialog.spec head/contrib/dialog/pause.c head/contrib/dialog/po/cs.po head/contrib/dialog/po/el.po head/contrib/dialog/po/gl.po head/contrib/dialog/po/hr.po head/contrib/dialog/po/sr.po head/contrib/dialog/po/zh_TW.po head/contrib/dialog/prgbox.c head/contrib/dialog/progressbox.c head/contrib/dialog/rc.c head/contrib/dialog/rename.sh head/contrib/dialog/samples/README head/contrib/dialog/samples/debian.rc head/contrib/dialog/samples/dialog.py head/contrib/dialog/samples/form1 head/contrib/dialog/samples/inputmenu head/contrib/dialog/samples/inputmenu-stdout head/contrib/dialog/samples/inputmenu1 head/contrib/dialog/samples/inputmenu2 head/contrib/dialog/samples/inputmenu3 head/contrib/dialog/samples/inputmenu4 head/contrib/dialog/samples/killall head/contrib/dialog/samples/prgbox head/contrib/dialog/samples/prgbox2 head/contrib/dialog/samples/report-button head/contrib/dialog/samples/report-edit head/contrib/dialog/samples/report-string head/contrib/dialog/samples/report-tempfile head/contrib/dialog/samples/report-yesno head/contrib/dialog/samples/setup-edit head/contrib/dialog/samples/setup-tempfile head/contrib/dialog/samples/setup-utf8 head/contrib/dialog/samples/setup-vars head/contrib/dialog/samples/slackware.rc head/contrib/dialog/samples/sourcemage.rc head/contrib/dialog/samples/suse.rc head/contrib/dialog/samples/tailboxbg head/contrib/dialog/samples/tailboxbg1 head/contrib/dialog/samples/tailboxbg2 head/contrib/dialog/samples/testdata-8bit head/contrib/dialog/samples/wheel head/contrib/dialog/samples/whiptail.rc head/contrib/dialog/tailbox.c head/contrib/dialog/textbox.c head/contrib/dialog/timebox.c head/contrib/dialog/trace.c head/contrib/dialog/ui_getc.c head/contrib/dialog/util.c head/contrib/dialog/yesno.c head/gnu/lib/libdialog/Makefile head/gnu/lib/libdialog/dlg_config.h head/gnu/usr.bin/dialog/Makefile Directory Properties: head/contrib/dialog/ (props changed) Modified: head/contrib/dialog/CHANGES ============================================================================== --- head/contrib/dialog/CHANGES Mon Jun 17 10:21:38 2013 (r251842) +++ head/contrib/dialog/CHANGES Mon Jun 17 10:28:55 2013 (r251843) @@ -1,9 +1,229 @@ --- $Id: CHANGES,v 1.360 2011/07/07 23:35:10 tom Exp $ +-- $Id: CHANGES,v 1.458 2013/05/24 00:23:22 tom Exp $ -- Thomas E. Dickey This version of dialog was originally from a Debian snapshot. I've done this to it: +2013/05/23 + + modify ifdef in arrows.c to work around packages which use the + wide-character ncursesw headers with the ncurses library (report + by Aleksey Cheusov). + + correct workaround for xterm alternate-screen to work with/without + the fix made in ncurses that makes putp() always write to the + standard output (Debian #708829). + + improve limit-checks for checklist, in case the dialog is resized + (report by Ilya A Arkhipov). + + add --last-key option (adapted from patch by Jordi Pujol, Debian + #697607). + +2013/03/15 + + update zh_TW.po, add an.po from + http://translationproject.org/latest/dialog/ + +2012/12/30 - release 1.2 + + improve some older changelog entries to help with HTML'izing content. + + various fixes/improvments for scrollbar appearance. + + add mappings for some equivalent options provided by whiptail; + add configure option --disable-whiptail to allow suppressing these. + + add configure option --disable-Xdialog2 to allow suppressing the + newer features, i.e., for cdialog 1.2 + + add --no-items option, for consistency. + + add --no-tags option, like Xdialog. + + add buildlist, rangebox and treeview dialogs, like Xdialog. + + remove obsolete workaround for ncurses 4.2 scrolling in checklist + and menubox. + + improve dialog_helpfile() by preventing it from showing extra buttons + (suggested by xDog Walker). + + correct logic in formbox's scroll_next() function (report by xDog + Walker). + + fix a case with inputbox widget where preset input text is not shown + until moving the cursor within the text (report by xDog Walker). + + handle SIGCHLD in dialog_prgbox() to eliminate defunct processes + (report by xDog Walker). + + improve the way "hotkeys" are assigned to widget buttons by checking + if a given key has already been used in the row of buttons (Debian + #684933). + + amend fix for --trace parsing from 2012/07/03, which sometimes + skipped a parameter (report by xDog Walker). + + drop copismall and install files from samples, which were essentially + nonfunctional. + + correct secondary border colors in samples/slackware.rc and + samples/whiptail.rc + + update gl.po, add ia.po from + http://translationproject.org/latest/dialog/ + + fix various issues reported by coverity scan. + + miscellaneous configure script fixes/updates: + + require autoconf 2.52+patches + + support --datarootdir option + + check for clang compiler + + check for tinfo library when looking for ncurses + + add 3rd parameter to AC_DEFINE for autoheader + + remove unused macros from aclocal.m4 + + update config.guess, config.sub + +2012/07/06 + + modify samples/setup-tempfile to work with Tru64's shell. + + modify inputmenu sample scripts to make them more portable: + + use "id" rather than "$GROUPS", use sed to work with Solaris. + + use sed to split-up the rename results to work with HPUX. + + fix regression in msgbox (ArchLinux #30574) + +2012/07/03 + + modify prgbox widget to work with --extra-button, etc. + + add case values to several widgets to allow for mouse-clicks with + "--extra-button" and "--help-button" additions. + + correct timebox widget's exit code for "--extra-button" when handing + the "enter" key. + + modify msgbox widget to honor "--extra-button". + + corrected processing of "--trace" option, which did not update the + index into command-line to point past its value. + + add a check in dialog program for valid characters used in option, + e.g., to generate an error if a script attempts to add option value + using "=" rather than with whitespace. + + add new command-line option --default-button and library function + dlg_default_button() to retrieve the value set by the option + to provide a way to set the default button directly rather than + by combining --nook, etc. (patch by Zoltan Kelemen). + + amend include of unctrl.h to apply only to the case where curses.h + is included, to avoid conflict of ncurses' unctrl.h with a system + implementation (report by Martin Roedlach) + + add limit-check to dlg_toupper() in non-wide curses mode to work + when non-character values such as arrow-key codes are passed to + it (patch by Zoltan Kelemen). + + override timeout value, e.g., as set via --timeout command-line + option in pause widget because that interferes with pause's behavior + (report by Jan Spitalnik). + + modify samples/inputmenu* to allow ":" in renamed text (report by + Andreas Stoewing). + + modify double-quoting to make it more consistent, i.e., checklist + output is quoted only when needed. This fixes the case where + single-quotes were used whether or not needed, but also modifies + older checklist behavior for double-quoting which always added those + (Debian #663664). + + correct exit-code used in inputmenu for "rename" button (Debian + #673041, forwarded from Ubuntu #333909, patch by Lebedev Vadim). + + update el.po and hr.po from + http://translationproject.org/latest/dialog/ + + use checkbashisms to clean up sample scripts. + +2012/02/15 + + modify menubox.c to use the same improvement as in checklist.c + + improve auto width computation for checklist widget by using + dlg_calc_list_width as in the non-auto case (Edho Arief). + + eliminate some bashisms in the sample scripts (Pedro Giffuni). + + makefile fixes from FreeBSD ports (Li-Wen Hsu): + + make --with-package option of configure script work. + + get LIBTOOL_VERSION from configure script, needed by + ${LIBTOOL_VERSION} in LIBTOOL_CREATE (LIB_CREATE in configure and + aclocal.m4) + + update cs.po and sr.po from + http://translationproject.org/latest/dialog/ + + updated configure script macros, improving CF_XOPEN_SOURCE among + other fixes. + +2011/10/20 + + fix --analyze warnings for clang versions 2.8, 2.9. + + add configure check for lint program. + + add check in dlg_getc() in case its window is freed as a side effect + of removing callbacks. + + fix logic in freeing subwindows (report by xDog Walker). + + fix a regression in logic distinguishing between inputmenu and menu + widgets (report by xDog Walker). + + minor fixes to library manpage. + +2011/10/18 + + modify header-sh.in to work around limit on sed script length on + HPUX. + + add a special case of parameter parsing for "--trace" to the + initialization done before calling init_dialog(), to allow users to + capture the initial state of the parameter list before any options + are processed and removed. This is only done if "--trace" is the + first option, otherwise it is handled in the common options as before + (report by xDog Walker). + + modify samples/testdata-8bit, discarding $1 from the parameter list + if it was used, so that the source'ing scripts can consistently use + "$@" to insert parameters before the widget, e.g., as an alternative + to using $DIALOGOPTS (report by xDog Walker). + + modify treatment of function pointers in menubox.c, make + dlg_renamed_menutext() and dlg_dummy_menutext() visible to library + users (request by xDog Walker). + + add dlg_count_real_columns(), use to modify centering for "--hline" + text to account for "\Z"s (report by xDog Walker). + + improve check in dlg_draw_arrows2() for conflict between the window + title and up-arrow marker to take into account that the given window + may not be the top-level window of the widget. + + change width of page up/down mouse areas in fselect panes to use the + full width of the panes rather than only the portion from the left + margin to the up/down arrow. + + add/use dlg_draw_box2() and dlg_draw_bottom_box2() to use the + secondary borders. + + modify rc-file read/write to accept/generate color values that refer + to previously-processed items in the color table. This reduces the + number of distinct colors that must be specified to set up a color + scheme. + + add color table entries for secondary borders, i.e., the ones that + are normally drawn with the dialog's text-colors (Debian #641168). + + modify fselect.c to scan the current directory if the input field + happens to be empty (Debian #640905). + + repeated the discussion of environment variables that can override + the exit-status values in the manpage's return-codes section + (Debian #642105). + + add an example to the manpage showing how to override the form + widget's keys used for field/button traversal (Debian #642108). + + modify call to dlg_register_window() in formbox.c so that the editing + bindings are attached to the form sub-window rather than the + top-level dialog window. Also change the name by which the editing + bindings are bound for editbox.c, fselect.c and inputbox.c, so that + the editing and navigation bindings can be different. + + correct logic in dlg_lookup_key() so that it matches the widget name + before using a binding from .dialogrc, allowing the inner/outer + windows of form and other editing widgets to have different bindings. + + modify dlg_register_window() to call dlg_dump_window_keys() after + its updates, via the --trace output, to supplement the manpage + description of key bindings (Debian #642108). + + add DLGK_FORM_PREV and DLGK_FORM_NEXT key-bindings to form.c, to + allow binding a single key to traverse both form-fields and buttons + (Debian #642108). + + modify dlg_parse_rc() to check for error return from + dlg_parse_bindkey(). + + add function dlg_dump_window_keys(), to help with debugging widgets. + + add CR, LF, TAB, FF and ESC to table of curses names to help make + key bindings more readable. + + update table of dialog key-names so that helpfile and trace are + dumped properly. + + correct dlg_dump_keys(), which was showing only the first item in + the matched binding table. + + save/restore window current position in dlg_update_mixedgauge(). + + pass return-code from pause_for_ok() from dlg_progressbox() when + pauseopt is set, rather than only DLG_OK. + + call setlocale() in init_dialog() rather than relying on on-demand + use within inputstr.c, since there are paths in textbox widget which + do not exercise the latter (report by xDog Walker). + + fix some places where checks for "\Z" were done without also checking + dialog_vars.colors (report by Moray Henderson). + + correct logic for DIALOGOPTS parsing so that the parse happens only + once unless memory leak checking is enabled (report by xDog Walker). + + remove an incorrect free() call in dlg_free_gauge() (report by xDog + Walker). + + modify dlg_trace_win() to log wide-characters (report by xDog Walker). + + make traces shorter by skipping repeated ERR's, but showing the + number skipped (report by xDog Walker). + + improve description in manpage to distinguish program box and + progress box from tailboxes (adapted from email by xDog Walker). + + modify dlg_trace_win() so that it looks for the topmost window in a + dialog. Because subwindows share space with the top window, tracing + the latter shows the whole widget (report by xDog Walker). + + expand tracing so that each window is traced before soliciting input, + making the ^T feature to print a window on demand partly redundant + (suggested by xDog Walker). + + cosmetic change in dialog.h to avoid "*/*" strings from comments next + to "*" (report by xDog Walker). + + ensure result from dlg_align_columns() has trailing null on each + string. Analysis was hindered by libc6's continuance of libc5's + early-1990s misfeature of clearing the result from malloc, noting + that libc6's documentation incorrectly claims that it does not do + this (report by xDog Walker). + 2011/07/07 + modify util.c to work better with old versions of ncurses: + suppress use of wchgat() before fix in 20060715 which is needed @@ -87,7 +307,7 @@ to it: + CF_XOPEN_SOURCE, workaround for cygwin to get ncurses' configure script to define _XOPEN_SOURCE_EXTENDED (cygwin's features.h doesn't do anything, so it needs a crutch). - + updated config.guess, config.sub + + update config.guess, config.sub 2011/03/02 + add --prgbox and --programbox (adapted from patch by David Boyd). @@ -155,7 +375,7 @@ to it: CF_ADD_LIBDIR for the curses-directory here, from CF_NCURSES_CPPFLAGS and CF_NCURSES_LDFLAGS, so it will work even with the default checking, e.g., no --with-ncurses, etc. - + updated config.guess, config.sub + + update config.guess, config.sub 2010/04/28 + several improvements to configure script: @@ -250,7 +470,7 @@ to it: libutf8 and libiconv. + update da.po, ru.po from http://translationproject.org/latest/dialog/ - + updated config.guess, config.sub + + update config.guess, config.sub 2008/08/19 + amend changes to quoting; by default, the checklist widget quotes its @@ -333,7 +553,7 @@ to it: ESC to be returned, quitting dialog (report by Reiner Huober). + add extern "C" declarations to dlg_keys.h so the corresponding function declarations are exported to C++ as C symbols. - + updated config.guess, config.sub + + update config.guess, config.sub 2007/06/04 + fix a memory leak in editbox.c @@ -395,7 +615,8 @@ to it: + use $(INSTALL_SCRIPT) for installing dialog-config (report by Santiago Vila). -2007/02/27 +2007/02/27 - release 1.1 + + mark as "dialog 1.1" + add dialog-config script, which provides applications with compile- and link-information for using the dialog library. + move calls to dlg_trim_string() out of loop in dialog.c, so each @@ -436,7 +657,7 @@ to it: CF_CURSES_LIBS, CF_INCLUDE_DIRS, CF_LARGEFILE, CF_MAKEFLAGS, CF_PATH_SYNTAX, CF_SUBDIR_PATH, CF_SUBST, CF_WITH_DBMALLOC, CF_WITH_DMALLOC, CF_WITH_LIBTOOL and CF_XOPEN_SOURCE. - + updated config.guess, config.sub + + update config.guess, config.sub > adapted fixes from SuSE package (Werner Fink): + add some limit-checks in dlg_draw_shadow(). + make shadows resizable, using new dlg_move_window() in msgbox.c @@ -628,8 +849,7 @@ to it: + modify tailboxbg by resetting tty modes at the point where it forks a process to update the screen, rather than waiting until that process exits. This improves user feedback by making it apparent that dialog - is no longer processing input after that point (Redhat Bugzilla - #142538). + is no longer processing input after that point (Redhat #142538). + minor updates to some .po files using Babel Fish, comparing with lynx. + update es.po (Santiago Vila). + work around bug in NetBSD 1.6 curses which seems to be confused by @@ -815,8 +1035,7 @@ to it: before dialog is invoked (Debian #244746). + correct dlg_match_char() function, which was broken during rewrite to support wide-characters (Debian #244777). - + improved ru.po, uses UTF-8 charset (Leonid Kanter, Redhat Bugzilla - #119200). + + improved ru.po, uses UTF-8 charset (Leonid Kanter, Redhat #119200). + correct position of shadow drawn for dialogs, which appeared to work for most versions of curses (other than NetBSD) but would have been visible for certain color schemes (discussion with Julian Coleman). @@ -1147,7 +1366,7 @@ to it: the --stdout option does not work on HPUX but otherwise dialog works. + updated el.po (patch by kromJx ). -2002/05/19 +2002/05/19 - release 0.9b + add --no-collapse option to allow one to retain tabs and repeated blanks in a message box (request by Roberto Simoni). + use DLG_EXIT_ESC constant rather than -1's in several places. This @@ -1615,15 +1834,15 @@ to it: Santiago Vila : 1999/10/07 - + add a password dialog box. + + add a password dialog box (Debian #45964, patch by Joey Hess). + implement "--defaultno" option to specify if the default for - the yes/no box is "No". + the yes/no box is "No" (Debian #46076, patch by Joey Hess). 1999/03/10 + modify input.c to clear the input field to the right of the - given string (unclear: this seems redundant, since the - dialog is drawn in a new window). + given string, to help with screen-refresh 1998/12/08 - + check for list_height less than one in checklist.c + + check for list_height less than one in checklist.c (Debian + #22239). 1998/10/21 + use function wscrl() in preference to scroll() in checklist.c and menubox.c (unclear: in ncurses, scroll() is a macro that @@ -1633,12 +1852,14 @@ to it: that directory. 1998/09/12 + simplify menubox.c using new functions print_arrows() and - print_items(). - + add logic to handle KEY_NPAGE and KEY_PPAGE. - + change sample scripts to use Debian tempfile utility rather - than putting files into /tmp. - + change sample scripts to use 'dialog' from user's path rather - than in the parent directory as in the build directory. + print_items(). add logic to handle KEY_NPAGE and KEY_PPAGE + (Debian #26326). + + modifications to provide sample scripts (Debian #26211): + + change sample scripts to use Debian tempfile utility rather + than putting files into /tmp. + + change sample scripts to use 'dialog' from user's path + rather than in the parent directory as in the build + directory. + use the system copy of GPL rather than that in the build directory as an example for the textbox script. @@ -1664,16 +1885,16 @@ The relevant portions of the Debian chan 1998/05/24 + Replaced guage.c by the one in dialog 0.6z, which is known to work. - Fixes Bug #18284: unstable dialog. + Fixes Debian #18284: unstable dialog. 1997/12/16 + dialog.c: dialog_input_result printed with "%s" format. This was - Bug #9913, fixed by Bill Mitchell, but the change was lost. + Debian #9913, fixed by Bill Mitchell, but the change was lost. + Pristine source, .depend is not removed in clean target. Instead, it - is made zero lenght (otherwise it would not work *without* fakeroot). - + Added '^U' support in input box (Bug #9915, patch by joey@debian.org). - + Wrote patch to fix core-dumping problem (Bug #13170). Sven Rudolph + is made zero length (otherwise it would not work *without* fakeroot). + + Added '^U' support in input box (Debian #9915, patch by Joey Hess). + + Wrote patch to fix core-dumping problem (Debian #13170). Sven Rudolph : -- vile:fk=8bit Modified: head/contrib/dialog/VERSION ============================================================================== --- head/contrib/dialog/VERSION Mon Jun 17 10:21:38 2013 (r251842) +++ head/contrib/dialog/VERSION Mon Jun 17 10:28:55 2013 (r251843) @@ -1 +1 @@ -10:0:0 1.1 20110707 +11:1:0 1.2 20130523 Modified: head/contrib/dialog/aclocal.m4 ============================================================================== --- head/contrib/dialog/aclocal.m4 Mon Jun 17 10:21:38 2013 (r251842) +++ head/contrib/dialog/aclocal.m4 Mon Jun 17 10:28:55 2013 (r251843) @@ -1,7 +1,7 @@ dnl macros used for DIALOG configure script -dnl $Id: aclocal.m4,v 1.82 2011/06/28 22:48:31 tom Exp $ +dnl $Id: aclocal.m4,v 1.90 2012/12/02 20:07:30 tom Exp $ dnl --------------------------------------------------------------------------- -dnl Copyright 1999-2010,2011 -- Thomas E. Dickey +dnl Copyright 1999-2011,2012 -- Thomas E. Dickey dnl dnl Permission is hereby granted, free of charge, to any person obtaining a dnl copy of this software and associated documentation files (the @@ -31,23 +31,21 @@ dnl see dnl http://invisible-island.net/autoconf/ dnl --------------------------------------------------------------------------- dnl --------------------------------------------------------------------------- -dnl AM_GNU_GETTEXT version: 12 updated: 2010/06/19 07:02:11 +dnl AM_GNU_GETTEXT version: 13 updated: 2012/11/09 05:47:26 dnl -------------- dnl Usage: Just like AM_WITH_NLS, which see. AC_DEFUN([AM_GNU_GETTEXT], [AC_REQUIRE([AC_PROG_MAKE_SET])dnl - AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_PROG_RANLIB])dnl - AC_REQUIRE([AC_ISC_POSIX])dnl AC_REQUIRE([AC_HEADER_STDC])dnl - AC_REQUIRE([AC_C_CONST])dnl AC_REQUIRE([AC_C_INLINE])dnl AC_REQUIRE([AC_TYPE_OFF_T])dnl AC_REQUIRE([AC_TYPE_SIZE_T])dnl AC_REQUIRE([AC_FUNC_ALLOCA])dnl AC_REQUIRE([AC_FUNC_MMAP])dnl AC_REQUIRE([jm_GLIBC21])dnl + AC_REQUIRE([CF_PROG_CC])dnl AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \ stdlib.h string.h unistd.h sys/param.h]) @@ -282,7 +280,7 @@ fi AC_SUBST($1)dnl ])dnl dnl --------------------------------------------------------------------------- -dnl AM_WITH_NLS version: 24 updated: 2010/06/20 09:24:28 +dnl AM_WITH_NLS version: 25 updated: 2012/10/06 08:57:51 dnl ----------- dnl Inserted as requested by gettext 0.10.40 dnl File from /usr/share/aclocal @@ -385,7 +383,7 @@ AC_DEFUN([AM_WITH_NLS], LIBS="$cf_save_LIBS_1" if test "$cf_cv_func_gettext" = yes ; then - AC_DEFINE(HAVE_LIBINTL_H) + AC_DEFINE(HAVE_LIBINTL_H,1,[Define to 1 if we have libintl.h]) dnl If an already present or preinstalled GNU gettext() is found, dnl use it. But if this macro is used in GNU gettext, and GNU @@ -592,15 +590,30 @@ changequote([,])dnl AC_SUBST(GENCAT) ])dnl dnl --------------------------------------------------------------------------- -dnl CF_AC_PREREQ version: 2 updated: 1997/09/06 13:24:56 -dnl ------------ -dnl Conditionally generate script according to whether we're using the release -dnl version of autoconf, or a patched version (using the ternary component as -dnl the patch-version). -define(CF_AC_PREREQ, -[CF_PREREQ_COMPARE( -AC_PREREQ_CANON(AC_PREREQ_SPLIT(AC_ACVERSION)), -AC_PREREQ_CANON(AC_PREREQ_SPLIT([$1])), [$1], [$2], [$3])])dnl +dnl CF_ACVERSION_CHECK version: 3 updated: 2012/10/03 18:39:53 +dnl ------------------ +dnl Conditionally generate script according to whether we're using a given autoconf. +dnl +dnl $1 = version to compare against +dnl $2 = code to use if AC_ACVERSION is at least as high as $1. +dnl $3 = code to use if AC_ACVERSION is older than $1. +define([CF_ACVERSION_CHECK], +[ +ifdef([m4_version_compare], +[m4_if(m4_version_compare(m4_defn([AC_ACVERSION]), [$1]), -1, [$3], [$2])], +[CF_ACVERSION_COMPARE( +AC_PREREQ_CANON(AC_PREREQ_SPLIT([$1])), +AC_PREREQ_CANON(AC_PREREQ_SPLIT(AC_ACVERSION)), AC_ACVERSION, [$2], [$3])])])dnl +dnl --------------------------------------------------------------------------- +dnl CF_ACVERSION_COMPARE version: 3 updated: 2012/10/03 18:39:53 +dnl -------------------- +dnl CF_ACVERSION_COMPARE(MAJOR1, MINOR1, TERNARY1, +dnl MAJOR2, MINOR2, TERNARY2, +dnl PRINTABLE2, not FOUND, FOUND) +define([CF_ACVERSION_COMPARE], +[ifelse(builtin([eval], [$2 < $5]), 1, +[ifelse([$8], , ,[$8])], +[ifelse([$9], , ,[$9])])])dnl dnl --------------------------------------------------------------------------- dnl CF_ADD_CFLAGS version: 10 updated: 2010/05/26 05:38:42 dnl ------------- @@ -876,12 +889,6 @@ dnl Allow user to disable a normally-on AC_DEFUN([CF_ARG_DISABLE], [CF_ARG_OPTION($1,[$2],[$3],[$4],yes)])dnl dnl --------------------------------------------------------------------------- -dnl CF_ARG_ENABLE version: 3 updated: 1999/03/30 17:24:31 -dnl ------------- -dnl Allow user to enable a normally-off option. -AC_DEFUN([CF_ARG_ENABLE], -[CF_ARG_OPTION($1,[$2],[$3],[$4],no)])dnl -dnl --------------------------------------------------------------------------- dnl CF_ARG_MSG_ENABLE version: 2 updated: 2000/07/29 19:32:03 dnl ----------------- dnl Verbose form of AC_ARG_ENABLE: @@ -927,7 +934,7 @@ ifelse([$3],,[ :]dnl ])dnl ])])dnl dnl --------------------------------------------------------------------------- -dnl CF_BUNDLED_INTL version: 16 updated: 2010/10/23 15:55:05 +dnl CF_BUNDLED_INTL version: 17 updated: 2012/10/06 08:57:51 dnl --------------- dnl Top-level macro for configuring an application with a bundled copy of dnl the intl and po directories for gettext. @@ -984,7 +991,7 @@ if test "$USE_NLS" = yes ; then [ --with-textdomain=PKG NLS text-domain (default is package name)], [NLS_TEXTDOMAIN=$withval], [NLS_TEXTDOMAIN=$PACKAGE]) - AC_DEFINE_UNQUOTED(NLS_TEXTDOMAIN,"$NLS_TEXTDOMAIN") + AC_DEFINE_UNQUOTED(NLS_TEXTDOMAIN,"$NLS_TEXTDOMAIN",[Define to the nls textdomain value]) AC_SUBST(NLS_TEXTDOMAIN) fi @@ -1004,7 +1011,7 @@ if test "$USE_INCLUDED_LIBINTL" = yes ; INTLDIR_MAKE="#" fi if test -z "$INTLDIR_MAKE"; then - AC_DEFINE(HAVE_LIBGETTEXT_H) + AC_DEFINE(HAVE_LIBGETTEXT_H,1,[Define to 1 if we have libgettext.h]) for cf_makefile in \ $srcdir/intl/Makefile.in \ $srcdir/intl/makefile.in @@ -1047,17 +1054,43 @@ dnl own code, except ENABLE_NLS, which i if test "$USE_INCLUDED_LIBINTL" = yes ; then if test "$nls_cv_force_use_gnu_gettext" = yes ; then - AC_DEFINE(HAVE_GETTEXT) + AC_DEFINE(HAVE_GETTEXT,1,[Define to 1 if we have gettext function]) elif test "$nls_cv_use_gnu_gettext" = yes ; then - AC_DEFINE(HAVE_GETTEXT) + AC_DEFINE(HAVE_GETTEXT,1,[Define to 1 if we have gettext function]) fi if test -n "$nls_cv_header_intl" ; then - AC_DEFINE(HAVE_LIBINTL_H) + AC_DEFINE(HAVE_LIBINTL_H,1,[Define to 1 if we have header-file for libintl]) fi fi ])dnl dnl --------------------------------------------------------------------------- -dnl CF_CHECK_CACHE version: 11 updated: 2008/03/23 14:45:59 +dnl CF_CC_ENV_FLAGS version: 1 updated: 2012/10/03 05:25:49 +dnl --------------- +dnl Check for user's environment-breakage by stuffing CFLAGS/CPPFLAGS content +dnl into CC. This will not help with broken scripts that wrap the compiler with +dnl options, but eliminates a more common category of user confusion. +AC_DEFUN([CF_CC_ENV_FLAGS], +[ +# This should have been defined by AC_PROG_CC +: ${CC:=cc} + +AC_MSG_CHECKING(\$CC variable) +case "$CC" in #(vi +*[[\ \ ]]-[[IUD]]*) + AC_MSG_RESULT(broken) + AC_MSG_WARN(your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options) + # humor him... + cf_flags=`echo "$CC" | sed -e 's/^[[^ ]]*[[ ]]//'` + CC=`echo "$CC" | sed -e 's/[[ ]].*//'` + CF_ADD_CFLAGS($cf_flags) + ;; +*) + AC_MSG_RESULT(ok) + ;; +esac +])dnl +dnl --------------------------------------------------------------------------- +dnl CF_CHECK_CACHE version: 12 updated: 2012/10/02 20:55:03 dnl -------------- dnl Check if we're accidentally using a cache from a different machine. dnl Derive the system name, as a check for reusing the autoconf cache. @@ -1080,7 +1113,7 @@ else system_name="`(hostname) 2>/dev/null`" fi fi -test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name") +test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name",[Define to the system name.]) AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"]) test -z "$system_name" && system_name="$cf_cv_system_name" @@ -1092,7 +1125,40 @@ if test ".$system_name" != ".$cf_cv_syst fi ])dnl dnl --------------------------------------------------------------------------- -dnl CF_CURSES_CHTYPE version: 7 updated: 2010/10/23 15:54:49 +dnl CF_CLANG_COMPILER version: 1 updated: 2012/06/16 14:55:39 +dnl ----------------- +dnl Check if the given compiler is really clang. clang's C driver defines +dnl __GNUC__ (fooling the configure script into setting $GCC to yes) but does +dnl not ignore some gcc options. +dnl +dnl This macro should be run "soon" after AC_PROG_CC or AC_PROG_CPLUSPLUS, to +dnl ensure that it is not mistaken for gcc/g++. It is normally invoked from +dnl the wrappers for gcc and g++ warnings. +dnl +dnl $1 = GCC (default) or GXX +dnl $2 = INTEL_COMPILER (default) or INTEL_CPLUSPLUS +dnl $3 = CFLAGS (default) or CXXFLAGS +AC_DEFUN([CF_CLANG_COMPILER],[ +ifelse([$2],,CLANG_COMPILER,[$2])=no + +if test "$ifelse([$1],,[$1],GCC)" = yes ; then + AC_MSG_CHECKING(if this is really Clang ifelse([$1],GXX,C++,C) compiler) + cf_save_CFLAGS="$ifelse([$3],,CFLAGS,[$3])" + ifelse([$3],,CFLAGS,[$3])="$ifelse([$3],,CFLAGS,[$3]) -Qunused-arguments" + AC_TRY_COMPILE([],[ +#ifdef __clang__ +#else +make an error +#endif +],[ifelse([$2],,CLANG_COMPILER,[$2])=yes +cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments" +],[]) + ifelse([$3],,CFLAGS,[$3])="$cf_save_CFLAGS" + AC_MSG_RESULT($ifelse([$2],,CLANG_COMPILER,[$2])) +fi +]) +dnl --------------------------------------------------------------------------- +dnl CF_CURSES_CHTYPE version: 8 updated: 2012/10/06 08:57:51 dnl ---------------- dnl Test if curses defines 'chtype' (usually a 'long' type for SysV curses). AC_DEFUN([CF_CURSES_CHTYPE], @@ -1104,14 +1170,14 @@ AC_CACHE_CHECK(for chtype typedef,cf_cv_ [cf_cv_chtype_decl=yes], [cf_cv_chtype_decl=no])]) if test $cf_cv_chtype_decl = yes ; then - AC_DEFINE(HAVE_TYPE_CHTYPE) + AC_DEFINE(HAVE_TYPE_CHTYPE,1,[Define to 1 if chtype is declared]) AC_CACHE_CHECK(if chtype is scalar or struct,cf_cv_chtype_type,[ AC_TRY_COMPILE([#include <${cf_cv_ncurses_header:-curses.h}>], [chtype foo; long x = foo], [cf_cv_chtype_type=scalar], [cf_cv_chtype_type=struct])]) if test $cf_cv_chtype_type = scalar ; then - AC_DEFINE(TYPE_CHTYPE_IS_SCALAR) + AC_DEFINE(TYPE_CHTYPE_IS_SCALAR,1,[Define to 1 if chtype is a scaler/integer]) fi fi ])dnl @@ -1227,7 +1293,7 @@ fi AC_CHECK_HEADERS($cf_cv_ncurses_header) ])dnl dnl --------------------------------------------------------------------------- -dnl CF_CURSES_LIBS version: 34 updated: 2011/04/09 14:51:08 +dnl CF_CURSES_LIBS version: 36 updated: 2012/07/07 21:02:48 dnl -------------- dnl Look for the curses libraries. Older curses implementations may require dnl termcap/termlib to be linked as well. Call CF_CURSES_CPPFLAGS first. @@ -1307,7 +1373,7 @@ if test ".$ac_cv_func_initscr" != .yes ; # Check for library containing tgoto. Do this before curses library # because it may be needed to link the test-case for initscr. AC_CHECK_FUNC(tgoto,[cf_term_lib=predefined],[ - for cf_term_lib in $cf_check_list termcap termlib unknown + for cf_term_lib in $cf_check_list otermcap termcap tinfo termlib unknown do AC_CHECK_LIB($cf_term_lib,tgoto,[break]) done @@ -1351,7 +1417,7 @@ fi ])dnl dnl --------------------------------------------------------------------------- -dnl CF_CURSES_TERM_H version: 9 updated: 2011/04/09 18:19:55 +dnl CF_CURSES_TERM_H version: 10 updated: 2012/10/06 08:57:51 dnl ---------------- dnl SVr4 curses should have term.h as well (where it puts the definitions of dnl the low-level interface). This may not be true in old/broken implementations, @@ -1410,18 +1476,18 @@ esac case $cf_cv_term_header in #(vi term.h) #(vi - AC_DEFINE(HAVE_TERM_H) + AC_DEFINE(HAVE_TERM_H,1,[Define to 1 if we have term.h]) ;; ncurses/term.h) #(vi - AC_DEFINE(HAVE_NCURSES_TERM_H) + AC_DEFINE(HAVE_NCURSES_TERM_H,1,[Define to 1 if we have ncurses/term.h]) ;; ncursesw/term.h) - AC_DEFINE(HAVE_NCURSESW_TERM_H) + AC_DEFINE(HAVE_NCURSESW_TERM_H,1,[Define to 1 if we have ncursesw/term.h]) ;; esac ])dnl dnl --------------------------------------------------------------------------- -dnl CF_CURSES_UNCTRL_H version: 1 updated: 2011/04/09 18:19:55 +dnl CF_CURSES_UNCTRL_H version: 2 updated: 2012/10/06 08:57:51 dnl ------------------ dnl Any X/Open curses implementation must have unctrl.h, but ncurses packages dnl may put it in a subdirectory (along with ncurses' other headers, of @@ -1465,18 +1531,18 @@ esac case $cf_cv_unctrl_header in #(vi unctrl.h) #(vi - AC_DEFINE(HAVE_UNCTRL_H) + AC_DEFINE(HAVE_UNCTRL_H,1,[Define to 1 if we have unctrl.h]) ;; ncurses/unctrl.h) #(vi - AC_DEFINE(HAVE_NCURSES_UNCTRL_H) + AC_DEFINE(HAVE_NCURSES_UNCTRL_H,1,[Define to 1 if we have ncurses/unctrl.h]) ;; ncursesw/unctrl.h) - AC_DEFINE(HAVE_NCURSESW_UNCTRL_H) + AC_DEFINE(HAVE_NCURSESW_UNCTRL_H,1,[Define to 1 if we have ncursesw/unctrl.h]) ;; esac ])dnl dnl --------------------------------------------------------------------------- -dnl CF_CURSES_WACS_MAP version: 5 updated: 2011/01/15 11:28:59 +dnl CF_CURSES_WACS_MAP version: 6 updated: 2012/10/06 08:57:51 dnl ------------------ dnl Check for likely values of wacs_map[]. AC_DEFUN([CF_CURSES_WACS_MAP], @@ -1495,10 +1561,10 @@ AC_CACHE_CHECK(for wide alternate charac break]) done]) -test "$cf_cv_curses_wacs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_WACS_ARRAY,$cf_cv_curses_wacs_map) +test "$cf_cv_curses_wacs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_WACS_ARRAY,$cf_cv_curses_wacs_map,[Define to name of (n)curses wide-character array]) ])dnl dnl --------------------------------------------------------------------------- -dnl CF_CURSES_WACS_SYMBOLS version: 1 updated: 2011/01/15 11:28:59 +dnl CF_CURSES_WACS_SYMBOLS version: 2 updated: 2012/10/06 08:57:51 dnl ---------------------- dnl Do a check to see if the WACS_xxx constants are defined compatibly with dnl X/Open Curses. In particular, NetBSD's implementation of the WACS_xxx @@ -1530,7 +1596,31 @@ else fi ]) -test "$cf_cv_curses_wacs_symbols" != no && AC_DEFINE(CURSES_WACS_SYMBOLS) +test "$cf_cv_curses_wacs_symbols" != no && AC_DEFINE(CURSES_WACS_SYMBOLS,1,[Define to 1 if (n)curses supports wide-character WACS_ symbols]) +])dnl +dnl --------------------------------------------------------------------------- +dnl CF_CURSES_WGETPARENT version: 3 updated: 2012/10/06 08:57:51 +dnl -------------------- +dnl Check for curses support for directly determining the parent of a given +dnl window. Some implementations make this difficult, so we provide for +dnl defining an application-specific function that gives this functionality. +dnl +dnl $1 = name of function to use if the feature is missing +AC_DEFUN([CF_CURSES_WGETPARENT],[ +CF_CURSES_FUNCS(wgetparent) +if test "x$cf_cv_func_wgetparent" != xyes +then + AC_MSG_CHECKING(if WINDOW has _parent member) + AC_TRY_COMPILE([#include <${cf_cv_ncurses_header:-curses.h}>], + [WINDOW *p = stdscr->_parent], + [cf_window__parent=yes], + [cf_window__parent=no]) + AC_MSG_RESULT($cf_window__parent) + if test "$cf_window__parent" = yes + then + AC_DEFINE(HAVE_WINDOW__PARENT,1,[Define to 1 if WINDOW struct has _parent member]) + fi +fi ])dnl dnl --------------------------------------------------------------------------- dnl CF_DIRNAME version: 4 updated: 2002/12/21 19:25:52 @@ -1538,7 +1628,7 @@ dnl ---------- dnl "dirname" is not portable, so we fake it with a shell script. AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl dnl --------------------------------------------------------------------------- -dnl CF_DISABLE_ECHO version: 11 updated: 2009/12/13 13:16:57 +dnl CF_DISABLE_ECHO version: 12 updated: 2012/10/06 16:30:28 dnl --------------- dnl You can always use "make -n" to see the actual options, but it's hard to dnl pick out/analyze warning messages when the compile-line is long. @@ -1553,7 +1643,7 @@ dnl AC_DEFUN([CF_DISABLE_ECHO],[ AC_MSG_CHECKING(if you want to see long compiling messages) CF_ARG_DISABLE(echo, - [ --disable-echo display "compiling" commands], + [ --disable-echo do not display "compiling" commands], [ ECHO_LT='--silent' ECHO_LD='@echo linking [$]@;' @@ -1618,38 +1708,6 @@ if test "$cf_disable_rpath_hack" = no ; fi ]) dnl --------------------------------------------------------------------------- -dnl CF_FIND_HEADER version: 2 updated: 2007/07/29 11:32:00 -dnl -------------- -dnl Find a header file, searching for it if it is not already in the include -dnl path. -dnl -dnl $1 = the header filename -dnl $2 = the package name -dnl $3 = action to perform if successful -dnl $4 = action to perform if not successful -AC_DEFUN([CF_FIND_HEADER],[ -AC_CHECK_HEADER([$1], - cf_find_header=yes,[ - cf_find_header=no -CF_HEADER_PATH(cf_search,$2) -for cf_incdir in $cf_search -do - if test -f $cf_incdir/$1 ; then - CF_ADD_INCDIR($cf_incdir) - CF_VERBOSE(... found in $cf_incdir) - cf_find_header=yes - break - fi - CF_VERBOSE(... tested $cf_incdir) -done -]) -if test "$cf_find_header" = yes ; then -ifelse([$3],,:,[$3]) -ifelse([$4],,,[else -$4]) -fi -])dnl -dnl --------------------------------------------------------------------------- dnl CF_FIND_LIBRARY version: 9 updated: 2008/03/23 14:48:54 dnl --------------- dnl Look for a non-standard library, given parameters for AC_TRY_LINK. We @@ -1830,7 +1888,7 @@ ifelse([$5],,AC_MSG_WARN(Cannot find $3 fi ])dnl dnl --------------------------------------------------------------------------- -dnl CF_FUNC_WAIT version: 2 updated: 1997/10/21 19:45:33 +dnl CF_FUNC_WAIT version: 3 updated: 2012/10/06 08:57:51 dnl ------------ dnl Test for the presence of , 'union wait', arg-type of 'wait()' dnl and/or 'waitpid()'. @@ -1855,7 +1913,7 @@ if test $cf_cv_type_unionwait = yes; the [cf_cv_arg_union_wait=no]) ]) AC_MSG_RESULT($cf_cv_arg_union_wait) - test $cf_cv_arg_union_wait = yes && AC_DEFINE(WAIT_USES_UNION) + test $cf_cv_arg_union_wait = yes && AC_DEFINE(WAIT_USES_UNION,1,[Define to 1 if wait() uses a union parameter]) AC_MSG_CHECKING(if union wait can be used as waitpid-arg) AC_CACHE_VAL(cf_cv_arg_union_waitpid,[ @@ -1865,12 +1923,12 @@ if test $cf_cv_type_unionwait = yes; the [cf_cv_arg_union_waitpid=no]) ]) AC_MSG_RESULT($cf_cv_arg_union_waitpid) - test $cf_cv_arg_union_waitpid = yes && AC_DEFINE(WAITPID_USES_UNION) + test $cf_cv_arg_union_waitpid = yes && AC_DEFINE(WAITPID_USES_UNION,1,[Define to 1 if waitpid() uses a union parameter]) fi ])dnl dnl --------------------------------------------------------------------------- -dnl CF_GCC_ATTRIBUTES version: 14 updated: 2010/10/23 15:52:32 +dnl CF_GCC_ATTRIBUTES version: 16 updated: 2012/10/02 20:55:03 dnl ----------------- dnl Test for availability of useful gcc __attribute__ directives to quiet dnl compiler warnings. Though useful, not all are supported -- and contrary @@ -1948,27 +2006,27 @@ EOF test -n "$verbose" && AC_MSG_RESULT(... $cf_attribute) cat conftest.h >>confdefs.h case $cf_attribute in #(vi + noreturn) #(vi + AC_DEFINE_UNQUOTED(GCC_NORETURN,$cf_directive,[Define to noreturn-attribute for gcc]) + ;; printf) #(vi - if test "$cf_printf_attribute" = no ; then - cat >>confdefs.h <>confdefs.h <>confdefs.h <>confdefs.h < conftest.$ac_ext < Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id DB91CCE; Mon, 17 Jun 2013 12:49:26 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id CE042133C; Mon, 17 Jun 2013 12:49:26 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HCnQxw079362; Mon, 17 Jun 2013 12:49:26 GMT (envelope-from emaste@svn.freebsd.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HCnQm5079361; Mon, 17 Jun 2013 12:49:26 GMT (envelope-from emaste@svn.freebsd.org) Message-Id: <201306171249.r5HCnQm5079361@svn.freebsd.org> From: Ed Maste Date: Mon, 17 Jun 2013 12:49:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251844 - head/contrib/gdb/gdb X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 12:49:26 -0000 Author: emaste Date: Mon Jun 17 12:49:26 2013 New Revision: 251844 URL: http://svnweb.freebsd.org/changeset/base/251844 Log: Include die tag in error message Modified: head/contrib/gdb/gdb/dwarf2read.c Modified: head/contrib/gdb/gdb/dwarf2read.c ============================================================================== --- head/contrib/gdb/gdb/dwarf2read.c Mon Jun 17 10:28:55 2013 (r251843) +++ head/contrib/gdb/gdb/dwarf2read.c Mon Jun 17 12:49:26 2013 (r251844) @@ -6082,8 +6082,8 @@ tag_type_to_type (struct die_info *die, if (!die->type) { dump_die (die); - error ("Dwarf Error: Cannot find type of die [in module %s]", - cu->objfile->name); + error ("Dwarf Error: Cannot find type of die 0x%x [in module %s]", + die->tag, cu->objfile->name); } return die->type; } From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 13:02:39 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D54799D8; Mon, 17 Jun 2013 13:02:39 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C72AA1472; Mon, 17 Jun 2013 13:02:39 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HD2dBD084691; Mon, 17 Jun 2013 13:02:39 GMT (envelope-from bapt@svn.freebsd.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HD2d5d084690; Mon, 17 Jun 2013 13:02:39 GMT (envelope-from bapt@svn.freebsd.org) Message-Id: <201306171302.r5HD2d5d084690@svn.freebsd.org> From: Baptiste Daroussin Date: Mon, 17 Jun 2013 13:02:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251845 - head/gnu/lib/libdialog X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 13:02:39 -0000 Author: bapt Date: Mon Jun 17 13:02:39 2013 New Revision: 251845 URL: http://svnweb.freebsd.org/changeset/base/251845 Log: lower the WARNS to 1 again until I have more time to figure out the problems with WARNS=4 Reported by: gavin Modified: head/gnu/lib/libdialog/Makefile Modified: head/gnu/lib/libdialog/Makefile ============================================================================== --- head/gnu/lib/libdialog/Makefile Mon Jun 17 12:49:26 2013 (r251844) +++ head/gnu/lib/libdialog/Makefile Mon Jun 17 13:02:39 2013 (r251845) @@ -15,6 +15,6 @@ MAN= dialog.3 CFLAGS+= -I${.CURDIR} -I${DIALOG} -D_XOPEN_SOURCE_EXTENDED -DGCC_UNUSED=__unused .PATH: ${DIALOG} -WARNS?= 4 +WARNS?= 1 .include From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 13:28:55 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 818DC418; Mon, 17 Jun 2013 13:28:55 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from smtpauth2.wiscmail.wisc.edu (wmauth2.doit.wisc.edu [144.92.197.222]) by mx1.freebsd.org (Postfix) with ESMTP id 19E0116C3; Mon, 17 Jun 2013 13:28:55 +0000 (UTC) MIME-version: 1.0 Content-transfer-encoding: 7BIT Content-type: text/plain; CHARSET=US-ASCII; format=flowed Received: from avs-daemon.smtpauth2.wiscmail.wisc.edu by smtpauth2.wiscmail.wisc.edu (Oracle Communications Messaging Server 7u4-27.01(7.0.4.27.0) 64bit (built Aug 30 2012)) id <0MOJ00100GRFYF00@smtpauth2.wiscmail.wisc.edu>; Mon, 17 Jun 2013 08:28:48 -0500 (CDT) X-Spam-PmxInfo: Server=avs-2, Version=6.0.2.2308539, Antispam-Engine: 2.7.2.2107409, Antispam-Data: 2013.6.17.131816, SenderIP=0.0.0.0 X-Spam-Report: AuthenticatedSender=yes, SenderIP=0.0.0.0 Received: from comporellon.tachypleus.net (adsl-76-208-69-84.dsl.mdsnwi.sbcglobal.net [76.208.69.84]) by smtpauth2.wiscmail.wisc.edu (Oracle Communications Messaging Server 7u4-27.01(7.0.4.27.0) 64bit (built Aug 30 2012)) with ESMTPSA id <0MOJ005ZWHFZLQ10@smtpauth2.wiscmail.wisc.edu>; Mon, 17 Jun 2013 08:28:48 -0500 (CDT) Message-id: <51BF0F0F.1080907@freebsd.org> Date: Mon, 17 Jun 2013 08:28:47 -0500 From: Nathan Whitehorn User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130615 Thunderbird/17.0.6 To: Baptiste Daroussin Subject: Re: svn commit: r251843 - in head: contrib/dialog contrib/dialog/package contrib/dialog/package/debian contrib/dialog/po contrib/dialog/samples contrib/dialog/samples/copifuncs contrib/dialog/samples/i... References: <201306171028.r5HAStR2033639@svn.freebsd.org> In-reply-to: <201306171028.r5HAStR2033639@svn.freebsd.org> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 13:28:55 -0000 On 06/17/13 05:28, Baptiste Daroussin wrote: > Author: bapt > Date: Mon Jun 17 10:28:55 2013 > New Revision: 251843 > URL: http://svnweb.freebsd.org/changeset/base/251843 > > Log: > Update dialog to 1.2-20130523 > Level up WARNS This seems to have broken bsdinstall. In particular, it is no longer possible to get focus in the text input boxes in the partition editor's (sade/bsdinstall partedit) "Add Partition" or "Modify Partition" dialogs. Any chance you could try to figure out why? My Ncurses debugging skills are unfortunately not great. -Nathan From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 13:36:49 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7F5F286F; Mon, 17 Jun 2013 13:36:49 +0000 (UTC) (envelope-from baptiste.daroussin@gmail.com) Received: from mail-wg0-x233.google.com (mail-wg0-x233.google.com [IPv6:2a00:1450:400c:c00::233]) by mx1.freebsd.org (Postfix) with ESMTP id 92668173A; Mon, 17 Jun 2013 13:36:48 +0000 (UTC) Received: by mail-wg0-f51.google.com with SMTP id e11so2409869wgh.30 for ; Mon, 17 Jun 2013 06:36:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=0pZUFTpOV/LdojtB1Ln8110hvWfJUm0ipvqyCzVkLBQ=; b=PqLRppVyB3B9kbEaXmtNzx4sjAvWDThZ4F1r0ujnS0Xig4BYq7MQCBje1TObghPXZx fdiu0PzydMmmjlU4cpEy3CiW73Nhv4BNQqdwzy7YnVlWBs28xbpMO7E5UUlrcvdjbm63 HD4Voj/Ia1+9bBYs5ToBjv+wurL4o0pV5auH+tFfyPxZ80RFgaUpYfImP6nQEilQwPCx jzF7LY9jbuYmCKC4eZKQzbFpu6Hn6q29jfMvdlve6YopHeApK38uRhj+vvZI9GmQTkDD ERZtWIz9V6ivWdbOkhRbXWhWDjEJ5D3mBBgZgRc345HGPzEUhYJGQdI/bsPwfK9Q4qo4 +wHQ== X-Received: by 10.180.13.34 with SMTP id e2mr5034545wic.2.1371476207801; Mon, 17 Jun 2013 06:36:47 -0700 (PDT) Received: from ithaqua.etoilebsd.net (ithaqua.etoilebsd.net. [37.59.37.188]) by mx.google.com with ESMTPSA id fb9sm22154110wid.2.2013.06.17.06.36.46 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Mon, 17 Jun 2013 06:36:47 -0700 (PDT) Sender: Baptiste Daroussin Date: Mon, 17 Jun 2013 15:36:44 +0200 From: Baptiste Daroussin To: Nathan Whitehorn Subject: Re: svn commit: r251843 - in head: contrib/dialog contrib/dialog/package contrib/dialog/package/debian contrib/dialog/po contrib/dialog/samples contrib/dialog/samples/copifuncs contrib/dialog/samples/i... Message-ID: <20130617133644.GB62733@ithaqua.etoilebsd.net> References: <201306171028.r5HAStR2033639@svn.freebsd.org> <51BF0F0F.1080907@freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="QKdGvSO+nmPlgiQ/" Content-Disposition: inline In-Reply-To: <51BF0F0F.1080907@freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 13:36:49 -0000 --QKdGvSO+nmPlgiQ/ Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Jun 17, 2013 at 08:28:47AM -0500, Nathan Whitehorn wrote: > On 06/17/13 05:28, Baptiste Daroussin wrote: > > Author: bapt > > Date: Mon Jun 17 10:28:55 2013 > > New Revision: 251843 > > URL: http://svnweb.freebsd.org/changeset/base/251843 > > > > Log: > > Update dialog to 1.2-20130523 > > Level up WARNS >=20 > This seems to have broken bsdinstall. In particular, it is no longer=20 > possible to get focus in the text input boxes in the partition editor's= =20 > (sade/bsdinstall partedit) "Add Partition" or "Modify Partition"=20 > dialogs. Any chance you could try to figure out why? My Ncurses=20 > debugging skills are unfortunately not great. I'm on it, yes, it seems like the dlg_forms is leaking the bindings from the diskeditors form. I have a working patch but it is ugly. I'm trying to figure out the clean w= ay to do so. regards, Bapt --QKdGvSO+nmPlgiQ/ Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iEYEARECAAYFAlG/EOwACgkQ8kTtMUmk6EwcAACeIuP5JkTJPSL5XzcBLLIlIZhK e1AAnAnMyetEbcKliUkzw6CKU6RlCvN5 =/HZx -----END PGP SIGNATURE----- --QKdGvSO+nmPlgiQ/-- From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 13:37:40 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 83942BA9; Mon, 17 Jun 2013 13:37:40 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from smtpauth3.wiscmail.wisc.edu (wmauth3.doit.wisc.edu [144.92.197.226]) by mx1.freebsd.org (Postfix) with ESMTP id EE211174B; Mon, 17 Jun 2013 13:37:39 +0000 (UTC) MIME-version: 1.0 Content-transfer-encoding: 7BIT Content-type: text/plain; CHARSET=US-ASCII; format=flowed Received: from avs-daemon.smtpauth3.wiscmail.wisc.edu by smtpauth3.wiscmail.wisc.edu (Oracle Communications Messaging Server 7u4-27.01(7.0.4.27.0) 64bit (built Aug 30 2012)) id <0MOJ00300HM22Q00@smtpauth3.wiscmail.wisc.edu>; Mon, 17 Jun 2013 08:37:39 -0500 (CDT) X-Spam-PmxInfo: Server=avs-3, Version=6.0.2.2308539, Antispam-Engine: 2.7.2.2107409, Antispam-Data: 2013.6.17.132721, SenderIP=0.0.0.0 X-Spam-Report: AuthenticatedSender=yes, SenderIP=0.0.0.0 Received: from comporellon.tachypleus.net (adsl-76-208-69-84.dsl.mdsnwi.sbcglobal.net [76.208.69.84]) by smtpauth3.wiscmail.wisc.edu (Oracle Communications Messaging Server 7u4-27.01(7.0.4.27.0) 64bit (built Aug 30 2012)) with ESMTPSA id <0MOJ00C4LHUPHD20@smtpauth3.wiscmail.wisc.edu>; Mon, 17 Jun 2013 08:37:38 -0500 (CDT) Message-id: <51BF1121.9000408@freebsd.org> Date: Mon, 17 Jun 2013 08:37:37 -0500 From: Nathan Whitehorn User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130615 Thunderbird/17.0.6 To: Baptiste Daroussin Subject: Re: svn commit: r251843 - in head: contrib/dialog contrib/dialog/package contrib/dialog/package/debian contrib/dialog/po contrib/dialog/samples contrib/dialog/samples/copifuncs contrib/dialog/samples/i... References: <201306171028.r5HAStR2033639@svn.freebsd.org> <51BF0F0F.1080907@freebsd.org> <20130617133644.GB62733@ithaqua.etoilebsd.net> In-reply-to: <20130617133644.GB62733@ithaqua.etoilebsd.net> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 13:37:40 -0000 On 06/17/13 08:36, Baptiste Daroussin wrote: > On Mon, Jun 17, 2013 at 08:28:47AM -0500, Nathan Whitehorn wrote: >> On 06/17/13 05:28, Baptiste Daroussin wrote: >>> Author: bapt >>> Date: Mon Jun 17 10:28:55 2013 >>> New Revision: 251843 >>> URL: http://svnweb.freebsd.org/changeset/base/251843 >>> >>> Log: >>> Update dialog to 1.2-20130523 >>> Level up WARNS >> This seems to have broken bsdinstall. In particular, it is no longer >> possible to get focus in the text input boxes in the partition editor's >> (sade/bsdinstall partedit) "Add Partition" or "Modify Partition" >> dialogs. Any chance you could try to figure out why? My Ncurses >> debugging skills are unfortunately not great. > I'm on it, yes, it seems like the dlg_forms is leaking the bindings from the > diskeditors form. > > I have a working patch but it is ugly. I'm trying to figure out the clean way to > do so. > > regards, > Bapt Thanks much! Please let me know if I can do anything to help. -Nathan From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 14:46:55 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 403CDA61; Mon, 17 Jun 2013 14:46:55 +0000 (UTC) (envelope-from pluknet@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 32D191AFE; Mon, 17 Jun 2013 14:46:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HEkt6H018343; Mon, 17 Jun 2013 14:46:55 GMT (envelope-from pluknet@svn.freebsd.org) Received: (from pluknet@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HEksbk018341; Mon, 17 Jun 2013 14:46:54 GMT (envelope-from pluknet@svn.freebsd.org) Message-Id: <201306171446.r5HEksbk018341@svn.freebsd.org> From: Sergey Kandaurov Date: Mon, 17 Jun 2013 14:46:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251848 - head/contrib/wpa/src/utils X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 14:46:55 -0000 Author: pluknet Date: Mon Jun 17 14:46:54 2013 New Revision: 251848 URL: http://svnweb.freebsd.org/changeset/base/251848 Log: Import change e4ac6417c7504e1c55ec556ce908974c04e29e3c from upstream wpa: From: Guy Eilam Date: Mon, 21 Feb 2011 20:44:46 +0000 (+0200) Subject: utils: Corrected a typo in header's name definition utils: Corrected a typo in header's name definition Corrected a typo in the BASE64_H definition that might cause the header file to be included more than once. Signed-off-by: Guy Eilam Submitted by: MFC after: 3 days Modified: head/contrib/wpa/src/utils/base64.h Modified: head/contrib/wpa/src/utils/base64.h ============================================================================== --- head/contrib/wpa/src/utils/base64.h Mon Jun 17 14:41:39 2013 (r251847) +++ head/contrib/wpa/src/utils/base64.h Mon Jun 17 14:46:54 2013 (r251848) @@ -13,7 +13,7 @@ */ #ifndef BASE64_H -#define BASE64_h +#define BASE64_H unsigned char * base64_encode(const unsigned char *src, size_t len, size_t *out_len); From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 15:16:14 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id DFEC74F7; Mon, 17 Jun 2013 15:16:14 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id D265F1D3A; Mon, 17 Jun 2013 15:16:14 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HFGE6b029159; Mon, 17 Jun 2013 15:16:14 GMT (envelope-from bapt@svn.freebsd.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HFGEkL029158; Mon, 17 Jun 2013 15:16:14 GMT (envelope-from bapt@svn.freebsd.org) Message-Id: <201306171516.r5HFGEkL029158@svn.freebsd.org> From: Baptiste Daroussin Date: Mon, 17 Jun 2013 15:16:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251854 - head/usr.sbin/bsdinstall/partedit X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 15:16:15 -0000 Author: bapt Date: Mon Jun 17 15:16:14 2013 New Revision: 251854 URL: http://svnweb.freebsd.org/changeset/base/251854 Log: Fix bindings of keys when in the partition editor. By adding the usual input binding to the "partlist" sub window. This is a workaround, as for unknown yet reason the keys binded on the Partition Edition window are the one from partlist instead of the one from standard "formfield" Reported by: alfred, nwhitehorn Modified: head/usr.sbin/bsdinstall/partedit/diskeditor.c Modified: head/usr.sbin/bsdinstall/partedit/diskeditor.c ============================================================================== --- head/usr.sbin/bsdinstall/partedit/diskeditor.c Mon Jun 17 15:01:40 2013 (r251853) +++ head/usr.sbin/bsdinstall/partedit/diskeditor.c Mon Jun 17 15:16:14 2013 (r251854) @@ -94,6 +94,22 @@ diskeditor_show(const char *title, const END_KEYS_BINDING }; + static DLG_KEYS_BINDING binding2[] = { + INPUTSTR_BINDINGS, + ENTERKEY_BINDINGS, + DLG_KEYS_DATA( DLGK_FIELD_NEXT, TAB ), + DLG_KEYS_DATA( DLGK_FIELD_PREV, KEY_BTAB ), + DLG_KEYS_DATA( DLGK_ITEM_NEXT, CHR_NEXT ), + DLG_KEYS_DATA( DLGK_ITEM_NEXT, KEY_DOWN ), + DLG_KEYS_DATA( DLGK_ITEM_NEXT, KEY_NEXT ), + DLG_KEYS_DATA( DLGK_ITEM_PREV, CHR_PREVIOUS ), + DLG_KEYS_DATA( DLGK_ITEM_PREV, KEY_PREVIOUS ), + DLG_KEYS_DATA( DLGK_ITEM_PREV, KEY_UP ), + DLG_KEYS_DATA( DLGK_PAGE_NEXT, KEY_NPAGE ), + DLG_KEYS_DATA( DLGK_PAGE_PREV, KEY_PPAGE ), + END_KEYS_BINDING + }; + /* * Set up editor window. */ @@ -125,7 +141,7 @@ diskeditor_show(const char *title, const /* Partition list sub-window */ partitions = dlg_sub_window(dialog, partlist_height, partlist_width, y + 3, x + 1); - dlg_register_window(partitions, "partlist", binding); + dlg_register_window(partitions, "partlist", binding2); dlg_register_buttons(partitions, "partlist", buttons); wattrset(partitions, menubox_attr); From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 15:17:39 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 7BE42836; Mon, 17 Jun 2013 15:17:39 +0000 (UTC) (envelope-from baptiste.daroussin@gmail.com) Received: from mail-wi0-x229.google.com (mail-wi0-x229.google.com [IPv6:2a00:1450:400c:c05::229]) by mx1.freebsd.org (Postfix) with ESMTP id 8C89F1D4A; Mon, 17 Jun 2013 15:17:38 +0000 (UTC) Received: by mail-wi0-f169.google.com with SMTP id c10so4174853wiw.0 for ; Mon, 17 Jun 2013 08:17:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=Au1aRSYG3lGEd/dR/tXgJbBm76M0fkmSXulgNOVfF0Y=; b=s1/4zU2x/dm0MFp84Wi5t1xoVDvQOfCZoNkpBw/6a9PdbsqM66sjR0L6urneJaRZZs dHg2ReuYmpsMN3tAzzbp3bPaOz7h0Z+rKWdyB4gqJe+6E8zIxt/QkCB1p/Dh7ACsAIX9 UyveiCGuzxKikc/1lCCkeaP8n/j15KfTmt561uE5P3yEkd1PnADT7M1nGwRKYRcvNrQA V3xK5/+40p13PPs+3OyktafJcJhhjlSJdY7pGQCdJbvZm173g/VLzHs+9cY/81MEYeGp YW/v8FEkV6Ev+St3kqoZXFG7LzsofCuTSbs23X1kmdVb7CxoSd4R33vhY0JSoo7/7iHq 5s8w== X-Received: by 10.180.198.194 with SMTP id je2mr5124187wic.36.1371482257636; Mon, 17 Jun 2013 08:17:37 -0700 (PDT) Received: from ithaqua.etoilebsd.net (ithaqua.etoilebsd.net. [37.59.37.188]) by mx.google.com with ESMTPSA id fu14sm22712489wic.8.2013.06.17.08.17.36 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Mon, 17 Jun 2013 08:17:36 -0700 (PDT) Sender: Baptiste Daroussin Date: Mon, 17 Jun 2013 17:17:34 +0200 From: Baptiste Daroussin To: Nathan Whitehorn Subject: Re: svn commit: r251843 - in head: contrib/dialog contrib/dialog/package contrib/dialog/package/debian contrib/dialog/po contrib/dialog/samples contrib/dialog/samples/copifuncs contrib/dialog/samples/i... Message-ID: <20130617151734.GC62733@ithaqua.etoilebsd.net> References: <201306171028.r5HAStR2033639@svn.freebsd.org> <51BF0F0F.1080907@freebsd.org> <20130617133644.GB62733@ithaqua.etoilebsd.net> <51BF1121.9000408@freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="IpbVkmxF4tDyP/Kb" Content-Disposition: inline In-Reply-To: <51BF1121.9000408@freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 15:17:39 -0000 --IpbVkmxF4tDyP/Kb Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Mon, Jun 17, 2013 at 08:37:37AM -0500, Nathan Whitehorn wrote: > On 06/17/13 08:36, Baptiste Daroussin wrote: > > On Mon, Jun 17, 2013 at 08:28:47AM -0500, Nathan Whitehorn wrote: > >> On 06/17/13 05:28, Baptiste Daroussin wrote: > >>> Author: bapt > >>> Date: Mon Jun 17 10:28:55 2013 > >>> New Revision: 251843 > >>> URL: http://svnweb.freebsd.org/changeset/base/251843 > >>> > >>> Log: > >>> Update dialog to 1.2-20130523 > >>> Level up WARNS > >> This seems to have broken bsdinstall. In particular, it is no longer > >> possible to get focus in the text input boxes in the partition editor's > >> (sade/bsdinstall partedit) "Add Partition" or "Modify Partition" > >> dialogs. Any chance you could try to figure out why? My Ncurses > >> debugging skills are unfortunately not great. > > I'm on it, yes, it seems like the dlg_forms is leaking the bindings fro= m the > > diskeditors form. > > > > I have a working patch but it is ugly. I'm trying to figure out the cle= an way to > > do so. > > > > regards, > > Bapt >=20 > Thanks much! Please let me know if I can do anything to help. I committed a workaround, I dicovered that the key on the Partition Editor window are not the one we expect to be, I see no errors yet in libdialog co= de, I'll continue investigating, but waiting for a proper fix, it is usable aga= in. regards, Bapt --IpbVkmxF4tDyP/Kb Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iEYEARECAAYFAlG/KI4ACgkQ8kTtMUmk6ExCDACfQYQ06Ukw3i2AWQEdPica+W9X BTwAn37dhEUXrJgOzeXZFkPMavF+1eQl =g3pE -----END PGP SIGNATURE----- --IpbVkmxF4tDyP/Kb-- From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 15:30:48 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 38C5144C; Mon, 17 Jun 2013 15:30:48 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 2B73F1DFC; Mon, 17 Jun 2013 15:30:48 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HFUmwt035190; Mon, 17 Jun 2013 15:30:48 GMT (envelope-from theraven@svn.freebsd.org) Received: (from theraven@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HFUmx5035189; Mon, 17 Jun 2013 15:30:48 GMT (envelope-from theraven@svn.freebsd.org) Message-Id: <201306171530.r5HFUmx5035189@svn.freebsd.org> From: David Chisnall Date: Mon, 17 Jun 2013 15:30:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251855 - head/sys/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 15:30:48 -0000 Author: theraven Date: Mon Jun 17 15:30:47 2013 New Revision: 251855 URL: http://svnweb.freebsd.org/changeset/base/251855 Log: Rename a parameter in sys/time.h so that you don't get warnings for things like libdialog that include both this header and math.h. Modified: head/sys/sys/time.h Modified: head/sys/sys/time.h ============================================================================== --- head/sys/sys/time.h Mon Jun 17 15:16:14 2013 (r251854) +++ head/sys/sys/time.h Mon Jun 17 15:30:47 2013 (r251855) @@ -103,17 +103,17 @@ bintime_mul(struct bintime *bt, u_int x) } static __inline void -bintime_shift(struct bintime *bt, int exp) +bintime_shift(struct bintime *__bt, int __exp) { - if (exp > 0) { - bt->sec <<= exp; - bt->sec |= bt->frac >> (64 - exp); - bt->frac <<= exp; - } else if (exp < 0) { - bt->frac >>= -exp; - bt->frac |= (uint64_t)bt->sec << (64 + exp); - bt->sec >>= -exp; + if (__exp > 0) { + __bt->sec <<= __exp; + __bt->sec |= __bt->frac >> (64 - __exp); + __bt->frac <<= __exp; + } else if (__exp < 0) { + __bt->frac >>= -__exp; + __bt->frac |= (uint64_t)__bt->sec << (64 + __exp); + __bt->sec >>= -__exp; } } From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 15:34:23 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id B54529C7; Mon, 17 Jun 2013 15:34:23 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8ED4A1E37; Mon, 17 Jun 2013 15:34:23 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HFYNkO036118; Mon, 17 Jun 2013 15:34:23 GMT (envelope-from theraven@svn.freebsd.org) Received: (from theraven@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HFYNk9036116; Mon, 17 Jun 2013 15:34:23 GMT (envelope-from theraven@svn.freebsd.org) Message-Id: <201306171534.r5HFYNk9036116@svn.freebsd.org> From: David Chisnall Date: Mon, 17 Jun 2013 15:34:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251856 - head/usr.bin/dtc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 15:34:23 -0000 Author: theraven Date: Mon Jun 17 15:34:22 2013 New Revision: 251856 URL: http://svnweb.freebsd.org/changeset/base/251856 Log: Add a checker to dtc, based on a feature request from rwatson / brooks. This checks that every node that has children specifies their register sizes. This is not enabled by default, as the default sizes are sometimes required (including by some DTS in the tree), but can help when writing new device trees so that you can check that you actually meant the defaults. Modified: head/usr.bin/dtc/checking.cc head/usr.bin/dtc/dtc.1 Modified: head/usr.bin/dtc/checking.cc ============================================================================== --- head/usr.bin/dtc/checking.cc Mon Jun 17 15:30:47 2013 (r251855) +++ head/usr.bin/dtc/checking.cc Mon Jun 17 15:34:22 2013 (r251856) @@ -33,6 +33,8 @@ #include "checking.hh" #include + + namespace dtc { namespace fdt @@ -40,6 +42,54 @@ namespace fdt namespace checking { +namespace +{ + /** + * Checker that verifies that every node that has children has + * #address-cells and #size-cells properties. + */ + struct address_cells_checker : public checker + { + address_cells_checker(const char *name) : checker(name) {} + virtual bool check_node(device_tree *tree, node *n) + { + // If this has no children, it trivially meets the + // conditions. + if (n->child_begin() == n->child_end()) + { + return true; + } + bool found_address = false; + bool found_size = false; + for (node::property_iterator i=n->property_begin(), + e=n->property_end() ; i!=e ; ++i) + { + if (!found_address) + { + found_address = ((*i)->get_key() == "#address-cells"); + } + if (!found_size) + { + found_size = ((*i)->get_key() == "#size-cells"); + } + if (found_size && found_address) + { + break; + } + } + if (!found_address) + { + report_error("Missing #address-cells property"); + } + if (!found_size) + { + report_error("Missing #size-cells property"); + } + return found_address && found_size; + } + }; +} // anonymous namespace + bool checker::visit_node(device_tree *tree, node *n) { @@ -157,6 +207,8 @@ check_manager::check_manager() add_property_type_checker( "type-model", string("model")); add_property_size_checker("type-phandle", string("phandle"), 4); + disabled_checkers.insert(std::make_pair(string("cells-attributes"), + new address_cells_checker("cells-attributes"))); } bool Modified: head/usr.bin/dtc/dtc.1 ============================================================================== --- head/usr.bin/dtc/dtc.1 Mon Jun 17 15:30:47 2013 (r251855) +++ head/usr.bin/dtc/dtc.1 Mon Jun 17 15:34:22 2013 (r251856) @@ -214,6 +214,12 @@ property. Checks the type of the .Va compatible property. +.It cells-attributes +Checks that all nodes with children have both +.Va #address-cells +and +.Va #size-cells +properties. .El .Sh EXAMPLES The command: From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 15:59:27 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 4CB45EE9; Mon, 17 Jun 2013 15:59:27 +0000 (UTC) (envelope-from marck@rinet.ru) Received: from woozle.rinet.ru (woozle.rinet.ru [195.54.192.68]) by mx1.freebsd.org (Postfix) with ESMTP id CBF911F17; Mon, 17 Jun 2013 15:59:26 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by woozle.rinet.ru (8.14.5/8.14.5) with ESMTP id r5HFxHbA099770; Mon, 17 Jun 2013 19:59:17 +0400 (MSK) (envelope-from marck@rinet.ru) Date: Mon, 17 Jun 2013 19:59:17 +0400 (MSK) From: Dmitry Morozovsky To: Gavin Atkinson Subject: Re: svn commit: r251507 - head/usr.sbin/portsnap/portsnap In-Reply-To: Message-ID: References: <201306072021.r57KLUfD046462@svn.freebsd.org> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) X-NCC-RegID: ru.rinet X-OpenPGP-Key-ID: 6B691B03 MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.4.3 (woozle.rinet.ru [0.0.0.0]); Mon, 17 Jun 2013 19:59:18 +0400 (MSK) Cc: svn-src-head@freebsd.org, Eitan Adler , svn-src-all@freebsd.org, src-committers@freebsd.org, Xin LI X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 15:59:27 -0000 On Sun, 16 Jun 2013, Gavin Atkinson wrote: > > > Make 'portsnap alfred' overwrite ports tree if it's not created by a > > > portsnap. > > > > FWIW, the 'alfred' command is poorly named and is used by other > > projects (ISTR portshaker uses it). It should also be documented. > > I would love to see this renamed - unfortunately the most obvious name for > it "update" is already taken. I wonder if it should be named "auto"? Hmm, 'forceupdate' maybe, in brief mimic to /etc/rc.d/* ? -- Sincerely, D.Marck [DM5020, MCK-RIPE, DM3-RIPN] [ FreeBSD committer: marck@FreeBSD.org ] ------------------------------------------------------------------------ *** Dmitry Morozovsky --- D.Marck --- Wild Woozle --- marck@rinet.ru *** ------------------------------------------------------------------------ From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 16:40:49 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 47D3D6A; Mon, 17 Jun 2013 16:40:49 +0000 (UTC) (envelope-from bright@mu.org) Received: from elvis.mu.org (elvis.mu.org [192.203.228.196]) by mx1.freebsd.org (Postfix) with ESMTP id 020FA10F4; Mon, 17 Jun 2013 16:40:48 +0000 (UTC) Received: from Alfreds-MacBook-Pro-9.local (wr1.pit.paircolo.net [76.75.201.1]) by elvis.mu.org (Postfix) with ESMTPSA id 42D071A3C1A; Mon, 17 Jun 2013 09:40:46 -0700 (PDT) Message-ID: <51BF3C0D.5060708@mu.org> Date: Mon, 17 Jun 2013 12:40:45 -0400 From: Alfred Perlstein User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:17.0) Gecko/20130509 Thunderbird/17.0.6 MIME-Version: 1.0 To: Dmitry Morozovsky Subject: Re: svn commit: r251507 - head/usr.sbin/portsnap/portsnap References: <201306072021.r57KLUfD046462@svn.freebsd.org> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, Eitan Adler , Gavin Atkinson , Xin LI , svn-src-head@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 16:40:49 -0000 On 6/17/13 11:59 AM, Dmitry Morozovsky wrote: > On Sun, 16 Jun 2013, Gavin Atkinson wrote: > >>>> Make 'portsnap alfred' overwrite ports tree if it's not created by a >>>> portsnap. >>> FWIW, the 'alfred' command is poorly named and is used by other >>> projects (ISTR portshaker uses it). It should also be documented. >> I would love to see this renamed - unfortunately the most obvious name for >> it "update" is already taken. I wonder if it should be named "auto"? > Hmm, 'forceupdate' maybe, in brief mimic to /etc/rc.d/* ? > I've already told MANY people that it's easy to use when they just run "portsnap alfred". I think we need to leave it as this point. An alias is fine. -- Alfred Perlstein VP Software Engineering, iXsystems From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 18:34:35 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id F1CD25E0; Mon, 17 Jun 2013 18:34:34 +0000 (UTC) (envelope-from emaste@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C8FB2182F; Mon, 17 Jun 2013 18:34:34 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HIYYlm093507; Mon, 17 Jun 2013 18:34:34 GMT (envelope-from emaste@svn.freebsd.org) Received: (from emaste@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HIYYNB093505; Mon, 17 Jun 2013 18:34:34 GMT (envelope-from emaste@svn.freebsd.org) Message-Id: <201306171834.r5HIYYNB093505@svn.freebsd.org> From: Ed Maste Date: Mon, 17 Jun 2013 18:34:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251858 - in head: contrib/gdb/gdb gnu/usr.bin/gdb/libgdb X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 18:34:35 -0000 Author: emaste Date: Mon Jun 17 18:34:34 2013 New Revision: 251858 URL: http://svnweb.freebsd.org/changeset/base/251858 Log: Fold in frame-unwind patch After moving to svn there's no need to avoid pulling files off a vendor branch. Deleted: head/gnu/usr.bin/gdb/libgdb/frame-unwind.diff Modified: head/contrib/gdb/gdb/frame-unwind.c head/gnu/usr.bin/gdb/libgdb/Makefile Modified: head/contrib/gdb/gdb/frame-unwind.c ============================================================================== --- head/contrib/gdb/gdb/frame-unwind.c Mon Jun 17 15:42:21 2013 (r251857) +++ head/contrib/gdb/gdb/frame-unwind.c Mon Jun 17 18:34:34 2013 (r251858) @@ -27,6 +27,8 @@ static struct gdbarch_data *frame_unwind_data; +frame_unwind_sniffer_ftype *kgdb_sniffer_kluge; + struct frame_unwind_table { frame_unwind_sniffer_ftype **sniffer; @@ -49,6 +51,8 @@ frame_unwind_init (struct gdbarch *gdbar { struct frame_unwind_table *table = XCALLOC (1, struct frame_unwind_table); append_predicate (table, dummy_frame_sniffer); + if (kgdb_sniffer_kluge != NULL) + append_predicate (table, kgdb_sniffer_kluge); return table; } Modified: head/gnu/usr.bin/gdb/libgdb/Makefile ============================================================================== --- head/gnu/usr.bin/gdb/libgdb/Makefile Mon Jun 17 15:42:21 2013 (r251857) +++ head/gnu/usr.bin/gdb/libgdb/Makefile Mon Jun 17 18:34:34 2013 (r251858) @@ -26,7 +26,7 @@ SRCS= annotate.c arch-utils.c auxv.c ax- elfread.c environ.c eval.c event-loop.c event-top.c exec.c \ expprint.c \ f-exp.y f-lang.c f-typeprint.c f-valprint.c findvar.c \ - ${_fork_child} frame-base.c frame-unwind-kluge.c frame.c \ + ${_fork_child} frame-base.c frame-unwind.c frame.c \ gdb-events.c gdbarch.c gdbtypes.c gnu-v2-abi.c gnu-v3-abi.c \ hpacc-abi.c \ inf-loop.c infcall.c infcmd.c inflow.c ${_infptrace} infrun.c \ @@ -67,13 +67,7 @@ _infptrace= infptrace.c _inftarg= inftarg.c .endif -GENSRCS= frame-unwind-kluge.c version.c - -frame-unwind-kluge.c: frame-unwind.diff - cat ${CNTRB_GDB}/gdb/frame-unwind.c > ${.TARGET} - patch ${.TARGET} ${.ALLSRC} - -CLEANFILES= frame-unwind-kluge.c.orig +GENSRCS= version.c version.c: echo '#include "version.h"' > ${.TARGET} From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 19:31:04 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 224BAE59; Mon, 17 Jun 2013 19:31:04 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 156AE1AB1; Mon, 17 Jun 2013 19:31:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HJV3gH011631; Mon, 17 Jun 2013 19:31:03 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HJV3KK011630; Mon, 17 Jun 2013 19:31:03 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201306171931.r5HJV3KK011630@svn.freebsd.org> From: Xin LI Date: Mon, 17 Jun 2013 19:31:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251859 - head/sys/net X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 19:31:04 -0000 Author: delphij Date: Mon Jun 17 19:31:03 2013 New Revision: 251859 URL: http://svnweb.freebsd.org/changeset/base/251859 Log: Return ENETDOWN instead of ENOENT when all lagg(4) links are inactive when upper layer tries to transmit packet. This gives better feedback and meaningful errors for applications. MFC after: 2 weeks Reviewed by: thompsa Modified: head/sys/net/if_lagg.c Modified: head/sys/net/if_lagg.c ============================================================================== --- head/sys/net/if_lagg.c Mon Jun 17 18:34:34 2013 (r251858) +++ head/sys/net/if_lagg.c Mon Jun 17 19:31:03 2013 (r251859) @@ -1608,7 +1608,7 @@ lagg_rr_start(struct lagg_softc *sc, str */ if ((lp = lagg_link_active(sc, lp)) == NULL) { m_freem(m); - return (ENOENT); + return (ENETDOWN); } /* Send mbuf */ @@ -1656,7 +1656,7 @@ lagg_fail_start(struct lagg_softc *sc, s /* Use the master port if active or the next available port */ if ((lp = lagg_link_active(sc, sc->sc_primary)) == NULL) { m_freem(m); - return (ENOENT); + return (ENETDOWN); } /* Send mbuf */ @@ -1785,7 +1785,7 @@ lagg_lb_start(struct lagg_softc *sc, str */ if ((lp = lagg_link_active(sc, lp)) == NULL) { m_freem(m); - return (ENOENT); + return (ENETDOWN); } /* Send mbuf */ From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 20:11:05 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id B1B0A440; Mon, 17 Jun 2013 20:11:05 +0000 (UTC) (envelope-from pluknet@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8A8F31CF9; Mon, 17 Jun 2013 20:11:05 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HKB5Kt024900; Mon, 17 Jun 2013 20:11:05 GMT (envelope-from pluknet@svn.freebsd.org) Received: (from pluknet@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HKB4b0024888; Mon, 17 Jun 2013 20:11:04 GMT (envelope-from pluknet@svn.freebsd.org) Message-Id: <201306172011.r5HKB4b0024888@svn.freebsd.org> From: Sergey Kandaurov Date: Mon, 17 Jun 2013 20:11:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251862 - in head: sys/dev/puc sys/dev/vxge usr.bin/csup usr.bin/sort X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 20:11:05 -0000 Author: pluknet Date: Mon Jun 17 20:11:04 2013 New Revision: 251862 URL: http://svnweb.freebsd.org/changeset/base/251862 Log: Clean up -Wheader-guard warnings. Submitted by: MFC after: 3 days X-MFC with: r251848 Modified: head/sys/dev/puc/puc_bfe.h head/sys/dev/puc/puc_cfg.h head/sys/dev/vxge/vxge.h head/usr.bin/csup/updater.h head/usr.bin/sort/vsort.h Modified: head/sys/dev/puc/puc_bfe.h ============================================================================== --- head/sys/dev/puc/puc_bfe.h Mon Jun 17 19:54:47 2013 (r251861) +++ head/sys/dev/puc/puc_bfe.h Mon Jun 17 20:11:04 2013 (r251862) @@ -27,7 +27,7 @@ */ #ifndef _DEV_PUC_BFE_H_ -#define _DEV_PUC_BFE_H +#define _DEV_PUC_BFE_H_ #define PUC_PCI_BARS 6 Modified: head/sys/dev/puc/puc_cfg.h ============================================================================== --- head/sys/dev/puc/puc_cfg.h Mon Jun 17 19:54:47 2013 (r251861) +++ head/sys/dev/puc/puc_cfg.h Mon Jun 17 20:11:04 2013 (r251862) @@ -27,7 +27,7 @@ */ #ifndef _DEV_PUC_CFG_H_ -#define _DEV_PUC_CFG_H +#define _DEV_PUC_CFG_H_ #define DEFAULT_RCLK 1843200 Modified: head/sys/dev/vxge/vxge.h ============================================================================== --- head/sys/dev/vxge/vxge.h Mon Jun 17 19:54:47 2013 (r251861) +++ head/sys/dev/vxge/vxge.h Mon Jun 17 20:11:04 2013 (r251862) @@ -31,7 +31,7 @@ /*$FreeBSD$*/ #ifndef _VXGE_H_ -#define __VXGE_H_ +#define _VXGE_H_ #include #include Modified: head/usr.bin/csup/updater.h ============================================================================== --- head/usr.bin/csup/updater.h Mon Jun 17 19:54:47 2013 (r251861) +++ head/usr.bin/csup/updater.h Mon Jun 17 20:11:04 2013 (r251862) @@ -26,7 +26,7 @@ * $FreeBSD$ */ #ifndef _UPDATER_H_ -#define _UPDATER_H +#define _UPDATER_H_ void *updater(void *); Modified: head/usr.bin/sort/vsort.h ============================================================================== --- head/usr.bin/sort/vsort.h Mon Jun 17 19:54:47 2013 (r251861) +++ head/usr.bin/sort/vsort.h Mon Jun 17 20:11:04 2013 (r251862) @@ -28,7 +28,7 @@ */ #if !defined(__VSORT_H__) -#define _VSORT_H__ +#define __VSORT_H__ #include "bwstring.h" From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 20:15:40 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 6BC8284E; Mon, 17 Jun 2013 20:15:40 +0000 (UTC) (envelope-from eadler@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5E6381D34; Mon, 17 Jun 2013 20:15:40 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HKFemR025707; Mon, 17 Jun 2013 20:15:40 GMT (envelope-from eadler@svn.freebsd.org) Received: (from eadler@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HKFeck025706; Mon, 17 Jun 2013 20:15:40 GMT (envelope-from eadler@svn.freebsd.org) Message-Id: <201306172015.r5HKFeck025706@svn.freebsd.org> From: Eitan Adler Date: Mon, 17 Jun 2013 20:15:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251863 - head/usr.bin/sort X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 20:15:40 -0000 Author: eadler Date: Mon Jun 17 20:15:39 2013 New Revision: 251863 URL: http://svnweb.freebsd.org/changeset/base/251863 Log: Fix header guards. This was ready about the same time as r251862 so just make one final cleanup Submitted by: dt71@gmx.com Modified: head/usr.bin/sort/vsort.h Modified: head/usr.bin/sort/vsort.h ============================================================================== --- head/usr.bin/sort/vsort.h Mon Jun 17 20:11:04 2013 (r251862) +++ head/usr.bin/sort/vsort.h Mon Jun 17 20:15:39 2013 (r251863) @@ -27,8 +27,8 @@ * SUCH DAMAGE. */ -#if !defined(__VSORT_H__) -#define __VSORT_H__ +#ifndef _VSORT_H_ +#define _VSORT_H_ #include "bwstring.h" From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 20:27:22 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 37A6EFE; Mon, 17 Jun 2013 20:27:22 +0000 (UTC) (envelope-from eadler@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 198DC1DC4; Mon, 17 Jun 2013 20:27:22 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HKRLIJ029272; Mon, 17 Jun 2013 20:27:21 GMT (envelope-from eadler@svn.freebsd.org) Received: (from eadler@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HKRKAJ029264; Mon, 17 Jun 2013 20:27:20 GMT (envelope-from eadler@svn.freebsd.org) Message-Id: <201306172027.r5HKRKAJ029264@svn.freebsd.org> From: Eitan Adler Date: Mon, 17 Jun 2013 20:27:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251867 - head/tools/regression/lib/libc/nss X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 20:27:22 -0000 Author: eadler Date: Mon Jun 17 20:27:20 2013 New Revision: 251867 URL: http://svnweb.freebsd.org/changeset/base/251867 Log: Restore "all rights reserved" (spelled correctly). This was actually part of the standard text of the license which I did not realize prior. Approved by: bushman Modified: head/tools/regression/lib/libc/nss/test-getaddr.c head/tools/regression/lib/libc/nss/test-getgr.c head/tools/regression/lib/libc/nss/test-gethostby.c head/tools/regression/lib/libc/nss/test-getproto.c head/tools/regression/lib/libc/nss/test-getpw.c head/tools/regression/lib/libc/nss/test-getrpc.c head/tools/regression/lib/libc/nss/test-getserv.c head/tools/regression/lib/libc/nss/test-getusershell.c Modified: head/tools/regression/lib/libc/nss/test-getaddr.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-getaddr.c Mon Jun 17 20:26:19 2013 (r251866) +++ head/tools/regression/lib/libc/nss/test-getaddr.c Mon Jun 17 20:27:20 2013 (r251867) @@ -1,5 +1,6 @@ /*- * Copyright (c) 2006 Michael Bushkov + * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: head/tools/regression/lib/libc/nss/test-getgr.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-getgr.c Mon Jun 17 20:26:19 2013 (r251866) +++ head/tools/regression/lib/libc/nss/test-getgr.c Mon Jun 17 20:27:20 2013 (r251867) @@ -1,5 +1,6 @@ /*- * Copyright (c) 2006 Michael Bushkov + * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: head/tools/regression/lib/libc/nss/test-gethostby.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-gethostby.c Mon Jun 17 20:26:19 2013 (r251866) +++ head/tools/regression/lib/libc/nss/test-gethostby.c Mon Jun 17 20:27:20 2013 (r251867) @@ -1,5 +1,6 @@ /*- * Copyright (c) 2006 Michael Bushkov + * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: head/tools/regression/lib/libc/nss/test-getproto.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-getproto.c Mon Jun 17 20:26:19 2013 (r251866) +++ head/tools/regression/lib/libc/nss/test-getproto.c Mon Jun 17 20:27:20 2013 (r251867) @@ -1,5 +1,6 @@ /*- * Copyright (c) 2006 Michael Bushkov + * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: head/tools/regression/lib/libc/nss/test-getpw.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-getpw.c Mon Jun 17 20:26:19 2013 (r251866) +++ head/tools/regression/lib/libc/nss/test-getpw.c Mon Jun 17 20:27:20 2013 (r251867) @@ -1,5 +1,6 @@ /*- * Copyright (c) 2006 Michael Bushkov + * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: head/tools/regression/lib/libc/nss/test-getrpc.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-getrpc.c Mon Jun 17 20:26:19 2013 (r251866) +++ head/tools/regression/lib/libc/nss/test-getrpc.c Mon Jun 17 20:27:20 2013 (r251867) @@ -1,5 +1,6 @@ /*- * Copyright (c) 2006 Michael Bushkov + * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: head/tools/regression/lib/libc/nss/test-getserv.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-getserv.c Mon Jun 17 20:26:19 2013 (r251866) +++ head/tools/regression/lib/libc/nss/test-getserv.c Mon Jun 17 20:27:20 2013 (r251867) @@ -1,5 +1,6 @@ /*- * Copyright (c) 2006 Michael Bushkov + * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions Modified: head/tools/regression/lib/libc/nss/test-getusershell.c ============================================================================== --- head/tools/regression/lib/libc/nss/test-getusershell.c Mon Jun 17 20:26:19 2013 (r251866) +++ head/tools/regression/lib/libc/nss/test-getusershell.c Mon Jun 17 20:27:20 2013 (r251867) @@ -1,5 +1,6 @@ /*- * Copyright (c) 2006 Michael Bushkov + * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 21:20:54 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 193DF953; Mon, 17 Jun 2013 21:20:54 +0000 (UTC) (envelope-from edschouten@gmail.com) Received: from mail-ve0-x231.google.com (mail-ve0-x231.google.com [IPv6:2607:f8b0:400c:c01::231]) by mx1.freebsd.org (Postfix) with ESMTP id 9BE651085; Mon, 17 Jun 2013 21:20:53 +0000 (UTC) Received: by mail-ve0-f177.google.com with SMTP id cz10so2539146veb.22 for ; Mon, 17 Jun 2013 14:20:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=t1Gi8OAeicqGBkHH8LReu/iTXu9Nmg2NBz8F53TljVs=; b=rhNhnZUJMD3+WQJ2wluPdCw0m6BEFvZAUQxXYzzv6e7SPWs5GTWpulWvVm8qygczgq M/ida5PvMBzTDU5c319VzL42Bo3hj2sQdsOmD1WfYhMhGoSIQ4YWkkFDMwoROD1pFRso dUEQLff+j5w4L0VOuSQKjjJsLK711fFfYKNO+zBDlnWyTmfqtHdsvW3RXkZal3eZVghn /aZTVa43F8INSB1vDWxLFdtzBI86xlts/4P9tpFGH2+GqAroaeBB5+KofsmsQdjeq8f2 M297FTXicmPngEAl7pF/tyP+3OuAIV+JNq+O8oYUk/OSGfi+kUm4WbOe5z6uMxv7FTNf BYPw== MIME-Version: 1.0 X-Received: by 10.58.215.200 with SMTP id ok8mr5118147vec.21.1371504053103; Mon, 17 Jun 2013 14:20:53 -0700 (PDT) Sender: edschouten@gmail.com Received: by 10.220.107.139 with HTTP; Mon, 17 Jun 2013 14:20:53 -0700 (PDT) In-Reply-To: <51BDCEE0.8050000@freebsd.org> References: <201306160930.r5G9UZfE059294@svn.freebsd.org> <51BDCEE0.8050000@freebsd.org> Date: Mon, 17 Jun 2013 23:20:53 +0200 X-Google-Sender-Auth: 1liihxLqx5J__NZ9p4uATvgbq9g Message-ID: Subject: Re: svn commit: r251803 - head/sys/kern From: Ed Schouten To: Nathan Whitehorn Content-Type: text/plain; charset=UTF-8 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 21:20:54 -0000 Hi Nathan, 2013/6/16 Nathan Whitehorn : > I'm a little worried about these kinds of changes from a performance > standpoint when using GCC 4.2. In particular, from the GCC manual: "In most > cases, these builtins are considered a full barrier." This is much more > synchronization that many of the atomic ops in machine/atomic.h actually > require. I'm worried this could lead to serious performance regressions on > e.g. PowerPC. gcc mostly seems to do the right thing, but I'm not completely > sure and it probably needs extensive testing. One way to accomplish that > could be to implement atomic(9) in terms of stdatomic. If nothing breaks or > becomes slow, then we will know we are in the clear permanently. > -Nathan Agreed. I did indeed implement on top of as a test a couple of weeks ago. What is nice, is that if I look at amd64/i386, the emitted machine code is almost identical, with the exception that in certain cases, generates more compact instructions (e.g. "lock inc" instead of adding an immediate 1). On armv6 the trend is similar, with the exception that in some cases Clang manages to emit slightly more intelligent code. It seems that one of our pieces of inline assembly causes the compiler to zero out certain registers before inserting the inline assembly, even though these registers tend to be overwritten by the assembly anyway. Weird. Replacement of used on amd64: http://80386.nl/pub/machine-atomic-wrapped.txt Still, you were actually interested in knowing the difference in performance when using GCC 4.2. I have to confess, I don't have any numbers on this, but I suspect there will be a dip, of course. But let me be clear on this; I am not proposing that we migrate our existing codebase to C11 atomics within the nearby future. This is something that should be considered by the time most of the platforms use Clang (or, unlikely GCC 4.6+). The reason why I made this chance, was that I at least want to have some coverage of the C11 atomics both in kernelspace and userspace. My goal is that C11 atomics work correctly on FreeBSD 10.0. My fear is that this likely cannot be achieved if there are exactly 0 pieces of code in our tree that use this. By not doing so, breakage of could go by unnoticed, maybe already when someone makes a tiny "harmless" modification to or . Correct me if I'm wrong, but I think it's extremely unlikely that this specific change will noticeably regress performance of the system as a whole. If I wanted to cripple performance on these architectures, I would have changed mtx(9) to use C11 atomics instead. Unrelated to this, there is something about this specific piece of code that is actually very interesting if you look at it into more detail. Notice how I took the liberty of changing filt_timerattach() to use a compare-and-exchange, instead of the two successive atomic operations it used to do. Maybe a smart compiler could consider rewriting this piece of code to something along the lines of this (on armv6): ldr r0, [kq_calloutmax] ldrex r1, [kq_ncallouts] cmp r0, r1 blt ... add r2, r1, #1 strex r1, r2, [kq_ncallouts] In other words, convert this to a "compare-less-than-and-increment", which is not offered by . It'll be interesting to see whether Clang will reach such a level of code quality. -- Ed Schouten From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 21:30:46 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id B8D16DF8; Mon, 17 Jun 2013 21:30:46 +0000 (UTC) (envelope-from eadler@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id AB5FA1116; Mon, 17 Jun 2013 21:30:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HLUkV7050776; Mon, 17 Jun 2013 21:30:46 GMT (envelope-from eadler@svn.freebsd.org) Received: (from eadler@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HLUkRS050775; Mon, 17 Jun 2013 21:30:46 GMT (envelope-from eadler@svn.freebsd.org) Message-Id: <201306172130.r5HLUkRS050775@svn.freebsd.org> From: Eitan Adler Date: Mon, 17 Jun 2013 21:30:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251869 - head/sys/modules/linux X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 21:30:46 -0000 Author: eadler Date: Mon Jun 17 21:30:46 2013 New Revision: 251869 URL: http://svnweb.freebsd.org/changeset/base/251869 Log: Add missing dependency to linux${SFX}_genassym.c Submitted by: nox MFC After: 3 days Modified: head/sys/modules/linux/Makefile Modified: head/sys/modules/linux/Makefile ============================================================================== --- head/sys/modules/linux/Makefile Mon Jun 17 20:40:16 2013 (r251868) +++ head/sys/modules/linux/Makefile Mon Jun 17 21:30:46 2013 (r251869) @@ -52,7 +52,7 @@ linux${SFX}_support.o: linux${SFX}_suppo ${CC} -c -x assembler-with-cpp -DLOCORE ${CFLAGS} \ ${.IMPSRC} -o ${.TARGET} -linux${SFX}_genassym.o: linux${SFX}_genassym.c linux.h @ machine +linux${SFX}_genassym.o: linux${SFX}_genassym.c linux.h @ machine x86 ${CC} -c ${CFLAGS:N-fno-common} ${.IMPSRC} .if !defined(KERNBUILDDIR) From owner-svn-src-head@FreeBSD.ORG Mon Jun 17 22:59:48 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 4D07BE39; Mon, 17 Jun 2013 22:59:48 +0000 (UTC) (envelope-from markj@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 3FB191664; Mon, 17 Jun 2013 22:59:48 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HMxlwA077200; Mon, 17 Jun 2013 22:59:47 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HMxl7J077199; Mon, 17 Jun 2013 22:59:47 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201306172259.r5HMxl7J077199@svn.freebsd.org> From: Mark Johnston Date: Mon, 17 Jun 2013 22:59:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251872 - head/sys/dev/age X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 22:59:48 -0000 Author: markj Date: Mon Jun 17 22:59:47 2013 New Revision: 251872 URL: http://svnweb.freebsd.org/changeset/base/251872 Log: Be sure to actually decrement the "count" parameter for each processed descriptor so that we return when the threshold has been reached. Reviewed by: yongari MFC after: 1 week Modified: head/sys/dev/age/if_age.c Modified: head/sys/dev/age/if_age.c ============================================================================== --- head/sys/dev/age/if_age.c Mon Jun 17 21:41:14 2013 (r251871) +++ head/sys/dev/age/if_age.c Mon Jun 17 22:59:47 2013 (r251872) @@ -2478,7 +2478,7 @@ age_rxintr(struct age_softc *sc, int rr_ sc->age_cdata.age_rx_ring_map, BUS_DMASYNC_POSTWRITE); for (prog = 0; rr_cons != rr_prod; prog++) { - if (count <= 0) + if (count-- <= 0) break; rxrd = &sc->age_rdata.age_rr_ring[rr_cons]; nsegs = AGE_RX_NSEGS(le32toh(rxrd->index)); From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 00:24:20 2013 Return-Path: Delivered-To: svn-src-head@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 371BA59F; Tue, 18 Jun 2013 00:24:20 +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 F31AA19C3; Tue, 18 Jun 2013 00:24:19 +0000 (UTC) Received: from c122-106-156-23.carlnfd1.nsw.optusnet.com.au (c122-106-156-23.carlnfd1.nsw.optusnet.com.au [122.106.156.23]) by mail105.syd.optusnet.com.au (Postfix) with ESMTPS id E63A810415BA; Tue, 18 Jun 2013 10:24:16 +1000 (EST) Date: Tue, 18 Jun 2013 10:24:16 +1000 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: David Chisnall Subject: Re: svn commit: r251855 - head/sys/sys In-Reply-To: <201306171530.r5HFUmx5035189@svn.freebsd.org> Message-ID: <20130618093254.L1323@besplex.bde.org> References: <201306171530.r5HFUmx5035189@svn.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.0 cv=K8x6hFqI c=1 sm=1 a=LiowyP3STkkA:10 a=kj9zAlcOel0A:10 a=PO7r1zJSAAAA:8 a=JzwRw_2MAAAA:8 a=FSHVhTTuonsA:10 a=cbgORYylU8o8n0NilroA:9 a=CjuIK1q_8ugA:10 a=ebeQFi2P/qHVC0Yw9JDJ4g==:117 Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 00:24:20 -0000 On Mon, 17 Jun 2013, David Chisnall wrote: > Log: > Rename a parameter in sys/time.h so that you don't get warnings for things > like libdialog that include both this header and math.h. All the bintime stuff has similar namespace errors, starting with the field names 'sec' and 'frac' not having a prefix, despite the good example set by struct tm and good style requiring a prefix. 'sec' and 'frac' are paticularly bad field names since they are close to both English words and to good names for application variables. > Modified: head/sys/sys/time.h > ============================================================================== > --- head/sys/sys/time.h Mon Jun 17 15:16:14 2013 (r251854) > +++ head/sys/sys/time.h Mon Jun 17 15:30:47 2013 (r251855) > @@ -103,17 +103,17 @@ bintime_mul(struct bintime *bt, u_int x) > } > > static __inline void > -bintime_shift(struct bintime *bt, int exp) > +bintime_shift(struct bintime *__bt, int __exp) The new names have excessive underscores and are thus now just style bugs. Single underscores are ugly enough. 'exp' us only reserved by system headers when is included, and even then it is not normally a problem since it is not a macro. But bt is in the application namespace. #define bt bintime variables should be named _bt in inline functions #include This is now fixed, but only for this function. > { > > - if (exp > 0) { > - bt->sec <<= exp; > - bt->sec |= bt->frac >> (64 - exp); > - bt->frac <<= exp; > - } else if (exp < 0) { > - bt->frac >>= -exp; > - bt->frac |= (uint64_t)bt->sec << (64 + exp); > - bt->sec >>= -exp; > + if (__exp > 0) { > + __bt->sec <<= __exp; > + __bt->sec |= __bt->frac >> (64 - __exp); > + __bt->frac <<= __exp; > + } else if (__exp < 0) { > + __bt->frac >>= -__exp; > + __bt->frac |= (uint64_t)__bt->sec << (64 + __exp); > + __bt->sec >>= -__exp; > } > } __bt has another naming error. It is not a bintime variable, but a pointer to one. It should be named _btp. This style bug is everywhere dense in bintime code. 'sec' and 'frac' are in the application namespace. #define sec namespace errors in bintime bite me if I do this #define frac the errors are just as undocumented as the namespace #include This is not fixed. Bruce From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 02:07:16 2013 Return-Path: Delivered-To: svn-src-head@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 0DD5340E; Tue, 18 Jun 2013 02:07:16 +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 953AB1F28; Tue, 18 Jun 2013 02:07:15 +0000 (UTC) Received: from c122-106-156-23.carlnfd1.nsw.optusnet.com.au (c122-106-156-23.carlnfd1.nsw.optusnet.com.au [122.106.156.23]) by mail105.syd.optusnet.com.au (Postfix) with ESMTPS id D85BB1041A9A; Tue, 18 Jun 2013 12:07:13 +1000 (EST) Date: Tue, 18 Jun 2013 12:07:13 +1000 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Sergey Kandaurov Subject: Re: svn commit: r251862 - in head: sys/dev/puc sys/dev/vxge usr.bin/csup usr.bin/sort In-Reply-To: <201306172011.r5HKB4b0024888@svn.freebsd.org> Message-ID: <20130618114258.G1695@besplex.bde.org> References: <201306172011.r5HKB4b0024888@svn.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.0 cv=eqSHVfVX c=1 sm=1 a=z41KVO_GQT0A:10 a=kj9zAlcOel0A:10 a=PO7r1zJSAAAA:8 a=JzwRw_2MAAAA:8 a=KZVj2_VzFQYA:10 a=KKfuTqJ97j0AtwbGCMIA:9 a=CjuIK1q_8ugA:10 a=ebeQFi2P/qHVC0Yw9JDJ4g==:117 Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 02:07:16 -0000 On Mon, 17 Jun 2013, Sergey Kandaurov wrote: > Log: > Clean up -Wheader-guard warnings. An interesting feature. It seems to be missing warnings about style bugs in header-guard names. > Modified: head/sys/dev/puc/puc_bfe.h > ============================================================================== > --- head/sys/dev/puc/puc_bfe.h Mon Jun 17 19:54:47 2013 (r251861) > +++ head/sys/dev/puc/puc_bfe.h Mon Jun 17 20:11:04 2013 (r251862) > @@ -27,7 +27,7 @@ > */ > > #ifndef _DEV_PUC_BFE_H_ > -#define _DEV_PUC_BFE_H > +#define _DEV_PUC_BFE_H_ Local headers shouldn't have or need header-guards, but the name and formatting of this header-guard is in normal style. > > #define PUC_PCI_BARS 6 > The name and formatting at the end of the file were already correct, but the comment on the #endif is still backwards. > Modified: head/sys/dev/puc/puc_cfg.h Similarly in other puc headers. > Modified: head/sys/dev/vxge/vxge.h > ============================================================================== > --- head/sys/dev/vxge/vxge.h Mon Jun 17 19:54:47 2013 (r251861) > +++ head/sys/dev/vxge/vxge.h Mon Jun 17 20:11:04 2013 (r251862) > @@ -31,7 +31,7 @@ > /*$FreeBSD$*/ > > #ifndef _VXGE_H_ > -#define __VXGE_H_ > +#define _VXGE_H_ This one has more style bugs: - tab instead of space after ifndef - no path prefix in header name > > #include > #include > And at the end of the file: - tab instead of space after ifndef - the comment is backwards of course. > Modified: head/usr.bin/csup/updater.h > ============================================================================== > --- head/usr.bin/csup/updater.h Mon Jun 17 19:54:47 2013 (r251861) > +++ head/usr.bin/csup/updater.h Mon Jun 17 20:11:04 2013 (r251862) > @@ -26,7 +26,7 @@ > * $FreeBSD$ > */ > #ifndef _UPDATER_H_ > -#define _UPDATER_H > +#define _UPDATER_H_ > > void *updater(void *); > Missing blank line before #define. Space instead of tab after #define. No path prefix, but application headers are much more local than dev headers, so a path prefix is less useful for them. Some dev headers are installed in /usr/include, but the puc ones aren't. The style of the #endif is normal in this file, but the ifdef section is so short that it breaks the style(9) rule about not commenting short ifdefs. This include file has 1 line of useful code, 5 lines of head-guard and 27 lines of copyright. csup has header files like this that would be tiny except for the copyright. I don't like this organization. The 1 useful line in this include file consists of a prototype, so it doesn't need a header-guard. > Modified: head/usr.bin/sort/vsort.h > ============================================================================== > --- head/usr.bin/sort/vsort.h Mon Jun 17 19:54:47 2013 (r251861) > +++ head/usr.bin/sort/vsort.h Mon Jun 17 20:11:04 2013 (r251862) > @@ -28,7 +28,7 @@ > */ > > #if !defined(__VSORT_H__) > -#define _VSORT_H__ > +#define __VSORT_H__ > > #include "bwstring.h" > #if !defined() instead of #ifdef. Excessive underscores in header-guard name (the old name was half correct). Space instead of tab after #define. No comment on the #endif, but this is another header that would be tiny without its header-guard and copyright. Bruce From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 02:37:15 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 934D01BE; Tue, 18 Jun 2013 02:37:15 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 861A61074; Tue, 18 Jun 2013 02:37:15 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I2bFw1048467; Tue, 18 Jun 2013 02:37:15 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I2bFJF048466; Tue, 18 Jun 2013 02:37:15 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180237.r5I2bFJF048466@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 02:37:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251885 - head/etc/rc.d X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 02:37:15 -0000 Author: dteske Date: Tue Jun 18 02:37:15 2013 New Revision: 251885 URL: http://svnweb.freebsd.org/changeset/base/251885 Log: Allow $ntpdate_config to be NULL. Due to a lack of surrounding quotes, when ntpdate_config was set to NULL the conditional would (counter to prevailing logic) succeed -- leading to awk attempting to redirect from a NULL pathname standard-in. While we're here, make the script consistant with itself by removing the {curlies} around ntpdate_config (they are unnecessary). Modified: head/etc/rc.d/ntpdate Modified: head/etc/rc.d/ntpdate ============================================================================== --- head/etc/rc.d/ntpdate Tue Jun 18 02:20:34 2013 (r251884) +++ head/etc/rc.d/ntpdate Tue Jun 18 02:37:15 2013 (r251885) @@ -16,13 +16,13 @@ start_cmd="ntpdate_start" ntpdate_start() { - if [ -z "$ntpdate_hosts" -a -f ${ntpdate_config} ]; then + if [ -z "$ntpdate_hosts" -a -f "$ntpdate_config" ]; then ntpdate_hosts=`awk ' /^server[ \t]*127.127/ {next} /^(server|peer)/ { if ($2 ~/^-/) {print $3} else {print $2}} - ' < ${ntpdate_config}` + ' < "$ntpdate_config"` fi if [ -n "$ntpdate_hosts" -o -n "$rc_flags" ]; then echo "Setting date via ntp." From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 02:53:47 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id A8695712; Tue, 18 Jun 2013 02:53:47 +0000 (UTC) (envelope-from peter@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 97C2D10FF; Tue, 18 Jun 2013 02:53:47 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I2rlYp053976; Tue, 18 Jun 2013 02:53:47 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I2rj45053959; Tue, 18 Jun 2013 02:53:45 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306180253.r5I2rj45053959@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 02:53:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 02:53:47 -0000 Author: peter Date: Tue Jun 18 02:53:45 2013 New Revision: 251886 URL: http://svnweb.freebsd.org/changeset/base/251886 Log: Introduce svnlite so that we can check out our source code again. This is actually a fully functional build except: * All internal shared libraries are static linked to make sure there is no interference with ports (and to reduce build time). * It does not have the python/perl/etc plugin or API support. * By default, it installs as "svnlite" rather than "svn". * If WITH_SVN added in make.conf, you get "svn". * If WITHOUT_SVNLITE is in make.conf, this is completely disabled. To be absolutely clear, this is not intended for any use other than checking out freebsd source and committing, like we once did with cvs. It should be usable for small scale local repositories that don't need the python/perl plugin architecture. Added: head/contrib/apr/ - copied from r251882, vendor/apr/dist/ head/contrib/apr-util/ - copied from r251882, vendor/apr-util/dist/ head/contrib/serf/ - copied from r251882, vendor/serf/dist/ head/contrib/sqlite3/ - copied from r251884, vendor/sqlite3/dist/ head/contrib/subversion/ - copied from r251882, vendor/subversion/dist/ head/usr.bin/svn/ head/usr.bin/svn/Makefile (contents, props changed) head/usr.bin/svn/Makefile.inc (contents, props changed) head/usr.bin/svn/expat.h (contents, props changed) head/usr.bin/svn/lib/ head/usr.bin/svn/lib/Makefile (contents, props changed) head/usr.bin/svn/lib/Makefile.inc (contents, props changed) head/usr.bin/svn/lib/libapr/ head/usr.bin/svn/lib/libapr/Makefile (contents, props changed) head/usr.bin/svn/lib/libapr/apr.h (contents, props changed) head/usr.bin/svn/lib/libapr/apr_private.h (contents, props changed) head/usr.bin/svn/lib/libapr_util/ head/usr.bin/svn/lib/libapr_util/Makefile (contents, props changed) head/usr.bin/svn/lib/libapr_util/apr_ldap.h (contents, props changed) head/usr.bin/svn/lib/libapr_util/apu.h (contents, props changed) head/usr.bin/svn/lib/libapr_util/apu_config.h (contents, props changed) head/usr.bin/svn/lib/libapr_util/apu_select_dbm.h (contents, props changed) head/usr.bin/svn/lib/libapr_util/apu_want.h (contents, props changed) head/usr.bin/svn/lib/libapr_util/expat.h (contents, props changed) head/usr.bin/svn/lib/libserf/ head/usr.bin/svn/lib/libserf/Makefile (contents, props changed) head/usr.bin/svn/lib/libsqlite3/ head/usr.bin/svn/lib/libsqlite3/Makefile (contents, props changed) head/usr.bin/svn/lib/libsvn_client/ head/usr.bin/svn/lib/libsvn_client/Makefile (contents, props changed) head/usr.bin/svn/lib/libsvn_delta/ head/usr.bin/svn/lib/libsvn_delta/Makefile (contents, props changed) head/usr.bin/svn/lib/libsvn_diff/ head/usr.bin/svn/lib/libsvn_diff/Makefile (contents, props changed) head/usr.bin/svn/lib/libsvn_fs/ head/usr.bin/svn/lib/libsvn_fs/Makefile (contents, props changed) head/usr.bin/svn/lib/libsvn_fs_fs/ head/usr.bin/svn/lib/libsvn_fs_fs/Makefile (contents, props changed) head/usr.bin/svn/lib/libsvn_fs_util/ head/usr.bin/svn/lib/libsvn_fs_util/Makefile (contents, props changed) head/usr.bin/svn/lib/libsvn_ra/ head/usr.bin/svn/lib/libsvn_ra/Makefile (contents, props changed) head/usr.bin/svn/lib/libsvn_ra_local/ head/usr.bin/svn/lib/libsvn_ra_local/Makefile (contents, props changed) head/usr.bin/svn/lib/libsvn_ra_serf/ head/usr.bin/svn/lib/libsvn_ra_serf/Makefile (contents, props changed) head/usr.bin/svn/lib/libsvn_ra_svn/ head/usr.bin/svn/lib/libsvn_ra_svn/Makefile (contents, props changed) head/usr.bin/svn/lib/libsvn_repos/ head/usr.bin/svn/lib/libsvn_repos/Makefile (contents, props changed) head/usr.bin/svn/lib/libsvn_subr/ head/usr.bin/svn/lib/libsvn_subr/Makefile (contents, props changed) head/usr.bin/svn/lib/libsvn_wc/ head/usr.bin/svn/lib/libsvn_wc/Makefile (contents, props changed) head/usr.bin/svn/svn/ head/usr.bin/svn/svn/Makefile (contents, props changed) head/usr.bin/svn/svn_private_config.h (contents, props changed) head/usr.bin/svn/svnadmin/ head/usr.bin/svn/svnadmin/Makefile (contents, props changed) head/usr.bin/svn/svndumpfilter/ head/usr.bin/svn/svndumpfilter/Makefile (contents, props changed) head/usr.bin/svn/svnlook/ head/usr.bin/svn/svnlook/Makefile (contents, props changed) head/usr.bin/svn/svnmucc/ head/usr.bin/svn/svnmucc/Makefile (contents, props changed) head/usr.bin/svn/svnrdump/ head/usr.bin/svn/svnrdump/Makefile (contents, props changed) head/usr.bin/svn/svnserve/ head/usr.bin/svn/svnserve/Makefile (contents, props changed) head/usr.bin/svn/svnsync/ head/usr.bin/svn/svnsync/Makefile (contents, props changed) head/usr.bin/svn/svnversion/ head/usr.bin/svn/svnversion/Makefile (contents, props changed) Modified: head/share/mk/bsd.own.mk head/usr.bin/Makefile Modified: head/share/mk/bsd.own.mk ============================================================================== --- head/share/mk/bsd.own.mk Tue Jun 18 02:37:15 2013 (r251885) +++ head/share/mk/bsd.own.mk Tue Jun 18 02:53:45 2013 (r251886) @@ -347,6 +347,7 @@ __DEFAULT_YES_OPTIONS = \ SOURCELESS_HOST \ SOURCELESS_UCODE \ SSP \ + SVNLITE \ SYMVER \ SYSCONS \ SYSINSTALL \ @@ -383,7 +384,8 @@ __DEFAULT_NO_OPTIONS = \ NAND \ OFED \ OPENSSH_NONE_CIPHER \ - SHARED_TOOLCHAIN + SHARED_TOOLCHAIN \ + SVN # # Default behaviour of some options depends on the architecture. Unfortunately Modified: head/usr.bin/Makefile ============================================================================== --- head/usr.bin/Makefile Tue Jun 18 02:37:15 2013 (r251885) +++ head/usr.bin/Makefile Tue Jun 18 02:53:45 2013 (r251886) @@ -366,6 +366,10 @@ SUBDIR+= users SUBDIR+= who .endif +.if ${MK_SVN} == "yes" || ${MK_SVNLITE} == "yes" +SUBDIR+= svn +.endif + .include SUBDIR:= ${SUBDIR:O} Added: head/usr.bin/svn/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/usr.bin/svn/Makefile Tue Jun 18 02:53:45 2013 (r251886) @@ -0,0 +1,5 @@ +# $FreeBSD$ + +SUBDIR = lib svn svnadmin svndumpfilter svnlook svnserve svnsync svnversion svnmucc svnrdump + +.include Added: head/usr.bin/svn/Makefile.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/usr.bin/svn/Makefile.inc Tue Jun 18 02:53:45 2013 (r251886) @@ -0,0 +1,61 @@ +# $FreeBSD$ + +.include + +.if ${MK_SVN} == "yes" +SVNLITE?= +.else +SVNLITE?= lite +.endif + +.if !defined(SVNDIR) + +SVNDIR= ${.CURDIR}/../../../contrib/subversion/subversion +APRU= ${.CURDIR}/../../../contrib/apr-util +APR= ${.CURDIR}/../../../contrib/apr +SQLITE= ${.CURDIR}/../../../contrib/sqlite3 +WARNS?= 0 # defintely not warns friendly + +.if exists(${.CURDIR}/../../Makefile.inc) +.include "${.CURDIR}/../../Makefile.inc" +.endif + +LIBAPRDIR= ${.OBJDIR}/../lib/libapr +LIBAPR_UTILDIR= ${.OBJDIR}/../lib/libapr_util +LIBSQLITEDIR= ${.OBJDIR}/../lib/libsqlite3 +LIBSERFDIR= ${.OBJDIR}/../lib/libserf + +LIBSVN_CLIENTDIR= ${.OBJDIR}/../lib/libsvn_client +LIBSVN_DELTADIR= ${.OBJDIR}/../lib/libsvn_delta +LIBSVN_DIFFDIR= ${.OBJDIR}/../lib/libsvn_diff +LIBSVN_FSDIR= ${.OBJDIR}/../lib/libsvn_fs +LIBSVN_FS_FSDIR= ${.OBJDIR}/../lib/libsvn_fs_fs +LIBSVN_FS_UTILDIR= ${.OBJDIR}/../lib/libsvn_fs_util +LIBSVN_RADIR= ${.OBJDIR}/../lib/libsvn_ra +LIBSVN_RA_LOCALDIR= ${.OBJDIR}/../lib/libsvn_ra_local +LIBSVN_RA_SVNDIR= ${.OBJDIR}/../lib/libsvn_ra_svn +LIBSVN_RA_SERFDIR= ${.OBJDIR}/../lib/libsvn_ra_serf +LIBSVN_REPOSDIR= ${.OBJDIR}/../lib/libsvn_repos +LIBSVN_SUBRDIR= ${.OBJDIR}/../lib/libsvn_subr +LIBSVN_WCDIR= ${.OBJDIR}/../lib/libsvn_wc + +LIBAPR= ${LIBAPRDIR}/libapr.a +LIBAPR_UTIL= ${LIBAPR_UTILDIR}/libapr_util.a +LIBSQLITE= ${LIBSQLITEDIR}/libsqlite3.a +LIBSERF= ${LIBSQLITEDIR}/libserf.a + +LIBSVN_CLIENT= ${LIBSVN_CLIENTDIR}/libsvn_client.a +LIBSVN_DELTA= ${LIBSVN_DELTADIR}/libsvn_delta.a +LIBSVN_DIFF= ${LIBSVN_DIFFDIR}/libsvn_diff.a +LIBSVN_FS= ${LIBSVN_FSDIR}/libsvn_fs.a +LIBSVN_FS_FS= ${LIBSVN_FS_FSDIR}/libsvn_fs_fs.a +LIBSVN_FS_UTIL= ${LIBSVN_FS_UTILDIR}/libsvn_fs_util.a +LIBSVN_RA= ${LIBSVN_RADIR}/libsvn_ra.a +LIBSVN_RA_LOCAL= ${LIBSVN_RA_LOCALDIR}/libsvn_ra_local.a +LIBSVN_RA_SVN= ${LIBSVN_RA_SVNDIR}/libsvn_ra_svn.a +LIBSVN_RA_SERF= ${LIBSVN_RA_SERFDIR}/libsvn_ra_serf.a +LIBSVN_REPOS= ${LIBSVN_REPOSDIR}/libsvn_repos.a +LIBSVN_SUBR= ${LIBSVN_SUBRDIR}/libsvn_subr.a +LIBSVN_WC= ${LIBSVN_WCDIR}/libsvn_wc.a + +.endif Added: head/usr.bin/svn/expat.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/usr.bin/svn/expat.h Tue Jun 18 02:53:45 2013 (r251886) @@ -0,0 +1,4 @@ +/* $FreeBSD$ */ + +/* Hack to avoid changing vendor code */ +#include Added: head/usr.bin/svn/lib/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/usr.bin/svn/lib/Makefile Tue Jun 18 02:53:45 2013 (r251886) @@ -0,0 +1,8 @@ +# $FreeBSD$ + +SUBDIR= libapr libapr_util libserf libsqlite3 \ + libsvn_client libsvn_delta libsvn_diff libsvn_fs libsvn_fs_fs \ + libsvn_fs_util libsvn_ra libsvn_ra_local libsvn_ra_serf \ + libsvn_ra_svn libsvn_repos libsvn_subr libsvn_wc + +.include Added: head/usr.bin/svn/lib/Makefile.inc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/usr.bin/svn/lib/Makefile.inc Tue Jun 18 02:53:45 2013 (r251886) @@ -0,0 +1,17 @@ +# $FreeBSD$ + +.if !defined(SVNDIR) + +SVNDIR= ${.CURDIR}/../../../../contrib/subversion/subversion +APRU= ${.CURDIR}/../../../../contrib/apr-util +APR= ${.CURDIR}/../../../../contrib/apr +SQLITE= ${.CURDIR}/../../../../contrib/sqlite3 +SERF= ${.CURDIR}/../../../../contrib/serf + +WARNS?= 0 # definitely not ready + +.if exists(${.CURDIR}/../../../Makefile.inc) +.include "${.CURDIR}/../../../Makefile.inc" +.endif + +.endif Added: head/usr.bin/svn/lib/libapr/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/usr.bin/svn/lib/libapr/Makefile Tue Jun 18 02:53:45 2013 (r251886) @@ -0,0 +1,36 @@ +# $FreeBSD$ + +.include "${.CURDIR}/../Makefile.inc" + +INTERNALLIB= yes +LIB= apr +SRCS= apr_cpystrn.c apr_fnmatch.c apr_getpass.c apr_hash.c \ + apr_pools.c apr_random.c apr_snprintf.c apr_strings.c \ + apr_strnatcmp.c apr_strtok.c apr_tables.c buffer.c \ + builtins.c charset.c common.c copy.c dir.c dso.c env.c \ + epoll.c errorcodes.c fileacc.c filedup.c filepath.c \ + filepath_util.c filestat.c flock.c fullrw.c getopt.c \ + global_mutex.c groupinfo.c ia32.c inet_ntop.c inet_pton.c \ + kqueue.c mktemp.c mmap.c multicast.c mutex.c open.c \ + otherchild.c pipe.c poll.c pollcb.c pollset.c port.c \ + ppc.c proc.c proc_mutex.c procsup.c rand.c readwrite.c \ + s390.c seek.c select.c sendrecv.c sha2.c sha2_glue.c \ + shm.c signals.c sockaddr.c socket_util.c sockets.c \ + sockopt.c solaris.c start.c tempdir.c thread.c thread_cond.c \ + thread_mutex.c thread_rwlock.c threadpriv.c time.c \ + timestr.c userinfo.c version.c waitio.c + +NOMAN= internalonly + +.PATH: ${APR}/atomic/unix ${APR}/dso/unix ${APR}/file_io/unix \ + ${APR}/locks/unix ${APR}/memory/unix ${APR}/misc/unix \ + ${APR}/mmap/unix ${APR}/network_io/unix ${APR}/passwd \ + ${APR}/poll/unix ${APR}/random/unix ${APR}/shmem/unix \ + ${APR}/strings ${APR}/support/unix ${APR}/tables \ + ${APR}/threadproc/unix ${APR}/time/unix ${APR}/user/unix \ + ${APR}/include + +CFLAGS+= -DHAVE_CONFIG_H -I${.CURDIR} \ + -I${APR}/include/arch/unix -I${APR}/include + +.include Added: head/usr.bin/svn/lib/libapr/apr.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/usr.bin/svn/lib/libapr/apr.h Tue Jun 18 02:53:45 2013 (r251886) @@ -0,0 +1,623 @@ +/* $FreeBSD$ */ + +/* Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + +#ifndef APR_H +#define APR_H + +/* GENERATED FILE WARNING! DO NOT EDIT apr.h + * + * You must modify apr.h.in instead. + * + * And please, make an effort to stub apr.hw and apr.hnw in the process. + */ + +/** + * @file apr.h + * @brief APR Platform Definitions + * @remark This is a generated header generated from include/apr.h.in by + * ./configure, or copied from include/apr.hw or include/apr.hnw + * for Win32 or Netware by those build environments, respectively. + */ + +/** + * @defgroup APR Apache Portability Runtime library + * @{ + */ +/** + * @defgroup apr_platform Platform Definitions + * @{ + * @warning + * The actual values of macros and typedefs on this page
+ * are platform specific and should NOT be relied upon!
+ */ + +/* So that we can use inline on some critical functions, and use + * GNUC attributes (such as to get -Wall warnings for printf-like + * functions). Only do this in gcc 2.7 or later ... it may work + * on earlier stuff, but why chance it. + * + * We've since discovered that the gcc shipped with NeXT systems + * as "cc" is completely broken. It claims to be __GNUC__ and so + * on, but it doesn't implement half of the things that __GNUC__ + * means. In particular it's missing inline and the __attribute__ + * stuff. So we hack around it. PR#1613. -djg + */ +#if !defined(__GNUC__) || __GNUC__ < 2 || \ + (__GNUC__ == 2 && __GNUC_MINOR__ < 7) ||\ + defined(NEXT) +#ifndef __attribute__ +#define __attribute__(__x) +#endif +#define APR_INLINE +#define APR_HAS_INLINE 0 +#else +#define APR_INLINE __inline__ +#define APR_HAS_INLINE 1 +#endif + +#define APR_HAVE_ARPA_INET_H 1 +#define APR_HAVE_CONIO_H 0 +#define APR_HAVE_CRYPT_H 0 +#define APR_HAVE_CTYPE_H 1 +#define APR_HAVE_DIRENT_H 1 +#define APR_HAVE_ERRNO_H 1 +#define APR_HAVE_FCNTL_H 1 +#define APR_HAVE_IO_H 0 +#define APR_HAVE_LIMITS_H 1 +#define APR_HAVE_NETDB_H 1 +#define APR_HAVE_NETINET_IN_H 1 +#define APR_HAVE_NETINET_SCTP_H 1 +#define APR_HAVE_NETINET_SCTP_UIO_H 1 +#define APR_HAVE_NETINET_TCP_H 1 +#define APR_HAVE_PROCESS_H 0 +#define APR_HAVE_PTHREAD_H 1 +#define APR_HAVE_SEMAPHORE_H 1 +#define APR_HAVE_SIGNAL_H 1 +#define APR_HAVE_STDARG_H 1 +#define APR_HAVE_STDINT_H 1 +#define APR_HAVE_STDIO_H 1 +#define APR_HAVE_STDLIB_H 1 +#define APR_HAVE_STRING_H 1 +#define APR_HAVE_STRINGS_H 1 +#define APR_HAVE_SYS_IOCTL_H 1 +#define APR_HAVE_SYS_SENDFILE_H 0 +#define APR_HAVE_SYS_SIGNAL_H 1 +#define APR_HAVE_SYS_SOCKET_H 1 +#define APR_HAVE_SYS_SOCKIO_H 1 +#define APR_HAVE_SYS_SYSLIMITS_H 1 +#define APR_HAVE_SYS_TIME_H 1 +#define APR_HAVE_SYS_TYPES_H 1 +#define APR_HAVE_SYS_UIO_H 1 +#define APR_HAVE_SYS_UN_H 1 +#define APR_HAVE_SYS_WAIT_H 1 +#define APR_HAVE_TIME_H 1 +#define APR_HAVE_UNISTD_H 1 +#define APR_HAVE_WINDOWS_H 0 +#define APR_HAVE_WINSOCK2_H 0 + +/** @} */ +/** @} */ + +/* We don't include our conditional headers within the doxyblocks + * or the extern "C" namespace + */ + +#if APR_HAVE_WINDOWS_H +/* If windows.h was already included, our preferences don't matter. + * If not, include a restricted set of windows headers to our tastes. + */ +#ifndef _WINDOWS_ + +#ifndef WIN32_LEAN_AND_MEAN +#define WIN32_LEAN_AND_MEAN +#endif + +#ifndef _WIN32_WINNT +/* Restrict the server to a subset of Windows XP header files by default + */ +#define _WIN32_WINNT 0x0501 +#endif + +#ifndef NOUSER +#define NOUSER +#endif +#ifndef NOMCX +#define NOMCX +#endif +#ifndef NOIME +#define NOIME +#endif + +#include +/* + * Add a _very_few_ declarations missing from the restricted set of headers + * (If this list becomes extensive, re-enable the required headers above!) + * winsock headers were excluded by WIN32_LEAN_AND_MEAN, so include them now + */ +#define SW_HIDE 0 +#ifndef _WIN32_WCE +#include +#include +#include +#else +#include +#endif + +#endif /* ndef _WINDOWS_ */ +#endif /* APR_HAVE_WINDOWS_H */ + +#if APR_HAVE_SYS_TYPES_H +#include +#endif + +#if APR_HAVE_SYS_SOCKET_H +#include +#endif + +#if defined(__cplusplus) && !defined(__STDC_CONSTANT_MACROS) +/* C99 7.18.4 requires that stdint.h only exposes INT64_C + * and UINT64_C for C++ implementations if this is defined: */ +#define __STDC_CONSTANT_MACROS +#endif + +#if APR_HAVE_STDINT_H +#include +#endif + +#if APR_HAVE_SYS_WAIT_H +#include +#endif + +#ifdef OS2 +#define INCL_DOS +#define INCL_DOSERRORS +#include +#endif + +/* header files for PATH_MAX, _POSIX_PATH_MAX */ +#if APR_HAVE_LIMITS_H +#include +#else +#if APR_HAVE_SYS_SYSLIMITS_H +#include +#endif +#endif + + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @addtogroup apr_platform + * @ingroup APR + * @{ + */ + +#define APR_HAVE_SHMEM_MMAP_TMP 1 +#define APR_HAVE_SHMEM_MMAP_SHM 1 +#define APR_HAVE_SHMEM_MMAP_ZERO 1 +#define APR_HAVE_SHMEM_SHMGET_ANON 1 +#define APR_HAVE_SHMEM_SHMGET 1 +#define APR_HAVE_SHMEM_MMAP_ANON 1 +#define APR_HAVE_SHMEM_BEOS 0 + +#define APR_USE_SHMEM_MMAP_TMP 0 +#define APR_USE_SHMEM_MMAP_SHM 0 +#define APR_USE_SHMEM_MMAP_ZERO 0 +#define APR_USE_SHMEM_SHMGET_ANON 0 +#define APR_USE_SHMEM_SHMGET 1 +#define APR_USE_SHMEM_MMAP_ANON 1 +#define APR_USE_SHMEM_BEOS 0 + +#define APR_USE_FLOCK_SERIALIZE 1 +#define APR_USE_SYSVSEM_SERIALIZE 0 +#define APR_USE_POSIXSEM_SERIALIZE 0 +#define APR_USE_FCNTL_SERIALIZE 0 +#define APR_USE_PROC_PTHREAD_SERIALIZE 0 +#define APR_USE_PTHREAD_SERIALIZE 1 + +#define APR_HAS_FLOCK_SERIALIZE 1 +#define APR_HAS_SYSVSEM_SERIALIZE 1 +#define APR_HAS_POSIXSEM_SERIALIZE 1 +#define APR_HAS_FCNTL_SERIALIZE 1 +#define APR_HAS_PROC_PTHREAD_SERIALIZE 0 + +#define APR_PROCESS_LOCK_IS_GLOBAL 0 + +#define APR_HAVE_CORKABLE_TCP 1 +#define APR_HAVE_GETRLIMIT 1 +#define APR_HAVE_IN_ADDR 1 +#define APR_HAVE_INET_ADDR 1 +#define APR_HAVE_INET_NETWORK 1 +#define APR_HAVE_IPV6 1 +#define APR_HAVE_MEMMOVE 1 +#define APR_HAVE_SETRLIMIT 1 +#define APR_HAVE_SIGACTION 1 +#define APR_HAVE_SIGSUSPEND 1 +#define APR_HAVE_SIGWAIT 1 +#define APR_HAVE_SA_STORAGE 1 +#define APR_HAVE_STRCASECMP 1 +#define APR_HAVE_STRDUP 1 +#define APR_HAVE_STRICMP 0 +#define APR_HAVE_STRNCASECMP 1 +#define APR_HAVE_STRNICMP 0 +#define APR_HAVE_STRSTR 1 +#define APR_HAVE_MEMCHR 1 +#define APR_HAVE_STRUCT_RLIMIT 1 +#define APR_HAVE_UNION_SEMUN 1 +#define APR_HAVE_SCTP 1 +#define APR_HAVE_IOVEC 1 + +/* APR Feature Macros */ +#define APR_HAS_SHARED_MEMORY 1 +#define APR_HAS_THREADS 1 +#define APR_HAS_SENDFILE 1 +#define APR_HAS_MMAP 1 +#define APR_HAS_FORK 1 +#define APR_HAS_RANDOM 1 +#define APR_HAS_OTHER_CHILD 1 +#define APR_HAS_DSO 0 +#define APR_HAS_SO_ACCEPTFILTER 1 +#define APR_HAS_UNICODE_FS 0 +#define APR_HAS_PROC_INVOKED 0 +#define APR_HAS_USER 1 +#define APR_HAS_LARGE_FILES 0 +#define APR_HAS_XTHREAD_FILES 0 +#define APR_HAS_OS_UUID 1 + +#define APR_PROCATTR_USER_SET_REQUIRES_PASSWORD 0 + +/* APR sets APR_FILES_AS_SOCKETS to 1 on systems where it is possible + * to poll on files/pipes. + */ +#define APR_FILES_AS_SOCKETS 1 + +/* This macro indicates whether or not EBCDIC is the native character set. + */ +#define APR_CHARSET_EBCDIC 0 + +/* If we have a TCP implementation that can be "corked", what flag + * do we use? + */ +#define APR_TCP_NOPUSH_FLAG TCP_NOPUSH + +/* Is the TCP_NODELAY socket option inherited from listening sockets? +*/ +#define APR_TCP_NODELAY_INHERITED 1 + +/* Is the O_NONBLOCK flag inherited from listening sockets? +*/ +#define APR_O_NONBLOCK_INHERITED 1 + +/* Typedefs that APR needs. */ + +typedef unsigned char apr_byte_t; + +typedef short apr_int16_t; +typedef unsigned short apr_uint16_t; + +typedef int apr_int32_t; +typedef unsigned int apr_uint32_t; + +#define APR_SIZEOF_VOIDP 8 + +/* + * Darwin 10's default compiler (gcc42) builds for both 64 and + * 32 bit architectures unless specifically told not to. + * In those cases, we need to override types depending on how + * we're being built at compile time. + * NOTE: This is an ugly work-around for Darwin's + * concept of universal binaries, a single package + * (executable, lib, etc...) which contains both 32 + * and 64 bit versions. The issue is that if APR is + * built universally, if something else is compiled + * against it, some bit sizes will depend on whether + * it is 32 or 64 bit. This is determined by the __LP64__ + * flag. Since we need to support both, we have to + * handle OS X unqiuely. + */ +#ifdef DARWIN_10 +#undef APR_SIZEOF_VOIDP +#undef INT64_C +#undef UINT64_C +#ifdef __LP64__ + typedef long apr_int64_t; + typedef unsigned long apr_uint64_t; + #define APR_SIZEOF_VOIDP 8 + #define INT64_C(v) (v ## L) + #define UINT64_C(v) (v ## UL) +#else + typedef long long apr_int64_t; + typedef unsigned long long apr_uint64_t; + #define APR_SIZEOF_VOIDP 4 + #define INT64_C(v) (v ## LL) + #define UINT64_C(v) (v ## ULL) +#endif +#else + typedef long apr_int64_t; + typedef unsigned long apr_uint64_t; +#endif + +typedef size_t apr_size_t; +typedef ssize_t apr_ssize_t; +typedef off_t apr_off_t; +typedef socklen_t apr_socklen_t; +typedef unsigned int apr_ino_t; + +#if APR_SIZEOF_VOIDP == 8 +typedef apr_uint64_t apr_uintptr_t; +#else +typedef apr_uint32_t apr_uintptr_t; +#endif + +/* Are we big endian? */ +#define APR_IS_BIGENDIAN 0 + +/* Mechanisms to properly type numeric literals */ +#define APR_INT64_C(val) INT64_C(val) +#define APR_UINT64_C(val) UINT64_C(val) + +#ifdef INT16_MIN +#define APR_INT16_MIN INT16_MIN +#else +#define APR_INT16_MIN (-0x7fff - 1) +#endif + +#ifdef INT16_MAX +#define APR_INT16_MAX INT16_MAX +#else +#define APR_INT16_MAX (0x7fff) +#endif + +#ifdef UINT16_MAX +#define APR_UINT16_MAX UINT16_MAX +#else +#define APR_UINT16_MAX (0xffff) +#endif + +#ifdef INT32_MIN +#define APR_INT32_MIN INT32_MIN +#else +#define APR_INT32_MIN (-0x7fffffff - 1) +#endif + +#ifdef INT32_MAX +#define APR_INT32_MAX INT32_MAX +#else +#define APR_INT32_MAX 0x7fffffff +#endif + +#ifdef UINT32_MAX +#define APR_UINT32_MAX UINT32_MAX +#else +#define APR_UINT32_MAX (0xffffffffU) +#endif + +#ifdef INT64_MIN +#define APR_INT64_MIN INT64_MIN +#else +#define APR_INT64_MIN (APR_INT64_C(-0x7fffffffffffffff) - 1) +#endif + +#ifdef INT64_MAX +#define APR_INT64_MAX INT64_MAX +#else +#define APR_INT64_MAX APR_INT64_C(0x7fffffffffffffff) +#endif + +#ifdef UINT64_MAX +#define APR_UINT64_MAX UINT64_MAX +#else +#define APR_UINT64_MAX APR_UINT64_C(0xffffffffffffffff) +#endif + +#define APR_SIZE_MAX (~((apr_size_t)0)) + + +/* Definitions that APR programs need to work properly. */ + +/** + * APR public API wrap for C++ compilers. + */ +#ifdef __cplusplus +#define APR_BEGIN_DECLS extern "C" { +#define APR_END_DECLS } +#else +#define APR_BEGIN_DECLS +#define APR_END_DECLS +#endif + +/** + * Thread callbacks from APR functions must be declared with APR_THREAD_FUNC, + * so that they follow the platform's calling convention. + *
+ *
+ * void* APR_THREAD_FUNC my_thread_entry_fn(apr_thread_t *thd, void *data);
+ *
+ * 
+ */ +#define APR_THREAD_FUNC + +/** + * The public APR functions are declared with APR_DECLARE(), so they may + * use the most appropriate calling convention. Public APR functions with + * variable arguments must use APR_DECLARE_NONSTD(). + * + * @remark Both the declaration and implementations must use the same macro. + * + *
+ * APR_DECLARE(rettype) apr_func(args)
+ * 
+ * @see APR_DECLARE_NONSTD @see APR_DECLARE_DATA + * @remark Note that when APR compiles the library itself, it passes the + * symbol -DAPR_DECLARE_EXPORT to the compiler on some platforms (e.g. Win32) + * to export public symbols from the dynamic library build.\n + * The user must define the APR_DECLARE_STATIC when compiling to target + * the static APR library on some platforms (e.g. Win32.) The public symbols + * are neither exported nor imported when APR_DECLARE_STATIC is defined.\n + * By default, compiling an application and including the APR public + * headers, without defining APR_DECLARE_STATIC, will prepare the code to be + * linked to the dynamic library. + */ +#define APR_DECLARE(type) type + +/** + * The public APR functions using variable arguments are declared with + * APR_DECLARE_NONSTD(), as they must follow the C language calling convention. + * @see APR_DECLARE @see APR_DECLARE_DATA + * @remark Both the declaration and implementations must use the same macro. + *
+ *
+ * APR_DECLARE_NONSTD(rettype) apr_func(args, ...);
+ *
+ * 
+ */ +#define APR_DECLARE_NONSTD(type) type + +/** + * The public APR variables are declared with AP_MODULE_DECLARE_DATA. + * This assures the appropriate indirection is invoked at compile time. + * @see APR_DECLARE @see APR_DECLARE_NONSTD + * @remark Note that the declaration and implementations use different forms, + * but both must include the macro. + * + *
+ *
+ * extern APR_DECLARE_DATA type apr_variable;\n
+ * APR_DECLARE_DATA type apr_variable = value;
+ *
+ * 
+ */ +#define APR_DECLARE_DATA + +/* Define APR_SSIZE_T_FMT. + * If ssize_t is an integer we define it to be "d", + * if ssize_t is a long int we define it to be "ld", + * if ssize_t is neither we declare an error here. + * I looked for a better way to define this here, but couldn't find one, so + * to find the logic for this definition search for "ssize_t_fmt" in + * configure.in. + */ + +#define APR_SSIZE_T_FMT "ld" + +/* And APR_SIZE_T_FMT */ +#define APR_SIZE_T_FMT "lu" + +/* And APR_OFF_T_FMT */ +#define APR_OFF_T_FMT "ld" + +/* And APR_PID_T_FMT */ +#define APR_PID_T_FMT "d" + +/* And APR_INT64_T_FMT */ +#define APR_INT64_T_FMT "ld" + +/* And APR_UINT64_T_FMT */ +#define APR_UINT64_T_FMT "lu" + +/* And APR_UINT64_T_HEX_FMT */ +#define APR_UINT64_T_HEX_FMT "lx" + +/* + * Ensure we work with universal binaries on Darwin + */ +#ifdef DARWIN_10 + +#undef APR_HAS_LARGE_FILES +#undef APR_SIZEOF_VOIDP +#undef APR_INT64_T_FMT +#undef APR_UINT64_T_FMT +#undef APR_UINT64_T_HEX_FMT + +#ifdef __LP64__ + #define APR_HAS_LARGE_FILES 0 + #define APR_SIZEOF_VOIDP 8 + #define APR_INT64_T_FMT "ld" + #define APR_UINT64_T_FMT "lu" + #define APR_UINT64_T_HEX_FMT "lx" +#else + #define APR_HAS_LARGE_FILES 1 + #define APR_SIZEOF_VOIDP 4 + #define APR_INT64_T_FMT "lld" + #define APR_UINT64_T_FMT "llu" + #define APR_UINT64_T_HEX_FMT "llx" +#endif + +#undef APR_IS_BIGENDIAN +#ifdef __BIG_ENDIAN__ + #define APR_IS_BIGENDIAN 1 +#else + #define APR_IS_BIGENDIAN 0 +#endif + +#undef APR_OFF_T_FMT +#define APR_OFF_T_FMT "lld" + +#endif /* DARWIN_10 */ + +/* Does the proc mutex lock threads too */ +#define APR_PROC_MUTEX_IS_GLOBAL 0 + +/* Local machine definition for console and log output. */ +#define APR_EOL_STR "\n" + +#if APR_HAVE_SYS_WAIT_H +#ifdef WEXITSTATUS +#define apr_wait_t int +#else +#define apr_wait_t union wait +#define WEXITSTATUS(status) (int)((status).w_retcode) +#define WTERMSIG(status) (int)((status).w_termsig) +#endif /* !WEXITSTATUS */ +#elif defined(__MINGW32__) +typedef int apr_wait_t; +#endif /* HAVE_SYS_WAIT_H */ + +#if defined(PATH_MAX) +#define APR_PATH_MAX PATH_MAX +#elif defined(_POSIX_PATH_MAX) +#define APR_PATH_MAX _POSIX_PATH_MAX +#else +#error no decision has been made on APR_PATH_MAX for your platform +#endif + +#define APR_DSOPATH "LD_LIBRARY_PATH" + +/** @} */ + +/* Definitions that only Win32 programs need to compile properly. */ + +/* XXX These simply don't belong here, perhaps in apr_portable.h + * based on some APR_HAVE_PID/GID/UID? + */ +#ifdef __MINGW32__ +#ifndef __GNUC__ +typedef int pid_t; +#endif +typedef int uid_t; +typedef int gid_t; +#endif + +#ifdef __cplusplus +} +#endif + +#endif /* APR_H */ Added: head/usr.bin/svn/lib/libapr/apr_private.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/usr.bin/svn/lib/libapr/apr_private.h Tue Jun 18 02:53:45 2013 (r251886) @@ -0,0 +1,1000 @@ +/* $FreeBSD$ */ + +/* include/arch/unix/apr_private.h. Generated from apr_private.h.in by configure. */ +/* include/arch/unix/apr_private.h.in. Generated from configure.in by autoheader. */ + + +#ifndef APR_PRIVATE_H +#define APR_PRIVATE_H + + +/* Define if building universal (internal helper macro) */ +/* #undef AC_APPLE_UNIVERSAL_BUILD */ + +/* Define if apr_allocator should use mmap */ +/* #undef APR_ALLOCATOR_USES_MMAP */ + +/* Define as function which can be used for conversion of strings to + apr_int64_t */ +#define APR_INT64_STRFN strtol + +/* Define as function used for conversion of strings to apr_off_t */ +#define APR_OFF_T_STRFN strtol + +/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP + systems. This function is required for `alloca.c' support on those systems. + */ +/* #undef CRAY_STACKSEG_END */ + +/* Define to 1 if using `alloca.c'. */ +/* #undef C_ALLOCA */ + +/* Define to path of random device */ +#define DEV_RANDOM "/dev/urandom" + +/* Define if struct dirent has an inode member */ +#define DIRENT_INODE d_fileno + +/* Define if struct dirent has a d_type member */ +#define DIRENT_TYPE d_type + +/* Define if DSO support uses dlfcn.h */ +/* #undef DSO_USE_DLFCN */ + +/* Define if DSO support uses dyld.h */ +/* #undef DSO_USE_DYLD */ + +/* Define if DSO support uses shl_load */ +/* #undef DSO_USE_SHL */ + +/* Define to list of paths to EGD sockets */ +/* #undef EGD_DEFAULT_SOCKET */ + +/* Define if fcntl locks affect threads within the process */ +/* #undef FCNTL_IS_GLOBAL */ + +/* Define if fcntl returns EACCES when F_SETLK is already held */ +/* #undef FCNTL_TRYACQUIRE_EACCES */ + +/* Define if flock locks affect threads within the process */ +/* #undef FLOCK_IS_GLOBAL */ + +/* Define if gethostbyaddr is thread safe */ +/* #undef GETHOSTBYADDR_IS_THREAD_SAFE */ + +/* Define if gethostbyname is thread safe */ +/* #undef GETHOSTBYNAME_IS_THREAD_SAFE */ + +/* Define if gethostbyname_r has the glibc style */ +#define GETHOSTBYNAME_R_GLIBC2 1 + +/* Define if gethostbyname_r has the hostent_data for the third argument */ +/* #undef GETHOSTBYNAME_R_HOSTENT_DATA */ + +/* Define if getservbyname is thread safe */ +/* #undef GETSERVBYNAME_IS_THREAD_SAFE */ + +/* Define if getservbyname_r has the glibc style */ +#define GETSERVBYNAME_R_GLIBC2 1 + +/* Define if getservbyname_r has the OSF/1 style */ +/* #undef GETSERVBYNAME_R_OSF1 */ + +/* Define if getservbyname_r has the Solaris style */ +/* #undef GETSERVBYNAME_R_SOLARIS */ + +/* Define if accept4 function is supported */ +#define HAVE_ACCEPT4 1 + +/* Define to 1 if you have `alloca', as a function or macro. */ +#define HAVE_ALLOCA 1 + +/* Define to 1 if you have and it should be used (not on Ultrix). + */ +/* #undef HAVE_ALLOCA_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_ARPA_INET_H 1 + +/* Define if compiler provides atomic builtins */ +#define HAVE_ATOMIC_BUILTINS 1 + +/* Define if BONE_VERSION is defined in sys/socket.h */ +/* #undef HAVE_BONE_VERSION */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_BYTEORDER_H */ + +/* Define to 1 if you have the `calloc' function. */ +#define HAVE_CALLOC 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_CONIO_H */ + +/* Define to 1 if you have the `create_area' function. */ +/* #undef HAVE_CREATE_AREA */ + +/* Define to 1 if you have the `create_sem' function. */ +/* #undef HAVE_CREATE_SEM */ + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_CRYPT_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_CTYPE_H 1 + +/* Define to 1 if you have the declaration of `sys_siglist', and to 0 if you + don't. */ +#define HAVE_DECL_SYS_SIGLIST 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_DIRENT_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_DIR_H */ + +/* Define to 1 if you have the header file. */ +#define HAVE_DLFCN_H 1 + +/* Define to 1 if you have the header file. */ +/* #undef HAVE_DL_H */ + +/* Define if dup3 function is supported */ +/* #undef HAVE_DUP3 */ + +/* Define if EGD is supported */ +/* #undef HAVE_EGD */ + +/* Define if the epoll interface is supported */ +/* #undef HAVE_EPOLL */ + +/* Define if epoll_create1 function is supported */ +/* #undef HAVE_EPOLL_CREATE1 */ + +/* Define to 1 if you have the header file. */ +#define HAVE_ERRNO_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_FCNTL_H 1 + +/* Define to 1 if you have the `fdatasync' function. */ +/* #undef HAVE_FDATASYNC */ + +/* Define to 1 if you have the `flock' function. */ +#define HAVE_FLOCK 1 + +/* Define to 1 if you have the `fork' function. */ +#define HAVE_FORK 1 + +/* Define if F_SETLK is defined in fcntl.h */ +#define HAVE_F_SETLK 1 + +/* Define if getaddrinfo accepts the AI_ADDRCONFIG flag */ +#define HAVE_GAI_ADDRCONFIG 1 + +/* Define to 1 if you have the `gai_strerror' function. */ +#define HAVE_GAI_STRERROR 1 + +/* Define if getaddrinfo exists and works well enough for APR */ +#define HAVE_GETADDRINFO 1 + +/* Define to 1 if you have the `getenv' function. */ +#define HAVE_GETENV 1 + +/* Define to 1 if you have the `getgrgid_r' function. */ +#define HAVE_GETGRGID_R 1 + +/* Define to 1 if you have the `getgrnam_r' function. */ +#define HAVE_GETGRNAM_R 1 + *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 02:57:57 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 9CDE28AF; Tue, 18 Jun 2013 02:57:57 +0000 (UTC) (envelope-from lstewart@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8DC761111; Tue, 18 Jun 2013 02:57:57 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I2vv9K054612; Tue, 18 Jun 2013 02:57:57 GMT (envelope-from lstewart@svn.freebsd.org) Received: (from lstewart@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I2vvoL054610; Tue, 18 Jun 2013 02:57:57 GMT (envelope-from lstewart@svn.freebsd.org) Message-Id: <201306180257.r5I2vvoL054610@svn.freebsd.org> From: Lawrence Stewart Date: Tue, 18 Jun 2013 02:57:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251887 - in head: share/man/man3 sys/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 02:57:57 -0000 Author: lstewart Date: Tue Jun 18 02:57:56 2013 New Revision: 251887 URL: http://svnweb.freebsd.org/changeset/base/251887 Log: Add new FOREACH_FROM variants of the queue(3) FOREACH macros which can optionally start the traversal from a previously found element by passing the element in as "var". Passing a NULL "var" retains the same semantics as the regular FOREACH macros. Kudos to phk for suggesting the "FROM" suffix instead of my original proposal. Reviewed by: jhb (previous version), rpaulo MFC after: 1 week Modified: head/share/man/man3/queue.3 head/sys/sys/queue.h Modified: head/share/man/man3/queue.3 ============================================================================== --- head/share/man/man3/queue.3 Tue Jun 18 02:53:45 2013 (r251886) +++ head/share/man/man3/queue.3 Tue Jun 18 02:57:56 2013 (r251887) @@ -32,7 +32,7 @@ .\" @(#)queue.3 8.2 (Berkeley) 1/24/94 .\" $FreeBSD$ .\" -.Dd Sep 12, 2012 +.Dd June 17, 2013 .Dt QUEUE 3 .Os .Sh NAME @@ -40,7 +40,9 @@ .Nm SLIST_ENTRY , .Nm SLIST_FIRST , .Nm SLIST_FOREACH , +.Nm SLIST_FOREACH_FROM , .Nm SLIST_FOREACH_SAFE , +.Nm SLIST_FOREACH_FROM_SAFE , .Nm SLIST_HEAD , .Nm SLIST_HEAD_INITIALIZER , .Nm SLIST_INIT , @@ -56,7 +58,9 @@ .Nm STAILQ_ENTRY , .Nm STAILQ_FIRST , .Nm STAILQ_FOREACH , +.Nm STAILQ_FOREACH_FROM , .Nm STAILQ_FOREACH_SAFE , +.Nm STAILQ_FOREACH_FROM_SAFE , .Nm STAILQ_HEAD , .Nm STAILQ_HEAD_INITIALIZER , .Nm STAILQ_INIT , @@ -73,7 +77,9 @@ .Nm LIST_ENTRY , .Nm LIST_FIRST , .Nm LIST_FOREACH , +.Nm LIST_FOREACH_FROM , .Nm LIST_FOREACH_SAFE , +.Nm LIST_FOREACH_FROM_SAFE , .Nm LIST_HEAD , .Nm LIST_HEAD_INITIALIZER , .Nm LIST_INIT , @@ -89,9 +95,13 @@ .Nm TAILQ_ENTRY , .Nm TAILQ_FIRST , .Nm TAILQ_FOREACH , +.Nm TAILQ_FOREACH_FROM , .Nm TAILQ_FOREACH_SAFE , +.Nm TAILQ_FOREACH_FROM_SAFE , .Nm TAILQ_FOREACH_REVERSE , +.Nm TAILQ_FOREACH_REVERSE_FROM , .Nm TAILQ_FOREACH_REVERSE_SAFE , +.Nm TAILQ_FOREACH_REVERSE_FROM_SAFE , .Nm TAILQ_HEAD , .Nm TAILQ_HEAD_INITIALIZER , .Nm TAILQ_INIT , @@ -113,7 +123,9 @@ lists and tail queues .Fn SLIST_ENTRY "TYPE" .Fn SLIST_FIRST "SLIST_HEAD *head" .Fn SLIST_FOREACH "TYPE *var" "SLIST_HEAD *head" "SLIST_ENTRY NAME" +.Fn SLIST_FOREACH_FROM "TYPE *var" "SLIST_HEAD *head" "SLIST_ENTRY NAME" .Fn SLIST_FOREACH_SAFE "TYPE *var" "SLIST_HEAD *head" "SLIST_ENTRY NAME" "TYPE *temp_var" +.Fn SLIST_FOREACH_FROM_SAFE "TYPE *var" "SLIST_HEAD *head" "SLIST_ENTRY NAME" "TYPE *temp_var" .Fn SLIST_HEAD "HEADNAME" "TYPE" .Fn SLIST_HEAD_INITIALIZER "SLIST_HEAD head" .Fn SLIST_INIT "SLIST_HEAD *head" @@ -130,7 +142,9 @@ lists and tail queues .Fn STAILQ_ENTRY "TYPE" .Fn STAILQ_FIRST "STAILQ_HEAD *head" .Fn STAILQ_FOREACH "TYPE *var" "STAILQ_HEAD *head" "STAILQ_ENTRY NAME" +.Fn STAILQ_FOREACH_FROM "TYPE *var" "STAILQ_HEAD *head" "STAILQ_ENTRY NAME" .Fn STAILQ_FOREACH_SAFE "TYPE *var" "STAILQ_HEAD *head" "STAILQ_ENTRY NAME" "TYPE *temp_var" +.Fn STAILQ_FOREACH_FROM_SAFE "TYPE *var" "STAILQ_HEAD *head" "STAILQ_ENTRY NAME" "TYPE *temp_var" .Fn STAILQ_HEAD "HEADNAME" "TYPE" .Fn STAILQ_HEAD_INITIALIZER "STAILQ_HEAD head" .Fn STAILQ_INIT "STAILQ_HEAD *head" @@ -148,7 +162,9 @@ lists and tail queues .Fn LIST_ENTRY "TYPE" .Fn LIST_FIRST "LIST_HEAD *head" .Fn LIST_FOREACH "TYPE *var" "LIST_HEAD *head" "LIST_ENTRY NAME" +.Fn LIST_FOREACH_FROM "TYPE *var" "LIST_HEAD *head" "LIST_ENTRY NAME" .Fn LIST_FOREACH_SAFE "TYPE *var" "LIST_HEAD *head" "LIST_ENTRY NAME" "TYPE *temp_var" +.Fn LIST_FOREACH_FROM_SAFE "TYPE *var" "LIST_HEAD *head" "LIST_ENTRY NAME" "TYPE *temp_var" .Fn LIST_HEAD "HEADNAME" "TYPE" .Fn LIST_HEAD_INITIALIZER "LIST_HEAD head" .Fn LIST_INIT "LIST_HEAD *head" @@ -165,9 +181,13 @@ lists and tail queues .Fn TAILQ_ENTRY "TYPE" .Fn TAILQ_FIRST "TAILQ_HEAD *head" .Fn TAILQ_FOREACH "TYPE *var" "TAILQ_HEAD *head" "TAILQ_ENTRY NAME" +.Fn TAILQ_FOREACH_FROM "TYPE *var" "TAILQ_HEAD *head" "TAILQ_ENTRY NAME" .Fn TAILQ_FOREACH_SAFE "TYPE *var" "TAILQ_HEAD *head" "TAILQ_ENTRY NAME" "TYPE *temp_var" +.Fn TAILQ_FOREACH_FROM_SAFE "TYPE *var" "TAILQ_HEAD *head" "TAILQ_ENTRY NAME" "TYPE *temp_var" .Fn TAILQ_FOREACH_REVERSE "TYPE *var" "TAILQ_HEAD *head" "HEADNAME" "TAILQ_ENTRY NAME" +.Fn TAILQ_FOREACH_REVERSE_FROM "TYPE *var" "TAILQ_HEAD *head" "HEADNAME" "TAILQ_ENTRY NAME" .Fn TAILQ_FOREACH_REVERSE_SAFE "TYPE *var" "TAILQ_HEAD *head" "HEADNAME" "TAILQ_ENTRY NAME" "TYPE *temp_var" +.Fn TAILQ_FOREACH_REVERSE_FROM_SAFE "TYPE *var" "TAILQ_HEAD *head" "HEADNAME" "TAILQ_ENTRY NAME" "TYPE *temp_var" .Fn TAILQ_HEAD "HEADNAME" "TYPE" .Fn TAILQ_HEAD_INITIALIZER "TAILQ_HEAD head" .Fn TAILQ_INIT "TAILQ_HEAD *head" @@ -365,6 +385,19 @@ turn to .Fa var . .Pp The macro +.Nm SLIST_FOREACH_FROM +behaves identically to +.Nm SLIST_FOREACH +when +.Fa var +is NULL, else it treats +.Fa var +as a previously found SLIST element and begins the loop at +.Fa var +instead of the first element in the SLIST referenced by +.Fa head . +.Pp +The macro .Nm SLIST_FOREACH_SAFE traverses the list referenced by .Fa head @@ -379,6 +412,19 @@ as well as free it from within the loop traversal. .Pp The macro +.Nm SLIST_FOREACH_FROM_SAFE +behaves identically to +.Nm SLIST_FOREACH_SAFE +when +.Fa var +is NULL, else it treats +.Fa var +as a previously found SLIST element and begins the loop at +.Fa var +instead of the first element in the SLIST referenced by +.Fa head . +.Pp +The macro .Nm SLIST_INIT initializes the list referenced by .Fa head . @@ -545,6 +591,19 @@ in turn to .Fa var . .Pp The macro +.Nm STAILQ_FOREACH_FROM +behaves identically to +.Nm STAILQ_FOREACH +when +.Fa var +is NULL, else it treats +.Fa var +as a previously found STAILQ element and begins the loop at +.Fa var +instead of the first element in the STAILQ referenced by +.Fa head . +.Pp +The macro .Nm STAILQ_FOREACH_SAFE traverses the tail queue referenced by .Fa head @@ -559,6 +618,19 @@ as well as free it from within the loop traversal. .Pp The macro +.Nm STAILQ_FOREACH_FROM_SAFE +behaves identically to +.Nm STAILQ_FOREACH_SAFE +when +.Fa var +is NULL, else it treats +.Fa var +as a previously found STAILQ element and begins the loop at +.Fa var +instead of the first element in the STAILQ referenced by +.Fa head . +.Pp +The macro .Nm STAILQ_INIT initializes the tail queue referenced by .Fa head . @@ -735,6 +807,19 @@ in the forward direction, assigning each .Fa var . .Pp The macro +.Nm LIST_FOREACH_FROM +behaves identically to +.Nm LIST_FOREACH +when +.Fa var +is NULL, else it treats +.Fa var +as a previously found LIST element and begins the loop at +.Fa var +instead of the first element in the LIST referenced by +.Fa head . +.Pp +The macro .Nm LIST_FOREACH_SAFE traverses the list referenced by .Fa head @@ -748,6 +833,19 @@ as well as free it from within the loop traversal. .Pp The macro +.Nm LIST_FOREACH_FROM_SAFE +behaves identically to +.Nm LIST_FOREACH_SAFE +when +.Fa var +is NULL, else it treats +.Fa var +as a previously found LIST element and begins the loop at +.Fa var +instead of the first element in the LIST referenced by +.Fa head . +.Pp +The macro .Nm LIST_INIT initializes the list referenced by .Fa head . @@ -920,12 +1018,38 @@ is set to if the loop completes normally, or if there were no elements. .Pp The macro +.Nm TAILQ_FOREACH_FROM +behaves identically to +.Nm TAILQ_FOREACH +when +.Fa var +is NULL, else it treats +.Fa var +as a previously found TAILQ element and begins the loop at +.Fa var +instead of the first element in the TAILQ referenced by +.Fa head . +.Pp +The macro .Nm TAILQ_FOREACH_REVERSE traverses the tail queue referenced by .Fa head in the reverse direction, assigning each element in turn to .Fa var . .Pp +The macro +.Nm TAILQ_FOREACH_REVERSE_FROM +behaves identically to +.Nm TAILQ_FOREACH_REVERSE +when +.Fa var +is NULL, else it treats +.Fa var +as a previously found TAILQ element and begins the reverse loop at +.Fa var +instead of the last element in the TAILQ referenced by +.Fa head . +.Pp The macros .Nm TAILQ_FOREACH_SAFE and @@ -945,6 +1069,32 @@ as well as free it from within the loop traversal. .Pp The macro +.Nm TAILQ_FOREACH_FROM_SAFE +behaves identically to +.Nm TAILQ_FOREACH_SAFE +when +.Fa var +is NULL, else it treats +.Fa var +as a previously found TAILQ element and begins the loop at +.Fa var +instead of the first element in the TAILQ referenced by +.Fa head . +.Pp +The macro +.Nm TAILQ_FOREACH_REVERSE_FROM_SAFE +behaves identically to +.Nm TAILQ_FOREACH_REVERSE_SAFE +when +.Fa var +is NULL, else it treats +.Fa var +as a previously found TAILQ element and begins the reverse loop at +.Fa var +instead of the last element in the TAILQ referenced by +.Fa head . +.Pp +The macro .Nm TAILQ_INIT initializes the tail queue referenced by .Fa head . Modified: head/sys/sys/queue.h ============================================================================== --- head/sys/sys/queue.h Tue Jun 18 02:53:45 2013 (r251886) +++ head/sys/sys/queue.h Tue Jun 18 02:57:56 2013 (r251887) @@ -88,9 +88,13 @@ * _PREV - + - + * _LAST - - + + * _FOREACH + + + + + * _FOREACH_FROM + + + + * _FOREACH_SAFE + + + + + * _FOREACH_FROM_SAFE + + + + * _FOREACH_REVERSE - - - + + * _FOREACH_REVERSE_FROM - - - + * _FOREACH_REVERSE_SAFE - - - + + * _FOREACH_REVERSE_FROM_SAFE - - - + * _INSERT_HEAD + + + + * _INSERT_BEFORE - + - + * _INSERT_AFTER + + + + @@ -167,11 +171,21 @@ struct { \ (var); \ (var) = SLIST_NEXT((var), field)) +#define SLIST_FOREACH_FROM(var, head, field) \ + for ((var) = ((var) ? (var) : SLIST_FIRST((head))); \ + (var); \ + (var) = SLIST_NEXT((var), field)) + #define SLIST_FOREACH_SAFE(var, head, field, tvar) \ for ((var) = SLIST_FIRST((head)); \ (var) && ((tvar) = SLIST_NEXT((var), field), 1); \ (var) = (tvar)) +#define SLIST_FOREACH_FROM_SAFE(var, head, field, tvar) \ + for ((var) = ((var) ? (var) : SLIST_FIRST((head))); \ + (var) && ((tvar) = SLIST_NEXT((var), field), 1); \ + (var) = (tvar)) + #define SLIST_FOREACH_PREVPTR(var, varp, head, field) \ for ((varp) = &SLIST_FIRST((head)); \ ((var) = *(varp)) != NULL; \ @@ -259,12 +273,21 @@ struct { \ (var); \ (var) = STAILQ_NEXT((var), field)) +#define STAILQ_FOREACH_FROM(var, head, field) \ + for ((var) = ((var) ? (var) : STAILQ_FIRST((head))); \ + (var); \ + (var) = STAILQ_NEXT((var), field)) #define STAILQ_FOREACH_SAFE(var, head, field, tvar) \ for ((var) = STAILQ_FIRST((head)); \ (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \ (var) = (tvar)) +#define STAILQ_FOREACH_FROM_SAFE(var, head, field, tvar) \ + for ((var) = ((var) ? (var) : STAILQ_FIRST((head))); \ + (var) && ((tvar) = STAILQ_NEXT((var), field), 1); \ + (var) = (tvar)) + #define STAILQ_INIT(head) do { \ STAILQ_FIRST((head)) = NULL; \ (head)->stqh_last = &STAILQ_FIRST((head)); \ @@ -389,11 +412,21 @@ struct { \ (var); \ (var) = LIST_NEXT((var), field)) +#define LIST_FOREACH_FROM(var, head, field) \ + for ((var) = ((var) ? (var) : LIST_FIRST((head))); \ + (var); \ + (var) = LIST_NEXT((var), field)) + #define LIST_FOREACH_SAFE(var, head, field, tvar) \ for ((var) = LIST_FIRST((head)); \ (var) && ((tvar) = LIST_NEXT((var), field), 1); \ (var) = (tvar)) +#define LIST_FOREACH_FROM_SAFE(var, head, field, tvar) \ + for ((var) = ((var) ? (var) : LIST_FIRST((head))); \ + (var) && ((tvar) = LIST_NEXT((var), field), 1); \ + (var) = (tvar)) + #define LIST_INIT(head) do { \ LIST_FIRST((head)) = NULL; \ } while (0) @@ -526,21 +559,41 @@ struct { \ (var); \ (var) = TAILQ_NEXT((var), field)) +#define TAILQ_FOREACH_FROM(var, head, field) \ + for ((var) = ((var) ? (var) : TAILQ_FIRST((head))); \ + (var); \ + (var) = TAILQ_NEXT((var), field)) + #define TAILQ_FOREACH_SAFE(var, head, field, tvar) \ for ((var) = TAILQ_FIRST((head)); \ (var) && ((tvar) = TAILQ_NEXT((var), field), 1); \ (var) = (tvar)) +#define TAILQ_FOREACH_FROM_SAFE(var, head, field, tvar) \ + for ((var) = ((var) ? (var) : TAILQ_FIRST((head))); \ + (var) && ((tvar) = TAILQ_NEXT((var), field), 1); \ + (var) = (tvar)) + #define TAILQ_FOREACH_REVERSE(var, head, headname, field) \ for ((var) = TAILQ_LAST((head), headname); \ (var); \ (var) = TAILQ_PREV((var), headname, field)) +#define TAILQ_FOREACH_REVERSE_FROM(var, head, headname, field) \ + for ((var) = ((var) ? (var) : TAILQ_LAST((head), headname)); \ + (var); \ + (var) = TAILQ_PREV((var), headname, field)) + #define TAILQ_FOREACH_REVERSE_SAFE(var, head, headname, field, tvar) \ for ((var) = TAILQ_LAST((head), headname); \ (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1); \ (var) = (tvar)) +#define TAILQ_FOREACH_REVERSE_FROM_SAFE(var, head, headname, field, tvar) \ + for ((var) = ((var) ? (var) : TAILQ_LAST((head), headname)); \ + (var) && ((tvar) = TAILQ_PREV((var), headname, field), 1); \ + (var) = (tvar)) + #define TAILQ_INIT(head) do { \ TAILQ_FIRST((head)) = NULL; \ (head)->tqh_last = &TAILQ_FIRST((head)); \ From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 04:50:21 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 00E5FC2F; Tue, 18 Jun 2013 04:50:20 +0000 (UTC) (envelope-from jeff@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id D75551810; Tue, 18 Jun 2013 04:50:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I4oKTe091259; Tue, 18 Jun 2013 04:50:20 GMT (envelope-from jeff@svn.freebsd.org) Received: (from jeff@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I4oKoY091256; Tue, 18 Jun 2013 04:50:20 GMT (envelope-from jeff@svn.freebsd.org) Message-Id: <201306180450.r5I4oKoY091256@svn.freebsd.org> From: Jeff Roberson Date: Tue, 18 Jun 2013 04:50:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251894 - in head: lib/libmemstat sys/vm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 04:50:21 -0000 Author: jeff Date: Tue Jun 18 04:50:20 2013 New Revision: 251894 URL: http://svnweb.freebsd.org/changeset/base/251894 Log: Refine UMA bucket allocation to reduce space consumption and improve performance. - Always free to the alloc bucket if there is space. This gives LIFO allocation order to improve hot-cache performance. This also allows for zones with a single bucket per-cpu rather than a pair if the entire working set fits in one bucket. - Enable per-cpu caches of buckets. To prevent recursive bucket allocation one bucket zone still has per-cpu caches disabled. - Pick the initial bucket size based on a table driven maximum size per-bucket rather than the number of items per-page. This gives more sane initial sizes. - Only grow the bucket size when we face contention on the zone lock, this causes bucket sizes to grow more slowly. - Adjust the number of items per-bucket to account for the header space. This packs the buckets more efficiently per-page while making them not quite powers of two. - Eliminate the per-zone free bucket list. Always return buckets back to the bucket zone. This ensures that as zones grow into larger bucket sizes they eventually discard the smaller sizes. It persists fewer buckets in the system. The locking is slightly trickier. - Only switch buckets in zalloc, not zfree, this eliminates pathological cases where we ping-pong between two buckets. - Ensure that the thread that fills a new bucket gets to allocate from it to give a better upper bound on allocation time. Sponsored by: EMC / Isilon Storage Division Modified: head/lib/libmemstat/memstat_uma.c head/sys/vm/uma_core.c head/sys/vm/uma_int.h Modified: head/lib/libmemstat/memstat_uma.c ============================================================================== --- head/lib/libmemstat/memstat_uma.c Tue Jun 18 04:11:16 2013 (r251893) +++ head/lib/libmemstat/memstat_uma.c Tue Jun 18 04:50:20 2013 (r251894) @@ -446,7 +446,7 @@ skip_percpu: kz.uk_ipers; mtp->mt_byteslimit = mtp->mt_countlimit * mtp->mt_size; mtp->mt_count = mtp->mt_numallocs - mtp->mt_numfrees; - for (ubp = LIST_FIRST(&uz.uz_full_bucket); ubp != + for (ubp = LIST_FIRST(&uz.uz_buckets); ubp != NULL; ubp = LIST_NEXT(&ub, ub_link)) { ret = kread(kvm, ubp, &ub, sizeof(ub), 0); mtp->mt_zonefree += ub.ub_cnt; Modified: head/sys/vm/uma_core.c ============================================================================== --- head/sys/vm/uma_core.c Tue Jun 18 04:11:16 2013 (r251893) +++ head/sys/vm/uma_core.c Tue Jun 18 04:50:20 2013 (r251894) @@ -192,27 +192,26 @@ struct uma_kctor_args { struct uma_bucket_zone { uma_zone_t ubz_zone; char *ubz_name; - int ubz_entries; + int ubz_entries; /* Number of items it can hold. */ + int ubz_maxsize; /* Maximum allocation size per-item. */ }; -#define BUCKET_MAX 128 +/* + * Compute the actual number of bucket entries to pack them in power + * of two sizes for more efficient space utilization. + */ +#define BUCKET_SIZE(n) \ + (((sizeof(void *) * (n)) - sizeof(struct uma_bucket)) / sizeof(void *)) + +#define BUCKET_MAX BUCKET_SIZE(128) struct uma_bucket_zone bucket_zones[] = { - { NULL, "16 Bucket", 16 }, - { NULL, "32 Bucket", 32 }, - { NULL, "64 Bucket", 64 }, - { NULL, "128 Bucket", 128 }, + { NULL, "32 Bucket", BUCKET_SIZE(32), 512 }, + { NULL, "64 Bucket", BUCKET_SIZE(64), 256 }, + { NULL, "128 Bucket", BUCKET_SIZE(128), 128 }, { NULL, NULL, 0} }; - -#define BUCKET_SHIFT 4 -#define BUCKET_ZONES ((BUCKET_MAX >> BUCKET_SHIFT) + 1) - -/* - * bucket_size[] maps requested bucket sizes to zones that allocate a bucket - * of approximately the right size. - */ -static uint8_t bucket_size[BUCKET_ZONES]; +static uma_zone_t largebucket; /* * Flags and enumerations to be passed to internal functions. @@ -250,7 +249,7 @@ static void bucket_init(void); static uma_bucket_t bucket_alloc(int, int); static void bucket_free(uma_bucket_t); static void bucket_zone_drain(void); -static int zone_alloc_bucket(uma_zone_t zone, int flags); +static uma_bucket_t zone_alloc_bucket(uma_zone_t zone, int flags); static uma_slab_t zone_fetch_slab(uma_zone_t zone, uma_keg_t last, int flags); static uma_slab_t zone_fetch_slab_multi(uma_zone_t zone, uma_keg_t last, int flags); static void *slab_alloc_item(uma_keg_t keg, uma_slab_t slab); @@ -283,7 +282,6 @@ SYSCTL_INT(_vm, OID_AUTO, zone_warnings, /* * This routine checks to see whether or not it's safe to enable buckets. */ - static void bucket_enable(void) { @@ -294,28 +292,31 @@ bucket_enable(void) * Initialize bucket_zones, the array of zones of buckets of various sizes. * * For each zone, calculate the memory required for each bucket, consisting - * of the header and an array of pointers. Initialize bucket_size[] to point - * the range of appropriate bucket sizes at the zone. + * of the header and an array of pointers. */ static void bucket_init(void) { struct uma_bucket_zone *ubz; + int size; int i; - int j; - - for (i = 0, j = 0; bucket_zones[j].ubz_entries != 0; j++) { - int size; - ubz = &bucket_zones[j]; + for (i = 0, ubz = &bucket_zones[0]; ubz->ubz_entries != 0; ubz++) { size = roundup(sizeof(struct uma_bucket), sizeof(void *)); size += sizeof(void *) * ubz->ubz_entries; ubz->ubz_zone = uma_zcreate(ubz->ubz_name, size, NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, - UMA_ZFLAG_INTERNAL | UMA_ZFLAG_BUCKET); - for (; i <= ubz->ubz_entries; i += (1 << BUCKET_SHIFT)) - bucket_size[i >> BUCKET_SHIFT] = j; + UMA_ZONE_MAXBUCKET | UMA_ZONE_MTXCLASS); } + /* + * To avoid recursive bucket allocation loops we disable buckets + * on the smallest bucket zone and use it for the largest zone. + * The remainder of the zones all use the largest zone. + */ + ubz--; + ubz->ubz_zone->uz_count = bucket_zones[0].ubz_entries; + bucket_zones[0].ubz_zone->uz_count = 0; + largebucket = ubz->ubz_zone; } /* @@ -325,10 +326,29 @@ bucket_init(void) static struct uma_bucket_zone * bucket_zone_lookup(int entries) { - int idx; + struct uma_bucket_zone *ubz; - idx = howmany(entries, 1 << BUCKET_SHIFT); - return (&bucket_zones[bucket_size[idx]]); + for (ubz = &bucket_zones[0]; ubz->ubz_entries != 0; ubz++) + if (ubz->ubz_entries >= entries) + return (ubz); + ubz--; + return (ubz); +} + +static int +bucket_select(int size) +{ + struct uma_bucket_zone *ubz; + + ubz = &bucket_zones[0]; + if (size > ubz->ubz_maxsize) + return MAX((ubz->ubz_maxsize * ubz->ubz_entries) / size, 1); + + for (; ubz->ubz_entries != 0; ubz++) + if (ubz->ubz_maxsize < size) + break; + ubz--; + return (ubz->ubz_entries); } static uma_bucket_t @@ -347,7 +367,7 @@ bucket_alloc(int entries, int bflags) return (NULL); ubz = bucket_zone_lookup(entries); - bucket = zone_alloc_item(ubz->ubz_zone, NULL, bflags); + bucket = uma_zalloc(ubz->ubz_zone, bflags); if (bucket) { #ifdef INVARIANTS bzero(bucket->ub_bucket, sizeof(void *) * ubz->ubz_entries); @@ -364,8 +384,10 @@ bucket_free(uma_bucket_t bucket) { struct uma_bucket_zone *ubz; + KASSERT(bucket->ub_cnt == 0, + ("bucket_free: Freeing a non free bucket.")); ubz = bucket_zone_lookup(bucket->ub_entries); - zone_free_item(ubz->ubz_zone, bucket, NULL, SKIP_NONE); + uma_zfree(ubz->ubz_zone, bucket); } static void @@ -662,19 +684,49 @@ bucket_cache_drain(uma_zone_t zone) * Drain the bucket queues and free the buckets, we just keep two per * cpu (alloc/free). */ - while ((bucket = LIST_FIRST(&zone->uz_full_bucket)) != NULL) { + while ((bucket = LIST_FIRST(&zone->uz_buckets)) != NULL) { LIST_REMOVE(bucket, ub_link); ZONE_UNLOCK(zone); bucket_drain(zone, bucket); bucket_free(bucket); ZONE_LOCK(zone); } +} - /* Now we do the free queue.. */ - while ((bucket = LIST_FIRST(&zone->uz_free_bucket)) != NULL) { - LIST_REMOVE(bucket, ub_link); - bucket_free(bucket); +static void +keg_free_slab(uma_keg_t keg, uma_slab_t slab, int start) +{ + uint8_t *mem; + int i; + uint8_t flags; + + mem = slab->us_data; + flags = slab->us_flags; + i = start; + if (keg->uk_fini != NULL) { + for (i--; i > -1; i--) + keg->uk_fini(slab->us_data + (keg->uk_rsize * i), + keg->uk_size); } + if (keg->uk_flags & UMA_ZONE_VTOSLAB) { + vm_object_t obj; + + if (flags & UMA_SLAB_KMEM) + obj = kmem_object; + else if (flags & UMA_SLAB_KERNEL) + obj = kernel_object; + else + obj = NULL; + for (i = 0; i < keg->uk_ppera; i++) + vsetobj((vm_offset_t)mem + (i * PAGE_SIZE), obj); + } + if (keg->uk_flags & UMA_ZONE_OFFPAGE) + zone_free_item(keg->uk_slabzone, slab, NULL, SKIP_NONE); +#ifdef UMA_DEBUG + printf("%s: Returning %d bytes.\n", keg->uk_name, + PAGE_SIZE * keg->uk_ppera); +#endif + keg->uk_freef(mem, PAGE_SIZE * keg->uk_ppera, flags); } /* @@ -689,9 +741,6 @@ keg_drain(uma_keg_t keg) struct slabhead freeslabs = { 0 }; uma_slab_t slab; uma_slab_t n; - uint8_t flags; - uint8_t *mem; - int i; /* * We don't want to take pages from statically allocated kegs at this @@ -733,34 +782,7 @@ finished: while ((slab = SLIST_FIRST(&freeslabs)) != NULL) { SLIST_REMOVE(&freeslabs, slab, uma_slab, us_hlink); - if (keg->uk_fini) - for (i = 0; i < keg->uk_ipers; i++) - keg->uk_fini( - slab->us_data + (keg->uk_rsize * i), - keg->uk_size); - flags = slab->us_flags; - mem = slab->us_data; - - if (keg->uk_flags & UMA_ZONE_VTOSLAB) { - vm_object_t obj; - - if (flags & UMA_SLAB_KMEM) - obj = kmem_object; - else if (flags & UMA_SLAB_KERNEL) - obj = kernel_object; - else - obj = NULL; - for (i = 0; i < keg->uk_ppera; i++) - vsetobj((vm_offset_t)mem + (i * PAGE_SIZE), - obj); - } - if (keg->uk_flags & UMA_ZONE_OFFPAGE) - zone_free_item(keg->uk_slabzone, slab, NULL, SKIP_NONE); -#ifdef UMA_DEBUG - printf("%s: Returning %d bytes.\n", - keg->uk_name, PAGE_SIZE * keg->uk_ppera); -#endif - keg->uk_freef(mem, PAGE_SIZE * keg->uk_ppera, flags); + keg_free_slab(keg, slab, 0); } } @@ -827,6 +849,7 @@ keg_alloc_slab(uma_keg_t keg, uma_zone_t mtx_assert(&keg->uk_lock, MA_OWNED); slab = NULL; + mem = NULL; #ifdef UMA_DEBUG printf("alloc_slab: Allocating a new slab for %s\n", keg->uk_name); @@ -836,10 +859,8 @@ keg_alloc_slab(uma_keg_t keg, uma_zone_t if (keg->uk_flags & UMA_ZONE_OFFPAGE) { slab = zone_alloc_item(keg->uk_slabzone, NULL, wait); - if (slab == NULL) { - KEG_LOCK(keg); - return NULL; - } + if (slab == NULL) + goto out; } /* @@ -862,8 +883,8 @@ keg_alloc_slab(uma_keg_t keg, uma_zone_t if (mem == NULL) { if (keg->uk_flags & UMA_ZONE_OFFPAGE) zone_free_item(keg->uk_slabzone, slab, NULL, SKIP_NONE); - KEG_LOCK(keg); - return (NULL); + slab = NULL; + goto out; } /* Point the slab into the allocated memory */ @@ -894,41 +915,21 @@ keg_alloc_slab(uma_keg_t keg, uma_zone_t keg->uk_size, wait) != 0) break; if (i != keg->uk_ipers) { - if (keg->uk_fini != NULL) { - for (i--; i > -1; i--) - keg->uk_fini(slab->us_data + - (keg->uk_rsize * i), - keg->uk_size); - } - if (keg->uk_flags & UMA_ZONE_VTOSLAB) { - vm_object_t obj; - - if (flags & UMA_SLAB_KMEM) - obj = kmem_object; - else if (flags & UMA_SLAB_KERNEL) - obj = kernel_object; - else - obj = NULL; - for (i = 0; i < keg->uk_ppera; i++) - vsetobj((vm_offset_t)mem + - (i * PAGE_SIZE), obj); - } - if (keg->uk_flags & UMA_ZONE_OFFPAGE) - zone_free_item(keg->uk_slabzone, slab, - NULL, SKIP_NONE); - keg->uk_freef(mem, PAGE_SIZE * keg->uk_ppera, - flags); - KEG_LOCK(keg); - return (NULL); + keg_free_slab(keg, slab, i); + slab = NULL; + goto out; } } +out: KEG_LOCK(keg); - if (keg->uk_flags & UMA_ZONE_HASH) - UMA_HASH_INSERT(&keg->uk_hash, slab, mem); + if (slab != NULL) { + if (keg->uk_flags & UMA_ZONE_HASH) + UMA_HASH_INSERT(&keg->uk_hash, slab, mem); - keg->uk_pages += keg->uk_ppera; - keg->uk_free += keg->uk_ipers; + keg->uk_pages += keg->uk_ppera; + keg->uk_free += keg->uk_ipers; + } return (slab); } @@ -1304,7 +1305,6 @@ keg_ctor(void *mem, int size, void *udat keg->uk_flags = arg->flags; keg->uk_allocf = page_alloc; keg->uk_freef = page_free; - keg->uk_recurse = 0; keg->uk_slabzone = NULL; /* @@ -1463,7 +1463,7 @@ zone_ctor(void *mem, int size, void *uda zone->uz_frees = 0; zone->uz_fails = 0; zone->uz_sleeps = 0; - zone->uz_fills = zone->uz_count = 0; + zone->uz_count = 0; zone->uz_flags = 0; zone->uz_warning = NULL; timevalclear(&zone->uz_ratecheck); @@ -1544,12 +1544,11 @@ zone_ctor(void *mem, int size, void *uda return (0); } - if (keg->uk_flags & UMA_ZONE_MAXBUCKET) - zone->uz_count = BUCKET_MAX; - else if (keg->uk_ipers <= BUCKET_MAX) - zone->uz_count = keg->uk_ipers; + if ((keg->uk_flags & UMA_ZONE_MAXBUCKET) == 0) + zone->uz_count = bucket_select(keg->uk_rsize); else zone->uz_count = BUCKET_MAX; + return (0); } @@ -1973,6 +1972,7 @@ uma_zalloc_arg(uma_zone_t zone, void *ud void *item; uma_cache_t cache; uma_bucket_t bucket; + int lockfail; int cpu; /* This is the fast path allocation */ @@ -2000,7 +2000,8 @@ uma_zalloc_arg(uma_zone_t zone, void *ud return (NULL); if (zone->uz_ctor != NULL && zone->uz_ctor != mtrash_ctor && - zone->uz_ctor(item, zone->uz_size, udata, flags) != 0) { + zone->uz_ctor(item, zone->uz_size, udata, + flags) != 0) { zone->uz_fini(item, zone->uz_size); return (NULL); } @@ -2020,58 +2021,62 @@ uma_zalloc_arg(uma_zone_t zone, void *ud * the current cache; when we re-acquire the critical section, we * must detect and handle migration if it has occurred. */ -zalloc_restart: critical_enter(); cpu = curcpu; cache = &zone->uz_cpu[cpu]; zalloc_start: bucket = cache->uc_allocbucket; - - if (bucket) { - if (bucket->ub_cnt > 0) { - bucket->ub_cnt--; - item = bucket->ub_bucket[bucket->ub_cnt]; + if (bucket != NULL && bucket->ub_cnt > 0) { + bucket->ub_cnt--; + item = bucket->ub_bucket[bucket->ub_cnt]; #ifdef INVARIANTS - bucket->ub_bucket[bucket->ub_cnt] = NULL; + bucket->ub_bucket[bucket->ub_cnt] = NULL; #endif - KASSERT(item != NULL, - ("uma_zalloc: Bucket pointer mangled.")); - cache->uc_allocs++; - critical_exit(); - if (zone->uz_ctor != NULL) { - if (zone->uz_ctor(item, zone->uz_size, - udata, flags) != 0) { - atomic_add_long(&zone->uz_fails, 1); - zone_free_item(zone, item, udata, - SKIP_DTOR); - return (NULL); - } - } + KASSERT(item != NULL, ("uma_zalloc: Bucket pointer mangled.")); + cache->uc_allocs++; + critical_exit(); + if (zone->uz_ctor != NULL && + zone->uz_ctor(item, zone->uz_size, udata, flags) != 0) { + atomic_add_long(&zone->uz_fails, 1); + zone_free_item(zone, item, udata, SKIP_DTOR); + return (NULL); + } #ifdef INVARIANTS - uma_dbg_alloc(zone, NULL, item); + uma_dbg_alloc(zone, NULL, item); #endif - if (flags & M_ZERO) - bzero(item, zone->uz_size); - return (item); - } else if (cache->uc_freebucket) { - /* - * We have run out of items in our allocbucket. - * See if we can switch with our free bucket. - */ - if (cache->uc_freebucket->ub_cnt > 0) { + if (flags & M_ZERO) + bzero(item, zone->uz_size); + return (item); + } + + /* + * We have run out of items in our alloc bucket. + * See if we can switch with our free bucket. + */ + bucket = cache->uc_freebucket; + if (bucket != NULL && bucket->ub_cnt > 0) { #ifdef UMA_DEBUG_ALLOC - printf("uma_zalloc: Swapping empty with" - " alloc.\n"); + printf("uma_zalloc: Swapping empty with alloc.\n"); #endif - bucket = cache->uc_freebucket; - cache->uc_freebucket = cache->uc_allocbucket; - cache->uc_allocbucket = bucket; - - goto zalloc_start; - } - } + cache->uc_freebucket = cache->uc_allocbucket; + cache->uc_allocbucket = bucket; + goto zalloc_start; } + + /* + * Discard any empty allocation bucket while we hold no locks. + */ + bucket = cache->uc_allocbucket; + cache->uc_allocbucket = NULL; + critical_exit(); + if (bucket != NULL) + bucket_free(bucket); + + /* Short-circuit for zones without buckets and low memory. */ + if (zone->uz_count == 0 || bucketdisable) + goto zalloc_item; + /* * Attempt to retrieve the item from the per-CPU cache has failed, so * we must go back to the zone. This requires the zone lock, so we @@ -2081,41 +2086,34 @@ zalloc_start: * thread-local state specific to the cache from prior to releasing * the critical section. */ - critical_exit(); - ZONE_LOCK(zone); + lockfail = 0; + if (ZONE_TRYLOCK(zone) == 0) { + /* Record contention to size the buckets. */ + ZONE_LOCK(zone); + lockfail = 1; + } critical_enter(); cpu = curcpu; cache = &zone->uz_cpu[cpu]; - bucket = cache->uc_allocbucket; - if (bucket != NULL) { - if (bucket->ub_cnt > 0) { - ZONE_UNLOCK(zone); - goto zalloc_start; - } - bucket = cache->uc_freebucket; - if (bucket != NULL && bucket->ub_cnt > 0) { - ZONE_UNLOCK(zone); - goto zalloc_start; - } - } - /* Since we have locked the zone we may as well send back our stats */ + /* + * Since we have locked the zone we may as well send back our stats. + */ atomic_add_long(&zone->uz_allocs, cache->uc_allocs); atomic_add_long(&zone->uz_frees, cache->uc_frees); cache->uc_allocs = 0; cache->uc_frees = 0; - /* Our old one is now a free bucket */ - if (cache->uc_allocbucket) { - KASSERT(cache->uc_allocbucket->ub_cnt == 0, - ("uma_zalloc_arg: Freeing a non free bucket.")); - LIST_INSERT_HEAD(&zone->uz_free_bucket, - cache->uc_allocbucket, ub_link); - cache->uc_allocbucket = NULL; + /* See if we lost the race to fill the cache. */ + if (cache->uc_allocbucket != NULL) { + ZONE_UNLOCK(zone); + goto zalloc_start; } - /* Check the free list for a new alloc bucket */ - if ((bucket = LIST_FIRST(&zone->uz_full_bucket)) != NULL) { + /* + * Check the zone's cache of buckets. + */ + if ((bucket = LIST_FIRST(&zone->uz_buckets)) != NULL) { KASSERT(bucket->ub_cnt != 0, ("uma_zalloc_arg: Returning an empty bucket.")); @@ -2127,19 +2125,39 @@ zalloc_start: /* We are no longer associated with this CPU. */ critical_exit(); - /* Bump up our uz_count so we get here less */ - if (zone->uz_count < BUCKET_MAX) + /* + * We bump the uz count when the cache size is insufficient to + * handle the working set. + */ + if (lockfail && zone->uz_count < BUCKET_MAX && zone->uz_count != 0 && + zone != largebucket) zone->uz_count++; + ZONE_UNLOCK(zone); /* * Now lets just fill a bucket and put it on the free list. If that - * works we'll restart the allocation from the begining. + * works we'll restart the allocation from the begining and it + * will use the just filled bucket. */ - if (zone_alloc_bucket(zone, flags)) { + bucket = zone_alloc_bucket(zone, flags); + if (bucket != NULL) { + ZONE_LOCK(zone); + critical_enter(); + cpu = curcpu; + cache = &zone->uz_cpu[cpu]; + /* + * See if we lost the race or were migrated. Cache the + * initialized bucket to make this less likely or claim + * the memory directly. + */ + if (cache->uc_allocbucket == NULL) + cache->uc_allocbucket = bucket; + else + LIST_INSERT_HEAD(&zone->uz_buckets, bucket, ub_link); ZONE_UNLOCK(zone); - goto zalloc_restart; + goto zalloc_start; } - ZONE_UNLOCK(zone); + /* * We may not be able to get a bucket so return an actual item. */ @@ -2147,7 +2165,9 @@ zalloc_start: printf("uma_zalloc_arg: Bucketzone returned NULL\n"); #endif +zalloc_item: item = zone_alloc_item(zone, udata, flags); + return (item); } @@ -2200,9 +2220,7 @@ keg_fetch_slab(uma_keg_t keg, uma_zone_t msleep(keg, &keg->uk_lock, PVM, "keglimit", 0); continue; } - keg->uk_recurse++; slab = keg_alloc_slab(keg, zone, flags); - keg->uk_recurse--; /* * If we got a slab here it's safe to mark it partially used * and return. We assume that the caller is going to remove @@ -2248,17 +2266,6 @@ zone_fetch_slab(uma_zone_t zone, uma_keg if (keg == NULL) keg = zone_first_keg(zone); - /* - * This is to prevent us from recursively trying to allocate - * buckets. The problem is that if an allocation forces us to - * grab a new bucket we will call page_alloc, which will go off - * and cause the vm to allocate vm_map_entries. If we need new - * buckets there too we will recurse in kmem_alloc and bad - * things happen. So instead we return a NULL bucket, and make - * the code that allocates buckets smart enough to deal with it - */ - if (keg->uk_flags & UMA_ZFLAG_BUCKET && keg->uk_recurse != 0) - return (NULL); for (;;) { slab = keg_fetch_slab(keg, zone, flags); @@ -2403,43 +2410,20 @@ zone_import(uma_zone_t zone, void **buck return i; } -static int +static uma_bucket_t zone_alloc_bucket(uma_zone_t zone, int flags) { uma_bucket_t bucket; int bflags; int max; -#ifdef SMP - /* - * This code is here to limit the number of simultaneous bucket fills - * for any given zone to the number of per cpu caches in this zone. This - * is done so that we don't allocate more memory than we really need. - */ - if (zone->uz_fills >= mp_ncpus) - return (0); - -#endif - zone->uz_fills++; max = zone->uz_count; - - /* - * Try this zone's free list first so we don't allocate extra buckets. - */ - if ((bucket = LIST_FIRST(&zone->uz_free_bucket)) != NULL) { - KASSERT(bucket->ub_cnt == 0, - ("zone_alloc_bucket: Bucket on free list is not empty.")); - LIST_REMOVE(bucket, ub_link); - ZONE_UNLOCK(zone); - } else { - bflags = (flags & ~M_ZERO); - if (zone->uz_flags & UMA_ZFLAG_CACHEONLY) - bflags |= M_NOVM; - ZONE_UNLOCK(zone); - bucket = bucket_alloc(zone->uz_count, bflags); - if (bucket == NULL) - goto out; - } + bflags = M_NOWAIT; + if (zone->uz_flags & UMA_ZFLAG_CACHEONLY) + bflags |= M_NOVM; + bucket = bucket_alloc(zone->uz_count, bflags); + if (bucket == NULL) + goto out; max = MIN(bucket->ub_entries, max); bucket->ub_cnt = zone->uz_import(zone->uz_arg, bucket->ub_bucket, @@ -2471,19 +2455,16 @@ zone_alloc_bucket(uma_zone_t zone, int f } out: - ZONE_LOCK(zone); - zone->uz_fills--; - if (bucket != NULL && bucket->ub_cnt != 0) { - LIST_INSERT_HEAD(&zone->uz_full_bucket, - bucket, ub_link); - return (1); + if (bucket == NULL || bucket->ub_cnt == 0) { + if (bucket != NULL) + bucket_free(bucket); + atomic_add_long(&zone->uz_fails, 1); + return (NULL); } - atomic_add_long(&zone->uz_fails, 1); - if (bucket != NULL) - bucket_free(bucket); - return (0); + return (bucket); } + /* * Allocates a single item from a zone. * @@ -2576,7 +2557,7 @@ uma_zfree_arg(uma_zone_t zone, void *ite else uma_dbg_free(zone, NULL, item); #endif - if (zone->uz_dtor) + if (zone->uz_dtor != NULL) zone->uz_dtor(item, zone->uz_size, udata); /* @@ -2584,7 +2565,7 @@ uma_zfree_arg(uma_zone_t zone, void *ite * a little longer for the limits to be reset. */ if (zone->uz_flags & UMA_ZFLAG_FULL) - goto zfree_internal; + goto zfree_item; /* * If possible, free to the per-CPU cache. There are two @@ -2603,45 +2584,25 @@ zfree_restart: cache = &zone->uz_cpu[cpu]; zfree_start: - bucket = cache->uc_freebucket; - - if (bucket) { - /* - * Do we have room in our bucket? It is OK for this uz count - * check to be slightly out of sync. - */ - - if (bucket->ub_cnt < bucket->ub_entries) { - KASSERT(bucket->ub_bucket[bucket->ub_cnt] == NULL, - ("uma_zfree: Freeing to non free bucket index.")); - bucket->ub_bucket[bucket->ub_cnt] = item; - bucket->ub_cnt++; - cache->uc_frees++; - critical_exit(); - return; - } else if (cache->uc_allocbucket) { -#ifdef UMA_DEBUG_ALLOC - printf("uma_zfree: Swapping buckets.\n"); -#endif - /* - * We have run out of space in our freebucket. - * See if we can switch with our alloc bucket. - */ - if (cache->uc_allocbucket->ub_cnt < - cache->uc_freebucket->ub_cnt) { - bucket = cache->uc_freebucket; - cache->uc_freebucket = cache->uc_allocbucket; - cache->uc_allocbucket = bucket; - goto zfree_start; - } - } + /* + * Try to free into the allocbucket first to give LIFO ordering + * for cache-hot datastructures. Spill over into the freebucket + * if necessary. Alloc will swap them if one runs dry. + */ + bucket = cache->uc_allocbucket; + if (bucket == NULL || bucket->ub_cnt >= bucket->ub_entries) + bucket = cache->uc_freebucket; + if (bucket != NULL && bucket->ub_cnt < bucket->ub_entries) { + KASSERT(bucket->ub_bucket[bucket->ub_cnt] == NULL, + ("uma_zfree: Freeing to non free bucket index.")); + bucket->ub_bucket[bucket->ub_cnt] = item; + bucket->ub_cnt++; + cache->uc_frees++; + critical_exit(); + return; } + /* - * We can get here for two reasons: - * - * 1) The buckets are NULL - * 2) The alloc and free buckets are both somewhat full. - * * We must go back the zone, which requires acquiring the zone lock, * which in turn means we must release and re-acquire the critical * section. Since the critical section is released, we may be @@ -2650,31 +2611,27 @@ zfree_start: * the critical section. */ critical_exit(); + if (zone->uz_count == 0 || bucketdisable) + goto zfree_item; + ZONE_LOCK(zone); critical_enter(); cpu = curcpu; cache = &zone->uz_cpu[cpu]; - if (cache->uc_freebucket != NULL) { - if (cache->uc_freebucket->ub_cnt < - cache->uc_freebucket->ub_entries) { - ZONE_UNLOCK(zone); - goto zfree_start; - } - if (cache->uc_allocbucket != NULL && - (cache->uc_allocbucket->ub_cnt < - cache->uc_freebucket->ub_cnt)) { - ZONE_UNLOCK(zone); - goto zfree_start; - } - } - /* Since we have locked the zone we may as well send back our stats */ + /* + * Since we have locked the zone we may as well send back our stats. + */ atomic_add_long(&zone->uz_allocs, cache->uc_allocs); atomic_add_long(&zone->uz_frees, cache->uc_frees); cache->uc_allocs = 0; cache->uc_frees = 0; bucket = cache->uc_freebucket; + if (bucket != NULL && bucket->ub_cnt < bucket->ub_entries) { + ZONE_UNLOCK(zone); + goto zfree_start; + } cache->uc_freebucket = NULL; /* Can we throw this on the zone full list? */ @@ -2685,15 +2642,9 @@ zfree_start: /* ub_cnt is pointing to the last free item */ KASSERT(bucket->ub_cnt != 0, ("uma_zfree: Attempting to insert an empty bucket onto the full list.\n")); - LIST_INSERT_HEAD(&zone->uz_full_bucket, - bucket, ub_link); - } - if ((bucket = LIST_FIRST(&zone->uz_free_bucket)) != NULL) { - LIST_REMOVE(bucket, ub_link); - ZONE_UNLOCK(zone); - cache->uc_freebucket = bucket; - goto zfree_start; + LIST_INSERT_HEAD(&zone->uz_buckets, bucket, ub_link); } + /* We are no longer associated with this CPU. */ critical_exit(); @@ -2704,22 +2655,30 @@ zfree_start: printf("uma_zfree: Allocating new free bucket.\n"); #endif bflags = M_NOWAIT; - if (zone->uz_flags & UMA_ZFLAG_CACHEONLY) bflags |= M_NOVM; bucket = bucket_alloc(zone->uz_count, bflags); if (bucket) { - ZONE_LOCK(zone); - LIST_INSERT_HEAD(&zone->uz_free_bucket, - bucket, ub_link); - ZONE_UNLOCK(zone); + critical_enter(); + cpu = curcpu; + cache = &zone->uz_cpu[cpu]; + if (cache->uc_freebucket == NULL) { + cache->uc_freebucket = bucket; + goto zfree_start; + } + /* + * We lost the race, start over. We have to drop our + * critical section to free the bucket. + */ + critical_exit(); + bucket_free(bucket); goto zfree_restart; } /* * If nothing else caught this, we'll just do an internal free. */ -zfree_internal: +zfree_item: zone_free_item(zone, item, udata, SKIP_DTOR); return; @@ -3328,7 +3287,7 @@ sysctl_vm_zone_stats(SYSCTL_HANDLER_ARGS (LIST_FIRST(&kz->uk_zones) != z)) uth.uth_zone_flags = UTH_ZONE_SECONDARY; - LIST_FOREACH(bucket, &z->uz_full_bucket, ub_link) + LIST_FOREACH(bucket, &z->uz_buckets, ub_link) uth.uth_zone_free += bucket->ub_cnt; uth.uth_allocs = z->uz_allocs; uth.uth_frees = z->uz_frees; @@ -3394,7 +3353,7 @@ DB_SHOW_COMMAND(uma, db_show_uma) if (!((z->uz_flags & UMA_ZONE_SECONDARY) && (LIST_FIRST(&kz->uk_zones) != z))) cachefree += kz->uk_free; - LIST_FOREACH(bucket, &z->uz_full_bucket, ub_link) + LIST_FOREACH(bucket, &z->uz_buckets, ub_link) cachefree += bucket->ub_cnt; db_printf("%18s %8ju %8jd %8d %12ju %8ju\n", z->uz_name, (uintmax_t)kz->uk_size, Modified: head/sys/vm/uma_int.h ============================================================================== --- head/sys/vm/uma_int.h Tue Jun 18 04:11:16 2013 (r251893) +++ head/sys/vm/uma_int.h Tue Jun 18 04:50:20 2013 (r251894) @@ -197,7 +197,6 @@ struct uma_keg { LIST_HEAD(,uma_slab) uk_free_slab; /* empty slab list */ LIST_HEAD(,uma_slab) uk_full_slab; /* full slabs */ - uint32_t uk_recurse; /* Allocation recursion count */ uint32_t uk_align; /* Alignment mask */ uint32_t uk_pages; /* Total page count */ uint32_t uk_free; /* Count of items free in slabs */ @@ -286,8 +285,7 @@ struct uma_zone { struct mtx *uz_lock; /* Lock for the zone (keg's lock) */ LIST_ENTRY(uma_zone) uz_link; /* List of all zones in keg */ - LIST_HEAD(,uma_bucket) uz_full_bucket; /* full buckets */ - LIST_HEAD(,uma_bucket) uz_free_bucket; /* Buckets for frees */ + LIST_HEAD(,uma_bucket) uz_buckets; /* full buckets */ LIST_HEAD(,uma_klink) uz_kegs; /* List of kegs. */ struct uma_klink uz_klink; /* klink for first keg. */ @@ -308,7 +306,6 @@ struct uma_zone { volatile u_long uz_fails; /* Total number of alloc failures */ volatile u_long uz_frees; /* Total number of frees */ uint64_t uz_sleeps; /* Total number of alloc sleeps */ - uint16_t uz_fills; /* Outstanding bucket fills */ uint16_t uz_count; /* Highest amount of items in bucket */ /* The next three fields are used to print a rate-limited warnings. */ @@ -325,7 +322,6 @@ struct uma_zone { /* * These flags must not overlap with the UMA_ZONE flags specified in uma.h. */ -#define UMA_ZFLAG_BUCKET 0x02000000 /* Bucket zone. */ #define UMA_ZFLAG_MULTI 0x04000000 /* Multiple kegs in the zone. */ #define UMA_ZFLAG_DRAINING 0x08000000 /* Running zone_drain. */ #define UMA_ZFLAG_PRIVALLOC 0x10000000 /* Use uz_allocf. */ @@ -333,8 +329,7 @@ struct uma_zone { #define UMA_ZFLAG_FULL 0x40000000 /* Reached uz_maxpages */ #define UMA_ZFLAG_CACHEONLY 0x80000000 /* Don't ask VM for buckets. */ -#define UMA_ZFLAG_INHERIT (UMA_ZFLAG_INTERNAL | UMA_ZFLAG_CACHEONLY | \ - UMA_ZFLAG_BUCKET) +#define UMA_ZFLAG_INHERIT (UMA_ZFLAG_INTERNAL | UMA_ZFLAG_CACHEONLY) static inline uma_keg_t zone_first_keg(uma_zone_t zone) @@ -367,6 +362,7 @@ void uma_large_free(uma_slab_t slab); #define KEG_LOCK(k) mtx_lock(&(k)->uk_lock) #define KEG_UNLOCK(k) mtx_unlock(&(k)->uk_lock) #define ZONE_LOCK(z) mtx_lock((z)->uz_lock) +#define ZONE_TRYLOCK(z) mtx_trylock((z)->uz_lock) #define ZONE_UNLOCK(z) mtx_unlock((z)->uz_lock) /* From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 04:56:12 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 33C82E89; Tue, 18 Jun 2013 04:56:12 +0000 (UTC) (envelope-from peter@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 2619B1849; Tue, 18 Jun 2013 04:56:12 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I4uC7r093696; Tue, 18 Jun 2013 04:56:12 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I4uCFO093695; Tue, 18 Jun 2013 04:56:12 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306180456.r5I4uCFO093695@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 04:56:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251895 - head/contrib/subversion/subversion/libsvn_wc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 04:56:12 -0000 Author: peter Date: Tue Jun 18 04:56:11 2013 New Revision: 251895 URL: http://svnweb.freebsd.org/changeset/base/251895 Log: Merge the 3-way merge marker tweak. Modified: head/contrib/subversion/subversion/libsvn_wc/merge.c Modified: head/contrib/subversion/subversion/libsvn_wc/merge.c ============================================================================== --- head/contrib/subversion/subversion/libsvn_wc/merge.c Tue Jun 18 04:50:20 2013 (r251894) +++ head/contrib/subversion/subversion/libsvn_wc/merge.c Tue Jun 18 04:56:11 2013 (r251895) @@ -421,7 +421,7 @@ do_text_merge(svn_boolean_t *contains_co target_marker, right_marker, "=======", /* separator */ - svn_diff_conflict_display_modified_latest, + svn_diff_conflict_display_modified_original_latest, pool)); SVN_ERR(svn_stream_close(ostream)); From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 04:57:37 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 5723B70; Tue, 18 Jun 2013 04:57:37 +0000 (UTC) (envelope-from peter@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 38A971853; Tue, 18 Jun 2013 04:57:37 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I4vb06093933; Tue, 18 Jun 2013 04:57:37 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I4vbqG093932; Tue, 18 Jun 2013 04:57:37 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306180457.r5I4vbqG093932@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 04:57:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251896 - head/contrib/subversion/subversion/svn X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 04:57:37 -0000 Author: peter Date: Tue Jun 18 04:57:36 2013 New Revision: 251896 URL: http://svnweb.freebsd.org/changeset/base/251896 Log: Merge the commit template patch. Modified: head/contrib/subversion/subversion/svn/util.c Modified: head/contrib/subversion/subversion/svn/util.c ============================================================================== --- head/contrib/subversion/subversion/svn/util.c Tue Jun 18 04:56:11 2013 (r251895) +++ head/contrib/subversion/subversion/svn/util.c Tue Jun 18 04:57:36 2013 (r251896) @@ -66,6 +66,9 @@ #include "private/svn_client_private.h" #include "private/svn_cmdline_private.h" #include "private/svn_string_private.h" +#ifdef HAS_ORGANIZATION_NAME +#include "freebsd-organization.h" +#endif @@ -322,6 +325,67 @@ truncate_buffer_at_prefix(apr_size_t *ne } +/* + * Since we're adding freebsd-specific tokens to the log message, + * clean out any leftovers to avoid accidently sending them to other + * projects that won't be expecting them. + */ + +static const char *prefixes[] = { + "PR:", + "Submitted by:", + "Reviewed by:", + "Approved by:", + "Obtained from:", + "MFC after:", + "Security:", + "Sponsored by:" +}; + +void +cleanmsg(apr_size_t *l, char *s) +{ + int i; + char *pos; + char *kw; + char *p; + int empty; + + for (i = 0; i < sizeof(prefixes) / sizeof(prefixes[0]); i++) { + pos = s; + while ((kw = strstr(pos, prefixes[i])) != NULL) { + /* Check to see if keyword is at start of line (or buffer) */ + if (!(kw == s || kw[-1] == '\r' || kw[-1] == '\n')) { + pos = kw + 1; + continue; + } + p = kw + strlen(prefixes[i]); + empty = 1; + while (1) { + if (*p == ' ' || *p == '\t') { + p++; + continue; + } + if (*p == '\0' || *p == '\r' || *p == '\n') + break; + empty = 0; + break; + } + if (empty && (*p == '\r' || *p == '\n')) { + memmove(kw, p + 1, strlen(p + 1) + 1); + if (l) + *l -= (p + 1 - kw); + } else if (empty) { + *kw = '\0'; + if (l) + *l -= (p - kw); + } else { + pos = p; + } + } + } +} + #define EDITOR_EOF_PREFIX _("--This line, and those below, will be ignored--") svn_error_t * @@ -337,8 +401,32 @@ svn_cl__get_log_message(const char **log /* Set default message. */ default_msg = svn_stringbuf_create(APR_EOL_STR, pool); + svn_stringbuf_appendcstr(default_msg, APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "PR:\t\t" APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "Submitted by:\t" APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "Reviewed by:\t" APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "Approved by:\t" APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "Obtained from:\t" APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "MFC after:\t" APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "Security:\t" APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "Sponsored by:\t" +#ifdef HAS_ORGANIZATION_NAME + ORGANIZATION_NAME +#endif + APR_EOL_STR); svn_stringbuf_appendcstr(default_msg, EDITOR_EOF_PREFIX); - svn_stringbuf_appendcstr(default_msg, APR_EOL_STR APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "> Description of fields to fill in above: 76 columns --|" APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "> PR: If a GNATS PR is affected by the change." APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "> Submitted by: If someone else sent in the change." APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "> Reviewed by: If someone else reviewed your modification." APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "> Approved by: If you needed approval for this commit." APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "> Obtained from: If the change is from a third party." APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "> MFC after: N [day[s]|week[s]|month[s]]. Request a reminder email." APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "> Security: Vulnerability reference (one per line) or description." APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "> Sponsored by: If the change was sponsored by an organization." APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, "> Empty fields above will be automatically removed." APR_EOL_STR); + svn_stringbuf_appendcstr(default_msg, APR_EOL_STR); *tmp_file = NULL; if (lmb->message) @@ -350,6 +438,7 @@ svn_cl__get_log_message(const char **log that follows it. */ truncate_buffer_at_prefix(&(log_msg_buf->len), log_msg_buf->data, EDITOR_EOF_PREFIX); + cleanmsg(NULL, (char*)log_msg_buf->data); /* Make a string from a stringbuf, sharing the data allocation. */ log_msg_str->data = log_msg_buf->data; @@ -470,6 +559,13 @@ svn_cl__get_log_message(const char **log if (message) truncate_buffer_at_prefix(&message->len, message->data, EDITOR_EOF_PREFIX); + /* + * Since we're adding freebsd-specific tokens to the log message, + * clean out any leftovers to avoid accidently sending them to other + * projects that won't be expecting them. + */ + if (message) + cleanmsg(&message->len, message->data); if (message) { From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 06:55:59 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 87AF2A5D; Tue, 18 Jun 2013 06:55:59 +0000 (UTC) (envelope-from rpaulo@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 7A2D11C25; Tue, 18 Jun 2013 06:55:59 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I6tx1S031402; Tue, 18 Jun 2013 06:55:59 GMT (envelope-from rpaulo@svn.freebsd.org) Received: (from rpaulo@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I6tx0G031400; Tue, 18 Jun 2013 06:55:59 GMT (envelope-from rpaulo@svn.freebsd.org) Message-Id: <201306180655.r5I6tx0G031400@svn.freebsd.org> From: Rui Paulo Date: Tue, 18 Jun 2013 06:55:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251900 - in head/sys: powerpc/powerpc 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-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 06:55:59 -0000 Author: rpaulo Date: Tue Jun 18 06:55:58 2013 New Revision: 251900 URL: http://svnweb.freebsd.org/changeset/base/251900 Log: Fix a KTR_BUSDMA format string. Modified: head/sys/powerpc/powerpc/busdma_machdep.c head/sys/x86/x86/busdma_machdep.c Modified: head/sys/powerpc/powerpc/busdma_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/busdma_machdep.c Tue Jun 18 05:37:06 2013 (r251899) +++ head/sys/powerpc/powerpc/busdma_machdep.c Tue Jun 18 06:55:58 2013 (r251900) @@ -888,7 +888,7 @@ _bus_dmamap_sync(bus_dma_tag_t dmat, bus * the caches on broken hardware */ CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x op 0x%x " - "performing bounce", __func__, op, dmat, dmat->flags); + "performing bounce", __func__, dmat, dmat->flags, op); if (op & BUS_DMASYNC_PREWRITE) { while (bpage != NULL) { Modified: head/sys/x86/x86/busdma_machdep.c ============================================================================== --- head/sys/x86/x86/busdma_machdep.c Tue Jun 18 05:37:06 2013 (r251899) +++ head/sys/x86/x86/busdma_machdep.c Tue Jun 18 06:55:58 2013 (r251900) @@ -898,7 +898,7 @@ _bus_dmamap_sync(bus_dma_tag_t dmat, bus * the caches on broken hardware */ CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x op 0x%x " - "performing bounce", __func__, op, dmat, dmat->flags); + "performing bounce", __func__, dmat, dmat->flags, op); if (op & BUS_DMASYNC_PREWRITE) { while (bpage != NULL) { From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 07:02:35 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id C5720D90; Tue, 18 Jun 2013 07:02:35 +0000 (UTC) (envelope-from des@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B82AC1C6C; Tue, 18 Jun 2013 07:02:35 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I72ZsV034231; Tue, 18 Jun 2013 07:02:35 GMT (envelope-from des@svn.freebsd.org) Received: (from des@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I72ZVc034228; Tue, 18 Jun 2013 07:02:35 GMT (envelope-from des@svn.freebsd.org) Message-Id: <201306180702.r5I72ZVc034228@svn.freebsd.org> From: Dag-Erling Smørgrav Date: Tue, 18 Jun 2013 07:02:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251901 - in head: . sys/vm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 07:02:35 -0000 Author: des Date: Tue Jun 18 07:02:35 2013 New Revision: 251901 URL: http://svnweb.freebsd.org/changeset/base/251901 Log: Fix a bug that allowed a tracing process (e.g. gdb) to write to a memory-mapped file in the traced process's address space even if neither the traced process nor the tracing process had write access to that file. Security: CVE-2013-2171 Security: FreeBSD-SA-13:06.mmap Approved by: so Modified: head/UPDATING head/sys/vm/vm_map.c Modified: head/UPDATING ============================================================================== --- head/UPDATING Tue Jun 18 06:55:58 2013 (r251900) +++ head/UPDATING Tue Jun 18 07:02:35 2013 (r251901) @@ -31,6 +31,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 10 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20130618: + Fix a bug that allowed a tracing process (e.g. gdb) to write + to a memory-mapped file in the traced process's address space + even if neither the traced process nor the tracing process had + write access to that file. + 20130615: CVS has been removed from the base system. An exact copy of the code is available from the devel/cvs port. Modified: head/sys/vm/vm_map.c ============================================================================== --- head/sys/vm/vm_map.c Tue Jun 18 06:55:58 2013 (r251900) +++ head/sys/vm/vm_map.c Tue Jun 18 07:02:35 2013 (r251901) @@ -3807,6 +3807,12 @@ RetryLookup:; vm_map_unlock_read(map); return (KERN_PROTECTION_FAILURE); } + if ((fault_typea & VM_PROT_COPY) != 0 && + (entry->max_protection & VM_PROT_WRITE) == 0 && + (entry->eflags & MAP_ENTRY_COW) == 0) { + vm_map_unlock_read(map); + return (KERN_PROTECTION_FAILURE); + } /* * If this page is not pageable, we have to get it for all possible From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 07:33:46 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id E253821D; Tue, 18 Jun 2013 07:33:46 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id D42E41E4E; Tue, 18 Jun 2013 07:33:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I7XkdN047758; Tue, 18 Jun 2013 07:33:46 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I7XjDP047751; Tue, 18 Jun 2013 07:33:45 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180733.r5I7XjDP047751@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 07:33:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251904 - head/usr.sbin/bsdconfig/console X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 07:33:47 -0000 Author: dteske Date: Tue Jun 18 07:33:45 2013 New Revision: 251904 URL: http://svnweb.freebsd.org/changeset/base/251904 Log: Whitespace improvements. Modified: head/usr.sbin/bsdconfig/console/console head/usr.sbin/bsdconfig/console/font head/usr.sbin/bsdconfig/console/keymap head/usr.sbin/bsdconfig/console/repeat head/usr.sbin/bsdconfig/console/saver head/usr.sbin/bsdconfig/console/screenmap Modified: head/usr.sbin/bsdconfig/console/console ============================================================================== --- head/usr.sbin/bsdconfig/console/console Tue Jun 18 07:05:51 2013 (r251903) +++ head/usr.sbin/bsdconfig/console/console Tue Jun 18 07:33:45 2013 (r251904) @@ -136,7 +136,6 @@ while :; do "7 $msg_ttys") # Choose console terminal type $BSDCFG_LIBE/$APP_DIR/ttys ${USE_XDIALOG:+-X} ;; esac - done exit $SUCCESS Modified: head/usr.sbin/bsdconfig/console/font ============================================================================== --- head/usr.sbin/bsdconfig/console/font Tue Jun 18 07:05:51 2013 (r251903) +++ head/usr.sbin/bsdconfig/console/font Tue Jun 18 07:33:45 2013 (r251904) @@ -78,20 +78,20 @@ dialog_menu_main() $menu_list case "$( f_sysrc_get font8x8 )" in - [Nn][Oo]|'') defaultitem="1 $msg_none";; - cp437-8x8) defaultitem="2 $msg_ibm_437";; - cp850-8x8) defaultitem="3 $msg_ibm_850";; - cp865-8x8) defaultitem="4 $msg_ibm_865";; - cp866-8x8) defaultitem="5 $msg_ibm_866";; - cp866u-8x8) defaultitem="6 $msg_ibm_866u";; - cp1251-8x8) defaultitem="7 $msg_ibm_1251";; - iso-8x8) defaultitem="8 $msg_iso_8859_1";; - iso02-8x8) defaultitem="9 $msg_iso_8859_2";; - iso04-8x8) defaultitem="a $msg_iso_8859_4";; - iso07-8x8) defaultitem="b $msg_iso_8859_7";; - iso08-8x8) defaultitem="c $msg_iso_8859_8";; - iso15-8x8) defaultitem="d $msg_iso_8859_15";; - swiss-8x8) defaultitem="e $msg_swiss";; + [Nn][Oo]|'') defaultitem="1 $msg_none" ;; + cp437-8x8) defaultitem="2 $msg_ibm_437" ;; + cp850-8x8) defaultitem="3 $msg_ibm_850" ;; + cp865-8x8) defaultitem="4 $msg_ibm_865" ;; + cp866-8x8) defaultitem="5 $msg_ibm_866" ;; + cp866u-8x8) defaultitem="6 $msg_ibm_866u" ;; + cp1251-8x8) defaultitem="7 $msg_ibm_1251" ;; + iso-8x8) defaultitem="8 $msg_iso_8859_1" ;; + iso02-8x8) defaultitem="9 $msg_iso_8859_2" ;; + iso04-8x8) defaultitem="a $msg_iso_8859_4" ;; + iso07-8x8) defaultitem="b $msg_iso_8859_7" ;; + iso08-8x8) defaultitem="c $msg_iso_8859_8" ;; + iso15-8x8) defaultitem="d $msg_iso_8859_15" ;; + swiss-8x8) defaultitem="e $msg_swiss" ;; esac local menu_choice @@ -216,7 +216,6 @@ while :; do f_sysrc_set font8x16 "swiss-8x16" || f_die break ;; esac - done exit $SUCCESS Modified: head/usr.sbin/bsdconfig/console/keymap ============================================================================== --- head/usr.sbin/bsdconfig/console/keymap Tue Jun 18 07:05:51 2013 (r251903) +++ head/usr.sbin/bsdconfig/console/keymap Tue Jun 18 07:33:45 2013 (r251904) @@ -119,66 +119,66 @@ dialog_menu_main() $menu_list case "$( f_sysrc_get keymap )" in - be.iso) defaultitem="$msg_belgian";; - br275.cp850) defaultitem="$msg_brazil_cp850";; - br275.iso) defaultitem="$msg_brazil_iso";; - br275.iso.acc) defaultitem="$msg_brazil_iso_accent";; - bg.bds.ctrlcaps) defaultitem="$msg_bulgarian_bds";; - bg.phonetic.ctrlcaps) defaultitem="$msg_bulgarian_phonetic";; - ce.iso2) defaultitem="$msg_central_european_iso";; - hr.iso) defaultitem="$msg_croatian_iso";; - cs.latin2.qwertz) defaultitem="$msg_czech_iso_accent";; - danish.cp865) defaultitem="$msg_danish_cp865";; - danish.iso) defaultitem="$msg_danish_iso";; - estonian.cp850) defaultitem="$msg_estonian_cp850";; - estonian.iso) defaultitem="$msg_estonian_iso";; - estonian.iso15) defaultitem="$msg_estonian_iso_15";; - finnish.cp850) defaultitem="$msg_finnish_cp850";; - finnish.iso) defaultitem="$msg_finnish_iso";; - fr.iso) defaultitem="$msg_french_iso";; - fr.iso.acc) defaultitem="$msg_french_iso_accent";; - fr.macbook.acc) defaultitem="$msg_french_iso_macbook";; - german.cp850) defaultitem="$msg_german_cp850";; - german.iso) defaultitem="$msg_german_iso";; - gr.us101.acc) defaultitem="$msg_greek_101";; - el.iso07) defaultitem="$msg_greek_104";; - gr.elot.acc) defaultitem="$msg_greek_elot";; - hu.iso2.101keys) defaultitem="$msg_hungarian_101";; - hu.iso2.102keys) defaultitem="$msg_hungarian_102";; - icelandic.iso) defaultitem="$msg_icelandic";; - icelandic.iso.acc) defaultitem="$msg_icelandic_accent";; - it.iso) defaultitem="$msg_italian";; - jp.106) defaultitem="$msg_japanese_106";; - latinamerican) defaultitem="$msg_latin_american";; - latinamerican.iso.acc) defaultitem="$msg_latin_american_accent";; - norwegian.iso) defaultitem="$msg_norway_iso";; - pl_PL.ISO8859-2) defaultitem="$msg_polish_iso";; - pt.iso) defaultitem="$msg_portuguese";; - pt.iso.acc) defaultitem="$msg_portuguese_accent";; - ru.koi8-r) defaultitem="$msg_russia_koi8_r";; - sk.iso2) defaultitem="$msg_slovak";; - si.iso) defaultitem="$msg_slovenian";; - spanish.iso) defaultitem="$msg_spanish";; - spanish.iso.acc) defaultitem="$msg_spanish_accent";; - swedish.cp850) defaultitem="$msg_swedish_cp850";; - swedish.iso) defaultitem="$msg_swedish_iso";; - swissfrench.cp850) defaultitem="$msg_swiss_french_cp850";; - swissfrench.iso) defaultitem="$msg_swiss_french_iso";; - swissfrench.iso.acc) defaultitem="$msg_swiss_french_iso_accent";; - swissgerman.cp850) defaultitem="$msg_swiss_german_cp850";; - swissgerman.iso) defaultitem="$msg_swiss_german_iso";; - swissgerman.iso.acc) defaultitem="$msg_swiss_german_iso_accent";; - uk.cp850) defaultitem="$msg_uk_cp850";; - uk.iso) defaultitem="$msg_uk_iso";; - ua.koi8-u) defaultitem="$msg_ukrainian_koi8_u";; - ua.koi8-u.shift.alt) defaultitem="$msg_ukrainian_koi8_u_koi8_r";; - us.pc-ctrl) defaultitem="$msg_usa_capslock_ctrl";; - us.dvorak) defaultitem="$msg_usa_dvorak";; - us.dvorakl) defaultitem="$msg_usa_dvorak_left";; - us.dvorakr) defaultitem="$msg_usa_dvorak_right";; - us.emacs) defaultitem="$msg_usa_emacs";; - us.iso) defaultitem="$msg_usa_iso";; - us.unix) defaultitem="$msg_usa_unix";; + be.iso) defaultitem="$msg_belgian" ;; + br275.cp850) defaultitem="$msg_brazil_cp850" ;; + br275.iso) defaultitem="$msg_brazil_iso" ;; + br275.iso.acc) defaultitem="$msg_brazil_iso_accent" ;; + bg.bds.ctrlcaps) defaultitem="$msg_bulgarian_bds" ;; + bg.phonetic.ctrlcaps) defaultitem="$msg_bulgarian_phonetic" ;; + ce.iso2) defaultitem="$msg_central_european_iso" ;; + hr.iso) defaultitem="$msg_croatian_iso" ;; + cs.latin2.qwertz) defaultitem="$msg_czech_iso_accent" ;; + danish.cp865) defaultitem="$msg_danish_cp865" ;; + danish.iso) defaultitem="$msg_danish_iso" ;; + estonian.cp850) defaultitem="$msg_estonian_cp850" ;; + estonian.iso) defaultitem="$msg_estonian_iso" ;; + estonian.iso15) defaultitem="$msg_estonian_iso_15" ;; + finnish.cp850) defaultitem="$msg_finnish_cp850" ;; + finnish.iso) defaultitem="$msg_finnish_iso" ;; + fr.iso) defaultitem="$msg_french_iso" ;; + fr.iso.acc) defaultitem="$msg_french_iso_accent" ;; + fr.macbook.acc) defaultitem="$msg_french_iso_macbook" ;; + german.cp850) defaultitem="$msg_german_cp850" ;; + german.iso) defaultitem="$msg_german_iso" ;; + gr.us101.acc) defaultitem="$msg_greek_101" ;; + el.iso07) defaultitem="$msg_greek_104" ;; + gr.elot.acc) defaultitem="$msg_greek_elot" ;; + hu.iso2.101keys) defaultitem="$msg_hungarian_101" ;; + hu.iso2.102keys) defaultitem="$msg_hungarian_102" ;; + icelandic.iso) defaultitem="$msg_icelandic" ;; + icelandic.iso.acc) defaultitem="$msg_icelandic_accent" ;; + it.iso) defaultitem="$msg_italian" ;; + jp.106) defaultitem="$msg_japanese_106" ;; + latinamerican) defaultitem="$msg_latin_american" ;; + latinamerican.iso.acc) defaultitem="$msg_latin_american_accent" ;; + norwegian.iso) defaultitem="$msg_norway_iso" ;; + pl_PL.ISO8859-2) defaultitem="$msg_polish_iso" ;; + pt.iso) defaultitem="$msg_portuguese" ;; + pt.iso.acc) defaultitem="$msg_portuguese_accent" ;; + ru.koi8-r) defaultitem="$msg_russia_koi8_r" ;; + sk.iso2) defaultitem="$msg_slovak" ;; + si.iso) defaultitem="$msg_slovenian" ;; + spanish.iso) defaultitem="$msg_spanish" ;; + spanish.iso.acc) defaultitem="$msg_spanish_accent" ;; + swedish.cp850) defaultitem="$msg_swedish_cp850" ;; + swedish.iso) defaultitem="$msg_swedish_iso" ;; + swissfrench.cp850) defaultitem="$msg_swiss_french_cp850" ;; + swissfrench.iso) defaultitem="$msg_swiss_french_iso" ;; + swissfrench.iso.acc) defaultitem="$msg_swiss_french_iso_accent" ;; + swissgerman.cp850) defaultitem="$msg_swiss_german_cp850" ;; + swissgerman.iso) defaultitem="$msg_swiss_german_iso" ;; + swissgerman.iso.acc) defaultitem="$msg_swiss_german_iso_accent" ;; + uk.cp850) defaultitem="$msg_uk_cp850" ;; + uk.iso) defaultitem="$msg_uk_iso" ;; + ua.koi8-u) defaultitem="$msg_ukrainian_koi8_u" ;; + ua.koi8-u.shift.alt) defaultitem="$msg_ukrainian_koi8_u_koi8_r" ;; + us.pc-ctrl) defaultitem="$msg_usa_capslock_ctrl" ;; + us.dvorak) defaultitem="$msg_usa_dvorak" ;; + us.dvorakl) defaultitem="$msg_usa_dvorak_left" ;; + us.dvorakr) defaultitem="$msg_usa_dvorak_right" ;; + us.emacs) defaultitem="$msg_usa_emacs" ;; + us.iso) defaultitem="$msg_usa_iso" ;; + us.unix) defaultitem="$msg_usa_unix" ;; esac # The defaultitem may have to be indented to match the menu_list Modified: head/usr.sbin/bsdconfig/console/repeat ============================================================================== --- head/usr.sbin/bsdconfig/console/repeat Tue Jun 18 07:05:51 2013 (r251903) +++ head/usr.sbin/bsdconfig/console/repeat Tue Jun 18 07:33:45 2013 (r251904) @@ -68,10 +68,10 @@ dialog_menu_main() $menu_list case "$( f_sysrc_get keyrate )" in - slow) defaultitem="$msg_slow";; - normal) defaultitem="$msg_normal";; - fast) defaultitem="$msg_fast";; - [Nn][Oo]|'') defaultitem="$msg_default";; + [Nn][Oo]|'') defaultitem="$msg_default" ;; + slow) defaultitem="$msg_slow" ;; + normal) defaultitem="$msg_normal" ;; + fast) defaultitem="$msg_fast" ;; esac local menu_choice @@ -135,7 +135,6 @@ while :; do f_sysrc_set keyrate "NO" || f_die break ;; esac - done exit $SUCCESS Modified: head/usr.sbin/bsdconfig/console/saver ============================================================================== --- head/usr.sbin/bsdconfig/console/saver Tue Jun 18 07:05:51 2013 (r251903) +++ head/usr.sbin/bsdconfig/console/saver Tue Jun 18 07:33:45 2013 (r251904) @@ -78,19 +78,19 @@ dialog_menu_main() $menu_list case "$( f_sysrc_get saver )" in - [Nn][Oo]|'') defaultitem="1 $msg_none" ;; - blank) defaultitem="2 $msg_blank" ;; - beastie) defaultitem="3 $msg_beastie";; - daemon) defaultitem="4 $msg_daemon" ;; - dragon) defaultitem="5 $msg_dragon" ;; - fade) defaultitem="6 $msg_fade" ;; - fire) defaultitem="7 $msg_fire" ;; - green) defaultitem="8 $msg_green" ;; - logo) defaultitem="9 $msg_logo" ;; - rain) defaultitem="a $msg_rain" ;; - snake) defaultitem="b $msg_snake" ;; - star) defaultitem="c $msg_star" ;; - warp) defaultitem="d $msg_warp" ;; + [Nn][Oo]|'') defaultitem="1 $msg_none" ;; + blank) defaultitem="2 $msg_blank" ;; + beastie) defaultitem="3 $msg_beastie" ;; + daemon) defaultitem="4 $msg_daemon" ;; + dragon) defaultitem="5 $msg_dragon" ;; + fade) defaultitem="6 $msg_fade" ;; + fire) defaultitem="7 $msg_fire" ;; + green) defaultitem="8 $msg_green" ;; + logo) defaultitem="9 $msg_logo" ;; + rain) defaultitem="a $msg_rain" ;; + snake) defaultitem="b $msg_snake" ;; + star) defaultitem="c $msg_star" ;; + warp) defaultitem="d $msg_warp" ;; esac local menu_choice Modified: head/usr.sbin/bsdconfig/console/screenmap ============================================================================== --- head/usr.sbin/bsdconfig/console/screenmap Tue Jun 18 07:05:51 2013 (r251903) +++ head/usr.sbin/bsdconfig/console/screenmap Tue Jun 18 07:33:45 2013 (r251904) @@ -145,7 +145,6 @@ while :; do f_sysrc_set scrnmap "koi8-u2cp866u" || f_die break ;; esac - done exit $SUCCESS From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 07:36:11 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 2E3FD738; Tue, 18 Jun 2013 07:36:11 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 11BC91FC7; Tue, 18 Jun 2013 07:36:11 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I7aBVb048167; Tue, 18 Jun 2013 07:36:11 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I7a94J048160; Tue, 18 Jun 2013 07:36:09 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180736.r5I7a94J048160@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 07:36:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251905 - in head/usr.sbin/bsdconfig/console: . include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 07:36:11 -0000 Author: dteske Date: Tue Jun 18 07:36:09 2013 New Revision: 251905 URL: http://svnweb.freebsd.org/changeset/base/251905 Log: Remove unnecessary loops, perform some code consolidation, and add some additional error checking/reporting. Modified: head/usr.sbin/bsdconfig/console/font head/usr.sbin/bsdconfig/console/include/messages.subr head/usr.sbin/bsdconfig/console/keymap head/usr.sbin/bsdconfig/console/repeat head/usr.sbin/bsdconfig/console/saver head/usr.sbin/bsdconfig/console/screenmap head/usr.sbin/bsdconfig/console/ttys Modified: head/usr.sbin/bsdconfig/console/font ============================================================================== --- head/usr.sbin/bsdconfig/console/font Tue Jun 18 07:33:45 2013 (r251904) +++ head/usr.sbin/bsdconfig/console/font Tue Jun 18 07:36:09 2013 (r251905) @@ -137,86 +137,52 @@ f_mustberoot_init # # Launch application main menu # -while :; do - dialog_menu_main || f_die - f_dialog_menutag_fetch mtag - - case "$mtag" in - "1 $msg_none") # Use hardware default font - f_sysrc_set font8x8 "NO" || f_die - f_sysrc_set font8x14 "NO" || f_die - f_sysrc_set font8x16 "NO" || f_die - break ;; - "2 $msg_ibm_437") # English and others, VGA default - f_sysrc_set font8x8 "cp437-8x8" || f_die - f_sysrc_set font8x14 "cp437-8x14" || f_die - f_sysrc_set font8x16 "cp437-8x16" || f_die - break ;; - "3 $msg_ibm_850") # Western Europe, IBM encoding - f_sysrc_set font8x8 "cp850-8x8" || f_die - f_sysrc_set font8x14 "cp850-8x14" || f_die - f_sysrc_set font8x16 "cp850-8x16" || f_die - break ;; - "4 $msg_ibm_865") # Norwegian, IBM encoding - f_sysrc_set font8x8 "cp865-8x8" || f_die - f_sysrc_set font8x14 "cp865-8x14" || f_die - f_sysrc_set font8x16 "cp865-8x16" || f_die - break ;; - "5 $msg_ibm_866") # Russian, IBM encoding (use with KOI8-R screenmap) - f_sysrc_set font8x8 "cp866-8x8" || f_die - f_sysrc_set font8x14 "cp866-8x14" || f_die - f_sysrc_set font8x16 "cp866b-8x16" || f_die - f_sysrc_set mousechar_start 3 || f_die - break ;; - "6 $msg_ibm_866u") # Ukrainian, IBM encoding (use w/ KOI8-U screenmap) - f_sysrc_set font8x8 "cp866u-8x8" || f_die - f_sysrc_set font8x14 "cp866u-8x14" || f_die - f_sysrc_set font8x16 "cp866u-8x16" || f_die - f_sysrc_set mousechar_start 3 || f_die - break ;; - "7 $msg_ibm_1251") # Cyrillic, MS Windows encoding - f_sysrc_set font8x8 "cp1251-8x8" || f_die - f_sysrc_set font8x14 "cp1251-8x14" || f_die - f_sysrc_set font8x16 "cp1251-8x16" || f_die - f_sysrc_set mousechar_start 3 || f_die - break ;; - "8 $msg_iso_8859_1") # Western Europe, ISO encoding - f_sysrc_set font8x8 "iso-8x8" || f_die - f_sysrc_set font8x14 "iso-8x14" || f_die - f_sysrc_set font8x16 "iso-8x16" || f_die - break ;; - "9 $msg_iso_8859_2") # Eastern Europe, ISO encoding - f_sysrc_set font8x8 "iso02-8x8" || f_die - f_sysrc_set font8x14 "iso02-8x14" || f_die - f_sysrc_set font8x16 "iso02-8x16" || f_die - break ;; - "a $msg_iso_8859_4") # Baltic, ISO encoding - f_sysrc_set font8x8 "iso04-8x8" || f_die - f_sysrc_set font8x14 "iso04-8x14" || f_die - f_sysrc_set font8x16 "iso04-8x16" || f_die - break ;; - "b $msg_iso_8859_7") # Greek, ISO encoding - f_sysrc_set font8x8 "iso07-8x8" || f_die - f_sysrc_set font8x14 "iso07-8x14" || f_die - f_sysrc_set font8x16 "iso07-8x16" || f_die - break ;; - "c $msg_iso_8859_8") # Hebrew, ISO encoding - f_sysrc_set font8x8 "iso08-8x8" || f_die - f_sysrc_set font8x14 "iso08-8x14" || f_die - f_sysrc_set font8x16 "iso08-8x16" || f_die - break ;; - "d $msg_iso_8859_15") # Europe, ISO encoding - f_sysrc_set font8x8 "iso15-8x8" || f_die - f_sysrc_set font8x14 "iso15-8x14" || f_die - f_sysrc_set font8x16 "iso15-8x16" || f_die - break ;; - "e $msg_swiss") # English, better resolution - f_sysrc_set font8x8 "swiss-8x8" || f_die - f_sysrc_set font8x14 "NO" || f_die - f_sysrc_set font8x16 "swiss-8x16" || f_die - break ;; - esac -done +dialog_menu_main || f_die +f_dialog_menutag_fetch mtag + +f8= f14= f16= mc_start= +case "$mtag" in +"1 $msg_none") # Use hardware default font + f8="NO" f14="NO" f16="NO" ;; +"2 $msg_ibm_437") # English and others, VGA default + f8="cp437-8x8" f14="cp437-8x14" f16="cp437-8x16" ;; +"3 $msg_ibm_850") # Western Europe, IBM encoding + f8="cp850-8x8" f14="cp850-8x14" f16="cp850-8x16" ;; +"4 $msg_ibm_865") # Norwegian, IBM encoding + f8="cp865-8x8" f14="cp865-8x14" f16="cp865-8x16" ;; +"5 $msg_ibm_866") # Russian, IBM encoding (use with KOI8-R screenmap) + f8="cp866-8x8" f14="cp866-8x14" f16="cp866b-8x16" mc_start="3" ;; +"6 $msg_ibm_866u") # Ukrainian, IBM encoding (use w/ KOI8-U screenmap) + f8="cp866u-8x8" f14="cp866u-8x14" f16="cp866u-8x16" mc_start="3" ;; +"7 $msg_ibm_1251") # Cyrillic, MS Windows encoding + f8="cp1251-8x8" f14="cp1251-8x14" f16="cp1251-8x16" mc_start="3" ;; +"8 $msg_iso_8859_1") # Western Europe, ISO encoding + f8="iso-8x8" f14="iso-8x14" f16="iso-8x16" ;; +"9 $msg_iso_8859_2") # Eastern Europe, ISO encoding + f8="iso02-8x8" f14="iso02-8x14" f16="iso02-8x16" ;; +"a $msg_iso_8859_4") # Baltic, ISO encoding + f8="iso04-8x8" f14="iso04-8x14" f16="iso04-8x16" ;; +"b $msg_iso_8859_7") # Greek, ISO encoding + f8="iso07-8x8" f14="iso07-8x14" f16="iso07-8x16" ;; +"c $msg_iso_8859_8") # Hebrew, ISO encoding + f8="iso08-8x8" f14="iso08-8x14" f16="iso08-8x16" ;; +"d $msg_iso_8859_15") # Europe, ISO encoding + f8="iso15-8x8" f14="iso15-8x14" f16="iso15-8x16" ;; +"e $msg_swiss") # English, better resolution + f8="swiss-8x8" f14="NO" f16="swiss-8x16" ;; +esac + +[ "$f8" -a "$f14" -a "$f16" ] || f_die "$msg_unknown_font_selection" + +f_sysrc_set font8x8 "$f8" || f_die +f_sysrc_set font8x14 "$f14" || f_die +f_sysrc_set font8x16 "$f16" || f_die + +if [ "$mc_start" ]; then + f_sysrc_set mousechar_start "$mc_start" || f_die +else + f_sysrc_delete mousechar_start || f_die +fi exit $SUCCESS Modified: head/usr.sbin/bsdconfig/console/include/messages.subr ============================================================================== --- head/usr.sbin/bsdconfig/console/include/messages.subr Tue Jun 18 07:33:45 2013 (r251904) +++ head/usr.sbin/bsdconfig/console/include/messages.subr Tue Jun 18 07:36:09 2013 (r251905) @@ -241,6 +241,11 @@ msg_ukrainian_koi8_u="Ukranian KOI8-U" msg_ukrainian_koi8_u_desc="Ukranian KOI8-U keymap" msg_ukrainian_koi8_u_koi8_r="Ukranian KOI8-U+KOI8-R" msg_ukrainian_koi8_u_koi8_r_desc="Ukranian KOI8-U+KOI8-R keymap (alter)" +msg_unknown_font_selection="Unknown font selection" +msg_unknown_keymap="Unknown keymap" +msg_unknown_repeat_rate="Unknown repeat rate" +msg_unknown_saver="Unknown saver" +msg_unknown_screenmap_selection="Unknown screenmap selection" msg_us_ascii="US-ASCII" msg_us_ascii_to_ibm327="US-ASCII to IBM437" msg_us_ascii_to_ibm327_desc="US-ASCII to IBM 437 screenmap" Modified: head/usr.sbin/bsdconfig/console/keymap ============================================================================== --- head/usr.sbin/bsdconfig/console/keymap Tue Jun 18 07:33:45 2013 (r251904) +++ head/usr.sbin/bsdconfig/console/keymap Tue Jun 18 07:36:09 2013 (r251905) @@ -254,188 +254,76 @@ while :; do [ "$keymap_name" ] || continue + keymap_to_set= case "$keymap_name" in - belgian) - f_sysrc_set keymap "be.iso" || f_die - break ;; - brazil_cp850) - f_sysrc_set keymap "br275.cp850" || f_die - break ;; - brazil_iso) - f_sysrc_set keymap "br275.iso" || f_die - break ;; - brazil_iso_accent) - f_sysrc_set keymap "br275.iso.acc" || f_die - break ;; - bulgarian_bds) - f_sysrc_set keymap "bg.bds.ctrlcaps" || f_die - break ;; - bulgarian_phonetic) - f_sysrc_set keymap "bg.phonetic.ctrlcaps" || f_die - break ;; - central_european_iso) - f_sysrc_set keymap "ce.iso2" || f_die - break ;; - croatian_iso) - f_sysrc_set keymap "hr.iso" || f_die - break ;; - czech_iso_accent) - f_sysrc_set keymap "cs.latin2.qwertz" || f_die - break ;; - danish_cp865) - f_sysrc_set keymap "danish.cp865" || f_die - break ;; - danish_iso) - f_sysrc_set keymap "danish.iso" || f_die - break ;; - estonian_cp850) - f_sysrc_set keymap "estonian.cp850" || f_die - break ;; - estonian_iso) - f_sysrc_set keymap "estonian.iso" || f_die - break ;; - estonian_iso_15) - f_sysrc_set keymap "estonian.iso15" || f_die - break ;; - finnish_cp850) - f_sysrc_set keymap "finnish.cp850" || f_die - break ;; - finnish_iso) - f_sysrc_set keymap "finnish.iso" || f_die - break ;; - french_iso) - f_sysrc_set keymap "fr.iso" || f_die - break ;; - french_iso_accent) - f_sysrc_set keymap "fr.iso.acc" || f_die - break ;; - french_iso_macbook) - f_sysrc_set keymap "fr.macbook.acc" || f_die - break ;; - german_cp850) - f_sysrc_set keymap "german.cp850" || f_die - break ;; - german_iso) - f_sysrc_set keymap "german.iso" || f_die - break ;; - greek_101) - f_sysrc_set keymap "gr.us101.acc" || f_die - break ;; - greek_104) - f_sysrc_set keymap "el.iso07" || f_die - break ;; - greek_elot) - f_sysrc_set keymap "gr.elot.acc" || f_die - break ;; - hungarian_101) - f_sysrc_set keymap "hu.iso2.101keys" || f_die - break ;; - hungarian_102) - f_sysrc_set keymap "hu.iso2.102keys" || f_die - break ;; - icelandic) - f_sysrc_set keymap "icelandic.iso" || f_die - break ;; - icelandic_accent) - f_sysrc_set keymap "icelandic.iso.acc" || f_die - break ;; - italian) - f_sysrc_set keymap "it.iso" || f_die - break ;; - japanese_106) - f_sysrc_set keymap "jp.106" || f_die - break ;; - latin_american) - f_sysrc_set keymap "latinamerican" || f_die - break ;; - latin_american_accent) - f_sysrc_set keymap "latinamerican.iso.acc" || f_die - break ;; - norway_iso) - f_sysrc_set keymap "norwegian.iso" || f_die - break ;; - polish_iso) - f_sysrc_set keymap "pl_PL.ISO8859-2" || f_die - break ;; - portuguese) - f_sysrc_set keymap "pt.iso" || f_die - break ;; - portuguese_accent) - f_sysrc_set keymap "pt.iso.acc" || f_die - break ;; - russia_koi8_r) - f_sysrc_set keymap "ru.koi8-r" || f_die - break ;; - slovak) - f_sysrc_set keymap "sk.iso2" || f_die - break ;; - slovenian) - f_sysrc_set keymap "si.iso" || f_die - break ;; - spanish) - f_sysrc_set keymap "spanish.iso" || f_die - break ;; - spanish_accent) - f_sysrc_set keymap "spanish.iso.acc" || f_die - break ;; - swedish_cp850) - f_sysrc_set keymap "swedish.cp850" || f_die - break ;; - swedish_iso) - f_sysrc_set keymap "swedish.iso" || f_die - break ;; - swiss_french_cp850) - f_sysrc_set keymap "swissfrench.cp850" || f_die - break ;; - swiss_french_iso) - f_sysrc_set keymap "swissfrench.iso" || f_die - break ;; - swiss_french_iso_accent) - f_sysrc_set keymap "swissfrench.iso.acc" || f_die - break ;; - swiss_german_cp850) - f_sysrc_set keymap "swissgerman.cp850" || f_die - break ;; - swiss_german_iso) - f_sysrc_set keymap "swissgerman.iso" || f_die - break ;; - swiss_german_iso_accent) - f_sysrc_set keymap "swissgerman.iso.acc" || f_die - break ;; - uk_cp850) - f_sysrc_set keymap "uk.cp850" || f_die - break ;; - uk_iso) - f_sysrc_set keymap "uk.iso" || f_die - break ;; - ukrainian_koi8_u) - f_sysrc_set keymap "ua.koi8-u" || f_die - break ;; - ukrainian_koi8_u_koi8_r) - f_sysrc_set keymap "ua.koi8-u.shift.alt" || f_die - break ;; - usa_capslock_ctrl) - f_sysrc_set keymap "us.pc-ctrl" || f_die - break ;; - usa_dvorak) - f_sysrc_set keymap "us.dvorak" || f_die - break ;; - usa_dvorak_left) - f_sysrc_set keymap "us.dvorakl" || f_die - break ;; - usa_dvorak_right) - f_sysrc_set keymap "us.dvorakr" || f_die - break ;; - usa_emacs) - f_sysrc_set keymap "us.emacs" || f_die - break ;; - usa_iso) - f_sysrc_set keymap "us.iso" || f_die - break ;; - usa_unix) - f_sysrc_set keymap "us.unix" || f_die - break ;; + belgian) keymap_to_set="be.iso" ;; + brazil_cp850) keymap_to_set="br275.cp850" ;; + brazil_iso) keymap_to_set="br275.iso" ;; + brazil_iso_accent) keymap_to_set="br275.iso.acc" ;; + bulgarian_bds) keymap_to_set="bg.bds.ctrlcaps" ;; + bulgarian_phonetic) keymap_to_set="bg.phonetic.ctrlcaps" ;; + central_european_iso) keymap_to_set="ce.iso2" ;; + croatian_iso) keymap_to_set="hr.iso" ;; + czech_iso_accent) keymap_to_set="cs.latin2.qwertz" ;; + danish_cp865) keymap_to_set="danish.cp865" ;; + danish_iso) keymap_to_set="danish.iso" ;; + estonian_cp850) keymap_to_set="estonian.cp850" ;; + estonian_iso) keymap_to_set="estonian.iso" ;; + estonian_iso_15) keymap_to_set="estonian.iso15" ;; + finnish_cp850) keymap_to_set="finnish.cp850" ;; + finnish_iso) keymap_to_set="finnish.iso" ;; + french_iso) keymap_to_set="fr.iso" ;; + french_iso_accent) keymap_to_set="fr.iso.acc" ;; + french_iso_macbook) keymap_to_set="fr.macbook.acc" ;; + german_cp850) keymap_to_set="german.cp850" ;; + german_iso) keymap_to_set="german.iso" ;; + greek_101) keymap_to_set="gr.us101.acc" ;; + greek_104) keymap_to_set="el.iso07" ;; + greek_elot) keymap_to_set="gr.elot.acc" ;; + hungarian_101) keymap_to_set="hu.iso2.101keys" ;; + hungarian_102) keymap_to_set="hu.iso2.102keys" ;; + icelandic) keymap_to_set="icelandic.iso" ;; + icelandic_accent) keymap_to_set="icelandic.iso.acc" ;; + italian) keymap_to_set="it.iso" ;; + japanese_106) keymap_to_set="jp.106" ;; + latin_american) keymap_to_set="latinamerican" ;; + latin_american_accent) keymap_to_set="latinamerican.iso.acc" ;; + norway_iso) keymap_to_set="norwegian.iso" ;; + polish_iso) keymap_to_set="pl_PL.ISO8859-2" ;; + portuguese) keymap_to_set="pt.iso" ;; + portuguese_accent) keymap_to_set="pt.iso.acc" ;; + russia_koi8_r) keymap_to_set="ru.koi8-r" ;; + slovak) keymap_to_set="sk.iso2" ;; + slovenian) keymap_to_set="si.iso" ;; + spanish) keymap_to_set="spanish.iso" ;; + spanish_accent) keymap_to_set="spanish.iso.acc" ;; + swedish_cp850) keymap_to_set="swedish.cp850" ;; + swedish_iso) keymap_to_set="swedish.iso" ;; + swiss_french_cp850) keymap_to_set="swissfrench.cp850" ;; + swiss_french_iso) keymap_to_set="swissfrench.iso" ;; + swiss_french_iso_accent) keymap_to_set="swissfrench.iso.acc" ;; + swiss_german_cp850) keymap_to_set="swissgerman.cp850" ;; + swiss_german_iso) keymap_to_set="swissgerman.iso" ;; + swiss_german_iso_accent) keymap_to_set="swissgerman.iso.acc" ;; + uk_cp850) keymap_to_set="uk.cp850" ;; + uk_iso) keymap_to_set="uk.iso" ;; + ukrainian_koi8_u) keymap_to_set="ua.koi8-u" ;; + ukrainian_koi8_u_koi8_r) keymap_to_set="ua.koi8-u.shift.alt" ;; + usa_capslock_ctrl) keymap_to_set="us.pc-ctrl" ;; + usa_dvorak) keymap_to_set="us.dvorak" ;; + usa_dvorak_left) keymap_to_set="us.dvorakl" ;; + usa_dvorak_right) keymap_to_set="us.dvorakr" ;; + usa_emacs) keymap_to_set="us.emacs" ;; + usa_iso) keymap_to_set="us.iso" ;; + usa_unix) keymap_to_set="us.unix" ;; esac + + if [ "$keymap_to_set" ]; then + f_sysrc_set keymap "$keymap_to_set" || f_die + break + else + f_die "$msg_unknown_keymap" + fi done exit $SUCCESS Modified: head/usr.sbin/bsdconfig/console/repeat ============================================================================== --- head/usr.sbin/bsdconfig/console/repeat Tue Jun 18 07:33:45 2013 (r251904) +++ head/usr.sbin/bsdconfig/console/repeat Tue Jun 18 07:36:09 2013 (r251905) @@ -117,25 +117,23 @@ f_mustberoot_init # # Launch application main menu # -while :; do - dialog_menu_main || f_die - f_dialog_menutag_fetch mtag +dialog_menu_main || f_die +f_dialog_menutag_fetch mtag - case "$mtag" in - "$msg_slow") # Slow keyboard repeat rate - f_sysrc_set keyrate "slow" || f_die - break ;; - "$msg_normal") # "Normal" keyboard repeat rate - f_sysrc_set keyrate "normal" || f_die - break ;; - "$msg_fast") # Fast keyboard repeat rate - f_sysrc_set keyrate "fast" || f_die - break ;; - "$msg_default") # Use default keyboard repeat rate - f_sysrc_set keyrate "NO" || f_die - break ;; - esac -done +repeat_rate_to_set= +case "$mtag" in +"$msg_default") repeat_rate_to_set="NO" ;; # Use default repeat rate +"$msg_slow") repeat_rate_to_set="slow" ;; # Slow keyboard repeat rate +"$msg_normal") repeat_rate_to_set="normal" ;; # "Normal" keyboard repeat rate +"$msg_fast") repeat_rate_to_set="fast" ;; # Fast keyboard repeat rate +esac + +if [ "$repeat_rate_to_set" ]; then + f_sysrc_set keyrate "$repeat_rate_to_set" || f_die + break +else + f_die "$msg_unknown_repeat_rate" +fi exit $SUCCESS Modified: head/usr.sbin/bsdconfig/console/saver ============================================================================== --- head/usr.sbin/bsdconfig/console/saver Tue Jun 18 07:33:45 2013 (r251904) +++ head/usr.sbin/bsdconfig/console/saver Tue Jun 18 07:36:09 2013 (r251905) @@ -136,59 +136,55 @@ f_mustberoot_init # # Launch application main menu # -while :; do - dialog_menu_main || f_die - f_dialog_menutag_fetch mtag +dialog_menu_main || f_die +f_dialog_menutag_fetch mtag - case "$mtag" in - "1 $msg_none") # Disable the screensaver - f_sysrc_set saver "NO" || f_die - break ;; - "2 $msg_blank") # Simply blank the screen - f_sysrc_set saver "blank" || f_die - break ;; - "3 $msg_beastie") # "BSD Daemon" animated screen saver (graphics) - f_sysrc_set saver "beastie" || f_die - break ;; - "4 $msg_daemon") # "BSD Daemon" animated screen saver (text) - f_sysrc_set saver "daemon" || f_die - break ;; - "5 $msg_dragon") # Dragon screensaver (graphics) - f_sysrc_set saver "dragon" || f_die - break ;; - "6 $msg_fade") # Fade out effect screen saver - f_sysrc_set saver "fade" || f_die - break ;; - "7 $msg_fire") # Flames effect screen saver - f_sysrc_set saver "fire" || f_die - break ;; - "8 $msg_green") # "Green" power saving mode (if supported by monitor) - f_sysrc_set saver "green" || f_die - break ;; - "9 $msg_logo") # FreeBSD "logo" animated screen saver (graphics) - f_sysrc_set saver "logo" || f_die - break ;; - "a $msg_rain") # Rain drops screen saver - f_sysrc_set saver "rain" || f_die - break ;; - "b $msg_snake") # Draw a FreeBSD "snake" on your screen - f_sysrc_set saver "snake" || f_die - break ;; - "c $msg_star") # A "twinkling stars" effect - f_sysrc_set saver "star" || f_die - break ;; - "d $msg_warp") # A "stars warping" effect - f_sysrc_set saver "warp" || f_die - break ;; - "$msg_timeout") # Set the screen saver timeout interval - f_dialog_title "$msg_value_required" - f_dialog_input blanktime "$msg_enter_timeout_period" \ - "$( f_sysrc_get blanktime )" && - f_sysrc_set blanktime "$blanktime" - f_dialog_title_restore - ;; - esac -done +case "$mtag" in +"$msg_timeout") # Set the screen saver timeout interval + f_dialog_title "$msg_value_required" + f_dialog_input blanktime "$msg_enter_timeout_period" \ + "$( f_sysrc_get blanktime )" && + f_sysrc_set blanktime "$blanktime" || f_die + f_dialog_title_restore + exit $SUCCESS +esac + +saver_to_set= +case "$mtag" in +"1 $msg_none") # Disable the screensaver + saver_to_set="NO" ;; +"2 $msg_blank") # Simply blank the screen + saver_to_set="blank" ;; +"3 $msg_beastie") # "BSD Daemon" animated screen saver (graphics) + saver_to_set="beastie" ;; +"4 $msg_daemon") # "BSD Daemon" animated screen saver (text) + saver_to_set="daemon" ;; +"5 $msg_dragon") # Dragon screensaver (graphics) + saver_to_set="dragon" ;; +"6 $msg_fade") # Fade out effect screen saver + saver_to_set="fade" ;; +"7 $msg_fire") # Flames effect screen saver + saver_to_set="fire" ;; +"8 $msg_green") # "Green" power saving mode (if supported by monitor) + saver_to_set="green" ;; +"9 $msg_logo") # FreeBSD "logo" animated screen saver (graphics) + saver_to_set="logo" ;; +"a $msg_rain") # Rain drops screen saver + saver_to_set="rain" ;; +"b $msg_snake") # Draw a FreeBSD "snake" on your screen + saver_to_set="snake" ;; +"c $msg_star") # A "twinkling stars" effect + saver_to_set="star" ;; +"d $msg_warp") # A "stars warping" effect + saver_to_set="warp" ;; +esac + +if [ "$saver_to_set" ]; then + f_sysrc_set saver "$saver_to_set" || f_die + break +else + f_die "$msg_unknown_saver" +fi exit $SUCCESS Modified: head/usr.sbin/bsdconfig/console/screenmap ============================================================================== --- head/usr.sbin/bsdconfig/console/screenmap Tue Jun 18 07:33:45 2013 (r251904) +++ head/usr.sbin/bsdconfig/console/screenmap Tue Jun 18 07:36:09 2013 (r251905) @@ -121,31 +121,31 @@ f_mustberoot_init # # Launch application main menu # -while :; do - dialog_menu_main || f_die - f_dialog_menutag_fetch mtag +dialog_menu_main || f_die +f_dialog_menutag_fetch mtag - case "$mtag" in - "1 $msg_none") # No screenmap, don't touch font - f_sysrc_set scrnmap "NO" || f_die - break ;; - "2 $msg_iso_8859_1_to_ibm437") # W-Europe ISO 8859-1 to IBM 437 scrnmap - f_sysrc_set scrnmap "iso-8859-1_to_cp437" || f_die - break ;; - "3 $msg_iso_8859_7_to_ibm437") # Greek ISO 8859-7 to IBM 437 screenmap - f_sysrc_set scrnmap "iso-8859-7_to_cp437" || f_die - break ;; - "4 $msg_us_ascii_to_ibm327") # US-ASCII to IBM 437 screenmap - f_sysrc_set scrnmap "us-ascii_to_cp437" || f_die - break ;; - "5 $msg_koi8_r_to_ibm866") # Russian KOI8-R to IBM 866 screenmap - f_sysrc_set scrnmap "koi8-r2cp866" || f_die - break ;; - "6 $msg_koi8_u_to_ibm866u") # Ukrainian KOI8-U to IBM 866u screenmap - f_sysrc_set scrnmap "koi8-u2cp866u" || f_die - break ;; - esac -done +scrnmap_to_set= +case "$mtag" in +"1 $msg_none") # No screenmap, don't touch font + scrnmap_to_set="NO" ;; +"2 $msg_iso_8859_1_to_ibm437") # W-Europe ISO 8859-1 to IBM 437 scrnmap + scrnmap_to_set="iso-8859-1_to_cp437" ;; +"3 $msg_iso_8859_7_to_ibm437") # Greek ISO 8859-7 to IBM 437 screenmap + scrnmap_to_set="iso-8859-7_to_cp437" ;; +"4 $msg_us_ascii_to_ibm327") # US-ASCII to IBM 437 screenmap + scrnmap_to_set="us-ascii_to_cp437" ;; +"5 $msg_koi8_r_to_ibm866") # Russian KOI8-R to IBM 866 screenmap + scrnmap_to_set="koi8-r2cp866" ;; +"6 $msg_koi8_u_to_ibm866u") # Ukrainian KOI8-U to IBM 866u screenmap + scrnmap_to_set="koi8-u2cp866u" ;; +esac + +if [ "$scrnmap_to_set" ]; then + f_sysrc_set scrnmap "$scrnmap_to_set" || f_die + break +else + f_die "$msg_unknown_screenmap_selection" +fi exit $SUCCESS Modified: head/usr.sbin/bsdconfig/console/ttys ============================================================================== --- head/usr.sbin/bsdconfig/console/ttys Tue Jun 18 07:33:45 2013 (r251904) +++ head/usr.sbin/bsdconfig/console/ttys Tue Jun 18 07:36:09 2013 (r251905) @@ -189,15 +189,13 @@ f_mustberoot_init # # Launch application main menu # -while :; do - dialog_menu_main || f_die - f_dialog_menutag_fetch mtag +dialog_menu_main || f_die +f_dialog_menutag_fetch mtag - [ "$mtag" = "1 $msg_none" ] && break +[ "$mtag" = "1 $msg_none" ] && exit $SUCCESS - f_dialog_menuitem_fetch consterm - ttys_set_type "$consterm" && break -done +f_dialog_menuitem_fetch consterm +ttys_set_type "$consterm" || f_die exit $SUCCESS From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 08:03:13 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 60E951CC; Tue, 18 Jun 2013 08:03:13 +0000 (UTC) (envelope-from tijl@freebsd.org) Received: from mailrelay009.isp.belgacom.be (mailrelay009.isp.belgacom.be [195.238.6.176]) by mx1.freebsd.org (Postfix) with ESMTP id 821741333; Tue, 18 Jun 2013 08:03:12 +0000 (UTC) X-Belgacom-Dynamic: yes X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AkMHABkTwFFR8m08/2dsb2JhbABZgwkxgwNHvAh9F3SCIwEBBSMzIxALFAQJFgsCAgkDAgECASceBg0BBwEBiA4IqGORSY80EQeCTIEUA5ABgSyHPZAagxE6 Received: from 60.109-242-81.adsl-dyn.isp.belgacom.be (HELO kalimero.tijl.coosemans.org) ([81.242.109.60]) by relay.skynet.be with ESMTP; 18 Jun 2013 10:03:04 +0200 Received: from kalimero.tijl.coosemans.org (kalimero.tijl.coosemans.org [127.0.0.1]) by kalimero.tijl.coosemans.org (8.14.7/8.14.7) with ESMTP id r5I833MK001320; Tue, 18 Jun 2013 10:03:04 +0200 (CEST) (envelope-from tijl@FreeBSD.org) Message-ID: <51C01431.8070600@FreeBSD.org> Date: Tue, 18 Jun 2013 10:02:57 +0200 From: Tijl Coosemans User-Agent: Mozilla/5.0 (X11; FreeBSD i386; rv:17.0) Gecko/20130517 Thunderbird/17.0.6 MIME-Version: 1.0 To: Ed Schouten Subject: Re: svn commit: r251804 - head/sys/sys References: <201306161048.r5GAmmkG082610@svn.freebsd.org> In-Reply-To: <201306161048.r5GAmmkG082610@svn.freebsd.org> X-Enigmail-Version: 1.5.1 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="----enig2WPORHAGTDABUCNJAOUXX" Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 08:03:13 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) ------enig2WPORHAGTDABUCNJAOUXX Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 2013-06-16 12:48, Ed Schouten wrote: > Author: ed > Date: Sun Jun 16 10:48:47 2013 > New Revision: 251804 > URL: http://svnweb.freebsd.org/changeset/base/251804 >=20 > Log: > Move _Atomic() into . > =20 > That way _Atomic() is defined next to all the other C11 keywords for > which we provide compatibility for pre-C11 compilers. While there, fi= x > the definition to place "volatile" at the end. Otherwise pointer type= s > will become "volatile T *" instead of "T * volatile". Do you even need volatile? It seems the only place this has an effect is initialisation, but there's not supposed to be any concurrent access then, meaning the value isn't volatile at that point. ------enig2WPORHAGTDABUCNJAOUXX Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iF4EAREIAAYFAlHAFDcACgkQfoCS2CCgtivUaQD/VZgkOWorJJc49cX6KR3r1LWE qTvxX5OG8ZP7dgh54AIA/3+bSY9botZqO5Xim42fIJLonrVlGEMlaTKKimfTOydF =OyJs -----END PGP SIGNATURE----- ------enig2WPORHAGTDABUCNJAOUXX-- From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 08:15:59 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 9F576634; Tue, 18 Jun 2013 08:15:59 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8FE221476; Tue, 18 Jun 2013 08:15:59 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I8FxEE061014; Tue, 18 Jun 2013 08:15:59 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I8FvPP060998; Tue, 18 Jun 2013 08:15:57 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180815.r5I8FvPP060998@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 08:15:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251906 - in head/usr.sbin/bsdconfig: console diskmgmt docsinstall dot mouse networking packages password security startup timezone ttys usermgmt X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 08:15:59 -0000 Author: dteske Date: Tue Jun 18 08:15:56 2013 New Revision: 251906 URL: http://svnweb.freebsd.org/changeset/base/251906 Log: Improve the INDEX format. Whitespace improvements, format improvements, typo and grammatical fixes. Modified: head/usr.sbin/bsdconfig/console/INDEX head/usr.sbin/bsdconfig/diskmgmt/INDEX head/usr.sbin/bsdconfig/docsinstall/INDEX head/usr.sbin/bsdconfig/dot/INDEX head/usr.sbin/bsdconfig/mouse/INDEX head/usr.sbin/bsdconfig/networking/INDEX head/usr.sbin/bsdconfig/packages/INDEX head/usr.sbin/bsdconfig/password/INDEX head/usr.sbin/bsdconfig/security/INDEX head/usr.sbin/bsdconfig/startup/INDEX head/usr.sbin/bsdconfig/timezone/INDEX head/usr.sbin/bsdconfig/ttys/INDEX head/usr.sbin/bsdconfig/usermgmt/INDEX Modified: head/usr.sbin/bsdconfig/console/INDEX ============================================================================== --- head/usr.sbin/bsdconfig/console/INDEX Tue Jun 18 07:36:09 2013 (r251905) +++ head/usr.sbin/bsdconfig/console/INDEX Tue Jun 18 08:15:56 2013 (r251906) @@ -26,22 +26,25 @@ # $FreeBSD$ # -# Title that will be shown on the bsdconfig menu +# Title that will be shown in the bsdconfig menu. +# menu_title="Console" + +# +# A short descriptive line shown at the bottom of the bsdconfig menu. keep it +# short because any line longer than the terminal width will be truncated. # -# a short descriptive line shown at the bottom of the bsdconfig menu. -# keep it short because any line longer than the terminal width will -# be truncated. menu_help="Customize system console behavior" + +# +# Two-part variable that defines an action to take when `keyword' is passed on +# a bsdconfig command line. Variable takes the form "keyword|command" and +# multiple occurrences of the variable (with different `keyword's, or different +# `keyword's AND `command's) are allowed. If `command' begins with a '/' then +# the full path to the program is needed. If `command' begins with anything +# else it is a path relative to the directory this INDEX file is in. `keyword' +# can be i18n'ed but `command' is the name of a script. # -# two-part variable that defines an action to take when 'keyword' -# is passed on a bsdconfig command line. variable takes the form -# "keyword|command" and multiple occurrences of the variable -# (with different 'keyword's, or different 'keyword's AND 'command's) -# are allowed. If 'command' begins with a '/' then the full -# path to the program is needed. If 'command' begins with anything -# else it is a path relative to the directory this INDEX file is in. -# 'keyword' can be i18n'ed but 'command' is the name of a script. menu_selection="console|console" menu_selection="syscons_font|font" menu_selection="syscons_keymap|keymap" @@ -49,11 +52,12 @@ menu_selection="syscons_repeat|repeat" menu_selection="syscons_saver|saver" menu_selection="syscons_screenmap|screenmap" menu_selection="syscons_ttys|ttys" + +# +# ------------ Items below this line do NOT need i18n translation ------------ # -# Items below this line do NOT need i18n translation---------------------- +# Name of the program to be run when this menu choice is selected. If it begins +# with a '/' then the full path to the program is needed. If it begins with +# anything else it is a path relative to the directory this INDEX file is in. # -# Name of the program to be run when this menu choice is selected. -# if it begins with a '/' then the full path to the program is needed. -# if it begins with anything else it is a path relative to the directory -# this INDEX file is in. menu_program="console" Modified: head/usr.sbin/bsdconfig/diskmgmt/INDEX ============================================================================== --- head/usr.sbin/bsdconfig/diskmgmt/INDEX Tue Jun 18 07:36:09 2013 (r251905) +++ head/usr.sbin/bsdconfig/diskmgmt/INDEX Tue Jun 18 08:15:56 2013 (r251906) @@ -26,28 +26,32 @@ # $FreeBSD$ # -# Title that will be shown on the bsdconfig menu +# Title that will be shown in the bsdconfig menu. +# menu_title="Disk Management" + +# +# A short descriptive line shown at the bottom of the bsdconfig menu. keep it +# short because any line longer than the terminal width will be truncated. # -# a short descriptive line shown at the bottom of the bsdconfig menu. -# keep it short because any line longer than the terminal width will -# be truncated. menu_help="Manage disk partitions and/or labels" + +# +# Two-part variable that defines an action to take when `keyword' is passed on +# a bsdconfig command line. Variable takes the form "keyword|command" and +# multiple occurrences of the variable (with different `keyword's, or different +# `keyword's AND `command's) are allowed. If `command' begins with a '/' then +# the full path to the program is needed. If `command' begins with anything +# else it is a path relative to the directory this INDEX file is in. `keyword' +# can be i18n'ed but `command' is the name of a script. # -# two-part variable that defines an action to take when 'keyword' -# is passed on a bsdconfig command line. variable takes the form -# "keyword|command" and multiple occurrences of the variable -# (with different 'keyword's, or different 'keyword's AND 'command's) -# are allowed. If 'command' begins with a '/' then the full -# path to the program is needed. If 'command' begins with anything -# else it is a path relative to the directory this INDEX file is in. -# 'keyword' can be i18n'ed but 'command' is the name of a script. menu_selection="diskmgmt|diskmgmt" + +# +# ------------ Items below this line do NOT need i18n translation ------------ # -# Items below this line do NOT need i18n translation---------------------- +# Name of the program to be run when this menu choice is selected. If it begins +# with a '/' then the full path to the program is needed. If it begins with +# anything else it is a path relative to the directory this INDEX file is in. # -# Name of the program to be run when this menu choice is selected. -# if it begins with a '/' then the full path to the program is needed. -# if it begins with anything else it is a path relative to the directory -# this INDEX file is in. menu_program="diskmgmt" Modified: head/usr.sbin/bsdconfig/docsinstall/INDEX ============================================================================== --- head/usr.sbin/bsdconfig/docsinstall/INDEX Tue Jun 18 07:36:09 2013 (r251905) +++ head/usr.sbin/bsdconfig/docsinstall/INDEX Tue Jun 18 08:15:56 2013 (r251906) @@ -26,28 +26,32 @@ # $FreeBSD$ # -# Title that will be shown on the bsdconfig menu +# Title that will be shown in the bsdconfig menu. +# menu_title="Documentation installation" + +# +# A short descriptive line shown at the bottom of the bsdconfig menu. keep it +# short because any line longer than the terminal width will be truncated. # -# a short descriptive line shown at the bottom of the bsdconfig menu. -# keep it short because any line longer than the terminal width will -# be truncated. menu_help="Install FreeBSD Documentation set" + +# +# Two-part variable that defines an action to take when `keyword' is passed on +# a bsdconfig command line. Variable takes the form "keyword|command" and +# multiple occurrences of the variable (with different `keyword's, or different +# `keyword's AND `command's) are allowed. If `command' begins with a '/' then +# the full path to the program is needed. If `command' begins with anything +# else it is a path relative to the directory this INDEX file is in. `keyword' +# can be i18n'ed but `command' is the name of a script. # -# two-part variable that defines an action to take when 'keyword' -# is passed on a bsdconfig command line. variable takes the form -# "keyword|command" and multiple occurrences of the variable -# (with different 'keyword's, or different 'keyword's AND 'command's) -# are allowed. If 'command' begins with a '/' then the full -# path to the program is needed. If 'command' begins with anything -# else it is a path relative to the directory this INDEX file is in. -# 'keyword' can be i18n'ed but 'command' is the name of a script. menu_selection="docsinstall|docsinstall" + +# +# ------------ Items below this line do NOT need i18n translation ------------ # -# Items below this line do NOT need i18n translation---------------------- +# Name of the program to be run when this menu choice is selected. If it begins +# with a '/' then the full path to the program is needed. If it begins with +# anything else it is a path relative to the directory this INDEX file is in. # -# Name of the program to be run when this menu choice is selected. -# if it begins with a '/' then the full path to the program is needed. -# if it begins with anything else it is a path relative to the directory -# this INDEX file is in. menu_program="docsinstall" Modified: head/usr.sbin/bsdconfig/dot/INDEX ============================================================================== --- head/usr.sbin/bsdconfig/dot/INDEX Tue Jun 18 07:36:09 2013 (r251905) +++ head/usr.sbin/bsdconfig/dot/INDEX Tue Jun 18 08:15:56 2013 (r251906) @@ -26,28 +26,32 @@ # $FreeBSD$ # -# Title that will be shown on the bsdconfig menu +# Title that will be shown in the bsdconfig menu. +# menu_title="" + +# +# A short descriptive line shown at the bottom of the bsdconfig menu. keep it +# short because any line longer than the terminal width will be truncated. # -# a short descriptive line shown at the bottom of the bsdconfig menu. -# keep it short because any line longer than the terminal width will -# be truncated. menu_help="" + +# +# Two-part variable that defines an action to take when `keyword' is passed on +# a bsdconfig command line. Variable takes the form "keyword|command" and +# multiple occurrences of the variable (with different `keyword's, or different +# `keyword's AND `command's) are allowed. If `command' begins with a '/' then +# the full path to the program is needed. If `command' begins with anything +# else it is a path relative to the directory this INDEX file is in. `keyword' +# can be i18n'ed but `command' is the name of a script. # -# two-part variable that defines an action to take when 'keyword' -# is passed on a bsdconfig command line. variable takes the form -# "keyword|command" and multiple occurrences of the variable -# (with different 'keyword's, or different 'keyword's AND 'command's) -# are allowed. If 'command' begins with a '/' then the full -# path to the program is needed. If 'command' begins with anything -# else it is a path relative to the directory this INDEX file is in. -# 'keyword' can be i18n'ed but 'command' is the name of a script. menu_selection="dot|dot" + +# +# ------------ Items below this line do NOT need i18n translation ------------ # -# Items below this line do NOT need i18n translation---------------------- +# Name of the program to be run when this menu choice is selected. If it begins +# with a '/' then the full path to the program is needed. If it begins with +# anything else it is a path relative to the directory this INDEX file is in. # -# Name of the program to be run when this menu choice is selected. -# if it begins with a '/' then the full path to the program is needed. -# if it begins with anything else it is a path relative to the directory -# this INDEX file is in. menu_program="" Modified: head/usr.sbin/bsdconfig/mouse/INDEX ============================================================================== --- head/usr.sbin/bsdconfig/mouse/INDEX Tue Jun 18 07:36:09 2013 (r251905) +++ head/usr.sbin/bsdconfig/mouse/INDEX Tue Jun 18 08:15:56 2013 (r251906) @@ -26,33 +26,37 @@ # $FreeBSD$ # -# Title that will be shown on the bsdconfig menu +# Title that will be shown in the bsdconfig menu. +# menu_title="Mouse" + +# +# A short descriptive line shown at the bottom of the bsdconfig menu. keep it +# short because any line longer than the terminal width will be truncated. # -# a short descriptive line shown at the bottom of the bsdconfig menu. -# keep it short because any line longer than the terminal width will -# be truncated. menu_help="Configure the Mouse" + +# +# Two-part variable that defines an action to take when `keyword' is passed on +# a bsdconfig command line. Variable takes the form "keyword|command" and +# multiple occurrences of the variable (with different `keyword's, or different +# `keyword's AND `command's) are allowed. If `command' begins with a '/' then +# the full path to the program is needed. If `command' begins with anything +# else it is a path relative to the directory this INDEX file is in. `keyword' +# can be i18n'ed but `command' is the name of a script. # -# two-part variable that defines an action to take when 'keyword' -# is passed on a bsdconfig command line. variable takes the form -# "keyword|command" and multiple occurrences of the variable -# (with different 'keyword's, or different 'keyword's AND 'command's) -# are allowed. If 'command' begins with a '/' then the full -# path to the program is needed. If 'command' begins with anything -# else it is a path relative to the directory this INDEX file is in. -# 'keyword' can be i18n'ed but 'command' is the name of a script. menu_selection="mouse|mouse" menu_selection="mouse_enable|enable" menu_selection="mouse_type|type" menu_selection="mouse_port|port" menu_selection="mouse_flags|flags" menu_selection="mouse_disable|disable" + +# +# ------------ Items below this line do NOT need i18n translation ------------ # -# Items below this line do NOT need i18n translation---------------------- +# Name of the program to be run when this menu choice is selected. If it begins +# with a '/' then the full path to the program is needed. If it begins with +# anything else it is a path relative to the directory this INDEX file is in. # -# Name of the program to be run when this menu choice is selected. -# if it begins with a '/' then the full path to the program is needed. -# if it begins with anything else it is a path relative to the directory -# this INDEX file is in. menu_program="mouse" Modified: head/usr.sbin/bsdconfig/networking/INDEX ============================================================================== --- head/usr.sbin/bsdconfig/networking/INDEX Tue Jun 18 07:36:09 2013 (r251905) +++ head/usr.sbin/bsdconfig/networking/INDEX Tue Jun 18 08:15:56 2013 (r251906) @@ -26,32 +26,36 @@ # $FreeBSD$ # -# Title that will be shown on the bsdconfig menu +# Title that will be shown in the bsdconfig menu. +# menu_title="Networking Management" + +# +# A short descriptive line shown at the bottom of the bsdconfig menu. keep it +# short because any line longer than the terminal width will be truncated. # -# a short descriptive line shown at the bottom of the bsdconfig menu. -# keep it short because any line longer than the terminal width will -# be truncated. menu_help="Setup Networking interfaces, services, etc." + +# +# Two-part variable that defines an action to take when `keyword' is passed on +# a bsdconfig command line. Variable takes the form "keyword|command" and +# multiple occurrences of the variable (with different `keyword's, or different +# `keyword's AND `command's) are allowed. If `command' begins with a '/' then +# the full path to the program is needed. If `command' begins with anything +# else it is a path relative to the directory this INDEX file is in. `keyword' +# can be i18n'ed but `command' is the name of a script. # -# two-part variable that defines an action to take when 'keyword' -# is passed on a bsdconfig command line. variable takes the form -# "keyword|command" and multiple occurrences of the variable -# (with different 'keyword's, or different 'keyword's AND 'command's) -# are allowed. If 'command' begins with a '/' then the full -# path to the program is needed. If 'command' begins with anything -# else it is a path relative to the directory this INDEX file is in. -# 'keyword' can be i18n'ed but 'command' is the name of a script. menu_selection="networking|networking" menu_selection="defaultrouter|defaultrouter" menu_selection="hostname|hostname" menu_selection="nameservers|nameservers" menu_selection="netdev|devices" + +# +# ------------ Items below this line do NOT need i18n translation ------------ # -# Items below this line do NOT need i18n translation---------------------- +# Name of the program to be run when this menu choice is selected. If it begins +# with a '/' then the full path to the program is needed. If it begins with +# anything else it is a path relative to the directory this INDEX file is in. # -# Name of the program to be run when this menu choice is selected. -# if it begins with a '/' then the full path to the program is needed. -# if it begins with anything else it is a path relative to the directory -# this INDEX file is in. menu_program="networking" Modified: head/usr.sbin/bsdconfig/packages/INDEX ============================================================================== --- head/usr.sbin/bsdconfig/packages/INDEX Tue Jun 18 07:36:09 2013 (r251905) +++ head/usr.sbin/bsdconfig/packages/INDEX Tue Jun 18 08:15:56 2013 (r251906) @@ -25,28 +25,32 @@ # $FreeBSD$ # -# Title that will be shown on the bsdconfig menu +# Title that will be shown in the bsdconfig menu. +# menu_title="Packages" + +# +# A short descriptive line shown at the bottom of the bsdconfig menu. keep it +# short because any line longer than the terminal width will be truncated. # -# a short descriptive line shown at the bottom of the bsdconfig menu. -# keep it short because any line longer than the terminal width will -# be truncated. menu_help="Install pre-packaged software for FreeBSD" + +# +# Two-part variable that defines an action to take when `keyword' is passed on +# a bsdconfig command line. Variable takes the form "keyword|command" and +# multiple occurrences of the variable (with different `keyword's, or different +# `keyword's AND `command's) are allowed. If `command' begins with a '/' then +# the full path to the program is needed. If `command' begins with anything +# else it is a path relative to the directory this INDEX file is in. `keyword' +# can be i18n'ed but `command' is the name of a script. # -# two-part variable that defines an action to take when 'keyword' -# is passed on a bsdconfig command line. variable takes the form -# "keyword|command" and multiple occurrences of the variable -# (with different 'keyword's, or different 'keyword's AND 'command's) -# are allowed. If 'command' begins with a '/' then the full -# path to the program is needed. If 'command' begins with anything -# else it is a path relative to the directory this INDEX file is in. -# 'keyword' can be i18n'ed but 'command' is the name of a script. menu_selection="packages|packages" + +# +# ------------ Items below this line do NOT need i18n translation ------------ # -# Items below this line do NOT need i18n translation---------------------- +# Name of the program to be run when this menu choice is selected. If it begins +# with a '/' then the full path to the program is needed. If it begins with +# anything else it is a path relative to the directory this INDEX file is in. # -# Name of the program to be run when this menu choice is selected. -# if it begins with a '/' then the full path to the program is needed. -# if it begins with anything else it is a path relative to the directory -# this INDEX file is in. menu_program="packages" Modified: head/usr.sbin/bsdconfig/password/INDEX ============================================================================== --- head/usr.sbin/bsdconfig/password/INDEX Tue Jun 18 07:36:09 2013 (r251905) +++ head/usr.sbin/bsdconfig/password/INDEX Tue Jun 18 08:15:56 2013 (r251906) @@ -26,28 +26,32 @@ # $FreeBSD$ # -# Title that will be shown on the bsdconfig menu +# Title that will be shown in the bsdconfig menu. +# menu_title="Root Password" + +# +# A short descriptive line shown at the bottom of the bsdconfig menu. keep it +# short because any line longer than the terminal width will be truncated. # -# a short descriptive line shown at the bottom of the bsdconfig menu. -# keep it short because any line longer than the terminal width will -# be truncated. menu_help="Set the system manager's password" + +# +# Two-part variable that defines an action to take when `keyword' is passed on +# a bsdconfig command line. Variable takes the form "keyword|command" and +# multiple occurrences of the variable (with different `keyword's, or different +# `keyword's AND `command's) are allowed. If `command' begins with a '/' then +# the full path to the program is needed. If `command' begins with anything +# else it is a path relative to the directory this INDEX file is in. `keyword' +# can be i18n'ed but `command' is the name of a script. # -# two-part variable that defines an action to take when 'keyword' -# is passed on a bsdconfig command line. variable takes the form -# "keyword|command" and multiple occurrences of the variable -# (with different 'keyword's, or different 'keyword's AND 'command's) -# are allowed. If 'command' begins with a '/' then the full -# path to the program is needed. If 'command' begins with anything -# else it is a path relative to the directory this INDEX file is in. -# 'keyword' can be i18n'ed but 'command' is the name of a script. menu_selection="password|password" + +# +# ------------ Items below this line do NOT need i18n translation ------------ # -# Items below this line do NOT need i18n translation---------------------- +# Name of the program to be run when this menu choice is selected. If it begins +# with a '/' then the full path to the program is needed. If it begins with +# anything else it is a path relative to the directory this INDEX file is in. # -# Name of the program to be run when this menu choice is selected. -# if it begins with a '/' then the full path to the program is needed. -# if it begins with anything else it is a path relative to the directory -# this INDEX file is in. menu_program="password" Modified: head/usr.sbin/bsdconfig/security/INDEX ============================================================================== --- head/usr.sbin/bsdconfig/security/INDEX Tue Jun 18 07:36:09 2013 (r251905) +++ head/usr.sbin/bsdconfig/security/INDEX Tue Jun 18 08:15:56 2013 (r251906) @@ -26,29 +26,33 @@ # $FreeBSD$ # -# Title that will be shown on the bsdconfig menu +# Title that will be shown in the bsdconfig menu. +# menu_title="Security" + +# +# A short descriptive line shown at the bottom of the bsdconfig menu. keep it +# short because any line longer than the terminal width will be truncated. # -# a short descriptive line shown at the bottom of the bsdconfig menu. -# keep it short because any line longer than the terminal width will -# be truncated. menu_help="Set Security Parameters" + +# +# Two-part variable that defines an action to take when `keyword' is passed on +# a bsdconfig command line. Variable takes the form "keyword|command" and +# multiple occurrences of the variable (with different `keyword's, or different +# `keyword's AND `command's) are allowed. If `command' begins with a '/' then +# the full path to the program is needed. If `command' begins with anything +# else it is a path relative to the directory this INDEX file is in. `keyword' +# can be i18n'ed but `command' is the name of a script. # -# two-part variable that defines an action to take when 'keyword' -# is passed on a bsdconfig command line. variable takes the form -# "keyword|command" and multiple occurrences of the variable -# (with different 'keyword's, or different 'keyword's AND 'command's) -# are allowed. If 'command' begins with a '/' then the full -# path to the program is needed. If 'command' begins with anything -# else it is a path relative to the directory this INDEX file is in. -# 'keyword' can be i18n'ed but 'command' is the name of a script. menu_selection="security|security" menu_selection="kern_securelevel|kern_securelevel" + +# +# ------------ Items below this line do NOT need i18n translation ------------ # -# Items below this line do NOT need i18n translation---------------------- +# Name of the program to be run when this menu choice is selected. If it begins +# with a '/' then the full path to the program is needed. If it begins with +# anything else it is a path relative to the directory this INDEX file is in. # -# Name of the program to be run when this menu choice is selected. -# if it begins with a '/' then the full path to the program is needed. -# if it begins with anything else it is a path relative to the directory -# this INDEX file is in. menu_program="security" Modified: head/usr.sbin/bsdconfig/startup/INDEX ============================================================================== --- head/usr.sbin/bsdconfig/startup/INDEX Tue Jun 18 07:36:09 2013 (r251905) +++ head/usr.sbin/bsdconfig/startup/INDEX Tue Jun 18 08:15:56 2013 (r251906) @@ -26,33 +26,37 @@ # $FreeBSD$ # -# Title that will be shown on the bsdconfig menu +# Title that will be shown in the bsdconfig menu. +# menu_title="Startup" + +# +# A short descriptive line shown at the bottom of the bsdconfig menu. keep it +# short because any line longer than the terminal width will be truncated. # -# a short descriptive line shown at the bottom of the bsdconfig menu. -# keep it short because any line longer than the terminal width will -# be truncated. menu_help="Set Startup Parameters" + +# +# Two-part variable that defines an action to take when `keyword' is passed on +# a bsdconfig command line. Variable takes the form "keyword|command" and +# multiple occurrences of the variable (with different `keyword's, or different +# `keyword's AND `command's) are allowed. If `command' begins with a '/' then +# the full path to the program is needed. If `command' begins with anything +# else it is a path relative to the directory this INDEX file is in. `keyword' +# can be i18n'ed but `command' is the name of a script. # -# two-part variable that defines an action to take when 'keyword' -# is passed on a bsdconfig command line. variable takes the form -# "keyword|command" and multiple occurrences of the variable -# (with different 'keyword's, or different 'keyword's AND 'command's) -# are allowed. If 'command' begins with a '/' then the full -# path to the program is needed. If 'command' begins with anything -# else it is a path relative to the directory this INDEX file is in. -# 'keyword' can be i18n'ed but 'command' is the name of a script. menu_selection="startup|startup" menu_selection="startup_misc|misc" menu_selection="startup_rcadd|rcadd" menu_selection="startup_rcconf|rcconf" menu_selection="startup_rcdelete|rcdelete" menu_selection="startup_rcvar|rcvar" + +# +# ------------ Items below this line do NOT need i18n translation ------------ # -# Items below this line do NOT need i18n translation---------------------- +# Name of the program to be run when this menu choice is selected. If it begins +# with a '/' then the full path to the program is needed. If it begins with +# anything else it is a path relative to the directory this INDEX file is in. # -# Name of the program to be run when this menu choice is selected. -# if it begins with a '/' then the full path to the program is needed. -# if it begins with anything else it is a path relative to the directory -# this INDEX file is in. menu_program="startup" Modified: head/usr.sbin/bsdconfig/timezone/INDEX ============================================================================== --- head/usr.sbin/bsdconfig/timezone/INDEX Tue Jun 18 07:36:09 2013 (r251905) +++ head/usr.sbin/bsdconfig/timezone/INDEX Tue Jun 18 08:15:56 2013 (r251906) @@ -26,28 +26,32 @@ # $FreeBSD$ # -# Title that will be shown on the bsdconfig menu +# Title that will be shown in the bsdconfig menu. +# menu_title="Timezone" + +# +# A short descriptive line shown at the bottom of the bsdconfig menu. keep it +# short because any line longer than the terminal width will be truncated. # -# a short descriptive line shown at the bottom of the bsdconfig menu. -# keep it short because any line longer than the terminal width will -# be truncated. menu_help="Set up Time Zone" + +# +# Two-part variable that defines an action to take when `keyword' is passed on +# a bsdconfig command line. Variable takes the form "keyword|command" and +# multiple occurrences of the variable (with different `keyword's, or different +# `keyword's AND `command's) are allowed. If `command' begins with a '/' then +# the full path to the program is needed. If `command' begins with anything +# else it is a path relative to the directory this INDEX file is in. `keyword' +# can be i18n'ed but `command' is the name of a script. # -# two-part variable that defines an action to take when 'keyword' -# is passed on a bsdconfig command line. variable takes the form -# "keyword|command" and multiple occurrences of the variable -# (with different 'keyword's, or different 'keyword's AND 'command's) -# are allowed. If 'command' begins with a '/' then the full -# path to the program is needed. If 'command' begins with anything -# else it is a path relative to the directory this INDEX file is in. -# 'keyword' can be i18n'ed but 'command' is the name of a script. menu_selection="timezone|timezone" + +# +# ------------ Items below this line do NOT need i18n translation ------------ # -# Items below this line do NOT need i18n translation---------------------- +# Name of the program to be run when this menu choice is selected. If it begins +# with a '/' then the full path to the program is needed. If it begins with +# anything else it is a path relative to the directory this INDEX file is in. # -# Name of the program to be run when this menu choice is selected. -# if it begins with a '/' then the full path to the program is needed. -# if it begins with anything else it is a path relative to the directory -# this INDEX file is in. menu_program="timezone" Modified: head/usr.sbin/bsdconfig/ttys/INDEX ============================================================================== --- head/usr.sbin/bsdconfig/ttys/INDEX Tue Jun 18 07:36:09 2013 (r251905) +++ head/usr.sbin/bsdconfig/ttys/INDEX Tue Jun 18 08:15:56 2013 (r251906) @@ -26,28 +26,32 @@ # $FreeBSD$ # -# Title that will be shown on the bsdconfig menu +# Title that will be shown in the bsdconfig menu. +# menu_title="Ttys" + +# +# A short descriptive line shown at the bottom of the bsdconfig menu. keep it +# short because any line longer than the terminal width will be truncated. # -# a short descriptive line shown at the bottom of the bsdconfig menu. -# keep it short because any line longer than the terminal width will -# be truncated. menu_help="Configure Ttys" + +# +# Two-part variable that defines an action to take when `keyword' is passed on +# a bsdconfig command line. Variable takes the form "keyword|command" and +# multiple occurrences of the variable (with different `keyword's, or different +# `keyword's AND `command's) are allowed. If `command' begins with a '/' then +# the full path to the program is needed. If `command' begins with anything +# else it is a path relative to the directory this INDEX file is in. `keyword' +# can be i18n'ed but `command' is the name of a script. # -# two-part variable that defines an action to take when 'keyword' -# is passed on a bsdconfig command line. variable takes the form -# "keyword|command" and multiple occurrences of the variable -# (with different 'keyword's, or different 'keyword's AND 'command's) -# are allowed. If 'command' begins with a '/' then the full -# path to the program is needed. If 'command' begins with anything -# else it is a path relative to the directory this INDEX file is in. -# 'keyword' can be i18n'ed but 'command' is the name of a script. menu_selection="ttys|ttys" + +# +# ------------ Items below this line do NOT need i18n translation ------------ # -# Items below this line do NOT need i18n translation---------------------- +# Name of the program to be run when this menu choice is selected. If it begins +# with a '/' then the full path to the program is needed. If it begins with +# anything else it is a path relative to the directory this INDEX file is in. # -# Name of the program to be run when this menu choice is selected. -# if it begins with a '/' then the full path to the program is needed. -# if it begins with anything else it is a path relative to the directory -# this INDEX file is in. menu_program="ttys" Modified: head/usr.sbin/bsdconfig/usermgmt/INDEX ============================================================================== --- head/usr.sbin/bsdconfig/usermgmt/INDEX Tue Jun 18 07:36:09 2013 (r251905) +++ head/usr.sbin/bsdconfig/usermgmt/INDEX Tue Jun 18 08:15:56 2013 (r251906) @@ -26,22 +26,25 @@ # $FreeBSD$ # -# Title that will be shown on the bsdconfig menu +# Title that will be shown in the bsdconfig menu. +# menu_title="Login/Group Management" + +# +# A short descriptive line shown at the bottom of the bsdconfig menu. keep it +# short because any line longer than the terminal width will be truncated. # -# a short descriptive line shown at the bottom of the bsdconfig menu. -# keep it short because any line longer than the terminal width will -# be truncated. menu_help="Manage system user and/or group information" + +# +# Two-part variable that defines an action to take when `keyword' is passed on +# a bsdconfig command line. Variable takes the form "keyword|command" and +# multiple occurrences of the variable (with different `keyword's, or different +# `keyword's AND `command's) are allowed. If `command' begins with a '/' then +# the full path to the program is needed. If `command' begins with anything +# else it is a path relative to the directory this INDEX file is in. `keyword' +# can be i18n'ed but `command' is the name of a script. # -# two-part variable that defines an action to take when 'keyword' -# is passed on a bsdconfig command line. variable takes the form -# "keyword|command" and multiple occurrences of the variable -# (with different 'keyword's, or different 'keyword's AND 'command's) -# are allowed. If 'command' begins with a '/' then the full -# path to the program is needed. If 'command' begins with anything -# else it is a path relative to the directory this INDEX file is in. -# 'keyword' can be i18n'ed but 'command' is the name of a script. menu_selection="usermgmt|usermgmt" menu_selection="useradd|useradd" menu_selection="useredit|useredit" @@ -50,11 +53,12 @@ menu_selection="groupmgmt|usermgmt" menu_selection="groupadd|groupadd" menu_selection="groupedit|groupedit" menu_selection="groupdel|groupdel" + +# +# ------------ Items below this line do NOT need i18n translation ------------ # -# Items below this line do NOT need i18n translation---------------------- +# Name of the program to be run when this menu choice is selected. If it begins +# with a '/' then the full path to the program is needed. If it begins with +# anything else it is a path relative to the directory this INDEX file is in. # -# Name of the program to be run when this menu choice is selected. -# if it begins with a '/' then the full path to the program is needed. -# if it begins with anything else it is a path relative to the directory -# this INDEX file is in. menu_program="usermgmt" From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 08:22:52 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id EFC6D9BB; Tue, 18 Jun 2013 08:22:52 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C8C9D1604; Tue, 18 Jun 2013 08:22:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I8Mqev063651; Tue, 18 Jun 2013 08:22:52 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I8MpFE063646; Tue, 18 Jun 2013 08:22:51 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180822.r5I8MpFE063646@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 08:22:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251907 - head/usr.sbin/bsdconfig/console X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 08:22:53 -0000 Author: dteske Date: Tue Jun 18 08:22:51 2013 New Revision: 251907 URL: http://svnweb.freebsd.org/changeset/base/251907 Log: Oops, in SVN r251905 I forgot that f_die takes the return code as the first argument (not the format). Modified: head/usr.sbin/bsdconfig/console/font head/usr.sbin/bsdconfig/console/keymap head/usr.sbin/bsdconfig/console/repeat head/usr.sbin/bsdconfig/console/saver head/usr.sbin/bsdconfig/console/screenmap Modified: head/usr.sbin/bsdconfig/console/font ============================================================================== --- head/usr.sbin/bsdconfig/console/font Tue Jun 18 08:15:56 2013 (r251906) +++ head/usr.sbin/bsdconfig/console/font Tue Jun 18 08:22:51 2013 (r251907) @@ -172,7 +172,7 @@ case "$mtag" in f8="swiss-8x8" f14="NO" f16="swiss-8x16" ;; esac -[ "$f8" -a "$f14" -a "$f16" ] || f_die "$msg_unknown_font_selection" +[ "$f8" -a "$f14" -a "$f16" ] || f_die 1 "$msg_unknown_font_selection" f_sysrc_set font8x8 "$f8" || f_die f_sysrc_set font8x14 "$f14" || f_die Modified: head/usr.sbin/bsdconfig/console/keymap ============================================================================== --- head/usr.sbin/bsdconfig/console/keymap Tue Jun 18 08:15:56 2013 (r251906) +++ head/usr.sbin/bsdconfig/console/keymap Tue Jun 18 08:22:51 2013 (r251907) @@ -322,7 +322,7 @@ while :; do f_sysrc_set keymap "$keymap_to_set" || f_die break else - f_die "$msg_unknown_keymap" + f_die 1 "$msg_unknown_keymap" fi done Modified: head/usr.sbin/bsdconfig/console/repeat ============================================================================== --- head/usr.sbin/bsdconfig/console/repeat Tue Jun 18 08:15:56 2013 (r251906) +++ head/usr.sbin/bsdconfig/console/repeat Tue Jun 18 08:22:51 2013 (r251907) @@ -132,7 +132,7 @@ if [ "$repeat_rate_to_set" ]; then f_sysrc_set keyrate "$repeat_rate_to_set" || f_die break else - f_die "$msg_unknown_repeat_rate" + f_die 1 "$msg_unknown_repeat_rate" fi exit $SUCCESS Modified: head/usr.sbin/bsdconfig/console/saver ============================================================================== --- head/usr.sbin/bsdconfig/console/saver Tue Jun 18 08:15:56 2013 (r251906) +++ head/usr.sbin/bsdconfig/console/saver Tue Jun 18 08:22:51 2013 (r251907) @@ -183,7 +183,7 @@ if [ "$saver_to_set" ]; then f_sysrc_set saver "$saver_to_set" || f_die break else - f_die "$msg_unknown_saver" + f_die 1 "$msg_unknown_saver" fi exit $SUCCESS Modified: head/usr.sbin/bsdconfig/console/screenmap ============================================================================== --- head/usr.sbin/bsdconfig/console/screenmap Tue Jun 18 08:15:56 2013 (r251906) +++ head/usr.sbin/bsdconfig/console/screenmap Tue Jun 18 08:22:51 2013 (r251907) @@ -144,7 +144,7 @@ if [ "$scrnmap_to_set" ]; then f_sysrc_set scrnmap "$scrnmap_to_set" || f_die break else - f_die "$msg_unknown_screenmap_selection" + f_die 1 "$msg_unknown_screenmap_selection" fi exit $SUCCESS From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 08:25:26 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id B4D61B5C for ; Tue, 18 Jun 2013 08:25:26 +0000 (UTC) (envelope-from andre@freebsd.org) Received: from c00l3r.networx.ch (c00l3r.networx.ch [62.48.2.2]) by mx1.freebsd.org (Postfix) with ESMTP id 123721623 for ; Tue, 18 Jun 2013 08:25:25 +0000 (UTC) Received: (qmail 50730 invoked from network); 18 Jun 2013 09:20:07 -0000 Received: from c00l3r.networx.ch (HELO [127.0.0.1]) ([62.48.2.2]) (envelope-sender ) by c00l3r.networx.ch (qmail-ldap-1.03) with SMTP for ; 18 Jun 2013 09:20:07 -0000 Message-ID: <51C01964.1000006@freebsd.org> Date: Tue, 18 Jun 2013 10:25:08 +0200 From: Andre Oppermann User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130509 Thunderbird/17.0.6 MIME-Version: 1.0 To: Jeff Roberson Subject: Re: svn commit: r251894 - in head: lib/libmemstat sys/vm References: <201306180450.r5I4oKoY091256@svn.freebsd.org> In-Reply-To: <201306180450.r5I4oKoY091256@svn.freebsd.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 08:25:26 -0000 On 18.06.2013 06:50, Jeff Roberson wrote: > Author: jeff > Date: Tue Jun 18 04:50:20 2013 > New Revision: 251894 > URL: http://svnweb.freebsd.org/changeset/base/251894 > > Log: > Refine UMA bucket allocation to reduce space consumption and improve > performance. > > - Always free to the alloc bucket if there is space. This gives LIFO > allocation order to improve hot-cache performance. This also allows > for zones with a single bucket per-cpu rather than a pair if the entire > working set fits in one bucket. > - Enable per-cpu caches of buckets. To prevent recursive bucket > allocation one bucket zone still has per-cpu caches disabled. > - Pick the initial bucket size based on a table driven maximum size > per-bucket rather than the number of items per-page. This gives > more sane initial sizes. > - Only grow the bucket size when we face contention on the zone lock, this > causes bucket sizes to grow more slowly. > - Adjust the number of items per-bucket to account for the header space. > This packs the buckets more efficiently per-page while making them > not quite powers of two. > - Eliminate the per-zone free bucket list. Always return buckets back > to the bucket zone. This ensures that as zones grow into larger > bucket sizes they eventually discard the smaller sizes. It persists > fewer buckets in the system. The locking is slightly trickier. > - Only switch buckets in zalloc, not zfree, this eliminates pathological > cases where we ping-pong between two buckets. > - Ensure that the thread that fills a new bucket gets to allocate from > it to give a better upper bound on allocation time. There used to be a problem with per CPU caches accumulating large amounts of items without freeing back to the global (or socket) pool. Do these updates to UMA change this situation and/or do you have further improvements coming up? -- Andre From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 08:28:03 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id E7A3DD17; Tue, 18 Jun 2013 08:28:03 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id D5BB7164E; Tue, 18 Jun 2013 08:28:03 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I8S386064443; Tue, 18 Jun 2013 08:28:03 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I8S3wP064442; Tue, 18 Jun 2013 08:28:03 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180828.r5I8S3wP064442@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 08:28:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251908 - head/usr.sbin/bsdconfig/diskmgmt X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 08:28:04 -0000 Author: dteske Date: Tue Jun 18 08:28:03 2013 New Revision: 251908 URL: http://svnweb.freebsd.org/changeset/base/251908 Log: Switch bsdconfig `Disk Management' from sade(8) to `bsdinstall partedit'. Modified: head/usr.sbin/bsdconfig/diskmgmt/diskmgmt Modified: head/usr.sbin/bsdconfig/diskmgmt/diskmgmt ============================================================================== --- head/usr.sbin/bsdconfig/diskmgmt/diskmgmt Tue Jun 18 08:22:51 2013 (r251907) +++ head/usr.sbin/bsdconfig/diskmgmt/diskmgmt Tue Jun 18 08:28:03 2013 (r251908) @@ -75,9 +75,9 @@ if [ "$USE_XDIALOG" ]; then f_have "$X11TERM" || f_die 1 \ "$msg_no_such_file_or_directory" "$pgm" "$X11TERM" - exec $X11TERM $X11TERM_OPTS -e /usr/sbin/sade + exec $X11TERM $X11TERM_OPTS -e /usr/sbin/bsdinstall partedit else - exec /usr/sbin/sade + exec /usr/sbin/bsdinstall partedit fi ################################################################################ From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 08:29:01 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 91BFFE97; Tue, 18 Jun 2013 08:29:01 +0000 (UTC) (envelope-from pawel@dawidek.net) Received: from mail.dawidek.net (garage.dawidek.net [91.121.88.72]) by mx1.freebsd.org (Postfix) with ESMTP id 29627165C; Tue, 18 Jun 2013 08:29:00 +0000 (UTC) Received: from localhost (58.wheelsystems.com [83.12.187.58]) by mail.dawidek.net (Postfix) with ESMTPSA id ABAF08B0; Tue, 18 Jun 2013 10:24:25 +0200 (CEST) Date: Tue, 18 Jun 2013 10:29:08 +0200 From: Pawel Jakub Dawidek To: Ed Schouten Subject: Re: svn commit: r251796 - head/sbin/hastd Message-ID: <20130618082907.GA1368@garage.freebsd.pl> References: <201306152218.r5FMI0uT047135@svn.freebsd.org> <20130615232314.GB1403@garage.freebsd.pl> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="2oS5YaxWCcQjTEyO" Content-Disposition: inline In-Reply-To: X-OS: FreeBSD 10.0-CURRENT amd64 User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 08:29:01 -0000 --2oS5YaxWCcQjTEyO Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sun, Jun 16, 2013 at 11:42:21AM +0200, Ed Schouten wrote: > Hello Pawel, >=20 > 2013/6/16 Pawel Jakub Dawidek : > > Hmm, I don't like HAST to be a victim of bad LLVM import. This is not > > the kind of software you run on HEAD (so it might go unnoticed > > initially) and this is the kind of software that when breaks can have > > serious consequences. > > > > What kind of breaks are we talking about? That HAST will stop compiling > > or HAST can start corrupting data? >=20 > My intent is that we shouldn't see a whole lot of C11 atomics in > FreeBSD appear before we have at least one stable branch that supports > it properly (10.0). The problem with this approach is that I've > noticed that if we import things into our base system that we hardly > use, it will get almost no coverage. This causes all sorts of breakage > that could have prevented easily. Good examples: >=20 > http://svnweb.freebsd.org/base/head/sys/sys/stdatomic.h?r1=3D251347&r2=3D= 251566 > http://svnweb.freebsd.org/base/head/sys/sys/stdatomic.h?r1=3D250883&r2=3D= 251192 > http://svnweb.freebsd.org/base/head/sys/sys/stdatomic.h?r1=3D228862&r2=3D= 228880 >=20 > By at least letting a couple of pieces of code use C11, this is less > likely to regress again. The examples that I gave of course refer to > breakage of , not regressions in LLVM itself. I merely > named regressions in LLVM as a worst-case example. My assumption would > be that any breakage in LLVM related to C11 atomics is as likely as > any other kind of regression. >=20 > If you want, I can revert this change. Still, I would actually prefer > it if we not only let HAST use C11 atomics, but also a small number of > other pieces of code. That way any kind of breakage would become > pretty visible. >=20 > Thoughts? Your commit message suggested that HAST is the only consumer of C11 atomics or at least part of very small group. I have two concerns: 1. HAST doesn't have many users and HAST users most likely don't run HEAD, so HAST is really bad place to expose problems. Compare it to using C11 atomics within libc or libutil. 2. Breaking HAST can corrupt people's data, which is always bad, but in HAST case it is even worse, because if you run HAST you care about your data and your service very much (why would you need cluster setup if not?) That's why I asked of types of breakages do you expect. If the breakage that can happen is compilation error then this is fine, but if the breakage can be a race condition in HAST which can lead to data corruption and/or unreliable service then this is not fine. If the latter is possible then yes, I'd like this to be backed out until we grow more C11 atomics consumers in the base code that have a chance to expose bugs in HEAD, like some core libraries. I hope you understand my concerns. --=20 Pawel Jakub Dawidek http://www.wheelsystems.com FreeBSD committer http://www.FreeBSD.org Am I Evil? Yes, I Am! http://mobter.com --2oS5YaxWCcQjTEyO Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iEYEARECAAYFAlHAGlMACgkQForvXbEpPzQWjQCfYLqbOiamkkxXEw1wV8FZQ07i oC4An3emdxgDU68TlBCVRBsa0wW8cZhb =8vs9 -----END PGP SIGNATURE----- --2oS5YaxWCcQjTEyO-- From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 08:30:31 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 8912E1B0; Tue, 18 Jun 2013 08:30:31 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 7C375167E; Tue, 18 Jun 2013 08:30:31 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I8UVoo066477; Tue, 18 Jun 2013 08:30:31 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I8UVc2066476; Tue, 18 Jun 2013 08:30:31 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180830.r5I8UVc2066476@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 08:30:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251909 - head/usr.sbin/bsdconfig/dot X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 08:30:31 -0000 Author: dteske Date: Tue Jun 18 08:30:31 2013 New Revision: 251909 URL: http://svnweb.freebsd.org/changeset/base/251909 Log: Fix a typo in a comment. Modified: head/usr.sbin/bsdconfig/dot/dot Modified: head/usr.sbin/bsdconfig/dot/dot ============================================================================== --- head/usr.sbin/bsdconfig/dot/dot Tue Jun 18 08:28:03 2013 (r251908) +++ head/usr.sbin/bsdconfig/dot/dot Tue Jun 18 08:30:31 2013 (r251909) @@ -47,7 +47,7 @@ ipgm=$( f_index_menusel_keyword $BSDCFG_ ############################################################ CONFIGURATION # -# Locataion of bsdconfig(8) +# Location of bsdconfig(8) # BSDCONFIG=/usr/sbin/bsdconfig From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 08:35:44 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id C1CBB3E3; Tue, 18 Jun 2013 08:35:44 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B4ACA16E3; Tue, 18 Jun 2013 08:35:44 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I8ZinV067262; Tue, 18 Jun 2013 08:35:44 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I8ZiA6067261; Tue, 18 Jun 2013 08:35:44 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180835.r5I8ZiA6067261@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 08:35:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251910 - head/usr.sbin/bsdconfig/dot X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 08:35:44 -0000 Author: dteske Date: Tue Jun 18 08:35:44 2013 New Revision: 251910 URL: http://svnweb.freebsd.org/changeset/base/251910 Log: Comments. Modified: head/usr.sbin/bsdconfig/dot/dot Modified: head/usr.sbin/bsdconfig/dot/dot ============================================================================== --- head/usr.sbin/bsdconfig/dot/dot Tue Jun 18 08:30:31 2013 (r251909) +++ head/usr.sbin/bsdconfig/dot/dot Tue Jun 18 08:35:44 2013 (r251910) @@ -329,8 +329,8 @@ printf '\tcenter = 1;\t\t// center drawi # # Perform edge-concentration when displaying a lot of information # -# NOTE: This is disabled because dot version 2.28.0 (current) and older have a -# bug that causes a crash when rankdir = LR and concentrate = true +# NOTE: This is disabled because dot(1) version 2.28.0 (current) and older have +# a bug that causes a crash when rankdir = LR and concentrate = true # # NOTE: Do not re-enable until said bug is fixed in some future revision. # From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 08:37:36 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 3C0C5667; Tue, 18 Jun 2013 08:37:36 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from cell.glebius.int.ru (glebius.int.ru [81.19.69.10]) by mx1.freebsd.org (Postfix) with ESMTP id BEE091708; Tue, 18 Jun 2013 08:37:35 +0000 (UTC) Received: from cell.glebius.int.ru (localhost [127.0.0.1]) by cell.glebius.int.ru (8.14.7/8.14.7) with ESMTP id r5I8bXUf024896; Tue, 18 Jun 2013 12:37:33 +0400 (MSK) (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by cell.glebius.int.ru (8.14.7/8.14.7/Submit) id r5I8bX18024895; Tue, 18 Jun 2013 12:37:33 +0400 (MSK) (envelope-from glebius@FreeBSD.org) X-Authentication-Warning: cell.glebius.int.ru: glebius set sender to glebius@FreeBSD.org using -f Date: Tue, 18 Jun 2013 12:37:33 +0400 From: Gleb Smirnoff To: Andre Oppermann Subject: Re: svn commit: r251894 - in head: lib/libmemstat sys/vm Message-ID: <20130618083733.GQ1400@FreeBSD.org> References: <201306180450.r5I4oKoY091256@svn.freebsd.org> <51C01964.1000006@freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline In-Reply-To: <51C01964.1000006@freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, Jeff Roberson , src-committers@freebsd.org, svn-src-all@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 08:37:36 -0000 On Tue, Jun 18, 2013 at 10:25:08AM +0200, Andre Oppermann wrote: A> There used to be a problem with per CPU caches accumulating large amounts A> of items without freeing back to the global (or socket) pool. A> A> Do these updates to UMA change this situation and/or do you have further A> improvements coming up? This is especially a problem with ZFS, which utilizes UMA extensively. IMHO, we need a flag for uma_zcreate() that would disable per CPU caches, so that certain zones (ZFS at least) would have them off. It might be a good idea to force this flag on every zone that has allocation >= then the page size. -- Totus tuus, Glebius. From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 08:40:16 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id D91A8920; Tue, 18 Jun 2013 08:40:16 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id CC08A172F; Tue, 18 Jun 2013 08:40:16 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I8eGPa068024; Tue, 18 Jun 2013 08:40:16 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I8eGHC068023; Tue, 18 Jun 2013 08:40:16 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180840.r5I8eGHC068023@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 08:40:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251911 - head/usr.sbin/bsdconfig/examples X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 08:40:16 -0000 Author: dteske Date: Tue Jun 18 08:40:16 2013 New Revision: 251911 URL: http://svnweb.freebsd.org/changeset/base/251911 Log: Comments. Modified: head/usr.sbin/bsdconfig/examples/bsdconfigrc Modified: head/usr.sbin/bsdconfig/examples/bsdconfigrc ============================================================================== --- head/usr.sbin/bsdconfig/examples/bsdconfigrc Tue Jun 18 08:35:44 2013 (r251910) +++ head/usr.sbin/bsdconfig/examples/bsdconfigrc Tue Jun 18 08:40:16 2013 (r251911) @@ -27,10 +27,16 @@ # This file allows you to customize the behavior of bsdconfig. # Copy it to your $HOME/.bsdconfigrc and edit to suit. -# defaults are shown. -# debugging aid for development +# Debugging aids for development +# +#debug=1 +#debugFile=$HOME/out +#debugFile=+$HOME/out # includes debug to stdout + +# Optionally override functions to be more verbose (like including the date) +# # f_dprintf() { -# local format="$1"; shift -# printf "$(date):$pgm:$format\n" "$@" >> $HOME/out +# local format="$1"; shift +# printf "$(date):$pgm:$format\n" "$@" >> $HOME/out # } From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 08:42:47 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 0DC44B74; Tue, 18 Jun 2013 08:42:47 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from cell.glebius.int.ru (glebius.int.ru [81.19.69.10]) by mx1.freebsd.org (Postfix) with ESMTP id 8F65B1769; Tue, 18 Jun 2013 08:42:46 +0000 (UTC) Received: from cell.glebius.int.ru (localhost [127.0.0.1]) by cell.glebius.int.ru (8.14.7/8.14.7) with ESMTP id r5I8gjJD024961; Tue, 18 Jun 2013 12:42:45 +0400 (MSK) (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by cell.glebius.int.ru (8.14.7/8.14.7/Submit) id r5I8gjZh024960; Tue, 18 Jun 2013 12:42:45 +0400 (MSK) (envelope-from glebius@FreeBSD.org) X-Authentication-Warning: cell.glebius.int.ru: glebius set sender to glebius@FreeBSD.org using -f Date: Tue, 18 Jun 2013 12:42:45 +0400 From: Gleb Smirnoff To: Jeff Roberson Subject: Re: svn commit: r251826 - head/sys/vm Message-ID: <20130618084245.GR1400@FreeBSD.org> References: <201306170343.r5H3hmtq006361@svn.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline In-Reply-To: <201306170343.r5H3hmtq006361@svn.freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 08:42:47 -0000 On Mon, Jun 17, 2013 at 03:43:48AM +0000, Jeff Roberson wrote: J> - Move some stats to be atomics since they would require excessive zone J> locking/unlocking with the new import/release paradigm. Make J> zone_free_item simpler now that callers can manage more stats. How often does this shift of stats from cache to zone happen? Recently we've made a facility for stats that doesn't use atomics: counter(9). However, it utilizes UMA zone to achieve that. So if I suggest to use it in UMA, then at bootstrap we would have a chicken & egg problem. I can try to solve it and move UMA stats to counter(9), if you like the idea. -- Totus tuus, Glebius. From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 08:54:03 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 2CF8EEC8; Tue, 18 Jun 2013 08:54:03 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 1E76117F5; Tue, 18 Jun 2013 08:54:03 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I8s35C073172; Tue, 18 Jun 2013 08:54:03 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I8s2ZX073171; Tue, 18 Jun 2013 08:54:02 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180854.r5I8s2ZX073171@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 08:54:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251912 - head/usr.sbin/bsdconfig/share X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 08:54:03 -0000 Author: dteske Date: Tue Jun 18 08:54:02 2013 New Revision: 251912 URL: http://svnweb.freebsd.org/changeset/base/251912 Log: Change the f_dialog_msgbox() arguments in `dialog.subr' to accomodate an $hline argument for setting the --hline parameter value. This change does not effect any current modules as it turns out that not one single usage of f_dialog_msgbox() relied on accepting more than a first argument (read: all occurrences quoted the first parameter; so $* was never depended upon). This will allow some custom invocations of --msgbox to roll over to this function (for example, in `mouse/disable'). Modified: head/usr.sbin/bsdconfig/share/dialog.subr Modified: head/usr.sbin/bsdconfig/share/dialog.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/dialog.subr Tue Jun 18 08:40:16 2013 (r251911) +++ head/usr.sbin/bsdconfig/share/dialog.subr Tue Jun 18 08:54:02 2013 (r251912) @@ -1501,7 +1501,7 @@ f_xdialog_info() ############################################################ MSGBOX FUNCTIONS -# f_dialog_msgbox $msg_text ... +# f_dialog_msgbox $msg_text [$hline] # # Throw up a dialog(1) msgbox. The msgbox remains until the user presses ENTER # or ESC, acknowledging the modal dialog. @@ -1511,12 +1511,13 @@ f_xdialog_info() # f_dialog_msgbox() { - local msg_text="$*" height width + local msg_text="$1" hline="$2" height width f_dialog_buttonbox_size height width \ - "$DIALOG_TITLE" "$DIALOG_BACKTITLE" "$msg_text" + "$DIALOG_TITLE" "$DIALOG_BACKTITLE" "$msg_text" "$hline" $DIALOG \ --title "$DIALOG_TITLE" \ --backtitle "$DIALOG_BACKTITLE" \ + --hline "$hline" \ --ok-label "$msg_ok" \ --msgbox "$msg_text" $height $width } From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 08:59:47 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id D0074281; Tue, 18 Jun 2013 08:59:47 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C2D91184D; Tue, 18 Jun 2013 08:59:47 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I8xlVU074152; Tue, 18 Jun 2013 08:59:47 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I8xlW1074151; Tue, 18 Jun 2013 08:59:47 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180859.r5I8xlW1074151@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 08:59:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251913 - head/usr.sbin/bsdconfig/mouse X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 08:59:47 -0000 Author: dteske Date: Tue Jun 18 08:59:47 2013 New Revision: 251913 URL: http://svnweb.freebsd.org/changeset/base/251913 Log: Use newly enhanced f_dialog_msgbox() from SVN r251912. Modified: head/usr.sbin/bsdconfig/mouse/disable Modified: head/usr.sbin/bsdconfig/mouse/disable ============================================================================== --- head/usr.sbin/bsdconfig/mouse/disable Tue Jun 18 08:54:02 2013 (r251912) +++ head/usr.sbin/bsdconfig/mouse/disable Tue Jun 18 08:59:47 2013 (r251913) @@ -84,16 +84,7 @@ f_sysrc_delete moused_flags || f_die # Message box # f_dialog_title "$msg_message" -hline="$hline_press_enter_or_space" -prompt="$msg_mouse_daemon_is_disabled" -f_dialog_buttonbox_size height width \ - "$DIALOG_TITLE" "$DIALOG_BACKTITLE" "$prompt" -$DIALOG \ - --title "$DIALOG_TITLE" \ - --backtitle "$DIALOG_BACKTITLE" \ - --hline "$hline" \ - --ok-label "$msg_ok" \ - --msgbox "$prompt" $height $width +f_dialog_msgbox "$msg_mouse_daemon_is_disabled" "$hline_press_enter_or_space" exit $SUCCESS From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 09:05:09 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7C8717E7; Tue, 18 Jun 2013 09:05:09 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 6F73818C3; Tue, 18 Jun 2013 09:05:09 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I959iL077018; Tue, 18 Jun 2013 09:05:09 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I958tI077010; Tue, 18 Jun 2013 09:05:08 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180905.r5I958tI077010@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 09:05:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251914 - head/usr.sbin/bsdconfig/mouse X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:05:09 -0000 Author: dteske Date: Tue Jun 18 09:05:08 2013 New Revision: 251914 URL: http://svnweb.freebsd.org/changeset/base/251914 Log: Whitespace. Modified: head/usr.sbin/bsdconfig/mouse/mouse head/usr.sbin/bsdconfig/mouse/port head/usr.sbin/bsdconfig/mouse/type Modified: head/usr.sbin/bsdconfig/mouse/mouse ============================================================================== --- head/usr.sbin/bsdconfig/mouse/mouse Tue Jun 18 08:59:47 2013 (r251913) +++ head/usr.sbin/bsdconfig/mouse/mouse Tue Jun 18 09:05:08 2013 (r251914) @@ -133,7 +133,6 @@ while :; do "6 $msg_disable") # Disable the mouse daemon $BSDCFG_LIBE/$APP_DIR/disable ${USE_XDIALOG:+-X} ;; esac - done exit $SUCCESS Modified: head/usr.sbin/bsdconfig/mouse/port ============================================================================== --- head/usr.sbin/bsdconfig/mouse/port Tue Jun 18 08:59:47 2013 (r251913) +++ head/usr.sbin/bsdconfig/mouse/port Tue Jun 18 09:05:08 2013 (r251914) @@ -145,7 +145,6 @@ while :; do f_sysrc_set moused_port "/dev/mse0" || f_die break ;; esac - done exit $SUCCESS Modified: head/usr.sbin/bsdconfig/mouse/type ============================================================================== --- head/usr.sbin/bsdconfig/mouse/type Tue Jun 18 08:59:47 2013 (r251913) +++ head/usr.sbin/bsdconfig/mouse/type Tue Jun 18 09:05:08 2013 (r251914) @@ -165,7 +165,6 @@ while :; do f_sysrc_set moused_type "thinkingmouse" || f_die break ;; esac - done exit $SUCCESS From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 09:20:00 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 6BFE419E; Tue, 18 Jun 2013 09:20:00 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4EBC019C2; Tue, 18 Jun 2013 09:20:00 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I9K0rq081180; Tue, 18 Jun 2013 09:20:00 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9JxgP081149; Tue, 18 Jun 2013 09:19:59 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180919.r5I9JxgP081149@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 09:19:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251915 - in head/usr.sbin/bsdconfig/mouse: . include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:20:00 -0000 Author: dteske Date: Tue Jun 18 09:19:59 2013 New Revision: 251915 URL: http://svnweb.freebsd.org/changeset/base/251915 Log: Remove unnecessary loops, perform some code consolidation, and add some additional error checking/reporting. (same thing going on here as SVN r251905 -- just this time for the mouse module instead of console) Modified: head/usr.sbin/bsdconfig/mouse/include/messages.subr head/usr.sbin/bsdconfig/mouse/port head/usr.sbin/bsdconfig/mouse/type Modified: head/usr.sbin/bsdconfig/mouse/include/messages.subr ============================================================================== --- head/usr.sbin/bsdconfig/mouse/include/messages.subr Tue Jun 18 09:05:08 2013 (r251914) +++ head/usr.sbin/bsdconfig/mouse/include/messages.subr Tue Jun 18 09:19:59 2013 (r251915) @@ -86,5 +86,7 @@ msg_thinkingmouse="ThinkingMouse" msg_thinkingmouse_desc="Kensington ThinkingMouse (serial)" msg_trying_to_start_the_mouse_daemon="Trying to start the mouse daemon..." msg_type="Type" +msg_unknown_mouse_port_selection="Unknown mouse port selection" +msg_unknown_mouse_protocol_selection="Unknown mouse protocol selection" msg_user_confirmation_requested="User Confirmation Requested" msg_value_required="Value Required" Modified: head/usr.sbin/bsdconfig/mouse/port ============================================================================== --- head/usr.sbin/bsdconfig/mouse/port Tue Jun 18 09:05:08 2013 (r251914) +++ head/usr.sbin/bsdconfig/mouse/port Tue Jun 18 09:19:59 2013 (r251915) @@ -121,31 +121,30 @@ f_mustberoot_init # # Launch application main menu # -while :; do - dialog_menu_main || f_die - f_dialog_menutag_fetch mtag +dialog_menu_main || f_die +f_dialog_menutag_fetch mtag - case "$mtag" in - "1 $msg_ps2") # PS/2 style mouse (/dev/psm0) - f_sysrc_set moused_port "/dev/psm0" || f_die - break ;; - "2 $msg_com1") # Serial mouse on COM1 (/dev/cuau0) - f_sysrc_set moused_port "/dev/cuau0" || f_die - break ;; - "3 $msg_com2") # Serial mouse on COM2 (/dev/cuau1) - f_sysrc_set moused_port "/dev/cuau1" || f_die - break ;; - "4 $msg_com3") # Serial mouse on COM3 (/dev/cuau2) - f_sysrc_set moused_port "/dev/cuau2" || f_die - break ;; - "5 $msg_com4") # Serial mouse on COM4 (/dev/cuau3) - f_sysrc_set moused_port "/dev/cuau3" || f_die - break ;; - "6 $msg_busmouse") # Logitech, ATI or MS bus mouse (/dev/mse0) - f_sysrc_set moused_port "/dev/mse0" || f_die - break ;; - esac -done +moused_port_to_set= +case "$mtag" in +"1 $msg_ps2") # PS/2 style mouse (/dev/psm0) + moused_port_to_set="/dev/psm0" ;; +"2 $msg_com1") # Serial mouse on COM1 (/dev/cuau0) + moused_port_to_set="/dev/cuau0" ;; +"3 $msg_com2") # Serial mouse on COM2 (/dev/cuau1) + moused_port_to_set="/dev/cuau1" ;; +"4 $msg_com3") # Serial mouse on COM3 (/dev/cuau2) + moused_port_to_set="/dev/cuau2" ;; +"5 $msg_com4") # Serial mouse on COM4 (/dev/cuau3) + moused_port_to_set="/dev/cuau3" ;; +"6 $msg_busmouse") # Logitech, ATI or MS bus mouse (/dev/mse0) + moused_port_to_set="/dev/mse0" ;; +esac + +if [ "$moused_port_to_set" ]; then + f_sysrc_set moused_port "$moused_port_to_set" || f_die +else + f_die 1 "$msg_unknown_mouse_port_selection" +fi exit $SUCCESS Modified: head/usr.sbin/bsdconfig/mouse/type ============================================================================== --- head/usr.sbin/bsdconfig/mouse/type Tue Jun 18 09:05:08 2013 (r251914) +++ head/usr.sbin/bsdconfig/mouse/type Tue Jun 18 09:19:59 2013 (r251915) @@ -129,43 +129,38 @@ f_mustberoot_init # # Launch application main menu # -while :; do - dialog_menu_main || f_die - f_dialog_menutag_fetch mtag +dialog_menu_main || f_die +f_dialog_menutag_fetch mtag - case "$mtag" in - "1 $msg_auto") # Bus mouse, PS/2 style mouse or PnP serial mouse - f_sysrc_set moused_type "auto" || f_die - break ;; - "2 $msg_glidepoint") # ALPS GlidePoint pad (serial) - f_sysrc_set moused_type "glidepoint" || f_die - break ;; - "3 $msg_hitachi") # Hitachi tablet (serial) - f_sysrc_set moused_type "mmhittab" || f_die - break ;; - "4 $msg_intellimouse") # Microsoft Intellimouse (serial) - f_sysrc_set moused_type "intellimouse" || f_die - break ;; - "5 $msg_logitech") # Logitech protocol (old models) (serial) - f_sysrc_set moused_type "logitech" || f_die - break ;; - "6 $msg_microsoft") # Microsoft protocol (serial) - f_sysrc_set moused_type "microsoft" || f_die - break ;; - "7 $msg_mm_series") # MM Series protocol (serial) - f_sysrc_set moused_type "mmseries" || f_die - break ;; - "8 $msg_mouseman") # Logitech MouseMan/TrackMan models (serial) - f_sysrc_set moused_type "mouseman" || f_die - break ;; - "9 $msg_mousesystems") # MouseSystems protocol (serial) - f_sysrc_set moused_type "mousesystems" || f_die - break ;; - "A $msg_thinkingmouse") # Kensignton ThinkingMouse (serial) - f_sysrc_set moused_type "thinkingmouse" || f_die - break ;; - esac -done +moused_type_to_set= +case "$mtag" in +"1 $msg_auto") # Bus mouse, PS/2 style mouse or PnP serial mouse + moused_type_to_set="auto" ;; +"2 $msg_glidepoint") # ALPS GlidePoint pad (serial) + moused_type_to_set="glidepoint" ;; +"3 $msg_hitachi") # Hitachi tablet (serial) + moused_type_to_set="mmhittab" ;; +"4 $msg_intellimouse") # Microsoft Intellimouse (serial) + moused_type_to_set="intellimouse" ;; +"5 $msg_logitech") # Logitech protocol (old models) (serial) + moused_type_to_set="logitech" ;; +"6 $msg_microsoft") # Microsoft protocol (serial) + moused_type_to_set="microsoft" ;; +"7 $msg_mm_series") # MM Series protocol (serial) + moused_type_to_set="mmseries" ;; +"8 $msg_mouseman") # Logitech MouseMan/TrackMan models (serial) + moused_type_to_set="mouseman" ;; +"9 $msg_mousesystems") # MouseSystems protocol (serial) + moused_type_to_set="mousesystems" ;; +"A $msg_thinkingmouse") # Kensignton ThinkingMouse (serial) + moused_type_to_set="thinkingmouse" ;; +esac + +if [ "$moused_type_to_set" ]; then + f_sysrc_set moused_type "$moused_type_to_set" || f_die +else + f_die 1 "$msg_unknown_mouse_protocol_selection" +fi exit $SUCCESS From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 09:28:50 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7DBB88D0; Tue, 18 Jun 2013 09:28:50 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 57D851A98; Tue, 18 Jun 2013 09:28:50 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I9SofK084273; Tue, 18 Jun 2013 09:28:50 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9Sop2084271; Tue, 18 Jun 2013 09:28:50 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180928.r5I9Sop2084271@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 09:28:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251919 - in head/usr.sbin/bsdconfig/mouse: . include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:28:50 -0000 Author: dteske Date: Tue Jun 18 09:28:49 2013 New Revision: 251919 URL: http://svnweb.freebsd.org/changeset/base/251919 Log: Perform some code consolidation and add some additional error checking/reporting. (similar to SVN revisions 251905 and 251915) Modified: head/usr.sbin/bsdconfig/mouse/include/messages.subr head/usr.sbin/bsdconfig/mouse/mouse Modified: head/usr.sbin/bsdconfig/mouse/include/messages.subr ============================================================================== --- head/usr.sbin/bsdconfig/mouse/include/messages.subr Tue Jun 18 09:26:01 2013 (r251918) +++ head/usr.sbin/bsdconfig/mouse/include/messages.subr Tue Jun 18 09:28:49 2013 (r251919) @@ -86,6 +86,7 @@ msg_thinkingmouse="ThinkingMouse" msg_thinkingmouse_desc="Kensington ThinkingMouse (serial)" msg_trying_to_start_the_mouse_daemon="Trying to start the mouse daemon..." msg_type="Type" +msg_unknown_mouse_menu_selection="Unknown mouse menu selection" msg_unknown_mouse_port_selection="Unknown mouse port selection" msg_unknown_mouse_protocol_selection="Unknown mouse protocol selection" msg_user_confirmation_requested="User Confirmation Requested" Modified: head/usr.sbin/bsdconfig/mouse/mouse ============================================================================== --- head/usr.sbin/bsdconfig/mouse/mouse Tue Jun 18 09:26:01 2013 (r251918) +++ head/usr.sbin/bsdconfig/mouse/mouse Tue Jun 18 09:28:49 2013 (r251919) @@ -120,19 +120,21 @@ while :; do dialog_menu_main || f_die f_dialog_menutag_fetch mtag + command= case "$mtag" in - "X $msg_exit") break ;; - "2 $msg_enable") # Test and run the mouse daemon - $BSDCFG_LIBE/$APP_DIR/enable ${USE_XDIALOG:+-X} ;; - "3 $msg_type") # Select mouse protocol type - $BSDCFG_LIBE/$APP_DIR/type ${USE_XDIALOG:+-X} ;; - "4 $msg_port") # Select mouse port - $BSDCFG_LIBE/$APP_DIR/port ${USE_XDIALOG:+-X} ;; - "5 $msg_flags") # Set additional flags - $BSDCFG_LIBE/$APP_DIR/flags ${USE_XDIALOG:+-X} ;; - "6 $msg_disable") # Disable the mouse daemon - $BSDCFG_LIBE/$APP_DIR/disable ${USE_XDIALOG:+-X} ;; + "X $msg_exit") break ;; + "2 $msg_enable") command=enable ;; # Test and run the mouse daemon + "3 $msg_type") command=type ;; # Select mouse protocol type + "4 $msg_port") command=port ;; # Select mouse port + "5 $msg_flags") command=flags ;; # Set additional flags + "6 $msg_disable") command=disable ;; # Disable the mouse daemon esac + + if [ "$command" ]; then + $BSDCFG_LIBE/$APP_DIR/$command ${USE_XDIALOG:+-X} ;; + else + f_die 1 "$msg_unknown_mouse_menu_selection" + fi done exit $SUCCESS From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 09:41:35 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7443A67E; Tue, 18 Jun 2013 09:41:35 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 65B491BB9; Tue, 18 Jun 2013 09:41:35 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I9fZOX090431; Tue, 18 Jun 2013 09:41:35 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9fZoE090430; Tue, 18 Jun 2013 09:41:35 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180941.r5I9fZoE090430@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 09:41:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251926 - head/usr.sbin/bsdconfig/networking X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:41:35 -0000 Author: dteske Date: Tue Jun 18 09:41:34 2013 New Revision: 251926 URL: http://svnweb.freebsd.org/changeset/base/251926 Log: Whitespace and comments. Modified: head/usr.sbin/bsdconfig/networking/devices Modified: head/usr.sbin/bsdconfig/networking/devices ============================================================================== --- head/usr.sbin/bsdconfig/networking/devices Tue Jun 18 09:39:52 2013 (r251925) +++ head/usr.sbin/bsdconfig/networking/devices Tue Jun 18 09:41:34 2013 (r251926) @@ -101,7 +101,7 @@ while :; do _netmask= _ifconfig=$( f_sysrc_get ifconfig_$interface ) if [ "$_ifconfig" ]; then - # If DHCP get IP address/netmask later from ifconfig(8) + # If DHCP, get IP address/netmask later from ifconfig(8) glob="[Dd][Hh][Cc][Pp]" case "$_ifconfig" in $glob) dhcp=1;; @@ -109,8 +109,7 @@ while :; do [Nn][Oo][Ss][Yy][Nn][Cc]$glob) dhcp=1;; *) # - # Get IP address/netmask from rc.conf(5) - # configuration + # Get IP address/netmask from rc.conf(5) configuration # dhcp= eval "$( exec 2> /dev/null @@ -149,7 +148,6 @@ while :; do # Return to root menu if above returns success [ $? -eq $SUCCESS ] && break - done exit $SUCCESS From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 09:43:11 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 06A8D98D; Tue, 18 Jun 2013 09:43:11 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id DD8661BD3; Tue, 18 Jun 2013 09:43:10 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I9hArT090831; Tue, 18 Jun 2013 09:43:10 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9hA8l090829; Tue, 18 Jun 2013 09:43:10 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180943.r5I9hA8l090829@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 09:43:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251928 - in head/usr.sbin/bsdconfig/networking: . include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:43:11 -0000 Author: dteske Date: Tue Jun 18 09:43:10 2013 New Revision: 251928 URL: http://svnweb.freebsd.org/changeset/base/251928 Log: Perform some code consolidation and add some additional error checking/reporting. (similar to SVN revision 251919) Modified: head/usr.sbin/bsdconfig/networking/include/messages.subr head/usr.sbin/bsdconfig/networking/networking Modified: head/usr.sbin/bsdconfig/networking/include/messages.subr ============================================================================== --- head/usr.sbin/bsdconfig/networking/include/messages.subr Tue Jun 18 09:42:43 2013 (r251927) +++ head/usr.sbin/bsdconfig/networking/include/messages.subr Tue Jun 18 09:43:10 2013 (r251928) @@ -99,6 +99,7 @@ msg_saving_network_interface="Saving %s msg_scanning_for_dhcp="Scanning for DHCP servers on %s interface..." msg_select_network_interface="Select a network interface to configure.\n\n* Interface is marked as \"active\"" msg_supported_media_options="Below is a list of supported media options for the %s interface. Please select the options that you would like to set for the %s network interface" +msg_unknown_networking_menu_selection="Unknown networking menu selection" xmsg_please_enter_fqhn="Please enter your fully qualified hostname (e.g. foo.bar.com).\n The domain portion of the hostname will be configured in resolv.conf(5)." xmsg_please_enter_nameserver_existing="Please enter the new IP address of the DNS nameserver\n(set to the NULL string to remove entry):" xmsg_supported_media_options="Below is a list of supported media options for the %s interface. Please\nselect the options that you would like to set for the %s network interface" Modified: head/usr.sbin/bsdconfig/networking/networking ============================================================================== --- head/usr.sbin/bsdconfig/networking/networking Tue Jun 18 09:42:43 2013 (r251927) +++ head/usr.sbin/bsdconfig/networking/networking Tue Jun 18 09:43:10 2013 (r251928) @@ -119,35 +119,29 @@ while :; do dialog_menu_main || f_die f_dialog_menutag_fetch mtag + command= case "$mtag" in - X) # Exit - break - ;; - - 1) # Hostname/Domain - $BSDCFG_LIBE/$APP_DIR/hostname ${USE_XDIALOG:+-X} - ;; - - 2) # Network Interfaces - $BSDCFG_LIBE/$APP_DIR/devices ${USE_XDIALOG:+-X} - - # Make subsequent uses of this menu faster by not performing - # "ifconfig up" (limiting the pain one must endure). See also - # `$BSDCFG_SHARE/networking/device.subr'. - # - export DIALOG_MENU_NETDEV_KICK_INTERFACES= - ;; - - 3) # Default Router/Gateway - $BSDCFG_LIBE/$APP_DIR/defaultrouter ${USE_XDIALOG:+-X} - ;; - - 4) # DNS nameservers - $BSDCFG_LIBE/$APP_DIR/nameservers ${USE_XDIALOG:+-X} - ;; - + X) break ;; + 1) command=hostname ;; # Hostname/Domain + 2) command=devices ;; # Network Interfaces + 3) command=defaultrouter ;; # Default Router/Gateway + 4) command=nameservers ;; # DNS nameservers esac + if [ "$command" ]; then + $BSDCFG_LIBE/$APP_DIR/$command ${USE_XDIALOG:+-X} + else + f_die 1 "$msg_unknown_networking_menu_selection" + fi + + if [ "$mtag" = "devices" ]; then + # + # Make subsequent uses of this menu faster by not performing + # "ifconfig up" (limiting the pain one must endure). See also + # `$BSDCFG_SHARE/networking/device.subr'. + # + export DIALOG_MENU_NETDEV_KICK_INTERFACES= + fi done exit $SUCCESS From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 09:45:11 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 1DD01CAA; Tue, 18 Jun 2013 09:45:11 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 10CAF1BE7; Tue, 18 Jun 2013 09:45:11 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I9jAi3091425; Tue, 18 Jun 2013 09:45:10 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9jAN0091424; Tue, 18 Jun 2013 09:45:10 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180945.r5I9jAN0091424@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 09:45:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251930 - head/usr.sbin/bsdconfig/packages X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:45:11 -0000 Author: dteske Date: Tue Jun 18 09:45:10 2013 New Revision: 251930 URL: http://svnweb.freebsd.org/changeset/base/251930 Log: Comments. Modified: head/usr.sbin/bsdconfig/packages/packages Modified: head/usr.sbin/bsdconfig/packages/packages ============================================================================== --- head/usr.sbin/bsdconfig/packages/packages Tue Jun 18 09:44:55 2013 (r251929) +++ head/usr.sbin/bsdconfig/packages/packages Tue Jun 18 09:45:10 2013 (r251930) @@ -74,3 +74,7 @@ f_device_get_all # Display the package configuration menu and exit # f_package_config + +################################################################################ +# END +################################################################################ From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 09:54:10 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 52BB64B4; Tue, 18 Jun 2013 09:54:10 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 44E6E1CA9; Tue, 18 Jun 2013 09:54:10 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I9sApu094589; Tue, 18 Jun 2013 09:54:10 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9s96q094587; Tue, 18 Jun 2013 09:54:09 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306180954.r5I9s96q094587@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 09:54:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251933 - head/usr.sbin/bsdconfig/security X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:54:10 -0000 Author: dteske Date: Tue Jun 18 09:54:09 2013 New Revision: 251933 URL: http://svnweb.freebsd.org/changeset/base/251933 Log: Comments and whitespace. Modified: head/usr.sbin/bsdconfig/security/kern_securelevel head/usr.sbin/bsdconfig/security/security Modified: head/usr.sbin/bsdconfig/security/kern_securelevel ============================================================================== --- head/usr.sbin/bsdconfig/security/kern_securelevel Tue Jun 18 09:48:56 2013 (r251932) +++ head/usr.sbin/bsdconfig/security/kern_securelevel Tue Jun 18 09:54:09 2013 (r251933) @@ -124,7 +124,7 @@ f_dialog_backtitle "${ipgm:+bsdconfig }$ f_mustberoot_init # -# Launch application main menu +# Launch application main menu (loop for additional `Help' button) # while :; do dialog_menu_main Modified: head/usr.sbin/bsdconfig/security/security ============================================================================== --- head/usr.sbin/bsdconfig/security/security Tue Jun 18 09:48:56 2013 (r251932) +++ head/usr.sbin/bsdconfig/security/security Tue Jun 18 09:54:09 2013 (r251933) @@ -151,7 +151,7 @@ f_dialog_backtitle "${ipgm:+bsdconfig }$ f_mustberoot_init # -# Launch application main menu +# Launch application main menu (loop for menu update after selection) # while :; do dialog_menu_main || f_die @@ -166,7 +166,6 @@ while :; do "3 [ ] $msg_nfs_port") # Same; Toggle value f_sysrc_set nfs_reserved_port_only "YES";; esac - done exit $SUCCESS From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 10:26:23 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id BF8EEA0C; Tue, 18 Jun 2013 10:26:23 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B2BF31DFB; Tue, 18 Jun 2013 10:26:23 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5IAQNt9005010; Tue, 18 Jun 2013 10:26:23 GMT (envelope-from theraven@svn.freebsd.org) Received: (from theraven@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IAQNs7005009; Tue, 18 Jun 2013 10:26:23 GMT (envelope-from theraven@svn.freebsd.org) Message-Id: <201306181026.r5IAQNs7005009@svn.freebsd.org> From: David Chisnall Date: Tue, 18 Jun 2013 10:26:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251934 - head/usr.bin/dtc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 10:26:23 -0000 Author: theraven Date: Tue Jun 18 10:26:22 2013 New Revision: 251934 URL: http://svnweb.freebsd.org/changeset/base/251934 Log: Fix bug in destructor for checker manager in DTC that caused segfaults on exit. Modified: head/usr.bin/dtc/checking.cc Modified: head/usr.bin/dtc/checking.cc ============================================================================== --- head/usr.bin/dtc/checking.cc Tue Jun 18 09:54:09 2013 (r251933) +++ head/usr.bin/dtc/checking.cc Tue Jun 18 10:26:22 2013 (r251934) @@ -195,6 +195,7 @@ check_manager::~check_manager() while (disabled_checkers.begin() != disabled_checkers.end()) { delete disabled_checkers.begin()->second; + disabled_checkers.erase(disabled_checkers.begin()); } } From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 12:03:11 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 64D9F945; Tue, 18 Jun 2013 12:03:11 +0000 (UTC) (envelope-from bright@mu.org) Received: from elvis.mu.org (elvis.mu.org [192.203.228.196]) by mx1.freebsd.org (Postfix) with ESMTP id 5334B138A; Tue, 18 Jun 2013 12:03:11 +0000 (UTC) Received: from Alfreds-MacBook-Pro-9.local (unknown [63.118.227.34]) by elvis.mu.org (Postfix) with ESMTPSA id 0E0CC1A3C1B; Tue, 18 Jun 2013 05:03:03 -0700 (PDT) Message-ID: <51C04C77.7010907@mu.org> Date: Tue, 18 Jun 2013 08:03:03 -0400 From: Alfred Perlstein User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:17.0) Gecko/20130509 Thunderbird/17.0.6 MIME-Version: 1.0 To: Gleb Smirnoff Subject: Re: svn commit: r251894 - in head: lib/libmemstat sys/vm References: <201306180450.r5I4oKoY091256@svn.freebsd.org> <51C01964.1000006@freebsd.org> <20130618083733.GQ1400@FreeBSD.org> In-Reply-To: <20130618083733.GQ1400@FreeBSD.org> Content-Type: text/plain; charset=KOI8-R; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, Jeff Roberson , src-committers@freebsd.org, Andre Oppermann , svn-src-all@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 12:03:11 -0000 On 6/18/13 4:37 AM, Gleb Smirnoff wrote: > On Tue, Jun 18, 2013 at 10:25:08AM +0200, Andre Oppermann wrote: > A> There used to be a problem with per CPU caches accumulating large amounts > A> of items without freeing back to the global (or socket) pool. > A> > A> Do these updates to UMA change this situation and/or do you have further > A> improvements coming up? > > This is especially a problem with ZFS, which utilizes UMA extensively. > > IMHO, we need a flag for uma_zcreate() that would disable per CPU caches, so > that certain zones (ZFS at least) would have them off. > > It might be a good idea to force this flag on every zone that has allocation >= > then the page size. > What about people running with 256GB+ ram? Do they also want the per cpu caches off? -- Alfred Perlstein VP Software Engineering, iXsystems From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 15:04:17 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id A1A61404; Tue, 18 Jun 2013 15:04:17 +0000 (UTC) (envelope-from mav@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 933CC1F45; Tue, 18 Jun 2013 15:04:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5IF4Hgw096122; Tue, 18 Jun 2013 15:04:17 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IF4H36096121; Tue, 18 Jun 2013 15:04:17 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306181504.r5IF4H36096121@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 15:04:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251945 - head/sys/dev/ata/chipsets X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 15:04:17 -0000 Author: mav Date: Tue Jun 18 15:04:17 2013 New Revision: 251945 URL: http://svnweb.freebsd.org/changeset/base/251945 Log: Pass proper memory type to free() in ata_ali_chipinit(). Submitted by: Dmitry Luhtionov MFC after: 1 week Modified: head/sys/dev/ata/chipsets/ata-acerlabs.c Modified: head/sys/dev/ata/chipsets/ata-acerlabs.c ============================================================================== --- head/sys/dev/ata/chipsets/ata-acerlabs.c Tue Jun 18 15:02:53 2013 (r251944) +++ head/sys/dev/ata/chipsets/ata-acerlabs.c Tue Jun 18 15:04:17 2013 (r251945) @@ -133,7 +133,7 @@ ata_ali_chipinit(device_t dev) for (i--; i >=0; i--) bus_release_resource(dev, SYS_RES_IOPORT, PCIR_BAR(i), res->bars[i]); - free(res, M_TEMP); + free(res, M_ATAPCI); return ENXIO; } } From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 15:49:31 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 4BE7E94; Tue, 18 Jun 2013 15:49:31 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 3E5BA129F; Tue, 18 Jun 2013 15:49:31 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5IFnV7w010650; Tue, 18 Jun 2013 15:49:31 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IFnU5P010648; Tue, 18 Jun 2013 15:49:30 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201306181549.r5IFnU5P010648@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Tue, 18 Jun 2013 15:49:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251952 - head/sys/fs/ext2fs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 15:49:31 -0000 Author: pfg Date: Tue Jun 18 15:49:30 2013 New Revision: 251952 URL: http://svnweb.freebsd.org/changeset/base/251952 Log: More ext2fs header cleanups: - Set MAXMNTLEN nearer to where it is used. - Move EXT2_LINK_MAX to ext2_dir.h . MFC after: 3 days Modified: head/sys/fs/ext2fs/ext2_dir.h head/sys/fs/ext2fs/ext2fs.h Modified: head/sys/fs/ext2fs/ext2_dir.h ============================================================================== --- head/sys/fs/ext2fs/ext2_dir.h Tue Jun 18 15:31:43 2013 (r251951) +++ head/sys/fs/ext2fs/ext2_dir.h Tue Jun 18 15:49:30 2013 (r251952) @@ -53,6 +53,12 @@ struct ext2fs_direct_2 { uint8_t e2d_type; /* file type */ char e2d_name[EXT2FS_MAXNAMLEN];/* name with length<=EXT2FS_MAXNAMLEN */ }; + +/* + * Maximal count of links to a file + */ +#define EXT2_LINK_MAX 32000 + /* * Ext2 directory file types. Only the low 3 bits are used. The * other bits are reserved for now. Modified: head/sys/fs/ext2fs/ext2fs.h ============================================================================== --- head/sys/fs/ext2fs/ext2fs.h Tue Jun 18 15:31:43 2013 (r251951) +++ head/sys/fs/ext2fs/ext2fs.h Tue Jun 18 15:49:30 2013 (r251952) @@ -40,18 +40,6 @@ #include /* - * Maximal count of links to a file - */ -#define EXT2_LINK_MAX 32000 - -/* - * The path name on which the file system is mounted is maintained - * in fs_fsmnt. MAXMNTLEN defines the amount of space allocated in - * the super block for this name. - */ -#define MAXMNTLEN 512 - -/* * Super block for an ext2fs file system. */ struct ext2fs { @@ -121,6 +109,12 @@ struct ext2fs { uint32_t reserved2[162]; /* Padding to the end of the block */ }; +/* + * The path name on which the file system is mounted is maintained + * in fs_fsmnt. MAXMNTLEN defines the amount of space allocated in + * the super block for this name. + */ +#define MAXMNTLEN 512 /* * In-Memory Superblock From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 16:05:34 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 2C72970F; Tue, 18 Jun 2013 16:05:34 +0000 (UTC) (envelope-from peter@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 1F3E8136F; Tue, 18 Jun 2013 16:05:34 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5IG5YVA016695; Tue, 18 Jun 2013 16:05:34 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IG5YJr016694; Tue, 18 Jun 2013 16:05:34 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306181605.r5IG5YJr016694@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 16:05:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251953 - head/usr.bin/svn/lib/libapr X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 16:05:34 -0000 Author: peter Date: Tue Jun 18 16:05:33 2013 New Revision: 251953 URL: http://svnweb.freebsd.org/changeset/base/251953 Log: Tweak generated config to make it more likely to work on 32 bit systems. Pointed out by: Trond.Endrestol@fagskolen.gjovik.no Modified: head/usr.bin/svn/lib/libapr/apr.h Modified: head/usr.bin/svn/lib/libapr/apr.h ============================================================================== --- head/usr.bin/svn/lib/libapr/apr.h Tue Jun 18 15:49:30 2013 (r251952) +++ head/usr.bin/svn/lib/libapr/apr.h Tue Jun 18 16:05:33 2013 (r251953) @@ -316,7 +316,12 @@ typedef unsigned short apr_uint16_t; typedef int apr_int32_t; typedef unsigned int apr_uint32_t; +#include +#ifdef __LP64__ #define APR_SIZEOF_VOIDP 8 +#else +#define APR_SIZEOF_VOIDP 4 +#endif /* * Darwin 10's default compiler (gcc42) builds for both 64 and @@ -351,8 +356,8 @@ typedef unsigned int apr_uint32_t; #define UINT64_C(v) (v ## ULL) #endif #else - typedef long apr_int64_t; - typedef unsigned long apr_uint64_t; + typedef __int64_t apr_int64_t; + typedef __uint64_t apr_uint64_t; #endif typedef size_t apr_size_t; @@ -516,6 +521,7 @@ typedef apr_uint32_t apr_uin * configure.in. */ +#ifdef __LP64__ #define APR_SSIZE_T_FMT "ld" /* And APR_SIZE_T_FMT */ @@ -535,6 +541,15 @@ typedef apr_uint32_t apr_uin /* And APR_UINT64_T_HEX_FMT */ #define APR_UINT64_T_HEX_FMT "lx" +#else +#define APR_SSIZE_T_FMT "d" +#define APR_SIZE_T_FMT "u" +#define APR_OFF_T_FMT APR_INT64_T_FMT +#define APR_PID_T_FMT "d" +#define APR_INT64_T_FMT "lld" +#define APR_UINT64_T_FMT "llu" +#define APR_UINT64_T_HEX_FMT "llx" +#endif /* * Ensure we work with universal binaries on Darwin From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 16:36:23 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 2890F344; Tue, 18 Jun 2013 16:36:23 +0000 (UTC) (envelope-from peter@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 0AF9F16C5; Tue, 18 Jun 2013 16:36:23 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5IGaMSJ026664; Tue, 18 Jun 2013 16:36:22 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IGaLt2026657; Tue, 18 Jun 2013 16:36:21 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306181636.r5IGaLt2026657@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 16:36:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251956 - in head/contrib/subversion/subversion: include libsvn_fs_fs libsvn_subr libsvn_wc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 16:36:23 -0000 Author: peter Date: Tue Jun 18 16:36:21 2013 New Revision: 251956 URL: http://svnweb.freebsd.org/changeset/base/251956 Log: Merge 1.8.0 Modified: head/contrib/subversion/subversion/include/svn_version.h head/contrib/subversion/subversion/libsvn_fs_fs/rep-cache-db.h head/contrib/subversion/subversion/libsvn_subr/internal_statements.h head/contrib/subversion/subversion/libsvn_wc/wc-checks.h head/contrib/subversion/subversion/libsvn_wc/wc-metadata.h head/contrib/subversion/subversion/libsvn_wc/wc-queries.h Directory Properties: head/contrib/subversion/ (props changed) Modified: head/contrib/subversion/subversion/include/svn_version.h ============================================================================== --- head/contrib/subversion/subversion/include/svn_version.h Tue Jun 18 16:34:22 2013 (r251955) +++ head/contrib/subversion/subversion/include/svn_version.h Tue Jun 18 16:36:21 2013 (r251956) @@ -95,7 +95,7 @@ extern "C" { * * Always change this at the same time as SVN_VER_NUMTAG. */ -#define SVN_VER_TAG " (Release Candidate 3)" +#define SVN_VER_TAG " (r1490375)" /** Number tag: a string describing the version. @@ -110,7 +110,7 @@ extern "C" { * * Always change this at the same time as SVN_VER_TAG. */ -#define SVN_VER_NUMTAG "-rc3" +#define SVN_VER_NUMTAG "" /** Revision number: The repository revision number of this release. Modified: head/contrib/subversion/subversion/libsvn_fs_fs/rep-cache-db.h ============================================================================== --- head/contrib/subversion/subversion/libsvn_fs_fs/rep-cache-db.h Tue Jun 18 16:34:22 2013 (r251955) +++ head/contrib/subversion/subversion/libsvn_fs_fs/rep-cache-db.h Tue Jun 18 16:36:21 2013 (r251956) @@ -1,4 +1,4 @@ -/* This file is automatically generated from rep-cache-db.sql and .dist_sandbox/subversion-1.8.0-rc3/subversion/libsvn_fs_fs/token-map.h. +/* This file is automatically generated from rep-cache-db.sql and .dist_sandbox/subversion-1.8.0/subversion/libsvn_fs_fs/token-map.h. * Do not edit this file -- edit the source and rerun gen-make.py */ #define STMT_CREATE_SCHEMA 0 Modified: head/contrib/subversion/subversion/libsvn_subr/internal_statements.h ============================================================================== --- head/contrib/subversion/subversion/libsvn_subr/internal_statements.h Tue Jun 18 16:34:22 2013 (r251955) +++ head/contrib/subversion/subversion/libsvn_subr/internal_statements.h Tue Jun 18 16:36:21 2013 (r251956) @@ -1,4 +1,4 @@ -/* This file is automatically generated from internal_statements.sql and .dist_sandbox/subversion-1.8.0-rc3/subversion/libsvn_subr/token-map.h. +/* This file is automatically generated from internal_statements.sql and .dist_sandbox/subversion-1.8.0/subversion/libsvn_subr/token-map.h. * Do not edit this file -- edit the source and rerun gen-make.py */ #define STMT_INTERNAL_SAVEPOINT_SVN 0 Modified: head/contrib/subversion/subversion/libsvn_wc/wc-checks.h ============================================================================== --- head/contrib/subversion/subversion/libsvn_wc/wc-checks.h Tue Jun 18 16:34:22 2013 (r251955) +++ head/contrib/subversion/subversion/libsvn_wc/wc-checks.h Tue Jun 18 16:36:21 2013 (r251956) @@ -1,4 +1,4 @@ -/* This file is automatically generated from wc-checks.sql and .dist_sandbox/subversion-1.8.0-rc3/subversion/libsvn_wc/token-map.h. +/* This file is automatically generated from wc-checks.sql and .dist_sandbox/subversion-1.8.0/subversion/libsvn_wc/token-map.h. * Do not edit this file -- edit the source and rerun gen-make.py */ #define STMT_VERIFICATION_TRIGGERS 0 Modified: head/contrib/subversion/subversion/libsvn_wc/wc-metadata.h ============================================================================== --- head/contrib/subversion/subversion/libsvn_wc/wc-metadata.h Tue Jun 18 16:34:22 2013 (r251955) +++ head/contrib/subversion/subversion/libsvn_wc/wc-metadata.h Tue Jun 18 16:36:21 2013 (r251956) @@ -1,4 +1,4 @@ -/* This file is automatically generated from wc-metadata.sql and .dist_sandbox/subversion-1.8.0-rc3/subversion/libsvn_wc/token-map.h. +/* This file is automatically generated from wc-metadata.sql and .dist_sandbox/subversion-1.8.0/subversion/libsvn_wc/token-map.h. * Do not edit this file -- edit the source and rerun gen-make.py */ #define STMT_CREATE_SCHEMA 0 Modified: head/contrib/subversion/subversion/libsvn_wc/wc-queries.h ============================================================================== --- head/contrib/subversion/subversion/libsvn_wc/wc-queries.h Tue Jun 18 16:34:22 2013 (r251955) +++ head/contrib/subversion/subversion/libsvn_wc/wc-queries.h Tue Jun 18 16:36:21 2013 (r251956) @@ -1,4 +1,4 @@ -/* This file is automatically generated from wc-queries.sql and .dist_sandbox/subversion-1.8.0-rc3/subversion/libsvn_wc/token-map.h. +/* This file is automatically generated from wc-queries.sql and .dist_sandbox/subversion-1.8.0/subversion/libsvn_wc/token-map.h. * Do not edit this file -- edit the source and rerun gen-make.py */ #define STMT_SELECT_NODE_INFO 0 From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 16:40:39 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 897EF55F; Tue, 18 Jun 2013 16:40:39 +0000 (UTC) (envelope-from tijl@coosemans.org) Received: from mailrelay011.isp.belgacom.be (mailrelay011.isp.belgacom.be [195.238.6.178]) by mx1.freebsd.org (Postfix) with ESMTP id A9603170B; Tue, 18 Jun 2013 16:40:38 +0000 (UTC) X-Belgacom-Dynamic: yes X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AmYGAMGMwFFR8m08/2dsb2JhbABZgwkxg0q8DoEBF3SCIwEBBSMzIgEQCxICBAkWBAcCAgkDAgECAScQDgYNAQcBAYgOCKk8kVCPKhEHgk2BFAOQAYEshz2QGoFYgTk6 Received: from 60.109-242-81.adsl-dyn.isp.belgacom.be (HELO kalimero.tijl.coosemans.org) ([81.242.109.60]) by relay.skynet.be with ESMTP; 18 Jun 2013 18:40:36 +0200 Received: from kalimero.tijl.coosemans.org (kalimero.tijl.coosemans.org [127.0.0.1]) by kalimero.tijl.coosemans.org (8.14.7/8.14.7) with ESMTP id r5IGeZH2007772; Tue, 18 Jun 2013 18:40:35 +0200 (CEST) (envelope-from tijl@coosemans.org) Message-ID: <51C08D7E.2000605@coosemans.org> Date: Tue, 18 Jun 2013 18:40:30 +0200 From: Tijl Coosemans User-Agent: Mozilla/5.0 (X11; FreeBSD i386; rv:17.0) Gecko/20130517 Thunderbird/17.0.6 MIME-Version: 1.0 To: Peter Wemm Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... References: <201306180253.r5I2rj45053959@svn.freebsd.org> In-Reply-To: <201306180253.r5I2rj45053959@svn.freebsd.org> X-Enigmail-Version: 1.5.1 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="----enig2KGPOJVHLDIHBNGLULNII" Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 16:40:39 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) ------enig2KGPOJVHLDIHBNGLULNII Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 2013-06-18 04:53, Peter Wemm wrote: > Author: peter > Date: Tue Jun 18 02:53:45 2013 > New Revision: 251886 > URL: http://svnweb.freebsd.org/changeset/base/251886 >=20 > Log: > Introduce svnlite so that we can check out our source code again. > =20 > This is actually a fully functional build except: > * All internal shared libraries are static linked to make sure there > is no interference with ports (and to reduce build time). > * It does not have the python/perl/etc plugin or API support. > * By default, it installs as "svnlite" rather than "svn". > * If WITH_SVN added in make.conf, you get "svn". > * If WITHOUT_SVNLITE is in make.conf, this is completely disabled. > =20 > To be absolutely clear, this is not intended for any use other than > checking out freebsd source and committing, like we once did with cvs= =2E > =20 > It should be usable for small scale local repositories that don't > need the python/perl plugin architecture. This ties the repo to the oldest supported release, meaning that years from now we won't be able to use some new subversion feature because an old FreeBSD release doesn't support it. I don't find it unreasonable to ask developers to install the port. And for users it seems all they need is something like portsnap for base.= Portsnap already distributes ports svn so it shouldn't be too hard to adapt it for base. And the extra layer it adds is very convenient. Apart from a bigger than usual update maybe, portsnap users never even noticed it was switched from cvs to svn at some point. ------enig2KGPOJVHLDIHBNGLULNII Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iF4EAREIAAYFAlHAjYMACgkQfoCS2CCgtit+0wD/abEktKdy/kKyCUC/QXdvfoEZ 9HMV/efB4kxfgK7QFtEA/3vhaXNDBHTfcmpI/+vsCEGpUHEvOjM4qsNcV6ae+dsl =NNrN -----END PGP SIGNATURE----- ------enig2KGPOJVHLDIHBNGLULNII-- From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 16:48:23 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D6B8F99A; Tue, 18 Jun 2013 16:48:23 +0000 (UTC) (envelope-from lifanov@mail.lifanov.com) Received: from mail.lifanov.com (mail.lifanov.com [206.125.175.12]) by mx1.freebsd.org (Postfix) with ESMTP id C31D3176E; Tue, 18 Jun 2013 16:48:23 +0000 (UTC) Received: from [10.1.3.5] (cnet520-windstream.mcclatchyinteractive.com [166.108.16.2]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by mail.lifanov.com (Postfix) with ESMTPSA id AC27519F63E; Tue, 18 Jun 2013 16:48:22 +0000 (UTC) Message-ID: <51C08F55.20402@mail.lifanov.com> Date: Tue, 18 Jun 2013 12:48:21 -0400 From: Nikolai Lifanov User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130531 Thunderbird/17.0.6 MIME-Version: 1.0 To: Tijl Coosemans Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> In-Reply-To: <51C08D7E.2000605@coosemans.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, src-committers@freebsd.org, Peter Wemm X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 16:48:23 -0000 On 06/18/13 12:40, Tijl Coosemans wrote: > On 2013-06-18 04:53, Peter Wemm wrote: >> Author: peter >> Date: Tue Jun 18 02:53:45 2013 >> New Revision: 251886 >> URL: http://svnweb.freebsd.org/changeset/base/251886 >> >> Log: >> Introduce svnlite so that we can check out our source code again. >> >> This is actually a fully functional build except: >> * All internal shared libraries are static linked to make sure there >> is no interference with ports (and to reduce build time). >> * It does not have the python/perl/etc plugin or API support. >> * By default, it installs as "svnlite" rather than "svn". >> * If WITH_SVN added in make.conf, you get "svn". >> * If WITHOUT_SVNLITE is in make.conf, this is completely disabled. >> >> To be absolutely clear, this is not intended for any use other than >> checking out freebsd source and committing, like we once did with cvs. >> >> It should be usable for small scale local repositories that don't >> need the python/perl plugin architecture. > > This ties the repo to the oldest supported release, meaning that years > from now we won't be able to use some new subversion feature because > an old FreeBSD release doesn't support it. > > I don't find it unreasonable to ask developers to install the port. > And for users it seems all they need is something like portsnap for base. > Portsnap already distributes ports svn so it shouldn't be too hard to > adapt it for base. And the extra layer it adds is very convenient. Apart > from a bigger than usual update maybe, portsnap users never even noticed > it was switched from cvs to svn at some point. > I think the scope of this is for developers, to enable viewing repository history, committing, etc. Users are able to keep a bare (no metadata) tree up-to-date with net/svnup. But wasn't the original cvs retirement plan to import net/svnup into base? What is the motivation behind the import of semi-full subversion? It didn't replace former cvs functionality, since development didn't happen in cvs repositories for a while. - Nikolai Lifanov From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 16:48:37 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id EC76FABE for ; Tue, 18 Jun 2013 16:48:37 +0000 (UTC) (envelope-from andre@freebsd.org) Received: from c00l3r.networx.ch (c00l3r.networx.ch [62.48.2.2]) by mx1.freebsd.org (Postfix) with ESMTP id 487FB176F for ; Tue, 18 Jun 2013 16:48:37 +0000 (UTC) Received: (qmail 53384 invoked from network); 18 Jun 2013 17:43:20 -0000 Received: from c00l3r.networx.ch (HELO [127.0.0.1]) ([62.48.2.2]) (envelope-sender ) by c00l3r.networx.ch (qmail-ldap-1.03) with SMTP for ; 18 Jun 2013 17:43:20 -0000 Message-ID: <51C08F58.2070308@freebsd.org> Date: Tue, 18 Jun 2013 18:48:24 +0200 From: Andre Oppermann User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130509 Thunderbird/17.0.6 MIME-Version: 1.0 To: Tijl Coosemans Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> In-Reply-To: <51C08D7E.2000605@coosemans.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Peter Wemm X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 16:48:38 -0000 On 18.06.2013 18:40, Tijl Coosemans wrote: > On 2013-06-18 04:53, Peter Wemm wrote: >> Author: peter >> Date: Tue Jun 18 02:53:45 2013 >> New Revision: 251886 >> URL: http://svnweb.freebsd.org/changeset/base/251886 >> >> Log: >> Introduce svnlite so that we can check out our source code again. >> >> This is actually a fully functional build except: >> * All internal shared libraries are static linked to make sure there >> is no interference with ports (and to reduce build time). >> * It does not have the python/perl/etc plugin or API support. >> * By default, it installs as "svnlite" rather than "svn". >> * If WITH_SVN added in make.conf, you get "svn". >> * If WITHOUT_SVNLITE is in make.conf, this is completely disabled. >> >> To be absolutely clear, this is not intended for any use other than >> checking out freebsd source and committing, like we once did with cvs. >> >> It should be usable for small scale local repositories that don't >> need the python/perl plugin architecture. > > This ties the repo to the oldest supported release, meaning that years > from now we won't be able to use some new subversion feature because > an old FreeBSD release doesn't support it. AFAIK there is a checkout-only SVN client available, as in cvsup, but I don't remember the name. > I don't find it unreasonable to ask developers to install the port. > And for users it seems all they need is something like portsnap for base. > Portsnap already distributes ports svn so it shouldn't be too hard to > adapt it for base. And the extra layer it adds is very convenient. Apart > from a bigger than usual update maybe, portsnap users never even noticed > it was switched from cvs to svn at some point. Installing SVN from ports is very painful because of the huge dependency chain it carries, with the largest being Python and Perl IIRC. -- Andre From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 16:49:34 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 1033) id C45B2C40; Tue, 18 Jun 2013 16:49:34 +0000 (UTC) Date: Tue, 18 Jun 2013 16:49:34 +0000 From: Alexey Dokuchaev To: Tijl Coosemans Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... Message-ID: <20130618164934.GB80873@FreeBSD.org> References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <51C08D7E.2000605@coosemans.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Peter Wemm X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 16:49:34 -0000 On Tue, Jun 18, 2013 at 06:40:30PM +0200, Tijl Coosemans wrote: > On 2013-06-18 04:53, Peter Wemm wrote: > > New Revision: 251886 > > URL: http://svnweb.freebsd.org/changeset/base/251886 > > > > Log: > > Introduce svnlite so that we can check out our source code again. > > [...] > > I don't find it unreasonable to ask developers to install the port. > And for users it seems all they need is something like portsnap for base. > Portsnap already distributes ports svn so it shouldn't be too hard to > adapt it for base. And the extra layer it adds is very convenient. Apart > from a bigger than usual update maybe, portsnap users never even noticed > it was switched from cvs to svn at some point. +1. I fail to see the point of bringing Subversion and its supporting cruft into the base, even in some kind of "lite" form. We've done good thing getting rid or Perl many years ago, but since then we apparently keep adding stuff into the base instead of trying to get rid of it and all that maintenance burden that comes with it. Heck, it's not even required for the build, just to get the sources! ÐWe know that there's an ongoing effort of svnup, dependency-less checkout tool for the matter; perhaps it makes sence to invest into improving and importing it instead? ./danfe From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 16:51:06 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 1033) id 8B7E9DCB; Tue, 18 Jun 2013 16:51:06 +0000 (UTC) Date: Tue, 18 Jun 2013 16:51:06 +0000 From: Alexey Dokuchaev To: Andre Oppermann Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... Message-ID: <20130618165106.GC80873@FreeBSD.org> References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> <51C08F58.2070308@freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <51C08F58.2070308@freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Tijl Coosemans , src-committers@freebsd.org, Peter Wemm X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 16:51:06 -0000 On Tue, Jun 18, 2013 at 06:48:24PM +0200, Andre Oppermann wrote: > Installing SVN from ports is very painful because of the huge dependency > chain it carries, with the largest being Python and Perl IIRC. I've built a static version once (there is an OPTION for it) and simply copy it around whenever I need it on a freshly installed box. Seems to work just fine. ./danfe From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 16:54:39 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 16CDAF98; Tue, 18 Jun 2013 16:54:39 +0000 (UTC) (envelope-from lifanov@mail.lifanov.com) Received: from mail.lifanov.com (mail.lifanov.com [206.125.175.12]) by mx1.freebsd.org (Postfix) with ESMTP id F2A0717BB; Tue, 18 Jun 2013 16:54:38 +0000 (UTC) Received: from [10.1.3.5] (cnet520-windstream.mcclatchyinteractive.com [166.108.16.2]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by mail.lifanov.com (Postfix) with ESMTPSA id 609D619F63E; Tue, 18 Jun 2013 16:54:38 +0000 (UTC) Message-ID: <51C090CD.3040102@mail.lifanov.com> Date: Tue, 18 Jun 2013 12:54:37 -0400 From: Nikolai Lifanov User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130531 Thunderbird/17.0.6 MIME-Version: 1.0 To: Andre Oppermann Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> <51C08F58.2070308@freebsd.org> In-Reply-To: <51C08F58.2070308@freebsd.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Tijl Coosemans , src-committers@freebsd.org, Peter Wemm X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 16:54:39 -0000 On 06/18/13 12:48, Andre Oppermann wrote: > On 18.06.2013 18:40, Tijl Coosemans wrote: >> On 2013-06-18 04:53, Peter Wemm wrote: >>> Author: peter >>> Date: Tue Jun 18 02:53:45 2013 >>> New Revision: 251886 >>> URL: http://svnweb.freebsd.org/changeset/base/251886 >>> >>> Log: >>> Introduce svnlite so that we can check out our source code again. >>> >>> This is actually a fully functional build except: >>> * All internal shared libraries are static linked to make sure there >>> is no interference with ports (and to reduce build time). >>> * It does not have the python/perl/etc plugin or API support. >>> * By default, it installs as "svnlite" rather than "svn". >>> * If WITH_SVN added in make.conf, you get "svn". >>> * If WITHOUT_SVNLITE is in make.conf, this is completely disabled. >>> >>> To be absolutely clear, this is not intended for any use other than >>> checking out freebsd source and committing, like we once did with >>> cvs. >>> >>> It should be usable for small scale local repositories that don't >>> need the python/perl plugin architecture. >> >> This ties the repo to the oldest supported release, meaning that years >> from now we won't be able to use some new subversion feature because >> an old FreeBSD release doesn't support it. > > AFAIK there is a checkout-only SVN client available, as in cvsup, but I > don't > remember the name. > >> I don't find it unreasonable to ask developers to install the port. >> And for users it seems all they need is something like portsnap for base. >> Portsnap already distributes ports svn so it shouldn't be too hard to >> adapt it for base. And the extra layer it adds is very convenient. Apart >> from a bigger than usual update maybe, portsnap users never even noticed >> it was switched from cvs to svn at some point. > > Installing SVN from ports is very painful because of the huge dependency > chain it carries, with the largest being Python and Perl IIRC. > It's net/svnup and is a great replacement for cvs, in my opinion. CVS wasn't used for development for a long while anyway, so there is nothing subversion is replacing that net/svnup wouldn't. - Nikolai Lifanov From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 17:04:58 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 1033) id 1B569344; Tue, 18 Jun 2013 17:04:58 +0000 (UTC) Date: Tue, 18 Jun 2013 17:04:58 +0000 From: Alexey Dokuchaev To: Nikolai Lifanov Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... Message-ID: <20130618170458.GA91656@FreeBSD.org> References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> <51C08F58.2070308@freebsd.org> <51C090CD.3040102@mail.lifanov.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <51C090CD.3040102@mail.lifanov.com> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: Tijl Coosemans , Andre Oppermann , Peter Wemm , svn-src-all@freebsd.org, src-committers@freebsd.org, svn-src-head@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 17:04:58 -0000 On Tue, Jun 18, 2013 at 12:54:37PM -0400, Nikolai Lifanov wrote: > On 06/18/13 12:48, Andre Oppermann wrote: > >AFAIK there is a checkout-only SVN client available, as in cvsup, but I > >don't remember the name. > > It's net/svnup and is a great replacement for cvs, in my opinion. > CVS wasn't used for development for a long while anyway, so there is > nothing subversion is replacing that net/svnup wouldn't. AFAIK it still has (had?) some issues (performance-wise or something), that's why I mentioned that perhaps it should be improved (with some help of our community), and then imported. On the positive side, it seems that it's a rather active project, and there's a lot interest in it, so it should not take too long. Being able to checkout the sources is very desirable, but not at the cost of importing another heavy 3rd-party tool, which Subversion is. ./danfe From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 17:21:21 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D732D872 for ; Tue, 18 Jun 2013 17:21:21 +0000 (UTC) (envelope-from andre@freebsd.org) Received: from c00l3r.networx.ch (c00l3r.networx.ch [62.48.2.2]) by mx1.freebsd.org (Postfix) with ESMTP id 4B6C21917 for ; Tue, 18 Jun 2013 17:21:21 +0000 (UTC) Received: (qmail 53570 invoked from network); 18 Jun 2013 18:16:04 -0000 Received: from c00l3r.networx.ch (HELO [127.0.0.1]) ([62.48.2.2]) (envelope-sender ) by c00l3r.networx.ch (qmail-ldap-1.03) with SMTP for ; 18 Jun 2013 18:16:04 -0000 Message-ID: <51C09704.5020600@freebsd.org> Date: Tue, 18 Jun 2013 19:21:08 +0200 From: Andre Oppermann User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130509 Thunderbird/17.0.6 MIME-Version: 1.0 To: Alexey Dokuchaev Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> <51C08F58.2070308@freebsd.org> <51C090CD.3040102@mail.lifanov.com> <20130618170458.GA91656@FreeBSD.org> In-Reply-To: <20130618170458.GA91656@FreeBSD.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Peter Wemm X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 17:21:21 -0000 On 18.06.2013 19:04, Alexey Dokuchaev wrote: > > Being able to checkout the sources is very desirable, but not at the > cost of importing another heavy 3rd-party tool, which Subversion is. Just wanted to note that applaud Peter for actually doing something (tm) even though it came as a surprise to many it seems. Now that we're having the discussion we can converge towards the best or least controversial option. -- Andre From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 17:36:58 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 0330DD84 for ; Tue, 18 Jun 2013 17:36:58 +0000 (UTC) (envelope-from peter@wemm.org) Received: from mail-vc0-f182.google.com (mail-vc0-f182.google.com [209.85.220.182]) by mx1.freebsd.org (Postfix) with ESMTP id B1FC519AE for ; Tue, 18 Jun 2013 17:36:57 +0000 (UTC) Received: by mail-vc0-f182.google.com with SMTP id id13so3156189vcb.27 for ; Tue, 18 Jun 2013 10:36:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wemm.org; s=google; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=p9CsJCkhB39k0/NsH95GuXV3icsRQbqnJI76G8FmTKE=; b=XKAttF1LlkEFiArHf1q1EIcGU2x1z9fbFNyg06SdRwcAwRoaXCqxZ0Uww/7sGbtGbC tbXJot6Bs30pjX+rGNNnwBPHFtgoFUWLA4fZ/4pHFaUuQWMEZDdt3DibZMhL6AxzF8nG ibnLCRJpMoH818avPaAv6SMcm2iRx4ZzNZnzs= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type:x-gm-message-state; bh=p9CsJCkhB39k0/NsH95GuXV3icsRQbqnJI76G8FmTKE=; b=MXQMYkyOfHR+4CusQagXpnQicUw+aEA7xGltHZs8IO/gwsoaZg9H1V+QHxYFBHrR5g OpYGmvZ2frHkPhcoqVfphTzxDdOoLD/xptkxZI51a2DNG833dzMMb5WS6dFqijXW7Qxa rEz2CBNtykXOQLtkHcGP1CDD1tEKQiZ1t5DkkC+REWt7ujkMK5rgK7TsBkZcI0rfBY6K M6sOO1JMw9DlJGVBVyMkZD6SDqoJm6NhlkZhaqj0PUtER1SH19ZXfEafxROjJlREvVGM 1FsWbuYoYLNfnz9hsbTgIV7NFIhRNyd0eso7vaKZ23iHMobgLmsuKH4u2WcIherPqd1S 4zvw== MIME-Version: 1.0 X-Received: by 10.221.31.130 with SMTP id sg2mr5485209vcb.86.1371577011071; Tue, 18 Jun 2013 10:36:51 -0700 (PDT) Received: by 10.220.20.133 with HTTP; Tue, 18 Jun 2013 10:36:50 -0700 (PDT) In-Reply-To: <51C08F58.2070308@freebsd.org> References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> <51C08F58.2070308@freebsd.org> Date: Tue, 18 Jun 2013 10:36:50 -0700 Message-ID: Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... From: Peter Wemm To: Andre Oppermann Content-Type: text/plain; charset=ISO-8859-1 X-Gm-Message-State: ALoCoQkFDNlRWw4qwYed/SzxiK7xa/iCWwdwFkidLxPUEXvucYFxXzgjeeS2HPnMTmX6HbU6DEad Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Tijl Coosemans , src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 17:36:58 -0000 On Tue, Jun 18, 2013 at 9:48 AM, Andre Oppermann wrote: > AFAIK there is a checkout-only SVN client available, as in cvsup, but I > don't remember the name. svnup looks good on paper but has a fair way to go, particularly performance wise after the initial checkout and its tendency to explode. I still want to see that imported though. However, it is an end user tool, not a developer tool. >> I don't find it unreasonable to ask developers to install the port. >> And for users it seems all they need is something like portsnap for base. >> Portsnap already distributes ports svn so it shouldn't be too hard to >> adapt it for base. And the extra layer it adds is very convenient. Apart >> from a bigger than usual update maybe, portsnap users never even noticed >> it was switched from cvs to svn at some point. > > > Installing SVN from ports is very painful because of the huge dependency > chain it carries, with the largest being Python and Perl IIRC. That was one of my main motivations. A 2 year old machine builds this in ~35 seconds with *no* footprint. The dependency abomination in ports tests my non-violent nature. This is a major source of pain on the freebsd.org cluster and after the stealth perl ABI changes without a version bump.. well.. -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com; KI6FJV On IRC, talking about C++: I think that it is a good thing I will never meet Bjarne on a street cause really, I don't want to end up in prison or anything From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 19:35:52 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 11D0C3DB; Tue, 18 Jun 2013 19:35:52 +0000 (UTC) (envelope-from sjg@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 044C61F1C; Tue, 18 Jun 2013 19:35:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5IJZpOg084249; Tue, 18 Jun 2013 19:35:51 GMT (envelope-from sjg@svn.freebsd.org) Received: (from sjg@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IJZp56084248; Tue, 18 Jun 2013 19:35:51 GMT (envelope-from sjg@svn.freebsd.org) Message-Id: <201306181935.r5IJZp56084248@svn.freebsd.org> From: "Simon J. Gerraty" Date: Tue, 18 Jun 2013 19:35:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251958 - head/contrib/bmake X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 19:35:52 -0000 Author: sjg Date: Tue Jun 18 19:35:51 2013 New Revision: 251958 URL: http://svnweb.freebsd.org/changeset/base/251958 Log: Fix use after free bug. Parse_SetInput: curFile->fname was using the buffer passed to it - which ReadMakefile frees. This change makes the comment in ParseEOF about leaking curFile->fname true. Modified: head/contrib/bmake/parse.c Modified: head/contrib/bmake/parse.c ============================================================================== --- head/contrib/bmake/parse.c Tue Jun 18 19:03:27 2013 (r251957) +++ head/contrib/bmake/parse.c Tue Jun 18 19:35:51 2013 (r251958) @@ -157,7 +157,7 @@ __RCSID("$NetBSD: parse.c,v 1.188 2013/0 * Structure for a file being read ("included file") */ typedef struct IFile { - const char *fname; /* name of file */ + char *fname; /* name of file */ int lineno; /* current line number in file */ int first_lineno; /* line number of start of text */ int cond_depth; /* 'if' nesting when file opened */ @@ -2344,7 +2344,7 @@ Parse_SetInput(const char *name, int lin * name of the include file so error messages refer to the right * place. */ - curFile->fname = name; + curFile->fname = bmake_strdup(name); curFile->lineno = line; curFile->first_lineno = line; curFile->nextbuf = nextbuf; @@ -2357,6 +2357,8 @@ Parse_SetInput(const char *name, int lin buf = curFile->nextbuf(curFile->nextbuf_arg, &len); if (buf == NULL) { /* Was all a waste of time ... */ + if (curFile->fname) + free(curFile->fname); free(curFile); return; } From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 19:47:53 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 6BA3880D; Tue, 18 Jun 2013 19:47:53 +0000 (UTC) (envelope-from gad@FreeBSD.org) Received: from smtp10.server.rpi.edu (smtp10.server.rpi.edu [128.113.2.230]) by mx1.freebsd.org (Postfix) with ESMTP id 140B21F90; Tue, 18 Jun 2013 19:47:52 +0000 (UTC) Received: from gilead.netel.rpi.edu (gilead.netel.rpi.edu [128.113.124.121]) by smtp10.server.rpi.edu (8.14.3/8.14.3/Debian-9.4) with ESMTP id r5IJli5p009140; Tue, 18 Jun 2013 15:47:44 -0400 Message-ID: <51C0B960.4090303@FreeBSD.org> Date: Tue, 18 Jun 2013 15:47:44 -0400 From: Garance A Drosehn User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.1.9) Gecko/20100722 Eudora/3.0.4 MIME-Version: 1.0 To: Tijl Coosemans Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> In-Reply-To: <51C08D7E.2000605@coosemans.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Bayes-Prob: 0.0001 (Score 0, tokens from: local, @@RPTN) X-Spam-Score: 3.00 (***) [Hold at 10.10] SPF(softfail:3) X-CanIt-Incident-Id: 03JNTLI6S X-CanIt-Geo: ip=128.113.124.121; country=US; region=NY; city=Troy; postalcode=12180; latitude=42.7495; longitude=-73.5951; metrocode=532; areacode=518; http://maps.google.com/maps?q=42.7495,-73.5951&z=6 X-CanItPRO-Stream: local X-Canit-Stats-ID: Bayes signature not available X-Scanned-By: CanIt (www . roaringpenguin . com) on 128.113.2.230 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Peter Wemm X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 19:47:53 -0000 On 6/18/13 12:40 PM, Tijl Coosemans wrote: > On 2013-06-18 04:53, Peter Wemm wrote: >> Author: peter >> Date: Tue Jun 18 02:53:45 2013 >> New Revision: 251886 >> URL: http://svnweb.freebsd.org/changeset/base/251886 >> >> Log: >> Introduce svnlite so that we can check out our source code again. >> >> This is actually a fully functional build except: [...] >> >> To be absolutely clear, this is not intended for any use other >> than checking out freebsd source and committing, like we once >> did with cvs. >> >> It should be usable for small scale local repositories that don't >> need the python/perl plugin architecture. > > This ties the repo to the oldest supported release, meaning that years > from now we won't be able to use some new subversion feature because > an old FreeBSD release doesn't support it. > > I don't find it unreasonable to ask developers to install the port. This doesn't tie the repo to anything. It just means that when anyone installs the latest version of FreeBSD, they can immediately use this 'svnlite' to get the latest updates. If the user is still running the same release of FreeBSD after a major format change to the repo, then they can install the 'svn' port at that time. If it is reasonable to ask someone to install a port right when they first install a brand new release, then it's certainly reasonable to ask them to install the port if they're sticking to an ancient release of FreeBSD after the FreeBSD repository has gone through a significant svn-level update. Note that a major change to the FreeBSD repo would require that users install a new 'svn' anyway, even if they did install 'svn' back when they first installed FreeBSD. IMO, I think this 'svnlite' idea is a good move. I wouldn't want a full-blown official 'svn' in the base system, but just enough that a user can immediately get freebsd-specific updates without first needing to install some port. -- Garance Alistair Drosehn = gad@gilead.netel.rpi.edu Senior Systems Programmer or gad@freebsd.org Rensselaer Polytechnic Institute or drosih@rpi.edu From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 19:56:52 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id DF7BFC22; Tue, 18 Jun 2013 19:56:52 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id D21DF1023; Tue, 18 Jun 2013 19:56:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5IJuqDi090467; Tue, 18 Jun 2013 19:56:52 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IJuquD090466; Tue, 18 Jun 2013 19:56:52 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201306181956.r5IJuquD090466@svn.freebsd.org> From: Konstantin Belousov Date: Tue, 18 Jun 2013 19:56:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251959 - head/sys/dev/drm2/i915 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 19:56:52 -0000 Author: kib Date: Tue Jun 18 19:56:52 2013 New Revision: 251959 URL: http://svnweb.freebsd.org/changeset/base/251959 Log: Remove stray empty line. MFC after: 3 days Modified: head/sys/dev/drm2/i915/i915_gem.c Modified: head/sys/dev/drm2/i915/i915_gem.c ============================================================================== --- head/sys/dev/drm2/i915/i915_gem.c Tue Jun 18 19:35:51 2013 (r251958) +++ head/sys/dev/drm2/i915/i915_gem.c Tue Jun 18 19:56:52 2013 (r251959) @@ -1362,7 +1362,6 @@ unlocked_vmobj: cause = ret = 0; m = NULL; - if (i915_intr_pf) { ret = i915_mutex_lock_interruptible(dev); if (ret != 0) { From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 20:02:52 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 8F979D4; Tue, 18 Jun 2013 20:02:52 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 81BD01088; Tue, 18 Jun 2013 20:02:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5IK2q7Y093360; Tue, 18 Jun 2013 20:02:52 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IK2qCI093359; Tue, 18 Jun 2013 20:02:52 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201306182002.r5IK2qCI093359@svn.freebsd.org> From: Konstantin Belousov Date: Tue, 18 Jun 2013 20:02:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251960 - head/sys/dev/drm2/i915 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 20:02:52 -0000 Author: kib Date: Tue Jun 18 20:02:52 2013 New Revision: 251960 URL: http://svnweb.freebsd.org/changeset/base/251960 Log: Since the gem pagefault handler relocks the vm object lock, other thread might fault on the same GTT offset meantime and instantiate the mapping. Recheck that the mgt device object still does not have a page at the current offset after relocking, and return a possibly installed page. Reported by: Oleg Sidorkin Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Modified: head/sys/dev/drm2/i915/i915_gem.c Modified: head/sys/dev/drm2/i915/i915_gem.c ============================================================================== --- head/sys/dev/drm2/i915/i915_gem.c Tue Jun 18 19:56:52 2013 (r251959) +++ head/sys/dev/drm2/i915/i915_gem.c Tue Jun 18 20:02:52 2013 (r251960) @@ -1371,6 +1371,23 @@ unlocked_vmobj: } else DRM_LOCK(dev); + /* + * Since the object lock was dropped, other thread might have + * faulted on the same GTT address and instantiated the + * mapping for the page. Recheck. + */ + VM_OBJECT_WLOCK(vm_obj); + m = vm_page_lookup(vm_obj, OFF_TO_IDX(offset)); + if (m != NULL) { + if ((m->flags & VPO_BUSY) != 0) { + DRM_UNLOCK(dev); + vm_page_sleep(m, "915pee"); + goto retry; + } + goto have_page; + } else + VM_OBJECT_WUNLOCK(vm_obj); + /* Now bind it into the GTT if needed */ if (!obj->map_and_fenceable) { ret = i915_gem_object_unbind(obj); @@ -1424,8 +1441,9 @@ unlocked_vmobj: goto retry; } m->valid = VM_PAGE_BITS_ALL; - *mres = m; vm_page_insert(m, vm_obj, OFF_TO_IDX(offset)); +have_page: + *mres = m; vm_page_busy(m); CTR4(KTR_DRM, "fault %p %jx %x phys %x", gem_obj, offset, prot, From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 20:19:10 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 541A5563; Tue, 18 Jun 2013 20:19:10 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 2E1991138; Tue, 18 Jun 2013 20:19:10 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5IKJATg097784; Tue, 18 Jun 2013 20:19:10 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IKJ9YG097781; Tue, 18 Jun 2013 20:19:09 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201306182019.r5IKJ9YG097781@svn.freebsd.org> From: Konstantin Belousov Date: Tue, 18 Jun 2013 20:19:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251961 - in head/sys/dev: drm2/i915 syscons X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 20:19:10 -0000 Author: kib Date: Tue Jun 18 20:19:09 2013 New Revision: 251961 URL: http://svnweb.freebsd.org/changeset/base/251961 Log: On some generations of the Intel GPU, disabling of the VGA Display stops updating the vertical retrace indicator. The text mouse renderer in syscons is executing from the callout and spins waiting for the start of next frame. As result, after the X server finishes, since the VGA cannot be turned on, but syscons does not know about this, the clock swi spins forever. Hack around the problem by disabling wait for the retrace if KMS is activated. Diagnosed and tested by: Michiel Boland Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Modified: head/sys/dev/drm2/i915/intel_fb.c head/sys/dev/syscons/scvgarndr.c Modified: head/sys/dev/drm2/i915/intel_fb.c ============================================================================== --- head/sys/dev/drm2/i915/intel_fb.c Tue Jun 18 20:02:52 2013 (r251960) +++ head/sys/dev/drm2/i915/intel_fb.c Tue Jun 18 20:19:09 2013 (r251961) @@ -207,6 +207,8 @@ static void intel_fbdev_destroy(struct d } } +extern int sc_txtmouse_no_retrace_wait; + int intel_fbdev_init(struct drm_device *dev) { struct intel_fbdev *ifbdev; @@ -229,6 +231,7 @@ int intel_fbdev_init(struct drm_device * drm_fb_helper_single_add_all_connectors(&ifbdev->helper); drm_fb_helper_initial_config(&ifbdev->helper, 32); + sc_txtmouse_no_retrace_wait = 1; return 0; } Modified: head/sys/dev/syscons/scvgarndr.c ============================================================================== --- head/sys/dev/syscons/scvgarndr.c Tue Jun 18 20:02:52 2013 (r251960) +++ head/sys/dev/syscons/scvgarndr.c Tue Jun 18 20:19:09 2013 (r251961) @@ -395,6 +395,8 @@ vga_txtblink(scr_stat *scp, int at, int { } +int sc_txtmouse_no_retrace_wait; + #ifndef SC_NO_CUTPASTE static void @@ -445,7 +447,9 @@ draw_txtmouse(scr_stat *scp, int x, int #if 1 /* wait for vertical retrace to avoid jitter on some videocards */ crtc_addr = scp->sc->adp->va_crtc_addr; - while (!(inb(crtc_addr + 6) & 0x08)) /* idle */ ; + while (!sc_txtmouse_no_retrace_wait && + !(inb(crtc_addr + 6) & 0x08)) + /* idle */ ; #endif c = scp->sc->mouse_char; vidd_load_font(scp->sc->adp, 0, 32, 8, font_buf, c, 4); From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 21:25:16 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 159ABC82; Tue, 18 Jun 2013 21:25:16 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-ie0-x231.google.com (mail-ie0-x231.google.com [IPv6:2607:f8b0:4001:c03::231]) by mx1.freebsd.org (Postfix) with ESMTP id C410F1487; Tue, 18 Jun 2013 21:25:15 +0000 (UTC) Received: by mail-ie0-f177.google.com with SMTP id aq17so10366843iec.8 for ; Tue, 18 Jun 2013 14:25:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=Le5KCQbo6WqY39Way96U2ypSl2bAdQYMsr7uEu8Jwv4=; b=KgyBrBh8vfuK8amSf1EfiTnc16H4SoUImXf20epp0wrNwMH5v+Tcj34hhC0S1QKXfd oO1EDY2CLHyFS5PiemHebpLcIURLAffVG4GPgDsa/MNswWEy2A+kKt7Pq7f0Krm1UpiF oMDacRl1iFpDc1IjohPmrGtm7nKn5nHKnf/NHODvwKwlIt7tzrC/EZPUlkuRavReFlxO fc8yRW3zCgQqNUoYhD1qR7jagJqTN9PcFbkKCGPLOXajpm0DcajXsrSlLiTN+gnPuwir SPPVoWs8USm277w9cL/7bXTY2Sws4jrJWcfLHP7pM92ozmbAVjDolVVfs8IsOH2tomoj 6xeQ== MIME-Version: 1.0 X-Received: by 10.43.134.10 with SMTP id ia10mr709245icc.54.1371590715518; Tue, 18 Jun 2013 14:25:15 -0700 (PDT) Received: by 10.64.6.165 with HTTP; Tue, 18 Jun 2013 14:25:15 -0700 (PDT) In-Reply-To: <201306181935.r5IJZp56084248@svn.freebsd.org> References: <201306181935.r5IJZp56084248@svn.freebsd.org> Date: Tue, 18 Jun 2013 14:25:15 -0700 Message-ID: Subject: Re: svn commit: r251958 - head/contrib/bmake From: Garrett Cooper To: "Simon J. Gerraty" Content-Type: text/plain; charset=ISO-8859-1 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 21:25:16 -0000 On Tue, Jun 18, 2013 at 12:35 PM, Simon J. Gerraty wrote: > Author: sjg > Date: Tue Jun 18 19:35:51 2013 > New Revision: 251958 > URL: http://svnweb.freebsd.org/changeset/base/251958 Was this the source of the huge ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ ignoring stale .depend messages? Thanks, -Garrett From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 21:28:20 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id E831AF6C; Tue, 18 Jun 2013 21:28:20 +0000 (UTC) (envelope-from jfv@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id D9D0115E7; Tue, 18 Jun 2013 21:28:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5ILSKt9019867; Tue, 18 Jun 2013 21:28:20 GMT (envelope-from jfv@svn.freebsd.org) Received: (from jfv@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5ILSJSM019857; Tue, 18 Jun 2013 21:28:19 GMT (envelope-from jfv@svn.freebsd.org) Message-Id: <201306182128.r5ILSJSM019857@svn.freebsd.org> From: Jack F Vogel Date: Tue, 18 Jun 2013 21:28:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251964 - in head/sys: conf dev/ixgbe modules/ixgbe X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 21:28:21 -0000 Author: jfv Date: Tue Jun 18 21:28:19 2013 New Revision: 251964 URL: http://svnweb.freebsd.org/changeset/base/251964 Log: Add quad port probe support, this gives the admin proper information about the slot (which should be a PCIE Gen 3 slot for this adapter) by looking back thru the PCI parent devices to the slot device. The fix above also corrects the bandwidth display to GT/s rather than the incorrect Gb/s Next, allow the use of ALTQ if you select the compile option IXGBE_LEGACY_TX. Allow the use of 'unsupported' optic modules by a compile option as well. Add a phy reset capability into the stop code, this is so a static configured driver will still behave properly when taken down (not being able to unload it). This revision synchronizes the shared code with Intel internal current code, and note that it now includes DCB supporting code, this was necessitated by some internal changes with the code, but it also will provide the opportunity to develop this feature in the core driver down the road. I have edited the README to get rid of some of the worse anachronisms in it as well, its by no means as robust as I might wish at this point however. Oh, I also have included some conditional stuff in the code so it will be compatible in both the 9.X and 10 environments. Performance has been a focus in recent changes and I believe this revision driver will perform very well in most workloads. MFC after: 2 weeks Added: head/sys/dev/ixgbe/ixgbe_dcb.c (contents, props changed) head/sys/dev/ixgbe/ixgbe_dcb.h (contents, props changed) head/sys/dev/ixgbe/ixgbe_dcb_82598.c (contents, props changed) head/sys/dev/ixgbe/ixgbe_dcb_82598.h (contents, props changed) head/sys/dev/ixgbe/ixgbe_dcb_82599.c (contents, props changed) head/sys/dev/ixgbe/ixgbe_dcb_82599.h (contents, props changed) Modified: head/sys/conf/files head/sys/dev/ixgbe/README head/sys/dev/ixgbe/ixgbe.c head/sys/dev/ixgbe/ixgbe.h head/sys/dev/ixgbe/ixgbe_82598.c head/sys/dev/ixgbe/ixgbe_82599.c head/sys/dev/ixgbe/ixgbe_api.c head/sys/dev/ixgbe/ixgbe_api.h head/sys/dev/ixgbe/ixgbe_common.c head/sys/dev/ixgbe/ixgbe_common.h head/sys/dev/ixgbe/ixgbe_osdep.h head/sys/dev/ixgbe/ixgbe_phy.c head/sys/dev/ixgbe/ixgbe_phy.h head/sys/dev/ixgbe/ixgbe_type.h head/sys/dev/ixgbe/ixgbe_vf.c head/sys/dev/ixgbe/ixgbe_x540.c head/sys/dev/ixgbe/ixgbe_x540.h head/sys/modules/ixgbe/Makefile Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Tue Jun 18 21:24:07 2013 (r251963) +++ head/sys/conf/files Tue Jun 18 21:28:19 2013 (r251964) @@ -1685,6 +1685,12 @@ dev/ixgbe/ixgbe_82599.c optional ixgbe compile-with "${NORMAL_C} -I$S/dev/ixgbe" dev/ixgbe/ixgbe_x540.c optional ixgbe inet \ compile-with "${NORMAL_C} -I$S/dev/ixgbe" +dev/ixgbe/ixgbe_dcb.c optional ixgbe inet \ + compile-with "${NORMAL_C} -I$S/dev/ixgbe" +dev/ixgbe/ixgbe_dcb_82598.c optional ixgbe inet \ + compile-with "${NORMAL_C} -I$S/dev/ixgbe" +dev/ixgbe/ixgbe_dcb_82599.c optional ixgbe inet \ + compile-with "${NORMAL_C} -I$S/dev/ixgbe" dev/jme/if_jme.c optional jme pci dev/joy/joy.c optional joy dev/joy/joy_isa.c optional joy isa Modified: head/sys/dev/ixgbe/README ============================================================================== --- head/sys/dev/ixgbe/README Tue Jun 18 21:24:07 2013 (r251963) +++ head/sys/dev/ixgbe/README Tue Jun 18 21:28:19 2013 (r251964) @@ -2,7 +2,7 @@ FreeBSD Driver for Intel(R) Ethernet 10 ============================================================================ /*$FreeBSD$*/ -November 12, 2010 +Jun 18, 2013 Contents @@ -18,8 +18,8 @@ Contents Overview ======== -This file describes the FreeBSD* driver for the Intel(R) Ethernet 10 Gigabit -Family of Adapters. Driver has been developed for use with FreeBSD 7.2 or later. +This file describes the FreeBSD* driver for the +Intel(R) Ethernet 10 Gigabit Family of Adapters. For questions related to hardware requirements, refer to the documentation supplied with your Intel 10GbE adapter. All hardware requirements listed @@ -42,7 +42,7 @@ optics, or is an Intel(R) Ethernet Serve Intel optics and/or the direct attach cables listed below. When 82599-based SFP+ devices are connected back to back, they should be set to -the same Speed setting via Ethtool. Results may vary if you mix speed settings. +the same Speed setting. Results may vary if you mix speed settings. Supplier Type Part Numbers @@ -70,7 +70,12 @@ Finisar DUAL RATE 1G/10G SFP+ LR (No Avago DUAL RATE 1G/10G SFP+ LR (No Bail) AFCT-701SDZ-IN1 Finistar 1000BASE-T SFP FCLF8522P2BTL Avago 1000BASE-T SFP ABCU-5710RZ - + +NOTE: As of driver version 2.5.13 it is possible to allow the operation +of unsupported modules by setting the static variable 'allow_unsupported_sfp' +to TRUE and rebuilding the driver. If problems occur please assure that they +can be reproduced with fully supported optics first. + 82599-based adapters support all passive and active limiting direct attach cables that comply with SFF-8431 v4.1 and SFF-8472 v10.4 specifications. @@ -224,14 +229,7 @@ all 10 Gigabit adapters. When there is a choice run on a 64bit OS rather than 32, it makes a significant difference in improvement. - The default scheduler SCHED_4BSD is not smart about SMP locality issues. - Significant improvement can be achieved by switching to the ULE scheduler. - - This is done by changing the entry in the config file from SCHED_4BSD to - SCHED_ULE. Note that this is only advisable on FreeBSD 7, on 6.X there have - been stability problems with ULE. - - The interface can generate high number of interrupts. To avoid running + The interface can generate a high number of interrupts. To avoid running into the limit set by the kernel, adjust hw.intr_storm_threshold setting using sysctl: @@ -242,12 +240,10 @@ all 10 Gigabit adapters. hw.intr_storm_threshold=9000 If you still see Interrupt Storm detected messages, increase the limit to a - higher number. - - Best throughput results are seen with a large MTU; use 9000 if possible. + higher number, or the detection can be disabled by setting it to 0. - The default number of descriptors is 1024, increasing this to 2K or even - 4K may improve performance in some workloads, but change carefully. + The default number of descriptors is 2048, increasing or descreasing + may improve performance in some workloads, but change carefully. Known Limitations @@ -284,7 +280,7 @@ issues download your adapter's user guid ---------------------------------------------------------- Some PCI-E x8 slots are actually configured as x4 slots. These slots have insufficient bandwidth for full 10Gbe line rate with dual port 10GbE devices. - The driver can detect this situation and will write the following message in + The driver will detect this situation and will write the following message in the system log: "PCI-Express bandwidth available for this card is not sufficient for optimal performance. For optimal performance a x8 PCI-Express slot is required." Modified: head/sys/dev/ixgbe/ixgbe.c ============================================================================== --- head/sys/dev/ixgbe/ixgbe.c Tue Jun 18 21:24:07 2013 (r251963) +++ head/sys/dev/ixgbe/ixgbe.c Tue Jun 18 21:28:19 2013 (r251964) @@ -32,6 +32,7 @@ ******************************************************************************/ /*$FreeBSD$*/ + #ifdef HAVE_KERNEL_OPTION_HEADERS #include "opt_inet.h" #include "opt_inet6.h" @@ -47,7 +48,7 @@ int ixgbe_display_debug_stat /********************************************************************* * Driver version *********************************************************************/ -char ixgbe_driver_version[] = "2.5.8 - HEAD"; +char ixgbe_driver_version[] = "2.5.13"; /********************************************************************* * PCI Device ID Table @@ -109,8 +110,7 @@ static void ixgbe_start(struct ifnet static void ixgbe_start_locked(struct tx_ring *, struct ifnet *); #else /* ! IXGBE_LEGACY_TX */ static int ixgbe_mq_start(struct ifnet *, struct mbuf *); -static int ixgbe_mq_start_locked(struct ifnet *, - struct tx_ring *, struct mbuf *); +static int ixgbe_mq_start_locked(struct ifnet *, struct tx_ring *); static void ixgbe_qflush(struct ifnet *); static void ixgbe_deferred_mq_start(void *, int); #endif /* IXGBE_LEGACY_TX */ @@ -122,6 +122,7 @@ static void ixgbe_media_status(struc static int ixgbe_media_change(struct ifnet *); static void ixgbe_identify_hardware(struct adapter *); static int ixgbe_allocate_pci_resources(struct adapter *); +static void ixgbe_get_slot_info(struct ixgbe_hw *); static int ixgbe_allocate_msix(struct adapter *); static int ixgbe_allocate_legacy(struct adapter *); static int ixgbe_allocate_queues(struct adapter *); @@ -149,7 +150,7 @@ static void ixgbe_setup_hw_rsc(struct rx static void ixgbe_enable_intr(struct adapter *); static void ixgbe_disable_intr(struct adapter *); static void ixgbe_update_stats_counters(struct adapter *); -static bool ixgbe_txeof(struct tx_ring *); +static void ixgbe_txeof(struct tx_ring *); static bool ixgbe_rxeof(struct ix_queue *); static void ixgbe_rx_checksum(u32, struct mbuf *, u32); static void ixgbe_set_promisc(struct adapter *); @@ -206,6 +207,9 @@ static void ixgbe_atr(struct tx_ring *, static void ixgbe_reinit_fdir(void *, int); #endif +/* Missing shared code prototype */ +extern void ixgbe_stop_mac_link_on_d3_82599(struct ixgbe_hw *hw); + /********************************************************************* * FreeBSD Device Interface Entry Points *********************************************************************/ @@ -291,6 +295,13 @@ static int ixgbe_rxd = PERFORM_RXD; TUNABLE_INT("hw.ixgbe.rxd", &ixgbe_rxd); /* +** Defining this on will allow the use +** of unsupported SFP+ modules, note that +** doing so you are on your own :) +*/ +static int allow_unsupported_sfp = FALSE; + +/* ** HW RSC control: ** this feature only works with ** IPv4, and only on 82599 and later. @@ -507,6 +518,7 @@ ixgbe_attach(device_t dev) } /* Initialize the shared code */ + hw->allow_unsupported_sfp = allow_unsupported_sfp; error = ixgbe_init_shared_code(hw); if (error == IXGBE_ERR_SFP_NOT_PRESENT) { /* @@ -576,24 +588,10 @@ ixgbe_attach(device_t dev) adapter->vlan_detach = EVENTHANDLER_REGISTER(vlan_unconfig, ixgbe_unregister_vlan, adapter, EVENTHANDLER_PRI_FIRST); - /* Print PCIE bus type/speed/width info */ - ixgbe_get_bus_info(hw); - device_printf(dev,"PCI Express Bus: Speed %s %s\n", - ((hw->bus.speed == ixgbe_bus_speed_5000) ? "5.0Gb/s": - (hw->bus.speed == ixgbe_bus_speed_2500) ? "2.5Gb/s":"Unknown"), - (hw->bus.width == ixgbe_bus_width_pcie_x8) ? "Width x8" : - (hw->bus.width == ixgbe_bus_width_pcie_x4) ? "Width x4" : - (hw->bus.width == ixgbe_bus_width_pcie_x1) ? "Width x1" : - ("Unknown")); - - if ((hw->bus.width <= ixgbe_bus_width_pcie_x4) && - (hw->bus.speed == ixgbe_bus_speed_2500)) { - device_printf(dev, "PCI-Express bandwidth available" - " for this card\n is not sufficient for" - " optimal performance.\n"); - device_printf(dev, "For optimal performance a x8 " - "PCIE, or x4 PCIE 2 slot is required.\n"); - } + /* + ** Check PCIE slot type/speed/width + */ + ixgbe_get_slot_info(hw); /* Set an initial default flow control value */ adapter->fc = ixgbe_fc_full; @@ -797,7 +795,7 @@ ixgbe_mq_start(struct ifnet *ifp, struct struct adapter *adapter = ifp->if_softc; struct ix_queue *que; struct tx_ring *txr; - int i = 0, err = 0; + int i, err = 0; /* Which queue to use */ if ((m->m_flags & M_FLOWID) != 0) @@ -808,40 +806,37 @@ ixgbe_mq_start(struct ifnet *ifp, struct txr = &adapter->tx_rings[i]; que = &adapter->queues[i]; + err = drbr_enqueue(ifp, txr->br, m); + if (err) + return (err); if (IXGBE_TX_TRYLOCK(txr)) { - err = ixgbe_mq_start_locked(ifp, txr, m); + err = ixgbe_mq_start_locked(ifp, txr); IXGBE_TX_UNLOCK(txr); - } else { - err = drbr_enqueue(ifp, txr->br, m); + } else taskqueue_enqueue(que->tq, &txr->txq_task); - } return (err); } static int -ixgbe_mq_start_locked(struct ifnet *ifp, struct tx_ring *txr, struct mbuf *m) +ixgbe_mq_start_locked(struct ifnet *ifp, struct tx_ring *txr) { struct adapter *adapter = txr->adapter; struct mbuf *next; - int enqueued, err = 0; + int enqueued = 0, err = 0; if (((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) || - adapter->link_active == 0) { - if (m != NULL) - err = drbr_enqueue(ifp, txr->br, m); - return (err); - } - - enqueued = 0; - if (m != NULL) { - err = drbr_enqueue(ifp, txr->br, m); - if (err) { - return (err); - } - } + adapter->link_active == 0) + return (ENETDOWN); /* Process the queue */ +#if __FreeBSD_version < 901504 + next = drbr_dequeue(ifp, txr->br); + while (next != NULL) { + if ((err = ixgbe_xmit(txr, &next)) != 0) { + if (next != NULL) + err = drbr_enqueue(ifp, txr->br, next); +#else while ((next = drbr_peek(ifp, txr->br)) != NULL) { if ((err = ixgbe_xmit(txr, &next)) != 0) { if (next == NULL) { @@ -849,16 +844,20 @@ ixgbe_mq_start_locked(struct ifnet *ifp, } else { drbr_putback(ifp, txr->br, next); } +#endif break; } +#if __FreeBSD_version >= 901504 drbr_advance(ifp, txr->br); +#endif enqueued++; /* Send a copy of the frame to the BPF listener */ ETHER_BPF_MTAP(ifp, next); if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) break; - if (txr->tx_avail < IXGBE_TX_OP_THRESHOLD) - ixgbe_txeof(txr); +#if __FreeBSD_version < 901504 + next = drbr_dequeue(ifp, txr->br); +#endif } if (enqueued > 0) { @@ -885,7 +884,7 @@ ixgbe_deferred_mq_start(void *arg, int p IXGBE_TX_LOCK(txr); if (!drbr_empty(ifp, txr->br)) - ixgbe_mq_start_locked(ifp, txr, NULL); + ixgbe_mq_start_locked(ifp, txr); IXGBE_TX_UNLOCK(txr); } @@ -1418,20 +1417,19 @@ ixgbe_handle_que(void *context, int pend ixgbe_txeof(txr); #ifndef IXGBE_LEGACY_TX if (!drbr_empty(ifp, txr->br)) - ixgbe_mq_start_locked(ifp, txr, NULL); + ixgbe_mq_start_locked(ifp, txr); #else if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) ixgbe_start_locked(txr, ifp); #endif IXGBE_TX_UNLOCK(txr); - if (more) { - taskqueue_enqueue(que->tq, &que->que_task); - return; - } } /* Reenable this interrupt */ - ixgbe_enable_queue(adapter, que->msix); + if (que->res != NULL) + ixgbe_enable_queue(adapter, que->msix); + else + ixgbe_enable_intr(adapter); return; } @@ -1448,9 +1446,10 @@ ixgbe_legacy_irq(void *arg) struct ix_queue *que = arg; struct adapter *adapter = que->adapter; struct ixgbe_hw *hw = &adapter->hw; + struct ifnet *ifp = adapter->ifp; struct tx_ring *txr = adapter->tx_rings; - bool more_tx, more_rx; - u32 reg_eicr, loop = MAX_LOOP; + bool more; + u32 reg_eicr; reg_eicr = IXGBE_READ_REG(hw, IXGBE_EICR); @@ -1461,17 +1460,19 @@ ixgbe_legacy_irq(void *arg) return; } - more_rx = ixgbe_rxeof(que); + more = ixgbe_rxeof(que); IXGBE_TX_LOCK(txr); - do { - more_tx = ixgbe_txeof(txr); - } while (loop-- && more_tx); + ixgbe_txeof(txr); +#ifdef IXGBE_LEGACY_TX + if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) + ixgbe_start_locked(txr, ifp); +#else + if (!drbr_empty(ifp, txr->br)) + ixgbe_mq_start_locked(ifp, txr); +#endif IXGBE_TX_UNLOCK(txr); - if (more_rx || more_tx) - taskqueue_enqueue(que->tq, &que->que_task); - /* Check for fan failure */ if ((hw->phy.media_type == ixgbe_media_type_copper) && (reg_eicr & IXGBE_EICR_GPI_SDP1)) { @@ -1484,7 +1485,10 @@ ixgbe_legacy_irq(void *arg) if (reg_eicr & IXGBE_EICR_LSC) taskqueue_enqueue(adapter->tq, &adapter->link_task); - ixgbe_enable_intr(adapter); + if (more) + taskqueue_enqueue(que->tq, &que->que_task); + else + ixgbe_enable_intr(adapter); return; } @@ -1499,29 +1503,26 @@ ixgbe_msix_que(void *arg) { struct ix_queue *que = arg; struct adapter *adapter = que->adapter; + struct ifnet *ifp = adapter->ifp; struct tx_ring *txr = que->txr; struct rx_ring *rxr = que->rxr; - bool more_tx, more_rx; + bool more; u32 newitr = 0; ixgbe_disable_queue(adapter, que->msix); ++que->irqs; - more_rx = ixgbe_rxeof(que); + more = ixgbe_rxeof(que); IXGBE_TX_LOCK(txr); - more_tx = ixgbe_txeof(txr); - /* - ** Make certain that if the stack - ** has anything queued the task gets - ** scheduled to handle it. - */ + ixgbe_txeof(txr); #ifdef IXGBE_LEGACY_TX - if (!IFQ_DRV_IS_EMPTY(&adapter->ifp->if_snd)) + if (!IFQ_DRV_IS_EMPTY(ifp->if_snd)) + ixgbe_start_locked(txr, ifp); #else - if (!drbr_empty(adapter->ifp, txr->br)) + if (!drbr_empty(ifp, txr->br)) + ixgbe_mq_start_locked(ifp, txr); #endif - more_tx = 1; IXGBE_TX_UNLOCK(txr); /* Do AIM now? */ @@ -1575,9 +1576,9 @@ ixgbe_msix_que(void *arg) rxr->packets = 0; no_calc: - if (more_tx || more_rx) + if (more) taskqueue_enqueue(que->tq, &que->que_task); - else /* Reenable this interrupt */ + else ixgbe_enable_queue(adapter, que->msix); return; } @@ -2062,7 +2063,7 @@ ixgbe_local_timer(void *arg) (paused == 0)) ++hung; else if (txr->queue_status == IXGBE_QUEUE_WORKING) - taskqueue_enqueue(que->tq, &que->que_task); + taskqueue_enqueue(que->tq, &txr->txq_task); } /* Only truely watchdog if all queues show hung */ if (hung == adapter->num_queues) @@ -2149,9 +2150,14 @@ ixgbe_stop(void *arg) ixgbe_reset_hw(hw); hw->adapter_stopped = FALSE; ixgbe_stop_adapter(hw); - /* Turn off the laser */ - if (hw->phy.multispeed_fiber) - ixgbe_disable_tx_laser(hw); + if (hw->mac.type == ixgbe_mac_82599EB) + ixgbe_stop_mac_link_on_d3_82599(hw); + /* Turn off the laser - noop with no optics */ + ixgbe_disable_tx_laser(hw); + + /* Update the stack */ + adapter->link_up = FALSE; + ixgbe_update_link_status(adapter); /* reprogram the RAR[0] in case user changed it. */ ixgbe_set_rar(&adapter->hw, 0, adapter->hw.mac.addr, 0, IXGBE_RAH_AV); @@ -2603,7 +2609,11 @@ ixgbe_setup_interface(device_t dev, stru return (-1); } if_initname(ifp, device_get_name(dev), device_get_unit(dev)); +#if __FreeBSD_version < 1000025 + ifp->if_baudrate = 1000000000; +#else if_initbaudrate(ifp, IF_Gbps(10)); +#endif ifp->if_init = ixgbe_init; ifp->if_softc = adapter; ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; @@ -2614,6 +2624,8 @@ ixgbe_setup_interface(device_t dev, stru #else ifp->if_start = ixgbe_start; IFQ_SET_MAXLEN(&ifp->if_snd, adapter->num_tx_desc - 2); + ifp->if_snd.ifq_drv_maxlen = adapter->num_tx_desc - 2; + IFQ_SET_READY(&ifp->if_snd); #endif ether_ifattach(ifp, adapter->hw.mac.addr); @@ -3557,7 +3569,7 @@ ixgbe_atr(struct tx_ring *txr, struct mb * tx_buffer is put back on the free queue. * **********************************************************************/ -static bool +static void ixgbe_txeof(struct tx_ring *txr) { struct adapter *adapter = txr->adapter; @@ -3600,13 +3612,13 @@ ixgbe_txeof(struct tx_ring *txr) netmap_tx_irq(ifp, txr->me | (NETMAP_LOCKED_ENTER|NETMAP_LOCKED_EXIT)); } - return FALSE; + return; } #endif /* DEV_NETMAP */ if (txr->tx_avail == txr->num_desc) { txr->queue_status = IXGBE_QUEUE_IDLE; - return FALSE; + return; } /* Get work starting point */ @@ -3700,12 +3712,10 @@ ixgbe_txeof(struct tx_ring *txr) if ((!processed) && ((ticks - txr->watchdog_time) > IXGBE_WATCHDOG)) txr->queue_status = IXGBE_QUEUE_HUNG; - if (txr->tx_avail == txr->num_desc) { + if (txr->tx_avail == txr->num_desc) txr->queue_status = IXGBE_QUEUE_IDLE; - return (FALSE); - } - return TRUE; + return; } /********************************************************************* @@ -4387,6 +4397,7 @@ ixgbe_rxeof(struct ix_queue *que) if (netmap_rx_irq(ifp, rxr->me | NETMAP_LOCKED_ENTER, &processed)) return (FALSE); #endif /* DEV_NETMAP */ + for (i = rxr->next_to_check; count != 0;) { struct mbuf *sendmp, *mp; u32 rsc, ptype; @@ -4576,15 +4587,12 @@ next_desc: IXGBE_RX_UNLOCK(rxr); /* - ** We still have cleaning to do? - ** Schedule another interrupt if so. + ** Still have cleaning to do? */ - if ((staterr & IXGBE_RXD_STAT_DD) != 0) { - ixgbe_rearm_queues(adapter, (u64)(1 << que->msix)); + if ((staterr & IXGBE_RXD_STAT_DD) != 0) return (TRUE); - } - - return (FALSE); + else + return (FALSE); } @@ -4833,6 +4841,111 @@ ixgbe_write_pci_cfg(struct ixgbe_hw *hw, } /* +** Get the width and transaction speed of +** the slot this adapter is plugged into. +*/ +static void +ixgbe_get_slot_info(struct ixgbe_hw *hw) +{ + device_t dev = ((struct ixgbe_osdep *)hw->back)->dev; + struct ixgbe_mac_info *mac = &hw->mac; + u16 link; + u32 offset; + + /* For most devices simply call the shared code routine */ + if (hw->device_id != IXGBE_DEV_ID_82599_SFP_SF_QP) { + ixgbe_get_bus_info(hw); + goto display; + } + + /* + ** For the Quad port adapter we need to parse back + ** up the PCI tree to find the speed of the expansion + ** slot into which this adapter is plugged. A bit more work. + */ + dev = device_get_parent(device_get_parent(dev)); +#ifdef IXGBE_DEBUG + device_printf(dev, "parent pcib = %x,%x,%x\n", + pci_get_bus(dev), pci_get_slot(dev), pci_get_function(dev)); +#endif + dev = device_get_parent(device_get_parent(dev)); +#ifdef IXGBE_DEBUG + device_printf(dev, "slot pcib = %x,%x,%x\n", + pci_get_bus(dev), pci_get_slot(dev), pci_get_function(dev)); +#endif + /* Now get the PCI Express Capabilities offset */ + pci_find_cap(dev, PCIY_EXPRESS, &offset); + /* ...and read the Link Status Register */ + link = pci_read_config(dev, offset + PCIER_LINK_STA, 2); + switch (link & IXGBE_PCI_LINK_WIDTH) { + case IXGBE_PCI_LINK_WIDTH_1: + hw->bus.width = ixgbe_bus_width_pcie_x1; + break; + case IXGBE_PCI_LINK_WIDTH_2: + hw->bus.width = ixgbe_bus_width_pcie_x2; + break; + case IXGBE_PCI_LINK_WIDTH_4: + hw->bus.width = ixgbe_bus_width_pcie_x4; + break; + case IXGBE_PCI_LINK_WIDTH_8: + hw->bus.width = ixgbe_bus_width_pcie_x8; + break; + default: + hw->bus.width = ixgbe_bus_width_unknown; + break; + } + + switch (link & IXGBE_PCI_LINK_SPEED) { + case IXGBE_PCI_LINK_SPEED_2500: + hw->bus.speed = ixgbe_bus_speed_2500; + break; + case IXGBE_PCI_LINK_SPEED_5000: + hw->bus.speed = ixgbe_bus_speed_5000; + break; + case IXGBE_PCI_LINK_SPEED_8000: + hw->bus.speed = ixgbe_bus_speed_8000; + break; + default: + hw->bus.speed = ixgbe_bus_speed_unknown; + break; + } + + mac->ops.set_lan_id(hw); + +display: + device_printf(dev,"PCI Express Bus: Speed %s %s\n", + ((hw->bus.speed == ixgbe_bus_speed_8000) ? "8.0GT/s": + (hw->bus.speed == ixgbe_bus_speed_5000) ? "5.0GT/s": + (hw->bus.speed == ixgbe_bus_speed_2500) ? "2.5GT/s":"Unknown"), + (hw->bus.width == ixgbe_bus_width_pcie_x8) ? "Width x8" : + (hw->bus.width == ixgbe_bus_width_pcie_x4) ? "Width x4" : + (hw->bus.width == ixgbe_bus_width_pcie_x1) ? "Width x1" : + ("Unknown")); + + if ((hw->device_id != IXGBE_DEV_ID_82599_SFP_SF_QP) && + ((hw->bus.width <= ixgbe_bus_width_pcie_x4) && + (hw->bus.speed == ixgbe_bus_speed_2500))) { + device_printf(dev, "PCI-Express bandwidth available" + " for this card\n is not sufficient for" + " optimal performance.\n"); + device_printf(dev, "For optimal performance a x8 " + "PCIE, or x4 PCIE Gen2 slot is required.\n"); + } + if ((hw->device_id == IXGBE_DEV_ID_82599_SFP_SF_QP) && + ((hw->bus.width <= ixgbe_bus_width_pcie_x8) && + (hw->bus.speed < ixgbe_bus_speed_8000))) { + device_printf(dev, "PCI-Express bandwidth available" + " for this card\n is not sufficient for" + " optimal performance.\n"); + device_printf(dev, "For optimal performance a x8 " + "PCIE Gen3 slot is required.\n"); + } + + return; +} + + +/* ** Setup the correct IVAR register for a particular MSIX interrupt ** (yes this is all very magic and confusing :) ** - entry is the register array entry @@ -5633,6 +5746,7 @@ ixgbe_set_advertise(SYSCTL_HANDLER_ARGS) /* ** Thermal Shutdown Trigger ** - cause a Thermal Overtemp IRQ +** - this now requires firmware enabling */ static int ixgbe_set_thermal_test(SYSCTL_HANDLER_ARGS) Modified: head/sys/dev/ixgbe/ixgbe.h ============================================================================== --- head/sys/dev/ixgbe/ixgbe.h Tue Jun 18 21:24:07 2013 (r251963) +++ head/sys/dev/ixgbe/ixgbe.h Tue Jun 18 21:28:19 2013 (r251964) @@ -1,6 +1,6 @@ /****************************************************************************** - Copyright (c) 2001-2012, Intel Corporation + Copyright (c) 2001-2013, Intel Corporation All rights reserved. Redistribution and use in source and binary forms, with or without @@ -213,6 +213,7 @@ #define IXGBE_BULK_LATENCY 1200 #define IXGBE_LINK_ITR 2000 + /* ***************************************************************************** * vendor_info_array @@ -230,6 +231,7 @@ typedef struct _ixgbe_vendor_info_t { unsigned int index; } ixgbe_vendor_info_t; + /* This is used to get SFP+ module data */ struct ixgbe_i2c_req { u8 dev_addr; @@ -456,6 +458,7 @@ struct adapter { /* Multicast array memory */ u8 *mta; + /* Misc stats maintained by the driver */ unsigned long dropped_pkts; unsigned long mbuf_defrag_failed; @@ -467,6 +470,7 @@ struct adapter { struct ixgbe_hw_stats stats; }; + /* Precision Time Sync (IEEE 1588) defines */ #define ETHERTYPE_IEEE1588 0x88F7 #define PICOSECS_PER_TICK 20833 @@ -489,6 +493,10 @@ struct adapter { #define IXGBE_CORE_LOCK_ASSERT(_sc) mtx_assert(&(_sc)->core_mtx, MA_OWNED) #define IXGBE_TX_LOCK_ASSERT(_sc) mtx_assert(&(_sc)->tx_mtx, MA_OWNED) +/* For backward compatibility */ +#if !defined(PCIER_LINK_STA) +#define PCIER_LINK_STA PCIR_EXPRESS_LINK_STA +#endif static inline bool ixgbe_is_sfp(struct ixgbe_hw *hw) Modified: head/sys/dev/ixgbe/ixgbe_82598.c ============================================================================== --- head/sys/dev/ixgbe/ixgbe_82598.c Tue Jun 18 21:24:07 2013 (r251963) +++ head/sys/dev/ixgbe/ixgbe_82598.c Tue Jun 18 21:28:19 2013 (r251964) @@ -166,6 +166,8 @@ s32 ixgbe_init_ops_82598(struct ixgbe_hw /* Manageability interface */ mac->ops.set_fw_drv_ver = NULL; + mac->ops.get_rtrup2tc = NULL; + return ret_val; } @@ -1115,10 +1117,19 @@ static s32 ixgbe_read_i2c_phy_82598(stru u16 sfp_addr = 0; u16 sfp_data = 0; u16 sfp_stat = 0; + u16 gssr; u32 i; DEBUGFUNC("ixgbe_read_i2c_phy_82598"); + if (IXGBE_READ_REG(hw, IXGBE_STATUS) & IXGBE_STATUS_LAN_ID_1) + gssr = IXGBE_GSSR_PHY1_SM; + else + gssr = IXGBE_GSSR_PHY0_SM; + + if (hw->mac.ops.acquire_swfw_sync(hw, gssr) != IXGBE_SUCCESS) + return IXGBE_ERR_SWFW_SYNC; + if (hw->phy.type == ixgbe_phy_nl) { /* * NetLogic phy SDA/SCL registers are at addresses 0xC30A to @@ -1127,17 +1138,17 @@ static s32 ixgbe_read_i2c_phy_82598(stru */ sfp_addr = (dev_addr << 8) + byte_offset; sfp_addr = (sfp_addr | IXGBE_I2C_EEPROM_READ_MASK); - hw->phy.ops.write_reg(hw, - IXGBE_MDIO_PMA_PMD_SDA_SCL_ADDR, - IXGBE_MDIO_PMA_PMD_DEV_TYPE, - sfp_addr); + hw->phy.ops.write_reg_mdi(hw, + IXGBE_MDIO_PMA_PMD_SDA_SCL_ADDR, + IXGBE_MDIO_PMA_PMD_DEV_TYPE, + sfp_addr); /* Poll status */ for (i = 0; i < 100; i++) { - hw->phy.ops.read_reg(hw, - IXGBE_MDIO_PMA_PMD_SDA_SCL_STAT, - IXGBE_MDIO_PMA_PMD_DEV_TYPE, - &sfp_stat); + hw->phy.ops.read_reg_mdi(hw, + IXGBE_MDIO_PMA_PMD_SDA_SCL_STAT, + IXGBE_MDIO_PMA_PMD_DEV_TYPE, + &sfp_stat); sfp_stat = sfp_stat & IXGBE_I2C_EEPROM_STATUS_MASK; if (sfp_stat != IXGBE_I2C_EEPROM_STATUS_IN_PROGRESS) break; @@ -1151,8 +1162,8 @@ static s32 ixgbe_read_i2c_phy_82598(stru } /* Read data */ - hw->phy.ops.read_reg(hw, IXGBE_MDIO_PMA_PMD_SDA_SCL_DATA, - IXGBE_MDIO_PMA_PMD_DEV_TYPE, &sfp_data); + hw->phy.ops.read_reg_mdi(hw, IXGBE_MDIO_PMA_PMD_SDA_SCL_DATA, + IXGBE_MDIO_PMA_PMD_DEV_TYPE, &sfp_data); *eeprom_data = (u8)(sfp_data >> 8); } else { @@ -1160,6 +1171,7 @@ static s32 ixgbe_read_i2c_phy_82598(stru } out: + hw->mac.ops.release_swfw_sync(hw, gssr); return status; } Modified: head/sys/dev/ixgbe/ixgbe_82599.c ============================================================================== --- head/sys/dev/ixgbe/ixgbe_82599.c Tue Jun 18 21:24:07 2013 (r251963) +++ head/sys/dev/ixgbe/ixgbe_82599.c Tue Jun 18 21:28:19 2013 (r251964) @@ -77,7 +77,7 @@ void ixgbe_init_mac_link_ops_82599(struc * and MNG not enabled */ if ((mac->ops.get_media_type(hw) == ixgbe_media_type_fiber) && - !(ixgbe_mng_enabled(hw))) { + !hw->mng_fw_enabled) { mac->ops.disable_tx_laser = &ixgbe_disable_tx_laser_multispeed_fiber; mac->ops.enable_tx_laser = @@ -180,11 +180,13 @@ s32 ixgbe_setup_sfp_modules_82599(struct goto setup_sfp_out; } - hw->eeprom.ops.read(hw, ++data_offset, &data_value); + if (hw->eeprom.ops.read(hw, ++data_offset, &data_value)) + goto setup_sfp_err; while (data_value != 0xffff) { IXGBE_WRITE_REG(hw, IXGBE_CORECTL, data_value); IXGBE_WRITE_FLUSH(hw); - hw->eeprom.ops.read(hw, ++data_offset, &data_value); + if (hw->eeprom.ops.read(hw, ++data_offset, &data_value)) + goto setup_sfp_err; } /* Release the semaphore */ @@ -229,6 +231,15 @@ s32 ixgbe_setup_sfp_modules_82599(struct setup_sfp_out: return ret_val; + +setup_sfp_err: + /* Release the semaphore */ + hw->mac.ops.release_swfw_sync(hw, IXGBE_GSSR_MAC_CSR_SM); + /* Delay obtaining semaphore again to allow FW access */ + msec_delay(hw->eeprom.semaphore_delay); + ERROR_REPORT2(IXGBE_ERROR_INVALID_STATE, + "eeprom read at offset %d failed", data_offset); + return IXGBE_ERR_PHY; } /** @@ -314,6 +325,11 @@ s32 ixgbe_init_ops_82599(struct ixgbe_hw mac->ops.set_fw_drv_ver = &ixgbe_set_fw_drv_ver_generic; + mac->ops.get_rtrup2tc = &ixgbe_dcb_get_rtrup2tc_generic; + + /* Cache if MNG FW is up */ + hw->mng_fw_enabled = ixgbe_mng_enabled(hw); + return ret_val; } @@ -479,6 +495,29 @@ out: } /** + * ixgbe_stop_mac_link_on_d3_82599 - Disables link on D3 + * @hw: pointer to hardware structure + * + * Disables link during D3 power down sequence. + * + **/ +void ixgbe_stop_mac_link_on_d3_82599(struct ixgbe_hw *hw) +{ + u32 autoc2_reg; + u16 ee_ctrl_2 = 0; + + DEBUGFUNC("ixgbe_stop_mac_link_on_d3_82599"); + ixgbe_read_eeprom(hw, IXGBE_EEPROM_CTRL_2, &ee_ctrl_2); + + if (!hw->mng_fw_enabled && !hw->wol_enabled && + ee_ctrl_2 & IXGBE_EEPROM_CCD_BIT) { + autoc2_reg = IXGBE_READ_REG(hw, IXGBE_AUTOC2); + autoc2_reg |= IXGBE_AUTOC2_LINK_DISABLE_ON_D3_MASK; + IXGBE_WRITE_REG(hw, IXGBE_AUTOC2, autoc2_reg); + } +} + +/** * ixgbe_start_mac_link_82599 - Setup MAC link settings * @hw: pointer to hardware structure * @autoneg_wait_to_complete: TRUE when waiting for completion is needed @@ -1122,7 +1161,8 @@ s32 ixgbe_reset_hw_82599(struct ixgbe_hw { ixgbe_link_speed link_speed; s32 status; - u32 ctrl, i, autoc, autoc2; + u32 ctrl, i, autoc2; + u32 curr_lms; bool link_up = FALSE; DEBUGFUNC("ixgbe_reset_hw_82599"); @@ -1156,6 +1196,13 @@ s32 ixgbe_reset_hw_82599(struct ixgbe_hw if (hw->phy.reset_disable == FALSE && hw->phy.ops.reset != NULL) hw->phy.ops.reset(hw); + /* remember AUTOC from before we reset */ + if (hw->mac.cached_autoc) + curr_lms = hw->mac.cached_autoc & IXGBE_AUTOC_LMS_MASK; + else + curr_lms = IXGBE_READ_REG(hw, IXGBE_AUTOC) & + IXGBE_AUTOC_LMS_MASK; + mac_reset_top: /* * Issue global reset to the MAC. Needs to be SW reset if link is up. @@ -1204,7 +1251,7 @@ mac_reset_top: * stored off yet. Otherwise restore the stored original * values since the reset operation sets back to defaults. */ - autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC); + hw->mac.cached_autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC); autoc2 = IXGBE_READ_REG(hw, IXGBE_AUTOC2); /* Enable link if disabled in NVM */ @@ -1215,12 +1262,24 @@ mac_reset_top: } if (hw->mac.orig_link_settings_stored == FALSE) { - hw->mac.orig_autoc = autoc; + hw->mac.orig_autoc = hw->mac.cached_autoc; hw->mac.orig_autoc2 = autoc2; - hw->mac.cached_autoc = autoc; hw->mac.orig_link_settings_stored = TRUE; } else { - if (autoc != hw->mac.orig_autoc) { + + /* If MNG FW is running on a multi-speed device that + * doesn't autoneg with out driver support we need to + * leave LMS in the state it was before we MAC reset. + * Likewise if we support WoL we don't want change the + * LMS state. + */ + if ((hw->phy.multispeed_fiber && hw->mng_fw_enabled) || + hw->wol_enabled) + hw->mac.orig_autoc = + (hw->mac.orig_autoc & ~IXGBE_AUTOC_LMS_MASK) | + curr_lms; + + if (hw->mac.cached_autoc != hw->mac.orig_autoc) { /* Need SW/FW semaphore around AUTOC writes if LESM is * on, likewise reset_pipeline requires us to hold * this lock as it also writes to AUTOC. @@ -2275,11 +2334,11 @@ s32 ixgbe_enable_rx_dma_82599(struct ixg * Returns IXGBE_ERR_EEPROM_VERSION if the FW is not present or * if the FW version is not supported. **/ -s32 ixgbe_verify_fw_version_82599(struct ixgbe_hw *hw) +static s32 ixgbe_verify_fw_version_82599(struct ixgbe_hw *hw) { s32 status = IXGBE_ERR_EEPROM_VERSION; u16 fw_offset, fw_ptp_cfg_offset; - u16 fw_version = 0; + u16 fw_version; DEBUGFUNC("ixgbe_verify_fw_version_82599"); @@ -2290,22 +2349,37 @@ s32 ixgbe_verify_fw_version_82599(struct } /* get the offset to the Firmware Module block */ - hw->eeprom.ops.read(hw, IXGBE_FW_PTR, &fw_offset); + if (hw->eeprom.ops.read(hw, IXGBE_FW_PTR, &fw_offset)) { + ERROR_REPORT2(IXGBE_ERROR_INVALID_STATE, + "eeprom read at offset %d failed", IXGBE_FW_PTR); + return IXGBE_ERR_EEPROM_VERSION; + } if ((fw_offset == 0) || (fw_offset == 0xFFFF)) goto fw_version_out; /* get the offset to the Pass Through Patch Configuration block */ - hw->eeprom.ops.read(hw, (fw_offset + + if (hw->eeprom.ops.read(hw, (fw_offset + IXGBE_FW_PASSTHROUGH_PATCH_CONFIG_PTR), - &fw_ptp_cfg_offset); + &fw_ptp_cfg_offset)) { + ERROR_REPORT2(IXGBE_ERROR_INVALID_STATE, + "eeprom read at offset %d failed", + fw_offset + + IXGBE_FW_PASSTHROUGH_PATCH_CONFIG_PTR); + return IXGBE_ERR_EEPROM_VERSION; + } if ((fw_ptp_cfg_offset == 0) || (fw_ptp_cfg_offset == 0xFFFF)) goto fw_version_out; /* get the firmware version */ - hw->eeprom.ops.read(hw, (fw_ptp_cfg_offset + - IXGBE_FW_PATCH_VERSION_4), &fw_version); + if (hw->eeprom.ops.read(hw, (fw_ptp_cfg_offset + + IXGBE_FW_PATCH_VERSION_4), &fw_version)) { + ERROR_REPORT2(IXGBE_ERROR_INVALID_STATE, + "eeprom read at offset %d failed", + fw_ptp_cfg_offset + IXGBE_FW_PATCH_VERSION_4); + return IXGBE_ERR_EEPROM_VERSION; + } *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 21:29:07 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id AA16D42B for ; Tue, 18 Jun 2013 21:29:07 +0000 (UTC) (envelope-from jroberson@jroberson.net) Received: from mail-pd0-f171.google.com (mail-pd0-f171.google.com [209.85.192.171]) by mx1.freebsd.org (Postfix) with ESMTP id 84C1B1609 for ; Tue, 18 Jun 2013 21:29:07 +0000 (UTC) Received: by mail-pd0-f171.google.com with SMTP id y14so4365289pdi.16 for ; Tue, 18 Jun 2013 14:29:07 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=date:from:x-x-sender:to:cc:subject:in-reply-to:message-id :references:user-agent:mime-version:content-type:x-gm-message-state; bh=k3iDFc0wZJ+EaNtFRc3LDz7ilqThRPbHK+Qt0oChQ1M=; b=I2eSWSfolJBwiO2yBvWHmqW9q6K8SxF0QKvl7dvPx65GgSzbcB6Dhe875Pbt1WJ8Xb jyOgquzpaPgeXLXR0SWEmIk8WRRQrAjRe5QC0v6un2BYAwIj9ZcvtxRQ5ZlcaR4dZ4D1 o49SktBv3jdNH0nu24dbXFn2Z5CjNVgN2Qc3DpifmpGYX+8lKQuxu5KaNCZ1Nxq3bWro Fxp4chNQxvdBN2rI+vvlCaU4IfvLx7k0BOrQiCHKcDoqA3DWbtSdOCfFA1tVO8yjfZR6 vcav5JU4Vt6SWKfCVRI+ynr31UECWj9eHKiCI52YmpJoTLkppZKpwdqLKSODnNTT0sYV X7cQ== X-Received: by 10.68.4.9 with SMTP id g9mr19018490pbg.217.1371590946902; Tue, 18 Jun 2013 14:29:06 -0700 (PDT) Received: from rrcs-66-91-135-210.west.biz.rr.com (rrcs-66-91-135-210.west.biz.rr.com. [66.91.135.210]) by mx.google.com with ESMTPSA id xj9sm19869773pbc.16.2013.06.18.14.29.04 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Tue, 18 Jun 2013 14:29:06 -0700 (PDT) Date: Tue, 18 Jun 2013 11:21:51 -1000 (HST) From: Jeff Roberson X-X-Sender: jroberson@desktop To: Alfred Perlstein Subject: Re: svn commit: r251894 - in head: lib/libmemstat sys/vm In-Reply-To: <51C04C77.7010907@mu.org> Message-ID: References: <201306180450.r5I4oKoY091256@svn.freebsd.org> <51C01964.1000006@freebsd.org> <20130618083733.GQ1400@FreeBSD.org> <51C04C77.7010907@mu.org> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Gm-Message-State: ALoCoQm5WKNlCTf/6wkydreJrxzV89QYhQDme6lZJzk/wHz2kkRc+Ag2OTzupzFU0EqHAYthN5V8 Cc: src-committers@freebsd.org, Andre Oppermann , svn-src-all@freebsd.org, Gleb Smirnoff , svn-src-head@freebsd.org, Jeff Roberson X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 21:29:07 -0000 On Tue, 18 Jun 2013, Alfred Perlstein wrote: > On 6/18/13 4:37 AM, Gleb Smirnoff wrote: >> On Tue, Jun 18, 2013 at 10:25:08AM +0200, Andre Oppermann wrote: >> A> There used to be a problem with per CPU caches accumulating large >> amounts >> A> of items without freeing back to the global (or socket) pool. >> A> >> A> Do these updates to UMA change this situation and/or do you have further >> A> improvements coming up? >> >> This is especially a problem with ZFS, which utilizes UMA extensively. >> >> IMHO, we need a flag for uma_zcreate() that would disable per CPU caches, >> so >> that certain zones (ZFS at least) would have them off. >> >> It might be a good idea to force this flag on every zone that has >> allocation >= >> then the page size. >> > What about people running with 256GB+ ram? Do they also want the per cpu > caches off? If you look at the new system there is a static threshold for the initial item size required for different sized per-cpu buckets. What might make sense is to tune this size based on available memory. For what it's worth I looked at solaris settings and they cache roughly 4x as much on a per-cpu basis. The new system should tend to cache less of large and infrequent allocations vs the old system. I can't say yet whether it is still a problem. I have an implementation of vmem to replace using vm_maps for kmem_map, buffer_map, etc. which may resolve the zfs allocation problems. I hope to get this in over the next few weeks. Thanks, Jeff > > -- > Alfred Perlstein > VP Software Engineering, iXsystems > From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 21:35:38 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id EADE4614; Tue, 18 Jun 2013 21:35:38 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id DD8981643; Tue, 18 Jun 2013 21:35:38 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5ILZckc022625; Tue, 18 Jun 2013 21:35:38 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5ILZc0r022622; Tue, 18 Jun 2013 21:35:38 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306182135.r5ILZc0r022622@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 21:35:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251965 - head/usr.sbin/bsdconfig/startup X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 21:35:39 -0000 Author: dteske Date: Tue Jun 18 21:35:38 2013 New Revision: 251965 URL: http://svnweb.freebsd.org/changeset/base/251965 Log: Comments. Modified: head/usr.sbin/bsdconfig/startup/rcconf head/usr.sbin/bsdconfig/startup/rcdelete head/usr.sbin/bsdconfig/startup/rcvar Modified: head/usr.sbin/bsdconfig/startup/rcconf ============================================================================== --- head/usr.sbin/bsdconfig/startup/rcconf Tue Jun 18 21:28:19 2013 (r251964) +++ head/usr.sbin/bsdconfig/startup/rcconf Tue Jun 18 21:35:38 2013 (r251965) @@ -222,6 +222,9 @@ f_dialog_title "$msg_view_edit_startup_c f_dialog_backtitle "${ipgm:+bsdconfig }$pgm" f_mustberoot_init +# +# Launch application main menu +# while :; do dialog_menu_main retval=$? Modified: head/usr.sbin/bsdconfig/startup/rcdelete ============================================================================== --- head/usr.sbin/bsdconfig/startup/rcdelete Tue Jun 18 21:28:19 2013 (r251964) +++ head/usr.sbin/bsdconfig/startup/rcdelete Tue Jun 18 21:35:38 2013 (r251965) @@ -338,6 +338,9 @@ f_startup_rcconf_map_expand RCCONF_MAP # Generate RCCONF_MENU_LIST from $RCCONF_MAP dialog_create_main +# +# Launch application main menu +# while :; do dialog_menu_main retval=$? Modified: head/usr.sbin/bsdconfig/startup/rcvar ============================================================================== --- head/usr.sbin/bsdconfig/startup/rcvar Tue Jun 18 21:28:19 2013 (r251964) +++ head/usr.sbin/bsdconfig/startup/rcvar Tue Jun 18 21:35:38 2013 (r251965) @@ -190,6 +190,9 @@ f_dialog_title "$msg_toggle_startup_serv f_dialog_backtitle "${ipgm:+bsdconfig }$pgm" f_mustberoot_init +# +# Launch application main menu +# while :; do dialog_menu_main || f_die f_dialog_menutag_fetch mtag From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 21:41:07 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 5A198A46; Tue, 18 Jun 2013 21:41:07 +0000 (UTC) (envelope-from peter@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4C91A16A0; Tue, 18 Jun 2013 21:41:07 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5ILf7pr025293; Tue, 18 Jun 2013 21:41:07 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5ILf7MD025292; Tue, 18 Jun 2013 21:41:07 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306182141.r5ILf7MD025292@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 21:41:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251966 - head/tools/build/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 21:41:07 -0000 Author: peter Date: Tue Jun 18 21:41:06 2013 New Revision: 251966 URL: http://svnweb.freebsd.org/changeset/base/251966 Log: Teach delete-old how to clean up after WITH/WITHOUT_SVN{LITE} permutations. Modified: head/tools/build/mk/OptionalObsoleteFiles.inc Modified: head/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- head/tools/build/mk/OptionalObsoleteFiles.inc Tue Jun 18 21:35:38 2013 (r251965) +++ head/tools/build/mk/OptionalObsoleteFiles.inc Tue Jun 18 21:41:06 2013 (r251966) @@ -4317,3 +4317,27 @@ OLD_FILES+=usr/share/man/man8/wpa_cli.8. OLD_FILES+=usr/share/man/man8/wpa_passphrase.8.gz OLD_FILES+=usr/share/man/man8/wpa_supplicant.8.gz .endif + +.if ${MK_SVNLITE} == no || ${MK_SVN} == yes +OLD_FILES+=usr/bin/svnlite +OLD_FILES+=usr/bin/svnliteadmin +OLD_FILES+=usr/bin/svnlitedumpfilter +OLD_FILES+=usr/bin/svnlitelook +OLD_FILES+=usr/bin/svnlitemucc +OLD_FILES+=usr/bin/svnliterdump +OLD_FILES+=usr/bin/svnliteserve +OLD_FILES+=usr/bin/svnlitesync +OLD_FILES+=usr/bin/svnliteversion +.endif + +.if ${MK_SVN} == no +OLD_FILES+=usr/bin/svn +OLD_FILES+=usr/bin/svnadmin +OLD_FILES+=usr/bin/svndumpfilter +OLD_FILES+=usr/bin/svnlook +OLD_FILES+=usr/bin/svnmucc +OLD_FILES+=usr/bin/svnrdump +OLD_FILES+=usr/bin/svnserve +OLD_FILES+=usr/bin/svnsync +OLD_FILES+=usr/bin/svnversion +.endif From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 21:44:36 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id D560DC07; Tue, 18 Jun 2013 21:44:36 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C6E7216B2; Tue, 18 Jun 2013 21:44:36 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5ILia9K025846; Tue, 18 Jun 2013 21:44:36 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5ILiZTV025840; Tue, 18 Jun 2013 21:44:35 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306182144.r5ILiZTV025840@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 21:44:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251967 - in head/usr.sbin/bsdconfig: console console/include startup startup/include usermgmt usermgmt/include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 21:44:36 -0000 Author: dteske Date: Tue Jun 18 21:44:35 2013 New Revision: 251967 URL: http://svnweb.freebsd.org/changeset/base/251967 Log: Perform some code consolidation and add some additional error checking/reporting. (similar to SVN revisions 251919 and 251928) Modified: head/usr.sbin/bsdconfig/console/console head/usr.sbin/bsdconfig/console/include/messages.subr head/usr.sbin/bsdconfig/startup/include/messages.subr head/usr.sbin/bsdconfig/startup/startup head/usr.sbin/bsdconfig/usermgmt/include/messages.subr head/usr.sbin/bsdconfig/usermgmt/usermgmt Modified: head/usr.sbin/bsdconfig/console/console ============================================================================== --- head/usr.sbin/bsdconfig/console/console Tue Jun 18 21:41:06 2013 (r251966) +++ head/usr.sbin/bsdconfig/console/console Tue Jun 18 21:44:35 2013 (r251967) @@ -121,21 +121,22 @@ while :; do dialog_menu_main || f_die f_dialog_menutag_fetch mtag + command= case "$mtag" in - "X $msg_exit") break ;; - "2 $msg_font") # Choose an alternate screen font - $BSDCFG_LIBE/$APP_DIR/font ${USE_XDIALOG:+-X} ;; - "3 $msg_keymap") # Choose an alternate keyboard map - $BSDCFG_LIBE/$APP_DIR/keymap ${USE_XDIALOG:+-X} ;; - "4 $msg_repeat") # Set the rate at which keys repeat - $BSDCFG_LIBE/$APP_DIR/repeat ${USE_XDIALOG:+-X} ;; - "5 $msg_saver") # Configure the screen saver - $BSDCFG_LIBE/$APP_DIR/saver ${USE_XDIALOG:+-X} ;; - "6 $msg_screenmap") # Choose an alternate screenmap - $BSDCFG_LIBE/$APP_DIR/screenmap ${USE_XDIALOG:+-X} ;; - "7 $msg_ttys") # Choose console terminal type - $BSDCFG_LIBE/$APP_DIR/ttys ${USE_XDIALOG:+-X} ;; + "X $msg_exit") break ;; + "2 $msg_font") command=font ;; # Choose alternate screen font + "3 $msg_keymap") command=keymap ;; # Choose alt. keyboard map + "4 $msg_repeat") command=repeat ;; # Set key repeat rate + "5 $msg_saver") command=saver ;; # Configure the screen saver + "6 $msg_screenmap") command=screenmap ;; # Choose alternate screenmap + "7 $msg_ttys") command=ttys ;; # Choose console terminal type esac + + if [ "$command" ]; then + $BSDCFG_LIBE/$APP_DIR/$command ${USE_XDIALOG:+-X} ;; + else + f_die 1 "$msg_unknown_console_menu_selection" + fi done exit $SUCCESS Modified: head/usr.sbin/bsdconfig/console/include/messages.subr ============================================================================== --- head/usr.sbin/bsdconfig/console/include/messages.subr Tue Jun 18 21:41:06 2013 (r251966) +++ head/usr.sbin/bsdconfig/console/include/messages.subr Tue Jun 18 21:44:35 2013 (r251967) @@ -241,6 +241,7 @@ msg_ukrainian_koi8_u="Ukranian KOI8-U" msg_ukrainian_koi8_u_desc="Ukranian KOI8-U keymap" msg_ukrainian_koi8_u_koi8_r="Ukranian KOI8-U+KOI8-R" msg_ukrainian_koi8_u_koi8_r_desc="Ukranian KOI8-U+KOI8-R keymap (alter)" +msg_unknown_console_menu_selection="Unknown console menu selection" msg_unknown_font_selection="Unknown font selection" msg_unknown_keymap="Unknown keymap" msg_unknown_repeat_rate="Unknown repeat rate" Modified: head/usr.sbin/bsdconfig/startup/include/messages.subr ============================================================================== --- head/usr.sbin/bsdconfig/startup/include/messages.subr Tue Jun 18 21:41:06 2013 (r251966) +++ head/usr.sbin/bsdconfig/startup/include/messages.subr Tue Jun 18 21:44:35 2013 (r251967) @@ -104,6 +104,7 @@ msg_startup_dirs_desc="Set the list of d msg_svr4="SVR4" msg_svr4_desc="This host wants to be able to run SVR4 binaries." msg_toggle_startup_services="Toggle Startup Services" +msg_unknown_startup_menu_selection="Unknown startup menu selection" msg_value_required="Value Required" msg_view_details="View Details" msg_view_details_desc="Choose view details" Modified: head/usr.sbin/bsdconfig/startup/startup ============================================================================== --- head/usr.sbin/bsdconfig/startup/startup Tue Jun 18 21:41:06 2013 (r251966) +++ head/usr.sbin/bsdconfig/startup/startup Tue Jun 18 21:44:35 2013 (r251967) @@ -118,16 +118,19 @@ while :; do dialog_menu_main || f_die f_dialog_menutag_fetch mtag + command= case "$mtag" in - X) # Exit - break ;; - 1) # Toggle Startup Services - $BSDCFG_LIBE/$APP_DIR/rcvar ${USE_XDIALOG:+-X} ;; - 2) # View/Edit Startup Configuration - $BSDCFG_LIBE/$APP_DIR/rcconf ${USE_XDIALOG:+-X} ;; - 3) # Miscellaneous Startup Services - $BSDCFG_LIBE/$APP_DIR/misc ${USE_XDIALOG:+-X} ;; + X) break ;; + 1) command=rcvar ;; # Toggle Startup Services + 2) command=rcconf ;; # View/Edit Startup Configuration + 3) command=misc ;; # Miscellaneous Startup Services esac + + if [ "$command" ]; then + $BSDCFG_LIBE/$APP_DIR/$command ${USE_XDIALOG:+-X} ;; + else + f_die 1 "$msg_unknown_startup_menu_selection" + fi done exit $SUCCESS Modified: head/usr.sbin/bsdconfig/usermgmt/include/messages.subr ============================================================================== --- head/usr.sbin/bsdconfig/usermgmt/include/messages.subr Tue Jun 18 21:41:06 2013 (r251966) +++ head/usr.sbin/bsdconfig/usermgmt/include/messages.subr Tue Jun 18 21:44:35 2013 (r251967) @@ -105,6 +105,7 @@ msg_separated_by_commas="Separated by co msg_select_group_members_from_list="Select Group Members from a list" msg_select_login_shell="Select Login Shell" msg_shell="Shell" +msg_unknown_user_management_menu_selection="Unknown user management menu selection" msg_use_default_values_for_all_account_details="Use default values for all account details?" msg_user="User" msg_user_id="UID" Modified: head/usr.sbin/bsdconfig/usermgmt/usermgmt ============================================================================== --- head/usr.sbin/bsdconfig/usermgmt/usermgmt Tue Jun 18 21:41:06 2013 (r251966) +++ head/usr.sbin/bsdconfig/usermgmt/usermgmt Tue Jun 18 21:44:35 2013 (r251967) @@ -144,38 +144,26 @@ while :; do f_die fi + command= case "$mtag" in - X) # Exit - exit 0 - ;; - - 1) # Add User - $BSDCFG_LIBE/$APP_DIR/useradd ${USE_XDIALOG:+-X} - ;; - - 2) # Edit/View User - $BSDCFG_LIBE/$APP_DIR/useredit ${USE_XDIALOG:+-X} - ;; - - 3) # Delete User - $BSDCFG_LIBE/$APP_DIR/userdel ${USE_XDIALOG:+-X} - ;; - - 4) # Add Group - $BSDCFG_LIBE/$APP_DIR/groupadd ${USE_XDIALOG:+-X} - ;; - - 5) # Edit/View Group - $BSDCFG_LIBE/$APP_DIR/groupedit ${USE_XDIALOG:+-X} - ;; - - 6) # Delete Group - $BSDCFG_LIBE/$APP_DIR/groupdel ${USE_XDIALOG:+-X} - ;; - + X) break ;; + 1) command=useradd ;; # Add User + 2) command=useredit ;; # Edit/View User + 3) command=userdel ;; # Delete User + 4) command=groupadd ;; # Add Group + 5) command=groupedit ;; # Edit/View Group + 6) command=groupdel ;; # Delete Group esac + + if [ "$command" ]; then + $BSDCFG_LIBE/$APP_DIR/$command ${USE_XDIALOG:+-X} + else + f_die 1 "$msg_unknown_user_management_menu_selection" + fi done +exit $SUCCESS + ################################################################################ # END ################################################################################ From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 22:10:39 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id A116B799; Tue, 18 Jun 2013 22:10:39 +0000 (UTC) (envelope-from sjg@juniper.net) Received: from co1outboundpool.messaging.microsoft.com (co1ehsobe003.messaging.microsoft.com [216.32.180.186]) by mx1.freebsd.org (Postfix) with ESMTP id 71F2717BE; Tue, 18 Jun 2013 22:10:38 +0000 (UTC) Received: from mail172-co1-R.bigfish.com (10.243.78.235) by CO1EHSOBE024.bigfish.com (10.243.66.87) with Microsoft SMTP Server id 14.1.225.23; Tue, 18 Jun 2013 22:10:32 +0000 Received: from mail172-co1 (localhost [127.0.0.1]) by mail172-co1-R.bigfish.com (Postfix) with ESMTP id 3D4AD5C0381; Tue, 18 Jun 2013 22:10:32 +0000 (UTC) X-Forefront-Antispam-Report: CIP:66.129.224.50; KIP:(null); UIP:(null); IPV:NLI; H:P-EMHUB03-HQ.jnpr.net; RD:none; EFVD:NLI X-SpamScore: 6 X-BigFish: PS6(zzda00hdc73h1182kzz1f42h1ee6h1de0h1fdah1202h1e76h1d1ah1d2ah1fc6h1082kz8dhzz2fh2a8h668h839hd25hf0ah1288h12a5h12a9h12bdh12e5h137ah139eh13b6h1441h14ddh1504h1537h162dh1631h1758h1898h18e1h1946h19b5h1ad9h1b0ah1b88h1d0ch1d2eh1d3fh1de2h1dfeh1dffh1e23h1155h) Received-SPF: pass (mail172-co1: domain of juniper.net designates 66.129.224.50 as permitted sender) client-ip=66.129.224.50; envelope-from=sjg@juniper.net; helo=P-EMHUB03-HQ.jnpr.net ; -HQ.jnpr.net ; Received: from mail172-co1 (localhost.localdomain [127.0.0.1]) by mail172-co1 (MessageSwitch) id 1371593410488122_24272; Tue, 18 Jun 2013 22:10:10 +0000 (UTC) Received: from CO1EHSMHS032.bigfish.com (unknown [10.243.78.226]) by mail172-co1.bigfish.com (Postfix) with ESMTP id 6ABAD5A0237; Tue, 18 Jun 2013 22:10:10 +0000 (UTC) Received: from P-EMHUB03-HQ.jnpr.net (66.129.224.50) by CO1EHSMHS032.bigfish.com (10.243.66.42) with Microsoft SMTP Server (TLS) id 14.1.225.23; Tue, 18 Jun 2013 22:10:10 +0000 Received: from magenta.juniper.net (172.17.27.123) by P-EMHUB03-HQ.jnpr.net (172.24.192.33) with Microsoft SMTP Server (TLS) id 8.3.213.0; Tue, 18 Jun 2013 15:10:09 -0700 Received: from chaos.jnpr.net (chaos.jnpr.net [172.24.29.229]) by magenta.juniper.net (8.11.3/8.11.3) with ESMTP id r5IMA5L00907; Tue, 18 Jun 2013 15:10:08 -0700 (PDT) (envelope-from sjg@juniper.net) Received: from chaos.jnpr.net (localhost [127.0.0.1]) by chaos.jnpr.net (Postfix) with ESMTP id AB2BB58097; Tue, 18 Jun 2013 15:10:05 -0700 (PDT) To: Garrett Cooper Subject: Re: svn commit: r251958 - head/contrib/bmake In-Reply-To: References: <201306181935.r5IJZp56084248@svn.freebsd.org> Comments: In-reply-to: Garrett Cooper message dated "Tue, 18 Jun 2013 14:25:15 -0700." From: "Simon J. Gerraty" X-Mailer: MH-E 7.82+cvs; nmh 1.3; GNU Emacs 22.3.1 Date: Tue, 18 Jun 2013 15:10:05 -0700 Message-ID: <20130618221005.AB2BB58097@chaos.jnpr.net> MIME-Version: 1.0 Content-Type: text/plain X-OriginatorOrg: juniper.net Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 22:10:39 -0000 Yes. On Tue, 18 Jun 2013 14:25:15 -0700, Garrett Cooper writes: >Was this the source of the huge >ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ ignoring stale .depend >messages? From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 22:35:05 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 4AA9BDC; Tue, 18 Jun 2013 22:35:05 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from nibbler.fubar.geek.nz (nibbler.fubar.geek.nz [199.48.134.198]) by mx1.freebsd.org (Postfix) with ESMTP id 2F6C71894; Tue, 18 Jun 2013 22:35:04 +0000 (UTC) Received: from bender.Home (97e76fc9.skybroadband.com [151.231.111.201]) by nibbler.fubar.geek.nz (Postfix) with ESMTPSA id C7BFC5E1D7; Tue, 18 Jun 2013 22:34:57 +0000 (UTC) Date: Tue, 18 Jun 2013 23:34:50 +0100 From: Andrew Turner To: Andrew Turner Subject: Re: svn commit: r251709 - head/sys/vm Message-ID: <20130618233450.71d9d03b@bender.Home> In-Reply-To: <20130615113503.4f5509dd@bender.Home> References: <201306132105.r5DL5c4F013089@svn.freebsd.org> <20130615113503.4f5509dd@bender.Home> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, Jeff Roberson , src-committers@freebsd.org, Jeff Roberson , svn-src-all@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 22:35:05 -0000 On Sat, 15 Jun 2013 11:35:03 +0100 Andrew Turner wrote: > On Thu, 13 Jun 2013 21:05:38 +0000 (UTC) > Jeff Roberson wrote: > > > Author: jeff > > Date: Thu Jun 13 21:05:38 2013 > > New Revision: 251709 > > URL: http://svnweb.freebsd.org/changeset/base/251709 > > > > Log: > > - Convert the slab free item list from a linked array of indices > > to a bitmap using sys/bitset. This is much simpler, has lower space > > overhead and is cheaper in most cases. > > - Use a second bitmap for invariants asserts and improve the > > quality of the asserts as well as the number of erroneous conditions > > that we will catch. > > - Drastically simplify sizing code. Special case refcnt zones > > since they will be going away. > > - Update stale comments. > > This broke booting for my on the Raspberry Pi for me. If I revert just > this change the board boots as expected. Kernel output from the boot > failure follows. This is still a problem. Is there anything I can look into to get the board to boot with your UMA changes? Andrew > KDB: debugger backends: ddb > KDB: current backend: ddb > Copyright (c) 1992-2013 The FreeBSD Project. > Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, > 1994 The Regents of the University of California. All rights > reserved. FreeBSD is a registered trademark of The FreeBSD Foundation. > FreeBSD 10.0-CURRENT #40 r251712:251749M: Fri Jun 14 17:33:49 BST 2013 > andrew@bender:/usr/obj/arm.armv6/usr/home/andrew/freebsd/repo/head/sys/RPI-B > arm FreeBSD clang version 3.3 (tags/RELEASE_33/final 183502) 20130610 > panic: lock "vm map (user)" 0xc05c1050 already initialized > KDB: enter: panic > [ thread pid 0 tid 0 ] > Stopped at 0xc0261894: ldrb r15, [r15, r15, ror r15]! > db> > > From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 22:46:36 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 714FA5F2 for ; Tue, 18 Jun 2013 22:46:36 +0000 (UTC) (envelope-from lists@eitanadler.com) Received: from mail-pb0-x22b.google.com (mail-pb0-x22b.google.com [IPv6:2607:f8b0:400e:c01::22b]) by mx1.freebsd.org (Postfix) with ESMTP id 47D8B1906 for ; Tue, 18 Jun 2013 22:46:36 +0000 (UTC) Received: by mail-pb0-f43.google.com with SMTP id md12so4393449pbc.30 for ; Tue, 18 Jun 2013 15:46:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=eitanadler.com; s=0xdeadbeef; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:cc:content-type; bh=t6Nzdx67eV9veb6+Hh6FcBRf7J+S8XyxnPiG1WIBYC4=; b=Ajj7NenGo2G3rdlZ0W5y4dAZk9nhGB2SdYphUiq8ziOJuBfX6VvJHRPpv7J/WAoqEE I7MExVe4W955ZKhK2AzFDWdKyiLPZyRS2dlxB0msn+n0pQ8tbcn/GBQam+o85JWoI7+1 FHk4otw0dXhXSk/FTXW50OtGke37zRbxT9Zwc= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:cc:content-type :x-gm-message-state; bh=t6Nzdx67eV9veb6+Hh6FcBRf7J+S8XyxnPiG1WIBYC4=; b=MW+jELwTXKdEUXKhZ2rHGD++d/PNp9RQu6TjMfTIG+Cq83Uf8JlKzj8De4XXBLVgiR dGUV7FonQEvwi94fVH9TZ/wTiwul8v92XSEGfC1jr+aqYPgz8E5mtEumXiARSGdKvl2n mfx0oZuYQ1ebpt5OGs4dJvdovbMfqtYwePVaDlhJn7OeWrrUbf2pzk4C+SWedgqWMnmd MhHMj/4CebWMXmjgmcYRNUoLdRN5/foI+x8hZ+ezo6THul7Kbtw2HFK48W2x+kqaiZkv gk1+/bc7igGc12hxfI83VgSo/HkfJ2xsDe6Zny/gfJqAvcb3G56KA1PPzObb1wtL1AmL y2Ww== X-Received: by 10.66.155.230 with SMTP id vz6mr3945820pab.30.1371595100257; Tue, 18 Jun 2013 15:38:20 -0700 (PDT) MIME-Version: 1.0 Sender: lists@eitanadler.com Received: by 10.70.45.33 with HTTP; Tue, 18 Jun 2013 15:37:50 -0700 (PDT) In-Reply-To: <51C090CD.3040102@mail.lifanov.com> References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> <51C08F58.2070308@freebsd.org> <51C090CD.3040102@mail.lifanov.com> From: Eitan Adler Date: Wed, 19 Jun 2013 00:37:50 +0200 X-Google-Sender-Auth: TohaoDEcVqtjTmxNnaIPNj1HRYI Message-ID: Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... To: Nikolai Lifanov Content-Type: text/plain; charset=UTF-8 X-Gm-Message-State: ALoCoQk4PfNpdGByoE097/eO0KjMoMqNvGXpcXiMyYtQrwScpFgIcDFlSbOdgfMNrxLJME27v7vP Cc: Tijl Coosemans , Andre Oppermann , Peter Wemm , svn-src-all@freebsd.org, src-committers@freebsd.org, svn-src-head@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 22:46:36 -0000 On Tue, Jun 18, 2013 at 6:54 PM, Nikolai Lifanov wrote: > It's net/svnup and is a great replacement for cvs, in my opinion. > CVS wasn't used for development for a long while anyway, so there is nothing > subversion is replacing that net/svnup wouldn't. svnup still has a number of issues: both performance and stability (it tends to randomly core dump). I've stated before that I intended to import svnup when it became ready. I have no intention in taking part in whatever debate may happen here. Should we decide that we want 'svn lite' instead of svnup I am happy. Should we decide to use svnup, I am still happy to import it. -- Eitan Adler Source, Ports, Doc committer Bugmeister, Ports Security teams From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 23:11:36 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D5E00B06; Tue, 18 Jun 2013 23:11:36 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C82F119D8; Tue, 18 Jun 2013 23:11:36 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5INBajs055483; Tue, 18 Jun 2013 23:11:36 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5INBah6055482; Tue, 18 Jun 2013 23:11:36 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306182311.r5INBah6055482@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 23:11:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251972 - head/usr.sbin/bsdconfig/startup X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 23:11:36 -0000 Author: dteske Date: Tue Jun 18 23:11:36 2013 New Revision: 251972 URL: http://svnweb.freebsd.org/changeset/base/251972 Log: Whitespace. Modified: head/usr.sbin/bsdconfig/startup/rcvar Modified: head/usr.sbin/bsdconfig/startup/rcvar ============================================================================== --- head/usr.sbin/bsdconfig/startup/rcvar Tue Jun 18 22:21:59 2013 (r251971) +++ head/usr.sbin/bsdconfig/startup/rcvar Tue Jun 18 23:11:36 2013 (r251972) @@ -205,8 +205,8 @@ while :; do # Determine the new [toggled] value to use case "$value" in - "[X]"*) value="NO";; - *) value="YES";; + "[X]"*) value="NO" ;; + *) value="YES" ;; esac err=$( f_sysrc_set "$rcvar" "$value" 2>&1 ) || From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 23:14:46 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 095E4DEF; Tue, 18 Jun 2013 23:14:46 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id F092D19E9; Tue, 18 Jun 2013 23:14:45 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5INEj1I056124; Tue, 18 Jun 2013 23:14:45 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5INEjM6056123; Tue, 18 Jun 2013 23:14:45 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306182314.r5INEjM6056123@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 23:14:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251974 - head/usr.sbin/bsdconfig/startup X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 23:14:46 -0000 Author: dteske Date: Tue Jun 18 23:14:45 2013 New Revision: 251974 URL: http://svnweb.freebsd.org/changeset/base/251974 Log: Fix a regression introduced by r251967, resulting in: /usr/libexec/bsdconfig/140.startup/startup: 130: Syntax error: ";;" unexpected (expecting "fi") Modified: head/usr.sbin/bsdconfig/startup/startup Modified: head/usr.sbin/bsdconfig/startup/startup ============================================================================== --- head/usr.sbin/bsdconfig/startup/startup Tue Jun 18 23:14:21 2013 (r251973) +++ head/usr.sbin/bsdconfig/startup/startup Tue Jun 18 23:14:45 2013 (r251974) @@ -127,7 +127,7 @@ while :; do esac if [ "$command" ]; then - $BSDCFG_LIBE/$APP_DIR/$command ${USE_XDIALOG:+-X} ;; + $BSDCFG_LIBE/$APP_DIR/$command ${USE_XDIALOG:+-X} else f_die 1 "$msg_unknown_startup_menu_selection" fi From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 23:18:32 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 97076123; Tue, 18 Jun 2013 23:18:32 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 78E4E1A1D; Tue, 18 Jun 2013 23:18:32 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5INIW4T056730; Tue, 18 Jun 2013 23:18:32 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5INIWP5056729; Tue, 18 Jun 2013 23:18:32 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306182318.r5INIWP5056729@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 23:18:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251975 - head/usr.sbin/bsdconfig/startup X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 23:18:32 -0000 Author: dteske Date: Tue Jun 18 23:18:32 2013 New Revision: 251975 URL: http://svnweb.freebsd.org/changeset/base/251975 Log: Perform some code consolidation and replace nested case-statements with more logical if-else statements for each menu selection. Modified: head/usr.sbin/bsdconfig/startup/misc Modified: head/usr.sbin/bsdconfig/startup/misc ============================================================================== --- head/usr.sbin/bsdconfig/startup/misc Tue Jun 18 23:14:45 2013 (r251974) +++ head/usr.sbin/bsdconfig/startup/misc Tue Jun 18 23:18:32 2013 (r251975) @@ -346,86 +346,90 @@ while :; do case "$mtag" in "X $msg_exit") break ;; + ?" [X] "*) toggled=1 ;; + *) toggled= ;; + esac + + case "$mtag" in + # Simple On/Off toggle bits ?" ["?"] $msg_apm") - case "$mtag" in - ?" [X] "*) err=$( f_sysrc_set apm_enable NO 2>&1 ) ;; - ?" [ ] "*) err=$( f_sysrc_set apm_enable YES 2>&1 ) ;; - esac - [ $? -eq $SUCCESS ] || f_dialog_msgbox "$err\n" ;; - ?" ["?"] $msg_startup_dirs") - dialog_input_value \ - "$msg_startup_dirs_desc" \ - "$( f_sysrc_get local_startup )" - if [ $? -eq $SUCCESS ]; then - err=$( f_sysrc_set local_startup "$value" ) || - f_dialog_msgbox "$err\n" + if [ "$toggled" ]; then + err=$( f_sysrc_set apm_enable NO 2>&1 ) + else + err=$( f_sysrc_set apm_enable YES 2>&1 ) fi ;; ?" ["?"] $msg_named") - case "$mtag" in - ?" [X] "*) err=$( f_sysrc_set named_enable NO 2>&1 ) ;; - ?" [ ] "*) err=$( f_sysrc_set named_enable YES 2>&1 ) ;; - esac - [ $? -eq $SUCCESS ] || f_dialog_msgbox "$err\n" ;; - ?" ["?"] $msg_named_flags") - dialog_input_value \ - "$msg_named_flags_desc" \ - "$( f_sysrc_get named_flags )" - if [ $? -eq $SUCCESS ]; then - err=$( f_sysrc_set named_flags "$value" ) || - f_dialog_msgbox "$err\n" + if [ "$toggled" ]; then + err=$( f_sysrc_set named_enable NO 2>&1 ) + else + err=$( f_sysrc_set named_enable YES 2>&1 ) + fi + ;; + ?" ["?"] $msg_accounting") + if [ "$toggled" ]; then + err=$( f_sysrc_set accounting_enable NO 2>&1 ) + else + err=$( f_sysrc_set accounting_enable YES 2>&1 ) fi ;; + ?" ["?"] $msg_lpd") + if [ "$toggled" ]; then + err=$( f_sysrc_set lpd_enable NO 2>&1 ) + else + err=$( f_sysrc_set lpd_enable YES 2>&1 ) + fi + ;; + ?" ["?"] $msg_sco") + if [ "$toggled" ]; then + err=$( f_sysrc_set ibcs2_enable NO 2>&1 ) + else + err=$( f_sysrc_set ibcs2_enable YES 2>&1 ) + fi + ;; + ?" ["?"] $msg_svr4") + if [ "$toggled" ]; then + err=$( f_sysrc_set svr4_enable NO 2>&1 ) + else + err=$( f_sysrc_set svr4_enable YES 2>&1 ) + fi + ;; + # Multi-variable On/Off toggle bits ?" ["?"] $msg_nis_client") - case "$mtag" in - ?" [X] "*) err=$( f_sysrc_set nis_client_enable NO 2>&1 ) ;; - ?" [ ] "*) + if [ "$toggled" ]; then + err=$( f_sysrc_set nis_client_enable NO 2>&1 ) + else err=$( f_sysrc_set nis_client_enable YES 2>&1 ) \ - && err=$( f_sysrc_set rpcbind_enable YES 2>&1 ) ;; - esac - [ $? -eq $SUCCESS ] || f_dialog_msgbox "$err\n" ;; - ?" ["?"] $msg_nis_domainname") - dialog_input_value \ - "$msg_nis_domainname_desc" \ - "$( f_sysrc_get nisdomainname )" - if [ $? -eq $SUCCESS ]; then - err=$( f_sysrc_set nisdomainname "$value" ) || - f_dialog_msgbox "$err\n" + && err=$( f_sysrc_set rpcbind_enable YES 2>&1 ) fi ;; ?" ["?"] $msg_nis_server") - case "$mtag" in - ?" [X] "*) err=$( f_sysrc_set nis_server_enable NO 2>&1 ) ;; - ?" [ ] "*) + if [ "$toggled" ]; then + err=$( f_sysrc_set nis_server_enable NO 2>&1 ) + else err=$( f_sysrc_set nis_server_enable YES 2>&1 ) \ - && err=$( f_sysrc_set rpcbind_enable YES 2>&1 ) ;; - esac - [ $? -eq $SUCCESS ] || f_dialog_msgbox "$err\n" ;; - ?" ["?"] $msg_accounting") - case "$mtag" in - ?" [X] "*) err=$( f_sysrc_set accounting_enable NO 2>&1 ) ;; - ?" [ ] "*) err=$( f_sysrc_set accounting_enable YES 2>&1 ) ;; - esac - [ $? -eq $SUCCESS ] || f_dialog_msgbox "$err\n" ;; - ?" ["?"] $msg_lpd") - case "$mtag" in - ?" [X] "*) err=$( f_sysrc_set lpd_enable NO 2>&1 ) ;; - ?" [ ] "*) err=$( f_sysrc_set lpd_enable YES 2>&1 ) ;; - esac - [ $? -eq $SUCCESS ] || f_dialog_msgbox "$err\n" ;; - ?" ["?"] $msg_sco") - case "$mtag" in - ?" [X] "*) err=$( f_sysrc_set ibcs2_enable NO 2>&1 ) ;; - ?" [ ] "*) err=$( f_sysrc_set ibcs2_enable YES 2>&1 ) ;; - esac - [ $? -eq $SUCCESS ] || f_dialog_msgbox "$err\n" ;; - ?" ["?"] $msg_svr4") - case "$mtag" in - ?" [X] "*) err=$( f_sysrc_set svr4_enable NO 2>&1 ) ;; - ?" [ ] "*) err=$( f_sysrc_set svr4_enable YES 2>&1 ) ;; - esac - [ $? -eq $SUCCESS ] || f_dialog_msgbox "$err\n" ;; + && err=$( f_sysrc_set rpcbind_enable YES 2>&1 ) + fi + ;; + # Checkboxes for non-boolean options + ?" ["?"] $msg_nis_domainname") + dialog_input_value "$msg_nis_domainname_desc" \ + "$( f_sysrc_get nisdomainname )" || continue + err=$( f_sysrc_set nisdomainname "$value" 2>&1 ) + ;; + ?" ["?"] $msg_startup_dirs") + dialog_input_value "$msg_startup_dirs_desc" \ + "$( f_sysrc_get local_startup )" || continue + err=$( f_sysrc_set local_startup "$value" 2>&1 ) + ;; + ?" ["?"] $msg_named_flags") + dialog_input_value "$msg_named_flags_desc" \ + "$( f_sysrc_get named_flags )" || continue + err=$( f_sysrc_set named_flags "$value" 2>&1 ) + ;; esac + + [ $? -eq $SUCCESS ] || f_dialog_msgbox "$err\n" done exit $SUCCESS From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 23:31:09 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id D2A4A59E; Tue, 18 Jun 2013 23:31:09 +0000 (UTC) (envelope-from pluknet@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C35B51A86; Tue, 18 Jun 2013 23:31:09 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5INV9AB061807; Tue, 18 Jun 2013 23:31:09 GMT (envelope-from pluknet@svn.freebsd.org) Received: (from pluknet@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5INV9qW061806; Tue, 18 Jun 2013 23:31:09 GMT (envelope-from pluknet@svn.freebsd.org) Message-Id: <201306182331.r5INV9qW061806@svn.freebsd.org> From: Sergey Kandaurov Date: Tue, 18 Jun 2013 23:31:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251976 - head/sys/amd64/vmm/io X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 23:31:09 -0000 Author: pluknet Date: Tue Jun 18 23:31:09 2013 New Revision: 251976 URL: http://svnweb.freebsd.org/changeset/base/251976 Log: Fix a gcc warning uncovered after r251745. Reported by: Sergey V. Dyatko Reviewed by: neel Modified: head/sys/amd64/vmm/io/vlapic.c Modified: head/sys/amd64/vmm/io/vlapic.c ============================================================================== --- head/sys/amd64/vmm/io/vlapic.c Tue Jun 18 23:18:32 2013 (r251975) +++ head/sys/amd64/vmm/io/vlapic.c Tue Jun 18 23:31:09 2013 (r251976) @@ -463,6 +463,9 @@ lapic_process_icr(struct vlapic *vlapic, dmask = vm_active_cpus(vlapic->vm); CPU_CLR(vlapic->vcpuid, &dmask); break; + default: + CPU_ZERO(&dmask); /* satisfy gcc */ + break; } while ((i = CPU_FFS(&dmask)) != 0) { From owner-svn-src-head@FreeBSD.ORG Tue Jun 18 23:48:05 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id DFD88A44; Tue, 18 Jun 2013 23:48:05 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B8AB61AFD; Tue, 18 Jun 2013 23:48:05 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5INm5Os066182; Tue, 18 Jun 2013 23:48:05 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5INm513066181; Tue, 18 Jun 2013 23:48:05 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306182348.r5INm513066181@svn.freebsd.org> From: Devin Teske Date: Tue, 18 Jun 2013 23:48:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251977 - head/usr.sbin/bsdconfig/share X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 23:48:06 -0000 Author: dteske Date: Tue Jun 18 23:48:05 2013 New Revision: 251977 URL: http://svnweb.freebsd.org/changeset/base/251977 Log: Change the f_dialog_{yesno,noyes}() function-arguments in `dialog.subr' to accomodate an $hline value for overriding the default. This change does not effect any current modules as it turns out that not one single usage of either f_dialog_yesno() or f_dialog_noyes() relied on accepting more than a first argument (read: all occurrences quoted the first parameter; so $* was never depended upon). This will allow some custom invocations of --yesno and --noyes to roll over to these functions (for example, in `timezone/timezone'). Modified: head/usr.sbin/bsdconfig/share/dialog.subr Modified: head/usr.sbin/bsdconfig/share/dialog.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/dialog.subr Tue Jun 18 23:31:09 2013 (r251976) +++ head/usr.sbin/bsdconfig/share/dialog.subr Tue Jun 18 23:48:05 2013 (r251977) @@ -1562,7 +1562,7 @@ f_dialog_textbox() ############################################################ YESNO FUNCTIONS -# f_dialog_yesno $msg_text ... +# f_dialog_yesno $msg_text [$hline] # # Display a dialog(1) Yes/No prompt to allow the user to make some decision. # The yesno prompt remains until the user presses ENTER or ESC, acknowledging @@ -1573,8 +1573,8 @@ f_dialog_textbox() # f_dialog_yesno() { - local msg_text="$*" height width - local hline="$hline_arrows_tab_enter" + local msg_text="$1" height width + local hline="${2-$hline_arrows_tab_enter}" f_interactive || return 0 # If non-interactive, return YES all the time @@ -1600,7 +1600,7 @@ f_dialog_yesno() fi } -# f_dialog_noyes $msg_text ... +# f_dialog_noyes $msg_text [$hline] # # Display a dialog(1) No/Yes prompt to allow the user to make some decision. # The noyes prompt remains until the user presses ENTER or ESC, acknowledging @@ -1613,8 +1613,8 @@ f_dialog_yesno() # f_dialog_noyes() { - local msg_text="$*" height width - local hline="$hline_arrows_tab_enter" + local msg_text="$1" height width + local hline="${2-$hline_arrows_tab_enter}" f_interactive || return 1 # If non-interactive, return NO all the time From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 00:08:29 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 8E2E575; Wed, 19 Jun 2013 00:08:29 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 7FF0B1C05; Wed, 19 Jun 2013 00:08:29 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5J08TJP072747; Wed, 19 Jun 2013 00:08:29 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5J08TpU072746; Wed, 19 Jun 2013 00:08:29 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306190008.r5J08TpU072746@svn.freebsd.org> From: Devin Teske Date: Wed, 19 Jun 2013 00:08:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251978 - head/usr.sbin/bsdconfig/timezone/share X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 00:08:29 -0000 Author: dteske Date: Wed Jun 19 00:08:29 2013 New Revision: 251978 URL: http://svnweb.freebsd.org/changeset/base/251978 Log: When I first wrote the timezone module, it was in sysutils/tzdialog and it pre-dates bsdconfig. Update the code to take advantage of f_dialog_msgbox(). Modified: head/usr.sbin/bsdconfig/timezone/share/zones.subr Modified: head/usr.sbin/bsdconfig/timezone/share/zones.subr ============================================================================== --- head/usr.sbin/bsdconfig/timezone/share/zones.subr Tue Jun 18 23:48:05 2013 (r251977) +++ head/usr.sbin/bsdconfig/timezone/share/zones.subr Wed Jun 19 00:08:29 2013 (r251978) @@ -371,41 +371,21 @@ f_install_zoneinfo_file() fi if [ "$USEDIALOG" ]; then f_dialog_title "$msg_info" - title="$DIALOG_TITLE" - btitle="$DIALOG_BACKTITLE" + f_dialog_msgbox "$msg" f_dialog_title_restore - f_dialog_buttonbox_size height width \ - "$title" "$btitle" "$msg" - $DIALOG \ - --title "$title" \ - --backtitle "$btitle" \ - --ok-label "$msg_ok" \ - --msgbox "$msg" $height $width else printf "%s\n" "$msg" fi fi if [ "$REALLYDOIT" ]; then - f_dialog_title "$msg_error" - title="$DIALOG_TITLE" - btitle="$DIALOG_BACKTITLE" - f_dialog_title_restore - if [ ! "$zoneinfo_file" ]; then - err=$( rm -f "$_PATH_LOCALTIME" 2>&1 ) if [ "$err" ]; then if [ "$USEDIALOG" ]; then - f_dialog_buttonbox_size height width \ - "$title" \ - "$btitle" \ - "$err" - $DIALOG \ - --title "$title" \ - --backtitle "$btitle" \ - --ok-label "$msg_ok" \ - --msgbox "$err" $height $width + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" + f_dialog_title_restore else f_err "%s\n" "$err" fi @@ -415,15 +395,9 @@ f_install_zoneinfo_file() err=$( rm -f "$_PATH_DB" 2>&1 ) if [ "$err" ]; then if [ "$USEDIALOG" ]; then - f_dialog_buttonbox_size height width \ - "$title" \ - "$btitle" \ - "$err" - $DIALOG \ - --title "$title" \ - --backtitle "$btitle" \ - --ok-label "$msg_ok" \ - --msgbox "$err" $height $width + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" + f_dialog_title_restore else f_err "%s\n" "$err" fi @@ -431,19 +405,12 @@ f_install_zoneinfo_file() fi if [ "$VERBOSE" ]; then - title="$msg_done" msg=$( printf "$msg_removed_file" \ "$_PATH_LOCALTIME" ) if [ "$USEDIALOG" ]; then - f_dialog_buttonbox_size height width \ - "$title" \ - "$btitle" \ - "$msg" - $DIALOG \ - --title "$title" \ - --backtitle "$btitle" \ - --ok-label "$msg_ok" \ - --msgbox "$msg" $height $width + f_dialog_title "$msg_done" + f_dialog_msgbox "$msg" + f_dialog_title_restore else printf "%s\n" "$msg" fi @@ -458,15 +425,9 @@ f_install_zoneinfo_file() err=$( rm -f "$_PATH_LOCALTIME" 2>&1 ) if [ "$err" ]; then if [ "$USEDIALOG" ]; then - f_dialog_buttonbox_size height width \ - "$title" \ - "$btitle" \ - "$err" - $DIALOG \ - --title "$title" \ - --backtitle "$btitle" \ - --ok-label "$msg_ok" \ - --msgbox "$err" $height $width + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" + f_dialog_title_restore else f_err "%s\n" "$err" fi @@ -476,15 +437,9 @@ f_install_zoneinfo_file() err=$( umask 222 && : 2>&1 > "$_PATH_LOCALTIME" ) if [ "$err" ]; then if [ "$USEDIALOG" ]; then - f_dialog_buttonbox_size height width \ - "$title" \ - "$btitle" \ - "$err" - $DIALOG \ - --title "$title" \ - --backtitle "$btitle" \ - --ok-label "$msg_ok" \ - --msgbox "$err" $height $width + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" + f_dialog_title_restore else f_err "%s\n" "$err" fi @@ -494,15 +449,9 @@ f_install_zoneinfo_file() err=$( cat "$zoneinfo_file" 2>&1 > "$_PATH_LOCALTIME" ) if [ "$err" ]; then if [ "$USEDIALOG" ]; then - f_dialog_buttonbox_size height width \ - "$title" \ - "$btitle" \ - "$err" - $DIALOG \ - --title "$title" \ - --backtitle "$btitle" \ - --ok-label "$msg_ok" \ - --msgbox "$err" $height $width + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" + f_dialog_title_restore else f_err "%s\n" "$err" fi @@ -514,15 +463,9 @@ f_install_zoneinfo_file() err=$( ( :< "$zoneinfo_file" ) 2>&1 ) if [ "$err" ]; then if [ "$USEDIALOG" ]; then - f_dialog_buttonbox_size height width \ - "$title" \ - "$btitle" \ - "$err" - $DIALOG \ - --title "$title" \ - --backtitle "$btitle" \ - --ok-label "$msg_ok" \ - --msgbox "$err" $height $width + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" + f_dialog_title_restore else f_err "%s\n" "$err" fi @@ -532,15 +475,9 @@ f_install_zoneinfo_file() err=$( rm -f "$_PATH_LOCALTIME" 2>&1 ) if [ "$err" ]; then if [ "$USEDIALOG" ]; then - f_dialog_buttonbox_size height width \ - "$title" \ - "$btitle" \ - "$err" - $DIALOG \ - --title "$title" \ - --backtitle "$btitle" \ - --ok-label "$msg_ok" \ - --msgbox "$err" $height $width + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" + f_dialog_title_restore else f_err "%s\n" "$err" fi @@ -550,15 +487,9 @@ f_install_zoneinfo_file() err=$( ln -s "$zoneinfo_file" "$_PATH_LOCALTIME" 2>&1 ) if [ "$err" ]; then if [ "$USEDIALOG" ]; then - f_dialog_buttonbox_size height $width \ - "$title" \ - "$btitle" \ - "$err" - $DIALOG \ - --title "$title" \ - --backtitle "$btitle" \ - --ok-label "$msg_ok" \ - --msgbox "$err" $height $width + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" + f_dialog_title_restore else f_err "%s\n" "$err" fi @@ -568,7 +499,6 @@ f_install_zoneinfo_file() fi # copymode if [ "$VERBOSE" ]; then - title="$msg_done" if [ "$copymode" ]; then msg=$( printf "$msg_copied_timezone_file" \ "$zoneinfo_file" \ @@ -579,13 +509,9 @@ f_install_zoneinfo_file() "$zoneinfo_file" ) fi if [ "$USEDIALOG" ]; then - f_dialog_buttonbox_size height width \ - "$title" "$btitle" "$msg" - $DIALOG \ - --title "$title" \ - --backtitle "$btitle" \ - --ok-label "$msg_ok" \ - --msgbox "$msg" $height $width + f_dialog_title "$msg_done" + f_dialog_msgbox "$msg" + f_dialog_title_restore else printf "%s\n" "$msg" fi From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 00:09:21 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 82EC4211; Wed, 19 Jun 2013 00:09:21 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 75ABC1C0F; Wed, 19 Jun 2013 00:09:21 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5J09LiO072954; Wed, 19 Jun 2013 00:09:21 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5J09LkF072953; Wed, 19 Jun 2013 00:09:21 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306190009.r5J09LkF072953@svn.freebsd.org> From: Devin Teske Date: Wed, 19 Jun 2013 00:09:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251979 - head/usr.sbin/bsdconfig/timezone X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 00:09:21 -0000 Author: dteske Date: Wed Jun 19 00:09:21 2013 New Revision: 251979 URL: http://svnweb.freebsd.org/changeset/base/251979 Log: Take advantage of newly updated f_dialog_{yesno,noyes}() functions from SVN r251977 (adding an $hline parameter). Modified: head/usr.sbin/bsdconfig/timezone/timezone Modified: head/usr.sbin/bsdconfig/timezone/timezone ============================================================================== --- head/usr.sbin/bsdconfig/timezone/timezone Wed Jun 19 00:08:29 2013 (r251978) +++ head/usr.sbin/bsdconfig/timezone/timezone Wed Jun 19 00:09:21 2013 (r251979) @@ -244,29 +244,11 @@ if [ $# -ge 1 ]; then default="$1" f_dialog_title "$msg_default_zone_provided" - title="$DIALOG_TITLE" - btitle="$DIALOG_BACKTITLE" - f_dialog_title_restore msg=$( printf "\n$msg_use_default_zone" "$default" ) - f_dialog_buttonbox_size height width "$title" "$btitle" "$msg" - - if [ "$USE_XDIALOG" ]; then - eval $DIALOG \ - --title \"\$title\" \ - --backtitle \"\$btitle\" \ - --ok-label \"\$msg_yes\" \ - --cancel-label \"\$msg_no\" \ - --yesno \"\$msg\" $height $width - result=$? - else - eval $DIALOG \ - --title \"\$title\" \ - --backtitle \"\$btitle\" \ - --yes-label \"\$msg_yes\" \ - --no-label \"\$msg_no\" \ - --yesno \"\$msg\" $height $width - result=$? - fi + hline= + f_dialog_yesno "$msg" "$hline" + result=$? + f_dialog_title_restore if [ $result -eq 0 ]; then # User chose YES From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 00:13:55 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 03B354C1; Wed, 19 Jun 2013 00:13:55 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id EA13C1C2E; Wed, 19 Jun 2013 00:13:54 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5J0Dsk8075723; Wed, 19 Jun 2013 00:13:54 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5J0Ds6U075722; Wed, 19 Jun 2013 00:13:54 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306190013.r5J0Ds6U075722@svn.freebsd.org> From: Devin Teske Date: Wed, 19 Jun 2013 00:13:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251980 - head/usr.sbin/bsdconfig/timezone/share X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 00:13:55 -0000 Author: dteske Date: Wed Jun 19 00:13:54 2013 New Revision: 251980 URL: http://svnweb.freebsd.org/changeset/base/251980 Log: Change a humongous if-statement at the end of f_install_zoneinfo_file() into an early return, allowing a huge chunk of code to be indented one-level less Modified: head/usr.sbin/bsdconfig/timezone/share/zones.subr Modified: head/usr.sbin/bsdconfig/timezone/share/zones.subr ============================================================================== --- head/usr.sbin/bsdconfig/timezone/share/zones.subr Wed Jun 19 00:09:21 2013 (r251979) +++ head/usr.sbin/bsdconfig/timezone/share/zones.subr Wed Jun 19 00:13:54 2013 (r251980) @@ -378,146 +378,142 @@ f_install_zoneinfo_file() fi fi - if [ "$REALLYDOIT" ]; then - if [ ! "$zoneinfo_file" ]; then - err=$( rm -f "$_PATH_LOCALTIME" 2>&1 ) - if [ "$err" ]; then - if [ "$USEDIALOG" ]; then - f_dialog_title "$msg_error" - f_dialog_msgbox "$err" - f_dialog_title_restore - else - f_err "%s\n" "$err" - fi - return $FAILURE - fi - - err=$( rm -f "$_PATH_DB" 2>&1 ) - if [ "$err" ]; then - if [ "$USEDIALOG" ]; then - f_dialog_title "$msg_error" - f_dialog_msgbox "$err" - f_dialog_title_restore - else - f_err "%s\n" "$err" - fi - return $FAILURE - fi - - if [ "$VERBOSE" ]; then - msg=$( printf "$msg_removed_file" \ - "$_PATH_LOCALTIME" ) - if [ "$USEDIALOG" ]; then - f_dialog_title "$msg_done" - f_dialog_msgbox "$msg" - f_dialog_title_restore - else - printf "%s\n" "$msg" - fi + [ "$REALLYDOIT" ] || return $SUCCESS + + if [ ! "$zoneinfo_file" ]; then + err=$( rm -f "$_PATH_LOCALTIME" 2>&1 ) + if [ "$err" ]; then + if [ "$USEDIALOG" ]; then + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" + f_dialog_title_restore + else + f_err "%s\n" "$err" fi + return $FAILURE + fi - return $SUCCESS + err=$( rm -f "$_PATH_DB" 2>&1 ) + if [ "$err" ]; then + if [ "$USEDIALOG" ]; then + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" + f_dialog_title_restore + else + f_err "%s\n" "$err" + fi + return $FAILURE + fi - fi # ! zoneinfo_file + if [ "$VERBOSE" ]; then + msg=$( printf "$msg_removed_file" "$_PATH_LOCALTIME" ) + if [ "$USEDIALOG" ]; then + f_dialog_title "$msg_done" + f_dialog_msgbox "$msg" + f_dialog_title_restore + else + printf "%s\n" "$msg" + fi + fi - if [ "$copymode" ]; then + return $SUCCESS + + fi # ! zoneinfo_file + + if [ "$copymode" ]; then + + err=$( rm -f "$_PATH_LOCALTIME" 2>&1 ) + if [ "$err" ]; then + if [ "$USEDIALOG" ]; then + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" + f_dialog_title_restore + else + f_err "%s\n" "$err" + fi + return $FAILURE + fi + + err=$( umask 222 && : 2>&1 > "$_PATH_LOCALTIME" ) + if [ "$err" ]; then + if [ "$USEDIALOG" ]; then + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" + f_dialog_title_restore + else + f_err "%s\n" "$err" + fi + return $FAILURE + fi - err=$( rm -f "$_PATH_LOCALTIME" 2>&1 ) - if [ "$err" ]; then - if [ "$USEDIALOG" ]; then - f_dialog_title "$msg_error" - f_dialog_msgbox "$err" - f_dialog_title_restore - else - f_err "%s\n" "$err" - fi - return $FAILURE - fi - - err=$( umask 222 && : 2>&1 > "$_PATH_LOCALTIME" ) - if [ "$err" ]; then - if [ "$USEDIALOG" ]; then - f_dialog_title "$msg_error" - f_dialog_msgbox "$err" - f_dialog_title_restore - else - f_err "%s\n" "$err" - fi - return $FAILURE - fi - - err=$( cat "$zoneinfo_file" 2>&1 > "$_PATH_LOCALTIME" ) - if [ "$err" ]; then - if [ "$USEDIALOG" ]; then - f_dialog_title "$msg_error" - f_dialog_msgbox "$err" - f_dialog_title_restore - else - f_err "%s\n" "$err" - fi - return $FAILURE - fi - - else # ! copymode - - err=$( ( :< "$zoneinfo_file" ) 2>&1 ) - if [ "$err" ]; then - if [ "$USEDIALOG" ]; then - f_dialog_title "$msg_error" - f_dialog_msgbox "$err" - f_dialog_title_restore - else - f_err "%s\n" "$err" - fi - return $FAILURE - fi - - err=$( rm -f "$_PATH_LOCALTIME" 2>&1 ) - if [ "$err" ]; then - if [ "$USEDIALOG" ]; then - f_dialog_title "$msg_error" - f_dialog_msgbox "$err" - f_dialog_title_restore - else - f_err "%s\n" "$err" - fi - return $FAILURE - fi - - err=$( ln -s "$zoneinfo_file" "$_PATH_LOCALTIME" 2>&1 ) - if [ "$err" ]; then - if [ "$USEDIALOG" ]; then - f_dialog_title "$msg_error" - f_dialog_msgbox "$err" - f_dialog_title_restore - else - f_err "%s\n" "$err" - fi - return $FAILURE + err=$( cat "$zoneinfo_file" 2>&1 > "$_PATH_LOCALTIME" ) + if [ "$err" ]; then + if [ "$USEDIALOG" ]; then + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" + f_dialog_title_restore + else + f_err "%s\n" "$err" fi + return $FAILURE + fi - fi # copymode + else # ! copymode - if [ "$VERBOSE" ]; then - if [ "$copymode" ]; then - msg=$( printf "$msg_copied_timezone_file" \ - "$zoneinfo_file" \ - "$_PATH_LOCALTIME" ) - else - msg=$( printf "$msg_created_symlink" \ - "$_PATH_LOCALTIME" \ - "$zoneinfo_file" ) + err=$( ( :< "$zoneinfo_file" ) 2>&1 ) + if [ "$err" ]; then + if [ "$USEDIALOG" ]; then + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" + f_dialog_title_restore + else + f_err "%s\n" "$err" fi + return $FAILURE + fi + + err=$( rm -f "$_PATH_LOCALTIME" 2>&1 ) + if [ "$err" ]; then if [ "$USEDIALOG" ]; then - f_dialog_title "$msg_done" - f_dialog_msgbox "$msg" + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" f_dialog_title_restore else - printf "%s\n" "$msg" + f_err "%s\n" "$err" + fi + return $FAILURE + fi + + err=$( ln -s "$zoneinfo_file" "$_PATH_LOCALTIME" 2>&1 ) + if [ "$err" ]; then + if [ "$USEDIALOG" ]; then + f_dialog_title "$msg_error" + f_dialog_msgbox "$err" + f_dialog_title_restore + else + f_err "%s\n" "$err" fi + return $FAILURE fi - fi # REALLYDOIT + fi # copymode + + if [ "$VERBOSE" ]; then + if [ "$copymode" ]; then + msg=$( printf "$msg_copied_timezone_file" \ + "$zoneinfo_file" "$_PATH_LOCALTIME" ) + else + msg=$( printf "$msg_created_symlink" \ + "$_PATH_LOCALTIME" "$zoneinfo_file" ) + fi + if [ "$USEDIALOG" ]; then + f_dialog_title "$msg_done" + f_dialog_msgbox "$msg" + f_dialog_title_restore + else + printf "%s\n" "$msg" + fi + fi return $SUCCESS } From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 00:24:09 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 58B44BBC; Wed, 19 Jun 2013 00:24:09 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 2E7D61E3A; Wed, 19 Jun 2013 00:24:09 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5J0O96m079429; Wed, 19 Jun 2013 00:24:09 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5J0O88X079425; Wed, 19 Jun 2013 00:24:08 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306190024.r5J0O88X079425@svn.freebsd.org> From: Devin Teske Date: Wed, 19 Jun 2013 00:24:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251981 - head/usr.sbin/bsdconfig/usermgmt X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 00:24:09 -0000 Author: dteske Date: Wed Jun 19 00:24:08 2013 New Revision: 251981 URL: http://svnweb.freebsd.org/changeset/base/251981 Log: Remove extra whitespace lines. Modified: head/usr.sbin/bsdconfig/usermgmt/groupdel head/usr.sbin/bsdconfig/usermgmt/groupedit head/usr.sbin/bsdconfig/usermgmt/userdel head/usr.sbin/bsdconfig/usermgmt/useredit Modified: head/usr.sbin/bsdconfig/usermgmt/groupdel ============================================================================== --- head/usr.sbin/bsdconfig/usermgmt/groupdel Wed Jun 19 00:13:54 2013 (r251980) +++ head/usr.sbin/bsdconfig/usermgmt/groupdel Wed Jun 19 00:24:08 2013 (r251981) @@ -79,12 +79,10 @@ while :; do case "$mtag" in "X $msg_exit") break ;; - *) # anything else is a group name $BSDCFG_LIBE/$APP_DIR/groupinput \ ${USE_XDIALOG:+-X} mode="Delete" group="$mtag" ;; - esac done Modified: head/usr.sbin/bsdconfig/usermgmt/groupedit ============================================================================== --- head/usr.sbin/bsdconfig/usermgmt/groupedit Wed Jun 19 00:13:54 2013 (r251980) +++ head/usr.sbin/bsdconfig/usermgmt/groupedit Wed Jun 19 00:24:08 2013 (r251981) @@ -79,12 +79,10 @@ while :; do case "$mtag" in "X $msg_exit") break ;; - *) # anything else is a group name $BSDCFG_LIBE/$APP_DIR/groupinput \ ${USE_XDIALOG:+-X} mode="Edit/View" group="$mtag" ;; - esac done Modified: head/usr.sbin/bsdconfig/usermgmt/userdel ============================================================================== --- head/usr.sbin/bsdconfig/usermgmt/userdel Wed Jun 19 00:13:54 2013 (r251980) +++ head/usr.sbin/bsdconfig/usermgmt/userdel Wed Jun 19 00:24:08 2013 (r251981) @@ -79,12 +79,10 @@ while :; do case "$mtag" in "X $msg_exit") break ;; - *) # anything else is a userid $BSDCFG_LIBE/$APP_DIR/userinput \ ${USE_XDIALOG:+-X} mode="Delete" user="$mtag" ;; - esac done Modified: head/usr.sbin/bsdconfig/usermgmt/useredit ============================================================================== --- head/usr.sbin/bsdconfig/usermgmt/useredit Wed Jun 19 00:13:54 2013 (r251980) +++ head/usr.sbin/bsdconfig/usermgmt/useredit Wed Jun 19 00:24:08 2013 (r251981) @@ -79,12 +79,10 @@ while :; do case "$mtag" in "X $msg_exit") break ;; - *) # anything else is a userid $BSDCFG_LIBE/$APP_DIR/userinput \ ${USE_XDIALOG:+-X} mode="Edit/View" user="$mtag" ;; - esac done From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 00:26:29 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 900FCD4B; Wed, 19 Jun 2013 00:26:29 +0000 (UTC) (envelope-from bright@mu.org) Received: from elvis.mu.org (elvis.mu.org [192.203.228.196]) by mx1.freebsd.org (Postfix) with ESMTP id 7AA021E4A; Wed, 19 Jun 2013 00:26:29 +0000 (UTC) Received: from Alfreds-MacBook-Pro-9.local (unknown [63.118.227.34]) by elvis.mu.org (Postfix) with ESMTPSA id 105411A3C19; Tue, 18 Jun 2013 17:26:27 -0700 (PDT) Message-ID: <51C0FAB3.7060409@mu.org> Date: Tue, 18 Jun 2013 20:26:27 -0400 From: Alfred Perlstein User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:17.0) Gecko/20130509 Thunderbird/17.0.6 MIME-Version: 1.0 To: Jeff Roberson Subject: Re: svn commit: r251894 - in head: lib/libmemstat sys/vm References: <201306180450.r5I4oKoY091256@svn.freebsd.org> <51C01964.1000006@freebsd.org> <20130618083733.GQ1400@FreeBSD.org> <51C04C77.7010907@mu.org> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: src-committers@freebsd.org, Andre Oppermann , svn-src-all@freebsd.org, Gleb Smirnoff , svn-src-head@freebsd.org, Jeff Roberson X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 00:26:29 -0000 On 6/18/13 5:21 PM, Jeff Roberson wrote: > On Tue, 18 Jun 2013, Alfred Perlstein wrote: > >> On 6/18/13 4:37 AM, Gleb Smirnoff wrote: >>> On Tue, Jun 18, 2013 at 10:25:08AM +0200, Andre Oppermann wrote: >>> A> There used to be a problem with per CPU caches accumulating large >>> amounts >>> A> of items without freeing back to the global (or socket) pool. >>> A> >>> A> Do these updates to UMA change this situation and/or do you have >>> further >>> A> improvements coming up? >>> >>> This is especially a problem with ZFS, which utilizes UMA extensively. >>> >>> IMHO, we need a flag for uma_zcreate() that would disable per CPU >>> caches, so >>> that certain zones (ZFS at least) would have them off. >>> >>> It might be a good idea to force this flag on every zone that has >>> allocation >= >>> then the page size. >>> >> What about people running with 256GB+ ram? Do they also want the per >> cpu caches off? > > If you look at the new system there is a static threshold for the > initial item size required for different sized per-cpu buckets. What > might make sense is to tune this size based on available memory. For > what it's worth I looked at solaris settings and they cache roughly 4x > as much on a per-cpu basis. > > The new system should tend to cache less of large and infrequent > allocations vs the old system. I can't say yet whether it is still a > problem. > > I have an implementation of vmem to replace using vm_maps for > kmem_map, buffer_map, etc. which may resolve the zfs allocation > problems. I hope to get this in over the next few weeks. > That looks really exciting Jeff. Thank you. I'm hoping we can give back some testing numbers when it goes in. -Alfred From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 01:37:16 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 371AF868 for ; Wed, 19 Jun 2013 01:37:16 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from mail-pd0-f182.google.com (mail-pd0-f182.google.com [209.85.192.182]) by mx1.freebsd.org (Postfix) with ESMTP id 9DFCF102F for ; Wed, 19 Jun 2013 01:37:15 +0000 (UTC) Received: by mail-pd0-f182.google.com with SMTP id r10so4497203pdi.13 for ; Tue, 18 Jun 2013 18:37:15 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=sender:subject:mime-version:content-type:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to:x-mailer :x-gm-message-state; bh=pcov7rWsJeTnCJf2d3lGj7ziOOfuW8yD6m+bmuwiABo=; b=m5FEmMk2Sz3yUfRLFoNNEYiR6GYtCgfmn2qk73JDvLRbPijFm3Uis4ztkMy9lgdLtU Nu5r6JeTPCVsVJSZY8K+mXFkHzq6AXQVmU86ECsY6di4EI0LgW805XmYLaMCytJW1k9D b/eezkQZUGSvZQZC5VLK8/d0RBxSz5+zTbqj5vllolodOYUf6NTAo1ROubg2U8vj9xPa qDVp9OUjX258SviWEDLzplcjuTYPBroH2xt1tG/+bP99GWuQ/Btt0oMQIRdSb2O8NGLx utDxUA/MQy07/nmXP5WG0KfGTPG+0B2zeRpgbpCv021t7UHyE6GnQvTiASWLSGglPrdK qvYg== X-Received: by 10.66.82.162 with SMTP id j2mr4451173pay.168.1371605834937; Tue, 18 Jun 2013 18:37:14 -0700 (PDT) Received: from [10.0.0.53] (50-78-194-198-static.hfc.comcastbusiness.net. [50.78.194.198]) by mx.google.com with ESMTPSA id wi6sm20614668pbc.22.2013.06.18.18.37.12 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 18 Jun 2013 18:37:13 -0700 (PDT) Sender: Warner Losh Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... Mime-Version: 1.0 (Apple Message framework v1085) Content-Type: text/plain; charset=us-ascii From: Warner Losh In-Reply-To: Date: Tue, 18 Jun 2013 19:37:07 -0600 Content-Transfer-Encoding: quoted-printable Message-Id: <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> <51C08F58.2070308@freebsd.org> To: Peter Wemm X-Mailer: Apple Mail (2.1085) X-Gm-Message-State: ALoCoQkT9Lz7b/JeGv/rVO3S77z+8D+7dqPyS8c6ifIpzwRETzvcJHxL+hkCJYQnNm+kGwp4IxR4 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Tijl Coosemans , Andre Oppermann , src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 01:37:16 -0000 On Jun 18, 2013, at 11:36 AM, Peter Wemm wrote: >> Installing SVN from ports is very painful because of the huge = dependency >> chain it carries, with the largest being Python and Perl IIRC. >=20 > That was one of my main motivations. A 2 year old machine builds this > in ~35 seconds with *no* footprint. The dependency abomination in > ports tests my non-violent nature. This is a major source of pain on > the freebsd.org cluster and after the stealth perl ABI changes without > a version bump.. well.. Thanks for doing something! Although it came as a surprise (and seems to = have broken mips), I have found the developer load for svn isn't = building it once (that's easy, even if it does bring in the kitchen = sink). The problem comes when I update some OTHER port that updates = pyhton or something and boom, svn is busted until I rebuild it.... Warner From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 02:16:05 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 54AB7200; Wed, 19 Jun 2013 02:16:05 +0000 (UTC) (envelope-from peter@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4650911A6; Wed, 19 Jun 2013 02:16:05 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5J2G5W4014469; Wed, 19 Jun 2013 02:16:05 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5J2G5jR014468; Wed, 19 Jun 2013 02:16:05 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306190216.r5J2G5jR014468@svn.freebsd.org> From: Peter Wemm Date: Wed, 19 Jun 2013 02:16:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251982 - head/usr.bin X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 02:16:05 -0000 Author: peter Date: Wed Jun 19 02:16:04 2013 New Revision: 251982 URL: http://svnweb.freebsd.org/changeset/base/251982 Log: Bandaid: mips doesn't seem to have the full set of atomics builtins. I will investigate more. Modified: head/usr.bin/Makefile Modified: head/usr.bin/Makefile ============================================================================== --- head/usr.bin/Makefile Wed Jun 19 00:24:08 2013 (r251981) +++ head/usr.bin/Makefile Wed Jun 19 02:16:04 2013 (r251982) @@ -366,9 +366,11 @@ SUBDIR+= users SUBDIR+= who .endif +.if ${MACHINE_ARCH} != "mips" # mips is broken with pthread .if ${MK_SVN} == "yes" || ${MK_SVNLITE} == "yes" SUBDIR+= svn .endif +.endif .include From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 02:30:33 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 7DEDE53F; Wed, 19 Jun 2013 02:30:33 +0000 (UTC) (envelope-from jeff@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 70E1D1224; Wed, 19 Jun 2013 02:30:33 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5J2UXMN019620; Wed, 19 Jun 2013 02:30:33 GMT (envelope-from jeff@svn.freebsd.org) Received: (from jeff@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5J2UXSw019619; Wed, 19 Jun 2013 02:30:33 GMT (envelope-from jeff@svn.freebsd.org) Message-Id: <201306190230.r5J2UXSw019619@svn.freebsd.org> From: Jeff Roberson Date: Wed, 19 Jun 2013 02:30:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251983 - head/sys/vm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 02:30:33 -0000 Author: jeff Date: Wed Jun 19 02:30:32 2013 New Revision: 251983 URL: http://svnweb.freebsd.org/changeset/base/251983 Log: - Persist the caller's flags in the bucket allocation flags so we don't lose a M_NOVM when we recurse into a bucket allocation. Sponsored by: EMC / Isilon Storage Division Modified: head/sys/vm/uma_core.c Modified: head/sys/vm/uma_core.c ============================================================================== --- head/sys/vm/uma_core.c Wed Jun 19 02:16:04 2013 (r251982) +++ head/sys/vm/uma_core.c Wed Jun 19 02:30:32 2013 (r251983) @@ -2418,7 +2418,7 @@ zone_alloc_bucket(uma_zone_t zone, int f int max; max = zone->uz_count; - bflags = M_NOWAIT; + bflags = (flags & ~M_WAITOK) | M_NOWAIT; if (zone->uz_flags & UMA_ZFLAG_CACHEONLY) bflags |= M_NOVM; bucket = bucket_alloc(zone->uz_count, bflags); From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 02:55:33 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 01EFF96D; Wed, 19 Jun 2013 02:55:33 +0000 (UTC) (envelope-from doconnor@gsoft.com.au) Received: from cain.gsoft.com.au (cain.gsoft.com.au [203.31.81.10]) by mx1.freebsd.org (Postfix) with ESMTP id 7ECCC1302; Wed, 19 Jun 2013 02:55:32 +0000 (UTC) Received: from ur.dons.net.au (ppp121-45-114-28.lns20.adl6.internode.on.net [121.45.114.28]) (authenticated bits=0) by cain.gsoft.com.au (8.14.4/8.14.3) with ESMTP id r5J2t73M030830 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Wed, 19 Jun 2013 12:25:14 +0930 (CST) (envelope-from doconnor@gsoft.com.au) Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... Mime-Version: 1.0 (Mac OS X Mail 6.5 \(1508\)) Content-Type: text/plain; charset=us-ascii From: "Daniel O'Connor" In-Reply-To: <51C08F58.2070308@freebsd.org> Date: Wed, 19 Jun 2013 12:25:07 +0930 Content-Transfer-Encoding: quoted-printable Message-Id: <3F17672C-F72E-46E1-A6E9-503371041FE6@gsoft.com.au> References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> <51C08F58.2070308@freebsd.org> To: Andre Oppermann X-Mailer: Apple Mail (2.1508) X-Spam-Score: 0.163 () BAYES_00,RDNS_DYNAMIC X-Scanned-By: MIMEDefang 2.67 on 203.31.81.10 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Tijl Coosemans , src-committers@freebsd.org, Peter Wemm X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 02:55:33 -0000 On 19/06/2013, at 2:18, Andre Oppermann wrote: >> I don't find it unreasonable to ask developers to install the port. >> And for users it seems all they need is something like portsnap for = base. >> Portsnap already distributes ports svn so it shouldn't be too hard to >> adapt it for base. And the extra layer it adds is very convenient. = Apart >> from a bigger than usual update maybe, portsnap users never even = noticed >> it was switched from cvs to svn at some point. >=20 > Installing SVN from ports is very painful because of the huge = dependency > chain it carries, with the largest being Python and Perl IIRC. Perhaps there should be an svnlite port then, or svnstatic or similar. If an svnstatic port was installed as a package it would have no run = time dependencies, so not huge chains of stuff to install. -- Daniel O'Connor software and network engineer for Genesis Software - http://www.gsoft.com.au "The nice thing about standards is that there are so many of them to choose from." -- Andrew Tanenbaum GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 03:08:02 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 50D37CCA; Wed, 19 Jun 2013 03:08:02 +0000 (UTC) (envelope-from lstewart@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4399A162D; Wed, 19 Jun 2013 03:08:02 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5J382WF031124; Wed, 19 Jun 2013 03:08:02 GMT (envelope-from lstewart@svn.freebsd.org) Received: (from lstewart@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5J382xs031123; Wed, 19 Jun 2013 03:08:02 GMT (envelope-from lstewart@svn.freebsd.org) Message-Id: <201306190308.r5J382xs031123@svn.freebsd.org> From: Lawrence Stewart Date: Wed, 19 Jun 2013 03:08:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251984 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 03:08:02 -0000 Author: lstewart Date: Wed Jun 19 03:08:01 2013 New Revision: 251984 URL: http://svnweb.freebsd.org/changeset/base/251984 Log: When a previous call to sbsndptr() leaves sb->sb_sndptroff at the start of an mbuf that was fully consumed by the previous call, the mbuf ptr returned by the current call ends up being the previous mbuf in the sb chain to the one that contains the data we want. This does not cause any observable issues because the mbuf copy routines happily walk the mbuf chain to get to the data at the moff offset, which in this case means they effectively skip over the mbuf returned by sbsndptr(). We can't adjust sb->sb_sndptr during the previous call for this case because the next mbuf in the chain may not exist yet. We therefore need to detect the condition and make the adjustment during the current call. Fix by detecting the special case of moff being at the start of the next mbuf in the chain and adjust the required accounting variables accordingly. Reviewed by: andre MFC after: 2 weeks Modified: head/sys/kern/uipc_sockbuf.c Modified: head/sys/kern/uipc_sockbuf.c ============================================================================== --- head/sys/kern/uipc_sockbuf.c Wed Jun 19 02:30:32 2013 (r251983) +++ head/sys/kern/uipc_sockbuf.c Wed Jun 19 03:08:01 2013 (r251984) @@ -942,6 +942,13 @@ sbsndptr(struct sockbuf *sb, u_int off, /* Return closest mbuf in chain for current offset. */ *moff = off - sb->sb_sndptroff; m = ret = sb->sb_sndptr ? sb->sb_sndptr : sb->sb_mb; + if (*moff == m->m_len) { + *moff = 0; + sb->sb_sndptroff += m->m_len; + m = ret = m->m_next; + KASSERT(ret->m_len > 0, + ("mbuf %p in sockbuf %p chain has no valid data", ret, sb)); + } /* Advance by len to be as close as possible for the next transmit. */ for (off = off - sb->sb_sndptroff + len - 1; From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 04:47:42 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 17CBD999; Wed, 19 Jun 2013 04:47:42 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 063D11978; Wed, 19 Jun 2013 04:47:42 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5J4lf3a061111; Wed, 19 Jun 2013 04:47:41 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5J4lfTb061110; Wed, 19 Jun 2013 04:47:41 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201306190447.r5J4lfTb061110@svn.freebsd.org> From: Konstantin Belousov Date: Wed, 19 Jun 2013 04:47:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251985 - head/lib/libthr/thread X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 04:47:42 -0000 Author: kib Date: Wed Jun 19 04:47:41 2013 New Revision: 251985 URL: http://svnweb.freebsd.org/changeset/base/251985 Log: The SUSv4tc1 requires that pthread_setcancelstate() shall be not a cancellation point. When enabling the cancellation, only process the pending cancellation for asynchronous mode. Reported and reviewed by: Kohji Okuno Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/lib/libthr/thread/thr_cancel.c Modified: head/lib/libthr/thread/thr_cancel.c ============================================================================== --- head/lib/libthr/thread/thr_cancel.c Wed Jun 19 03:08:01 2013 (r251984) +++ head/lib/libthr/thread/thr_cancel.c Wed Jun 19 04:47:41 2013 (r251985) @@ -87,7 +87,8 @@ _pthread_setcancelstate(int state, int * break; case PTHREAD_CANCEL_ENABLE: curthread->cancel_enable = 1; - testcancel(curthread); + if (curthread->cancel_async) + testcancel(curthread); break; default: return (EINVAL); From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 05:05:17 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 620EAF5F; Wed, 19 Jun 2013 05:05:17 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5235719DA; Wed, 19 Jun 2013 05:05:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5J55HtT067018; Wed, 19 Jun 2013 05:05:17 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5J55G3c067016; Wed, 19 Jun 2013 05:05:17 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201306190505.r5J55G3c067016@svn.freebsd.org> From: Konstantin Belousov Date: Wed, 19 Jun 2013 05:05:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251988 - in head/sys: amd64/amd64 i386/i386 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 05:05:17 -0000 Author: kib Date: Wed Jun 19 05:05:16 2013 New Revision: 251988 URL: http://svnweb.freebsd.org/changeset/base/251988 Log: Some clarifications and updates for the comments, mostly retrieved from Bruce Evans. Trim the trailing spaces. MFC after: 1 week Modified: head/sys/amd64/amd64/exception.S head/sys/i386/i386/exception.s Modified: head/sys/amd64/amd64/exception.S ============================================================================== --- head/sys/amd64/amd64/exception.S Wed Jun 19 05:02:25 2013 (r251987) +++ head/sys/amd64/amd64/exception.S Wed Jun 19 05:05:16 2013 (r251988) @@ -80,18 +80,22 @@ dtrace_invop_calltrap_addr: * This is equivalent to the i386 port's use of SDT_SYS386TGT. * * The cpu will push a certain amount of state onto the kernel stack for - * the current process. See amd64/include/frame.h. - * This includes the current RFLAGS (status register, which includes + * the current process. See amd64/include/frame.h. + * This includes the current RFLAGS (status register, which includes * the interrupt disable state prior to the trap), the code segment register, - * and the return instruction pointer are pushed by the cpu. The cpu - * will also push an 'error' code for certain traps. We push a dummy - * error code for those traps where the cpu doesn't in order to maintain + * and the return instruction pointer are pushed by the cpu. The cpu + * will also push an 'error' code for certain traps. We push a dummy + * error code for those traps where the cpu doesn't in order to maintain * a consistent frame. We also push a contrived 'trap number'. * - * The cpu does not push the general registers, we must do that, and we - * must restore them prior to calling 'iret'. The cpu adjusts the %cs and - * %ss segment registers, but does not mess with %ds, %es, or %fs. Thus we - * must load them with appropriate values for supervisor mode operation. + * The CPU does not push the general registers, so we must do that, and we + * must restore them prior to calling 'iret'. The CPU adjusts %cs and %ss + * but does not mess with %ds, %es, %gs or %fs. We swap the %gs base for + * for the kernel mode operation shortly, without changes to the selector + * loaded. Since superuser long mode works with any selectors loaded into + * segment registers other then %cs, which makes them mostly unused in long + * mode, and kernel does not reference %fs, leave them alone. The segment + * registers are reloaded on return to the usermode. */ MCOUNT_LABEL(user) @@ -503,7 +507,7 @@ nmi_calltrap: #ifdef HWPMC_HOOKS /* * Capture a userspace callchain if needed. - * + * * - Check if the current trap was from user mode. * - Check if the current thread is valid. * - Check if the thread requires a user call chain to be @@ -549,7 +553,7 @@ outofnmi: * At this point the processor has exited NMI mode and is running * with interrupts turned off on the normal kernel stack. * - * If a pending NMI gets recognized at or after this point, it + * If a pending NMI gets recognized at or after this point, it * will cause a kernel callchain to be traced. * * We turn interrupts back on, and call the user callchain capture hook. @@ -567,7 +571,7 @@ nocallchain: #endif testl %ebx,%ebx jnz doreti_exit -nmi_kernelexit: +nmi_kernelexit: /* * Put back the preserved MSR_GSBASE value. */ Modified: head/sys/i386/i386/exception.s ============================================================================== --- head/sys/i386/i386/exception.s Wed Jun 19 05:02:25 2013 (r251987) +++ head/sys/i386/i386/exception.s Wed Jun 19 05:05:16 2013 (r251988) @@ -54,13 +54,13 @@ .globl dtrace_invop_jump_addr .align 4 .type dtrace_invop_jump_addr, @object - .size dtrace_invop_jump_addr, 4 + .size dtrace_invop_jump_addr, 4 dtrace_invop_jump_addr: .zero 4 .globl dtrace_invop_calltrap_addr .align 4 .type dtrace_invop_calltrap_addr, @object - .size dtrace_invop_calltrap_addr, 4 + .size dtrace_invop_calltrap_addr, 4 dtrace_invop_calltrap_addr: .zero 8 #endif @@ -75,22 +75,22 @@ dtrace_invop_calltrap_addr: * Trap and fault vector routines. * * Most traps are 'trap gates', SDT_SYS386TGT. A trap gate pushes state on - * the stack that mostly looks like an interrupt, but does not disable - * interrupts. A few of the traps we are use are interrupt gates, + * the stack that mostly looks like an interrupt, but does not disable + * interrupts. A few of the traps we are use are interrupt gates, * SDT_SYS386IGT, which are nearly the same thing except interrupts are * disabled on entry. * * The cpu will push a certain amount of state onto the kernel stack for - * the current process. The amount of state depends on the type of trap - * and whether the trap crossed rings or not. See i386/include/frame.h. - * At the very least the current EFLAGS (status register, which includes + * the current process. The amount of state depends on the type of trap + * and whether the trap crossed rings or not. See i386/include/frame.h. + * At the very least the current EFLAGS (status register, which includes * the interrupt disable state prior to the trap), the code segment register, - * and the return instruction pointer are pushed by the cpu. The cpu - * will also push an 'error' code for certain traps. We push a dummy - * error code for those traps where the cpu doesn't in order to maintain + * and the return instruction pointer are pushed by the cpu. The cpu + * will also push an 'error' code for certain traps. We push a dummy + * error code for those traps where the cpu doesn't in order to maintain * a consistent frame. We also push a contrived 'trap number'. * - * The cpu does not push the general registers, we must do that, and we + * The cpu does not push the general registers, we must do that, and we * must restore them prior to calling 'iret'. The cpu adjusts the %cs and * %ss segment registers, but does not mess with %ds, %es, or %fs. Thus we * must load them with appropriate values for supervisor mode operation. @@ -145,13 +145,14 @@ IDTVEC(xmm) pushl $0; TRAP(T_XMMFLT) /* - * alltraps entry point. Interrupts are enabled if this was a trap - * gate (TGT), else disabled if this was an interrupt gate (IGT). - * Note that int0x80_syscall is a trap gate. Interrupt gates are - * used by page faults, non-maskable interrupts, debug and breakpoint + * All traps except ones for syscalls jump to alltraps. If + * interrupts were enabled when the trap occurred, then interrupts + * are enabled now if the trap was through a trap gate, else + * disabled if the trap was through an interrupt gate. Note that + * int0x80_syscall is a trap gate. Interrupt gates are used by + * page faults, non-maskable interrupts, debug and breakpoint * exceptions. */ - SUPERALIGN_TEXT .globl alltraps .type alltraps,@function @@ -168,7 +169,7 @@ calltrap: pushl %esp call trap add $4, %esp - + /* * Return via doreti to handle ASTs. */ @@ -187,10 +188,10 @@ IDTVEC(ill) /* Check if this is a user fault. */ cmpl $GSEL_KPL, 4(%esp) /* Check the code segment. */ - + /* If so, just handle it as a normal trap. */ jne norm_ill - + /* * This is a kernel instruction fault that might have been caused * by a DTrace provider. @@ -215,10 +216,10 @@ norm_ill: #endif /* - * SYSCALL CALL GATE (old entry point for a.out binaries) + * Call gate entry for syscalls (lcall 7,0). + * This is used by FreeBSD 1.x a.out executables and "old" NetBSD executables. * * The intersegment call has been set up to specify one dummy parameter. - * * This leaves a place to put eflags so that the call frame can be * converted to a trap frame. Note that the eflags is (semi-)bogusly * pushed into (what will be) tf_err and then copied later into the @@ -246,11 +247,13 @@ IDTVEC(lcall_syscall) jmp doreti /* - * Call gate entry for FreeBSD ELF and Linux/NetBSD syscall (int 0x80) + * Trap gate entry for syscalls (int 0x80). + * This is used by FreeBSD ELF executables, "new" NetBSD executables, and all + * Linux executables. * - * Even though the name says 'int0x80', this is actually a TGT (trap gate) - * rather then an IGT (interrupt gate). Thus interrupts are enabled on - * entry just as they are for a normal syscall. + * Even though the name says 'int0x80', this is actually a trap gate, not an + * interrupt gate. Thus interrupts are enabled on entry just as they are for + * a normal syscall. */ SUPERALIGN_TEXT IDTVEC(int0x80_syscall) @@ -348,13 +351,14 @@ doreti_next: /* * PSL_VM must be checked first since segment registers only * have an RPL in non-VM86 mode. + * ASTs can not be handled now if we are in a vm86 call. */ - testl $PSL_VM,TF_EFLAGS(%esp) /* are we in vm86 mode? */ + testl $PSL_VM,TF_EFLAGS(%esp) jz doreti_notvm86 movl PCPU(CURPCB),%ecx - testl $PCB_VM86CALL,PCB_FLAGS(%ecx) /* are we in a vm86 call? */ - jz doreti_ast /* can handle ASTS now if not */ - jmp doreti_exit + testl $PCB_VM86CALL,PCB_FLAGS(%ecx) + jz doreti_ast + jmp doreti_exit doreti_notvm86: testb $SEL_RPL_MASK,TF_CS(%esp) /* are we returning to user mode? */ @@ -401,7 +405,7 @@ doreti_popl_ds: doreti_iret: iret - /* + /* * doreti_iret_fault and friends. Alternative return code for * the case where we get a fault in the doreti_exit code * above. trap() (i386/i386/trap.c) catches this specific From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 05:11:30 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 99FC5186; Wed, 19 Jun 2013 05:11:30 +0000 (UTC) (envelope-from scottl@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8CB5B19F5; Wed, 19 Jun 2013 05:11:30 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5J5BUEJ069535; Wed, 19 Jun 2013 05:11:30 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5J5BUbH069534; Wed, 19 Jun 2013 05:11:30 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306190511.r5J5BUbH069534@svn.freebsd.org> From: Scott Long Date: Wed, 19 Jun 2013 05:11:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251989 - head/sys/cam X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 05:11:30 -0000 Author: scottl Date: Wed Jun 19 05:11:30 2013 New Revision: 251989 URL: http://svnweb.freebsd.org/changeset/base/251989 Log: Fix an unfortunate typo with the compat shims Obtained from: Netflix MFC after: now Modified: head/sys/cam/cam_compat.h Modified: head/sys/cam/cam_compat.h ============================================================================== --- head/sys/cam/cam_compat.h Wed Jun 19 05:05:16 2013 (r251988) +++ head/sys/cam/cam_compat.h Wed Jun 19 05:11:30 2013 (r251989) @@ -40,9 +40,9 @@ int cam_compat_ioctl(struct cdev *dev, u #define CAMIOCOMMAND_0x16 _IOWR(CAM_VERSION_0x16, 2, union ccb) #define CAMGETPASSTHRU_0x16 _IOWR(CAM_VERSION_0x16, 3, union ccb) -#define CAM_SCATTER_VALID_0x16 0x10 -#define CAM_SG_LIST_PHYS_0x16 0x40000 -#define CAM_DATA_PHYS_0x16 0x20000 +#define CAM_SCATTER_VALID_0x16 0x00000010 +#define CAM_SG_LIST_PHYS_0x16 0x00040000 +#define CAM_DATA_PHYS_0x16 0x00200000 #endif From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 05:38:58 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 1033) id 62C47756; Wed, 19 Jun 2013 05:38:58 +0000 (UTC) Date: Wed, 19 Jun 2013 05:38:58 +0000 From: Alexey Dokuchaev To: Daniel O'Connor Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... Message-ID: <20130619053858.GA61109@FreeBSD.org> References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> <51C08F58.2070308@freebsd.org> <3F17672C-F72E-46E1-A6E9-503371041FE6@gsoft.com.au> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <3F17672C-F72E-46E1-A6E9-503371041FE6@gsoft.com.au> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: Tijl Coosemans , Andre Oppermann , Peter Wemm , svn-src-all@freebsd.org, src-committers@freebsd.org, svn-src-head@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 05:38:58 -0000 On Wed, Jun 19, 2013 at 12:25:07PM +0930, Daniel O'Connor wrote: > On 19/06/2013, at 2:18, Andre Oppermann wrote: > > Installing SVN from ports is very painful because of the huge dependency > > chain it carries, with the largest being Python and Perl IIRC. > > Perhaps there should be an svnlite port then, or svnstatic or similar. > > If an svnstatic port was installed as a package it would have no run time > dependencies, so not huge chains of stuff to install. We do have it, actually: devel/subversion-static. ./danfe From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 05:50:19 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 1033) id 23255AB4; Wed, 19 Jun 2013 05:50:19 +0000 (UTC) Date: Wed, 19 Jun 2013 05:50:19 +0000 From: Alexey Dokuchaev To: Garance A Drosehn Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... Message-ID: <20130619055019.GB61109@FreeBSD.org> References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> <51C0B960.4090303@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <51C0B960.4090303@FreeBSD.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Tijl Coosemans , src-committers@freebsd.org, Peter Wemm X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 05:50:19 -0000 On Tue, Jun 18, 2013 at 03:47:44PM -0400, Garance A Drosehn wrote: > Note that a major change to the FreeBSD repo would require that users > install a new 'svn' anyway, even if they did install 'svn' back when > they first installed FreeBSD. > > IMO, I think this 'svnlite' idea is a good move. I wouldn't want a > full-blown official 'svn' in the base system, but just enough that > a user can immediately get freebsd-specific updates without first > needing to install some port. Frankly I find it somehow wrong that user who wants to immediately get freebsd-specific updates should use any source-control tools and compile stuff from sources. That what developers usually do, not users. Users, in their majority, do not like to build things, and that makes perfect sense. As Ubuntu user at $work, I never had to worry about how and where shall we get updates, yet the system somehow gets them, installs them, only occasionally asking for a reboot. Now, if our user is showing developer's attitude and wants to "make world", then it's fair to assume that he knows how to install things from ports, or has his own static svn client with him all the time, or mounts /usr/src over NFS -- whatever works better for him. ./danfe From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 06:14:45 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 1033) id 97A471C5; Wed, 19 Jun 2013 06:14:45 +0000 (UTC) Date: Wed, 19 Jun 2013 06:14:45 +0000 From: Alexey Dokuchaev To: Garrett Cooper Subject: Re: svn commit: r251958 - head/contrib/bmake Message-ID: <20130619061445.GC61109@FreeBSD.org> References: <201306181935.r5IJZp56084248@svn.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Cc: "Simon J. Gerraty" , svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 06:14:45 -0000 On Tue, Jun 18, 2013 at 02:25:15PM -0700, Garrett Cooper wrote: > On Tue, Jun 18, 2013 at 12:35 PM, Simon J. Gerraty wrote: > > Author: sjg > > Date: Tue Jun 18 19:35:51 2013 > > New Revision: 251958 > > URL: http://svnweb.freebsd.org/changeset/base/251958 > > Was this the source of the huge > ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ ignoring stale .depend > messages? Also seen that shit, quite scary. ;-) Thanks for fixing it and making -current more usable! ./danfe From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 06:26:28 2013 Return-Path: Delivered-To: svn-src-head@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 40192704; Wed, 19 Jun 2013 06:26:28 +0000 (UTC) (envelope-from truckman@FreeBSD.org) Received: from gw.catspoiler.org (gw.catspoiler.org [75.1.14.242]) by mx1.freebsd.org (Postfix) with ESMTP id 202341C1E; Wed, 19 Jun 2013 06:26:27 +0000 (UTC) Received: from FreeBSD.org (mousie.catspoiler.org [192.168.101.2]) by gw.catspoiler.org (8.13.3/8.13.3) with ESMTP id r5J6QCO2029291; Tue, 18 Jun 2013 23:26:16 -0700 (PDT) (envelope-from truckman@FreeBSD.org) Message-Id: <201306190626.r5J6QCO2029291@gw.catspoiler.org> Date: Tue, 18 Jun 2013 23:26:12 -0700 (PDT) From: Don Lewis Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... To: peter@FreeBSD.org In-Reply-To: <201306180253.r5I2rj45053959@svn.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/plain; charset=us-ascii Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 06:26:28 -0000 On 18 Jun, Peter Wemm wrote: > Added: head/usr.bin/svn/Makefile.inc > ============================================================================== > --- /dev/null 00:00:00 1970 (empty, because file is newly added) > +++ head/usr.bin/svn/Makefile.inc Tue Jun 18 02:53:45 2013 (r251886) > @@ -0,0 +1,61 @@ > +# $FreeBSD$ > + > +.include > + > +.if ${MK_SVN} == "yes" > +SVNLITE?= > +.else > +SVNLITE?= lite > +.endif > + > +.if !defined(SVNDIR) > + > +SVNDIR= ${.CURDIR}/../../../contrib/subversion/subversion > +APRU= ${.CURDIR}/../../../contrib/apr-util > +APR= ${.CURDIR}/../../../contrib/apr > +SQLITE= ${.CURDIR}/../../../contrib/sqlite3 > +WARNS?= 0 # defintely not warns friendly > + > +.if exists(${.CURDIR}/../../Makefile.inc) > +.include "${.CURDIR}/../../Makefile.inc" > +.endif > + > +LIBAPRDIR= ${.OBJDIR}/../lib/libapr > +LIBAPR_UTILDIR= ${.OBJDIR}/../lib/libapr_util > +LIBSQLITEDIR= ${.OBJDIR}/../lib/libsqlite3 > +LIBSERFDIR= ${.OBJDIR}/../lib/libserf > + > +LIBSVN_CLIENTDIR= ${.OBJDIR}/../lib/libsvn_client > +LIBSVN_DELTADIR= ${.OBJDIR}/../lib/libsvn_delta > +LIBSVN_DIFFDIR= ${.OBJDIR}/../lib/libsvn_diff > +LIBSVN_FSDIR= ${.OBJDIR}/../lib/libsvn_fs > +LIBSVN_FS_FSDIR= ${.OBJDIR}/../lib/libsvn_fs_fs > +LIBSVN_FS_UTILDIR= ${.OBJDIR}/../lib/libsvn_fs_util > +LIBSVN_RADIR= ${.OBJDIR}/../lib/libsvn_ra > +LIBSVN_RA_LOCALDIR= ${.OBJDIR}/../lib/libsvn_ra_local > +LIBSVN_RA_SVNDIR= ${.OBJDIR}/../lib/libsvn_ra_svn > +LIBSVN_RA_SERFDIR= ${.OBJDIR}/../lib/libsvn_ra_serf > +LIBSVN_REPOSDIR= ${.OBJDIR}/../lib/libsvn_repos > +LIBSVN_SUBRDIR= ${.OBJDIR}/../lib/libsvn_subr > +LIBSVN_WCDIR= ${.OBJDIR}/../lib/libsvn_wc > + > +LIBAPR= ${LIBAPRDIR}/libapr.a > +LIBAPR_UTIL= ${LIBAPR_UTILDIR}/libapr_util.a > +LIBSQLITE= ${LIBSQLITEDIR}/libsqlite3.a > +LIBSERF= ${LIBSQLITEDIR}/libserf.a Should the last line be +LIBSERF= ${LIBSERFDIR}/libserf.a I'm seeing the following buildworld failure on this machine: FreeBSD scratch.catspoiler.org 10.0-CURRENT FreeBSD 10.0-CURRENT #28 r250744: Fri May 17 15:15:52 PDT 2013 dl@scratch.catspoiler.org:/usr/obj/usr/src/sys/GENERICSMB i386 cc -O2 -pipe -march=athlon64 -I/usr/src/usr.bin/svn/svn/../../../contrib/subver sion/subversion/include -I/usr/src/usr.bin/svn/svn/../../../contrib/subversion/s ubversion -I/usr/src/usr.bin/svn/svn/.. -I/usr/src/usr.bin/svn/svn/../lib/libap r -I/usr/src/usr.bin/svn/svn/../../../contrib/apr/include/arch/unix -I/usr/src /usr.bin/svn/svn/../../../contrib/apr/include -I/usr/src/usr.bin/svn/svn/../lib /libapr_util -I/usr/src/usr.bin/svn/svn/../../../contrib/apr-util/include/priva te -I/usr/src/usr.bin/svn/svn/../../../contrib/apr-util/include -std=gnu99 -Qun used-arguments -fstack-protector -Wno-pointer-sign -Wno-empty-body -Wno-string-p lus-int -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality -W no-unused-function -Wno-conversion -Wno-switch -Wno-switch-enum -Wno-knr-promote d-parameter -Wno-parentheses -c /usr/src/usr.bin/svn/svn/../../../contrib/subver sion/subversion/svn/util.c make: don't know how to make /usr/obj/usr/src/usr.bin/svn/svn/../lib/libsqlite3/ libserf.a. Stop *** [all] Error code 2 Stop in /usr/src/usr.bin/svn. *** [all] Error code 1 Stop in /usr/src/usr.bin. It looks like make is looking for libserf.a in the wrong directory. # ls /usr/obj/usr/src/usr.bin/svn/lib/libsqlite3 .depend libsqlite3.a sqlite3.o ls /usr/obj/usr/src/usr.bin/svn/lib/libserf .depend bwtp_buckets.o limit_buckets.o aggregate_buckets.o chunk_buckets.o mmap_buckets.o allocator.o context.o outgoing.o auth.o dechunk_buckets.o request_buckets.o auth_basic.o deflate_buckets.o response_body_buckets.o auth_digest.o file_buckets.o response_buckets.o auth_kerb.o headers_buckets.o simple_buckets.o auth_kerb_gss.o incoming.o socket_buckets.o barrier_buckets.o iovec_buckets.o ssl_buckets.o buckets.o libserf.a ssltunnel.o I've got two other questions. Why isn't anyone else (or the tinderbox) seeing this problem? Why does the svnlite build succeed if I run make from /usr/src/usr.bin/svn/svn? From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 06:32:54 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 5E4998CE; Wed, 19 Jun 2013 06:32:54 +0000 (UTC) (envelope-from davidxu@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 4CB531C4A; Wed, 19 Jun 2013 06:32:54 +0000 (UTC) Received: from xyf.my.dom (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.7/8.14.7) with ESMTP id r5J6WpC7037039; Wed, 19 Jun 2013 06:32:51 GMT (envelope-from davidxu@freebsd.org) Message-ID: <51C150B7.1040200@freebsd.org> Date: Wed, 19 Jun 2013 14:33:27 +0800 From: David Xu User-Agent: Mozilla/5.0 (X11; FreeBSD i386; rv:17.0) Gecko/20130416 Thunderbird/17.0.5 MIME-Version: 1.0 To: Alexey Dokuchaev Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> <51C0B960.4090303@FreeBSD.org> <20130619055019.GB61109@FreeBSD.org> In-Reply-To: <20130619055019.GB61109@FreeBSD.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Tijl Coosemans , Peter Wemm , svn-src-all@freebsd.org, Garance A Drosehn , src-committers@freebsd.org, svn-src-head@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 06:32:54 -0000 On 2013/06/19 13:50, Alexey Dokuchaev wrote: > On Tue, Jun 18, 2013 at 03:47:44PM -0400, Garance A Drosehn wrote: >> Note that a major change to the FreeBSD repo would require that users >> install a new 'svn' anyway, even if they did install 'svn' back when >> they first installed FreeBSD. >> >> IMO, I think this 'svnlite' idea is a good move. I wouldn't want a >> full-blown official 'svn' in the base system, but just enough that >> a user can immediately get freebsd-specific updates without first >> needing to install some port. > > Frankly I find it somehow wrong that user who wants to immediately get > freebsd-specific updates should use any source-control tools and compile > stuff from sources. That what developers usually do, not users. Users, > in their majority, do not like to build things, and that makes perfect > sense. > > As Ubuntu user at $work, I never had to worry about how and where shall > we get updates, yet the system somehow gets them, installs them, only > occasionally asking for a reboot. > To do this, one has to put everything in a package managment system, let the system resolve what should be upgraded via package dependence. > Now, if our user is showing developer's attitude and wants to "make > world", then it's fair to assume that he knows how to install things > from ports, or has his own static svn client with him all the time, > or mounts /usr/src over NFS -- whatever works better for him. > > ./danfe > From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 07:28:24 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 277BD679; Wed, 19 Jun 2013 07:28:24 +0000 (UTC) (envelope-from gprspb@mail.ru) Received: from smtp22.mail.ru (smtp22.mail.ru [94.100.176.175]) by mx1.freebsd.org (Postfix) with ESMTP id 9B1471DF2; Wed, 19 Jun 2013 07:28:23 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mail.ru; s=mail2; h=In-Reply-To:Content-Type:MIME-Version:References:Message-ID:Subject:Cc:To:From:Date; bh=v7Y2B0RVqCrYiMOhr036p1zhegURIbfVZJVrpMKwqpc=; b=hbibf0d/id++UMBcJdYzojcMyn2LKOU6WJUqnztLpJb1LsbyTI3LzjDVzzPSbmywYTiYJZqs9BBD4OmQz7F2kjmyTmqerVw+yMCry7N/A2WZJ6XB+y62YtR8WIeZUHWqV/Gc34ufMouK7LZTqWEz3nexedIiU2HVLAb6KIKxsqs=; Received: from [93.185.182.46] (port=16778 helo=gpr.nnz-home.ru) by smtp22.mail.ru with esmtpa (envelope-from ) id 1UpCoQ-00062g-TQ; Wed, 19 Jun 2013 11:28:15 +0400 Received: from gpr by gpr.nnz-home.ru with local (Exim 4.80.1 (FreeBSD)) (envelope-from ) id 1UpCoI-0000H4-Hu; Wed, 19 Jun 2013 11:28:06 +0400 Date: Wed, 19 Jun 2013 11:28:06 +0400 From: Gennady Proskurin To: Adrian Chadd Subject: Re: svn commit: r251741 - head/sys/contrib/dev/ath/ath_hal/ar9300 Message-ID: <20130619072806.GA985@gpr.nnz-home.ru> References: <201306140815.r5E8FSPn029488@svn.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201306140815.r5E8FSPn029488@svn.freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) X-Spam: Not detected X-Mras: Ok Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 07:28:24 -0000 Replying to random ath commit. Now my ath wireless device does not work. It was broken some time after 8 Jun (after my last update at 8 Jun it worked, now after today's update to r251945 it does not). It spams log and console with messages: Jun 19 10:04:27 gpr kernel: ath0: stuck beacon; resetting (bmiss count 4) Jun 19 10:04:58 gpr last message repeated 101 times Jun 19 10:05:42 gpr last message repeated 143 times Jun 19 10:05:42 gpr kernel: ath0: ath_raw_xmit: sc_inreset_cnt > 0; bailing Jun 19 10:05:42 gpr kernel: ath0: stuck beacon; resetting (bmiss count 4) Jun 19 10:05:47 gpr last message repeated 11 times Jun 19 10:05:47 gpr kernel: ath0: ath_raw_xmit: sc_inreset_cnt > 0; bailing Jun 19 10:05:47 gpr kernel: ath0: ath_raw_xmit: sc_inreset_cnt > 0; bailing Jun 19 10:05:47 gpr kernel: ath0: stuck beacon; resetting (bmiss count 4) Jun 19 10:05:53 gpr last message repeated 19 times ... Jun 19 10:06:20 gpr kernel: ath0: stuck beacon; resetting (bmiss count 4) Jun 19 10:06:21 gpr last message repeated 4 times Jun 19 10:06:22 gpr kernel: ath0: ath_tx_should_swq_frame: f0:4f:7c:fc:b3:22: Node is asleep; sending mgmt (type=0, subtype=176) Jun 19 10:06:22 gpr kernel: ath0: ath_tx_should_swq_frame: f0:4f:7c:fc:b3:22: Node is asleep; sending mgmt (type=0, subtype=176) Jun 19 10:06:22 gpr kernel: ath0: stuck beacon; resetting (bmiss count 4) Jun 19 10:06:23 gpr kernel: ath0: stuck beacon; resetting (bmiss count 4) Jun 19 10:06:23 gpr kernel: ath0: ath_tx_node_wakeup: an=0xffffff8002322000: node was already awake Jun 19 10:06:24 gpr kernel: ath0: stuck beacon; resetting (bmiss count 4) Jun 19 10:06:25 gpr kernel: ath0: stuck beacon; resetting (bmiss count 4) # uname -a FreeBSD gpr.nnz-home.ru 10.0-CURRENT FreeBSD 10.0-CURRENT #0 r251945+1330981: Wed Jun 19 08:09:32 MSK 2013 gpr@gpr.nnz-home.ru:/usr/obj/usr/src/freebsd-head/sys/GPR amd64 Boot log device info: Jun 19 10:04:18 gpr kernel: ath0: mem 0xfbdf0000-0xfbdfffff irq 19 at device 10.0 on pci0 Jun 19 10:04:18 gpr kernel: ath0: AR2413 mac 7.9 RF2413 phy 4.5 Jun 19 10:04:18 gpr kernel: ath0: 2GHz radio: 0x0000; 5GHz radio: 0x0056 # pciconf -lv ath0@pci0:0:10:0: class=0x020000 card=0x2051168c chip=0x0013168c rev=0x01 hdr=0x00 vendor = 'Atheros Communications Inc.' device = 'AR5212/AR5213 Wireless Network Adapter' class = network subclass = ethernet # rc.conf wlans_ath0="wlan0" create_args_wlan0="wlandev ath0 wlanmode hostap" ifconfig_wlan0="10.X.X.X/24" hostapd_enable="YES" I can do additional tests or submit more info, if necessary. On Fri, Jun 14, 2013 at 08:15:28AM +0000, Adrian Chadd wrote: > Author: adrian > Date: Fri Jun 14 08:15:28 2013 > New Revision: 251741 > URL: http://svnweb.freebsd.org/changeset/base/251741 > > Log: > The AR9300 HAL uses this config to program AR_PHY_SWITCH_COM_2 on AR9485 > NICs which have bluetooth coexistence enabled. > > The WB225 NIC has the common antenna switch configuration set to 0x0 which > disables all external switch bit setting. This obviously won't work when > doing coexistence. > > This value is a magic value from the windows .inf files. It _looks_ right > but I haven't yet verified it - unfortunately my AR9285+AR3012 BT combo > has an earlier BT device which doesn't actually _have_ firmware on it. > So I have to fix ath3kfw to handle loading in firmware into the newer > NICs before I can finish testing this. > > This may not hold true for CUS198, which is another custom AR9485 board. > > Modified: > head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd.c > > Modified: head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd.c > ============================================================================== > --- head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd.c Fri Jun 14 08:13:21 2013 (r251740) > +++ head/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_freebsd.c Fri Jun 14 08:15:28 2013 (r251741) > @@ -249,6 +249,9 @@ ar9300_attach_freebsd_ops(struct ath_hal > /* LNA diversity functions */ > ah->ah_divLnaConfGet = ar9300_ant_div_comb_get_config; > ah->ah_divLnaConfSet = ar9300_ant_div_comb_set_config; > + > + /* Setup HAL configuration defaults */ > + ah->ah_config.ath_hal_ant_ctrl_comm2g_switch_enable = 0x000bbb88; > } > > HAL_BOOL > _______________________________________________ > svn-src-head@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/svn-src-head > To unsubscribe, send any mail to "svn-src-head-unsubscribe@freebsd.org" > From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 14:14:20 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 09AC4102; Wed, 19 Jun 2013 14:14:19 +0000 (UTC) (envelope-from nwhitehorn@freebsd.org) Received: from smtpauth4.wiscmail.wisc.edu (wmauth4.doit.wisc.edu [144.92.197.145]) by mx1.freebsd.org (Postfix) with ESMTP id 71A1B1468; Wed, 19 Jun 2013 14:14:19 +0000 (UTC) MIME-version: 1.0 Content-transfer-encoding: 7BIT Content-type: text/plain; CHARSET=US-ASCII; format=flowed Received: from avs-daemon.smtpauth4.wiscmail.wisc.edu by smtpauth4.wiscmail.wisc.edu (Oracle Communications Messaging Server 7u4-27.01(7.0.4.27.0) 64bit (built Aug 30 2012)) id <0MON008008QUGF00@smtpauth4.wiscmail.wisc.edu>; Wed, 19 Jun 2013 09:14:13 -0500 (CDT) X-Spam-PmxInfo: Server=avs-4, Version=6.0.2.2308539, Antispam-Engine: 2.7.2.2107409, Antispam-Data: 2013.6.19.140324, SenderIP=0.0.0.0 X-Spam-Report: AuthenticatedSender=yes, SenderIP=0.0.0.0 Received: from comporellon.tachypleus.net (adsl-76-208-69-84.dsl.mdsnwi.sbcglobal.net [76.208.69.84]) by smtpauth4.wiscmail.wisc.edu (Oracle Communications Messaging Server 7u4-27.01(7.0.4.27.0) 64bit (built Aug 30 2012)) with ESMTPSA id <0MON00EUG8VOZR10@smtpauth4.wiscmail.wisc.edu>; Wed, 19 Jun 2013 09:14:13 -0500 (CDT) Message-id: <51C1BCB4.5090501@freebsd.org> Date: Wed, 19 Jun 2013 09:14:12 -0500 From: Nathan Whitehorn User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130615 Thunderbird/17.0.6 To: Baptiste Daroussin Subject: Re: svn commit: r251843 - in head: contrib/dialog contrib/dialog/package contrib/dialog/package/debian contrib/dialog/po contrib/dialog/samples contrib/dialog/samples/copifuncs contrib/dialog/samples/i... References: <201306171028.r5HAStR2033639@svn.freebsd.org> <51BF0F0F.1080907@freebsd.org> <20130617133644.GB62733@ithaqua.etoilebsd.net> <51BF1121.9000408@freebsd.org> <20130617151734.GC62733@ithaqua.etoilebsd.net> In-reply-to: <20130617151734.GC62733@ithaqua.etoilebsd.net> Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 14:14:20 -0000 On 06/17/13 10:17, Baptiste Daroussin wrote: > On Mon, Jun 17, 2013 at 08:37:37AM -0500, Nathan Whitehorn wrote: >> On 06/17/13 08:36, Baptiste Daroussin wrote: >>> On Mon, Jun 17, 2013 at 08:28:47AM -0500, Nathan Whitehorn wrote: >>>> On 06/17/13 05:28, Baptiste Daroussin wrote: >>>>> Author: bapt >>>>> Date: Mon Jun 17 10:28:55 2013 >>>>> New Revision: 251843 >>>>> URL: http://svnweb.freebsd.org/changeset/base/251843 >>>>> >>>>> Log: >>>>> Update dialog to 1.2-20130523 >>>>> Level up WARNS >>>> This seems to have broken bsdinstall. In particular, it is no longer >>>> possible to get focus in the text input boxes in the partition editor's >>>> (sade/bsdinstall partedit) "Add Partition" or "Modify Partition" >>>> dialogs. Any chance you could try to figure out why? My Ncurses >>>> debugging skills are unfortunately not great. >>> I'm on it, yes, it seems like the dlg_forms is leaking the bindings from the >>> diskeditors form. >>> >>> I have a working patch but it is ugly. I'm trying to figure out the clean way to >>> do so. >>> >>> regards, >>> Bapt >> Thanks much! Please let me know if I can do anything to help. > I committed a workaround, I dicovered that the key on the Partition Editor > window are not the one we expect to be, I see no errors yet in libdialog code, > I'll continue investigating, but waiting for a proper fix, it is usable again. > > regards, > Bapt Thanks very much, both for this and the dialog update! I really appreciate it. -Nathan From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 15:01:32 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 47FF4788; Wed, 19 Jun 2013 15:01:32 +0000 (UTC) (envelope-from tijl@freebsd.org) Received: from mailrelay010.isp.belgacom.be (mailrelay010.isp.belgacom.be [195.238.6.177]) by mx1.freebsd.org (Postfix) with ESMTP id 20437187C; Wed, 19 Jun 2013 15:01:30 +0000 (UTC) X-Belgacom-Dynamic: yes X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AuMGAFvGwVFR8m08/2dsb2JhbABagwkxv2R/F3SCIwEBBVYREhALDgoJFgQLCQMCAQIBJx4GDQEHAQGIDrtXj0IHCYNYA5ABgSyHPZAbgViBOTo Received: from 60.109-242-81.adsl-dyn.isp.belgacom.be (HELO kalimero.tijl.coosemans.org) ([81.242.109.60]) by relay.skynet.be with ESMTP; 19 Jun 2013 17:01:24 +0200 Received: from kalimero.tijl.coosemans.org (kalimero.tijl.coosemans.org [127.0.0.1]) by kalimero.tijl.coosemans.org (8.14.7/8.14.7) with ESMTP id r5JF1McG012162; Wed, 19 Jun 2013 17:01:22 +0200 (CEST) (envelope-from tijl@FreeBSD.org) Message-ID: <51C1C7BD.9060201@FreeBSD.org> Date: Wed, 19 Jun 2013 17:01:17 +0200 From: Tijl Coosemans User-Agent: Mozilla/5.0 (X11; FreeBSD i386; rv:17.0) Gecko/20130517 Thunderbird/17.0.6 MIME-Version: 1.0 To: Warner Losh Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C08D7E.2000605@coosemans.org> <51C08F58.2070308@freebsd.org> <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> In-Reply-To: <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> X-Enigmail-Version: 1.5.1 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="----enig2PCQTSVESMILISWFUJFHD" Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Andre Oppermann , Peter Wemm X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 15:01:32 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) ------enig2PCQTSVESMILISWFUJFHD Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On 2013-06-19 03:37, Warner Losh wrote: > On Jun 18, 2013, at 11:36 AM, Peter Wemm wrote: >>> Installing SVN from ports is very painful because of the huge depende= ncy >>> chain it carries, with the largest being Python and Perl IIRC. >> >> That was one of my main motivations. A 2 year old machine builds this= >> in ~35 seconds with *no* footprint. The dependency abomination in >> ports tests my non-violent nature. This is a major source of pain on >> the freebsd.org cluster and after the stealth perl ABI changes without= >> a version bump.. well.. >=20 > Thanks for doing something! Although it came as a surprise (and seems > to have broken mips), I have found the developer load for svn isn't > building it once (that's easy, even if it does bring in the kitchen > sink). The problem comes when I update some OTHER port that updates > pyhton or something and boom, svn is busted until I rebuild it.... Python and Perl are pulled in by devel/apr1. I've sent a patch that splits up and simplifies this port to apache@ for discussion. I'll check the other subversion dependencies to see if more can be removed. Getting back to the discussion, the arguments I've seen so far are all about how bad the port is, but those are just reasons to fix the port not to tie the repo to releases. The transition period for the cvs-to- svn switch was way too long (several years) and despite that the switch was still disruptive to everybody's work flow. And now we're setting up exactly the same infrastructure just s/cvs/svn/? I'm also not convinced svnup in base would be good, because it still pulls src directly from svn and that would not be the case with a portsnap-like tool. With portsnap code distribution is separated from the underlying vcs. ------enig2PCQTSVESMILISWFUJFHD Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iF0EAREIAAYFAlHBx8IACgkQfoCS2CCgtiupiwD+OSuDHnoEb2SIYuTOBv8MJ/5R hBnLh/bpUNY1kykMITwA9iBqPi/7Im8H672AGqu5IU5KcZTYjs47XPUhCx1F0to= =tp89 -----END PGP SIGNATURE----- ------enig2PCQTSVESMILISWFUJFHD-- From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 15:59:22 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 13143229; Wed, 19 Jun 2013 15:59:22 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 051571C00; Wed, 19 Jun 2013 15:59:22 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5JFxLkC074228; Wed, 19 Jun 2013 15:59:21 GMT (envelope-from ae@svn.freebsd.org) Received: (from ae@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5JFxLXd074227; Wed, 19 Jun 2013 15:59:21 GMT (envelope-from ae@svn.freebsd.org) Message-Id: <201306191559.r5JFxLXd074227@svn.freebsd.org> From: "Andrey V. Elsukov" Date: Wed, 19 Jun 2013 15:59:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251995 - head/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-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 15:59:22 -0000 Author: ae Date: Wed Jun 19 15:59:21 2013 New Revision: 251995 URL: http://svnweb.freebsd.org/changeset/base/251995 Log: Use ICMP6STAT_INC() macro for ICMPv6 errors accounting. MFC after: 2 weeks Modified: head/sys/netinet6/icmp6.c Modified: head/sys/netinet6/icmp6.c ============================================================================== --- head/sys/netinet6/icmp6.c Wed Jun 19 15:12:10 2013 (r251994) +++ head/sys/netinet6/icmp6.c Wed Jun 19 15:59:21 2013 (r251995) @@ -130,7 +130,7 @@ VNET_DECLARE(int, icmp6_nodeinfo); #define V_icmp6errppslim_last VNET(icmp6errppslim_last) #define V_icmp6_nodeinfo VNET(icmp6_nodeinfo) -static void icmp6_errcount(struct icmp6errstat *, int, int); +static void icmp6_errcount(int, int); static int icmp6_rip6_input(struct mbuf **, int); static int icmp6_ratelimit(const struct in6_addr *, const int, const int); static const char *icmp6_redirect_diag(struct in6_addr *, @@ -159,59 +159,59 @@ kmod_icmp6stat_inc(int statnum) } static void -icmp6_errcount(struct icmp6errstat *stat, int type, int code) +icmp6_errcount(int type, int code) { switch (type) { case ICMP6_DST_UNREACH: switch (code) { case ICMP6_DST_UNREACH_NOROUTE: - stat->icp6errs_dst_unreach_noroute++; + ICMP6STAT_INC(icp6s_odst_unreach_noroute); return; case ICMP6_DST_UNREACH_ADMIN: - stat->icp6errs_dst_unreach_admin++; + ICMP6STAT_INC(icp6s_odst_unreach_admin); return; case ICMP6_DST_UNREACH_BEYONDSCOPE: - stat->icp6errs_dst_unreach_beyondscope++; + ICMP6STAT_INC(icp6s_odst_unreach_beyondscope); return; case ICMP6_DST_UNREACH_ADDR: - stat->icp6errs_dst_unreach_addr++; + ICMP6STAT_INC(icp6s_odst_unreach_addr); return; case ICMP6_DST_UNREACH_NOPORT: - stat->icp6errs_dst_unreach_noport++; + ICMP6STAT_INC(icp6s_odst_unreach_noport); return; } break; case ICMP6_PACKET_TOO_BIG: - stat->icp6errs_packet_too_big++; + ICMP6STAT_INC(icp6s_opacket_too_big); return; case ICMP6_TIME_EXCEEDED: switch (code) { case ICMP6_TIME_EXCEED_TRANSIT: - stat->icp6errs_time_exceed_transit++; + ICMP6STAT_INC(icp6s_otime_exceed_transit); return; case ICMP6_TIME_EXCEED_REASSEMBLY: - stat->icp6errs_time_exceed_reassembly++; + ICMP6STAT_INC(icp6s_otime_exceed_reassembly); return; } break; case ICMP6_PARAM_PROB: switch (code) { case ICMP6_PARAMPROB_HEADER: - stat->icp6errs_paramprob_header++; + ICMP6STAT_INC(icp6s_oparamprob_header); return; case ICMP6_PARAMPROB_NEXTHEADER: - stat->icp6errs_paramprob_nextheader++; + ICMP6STAT_INC(icp6s_oparamprob_nextheader); return; case ICMP6_PARAMPROB_OPTION: - stat->icp6errs_paramprob_option++; + ICMP6STAT_INC(icp6s_oparamprob_option); return; } break; case ND_REDIRECT: - stat->icp6errs_redirect++; + ICMP6STAT_INC(icp6s_oredirect); return; } - stat->icp6errs_unknown++; + ICMP6STAT_INC(icp6s_ounknown); } /* @@ -262,7 +262,7 @@ icmp6_error(struct mbuf *m, int type, in ICMP6STAT_INC(icp6s_error); /* count per-type-code statistics */ - icmp6_errcount(&V_icmp6stat.icp6s_outerrhist, type, code); + icmp6_errcount(type, code); #ifdef M_DECRYPTED /*not openbsd*/ if (m->m_flags & M_DECRYPTED) { @@ -2530,7 +2530,7 @@ icmp6_redirect_output(struct mbuf *m0, s struct ifnet *outif = NULL; struct sockaddr_in6 src_sa; - icmp6_errcount(&V_icmp6stat.icp6s_outerrhist, ND_REDIRECT, 0); + icmp6_errcount(ND_REDIRECT, 0); /* if we are not router, we don't send icmp6 redirect */ if (!V_ip6_forwarding) From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 17:13:17 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 1A99C6B4; Wed, 19 Jun 2013 17:13:17 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 0D1921149; Wed, 19 Jun 2013 17:13:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5JHDGoP099855; Wed, 19 Jun 2013 17:13:16 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5JHDG4w099854; Wed, 19 Jun 2013 17:13:16 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306191713.r5JHDG4w099854@svn.freebsd.org> From: Devin Teske Date: Wed, 19 Jun 2013 17:13:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251996 - head/usr.sbin/bsdconfig/share X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 17:13:17 -0000 Author: dteske Date: Wed Jun 19 17:13:16 2013 New Revision: 251996 URL: http://svnweb.freebsd.org/changeset/base/251996 Log: Alphabetize includes. Modified: head/usr.sbin/bsdconfig/share/script.subr Modified: head/usr.sbin/bsdconfig/share/script.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/script.subr Wed Jun 19 15:59:21 2013 (r251995) +++ head/usr.sbin/bsdconfig/share/script.subr Wed Jun 19 17:13:16 2013 (r251996) @@ -32,10 +32,10 @@ BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." script.subr f_include $BSDCFG_SHARE/device.subr -f_include $BSDCFG_SHARE/variable.subr f_include $BSDCFG_SHARE/media/any.subr f_include $BSDCFG_SHARE/media/tcpip.subr f_include $BSDCFG_SHARE/packages/packages.subr +f_include $BSDCFG_SHARE/variable.subr ############################################################ GLOBALS From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 17:14:59 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id DB5B5867; Wed, 19 Jun 2013 17:14:59 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id CDC221168; Wed, 19 Jun 2013 17:14:59 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5JHExMc000266; Wed, 19 Jun 2013 17:14:59 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5JHExfo000265; Wed, 19 Jun 2013 17:14:59 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306191714.r5JHExfo000265@svn.freebsd.org> From: Devin Teske Date: Wed, 19 Jun 2013 17:14:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r251997 - head/usr.sbin/bsdconfig/share X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 17:14:59 -0000 Author: dteske Date: Wed Jun 19 17:14:59 2013 New Revision: 251997 URL: http://svnweb.freebsd.org/changeset/base/251997 Log: Alphabetize reserved-word (resword) registration. Modified: head/usr.sbin/bsdconfig/share/script.subr Modified: head/usr.sbin/bsdconfig/share/script.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/script.subr Wed Jun 19 17:13:16 2013 (r251996) +++ head/usr.sbin/bsdconfig/share/script.subr Wed Jun 19 17:14:59 2013 (r251997) @@ -159,10 +159,6 @@ f_resword_new loadConfig f_script_load # device.subr f_resword_new deviceRescan f_device_rescan -# variable.subr -f_resword_new installVarDefaults f_variable_set_defaults -f_resword_new dumpVariables f_dump_variables - # media/common.subr f_resword_new mediaOpen f_media_open f_resword_new mediaClose f_media_close @@ -192,6 +188,10 @@ f_resword_new mediaSetHTTPProxy f_media_ # packages/packages.subr f_resword_new configPackages f_package_config +# variable.subr +f_resword_new installVarDefaults f_variable_set_defaults +f_resword_new dumpVariables f_dump_variables + f_dprintf "%s: Successfully loaded." script.subr fi # ! $_SCRIPT_SUBR From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 17:58:46 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id DF5C8A34; Wed, 19 Jun 2013 17:58:46 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from bigwig.baldwin.cx (bigwig.baldwin.cx [IPv6:2001:470:1f11:75::1]) by mx1.freebsd.org (Postfix) with ESMTP id B8E6B146F; Wed, 19 Jun 2013 17:58:46 +0000 (UTC) Received: from jhbbsd.localnet (unknown [209.249.190.124]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id B51CFB97F; Wed, 19 Jun 2013 13:58:43 -0400 (EDT) From: John Baldwin To: Tijl Coosemans Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... Date: Wed, 19 Jun 2013 11:13:29 -0400 User-Agent: KMail/1.13.5 (FreeBSD/8.2-CBSD-20110714-p25; KDE/4.5.5; amd64; ; ) References: <201306180253.r5I2rj45053959@svn.freebsd.org> <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> <51C1C7BD.9060201@FreeBSD.org> In-Reply-To: <51C1C7BD.9060201@FreeBSD.org> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Message-Id: <201306191113.29703.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Wed, 19 Jun 2013 13:58:43 -0400 (EDT) Cc: src-committers@freebsd.org, Andre Oppermann , Peter Wemm , svn-src-all@freebsd.org, svn-src-head@freebsd.org, Warner Losh X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 17:58:47 -0000 On Wednesday, June 19, 2013 11:01:17 am Tijl Coosemans wrote: > I'm also not convinced svnup in base would be good, because it still > pulls src directly from svn and that would not be the case with a > portsnap-like tool. With portsnap code distribution is separated from > the underlying vcs. portsnap does not work for src. (I thought we had already covered that in earlier threads?) portsnap only moves forward. It is a very important feature for our users that whatever tool they use for source updating be bidirectional. In particular it is very common practice to use a bisect operation to isolate changes responsible for regressions. -- John Baldwin From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 18:14:00 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 66B5F26E; Wed, 19 Jun 2013 18:14:00 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 58A58166D; Wed, 19 Jun 2013 18:14:00 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5JIE0Dg019406; Wed, 19 Jun 2013 18:14:00 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5JIDxS4019392; Wed, 19 Jun 2013 18:13:59 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306191813.r5JIDxS4019392@svn.freebsd.org> From: Devin Teske Date: Wed, 19 Jun 2013 18:13:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252000 - in head/usr.sbin/bsdconfig: . password security startup usermgmt X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 18:14:00 -0000 Author: dteske Date: Wed Jun 19 18:13:58 2013 New Revision: 252000 URL: http://svnweb.freebsd.org/changeset/base/252000 Log: Whitespace and comments. Modified: head/usr.sbin/bsdconfig/bsdconfig head/usr.sbin/bsdconfig/password/password head/usr.sbin/bsdconfig/security/security head/usr.sbin/bsdconfig/startup/rcconf head/usr.sbin/bsdconfig/startup/rcedit head/usr.sbin/bsdconfig/usermgmt/userinput Modified: head/usr.sbin/bsdconfig/bsdconfig ============================================================================== --- head/usr.sbin/bsdconfig/bsdconfig Wed Jun 19 18:01:37 2013 (r251999) +++ head/usr.sbin/bsdconfig/bsdconfig Wed Jun 19 18:13:58 2013 (r252000) @@ -180,8 +180,7 @@ dialog_menu_main() case "$menu_program" in /*) : already fully qualified ;; - *) - menu_program="$menuitem/$menu_program" + *) menu_program="$menuitem/$menu_program" esac f_shell_escape "$menu_title" menu_title Modified: head/usr.sbin/bsdconfig/password/password ============================================================================== --- head/usr.sbin/bsdconfig/password/password Wed Jun 19 18:01:37 2013 (r251999) +++ head/usr.sbin/bsdconfig/password/password Wed Jun 19 18:13:58 2013 (r252000) @@ -69,6 +69,9 @@ f_dialog_title "$msg_root_password" f_dialog_backtitle "${ipgm:+bsdconfig }$pgm" f_mustberoot_init +# +# Prompt the user to input a new password (and change it if they don't cancel) +# if f_dialog_input_password; then err=$( echo "$pw_password" | pw usermod $USER_ROOT -h 0 2>&1 ) || f_die $? "%s" "$err" Modified: head/usr.sbin/bsdconfig/security/security ============================================================================== --- head/usr.sbin/bsdconfig/security/security Wed Jun 19 18:01:37 2013 (r251999) +++ head/usr.sbin/bsdconfig/security/security Wed Jun 19 18:13:58 2013 (r252000) @@ -162,9 +162,9 @@ while :; do "2 ["?"] $msg_securelevel") # Configure securelevels for the system $BSDCFG_LIBE/$APP_DIR/kern_securelevel ${USE_XDIALOG:+-X} ;; "3 [X] $msg_nfs_port") # Require that NFS clients use reserved ports - f_sysrc_set nfs_reserved_port_only "NO";; + f_sysrc_set nfs_reserved_port_only "NO" ;; "3 [ ] $msg_nfs_port") # Same; Toggle value - f_sysrc_set nfs_reserved_port_only "YES";; + f_sysrc_set nfs_reserved_port_only "YES" ;; esac done Modified: head/usr.sbin/bsdconfig/startup/rcconf ============================================================================== --- head/usr.sbin/bsdconfig/startup/rcconf Wed Jun 19 18:01:37 2013 (r251999) +++ head/usr.sbin/bsdconfig/startup/rcconf Wed Jun 19 18:13:58 2013 (r252000) @@ -246,9 +246,7 @@ while :; do case "$mtag" in "X $msg_exit") break ;; - "> $msg_add_new") - $BSDCFG_LIBE/$APP_DIR/rcadd ${USE_XDIALOG:+-X} - ;; + "> $msg_add_new") $BSDCFG_LIBE/$APP_DIR/rcadd ${USE_XDIALOG:+-X} ;; "> $msg_delete") # rcdelete has a similar interface that can inherit the below: export SHOW_VALUE SHOW_DESC SHOW_DEFAULT_VALUE SHOW_CONFIGURED Modified: head/usr.sbin/bsdconfig/startup/rcedit ============================================================================== --- head/usr.sbin/bsdconfig/startup/rcedit Wed Jun 19 18:01:37 2013 (r251999) +++ head/usr.sbin/bsdconfig/startup/rcedit Wed Jun 19 18:13:58 2013 (r252000) @@ -62,6 +62,9 @@ shift $(( $OPTIND - 1 )) f_dialog_backtitle "${ipgm:+bsdconfig }$pgm" f_mustberoot_init +# +# Edit the rc.conf(5) variable(s) passed as argument(s) +# f_dialog_rcedit "$@" ################################################################################ Modified: head/usr.sbin/bsdconfig/usermgmt/userinput ============================================================================== --- head/usr.sbin/bsdconfig/usermgmt/userinput Wed Jun 19 18:01:37 2013 (r251999) +++ head/usr.sbin/bsdconfig/usermgmt/userinput Wed Jun 19 18:13:58 2013 (r252000) @@ -530,7 +530,6 @@ while :; do esac ;; esac - done exit $SUCCESS From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 18:32:19 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 25E9CB28; Wed, 19 Jun 2013 18:32:19 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 08A851784; Wed, 19 Jun 2013 18:32:19 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5JIWIvs025473; Wed, 19 Jun 2013 18:32:18 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5JIWIDE025468; Wed, 19 Jun 2013 18:32:18 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306191832.r5JIWIDE025468@svn.freebsd.org> From: Devin Teske Date: Wed, 19 Jun 2013 18:32:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252001 - in head/usr.sbin/bsdconfig: networking usermgmt X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 18:32:19 -0000 Author: dteske Date: Wed Jun 19 18:32:18 2013 New Revision: 252001 URL: http://svnweb.freebsd.org/changeset/base/252001 Log: Whitespace. Modified: head/usr.sbin/bsdconfig/networking/devices head/usr.sbin/bsdconfig/usermgmt/userinput Modified: head/usr.sbin/bsdconfig/networking/devices ============================================================================== --- head/usr.sbin/bsdconfig/networking/devices Wed Jun 19 18:13:58 2013 (r252000) +++ head/usr.sbin/bsdconfig/networking/devices Wed Jun 19 18:32:18 2013 (r252001) @@ -83,7 +83,7 @@ while :; do # from the device name if present. # case "$interface" in - *\*) interface="${interface%?}";; + *\*) interface="${interface%?}" ;; esac # @@ -104,30 +104,31 @@ while :; do # If DHCP, get IP address/netmask later from ifconfig(8) glob="[Dd][Hh][Cc][Pp]" case "$_ifconfig" in - $glob) dhcp=1;; - [Ss][Yy][Nn][Cc]$glob) dhcp=1;; - [Nn][Oo][Ss][Yy][Nn][Cc]$glob) dhcp=1;; + $glob) dhcp=1 ;; + [Ss][Yy][Nn][Cc]$glob) dhcp=1 ;; + [Nn][Oo][Ss][Yy][Nn][Cc]$glob) dhcp=1 ;; *) # # Get IP address/netmask from rc.conf(5) configuration # dhcp= - eval "$( exec 2> /dev/null - set -- $_ifconfig - while [ $# -gt 0 ]; do - case "$1" in - inet) - shift 1 - echo "_ipaddr='$1'" - ;; - netmask) - shift 1 - echo "_netmask='$1'" - ;; - esac - shift 1 - done - )" + eval "$( + exec 2> /dev/null + set -- $_ifconfig + while [ $# -gt 0 ]; do + case "$1" in + inet) + shift 1 + echo "_ipaddr='$1'" + ;; + netmask) + shift 1 + echo "_netmask='$1'" + ;; + esac + shift 1 + done + )" ;; esac fi Modified: head/usr.sbin/bsdconfig/usermgmt/userinput ============================================================================== --- head/usr.sbin/bsdconfig/usermgmt/userinput Wed Jun 19 18:13:58 2013 (r252000) +++ head/usr.sbin/bsdconfig/usermgmt/userinput Wed Jun 19 18:32:18 2013 (r252001) @@ -475,35 +475,25 @@ while :; do esac ;; 2) # Full Name - f_dialog_input_gecos "$pw_gecos" - ;; + f_dialog_input_gecos "$pw_gecos" ;; 3) # Password - f_dialog_input_password - ;; + f_dialog_input_password ;; 4) # UID - f_dialog_input_uid "$pw_uid" - ;; + f_dialog_input_uid "$pw_uid" ;; 5) # Default Group - f_dialog_input_gid "$pw_gid" - ;; + f_dialog_input_gid "$pw_gid" ;; 6) # Member of Groups - f_dialog_input_member_groups "$pw_member_groups" - ;; + f_dialog_input_member_groups "$pw_member_groups" ;; 7) # Login Class - f_dialog_input_class "$pw_class" - ;; + f_dialog_input_class "$pw_class" ;; 8) # Password Expire on - f_dialog_input_expire_password "$pw_password_expire" - ;; + f_dialog_input_expire_password "$pw_password_expire" ;; 9) # Account Expire on - f_dialog_input_expire_account "$pw_account_expire" - ;; + f_dialog_input_expire_account "$pw_account_expire" ;; A) # Home Directory - f_dialog_input_home_dir "$pw_home_dir" - ;; + f_dialog_input_home_dir "$pw_home_dir" ;; B) # Shell - f_dialog_input_shell "$pw_shell" - ;; + f_dialog_input_shell "$pw_shell" ;; esac case "$mode" in From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 18:44:55 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id BC85D665; Wed, 19 Jun 2013 18:44:55 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id AF18D189F; Wed, 19 Jun 2013 18:44:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5JIitbH029218; Wed, 19 Jun 2013 18:44:55 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5JIitVT029216; Wed, 19 Jun 2013 18:44:55 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306191844.r5JIitVT029216@svn.freebsd.org> From: Devin Teske Date: Wed, 19 Jun 2013 18:44:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252002 - head/usr.sbin/bsdconfig/startup X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 18:44:55 -0000 Author: dteske Date: Wed Jun 19 18:44:55 2013 New Revision: 252002 URL: http://svnweb.freebsd.org/changeset/base/252002 Log: Style -- no ;; needed on fallback clause within case-statement. Modified: head/usr.sbin/bsdconfig/startup/misc head/usr.sbin/bsdconfig/startup/rcvar Modified: head/usr.sbin/bsdconfig/startup/misc ============================================================================== --- head/usr.sbin/bsdconfig/startup/misc Wed Jun 19 18:32:18 2013 (r252001) +++ head/usr.sbin/bsdconfig/startup/misc Wed Jun 19 18:44:55 2013 (r252002) @@ -347,7 +347,7 @@ while :; do case "$mtag" in "X $msg_exit") break ;; ?" [X] "*) toggled=1 ;; - *) toggled= ;; + *) toggled= esac case "$mtag" in Modified: head/usr.sbin/bsdconfig/startup/rcvar ============================================================================== --- head/usr.sbin/bsdconfig/startup/rcvar Wed Jun 19 18:32:18 2013 (r252001) +++ head/usr.sbin/bsdconfig/startup/rcvar Wed Jun 19 18:44:55 2013 (r252002) @@ -205,8 +205,8 @@ while :; do # Determine the new [toggled] value to use case "$value" in - "[X]"*) value="NO" ;; - *) value="YES" ;; + "[X]"*) value="NO" ;; + *) value="YES" esac err=$( f_sysrc_set "$rcvar" "$value" 2>&1 ) || From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 19:44:58 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 5DBF8E84; Wed, 19 Jun 2013 19:44:58 +0000 (UTC) (envelope-from truckman@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 50E241B38; Wed, 19 Jun 2013 19:44:58 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5JJiwSw048562; Wed, 19 Jun 2013 19:44:58 GMT (envelope-from truckman@svn.freebsd.org) Received: (from truckman@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5JJiwMT048561; Wed, 19 Jun 2013 19:44:58 GMT (envelope-from truckman@svn.freebsd.org) Message-Id: <201306191944.r5JJiwMT048561@svn.freebsd.org> From: Don Lewis Date: Wed, 19 Jun 2013 19:44:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252003 - head/usr.bin/svn X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 19:44:58 -0000 Author: truckman Date: Wed Jun 19 19:44:57 2013 New Revision: 252003 URL: http://svnweb.freebsd.org/changeset/base/252003 Log: Fix a couple of typos that broke buildworld for me. Reviewed by: peter Modified: head/usr.bin/svn/Makefile.inc Modified: head/usr.bin/svn/Makefile.inc ============================================================================== --- head/usr.bin/svn/Makefile.inc Wed Jun 19 18:44:55 2013 (r252002) +++ head/usr.bin/svn/Makefile.inc Wed Jun 19 19:44:57 2013 (r252003) @@ -40,9 +40,9 @@ LIBSVN_SUBRDIR= ${.OBJDIR}/../lib/libsv LIBSVN_WCDIR= ${.OBJDIR}/../lib/libsvn_wc LIBAPR= ${LIBAPRDIR}/libapr.a -LIBAPR_UTIL= ${LIBAPR_UTILDIR}/libapr_util.a +LIBAPR_UTIL= ${LIBAPR_UTILDIR}/libapr-util.a LIBSQLITE= ${LIBSQLITEDIR}/libsqlite3.a -LIBSERF= ${LIBSQLITEDIR}/libserf.a +LIBSERF= ${LIBSERFDIR}/libserf.a LIBSVN_CLIENT= ${LIBSVN_CLIENTDIR}/libsvn_client.a LIBSVN_DELTA= ${LIBSVN_DELTADIR}/libsvn_delta.a From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 20:48:35 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 2095D8DD; Wed, 19 Jun 2013 20:48:35 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id ED9931E03; Wed, 19 Jun 2013 20:48:34 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5JKmYcT069485; Wed, 19 Jun 2013 20:48:34 GMT (envelope-from ae@svn.freebsd.org) Received: (from ae@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5JKmYbI069483; Wed, 19 Jun 2013 20:48:34 GMT (envelope-from ae@svn.freebsd.org) Message-Id: <201306192048.r5JKmYbI069483@svn.freebsd.org> From: "Andrey V. Elsukov" Date: Wed, 19 Jun 2013 20:48:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252007 - head/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-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 20:48:35 -0000 Author: ae Date: Wed Jun 19 20:48:34 2013 New Revision: 252007 URL: http://svnweb.freebsd.org/changeset/base/252007 Log: Use RIP6STAT_INC() macro for raw ip6 statistics accounting. MFC after: 2 weeks Modified: head/sys/netinet6/raw_ip6.c head/sys/netinet6/raw_ip6.h Modified: head/sys/netinet6/raw_ip6.c ============================================================================== --- head/sys/netinet6/raw_ip6.c Wed Jun 19 20:37:13 2013 (r252006) +++ head/sys/netinet6/raw_ip6.c Wed Jun 19 20:48:34 2013 (r252007) @@ -160,7 +160,7 @@ rip6_input(struct mbuf **mp, int *offp, struct mbuf *opts = NULL; struct sockaddr_in6 fromsa; - V_rip6stat.rip6s_ipackets++; + RIP6STAT_INC(rip6s_ipackets); if (faithprefix_p != NULL && (*faithprefix_p)(&ip6->ip6_dst)) { /* XXX Send icmp6 host/port unreach? */ @@ -199,11 +199,11 @@ rip6_input(struct mbuf **mp, int *offp, } INP_RLOCK(in6p); if (in6p->in6p_cksum != -1) { - V_rip6stat.rip6s_isum++; + RIP6STAT_INC(rip6s_isum); if (in6_cksum(m, proto, *offp, m->m_pkthdr.len - *offp)) { INP_RUNLOCK(in6p); - V_rip6stat.rip6s_badsum++; + RIP6STAT_INC(rip6s_badsum); continue; } } @@ -279,7 +279,7 @@ rip6_input(struct mbuf **mp, int *offp, m_freem(n); if (opts) m_freem(opts); - V_rip6stat.rip6s_fullsock++; + RIP6STAT_INC(rip6s_fullsock); } else sorwakeup(last->inp_socket); opts = NULL; @@ -312,14 +312,14 @@ rip6_input(struct mbuf **mp, int *offp, m_freem(m); if (opts) m_freem(opts); - V_rip6stat.rip6s_fullsock++; + RIP6STAT_INC(rip6s_fullsock); } else sorwakeup(last->inp_socket); INP_RUNLOCK(last); } else { - V_rip6stat.rip6s_nosock++; + RIP6STAT_INC(rip6s_nosock); if (m->m_flags & M_MCAST) - V_rip6stat.rip6s_nosockmcast++; + RIP6STAT_INC(rip6s_nosockmcast); if (proto == IPPROTO_NONE) m_freem(m); else { @@ -559,7 +559,7 @@ rip6_output(m, va_alist) icmp6_ifoutstat_inc(oifp, type, code); ICMP6STAT_INC(icp6s_outhist[type]); } else - V_rip6stat.rip6s_opackets++; + RIP6STAT_INC(rip6s_opackets); goto freectl; Modified: head/sys/netinet6/raw_ip6.h ============================================================================== --- head/sys/netinet6/raw_ip6.h Wed Jun 19 20:37:13 2013 (r252006) +++ head/sys/netinet6/raw_ip6.h Wed Jun 19 20:48:34 2013 (r252007) @@ -48,6 +48,8 @@ struct rip6stat { }; #ifdef _KERNEL +#define RIP6STAT_ADD(name, val) V_rip6stat.name += (val) +#define RIP6STAT_INC(name) RIP6STAT_ADD(name, 1) VNET_DECLARE(struct rip6stat, rip6stat); #define V_rip6stat VNET(rip6stat) #endif From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 21:50:17 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id A0A4F43B; Wed, 19 Jun 2013 21:50:17 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 92983115F; Wed, 19 Jun 2013 21:50:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5JLoHik056939; Wed, 19 Jun 2013 21:50:17 GMT (envelope-from ae@svn.freebsd.org) Received: (from ae@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5JLoHNc056937; Wed, 19 Jun 2013 21:50:17 GMT (envelope-from ae@svn.freebsd.org) Message-Id: <201306192150.r5JLoHNc056937@svn.freebsd.org> From: "Andrey V. Elsukov" Date: Wed, 19 Jun 2013 21:50:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252009 - head/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-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 21:50:17 -0000 Author: ae Date: Wed Jun 19 21:50:17 2013 New Revision: 252009 URL: http://svnweb.freebsd.org/changeset/base/252009 Log: Use PIM6STAT_INC() and MRT6STAT_INC() macros for IPv6 multicast statistics accounting. MFC after: 2 weeks Modified: head/sys/netinet6/ip6_mroute.c Modified: head/sys/netinet6/ip6_mroute.c ============================================================================== --- head/sys/netinet6/ip6_mroute.c Wed Jun 19 20:56:44 2013 (r252008) +++ head/sys/netinet6/ip6_mroute.c Wed Jun 19 21:50:17 2013 (r252009) @@ -162,6 +162,7 @@ SYSCTL_STRUCT(_net_inet6_ip6, OID_AUTO, &mrt6stat, mrt6stat, "Multicast Routing Statistics (struct mrt6stat, netinet6/ip6_mroute.h)"); +#define MRT6STAT_INC(name) mrt6stat.name += 1 #define NO_RTE_FOUND 0x1 #define RTE_FOUND 0x2 @@ -251,8 +252,9 @@ static mifi_t reg_mif_num = (mifi_t)-1; static struct pim6stat pim6stat; SYSCTL_STRUCT(_net_inet6_pim, PIM6CTL_STATS, stats, CTLFLAG_RW, &pim6stat, pim6stat, - "PIM Statistics (struct pim6stat, netinet6/pim_var.h)"); + "PIM Statistics (struct pim6stat, netinet6/pim6_var.h)"); +#define PIM6STAT_INC(name) pim6stat.name += 1 static VNET_DEFINE(int, pim6); #define V_pim6 VNET(pim6) @@ -270,7 +272,7 @@ static VNET_DEFINE(int, pim6); #define MF6CFIND(o, g, rt) do { \ struct mf6c *_rt = mf6ctable[MF6CHASH(o,g)]; \ rt = NULL; \ - mrt6stat.mrt6s_mfc_lookups++; \ + MRT6STAT_INC(mrt6s_mfc_lookups); \ while (_rt) { \ if (IN6_ARE_ADDR_EQUAL(&_rt->mf6c_origin.sin6_addr, &(o)) && \ IN6_ARE_ADDR_EQUAL(&_rt->mf6c_mcastgrp.sin6_addr, &(g)) && \ @@ -281,7 +283,7 @@ static VNET_DEFINE(int, pim6); _rt = _rt->mf6c_next; \ } \ if (rt == NULL) { \ - mrt6stat.mrt6s_mfc_misses++; \ + MRT6STAT_INC(mrt6s_mfc_misses); \ } \ } while (/*CONSTCOND*/ 0) @@ -1142,7 +1144,7 @@ X_ip6_mforward(struct ip6_hdr *ip6, stru GET_TIME(tp); #endif /* UPCALL_TIMING */ - mrt6stat.mrt6s_no_route++; + MRT6STAT_INC(mrt6s_no_route); #ifdef MRT6DEBUG if (V_mrt6debug & (DEBUG_FORWARD | DEBUG_MFC)) log(LOG_DEBUG, "ip6_mforward: no rte s %s g %s\n", @@ -1269,7 +1271,7 @@ X_ip6_mforward(struct ip6_hdr *ip6, stru if (socket_send(V_ip6_mrouter, mm, &sin6) < 0) { log(LOG_WARNING, "ip6_mforward: ip6_mrouter " "socket queue full\n"); - mrt6stat.mrt6s_upq_sockfull++; + MRT6STAT_INC(mrt6s_upq_sockfull); free(rte, M_MRTABLE6); m_freem(mb0); free(rt, M_MRTABLE6); @@ -1277,7 +1279,7 @@ X_ip6_mforward(struct ip6_hdr *ip6, stru return (ENOBUFS); } - mrt6stat.mrt6s_upcalls++; + MRT6STAT_INC(mrt6s_upcalls); /* insert new entry at head of hash chain */ bzero(rt, sizeof(*rt)); @@ -1303,7 +1305,7 @@ X_ip6_mforward(struct ip6_hdr *ip6, stru for (p = &rt->mf6c_stall; *p != NULL; p = &(*p)->next) if (++npkts > MAX_UPQ6) { - mrt6stat.mrt6s_upq_ovflw++; + MRT6STAT_INC(mrt6s_upq_ovflw); free(rte, M_MRTABLE6); m_freem(mb0); MFC6_UNLOCK(); @@ -1372,7 +1374,7 @@ expire_upcalls(void *unused) free(rte, M_MRTABLE6); rte = n; } while (rte != NULL); - mrt6stat.mrt6s_cache_cleanups++; + MRT6STAT_INC(mrt6s_cache_cleanups); n6expire[i]--; *nptr = mfc->mf6c_next; @@ -1428,7 +1430,7 @@ ip6_mdq(struct mbuf *m, struct ifnet *if ifp->if_index, mifi, mif6table[mifi].m6_ifp->if_index); #endif - mrt6stat.mrt6s_wrong_if++; + MRT6STAT_INC(mrt6s_wrong_if); rt->mf6c_wrong_if++; /* * If we are doing PIM processing, and we are forwarding @@ -1501,14 +1503,14 @@ ip6_mdq(struct mbuf *m, struct ifnet *if break; } - mrt6stat.mrt6s_upcalls++; + MRT6STAT_INC(mrt6s_upcalls); if (socket_send(V_ip6_mrouter, mm, &sin6) < 0) { #ifdef MRT6DEBUG if (V_mrt6debug) log(LOG_WARNING, "mdq, ip6_mrouter socket queue full\n"); #endif - ++mrt6stat.mrt6s_upq_sockfull; + MRT6STAT_INC(mrt6s_upq_sockfull); return (ENOBUFS); } /* if socket Q full */ } /* if PIM */ @@ -1696,7 +1698,7 @@ register_send(struct ip6_hdr *ip6, struc ip6_sprintf(ip6bufd, &ip6->ip6_dst)); } #endif - ++pim6stat.pim6s_snd_registers; + PIM6STAT_INC(pim6s_snd_registers); /* Make a copy of the packet to send to the user level process. */ mm = m_gethdr(M_NOWAIT, MT_DATA); @@ -1730,7 +1732,7 @@ register_send(struct ip6_hdr *ip6, struc im6->im6_mif = mif - mif6table; /* iif info is not given for reg. encap.n */ - mrt6stat.mrt6s_upcalls++; + MRT6STAT_INC(mrt6s_upcalls); if (socket_send(V_ip6_mrouter, mm, &sin6) < 0) { #ifdef MRT6DEBUG @@ -1738,7 +1740,7 @@ register_send(struct ip6_hdr *ip6, struc log(LOG_WARNING, "register_send: ip6_mrouter socket queue full\n"); #endif - ++mrt6stat.mrt6s_upq_sockfull; + MRT6STAT_INC(mrt6s_upq_sockfull); return (ENOBUFS); } return (0); @@ -1779,7 +1781,7 @@ pim6_input(struct mbuf **mp, int *offp, int minlen; int off = *offp; - ++pim6stat.pim6s_rcv_total; + PIM6STAT_INC(pim6s_rcv_total); ip6 = mtod(m, struct ip6_hdr *); pimlen = m->m_pkthdr.len - *offp; @@ -1788,7 +1790,7 @@ pim6_input(struct mbuf **mp, int *offp, * Validate lengths */ if (pimlen < PIM_MINLEN) { - ++pim6stat.pim6s_rcv_tooshort; + PIM6STAT_INC(pim6s_rcv_tooshort); #ifdef MRT6DEBUG if (V_mrt6debug & DEBUG_PIM) log(LOG_DEBUG,"pim6_input: PIM packet too short\n"); @@ -1821,7 +1823,7 @@ pim6_input(struct mbuf **mp, int *offp, #else IP6_EXTHDR_GET(pim, struct pim *, m, off, minlen); if (pim == NULL) { - pim6stat.pim6s_rcv_tooshort++; + PIM6STAT_INC(pim6s_rcv_tooshort); return (IPPROTO_DONE); } #endif @@ -1841,7 +1843,7 @@ pim6_input(struct mbuf **mp, int *offp, cksumlen = pimlen; if (in6_cksum(m, IPPROTO_PIM, off, cksumlen)) { - ++pim6stat.pim6s_rcv_badsum; + PIM6STAT_INC(pim6s_rcv_badsum); #ifdef MRT6DEBUG if (V_mrt6debug & DEBUG_PIM) log(LOG_DEBUG, @@ -1855,7 +1857,7 @@ pim6_input(struct mbuf **mp, int *offp, /* PIM version check */ if (pim->pim_ver != PIM_VERSION) { - ++pim6stat.pim6s_rcv_badversion; + PIM6STAT_INC(pim6s_rcv_badversion); #ifdef MRT6DEBUG log(LOG_ERR, "pim6_input: incorrect version %d, expecting %d\n", @@ -1881,7 +1883,7 @@ pim6_input(struct mbuf **mp, int *offp, char ip6bufs[INET6_ADDRSTRLEN], ip6bufd[INET6_ADDRSTRLEN]; #endif - ++pim6stat.pim6s_rcv_registers; + PIM6STAT_INC(pim6s_rcv_registers); if ((reg_mif_num >= nummifs) || (reg_mif_num == (mifi_t) -1)) { #ifdef MRT6DEBUG @@ -1903,8 +1905,8 @@ pim6_input(struct mbuf **mp, int *offp, * Validate length */ if (pimlen < PIM6_REG_MINLEN) { - ++pim6stat.pim6s_rcv_tooshort; - ++pim6stat.pim6s_rcv_badregisters; + PIM6STAT_INC(pim6s_rcv_tooshort); + PIM6STAT_INC(pim6s_rcv_badregisters); #ifdef MRT6DEBUG log(LOG_ERR, "pim6_input: register packet size too " @@ -1928,7 +1930,7 @@ pim6_input(struct mbuf **mp, int *offp, /* verify the version number of the inner packet */ if ((eip6->ip6_vfc & IPV6_VERSION_MASK) != IPV6_VERSION) { - ++pim6stat.pim6s_rcv_badregisters; + PIM6STAT_INC(pim6s_rcv_badregisters); #ifdef MRT6DEBUG log(LOG_DEBUG, "pim6_input: invalid IP version (%d) " "of the inner packet\n", @@ -1940,7 +1942,7 @@ pim6_input(struct mbuf **mp, int *offp, /* verify the inner packet is destined to a mcast group */ if (!IN6_IS_ADDR_MULTICAST(&eip6->ip6_dst)) { - ++pim6stat.pim6s_rcv_badregisters; + PIM6STAT_INC(pim6s_rcv_badregisters); #ifdef MRT6DEBUG if (V_mrt6debug & DEBUG_PIM) log(LOG_DEBUG, From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 21:52:32 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id CCC5F5D3; Wed, 19 Jun 2013 21:52:32 +0000 (UTC) (envelope-from scottl@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id BDB191174; Wed, 19 Jun 2013 21:52:32 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5JLqWcH058863; Wed, 19 Jun 2013 21:52:32 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5JLqWfs058862; Wed, 19 Jun 2013 21:52:32 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306192152.r5JLqWfs058862@svn.freebsd.org> From: Scott Long Date: Wed, 19 Jun 2013 21:52:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252010 - head/sys/geom/mirror X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 21:52:32 -0000 Author: scottl Date: Wed Jun 19 21:52:32 2013 New Revision: 252010 URL: http://svnweb.freebsd.org/changeset/base/252010 Log: Mark geom_mirror as capable of unmapped i/o Obtained from: Netflix MFC after: 3 days Modified: head/sys/geom/mirror/g_mirror.c Modified: head/sys/geom/mirror/g_mirror.c ============================================================================== --- head/sys/geom/mirror/g_mirror.c Wed Jun 19 21:50:17 2013 (r252009) +++ head/sys/geom/mirror/g_mirror.c Wed Jun 19 21:52:32 2013 (r252010) @@ -2028,7 +2028,7 @@ static void g_mirror_launch_provider(struct g_mirror_softc *sc) { struct g_mirror_disk *disk; - struct g_provider *pp; + struct g_provider *pp, *dp; sx_assert(&sc->sc_lock, SX_LOCKED); @@ -2038,11 +2038,24 @@ g_mirror_launch_provider(struct g_mirror pp->sectorsize = sc->sc_sectorsize; pp->stripesize = 0; pp->stripeoffset = 0; + + /* Splitting of unmapped BIO's could work but isn't implemented now */ + if (sc->sc_balance != G_MIRROR_BALANCE_SPLIT) + pp->flags |= G_PF_ACCEPT_UNMAPPED; + LIST_FOREACH(disk, &sc->sc_disks, d_next) { - if (disk->d_consumer && disk->d_consumer->provider && - disk->d_consumer->provider->stripesize > pp->stripesize) { - pp->stripesize = disk->d_consumer->provider->stripesize; - pp->stripeoffset = disk->d_consumer->provider->stripeoffset; + if (disk->d_consumer && disk->d_consumer->provider) { + dp = disk->d_consumer->provider; + if (dp->stripesize > pp->stripesize) { + pp->stripesize = dp->stripesize; + pp->stripeoffset = dp->stripeoffset; + } + /* A provider underneath us doesn't support unmapped */ + if ((dp->flags & G_PF_ACCEPT_UNMAPPED) == 0) { + G_MIRROR_DEBUG(0, "cancelling unmapped " + "because of %s\n", dp->name); + pp->flags &= ~G_PF_ACCEPT_UNMAPPED; + } } } sc->sc_provider = pp; From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 22:50:07 2013 Return-Path: Delivered-To: svn-src-head@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 2D7334C2; Wed, 19 Jun 2013 22:50:07 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from theravensnest.org (theraven.freebsd.your.org [216.14.102.27]) by mx1.freebsd.org (Postfix) with ESMTP id F196E13BC; Wed, 19 Jun 2013 22:50:06 +0000 (UTC) Received: from [192.168.0.2] (cpc27-cmbg15-2-0-cust235.5-4.cable.virginmedia.com [86.27.188.236]) (authenticated bits=0) by theravensnest.org (8.14.5/8.14.5) with ESMTP id r5JMnuAl085884 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Wed, 19 Jun 2013 22:49:58 GMT (envelope-from theraven@FreeBSD.org) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 6.3 \(1503\)) Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... From: David Chisnall In-Reply-To: <201306191113.29703.jhb@freebsd.org> Date: Wed, 19 Jun 2013 23:49:51 +0100 Content-Transfer-Encoding: quoted-printable Message-Id: References: <201306180253.r5I2rj45053959@svn.freebsd.org> <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> <51C1C7BD.9060201@FreeBSD.org> <201306191113.29703.jhb@freebsd.org> To: John Baldwin X-Mailer: Apple Mail (2.1503) Cc: src-committers@FreeBSD.org, Andre Oppermann , Peter Wemm , svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org, Tijl Coosemans , Warner Losh X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 22:50:07 -0000 On 19 Jun 2013, at 16:13, John Baldwin wrote: > portsnap does not work for src. (I thought we had already covered = that > in earlier threads?) portsnap only moves forward. It is a very = important > feature for our users that whatever tool they use for source updating = be > bidirectional. In particular it is very common practice to use a = bisect > operation to isolate changes responsible for regressions. Freebsd-update can manage the src tree. I'm not entirely clear on what = use-case we are addressing here. Is it: - FreeBSD developers, who are probably okay with installing a port, but = would prefer a version that didn't depend on kitchen/sink? - Users, who wish to be able to update the source tree and then either = build world, or build some optional parts that are not part of the = default install? - Some other category of svn consumer? I think having a definitive statement as to the intention of svnlite = would help frame the discussion in a more productive format. David From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 23:09:11 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 3C7F8A76; Wed, 19 Jun 2013 23:09:11 +0000 (UTC) (envelope-from scottl@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 2D7C01627; Wed, 19 Jun 2013 23:09:11 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5JN9BFh022388; Wed, 19 Jun 2013 23:09:11 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5JN9BBD022387; Wed, 19 Jun 2013 23:09:11 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306192309.r5JN9BBD022387@svn.freebsd.org> From: Scott Long Date: Wed, 19 Jun 2013 23:09:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252011 - head/sys/geom/mirror X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 23:09:11 -0000 Author: scottl Date: Wed Jun 19 23:09:10 2013 New Revision: 252011 URL: http://svnweb.freebsd.org/changeset/base/252011 Log: Fix a mystery cut-n-paste corruption from the previous commit. Submitted by: Brenden Fabeny Modified: head/sys/geom/mirror/g_mirror.c Modified: head/sys/geom/mirror/g_mirror.c ============================================================================== --- head/sys/geom/mirror/g_mirror.c Wed Jun 19 21:52:32 2013 (r252010) +++ head/sys/geom/mirror/g_mirror.c Wed Jun 19 23:09:10 2013 (r252011) @@ -2040,7 +2040,7 @@ g_mirror_launch_provider(struct g_mirror pp->stripeoffset = 0; /* Splitting of unmapped BIO's could work but isn't implemented now */ - if (sc->sc_balance != G_MIRROR_BALANCE_SPLIT) + if (sc->sc_balance != G_MIRROR_BALANCE_SPLIT) pp->flags |= G_PF_ACCEPT_UNMAPPED; LIST_FOREACH(disk, &sc->sc_disks, d_next) { From owner-svn-src-head@FreeBSD.ORG Wed Jun 19 23:10:05 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 33EA6BEF for ; Wed, 19 Jun 2013 23:10:05 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from mail-gh0-x229.google.com (mail-gh0-x229.google.com [IPv6:2607:f8b0:4002:c05::229]) by mx1.freebsd.org (Postfix) with ESMTP id E6E0C1630 for ; Wed, 19 Jun 2013 23:10:04 +0000 (UTC) Received: by mail-gh0-f169.google.com with SMTP id r1so1351077ghr.14 for ; Wed, 19 Jun 2013 16:10:03 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=sender:subject:mime-version:content-type:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to:x-mailer :x-gm-message-state; bh=KMHLop0U2oDPYhec3zyWu6s/8Ov85Zf0eLJucBFk+Lg=; b=TsLaWlsPCYO0Ki/LzOiScqwLRDluk/+g0wGzjn0IPH9xJWONFuJpaXo2QcFng/sWq3 bBxqimg/54sryC6mpE9aaVOGdxsdUkBiONen8ZJOY3hNl+5xqVLMoohcCVArg6VAk7jQ C0Q58LI0EWzkirfcCk4i151t9GamRuQ3hlY0K19of0MX7HKLTwyaEYMOvlgnXb8SCBGy KXIg1sRJFihmVd1oG3dr7Zw1qhsgot18QNIecwFfkwoaLK3g4U9iysAO2DaqY+MPq9TY qr+eiV+Iw/X+xCTJxhcFyl5qcQdY3rck+a+OBoO9oOQqfx0UwkCqwK58PMhOnprIfA9W ASUg== X-Received: by 10.236.8.36 with SMTP id 24mr3690488yhq.115.1371683403645; Wed, 19 Jun 2013 16:10:03 -0700 (PDT) Received: from monkey-bot.int.fusionio.com ([209.117.142.2]) by mx.google.com with ESMTPSA id 62sm41046398yhi.10.2013.06.19.16.10.02 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 19 Jun 2013 16:10:02 -0700 (PDT) Sender: Warner Losh Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... Mime-Version: 1.0 (Apple Message framework v1085) Content-Type: text/plain; charset=us-ascii From: Warner Losh In-Reply-To: Date: Wed, 19 Jun 2013 17:10:00 -0600 Content-Transfer-Encoding: quoted-printable Message-Id: <8D00BE2B-FD8E-4E7B-B818-1C4B7F6BB6A5@bsdimp.com> References: <201306180253.r5I2rj45053959@svn.freebsd.org> <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> <51C1C7BD.9060201@FreeBSD.org> <201306191113.29703.jhb@freebsd.org> To: David Chisnall X-Mailer: Apple Mail (2.1085) X-Gm-Message-State: ALoCoQlANWezR13l0Mg9dXrvqLOR9UmssxdQDyL8G+KouN6yfgrWQ7dOFAm8OG0Y70tehRhJp9ZE Cc: src-committers@FreeBSD.org, Andre Oppermann , John Baldwin , Peter Wemm , svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org, Tijl Coosemans X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 23:10:05 -0000 On Jun 19, 2013, at 4:49 PM, David Chisnall wrote: > On 19 Jun 2013, at 16:13, John Baldwin wrote: >=20 >> portsnap does not work for src. (I thought we had already covered = that >> in earlier threads?) portsnap only moves forward. It is a very = important >> feature for our users that whatever tool they use for source updating = be >> bidirectional. In particular it is very common practice to use a = bisect >> operation to isolate changes responsible for regressions. >=20 > Freebsd-update can manage the src tree. I'm not entirely clear on = what use-case we are addressing here. Is it: >=20 > - FreeBSD developers, who are probably okay with installing a port, = but would prefer a version that didn't depend on kitchen/sink? >=20 > - Users, who wish to be able to update the source tree and then either = build world, or build some optional parts that are not part of the = default install? >=20 > - Some other category of svn consumer? >=20 > I think having a definitive statement as to the intention of svnlite = would help frame the discussion in a more productive format. How do I roll back to last week with FreeBSD-update? Warner From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 00:00:34 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id F1D12E4B; Thu, 20 Jun 2013 00:00:33 +0000 (UTC) (envelope-from pfg@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id E2CA61893; Thu, 20 Jun 2013 00:00:33 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5K00X5T038074; Thu, 20 Jun 2013 00:00:33 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5K00XMS038073; Thu, 20 Jun 2013 00:00:33 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201306200000.r5K00XMS038073@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Thu, 20 Jun 2013 00:00:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252012 - head/sys/fs/ext2fs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 00:00:34 -0000 Author: pfg Date: Thu Jun 20 00:00:33 2013 New Revision: 252012 URL: http://svnweb.freebsd.org/changeset/base/252012 Log: Rename some prefixes in the Block Group Descriptor fields to ext4bgd_ Change prefix to avoid confusion and denote that these fields are generally only available starting with ext4. MFC after: 3 days Modified: head/sys/fs/ext2fs/ext2fs.h Modified: head/sys/fs/ext2fs/ext2fs.h ============================================================================== --- head/sys/fs/ext2fs/ext2fs.h Wed Jun 19 23:09:10 2013 (r252011) +++ head/sys/fs/ext2fs/ext2fs.h Thu Jun 20 00:00:33 2013 (r252012) @@ -237,12 +237,12 @@ struct ext2_gd { uint16_t ext2bgd_nbfree; /* number of free blocks */ uint16_t ext2bgd_nifree; /* number of free inodes */ uint16_t ext2bgd_ndirs; /* number of directories */ - uint16_t ext2bgd_flags; /* block group flags */ - uint32_t ext2bgd_x_bitmap; /* snapshot exclusion bitmap loc. */ - uint16_t ext2bgd_b_bmap_csum; /* block bitmap checksum */ - uint16_t ext2bgd_i_bmap_csum; /* inode bitmap checksum */ - uint16_t ext2bgd_i_unused; /* unused inode count */ - uint16_t ext2bgd_csum; /* group descriptor checksum */ + uint16_t ext4bgd_flags; /* block group flags */ + uint32_t ext4bgd_x_bitmap; /* snapshot exclusion bitmap loc. */ + uint16_t ext4bgd_b_bmap_csum; /* block bitmap checksum */ + uint16_t ext4bgd_i_bmap_csum; /* inode bitmap checksum */ + uint16_t ext4bgd_i_unused; /* unused inode count */ + uint16_t ext4bgd_csum; /* group descriptor checksum */ }; From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 02:22:02 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 8639F6B8; Thu, 20 Jun 2013 02:22:02 +0000 (UTC) (envelope-from kientzle@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 665851D0A; Thu, 20 Jun 2013 02:04:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5K244x1078401; Thu, 20 Jun 2013 02:04:04 GMT (envelope-from kientzle@svn.freebsd.org) Received: (from kientzle@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5K244tm078400; Thu, 20 Jun 2013 02:04:04 GMT (envelope-from kientzle@svn.freebsd.org) Message-Id: <201306200204.r5K244tm078400@svn.freebsd.org> From: Tim Kientzle Date: Thu, 20 Jun 2013 02:04:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252013 - head/contrib/apr/include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 02:22:02 -0000 Author: kientzle Date: Thu Jun 20 02:04:03 2013 New Revision: 252013 URL: http://svnweb.freebsd.org/changeset/base/252013 Log: Try to fix build of apr on FreeBSD/arm. Modified: head/contrib/apr/include/apr_general.h Modified: head/contrib/apr/include/apr_general.h ============================================================================== --- head/contrib/apr/include/apr_general.h Thu Jun 20 00:00:33 2013 (r252012) +++ head/contrib/apr/include/apr_general.h Thu Jun 20 02:04:03 2013 (r252013) @@ -76,7 +76,7 @@ typedef int apr_signum_t; * @return offset */ -#if defined(CRAY) || (defined(__arm) && !defined(LINUX)) +#if defined(CRAY) || (defined(__arm) && !defined(LINUX) && !defined(__FreeBSD__)) #ifdef __STDC__ #define APR_OFFSET(p_type,field) _Offsetof(p_type,field) #else From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 02:26:33 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 1233D9BC; Thu, 20 Jun 2013 02:26:33 +0000 (UTC) (envelope-from peter@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 04D991F22; Thu, 20 Jun 2013 02:26:33 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5K2QWku085174; Thu, 20 Jun 2013 02:26:32 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5K2QWhN085173; Thu, 20 Jun 2013 02:26:32 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306200226.r5K2QWhN085173@svn.freebsd.org> From: Peter Wemm Date: Thu, 20 Jun 2013 02:26:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252014 - head/usr.bin X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 02:26:33 -0000 Author: peter Date: Thu Jun 20 02:26:32 2013 New Revision: 252014 URL: http://svnweb.freebsd.org/changeset/base/252014 Log: Only enable svn on amd64/ia64/sparc64/i386. Modified: head/usr.bin/Makefile Modified: head/usr.bin/Makefile ============================================================================== --- head/usr.bin/Makefile Thu Jun 20 02:04:03 2013 (r252013) +++ head/usr.bin/Makefile Thu Jun 20 02:26:32 2013 (r252014) @@ -366,7 +366,7 @@ SUBDIR+= users SUBDIR+= who .endif -.if ${MACHINE_ARCH} != "mips" # mips is broken with pthread +.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "ia64" || ${MACHINE_ARCH} == "sparc64" || ${MACHINE_ARCH} == "i386" .if ${MK_SVN} == "yes" || ${MK_SVNLITE} == "yes" SUBDIR+= svn .endif From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 02:29:49 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id B1856BF2; Thu, 20 Jun 2013 02:29:49 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id A3A911F49; Thu, 20 Jun 2013 02:29:49 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5K2TnIw085623; Thu, 20 Jun 2013 02:29:49 GMT (envelope-from hrs@svn.freebsd.org) Received: (from hrs@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5K2TnfR085621; Thu, 20 Jun 2013 02:29:49 GMT (envelope-from hrs@svn.freebsd.org) Message-Id: <201306200229.r5K2TnfR085621@svn.freebsd.org> From: Hiroki Sato Date: Thu, 20 Jun 2013 02:29:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252015 - in head: etc share/man/man5 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 02:29:49 -0000 Author: hrs Date: Thu Jun 20 02:29:49 2013 New Revision: 252015 URL: http://svnweb.freebsd.org/changeset/base/252015 Log: - Add CIDR notation support like 192.168.1-2.10-16/24 to $ifconfig_IF_aliasN. This is an extended version of ipv4_addr_IF which supports both IPv4 and IPv6, and multiple range specifications. To avoid to generate too many addresses, the maximum number of the generated addresses is currently limited to 31. - Add $ifconfig_IF_aliases, which accepts multiple IP aliases in a variable. - ipv6_prefix_IF now supports !/64 prefix length. In addition to the old 64-bit format (2001:db8:1:1), a full 128-bit format like 2001:db8:1:1::/64 is supported. - Replace ifconfig command with $IFCONFIG_CMD variable to support a dry-run mode in the future. - Remove IP aliases before removing all of IPv4 addresses when doing "rc.d/netif down". - Add a DAD wait to network6_getladdr() because it is possible to fail to configure an EUI64 address when ipv6_prefix_IF is specified. A summary of the supported ifconfig_* variables is as follows: # IPv4 configuration. ifconfig_em0="inet 192.168.0.1" # IPv6 configuration. ifconfig_em0_ipv6="inet6 2001:db8::1/64" # IPv4 address range spec. Now deprecated. ipv4_addr_em0="10.2.1.1-10" # IPv6 alias. ifconfig_em0_alias0="inet6 2001:db8:5::1 prefixlen 70" # IPv4 alias. ifconfig_em0_alias1="inet 10.2.2.1/24" # IPv4 alias with range spec w/o AF keyword (backward compat). ifconfig_em0_alias2="10.3.1.1-10/32" # IPv6 alias with range spec. ifconfig_em0_alias3="inet6 2001:db8:20-2f::1/64" # ifconfig_IF_aliases is just like ifconfig_IF_aliasN. ifconfig_em0_aliases="inet 10.3.3.201-204/24 inet6 2001:db8:210-213::1/64 inet 10.1.1.1/24" # IPv6 alias (backward compat) ipv6_ifconfig_em0_alias0="inet6 2001:db8:f::1/64" # IPv6 alias w/o AF keyword (backward compat) ipv6_ifconfig_em0_alias1="2001:db8:f:1::1/64" # IPv6 prefix. ipv6_prefix_em0="2001:db8::/64" Tested by: Kimmo Paasiala Modified: head/etc/network.subr head/share/man/man5/rc.conf.5 Modified: head/etc/network.subr ============================================================================== --- head/etc/network.subr Thu Jun 20 02:26:32 2013 (r252014) +++ head/etc/network.subr Thu Jun 20 02:29:49 2013 (r252015) @@ -24,6 +24,10 @@ # # $FreeBSD$ # +IFCONFIG_CMD="/sbin/ifconfig" + +# Maximum number of addresses expanded from a address range specification. +_IPEXPANDMAX=31 # # Subroutines commonly used from network startup scripts. @@ -94,7 +98,7 @@ ifconfig_up() # ifconfig_IF ifconfig_args=`ifconfig_getargs $1` if [ -n "${ifconfig_args}" ]; then - eval ifconfig $1 ${ifconfig_args} + eval ${IFCONFIG_CMD} $1 ${ifconfig_args} _cfg=0 fi @@ -122,7 +126,7 @@ ifconfig_up() esac if [ -n "${_ipv6_opts}" ]; then - ifconfig $1 inet6 ${_ipv6_opts} + ${IFCONFIG_CMD} $1 inet6 ${_ipv6_opts} fi # ifconfig_IF_ipv6 @@ -136,8 +140,8 @@ ifconfig_up() ifconfig_args="inet6 ${ifconfig_args}" ;; esac - ifconfig $1 inet6 -ifdisabled - eval ifconfig $1 ${ifconfig_args} + ${IFCONFIG_CMD} $1 inet6 -ifdisabled + eval ${IFCONFIG_CMD} $1 ${ifconfig_args} _cfg=0 fi @@ -145,7 +149,7 @@ ifconfig_up() # ipv6_prefix_hostid_addr_common(). ifconfig_args=`get_if_var $1 ipv6_prefix_IF` if [ -n "${ifconfig_args}" ]; then - ifconfig $1 inet6 -ifdisabled + ${IFCONFIG_CMD} $1 inet6 -ifdisabled _cfg=0 fi @@ -154,14 +158,14 @@ ifconfig_up() if [ -n "${ifconfig_args}" ]; then warn "\$ipv6_ifconfig_$1 is obsolete." \ " Use ifconfig_$1_ipv6 instead." - ifconfig $1 inet6 -ifdisabled - eval ifconfig $1 inet6 ${ifconfig_args} + ${IFCONFIG_CMD} $1 inet6 -ifdisabled + eval ${IFCONFIG_CMD} $1 inet6 ${ifconfig_args} _cfg=0 fi fi if [ ${_cfg} -eq 0 ]; then - ifconfig $1 up + ${IFCONFIG_CMD} $1 up fi if wpaif $1; then @@ -171,7 +175,7 @@ ifconfig_up() if dhcpif $1; then if [ $_cfg -ne 0 ] ; then - ifconfig $1 up + ${IFCONFIG_CMD} $1 up fi if syncdhcpif $1; then /etc/rc.d/dhclient start $1 @@ -202,7 +206,7 @@ ifconfig_down() fi if ifexists $1; then - ifconfig $1 down + ${IFCONFIG_CMD} $1 down _cfg=0 fi @@ -539,7 +543,7 @@ ipv6_autoconfif() ifexists() { [ -z "$1" ] && return 1 - ifconfig -n $1 > /dev/null 2>&1 + ${IFCONFIG_CMD} -n $1 > /dev/null 2>&1 } # ipv4_up if @@ -554,11 +558,10 @@ ipv4_up() if [ "${_if}" = "lo0" ]; then ifconfig_args=`get_if_var ${_if} ifconfig_IF` if [ -z "${ifconfig_args}" ]; then - ifconfig ${_if} inet 127.0.0.1/8 alias + ${IFCONFIG_CMD} ${_if} inet 127.0.0.1/8 alias fi fi - ifalias_up ${_if} inet && _ret=0 - ipv4_addrs_common ${_if} alias && _ret=0 + ifalias ${_if} inet alias && _ret=0 return $_ret } @@ -575,7 +578,7 @@ ipv6_up() return 0 fi - ifalias_up ${_if} inet6 && _ret=0 + ifalias ${_if} inet6 alias && _ret=0 ipv6_prefix_hostid_addr_common ${_if} alias && _ret=0 ipv6_accept_rtadv_up ${_if} && _ret=0 @@ -591,7 +594,9 @@ ipv4_down() _ifs="^" _ret=1 - inetList="`ifconfig ${_if} | grep 'inet ' | tr "\n" "$_ifs"`" + ifalias ${_if} inet -alias && _ret=0 + + inetList="`${IFCONFIG_CMD} ${_if} | grep 'inet ' | tr "\n" "$_ifs"`" oldifs="$IFS" IFS="$_ifs" @@ -602,15 +607,12 @@ ipv4_down() _inet=`expr "$_inet" : '.*\(inet \([0-9]\{1,3\}\.\)\{3\}[0-9]\{1,3\}\).*'` IFS="$oldifs" - ifconfig ${_if} ${_inet} delete + ${IFCONFIG_CMD} ${_if} ${_inet} delete IFS="$_ifs" _ret=0 done IFS="$oldifs" - ifalias_down ${_if} inet && _ret=0 - ipv4_addrs_common ${_if} -alias && _ret=0 - return $_ret } @@ -629,9 +631,9 @@ ipv6_down() ipv6_accept_rtadv_down ${_if} && _ret=0 ipv6_prefix_hostid_addr_common ${_if} -alias && _ret=0 - ifalias_down ${_if} inet6 && _ret=0 + ifalias ${_if} inet6 -alias && _ret=0 - inetList="`ifconfig ${_if} | grep 'inet6 ' | tr "\n" "$_ifs"`" + inetList="`${IFCONFIG_CMD} ${_if} | grep 'inet6 ' | tr "\n" "$_ifs"`" oldifs="$IFS" IFS="$_ifs" @@ -642,7 +644,7 @@ ipv6_down() _inet6=`expr "$_inet6" : '.*\(inet6 \([0-9a-f:]*\)\).*'` IFS="$oldifs" - ifconfig ${_if} ${_inet6} -alias + ${IFCONFIG_CMD} ${_if} ${_inet6} -alias IFS="$_ifs" _ret=0 done @@ -651,234 +653,349 @@ ipv6_down() return $_ret } -# ipv4_addrs_common if action -# Evaluate the ifconfig_if_ipv4 arguments for interface $if and -# use $action to add or remove IPv4 addresses from $if. -ipv4_addrs_common() -{ - local _ret _if _action _cidr _cidr_addr - local _ipaddr _netmask _range _ipnet _iplow _iphigh _ipcount - _ret=1 - _if=$1 - _action=$2 - - # get ipv4-addresses - cidr_addr=`get_if_var $_if ipv4_addrs_IF` - - for _cidr in ${cidr_addr}; do - _ipaddr=${_cidr%%/*} - _netmask="/"${_cidr##*/} - _range=${_ipaddr##*.} - _ipnet=${_ipaddr%.*} - _iplow=${_range%-*} - _iphigh=${_range#*-} - - # clear netmask when removing aliases - if [ "${_action}" = "-alias" ]; then - _netmask="" - fi - - _ipcount=${_iplow} - while [ "${_ipcount}" -le "${_iphigh}" ]; do - eval "ifconfig ${_if} ${_action} ${_ipnet}.${_ipcount}${_netmask}" - _ipcount=$((${_ipcount}+1)) - _ret=0 - - # only the first ipaddr in a subnet need the real netmask - if [ "${_action}" != "-alias" ]; then - _netmask="/32" - fi - done - done - - return $_ret -} - -# ifalias_up if af -# Configure aliases for network interface $if. +# ifalias if af action +# Configure or remove aliases for network interface $if. # It returns 0 if at least one alias was configured or -# 1 if there were none. +# removed, or 1 if there were none. # -ifalias_up() +ifalias() { local _ret _ret=1 + afexists $2 || return $_ret + case "$2" in - inet) - _ret=`ifalias_ipv4_up "$1"` - ;; - inet6) - _ret=`ifalias_ipv6_up "$1"` + inet|inet6) + ifalias_af_common $1 $2 $3 && _ret=0 ;; esac return $_ret } -# ifalias_ipv4_up if -# Helper function for ifalias_up(). Handles IPv4. +# ifalias_expand_addr af action addr +# Expand address range ("N-M") specification in addr. +# "addr" must not include an address-family keyword. +# The results will include an address-family keyword. # -ifalias_ipv4_up() +ifalias_expand_addr() { - local _ret alias ifconfig_args - _ret=1 - - # ifconfig_IF_aliasN which starts with "inet" - alias=0 - while : ; do - ifconfig_args=`get_if_var $1 ifconfig_IF_alias${alias}` - case "${ifconfig_args}" in - inet\ *) - ifconfig $1 ${ifconfig_args} alias && _ret=0 - ;; - inet6\ *) - ;; - "") - break - ;; - *) - warn "\$ifconfig_$1_alias${alias} needs " \ - "\"inet\" keyword for an IPv4 address." - ifconfig $1 ${ifconfig_args} alias && _ret=0 - ;; - esac - alias=$((${alias} + 1)) - done - return $_ret + afexists $1 || return + ifalias_expand_addr_$1 $2 $3 } -# ifalias_ipv6_up if -# Helper function for ifalias_up(). Handles IPv6. +# ifalias_expand_addr_inet action addr +# Helper function for ifalias_expand_addr(). Handles IPv4. # -ifalias_ipv6_up() +ifalias_expand_addr_inet() { - local _ret alias ifconfig_args - _ret=1 + local _action _arg _cidr _cidr_addr + local _ipaddr _plen _range _iphead _iptail _iplow _iphigh _ipcount + local _retstr _c + _action=$1 + _arg=$2 + _retstr= - # ifconfig_IF_aliasN which starts with "inet6" - alias=0 - while : ; do - ifconfig_args=`get_if_var $1 ifconfig_IF_alias${alias}` - case "${ifconfig_args}" in - inet6\ *) - ifconfig $1 ${ifconfig_args} alias && _ret=0 - ;; - "") - break - ;; + case $_action:$_arg in + *:*--*) return ;; # invalid + tmp:*) echo $_arg && return ;; # already expanded + tmp:*-*) _action="alias" ;; # to be expanded + *:*-*) ;; # to be expanded + *:*) echo inet $_arg && return ;; # already expanded + esac + + for _cidr in $_arg; do + _ipaddr=${_cidr%%/*} + _plen=${_cidr##*/} + # When subnet prefix length is not specified, use /32. + case $_plen in + $_ipaddr) _plen=32 ;; # "/" character not found esac - alias=$((${alias} + 1)) - done - # backward compatibility: ipv6_ifconfig_IF_aliasN. - alias=0 - while : ; do - ifconfig_args=`get_if_var $1 ipv6_ifconfig_IF_alias${alias}` - case "${ifconfig_args}" in - "") - break + OIFS=$IFS + IFS=. set -- $_ipaddr + _range= + _iphead= + _iptail= + for _c in $@; do + case $_range:$_c in + :[0-9]*-[0-9]*) + _range=$_c ;; - *) - ifconfig $1 inet6 ${ifconfig_args} alias && _ret=0 - warn "\$ipv6_ifconfig_$1_alias${alias} is obsolete." \ - " Use ifconfig_$1_aliasN instead." + :*) + _iphead="${_iphead}${_iphead:+.}${_c}" ;; - esac - alias=$((${alias} + 1)) + *:*) + _iptail="${_iptail}${_iptail:+.}${_c}" + ;; + esac + done + IFS=$OIFS + _iplow=${_range%-*} + _iphigh=${_range#*-} + + # clear netmask when removing aliases + if [ "$_action" = "-alias" ]; then + _plen="" + fi + + _ipcount=$_iplow + while [ "$_ipcount" -le "$_iphigh" ]; do + _retstr="${_retstr} ${_iphead}${_iphead:+.}${_ipcount}${_iptail:+.}${_iptail}${_plen:+/}${_plen}" + if [ $_ipcount -gt $(($_iplow + $_IPEXPANDMAX)) ]; then + warn "Range specification is too large (${_iphead}${_iphead:+.}${_iplow}${_iptail:+.}${_iptail}-${_iphead}${_iphead:+.}${_iphigh}${_iptail:+.}${_iptail}). ${_iphead}${_iphead:+.}${_iplow}${_iptail:+.}${_iptail}-${_iphead}${_iphead:+.}${_ipcount}${_iptail:+.}${_iptail} was processed." + break + else + _ipcount=$(($_ipcount + 1)) + fi + # Forcibly set /32 for remaining aliases. + _plen=32 + done done - return $_ret + for _c in $_retstr; do + ifalias_expand_addr_inet $_action $_c + done } -# ifalias_down if af -# Remove aliases for network interface $if. -# It returns 0 if at least one alias was removed or -# 1 if there were none. +# ifalias_expand_addr_inet6 action addr +# Helper function for ifalias_expand_addr(). Handles IPv6. # -ifalias_down() -{ - local _ret - _ret=1 - - case "$2" in - inet) - _ret=`ifalias_ipv4_down "$1"` - ;; - inet6) - _ret=`ifalias_ipv6_down "$1"` - ;; +ifalias_expand_addr_inet6() +{ + local _action _arg _cidr _cidr_addr + local _ipaddr _plen _ipleft _ipright _iplow _iphigh _ipcount + local _ipv4part + local _retstr _c + _action=$1 + _arg=$2 + _retstr= + + case $_action:$_arg in + *:*--*) return ;; # invalid + tmp:*) echo $_arg && return ;; + tmp:*-*) _action="alias" ;; + *:*-*) ;; + *:*) echo inet6 $_arg && return ;; esac - return $_ret + for _cidr in $_arg; do + _ipaddr="${_cidr%%/*}" + _plen="${_cidr##*/}" + + case $_action:$_ipaddr:$_cidr in + -alias:*:*) unset _plen ;; + *:$_cidr:$_ipaddr) unset _plen ;; + esac + + if [ "${_ipaddr%:*.*.*.*}" = "$_ipaddr" ]; then + # Handle !v4mapped && !v4compat addresses. + + # The default prefix length is 64. + case $_ipaddr:$_cidr in + $_cidr:$_ipaddr) _plen="64" ;; + esac + _ipleft=${_ipaddr%-*} + _ipright=${_ipaddr#*-} + _iplow=${_ipleft##*:} + _iphigh=${_ipright%%:*} + _ipleft=${_ipleft%:*} + _ipright=${_ipright#*:} + + if [ "$_iphigh" = "$_ipright" ]; then + unset _ipright + else + _ipright=:$_ipright + fi + + if [ -n "$_iplow" -a -n "$_iphigh" ]; then + _iplow=$((0x$_iplow)) + _iphigh=$((0x$_iphigh)) + _ipcount=$_iplow + while [ $_ipcount -le $_iphigh ]; do + _r=`printf "%s:%04x%s%s" \ + $_ipleft $_ipcount $_ipright \ + ${_plen:+/}$_plen` + _retstr="$_retstr $_r" + if [ $_ipcount -gt $(($_iplow + $_IPEXPANDMAX)) ] + then + warn "Range specification is too large $(printf '(%s:%04x%s-%s:%04x%s)' $_ipleft $_iplow $_ipright $_ipleft $_iphigh $_ipright). $(printf '%s:%04x%s-%s:%04x%s' $_ipleft $_iplow $_ipright $_ipleft $_ipcount $_ipright) was processed." + break + else + _ipcount=$(($_ipcount + 1)) + fi + done + else + _retstr="${_ipaddr}${_plen:+/}${_plen}" + fi + + for _c in $_retstr; do + ifalias_expand_addr_inet6 $_action $_c + done + else + # v4mapped/v4compat should handle as an IPv4 alias + _ipv4part=${_ipaddr##*:} + + # Adjust prefix length if any. If not, set the + # default prefix length as 32. + case $_ipaddr:$_cidr in + $_cidr:$_ipaddr) _plen=32 ;; + *) _plen=$(($_plen - 96)) ;; + esac + + _retstr=`ifalias_expand_addr_inet \ + tmp ${_ipv4part}${_plen:+/}${_plen}` + for _c in $_retstr; do + ifalias_expand_addr_inet $_action $_c + done + fi + done } -# ifalias_ipv4_down if -# Helper function for ifalias_down(). Handles IPv4. +# ifalias_af_common_handler if af action args +# Helper function for ifalias_af_common(). # -ifalias_ipv4_down() +ifalias_af_common_handler() { - local _ret alias ifconfig_args + local _ret _if _af _action _args _c _tmpargs + _ret=1 + _if=$1 + _af=$2 + _action=$3 + shift 3 + _args=$* + + case $_args in + ${_af}\ *) ;; + *) return ;; + esac - # ifconfig_IF_aliasN which starts with "inet" - alias=0 - while : ; do - ifconfig_args=`get_if_var $1 ifconfig_IF_alias${alias}` - case "${ifconfig_args}" in - inet\ *) - ifconfig $1 ${ifconfig_args} -alias && _ret=0 + _tmpargs= + for _c in $_args; do + case $_c in + ${_af}) + case $_tmpargs in + ${_af}\ *-*) + ifalias_af_common_handler $_if $_af $_action \ + `ifalias_expand_addr $_af $_action ${_tmpargs#${_af}\ }` ;; - "") - break + ${_af}\ *) + ${IFCONFIG_CMD} $_if $_tmpargs $_action && _ret=0 ;; + esac + _tmpargs=$_af + ;; + *) + _tmpargs="$_tmpargs $_c" + ;; esac - alias=$((${alias} + 1)) done + # Process the last component if any. + if [ -n "$_tmpargs}" ]; then + case $_tmpargs in + ${_af}\ *-*) + ifalias_af_common_handler $_if $_af $_action \ + `ifalias_expand_addr $_af $_action ${_tmpargs#${_af}\ }` + ;; + ${_af}\ *) + ${IFCONFIG_CMD} $_if $_tmpargs $_action && _ret=0 + ;; + esac + fi return $_ret } -# ifalias_ipv6_down if -# Helper function for ifalias_down(). Handles IPv6. +# ifalias_af_common if af action +# Helper function for ifalias(). # -ifalias_ipv6_down() +ifalias_af_common() { - local _ret alias ifconfig_args + local _ret _if _af _action alias ifconfig_args _aliasn _c _tmpargs _iaf + _ret=1 + _aliasn= + _if=$1 + _af=$2 + _action=$3 - # ifconfig_IF_aliasN which starts with "inet6" + # ifconfig_IF_aliasN which starts with $_af alias=0 while : ; do - ifconfig_args=`get_if_var $1 ifconfig_IF_alias${alias}` - case "${ifconfig_args}" in - inet6\ *) - ifconfig $1 ${ifconfig_args} -alias && _ret=0 + ifconfig_args=`get_if_var $_if ifconfig_IF_alias${alias}` + _iaf= + case $ifconfig_args in + inet\ *) _iaf=inet ;; + inet6\ *) _iaf=inet6 ;; + ipx\ *) _iaf=ipx ;; + esac + + case ${_af}:${_action}:${_iaf}:"${ifconfig_args}" in + ${_af}:*:${_af}:*) + _aliasn="$_aliasn $ifconfig_args" ;; - "") + ${_af}:*:"":"") break ;; + inet:alias:"":*) + _aliasn="$_aliasn inet $ifconfig_args" + warn "\$ifconfig_${_if}_alias${alias} needs " \ + "\"inet\" keyword for an IPv4 address." esac - alias=$((${alias} + 1)) + alias=$(($alias + 1)) done # backward compatibility: ipv6_ifconfig_IF_aliasN. - alias=0 - while : ; do - ifconfig_args=`get_if_var $1 ipv6_ifconfig_IF_alias${alias}` - case "${ifconfig_args}" in - "") - break + case $_af in + inet6) + alias=0 + while : ; do + ifconfig_args=`get_if_var $_if ipv6_ifconfig_IF_alias${alias}` + case ${_action}:"${ifconfig_args}" in + *:"") + break + ;; + alias:*) + _aliasn="${_aliasn} inet6 ${ifconfig_args}" + warn "\$ipv6_ifconfig_${_if}_alias${alias} " \ + "is obsolete. Use ifconfig_$1_aliasN " \ + "instead." ;; - *) - ifconfig $1 inet6 ${ifconfig_args} -alias && _ret=0 - warn "\$ipv6_ifconfig_$1_alias${alias} is obsolete." \ - " Use ifconfig_$1_aliasN instead." + esac + alias=$(($alias + 1)) + done + esac + + # backward compatibility: ipv4_addrs_IF. + for _tmpargs in `get_if_var $_if ipv4_addrs_IF`; do + _aliasn="$_aliasn inet $_tmpargs" + done + + # Handle ifconfig_IF_aliases, ifconfig_IF_aliasN, and the others. + _tmpargs= + for _c in `get_if_var $_if ifconfig_IF_aliases` $_aliasn; do + case $_c in + inet|inet6|ipx) + case $_tmpargs in + ${_af}\ *) + eval ifalias_af_common_handler $_if $_af $_action $_tmpargs && _ret=0 ;; + esac + _tmpargs=$_c + ;; + *) + _tmpargs="$_tmpargs $_c" esac - alias=$((${alias} + 1)) done + # Process the last component + case $_tmpargs in + ${_af}\ *) + ifalias_af_common_handler $_if $_af $_action $_tmpargs && _ret=0 + ;; + esac return $_ret } @@ -899,14 +1016,32 @@ ipv6_prefix_hostid_addr_common() hostid=${hostid%\%*} for j in ${prefix}; do - address=$j\:${hostid} - ifconfig ${_if} inet6 ${address} prefixlen 64 ${_action} + # The default prefixlen is 64. + plen=${j#*/} + case $j:$plen in + $plen:$j) plen=64 ;; + *) j=${j%/*} ;; + esac + + # Normalize the last part by removing ":" + j=${j%:*} + j=${j%:} + OIFS=$IFS; IFS=":"; set -- $j; nj=$#; IFS=$OIFS + OIFS=$IFS; IFS=":"; set -- $hostid; nh=$#; IFS=$OIFS + if [ $(($nj + $nh)) -eq 8 ]; then + address=$j\:$hostid + else + address=$j\::$hostid + fi + + ${IFCONFIG_CMD} ${_if} inet6 ${address} \ + prefixlen $plen ${_action} # if I am a router, add subnet router # anycast address (RFC 2373). if checkyesno ipv6_gateway_enable; then - ifconfig ${_if} inet6 $j:: prefixlen 64 \ - ${_action} anycast + ${IFCONFIG_CMD} ${_if} inet6 $j:: \ + prefixlen $plen ${_action} anycast fi done fi @@ -918,7 +1053,7 @@ ipv6_prefix_hostid_addr_common() ipv6_accept_rtadv_up() { if ipv6_autoconfif $1; then - ifconfig $1 inet6 accept_rtadv up + ${IFCONFIG_CMD} $1 inet6 accept_rtadv up if ! checkyesno rtsold_enable; then rtsol ${rtsol_flags} $1 fi @@ -930,7 +1065,7 @@ ipv6_accept_rtadv_up() ipv6_accept_rtadv_down() { if ipv6_autoconfif $1; then - ifconfig $1 inet6 -accept_rtadv + ${IFCONFIG_CMD} $1 inet6 -accept_rtadv fi } @@ -975,7 +1110,7 @@ clone_up() # create_args_IF for ifn in ${cloned_interfaces}; do - ifconfig ${ifn} create `get_if_var ${ifn} create_args_IF` + ${IFCONFIG_CMD} ${ifn} create `get_if_var ${ifn} create_args_IF` if [ $? -eq 0 ]; then _list="${_list}${_prefix}${ifn}" [ -z "$_prefix" ] && _prefix=' ' @@ -995,7 +1130,7 @@ clone_down() _list= for ifn in ${cloned_interfaces}; do - ifconfig -n ${ifn} destroy + ${IFCONFIG_CMD} -n ${ifn} destroy if [ $? -eq 0 ]; then _list="${_list}${_prefix}${ifn}" [ -z "$_prefix" ] && _prefix=' ' @@ -1022,16 +1157,16 @@ childif_create() debug_flags="`get_if_var $child wlandebug_IF`" if expr $child : 'wlan[0-9][0-9]*$' >/dev/null 2>&1; then - ifconfig $child create ${create_args} && cfg=0 + ${IFCONFIG_CMD} $child create ${create_args} && cfg=0 if [ -n "${debug_flags}" ]; then wlandebug -i $child ${debug_flags} fi else - i=`ifconfig wlan create ${create_args}` + i=`${IFCONFIG_CMD} wlan create ${create_args}` if [ -n "${debug_flags}" ]; then wlandebug -i $i ${debug_flags} fi - ifconfig $i name $child && cfg=0 + ${IFCONFIG_CMD} $i name $child && cfg=0 fi if autoif $child; then ifn_start $child @@ -1049,14 +1184,14 @@ childif_create() if expr $child : '[1-9][0-9]*$' >/dev/null 2>&1; then child="${ifn}.${child}" create_args=`get_if_var $child create_args_IF` - ifconfig $child create ${create_args} && cfg=0 + ${IFCONFIG_CMD} $child create ${create_args} && cfg=0 else create_args="vlandev $ifn `get_if_var $child create_args_IF`" if expr $child : 'vlan[0-9][0-9]*$' >/dev/null 2>&1; then - ifconfig $child create ${create_args} && cfg=0 + ${IFCONFIG_CMD} $child create ${create_args} && cfg=0 else - i=`ifconfig vlan create ${create_args}` - ifconfig $i name $child && cfg=0 + i=`${IFCONFIG_CMD} vlan create ${create_args}` + ${IFCONFIG_CMD} $i name $child && cfg=0 fi fi if autoif $child; then @@ -1080,7 +1215,7 @@ childif_destroy() if ! ifexists $child; then continue fi - ifconfig -n $child destroy && cfg=0 + ${IFCONFIG_CMD} -n $child destroy && cfg=0 done child_vlans=`get_if_var $ifn vlans_IF` @@ -1091,7 +1226,7 @@ childif_destroy() if ! ifexists $child; then continue fi - ifconfig -n $child destroy && cfg=0 + ${IFCONFIG_CMD} -n $child destroy && cfg=0 done return ${cfg} @@ -1138,13 +1273,13 @@ gif_up() ;; *) if expr $i : 'gif[0-9][0-9]*$' >/dev/null 2>&1; then - ifconfig $i create >/dev/null 2>&1 + ${IFCONFIG_CMD} $i create >/dev/null 2>&1 else - gif=`ifconfig gif create` - ifconfig $gif name $i + gif=`${IFCONFIG_CMD} gif create` + ${IFCONFIG_CMD} $gif name $i fi - ifconfig $i tunnel ${peers} - ifconfig $i up + ${IFCONFIG_CMD} $i tunnel ${peers} + ${IFCONFIG_CMD} $i up ;; esac done @@ -1210,7 +1345,7 @@ ipx_up() # ifconfig_IF_ipx ifconfig_args=`_ifconfig_getargs $ifn ipx` if [ -n "${ifconfig_args}" ]; then - ifconfig ${ifn} ${ifconfig_args} + ${IFCONFIG_CMD} ${ifn} ${ifconfig_args} return 0 fi @@ -1227,7 +1362,7 @@ ipx_down() _if=$1 _ifs="^" _ret=1 - ipxList="`ifconfig ${_if} | grep 'ipx ' | tr "\n" "$_ifs"`" + ipxList="`${IFCONFIG_CMD} ${_if} | grep 'ipx ' | tr "\n" "$_ifs"`" oldifs="$IFS" IFS="$_ifs" @@ -1238,7 +1373,7 @@ ipx_down() _ipx=`expr "$_ipx" : '.*\(ipx [0-9a-h]\{1,8\}H*\.[0-9a-h]\{1,12\}\).*'` IFS="$oldifs" - ifconfig ${_if} ${_ipx} delete + ${IFCONFIG_CMD} ${_if} ${_ipx} delete IFS="$_ifs" _ret=0 done @@ -1255,10 +1390,10 @@ ifnet_rename() local _if _ifname # ifconfig_IF_name - for _if in `ifconfig -l`; do + for _if in `${IFCONFIG_CMD} -l`; do _ifname=`get_if_var $_if ifconfig_IF_name` if [ ! -z "$_ifname" ]; then - ifconfig $_if name $_ifname + ${IFCONFIG_CMD} $_if name $_ifname fi done @@ -1290,7 +1425,7 @@ list_net_interfaces() _tmplist= case ${network_interfaces} in [Aa][Uu][Tt][Oo]) - _autolist="`ifconfig -l`" + _autolist="`${IFCONFIG_CMD} -l`" _lo= for _if in ${_autolist} ; do if autoif $_if; then @@ -1398,7 +1533,7 @@ is_wired_interface() { local media - case `ifconfig $1 2>/dev/null` in + case `${IFCONFIG_CMD} $1 2>/dev/null` in *media:?Ethernet*) media=Ethernet ;; esac @@ -1410,25 +1545,27 @@ is_wired_interface() # If flag is defined, tentative ones will be excluded. network6_getladdr() { - local proto addr rest - ifconfig $1 2>/dev/null | while read proto addr rest; do - case ${proto} in - inet6) - case ${addr} in - fe80::*) - if [ -z "$2" ]; then - echo ${addr} - return - fi - case ${rest} in - *tentative*) - continue - ;; - *) - echo ${addr} - return - esac - esac + local _if _flag proto addr rest + _if=$1 + _flag=$2 + + ${IFCONFIG_CMD} $_if 2>/dev/null | while read proto addr rest; do + case "${proto}/${addr}/${_flag}/${rest}" in + inet6/fe80::*//*) + echo ${addr} + ;; + inet6/fe80:://*tentative*) # w/o flag + sleep `${SYSCTL_N} net.inet6.ip6.dad_count` + network6_getladdr $_if $_flags + ;; + inet6/fe80::/*/*tentative*) # w/ flag + echo ${addr} + ;; + *) + continue + ;; esac + + return done } Modified: head/share/man/man5/rc.conf.5 ============================================================================== --- head/share/man/man5/rc.conf.5 Thu Jun 20 02:26:32 2013 (r252014) +++ head/share/man/man5/rc.conf.5 Thu Jun 20 02:29:49 2013 (r252015) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd June 9, 2013 +.Dd June 20, 2013 .Dt RC.CONF 5 .Os .Sh NAME @@ -1124,44 +1124,63 @@ Such keywords are removed before passing .Xr ifconfig 8 while the order of the other arguments is preserved. .Pp -One can configure more than one IPv4 address with the -.Va ipv4_addrs_ Ns Aq Ar interface -variable. -One or more IP addresses must be provided in Classless Inter-Domain -Routing (CIDR) address notation, whose last byte can be a range like -192.0.2.5-23/24. -In this case the address 192.0.2.5 will be configured with the +It is possible to add IP alias entries using +.Xr ifconfig 8 +syntax with the address family keyword such as +.Li inet . +Assuming that the interface in question was +.Li ed0 , +it might look something like this: +.Bd -literal +ifconfig_ed0_alias0="inet 127.0.0.253 netmask 0xffffffff" +ifconfig_ed0_alias1="inet 127.0.0.254 netmask 0xffffffff" +.Ed +.Pp +It also possible to configure multiple IP addresses in Classless +Inter-Domain Routing +.Pq CIDR +address notation, +whose each address component can be a range like +.Li inet 192.0.2.5-23/24 +or +.Li inet6 2001:db8:1-f::1/64 . +This notation allows address and prefix length part only, +not the other address modifiers. +.Pp +In the case of +.Li 192.0.2.5-23/24 , +the address 192.0.2.5 will be configured with the netmask /24 and the addresses 192.0.2.6 to 192.0.2.23 with the non-conflicting netmask /32 as explained in the .Xr ifconfig 8 alias section. +Note that this special netmask handling is only for +.Li inet , +not for the other address families such as +.Li inet6 . +.Pp With the interface in question being .Li ed0 , an example could look like: .Bd -literal -ipv4_addrs_ed0="192.0.2.129/27 192.0.2.1-5/28" +ifconfig_ed0_alias2="inet 192.0.2.129/27" *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 05:40:12 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id DADCAB9E; Thu, 20 Jun 2013 05:40:12 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B3D7A1AB3; Thu, 20 Jun 2013 05:40:12 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5K5eCXN029238; Thu, 20 Jun 2013 05:40:12 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5K5eCNR029235; Thu, 20 Jun 2013 05:40:12 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306200540.r5K5eCNR029235@svn.freebsd.org> From: Devin Teske Date: Thu, 20 Jun 2013 05:40:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252017 - in head/usr.sbin/bsdconfig/security: . include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 05:40:12 -0000 Author: dteske Date: Thu Jun 20 05:40:11 2013 New Revision: 252017 URL: http://svnweb.freebsd.org/changeset/base/252017 Log: Add debugging (for a case that shouldn't arise, but makes it more obvious if a menu addition is made in one plce but forgotten in another). Modified: head/usr.sbin/bsdconfig/security/include/messages.subr head/usr.sbin/bsdconfig/security/kern_securelevel head/usr.sbin/bsdconfig/security/security Modified: head/usr.sbin/bsdconfig/security/include/messages.subr ============================================================================== --- head/usr.sbin/bsdconfig/security/include/messages.subr Thu Jun 20 03:55:41 2013 (r252016) +++ head/usr.sbin/bsdconfig/security/include/messages.subr Thu Jun 20 05:40:11 2013 (r252017) @@ -46,3 +46,5 @@ msg_securelevel_desc="Configure securele msg_securelevels_menu_text="This menu allows you to select the securelevel your system runs with.\nWhen operating at a securelevel, certain root privileges are disabled,\nwhich may increase resistance to exploits and protect system integrity.\nIn secure mode system flags may not be overridden by the root user,\naccess to direct kernel memory is limited, and kernel modules may not\nbe changed. In highly secure mode, mounted file systems may not be\nmodified on-disk, tampering with the system clock is prohibited. In\nnetwork secure mode configuration changes to firewalling are prohibited.\n " msg_securelevels_menu_title="Securelevel Configuration Menu" msg_system_security_options_menu="System Security Options Menu" +msg_unknown_kern_securelevel_selection="Unknown kern.securelevel selection" +msg_unknown_security_menu_selection="Unknown security menu selection" Modified: head/usr.sbin/bsdconfig/security/kern_securelevel ============================================================================== --- head/usr.sbin/bsdconfig/security/kern_securelevel Thu Jun 20 03:55:41 2013 (r252016) +++ head/usr.sbin/bsdconfig/security/kern_securelevel Thu Jun 20 05:40:11 2013 (r252017) @@ -158,6 +158,8 @@ case "$mtag" in f_sysrc_set kern_securelevel_enable "YES" f_sysrc_set kern_securelevel "3" ;; +*) + f_die 1 "$msg_unknown_kern_securelevel_selection" esac exit $SUCCESS Modified: head/usr.sbin/bsdconfig/security/security ============================================================================== --- head/usr.sbin/bsdconfig/security/security Thu Jun 20 03:55:41 2013 (r252016) +++ head/usr.sbin/bsdconfig/security/security Thu Jun 20 05:40:11 2013 (r252017) @@ -165,6 +165,8 @@ while :; do f_sysrc_set nfs_reserved_port_only "NO" ;; "3 [ ] $msg_nfs_port") # Same; Toggle value f_sysrc_set nfs_reserved_port_only "YES" ;; + *) + f_die 1 "$msg_unknown_security_menu_selection" esac done From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 05:42:21 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id A0342D7A; Thu, 20 Jun 2013 05:42:21 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 9176E1AD0; Thu, 20 Jun 2013 05:42:21 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5K5gL96030986; Thu, 20 Jun 2013 05:42:21 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5K5gLjP030985; Thu, 20 Jun 2013 05:42:21 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306200542.r5K5gLjP030985@svn.freebsd.org> From: Devin Teske Date: Thu, 20 Jun 2013 05:42:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252018 - head/usr.sbin/bsdconfig/startup X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 05:42:21 -0000 Author: dteske Date: Thu Jun 20 05:42:21 2013 New Revision: 252018 URL: http://svnweb.freebsd.org/changeset/base/252018 Log: Remove pedanticism and consolidate some logic. Modified: head/usr.sbin/bsdconfig/startup/rcdelete Modified: head/usr.sbin/bsdconfig/startup/rcdelete ============================================================================== --- head/usr.sbin/bsdconfig/startup/rcdelete Thu Jun 20 05:40:11 2013 (r252017) +++ head/usr.sbin/bsdconfig/startup/rcdelete Thu Jun 20 05:42:21 2013 (r252018) @@ -367,19 +367,16 @@ while :; do [ "$( eval echo \$_${var}_delete )" ] || continue delete_vars="$delete_vars${delete_vars:+ }$var" done - unset var # no longer needed if dialog_menu_confirm_delete $delete_vars; then f_dialog_title "$msg_info" f_dialog_info "$msg_deleting_selected_directives" f_dialog_title_restore for var in $delete_vars; do - err=$( f_sysrc_delete $var 2>&1 ) - if [ $? -ne $SUCCESS ]; then + if ! err=$( f_sysrc_delete $var 2>&1 ); then f_dialog_msgbox "$err\n" break fi done - unset var # no longer needed dialog_create_main fi ;; @@ -388,7 +385,6 @@ while :; do setvar _${var}_delete 1 export _${var}_delete done - unset var # no longer needed ;; "> $msg_none") var_list=$( set | awk -F= " @@ -398,7 +394,6 @@ while :; do }" ) [ "$var_list" ] && unset $var_list - unset var_list # no longer needed ;; *) # Anything else is a variable to edit var="${mtag# }" @@ -410,7 +405,6 @@ while :; do setvar _${var}_delete 1 export _${var}_delete fi - unset var # no longer needed esac done From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 05:48:10 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 188E6F55; Thu, 20 Jun 2013 05:48:10 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 0AEEA1B0B; Thu, 20 Jun 2013 05:48:10 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5K5m9AJ031865; Thu, 20 Jun 2013 05:48:09 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5K5m9mt031860; Thu, 20 Jun 2013 05:48:09 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306200548.r5K5m9mt031860@svn.freebsd.org> From: Devin Teske Date: Thu, 20 Jun 2013 05:48:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252019 - in head/usr.sbin/bsdconfig: . startup usermgmt X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 05:48:10 -0000 Author: dteske Date: Thu Jun 20 05:48:08 2013 New Revision: 252019 URL: http://svnweb.freebsd.org/changeset/base/252019 Log: When the fall-back of a case-statement is the last thing executed in a while-loop _and_ all prior matches in the same case-statement either break or continue, we can safely break the fall-back out of the case-statement. This should improve readability and allow for longer-lines by reducing the level of indentation by-one for the fall-back case. Modified: head/usr.sbin/bsdconfig/bsdconfig head/usr.sbin/bsdconfig/startup/rcadd head/usr.sbin/bsdconfig/usermgmt/groupedit head/usr.sbin/bsdconfig/usermgmt/userdel head/usr.sbin/bsdconfig/usermgmt/useredit Modified: head/usr.sbin/bsdconfig/bsdconfig ============================================================================== --- head/usr.sbin/bsdconfig/bsdconfig Thu Jun 20 05:42:21 2013 (r252018) +++ head/usr.sbin/bsdconfig/bsdconfig Thu Jun 20 05:48:08 2013 (r252019) @@ -330,25 +330,21 @@ while :; do fi case "$mtag" in - X) # Exit - break - ;; - + X) break ;; 1) # Usage f_show_help "$USAGE_HELPFILE" continue - ;; + esac - *) # Dynamically loaded menuitem - f_getvar menu_program$mtag menu_program - case "$menu_program" in - /*) cmd="$menu_program";; - *) cmd="$BSDCFG_LIBE/$menu_program" - esac - f_dprintf "cmd=[%s]" "$cmd" - $cmd ${USE_XDIALOG:+-X} + # Anything else is a dynamically loaded menuitem + f_getvar menu_program$mtag menu_program + case "$menu_program" in + /*) cmd="$menu_program";; + *) cmd="$BSDCFG_LIBE/$menu_program" esac + f_dprintf "cmd=[%s]" "$cmd" + $cmd ${USE_XDIALOG:+-X} done exit $SUCCESS Modified: head/usr.sbin/bsdconfig/startup/rcadd ============================================================================== --- head/usr.sbin/bsdconfig/startup/rcadd Thu Jun 20 05:42:21 2013 (r252018) +++ head/usr.sbin/bsdconfig/startup/rcadd Thu Jun 20 05:48:08 2013 (r252019) @@ -127,13 +127,12 @@ while :; do f_dialog_menutag_fetch mtag defaultitem="$mtag" - case "$mtag" in - "X $msg_exit" ) break ;; - *) # Anything else is a directive - rcvar="${mtag# }" - $BSDCFG_LIBE/$APP_DIR/rcedit \ - ${USE_XDIALOG:+-X} "$rcvar" - esac + [ "$mtag" = "X $msg_exit" ] && break + + # Anything else is a directive + + $BSDCFG_LIBE/$APP_DIR/rcedit ${USE_XDIALOG:+-X} \ + "${mtag# }" done ;; 2) # Add Custom Modified: head/usr.sbin/bsdconfig/usermgmt/groupedit ============================================================================== --- head/usr.sbin/bsdconfig/usermgmt/groupedit Thu Jun 20 05:42:21 2013 (r252018) +++ head/usr.sbin/bsdconfig/usermgmt/groupedit Thu Jun 20 05:48:08 2013 (r252019) @@ -77,13 +77,12 @@ while :; do [ $retval -eq 0 ] || f_die - case "$mtag" in - "X $msg_exit") break ;; - *) # anything else is a group name - $BSDCFG_LIBE/$APP_DIR/groupinput \ - ${USE_XDIALOG:+-X} mode="Edit/View" group="$mtag" - ;; - esac + [ "$mtag" = "X $msg_exit" ] && break + + # Anything else is a group name + + $BSDCFG_LIBE/$APP_DIR/groupinput \ + ${USE_XDIALOG:+-X} mode="Edit/View" group="$mtag" done exit $SUCCESS Modified: head/usr.sbin/bsdconfig/usermgmt/userdel ============================================================================== --- head/usr.sbin/bsdconfig/usermgmt/userdel Thu Jun 20 05:42:21 2013 (r252018) +++ head/usr.sbin/bsdconfig/usermgmt/userdel Thu Jun 20 05:48:08 2013 (r252019) @@ -77,13 +77,12 @@ while :; do [ $retval -eq 0 ] || f_die - case "$mtag" in - "X $msg_exit") break ;; - *) # anything else is a userid - $BSDCFG_LIBE/$APP_DIR/userinput \ - ${USE_XDIALOG:+-X} mode="Delete" user="$mtag" - ;; - esac + [ "$mtag" = "X $msg_exit" ] && break + + # Anything else is a userid + + $BSDCFG_LIBE/$APP_DIR/userinput \ + ${USE_XDIALOG:+-X} mode="Delete" user="$mtag" done exit $SUCCESS Modified: head/usr.sbin/bsdconfig/usermgmt/useredit ============================================================================== --- head/usr.sbin/bsdconfig/usermgmt/useredit Thu Jun 20 05:42:21 2013 (r252018) +++ head/usr.sbin/bsdconfig/usermgmt/useredit Thu Jun 20 05:48:08 2013 (r252019) @@ -77,13 +77,12 @@ while :; do [ $retval -eq 0 ] || f_die - case "$mtag" in - "X $msg_exit") break ;; - *) # anything else is a userid - $BSDCFG_LIBE/$APP_DIR/userinput \ - ${USE_XDIALOG:+-X} mode="Edit/View" user="$mtag" - ;; - esac + [ "$mtag" = "X $msg_exit" ] && break + + # Anything else is a userid + + $BSDCFG_LIBE/$APP_DIR/userinput \ + ${USE_XDIALOG:+-X} mode="Edit/View" user="$mtag" done exit $SUCCESS From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 05:51:45 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 5FD7B1EF; Thu, 20 Jun 2013 05:51:45 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 387A01B30; Thu, 20 Jun 2013 05:51:45 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5K5piMd033974; Thu, 20 Jun 2013 05:51:44 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5K5pi5O033972; Thu, 20 Jun 2013 05:51:44 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306200551.r5K5pi5O033972@svn.freebsd.org> From: Devin Teske Date: Thu, 20 Jun 2013 05:51:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252020 - in head/usr.sbin/bsdconfig: startup usermgmt X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 05:51:45 -0000 Author: dteske Date: Thu Jun 20 05:51:44 2013 New Revision: 252020 URL: http://svnweb.freebsd.org/changeset/base/252020 Log: When the fall-back of a case-statement is the last thing executed in a while-loop _and_ all prior matches in the same case-statement either break or continue, we can safely break the fall-back out of the case-statement. This should improve readability and allow for longer-lines by reducing the level of indentation by-one for the fall-back case. (a continuation of SVN r252019) Modified: head/usr.sbin/bsdconfig/startup/rcvar head/usr.sbin/bsdconfig/usermgmt/groupdel Modified: head/usr.sbin/bsdconfig/startup/rcvar ============================================================================== --- head/usr.sbin/bsdconfig/startup/rcvar Thu Jun 20 05:48:08 2013 (r252019) +++ head/usr.sbin/bsdconfig/startup/rcvar Thu Jun 20 05:51:44 2013 (r252020) @@ -197,21 +197,20 @@ while :; do dialog_menu_main || f_die f_dialog_menutag_fetch mtag - case "$mtag" in - "X $msg_exit") break ;; - *) # Anything else is an rcvar to toggle - rcvar="${mtag# }" - f_dialog_menuitem_fetch value - - # Determine the new [toggled] value to use - case "$value" in - "[X]"*) value="NO" ;; - *) value="YES" - esac + [ "$mtag" = "X $msg_exit" ] && break - err=$( f_sysrc_set "$rcvar" "$value" 2>&1 ) || - f_dialog_msgbox "$err" + # Anything else is an rcvar to toggle + + rcvar="${mtag# }" + f_dialog_menuitem_fetch value + + # Determine the new [toggled] value to use + case "$value" in + "[X]"*) value="NO" ;; + *) value="YES" esac + + err=$( f_sysrc_set "$rcvar" "$value" 2>&1 ) || f_dialog_msgbox "$err" done exit $SUCCESS Modified: head/usr.sbin/bsdconfig/usermgmt/groupdel ============================================================================== --- head/usr.sbin/bsdconfig/usermgmt/groupdel Thu Jun 20 05:48:08 2013 (r252019) +++ head/usr.sbin/bsdconfig/usermgmt/groupdel Thu Jun 20 05:51:44 2013 (r252020) @@ -77,13 +77,12 @@ while :; do [ $retval -eq 0 ] || f_die - case "$mtag" in - "X $msg_exit") break ;; - *) # anything else is a group name - $BSDCFG_LIBE/$APP_DIR/groupinput \ - ${USE_XDIALOG:+-X} mode="Delete" group="$mtag" - ;; - esac + [ "$mtag" = "X $msg_exit" ] && break + + # Anything else is a group name + + $BSDCFG_LIBE/$APP_DIR/groupinput \ + ${USE_XDIALOG:+-X} mode="Delete" group="$mtag" done exit $SUCCESS From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 07:29:43 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 329E363E; Thu, 20 Jun 2013 07:29:43 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 25B551F47; Thu, 20 Jun 2013 07:29:43 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5K7Th1a063680; Thu, 20 Jun 2013 07:29:43 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5K7ThOi063679; Thu, 20 Jun 2013 07:29:43 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306200729.r5K7ThOi063679@svn.freebsd.org> From: Devin Teske Date: Thu, 20 Jun 2013 07:29:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252022 - head/usr.sbin/bsdconfig/share/media X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 07:29:43 -0000 Author: dteske Date: Thu Jun 20 07:29:42 2013 New Revision: 252022 URL: http://svnweb.freebsd.org/changeset/base/252022 Log: Fix a code typo in a case-statement match expression that prevented IPv6 URLs with port designator from working properly (e.g. http://[::1]:80/). Modified: head/usr.sbin/bsdconfig/share/media/httpproxy.subr Modified: head/usr.sbin/bsdconfig/share/media/httpproxy.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/httpproxy.subr Thu Jun 20 07:23:04 2013 (r252021) +++ head/usr.sbin/bsdconfig/share/media/httpproxy.subr Thu Jun 20 07:29:42 2013 (r252022) @@ -81,7 +81,7 @@ f_media_set_http_proxy() hostname="${hostname#\[}" hostname="${hostname%\]}" ;; - "["*"]:") + "["*"]:"*) hostname="${hostname#\[}" port="${hostname#*\]:}" port="${port%%[!0-9]*}" From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 08:41:01 2013 Return-Path: Delivered-To: svn-src-head@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 45FBB659; Thu, 20 Jun 2013 08:41:01 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from theravensnest.org (theraven.freebsd.your.org [216.14.102.27]) by mx1.freebsd.org (Postfix) with ESMTP id 0B96E1363; Thu, 20 Jun 2013 08:41:00 +0000 (UTC) Received: from [192.168.0.2] (cpc27-cmbg15-2-0-cust235.5-4.cable.virginmedia.com [86.27.188.236]) (authenticated bits=0) by theravensnest.org (8.14.5/8.14.5) with ESMTP id r5K8ep53018759 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Thu, 20 Jun 2013 08:40:52 GMT (envelope-from theraven@FreeBSD.org) Content-Type: multipart/signed; boundary="Apple-Mail=_0ABE534E-C357-45B3-8039-926EA292BD2E"; protocol="application/pgp-signature"; micalg=pgp-sha1 Mime-Version: 1.0 (Mac OS X Mail 6.3 \(1503\)) Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... From: David Chisnall In-Reply-To: <8D00BE2B-FD8E-4E7B-B818-1C4B7F6BB6A5@bsdimp.com> Date: Thu, 20 Jun 2013 09:40:47 +0100 Message-Id: References: <201306180253.r5I2rj45053959@svn.freebsd.org> <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> <51C1C7BD.9060201@FreeBSD.org> <201306191113.29703.jhb@freebsd.org> <8D00BE2B-FD8E-4E7B-B818-1C4B7F6BB6A5@bsdimp.com> To: Warner Losh X-Mailer: Apple Mail (2.1503) Cc: src-committers@FreeBSD.org, Andre Oppermann , John Baldwin , Peter Wemm , svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org, Tijl Coosemans X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 08:41:01 -0000 --Apple-Mail=_0ABE534E-C357-45B3-8039-926EA292BD2E Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On 20 Jun 2013, at 00:10, Warner Losh wrote: >> - FreeBSD developers, who are probably okay with installing a port, = but would prefer a version that didn't depend on kitchen/sink? >>=20 >> - Users, who wish to be able to update the source tree and then = either build world, or build some optional parts that are not part of = the default install? >>=20 >> - Some other category of svn consumer? >>=20 >> I think having a definitive statement as to the intention of svnlite = would help frame the discussion in a more productive format. >=20 > How do I roll back to last week with FreeBSD-update? Which of the classes of user that I outlined do you think wants to be = able to do that? As a FreeBSD user, I never felt the desire to do that, = but maybe I was unusual. As a FreeBSD developer, I don't mind = installing the svn port to be able to do it (although I'd prefer a more = lightweight port). I would expect the same to apply to the sort of = engaged user who is willing to bisect to track down a bug. =20 David --Apple-Mail=_0ABE534E-C357-45B3-8039-926EA292BD2E Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.18 (Darwin) Comment: GPGTools - http://gpgtools.org iQIcBAEBAgAGBQJRwsAPAAoJEKx65DEEsqId6d0QAMXaesNiv6vmH5sETv5lOBfN oyf767hfyeq0BF83y+1tk9gM+F0zENcwZYTyQtpXk+B625LfI25+FOYs1VxUMh5F 7TE1hg2M1FI2Riw9+kvnUsl/tm7agPc56LJRpkw5AN7yO8rTeyfzNCHJNYGUPwMv Zlj4V5KIiPQrunsYbZwojhh4DZeFIuY9pe062+RshRymFUyOKYowOxqqSB+GrOcl 6UZ1CtuzcgtJZaI/1jbQzT6zucamYD9S2LgFyozI2161k/jgiwM/oBZiTPUM7E5O XG1/EJLmOI0zbjQaGvQa9sNATBUiH92krZNbpq5fyZEYzZasb3eDeddwlzhATx5s Bw3coSXAkDTKno8RB//UlwxEsBRfJA8x5qzGVryw1M7RjE+6W68sbs6Oo4SolEvf FfIlCPgH4OOeFOiLJuMTVSmMM/FwF3bbvT84Ep7u7nyVEF9XU/loKr5JrmTclmhZ fvGmYjBw0jKlVhx87abC4Rh6snI0r0zy5hZ8MStekwzUOHett05dswvvPVNXX2Mi wbxwC1QbQP0FrmTCE7B19/af4XkQ5WgCWqPlH0gAroIhJPegOPItCJHG6N6qq9C0 Fho2tK4aKKv2mDXkULgWOeWLniHMz5u2viZ6gmKuq1THJRb8vnzw3x+xn+6AfOsO T2W9L7SQyfbzWP1qMlHG =xdnW -----END PGP SIGNATURE----- --Apple-Mail=_0ABE534E-C357-45B3-8039-926EA292BD2E-- From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 09:55:55 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id CF9DC1C2; Thu, 20 Jun 2013 09:55:55 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B2E5B191C; Thu, 20 Jun 2013 09:55:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5K9ttXc061694; Thu, 20 Jun 2013 09:55:55 GMT (envelope-from ae@svn.freebsd.org) Received: (from ae@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5K9trRa061683; Thu, 20 Jun 2013 09:55:53 GMT (envelope-from ae@svn.freebsd.org) Message-Id: <201306200955.r5K9trRa061683@svn.freebsd.org> From: "Andrey V. Elsukov" Date: Thu, 20 Jun 2013 09:55:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252026 - in head/sys: netinet netinet6 netipsec X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 09:55:55 -0000 Author: ae Date: Thu Jun 20 09:55:53 2013 New Revision: 252026 URL: http://svnweb.freebsd.org/changeset/base/252026 Log: Use IPSECSTAT_INC() and IPSEC6STAT_INC() macros for ipsec statistics accounting. MFC after: 2 weeks Modified: head/sys/netinet/tcp_input.c head/sys/netinet/udp_usrreq.c head/sys/netinet6/ip6_forward.c head/sys/netinet6/raw_ip6.c head/sys/netinet6/udp6_usrreq.c head/sys/netipsec/ipsec.c head/sys/netipsec/ipsec.h head/sys/netipsec/ipsec6.h head/sys/netipsec/ipsec_mbuf.c head/sys/netipsec/ipsec_output.c Modified: head/sys/netinet/tcp_input.c ============================================================================== --- head/sys/netinet/tcp_input.c Thu Jun 20 08:19:29 2013 (r252025) +++ head/sys/netinet/tcp_input.c Thu Jun 20 09:55:53 2013 (r252026) @@ -950,12 +950,12 @@ findpcb: #ifdef IPSEC #ifdef INET6 if (isipv6 && ipsec6_in_reject(m, inp)) { - V_ipsec6stat.in_polvio++; + IPSEC6STAT_INC(in_polvio); goto dropunlock; } else #endif /* INET6 */ if (ipsec4_in_reject(m, inp) != 0) { - V_ipsec4stat.in_polvio++; + IPSECSTAT_INC(in_polvio); goto dropunlock; } #endif /* IPSEC */ Modified: head/sys/netinet/udp_usrreq.c ============================================================================== --- head/sys/netinet/udp_usrreq.c Thu Jun 20 08:19:29 2013 (r252025) +++ head/sys/netinet/udp_usrreq.c Thu Jun 20 09:55:53 2013 (r252026) @@ -279,7 +279,7 @@ udp_append(struct inpcb *inp, struct ip /* Check AH/ESP integrity. */ if (ipsec4_in_reject(n, inp)) { m_freem(n); - V_ipsec4stat.in_polvio++; + IPSECSTAT_INC(in_polvio); return; } #ifdef IPSEC_NAT_T @@ -1291,7 +1291,7 @@ udp4_espdecap(struct inpcb *inp, struct if (minlen > m->m_pkthdr.len) minlen = m->m_pkthdr.len; if ((m = m_pullup(m, minlen)) == NULL) { - V_ipsec4stat.in_inval++; + IPSECSTAT_INC(in_inval); return (NULL); /* Bypass caller processing. */ } data = mtod(m, caddr_t); /* Points to ip header. */ @@ -1331,7 +1331,7 @@ udp4_espdecap(struct inpcb *inp, struct uint32_t spi; if (payload <= sizeof(struct esp)) { - V_ipsec4stat.in_inval++; + IPSECSTAT_INC(in_inval); m_freem(m); return (NULL); /* Discard. */ } @@ -1352,7 +1352,7 @@ udp4_espdecap(struct inpcb *inp, struct tag = m_tag_get(PACKET_TAG_IPSEC_NAT_T_PORTS, 2 * sizeof(uint16_t), M_NOWAIT); if (tag == NULL) { - V_ipsec4stat.in_nomem++; + IPSECSTAT_INC(in_nomem); m_freem(m); return (NULL); /* Discard. */ } Modified: head/sys/netinet6/ip6_forward.c ============================================================================== --- head/sys/netinet6/ip6_forward.c Thu Jun 20 08:19:29 2013 (r252025) +++ head/sys/netinet6/ip6_forward.c Thu Jun 20 09:55:53 2013 (r252026) @@ -120,7 +120,7 @@ ip6_forward(struct mbuf *m, int srcrt) * before forwarding packet actually. */ if (ipsec6_in_reject(m, NULL)) { - V_ipsec6stat.in_polvio++; + IPSEC6STAT_INC(in_polvio); m_freem(m); return; } @@ -182,7 +182,7 @@ ip6_forward(struct mbuf *m, int srcrt) sp = ipsec_getpolicybyaddr(m, IPSEC_DIR_OUTBOUND, IP_FORWARDING, &error); if (sp == NULL) { - V_ipsec6stat.out_inval++; + IPSEC6STAT_INC(out_inval); IP6STAT_INC(ip6s_cantforward); if (mcopy) { #if 0 @@ -203,7 +203,7 @@ ip6_forward(struct mbuf *m, int srcrt) /* * This packet is just discarded. */ - V_ipsec6stat.out_polvio++; + IPSEC6STAT_INC(out_polvio); IP6STAT_INC(ip6s_cantforward); KEY_FREESP(&sp); if (mcopy) { Modified: head/sys/netinet6/raw_ip6.c ============================================================================== --- head/sys/netinet6/raw_ip6.c Thu Jun 20 08:19:29 2013 (r252025) +++ head/sys/netinet6/raw_ip6.c Thu Jun 20 09:55:53 2013 (r252026) @@ -263,7 +263,7 @@ rip6_input(struct mbuf **mp, int *offp, */ if (n && ipsec6_in_reject(n, last)) { m_freem(n); - V_ipsec6stat.in_polvio++; + IPSEC6STAT_INC(in_polvio); /* Do not inject data into pcb. */ } else #endif /* IPSEC */ @@ -295,7 +295,7 @@ rip6_input(struct mbuf **mp, int *offp, */ if ((last != NULL) && ipsec6_in_reject(m, last)) { m_freem(m); - V_ipsec6stat.in_polvio++; + IPSEC6STAT_INC(in_polvio); IP6STAT_DEC(ip6s_delivered); /* Do not inject data into pcb. */ INP_RUNLOCK(last); Modified: head/sys/netinet6/udp6_usrreq.c ============================================================================== --- head/sys/netinet6/udp6_usrreq.c Thu Jun 20 08:19:29 2013 (r252025) +++ head/sys/netinet6/udp6_usrreq.c Thu Jun 20 09:55:53 2013 (r252026) @@ -141,7 +141,7 @@ udp6_append(struct inpcb *inp, struct mb /* Check AH/ESP integrity. */ if (ipsec6_in_reject(n, inp)) { m_freem(n); - V_ipsec6stat.in_polvio++; + IPSEC6STAT_INC(in_polvio); return; } #endif /* IPSEC */ Modified: head/sys/netipsec/ipsec.c ============================================================================== --- head/sys/netipsec/ipsec.c Thu Jun 20 08:19:29 2013 (r252025) +++ head/sys/netipsec/ipsec.c Thu Jun 20 09:55:53 2013 (r252026) @@ -454,7 +454,7 @@ ipsec4_checkpolicy(struct mbuf *m, u_int sp = ipsec_getpolicybysock(m, dir, inp, error); if (sp == NULL) { IPSEC_ASSERT(*error != 0, ("getpolicy failed w/o error")); - V_ipsec4stat.ips_out_inval++; + IPSECSTAT_INC(ips_out_inval); return (NULL); } IPSEC_ASSERT(*error == 0, ("sp w/ error set to %u", *error)); @@ -464,7 +464,7 @@ ipsec4_checkpolicy(struct mbuf *m, u_int printf("%s: invalid policy %u\n", __func__, sp->policy); /* FALLTHROUGH */ case IPSEC_POLICY_DISCARD: - V_ipsec4stat.ips_out_polvio++; + IPSECSTAT_INC(ips_out_polvio); *error = -EINVAL; /* Packet is discarded by caller. */ break; case IPSEC_POLICY_BYPASS: @@ -1314,7 +1314,7 @@ ipsec4_in_reject(struct mbuf *m, struct result = ipsec46_in_reject(m, inp); if (result) - V_ipsec4stat.ips_in_polvio++; + IPSECSTAT_INC(ips_in_polvio); return (result); } @@ -1332,7 +1332,7 @@ ipsec6_in_reject(struct mbuf *m, struct result = ipsec46_in_reject(m, inp); if (result) - V_ipsec6stat.ips_in_polvio++; + IPSEC6STAT_INC(ips_in_polvio); return (result); } Modified: head/sys/netipsec/ipsec.h ============================================================================== --- head/sys/netipsec/ipsec.h Thu Jun 20 08:19:29 2013 (r252025) +++ head/sys/netipsec/ipsec.h Thu Jun 20 09:55:53 2013 (r252026) @@ -359,6 +359,7 @@ VNET_DECLARE(int, ip4_ipsec_ecn); VNET_DECLARE(int, ip4_esp_randpad); VNET_DECLARE(int, crypto_support); +#define IPSECSTAT_INC(name) V_ipsec4stat.name += 1 #define V_ipsec4stat VNET(ipsec4stat) #define V_ip4_def_policy VNET(ip4_def_policy) #define V_ip4_esp_trans_deflev VNET(ip4_esp_trans_deflev) Modified: head/sys/netipsec/ipsec6.h ============================================================================== --- head/sys/netipsec/ipsec6.h Thu Jun 20 08:19:29 2013 (r252025) +++ head/sys/netipsec/ipsec6.h Thu Jun 20 09:55:53 2013 (r252026) @@ -48,6 +48,7 @@ VNET_DECLARE(int, ip6_ah_trans_deflev); VNET_DECLARE(int, ip6_ah_net_deflev); VNET_DECLARE(int, ip6_ipsec_ecn); +#define IPSEC6STAT_INC(name) V_ipsec6stat.name += 1 #define V_ipsec6stat VNET(ipsec6stat) #define V_ip6_esp_trans_deflev VNET(ip6_esp_trans_deflev) #define V_ip6_esp_net_deflev VNET(ip6_esp_net_deflev) Modified: head/sys/netipsec/ipsec_mbuf.c ============================================================================== --- head/sys/netipsec/ipsec_mbuf.c Thu Jun 20 08:19:29 2013 (r252025) +++ head/sys/netipsec/ipsec_mbuf.c Thu Jun 20 09:55:53 2013 (r252026) @@ -135,7 +135,7 @@ m_makespace(struct mbuf *m0, int skip, i m = n; /* header is at front ... */ *off = 0; /* ... of new mbuf */ } - V_ipsec4stat.ips_mbinserted++; + IPSECSTAT_INC(ips_mbinserted); } else { /* * Copy the remainder to the back of the mbuf @@ -241,7 +241,7 @@ m_striphdr(struct mbuf *m, int skip, int /* Remove the header and associated data from the mbuf. */ if (roff == 0) { /* The header was at the beginning of the mbuf */ - V_ipsec4stat.ips_input_front++; + IPSECSTAT_INC(ips_input_front); m_adj(m1, hlen); if ((m1->m_flags & M_PKTHDR) == 0) m->m_pkthdr.len -= hlen; @@ -253,7 +253,7 @@ m_striphdr(struct mbuf *m, int skip, int * so first let's remove the remainder of the header from * the beginning of the remainder of the mbuf chain, if any. */ - V_ipsec4stat.ips_input_end++; + IPSECSTAT_INC(ips_input_end); if (roff + hlen > m1->m_len) { /* Adjust the next mbuf by the remainder */ m_adj(m1->m_next, roff + hlen - m1->m_len); @@ -278,7 +278,7 @@ m_striphdr(struct mbuf *m, int skip, int * The header lies in the "middle" of the mbuf; copy * the remainder of the mbuf down over the header. */ - V_ipsec4stat.ips_input_middle++; + IPSECSTAT_INC(ips_input_middle); bcopy(mtod(m1, u_char *) + roff + hlen, mtod(m1, u_char *) + roff, m1->m_len - (roff + hlen)); Modified: head/sys/netipsec/ipsec_output.c ============================================================================== --- head/sys/netipsec/ipsec_output.c Thu Jun 20 08:19:29 2013 (r252025) +++ head/sys/netipsec/ipsec_output.c Thu Jun 20 09:55:53 2013 (r252026) @@ -164,7 +164,7 @@ ipsec_process_done(struct mbuf *m, struc * doing further processing. */ if (isr->next) { - V_ipsec4stat.ips_out_bundlesa++; + IPSECSTAT_INC(ips_out_bundlesa); /* XXX-BZ currently only support same AF bundles. */ switch (saidx->dst.sa.sa_family) { #ifdef INET @@ -356,7 +356,7 @@ again: * this packet because it is responsibility for * upper layer to retransmit the packet. */ - V_ipsec4stat.ips_out_nosa++; + IPSECSTAT_INC(ips_out_nosa); goto bad; } sav = isr->sav; @@ -827,14 +827,14 @@ ipsec6_output_tunnel(struct ipsec_output ipseclog((LOG_ERR, "%s: family mismatched between " "inner and outer, spi=%u\n", __func__, ntohl(isr->sav->spi))); - V_ipsec6stat.ips_out_inval++; + IPSEC6STAT_INC(ips_out_inval); error = EAFNOSUPPORT; goto bad; } m = ipsec6_splithdr(m); if (!m) { - V_ipsec6stat.ips_out_nomem++; + IPSEC6STAT_INC(ips_out_nomem); error = ENOMEM; goto bad; } @@ -864,7 +864,7 @@ ipsec6_output_tunnel(struct ipsec_output } if (state->ro->ro_rt == NULL) { IP6STAT_INC(ip6s_noroute); - V_ipsec6stat.ips_out_noroute++; + IPSEC6STAT_INC(ips_out_noroute); error = EHOSTUNREACH; goto bad; } @@ -876,7 +876,7 @@ ipsec6_output_tunnel(struct ipsec_output m = ipsec6_splithdr(m); if (!m) { - V_ipsec6stat.ips_out_nomem++; + IPSEC6STAT_INC(ips_out_nomem); error = ENOMEM; goto bad; } From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 11:44:19 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7ED1B27E; Thu, 20 Jun 2013 11:44:19 +0000 (UTC) (envelope-from ae@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 60D141EE4; Thu, 20 Jun 2013 11:44:19 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5KBiJLo096261; Thu, 20 Jun 2013 11:44:19 GMT (envelope-from ae@svn.freebsd.org) Received: (from ae@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KBiH1h096244; Thu, 20 Jun 2013 11:44:17 GMT (envelope-from ae@svn.freebsd.org) Message-Id: <201306201144.r5KBiH1h096244@svn.freebsd.org> From: "Andrey V. Elsukov" Date: Thu, 20 Jun 2013 11:44:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252028 - head/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-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 11:44:19 -0000 Author: ae Date: Thu Jun 20 11:44:16 2013 New Revision: 252028 URL: http://svnweb.freebsd.org/changeset/base/252028 Log: Use corresponding macros to update statistics for AH, ESP, IPIP, IPCOMP, PFKEY. MFC after: 2 weeks Modified: head/sys/netipsec/ah_var.h head/sys/netipsec/esp_var.h head/sys/netipsec/ipcomp_var.h head/sys/netipsec/ipip_var.h head/sys/netipsec/ipsec_input.c head/sys/netipsec/ipsec_output.c head/sys/netipsec/key.c head/sys/netipsec/keysock.c head/sys/netipsec/keysock.h head/sys/netipsec/xform_ah.c head/sys/netipsec/xform_esp.c head/sys/netipsec/xform_ipcomp.c head/sys/netipsec/xform_ipip.c Modified: head/sys/netipsec/ah_var.h ============================================================================== --- head/sys/netipsec/ah_var.h Thu Jun 20 11:24:38 2013 (r252027) +++ head/sys/netipsec/ah_var.h Thu Jun 20 11:44:16 2013 (r252028) @@ -75,6 +75,8 @@ VNET_DECLARE(int, ah_enable); VNET_DECLARE(int, ah_cleartos); VNET_DECLARE(struct ahstat, ahstat); +#define AHSTAT_ADD(name, val) V_ahstat.name += (val) +#define AHSTAT_INC(name) AHSTAT_ADD(name, 1) #define V_ah_enable VNET(ah_enable) #define V_ah_cleartos VNET(ah_cleartos) #define V_ahstat VNET(ahstat) Modified: head/sys/netipsec/esp_var.h ============================================================================== --- head/sys/netipsec/esp_var.h Thu Jun 20 11:24:38 2013 (r252027) +++ head/sys/netipsec/esp_var.h Thu Jun 20 11:44:16 2013 (r252028) @@ -75,6 +75,8 @@ struct espstat { VNET_DECLARE(int, esp_enable); VNET_DECLARE(struct espstat, espstat); +#define ESPSTAT_ADD(name, val) V_espstat.name += (val) +#define ESPSTAT_INC(name) ESPSTAT_ADD(name, 1) #define V_esp_enable VNET(esp_enable) #define V_espstat VNET(espstat) #endif /* _KERNEL */ Modified: head/sys/netipsec/ipcomp_var.h ============================================================================== --- head/sys/netipsec/ipcomp_var.h Thu Jun 20 11:24:38 2013 (r252027) +++ head/sys/netipsec/ipcomp_var.h Thu Jun 20 11:44:16 2013 (r252028) @@ -68,6 +68,8 @@ struct ipcompstat { VNET_DECLARE(int, ipcomp_enable); VNET_DECLARE(struct ipcompstat, ipcompstat); +#define IPCOMPSTAT_ADD(name, val) V_ipcompstat.name += (val) +#define IPCOMPSTAT_INC(name) IPCOMPSTAT_ADD(name, 1) #define V_ipcomp_enable VNET(ipcomp_enable) #define V_ipcompstat VNET(ipcompstat) #endif /* _KERNEL */ Modified: head/sys/netipsec/ipip_var.h ============================================================================== --- head/sys/netipsec/ipip_var.h Thu Jun 20 11:24:38 2013 (r252027) +++ head/sys/netipsec/ipip_var.h Thu Jun 20 11:44:16 2013 (r252028) @@ -62,6 +62,8 @@ struct ipipstat VNET_DECLARE(int, ipip_allow); VNET_DECLARE(struct ipipstat, ipipstat); +#define IPIPSTAT_ADD(name, val) V_ipipstat.name += (val) +#define IPIPSTAT_INC(name) IPIPSTAT_ADD(name, 1) #define V_ipip_allow VNET(ipip_allow) #define V_ipipstat VNET(ipipstat) #endif /* _KERNEL */ Modified: head/sys/netipsec/ipsec_input.c ============================================================================== --- head/sys/netipsec/ipsec_input.c Thu Jun 20 11:24:38 2013 (r252027) +++ head/sys/netipsec/ipsec_input.c Thu Jun 20 11:44:16 2013 (r252028) @@ -99,8 +99,14 @@ #endif -#define IPSEC_ISTAT(p,x,y,z) ((p) == IPPROTO_ESP ? (x)++ : \ - (p) == IPPROTO_AH ? (y)++ : (z)++) +#define IPSEC_ISTAT(proto, name) do { \ + if ((proto) == IPPROTO_ESP) \ + ESPSTAT_INC(esps_##name); \ + else if ((proto) == IPPROTO_AH) \ + AHSTAT_INC(ahs_##name); \ + else \ + IPCOMPSTAT_INC(ipcomps_##name); \ +} while (0) #ifdef INET static void ipsec4_common_ctlinput(int, struct sockaddr *, void *, int); @@ -125,8 +131,7 @@ ipsec_common_input(struct mbuf *m, int s #endif #endif - IPSEC_ISTAT(sproto, V_espstat.esps_input, V_ahstat.ahs_input, - V_ipcompstat.ipcomps_input); + IPSEC_ISTAT(sproto, input); IPSEC_ASSERT(m != NULL, ("null packet")); @@ -138,15 +143,13 @@ ipsec_common_input(struct mbuf *m, int s (sproto == IPPROTO_AH && !V_ah_enable) || (sproto == IPPROTO_IPCOMP && !V_ipcomp_enable)) { m_freem(m); - IPSEC_ISTAT(sproto, V_espstat.esps_pdrops, V_ahstat.ahs_pdrops, - V_ipcompstat.ipcomps_pdrops); + IPSEC_ISTAT(sproto, pdrops); return EOPNOTSUPP; } if (m->m_pkthdr.len - skip < 2 * sizeof (u_int32_t)) { m_freem(m); - IPSEC_ISTAT(sproto, V_espstat.esps_hdrops, V_ahstat.ahs_hdrops, - V_ipcompstat.ipcomps_hdrops); + IPSEC_ISTAT(sproto, hdrops); DPRINTF(("%s: packet too small\n", __func__)); return EINVAL; } @@ -197,8 +200,7 @@ ipsec_common_input(struct mbuf *m, int s default: DPRINTF(("%s: unsupported protocol family %u\n", __func__, af)); m_freem(m); - IPSEC_ISTAT(sproto, V_espstat.esps_nopf, V_ahstat.ahs_nopf, - V_ipcompstat.ipcomps_nopf); + IPSEC_ISTAT(sproto, nopf); return EPFNOSUPPORT; } @@ -208,8 +210,7 @@ ipsec_common_input(struct mbuf *m, int s DPRINTF(("%s: no key association found for SA %s/%08lx/%u\n", __func__, ipsec_address(&dst_address), (u_long) ntohl(spi), sproto)); - IPSEC_ISTAT(sproto, V_espstat.esps_notdb, V_ahstat.ahs_notdb, - V_ipcompstat.ipcomps_notdb); + IPSEC_ISTAT(sproto, notdb); m_freem(m); return ENOENT; } @@ -218,8 +219,7 @@ ipsec_common_input(struct mbuf *m, int s DPRINTF(("%s: attempted to use uninitialized SA %s/%08lx/%u\n", __func__, ipsec_address(&dst_address), (u_long) ntohl(spi), sproto)); - IPSEC_ISTAT(sproto, V_espstat.esps_noxform, V_ahstat.ahs_noxform, - V_ipcompstat.ipcomps_noxform); + IPSEC_ISTAT(sproto, noxform); KEY_FREESAV(&sav); m_freem(m); return ENXIO; @@ -321,8 +321,7 @@ ipsec4_common_input_cb(struct mbuf *m, s /* Sanity check */ if (m == NULL) { DPRINTF(("%s: null mbuf", __func__)); - IPSEC_ISTAT(sproto, V_espstat.esps_badkcr, V_ahstat.ahs_badkcr, - V_ipcompstat.ipcomps_badkcr); + IPSEC_ISTAT(sproto, badkcr); KEY_FREESAV(&sav); return EINVAL; } @@ -336,8 +335,7 @@ ipsec4_common_input_cb(struct mbuf *m, s DPRINTF(("%s: processing failed for SA %s/%08lx\n", __func__, ipsec_address(&sav->sah->saidx.dst), (u_long) ntohl(sav->spi))); - IPSEC_ISTAT(sproto, V_espstat.esps_hdrops, V_ahstat.ahs_hdrops, - V_ipcompstat.ipcomps_hdrops); + IPSEC_ISTAT(sproto, hdrops); error = ENOBUFS; goto bad; } @@ -357,9 +355,7 @@ ipsec4_common_input_cb(struct mbuf *m, s struct ip ipn; if (m->m_pkthdr.len - skip < sizeof(struct ip)) { - IPSEC_ISTAT(sproto, V_espstat.esps_hdrops, - V_ahstat.ahs_hdrops, - V_ipcompstat.ipcomps_hdrops); + IPSEC_ISTAT(sproto, hdrops); error = EINVAL; goto bad; } @@ -388,9 +384,7 @@ ipsec4_common_input_cb(struct mbuf *m, s ipsp_address(saidx->dst), (u_long) ntohl(sav->spi))); - IPSEC_ISTAT(sproto, V_espstat.esps_pdrops, - V_ahstat.ahs_pdrops, - V_ipcompstat.ipcomps_pdrops); + IPSEC_ISTAT(sproto, pdrops); error = EACCES; goto bad; } @@ -401,9 +395,7 @@ ipsec4_common_input_cb(struct mbuf *m, s struct ip6_hdr ip6n; if (m->m_pkthdr.len - skip < sizeof(struct ip6_hdr)) { - IPSEC_ISTAT(sproto, V_espstat.esps_hdrops, - V_ahstat.ahs_hdrops, - V_ipcompstat.ipcomps_hdrops); + IPSEC_ISTAT(sproto, hdrops); error = EINVAL; goto bad; } @@ -430,9 +422,7 @@ ipsec4_common_input_cb(struct mbuf *m, s ipsec_address(&saidx->dst), (u_long) ntohl(sav->spi))); - IPSEC_ISTAT(sproto, V_espstat.esps_pdrops, - V_ahstat.ahs_pdrops, - V_ipcompstat.ipcomps_pdrops); + IPSEC_ISTAT(sproto, pdrops); error = EACCES; goto bad; } @@ -453,8 +443,7 @@ ipsec4_common_input_cb(struct mbuf *m, s sizeof(struct tdb_ident), M_NOWAIT); if (mtag == NULL) { DPRINTF(("%s: failed to get tag\n", __func__)); - IPSEC_ISTAT(sproto, V_espstat.esps_hdrops, - V_ahstat.ahs_hdrops, V_ipcompstat.ipcomps_hdrops); + IPSEC_ISTAT(sproto, hdrops); error = ENOMEM; goto bad; } @@ -494,9 +483,7 @@ ipsec4_common_input_cb(struct mbuf *m, s * Re-dispatch via software interrupt. */ if ((error = netisr_queue_src(NETISR_IP, (uintptr_t)sav->spi, m))) { - IPSEC_ISTAT(sproto, V_espstat.esps_qfull, V_ahstat.ahs_qfull, - V_ipcompstat.ipcomps_qfull); - + IPSEC_ISTAT(sproto, qfull); DPRINTF(("%s: queue full; proto %u packet dropped\n", __func__, sproto)); return error; @@ -548,9 +535,7 @@ ipsec6_common_input(struct mbuf **mp, in if (protoff + l != *offp) { DPRINTF(("%s: bad packet header chain, protoff %u, " "l %u, off %u\n", __func__, protoff, l, *offp)); - IPSEC_ISTAT(proto, V_espstat.esps_hdrops, - V_ahstat.ahs_hdrops, - V_ipcompstat.ipcomps_hdrops); + IPSEC_ISTAT(proto, hdrops); m_freem(*mp); *mp = NULL; return IPPROTO_DONE; @@ -595,8 +580,7 @@ ipsec6_common_input_cb(struct mbuf *m, s /* Sanity check */ if (m == NULL) { DPRINTF(("%s: null mbuf", __func__)); - IPSEC_ISTAT(sproto, V_espstat.esps_badkcr, V_ahstat.ahs_badkcr, - V_ipcompstat.ipcomps_badkcr); + IPSEC_ISTAT(sproto, badkcr); error = EINVAL; goto bad; } @@ -609,8 +593,7 @@ ipsec6_common_input_cb(struct mbuf *m, s __func__, ipsec_address(&sav->sah->saidx.dst), (u_long) ntohl(sav->spi))); - IPSEC_ISTAT(sproto, V_espstat.esps_hdrops, V_ahstat.ahs_hdrops, - V_ipcompstat.ipcomps_hdrops); + IPSEC_ISTAT(sproto, hdrops); error = EACCES; goto bad; } @@ -628,9 +611,7 @@ ipsec6_common_input_cb(struct mbuf *m, s struct ip ipn; if (m->m_pkthdr.len - skip < sizeof(struct ip)) { - IPSEC_ISTAT(sproto, V_espstat.esps_hdrops, - V_ahstat.ahs_hdrops, - V_ipcompstat.ipcomps_hdrops); + IPSEC_ISTAT(sproto, hdrops); error = EINVAL; goto bad; } @@ -655,8 +636,7 @@ ipsec6_common_input_cb(struct mbuf *m, s ipsec_address(&saidx->dst), (u_long) ntohl(sav->spi))); - IPSEC_ISTATsproto, (V_espstat.esps_pdrops, - V_ahstat.ahs_pdrops, V_ipcompstat.ipcomps_pdrops); + IPSEC_ISTAT(sproto, pdrops); error = EACCES; goto bad; } @@ -668,9 +648,7 @@ ipsec6_common_input_cb(struct mbuf *m, s struct ip6_hdr ip6n; if (m->m_pkthdr.len - skip < sizeof(struct ip6_hdr)) { - IPSEC_ISTAT(sproto, V_espstat.esps_hdrops, - V_ahstat.ahs_hdrops, - V_ipcompstat.ipcomps_hdrops); + IPSEC_ISTAT(sproto, hdrops); error = EINVAL; goto bad; } @@ -697,8 +675,7 @@ ipsec6_common_input_cb(struct mbuf *m, s ipsec_address(&saidx->dst), (u_long) ntohl(sav->spi))); - IPSEC_ISTAT(sproto, V_espstat.esps_pdrops, - V_ahstat.ahs_pdrops, V_ipcompstat.ipcomps_pdrops); + IPSEC_ISTAT(sproto, pdrops); error = EACCES; goto bad; } @@ -718,8 +695,7 @@ ipsec6_common_input_cb(struct mbuf *m, s sizeof(struct tdb_ident), M_NOWAIT); if (mtag == NULL) { DPRINTF(("%s: failed to get tag\n", __func__)); - IPSEC_ISTAT(sproto, V_espstat.esps_hdrops, - V_ahstat.ahs_hdrops, V_ipcompstat.ipcomps_hdrops); + IPSEC_ISTAT(sproto, hdrops); error = ENOMEM; goto bad; } Modified: head/sys/netipsec/ipsec_output.c ============================================================================== --- head/sys/netipsec/ipsec_output.c Thu Jun 20 11:24:38 2013 (r252027) +++ head/sys/netipsec/ipsec_output.c Thu Jun 20 11:44:16 2013 (r252028) @@ -276,8 +276,14 @@ ipsec_nextisr( int *error ) { -#define IPSEC_OSTAT(x,y,z) (isr->saidx.proto == IPPROTO_ESP ? (x)++ : \ - isr->saidx.proto == IPPROTO_AH ? (y)++ : (z)++) +#define IPSEC_OSTAT(name) do { \ + if (isr->saidx.proto == IPPROTO_ESP) \ + ESPSTAT_INC(esps_##name); \ + else if (isr->saidx.proto == IPPROTO_AH)\ + AHSTAT_INC(ahs_##name); \ + else \ + IPCOMPSTAT_INC(ipcomps_##name); \ +} while (0) struct secasvar *sav; IPSECREQUEST_LOCK_ASSERT(isr); @@ -385,8 +391,7 @@ again: (isr->saidx.proto == IPPROTO_IPCOMP && !V_ipcomp_enable)) { DPRINTF(("%s: IPsec outbound packet dropped due" " to policy (check your sysctls)\n", __func__)); - IPSEC_OSTAT(V_espstat.esps_pdrops, V_ahstat.ahs_pdrops, - V_ipcompstat.ipcomps_pdrops); + IPSEC_OSTAT(pdrops); *error = EHOSTUNREACH; goto bad; } @@ -397,8 +402,7 @@ again: */ if (sav->tdb_xform == NULL) { DPRINTF(("%s: no transform for SA\n", __func__)); - IPSEC_OSTAT(V_espstat.esps_noxform, V_ahstat.ahs_noxform, - V_ipcompstat.ipcomps_noxform); + IPSEC_OSTAT(noxform); *error = EHOSTUNREACH; goto bad; } Modified: head/sys/netipsec/key.c ============================================================================== --- head/sys/netipsec/key.c Thu Jun 20 11:24:38 2013 (r252027) +++ head/sys/netipsec/key.c Thu Jun 20 11:44:16 2013 (r252028) @@ -7316,7 +7316,7 @@ key_parse(m, so) if ((m->m_flags & M_PKTHDR) == 0 || m->m_pkthdr.len != m->m_pkthdr.len) { ipseclog((LOG_DEBUG, "%s: invalid message length.\n",__func__)); - V_pfkeystat.out_invlen++; + PFKEYSTAT_INC(out_invlen); error = EINVAL; goto senderror; } @@ -7324,7 +7324,7 @@ key_parse(m, so) if (msg->sadb_msg_version != PF_KEY_V2) { ipseclog((LOG_DEBUG, "%s: PF_KEY version %u is mismatched.\n", __func__, msg->sadb_msg_version)); - V_pfkeystat.out_invver++; + PFKEYSTAT_INC(out_invver); error = EINVAL; goto senderror; } @@ -7332,7 +7332,7 @@ key_parse(m, so) if (msg->sadb_msg_type > SADB_MAX) { ipseclog((LOG_DEBUG, "%s: invalid type %u is passed.\n", __func__, msg->sadb_msg_type)); - V_pfkeystat.out_invmsgtype++; + PFKEYSTAT_INC(out_invmsgtype); error = EINVAL; goto senderror; } @@ -7385,7 +7385,7 @@ key_parse(m, so) ipseclog((LOG_DEBUG, "%s: must specify satype " "when msg type=%u.\n", __func__, msg->sadb_msg_type)); - V_pfkeystat.out_invsatype++; + PFKEYSTAT_INC(out_invsatype); error = EINVAL; goto senderror; } @@ -7405,7 +7405,7 @@ key_parse(m, so) case SADB_X_SPDDELETE2: ipseclog((LOG_DEBUG, "%s: illegal satype=%u\n", __func__, msg->sadb_msg_type)); - V_pfkeystat.out_invsatype++; + PFKEYSTAT_INC(out_invsatype); error = EINVAL; goto senderror; } @@ -7416,7 +7416,7 @@ key_parse(m, so) case SADB_SATYPE_MIP: ipseclog((LOG_DEBUG, "%s: type %u isn't supported.\n", __func__, msg->sadb_msg_satype)); - V_pfkeystat.out_invsatype++; + PFKEYSTAT_INC(out_invsatype); error = EOPNOTSUPP; goto senderror; case 1: /* XXX: What does it do? */ @@ -7426,7 +7426,7 @@ key_parse(m, so) default: ipseclog((LOG_DEBUG, "%s: invalid type %u is passed.\n", __func__, msg->sadb_msg_satype)); - V_pfkeystat.out_invsatype++; + PFKEYSTAT_INC(out_invsatype); error = EINVAL; goto senderror; } @@ -7444,7 +7444,7 @@ key_parse(m, so) if (src0->sadb_address_proto != dst0->sadb_address_proto) { ipseclog((LOG_DEBUG, "%s: upper layer protocol " "mismatched.\n", __func__)); - V_pfkeystat.out_invaddr++; + PFKEYSTAT_INC(out_invaddr); error = EINVAL; goto senderror; } @@ -7454,7 +7454,7 @@ key_parse(m, so) PFKEY_ADDR_SADDR(dst0)->sa_family) { ipseclog((LOG_DEBUG, "%s: address family mismatched.\n", __func__)); - V_pfkeystat.out_invaddr++; + PFKEYSTAT_INC(out_invaddr); error = EINVAL; goto senderror; } @@ -7462,7 +7462,7 @@ key_parse(m, so) PFKEY_ADDR_SADDR(dst0)->sa_len) { ipseclog((LOG_DEBUG, "%s: address struct size " "mismatched.\n", __func__)); - V_pfkeystat.out_invaddr++; + PFKEYSTAT_INC(out_invaddr); error = EINVAL; goto senderror; } @@ -7471,7 +7471,7 @@ key_parse(m, so) case AF_INET: if (PFKEY_ADDR_SADDR(src0)->sa_len != sizeof(struct sockaddr_in)) { - V_pfkeystat.out_invaddr++; + PFKEYSTAT_INC(out_invaddr); error = EINVAL; goto senderror; } @@ -7479,7 +7479,7 @@ key_parse(m, so) case AF_INET6: if (PFKEY_ADDR_SADDR(src0)->sa_len != sizeof(struct sockaddr_in6)) { - V_pfkeystat.out_invaddr++; + PFKEYSTAT_INC(out_invaddr); error = EINVAL; goto senderror; } @@ -7487,7 +7487,7 @@ key_parse(m, so) default: ipseclog((LOG_DEBUG, "%s: unsupported address family\n", __func__)); - V_pfkeystat.out_invaddr++; + PFKEYSTAT_INC(out_invaddr); error = EAFNOSUPPORT; goto senderror; } @@ -7509,7 +7509,7 @@ key_parse(m, so) dst0->sadb_address_prefixlen > plen) { ipseclog((LOG_DEBUG, "%s: illegal prefixlen.\n", __func__)); - V_pfkeystat.out_invaddr++; + PFKEYSTAT_INC(out_invaddr); error = EINVAL; goto senderror; } @@ -7522,7 +7522,7 @@ key_parse(m, so) if (msg->sadb_msg_type >= sizeof(key_typesw)/sizeof(key_typesw[0]) || key_typesw[msg->sadb_msg_type] == NULL) { - V_pfkeystat.out_invmsgtype++; + PFKEYSTAT_INC(out_invmsgtype); error = EINVAL; goto senderror; } @@ -7624,7 +7624,7 @@ key_align(m, mhp) ipseclog((LOG_DEBUG, "%s: duplicate ext_type " "%u\n", __func__, ext->sadb_ext_type)); m_freem(m); - V_pfkeystat.out_dupext++; + PFKEYSTAT_INC(out_dupext); return EINVAL; } break; @@ -7632,7 +7632,7 @@ key_align(m, mhp) ipseclog((LOG_DEBUG, "%s: invalid ext_type %u\n", __func__, ext->sadb_ext_type)); m_freem(m); - V_pfkeystat.out_invexttype++; + PFKEYSTAT_INC(out_invexttype); return EINVAL; } @@ -7640,7 +7640,7 @@ key_align(m, mhp) if (key_validate_ext(ext, extlen)) { m_freem(m); - V_pfkeystat.out_invlen++; + PFKEYSTAT_INC(out_invlen); return EINVAL; } @@ -7658,7 +7658,7 @@ key_align(m, mhp) if (off != end) { m_freem(m); - V_pfkeystat.out_invlen++; + PFKEYSTAT_INC(out_invlen); return EINVAL; } Modified: head/sys/netipsec/keysock.c ============================================================================== --- head/sys/netipsec/keysock.c Thu Jun 20 11:24:38 2013 (r252027) +++ head/sys/netipsec/keysock.c Thu Jun 20 11:44:16 2013 (r252028) @@ -91,19 +91,19 @@ key_output(struct mbuf *m, struct socket if (m == 0) panic("%s: NULL pointer was passed.\n", __func__); - V_pfkeystat.out_total++; - V_pfkeystat.out_bytes += m->m_pkthdr.len; + PFKEYSTAT_INC(out_total); + PFKEYSTAT_ADD(out_bytes, m->m_pkthdr.len); len = m->m_pkthdr.len; if (len < sizeof(struct sadb_msg)) { - V_pfkeystat.out_tooshort++; + PFKEYSTAT_INC(out_tooshort); error = EINVAL; goto end; } if (m->m_len < sizeof(struct sadb_msg)) { if ((m = m_pullup(m, sizeof(struct sadb_msg))) == 0) { - V_pfkeystat.out_nomem++; + PFKEYSTAT_INC(out_nomem); error = ENOBUFS; goto end; } @@ -114,9 +114,9 @@ key_output(struct mbuf *m, struct socket KEYDEBUG(KEYDEBUG_KEY_DUMP, kdebug_mbuf(m)); msg = mtod(m, struct sadb_msg *); - V_pfkeystat.out_msgtype[msg->sadb_msg_type]++; + PFKEYSTAT_INC(out_msgtype[msg->sadb_msg_type]); if (len != PFKEY_UNUNIT64(msg->sadb_msg_len)) { - V_pfkeystat.out_invlen++; + PFKEYSTAT_INC(out_invlen); error = EINVAL; goto end; } @@ -147,7 +147,7 @@ key_sendup0(rp, m, promisc) if (m && m->m_len < sizeof(struct sadb_msg)) m = m_pullup(m, sizeof(struct sadb_msg)); if (!m) { - V_pfkeystat.in_nomem++; + PFKEYSTAT_INC(in_nomem); m_freem(m); return ENOBUFS; } @@ -160,12 +160,12 @@ key_sendup0(rp, m, promisc) pmsg->sadb_msg_len = PFKEY_UNIT64(m->m_pkthdr.len); /* pid and seq? */ - V_pfkeystat.in_msgtype[pmsg->sadb_msg_type]++; + PFKEYSTAT_INC(in_msgtype[pmsg->sadb_msg_type]); } if (!sbappendaddr(&rp->rcb_socket->so_rcv, (struct sockaddr *)&key_src, m, NULL)) { - V_pfkeystat.in_nomem++; + PFKEYSTAT_INC(in_nomem); m_freem(m); error = ENOBUFS; } else @@ -197,9 +197,9 @@ key_sendup(so, msg, len, target) * we increment statistics here, just in case we have ENOBUFS * in this function. */ - V_pfkeystat.in_total++; - V_pfkeystat.in_bytes += len; - V_pfkeystat.in_msgtype[msg->sadb_msg_type]++; + PFKEYSTAT_INC(in_total); + PFKEYSTAT_ADD(in_bytes, len); + PFKEYSTAT_INC(in_msgtype[msg->sadb_msg_type]); /* * Get mbuf chain whenever possible (not clusters), @@ -216,14 +216,14 @@ key_sendup(so, msg, len, target) if (tlen == len) { MGETHDR(n, M_NOWAIT, MT_DATA); if (n == NULL) { - V_pfkeystat.in_nomem++; + PFKEYSTAT_INC(in_nomem); return ENOBUFS; } n->m_len = MHLEN; } else { MGET(n, M_NOWAIT, MT_DATA); if (n == NULL) { - V_pfkeystat.in_nomem++; + PFKEYSTAT_INC(in_nomem); return ENOBUFS; } n->m_len = MLEN; @@ -233,7 +233,7 @@ key_sendup(so, msg, len, target) if ((n->m_flags & M_EXT) == 0) { m_free(n); m_freem(m); - V_pfkeystat.in_nomem++; + PFKEYSTAT_INC(in_nomem); return ENOBUFS; } n->m_len = MCLBYTES; @@ -256,9 +256,9 @@ key_sendup(so, msg, len, target) m_copyback(m, 0, len, (caddr_t)msg); /* avoid duplicated statistics */ - V_pfkeystat.in_total--; - V_pfkeystat.in_bytes -= len; - V_pfkeystat.in_msgtype[msg->sadb_msg_type]--; + PFKEYSTAT_ADD(in_total, -1); + PFKEYSTAT_ADD(in_bytes, -len); + PFKEYSTAT_ADD(in_msgtype[msg->sadb_msg_type], -1); return key_sendup_mbuf(so, m, target); } @@ -281,19 +281,19 @@ key_sendup_mbuf(so, m, target) if (so == NULL && target == KEY_SENDUP_ONE) panic("%s: NULL pointer was passed.\n", __func__); - V_pfkeystat.in_total++; - V_pfkeystat.in_bytes += m->m_pkthdr.len; + PFKEYSTAT_INC(in_total); + PFKEYSTAT_ADD(in_bytes, m->m_pkthdr.len); if (m->m_len < sizeof(struct sadb_msg)) { m = m_pullup(m, sizeof(struct sadb_msg)); if (m == NULL) { - V_pfkeystat.in_nomem++; + PFKEYSTAT_INC(in_nomem); return ENOBUFS; } } if (m->m_len >= sizeof(struct sadb_msg)) { struct sadb_msg *msg; msg = mtod(m, struct sadb_msg *); - V_pfkeystat.in_msgtype[msg->sadb_msg_type]++; + PFKEYSTAT_INC(in_msgtype[msg->sadb_msg_type]); } mtx_lock(&rawcb_mtx); LIST_FOREACH(rp, &V_rawcb_list, list) @@ -338,14 +338,14 @@ key_sendup_mbuf(so, m, target) sendup++; break; } - V_pfkeystat.in_msgtarget[target]++; + PFKEYSTAT_INC(in_msgtarget[target]); if (!sendup) continue; if ((n = m_copy(m, 0, (int)M_COPYALL)) == NULL) { m_freem(m); - V_pfkeystat.in_nomem++; + PFKEYSTAT_INC(in_nomem); mtx_unlock(&rawcb_mtx); return ENOBUFS; } Modified: head/sys/netipsec/keysock.h ============================================================================== --- head/sys/netipsec/keysock.h Thu Jun 20 11:24:38 2013 (r252027) +++ head/sys/netipsec/keysock.h Thu Jun 20 11:44:16 2013 (r252028) @@ -70,6 +70,8 @@ struct keycb { }; VNET_DECLARE(struct pfkeystat, pfkeystat); +#define PFKEYSTAT_ADD(name, val) V_pfkeystat.name += (val) +#define PFKEYSTAT_INC(name) PFKEYSTAT_ADD(name, 1) #define V_pfkeystat VNET(pfkeystat) extern int key_output(struct mbuf *m, struct socket *so); Modified: head/sys/netipsec/xform_ah.c ============================================================================== --- head/sys/netipsec/xform_ah.c Thu Jun 20 11:24:38 2013 (r252027) +++ head/sys/netipsec/xform_ah.c Thu Jun 20 11:44:16 2013 (r252028) @@ -583,14 +583,14 @@ ah_input(struct mbuf *m, struct secasvar IP6_EXTHDR_GET(ah, struct newah *, m, skip, rplen); if (ah == NULL) { DPRINTF(("ah_input: cannot pullup header\n")); - V_ahstat.ahs_hdrops++; /*XXX*/ + AHSTAT_INC(ahs_hdrops); /*XXX*/ m_freem(m); return ENOBUFS; } /* Check replay window, if applicable. */ if (sav->replay && !ipsec_chkreplay(ntohl(ah->ah_seq), sav)) { - V_ahstat.ahs_replay++; + AHSTAT_INC(ahs_replay); DPRINTF(("%s: packet replay failure: %s\n", __func__, ipsec_logsastr(sav))); m_freem(m); @@ -607,17 +607,17 @@ ah_input(struct mbuf *m, struct secasvar hl, (u_long) (authsize + rplen - sizeof (struct ah)), ipsec_address(&sav->sah->saidx.dst), (u_long) ntohl(sav->spi))); - V_ahstat.ahs_badauthl++; + AHSTAT_INC(ahs_badauthl); m_freem(m); return EACCES; } - V_ahstat.ahs_ibytes += m->m_pkthdr.len - skip - hl; + AHSTAT_ADD(ahs_ibytes, m->m_pkthdr.len - skip - hl); /* Get crypto descriptors. */ crp = crypto_getreq(1); if (crp == NULL) { DPRINTF(("%s: failed to acquire crypto descriptor\n",__func__)); - V_ahstat.ahs_crypto++; + AHSTAT_INC(ahs_crypto); m_freem(m); return ENOBUFS; } @@ -657,7 +657,7 @@ ah_input(struct mbuf *m, struct secasvar } if (tc == NULL) { DPRINTF(("%s: failed to allocate tdb_crypto\n", __func__)); - V_ahstat.ahs_crypto++; + AHSTAT_INC(ahs_crypto); crypto_freereq(crp); m_freem(m); return ENOBUFS; @@ -681,7 +681,7 @@ ah_input(struct mbuf *m, struct secasvar skip, ahx->type, 0); if (error != 0) { /* NB: mbuf is free'd by ah_massage_headers */ - V_ahstat.ahs_hdrops++; + AHSTAT_INC(ahs_hdrops); free(tc, M_XDATA); crypto_freereq(crp); return error; @@ -760,19 +760,19 @@ ah_input_cb(struct cryptop *crp) if (crp->crp_etype == EAGAIN) return (crypto_dispatch(crp)); - V_ahstat.ahs_noxform++; + AHSTAT_INC(ahs_noxform); DPRINTF(("%s: crypto error %d\n", __func__, crp->crp_etype)); error = crp->crp_etype; goto bad; } else { - V_ahstat.ahs_hist[sav->alg_auth]++; + AHSTAT_INC(ahs_hist[sav->alg_auth]); crypto_freereq(crp); /* No longer needed. */ crp = NULL; } /* Shouldn't happen... */ if (m == NULL) { - V_ahstat.ahs_crypto++; + AHSTAT_INC(ahs_crypto); DPRINTF(("%s: bogus returned buffer from crypto\n", __func__)); error = EINVAL; goto bad; @@ -798,7 +798,7 @@ ah_input_cb(struct cryptop *crp) "in SA %s/%08lx\n", __func__, ipsec_address(&saidx->dst), (u_long) ntohl(sav->spi))); - V_ahstat.ahs_badauth++; + AHSTAT_INC(ahs_badauth); error = EACCES; goto bad; } @@ -829,7 +829,7 @@ ah_input_cb(struct cryptop *crp) m_copydata(m, skip + offsetof(struct newah, ah_seq), sizeof (seq), (caddr_t) &seq); if (ipsec_updatereplay(ntohl(seq), sav)) { - V_ahstat.ahs_replay++; + AHSTAT_INC(ahs_replay); error = ENOBUFS; /*XXX as above*/ goto bad; } @@ -843,7 +843,7 @@ ah_input_cb(struct cryptop *crp) DPRINTF(("%s: mangled mbuf chain for SA %s/%08lx\n", __func__, ipsec_address(&saidx->dst), (u_long) ntohl(sav->spi))); - V_ahstat.ahs_hdrops++; + AHSTAT_INC(ahs_hdrops); goto bad; } @@ -904,7 +904,7 @@ ah_output( ahx = sav->tdb_authalgxform; IPSEC_ASSERT(ahx != NULL, ("null authentication xform")); - V_ahstat.ahs_output++; + AHSTAT_INC(ahs_output); /* Figure out header size. */ rplen = HDRSIZE(sav); @@ -927,7 +927,7 @@ ah_output( sav->sah->saidx.dst.sa.sa_family, ipsec_address(&sav->sah->saidx.dst), (u_long) ntohl(sav->spi))); - V_ahstat.ahs_nopf++; + AHSTAT_INC(ahs_nopf); error = EPFNOSUPPORT; goto bad; } @@ -938,20 +938,20 @@ ah_output( ipsec_address(&sav->sah->saidx.dst), (u_long) ntohl(sav->spi), rplen + authsize + m->m_pkthdr.len, maxpacketsize)); - V_ahstat.ahs_toobig++; + AHSTAT_INC(ahs_toobig); error = EMSGSIZE; goto bad; } /* Update the counters. */ - V_ahstat.ahs_obytes += m->m_pkthdr.len - skip; + AHSTAT_ADD(ahs_obytes, m->m_pkthdr.len - skip); m = m_unshare(m, M_NOWAIT); if (m == NULL) { DPRINTF(("%s: cannot clone mbuf chain, SA %s/%08lx\n", __func__, ipsec_address(&sav->sah->saidx.dst), (u_long) ntohl(sav->spi))); - V_ahstat.ahs_hdrops++; + AHSTAT_INC(ahs_hdrops); error = ENOBUFS; goto bad; } @@ -964,7 +964,7 @@ ah_output( rplen + authsize, ipsec_address(&sav->sah->saidx.dst), (u_long) ntohl(sav->spi))); - V_ahstat.ahs_hdrops++; /*XXX differs from openbsd */ + AHSTAT_INC(ahs_hdrops); /*XXX differs from openbsd */ error = ENOBUFS; goto bad; } @@ -992,7 +992,7 @@ ah_output( __func__, ipsec_address(&sav->sah->saidx.dst), (u_long) ntohl(sav->spi))); - V_ahstat.ahs_wrap++; + AHSTAT_INC(ahs_wrap); error = EINVAL; goto bad; } @@ -1009,7 +1009,7 @@ ah_output( if (crp == NULL) { DPRINTF(("%s: failed to acquire crypto descriptors\n", __func__)); - V_ahstat.ahs_crypto++; + AHSTAT_INC(ahs_crypto); error = ENOBUFS; goto bad; } @@ -1031,7 +1031,7 @@ ah_output( if (tc == NULL) { crypto_freereq(crp); DPRINTF(("%s: failed to allocate tdb_crypto\n", __func__)); - V_ahstat.ahs_crypto++; + AHSTAT_INC(ahs_crypto); error = ENOBUFS; goto bad; } @@ -1135,7 +1135,7 @@ ah_output_cb(struct cryptop *crp) sav = tc->tc_sav; /* With the isr lock released SA pointer can be updated. */ if (sav != isr->sav) { - V_ahstat.ahs_notdb++; + AHSTAT_INC(ahs_notdb); DPRINTF(("%s: SA expired while in crypto\n", __func__)); error = ENOBUFS; /*XXX*/ goto bad; @@ -1151,7 +1151,7 @@ ah_output_cb(struct cryptop *crp) return (crypto_dispatch(crp)); } - V_ahstat.ahs_noxform++; + AHSTAT_INC(ahs_noxform); DPRINTF(("%s: crypto error %d\n", __func__, crp->crp_etype)); error = crp->crp_etype; goto bad; @@ -1159,12 +1159,12 @@ ah_output_cb(struct cryptop *crp) /* Shouldn't happen... */ if (m == NULL) { - V_ahstat.ahs_crypto++; + AHSTAT_INC(ahs_crypto); DPRINTF(("%s: bogus returned buffer from crypto\n", __func__)); error = EINVAL; goto bad; } - V_ahstat.ahs_hist[sav->alg_auth]++; + AHSTAT_INC(ahs_hist[sav->alg_auth]); /* * Copy original headers (with the new protocol number) back Modified: head/sys/netipsec/xform_esp.c ============================================================================== --- head/sys/netipsec/xform_esp.c Thu Jun 20 11:24:38 2013 (r252027) +++ head/sys/netipsec/xform_esp.c Thu Jun 20 11:44:16 2013 (r252028) @@ -279,7 +279,7 @@ esp_input(struct mbuf *m, struct secasva if ( (skip&3) || (m->m_pkthdr.len&3) ){ DPRINTF(("%s: misaligned packet, skip %u pkt len %u", __func__, skip, m->m_pkthdr.len)); - V_espstat.esps_badilen++; + ESPSTAT_INC(esps_badilen); m_freem(m); return EINVAL; } @@ -325,7 +325,7 @@ esp_input(struct mbuf *m, struct secasva plen, espx->blocksize, ipsec_address(&sav->sah->saidx.dst), (u_long) ntohl(sav->spi))); - V_espstat.esps_badilen++; + ESPSTAT_INC(esps_badilen); m_freem(m); return EINVAL; } @@ -336,13 +336,13 @@ esp_input(struct mbuf *m, struct secasva if (esph && sav->replay && !ipsec_chkreplay(ntohl(esp->esp_seq), sav)) { DPRINTF(("%s: packet replay check for %s\n", __func__, ipsec_logsastr(sav))); /*XXX*/ - V_espstat.esps_replay++; + ESPSTAT_INC(esps_replay); m_freem(m); return ENOBUFS; /*XXX*/ } /* Update the counters */ - V_espstat.esps_ibytes += m->m_pkthdr.len - (skip + hlen + alen); + ESPSTAT_ADD(esps_ibytes, m->m_pkthdr.len - (skip + hlen + alen)); /* Find out if we've already done crypto */ for (mtag = m_tag_find(m, PACKET_TAG_IPSEC_IN_CRYPTO_DONE, NULL); @@ -361,7 +361,7 @@ esp_input(struct mbuf *m, struct secasva if (crp == NULL) { DPRINTF(("%s: failed to acquire crypto descriptors\n", __func__)); - V_espstat.esps_crypto++; + ESPSTAT_INC(esps_crypto); m_freem(m); return ENOBUFS; } @@ -376,7 +376,7 @@ esp_input(struct mbuf *m, struct secasva if (tc == NULL) { crypto_freereq(crp); DPRINTF(("%s: failed to allocate tdb_crypto\n", __func__)); - V_espstat.esps_crypto++; + ESPSTAT_INC(esps_crypto); m_freem(m); return ENOBUFS; } @@ -492,7 +492,7 @@ esp_input_cb(struct cryptop *crp) if (crp->crp_etype == EAGAIN) return (crypto_dispatch(crp)); - V_espstat.esps_noxform++; + ESPSTAT_INC(esps_noxform); DPRINTF(("%s: crypto error %d\n", __func__, crp->crp_etype)); error = crp->crp_etype; goto bad; @@ -500,12 +500,12 @@ esp_input_cb(struct cryptop *crp) /* Shouldn't happen... */ if (m == NULL) { - V_espstat.esps_crypto++; + ESPSTAT_INC(esps_crypto); DPRINTF(("%s: bogus returned buffer from crypto\n", __func__)); error = EINVAL; goto bad; } - V_espstat.esps_hist[sav->alg_enc]++; + ESPSTAT_INC(esps_hist[sav->alg_enc]); /* If authentication was performed, check now. */ if (esph != NULL) { @@ -524,7 +524,7 @@ esp_input_cb(struct cryptop *crp) * the verification for us. Otherwise we need to * check the authentication calculation. */ - V_ahstat.ahs_hist[sav->alg_auth]++; + AHSTAT_INC(ahs_hist[sav->alg_auth]); if (mtag == NULL) { /* Copy the authenticator from the packet */ m_copydata(m, m->m_pkthdr.len - alen, @@ -539,7 +539,7 @@ esp_input_cb(struct cryptop *crp) __func__, ipsec_address(&saidx->dst), (u_long) ntohl(sav->spi))); - V_espstat.esps_badauth++; + ESPSTAT_INC(esps_badauth); error = EACCES; goto bad; } @@ -569,7 +569,7 @@ esp_input_cb(struct cryptop *crp) if (ipsec_updatereplay(ntohl(seq), sav)) { DPRINTF(("%s: packet replay check for %s\n", __func__, ipsec_logsastr(sav))); - V_espstat.esps_replay++; + ESPSTAT_INC(esps_replay); error = ENOBUFS; goto bad; } @@ -584,7 +584,7 @@ esp_input_cb(struct cryptop *crp) /* Remove the ESP header and IV from the mbuf. */ error = m_striphdr(m, skip, hlen); if (error) { - V_espstat.esps_hdrops++; + ESPSTAT_INC(esps_hdrops); DPRINTF(("%s: bad mbuf chain, SA %s/%08lx\n", __func__, ipsec_address(&sav->sah->saidx.dst), (u_long) ntohl(sav->spi))); *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 13:09:59 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 9FCCF860; Thu, 20 Jun 2013 13:09:59 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from vps1.elischer.org (vps1.elischer.org [204.109.63.16]) by mx1.freebsd.org (Postfix) with ESMTP id 6DBDD17BD; Thu, 20 Jun 2013 13:09:59 +0000 (UTC) Received: from Julian-MBP3.local (ppp121-45-226-51.lns20.per1.internode.on.net [121.45.226.51]) (authenticated bits=0) by vps1.elischer.org (8.14.5/8.14.5) with ESMTP id r5KD9mf1027022 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Thu, 20 Jun 2013 06:09:54 -0700 (PDT) (envelope-from julian@freebsd.org) Message-ID: <51C2FF16.5080005@freebsd.org> Date: Thu, 20 Jun 2013 21:09:42 +0800 From: Julian Elischer User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130509 Thunderbird/17.0.6 MIME-Version: 1.0 To: David Chisnall Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... References: <201306180253.r5I2rj45053959@svn.freebsd.org> <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> <51C1C7BD.9060201@FreeBSD.org> <201306191113.29703.jhb@freebsd.org> <8D00BE2B-FD8E-4E7B-B818-1C4B7F6BB6A5@bsdimp.com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: src-committers@freebsd.org, Andre Oppermann , Peter Wemm , John Baldwin , svn-src-all@freebsd.org, svn-src-head@freebsd.org, Tijl Coosemans , Warner Losh X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 13:09:59 -0000 On 6/20/13 4:40 PM, David Chisnall wrote: > On 20 Jun 2013, at 00:10, Warner Losh wrote: > >>> - FreeBSD developers, who are probably okay with installing a port, but would prefer a version that didn't depend on kitchen/sink? >>> >>> - Users, who wish to be able to update the source tree and then either build world, or build some optional parts that are not part of the default install? >>> >>> - Some other category of svn consumer? >>> >>> I think having a definitive statement as to the intention of svnlite would help frame the discussion in a more productive format. >> How do I roll back to last week with FreeBSD-update? > Which of the classes of user that I outlined do you think wants to be able to do that? As a FreeBSD user, I never felt the desire to do that, but maybe I was unusual. As a FreeBSD developer, I don't mind installing the svn port to be able to do it (although I'd prefer a more lightweight port). I would expect the same to apply to the sort of engaged user who is willing to bisect to track down a bug. bug reporter: I have this new bug... developer: Can you try rolling back to xyzzy bug reporter: Yeah that fixes it.. developer: Ok.. patch will follow.... > > David > From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 13:34:05 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 9F26B620; Thu, 20 Jun 2013 13:34:05 +0000 (UTC) (envelope-from julian@freebsd.org) Received: from vps1.elischer.org (vps1.elischer.org [204.109.63.16]) by mx1.freebsd.org (Postfix) with ESMTP id 6AF4A199A; Thu, 20 Jun 2013 13:34:05 +0000 (UTC) Received: from Julian-MBP3.local (ppp121-45-226-51.lns20.per1.internode.on.net [121.45.226.51]) (authenticated bits=0) by vps1.elischer.org (8.14.5/8.14.5) with ESMTP id r5KDXvhk027137 (version=TLSv1/SSLv3 cipher=DHE-RSA-CAMELLIA256-SHA bits=256 verify=NO); Thu, 20 Jun 2013 06:34:00 -0700 (PDT) (envelope-from julian@freebsd.org) Message-ID: <51C304C0.5060208@freebsd.org> Date: Thu, 20 Jun 2013 21:33:52 +0800 From: Julian Elischer User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:17.0) Gecko/20130509 Thunderbird/17.0.6 MIME-Version: 1.0 To: David Chisnall Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... References: <201306180253.r5I2rj45053959@svn.freebsd.org> <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> <51C1C7BD.9060201@FreeBSD.org> <201306191113.29703.jhb@freebsd.org> <8D00BE2B-FD8E-4E7B-B818-1C4B7F6BB6A5@bsdimp.com> <51C2FF16.5080005@freebsd.org> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: src-committers@freebsd.org, Andre Oppermann , Peter Wemm , John Baldwin , svn-src-all@freebsd.org, svn-src-head@freebsd.org, Tijl Coosemans , Warner Losh X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 13:34:05 -0000 On 6/20/13 9:13 PM, David Chisnall wrote: > On 20 Jun 2013, at 14:09, Julian Elischer wrote: > >>> Which of the classes of user that I outlined do you think wants to be able to do that? As a FreeBSD user, I never felt the desire to do that, but maybe I was unusual. As a FreeBSD developer, I don't mind installing the svn port to be able to do it (although I'd prefer a more lightweight port). I would expect the same to apply to the sort of engaged user who is willing to bisect to track down a bug. >> bug reporter: I have this new bug... >> developer: Can you try rolling back to xyzzy >> bug reporter: Yeah that fixes it.. >> developer: Ok.. patch will follow.... > And do you think that the sort of user who is sufficiently engaged with the project to do this is the sort of user who would not be willing to do so if it meant installing the subversion port? If so, then there is a clear case for svnlite. I think that it lowers the barrier.. once you start bringing ports into the picture you start running the risk of port revision hell. > > David > From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 14:30:04 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id C281CE3C; Thu, 20 Jun 2013 14:30:04 +0000 (UTC) (envelope-from kib@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id B51C11CDC; Thu, 20 Jun 2013 14:30:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5KEU4ff049116; Thu, 20 Jun 2013 14:30:04 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KEU4G5049115; Thu, 20 Jun 2013 14:30:04 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201306201430.r5KEU4G5049115@svn.freebsd.org> From: Konstantin Belousov Date: Thu, 20 Jun 2013 14:30:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252032 - head/sys/amd64/include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 14:30:04 -0000 Author: kib Date: Thu Jun 20 14:30:04 2013 New Revision: 252032 URL: http://svnweb.freebsd.org/changeset/base/252032 Log: Allow immediate operand. Sponsored by: The FreeBSD Foundation Modified: head/sys/amd64/include/counter.h Modified: head/sys/amd64/include/counter.h ============================================================================== --- head/sys/amd64/include/counter.h Thu Jun 20 14:20:03 2013 (r252031) +++ head/sys/amd64/include/counter.h Thu Jun 20 14:30:04 2013 (r252032) @@ -44,7 +44,7 @@ counter_u64_add(counter_u64_t c, int64_t __asm __volatile("addq\t%1,%%gs:(%0)" : - : "r" ((char *)c - (char *)&__pcpu[0]), "r" (inc) + : "r" ((char *)c - (char *)&__pcpu[0]), "ri" (inc) : "memory", "cc"); } From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 14:30:16 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D0884FBB; Thu, 20 Jun 2013 14:30:16 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C0EDF1CE4; Thu, 20 Jun 2013 14:30:16 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5KEUGE3049184; Thu, 20 Jun 2013 14:30:16 GMT (envelope-from hrs@svn.freebsd.org) Received: (from hrs@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KEUGvF049181; Thu, 20 Jun 2013 14:30:16 GMT (envelope-from hrs@svn.freebsd.org) Message-Id: <201306201430.r5KEUGvF049181@svn.freebsd.org> From: Hiroki Sato Date: Thu, 20 Jun 2013 14:30:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252033 - head/sbin/mdconfig X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 14:30:16 -0000 Author: hrs Date: Thu Jun 20 14:30:16 2013 New Revision: 252033 URL: http://svnweb.freebsd.org/changeset/base/252033 Log: - Add "-f file" support to listing mode (-l). When a -f option is specified, only md(4) devices which have the specified file as backing store are displayed. - Use MD_NAME instead of "md". - Use _PATH_DEV instead of "/dev/". MFC after: 1 week Modified: head/sbin/mdconfig/mdconfig.8 head/sbin/mdconfig/mdconfig.c Modified: head/sbin/mdconfig/mdconfig.8 ============================================================================== --- head/sbin/mdconfig/mdconfig.8 Thu Jun 20 14:30:04 2013 (r252032) +++ head/sbin/mdconfig/mdconfig.8 Thu Jun 20 14:30:16 2013 (r252033) @@ -41,7 +41,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 3, 2012 +.Dd June 20, 2013 .Dt MDCONFIG 8 .Os .Sh NAME @@ -72,6 +72,7 @@ .Fl l .Op Fl n .Op Fl v +.Op Fl f Ar file .Op Fl u Ar unit .Nm .Ar file @@ -131,6 +132,19 @@ List configured devices. If given with .Fl u , display details about that particular device. +If given with +.Fl f Ar file , +display +.Xr md 4 +device names of which +.Ar file +is used as the backing store. +If both of +.Fl u +and +.Fl f +options are specified, +display devices which match the two conditions. If the .Fl v option is specified, show all details. Modified: head/sbin/mdconfig/mdconfig.c ============================================================================== --- head/sbin/mdconfig/mdconfig.c Thu Jun 20 14:30:04 2013 (r252032) +++ head/sbin/mdconfig/mdconfig.c Thu Jun 20 14:30:16 2013 (r252033) @@ -47,6 +47,7 @@ #include #include #include +#include #include #include #include @@ -59,9 +60,9 @@ static int nflag; static void usage(void); static void md_set_file(const char *); -static int md_find(char *, const char *); -static int md_query(char *name); -static int md_list(char *units, int opt); +static int md_find(const char *, const char *); +static int md_query(const char *, const int, const char *); +static int md_list(const char *, int, const char *); static char *geom_config_get(struct gconf *g, const char *name); static void md_prthumanval(char *length); @@ -82,7 +83,7 @@ usage(void) " [-x sectors/track] [-y heads/cylinder]\n" " mdconfig -d -u unit [-o [no]force]\n" " mdconfig -r -u unit -s size [-o [no]force]\n" -" mdconfig -l [-v] [-n] [-u unit]\n" +" mdconfig -l [-v] [-n] [-f file] [-u unit]\n" " mdconfig file\n"); fprintf(stderr, "\t\ttype = {malloc, vnode, swap}\n"); fprintf(stderr, "\t\toption = {cluster, compress, reserve}\n"); @@ -215,7 +216,7 @@ main(int argc, char **argv) errx(1, "unknown suffix on -s argument"); break; case 'u': - if (!strncmp(optarg, "/dev/", 5)) + if (!strncmp(optarg, _PATH_DEV, 5)) optarg += 5; if (!strncmp(optarg, MD_NAME, sizeof(MD_NAME) - 1)) optarg += sizeof(MD_NAME) - 1; @@ -298,8 +299,8 @@ main(int argc, char **argv) errx(1, "-x can only be used with -a"); if (mdio.md_fwheads != 0) errx(1, "-y can only be used with -a"); - if (fflag != NULL) - errx(1, "-f can only be used with -a"); + if (fflag != NULL && action != LIST) + errx(1, "-f can only be used with -a and -l"); if (tflag != NULL) errx(1, "-t can only be used with -a"); if (argc > 0) @@ -333,14 +334,14 @@ main(int argc, char **argv) if (!kld_isloaded("g_md") && kld_load("geom_md") == -1) err(1, "failed to load geom_md module"); - fd = open("/dev/" MDCTL_NAME, O_RDWR, 0); + fd = open(_PATH_DEV MDCTL_NAME, O_RDWR, 0); if (fd < 0) - err(1, "open(/dev/%s)", MDCTL_NAME); + err(1, "open(%s%s)", _PATH_DEV, MDCTL_NAME); if (action == ATTACH) { i = ioctl(fd, MDIOCATTACH, &mdio); if (i < 0) - err(1, "ioctl(/dev/%s)", MDCTL_NAME); + err(1, "ioctl(%s%s)", _PATH_DEV, MDCTL_NAME); if (mdio.md_options & MD_AUTOUNIT) printf("%s%d\n", nflag ? "" : MD_NAME, mdio.md_unit); } else if (action == DETACH) { @@ -348,22 +349,22 @@ main(int argc, char **argv) errx(1, "-d requires -u"); i = ioctl(fd, MDIOCDETACH, &mdio); if (i < 0) - err(1, "ioctl(/dev/%s)", MDCTL_NAME); + err(1, "ioctl(%s%s)", _PATH_DEV, MDCTL_NAME); } else if (action == RESIZE) { if (mdio.md_options & MD_AUTOUNIT) errx(1, "-r requires -u"); i = ioctl(fd, MDIOCRESIZE, &mdio); if (i < 0) - err(1, "ioctl(/dev/%s)", MDCTL_NAME); + err(1, "ioctl(%s%s)", _PATH_DEV, MDCTL_NAME); } else if (action == LIST) { if (mdio.md_options & MD_AUTOUNIT) { /* * Listing all devices. This is why we pass NULL * together with OPT_LIST. */ - md_list(NULL, OPT_LIST | vflag); + md_list(NULL, OPT_LIST | vflag, fflag); } else - return (md_query(uflag)); + return (md_query(uflag, vflag, fflag)); } else usage(); close(fd); @@ -397,7 +398,7 @@ md_set_file(const char *fn) * between list and query mode. */ static int -md_list(char *units, int opt) +md_list(const char *units, int opt, const char *fflag) { struct gmesh gm; struct gprovider *pp; @@ -441,15 +442,20 @@ md_list(char *units, int opt) found = 1; } gc = &pp->lg_config; - if (nflag && strncmp(pp->lg_name, "md", 2) == 0) + type = geom_config_get(gc, "type"); + if (strcmp(type, "vnode") == 0) { + file = geom_config_get(gc, "file"); + if (fflag != NULL && + strcmp(fflag, file) != 0) + continue; + } + if (nflag && strncmp(pp->lg_name, MD_NAME, 2) == 0) printf("%s", pp->lg_name + 2); else printf("%s", pp->lg_name); - if (opt & OPT_VERBOSE || opt & OPT_UNIT) { - type = geom_config_get(gc, "type"); - if (strcmp(type, "vnode") == 0) - file = geom_config_get(gc, "file"); + if (opt & OPT_VERBOSE || + ((opt & OPT_UNIT) && fflag == NULL)) { length = geom_config_get(gc, "length"); printf("\t%s\t", type); if (length != NULL) @@ -497,7 +503,7 @@ geom_config_get(struct gconf *g, const c * otherwise. */ static int -md_find(char *list, const char *name) +md_find(const char *list, const char *name) { int ret; char num[16]; @@ -508,7 +514,7 @@ md_find(char *list, const char *name) if (ptr == NULL) return (-1); for (p = ptr; (u = strsep(&p, ",")) != NULL;) { - if (strncmp(u, "/dev/", 5) == 0) + if (strncmp(u, _PATH_DEV, 5) == 0) u += 5; /* Just in case user specified number instead of full name */ snprintf(num, sizeof(num), "md%s", u); @@ -538,8 +544,8 @@ md_prthumanval(char *length) } static int -md_query(char *name) +md_query(const char *name, const int opt, const char *fflag) { - return (md_list(name, OPT_UNIT)); + return (md_list(name, opt | OPT_UNIT, fflag)); } From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 13:13:59 2013 Return-Path: Delivered-To: svn-src-head@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 564F3B46; Thu, 20 Jun 2013 13:13:59 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from theravensnest.org (theraven.freebsd.your.org [216.14.102.27]) by mx1.freebsd.org (Postfix) with ESMTP id 17E631820; Thu, 20 Jun 2013 13:13:58 +0000 (UTC) Received: from c120.sec.cl.cam.ac.uk (c120.sec.cl.cam.ac.uk [128.232.18.120]) (authenticated bits=0) by theravensnest.org (8.14.5/8.14.5) with ESMTP id r5KDDqVi080322 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Thu, 20 Jun 2013 13:13:53 GMT (envelope-from theraven@FreeBSD.org) Content-Type: multipart/signed; boundary="Apple-Mail=_4D2D4F5C-0CC3-44B6-930F-8218E33093B4"; protocol="application/pgp-signature"; micalg=pgp-sha1 Mime-Version: 1.0 (Mac OS X Mail 6.3 \(1503\)) Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... From: David Chisnall In-Reply-To: <51C2FF16.5080005@freebsd.org> Date: Thu, 20 Jun 2013 14:13:51 +0100 Message-Id: References: <201306180253.r5I2rj45053959@svn.freebsd.org> <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> <51C1C7BD.9060201@FreeBSD.org> <201306191113.29703.jhb@freebsd.org> <8D00BE2B-FD8E-4E7B-B818-1C4B7F6BB6A5@bsdimp.com> <51C2FF16.5080005@freebsd.org> To: Julian Elischer X-Mailer: Apple Mail (2.1503) X-Mailman-Approved-At: Thu, 20 Jun 2013 15:26:04 +0000 Cc: src-committers@FreeBSD.org, Andre Oppermann , Peter Wemm , John Baldwin , svn-src-all@FreeBSD.org, David Chisnall , svn-src-head@FreeBSD.org, Tijl Coosemans , Warner Losh X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 13:13:59 -0000 --Apple-Mail=_4D2D4F5C-0CC3-44B6-930F-8218E33093B4 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=iso-8859-1 On 20 Jun 2013, at 14:09, Julian Elischer wrote: >> Which of the classes of user that I outlined do you think wants to be = able to do that? As a FreeBSD user, I never felt the desire to do that, = but maybe I was unusual. As a FreeBSD developer, I don't mind installing = the svn port to be able to do it (although I'd prefer a more lightweight = port). I would expect the same to apply to the sort of engaged user who = is willing to bisect to track down a bug. > bug reporter: I have this new bug... > developer: Can you try rolling back to xyzzy > bug reporter: Yeah that fixes it.. > developer: Ok.. patch will follow.... And do you think that the sort of user who is sufficiently engaged with = the project to do this is the sort of user who would not be willing to = do so if it meant installing the subversion port? If so, then there is = a clear case for svnlite. =20 David --Apple-Mail=_4D2D4F5C-0CC3-44B6-930F-8218E33093B4 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.18 (Darwin) Comment: GPGTools - http://gpgtools.org iQIcBAEBAgAGBQJRwwAPAAoJEKx65DEEsqId7pEP/3tOi1uLOEwoif3nBNKYN7Dz dHni/DBxSxfaVvwmetuFfIMUQ/bacpZnfLNi3W+XPCTtykW2FRsC4mZ68uJhyUEI CncZ8FwZgbb60j1g1TmvyHGtx/XUxPNqvEabTA0sDFMTsRQys9/ZjvibkESFcdGQ N5rBMBtivSGuNKYbl0CXqb9wCY7qQrjTFPcXdWpNVog2DiwZyoJwqVP3gc1yLFqE CjCNkEalvsnmxU+2jLsMCkxQTk5lbkMOzBIPosovkEeiwjWCU1S60tkfnsS/CIf6 zfRhICLMs7ViFvKVZpdy1DLtsO7BjUNjpqkT6ZnTg3WS23TvKSWbU3cW8221WqqC 647swJnOB+ICbbyMdD+MPdun4JRaAhcpf/+9qC9LHaVmypES+q8cBFJkG/S8hhxC hVJUhq44X5TITgfQdYg9/4zUsrPYL4Z4ARFRUYOybKge0TZZ47W22ZMCf7XXAudR ApzVPnxBsOnwMUMXw9Dz8GVmMf0RiziaovdKRngPRvbczbPb1RWE/f5DLYFnMa8Q 16CW4Ft4t2CNwTcfXw0MnmA94Uhusb145dLzL7z9lXGxA5Lw4EHBuf0wLCPj1V7/ nGHTfbYj8UNinVW5xfcSOZ5fxuvd+2eTKO+qghl2O8JRc5TF40qFT0zkKMM8Qmo6 EEYdLlDyVUkAP2ki5nMJ =gqVw -----END PGP SIGNATURE----- --Apple-Mail=_4D2D4F5C-0CC3-44B6-930F-8218E33093B4-- From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 13:37:16 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7F22A896; Thu, 20 Jun 2013 13:37:16 +0000 (UTC) (envelope-from baptiste.daroussin@gmail.com) Received: from mail-wg0-x22b.google.com (mail-wg0-x22b.google.com [IPv6:2a00:1450:400c:c00::22b]) by mx1.freebsd.org (Postfix) with ESMTP id DFA7319B2; Thu, 20 Jun 2013 13:37:14 +0000 (UTC) Received: by mail-wg0-f43.google.com with SMTP id z11so5538293wgg.10 for ; Thu, 20 Jun 2013 06:37:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=tCzW13Cy4m4SaGguINxqkvgYIObhfVLgdxY1C68Mmpo=; b=Rg9lc5fJgKs3ktLwpbzuP8C+iXHtbt0a6Dh5emSyrsLfFWUdHorZq+rSWz38572uoJ +MQtor4zhoEGlHISvxHhaaxt+BJadgb0oh2tZIL6XsdkTH3bWhJxuMN3oZlO/u8XyBew ABZ1IeOMyh9dyJJlYLEjS3j65lSHyGUXPUONumXKumwCWeljgidt5iSekYPhDjiK9Eij VFRH/VBtTxHG+bpOQ5E+4tfqjn/R99dgrWHpfgbZHowSaM6mR04blwfVnUSmHRKNA+oF 3qAVV1GI/w+RG+sYmlty2FDolDMn9QyXo2fonoIY1ik8QmmVtM6hjUzFSGisyr1Qu3b7 V6IA== X-Received: by 10.180.185.244 with SMTP id ff20mr14516105wic.0.1371735433251; Thu, 20 Jun 2013 06:37:13 -0700 (PDT) Received: from ithaqua.etoilebsd.net (ithaqua.etoilebsd.net. [37.59.37.188]) by mx.google.com with ESMTPSA id fb9sm16305363wid.2.2013.06.20.06.37.11 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Thu, 20 Jun 2013 06:37:12 -0700 (PDT) Sender: Baptiste Daroussin Date: Thu, 20 Jun 2013 15:37:09 +0200 From: Baptiste Daroussin To: Julian Elischer Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... Message-ID: <20130620133709.GG23721@ithaqua.etoilebsd.net> References: <201306180253.r5I2rj45053959@svn.freebsd.org> <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> <51C1C7BD.9060201@FreeBSD.org> <201306191113.29703.jhb@freebsd.org> <8D00BE2B-FD8E-4E7B-B818-1C4B7F6BB6A5@bsdimp.com> <51C2FF16.5080005@freebsd.org> <51C304C0.5060208@freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="0z5c7mBtSy1wdr4F" Content-Disposition: inline In-Reply-To: <51C304C0.5060208@freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) X-Mailman-Approved-At: Thu, 20 Jun 2013 15:43:55 +0000 Cc: src-committers@freebsd.org, Andre Oppermann , Peter Wemm , John Baldwin , svn-src-all@freebsd.org, David Chisnall , svn-src-head@freebsd.org, Tijl Coosemans , Warner Losh X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 13:37:16 -0000 --0z5c7mBtSy1wdr4F Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Jun 20, 2013 at 09:33:52PM +0800, Julian Elischer wrote: > On 6/20/13 9:13 PM, David Chisnall wrote: > > On 20 Jun 2013, at 14:09, Julian Elischer wrote: > > > >>> Which of the classes of user that I outlined do you think wants to be= able to do that? As a FreeBSD user, I never felt the desire to do that, b= ut maybe I was unusual. As a FreeBSD developer, I don't mind installing the= svn port to be able to do it (although I'd prefer a more lightweight port)= =2E I would expect the same to apply to the sort of engaged user who is wi= lling to bisect to track down a bug. > >> bug reporter: I have this new bug... > >> developer: Can you try rolling back to xyzzy > >> bug reporter: Yeah that fixes it.. > >> developer: Ok.. patch will follow.... > > And do you think that the sort of user who is sufficiently engaged with= the project to do this is the sort of user who would not be willing to do = so if it meant installing the subversion port? If so, then there is a clea= r case for svnlite. >=20 > I think that it lowers the barrier.. once you start bringing ports=20 > into the picture you start running the risk of port revision hell. >=20 Once everything will be back to normal $ pkg install subversion I don't see much revision hell in that (bonus it will bring to python and no perl). regards, Bapt --0z5c7mBtSy1wdr4F Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iEYEARECAAYFAlHDBYUACgkQ8kTtMUmk6Ey2RwCeJiXwoKLm9187hAuQk7wVDvYS rsUAnj2JaeAcgw1uQnGrGodzw97NlNU8 =tPzR -----END PGP SIGNATURE----- --0z5c7mBtSy1wdr4F-- From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 14:19:46 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 80C7C92B; Thu, 20 Jun 2013 14:19:46 +0000 (UTC) (envelope-from doconnor@gsoft.com.au) Received: from cain.gsoft.com.au (cain.gsoft.com.au [203.31.81.10]) by mx1.freebsd.org (Postfix) with ESMTP id DA6531C34; Thu, 20 Jun 2013 14:19:45 +0000 (UTC) Received: from ur.dons.net.au (ppp118-210-82-188.lns20.adl2.internode.on.net [118.210.82.188]) (authenticated bits=0) by cain.gsoft.com.au (8.14.4/8.14.3) with ESMTP id r5KEJDYM098427 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Thu, 20 Jun 2013 23:49:19 +0930 (CST) (envelope-from doconnor@gsoft.com.au) Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... Mime-Version: 1.0 (Mac OS X Mail 6.5 \(1508\)) Content-Type: text/plain; charset=us-ascii From: "Daniel O'Connor" In-Reply-To: <51C304C0.5060208@freebsd.org> Date: Thu, 20 Jun 2013 23:49:13 +0930 Content-Transfer-Encoding: quoted-printable Message-Id: <0934C957-D21E-4DEA-8E4B-FEA396B57490@gsoft.com.au> References: <201306180253.r5I2rj45053959@svn.freebsd.org> <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> <51C1C7BD.9060201@FreeBSD.org> <201306191113.29703.jhb@freebsd.org> <8D00BE2B-FD8E-4E7B-B818-1C4B7F6BB6A5@bsdimp.com> <51C2FF16.5080005@freebsd.org> <51C304C0.5060208@freebsd.org> To: Julian Elischer X-Mailer: Apple Mail (2.1508) X-Spam-Score: 0.163 () BAYES_00,RDNS_DYNAMIC X-Scanned-By: MIMEDefang 2.67 on 203.31.81.10 X-Mailman-Approved-At: Thu, 20 Jun 2013 15:44:02 +0000 Cc: src-committers@freebsd.org, Andre Oppermann , Peter Wemm , John Baldwin , svn-src-all@freebsd.org, David Chisnall , svn-src-head@freebsd.org, Tijl Coosemans , Warner Losh X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 14:19:46 -0000 On 20/06/2013, at 23:03, Julian Elischer wrote: >> And do you think that the sort of user who is sufficiently engaged = with the project to do this is the sort of user who would not be willing = to do so if it meant installing the subversion port? If so, then there = is a clear case for svnlite. >=20 > I think that it lowers the barrier.. once you start bringing ports = into the picture you start running the risk of port revision hell. If there is a statically linked port & corresponding package then the = barrier is almost as low, but has a few other advantages that other = people have listed. That approach has a small footprint (binary + man page), is always up to = date (so the VCS infrastructure is not tied to the earliest version of = SVN) and doesn't have any dependencies. -- Daniel O'Connor software and network engineer for Genesis Software - http://www.gsoft.com.au "The nice thing about standards is that there are so many of them to choose from." -- Andrew Tanenbaum GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 16:25:12 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 5CCB4E1F; Thu, 20 Jun 2013 16:25:12 +0000 (UTC) (envelope-from gprspb@mail.ru) Received: from smtp37.i.mail.ru (smtp37.i.mail.ru [94.100.177.97]) by mx1.freebsd.org (Postfix) with ESMTP id C416A13B3; Thu, 20 Jun 2013 16:25:11 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mail.ru; s=mail2; h=In-Reply-To:Content-Type:MIME-Version:References:Message-ID:Subject:Cc:To:From:Date; bh=I0NadfRasN+lwPxn+uXb2/xUDLwmG6q6c+Lo3mNyRWY=; b=YB+T5e4Gk/rWvZWVL6UW24wp3nxL0IVPR74a4It7HowqHYQXQzeEZGKow4AEZ6bw3Hq3AVKKYGDCrXp0LHvzdbVlSzFC+vFlPGsWMPmP+KUnLmkChHVLL4Rfr41Q+5hNT7ipyNc7yU4/+fmhPi+RSuNMMHNkibRPQDpTqEmA0Q0=; Received: from [93.185.182.46] (port=23551 helo=gpr.nnz-home.ru) by smtp37.i.mail.ru with esmtpa (envelope-from ) id 1UphfY-0002Ta-SU; Thu, 20 Jun 2013 20:25:09 +0400 Received: from gpr by gpr.nnz-home.ru with local (Exim 4.80.1 (FreeBSD)) (envelope-from ) id 1UphfD-000CVq-Px; Thu, 20 Jun 2013 20:24:47 +0400 Date: Thu, 20 Jun 2013 20:24:47 +0400 From: Gennady Proskurin To: Daniel O'Connor Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... Message-ID: <20130620162447.GB913@gpr.nnz-home.ru> References: <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> <51C1C7BD.9060201@FreeBSD.org> <201306191113.29703.jhb@freebsd.org> <8D00BE2B-FD8E-4E7B-B818-1C4B7F6BB6A5@bsdimp.com> <51C2FF16.5080005@freebsd.org> <51C304C0.5060208@freebsd.org> <0934C957-D21E-4DEA-8E4B-FEA396B57490@gsoft.com.au> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <0934C957-D21E-4DEA-8E4B-FEA396B57490@gsoft.com.au> User-Agent: Mutt/1.5.21 (2010-09-15) X-Spam: Not detected X-Mras: Ok X-Mailman-Approved-At: Thu, 20 Jun 2013 16:33:18 +0000 Cc: src-committers@freebsd.org, Andre Oppermann , Peter Wemm , John Baldwin , svn-src-all@freebsd.org, David Chisnall , svn-src-head@freebsd.org, Tijl Coosemans , Julian Elischer , Warner Losh X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 16:25:12 -0000 On Thu, Jun 20, 2013 at 11:49:13PM +0930, Daniel O'Connor wrote: > > On 20/06/2013, at 23:03, Julian Elischer wrote: > >> And do you think that the sort of user who is sufficiently engaged with the project to do this is the sort of user who would not be willing to do so if it meant installing the subversion port? If so, then there is a clear case for svnlite. > > > > I think that it lowers the barrier.. once you start bringing ports into the picture you start running the risk of port revision hell. > > > If there is a statically linked port & corresponding package then the barrier is almost as low, but has a few other advantages that other people have listed. > > That approach has a small footprint (binary + man page), is always up to date (so the VCS infrastructure is not tied to the earliest version of SVN) and doesn't have any dependencies. svnlite (1.8.0-rc3 in base system) and subversion (1.7.10 from ports) are not interoperable, they create incompatible repositories (at least by default). Not a problem for me personally, I use git mirrors, just my 5 cents. Details below. Here the freebsd repo checked out by subversion port > svn info Path: . Working Copy Root Path: /usr/src/freebsd-head.svn URL: http://svn.freebsd.org/base/head Repository Root: http://svn.freebsd.org/base Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f Revision: 245668 Node Kind: directory Schedule: normal Last Changed Author: joel Last Changed Rev: 245667 Last Changed Date: 2013-01-19 11:07:05 +0400 (Sat, 19 Jan 2013) Now trying to work with svnlite: > svnlite info svn: E155036: Please see the 'svn upgrade' command svn: E155036: The working copy at '/usr/src/freebsd-head.svn' is too old (format 29) to work with client version '1.8.0-rc3 (Release Candidate 3)' (expects format 31). You need to upgrade the working copy first. Creating repo with svnlite and trying to run svn on it: > svnlite co http://svn.freebsd.org/base/head/bin/cat A cat/Makefile A cat/cat.1 A cat/cat.c Checked out revision 252033. > cd cat > svnlite info Path: . Working Copy Root Path: /tmp/src-test/cat URL: http://svn.freebsd.org/base/head/bin/cat Relative URL: ^/head/bin/cat Repository Root: http://svn.freebsd.org/base Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f Revision: 252033 Node Kind: directory Schedule: normal Last Changed Author: eadler Last Changed Rev: 249804 Last Changed Date: 2013-04-23 17:03:11 +0400 (Tue, 23 Apr 2013) > svn info svn: E155021: This client is too old to work with the working copy at '/tmp/src-test/cat' (format 31). You need to get a newer Subversion client. For more details, see http://subversion.apache.org/faq.html#working-copy-format-change From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 17:01:02 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id BF23226C; Thu, 20 Jun 2013 17:01:02 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 98C131709; Thu, 20 Jun 2013 17:01:02 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5KH12Xe099238; Thu, 20 Jun 2013 17:01:02 GMT (envelope-from hrs@svn.freebsd.org) Received: (from hrs@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KH129Q099237; Thu, 20 Jun 2013 17:01:02 GMT (envelope-from hrs@svn.freebsd.org) Message-Id: <201306201701.r5KH129Q099237@svn.freebsd.org> From: Hiroki Sato Date: Thu, 20 Jun 2013 17:01:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252036 - head/sbin/mdconfig X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 17:01:02 -0000 Author: hrs Date: Thu Jun 20 17:01:02 2013 New Revision: 252036 URL: http://svnweb.freebsd.org/changeset/base/252036 Log: eturn -1 when the specified backing store file is not found in the md device list. MFC after: 1 week Modified: head/sbin/mdconfig/mdconfig.c Modified: head/sbin/mdconfig/mdconfig.c ============================================================================== --- head/sbin/mdconfig/mdconfig.c Thu Jun 20 16:51:25 2013 (r252035) +++ head/sbin/mdconfig/mdconfig.c Thu Jun 20 17:01:02 2013 (r252036) @@ -362,7 +362,7 @@ main(int argc, char **argv) * Listing all devices. This is why we pass NULL * together with OPT_LIST. */ - md_list(NULL, OPT_LIST | vflag, fflag); + return (md_list(NULL, OPT_LIST | vflag, fflag)); } else return (md_query(uflag, vflag, fflag)); } else @@ -408,7 +408,7 @@ md_list(const char *units, int opt, cons struct ggeom *gg; struct gclass *gcl; void *sq; - int retcode, found; + int retcode, ffound, ufound; char *type, *file, *length; type = file = length = NULL; @@ -423,7 +423,7 @@ md_list(const char *units, int opt, cons if (sq == NULL) return (-1); - found = 0; + ffound = ufound = 0; while ((gsp = geom_stats_snapshot_next(sq)) != NULL) { gid = geom_lookupid(&gm, gsp->id); if (gid == NULL) @@ -439,7 +439,7 @@ md_list(const char *units, int opt, cons if (retcode != 1) continue; else - found = 1; + ufound = 1; } gc = &pp->lg_config; type = geom_config_get(gc, "type"); @@ -448,6 +448,8 @@ md_list(const char *units, int opt, cons if (fflag != NULL && strcmp(fflag, file) != 0) continue; + else + ffound = 1; } if (nflag && strncmp(pp->lg_name, MD_NAME, 2) == 0) printf("%s", pp->lg_name + 2); @@ -476,7 +478,9 @@ md_list(const char *units, int opt, cons printf("\n"); /* XXX: Check if it's enough to clean everything. */ geom_stats_snapshot_free(sq); - if ((opt & OPT_UNIT) && found) + if (((opt & OPT_UNIT) && (fflag == NULL) && ufound) || + ((opt & OPT_UNIT) == 0 && (fflag != NULL) && ffound) || + ((opt & OPT_UNIT) && (fflag != NULL) && ufound && ffound)) return (0); else return (-1); From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 17:26:26 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 5CF7A9F7; Thu, 20 Jun 2013 17:26:26 +0000 (UTC) (envelope-from jhb@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4D7B517FC; Thu, 20 Jun 2013 17:26:26 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5KHQQYp007028; Thu, 20 Jun 2013 17:26:26 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KHQQo2007027; Thu, 20 Jun 2013 17:26:26 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201306201726.r5KHQQo2007027@svn.freebsd.org> From: John Baldwin Date: Thu, 20 Jun 2013 17:26:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252037 - 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-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 17:26:26 -0000 Author: jhb Date: Thu Jun 20 17:26:25 2013 New Revision: 252037 URL: http://svnweb.freebsd.org/changeset/base/252037 Log: Document RA_RECURSED and RA_NOTRECURSED. MFC after: 3 days Modified: head/share/man/man9/rwlock.9 Modified: head/share/man/man9/rwlock.9 ============================================================================== --- head/share/man/man9/rwlock.9 Thu Jun 20 17:01:02 2013 (r252036) +++ head/share/man/man9/rwlock.9 Thu Jun 20 17:26:25 2013 (r252037) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd November 16, 2011 +.Dd June 20, 2013 .Dt RWLOCK 9 .Os .Sh NAME @@ -254,7 +254,7 @@ with and .Cd "options INVARIANT_SUPPORT" , the kernel will panic. -Currently the following assertions are supported: +Currently the following base assertions are supported: .Bl -tag -width ".Dv RA_UNLOCKED" .It Dv RA_LOCKED Assert that current thread holds either a shared or exclusive lock @@ -270,6 +270,20 @@ Assert that current thread holds an excl Assert that current thread holds neither a shared nor exclusive lock of .Fa rw . .El +.Pp +In addition, one of the following optional flags may be specified with +.Dv RA_LOCKED , +.Dv RA_RLOCKED , +or +.Dv RA_WLOCKED : +.Bl -tag -width ".Dv RA_NOTRECURSED" +.It Dv RA_RECURSED +Assert that the current thread holds a recursive lock of +.Fa rw . +.It Dv RA_NOTRECURSED +Assert that the current thread does not hold a recursive lock of +.Fa rw . +.El .El .Sh SEE ALSO .Xr locking 9 , From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 18:16:29 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id F01978A9; Thu, 20 Jun 2013 18:16:28 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from bigwig.baldwin.cx (bigwig.baldwin.cx [IPv6:2001:470:1f11:75::1]) by mx1.freebsd.org (Postfix) with ESMTP id C53E21A8B; Thu, 20 Jun 2013 18:16:28 +0000 (UTC) Received: from jhbbsd.localnet (unknown [209.249.190.124]) by bigwig.baldwin.cx (Postfix) with ESMTPSA id B226CB917; Thu, 20 Jun 2013 14:16:25 -0400 (EDT) From: John Baldwin To: David Chisnall Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... Date: Thu, 20 Jun 2013 11:00:02 -0400 User-Agent: KMail/1.13.5 (FreeBSD/8.2-CBSD-20110714-p25; KDE/4.5.5; amd64; ; ) References: <201306180253.r5I2rj45053959@svn.freebsd.org> <51C2FF16.5080005@freebsd.org> In-Reply-To: MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Message-Id: <201306201100.02566.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.7 (bigwig.baldwin.cx); Thu, 20 Jun 2013 14:16:25 -0400 (EDT) Cc: src-committers@freebsd.org, Andre Oppermann , Peter Wemm , svn-src-all@freebsd.org, svn-src-head@freebsd.org, Tijl Coosemans , Julian Elischer , Warner Losh X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 18:16:29 -0000 On Thursday, June 20, 2013 9:13:51 am David Chisnall wrote: > On 20 Jun 2013, at 14:09, Julian Elischer wrote: > > >> Which of the classes of user that I outlined do you think wants to be able to do that? As a FreeBSD user, I never felt the desire to do that, but maybe I was unusual. As a FreeBSD developer, I don't mind installing the svn port to be able to do it (although I'd prefer a more lightweight port). I would expect the same to apply to the sort of engaged user who is willing to bisect to track down a bug. > > bug reporter: I have this new bug... > > developer: Can you try rolling back to xyzzy > > bug reporter: Yeah that fixes it.. > > developer: Ok.. patch will follow.... > > And do you think that the sort of user who is sufficiently engaged with the project to do this is the sort of user who would not be willing to do so if it meant installing the subversion port? If so, then there is a clear case for svnlite. I only mean that this use-case is required and this is why you can't use portsnap for src updates. Especially because when some user does an update they aren't going to want to switch to some other tool so they can start bisecting to find an offending revision. Many of our users are willing to do the bisection thing, and it was a commonly used feature of cvsup to do this via timestamps. In terms of whether or not the src updating tool live in ports: cvsup used to only be available as a port, and many users really did like having csup come into the base system so they did not need a port for this. The rather broad support for svnup among our users on stable@, etc. should be a good clue that many of them would greatly prefer a tool in the base system for tracking source rather than installing a port, esp. a port with the large number of dependencies that svn has. -- John Baldwin From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 18:25:11 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 03E5DC13; Thu, 20 Jun 2013 18:25:11 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id DB4501B18; Thu, 20 Jun 2013 18:25:10 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5KIPAc6025450; Thu, 20 Jun 2013 18:25:10 GMT (envelope-from dim@svn.freebsd.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KIPAk1025448; Thu, 20 Jun 2013 18:25:10 GMT (envelope-from dim@svn.freebsd.org) Message-Id: <201306201825.r5KIPAk1025448@svn.freebsd.org> From: Dimitry Andric Date: Thu, 20 Jun 2013 18:25:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252039 - in head/contrib: gcc llvm/lib/CodeGen X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 18:25:11 -0000 Author: dim Date: Thu Jun 20 18:25:10 2013 New Revision: 252039 URL: http://svnweb.freebsd.org/changeset/base/252039 Log: Pull in r183984 from llvm trunk: Make PrologEpilogInserter save/restore all callee saved registers in functions which call __builtin_unwind_init() __builtin_unwind_init() is an undocumented gcc intrinsic which has this effect, and is used in libgcc_eh. Goes part of the way toward fixing PR8541. This obsoletes the ugly hack to libgcc's unwind code from r245272, and should also work for other arches, so revert the hack too. Modified: head/contrib/gcc/unwind-dw2.c head/contrib/llvm/lib/CodeGen/PrologEpilogInserter.cpp Modified: head/contrib/gcc/unwind-dw2.c ============================================================================== --- head/contrib/gcc/unwind-dw2.c Thu Jun 20 17:45:29 2013 (r252038) +++ head/contrib/gcc/unwind-dw2.c Thu Jun 20 18:25:10 2013 (r252039) @@ -1438,17 +1438,6 @@ uw_init_context_1 (struct _Unwind_Contex context->ra = __builtin_extract_return_addr (outer_ra); } -#if defined(__clang__) && defined(__amd64__) -/* Some versions of clang don't save and restore all callee registers, if a - __builtin_eh_return() intrinsic is used in a function. This is particularly - bad on amd64. For now, use the following ugly hack to force it to assume - those registers are clobbered, when invoking __builtin_eh_return(), so it - will emit code to save and restore them. */ -#define CLOBBER_REGS_HACK \ - __asm __volatile(" " : : : "r15", "r14", "r13", "r12", "rbx", "rdx", "rax"); -#else -#define CLOBBER_REGS_HACK -#endif /* __clang__ */ /* Install TARGET into CURRENT so that we can return to it. This is a macro because __builtin_eh_return must be invoked in the context of @@ -1459,7 +1448,6 @@ uw_init_context_1 (struct _Unwind_Contex { \ long offset = uw_install_context_1 ((CURRENT), (TARGET)); \ void *handler = __builtin_frob_return_addr ((TARGET)->ra); \ - CLOBBER_REGS_HACK \ __builtin_eh_return (offset, handler); \ } \ while (0) Modified: head/contrib/llvm/lib/CodeGen/PrologEpilogInserter.cpp ============================================================================== --- head/contrib/llvm/lib/CodeGen/PrologEpilogInserter.cpp Thu Jun 20 17:45:29 2013 (r252038) +++ head/contrib/llvm/lib/CodeGen/PrologEpilogInserter.cpp Thu Jun 20 18:25:10 2013 (r252039) @@ -29,6 +29,7 @@ #include "llvm/CodeGen/MachineFrameInfo.h" #include "llvm/CodeGen/MachineInstr.h" #include "llvm/CodeGen/MachineLoopInfo.h" +#include "llvm/CodeGen/MachineModuleInfo.h" #include "llvm/CodeGen/MachineRegisterInfo.h" #include "llvm/CodeGen/RegisterScavenging.h" #include "llvm/IR/InlineAsm.h" @@ -214,7 +215,8 @@ void PEI::calculateCalleeSavedRegisters( std::vector CSI; for (unsigned i = 0; CSRegs[i]; ++i) { unsigned Reg = CSRegs[i]; - if (F.getRegInfo().isPhysRegUsed(Reg)) { + // Functions which call __builtin_unwind_init get all their registers saved. + if (F.getRegInfo().isPhysRegUsed(Reg) || F.getMMI().callsUnwindInit()) { // If the reg is modified, save it! CSI.push_back(CalleeSavedInfo(Reg)); } From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 19:08:13 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id D7A25B98; Thu, 20 Jun 2013 19:08:13 +0000 (UTC) (envelope-from jeff@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C94CF1EB1; Thu, 20 Jun 2013 19:08:13 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5KJ8DIa038636; Thu, 20 Jun 2013 19:08:13 GMT (envelope-from jeff@svn.freebsd.org) Received: (from jeff@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KJ8D9E038632; Thu, 20 Jun 2013 19:08:13 GMT (envelope-from jeff@svn.freebsd.org) Message-Id: <201306201908.r5KJ8D9E038632@svn.freebsd.org> From: Jeff Roberson Date: Thu, 20 Jun 2013 19:08:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252040 - head/sys/vm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 19:08:13 -0000 Author: jeff Date: Thu Jun 20 19:08:12 2013 New Revision: 252040 URL: http://svnweb.freebsd.org/changeset/base/252040 Log: - Add a per-zone lock for zones without kegs. - Be more explicit about zone vs keg locking. This functionally changes almost nothing. - Add a size parameter to uma_zcache_create() so we can size the buckets. - Pass the zone to bucket_alloc() so it can modify allocation flags as appropriate. - Fix a bug in zone_alloc_bucket() where I missed an address of operator in a failure case. (Found by pho) Sponsored by: EMC / Isilon Storage Division Modified: head/sys/vm/uma.h head/sys/vm/uma_core.c head/sys/vm/uma_dbg.c head/sys/vm/uma_int.h Modified: head/sys/vm/uma.h ============================================================================== --- head/sys/vm/uma.h Thu Jun 20 18:25:10 2013 (r252039) +++ head/sys/vm/uma.h Thu Jun 20 19:08:12 2013 (r252040) @@ -234,7 +234,7 @@ int uma_zsecond_add(uma_zone_t zone, uma * zones. The 'arg' parameter is passed to import/release and is caller * specific. */ -uma_zone_t uma_zcache_create(char *name, uma_ctor ctor, uma_dtor dtor, +uma_zone_t uma_zcache_create(char *name, int size, uma_ctor ctor, uma_dtor dtor, uma_init zinit, uma_fini zfini, uma_import zimport, uma_release zrelease, void *arg, int flags); Modified: head/sys/vm/uma_core.c ============================================================================== --- head/sys/vm/uma_core.c Thu Jun 20 18:25:10 2013 (r252039) +++ head/sys/vm/uma_core.c Thu Jun 20 19:08:12 2013 (r252040) @@ -246,8 +246,8 @@ static void *zone_alloc_item(uma_zone_t, static void zone_free_item(uma_zone_t, void *, void *, enum zfreeskip); static void bucket_enable(void); static void bucket_init(void); -static uma_bucket_t bucket_alloc(int, int); -static void bucket_free(uma_bucket_t); +static uma_bucket_t bucket_alloc(uma_zone_t zone, int); +static void bucket_free(uma_zone_t zone, uma_bucket_t); static void bucket_zone_drain(void); static uma_bucket_t zone_alloc_bucket(uma_zone_t zone, int flags); static uma_slab_t zone_fetch_slab(uma_zone_t zone, uma_keg_t last, int flags); @@ -256,8 +256,6 @@ static void *slab_alloc_item(uma_keg_t k static void slab_free_item(uma_keg_t keg, uma_slab_t slab, void *item); static uma_keg_t uma_kcreate(uma_zone_t zone, size_t size, uma_init uminit, uma_fini fini, int align, uint32_t flags); -static inline void zone_relock(uma_zone_t zone, uma_keg_t keg); -static inline void keg_relock(uma_keg_t keg, uma_zone_t zone); static int zone_import(uma_zone_t zone, void **bucket, int max, int flags); static void zone_release(uma_zone_t zone, void **bucket, int cnt); @@ -352,7 +350,7 @@ bucket_select(int size) } static uma_bucket_t -bucket_alloc(int entries, int bflags) +bucket_alloc(uma_zone_t zone, int flags) { struct uma_bucket_zone *ubz; uma_bucket_t bucket; @@ -366,8 +364,10 @@ bucket_alloc(int entries, int bflags) if (bucketdisable) return (NULL); - ubz = bucket_zone_lookup(entries); - bucket = uma_zalloc(ubz->ubz_zone, bflags); + if (zone->uz_flags & UMA_ZFLAG_CACHEONLY) + flags |= M_NOVM; + ubz = bucket_zone_lookup(zone->uz_count); + bucket = uma_zalloc(ubz->ubz_zone, flags); if (bucket) { #ifdef INVARIANTS bzero(bucket->ub_bucket, sizeof(void *) * ubz->ubz_entries); @@ -380,7 +380,7 @@ bucket_alloc(int entries, int bflags) } static void -bucket_free(uma_bucket_t bucket) +bucket_free(uma_zone_t zone, uma_bucket_t bucket) { struct uma_bucket_zone *ubz; @@ -662,9 +662,9 @@ cache_drain(uma_zone_t zone) bucket_drain(zone, cache->uc_allocbucket); bucket_drain(zone, cache->uc_freebucket); if (cache->uc_allocbucket != NULL) - bucket_free(cache->uc_allocbucket); + bucket_free(zone, cache->uc_allocbucket); if (cache->uc_freebucket != NULL) - bucket_free(cache->uc_freebucket); + bucket_free(zone, cache->uc_freebucket); cache->uc_allocbucket = cache->uc_freebucket = NULL; } ZONE_LOCK(zone); @@ -688,7 +688,7 @@ bucket_cache_drain(uma_zone_t zone) LIST_REMOVE(bucket, ub_link); ZONE_UNLOCK(zone); bucket_drain(zone, bucket); - bucket_free(bucket); + bucket_free(zone, bucket); ZONE_LOCK(zone); } } @@ -801,7 +801,7 @@ zone_drain_wait(uma_zone_t zone, int wai if (waitok == M_NOWAIT) goto out; mtx_unlock(&uma_mtx); - msleep(zone, zone->uz_lock, PVM, "zonedrain", 1); + msleep(zone, zone->uz_lockptr, PVM, "zonedrain", 1); mtx_lock(&uma_mtx); } zone->uz_flags |= UMA_ZFLAG_DRAINING; @@ -1375,12 +1375,9 @@ keg_ctor(void *mem, int size, void *udat keg->uk_allocf = startup_alloc; /* - * Initialize keg's lock (shared among zones). + * Initialize keg's lock */ - if (arg->flags & UMA_ZONE_MTXCLASS) - KEG_LOCK_INIT(keg, 1); - else - KEG_LOCK_INIT(keg, 0); + KEG_LOCK_INIT(keg, (arg->flags & UMA_ZONE_MTXCLASS)); /* * If we're putting the slab header in the actual page we need to @@ -1469,15 +1466,18 @@ zone_ctor(void *mem, int size, void *uda timevalclear(&zone->uz_ratecheck); keg = arg->keg; + ZONE_LOCK_INIT(zone, (arg->flags & UMA_ZONE_MTXCLASS)); + /* * This is a pure cache zone, no kegs. */ if (arg->import) { + zone->uz_size = arg->size; zone->uz_import = arg->import; zone->uz_release = arg->release; zone->uz_arg = arg->arg; - zone->uz_count = BUCKET_MAX; - return (0); + zone->uz_lockptr = &zone->uz_lock; + goto out; } /* @@ -1491,7 +1491,7 @@ zone_ctor(void *mem, int size, void *uda KASSERT(arg->keg != NULL, ("Secondary zone on zero'd keg")); zone->uz_init = arg->uminit; zone->uz_fini = arg->fini; - zone->uz_lock = &keg->uk_lock; + zone->uz_lockptr = &keg->uk_lock; zone->uz_flags |= UMA_ZONE_SECONDARY; mtx_lock(&uma_mtx); ZONE_LOCK(zone); @@ -1529,7 +1529,7 @@ zone_ctor(void *mem, int size, void *uda */ zone->uz_klink.kl_keg = keg; LIST_INSERT_HEAD(&zone->uz_kegs, &zone->uz_klink, kl_link); - zone->uz_lock = &keg->uk_lock; + zone->uz_lockptr = &keg->uk_lock; zone->uz_size = keg->uk_size; zone->uz_flags |= (keg->uk_flags & (UMA_ZONE_INHERIT | UMA_ZFLAG_INHERIT)); @@ -1544,8 +1544,9 @@ zone_ctor(void *mem, int size, void *uda return (0); } - if ((keg->uk_flags & UMA_ZONE_MAXBUCKET) == 0) - zone->uz_count = bucket_select(keg->uk_rsize); +out: + if ((arg->flags & UMA_ZONE_MAXBUCKET) == 0) + zone->uz_count = bucket_select(zone->uz_size); else zone->uz_count = BUCKET_MAX; @@ -1626,6 +1627,7 @@ zone_dtor(void *arg, int size, void *uda mtx_unlock(&uma_mtx); zone_free_item(kegs, keg, NULL, SKIP_NONE); } + ZONE_LOCK_FINI(zone); } /* @@ -1849,15 +1851,15 @@ uma_zsecond_create(char *name, uma_ctor /* See uma.h */ uma_zone_t -uma_zcache_create(char *name, uma_ctor ctor, uma_dtor dtor, uma_init zinit, - uma_fini zfini, uma_import zimport, uma_release zrelease, - void *arg, int flags) +uma_zcache_create(char *name, int size, uma_ctor ctor, uma_dtor dtor, + uma_init zinit, uma_fini zfini, uma_import zimport, + uma_release zrelease, void *arg, int flags) { struct uma_zctor_args args; memset(&args, 0, sizeof(args)); args.name = name; - args.size = 0; + args.size = size; args.ctor = ctor; args.dtor = dtor; args.uminit = zinit; @@ -1876,10 +1878,10 @@ zone_lock_pair(uma_zone_t a, uma_zone_t { if (a < b) { ZONE_LOCK(a); - mtx_lock_flags(b->uz_lock, MTX_DUPOK); + mtx_lock_flags(b->uz_lockptr, MTX_DUPOK); } else { ZONE_LOCK(b); - mtx_lock_flags(a->uz_lock, MTX_DUPOK); + mtx_lock_flags(a->uz_lockptr, MTX_DUPOK); } } @@ -2071,7 +2073,7 @@ zalloc_start: cache->uc_allocbucket = NULL; critical_exit(); if (bucket != NULL) - bucket_free(bucket); + bucket_free(zone, bucket); /* Short-circuit for zones without buckets and low memory. */ if (zone->uz_count == 0 || bucketdisable) @@ -2241,31 +2243,15 @@ keg_fetch_slab(uma_keg_t keg, uma_zone_t return (slab); } -static inline void -zone_relock(uma_zone_t zone, uma_keg_t keg) -{ - if (zone->uz_lock != &keg->uk_lock) { - KEG_UNLOCK(keg); - ZONE_LOCK(zone); - } -} - -static inline void -keg_relock(uma_keg_t keg, uma_zone_t zone) -{ - if (zone->uz_lock != &keg->uk_lock) { - ZONE_UNLOCK(zone); - KEG_LOCK(keg); - } -} - static uma_slab_t zone_fetch_slab(uma_zone_t zone, uma_keg_t keg, int flags) { uma_slab_t slab; - if (keg == NULL) + if (keg == NULL) { keg = zone_first_keg(zone); + KEG_LOCK(keg); + } for (;;) { slab = keg_fetch_slab(keg, zone, flags); @@ -2274,13 +2260,13 @@ zone_fetch_slab(uma_zone_t zone, uma_keg if (flags & (M_NOWAIT | M_NOVM)) break; } + KEG_UNLOCK(keg); return (NULL); } /* * uma_zone_fetch_slab_multi: Fetches a slab from one available keg. Returns - * with the keg locked. Caller must call zone_relock() afterwards if the - * zone lock is required. On NULL the zone lock is held. + * with the keg locked. On NULL no lock is held. * * The last pointer is used to seed the search. It is not required. */ @@ -2304,12 +2290,11 @@ zone_fetch_slab_multi(uma_zone_t zone, u * Use the last slab allocated as a hint for where to start * the search. */ - if (last) { + if (last != NULL) { slab = keg_fetch_slab(last, zone, flags); if (slab) return (slab); - zone_relock(zone, last); - last = NULL; + KEG_UNLOCK(last); } /* * Loop until we have a slab incase of transient failures @@ -2325,7 +2310,7 @@ zone_fetch_slab_multi(uma_zone_t zone, u */ LIST_FOREACH(klink, &zone->uz_kegs, kl_link) { keg = klink->kl_keg; - keg_relock(keg, zone); + KEG_LOCK(keg); if ((keg->uk_flags & UMA_ZFLAG_FULL) == 0) { slab = keg_fetch_slab(keg, zone, flags); if (slab) @@ -2335,7 +2320,7 @@ zone_fetch_slab_multi(uma_zone_t zone, u full++; else empty++; - zone_relock(zone, keg); + KEG_UNLOCK(keg); } if (rflags & (M_NOWAIT | M_NOVM)) break; @@ -2345,11 +2330,14 @@ zone_fetch_slab_multi(uma_zone_t zone, u * and sleep so just sleep for a short period and retry. */ if (full && !empty) { + ZONE_LOCK(zone); zone->uz_flags |= UMA_ZFLAG_FULL; zone->uz_sleeps++; zone_log_warning(zone); - msleep(zone, zone->uz_lock, PVM, "zonelimit", hz/100); + msleep(zone, zone->uz_lockptr, PVM, + "zonelimit", hz/100); zone->uz_flags &= ~UMA_ZFLAG_FULL; + ZONE_UNLOCK(zone); continue; } } @@ -2387,15 +2375,14 @@ zone_import(uma_zone_t zone, void **buck uma_keg_t keg; int i; - ZONE_LOCK(zone); - /* Try to keep the buckets totally full */ slab = NULL; keg = NULL; + /* Try to keep the buckets totally full */ for (i = 0; i < max; ) { if ((slab = zone->uz_slab(zone, keg, flags)) == NULL) break; keg = slab->us_keg; - while (slab->us_freecount && i < max) + while (slab->us_freecount && i < max) bucket[i++] = slab_alloc_item(keg, slab); /* Don't block on the next fill */ @@ -2404,8 +2391,6 @@ zone_import(uma_zone_t zone, void **buck } if (slab != NULL) KEG_UNLOCK(keg); - else - ZONE_UNLOCK(zone); return i; } @@ -2414,18 +2399,13 @@ static uma_bucket_t zone_alloc_bucket(uma_zone_t zone, int flags) { uma_bucket_t bucket; - int bflags; int max; - max = zone->uz_count; - bflags = (flags & ~M_WAITOK) | M_NOWAIT; - if (zone->uz_flags & UMA_ZFLAG_CACHEONLY) - bflags |= M_NOVM; - bucket = bucket_alloc(zone->uz_count, bflags); + bucket = bucket_alloc(zone, M_NOWAIT | (flags & M_NOVM)); if (bucket == NULL) goto out; - max = MIN(bucket->ub_entries, max); + max = MIN(bucket->ub_entries, zone->uz_count); bucket->ub_cnt = zone->uz_import(zone->uz_arg, bucket->ub_bucket, max, flags); @@ -2444,7 +2424,7 @@ zone_alloc_bucket(uma_zone_t zone, int f * rest back onto the freelist. */ if (i != bucket->ub_cnt) { - zone->uz_release(zone->uz_arg, bucket->ub_bucket[i], + zone->uz_release(zone->uz_arg, &bucket->ub_bucket[i], bucket->ub_cnt - i); #ifdef INVARIANTS bzero(&bucket->ub_bucket[i], @@ -2457,7 +2437,7 @@ zone_alloc_bucket(uma_zone_t zone, int f out: if (bucket == NULL || bucket->ub_cnt == 0) { if (bucket != NULL) - bucket_free(bucket); + bucket_free(zone, bucket); atomic_add_long(&zone->uz_fails, 1); return (NULL); } @@ -2529,7 +2509,6 @@ uma_zfree_arg(uma_zone_t zone, void *ite { uma_cache_t cache; uma_bucket_t bucket; - int bflags; int cpu; #ifdef UMA_DEBUG_ALLOC_1 @@ -2654,10 +2633,7 @@ zfree_start: #ifdef UMA_DEBUG_ALLOC printf("uma_zfree: Allocating new free bucket.\n"); #endif - bflags = M_NOWAIT; - if (zone->uz_flags & UMA_ZFLAG_CACHEONLY) - bflags |= M_NOVM; - bucket = bucket_alloc(zone->uz_count, bflags); + bucket = bucket_alloc(zone, M_NOWAIT); if (bucket) { critical_enter(); cpu = curcpu; @@ -2671,7 +2647,7 @@ zfree_start: * critical section to free the bucket. */ critical_exit(); - bucket_free(bucket); + bucket_free(zone, bucket); goto zfree_restart; } @@ -2721,8 +2697,8 @@ zone_release(uma_zone_t zone, void **buc int i; clearfull = 0; - ZONE_LOCK(zone); keg = zone_first_keg(zone); + KEG_LOCK(keg); for (i = 0; i < cnt; i++) { item = bucket[i]; if (!(zone->uz_flags & UMA_ZONE_VTOSLAB)) { @@ -2758,12 +2734,13 @@ zone_release(uma_zone_t zone, void **buc wakeup(keg); } } - zone_relock(zone, keg); + KEG_UNLOCK(keg); if (clearfull) { + ZONE_LOCK(zone); zone->uz_flags &= ~UMA_ZFLAG_FULL; wakeup(zone); + ZONE_UNLOCK(zone); } - ZONE_UNLOCK(zone); } @@ -2807,12 +2784,12 @@ uma_zone_set_max(uma_zone_t zone, int ni keg = zone_first_keg(zone); if (keg == NULL) return (0); - ZONE_LOCK(zone); + KEG_LOCK(keg); keg->uk_maxpages = (nitems / keg->uk_ipers) * keg->uk_ppera; if (keg->uk_maxpages * keg->uk_ipers < nitems) keg->uk_maxpages += keg->uk_ppera; nitems = keg->uk_maxpages * keg->uk_ipers; - ZONE_UNLOCK(zone); + KEG_UNLOCK(keg); return (nitems); } @@ -2827,9 +2804,9 @@ uma_zone_get_max(uma_zone_t zone) keg = zone_first_keg(zone); if (keg == NULL) return (0); - ZONE_LOCK(zone); + KEG_LOCK(keg); nitems = keg->uk_maxpages * keg->uk_ipers; - ZONE_UNLOCK(zone); + KEG_UNLOCK(keg); return (nitems); } @@ -2873,13 +2850,13 @@ uma_zone_set_init(uma_zone_t zone, uma_i { uma_keg_t keg; - ZONE_LOCK(zone); keg = zone_first_keg(zone); KASSERT(keg != NULL, ("uma_zone_set_init: Invalid zone type")); + KEG_LOCK(keg); KASSERT(keg->uk_pages == 0, ("uma_zone_set_init on non-empty keg")); keg->uk_init = uminit; - ZONE_UNLOCK(zone); + KEG_UNLOCK(keg); } /* See uma.h */ @@ -2888,19 +2865,20 @@ uma_zone_set_fini(uma_zone_t zone, uma_f { uma_keg_t keg; - ZONE_LOCK(zone); keg = zone_first_keg(zone); KASSERT(keg != NULL, ("uma_zone_set_init: Invalid zone type")); + KEG_LOCK(keg); KASSERT(keg->uk_pages == 0, ("uma_zone_set_fini on non-empty keg")); keg->uk_fini = fini; - ZONE_UNLOCK(zone); + KEG_UNLOCK(keg); } /* See uma.h */ void uma_zone_set_zinit(uma_zone_t zone, uma_init zinit) { + ZONE_LOCK(zone); KASSERT(zone_first_keg(zone)->uk_pages == 0, ("uma_zone_set_zinit on non-empty keg")); @@ -2912,6 +2890,7 @@ uma_zone_set_zinit(uma_zone_t zone, uma_ void uma_zone_set_zfini(uma_zone_t zone, uma_fini zfini) { + ZONE_LOCK(zone); KASSERT(zone_first_keg(zone)->uk_pages == 0, ("uma_zone_set_zfini on non-empty keg")); @@ -2926,11 +2905,11 @@ uma_zone_set_freef(uma_zone_t zone, uma_ { uma_keg_t keg; - ZONE_LOCK(zone); keg = zone_first_keg(zone); KASSERT(keg != NULL, ("uma_zone_set_init: Invalid zone type")); + KEG_LOCK(keg); keg->uk_freef = freef; - ZONE_UNLOCK(zone); + KEG_UNLOCK(keg); } /* See uma.h */ @@ -2940,11 +2919,11 @@ uma_zone_set_allocf(uma_zone_t zone, uma { uma_keg_t keg; - ZONE_LOCK(zone); keg = zone_first_keg(zone); + KEG_LOCK(keg); keg->uk_flags |= UMA_ZFLAG_PRIVALLOC; keg->uk_allocf = allocf; - ZONE_UNLOCK(zone); + KEG_UNLOCK(keg); } /* See uma.h */ @@ -2973,7 +2952,7 @@ uma_zone_reserve_kva(uma_zone_t zone, in return (0); } else kva = 0; - ZONE_LOCK(zone); + KEG_LOCK(keg); keg->uk_kva = kva; keg->uk_offset = 0; keg->uk_maxpages = pages; @@ -2983,7 +2962,8 @@ uma_zone_reserve_kva(uma_zone_t zone, in keg->uk_allocf = noobj_alloc; #endif keg->uk_flags |= UMA_ZONE_NOFREE | UMA_ZFLAG_PRIVALLOC; - ZONE_UNLOCK(zone); + KEG_UNLOCK(keg); + return (1); } @@ -2998,7 +2978,7 @@ uma_prealloc(uma_zone_t zone, int items) keg = zone_first_keg(zone); if (keg == NULL) return; - ZONE_LOCK(zone); + KEG_LOCK(keg); slabs = items / keg->uk_ipers; if (slabs * keg->uk_ipers < items) slabs++; @@ -3010,7 +2990,7 @@ uma_prealloc(uma_zone_t zone, int items) LIST_INSERT_HEAD(&keg->uk_free_slab, slab, us_link); slabs--; } - ZONE_UNLOCK(zone); + KEG_UNLOCK(keg); } /* See uma.h */ Modified: head/sys/vm/uma_dbg.c ============================================================================== --- head/sys/vm/uma_dbg.c Thu Jun 20 18:25:10 2013 (r252039) +++ head/sys/vm/uma_dbg.c Thu Jun 20 19:08:12 2013 (r252040) @@ -231,6 +231,8 @@ uma_dbg_alloc(uma_zone_t zone, uma_slab_ uma_keg_t keg; int freei; + if (zone_first_keg(zone) == NULL) + return; if (slab == NULL) { slab = uma_dbg_getslab(zone, item); if (slab == NULL) @@ -259,6 +261,8 @@ uma_dbg_free(uma_zone_t zone, uma_slab_t uma_keg_t keg; int freei; + if (zone_first_keg(zone) == NULL) + return; if (slab == NULL) { slab = uma_dbg_getslab(zone, item); if (slab == NULL) Modified: head/sys/vm/uma_int.h ============================================================================== --- head/sys/vm/uma_int.h Thu Jun 20 18:25:10 2013 (r252039) +++ head/sys/vm/uma_int.h Thu Jun 20 19:08:12 2013 (r252040) @@ -189,7 +189,7 @@ typedef struct uma_cache * uma_cache_t; * */ struct uma_keg { - struct mtx uk_lock; /* Lock for the keg */ + struct mtx_padalign uk_lock; /* Lock for the keg */ struct uma_hash uk_hash; LIST_HEAD(,uma_zone) uk_zones; /* Keg's zones */ @@ -281,8 +281,9 @@ typedef struct uma_klink *uma_klink_t; * */ struct uma_zone { - const char *uz_name; /* Text name of the zone */ - struct mtx *uz_lock; /* Lock for the zone (keg's lock) */ + struct mtx_padalign uz_lock; /* Lock for the zone */ + struct mtx_padalign *uz_lockptr; + const char *uz_name; /* Text name of the zone */ LIST_ENTRY(uma_zone) uz_link; /* List of all zones in keg */ LIST_HEAD(,uma_bucket) uz_buckets; /* full buckets */ @@ -334,8 +335,10 @@ struct uma_zone { static inline uma_keg_t zone_first_keg(uma_zone_t zone) { + uma_klink_t klink; - return (LIST_FIRST(&zone->uz_kegs)->kl_keg); + klink = LIST_FIRST(&zone->uz_kegs); + return (klink != NULL) ? klink->kl_keg : NULL; } #undef UMA_ALIGN @@ -357,13 +360,25 @@ void uma_large_free(uma_slab_t slab); mtx_init(&(k)->uk_lock, (k)->uk_name, \ "UMA zone", MTX_DEF | MTX_DUPOK); \ } while (0) - + #define KEG_LOCK_FINI(k) mtx_destroy(&(k)->uk_lock) #define KEG_LOCK(k) mtx_lock(&(k)->uk_lock) #define KEG_UNLOCK(k) mtx_unlock(&(k)->uk_lock) -#define ZONE_LOCK(z) mtx_lock((z)->uz_lock) -#define ZONE_TRYLOCK(z) mtx_trylock((z)->uz_lock) -#define ZONE_UNLOCK(z) mtx_unlock((z)->uz_lock) + +#define ZONE_LOCK_INIT(z, lc) \ + do { \ + if ((lc)) \ + mtx_init(&(z)->uz_lock, (z)->uz_name, \ + (z)->uz_name, MTX_DEF | MTX_DUPOK); \ + else \ + mtx_init(&(z)->uz_lock, (z)->uz_name, \ + "UMA zone", MTX_DEF | MTX_DUPOK); \ + } while (0) + +#define ZONE_LOCK(z) mtx_lock((z)->uz_lockptr) +#define ZONE_TRYLOCK(z) mtx_trylock((z)->uz_lockptr) +#define ZONE_UNLOCK(z) mtx_unlock((z)->uz_lockptr) +#define ZONE_LOCK_FINI(z) mtx_destroy(&(z)->uz_lock) /* * Find a slab within a hash table. This is used for OFFPAGE zones to lookup From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 19:34:42 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 98A21D25 for ; Thu, 20 Jun 2013 19:34:42 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from mail-ie0-x22f.google.com (mail-ie0-x22f.google.com [IPv6:2607:f8b0:4001:c03::22f]) by mx1.freebsd.org (Postfix) with ESMTP id 65C9811AA for ; Thu, 20 Jun 2013 19:34:42 +0000 (UTC) Received: by mail-ie0-f175.google.com with SMTP id a13so16672487iee.6 for ; Thu, 20 Jun 2013 12:34:42 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=sender:subject:mime-version:content-type:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to:x-mailer :x-gm-message-state; bh=N7clhRrp7dwS8PAKGJ4b46q7PU68d0Z0YDyOAgyso0k=; b=CPdh+hjI3DIyck4XPPwAvnQqxi0y9RlOJHUozeyyCIcndZu2fbyC0Oad+HuM2wrPaR BQVSGuPEi4Qlbf21V5Y363jc3jJNJDxnermO/pgsM43yEd1EYNLsMKS6z5+YfXsTng2L UiiJI9i4P/Je4LBZtOL+W3VjKhdmvcdD/LRz9HhHZz3uncIqVJZylp40+alyoSnqHSYC ykDzTBg6iTM9DGvABFdBfJbxS3g8NONZ6Fx8Kzzp1uVo/fp0I5lZVsggW4fhbaCV/2i7 3mWln7HOjThzBywLmNEXeopjdXDwsXnhCdSpyeFwyqVZEFm48qzFIJ5opE7ZXkWIuf8M MZrQ== X-Received: by 10.43.78.16 with SMTP id zk16mr705633icb.63.1371756882122; Thu, 20 Jun 2013 12:34:42 -0700 (PDT) Received: from [10.0.0.53] (50-78-194-198-static.hfc.comcastbusiness.net. [50.78.194.198]) by mx.google.com with ESMTPSA id n8sm11320195igk.7.2013.06.20.12.34.40 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 20 Jun 2013 12:34:41 -0700 (PDT) Sender: Warner Losh Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... Mime-Version: 1.0 (Apple Message framework v1085) Content-Type: text/plain; charset=us-ascii From: Warner Losh In-Reply-To: Date: Thu, 20 Jun 2013 13:34:36 -0600 Content-Transfer-Encoding: quoted-printable Message-Id: <68D70A89-22F2-412C-BAF4-72BEFE21EB2F@bsdimp.com> References: <201306180253.r5I2rj45053959@svn.freebsd.org> <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> <51C1C7BD.9060201@FreeBSD.org> <201306191113.29703.jhb@freebsd.org> <8D00BE2B-FD8E-4E7B-B818-1C4B7F6BB6A5@bsdimp.com> To: David Chisnall X-Mailer: Apple Mail (2.1085) X-Gm-Message-State: ALoCoQmP8DLKmdB3beJ3/NNwo47jKMSXDeaupN1QCMm0+CxHPDqHBj8KE/CDyDuIMzDtihc5+FyG Cc: src-committers@FreeBSD.org, Andre Oppermann , John Baldwin , Peter Wemm , svn-src-all@FreeBSD.org, svn-src-head@FreeBSD.org, Tijl Coosemans X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 19:34:42 -0000 On Jun 20, 2013, at 2:40 AM, David Chisnall wrote: > On 20 Jun 2013, at 00:10, Warner Losh wrote: >=20 >>> - FreeBSD developers, who are probably okay with installing a port, = but would prefer a version that didn't depend on kitchen/sink? >>>=20 >>> - Users, who wish to be able to update the source tree and then = either build world, or build some optional parts that are not part of = the default install? >>>=20 >>> - Some other category of svn consumer? >>>=20 >>> I think having a definitive statement as to the intention of svnlite = would help frame the discussion in a more productive format. >>=20 >> How do I roll back to last week with FreeBSD-update? >=20 > Which of the classes of user that I outlined do you think wants to be = able to do that? As a FreeBSD user, I never felt the desire to do that, = but maybe I was unusual. As a FreeBSD developer, I don't mind = installing the svn port to be able to do it (although I'd prefer a more = lightweight port). I would expect the same to apply to the sort of = engaged user who is willing to bisect to track down a bug. =20 People trying new versions of FreeBSD. Some of them install the release, = others might install a snapshot, some will do an install world. But if = it worked in release 9.3 and broke in 9.4, then to find where they would = need to install an svn port to get all the points in between. Not having to install a port, possibly a port that got messed up by the = world you just build, is a big win for me in my mind. Users often have = commented to me that running FreeBSD gets harder and harder with more = hoops to jump through to do things that used to be easy. Installing svn = is one more hoop. It, by itself isn't a huge hoop, but if we can avoid = that hoop we should. I do mind installing a port to do this. We've kicked too much out of the = tree in the name of anti-bloat, and frankly I'm glad to see this. I think insisting on a definitive statement on svn lite's mission = statement is a way to obstruct progress. Sometimes you just need to = things because they feel right, not because they have been through a = 20-step approval process... Warner From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 20:00:53 2013 Return-Path: Delivered-To: svn-src-head@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 5A1A0882; Thu, 20 Jun 2013 20:00:53 +0000 (UTC) (envelope-from theraven@FreeBSD.org) Received: from theravensnest.org (theraven.freebsd.your.org [216.14.102.27]) by mx1.freebsd.org (Postfix) with ESMTP id 2F1A612B6; Thu, 20 Jun 2013 20:00:52 +0000 (UTC) Received: from [192.168.0.2] (cpc27-cmbg15-2-0-cust235.5-4.cable.virginmedia.com [86.27.188.236]) (authenticated bits=0) by theravensnest.org (8.14.5/8.14.5) with ESMTP id r5KK0OYW008140 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Thu, 20 Jun 2013 20:00:26 GMT (envelope-from theraven@FreeBSD.org) Content-Type: multipart/signed; boundary="Apple-Mail=_3A13DB81-56E4-44A9-ADEF-BAE52192DE8B"; protocol="application/pgp-signature"; micalg=pgp-sha1 Mime-Version: 1.0 (Mac OS X Mail 6.3 \(1503\)) Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... From: David Chisnall In-Reply-To: <68D70A89-22F2-412C-BAF4-72BEFE21EB2F@bsdimp.com> Date: Thu, 20 Jun 2013 21:00:17 +0100 Message-Id: References: <201306180253.r5I2rj45053959@svn.freebsd.org> <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> <51C1C7BD.9060201@FreeBSD.org> <201306191113.29703.jhb@freebsd.org> <8D00BE2B-FD8E-4E7B-B818-1C4B7F6BB6A5@bsdimp.com> <68D70A89-22F2-412C-BAF4-72BEFE21EB2F@bsdimp.com> To: Warner Losh X-Mailer: Apple Mail (2.1503) Cc: src-committers@FreeBSD.org, Andre Oppermann , John Baldwin , Peter Wemm , svn-src-all@FreeBSD.org, David Chisnall , svn-src-head@FreeBSD.org, Tijl Coosemans X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 20:00:53 -0000 --Apple-Mail=_3A13DB81-56E4-44A9-ADEF-BAE52192DE8B Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii On 20 Jun 2013, at 20:34, Warner Losh wrote: > People trying new versions of FreeBSD. Some of them install the = release, others might install a snapshot, some will do an install world. = But if it worked in release 9.3 and broke in 9.4, then to find where = they would need to install an svn port to get all the points in between. >=20 > Not having to install a port, possibly a port that got messed up by = the world you just build, is a big win for me in my mind. Users often = have commented to me that running FreeBSD gets harder and harder with = more hoops to jump through to do things that used to be easy. Installing = svn is one more hoop. It, by itself isn't a huge hoop, but if we can = avoid that hoop we should. >=20 > I do mind installing a port to do this. We've kicked too much out of = the tree in the name of anti-bloat, and frankly I'm glad to see this. This rationale makes sense to me. > I think insisting on a definitive statement on svn lite's mission = statement is a way to obstruct progress. Sometimes you just need to = things because they feel right, not because they have been through a = 20-step approval process... When we add something to base, it should always be for a reason with a = defined use-case that can't be (easily) solved by existing means. I = think we have that rationale now, and I'm happy. A long discussion = could have been circumvented by providing it up-front. David --Apple-Mail=_3A13DB81-56E4-44A9-ADEF-BAE52192DE8B Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.18 (Darwin) Comment: GPGTools - http://gpgtools.org iQIcBAEBAgAGBQJRw19SAAoJEKx65DEEsqIdbPwQAJfjqRTI6R6UpkUKS05uoydL /Dle4aJMStvF0cnJAsRppGxqWWmSvWwTmYfFsqsdypC4XpzlptMIkXevMBZVI6eS 4VGNl1rTY4yeS7qcyISGIgk0nYCUxzF1LrgTpqgP1+sgcbaIhx6CxMnPaxkuDS/A 2I+9HH9MdqyU1K690k+eFeVmQW1dUESi47P5zBoBlOkOsCxlPIDi0l2M8OCcIYQh k/VUbh+JxWWfGV7gxz2ShfJ1NtI457eI6DmjclbGCi4eCVIR3c1+xOcGtuDKmsUs nrDmW88FRnIVPetIMGGINb7nFrsh34vaAC7IlgjxddKpGaucuDZKY7s7xcwCUPvQ q8eR68TvcAxxDy9NQ0V4OsGTOoU6LY0VTMZ2LdoWqoLIkGn4U9QCiZGWOPS46kEc 7W0aTkEusmyX/ojMpRiNvFaXNUq7nq49OLUjk9OrPRv3/fNJsjlbw8A+T/u+J2wg rQSMkzCfhHv9NmqsXAIiIk/A+USfg2/pJM6cQ4WuWpkmDqXRPIX2127fg8hk9jDD KOFA2qOcOvx/mDZYqvJ4K6r7GjmsJd+NTFB7y1WGLkKjLPTsoU9UgRcKX3kYzlGc JZQVer85EzfepDsjE4H3SRVcjeelZqQrFrS3LI/gz2VL222rvyeVAu3ZkRU3lPS4 1SMvLpeABNb8lVAdObum =jaDG -----END PGP SIGNATURE----- --Apple-Mail=_3A13DB81-56E4-44A9-ADEF-BAE52192DE8B-- From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 21:16:46 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id A28CC1C5; Thu, 20 Jun 2013 21:16:46 +0000 (UTC) (envelope-from eadler@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 94E6A1778; Thu, 20 Jun 2013 21:16:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5KLGkxV080482; Thu, 20 Jun 2013 21:16:46 GMT (envelope-from eadler@svn.freebsd.org) Received: (from eadler@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KLGknK080481; Thu, 20 Jun 2013 21:16:46 GMT (envelope-from eadler@svn.freebsd.org) Message-Id: <201306202116.r5KLGknK080481@svn.freebsd.org> From: Eitan Adler Date: Thu, 20 Jun 2013 21:16:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252042 - head/share/man/man7 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 21:16:46 -0000 Author: eadler Date: Thu Jun 20 21:16:46 2013 New Revision: 252042 URL: http://svnweb.freebsd.org/changeset/base/252042 Log: Ports switched from dialog to dialog4ports some time ago. PR: docs/179785 Repored by: Kevin Oberman Submitted by: "Ilya A. Arkhipov" MFC After: 3 days Modified: head/share/man/man7/ports.7 Modified: head/share/man/man7/ports.7 ============================================================================== --- head/share/man/man7/ports.7 Thu Jun 20 19:56:26 2013 (r252041) +++ head/share/man/man7/ports.7 Thu Jun 20 21:16:46 2013 (r252042) @@ -97,7 +97,7 @@ target. Configure .Va OPTIONS for this port using -.Xr dialog 1 . +.Xr dialog4ports 1 . .It Cm fetch Fetch all of the files needed to build this port from the sites listed in @@ -177,7 +177,7 @@ configured. Configure .Va OPTIONS for this port and all its dependencies using -.Xr dialog 1 . +.Xr dialog4ports 1 . .It Cm fetch-list Show list of files to be fetched in order to build the port. .It Cm fetch-recursive From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 21:38:09 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7614CE18; Thu, 20 Jun 2013 21:38:09 +0000 (UTC) (envelope-from smh@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 6860B1892; Thu, 20 Jun 2013 21:38:09 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5KLc8W3086983; Thu, 20 Jun 2013 21:38:08 GMT (envelope-from smh@svn.freebsd.org) Received: (from smh@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KLc8Gr086982; Thu, 20 Jun 2013 21:38:08 GMT (envelope-from smh@svn.freebsd.org) Message-Id: <201306202138.r5KLc8Gr086982@svn.freebsd.org> From: Steven Hartland Date: Thu, 20 Jun 2013 21:38:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252045 - head/sys/cam/scsi X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 21:38:09 -0000 Author: smh Date: Thu Jun 20 21:38:08 2013 New Revision: 252045 URL: http://svnweb.freebsd.org/changeset/base/252045 Log: Corrected ATA Passthrough defines from decimal to hex Reviewed by: scottl MFC after: 1 week Modified: head/sys/cam/scsi/scsi_all.h Modified: head/sys/cam/scsi/scsi_all.h ============================================================================== --- head/sys/cam/scsi/scsi_all.h Thu Jun 20 21:29:03 2013 (r252044) +++ head/sys/cam/scsi/scsi_all.h Thu Jun 20 21:38:08 2013 (r252045) @@ -917,10 +917,10 @@ struct ata_pass_12 { #define AP_PROTO_DMA_QUEUED (0x07 << 1) #define AP_PROTO_DEVICE_DIAG (0x08 << 1) #define AP_PROTO_DEVICE_RESET (0x09 << 1) -#define AP_PROTO_UDMA_IN (0x10 << 1) -#define AP_PROTO_UDMA_OUT (0x11 << 1) -#define AP_PROTO_FPDMA (0x12 << 1) -#define AP_PROTO_RESP_INFO (0x15 << 1) +#define AP_PROTO_UDMA_IN (0x0a << 1) +#define AP_PROTO_UDMA_OUT (0x0b << 1) +#define AP_PROTO_FPDMA (0x0c << 1) +#define AP_PROTO_RESP_INFO (0x0f << 1) #define AP_MULTI 0xe0 u_int8_t flags; #define AP_T_LEN 0x03 From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 22:05:52 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id ECAF071E; Thu, 20 Jun 2013 22:05:52 +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 8099E199E; Thu, 20 Jun 2013 22:05:52 +0000 (UTC) Received: from c122-106-156-23.carlnfd1.nsw.optusnet.com.au (c122-106-156-23.carlnfd1.nsw.optusnet.com.au [122.106.156.23]) by mail104.syd.optusnet.com.au (Postfix) with ESMTPS id 5BAE84216E9; Fri, 21 Jun 2013 07:43:35 +1000 (EST) Date: Fri, 21 Jun 2013 07:43:32 +1000 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Konstantin Belousov Subject: Re: svn commit: r252032 - head/sys/amd64/include In-Reply-To: <201306201430.r5KEU4G5049115@svn.freebsd.org> Message-ID: <20130621065839.J916@besplex.bde.org> References: <201306201430.r5KEU4G5049115@svn.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Optus-CM-Score: 0 X-Optus-CM-Analysis: v=2.0 cv=Q6eKePKa c=1 sm=1 a=0l9hOOMEwYoA:10 a=kj9zAlcOel0A:10 a=PO7r1zJSAAAA:8 a=JzwRw_2MAAAA:8 a=gvJhbHXk4isA:10 a=qNzoWfBIm-v1GVZZY0YA:9 a=CjuIK1q_8ugA:10 a=lBjYRrsFGgrJhvrT:21 a=yrjkO6AgVjvk9TFD:21 a=ebeQFi2P/qHVC0Yw9JDJ4g==:117 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 22:05:53 -0000 On Thu, 20 Jun 2013, Konstantin Belousov wrote: > Log: > Allow immediate operand. > .. > Modified: head/sys/amd64/include/counter.h > ============================================================================== > --- head/sys/amd64/include/counter.h Thu Jun 20 14:20:03 2013 (r252031) > +++ head/sys/amd64/include/counter.h Thu Jun 20 14:30:04 2013 (r252032) > @@ -44,7 +44,7 @@ counter_u64_add(counter_u64_t c, int64_t > > __asm __volatile("addq\t%1,%%gs:(%0)" > : > - : "r" ((char *)c - (char *)&__pcpu[0]), "r" (inc) > + : "r" ((char *)c - (char *)&__pcpu[0]), "ri" (inc) > : "memory", "cc"); > } I don't like the quality of these asms. pcpu.h on both amd64 and i386 uses a hackish output operand and no memory clobber, and no cc clobber. The output operand is hackish because the variable is in a different address space. But since the variable is in a different address space, the memory clobber is very unlikely to protect anything -- it could only protect accesses to the variable without using %gs, and it is practically impossible to have such accesses in scope, since we are using %gs because it is the only way that we have in scope to access the variable. The i386 version is much larger and uglier. It has mounds of style bugs. See {amd64.i386}/include/atomic.h for normal style of multi-line asms. I don't like that either. I like a style with backslash-newlines, hard tabs and soft newlines ('... \n\$') used in i386/isa/npx.c. The backslash-newlines are and hard tabs less ugly and more readable than double quotes and soft tabs ('"...\n\t$"'). Escapes in string constants are unfortunately necessary since gcc broke its extension of allowing hard newlines in string constants. The old good way, using the gcc extension, allowed copying extern asm: directly into inline asm (code for a dummy loop): asm(" movl $100,%%ecx 1: decl %%ecx jne 1b "); Without the extension, this has to be uglified and requires a lot of editing to convert. Using backslash-newline and the same indentation for the source and generated asm file, but with trailing tabs to line up: asm(" \n\ movl $100,%%ecx \n\ 1: \n\ decl %%ecx \n\ jne 1b \n\ "); /* clobbers omitted */ The style in machine/atomic.h adds lots of quotes and breaks the formatting of the generated asm file by omitting the newlines, and has to add another ugliness to recover from that -- now it needs semicolons instead of newlines: asm( " movl $100,%%ecx; " "1: " /* should use newline/semi */ " decl %%ecx ; " " jne 1b " ); /* might be on previous line */ This requires much more editing. Finally, the style in i386/include/counter.h changes the semicolons to soft newlines to improve the output and removes most of the formatting in the source but adds soft tabs to give the indentation in the output in another way: asm( "movl $100,%%ecx\n\t" "1:\n\t" "decl %%ecx\n\t" "jne 1b\n\t" ); The i386 version of the counter asm doesn't support the immediate constraint for technical reasons. 64 bit counters are too large and slow to use on i386, especially when they are implemented as they are without races. Bruce From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 22:45:43 2013 Return-Path: Delivered-To: svn-src-head@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 8ED12195; Thu, 20 Jun 2013 22:45:43 +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 559311B11; Thu, 20 Jun 2013 22:45:42 +0000 (UTC) Received: from c122-106-156-23.carlnfd1.nsw.optusnet.com.au (c122-106-156-23.carlnfd1.nsw.optusnet.com.au [122.106.156.23]) by mail109.syd.optusnet.com.au (Postfix) with ESMTPS id 18E03123F17; Fri, 21 Jun 2013 08:45:33 +1000 (EST) Date: Fri, 21 Jun 2013 08:45:32 +1000 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Bruce Evans Subject: Re: svn commit: r252032 - head/sys/amd64/include In-Reply-To: <20130621065839.J916@besplex.bde.org> Message-ID: <20130621081116.E1151@besplex.bde.org> References: <201306201430.r5KEU4G5049115@svn.freebsd.org> <20130621065839.J916@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.0 cv=eqSHVfVX c=1 sm=1 a=0l9hOOMEwYoA:10 a=kj9zAlcOel0A:10 a=PO7r1zJSAAAA:8 a=JzwRw_2MAAAA:8 a=gvJhbHXk4isA:10 a=ZWu6qTPcdpYG9e4PV5AA:9 a=CjuIK1q_8ugA:10 a=ebeQFi2P/qHVC0Yw9JDJ4g==:117 Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org, Konstantin Belousov X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 22:45:43 -0000 On Fri, 21 Jun 2013, I wrote: > On Thu, 20 Jun 2013, Konstantin Belousov wrote: >> ... >> @@ -44,7 +44,7 @@ counter_u64_add(counter_u64_t c, int64_t >> ... > The i386 version of the counter asm doesn't support the immediate > constraint for technical reasons. 64 bit counters are too large and > slow to use on i386, especially when they are implemented as they are > without races. Actual testing showed that it is only about twice as slow as a direct increment. With the enclosed test program (a userland version hacked on a bit to avoid pcpu), on ref10-i386 the times are: - loop overhead: 1 cycle - direct unlocked increment of a uint32_t: 6 cycles - direct unlocked increment of a uint64_t: 7 cycles - non-inline function unlocked increment of a uint64_t: 7.5 cycles - counter_u64_add(): 14 cycles - non-inline counter_u64_add(): 18 cycles Add many more when critical_enter()/exit() is needed. I thought that a direct increment of a uint32_t took only 3 cycles. This is the documented time for i486. 4 cycles latency is documented for AthlonxXP/64. The carry check for incrementing a uint64_t is pipelined on most modern i386, so it adds very little to this. Nevertheless, the correct implementation of counters, once you have the complexity of a counter API and can't just do counter++, is to use small counters and run a daemon to accumulate them in larger counters before they overflow. pcpu accesses should allow simple counter++ accesses to work for the smaller counters (except their address is in pcpu space). But I don't see how sysctl accesses can work without lots of context switches to reach strictly per-CPU context. The current accumulation of pcpu counters in places like vcnt() doesn't do that -- it accesses pcpu counters for other CPUs, so has races. The races are more serious for accumulating counters into larger ones. Then the smaller ones need to be cleared atomically with copying them. The accumulation daemon(s) can run per-CPU more easily than sysctls, since the daemons don't need to run as frequently as sysctls might. Bruce From owner-svn-src-head@FreeBSD.ORG Thu Jun 20 23:04:42 2013 Return-Path: Delivered-To: svn-src-head@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 4E0FA78A; Thu, 20 Jun 2013 23:04:42 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail108.syd.optusnet.com.au (mail108.syd.optusnet.com.au [211.29.132.59]) by mx1.freebsd.org (Postfix) with ESMTP id 138151BC3; Thu, 20 Jun 2013 23:04:41 +0000 (UTC) Received: from c122-106-156-23.carlnfd1.nsw.optusnet.com.au (c122-106-156-23.carlnfd1.nsw.optusnet.com.au [122.106.156.23]) by mail108.syd.optusnet.com.au (Postfix) with ESMTPS id 34A8C1A0B10; Fri, 21 Jun 2013 09:04:35 +1000 (EST) Date: Fri, 21 Jun 2013 09:04:34 +1000 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Bruce Evans Subject: Re: svn commit: r252032 - head/sys/amd64/include In-Reply-To: <20130621081116.E1151@besplex.bde.org> Message-ID: <20130621090207.F1318@besplex.bde.org> References: <201306201430.r5KEU4G5049115@svn.freebsd.org> <20130621065839.J916@besplex.bde.org> <20130621081116.E1151@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.0 cv=eqSHVfVX c=1 sm=1 a=0l9hOOMEwYoA:10 a=kj9zAlcOel0A:10 a=PO7r1zJSAAAA:8 a=JzwRw_2MAAAA:8 a=gvJhbHXk4isA:10 a=WtSis1_khTDf0p0YjwUA:9 a=CjuIK1q_8ugA:10 a=ebeQFi2P/qHVC0Yw9JDJ4g==:117 Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org, Konstantin Belousov X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 23:04:42 -0000 On Fri, 21 Jun 2013, Bruce Evans wrote: > On Fri, 21 Jun 2013, I wrote: > >> On Thu, 20 Jun 2013, Konstantin Belousov wrote: >>> ... >>> @@ -44,7 +44,7 @@ counter_u64_add(counter_u64_t c, int64_t >>> ... >> The i386 version of the counter asm doesn't support the immediate >> constraint for technical reasons. 64 bit counters are too large and >> slow to use on i386, especially when they are implemented as they are >> without races. > > Actual testing showed that it is only about twice as slow as a direct > increment. With the enclosed test program (a userland version hacked > on a bit to avoid pcpu), on ref10-i386 the times are: > - loop overhead: 1 cycle > - direct unlocked increment of a uint32_t: 6 cycles > - direct unlocked increment of a uint64_t: 7 cycles > - non-inline function unlocked increment of a uint64_t: 7.5 cycles > - counter_u64_add(): 14 cycles > - non-inline counter_u64_add(): 18 cycles > ... Actually enclosing the test program: % #include % #include % % static inline void % counter_64_inc_8b(volatile uint64_t *p, int64_t inc) % { % % __asm __volatile( % "movl %%ds:(%%esi),%%eax\n\t" % "movl %%ds:4(%%esi),%%edx\n" % "1:\n\t" % "movl %%eax,%%ebx\n\t" % "movl %%edx,%%ecx\n\t" % "addl (%%edi),%%ebx\n\t" % "adcl 4(%%edi),%%ecx\n\t" % "cmpxchg8b %%ds:(%%esi)\n\t" % "jnz 1b" % : % : "S" (p), "D" (&inc) % : "memory", "cc", "eax", "edx", "ebx", "ecx"); % } % % uint32_t cpu_feature = 1; % % typedef volatile uint64_t *counter_u64_t; % % static void % #if 1 % inline % #else % __noinline % #endif % counter_u64_add(counter_u64_t c, int64_t inc) % { % % #if 1 % if ((cpu_feature & 1) == 1) { % counter_64_inc_8b(c, inc); % } % #elif 0 % if ((cpu_feature & 1) == 1) { % *c += inc; % } % #else % *c += inc; % #endif % } % % uint64_t mycounter[1]; % % int % main(void) % { % unsigned i; % % for (i = 0; i < 1861955704; i++) /* sysctl -n machdep.tsc_freq */ % counter_u64_add(mycounter, 1); % printf("%ju\n", (uintmax_t)mycounter[0]); % } Bruce From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 01:47:23 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 03C7F15C; Fri, 21 Jun 2013 01:47:23 +0000 (UTC) (envelope-from hrs@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id EABF3117C; Fri, 21 Jun 2013 01:47:22 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5L1lMVf068540; Fri, 21 Jun 2013 01:47:22 GMT (envelope-from hrs@svn.freebsd.org) Received: (from hrs@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5L1lMhY068539; Fri, 21 Jun 2013 01:47:22 GMT (envelope-from hrs@svn.freebsd.org) Message-Id: <201306210147.r5L1lMhY068539@svn.freebsd.org> From: Hiroki Sato Date: Fri, 21 Jun 2013 01:47:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252051 - head/sbin/mdconfig X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 01:47:23 -0000 Author: hrs Date: Fri Jun 21 01:47:22 2013 New Revision: 252051 URL: http://svnweb.freebsd.org/changeset/base/252051 Log: - Use length of _PATH_DEV instead of a hardcoded value[*]. - Use MD_NAME for "md". Pointed out by: trasz [*] MFC after: 1 week Modified: head/sbin/mdconfig/mdconfig.c Modified: head/sbin/mdconfig/mdconfig.c ============================================================================== --- head/sbin/mdconfig/mdconfig.c Fri Jun 21 01:22:29 2013 (r252050) +++ head/sbin/mdconfig/mdconfig.c Fri Jun 21 01:47:22 2013 (r252051) @@ -216,8 +216,8 @@ main(int argc, char **argv) errx(1, "unknown suffix on -s argument"); break; case 'u': - if (!strncmp(optarg, _PATH_DEV, 5)) - optarg += 5; + if (!strncmp(optarg, _PATH_DEV, sizeof(_PATH_DEV) - 1)) + optarg += sizeof(_PATH_DEV) - 1; if (!strncmp(optarg, MD_NAME, sizeof(MD_NAME) - 1)) optarg += sizeof(MD_NAME) - 1; uflag = optarg; @@ -510,7 +510,7 @@ static int md_find(const char *list, const char *name) { int ret; - char num[16]; + char num[PATH_MAX]; char *ptr, *p, *u; ret = 0; @@ -518,10 +518,10 @@ md_find(const char *list, const char *na if (ptr == NULL) return (-1); for (p = ptr; (u = strsep(&p, ",")) != NULL;) { - if (strncmp(u, _PATH_DEV, 5) == 0) - u += 5; + if (strncmp(u, _PATH_DEV, sizeof(_PATH_DEV) - 1) == 0) + u += sizeof(_PATH_DEV) - 1; /* Just in case user specified number instead of full name */ - snprintf(num, sizeof(num), "md%s", u); + snprintf(num, sizeof(num), "%s%s", MD_NAME, u); if (strcmp(u, name) == 0 || strcmp(num, name) == 0) { ret = 1; break; From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 02:15:28 2013 Return-Path: Delivered-To: svn-src-head@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 0909B7E7; Fri, 21 Jun 2013 02:15:28 +0000 (UTC) (envelope-from lstewart@freebsd.org) Received: from lauren.room52.net (lauren.room52.net [210.50.193.198]) by mx1.freebsd.org (Postfix) with ESMTP id C444A12E9; Fri, 21 Jun 2013 02:15:27 +0000 (UTC) Received: from lstewart.caia.swin.edu.au (lstewart.caia.swin.edu.au [136.186.229.95]) by lauren.room52.net (Postfix) with ESMTPSA id 02C977E81E; Fri, 21 Jun 2013 12:15:24 +1000 (EST) Message-ID: <51C3B73C.70900@freebsd.org> Date: Fri, 21 Jun 2013 12:15:24 +1000 From: Lawrence Stewart User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130521 Thunderbird/17.0.6 MIME-Version: 1.0 To: Konstantin Belousov Subject: Re: svn commit: r252032 - head/sys/amd64/include References: <201306201430.r5KEU4G5049115@svn.freebsd.org> In-Reply-To: <201306201430.r5KEU4G5049115@svn.freebsd.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=0.0 required=5.0 tests=UNPARSEABLE_RELAY autolearn=unavailable version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on lauren.room52.net Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 02:15:28 -0000 Hi Kostik, On 06/21/13 00:30, Konstantin Belousov wrote: > Author: kib > Date: Thu Jun 20 14:30:04 2013 > New Revision: 252032 > URL: http://svnweb.freebsd.org/changeset/base/252032 > > Log: > Allow immediate operand. > > Sponsored by: The FreeBSD Foundation > > Modified: > head/sys/amd64/include/counter.h > > Modified: head/sys/amd64/include/counter.h > ============================================================================== > --- head/sys/amd64/include/counter.h Thu Jun 20 14:20:03 2013 (r252031) > +++ head/sys/amd64/include/counter.h Thu Jun 20 14:30:04 2013 (r252032) > @@ -44,7 +44,7 @@ counter_u64_add(counter_u64_t c, int64_t > > __asm __volatile("addq\t%1,%%gs:(%0)" > : > - : "r" ((char *)c - (char *)&__pcpu[0]), "r" (inc) > + : "r" ((char *)c - (char *)&__pcpu[0]), "ri" (inc) > : "memory", "cc"); > } For mere mortals like myself, a verbose explanation of what this does, why it's necessary and what problem(s) it solves (if any) would be most helpful :) Cheers, Lawrence From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 03:37:36 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 2EEF0358; Fri, 21 Jun 2013 03:37:36 +0000 (UTC) (envelope-from lstewart@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id BA64517BF; Fri, 21 Jun 2013 03:37:35 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5L3bZ2w004659; Fri, 21 Jun 2013 03:37:35 GMT (envelope-from lstewart@svn.freebsd.org) Received: (from lstewart@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5L3bZNF004658; Fri, 21 Jun 2013 03:37:35 GMT (envelope-from lstewart@svn.freebsd.org) Message-Id: <201306210337.r5L3bZNF004658@svn.freebsd.org> From: Lawrence Stewart Date: Fri, 21 Jun 2013 03:37:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252052 - 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-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 03:37:36 -0000 Author: lstewart Date: Fri Jun 21 03:37:35 2013 New Revision: 252052 URL: http://svnweb.freebsd.org/changeset/base/252052 Log: Non-virtualised hhook points are supported as of r251732. MFC after: 1 week X-MFC with: 251732 Modified: head/share/man/man9/hhook.9 Modified: head/share/man/man9/hhook.9 ============================================================================== --- head/share/man/man9/hhook.9 Fri Jun 21 01:47:22 2013 (r252051) +++ head/share/man/man9/hhook.9 Fri Jun 21 03:37:35 2013 (r252052) @@ -30,7 +30,7 @@ .\" .\" $FreeBSD$ .\" -.Dd February 15, 2011 +.Dd June 21, 2013 .Dt HHOOK 9 .Os .Sh NAME @@ -380,9 +380,3 @@ This manual page was written by .An David Hayes Aq david.hayes@ieee.org and .An Lawrence Stewart Aq lstewart@FreeBSD.org . -.Sh BUGS -The framework does not currently support registering hook points in subsystems -which have not been virtualised with VIMAGE. -Fairly minimal internal changes to the -.Nm -implementation are required to address this. From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 06:32:52 2013 Return-Path: Delivered-To: svn-src-head@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 1E90DB28; Fri, 21 Jun 2013 06:32:52 +0000 (UTC) (envelope-from kostikbel@gmail.com) Received: from kib.kiev.ua (kib.kiev.ua [IPv6:2001:470:d5e7:1::1]) by mx1.freebsd.org (Postfix) with ESMTP id B46FC1C09; Fri, 21 Jun 2013 06:32:51 +0000 (UTC) Received: from tom.home (kostik@localhost [127.0.0.1]) by kib.kiev.ua (8.14.7/8.14.7) with ESMTP id r5L6WmdV095819; Fri, 21 Jun 2013 09:32:48 +0300 (EEST) (envelope-from kostikbel@gmail.com) DKIM-Filter: OpenDKIM Filter v2.8.3 kib.kiev.ua r5L6WmdV095819 Received: (from kostik@localhost) by tom.home (8.14.7/8.14.7/Submit) id r5L6Wm5T095818; Fri, 21 Jun 2013 09:32:48 +0300 (EEST) (envelope-from kostikbel@gmail.com) X-Authentication-Warning: tom.home: kostik set sender to kostikbel@gmail.com using -f Date: Fri, 21 Jun 2013 09:32:48 +0300 From: Konstantin Belousov To: Lawrence Stewart Subject: Re: svn commit: r252032 - head/sys/amd64/include Message-ID: <20130621063248.GN91021@kib.kiev.ua> References: <201306201430.r5KEU4G5049115@svn.freebsd.org> <51C3B73C.70900@freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="Lv9rZMuwYml21e6Z" Content-Disposition: inline In-Reply-To: <51C3B73C.70900@freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) 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 version=3.3.2 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on tom.home Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 06:32:52 -0000 --Lv9rZMuwYml21e6Z Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Jun 21, 2013 at 12:15:24PM +1000, Lawrence Stewart wrote: > Hi Kostik, >=20 > On 06/21/13 00:30, Konstantin Belousov wrote: > > Author: kib > > Date: Thu Jun 20 14:30:04 2013 > > New Revision: 252032 > > URL: http://svnweb.freebsd.org/changeset/base/252032 > >=20 > > Log: > > Allow immediate operand. > > =20 > > Sponsored by: The FreeBSD Foundation > >=20 > > Modified: > > head/sys/amd64/include/counter.h > >=20 > > Modified: head/sys/amd64/include/counter.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/amd64/include/counter.h Thu Jun 20 14:20:03 2013 (r252031) > > +++ head/sys/amd64/include/counter.h Thu Jun 20 14:30:04 2013 (r252032) > > @@ -44,7 +44,7 @@ counter_u64_add(counter_u64_t c, int64_t > > =20 > > __asm __volatile("addq\t%1,%%gs:(%0)" > > : > > - : "r" ((char *)c - (char *)&__pcpu[0]), "r" (inc) > > + : "r" ((char *)c - (char *)&__pcpu[0]), "ri" (inc) > > : "memory", "cc"); > > } >=20 > For mere mortals like myself, a verbose explanation of what this does, > why it's necessary and what problem(s) it solves (if any) would be most > helpful :) It does what was written in the commit message. The addq instructions is allowed to take the immediate operand, besides the register, for the increment value. For the typical case of incrementing by the constant 1, before the commit, the emited code was like movl $1,%ecx addq %ecx,%gs(%rdx) now it could be addq $1,%gs(%rdx) Mostly aestetic, also slightly lowering the registers pressure. --Lv9rZMuwYml21e6Z Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iQIcBAEBAgAGBQJRw/OPAAoJEJDCuSvBvK1BFQQP/2o51rsAef7M6zzoHUnMMfJQ UknRxPbEEnbwgiZdEsIvPMZCQaF7Ohs/BJdGF5WHt8X9U93smhxzfPGyeseRLZ0f ZO0F0s22HEPepoXfB6iQHwi8+MecGYqc1Y9OTqIlk7zxVPCgFgSRX6FTxV211fNl NkSRzsmKp7GsFT8/qPbUqmlWri+SdSvNy1OvZnVH8bh/7MuXslmSVVmvvSV7HMaB aghcVobKosRDqimXDI4P3AVMIXYrpc7/e0DwEERxB3pSeUmsq7pL51OlkQTZpQQy OhNbG52LO690l1eE1p2o71zxBnlYTQNAlDVoFcwGeIwtVvJW/3w4XI362BiarY8o r0lS3Y8rSiD0etBNq+JOner1PMPc8F/qx/a9s8fA/wgd2WI56n3pwGTIaYMnuq0s I0L9XE0rng4SbziUs+R3qfHeC4cCsjuY3OiNb+P7zSCJGaBhNfd8ocht0ulHVQa1 0WjKvpMrbyw6iknA+SPJ0LhkseAUvRfTn/OVNitRlZCeBw39jON05swerJg0SvqX lUTl4GwJSXoDgW+bFqbhUt9nDtv5WCdLzTh48YjxuVuMmOkye30RCy7c5DWxl5cE rn3Ooh8ZNwtxR5kvWyr90cfW4UyEmep1AKb0pYJnpTYBbh78mlovibq/YAP5jf8j JG7mBrVkryvAj4aQEhqo =528p -----END PGP SIGNATURE----- --Lv9rZMuwYml21e6Z-- From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 06:36:27 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id F1DCCD15; Fri, 21 Jun 2013 06:36:26 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id E475B1C46; Fri, 21 Jun 2013 06:36:26 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5L6aQbf061016; Fri, 21 Jun 2013 06:36:26 GMT (envelope-from glebius@svn.freebsd.org) Received: (from glebius@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5L6aQUr061014; Fri, 21 Jun 2013 06:36:26 GMT (envelope-from glebius@svn.freebsd.org) Message-Id: <201306210636.r5L6aQUr061014@svn.freebsd.org> From: Gleb Smirnoff Date: Fri, 21 Jun 2013 06:36:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252055 - head/sys/netinet X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 06:36:27 -0000 Author: glebius Date: Fri Jun 21 06:36:26 2013 New Revision: 252055 URL: http://svnweb.freebsd.org/changeset/base/252055 Log: Fix kmod_*stat_inc() after r249276. The incorrect code actually increased the pointer, not the memory it points to. In collaboration with: kib Reported & tested by: Ian FREISLICH Sponsored by: Nginx, Inc. Modified: head/sys/netinet/ip_input.c head/sys/netinet/tcp_input.c Modified: head/sys/netinet/ip_input.c ============================================================================== --- head/sys/netinet/ip_input.c Fri Jun 21 06:28:55 2013 (r252054) +++ head/sys/netinet/ip_input.c Fri Jun 21 06:36:26 2013 (r252055) @@ -283,14 +283,14 @@ void kmod_ipstat_inc(int statnum) { - counter_u64_add((counter_u64_t )&V_ipstatp + statnum, 1); + counter_u64_add(*((counter_u64_t *)&V_ipstatp + statnum), 1); } void kmod_ipstat_dec(int statnum) { - counter_u64_add((counter_u64_t )&V_ipstatp + statnum, -1); + counter_u64_add(*((counter_u64_t *)&V_ipstatp + statnum), -1); } static int Modified: head/sys/netinet/tcp_input.c ============================================================================== --- head/sys/netinet/tcp_input.c Fri Jun 21 06:28:55 2013 (r252054) +++ head/sys/netinet/tcp_input.c Fri Jun 21 06:36:26 2013 (r252055) @@ -309,7 +309,7 @@ void kmod_tcpstat_inc(int statnum) { - counter_u64_add((counter_u64_t )&V_tcpstatp + statnum, 1); + counter_u64_add(*((counter_u64_t *)&V_tcpstatp + statnum), 1); } /* From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 06:49:10 2013 Return-Path: Delivered-To: svn-src-head@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 409B1120; Fri, 21 Jun 2013 06:49:10 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from cell.glebius.int.ru (glebius.int.ru [81.19.69.10]) by mx1.freebsd.org (Postfix) with ESMTP id B3ECE1CD9; Fri, 21 Jun 2013 06:49:08 +0000 (UTC) Received: from cell.glebius.int.ru (localhost [127.0.0.1]) by cell.glebius.int.ru (8.14.7/8.14.7) with ESMTP id r5L6n1Ad019590; Fri, 21 Jun 2013 10:49:01 +0400 (MSK) (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by cell.glebius.int.ru (8.14.7/8.14.7/Submit) id r5L6n1Qe019589; Fri, 21 Jun 2013 10:49:01 +0400 (MSK) (envelope-from glebius@FreeBSD.org) X-Authentication-Warning: cell.glebius.int.ru: glebius set sender to glebius@FreeBSD.org using -f Date: Fri, 21 Jun 2013 10:49:01 +0400 From: Gleb Smirnoff To: Bruce Evans Subject: Re: svn commit: r252032 - head/sys/amd64/include Message-ID: <20130621064901.GS1214@FreeBSD.org> References: <201306201430.r5KEU4G5049115@svn.freebsd.org> <20130621065839.J916@besplex.bde.org> <20130621081116.E1151@besplex.bde.org> <20130621090207.F1318@besplex.bde.org> MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline In-Reply-To: <20130621090207.F1318@besplex.bde.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org, Konstantin Belousov X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 06:49:10 -0000 Bruce, On Fri, Jun 21, 2013 at 09:04:34AM +1000, Bruce Evans wrote: B> >> The i386 version of the counter asm doesn't support the immediate B> >> constraint for technical reasons. 64 bit counters are too large and B> >> slow to use on i386, especially when they are implemented as they are B> >> without races. B> > B> > Actual testing showed that it is only about twice as slow as a direct B> > increment. With the enclosed test program (a userland version hacked B> > on a bit to avoid pcpu), on ref10-i386 the times are: B> > - loop overhead: 1 cycle B> > - direct unlocked increment of a uint32_t: 6 cycles B> > - direct unlocked increment of a uint64_t: 7 cycles B> > - non-inline function unlocked increment of a uint64_t: 7.5 cycles B> > - counter_u64_add(): 14 cycles B> > - non-inline counter_u64_add(): 18 cycles B> > ... B> B> Actually enclosing the test program: B> B> % #include B> % #include B> % B> % static inline void B> % counter_64_inc_8b(volatile uint64_t *p, int64_t inc) B> % { B> % B> % __asm __volatile( B> % "movl %%ds:(%%esi),%%eax\n\t" B> % "movl %%ds:4(%%esi),%%edx\n" B> % "1:\n\t" B> % "movl %%eax,%%ebx\n\t" B> % "movl %%edx,%%ecx\n\t" B> % "addl (%%edi),%%ebx\n\t" B> % "adcl 4(%%edi),%%ecx\n\t" B> % "cmpxchg8b %%ds:(%%esi)\n\t" B> % "jnz 1b" B> % : B> % : "S" (p), "D" (&inc) B> % : "memory", "cc", "eax", "edx", "ebx", "ecx"); B> % } B> % B> % uint32_t cpu_feature = 1; B> % B> % typedef volatile uint64_t *counter_u64_t; B> % B> % static void B> % #if 1 B> % inline B> % #else B> % __noinline B> % #endif B> % counter_u64_add(counter_u64_t c, int64_t inc) B> % { B> % B> % #if 1 B> % if ((cpu_feature & 1) == 1) { B> % counter_64_inc_8b(c, inc); B> % } B> % #elif 0 B> % if ((cpu_feature & 1) == 1) { B> % *c += inc; B> % } B> % #else B> % *c += inc; B> % #endif B> % } B> % B> % uint64_t mycounter[1]; B> % B> % int B> % main(void) B> % { B> % unsigned i; B> % B> % for (i = 0; i < 1861955704; i++) /* sysctl -n machdep.tsc_freq */ B> % counter_u64_add(mycounter, 1); B> % printf("%ju\n", (uintmax_t)mycounter[0]); B> % } Yes, for a single threaded userland program using "+=" is faster than all the magic that counter(9) does. But when multiple threads need to access one counter "+=" fails both with precision and with performance. Using "+=" upon a per-CPU counter is racy, since += is compiled into "load", "increment", "store" sequence and if we are not in a critical section, then this is racy. We might be removed from CPU between load and store. Entering critical section means modifying curthread, which is again a %gs based load & store. Exiting critical section has the same cost. Thus, we assume that doing a direct %gs based update on the counter is cheaper than critical_enter(); counter += foo; critical_exit(); -- Totus tuus, Glebius. From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 11:09:04 2013 Return-Path: Delivered-To: svn-src-head@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id CA3E4A76; Fri, 21 Jun 2013 11:09:04 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from fallbackmx08.syd.optusnet.com.au (fallbackmx08.syd.optusnet.com.au [211.29.132.10]) by mx1.freebsd.org (Postfix) with ESMTP id 0916D1A3E; Fri, 21 Jun 2013 11:09:03 +0000 (UTC) Received: from mail09.syd.optusnet.com.au (mail09.syd.optusnet.com.au [211.29.132.190]) by fallbackmx08.syd.optusnet.com.au (8.13.1/8.13.1) with ESMTP id r5LB2kYb022743; Fri, 21 Jun 2013 21:02:46 +1000 Received: from c122-106-156-23.carlnfd1.nsw.optusnet.com.au (c122-106-156-23.carlnfd1.nsw.optusnet.com.au [122.106.156.23]) by mail09.syd.optusnet.com.au (8.13.1/8.13.1) with ESMTP id r5LB2aHm006530 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Fri, 21 Jun 2013 21:02:37 +1000 Date: Fri, 21 Jun 2013 21:02:36 +1000 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Gleb Smirnoff Subject: Re: svn commit: r252032 - head/sys/amd64/include In-Reply-To: <20130621064901.GS1214@FreeBSD.org> Message-ID: <20130621184140.G848@besplex.bde.org> References: <201306201430.r5KEU4G5049115@svn.freebsd.org> <20130621065839.J916@besplex.bde.org> <20130621081116.E1151@besplex.bde.org> <20130621090207.F1318@besplex.bde.org> <20130621064901.GS1214@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.0 cv=K8x6hFqI c=1 sm=1 a=0l9hOOMEwYoA:10 a=kj9zAlcOel0A:10 a=PO7r1zJSAAAA:8 a=JzwRw_2MAAAA:8 a=gvJhbHXk4isA:10 a=brvd3ams5qBvMtLCjC0A:9 a=CjuIK1q_8ugA:10 a=ebeQFi2P/qHVC0Yw9JDJ4g==:117 Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org, Konstantin Belousov , Bruce Evans X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 11:09:04 -0000 On Fri, 21 Jun 2013, Gleb Smirnoff wrote: > On Fri, Jun 21, 2013 at 09:04:34AM +1000, Bruce Evans wrote: > B> >> The i386 version of the counter asm doesn't support the immediate > B> >> constraint for technical reasons. 64 bit counters are too large and > B> >> slow to use on i386, especially when they are implemented as they are > B> >> without races. > B> > > B> > Actual testing showed that it is only about twice as slow as a direct > B> > increment. With the enclosed test program (a userland version hacked > B> > on a bit to avoid pcpu), on ref10-i386 the times are: > ... > Yes, for a single threaded userland program using "+=" is faster than > all the magic that counter(9) does. > > But when multiple threads need to access one counter "+=" fails both > with precision and with performance. No. But I forgot about the performance aspect. > Using "+=" upon a per-CPU counter is racy, since += is compiled into > "load", "increment", "store" sequence and if we are not in a critical > section, then this is racy. We might be removed from CPU between load > and store. Not if it is a 32-bit increment on 32-bit systems, as it should be. I said to use a daemon to convert small (16 or 32 bit) counters into larger (32 or 64 bit) ones. It is almost as efficient to call the accumulation code directly: addl %1,%fs:(%0) jns 1f call counter_accum 1: This calls the accumulation code when the counter goes above 0x80000000. The accumulation code then uses cmpxchg8b or a critical section to atomically transfer everything in the small counter to the large counter. Note that the small counter remains valid at all times unless it is incrememnted too fast. Code that reports the counters must also use cmpxch8b or a critical section to read them atomically before summing them. The transfer window between when the small counter reaches 0x80000000 and when it overflows is very large provided large increments are never made (2 increments of 0x80000000 would break it immediately, but an average increment of 1 takes about a minute to reach 0x80000000 even if called from a loop doing nothing except the increment). Only 32-bit increments that are not too large are supported. Negative increments are handed by a heuristic in the accumulator. E.g., an increment of -1 just works unless it causes the small counter's value to go from 0 to 0xfffffffff. 0xffffffff is detected by the sign test. It must be interpreted as -1 to be added to the large counter, not 0xffffffff. The full heuristic would be something like: if (small_counter >= 0xf0000000) { /* Subtract from large counter. */ /* Actually do this atomically, of course. */ large_counter += (int32_t)small_counter; small_counter = 0; /* * Add here sanity checks that the large counter never goes * negative. This can only be afforded because this code * is rarely called (and is not inline). */ } else if (small_counter < 0x90000000) { /* Add to large counter. large_counter += small_counter; small_counter = 0; } else { panic("transfer window too small"); } > Entering critical section means modifying curthread, which is again > a %gs based load & store. Exiting critical section has the same cost. > Thus, we assume that doing a direct %gs based update on the counter > is cheaper than critical_enter(); counter += foo; critical_exit(); Critical sections actually only modifiy td->td_critnest, so they do a single %fs-based load and 2 %ds-based modifications (it's %fs for i386 and %gs for amd64). So it's far from clear that the direct update is faster than the generic i386 code. Avoiding the generic i386 code also takes an extra load, test and branch. The generic code reduces to something like the following instructions after inlining the critical section: movl %gs:CURTHREAD,%ebx incl TD_CRITNEST(%ebx) movl counter_arg,%edi movl inc_lo,%eax movl inc_hi,%edx addl %eax,%fs:(%edi) adcl %edx,%fs:4(%edi) 1: decl TD_CRITNEST(%ebx) while the non-generic code for the best case when cmpxchg8b is supported is something like: testl $CPUID_CX8,cpu_feature je 2f movl counter_arg,%esi movl ptr_to_inc,%edi # might need more insns to init *ptr // 8 instructions here from the asm string. jmp 3f # actually rearrange to jump in other case 2: // Use critical section. 3: So using cmpxchg8b takes at least 4 more instructions than using a critical section. The incl/decl instructions on td_critnest are rather slow, however. According to my test, they take 6 cycles each. (I think they can be reduced to load; modify; store; ... store back original value which should take more like 9 cycles.) This probably applies to the addl and adcl that do the work too. 12 cycles for them, and just 2 more cycles (pipelined) for cmpxchg8b and all the other setup instructions. Now, how does the performance aspect work? Is it by cmpxch8b causing less contention than direct addl to memory? If so, then hopefully plain cmpxchg does the same. The non-cmpxchg version of the i386 code can probably be improved by adding more instructions to it, to avoid doing the adcl to memory in most cases. Even if you support 64-bit increments, they will rarely be used, so the branches for this will be predicted well: // Next 4 instructions as above: movl counter_arg,%edi movl inc_lo,%eax movl inc_hi,%edx addl %eax,%fs:(%edi) jnc 1f # usually no carry adcl %edx,%fs:4(%edi) jmp 3f 1: testl %edx,%edx je 3f # usually no carry and no high bits addl %edx,%fs:4(%edi) I wonder if cmpxch8b is smart enough to do this automatically, and that is the reason it is faster. It could avoid writing to the high word if the high word doesn't change. Modern x86 has write buffers that help it do 64-bit write accesses in 32-bit mode no slower than in 64-bit mode, provided the CPU can issue store instructions fast enough. Caches do the same thing for load instructions on not-so-modern x86. But often, the CPU can't issue load/store instructions fast enough. I suspect that the addl mem; adcl 4+mem sequence is a bad way to do a 64-bit increment, and load 64 bits; modify; store 64 bits is better. cmpxchg8b can also issue a 64-bit store. Testing gave the following results: - jumping over adcl as above saves almost the full cost of an adcl - load 64-bits, unconditional 64-bit add from memory to registers; store-64 bits is about 25% faster than addl; adcl to memory. Testing now on Athlon64. addl and adcl to memory each take about 7 cycles; 14 for both; only 11 for doing the 64-bit add via registers. Gcc is not smart about this. It generates addl; adcl to memory. Your asm has to do the increment in registers for technical reasons, so it does better than gcc almost (?) accidentally. But clang is smart about this. It generates the larger code that goes through registers even with -mi386 where I doubt that it is better (original i386 had no cache and slow I-fetch, so I think it strongly preferred less instructions). Your code for the critical section case doesn't use asm, so it is slower than necessary with gcc. When you found that simple increments were slower in userland tests, was that with gcc or clang? - jumping over adcl in the second method didn't seem to work. Bruce From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 12:02:10 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 56CCFD0F; Fri, 21 Jun 2013 12:02:10 +0000 (UTC) (envelope-from smh@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4873C1C7F; Fri, 21 Jun 2013 12:02:10 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5LC2AJc064436; Fri, 21 Jun 2013 12:02:10 GMT (envelope-from smh@svn.freebsd.org) Received: (from smh@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LC2ASW064435; Fri, 21 Jun 2013 12:02:10 GMT (envelope-from smh@svn.freebsd.org) Message-Id: <201306211202.r5LC2ASW064435@svn.freebsd.org> From: Steven Hartland Date: Fri, 21 Jun 2013 12:02:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252056 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 12:02:10 -0000 Author: smh Date: Fri Jun 21 12:02:09 2013 New Revision: 252056 URL: http://svnweb.freebsd.org/changeset/base/252056 Log: Fixed import of destroyed ZFS pools failing due to vdev_geom incorrectly preventing config loads from devices associated with destroyed pools. Reviewed by: avg MFC after: 1 week Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c Fri Jun 21 06:36:26 2013 (r252055) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c Fri Jun 21 12:02:09 2013 (r252056) @@ -270,8 +270,7 @@ vdev_geom_read_config(struct g_consumer continue; if (nvlist_lookup_uint64(*config, ZPOOL_CONFIG_POOL_STATE, - &state) != 0 || state == POOL_STATE_DESTROYED || - state > POOL_STATE_L2CACHE) { + &state) != 0 || state > POOL_STATE_L2CACHE) { nvlist_free(*config); *config = NULL; continue; From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 13:54:37 2013 Return-Path: Delivered-To: svn-src-head@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 3D38D598; Fri, 21 Jun 2013 13:54:37 +0000 (UTC) (envelope-from glebius@FreeBSD.org) Received: from cell.glebius.int.ru (glebius.int.ru [81.19.69.10]) by mx1.freebsd.org (Postfix) with ESMTP id B312310AD; Fri, 21 Jun 2013 13:54:36 +0000 (UTC) Received: from cell.glebius.int.ru (localhost [127.0.0.1]) by cell.glebius.int.ru (8.14.7/8.14.7) with ESMTP id r5LDsRK1021587; Fri, 21 Jun 2013 17:54:27 +0400 (MSK) (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by cell.glebius.int.ru (8.14.7/8.14.7/Submit) id r5LDsRaY021586; Fri, 21 Jun 2013 17:54:27 +0400 (MSK) (envelope-from glebius@FreeBSD.org) X-Authentication-Warning: cell.glebius.int.ru: glebius set sender to glebius@FreeBSD.org using -f Date: Fri, 21 Jun 2013 17:54:27 +0400 From: Gleb Smirnoff To: Bruce Evans Subject: Re: svn commit: r252032 - head/sys/amd64/include Message-ID: <20130621135427.GA1214@FreeBSD.org> References: <201306201430.r5KEU4G5049115@svn.freebsd.org> <20130621065839.J916@besplex.bde.org> <20130621081116.E1151@besplex.bde.org> <20130621090207.F1318@besplex.bde.org> <20130621064901.GS1214@FreeBSD.org> <20130621184140.G848@besplex.bde.org> MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Disposition: inline In-Reply-To: <20130621184140.G848@besplex.bde.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org, Konstantin Belousov X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 13:54:37 -0000 Bruce, On Fri, Jun 21, 2013 at 09:02:36PM +1000, Bruce Evans wrote: B> Not if it is a 32-bit increment on 32-bit systems, as it should be. B> B> I said to use a daemon to convert small (16 or 32 bit) counters into B> larger (32 or 64 bit) ones. It is almost as efficient to call the B> accumulation code directly: B> B> addl %1,%fs:(%0) B> jns 1f B> call counter_accum B> 1: B> B> This calls the accumulation code when the counter goes above 0x80000000. B> The accumulation code then uses cmpxchg8b or a critical section to B> atomically transfer everything in the small counter to the large B> counter. Note that the small counter remains valid at all times unless B> it is incrememnted too fast. Code that reports the counters must also B> use cmpxch8b or a critical section to read them atomically before B> summing them. The transfer window between when the small counter B> reaches 0x80000000 and when it overflows is very large provided large B> increments are never made (2 increments of 0x80000000 would break it B> immediately, but an average increment of 1 takes about a minute to B> reach 0x80000000 even if called from a loop doing nothing except the B> increment). Only 32-bit increments that are not too large are B> supported. Negative increments are handed by a heuristic in the B> accumulator. E.g., an increment of -1 just works unless it causes the B> small counter's value to go from 0 to 0xfffffffff. 0xffffffff is B> detected by the sign test. It must be interpreted as -1 to be added B> to the large counter, not 0xffffffff. The full heuristic would be B> something like: B> B> if (small_counter >= 0xf0000000) { B> /* Subtract from large counter. */ B> /* Actually do this atomically, of course. */ B> large_counter += (int32_t)small_counter; B> small_counter = 0; B> /* B> * Add here sanity checks that the large counter never goes B> * negative. This can only be afforded because this code B> * is rarely called (and is not inline). B> */ B> } else if (small_counter < 0x90000000) { B> /* Add to large counter. B> large_counter += small_counter; B> small_counter = 0; B> } else { B> panic("transfer window too small"); B> } B> B> > Entering critical section means modifying curthread, which is again B> > a %gs based load & store. Exiting critical section has the same cost. B> > Thus, we assume that doing a direct %gs based update on the counter B> > is cheaper than critical_enter(); counter += foo; critical_exit(); B> B> Critical sections actually only modifiy td->td_critnest, so they do B> a single %fs-based load and 2 %ds-based modifications (it's %fs for B> i386 and %gs for amd64). So it's far from clear that the direct B> update is faster than the generic i386 code. Avoiding the generic B> i386 code also takes an extra load, test and branch. The generic B> code reduces to something like the following instructions after inlining B> the critical section: B> B> movl %gs:CURTHREAD,%ebx B> incl TD_CRITNEST(%ebx) B> movl counter_arg,%edi B> movl inc_lo,%eax B> movl inc_hi,%edx B> addl %eax,%fs:(%edi) B> adcl %edx,%fs:4(%edi) B> 1: B> decl TD_CRITNEST(%ebx) B> B> while the non-generic code for the best case when cmpxchg8b is supported is B> something like: B> B> testl $CPUID_CX8,cpu_feature B> je 2f B> movl counter_arg,%esi B> movl ptr_to_inc,%edi # might need more insns to init *ptr B> // 8 instructions here from the asm string. B> jmp 3f # actually rearrange to jump in other case B> 2: B> // Use critical section. B> 3: B> B> B> So using cmpxchg8b takes at least 4 more instructions than using a B> critical section. The incl/decl instructions on td_critnest are rather B> slow, however. According to my test, they take 6 cycles each. (I B> think they can be reduced to load; modify; store; ... store back B> original value which should take more like 9 cycles.) This probably B> applies to the addl and adcl that do the work too. 12 cycles for them, B> and just 2 more cycles (pipelined) for cmpxchg8b and all the other B> setup instructions. B> B> Now, how does the performance aspect work? Is it by cmpxch8b causing B> less contention than direct addl to memory? If so, then hopefully B> plain cmpxchg does the same. B> B> The non-cmpxchg version of the i386 code can probably be improved by B> adding more instructions to it, to avoid doing the adcl to memory B> in most cases. Even if you support 64-bit increments, they will rarely B> be used, so the branches for this will be predicted well: B> B> // Next 4 instructions as above: B> movl counter_arg,%edi B> movl inc_lo,%eax B> movl inc_hi,%edx B> addl %eax,%fs:(%edi) B> jnc 1f # usually no carry B> adcl %edx,%fs:4(%edi) B> jmp 3f B> 1: B> testl %edx,%edx B> je 3f # usually no carry and no high bits B> addl %edx,%fs:4(%edi) B> B> I wonder if cmpxch8b is smart enough to do this automatically, and that is B> the reason it is faster. It could avoid writing to the high word if the B> high word doesn't change. Modern x86 has write buffers that help it B> do 64-bit write accesses in 32-bit mode no slower than in 64-bit mode, provided B> the CPU can issue store instructions fast enough. Caches do the same B> thing for load instructions on not-so-modern x86. But often, the CPU B> can't issue load/store instructions fast enough. I suspect that the B> addl mem; adcl 4+mem sequence is a bad way to do a 64-bit increment, and B> load 64 bits; modify; store 64 bits is better. cmpxchg8b can also issue B> a 64-bit store. B> B> Testing gave the following results: B> - jumping over adcl as above saves almost the full cost of an adcl B> - load 64-bits, unconditional 64-bit add from memory to registers; store-64 B> bits is about 25% faster than addl; adcl to memory. Testing now on B> Athlon64. addl and adcl to memory each take about 7 cycles; 14 for B> both; only 11 for doing the 64-bit add via registers. Gcc is not B> smart about this. It generates addl; adcl to memory. Your asm has B> to do the increment in registers for technical reasons, so it does B> better than gcc almost (?) accidentally. But clang is smart about B> this. It generates the larger code that goes through registers even B> with -mi386 where I doubt that it is better (original i386 had no B> cache and slow I-fetch, so I think it strongly preferred less B> instructions). Your code for the critical section case doesn't use B> asm, so it is slower than necessary with gcc. When you found that B> simple increments were slower in userland tests, was that with gcc B> or clang? B> - jumping over adcl in the second method didn't seem to work. May be you are right and an implementation with a "daemon" would be more efficient for i386. But daemon isn't needed at all on 64-bit platforms. So I doubt it is worth coding it. Frankly speaking, we already do not consider the i386 as a platform to build high performance solutions. The need for counter(9) in TCP/IP stack was demonstrated on modern amd64 hardware. Thus, our motivation was to make: - a lossless and faster implementation for amd64 - a lossless implementation for !amd64 - if we have an option to avoid critical section on some arch, good let's avoid it. -- Totus tuus, Glebius. From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 15:30:47 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 67EE8DCE; Fri, 21 Jun 2013 15:30:47 +0000 (UTC) (envelope-from smh@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5ABB316DB; Fri, 21 Jun 2013 15:30:47 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5LFUlrX029511; Fri, 21 Jun 2013 15:30:47 GMT (envelope-from smh@svn.freebsd.org) Received: (from smh@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LFUlfn029510; Fri, 21 Jun 2013 15:30:47 GMT (envelope-from smh@svn.freebsd.org) Message-Id: <201306211530.r5LFUlfn029510@svn.freebsd.org> From: Steven Hartland Date: Fri, 21 Jun 2013 15:30:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252059 - head/cddl/contrib/opensolaris/cmd/zpool X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 15:30:47 -0000 Author: smh Date: Fri Jun 21 15:30:46 2013 New Revision: 252059 URL: http://svnweb.freebsd.org/changeset/base/252059 Log: Fixed ZFS zpool freeze (debug command) not processing due to invalid ioctl call syntax. MFC after: 1 week Modified: head/cddl/contrib/opensolaris/cmd/zpool/zpool_main.c Modified: head/cddl/contrib/opensolaris/cmd/zpool/zpool_main.c ============================================================================== --- head/cddl/contrib/opensolaris/cmd/zpool/zpool_main.c Fri Jun 21 15:30:18 2013 (r252058) +++ head/cddl/contrib/opensolaris/cmd/zpool/zpool_main.c Fri Jun 21 15:30:46 2013 (r252059) @@ -5344,10 +5344,9 @@ main(int argc, char **argv) * 'freeze' is a vile debugging abomination, so we treat * it as such. */ - char buf[16384]; - int fd = open(ZFS_DEV, O_RDWR); - (void) strcpy((void *)buf, argv[2]); - return (!!ioctl(fd, ZFS_IOC_POOL_FREEZE, buf)); + zfs_cmd_t zc = { 0 }; + (void) strlcpy(zc.zc_name, argv[2], sizeof (zc.zc_name)); + return (!!zfs_ioctl(g_zfs, ZFS_IOC_POOL_FREEZE, &zc)); } else { (void) fprintf(stderr, gettext("unrecognized " "command '%s'\n"), cmdname); From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 15:47:11 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 45CD6211; Fri, 21 Jun 2013 15:47:11 +0000 (UTC) (envelope-from smh@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 38E911772; Fri, 21 Jun 2013 15:47:11 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5LFlB7d034854; Fri, 21 Jun 2013 15:47:11 GMT (envelope-from smh@svn.freebsd.org) Received: (from smh@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LFlBJc034853; Fri, 21 Jun 2013 15:47:11 GMT (envelope-from smh@svn.freebsd.org) Message-Id: <201306211547.r5LFlBJc034853@svn.freebsd.org> From: Steven Hartland Date: Fri, 21 Jun 2013 15:47:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252060 - head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 15:47:11 -0000 Author: smh Date: Fri Jun 21 15:47:10 2013 New Revision: 252060 URL: http://svnweb.freebsd.org/changeset/base/252060 Log: Fix intermittent ZFS lock panic when kernel is compiled with debugging caused by access of uninitialized smlock in mmutex_init. MFC after: 1 week Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Modified: head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Fri Jun 21 15:30:46 2013 (r252059) +++ head/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c Fri Jun 21 15:47:10 2013 (r252060) @@ -1836,6 +1836,7 @@ vdev_dtl_sync(vdev_t *vd, uint64_t txg) vdev_config_dirty(vd->vdev_top); } + bzero(&smlock, sizeof (smlock)); mutex_init(&smlock, NULL, MUTEX_DEFAULT, NULL); space_map_create(&smsync, sm->sm_start, sm->sm_size, sm->sm_shift, From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 15:55:03 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id B0A9C41A; Fri, 21 Jun 2013 15:55:03 +0000 (UTC) (envelope-from smh@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id A401217B2; Fri, 21 Jun 2013 15:55:03 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5LFt3IZ037599; Fri, 21 Jun 2013 15:55:03 GMT (envelope-from smh@svn.freebsd.org) Received: (from smh@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LFt3K7037598; Fri, 21 Jun 2013 15:55:03 GMT (envelope-from smh@svn.freebsd.org) Message-Id: <201306211555.r5LFt3K7037598@svn.freebsd.org> From: Steven Hartland Date: Fri, 21 Jun 2013 15:55:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252061 - head/sys/cddl/compat/opensolaris/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 15:55:03 -0000 Author: smh Date: Fri Jun 21 15:55:03 2013 New Revision: 252061 URL: http://svnweb.freebsd.org/changeset/base/252061 Log: Switch ZFS mutex_owner macro to use sx_xholder as its now exported via sx.h MFC after: 1 week Modified: head/sys/cddl/compat/opensolaris/sys/mutex.h Modified: head/sys/cddl/compat/opensolaris/sys/mutex.h ============================================================================== --- head/sys/cddl/compat/opensolaris/sys/mutex.h Fri Jun 21 15:47:10 2013 (r252060) +++ head/sys/cddl/compat/opensolaris/sys/mutex.h Fri Jun 21 15:55:03 2013 (r252061) @@ -71,8 +71,7 @@ typedef struct sx kmutex_t; #define mutex_tryenter(lock) sx_try_xlock(lock) #define mutex_exit(lock) sx_xunlock(lock) #define mutex_owned(lock) sx_xlocked(lock) -/* TODO: Change to sx_xholder() once it is moved from kern_sx.c to sx.h. */ -#define mutex_owner(lock) ((lock)->sx_lock & SX_LOCK_SHARED ? NULL : (struct thread *)SX_OWNER((lock)->sx_lock)) +#define mutex_owner(lock) sx_xholder(lock) #endif /* _KERNEL */ From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 17:23:20 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 42B97510; Fri, 21 Jun 2013 17:23:20 +0000 (UTC) (envelope-from delphij@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 365BF1B4B; Fri, 21 Jun 2013 17:23:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5LHNKwj066288; Fri, 21 Jun 2013 17:23:20 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LHNKWR066287; Fri, 21 Jun 2013 17:23:20 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201306211723.r5LHNKWR066287@svn.freebsd.org> From: Xin LI Date: Fri, 21 Jun 2013 17:23:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252062 - head/etc/rc.d X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 17:23:20 -0000 Author: delphij Date: Fri Jun 21 17:23:19 2013 New Revision: 252062 URL: http://svnweb.freebsd.org/changeset/base/252062 Log: Call sshd_precmd instead of sshd_configtest when the operator requests reload or restart, which, in addition of testing the configuration, will also generate host keys when they are not present (previous behavior). Obtained from: FreeNAS Ok'ed by: bdrewery, des MFC after: 1 week Modified: head/etc/rc.d/sshd Modified: head/etc/rc.d/sshd ============================================================================== --- head/etc/rc.d/sshd Fri Jun 21 15:55:03 2013 (r252061) +++ head/etc/rc.d/sshd Fri Jun 21 17:23:19 2013 (r252062) @@ -14,8 +14,8 @@ rcvar="sshd_enable" command="/usr/sbin/${name}" keygen_cmd="sshd_keygen" start_precmd="sshd_precmd" -reload_precmd="sshd_configtest" -restart_precmd="sshd_configtest" +reload_precmd="sshd_precmd" +restart_precmd="sshd_precmd" configtest_cmd="sshd_configtest" pidfile="/var/run/${name}.pid" extra_commands="configtest keygen reload" From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 18:16:55 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 2FFE1BAD; Fri, 21 Jun 2013 18:16:55 +0000 (UTC) (envelope-from gonzo@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 08E071DEB; Fri, 21 Jun 2013 18:16:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5LIGs7t083522; Fri, 21 Jun 2013 18:16:54 GMT (envelope-from gonzo@svn.freebsd.org) Received: (from gonzo@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LIGsA6083520; Fri, 21 Jun 2013 18:16:54 GMT (envelope-from gonzo@svn.freebsd.org) Message-Id: <201306211816.r5LIGsA6083520@svn.freebsd.org> From: Oleksandr Tymoshenko Date: Fri, 21 Jun 2013 18:16:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252064 - in head/sys: conf modules/runfw X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 18:16:55 -0000 Author: gonzo Date: Fri Jun 21 18:16:54 2013 New Revision: 252064 URL: http://svnweb.freebsd.org/changeset/base/252064 Log: Rename run(4) firmware file from runfw to run.fw. Previous name was the same as top-level target name for "device runfw" kernel option and caused cyclic dependancy that lead to kernel build breakage Module change is not strictly required and done for name unification sake PR: conf/175751 Submitted by: Issei Modified: head/sys/conf/files head/sys/modules/runfw/Makefile Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Fri Jun 21 17:36:33 2013 (r252063) +++ head/sys/conf/files Fri Jun 21 18:16:54 2013 (r252064) @@ -2284,19 +2284,19 @@ dev/usb/net/uhso.c optional uhso dev/usb/wlan/if_rum.c optional rum dev/usb/wlan/if_run.c optional run runfw.c optional runfw \ - compile-with "${AWK} -f $S/tools/fw_stub.awk runfw:runfw -mrunfw -c${.TARGET}" \ + compile-with "${AWK} -f $S/tools/fw_stub.awk run.fw:runfw -mrunfw -c${.TARGET}" \ no-implicit-rule before-depend local \ clean "runfw.c" runfw.fwo optional runfw \ - dependency "runfw" \ + dependency "run.fw" \ compile-with "${NORMAL_FWO}" \ no-implicit-rule \ clean "runfw.fwo" -runfw optional runfw \ +run.fw optional runfw \ dependency "$S/contrib/dev/run/rt2870.fw.uu" \ compile-with "${NORMAL_FW}" \ no-obj no-implicit-rule \ - clean "runfw" + clean "run.fw" dev/usb/wlan/if_uath.c optional uath dev/usb/wlan/if_upgt.c optional upgt dev/usb/wlan/if_ural.c optional ural Modified: head/sys/modules/runfw/Makefile ============================================================================== --- head/sys/modules/runfw/Makefile Fri Jun 21 17:36:33 2013 (r252063) +++ head/sys/modules/runfw/Makefile Fri Jun 21 18:16:54 2013 (r252064) @@ -1,11 +1,11 @@ # $FreeBSD$ KMOD= runfw -FIRMWS= runfw:runfw:1 +FIRMWS= run.fw:runfw:1 -CLEANFILES= runfw +CLEANFILES= run.fw -runfw: ${.CURDIR}/../../contrib/dev/run/rt2870.fw.uu +run.fw: ${.CURDIR}/../../contrib/dev/run/rt2870.fw.uu uudecode -p ${.CURDIR}/../../contrib/dev/run/rt2870.fw.uu > ${.TARGET} .include From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 19:41:31 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id E0BF246B; Fri, 21 Jun 2013 19:41:31 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 84050119D; Fri, 21 Jun 2013 19:41:31 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5LJfVeH011706; Fri, 21 Jun 2013 19:41:31 GMT (envelope-from rmacklem@svn.freebsd.org) Received: (from rmacklem@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LJfUUw011705; Fri, 21 Jun 2013 19:41:30 GMT (envelope-from rmacklem@svn.freebsd.org) Message-Id: <201306211941.r5LJfUUw011705@svn.freebsd.org> From: Rick Macklem Date: Fri, 21 Jun 2013 19:41:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252067 - head/sys/fs/nfsclient X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 19:41:32 -0000 Author: rmacklem Date: Fri Jun 21 19:41:30 2013 New Revision: 252067 URL: http://svnweb.freebsd.org/changeset/base/252067 Log: Since some NFSv4 servers enforce the requirement for a reserved port#, enable use of the (no)resvport mount option for NFSv4. I had thought that the RFC required that non-reserved port #s be allowed, but I couldn't find it in the RFC. MFC after: 2 weeks Modified: head/sys/fs/nfsclient/nfs_clvfsops.c Modified: head/sys/fs/nfsclient/nfs_clvfsops.c ============================================================================== --- head/sys/fs/nfsclient/nfs_clvfsops.c Fri Jun 21 19:30:32 2013 (r252066) +++ head/sys/fs/nfsclient/nfs_clvfsops.c Fri Jun 21 19:41:30 2013 (r252067) @@ -592,12 +592,6 @@ nfs_decode_args(struct mount *mp, struct nmp->nm_flag &= ~NFSMNT_RDIRPLUS; } - /* Clear NFSMNT_RESVPORT for NFSv4, since it is not required. */ - if ((argp->flags & NFSMNT_NFSV4) != 0) { - argp->flags &= ~NFSMNT_RESVPORT; - nmp->nm_flag &= ~NFSMNT_RESVPORT; - } - /* Re-bind if rsrvd port requested and wasn't on one */ adjsock = !(nmp->nm_flag & NFSMNT_RESVPORT) && (argp->flags & NFSMNT_RESVPORT); From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 22:26:19 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 75F9B4B5; Fri, 21 Jun 2013 22:26:19 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4DB3E1CAD; Fri, 21 Jun 2013 22:26:19 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5LMQJsY063492; Fri, 21 Jun 2013 22:26:19 GMT (envelope-from rmacklem@svn.freebsd.org) Received: (from rmacklem@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LMQISU063490; Fri, 21 Jun 2013 22:26:18 GMT (envelope-from rmacklem@svn.freebsd.org) Message-Id: <201306212226.r5LMQISU063490@svn.freebsd.org> From: Rick Macklem Date: Fri, 21 Jun 2013 22:26:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252072 - head/sys/fs/nfsclient X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 22:26:19 -0000 Author: rmacklem Date: Fri Jun 21 22:26:18 2013 New Revision: 252072 URL: http://svnweb.freebsd.org/changeset/base/252072 Log: When the NFSv4.1 client is writing to a pNFS Data Server (DS), the file's size attribute does not get updated. As such, it is necessary to invalidate the attribute cache before clearing NMODIFIED for pNFS. MFC after: 2 weeks Modified: head/sys/fs/nfsclient/nfs_clbio.c head/sys/fs/nfsclient/nfs_clvnops.c Modified: head/sys/fs/nfsclient/nfs_clbio.c ============================================================================== --- head/sys/fs/nfsclient/nfs_clbio.c Fri Jun 21 21:59:58 2013 (r252071) +++ head/sys/fs/nfsclient/nfs_clbio.c Fri Jun 21 22:26:18 2013 (r252072) @@ -1372,9 +1372,16 @@ ncl_vinvalbuf(struct vnode *vp, int flag goto out; error = vinvalbuf(vp, flags, 0, slptimeo); } - if (NFSHASPNFS(nmp)) + if (NFSHASPNFS(nmp)) { nfscl_layoutcommit(vp, td); - mtx_lock(&np->n_mtx); + /* + * Invalidate the attribute cache, since writes to a DS + * won't update the size attribute. + */ + mtx_lock(&np->n_mtx); + np->n_attrstamp = 0; + } else + mtx_lock(&np->n_mtx); if (np->n_directio_asyncwr == 0) np->n_flag &= ~NMODIFIED; mtx_unlock(&np->n_mtx); @@ -1555,6 +1562,13 @@ ncl_doio_directwrite(struct buf *bp) if ((bp->b_flags & B_DIRECT) && bp->b_iocmd == BIO_WRITE) { struct nfsnode *np = VTONFS(bp->b_vp); mtx_lock(&np->n_mtx); + if (NFSHASPNFS(VFSTONFS(vnode_mount(bp->b_vp)))) { + /* + * Invalidate the attribute cache, since writes to a DS + * won't update the size attribute. + */ + np->n_attrstamp = 0; + } np->n_directio_asyncwr--; if (np->n_directio_asyncwr == 0) { np->n_flag &= ~NMODIFIED; Modified: head/sys/fs/nfsclient/nfs_clvnops.c ============================================================================== --- head/sys/fs/nfsclient/nfs_clvnops.c Fri Jun 21 21:59:58 2013 (r252071) +++ head/sys/fs/nfsclient/nfs_clvnops.c Fri Jun 21 22:26:18 2013 (r252072) @@ -2951,9 +2951,16 @@ loop: mtx_unlock(&np->n_mtx); } else BO_UNLOCK(bo); - if (NFSHASPNFS(nmp)) + if (NFSHASPNFS(nmp)) { nfscl_layoutcommit(vp, td); - mtx_lock(&np->n_mtx); + /* + * Invalidate the attribute cache, since writes to a DS + * won't update the size attribute. + */ + mtx_lock(&np->n_mtx); + np->n_attrstamp = 0; + } else + mtx_lock(&np->n_mtx); if (np->n_flag & NWRITEERR) { error = np->n_error; np->n_flag &= ~NWRITEERR; From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 22:46:17 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 5D140B53; Fri, 21 Jun 2013 22:46:17 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 4B3781D5F; Fri, 21 Jun 2013 22:46:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5LMkHQv070138; Fri, 21 Jun 2013 22:46:17 GMT (envelope-from rmacklem@svn.freebsd.org) Received: (from rmacklem@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LMkHBY070137; Fri, 21 Jun 2013 22:46:17 GMT (envelope-from rmacklem@svn.freebsd.org) Message-Id: <201306212246.r5LMkHBY070137@svn.freebsd.org> From: Rick Macklem Date: Fri, 21 Jun 2013 22:46:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252074 - head/sys/fs/nfsclient X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 22:46:17 -0000 Author: rmacklem Date: Fri Jun 21 22:46:16 2013 New Revision: 252074 URL: http://svnweb.freebsd.org/changeset/base/252074 Log: The NFSv4.1 LayoutCommit operation requires a valid offset and length. (0, 0 is not sufficient) This patch a loop for each file layout, using the offset, length of each file layout in a separate LayoutCommit. Modified: head/sys/fs/nfsclient/nfs_clstate.c Modified: head/sys/fs/nfsclient/nfs_clstate.c ============================================================================== --- head/sys/fs/nfsclient/nfs_clstate.c Fri Jun 21 22:45:03 2013 (r252073) +++ head/sys/fs/nfsclient/nfs_clstate.c Fri Jun 21 22:46:16 2013 (r252074) @@ -5145,16 +5145,28 @@ static void nfscl_dolayoutcommit(struct nfsmount *nmp, struct nfscllayout *lyp, struct ucred *cred, NFSPROC_T *p) { + struct nfsclflayout *flp; + uint64_t len; int error; - error = nfsrpc_layoutcommit(nmp, lyp->nfsly_fh, lyp->nfsly_fhlen, - 0, 0, 0, lyp->nfsly_lastbyte, &lyp->nfsly_stateid, - NFSLAYOUT_NFSV4_1_FILES, 0, NULL, cred, p, NULL); - if (error == NFSERR_NOTSUPP) { - /* If the server doesn't want it, don't bother doing it. */ - NFSLOCKMNT(nmp); - nmp->nm_state |= NFSSTA_NOLAYOUTCOMMIT; - NFSUNLOCKMNT(nmp); + LIST_FOREACH(flp, &lyp->nfsly_flayrw, nfsfl_list) { + if (flp->nfsfl_off <= lyp->nfsly_lastbyte) { + len = flp->nfsfl_end - flp->nfsfl_off; + error = nfsrpc_layoutcommit(nmp, lyp->nfsly_fh, + lyp->nfsly_fhlen, 0, flp->nfsfl_off, len, + lyp->nfsly_lastbyte, &lyp->nfsly_stateid, + NFSLAYOUT_NFSV4_1_FILES, 0, NULL, cred, p, NULL); + NFSCL_DEBUG(4, "layoutcommit err=%d off=%qd len=%qd " + "lastbyte=%qd\n", error, flp->nfsfl_off, len, + lyp->nfsly_lastbyte); + if (error == NFSERR_NOTSUPP) { + /* If not supported, don't bother doing it. */ + NFSLOCKMNT(nmp); + nmp->nm_state |= NFSSTA_NOLAYOUTCOMMIT; + NFSUNLOCKMNT(nmp); + break; + } + } } } From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 22:47:32 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 60335DBB; Fri, 21 Jun 2013 22:47:32 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 51A281D77; Fri, 21 Jun 2013 22:47:32 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5LMlWWY070354; Fri, 21 Jun 2013 22:47:32 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LMlWrO070352; Fri, 21 Jun 2013 22:47:32 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306212247.r5LMlWrO070352@svn.freebsd.org> From: Devin Teske Date: Fri, 21 Jun 2013 22:47:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252075 - in head/usr.sbin/bsdconfig/share: . media X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 22:47:32 -0000 Author: dteske Date: Fri Jun 21 22:47:31 2013 New Revision: 252075 URL: http://svnweb.freebsd.org/changeset/base/252075 Log: Typo and grammar fixes to comments. Modified: head/usr.sbin/bsdconfig/share/dialog.subr head/usr.sbin/bsdconfig/share/media/ftp.subr Modified: head/usr.sbin/bsdconfig/share/dialog.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/dialog.subr Fri Jun 21 22:46:16 2013 (r252074) +++ head/usr.sbin/bsdconfig/share/dialog.subr Fri Jun 21 22:47:31 2013 (r252075) @@ -378,7 +378,7 @@ f_dialog_size_constrain() fi if [ "$debug" ]; then - # Print final constrained values to debuggin + # Print final constrained values to debugging f_quietly f_getvar "$__var_height" f_quietly f_getvar "$__var_width" fi Modified: head/usr.sbin/bsdconfig/share/media/ftp.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/ftp.subr Fri Jun 21 22:46:16 2013 (r252074) +++ head/usr.sbin/bsdconfig/share/media/ftp.subr Fri Jun 21 22:47:31 2013 (r252075) @@ -287,7 +287,7 @@ f_dialog_menu_media_ftp() # # VAR_FTP_HOST # The FTP host to connect to, parsed from VAR_FTP_PATH. In the -# example case of IPv6 where VAR_FTP_PATH is a "ftp://[::1]" this +# example case of IPv6 where VAR_FTP_PATH is "ftp://[::1]", this # variable will be set to "::1" (the outer brackets are removed). # VAR_FTP_PORT # The TCP port to connect to, parsed from VAR_FTP_PATH. Usually From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 22:53:52 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 9FD37186; Fri, 21 Jun 2013 22:53:52 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 76CB21DC0; Fri, 21 Jun 2013 22:53:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5LMrqEp072818; Fri, 21 Jun 2013 22:53:52 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LMrqCd072814; Fri, 21 Jun 2013 22:53:52 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306212253.r5LMrqCd072814@svn.freebsd.org> From: Devin Teske Date: Fri, 21 Jun 2013 22:53:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252076 - head/usr.sbin/bsdconfig/share/media X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 22:53:52 -0000 Author: dteske Date: Fri Jun 21 22:53:51 2013 New Revision: 252076 URL: http://svnweb.freebsd.org/changeset/base/252076 Log: Style. Modified: head/usr.sbin/bsdconfig/share/media/httpproxy.subr head/usr.sbin/bsdconfig/share/media/options.subr Modified: head/usr.sbin/bsdconfig/share/media/httpproxy.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/httpproxy.subr Fri Jun 21 22:47:31 2013 (r252075) +++ head/usr.sbin/bsdconfig/share/media/httpproxy.subr Fri Jun 21 22:53:51 2013 (r252076) @@ -133,7 +133,7 @@ f_media_set_http_proxy() # f_http_proxy_check_access() { - local connect_only="$1" hosts="" + local connect_only="$1" hosts= local proxy_host proxy_port f_getvar $VAR_HTTP_PROXY_HOST proxy_host Modified: head/usr.sbin/bsdconfig/share/media/options.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/options.subr Fri Jun 21 22:47:31 2013 (r252075) +++ head/usr.sbin/bsdconfig/share/media/options.subr Fri Jun 21 22:53:51 2013 (r252076) @@ -157,23 +157,15 @@ f_media_options_menu() device_media get type cp case "$cp" in $DEVICE_TYPE_UFS|$DEVICE_TYPE_DISK) - cp="$msg_file_system";; - $DEVICE_TYPE_DIRECTORY) - cp="$msg_directory";; - $DEVICE_TYPE_FLOPPY) - cp="$msg_floppy";; - $DEVICE_TYPE_FTP) - cp="$msg_ftp";; - $DEVICE_TYPE_HTTP_PROXY) - cp="$msg_http_proxy";; - $DEVICE_TYPE_CDROM) - cp="$msg_cdrom";; - $DEVICE_TYPE_USB) - cp="$msg_usb";; - $DEVICE_TYPE_DOS) - cp="$msg_dos";; - $DEVICE_TYPE_NFS) - cp="$msg_nfs";; + cp="$msg_file_system" ;; + $DEVICE_TYPE_DIRECTORY) cp="$msg_directory" ;; + $DEVICE_TYPE_FLOPPY) cp="$msg_floppy" ;; + $DEVICE_TYPE_FTP) cp="$msg_ftp" ;; + $DEVICE_TYPE_HTTP_PROXY) cp="$msg_http_proxy" ;; + $DEVICE_TYPE_CDROM) cp="$msg_cdrom" ;; + $DEVICE_TYPE_USB) cp="$msg_usb" ;; + $DEVICE_TYPE_DOS) cp="$msg_dos" ;; + $DEVICE_TYPE_NFS) cp="$msg_nfs" ;; *) cp="<$msg_unknown>" esac From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 23:13:59 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id DCEA54DF; Fri, 21 Jun 2013 23:13:59 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id CCFE71E68; Fri, 21 Jun 2013 23:13:59 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5LNDxCJ079504; Fri, 21 Jun 2013 23:13:59 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LNDtPX079471; Fri, 21 Jun 2013 23:13:55 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306212313.r5LNDtPX079471@svn.freebsd.org> From: Devin Teske Date: Fri, 21 Jun 2013 23:13:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252077 - in head/usr.sbin/bsdconfig: networking/share share/media share/packages X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 23:13:59 -0000 Author: dteske Date: Fri Jun 21 23:13:55 2013 New Revision: 252077 URL: http://svnweb.freebsd.org/changeset/base/252077 Log: Alphabetize library includes. Modified: head/usr.sbin/bsdconfig/networking/share/device.subr head/usr.sbin/bsdconfig/networking/share/hostname.subr head/usr.sbin/bsdconfig/networking/share/ipaddr.subr head/usr.sbin/bsdconfig/networking/share/media.subr head/usr.sbin/bsdconfig/networking/share/netmask.subr head/usr.sbin/bsdconfig/networking/share/resolv.subr head/usr.sbin/bsdconfig/networking/share/routing.subr head/usr.sbin/bsdconfig/share/media/any.subr head/usr.sbin/bsdconfig/share/media/cdrom.subr head/usr.sbin/bsdconfig/share/media/common.subr head/usr.sbin/bsdconfig/share/media/directory.subr head/usr.sbin/bsdconfig/share/media/dos.subr head/usr.sbin/bsdconfig/share/media/floppy.subr head/usr.sbin/bsdconfig/share/media/ftp.subr head/usr.sbin/bsdconfig/share/media/httpproxy.subr head/usr.sbin/bsdconfig/share/media/nfs.subr head/usr.sbin/bsdconfig/share/media/options.subr head/usr.sbin/bsdconfig/share/media/tcpip.subr head/usr.sbin/bsdconfig/share/media/ufs.subr head/usr.sbin/bsdconfig/share/media/usb.subr head/usr.sbin/bsdconfig/share/packages/packages.subr Modified: head/usr.sbin/bsdconfig/networking/share/device.subr ============================================================================== --- head/usr.sbin/bsdconfig/networking/share/device.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/networking/share/device.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -33,7 +33,6 @@ BSDCFG_SHARE="/usr/share/bsdconfig" f_dprintf "%s: loading includes..." networking/device.subr f_include $BSDCFG_SHARE/device.subr f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/sysrc.subr f_include $BSDCFG_SHARE/media/tcpip.subr f_include $BSDCFG_SHARE/networking/common.subr f_include $BSDCFG_SHARE/networking/ipaddr.subr @@ -41,6 +40,7 @@ f_include $BSDCFG_SHARE/networking/media f_include $BSDCFG_SHARE/networking/netmask.subr f_include $BSDCFG_SHARE/networking/resolv.subr f_include $BSDCFG_SHARE/networking/routing.subr +f_include $BSDCFG_SHARE/sysrc.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" APP_DIR="120.networking" f_include_lang $BSDCFG_LIBE/$APP_DIR/include/messages.subr Modified: head/usr.sbin/bsdconfig/networking/share/hostname.subr ============================================================================== --- head/usr.sbin/bsdconfig/networking/share/hostname.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/networking/share/hostname.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -31,10 +31,10 @@ if [ ! "$_NETWORKING_HOSTNAME_SUBR" ]; t BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." networking/hostname.subr -f_include $BSDCFG_SHARE/sysrc.subr f_include $BSDCFG_SHARE/dialog.subr f_include $BSDCFG_SHARE/networking/common.subr f_include $BSDCFG_SHARE/networking/resolv.subr +f_include $BSDCFG_SHARE/sysrc.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" APP_DIR="120.networking" f_include_lang $BSDCFG_LIBE/$APP_DIR/include/messages.subr Modified: head/usr.sbin/bsdconfig/networking/share/ipaddr.subr ============================================================================== --- head/usr.sbin/bsdconfig/networking/share/ipaddr.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/networking/share/ipaddr.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -32,8 +32,8 @@ BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." networking/ipaddr.subr f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/strings.subr f_include $BSDCFG_SHARE/networking/common.subr +f_include $BSDCFG_SHARE/strings.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" APP_DIR="120.networking" f_include_lang $BSDCFG_LIBE/$APP_DIR/include/messages.subr Modified: head/usr.sbin/bsdconfig/networking/share/media.subr ============================================================================== --- head/usr.sbin/bsdconfig/networking/share/media.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/networking/share/media.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -32,9 +32,9 @@ BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." networking/media.subr f_include $BSDCFG_SHARE/dialog.subr +f_include $BSDCFG_SHARE/networking/common.subr f_include $BSDCFG_SHARE/strings.subr f_include $BSDCFG_SHARE/sysrc.subr -f_include $BSDCFG_SHARE/networking/common.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" APP_DIR="120.networking" f_include_lang $BSDCFG_LIBE/$APP_DIR/include/messages.subr Modified: head/usr.sbin/bsdconfig/networking/share/netmask.subr ============================================================================== --- head/usr.sbin/bsdconfig/networking/share/netmask.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/networking/share/netmask.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -32,8 +32,8 @@ BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." networking/netmask.subr f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/strings.subr f_include $BSDCFG_SHARE/networking/common.subr +f_include $BSDCFG_SHARE/strings.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" APP_DIR="120.networking" f_include_lang $BSDCFG_LIBE/$APP_DIR/include/messages.subr Modified: head/usr.sbin/bsdconfig/networking/share/resolv.subr ============================================================================== --- head/usr.sbin/bsdconfig/networking/share/resolv.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/networking/share/resolv.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -32,10 +32,10 @@ BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." networking/resolv.subr f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/strings.subr f_include $BSDCFG_SHARE/media/tcpip.subr f_include $BSDCFG_SHARE/networking/common.subr f_include $BSDCFG_SHARE/networking/ipaddr.subr +f_include $BSDCFG_SHARE/strings.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" APP_DIR="120.networking" f_include_lang $BSDCFG_LIBE/$APP_DIR/include/messages.subr Modified: head/usr.sbin/bsdconfig/networking/share/routing.subr ============================================================================== --- head/usr.sbin/bsdconfig/networking/share/routing.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/networking/share/routing.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -31,11 +31,11 @@ if [ ! "$_NETWORKING_ROUTING_SUBR" ]; th BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." networking/routing.subr -f_include $BSDCFG_SHARE/sysrc.subr f_include $BSDCFG_SHARE/dialog.subr f_include $BSDCFG_SHARE/media/tcpip.subr f_include $BSDCFG_SHARE/networking/common.subr f_include $BSDCFG_SHARE/networking/ipaddr.subr +f_include $BSDCFG_SHARE/sysrc.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" APP_DIR="120.networking" f_include_lang $BSDCFG_LIBE/$APP_DIR/include/messages.subr Modified: head/usr.sbin/bsdconfig/share/media/any.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/any.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/share/media/any.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -32,7 +32,6 @@ BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." media/any.subr f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/struct.subr f_include $BSDCFG_SHARE/media/cdrom.subr f_include $BSDCFG_SHARE/media/directory.subr f_include $BSDCFG_SHARE/media/dos.subr @@ -43,6 +42,7 @@ f_include $BSDCFG_SHARE/media/nfs.subr f_include $BSDCFG_SHARE/media/options.subr f_include $BSDCFG_SHARE/media/ufs.subr f_include $BSDCFG_SHARE/media/usb.subr +f_include $BSDCFG_SHARE/struct.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" f_include_lang $BSDCFG_LIBE/include/messages.subr Modified: head/usr.sbin/bsdconfig/share/media/cdrom.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/cdrom.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/share/media/cdrom.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -31,11 +31,11 @@ if [ ! "$_MEDIA_CDROM_SUBR" ]; then _MED BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." media/cdrom.subr -f_include $BSDCFG_SHARE/struct.subr f_include $BSDCFG_SHARE/device.subr f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/variable.subr f_include $BSDCFG_SHARE/media/common.subr +f_include $BSDCFG_SHARE/struct.subr +f_include $BSDCFG_SHARE/variable.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" f_include_lang $BSDCFG_LIBE/include/messages.subr Modified: head/usr.sbin/bsdconfig/share/media/common.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/common.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/share/media/common.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -31,9 +31,9 @@ if [ ! "$_MEDIA_COMMON_SUBR" ]; then _ME BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." media/common.subr -f_include $BSDCFG_SHARE/struct.subr f_include $BSDCFG_SHARE/device.subr f_include $BSDCFG_SHARE/media/any.subr +f_include $BSDCFG_SHARE/struct.subr ############################################################ GLOBALS Modified: head/usr.sbin/bsdconfig/share/media/directory.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/directory.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/share/media/directory.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -31,11 +31,11 @@ if [ ! "$_MEDIA_DIRECTORY_SUBR" ]; then BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." media/directory.subr -f_include $BSDCFG_SHARE/struct.subr f_include $BSDCFG_SHARE/device.subr f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/variable.subr f_include $BSDCFG_SHARE/media/common.subr +f_include $BSDCFG_SHARE/struct.subr +f_include $BSDCFG_SHARE/variable.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" f_include_lang $BSDCFG_LIBE/include/messages.subr Modified: head/usr.sbin/bsdconfig/share/media/dos.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/dos.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/share/media/dos.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -31,11 +31,11 @@ if [ ! "$_MEDIA_DOS_SUBR" ]; then _MEDIA BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." media/dos.subr -f_include $BSDCFG_SHARE/struct.subr f_include $BSDCFG_SHARE/device.subr f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/variable.subr f_include $BSDCFG_SHARE/media/common.subr +f_include $BSDCFG_SHARE/struct.subr +f_include $BSDCFG_SHARE/variable.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" f_include_lang $BSDCFG_LIBE/include/messages.subr Modified: head/usr.sbin/bsdconfig/share/media/floppy.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/floppy.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/share/media/floppy.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -31,11 +31,11 @@ if [ ! "$_MEDIA_FLOPPY_SUBR" ]; then _ME BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." media/floppy.subr -f_include $BSDCFG_SHARE/struct.subr f_include $BSDCFG_SHARE/device.subr f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/variable.subr f_include $BSDCFG_SHARE/media/common.subr +f_include $BSDCFG_SHARE/struct.subr +f_include $BSDCFG_SHARE/variable.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" f_include_lang $BSDCFG_LIBE/include/messages.subr Modified: head/usr.sbin/bsdconfig/share/media/ftp.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/ftp.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/share/media/ftp.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -31,14 +31,14 @@ if [ ! "$_MEDIA_FTP_SUBR" ]; then _MEDIA BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." media/ftp.subr -f_include $BSDCFG_SHARE/struct.subr f_include $BSDCFG_SHARE/device.subr f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/strings.subr -f_include $BSDCFG_SHARE/variable.subr f_include $BSDCFG_SHARE/media/common.subr -f_include $BSDCFG_SHARE/media/tcpip.subr f_include $BSDCFG_SHARE/media/network.subr +f_include $BSDCFG_SHARE/media/tcpip.subr +f_include $BSDCFG_SHARE/strings.subr +f_include $BSDCFG_SHARE/struct.subr +f_include $BSDCFG_SHARE/variable.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" f_include_lang $BSDCFG_LIBE/include/messages.subr Modified: head/usr.sbin/bsdconfig/share/media/httpproxy.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/httpproxy.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/share/media/httpproxy.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -32,9 +32,9 @@ BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." media/httpproxy.subr f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/variable.subr f_include $BSDCFG_SHARE/media/ftp.subr f_include $BSDCFG_SHARE/media/tcpip.subr +f_include $BSDCFG_SHARE/variable.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" f_include_lang $BSDCFG_LIBE/include/messages.subr Modified: head/usr.sbin/bsdconfig/share/media/nfs.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/nfs.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/share/media/nfs.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -31,13 +31,13 @@ if [ ! "$_MEDIA_NFS_SUBR" ]; then _MEDIA BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." media/nfs.subr -f_include $BSDCFG_SHARE/struct.subr f_include $BSDCFG_SHARE/device.subr f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/variable.subr f_include $BSDCFG_SHARE/media/common.subr -f_include $BSDCFG_SHARE/media/tcpip.subr f_include $BSDCFG_SHARE/media/network.subr +f_include $BSDCFG_SHARE/media/tcpip.subr +f_include $BSDCFG_SHARE/struct.subr +f_include $BSDCFG_SHARE/variable.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" f_include_lang $BSDCFG_LIBE/include/messages.subr Modified: head/usr.sbin/bsdconfig/share/media/options.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/options.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/share/media/options.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -32,10 +32,10 @@ BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." media/options.subr f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/struct.subr -f_include $BSDCFG_SHARE/variable.subr f_include $BSDCFG_SHARE/media/any.subr f_include $BSDCFG_SHARE/media/ftp.subr +f_include $BSDCFG_SHARE/struct.subr +f_include $BSDCFG_SHARE/variable.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" f_include_lang $BSDCFG_LIBE/include/messages.subr Modified: head/usr.sbin/bsdconfig/share/media/tcpip.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/tcpip.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/share/media/tcpip.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -31,9 +31,9 @@ if [ ! "$_MEDIA_TCPIP_SUBR" ]; then _MED BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." media/tcpip.subr -f_include $BSDCFG_SHARE/struct.subr f_include $BSDCFG_SHARE/device.subr f_include $BSDCFG_SHARE/dialog.subr +f_include $BSDCFG_SHARE/struct.subr f_include $BSDCFG_SHARE/variable.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" Modified: head/usr.sbin/bsdconfig/share/media/ufs.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/ufs.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/share/media/ufs.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -31,11 +31,11 @@ if [ ! "$_MEDIA_UFS_SUBR" ]; then _MEDIA BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." media/ufs.subr -f_include $BSDCFG_SHARE/struct.subr f_include $BSDCFG_SHARE/device.subr f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/variable.subr f_include $BSDCFG_SHARE/media/common.subr +f_include $BSDCFG_SHARE/struct.subr +f_include $BSDCFG_SHARE/variable.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" f_include_lang $BSDCFG_LIBE/include/messages.subr Modified: head/usr.sbin/bsdconfig/share/media/usb.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/usb.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/share/media/usb.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -31,11 +31,11 @@ if [ ! "$_MEDIA_USB_SUBR" ]; then _MEDIA BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." media/usb.subr -f_include $BSDCFG_SHARE/struct.subr f_include $BSDCFG_SHARE/device.subr f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/variable.subr f_include $BSDCFG_SHARE/media/common.subr +f_include $BSDCFG_SHARE/struct.subr +f_include $BSDCFG_SHARE/variable.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" f_include_lang $BSDCFG_LIBE/include/messages.subr Modified: head/usr.sbin/bsdconfig/share/packages/packages.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/packages/packages.subr Fri Jun 21 22:53:51 2013 (r252076) +++ head/usr.sbin/bsdconfig/share/packages/packages.subr Fri Jun 21 23:13:55 2013 (r252077) @@ -32,9 +32,9 @@ BSDCFG_SHARE="/usr/share/bsdconfig" . $BSDCFG_SHARE/common.subr || exit 1 f_dprintf "%s: loading includes..." "$0" f_include $BSDCFG_SHARE/dialog.subr -f_include $BSDCFG_SHARE/strings.subr f_include $BSDCFG_SHARE/packages/categories.subr f_include $BSDCFG_SHARE/packages/index.subr +f_include $BSDCFG_SHARE/strings.subr BSDCFG_LIBE="/usr/libexec/bsdconfig" f_include_lang $BSDCFG_LIBE/include/messages.subr From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 23:18:30 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 20FD771D; Fri, 21 Jun 2013 23:18:30 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 10FCD1EA1; Fri, 21 Jun 2013 23:18:30 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5LNITif080187; Fri, 21 Jun 2013 23:18:29 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LNITBB080186; Fri, 21 Jun 2013 23:18:29 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306212318.r5LNITBB080186@svn.freebsd.org> From: Devin Teske Date: Fri, 21 Jun 2013 23:18:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252078 - head/usr.sbin/bsdconfig/share/media X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 23:18:30 -0000 Author: dteske Date: Fri Jun 21 23:18:29 2013 New Revision: 252078 URL: http://svnweb.freebsd.org/changeset/base/252078 Log: Remove unused library include. Modified: head/usr.sbin/bsdconfig/share/media/ftp.subr Modified: head/usr.sbin/bsdconfig/share/media/ftp.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/ftp.subr Fri Jun 21 23:13:55 2013 (r252077) +++ head/usr.sbin/bsdconfig/share/media/ftp.subr Fri Jun 21 23:18:29 2013 (r252078) @@ -34,7 +34,6 @@ f_dprintf "%s: loading includes..." medi f_include $BSDCFG_SHARE/device.subr f_include $BSDCFG_SHARE/dialog.subr f_include $BSDCFG_SHARE/media/common.subr -f_include $BSDCFG_SHARE/media/network.subr f_include $BSDCFG_SHARE/media/tcpip.subr f_include $BSDCFG_SHARE/strings.subr f_include $BSDCFG_SHARE/struct.subr From owner-svn-src-head@FreeBSD.ORG Fri Jun 21 23:21:16 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id BB22F8AD; Fri, 21 Jun 2013 23:21:16 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id AC3381EBC; Fri, 21 Jun 2013 23:21:16 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5LNLGVp082219; Fri, 21 Jun 2013 23:21:16 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LNLG0M082218; Fri, 21 Jun 2013 23:21:16 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306212321.r5LNLG0M082218@svn.freebsd.org> From: Devin Teske Date: Fri, 21 Jun 2013 23:21:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252079 - head/usr.sbin/bsdconfig/share/media X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 23:21:16 -0000 Author: dteske Date: Fri Jun 21 23:21:16 2013 New Revision: 252079 URL: http://svnweb.freebsd.org/changeset/base/252079 Log: Add missing local declaration. Modified: head/usr.sbin/bsdconfig/share/media/ftp.subr Modified: head/usr.sbin/bsdconfig/share/media/ftp.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/ftp.subr Fri Jun 21 23:18:29 2013 (r252078) +++ head/usr.sbin/bsdconfig/share/media/ftp.subr Fri Jun 21 23:21:16 2013 (r252079) @@ -789,7 +789,7 @@ f_media_init_ftp() # f_media_get_ftp() { - local dev="$1" file="$2" probe_only="$3" + local dev="$1" file="$2" probe_only="$3" hosts= f_dprintf "f_media_get_ftp: dev=[%s] file=[%s] probe_only=%s" \ "$dev" "$file" "$probe_only" From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 02:35:44 2013 Return-Path: Delivered-To: svn-src-head@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id C1A93E98; Sat, 22 Jun 2013 02:35:44 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail108.syd.optusnet.com.au (mail108.syd.optusnet.com.au [211.29.132.59]) by mx1.freebsd.org (Postfix) with ESMTP id 2F9F116CE; Sat, 22 Jun 2013 02:35:43 +0000 (UTC) Received: from c122-106-156-23.carlnfd1.nsw.optusnet.com.au (c122-106-156-23.carlnfd1.nsw.optusnet.com.au [122.106.156.23]) by mail108.syd.optusnet.com.au (Postfix) with ESMTPS id EAFFD1A23F3; Sat, 22 Jun 2013 12:35:33 +1000 (EST) Date: Sat, 22 Jun 2013 12:35:33 +1000 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Gleb Smirnoff Subject: Re: svn commit: r252032 - head/sys/amd64/include In-Reply-To: <20130621135427.GA1214@FreeBSD.org> Message-ID: <20130622110352.J2033@besplex.bde.org> References: <201306201430.r5KEU4G5049115@svn.freebsd.org> <20130621065839.J916@besplex.bde.org> <20130621081116.E1151@besplex.bde.org> <20130621090207.F1318@besplex.bde.org> <20130621064901.GS1214@FreeBSD.org> <20130621184140.G848@besplex.bde.org> <20130621135427.GA1214@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.0 cv=eqSHVfVX c=1 sm=1 a=0l9hOOMEwYoA:10 a=kj9zAlcOel0A:10 a=PO7r1zJSAAAA:8 a=JzwRw_2MAAAA:8 a=gvJhbHXk4isA:10 a=ahgKxaFshMsLUsfFpbsA:9 a=CjuIK1q_8ugA:10 a=ebeQFi2P/qHVC0Yw9JDJ4g==:117 Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org, Konstantin Belousov , Bruce Evans X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 02:35:44 -0000 On Fri, 21 Jun 2013, Gleb Smirnoff wrote: > On Fri, Jun 21, 2013 at 09:02:36PM +1000, Bruce Evans wrote: > B> Not if it is a 32-bit increment on 32-bit systems, as it should be. > B> > B> I said to use a daemon to convert small (16 or 32 bit) counters into > B> larger (32 or 64 bit) ones. It is almost as efficient to call the > B> accumulation code directly: Please trim quotes more. >[... lots of technical details] > May be you are right and an implementation with a "daemon" would be > more efficient for i386. But daemon isn't needed at all on 64-bit > platforms. So I doubt it is worth coding it. Of course it would be more efficient on i386. Probably it would be more efficient on amd64 too. The main counter array would be half the size, so takes less cache, less write buffers, and smaller instructions. > Frankly speaking, we already do not consider the i386 as a platform to > build high performance solutions. The need for counter(9) in TCP/IP > stack was demonstrated on modern amd64 hardware. Thus, our motivation > was to make: I need to complain about lost performance in i386 more then :-). i386 is faster for anything that doesn't need large memory. > - a lossless and faster implementation for amd64 > - a lossless implementation for !amd64 > - if we have an option to avoid critical section on some arch, good > let's avoid it. I already gave an implementation to avoid the critical section. But using the critical section seems to be the second best method. The best method is using 32-bit counters and a daemon. Here are considerably expanded tests, with noninline tests dropped. Summary of times on Athlon64: simple increment: 4-7 cycles (1) simple increment preceded by feature test: 5-8 cycles (1) simple 32-bit increment: 4-7 cycles (2) correct 32-bit increment (addl to mem): 5.5-7 cycles (3) inlined critical section: 8.5 cycles (4) better inlined critical section: 7 cycles (5) correct unsigned 32-bit inc of 64-bit counter: 4-7 cycles (6) "improve" previous to allow immediate operand: 5+ cycles correct signed 32-bit inc of 64-bit counter: 8.5-9 cycles (7) correct 64-bit inc of 64-bit counter: 8-9 cycles (8) -current method (cmpxchg8b): 18 cycles (1) Unusable due to races. (2) It's no faster to do a simple increment of a 32-bit counter than a 64-bit one! This indicates delicate pipelining/memory access behaviour. The Athlon64 timing for addl to memory is 4 cycles latency. The tests show this being achieved. But since it is only latency and an Athlon64 can do something like 1 64-bit store and 1 64-bit load per cycle (or 2 64-bit loads but not 2 64-bit stores per cycle?), there is plenty of time to do the adcl to memory and also the loop overhead in not-quite-the-same 4 cycles, so that the loop throughput is 1 per 4 cycles. In practical/non-loop use, you would care even less about the store latancy. Compilers often mess this up to get 7 cycles instead of 4. -O2 generally gives worst results, by unrolling the loop. Since the rolled loop can excecute in 4 cycles, unrolling it can only pessimize it. (3) The single 32-bit addl, combined with a daemon, is what should be used. But compilers generated worse code for this than the similar but more branchy code in (6). (4) The critical section method is quite fast when inlined. (5) The critical section method is even faster when optimized. This is what should be used if you don't want the complications for the daemon. (6) Call the daemon directly ("daemon" code is now just the current code in an extern function. The extern function is a dummy that is never called in the tests. Just to simulate the branch prediction penalties). Some restrictions on the increment. (7) Same as (6), with fewer restrictions on the increment. This uses cmpxchg just like the -current method uses cmpxchg8b, provided a 32-bit increment is sufficient. Races are detected as the low bits changing. We don't care if the high bits change while we are changing the low bits. (8) Same as (7), with no restrictions on the increment. The full version somehow turned out to have a better fastest case than (7). This is without even an optimization for constant increments that would eliminate the runtime check in most cases. The extra code for the runtime check makes things faster :-). % #include % #include % % static inline void % counter_64_inc_8b(volatile uint64_t *p, int64_t inc) % { % % __asm __volatile( % "movl %%ds:(%%esi),%%eax\n\t" % "movl %%ds:4(%%esi),%%edx\n" % "1:\n\t" % "movl %%eax,%%ebx\n\t" % "movl %%edx,%%ecx\n\t" % "addl (%%edi),%%ebx\n\t" % "adcl 4(%%edi),%%ecx\n\t" % "cmpxchg8b %%ds:(%%esi)\n\t" % "jnz 1b" % : % : "S" (p), "D" (&inc) % : "memory", "cc", "eax", "edx", "ebx", "ecx"); % } I also don't like the style of this asm. A better style is used below. The memory clobber pessimization in the above is not used below. The effects of memory clobbers are visible in the test as the loop counter and 'inc' value not staying in registers. cmpxchg8b uses so many registers that it is hard to keep things in registers anyway, so the pessimization is smaller in the above. However, since the add* and/or cmpxchg* instructions have such a large latency, there is plenty of time to reload all the loop variables without increasing the loop latency. In practical use, spilling all the local variables may have a higher cost, since the latency of the counter add is unimportant. Anyway, the asms should be optimized for throughput, not for latency. Unfortunately, loop tests emphasize latency. The only general ways that I know of to optimize throughput for non-loops are: - use highest-throughput instructions, of course - minimise the number of micro-instructions - minimize dependencies. The one for addl to memory is problematic here. Optimal code would schedule the load for this addl early in a free load slot. Then do add and the store at leisure (their latency doesn't matter). The addl to memory instruction does precisely the wrong thing here. The CPU can only sometimes reschedule it well, by seeing it early enough to start the load early. The addq used in the amd64 has the same problem. If possibly, separate non-volatile asms for a load and the rest should be used. The compiler hopefully schedules these well. Then amd64 would need cmpchg* too, to handle the rare case where the counter changes between the separate asms. Reducing latency from 4 cycles to 1-3, or not letting it increase to 20 on i386, may be of no practical importance, but I like to understand the details and either use the perfect algorithm or a simple algorithm. These tests indicate that the amd64 algorithm is simple and but very good, while the i386 algorithm is complicated to give negative benefits. % % uint32_t cpu_feature = 1; % % /* % * These shouldn't be volatile. Volatile just avoids breaking the simulation % * by preventing optimizations that aren't possible for pcpu variables. % */ % typedef volatile uint64_t *counter_u64_t; % typedef volatile uint32_t *counter_u32_t; % % static inline void % counter_u64_add(counter_u64_t c, int64_t inc) % { % % #if 1 % /* 18 cycles on A64. */ % if ((cpu_feature & 1) == 1) { % counter_64_inc_8b(c, inc); % } % #elif 0 % /* 5-8 cycles on A64 (gcc-4.2.1 much slower than gcc-3.3.3).. */ % if ((cpu_feature & 1) == 1) { % *c += inc; % } % #else % /* 4-7 cycles on A64. */ % *c += inc; % #endif % } % % static inline void % counter_u32_add(counter_u32_t c, int32_t inc) % { % % #if 1 % /* 5.5-7 cycles on A64. */ % __asm __volatile("addl %1,%%ds:%0" : "=m,m" (*c) : "?i,r" (inc)); % #else % /* 4-7 cycles on A64. */ % *c += inc; % #endif % } % % struct thread % { % uint32_t td_critnest; % } td0; % % volatile struct thread *td = &td0; % % void % dummy_accum(void) % { % } % % static inline void % alt_counter_u64_add(counter_u64_t c, int64_t inc) % { % #if 1 % /* 8.5 cycles on A64. */ % td->td_critnest++; % __asm __volatile("addl %1,%%ds:%0" : "=m,m" (*c) : "?i,r" (inc)); % td->td_critnest++; % #elif 1 % /* 7 cycles on A64. */ % uint32_t ocritnest; % % ocritnest = td->td_critnest; % td->td_critnest = ocritnest + 1; % __asm __volatile("addl %1,%%ds:%0" : "=m,m" (*c) : "?i,r" (inc)); % td->td_critnest = ocritnest; % #elif 0 % /* Support only 32-bit non-negative increments. */ % /* 4-7 cycles on A64 (varies with gcc version, -O* and -static. */ % __asm __volatile(" \n\ % addl %1,%%ds:%0 \n\ % jnc 8f \n\ % call dummy_accum \n\ % 8: ; \n\ % " % : "=m" (*c) : "r" ((uint32_t)inc)); % #elif 0 % /* As in previous, but allow immediate operand. */ % /* 4-7 cycles on A64 (varies with gcc version, -O* and -static. */ % /* % * Using the immediate operand tends to be slower! % * % * But note that we don't use the memory clobber pessimization. % * This allows the inc operand (and the loop counter) to stay % * in registers across the call here, so the register operand % * is naturally faster. gcc should prefer the register operand % * anyway in this case, but is not that smart. It even prefers % * the register operand when the immediate operand is disparaged. % * Sometimes the optimization (just loop alignment?) accidentally % * compensates for making the worst choice. % */ % /* 5 cycles on A64. */ % __asm __volatile(" \n\ % addl %1,%%ds:%0 \n\ % jnc 8f \n\ % call dummy_accum \n\ % 8: ; \n\ % " % : "=m,m" (*c) : "?i,r" ((uint32_t)inc)); % #elif 0 % /* As in previous, but go through a register. Neg. incr. now work. */ % /* 8.5-9 cycles on A64. */ % uint32_t exp, src; % % __asm __volatile(" \n\ % movl %%ds:%4,%1 \n\ % 1: \n\ % movl %1,%2 \n\ % addl %3,%2 \n\ % jnc 7f \n\ % call dummy_accum \n\ % jmp 8f \n\ % 7: \n\ % cmpxchgl %2,%%ds:%0 \n\ % jne 1b \n\ % 8: ; \n\ % " % : "=m" (*c), /* 0 */ % "=a" (exp), /* 1 */ % "=r" (src) /* 2 */ % : "ir" ((uint32_t)inc), /* 3 */ /* don't try to disparage "i" */ % "m" (*c) /* 4 */ % ); % #else % /* Full 64-bit version. */ % /* 8-9 cycles on A64. */ % uint32_t exp, src; % % __asm __volatile(" \n\ % /* Runtime testing of %4 is wasteful if inc is constant. */ \n\ % /* Especially with the high register pressure. */ \n\ % testl %4,%4 \n\ % je 1f \n\ % call dummy_accum \n\ % jmp 8f \n\ % 1: \n\ % movl %%ds:%5,%1 \n\ % 1: \n\ % movl %1,%2 \n\ % addl %3,%2 \n\ % jnc 7f \n\ % call dummy_accum \n\ % jmp 8f \n\ % 7: \n\ % cmpxchgl %2,%%ds:%0 \n\ % jne 1b \n\ % 8: ; \n\ % " % : "=m" (*c), /* 0 */ % "=a" (exp), /* 1 */ % "=r" (src) /* 2 */ % : "r" ((uint32_t)inc), /* 3 */ % "r" ((uint32_t)(inc >> 32)), /* 4 */ % "m" (*c) /* 5 */ % ); % #endif % } % % uint64_t mycounter[1]; % uint32_t my32counter[1]; % % int % main(void) % { % unsigned i; % % for (i = 0; i < 2010168339; i++) /* sysctl -n machdep.tsc_freq */ % #if 0 % counter_u64_add(mycounter, 1); % #elif 1 % alt_counter_u64_add(mycounter, 1); % #else % counter_u32_add(my32counter, 1); % #endif % printf("%ju\n", (uintmax_t)mycounter[0]); % return (mycounter[0] == 2010168339 ? 0 : 1); % } Bruce From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 02:47:55 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 93732943; Sat, 22 Jun 2013 02:47:55 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 8628C172A; Sat, 22 Jun 2013 02:47:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5M2ltrs046699; Sat, 22 Jun 2013 02:47:55 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5M2ltKW046695; Sat, 22 Jun 2013 02:47:55 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306220247.r5M2ltKW046695@svn.freebsd.org> From: Devin Teske Date: Sat, 22 Jun 2013 02:47:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252081 - head/usr.sbin/bsdconfig/console X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 02:47:55 -0000 Author: dteske Date: Sat Jun 22 02:47:54 2013 New Revision: 252081 URL: http://svnweb.freebsd.org/changeset/base/252081 Log: Fix a regression introduced by r251967, resulting in: /usr/libexec/bsdconfig/080.console/console: 136: Syntax error: ";;" unexpected (expecting "fi") Modified: head/usr.sbin/bsdconfig/console/console Modified: head/usr.sbin/bsdconfig/console/console ============================================================================== --- head/usr.sbin/bsdconfig/console/console Sat Jun 22 02:22:12 2013 (r252080) +++ head/usr.sbin/bsdconfig/console/console Sat Jun 22 02:47:54 2013 (r252081) @@ -133,7 +133,7 @@ while :; do esac if [ "$command" ]; then - $BSDCFG_LIBE/$APP_DIR/$command ${USE_XDIALOG:+-X} ;; + $BSDCFG_LIBE/$APP_DIR/$command ${USE_XDIALOG:+-X} else f_die 1 "$msg_unknown_console_menu_selection" fi From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 02:51:22 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id EE123B5A; Sat, 22 Jun 2013 02:51:22 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id DFF631741; Sat, 22 Jun 2013 02:51:22 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5M2pMwd048066; Sat, 22 Jun 2013 02:51:22 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5M2pMpx048065; Sat, 22 Jun 2013 02:51:22 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306220251.r5M2pMpx048065@svn.freebsd.org> From: Devin Teske Date: Sat, 22 Jun 2013 02:51:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252082 - head/usr.sbin/bsdconfig/mouse X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 02:51:23 -0000 Author: dteske Date: Sat Jun 22 02:51:22 2013 New Revision: 252082 URL: http://svnweb.freebsd.org/changeset/base/252082 Log: Fix a regression introduced by r251967, resulting in: /usr/libexec/bsdconfig/110.mouse/mouse: 134: Syntax error: ";;" unexpected (expecting "fi") Modified: head/usr.sbin/bsdconfig/mouse/mouse Modified: head/usr.sbin/bsdconfig/mouse/mouse ============================================================================== --- head/usr.sbin/bsdconfig/mouse/mouse Sat Jun 22 02:47:54 2013 (r252081) +++ head/usr.sbin/bsdconfig/mouse/mouse Sat Jun 22 02:51:22 2013 (r252082) @@ -131,7 +131,7 @@ while :; do esac if [ "$command" ]; then - $BSDCFG_LIBE/$APP_DIR/$command ${USE_XDIALOG:+-X} ;; + $BSDCFG_LIBE/$APP_DIR/$command ${USE_XDIALOG:+-X} else f_die 1 "$msg_unknown_mouse_menu_selection" fi From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 02:57:53 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 10211DEC; Sat, 22 Jun 2013 02:57:53 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id DD9B8175D; Sat, 22 Jun 2013 02:57:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5M2vqOS049068; Sat, 22 Jun 2013 02:57:52 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5M2vquh049066; Sat, 22 Jun 2013 02:57:52 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306220257.r5M2vquh049066@svn.freebsd.org> From: Devin Teske Date: Sat, 22 Jun 2013 02:57:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252083 - head/usr.sbin/bsdconfig/share/media X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 02:57:53 -0000 Author: dteske Date: Sat Jun 22 02:57:52 2013 New Revision: 252083 URL: http://svnweb.freebsd.org/changeset/base/252083 Log: Take advantage of the fact that f_getvar evaluates the $var_to_get parameter within braces, allowing all manner of parameter expansions (properly quoted or escaped, of course). Modified: head/usr.sbin/bsdconfig/share/media/ftp.subr head/usr.sbin/bsdconfig/share/media/httpproxy.subr Modified: head/usr.sbin/bsdconfig/share/media/ftp.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/ftp.subr Sat Jun 22 02:51:22 2013 (r252082) +++ head/usr.sbin/bsdconfig/share/media/ftp.subr Sat Jun 22 02:57:52 2013 (r252083) @@ -853,11 +853,10 @@ f_media_get_ftp() userpass="$userpass${userpass:+@}" fi - local ftp_dir mode rx - f_getvar $VAR_FTP_DIR ftp_dir + local dir mode rx + f_getvar $VAR_FTP_DIR\#/ dir f_getvar $VAR_FTP_STATE mode - local dir="${ftp_dir#/}" local port="${ftp_port:+:$ftp_port}" case "$host" in *:*) host="[$host]"; esac Modified: head/usr.sbin/bsdconfig/share/media/httpproxy.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/httpproxy.subr Sat Jun 22 02:51:22 2013 (r252082) +++ head/usr.sbin/bsdconfig/share/media/httpproxy.subr Sat Jun 22 02:57:52 2013 (r252083) @@ -292,7 +292,7 @@ f_media_init_http_proxy() ;; *) local fdir fp - f_getvar $VAR_FTP_PATH fp + f_getvar $VAR_FTP_PATH%/ fp for fdir in $FTP_DIRS; do setvar $VAR_HTTP_PROXY_PATH "$fp/$fdir/$rel" if f_http_proxy_check_access; then @@ -380,9 +380,9 @@ f_media_get_http_proxy() fi local proxy_path mode - f_getvar $VAR_HTTP_PROXY_PATH proxy_path + f_getvar $VAR_HTTP_PROXY_PATH%/ proxy_path f_getvar $VAR_HTTP_FTP_MODE mode - local url="${proxy_path%/}/$file$mode" rx + local url="$proxy_path/$file$mode" rx f_dprintf "sending http request for: %s" "$url" printf "GET %s HTTP/1.0\r\n\r\n" "$url" | nc -n "$host" "$proxy_port" | From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 03:38:01 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id B9286643; Sat, 22 Jun 2013 03:38:01 +0000 (UTC) (envelope-from brde@optusnet.com.au) Received: from mail108.syd.optusnet.com.au (mail108.syd.optusnet.com.au [211.29.132.59]) by mx1.freebsd.org (Postfix) with ESMTP id 4BA6D197E; Sat, 22 Jun 2013 03:38:00 +0000 (UTC) Received: from c122-106-156-23.carlnfd1.nsw.optusnet.com.au (c122-106-156-23.carlnfd1.nsw.optusnet.com.au [122.106.156.23]) by mail108.syd.optusnet.com.au (Postfix) with ESMTPS id 1A8FE1A0177; Sat, 22 Jun 2013 13:37:59 +1000 (EST) Date: Sat, 22 Jun 2013 13:37:58 +1000 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Bruce Evans Subject: Re: svn commit: r252032 - head/sys/amd64/include In-Reply-To: <20130622110352.J2033@besplex.bde.org> Message-ID: <20130622124832.S2347@besplex.bde.org> References: <201306201430.r5KEU4G5049115@svn.freebsd.org> <20130621065839.J916@besplex.bde.org> <20130621081116.E1151@besplex.bde.org> <20130621090207.F1318@besplex.bde.org> <20130621064901.GS1214@FreeBSD.org> <20130621184140.G848@besplex.bde.org> <20130621135427.GA1214@FreeBSD.org> <20130622110352.J2033@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.0 cv=K8x6hFqI c=1 sm=1 a=0l9hOOMEwYoA:10 a=kj9zAlcOel0A:10 a=PO7r1zJSAAAA:8 a=JzwRw_2MAAAA:8 a=gvJhbHXk4isA:10 a=1IH7RAB7_n_xZsG-YuwA:9 a=CjuIK1q_8ugA:10 a=ebeQFi2P/qHVC0Yw9JDJ4g==:117 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Gleb Smirnoff , Konstantin Belousov , src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 03:38:01 -0000 On Sat, 22 Jun 2013, I wrote: > ... > Here are considerably expanded tests, with noninline tests dropped. > Summary of times on Athlon64: > > simple increment: 4-7 cycles (1) > simple increment preceded by feature test: 5-8 cycles (1) > simple 32-bit increment: 4-7 cycles (2) > correct 32-bit increment (addl to mem): 5.5-7 cycles (3) > inlined critical section: 8.5 cycles (4) > better inlined critical section: 7 cycles (5) > correct unsigned 32-bit inc of 64-bit counter: 4-7 cycles (6) > "improve" previous to allow immediate operand: 5+ cycles > correct signed 32-bit inc of 64-bit counter: 8.5-9 cycles (7) > correct 64-bit inc of 64-bit counter: 8-9 cycles (8) > -current method (cmpxchg8b): 18 cycles corei7 (freefall) has about the same timing as Athlon64, but core2 (ref10-i386) is 3-4 cycles slower for the tests that use cmpxchg. > (4) The critical section method is quite fast when inlined. > (5) The critical section method is even faster when optimized. This is > what should be used if you don't want the complications for the > daemon. Oops, I forgot that critical sections are much slower in -current than in my version. They probably take 20-40 cycles for the best case, and can't easily be tested in userland since they disable interrupts in hardware. My versions disable interrupts in software. > ... > % % static inline void > % alt_counter_u64_add(counter_u64_t c, int64_t inc) > % { > % #if 1 > % /* 8.5 cycles on A64. */ > % td->td_critnest++; > % __asm __volatile("addl %1,%%ds:%0" : "=m,m" (*c) : "?i,r" (inc)); > % td->td_critnest++; Oops, one increment should be a decrement. > % #elif 1 > % /* 7 cycles on A64. */ > % uint32_t ocritnest; > % > % ocritnest = td->td_critnest; > % td->td_critnest = ocritnest + 1; > % __asm __volatile("addl %1,%%ds:%0" : "=m,m" (*c) : "?i,r" (inc)); > % td->td_critnest = ocritnest; > % #elif 0 Even in my version, I have to check for unmasked interrupts when td_critnest is reduced to 0. At least the test for being reduced to 0 can be very fast, since the reduced value is loaded early and can be tested early. Further tests confirm that incl and incq are pipelined normally on at least corei7 and core2. In the loop test, freefall can do 4 independent addq's to memory faster than it can do 1 :-). It can do 6 independent addq's to memory in the same time that it can do 1. After that, the loop overhead prevents geting the complete bandwidth of the memory system. However, 6 addq's to the same memory location take a little more than 6 times longer than 1. Multiple increments of the same counter one after the other are probably rare, but the counter API makes it harder to coaelsce them if they occur, and the implementation using independent asms ensures that the compiler cannot coalesce them. Bruce From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 03:44:49 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id ED6BDC23; Sat, 22 Jun 2013 03:44:49 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id DFC3619A7; Sat, 22 Jun 2013 03:44:49 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5M3in1V062546; Sat, 22 Jun 2013 03:44:49 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5M3in5O062545; Sat, 22 Jun 2013 03:44:49 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306220344.r5M3in5O062545@svn.freebsd.org> From: Devin Teske Date: Sat, 22 Jun 2013 03:44:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252084 - head/usr.sbin/bsdconfig/share/media X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 03:44:50 -0000 Author: dteske Date: Sat Jun 22 03:44:49 2013 New Revision: 252084 URL: http://svnweb.freebsd.org/changeset/base/252084 Log: Trim the trailing `/' from the ftp_dir when validating that the directory exists on the FTP server. This now means that when you specify a full-path to the repository on the FTP server that it doesn't matter whether you have a trailing `/' or not. Modified: head/usr.sbin/bsdconfig/share/media/ftp.subr Modified: head/usr.sbin/bsdconfig/share/media/ftp.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/ftp.subr Sat Jun 22 02:57:52 2013 (r252083) +++ head/usr.sbin/bsdconfig/share/media/ftp.subr Sat Jun 22 03:44:49 2013 (r252084) @@ -659,7 +659,10 @@ f_media_init_ftp() break # to failure fi if echo "$rx" | awk -v dir="/${ftp_dir#/}" ' - BEGIN { found = 0 } + BEGIN { + found = 0 + sub("/$", "", dir) + } /^Remote directory: / { sub(/^[^:]*:[[:space:]]*/, "") if ($0 != dir) next From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 03:50:15 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 1CA5DED; Sat, 22 Jun 2013 03:50:15 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 0F06F19D2; Sat, 22 Jun 2013 03:50:15 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5M3oE2b063605; Sat, 22 Jun 2013 03:50:14 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5M3oEaL063604; Sat, 22 Jun 2013 03:50:14 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306220350.r5M3oEaL063604@svn.freebsd.org> From: Devin Teske Date: Sat, 22 Jun 2013 03:50:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252085 - head/usr.sbin/bsdconfig/share/media X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 03:50:15 -0000 Author: dteske Date: Sat Jun 22 03:50:14 2013 New Revision: 252085 URL: http://svnweb.freebsd.org/changeset/base/252085 Log: Oops, previous revision (r252084) broke non-full-path resolution (e.g., ftp://ftp.freebsd.org or ftp://ftp.freebsd.org/). Now both full-path and non-full resolution is working regardless of trailing-slash. Modified: head/usr.sbin/bsdconfig/share/media/ftp.subr Modified: head/usr.sbin/bsdconfig/share/media/ftp.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/ftp.subr Sat Jun 22 03:44:49 2013 (r252084) +++ head/usr.sbin/bsdconfig/share/media/ftp.subr Sat Jun 22 03:50:14 2013 (r252085) @@ -661,7 +661,7 @@ f_media_init_ftp() if echo "$rx" | awk -v dir="/${ftp_dir#/}" ' BEGIN { found = 0 - sub("/$", "", dir) + if ( dir != "/" ) sub("/$", "", dir) } /^Remote directory: / { sub(/^[^:]*:[[:space:]]*/, "") From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 03:54:18 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 67F1443C; Sat, 22 Jun 2013 03:54:18 +0000 (UTC) (envelope-from dteske@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 5A40919EA; Sat, 22 Jun 2013 03:54:18 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5M3sIEV065151; Sat, 22 Jun 2013 03:54:18 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5M3sIcx065150; Sat, 22 Jun 2013 03:54:18 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306220354.r5M3sIcx065150@svn.freebsd.org> From: Devin Teske Date: Sat, 22 Jun 2013 03:54:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252086 - head/usr.sbin/bsdconfig/share/media X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 03:54:18 -0000 Author: dteske Date: Sat Jun 22 03:54:17 2013 New Revision: 252086 URL: http://svnweb.freebsd.org/changeset/base/252086 Log: Fix a code typo that prevented the probing of the current defaultrouter in-order to pre-populate the editor. Modified: head/usr.sbin/bsdconfig/share/media/tcpip.subr Modified: head/usr.sbin/bsdconfig/share/media/tcpip.subr ============================================================================== --- head/usr.sbin/bsdconfig/share/media/tcpip.subr Sat Jun 22 03:50:14 2013 (r252085) +++ head/usr.sbin/bsdconfig/share/media/tcpip.subr Sat Jun 22 03:54:17 2013 (r252086) @@ -593,7 +593,7 @@ f_ifconfig_netmask() # This function is a two-parter. Below is the awk(1) portion of the function, # afterward is the sh(1) function which utilizes the below awk script. # -f_route_get_default=' +f_route_get_default_awk=' BEGIN { found = 0 } ( $1 == "gateway:" ) \ { From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 04:22:24 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id B092CBBF; Sat, 22 Jun 2013 04:22:24 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from onyx.glenbarber.us (onyx.glenbarber.us [199.48.134.227]) by mx1.freebsd.org (Postfix) with ESMTP id 7945B1B2E; Sat, 22 Jun 2013 04:22:24 +0000 (UTC) Received: from glenbarber.us (nucleus.glenbarber.us [IPv6:2001:470:8:1205:2:2:ff:29]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: gjb) by onyx.glenbarber.us (Postfix) with ESMTPSA id 9160323F840; Sat, 22 Jun 2013 00:22:22 -0400 (EDT) DKIM-Filter: OpenDKIM Filter v2.8.3 onyx.glenbarber.us 9160323F840 Authentication-Results: onyx.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Sat, 22 Jun 2013 00:22:19 -0400 From: Glen Barber To: Rick Macklem Subject: Re: svn commit: r252074 - head/sys/fs/nfsclient Message-ID: <20130622042219.GC1888@glenbarber.us> References: <201306212246.r5LMkHBY070137@svn.freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="oJ71EGRlYNjSvfq7" Content-Disposition: inline In-Reply-To: <201306212246.r5LMkHBY070137@svn.freebsd.org> X-Operating-System: FreeBSD 10.0-CURRENT amd64 User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 04:22:24 -0000 --oJ71EGRlYNjSvfq7 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Jun 21, 2013 at 10:46:17PM +0000, Rick Macklem wrote: > Author: rmacklem > Date: Fri Jun 21 22:46:16 2013 > New Revision: 252074 > URL: http://svnweb.freebsd.org/changeset/base/252074 >=20 > Log: > The NFSv4.1 LayoutCommit operation requires a valid offset and length. > (0, 0 is not sufficient) This patch a loop for each file layout, using > the offset, length of each file layout in a separate LayoutCommit. >=20 > Modified: > head/sys/fs/nfsclient/nfs_clstate.c >=20 > Modified: head/sys/fs/nfsclient/nfs_clstate.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/fs/nfsclient/nfs_clstate.c Fri Jun 21 22:45:03 2013 (r252073) > +++ head/sys/fs/nfsclient/nfs_clstate.c Fri Jun 21 22:46:16 2013 (r252074) > @@ -5145,16 +5145,28 @@ static void > nfscl_dolayoutcommit(struct nfsmount *nmp, struct nfscllayout *lyp, > struct ucred *cred, NFSPROC_T *p) > { > + struct nfsclflayout *flp; > + uint64_t len; > int error; > =20 > - error =3D nfsrpc_layoutcommit(nmp, lyp->nfsly_fh, lyp->nfsly_fhlen, > - 0, 0, 0, lyp->nfsly_lastbyte, &lyp->nfsly_stateid, > - NFSLAYOUT_NFSV4_1_FILES, 0, NULL, cred, p, NULL); > - if (error =3D=3D NFSERR_NOTSUPP) { > - /* If the server doesn't want it, don't bother doing it. */ > - NFSLOCKMNT(nmp); > - nmp->nm_state |=3D NFSSTA_NOLAYOUTCOMMIT; > - NFSUNLOCKMNT(nmp); > + LIST_FOREACH(flp, &lyp->nfsly_flayrw, nfsfl_list) { > + if (flp->nfsfl_off <=3D lyp->nfsly_lastbyte) { > + len =3D flp->nfsfl_end - flp->nfsfl_off; > + error =3D nfsrpc_layoutcommit(nmp, lyp->nfsly_fh, > + lyp->nfsly_fhlen, 0, flp->nfsfl_off, len, > + lyp->nfsly_lastbyte, &lyp->nfsly_stateid, > + NFSLAYOUT_NFSV4_1_FILES, 0, NULL, cred, p, NULL); > + NFSCL_DEBUG(4, "layoutcommit err=3D%d off=3D%qd len=3D%qd " > + "lastbyte=3D%qd\n", error, flp->nfsfl_off, len, > + lyp->nfsly_lastbyte); > + if (error =3D=3D NFSERR_NOTSUPP) { > + /* If not supported, don't bother doing it. */ > + NFSLOCKMNT(nmp); > + nmp->nm_state |=3D NFSSTA_NOLAYOUTCOMMIT; > + NFSUNLOCKMNT(nmp); > + break; > + } > + } > } > } > =20 This breaks head/. /src/sys/fs/nfsclient/nfs_clstate.c:5161:8: error: format specifies type 'l= ong long' but the argument has type 'uint64_t' (aka 'unsigned long') [-Werror,-Wformat] lyp->nfsly_lastbyte); ^~~~~~~~~~~~~~~~~~~ /src/sys/fs/nfs/nfscl.h:74:11: note: expanded from macro 'NFSCL_DEBUG' printf(__VA_ARGS__); \ ^ 3 errors generated. *** Error code 1 Stop. make: stopped in /obj/amd64.amd64/src/sys/LINT *** Error code 1 Stop. make: stopped in /src Glen --oJ71EGRlYNjSvfq7 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iQEcBAEBCAAGBQJRxSZ7AAoJEFJPDDeguUajOrsIALUzOKiltTLEN60HQLw00pEa U3OsGNV307LKbVD9QOwwj9XccXnruf70I4sT92VZZqew5WN9MhPnKTmlBCotqy+U t7JmRyeVYq+Lb7HXpxh1IzxE2mQ2FzjXe0zIkjLjfD+73z4mBoQ8p4yKfnZisEsr FEioPGqpH+PM7xhI+lfSPXGImG2Vl3/PFieM+kH3Nk0nGdLMJzrWvJEGnhJ82UGb pUMS6DgBhzBp2FO/kpn+mH9A4KTKLfSPmUeFUABPRg0J0c5ZOUkuPDDLTN69k+rT IqhFuagPw2qCn35zd1ts8N3dsqIZDV5u6GTbUQezqa0e6WFP5cp/S5ooDRqf5Dc= =Wbj4 -----END PGP SIGNATURE----- --oJ71EGRlYNjSvfq7-- From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 08:58:21 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 29CD1D0A; Sat, 22 Jun 2013 08:58:21 +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 BEC2912A3; Sat, 22 Jun 2013 08:58:20 +0000 (UTC) Received: from c122-106-156-23.carlnfd1.nsw.optusnet.com.au (c122-106-156-23.carlnfd1.nsw.optusnet.com.au [122.106.156.23]) by mail105.syd.optusnet.com.au (Postfix) with ESMTPS id 3273310404B4; Sat, 22 Jun 2013 18:58:18 +1000 (EST) Date: Sat, 22 Jun 2013 18:58:15 +1000 (EST) From: Bruce Evans X-X-Sender: bde@besplex.bde.org To: Bruce Evans Subject: Re: svn commit: r252032 - head/sys/amd64/include In-Reply-To: <20130622124832.S2347@besplex.bde.org> Message-ID: <20130622174921.I3112@besplex.bde.org> References: <201306201430.r5KEU4G5049115@svn.freebsd.org> <20130621065839.J916@besplex.bde.org> <20130621081116.E1151@besplex.bde.org> <20130621090207.F1318@besplex.bde.org> <20130621064901.GS1214@FreeBSD.org> <20130621184140.G848@besplex.bde.org> <20130621135427.GA1214@FreeBSD.org> <20130622110352.J2033@besplex.bde.org> <20130622124832.S2347@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.0 cv=K8x6hFqI c=1 sm=1 a=0l9hOOMEwYoA:10 a=kj9zAlcOel0A:10 a=PO7r1zJSAAAA:8 a=JzwRw_2MAAAA:8 a=gvJhbHXk4isA:10 a=im8X6hwErO16iArDMbAA:9 a=CjuIK1q_8ugA:10 a=ebeQFi2P/qHVC0Yw9JDJ4g==:117 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Gleb Smirnoff , Konstantin Belousov , src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 08:58:21 -0000 On Sat, 22 Jun 2013, I wrote: > On Sat, 22 Jun 2013, I wrote: > >> ... >> Here are considerably expanded tests, with noninline tests dropped. >> Summary of times on Athlon64: >> >> simple increment: 4-7 cycles (1) >> simple increment preceded by feature test: 5-8 cycles (1) >> simple 32-bit increment: 4-7 cycles (2) >> correct 32-bit increment (addl to mem): 5.5-7 cycles (3) >> inlined critical section: 8.5 cycles (4) >> better inlined critical section: 7 cycles (5) >> correct unsigned 32-bit inc of 64-bit counter: 4-7 cycles (6) >> "improve" previous to allow immediate operand: 5+ cycles >> correct signed 32-bit inc of 64-bit counter: 8.5-9 cycles (7) >> correct 64-bit inc of 64-bit counter: 8-9 cycles (8) >> -current method (cmpxchg8b): 18 cycles > > corei7 (freefall) has about the same timing as Athlon64, but core2 > (ref10-i386) is 3-4 cycles slower for the tests that use cmpxchg. > >> (4) The critical section method is quite fast when inlined. >> (5) The critical section method is even faster when optimized. This is >> what should be used if you don't want the complications for the >> daemon. > > Oops, I forgot that critical sections are much slower in -current than > in my version. They probably take 20-40 cycles for the best case, and > can't easily be tested in userland since they disable interrupts in > hardware. My versions disable interrupts in software. Re-oops, I was looking at the wrong tree. -current is similar to my version here. Anyway, almost all this is moot. The counter fetch is inherently non-atomic, on i386 so it is pointless to do the counter update atomically at the per-CPU level. Losing the race from non-atomic counter updates is very unlikely since the race window is about 2 nsec wide and occurs only on approximately every 4 billionth update. Losing the race in the fetch is a little more likely. The latter might be handled by a heuristic, and anything for this works for the update too. It seems to be good enough to detect counters going backwards and ignore the new value then. That takes more space for the record of the previous values than I like. Non-atomic fetches from subr_counter.c: % void % counter_u64_zero(counter_u64_t c) % { % int i; % % for (i = 0; i < mp_ncpus; i++) % *(uint64_t *)((char *)c + sizeof(struct pcpu) * i) = 0; % } Non-atomic stores are more of a problem. Races in stores can create permanently invalid counter values. Perhaps i386 memory ordering is strong enough to help. But I think it doesn't help much. It would locked cmpxchg8b in the i386 update and maybe here too to avoid the races, and the lock would defeat the point of pcpu counters. % % uint64_t % counter_u64_fetch(counter_u64_t c) % { % uint64_t r; % int i; % % r = 0; % for (i = 0; i < mp_ncpus; i++) % r += *(uint64_t *)((char *)c + sizeof(struct pcpu) * i); % % return (r); % } This code depends on 64-bit loads being atomic. They just aren't on 32-bit arches. The stores for the updates may go out in any order, and might be stale. The reads here may be in any order, especially since this is written in C. We don't care much about stale values, but want monotonically increasing values. Negative counter increments really shouldn't be supported, since they cause complications everywhere. Here they break the heuristic that a negative-going fetched value means a lost race. So the i386 version be simply "addl; adcl" to memory. Each store in this is atomic at the per-CPU level. If there is no carry, then the separate stores are equivalent to adding separate nonnegative values and the counter value is valid at all times. If there is carry, then the separate stores are equivalent to adding a negative value followed by a larger positive value. The counter transiently goes backwards, but no information is lost and the counter is eventually set to the correct forward-going value. Bruce From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 18:16:34 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 3521062A; Sat, 22 Jun 2013 18:16:34 +0000 (UTC) (envelope-from hiren.panchasara@gmail.com) Received: from mail-ee0-x235.google.com (mail-ee0-x235.google.com [IPv6:2a00:1450:4013:c00::235]) by mx1.freebsd.org (Postfix) with ESMTP id ED8371825; Sat, 22 Jun 2013 18:16:32 +0000 (UTC) Received: by mail-ee0-f53.google.com with SMTP id c41so5250301eek.12 for ; Sat, 22 Jun 2013 11:16:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=oMEIIkjipJYe79L4RwRdMYT7fmhgptV9OptnF6QzRB4=; b=O3mtoyCQUTafCTqbZXcgcAbZVhaHMdTw6wGVxKvygu33nMDJEOUgK8szwRFPxhXtnV ZskBA0ZoHaCA4a8gvWMSis4iYjyMuxDy2L84/Lasic9exh2QugAofhAm9ifPl8JmiUJP tSuz+GqQ2E+5dRYnfyP3a8wiaIRLNJncqf83pud3pH0AHkLTFZCi4gdo4twLcHpho/CE uZh47VF0a1v3+oMJh8a17uxEM3DVjZ1yDIjh2aVvjWpsejy8mRN4mMSOLzhQodTna8GI nT5JLsoD4ZW8hD0NttZCPt8KIiEYKJCBaHEsB98p0rukgwI982QbNlzlr15LawrZwN1H zJGw== MIME-Version: 1.0 X-Received: by 10.14.1.70 with SMTP id 46mr17832318eec.82.1371924992012; Sat, 22 Jun 2013 11:16:32 -0700 (PDT) Sender: hiren.panchasara@gmail.com Received: by 10.14.119.203 with HTTP; Sat, 22 Jun 2013 11:16:31 -0700 (PDT) In-Reply-To: <20130622042219.GC1888@glenbarber.us> References: <201306212246.r5LMkHBY070137@svn.freebsd.org> <20130622042219.GC1888@glenbarber.us> Date: Sat, 22 Jun 2013 11:16:31 -0700 X-Google-Sender-Auth: uaOagIKZcvJNqoxZZxRvbIcQmdk Message-ID: Subject: Re: svn commit: r252074 - head/sys/fs/nfsclient From: hiren panchasara To: Glen Barber , Hiroki Sato Content-Type: text/plain; charset=UTF-8 Cc: svn-src-head , Rick Macklem , svn-src-all , src-committers X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 18:16:34 -0000 + Hiroki Hiroki seems to have a patch fixing it. http://lists.freebsd.org/pipermail/freebsd-current/2013-June/042605.html cheers, Hiren On Fri, Jun 21, 2013 at 9:22 PM, Glen Barber wrote: > On Fri, Jun 21, 2013 at 10:46:17PM +0000, Rick Macklem wrote: >> Author: rmacklem >> Date: Fri Jun 21 22:46:16 2013 >> New Revision: 252074 >> URL: http://svnweb.freebsd.org/changeset/base/252074 >> >> Log: >> The NFSv4.1 LayoutCommit operation requires a valid offset and length. >> (0, 0 is not sufficient) This patch a loop for each file layout, using >> the offset, length of each file layout in a separate LayoutCommit. >> >> Modified: >> head/sys/fs/nfsclient/nfs_clstate.c >> >> Modified: head/sys/fs/nfsclient/nfs_clstate.c >> ============================================================================== >> --- head/sys/fs/nfsclient/nfs_clstate.c Fri Jun 21 22:45:03 2013 (r252073) >> +++ head/sys/fs/nfsclient/nfs_clstate.c Fri Jun 21 22:46:16 2013 (r252074) >> @@ -5145,16 +5145,28 @@ static void >> nfscl_dolayoutcommit(struct nfsmount *nmp, struct nfscllayout *lyp, >> struct ucred *cred, NFSPROC_T *p) >> { >> + struct nfsclflayout *flp; >> + uint64_t len; >> int error; >> >> - error = nfsrpc_layoutcommit(nmp, lyp->nfsly_fh, lyp->nfsly_fhlen, >> - 0, 0, 0, lyp->nfsly_lastbyte, &lyp->nfsly_stateid, >> - NFSLAYOUT_NFSV4_1_FILES, 0, NULL, cred, p, NULL); >> - if (error == NFSERR_NOTSUPP) { >> - /* If the server doesn't want it, don't bother doing it. */ >> - NFSLOCKMNT(nmp); >> - nmp->nm_state |= NFSSTA_NOLAYOUTCOMMIT; >> - NFSUNLOCKMNT(nmp); >> + LIST_FOREACH(flp, &lyp->nfsly_flayrw, nfsfl_list) { >> + if (flp->nfsfl_off <= lyp->nfsly_lastbyte) { >> + len = flp->nfsfl_end - flp->nfsfl_off; >> + error = nfsrpc_layoutcommit(nmp, lyp->nfsly_fh, >> + lyp->nfsly_fhlen, 0, flp->nfsfl_off, len, >> + lyp->nfsly_lastbyte, &lyp->nfsly_stateid, >> + NFSLAYOUT_NFSV4_1_FILES, 0, NULL, cred, p, NULL); >> + NFSCL_DEBUG(4, "layoutcommit err=%d off=%qd len=%qd " >> + "lastbyte=%qd\n", error, flp->nfsfl_off, len, >> + lyp->nfsly_lastbyte); >> + if (error == NFSERR_NOTSUPP) { >> + /* If not supported, don't bother doing it. */ >> + NFSLOCKMNT(nmp); >> + nmp->nm_state |= NFSSTA_NOLAYOUTCOMMIT; >> + NFSUNLOCKMNT(nmp); >> + break; >> + } >> + } >> } >> } >> > > > This breaks head/. > > /src/sys/fs/nfsclient/nfs_clstate.c:5161:8: error: format specifies type 'long long' but the > argument has type 'uint64_t' (aka 'unsigned long') [-Werror,-Wformat] > lyp->nfsly_lastbyte); > ^~~~~~~~~~~~~~~~~~~ > /src/sys/fs/nfs/nfscl.h:74:11: note: expanded from macro 'NFSCL_DEBUG' > printf(__VA_ARGS__); \ > ^ > 3 errors generated. > *** Error code 1 > > Stop. > make: stopped in /obj/amd64.amd64/src/sys/LINT > *** Error code 1 > > Stop. > make: stopped in /src > > Glen > From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 18:22:32 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 1475098E; Sat, 22 Jun 2013 18:22:32 +0000 (UTC) (envelope-from prvs=1885c13778=killing@multiplay.co.uk) Received: from mail1.multiplay.co.uk (mail1.multiplay.co.uk [85.236.96.23]) by mx1.freebsd.org (Postfix) with ESMTP id C491B1864; Sat, 22 Jun 2013 18:22:30 +0000 (UTC) Received: from r2d2 ([82.69.141.170]) by mail1.multiplay.co.uk (mail1.multiplay.co.uk [85.236.96.23]) (MDaemon PRO v10.0.4) with ESMTP id md50004466612.msg; Sat, 22 Jun 2013 19:22:30 +0100 X-Spam-Processed: mail1.multiplay.co.uk, Sat, 22 Jun 2013 19:22:30 +0100 (not processed: message from valid local sender) X-MDDKIM-Result: neutral (mail1.multiplay.co.uk) X-MDRemoteIP: 82.69.141.170 X-Return-Path: prvs=1885c13778=killing@multiplay.co.uk X-Envelope-From: killing@multiplay.co.uk Message-ID: <28B87860D4194B3DA2E6A992537142B1@multiplay.co.uk> From: "Steven Hartland" To: "hiren panchasara" , "Glen Barber" , "Hiroki Sato" References: <201306212246.r5LMkHBY070137@svn.freebsd.org><20130622042219.GC1888@glenbarber.us> Subject: Re: svn commit: r252074 - head/sys/fs/nfsclient Date: Sat, 22 Jun 2013 19:22:40 +0100 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="UTF-8"; reply-type=original Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.5931 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157 Cc: svn-src-head , Rick Macklem , svn-src-all , src-committers X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 18:22:32 -0000 I thought the use of PRIu64 was frowned on? Regards Steve ----- Original Message ----- From: "hiren panchasara" To: "Glen Barber" ; "Hiroki Sato" Cc: "Rick Macklem" ; "src-committers" ; "svn-src-all" ; "svn-src-head" Sent: Saturday, June 22, 2013 7:16 PM Subject: Re: svn commit: r252074 - head/sys/fs/nfsclient >+ Hiroki > > Hiroki seems to have a patch fixing it. > > http://lists.freebsd.org/pipermail/freebsd-current/2013-June/042605.html > > cheers, > Hiren > > On Fri, Jun 21, 2013 at 9:22 PM, Glen Barber wrote: >> On Fri, Jun 21, 2013 at 10:46:17PM +0000, Rick Macklem wrote: >>> Author: rmacklem >>> Date: Fri Jun 21 22:46:16 2013 >>> New Revision: 252074 >>> URL: http://svnweb.freebsd.org/changeset/base/252074 >>> >>> Log: >>> The NFSv4.1 LayoutCommit operation requires a valid offset and length. >>> (0, 0 is not sufficient) This patch a loop for each file layout, using >>> the offset, length of each file layout in a separate LayoutCommit. >>> >>> Modified: >>> head/sys/fs/nfsclient/nfs_clstate.c >>> >>> Modified: head/sys/fs/nfsclient/nfs_clstate.c >>> ============================================================================== >>> --- head/sys/fs/nfsclient/nfs_clstate.c Fri Jun 21 22:45:03 2013 (r252073) >>> +++ head/sys/fs/nfsclient/nfs_clstate.c Fri Jun 21 22:46:16 2013 (r252074) >>> @@ -5145,16 +5145,28 @@ static void >>> nfscl_dolayoutcommit(struct nfsmount *nmp, struct nfscllayout *lyp, >>> struct ucred *cred, NFSPROC_T *p) >>> { >>> + struct nfsclflayout *flp; >>> + uint64_t len; >>> int error; >>> >>> - error = nfsrpc_layoutcommit(nmp, lyp->nfsly_fh, lyp->nfsly_fhlen, >>> - 0, 0, 0, lyp->nfsly_lastbyte, &lyp->nfsly_stateid, >>> - NFSLAYOUT_NFSV4_1_FILES, 0, NULL, cred, p, NULL); >>> - if (error == NFSERR_NOTSUPP) { >>> - /* If the server doesn't want it, don't bother doing it. */ >>> - NFSLOCKMNT(nmp); >>> - nmp->nm_state |= NFSSTA_NOLAYOUTCOMMIT; >>> - NFSUNLOCKMNT(nmp); >>> + LIST_FOREACH(flp, &lyp->nfsly_flayrw, nfsfl_list) { >>> + if (flp->nfsfl_off <= lyp->nfsly_lastbyte) { >>> + len = flp->nfsfl_end - flp->nfsfl_off; >>> + error = nfsrpc_layoutcommit(nmp, lyp->nfsly_fh, >>> + lyp->nfsly_fhlen, 0, flp->nfsfl_off, len, >>> + lyp->nfsly_lastbyte, &lyp->nfsly_stateid, >>> + NFSLAYOUT_NFSV4_1_FILES, 0, NULL, cred, p, NULL); >>> + NFSCL_DEBUG(4, "layoutcommit err=%d off=%qd len=%qd " >>> + "lastbyte=%qd\n", error, flp->nfsfl_off, len, >>> + lyp->nfsly_lastbyte); >>> + if (error == NFSERR_NOTSUPP) { >>> + /* If not supported, don't bother doing it. */ >>> + NFSLOCKMNT(nmp); >>> + nmp->nm_state |= NFSSTA_NOLAYOUTCOMMIT; >>> + NFSUNLOCKMNT(nmp); >>> + break; >>> + } >>> + } >>> } >>> } >>> >> >> >> This breaks head/. >> >> /src/sys/fs/nfsclient/nfs_clstate.c:5161:8: error: format specifies type 'long long' but the >> argument has type 'uint64_t' (aka 'unsigned long') [-Werror,-Wformat] >> lyp->nfsly_lastbyte); >> ^~~~~~~~~~~~~~~~~~~ >> /src/sys/fs/nfs/nfscl.h:74:11: note: expanded from macro 'NFSCL_DEBUG' >> printf(__VA_ARGS__); \ >> ^ >> 3 errors generated. >> *** Error code 1 >> >> Stop. >> make: stopped in /obj/amd64.amd64/src/sys/LINT >> *** Error code 1 >> >> Stop. >> make: stopped in /src >> >> Glen >> > ================================================ This e.mail is private and confidential between Multiplay (UK) Ltd. and the person or entity to whom it is addressed. In the event of misdirection, the recipient is prohibited from using, copying, printing or otherwise disseminating it or any information contained in it. In the event of misdirection, illegible or incomplete transmission please telephone +44 845 868 1337 or return the E.mail to postmaster@multiplay.co.uk. From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 18:35:09 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 276F8C1A; Sat, 22 Jun 2013 18:35:09 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pa0-x22a.google.com (mail-pa0-x22a.google.com [IPv6:2607:f8b0:400e:c03::22a]) by mx1.freebsd.org (Postfix) with ESMTP id D30D518B6; Sat, 22 Jun 2013 18:35:08 +0000 (UTC) Received: by mail-pa0-f42.google.com with SMTP id rl6so9296789pac.15 for ; Sat, 22 Jun 2013 11:35:08 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=subject:mime-version:content-type:from:x-priority:in-reply-to:date :cc:content-transfer-encoding:message-id:references:to:x-mailer; bh=7/aI96Arp/qu9vjhf6agitFdGCKVMX4jmXqam1UPP7U=; b=jaYzsG5d4b6eyra2uY2rd8M5paVZBuE0PopjgVrUDsEXAdE6shpHWD1rr0DONHchbI UeByj8ATHyafirdO1lh5bkkjgOb1dQ7y69eHjloFZhrxpDHuzSjuMgblc/9+6zPdcHG2 DvDD56Kt8Z6LUd9y3xtD/DGxEMcyJSE9HkoJu21BWo8GsNFn0nwP7yW1k8o2KMjWBPWS oDjAAz1wcqbH0Gwng9VoJG/Sf5V+nFuD9owfoc6r8GILv3BHXX8y+6sJlNBa/7rcrj2G p5tWb4XpWLcLRHrkZE9iDaIVeEG93I9X1+BuR/LZ/LUuv6dYIGCL4qfd16hA2qS88T7P sSKA== X-Received: by 10.66.164.232 with SMTP id yt8mr21270883pab.21.1371926108606; Sat, 22 Jun 2013 11:35:08 -0700 (PDT) Received: from [192.168.20.5] (c-98-203-241-95.hsd1.wa.comcast.net. [98.203.241.95]) by mx.google.com with ESMTPSA id o10sm10183965pbq.39.2013.06.22.11.35.07 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sat, 22 Jun 2013 11:35:07 -0700 (PDT) Subject: Re: svn commit: r252074 - head/sys/fs/nfsclient Mime-Version: 1.0 (Apple Message framework v1283) Content-Type: text/plain; charset=us-ascii From: Garrett Cooper X-Priority: 3 In-Reply-To: <28B87860D4194B3DA2E6A992537142B1@multiplay.co.uk> Date: Sat, 22 Jun 2013 11:35:05 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <337C6949-87B6-442A-ADD6-9F12766E9919@gmail.com> References: <201306212246.r5LMkHBY070137@svn.freebsd.org><20130622042219.GC1888@glenbarber.us> <28B87860D4194B3DA2E6A992537142B1@multiplay.co.uk> To: "Steven Hartland" X-Mailer: Apple Mail (2.1283) Cc: src-committers , svn-src-all , Hiroki Sato , hiren panchasara , Glen Barber , svn-src-head , Rick Macklem X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 18:35:09 -0000 On Jun 22, 2013, at 11:22 AM, Steven Hartland wrote: > I thought the use of PRIu64 was frowned on? It is in FreeBSD, unlike Linux (for better or for worse). It = should be cast with either intmax_t or uintmax_t and use %jd or %ju. Cheers, -Garrett= From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 18:38:34 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 60DBFDBA; Sat, 22 Jun 2013 18:38:34 +0000 (UTC) (envelope-from tijl@freebsd.org) Received: from mailrelay008.isp.belgacom.be (mailrelay008.isp.belgacom.be [195.238.6.174]) by mx1.freebsd.org (Postfix) with ESMTP id 3577418D4; Sat, 22 Jun 2013 18:38:32 +0000 (UTC) X-Belgacom-Dynamic: yes X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AlcGAMXtxVFR8Y5L/2dsb2JhbABVBoMJwDV7F3SCIwEBBVYjEAsOCgkaCw8CKB4GDQEFAgEBGod0vAyOI4EmB4NhA5ADgSyXWIFYgTk6 Received: from 75.142-241-81.adsl-dyn.isp.belgacom.be (HELO kalimero.tijl.coosemans.org) ([81.241.142.75]) by relay.skynet.be with ESMTP; 22 Jun 2013 20:38:20 +0200 Received: from kalimero.tijl.coosemans.org (kalimero.tijl.coosemans.org [127.0.0.1]) by kalimero.tijl.coosemans.org (8.14.7/8.14.7) with ESMTP id r5MIcJmw004158; Sat, 22 Jun 2013 20:38:19 +0200 (CEST) (envelope-from tijl@FreeBSD.org) Message-ID: <51C5EF15.10305@FreeBSD.org> Date: Sat, 22 Jun 2013 20:38:13 +0200 From: Tijl Coosemans User-Agent: Mozilla/5.0 (X11; FreeBSD i386; rv:17.0) Gecko/20130517 Thunderbird/17.0.6 MIME-Version: 1.0 To: Warner Losh Subject: Re: svn commit: r251886 - in head: contrib/apr contrib/apr-util contrib/serf contrib/sqlite3 contrib/subversion share/mk usr.bin usr.bin/svn usr.bin/svn/lib usr.bin/svn/lib/libapr usr.bin/svn/lib/libap... References: <201306180253.r5I2rj45053959@svn.freebsd.org> <11DA3D8A-AD20-4DE1-B807-D09814F61947@bsdimp.com> <51C1C7BD.9060201@FreeBSD.org> <201306191113.29703.jhb@freebsd.org> <8D00BE2B-FD8E-4E7B-B818-1C4B7F6BB6A5@bsdimp.com> <68D70A89-22F2-412C-BAF4-72BEFE21EB2F@bsdimp.com> In-Reply-To: <68D70A89-22F2-412C-BAF4-72BEFE21EB2F@bsdimp.com> X-Enigmail-Version: 1.5.1 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="----enig2EROSJMDFTAQXRVABMBWM" Cc: src-committers@FreeBSD.org, Andre Oppermann , John Baldwin , Peter Wemm , svn-src-all@FreeBSD.org, David Chisnall , svn-src-head@FreeBSD.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 18:38:34 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) ------enig2EROSJMDFTAQXRVABMBWM Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On 2013-06-20 21:34, Warner Losh wrote: > On Jun 20, 2013, at 2:40 AM, David Chisnall wrote: >> On 20 Jun 2013, at 00:10, Warner Losh wrote: >>>> - FreeBSD developers, who are probably okay with installing a >>>> port, but would prefer a version that didn't depend on >>>> kitchen/sink? >>>> >>>> - Users, who wish to be able to update the source tree and then >>>> either build world, or build some optional parts that are not >>>> part of the default install? >>>> >>>> - Some other category of svn consumer? >>>> >>>> I think having a definitive statement as to the intention of >>>> svnlite would help frame the discussion in a more productive >>>> format. >>> >>> How do I roll back to last week with FreeBSD-update? >> >> Which of the classes of user that I outlined do you think wants to >> be able to do that? As a FreeBSD user, I never felt the desire to >> do that, but maybe I was unusual. As a FreeBSD developer, I don't >> mind installing the svn port to be able to do it (although I'd >> prefer a more lightweight port). I would expect the same to apply >> to the sort of engaged user who is willing to bisect to track down >> a bug. >=20 > People trying new versions of FreeBSD. Some of them install the > release, others might install a snapshot, some will do an install > world. But if it worked in release 9.3 and broke in 9.4, then to find > where they would need to install an svn port to get all the points in > between. >=20 > Not having to install a port, possibly a port that got messed up by > the world you just build, is a big win for me in my mind. Users often > have commented to me that running FreeBSD gets harder and harder with > more hoops to jump through to do things that used to be easy. > Installing svn is one more hoop. It, by itself isn't a huge hoop, but > if we can avoid that hoop we should. >=20 > I do mind installing a port to do this. We've kicked too much out of > the tree in the name of anti-bloat, and frankly I'm glad to see > this. >=20 > I think insisting on a definitive statement on svn lite's mission > statement is a way to obstruct progress. Sometimes you just need to > things because they feel right, not because they have been through a > 20-step approval process... For what it's worth, my reservations have always been because it didn't feel right. I never asked for an approval process. I do think there should be a tool in base that can fetch source updates and it would be nice if it could roll back changes and even nicer if it could do bisects. But svn itself is not the right tool for that. For instance, will you allow that svn is updated from version x.y to x.(y+1) in a stable branch? If yes, then users might have to run "svn upgrade" which is a one way process, so how does importing svn allow you to roll back changes or do bisects then? If no, then who's volunteering to backport security fixes? ------enig2EROSJMDFTAQXRVABMBWM Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iF4EAREIAAYFAlHF7xoACgkQfoCS2CCgtivjiQD+OC4/KFjIhs0rtSWpCSUgo99k 0+KElsmD+41JIITv660A/A8NjYfUVwAGchSGrwNjAGDIeXaJ1Yw/UyAuFWLscNh9 =fw71 -----END PGP SIGNATURE----- ------enig2EROSJMDFTAQXRVABMBWM-- From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 21:58:21 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id AD41A10F; Sat, 22 Jun 2013 21:58:21 +0000 (UTC) (envelope-from rmacklem@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id 9F5FB1FC3; Sat, 22 Jun 2013 21:58:21 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5MLwLwJ085780; Sat, 22 Jun 2013 21:58:21 GMT (envelope-from rmacklem@svn.freebsd.org) Received: (from rmacklem@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5MLwLjV085779; Sat, 22 Jun 2013 21:58:21 GMT (envelope-from rmacklem@svn.freebsd.org) Message-Id: <201306222158.r5MLwLjV085779@svn.freebsd.org> From: Rick Macklem Date: Sat, 22 Jun 2013 21:58:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252100 - head/sys/fs/nfsclient X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 21:58:21 -0000 Author: rmacklem Date: Sat Jun 22 21:58:21 2013 New Revision: 252100 URL: http://svnweb.freebsd.org/changeset/base/252100 Log: Fix r252074 so that it builds on 64bit arches. Modified: head/sys/fs/nfsclient/nfs_clstate.c Modified: head/sys/fs/nfsclient/nfs_clstate.c ============================================================================== --- head/sys/fs/nfsclient/nfs_clstate.c Sat Jun 22 21:31:59 2013 (r252099) +++ head/sys/fs/nfsclient/nfs_clstate.c Sat Jun 22 21:58:21 2013 (r252100) @@ -5156,9 +5156,7 @@ nfscl_dolayoutcommit(struct nfsmount *nm lyp->nfsly_fhlen, 0, flp->nfsfl_off, len, lyp->nfsly_lastbyte, &lyp->nfsly_stateid, NFSLAYOUT_NFSV4_1_FILES, 0, NULL, cred, p, NULL); - NFSCL_DEBUG(4, "layoutcommit err=%d off=%qd len=%qd " - "lastbyte=%qd\n", error, flp->nfsfl_off, len, - lyp->nfsly_lastbyte); + NFSCL_DEBUG(4, "layoutcommit err=%d\n", error); if (error == NFSERR_NOTSUPP) { /* If not supported, don't bother doing it. */ NFSLOCKMNT(nmp); From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 22:05:24 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 4C03A45D; Sat, 22 Jun 2013 22:05:24 +0000 (UTC) (envelope-from rmacklem@uoguelph.ca) Received: from esa-annu.net.uoguelph.ca (esa-annu.mail.uoguelph.ca [131.104.91.36]) by mx1.freebsd.org (Postfix) with ESMTP id 97FD4102F; Sat, 22 Jun 2013 22:05:23 +0000 (UTC) X-Cloudmark-SP-Filtered: true X-Cloudmark-SP-Result: v=1.1 cv=ME3lrcP4jFDzpPiCSQywCMKJiHtpRWeRXBDIYmR1BZg= c=1 sm=2 a=4x594vOIrDwA:10 a=FKkrIqjQGGEA:10 a=q5jKLduKGBcA:10 a=IkcTkHD0fZMA:10 a=x9v05nQJPk5vlJdD8UoA:9 a=QEXdDO2ut3YA:10 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AqAEAO4exlGDaFve/2dsb2JhbABbhAODBbwygRJ0giMBAQUjVhsOCgICDRkCWQaIIasmkGWBJo11NAeCT4EUA6kHgywggWw X-IronPort-AV: E=Sophos;i="4.87,920,1363147200"; d="scan'208";a="35506178" Received: from muskoka.cs.uoguelph.ca (HELO zcs3.mail.uoguelph.ca) ([131.104.91.222]) by esa-annu.net.uoguelph.ca with ESMTP; 22 Jun 2013 18:05:22 -0400 Received: from zcs3.mail.uoguelph.ca (localhost.localdomain [127.0.0.1]) by zcs3.mail.uoguelph.ca (Postfix) with ESMTP id 7747DB3F1B; Sat, 22 Jun 2013 18:05:22 -0400 (EDT) Date: Sat, 22 Jun 2013 18:05:22 -0400 (EDT) From: Rick Macklem To: Garrett Cooper Message-ID: <745230801.203690.1371938722476.JavaMail.root@uoguelph.ca> In-Reply-To: <337C6949-87B6-442A-ADD6-9F12766E9919@gmail.com> Subject: Re: svn commit: r252074 - head/sys/fs/nfsclient MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Originating-IP: [172.17.91.203] X-Mailer: Zimbra 7.2.1_GA_2790 (ZimbraWebClient - FF3.0 (Win)/7.2.1_GA_2790) Cc: src-committers , svn-src-all , Hiroki Sato , hiren panchasara , Glen Barber , Steven Hartland , svn-src-head , Rick Macklem X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 22:05:24 -0000 Garrett Cooper wrote: > On Jun 22, 2013, at 11:22 AM, Steven Hartland wrote: > > > I thought the use of PRIu64 was frowned on? > > It is in FreeBSD, unlike Linux (for better or for worse). It should > be cast with either intmax_t or uintmax_t and use %jd or %ju. > Cheers, > -Garrett It's a diagnostic that barely needs to exist, so I just got rid of the 64bit parts. Sorry about the screwup, rick From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 22:12:24 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id C911364A; Sat, 22 Jun 2013 22:12:24 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id BB1571084; Sat, 22 Jun 2013 22:12:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5MMCOYV091191; Sat, 22 Jun 2013 22:12:24 GMT (envelope-from gjb@svn.freebsd.org) Received: (from gjb@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5MMCO8t091190; Sat, 22 Jun 2013 22:12:24 GMT (envelope-from gjb@svn.freebsd.org) Message-Id: <201306222212.r5MMCO8t091190@svn.freebsd.org> From: Glen Barber Date: Sat, 22 Jun 2013 22:12:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r252101 - head/release X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 22:12:24 -0000 Author: gjb Date: Sat Jun 22 22:12:24 2013 New Revision: 252101 URL: http://svnweb.freebsd.org/changeset/base/252101 Log: If MAKE_CONF and/or SRC_CONF are set and not character devices, copy to chroot to use with release build. Submitted by: Garrett Cooper (original version) Approved by: kib (mentor) MFC after: 1 week Modified: head/release/release.sh Modified: head/release/release.sh ============================================================================== --- head/release/release.sh Sat Jun 22 21:58:21 2013 (r252100) +++ head/release/release.sh Sat Jun 22 22:12:24 2013 (r252101) @@ -171,6 +171,17 @@ build_doc_ports() { fi } +# If MAKE_CONF and/or SRC_CONF are set and not character devices (/dev/null), +# copy them to the chroot. +if [ -e ${MAKE_CONF} ] && [ ! -c ${MAKE_CONF} ]; then + mkdir -p ${CHROOTDIR}/$(dirname ${MAKE_CONF}) + cp ${MAKE_CONF} ${CHROOTDIR}/${MAKE_CONF} +fi +if [ -e ${SRC_CONF} ] && [ ! -c ${SRC_CONF} ]; then + mkdir -p ${CHROOTDIR}/$(dirname ${SRC_CONF}) + cp ${SRC_CONF} ${CHROOTDIR}/${SRC_CONF} +fi + if [ -d ${CHROOTDIR}/usr/ports ]; then cp /etc/resolv.conf ${CHROOTDIR}/etc/resolv.conf build_doc_ports ${CHROOTDIR} From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 22:39:45 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 20E2A26D; Sat, 22 Jun 2013 22:39:45 +0000 (UTC) (envelope-from yaneurabeya@gmail.com) Received: from mail-pb0-x235.google.com (mail-pb0-x235.google.com [IPv6:2607:f8b0:400e:c01::235]) by mx1.freebsd.org (Postfix) with ESMTP id E0D3911E9; Sat, 22 Jun 2013 22:39:44 +0000 (UTC) Received: by mail-pb0-f53.google.com with SMTP id xb12so9364520pbc.12 for ; Sat, 22 Jun 2013 15:39:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=subject:mime-version:content-type:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to:x-mailer; bh=CD6DtAPnUrVwBRMq+gMI2xBQSIZDA9/PPr4cqvhlUvM=; b=LMVuG3O8J6QVFJSHEeLLsfZ28OAnMDLRKJHcL4jPphrCikX5RQLlBWMskvDHmTQHbo VB4CqU4vlNDO+3ayaroP9N6s7lGqxsx2foNpBDJrdy50yBt8EzzOEdRUTmmfxFokRSYu kIw8T/yVTyP2cy/zI/EVTMtLQvV3upEgNNNWILwliYGdTBRinfR7eGvaCt69XoHdwU0I i8Np+9aNnJktKkRUKCURQC02sCa0fMNfJPfYr6+XgGwaLJ3nWcuKyr4by+IwDQY2SLZs byu+DvrU2n2V+KrtQpoYQRcsW93uCUmb3/2Te4nPdePLbYtQ5XprYMYcwpeJZgbCWC27 Kcsw== X-Received: by 10.66.163.5 with SMTP id ye5mr21666606pab.60.1371940784697; Sat, 22 Jun 2013 15:39:44 -0700 (PDT) Received: from [192.168.20.5] (c-98-203-241-95.hsd1.wa.comcast.net. [98.203.241.95]) by mx.google.com with ESMTPSA id ri8sm10881872pbc.3.2013.06.22.15.39.43 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sat, 22 Jun 2013 15:39:44 -0700 (PDT) Subject: Re: svn commit: r252101 - head/release Mime-Version: 1.0 (Apple Message framework v1283) Content-Type: text/plain; charset=us-ascii From: Garrett Cooper In-Reply-To: <201306222212.r5MMCO8t091190@svn.freebsd.org> Date: Sat, 22 Jun 2013 15:39:41 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <1397DF51-1DCC-47BC-931A-5D26C94A0811@gmail.com> References: <201306222212.r5MMCO8t091190@svn.freebsd.org> To: Glen Barber X-Mailer: Apple Mail (2.1283) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 22:39:45 -0000 On Jun 22, 2013, at 3:12 PM, Glen Barber wrote: > Author: gjb > Date: Sat Jun 22 22:12:24 2013 > New Revision: 252101 > URL: http://svnweb.freebsd.org/changeset/base/252101 >=20 > Log: > If MAKE_CONF and/or SRC_CONF are set and not character devices, > copy to chroot to use with release build. >=20 > Submitted by: Garrett Cooper (original version) > Approved by: kib (mentor) > MFC after: 1 week >=20 > Modified: > head/release/release.sh Technically copying /dev/null to a file creates a 0 byte file. = That's why I used cp in the patch I submitted over email. Thanks! -Garrett= From owner-svn-src-head@FreeBSD.ORG Sat Jun 22 22:51:09 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id E674872F; Sat, 22 Jun 2013 22:51:09 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from onyx.glenbarber.us (onyx.glenbarber.us [IPv6:2607:fc50:1000:c200::face]) by mx1.freebsd.org (Postfix) with ESMTP id BDE6E1258; Sat, 22 Jun 2013 22:51:09 +0000 (UTC) Received: from glenbarber.us (nucleus.glenbarber.us [IPv6:2001:470:8:1205:2:2:ff:29]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: gjb) by onyx.glenbarber.us (Postfix) with ESMTPSA id 96B7F23F840; Sat, 22 Jun 2013 18:51:08 -0400 (EDT) DKIM-Filter: OpenDKIM Filter v2.8.3 onyx.glenbarber.us 96B7F23F840 Authentication-Results: onyx.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Sat, 22 Jun 2013 18:51:06 -0400 From: Glen Barber To: Garrett Cooper Subject: Re: svn commit: r252101 - head/release Message-ID: <20130622225106.GK1888@glenbarber.us> References: <201306222212.r5MMCO8t091190@svn.freebsd.org> <1397DF51-1DCC-47BC-931A-5D26C94A0811@gmail.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="9/GiYV45wF7IL3Iq" Content-Disposition: inline In-Reply-To: <1397DF51-1DCC-47BC-931A-5D26C94A0811@gmail.com> X-Operating-System: FreeBSD 10.0-CURRENT amd64 User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 22:51:10 -0000 --9/GiYV45wF7IL3Iq Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Sat, Jun 22, 2013 at 03:39:41PM -0700, Garrett Cooper wrote: > On Jun 22, 2013, at 3:12 PM, Glen Barber wrote: >=20 > > Author: gjb > > Date: Sat Jun 22 22:12:24 2013 > > New Revision: 252101 > > URL: http://svnweb.freebsd.org/changeset/base/252101 > >=20 > > Log: > > If MAKE_CONF and/or SRC_CONF are set and not character devices, > > copy to chroot to use with release build. > >=20 > > Submitted by: Garrett Cooper (original version) > > Approved by: kib (mentor) > > MFC after: 1 week > >=20 > > Modified: > > head/release/release.sh >=20 > Technically copying /dev/null to a file creates a 0 byte file. > That's why I used cp in the patch I submitted over email. > Thanks! Right. But did you read the script? Both __MAKE_CONF and SRCCONF are set to the path of the local files. Glen --9/GiYV45wF7IL3Iq Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iQEcBAEBCAAGBQJRxipaAAoJEFJPDDeguUaj7Y4H/0Ejam2p5q+NPa/0lWsmObcO 0PvZspf2S+fYOtNnrs45/qe7UXjamYjtTFEI52vRyh0ec6v13QZHaOEaiEoNmc6u xmcVm9bkNxTMmNxeQSIfrZCLxITgUIJdK10l0iTyGtoHXV6jJI+C59xJLD0G5QMh qfF49zNToaDTROC9NFAgM+CmfaIAG3uMnDOHuX3GQ5klhLepC3oSEG4kMoiUpe2R JO0l0sSaNwFgpMxCDyvKyUcux2nUppVaiWzsJxS6QVFqAnf4ammi4IY1wrYao9PV eMWjAiYRcctvHfVk8WGDgCu0yKRSpfm5sNR4CbQxh65UaIe9s/pSyyYx0oJ0Xhs= =M39a -----END PGP SIGNATURE----- --9/GiYV45wF7IL3Iq--