From owner-svn-src-all@FreeBSD.ORG Sun Jun 16 00:59:26 2013 Return-Path: Delivered-To: svn-src-all@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 33994AB3; Sun, 16 Jun 2013 00:59:26 +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 0A6EC100A; Sun, 16 Jun 2013 00:59: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 r5G0xPsY096564; Sun, 16 Jun 2013 00:59:25 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5G0xPa8096562; Sun, 16 Jun 2013 00:59:25 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201306160059.r5G0xPa8096562@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Sun, 16 Jun 2013 00:59:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251798 - stable/9/sys/fs/ext2fs X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 00:59:26 -0000 Author: pfg Date: Sun Jun 16 00:59:24 2013 New Revision: 251798 URL: http://svnweb.freebsd.org/changeset/base/251798 Log: MFC r251677: Relax some unnecessary unsigned type changes in ext2fs. While the changes in r245820 are in line with the ext2 spec, the code derived from UFS can use negative values so it is better to relax some types to keep them as they were, and somewhat more similar to UFS. While here clean some casts. Modified: stable/9/sys/fs/ext2fs/ext2_alloc.c stable/9/sys/fs/ext2fs/ext2_balloc.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/fs/ (props changed) Modified: stable/9/sys/fs/ext2fs/ext2_alloc.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_alloc.c Sat Jun 15 22:22:03 2013 (r251797) +++ stable/9/sys/fs/ext2fs/ext2_alloc.c Sun Jun 16 00:59:24 2013 (r251798) @@ -223,7 +223,7 @@ ext2_reallocblks(struct vop_reallocblks_ brelse(sbp); return (ENOSPC); } - sbap = (int32_t *)sbp->b_data; + sbap = (u_int *)sbp->b_data; soff = idp->in_off; } /* @@ -239,7 +239,7 @@ ext2_reallocblks(struct vop_reallocblks_ ssize = len - (idp->in_off + 1); if (bread(vp, idp->in_lbn, (int)fs->e2fs_bsize, NOCRED, &ebp)) goto fail; - ebap = (int32_t *)ebp->b_data; + ebap = (u_int *)ebp->b_data; } /* * Find the preferred location for the cluster. @@ -442,10 +442,10 @@ ext2_dirpref(struct inode *pip) { struct m_ext2fs *fs; int cg, prefcg, dirsize, cgsize; - int avgifree, avgbfree, avgndir, curdirsize; - int minifree, minbfree, maxndir; - int mincg, minndir; - int maxcontigdirs; + u_int avgifree, avgbfree, avgndir, curdirsize; + u_int minifree, minbfree, maxndir; + u_int mincg, minndir; + u_int maxcontigdirs; mtx_assert(EXT2_MTX(pip->i_ump), MA_OWNED); fs = pip->i_e2fs; Modified: stable/9/sys/fs/ext2fs/ext2_balloc.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_balloc.c Sat Jun 15 22:22:03 2013 (r251797) +++ stable/9/sys/fs/ext2fs/ext2_balloc.c Sun Jun 16 00:59:24 2013 (r251798) @@ -60,11 +60,11 @@ ext2_balloc(struct inode *ip, int32_t lb { struct m_ext2fs *fs; struct ext2mount *ump; - int32_t nb; struct buf *bp, *nbp; struct vnode *vp = ITOV(ip); struct indir indirs[NIADDR + 2]; - uint32_t newb, *bap, pref; + uint32_t nb, newb; + int32_t *bap, pref; int osize, nsize, num, i, error; *bpp = NULL; @@ -165,8 +165,8 @@ ext2_balloc(struct inode *ip, int32_t lb EXT2_LOCK(ump); pref = ext2_blkpref(ip, lbn, indirs[0].in_off + EXT2_NDIR_BLOCKS, &ip->i_db[0], 0); - if ((error = ext2_alloc(ip, lbn, pref, - (int)fs->e2fs_bsize, cred, &newb))) + if ((error = ext2_alloc(ip, lbn, pref, fs->e2fs_bsize, cred, + &newb))) return (error); nb = newb; bp = getblk(vp, indirs[1].in_lbn, fs->e2fs_bsize, 0, 0, 0); From owner-svn-src-all@FreeBSD.ORG Sun Jun 16 03:06:05 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 9599AA85 for ; Sun, 16 Jun 2013 03:06:05 +0000 (UTC) (envelope-from peter@wemm.org) Received: from mail-ve0-x22e.google.com (mail-ve0-x22e.google.com [IPv6:2607:f8b0:400c:c01::22e]) by mx1.freebsd.org (Postfix) with ESMTP id 54F6D17DB for ; Sun, 16 Jun 2013 03:06:04 +0000 (UTC) Received: by mail-ve0-f174.google.com with SMTP id oz10so1369767veb.33 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=WGd6FiqQCUcqNWpw6vg1CJWEzT8LKr706bQGfIlG6y2Pgdaj2CfrKKuEmVeG/FGO+t S9nTClg576aUGzLm+eW5TXBuls3CdTinpNm4sHDo1eu+rLCHRAoaxVKWM4W3U1tGx3Op YxWjNNZLNA3uUSRAOZNcnlm2F5APpp6tsHYaBVKsl+/aZmH5Unb170sR/4c0EK1kOX+R xuAtda7M4ebxmyZf519Zv8Cxw9NwxNmTlHEjeHdgOlC09t9z6H8AEq8Rd4HL5TMV783y Ysw16r/V+yvCxiIb4Pt3IlyGojkJyVsIz+T/Pz+2YsjIYA4X2ZksFUdqkNmL8bkdjCme dhBA== 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: ALoCoQnkkNg3MzIFEFHvMrAWLwDp1d4ocaTnHK5MlqSrdKlTLpf1NOq/LNg2DQGIgLH0i8jOaoLT Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Eitan Adler X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 03:14:48 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 03:14:48 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 03:27:28 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 03:29:00 2013 Return-Path: Delivered-To: svn-src-all@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 1B0E41F0 for ; Sun, 16 Jun 2013 03:29:00 +0000 (UTC) (envelope-from peter@wemm.org) Received: from mail-vc0-f177.google.com (mail-vc0-f177.google.com [209.85.220.177]) by mx1.freebsd.org (Postfix) with ESMTP id CB6F4189D for ; Sun, 16 Jun 2013 03:28:59 +0000 (UTC) Received: by mail-vc0-f177.google.com with SMTP id hv10so1263741vcb.22 for ; Sat, 15 Jun 2013 20:28:52 -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=EejFlcaHI0s2BGCpbJmPcq7oGFX9ALinEQxBHE2SuJVLqDDslpcmFjQpU2qBTwQPUA jYMOGYZ+3GiHAAIRqYhLiO9L1fiJHvPYCcU6pnecVjdTx7kjHgzc1UMYs74b0vErqdoc RG21bEGDANdVri5dLNOm+hFzogOxmTFJdy+esIaG9BqilQFYHWWkrvVCfI5MSbYxNrN8 xabR6wom/ChNfU9aa6TiEcAM+AeuXShnNZ3GbjgVxVWGwz6jNe829jFFNa1ZGnda2SVV CQ+c5yfUPw25wjcIE8R4BRDMGWtAhT/DSq8xnmxnAbMfMMPGkdnzjlYjQKViCdJLs4Kc rSNA== 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: ALoCoQlVeafBvjcq8qWFxZnHYzjhwlwAoMHYVWO7TQQwS9+jYRsalbQroMKKMVas9pkTY8IDhW2N Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Eitan Adler , Bryan Drewery X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 03:29:00 -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-all@FreeBSD.ORG Sun Jun 16 04:02:57 2013 Return-Path: Delivered-To: svn-src-all@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 DFEEB49D for ; Sun, 16 Jun 2013 04:02:57 +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 9C4791988 for ; Sun, 16 Jun 2013 04:02:57 +0000 (UTC) Received: by mail-vc0-f182.google.com with SMTP id id13so1289211vcb.13 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=Yij7VLNG4xso+On8QDLM25YQFBpAVIQMYg6evW14c82NVf9LkkhcFNTyLbXfWNc9Hu 6b8czaEtPulSP4f11mb8Tp36IEikfYJAGRGBYp8uXn+pGTgTMdcD8jezncqWikVih3oI 0xK+WJ5PtXl+hUfIts8uxtJiEqYsr8M6N4nNOK+6s52bdLwlUMT9S6SzObhdhE27IMpH Lv6b1x7GQwSML+f39nUMyyYPxkztcTqxanStVRaedWlYGHa/Z0oKdLdnARmEyod6xp45 MSD9pbCJLVpOoNENMFDPiqYfs7egcwqLWNRWB1+9debP/r8RfulDsWwJzhKhDYxbaCVn oRgw== 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: ALoCoQlMPtMXzqehJ1rNKD4gyp1wkoWFdpb2/fShvqqTArRU8RWLnZqK8lDuR/E7+P6mYdOYyRNK Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Eitan Adler , Bryan Drewery X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 04:26:10 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 04:40:03 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 07:16:45 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 07:18:08 2013 Return-Path: Delivered-To: svn-src-all@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 41FB8980; Sun, 16 Jun 2013 07:18:08 +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 32A0E1D2E; Sun, 16 Jun 2013 07:18: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 r5G7I8n0016708; Sun, 16 Jun 2013 07:18:08 GMT (envelope-from hrs@svn.freebsd.org) Received: (from hrs@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5G7I714016705; Sun, 16 Jun 2013 07:18:07 GMT (envelope-from hrs@svn.freebsd.org) Message-Id: <201306160718.r5G7I714016705@svn.freebsd.org> From: Hiroki Sato Date: Sun, 16 Jun 2013 07:18:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251802 - stable/9/usr.bin/lsvfs X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 07:18:08 -0000 Author: hrs Date: Sun Jun 16 07:18:07 2013 New Revision: 251802 URL: http://svnweb.freebsd.org/changeset/base/251802 Log: MFC r251580: - Add file system type number (vfc_typenum) in the list. This is useful for debugging when changing vfs.typenumhash configuration. - Refactor fmt_flags(). Modified: stable/9/usr.bin/lsvfs/lsvfs.1 stable/9/usr.bin/lsvfs/lsvfs.c Directory Properties: stable/9/usr.bin/lsvfs/ (props changed) Modified: stable/9/usr.bin/lsvfs/lsvfs.1 ============================================================================== --- stable/9/usr.bin/lsvfs/lsvfs.1 Sun Jun 16 07:16:44 2013 (r251801) +++ stable/9/usr.bin/lsvfs/lsvfs.1 Sun Jun 16 07:18:07 2013 (r251802) @@ -2,7 +2,7 @@ .\" Garrett A. Wollman, September 1994 .\" This file is in the public domain. .\" -.Dd March 16, 1995 +.Dd June 9, 2013 .Dt LSVFS 1 .Os .Sh NAME @@ -36,6 +36,8 @@ and the .Fl t option to .Xr mount 8 +.It Num +the filesystem type number. .It Refs the number of references to this VFS; i.e., the number of currently mounted file systems of this type @@ -44,6 +46,7 @@ flag bits. .El .Sh SEE ALSO .Xr mount 2 , +.Xr getvfsbyname 3 , .Xr mount 8 .Sh HISTORY A Modified: stable/9/usr.bin/lsvfs/lsvfs.c ============================================================================== --- stable/9/usr.bin/lsvfs/lsvfs.c Sun Jun 16 07:16:44 2013 (r251801) +++ stable/9/usr.bin/lsvfs/lsvfs.c Sun Jun 16 07:18:07 2013 (r251802) @@ -17,9 +17,24 @@ __FBSDID("$FreeBSD$"); #include #include -#define FMT "%-32.32s %5d %s\n" -#define HDRFMT "%-32.32s %5.5s %s\n" -#define DASHES "-------------------------------- ----- ---------------\n" +#define FMT "%-32.32s 0x%08x %5d %s\n" +#define HDRFMT "%-32.32s %10s %5.5s %s\n" +#define DASHES "-------------------------------- " \ + "---------- ----- ---------------\n" + +static struct flaglist { + int flag; + const char str[32]; /* must be longer than the longest one. */ +} fl[] = { + { .flag = VFCF_STATIC, .str = "static", }, + { .flag = VFCF_NETWORK, .str = "network", }, + { .flag = VFCF_READONLY, .str = "read-only", }, + { .flag = VFCF_SYNTHETIC, .str = "synthetic", }, + { .flag = VFCF_LOOPBACK, .str = "loopback", }, + { .flag = VFCF_UNICODE, .str = "unicode", }, + { .flag = VFCF_JAIL, .str = "jail", }, + { .flag = VFCF_DELEGADMIN, .str = "delegated-administration", }, +}; static const char *fmt_flags(int); @@ -31,13 +46,14 @@ main(int argc, char **argv) size_t buflen; argc--, argv++; - printf(HDRFMT, "Filesystem", "Refs", "Flags"); + printf(HDRFMT, "Filesystem", "Num", "Refs", "Flags"); fputs(DASHES, stdout); if(argc) { for(; argc; argc--, argv++) { if (getvfsbyname(*argv, &vfc) == 0) { - printf(FMT, vfc.vfc_name, vfc.vfc_refcount, fmt_flags(vfc.vfc_flags)); + printf(FMT, vfc.vfc_name, vfc.vfc_typenum, vfc.vfc_refcount, + fmt_flags(vfc.vfc_flags)); } else { warnx("VFS %s unknown or not loaded", *argv); rv++; @@ -54,8 +70,8 @@ main(int argc, char **argv) cnt = buflen / sizeof(struct xvfsconf); for (i = 0; i < cnt; i++) { - printf(FMT, xvfsp[i].vfc_name, xvfsp[i].vfc_refcount, - fmt_flags(xvfsp[i].vfc_flags)); + printf(FMT, xvfsp[i].vfc_name, xvfsp[i].vfc_typenum, + xvfsp[i].vfc_refcount, fmt_flags(xvfsp[i].vfc_flags)); } free(xvfsp); } @@ -66,34 +82,16 @@ main(int argc, char **argv) static const char * fmt_flags(int flags) { - /* - * NB: if you add new flags, don't forget to add them here vvvvvv too. - */ - static char buf[sizeof - "static, network, read-only, synthetic, loopback, unicode, jail"]; - size_t len; - - buf[0] = '\0'; - - if(flags & VFCF_STATIC) - strlcat(buf, "static, ", sizeof(buf)); - if(flags & VFCF_NETWORK) - strlcat(buf, "network, ", sizeof(buf)); - if(flags & VFCF_READONLY) - strlcat(buf, "read-only, ", sizeof(buf)); - if(flags & VFCF_SYNTHETIC) - strlcat(buf, "synthetic, ", sizeof(buf)); - if(flags & VFCF_LOOPBACK) - strlcat(buf, "loopback, ", sizeof(buf)); - if(flags & VFCF_UNICODE) - strlcat(buf, "unicode, ", sizeof(buf)); - if(flags & VFCF_JAIL) - strlcat(buf, "jail, ", sizeof(buf)); - if(flags & VFCF_DELEGADMIN) - strlcat(buf, "delegated-administration, ", sizeof(buf)); - len = strlen(buf); - if (len > 2 && buf[len - 2] == ',') - buf[len - 2] = '\0'; + static char buf[sizeof(struct flaglist) * sizeof(fl)]; + int i; - return buf; + buf[0] = '\0'; + for (i = 0; i < (int)nitems(fl); i++) + if (flags & fl[i].flag) { + strlcat(buf, fl[i].str, sizeof(buf)); + strlcat(buf, ", ", sizeof(buf)); + } + if (buf[0] != '\0') + buf[strlen(buf) - 2] = '\0'; + return (buf); } From owner-svn-src-all@FreeBSD.ORG Sun Jun 16 07:52:49 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 09:30:36 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 09:42:22 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 10:02:35 2013 Return-Path: Delivered-To: svn-src-all@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 305D18F3 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 EEEEB11FC for ; Sun, 16 Jun 2013 10:02:34 +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 r5GA2YrU083233 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 r5GA2YBZ083232 for svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 10:48:48 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 11:06:33 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 11:49:10 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 14:43:04 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 15:06:28 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 16:01:25 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 16:10:47 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 16:29:24 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 16:38:46 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 17:54:57 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 18:27:55 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 5E1B35A2; Sun, 16 Jun 2013 18:27:55 +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 3FE0212AC; Sun, 16 Jun 2013 18:27: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 r5GIRtBW028899; Sun, 16 Jun 2013 18:27:55 GMT (envelope-from hrs@svn.freebsd.org) Received: (from hrs@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5GIRren028888; Sun, 16 Jun 2013 18:27:53 GMT (envelope-from hrs@svn.freebsd.org) Message-Id: <201306161827.r5GIRren028888@svn.freebsd.org> From: Hiroki Sato Date: Sun, 16 Jun 2013 18:27:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251812 - in stable/9/release: . amd64 i386 ia64 pc98 powerpc sparc64 X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 18:27:55 -0000 Author: hrs Date: Sun Jun 16 18:27:53 2013 New Revision: 251812 URL: http://svnweb.freebsd.org/changeset/base/251812 Log: MFC r245177,r245346,r246283,r251650: - Set WITHOUT_SVN=yes for textproc/docproj. - Add CHECKSUM.* support in Makefile. - Use ln -fs to create a symlink. - Remove pkgadd for docports. - Use WITHOUT_JADETEX=yes instead of WITH_JADETEX=no. - Add {WORLD,KERNEL}_FLAGS to [BTWK]MAKE. - Use makefs(8) and gpart(8) for sparc64 ISO image. - Add publisher option to makefs(8). - Add missing copyright notice. - ISO 9660 specification allows only "d-characters" and "a-characters" in the Volume Descriptor (section 7.4). In short, uppercase alphanumeric + some symbols only. While the makefs utility automatically converts the characters, $LABEL should be consistent in the scripts. These fix a specification violation in 9.X iso9660 images, and cdrtools dependency and endianness issue for sparc64 release media. The label is now in uppercase letters only in all platforms. Modified: stable/9/release/Makefile stable/9/release/amd64/mkisoimages.sh stable/9/release/generate-release.sh stable/9/release/i386/mkisoimages.sh stable/9/release/ia64/mkisoimages.sh stable/9/release/pc98/mkisoimages.sh stable/9/release/powerpc/mkisoimages.sh stable/9/release/sparc64/mkisoimages.sh Directory Properties: stable/9/release/ (props changed) Modified: stable/9/release/Makefile ============================================================================== --- stable/9/release/Makefile Sun Jun 16 17:54:56 2013 (r251811) +++ stable/9/release/Makefile Sun Jun 16 18:27:53 2013 (r251812) @@ -34,6 +34,20 @@ TARGET_ARCH?= ${TARGET} IMAKE= ${MAKE} TARGET_ARCH=${TARGET_ARCH} TARGET=${TARGET} DISTDIR= dist +# Define OSRELEASE by using newvars.sh +.if !defined(OSRELEASE) || empty(OSRELEASE) +.for _V in TYPE BRANCH REVISION +${_V}!= eval $$(awk '/^${_V}=/{print}' ${.CURDIR}/../sys/conf/newvers.sh); echo $$${_V} +.endfor +.for _V in ${TARGET_ARCH} +.if !empty(TARGET:M${_V}) +OSRELEASE= ${TYPE}-${REVISION}-${BRANCH}-${TARGET} +.else +OSRELEASE= ${TYPE}-${REVISION}-${BRANCH}-${TARGET}-${TARGET_ARCH} +.endif +.endfor +.endif + .if !exists(${DOCDIR}) NODOC= true .endif @@ -117,7 +131,7 @@ system: packagesystem cp reldoc/* release .endif # Set up installation environment - ln -s /tmp/bsdinstall_etc/resolv.conf release/etc/resolv.conf + ln -fs /tmp/bsdinstall_etc/resolv.conf release/etc/resolv.conf echo sendmail_enable=\"NONE\" > release/etc/rc.conf echo hostid_enable=\"NO\" >> release/etc/rc.conf cp ${.CURDIR}/rc.local release/etc @@ -142,7 +156,7 @@ bootonly: packagesystem cp reldoc/* bootonly .endif # Set up installation environment - ln -s /tmp/bsdinstall_etc/resolv.conf bootonly/etc/resolv.conf + ln -fs /tmp/bsdinstall_etc/resolv.conf bootonly/etc/resolv.conf echo sendmail_enable=\"NONE\" > bootonly/etc/rc.conf echo hostid_enable=\"NO\" >> bootonly/etc/rc.conf cp ${.CURDIR}/rc.local bootonly/etc @@ -183,4 +197,9 @@ install: .if defined(DESTDIR) && !empty(DESTDIR) mkdir -p ${DESTDIR} .endif - cp -a ${IMAGES} ftp ${DESTDIR}/ + cp -a ftp ${DESTDIR}/ +.for I in ${IMAGES} + cp -p ${I} ${DESTDIR}/${OSRELEASE}-${I} +.endfor + cd ${DESTDIR} && sha256 ${OSRELEASE}* > ${DESTDIR}/CHECKSUM.SHA256 + cd ${DESTDIR} && md5 ${OSRELEASE}* > ${DESTDIR}/CHECKSUM.MD5 Modified: stable/9/release/amd64/mkisoimages.sh ============================================================================== --- stable/9/release/amd64/mkisoimages.sh Sun Jun 16 17:54:56 2013 (r251811) +++ stable/9/release/amd64/mkisoimages.sh Sun Jun 16 18:27:53 2013 (r251812) @@ -36,9 +36,10 @@ if [ $# -lt 3 ]; then exit 1 fi -LABEL=$1; shift +LABEL=`echo $1 | tr '[:lower:]' '[:upper:]'`; shift NAME=$1; shift -echo "/dev/iso9660/`echo $LABEL | tr '[:lower:]' '[:upper:]'` / cd9660 ro 0 0" > $1/etc/fstab -makefs -t cd9660 $bootable -o rockridge -o label=$LABEL $NAME $* +publisher="The FreeBSD Project. http://www.FreeBSD.org/" +echo "/dev/iso9660/$LABEL / cd9660 ro 0 0" > $1/etc/fstab +makefs -t cd9660 $bootable -o rockridge -o label=$LABEL -o publisher="$publisher" $NAME $* rm $1/etc/fstab Modified: stable/9/release/generate-release.sh ============================================================================== --- stable/9/release/generate-release.sh Sun Jun 16 17:54:56 2013 (r251811) +++ stable/9/release/generate-release.sh Sun Jun 16 18:27:53 2013 (r251812) @@ -1,89 +1,93 @@ #!/bin/sh +#- +# Copyright (c) 2011 Nathan Whitehorn +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +# SUCH DAMAGE. +# +# $FreeBSD$ +# # generate-release.sh: check out source trees, and build release components with # totally clean, fresh trees. # -# Usage: generate-release.sh [-r revision] [-d docrevision] \ -# [-p portsrevision] svn-branch scratch-dir +# Usage: generate-release.sh svn-branch[@revision] scratch-dir # # Environment variables: -# SVNROOT: SVN URL to FreeBSD source repository (by default, -# svn://svn.freebsd.org/base) -# MAKE_FLAGS: optional flags to pass to make (e.g. -j) -# RELSTRING: optional base name for media images (e.g. FreeBSD-9.0-RC2-amd64) -# -# Note: Since this requires a chroot, release cross-builds will not work! +# SVNROOTBASE: SVN base URL to FreeBSD repository (svn://svn.freebsd.org) +# SVNROOTSRC: URL to FreeBSD src tree (${SVNROOTBASE}/base) +# SVNROOTDOC: URL to FreeBSD doc tree (${SVNROOTBASE}/doc) +# SVNROOTPORTS:URL to FreeBSD ports tree (${SVNROOTBASE}/ports) +# BRANCHSRC: branch name of src (svn-branch[@revision]) +# BRANCHDOC: branch name of doc (head) +# BRANCHPORTS: branch name of ports (head) +# WORLD_FLAGS: optional flags to pass to buildworld (e.g. -j) +# KERNEL_FLAGS: optional flags to pass to buildkernel (e.g. -j) # -# $FreeBSD$ -# - -unset B_ARCH -unset ARCH -unset MACHINE_ARCH - -HOST_ARCH=`uname -p` usage() { - echo "Usage: $0 [-a arch] [-r revision] [-d docrevision] [-p portsrevision] svn-branch scratch-dir" + echo "Usage: $0 svn-branch[@revision] scratch-dir" 2>&1 exit 1 } -arch_error () -{ - echo "Architecture ${OPTARG} cannot be built on host architecture ${HOST_ARCH}" - exit 1 -} - -REVISION= -DOCREVISION= -PORTSREVISION= -while getopts a:d:r:p: opt; do - case $opt in - a) - case "${OPTARG}" in - i386|amd64) - if [ "${HOST_ARCH}" != "amd64" ]; then - arch_error "${OPTARG}" - fi - ;; - powerpc|powerpc64) - if [ "${HOST_ARCH}" != "powerpc64" ]; then - arch_error "${OPTARG}" - fi - ;; - *) - arch_error "${OPTARG}" - ;; - esac - B_ARCH="$OPTARG" - ;; - d) - DOCREVISION="-r $OPTARG" - ;; - r) - REVISION="-r $OPTARG" - ;; - p) - PORTSREVISION="-r $OPTARG" - ;; - \?) - usage - ;; - esac -done -shift $(($OPTIND - 1)) - -# If target architecture is not specified, use hw.machine_arch -if [ "x${B_ARCH}" == "x" ]; then - B_ARCH="${HOST_ARCH}" -fi -ARCH_FLAGS="ARCH=${B_ARCH} TARGET_ARCH=${B_ARCH}" - if [ $# -lt 2 ]; then usage fi +: ${SVNROOTBASE:=svn://svn.freebsd.org} +: ${SVNROOTSRC:=${SVNROOTBASE}/base} +: ${SVNROOTDOC:=${SVNROOTBASE}/doc} +: ${SVNROOTPORTS:=${SVNROOTBASE}/ports} +: ${SVNROOT:=${SVNROOTSRC}} # for backward compatibility +: ${SVN_CMD:=/usr/local/bin/svn} +BRANCHSRC=$1 +: ${BRANCHDOC:=head} +: ${BRANCHPORTS:=head} +: ${WORLD_FLAGS:=${MAKE_FLAGS}} +: ${KERNEL_FLAGS:=${MAKE_FLAGS}} +: ${CHROOTDIR:=$2} + +if [ ! -r "${CHROOTDIR}" ]; then + echo "${CHROOTDIR}: scratch dir not found." + exit 1 +fi + +CHROOT_CMD="/usr/sbin/chroot ${CHROOTDIR}" +case ${TARGET} in +"") ;; +*) SETENV_TARGET="TARGET=$TARGET" ;; +esac +case ${TARGET_ARCH} in +"") ;; +*) SETENV_TARGET_ARCH="TARGET_ARCH=$TARGET_ARCH" ;; +esac +SETENV="env -i PATH=/bin:/usr/bin:/sbin:/usr/sbin" +CROSSENV="${SETENV_TARGET} ${SETENV_TARGET_ARCH}" +WMAKE="make -C /usr/src ${WORLD_FLAGS}" +NWMAKE="${WMAKE} __MAKE_CONF=/dev/null SRCCONF=/dev/null" +KMAKE="make -C /usr/src ${KERNEL_FLAGS}" +RMAKE="make -C /usr/src/release" + if [ $(id -u) -ne 0 ]; then echo "Needs to be run as root." exit 1 @@ -91,93 +95,31 @@ fi set -e # Everything must succeed -svn co ${SVNROOT:-svn://svn.freebsd.org/base}/$1 $2/usr/src -svn co ${SVNROOT:-svn://svn.freebsd.org/doc}/head $2/usr/doc $DOCREVISION -svn co ${SVNROOT:-svn://svn.freebsd.org/ports}/head $2/usr/ports $PORTSREVISION - -cd $2/usr/src -make $MAKE_FLAGS ${ARCH_FLAGS} buildworld -make $ARCH_FLAGS installworld distribution DESTDIR=$2 -mount -t devfs devfs $2/dev -trap "umount $2/dev" EXIT # Clean up devfs mount on exit - -# Most commands below are run in chroot, so fake getosreldate(3) right now -OSVERSION=$(grep '#define __FreeBSD_version' $2/usr/include/sys/param.h | awk '{print $3}') -export OSVERSION -BRANCH=$(grep '^BRANCH=' $2/usr/src/sys/conf/newvers.sh | awk -F\= '{print $2}') -BRANCH=`echo ${BRANCH} | sed -e 's,",,g'` -REVISION=$(grep '^REVISION=' $2/usr/src/sys/conf/newvers.sh | awk -F\= '{print $2}') -REVISION=`echo ${REVISION} | sed -e 's,",,g'` -OSRELEASE="${REVISION}-${BRANCH}" - -pkgng_install_docports () -{ - # Attempt to install docproj port from pkgng package. - chroot ${CHROOTDIR} /bin/sh -c 'env ASSUME_ALWAYS_YES=1 /usr/sbin/pkg install -y docproj-nojadetex' - # Check if docproj was installed, since pkg(8) returns '0' if unable - # to install a package from the repository. If it is not installed, - # fallback to installing using pkg_add(1). - chroot ${CHROOTDIR} /bin/sh -c '/usr/sbin/pkg info -q docproj-nojadetex' || \ - pkgadd_install_docports -} - -build_compat9_port () -{ - chroot ${CHROOTDIR} /bin/sh -c 'make -C /usr/ports/misc/compat9x BATCH=yes install clean' -} - -pkgadd_install_docports () -{ - # Attempt to install docproj package with pkg_add(1). - # If not successful, build the docproj port. - if [ "${REVISION}" == "10.0" ]; then - # Packages for 10-CURRENT are still located in the 9-CURRENT - # directory. Override environment to use correct package - # location if building for 10-CURRENT. - PACKAGESITE="ftp://ftp.freebsd.org/pub/FreeBSD/ports/${B_ARCH}/packages-9-current/Latest/" - export PACKAGESITE - PACKAGEROOT="ftp://ftp.freebsd.org/pub/FreeBSD/ports/${B_ARCH}/packages-9-current/" - export PACKAGEROOT - PKG_PATH="ftp://ftp.freebsd.org/pub/FreeBSD/ports/${B_ARCH}/packages-9-current/All/" - export PKG_PATH - build_compat9_port - fi - chroot ${CHROOTDIR} /bin/sh -c '/usr/sbin/pkg_add -r docproj-nojadetex' || \ - build_docports -} - -build_docports() -{ - # Could not install textproc/docproj from pkg(8) or pkg_add(1). Build - # the port as final fallback. - chroot ${CHROOTDIR} /bin/sh -c 'make -C /usr/ports/textproc/docproj BATCH=yes WITH_JADETEX=no WITHOUT_X11=yes WITHOUT_PYTHON=yes install clean' || \ - { echo "*** Could not build the textproj/docproj port. Exiting."; exit 2; } -} +mkdir -p ${CHROOTDIR}/usr/src +${SVN_CMD} co ${SVNROOT}/${BRANCHSRC} ${CHROOTDIR}/usr/src +${SVN_CMD} co ${SVNROOTDOC}/${BRANCHDOC} ${CHROOTDIR}/usr/doc +${SVN_CMD} co ${SVNROOTPORTS}/${BRANCHPORTS} ${CHROOTDIR}/usr/ports + +${SETENV} ${NWMAKE} -C ${CHROOTDIR}/usr/src ${WORLD_FLAGS} buildworld +${SETENV} ${NWMAKE} -C ${CHROOTDIR}/usr/src installworld distribution DESTDIR=${CHROOTDIR} +mount -t devfs devfs ${CHROOTDIR}/dev +trap "umount ${CHROOTDIR}/dev" EXIT # Clean up devfs mount on exit -if [ -d $2/usr/doc ]; then - cp /etc/resolv.conf $2/etc/resolv.conf +if [ -d ${CHROOTDIR}/usr/doc ]; then + cp /etc/resolv.conf ${CHROOTDIR}/etc/resolv.conf # Install docproj to build release documentation - CHROOTDIR="$2" - set +e - pkgng_install_docports "${CHROOTDIR}" - set -e + ${CHROOT_CMD} /bin/sh -c \ + 'make -C /usr/ports/textproc/docproj \ + BATCH=yes \ + WITHOUT_SVN=yes \ + WITHOUT_JADETEX=yes \ + WITHOUT_X11=yes \ + WITHOUT_PYTHON=yes \ + install' fi -chroot $2 make -C /usr/src $MAKE_FLAGS ${ARCH_FLAGS} buildworld buildkernel -chroot $2 make -C /usr/src/release ${ARCH_FLAGS} release -chroot $2 make -C /usr/src/release install DESTDIR=/R - -if [ "x${OSVERSION}" == "x" ]; then - OSRELEASE=`chroot $2 uname -r` -fi - -: ${RELSTRING=`chroot $2 uname -s`-${OSRELEASE}-${B_ARCH}} - -cd $2/R -for i in release.iso bootonly.iso memstick; do - mv $i $RELSTRING-$i -done -sha256 $RELSTRING-* > CHECKSUM.SHA256 -md5 $RELSTRING-* > CHECKSUM.MD5 - +${CHROOT_CMD} ${SETENV} ${CROSSENV} ${WMAKE} buildworld +${CHROOT_CMD} ${SETENV} ${CROSSENV} ${KMAKE} buildkernel +${CHROOT_CMD} ${SETENV} ${CROSSENV} ${RMAKE} release +${CHROOT_CMD} ${SETENV} ${CROSSENV} ${RMAKE} install DESTDIR=/R Modified: stable/9/release/i386/mkisoimages.sh ============================================================================== --- stable/9/release/i386/mkisoimages.sh Sun Jun 16 17:54:56 2013 (r251811) +++ stable/9/release/i386/mkisoimages.sh Sun Jun 16 18:27:53 2013 (r251812) @@ -36,9 +36,10 @@ if [ $# -lt 3 ]; then exit 1 fi -LABEL=$1; shift +LABEL=`echo $1 | tr '[:lower:]' '[:upper:]'`; shift NAME=$1; shift -echo "/dev/iso9660/`echo $LABEL | tr '[:lower:]' '[:upper:]'` / cd9660 ro 0 0" > $1/etc/fstab -makefs -t cd9660 $bootable -o rockridge -o label=$LABEL $NAME $* +publisher="The FreeBSD Project. http://www.FreeBSD.org/" +echo "/dev/iso9660/$LABEL / cd9660 ro 0 0" > $1/etc/fstab +makefs -t cd9660 $bootable -o rockridge -o label=$LABEL -o publisher="$publisher" $NAME $* rm $1/etc/fstab Modified: stable/9/release/ia64/mkisoimages.sh ============================================================================== --- stable/9/release/ia64/mkisoimages.sh Sun Jun 16 17:54:56 2013 (r251811) +++ stable/9/release/ia64/mkisoimages.sh Sun Jun 16 18:27:53 2013 (r251812) @@ -37,7 +37,7 @@ if [ $# -lt 3 ]; then exit 1 fi -LABEL=$1; shift +LABEL=`echo $1 | tr '[:lower:]' '[:upper:]'`; shift NAME=$1; shift BASE=$1; shift @@ -74,8 +74,9 @@ else BOOTOPTS="" fi +publisher="The FreeBSD Project. http://www.FreeBSD.org/" echo "/dev/iso9660/$LABEL / cd9660 ro 0 0" > $BASE/etc/fstab -makefs -t cd9660 $BOOTOPTS -o rockridge -o label=$LABEL $NAME $BASE $* +makefs -t cd9660 $BOOTOPTS -o rockridge -o label=$LABEL -o publisher="$publisher" $NAME $BASE $* rm $BASE/etc/fstab rm -f $EFIPART exit 0 Modified: stable/9/release/pc98/mkisoimages.sh ============================================================================== --- stable/9/release/pc98/mkisoimages.sh Sun Jun 16 17:54:56 2013 (r251811) +++ stable/9/release/pc98/mkisoimages.sh Sun Jun 16 18:27:53 2013 (r251812) @@ -36,9 +36,10 @@ if [ $# -lt 3 ]; then exit 1 fi -LABEL=$1; shift +LABEL=`echo $1 | tr '[:lower:]' '[:upper:]'`; shift NAME=$1; shift -echo "/dev/iso9660/`echo $LABEL | tr '[:lower:]' '[:upper:]'` / cd9660 ro 0 0" > $1/etc/fstab -makefs -t cd9660 $bootable -o rockridge -o label=$LABEL $NAME $* +publisher="The FreeBSD Project. http://www.FreeBSD.org/" +echo "/dev/iso9660/$LABEL / cd9660 ro 0 0" > $1/etc/fstab +makefs -t cd9660 $bootable -o rockridge -o label=$LABEL -o publisher="$publisher" $NAME $* rm $1/etc/fstab Modified: stable/9/release/powerpc/mkisoimages.sh ============================================================================== --- stable/9/release/powerpc/mkisoimages.sh Sun Jun 16 17:54:56 2013 (r251811) +++ stable/9/release/powerpc/mkisoimages.sh Sun Jun 16 18:27:53 2013 (r251812) @@ -58,12 +58,12 @@ if [ $# -lt 3 ]; then exit 1 fi -LABEL=$1; shift +LABEL=`echo $1 | tr '[:lower:]' '[:upper:]'`; shift NAME=$1; shift -echo "/dev/iso9660/`echo $LABEL | tr '[:lower:]' '[:upper:]'` / cd9660 ro 0 0" > $1/etc/fstab -makefs -t cd9660 $bootable -o rockridge -o label=$LABEL $NAME $* +publisher="The FreeBSD Project. http://www.FreeBSD.org/" +echo "/dev/iso9660/$LABEL / cd9660 ro 0 0" > $1/etc/fstab +makefs -t cd9660 $bootable -o rockridge -o label=$LABEL -o publisher="$publisher" $NAME $* rm $1/etc/fstab rm /tmp/hfs-boot-block rm -rf $1/ppc - Modified: stable/9/release/sparc64/mkisoimages.sh ============================================================================== --- stable/9/release/sparc64/mkisoimages.sh Sun Jun 16 17:54:56 2013 (r251811) +++ stable/9/release/sparc64/mkisoimages.sh Sun Jun 16 18:27:53 2013 (r251812) @@ -22,51 +22,61 @@ # resulting ISO image, base-bits-dir contains the image contents and # extra-bits-dir, if provided, contains additional files to be merged # into base-bits-dir as part of making the image. - -publisher="The FreeBSD Project. http://www.freebsd.org/" -IMG=/tmp/bootfs -MNT=/mnt - -if [ "x$1" = "x-b" ]; then - dd if=/dev/zero of=${IMG} bs=512 count=1024 - MD=`mdconfig -a -t vnode -f ${IMG}` - sunlabel -w -B -b $4/boot/boot1 ${MD} auto - newfs -O1 -o space -m 0 /dev/${MD} - mount /dev/${MD} ${MNT} - mkdir ${MNT}/boot - cp $4/boot/loader ${MNT}/boot - umount ${MNT} - mdconfig -d -u ${MD#md} - bootable="-B ,,,,${IMG}" - shift -else - bootable="" -fi - if [ $# -lt 3 ]; then - echo Usage: $0 '[-b] image-label image-name base-bits-dir [extra-bits-dir]' - rm -f ${IMG} + echo Usage: $0 '[-b] image-label image-name base-bits-dir [extra-bits-dir]' > /dev/stderr exit 1 fi -type mkisofs 2>&1 | grep " is " >/dev/null -if [ $? -ne 0 ]; then - echo The cdrtools port is not installed. Trying to get it now. - if [ -f /usr/ports/sysutils/cdrtools/Makefile ]; then - cd /usr/ports/sysutils/cdrtools && make install BATCH=yes && make clean - else - if ! pkg_add -r cdrtools; then - echo "Could not get it via pkg_add - please go install this" - echo "from the ports collection and run this script again." - exit 2 - fi - fi -fi - -LABEL=$1; shift +case $1 in +-b) BOPT=$1; shift ;; +esac +LABEL=`echo $1 | tr '[:lower:]' '[:upper:]'`; shift NAME=$1; shift +# Create an ISO image +publisher="The FreeBSD Project. http://www.FreeBSD.org/" echo "/dev/iso9660/$LABEL / cd9660 ro 0 0" > $1/etc/fstab -mkisofs $bootable -r -J -V $LABEL -publisher "$publisher" -o $NAME $* +makefs -t cd9660 -B be -o rockridge -o label="$LABEL" -o publisher="$publisher" ${NAME}.tmp $* rm $1/etc/fstab -rm -f ${IMG} + +if [ "x$BOPT" != "x-b" ]; then + mv ${NAME}.tmp ${NAME} + exit 0 +fi +TMPIMGDIR=`mktemp -d /tmp/bootfs.XXXXXXXX` || exit 1 +BOOTFSDIR="${TMPIMGDIR}/bootfs" +BOOTFSIMG="${TMPIMGDIR}/bootfs.img" + +# Create a boot filesystem +mkdir -p "${BOOTFSDIR}/boot" +cp $4/boot/loader "${BOOTFSDIR}/boot" +makefs -t ffs -B be -M 512k "${BOOTFSIMG}" "${BOOTFSDIR}" +dd if=$4/boot/boot1 of="${BOOTFSIMG}" bs=512 conv=notrunc,sync + +# Create a boot ISO image +: ${CYLSIZE:=640} +ISOSIZE=$(stat -f %z ${NAME}.tmp) +ISOBLKS=$(((${ISOSIZE} + 511) / 512)) +ISOCYLS=$(((${ISOBLKS} + (${CYLSIZE} - 1)) / ${CYLSIZE})) + +BOOTFSSIZE=$(stat -f %z "${BOOTFSIMG}") +BOOTFSBLKS=$(((${BOOTFSSIZE} + 511) / 512)) +BOOTFSCYLS=$(((${BOOTFSBLKS} + (${CYLSIZE} - 1)) / ${CYLSIZE})) + +ENDCYL=$((${ISOCYLS} + ${BOOTFSCYLS})) +NSECTS=$((${ENDCYL} * 1 * ${CYLSIZE})) + +dd if=${NAME}.tmp of=${NAME} bs=${CYLSIZE}b conv=notrunc,sync +dd if=${BOOTFSIMG} of=${NAME} bs=${CYLSIZE}b seek=${ISOCYLS} conv=notrunc,sync +# The number of alternative cylinders is always 2. +dd if=/dev/zero of=${NAME} bs=${CYLSIZE}b seek=${ENDCYL} count=2 conv=notrunc,sync +rm -rf ${NAME}.tmp ${TMPIMGDIR} + +# Write VTOC8 label to boot ISO image +MD=`mdconfig -a -t vnode -S 512 -y 1 -x ${CYLSIZE} -f ${NAME}` +gpart create -s VTOC8 ${MD} +# !4: usr, for ISO image part +gpart add -i 1 -s $((${ISOCYLS} * ${CYLSIZE} * 512))b -t \!4 ${MD} +# !2: root, for bootfs part. +gpart add -i 6 -s $((${BOOTFSCYLS} * ${CYLSIZE} * 512))b -t \!2 ${MD} +mdconfig -d -u ${MD#md} From owner-svn-src-all@FreeBSD.ORG Sun Jun 16 18:32:03 2013 Return-Path: Delivered-To: svn-src-all@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 1E98994A; Sun, 16 Jun 2013 18:32: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 EAA0E12D9; Sun, 16 Jun 2013 18:32: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 r5GIW2rl031200; Sun, 16 Jun 2013 18:32:02 GMT (envelope-from hrs@svn.freebsd.org) Received: (from hrs@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5GIW2IZ031199; Sun, 16 Jun 2013 18:32:02 GMT (envelope-from hrs@svn.freebsd.org) Message-Id: <201306161832.r5GIW2IZ031199@svn.freebsd.org> From: Hiroki Sato Date: Sun, 16 Jun 2013 18:32:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251814 - in stable/9/release/doc: de_DE.ISO8859-1 fr_FR.ISO8859-1 ja_JP.eucJP ru_RU.KOI8-R zh_CN.GB2312 X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 18:32:03 -0000 Author: hrs Date: Sun Jun 16 18:32:02 2013 New Revision: 251814 URL: http://svnweb.freebsd.org/changeset/base/251814 Log: Remove obsolete translations. Deleted: stable/9/release/doc/de_DE.ISO8859-1/ stable/9/release/doc/fr_FR.ISO8859-1/ stable/9/release/doc/ja_JP.eucJP/ stable/9/release/doc/ru_RU.KOI8-R/ stable/9/release/doc/zh_CN.GB2312/ From owner-svn-src-all@FreeBSD.ORG Sun Jun 16 18:33:01 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 18:59:10 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 10F026CC; Sun, 16 Jun 2013 18:59:10 +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 002831396; Sun, 16 Jun 2013 18:59: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 r5GIx9tO038304; Sun, 16 Jun 2013 18:59:09 GMT (envelope-from hrs@svn.freebsd.org) Received: (from hrs@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5GIx7ZL038293; Sun, 16 Jun 2013 18:59:07 GMT (envelope-from hrs@svn.freebsd.org) Message-Id: <201306161859.r5GIx7ZL038293@svn.freebsd.org> From: Hiroki Sato Date: Sun, 16 Jun 2013 18:59:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251816 - in stable/9/release/doc: en_US.ISO8859-1 en_US.ISO8859-1/errata en_US.ISO8859-1/hardware en_US.ISO8859-1/installation en_US.ISO8859-1/readme en_US.ISO8859-1/relnotes share/mk ... X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 18:59:10 -0000 Author: hrs Date: Sun Jun 16 18:59:07 2013 New Revision: 251816 URL: http://svnweb.freebsd.org/changeset/base/251816 Log: MFC r250746 and r250805: - Update the release notes to DocBook 4.5 XML to build with the updated documentation tree - Fix build after doc/projects/xml-tools integration. Added: stable/9/release/doc/share/xml/catalog.xml - copied unchanged from r250746, head/release/doc/share/xml/catalog.xml Modified: stable/9/release/doc/en_US.ISO8859-1/Makefile stable/9/release/doc/en_US.ISO8859-1/errata/article.xml stable/9/release/doc/en_US.ISO8859-1/hardware/Makefile stable/9/release/doc/en_US.ISO8859-1/hardware/article.xml stable/9/release/doc/en_US.ISO8859-1/installation/article.xml stable/9/release/doc/en_US.ISO8859-1/readme/article.xml stable/9/release/doc/en_US.ISO8859-1/relnotes/article.xml stable/9/release/doc/share/mk/doc.relnotes.mk stable/9/release/doc/share/xml/Makefile stable/9/release/doc/share/xml/release.ent Directory Properties: stable/9/release/doc/ (props changed) stable/9/release/doc/en_US.ISO8859-1/hardware/ (props changed) Modified: stable/9/release/doc/en_US.ISO8859-1/Makefile ============================================================================== --- stable/9/release/doc/en_US.ISO8859-1/Makefile Sun Jun 16 18:32:59 2013 (r251815) +++ stable/9/release/doc/en_US.ISO8859-1/Makefile Sun Jun 16 18:59:07 2013 (r251816) @@ -10,5 +10,8 @@ SUBDIR+= installation COMPAT_SYMLINK = en +LANGCODE=en_US.ISO8859-1 +_LANGCODE=en_US.ISO8859-1 + .include "${RELN_ROOT}/share/mk/doc.relnotes.mk" .include "${DOC_PREFIX}/share/mk/doc.project.mk" Modified: stable/9/release/doc/en_US.ISO8859-1/errata/article.xml ============================================================================== --- stable/9/release/doc/en_US.ISO8859-1/errata/article.xml Sun Jun 16 18:32:59 2013 (r251815) +++ stable/9/release/doc/en_US.ISO8859-1/errata/article.xml Sun Jun 16 18:59:07 2013 (r251816) @@ -1,3 +1,10 @@ + + +%release; +]> + - - -%entities; - -%release; -]>
- &os; -<![ %release.type.current [ - &release.current; -]]> -<![ %release.type.snapshot [ - &release.prev; -]]> -<![ %release.type.release [ - &release.current; -]]> - Errata + &os; &release.current; Errata The &os; Project @@ -51,16 +41,7 @@ - This document lists errata items for &os; - - - + This document lists errata items for &os; &release.current;, containing significant information discovered after the release or too late in the release cycle to be otherwise included in the release documentation. @@ -70,16 +51,7 @@ should always be consulted before installing this version of &os;. - This errata document for &os; - - - + This errata document for &os; &release.current; will be maintained until the release of &os; &release.next;. @@ -87,16 +59,7 @@ Introduction This errata document contains late-breaking news - about &os; - - - + about &os; &release.current; Before installing this version, it is important to consult this document to learn about any post-release discoveries or problems that may already have been found and fixed. @@ -124,9 +87,9 @@ Security Advisories Problems described in the following security advisories have - been fixed in &release.current;. For more information, consult - the individual advisories available from . + been fixed in &release.current;. For more information, consult + the individual advisories available from + . Modified: stable/9/release/doc/en_US.ISO8859-1/hardware/Makefile ============================================================================== --- stable/9/release/doc/en_US.ISO8859-1/hardware/Makefile Sun Jun 16 18:32:59 2013 (r251815) +++ stable/9/release/doc/en_US.ISO8859-1/hardware/Makefile Sun Jun 16 18:59:07 2013 (r251816) @@ -18,7 +18,7 @@ JADEFLAGS+= -V %generate-article-toc% # SGML content SRCS+= article.xml SRCS+= ${DEV-AUTODIR}/catalog-auto -SRCS+= ${DEV-AUTODIR}/dev-auto.xml +SRCS+= ${DEV-AUTODIR}/dev-auto.ent CATALOGS+= -c ${DEV-AUTODIR}/catalog-auto Modified: stable/9/release/doc/en_US.ISO8859-1/hardware/article.xml ============================================================================== --- stable/9/release/doc/en_US.ISO8859-1/hardware/article.xml Sun Jun 16 18:32:59 2013 (r251815) +++ stable/9/release/doc/en_US.ISO8859-1/hardware/article.xml Sun Jun 16 18:59:07 2013 (r251816) @@ -1,11 +1,9 @@ - - -%entities; - - + + %release; - + %devauto; ]> @@ -334,7 +332,7 @@ Apple iMac G5 - Apple Power Macintosh G3 (Blue & White) + Apple Power Macintosh G3 (Blue & White) Apple Power Macintosh G4 @@ -535,7 +533,7 @@ The following systems are partially supported by &os;. In particular the fiber channel controllers in SBus-based systems are not supported. However, it is possible to use these with a SCSI controller - supported by the &man.esp.4 driver (Sun ESP SCSI, Sun FAS Fast-SCSI + supported by the &man.esp.4; driver (Sun ESP SCSI, Sun FAS Fast-SCSI and Sun FAS366 Fast-Wide SCSI controllers). Modified: stable/9/release/doc/en_US.ISO8859-1/installation/article.xml ============================================================================== --- stable/9/release/doc/en_US.ISO8859-1/installation/article.xml Sun Jun 16 18:32:59 2013 (r251815) +++ stable/9/release/doc/en_US.ISO8859-1/installation/article.xml Sun Jun 16 18:59:07 2013 (r251816) @@ -1,15 +1,8 @@ - - -%entities; - - + + %release; - - - - - ]>
Modified: stable/9/release/doc/en_US.ISO8859-1/readme/article.xml ============================================================================== --- stable/9/release/doc/en_US.ISO8859-1/readme/article.xml Sun Jun 16 18:32:59 2013 (r251815) +++ stable/9/release/doc/en_US.ISO8859-1/readme/article.xml Sun Jun 16 18:59:07 2013 (r251816) @@ -1,10 +1,8 @@ - - -%entities; - - -%release; + + + %release; ]>
@@ -84,59 +82,46 @@ Target Audience -This &release.type; is aimed primarily at early adopters + This &release.type; is aimed primarily at early adopters and various other users who want to get involved with the ongoing development of &os;. While the &os; development team tries its best to ensure that each &release.type; works as advertised, &release.branch; is very much a work-in-progress. - The basic requirements for using this &release.type; are + The basic requirements for using this &release.type; are technical proficiency with &os; and an understanding of the ongoing development process of &os; &release.branch; (as discussed on the &a.current;). - For those more interested in doing business with &os; than + For those more interested in doing business with &os; than in experimenting with new &os; technology, formal releases - (such as &release.prev.stable;) are frequently more appropriate. + (such as &release.prev;) are frequently more appropriate. Releases undergo a period of testing and quality assurance checking to ensure high reliability and dependability. -]]> - -This &release.type; is aimed primarily at early adopters + This &release.type; is aimed primarily at early adopters and various other users who want to get involved with the ongoing development of &os;. While the &os; development team tries its best to ensure that each &release.type; works as advertised, &release.branch; is very much a work-in-progress. - The basic requirements for using this &release.type; are + The basic requirements for using this &release.type; are technical proficiency with &os; and an understanding of the ongoing development process of &os; &release.branch; (as discussed on the &a.current;). - For those more interested in doing business with &os; than + For those more interested in doing business with &os; than in experimenting with new &os; technology, formal releases - (such as &release.prev.stable;) are frequently more appropriate. + (such as &release.prev;) are frequently more appropriate. Releases undergo a period of testing and quality assurance checking to ensure high reliability and dependability. -]]> - -This &release.type; of &os; is suitable for all users. It + This &release.type; of &os; is suitable for all users. It has undergone a period of testing and quality assurance checking to ensure the highest reliability and dependability. - -]]> - Modified: stable/9/release/doc/en_US.ISO8859-1/relnotes/article.xml ============================================================================== --- stable/9/release/doc/en_US.ISO8859-1/relnotes/article.xml Sun Jun 16 18:32:59 2013 (r251815) +++ stable/9/release/doc/en_US.ISO8859-1/relnotes/article.xml Sun Jun 16 18:59:07 2013 (r251816) @@ -1,10 +1,8 @@ - - -%entities; - - -%release; + + + %release; ]>
Modified: stable/9/release/doc/share/mk/doc.relnotes.mk ============================================================================== --- stable/9/release/doc/share/mk/doc.relnotes.mk Sun Jun 16 18:32:59 2013 (r251815) +++ stable/9/release/doc/share/mk/doc.relnotes.mk Sun Jun 16 18:59:07 2013 (r251816) @@ -2,12 +2,21 @@ DOC_PREFIX?= ${RELN_ROOT}/../../../doc +# XXX +RELEASETYPE!= grep -o 'release.type "[a-z]*"' ${RELN_ROOT}/share/xml/release.ent | sed 's|[a-z.]* "\([a-z]*\)"|\1|' +.if ${RELEASETYPE} == "current" +PROFILING+= --param profile.attribute "'releasetype'" --param profile.value "'current'" +.elif ${RELEASETYPE} == "snapshot" +PROFILING+= --param profile.attribute "'releasetype'" --param profile.value "'snapshot'" +.elif ${RELEASETYPE} == "release" +PROFILING+= --param profile.attribute "'releasetype'" --param profile.value "'release'" +.endif + # Find the RELNOTESng document catalogs -EXTRA_CATALOGS+= ${RELN_ROOT}/${LANGCODE}/share/xml/catalog -EXTRA_CATALOGS+= ${RELN_ROOT}/share/xml/catalog +EXTRA_CATALOGS+= file://${RELN_ROOT}/${LANGCODE}/share/xml/catalog.xml \ + file://${RELN_ROOT}/share/xml/catalog.xml # Use the appropriate architecture-dependent RELNOTESng stylesheet -DSLHTML?= ${RELN_ROOT}/share/xml/default.dsl DSLPRINT?= ${RELN_ROOT}/share/xml/default.dsl # @@ -23,7 +32,7 @@ MAN4DIR?= ${RELN_ROOT}/../../share/man/m MAN4PAGES?= ${MAN4DIR}/*.4 ${MAN4DIR}/man4.*/*.4 ARCHLIST?= ${RELN_ROOT}/share/misc/dev.archlist.txt DEV-AUTODIR= ${RELN_ROOT:S/${.CURDIR}/${.OBJDIR}/}/share/xml -CLEANFILES+= ${DEV-AUTODIR}/dev-auto.xml ${DEV-AUTODIR}/catalog-auto +CLEANFILES+= ${DEV-AUTODIR}/dev-auto.ent MAN2HWNOTES_CMD=${RELN_ROOT}/share/misc/man2hwnotes.pl .if defined(HWNOTES_MI) @@ -33,7 +42,7 @@ MAN2HWNOTES_FLAGS= -c .endif # Dependency that the article makefiles can use to pull in -# dev-auto.xml. -${DEV-AUTODIR}/catalog-auto ${DEV-AUTODIR}/dev-auto.xml: ${MAN4PAGES} \ +# dev-auto.ent. +${DEV-AUTODIR}/catalog-auto ${DEV-AUTODIR}/dev-auto.ent: ${MAN4PAGES} \ ${ARCHLIST} ${MAN2HWNOTES_CMD} - cd ${RELN_ROOT}/share/xml && make MAN2HWNOTES_FLAGS=${MAN2HWNOTES_FLAGS} dev-auto.xml + cd ${RELN_ROOT}/share/xml && make MAN2HWNOTES_FLAGS=${MAN2HWNOTES_FLAGS} dev-auto.ent Modified: stable/9/release/doc/share/xml/Makefile ============================================================================== --- stable/9/release/doc/share/xml/Makefile Sun Jun 16 18:32:59 2013 (r251815) +++ stable/9/release/doc/share/xml/Makefile Sun Jun 16 18:59:07 2013 (r251816) @@ -5,11 +5,7 @@ RELN_ROOT?= ${.CURDIR}/../.. .include "${RELN_ROOT}/share/mk/doc.relnotes.mk" .include "${DOC_PREFIX}/share/mk/doc.project.mk" -dev-auto.xml: ${MAN4PAGES} ${ARCHLIST} ${MAN2HWNOTES_CMD} catalog-auto +dev-auto.ent: ${MAN4PAGES} ${ARCHLIST} ${MAN2HWNOTES_CMD} ${PERL} ${MAN2HWNOTES_CMD} ${MAN2HWNOTES_FLAGS} -a ${ARCHLIST} -o ${.TARGET} ${MAN4PAGES} -catalog-auto: - ${ECHO_CMD} 'PUBLIC "-//FreeBSD//ENTITIES Auto Generated Device Lists//EN"' \ - '"dev-auto.xml"' > ${.TARGET} - -all: dev-auto.xml +all: dev-auto.ent Copied: stable/9/release/doc/share/xml/catalog.xml (from r250746, head/release/doc/share/xml/catalog.xml) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/9/release/doc/share/xml/catalog.xml Sun Jun 16 18:59:07 2013 (r251816, copy of r250746, head/release/doc/share/xml/catalog.xml) @@ -0,0 +1,14 @@ + + + + + + + + + Modified: stable/9/release/doc/share/xml/release.ent ============================================================================== --- stable/9/release/doc/share/xml/release.ent Sun Jun 16 18:32:59 2013 (r251815) +++ stable/9/release/doc/share/xml/release.ent Sun Jun 16 18:59:07 2013 (r251816) @@ -24,10 +24,24 @@ - + + + - - + + + + +]]> + +]]> + +]]> + From owner-svn-src-all@FreeBSD.ORG Sun Jun 16 19:07:07 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 19:35:03 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 19:44:14 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id A95F4788 for ; Sun, 16 Jun 2013 19:44:14 +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 844D316B9 for ; Sun, 16 Jun 2013 19:44:14 +0000 (UTC) Received: by mail-pd0-f170.google.com with SMTP id x11so2098581pdj.1 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=mjo0EMOvPQg/yNNwKOo2Xm+kiJKziBmeXkBbKBjMGSZJUV86XjBV291u51kntbBtpS MDmjAAUXn5ckdsUsm37yi6LheaFwipdHoUEd7YOkeu+6r+f3Sou5VdzZDDYXr3kmUt3W bsjWq/49pFJYs1bG22Ucyx8YUaLuhGxUcXAFxs+LuLtuLe0Sbv2DOJX3XvAolTa8Ei+h 7uRM1P77UpQEQpRwt78Puv1Dml7dPrXI/opi9fPaTF7f43pUGc+YSNdYqS3snsL4Itw+ JTi1/VJYKMhxB2+U/MsuF63xpwn9nWAxU/Th70dS3BsPQ7sfYZZBo+3pET9wW1hYb174 X65w== 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: ALoCoQlnvGG7oBwOZF2fm4pX+1Lc8IJK6R9OMl+clFDPWRme6KRdS/E7tXb6PokK3vXcrFD/B1gU X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 16 Jun 2013 19:44:14 -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-all@FreeBSD.ORG Sun Jun 16 20:51:44 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 21:15:35 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 21:30:35 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 21:32:02 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 21:45:05 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 21:46:03 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 0DD688E0 for ; Sun, 16 Jun 2013 21:46:03 +0000 (UTC) (envelope-from lists@eitanadler.com) Received: from mail-pa0-x22c.google.com (mail-pa0-x22c.google.com [IPv6:2607:f8b0:400e:c03::22c]) by mx1.freebsd.org (Postfix) with ESMTP id DA16A1A95 for ; Sun, 16 Jun 2013 21:46:02 +0000 (UTC) Received: by mail-pa0-f44.google.com with SMTP id lj1so2230867pab.3 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=puBx8fyGwmM7bqQaecFncncfL+wEIfb0YynvPEZtSkrzFrJFixh3j+/NY/AvAwTM4Q Nz1d6nDBBENWfkfzg4HX4SQqSofPB717NS/uJr/Qr8zZc0fAF361u2hlQ5Q7SMb3rcD4 zHwTZTpJwk0JZBxOH8d4r/CaS7Wz89EcYH/ylUSe7qJdlWHz0qJ+vzqNBTn7Hf1nuEol 8HvoRDKxf5fup7MYYbeCrR2wpp/MpRbmcxtxdTd8PB5FTU5CfUoxSptXGmfrnda4FDCy lYQU8nIFDrndO4cVrFq3kacrRyQW/nmLkfZkqrglauvOtenEhfAsErH3OVhaOy5QN74F 7U/Q== 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: ALoCoQm26EJCcVsI35t8KQkJWOFNxVtJMcydOc0gd9wFmu/km0GIhCD53iKK34VUCBladbvNRe4A Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 21:49:37 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 22:26:04 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 23:14:50 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Sun Jun 16 23:21:24 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 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-all@FreeBSD.ORG Mon Jun 17 00:39:24 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 01:43:08 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 02:16:38 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 03:32:28 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 03:43:48 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 03:56:31 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 04:00:46 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 04:40:28 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 3F04B882; Mon, 17 Jun 2013 04:40:28 +0000 (UTC) (envelope-from yongari@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 2FB101A95; Mon, 17 Jun 2013 04:40: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 r5H4eSXk024568; Mon, 17 Jun 2013 04:40:28 GMT (envelope-from yongari@svn.freebsd.org) Received: (from yongari@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5H4eSHs024567; Mon, 17 Jun 2013 04:40:28 GMT (envelope-from yongari@svn.freebsd.org) Message-Id: <201306170440.r5H4eSHs024567@svn.freebsd.org> From: Pyun YongHyeon Date: Mon, 17 Jun 2013 04:40:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251829 - stable/9/sys/dev/fxp X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 04:40:28 -0000 Author: yongari Date: Mon Jun 17 04:40:27 2013 New Revision: 251829 URL: http://svnweb.freebsd.org/changeset/base/251829 Log: MFC r251600: Avoid unnecessary controller reinitialization by checking driver running state. fxp(4) requires controller reinitialization for the following cases. o RX lockup condition on i82557 o promiscuous mode change o multicast filter change o WOL configuration o TSO/VLAN hardware tagging/checksum offloading configuration o MAC reprogramming after speed/duplex/flow-control resolution o Any events that result in MAC reprogramming(link UP/DOWN, remote link partner's restart of auto-negotiation etc) o Microcode loading/unloading Apart from above cases which come from hardware limitation, upper stack also blindly reinitializes controller whenever an IP address is assigned. After r194573, fxp(4) no longer needs to reinitialize the controller to program multicast filter after upping the interface. So keeping track of driver running state should remove all unnecessary controller reinitializations. This change will also address endless controller reinitialization triggered by dhclient(8). Modified: stable/9/sys/dev/fxp/if_fxp.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/fxp/if_fxp.c ============================================================================== --- stable/9/sys/dev/fxp/if_fxp.c Mon Jun 17 04:00:46 2013 (r251828) +++ stable/9/sys/dev/fxp/if_fxp.c Mon Jun 17 04:40:27 2013 (r251829) @@ -1075,7 +1075,8 @@ fxp_suspend(device_t dev) pmstat |= PCIM_PSTAT_PME | PCIM_PSTAT_PMEENABLE; sc->flags |= FXP_FLAG_WOL; /* Reconfigure hardware to accept magic frames. */ - fxp_init_body(sc, 1); + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + fxp_init_body(sc, 0); } pci_write_config(sc->dev, pmc + PCIR_POWER_STATUS, pmstat, 2); } @@ -2141,8 +2142,10 @@ fxp_tick(void *xsc) */ if (sc->rx_idle_secs > FXP_MAX_RX_IDLE) { sc->rx_idle_secs = 0; - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) + if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) { + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; fxp_init_body(sc, 1); + } return; } /* @@ -2240,6 +2243,7 @@ fxp_watchdog(struct fxp_softc *sc) device_printf(sc->dev, "device timeout\n"); sc->ifp->if_oerrors++; + sc->ifp->if_drv_flags &= ~IFF_DRV_RUNNING; fxp_init_body(sc, 1); } @@ -2274,6 +2278,10 @@ fxp_init_body(struct fxp_softc *sc, int int i, prm; FXP_LOCK_ASSERT(sc, MA_OWNED); + + if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) + return; + /* * Cancel any pending I/O */ @@ -2813,6 +2821,7 @@ fxp_miibus_statchg(device_t dev) */ if (sc->revision == FXP_REV_82557) return; + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; fxp_init_body(sc, 0); } @@ -2836,9 +2845,10 @@ fxp_ioctl(struct ifnet *ifp, u_long comm if (ifp->if_flags & IFF_UP) { if (((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) && ((ifp->if_flags ^ sc->if_flags) & - (IFF_PROMISC | IFF_ALLMULTI | IFF_LINK0)) != 0) + (IFF_PROMISC | IFF_ALLMULTI | IFF_LINK0)) != 0) { + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; fxp_init_body(sc, 0); - else if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) + } else if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) fxp_init_body(sc, 1); } else { if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) @@ -2851,8 +2861,10 @@ fxp_ioctl(struct ifnet *ifp, u_long comm case SIOCADDMULTI: case SIOCDELMULTI: FXP_LOCK(sc); - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) + if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) { + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; fxp_init_body(sc, 0); + } FXP_UNLOCK(sc); break; @@ -2942,8 +2954,10 @@ fxp_ioctl(struct ifnet *ifp, u_long comm ~(IFCAP_VLAN_HWTSO | IFCAP_VLAN_HWCSUM); reinit++; } - if (reinit > 0 && ifp->if_flags & IFF_UP) + if (reinit > 0 && (ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) { + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; fxp_init_body(sc, 0); + } FXP_UNLOCK(sc); VLAN_CAPABILITIES(ifp); break; From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 04:42:02 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id C40F29FC; Mon, 17 Jun 2013 04:42:02 +0000 (UTC) (envelope-from yongari@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 B60ED1AA1; Mon, 17 Jun 2013 04:42: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 r5H4g2EK024994; Mon, 17 Jun 2013 04:42:02 GMT (envelope-from yongari@svn.freebsd.org) Received: (from yongari@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5H4g2eW024993; Mon, 17 Jun 2013 04:42:02 GMT (envelope-from yongari@svn.freebsd.org) Message-Id: <201306170442.r5H4g2eW024993@svn.freebsd.org> From: Pyun YongHyeon Date: Mon, 17 Jun 2013 04:42:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r251830 - stable/8/sys/dev/fxp X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 04:42:02 -0000 Author: yongari Date: Mon Jun 17 04:42:02 2013 New Revision: 251830 URL: http://svnweb.freebsd.org/changeset/base/251830 Log: MFC r251600: Avoid unnecessary controller reinitialization by checking driver running state. fxp(4) requires controller reinitialization for the following cases. o RX lockup condition on i82557 o promiscuous mode change o multicast filter change o WOL configuration o TSO/VLAN hardware tagging/checksum offloading configuration o MAC reprogramming after speed/duplex/flow-control resolution o Any events that result in MAC reprogramming(link UP/DOWN, remote link partner's restart of auto-negotiation etc) o Microcode loading/unloading Apart from above cases which come from hardware limitation, upper stack also blindly reinitializes controller whenever an IP address is assigned. After r194573, fxp(4) no longer needs to reinitialize the controller to program multicast filter after upping the interface. So keeping track of driver running state should remove all unnecessary controller reinitializations. This change will also address endless controller reinitialization triggered by dhclient(8). Modified: stable/8/sys/dev/fxp/if_fxp.c Directory Properties: stable/8/sys/ (props changed) stable/8/sys/dev/ (props changed) stable/8/sys/dev/fxp/ (props changed) Modified: stable/8/sys/dev/fxp/if_fxp.c ============================================================================== --- stable/8/sys/dev/fxp/if_fxp.c Mon Jun 17 04:40:27 2013 (r251829) +++ stable/8/sys/dev/fxp/if_fxp.c Mon Jun 17 04:42:02 2013 (r251830) @@ -1074,7 +1074,8 @@ fxp_suspend(device_t dev) pmstat |= PCIM_PSTAT_PME | PCIM_PSTAT_PMEENABLE; sc->flags |= FXP_FLAG_WOL; /* Reconfigure hardware to accept magic frames. */ - fxp_init_body(sc, 1); + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + fxp_init_body(sc, 0); } pci_write_config(sc->dev, pmc + PCIR_POWER_STATUS, pmstat, 2); } @@ -2140,8 +2141,10 @@ fxp_tick(void *xsc) */ if (sc->rx_idle_secs > FXP_MAX_RX_IDLE) { sc->rx_idle_secs = 0; - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) + if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) { + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; fxp_init_body(sc, 1); + } return; } /* @@ -2239,6 +2242,7 @@ fxp_watchdog(struct fxp_softc *sc) device_printf(sc->dev, "device timeout\n"); sc->ifp->if_oerrors++; + sc->ifp->if_drv_flags &= ~IFF_DRV_RUNNING; fxp_init_body(sc, 1); } @@ -2273,6 +2277,10 @@ fxp_init_body(struct fxp_softc *sc, int int i, prm; FXP_LOCK_ASSERT(sc, MA_OWNED); + + if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) + return; + /* * Cancel any pending I/O */ @@ -2812,6 +2820,7 @@ fxp_miibus_statchg(device_t dev) */ if (sc->revision == FXP_REV_82557) return; + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; fxp_init_body(sc, 0); } @@ -2835,9 +2844,10 @@ fxp_ioctl(struct ifnet *ifp, u_long comm if (ifp->if_flags & IFF_UP) { if (((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) && ((ifp->if_flags ^ sc->if_flags) & - (IFF_PROMISC | IFF_ALLMULTI | IFF_LINK0)) != 0) + (IFF_PROMISC | IFF_ALLMULTI | IFF_LINK0)) != 0) { + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; fxp_init_body(sc, 0); - else if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) + } else if ((ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) fxp_init_body(sc, 1); } else { if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) @@ -2850,8 +2860,10 @@ fxp_ioctl(struct ifnet *ifp, u_long comm case SIOCADDMULTI: case SIOCDELMULTI: FXP_LOCK(sc); - if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) + if ((ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) { + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; fxp_init_body(sc, 0); + } FXP_UNLOCK(sc); break; @@ -2941,8 +2953,10 @@ fxp_ioctl(struct ifnet *ifp, u_long comm ~(IFCAP_VLAN_HWTSO | IFCAP_VLAN_HWCSUM); reinit++; } - if (reinit > 0 && ifp->if_flags & IFF_UP) + if (reinit > 0 && (ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) { + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; fxp_init_body(sc, 0); + } FXP_UNLOCK(sc); VLAN_CAPABILITIES(ifp); break; From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 06:15:53 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 84507946; Mon, 17 Jun 2013 06:15:53 +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 773291DD5; Mon, 17 Jun 2013 06:15:53 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5H6Fr17054057; Mon, 17 Jun 2013 06:15:53 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5H6FrPm054056; Mon, 17 Jun 2013 06:15:53 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201306170615.r5H6FrPm054056@svn.freebsd.org> From: Xin LI Date: Mon, 17 Jun 2013 06:15:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-svnadmin@freebsd.org Subject: svn commit: r251831 - svnadmin/conf X-SVN-Group: svnadmin MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 06:15:53 -0000 Author: delphij Date: Mon Jun 17 06:15:52 2013 New Revision: 251831 URL: http://svnweb.freebsd.org/changeset/base/251831 Log: Turn over releng/8.4 to secteam. Approved by: re (kib) Modified: svnadmin/conf/approvers Modified: svnadmin/conf/approvers ============================================================================== --- svnadmin/conf/approvers Mon Jun 17 04:42:02 2013 (r251830) +++ svnadmin/conf/approvers Mon Jun 17 06:15:52 2013 (r251831) @@ -21,8 +21,7 @@ #^stable/8/ re #^stable/7/ re ^releng/9.[0-1]/ (security-officer|so) -^releng/8.4/ re -^releng/8.[0-3]/ (security-officer|so) +^releng/8.[0-4]/ (security-officer|so) ^releng/7.[0-4]/ (security-officer|so) ^releng/6.[0-4]/ (security-officer|so) ^releng/5.[0-5]/ (security-officer|so) From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 06:21:43 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 2D238B07; Mon, 17 Jun 2013 06:21:43 +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 1E0FF1E0A; Mon, 17 Jun 2013 06:21: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 r5H6LhLf056460; Mon, 17 Jun 2013 06:21:43 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5H6Lgqu056459; Mon, 17 Jun 2013 06:21:42 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201306170621.r5H6Lgqu056459@svn.freebsd.org> From: Konstantin Belousov Date: Mon, 17 Jun 2013 06:21:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251832 - stable/9/sys/kern X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 06:21:43 -0000 Author: kib Date: Mon Jun 17 06:21:42 2013 New Revision: 251832 URL: http://svnweb.freebsd.org/changeset/base/251832 Log: MFC r251322: Instead of yielding, pause for 1 tick when donating the current thread time to the owner of the vnode lock while iterating over the free vnode list. Modified: stable/9/sys/kern/vfs_subr.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/kern/vfs_subr.c ============================================================================== --- stable/9/sys/kern/vfs_subr.c Mon Jun 17 06:15:52 2013 (r251831) +++ stable/9/sys/kern/vfs_subr.c Mon Jun 17 06:21:42 2013 (r251832) @@ -4824,7 +4824,7 @@ restart: if (ALWAYS_YIELD || should_yield()) { TAILQ_INSERT_BEFORE(vp, *mvp, v_actfreelist); mtx_unlock(&vnode_free_list_mtx); - kern_yield(PRI_USER); + pause("vnacti", 1); mtx_lock(&vnode_free_list_mtx); goto restart; } From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 07:11:18 2013 Return-Path: Delivered-To: svn-src-all@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 4674F4D7; Mon, 17 Jun 2013 07:11:18 +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 38B8E1001; Mon, 17 Jun 2013 07:11: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 r5H7BIZM072296; Mon, 17 Jun 2013 07:11:18 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5H7BI8N072294; Mon, 17 Jun 2013 07:11:18 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201306170711.r5H7BI8N072294@svn.freebsd.org> From: Konstantin Belousov Date: Mon, 17 Jun 2013 07:11:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251833 - stable/9/lib/libthr/thread X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 07:11:18 -0000 Author: kib Date: Mon Jun 17 07:11:17 2013 New Revision: 251833 URL: http://svnweb.freebsd.org/changeset/base/251833 Log: MFC r250013 (by davidxu): Remove extra code for SA_RESETHAND, it is not needed because kernel has already done this. Approved by: davidxu Modified: stable/9/lib/libthr/thread/thr_sig.c Directory Properties: stable/9/lib/libthr/ (props changed) Modified: stable/9/lib/libthr/thread/thr_sig.c ============================================================================== --- stable/9/lib/libthr/thread/thr_sig.c Mon Jun 17 06:21:42 2013 (r251832) +++ stable/9/lib/libthr/thread/thr_sig.c Mon Jun 17 07:11:17 2013 (r251833) @@ -341,13 +341,6 @@ check_deferred_signal(struct pthread *cu memcpy(&info, &curthread->deferred_siginfo, sizeof(siginfo_t)); /* remove signal */ curthread->deferred_siginfo.si_signo = 0; - if (act.sa_flags & SA_RESETHAND) { - struct sigaction tact; - - tact = act; - tact.sa_handler = SIG_DFL; - _sigaction(info.si_signo, &tact, NULL); - } handle_signal(&act, info.si_signo, &info, uc); } } From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 07:12:35 2013 Return-Path: Delivered-To: svn-src-all@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 8456E652; Mon, 17 Jun 2013 07:12:35 +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 754071016; Mon, 17 Jun 2013 07:12: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 r5H7CZWu072576; Mon, 17 Jun 2013 07:12:35 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5H7CZH8072575; Mon, 17 Jun 2013 07:12:35 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201306170712.r5H7CZH8072575@svn.freebsd.org> From: Konstantin Belousov Date: Mon, 17 Jun 2013 07:12:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251834 - stable/9/lib/libthr/thread X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 07:12:35 -0000 Author: kib Date: Mon Jun 17 07:12:34 2013 New Revision: 251834 URL: http://svnweb.freebsd.org/changeset/base/251834 Log: MFC r251284: Unify the code of check_deferred_signal() for all architectures. Modified: stable/9/lib/libthr/thread/thr_sig.c Directory Properties: stable/9/lib/libthr/ (props changed) Modified: stable/9/lib/libthr/thread/thr_sig.c ============================================================================== --- stable/9/lib/libthr/thread/thr_sig.c Mon Jun 17 07:11:17 2013 (r251833) +++ stable/9/lib/libthr/thread/thr_sig.c Mon Jun 17 07:12:34 2013 (r251834) @@ -318,31 +318,23 @@ check_deferred_signal(struct pthread *cu ucontext_t *uc; struct sigaction act; siginfo_t info; + int uc_len; if (__predict_true(curthread->deferred_siginfo.si_signo == 0)) return; -#if defined(__amd64__) || defined(__i386__) - int uc_len; uc_len = __getcontextx_size(); uc = alloca(uc_len); getcontext(uc); if (curthread->deferred_siginfo.si_signo == 0) return; __fillcontextx2((char *)uc); -#else - ucontext_t ucv; - uc = &ucv; - getcontext(uc); -#endif - if (curthread->deferred_siginfo.si_signo != 0) { - act = curthread->deferred_sigact; - uc->uc_sigmask = curthread->deferred_sigmask; - memcpy(&info, &curthread->deferred_siginfo, sizeof(siginfo_t)); - /* remove signal */ - curthread->deferred_siginfo.si_signo = 0; - handle_signal(&act, info.si_signo, &info, uc); - } + act = curthread->deferred_sigact; + uc->uc_sigmask = curthread->deferred_sigmask; + memcpy(&info, &curthread->deferred_siginfo, sizeof(siginfo_t)); + /* remove signal */ + curthread->deferred_siginfo.si_signo = 0; + handle_signal(&act, info.si_signo, &info, uc); } static void From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 08:57:10 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 09:49:08 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 10:00:49 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 40975B34; Mon, 17 Jun 2013 10:00:49 +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 321221882; Mon, 17 Jun 2013 10:00: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 r5HA0nKK024179; Mon, 17 Jun 2013 10:00:49 GMT (envelope-from bapt@svn.freebsd.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HA0mwk024175; Mon, 17 Jun 2013 10:00:48 GMT (envelope-from bapt@svn.freebsd.org) Message-Id: <201306171000.r5HA0mwk024175@svn.freebsd.org> From: Baptiste Daroussin Date: Mon, 17 Jun 2013 10:00:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r251839 - in vendor/dialog/dist: . package package/debian po samples samples/copifuncs samples/install X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 10:00:49 -0000 Author: bapt Date: Mon Jun 17 10:00:48 2013 New Revision: 251839 URL: http://svnweb.freebsd.org/changeset/base/251839 Log: Update dialog to 1.2-20130523 Added: vendor/dialog/dist/buildlist.c (contents, props changed) vendor/dialog/dist/po/an.po (contents, props changed) vendor/dialog/dist/po/ia.po (contents, props changed) vendor/dialog/dist/rangebox.c (contents, props changed) vendor/dialog/dist/samples/buildlist (contents, props changed) vendor/dialog/dist/samples/buildlist2 (contents, props changed) vendor/dialog/dist/samples/checklist12 (contents, props changed) vendor/dialog/dist/samples/menubox12 (contents, props changed) vendor/dialog/dist/samples/rangebox (contents, props changed) vendor/dialog/dist/samples/rangebox2 (contents, props changed) vendor/dialog/dist/samples/rangebox3 (contents, props changed) vendor/dialog/dist/samples/rangebox4 (contents, props changed) vendor/dialog/dist/samples/treeview (contents, props changed) vendor/dialog/dist/samples/treeview2 (contents, props changed) vendor/dialog/dist/treeview.c (contents, props changed) Deleted: vendor/dialog/dist/samples/copifuncs/admin.funcs vendor/dialog/dist/samples/copifuncs/common.funcs vendor/dialog/dist/samples/copifuncs/copi.funcs vendor/dialog/dist/samples/copifuncs/copi.ifman1 vendor/dialog/dist/samples/copifuncs/copi.ifman2 vendor/dialog/dist/samples/copifuncs/copi.ifmcfg2 vendor/dialog/dist/samples/copifuncs/copi.ifmcfg4 vendor/dialog/dist/samples/copifuncs/copi.ifmcfg5 vendor/dialog/dist/samples/copifuncs/copi.ifpoll1 vendor/dialog/dist/samples/copifuncs/copi.ifpoll2 vendor/dialog/dist/samples/copifuncs/copi.ifreq1 vendor/dialog/dist/samples/copifuncs/copi.ifreq2 vendor/dialog/dist/samples/copifuncs/copi.rcnews vendor/dialog/dist/samples/copifuncs/copi.sendifm1 vendor/dialog/dist/samples/copifuncs/copi.sendifm2 vendor/dialog/dist/samples/copifuncs/copi.trnrc vendor/dialog/dist/samples/copifuncs/copi.wheel vendor/dialog/dist/samples/copifuncs/ifpatch vendor/dialog/dist/samples/copismall vendor/dialog/dist/samples/install/FDISK.TEST vendor/dialog/dist/samples/install/makefile.in vendor/dialog/dist/samples/install/setup.c vendor/dialog/dist/samples/install/setup.help Modified: vendor/dialog/dist/CHANGES vendor/dialog/dist/VERSION vendor/dialog/dist/aclocal.m4 vendor/dialog/dist/argv.c vendor/dialog/dist/arrows.c vendor/dialog/dist/buttons.c vendor/dialog/dist/calendar.c vendor/dialog/dist/checklist.c vendor/dialog/dist/config.guess vendor/dialog/dist/config.sub vendor/dialog/dist/configure vendor/dialog/dist/configure.in vendor/dialog/dist/dialog-config.in vendor/dialog/dist/dialog.1 vendor/dialog/dist/dialog.3 vendor/dialog/dist/dialog.c vendor/dialog/dist/dialog.h vendor/dialog/dist/dlg_keys.h vendor/dialog/dist/editbox.c vendor/dialog/dist/formbox.c vendor/dialog/dist/fselect.c vendor/dialog/dist/guage.c vendor/dialog/dist/help.c vendor/dialog/dist/inputbox.c vendor/dialog/dist/inputstr.c vendor/dialog/dist/makefile.in vendor/dialog/dist/menubox.c vendor/dialog/dist/mixedform.c vendor/dialog/dist/mixedgauge.c vendor/dialog/dist/mouse.c vendor/dialog/dist/mousewget.c vendor/dialog/dist/msgbox.c vendor/dialog/dist/package/debian/changelog vendor/dialog/dist/package/dialog.spec vendor/dialog/dist/po/gl.po vendor/dialog/dist/po/zh_TW.po vendor/dialog/dist/prgbox.c vendor/dialog/dist/progressbox.c vendor/dialog/dist/rc.c vendor/dialog/dist/rename.sh vendor/dialog/dist/samples/README vendor/dialog/dist/samples/slackware.rc vendor/dialog/dist/samples/whiptail.rc vendor/dialog/dist/tailbox.c vendor/dialog/dist/textbox.c vendor/dialog/dist/timebox.c vendor/dialog/dist/ui_getc.c vendor/dialog/dist/util.c vendor/dialog/dist/yesno.c Modified: vendor/dialog/dist/CHANGES ============================================================================== --- vendor/dialog/dist/CHANGES Mon Jun 17 09:49:07 2013 (r251838) +++ vendor/dialog/dist/CHANGES Mon Jun 17 10:00:48 2013 (r251839) @@ -1,9 +1,66 @@ --- $Id: CHANGES,v 1.419 2012/07/06 18:18:48 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: @@ -558,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 @@ -791,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 @@ -978,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). @@ -1310,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 @@ -1778,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 @@ -1796,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. @@ -1827,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: vendor/dialog/dist/VERSION ============================================================================== --- vendor/dialog/dist/VERSION Mon Jun 17 09:49:07 2013 (r251838) +++ vendor/dialog/dist/VERSION Mon Jun 17 10:00:48 2013 (r251839) @@ -1 +1 @@ -10:4:0 1.1 20120706 +11:1:0 1.2 20130523 Modified: vendor/dialog/dist/aclocal.m4 ============================================================================== --- vendor/dialog/dist/aclocal.m4 Mon Jun 17 09:49:07 2013 (r251838) +++ vendor/dialog/dist/aclocal.m4 Mon Jun 17 10:00:48 2013 (r251839) @@ -1,5 +1,5 @@ dnl macros used for DIALOG configure script -dnl $Id: aclocal.m4,v 1.87 2012/02/16 02:11:26 tom Exp $ +dnl $Id: aclocal.m4,v 1.90 2012/12/02 20:07:30 tom Exp $ dnl --------------------------------------------------------------------------- dnl Copyright 1999-2011,2012 -- Thomas E. Dickey dnl @@ -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,14 +590,14 @@ changequote([,])dnl AC_SUBST(GENCAT) ])dnl dnl --------------------------------------------------------------------------- -dnl CF_ACVERSION_CHECK version: 2 updated: 2011/05/08 11:22:03 +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, +define([CF_ACVERSION_CHECK], [ ifdef([m4_version_compare], [m4_if(m4_version_compare(m4_defn([AC_ACVERSION]), [$1]), -1, [$3], [$2])], @@ -607,26 +605,16 @@ ifdef([m4_version_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: 2 updated: 2011/04/14 20:56:50 +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, +define([CF_ACVERSION_COMPARE], [ifelse(builtin([eval], [$2 < $5]), 1, [ifelse([$8], , ,[$8])], [ifelse([$9], , ,[$9])])])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 --------------------------------------------------------------------------- dnl CF_ADD_CFLAGS version: 10 updated: 2010/05/26 05:38:42 dnl ------------- dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS @@ -901,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: @@ -952,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. @@ -1009,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 @@ -1029,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 @@ -1072,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. @@ -1105,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" @@ -1117,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], @@ -1129,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 @@ -1252,7 +1293,7 @@ fi AC_CHECK_HEADERS($cf_cv_ncurses_header) ])dnl dnl --------------------------------------------------------------------------- -dnl CF_CURSES_LIBS version: 35 updated: 2011/08/09 21:06:37 +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. @@ -1332,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 otermcap 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 @@ -1376,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, @@ -1435,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 @@ -1490,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], @@ -1520,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 @@ -1555,10 +1596,10 @@ 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: 2 updated: 2011/10/17 20:12:04 +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 @@ -1577,7 +1618,7 @@ then AC_MSG_RESULT($cf_window__parent) if test "$cf_window__parent" = yes then - AC_DEFINE(HAVE_WINDOW__PARENT) + AC_DEFINE(HAVE_WINDOW__PARENT,1,[Define to 1 if WINDOW struct has _parent member]) fi fi ])dnl @@ -1587,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. @@ -1602,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 [$]@;' @@ -1667,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 @@ -1879,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()'. @@ -1904,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,[ @@ -1914,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 @@ -1997,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-all@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 8FAA2DD8; Mon, 17 Jun 2013 10:03:32 +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 68B0118A7; Mon, 17 Jun 2013 10:03: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 r5HA3WgQ026292; Mon, 17 Jun 2013 10:03:32 GMT (envelope-from bapt@svn.freebsd.org) Received: (from bapt@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HA3WFb026291; Mon, 17 Jun 2013 10:03:32 GMT (envelope-from bapt@svn.freebsd.org) Message-Id: <201306171003.r5HA3WFb026291@svn.freebsd.org> From: Baptiste Daroussin Date: Mon, 17 Jun 2013 10:03:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r251840 - vendor/dialog/1.2-20130523 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 10:03:32 -0000 Author: bapt Date: Mon Jun 17 10:03:31 2013 New Revision: 251840 URL: http://svnweb.freebsd.org/changeset/base/251840 Log: Tag dialog 1.2-20130523 Added: vendor/dialog/1.2-20130523/ - copied from r251839, vendor/dialog/dist/ From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 10:14:08 2013 Return-Path: Delivered-To: svn-src-all@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 ED926150; Mon, 17 Jun 2013 10:14:08 +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 DFE34191A; Mon, 17 Jun 2013 10:14: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 r5HAE8SA029859; Mon, 17 Jun 2013 10:14:08 GMT (envelope-from gjb@svn.freebsd.org) Received: (from gjb@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HAE80p029858; Mon, 17 Jun 2013 10:14:08 GMT (envelope-from gjb@svn.freebsd.org) Message-Id: <201306171014.r5HAE80p029858@svn.freebsd.org> From: Glen Barber Date: Mon, 17 Jun 2013 10:14:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251841 - stable/9/tools/build/mk X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 10:14:09 -0000 Author: gjb Date: Mon Jun 17 10:14:08 2013 New Revision: 251841 URL: http://svnweb.freebsd.org/changeset/base/251841 Log: MFC r251563: Add freebsd-update.conf(5) to OptionalObsoleteFiles.inc PR: 179437 Approved by: kib (mentor) Modified: stable/9/tools/build/mk/OptionalObsoleteFiles.inc Directory Properties: stable/9/tools/build/ (props changed) Modified: stable/9/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- stable/9/tools/build/mk/OptionalObsoleteFiles.inc Mon Jun 17 10:03:31 2013 (r251840) +++ stable/9/tools/build/mk/OptionalObsoleteFiles.inc Mon Jun 17 10:14:08 2013 (r251841) @@ -1412,6 +1412,7 @@ OLD_FILES+=usr/share/man/man8/fdcontrol. OLD_FILES+=etc/freebsd-update.conf OLD_FILES+=usr/sbin/freebsd-update OLD_FILES+=usr/share/examples/etc/freebsd-update.conf +OLD_FILES+=usr/share/man/man5/freebsd-update.conf.5.gz OLD_FILES+=usr/share/man/man8/freebsd-update.8.gz .endif From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 10:21:38 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 10:28:56 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 13:02:39 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 13:28:55 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 13:36:49 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 13:37:40 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 14:21:32 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 9EACDCD7; Mon, 17 Jun 2013 14:21:32 +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 798E719CF; Mon, 17 Jun 2013 14:21: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 r5HELW1Z010846; Mon, 17 Jun 2013 14:21:32 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HELWGG010845; Mon, 17 Jun 2013 14:21:32 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306171421.r5HELWGG010845@svn.freebsd.org> From: Alexander Motin Date: Mon, 17 Jun 2013 14:21:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251846 - stable/9/sys/cam/ata X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 14:21:32 -0000 Author: mav Date: Mon Jun 17 14:21:31 2013 New Revision: 251846 URL: http://svnweb.freebsd.org/changeset/base/251846 Log: MFC r249205: Replicate r245306 from SCSI to ATA. The problem didn't appear so far, covered by multilevel freeze mechanism, but it is better to be safe. Modified: stable/9/sys/cam/ata/ata_da.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/cam/ata/ata_da.c ============================================================================== --- stable/9/sys/cam/ata/ata_da.c Mon Jun 17 13:02:39 2013 (r251845) +++ stable/9/sys/cam/ata/ata_da.c Mon Jun 17 14:21:31 2013 (r251846) @@ -657,6 +657,9 @@ adaschedule(struct cam_periph *periph) struct ada_softc *softc = (struct ada_softc *)periph->softc; uint32_t prio; + if (softc->state != ADA_STATE_NORMAL) + return; + /* Check if cam_periph_getccb() was called. */ prio = periph->immediate_priority; From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 14:41:39 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D41AB873; Mon, 17 Jun 2013 14:41:39 +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 C64EB1ACD; Mon, 17 Jun 2013 14:41: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 r5HEfdcQ017486; Mon, 17 Jun 2013 14:41:39 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HEfdIZ017485; Mon, 17 Jun 2013 14:41:39 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306171441.r5HEfdIZ017485@svn.freebsd.org> From: Alexander Motin Date: Mon, 17 Jun 2013 14:41:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251847 - stable/9/sys/cam/ata X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 14:41:39 -0000 Author: mav Date: Mon Jun 17 14:41:39 2013 New Revision: 251847 URL: http://svnweb.freebsd.org/changeset/base/251847 Log: MFC r250298, r250301: Fix byte order of ATA WWN when converting it to SCSI LUN ID. Modified: stable/9/sys/cam/ata/ata_xpt.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/cam/ata/ata_xpt.c ============================================================================== --- stable/9/sys/cam/ata/ata_xpt.c Mon Jun 17 14:21:31 2013 (r251846) +++ stable/9/sys/cam/ata/ata_xpt.c Mon Jun 17 14:41:39 2013 (r251847) @@ -917,6 +917,7 @@ noerror: path->device->device_id, 8); bcopy(ident_buf->wwn, path->device->device_id + 8, 8); + ata_bswap(path->device->device_id + 8, 8); } } From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 14:46:55 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 14:52:41 2013 Return-Path: Delivered-To: svn-src-all@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 4B81AF29; Mon, 17 Jun 2013 14:52:41 +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 2DB0A1BE8; Mon, 17 Jun 2013 14:52:41 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HEqfS7020897; Mon, 17 Jun 2013 14:52:41 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HEqdVE020883; Mon, 17 Jun 2013 14:52:39 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306171452.r5HEqdVE020883@svn.freebsd.org> From: Alexander Motin Date: Mon, 17 Jun 2013 14:52:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251849 - in stable/9: sbin/camcontrol sys/cam sys/cam/scsi sys/geom X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 14:52:41 -0000 Author: mav Date: Mon Jun 17 14:52:39 2013 New Revision: 251849 URL: http://svnweb.freebsd.org/changeset/base/251849 Log: MFC r251654, r251664: Make CAM return and GEOM DISK pass through new GEOM::lunid attribute. SPC-4 specification states that serial number may be property of device, but not a specific logical unit. People reported about FC storages using serial number in that way, making it unusable for purposes of LUN multipath detection. SPC-4 states that designators associated with logical unit from the VPD page 83h "Device Identification" should be used for that purpose. Report first of them in the new attribute in such preference order: NAA, EUI-64, T10 and SCSI name string. While there, make GEOM DISK properly report GEOM::ident in XML output also using d_getattr() method, if available. This fixes serial numbers reporting for SCSI disks in `geom disk list` output and confxml. Modified: stable/9/sbin/camcontrol/camcontrol.c stable/9/sys/cam/cam_xpt.c stable/9/sys/cam/scsi/scsi_all.c stable/9/sys/cam/scsi/scsi_all.h stable/9/sys/cam/scsi/scsi_enc_ses.c stable/9/sys/geom/geom_disk.c Directory Properties: stable/9/sbin/camcontrol/ (props changed) stable/9/sys/ (props changed) Modified: stable/9/sbin/camcontrol/camcontrol.c ============================================================================== --- stable/9/sbin/camcontrol/camcontrol.c Mon Jun 17 14:46:54 2013 (r251848) +++ stable/9/sbin/camcontrol/camcontrol.c Mon Jun 17 14:52:39 2013 (r251849) @@ -6946,18 +6946,18 @@ findsasdevice(struct cam_devlist *devlis struct cam_devitem *item; STAILQ_FOREACH(item, &devlist->dev_queue, links) { - uint8_t *item_addr; + struct scsi_vpd_id_descriptor *idd; /* * XXX KDM look for LUN IDs as well? */ - item_addr = scsi_get_devid(item->device_id, + idd = scsi_get_devid(item->device_id, item->device_id_len, scsi_devid_is_sas_target); - if (item_addr == NULL) + if (idd == NULL) continue; - if (scsi_8btou64(item_addr) == sasaddr) + if (scsi_8btou64(idd->identifier) == sasaddr) return (item); } Modified: stable/9/sys/cam/cam_xpt.c ============================================================================== --- stable/9/sys/cam/cam_xpt.c Mon Jun 17 14:46:54 2013 (r251848) +++ stable/9/sys/cam/cam_xpt.c Mon Jun 17 14:52:39 2013 (r251849) @@ -1126,8 +1126,9 @@ xpt_announce_quirks(struct cam_periph *p int xpt_getattr(char *buf, size_t len, const char *attr, struct cam_path *path) { - int ret = -1; + int ret = -1, l; struct ccb_dev_advinfo cdai; + struct scsi_vpd_id_descriptor *idd; mtx_assert(path->bus->sim->mtx, MA_OWNED); @@ -1140,7 +1141,10 @@ xpt_getattr(char *buf, size_t len, const cdai.buftype = CDAI_TYPE_SERIAL_NUM; else if (!strcmp(attr, "GEOM::physpath")) cdai.buftype = CDAI_TYPE_PHYS_PATH; - else + else if (!strcmp(attr, "GEOM::lunid")) { + cdai.buftype = CDAI_TYPE_SCSI_DEVID; + cdai.bufsiz = CAM_SCSI_DEVID_MAXLEN; + } else goto out; cdai.buf = malloc(cdai.bufsiz, M_CAMXPT, M_NOWAIT|M_ZERO); @@ -1153,9 +1157,42 @@ xpt_getattr(char *buf, size_t len, const cam_release_devq(cdai.ccb_h.path, 0, 0, 0, FALSE); if (cdai.provsiz == 0) goto out; - ret = 0; - if (strlcpy(buf, cdai.buf, len) >= len) - ret = EFAULT; + if (cdai.buftype == CDAI_TYPE_SCSI_DEVID) { + idd = scsi_get_devid((struct scsi_vpd_device_id *)cdai.buf, + cdai.provsiz, scsi_devid_is_lun_naa); + if (idd == NULL) + idd = scsi_get_devid((struct scsi_vpd_device_id *)cdai.buf, + cdai.provsiz, scsi_devid_is_lun_eui64); + if (idd == NULL) + idd = scsi_get_devid((struct scsi_vpd_device_id *)cdai.buf, + cdai.provsiz, scsi_devid_is_lun_t10); + if (idd == NULL) + idd = scsi_get_devid((struct scsi_vpd_device_id *)cdai.buf, + cdai.provsiz, scsi_devid_is_lun_name); + if (idd == NULL) + goto out; + ret = 0; + if ((idd->proto_codeset & SVPD_ID_CODESET_MASK) == SVPD_ID_CODESET_ASCII || + (idd->proto_codeset & SVPD_ID_CODESET_MASK) == SVPD_ID_CODESET_UTF8) { + l = strnlen(idd->identifier, idd->length); + if (l < len) { + bcopy(idd->identifier, buf, l); + buf[l] = 0; + } else + ret = EFAULT; + } else { + if (idd->length * 2 < len) { + for (l = 0; l < idd->length; l++) + sprintf(buf + l * 2, "%02x", + idd->identifier[l]); + } else + ret = EFAULT; + } + } else { + ret = 0; + if (strlcpy(buf, cdai.buf, len) >= len) + ret = EFAULT; + } out: if (cdai.buf != NULL) Modified: stable/9/sys/cam/scsi/scsi_all.c ============================================================================== --- stable/9/sys/cam/scsi/scsi_all.c Mon Jun 17 14:46:54 2013 (r251848) +++ stable/9/sys/cam/scsi/scsi_all.c Mon Jun 17 14:52:39 2013 (r251849) @@ -5173,7 +5173,59 @@ scsi_devid_is_sas_target(uint8_t *bufp) return 1; } -uint8_t * +int +scsi_devid_is_lun_eui64(uint8_t *bufp) +{ + struct scsi_vpd_id_descriptor *descr; + + descr = (struct scsi_vpd_id_descriptor *)bufp; + if ((descr->id_type & SVPD_ID_ASSOC_MASK) != SVPD_ID_ASSOC_LUN) + return 0; + if ((descr->id_type & SVPD_ID_TYPE_MASK) != SVPD_ID_TYPE_EUI64) + return 0; + return 1; +} + +int +scsi_devid_is_lun_naa(uint8_t *bufp) +{ + struct scsi_vpd_id_descriptor *descr; + + descr = (struct scsi_vpd_id_descriptor *)bufp; + if ((descr->id_type & SVPD_ID_ASSOC_MASK) != SVPD_ID_ASSOC_LUN) + return 0; + if ((descr->id_type & SVPD_ID_TYPE_MASK) != SVPD_ID_TYPE_NAA) + return 0; + return 1; +} + +int +scsi_devid_is_lun_t10(uint8_t *bufp) +{ + struct scsi_vpd_id_descriptor *descr; + + descr = (struct scsi_vpd_id_descriptor *)bufp; + if ((descr->id_type & SVPD_ID_ASSOC_MASK) != SVPD_ID_ASSOC_LUN) + return 0; + if ((descr->id_type & SVPD_ID_TYPE_MASK) != SVPD_ID_TYPE_T10) + return 0; + return 1; +} + +int +scsi_devid_is_lun_name(uint8_t *bufp) +{ + struct scsi_vpd_id_descriptor *descr; + + descr = (struct scsi_vpd_id_descriptor *)bufp; + if ((descr->id_type & SVPD_ID_ASSOC_MASK) != SVPD_ID_ASSOC_LUN) + return 0; + if ((descr->id_type & SVPD_ID_TYPE_MASK) != SVPD_ID_TYPE_SCSI_NAME) + return 0; + return 1; +} + +struct scsi_vpd_id_descriptor * scsi_get_devid(struct scsi_vpd_device_id *id, uint32_t page_len, scsi_devid_checkfn_t ck_fn) { @@ -5194,7 +5246,7 @@ scsi_get_devid(struct scsi_vpd_device_id + desc->length)) { if (ck_fn == NULL || ck_fn((uint8_t *)desc) != 0) - return (desc->identifier); + return (desc); } return (NULL); Modified: stable/9/sys/cam/scsi/scsi_all.h ============================================================================== --- stable/9/sys/cam/scsi/scsi_all.h Mon Jun 17 14:46:54 2013 (r251848) +++ stable/9/sys/cam/scsi/scsi_all.h Mon Jun 17 14:52:39 2013 (r251849) @@ -1292,6 +1292,7 @@ struct scsi_vpd_id_descriptor #define SVPD_ID_PROTO_SHIFT 4 #define SVPD_ID_CODESET_BINARY 0x01 #define SVPD_ID_CODESET_ASCII 0x02 +#define SVPD_ID_CODESET_UTF8 0x03 #define SVPD_ID_CODESET_MASK 0x0f u_int8_t id_type; #define SVPD_ID_PIV 0x80 @@ -2315,7 +2316,12 @@ u_int scsi_calc_syncparam(u_int period) typedef int (*scsi_devid_checkfn_t)(uint8_t *); int scsi_devid_is_naa_ieee_reg(uint8_t *bufp); int scsi_devid_is_sas_target(uint8_t *bufp); -uint8_t * scsi_get_devid(struct scsi_vpd_device_id *id, uint32_t len, +int scsi_devid_is_lun_eui64(uint8_t *bufp); +int scsi_devid_is_lun_naa(uint8_t *bufp); +int scsi_devid_is_lun_name(uint8_t *bufp); +int scsi_devid_is_lun_t10(uint8_t *bufp); +struct scsi_vpd_id_descriptor * + scsi_get_devid(struct scsi_vpd_device_id *id, uint32_t len, scsi_devid_checkfn_t ck_fn); void scsi_test_unit_ready(struct ccb_scsiio *csio, u_int32_t retries, Modified: stable/9/sys/cam/scsi/scsi_enc_ses.c ============================================================================== --- stable/9/sys/cam/scsi/scsi_enc_ses.c Mon Jun 17 14:46:54 2013 (r251848) +++ stable/9/sys/cam/scsi/scsi_enc_ses.c Mon Jun 17 14:52:39 2013 (r251849) @@ -1056,7 +1056,8 @@ ses_set_physpath(enc_softc_t *enc, enc_e ses_setphyspath_callback_args_t args; int i, ret; struct sbuf sb; - uint8_t *devid, *elmaddr; + struct scsi_vpd_id_descriptor *idd; + uint8_t *devid; ses_element_t *elmpriv; const char *c; @@ -1084,9 +1085,9 @@ ses_set_physpath(enc_softc_t *enc, enc_e if (cdai.ccb_h.status != CAM_REQ_CMP) goto out; - elmaddr = scsi_get_devid((struct scsi_vpd_device_id *)cdai.buf, + idd = scsi_get_devid((struct scsi_vpd_device_id *)cdai.buf, cdai.provsiz, scsi_devid_is_naa_ieee_reg); - if (elmaddr == NULL) + if (idd == NULL) goto out; if (sbuf_new(&sb, NULL, 128, SBUF_AUTOEXTEND) == NULL) { @@ -1095,7 +1096,7 @@ ses_set_physpath(enc_softc_t *enc, enc_e } /* Next, generate the physical path string */ sbuf_printf(&sb, "id1,enc@n%jx/type@%x/slot@%x", - scsi_8btou64(elmaddr), iter->type_index, + scsi_8btou64(idd->identifier), iter->type_index, iter->type_element_index); /* Append the element descriptor if one exists */ elmpriv = elm->elm_private; Modified: stable/9/sys/geom/geom_disk.c ============================================================================== --- stable/9/sys/geom/geom_disk.c Mon Jun 17 14:46:54 2013 (r251848) +++ stable/9/sys/geom/geom_disk.c Mon Jun 17 14:52:39 2013 (r251849) @@ -398,8 +398,11 @@ g_disk_start(struct bio *bp) static void g_disk_dumpconf(struct sbuf *sb, const char *indent, struct g_geom *gp, struct g_consumer *cp, struct g_provider *pp) { + struct bio *bp; struct disk *dp; struct g_disk_softc *sc; + char *buf; + int res = 0; sc = gp->softc; if (sc == NULL || (dp = sc->dp) == NULL) @@ -414,7 +417,27 @@ g_disk_dumpconf(struct sbuf *sb, const c indent, dp->d_fwheads); sbuf_printf(sb, "%s%u\n", indent, dp->d_fwsectors); - sbuf_printf(sb, "%s%s\n", indent, dp->d_ident); + if (dp->d_getattr != NULL) { + buf = g_malloc(DISK_IDENT_SIZE, M_WAITOK); + bp = g_alloc_bio(); + bp->bio_disk = dp; + bp->bio_attribute = "GEOM::ident"; + bp->bio_length = DISK_IDENT_SIZE; + bp->bio_data = buf; + res = dp->d_getattr(bp); + sbuf_printf(sb, "%s%s\n", indent, + res == 0 ? buf: dp->d_ident); + bp->bio_attribute = "GEOM::lunid"; + bp->bio_length = DISK_IDENT_SIZE; + bp->bio_data = buf; + if (dp->d_getattr(bp) == 0) + sbuf_printf(sb, "%s%s\n", + indent, buf); + g_destroy_bio(bp); + g_free(buf); + } else + sbuf_printf(sb, "%s%s\n", indent, + dp->d_ident); sbuf_printf(sb, "%s%s\n", indent, dp->d_descr); } } From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 14:55:03 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 605AE18E; Mon, 17 Jun 2013 14:55:03 +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 3A2C51C16; Mon, 17 Jun 2013 14: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 r5HEt3tW021333; Mon, 17 Jun 2013 14:55:03 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HEt3WH021332; Mon, 17 Jun 2013 14:55:03 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306171455.r5HEt3WH021332@svn.freebsd.org> From: Alexander Motin Date: Mon, 17 Jun 2013 14:55:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251850 - stable/9/sys/dev/mvs X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 14:55:03 -0000 Author: mav Date: Mon Jun 17 14:55:02 2013 New Revision: 251850 URL: http://svnweb.freebsd.org/changeset/base/251850 Log: MFC r251661: Replicate r242422 from ata(4) to mvs(4): Only four specific ATA PIO commands transfer several sectors per DRQ block (interrupt). All other ATA PIO commands transfer one sector or 512 bytes at one time. Hardcode these exceptions in mvs(4). This fixes timeout of READ LOG EXT command used by `smartctl -x /dev/adaX`. Also it fixes timeout of DOWNLOAD_MICROCODE on `camcontrol fwdownload`. Modified: stable/9/sys/dev/mvs/mvs.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/mvs/mvs.c ============================================================================== --- stable/9/sys/dev/mvs/mvs.c Mon Jun 17 14:52:39 2013 (r251849) +++ stable/9/sys/dev/mvs/mvs.c Mon Jun 17 14:55:02 2013 (r251850) @@ -894,7 +894,7 @@ mvs_legacy_intr(device_t dev, int poll) if (ccb->ataio.dxfer_len > ch->donecount) { /* Set this transfer size according to HW capabilities */ ch->transfersize = min(ccb->ataio.dxfer_len - ch->donecount, - ch->curr[ccb->ccb_h.target_id].bytecount); + ch->transfersize); /* If data write command - put them */ if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_OUT) { if (mvs_wait(dev, ATA_S_DRQ, ATA_S_BUSY, 1000) < 0) { @@ -1344,8 +1344,14 @@ mvs_legacy_execute_transaction(struct mv return; } ch->donecount = 0; - ch->transfersize = min(ccb->ataio.dxfer_len, - ch->curr[port].bytecount); + if (ccb->ataio.cmd.command == ATA_READ_MUL || + ccb->ataio.cmd.command == ATA_READ_MUL48 || + ccb->ataio.cmd.command == ATA_WRITE_MUL || + ccb->ataio.cmd.command == ATA_WRITE_MUL48) { + ch->transfersize = min(ccb->ataio.dxfer_len, + ch->curr[port].bytecount); + } else + ch->transfersize = min(ccb->ataio.dxfer_len, 512); if ((ccb->ccb_h.flags & CAM_DIR_MASK) != CAM_DIR_NONE) ch->fake_busy = 1; /* If data write command - output the data */ From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 14:56:50 2013 Return-Path: Delivered-To: svn-src-all@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 8B29D318; Mon, 17 Jun 2013 14:56:50 +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 646B61C24; Mon, 17 Jun 2013 14:56: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 r5HEuolp021612; Mon, 17 Jun 2013 14:56:50 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HEuoNv021611; Mon, 17 Jun 2013 14:56:50 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306171456.r5HEuoNv021611@svn.freebsd.org> From: Alexander Motin Date: Mon, 17 Jun 2013 14:56:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r251851 - stable/8/sys/dev/mvs X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 14:56:50 -0000 Author: mav Date: Mon Jun 17 14:56:49 2013 New Revision: 251851 URL: http://svnweb.freebsd.org/changeset/base/251851 Log: MFC r251661: Replicate r242422 from ata(4) to mvs(4): Only four specific ATA PIO commands transfer several sectors per DRQ block (interrupt). All other ATA PIO commands transfer one sector or 512 bytes at one time. Hardcode these exceptions in mvs(4). This fixes timeout of READ LOG EXT command used by `smartctl -x /dev/adaX`. Also it fixes timeout of DOWNLOAD_MICROCODE on `camcontrol fwdownload`. Modified: stable/8/sys/dev/mvs/mvs.c Directory Properties: stable/8/sys/ (props changed) stable/8/sys/dev/ (props changed) stable/8/sys/dev/mvs/ (props changed) Modified: stable/8/sys/dev/mvs/mvs.c ============================================================================== --- stable/8/sys/dev/mvs/mvs.c Mon Jun 17 14:55:02 2013 (r251850) +++ stable/8/sys/dev/mvs/mvs.c Mon Jun 17 14:56:49 2013 (r251851) @@ -893,7 +893,7 @@ mvs_legacy_intr(device_t dev, int poll) if (ccb->ataio.dxfer_len > ch->donecount) { /* Set this transfer size according to HW capabilities */ ch->transfersize = min(ccb->ataio.dxfer_len - ch->donecount, - ch->curr[ccb->ccb_h.target_id].bytecount); + ch->transfersize); /* If data write command - put them */ if ((ccb->ccb_h.flags & CAM_DIR_MASK) == CAM_DIR_OUT) { if (mvs_wait(dev, ATA_S_DRQ, ATA_S_BUSY, 1000) < 0) { @@ -1343,8 +1343,14 @@ mvs_legacy_execute_transaction(struct mv return; } ch->donecount = 0; - ch->transfersize = min(ccb->ataio.dxfer_len, - ch->curr[port].bytecount); + if (ccb->ataio.cmd.command == ATA_READ_MUL || + ccb->ataio.cmd.command == ATA_READ_MUL48 || + ccb->ataio.cmd.command == ATA_WRITE_MUL || + ccb->ataio.cmd.command == ATA_WRITE_MUL48) { + ch->transfersize = min(ccb->ataio.dxfer_len, + ch->curr[port].bytecount); + } else + ch->transfersize = min(ccb->ataio.dxfer_len, 512); if ((ccb->ccb_h.flags & CAM_DIR_MASK) != CAM_DIR_NONE) ch->fake_busy = 1; /* If data write command - output the data */ From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 14:59:23 2013 Return-Path: Delivered-To: svn-src-all@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 949CF582; Mon, 17 Jun 2013 14:59:23 +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 877AF1C3D; Mon, 17 Jun 2013 14:59: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 r5HExNj0022102; Mon, 17 Jun 2013 14:59:23 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HExNeW022101; Mon, 17 Jun 2013 14:59:23 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306171459.r5HExNeW022101@svn.freebsd.org> From: Alexander Motin Date: Mon, 17 Jun 2013 14:59:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251852 - stable/9/sbin/camcontrol X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 14:59:23 -0000 Author: mav Date: Mon Jun 17 14:59:23 2013 New Revision: 251852 URL: http://svnweb.freebsd.org/changeset/base/251852 Log: MFC r251659: Use CAM_DIR_NONE for requests without data. Wrong values there confuse some drivers. Modified: stable/9/sbin/camcontrol/camcontrol.c Directory Properties: stable/9/sbin/camcontrol/ (props changed) Modified: stable/9/sbin/camcontrol/camcontrol.c ============================================================================== --- stable/9/sbin/camcontrol/camcontrol.c Mon Jun 17 14:56:49 2013 (r251851) +++ stable/9/sbin/camcontrol/camcontrol.c Mon Jun 17 14:59:23 2013 (r251852) @@ -1784,7 +1784,7 @@ ata_read_native_max(struct cam_device *d error = ata_do_cmd(device, ccb, retry_count, - /*flags*/CAM_DIR_IN, + /*flags*/CAM_DIR_NONE, /*protocol*/protocol, /*ata_flags*/AP_FLAG_CHK_COND, /*tag_action*/MSG_SIMPLE_Q_TAG, @@ -1828,7 +1828,7 @@ atahpa_set_max(struct cam_device *device error = ata_do_cmd(device, ccb, retry_count, - /*flags*/CAM_DIR_OUT, + /*flags*/CAM_DIR_NONE, /*protocol*/protocol, /*ata_flags*/AP_FLAG_CHK_COND, /*tag_action*/MSG_SIMPLE_Q_TAG, @@ -1895,7 +1895,7 @@ atahpa_lock(struct cam_device *device, i error = ata_do_cmd(device, ccb, retry_count, - /*flags*/CAM_DIR_OUT, + /*flags*/CAM_DIR_NONE, /*protocol*/protocol, /*ata_flags*/AP_FLAG_CHK_COND, /*tag_action*/MSG_SIMPLE_Q_TAG, @@ -1962,7 +1962,7 @@ atahpa_freeze_lock(struct cam_device *de error = ata_do_cmd(device, ccb, retry_count, - /*flags*/CAM_DIR_OUT, + /*flags*/CAM_DIR_NONE, /*protocol*/protocol, /*ata_flags*/AP_FLAG_CHK_COND, /*tag_action*/MSG_SIMPLE_Q_TAG, From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 15:01:41 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 617CF91E; Mon, 17 Jun 2013 15:01:41 +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 53D9C1C6F; Mon, 17 Jun 2013 15:01:41 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HF1fnh024473; Mon, 17 Jun 2013 15:01:41 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HF1fDf024472; Mon, 17 Jun 2013 15:01:41 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306171501.r5HF1fDf024472@svn.freebsd.org> From: Alexander Motin Date: Mon, 17 Jun 2013 15:01:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r251853 - stable/8/sbin/camcontrol X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 15:01:41 -0000 Author: mav Date: Mon Jun 17 15:01:40 2013 New Revision: 251853 URL: http://svnweb.freebsd.org/changeset/base/251853 Log: MFC r251659: Use CAM_DIR_NONE for requests without data. Wrong values there confuse some drivers. Modified: stable/8/sbin/camcontrol/camcontrol.c Directory Properties: stable/8/sbin/camcontrol/ (props changed) Modified: stable/8/sbin/camcontrol/camcontrol.c ============================================================================== --- stable/8/sbin/camcontrol/camcontrol.c Mon Jun 17 14:59:23 2013 (r251852) +++ stable/8/sbin/camcontrol/camcontrol.c Mon Jun 17 15:01:40 2013 (r251853) @@ -1716,7 +1716,7 @@ ata_read_native_max(struct cam_device *d error = ata_do_cmd(device, ccb, retry_count, - /*flags*/CAM_DIR_IN, + /*flags*/CAM_DIR_NONE, /*protocol*/protocol, /*ata_flags*/AP_FLAG_CHK_COND, /*tag_action*/MSG_SIMPLE_Q_TAG, @@ -1760,7 +1760,7 @@ atahpa_set_max(struct cam_device *device error = ata_do_cmd(device, ccb, retry_count, - /*flags*/CAM_DIR_OUT, + /*flags*/CAM_DIR_NONE, /*protocol*/protocol, /*ata_flags*/AP_FLAG_CHK_COND, /*tag_action*/MSG_SIMPLE_Q_TAG, @@ -1827,7 +1827,7 @@ atahpa_lock(struct cam_device *device, i error = ata_do_cmd(device, ccb, retry_count, - /*flags*/CAM_DIR_OUT, + /*flags*/CAM_DIR_NONE, /*protocol*/protocol, /*ata_flags*/AP_FLAG_CHK_COND, /*tag_action*/MSG_SIMPLE_Q_TAG, @@ -1894,7 +1894,7 @@ atahpa_freeze_lock(struct cam_device *de error = ata_do_cmd(device, ccb, retry_count, - /*flags*/CAM_DIR_OUT, + /*flags*/CAM_DIR_NONE, /*protocol*/protocol, /*ata_flags*/AP_FLAG_CHK_COND, /*tag_action*/MSG_SIMPLE_Q_TAG, From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 15:16:14 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 15:17:39 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 15:30:48 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 15:34:23 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 15:42:22 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 50F28BD4; Mon, 17 Jun 2013 15:42:22 +0000 (UTC) (envelope-from gnn@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 28A001E80; Mon, 17 Jun 2013 15:42: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 r5HFgM3J038846; Mon, 17 Jun 2013 15:42:22 GMT (envelope-from gnn@svn.freebsd.org) Received: (from gnn@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HFgMSj038845; Mon, 17 Jun 2013 15:42:22 GMT (envelope-from gnn@svn.freebsd.org) Message-Id: <201306171542.r5HFgMSj038845@svn.freebsd.org> From: "George V. Neville-Neil" Date: Mon, 17 Jun 2013 15:42:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251857 - stable/9/cddl/contrib/opensolaris/lib/libdtrace/common X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 15:42:22 -0000 Author: gnn Date: Mon Jun 17 15:42:21 2013 New Revision: 251857 URL: http://svnweb.freebsd.org/changeset/base/251857 Log: MFC: 248848 Commit a patch that fixes a problem in the #pragma statement when searching for and loading dependent modules. This addresses a bug seen with io.d where it was being doubly included. PR: 171678 Submitted by: Mark Johnston Modified: stable/9/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pragma.c Directory Properties: stable/9/cddl/contrib/opensolaris/lib/libdtrace/common/ (props changed) Modified: stable/9/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pragma.c ============================================================================== --- stable/9/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pragma.c Mon Jun 17 15:34:22 2013 (r251856) +++ stable/9/cddl/contrib/opensolaris/lib/libdtrace/common/dt_pragma.c Mon Jun 17 15:42:21 2013 (r251857) @@ -241,6 +241,8 @@ dt_pragma_depends(const char *prname, dt int found; dt_lib_depend_t *dld; char lib[MAXPATHLEN]; + size_t plen; + char *provs, *cpy, *tok; if (cnp == NULL || nnp == NULL || cnp->dn_kind != DT_NODE_IDENT || nnp->dn_kind != DT_NODE_IDENT) { @@ -248,9 +250,31 @@ dt_pragma_depends(const char *prname, dt " \n", prname); } - if (strcmp(cnp->dn_string, "provider") == 0) - found = dt_provider_lookup(dtp, nnp->dn_string) != NULL; - else if (strcmp(cnp->dn_string, "module") == 0) { + if (strcmp(cnp->dn_string, "provider") == 0) { + /* + * First try to get the provider list using the + * debug.dtrace.providers sysctl, since that'll work even if + * we're not running as root. + */ + provs = NULL; + if (sysctlbyname("debug.dtrace.providers", NULL, &plen, NULL, 0) || + ((provs = dt_alloc(dtp, plen)) == NULL) || + sysctlbyname("debug.dtrace.providers", provs, &plen, NULL, 0)) + found = dt_provider_lookup(dtp, nnp->dn_string) != NULL; + else { + found = B_FALSE; + for (cpy = provs; (tok = strsep(&cpy, " ")) != NULL; ) + if (strcmp(tok, nnp->dn_string) == 0) { + found = B_TRUE; + break; + } + if (found == B_FALSE) + found = dt_provider_lookup(dtp, + nnp->dn_string) != NULL; + } + if (provs != NULL) + dt_free(dtp, provs); + } else if (strcmp(cnp->dn_string, "module") == 0) { dt_module_t *mp = dt_module_lookup_by_name(dtp, nnp->dn_string); found = mp != NULL && dt_module_getctf(dtp, mp) != NULL; } else if (strcmp(cnp->dn_string, "library") == 0) { From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 15:59:27 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 16:40:49 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 18:34:35 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 19:31:04 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 19:45:27 2013 Return-Path: Delivered-To: svn-src-all@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 8F79F7D1; Mon, 17 Jun 2013 19:45:27 +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 816321B7E; Mon, 17 Jun 2013 19:45:27 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5HJjRE3015521; Mon, 17 Jun 2013 19:45:27 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HJjR12015520; Mon, 17 Jun 2013 19:45:27 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306171945.r5HJjR12015520@svn.freebsd.org> From: Scott Long Date: Mon, 17 Jun 2013 19:45:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251860 - stable/9/sys/mips/mips X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 19:45:27 -0000 Author: scottl Date: Mon Jun 17 19:45:27 2013 New Revision: 251860 URL: http://svnweb.freebsd.org/changeset/base/251860 Log: MFC r242465: Free the dma map -after- it's checked, not before. Or you'll be potentially referencing already-freed memory. MFC r242466: Drop this from 500 to 128, to save a little space on memory constrained platforms. Submitted by: adrian Obtained from: Netflix Modified: stable/9/sys/mips/mips/busdma_machdep.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/mips/mips/busdma_machdep.c ============================================================================== --- stable/9/sys/mips/mips/busdma_machdep.c Mon Jun 17 19:31:03 2013 (r251859) +++ stable/9/sys/mips/mips/busdma_machdep.c Mon Jun 17 19:45:27 2013 (r251860) @@ -152,7 +152,7 @@ static STAILQ_HEAD(, bus_dmamap) bounce_ static TAILQ_HEAD(,bus_dmamap) dmamap_freelist = TAILQ_HEAD_INITIALIZER(dmamap_freelist); -#define BUSDMA_STATIC_MAPS 500 +#define BUSDMA_STATIC_MAPS 128 static struct bus_dmamap map_pool[BUSDMA_STATIC_MAPS]; static struct mtx busdma_mtx; @@ -533,7 +533,6 @@ int bus_dmamap_destroy(bus_dma_tag_t dmat, bus_dmamap_t map) { - _busdma_free_dmamap(map); if (STAILQ_FIRST(&map->bpages) != NULL) { CTR3(KTR_BUSDMA, "%s: tag %p error %d", __func__, dmat, EBUSY); @@ -542,6 +541,7 @@ bus_dmamap_destroy(bus_dma_tag_t dmat, b if (dmat->bounce_zone) dmat->bounce_zone->map_count--; dmat->map_count--; + _busdma_free_dmamap(map); CTR2(KTR_BUSDMA, "%s: tag %p error 0", __func__, dmat); return (0); } From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 19:54:48 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 3B9FBD9E; Mon, 17 Jun 2013 19:54:48 +0000 (UTC) (envelope-from brooks@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 2DE3F1C2C; Mon, 17 Jun 2013 19:54: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 r5HJsmkN018561; Mon, 17 Jun 2013 19:54:48 GMT (envelope-from brooks@svn.freebsd.org) Received: (from brooks@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HJsmnR018560; Mon, 17 Jun 2013 19:54:48 GMT (envelope-from brooks@svn.freebsd.org) Message-Id: <201306171954.r5HJsmnR018560@svn.freebsd.org> From: Brooks Davis Date: Mon, 17 Jun 2013 19:54:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251861 - stable/9 X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 19:54:48 -0000 Author: brooks Date: Mon Jun 17 19:54:47 2013 New Revision: 251861 URL: http://svnweb.freebsd.org/changeset/base/251861 Log: MFC r251689 Be more agressive about bootstrapping ctfmerge and ctfconvert so builds from existing releases have a chance of working properly when WITH_CLANG_IS_CC is enabled. Modified: stable/9/Makefile.inc1 (contents, props changed) Modified: stable/9/Makefile.inc1 ============================================================================== --- stable/9/Makefile.inc1 Mon Jun 17 19:45:27 2013 (r251860) +++ stable/9/Makefile.inc1 Mon Jun 17 19:54:47 2013 (r251861) @@ -1166,8 +1166,9 @@ _clang_tblgen= \ .endif .if ${MK_CDDL} != "no" && \ - ${BOOTSTRAPPING} < 800038 && \ - !(${BOOTSTRAPPING} >= 700112 && ${BOOTSTRAPPING} < 799999) + ((${BOOTSTRAPPING} < 1000034 && \ + !(${BOOTSTRAPPING} >= 901505 && ${BOOTSTRAPPING} < 999999)) \ + || (${MACHINE} != ${TARGET} || ${MACHINE_ARCH} != ${TARGET_ARCH})) _dtrace_tools= cddl/usr.bin/sgsmsg cddl/lib/libctf lib/libelf \ lib/libdwarf cddl/usr.bin/ctfconvert cddl/usr.bin/ctfmerge .endif From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 20:11:05 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 20:15:40 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 20:17:56 2013 Return-Path: Delivered-To: svn-src-all@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 E3095A42; Mon, 17 Jun 2013 20:17:56 +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 D4EC41D4D; Mon, 17 Jun 2013 20:17: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 r5HKHuJp026092; Mon, 17 Jun 2013 20:17:56 GMT (envelope-from ae@svn.freebsd.org) Received: (from ae@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HKHuIu026091; Mon, 17 Jun 2013 20:17:56 GMT (envelope-from ae@svn.freebsd.org) Message-Id: <201306172017.r5HKHuIu026091@svn.freebsd.org> From: "Andrey V. Elsukov" Date: Mon, 17 Jun 2013 20:17:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251864 - stable/9/share/man/man4 X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 20:17:57 -0000 Author: ae Date: Mon Jun 17 20:17:56 2013 New Revision: 251864 URL: http://svnweb.freebsd.org/changeset/base/251864 Log: MFC r249252: Remove reference to the nonexistent sysctl node net.inet6.mld.stats. Also add cross reference to the icmp6(4). PR: 177696 Modified: stable/9/share/man/man4/mld.4 Directory Properties: stable/9/share/man/man4/ (props changed) Modified: stable/9/share/man/man4/mld.4 ============================================================================== --- stable/9/share/man/man4/mld.4 Mon Jun 17 20:15:39 2013 (r251863) +++ stable/9/share/man/man4/mld.4 Mon Jun 17 20:17:56 2013 (r251864) @@ -27,7 +27,7 @@ .\" .\" $FreeBSD$ .\" -.Dd May 27, 2009 +.Dd April 8, 2013 .Dt MLD 4 .Os .Sh NAME @@ -68,11 +68,6 @@ to the protocol. .Sh SYSCTL VARIABLES .Bl -tag -width indent .\" -.It net.inet6.mld.stats -This opaque read-only variable exposes the stack-wide MLDv2 -protocol statistics to -.Xr netstat 1 . -.\" .It net.inet6.mld.ifinfo This opaque read-only variable exposes the per-link MLDv2 status to .Xr ifmcstat 8 . @@ -94,6 +89,7 @@ This sysctl is normally enabled by defau .\" .El .Sh SEE ALSO +.Xr icmp6 4 , .Xr ifmcstat 8 , .Xr inet 4 , .Xr multicast 4 , From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 20:18:12 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D0613BA7; Mon, 17 Jun 2013 20:18:12 +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 C2C601D51; Mon, 17 Jun 2013 20:18: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 r5HKICq6026194; Mon, 17 Jun 2013 20:18:12 GMT (envelope-from ae@svn.freebsd.org) Received: (from ae@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HKICY0026193; Mon, 17 Jun 2013 20:18:12 GMT (envelope-from ae@svn.freebsd.org) Message-Id: <201306172018.r5HKICY0026193@svn.freebsd.org> From: "Andrey V. Elsukov" Date: Mon, 17 Jun 2013 20:18:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r251865 - stable/8/share/man/man4 X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 20:18:12 -0000 Author: ae Date: Mon Jun 17 20:18:12 2013 New Revision: 251865 URL: http://svnweb.freebsd.org/changeset/base/251865 Log: MFC r249252: Remove reference to the nonexistent sysctl node net.inet6.mld.stats. Also add cross reference to the icmp6(4). PR: 177696 Modified: stable/8/share/man/man4/mld.4 Directory Properties: stable/8/share/man/man4/ (props changed) Modified: stable/8/share/man/man4/mld.4 ============================================================================== --- stable/8/share/man/man4/mld.4 Mon Jun 17 20:17:56 2013 (r251864) +++ stable/8/share/man/man4/mld.4 Mon Jun 17 20:18:12 2013 (r251865) @@ -27,7 +27,7 @@ .\" .\" $FreeBSD$ .\" -.Dd May 27, 2009 +.Dd April 8, 2013 .Dt MLD 4 .Os .Sh NAME @@ -69,11 +69,6 @@ to the protocol. .Pp .Bl -tag -width indent .\" -.It net.inet6.mld.stats -This opaque read-only variable exposes the stack-wide MLDv2 -protocol statistics to -.Xr netstat 1 . -.\" .It net.inet6.mld.ifinfo This opaque read-only variable exposes the per-link MLDv2 status to .Xr ifmcstat 8 . @@ -95,6 +90,7 @@ This sysctl is normally enabled by defau .\" .El .Sh SEE ALSO +.Xr icmp6 4 , .Xr ifmcstat 8 , .Xr inet 4 , .Xr multicast 4 , From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 20:26:25 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 53533EDF; Mon, 17 Jun 2013 20:26:25 +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 442381DB1; Mon, 17 Jun 2013 20:26: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 r5HKQPMe029102; Mon, 17 Jun 2013 20:26:25 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HKQJpJ029063; Mon, 17 Jun 2013 20:26:19 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306172026.r5HKQJpJ029063@svn.freebsd.org> From: Scott Long Date: Mon, 17 Jun 2013 20:26:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251866 - stable/9/sys/arm/arm X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 20:26:25 -0000 Author: scottl Date: Mon Jun 17 20:26:19 2013 New Revision: 251866 URL: http://svnweb.freebsd.org/changeset/base/251866 Log: MFC r236991: Final whitespace trim. Submitted by: imp Approved by: marius Obtained from: Netflix Modified: stable/9/sys/arm/arm/bcopyinout_xscale.S stable/9/sys/arm/arm/bootconfig.c stable/9/sys/arm/arm/busdma_machdep.c stable/9/sys/arm/arm/cpufunc.c stable/9/sys/arm/arm/cpufunc_asm.S stable/9/sys/arm/arm/cpufunc_asm_arm10.S stable/9/sys/arm/arm/cpufunc_asm_arm11.S stable/9/sys/arm/arm/cpufunc_asm_arm7tdmi.S stable/9/sys/arm/arm/cpufunc_asm_arm8.S stable/9/sys/arm/arm/cpufunc_asm_arm9.S stable/9/sys/arm/arm/cpufunc_asm_armv4.S stable/9/sys/arm/arm/cpufunc_asm_armv5.S stable/9/sys/arm/arm/cpufunc_asm_sa1.S stable/9/sys/arm/arm/cpufunc_asm_xscale.S stable/9/sys/arm/arm/cpufunc_asm_xscale_c3.S stable/9/sys/arm/arm/db_disasm.c stable/9/sys/arm/arm/db_interface.c stable/9/sys/arm/arm/db_trace.c stable/9/sys/arm/arm/disassem.c stable/9/sys/arm/arm/dump_machdep.c stable/9/sys/arm/arm/elf_trampoline.c stable/9/sys/arm/arm/exception.S stable/9/sys/arm/arm/gdb_machdep.c stable/9/sys/arm/arm/in_cksum.c stable/9/sys/arm/arm/intr.c stable/9/sys/arm/arm/irq_dispatch.S stable/9/sys/arm/arm/machdep.c stable/9/sys/arm/arm/mem.c stable/9/sys/arm/arm/nexus.c stable/9/sys/arm/arm/pmap.c stable/9/sys/arm/arm/support.S stable/9/sys/arm/arm/swtch.S stable/9/sys/arm/arm/sys_machdep.c stable/9/sys/arm/arm/trap.c stable/9/sys/arm/arm/undefined.c stable/9/sys/arm/arm/vectors.S stable/9/sys/arm/arm/vm_machdep.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/arm/arm/bcopyinout_xscale.S ============================================================================== --- stable/9/sys/arm/arm/bcopyinout_xscale.S Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/bcopyinout_xscale.S Mon Jun 17 20:26:19 2013 (r251866) @@ -333,10 +333,10 @@ ENTRY(copyin) str r6, [r1], #0x04 str r7, [r1], #0x04 .Lcopyin_bad1: - subs r2, r2, #0x10 + subs r2, r2, #0x10 bge .Lcopyin_bad1_loop16 - adds r2, r2, #0x10 + adds r2, r2, #0x10 ldmeqfd sp!, {r4-r7} RETeq /* Return now if done */ subs r2, r2, #0x04 @@ -394,10 +394,10 @@ ENTRY(copyin) str r6, [r1], #0x04 str r7, [r1], #0x04 .Lcopyin_bad2: - subs r2, r2, #0x10 + subs r2, r2, #0x10 bge .Lcopyin_bad2_loop16 - adds r2, r2, #0x10 + adds r2, r2, #0x10 ldmeqfd sp!, {r4-r7} RETeq /* Return now if done */ subs r2, r2, #0x04 @@ -455,10 +455,10 @@ ENTRY(copyin) str r6, [r1], #0x04 str r7, [r1], #0x04 .Lcopyin_bad3: - subs r2, r2, #0x10 + subs r2, r2, #0x10 bge .Lcopyin_bad3_loop16 - adds r2, r2, #0x10 + adds r2, r2, #0x10 ldmeqfd sp!, {r4-r7} RETeq /* Return now if done */ subs r2, r2, #0x04 @@ -785,10 +785,10 @@ ENTRY(copyout) strt r6, [r1], #0x04 strt r7, [r1], #0x04 .Lcopyout_bad1: - subs r2, r2, #0x10 + subs r2, r2, #0x10 bge .Lcopyout_bad1_loop16 - adds r2, r2, #0x10 + adds r2, r2, #0x10 ldmeqfd sp!, {r4-r7} RETeq /* Return now if done */ subs r2, r2, #0x04 @@ -846,10 +846,10 @@ ENTRY(copyout) strt r6, [r1], #0x04 strt r7, [r1], #0x04 .Lcopyout_bad2: - subs r2, r2, #0x10 + subs r2, r2, #0x10 bge .Lcopyout_bad2_loop16 - adds r2, r2, #0x10 + adds r2, r2, #0x10 ldmeqfd sp!, {r4-r7} RETeq /* Return now if done */ subs r2, r2, #0x04 @@ -907,10 +907,10 @@ ENTRY(copyout) strt r6, [r1], #0x04 strt r7, [r1], #0x04 .Lcopyout_bad3: - subs r2, r2, #0x10 + subs r2, r2, #0x10 bge .Lcopyout_bad3_loop16 - adds r2, r2, #0x10 + adds r2, r2, #0x10 ldmeqfd sp!, {r4-r7} RETeq /* Return now if done */ subs r2, r2, #0x04 Modified: stable/9/sys/arm/arm/bootconfig.c ============================================================================== --- stable/9/sys/arm/arm/bootconfig.c Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/bootconfig.c Mon Jun 17 20:26:19 2013 (r251866) @@ -46,7 +46,7 @@ __FBSDID("$FreeBSD$"); #include -/* +/* * Function to identify and process different types of boot argument */ Modified: stable/9/sys/arm/arm/busdma_machdep.c ============================================================================== --- stable/9/sys/arm/arm/busdma_machdep.c Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/busdma_machdep.c Mon Jun 17 20:26:19 2013 (r251866) @@ -156,7 +156,7 @@ struct bus_dmamap { static STAILQ_HEAD(, bus_dmamap) bounce_map_waitinglist; static STAILQ_HEAD(, bus_dmamap) bounce_map_callbacklist; -static TAILQ_HEAD(,bus_dmamap) dmamap_freelist = +static TAILQ_HEAD(,bus_dmamap) dmamap_freelist = TAILQ_HEAD_INITIALIZER(dmamap_freelist); #define BUSDMA_STATIC_MAPS 500 @@ -210,7 +210,7 @@ arm_dmamap_freelist_init(void *dummy) { int i; - for (i = 0; i < BUSDMA_STATIC_MAPS; i++) + for (i = 0; i < BUSDMA_STATIC_MAPS; i++) TAILQ_INSERT_HEAD(&dmamap_freelist, &map_pool[i], freelist); } @@ -231,7 +231,7 @@ _bus_dma_can_bounce(vm_offset_t lowaddr, int i; for (i = 0; phys_avail[i] && phys_avail[i + 1]; i += 2) { if ((lowaddr >= phys_avail[i] && lowaddr <= phys_avail[i + 1]) - || (lowaddr < phys_avail[i] && + || (lowaddr < phys_avail[i] && highaddr > phys_avail[i])) return (1); } @@ -313,7 +313,7 @@ _busdma_alloc_dmamap(void) return (map); } -static __inline void +static __inline void _busdma_free_dmamap(bus_dmamap_t map) { if (map->flags & DMAMAP_ALLOCATED) @@ -633,7 +633,7 @@ bus_dmamem_alloc(bus_dma_tag_t dmat, voi *vaddr = tmpaddr; } else newmap->origbuffer = newmap->allocbuffer = NULL; - } else + } else newmap->origbuffer = newmap->allocbuffer = NULL; return (0); } @@ -844,7 +844,7 @@ bus_dmamap_load_buffer(bus_dma_tag_t dma if (seg >= 0 && curaddr == lastaddr && (segs[seg].ds_len + sgsize) <= dmat->maxsegsz && (dmat->boundary == 0 || - (segs[seg].ds_addr & bmask) == + (segs[seg].ds_addr & bmask) == (curaddr & bmask))) { segs[seg].ds_len += sgsize; goto segdone; @@ -941,7 +941,7 @@ bus_dmamap_load_mbuf(bus_dma_tag_t dmat, for (m = m0; m != NULL && error == 0; m = m->m_next) { if (m->m_len > 0) { error = bus_dmamap_load_buffer(dmat, - dm_segments, map, m->m_data, m->m_len, + dm_segments, map, m->m_data, m->m_len, pmap_kernel(), flags, &lastaddr, &nsegs); map->len += m->m_len; } @@ -951,7 +951,7 @@ bus_dmamap_load_mbuf(bus_dma_tag_t dmat, } if (error) { - /* + /* * force "no valid mappings" on error in callback. */ (*callback)(callback_arg, dm_segments, 0, 0, error); @@ -1057,7 +1057,7 @@ bus_dmamap_load_uio(bus_dma_tag_t dmat, } if (error) { - /* + /* * force "no valid mappings" on error in callback. */ (*callback)(callback_arg, dm_segments, 0, 0, error); @@ -1092,7 +1092,7 @@ bus_dmamap_sync_buf(void *buf, int len, { char _tmp_cl[arm_dcache_align], _tmp_clend[arm_dcache_align]; register_t s; - int partial; + int partial; if ((op & BUS_DMASYNC_PREWRITE) && !(op & BUS_DMASYNC_PREREAD)) { cpu_dcache_wb_range((vm_offset_t)buf, len); @@ -1116,7 +1116,7 @@ bus_dmamap_sync_buf(void *buf, int len, ~arm_dcache_align_mask), (vm_offset_t)buf & arm_dcache_align_mask); if (((vm_offset_t)buf + len) & arm_dcache_align_mask) - memcpy(_tmp_clend, + memcpy(_tmp_clend, (void *)((vm_offset_t)buf + len), arm_dcache_align - (((vm_offset_t)(buf) + len) & arm_dcache_align_mask)); @@ -1126,11 +1126,11 @@ bus_dmamap_sync_buf(void *buf, int len, if (partial) { if ((vm_offset_t)buf & arm_dcache_align_mask) memcpy((void *)((vm_offset_t)buf & - ~arm_dcache_align_mask), _tmp_cl, + ~arm_dcache_align_mask), _tmp_cl, (vm_offset_t)buf & arm_dcache_align_mask); if (((vm_offset_t)buf + len) & arm_dcache_align_mask) - memcpy((void *)((vm_offset_t)buf + len), - _tmp_clend, arm_dcache_align - + memcpy((void *)((vm_offset_t)buf + len), + _tmp_clend, arm_dcache_align - (((vm_offset_t)(buf) + len) & arm_dcache_align_mask)); intr_restore(s); @@ -1146,7 +1146,7 @@ _bus_dmamap_sync_bp(bus_dma_tag_t dmat, STAILQ_FOREACH(bpage, &map->bpages, links) { if (op & BUS_DMASYNC_PREWRITE) { bcopy((void *)bpage->datavaddr, - (void *)(bpage->vaddr_nocache != 0 ? + (void *)(bpage->vaddr_nocache != 0 ? bpage->vaddr_nocache : bpage->vaddr), bpage->datacount); if (bpage->vaddr_nocache == 0) { @@ -1164,7 +1164,7 @@ _bus_dmamap_sync_bp(bus_dma_tag_t dmat, cpu_l2cache_inv_range(bpage->vaddr, bpage->datacount); } - bcopy((void *)(bpage->vaddr_nocache != 0 ? + bcopy((void *)(bpage->vaddr_nocache != 0 ? bpage->vaddr_nocache : bpage->vaddr), (void *)bpage->datavaddr, bpage->datacount); dmat->bounce_zone->total_bounced++; @@ -1179,7 +1179,7 @@ _bus_dma_buf_is_in_bp(bus_dmamap_t map, STAILQ_FOREACH(bpage, &map->bpages, links) { if ((vm_offset_t)buf >= bpage->datavaddr && - (vm_offset_t)buf + len <= bpage->datavaddr + + (vm_offset_t)buf + len <= bpage->datavaddr + bpage->datacount) return (1); } Modified: stable/9/sys/arm/arm/cpufunc.c ============================================================================== --- stable/9/sys/arm/arm/cpufunc.c Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/cpufunc.c Mon Jun 17 20:26:19 2013 (r251866) @@ -222,7 +222,7 @@ struct cpu_functions arm8_cpufuncs = { arm8_context_switch, /* context_switch */ arm8_setup /* cpu setup */ -}; +}; #endif /* CPU_ARM8 */ #ifdef CPU_ARM9 @@ -328,7 +328,7 @@ struct cpu_functions armv5_ec_cpufuncs = (void *)cpufunc_nullop, /* l2cache_wbinv_range */ (void *)cpufunc_nullop, /* l2cache_inv_range */ (void *)cpufunc_nullop, /* l2cache_wb_range */ - + /* Other functions */ cpufunc_nullop, /* flush_prefetchbuf */ @@ -530,7 +530,7 @@ struct cpu_functions sa110_cpufuncs = { sa110_context_switch, /* context_switch */ sa110_setup /* cpu setup */ -}; +}; #endif /* CPU_SA110 */ #if defined(CPU_SA1100) || defined(CPU_SA1110) @@ -591,7 +591,7 @@ struct cpu_functions sa11x0_cpufuncs = { sa11x0_context_switch, /* context_switch */ sa11x0_setup /* cpu setup */ -}; +}; #endif /* CPU_SA1100 || CPU_SA1110 */ #ifdef CPU_IXP12X0 @@ -652,7 +652,7 @@ struct cpu_functions ixp12x0_cpufuncs = ixp12x0_context_switch, /* context_switch */ ixp12x0_setup /* cpu setup */ -}; +}; #endif /* CPU_IXP12X0 */ #if defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) || \ @@ -841,7 +841,7 @@ struct cpu_functions fa526_cpufuncs = { fa526_context_switch, /* context_switch */ fa526_setup /* cpu setup */ -}; +}; #endif /* CPU_FA526 || CPU_FA626TE */ @@ -1099,7 +1099,7 @@ set_cpufuncs() cpu_reset_needs_v4_MMU_disable = 1; /* V4 or higher */ get_cachetype_cp15(); arm10_dcache_sets_inc = 1U << arm_dcache_l2_linesize; - arm10_dcache_sets_max = + arm10_dcache_sets_max = (1U << (arm_dcache_l2_linesize + arm_dcache_l2_nsets)) - arm10_dcache_sets_inc; arm10_dcache_index_inc = 1U << (32 - arm_dcache_l2_assoc); @@ -1353,7 +1353,7 @@ early_abort_fixup(arg) int loop; int count; int *registers = &frame->tf_r0; - + DFC_PRINTF(("LDM/STM\n")); DFC_DISASSEMBLE(fault_pc); if (fault_instruction & (1 << 21)) { @@ -1533,7 +1533,7 @@ late_abort_fixup(arg) offset = fault_instruction & 0x0f; if (offset == base) return ABORT_FIXUP_FAILED; - + /* * Register offset - hard we have to * cope with shifts ! @@ -1647,8 +1647,8 @@ static u_int parse_cpu_options(char *, s static u_int parse_cpu_options(args, optlist, cpuctrl) char *args; - struct cpu_option *optlist; - u_int cpuctrl; + struct cpu_option *optlist; + u_int cpuctrl; { int integer; @@ -1811,7 +1811,7 @@ arm8_setup(args) ctrl = cpuctrl; cpu_control(0xffffffff, cpuctrl); - /* Set the clock/test register */ + /* Set the clock/test register */ if (setclock) arm8_clock_config(0x7f, clocktest); } @@ -1891,7 +1891,7 @@ arm10_setup(args) int cpuctrl, cpuctrlmask; cpuctrl = CPU_CONTROL_MMU_ENABLE | CPU_CONTROL_SYST_ENABLE - | CPU_CONTROL_IC_ENABLE | CPU_CONTROL_DC_ENABLE + | CPU_CONTROL_IC_ENABLE | CPU_CONTROL_DC_ENABLE | CPU_CONTROL_WBUF_ENABLE | CPU_CONTROL_BPRD_ENABLE; cpuctrlmask = CPU_CONTROL_MMU_ENABLE | CPU_CONTROL_SYST_ENABLE | CPU_CONTROL_IC_ENABLE | CPU_CONTROL_DC_ENABLE @@ -2031,7 +2031,7 @@ sa110_setup(args) /* cpu_control(cpuctrlmask, cpuctrl);*/ cpu_control(0xffffffff, cpuctrl); - /* + /* * enable clockswitching, note that this doesn't read or write to r0, * r0 is just to make it valid asm */ @@ -2089,7 +2089,7 @@ sa11x0_setup(args) cpuctrl |= CPU_CONTROL_VECRELOC; /* Clear out the cache */ cpu_idcache_wbinv_all(); - /* Set the control register */ + /* Set the control register */ ctrl = cpuctrl; cpu_control(0xffffffff, cpuctrl); } @@ -2198,7 +2198,7 @@ ixp12x0_setup(args) /* Clear out the cache */ cpu_idcache_wbinv_all(); - /* Set the control register */ + /* Set the control register */ ctrl = cpuctrl; /* cpu_control(0xffffffff, cpuctrl); */ cpu_control(cpuctrlmask, cpuctrl); @@ -2292,5 +2292,5 @@ xscale_setup(args) __asm __volatile("mcr p15, 0, %0, c1, c0, 1" : : "r" (auxctl)); } -#endif /* CPU_XSCALE_80200 || CPU_XSCALE_80321 || CPU_XSCALE_PXA2X0 || CPU_XSCALE_IXP425 +#endif /* CPU_XSCALE_80200 || CPU_XSCALE_80321 || CPU_XSCALE_PXA2X0 || CPU_XSCALE_IXP425 CPU_XSCALE_80219 */ Modified: stable/9/sys/arm/arm/cpufunc_asm.S ============================================================================== --- stable/9/sys/arm/arm/cpufunc_asm.S Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/cpufunc_asm.S Mon Jun 17 20:26:19 2013 (r251866) @@ -34,14 +34,14 @@ * * RiscBSD kernel project * - * cpufunc.S + * cpufunc.S * * Assembly functions for CPU / MMU / TLB specific operations * * Created : 30/01/97 * */ - + #include __FBSDID("$FreeBSD$"); @@ -86,13 +86,13 @@ ENTRY(cpufunc_faultaddress) * Generic functions to write the internal coprocessor registers * * - * Currently these registers are + * Currently these registers are * c1 - CPU Control * c3 - Domain Access Control * * All other registers are CPU architecture specific */ - + #if 0 /* See below. */ ENTRY(cpufunc_control) mcr p15, 0, r0, c1, c0, 0 @@ -107,12 +107,12 @@ ENTRY(cpufunc_domains) * Generic functions to read/modify/write the internal coprocessor registers * * - * Currently these registers are + * Currently these registers are * c1 - CPU Control * * All other registers are CPU architecture specific */ - + ENTRY(cpufunc_control) mrc p15, 0, r3, c1, c0, 0 /* Read the control register */ bic r2, r3, r0 /* Clear bits */ Modified: stable/9/sys/arm/arm/cpufunc_asm_arm10.S ============================================================================== --- stable/9/sys/arm/arm/cpufunc_asm_arm10.S Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/cpufunc_asm_arm10.S Mon Jun 17 20:26:19 2013 (r251866) @@ -31,7 +31,7 @@ * ARM10 assembly functions for CPU / MMU / TLB specific operations * */ - + #include __FBSDID("$FreeBSD$"); @@ -255,7 +255,7 @@ ENTRY(arm10_context_switch) /* * Parameters for the cache cleaning code. Note that the order of these - * four variables is assumed in the code above. Hence the reason for + * four variables is assumed in the code above. Hence the reason for * declaring them in the assembler file. */ .align 0 Modified: stable/9/sys/arm/arm/cpufunc_asm_arm11.S ============================================================================== --- stable/9/sys/arm/arm/cpufunc_asm_arm11.S Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/cpufunc_asm_arm11.S Mon Jun 17 20:26:19 2013 (r251866) @@ -33,7 +33,7 @@ * XXX We make no attempt at present to take advantage of the v6 memroy * architecture or physically tagged cache. */ - + #include __FBSDID("$FreeBSD$"); Modified: stable/9/sys/arm/arm/cpufunc_asm_arm7tdmi.S ============================================================================== --- stable/9/sys/arm/arm/cpufunc_asm_arm7tdmi.S Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/cpufunc_asm_arm7tdmi.S Mon Jun 17 20:26:19 2013 (r251866) @@ -34,7 +34,7 @@ * ARM7TDMI assembly functions for CPU / MMU / TLB specific operations * */ - + #include __FBSDID("$FreeBSD$"); Modified: stable/9/sys/arm/arm/cpufunc_asm_arm8.S ============================================================================== --- stable/9/sys/arm/arm/cpufunc_asm_arm8.S Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/cpufunc_asm_arm8.S Mon Jun 17 20:26:19 2013 (r251866) @@ -35,7 +35,7 @@ * ARM8 assembly functions for CPU / MMU / TLB specific operations * */ - + #include __FBSDID("$FreeBSD$"); Modified: stable/9/sys/arm/arm/cpufunc_asm_arm9.S ============================================================================== --- stable/9/sys/arm/arm/cpufunc_asm_arm9.S Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/cpufunc_asm_arm9.S Mon Jun 17 20:26:19 2013 (r251866) @@ -30,7 +30,7 @@ * * ARM9 assembly functions for CPU / MMU / TLB specific operations */ - + #include __FBSDID("$FreeBSD$"); @@ -242,7 +242,7 @@ ENTRY(arm9_context_switch) /* * Parameters for the cache cleaning code. Note that the order of these - * four variables is assumed in the code above. Hence the reason for + * four variables is assumed in the code above. Hence the reason for * declaring them in the assembler file. */ .align 0 Modified: stable/9/sys/arm/arm/cpufunc_asm_armv4.S ============================================================================== --- stable/9/sys/arm/arm/cpufunc_asm_armv4.S Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/cpufunc_asm_armv4.S Mon Jun 17 20:26:19 2013 (r251866) @@ -36,7 +36,7 @@ * ARM9 assembly functions for CPU / MMU / TLB specific operations * */ - + #include __FBSDID("$FreeBSD$"); Modified: stable/9/sys/arm/arm/cpufunc_asm_armv5.S ============================================================================== --- stable/9/sys/arm/arm/cpufunc_asm_armv5.S Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/cpufunc_asm_armv5.S Mon Jun 17 20:26:19 2013 (r251866) @@ -32,7 +32,7 @@ * These routines can be used by any core that supports the set/index * operations. */ - + #include __FBSDID("$FreeBSD$"); @@ -224,7 +224,7 @@ ENTRY(armv5_dcache_wbinv_all) /* * Parameters for the cache cleaning code. Note that the order of these - * four variables is assumed in the code above. Hence the reason for + * four variables is assumed in the code above. Hence the reason for * declaring them in the assembler file. */ .align 0 Modified: stable/9/sys/arm/arm/cpufunc_asm_sa1.S ============================================================================== --- stable/9/sys/arm/arm/cpufunc_asm_sa1.S Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/cpufunc_asm_sa1.S Mon Jun 17 20:26:19 2013 (r251866) @@ -35,7 +35,7 @@ * SA-1 assembly functions for CPU / MMU / TLB specific operations * */ - + #include __FBSDID("$FreeBSD$"); @@ -58,7 +58,7 @@ ENTRY(sa1_setttb) #else ldr r3, .Lblock_userspace_access ldr r2, [r3] - orr r1, r2, #1 + orr r1, r2, #1 str r1, [r3] #endif stmfd sp!, {r0-r3, lr} @@ -67,7 +67,7 @@ ENTRY(sa1_setttb) mcr p15, 0, r0, c7, c5, 0 /* invalidate I$ and BTB */ mcr p15, 0, r0, c7, c10, 4 /* drain write and fill buffer */ - /* Write the TTB */ + /* Write the TTB */ mcr p15, 0, r0, c2, c0, 0 /* If we have updated the TTB we must flush the TLB */ Modified: stable/9/sys/arm/arm/cpufunc_asm_xscale.S ============================================================================== --- stable/9/sys/arm/arm/cpufunc_asm_xscale.S Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/cpufunc_asm_xscale.S Mon Jun 17 20:26:19 2013 (r251866) @@ -71,7 +71,7 @@ * * XScale assembly functions for CPU / MMU / TLB specific operations */ - + #include __FBSDID("$FreeBSD$"); @@ -138,7 +138,7 @@ ENTRY(xscale_setttb) #else ldr r3, .Lblock_userspace_access ldr r2, [r3] - orr r1, r2, #1 + orr r1, r2, #1 str r1, [r3] #endif stmfd sp!, {r0-r3, lr} @@ -150,7 +150,7 @@ ENTRY(xscale_setttb) ldmfd sp!, {r0-r3, lr} - /* Write the TTB */ + /* Write the TTB */ mcr p15, 0, r0, c2, c0, 0 /* If we have updated the TTB we must flush the TLB */ Modified: stable/9/sys/arm/arm/cpufunc_asm_xscale_c3.S ============================================================================== --- stable/9/sys/arm/arm/cpufunc_asm_xscale_c3.S Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/cpufunc_asm_xscale_c3.S Mon Jun 17 20:26:19 2013 (r251866) @@ -72,7 +72,7 @@ * * XScale core 3 assembly functions for CPU / MMU / TLB specific operations */ - + #include __FBSDID("$FreeBSD$"); @@ -339,7 +339,7 @@ ENTRY(xscalec3_setttb) #else ldr r3, .Lblock_userspace_access ldr r2, [r3] - orr r1, r2, #1 + orr r1, r2, #1 str r1, [r3] #endif stmfd sp!, {r0-r3, lr} @@ -354,7 +354,7 @@ ENTRY(xscalec3_setttb) #ifdef ARM_USE_L2_CACHE orr r0, r0, #0x18 /* cache the page table in L2 */ #endif - /* Write the TTB */ + /* Write the TTB */ mcr p15, 0, r0, c2, c0, 0 /* If we have updated the TTB we must flush the TLB */ Modified: stable/9/sys/arm/arm/db_disasm.c ============================================================================== --- stable/9/sys/arm/arm/db_disasm.c Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/db_disasm.c Mon Jun 17 20:26:19 2013 (r251866) @@ -50,7 +50,7 @@ static u_int db_disasm_read_word(u_int); static void db_disasm_printaddr(u_int); static const disasm_interface_t db_disasm_interface = { - db_disasm_read_word, + db_disasm_read_word, db_disasm_printaddr, db_printf }; Modified: stable/9/sys/arm/arm/db_interface.c ============================================================================== --- stable/9/sys/arm/arm/db_interface.c Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/db_interface.c Mon Jun 17 20:26:19 2013 (r251866) @@ -6,24 +6,24 @@ * Mach Operating System * Copyright (c) 1991,1990 Carnegie Mellon University * All Rights Reserved. - * + * * Permission to use, copy, modify and distribute this software and its * documentation is hereby granted, provided that both the copyright * notice and this permission notice appear in all copies of the * software, derivative works or modified versions, and any portions * thereof, and that both notices appear in supporting documentation. - * + * * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. - * + * * Carnegie Mellon requests users of this software to return to - * + * * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU * School of Computer Science * Carnegie Mellon University * Pittsburgh PA 15213-3890 - * + * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. * @@ -325,7 +325,7 @@ branch_taken(u_int insn, db_addr_t pc) break; default: break; /* XXX */ - } + } } return (addr + offset); Modified: stable/9/sys/arm/arm/db_trace.c ============================================================================== --- stable/9/sys/arm/arm/db_trace.c Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/db_trace.c Mon Jun 17 20:26:19 2013 (r251866) @@ -7,24 +7,24 @@ * Mach Operating System * Copyright (c) 1991,1990 Carnegie Mellon University * All Rights Reserved. - * + * * Permission to use, copy, modify and distribute this software and its * documentation is hereby granted, provided that both the copyright * notice and this permission notice appear in all copies of the * software, derivative works or modified versions, and any portions * thereof, and that both notices appear in supporting documentation. - * + * * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE. - * + * * Carnegie Mellon requests users of this software to return to - * + * * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU * School of Computer Science * Carnegie Mellon University * Pittsburgh PA 15213-3890 - * + * * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. */ @@ -55,7 +55,7 @@ __FBSDID("$FreeBSD$"); * a structure to represent them is a good idea. * * Here's the diagram from the APCS. Increasing address is _up_ the page. - * + * * save code pointer [fp] <- fp points to here * return link value [fp, #-4] * return sp value [fp, #-8] @@ -72,9 +72,9 @@ __FBSDID("$FreeBSD$"); * [saved a2 value] * [saved a1 value] * - * The save code pointer points twelve bytes beyond the start of the - * code sequence (usually a single STM) that created the stack frame. - * We have to disassemble it if we want to know which of the optional + * The save code pointer points twelve bytes beyond the start of the + * code sequence (usually a single STM) that created the stack frame. + * We have to disassemble it if we want to know which of the optional * fields are actually present. */ Modified: stable/9/sys/arm/arm/disassem.c ============================================================================== --- stable/9/sys/arm/arm/disassem.c Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/disassem.c Mon Jun 17 20:26:19 2013 (r251866) @@ -131,9 +131,9 @@ static const struct arm32_insn arm32_i[] { 0x0c500000, 0x04400000, "strb", "daW" }, { 0x0c500000, 0x04500000, "ldrb", "daW" }, { 0x0e1f0000, 0x080d0000, "stm", "YnWl" },/* separate out r13 base */ - { 0x0e1f0000, 0x081d0000, "ldm", "YnWl" },/* separate out r13 base */ + { 0x0e1f0000, 0x081d0000, "ldm", "YnWl" },/* separate out r13 base */ { 0x0e100000, 0x08000000, "stm", "XnWl" }, - { 0x0e100000, 0x08100000, "ldm", "XnWl" }, + { 0x0e100000, 0x08100000, "ldm", "XnWl" }, { 0x0e1000f0, 0x00100090, "ldrb", "de" }, { 0x0e1000f0, 0x00000090, "strb", "de" }, { 0x0e1000f0, 0x001000d0, "ldrsb", "de" }, @@ -329,7 +329,7 @@ disasm(const disasm_interface_t *di, vm_ di->di_printf("#0x%08x", (insn & 0xff) << (32 - rotate) | (insn & 0xff) >> rotate); - } else { + } else { disasm_register_shift(di, insn); } break; Modified: stable/9/sys/arm/arm/dump_machdep.c ============================================================================== --- stable/9/sys/arm/arm/dump_machdep.c Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/dump_machdep.c Mon Jun 17 20:26:19 2013 (r251866) @@ -197,7 +197,7 @@ cb_dumpdata(struct md_pa *mdp, int seqnr #ifdef SW_WATCHDOG wdog_kern_pat(WD_LASTVAL); #endif - error = dump_write(di, + error = dump_write(di, (void *)(pa - (pa & L1_ADDR_BITS)),0, dumplo, sz); if (error) break; Modified: stable/9/sys/arm/arm/elf_trampoline.c ============================================================================== --- stable/9/sys/arm/arm/elf_trampoline.c Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/elf_trampoline.c Mon Jun 17 20:26:19 2013 (r251866) @@ -202,7 +202,7 @@ _startC(void) "orr %0, %0, %1\n" "mrc p15, 0, %1, c1, c0, 0\n" "bic %1, %1, #1\n" /* Disable MMU */ - "orr %1, %1, #(4 | 8)\n" /* Add DC enable, + "orr %1, %1, #(4 | 8)\n" /* Add DC enable, WBUF enable */ "orr %1, %1, #0x1000\n" /* Add IC enable */ "orr %1, %1, #(0x800)\n" /* BPRD enable */ @@ -397,7 +397,7 @@ inflate_kernel(void *kernel, void *start #endif void * -load_kernel(unsigned int kstart, unsigned int curaddr,unsigned int func_end, +load_kernel(unsigned int kstart, unsigned int curaddr,unsigned int func_end, int d) { Elf32_Ehdr *eh; @@ -436,7 +436,7 @@ load_kernel(unsigned int kstart, unsigne if (phdr[j].p_type == PT_LOAD && shdr[i].sh_offset >= phdr[j].p_offset && - (shdr[i].sh_offset + + (shdr[i].sh_offset + shdr[i].sh_size <= phdr[j].p_offset + phdr[j].p_filesz)) { @@ -445,7 +445,7 @@ load_kernel(unsigned int kstart, unsigne j = eh->e_phnum; } } - if (shdr[i].sh_offset != 0 && + if (shdr[i].sh_offset != 0 && shdr[i].sh_size != 0) { symtabindex = i; symstrindex = shdr[i].sh_link; @@ -457,7 +457,7 @@ load_kernel(unsigned int kstart, unsigne ssym = lastaddr; if (d) { memcpy((void *)func_end, (void *)( - shdr[symtabindex].sh_offset + kstart), + shdr[symtabindex].sh_offset + kstart), shdr[symtabindex].sh_size); memcpy((void *)(func_end + shdr[symtabindex].sh_size), @@ -469,7 +469,7 @@ load_kernel(unsigned int kstart, unsigne sizeof(shdr[symtabindex].sh_size)); lastaddr += sizeof(shdr[symstrindex].sh_size); lastaddr += shdr[symstrindex].sh_size; - lastaddr = roundup(lastaddr, + lastaddr = roundup(lastaddr, sizeof(shdr[symstrindex].sh_size)); } @@ -488,13 +488,13 @@ load_kernel(unsigned int kstart, unsigne (void*)(kstart + phdr[i].p_offset), phdr[i].p_filesz); /* Clean space from oversized segments, eg: bss. */ if (phdr[i].p_filesz < phdr[i].p_memsz) - bzero((void *)(phdr[i].p_vaddr - KERNVIRTADDR + + bzero((void *)(phdr[i].p_vaddr - KERNVIRTADDR + curaddr + phdr[i].p_filesz), phdr[i].p_memsz - phdr[i].p_filesz); } /* Now grab the symbol tables. */ if (symtabindex >= 0 && symstrindex >= 0) { - *(Elf_Size *)lastaddr = + *(Elf_Size *)lastaddr = shdr[symtabindex].sh_size; lastaddr += sizeof(shdr[symtabindex].sh_size); memcpy((void*)lastaddr, @@ -511,7 +511,7 @@ load_kernel(unsigned int kstart, unsigne shdr[symtabindex].sh_size), shdr[symstrindex].sh_size); lastaddr += shdr[symstrindex].sh_size; - lastaddr = roundup(lastaddr, + lastaddr = roundup(lastaddr, sizeof(shdr[symstrindex].sh_size)); *(Elf_Addr *)curaddr = MAGIC_TRAMP_NUMBER; *((Elf_Addr *)curaddr + 1) = ssym - curaddr + KERNVIRTADDR; @@ -572,10 +572,10 @@ setup_pagetables(unsigned int pt_addr, v "sub pc, pc, #4\n" : "=r" (tmp) : "r" (pd), "r" (domain)); - /* + /* * XXX: This is the most stupid workaround I've ever wrote. * For some reason, the KB9202 won't boot the kernel unless - * we access an address which is not in the + * we access an address which is not in the * 0x20000000 - 0x20ffffff range. I hope I'll understand * what's going on later. */ @@ -596,7 +596,7 @@ __start(void) curaddr = (void*)((unsigned int)curaddr & 0xfff00000); #ifdef KZIP if (*kernel == 0x1f && kernel[1] == 0x8b) { - pt_addr = (((int)&_end + KERNSIZE + 0x100) & + pt_addr = (((int)&_end + KERNSIZE + 0x100) & ~(L1_TABLE_SIZE - 1)) + L1_TABLE_SIZE; #ifdef CPU_ARM9 @@ -609,15 +609,15 @@ __start(void) /* Gzipped kernel */ dst = inflate_kernel(kernel, &_end); kernel = (char *)&_end; - altdst = 4 + load_kernel((unsigned int)kernel, + altdst = 4 + load_kernel((unsigned int)kernel, (unsigned int)curaddr, (unsigned int)&func_end + 800 , 0); if (altdst > dst) dst = altdst; } else #endif - dst = 4 + load_kernel((unsigned int)&kernel_start, - (unsigned int)curaddr, + dst = 4 + load_kernel((unsigned int)&kernel_start, + (unsigned int)curaddr, (unsigned int)&func_end, 0); dst = (void *)(((vm_offset_t)dst & ~3)); pt_addr = ((unsigned int)dst &~(L1_TABLE_SIZE - 1)) + L1_TABLE_SIZE; @@ -626,8 +626,8 @@ __start(void) sp = pt_addr + L1_TABLE_SIZE + 8192; sp = sp &~3; dst = (void *)(sp + 4); - memcpy((void *)dst, (void *)&load_kernel, (unsigned int)&func_end - + memcpy((void *)dst, (void *)&load_kernel, (unsigned int)&func_end - (unsigned int)&load_kernel + 800); - do_call(dst, kernel, dst + (unsigned int)(&func_end) - + do_call(dst, kernel, dst + (unsigned int)(&func_end) - (unsigned int)(&load_kernel) + 800, sp); } Modified: stable/9/sys/arm/arm/exception.S ============================================================================== --- stable/9/sys/arm/arm/exception.S Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/exception.S Mon Jun 17 20:26:19 2013 (r251866) @@ -189,7 +189,7 @@ Laddress_exception_msg: * This function uses PULLFRAMEFROMSVCANDEXIT and * DO_AST * only be called if the exception handler used PUSHFRAMEINSVC - * + * */ exception_exit: Modified: stable/9/sys/arm/arm/gdb_machdep.c ============================================================================== --- stable/9/sys/arm/arm/gdb_machdep.c Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/gdb_machdep.c Mon Jun 17 20:26:19 2013 (r251866) @@ -70,8 +70,8 @@ gdb_cpu_getreg(int regnum, size_t *regsz case 12: return (&kdb_thrctx->un_32.pcb32_r12); case 13: stacktest = kdb_thrctx->un_32.pcb32_sp + 5 * 4; return (&stacktest); - case 15: - /* + case 15: + /* * On context switch, the PC is not put in the PCB, but * we can retrieve it from the stack. */ Modified: stable/9/sys/arm/arm/in_cksum.c ============================================================================== --- stable/9/sys/arm/arm/in_cksum.c Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/in_cksum.c Mon Jun 17 20:26:19 2013 (r251866) @@ -149,4 +149,4 @@ u_int in_cksum_hdr(const struct ip *ip) union l_util l_util; REDUCE16; return (~sum & 0xffff); -} +} Modified: stable/9/sys/arm/arm/intr.c ============================================================================== --- stable/9/sys/arm/arm/intr.c Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/intr.c Mon Jun 17 20:26:19 2013 (r251866) @@ -40,7 +40,7 @@ __FBSDID("$FreeBSD$"); #include #include -#include +#include #include #include #include @@ -62,7 +62,7 @@ void arm_handler_execute(struct trapfram void (*arm_post_filter)(void *) = NULL; void -arm_setup_irqhandler(const char *name, driver_filter_t *filt, +arm_setup_irqhandler(const char *name, driver_filter_t *filt, void (*hand)(void*), void *arg, int irq, int flags, void **cookiep) { struct intr_event *event; @@ -78,7 +78,7 @@ arm_setup_irqhandler(const char *name, d if (error) return; intr_events[irq] = event; - last_printed += + last_printed += snprintf(intrnames + last_printed, MAXCOMLEN + 1, "irq%d: %s", irq, name); Modified: stable/9/sys/arm/arm/irq_dispatch.S ============================================================================== --- stable/9/sys/arm/arm/irq_dispatch.S Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/irq_dispatch.S Mon Jun 17 20:26:19 2013 (r251866) @@ -103,7 +103,7 @@ ASENTRY_NP(irq_entry) .global _C_LABEL(intrnames), _C_LABEL(sintrnames) .global _C_LABEL(intrcnt), _C_LABEL(sintrcnt) -_C_LABEL(intrnames): +_C_LABEL(intrnames): .space NIRQ * (MAXCOMLEN + 1) _C_LABEL(intrcnt): .space NIRQ * 4 Modified: stable/9/sys/arm/arm/machdep.c ============================================================================== --- stable/9/sys/arm/arm/machdep.c Mon Jun 17 20:18:12 2013 (r251865) +++ stable/9/sys/arm/arm/machdep.c Mon Jun 17 20:26:19 2013 (r251866) @@ -139,14 +139,14 @@ sendsig(catcher, ksi, mask) /* Allocate and validate space for the signal handler context. */ if ((td->td_flags & TDP_ALTSTACK) != 0 && !(onstack) && SIGISMEMBER(psp->ps_sigonstack, sig)) { - fp = (struct sigframe *)(td->td_sigstk.ss_sp + + fp = (struct sigframe *)(td->td_sigstk.ss_sp + td->td_sigstk.ss_size); #if defined(COMPAT_43) td->td_sigstk.ss_flags |= SS_ONSTACK; #endif } else fp = (struct sigframe *)td->td_frame->tf_usr_sp; - + /* make room on the stack */ fp--; @@ -156,7 +156,7 @@ sendsig(catcher, ksi, mask) get_mcontext(td, &frame.sf_uc.uc_mcontext, 0); frame.sf_si = ksi->ksi_info; frame.sf_uc.uc_sigmask = *mask; - frame.sf_uc.uc_stack.ss_flags = (td->td_pflags & TDP_ALTSTACK ) + frame.sf_uc.uc_stack.ss_flags = (td->td_pflags & TDP_ALTSTACK ) ? ((onstack) ? SS_ONSTACK : 0) : SS_DISABLE; frame.sf_uc.uc_stack = td->td_sigstk; mtx_unlock(&psp->ps_mtx); @@ -449,7 +449,7 @@ ptrace_single_step(struct thread *td) ("Didn't clear single step")); p = td->td_proc; PROC_UNLOCK(p); - error = ptrace_read_int(td, td->td_frame->tf_pc + 4, + error = ptrace_read_int(td, td->td_frame->tf_pc + 4, *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 20:27:22 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 20:40:17 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 4775F6B0; Mon, 17 Jun 2013 20:40:17 +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 383D61E61; Mon, 17 Jun 2013 20:40: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 r5HKeHPd032772; Mon, 17 Jun 2013 20:40:17 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HKeGRq032770; Mon, 17 Jun 2013 20:40:16 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306172040.r5HKeGRq032770@svn.freebsd.org> From: Scott Long Date: Mon, 17 Jun 2013 20:40:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251868 - in stable/9/sys: arm/arm mips/mips X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 20:40:17 -0000 Author: scottl Date: Mon Jun 17 20:40:16 2013 New Revision: 251868 URL: http://svnweb.freebsd.org/changeset/base/251868 Log: MFC r240177: Dynamically allocate the S/G lists passed to callback routines rather than allocating them on the stack of various bus_dmamap_load*() functions. The S/G lists are stored in the DMA tags. This matches the implementation on all other platforms. Submitted by: jhb Approved by: marius, adrian Obtained from: Netflix Modified: stable/9/sys/arm/arm/busdma_machdep.c stable/9/sys/mips/mips/busdma_machdep.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/arm/arm/busdma_machdep.c ============================================================================== --- stable/9/sys/arm/arm/busdma_machdep.c Mon Jun 17 20:27:20 2013 (r251867) +++ stable/9/sys/arm/arm/busdma_machdep.c Mon Jun 17 20:40:16 2013 (r251868) @@ -81,6 +81,7 @@ struct bus_dma_tag { int map_count; bus_dma_lock_t *lockfunc; void *lockfuncarg; + bus_dma_segment_t *segments; /* * DMA range for this tag. If the page doesn't fall within * one of these ranges, an error is returned. The caller @@ -374,6 +375,8 @@ bus_dma_tag_create(bus_dma_tag_t parent, newtag->lockfunc = dflt_lock; newtag->lockfuncarg = NULL; } + newtag->segments = NULL; + /* * Take into account any restrictions imposed by our parent tag */ @@ -447,7 +450,6 @@ bus_dma_tag_destroy(bus_dma_tag_t dmat) #endif if (dmat != NULL) { - if (dmat->map_count != 0) return (EBUSY); @@ -457,6 +459,8 @@ bus_dma_tag_destroy(bus_dma_tag_t dmat) parent = dmat->parent; atomic_subtract_int(&dmat->ref_count, 1); if (dmat->ref_count == 0) { + if (dmat->segments != NULL) + free(dmat->segments, M_DEVBUF); free(dmat, M_DEVBUF); /* * Last reference count, so @@ -484,6 +488,17 @@ bus_dmamap_create(bus_dma_tag_t dmat, in bus_dmamap_t newmap; int error = 0; + if (dmat->segments == NULL) { + dmat->segments = (bus_dma_segment_t *)malloc( + sizeof(bus_dma_segment_t) * dmat->nsegments, M_DEVBUF, + M_NOWAIT); + if (dmat->segments == NULL) { + CTR3(KTR_BUSDMA, "%s: tag %p error %d", + __func__, dmat, ENOMEM); + return (ENOMEM); + } + } + newmap = _busdma_alloc_dmamap(); if (newmap == NULL) { CTR3(KTR_BUSDMA, "%s: tag %p error %d", __func__, dmat, ENOMEM); @@ -585,6 +600,16 @@ bus_dmamem_alloc(bus_dma_tag_t dmat, voi mflags = M_NOWAIT; else mflags = M_WAITOK; + if (dmat->segments == NULL) { + dmat->segments = (bus_dma_segment_t *)malloc( + sizeof(bus_dma_segment_t) * dmat->nsegments, M_DEVBUF, + mflags); + if (dmat->segments == NULL) { + CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d", + __func__, dmat, dmat->flags, ENOMEM); + return (ENOMEM); + } + } if (flags & BUS_DMA_ZERO) mflags |= M_ZERO; @@ -883,11 +908,6 @@ bus_dmamap_load(bus_dma_tag_t dmat, bus_ { vm_offset_t lastaddr = 0; int error, nsegs = -1; -#ifdef __CC_SUPPORTS_DYNAMIC_ARRAY_INIT - bus_dma_segment_t dm_segments[dmat->nsegments]; -#else - bus_dma_segment_t dm_segments[BUS_DMAMAP_NSEGS]; -#endif KASSERT(dmat != NULL, ("dmatag is NULL")); KASSERT(map != NULL, ("dmamap is NULL")); @@ -898,14 +918,14 @@ bus_dmamap_load(bus_dma_tag_t dmat, bus_ map->buffer = buf; map->len = buflen; error = bus_dmamap_load_buffer(dmat, - dm_segments, map, buf, buflen, kernel_pmap, + dmat->segments, map, buf, buflen, kernel_pmap, flags, &lastaddr, &nsegs); if (error == EINPROGRESS) return (error); if (error) (*callback)(callback_arg, NULL, 0, error); else - (*callback)(callback_arg, dm_segments, nsegs + 1, error); + (*callback)(callback_arg, dmat->segments, nsegs + 1, error); CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", __func__, dmat, dmat->flags, nsegs + 1, error); @@ -921,11 +941,6 @@ bus_dmamap_load_mbuf(bus_dma_tag_t dmat, bus_dmamap_callback2_t *callback, void *callback_arg, int flags) { -#ifdef __CC_SUPPORTS_DYNAMIC_ARRAY_INIT - bus_dma_segment_t dm_segments[dmat->nsegments]; -#else - bus_dma_segment_t dm_segments[BUS_DMAMAP_NSEGS]; -#endif int nsegs = -1, error = 0; M_ASSERTPKTHDR(m0); @@ -941,7 +956,7 @@ bus_dmamap_load_mbuf(bus_dma_tag_t dmat, for (m = m0; m != NULL && error == 0; m = m->m_next) { if (m->m_len > 0) { error = bus_dmamap_load_buffer(dmat, - dm_segments, map, m->m_data, m->m_len, + dmat->segments, map, m->m_data, m->m_len, pmap_kernel(), flags, &lastaddr, &nsegs); map->len += m->m_len; } @@ -954,9 +969,9 @@ bus_dmamap_load_mbuf(bus_dma_tag_t dmat, /* * force "no valid mappings" on error in callback. */ - (*callback)(callback_arg, dm_segments, 0, 0, error); + (*callback)(callback_arg, dmat->segments, 0, 0, error); } else { - (*callback)(callback_arg, dm_segments, nsegs + 1, + (*callback)(callback_arg, dmat->segments, nsegs + 1, m0->m_pkthdr.len, error); } CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", @@ -1012,11 +1027,6 @@ bus_dmamap_load_uio(bus_dma_tag_t dmat, int flags) { vm_offset_t lastaddr = 0; -#ifdef __CC_SUPPORTS_DYNAMIC_ARRAY_INIT - bus_dma_segment_t dm_segments[dmat->nsegments]; -#else - bus_dma_segment_t dm_segments[BUS_DMAMAP_NSEGS]; -#endif int nsegs, i, error; bus_size_t resid; struct iovec *iov; @@ -1048,8 +1058,8 @@ bus_dmamap_load_uio(bus_dma_tag_t dmat, caddr_t addr = (caddr_t) iov[i].iov_base; if (minlen > 0) { - error = bus_dmamap_load_buffer(dmat, dm_segments, map, - addr, minlen, pmap, flags, &lastaddr, &nsegs); + error = bus_dmamap_load_buffer(dmat, dmat->segments, + map, addr, minlen, pmap, flags, &lastaddr, &nsegs); map->len += minlen; resid -= minlen; @@ -1060,9 +1070,9 @@ bus_dmamap_load_uio(bus_dma_tag_t dmat, /* * force "no valid mappings" on error in callback. */ - (*callback)(callback_arg, dm_segments, 0, 0, error); + (*callback)(callback_arg, dmat->segments, 0, 0, error); } else { - (*callback)(callback_arg, dm_segments, nsegs+1, + (*callback)(callback_arg, dmat->segments, nsegs+1, uio->uio_resid, error); } Modified: stable/9/sys/mips/mips/busdma_machdep.c ============================================================================== --- stable/9/sys/mips/mips/busdma_machdep.c Mon Jun 17 20:27:20 2013 (r251867) +++ stable/9/sys/mips/mips/busdma_machdep.c Mon Jun 17 20:40:16 2013 (r251868) @@ -80,6 +80,7 @@ struct bus_dma_tag { int map_count; bus_dma_lock_t *lockfunc; void *lockfuncarg; + bus_dma_segment_t *segments; struct bounce_zone *bounce_zone; }; @@ -352,6 +353,8 @@ bus_dma_tag_create(bus_dma_tag_t parent, newtag->lockfunc = dflt_lock; newtag->lockfuncarg = NULL; } + newtag->segments = NULL; + /* * Take into account any restrictions imposed by our parent tag */ @@ -434,6 +437,8 @@ bus_dma_tag_destroy(bus_dma_tag_t dmat) parent = dmat->parent; atomic_subtract_int(&dmat->ref_count, 1); if (dmat->ref_count == 0) { + if (dmat->segments != NULL) + free(dmat->segments, M_DEVBUF); free(dmat, M_DEVBUF); /* * Last reference count, so @@ -442,7 +447,7 @@ bus_dma_tag_destroy(bus_dma_tag_t dmat) */ dmat = parent; } else - dmat = NULL; + dmat = NULL; } } CTR2(KTR_BUSDMA, "%s tag %p", __func__, dmat_copy); @@ -461,6 +466,17 @@ bus_dmamap_create(bus_dma_tag_t dmat, in bus_dmamap_t newmap; int error = 0; + if (dmat->segments == NULL) { + dmat->segments = (bus_dma_segment_t *)malloc( + sizeof(bus_dma_segment_t) * dmat->nsegments, M_DEVBUF, + M_NOWAIT); + if (dmat->segments == NULL) { + CTR3(KTR_BUSDMA, "%s: tag %p error %d", + __func__, dmat, ENOMEM); + return (ENOMEM); + } + } + newmap = _busdma_alloc_dmamap(); if (newmap == NULL) { CTR3(KTR_BUSDMA, "%s: tag %p error %d", __func__, dmat, ENOMEM); @@ -563,6 +579,16 @@ bus_dmamem_alloc(bus_dma_tag_t dmat, voi mflags = M_NOWAIT; else mflags = M_WAITOK; + if (dmat->segments == NULL) { + dmat->segments = (bus_dma_segment_t *)malloc( + sizeof(bus_dma_segment_t) * dmat->nsegments, M_DEVBUF, + mflags); + if (dmat->segments == NULL) { + CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d", + __func__, dmat, dmat->flags, ENOMEM); + return (ENOMEM); + } + } if (flags & BUS_DMA_ZERO) mflags |= M_ZERO; @@ -824,11 +850,6 @@ bus_dmamap_load(bus_dma_tag_t dmat, bus_ { vm_offset_t lastaddr = 0; int error, nsegs = -1; -#ifdef __CC_SUPPORTS_DYNAMIC_ARRAY_INIT - bus_dma_segment_t dm_segments[dmat->nsegments]; -#else - bus_dma_segment_t dm_segments[BUS_DMAMAP_NSEGS]; -#endif KASSERT(dmat != NULL, ("dmatag is NULL")); KASSERT(map != NULL, ("dmamap is NULL")); @@ -839,14 +860,14 @@ bus_dmamap_load(bus_dma_tag_t dmat, bus_ map->buffer = buf; map->len = buflen; error = bus_dmamap_load_buffer(dmat, - dm_segments, map, buf, buflen, kernel_pmap, + dmat->segments, map, buf, buflen, kernel_pmap, flags, &lastaddr, &nsegs); if (error == EINPROGRESS) return (error); if (error) (*callback)(callback_arg, NULL, 0, error); else - (*callback)(callback_arg, dm_segments, nsegs + 1, error); + (*callback)(callback_arg, dmat->segments, nsegs + 1, error); CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", __func__, dmat, dmat->flags, nsegs + 1, error); @@ -862,11 +883,6 @@ bus_dmamap_load_mbuf(bus_dma_tag_t dmat, bus_dmamap_callback2_t *callback, void *callback_arg, int flags) { -#ifdef __CC_SUPPORTS_DYNAMIC_ARRAY_INIT - bus_dma_segment_t dm_segments[dmat->nsegments]; -#else - bus_dma_segment_t dm_segments[BUS_DMAMAP_NSEGS]; -#endif int nsegs = -1, error = 0; M_ASSERTPKTHDR(m0); @@ -882,7 +898,7 @@ bus_dmamap_load_mbuf(bus_dma_tag_t dmat, for (m = m0; m != NULL && error == 0; m = m->m_next) { if (m->m_len > 0) { error = bus_dmamap_load_buffer(dmat, - dm_segments, map, m->m_data, m->m_len, + dmat->segments, map, m->m_data, m->m_len, kernel_pmap, flags, &lastaddr, &nsegs); map->len += m->m_len; } @@ -895,9 +911,9 @@ bus_dmamap_load_mbuf(bus_dma_tag_t dmat, /* * force "no valid mappings" on error in callback. */ - (*callback)(callback_arg, dm_segments, 0, 0, error); + (*callback)(callback_arg, dmat->segments, 0, 0, error); } else { - (*callback)(callback_arg, dm_segments, nsegs + 1, + (*callback)(callback_arg, dmat->segments, nsegs + 1, m0->m_pkthdr.len, error); } CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", @@ -953,11 +969,6 @@ bus_dmamap_load_uio(bus_dma_tag_t dmat, int flags) { vm_offset_t lastaddr = 0; -#ifdef __CC_SUPPORTS_DYNAMIC_ARRAY_INIT - bus_dma_segment_t dm_segments[dmat->nsegments]; -#else - bus_dma_segment_t dm_segments[BUS_DMAMAP_NSEGS]; -#endif int nsegs, i, error; bus_size_t resid; struct iovec *iov; @@ -990,8 +1001,8 @@ bus_dmamap_load_uio(bus_dma_tag_t dmat, caddr_t addr = (caddr_t) iov[i].iov_base; if (minlen > 0) { - error = bus_dmamap_load_buffer(dmat, dm_segments, map, - addr, minlen, pmap, flags, &lastaddr, &nsegs); + error = bus_dmamap_load_buffer(dmat, dmat->segments, + map, addr, minlen, pmap, flags, &lastaddr, &nsegs); map->len += minlen; resid -= minlen; @@ -1002,9 +1013,9 @@ bus_dmamap_load_uio(bus_dma_tag_t dmat, /* * force "no valid mappings" on error in callback. */ - (*callback)(callback_arg, dm_segments, 0, 0, error); + (*callback)(callback_arg, dmat->segments, 0, 0, error); } else { - (*callback)(callback_arg, dm_segments, nsegs+1, + (*callback)(callback_arg, dmat->segments, nsegs+1, uio->uio_resid, error); } From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 21:20:54 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 21:30:46 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 21:41:15 2013 Return-Path: Delivered-To: svn-src-all@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 C0C884F2; Mon, 17 Jun 2013 21:41:15 +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 B17911192; Mon, 17 Jun 2013 21:41: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 r5HLfFIt054040; Mon, 17 Jun 2013 21:41:15 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HLfEMW054031; Mon, 17 Jun 2013 21:41:14 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306172141.r5HLfEMW054031@svn.freebsd.org> From: Scott Long Date: Mon, 17 Jun 2013 21:41:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251871 - in stable/9/sys: arm/arm arm/include conf kern sys X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 21:41:15 -0000 Author: scottl Date: Mon Jun 17 21:41:14 2013 New Revision: 251871 URL: http://svnweb.freebsd.org/changeset/base/251871 Log: MFC r244414: Properly implement pmap_[get|set]_memattr MFC r244466: Create an architecture-agnostic buffer pool manager that uses uma(9) to manage a set of power-of-2 sized buffers for bus_dmamem_alloc(). MFC r244471: Busdma enhancements, especially for managing small uncacheable buffers. MFC r244743: Use C comments instead of C++ comments. MFC r244474: We want to build subr_busdma_bufalloc.c on arm. Submitted by: cognet Approved by: marius Obtained from: Netflix Added: stable/9/sys/kern/subr_busdma_bufalloc.c - copied unchanged from r244466, head/sys/kern/subr_busdma_bufalloc.c stable/9/sys/sys/busdma_bufalloc.h - copied unchanged from r244466, head/sys/sys/busdma_bufalloc.h Modified: stable/9/sys/arm/arm/busdma_machdep.c stable/9/sys/arm/arm/pmap.c stable/9/sys/arm/include/pmap.h stable/9/sys/arm/include/vm.h stable/9/sys/conf/files.arm Directory Properties: stable/9/sys/ (props changed) stable/9/sys/conf/ (props changed) stable/9/sys/sys/ (props changed) Modified: stable/9/sys/arm/arm/busdma_machdep.c ============================================================================== --- stable/9/sys/arm/arm/busdma_machdep.c Mon Jun 17 21:36:29 2013 (r251870) +++ stable/9/sys/arm/arm/busdma_machdep.c Mon Jun 17 21:41:14 2013 (r251871) @@ -1,4 +1,5 @@ /*- + * Copyright (c) 2012 Ian Lepore * Copyright (c) 2004 Olivier Houchard * Copyright (c) 2002 Peter Grehan * Copyright (c) 1997, 1998 Justin T. Gibbs. @@ -32,7 +33,23 @@ __FBSDID("$FreeBSD$"); /* - * ARM bus dma support routines + * ARM bus dma support routines. + * + * XXX Things to investigate / fix some day... + * - What is the earliest that this API can be called? Could there be any + * fallout from changing the SYSINIT() order from SI_SUB_VM to SI_SUB_KMEM? + * - The manpage mentions the BUS_DMA_NOWAIT flag only in the context of the + * bus_dmamap_load() function. This code has historically (and still does) + * honor it in bus_dmamem_alloc(). If we got rid of that we could lose some + * error checking because some resource management calls would become WAITOK + * and thus "cannot fail." + * - The decisions made by _bus_dma_can_bounce() should be made once, at tag + * creation time, and the result stored in the tag. + * - It should be possible to take some shortcuts when mapping a buffer we know + * came from the uma(9) allocators based on what we know about such buffers + * (aligned, contiguous, etc). + * - The allocation of bounce pages could probably be cleaned up, then we could + * retire arm_remap_nocache(). */ #define _ARM32_BUS_DMA_PRIVATE @@ -40,6 +57,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -50,7 +68,10 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include +#include +#include #include #include @@ -81,7 +102,6 @@ struct bus_dma_tag { int map_count; bus_dma_lock_t *lockfunc; void *lockfuncarg; - bus_dma_segment_t *segments; /* * DMA range for this tag. If the page doesn't fall within * one of these ranges, an error is returned. The caller @@ -91,6 +111,13 @@ struct bus_dma_tag { struct arm32_dma_range *ranges; int _nranges; struct bounce_zone *bounce_zone; + /* + * Most tags need one or two segments, and can use the local tagsegs + * array. For tags with a larger limit, we'll allocate a bigger array + * on first use. + */ + bus_dma_segment_t *segments; + bus_dma_segment_t tagsegs[2]; }; struct bounce_page { @@ -134,7 +161,7 @@ SYSCTL_INT(_hw_busdma, OID_AUTO, total_b #define DMAMAP_LINEAR 0x1 #define DMAMAP_MBUF 0x2 #define DMAMAP_UIO 0x4 -#define DMAMAP_ALLOCATED 0x10 +#define DMAMAP_CACHE_ALIGNED 0x10 #define DMAMAP_TYPE_MASK (DMAMAP_LINEAR|DMAMAP_MBUF|DMAMAP_UIO) #define DMAMAP_COHERENT 0x8 struct bus_dmamap { @@ -144,9 +171,6 @@ struct bus_dmamap { bus_dma_tag_t dmat; int flags; void *buffer; - void *origbuffer; - void *allocbuffer; - TAILQ_ENTRY(bus_dmamap) freelist; int len; STAILQ_ENTRY(bus_dmamap) links; bus_dmamap_callback_t *callback; @@ -157,12 +181,6 @@ struct bus_dmamap { static STAILQ_HEAD(, bus_dmamap) bounce_map_waitinglist; static STAILQ_HEAD(, bus_dmamap) bounce_map_callbacklist; -static TAILQ_HEAD(,bus_dmamap) dmamap_freelist = - TAILQ_HEAD_INITIALIZER(dmamap_freelist); - -#define BUSDMA_STATIC_MAPS 500 -static struct bus_dmamap map_pool[BUSDMA_STATIC_MAPS]; - static struct mtx busdma_mtx; MTX_SYSINIT(busdma_mtx, &busdma_mtx, "busdma lock", MTX_DEF); @@ -180,6 +198,91 @@ static void free_bounce_page(bus_dma_tag bus_dma_tag_t arm_root_dma_tag; /* + * ---------------------------------------------------------------------------- + * Begin block of code useful to transplant to other implementations. + */ + +static uma_zone_t dmamap_zone; /* Cache of struct bus_dmamap items */ + +static busdma_bufalloc_t coherent_allocator; /* Cache of coherent buffers */ +static busdma_bufalloc_t standard_allocator; /* Cache of standard buffers */ + +/* + * This is the ctor function passed to uma_zcreate() for the pool of dma maps. + * It'll need platform-specific changes if this code is copied. + */ +static int +dmamap_ctor(void *mem, int size, void *arg, int flags) +{ + bus_dmamap_t map; + bus_dma_tag_t dmat; + + map = (bus_dmamap_t)mem; + dmat = (bus_dma_tag_t)arg; + + dmat->map_count++; + + map->dmat = dmat; + map->flags = 0; + STAILQ_INIT(&map->bpages); + + return (0); +} + +/* + * This is the dtor function passed to uma_zcreate() for the pool of dma maps. + * It may need platform-specific changes if this code is copied . + */ +static void +dmamap_dtor(void *mem, int size, void *arg) +{ + bus_dmamap_t map; + + map = (bus_dmamap_t)mem; + + map->dmat->map_count--; +} + +static void +busdma_init(void *dummy) +{ + + /* Create a cache of maps for bus_dmamap_create(). */ + dmamap_zone = uma_zcreate("dma maps", sizeof(struct bus_dmamap), + dmamap_ctor, dmamap_dtor, NULL, NULL, UMA_ALIGN_PTR, 0); + + /* Create a cache of buffers in standard (cacheable) memory. */ + standard_allocator = busdma_bufalloc_create("buffer", + arm_dcache_align, /* minimum_alignment */ + NULL, /* uma_alloc func */ + NULL, /* uma_free func */ + 0); /* uma_zcreate_flags */ + + /* + * Create a cache of buffers in uncacheable memory, to implement the + * BUS_DMA_COHERENT (and potentially BUS_DMA_NOCACHE) flag. + */ + coherent_allocator = busdma_bufalloc_create("coherent", + arm_dcache_align, /* minimum_alignment */ + busdma_bufalloc_alloc_uncacheable, + busdma_bufalloc_free_uncacheable, + 0); /* uma_zcreate_flags */ +} + +/* + * This init historically used SI_SUB_VM, but now the init code requires + * malloc(9) using M_DEVBUF memory, which is set up later than SI_SUB_VM, by + * SI_SUB_KMEM and SI_ORDER_SECOND, so we'll go right after that by using + * SI_SUB_KMEM and SI_ORDER_THIRD. + */ +SYSINIT(busdma, SI_SUB_KMEM, SI_ORDER_THIRD, busdma_init, NULL); + +/* + * End block of code useful to transplant to other implementations. + * ---------------------------------------------------------------------------- + */ + +/* * Return true if a match is made. * * To find a match walk the chain of bus_dma_tag_t's looking for 'paddr'. @@ -206,30 +309,26 @@ run_filter(bus_dma_tag_t dmat, bus_addr_ return (retval); } -static void -arm_dmamap_freelist_init(void *dummy) -{ - int i; - - for (i = 0; i < BUSDMA_STATIC_MAPS; i++) - TAILQ_INSERT_HEAD(&dmamap_freelist, &map_pool[i], freelist); -} - -SYSINIT(busdma, SI_SUB_VM, SI_ORDER_ANY, arm_dmamap_freelist_init, NULL); - /* - * Check to see if the specified page is in an allowed DMA range. + * This routine checks the exclusion zone constraints from a tag against the + * physical RAM available on the machine. If a tag specifies an exclusion zone + * but there's no RAM in that zone, then we avoid allocating resources to bounce + * a request, and we can use any memory allocator (as opposed to needing + * kmem_alloc_contig() just because it can allocate pages in an address range). + * + * Most tags have BUS_SPACE_MAXADDR or BUS_SPACE_MAXADDR_32BIT (they are the + * same value on 32-bit architectures) as their lowaddr constraint, and we can't + * possibly have RAM at an address higher than the highest address we can + * express, so we take a fast out. */ - -static __inline int -bus_dmamap_load_buffer(bus_dma_tag_t dmat, bus_dma_segment_t *segs, - bus_dmamap_t map, void *buf, bus_size_t buflen, struct pmap *pmap, - int flags, vm_offset_t *lastaddrp, int *segp); - static __inline int _bus_dma_can_bounce(vm_offset_t lowaddr, vm_offset_t highaddr) { int i; + + if (lowaddr >= BUS_SPACE_MAXADDR) + return (0); + for (i = 0; phys_avail[i] && phys_avail[i + 1]; i += 2) { if ((lowaddr >= phys_avail[i] && lowaddr <= phys_avail[i + 1]) || (lowaddr < phys_avail[i] && @@ -294,38 +393,6 @@ dflt_lock(void *arg, bus_dma_lock_op_t o #endif } -static __inline bus_dmamap_t -_busdma_alloc_dmamap(void) -{ - bus_dmamap_t map; - - mtx_lock(&busdma_mtx); - map = TAILQ_FIRST(&dmamap_freelist); - if (map) - TAILQ_REMOVE(&dmamap_freelist, map, freelist); - mtx_unlock(&busdma_mtx); - if (!map) { - map = malloc(sizeof(*map), M_DEVBUF, M_NOWAIT | M_ZERO); - if (map) - map->flags = DMAMAP_ALLOCATED; - } else - map->flags = 0; - STAILQ_INIT(&map->bpages); - return (map); -} - -static __inline void -_busdma_free_dmamap(bus_dmamap_t map) -{ - if (map->flags & DMAMAP_ALLOCATED) - free(map, M_DEVBUF); - else { - mtx_lock(&busdma_mtx); - TAILQ_INSERT_HEAD(&dmamap_freelist, map, freelist); - mtx_unlock(&busdma_mtx); - } -} - /* * Allocate a device specific dma_tag. */ @@ -354,7 +421,7 @@ bus_dma_tag_create(bus_dma_tag_t parent, } newtag->parent = parent; - newtag->alignment = alignment; + newtag->alignment = alignment ? alignment : 1; newtag->boundary = boundary; newtag->lowaddr = trunc_page((vm_offset_t)lowaddr) + (PAGE_SIZE - 1); newtag->highaddr = trunc_page((vm_offset_t)highaddr) + (PAGE_SIZE - 1); @@ -375,9 +442,19 @@ bus_dma_tag_create(bus_dma_tag_t parent, newtag->lockfunc = dflt_lock; newtag->lockfuncarg = NULL; } - newtag->segments = NULL; - - /* + /* + * If all the segments we need fit into the local tagsegs array, set the + * pointer now. Otherwise NULL the pointer and an array of segments + * will be allocated later, on first use. We don't pre-allocate now + * because some tags exist just to pass contraints to children in the + * device hierarchy, and they tend to use BUS_SPACE_UNRESTRICTED and we + * sure don't want to try to allocate an array for that. + */ + if (newtag->nsegments <= nitems(newtag->tagsegs)) + newtag->segments = newtag->tagsegs; + else + newtag->segments = NULL; + /* * Take into account any restrictions imposed by our parent tag */ if (parent != NULL) { @@ -450,6 +527,7 @@ bus_dma_tag_destroy(bus_dma_tag_t dmat) #endif if (dmat != NULL) { + if (dmat->map_count != 0) return (EBUSY); @@ -459,7 +537,8 @@ bus_dma_tag_destroy(bus_dma_tag_t dmat) parent = dmat->parent; atomic_subtract_int(&dmat->ref_count, 1); if (dmat->ref_count == 0) { - if (dmat->segments != NULL) + if (dmat->segments != NULL && + dmat->segments != dmat->tagsegs) free(dmat->segments, M_DEVBUF); free(dmat, M_DEVBUF); /* @@ -485,29 +564,19 @@ bus_dma_tag_destroy(bus_dma_tag_t dmat) int bus_dmamap_create(bus_dma_tag_t dmat, int flags, bus_dmamap_t *mapp) { - bus_dmamap_t newmap; + bus_dmamap_t map; int error = 0; - if (dmat->segments == NULL) { - dmat->segments = (bus_dma_segment_t *)malloc( - sizeof(bus_dma_segment_t) * dmat->nsegments, M_DEVBUF, - M_NOWAIT); - if (dmat->segments == NULL) { - CTR3(KTR_BUSDMA, "%s: tag %p error %d", - __func__, dmat, ENOMEM); - return (ENOMEM); - } - } + map = uma_zalloc_arg(dmamap_zone, dmat, M_WAITOK); + *mapp = map; - newmap = _busdma_alloc_dmamap(); - if (newmap == NULL) { - CTR3(KTR_BUSDMA, "%s: tag %p error %d", __func__, dmat, ENOMEM); - return (ENOMEM); - } - *mapp = newmap; - newmap->dmat = dmat; - newmap->allocbuffer = NULL; - dmat->map_count++; + /* + * If the tag's segments haven't been allocated yet we need to do it + * now, because we can't sleep for resources at map load time. + */ + if (dmat->segments == NULL) + dmat->segments = malloc(dmat->nsegments * + sizeof(*dmat->segments), M_DEVBUF, M_WAITOK); /* * Bouncing might be required if the driver asks for an active @@ -522,7 +591,7 @@ bus_dmamap_create(bus_dma_tag_t dmat, in if (dmat->bounce_zone == NULL) { if ((error = alloc_bounce_zone(dmat)) != 0) { - _busdma_free_dmamap(newmap); + uma_zfree(dmamap_zone, map); *mapp = NULL; return (error); } @@ -575,118 +644,129 @@ bus_dmamap_destroy(bus_dma_tag_t dmat, b __func__, dmat, EBUSY); return (EBUSY); } - _busdma_free_dmamap(map); + uma_zfree(dmamap_zone, map); if (dmat->bounce_zone) dmat->bounce_zone->map_count--; - dmat->map_count--; CTR2(KTR_BUSDMA, "%s: tag %p error 0", __func__, dmat); return (0); } /* - * Allocate a piece of memory that can be efficiently mapped into - * bus device space based on the constraints lited in the dma tag. - * A dmamap to for use with dmamap_load is also allocated. + * Allocate a piece of memory that can be efficiently mapped into bus device + * space based on the constraints listed in the dma tag. Returns a pointer to + * the allocated memory, and a pointer to an associated bus_dmamap. */ int -bus_dmamem_alloc(bus_dma_tag_t dmat, void** vaddr, int flags, +bus_dmamem_alloc(bus_dma_tag_t dmat, void **vaddrp, int flags, bus_dmamap_t *mapp) { - bus_dmamap_t newmap = NULL; - + void * vaddr; + struct busdma_bufzone *bufzone; + busdma_bufalloc_t ba; + bus_dmamap_t map; int mflags; + vm_memattr_t memattr; if (flags & BUS_DMA_NOWAIT) mflags = M_NOWAIT; else mflags = M_WAITOK; - if (dmat->segments == NULL) { - dmat->segments = (bus_dma_segment_t *)malloc( - sizeof(bus_dma_segment_t) * dmat->nsegments, M_DEVBUF, - mflags); - if (dmat->segments == NULL) { - CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d", - __func__, dmat, dmat->flags, ENOMEM); - return (ENOMEM); - } + + /* + * If the tag's segments haven't been allocated yet we need to do it + * now, because we can't sleep for resources at map load time. + */ + if (dmat->segments == NULL) + dmat->segments = malloc(dmat->nsegments * + sizeof(*dmat->segments), M_DEVBUF, mflags); + + map = uma_zalloc_arg(dmamap_zone, dmat, mflags); + if (map == NULL) + return (ENOMEM); + + if (flags & BUS_DMA_COHERENT) { + memattr = VM_MEMATTR_UNCACHEABLE; + ba = coherent_allocator; + map->flags |= DMAMAP_COHERENT; + } else { + memattr = VM_MEMATTR_DEFAULT; + ba = standard_allocator; } + /* All buffers we allocate are cache-aligned. */ + map->flags |= DMAMAP_CACHE_ALIGNED; + if (flags & BUS_DMA_ZERO) mflags |= M_ZERO; - newmap = _busdma_alloc_dmamap(); - if (newmap == NULL) { - CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d", - __func__, dmat, dmat->flags, ENOMEM); - return (ENOMEM); + /* + * Try to find a bufzone in the allocator that holds a cache of buffers + * of the right size for this request. If the buffer is too big to be + * held in the allocator cache, this returns NULL. + */ + bufzone = busdma_bufalloc_findzone(ba, dmat->maxsize); + + /* + * Allocate the buffer from the uma(9) allocator if... + * - It's small enough to be in the allocator (bufzone not NULL). + * - The alignment constraint isn't larger than the allocation size + * (the allocator aligns buffers to their size boundaries). + * - There's no need to handle lowaddr/highaddr exclusion zones. + * else allocate non-contiguous pages if... + * - The page count that could get allocated doesn't exceed nsegments. + * - The alignment constraint isn't larger than a page boundary. + * - There are no boundary-crossing constraints. + * else allocate a block of contiguous pages because one or more of the + * constraints is something that only the contig allocator can fulfill. + */ + if (bufzone != NULL && dmat->alignment <= bufzone->size && + !_bus_dma_can_bounce(dmat->lowaddr, dmat->highaddr)) { + vaddr = uma_zalloc(bufzone->umazone, mflags); + } else if (dmat->nsegments >= btoc(dmat->maxsize) && + dmat->alignment <= PAGE_SIZE && dmat->boundary == 0) { + vaddr = (void *)kmem_alloc_attr(kernel_map, dmat->maxsize, + mflags, 0, dmat->lowaddr, memattr); + } else { + vaddr = (void *)kmem_alloc_contig(kernel_map, dmat->maxsize, + mflags, 0, dmat->lowaddr, dmat->alignment, dmat->boundary, + memattr); } - dmat->map_count++; - *mapp = newmap; - newmap->dmat = dmat; - - if (dmat->maxsize <= PAGE_SIZE && - (dmat->alignment < dmat->maxsize) && - !_bus_dma_can_bounce(dmat->lowaddr, dmat->highaddr)) { - *vaddr = malloc(dmat->maxsize, M_DEVBUF, mflags); - } else { - /* - * XXX Use Contigmalloc until it is merged into this facility - * and handles multi-seg allocations. Nobody is doing - * multi-seg allocations yet though. - */ - *vaddr = contigmalloc(dmat->maxsize, M_DEVBUF, mflags, - 0ul, dmat->lowaddr, dmat->alignment? dmat->alignment : 1ul, - dmat->boundary); - } - if (*vaddr == NULL) { - if (newmap != NULL) { - _busdma_free_dmamap(newmap); - dmat->map_count--; - } - *mapp = NULL; - return (ENOMEM); + + if (vaddr == NULL) { + uma_zfree(dmamap_zone, map); + map = NULL; } - if (flags & BUS_DMA_COHERENT) { - void *tmpaddr = arm_remap_nocache( - (void *)((vm_offset_t)*vaddr &~ PAGE_MASK), - dmat->maxsize + ((vm_offset_t)*vaddr & PAGE_MASK)); - - if (tmpaddr) { - tmpaddr = (void *)((vm_offset_t)(tmpaddr) + - ((vm_offset_t)*vaddr & PAGE_MASK)); - newmap->origbuffer = *vaddr; - newmap->allocbuffer = tmpaddr; - *vaddr = tmpaddr; - } else - newmap->origbuffer = newmap->allocbuffer = NULL; - } else - newmap->origbuffer = newmap->allocbuffer = NULL; - return (0); + + *vaddrp = vaddr; + *mapp = map; + + return (vaddr == NULL ? ENOMEM : 0); } /* - * Free a piece of memory and it's allocated dmamap, that was allocated - * via bus_dmamem_alloc. Make the same choice for free/contigfree. + * Free a piece of memory that was allocated via bus_dmamem_alloc, along with + * its associated map. */ void bus_dmamem_free(bus_dma_tag_t dmat, void *vaddr, bus_dmamap_t map) { - if (map->allocbuffer) { - KASSERT(map->allocbuffer == vaddr, - ("Trying to freeing the wrong DMA buffer")); - vaddr = map->origbuffer; - arm_unmap_nocache(map->allocbuffer, - dmat->maxsize + ((vm_offset_t)vaddr & PAGE_MASK)); - } - if (dmat->maxsize <= PAGE_SIZE && - dmat->alignment < dmat->maxsize && + struct busdma_bufzone *bufzone; + busdma_bufalloc_t ba; + + if (map->flags & DMAMAP_COHERENT) + ba = coherent_allocator; + else + ba = standard_allocator; + uma_zfree(dmamap_zone, map); + + /* Be careful not to access map from here on. */ + + bufzone = busdma_bufalloc_findzone(ba, dmat->maxsize); + + if (bufzone != NULL && dmat->alignment <= bufzone->size && !_bus_dma_can_bounce(dmat->lowaddr, dmat->highaddr)) - free(vaddr, M_DEVBUF); - else { - contigfree(vaddr, dmat->maxsize, M_DEVBUF); - } - dmat->map_count--; - _busdma_free_dmamap(map); - CTR3(KTR_BUSDMA, "%s: tag %p flags 0x%x", __func__, dmat, dmat->flags); + uma_zfree(bufzone->umazone, vaddr); + else + kmem_free(kernel_map, (vm_offset_t)vaddr, dmat->maxsize); } static int @@ -795,10 +875,6 @@ bus_dmamap_load_buffer(bus_dma_tag_t dma else curaddr = (*pde & L1_S_FRAME) | (vaddr & L1_S_OFFSET); - if (*pde & L1_S_CACHE_MASK) { - map->flags &= - ~DMAMAP_COHERENT; - } } else { pte = *ptep; KASSERT((pte & L2_TYPE_MASK) != L2_TYPE_INV, @@ -807,18 +883,9 @@ bus_dmamap_load_buffer(bus_dma_tag_t dma == L2_TYPE_L)) { curaddr = (pte & L2_L_FRAME) | (vaddr & L2_L_OFFSET); - if (pte & L2_L_CACHE_MASK) { - map->flags &= - ~DMAMAP_COHERENT; - - } } else { curaddr = (pte & L2_S_FRAME) | (vaddr & L2_S_OFFSET); - if (pte & L2_S_CACHE_MASK) { - map->flags &= - ~DMAMAP_COHERENT; - } } } } else { @@ -914,7 +981,7 @@ bus_dmamap_load(bus_dma_tag_t dmat, bus_ map->callback = callback; map->callback_arg = callback_arg; map->flags &= ~DMAMAP_TYPE_MASK; - map->flags |= DMAMAP_LINEAR|DMAMAP_COHERENT; + map->flags |= DMAMAP_LINEAR; map->buffer = buf; map->len = buflen; error = bus_dmamap_load_buffer(dmat, @@ -935,6 +1002,15 @@ bus_dmamap_load(bus_dma_tag_t dmat, bus_ /* * Like bus_dmamap_load(), but for mbufs. + * + * Note that the manpage states that BUS_DMA_NOWAIT is implied for mbufs. + * + * We know that the way the system allocates and uses mbufs implies that we can + * treat them as DMAMAP_CACHE_ALIGNED in terms of handling partial cache line + * flushes. Even though the flush may reference the data area within the mbuf + * that isn't aligned to a cache line, we know the overall mbuf itself is + * properly aligned, and we know that the CPU will not touch the header fields + * before the data area while the DMA is in progress. */ int bus_dmamap_load_mbuf(bus_dma_tag_t dmat, bus_dmamap_t map, struct mbuf *m0, @@ -945,8 +1021,9 @@ bus_dmamap_load_mbuf(bus_dma_tag_t dmat, M_ASSERTPKTHDR(m0); + flags |= BUS_DMA_NOWAIT; map->flags &= ~DMAMAP_TYPE_MASK; - map->flags |= DMAMAP_MBUF | DMAMAP_COHERENT; + map->flags |= DMAMAP_MBUF | DMAMAP_CACHE_ALIGNED; map->buffer = m0; map->len = 0; if (m0->m_pkthdr.len <= dmat->maxsize) { @@ -969,7 +1046,7 @@ bus_dmamap_load_mbuf(bus_dma_tag_t dmat, /* * force "no valid mappings" on error in callback. */ - (*callback)(callback_arg, dmat->segments, 0, 0, error); + (*callback)(callback_arg, NULL, 0, 0, error); } else { (*callback)(callback_arg, dmat->segments, nsegs + 1, m0->m_pkthdr.len, error); @@ -991,7 +1068,7 @@ bus_dmamap_load_mbuf_sg(bus_dma_tag_t dm flags |= BUS_DMA_NOWAIT; *nsegs = -1; map->flags &= ~DMAMAP_TYPE_MASK; - map->flags |= DMAMAP_MBUF | DMAMAP_COHERENT; + map->flags |= DMAMAP_MBUF | DMAMAP_CACHE_ALIGNED; map->buffer = m0; map->len = 0; if (m0->m_pkthdr.len <= dmat->maxsize) { @@ -1035,7 +1112,7 @@ bus_dmamap_load_uio(bus_dma_tag_t dmat, resid = uio->uio_resid; iov = uio->uio_iov; map->flags &= ~DMAMAP_TYPE_MASK; - map->flags |= DMAMAP_UIO|DMAMAP_COHERENT; + map->flags |= DMAMAP_UIO; map->buffer = uio; map->len = 0; @@ -1058,7 +1135,7 @@ bus_dmamap_load_uio(bus_dma_tag_t dmat, caddr_t addr = (caddr_t) iov[i].iov_base; if (minlen > 0) { - error = bus_dmamap_load_buffer(dmat, dmat->segments, + error = bus_dmamap_load_buffer(dmat, dmat->segments, map, addr, minlen, pmap, flags, &lastaddr, &nsegs); map->len += minlen; @@ -1070,7 +1147,7 @@ bus_dmamap_load_uio(bus_dma_tag_t dmat, /* * force "no valid mappings" on error in callback. */ - (*callback)(callback_arg, dmat->segments, 0, 0, error); + (*callback)(callback_arg, NULL, 0, 0, error); } else { (*callback)(callback_arg, dmat->segments, nsegs+1, uio->uio_resid, error); @@ -1098,7 +1175,7 @@ _bus_dmamap_unload(bus_dma_tag_t dmat, b } static void -bus_dmamap_sync_buf(void *buf, int len, bus_dmasync_op_t op) +bus_dmamap_sync_buf(void *buf, int len, bus_dmasync_op_t op, int bufaligned) { char _tmp_cl[arm_dcache_align], _tmp_clend[arm_dcache_align]; register_t s; @@ -1108,7 +1185,25 @@ bus_dmamap_sync_buf(void *buf, int len, cpu_dcache_wb_range((vm_offset_t)buf, len); cpu_l2cache_wb_range((vm_offset_t)buf, len); } + + /* + * If the caller promises the buffer is properly aligned to a cache line + * (even if the call parms make it look like it isn't) we can avoid + * attempting to preserve the non-DMA part of the cache line in the + * POSTREAD case, but we MUST still do a writeback in the PREREAD case. + * + * This covers the case of mbufs, where we know how they're aligned and + * know the CPU doesn't touch the header in front of the DMA data area + * during the IO, but it may have touched it right before invoking the + * sync, so a PREREAD writeback is required. + * + * It also handles buffers we created in bus_dmamem_alloc(), which are + * always aligned and padded to cache line size even if the IO length + * isn't a multiple of cache line size. In this case the PREREAD + * writeback probably isn't required, but it's harmless. + */ partial = (((vm_offset_t)buf) | len) & arm_dcache_align_mask; + if (op & BUS_DMASYNC_PREREAD) { if (!(op & BUS_DMASYNC_PREWRITE) && !partial) { cpu_dcache_inv_range((vm_offset_t)buf, len); @@ -1119,7 +1214,7 @@ bus_dmamap_sync_buf(void *buf, int len, } } if (op & BUS_DMASYNC_POSTREAD) { - if (partial) { + if (partial && !bufaligned) { s = intr_disable(); if ((vm_offset_t)buf & arm_dcache_align_mask) memcpy(_tmp_cl, (void *)((vm_offset_t)buf & @@ -1133,7 +1228,7 @@ bus_dmamap_sync_buf(void *buf, int len, } cpu_dcache_inv_range((vm_offset_t)buf, len); cpu_l2cache_inv_range((vm_offset_t)buf, len); - if (partial) { + if (partial && !bufaligned) { if ((vm_offset_t)buf & arm_dcache_align_mask) memcpy((void *)((vm_offset_t)buf & ~arm_dcache_align_mask), _tmp_cl, @@ -1204,25 +1299,29 @@ _bus_dmamap_sync(bus_dma_tag_t dmat, bus struct uio *uio; int resid; struct iovec *iov; - + int bufaligned; + if (op == BUS_DMASYNC_POSTWRITE) return; + if (map->flags & DMAMAP_COHERENT) + goto drain; if (STAILQ_FIRST(&map->bpages)) _bus_dmamap_sync_bp(dmat, map, op); - if (map->flags & DMAMAP_COHERENT) - return; CTR3(KTR_BUSDMA, "%s: op %x flags %x", __func__, op, map->flags); + bufaligned = (map->flags & DMAMAP_CACHE_ALIGNED); switch(map->flags & DMAMAP_TYPE_MASK) { case DMAMAP_LINEAR: if (!(_bus_dma_buf_is_in_bp(map, map->buffer, map->len))) - bus_dmamap_sync_buf(map->buffer, map->len, op); + bus_dmamap_sync_buf(map->buffer, map->len, op, + bufaligned); break; case DMAMAP_MBUF: m = map->buffer; while (m) { if (m->m_len > 0 && !(_bus_dma_buf_is_in_bp(map, m->m_data, m->m_len))) - bus_dmamap_sync_buf(m->m_data, m->m_len, op); + bus_dmamap_sync_buf(m->m_data, m->m_len, op, + bufaligned); m = m->m_next; } break; @@ -1237,7 +1336,7 @@ _bus_dmamap_sync(bus_dma_tag_t dmat, bus if (!_bus_dma_buf_is_in_bp(map, iov[i].iov_base, minlen)) bus_dmamap_sync_buf(iov[i].iov_base, - minlen, op); + minlen, op, bufaligned); resid -= minlen; } } @@ -1245,6 +1344,9 @@ _bus_dmamap_sync(bus_dma_tag_t dmat, bus default: break; } + +drain: + cpu_drain_writebuf(); } Modified: stable/9/sys/arm/arm/pmap.c ============================================================================== --- stable/9/sys/arm/arm/pmap.c Mon Jun 17 21:36:29 2013 (r251870) +++ stable/9/sys/arm/arm/pmap.c Mon Jun 17 21:41:14 2013 (r251871) @@ -1400,7 +1400,8 @@ pmap_fix_cache(struct vm_page *pg, pmap_ (pv->pv_flags & PVF_NC)) { pv->pv_flags &= ~PVF_NC; - pmap_set_cache_entry(pv, pm, va, 1); + if (!(pg->md.pv_memattr & VM_MEMATTR_UNCACHEABLE)) + pmap_set_cache_entry(pv, pm, va, 1); continue; } /* user is no longer sharable and writable */ @@ -1409,7 +1410,8 @@ pmap_fix_cache(struct vm_page *pg, pmap_ !pmwc && (pv->pv_flags & PVF_NC)) { pv->pv_flags &= ~(PVF_NC | PVF_MWC); - pmap_set_cache_entry(pv, pm, va, 1); + if (!(pg->md.pv_memattr & VM_MEMATTR_UNCACHEABLE)) + pmap_set_cache_entry(pv, pm, va, 1); } } @@ -1460,15 +1462,16 @@ pmap_clearbit(struct vm_page *pg, u_int if (!(oflags & maskbits)) { if ((maskbits & PVF_WRITE) && (pv->pv_flags & PVF_NC)) { - /* It is safe to re-enable cacheing here. */ - PMAP_LOCK(pm); - l2b = pmap_get_l2_bucket(pm, va); - ptep = &l2b->l2b_kva[l2pte_index(va)]; - *ptep |= pte_l2_s_cache_mode; - PTE_SYNC(ptep); - PMAP_UNLOCK(pm); + if (!(pg->md.pv_memattr & + VM_MEMATTR_UNCACHEABLE)) { + PMAP_LOCK(pm); + l2b = pmap_get_l2_bucket(pm, va); + ptep = &l2b->l2b_kva[l2pte_index(va)]; + *ptep |= pte_l2_s_cache_mode; + PTE_SYNC(ptep); + PMAP_UNLOCK(pm); + } pv->pv_flags &= ~(PVF_NC | PVF_MWC); - } continue; } @@ -1497,7 +1500,9 @@ pmap_clearbit(struct vm_page *pg, u_int * permission. */ if (maskbits & PVF_WRITE) { - npte |= pte_l2_s_cache_mode; + if (!(pg->md.pv_memattr & + VM_MEMATTR_UNCACHEABLE)) + npte |= pte_l2_s_cache_mode; pv->pv_flags &= ~(PVF_NC | PVF_MWC); } } else @@ -1838,6 +1843,7 @@ pmap_page_init(vm_page_t m) { TAILQ_INIT(&m->md.pv_list); + m->md.pv_memattr = VM_MEMATTR_DEFAULT; } /* @@ -3433,7 +3439,8 @@ do_l2b_alloc: (m->oflags & VPO_UNMANAGED) == 0) vm_page_aflag_set(m, PGA_WRITEABLE); } - npte |= pte_l2_s_cache_mode; + if (!(m->md.pv_memattr & VM_MEMATTR_UNCACHEABLE)) + npte |= pte_l2_s_cache_mode; if (m && m == opg) { /* * We're changing the attrs of an existing mapping. @@ -5018,3 +5025,24 @@ pmap_devmap_find_va(vm_offset_t va, vm_s return (NULL); } +void +pmap_page_set_memattr(vm_page_t m, vm_memattr_t ma) +{ + /* + * Remember the memattr in a field that gets used to set the appropriate + * bits in the PTEs as mappings are established. + */ + m->md.pv_memattr = ma; + + /* + * It appears that this function can only be called before any mappings + * for the page are established on ARM. If this ever changes, this code + * will need to walk the pv_list and make each of the existing mappings + * uncacheable, being careful to sync caches and PTEs (and maybe + * invalidate TLB?) for any current mapping it modifies. + */ + if (m->md.pv_kva != 0 || TAILQ_FIRST(&m->md.pv_list) != NULL) + panic("Can't change memattr on page with existing mappings"); +} + + Modified: stable/9/sys/arm/include/pmap.h ============================================================================== --- stable/9/sys/arm/include/pmap.h Mon Jun 17 21:36:29 2013 (r251870) +++ stable/9/sys/arm/include/pmap.h Mon Jun 17 21:41:14 2013 (r251871) @@ -76,10 +76,10 @@ #endif -#define pmap_page_get_memattr(m) VM_MEMATTR_DEFAULT +#define pmap_page_get_memattr(m) ((m)->md.pv_memattr) #define pmap_page_is_mapped(m) (!TAILQ_EMPTY(&(m)->md.pv_list)) #define pmap_page_is_write_mapped(m) (((m)->aflags & PGA_WRITEABLE) != 0) -#define pmap_page_set_memattr(m, ma) (void)0 +void pmap_page_set_memattr(vm_page_t m, vm_memattr_t ma); /* * Pmap stuff @@ -99,6 +99,7 @@ struct pv_entry; struct md_page { int pvh_attrs; + vm_memattr_t pv_memattr; vm_offset_t pv_kva; /* first kernel VA mapping */ TAILQ_HEAD(,pv_entry) pv_list; }; Modified: stable/9/sys/arm/include/vm.h ============================================================================== --- stable/9/sys/arm/include/vm.h Mon Jun 17 21:36:29 2013 (r251870) +++ stable/9/sys/arm/include/vm.h Mon Jun 17 21:41:14 2013 (r251871) @@ -29,7 +29,8 @@ #ifndef _MACHINE_VM_H_ #define _MACHINE_VM_H_ -/* Memory attribute configuration is not (yet) implemented. */ +/* Memory attribute configuration. */ #define VM_MEMATTR_DEFAULT 0 +#define VM_MEMATTR_UNCACHEABLE 1 #endif /* !_MACHINE_VM_H_ */ Modified: stable/9/sys/conf/files.arm ============================================================================== --- stable/9/sys/conf/files.arm Mon Jun 17 21:36:29 2013 (r251870) +++ stable/9/sys/conf/files.arm Mon Jun 17 21:41:14 2013 (r251871) @@ -77,4 +77,5 @@ libkern/umoddi3.c standard #libkern/arm/strcmp.S standard #libkern/arm/strncmp.S standard # +kern/subr_busdma_bufalloc.c standard kern/subr_dummy_vdso_tc.c standard Copied: stable/9/sys/kern/subr_busdma_bufalloc.c (from r244466, head/sys/kern/subr_busdma_bufalloc.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/9/sys/kern/subr_busdma_bufalloc.c Mon Jun 17 21:41:14 2013 (r251871, copy of r244466, head/sys/kern/subr_busdma_bufalloc.c) @@ -0,0 +1,174 @@ +/*- + * Copyright (c) 2012 Ian Lepore + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +/* + * Buffer allocation support routines for bus_dmamem_alloc implementations. + */ + +#include +#include +#include +#include +#include + +#include +#include +#include +#include *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Mon Jun 17 22:59:48 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 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-all@FreeBSD.ORG Mon Jun 17 23:21:18 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id CC0EC6CA; Mon, 17 Jun 2013 23:21:18 +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 AEC371766; Mon, 17 Jun 2013 23:21: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 r5HNLIw6086003; Mon, 17 Jun 2013 23:21:18 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5HNLIr7086002; Mon, 17 Jun 2013 23:21:18 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306172321.r5HNLIr7086002@svn.freebsd.org> From: Scott Long Date: Mon, 17 Jun 2013 23:21:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251873 - stable/9/sys/arm/arm X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Jun 2013 23:21:19 -0000 Author: scottl Date: Mon Jun 17 23:21:18 2013 New Revision: 251873 URL: http://svnweb.freebsd.org/changeset/base/251873 Log: MFC r244575: The manpage states that bus_dmamap_create(9) returns ENOMEM if it can't allocate a map or mapping resources. That seems to imply that any memory allocations it does must use M_NOWAIT and check for NULL. MFC 246158: Use pmap_kextract() instead of inlining the page table walk. Remove the comment referencing non-existing code. Submitted by: kib, cognet Approved by: marius Obtained from: Netflix Modified: stable/9/sys/arm/arm/busdma_machdep.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/arm/arm/busdma_machdep.c ============================================================================== --- stable/9/sys/arm/arm/busdma_machdep.c Mon Jun 17 22:59:47 2013 (r251872) +++ stable/9/sys/arm/arm/busdma_machdep.c Mon Jun 17 23:21:18 2013 (r251873) @@ -567,16 +567,24 @@ bus_dmamap_create(bus_dma_tag_t dmat, in bus_dmamap_t map; int error = 0; - map = uma_zalloc_arg(dmamap_zone, dmat, M_WAITOK); + map = uma_zalloc_arg(dmamap_zone, dmat, M_NOWAIT); *mapp = map; + if (map == NULL) + return (ENOMEM); /* * If the tag's segments haven't been allocated yet we need to do it * now, because we can't sleep for resources at map load time. */ - if (dmat->segments == NULL) + if (dmat->segments == NULL) { dmat->segments = malloc(dmat->nsegments * - sizeof(*dmat->segments), M_DEVBUF, M_WAITOK); + sizeof(*dmat->segments), M_DEVBUF, M_NOWAIT); + if (dmat->segments == NULL) { + uma_zfree(dmamap_zone, map); + *mapp = NULL; + return (ENOMEM); + } + } /* * Bouncing might be required if the driver asks for an active @@ -841,9 +849,6 @@ bus_dmamap_load_buffer(bus_dma_tag_t dma vm_offset_t vaddr = (vm_offset_t)buf; int seg; int error = 0; - pd_entry_t *pde; - pt_entry_t pte; - pt_entry_t *ptep; lastaddr = *lastaddrp; bmask = ~(dmat->boundary - 1); @@ -860,34 +865,9 @@ bus_dmamap_load_buffer(bus_dma_tag_t dma for (seg = *segp; buflen > 0 ; ) { /* * Get the physical address for this segment. - * - * XXX Don't support checking for coherent mappings - * XXX in user address space. */ if (__predict_true(pmap == pmap_kernel())) { - if (pmap_get_pde_pte(pmap, vaddr, &pde, &ptep) == FALSE) - return (EFAULT); - - if (__predict_false(pmap_pde_section(pde))) { - if (*pde & L1_S_SUPERSEC) - curaddr = (*pde & L1_SUP_FRAME) | - (vaddr & L1_SUP_OFFSET); - else - curaddr = (*pde & L1_S_FRAME) | - (vaddr & L1_S_OFFSET); - } else { - pte = *ptep; - KASSERT((pte & L2_TYPE_MASK) != L2_TYPE_INV, - ("INV type")); - if (__predict_false((pte & L2_TYPE_MASK) - == L2_TYPE_L)) { - curaddr = (pte & L2_L_FRAME) | - (vaddr & L2_L_OFFSET); - } else { - curaddr = (pte & L2_S_FRAME) | - (vaddr & L2_S_OFFSET); - } - } + curaddr = pmap_kextract(vaddr); } else { curaddr = pmap_extract(pmap, vaddr); map->flags &= ~DMAMAP_COHERENT; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 00:24:20 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 00:36:54 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 8589EA50; Tue, 18 Jun 2013 00:36:54 +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 7490A1A95; Tue, 18 Jun 2013 00:36: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 r5I0asIm009651; Tue, 18 Jun 2013 00:36:54 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I0askx009647; Tue, 18 Jun 2013 00:36:54 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306180036.r5I0askx009647@svn.freebsd.org> From: Scott Long Date: Tue, 18 Jun 2013 00:36:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251874 - in stable/9/sys: arm/arm cam cam/ctl cam/scsi conf dev/aac dev/advansys dev/aha dev/ahb dev/ahci dev/aic dev/aic7xxx dev/amr dev/arcmsr dev/ata dev/buslogic dev/ciss dev/dpt d... X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 00:36:54 -0000 Author: scottl Date: Tue Jun 18 00:36:53 2013 New Revision: 251874 URL: http://svnweb.freebsd.org/changeset/base/251874 Log: Big MFC of the physbio changes necessary for unmapped I/O. These changes have been in production at Netflix for several months with significant success. MFC r246713: Reform the busdma API so that new types may be added without modifying every architecture's busdma_machdep.c. It is done by unifying the bus_dmamap_load_buffer() routines so that they may be called from MI code. The MD busdma is then given a chance to do any final processing in the complete() callback. MFC r249538: Some compilers issue a warning when wider integer is casted to narrow pointer. Supposedly shut down the warning by casting through uintptr_t. MFC r251479: Simplify the checking of flags for cam_periph_mapmem(). This gets rid of a lot of code redundancy and grossness at very minor expense. MFC r251837: MFC r251842: 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. Submitted by: kib, jeffr Approved by: kib Obtained from: Netflix Added: stable/9/sys/cam/cam_compat.c - copied unchanged from r251837, head/sys/cam/cam_compat.c stable/9/sys/cam/cam_compat.h - copied unchanged from r251837, head/sys/cam/cam_compat.h stable/9/sys/kern/subr_bus_dma.c - copied, changed from r246713, head/sys/kern/subr_bus_dma.c stable/9/sys/sys/memdesc.h - copied unchanged from r246713, head/sys/sys/memdesc.h Modified: stable/9/sys/arm/arm/busdma_machdep.c stable/9/sys/cam/cam_ccb.h stable/9/sys/cam/cam_periph.c stable/9/sys/cam/cam_xpt.c stable/9/sys/cam/ctl/ctl_frontend_cam_sim.c stable/9/sys/cam/ctl/scsi_ctl.c stable/9/sys/cam/scsi/scsi_pass.c stable/9/sys/cam/scsi/scsi_sg.c stable/9/sys/cam/scsi/scsi_target.c stable/9/sys/conf/files stable/9/sys/dev/aac/aac_cam.c stable/9/sys/dev/advansys/advansys.c stable/9/sys/dev/advansys/adwcam.c stable/9/sys/dev/aha/aha.c stable/9/sys/dev/ahb/ahb.c stable/9/sys/dev/ahci/ahci.c stable/9/sys/dev/aic/aic.c stable/9/sys/dev/aic7xxx/aic79xx_osm.c stable/9/sys/dev/aic7xxx/aic7xxx_osm.c stable/9/sys/dev/amr/amr_cam.c stable/9/sys/dev/arcmsr/arcmsr.c stable/9/sys/dev/ata/ata-dma.c stable/9/sys/dev/ata/atapi-cam.c stable/9/sys/dev/buslogic/bt.c stable/9/sys/dev/ciss/ciss.c stable/9/sys/dev/ciss/cissvar.h stable/9/sys/dev/dpt/dpt_scsi.c stable/9/sys/dev/firewire/sbp.c stable/9/sys/dev/hpt27xx/osm_bsd.c stable/9/sys/dev/hptiop/hptiop.c stable/9/sys/dev/hptmv/entry.c stable/9/sys/dev/hptrr/hptrr_osm_bsd.c stable/9/sys/dev/iir/iir.c stable/9/sys/dev/isci/isci_io_request.c stable/9/sys/dev/isp/isp_pci.c stable/9/sys/dev/isp/isp_sbus.c stable/9/sys/dev/mfi/mfi.c stable/9/sys/dev/mfi/mfi_cam.c stable/9/sys/dev/mly/mly.c stable/9/sys/dev/mly/mlyvar.h stable/9/sys/dev/mps/mps.c stable/9/sys/dev/mps/mps_sas.c stable/9/sys/dev/mps/mpsvar.h stable/9/sys/dev/mpt/mpt_cam.c stable/9/sys/dev/mvs/mvs.c stable/9/sys/dev/siis/siis.c stable/9/sys/dev/sym/sym_hipd.c stable/9/sys/dev/trm/trm.c stable/9/sys/dev/twa/tw_osl.h stable/9/sys/dev/twa/tw_osl_cam.c stable/9/sys/dev/twa/tw_osl_freebsd.c stable/9/sys/dev/tws/tws.h stable/9/sys/dev/tws/tws_cam.c stable/9/sys/dev/virtio/scsi/virtio_scsi.c stable/9/sys/dev/wds/wd7000.c stable/9/sys/ia64/ia64/busdma_machdep.c stable/9/sys/kern/subr_uio.c stable/9/sys/mips/mips/busdma_machdep.c stable/9/sys/modules/cam/Makefile stable/9/sys/powerpc/powerpc/busdma_machdep.c stable/9/sys/powerpc/ps3/ps3cdrom.c stable/9/sys/sparc64/include/bus_dma.h stable/9/sys/sparc64/sparc64/bus_machdep.c stable/9/sys/sparc64/sparc64/iommu.c stable/9/sys/sys/bus_dma.h stable/9/sys/sys/uio.h stable/9/sys/x86/x86/busdma_machdep.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/conf/ (props changed) stable/9/sys/dev/ (props changed) stable/9/sys/dev/isp/ (props changed) stable/9/sys/modules/ (props changed) stable/9/sys/sys/ (props changed) Modified: stable/9/sys/arm/arm/busdma_machdep.c ============================================================================== --- stable/9/sys/arm/arm/busdma_machdep.c Mon Jun 17 23:21:18 2013 (r251873) +++ stable/9/sys/arm/arm/busdma_machdep.c Tue Jun 18 00:36:53 2013 (r251874) @@ -61,12 +61,12 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include -#include -#include #include #include #include +#include #include #include @@ -125,10 +125,17 @@ struct bounce_page { vm_offset_t vaddr_nocache; /* kva of bounce buffer uncached */ bus_addr_t busaddr; /* Physical address */ vm_offset_t datavaddr; /* kva of client data */ + bus_addr_t dataaddr; /* client physical address */ bus_size_t datacount; /* client data count */ STAILQ_ENTRY(bounce_page) links; }; +struct sync_list { + vm_offset_t vaddr; /* kva of bounce buffer */ + bus_addr_t busaddr; /* Physical address */ + bus_size_t datacount; /* client data count */ +}; + int busdma_swi_pending; struct bounce_zone { @@ -158,24 +165,21 @@ static SYSCTL_NODE(_hw, OID_AUTO, busdma SYSCTL_INT(_hw_busdma, OID_AUTO, total_bpages, CTLFLAG_RD, &total_bpages, 0, "Total bounce pages"); -#define DMAMAP_LINEAR 0x1 -#define DMAMAP_MBUF 0x2 -#define DMAMAP_UIO 0x4 -#define DMAMAP_CACHE_ALIGNED 0x10 -#define DMAMAP_TYPE_MASK (DMAMAP_LINEAR|DMAMAP_MBUF|DMAMAP_UIO) #define DMAMAP_COHERENT 0x8 +#define DMAMAP_CACHE_ALIGNED 0x10 + struct bus_dmamap { struct bp_list bpages; int pagesneeded; int pagesreserved; bus_dma_tag_t dmat; + struct memdesc mem; int flags; - void *buffer; - int len; STAILQ_ENTRY(bus_dmamap) links; bus_dmamap_callback_t *callback; void *callback_arg; - + int sync_count; + struct sync_list *slist; }; static STAILQ_HEAD(, bus_dmamap) bounce_map_waitinglist; @@ -191,7 +195,8 @@ static int alloc_bounce_pages(bus_dma_ta static int reserve_bounce_pages(bus_dma_tag_t dmat, bus_dmamap_t map, int commit); static bus_addr_t add_bounce_page(bus_dma_tag_t dmat, bus_dmamap_t map, - vm_offset_t vaddr, bus_size_t size); + vm_offset_t vaddr, bus_addr_t addr, + bus_size_t size); static void free_bounce_page(bus_dma_tag_t dmat, struct bounce_page *bpage); /* Default tag, as most drivers provide no parent tag. */ @@ -564,13 +569,20 @@ bus_dma_tag_destroy(bus_dma_tag_t dmat) int bus_dmamap_create(bus_dma_tag_t dmat, int flags, bus_dmamap_t *mapp) { + struct sync_list *slist; bus_dmamap_t map; int error = 0; + slist = malloc(sizeof(*slist) * dmat->nsegments, M_DEVBUF, M_NOWAIT); + if (slist == NULL) + return (ENOMEM); + map = uma_zalloc_arg(dmamap_zone, dmat, M_NOWAIT); *mapp = map; - if (map == NULL) + if (map == NULL) { + free(slist, M_DEVBUF); return (ENOMEM); + } /* * If the tag's segments haven't been allocated yet we need to do it @@ -580,6 +592,7 @@ bus_dmamap_create(bus_dma_tag_t dmat, in dmat->segments = malloc(dmat->nsegments * sizeof(*dmat->segments), M_DEVBUF, M_NOWAIT); if (dmat->segments == NULL) { + free(slist, M_DEVBUF); uma_zfree(dmamap_zone, map); *mapp = NULL; return (ENOMEM); @@ -599,6 +612,7 @@ bus_dmamap_create(bus_dma_tag_t dmat, in if (dmat->bounce_zone == NULL) { if ((error = alloc_bounce_zone(dmat)) != 0) { + free(slist, M_DEVBUF); uma_zfree(dmamap_zone, map); *mapp = NULL; return (error); @@ -633,6 +647,8 @@ bus_dmamap_create(bus_dma_tag_t dmat, in } bz->map_count++; } + map->sync_count = 0; + map->slist = slist; CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d", __func__, dmat, dmat->flags, error); @@ -647,11 +663,12 @@ int bus_dmamap_destroy(bus_dma_tag_t dmat, bus_dmamap_t map) { - if (STAILQ_FIRST(&map->bpages) != NULL) { + if (STAILQ_FIRST(&map->bpages) != NULL || map->sync_count != 0) { CTR3(KTR_BUSDMA, "%s: tag %p error %d", __func__, dmat, EBUSY); return (EBUSY); } + free(map->slist, M_DEVBUF); uma_zfree(dmamap_zone, map); if (dmat->bounce_zone) dmat->bounce_zone->map_count--; @@ -668,6 +685,7 @@ int bus_dmamem_alloc(bus_dma_tag_t dmat, void **vaddrp, int flags, bus_dmamap_t *mapp) { + struct sync_list *slist; void * vaddr; struct busdma_bufzone *bufzone; busdma_bufalloc_t ba; @@ -679,7 +697,6 @@ bus_dmamem_alloc(bus_dma_tag_t dmat, voi mflags = M_NOWAIT; else mflags = M_WAITOK; - /* * If the tag's segments haven't been allocated yet we need to do it * now, because we can't sleep for resources at map load time. @@ -688,10 +705,14 @@ bus_dmamem_alloc(bus_dma_tag_t dmat, voi dmat->segments = malloc(dmat->nsegments * sizeof(*dmat->segments), M_DEVBUF, mflags); + slist = malloc(sizeof(*slist) * dmat->nsegments, M_DEVBUF, M_NOWAIT); + if (slist == NULL) + return (ENOMEM); map = uma_zalloc_arg(dmamap_zone, dmat, mflags); - if (map == NULL) + if (map == NULL) { + free(slist, M_DEVBUF); return (ENOMEM); - + } if (flags & BUS_DMA_COHERENT) { memattr = VM_MEMATTR_UNCACHEABLE; ba = coherent_allocator; @@ -738,12 +759,14 @@ bus_dmamem_alloc(bus_dma_tag_t dmat, voi mflags, 0, dmat->lowaddr, dmat->alignment, dmat->boundary, memattr); } - if (vaddr == NULL) { + free(slist, M_DEVBUF); uma_zfree(dmamap_zone, map); map = NULL; + } else { + map->slist = slist; + map->sync_count = 0; } - *vaddrp = vaddr; *mapp = map; @@ -762,10 +785,11 @@ bus_dmamem_free(bus_dma_tag_t dmat, void if (map->flags & DMAMAP_COHERENT) ba = coherent_allocator; - else + else ba = standard_allocator; - uma_zfree(dmamap_zone, map); + uma_zfree(dmamap_zone, map); + free(map->slist, M_DEVBUF); /* Be careful not to access map from here on. */ bufzone = busdma_bufalloc_findzone(ba, dmat->maxsize); @@ -777,7 +801,37 @@ bus_dmamem_free(bus_dma_tag_t dmat, void kmem_free(kernel_map, (vm_offset_t)vaddr, dmat->maxsize); } -static int +static void +_bus_dmamap_count_phys(bus_dma_tag_t dmat, bus_dmamap_t map, vm_paddr_t buf, + bus_size_t buflen, int flags) +{ + bus_addr_t curaddr; + bus_size_t sgsize; + + if ((map->pagesneeded == 0)) { + CTR3(KTR_BUSDMA, "lowaddr= %d, boundary= %d, alignment= %d", + dmat->lowaddr, dmat->boundary, dmat->alignment); + CTR2(KTR_BUSDMA, "map= %p, pagesneeded= %d", + map, map->pagesneeded); + /* + * Count the number of bounce pages + * needed in order to complete this transfer + */ + curaddr = buf; + while (buflen != 0) { + sgsize = MIN(buflen, dmat->maxsegsz); + if (run_filter(dmat, curaddr) != 0) { + sgsize = MIN(sgsize, PAGE_SIZE); + map->pagesneeded++; + } + curaddr += sgsize; + buflen -= sgsize; + } + CTR1(KTR_BUSDMA, "pagesneeded= %d\n", map->pagesneeded); + } +} + +static void _bus_dmamap_count_pages(bus_dma_tag_t dmat, bus_dmamap_t map, pmap_t pmap, void *buf, bus_size_t buflen, int flags) { @@ -798,75 +852,183 @@ _bus_dmamap_count_pages(bus_dma_tag_t dm vendaddr = (vm_offset_t)buf + buflen; while (vaddr < vendaddr) { - if (__predict_true(pmap == pmap_kernel())) + if (__predict_true(pmap == kernel_pmap)) paddr = pmap_kextract(vaddr); else paddr = pmap_extract(pmap, vaddr); - if (((dmat->flags & BUS_DMA_COULD_BOUNCE) != 0) && - run_filter(dmat, paddr) != 0) + if (run_filter(dmat, paddr) != 0) map->pagesneeded++; vaddr += PAGE_SIZE; } CTR1(KTR_BUSDMA, "pagesneeded= %d\n", map->pagesneeded); } +} + +static int +_bus_dmamap_reserve_pages(bus_dma_tag_t dmat, bus_dmamap_t map, int flags) +{ /* Reserve Necessary Bounce Pages */ - if (map->pagesneeded != 0) { - mtx_lock(&bounce_lock); - if (flags & BUS_DMA_NOWAIT) { - if (reserve_bounce_pages(dmat, map, 0) != 0) { - mtx_unlock(&bounce_lock); - return (ENOMEM); - } - } else { - if (reserve_bounce_pages(dmat, map, 1) != 0) { - /* Queue us for resources */ - STAILQ_INSERT_TAIL(&bounce_map_waitinglist, - map, links); - mtx_unlock(&bounce_lock); - return (EINPROGRESS); - } + mtx_lock(&bounce_lock); + if (flags & BUS_DMA_NOWAIT) { + if (reserve_bounce_pages(dmat, map, 0) != 0) { + mtx_unlock(&bounce_lock); + return (ENOMEM); + } + } else { + if (reserve_bounce_pages(dmat, map, 1) != 0) { + /* Queue us for resources */ + STAILQ_INSERT_TAIL(&bounce_map_waitinglist, map, links); + mtx_unlock(&bounce_lock); + return (EINPROGRESS); } - mtx_unlock(&bounce_lock); } + mtx_unlock(&bounce_lock); + + return (0); +} +/* + * Add a single contiguous physical range to the segment list. + */ +static int +_bus_dmamap_addseg(bus_dma_tag_t dmat, bus_dmamap_t map, bus_addr_t curaddr, + bus_size_t sgsize, bus_dma_segment_t *segs, int *segp) +{ + bus_addr_t baddr, bmask; + int seg; + + /* + * Make sure we don't cross any boundaries. + */ + bmask = ~(dmat->boundary - 1); + if (dmat->boundary > 0) { + baddr = (curaddr + dmat->boundary) & bmask; + if (sgsize > (baddr - curaddr)) + sgsize = (baddr - curaddr); + } + if (dmat->ranges) { + struct arm32_dma_range *dr; + + dr = _bus_dma_inrange(dmat->ranges, dmat->_nranges, + curaddr); + if (dr == NULL) + return (EINVAL); + /* + * In a valid DMA range. Translate the physical + * memory address to an address in the DMA window. + */ + curaddr = (curaddr - dr->dr_sysbase) + dr->dr_busbase; + + } + + seg = *segp; + /* + * Insert chunk into a segment, coalescing with + * the previous segment if possible. + */ + if (seg >= 0 && + curaddr == segs[seg].ds_addr + segs[seg].ds_len && + (segs[seg].ds_len + sgsize) <= dmat->maxsegsz && + (dmat->boundary == 0 || + (segs[seg].ds_addr & bmask) == (curaddr & bmask))) { + segs[seg].ds_len += sgsize; + } else { + if (++seg >= dmat->nsegments) + return (EFBIG); + segs[seg].ds_addr = curaddr; + segs[seg].ds_len = sgsize; + } + *segp = seg; return (0); } /* - * Utility function to load a linear buffer. lastaddrp holds state - * between invocations (for multiple-buffer loads). segp contains + * Utility function to load a physical buffer. segp contains + * the starting segment on entrace, and the ending segment on exit. + */ +int +_bus_dmamap_load_phys(bus_dma_tag_t dmat, bus_dmamap_t map, vm_paddr_t buf, + bus_size_t buflen, int flags, bus_dma_segment_t *segs, int *segp) +{ + bus_size_t sgsize; + bus_addr_t curaddr; + int error; + + if (segs == NULL) + segs = dmat->segments; + + if ((dmat->flags & BUS_DMA_COULD_BOUNCE) != 0) { + _bus_dmamap_count_phys(dmat, map, buf, buflen, flags); + if (map->pagesneeded != 0) { + error = _bus_dmamap_reserve_pages(dmat, map, flags); + if (error) + return (error); + } + } + + while (buflen > 0) { + curaddr = buf; + sgsize = MIN(buflen, dmat->maxsegsz); + if (((dmat->flags & BUS_DMA_COULD_BOUNCE) != 0) && + map->pagesneeded != 0 && run_filter(dmat, curaddr)) { + sgsize = MIN(sgsize, PAGE_SIZE); + curaddr = add_bounce_page(dmat, map, 0, curaddr, + sgsize); + } + sgsize = _bus_dmamap_addseg(dmat, map, curaddr, sgsize, segs, + segp); + if (sgsize == 0) + break; + buf += sgsize; + buflen -= sgsize; + } + + /* + * Did we fit? + */ + if (buflen != 0) { + _bus_dmamap_unload(dmat, map); + return (EFBIG); /* XXX better return value here? */ + } + return (0); +} +/* + * Utility function to load a linear buffer. segp contains * the starting segment on entrance, and the ending segment on exit. - * first indicates if this is the first invocation of this function. */ -static __inline int -bus_dmamap_load_buffer(bus_dma_tag_t dmat, bus_dma_segment_t *segs, - bus_dmamap_t map, void *buf, bus_size_t buflen, struct pmap *pmap, - int flags, vm_offset_t *lastaddrp, int *segp) +int +_bus_dmamap_load_buffer(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, + bus_size_t buflen, struct pmap *pmap, int flags, bus_dma_segment_t *segs, + int *segp) { bus_size_t sgsize; - bus_addr_t curaddr, lastaddr, baddr, bmask; + bus_addr_t curaddr; + struct sync_list *sl; vm_offset_t vaddr = (vm_offset_t)buf; - int seg; int error = 0; - lastaddr = *lastaddrp; - bmask = ~(dmat->boundary - 1); + if (segs == NULL) + segs = dmat->segments; + if ((flags & BUS_DMA_LOAD_MBUF) != 0) + map->flags |= DMAMAP_CACHE_ALIGNED; if ((dmat->flags & BUS_DMA_COULD_BOUNCE) != 0) { - error = _bus_dmamap_count_pages(dmat, map, pmap, buf, buflen, - flags); - if (error) - return (error); + _bus_dmamap_count_pages(dmat, map, pmap, buf, buflen, flags); + if (map->pagesneeded != 0) { + error = _bus_dmamap_reserve_pages(dmat, map, flags); + if (error) + return (error); + } } CTR3(KTR_BUSDMA, "lowaddr= %d boundary= %d, " "alignment= %d", dmat->lowaddr, dmat->boundary, dmat->alignment); - for (seg = *segp; buflen > 0 ; ) { + while (buflen > 0) { /* * Get the physical address for this segment. */ - if (__predict_true(pmap == pmap_kernel())) { + if (__predict_true(pmap == kernel_pmap)) { curaddr = pmap_kextract(vaddr); } else { curaddr = pmap_extract(pmap, vaddr); @@ -882,260 +1044,63 @@ bus_dmamap_load_buffer(bus_dma_tag_t dma if (buflen < sgsize) sgsize = buflen; - /* - * Make sure we don't cross any boundaries. - */ - if (dmat->boundary > 0) { - baddr = (curaddr + dmat->boundary) & bmask; - if (sgsize > (baddr - curaddr)) - sgsize = (baddr - curaddr); - } if (((dmat->flags & BUS_DMA_COULD_BOUNCE) != 0) && - map->pagesneeded != 0 && run_filter(dmat, curaddr)) - curaddr = add_bounce_page(dmat, map, vaddr, sgsize); - - if (dmat->ranges) { - struct arm32_dma_range *dr; - - dr = _bus_dma_inrange(dmat->ranges, dmat->_nranges, - curaddr); - if (dr == NULL) - return (EINVAL); - /* - * In a valid DMA range. Translate the physical - * memory address to an address in the DMA window. - */ - curaddr = (curaddr - dr->dr_sysbase) + dr->dr_busbase; - - } - - /* - * Insert chunk into a segment, coalescing with - * the previous segment if possible. - */ - if (seg >= 0 && curaddr == lastaddr && - (segs[seg].ds_len + sgsize) <= dmat->maxsegsz && - (dmat->boundary == 0 || - (segs[seg].ds_addr & bmask) == - (curaddr & bmask))) { - segs[seg].ds_len += sgsize; - goto segdone; + map->pagesneeded != 0 && run_filter(dmat, curaddr)) { + curaddr = add_bounce_page(dmat, map, vaddr, curaddr, + sgsize); } else { - if (++seg >= dmat->nsegments) - break; - segs[seg].ds_addr = curaddr; - segs[seg].ds_len = sgsize; - } - if (error) + sl = &map->slist[map->sync_count - 1]; + if (map->sync_count == 0 || + vaddr != sl->vaddr + sl->datacount) { + if (++map->sync_count > dmat->nsegments) + goto cleanup; + sl++; + sl->vaddr = vaddr; + sl->datacount = sgsize; + sl->busaddr = curaddr; + } else + sl->datacount += sgsize; + } + sgsize = _bus_dmamap_addseg(dmat, map, curaddr, sgsize, segs, + segp); + if (sgsize == 0) break; -segdone: - lastaddr = curaddr + sgsize; vaddr += sgsize; buflen -= sgsize; } - *segp = seg; - *lastaddrp = lastaddr; - +cleanup: /* * Did we fit? */ - if (buflen != 0) - error = EFBIG; /* XXX better return value here? */ - return (error); + if (buflen != 0) { + _bus_dmamap_unload(dmat, map); + return (EFBIG); /* XXX better return value here? */ + } + return (0); } -/* - * Map the buffer buf into bus space using the dmamap map. - */ -int -bus_dmamap_load(bus_dma_tag_t dmat, bus_dmamap_t map, void *buf, - bus_size_t buflen, bus_dmamap_callback_t *callback, - void *callback_arg, int flags) +void +__bus_dmamap_waitok(bus_dma_tag_t dmat, bus_dmamap_t map, + struct memdesc *mem, bus_dmamap_callback_t *callback, + void *callback_arg) { - vm_offset_t lastaddr = 0; - int error, nsegs = -1; KASSERT(dmat != NULL, ("dmatag is NULL")); KASSERT(map != NULL, ("dmamap is NULL")); + map->mem = *mem; map->callback = callback; map->callback_arg = callback_arg; - map->flags &= ~DMAMAP_TYPE_MASK; - map->flags |= DMAMAP_LINEAR; - map->buffer = buf; - map->len = buflen; - error = bus_dmamap_load_buffer(dmat, - dmat->segments, map, buf, buflen, kernel_pmap, - flags, &lastaddr, &nsegs); - if (error == EINPROGRESS) - return (error); - if (error) - (*callback)(callback_arg, NULL, 0, error); - else - (*callback)(callback_arg, dmat->segments, nsegs + 1, error); - - CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", - __func__, dmat, dmat->flags, nsegs + 1, error); - - return (error); } -/* - * Like bus_dmamap_load(), but for mbufs. - * - * Note that the manpage states that BUS_DMA_NOWAIT is implied for mbufs. - * - * We know that the way the system allocates and uses mbufs implies that we can - * treat them as DMAMAP_CACHE_ALIGNED in terms of handling partial cache line - * flushes. Even though the flush may reference the data area within the mbuf - * that isn't aligned to a cache line, we know the overall mbuf itself is - * properly aligned, and we know that the CPU will not touch the header fields - * before the data area while the DMA is in progress. - */ -int -bus_dmamap_load_mbuf(bus_dma_tag_t dmat, bus_dmamap_t map, struct mbuf *m0, - bus_dmamap_callback2_t *callback, void *callback_arg, - int flags) -{ - int nsegs = -1, error = 0; - - M_ASSERTPKTHDR(m0); - - flags |= BUS_DMA_NOWAIT; - map->flags &= ~DMAMAP_TYPE_MASK; - map->flags |= DMAMAP_MBUF | DMAMAP_CACHE_ALIGNED; - map->buffer = m0; - map->len = 0; - if (m0->m_pkthdr.len <= dmat->maxsize) { - vm_offset_t lastaddr = 0; - struct mbuf *m; - - for (m = m0; m != NULL && error == 0; m = m->m_next) { - if (m->m_len > 0) { - error = bus_dmamap_load_buffer(dmat, - dmat->segments, map, m->m_data, m->m_len, - pmap_kernel(), flags, &lastaddr, &nsegs); - map->len += m->m_len; - } - } - } else { - error = EINVAL; - } - - if (error) { - /* - * force "no valid mappings" on error in callback. - */ - (*callback)(callback_arg, NULL, 0, 0, error); - } else { - (*callback)(callback_arg, dmat->segments, nsegs + 1, - m0->m_pkthdr.len, error); - } - CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", - __func__, dmat, dmat->flags, error, nsegs + 1); - - return (error); -} - -int -bus_dmamap_load_mbuf_sg(bus_dma_tag_t dmat, bus_dmamap_t map, - struct mbuf *m0, bus_dma_segment_t *segs, int *nsegs, - int flags) +bus_dma_segment_t * +_bus_dmamap_complete(bus_dma_tag_t dmat, bus_dmamap_t map, + bus_dma_segment_t *segs, int nsegs, int error) { - int error = 0; - M_ASSERTPKTHDR(m0); - - flags |= BUS_DMA_NOWAIT; - *nsegs = -1; - map->flags &= ~DMAMAP_TYPE_MASK; - map->flags |= DMAMAP_MBUF | DMAMAP_CACHE_ALIGNED; - map->buffer = m0; - map->len = 0; - if (m0->m_pkthdr.len <= dmat->maxsize) { - vm_offset_t lastaddr = 0; - struct mbuf *m; - - for (m = m0; m != NULL && error == 0; m = m->m_next) { - if (m->m_len > 0) { - error = bus_dmamap_load_buffer(dmat, segs, map, - m->m_data, m->m_len, - pmap_kernel(), flags, &lastaddr, - nsegs); - map->len += m->m_len; - } - } - } else { - error = EINVAL; - } - - /* XXX FIXME: Having to increment nsegs is really annoying */ - ++*nsegs; - CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", - __func__, dmat, dmat->flags, error, *nsegs); - return (error); -} - -/* - * Like bus_dmamap_load(), but for uios. - */ -int -bus_dmamap_load_uio(bus_dma_tag_t dmat, bus_dmamap_t map, struct uio *uio, - bus_dmamap_callback2_t *callback, void *callback_arg, - int flags) -{ - vm_offset_t lastaddr = 0; - int nsegs, i, error; - bus_size_t resid; - struct iovec *iov; - struct pmap *pmap; - - resid = uio->uio_resid; - iov = uio->uio_iov; - map->flags &= ~DMAMAP_TYPE_MASK; - map->flags |= DMAMAP_UIO; - map->buffer = uio; - map->len = 0; - - if (uio->uio_segflg == UIO_USERSPACE) { - KASSERT(uio->uio_td != NULL, - ("bus_dmamap_load_uio: USERSPACE but no proc")); - pmap = vmspace_pmap(uio->uio_td->td_proc->p_vmspace); - } else - pmap = kernel_pmap; - - error = 0; - nsegs = -1; - for (i = 0; i < uio->uio_iovcnt && resid != 0 && !error; i++) { - /* - * Now at the first iovec to load. Load each iovec - * until we have exhausted the residual count. - */ - bus_size_t minlen = - resid < iov[i].iov_len ? resid : iov[i].iov_len; - caddr_t addr = (caddr_t) iov[i].iov_base; - - if (minlen > 0) { - error = bus_dmamap_load_buffer(dmat, dmat->segments, - map, addr, minlen, pmap, flags, &lastaddr, &nsegs); - - map->len += minlen; - resid -= minlen; - } - } - - if (error) { - /* - * force "no valid mappings" on error in callback. - */ - (*callback)(callback_arg, NULL, 0, 0, error); - } else { - (*callback)(callback_arg, dmat->segments, nsegs+1, - uio->uio_resid, error); - } - CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", - __func__, dmat, dmat->flags, error, nsegs + 1); - return (error); + if (segs == NULL) + segs = dmat->segments; + return (segs); } /* @@ -1146,24 +1111,25 @@ _bus_dmamap_unload(bus_dma_tag_t dmat, b { struct bounce_page *bpage; - map->flags &= ~DMAMAP_TYPE_MASK; while ((bpage = STAILQ_FIRST(&map->bpages)) != NULL) { STAILQ_REMOVE_HEAD(&map->bpages, links); free_bounce_page(dmat, bpage); } + map->sync_count = 0; return; } static void -bus_dmamap_sync_buf(void *buf, int len, bus_dmasync_op_t op, int bufaligned) +bus_dmamap_sync_buf(vm_offset_t buf, int len, bus_dmasync_op_t op, + int bufaligned) { char _tmp_cl[arm_dcache_align], _tmp_clend[arm_dcache_align]; register_t s; int partial; if ((op & BUS_DMASYNC_PREWRITE) && !(op & BUS_DMASYNC_PREREAD)) { - cpu_dcache_wb_range((vm_offset_t)buf, len); - cpu_l2cache_wb_range((vm_offset_t)buf, len); + cpu_dcache_wb_range(buf, len); + cpu_l2cache_wb_range(buf, len); } /* @@ -1186,38 +1152,37 @@ bus_dmamap_sync_buf(void *buf, int len, if (op & BUS_DMASYNC_PREREAD) { if (!(op & BUS_DMASYNC_PREWRITE) && !partial) { - cpu_dcache_inv_range((vm_offset_t)buf, len); - cpu_l2cache_inv_range((vm_offset_t)buf, len); + cpu_dcache_inv_range(buf, len); + cpu_l2cache_inv_range(buf, len); } else { - cpu_dcache_wbinv_range((vm_offset_t)buf, len); - cpu_l2cache_wbinv_range((vm_offset_t)buf, len); + cpu_dcache_wbinv_range(buf, len); + cpu_l2cache_wbinv_range(buf, len); } } if (op & BUS_DMASYNC_POSTREAD) { if (partial && !bufaligned) { s = intr_disable(); - if ((vm_offset_t)buf & arm_dcache_align_mask) - memcpy(_tmp_cl, (void *)((vm_offset_t)buf & + if (buf & arm_dcache_align_mask) + memcpy(_tmp_cl, (void *)(buf & ~arm_dcache_align_mask), - (vm_offset_t)buf & arm_dcache_align_mask); - if (((vm_offset_t)buf + len) & arm_dcache_align_mask) + buf & arm_dcache_align_mask); + if ((buf + len) & arm_dcache_align_mask) memcpy(_tmp_clend, - (void *)((vm_offset_t)buf + len), - arm_dcache_align - (((vm_offset_t)(buf) + - len) & arm_dcache_align_mask)); + (void *)(buf + len), + arm_dcache_align - + ((buf + len) & arm_dcache_align_mask)); } - cpu_dcache_inv_range((vm_offset_t)buf, len); - cpu_l2cache_inv_range((vm_offset_t)buf, len); + cpu_dcache_inv_range(buf, len); + cpu_l2cache_inv_range(buf, len); if (partial && !bufaligned) { - if ((vm_offset_t)buf & arm_dcache_align_mask) - memcpy((void *)((vm_offset_t)buf & + if (buf & arm_dcache_align_mask) + memcpy((void *)(buf & ~arm_dcache_align_mask), _tmp_cl, - (vm_offset_t)buf & arm_dcache_align_mask); - if (((vm_offset_t)buf + len) & arm_dcache_align_mask) - memcpy((void *)((vm_offset_t)buf + len), + buf & arm_dcache_align_mask); + if ((buf + len) & arm_dcache_align_mask) + memcpy((void *)(buf + len), _tmp_clend, arm_dcache_align - - (((vm_offset_t)(buf) + len) & - arm_dcache_align_mask)); + ((buf + len) & arm_dcache_align_mask)); intr_restore(s); } } @@ -1230,10 +1195,18 @@ _bus_dmamap_sync_bp(bus_dma_tag_t dmat, STAILQ_FOREACH(bpage, &map->bpages, links) { if (op & BUS_DMASYNC_PREWRITE) { - bcopy((void *)bpage->datavaddr, - (void *)(bpage->vaddr_nocache != 0 ? - bpage->vaddr_nocache : bpage->vaddr), - bpage->datacount); + if (bpage->datavaddr != 0) + bcopy((void *)bpage->datavaddr, + (void *)(bpage->vaddr_nocache != 0 ? + bpage->vaddr_nocache : + bpage->vaddr), + bpage->datacount); + else + physcopyout(bpage->dataaddr, + (void *)(bpage->vaddr_nocache != 0 ? + bpage->vaddr_nocache : + bpage->vaddr), + bpage->datacount); if (bpage->vaddr_nocache == 0) { cpu_dcache_wb_range(bpage->vaddr, bpage->datacount); @@ -1249,36 +1222,23 @@ _bus_dmamap_sync_bp(bus_dma_tag_t dmat, cpu_l2cache_inv_range(bpage->vaddr, bpage->datacount); } - bcopy((void *)(bpage->vaddr_nocache != 0 ? - bpage->vaddr_nocache : bpage->vaddr), - (void *)bpage->datavaddr, bpage->datacount); + if (bpage->datavaddr != 0) + bcopy((void *)(bpage->vaddr_nocache != 0 ? + bpage->vaddr_nocache : bpage->vaddr), + (void *)bpage->datavaddr, bpage->datacount); + else + physcopyin((void *)(bpage->vaddr_nocache != 0 ? + bpage->vaddr_nocache : bpage->vaddr), + bpage->dataaddr, bpage->datacount); dmat->bounce_zone->total_bounced++; } } } -static __inline int -_bus_dma_buf_is_in_bp(bus_dmamap_t map, void *buf, int len) -{ - struct bounce_page *bpage; - - STAILQ_FOREACH(bpage, &map->bpages, links) { - if ((vm_offset_t)buf >= bpage->datavaddr && - (vm_offset_t)buf + len <= bpage->datavaddr + - bpage->datacount) - return (1); - } - return (0); - -} - void _bus_dmamap_sync(bus_dma_tag_t dmat, bus_dmamap_t map, bus_dmasync_op_t op) { - struct mbuf *m; - struct uio *uio; - int resid; - struct iovec *iov; + struct sync_list *sl, *end; int bufaligned; if (op == BUS_DMASYNC_POSTWRITE) @@ -1289,40 +1249,11 @@ _bus_dmamap_sync(bus_dma_tag_t dmat, bus _bus_dmamap_sync_bp(dmat, map, op); CTR3(KTR_BUSDMA, "%s: op %x flags %x", __func__, op, map->flags); bufaligned = (map->flags & DMAMAP_CACHE_ALIGNED); - switch(map->flags & DMAMAP_TYPE_MASK) { - case DMAMAP_LINEAR: - if (!(_bus_dma_buf_is_in_bp(map, map->buffer, map->len))) - bus_dmamap_sync_buf(map->buffer, map->len, op, + if (map->sync_count) { + end = &map->slist[map->sync_count]; + for (sl = &map->slist[0]; sl != end; sl++) + bus_dmamap_sync_buf(sl->vaddr, sl->datacount, op, bufaligned); - break; - case DMAMAP_MBUF: - m = map->buffer; - while (m) { - if (m->m_len > 0 && - !(_bus_dma_buf_is_in_bp(map, m->m_data, m->m_len))) - bus_dmamap_sync_buf(m->m_data, m->m_len, op, - bufaligned); - m = m->m_next; - } - break; - case DMAMAP_UIO: - uio = map->buffer; - iov = uio->uio_iov; - resid = uio->uio_resid; - for (int i = 0; i < uio->uio_iovcnt && resid != 0; i++) { - bus_size_t minlen = resid < iov[i].iov_len ? resid : - iov[i].iov_len; - if (minlen > 0) { - if (!_bus_dma_buf_is_in_bp(map, iov[i].iov_base, - minlen)) - bus_dmamap_sync_buf(iov[i].iov_base, - minlen, op, bufaligned); - resid -= minlen; - } - } - break; - default: - break; } drain: @@ -1489,7 +1420,7 @@ reserve_bounce_pages(bus_dma_tag_t dmat, static bus_addr_t add_bounce_page(bus_dma_tag_t dmat, bus_dmamap_t map, vm_offset_t vaddr, - bus_size_t size) + bus_addr_t addr, bus_size_t size) { struct bounce_zone *bz; struct bounce_page *bpage; @@ -1522,6 +1453,7 @@ add_bounce_page(bus_dma_tag_t dmat, bus_ bpage->busaddr |= vaddr & PAGE_MASK; } bpage->datavaddr = vaddr; + bpage->dataaddr = addr; bpage->datacount = size; STAILQ_INSERT_TAIL(&(map->bpages), bpage, links); return (bpage->busaddr); @@ -1575,8 +1507,8 @@ busdma_swi(void) mtx_unlock(&bounce_lock); dmat = map->dmat; (dmat->lockfunc)(dmat->lockfuncarg, BUS_DMA_LOCK); - bus_dmamap_load(map->dmat, map, map->buffer, map->len, - map->callback, map->callback_arg, /*flags*/0); + bus_dmamap_load_mem(map->dmat, map, &map->mem, + map->callback, map->callback_arg, BUS_DMA_WAITOK); (dmat->lockfunc)(dmat->lockfuncarg, BUS_DMA_UNLOCK); mtx_lock(&bounce_lock); } Modified: stable/9/sys/cam/cam_ccb.h ============================================================================== --- stable/9/sys/cam/cam_ccb.h Mon Jun 17 23:21:18 2013 (r251873) +++ stable/9/sys/cam/cam_ccb.h Tue Jun 18 00:36:53 2013 (r251874) @@ -64,13 +64,19 @@ typedef enum { * Perform transport negotiation * with this command. */ - CAM_SCATTER_VALID = 0x00000010,/* Scatter/gather list is valid */ + CAM_DATA_ISPHYS = 0x00000010,/* Data type with physical addrs */ CAM_DIS_AUTOSENSE = 0x00000020,/* Disable autosense feature */ CAM_DIR_BOTH = 0x00000000,/* Data direction (00:IN/OUT) */ CAM_DIR_IN = 0x00000040,/* Data direction (01:DATA IN) */ CAM_DIR_OUT = 0x00000080,/* Data direction (10:DATA OUT) */ CAM_DIR_NONE = 0x000000C0,/* Data direction (11:no data) */ CAM_DIR_MASK = 0x000000C0,/* Data direction Mask */ + CAM_DATA_VADDR = 0x00000000,/* Data type (000:Virtual) */ *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 01:59:19 2013 Return-Path: Delivered-To: svn-src-all@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 E3C4E8FA; Tue, 18 Jun 2013 01:59:19 +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 D26F21EAF; Tue, 18 Jun 2013 01:59: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 r5I1xJ3D035543; Tue, 18 Jun 2013 01:59:19 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I1xIRc035534; Tue, 18 Jun 2013 01:59:18 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306180159.r5I1xIRc035534@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 01:59:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r251875 - in vendor/apr: . dist dist/atomic dist/atomic/unix dist/docs dist/dso dist/dso/unix dist/file_io dist/file_io/unix dist/helpers dist/include dist/include/arch dist/include/arc... X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 01:59:20 -0000 Author: peter Date: Tue Jun 18 01:59:18 2013 New Revision: 251875 URL: http://svnweb.freebsd.org/changeset/base/251875 Log: Import apache apr-1.4.6 Added: vendor/apr/ vendor/apr/dist/ vendor/apr/dist/CHANGES vendor/apr/dist/LICENSE vendor/apr/dist/Makefile.in (contents, props changed) vendor/apr/dist/Makefile.win (contents, props changed) vendor/apr/dist/NOTICE vendor/apr/dist/NWGNUmakefile vendor/apr/dist/README vendor/apr/dist/apr-config.in (contents, props changed) vendor/apr/dist/apr.dep vendor/apr/dist/apr.dsp vendor/apr/dist/apr.dsw vendor/apr/dist/apr.mak vendor/apr/dist/apr.pc.in (contents, props changed) vendor/apr/dist/apr.spec vendor/apr/dist/atomic/ vendor/apr/dist/atomic/unix/ vendor/apr/dist/atomic/unix/builtins.c (contents, props changed) vendor/apr/dist/atomic/unix/ia32.c (contents, props changed) vendor/apr/dist/atomic/unix/mutex.c (contents, props changed) vendor/apr/dist/atomic/unix/ppc.c (contents, props changed) vendor/apr/dist/atomic/unix/s390.c (contents, props changed) vendor/apr/dist/atomic/unix/solaris.c (contents, props changed) vendor/apr/dist/build-outputs.mk vendor/apr/dist/build.conf (contents, props changed) vendor/apr/dist/buildconf (contents, props changed) vendor/apr/dist/config.layout vendor/apr/dist/configure (contents, props changed) vendor/apr/dist/configure.in (contents, props changed) vendor/apr/dist/docs/ vendor/apr/dist/docs/APRDesign.html (contents, props changed) vendor/apr/dist/docs/canonical_filenames.html (contents, props changed) vendor/apr/dist/docs/doxygen.conf (contents, props changed) vendor/apr/dist/docs/incomplete_types vendor/apr/dist/docs/non_apr_programs vendor/apr/dist/docs/pool-design.html (contents, props changed) vendor/apr/dist/docs/win32_builds.html (contents, props changed) vendor/apr/dist/dso/ vendor/apr/dist/dso/unix/ vendor/apr/dist/dso/unix/dso.c (contents, props changed) vendor/apr/dist/emacs-mode vendor/apr/dist/file_io/ vendor/apr/dist/file_io/unix/ vendor/apr/dist/file_io/unix/buffer.c (contents, props changed) vendor/apr/dist/file_io/unix/copy.c (contents, props changed) vendor/apr/dist/file_io/unix/dir.c (contents, props changed) vendor/apr/dist/file_io/unix/fileacc.c (contents, props changed) vendor/apr/dist/file_io/unix/filedup.c (contents, props changed) vendor/apr/dist/file_io/unix/filepath.c (contents, props changed) vendor/apr/dist/file_io/unix/filepath_util.c (contents, props changed) vendor/apr/dist/file_io/unix/filestat.c (contents, props changed) vendor/apr/dist/file_io/unix/flock.c (contents, props changed) vendor/apr/dist/file_io/unix/fullrw.c (contents, props changed) vendor/apr/dist/file_io/unix/mktemp.c (contents, props changed) vendor/apr/dist/file_io/unix/open.c (contents, props changed) vendor/apr/dist/file_io/unix/pipe.c (contents, props changed) vendor/apr/dist/file_io/unix/readwrite.c (contents, props changed) vendor/apr/dist/file_io/unix/seek.c (contents, props changed) vendor/apr/dist/file_io/unix/tempdir.c (contents, props changed) vendor/apr/dist/helpers/ vendor/apr/dist/helpers/apr_rename.pl (contents, props changed) vendor/apr/dist/include/ vendor/apr/dist/include/apr.h.in (contents, props changed) vendor/apr/dist/include/apr.hnw vendor/apr/dist/include/apr.hw vendor/apr/dist/include/apr_allocator.h (contents, props changed) vendor/apr/dist/include/apr_atomic.h (contents, props changed) vendor/apr/dist/include/apr_dso.h (contents, props changed) vendor/apr/dist/include/apr_env.h (contents, props changed) vendor/apr/dist/include/apr_errno.h (contents, props changed) vendor/apr/dist/include/apr_file_info.h (contents, props changed) vendor/apr/dist/include/apr_file_io.h (contents, props changed) vendor/apr/dist/include/apr_fnmatch.h (contents, props changed) vendor/apr/dist/include/apr_general.h (contents, props changed) vendor/apr/dist/include/apr_getopt.h (contents, props changed) vendor/apr/dist/include/apr_global_mutex.h (contents, props changed) vendor/apr/dist/include/apr_hash.h (contents, props changed) vendor/apr/dist/include/apr_inherit.h (contents, props changed) vendor/apr/dist/include/apr_lib.h (contents, props changed) vendor/apr/dist/include/apr_mmap.h (contents, props changed) vendor/apr/dist/include/apr_network_io.h (contents, props changed) vendor/apr/dist/include/apr_poll.h (contents, props changed) vendor/apr/dist/include/apr_pools.h (contents, props changed) vendor/apr/dist/include/apr_portable.h (contents, props changed) vendor/apr/dist/include/apr_proc_mutex.h (contents, props changed) vendor/apr/dist/include/apr_random.h (contents, props changed) vendor/apr/dist/include/apr_ring.h (contents, props changed) vendor/apr/dist/include/apr_shm.h (contents, props changed) vendor/apr/dist/include/apr_signal.h (contents, props changed) vendor/apr/dist/include/apr_strings.h (contents, props changed) vendor/apr/dist/include/apr_support.h (contents, props changed) vendor/apr/dist/include/apr_tables.h (contents, props changed) vendor/apr/dist/include/apr_thread_cond.h (contents, props changed) vendor/apr/dist/include/apr_thread_mutex.h (contents, props changed) vendor/apr/dist/include/apr_thread_proc.h (contents, props changed) vendor/apr/dist/include/apr_thread_rwlock.h (contents, props changed) vendor/apr/dist/include/apr_time.h (contents, props changed) vendor/apr/dist/include/apr_user.h (contents, props changed) vendor/apr/dist/include/apr_version.h (contents, props changed) vendor/apr/dist/include/apr_want.h (contents, props changed) vendor/apr/dist/include/arch/ vendor/apr/dist/include/arch/apr_private_common.h (contents, props changed) vendor/apr/dist/include/arch/unix/ vendor/apr/dist/include/arch/unix/apr_arch_atomic.h (contents, props changed) vendor/apr/dist/include/arch/unix/apr_arch_dso.h (contents, props changed) vendor/apr/dist/include/arch/unix/apr_arch_file_io.h (contents, props changed) vendor/apr/dist/include/arch/unix/apr_arch_global_mutex.h (contents, props changed) vendor/apr/dist/include/arch/unix/apr_arch_inherit.h (contents, props changed) vendor/apr/dist/include/arch/unix/apr_arch_internal_time.h (contents, props changed) vendor/apr/dist/include/arch/unix/apr_arch_misc.h (contents, props changed) vendor/apr/dist/include/arch/unix/apr_arch_networkio.h (contents, props changed) vendor/apr/dist/include/arch/unix/apr_arch_poll_private.h (contents, props changed) vendor/apr/dist/include/arch/unix/apr_arch_proc_mutex.h (contents, props changed) vendor/apr/dist/include/arch/unix/apr_arch_shm.h (contents, props changed) vendor/apr/dist/include/arch/unix/apr_arch_thread_cond.h (contents, props changed) vendor/apr/dist/include/arch/unix/apr_arch_thread_mutex.h (contents, props changed) vendor/apr/dist/include/arch/unix/apr_arch_thread_rwlock.h (contents, props changed) vendor/apr/dist/include/arch/unix/apr_arch_threadproc.h (contents, props changed) vendor/apr/dist/include/arch/unix/apr_private.h.in (contents, props changed) vendor/apr/dist/libapr.dep vendor/apr/dist/libapr.dsp vendor/apr/dist/libapr.mak vendor/apr/dist/libapr.rc vendor/apr/dist/locks/ vendor/apr/dist/locks/unix/ vendor/apr/dist/locks/unix/global_mutex.c (contents, props changed) vendor/apr/dist/locks/unix/proc_mutex.c (contents, props changed) vendor/apr/dist/locks/unix/thread_cond.c (contents, props changed) vendor/apr/dist/locks/unix/thread_mutex.c (contents, props changed) vendor/apr/dist/locks/unix/thread_rwlock.c (contents, props changed) vendor/apr/dist/memory/ vendor/apr/dist/memory/unix/ vendor/apr/dist/memory/unix/apr_pools.c (contents, props changed) vendor/apr/dist/misc/ vendor/apr/dist/misc/unix/ vendor/apr/dist/misc/unix/charset.c (contents, props changed) vendor/apr/dist/misc/unix/env.c (contents, props changed) vendor/apr/dist/misc/unix/errorcodes.c (contents, props changed) vendor/apr/dist/misc/unix/getopt.c (contents, props changed) vendor/apr/dist/misc/unix/otherchild.c (contents, props changed) vendor/apr/dist/misc/unix/rand.c (contents, props changed) vendor/apr/dist/misc/unix/randbyte_os2.inc vendor/apr/dist/misc/unix/start.c (contents, props changed) vendor/apr/dist/misc/unix/version.c (contents, props changed) vendor/apr/dist/mmap/ vendor/apr/dist/mmap/unix/ vendor/apr/dist/mmap/unix/common.c (contents, props changed) vendor/apr/dist/mmap/unix/mmap.c (contents, props changed) vendor/apr/dist/network_io/ vendor/apr/dist/network_io/unix/ vendor/apr/dist/network_io/unix/inet_ntop.c (contents, props changed) vendor/apr/dist/network_io/unix/inet_pton.c (contents, props changed) vendor/apr/dist/network_io/unix/multicast.c (contents, props changed) vendor/apr/dist/network_io/unix/sendrecv.c (contents, props changed) vendor/apr/dist/network_io/unix/sockaddr.c (contents, props changed) vendor/apr/dist/network_io/unix/socket_util.c (contents, props changed) vendor/apr/dist/network_io/unix/sockets.c (contents, props changed) vendor/apr/dist/network_io/unix/sockopt.c (contents, props changed) vendor/apr/dist/passwd/ vendor/apr/dist/passwd/apr_getpass.c (contents, props changed) vendor/apr/dist/poll/ vendor/apr/dist/poll/unix/ vendor/apr/dist/poll/unix/epoll.c (contents, props changed) vendor/apr/dist/poll/unix/kqueue.c (contents, props changed) vendor/apr/dist/poll/unix/poll.c (contents, props changed) vendor/apr/dist/poll/unix/pollcb.c (contents, props changed) vendor/apr/dist/poll/unix/pollset.c (contents, props changed) vendor/apr/dist/poll/unix/port.c (contents, props changed) vendor/apr/dist/poll/unix/select.c (contents, props changed) vendor/apr/dist/random/ vendor/apr/dist/random/unix/ vendor/apr/dist/random/unix/apr_random.c (contents, props changed) vendor/apr/dist/random/unix/sha2.c (contents, props changed) vendor/apr/dist/random/unix/sha2.h (contents, props changed) vendor/apr/dist/random/unix/sha2_glue.c (contents, props changed) vendor/apr/dist/shmem/ vendor/apr/dist/shmem/unix/ vendor/apr/dist/shmem/unix/shm.c (contents, props changed) vendor/apr/dist/strings/ vendor/apr/dist/strings/apr_cpystrn.c (contents, props changed) vendor/apr/dist/strings/apr_fnmatch.c (contents, props changed) vendor/apr/dist/strings/apr_snprintf.c (contents, props changed) vendor/apr/dist/strings/apr_strings.c (contents, props changed) vendor/apr/dist/strings/apr_strnatcmp.c (contents, props changed) vendor/apr/dist/strings/apr_strtok.c (contents, props changed) vendor/apr/dist/support/ vendor/apr/dist/support/unix/ vendor/apr/dist/support/unix/waitio.c (contents, props changed) vendor/apr/dist/tables/ vendor/apr/dist/tables/apr_hash.c (contents, props changed) vendor/apr/dist/tables/apr_tables.c (contents, props changed) vendor/apr/dist/threadproc/ vendor/apr/dist/threadproc/unix/ vendor/apr/dist/threadproc/unix/proc.c (contents, props changed) vendor/apr/dist/threadproc/unix/procsup.c (contents, props changed) vendor/apr/dist/threadproc/unix/signals.c (contents, props changed) vendor/apr/dist/threadproc/unix/thread.c (contents, props changed) vendor/apr/dist/threadproc/unix/threadpriv.c (contents, props changed) vendor/apr/dist/time/ vendor/apr/dist/time/unix/ vendor/apr/dist/time/unix/time.c (contents, props changed) vendor/apr/dist/time/unix/timestr.c (contents, props changed) vendor/apr/dist/user/ vendor/apr/dist/user/unix/ vendor/apr/dist/user/unix/groupinfo.c (contents, props changed) vendor/apr/dist/user/unix/userinfo.c (contents, props changed) Added: vendor/apr/dist/CHANGES ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/apr/dist/CHANGES Tue Jun 18 01:59:18 2013 (r251875) @@ -0,0 +1,190 @@ + -*- coding: utf-8 -*- +Changes for APR 1.4.6 + + *) Flush write buffer before truncate call on a file. + [Mladen Turk] + + *) Security: oCERT-2011-003 + Randomise hashes by providing a seed. + [Bojan Smojver, Branko Čibej, Ruediger Pluem et al.] + + *) apr_random: Prevent segfault if pool used to initialize apr_random is + destroyed before forking. [Stefan Fritsch] + + *) testrand: Improve child randomness test case. [Rainer Jung] + + *) apr_proc_fork, apr_random_after_fork: disambiguate what happens to the + proc structure passed in, and ensure that the pid is set correctly in + a newly created child; note that merely mixing a PID into the random + seed of a new child doesn't markedly increase entropy. [Sander Temme] + + *) apr_file_open: Avoid fcntl() calls if support for O_CLOEXEC works. + PR 48557. [Mike Frysinger ] + + *) apr_dir_make_recursive: Fix race condition that could lead to EEXIST + being returned. PR 51254. [William Lee , + Wim Lewis ] + + *) configure: Fix APR_RESTORE_THE_ENVIRONMENT if the original variable was + a single space. PR 50334. [Nathan Phillip Brink ] + + *) apr_proc_create: Don't close any of the new stdin/stdout/stderr in the + child if it already has the correct FD. PR 51995. + [Dan Ports ] + + *) Fix flag character '#' in combination with format character 'x' in + apr snprintf implementations. [Rainer Jung] + + *) Improve platform detection by updating config.guess and config.sub. + [Rainer Jung] + + *) Add libtool2 files to extraclean make target. [Rainer Jung] + + *) Don't overwrite our config.guess and config.sub + when running buildconf. [Rainer Jung] + + *) Silence autoconf 2.68 warnings. [Rainer Jung] + +Changes for APR 1.4.5 + + *) Security: CVE-2011-1928 + apr_fnmatch(): Fix high CPU loop. [William Rowe] + + *) Fix top_builddir in installed apr_rules.mk. [Bojan Smojver] + +Changes for APR 1.4.4 + + *) Windows: Fix command-line builds. [William Rowe] + +Changes for APR 1.4.3 + + *) Security: CVE-2011-0419 + Reimplement apr_fnmatch() from scratch using a non-recursive + algorithm; now has improved compliance with the fnmatch() spec. + [William Rowe] + + *) Fix environment-related crash using some non-standard builds on + Windows 7/Server 2008. [Steve Hay ] + + *) poll, pollset, pollcb on Windows: Handle calls with no file/socket + descriptors. PR 49882. [Stefan Ruppert , Jeff Trawick] + + *) Fix APR_IPV6_V6ONLY issues on Windows related to run-time behavior + on Windows older than Vista and SDK/MinGW levels without IPV6_V6ONLY. + PR 45321. [Sob ] + + *) Fix address handling when accepting an AF_INET socket from a socket + bound as AF_INET6. PR 49678. [Joe Orton] + + *) Fix error return values from apr_sockaddr_info_get() on Windows for + IPv6 builds. [Ivan Zhakov ] + + *) Add new experimental configure option --enable-allocator-uses-mmap to + use mmap instead of malloc in apr_allocator_alloc(). This greatly reduces + memory fragmentation with malloc implementations (e.g. glibc) that + don't handle allocationss of a page-size-multiples in an efficient way. + It also makes apr_allocator_max_free_set() actually have some effect + on such platforms. [Stefan Fritsch] + + *) configure: Support 64 and 32 bit universal builds for Darwin/ + OS X 10.6+. [Jim Jagielski] + + *) apr_sockaddr_info_get() on AIX: Fix a problem which could set + the port field in the native socket address to 1 when 0 was + specified. PR 46964. [Jeff Trawick] + + *) configure: Make definition of apr_ino_t independent of + _FILE_OFFSET_BITS even on platforms where ino_t is 'unsigned int'. + [Stefan Fritsch] + + *) apr_ring: Workaround for aliasing problem that causes gcc 4.5 to + miscompile some brigade related code. PR 50190. [Stefan Fritsch] + + *) apr_file_flush_locked(): Handle short writes. [Stefan Fritsch] + + *) apr_pollset_create_ex(): Trap errors from pollset providers. + PR 49094. [Sami Tolvanen ] + + *) apr_pollset_create*(): Fix memory lifetime problem with the wakeup + pipe when the pollset was created with APR_POLLSET_NOCOPY. + [Neil Conway ] + + *) Fix detection of some Linux variants when configure is built with + recent GNU tools. [Eric Covener] + + *) Avoid a redundant fcntl() call in apr_file_open() where O_CLOEXEC + is supported. PR 46297. [Joe Orton] + + *) Improve platform detection by updating config.guess and config.sub. + [Rainer Jung] + +Changes for APR 1.4.2 + + *) Undo a crash-bug introduced in 1.4.1 affecting some applications of + the apr hash and table structures, reported to affect Subversion + by Bert Huijben . [Graham Leggett] + +Changes for APR 1.4.1 + + *) Win32: Properly handle the ERROR_DIRECTORY system error code. + [Brane Čibej] + +Changes for APR 1.4.0 + + *) Windows: Default build configurations assume NT or higher at run-time. + + *) Add apr_global_mutex_lockfile() for retrieving the file, if any, + associated with the mutex. Add apr_global_mutex_name() for retrieving + the name of the lock mechanism used by the underlying proc mutex. + [Jeff Trawick] + + *) Add apr_socket_atreadeof to determine whether the receive part of the + socket has been closed by the peer. + [Ruediger Pluem, Mladen Turk, Joe Orton] + + *) Make apr_pollset and apr_pollcb implementations using providers. + Added apr_pollset_create_ex and apr_pollcb_create_ex that allows + choosing non-default providers. + [Mladen Turk] + + *) Win32: Use WSAPoll as default pollset method if supported and found + inside winsock dll. [Mladen Turk] + + *) apr_temp_dir_get() now checks the TMPDIR environment variable first, + instead of third. [Jim Jagielski] + + *) Add apr_file_sync() and apr_file_datasync() calls. [Bojan Smojver] + + *) apr_pollset_wakeup() on Windows: Fix core caused by closing the + file_socket_pipe with standard file_close. + [Arsen Chaloyan, Mladen Turk] + + *) Introduce apr_hash_do() for iterating over a hash table. [Mladen Turk] + + *) Make sure WIN32 behaves the same as posix for file-backed shared memory + by removing the file on cleanup/remove. [Mladen Turk] + + *) Introduce apr_pollset_wakeup() for interrupting the blocking + apr_pollset_poll() call. [Mladen Turk] + + *) Add apr_file_link() function. PR 44841. [Mark Heily ] + +Changes for APR 1.3.x and later: + + *) http://svn.apache.org/viewvc/apr/apr/branches/1.3.x/CHANGES?view=markup + +Changes for APR 1.2.x and later: + + *) http://svn.apache.org/viewvc/apr/apr/branches/1.2.x/CHANGES?view=markup + +Changes for APR 1.1.x and later: + + *) http://svn.apache.org/viewvc/apr/apr/branches/1.1.x/CHANGES?view=markup + +Changes for APR 1.0.x and later: + + *) http://svn.apache.org/viewvc/apr/apr/branches/1.0.x/CHANGES?view=markup + +Changes for APR 0.9.x and later/earlier: + + *) http://svn.apache.org/viewvc/apr/apr/branches/0.9.x/CHANGES?view=markup Added: vendor/apr/dist/LICENSE ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/apr/dist/LICENSE Tue Jun 18 01:59:18 2013 (r251875) @@ -0,0 +1,341 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. + + + +APACHE PORTABLE RUNTIME SUBCOMPONENTS: + +The Apache Portable Runtime includes a number of subcomponents with +separate copyright notices and license terms. Your use of the source +code for the these subcomponents is subject to the terms and +conditions of the following licenses. + +From strings/apr_fnmatch.c, include/apr_fnmatch.h, misc/unix/getopt.c, +file_io/unix/mktemp.c, strings/apr_strings.c: + +/* + * Copyright (c) 1987, 1993, 1994 + * The Regents of the University of California. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the University of + * California, Berkeley and its contributors. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS 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 REGENTS 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. + +From network_io/unix/inet_ntop.c, network_io/unix/inet_pton.c: + +/* Copyright (c) 1996 by Internet Software Consortium. + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND INTERNET SOFTWARE CONSORTIUM DISCLAIMS + * ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL INTERNET SOFTWARE + * CONSORTIUM BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL + * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR + * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS + * ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS + * SOFTWARE. + +From dso/aix/dso.c: + + * Based on libdl (dlfcn.c/dlfcn.h) which is + * Copyright (c) 1992,1993,1995,1996,1997,1988 + * Jens-Uwe Mager, Helios Software GmbH, Hannover, Germany. + * + * Not derived from licensed software. + * + * Permission is granted to freely use, copy, modify, and redistribute + * this software, provided that the author is not construed to be liable + * for any results of using the software, alterations are clearly marked + * as such, and this notice is not modified. + +From strings/apr_strnatcmp.c, include/apr_strings.h: + + strnatcmp.c -- Perform 'natural order' comparisons of strings in C. + Copyright (C) 2000 by Martin Pool + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + +From strings/apr_snprintf.c: + + * + * cvt - IEEE floating point formatting routines. + * Derived from UNIX V7, Copyright(C) Caldera International Inc. + * + + Copyright(C) Caldera International Inc. 2001-2002. All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + Redistributions of source code and documentation must retain the above + copyright notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + All advertising materials mentioning features or use of this software + must display the following acknowledgement: + + This product includes software developed or owned by Caldera + International, Inc. + + Neither the name of Caldera International, Inc. nor the names of other + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + USE OF THE SOFTWARE PROVIDED FOR UNDER THIS LICENSE BY CALDERA + INTERNATIONAL, INC. 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 CALDERA INTERNATIONAL, INC. 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. + + Added: vendor/apr/dist/Makefile.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/apr/dist/Makefile.in Tue Jun 18 01:59:18 2013 (r251875) @@ -0,0 +1,129 @@ + +srcdir=@srcdir@ +VPATH=@srcdir@ +top_srcdir=@apr_srcdir@ +top_blddir=@apr_builddir@ + +# +# APR (Apache Portable Runtime) library Makefile. +# +CPP = @CPP@ + +# get substituted into some targets +APR_MAJOR_VERSION=@APR_MAJOR_VERSION@ + +# +# Macros for supporting directories +# +INCDIR=./include +OSDIR=$(top_srcdir)/include/arch/@OSDIR@ +DEFOSDIR=$(INCDIR)/arch/@DEFAULT_OSDIR@ +INCLUDES=-I$(INCDIR) -I$(OSDIR) -I$(DEFOSDIR) -I$(top_srcdir)/include/arch/@DEFAULT_OSDIR@ -I$(top_srcdir)/include + +# +# Macros for target determination +# +CLEAN_SUBDIRS= test +INSTALL_SUBDIRS=@INSTALL_SUBDIRS@ + +TARGET_LIB = lib@APR_LIBNAME@.la +APR_PCFILE = apr-$(APR_MAJOR_VERSION).pc +APR_CONFIG = apr-$(APR_MAJOR_VERSION)-config +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ + +# +# Rules for building specific targets, starting with 'all' for +# building the entire package. +# +TARGETS = $(TARGET_LIB) apr.exp apr-config.out build/apr_rules.out + +LT_VERSION = @LT_VERSION@ + +# bring in rules.mk for standard functionality +@INCLUDE_RULES@ +@INCLUDE_OUTPUTS@ + +CLEAN_TARGETS = apr-config.out apr.exp exports.c export_vars.c .make.dirs \ + build/apr_rules.out +DISTCLEAN_TARGETS = config.cache config.log config.status \ + include/apr.h include/arch/unix/apr_private.h \ + libtool $(APR_CONFIG) build/apr_rules.mk apr.pc \ + build/pkg/pkginfo +EXTRACLEAN_TARGETS = configure aclocal.m4 include/arch/unix/apr_private.h.in \ + build-outputs.mk build/ltcf-c.sh build/aclocal.m4 \ + build/ltconfig build/ltmain.sh \ + build/argz.m4 build/libtool.m4 build/ltoptions.m4 \ + build/ltsugar.m4 build/ltversion.m4 build/lt~obsolete.m4 + +prefix=@prefix@ +exec_prefix=@exec_prefix@ +bindir=@bindir@ +libdir=@libdir@ +includedir=@includedir@ +installbuilddir=@installbuilddir@ + +# Create apr-config script suitable for the install tree +apr-config.out: $(APR_CONFIG) + sed 's,^\(location=\).*$$,\1installed,' < $(APR_CONFIG) > $@ + +# Create apr_rules.mk suitable for the install tree +build/apr_rules.out: build/apr_rules.mk + sed -e 's,^\(apr_build.*=\).*$$,\1$(installbuilddir),' -e 's,^\(top_build.*=\).*$$,\1$(installbuilddir),' < build/apr_rules.mk > $@ + +install: $(TARGETS) + $(APR_MKDIR) $(DESTDIR)$(libdir) $(DESTDIR)$(bindir) $(DESTDIR)$(installbuilddir) \ + $(DESTDIR)$(libdir)/pkgconfig $(DESTDIR)$(includedir) + $(INSTALL_DATA) $(top_blddir)/include/apr.h $(DESTDIR)$(includedir) + for f in $(top_srcdir)/include/apr_*.h; do \ + $(INSTALL_DATA) $${f} $(DESTDIR)$(includedir); \ + done + $(LIBTOOL) --mode=install $(INSTALL) -m 755 $(TARGET_LIB) $(DESTDIR)$(libdir) + $(INSTALL_DATA) apr.exp $(DESTDIR)$(libdir)/apr.exp + $(INSTALL_DATA) apr.pc $(DESTDIR)$(libdir)/pkgconfig/$(APR_PCFILE) + for f in libtool shlibtool; do \ + if test -f $${f}; then $(INSTALL) -m 755 $${f} $(DESTDIR)$(installbuilddir); fi; \ + done + $(INSTALL) -m 755 $(top_srcdir)/build/mkdir.sh $(DESTDIR)$(installbuilddir) + for f in make_exports.awk make_var_export.awk; do \ + $(INSTALL_DATA) $(top_srcdir)/build/$${f} $(DESTDIR)$(installbuilddir); \ + done + $(INSTALL_DATA) build/apr_rules.out $(DESTDIR)$(installbuilddir)/apr_rules.mk + $(INSTALL) -m 755 apr-config.out $(DESTDIR)$(bindir)/$(APR_CONFIG) + @if [ $(INSTALL_SUBDIRS) != "none" ]; then \ + for i in $(INSTALL_SUBDIRS); do \ + ( cd $$i ; $(MAKE) DESTDIR=$(DESTDIR) install ); \ + done \ + fi + +$(TARGET_LIB): $(OBJECTS) + $(LINK) @lib_target@ $(ALL_LIBS) + +exports.c: $(HEADERS) + $(APR_MKEXPORT) $(HEADERS) > $@ + +export_vars.c: $(HEADERS) + $(APR_MKVAREXPORT) $(HEADERS) > $@ + +apr.exp: exports.c export_vars.c + @echo "#! lib@APR_LIBNAME@.so" > $@ + @echo "* This file was AUTOGENERATED at build time." >> $@ + @echo "* Please do not edit by hand." >> $@ + $(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) exports.c | grep "ap_hack_" | sed -e 's/^.*[)]\(.*\);$$/\1/' >> $@ + $(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) export_vars.c | sed -e 's/^\#[^!]*//' | sed -e '/^$$/d' >> $@ + +dox: + doxygen $(top_srcdir)/docs/doxygen.conf + +gcov: + @build/run-gcov.sh + +test: check +check: $(TARGET_LIB) + cd test && $(MAKE) all check + +etags: + etags `find . -name '*.[ch]'` + +# DO NOT REMOVE +docs: $(INCDIR)/*.h Added: vendor/apr/dist/Makefile.win ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/apr/dist/Makefile.win Tue Jun 18 01:59:18 2013 (r251875) @@ -0,0 +1,181 @@ +# Makefile.win for Win32 APR alone +# +# Targets are: +# +# buildall - compile everything +# checkall - run APR regression tests +# install - compile everything +# clean - mop up everything +# +# You can override the build mechansim, choose only one; +# +# USEMAK=1 - compile from exported make files +# USEDSW=1 - compile from .dsw / .dsp VC6 projects +# USESLN=1 - compile from converted .sln / .vcproj VC7+ files +# +# Define ARCH to your desired preference (your PATH must point +# to the correct compiler tools!) Choose only one; +# +# ARCH="Win32 Release" +# ARCH="Win32 Debug" +# ARCH="Win32 Release9x" +# ARCH="Win32 Debug9x" +# ARCH="x64 Release" +# ARCH="x64 Debug" +# +# For example; +# +# nmake -f Makefile.win PREFIX=C:\APR buildall checkall installall clean +# + +!IF EXIST("apr.sln") && ([devenv /help > NUL 2>&1] == 0) \ + && !defined(USEMAK) && !defined(USEDSW) +USESLN=1 +USEMAK=0 +USEDSW=0 +!ELSEIF EXIST("apr.mak") && !defined(USEDSW) +USESLN=0 +USEMAK=1 +USEDSW=0 +!ELSE +USESLN=0 +USEMAK=0 +USEDSW=1 +!ENDIF + +PREFIX=..\apr-dist + +!IF [$(COMSPEC) /c cl /nologo /? \ + | $(SystemRoot)\System32\find.exe "x64" >NUL ] == 0 +ARCH=x64 Release +!ELSE +ARCH=Win32 Release +!ENDIF + +!MESSAGE ARCH = $(ARCH) +!MESSAGE PREFIX = $(PREFIX) (install path) + + +# Utility and Translation things, nothing here for the user +# +!IF "$(ARCH)" == "Win32 Release" +SLNARCH=Release|Win32 +ARCHOSPATH=Release +LIBSOSPATH=LibR +!ELSEIF "$(ARCH)" == "Win32 Debug" +SLNARCH=Debug|Win32 +ARCHOSPATH=Debug +LIBSOSPATH=LibD +!ELSEIF "$(ARCH)" == "Win32 Release9x" +SLNARCH=Release9x|Win32 +ARCHOSPATH=9x\Release +LIBSOSPATH=9x\LibR +!ELSEIF "$(ARCH)" == "Win32 Debug9x" +SLNARCH=Debug9x|Win32 +ARCHOSPATH=9x\Debug +LIBSOSPATH=9x\LibD +!ELSEIF "$(ARCH)" == "x64 Release" +SLNARCH=Release|x64 +ARCHOSPATH=x64\Release +LIBSOSPATH=x64\LibR +!ELSEIF "$(ARCH)" == "x64 Debug" +SLNARCH=Debug|x64 +ARCHOSPATH=x64\Debug +LIBSOSPATH=x64\LibD +!ENDIF + +!IFNDEF MAKEOPT +# Only default the behavior if MAKEOPT= is omitted +!IFDEF _NMAKE_VER +# Microsoft NMake options +MAKEOPT=-nologo +!ELSEIF "$(MAKE)" == "make" +# Borland make options? Not really supported (yet) +MAKEOPT=-s -N +!ENDIF +!ENDIF + + +all: buildall checkall + +!IF $(USEMAK) == 1 + +clean: + $(MAKE) $(MAKEOPT) -f Makefile.win ARCH="$(ARCH)" \ + CTARGET=CLEAN buildall + +buildall: + $(MAKE) $(MAKEOPT) -f apr.mak CFG="apr - $(ARCH)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f libapr.mak CFG="libapr - $(ARCH)" RECURSE=0 $(CTARGET) + cd build + $(MAKE) $(MAKEOPT) -f aprapp.mak CFG="aprapp - $(ARCH)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f libaprapp.mak CFG="libaprapp - $(ARCH)" RECURSE=0 $(CTARGET) + cd .. + +!ELSEIF $(USESLN) == 1 + +clean: + -devenv apr.sln /useenv /clean "$(SLNARCH)" /project libaprapp + -devenv apr.sln /useenv /clean "$(SLNARCH)" /project libapr + -devenv apr.sln /useenv /clean "$(SLNARCH)" /project aprapp + -devenv apr.sln /useenv /clean "$(SLNARCH)" /project apr + +buildall: + devenv apr.sln /useenv /build "$(SLNARCH)" /project apr + devenv apr.sln /useenv /build "$(SLNARCH)" /project aprapp + devenv apr.sln /useenv /build "$(SLNARCH)" /project libapr + devenv apr.sln /useenv /build "$(SLNARCH)" /project libaprapp + +!ELSE +# $(USEDSP) == 1 + +clean: + -msdev apr.dsw /USEENV /MAKE "libaprapp - $(ARCH)" /CLEAN + -msdev apr.dsw /USEENV /MAKE "libapr - $(ARCH)" /CLEAN + -msdev apr.dsw /USEENV /MAKE "aprapp - $(ARCH)" /CLEAN + -msdev apr.dsw /USEENV /MAKE "apr - $(ARCH)" /CLEAN + +buildall: + @msdev apr.dsw /USEENV /MAKE "apr - $(ARCH)" + @msdev apr.dsw /USEENV /MAKE "aprapp - $(ARCH)" + @msdev apr.dsw /USEENV /MAKE "libapr - $(ARCH)" + @msdev apr.dsw /USEENV /MAKE "libaprapp - $(ARCH)" + +!ENDIF + + +checkapr: + cd test + $(MAKE) $(MAKEOPT) -f Makefile.win MODEL=static \ + OUTDIR=$(LIBSOSPATH) check + $(MAKE) $(MAKEOPT) -f Makefile.win MODEL=dynamic \ + OUTDIR=$(ARCHOSPATH) check + cd .. + +checkall: checkapr + + +install: + echo Y >.y + echo A >.A + @if NOT EXIST "$(PREFIX)\." mkdir "$(PREFIX)" + @if NOT EXIST "$(PREFIX)\bin\." mkdir "$(PREFIX)\bin" + @if NOT EXIST "$(PREFIX)\include\." mkdir "$(PREFIX)\include" + @if NOT EXIST "$(PREFIX)\lib\." mkdir "$(PREFIX)\lib" + copy CHANGES "$(PREFIX)\APR-CHANGES.txt" <.y + copy LICENSE "$(PREFIX)\APR-LICENSE.txt" <.y + copy NOTICE "$(PREFIX)\APR-NOTICE.txt" <.y + xcopy include\*.h "$(PREFIX)\include\" /d < .a + copy $(LIBSOSPATH)\apr-1.lib "$(PREFIX)\lib\" <.y + copy $(LIBSOSPATH)\apr-1.pdb "$(PREFIX)\lib\" <.y + copy $(LIBSOSPATH)\aprapp-1.lib "$(PREFIX)\lib\" <.y + copy $(LIBSOSPATH)\aprapp-1.pdb "$(PREFIX)\lib\" <.y + copy $(ARCHOSPATH)\libaprapp-1.lib "$(PREFIX)\lib\" <.y + copy $(ARCHOSPATH)\libaprapp-1.pdb "$(PREFIX)\lib\" <.y + copy $(ARCHOSPATH)\libapr-1.lib "$(PREFIX)\lib\" <.y + copy $(ARCHOSPATH)\libapr-1.exp "$(PREFIX)\lib\" <.y + copy $(ARCHOSPATH)\libapr-1.dll "$(PREFIX)\bin\" <.y + copy $(ARCHOSPATH)\libapr-1.pdb "$(PREFIX)\bin\" <.y + del .y + del .a + Added: vendor/apr/dist/NOTICE ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/apr/dist/NOTICE Tue Jun 18 01:59:18 2013 (r251875) @@ -0,0 +1,15 @@ +Apache Portable Runtime +Copyright (c) 2011 The Apache Software Foundation. + +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). + +Portions of this software were developed at the National Center +for Supercomputing Applications (NCSA) at the University of +Illinois at Urbana-Champaign. + +This software contains code derived from the RSA Data Security +Inc. MD5 Message-Digest Algorithm. + +This software contains code derived from UNIX V7, Copyright(C) +Caldera International Inc. Added: vendor/apr/dist/NWGNUmakefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/apr/dist/NWGNUmakefile Tue Jun 18 01:59:18 2013 (r251875) @@ -0,0 +1,430 @@ +# +# Define our macros with defaults if we dont got them already. +# +ifndef APR_WORK +export APR_WORK = $(CURDIR) +endif +ifneq "$(wildcard $(APR_WORK)/include/apr_version.h)" "$(APR_WORK)/include/apr_version.h" +$(error APR_WORK does not point to a valid APR source tree) +endif +ifndef APU_WORK +export APU_WORK = $(CURDIR)/../apr-util +endif +ifneq "$(wildcard $(APU_WORK)/include/apu_version.h)" "$(APU_WORK)/include/apu_version.h" +$(error APU_WORK does not point to a valid APU source tree) +endif + +# +# Declare the sub-directories to be built here +# + +SUBDIRS = \ + build \ + $(APU_WORK) \ + $(EOLIST) + +ifeq "$(TEST)" "1" +SUBDIRS += \ + test \ + $(APU_WORK)/test \ + $(EOLIST) +endif + +# +# Get the 'head' of the build environment. This includes default targets and +# paths to tools +# + +include $(APR_WORK)/build/NWGNUhead.inc + +# +# build this level's files + +# +# Make sure all needed macro's are defined +# + +# +# These directories will be at the beginning of the include list, followed by +# INCDIRS +# +XINCDIRS += \ + $(APR)/include \ + $(APR)/include/arch/NetWare \ + $(APR)/include/arch/unix \ + $(APR)/memory/unix \ + $(APR)/random/unix \ + $(APU)/include \ + $(APU)/xml \ + $(LDAPSDK)/inc \ + $(EOLIST) + +# +# These flags will come after CFLAGS +# +XCFLAGS += \ + $(EOLIST) + +# +# These defines will come after DEFINES +# +XDEFINES += \ + $(EOLIST) + +# +# These flags will be added to the link.opt file +# +XLFLAGS += \ + $(EOLIST) + +# +# These values will be appended to the correct variables based on the value of +# RELEASE +# +ifeq "$(RELEASE)" "debug" +XINCDIRS += \ + $(EOLIST) + +XCFLAGS += \ + $(EOLIST) + +XDEFINES += \ + $(EOLIST) + +XLFLAGS += \ + $(EOLIST) +endif + +ifeq "$(RELEASE)" "noopt" +XINCDIRS += \ + $(EOLIST) + +XCFLAGS += \ + $(EOLIST) + +XDEFINES += \ + $(EOLIST) + +XLFLAGS += \ + $(EOLIST) +endif + +ifeq "$(RELEASE)" "release" +XINCDIRS += \ + $(EOLIST) + +XCFLAGS += \ + $(EOLIST) + +XDEFINES += \ + $(EOLIST) + +XLFLAGS += \ + $(EOLIST) +endif + +# *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 01:59:56 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 63D15A6E; Tue, 18 Jun 2013 01:59:56 +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 52F1A1EBE; Tue, 18 Jun 2013 01:59: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 r5I1xuHC035653; Tue, 18 Jun 2013 01:59:56 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I1xtj3035647; Tue, 18 Jun 2013 01:59:55 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306180159.r5I1xtj3035647@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 01:59:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r251876 - in vendor/apr-util: . dist dist/buckets dist/crypto dist/dbd dist/dbm dist/dbm/sdbm dist/docs dist/encoding dist/hooks dist/include dist/include/private dist/ldap dist/memcach... X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 01:59:56 -0000 Author: peter Date: Tue Jun 18 01:59:55 2013 New Revision: 251876 URL: http://svnweb.freebsd.org/changeset/base/251876 Log: Import apache apr-util 1.4.1 Added: vendor/apr-util/ vendor/apr-util/dist/ vendor/apr-util/dist/CHANGES vendor/apr-util/dist/LICENSE vendor/apr-util/dist/Makefile.in (contents, props changed) vendor/apr-util/dist/Makefile.win (contents, props changed) vendor/apr-util/dist/NOTICE vendor/apr-util/dist/NWGNUmakefile vendor/apr-util/dist/README vendor/apr-util/dist/apr-util.pc.in (contents, props changed) vendor/apr-util/dist/apr-util.spec vendor/apr-util/dist/aprutil.dsp vendor/apr-util/dist/aprutil.dsw vendor/apr-util/dist/apu-config.in (contents, props changed) vendor/apr-util/dist/buckets/ vendor/apr-util/dist/buckets/apr_brigade.c (contents, props changed) vendor/apr-util/dist/buckets/apr_buckets.c (contents, props changed) vendor/apr-util/dist/buckets/apr_buckets_alloc.c (contents, props changed) vendor/apr-util/dist/buckets/apr_buckets_eos.c (contents, props changed) vendor/apr-util/dist/buckets/apr_buckets_file.c (contents, props changed) vendor/apr-util/dist/buckets/apr_buckets_flush.c (contents, props changed) vendor/apr-util/dist/buckets/apr_buckets_heap.c (contents, props changed) vendor/apr-util/dist/buckets/apr_buckets_mmap.c (contents, props changed) vendor/apr-util/dist/buckets/apr_buckets_pipe.c (contents, props changed) vendor/apr-util/dist/buckets/apr_buckets_pool.c (contents, props changed) vendor/apr-util/dist/buckets/apr_buckets_refcount.c (contents, props changed) vendor/apr-util/dist/buckets/apr_buckets_simple.c (contents, props changed) vendor/apr-util/dist/buckets/apr_buckets_socket.c (contents, props changed) vendor/apr-util/dist/build-outputs.mk vendor/apr-util/dist/build.conf (contents, props changed) vendor/apr-util/dist/buildconf (contents, props changed) vendor/apr-util/dist/config.layout vendor/apr-util/dist/configure (contents, props changed) vendor/apr-util/dist/configure.in (contents, props changed) vendor/apr-util/dist/crypto/ vendor/apr-util/dist/crypto/apr_crypto.c (contents, props changed) vendor/apr-util/dist/crypto/apr_crypto_nss.c (contents, props changed) vendor/apr-util/dist/crypto/apr_crypto_nss.dsp vendor/apr-util/dist/crypto/apr_crypto_openssl.c (contents, props changed) vendor/apr-util/dist/crypto/apr_crypto_openssl.dsp vendor/apr-util/dist/crypto/apr_md4.c (contents, props changed) vendor/apr-util/dist/crypto/apr_md5.c (contents, props changed) vendor/apr-util/dist/crypto/apr_sha1.c (contents, props changed) vendor/apr-util/dist/crypto/getuuid.c (contents, props changed) vendor/apr-util/dist/crypto/uuid.c (contents, props changed) vendor/apr-util/dist/dbd/ vendor/apr-util/dist/dbd/NWGNUdbdfreetds vendor/apr-util/dist/dbd/NWGNUdbdmysql vendor/apr-util/dist/dbd/NWGNUdbdpgsql vendor/apr-util/dist/dbd/NWGNUdbdsqli2 vendor/apr-util/dist/dbd/NWGNUdbdsqli3 vendor/apr-util/dist/dbd/NWGNUmakefile vendor/apr-util/dist/dbd/apr_dbd.c (contents, props changed) vendor/apr-util/dist/dbd/apr_dbd_freetds.c (contents, props changed) vendor/apr-util/dist/dbd/apr_dbd_freetds.dsp vendor/apr-util/dist/dbd/apr_dbd_mysql.c (contents, props changed) vendor/apr-util/dist/dbd/apr_dbd_mysql.dsp vendor/apr-util/dist/dbd/apr_dbd_odbc.c (contents, props changed) vendor/apr-util/dist/dbd/apr_dbd_odbc.dsp vendor/apr-util/dist/dbd/apr_dbd_oracle.c (contents, props changed) vendor/apr-util/dist/dbd/apr_dbd_oracle.dsp vendor/apr-util/dist/dbd/apr_dbd_pgsql.c (contents, props changed) vendor/apr-util/dist/dbd/apr_dbd_pgsql.dsp vendor/apr-util/dist/dbd/apr_dbd_sqlite2.c (contents, props changed) vendor/apr-util/dist/dbd/apr_dbd_sqlite2.dsp vendor/apr-util/dist/dbd/apr_dbd_sqlite3.c (contents, props changed) vendor/apr-util/dist/dbd/apr_dbd_sqlite3.dsp vendor/apr-util/dist/dbm/ vendor/apr-util/dist/dbm/NWGNUdbmdb vendor/apr-util/dist/dbm/NWGNUdbmgdbm vendor/apr-util/dist/dbm/NWGNUmakefile vendor/apr-util/dist/dbm/apr_dbm.c (contents, props changed) vendor/apr-util/dist/dbm/apr_dbm_berkeleydb.c (contents, props changed) vendor/apr-util/dist/dbm/apr_dbm_db.dsp vendor/apr-util/dist/dbm/apr_dbm_gdbm.c (contents, props changed) vendor/apr-util/dist/dbm/apr_dbm_gdbm.dsp vendor/apr-util/dist/dbm/apr_dbm_ndbm.c (contents, props changed) vendor/apr-util/dist/dbm/apr_dbm_sdbm.c (contents, props changed) vendor/apr-util/dist/dbm/sdbm/ vendor/apr-util/dist/dbm/sdbm/sdbm.c (contents, props changed) vendor/apr-util/dist/dbm/sdbm/sdbm_hash.c (contents, props changed) vendor/apr-util/dist/dbm/sdbm/sdbm_lock.c (contents, props changed) vendor/apr-util/dist/dbm/sdbm/sdbm_pair.c (contents, props changed) vendor/apr-util/dist/dbm/sdbm/sdbm_pair.h (contents, props changed) vendor/apr-util/dist/dbm/sdbm/sdbm_private.h (contents, props changed) vendor/apr-util/dist/dbm/sdbm/sdbm_tune.h (contents, props changed) vendor/apr-util/dist/docs/ vendor/apr-util/dist/docs/doxygen.conf (contents, props changed) vendor/apr-util/dist/encoding/ vendor/apr-util/dist/encoding/apr_base64.c (contents, props changed) vendor/apr-util/dist/export_vars.sh.in (contents, props changed) vendor/apr-util/dist/hooks/ vendor/apr-util/dist/hooks/apr_hooks.c (contents, props changed) vendor/apr-util/dist/include/ vendor/apr-util/dist/include/apr_anylock.h (contents, props changed) vendor/apr-util/dist/include/apr_base64.h (contents, props changed) vendor/apr-util/dist/include/apr_buckets.h (contents, props changed) vendor/apr-util/dist/include/apr_crypto.h (contents, props changed) vendor/apr-util/dist/include/apr_date.h (contents, props changed) vendor/apr-util/dist/include/apr_dbd.h (contents, props changed) vendor/apr-util/dist/include/apr_dbm.h (contents, props changed) vendor/apr-util/dist/include/apr_hooks.h (contents, props changed) vendor/apr-util/dist/include/apr_ldap.h.in (contents, props changed) vendor/apr-util/dist/include/apr_ldap.hnw vendor/apr-util/dist/include/apr_ldap.hw vendor/apr-util/dist/include/apr_ldap_init.h (contents, props changed) vendor/apr-util/dist/include/apr_ldap_option.h (contents, props changed) vendor/apr-util/dist/include/apr_ldap_rebind.h (contents, props changed) vendor/apr-util/dist/include/apr_ldap_url.h (contents, props changed) vendor/apr-util/dist/include/apr_md4.h (contents, props changed) vendor/apr-util/dist/include/apr_md5.h (contents, props changed) vendor/apr-util/dist/include/apr_memcache.h (contents, props changed) vendor/apr-util/dist/include/apr_optional.h (contents, props changed) vendor/apr-util/dist/include/apr_optional_hooks.h (contents, props changed) vendor/apr-util/dist/include/apr_queue.h (contents, props changed) vendor/apr-util/dist/include/apr_reslist.h (contents, props changed) vendor/apr-util/dist/include/apr_rmm.h (contents, props changed) vendor/apr-util/dist/include/apr_sdbm.h (contents, props changed) vendor/apr-util/dist/include/apr_sha1.h (contents, props changed) vendor/apr-util/dist/include/apr_strmatch.h (contents, props changed) vendor/apr-util/dist/include/apr_thread_pool.h (contents, props changed) vendor/apr-util/dist/include/apr_uri.h (contents, props changed) vendor/apr-util/dist/include/apr_uuid.h (contents, props changed) vendor/apr-util/dist/include/apr_xlate.h (contents, props changed) vendor/apr-util/dist/include/apr_xml.h (contents, props changed) vendor/apr-util/dist/include/apu.h.in (contents, props changed) vendor/apr-util/dist/include/apu.hnw vendor/apr-util/dist/include/apu.hw vendor/apr-util/dist/include/apu_errno.h (contents, props changed) vendor/apr-util/dist/include/apu_version.h (contents, props changed) vendor/apr-util/dist/include/apu_want.h.in (contents, props changed) vendor/apr-util/dist/include/apu_want.hnw vendor/apr-util/dist/include/apu_want.hw vendor/apr-util/dist/include/private/ vendor/apr-util/dist/include/private/apr_crypto_internal.h (contents, props changed) vendor/apr-util/dist/include/private/apr_dbd_internal.h (contents, props changed) vendor/apr-util/dist/include/private/apr_dbd_odbc_v2.h (contents, props changed) vendor/apr-util/dist/include/private/apr_dbm_private.h (contents, props changed) vendor/apr-util/dist/include/private/apu_config.h.in (contents, props changed) vendor/apr-util/dist/include/private/apu_config.hnw vendor/apr-util/dist/include/private/apu_config.hw vendor/apr-util/dist/include/private/apu_internal.h (contents, props changed) vendor/apr-util/dist/include/private/apu_select_dbm.h.in (contents, props changed) vendor/apr-util/dist/include/private/apu_select_dbm.hw vendor/apr-util/dist/ldap/ vendor/apr-util/dist/ldap/NWGNUmakefile vendor/apr-util/dist/ldap/apr_ldap.dsp vendor/apr-util/dist/ldap/apr_ldap_init.c (contents, props changed) vendor/apr-util/dist/ldap/apr_ldap_option.c (contents, props changed) vendor/apr-util/dist/ldap/apr_ldap_rebind.c (contents, props changed) vendor/apr-util/dist/ldap/apr_ldap_stub.c (contents, props changed) vendor/apr-util/dist/ldap/apr_ldap_url.c (contents, props changed) vendor/apr-util/dist/libaprutil.dsp vendor/apr-util/dist/libaprutil.rc vendor/apr-util/dist/memcache/ vendor/apr-util/dist/memcache/apr_memcache.c (contents, props changed) vendor/apr-util/dist/misc/ vendor/apr-util/dist/misc/apr_date.c (contents, props changed) vendor/apr-util/dist/misc/apr_queue.c (contents, props changed) vendor/apr-util/dist/misc/apr_reslist.c (contents, props changed) vendor/apr-util/dist/misc/apr_rmm.c (contents, props changed) vendor/apr-util/dist/misc/apr_thread_pool.c (contents, props changed) vendor/apr-util/dist/misc/apu_dso.c (contents, props changed) vendor/apr-util/dist/misc/apu_version.c (contents, props changed) vendor/apr-util/dist/renames_pending vendor/apr-util/dist/strmatch/ vendor/apr-util/dist/strmatch/apr_strmatch.c (contents, props changed) vendor/apr-util/dist/test/ vendor/apr-util/dist/test/Makefile.in (contents, props changed) vendor/apr-util/dist/test/Makefile.win (contents, props changed) vendor/apr-util/dist/test/NWGNUaputest vendor/apr-util/dist/test/NWGNUmakefile vendor/apr-util/dist/test/abts.c (contents, props changed) vendor/apr-util/dist/test/abts.h (contents, props changed) vendor/apr-util/dist/test/abts_tests.h (contents, props changed) vendor/apr-util/dist/test/data/ vendor/apr-util/dist/test/data/billion-laughs.xml (contents, props changed) vendor/apr-util/dist/test/dbd.c (contents, props changed) vendor/apr-util/dist/test/nw_misc.c (contents, props changed) vendor/apr-util/dist/test/test_apu.h (contents, props changed) vendor/apr-util/dist/test/testall.dsw vendor/apr-util/dist/test/testbuckets.c (contents, props changed) vendor/apr-util/dist/test/testcrypto.c (contents, props changed) vendor/apr-util/dist/test/testdate.c (contents, props changed) vendor/apr-util/dist/test/testdbd.c (contents, props changed) vendor/apr-util/dist/test/testdbm.c (contents, props changed) vendor/apr-util/dist/test/testldap.c (contents, props changed) vendor/apr-util/dist/test/testmd4.c (contents, props changed) vendor/apr-util/dist/test/testmd5.c (contents, props changed) vendor/apr-util/dist/test/testmemcache.c (contents, props changed) vendor/apr-util/dist/test/testpass.c (contents, props changed) vendor/apr-util/dist/test/testqueue.c (contents, props changed) vendor/apr-util/dist/test/testreslist.c (contents, props changed) vendor/apr-util/dist/test/testrmm.c (contents, props changed) vendor/apr-util/dist/test/testssl.c (contents, props changed) vendor/apr-util/dist/test/teststrmatch.c (contents, props changed) vendor/apr-util/dist/test/testuri.c (contents, props changed) vendor/apr-util/dist/test/testutil.c (contents, props changed) vendor/apr-util/dist/test/testutil.h (contents, props changed) vendor/apr-util/dist/test/testutildll.dsp vendor/apr-util/dist/test/testutillib.dsp vendor/apr-util/dist/test/testuuid.c (contents, props changed) vendor/apr-util/dist/test/testxlate.c (contents, props changed) vendor/apr-util/dist/test/testxml.c (contents, props changed) vendor/apr-util/dist/uri/ vendor/apr-util/dist/uri/apr_uri.c (contents, props changed) vendor/apr-util/dist/xlate/ vendor/apr-util/dist/xlate/xlate.c (contents, props changed) vendor/apr-util/dist/xml/ vendor/apr-util/dist/xml/NWGNUmakefile vendor/apr-util/dist/xml/apr_xml.c (contents, props changed) Added: vendor/apr-util/dist/CHANGES ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/apr-util/dist/CHANGES Tue Jun 18 01:59:55 2013 (r251876) @@ -0,0 +1,62 @@ + -*- coding: utf-8 -*- +Changes with APR-Util 1.4.1 + + *) Apply Windows build fixes for the apr_crypto API. [Mladen Turk] + +Changes with APR-util 1.4.0 + + *) apr_ldap_init: Pass secure=1 to ldapssl_init() with Solaris LDAP SDK. + PR: 42682 [Stefan Fritsch] + + *) apr_memcache_server_create: Fix possible segfault. PR 51064. + [Michajlo Matijkiw ] + + *) apr_thread_pool: Fix thread unsafe pool usage. [Stefan Fritsch] + + *) Do not include apr.h and apr_errno.h from system search path in + apu_errno.h. PR 46487 [Rainer Jung] + + *) Add optional dbm, openssl and nss subpackages to the RPM spec file. + [Graham Leggett] + + *) apr_dbd_freetds: The sybdb.h header file might be freetds/sybdb.h + or sybdb.h. [Graham Leggett] + + *) Add apr_crypto implementations for OpenSSL and Mozilla NSS. Add a unit + test to verify the interoperability of the two modules. Builds default + to disabled unless explicitly enabled. + [Graham Leggett] + + *) Add the apr_crypto interface, a rewrite of the earlier apr_ssl code, + based on the modular dso interface used for dbd and ldap. Initially, + the interface supports symmetrical encryption and decryption. The + purpose of the interface is to offer portable and interoperable + access to basic crypto using the native crypto libraries present on + each platform. [Graham Leggett] + + *) Add trace probes to hooks, making it easier to inspect APR Hook based + applications with DTrace or other such mechanisms. + [Theo Schlossnagle , generalized by Jeff Trawick] + + *) Implement resource list when threads are unavailable. PR 24325 + [Bojan Smojver] + +Changes for APR-util 1.3.x and later: + + *) http://svn.apache.org/viewvc/apr/apr-util/branches/1.3.x/CHANGES?view=markup + +Changes for APR-util 1.2.x and later: + + *) http://svn.apache.org/viewvc/apr/apr-util/branches/1.2.x/CHANGES?view=markup + +Changes for APR-util 1.1.x and later: + + *) http://svn.apache.org/viewvc/apr/apr-util/branches/1.1.x/CHANGES?view=markup + +Changes for APR-util 1.0.x and later: + + *) http://svn.apache.org/viewvc/apr/apr-util/branches/1.0.x/CHANGES?view=markup + +Changes for APR-util 0.9.x and later/earlier: + + *) http://svn.apache.org/viewvc/apr/apr-util/branches/0.9.x/CHANGES?view=markup Added: vendor/apr-util/dist/LICENSE ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/apr-util/dist/LICENSE Tue Jun 18 01:59:55 2013 (r251876) @@ -0,0 +1,443 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. + + + +APACHE PORTABLE RUNTIME SUBCOMPONENTS: + +The Apache Portable Runtime includes a number of subcomponents with +separate copyright notices and license terms. Your use of the source +code for the these subcomponents is subject to the terms and +conditions of the following licenses. + +For the include\apr_md5.h component: +/* + * This is work is derived from material Copyright RSA Data Security, Inc. + * + * The RSA copyright statement and Licence for that original material is + * included below. This is followed by the Apache copyright statement and + * licence for the modifications made to that material. + */ + +/* Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All + rights reserved. + + License to copy and use this software is granted provided that it + is identified as the "RSA Data Security, Inc. MD5 Message-Digest + Algorithm" in all material mentioning or referencing this software + or this function. + + License is also granted to make and use derivative works provided + that such works are identified as "derived from the RSA Data + Security, Inc. MD5 Message-Digest Algorithm" in all material + mentioning or referencing the derived work. + + RSA Data Security, Inc. makes no representations concerning either + the merchantability of this software or the suitability of this + software for any particular purpose. It is provided "as is" + without express or implied warranty of any kind. + + These notices must be retained in any copies of any part of this + documentation and/or software. + */ + +For the passwd\apr_md5.c component: + +/* + * This is work is derived from material Copyright RSA Data Security, Inc. + * + * The RSA copyright statement and Licence for that original material is + * included below. This is followed by the Apache copyright statement and + * licence for the modifications made to that material. + */ + +/* MD5C.C - RSA Data Security, Inc., MD5 message-digest algorithm + */ + +/* Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All + rights reserved. + + License to copy and use this software is granted provided that it + is identified as the "RSA Data Security, Inc. MD5 Message-Digest + Algorithm" in all material mentioning or referencing this software + or this function. + + License is also granted to make and use derivative works provided + that such works are identified as "derived from the RSA Data + Security, Inc. MD5 Message-Digest Algorithm" in all material + mentioning or referencing the derived work. + + RSA Data Security, Inc. makes no representations concerning either + the merchantability of this software or the suitability of this + software for any particular purpose. It is provided "as is" + without express or implied warranty of any kind. + + These notices must be retained in any copies of any part of this + documentation and/or software. + */ +/* + * The apr_md5_encode() routine uses much code obtained from the FreeBSD 3.0 + * MD5 crypt() function, which is licenced as follows: + * ---------------------------------------------------------------------------- + * "THE BEER-WARE LICENSE" (Revision 42): + * wrote this file. As long as you retain this notice you + * can do whatever you want with this stuff. If we meet some day, and you think + * this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp + * ---------------------------------------------------------------------------- + */ + +For the crypto\apr_md4.c component: + + * This is derived from material copyright RSA Data Security, Inc. + * Their notice is reproduced below in its entirety. + * + * Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All + * rights reserved. + * + * License to copy and use this software is granted provided that it + * is identified as the "RSA Data Security, Inc. MD4 Message-Digest + * Algorithm" in all material mentioning or referencing this software + * or this function. + * + * License is also granted to make and use derivative works provided + * that such works are identified as "derived from the RSA Data + * Security, Inc. MD4 Message-Digest Algorithm" in all material + * mentioning or referencing the derived work. + * + * RSA Data Security, Inc. makes no representations concerning either + * the merchantability of this software or the suitability of this + * software for any particular purpose. It is provided "as is" + * without express or implied warranty of any kind. + * + * These notices must be retained in any copies of any part of this + * documentation and/or software. + */ + +For the include\apr_md4.h component: + + * + * This is derived from material copyright RSA Data Security, Inc. + * Their notice is reproduced below in its entirety. + * + * Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All + * rights reserved. + * + * License to copy and use this software is granted provided that it + * is identified as the "RSA Data Security, Inc. MD4 Message-Digest + * Algorithm" in all material mentioning or referencing this software + * or this function. + * + * License is also granted to make and use derivative works provided + * that such works are identified as "derived from the RSA Data + * Security, Inc. MD4 Message-Digest Algorithm" in all material + * mentioning or referencing the derived work. + * + * RSA Data Security, Inc. makes no representations concerning either + * the merchantability of this software or the suitability of this + * software for any particular purpose. It is provided "as is" + * without express or implied warranty of any kind. + * + * These notices must be retained in any copies of any part of this + * documentation and/or software. + */ + +For the test\testmd4.c component: + + * + * This is derived from material copyright RSA Data Security, Inc. + * Their notice is reproduced below in its entirety. + * + * Copyright (C) 1990-2, RSA Data Security, Inc. Created 1990. All + * rights reserved. + * + * RSA Data Security, Inc. makes no representations concerning either + * the merchantability of this software or the suitability of this + * software for any particular purpose. It is provided "as is" + * without express or implied warranty of any kind. + * + * These notices must be retained in any copies of any part of this + * documentation and/or software. + */ + +For the xml\expat\conftools\install-sh component: + +# +# install - install a program, script, or datafile +# This comes from X11R5 (mit/util/scripts/install.sh). +# +# Copyright 1991 by the Massachusetts Institute of Technology +# +# Permission to use, copy, modify, distribute, and sell this software and its +# documentation for any purpose is hereby granted without fee, provided that +# the above copyright notice appear in all copies and that both that +# copyright notice and this permission notice appear in supporting +# documentation, and that the name of M.I.T. not be used in advertising or +# publicity pertaining to distribution of the software without specific, +# written prior permission. M.I.T. makes no representations about the +# suitability of this software for any purpose. It is provided "as is" +# without express or implied warranty. +# + +For the expat xml parser component: + +Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd + and Clark Cooper + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==================================================================== + +For the ldap/apr_ldap_url.c component: + +/* Portions Copyright 1998-2002 The OpenLDAP Foundation + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted only as authorized by the OpenLDAP + * Public License. A copy of this license is available at + * http://www.OpenLDAP.org/license.html or in file LICENSE in the + * top-level directory of the distribution. + * + * OpenLDAP is a registered trademark of the OpenLDAP Foundation. + * + * Individual files and/or contributed packages may be copyright by + * other parties and subject to additional restrictions. + * + * This work is derived from the University of Michigan LDAP v3.3 + * distribution. Information concerning this software is available + * at: http://www.umich.edu/~dirsvcs/ldap/ + * + * This work also contains materials derived from public sources. + * + * Additional information about OpenLDAP can be obtained at: + * http://www.openldap.org/ + */ + +/* + * Portions Copyright (c) 1992-1996 Regents of the University of Michigan. + * All rights reserved. + * + * Redistribution and use in source and binary forms are permitted + * provided that this notice is preserved and that due credit is given + * to the University of Michigan at Ann Arbor. The name of the University + * may not be used to endorse or promote products derived from this + * software without specific prior written permission. This software + * is provided ``as is'' without express or implied warranty. + */ + Added: vendor/apr-util/dist/Makefile.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/apr-util/dist/Makefile.in Tue Jun 18 01:59:55 2013 (r251876) @@ -0,0 +1,123 @@ +# +# Top-level Makefile for APRUTIL +# +CPP = @CPP@ + +# gets substituted into some targets +APRUTIL_MAJOR_VERSION=@APRUTIL_MAJOR_VERSION@ +APRUTIL_DOTTED_VERSION=@APRUTIL_DOTTED_VERSION@ + +srcdir = @srcdir@ +VPATH = @srcdir@ + +INCLUDES = @APRUTIL_PRIV_INCLUDES@ @APR_INCLUDES@ @APRUTIL_INCLUDES@ +APRUTIL_LDFLAGS = @APRUTIL_LDFLAGS@ +APRUTIL_LIBS = @APRUTIL_LIBS@ + +TARGET_LIB = lib@APRUTIL_LIBNAME@.la +INSTALL_SUBDIRS = @APR_ICONV_DIR@ @APR_XML_DIR@ +EXTRA_SOURCE_DIRS = @APR_ICONV_DIR@ @APR_XML_DIR@ +APRUTIL_PCFILE = apr-util-$(APRUTIL_MAJOR_VERSION).pc +APU_CONFIG = apu-$(APRUTIL_MAJOR_VERSION)-config +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ + +APU_MODULES = @APU_MODULES@ +LINK_MODULE = $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LT_LDFLAGS) $(ALL_CFLAGS) $(ALL_LDFLAGS) $(APRUTIL_LDFLAGS) -release $(APRUTIL_MAJOR_VERSION) -module -rpath $(APU_DSO_LIBDIR) +APU_DSO_LIBDIR = @APU_DSO_LIBDIR@ + +LT_VERSION = @APU_LTVERSION@ + +EXTRA_OBJECTS = @EXTRA_OBJECTS@ + +LDADD_dbd_pgsql = @LDADD_dbd_pgsql@ +LDADD_dbd_oracle = @LDADD_dbd_oracle@ +LDADD_dbd_sqlite2 = @LDADD_dbd_sqlite2@ +LDADD_dbd_sqlite3 = @LDADD_dbd_sqlite3@ +LDADD_dbd_mysql = @LDADD_dbd_mysql@ +LDADD_dbd_freetds = @LDADD_dbd_freetds@ +LDADD_dbd_odbc = @LDADD_dbd_odbc@ +LDADD_dbm_db = @LDADD_dbm_db@ +LDADD_dbm_gdbm = @LDADD_dbm_gdbm@ +LDADD_dbm_ndbm = @LDADD_dbm_ndbm@ +LDADD_ldap = @LDADD_ldap@ +LDADD_crypto_openssl = @LDADD_crypto_openssl@ +LDADD_crypto_nss = @LDADD_crypto_nss@ + +TARGETS = $(TARGET_LIB) aprutil.exp apu-config.out $(APU_MODULES) + +# bring in rules.mk for standard functionality +@INCLUDE_RULES@ +@INCLUDE_OUTPUTS@ + +CLEAN_SUBDIRS = test @APR_ICONV_DIR@ @APR_XML_DIR@ + +CLEAN_TARGETS = exports.c export_vars.c aprutil.exp .make.dirs apu-config.out +DISTCLEAN_TARGETS = config.cache config.log config.status libtool \ + include/private/apu_config.h include/private/apu_private.h \ + include/private/apu_select_dbm.h include/apr_ldap.h include/apu.h \ + export_vars.sh $(APU_CONFIG) build/rules.mk include/apu_want.h \ + apr-util.pc build/pkg/pkginfo +EXTRACLEAN_TARGETS = configure aclocal.m4 include/private/apu_config.h.in \ + exports.c build-outputs.mk \ + build/apr_common.m4 build/find_apr.m4 build/install.sh \ + build/config.guess build/config.sub + +prefix=@prefix@ +exec_prefix=@exec_prefix@ +bindir=@bindir@ +libdir=@libdir@ +includedir=@includedir@ +top_srcdir=@abs_srcdir@ +top_blddir=@abs_builddir@ + +# Create apu-config script suitable for the install tree +apu-config.out: $(APU_CONFIG) + sed 's,^\(location=\).*$$,\1installed,' < $(APU_CONFIG) > $@ + +install: $(TARGETS) install-modules + $(APR_MKDIR) $(DESTDIR)$(includedir) $(DESTDIR)$(libdir)/pkgconfig \ + $(DESTDIR)$(libdir) $(DESTDIR)$(bindir) + for f in $(top_srcdir)/include/*.h $(top_blddir)/include/*.h; do \ + $(INSTALL_DATA) $${f} $(DESTDIR)$(includedir); \ + done + $(INSTALL_DATA) apr-util.pc $(DESTDIR)$(libdir)/pkgconfig/$(APRUTIL_PCFILE) + list='$(INSTALL_SUBDIRS)'; for i in $$list; do \ + ( cd $$i ; $(MAKE) DESTDIR=$(DESTDIR) install ); \ + done + $(LIBTOOL) --mode=install $(INSTALL) -m 755 $(TARGET_LIB) $(DESTDIR)$(libdir) + $(INSTALL_DATA) aprutil.exp $(DESTDIR)$(libdir) + $(INSTALL) -m 755 apu-config.out $(DESTDIR)$(bindir)/$(APU_CONFIG) + +$(TARGET_LIB): $(OBJECTS) $(EXTRA_OBJECTS) + $(LINK) @lib_target@ $(EXTRA_OBJECTS) $(ALL_LIBS) $(APRUTIL_LDFLAGS) $(APRUTIL_LIBS) + +install-modules: install-modules-@APU_HAVE_MODULES@ + +install-modules-no: + +install-modules-yes: $(APU_MODULES) + $(APR_MKDIR) $(DESTDIR)$(APU_DSO_LIBDIR) + @for m in $(APU_MODULES); do $(LIBTOOL) $(LT_LTFLAGS) $(LTFLAGS) --mode=install $(INSTALL) -m 755 $$m $(DESTDIR)$(APU_DSO_LIBDIR); done + +exports.c: $(HEADERS) + $(APR_MKEXPORT) $(HEADERS) > $@ + +export_vars.c: $(HEADERS) + $(APR_MKVAREXPORT) $(HEADERS) > $@ + +aprutil.exp: exports.c export_vars.c + @echo "#! lib@APRUTIL_LIBNAME@.so" > $@ + @echo "* This file was AUTOGENERATED at build time." >> $@ + @echo "* Please do not edit by hand." >> $@ + $(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) exports.c | grep "ap_hack_" | sed -e 's/^.*[)]\(.*\);$$/\1/' >> $@ + $(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) export_vars.c | sed -e 's/^\#[^!]*//' | sed -e '/^$$/d' >> $@ + +dox: + doxygen $(top_srcdir)/docs/doxygen.conf + +test: check +check: $(TARGET_LIB) + cd test && $(MAKE) all check + +.PHONY: install-modules install-modules-yes install-modules-no dox test check Added: vendor/apr-util/dist/Makefile.win ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/apr-util/dist/Makefile.win Tue Jun 18 01:59:55 2013 (r251876) @@ -0,0 +1,365 @@ +# Makefile.win for Win32 APR + APR-iconv + APR-util +# +# Targets are: +# +# buildall - compile everything +# checkall - run APR + APR-util regression tests +# install - compile everything +# clean - mop up everything +# +# You can override the build mechansim, choose only one; +# +# USEMAK=1 - compile from exported make files +# USEDSW=1 - compile from .dsw / .dsp VC6 projects +# USESLN=1 - compile from converted .sln / .vcproj VC7+ files +# +# Define ARCH to your desired preference (your PATH must point +# to the correct compiler tools!) Choose only one; +# +# ARCH="Win32 Release" +# ARCH="Win32 Debug" +# ARCH="Win32 Release9x" +# ARCH="Win32 Debug9x" +# ARCH="x64 Release" +# ARCH="x64 Debug" +# +# Provide the APR_PATH, API_PATH and APU_PATH entirely relative +# to one another! At this time, building the libraries themselves +# is only expected to work if the defaults (../apr, ../apr-iconv +# and ../apr-util) are used, or if they are built with USEMAK=1. +# +# APR_PATH=..\apr-1.3.0 +# API_PATH=..\apr-iconv-1.3.0 +# APU_PATH=..\apr-util-1.3.0 +# +# Provide a DBD_LIST argument after configuring LIB and INCLUDE with +# the SDK paths of the corresponding client support libraries. +# ODBC is always built on Windows, so it does not get included in DBD_LIST +# Note that at this time, none of these are supported on win32, per say. +# +# DBD_LIST="sqlite3 pgsql oracle mysql freetds" +# +# Provide a DBM_LIST argument after configuring LIB and INCLUDE with +# the SDK paths of the corresponding database support libraries. Right +# now only db has been configured, gdbm and ndbm require additional study. +# Note that at this time, none of these are supported on win32, per say. +# +# DBM_LIST="db gdbm" +# +# Provide a CRYPTO_LIST argument after configuring LIB and INCLUDE with +# the SDK paths of the corresponding cryptographic support libraries. +# +# CRYPTO_LIST="nss openssl" +# +# For example; +# +# nmake -f Makefile.win PREFIX=C:\APR buildall checkall installall clean +# + +!IF EXIST("aprutil.sln") && ([devenv /help > NUL 2>&1] == 0) \ + && !defined(USEMAK) && !defined(USEDSW) +USESLN=1 +USEMAK=0 +USEDSW=0 +!ELSEIF EXIST("aprutil.mak") && !defined(USEDSW) +USESLN=0 +USEMAK=1 +USEDSW=0 +!ELSE +USESLN=0 +USEMAK=0 +USEDSW=1 +!ENDIF + +PREFIX=..\apr-dist + +!IF [$(COMSPEC) /c cl /nologo /? \ + | $(SystemRoot)\System32\find.exe "x64" >NUL ] == 0 +ARCH=x64 Release +!ELSE +ARCH=Win32 Release +!ENDIF + +APR_PATH=..\apr +API_PATH=..\apr-iconv +APU_PATH=..\apr-util + +!MESSAGE ARCH = $(ARCH) +!MESSAGE APR_PATH = $(APR_PATH) +!MESSAGE API_PATH = $(API_PATH) (apr-iconv) +!MESSAGE APU_PATH = $(APU_PATH) (apr-util) +!MESSAGE PREFIX = $(PREFIX) (install path) +!MESSAGE DBD_LIST = $(DBD_LIST) +!MESSAGE DBM_LIST = $(DBM_LIST) +!MESSAGE CRYPTO_LIST = $(CRYPTO_LIST) + +# Utility and Translation things, nothing here for the user +# +!IF "$(ARCH)" == "Win32 Release" +SLNARCH=Release|Win32 +ARCHPATH=Release +LIBSPATH=LibR +ARCHOSPATH=Release +LIBSOSPATH=LibR +!ELSEIF "$(ARCH)" == "Win32 Debug" +SLNARCH=Debug|Win32 +ARCHPATH=Debug +LIBSPATH=LibD +ARCHOSPATH=Debug +LIBSOSPATH=LibD +!ELSEIF "$(ARCH)" == "Win32 Release9x" +SLNARCH=Release9x|Win32 +ARCHPATH=Release +LIBSPATH=LibR +ARCHOSPATH=9x\Release +LIBSOSPATH=9x\LibR +!ELSEIF "$(ARCH)" == "Win32 Debug9x" +SLNARCH=Debug9x|Win32 +ARCHPATH=Debug +LIBSPATH=LibD +ARCHOSPATH=9x\Debug +LIBSOSPATH=9x\LibD +!ELSEIF "$(ARCH)" == "x64 Release" +SLNARCH=Release|x64 +ARCHPATH=x64\Release +LIBSPATH=x64\LibR +ARCHOSPATH=x64\Release +LIBSOSPATH=x64\LibR +!ELSEIF "$(ARCH)" == "x64 Debug" +SLNARCH=Debug|x64 +ARCHPATH=x64\Debug +LIBSPATH=x64\LibD +ARCHOSPATH=x64\Debug +LIBSOSPATH=x64\LibD +!ENDIF + +!IFNDEF MAKEOPT +# Only default the behavior if MAKEOPT= is omitted +!IFDEF _NMAKE_VER +# Microsoft NMake options +MAKEOPT=-nologo +!ELSEIF "$(MAKE)" == "make" +# Borland make options? Not really supported (yet) +MAKEOPT=-s -N +!ENDIF +!ENDIF + + +# Sanity Checks +# +!IF !EXIST("$(APR_PATH)\apr.dsp") || !EXIST("$(API_PATH)\apriconv.dsp") \ + || !EXIST("$(APU_PATH)\aprutil.dsp") +!MESSAGE Please check out or download and unpack the Apache Portability Runtime +!MESSAGE sources (apr, apr-iconv and apr-util) under a single parent dir, +!MESSAGE or provide APR_PATH, API_PATH and APU_PATH (all relative to each other, +!MESSAGE or all absolute paths). +!MESSAGE Apache cannot build without these libraries! +!MESSAGE +!ERROR Need apr and apr-iconv alongside apr-util to build! +!ENDIF + + +all: buildall checkall + +# To help win32 pick up the locations where they don't fall in the usual +# path locations. This may not be completely effective for USESLN/USEDSP +# oriented builds, just yet +# +LIB=$(APR_PATH)\$(ARCHOSPATH);$(APR_PATH)\$(LIBSOSPATH);$(API_PATH)\$(ARCHPATH);$(API_PATH)\$(LIBSPATH);$(APU_PATH)\$(ARCHPATH);$(APU_PATH)\$(LIBSPATH);$(LIB) +INCLUDE=$(APR_PATH)\include;$(API_PATH)\include;$(INCLUDE) + +!IF $(USEMAK) == 1 + +clean: + $(MAKE) $(MAKEOPT) -f Makefile.win ARCH="$(ARCH)" \ + CTARGET=CLEAN buildall + +buildall: + cd $(APR_PATH) + $(MAKE) $(MAKEOPT) -f apr.mak CFG="apr - $(ARCH)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f libapr.mak CFG="libapr - $(ARCH)" RECURSE=0 $(CTARGET) + cd build + $(MAKE) $(MAKEOPT) -f aprapp.mak CFG="aprapp - $(ARCH)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f libaprapp.mak CFG="libaprapp - $(ARCH)" RECURSE=0 $(CTARGET) + cd .. + cd $(API_PATH) + $(MAKE) $(MAKEOPT) -f apriconv.mak CFG="apriconv - $(ARCH)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f libapriconv.mak CFG="libapriconv - $(ARCH)" RECURSE=0 $(CTARGET) +!IF "$(CTARGET)" == "CLEAN" + $(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \ + BUILD_MODE="$(ARCH)" BIND_MODE=shared API_SOURCE=. +!ELSE + cd ccs + $(MAKE) $(MAKEOPT) -f Makefile.win all \ + BUILD_MODE="$(ARCH)" BIND_MODE=shared + cd ..\ces + $(MAKE) $(MAKEOPT) -f Makefile.win all \ + BUILD_MODE="$(ARCH)" BIND_MODE=shared + cd .. +!ENDIF + cd $(APU_PATH)\xml\expat\lib + $(MAKE) $(MAKEOPT) -f xml.mak CFG="xml - $(ARCH)" RECURSE=0 $(CTARGET) + cd ..\..\.. + $(MAKE) $(MAKEOPT) -f aprutil.mak CFG="aprutil - $(ARCH)" RECURSE=0 $(CTARGET) + $(MAKE) $(MAKEOPT) -f libaprutil.mak CFG="libaprutil - $(ARCH)" RECURSE=0 $(CTARGET) + cd ldap + $(MAKE) $(MAKEOPT) -f apr_ldap.mak CFG="apr_ldap - $(ARCH)" RECURSE=0 $(CTARGET) + cd .. + cd dbd + for %d in (odbc $(DBD_LIST)) do \ + $(MAKE) $(MAKEOPT) -f apr_dbd_%d.mak CFG="apr_dbd_%d - $(ARCH)" RECURSE=0 $(CTARGET) + cd .. + cd dbm + for %d in ($(DBM_LIST) x) do if not %d == x \ + $(MAKE) $(MAKEOPT) -f apr_dbm_%d.mak CFG="apr_dbm_%d - $(ARCH)" RECURSE=0 $(CTARGET) + cd .. + cd crypto + for %d in ($(CRYPTO_LIST) x) do if not %d == x \ + $(MAKE) $(MAKEOPT) -f apr_crypto_%d.mak CFG="apr_crypto_%d - $(ARCH)" RECURSE=0 $(CTARGET) + cd .. + +!ELSEIF $(USESLN) == 1 + +clean: + -for %d in (odbc $(DBD_LIST)) do \ + devenv aprutil.sln /useenv /clean "$(SLNARCH)" /project apr_dbd_%d + -for %d in ($(DBM_LIST) x) do if not %d == x \ + devenv aprutil.sln /useenv /clean "$(SLNARCH)" /project apr_dbm_%d + -for %d in ($(CRYPTO_LIST) x) do if not %d == x \ + devenv aprutil.sln /useenv /clean "$(SLNARCH)" /project apr_crypto_%d + -devenv aprutil.sln /useenv /clean "$(SLNARCH)" /project apr_ldap + -devenv aprutil.sln /useenv /clean "$(SLNARCH)" /project libaprutil + -devenv aprutil.sln /useenv /clean "$(SLNARCH)" /project aprutil + cd $(API_PATH) + -$(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \ + BUILD_MODE="$(ARCH)" BIND_MODE=shared API_SOURCE=. + cd $(APU_PATH) + -devenv aprutil.sln /useenv /clean "$(SLNARCH)" /project libapriconv + -devenv aprutil.sln /useenv /clean "$(SLNARCH)" /project apriconv + -devenv aprutil.sln /useenv /clean "$(SLNARCH)" /project libaprapp + -devenv aprutil.sln /useenv /clean "$(SLNARCH)" /project aprapp + -devenv aprutil.sln /useenv /clean "$(SLNARCH)" /project libapr + -devenv aprutil.sln /useenv /clean "$(SLNARCH)" /project apr + +buildall: + devenv aprutil.sln /useenv /build "$(SLNARCH)" /project aprapp + devenv aprutil.sln /useenv /build "$(SLNARCH)" /project libaprapp + devenv aprutil.sln /useenv /build "$(SLNARCH)" /project aprutil + devenv aprutil.sln /useenv /build "$(SLNARCH)" /project libaprutil + devenv aprutil.sln /useenv /build "$(SLNARCH)" /project apr_ldap + for %d in (odbc $(DBD_LIST)) do \ + devenv aprutil.sln /useenv /build "$(SLNARCH)" /project apr_dbd_%d + for %d in ($(DBM_LIST) x) do if not %d == x \ + devenv aprutil.sln /useenv /build "$(SLNARCH)" /project apr_dbm_%d + for %d in ($(CRYPTO_LIST) x) do if not %d == x \ + devenv aprutil.sln /useenv /build "$(SLNARCH)" /project apr_crypto_%d + +!ELSE +# $(USEDSP) == 1 + +clean: + -for %d in (odbc $(DBD_LIST)) do \ + msdev aprutil.dsw /USEENV /MAKE "apr_dbd_%d - $(ARCH)" /CLEAN + -for %d in ($(DBM_LIST) x) do if not %d == x \ + msdev aprutil.dsw /USEENV /MAKE "apr_dbm_%d - $(ARCH)" /CLEAN + -for %d in ($(CRYPTO_LIST) x) do if not %d == x \ + msdev aprutil.dsw /USEENV /MAKE "apr_crypto_%d - $(ARCH)" /CLEAN + -msdev aprutil.dsw /USEENV /MAKE "apr_ldap - $(ARCH)" /CLEAN + -msdev aprutil.dsw /USEENV /MAKE "libaprutil - $(ARCH)" /CLEAN + -msdev aprutil.dsw /USEENV /MAKE "aprutil - $(ARCH)" /CLEAN + cd $(API_PATH) + $(MAKE) $(MAKEOPT) -f build\modules.mk.win clean \ + BUILD_MODE="$(ARCH)" BIND_MODE=shared API_SOURCE=. + cd $(APU_PATH) + -msdev aprutil.dsw /USEENV /MAKE "libapriconv - $(ARCH)" /CLEAN + -msdev aprutil.dsw /USEENV /MAKE "apriconv - $(ARCH)" /CLEAN + -msdev aprutil.dsw /USEENV /MAKE "libaprapp - $(ARCH)" /CLEAN + -msdev aprutil.dsw /USEENV /MAKE "aprapp - $(ARCH)" /CLEAN + -msdev aprutil.dsw /USEENV /MAKE "libapr - $(ARCH)" /CLEAN + -msdev aprutil.dsw /USEENV /MAKE "apr - $(ARCH)" /CLEAN + +buildall: + @msdev aprutil.dsw /USEENV /MAKE "aprapp - $(ARCH)" + @msdev aprutil.dsw /USEENV /MAKE "aprutil - $(ARCH)" + @msdev aprutil.dsw /USEENV /MAKE "libaprapp - $(ARCH)" + @msdev aprutil.dsw /USEENV /MAKE "libaprutil - $(ARCH)" + @msdev aprutil.dsw /USEENV /MAKE "apr_ldap - $(ARCH)" + @for %d in (odbc $(DBD_LIST)) do \ + msdev aprutil.dsw /USEENV /MAKE "apr_dbd_%d - $(ARCH)" + @for %d in ($(DBM_LIST) x) do if not %d == x \ + msdev aprutil.dsw /USEENV /MAKE "apr_dbm_%d - $(ARCH)" + @for %d in ($(CRYPTO_LIST) x) do if not %d == x \ + msdev aprutil.dsw /USEENV /MAKE "apr_crypto_%d - $(ARCH)" + +!ENDIF + + +checkapr: + cd $(APR_PATH)\test + $(MAKE) $(MAKEOPT) -f Makefile.win MODEL=static \ + OUTDIR=$(LIBSOSPATH) check + $(MAKE) $(MAKEOPT) -f Makefile.win MODEL=dynamic \ + OUTDIR=$(ARCHOSPATH) check + cd .. + cd $(APU_PATH) + +checkapu: + cd $(APU_PATH) + cd test + $(MAKE) $(MAKEOPT) -f Makefile.win MODEL=static \ + OUTDIR=$(LIBSPATH) APROUTDIR=$(LIBSOSPATH) \ + APR_PATH=..\$(APR_PATH) API_PATH=..\$(API_PATH) check + $(MAKE) $(MAKEOPT) -f Makefile.win MODEL=dynamic \ + OUTDIR=$(ARCHPATH) APROUTDIR=$(ARCHOSPATH) \ + APR_PATH=..\$(APR_PATH) API_PATH=..\$(API_PATH) check + cd .. + +checkall: checkapr checkapu + + +install: + echo Y >.y + echo A >.A + @if NOT EXIST "$(PREFIX)\." mkdir "$(PREFIX)" + @if NOT EXIST "$(PREFIX)\bin\." mkdir "$(PREFIX)\bin" + @if NOT EXIST "$(PREFIX)\bin\iconv\." mkdir "$(PREFIX)\bin\iconv" + @if NOT EXIST "$(PREFIX)\include\." mkdir "$(PREFIX)\include" + @if NOT EXIST "$(PREFIX)\lib\." mkdir "$(PREFIX)\lib" + copy CHANGES "$(PREFIX)\CHANGES.txt" <.y + copy LICENSE "$(PREFIX)\LICENSE.txt" <.y + copy NOTICE "$(PREFIX)\NOTICE.txt" <.y + xcopy $(APR_PATH)\include\*.h "$(PREFIX)\include\" /d < .a + xcopy $(APU_PATH)\include\*.h "$(PREFIX)\include\" /d < .a + copy $(APR_PATH)\$(LIBSOSPATH)\apr-1.lib "$(PREFIX)\lib\" <.y + copy $(APR_PATH)\$(LIBSOSPATH)\apr-1.pdb "$(PREFIX)\lib\" <.y + copy $(APU_PATH)\$(LIBSPATH)\aprutil-1.lib "$(PREFIX)\lib\" <.y + copy $(APU_PATH)\$(LIBSPATH)\aprutil-1.pdb "$(PREFIX)\lib\" <.y + copy $(APR_PATH)\$(ARCHOSPATH)\libapr-1.lib "$(PREFIX)\lib\" <.y + copy $(APR_PATH)\$(ARCHOSPATH)\libapr-1.exp "$(PREFIX)\lib\" <.y + copy $(APU_PATH)\$(ARCHPATH)\libaprutil-1.lib "$(PREFIX)\lib\" <.y + copy $(APU_PATH)\$(ARCHPATH)\libaprutil-1.exp "$(PREFIX)\lib\" <.y + copy $(APR_PATH)\$(ARCHOSPATH)\libapr-1.dll "$(PREFIX)\bin\" <.y + copy $(APR_PATH)\$(ARCHOSPATH)\libapr-1.pdb "$(PREFIX)\bin\" <.y + copy $(API_PATH)\$(ARCHPATH)\libapriconv-1.dll "$(PREFIX)\bin\" <.y + copy $(API_PATH)\$(ARCHPATH)\libapriconv-1.pdb "$(PREFIX)\bin\" <.y + copy $(APU_PATH)\$(ARCHPATH)\libaprutil-1.dll "$(PREFIX)\bin\" <.y + copy $(APU_PATH)\$(ARCHPATH)\libaprutil-1.pdb "$(PREFIX)\bin\" <.y + copy $(APU_PATH)\ldap\$(ARCHPATH)\apr_ldap-1.dll "$(PREFIX)\bin\" <.y + copy $(APU_PATH)\ldap\$(ARCHPATH)\apr_ldap-1.pdb "$(PREFIX)\bin\" <.y + for %d in (odbc $(DBD_LIST)) do ( \ + copy $(APU_PATH)\dbd\$(ARCHPATH)\apr_dbd_%d-1.dll "$(PREFIX)\bin\" <.y && \ + copy $(APU_PATH)\dbd\$(ARCHPATH)\apr_dbd_%d-1.pdb "$(PREFIX)\bin\" <.y \ + ) + for %d in ($(DBM_LIST) x) do if not %d == x ( \ + copy $(APU_PATH)\dbm\$(ARCHPATH)\apr_dbm_%d-1.dll "$(PREFIX)\bin\" <.y && \ + copy $(APU_PATH)\dbm\$(ARCHPATH)\apr_dbm_%d-1.pdb "$(PREFIX)\bin\" <.y \ + ) + for %d in ($(CRYPTO_LIST) x) do if not %d == x ( \ + copy $(APU_PATH)\crypto\$(ARCHPATH)\apr_crypto_%d-1.dll "$(PREFIX)\bin\" <.y && \ + copy $(APU_PATH)\crypto\$(ARCHPATH)\apr_crypto_%d-1.pdb "$(PREFIX)\bin\" <.y \ + ) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 02:00:51 2013 Return-Path: Delivered-To: svn-src-all@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 AC182C64; Tue, 18 Jun 2013 02:00:51 +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 9D27C1EDB; Tue, 18 Jun 2013 02:00:51 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I20pMQ037602; Tue, 18 Jun 2013 02:00:51 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I20oCO037593; Tue, 18 Jun 2013 02:00:50 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306180200.r5I20oCO037593@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 02:00:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r251877 - in vendor/serf: . dist dist/auth dist/buckets dist/build X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 02:00:51 -0000 Author: peter Date: Tue Jun 18 02:00:50 2013 New Revision: 251877 URL: http://svnweb.freebsd.org/changeset/base/251877 Log: Import serf-1.2.1 Added: vendor/serf/ vendor/serf/dist/ vendor/serf/dist/CHANGES vendor/serf/dist/LICENSE vendor/serf/dist/Makefile.in (contents, props changed) vendor/serf/dist/NOTICE vendor/serf/dist/README vendor/serf/dist/auth/ vendor/serf/dist/auth/auth.c (contents, props changed) vendor/serf/dist/auth/auth.h (contents, props changed) vendor/serf/dist/auth/auth_basic.c (contents, props changed) vendor/serf/dist/auth/auth_digest.c (contents, props changed) vendor/serf/dist/auth/auth_kerb.c (contents, props changed) vendor/serf/dist/auth/auth_kerb.h (contents, props changed) vendor/serf/dist/auth/auth_kerb_gss.c (contents, props changed) vendor/serf/dist/auth/auth_kerb_sspi.c (contents, props changed) vendor/serf/dist/buckets/ vendor/serf/dist/buckets/aggregate_buckets.c (contents, props changed) vendor/serf/dist/buckets/allocator.c (contents, props changed) vendor/serf/dist/buckets/barrier_buckets.c (contents, props changed) vendor/serf/dist/buckets/buckets.c (contents, props changed) vendor/serf/dist/buckets/bwtp_buckets.c (contents, props changed) vendor/serf/dist/buckets/chunk_buckets.c (contents, props changed) vendor/serf/dist/buckets/dechunk_buckets.c (contents, props changed) vendor/serf/dist/buckets/deflate_buckets.c (contents, props changed) vendor/serf/dist/buckets/file_buckets.c (contents, props changed) vendor/serf/dist/buckets/headers_buckets.c (contents, props changed) vendor/serf/dist/buckets/iovec_buckets.c (contents, props changed) vendor/serf/dist/buckets/limit_buckets.c (contents, props changed) vendor/serf/dist/buckets/mmap_buckets.c (contents, props changed) vendor/serf/dist/buckets/request_buckets.c (contents, props changed) vendor/serf/dist/buckets/response_body_buckets.c (contents, props changed) vendor/serf/dist/buckets/response_buckets.c (contents, props changed) vendor/serf/dist/buckets/simple_buckets.c (contents, props changed) vendor/serf/dist/buckets/socket_buckets.c (contents, props changed) vendor/serf/dist/buckets/ssl_buckets.c (contents, props changed) vendor/serf/dist/build/ vendor/serf/dist/build/apr_common.m4 vendor/serf/dist/build/config.guess (contents, props changed) vendor/serf/dist/build/config.sub (contents, props changed) vendor/serf/dist/build/find_apr.m4 vendor/serf/dist/build/find_apu.m4 vendor/serf/dist/build/gen_def.py (contents, props changed) vendor/serf/dist/build/get-version.sh (contents, props changed) vendor/serf/dist/build/install.sh (contents, props changed) vendor/serf/dist/build/serf.def vendor/serf/dist/buildconf (contents, props changed) vendor/serf/dist/config.layout vendor/serf/dist/configure (contents, props changed) vendor/serf/dist/configure.in (contents, props changed) vendor/serf/dist/context.c (contents, props changed) vendor/serf/dist/design-guide.txt (contents, props changed) vendor/serf/dist/incoming.c (contents, props changed) vendor/serf/dist/outgoing.c (contents, props changed) vendor/serf/dist/serf.h (contents, props changed) vendor/serf/dist/serf.mak vendor/serf/dist/serf.pc.in (contents, props changed) vendor/serf/dist/serf_bucket_types.h (contents, props changed) vendor/serf/dist/serf_bucket_util.h (contents, props changed) vendor/serf/dist/serf_private.h (contents, props changed) vendor/serf/dist/serfmake (contents, props changed) vendor/serf/dist/ssltunnel.c (contents, props changed) Added: vendor/serf/dist/CHANGES ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/serf/dist/CHANGES Tue Jun 18 02:00:50 2013 (r251877) @@ -0,0 +1,198 @@ +Serf 1.2.1 [2013-06-03, from /tags/1.2.1] + Fix issue 95: add gssapi switches to configure (r1864, r1900) + Fix issue 97: skip mmap bucket if APR_HAS_MMAP is undefined (r1877) + Fix issue 100: building against an old Windows Platform SDK (r1881) + Fix issue 102: digest authentication failures (r1885) + Improve error return values in SSPI authentication (r1804) + Ensure serf-1.pc is constructed by serfmake (r1865) + Optimize SPNego authentication processing (r1868) + Reject certs that application does not like (r1794) + Fix possible endless loop in serf_linebuf_fetch() (r1816) + Windows build: dereference INTDIR in serf.mak (r1882) + + +Serf 1.2.0 [2013-02-22, from /tags/1.2.0, r1726] + Fixed issue 94: Serf can enter an infinite loop when server aborts conn. + Fixed issue 91: Serf doesn't handle an incoming 408 Timeout Request + Fixed issue 80: Serf is not handling Negotiate authentication correctly + Fixed issue 77: Endless loop if server doesn't accept Negotiate authn + Fixed issue 93: cleanup-after-fork interferes with parent (r1714) + Fixed most of issue 89: Support REAL SPNEGO authentication + Enable Negotiate/Kerberos support for proxy servers. + Return error when C-L, chunked, gzip encoded response bodies where + truncated (due to aborted connection) (r1688) + Add a logging mechanism that can be enabled at compile-time. + Don't lookup server address if a proxy was configured. (r1706) + Fix an off-by-one in buffer sizing (r1695) + Disable SSL compression by default + API to enable it (r1692) + New serf_connection_get_latency() for estimated network latency (r1689) + New error code and RFC compliance for the HTTPS tunnel (r1701, r1644) + Handle EINTR when a user suspends and then backgrounds the app (r1708) + Minor fixes and test suite improvements. + + +Serf 1.1.1 [2012-10-04, from /tags/1.1.1, r1657] + Fixed issue 86: ensure requeued requests are correctly handled. + This fixes: + - infinite loop with multiple connection resets or SIGPIPE errors + - "connection" hang where we would not re-queue requests that are + held after we re-connect + Fixed issue 74: test_all goes in an endless loop + Fix memleak when conn. is closed explicitly/due to pool cleanups (r1623) + Windows: Fix https connection aborts (r1628..-30,-33,-34,-37) + Add new error codes for the SSL bucket + + +Serf 1.1.0 [2012-06-07, from /tags/1.1.0, r1617] + New: serf_bucket_request_set_CL() for C-L based, non-chunked requests + New: serf_ssl_server_cert_chain_callback_set() for full-chain validation + + +Serf 1.0.3 [2012-03-20, from /tags/1.0.3, r1586] + Map more OpenSSL errors into SERF_SSL_CERT_UNKNOWNCA (r1573) + + +Serf 1.0.2 + Not released. + + +Serf 1.0.1 [2012-02-15, from /tags/1.0.1, r1569] + FreeBSD fixes in the test suite (r1560, r1565) + Minor build fixes + + +Serf 1.0.0 [2011-07-15, from /tags/1.0.0, r1540] + Fixed issue 38: enable builds using non-GNU make + Fixed issue 49: support SSL tunnels for HTTPS via a proxy + Fixed issue 56: allow Subject Alternative Name, and enable SNI + Fixed issue 61: include order dependencies + Fixed issue 66: improved error reporting when creating install dirs + Fixed issue 71: handle ECONNREFUSED on Windows + Fixed issue 79: destroy the APR allocator, if we create one + Fixed issue 81: build failed on APR 0.9.x + Major performance improvements and bug fixes for SSL buckets/handling (r1462) + Add a new "iovec" bucket type (r1434) + Minimize network packet writes based on ra_serf analysis (r1467, r1471) + Fix out of order issue with multiple priority requests (r1469) + Work around broken WSAPoll() impl on Windows introduced in APR 1.4.0 (r1506) + Fix 100% CPU usage with many pipelined requests (r1456) + Corrected contents of build/serf.def; it now includes bucket types (r1512) + Removed "snapshot" feature from buckets (r1503) + Various improvements to the test system + Various memory leak fixes + + +Serf 0.7.2 [2011-03-12, from /tags/0.7.2, r1452] + Actually disable Nagle when creating a connection (r1441) + Return error when app asks for HTTPS over proxy connection (r1433) + + +Serf 0.7.1 [2011-01-25, from /tags/0.7.1, r1432] + Fix memory leak when using SSL (r1408, r1416) + Fix build for blank apr-util directory (r1421) + + +Serf 0.7.0 [2010-08-25, from /tags/0.7.0, r1407] + Fix double free abort when destroying request buckets + Fix test server in unit test framework to avoid random test failures + Allow older Serf programs which don't use the new authn framework to still + handle authn without forcing them to switch to the new framework. (r1401) + Remove the SERF_DECLARE macros, preferring a .DEF file for Windows + Barrier buckets now pass read_iovec to their wrapped bucket + Fix HTTP header parsing to allow for empty header values + + +Serf 0.6.1 [2010-05-14, from /tags/0.6.1, r1370] + Generally: this release fixes problems with the 0.4.0 packaging + Small compilation fix in outgoing.c for Windows builds + + +Serf 0.6.0 + Not released. + + +Serf 0.5.0 + Not released. + + +Serf 0.4.0 + WITHDRAWN: this release misstated itself as 0.5.0; use a later release + + Provide authn framework, supporting Basic, Digest, Kerberos (SSPI, GSS), + along with proxy authn using Basic or Digest + Added experimental listener framework, along with test_server.c + Improvements and fixes to SSL support, including connection setup changes + Experimental support for unrequested, arriving ("async") responses + Experimental BWTP support using the async arrival feature + Headers are combined on read (not write), to ease certian classes of parsing + Experimental feature on aggregate buckets for a callback-on-empty + Fix the bucket allocator for when APR is using its pool debugging features + Proxy support in the serf_get testing utility + Fix to include the port number in the Host header + serf_get propagates errors from the response, instead of aborting (Issue 52) + Added serf_lib_version() for runtime version tests + + +Serf 0.3.1 [2010-02-14, from /tags/0.3.1, r1322] + Fix loss of error on request->setup() callback. (Issue 47) + Support APR 2.x. (Issue 48) + Fixed slowdown in aggregate bucket with millions of child buckets + Avoid hang in apr_pollset_poll() by unclosed connections after fork() + + +Serf 0.3.0 [2009-01-26, from /tags/0.3.0, r1217] + Support LTFLAGS override as a config-time env. variable (Issue 44) + Fix CUTest test harness compilation on Solaris (Issue 43) + Fix small race condition in OpenSSL initialization (Issue 39) + Handle content streams larger than 4GB on 32-bit OSes (Issue 41) + Fix test_ssl.c compilation with mingw+msys + Fix conn close segfault by explicitly closing conn when pool is destroyed + Expose the depth of the SSL certificate so the validator can use that info + Fix socket address family issue when opening a connection to a proxy + Provide new API to take snapshots of buckets + Implement snapshot API for simple and aggregate buckets + Build with bundled apr and apr-util VPATH builds + Build with bundled OpenSSL builds + + +Serf 0.2.0 [2008-06-06, from /tags/0.2.0, r1189] + Enable use of external event loop: serf_create_context_ex + Enable adding new requests at the beginning of the request queue + Handle 'Connection:close' headers + Enable limiting the number of outstanding requests + Add readline function to simple buckets + Concatenate repeated headers using comma as separator, as per RFC 2616, + section 4.2. (Issue 29) + Add proxy server support + Add progress feedback support. (Issue 11) + Provide new API to simplify use of proxy and progress feedback support + Add callback to validate SSL server certificates. (Issue 31) + Add new test framework + Send current version string in the test programs (Issue 21) + Bugfixes: + Fix segfault with epoll when removing a NULL socket + Reset OpenSSL thread-safety callbacks when apr_terminate() called + Do not remove the socket from the pollset on pool cleanup + Do not issue double close on skt w/second one being close(-1) (Issue 33) + + +Serf 0.1.2 [2007-06-18, from /tags/0.1.2, r1115] + Enable thread-safety with OpenSSL (Issue 19) + Teach serfmake to install headers into include/serf-0 + Be more tolerant when servers close the connection without telling us + Do not open the connection until we have requests to deliver + Fix serfmake to produce the library that corresponds to the minor version + Fix a memory leak with the socket bucket (Issue 14) + Fix uninitialized branch in serf_spider (Issue 15) + + +Serf 0.1.1 [2007-05-12, from /tags/0.1.1, r1105] + Add SSL client certificate support + Implement optimized iovec reads for header buckets + Fix up 'make clean' and 'make distclean' (Issues 9, 10) + Add SERF_VERSION_AT_LEAST macro + Remove abort() calls (Issue 13) + + +Serf 0.1.0 [2006-12-14, from /tags/0.1.0, r1087] + Initial packaged release Added: vendor/serf/dist/LICENSE ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/serf/dist/LICENSE Tue Jun 18 02:00:50 2013 (r251877) @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed 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. Added: vendor/serf/dist/Makefile.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/serf/dist/Makefile.in Tue Jun 18 02:00:50 2013 (r251877) @@ -0,0 +1,171 @@ +# +# Makefile for Serf +# +srcdir = @srcdir@ +VPATH = @srcdir@ + +SERF_MAJOR_VERSION=@SERF_MAJOR_VERSION@ +SERF_DOTTED_VERSION=@SERF_DOTTED_VERSION@ + +OBJECTS = buckets/aggregate_buckets.lo buckets/request_buckets.lo context.lo \ + buckets/buckets.lo buckets/simple_buckets.lo buckets/file_buckets.lo \ + buckets/mmap_buckets.lo buckets/socket_buckets.lo \ + buckets/response_body_buckets.lo buckets/response_buckets.lo \ + buckets/headers_buckets.lo \ + buckets/allocator.lo buckets/dechunk_buckets.lo \ + buckets/deflate_buckets.lo buckets/limit_buckets.lo \ + buckets/ssl_buckets.lo buckets/barrier_buckets.lo \ + buckets/chunk_buckets.lo buckets/bwtp_buckets.lo \ + buckets/iovec_buckets.lo \ + incoming.lo outgoing.lo ssltunnel.lo \ + auth/auth.lo auth/auth_basic.lo auth/auth_digest.lo \ + auth/auth_kerb.lo auth/auth_kerb_gss.lo + +TARGET_LIB=libserf-$(SERF_MAJOR_VERSION).la + +TEST_OBJECTS = test/serf_get.lo test/serf_response.lo test/serf_request.lo \ + test/serf_spider.lo test/serf_server.lo test/serf_bwtp.lo + +TEST_SUITE_OBJECTS = test/CuTest.lo test/test_all.lo test/test_util.lo \ + test/test_buckets.lo test/test_context.lo \ + test/test_ssl.lo test/server/test_server.lo \ + test/server/test_sslserver.lo + +PROGRAMS = $(TEST_OBJECTS:.lo=) test/test_all + +TESTCASES = test/testcases/simple.response \ + test/testcases/chunked-empty.response test/testcases/chunked.response \ + test/testcases/chunked-trailers.response \ + test/testcases/deflate.response + +HEADERS = serf.h serf_bucket_types.h serf_bucket_util.h + +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ +pkgconfigdir=$(libdir)/pkgconfig + +LIBTOOL = @APR_LIBTOOL@ +LTFLAGS = @LTFLAGS@ --tag=CC +CC = @CC@ +CFLAGS = @EXTRA_CFLAGS@ @CFLAGS@ +CPPFLAGS = @EXTRA_CPPFLAGS@ @CPPFLAGS@ +INCLUDES = -I$(srcdir) @APR_INCLUDES@ @APU_INCLUDES@ @EXTRA_INCLUDES@ +MKDIR = @mkdir_p@ +INSTALL = @INSTALL@ + +LDFLAGS = @EXTRA_LDFLAGS@ @LDFLAGS@ +LIBS = @EXTRA_LIBS@ @SERF_LIBS@ -lz -lssl -lcrypto + +all: $(TARGET_LIB) $(PROGRAMS) + +context.lo: context.c $(HEADERS) +incoming.lo: incoming.c $(HEADERS) +outgoing.lo: outgoing.c $(HEADERS) +ssltunnel.lo: ssltunnel.c $(HEADERS) +buckets/aggregate_buckets.lo: buckets/aggregate_buckets.c $(HEADERS) +buckets/request_buckets.lo: buckets/request_buckets.c $(HEADERS) +buckets/buckets.lo: buckets/buckets.c $(HEADERS) +buckets/simple_buckets.lo: buckets/simple_buckets.c $(HEADERS) +buckets/file_buckets.lo: buckets/file_buckets.c $(HEADERS) +buckets/mmap_buckets.lo: buckets/mmap_buckets.c $(HEADERS) +buckets/socket_buckets.lo: buckets/socket_buckets.c $(HEADERS) +buckets/response_body_buckets.lo: buckets/response_body_buckets.c $(HEADERS) +buckets/response_buckets.lo: buckets/response_buckets.c $(HEADERS) +buckets/headers_buckets.lo: buckets/headers_buckets.c $(HEADERS) +buckets/allocator.lo: buckets/allocator.c $(HEADERS) +buckets/dechunk_buckets.lo: buckets/dechunk_buckets.c $(HEADERS) +buckets/deflate_buckets.lo: buckets/deflate_buckets.c $(HEADERS) +buckets/limit_buckets.lo: buckets/limit_buckets.c $(HEADERS) +buckets/ssl_buckets.lo: buckets/ssl_buckets.c $(HEADERS) +buckets/barrier_buckets.lo: buckets/barrier_buckets.c $(HEADERS) +buckets/chunk_buckets.lo: buckets/chunk_buckets.c $(HEADERS) +buckets/bwtp_buckets.lo: buckets/bwtp_buckets.c $(HEADERS) +buckets/iovec_buckets.lo: buckets/iovec_buckets.c $(HEADERS) + +test/serf_get.lo: test/serf_get.c $(HEADERS) +test/serf_response.lo: test/serf_response.c $(HEADERS) +test/serf_request.lo: test/serf_request.c $(HEADERS) +test/serf_server.lo: test/serf_server.c $(HEADERS) +test/serf_spider.lo: test/serf_spider.c $(HEADERS) +test/serf_bwtp.lo: test/serf_bwtp.c $(HEADERS) + +test/CuTest.lo: test/CuTest.c $(HEADERS) +test/test_all.lo: test/test_all.c $(HEADERS) +test/test_util.lo: test/test_util.c $(HEADERS) +test/test_buckets.lo: test/test_buckets.c $(HEADERS) +test/test_context.lo: test/test_context.c $(HEADERS) +test/test_ssl.lo: test/test_ssl.c $(HEADERS) + +$(TARGET_LIB): $(OBJECTS) + $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LDFLAGS) -rpath $(libdir) -o $@ $(OBJECTS) $(LIBS) + +test/serf_get: $(TARGET_LIB) test/serf_get.lo + $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LDFLAGS) -static -o $@ $(TARGET_LIB) test/serf_get.lo $(LIBS) + +test/serf_response: $(TARGET_LIB) test/serf_response.lo + $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LDFLAGS) -static -o $@ $(TARGET_LIB) test/serf_response.lo $(LIBS) + +test/serf_request: $(TARGET_LIB) test/serf_request.lo + $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LDFLAGS) -static -o $@ $(TARGET_LIB) test/serf_request.lo $(LIBS) + +test/serf_server: $(TARGET_LIB) test/serf_server.lo + $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LDFLAGS) -static -o $@ $(TARGET_LIB) test/serf_server.lo $(LIBS) + +test/serf_spider: $(TARGET_LIB) test/serf_spider.lo + $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LDFLAGS) -static -o $@ $(TARGET_LIB) test/serf_spider.lo $(LIBS) + +test/serf_bwtp: $(TARGET_LIB) test/serf_bwtp.lo + $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LDFLAGS) -static -o $@ $(TARGET_LIB) test/serf_bwtp.lo $(LIBS) + +test/test_all: $(TARGET_LIB) $(TEST_SUITE_OBJECTS) + $(LIBTOOL) $(LTFLAGS) --mode=link $(CC) $(LDFLAGS) -static -o $@ $(TARGET_LIB) $(TEST_SUITE_OBJECTS) $(LIBS) + +check: test/serf_response test/test_all + @for i in $(TESTCASES); \ + do echo "== Testing $$i =="; \ + ./test/serf_response $(srcdir)/$$i; \ + done; + @echo "== Running test_all =="; + @./test/test_all + +install: $(TARGET_LIB) + $(MKDIR) $(DESTDIR)$(libdir) $(DESTDIR)$(includedir) $(DESTDIR)$(pkgconfigdir) + $(LIBTOOL) $(LTFLAGS) --mode=install $(INSTALL) -m 644 $(TARGET_LIB) $(DESTDIR)$(libdir) + for i in $(HEADERS); do \ + $(INSTALL) -m 644 $(srcdir)/$$i $(DESTDIR)$(includedir); \ + done + $(INSTALL) -m 644 serf.pc $(DESTDIR)$(pkgconfigdir)/serf-$(SERF_MAJOR_VERSION).pc + +clean: + rm -f $(TARGET_LIB) $(OBJECTS) $(OBJECTS:.lo=.o) $(PROGRAMS) $(TEST_OBJECTS) $(TEST_OBJECTS:.lo=.o) $(TEST_SUITE_OBJECTS) $(TEST_SUITE_OBJECTS:.lo=.o) + for subdir in . buckets test; do \ + (cd $$subdir && rm -rf .libs) ; \ + done + +distclean: clean + rm -f Makefile serf.pc config.log config.status + +.SUFFIXES: +.SUFFIXES: .c .lo .o + +mkdir-vpath: + @if [ ! -d auth ]; then \ + $(MKDIR) auth; \ + fi; + @if [ ! -d buckets ]; then \ + $(MKDIR) buckets; \ + fi; + @if [ ! -d test ]; then \ + $(MKDIR) test; \ + fi; + @if [ ! -d test/server ]; then \ + $(MKDIR) test/server; \ + fi; + @if [ ! -r test/serftestca.pem ]; then \ + cp -f $(srcdir)/test/serftestca.pem test/; \ + fi; + +.c.lo: + $(LIBTOOL) $(LTFLAGS) --mode=compile $(CC) $(INCLUDES) $(CFLAGS) $(CPPFLAGS) -c -o $@ $< && touch $@ Added: vendor/serf/dist/NOTICE ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/serf/dist/NOTICE Tue Jun 18 02:00:50 2013 (r251877) @@ -0,0 +1,2 @@ +This product includes software developed by +The Apache Software Foundation (http://www.apache.org/). Added: vendor/serf/dist/README ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/serf/dist/README Tue Jun 18 02:00:50 2013 (r251877) @@ -0,0 +1,38 @@ +Welcome to serf, a high-performance asynchronous HTTP client library. + +The serf library is a C-based HTTP client library built upon the Apache +Portable Runtime (APR) library. It multiplexes connections, running the +read/write communication asynchronously. Memory copies and transformations are +kept to a minimum to provide high performance operation. + + * Status: http://code.google.com/p/serf/wiki/ + * Site: http://code.google.com/p/serf/ + * Code: http://serf.googlecode.com/svn/ + * Issues: http://code.google.com/p/serf/issues/list + * Mail: serf-dev@googlegroups.com + * People: Justin Erenkrantz, Greg Stein + +---- + +Quick guide for the impatient + + (Unix) + % ./configure + % make + % make install + +---- + +Building serf from a Subversion checkout (non-packaged releases) + +We suggest that you try out 'serfmake'. + + % ./serfmake --prefix=/usr/local/serf --with-apr=/usr/local/apr install + +If you want to use the autoconf build system and are using a Subversion +checkout, you need to run buildconf and have APR and APR-util sources handy. + + % ./buildconf --with-apr=/path/to/apr --with-apr-util=/path/to/apr-util + (By default, buildconf will look in . and ../ for apr and apr-util.) + +Then, you can use ./configure, make, etc. Added: vendor/serf/dist/auth/auth.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/serf/dist/auth/auth.c Tue Jun 18 02:00:50 2013 (r251877) @@ -0,0 +1,421 @@ +/* Copyright 2009 Justin Erenkrantz and Greg Stein + * + * Licensed 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. + */ + +#include "serf.h" +#include "serf_private.h" +#include "auth.h" + +#include +#include +#include + +static apr_status_t +default_auth_response_handler(peer_t peer, + int code, + serf_connection_t *conn, + serf_request_t *request, + serf_bucket_t *response, + apr_pool_t *pool) +{ + return APR_SUCCESS; +} + +static const serf__authn_scheme_t serf_authn_schemes[] = { + { + 401, + "Basic", + SERF_AUTHN_BASIC, + serf__init_basic, + serf__init_basic_connection, + serf__handle_basic_auth, + serf__setup_request_basic_auth, + default_auth_response_handler, + }, + { + 407, + "Basic", + SERF_AUTHN_BASIC, + serf__init_basic, + serf__init_basic_connection, + serf__handle_basic_auth, + serf__setup_request_basic_auth, + default_auth_response_handler, + }, + { + 401, + "Digest", + SERF_AUTHN_DIGEST, + serf__init_digest, + serf__init_digest_connection, + serf__handle_digest_auth, + serf__setup_request_digest_auth, + serf__validate_response_digest_auth, + }, + { + 407, + "Digest", + SERF_AUTHN_DIGEST, + serf__init_digest, + serf__init_digest_connection, + serf__handle_digest_auth, + serf__setup_request_digest_auth, + serf__validate_response_digest_auth, + }, +#ifdef SERF_HAVE_KERB + { + 401, + "Negotiate", + SERF_AUTHN_NEGOTIATE, + serf__init_kerb, + serf__init_kerb_connection, + serf__handle_kerb_auth, + serf__setup_request_kerb_auth, + serf__validate_response_kerb_auth, + }, + { + 407, + "Negotiate", + SERF_AUTHN_NEGOTIATE, + serf__init_kerb, + serf__init_kerb_connection, + serf__handle_kerb_auth, + serf__setup_request_kerb_auth, + serf__validate_response_kerb_auth, + }, +#endif + /* ADD NEW AUTHENTICATION IMPLEMENTATIONS HERE (as they're written) */ + + /* sentinel */ + { 0 } +}; + + +/** + * Baton passed to the response header callback function + */ +typedef struct { + int code; + apr_status_t status; + const char *header; + serf_request_t *request; + serf_bucket_t *response; + void *baton; + apr_pool_t *pool; + const serf__authn_scheme_t *scheme; + const char *last_scheme_name; +} auth_baton_t; + +/* Reads and discards all bytes in the response body. */ +static apr_status_t discard_body(serf_bucket_t *response) +{ + apr_status_t status; + const char *data; + apr_size_t len; + + while (1) { + status = serf_bucket_read(response, SERF_READ_ALL_AVAIL, &data, &len); + + if (status) { + return status; + } + + /* feed me */ + } +} + +/** + * handle_auth_header is called for each header in the response. It filters + * out the Authenticate headers (WWW or Proxy depending on what's needed) and + * tries to find a matching scheme handler. + * + * Returns a non-0 value of a matching handler was found. + */ +static int handle_auth_header(void *baton, + const char *key, + const char *header) +{ + auth_baton_t *ab = baton; + int scheme_found = FALSE; + const char *auth_name; + const char *auth_attr; + const serf__authn_scheme_t *scheme = NULL; + serf_connection_t *conn = ab->request->conn; + serf_context_t *ctx = conn->ctx; + + /* We're only interested in xxxx-Authenticate headers. */ + if (strcmp(key, ab->header) != 0) + return 0; + + /* Extract the authentication scheme name, and prepare for reading + the attributes. */ + auth_attr = strchr(header, ' '); + if (auth_attr) { + auth_name = apr_pstrmemdup(ab->pool, header, auth_attr - header); + ++auth_attr; + } + else + auth_name = header; + + ab->last_scheme_name = auth_name; + + /* Find the matching authentication handler. + Note that we don't reuse the auth scheme stored in the context, + as that may have changed. (ex. fallback from ntlm to basic.) */ + for (scheme = serf_authn_schemes; scheme->code != 0; ++scheme) { + if (! (ab->code == scheme->code && + ctx->authn_types & scheme->type)) + continue; + + serf__log_skt(AUTH_VERBOSE, __FILE__, conn->skt, + "Client supports: %s\n", scheme->name); + if (strcmp(auth_name, scheme->name) == 0) { + serf__auth_handler_func_t handler = scheme->handle_func; + apr_status_t status = 0; + + serf__log_skt(AUTH_VERBOSE, __FILE__, conn->skt, + "... matched: %s\n", scheme->name); + /* If this is the first time we use this scheme on this connection, + make sure to initialize the authentication handler first. */ + if (ab->code == 401 && ctx->authn_info.scheme != scheme) { + status = scheme->init_ctx_func(ab->code, ctx, ctx->pool); + if (!status) { + status = scheme->init_conn_func(ab->code, conn, conn->pool); + + if (!status) + ctx->authn_info.scheme = scheme; + else + ctx->authn_info.scheme = NULL; + } + } + else if (ab->code == 407 && ctx->proxy_authn_info.scheme != scheme) { + status = scheme->init_ctx_func(ab->code, ctx, ctx->pool); + if (!status) { + status = scheme->init_conn_func(ab->code, conn, conn->pool); + + if (!status) + ctx->proxy_authn_info.scheme = scheme; + else + ctx->proxy_authn_info.scheme = NULL; + } + } + + if (!status) { + scheme_found = TRUE; + ab->scheme = scheme; + status = handler(ab->code, ab->request, ab->response, + header, auth_attr, ab->baton, ctx->pool); + } + + /* If the authentication fails, cache the error for now. Try the + next available scheme. If there's none raise the error. */ + if (status) { + scheme_found = FALSE; + scheme = NULL; + } + /* Let the caller now if the authentication setup was succesful + or not. */ + ab->status = status; + + break; + } + } + + /* If a matching scheme handler was found, we can stop iterating + over the response headers - so return a non-0 value. */ + return scheme_found; +} + +/* Dispatch authentication handling. This function matches the possible + authentication mechanisms with those available. Server and proxy + authentication are evaluated separately. */ +static apr_status_t dispatch_auth(int code, + serf_request_t *request, + serf_bucket_t *response, + void *baton, + apr_pool_t *pool) +{ + serf_bucket_t *hdrs; + + if (code == 401 || code == 407) { + auth_baton_t ab = { 0 }; + const char *auth_hdr; + + ab.code = code; + ab.status = APR_SUCCESS; + ab.request = request; + ab.response = response; + ab.baton = baton; + ab.pool = pool; + + /* Before iterating over all authn headers, check if there are any. */ + if (code == 401) + ab.header = "WWW-Authenticate"; + else + ab.header = "Proxy-Authenticate"; + + hdrs = serf_bucket_response_get_headers(response); + auth_hdr = serf_bucket_headers_get(hdrs, ab.header); + + if (!auth_hdr) { + return SERF_ERROR_AUTHN_FAILED; + } + serf__log_skt(AUTH_VERBOSE, __FILE__, request->conn->skt, + "%s authz required. Response header(s): %s\n", + code == 401 ? "Server" : "Proxy", auth_hdr); + + /* Iterate over all headers. Try to find a matching authentication scheme + handler. + + Note: it is possible to have multiple Authentication: headers. We do + not want to combine them (per normal header combination rules) as that + would make it hard to parse. Instead, we want to individually parse + and handle each header in the response, looking for one that we can + work with. + */ + serf_bucket_headers_do(hdrs, + handle_auth_header, + &ab); + if (ab.status != APR_SUCCESS) + return ab.status; + + if (!ab.scheme || ab.scheme->name == NULL) { + /* No matching authentication found. */ + return SERF_ERROR_AUTHN_NOT_SUPPORTED; + } + } + + return APR_SUCCESS; +} + +/* Read the headers of the response and try the available + handlers if authentication or validation is needed. */ +apr_status_t serf__handle_auth_response(int *consumed_response, + serf_request_t *request, + serf_bucket_t *response, + void *baton, + apr_pool_t *pool) +{ + apr_status_t status; + serf_status_line sl; + + *consumed_response = 0; + + /* TODO: the response bucket was created by the application, not at all + guaranteed that this is of type response_bucket!! */ + status = serf_bucket_response_status(response, &sl); + if (SERF_BUCKET_READ_ERROR(status)) { + return status; + } + if (!sl.version && (APR_STATUS_IS_EOF(status) || + APR_STATUS_IS_EAGAIN(status))) { + return status; + } + + status = serf_bucket_response_wait_for_headers(response); + if (status) { + if (!APR_STATUS_IS_EOF(status)) { + return status; + } + + /* If status is APR_EOF, there were no headers to read. + This can be ok in some situations, and it definitely + means there's no authentication requested now. */ + return APR_SUCCESS; + } + + if (sl.code == 401 || sl.code == 407) { + /* Authentication requested. */ + + /* Don't bother handling the authentication request if the response + wasn't received completely yet. Serf will call serf__handle_auth_response + again when more data is received. */ + status = discard_body(response); + *consumed_response = 1; + + /* Discard all response body before processing authentication. */ + if (!APR_STATUS_IS_EOF(status)) { + return status; + } + + status = dispatch_auth(sl.code, request, response, baton, pool); + if (status != APR_SUCCESS) { + return status; + } + + /* Requeue the request with the necessary auth headers. */ + /* ### Application doesn't know about this request! */ + serf_connection_priority_request_create(request->conn, + request->setup, + request->setup_baton); + + return APR_EOF; + } else { + /* Validate the response authn headers if needed. */ + serf__validate_response_func_t validate_resp; + serf_connection_t *conn = request->conn; + serf_context_t *ctx = conn->ctx; + apr_status_t resp_status = APR_SUCCESS; + + if (ctx->authn_info.scheme) { + validate_resp = ctx->authn_info.scheme->validate_response_func; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 02:01:21 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id E39D5DC4; Tue, 18 Jun 2013 02:01:21 +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 BCA331EE1; Tue, 18 Jun 2013 02:01: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 r5I21Lw9037752; Tue, 18 Jun 2013 02:01:21 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I21L24037751; Tue, 18 Jun 2013 02:01:21 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306180201.r5I21L24037751@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 02:01:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r251878 - vendor/apr/apr-1.4.6 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 02:01:22 -0000 Author: peter Date: Tue Jun 18 02:01:21 2013 New Revision: 251878 URL: http://svnweb.freebsd.org/changeset/base/251878 Log: Tag apr-1.4.6 import Added: vendor/apr/apr-1.4.6/ - copied from r251875, vendor/apr/dist/ From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 02:02:33 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D3503F31; Tue, 18 Jun 2013 02:02: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 ADC8E1EEA; Tue, 18 Jun 2013 02:02: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 r5I22XOh037996; Tue, 18 Jun 2013 02:02:33 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I22XvG037995; Tue, 18 Jun 2013 02:02:33 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306180202.r5I22XvG037995@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 02:02:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r251879 - vendor/apr-util/apr-util-1.4.1 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 02:02:33 -0000 Author: peter Date: Tue Jun 18 02:02:33 2013 New Revision: 251879 URL: http://svnweb.freebsd.org/changeset/base/251879 Log: Tag apr-util-1.4.1 import Added: vendor/apr-util/apr-util-1.4.1/ - copied from r251876, vendor/apr-util/dist/ From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 02:03:30 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 07363259; Tue, 18 Jun 2013 02:03:30 +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 D4CF81F0D; Tue, 18 Jun 2013 02:03: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 r5I23TfX038191; Tue, 18 Jun 2013 02:03:29 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I23TKE038190; Tue, 18 Jun 2013 02:03:29 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306180203.r5I23TKE038190@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 02:03:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r251880 - vendor/serf/serf-1.2.1 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 02:03:30 -0000 Author: peter Date: Tue Jun 18 02:03:29 2013 New Revision: 251880 URL: http://svnweb.freebsd.org/changeset/base/251880 Log: Tag serf-1.2.1 import Added: vendor/serf/serf-1.2.1/ - copied from r251877, vendor/serf/dist/ From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 02:07:16 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 02:07:42 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id C3E2A581; Tue, 18 Jun 2013 02:07:42 +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 B30591F2E; Tue, 18 Jun 2013 02:07: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 r5I27gHt039009; Tue, 18 Jun 2013 02:07:42 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I27gmr039005; Tue, 18 Jun 2013 02:07:42 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306180207.r5I27gmr039005@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 02:07:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r251881 - in vendor/subversion: . dist dist/doc dist/doc/programmer dist/doc/user dist/subversion dist/subversion/include dist/subversion/include/private dist/subversion/libsvn_auth_gno... X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 02:07:42 -0000 Author: peter Date: Tue Jun 18 02:07:41 2013 New Revision: 251881 URL: http://svnweb.freebsd.org/changeset/base/251881 Log: Import trimmed svn-1.8.0-rc3 Added: vendor/subversion/ vendor/subversion/dist/ vendor/subversion/dist/BUGS vendor/subversion/dist/CHANGES vendor/subversion/dist/COMMITTERS vendor/subversion/dist/INSTALL vendor/subversion/dist/LICENSE vendor/subversion/dist/Makefile.in (contents, props changed) vendor/subversion/dist/NOTICE vendor/subversion/dist/README vendor/subversion/dist/aclocal.m4 vendor/subversion/dist/autogen.sh (contents, props changed) vendor/subversion/dist/build-outputs.mk vendor/subversion/dist/build.conf (contents, props changed) vendor/subversion/dist/configure (contents, props changed) vendor/subversion/dist/configure.ac vendor/subversion/dist/doc/ vendor/subversion/dist/doc/README vendor/subversion/dist/doc/doxygen.conf (contents, props changed) vendor/subversion/dist/doc/programmer/ vendor/subversion/dist/doc/programmer/WritingChangeLogs.txt (contents, props changed) vendor/subversion/dist/doc/user/ vendor/subversion/dist/doc/user/cvs-crossover-guide.html (contents, props changed) vendor/subversion/dist/doc/user/lj_article.txt (contents, props changed) vendor/subversion/dist/doc/user/svn-best-practices.html (contents, props changed) vendor/subversion/dist/gen-make.opts vendor/subversion/dist/gen-make.py (contents, props changed) vendor/subversion/dist/get-deps.sh (contents, props changed) vendor/subversion/dist/subversion/ vendor/subversion/dist/subversion/include/ vendor/subversion/dist/subversion/include/mod_authz_svn.h (contents, props changed) vendor/subversion/dist/subversion/include/mod_dav_svn.h (contents, props changed) vendor/subversion/dist/subversion/include/private/ vendor/subversion/dist/subversion/include/private/README vendor/subversion/dist/subversion/include/private/ra_svn_sasl.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_adler32.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_atomic.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_auth_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_cache.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_client_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_cmdline_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_dav_protocol.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_debug.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_delta_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_dep_compat.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_diff_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_diff_tree.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_doxygen.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_editor.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_eol_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_error_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_fs_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_fs_util.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_fspath.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_io_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_log.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_magic.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_mergeinfo_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_mutex.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_named_atomic.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_opt_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_pseudo_md5.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_ra_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_ra_svn_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_repos_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_skel.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_sqlite.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_string_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_subr_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_temp_serializer.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_token.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_utf_private.h (contents, props changed) vendor/subversion/dist/subversion/include/private/svn_wc_private.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_auth.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_base64.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_cache_config.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_checksum.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_client.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_cmdline.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_compat.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_config.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_ctype.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_dav.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_delta.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_diff.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_dirent_uri.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_dso.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_error.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_error_codes.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_fs.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_hash.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_io.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_iter.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_md5.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_mergeinfo.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_nls.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_opt.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_path.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_pools.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_props.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_quoprint.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_ra.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_ra_svn.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_repos.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_sorts.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_string.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_subst.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_time.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_types.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_user.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_utf.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_version.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_wc.h (contents, props changed) vendor/subversion/dist/subversion/include/svn_xml.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_auth_gnome_keyring/ vendor/subversion/dist/subversion/libsvn_auth_gnome_keyring/gnome_keyring.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_auth_gnome_keyring/version.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_auth_kwallet/ vendor/subversion/dist/subversion/libsvn_auth_kwallet/kwallet.cpp (contents, props changed) vendor/subversion/dist/subversion/libsvn_auth_kwallet/version.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/ vendor/subversion/dist/subversion/libsvn_client/add.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/blame.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/cat.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/changelist.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/checkout.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/cleanup.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/client.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/cmdline.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/commit.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/commit_util.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/compat_providers.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/copy.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/copy_foreign.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/ctx.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/delete.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/deprecated.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/diff.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/diff_local.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/diff_summarize.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/export.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/externals.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/import.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/info.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/iprops.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/list.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/locking_commands.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/log.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/merge.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/mergeinfo.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/mergeinfo.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/patch.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/prop_commands.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/ra.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/relocate.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/repos_diff.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/resolved.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/revert.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/revisions.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/status.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/switch.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/update.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/upgrade.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/url.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/util.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_client/version.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_delta/ vendor/subversion/dist/subversion/libsvn_delta/cancel.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_delta/compat.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_delta/compose_delta.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_delta/debug_editor.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_delta/debug_editor.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_delta/default_editor.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_delta/delta.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_delta/deprecated.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_delta/depth_filter_editor.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_delta/editor.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_delta/path_driver.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_delta/svndiff.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_delta/text_delta.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_delta/version.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_delta/xdelta.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_diff/ vendor/subversion/dist/subversion/libsvn_diff/deprecated.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_diff/diff.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_diff/diff.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_diff/diff3.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_diff/diff4.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_diff/diff_file.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_diff/diff_memory.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_diff/diff_tree.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_diff/lcs.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_diff/parse-diff.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_diff/token.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_diff/util.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs/ vendor/subversion/dist/subversion/libsvn_fs/access.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs/editor.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs/fs-loader.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs/fs-loader.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/ vendor/subversion/dist/subversion/libsvn_fs_base/bdb/ vendor/subversion/dist/subversion/libsvn_fs_base/bdb/bdb-err.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/bdb-err.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/bdb_compat.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/bdb_compat.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/changes-table.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/changes-table.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/checksum-reps-table.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/checksum-reps-table.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/copies-table.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/copies-table.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/dbt.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/dbt.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/env.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/env.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/lock-tokens-table.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/lock-tokens-table.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/locks-table.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/locks-table.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/miscellaneous-table.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/miscellaneous-table.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/node-origins-table.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/node-origins-table.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/nodes-table.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/nodes-table.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/reps-table.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/reps-table.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/rev-table.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/rev-table.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/strings-table.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/strings-table.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/txn-table.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/txn-table.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/uuids-table.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/bdb/uuids-table.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/dag.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/dag.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/err.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/err.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/fs.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/fs.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/id.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/id.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/key-gen.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/key-gen.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/lock.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/lock.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/node-rev.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/node-rev.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/notes/ vendor/subversion/dist/subversion/libsvn_fs_base/notes/TODO vendor/subversion/dist/subversion/libsvn_fs_base/notes/fs-history vendor/subversion/dist/subversion/libsvn_fs_base/notes/structure vendor/subversion/dist/subversion/libsvn_fs_base/reps-strings.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/reps-strings.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/revs-txns.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/revs-txns.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/trail.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/trail.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/tree.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/tree.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/util/ vendor/subversion/dist/subversion/libsvn_fs_base/util/fs_skels.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/util/fs_skels.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/uuid.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_base/uuid.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/ vendor/subversion/dist/subversion/libsvn_fs_fs/caching.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/dag.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/dag.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/fs.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/fs.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/fs_fs.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/fs_fs.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/id.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/id.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/key-gen.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/key-gen.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/lock.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/lock.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/rep-cache-db.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/rep-cache-db.sql vendor/subversion/dist/subversion/libsvn_fs_fs/rep-cache.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/rep-cache.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/structure vendor/subversion/dist/subversion/libsvn_fs_fs/temp_serializer.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/temp_serializer.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/tree.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_fs/tree.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_fs_util/ vendor/subversion/dist/subversion/libsvn_fs_util/fs-util.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra/ vendor/subversion/dist/subversion/libsvn_ra/compat.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra/debug_reporter.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra/debug_reporter.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra/deprecated.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra/deprecated.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra/editor.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra/ra_loader.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra/ra_loader.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra/util.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra/wrapper_template.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_local/ vendor/subversion/dist/subversion/libsvn_ra_local/ra_local.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_local/ra_plugin.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_local/split_url.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/ vendor/subversion/dist/subversion/libsvn_ra_serf/README vendor/subversion/dist/subversion/libsvn_ra_serf/blame.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/blncache.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/blncache.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/commit.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/get_deleted_rev.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/getdate.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/getlocations.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/getlocationsegments.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/getlocks.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/inherited_props.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/locks.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/log.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/merge.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/mergeinfo.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/options.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/property.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/ra_serf.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/replay.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/sb_bucket.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/serf.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/update.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/util.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/util_error.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_serf/xml.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_svn/ vendor/subversion/dist/subversion/libsvn_ra_svn/client.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_svn/cram.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_svn/cyrus_auth.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_svn/deprecated.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_svn/editorp.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_svn/internal_auth.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_svn/marshal.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_svn/protocol vendor/subversion/dist/subversion/libsvn_ra_svn/ra_svn.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_svn/streams.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_ra_svn/version.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/ vendor/subversion/dist/subversion/libsvn_repos/authz.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/commit.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/delta.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/deprecated.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/dump.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/fs-wrap.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/hooks.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/load-fs-vtable.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/load.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/log.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/node_tree.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/notify.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/replay.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/reporter.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/repos.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/repos.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_repos/rev_hunt.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/ vendor/subversion/dist/subversion/libsvn_subr/adler32.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/atomic.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/auth.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/auth.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/base64.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/cache-inprocess.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/cache-membuffer.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/cache-memcache.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/cache.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/cache.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/cache_config.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/checksum.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/cmdline.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/compat.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/config.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/config_auth.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/config_file.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/config_impl.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/config_win.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/crypto.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/crypto.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/ctype.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/date.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/debug.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/deprecated.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/dirent_uri.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/dirent_uri.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/dso.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/eol.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/error.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/genctype.py (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/gpg_agent.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/hash.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/internal_statements.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/internal_statements.sql vendor/subversion/dist/subversion/libsvn_subr/io.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/iter.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/lock.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/log.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/macos_keychain.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/magic.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/md5.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/md5.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/mergeinfo.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/mutex.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/named_atomic.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/nls.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/opt.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/opt.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/path.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/pool.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/prompt.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/properties.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/pseudo_md5.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/quoprint.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/sha1.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/sha1.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/simple_providers.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/skel.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/sorts.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/spillbuf.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/sqlite.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/sqlite3wrapper.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/ssl_client_cert_providers.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/ssl_client_cert_pw_providers.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/ssl_server_trust_providers.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/stream.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/string.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/subst.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/sysinfo.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/sysinfo.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/target.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/temp_serializer.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/time.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/token.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/types.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/user.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/username_providers.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/utf.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/utf_validate.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/utf_width.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/validate.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/version.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/win32_crashrpt.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/win32_crashrpt.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/win32_crashrpt_dll.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/win32_crypto.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/win32_xlate.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/win32_xlate.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_subr/xml.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/ vendor/subversion/dist/subversion/libsvn_wc/README vendor/subversion/dist/subversion/libsvn_wc/adm_crawler.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/adm_files.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/adm_files.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/adm_ops.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/ambient_depth_filter_editor.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/cleanup.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/conflicts.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/conflicts.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/context.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/copy.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/crop.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/delete.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/deprecated.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/diff.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/diff_editor.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/diff_local.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/entries.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/entries.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/externals.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/info.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/lock.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/lock.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/merge.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/node.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/old-and-busted.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/props.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/props.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/questions.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/relocate.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/revert.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/revision_status.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/status.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/token-map.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/translate.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/translate.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/tree_conflicts.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/tree_conflicts.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/update_editor.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/upgrade.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/util.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/wc-checks.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/wc-checks.sql vendor/subversion/dist/subversion/libsvn_wc/wc-metadata.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/wc-metadata.sql vendor/subversion/dist/subversion/libsvn_wc/wc-queries.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/wc-queries.sql vendor/subversion/dist/subversion/libsvn_wc/wc.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/wc_db.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/wc_db.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/wc_db_pristine.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/wc_db_private.h (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/wc_db_update_move.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/wc_db_util.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/wc_db_wcroot.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/wcroot_anchor.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/workqueue.c (contents, props changed) vendor/subversion/dist/subversion/libsvn_wc/workqueue.h (contents, props changed) vendor/subversion/dist/subversion/svn/ vendor/subversion/dist/subversion/svn/add-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/blame-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/cat-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/changelist-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/checkout-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/cl-conflicts.c (contents, props changed) vendor/subversion/dist/subversion/svn/cl-conflicts.h (contents, props changed) vendor/subversion/dist/subversion/svn/cl.h (contents, props changed) vendor/subversion/dist/subversion/svn/cleanup-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/client_errors.h (contents, props changed) vendor/subversion/dist/subversion/svn/commit-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/conflict-callbacks.c (contents, props changed) vendor/subversion/dist/subversion/svn/copy-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/delete-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/deprecated.c (contents, props changed) vendor/subversion/dist/subversion/svn/diff-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/export-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/file-merge.c (contents, props changed) vendor/subversion/dist/subversion/svn/help-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/import-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/info-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/list-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/lock-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/log-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/merge-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/mergeinfo-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/mkdir-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/move-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/notify.c (contents, props changed) vendor/subversion/dist/subversion/svn/patch-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/propdel-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/propedit-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/propget-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/proplist-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/props.c (contents, props changed) vendor/subversion/dist/subversion/svn/propset-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/relocate-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/resolve-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/resolved-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/revert-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/schema/ vendor/subversion/dist/subversion/svn/schema/blame.rnc vendor/subversion/dist/subversion/svn/schema/common.rnc vendor/subversion/dist/subversion/svn/schema/diff.rnc vendor/subversion/dist/subversion/svn/schema/info.rnc vendor/subversion/dist/subversion/svn/schema/list.rnc vendor/subversion/dist/subversion/svn/schema/log.rnc vendor/subversion/dist/subversion/svn/schema/props.rnc vendor/subversion/dist/subversion/svn/schema/status.rnc vendor/subversion/dist/subversion/svn/status-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/status.c (contents, props changed) vendor/subversion/dist/subversion/svn/svn.1 (contents, props changed) vendor/subversion/dist/subversion/svn/svn.c (contents, props changed) vendor/subversion/dist/subversion/svn/switch-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/unlock-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/update-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/upgrade-cmd.c (contents, props changed) vendor/subversion/dist/subversion/svn/util.c (contents, props changed) vendor/subversion/dist/subversion/svn_private_config.h.in (contents, props changed) vendor/subversion/dist/subversion/svn_private_config.hw vendor/subversion/dist/subversion/svnadmin/ vendor/subversion/dist/subversion/svnadmin/svnadmin.1 (contents, props changed) vendor/subversion/dist/subversion/svnadmin/svnadmin.c (contents, props changed) vendor/subversion/dist/subversion/svndumpfilter/ vendor/subversion/dist/subversion/svndumpfilter/svndumpfilter.1 (contents, props changed) vendor/subversion/dist/subversion/svndumpfilter/svndumpfilter.c (contents, props changed) vendor/subversion/dist/subversion/svnlook/ vendor/subversion/dist/subversion/svnlook/svnlook.1 (contents, props changed) vendor/subversion/dist/subversion/svnlook/svnlook.c (contents, props changed) vendor/subversion/dist/subversion/svnmucc/ vendor/subversion/dist/subversion/svnmucc/svnmucc.1 (contents, props changed) vendor/subversion/dist/subversion/svnmucc/svnmucc.c (contents, props changed) vendor/subversion/dist/subversion/svnrdump/ vendor/subversion/dist/subversion/svnrdump/dump_editor.c (contents, props changed) vendor/subversion/dist/subversion/svnrdump/load_editor.c (contents, props changed) vendor/subversion/dist/subversion/svnrdump/svnrdump.1 (contents, props changed) vendor/subversion/dist/subversion/svnrdump/svnrdump.c (contents, props changed) vendor/subversion/dist/subversion/svnrdump/svnrdump.h (contents, props changed) vendor/subversion/dist/subversion/svnrdump/util.c (contents, props changed) vendor/subversion/dist/subversion/svnserve/ vendor/subversion/dist/subversion/svnserve/cyrus_auth.c (contents, props changed) vendor/subversion/dist/subversion/svnserve/log-escape.c (contents, props changed) vendor/subversion/dist/subversion/svnserve/serve.c (contents, props changed) vendor/subversion/dist/subversion/svnserve/server.h (contents, props changed) vendor/subversion/dist/subversion/svnserve/svnserve.8 (contents, props changed) vendor/subversion/dist/subversion/svnserve/svnserve.c (contents, props changed) vendor/subversion/dist/subversion/svnserve/svnserve.conf.5 (contents, props changed) vendor/subversion/dist/subversion/svnserve/winservice.c (contents, props changed) vendor/subversion/dist/subversion/svnserve/winservice.h (contents, props changed) vendor/subversion/dist/subversion/svnsync/ vendor/subversion/dist/subversion/svnsync/svnsync.1 (contents, props changed) vendor/subversion/dist/subversion/svnsync/svnsync.c (contents, props changed) vendor/subversion/dist/subversion/svnsync/sync.c (contents, props changed) vendor/subversion/dist/subversion/svnsync/sync.h (contents, props changed) vendor/subversion/dist/subversion/svnversion/ vendor/subversion/dist/subversion/svnversion/svnversion.1 (contents, props changed) vendor/subversion/dist/subversion/svnversion/svnversion.c (contents, props changed) vendor/subversion/dist/win-tests.py (contents, props changed) Added: vendor/subversion/dist/BUGS ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/subversion/dist/BUGS Tue Jun 18 02:07:41 2013 (r251881) @@ -0,0 +1,2 @@ +This document has been moved to +http://subversion.apache.org/docs/community-guide/issues.html Added: vendor/subversion/dist/CHANGES ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/subversion/dist/CHANGES Tue Jun 18 02:07:41 2013 (r251881) @@ -0,0 +1,4623 @@ +Version 1.8.0 +(18 Jun 2013, from /branches/1.8.x) +http://svn.apache.org/repos/asf/subversion/tags/1.8.0 + + User-visible changes: + - General: + * require serf as client-side http library (neon support removed) (r1349694) + * deprecate the Berkeley DB FS backend (libsvn_fs_base) (r1464985 et al) + + - Major new features: + * working copy records moves as first-class operation (issue #3631, #4232) + * merge uses reintegrate mode automatically when needed (r1369896 et al) + * FSFS: Packing of revision property shards (issue #3944) + * support inheritable properties (r1395109) + * repository can suggest config for autoprops and ignores (r1401908) + * support gpg-agent for password caching (r1151069) + * authz rules can be stored inside the repository (r1424780) + + - Minor new features and improvements (client-side): + * doubled svn:// protocol throughput (r1325899) + * optimize file/dir truename checks on Windows (r1435527) + * new 'commit --include-externals' option (related to issues #1167, #3563) + * new --include-externals option for 'svn list' (issue #4225) + * remove extraneous externals output from 'svn status -q' (issue #1935) + * reject some attempts to merge between unrelated branches (r1215273) + * new --ignore-properties option for 'svn diff' (r1239553, -617) + * new --properties-only option for 'svn diff' (r1336110) + * new --patch-compatible option for 'svn diff' (r1239561) + * new --no-diff-added option for 'svn diff' (r1433958) + * new w/c subtree duplication tool (tools/client-side/detach.py) + * new mergeinfo fixup tool (tools/client-side/mergeinfo-sanitizer.py) + * 'svn diff' can compare arbitrary files and directories (r1310291, et al) + * ra_serf avoids re-downloading content present in pristine store (r1333936) + * 'svn mergeinfo' now honors the --revision (-r) option (issue #4199) + * 'svn mergeinfo' now shows a summary graph by default (issue #4239) + * new --search and --search-and options for 'svn log' (r1354666, -83518) + * 'svn log' reports the node kind even for pre-1.6 revision files (r1242958) + * sort path list generated by "svn log -v --xml" (r1299323) + * new built-in interactive text conflict merge tool (r1357864, et al) + * 'svn --version' shows build system info (r1368662) + * 'svn --version --verbose' shows runtime environment info (r1370813 et al) + * 'svn' is now non-interactive when not run in a terminal device (r1424037) + * 'svn propset' checks spelling of reserved property names (r1470781) + * improve working copy performance on network disks (issue #4176) + * support for custom keyword definitions in svn:keywords (issue #890) + * svn:ignore __pycache__ directories by default (r1150073) + * 'svn diff --git' include copyfrom revision in "copied" headers (r1155279) + * svn:mergeinfo related operations now use much less memory (r1149519 et al) + * get list of supported schemes for RA libraries (r1148134) + * 'svn checkout' skips file externals from other repositories (r1153110) + * 'svn resolve' exits non-zero if conflicts could not be resolved (r1150439) + * let HTTPv2-aware clients fetch v2-style resources (r1161202) + * 'svn status' with better NLS support (r1157537, -682) + * better tracking of shallow-yet-complete merges (issues #4056, #4057) + * make 'svn status --quiet' w/ externals quieter still (issue #1935) + * ensure that conflict paths are shown relative-ized (r1337520) + * improve performance of local multi-target deletions (r1195873) + * various interactive conflict resolver improvements in 'svn' (r1440421 etc) + * improved tree diff implementation for diff and merge (r1440599 et al) + * tree conflicts on directories detected better during merges (issue #3150) + * allow reverting unmodified copies with 'svn remove' (r1442611) + * make 'svn diff' with mixed URL and local path targets work (r1442640) + * make 'svn patch' re-add deleted directories if needed (r1445333) + * make repos-wc diffs fully ancestry-aware (r1445904) + * 'svn diff --git' now implies 'svn diff --show-copies-as-adds' (r1446279) + * 'svn diff --show-copies-as-adds' now implies --notice-ancestry (r1446279) + * improved tree-conflict detection for 'svn switch' (r1449413, r1450582) + * allow up to 8 revision number digits in 'svn status -v' output (r1428637) + * show node kind (file or dir) in tree conflict descriptions (r1429907) + * restore deleted switched paths upon next update (issue #4295) + * add support for copying paths from foreign repositories (issue #3590) + * fix merge -cA,B with --accept option aborts if rA conflicts (issue #4238) + * 'svn resolve' interactive support; no longer requires --accept (r1336929) + * notify when removing externals leaves behind modified files (r1366021) + * new 'http-max-connections' configuration option for serf (r1421559) + * new 'http-bulk-updates' configuration option for serf (r1421490) + * 'svn cleanup' now runs SQLite "vacuum" to reclaim space (r1418459) + * 'svn info' displays repository-relative URL (r1415365) + * fix serf memory leak on checkout (issue #4194) + * detect duplicate paths setting svn:externals (issue #4227) + * make ra_serf work over HTTP/1.0 proxies (issue #3979) + * make ra_serf accept gzip compression for all responses (r1407454) + * double ra_serf performance for checkout and export (r1407545) + * improve network and disk i/o interleaving in ra_serf (r1407934) + * avoid assert in ra_serf when REPORT response was truncated (r1407935) + * rewrite ra_serf XML parser (r1409259 et al) + * ra_serf can create transaction with inline txnprops (r1375167) + * partially fix replace+propset of locked file fails over DAV (issue #3674) + * fix ra_serf doesn't handle bad baseline error from server (issue #4127) + * decreased default http timeout for ra_serf (issue #3968) + * prevent ra_serf from corrupting the working copy (issue #3993) + * ra_serf transmits property changes inline to reduce requests (r1378927) + * allow client to avoid SSL certificate prompts (issue #2410) + * improve interactive resolution of property conflicts (r1387678 et al) + * make ra_serf raise an error upon delta-base mismatch (issue #4235) + * tune ra_svn transmit buffer handling (r1391788) + * make 'svnrdump' work with serf (issue #4116) + * fix 'svnrdump' on path below repository root (issue #4101) + * support ipv6 in URLs (e.g. http://[::1]/svn/repos) (r1454047) + * conflict resolver now iterates paths in a sorted order (r1461820) + * mod_dav_svn does keyword expansion with 'kw=1' query arg (r1466055) + * add support for custom keyword definitions (issue #890) + + - Minor new features and improvements (server-side): + * improve performance of config file parsing (r1344347 et al) + * new 'svnadmin load --revision' load filtering support (issue #3734) + * new 'svnadmin hotcopy --incremental' support for FSFS (issue #3815) + * new 'svnadmin lock' / 'svnadmin unlock' subcommands (issue #3942, #4092) + * new SVNUseUTF8 configuration option for mod_dav_svn (issue #2487) + * new SVNHooksEnv configuration option for mod_dav_svn (r1239966) + * new SvnPubSub distributed commit hooks (tools/server-side/svnpubsub) + * new light-weight benchmarking client (tools/client-side/svn-bench) + * svndumpfilter dependency analysis (tools/server-side/svnpredumpfilter.py) + * new automatic working copy updater (tools/server-side/svnpubsub) + * new 'svnadmin freeze' subcommand (r1376228) + * 'svndumpfilter' now supports --delta dumpfiles (r1351009, -3745) + * new --drop-all-emtpy-revs option for 'svndumpfilter' (issue #3681) + * client version info now reported to commit hooks (issue #4124) + * txn name now reported to post-commit hooks (r1240856) + * support for server-side keyword expansion in mod_dav_svn (r1466055) + * FSFS now able to cache revision properties (r1326307) + * FSFS cache for changed-paths increases 'svn log' performance (r1378358) + * FSFS cache mergeinfo requested during 'log -g' (r1395439) + * many FSFS caching improvements (r1390435, r1390447) + * directory and property deltification option in FSFS (issue #4084) + * fine-grained control deltification behavior via fsfs.conf (r1311476) + * FSFS de-duplication ("rep sharing") now works within a revision (r1397773) + * FSFS de-duplication now works for properties as well (r1243312) + * read FSFS data using fewer fopen calls (issue #3372) + * 'svnadmin verify' will now check meta data (issues #3956, #4211) + * 'svnadmin verify' now checks for issue #4129 style corruption (r1304656) + * new --client-speed option for svnserve (r1391788) + * new --single-threaded option in svnserve (r1296018) + * hook script templates are now marked as executable (r1153414) + * error out on non-canonical fspaths in the authz file (r1166111) + * improve path lookup performance in FSFS (r1442088) + * svnserve now logs explicit path and reason for authz failures (r1446542) + * validate offsets from rep-cache to prevent FSFS corruption (issue #4277) + * new AuthzSVNGroupsFile option to store authz groups separately (r1438407) + * new 'SVNAllowBulkUpdates prefer' option for mod_dav_svn (r1417642, et al) + * new 'SVNMasterVersion' option for mod_dav_svn (r1398962) + * added virtual-host support to 'svnserve' (r1401296) + * new fsfs-stats tool which prints FSFS repository stats (r1410995) + * new fsfs-reorg tool to optimize FSFS packing (r1383214, r1385395) + * new --compatible-version option for 'svnadmin create' (r1407279 ) + * new --ignore-properties option for 'svnlook diff' (r1407905) + * new --properties-only option for 'svnlook diff' (r1407905) + * new --diff-cmd option for 'svnlook diff' (r1413449) + * allow leading "r"'s in http: ?p= and ?r= query parameters (r1221463) + * faster 'svn ls' for large directories (r1296627) + * mod_dav_svn now advertises supported POST types (r1375123) + * mod_dav_svn can create transaction with inline txnprops (r1375167) + * run start-commit hook after transaction creation (r1376201) + * avoid byte-for-byte comparison where it can be avoided (r1390641) + * various server-side performance improvements for 'log -g' (r1395442 et al) + * allow up to 10Gbit throughput with svnserve (r1391788) + * install mod_dontdothat correctly (r1454450) + * svnadmin verify can now verify transactions (r1462353) + * FSFS verifies revisions as they are added (r1462409) + + - Client-side bugfixes: + * fix inconsistent 'svn log' output for empty revisions (issue #3964) + * fix mis-ordered text output of 'svn log --diff' on Windows (r1220783) + * fix 'svn log --diff' on moved file (issue #4153). + * fix 'svn revert' of 'svn move' (issue #876) + * fix file externals wrongly "resurrecting" a deleted file (#4017) + * fix reporting of corrupted 1.6 w/cs by 'svn upgrade' (r1182904, -9) + * fix bug caused by URI-decoding local merge source paths (r1210539) + * fix properties out of sync with repos after merge and revert (issue #4305) + * fix merge of replacement on local delete fails (issue #4011) + * fix replacements on deletes produce wrong tree conflicts (issue #3806) + * made ra_serf handle location headers that are not RFC-compliant (r1443906) + * merge no longer errors out after resolving all conflicts (issue #4316) + * fix svn blame mis-categorizing file type as binary (issue #2089) + * fix externals not removed when working copy is made shallow (issue #3741) + * fix update under add with not-present parent (issue #4111) + * fix revert of files with svn:needs-lock under copied dirs (r1343168) + * fix repos->wc diff of local copied/moved-here directories (r1341927) + * fix repos->wc diff of local copied/moved-here files (r1341544) + * fix "svn diff -cN PATH" where PATH was deleted in rN (r1338708) + * fix dependency on APR hash order in several logic paths (r1338350 et al) + * fix path inconsistencies in 'svn diff' output (r1338291) + * fix misleading error message printed by 'svn switch' (issue #2337) + * fix bug in mergeinfo recording during foreign-repos merge (r1430310) + * fix spurious merge conflicts for binary files with keywords (issue #4221) + * fix patching symlinks with 'svn patch' (issue #4273) + * make 'svn switch' refresh lock information (issue #3376) + * fix 'svn diff' output doesn't apply as patch without fuzz (issue #3362) + * fix mergeinfo recording for multiple-revision-range merge (issue #4306) + * fix diffs shown by 'show-diff' conflict prompt option (r1438879) + * don't print an update summary header with no content (r1439480) + * make 'svn rm' remove externals registrations below its targets (r1361256) + * fix crashes in ra_serf where AVG 2012 Surf-Shield is in use (issue #4175) + * don't raise conflicts on identical binary files (issue #4128) + * improve error messages when wc.db missing (issue #4118) + * fix 'svn diff' showing wrong text change (issue #4270) + * fix 'svn diff -rN' failing to show local replace (issue #3797) + * fix 'svn diff' showing wrong revision (issue #4010) + * fix 'svn merge' showing spurious notifications (issue #2910) + * parse '.@HEAD' correctly (issue #3606) + * fix 'svn revert' after conflict in sparse working copy (issue #4168) + * fix bug in global/per-server config handling in serf (r1421516) + * properly display errors from serf (r1398742) + * fix crash in ra_serf (r1408291) + * fixed svnmucc propset and propdel on repository root (issue #3663) + * fix 'svn info' output with ancient svnserve servers (pre-1.2) (r1409732) + * ra_serf shows error message for 408 Request Timeout response (r1410983) + * fix handling of "\ No newline ..." in diff/patch (r1411723, r1412382) + * allow infinite http timeout in ra_serf (r1411976) + * using unknown svn: property names now requires --force (issue #4261) + * fix handling of case insensitive configuration files (r1215089) + * properly handle errors during password caching (r1380695) + * fix svnversion output not always a number (issue #4226) + * fix conflict resolver losing executable bit of a file (r1391019) + * fix redundant notifications when merging with ra_serf (issue #3802) + * fix 'svn add --force /path/to/wcroot' should work (issue #4241) + * fix file permissions changed after commit (issue #4331) + * improve handling of http errors in ra_serf (1452792, 1452870) + * include checksum of missing pristines in error message (r1452800) + * fix an assert when merging against a replaced source (issue #4132) + * fix replacement in merge source has incorrect notification (issue #4138) + * improve performance of checkout (r1453791) + * fixed documentation regarding merge source (issue #3247) + * fix merge errors out after resolving conflicts (issue #4316) + * fix delete/move with file external in unversioned dir (issue #4293) + * fix resolving tree conflict with local node missing (r1461848) + * fix invalid read during diff suffix scanning (issue #4339) + * fix assertion when running 'svn log @PREV' (r1462134) + * optimize enumerating configuration options (r1464478) + * revert will now sleep for timestamps if using commit times (r1464769) + * don't allow externals to be deleted with 'svn rm' (r1464992) + * improved memory usage in ra_serf and ra_local (r1465280) + * replace some assertions with more helpful error messages (r1465975) + * fixed long keyword expansion truncated (issue #4349) + + - Server-side bugfixes: + * SVNParentPath / repository listing now authz-filtered (r1408184) + * user/group names in the authz config file are case-sensitive (r1475772) + * limit commit runtime for nodes with very deep histories (r1224836) + * 'svnadmin recover' truncates rep-cache at the right point (issue #4077) + * fix crashes in dumpstream loading with skipped revs (r1214202, r1214216) + * fix 'svn log -g' incorrectly treating rename as merge (issue #4022) + * fix bug where fsfs file-hinting fails (issue #4320) + * don't leak path of repository on server's disk to clients (r1330906) + * remove spurious is-fresh-txn-root from empty revision files (issue #4031) + * fix a stdout handling problem in 'svnlook diff' (r1411971) + * fix erratic behaviour in 'svnlook diff' showing property diffs (r1412224) + * fix inconsistent authz error messages in 'svn log' in svnserve (r1292462) + * fix svndumpfilter for empty paths in included or excluded lists (r1294583) + * make fsfs packing threadsafe (r1376011) + * don't error out on intermittent memcached failures (r1394470) + * fix a ra_svn deadlock with zero-copy server option (r1465622) + + - Other tool improvements and bugfixes: + * 'svnmucc' promoted to first-class supported utility (issue #3308, #4279) + * make 'svnmucc' prompt for log messages (issue #3418) + * rename 'svnauthz-validate' to 'svnauthz' (issue #4284) + * make 'svnauthz' optionally validate user/path access (r1197588) + * fix mailer.py test suite problems (r1449582) + * fix mailer.py not showing dirs with property deletions (r1449582) + * make mailer.py generate Date and Message-ID headers (r1449592) + * new '-?' option support for 'svnmucc' (r1339428) + * provide the repository name to mailer.py (r1439592) + * add '--force-interactive' to svnmucc (r1457789) + * add '--trust-server-cert' to svnmucc (r1458995) + + Developer-visible changes: + - General: + * now require Python 2.5 for tests and dev tools (r1243627) + * now require bzip2 for tests and dev tools (r1148512) + * configure defaults to --without-apache-libexecdir (r1469862) + * support builds with APR pool debugging (r1176894) + * 'make extraclean' is more thorough now (r1149460) + * support for Serf 2 (r1147538) + * introduction of editor v2 (via private APIs only) (r1166332 et al) + * improve SQLite setup for compatibility with OS X 10.7. (r1181666) + * rework switch statement to accomodate OWC compiler limitations (r1204407) + * new --enable-sqlite-compatibility-version configure option (r1201421) + * make test suite LD_LIBRARY_PATH include just-built auth plugins (r1200474) + * packages/ directory removed, contents were outdated and unused (r1442167) + * rename 'makefile.ezt' to 'build-outputs.mk.ezt' (r1444822) + * use expensive compiler optimizations with --enable-optimize (r1445063) + * in Visual C++ builds, move temp files to different directory (r1446416) + * remove --with-ssl and --with-gssapi configure options (r1449023) + * require at least serf 1.2.0 as build dependency (issue #4296) + * fix error tracing to record file/line properly (r1331242) + * add --log-level argument to win-tests.py (r1335461) + * improve GDB pretty-printing of svn types (r1351336, r1364750, r1365035) + * load third-party FS modules (if --enable-runtime-module-search) (r1362434) + * enable running the regression tests over https (r1349699) + * support 'make davautocheck' on OS X (r1421583) + * new '--enable-gcov' configure option (r1416646) + * fix build with Apache HTTPD 2.5 (r1408985) + * allow running the test suite through a http proxy (r1410195) + * don't use non-constant initializers in struct variables (r1412911) + * allow generation of Visual Studio 2012 compatible projects (r1245152) + * nicer pretty-printing of Subversion data types in gdb (r1367262 et al) + * teach serf build on Windows to use static APR/Util and OpenSSL (r1371338) + * add --ssl-cert option to win-tests.py to run tests over https (r1372760) + * don't strip Content-Type header form .po files on Windows (r1380056) + * configure now script auto-detects GNOME keyring (r1387230) + * allow configure to detect BDB on Debian-based Linux distros (r1390633) + * auto-detect serf via pkg-config (r1391662) + * improve queries for compatability with SQLite 3.7.16 (r1455239) + * remove support for in-tree apr, apr-util and apr-memcache (r1456924) + * FSFS caching supports prefixes now (r1462436) + * maintainer mode now prints symbolic error codes (r1465157) + * don't require NLS support for kwallet support (r1466445) + * make Julian happy (r1413030) + + - API changes: + * fix inconsistent handling of log revs without changed paths (issue #3694) + * deprecated SVN_ERR_SQLITE_UNSUPPORTED_SCHEMA (r1173240) + * provide API to clear cached auth credentials (issue #2775) + * improve repository location information in various APIs (issue #4170) + * major rewrite of conflict storage and handling APIs (r1354973 et al) + * hide (deprecate) svn_wc APIs that use editors (r1243339) + * svn_stringbuf_ensure() allocates an extra byte for terminator (r1308966) + * switch and update apis are now more consistent (r1465292) + * deprecated svn_client_merge_reintegrate (r1466742) + * deprecated low level ra_svn apis (r1466907) + + - Bindings: + * star-imports in swig-py only import 'svn_*' symbols (r1303375) + * fix compilation of Perl bindings on Mandriva 2007 (issue #2617) + * new JavaHL testing targets (r1182983) + * enable returning an error on malfunctions for JavaHL (r1366215) + * MacOS X build fix to cope with missing GNOME keyring (r1397844) + * fix swig bindings tests on MacOS X (r1397846) + * fix assertion failure in JavaHL error reporting (r1405922) + * support ruby 1.9 (r1407206) + * JavaHL: Include OSGI Manifest information in svn-javahl.jar (r1234864) + * new svn_auth_set_gnome_keyring_unlock_prompt_func function (r1241554) + * fix svn_txdelta window ops for python bindings (r1389054) + * fix build of Perl bindings with newer versions of SWIG (r1389658) + * add missing API functions to Perl bindings (issue #2646) + * add missing API functions to Python bindings (r1392038 et al) + * add missing API functions to JavaHL bindings (issue #4326) + * fix some reference counting bugs in swig-py bindings (r1464899, r1466524) + + +Version 1.7.10 +(30 May 2013, from /branches/1.7.x) +http://svn.apache.org/repos/asf/subversion/tags/1.7.10 + + User-visible changes: + - Client-side bugfixes: + * fix 'svn revert' "no such table: revert_list" spurious error (issue #4168) + * fix 'svn diff' doesn't show some locally added files (issue #3797) + * fix changelist filtering when --changelist values aren't UTF8 (r1475724) + * fix 'svn diff --git' shows wrong copyfrom (issue #4294) + * fix 'svn diff -x-w' shows wrong changes (issues #4133 and #4270, r1427278) + * fix 'svn blame' sometimes shows every line as modified (issue #4034) + * fix regression in 'svn status -u' output for externals (r1434750) + * fix file permissions change on commit of file with keywords (issue #4331) + * improve some fatal error messages (r1465975) + * fix externals not removed when working copy is made shallow (issue #3741) + + - Server-side bugfixes: + * fix FSFS repository corruption due to newline in filename (issue #4340) + * fix svnserve exiting when a client connection is aborted (r1482759) + * fix svnserve memory use after clear (issue #4365) + * fix repository corruption on power/disk failure on Windows (r1483781) + + Developer-visible changes + - General: + * make get-deps.sh compatible with Solaris /bin/sh (r1451678) + * fix infinite recursion bug in get-deps.sh (r1421541, r1424977) + * fix uninitialised output parameter of svn_fs_commit_txn() (r1461743) + + - Bindings: + * fix JavaHL thread-safety bug (r1476359) + + +Version 1.7.9 +(04 Apr 2013, from /branches/1.7.x) +http://svn.apache.org/repos/asf/subversion/tags/1.7.9 + User-visible changes + - Client-side bugfixes: + * improved error messages about svn:date and svn:author props. (r1440620) + * fix local_relpath assertion (issue #4257) + * fix memory leak in `svn log` over svn:// (r1458341) + * fix incorrect authz failure when using neon http library (issue #4332) + * fix segfault when using kwallet (r1421103) + + - Server-side bugfixes: + * svnserve will log the replayed rev not the low-water rev. (r1461278) + * mod_dav_svn will omit some property values for activity urls (r1453780) + * fix an assertion in mod_dav_svn when acting as a proxy on / (issue #4272) + * improve memory usage when committing properties in mod_dav_svn (r1443929) + * fix svnrdump to load dump files with non-LF line endings (issue #4263) + * fix assertion when rep-cache is inaccessible (r1422100) + * improved logic in mod_dav_svn's implementation of lock. (r1455352) + * avoid executing unnecessary code in log with limit (r1459599) + + Developer-visible changes: + - General: + * fix an assertion in dav_svn_get_repos_path() on Windows (r1425368) + * fix get-deps.sh to correctly download zlib (r13520131) + * doxygen docs will now ignore prefixes when producing the index (r1429201) + * fix get-deps.sh on freebsd (r1423646) + + - Bindings: + * javahl status api now respects the ignoreExternals boolean (r1435361) + + +Version 1.7.8 +(17 Dec 2012, from /branches/1.7.x) +http://svn.apache.org/repos/asf/subversion/tags/1.7.8 + User-visible changes + - Client- and server-side bugfixes: + * Fix typos in pt_BR, es and zh_TW translations (r1402417, r1402421) + + - Client-side bugfixes: + * fix crash with --username option on Windows (r1396285) + * add missing attributes to "svn log -v --xml" output (r1398100) + * fix svn patch ignoring hunks after no trailing newline (r1399174) + * fix hang with ra_serf during error processing (r1403583) + * ignore file externals with mergeinfo when merging (r1401915) + * fix "svnmucc cp" segfault with a missing last argument (issue #4079) + * fix conflict handling on symlinks (issue #4091) + + - Server-side bugfixes: + * properly detect threading availability (r1398325) + * fix "svnadmin load --bypass-prop-validation" (r1237779) + * fix parsing of [groupsfoo] sections in authz file (issue #3531) + * add Vary: header to GET responses to improve cacheability (r1390653) + * fix fs_fs to cleanup after failed rep transmission (r1403964, et al) + * fix mod_dav_svn to complain about revisions > HEAD (r1403588) + + Developer-visible changes: + - General: + * fix incorrect status returned by 1.6 API (r1403258) + * fix compilation with g++ 4.7 (r1345740) + * fix svn_uri_get_file_url_from_dirent on Windows (r1409146) + + +Version 1.7.7 +(09 Oct 2012, from /branches/1.7.x) +http://svn.apache.org/repos/asf/subversion/tags/1.7.7 + User-visible changes + - Client- and server-side bugfixes: + * fix memory read bug (r137614) + * update Chinese translation + + - Client-side bugfixes: + * fix issues with applying Git patch files (r1374800, et al) + * fix status does not descend into dir externals after upgrade (issue #4016) + * fix file externals don't update with old mod_dav_svn (issue #4224) + * fix external diff tool duplicates Index: lines with 'svn diff' (r1380697) + * fix GNOME keyring library fails with very old glib (r1378847) + * fix unknown password stores in config file cause error (r1375052) + * fix assertions in ra_serf running against server root (r1365519, et al) + * fix ra_serf checkout/export aborts early on Windows (issue #4174) + + - Server-side bugfixes: + * fix an assert with SVNAutoVersioning in mod_dav_svn (issue #4231) + * fix unbounded memory use with SVNPathAuthz short_circuit (r1387943) + * fix svndumpfilter exclude --targets requires leading slash (issue #4234) + * fix connection ttl for memcache should be 50 seconds (r1391641) + * stabilize order of paths in dumpfiles with APR 1.4.6 (r1344864, et al) + + Developer-visible changes: + - General: + * print "All tests successful" at the end of 'make check' (r1375089) + * fix sandbox violation in a test (r1371282) + * fix tests fail when running within a format 30 WC (r1391188, et al) + * fix return value of svn_client_update4() incorrect (r1380295) + * fix make check summary missing test failures (r1390965) + * fix build does not fail when apache httpd is not available (r1374198) + + - Bindings: + * fix swig-pl build fails with swig 2.0.7 and newer. (r1389658) + * fix swig-py runtime problems with swig 2.0.5 and newer (r1351117) + + +Version 1.7.6 +(15 Aug 2012, from /branches/1.7.x) +http://svn.apache.org/repos/asf/subversion/tags/1.7.6 + + User-visible changes: + - Client- and server-side bugfixes: + + - Client-side bugfixes: + * Fix "svn status -u --depth empty FILE" (r1348822, r1349215) + * Fix example output of 'svn help status' (issue #3962) + * propset of svn:eol-style might not notice related text changes (r1353572) + * sort output of 'svn propget -R' (r1355699) + * sort output of 'svn proplist' (r1355698) + * sort output of 'svn status' (r1341012) + * avoid a filestat per working copy find operation (r1340556) + * optimize 'svn upgrade' performance on large working copies (r1342984) + * allow 'file:///C:\repos' style arguments on Windows, like 1.6 (r1346765) + * fix ra_serf against Subversion 1.2 servers (r1349367) + * fix 'svn upgrade' on working copies with certain tree conflicts (r1345482) + * avoid workqueue references to system temp dir (r1367854) + * allow non-existant canonical paths (r1367853) + * fix 'svn revert --depth files' to operate on files (r1365554) + * fix ra_serf XML namespace handling against malicious server (r1337441) + * fix relocate with server-relative externals (issue 4216) + * change two asserts into errors for TortoiseSVN (r1368128, r1368065) + * don't attempt to anchor an operation outside a wc root (r1361341) + + - Server-side bugfixes: + * partial sync drops properties when converting to adds (issue #4184) + * replaying a copy and delete of an unreadable child fails (issue #4121) + * allow svnlook to operate on r0 (r1362508) + * make FSFS revision files independent of APR hash order (r1367498) + + - Other tool improvements and bugfixes: + * move mod_dontdothat to install-tools (r1307177) + + Developer-visible changes: + - General: + * fix running tests against httpd 2.4 (r1291594) + * use constant struct initialisers for C89 compatibility (r1352068) + + - Bindings: + * JavaHL: Don't assert on some invalid input (r1354626, r1354652) + * JavaHL: Add missing new in 1.7 notifications (r1351772) + + +Version 1.7.5 +(17 May 2012, from /branches/1.7.x) +http://svn.apache.org/repos/asf/subversion/tags/1.7.5 + + User-visible changes: + - Client- and server-side bugfixes: + * http: report deleted-revision upon delete during update (r1327474) + + - Client-side bugfixes: + * avoid potential segfault when canonicalizing properties (r1296369) + * improve memory and file-handle management with externals (issue #4130) + * serf: convert assertions to "MERGE failed" errors (r1302417) + * fix undefined behaviour during multi-segment reverse merges (issue #4144) + * fix potential use of already freed memory during diff operation (r1311935) + * improve performance of scan for the working copy root (r1306334) + * cmdline: fix segfault during 'svn diff' argument processing (r1311702) + * fix regression from 1.6 in update with --depth option (issue #4136) + * propset: avoid undefined behaviour in error path (r1325361) + * reset sqlite statements, partly for sqlite-3.7.11 compat (r1328846, et al) + * fix assertion during 'svn diff -r BASE:HEAD ^/trunk' (issue #4161) + * notify upon 'update' just removing locks on files (r1329876) + * neon: fix potential use of freed memory during commits (r1329388) + * 'status --xml' doesn't show repository deletes correctly (issue #4167) + * fix assert on svn:externals with drive letter on Windows (issue #4073) + * fix 'svn update --depth=empty' against 1.4 servers (issue #4046) + * handle missing svn:date reported by svnserve gracefully (r1306111) + * fix merges which first add a subtree and then delete it (issue #4166) + * fix a regression with checkout of file externals (issue #4087) + * don't add spurious mergeinfo to subtrees in edge-case merge (issue #4169) + * improve performance of status on large working copies (issue #4178) + + - Server-side bugfixes: + * fix non-fatal FSFS corruption bug with concurrent commits (issue #4129) + * mod_dav_svn: raise an error on MERGE of non-existent resource (r1298343) + * mod_dav_svn: support compiling/running under httpd-2.4 (r1232267) + * mod_dav_svn: forbid BDB repositories under httpd's event MPM (issue #4157) + + - Other tool improvements and bugfixes: + * emacs support: updates to dsvn.el and vc-svn.el (r1200896, et al) + + Developer-visible changes: + - General: + * windows example distribution scripts: include svnrdump (r1295007) + * fix running the test suite with jsvn (r1335555) + + - Bindings: + * swig-py tests: avoid FAILs on APR hash order (r1296137, r1292248) + * swig-rb tests: avoid FAILs on APR hash order (r1310535, r1310594) + * swig-pl: Improved perl detection in gen-make.py (r1291797, r1291810) + + +Version 1.7.4 +(08 Mar 2012, from /branches/1.7.x) +http://svn.apache.org/repos/asf/subversion/tags/1.7.4 + + User-visible changes: + * fix 'svn log --diff' for moved paths (r1210147, et al) + * fix ra_serf problem with reading directory entries via HTTPv2 (r1238121) + * prepend "sqlite:" to error messages from SQLite (r1245738, -817) + * fix randomly missing "Merged via" notifications in 'svn log -g' (r1293229) + * fix spurious conflict when merging deleted symbolic link (issue #4052) + * fix URL-to-WC copy of externals on Windows (issue #4123) + * improve an FSFS sanity-check error message (r1294470) + * fix regressions with symlinks pointing at externals (issue #4102) + * fix 'svn log --diff' output ordering issue on Windows (r1295671) + + Developer-visible changes: + * don't build mod_dontdothat if not building with httpd (r1243976) + * fix the testsuite to avoid FAILs on APR hash order (r1230714, et al) + + +Version 1.7.3 +(14 Feb 2012, from /branches/1.7.x) +http://svn.apache.org/repos/asf/subversion/tags/1.7.3 + + General: + * ship mod_dontdothat with the standard release + + User-visible changes: + * fix segfault on 'svn rm $ROOT_URL' (issue #4074) + * replace a couple of assertions in favor of errors (r1207858, -949) + * fix a server assert after being upgraded (r1210195) + * fix segfault on 'svn mkdir svn://localhost' (r1211483) + * make 'svnadmin recover' prune the rep cache (r1213331, et al) + * make svnmucc use values from --config-dir option + * update and clarify the merge help text (r1154121, et al) + * replace wc assertion with informative error (r1222521, -693) + * copy permissions correctly for FSFS dirs (r1229252) + * improve 'svn log --with-all-revprops' over ra-dav (issue #4082) + * fix segfault when remapping a file external (issue #4093) + * fix segfault caused by obstructing unversioned dir (r1229677) + * fix regression on first update of external dir with '-r' (issue #4053) + * fix various EOL-handling problems in 'svn patch' (issues #3814, #3991) + * fix segfault in 'svn revert' (r1229303) + * improve correctness of 'svn patch --dry-run' (r1231944, -5) + * enforce revisions given in 'svn:externals' (issue #4053) + * fix potential corruption on 32-bit FSFS with large files (r1230212) + * make 'svn status --xml' show new files (issue #4097) + * fix 'svn mergeinfo' correctness (issue #4050) + * return the correct status for non-present nodes (r1232202, -07, -21, -22) + * improve SASL error messages (r1236343, et al) + * improve server cert error code for ra_serf (r1232413) + * fix SVNParentPath listings for parent path symlinks (r1221767, -80) + * fix mod_dav_svn's handling of POST errors (issue #4086) + * log some mod_dav_svn errors, rather than ignoring them (r1237720, -9596) + * relax requirements for canonicalization in mod_dav_svn (r1236173) + * fix a rare source of FSFS corruption (r1240752) + * allow committing the result of some copy operations (issue #4059) + * prevent one-byte buffer overflow in base64 decoding (r1242337) + + Developer-visible changes: + * JavaHL: Add missing notify action, fixing an exception (r1221793) + * fix swig-py memory leak (r1235264, -296, -302, -736) + * fix spurious test suite failure (r1220742, -50) + * allow running tests on UNC shares (r1225491) + * bindings: see platform-specific password providers (r1242660, -1) + * skip 'svnrdump dump' tests over ra_serf (r1242537) + * convert a few ra_serf assertions to errors (r1242607) + + +Version 1.7.2 +(02 Dec 2011, from /branches/1.7.x) +http://svn.apache.org/repos/asf/subversion/tags/1.7.2 + + User-visible changes: + * fix working copy corruption after interrupted update/switch (issue #4040) + * avoid segfaults against pre-1.5 servers (r1186928) + * improve configure error message if apr-util uses old or no bdb (r1186784) + * make 'svn patch' ignore '/dev/null' targets for compat with git (r1197998) + * fix 'svn patch' segfault on patch that skips and deletes files (r1199950) + * omit "Committed revision N." output from 'svn commit --quiet' (r1200837) + * fix authz denial when svnserve root is a repository (issue #4060) + * fix uninitialized memory read in client diff code (r1201002) + * avoid potential segfault during merges (r1202807) + * fix an assertion failure when a symlink is updated (r1186944, -81, -83) + * make working copy operations fail if nodes have no base checksum (r1202630) + * fix nested s when using v2 protocol (r1203546, -651, -653) + * make mod_dav_svn ignore non-Subversion POST requests (r1187695) + * avoid reading freed memory (r1204478) + * recognize empty (only byte order mark) UTF-8 files as text (issue #4064) + * fix 1.7 client regression when operating against a 1.0.x server (r1199876) + * remove empty parent dirs of removed externals on update (issue #4044) + * make 'svn diff -c N' work for files added in rN (issue #2873) + * plug a memory leak in the bdb backend (r1205726) + * fix 'svn import' with native eol-style and inconsistent EOLs (r1205193) + * fix reading beyond the end of a string in bdb backend (r1205839, -48) + * don't assert when committing an incomplete directory (issue #4042) + + Developer-visible changes: + * JavaHL: allow 'status -u' to function properly (r1189190, -395) + * don't put '\r' characters in our generate sql headers (r1189580) + * properly define WIN64 on Windows x64 builds (r1188609) + * better adherence to C89 in enum definitions (r1189665) + * bump copyright year in Windows DLLs (r1189261) + * log a better error when opening rep-cache.db fails (r1204610, -73) + + +Version 1.7.1 +(24 Oct 2011, from /branches/1.7.x) +http://svn.apache.org/repos/asf/subversion/tags/1.7.1 + + User-visible changes: + * improve performance of 'svn info' (r1164386) + * improve hash table sorting performance (r1167659) + * update bash completion for 1.7 (r1177001) + * make 'svn ls' continue to work with 1.0-1.3 repos (r1154278, -379, -82) + * improve handling of error messages generated by Cyrus SASL (r1179767) + * update INSTALL documentation file (r1182115, and others) + * error instead of assert when upgrading corrupt WCs (r1182904, -9) + * improve memory usage in merge (r1176915) + * fix an invalid assertion in merge (r1149103, -35) + * improve performance of 'merge --reintegrate' in edge-case (r1167681) + * fixed: 'svn mergeinfo' shows wrong revisions for added nodes (issue #3791) + * make 'svn add --parents D/file' work if D is deleted (r1185222) + * improve performance of trivial text file merges (issue #4009) + * add FSFS sanity check to prevent corruption seen in the wild (r1178280) + * improve correctness/performance of recursive info and proplist (r1164426) + * fix memory leak in 'merge --reintegrate' (r1180154) + * fix handling of directories after 'update --set-depth=empty' (r1185911) + * fix 'checksum != NULL' assertions in some upgraded WCs (r1177732) + * fix upgrading of WCs containing authz-restricted dirs (r1185738) + * make the server tolerate svn:mergeinfo with malformed paths (r1182771) + * fix some erroneous warning messages from the svn client (r1185746) + * fix WC upgrade with replaced nodes in edge-case (issue #4033) + + Developer-visible changes: + * fix object lifetime issues in the JavaHL bindings (r1175888) + * fix org.tigris JavaHL wrappers to avoid double finalize (r1179680) + * don't write to const memory (r1177492) + * improve zlib configuration (r1174761, -98, -806) + * improve SQLite runtime init for OS X 10.7 compat (r1181666) + * improve test suite correctness (r1174111) + * fix potential segfault seen by TSVN (r1183263) + * fix backward compat crashes in JavaHL (r1183054, -347) + * fill in repos_* fields of svn_wc_status3_t for repos-only nodes (r1181609) + * disable the SQLite shared process cache (r1185242, r1185280) + + +Version 1.7.0 +(11 Oct 2011, from /branches/1.7.x) +http://svn.apache.org/repos/asf/subversion/tags/1.7.0 + +See the 1.7 release notes for a more verbose overview of the changes since +the 1.6 release: http://subversion.apache.org/docs/release-notes/1.7.html + + User-visible changes: + - General: + * No longer including contrib/ in the release tarballs (r877798) + + - Major new features: + * Less verbose HTTP-based repository access protocol (issue #1161, #3371) + * Rewritten working copy metadata storage (issue #3357) + * New 'svn patch' subcommand (issue #511) + * Rewritten FSFS in-memory caching for better performance + * New remote repository dump/load client 'svnrdump' + + - Minor new features and improvements: + * Better handling of HTTP redirects (issue #2779) + * Improved and much more consistent path handling (issue #2028, and others) + * 'svnadmin load' rewrites changed revnums in mergeinfo (issue #3020) + * Error message and help text improvements + * 'svn log' can print unidiff of changes made in a revision (issue #2909) + * 'svn diff' can print git-style unidiff annotations + * svnsync can now steal locks on a mirror repository (issue #3309) + * display the wc root in the output of 'svn info' (issue #3355) + * add 'svnlook filesize' (issue #3509) + * add 'svn upgrade' command for upgrading working copies (r877675) + * add 'svnsync --disable-locking' (issue #3545) + * subtree merges don't unconditionally stop reintegrate merge (issue #3577) + * 'svn relocate' replaces 'svn switch --relocate' (r1026475) + * 'svn relocate' updates relative externals (issue #3597) + * allow svnsync users to specify the source repo (issue #3637) + * remove redundant mergeinfo notifications for 2-URL merges (issue #3671) + * 'svn export' into the current directory (issue #3727) + * added '--parents' to 'svn update' (issue #3748) + * allow configurable connection timeout in ra_serf (r876161) + * add digest authentication in ra_serf (r876405) + * add extensive caching support to servers (r1067669, -75, -72302) + * add configurable caching to svnadmin (r1078357) + * make server-side network data compression rate configurable (r1072288) + * added support for auto-detecting mime-types with libmagic (r1131120) + * 'svn rm url1 url2 url3' uses single txn per repo (issue #1199) + * don't leave unversioned files when reverting copies (issue #3101) + + - Client-side bugfixes: + * 'svn cp A B; svn mv B C' is equivalent to 'svn cp A C' (issue #756) + * revert fetches missing directories from the server (issue #1040) + * allow subdirs of moved dirs to be moved and committed (issue #1259) + * improved performance of 'svn mv' with whole directories (issue #1284) + * 'svn rm B; svn cp A B' now works (issue #1516) + * 'svn diff URL1 URL2' now reverse of 'svn diff URL2 URL1' (issue #2333) + * error if relocating to an unused URL (issue #2531) + * 'svn blame -rWORKING' is now supported (issue #2544) + * improve correctness of commit on a relocated wc over ra_dav (issue #2578) + * add early error to 'svn add --auto-props' with mixed eols (issue #2713) + * allow 'svn diff' to accept symlinks as targets (issue #2716) + * don't lose props for replaced items (issue #2743) + * handle mergeinfo for subtrees removed outside of svn (issue #2915) + * add ability to force 'svn diff' to use internal diff (issue #3701) + * correctly recover a schedule-for-delete rm'd outside of svn (issue #3106) + * don't create self-referential mergeinfo from own history (issue #3157) + * improve 'svn log -g' handling of bad mergeinfo source paths (issue #3270) + * better conflict stat printing (issue #3342, issue #3594) + * 'svn update' restores excluded files (issue #3544) + * allow reintegrate merges into WCs with missing subtrees (issue #3603) + * more gracefully error when given back cmdline input (issue #3620) + * update exit codes to reflect command failure (issue #3622) + * don't double-update file externals (issue #3665) + * improve output of multi-target update (issue #3693, #3746) + * make 'svn up --set-depth=exclude FILE' work (issue #3736) + * return correct error code for 'svn cat' on nonexisting file (issue #3713) + * support svn:externals on locally added directories (issue #2267) + * use installed GSSAPI lib for Kerberos in ra_serf (r877381) + * allow 'svn info' to run on an excluded item (issue #3792) + * improve 'log -g' output with reverse merges (issue #3176) + * don't print error message if stdout is a pipe and is closed (issue #3014) + * removed special copy-handling during updates added in 1.5.0 (issue #3711) + * fix warning about copies committed with non-infinity depth (issue #3752) + * can now commit multiple wc paths lacking a common parent (issue #2381) + * 'svn export --depth $WC' now works correctly (issue #3800) + * added support for case-only renames on Windows (issue #3702) + * 'svn delete --force' removes tree conflicts (issue #3805) + * don't throw an error when skipping tree conflicts in update (issue #3329) + * don't break commits of wc->wc copies with file externals (issue #3589) + * allow 'svn info' to work on symlinks to working copies (issue #2305) + * allow 'svn st --show-updates' to work across symlinks (issue #3117) + * 'svn revert' shouldn't loop on symlinks (issue #3972) + * fixed: wc-to-wc copy of a switch source (issue #1802) + * fixed: 'svn st' reports symlinks as obstructed items (issue #2284) + * fixed: 'cd e:\; svn up e:\' fails (issue #2556) + * fixed: svn aborts on commiting from root dir on windows (issue #3346) + * fixed: removing a dir scheduled for deletion corrupts wc (issue #2741) + * fixed: 'svn cleanup' fails on obstructed paths (issue #2867) + * fixed: case-only renames resulting from merges don't work (issue #3115) + * fixed: 'svn mergeinfo' ignores peg rev for wc target (issue #3180) + * fixed: unable to merge to wc of deleted branch (issue #3221) + * fixed: move via merge leaves behind versioned move source (issue #3324) + * fixed: ra_serf does not honor http-proxy-exceptions (issue #3428) + * fixed: 'svn mv A B; svn mv B A' loses history (issue #3429) + * fixed: ra_serf doesn't support http-auth-types config (issue #3435) + * fixed: merge sets incorrect mergeinfo on skipped paths (issue #3440) + * fixed: ra_serf inconsistent handling of cached authn creds (issue #3450) + * fixed: ra_serf sefault with using NTLM or Negotiate auth (r876910) + * fixed: excluded subtrees are not detected by svnversion (issue #3461) + * fixed: submitting a changelist while obstructed item exists (issue #3484) + * fixed: crash when changing an external's URL (issue #3530) + * fixed: target moved after branching breaks reintegrate (issue #3640) + * fixed: potential race condition in svnsync (issue #3546) + * fixed: spurious merge conflicts with pre-1.7 mod_dav_svn (issue #3657) + * fixed: repeat merge is not a no-op (issue #3564) + * fixed: inheritance results in self-referential mergeinfo (issue #3668) + * fixed: inheritance results in nonexistent mergeinfo sources (issue #3669) + * fixed: memory leaks in ra_serf (issue #3684) + * fixed: corruption of 'svn pg' output for large properties (issue #3721) + * fixed: 'svnsync copy-revprops' doesn't sync revprop dels (issue #3728) + * fixed: executable flag not correctly set on merge (issue #3686) + * fixed: 'svn rm' fails on multiple URLs with encoded spaces (issue #3839) + * fixed: children of replaced dirs cannot be deleted (issue #3468) + * fixed: executable flag of binary file lost during merge (issue #3686) + * fixed: merging a symlink-turned-regular-file breaks the wc (issue #2530) + * fixed: can't remove file externals (issue #3351) + * fixed: 'svn unlock' attempts to unlock wrong token on DAV (issue #3794) + * fixed: forced DAV 'svn unlock' results in 403, not warning (issue #3801) + * fixed: rm -> ci -> cp = missing directory (issue #2763) + * fixed: 'svn info' returns parent info on missing dirs (issue #3178) + * fixed: spurious prop conflict with 'merge --reintegrate' (issue #3919) + * fixed: 'svn --version' fails with non-existant $HOME (issue #3947) + * fixed: unforced export silently overwites existing file (issue #3799) + * fixed: reverse merge which adds subtree mergeinfo fails (issue #3978) + * fixed: 'svn up -r{R>HEAD}' hangs client over ra_svn (issue #3963) + * fixed: 'svn up' updates file externals in target siblings (issue #3819) + * many other minor bugfixes, optimizations, plugs of memory leaks, etc + + - Server-side bugfixes: + * mod_dav_svn is less strict about auto-merging for commits (issue #1704) + * allow SVNListParentPath to be used with authz (issue #2753) + * allow nav to repo list from repo top with SVNListParentPath (issue #3159) + * allow repositories in the root of a drive on windows (issue #3535) + * don't destroy mergeinfo with 'svnadmin load --parent-dir' (issue #3547) + * fixed: 'svnadmin hotcopy' does not duplicate symlinks (issue #2591) + * fixed: post-revprop-change errors cancel commit (issue #2990) + * fixed: mod_dav_svn runs pre-revprop-change hook twice (issue #3085) + * fixed: mod_dav_svn doesn't return stderr to user on failure (issue #3112) + * fixed: hotcopy may corrupt target rep-cache.db (issue #3596) + * fixed: mod_dav_svn can cause spurious merge conflicts (issue #3657) + * fixed: DAV can overwrite directories during copy (issue #3314) + * fixed: 'svn log' returns log of unrelated path (issue #3931) + * match paths against authz rules in case sensitive way (issue #3781) + * svnserve can now force usernames to upper/lower case (issue #3726) + * reduce duplicate log messages in 'log -g' (issue #3650) + * svnserve: don't crash on shutdown with SASL in inetd mode (issue #3664) + * disallow arbitrary HTTP headers from committers (issue #2872) + * limit FSFS memory consumption (issue #3478, #3593) + * many other minor bugfixes too numerous to list here + + - Other tool improvements and bugfixes: + * svnsync now takes the '--config-option' argument (issue #2027) + * svnsync can translate non-UTF-8 properties to UTF-8 (issue #3817) + * svnadmin now errors on non-UTF-8 revision properties (issue #3755) + * svnadmin verify now errors on non-UTF-8 paths (r1129641) + + Developer-visible changes: + - General: + * improved output of 'make check' + * introduce scratch_pool/result_pool parameter paradigm + * improved error tracing (r877208, -736) + * improve building with sqlite on Windows (issue #3364) + * allow mod_dav_svn to compile against Apache 2.4 (issue #3548) + * support running tests against older servers (r876016) + * notification of unversioned obstructions (r877344) + * removed virtually all abort() calls (issue #2780) + * don't include client-specific suggestions in error msgs (issue #3887) + + - API changes: + * don't crash svn_client_copy if ctx->log_msg_func is NULL (issue #3234) + * much improved ra_serf error handling (issue #3375) + * provide clients with old and new revision on update (r876515) + * close both files, even on error in svn_stream_copy3() (r887262) + * added 'work-in-progress' XFail test status (r876549) + * notifications sent when mergeinfo changes (r877588) + * add information on text and property mods in log APIs (r877688) + * fixed: svn_ra_local__get_file() leaks file descriptors (issue #3290) + * svn_ra_neon__get_dir() returns correct dir set for URLs (issue #3093) + * swig-py: always set ChangedPath.path (also for deletes) (issue #2630) + * improve conflict resolver API for a specific direction (issue #3049) + + - Bindings: + * New JavaHL package: org.apache.subversion + * Deprecate the SVNClientSynchronized class in JavaHL (issue #2755) + * fixed setting binary properties in JavaHL (issue #3770) + * fix type mapping of svn_txdelta_window_t in python bindings (issue #3688) + + +Version 1.6.23 +(30 May 2013, from /branches/1.6.x) +http://svn.apache.org/repos/asf/subversion/tags/1.6.23 + + User-visible changes + - Server-side bugfixes: + * fix FSFS repository corruption due to newline in filename (issue #4340) + * fix svnserve exiting when a client connection is aborted (r1482759) + + - Other tool improvements and bugfixes: + * fix argument processing in contrib hook scripts (r1485350) + + +Version 1.6.22 +(Not released, see changes for 1.6.23.) + + +Version 1.6.21 +(04 Apr 2013, from /branches/1.6.x) +http://svn.apache.org/repos/asf/subversion/tags/1.6.21 + + User-visible changes + - Server-side bugfixes: + * mod_dav_svn will omit some property values for activity urls (r1453780) + * improve memory usage when committing properties in mod_dav_svn (r1443929) + * fix mod_dav_svn runs pre-revprop-change twice (issue #3085) + * fixed: post-revprop-change errors cancel commit (issue #2990) + * improved logic in mod_dav_svn's implementation of lock. (r1455352) + + Developer-visible changes: + - General: + * fix a compatibility issue with g++ 4.7 (r1345740) + + +Version 1.6.20 +(04 Jan 2013, from /branches/1.6.x) +http://svn.apache.org/repos/asf/subversion/tags/1.6.20 + + User-visible changes + - Client- and server-side bugfixes: + * Fix typos in pt_BR, es and zh_TW translations (r1402417) + + - Server-side bugfixes: + * add Vary: header to GET responses to improve cacheability (r1390653) + * fix fs_fs to cleanup after failed rep transmission (r1403964, et al) + * fix an assert with SVNAutoVersioning in mod_dav_svn (issue #4231) + + +Version 1.6.19 +(10 Sep 2012, from /branches/1.6.x) +http://svn.apache.org/repos/asf/subversion/tags/1.6.19 + + - Client-side bugfixes: + * handle missing svn:date reported by svnserve gracefully (r1306111) + + - Server-side bugfixes: + * fix possible server hang if a hook script fails to start (r1330410) + * fix write-through proxy commit regression introduced in 1.6.17 (r1088602) + * partial sync drops properties when converting to adds (issue #4184) + + - Developer-visible changes: + * fix the testsuite to avoid FAILs on APR hash order (r1230714, et al) + + +Version 1.6.18 +(29 Mar 2012, from /branches/1.6.x) +http://svn.apache.org/repos/asf/subversion/tags/1.6.18 + + User-visible changes: + * reject invalid svn:mergeinfo at commit time over DAV (issue #3953) + * fix reintegrate merge regression introduced in 1.6.13 (issue #3957) + * make the stderr output of the post-commit hook XML-safe (r893478) + * fix a rare source of FSFS corruption (r1240752) + * plug a memory leak in the bdb backend (r1205726) + * server-side performance fix for "log -g" (r1152282) + * fix description of svndumpfilter's --targets option (r1151911) + * fix datastream corruption during resumed transfer in ra_serf (r1154733) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 02:09:30 2013 Return-Path: Delivered-To: svn-src-all@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 D7C8D75E; Tue, 18 Jun 2013 02:09:30 +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 B092C1F46; Tue, 18 Jun 2013 02:09: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 r5I29UQr039405; Tue, 18 Jun 2013 02:09:30 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I29U4Z039404; Tue, 18 Jun 2013 02:09:30 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306180209.r5I29U4Z039404@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 02:09:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r251882 - vendor/subversion/subversion-1.8.0-rc3 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 02:09:30 -0000 Author: peter Date: Tue Jun 18 02:09:30 2013 New Revision: 251882 URL: http://svnweb.freebsd.org/changeset/base/251882 Log: Tag svn-1.8.0-rc3 import Added: vendor/subversion/subversion-1.8.0-rc3/ - copied from r251881, vendor/subversion/dist/ From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 02:13:22 2013 Return-Path: Delivered-To: svn-src-all@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 B15AC90B; Tue, 18 Jun 2013 02:13:22 +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 8F8D11F5D; Tue, 18 Jun 2013 02:13:22 +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 38E4523F841; Mon, 17 Jun 2013 22:13:21 -0400 (EDT) DKIM-Filter: OpenDKIM Filter v2.8.3 onyx.glenbarber.us 38E4523F841 Authentication-Results: onyx.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Mon, 17 Jun 2013 22:13:19 -0400 From: Glen Barber To: Peter Wemm Subject: Re: svn commit: r251881 - in vendor/subversion: . dist dist/doc dist/doc/programmer dist/doc/user dist/subversion dist/subversion/include dist/subversion/include/private dist/subversion/libsvn_auth_gno... Message-ID: <20130618021319.GA1625@glenbarber.us> References: <201306180207.r5I27gmr039005@svn.freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="7JfCtLOvnd9MIVvH" Content-Disposition: inline In-Reply-To: <201306180207.r5I27gmr039005@svn.freebsd.org> X-Operating-System: FreeBSD 10.0-CURRENT amd64 User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-all@freebsd.org, src-committers@freebsd.org, svn-src-vendor@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 02:13:22 -0000 --7JfCtLOvnd9MIVvH Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Jun 18, 2013 at 02:07:42AM +0000, Peter Wemm wrote: > Author: peter > Date: Tue Jun 18 02:07:41 2013 > New Revision: 251881 > URL: http://svnweb.freebsd.org/changeset/base/251881 >=20 > Log: > Import trimmed svn-1.8.0-rc3 >=20 I see you must still be wearing that 1,000,000 SPF sunblock from the burning of CVS. :-) Thanks for this! Glen --7JfCtLOvnd9MIVvH Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iQEcBAEBCAAGBQJRv8I/AAoJEFJPDDeguUaj4v0H/3D5Uiojk7hOF4RS0hFztc1m yaJ7WY5OBaJ+8H11QsQAXVhtI2QiB0z9yMyFjRQBToeRKeDAqssPPcBoCa/FDXou Zc8pJViIv/EbU2SJ7Pyosz7ZAFX4cAvP1RJQwb1qneVnYpCPE8TgdEhMu/iZkPXe HbPzUo3uuKaxHeytxrGwSl4dBcxPNWIC8VlEjtHmIJuXazjJ/Q3sm4z12EM40y/u kxLPSn4uUZixxRN31YNCmWNnYKQ6OiPYqkCHkJmElnIagDN2nfI04nOl9yvQ4k7U PalWkKvcnKgaNI6mMM5IQxAEFig3QoQJnpZ+8/u2YNR2U0WhLsl7pX18pI12XnY= =cRyI -----END PGP SIGNATURE----- --7JfCtLOvnd9MIVvH-- From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 02:19:58 2013 Return-Path: Delivered-To: svn-src-all@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 95EFCBC3; Tue, 18 Jun 2013 02:19:58 +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 877B31F9E; Tue, 18 Jun 2013 02:19: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 r5I2JwmF042714; Tue, 18 Jun 2013 02:19:58 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I2JvGd042707; Tue, 18 Jun 2013 02:19:57 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306180219.r5I2JvGd042707@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 02:19:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r251883 - in vendor/sqlite3: . dist X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 02:19:58 -0000 Author: peter Date: Tue Jun 18 02:19:57 2013 New Revision: 251883 URL: http://svnweb.freebsd.org/changeset/base/251883 Log: Import sqlite-3071700 Added: vendor/sqlite3/ vendor/sqlite3/dist/ vendor/sqlite3/dist/INSTALL vendor/sqlite3/dist/Makefile.am (contents, props changed) vendor/sqlite3/dist/Makefile.in (contents, props changed) vendor/sqlite3/dist/README vendor/sqlite3/dist/aclocal.m4 vendor/sqlite3/dist/config.guess (contents, props changed) vendor/sqlite3/dist/config.sub (contents, props changed) vendor/sqlite3/dist/configure (contents, props changed) vendor/sqlite3/dist/configure.ac vendor/sqlite3/dist/depcomp (contents, props changed) vendor/sqlite3/dist/install-sh (contents, props changed) vendor/sqlite3/dist/ltmain.sh (contents, props changed) vendor/sqlite3/dist/missing (contents, props changed) vendor/sqlite3/dist/shell.c (contents, props changed) vendor/sqlite3/dist/sqlite3.1 (contents, props changed) vendor/sqlite3/dist/sqlite3.c (contents, props changed) vendor/sqlite3/dist/sqlite3.h (contents, props changed) vendor/sqlite3/dist/sqlite3.pc.in (contents, props changed) vendor/sqlite3/dist/sqlite3ext.h (contents, props changed) Added: vendor/sqlite3/dist/INSTALL ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/sqlite3/dist/INSTALL Tue Jun 18 02:19:57 2013 (r251883) @@ -0,0 +1,236 @@ +Installation Instructions +************************* + +Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free +Software Foundation, Inc. + +This file is free documentation; the Free Software Foundation gives +unlimited permission to copy, distribute and modify it. + +Basic Installation +================== + +These are generic installation instructions. + + The `configure' shell script attempts to guess correct values for +various system-dependent variables used during compilation. It uses +those values to create a `Makefile' in each directory of the package. +It may also create one or more `.h' files containing system-dependent +definitions. Finally, it creates a shell script `config.status' that +you can run in the future to recreate the current configuration, and a +file `config.log' containing compiler output (useful mainly for +debugging `configure'). + + It can also use an optional file (typically called `config.cache' +and enabled with `--cache-file=config.cache' or simply `-C') that saves +the results of its tests to speed up reconfiguring. (Caching is +disabled by default to prevent problems with accidental use of stale +cache files.) + + If you need to do unusual things to compile the package, please try +to figure out how `configure' could check whether to do them, and mail +diffs or instructions to the address given in the `README' so they can +be considered for the next release. If you are using the cache, and at +some point `config.cache' contains results you don't want to keep, you +may remove or edit it. + + The file `configure.ac' (or `configure.in') is used to create +`configure' by a program called `autoconf'. You only need +`configure.ac' if you want to change it or regenerate `configure' using +a newer version of `autoconf'. + +The simplest way to compile this package is: + + 1. `cd' to the directory containing the package's source code and type + `./configure' to configure the package for your system. If you're + using `csh' on an old version of System V, you might need to type + `sh ./configure' instead to prevent `csh' from trying to execute + `configure' itself. + + Running `configure' takes awhile. While running, it prints some + messages telling which features it is checking for. + + 2. Type `make' to compile the package. + + 3. Optionally, type `make check' to run any self-tests that come with + the package. + + 4. Type `make install' to install the programs and any data files and + documentation. + + 5. You can remove the program binaries and object files from the + source code directory by typing `make clean'. To also remove the + files that `configure' created (so you can compile the package for + a different kind of computer), type `make distclean'. There is + also a `make maintainer-clean' target, but that is intended mainly + for the package's developers. If you use it, you may have to get + all sorts of other programs in order to regenerate files that came + with the distribution. + +Compilers and Options +===================== + +Some systems require unusual options for compilation or linking that the +`configure' script does not know about. Run `./configure --help' for +details on some of the pertinent environment variables. + + You can give `configure' initial values for configuration parameters +by setting variables in the command line or in the environment. Here +is an example: + + ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix + + *Note Defining Variables::, for more details. + +Compiling For Multiple Architectures +==================================== + +You can compile the package for more than one kind of computer at the +same time, by placing the object files for each architecture in their +own directory. To do this, you must use a version of `make' that +supports the `VPATH' variable, such as GNU `make'. `cd' to the +directory where you want the object files and executables to go and run +the `configure' script. `configure' automatically checks for the +source code in the directory that `configure' is in and in `..'. + + If you have to use a `make' that does not support the `VPATH' +variable, you have to compile the package for one architecture at a +time in the source code directory. After you have installed the +package for one architecture, use `make distclean' before reconfiguring +for another architecture. + +Installation Names +================== + +By default, `make install' installs the package's commands under +`/usr/local/bin', include files under `/usr/local/include', etc. You +can specify an installation prefix other than `/usr/local' by giving +`configure' the option `--prefix=PREFIX'. + + You can specify separate installation prefixes for +architecture-specific files and architecture-independent files. If you +pass the option `--exec-prefix=PREFIX' to `configure', the package uses +PREFIX as the prefix for installing programs and libraries. +Documentation and other data files still use the regular prefix. + + In addition, if you use an unusual directory layout you can give +options like `--bindir=DIR' to specify different values for particular +kinds of files. Run `configure --help' for a list of the directories +you can set and what kinds of files go in them. + + If the package supports it, you can cause programs to be installed +with an extra prefix or suffix on their names by giving `configure' the +option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. + +Optional Features +================= + +Some packages pay attention to `--enable-FEATURE' options to +`configure', where FEATURE indicates an optional part of the package. +They may also pay attention to `--with-PACKAGE' options, where PACKAGE +is something like `gnu-as' or `x' (for the X Window System). The +`README' should mention any `--enable-' and `--with-' options that the +package recognizes. + + For packages that use the X Window System, `configure' can usually +find the X include and library files automatically, but if it doesn't, +you can use the `configure' options `--x-includes=DIR' and +`--x-libraries=DIR' to specify their locations. + +Specifying the System Type +========================== + +There may be some features `configure' cannot figure out automatically, +but needs to determine by the type of machine the package will run on. +Usually, assuming the package is built to be run on the _same_ +architectures, `configure' can figure that out, but if it prints a +message saying it cannot guess the machine type, give it the +`--build=TYPE' option. TYPE can either be a short name for the system +type, such as `sun4', or a canonical name which has the form: + + CPU-COMPANY-SYSTEM + +where SYSTEM can have one of these forms: + + OS KERNEL-OS + + See the file `config.sub' for the possible values of each field. If +`config.sub' isn't included in this package, then this package doesn't +need to know the machine type. + + If you are _building_ compiler tools for cross-compiling, you should +use the option `--target=TYPE' to select the type of system they will +produce code for. + + If you want to _use_ a cross compiler, that generates code for a +platform different from the build platform, you should specify the +"host" platform (i.e., that on which the generated programs will +eventually be run) with `--host=TYPE'. + +Sharing Defaults +================ + +If you want to set default values for `configure' scripts to share, you +can create a site shell script called `config.site' that gives default +values for variables like `CC', `cache_file', and `prefix'. +`configure' looks for `PREFIX/share/config.site' if it exists, then +`PREFIX/etc/config.site' if it exists. Or, you can set the +`CONFIG_SITE' environment variable to the location of the site script. +A warning: not all `configure' scripts look for a site script. + +Defining Variables +================== + +Variables not defined in a site shell script can be set in the +environment passed to `configure'. However, some packages may run +configure again during the build, and the customized values of these +variables may be lost. In order to avoid this problem, you should set +them in the `configure' command line, using `VAR=value'. For example: + + ./configure CC=/usr/local2/bin/gcc + +causes the specified `gcc' to be used as the C compiler (unless it is +overridden in the site shell script). Here is a another example: + + /bin/bash ./configure CONFIG_SHELL=/bin/bash + +Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent +configuration-related scripts to be executed by `/bin/bash'. + +`configure' Invocation +====================== + +`configure' recognizes the following options to control how it operates. + +`--help' +`-h' + Print a summary of the options to `configure', and exit. + +`--version' +`-V' + Print the version of Autoconf used to generate the `configure' + script, and exit. + +`--cache-file=FILE' + Enable the cache: use and save the results of the tests in FILE, + traditionally `config.cache'. FILE defaults to `/dev/null' to + disable caching. + +`--config-cache' +`-C' + Alias for `--cache-file=config.cache'. + +`--quiet' +`--silent' +`-q' + Do not print messages saying which checks are being made. To + suppress all normal output, redirect it to `/dev/null' (any error + messages will still be shown). + +`--srcdir=DIR' + Look for the package's source code in directory DIR. Usually + `configure' can determine that directory automatically. + +`configure' also accepts some other, not widely useful, options. Run +`configure --help' for more details. + Added: vendor/sqlite3/dist/Makefile.am ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/sqlite3/dist/Makefile.am Tue Jun 18 02:19:57 2013 (r251883) @@ -0,0 +1,19 @@ + +AM_CFLAGS = @THREADSAFE_FLAGS@ @DYNAMIC_EXTENSION_FLAGS@ -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE + +lib_LTLIBRARIES = libsqlite3.la +libsqlite3_la_SOURCES = sqlite3.c +libsqlite3_la_LDFLAGS = -no-undefined -version-info 8:6:8 + +bin_PROGRAMS = sqlite3 +sqlite3_SOURCES = shell.c sqlite3.h +sqlite3_LDADD = $(top_builddir)/libsqlite3.la @READLINE_LIBS@ +sqlite3_DEPENDENCIES = $(top_builddir)/libsqlite3.la + +include_HEADERS = sqlite3.h sqlite3ext.h + +EXTRA_DIST = sqlite3.1 tea +pkgconfigdir = ${libdir}/pkgconfig +pkgconfig_DATA = sqlite3.pc + +man_MANS = sqlite3.1 Added: vendor/sqlite3/dist/Makefile.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/sqlite3/dist/Makefile.in Tue Jun 18 02:19:57 2013 (r251883) @@ -0,0 +1,732 @@ +# Makefile.in generated by automake 1.9.6 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, +# 2003, 2004, 2005 Free Software Foundation, Inc. +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + + + + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ +pkgdatadir = $(datadir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +top_builddir = . +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +INSTALL = @INSTALL@ +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +bin_PROGRAMS = sqlite3$(EXEEXT) +DIST_COMMON = README $(am__configure_deps) $(include_HEADERS) \ + $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ + $(srcdir)/sqlite3.pc.in $(top_srcdir)/configure INSTALL \ + config.guess config.sub depcomp install-sh ltmain.sh missing +subdir = . +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ + configure.lineno configure.status.lineno +mkinstalldirs = $(install_sh) -d +CONFIG_CLEAN_FILES = sqlite3.pc +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; +am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" \ + "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(pkgconfigdir)" \ + "$(DESTDIR)$(includedir)" +libLTLIBRARIES_INSTALL = $(INSTALL) +LTLIBRARIES = $(lib_LTLIBRARIES) +libsqlite3_la_LIBADD = +am_libsqlite3_la_OBJECTS = sqlite3.lo +libsqlite3_la_OBJECTS = $(am_libsqlite3_la_OBJECTS) +binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) +PROGRAMS = $(bin_PROGRAMS) +am_sqlite3_OBJECTS = shell.$(OBJEXT) +sqlite3_OBJECTS = $(am_sqlite3_OBJECTS) +DEFAULT_INCLUDES = -I. -I$(srcdir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CFLAGS) $(CFLAGS) +CCLD = $(CC) +LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +SOURCES = $(libsqlite3_la_SOURCES) $(sqlite3_SOURCES) +DIST_SOURCES = $(libsqlite3_la_SOURCES) $(sqlite3_SOURCES) +man1dir = $(mandir)/man1 +NROFF = nroff +MANS = $(man_MANS) +pkgconfigDATA_INSTALL = $(INSTALL_DATA) +DATA = $(pkgconfig_DATA) +includeHEADERS_INSTALL = $(INSTALL_HEADER) +HEADERS = $(include_HEADERS) +ETAGS = etags +CTAGS = ctags +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +distdir = $(PACKAGE)-$(VERSION) +top_distdir = $(distdir) +am__remove_distdir = \ + { test ! -d $(distdir) \ + || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \ + && rm -fr $(distdir); }; } +DIST_ARCHIVES = $(distdir).tar.gz +GZIP_ENV = --best +distuninstallcheck_listfiles = find . -type f -print +distcleancheck_listfiles = find . -type f -print +ACLOCAL = @ACLOCAL@ +AMDEP_FALSE = @AMDEP_FALSE@ +AMDEP_TRUE = @AMDEP_TRUE@ +AMTAR = @AMTAR@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +BUILD_CFLAGS = @BUILD_CFLAGS@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DYNAMIC_EXTENSION_FLAGS = @DYNAMIC_EXTENSION_FLAGS@ +ECHO = @ECHO@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +F77 = @F77@ +FFLAGS = @FFLAGS@ +GREP = @GREP@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +OBJEXT = @OBJEXT@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +RANLIB = @RANLIB@ +READLINE_LIBS = @READLINE_LIBS@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +THREADSAFE_FLAGS = @THREADSAFE_FLAGS@ +VERSION = @VERSION@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_F77 = @ac_ct_F77@ +am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ +am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ +am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ +am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +AM_CFLAGS = @THREADSAFE_FLAGS@ @DYNAMIC_EXTENSION_FLAGS@ -DSQLITE_ENABLE_FTS3 -DSQLITE_ENABLE_RTREE +lib_LTLIBRARIES = libsqlite3.la +libsqlite3_la_SOURCES = sqlite3.c +libsqlite3_la_LDFLAGS = -no-undefined -version-info 8:6:8 +sqlite3_SOURCES = shell.c sqlite3.h +sqlite3_LDADD = $(top_builddir)/libsqlite3.la @READLINE_LIBS@ +sqlite3_DEPENDENCIES = $(top_builddir)/libsqlite3.la +include_HEADERS = sqlite3.h sqlite3ext.h +EXTRA_DIST = sqlite3.1 tea +pkgconfigdir = ${libdir}/pkgconfig +pkgconfig_DATA = sqlite3.pc +man_MANS = sqlite3.1 +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +am--refresh: + @: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + echo ' cd $(srcdir) && $(AUTOMAKE) --foreign '; \ + cd $(srcdir) && $(AUTOMAKE) --foreign \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ + cd $(top_srcdir) && \ + $(AUTOMAKE) --foreign Makefile +.PRECIOUS: Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + echo ' $(SHELL) ./config.status'; \ + $(SHELL) ./config.status;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + $(SHELL) ./config.status --recheck + +$(top_srcdir)/configure: $(am__configure_deps) + cd $(srcdir) && $(AUTOCONF) +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) +sqlite3.pc: $(top_builddir)/config.status $(srcdir)/sqlite3.pc.in + cd $(top_builddir) && $(SHELL) ./config.status $@ +install-libLTLIBRARIES: $(lib_LTLIBRARIES) + @$(NORMAL_INSTALL) + test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)" + @list='$(lib_LTLIBRARIES)'; for p in $$list; do \ + if test -f $$p; then \ + f=$(am__strip_dir) \ + echo " $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \ + $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \ + else :; fi; \ + done + +uninstall-libLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @set -x; list='$(lib_LTLIBRARIES)'; for p in $$list; do \ + p=$(am__strip_dir) \ + echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \ + $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \ + done + +clean-libLTLIBRARIES: + -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES) + @list='$(lib_LTLIBRARIES)'; for p in $$list; do \ + dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ + test "$$dir" != "$$p" || dir=.; \ + echo "rm -f \"$${dir}/so_locations\""; \ + rm -f "$${dir}/so_locations"; \ + done +libsqlite3.la: $(libsqlite3_la_OBJECTS) $(libsqlite3_la_DEPENDENCIES) + $(LINK) -rpath $(libdir) $(libsqlite3_la_LDFLAGS) $(libsqlite3_la_OBJECTS) $(libsqlite3_la_LIBADD) $(LIBS) +install-binPROGRAMS: $(bin_PROGRAMS) + @$(NORMAL_INSTALL) + test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)" + @list='$(bin_PROGRAMS)'; for p in $$list; do \ + p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ + if test -f $$p \ + || test -f $$p1 \ + ; then \ + f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ + echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \ + $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \ + else :; fi; \ + done + +uninstall-binPROGRAMS: + @$(NORMAL_UNINSTALL) + @list='$(bin_PROGRAMS)'; for p in $$list; do \ + f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ + echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \ + rm -f "$(DESTDIR)$(bindir)/$$f"; \ + done + +clean-binPROGRAMS: + @list='$(bin_PROGRAMS)'; for p in $$list; do \ + f=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f $$p $$f"; \ + rm -f $$p $$f ; \ + done +sqlite3$(EXEEXT): $(sqlite3_OBJECTS) $(sqlite3_DEPENDENCIES) + @rm -f sqlite3$(EXEEXT) + $(LINK) $(sqlite3_LDFLAGS) $(sqlite3_OBJECTS) $(sqlite3_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/shell.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sqlite3.Plo@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ +@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c $< + +.c.obj: +@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ +@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ if $(LTCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ +@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Plo"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi +@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + -rm -f libtool +uninstall-info-am: +install-man1: $(man1_MANS) $(man_MANS) + @$(NORMAL_INSTALL) + test -z "$(man1dir)" || $(mkdir_p) "$(DESTDIR)$(man1dir)" + @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \ + l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ + for i in $$l2; do \ + case "$$i" in \ + *.1*) list="$$list $$i" ;; \ + esac; \ + done; \ + for i in $$list; do \ + if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ + else file=$$i; fi; \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + case "$$ext" in \ + 1*) ;; \ + *) ext='1' ;; \ + esac; \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed -e 's/^.*\///'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ + $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \ + done +uninstall-man1: + @$(NORMAL_UNINSTALL) + @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \ + l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ + for i in $$l2; do \ + case "$$i" in \ + *.1*) list="$$list $$i" ;; \ + esac; \ + done; \ + for i in $$list; do \ + ext=`echo $$i | sed -e 's/^.*\\.//'`; \ + case "$$ext" in \ + 1*) ;; \ + *) ext='1' ;; \ + esac; \ + inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ + inst=`echo $$inst | sed -e 's/^.*\///'`; \ + inst=`echo $$inst | sed '$(transform)'`.$$ext; \ + echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \ + rm -f "$(DESTDIR)$(man1dir)/$$inst"; \ + done +install-pkgconfigDATA: $(pkgconfig_DATA) + @$(NORMAL_INSTALL) + test -z "$(pkgconfigdir)" || $(mkdir_p) "$(DESTDIR)$(pkgconfigdir)" + @list='$(pkgconfig_DATA)'; for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + f=$(am__strip_dir) \ + echo " $(pkgconfigDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgconfigdir)/$$f'"; \ + $(pkgconfigDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgconfigdir)/$$f"; \ + done + +uninstall-pkgconfigDATA: + @$(NORMAL_UNINSTALL) + @list='$(pkgconfig_DATA)'; for p in $$list; do \ + f=$(am__strip_dir) \ + echo " rm -f '$(DESTDIR)$(pkgconfigdir)/$$f'"; \ + rm -f "$(DESTDIR)$(pkgconfigdir)/$$f"; \ + done +install-includeHEADERS: $(include_HEADERS) + @$(NORMAL_INSTALL) + test -z "$(includedir)" || $(mkdir_p) "$(DESTDIR)$(includedir)" + @list='$(include_HEADERS)'; for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + f=$(am__strip_dir) \ + echo " $(includeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(includedir)/$$f'"; \ + $(includeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(includedir)/$$f"; \ + done + +uninstall-includeHEADERS: + @$(NORMAL_UNINSTALL) + @list='$(include_HEADERS)'; for p in $$list; do \ + f=$(am__strip_dir) \ + echo " rm -f '$(DESTDIR)$(includedir)/$$f'"; \ + rm -f "$(DESTDIR)$(includedir)/$$f"; \ + done + +ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + mkid -fID $$unique +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$tags $$unique; \ + fi +ctags: CTAGS +CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ + $(TAGS_FILES) $(LISP) + tags=; \ + here=`pwd`; \ + list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | \ + $(AWK) ' { files[$$0] = 1; } \ + END { for (i in files) print i; }'`; \ + test -z "$(CTAGS_ARGS)$$tags$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$tags $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && cd $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) $$here + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + $(am__remove_distdir) + mkdir $(distdir) + $(mkdir_p) $(distdir)/. + @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ + list='$(DISTFILES)'; for file in $$list; do \ + case $$file in \ + $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ + $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ + esac; \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test "$$dir" != "$$file" && test "$$dir" != "."; then \ + dir="/$$dir"; \ + $(mkdir_p) "$(distdir)$$dir"; \ + else \ + dir=''; \ + fi; \ + if test -d $$d/$$file; then \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ + fi; \ + cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ + else \ + test -f $(distdir)/$$file \ + || cp -p $$d/$$file $(distdir)/$$file \ + || exit 1; \ + fi; \ + done + -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ + ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \ + || chmod -R a+r $(distdir) +dist-gzip: distdir + tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + $(am__remove_distdir) + +dist-bzip2: distdir + tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 + $(am__remove_distdir) + +dist-tarZ: distdir + tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z + $(am__remove_distdir) + +dist-shar: distdir + shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz + $(am__remove_distdir) + +dist-zip: distdir + -rm -f $(distdir).zip + zip -rq $(distdir).zip $(distdir) + $(am__remove_distdir) + +dist dist-all: distdir + tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + $(am__remove_distdir) + +# This target untars the dist file and tries a VPATH configuration. Then +# it guarantees that the distribution is self-contained by making another +# tarfile. +distcheck: dist + case '$(DIST_ARCHIVES)' in \ + *.tar.gz*) \ + GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ + *.tar.bz2*) \ + bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ + *.tar.Z*) \ + uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ + *.shar.gz*) \ + GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ + *.zip*) \ + unzip $(distdir).zip ;;\ + esac + chmod -R a-w $(distdir); chmod a+w $(distdir) + mkdir $(distdir)/_build + mkdir $(distdir)/_inst + chmod a-w $(distdir) + dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ + && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ + && cd $(distdir)/_build \ + && ../configure --srcdir=.. --prefix="$$dc_install_base" \ + $(DISTCHECK_CONFIGURE_FLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) dvi \ + && $(MAKE) $(AM_MAKEFLAGS) check \ + && $(MAKE) $(AM_MAKEFLAGS) install \ + && $(MAKE) $(AM_MAKEFLAGS) installcheck \ + && $(MAKE) $(AM_MAKEFLAGS) uninstall \ + && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ + distuninstallcheck \ + && chmod -R a-w "$$dc_install_base" \ + && ({ \ + (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ + distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ + } || { rm -rf "$$dc_destdir"; exit 1; }) \ + && rm -rf "$$dc_destdir" \ + && $(MAKE) $(AM_MAKEFLAGS) dist \ + && rm -rf $(DIST_ARCHIVES) \ + && $(MAKE) $(AM_MAKEFLAGS) distcleancheck + $(am__remove_distdir) + @(echo "$(distdir) archives ready for distribution: "; \ + list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ + sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}' +distuninstallcheck: + @cd $(distuninstallcheck_dir) \ + && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ + || { echo "ERROR: files left after uninstall:" ; \ + if test -n "$(DESTDIR)"; then \ + echo " (check DESTDIR support)"; \ + fi ; \ + $(distuninstallcheck_listfiles) ; \ + exit 1; } >&2 +distcleancheck: distclean + @if test '$(srcdir)' = . ; then \ + echo "ERROR: distcleancheck can only run from a VPATH build" ; \ + exit 1 ; \ + fi + @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ + || { echo "ERROR: files left in build directory after distclean:" ; \ + $(distcleancheck_listfiles) ; \ + exit 1; } >&2 +check-am: all-am +check: check-am +all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(MANS) $(DATA) $(HEADERS) +install-binPROGRAMS: install-libLTLIBRARIES + +installdirs: + for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(includedir)"; do \ + test -z "$$dir" || $(mkdir_p) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + `test -z '$(STRIP)' || \ + echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-binPROGRAMS clean-generic clean-libLTLIBRARIES \ + clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-libtool distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +info: info-am + +info-am: + +install-data-am: install-includeHEADERS install-man \ + install-pkgconfigDATA + +install-exec-am: install-binPROGRAMS install-libLTLIBRARIES + +install-info: install-info-am + +install-man: install-man1 + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -rf $(top_srcdir)/autom4te.cache + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-binPROGRAMS uninstall-includeHEADERS \ + uninstall-info-am uninstall-libLTLIBRARIES uninstall-man \ + uninstall-pkgconfigDATA + +uninstall-man: uninstall-man1 + +.PHONY: CTAGS GTAGS all all-am am--refresh check check-am clean \ + clean-binPROGRAMS clean-generic clean-libLTLIBRARIES \ + clean-libtool ctags dist dist-all dist-bzip2 dist-gzip \ + dist-shar dist-tarZ dist-zip distcheck distclean \ + distclean-compile distclean-generic distclean-libtool \ + distclean-tags distcleancheck distdir distuninstallcheck dvi \ + dvi-am html html-am info info-am install install-am \ + install-binPROGRAMS install-data install-data-am install-exec \ + install-exec-am install-includeHEADERS install-info \ + install-info-am install-libLTLIBRARIES install-man \ + install-man1 install-pkgconfigDATA install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags uninstall uninstall-am uninstall-binPROGRAMS \ + uninstall-includeHEADERS uninstall-info-am \ + uninstall-libLTLIBRARIES uninstall-man uninstall-man1 \ + uninstall-pkgconfigDATA + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: Added: vendor/sqlite3/dist/README ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/sqlite3/dist/README Tue Jun 18 02:19:57 2013 (r251883) @@ -0,0 +1,32 @@ + *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 02:20:35 2013 Return-Path: Delivered-To: svn-src-all@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 10FF1D2D; Tue, 18 Jun 2013 02:20:35 +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 DE5FB1FB0; Tue, 18 Jun 2013 02:20: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 r5I2KY7Z044304; Tue, 18 Jun 2013 02:20:34 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I2KYrw044302; Tue, 18 Jun 2013 02:20:34 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306180220.r5I2KYrw044302@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 02:20:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r251884 - vendor/sqlite3/sqlite-3071700 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 02:20:35 -0000 Author: peter Date: Tue Jun 18 02:20:34 2013 New Revision: 251884 URL: http://svnweb.freebsd.org/changeset/base/251884 Log: Tag import sqlite-3071700 Added: vendor/sqlite3/sqlite-3071700/ - copied from r251883, vendor/sqlite3/dist/ From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 02:37:15 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 02:43:35 2013 Return-Path: Delivered-To: svn-src-all@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 441644BE for ; Tue, 18 Jun 2013 02:43:35 +0000 (UTC) (envelope-from mailer-daemon@vniz.net) Received: from mail-lb0-f181.google.com (mail-lb0-f181.google.com [209.85.217.181]) by mx1.freebsd.org (Postfix) with ESMTP id A5CE010C2 for ; Tue, 18 Jun 2013 02:43:34 +0000 (UTC) Received: by mail-lb0-f181.google.com with SMTP id w10so3160096lbi.12 for ; Mon, 17 Jun 2013 19:43:27 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:openpgp:content-type :content-transfer-encoding:x-gm-message-state; bh=sv0ADVtgTsC8P0cK/Ad3KU5rU5SgyQ+JVDoCXB/Kf6Y=; b=JXzQo1LSHu9JE44SCQqXrb7G0T9lm1RpcRhNppBAar8/YLsBtYfeFIurjbkb6/AIdx Hntqgp83CsP3rBTYQeN7Kl61+82HNPEXxz+nn2S6KsBtWErCFImSUJAKm5s37OEjb2my mU3bwzbk5hfZDRZ4rw08GMx/20TbGInjJcx2o+d/LBZFro9vs9s0VicN9qzSLBqUJ9Ns 6ElntgFST4NqlTrD775t20nNnzKir8byMutq0uKwWUHUG2dpl+7vOnz3Gqd40AdCTIMX bP6Oe28D2IvKjwcuL3kh8EbnJe8iAaDwtAh0ud6ygo8a+HzuJnhbfW0Spq7xC9WmALNj 52iw== X-Received: by 10.112.141.6 with SMTP id rk6mr92867lbb.50.1371523406885; Mon, 17 Jun 2013 19:43:26 -0700 (PDT) Received: from [192.168.1.2] ([89.169.163.3]) by mx.google.com with ESMTPSA id zo6sm6316907lbb.9.2013.06.17.19.43.26 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 17 Jun 2013 19:43:26 -0700 (PDT) Message-ID: <51BFC942.4090103@freebsd.org> Date: Tue, 18 Jun 2013 06:43:14 +0400 From: Andrey Chernov User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130509 Thunderbird/17.0.6 MIME-Version: 1.0 To: Scott Long Subject: Re: svn commit: r251874 - in stable/9/sys: arm/arm cam cam/ctl cam/scsi conf dev/aac dev/advansys dev/aha dev/ahb dev/ahci dev/aic dev/aic7xxx dev/amr dev/arcmsr dev/ata dev/buslogic dev/ciss dev/dpt d... References: <201306180036.r5I0askx009647@svn.freebsd.org> In-Reply-To: <201306180036.r5I0askx009647@svn.freebsd.org> OpenPGP: id=964474DD Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Gm-Message-State: ALoCoQl9/WqMHsW//U+jypKHCmqKfPh8yKk6oocEJ8nY7aAZJ8QYRjle6yVXTKh3kyyoishBfJ0s Cc: svn-src-stable@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, svn-src-stable-9@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 02:43:35 -0000 On 18.06.2013 4:36, Scott Long wrote: > Author: scottl > Date: Tue Jun 18 00:36:53 2013 > New Revision: 251874 > URL: http://svnweb.freebsd.org/changeset/base/251874 ===> amd (all) cc -O2 -pipe -march=prescott -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE -nostdinc -DHAVE_KERNEL_OPTION_HEADERS -include /usr/src/sys/i386/compile/POBRECITA/opt_global.h -I. -I@ -I@/contrib/altq -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -fno-common -g -I/usr/src/sys/i386/compile/POBRECITA -mno-align-long-strings -mpreferred-stack-boundary=2 -mno-mmx -mno-sse -msoft-float -ffreestanding -fstack-protector -std=iso9899:1999 -fstack-protector -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 -c /usr/src/sys/modules/amd/../../dev/amd/amd.c /usr/src/sys/modules/amd/../../dev/amd/amd.c: In function 'amd_action': /usr/src/sys/modules/amd/../../dev/amd/amd.c:431: error: 'CAM_SCATTER_VALID' undeclared (first use in this function) /usr/src/sys/modules/amd/../../dev/amd/amd.c:431: error: (Each undeclared identifier is reported only once /usr/src/sys/modules/amd/../../dev/amd/amd.c:431: error: for each function it appears in.) /usr/src/sys/modules/amd/../../dev/amd/amd.c:436: error: 'CAM_DATA_PHYS' undeclared (first use in this function) /usr/src/sys/modules/amd/../../dev/amd/amd.c:473: error: 'CAM_SG_LIST_PHYS' undeclared (first use in this function) *** [amd.o] Error code 1 -- http://ache.vniz.net/ bitcoin:13fGiNutKNHcVSsgtGQ7bQ5kgUKgEQHn7N From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 02:53:47 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 02:57:57 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 03:34:08 2013 Return-Path: Delivered-To: svn-src-all@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 9CB252FC; Tue, 18 Jun 2013 03:34:08 +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 74F7A1382; Tue, 18 Jun 2013 03:34: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 r5I3Y8XF068091; Tue, 18 Jun 2013 03:34:08 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I3Y8tY068090; Tue, 18 Jun 2013 03:34:08 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306180334.r5I3Y8tY068090@svn.freebsd.org> From: Scott Long Date: Tue, 18 Jun 2013 03:34:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251888 - stable/9/sys/dev/amd X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 03:34:08 -0000 Author: scottl Date: Tue Jun 18 03:34:08 2013 New Revision: 251888 URL: http://svnweb.freebsd.org/changeset/base/251888 Log: Catch up to the changes from r251874. This isn't an MFC because the amd(4) driver no longer exists in FreeBSD 10. Obtained from: Netflix Modified: stable/9/sys/dev/amd/amd.c Modified: stable/9/sys/dev/amd/amd.c ============================================================================== --- stable/9/sys/dev/amd/amd.c Tue Jun 18 02:57:56 2013 (r251887) +++ stable/9/sys/dev/amd/amd.c Tue Jun 18 03:34:08 2013 (r251888) @@ -428,61 +428,22 @@ amd_action(struct cam_sim * psim, union pSRB->ScsiCmdLen = pcsio->cdb_len; bcopy(pcsio->cdb_io.cdb_bytes, pSRB->CmdBlock, pcsio->cdb_len); if ((pccb->ccb_h.flags & CAM_DIR_MASK) != CAM_DIR_NONE) { - if ((pccb->ccb_h.flags & CAM_SCATTER_VALID) == 0) { + int error; + + error - bus_dmamap_load_ccb(amd->buffer_dmat, + pSRB->dmamap, + pccb, + amdexecutesrb, + pSRB, /*flags*/0); + if (error == EINPROGRESS) { /* - * We've been given a pointer - * to a single buffer. + * So as to maintain ordering, + * freeze the controller queue + * until our mapping is + * returned. */ - if ((pccb->ccb_h.flags & CAM_DATA_PHYS) == 0) { - int s; - int error; - - s = splsoftvm(); - error = - bus_dmamap_load(amd->buffer_dmat, - pSRB->dmamap, - pcsio->data_ptr, - pcsio->dxfer_len, - amdexecutesrb, - pSRB, /*flags*/0); - if (error == EINPROGRESS) { - /* - * So as to maintain - * ordering, freeze the - * controller queue - * until our mapping is - * returned. - */ - xpt_freeze_simq(amd->psim, 1); - pccb->ccb_h.status |= - CAM_RELEASE_SIMQ; - } - splx(s); - } else { - struct bus_dma_segment seg; - - /* Pointer to physical buffer */ - seg.ds_addr = - (bus_addr_t)pcsio->data_ptr; - seg.ds_len = pcsio->dxfer_len; - amdexecutesrb(pSRB, &seg, 1, 0); - } - } else { - struct bus_dma_segment *segs; - - if ((pccb->ccb_h.flags & CAM_SG_LIST_PHYS) == 0 - || (pccb->ccb_h.flags & CAM_DATA_PHYS) != 0) { - TAILQ_INSERT_HEAD(&amd->free_srbs, - pSRB, links); - pccb->ccb_h.status = CAM_PROVIDE_FAIL; - xpt_done(pccb); - return; - } - - /* Just use the segments provided */ - segs = - (struct bus_dma_segment *)pcsio->data_ptr; - amdexecutesrb(pSRB, segs, pcsio->sglist_cnt, 0); + xpt_freeze_simq(sim, 1); + pccb->ccb_h.status |= CAM_RELEASE_SIMQ; } } else amdexecutesrb(pSRB, NULL, 0, 0); From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 04:02:33 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 934D6BAA for ; Tue, 18 Jun 2013 04:02:32 +0000 (UTC) (envelope-from mailer-daemon@vniz.net) Received: from mail-lb0-f174.google.com (mail-lb0-f174.google.com [209.85.217.174]) by mx1.freebsd.org (Postfix) with ESMTP id 03DD71681 for ; Tue, 18 Jun 2013 04:02:31 +0000 (UTC) Received: by mail-lb0-f174.google.com with SMTP id x10so3152759lbi.5 for ; Mon, 17 Jun 2013 21:02:25 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:openpgp:content-type :content-transfer-encoding:x-gm-message-state; bh=l5xFx8sR9jAcAMGG1g6c1C1JmUFS667BcD+IcTZyKn8=; b=HAcpJTZycQ32G1GAduohVbAs6LWhmQDBlKzml8lyN+KEcSmWHu2KEQR002YjgGS7rq 44GHiWkqzCL/IHbqXR4yZHbhE02/EEoRL+hhM14y5AzB0DJvvfPCXo7B1f7zlHVyRTPL lYZdDFHvMrxfn3CINYIzJDu/ugoGSTJJviiY6dnUZenfBAVmtxj1RQUM2jKKRk5doiIw Vdw2GhfO+9eky3cIhFDdIaATXITibUWpWEoZtyHRRgLDEzsgGoQCxMPaKdvQ6I3MYFUm OOzDiIyJP0hrJDFAjt/1zV2dB1iMslsowNxRtZRVvP+W3XESTS0Mn31UxrR/tvfXuLaj +hFg== X-Received: by 10.112.182.39 with SMTP id eb7mr196158lbc.30.1371528144913; Mon, 17 Jun 2013 21:02:24 -0700 (PDT) Received: from [192.168.1.2] ([89.169.163.3]) by mx.google.com with ESMTPSA id uo8sm6394648lbb.5.2013.06.17.21.02.23 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 17 Jun 2013 21:02:24 -0700 (PDT) Message-ID: <51BFDBC4.3080403@freebsd.org> Date: Tue, 18 Jun 2013 08:02:12 +0400 From: Andrey Chernov User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130509 Thunderbird/17.0.6 MIME-Version: 1.0 To: Scott Long Subject: Re: svn commit: r251888 - stable/9/sys/dev/amd References: <201306180334.r5I3Y8tY068090@svn.freebsd.org> In-Reply-To: <201306180334.r5I3Y8tY068090@svn.freebsd.org> OpenPGP: id=964474DD Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Gm-Message-State: ALoCoQmzxBFTRf7v7PnOJjndpZdWvWbJZG7Yg0+GvMnB2Tc/TJCYAUdS8ssSZx+I1xlEOWZBwc+S Cc: svn-src-stable@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, svn-src-stable-9@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 04:02:33 -0000 On 18.06.2013 7:34, Scott Long wrote: > Author: scottl > Date: Tue Jun 18 03:34:08 2013 > New Revision: 251888 > URL: http://svnweb.freebsd.org/changeset/base/251888 > > Log: > Catch up to the changes from r251874. This isn't an MFC because the > amd(4) driver no longer exists in FreeBSD 10. > > Obtained from: Netflix > > Modified: > stable/9/sys/dev/amd/amd.c ===> amd (all) cc -O2 -pipe -march=prescott -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE -nostdinc -DHAVE_KERNEL_OPTION_HEADERS -include /usr/src/sys/i386/compile/POBRECITA/opt_global.h -I. -I@ -I@/contrib/altq -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -fno-common -g -I/usr/src/sys/i386/compile/POBRECITA -mno-align-long-strings -mpreferred-stack-boundary=2 -mno-mmx -mno-sse -msoft-float -ffreestanding -fstack-protector -std=iso9899:1999 -fstack-protector -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 -c /usr/src/sys/modules/amd/../../dev/amd/amd.c cc1: warnings being treated as errors /usr/src/sys/modules/amd/../../dev/amd/amd.c: In function 'amd_action': /usr/src/sys/modules/amd/../../dev/amd/amd.c:437: warning: value computed is not used /usr/src/sys/modules/amd/../../dev/amd/amd.c:445: error: 'sim' undeclared (first use in this function) /usr/src/sys/modules/amd/../../dev/amd/amd.c:445: error: (Each undeclared identifier is reported only once /usr/src/sys/modules/amd/../../dev/amd/amd.c:445: error: for each function it appears in.) *** [amd.o] Error code 1 -- http://ache.vniz.net/ bitcoin:13fGiNutKNHcVSsgtGQ7bQ5kgUKgEQHn7N From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 04:03:14 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 0E299C21; Tue, 18 Jun 2013 04:03:14 +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 F4207168C; Tue, 18 Jun 2013 04:03: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 r5I43DFf077331; Tue, 18 Jun 2013 04:03:13 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I43D2U077329; Tue, 18 Jun 2013 04:03:13 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201306180403.r5I43D2U077329@svn.freebsd.org> From: Xin LI Date: Tue, 18 Jun 2013 04:03:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251889 - stable/9/sys/dev/mpt X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 04:03:14 -0000 Author: delphij Date: Tue Jun 18 04:03:12 2013 New Revision: 251889 URL: http://svnweb.freebsd.org/changeset/base/251889 Log: MFC r251187: Explicitly use a pair of parentheses to ensure correct evaluation ordering for bitwise operation. Submitted by: swildner (DragonFly) Modified: stable/9/sys/dev/mpt/mpt_raid.c stable/9/sys/dev/mpt/mpt_user.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/mpt/mpt_raid.c ============================================================================== --- stable/9/sys/dev/mpt/mpt_raid.c Tue Jun 18 03:34:08 2013 (r251888) +++ stable/9/sys/dev/mpt/mpt_raid.c Tue Jun 18 04:03:12 2013 (r251889) @@ -605,7 +605,7 @@ mpt_issue_raid_req(struct mpt_softc *mpt MPI_pSGE_SET_FLAGS(se, (MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_BUFFER | MPI_SGE_FLAGS_END_OF_LIST | - write ? MPI_SGE_FLAGS_HOST_TO_IOC : MPI_SGE_FLAGS_IOC_TO_HOST)); + (write ? MPI_SGE_FLAGS_HOST_TO_IOC : MPI_SGE_FLAGS_IOC_TO_HOST))); se->FlagsLength = htole32(se->FlagsLength); rap->MsgContext = htole32(req->index | raid_handler_id); Modified: stable/9/sys/dev/mpt/mpt_user.c ============================================================================== --- stable/9/sys/dev/mpt/mpt_user.c Tue Jun 18 03:34:08 2013 (r251888) +++ stable/9/sys/dev/mpt/mpt_user.c Tue Jun 18 04:03:12 2013 (r251889) @@ -548,8 +548,8 @@ mpt_user_raid_action(struct mpt_softc *m MPI_pSGE_SET_FLAGS(se, (MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_BUFFER | MPI_SGE_FLAGS_END_OF_LIST | - raid_act->write ? MPI_SGE_FLAGS_HOST_TO_IOC : - MPI_SGE_FLAGS_IOC_TO_HOST)); + (raid_act->write ? MPI_SGE_FLAGS_HOST_TO_IOC : + MPI_SGE_FLAGS_IOC_TO_HOST))); } se->FlagsLength = htole32(se->FlagsLength); rap->MsgContext = htole32(req->index | user_handler_id); From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 04:04:16 2013 Return-Path: Delivered-To: svn-src-all@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 19A98D9D; Tue, 18 Jun 2013 04:04:16 +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 0BA88169A; Tue, 18 Jun 2013 04:04: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 r5I44F4G077560; Tue, 18 Jun 2013 04:04:15 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I44FmE077558; Tue, 18 Jun 2013 04:04:15 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201306180404.r5I44FmE077558@svn.freebsd.org> From: Xin LI Date: Tue, 18 Jun 2013 04:04:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r251890 - stable/8/sys/dev/mpt X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 04:04:16 -0000 Author: delphij Date: Tue Jun 18 04:04:15 2013 New Revision: 251890 URL: http://svnweb.freebsd.org/changeset/base/251890 Log: MFC r251187: Explicitly use a pair of parentheses to ensure correct evaluation ordering for bitwise operation. Submitted by: swildner (DragonFly) Modified: stable/8/sys/dev/mpt/mpt_raid.c stable/8/sys/dev/mpt/mpt_user.c Directory Properties: stable/8/sys/ (props changed) stable/8/sys/dev/ (props changed) stable/8/sys/dev/mpt/ (props changed) Modified: stable/8/sys/dev/mpt/mpt_raid.c ============================================================================== --- stable/8/sys/dev/mpt/mpt_raid.c Tue Jun 18 04:03:12 2013 (r251889) +++ stable/8/sys/dev/mpt/mpt_raid.c Tue Jun 18 04:04:15 2013 (r251890) @@ -605,7 +605,7 @@ mpt_issue_raid_req(struct mpt_softc *mpt MPI_pSGE_SET_FLAGS(se, (MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_BUFFER | MPI_SGE_FLAGS_END_OF_LIST | - write ? MPI_SGE_FLAGS_HOST_TO_IOC : MPI_SGE_FLAGS_IOC_TO_HOST)); + (write ? MPI_SGE_FLAGS_HOST_TO_IOC : MPI_SGE_FLAGS_IOC_TO_HOST))); se->FlagsLength = htole32(se->FlagsLength); rap->MsgContext = htole32(req->index | raid_handler_id); Modified: stable/8/sys/dev/mpt/mpt_user.c ============================================================================== --- stable/8/sys/dev/mpt/mpt_user.c Tue Jun 18 04:03:12 2013 (r251889) +++ stable/8/sys/dev/mpt/mpt_user.c Tue Jun 18 04:04:15 2013 (r251890) @@ -548,8 +548,8 @@ mpt_user_raid_action(struct mpt_softc *m MPI_pSGE_SET_FLAGS(se, (MPI_SGE_FLAGS_SIMPLE_ELEMENT | MPI_SGE_FLAGS_LAST_ELEMENT | MPI_SGE_FLAGS_END_OF_BUFFER | MPI_SGE_FLAGS_END_OF_LIST | - raid_act->write ? MPI_SGE_FLAGS_HOST_TO_IOC : - MPI_SGE_FLAGS_IOC_TO_HOST)); + (raid_act->write ? MPI_SGE_FLAGS_HOST_TO_IOC : + MPI_SGE_FLAGS_IOC_TO_HOST))); } se->FlagsLength = htole32(se->FlagsLength); rap->MsgContext = htole32(req->index | user_handler_id); From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 04:05:37 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id BB708F39; Tue, 18 Jun 2013 04:05:37 +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 ADC0D16B7; Tue, 18 Jun 2013 04:05: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 r5I45bWq077860; Tue, 18 Jun 2013 04:05:37 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I45bdg077859; Tue, 18 Jun 2013 04:05:37 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201306180405.r5I45bdg077859@svn.freebsd.org> From: Xin LI Date: Tue, 18 Jun 2013 04:05:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251891 - stable/9/lib/libcam X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 04:05:37 -0000 Author: delphij Date: Tue Jun 18 04:05:37 2013 New Revision: 251891 URL: http://svnweb.freebsd.org/changeset/base/251891 Log: MFC r251349: Fix a typo: XPORT_SPI should be tested against transport, nor protocol. Submitted by: Sascha Wildner Reviewed by: mjacob Modified: stable/9/lib/libcam/camlib.c Directory Properties: stable/9/lib/libcam/ (props changed) Modified: stable/9/lib/libcam/camlib.c ============================================================================== --- stable/9/lib/libcam/camlib.c Tue Jun 18 04:04:15 2013 (r251890) +++ stable/9/lib/libcam/camlib.c Tue Jun 18 04:05:37 2013 (r251891) @@ -633,7 +633,7 @@ cam_real_open_device(const char *path, i "%s: %s", func_name, func_name, strerror(errno)); goto crod_bailout; } - if (ccb.cts.protocol == XPORT_SPI) { + if (ccb.cts.transport == XPORT_SPI) { struct ccb_trans_settings_spi *spi = &ccb.cts.xport_specific.spi; device->sync_period = spi->sync_period; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 04:06:13 2013 Return-Path: Delivered-To: svn-src-all@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 0671113B; Tue, 18 Jun 2013 04:06:13 +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 ECD0F16C2; Tue, 18 Jun 2013 04:06: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 r5I46CNA078026; Tue, 18 Jun 2013 04:06:12 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I46C4w078024; Tue, 18 Jun 2013 04:06:12 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201306180406.r5I46C4w078024@svn.freebsd.org> From: Xin LI Date: Tue, 18 Jun 2013 04:06:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r251892 - stable/8/lib/libcam X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 04:06:13 -0000 Author: delphij Date: Tue Jun 18 04:06:12 2013 New Revision: 251892 URL: http://svnweb.freebsd.org/changeset/base/251892 Log: MFC r251349: Fix a typo: XPORT_SPI should be tested against transport, nor protocol. Submitted by: Sascha Wildner Reviewed by: mjacob Modified: stable/8/lib/libcam/camlib.c Directory Properties: stable/8/lib/libcam/ (props changed) Modified: stable/8/lib/libcam/camlib.c ============================================================================== --- stable/8/lib/libcam/camlib.c Tue Jun 18 04:05:37 2013 (r251891) +++ stable/8/lib/libcam/camlib.c Tue Jun 18 04:06:12 2013 (r251892) @@ -686,7 +686,7 @@ cam_real_open_device(const char *path, i "%s: %s", func_name, func_name, strerror(errno)); goto crod_bailout; } - if (ccb.cts.protocol == XPORT_SPI) { + if (ccb.cts.transport == XPORT_SPI) { struct ccb_trans_settings_spi *spi = &ccb.cts.xport_specific.spi; device->sync_period = spi->sync_period; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 04:11:17 2013 Return-Path: Delivered-To: svn-src-all@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 2F6B3403; Tue, 18 Jun 2013 04:11:17 +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 21E0116F2; Tue, 18 Jun 2013 04:11: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 r5I4BG3D080714; Tue, 18 Jun 2013 04:11:16 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I4BGu3080713; Tue, 18 Jun 2013 04:11:16 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306180411.r5I4BGu3080713@svn.freebsd.org> From: Scott Long Date: Tue, 18 Jun 2013 04:11:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251893 - stable/9/sys/dev/amd X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 04:11:17 -0000 Author: scottl Date: Tue Jun 18 04:11:16 2013 New Revision: 251893 URL: http://svnweb.freebsd.org/changeset/base/251893 Log: Fix typos in the last revision. Thanks to Andrey Chernov for his kind patience. Obtained from: Netflix Modified: stable/9/sys/dev/amd/amd.c Modified: stable/9/sys/dev/amd/amd.c ============================================================================== --- stable/9/sys/dev/amd/amd.c Tue Jun 18 04:06:12 2013 (r251892) +++ stable/9/sys/dev/amd/amd.c Tue Jun 18 04:11:16 2013 (r251893) @@ -430,7 +430,7 @@ amd_action(struct cam_sim * psim, union if ((pccb->ccb_h.flags & CAM_DIR_MASK) != CAM_DIR_NONE) { int error; - error - bus_dmamap_load_ccb(amd->buffer_dmat, + error = bus_dmamap_load_ccb(amd->buffer_dmat, pSRB->dmamap, pccb, amdexecutesrb, @@ -442,7 +442,7 @@ amd_action(struct cam_sim * psim, union * until our mapping is * returned. */ - xpt_freeze_simq(sim, 1); + xpt_freeze_simq(psim, 1); pccb->ccb_h.status |= CAM_RELEASE_SIMQ; } } else From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 04:50:21 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 04:56:12 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 04:57:37 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 05:21:45 2013 Return-Path: Delivered-To: svn-src-all@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 B72E2396; Tue, 18 Jun 2013 05:21:45 +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 A60EC18F0; Tue, 18 Jun 2013 05:21: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 r5I5LjSW002874; Tue, 18 Jun 2013 05:21:45 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I5Leo1002844; Tue, 18 Jun 2013 05:21:40 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306180521.r5I5Leo1002844@svn.freebsd.org> From: Scott Long Date: Tue, 18 Jun 2013 05:21:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251897 - in stable/9/sys: amd64/amd64 arm/arm cam cam/ata cam/scsi dev/ahci dev/md dev/siis dev/tws geom geom/part i386/i386 i386/include i386/xen ia64/ia64 kern mips/mips powerpc/aim ... X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 05:21:45 -0000 Author: scottl Date: Tue Jun 18 05:21:40 2013 New Revision: 251897 URL: http://svnweb.freebsd.org/changeset/base/251897 Log: Merge the second part of the unmapped I/O changes. This enables the infrastructure in the block layer and UFS filesystem as well as a few drivers. The list of MFC revisions is long, so I won't quote changelogs. r248508,248510,248511,248512,248514,248515,248516,248517,248518, 248519,248520,248521,248550,248568,248789,248790,249032,250936 Submitted by: kib Approved by: kib Obtained from: Netflix Modified: stable/9/sys/amd64/amd64/pmap.c stable/9/sys/arm/arm/pmap.c stable/9/sys/cam/ata/ata_da.c stable/9/sys/cam/cam_ccb.h stable/9/sys/cam/cam_periph.c stable/9/sys/cam/scsi/scsi_all.c stable/9/sys/cam/scsi/scsi_all.h stable/9/sys/cam/scsi/scsi_cd.c stable/9/sys/cam/scsi/scsi_da.c stable/9/sys/dev/ahci/ahci.c stable/9/sys/dev/md/md.c stable/9/sys/dev/siis/siis.c stable/9/sys/dev/tws/tws.h stable/9/sys/geom/geom.h stable/9/sys/geom/geom_disk.c stable/9/sys/geom/geom_disk.h stable/9/sys/geom/geom_io.c stable/9/sys/geom/geom_vfs.c stable/9/sys/geom/part/g_part.c stable/9/sys/i386/i386/pmap.c stable/9/sys/i386/include/param.h stable/9/sys/i386/xen/pmap.c stable/9/sys/ia64/ia64/pmap.c stable/9/sys/kern/kern_physio.c stable/9/sys/kern/subr_bus_dma.c stable/9/sys/kern/subr_param.c stable/9/sys/kern/vfs_aio.c stable/9/sys/kern/vfs_bio.c stable/9/sys/kern/vfs_cluster.c stable/9/sys/mips/mips/pmap.c stable/9/sys/powerpc/aim/mmu_oea64.c stable/9/sys/powerpc/powerpc/pmap_dispatch.c stable/9/sys/sparc64/sparc64/pmap.c stable/9/sys/sys/bio.h stable/9/sys/sys/buf.h stable/9/sys/sys/mount.h stable/9/sys/sys/systm.h stable/9/sys/ufs/ffs/ffs_alloc.c stable/9/sys/ufs/ffs/ffs_balloc.c stable/9/sys/ufs/ffs/ffs_rawread.c stable/9/sys/ufs/ffs/ffs_vfsops.c stable/9/sys/ufs/ffs/ffs_vnops.c stable/9/sys/ufs/ufs/ufs_extern.h stable/9/sys/vm/swap_pager.c stable/9/sys/vm/swap_pager.h stable/9/sys/vm/vm.h stable/9/sys/vm/vm_init.c stable/9/sys/vm/vm_kern.c stable/9/sys/vm/vnode_pager.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) stable/9/sys/sys/ (props changed) Modified: stable/9/sys/amd64/amd64/pmap.c ============================================================================== --- stable/9/sys/amd64/amd64/pmap.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/amd64/amd64/pmap.c Tue Jun 18 05:21:40 2013 (r251897) @@ -4245,6 +4245,8 @@ pmap_copy_page(vm_page_t msrc, vm_page_t pagecopy((void *)src, (void *)dst); } +int unmapped_buf_allowed = 1; + void pmap_copy_pages(vm_page_t ma[], vm_offset_t a_offset, vm_page_t mb[], vm_offset_t b_offset, int xfersize) Modified: stable/9/sys/arm/arm/pmap.c ============================================================================== --- stable/9/sys/arm/arm/pmap.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/arm/arm/pmap.c Tue Jun 18 05:21:40 2013 (r251897) @@ -4474,6 +4474,8 @@ pmap_copy_page(vm_page_t src, vm_page_t #endif } +int unmapped_buf_allowed = 1; + void pmap_copy_pages(vm_page_t ma[], vm_offset_t a_offset, vm_page_t mb[], vm_offset_t b_offset, int xfersize) Modified: stable/9/sys/cam/ata/ata_da.c ============================================================================== --- stable/9/sys/cam/ata/ata_da.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/cam/ata/ata_da.c Tue Jun 18 05:21:40 2013 (r251897) @@ -1242,6 +1242,8 @@ adaregister(struct cam_periph *periph, v !(softc->flags & ADA_FLAG_CAN_48BIT)) { softc->disk->d_flags |= DISKFLAG_CANDELETE; } + if ((cpi.hba_misc & PIM_UNMAPPED) != 0) + softc->disk->d_flags |= DISKFLAG_UNMAPPED_BIO; strlcpy(softc->disk->d_descr, cgd->ident_data.model, MIN(sizeof(softc->disk->d_descr), sizeof(cgd->ident_data.model))); strlcpy(softc->disk->d_ident, cgd->ident_data.serial, @@ -1526,13 +1528,19 @@ adastart(struct cam_periph *periph, unio return; } #endif + KASSERT((bp->bio_flags & BIO_UNMAPPED) == 0 || + round_page(bp->bio_bcount + bp->bio_ma_offset) / + PAGE_SIZE == bp->bio_ma_n, + ("Short bio %p", bp)); cam_fill_ataio(ataio, ada_retry_count, adadone, - bp->bio_cmd == BIO_READ ? - CAM_DIR_IN : CAM_DIR_OUT, + (bp->bio_cmd == BIO_READ ? CAM_DIR_IN : + CAM_DIR_OUT) | ((bp->bio_flags & BIO_UNMAPPED) + != 0 ? CAM_DATA_BIO : 0), tag_code, - bp->bio_data, + ((bp->bio_flags & BIO_UNMAPPED) != 0) ? (void *)bp : + bp->bio_data, bp->bio_bcount, ada_default_timeout*1000); Modified: stable/9/sys/cam/cam_ccb.h ============================================================================== --- stable/9/sys/cam/cam_ccb.h Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/cam/cam_ccb.h Tue Jun 18 05:21:40 2013 (r251897) @@ -42,7 +42,6 @@ #include #include - /* General allocation length definitions for CCB structures */ #define IOCDBLEN CAM_MAX_CDBLEN /* Space for CDB bytes/pointer */ #define VUHBALEN 14 /* Vendor Unique HBA length */ @@ -100,7 +99,7 @@ typedef enum { CAM_MSGB_VALID = 0x10000000,/* Message buffer valid */ CAM_STATUS_VALID = 0x20000000,/* Status buffer valid */ CAM_DATAB_VALID = 0x40000000,/* Data buffer valid */ - + /* Host target Mode flags */ CAM_SEND_SENSE = 0x08000000,/* Send sense data with status */ CAM_TERM_IO = 0x10000000,/* Terminate I/O Message sup. */ @@ -572,7 +571,8 @@ typedef enum { PIM_NOINITIATOR = 0x20, /* Initiator role not supported. */ PIM_NOBUSRESET = 0x10, /* User has disabled initial BUS RESET */ PIM_NO_6_BYTE = 0x08, /* Do not send 6-byte commands */ - PIM_SEQSCAN = 0x04 /* Do bus scans sequentially, not in parallel */ + PIM_SEQSCAN = 0x04, /* Do bus scans sequentially, not in parallel */ + PIM_UNMAPPED = 0x02, } pi_miscflag; /* Path Inquiry CCB */ Modified: stable/9/sys/cam/cam_periph.c ============================================================================== --- stable/9/sys/cam/cam_periph.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/cam/cam_periph.c Tue Jun 18 05:21:40 2013 (r251897) @@ -851,7 +851,7 @@ cam_periph_mapmem(union ccb *ccb, struct * into a larger area of VM, or if userland races against * vmapbuf() after the useracc() check. */ - if (vmapbuf(mapinfo->bp[i]) < 0) { + if (vmapbuf(mapinfo->bp[i], 1) < 0) { for (j = 0; j < i; ++j) { *data_ptrs[j] = mapinfo->bp[j]->b_saveaddr; vunmapbuf(mapinfo->bp[j]); Modified: stable/9/sys/cam/scsi/scsi_all.c ============================================================================== --- stable/9/sys/cam/scsi/scsi_all.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/cam/scsi/scsi_all.c Tue Jun 18 05:21:40 2013 (r251897) @@ -5738,7 +5738,11 @@ scsi_read_write(struct ccb_scsiio *csio, u_int8_t *data_ptr, u_int32_t dxfer_len, u_int8_t sense_len, u_int32_t timeout) { + int read; u_int8_t cdb_len; + + read = (readop & SCSI_RW_DIRMASK) == SCSI_RW_READ; + /* * Use the smallest possible command to perform the operation * as some legacy hardware does not support the 10 byte commands. @@ -5755,7 +5759,7 @@ scsi_read_write(struct ccb_scsiio *csio, struct scsi_rw_6 *scsi_cmd; scsi_cmd = (struct scsi_rw_6 *)&csio->cdb_io.cdb_bytes; - scsi_cmd->opcode = readop ? READ_6 : WRITE_6; + scsi_cmd->opcode = read ? READ_6 : WRITE_6; scsi_ulto3b(lba, scsi_cmd->addr); scsi_cmd->length = block_count & 0xff; scsi_cmd->control = 0; @@ -5774,7 +5778,7 @@ scsi_read_write(struct ccb_scsiio *csio, struct scsi_rw_10 *scsi_cmd; scsi_cmd = (struct scsi_rw_10 *)&csio->cdb_io.cdb_bytes; - scsi_cmd->opcode = readop ? READ_10 : WRITE_10; + scsi_cmd->opcode = read ? READ_10 : WRITE_10; scsi_cmd->byte2 = byte2; scsi_ulto4b(lba, scsi_cmd->addr); scsi_cmd->reserved = 0; @@ -5797,7 +5801,7 @@ scsi_read_write(struct ccb_scsiio *csio, struct scsi_rw_12 *scsi_cmd; scsi_cmd = (struct scsi_rw_12 *)&csio->cdb_io.cdb_bytes; - scsi_cmd->opcode = readop ? READ_12 : WRITE_12; + scsi_cmd->opcode = read ? READ_12 : WRITE_12; scsi_cmd->byte2 = byte2; scsi_ulto4b(lba, scsi_cmd->addr); scsi_cmd->reserved = 0; @@ -5819,7 +5823,7 @@ scsi_read_write(struct ccb_scsiio *csio, struct scsi_rw_16 *scsi_cmd; scsi_cmd = (struct scsi_rw_16 *)&csio->cdb_io.cdb_bytes; - scsi_cmd->opcode = readop ? READ_16 : WRITE_16; + scsi_cmd->opcode = read ? READ_16 : WRITE_16; scsi_cmd->byte2 = byte2; scsi_u64to8b(lba, scsi_cmd->addr); scsi_cmd->reserved = 0; @@ -5830,7 +5834,8 @@ scsi_read_write(struct ccb_scsiio *csio, cam_fill_csio(csio, retries, cbfcnp, - /*flags*/readop ? CAM_DIR_IN : CAM_DIR_OUT, + (read ? CAM_DIR_IN : CAM_DIR_OUT) | + ((readop & SCSI_RW_BIO) != 0 ? CAM_DATA_BIO : 0), tag_action, data_ptr, dxfer_len, Modified: stable/9/sys/cam/scsi/scsi_all.h ============================================================================== --- stable/9/sys/cam/scsi/scsi_all.h Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/cam/scsi/scsi_all.h Tue Jun 18 05:21:40 2013 (r251897) @@ -2469,6 +2469,10 @@ void scsi_write_buffer(struct ccb_scsiio uint8_t *data_ptr, uint32_t param_list_length, uint8_t sense_len, uint32_t timeout); +#define SCSI_RW_READ 0x0001 +#define SCSI_RW_WRITE 0x0002 +#define SCSI_RW_DIRMASK 0x0003 +#define SCSI_RW_BIO 0x1000 void scsi_read_write(struct ccb_scsiio *csio, u_int32_t retries, void (*cbfcnp)(struct cam_periph *, union ccb *), u_int8_t tag_action, int readop, u_int8_t byte2, Modified: stable/9/sys/cam/scsi/scsi_cd.c ============================================================================== --- stable/9/sys/cam/scsi/scsi_cd.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/cam/scsi/scsi_cd.c Tue Jun 18 05:21:40 2013 (r251897) @@ -1571,7 +1571,8 @@ cdstart(struct cam_periph *periph, union /*retries*/ cd_retry_count, /* cbfcnp */ cddone, MSG_SIMPLE_Q_TAG, - /* read */bp->bio_cmd == BIO_READ, + /* read */bp->bio_cmd == BIO_READ ? + SCSI_RW_READ : SCSI_RW_WRITE, /* byte2 */ 0, /* minimum_cmd_size */ 10, /* lba */ bp->bio_offset / Modified: stable/9/sys/cam/scsi/scsi_da.c ============================================================================== --- stable/9/sys/cam/scsi/scsi_da.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/cam/scsi/scsi_da.c Tue Jun 18 05:21:40 2013 (r251897) @@ -1378,7 +1378,7 @@ dadump(void *arg, void *virtual, vm_offs /*retries*/0, dadone, MSG_ORDERED_Q_TAG, - /*read*/FALSE, + /*read*/SCSI_RW_WRITE, /*byte2*/0, /*minimum_cmd_size*/ softc->minimum_cmd_size, offset / secsize, @@ -2030,6 +2030,8 @@ daregister(struct cam_periph *periph, vo softc->disk->d_flags = 0; if ((softc->quirks & DA_Q_NO_SYNC_CACHE) == 0) softc->disk->d_flags |= DISKFLAG_CANFLUSHCACHE; + if ((cpi.hba_misc & PIM_UNMAPPED) != 0) + softc->disk->d_flags |= DISKFLAG_UNMAPPED_BIO; cam_strvis(softc->disk->d_descr, cgd->inq_data.vendor, sizeof(cgd->inq_data.vendor), sizeof(softc->disk->d_descr)); strlcat(softc->disk->d_descr, " ", sizeof(softc->disk->d_descr)); @@ -2390,14 +2392,18 @@ skipstate: /*retries*/da_retry_count, /*cbfcnp*/dadone, /*tag_action*/tag_code, - /*read_op*/bp->bio_cmd - == BIO_READ, + /*read_op*/(bp->bio_cmd == BIO_READ ? + SCSI_RW_READ : SCSI_RW_WRITE) | + ((bp->bio_flags & BIO_UNMAPPED) != 0 ? + SCSI_RW_BIO : 0), /*byte2*/0, softc->minimum_cmd_size, /*lba*/bp->bio_pblkno, /*block_count*/bp->bio_bcount / softc->params.secsize, - /*data_ptr*/ bp->bio_data, + /*data_ptr*/ (bp->bio_flags & + BIO_UNMAPPED) != 0 ? (void *)bp : + bp->bio_data, /*dxfer_len*/ bp->bio_bcount, /*sense_len*/SSD_FULL_SIZE, da_default_timeout * 1000); Modified: stable/9/sys/dev/ahci/ahci.c ============================================================================== --- stable/9/sys/dev/ahci/ahci.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/dev/ahci/ahci.c Tue Jun 18 05:21:40 2013 (r251897) @@ -3010,7 +3010,7 @@ ahciaction(struct cam_sim *sim, union cc if (ch->caps & AHCI_CAP_SPM) cpi->hba_inquiry |= PI_SATAPM; cpi->target_sprt = 0; - cpi->hba_misc = PIM_SEQSCAN; + cpi->hba_misc = PIM_SEQSCAN | PIM_UNMAPPED; cpi->hba_eng_cnt = 0; if (ch->caps & AHCI_CAP_SPM) cpi->max_target = 15; Modified: stable/9/sys/dev/md/md.c ============================================================================== --- stable/9/sys/dev/md/md.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/dev/md/md.c Tue Jun 18 05:21:40 2013 (r251897) @@ -18,11 +18,16 @@ * Copyright (c) 1988 University of Utah. * Copyright (c) 1990, 1993 * The Regents of the University of California. All rights reserved. + * Copyright (c) 2013 The FreeBSD Foundation + * All rights reserved. * * This code is derived from software contributed to Berkeley by * the Systems Programming Group of the University of Utah Computer * Science Department. * + * Portions of this software were developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -59,6 +64,7 @@ #include #include #include +#include #include #include #include @@ -162,6 +168,8 @@ static LIST_HEAD(, md_s) md_softc_list = #define NMASK (NINDIR-1) static int nshift; +static int md_vnode_pbuf_freecnt; + struct indir { uintptr_t *array; u_int total; @@ -408,11 +416,103 @@ g_md_start(struct bio *bp) wakeup(sc); } +#define MD_MALLOC_MOVE_ZERO 1 +#define MD_MALLOC_MOVE_FILL 2 +#define MD_MALLOC_MOVE_READ 3 +#define MD_MALLOC_MOVE_WRITE 4 +#define MD_MALLOC_MOVE_CMP 5 + +static int +md_malloc_move(vm_page_t **mp, int *ma_offs, unsigned sectorsize, + void *ptr, u_char fill, int op) +{ + struct sf_buf *sf; + vm_page_t m, *mp1; + char *p, first; + off_t *uc; + unsigned n; + int error, i, ma_offs1, sz, first_read; + + m = NULL; + error = 0; + sf = NULL; + /* if (op == MD_MALLOC_MOVE_CMP) { gcc */ + first = 0; + first_read = 0; + uc = ptr; + mp1 = *mp; + ma_offs1 = *ma_offs; + /* } */ + sched_pin(); + for (n = sectorsize; n != 0; n -= sz) { + sz = imin(PAGE_SIZE - *ma_offs, n); + if (m != **mp) { + if (sf != NULL) + sf_buf_free(sf); + m = **mp; + sf = sf_buf_alloc(m, SFB_CPUPRIVATE | + (md_malloc_wait ? 0 : SFB_NOWAIT)); + if (sf == NULL) { + error = ENOMEM; + break; + } + } + p = (char *)sf_buf_kva(sf) + *ma_offs; + switch (op) { + case MD_MALLOC_MOVE_ZERO: + bzero(p, sz); + break; + case MD_MALLOC_MOVE_FILL: + memset(p, fill, sz); + break; + case MD_MALLOC_MOVE_READ: + bcopy(ptr, p, sz); + cpu_flush_dcache(p, sz); + break; + case MD_MALLOC_MOVE_WRITE: + bcopy(p, ptr, sz); + break; + case MD_MALLOC_MOVE_CMP: + for (i = 0; i < sz; i++, p++) { + if (!first_read) { + *uc = (u_char)*p; + first = *p; + first_read = 1; + } else if (*p != first) { + error = EDOOFUS; + break; + } + } + break; + default: + KASSERT(0, ("md_malloc_move unknown op %d\n", op)); + break; + } + if (error != 0) + break; + *ma_offs += sz; + *ma_offs %= PAGE_SIZE; + if (*ma_offs == 0) + (*mp)++; + ptr = (char *)ptr + sz; + } + + if (sf != NULL) + sf_buf_free(sf); + sched_unpin(); + if (op == MD_MALLOC_MOVE_CMP && error != 0) { + *mp = mp1; + *ma_offs = ma_offs1; + } + return (error); +} + static int mdstart_malloc(struct md_s *sc, struct bio *bp) { - int i, error; u_char *dst; + vm_page_t *m; + int i, error, error1, ma_offs, notmapped; off_t secno, nsec, uc; uintptr_t sp, osp; @@ -425,9 +525,17 @@ mdstart_malloc(struct md_s *sc, struct b return (EOPNOTSUPP); } + notmapped = (bp->bio_flags & BIO_UNMAPPED) != 0; + if (notmapped) { + m = bp->bio_ma; + ma_offs = bp->bio_ma_offset; + dst = NULL; + } else { + dst = bp->bio_data; + } + nsec = bp->bio_length / sc->sectorsize; secno = bp->bio_offset / sc->sectorsize; - dst = bp->bio_data; error = 0; while (nsec--) { osp = s_read(sc->indir, secno); @@ -435,21 +543,45 @@ mdstart_malloc(struct md_s *sc, struct b if (osp != 0) error = s_write(sc->indir, secno, 0); } else if (bp->bio_cmd == BIO_READ) { - if (osp == 0) - bzero(dst, sc->sectorsize); - else if (osp <= 255) - memset(dst, osp, sc->sectorsize); - else { - bcopy((void *)osp, dst, sc->sectorsize); - cpu_flush_dcache(dst, sc->sectorsize); + if (osp == 0) { + if (notmapped) { + error = md_malloc_move(&m, &ma_offs, + sc->sectorsize, NULL, 0, + MD_MALLOC_MOVE_ZERO); + } else + bzero(dst, sc->sectorsize); + } else if (osp <= 255) { + if (notmapped) { + error = md_malloc_move(&m, &ma_offs, + sc->sectorsize, NULL, osp, + MD_MALLOC_MOVE_FILL); + } else + memset(dst, osp, sc->sectorsize); + } else { + if (notmapped) { + error = md_malloc_move(&m, &ma_offs, + sc->sectorsize, (void *)osp, 0, + MD_MALLOC_MOVE_READ); + } else { + bcopy((void *)osp, dst, sc->sectorsize); + cpu_flush_dcache(dst, sc->sectorsize); + } } osp = 0; } else if (bp->bio_cmd == BIO_WRITE) { if (sc->flags & MD_COMPRESS) { - uc = dst[0]; - for (i = 1; i < sc->sectorsize; i++) - if (dst[i] != uc) - break; + if (notmapped) { + error1 = md_malloc_move(&m, &ma_offs, + sc->sectorsize, &uc, 0, + MD_MALLOC_MOVE_CMP); + i = error1 == 0 ? sc->sectorsize : 0; + } else { + uc = dst[0]; + for (i = 1; i < sc->sectorsize; i++) { + if (dst[i] != uc) + break; + } + } } else { i = 0; uc = 0; @@ -466,10 +598,26 @@ mdstart_malloc(struct md_s *sc, struct b error = ENOSPC; break; } - bcopy(dst, (void *)sp, sc->sectorsize); + if (notmapped) { + error = md_malloc_move(&m, + &ma_offs, sc->sectorsize, + (void *)sp, 0, + MD_MALLOC_MOVE_WRITE); + } else { + bcopy(dst, (void *)sp, + sc->sectorsize); + } error = s_write(sc->indir, secno, sp); } else { - bcopy(dst, (void *)osp, sc->sectorsize); + if (notmapped) { + error = md_malloc_move(&m, + &ma_offs, sc->sectorsize, + (void *)osp, 0, + MD_MALLOC_MOVE_WRITE); + } else { + bcopy(dst, (void *)osp, + sc->sectorsize); + } osp = 0; } } @@ -481,7 +629,8 @@ mdstart_malloc(struct md_s *sc, struct b if (error != 0) break; secno++; - dst += sc->sectorsize; + if (!notmapped) + dst += sc->sectorsize; } bp->bio_resid = 0; return (error); @@ -514,6 +663,7 @@ mdstart_vnode(struct md_s *sc, struct bi struct iovec aiov; struct mount *mp; struct vnode *vp; + struct buf *pb; struct thread *td; off_t end, zerosize; @@ -589,7 +739,17 @@ mdstart_vnode(struct md_s *sc, struct bi return (error); } - aiov.iov_base = bp->bio_data; + KASSERT(bp->bio_length <= MAXPHYS, ("bio_length %jd", + (uintmax_t)bp->bio_length)); + if ((bp->bio_flags & BIO_UNMAPPED) == 0) { + pb = NULL; + aiov.iov_base = bp->bio_data; + } else { + pb = getpbuf(&md_vnode_pbuf_freecnt); + pmap_qenter((vm_offset_t)pb->b_data, bp->bio_ma, bp->bio_ma_n); + aiov.iov_base = (void *)((vm_offset_t)pb->b_data + + bp->bio_ma_offset); + } aiov.iov_len = bp->bio_length; auio.uio_iov = &aiov; auio.uio_iovcnt = 1; @@ -620,6 +780,10 @@ mdstart_vnode(struct md_s *sc, struct bi VOP_UNLOCK(vp, 0); vn_finished_write(mp); } + if ((bp->bio_flags & BIO_UNMAPPED) != 0) { + pmap_qremove((vm_offset_t)pb->b_data, bp->bio_ma_n); + relpbuf(pb, &md_vnode_pbuf_freecnt); + } VFS_UNLOCK_GIANT(vfslocked); bp->bio_resid = auio.uio_resid; return (error); @@ -628,11 +792,10 @@ mdstart_vnode(struct md_s *sc, struct bi static int mdstart_swap(struct md_s *sc, struct bio *bp) { - struct sf_buf *sf; - int rv, offs, len, lastend; - vm_pindex_t i, lastp; vm_page_t m; u_char *p; + vm_pindex_t i, lastp; + int rv, ma_offs, offs, len, lastend; switch (bp->bio_cmd) { case BIO_READ: @@ -644,6 +807,7 @@ mdstart_swap(struct md_s *sc, struct bio } p = bp->bio_data; + ma_offs = (bp->bio_flags & BIO_UNMAPPED) == 0 ? 0 : bp->bio_ma_offset; /* * offs is the offset at which to start operating on the @@ -661,21 +825,14 @@ mdstart_swap(struct md_s *sc, struct bio vm_object_pip_add(sc->object, 1); for (i = bp->bio_offset / PAGE_SIZE; i <= lastp; i++) { len = ((i == lastp) ? lastend : PAGE_SIZE) - offs; - - m = vm_page_grab(sc->object, i, - VM_ALLOC_NORMAL|VM_ALLOC_RETRY); - VM_OBJECT_UNLOCK(sc->object); - sched_pin(); - sf = sf_buf_alloc(m, SFB_CPUPRIVATE); - VM_OBJECT_LOCK(sc->object); + m = vm_page_grab(sc->object, i, VM_ALLOC_NORMAL | + VM_ALLOC_RETRY); if (bp->bio_cmd == BIO_READ) { if (m->valid == VM_PAGE_BITS_ALL) rv = VM_PAGER_OK; else rv = vm_pager_get_pages(sc->object, &m, 1, 0); if (rv == VM_PAGER_ERROR) { - sf_buf_free(sf); - sched_unpin(); vm_page_wakeup(m); break; } else if (rv == VM_PAGER_FAIL) { @@ -685,23 +842,31 @@ mdstart_swap(struct md_s *sc, struct bio * valid. Do not set dirty, the page * can be recreated if thrown out. */ - bzero((void *)sf_buf_kva(sf), PAGE_SIZE); + pmap_zero_page(m); m->valid = VM_PAGE_BITS_ALL; } - bcopy((void *)(sf_buf_kva(sf) + offs), p, len); - cpu_flush_dcache(p, len); + if ((bp->bio_flags & BIO_UNMAPPED) != 0) { + pmap_copy_pages(&m, offs, bp->bio_ma, + ma_offs, len); + } else { + physcopyout(VM_PAGE_TO_PHYS(m) + offs, p, len); + cpu_flush_dcache(p, len); + } } else if (bp->bio_cmd == BIO_WRITE) { if (len != PAGE_SIZE && m->valid != VM_PAGE_BITS_ALL) rv = vm_pager_get_pages(sc->object, &m, 1, 0); else rv = VM_PAGER_OK; if (rv == VM_PAGER_ERROR) { - sf_buf_free(sf); - sched_unpin(); vm_page_wakeup(m); break; } - bcopy(p, (void *)(sf_buf_kva(sf) + offs), len); + if ((bp->bio_flags & BIO_UNMAPPED) != 0) { + pmap_copy_pages(bp->bio_ma, ma_offs, &m, + offs, len); + } else { + physcopyin(p, VM_PAGE_TO_PHYS(m) + offs, len); + } m->valid = VM_PAGE_BITS_ALL; } else if (bp->bio_cmd == BIO_DELETE) { if (len != PAGE_SIZE && m->valid != VM_PAGE_BITS_ALL) @@ -709,20 +874,16 @@ mdstart_swap(struct md_s *sc, struct bio else rv = VM_PAGER_OK; if (rv == VM_PAGER_ERROR) { - sf_buf_free(sf); - sched_unpin(); vm_page_wakeup(m); break; } if (len != PAGE_SIZE) { - bzero((void *)(sf_buf_kva(sf) + offs), len); + pmap_zero_page_area(m, offs, len); vm_page_clear_dirty(m, offs, len); m->valid = VM_PAGE_BITS_ALL; } else vm_pager_page_unswapped(m); } - sf_buf_free(sf); - sched_unpin(); vm_page_wakeup(m); vm_page_lock(m); if (bp->bio_cmd == BIO_DELETE && len == PAGE_SIZE) @@ -736,6 +897,7 @@ mdstart_swap(struct md_s *sc, struct bio /* Actions on further pages start at offset 0 */ p += PAGE_SIZE - offs; offs = 0; + ma_offs += len; } vm_object_pip_subtract(sc->object, 1); VM_OBJECT_UNLOCK(sc->object); @@ -851,6 +1013,15 @@ mdinit(struct md_s *sc) pp = g_new_providerf(gp, "md%d", sc->unit); pp->mediasize = sc->mediasize; pp->sectorsize = sc->sectorsize; + switch (sc->type) { + case MD_MALLOC: + case MD_VNODE: + case MD_SWAP: + pp->flags |= G_PF_ACCEPT_UNMAPPED; + break; + case MD_PRELOAD: + break; + } sc->gp = gp; sc->pp = pp; g_error_provider(pp, 0); @@ -1311,6 +1482,7 @@ g_md_init(struct g_class *mp __unused) sx_xunlock(&md_sx); } } + md_vnode_pbuf_freecnt = nswbuf / 10; status_dev = make_dev(&mdctl_cdevsw, INT_MAX, UID_ROOT, GID_WHEEL, 0600, MDCTL_NAME); g_topology_lock(); Modified: stable/9/sys/dev/siis/siis.c ============================================================================== --- stable/9/sys/dev/siis/siis.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/dev/siis/siis.c Tue Jun 18 05:21:40 2013 (r251897) @@ -1939,7 +1939,7 @@ siisaction(struct cam_sim *sim, union cc cpi->hba_inquiry = PI_SDTR_ABLE | PI_TAG_ABLE; cpi->hba_inquiry |= PI_SATAPM; cpi->target_sprt = 0; - cpi->hba_misc = PIM_SEQSCAN; + cpi->hba_misc = PIM_SEQSCAN | PIM_UNMAPPED; cpi->hba_eng_cnt = 0; cpi->max_target = 15; cpi->max_lun = 0; Modified: stable/9/sys/dev/tws/tws.h ============================================================================== --- stable/9/sys/dev/tws/tws.h Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/dev/tws/tws.h Tue Jun 18 05:21:40 2013 (r251897) @@ -137,7 +137,7 @@ enum tws_req_flags { TWS_DIR_IN = 0x2, TWS_DIR_OUT = 0x4, TWS_DIR_NONE = 0x8, - TWS_DATA_CCB = 0x16, + TWS_DATA_CCB = 0x10, }; enum tws_intrs { Modified: stable/9/sys/geom/geom.h ============================================================================== --- stable/9/sys/geom/geom.h Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/geom/geom.h Tue Jun 18 05:21:40 2013 (r251897) @@ -201,6 +201,7 @@ struct g_provider { #define G_PF_CANDELETE 0x1 #define G_PF_WITHER 0x2 #define G_PF_ORPHAN 0x4 +#define G_PF_ACCEPT_UNMAPPED 0x8 /* Two fields for the implementing class to use */ void *private; Modified: stable/9/sys/geom/geom_disk.c ============================================================================== --- stable/9/sys/geom/geom_disk.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/geom/geom_disk.c Tue Jun 18 05:21:40 2013 (r251897) @@ -299,13 +299,29 @@ g_disk_start(struct bio *bp) do { bp2->bio_offset += off; bp2->bio_length -= off; - bp2->bio_data += off; + if ((bp->bio_flags & BIO_UNMAPPED) == 0) { + bp2->bio_data += off; + } else { + KASSERT((dp->d_flags & DISKFLAG_UNMAPPED_BIO) + != 0, + ("unmapped bio not supported by disk %s", + dp->d_name)); + bp2->bio_ma += off / PAGE_SIZE; + bp2->bio_ma_offset += off; + bp2->bio_ma_offset %= PAGE_SIZE; + bp2->bio_ma_n -= off / PAGE_SIZE; + } if (bp2->bio_length > dp->d_maxsize) { /* * XXX: If we have a stripesize we should really * use it here. */ bp2->bio_length = dp->d_maxsize; + if ((bp->bio_flags & BIO_UNMAPPED) != 0) { + bp2->bio_ma_n = howmany( + bp2->bio_ma_offset + + bp2->bio_length, PAGE_SIZE); + } off += dp->d_maxsize; /* * To avoid a race, we need to grab the next bio @@ -467,6 +483,8 @@ g_disk_create(void *arg, int flag) pp->flags |= G_PF_CANDELETE; pp->stripeoffset = dp->d_stripeoffset; pp->stripesize = dp->d_stripesize; + if ((dp->d_flags & DISKFLAG_UNMAPPED_BIO) != 0) + pp->flags |= G_PF_ACCEPT_UNMAPPED; if (bootverbose) printf("GEOM: new disk %s\n", gp->name); sysctl_ctx_init(&sc->sysctl_ctx); Modified: stable/9/sys/geom/geom_disk.h ============================================================================== --- stable/9/sys/geom/geom_disk.h Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/geom/geom_disk.h Tue Jun 18 05:21:40 2013 (r251897) @@ -106,6 +106,7 @@ struct disk { #define DISKFLAG_CANDELETE 0x4 #define DISKFLAG_CANFLUSHCACHE 0x8 #define DISKFLAG_LACKS_GONE 0x10 +#define DISKFLAG_UNMAPPED_BIO 0x20 struct disk *disk_alloc(void); void disk_create(struct disk *disk, int version); Modified: stable/9/sys/geom/geom_io.c ============================================================================== --- stable/9/sys/geom/geom_io.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/geom/geom_io.c Tue Jun 18 05:21:40 2013 (r251897) @@ -1,6 +1,7 @@ /*- * Copyright (c) 2002 Poul-Henning Kamp * Copyright (c) 2002 Networks Associates Technology, Inc. + * Copyright (c) 2013 The FreeBSD Foundation * All rights reserved. * * This software was developed for the FreeBSD Project by Poul-Henning Kamp @@ -8,6 +9,9 @@ * under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the * DARPA CHATS research program. * + * Portions of this software were developed by Konstantin Belousov + * under sponsorship from the FreeBSD Foundation. + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -44,6 +48,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include @@ -51,6 +56,13 @@ __FBSDID("$FreeBSD$"); #include #include +#include +#include +#include +#include +#include +#include +#include static struct g_bioq g_bio_run_down; static struct g_bioq g_bio_run_up; @@ -180,12 +192,17 @@ g_clone_bio(struct bio *bp) /* * BIO_ORDERED flag may be used by disk drivers to enforce * ordering restrictions, so this flag needs to be cloned. + * BIO_UNMAPPED should be inherited, to properly indicate + * which way the buffer is passed. * Other bio flags are not suitable for cloning. */ - bp2->bio_flags = bp->bio_flags & BIO_ORDERED; + bp2->bio_flags = bp->bio_flags & (BIO_ORDERED | BIO_UNMAPPED); bp2->bio_length = bp->bio_length; bp2->bio_offset = bp->bio_offset; bp2->bio_data = bp->bio_data; + bp2->bio_ma = bp->bio_ma; + bp2->bio_ma_n = bp->bio_ma_n; + bp2->bio_ma_offset = bp->bio_ma_offset; bp2->bio_attribute = bp->bio_attribute; /* Inherit classification info from the parent */ bp2->bio_classifier1 = bp->bio_classifier1; @@ -210,11 +227,15 @@ g_duplicate_bio(struct bio *bp) struct bio *bp2; bp2 = uma_zalloc(biozone, M_WAITOK | M_ZERO); + bp2->bio_flags = bp->bio_flags & BIO_UNMAPPED; bp2->bio_parent = bp; bp2->bio_cmd = bp->bio_cmd; bp2->bio_length = bp->bio_length; bp2->bio_offset = bp->bio_offset; bp2->bio_data = bp->bio_data; + bp2->bio_ma = bp->bio_ma; + bp2->bio_ma_n = bp->bio_ma_n; + bp2->bio_ma_offset = bp->bio_ma_offset; bp2->bio_attribute = bp->bio_attribute; bp->bio_children++; #ifdef KTR @@ -575,6 +596,85 @@ g_io_deliver(struct bio *bp, int error) return; } +SYSCTL_DECL(_kern_geom); + +static long transient_maps; +SYSCTL_LONG(_kern_geom, OID_AUTO, transient_maps, CTLFLAG_RD, + &transient_maps, 0, + "Total count of the transient mapping requests"); +u_int transient_map_retries = 10; +SYSCTL_UINT(_kern_geom, OID_AUTO, transient_map_retries, CTLFLAG_RW, + &transient_map_retries, 0, + "Max count of retries used before giving up on creating transient map"); +int transient_map_hard_failures; +SYSCTL_INT(_kern_geom, OID_AUTO, transient_map_hard_failures, CTLFLAG_RD, + &transient_map_hard_failures, 0, + "Failures to establish the transient mapping due to retry attempts " + "exhausted"); +int transient_map_soft_failures; +SYSCTL_INT(_kern_geom, OID_AUTO, transient_map_soft_failures, CTLFLAG_RD, + &transient_map_soft_failures, 0, + "Count of retried failures to establish the transient mapping"); +int inflight_transient_maps; +SYSCTL_INT(_kern_geom, OID_AUTO, inflight_transient_maps, CTLFLAG_RD, + &inflight_transient_maps, 0, + "Current count of the active transient maps"); + +static int +g_io_transient_map_bio(struct bio *bp) +{ + vm_offset_t addr; + long size; + u_int retried; + int rv; + + KASSERT(unmapped_buf_allowed, ("unmapped disabled")); + + size = round_page(bp->bio_ma_offset + bp->bio_length); + KASSERT(size / PAGE_SIZE == bp->bio_ma_n, ("Bio too short %p", bp)); + addr = 0; + retried = 0; + atomic_add_long(&transient_maps, 1); +retry: + vm_map_lock(bio_transient_map); + if (vm_map_findspace(bio_transient_map, vm_map_min(bio_transient_map), + size, &addr)) { + vm_map_unlock(bio_transient_map); + if (transient_map_retries != 0 && + retried >= transient_map_retries) { + g_io_deliver(bp, EDEADLK/* XXXKIB */); + CTR2(KTR_GEOM, "g_down cannot map bp %p provider %s", + bp, bp->bio_to->name); + atomic_add_int(&transient_map_hard_failures, 1); + return (1); + } else { + /* + * Naive attempt to quisce the I/O to get more + * in-flight requests completed and defragment + * the bio_transient_map. + */ + CTR3(KTR_GEOM, "g_down retrymap bp %p provider %s r %d", + bp, bp->bio_to->name, retried); + pause("g_d_tra", hz / 10); + retried++; + atomic_add_int(&transient_map_soft_failures, 1); + goto retry; + } + } + rv = vm_map_insert(bio_transient_map, NULL, 0, addr, addr + size, + VM_PROT_RW, VM_PROT_RW, MAP_NOFAULT); + KASSERT(rv == KERN_SUCCESS, + ("vm_map_insert(bio_transient_map) rv %d %jx %lx", + rv, (uintmax_t)addr, size)); + vm_map_unlock(bio_transient_map); + atomic_add_int(&inflight_transient_maps, 1); + pmap_qenter((vm_offset_t)addr, bp->bio_ma, OFF_TO_IDX(size)); + bp->bio_data = (caddr_t)addr + bp->bio_ma_offset; + bp->bio_flags |= BIO_TRANSIENT_MAPPING; + bp->bio_flags &= ~BIO_UNMAPPED; + return (0); +} + void g_io_schedule_down(struct thread *tp __unused) { @@ -636,6 +736,12 @@ g_io_schedule_down(struct thread *tp __u default: break; } + if ((bp->bio_flags & BIO_UNMAPPED) != 0 && + (bp->bio_to->flags & G_PF_ACCEPT_UNMAPPED) == 0 && + (bp->bio_cmd == BIO_READ || bp->bio_cmd == BIO_WRITE)) { + if (g_io_transient_map_bio(bp)) + continue; + } THREAD_NO_SLEEPING(); CTR4(KTR_GEOM, "g_down starting bp %p provider %s off %ld " "len %ld", bp, bp->bio_to->name, bp->bio_offset, Modified: stable/9/sys/geom/geom_vfs.c ============================================================================== --- stable/9/sys/geom/geom_vfs.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/geom/geom_vfs.c Tue Jun 18 05:21:40 2013 (r251897) @@ -193,14 +193,14 @@ g_vfs_strategy(struct bufobj *bo, struct bip = g_alloc_bio(); bip->bio_cmd = bp->b_iocmd; bip->bio_offset = bp->b_iooffset; - bip->bio_data = bp->b_data; - bip->bio_done = g_vfs_done; - bip->bio_caller2 = bp; bip->bio_length = bp->b_bcount; - if (bp->b_flags & B_BARRIER) { + bdata2bio(bp, bip); + if ((bp->b_flags & B_BARRIER) != 0) { bip->bio_flags |= BIO_ORDERED; bp->b_flags &= ~B_BARRIER; } + bip->bio_done = g_vfs_done; + bip->bio_caller2 = bp; g_io_request(bip, cp); } Modified: stable/9/sys/geom/part/g_part.c ============================================================================== --- stable/9/sys/geom/part/g_part.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/geom/part/g_part.c Tue Jun 18 05:21:40 2013 (r251897) @@ -429,6 +429,7 @@ g_part_new_provider(struct g_geom *gp, s entry->gpe_pp->stripeoffset = pp->stripeoffset + entry->gpe_offset; if (pp->stripesize > 0) entry->gpe_pp->stripeoffset %= pp->stripesize; + entry->gpe_pp->flags |= pp->flags & G_PF_ACCEPT_UNMAPPED; g_error_provider(entry->gpe_pp, 0); } Modified: stable/9/sys/i386/i386/pmap.c ============================================================================== --- stable/9/sys/i386/i386/pmap.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/i386/i386/pmap.c Tue Jun 18 05:21:40 2013 (r251897) @@ -4256,6 +4256,8 @@ pmap_copy_page(vm_page_t src, vm_page_t mtx_unlock(&sysmaps->lock); } +int unmapped_buf_allowed = 1; + void pmap_copy_pages(vm_page_t ma[], vm_offset_t a_offset, vm_page_t mb[], vm_offset_t b_offset, int xfersize) Modified: stable/9/sys/i386/include/param.h ============================================================================== --- stable/9/sys/i386/include/param.h Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/i386/include/param.h Tue Jun 18 05:21:40 2013 (r251897) @@ -140,9 +140,12 @@ * Ceiling on size of buffer cache (really only effects write queueing, * the VM page cache is not effected), can be changed via * the kern.maxbcache /boot/loader.conf variable. + * + * The value is equal to the size of the auto-tuned buffer map for + * the machine with 4GB of RAM, see vfs_bio.c:kern_vfs_bio_buffer_alloc(). */ #ifndef VM_BCACHE_SIZE_MAX -#define VM_BCACHE_SIZE_MAX (200 * 1024 * 1024) +#define VM_BCACHE_SIZE_MAX (7224 * 16 * 1024) #endif /* Modified: stable/9/sys/i386/xen/pmap.c ============================================================================== --- stable/9/sys/i386/xen/pmap.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/i386/xen/pmap.c Tue Jun 18 05:21:40 2013 (r251897) @@ -3444,6 +3444,8 @@ pmap_copy_page(vm_page_t src, vm_page_t mtx_unlock(&sysmaps->lock); } +int unmapped_buf_allowed = 1; + void pmap_copy_pages(vm_page_t ma[], vm_offset_t a_offset, vm_page_t mb[], vm_offset_t b_offset, int xfersize) Modified: stable/9/sys/ia64/ia64/pmap.c ============================================================================== --- stable/9/sys/ia64/ia64/pmap.c Tue Jun 18 04:57:36 2013 (r251896) +++ stable/9/sys/ia64/ia64/pmap.c Tue Jun 18 05:21:40 2013 (r251897) @@ -1884,6 +1884,8 @@ pmap_copy_page(vm_page_t msrc, vm_page_t bcopy(src, dst, PAGE_SIZE); } *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 05:22:18 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 4F72D505; Tue, 18 Jun 2013 05:22:18 +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 41E0B18FB; Tue, 18 Jun 2013 05:22: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 r5I5MI4e003061; Tue, 18 Jun 2013 05:22:18 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I5MH4h003054; Tue, 18 Jun 2013 05:22:17 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306180522.r5I5MH4h003054@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 05:22:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r251898 - in vendor: apr apr-util serf subversion X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 05:22:18 -0000 Author: peter Date: Tue Jun 18 05:22:17 2013 New Revision: 251898 URL: http://svnweb.freebsd.org/changeset/base/251898 Log: Record tarball exclude lists Added: vendor/apr-util/FREEBSD-Xlist vendor/apr/FREEBSD-Xlist vendor/serf/FREEBSD-Xlist vendor/subversion/FREEBSD-Xlist Added: vendor/apr-util/FREEBSD-Xlist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/apr-util/FREEBSD-Xlist Tue Jun 18 05:22:17 2013 (r251898) @@ -0,0 +1,2 @@ +build +xml/expat Added: vendor/apr/FREEBSD-Xlist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/apr/FREEBSD-Xlist Tue Jun 18 05:22:17 2013 (r251898) @@ -0,0 +1,9 @@ +build +*/test +*/netware +*/win32 +*/os2 +*/beos +*/darwin +*/aix +*/os390 Added: vendor/serf/FREEBSD-Xlist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/serf/FREEBSD-Xlist Tue Jun 18 05:22:17 2013 (r251898) @@ -0,0 +1 @@ +test Added: vendor/subversion/FREEBSD-Xlist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/subversion/FREEBSD-Xlist Tue Jun 18 05:22:17 2013 (r251898) @@ -0,0 +1,8 @@ +bindings +build +tools +po +tests +mod_authz_svn +mod_dav_svn +schema-bdb-1.6.svg From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 05:37:07 2013 Return-Path: Delivered-To: svn-src-all@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 5220EAC7; Tue, 18 Jun 2013 05:37:07 +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 427B51961; Tue, 18 Jun 2013 05:37: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 r5I5b7ji006892; Tue, 18 Jun 2013 05:37:07 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I5b6Rp006889; Tue, 18 Jun 2013 05:37:06 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306180537.r5I5b6Rp006889@svn.freebsd.org> From: Scott Long Date: Tue, 18 Jun 2013 05:37:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251899 - in stable/9/sys/dev: isci mps X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 05:37:07 -0000 Author: scottl Date: Tue Jun 18 05:37:06 2013 New Revision: 251899 URL: http://svnweb.freebsd.org/changeset/base/251899 Log: MFC r248825, 248775 Add unmapped i/o support for the mps and isci drivers. Submitted by: mav, jimharris Obtained from: Netflix Modified: stable/9/sys/dev/isci/isci_controller.c stable/9/sys/dev/isci/isci_io_request.c stable/9/sys/dev/mps/mps_sas.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/isci/isci_controller.c ============================================================================== --- stable/9/sys/dev/isci/isci_controller.c Tue Jun 18 05:22:17 2013 (r251898) +++ stable/9/sys/dev/isci/isci_controller.c Tue Jun 18 05:37:06 2013 (r251899) @@ -632,7 +632,8 @@ void isci_action(struct cam_sim *sim, un cpi->version_num = 1; cpi->hba_inquiry = PI_TAG_ABLE; cpi->target_sprt = 0; - cpi->hba_misc = PIM_NOBUSRESET | PIM_SEQSCAN; + cpi->hba_misc = PIM_NOBUSRESET | PIM_SEQSCAN | + PIM_UNMAPPED; cpi->hba_eng_cnt = 0; cpi->max_target = SCI_MAX_REMOTE_DEVICES - 1; cpi->max_lun = ISCI_MAX_LUN; Modified: stable/9/sys/dev/isci/isci_io_request.c ============================================================================== --- stable/9/sys/dev/isci/isci_io_request.c Tue Jun 18 05:22:17 2013 (r251898) +++ stable/9/sys/dev/isci/isci_io_request.c Tue Jun 18 05:37:06 2013 (r251899) @@ -506,10 +506,31 @@ uint8_t * scif_cb_io_request_get_virtual_address_from_sgl(void * scif_user_io_request, uint32_t byte_offset) { - struct ISCI_IO_REQUEST *isci_request = - (struct ISCI_IO_REQUEST *)scif_user_io_request; + struct ISCI_IO_REQUEST *isci_request; + union ccb *ccb; + - return (isci_request->ccb->csio.data_ptr + byte_offset); + isci_request = scif_user_io_request; + ccb = isci_request->ccb; + + /* + * This callback is only invoked for SCSI/ATA translation of + * PIO commands such as INQUIRY and READ_CAPACITY, to allow + * the driver to write the translated data directly into the + * data buffer. It is never invoked for READ/WRITE commands. + * The driver currently assumes only READ/WRITE commands will + * be unmapped. + * + * As a safeguard against future changes to unmapped commands, + * add an explicit panic here should the DATA_MASK != VADDR. + * Otherwise, we would return some garbage pointer back to the + * caller which would result in a panic or more subtle data + * corruption later on. + */ + if ((ccb->ccb_h.flags & CAM_DATA_MASK) != CAM_DATA_VADDR) + panic("%s: requesting pointer into unmapped ccb", __func__); + + return (ccb->csio.data_ptr + byte_offset); } /** @@ -747,10 +768,6 @@ isci_io_request_execute_scsi_io(union cc io_request->current_sge_index = 0; io_request->parent.remote_device_handle = device->sci_object; - if ((ccb->ccb_h.flags & CAM_DATA_MASK) != CAM_DATA_VADDR) - panic("Unexpected cam data format! flags = 0x%x\n", - ccb->ccb_h.flags); - error = bus_dmamap_load_ccb(io_request->parent.dma_tag, io_request->parent.dma_map, ccb, isci_io_request_construct, io_request, 0x0); Modified: stable/9/sys/dev/mps/mps_sas.c ============================================================================== --- stable/9/sys/dev/mps/mps_sas.c Tue Jun 18 05:22:17 2013 (r251898) +++ stable/9/sys/dev/mps/mps_sas.c Tue Jun 18 05:37:06 2013 (r251899) @@ -914,7 +914,7 @@ mpssas_action(struct cam_sim *sim, union cpi->version_num = 1; cpi->hba_inquiry = PI_SDTR_ABLE|PI_TAG_ABLE|PI_WIDE_16; cpi->target_sprt = 0; - cpi->hba_misc = PIM_NOBUSRESET; + cpi->hba_misc = PIM_NOBUSRESET | PIM_UNMAPPED; cpi->hba_eng_cnt = 0; cpi->max_target = sassc->sc->facts->MaxTargets - 1; cpi->max_lun = 255; @@ -2238,6 +2238,7 @@ mpssas_scsiio_complete(struct mps_softc if ((csio->cdb_io.cdb_bytes[0] == INQUIRY) && (csio->cdb_io.cdb_bytes[1] & SI_EVPD) && (csio->cdb_io.cdb_bytes[2] == SVPD_SUPPORTED_PAGE_LIST) && + ((csio->ccb_h.flags & CAM_DATA_MASK) == CAM_DATA_VADDR) && (csio->data_ptr != NULL) && (((uint8_t *)cm->cm_data)[0] == T_SEQUENTIAL) && (sc->control_TLR) && (sc->mapping_table[csio->ccb_h.target_id].device_info & From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 06:55:59 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 07:02:35 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 07:04:20 2013 Return-Path: Delivered-To: svn-src-all@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 20352FAC; Tue, 18 Jun 2013 07:04:20 +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 126501C84; Tue, 18 Jun 2013 07:04: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 r5I74J5F034589; Tue, 18 Jun 2013 07:04:19 GMT (envelope-from des@svn.freebsd.org) Received: (from des@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I74J3M034587; Tue, 18 Jun 2013 07:04:19 GMT (envelope-from des@svn.freebsd.org) Message-Id: <201306180704.r5I74J3M034587@svn.freebsd.org> From: Dag-Erling Smørgrav Date: Tue, 18 Jun 2013 07:04:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251902 - in stable/9: . sys/vm X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 07:04:20 -0000 Author: des Date: Tue Jun 18 07:04:19 2013 New Revision: 251902 URL: http://svnweb.freebsd.org/changeset/base/251902 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: stable/9/UPDATING stable/9/sys/vm/vm_map.c Modified: stable/9/UPDATING ============================================================================== --- stable/9/UPDATING Tue Jun 18 07:02:35 2013 (r251901) +++ stable/9/UPDATING Tue Jun 18 07:04:19 2013 (r251902) @@ -11,6 +11,12 @@ handbook: Items affecting the ports and packages system can be found in /usr/ports/UPDATING. Please read that file before running portupgrade. +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. + 20130605: Added ZFS TRIM support which is enabled by default. To disable ZFS TRIM support set vfs.zfs.trim.enabled=0 in loader.conf. Modified: stable/9/sys/vm/vm_map.c ============================================================================== --- stable/9/sys/vm/vm_map.c Tue Jun 18 07:02:35 2013 (r251901) +++ stable/9/sys/vm/vm_map.c Tue Jun 18 07:04:19 2013 (r251902) @@ -3799,6 +3799,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-all@FreeBSD.ORG Tue Jun 18 07:05:52 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 6FF93240; Tue, 18 Jun 2013 07:05:52 +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 447B41C96; Tue, 18 Jun 2013 07:05: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 r5I75qO2034906; Tue, 18 Jun 2013 07:05:52 GMT (envelope-from des@svn.freebsd.org) Received: (from des@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I75pS4034903; Tue, 18 Jun 2013 07:05:51 GMT (envelope-from des@svn.freebsd.org) Message-Id: <201306180705.r5I75pS4034903@svn.freebsd.org> From: Dag-Erling Smørgrav Date: Tue, 18 Jun 2013 07:05:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-releng@freebsd.org Subject: svn commit: r251903 - in releng/9.1: . sys/conf sys/vm X-SVN-Group: releng MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 07:05:52 -0000 Author: des Date: Tue Jun 18 07:05:51 2013 New Revision: 251903 URL: http://svnweb.freebsd.org/changeset/base/251903 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: releng/9.1/UPDATING releng/9.1/sys/conf/newvers.sh releng/9.1/sys/vm/vm_map.c Modified: releng/9.1/UPDATING ============================================================================== --- releng/9.1/UPDATING Tue Jun 18 07:04:19 2013 (r251902) +++ releng/9.1/UPDATING Tue Jun 18 07:05:51 2013 (r251903) @@ -9,6 +9,12 @@ handbook. Items affecting the ports and packages system can be found in /usr/ports/UPDATING. Please read that file before running portupgrade. +20130618: p4 FreeBSD-SA-13:06.mmap + 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. + 20130429: p3 FreeBSD-SA-13:05.nfsserver Fix a bug that allows NFS clients to issue READDIR on files. Modified: releng/9.1/sys/conf/newvers.sh ============================================================================== --- releng/9.1/sys/conf/newvers.sh Tue Jun 18 07:04:19 2013 (r251902) +++ releng/9.1/sys/conf/newvers.sh Tue Jun 18 07:05:51 2013 (r251903) @@ -32,7 +32,7 @@ TYPE="FreeBSD" REVISION="9.1" -BRANCH="RELEASE-p3" +BRANCH="RELEASE-p4" if [ "X${BRANCH_OVERRIDE}" != "X" ]; then BRANCH=${BRANCH_OVERRIDE} fi Modified: releng/9.1/sys/vm/vm_map.c ============================================================================== --- releng/9.1/sys/vm/vm_map.c Tue Jun 18 07:04:19 2013 (r251902) +++ releng/9.1/sys/vm/vm_map.c Tue Jun 18 07:05:51 2013 (r251903) @@ -3761,6 +3761,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-all@FreeBSD.ORG Tue Jun 18 07:33:46 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 07:36:11 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 08:03:13 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 08:15:59 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 08:22:52 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 08:25:26 2013 Return-Path: Delivered-To: svn-src-all@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 BA5B9B5D 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 186C61624 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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 08:28:03 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 08:29:01 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 08:30:31 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 08:35:44 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 08:37:36 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 08:40:16 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 08:42:47 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 08:54:03 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 08:59:47 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 09:05:09 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 09:20:00 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 09:21:22 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7904E333; Tue, 18 Jun 2013 09:21:22 +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 5122D19DA; Tue, 18 Jun 2013 09:21: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 r5I9LMlY083015; Tue, 18 Jun 2013 09:21:22 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9LM1X083014; Tue, 18 Jun 2013 09:21:22 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306180921.r5I9LM1X083014@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 09:21:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251916 - stable/9/sys/geom/raid X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:21:22 -0000 Author: mav Date: Tue Jun 18 09:21:21 2013 New Revision: 251916 URL: http://svnweb.freebsd.org/changeset/base/251916 Log: MFC r248068 (by sbruno): Add legacy support to geom raid to create a /dev/arX device for support of upgrading older machines using ataraid(4) to newer releases. This optional parameter is controlled via kern.geom.raid.legacy_aliases and will create a /dev/ar0 device that will point at /dev/raid/r0 for example. Tested on Dell SC 1425 DDF-1 format software raid controllers installing from stable/7 and upgrading to stable/9 without having to adjust /etc/fstab Modified: stable/9/sys/geom/raid/g_raid.c Modified: stable/9/sys/geom/raid/g_raid.c ============================================================================== --- stable/9/sys/geom/raid/g_raid.c Tue Jun 18 09:19:59 2013 (r251915) +++ stable/9/sys/geom/raid/g_raid.c Tue Jun 18 09:21:21 2013 (r251916) @@ -92,6 +92,11 @@ TUNABLE_INT("kern.geom.raid.idle_thresho SYSCTL_UINT(_kern_geom_raid, OID_AUTO, idle_threshold, CTLFLAG_RW, &g_raid_idle_threshold, 1000000, "Time in microseconds to consider a volume idle."); +static u_int ar_legacy_aliases = 1; +SYSCTL_INT(_kern_geom_raid, OID_AUTO, legacy_aliases, CTLFLAG_RW, + &ar_legacy_aliases, 0, "Create aliases named as the legacy ataraid style."); +TUNABLE_INT("kern.geom_raid.legacy_aliases", &ar_legacy_aliases); + #define MSLEEP(rv, ident, mtx, priority, wmesg, timeout) do { \ G_RAID_DEBUG(4, "%s: Sleeping %p.", __func__, (ident)); \ @@ -1637,6 +1642,7 @@ g_raid_launch_provider(struct g_raid_vol struct g_raid_softc *sc; struct g_provider *pp; char name[G_RAID_MAX_VOLUMENAME]; + char announce_buf[80], buf1[32]; off_t off; sc = vol->v_softc; @@ -1650,6 +1656,22 @@ g_raid_launch_provider(struct g_raid_vol /* Otherwise use sequential volume number. */ snprintf(name, sizeof(name), "raid/r%d", vol->v_global_id); } + + /* + * Create a /dev/ar%d that the old ataraid(4) stack once + * created as an alias for /dev/raid/r%d if requested. + * This helps going from stable/7 ataraid devices to newer + * FreeBSD releases. sbruno 07 MAY 2013 + */ + + if (ar_legacy_aliases) { + snprintf(announce_buf, sizeof(announce_buf), + "kern.devalias.%s", name); + snprintf(buf1, sizeof(buf1), + "ar%d", vol->v_global_id); + setenv(announce_buf, buf1); + } + pp = g_new_providerf(sc->sc_geom, "%s", name); pp->private = vol; pp->mediasize = vol->v_mediasize; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 09:23:04 2013 Return-Path: Delivered-To: svn-src-all@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 F0B534D2; Tue, 18 Jun 2013 09:23:03 +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 C9D1A19FC; Tue, 18 Jun 2013 09:23: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 r5I9N3Xm083362; Tue, 18 Jun 2013 09:23:03 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9N3ko083361; Tue, 18 Jun 2013 09:23:03 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306180923.r5I9N3ko083361@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 09:23:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251917 - stable/9/sys X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:23:04 -0000 Author: mav Date: Tue Jun 18 09:23:03 2013 New Revision: 251917 URL: http://svnweb.freebsd.org/changeset/base/251917 Log: Missed mergeinfo for r251916. Modified: Directory Properties: stable/9/sys/ (props changed) From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 09:26:01 2013 Return-Path: Delivered-To: svn-src-all@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 9E9356D6; Tue, 18 Jun 2013 09:26:01 +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 90FD61A50; Tue, 18 Jun 2013 09:26:01 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I9Q19O083842; Tue, 18 Jun 2013 09:26:01 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9Q158083840; Tue, 18 Jun 2013 09:26:01 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306180926.r5I9Q158083840@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 09:26:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251918 - stable/9/sys/geom/gate X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:26:01 -0000 Author: mav Date: Tue Jun 18 09:26:01 2013 New Revision: 251918 URL: http://svnweb.freebsd.org/changeset/base/251918 Log: MFC r248295 (by pjd): We don't need buffer to handle BIO_DELETE, so don't check buffer size for it. This fixes handling BIO_DELETE larger than MAXPHYS. Modified: stable/9/sys/geom/gate/g_gate.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/geom/gate/g_gate.c ============================================================================== --- stable/9/sys/geom/gate/g_gate.c Tue Jun 18 09:23:03 2013 (r251917) +++ stable/9/sys/geom/gate/g_gate.c Tue Jun 18 09:26:01 2013 (r251918) @@ -813,7 +813,7 @@ g_gate_ioctl(struct cdev *dev, u_long cm } } ggio->gctl_cmd = bp->bio_cmd; - if ((bp->bio_cmd == BIO_DELETE || bp->bio_cmd == BIO_WRITE) && + if (bp->bio_cmd == BIO_WRITE && bp->bio_length > ggio->gctl_length) { mtx_unlock(&sc->sc_queue_mtx); ggio->gctl_length = bp->bio_length; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 09:28:50 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 09:29:30 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 9AD3DA58; Tue, 18 Jun 2013 09:29:30 +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 8D7AB1AAD; Tue, 18 Jun 2013 09:29: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 r5I9TUXs084416; Tue, 18 Jun 2013 09:29:30 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9TUkJ084415; Tue, 18 Jun 2013 09:29:30 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306180929.r5I9TUkJ084415@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 09:29:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251920 - stable/9/sys/geom X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:29:30 -0000 Author: mav Date: Tue Jun 18 09:29:30 2013 New Revision: 251920 URL: http://svnweb.freebsd.org/changeset/base/251920 Log: MFC r248596 (by kib): Correct the page count when excess length is trimmed from the bio. Modified: stable/9/sys/geom/geom_io.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/geom/geom_io.c ============================================================================== --- stable/9/sys/geom/geom_io.c Tue Jun 18 09:28:49 2013 (r251919) +++ stable/9/sys/geom/geom_io.c Tue Jun 18 09:29:30 2013 (r251920) @@ -718,8 +718,17 @@ g_io_schedule_down(struct thread *tp __u */ excess = bp->bio_offset + bp->bio_length; if (excess > bp->bio_to->mediasize) { + KASSERT((bp->bio_flags & BIO_UNMAPPED) == 0 || + round_page(bp->bio_ma_offset + + bp->bio_length) / PAGE_SIZE == bp->bio_ma_n, + ("excess bio %p too short", bp)); excess -= bp->bio_to->mediasize; bp->bio_length -= excess; + if ((bp->bio_flags & BIO_UNMAPPED) != 0) { + bp->bio_ma_n = round_page( + bp->bio_ma_offset + + bp->bio_length) / PAGE_SIZE; + } if (excess > 0) CTR3(KTR_GEOM, "g_down truncated bio " "%p provider %s by %d", bp, From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 09:31:07 2013 Return-Path: Delivered-To: svn-src-all@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 7B7FEC1B; Tue, 18 Jun 2013 09:31:07 +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 6E0A61ADB; Tue, 18 Jun 2013 09:31: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 r5I9V7bv086349; Tue, 18 Jun 2013 09:31:07 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9V7iM086348; Tue, 18 Jun 2013 09:31:07 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306180931.r5I9V7iM086348@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 09:31:07 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251921 - stable/9/sys/geom/multipath X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:31:07 -0000 Author: mav Date: Tue Jun 18 09:31:06 2013 New Revision: 251921 URL: http://svnweb.freebsd.org/changeset/base/251921 Log: MFC r248696: Make GEOM MULTIPATH to report unmapped bio support if underling path report it. GEOM MULTIPATH itself never touches the data and so transparent. Modified: stable/9/sys/geom/multipath/g_multipath.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/geom/multipath/g_multipath.c ============================================================================== --- stable/9/sys/geom/multipath/g_multipath.c Tue Jun 18 09:29:30 2013 (r251920) +++ stable/9/sys/geom/multipath/g_multipath.c Tue Jun 18 09:31:06 2013 (r251921) @@ -522,6 +522,8 @@ g_multipath_add_disk(struct g_geom *gp, sc->sc_pp->stripesize = pp->stripesize; sc->sc_pp->stripeoffset = pp->stripeoffset; } + if (sc->sc_pp != NULL) + sc->sc_pp->flags |= pp->flags & G_PF_ACCEPT_UNMAPPED; mtx_lock(&sc->sc_mtx); cp->index = 0; sc->sc_ndisks++; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 09:34:37 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id A4569E45; Tue, 18 Jun 2013 09:34:37 +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 7D2711B26; Tue, 18 Jun 2013 09:34: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 r5I9Ybk0087036; Tue, 18 Jun 2013 09:34:37 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9Ya8K087031; Tue, 18 Jun 2013 09:34:36 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306180934.r5I9Ya8K087031@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 09:34:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251922 - in stable/9/sys/geom: gate nop raid X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:34:37 -0000 Author: mav Date: Tue Jun 18 09:34:36 2013 New Revision: 251922 URL: http://svnweb.freebsd.org/changeset/base/251922 Log: MFC r248720: Remove extra bio_data and bio_length copying to child request after calling g_clone_bio(), that already copied them. Modified: stable/9/sys/geom/gate/g_gate.c stable/9/sys/geom/nop/g_nop.c stable/9/sys/geom/raid/tr_raid1e.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/geom/gate/g_gate.c ============================================================================== --- stable/9/sys/geom/gate/g_gate.c Tue Jun 18 09:31:06 2013 (r251921) +++ stable/9/sys/geom/gate/g_gate.c Tue Jun 18 09:34:36 2013 (r251922) @@ -245,8 +245,6 @@ g_gate_start(struct bio *pbp) } cbp->bio_done = g_gate_done; cbp->bio_offset = pbp->bio_offset + sc->sc_readoffset; - cbp->bio_data = pbp->bio_data; - cbp->bio_length = pbp->bio_length; cbp->bio_to = sc->sc_readcons->provider; g_io_request(cbp, sc->sc_readcons); return; Modified: stable/9/sys/geom/nop/g_nop.c ============================================================================== --- stable/9/sys/geom/nop/g_nop.c Tue Jun 18 09:31:06 2013 (r251921) +++ stable/9/sys/geom/nop/g_nop.c Tue Jun 18 09:34:36 2013 (r251922) @@ -112,8 +112,6 @@ g_nop_start(struct bio *bp) } cbp->bio_done = g_std_done; cbp->bio_offset = bp->bio_offset + sc->sc_offset; - cbp->bio_data = bp->bio_data; - cbp->bio_length = bp->bio_length; pp = LIST_FIRST(&gp->provider); KASSERT(pp != NULL, ("NULL pp")); cbp->bio_to = pp; Modified: stable/9/sys/geom/raid/tr_raid1e.c ============================================================================== --- stable/9/sys/geom/raid/tr_raid1e.c Tue Jun 18 09:31:06 2013 (r251921) +++ stable/9/sys/geom/raid/tr_raid1e.c Tue Jun 18 09:34:36 2013 (r251922) @@ -1076,8 +1076,6 @@ rebuild_round_done: offset += vol->v_strip_size; } cbp->bio_offset = offset + start; - cbp->bio_length = bp->bio_length; - cbp->bio_data = bp->bio_data; cbp->bio_cmd = BIO_WRITE; cbp->bio_cflags = G_RAID_BIO_FLAG_REMAP; cbp->bio_caller2 = (void *)mask; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 09:36:02 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 22906171; Tue, 18 Jun 2013 09:36:02 +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 EF09D1B48; Tue, 18 Jun 2013 09:36:01 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I9a1bD087490; Tue, 18 Jun 2013 09:36:01 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9a1lQ087485; Tue, 18 Jun 2013 09:36:01 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306180936.r5I9a1lQ087485@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 09:36:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r251923 - in stable/8/sys/geom: gate nop raid X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:36:02 -0000 Author: mav Date: Tue Jun 18 09:36:01 2013 New Revision: 251923 URL: http://svnweb.freebsd.org/changeset/base/251923 Log: MFC r248720: Remove extra bio_data and bio_length copying to child request after calling g_clone_bio(), that already copied them. Modified: stable/8/sys/geom/gate/g_gate.c stable/8/sys/geom/nop/g_nop.c stable/8/sys/geom/raid/tr_raid1e.c Directory Properties: stable/8/sys/ (props changed) stable/8/sys/geom/ (props changed) Modified: stable/8/sys/geom/gate/g_gate.c ============================================================================== --- stable/8/sys/geom/gate/g_gate.c Tue Jun 18 09:34:36 2013 (r251922) +++ stable/8/sys/geom/gate/g_gate.c Tue Jun 18 09:36:01 2013 (r251923) @@ -242,8 +242,6 @@ g_gate_start(struct bio *pbp) } cbp->bio_done = g_gate_done; cbp->bio_offset = pbp->bio_offset + sc->sc_readoffset; - cbp->bio_data = pbp->bio_data; - cbp->bio_length = pbp->bio_length; cbp->bio_to = sc->sc_readcons->provider; g_io_request(cbp, sc->sc_readcons); return; Modified: stable/8/sys/geom/nop/g_nop.c ============================================================================== --- stable/8/sys/geom/nop/g_nop.c Tue Jun 18 09:34:36 2013 (r251922) +++ stable/8/sys/geom/nop/g_nop.c Tue Jun 18 09:36:01 2013 (r251923) @@ -111,8 +111,6 @@ g_nop_start(struct bio *bp) } cbp->bio_done = g_std_done; cbp->bio_offset = bp->bio_offset + sc->sc_offset; - cbp->bio_data = bp->bio_data; - cbp->bio_length = bp->bio_length; pp = LIST_FIRST(&gp->provider); KASSERT(pp != NULL, ("NULL pp")); cbp->bio_to = pp; Modified: stable/8/sys/geom/raid/tr_raid1e.c ============================================================================== --- stable/8/sys/geom/raid/tr_raid1e.c Tue Jun 18 09:34:36 2013 (r251922) +++ stable/8/sys/geom/raid/tr_raid1e.c Tue Jun 18 09:36:01 2013 (r251923) @@ -1076,8 +1076,6 @@ rebuild_round_done: offset += vol->v_strip_size; } cbp->bio_offset = offset + start; - cbp->bio_length = bp->bio_length; - cbp->bio_data = bp->bio_data; cbp->bio_cmd = BIO_WRITE; cbp->bio_cflags = G_RAID_BIO_FLAG_REMAP; cbp->bio_caller2 = (void *)mask; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 09:37:45 2013 Return-Path: Delivered-To: svn-src-all@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 523B4311; Tue, 18 Jun 2013 09:37:45 +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 451811B6D; Tue, 18 Jun 2013 09:37: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 r5I9bj9X087901; Tue, 18 Jun 2013 09:37:45 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9bjW5087900; Tue, 18 Jun 2013 09:37:45 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306180937.r5I9bjW5087900@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 09:37:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251924 - stable/9/sys/geom/nop X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:37:45 -0000 Author: mav Date: Tue Jun 18 09:37:44 2013 New Revision: 251924 URL: http://svnweb.freebsd.org/changeset/base/251924 Log: MFC r248721: GEOM NOP does not touch the data, so pass G_PF_ACCEPT_UNMAPPED flag through. Modified: stable/9/sys/geom/nop/g_nop.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/geom/nop/g_nop.c ============================================================================== --- stable/9/sys/geom/nop/g_nop.c Tue Jun 18 09:36:01 2013 (r251923) +++ stable/9/sys/geom/nop/g_nop.c Tue Jun 18 09:37:44 2013 (r251924) @@ -214,6 +214,7 @@ g_nop_create(struct gctl_req *req, struc goto fail; } + newpp->flags |= pp->flags & G_PF_ACCEPT_UNMAPPED; g_error_provider(newpp, 0); G_NOP_DEBUG(0, "Device %s created.", gp->name); return (0); From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 09:39:53 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 679234DB; Tue, 18 Jun 2013 09:39:53 +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 5A18A1B9F; Tue, 18 Jun 2013 09:39:53 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5I9drww088399; Tue, 18 Jun 2013 09:39:53 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9drRN088398; Tue, 18 Jun 2013 09:39:53 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306180939.r5I9drRN088398@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 09:39:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251925 - stable/9/sys/geom X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:39:53 -0000 Author: mav Date: Tue Jun 18 09:39:52 2013 New Revision: 251925 URL: http://svnweb.freebsd.org/changeset/base/251925 Log: MFC r248722: geom_slice.c and its consumers like GEOM_LABEL are not touching the data unless hotspots are used. Pass G_PF_ACCEPT_UNMAPPED flag through except such rare cases (obsolete GEOM_SUNLABEL and GEOM_BSD). Modified: stable/9/sys/geom/geom_slice.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/geom/geom_slice.c ============================================================================== --- stable/9/sys/geom/geom_slice.c Tue Jun 18 09:37:44 2013 (r251924) +++ stable/9/sys/geom/geom_slice.c Tue Jun 18 09:39:52 2013 (r251925) @@ -397,6 +397,8 @@ g_slice_config(struct g_geom *gp, u_int pp->stripeoffset = pp2->stripeoffset + offset; if (pp->stripesize > 0) pp->stripeoffset %= pp->stripesize; + if (gsp->nhotspot == 0) + pp->flags |= pp2->flags & G_PF_ACCEPT_UNMAPPED; if (0 && bootverbose) printf("GEOM: Configure %s, start %jd length %jd end %jd\n", pp->name, (intmax_t)offset, (intmax_t)length, @@ -429,11 +431,17 @@ g_slice_conf_hot(struct g_geom *gp, u_in { struct g_slicer *gsp; struct g_slice_hot *gsl, *gsl2; + struct g_provider *pp; g_trace(G_T_TOPOLOGY, "g_slice_conf_hot(%s, idx: %d, off: %jd, len: %jd)", gp->name, idx, (intmax_t)offset, (intmax_t)length); g_topology_assert(); gsp = gp->softc; + /* Deny unmapped I/O if hotspots are used. */ + if (gsp->nhotspot == 0) { + LIST_FOREACH(pp, &gp->provider, provider) + pp->flags &= ~G_PF_ACCEPT_UNMAPPED; + } gsl = gsp->hotspot; if(idx >= gsp->nhotspot) { gsl2 = g_malloc((idx + 1) * sizeof *gsl2, M_WAITOK | M_ZERO); From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 09:41:35 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 09:42:43 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 9087C80D; Tue, 18 Jun 2013 09:42:43 +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 830091BC6; Tue, 18 Jun 2013 09:42: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 r5I9ghK1090699; Tue, 18 Jun 2013 09:42:43 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9ghZM090698; Tue, 18 Jun 2013 09:42:43 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306180942.r5I9ghZM090698@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 09:42:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251927 - stable/9/sys/geom X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:42:43 -0000 Author: mav Date: Tue Jun 18 09:42:43 2013 New Revision: 251927 URL: http://svnweb.freebsd.org/changeset/base/251927 Log: MFC r249193 (by trasz): Make it possible to submit FLUSH bios through geom_dev strategy. This is required for CTL to work with device-backed LUNs. Modified: stable/9/sys/geom/geom_dev.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/geom/geom_dev.c ============================================================================== --- stable/9/sys/geom/geom_dev.c Tue Jun 18 09:41:34 2013 (r251926) +++ stable/9/sys/geom/geom_dev.c Tue Jun 18 09:42:43 2013 (r251927) @@ -522,7 +522,8 @@ g_dev_strategy(struct bio *bp) KASSERT(bp->bio_cmd == BIO_READ || bp->bio_cmd == BIO_WRITE || - bp->bio_cmd == BIO_DELETE, + bp->bio_cmd == BIO_DELETE || + bp->bio_cmd == BIO_FLUSH, ("Wrong bio_cmd bio=%p cmd=%d", bp, bp->bio_cmd)); dev = bp->bio_dev; cp = dev->si_drv2; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 09:43:11 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 09:44:56 2013 Return-Path: Delivered-To: svn-src-all@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 681B1B3F; Tue, 18 Jun 2013 09:44:56 +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 5A0E91BE3; Tue, 18 Jun 2013 09:44: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 r5I9iuFe091280; Tue, 18 Jun 2013 09:44:56 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9iugC091279; Tue, 18 Jun 2013 09:44:56 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306180944.r5I9iugC091279@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 09:44:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251929 - stable/9/sys/geom/raid X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:44:56 -0000 Author: mav Date: Tue Jun 18 09:44:55 2013 New Revision: 251929 URL: http://svnweb.freebsd.org/changeset/base/251929 Log: MFC r249974: Return "descr" field alike to "Intel RAID1 volume" for GEOM RAID to make it look better in bsdinstall. Modified: stable/9/sys/geom/raid/g_raid.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/geom/raid/g_raid.c ============================================================================== --- stable/9/sys/geom/raid/g_raid.c Tue Jun 18 09:43:10 2013 (r251928) +++ stable/9/sys/geom/raid/g_raid.c Tue Jun 18 09:44:55 2013 (r251929) @@ -2357,6 +2357,10 @@ g_raid_dumpconf(struct sbuf *sb, const c vol = pp->private; g_topology_unlock(); sx_xlock(&sc->sc_lock); + sbuf_printf(sb, "%s%s %s volume\n", indent, + sc->sc_md->mdo_class->name, + g_raid_volume_level2str(vol->v_raid_level, + vol->v_raid_level_qualifier)); sbuf_printf(sb, "%s\n", indent, vol->v_name); sbuf_printf(sb, "%s%s\n", indent, From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 09:45:11 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 09:47:57 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 0FAA3137; Tue, 18 Jun 2013 09:47:57 +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 027251C56; Tue, 18 Jun 2013 09:47: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 r5I9lut3092041; Tue, 18 Jun 2013 09:47:56 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9luds092040; Tue, 18 Jun 2013 09:47:56 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306180947.r5I9luds092040@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 09:47:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251931 - stable/9/sys/geom X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:47:57 -0000 Author: mav Date: Tue Jun 18 09:47:56 2013 New Revision: 251931 URL: http://svnweb.freebsd.org/changeset/base/251931 Log: MFC r251616: Don't update provider properties and don't set DISKFLAG_OPEN if d_open() disk method call returned error. GEOM considers devices in such case as still closed, and won't call symmetric d_close() for them. Modified: stable/9/sys/geom/geom_disk.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/geom/geom_disk.c ============================================================================== --- stable/9/sys/geom/geom_disk.c Tue Jun 18 09:45:10 2013 (r251930) +++ stable/9/sys/geom/geom_disk.c Tue Jun 18 09:47:56 2013 (r251931) @@ -138,6 +138,8 @@ g_disk_access(struct g_provider *pp, int printf("Opened disk %s -> %d\n", pp->name, error); g_disk_unlock_giant(dp); + if (error != 0) + return (error); } pp->mediasize = dp->d_mediasize; pp->sectorsize = dp->d_sectorsize; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 09:48:56 2013 Return-Path: Delivered-To: svn-src-all@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 9CA7D2C2; Tue, 18 Jun 2013 09:48:56 +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 8F93C1C67; Tue, 18 Jun 2013 09:48: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 r5I9mu1W092235; Tue, 18 Jun 2013 09:48:56 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5I9muvP092234; Tue, 18 Jun 2013 09:48:56 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306180948.r5I9muvP092234@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 09:48:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r251932 - stable/8/sys/geom X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 09:48:56 -0000 Author: mav Date: Tue Jun 18 09:48:56 2013 New Revision: 251932 URL: http://svnweb.freebsd.org/changeset/base/251932 Log: MFC r251616: Don't update provider properties and don't set DISKFLAG_OPEN if d_open() disk method call returned error. GEOM considers devices in such case as still closed, and won't call symmetric d_close() for them. Modified: stable/8/sys/geom/geom_disk.c Directory Properties: stable/8/sys/ (props changed) stable/8/sys/geom/ (props changed) Modified: stable/8/sys/geom/geom_disk.c ============================================================================== --- stable/8/sys/geom/geom_disk.c Tue Jun 18 09:47:56 2013 (r251931) +++ stable/8/sys/geom/geom_disk.c Tue Jun 18 09:48:56 2013 (r251932) @@ -151,6 +151,8 @@ g_disk_access(struct g_provider *pp, int printf("Opened disk %s -> %d\n", pp->name, error); g_disk_unlock_giant(dp); + if (error != 0) + return (error); } pp->mediasize = dp->d_mediasize; pp->sectorsize = dp->d_sectorsize; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 09:54:10 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 10:26:23 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 12:03:11 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 13:30:37 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7B8DE37D for ; Tue, 18 Jun 2013 13:30:37 +0000 (UTC) (envelope-from mcdouga9@egr.msu.edu) Received: from mail.egr.msu.edu (hill.egr.msu.edu [35.9.37.162]) by mx1.freebsd.org (Postfix) with ESMTP id 5714819C2 for ; Tue, 18 Jun 2013 13:30:36 +0000 (UTC) Received: from hill (localhost [127.0.0.1]) by mail.egr.msu.edu (Postfix) with ESMTP id A773A3E599 for ; Tue, 18 Jun 2013 09:30:35 -0400 (EDT) X-Virus-Scanned: amavisd-new at egr.msu.edu Received: from mail.egr.msu.edu ([127.0.0.1]) by hill (hill.egr.msu.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id nW_kV__KD3KP for ; Tue, 18 Jun 2013 09:30:35 -0400 (EDT) Received: from EGR authenticated sender Message-ID: <51C060FB.1020209@egr.msu.edu> Date: Tue, 18 Jun 2013 09:30:35 -0400 From: Adam McDougall User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130516 Thunderbird/17.0.6 MIME-Version: 1.0 To: svn-src-all@freebsd.org Subject: Re: svn commit: r251297 - head/sys/dev/xen/netfront References: <201306031300.r53D0XUx092178@svn.freebsd.org> In-Reply-To: <201306031300.r53D0XUx092178@svn.freebsd.org> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 13:30:37 -0000 On 06/03/13 09:00, Andre Oppermann wrote: > Author: andre > Date: Mon Jun 3 13:00:33 2013 > New Revision: 251297 > URL: http://svnweb.freebsd.org/changeset/base/251297 > > Log: > Specify a maximum TSO length limiting the segment chain to what the > Xen host side can handle after defragmentation. > > This prevents the driver from throwing away too long TSO chains and > improves the performance on Amazon AWS instances with 10GigE virtual > interfaces to the normally expected throughput. > > Submitted by: cperciva (earlier version) > Reviewed by: cperciva > Tested by: cperciva > MFC after: 1 week > > Modified: > head/sys/dev/xen/netfront/netfront.c > > Modified: head/sys/dev/xen/netfront/netfront.c > ============================================================================== > --- head/sys/dev/xen/netfront/netfront.c Mon Jun 3 12:55:13 2013 (r251296) > +++ head/sys/dev/xen/netfront/netfront.c Mon Jun 3 13:00:33 2013 (r251297) > @@ -134,6 +134,7 @@ static const int MODPARM_rx_flip = 0; > * to mirror the Linux MAX_SKB_FRAGS constant. > */ > #define MAX_TX_REQ_FRAGS (65536 / PAGE_SIZE + 2) > +#define NF_TSO_MAXBURST ((IP_MAXPACKET / PAGE_SIZE) * MCLBYTES) > > #define RX_COPY_THRESHOLD 256 > > @@ -2122,6 +2123,7 @@ create_netdev(device_t dev) > > ifp->if_hwassist = XN_CSUM_FEATURES; > ifp->if_capabilities = IFCAP_HWCSUM; > + ifp->if_hw_tsomax = NF_TSO_MAXBURST; > > ether_ifattach(ifp, np->mac); > callout_init(&np->xn_stat_ch, CALLOUT_MPSAFE); Can this and r251296 be MFC'ed yet or does it need more work to pass muster? Thinking ahead to my next deployment build. Thanks. From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 13:34:38 2013 Return-Path: Delivered-To: svn-src-all@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 5B0824B0; Tue, 18 Jun 2013 13:34:38 +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 3233B1A02; Tue, 18 Jun 2013 13:34: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 r5IDYcbK065800; Tue, 18 Jun 2013 13:34:38 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IDYbqK065796; Tue, 18 Jun 2013 13:34:37 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306181334.r5IDYbqK065796@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 13:34:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251936 - in stable/9/sys: dev/bxe dev/esp dev/twa xen/xenstore X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 13:34:38 -0000 Author: mav Date: Tue Jun 18 13:34:37 2013 New Revision: 251936 URL: http://svnweb.freebsd.org/changeset/base/251936 Log: MFC r228526 (by kevlo): s/timout/timeout Modified: stable/9/sys/dev/bxe/bxe_reg.h stable/9/sys/dev/esp/ncr53c9x.c stable/9/sys/dev/twa/tw_osl.h stable/9/sys/xen/xenstore/xenstore.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/bxe/bxe_reg.h ============================================================================== --- stable/9/sys/dev/bxe/bxe_reg.h Tue Jun 18 12:18:55 2013 (r251935) +++ stable/9/sys/dev/bxe/bxe_reg.h Tue Jun 18 13:34:37 2013 (r251936) @@ -1594,7 +1594,7 @@ /* * [RW 1] Setting this bit enables a timer in the GRC block to timeout an * access that does not finish within - * ~misc_registers_grc_timout_val.grc_timeout_val cycles. When this bit is + * ~misc_registers_grc_timeout_val.grc_timeout_val cycles. When this bit is * cleared; this timeout is disabled. If this timeout occurs; the GRC shall * assert it attention output. */ Modified: stable/9/sys/dev/esp/ncr53c9x.c ============================================================================== --- stable/9/sys/dev/esp/ncr53c9x.c Tue Jun 18 12:18:55 2013 (r251935) +++ stable/9/sys/dev/esp/ncr53c9x.c Tue Jun 18 13:34:37 2013 (r251936) @@ -316,7 +316,7 @@ ncr53c9x_attach(struct ncr53c9x_softc *s * The recommended timeout is 250ms. This register is loaded * with a value calculated as follows, from the docs: * - * (timout period) x (CLK frequency) + * (timeout period) x (CLK frequency) * reg = ------------------------------------- * 8192 x (Clock Conversion Factor) * Modified: stable/9/sys/dev/twa/tw_osl.h ============================================================================== --- stable/9/sys/dev/twa/tw_osl.h Tue Jun 18 12:18:55 2013 (r251935) +++ stable/9/sys/dev/twa/tw_osl.h Tue Jun 18 13:34:37 2013 (r251936) @@ -148,7 +148,7 @@ struct twa_softc { struct mtx sim_lock_handle;/* sim lock shared with cam */ struct mtx *sim_lock;/* ptr to sim lock */ - struct callout watchdog_callout[2]; /* For command timout */ + struct callout watchdog_callout[2]; /* For command timeout */ TW_UINT32 watchdog_index; #ifdef TW_OSL_DEBUG Modified: stable/9/sys/xen/xenstore/xenstore.c ============================================================================== --- stable/9/sys/xen/xenstore/xenstore.c Tue Jun 18 12:18:55 2013 (r251935) +++ stable/9/sys/xen/xenstore/xenstore.c Tue Jun 18 13:34:37 2013 (r251936) @@ -559,7 +559,7 @@ xs_read_store(void *tdata, unsigned len) * when msleep returns. */ error = msleep(xen_store, &xs.ring_lock, PCATCH|PDROP, - "xbread", /*timout*/0); + "xbread", /*timeout*/0); if (error && error != EWOULDBLOCK) return (error); continue; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 13:36:15 2013 Return-Path: Delivered-To: svn-src-all@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 C8625636; Tue, 18 Jun 2013 13:36:15 +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 B9ACE1A13; Tue, 18 Jun 2013 13:36: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 r5IDaFON066113; Tue, 18 Jun 2013 13:36:15 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IDaF3L066112; Tue, 18 Jun 2013 13:36:15 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306181336.r5IDaF3L066112@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 13:36:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251937 - stable/9/sys/dev/twa X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 13:36:15 -0000 Author: mav Date: Tue Jun 18 13:36:15 2013 New Revision: 251937 URL: http://svnweb.freebsd.org/changeset/base/251937 Log: MFC r242827 (by rdivacky): Give tw_osl_dbg_printf format string to pacify clang warning. Modified: stable/9/sys/dev/twa/tw_cl_misc.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/twa/tw_cl_misc.c ============================================================================== --- stable/9/sys/dev/twa/tw_cl_misc.c Tue Jun 18 13:34:37 2013 (r251936) +++ stable/9/sys/dev/twa/tw_cl_misc.c Tue Jun 18 13:36:15 2013 (r251937) @@ -641,7 +641,7 @@ tw_cli_dbg_printf(TW_UINT8 dbg_level, va_end(ap); tw_osl_strcpy(print_str + tw_osl_strlen(print_str), "\n"); - tw_osl_dbg_printf(ctlr_handle, print_str); + tw_osl_dbg_printf(ctlr_handle, "%s", print_str); } #endif /* TW_OSL_DEBUG */ } From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 13:36:53 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D0DD97F8; Tue, 18 Jun 2013 13:36:53 +0000 (UTC) (envelope-from mcdouga9@egr.msu.edu) Received: from mail.egr.msu.edu (hill.egr.msu.edu [35.9.37.162]) by mx1.freebsd.org (Postfix) with ESMTP id AD07E1A23; Tue, 18 Jun 2013 13:36:53 +0000 (UTC) Received: from hill (localhost [127.0.0.1]) by mail.egr.msu.edu (Postfix) with ESMTP id 4B0A93EE6D; Tue, 18 Jun 2013 09:27:25 -0400 (EDT) X-Virus-Scanned: amavisd-new at egr.msu.edu Received: from mail.egr.msu.edu ([127.0.0.1]) by hill (hill.egr.msu.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id EX8NoRI8Je-G; Tue, 18 Jun 2013 09:27:25 -0400 (EDT) Received: from EGR authenticated sender Message-ID: <51C06038.5060604@egr.msu.edu> Date: Tue, 18 Jun 2013 09:27:20 -0400 From: Adam McDougall User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:17.0) Gecko/20130516 Thunderbird/17.0.6 MIME-Version: 1.0 To: "Justin T. Gibbs" Subject: Re: svn commit: r250913 - head/sys/dev/xen/netfront References: <201305221713.r4MHD3n7083573@svn.freebsd.org> In-Reply-To: <201305221713.r4MHD3n7083573@svn.freebsd.org> Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: svn-src-all@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 13:36:53 -0000 On 05/22/13 13:13, Justin T. Gibbs wrote: > Author: gibbs > Date: Wed May 22 17:13:03 2013 > New Revision: 250913 > URL: http://svnweb.freebsd.org/changeset/base/250913 > > Log: > Correct panic on detach of Xen PV network interfaces. > > dev/xen/netfront: > In netif_free(), properly stop the interface and drain any pending > timers prior to disconnecting from the backend device. > > Remove all media and detach our interface object from the system > prior to deleting it. > > PR: kern/176471 > Submitted by: Roger Pau Monne > Reviewed by: gibbs > MFC after: 1 week > > Modified: > head/sys/dev/xen/netfront/netfront.c > > Modified: head/sys/dev/xen/netfront/netfront.c > ============================================================================== > --- head/sys/dev/xen/netfront/netfront.c Wed May 22 16:33:28 2013 (r250912) > +++ head/sys/dev/xen/netfront/netfront.c Wed May 22 17:13:03 2013 (r250913) > @@ -2171,10 +2171,14 @@ netfront_detach(device_t dev) > static void > netif_free(struct netfront_info *info) > { > + XN_LOCK(info); > + xn_stop(info); > + XN_UNLOCK(info); > + callout_drain(&info->xn_stat_ch); > netif_disconnect_backend(info); > -#if 0 > - close_netdev(info); > -#endif > + ifmedia_removeall(&info->sc_media); > + ether_ifdetach(info->xn_ifp); > + if_free(info->xn_ifp); > } > > static void Can this be MFC'ed soon? Thinking ahead to my next build. Thanks. From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 13:38:11 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 1C366867; Tue, 18 Jun 2013 13:38:11 +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 E7FA71A34; Tue, 18 Jun 2013 13:38: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 r5IDcA17066426; Tue, 18 Jun 2013 13:38:10 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IDcAfc066424; Tue, 18 Jun 2013 13:38:10 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306181338.r5IDcAfc066424@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 13:38:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251938 - stable/9/sys/dev/twa X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 13:38:11 -0000 Author: mav Date: Tue Jun 18 13:38:10 2013 New Revision: 251938 URL: http://svnweb.freebsd.org/changeset/base/251938 Log: MFC r248583 (by kib): Fix twa(4) after the r246713. The driver copies data around to satisfy some alignment restrictions. Do not set TW_OSLI_REQ_FLAGS_CCB flag for mapped data, pass the csio->data_ptr in the req->data. Do not put the ccb pointer into req->data ever, ccb is stored in req->orig_req already. Submitted by: Shuichi KITAGUCHI PR: kern/177020 Modified: stable/9/sys/dev/twa/tw_osl_cam.c stable/9/sys/dev/twa/tw_osl_freebsd.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/twa/tw_osl_cam.c ============================================================================== --- stable/9/sys/dev/twa/tw_osl_cam.c Tue Jun 18 13:36:15 2013 (r251937) +++ stable/9/sys/dev/twa/tw_osl_cam.c Tue Jun 18 13:38:10 2013 (r251938) @@ -273,9 +273,13 @@ tw_osli_execute_scsi(struct tw_osli_req_ xpt_done(ccb); return(1); } - req->data = ccb; - req->length = csio->dxfer_len; - req->flags |= TW_OSLI_REQ_FLAGS_CCB; + if ((ccb_h->flags & CAM_DATA_MASK) == CAM_DATA_VADDR) { + if ((req->length = csio->dxfer_len) != 0) { + req->data = csio->data_ptr; + scsi_req->sgl_entries = 1; + } + } else + req->flags |= TW_OSLI_REQ_FLAGS_CCB; req->deadline = tw_osl_get_local_time() + (ccb_h->timeout / 1000); /* Modified: stable/9/sys/dev/twa/tw_osl_freebsd.c ============================================================================== --- stable/9/sys/dev/twa/tw_osl_freebsd.c Tue Jun 18 13:36:15 2013 (r251937) +++ stable/9/sys/dev/twa/tw_osl_freebsd.c Tue Jun 18 13:38:10 2013 (r251938) @@ -1475,7 +1475,7 @@ tw_osli_map_request(struct tw_osli_req_c mtx_unlock_spin(sc->io_lock); } else if (req->flags & TW_OSLI_REQ_FLAGS_CCB) { error = bus_dmamap_load_ccb(sc->dma_tag, req->dma_map, - req->data, twa_map_load_data_callback, req, + req->orig_req, twa_map_load_data_callback, req, BUS_DMA_WAITOK); } else { /* From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 14:20:14 2013 Return-Path: Delivered-To: svn-src-all@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 BF0C79F7; Tue, 18 Jun 2013 14:20:14 +0000 (UTC) (envelope-from marius@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 AF4141C6A; Tue, 18 Jun 2013 14:20: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 r5IEKESR080984; Tue, 18 Jun 2013 14:20:14 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IEKEfE080982; Tue, 18 Jun 2013 14:20:14 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201306181420.r5IEKEfE080982@svn.freebsd.org> From: Marius Strobl Date: Tue, 18 Jun 2013 14:20:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251939 - in stable/9/sys: kern sys X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 14:20:14 -0000 Author: marius Date: Tue Jun 18 14:20:14 2013 New Revision: 251939 URL: http://svnweb.freebsd.org/changeset/base/251939 Log: MFC: r248804 deferal -> deferral MFC: r248891 Pass correct parameter to CTR5() in bus_dmamap_load_uio. MFC: r248892 Do not add 1 to nsegs before passing to CTR5(), since nsegs has already been incremented before these calls. MFC: r248893 Add CTR5() to bus_dmamap_load_ccb, similar to other bus_dmamap_load_* functions. MFC: r248896 Add bus_dmamap_load_bio for non-CAM disk drivers that wish to enable unmapped I/O. MFC: r249025 Add support for XPT_CONT_TARGET_IO CCBs in _bus_dmamap_load_ccb(). Declare CCB types in their respective switch blocks. MFC: r249538 Some compilers issue a warning when wider integer is casted to narrow pointer. Supposedly shut down the warning by casting through uintptr_t. MFC: r251221 Move an assertion to the right spot; only bus_dmamap_load_mbuf(9) requires a pkthdr being present but that's not the case for either _bus_dmamap_load_mbuf_sg() or bus_dmamap_load_mbuf_sg(9). Modified: stable/9/sys/kern/subr_bus_dma.c stable/9/sys/sys/bus_dma.h Directory Properties: stable/9/sys/ (props changed) stable/9/sys/sys/ (props changed) Modified: stable/9/sys/kern/subr_bus_dma.c ============================================================================== --- stable/9/sys/kern/subr_bus_dma.c Tue Jun 18 13:38:10 2013 (r251938) +++ stable/9/sys/kern/subr_bus_dma.c Tue Jun 18 14:20:14 2013 (r251939) @@ -104,8 +104,6 @@ _bus_dmamap_load_mbuf_sg(bus_dma_tag_t d struct mbuf *m; int error; - M_ASSERTPKTHDR(m0); - error = 0; for (m = m0; m != NULL && error == 0; m = m->m_next) { if (m->m_len > 0) { @@ -158,8 +156,6 @@ static int _bus_dmamap_load_ccb(bus_dma_tag_t dmat, bus_dmamap_t map, union ccb *ccb, int *nsegs, int flags) { - struct ccb_ataio *ataio; - struct ccb_scsiio *csio; struct ccb_hdr *ccb_h; void *data_ptr; int error; @@ -169,18 +165,33 @@ _bus_dmamap_load_ccb(bus_dma_tag_t dmat, error = 0; ccb_h = &ccb->ccb_h; switch (ccb_h->func_code) { - case XPT_SCSI_IO: + case XPT_SCSI_IO: { + struct ccb_scsiio *csio; + csio = &ccb->csio; data_ptr = csio->data_ptr; dxfer_len = csio->dxfer_len; sglist_cnt = csio->sglist_cnt; break; - case XPT_ATA_IO: + } + case XPT_CONT_TARGET_IO: { + struct ccb_scsiio *ctio; + + ctio = &ccb->ctio; + data_ptr = ctio->data_ptr; + dxfer_len = ctio->dxfer_len; + sglist_cnt = ctio->sglist_cnt; + break; + } + case XPT_ATA_IO: { + struct ccb_ataio *ataio; + ataio = &ccb->ataio; data_ptr = ataio->data_ptr; dxfer_len = ataio->dxfer_len; sglist_cnt = 0; break; + } default: panic("_bus_dmamap_load_ccb: Unsupported func code %d", ccb_h->func_code); @@ -282,7 +293,7 @@ bus_dmamap_load(bus_dma_tag_t dmat, bus_ nsegs++; CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", - __func__, dmat, flags, error, nsegs + 1); + __func__, dmat, flags, error, nsegs); if (error == EINPROGRESS) return (error); @@ -295,7 +306,7 @@ bus_dmamap_load(bus_dma_tag_t dmat, bus_ /* * Return ENOMEM to the caller so that it can pass it up the stack. - * This error only happens when NOWAIT is set, so deferal is disabled. + * This error only happens when NOWAIT is set, so deferral is disabled. */ if (error == ENOMEM) return (error); @@ -310,6 +321,8 @@ bus_dmamap_load_mbuf(bus_dma_tag_t dmat, bus_dma_segment_t *segs; int nsegs, error; + M_ASSERTPKTHDR(m0); + flags |= BUS_DMA_NOWAIT; nsegs = -1; error = _bus_dmamap_load_mbuf_sg(dmat, map, m0, NULL, &nsegs, flags); @@ -359,7 +372,7 @@ bus_dmamap_load_uio(bus_dma_tag_t dmat, (*callback)(callback_arg, segs, nsegs, uio->uio_resid, error); CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", - __func__, dmat, dmat, error, nsegs + 1); + __func__, dmat, flags, error, nsegs); return (error); } @@ -386,6 +399,10 @@ bus_dmamap_load_ccb(bus_dma_tag_t dmat, nsegs = -1; error = _bus_dmamap_load_ccb(dmat, map, ccb, &nsegs, flags); nsegs++; + + CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", + __func__, dmat, flags, error, nsegs); + if (error == EINPROGRESS) return (error); @@ -396,7 +413,46 @@ bus_dmamap_load_ccb(bus_dma_tag_t dmat, (*callback)(callback_arg, segs, nsegs, error); /* * Return ENOMEM to the caller so that it can pass it up the stack. - * This error only happens when NOWAIT is set, so deferal is disabled. + * This error only happens when NOWAIT is set, so deferral is disabled. + */ + if (error == ENOMEM) + return (error); + + return (0); +} + +int +bus_dmamap_load_bio(bus_dma_tag_t dmat, bus_dmamap_t map, struct bio *bio, + bus_dmamap_callback_t *callback, void *callback_arg, + int flags) +{ + bus_dma_segment_t *segs; + struct memdesc mem; + int error; + int nsegs; + + if ((flags & BUS_DMA_NOWAIT) == 0) { + mem = memdesc_bio(bio); + _bus_dmamap_waitok(dmat, map, &mem, callback, callback_arg); + } + nsegs = -1; + error = _bus_dmamap_load_bio(dmat, map, bio, &nsegs, flags); + nsegs++; + + CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", + __func__, dmat, flags, error, nsegs); + + if (error == EINPROGRESS) + return (error); + + segs = _bus_dmamap_complete(dmat, map, NULL, nsegs, error); + if (error) + (*callback)(callback_arg, segs, 0, error); + else + (*callback)(callback_arg, segs, nsegs, error); + /* + * Return ENOMEM to the caller so that it can pass it up the stack. + * This error only happens when NOWAIT is set, so deferral is disabled. */ if (error == ENOMEM) return (error); @@ -455,7 +511,7 @@ bus_dmamap_load_mem(bus_dma_tag_t dmat, nsegs++; CTR5(KTR_BUSDMA, "%s: tag %p tag flags 0x%x error %d nsegs %d", - __func__, dmat, flags, error, nsegs + 1); + __func__, dmat, flags, error, nsegs); if (error == EINPROGRESS) return (error); @@ -468,7 +524,7 @@ bus_dmamap_load_mem(bus_dma_tag_t dmat, /* * Return ENOMEM to the caller so that it can pass it up the stack. - * This error only happens when NOWAIT is set, so deferal is disabled. + * This error only happens when NOWAIT is set, so deferral is disabled. */ if (error == ENOMEM) return (error); Modified: stable/9/sys/sys/bus_dma.h ============================================================================== --- stable/9/sys/sys/bus_dma.h Tue Jun 18 13:38:10 2013 (r251938) +++ stable/9/sys/sys/bus_dma.h Tue Jun 18 14:20:14 2013 (r251939) @@ -233,6 +233,13 @@ int bus_dmamap_load_ccb(bus_dma_tag_t dm int flags); /* + * Like bus_dmamap_load but for bios. + */ +int bus_dmamap_load_bio(bus_dma_tag_t dmat, bus_dmamap_t map, struct bio *bio, + bus_dmamap_callback_t *callback, void *callback_arg, + int flags); + +/* * Loads any memory descriptor. */ int bus_dmamap_load_mem(bus_dma_tag_t dmat, bus_dmamap_t map, From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 14:35:10 2013 Return-Path: Delivered-To: svn-src-all@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 32211382; Tue, 18 Jun 2013 14:35:10 +0000 (UTC) (envelope-from marius@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 082901D9F; Tue, 18 Jun 2013 14:35: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 r5IEZ97A086487; Tue, 18 Jun 2013 14:35:09 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IEZ9Ic086481; Tue, 18 Jun 2013 14:35:09 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201306181435.r5IEZ9Ic086481@svn.freebsd.org> From: Marius Strobl Date: Tue, 18 Jun 2013 14:35:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251940 - stable/9/sys/dev/ata X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 14:35:10 -0000 Author: marius Date: Tue Jun 18 14:35:09 2013 New Revision: 251940 URL: http://svnweb.freebsd.org/changeset/base/251940 Log: MFC: r247165 Fix command timeout caused by data underrun during fetching ATAPI sense data, introduced by r246713 (MFC'ed to stable/9 in r251874). There are two places where ata_request is filled in ATA_CAM: ata_cam_begin_transaction() and ata_cam_request_sense(). In the first case DMA should be done for addresses from the CCB. In second case, DMA should be done to the different address, the address of the sense buffer inside the CCB structure itself. Modified: stable/9/sys/dev/ata/ata-all.c stable/9/sys/dev/ata/ata-all.h stable/9/sys/dev/ata/ata-dma.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/ata/ata-all.c ============================================================================== --- stable/9/sys/dev/ata/ata-all.c Tue Jun 18 14:20:14 2013 (r251939) +++ stable/9/sys/dev/ata/ata-all.c Tue Jun 18 14:35:09 2013 (r251940) @@ -1695,6 +1695,7 @@ ata_cam_begin_transaction(device_t dev, request->timeout = (ccb->ccb_h.timeout + 999) / 1000; callout_init_mtx(&request->callout, &ch->state_mtx, CALLOUT_RETURNUNLOCKED); request->ccb = ccb; + request->flags |= ATA_R_DATA_IN_CCB; ch->running = request; ch->state = ATA_ACTIVE; Modified: stable/9/sys/dev/ata/ata-all.h ============================================================================== --- stable/9/sys/dev/ata/ata-all.h Tue Jun 18 14:20:14 2013 (r251939) +++ stable/9/sys/dev/ata/ata-all.h Tue Jun 18 14:35:09 2013 (r251940) @@ -398,6 +398,7 @@ struct ata_request { #define ATA_R_THREAD 0x00000800 #define ATA_R_DIRECT 0x00001000 #define ATA_R_NEEDRESULT 0x00002000 +#define ATA_R_DATA_IN_CCB 0x00004000 #define ATA_R_ATAPI16 0x00010000 #define ATA_R_ATAPI_INTR 0x00020000 Modified: stable/9/sys/dev/ata/ata-dma.c ============================================================================== --- stable/9/sys/dev/ata/ata-dma.c Tue Jun 18 14:20:14 2013 (r251939) +++ stable/9/sys/dev/ata/ata-dma.c Tue Jun 18 14:35:09 2013 (r251940) @@ -305,7 +305,7 @@ ata_dmaload(struct ata_request *request, dspa.dmatab = request->dma->sg; #ifdef ATA_CAM - if (request->ccb) + if (request->flags & ATA_R_DATA_IN_CCB) error = bus_dmamap_load_ccb(request->dma->data_tag, request->dma->data_map, request->ccb, ch->dma.setprd, &dspa, BUS_DMA_NOWAIT); From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 14:40:22 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id EE545572; Tue, 18 Jun 2013 14:40:22 +0000 (UTC) (envelope-from marius@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 CFF5D1DDF; Tue, 18 Jun 2013 14:40: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 r5IEeMDH088701; Tue, 18 Jun 2013 14:40:22 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IEeME8088696; Tue, 18 Jun 2013 14:40:22 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201306181440.r5IEeME8088696@svn.freebsd.org> From: Marius Strobl Date: Tue, 18 Jun 2013 14:40:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251941 - stable/9/sys/dev/aac X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 14:40:23 -0000 Author: marius Date: Tue Jun 18 14:40:21 2013 New Revision: 251941 URL: http://svnweb.freebsd.org/changeset/base/251941 Log: MFC: r251116 Allow unmapped I/O via aacd(4). It shouldn't be too hard to add the same support for aacp(4), I'm lacking the necessary hardware for testing, though. Modified: stable/9/sys/dev/aac/aac.c stable/9/sys/dev/aac/aac_disk.c stable/9/sys/dev/aac/aacvar.h Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/aac/aac.c ============================================================================== --- stable/9/sys/dev/aac/aac.c Tue Jun 18 14:35:09 2013 (r251940) +++ stable/9/sys/dev/aac/aac.c Tue Jun 18 14:40:21 2013 (r251941) @@ -987,14 +987,18 @@ aac_startio(struct aac_softc *sc) * busdma. */ if (cm->cm_datalen != 0) { - error = bus_dmamap_load(sc->aac_buffer_dmat, - cm->cm_datamap, cm->cm_data, - cm->cm_datalen, - aac_map_command_sg, cm, 0); + if (cm->cm_flags & AAC_REQ_BIO) + error = bus_dmamap_load_bio( + sc->aac_buffer_dmat, cm->cm_datamap, + (struct bio *)cm->cm_private, + aac_map_command_sg, cm, 0); + else + error = bus_dmamap_load(sc->aac_buffer_dmat, + cm->cm_datamap, cm->cm_data, + cm->cm_datalen, aac_map_command_sg, cm, 0); if (error == EINPROGRESS) { fwprintf(sc, HBA_FLAGS_DBG_COMM_B, "freezing queue\n"); sc->flags |= AAC_QUEUE_FRZN; - error = 0; } else if (error != 0) panic("aac_startio: unexpected error %d from " "busdma", error); @@ -1199,9 +1203,9 @@ aac_bio_command(struct aac_softc *sc, st goto fail; /* fill out the command */ - cm->cm_data = (void *)bp->bio_data; cm->cm_datalen = bp->bio_bcount; cm->cm_complete = aac_bio_complete; + cm->cm_flags = AAC_REQ_BIO; cm->cm_private = bp; cm->cm_timestamp = time_uptime; Modified: stable/9/sys/dev/aac/aac_disk.c ============================================================================== --- stable/9/sys/dev/aac/aac_disk.c Tue Jun 18 14:35:09 2013 (r251940) +++ stable/9/sys/dev/aac/aac_disk.c Tue Jun 18 14:40:21 2013 (r251941) @@ -397,6 +397,7 @@ aac_disk_attach(device_t dev) sc->unit = device_get_unit(dev); sc->ad_disk = disk_alloc(); sc->ad_disk->d_drv1 = sc; + sc->ad_disk->d_flags = DISKFLAG_UNMAPPED_BIO; sc->ad_disk->d_name = "aacd"; sc->ad_disk->d_maxsize = sc->ad_controller->aac_max_sectors << 9; sc->ad_disk->d_open = aac_disk_open; Modified: stable/9/sys/dev/aac/aacvar.h ============================================================================== --- stable/9/sys/dev/aac/aacvar.h Tue Jun 18 14:35:09 2013 (r251940) +++ stable/9/sys/dev/aac/aacvar.h Tue Jun 18 14:40:21 2013 (r251941) @@ -181,6 +181,8 @@ struct aac_command #define AAC_ON_AACQ_MASK ((1<<5)|(1<<6)|(1<<7)|(1<<8)|(1<<10)) #define AAC_QUEUE_FRZN (1<<9) /* Freeze the processing of * commands on the queue. */ +#define AAC_REQ_BIO (1 << 11) +#define AAC_REQ_CCB (1 << 12) void (*cm_complete)(struct aac_command *cm); void *cm_private; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 14:46:43 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 24DB289D; Tue, 18 Jun 2013 14:46:43 +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 F09941E3C; Tue, 18 Jun 2013 14:46: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 r5IEkgD3089961; Tue, 18 Jun 2013 14:46:42 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IEkg9Q089958; Tue, 18 Jun 2013 14:46:42 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306181446.r5IEkg9Q089958@svn.freebsd.org> From: Scott Long Date: Tue, 18 Jun 2013 14:46:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251942 - in stable/9/sys: geom kern sys X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 14:46:43 -0000 Author: scottl Date: Tue Jun 18 14:46:42 2013 New Revision: 251942 URL: http://svnweb.freebsd.org/changeset/base/251942 Log: MFC r248712: Do not pass unmapped buffers to drivers that cannot handle them Submitted by: kan, mav Obtained from: Netflix Modified: stable/9/sys/geom/geom_dev.c stable/9/sys/kern/kern_physio.c stable/9/sys/sys/conf.h Directory Properties: stable/9/sys/ (props changed) stable/9/sys/sys/ (props changed) Modified: stable/9/sys/geom/geom_dev.c ============================================================================== --- stable/9/sys/geom/geom_dev.c Tue Jun 18 14:40:21 2013 (r251941) +++ stable/9/sys/geom/geom_dev.c Tue Jun 18 14:46:42 2013 (r251942) @@ -79,7 +79,7 @@ static struct cdevsw g_dev_cdevsw = { .d_ioctl = g_dev_ioctl, .d_strategy = g_dev_strategy, .d_name = "g_dev", - .d_flags = D_DISK | D_TRACKCLOSE, + .d_flags = D_DISK | D_TRACKCLOSE | D_UNMAPPED_IO, }; static g_taste_t g_dev_taste; Modified: stable/9/sys/kern/kern_physio.c ============================================================================== --- stable/9/sys/kern/kern_physio.c Tue Jun 18 14:40:21 2013 (r251941) +++ stable/9/sys/kern/kern_physio.c Tue Jun 18 14:46:42 2013 (r251942) @@ -92,11 +92,19 @@ physio(struct cdev *dev, struct uio *uio bp->b_blkno = btodb(bp->b_offset); csw = dev->si_devsw; if (uio->uio_segflg == UIO_USERSPACE) { - if (vmapbuf(bp, 0) < 0) { + int mapped; + + if (csw != NULL && + (csw->d_flags & D_UNMAPPED_IO) != 0) + mapped = 0; + else + mapped = 1; + if (vmapbuf(bp, mapped) < 0) { error = EFAULT; goto doerror; } } + dev_strategy_csw(dev, csw, bp); if (uio->uio_rw == UIO_READ) bwait(bp, PRIBIO, "physrd"); Modified: stable/9/sys/sys/conf.h ============================================================================== --- stable/9/sys/sys/conf.h Tue Jun 18 14:40:21 2013 (r251941) +++ stable/9/sys/sys/conf.h Tue Jun 18 14:46:42 2013 (r251942) @@ -171,6 +171,7 @@ typedef int dumper_t( #define D_PSEUDO 0x00200000 /* make_dev() can return NULL */ #define D_NEEDGIANT 0x00400000 /* driver want Giant */ #define D_NEEDMINOR 0x00800000 /* driver uses clone_create() */ +#define D_UNMAPPED_IO 0x01000000 /* d_strategy can accept unmapped IO */ /* * Version numbers. From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 14:57:35 2013 Return-Path: Delivered-To: svn-src-all@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 7490CEBD; Tue, 18 Jun 2013 14:57:35 +0000 (UTC) (envelope-from maxim.konovalov@gmail.com) Received: from mp2.macomnet.net (ipv6.irc.int.ru [IPv6:2a02:28:1:2::1b:2]) by mx1.freebsd.org (Postfix) with ESMTP id 6946A1EF1; Tue, 18 Jun 2013 14:57:16 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mp2.macomnet.net (8.14.5/8.14.5) with ESMTP id r5IEvCOP048723; Tue, 18 Jun 2013 18:57:12 +0400 (MSK) (envelope-from maxim.konovalov@gmail.com) Date: Tue, 18 Jun 2013 18:57:12 +0400 (MSK) From: Maxim Konovalov To: Brooks Davis Subject: Re: svn: stable/9: . usr.bin/xinstall In-Reply-To: <20130603164807.GA77693@lor.one-eyed-alien.net> Message-ID: References: <201303151519.r2FFJYjS060493@svn.freebsd.org> <51AA52FD.9090303@FreeBSD.org> <20130603164807.GA77693@lor.one-eyed-alien.net> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Cc: Maxim Sobolev , svn-src-all@FreeBSD.ORG, src-committers@FreeBSD.ORG, svn-src-stable-9@FreeBSD.ORG, svn-src-stable@FreeBSD.ORG X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 14:57:35 -0000 Hi Brooks, On Mon, 3 Jun 2013, 11:48-0500, Brooks Davis wrote: > On Sat, Jun 01, 2013 at 01:01:01PM -0700, Maxim Sobolev wrote: > > Hmm, I believe this breaks build for me. Any ideas why? > > Presumably you are building in some less common way since this change > has been working for months. What command line resulted in this error? > Is this tree fully up to date? Do you have anything in src.conf or > make.conf? From the error, it looks like you haven't bootstrapped a new > libc properly. > I see the same failure trying to make buildworld with fresh stable/9 checkout on 1yo 9.0-STABLE. No src.conf and pretty much contentless make.conf. > -- Brooks > > > ===> usr.bin/xinstall (all) > > cc -O2 -pipe -I/usr/src/usr.bin/xinstall/../../contrib/mtree > > -I/usr/src/usr.bin/xinstall/../../lib/libnetbsd > > -I/usr/src/usr.bin/xinstall/../../lib/libmd -std=gnu99 -fstack-protector > > -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter > > -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Wreturn-type > > -Wcast-qual -Wwrite-strings -Wswitch -Wshadow -Wunused-parameter > > -Wcast-align -Wchar-subscripts -Winline -Wnested-externs > > -Wredundant-decls -Wold-style-definition -Wno-pointer-sign -c > > /usr/src/usr.bin/xinstall/xinstall.c > > cc1: warnings being treated as errors > > /usr/src/usr.bin/xinstall/xinstall.c: In function 'metadata_log': > > /usr/src/usr.bin/xinstall/xinstall.c:1331: warning: implicit declaration > > of function 'strsvis' > > /usr/src/usr.bin/xinstall/xinstall.c:1331: warning: nested extern > > declaration of 'strsvis' > > *** [xinstall.o] Error code 1 > > > > Stop in /usr/src/usr.bin/xinstall. > > *** [all] Error code 1 > > [...] -- Maxim Konovalov From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 15:00:20 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id CE80DDE; Tue, 18 Jun 2013 15:00:20 +0000 (UTC) (envelope-from marius@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 C03E61F15; Tue, 18 Jun 2013 15:00: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 r5IF0Kqd093660; Tue, 18 Jun 2013 15:00:20 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IF0Ke9093658; Tue, 18 Jun 2013 15:00:20 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201306181500.r5IF0Ke9093658@svn.freebsd.org> From: Marius Strobl Date: Tue, 18 Jun 2013 15:00:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251943 - stable/9/sys/dev/isp X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 15:00:20 -0000 Author: marius Date: Tue Jun 18 15:00:20 2013 New Revision: 251943 URL: http://svnweb.freebsd.org/changeset/base/251943 Log: MFC: r251373 Flag isp(4) as supporting unmapped I/O; all necessary conversion actually already has been done as part of r246713 (MFC'ed to stable/9 in r251874). Modified: stable/9/sys/dev/isp/isp_freebsd.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) stable/9/sys/dev/isp/ (props changed) Modified: stable/9/sys/dev/isp/isp_freebsd.c ============================================================================== --- stable/9/sys/dev/isp/isp_freebsd.c Tue Jun 18 14:46:42 2013 (r251942) +++ stable/9/sys/dev/isp/isp_freebsd.c Tue Jun 18 15:00:20 2013 (r251943) @@ -5450,7 +5450,7 @@ isp_action(struct cam_sim *sim, union cc if (IS_FC(isp)) { fcparam *fcp = FCPARAM(isp, bus); - cpi->hba_misc = PIM_NOBUSRESET; + cpi->hba_misc = PIM_NOBUSRESET | PIM_UNMAPPED; /* * Because our loop ID can shift from time to time, @@ -5480,7 +5480,7 @@ isp_action(struct cam_sim *sim, union cc } else { sdparam *sdp = SDPARAM(isp, bus); cpi->hba_inquiry = PI_SDTR_ABLE|PI_TAG_ABLE|PI_WIDE_16; - cpi->hba_misc = 0; + cpi->hba_misc = PIM_UNMAPPED; cpi->initiator_id = sdp->isp_initiator_id; cpi->base_transfer_speed = 3300; cpi->transport = XPORT_SPI; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 15:02:53 2013 Return-Path: Delivered-To: svn-src-all@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 B434E27A; Tue, 18 Jun 2013 15:02:53 +0000 (UTC) (envelope-from marius@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 A4E4F1F30; Tue, 18 Jun 2013 15:02:53 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5IF2rYD095757; Tue, 18 Jun 2013 15:02:53 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IF2rb5095756; Tue, 18 Jun 2013 15:02:53 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201306181502.r5IF2rb5095756@svn.freebsd.org> From: Marius Strobl Date: Tue, 18 Jun 2013 15:02:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251944 - stable/9/sys/dev/aac X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 15:02:53 -0000 Author: marius Date: Tue Jun 18 15:02:53 2013 New Revision: 251944 URL: http://svnweb.freebsd.org/changeset/base/251944 Log: MFC: r242823 Give panic format string to pacify clang warning. Modified: stable/9/sys/dev/aac/aac_debug.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/aac/aac_debug.c ============================================================================== --- stable/9/sys/dev/aac/aac_debug.c Tue Jun 18 15:00:20 2013 (r251943) +++ stable/9/sys/dev/aac/aac_debug.c Tue Jun 18 15:02:53 2013 (r251944) @@ -160,7 +160,7 @@ void aac_panic(struct aac_softc *sc, char *reason) { aac_print_queues(sc); - panic(reason); + panic("%s", reason); } /* From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 15:04:17 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 15:06:03 2013 Return-Path: Delivered-To: svn-src-all@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 3EC7059A; Tue, 18 Jun 2013 15:06:03 +0000 (UTC) (envelope-from marius@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 2F0521F5B; Tue, 18 Jun 2013 15:06: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 r5IF63rP096660; Tue, 18 Jun 2013 15:06:03 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IF6349096659; Tue, 18 Jun 2013 15:06:03 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201306181506.r5IF6349096659@svn.freebsd.org> From: Marius Strobl Date: Tue, 18 Jun 2013 15:06:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251946 - stable/9/sys/dev/isp X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 15:06:03 -0000 Author: marius Date: Tue Jun 18 15:06:02 2013 New Revision: 251946 URL: http://svnweb.freebsd.org/changeset/base/251946 Log: MFC: r247264 Turn off fast posting for the ISP2100- I'd forgotten that it actually might have been enabled for them- now that we use all 32 bits of handle. Fast Posting doesn't pass the full 32 bits. Modified: stable/9/sys/dev/isp/isp.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) stable/9/sys/dev/isp/ (props changed) Modified: stable/9/sys/dev/isp/isp.c ============================================================================== --- stable/9/sys/dev/isp/isp.c Tue Jun 18 15:04:17 2013 (r251945) +++ stable/9/sys/dev/isp/isp.c Tue Jun 18 15:06:02 2013 (r251946) @@ -1709,7 +1709,13 @@ isp_fibre_init(ispsoftc_t *isp) * * NB: for the 2300, ICBOPT_EXTENDED is required. */ - if (IS_2200(isp) || IS_23XX(isp)) { + if (IS_2100(isp)) { + /* + * We can't have Fast Posting any more- we now + * have 32 bit handles. + */ + icbp->icb_fwoptions &= ~ICBOPT_FAST_POST; + } else if (IS_2200(isp) || IS_23XX(isp)) { icbp->icb_fwoptions |= ICBOPT_EXTENDED; icbp->icb_xfwoptions = fcp->isp_xfwoptions; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 15:14:20 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id E4740A0E; Tue, 18 Jun 2013 15:14:20 +0000 (UTC) (envelope-from marius@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 D661D2000; Tue, 18 Jun 2013 15:14: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 r5IFEKiU000153; Tue, 18 Jun 2013 15:14:20 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IFEKnS000152; Tue, 18 Jun 2013 15:14:20 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201306181514.r5IFEKnS000152@svn.freebsd.org> From: Marius Strobl Date: Tue, 18 Jun 2013 15:14:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251947 - stable/9/sys/dev/sym X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 15:14:21 -0000 Author: marius Date: Tue Jun 18 15:14:20 2013 New Revision: 251947 URL: http://svnweb.freebsd.org/changeset/base/251947 Log: MFC: r251403 (partial) Flag sym(4) as supporting unmapped I/O; all necessary conversion actually already has been done as part of r246713 (MFC'ed to stable/9 in r251874). Modified: stable/9/sys/dev/sym/sym_hipd.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/sym/sym_hipd.c ============================================================================== --- stable/9/sys/dev/sym/sym_hipd.c Tue Jun 18 15:06:02 2013 (r251946) +++ stable/9/sys/dev/sym/sym_hipd.c Tue Jun 18 15:14:20 2013 (r251947) @@ -7869,7 +7869,6 @@ sym_setup_data_and_start(hcb_p np, struc xpt_freeze_simq(np->sim, 1); csio->ccb_h.status |= CAM_RELEASE_SIMQ; } - return; } /* @@ -8055,7 +8054,7 @@ static void sym_action2(struct cam_sim * if ((np->features & FE_WIDE) != 0) cpi->hba_inquiry |= PI_WIDE_16; cpi->target_sprt = 0; - cpi->hba_misc = 0; + cpi->hba_misc = PIM_UNMAPPED; if (np->usrflags & SYM_SCAN_TARGETS_HILO) cpi->hba_misc |= PIM_SCANHILO; if (np->usrflags & SYM_AVOID_BUS_RESET) From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 15:17:29 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 8F14A75; Tue, 18 Jun 2013 15:17:29 +0000 (UTC) (envelope-from marius@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 80D441088; Tue, 18 Jun 2013 15:17: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 r5IFHTQx000915; Tue, 18 Jun 2013 15:17:29 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IFHTcJ000914; Tue, 18 Jun 2013 15:17:29 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201306181517.r5IFHTcJ000914@svn.freebsd.org> From: Marius Strobl Date: Tue, 18 Jun 2013 15:17:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251949 - stable/9/sys/dev/sym X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 15:17:29 -0000 Author: marius Date: Tue Jun 18 15:17:29 2013 New Revision: 251949 URL: http://svnweb.freebsd.org/changeset/base/251949 Log: MFC: r245263 Clang complains about the comparision of fak < 0 always being false. It is right. Delete it because on the next line we catch all 'negative' cases with the test > 2, since 'negative' numbers are just really big unsigned numbers and we do an identical action. Modified: stable/9/sys/dev/sym/sym_hipd.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/sym/sym_hipd.c ============================================================================== --- stable/9/sys/dev/sym/sym_hipd.c Tue Jun 18 15:15:53 2013 (r251948) +++ stable/9/sys/dev/sym/sym_hipd.c Tue Jun 18 15:17:29 2013 (r251949) @@ -3430,7 +3430,6 @@ sym_getsync(hcb_p np, u_char dt, u_char /* * Check against our hardware limits, or bugs :). */ - if (fak < 0) {fak = 0; ret = -1;} if (fak > 2) {fak = 2; ret = -1;} /* From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 15:31:44 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 652F768D; Tue, 18 Jun 2013 15:31:44 +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 571631123; Tue, 18 Jun 2013 15:31: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 r5IFViiq006334; Tue, 18 Jun 2013 15:31:44 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IFVikH006333; Tue, 18 Jun 2013 15:31:44 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201306181531.r5IFVikH006333@svn.freebsd.org> From: Alexander Motin Date: Tue, 18 Jun 2013 15:31:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251951 - stable/9/sys/kern X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 15:31:44 -0000 Author: mav Date: Tue Jun 18 15:31:43 2013 New Revision: 251951 URL: http://svnweb.freebsd.org/changeset/base/251951 Log: Remove diff from head after manual r251942 merge. Reviewed by: scottl Modified: stable/9/sys/kern/kern_physio.c Modified: stable/9/sys/kern/kern_physio.c ============================================================================== --- stable/9/sys/kern/kern_physio.c Tue Jun 18 15:22:16 2013 (r251950) +++ stable/9/sys/kern/kern_physio.c Tue Jun 18 15:31:43 2013 (r251951) @@ -38,7 +38,7 @@ physio(struct cdev *dev, struct uio *uio struct cdevsw *csw; caddr_t sa; u_int iolen; - int error, i; + int error, i, mapped; /* Keep the process UPAGES from being swapped. XXX: why ? */ PHOLD(curproc); @@ -90,10 +90,9 @@ physio(struct cdev *dev, struct uio *uio bp->b_bufsize = bp->b_bcount; bp->b_blkno = btodb(bp->b_offset); + csw = dev->si_devsw; if (uio->uio_segflg == UIO_USERSPACE) { - int mapped; - if (csw != NULL && (csw->d_flags & D_UNMAPPED_IO) != 0) mapped = 0; From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 15:49:31 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 16:05:34 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 16:33:04 2013 Return-Path: Delivered-To: svn-src-all@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 CC1B7F7A; Tue, 18 Jun 2013 16:33:04 +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 AE74D1685; Tue, 18 Jun 2013 16:33: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 r5IGX4aj026096; Tue, 18 Jun 2013 16:33:04 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IGX3kj026090; Tue, 18 Jun 2013 16:33:03 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306181633.r5IGX3kj026090@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 16:33:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r251954 - in vendor/subversion/dist/subversion: include libsvn_fs_fs libsvn_subr libsvn_wc X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 16:33:04 -0000 Author: peter Date: Tue Jun 18 16:33:03 2013 New Revision: 251954 URL: http://svnweb.freebsd.org/changeset/base/251954 Log: Import svn-1.8.0 final Modified: vendor/subversion/dist/subversion/include/svn_version.h vendor/subversion/dist/subversion/libsvn_fs_fs/rep-cache-db.h vendor/subversion/dist/subversion/libsvn_subr/internal_statements.h vendor/subversion/dist/subversion/libsvn_wc/wc-checks.h vendor/subversion/dist/subversion/libsvn_wc/wc-metadata.h vendor/subversion/dist/subversion/libsvn_wc/wc-queries.h Modified: vendor/subversion/dist/subversion/include/svn_version.h ============================================================================== --- vendor/subversion/dist/subversion/include/svn_version.h Tue Jun 18 16:05:33 2013 (r251953) +++ vendor/subversion/dist/subversion/include/svn_version.h Tue Jun 18 16:33:03 2013 (r251954) @@ -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: vendor/subversion/dist/subversion/libsvn_fs_fs/rep-cache-db.h ============================================================================== --- vendor/subversion/dist/subversion/libsvn_fs_fs/rep-cache-db.h Tue Jun 18 16:05:33 2013 (r251953) +++ vendor/subversion/dist/subversion/libsvn_fs_fs/rep-cache-db.h Tue Jun 18 16:33:03 2013 (r251954) @@ -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: vendor/subversion/dist/subversion/libsvn_subr/internal_statements.h ============================================================================== --- vendor/subversion/dist/subversion/libsvn_subr/internal_statements.h Tue Jun 18 16:05:33 2013 (r251953) +++ vendor/subversion/dist/subversion/libsvn_subr/internal_statements.h Tue Jun 18 16:33:03 2013 (r251954) @@ -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: vendor/subversion/dist/subversion/libsvn_wc/wc-checks.h ============================================================================== --- vendor/subversion/dist/subversion/libsvn_wc/wc-checks.h Tue Jun 18 16:05:33 2013 (r251953) +++ vendor/subversion/dist/subversion/libsvn_wc/wc-checks.h Tue Jun 18 16:33:03 2013 (r251954) @@ -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: vendor/subversion/dist/subversion/libsvn_wc/wc-metadata.h ============================================================================== --- vendor/subversion/dist/subversion/libsvn_wc/wc-metadata.h Tue Jun 18 16:05:33 2013 (r251953) +++ vendor/subversion/dist/subversion/libsvn_wc/wc-metadata.h Tue Jun 18 16:33:03 2013 (r251954) @@ -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: vendor/subversion/dist/subversion/libsvn_wc/wc-queries.h ============================================================================== --- vendor/subversion/dist/subversion/libsvn_wc/wc-queries.h Tue Jun 18 16:05:33 2013 (r251953) +++ vendor/subversion/dist/subversion/libsvn_wc/wc-queries.h Tue Jun 18 16:33:03 2013 (r251954) @@ -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-all@FreeBSD.ORG Tue Jun 18 16:34:23 2013 Return-Path: Delivered-To: svn-src-all@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 6373A195; Tue, 18 Jun 2013 16:34: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 3C4591699; Tue, 18 Jun 2013 16: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 r5IGYNx5026307; Tue, 18 Jun 2013 16:34:23 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IGYN8B026306; Tue, 18 Jun 2013 16:34:23 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306181634.r5IGYN8B026306@svn.freebsd.org> From: Peter Wemm Date: Tue, 18 Jun 2013 16:34:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r251955 - vendor/subversion/subversion-1.8.0 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 16:34:23 -0000 Author: peter Date: Tue Jun 18 16:34:22 2013 New Revision: 251955 URL: http://svnweb.freebsd.org/changeset/base/251955 Log: Tag 1.8.0 Added: vendor/subversion/subversion-1.8.0/ - copied from r251954, vendor/subversion/dist/ From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 16:36:23 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 16:40:39 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 16:48:37 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id F04D2ABF 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 4C8391770 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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 16:49:34 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 16:51:06 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 16:54:39 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 17:04:58 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 17:21:21 2013 Return-Path: Delivered-To: svn-src-all@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 E3209876 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 57F3B191A 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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 17:21:22 -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-all@FreeBSD.ORG Tue Jun 18 17:36:51 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id E39E6D81 for ; Tue, 18 Jun 2013 17:36:51 +0000 (UTC) (envelope-from peter@wemm.org) 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 9E84719AC for ; Tue, 18 Jun 2013 17:36:51 +0000 (UTC) Received: by mail-ve0-f169.google.com with SMTP id m1so3389264ves.28 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=oUftjtIyk2DiNRMQy+Nl0L2zz2XQRK90Tia15SAPlSegrERVcVrzLLM0Kr/uhQeLOg xRPaSoYZ/CeHm053UQifTqhuCBUz2hyF024ZWnR0ImwbWJh1tiVqChPSETThsLSbN7L2 py2ctSFt6a4F9kgVkJx1eBReS5b1cbr8O2K7ker7UNqTxvZziLjw1+BDC81vuOP51tQX HqC6Fa1Fy87AQNZ440O6JjoTZ2/SenvzwceWGtrcPobNQ/2zlPmeBEZNWNXyqFpBkKGV 4RtB+ftSb4VWcSRJa35KixDUweEBFeAmk1qKI3+AocPTM8Wp0MZqajJF8BRuwdHKAqF8 oVMw== 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: ALoCoQnDBhuofKTZ93eB1wBcBRdMEr/SiZdB0swA9mbkHMl3tcYL2jKmnR1KToSoxEG7eh6aE7aC Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Tijl Coosemans , src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 17:36:52 -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-all@FreeBSD.ORG Tue Jun 18 19:03:28 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 17B9B9AF; Tue, 18 Jun 2013 19:03:28 +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 09B421DE5; Tue, 18 Jun 2013 19:03: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 r5IJ3R1q074267; Tue, 18 Jun 2013 19:03:27 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IJ3RwL074266; Tue, 18 Jun 2013 19:03:27 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201306181903.r5IJ3RwL074266@svn.freebsd.org> From: Konstantin Belousov Date: Tue, 18 Jun 2013 19:03:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251957 - stable/9/sys/kern X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 19:03:28 -0000 Author: kib Date: Tue Jun 18 19:03:27 2013 New Revision: 251957 URL: http://svnweb.freebsd.org/changeset/base/251957 Log: MFC r251285: Do not map the shared page COW. Modified: stable/9/sys/kern/kern_exec.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/kern/kern_exec.c ============================================================================== --- stable/9/sys/kern/kern_exec.c Tue Jun 18 16:36:21 2013 (r251956) +++ stable/9/sys/kern/kern_exec.c Tue Jun 18 19:03:27 2013 (r251957) @@ -1069,8 +1069,9 @@ exec_new_vmspace(imgp, sv) vm_object_reference(obj); error = vm_map_fixed(map, obj, 0, sv->sv_shared_page_base, sv->sv_shared_page_len, - VM_PROT_READ | VM_PROT_EXECUTE, VM_PROT_ALL, - MAP_COPY_ON_WRITE | MAP_ACC_NO_CHARGE); + VM_PROT_READ | VM_PROT_EXECUTE, + VM_PROT_READ | VM_PROT_EXECUTE, + MAP_INHERIT_SHARE | MAP_ACC_NO_CHARGE); if (error) { vm_object_deallocate(obj); return (error); From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 19:35:52 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 19:47:53 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 19:56:52 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 20:02:52 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 20:19:10 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 21:14:07 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 81E0C552; Tue, 18 Jun 2013 21:14:07 +0000 (UTC) (envelope-from marius@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 64ACB136A; Tue, 18 Jun 2013 21:14: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 r5ILE79q016098; Tue, 18 Jun 2013 21:14:07 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5ILE6lF016088; Tue, 18 Jun 2013 21:14:06 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201306182114.r5ILE6lF016088@svn.freebsd.org> From: Marius Strobl Date: Tue, 18 Jun 2013 21:14:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251962 - in stable/9/sys: conf ia64/ia64 ia64/include X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 21:14:07 -0000 Author: marius Date: Tue Jun 18 21:14:05 2013 New Revision: 251962 URL: http://svnweb.freebsd.org/changeset/base/251962 Log: MFC: r238184 Hide the creation of phys_avail behind an API to make it easier to do it correctly. We now iterate the EFI memory descriptors once and collect all the information in a single pass. Added: stable/9/sys/ia64/ia64/physmem.c - copied unchanged from r238184, head/sys/ia64/ia64/physmem.c Modified: stable/9/sys/conf/files.ia64 stable/9/sys/ia64/ia64/busdma_machdep.c stable/9/sys/ia64/ia64/machdep.c stable/9/sys/ia64/include/md_var.h stable/9/sys/ia64/include/param.h Directory Properties: stable/9/sys/ (props changed) stable/9/sys/conf/ (props changed) Modified: stable/9/sys/conf/files.ia64 ============================================================================== --- stable/9/sys/conf/files.ia64 Tue Jun 18 20:19:09 2013 (r251961) +++ stable/9/sys/conf/files.ia64 Tue Jun 18 21:14:05 2013 (r251962) @@ -97,6 +97,7 @@ ia64/ia64/mp_machdep.c optional smp ia64/ia64/nexus.c standard ia64/ia64/pal.S standard ia64/ia64/physical.S standard +ia64/ia64/physmem.c standard ia64/ia64/pmap.c standard ia64/ia64/ptrace_machdep.c standard ia64/ia64/sal.c standard Modified: stable/9/sys/ia64/ia64/busdma_machdep.c ============================================================================== --- stable/9/sys/ia64/ia64/busdma_machdep.c Tue Jun 18 20:19:09 2013 (r251961) +++ stable/9/sys/ia64/ia64/busdma_machdep.c Tue Jun 18 21:14:05 2013 (r251962) @@ -262,7 +262,7 @@ bus_dma_tag_create(bus_dma_tag_t parent, atomic_add_int(&parent->ref_count, 1); } - if (newtag->lowaddr < ptoa(Maxmem) && (flags & BUS_DMA_ALLOCNOW) != 0) { + if (newtag->lowaddr < paddr_max && (flags & BUS_DMA_ALLOCNOW) != 0) { /* Must bounce */ if (ptoa(total_bpages) < maxsize) { @@ -340,7 +340,7 @@ bus_dmamap_create(bus_dma_tag_t dmat, in * exclusion region, a data alignment that is stricter than 1, and/or * an active address boundary. */ - if (dmat->lowaddr < ptoa(Maxmem)) { + if (dmat->lowaddr < paddr_max) { /* Must bounce */ int maxpages; @@ -356,7 +356,7 @@ bus_dmamap_create(bus_dma_tag_t dmat, in * Attempt to add pages to our pool on a per-instance * basis up to a sane limit. */ - maxpages = MIN(MAX_BPAGES, Maxmem - atop(dmat->lowaddr)); + maxpages = MIN(MAX_BPAGES, atop(paddr_max - dmat->lowaddr)); if ((dmat->flags & BUS_DMA_MIN_ALLOC_COMP) == 0 || (dmat->map_count > 0 && total_bpages < maxpages)) { int pages; @@ -438,7 +438,7 @@ bus_dmamem_alloc(bus_dma_tag_t dmat, voi */ if ((dmat->maxsize <= PAGE_SIZE) && (dmat->alignment < dmat->maxsize) && - dmat->lowaddr >= ptoa(Maxmem)) { + dmat->lowaddr >= paddr_max) { *vaddr = malloc(dmat->maxsize, M_DEVBUF, mflags); } else { /* @@ -473,7 +473,7 @@ bus_dmamem_free(bus_dma_tag_t dmat, void panic("bus_dmamem_free: Invalid map freed\n"); if ((dmat->maxsize <= PAGE_SIZE) && (dmat->alignment < dmat->maxsize) && - dmat->lowaddr >= ptoa(Maxmem)) + dmat->lowaddr >= paddr_max) free(vaddr, M_DEVBUF); else { contigfree(vaddr, dmat->maxsize, M_DEVBUF); @@ -515,7 +515,7 @@ _bus_dmamap_count_pages(bus_dma_tag_t dm vm_offset_t vendaddr; bus_addr_t paddr; - if ((dmat->lowaddr < ptoa(Maxmem) || dmat->boundary > 0 || + if ((dmat->lowaddr < paddr_max || dmat->boundary > 0 || dmat->alignment > 1) && map != &nobounce_dmamap && map->pagesneeded == 0) { /* Modified: stable/9/sys/ia64/ia64/machdep.c ============================================================================== --- stable/9/sys/ia64/ia64/machdep.c Tue Jun 18 20:19:09 2013 (r251961) +++ stable/9/sys/ia64/ia64/machdep.c Tue Jun 18 21:14:05 2013 (r251962) @@ -168,22 +168,11 @@ SYSCTL_STRING(_hw, OID_AUTO, family, CTL extern vm_offset_t ksym_start, ksym_end; #endif - struct msgbuf *msgbufp = NULL; /* Other subsystems (e.g., ACPI) can hook this later. */ void (*cpu_idle_hook)(void) = NULL; -long Maxmem = 0; -long realmem = 0; - -#define PHYSMAP_SIZE (2 * VM_PHYSSEG_MAX) - -vm_paddr_t phys_avail[PHYSMAP_SIZE + 2]; - -/* must be 2 less so 0 0 can signal end of chunks */ -#define PHYS_AVAIL_ARRAY_END ((sizeof(phys_avail) / sizeof(vm_offset_t)) - 2) - struct kva_md_info kmi; #define Mhz 1000000L @@ -286,25 +275,8 @@ cpu_startup(void *dummy) #ifdef PERFMON perfmon_init(); #endif - printf("real memory = %ld (%ld MB)\n", ia64_ptob(Maxmem), - ia64_ptob(Maxmem) / 1048576); - realmem = Maxmem; - - /* - * Display any holes after the first chunk of extended memory. - */ - if (bootverbose) { - int indx; - - printf("Physical memory chunk(s):\n"); - for (indx = 0; phys_avail[indx + 1] != 0; indx += 2) { - long size1 = phys_avail[indx + 1] - phys_avail[indx]; - - printf("0x%08lx - 0x%08lx, %ld bytes (%ld pages)\n", - phys_avail[indx], phys_avail[indx + 1] - 1, size1, - size1 >> PAGE_SHIFT); - } - } + printf("real memory = %ld (%ld MB)\n", ptoa(realmem), + ptoa(realmem) / 1048576); vm_ksubmap_init(&kmi); @@ -716,43 +688,87 @@ struct ia64_init_return ia64_init(void) { struct ia64_init_return ret; - int phys_avail_cnt; - vm_offset_t kernstart, kernend; - vm_offset_t kernstartpfn, kernendpfn, pfn0, pfn1; - char *p; struct efi_md *md; + pt_entry_t *pbvm_pgtbl_ent, *pbvm_pgtbl_lim; + char *p; + vm_offset_t kernend; + vm_size_t mdlen; int metadata_missing; - /* NO OUTPUT ALLOWED UNTIL FURTHER NOTICE */ - /* - * TODO: Disable interrupts, floating point etc. - * Maybe flush cache and tlb + * NO OUTPUT ALLOWED UNTIL FURTHER NOTICE. */ + ia64_set_fpsr(IA64_FPSR_DEFAULT); /* - * TODO: Get critical system information (if possible, from the - * information provided by the boot program). + * Region 6 is direct mapped UC and region 7 is direct mapped + * WC. The details of this is controlled by the Alt {I,D}TLB + * handlers. Here we just make sure that they have the largest + * possible page size to minimise TLB usage. */ + ia64_set_rr(IA64_RR_BASE(6), (6 << 8) | (PAGE_SHIFT << 2)); + ia64_set_rr(IA64_RR_BASE(7), (7 << 8) | (PAGE_SHIFT << 2)); + ia64_srlz_d(); + + /* Initialize/setup physical memory datastructures */ + ia64_physmem_init(); /* - * Look for the I/O ports first - we need them for console - * probing. + * Process the memory map. This gives us the PAL locations, + * the I/O port base address, the available memory regions + * for initializing the physical memory map. */ for (md = efi_md_first(); md != NULL; md = efi_md_next(md)) { + mdlen = md->md_pages * EFI_PAGE_SIZE; switch (md->md_type) { case EFI_MD_TYPE_IOPORT: ia64_port_base = (uintptr_t)pmap_mapdev(md->md_phys, - md->md_pages * EFI_PAGE_SIZE); + mdlen); break; case EFI_MD_TYPE_PALCODE: - ia64_pal_size = md->md_pages * EFI_PAGE_SIZE; ia64_pal_base = md->md_phys; + ia64_pal_size = mdlen; + /*FALLTHROUGH*/ + case EFI_MD_TYPE_BAD: + case EFI_MD_TYPE_FIRMWARE: + case EFI_MD_TYPE_RECLAIM: + case EFI_MD_TYPE_RT_CODE: + case EFI_MD_TYPE_RT_DATA: + /* Don't use these memory regions. */ + ia64_physmem_track(md->md_phys, mdlen); + break; + case EFI_MD_TYPE_BS_CODE: + case EFI_MD_TYPE_BS_DATA: + case EFI_MD_TYPE_CODE: + case EFI_MD_TYPE_DATA: + case EFI_MD_TYPE_FREE: + /* These are ok to use. */ + ia64_physmem_add(md->md_phys, mdlen); break; } } + /* + * Remove the PBVM and its page table from phys_avail. The loader + * passes the physical address of the page table to us. The virtual + * address of the page table is fixed. + * Track and the PBVM limit for later use. + */ + ia64_physmem_delete(bootinfo->bi_pbvm_pgtbl, bootinfo->bi_pbvm_pgtblsz); + pbvm_pgtbl_ent = (void *)IA64_PBVM_PGTBL; + pbvm_pgtbl_lim = (void *)(IA64_PBVM_PGTBL + bootinfo->bi_pbvm_pgtblsz); + while (pbvm_pgtbl_ent < pbvm_pgtbl_lim) { + if ((*pbvm_pgtbl_ent & PTE_PRESENT) == 0) + break; + ia64_physmem_delete(*pbvm_pgtbl_ent & PTE_PPN_MASK, + IA64_PBVM_PAGE_SIZE); + pbvm_pgtbl_ent++; + } + + /* Finalize physical memory datastructures */ + ia64_physmem_fini(); + metadata_missing = 0; if (bootinfo->bi_modulep) preload_metadata = (caddr_t)bootinfo->bi_modulep; @@ -773,9 +789,8 @@ ia64_init(void) bootverbose = 1; /* - * Find the beginning and end of the kernel. + * Find the end of the kernel. */ - kernstart = trunc_page(kernel_text); #ifdef DDB ksym_start = bootinfo->bi_symtab; ksym_end = bootinfo->bi_esymtab; @@ -788,16 +803,6 @@ ia64_init(void) kernend = round_page(bootinfo->bi_kernend); /* - * Region 6 is direct mapped UC and region 7 is direct mapped - * WC. The details of this is controlled by the Alt {I,D}TLB - * handlers. Here we just make sure that they have the largest - * possible page size to minimise TLB usage. - */ - ia64_set_rr(IA64_RR_BASE(6), (6 << 8) | (PAGE_SHIFT << 2)); - ia64_set_rr(IA64_RR_BASE(7), (7 << 8) | (PAGE_SHIFT << 2)); - ia64_srlz_d(); - - /* * Wire things up so we can call the firmware. */ map_pal_code(); @@ -844,92 +849,6 @@ ia64_init(void) freeenv(p); } - kernstartpfn = atop(IA64_RR_MASK(kernstart)); - kernendpfn = atop(IA64_RR_MASK(kernend)); - - /* - * Size the memory regions and load phys_avail[] with the results. - */ - - /* - * Find out how much memory is available, by looking at - * the memory descriptors. - */ - -#ifdef DEBUG_MD - printf("Memory descriptor count: %d\n", mdcount); -#endif - - phys_avail_cnt = 0; - for (md = efi_md_first(); md != NULL; md = efi_md_next(md)) { -#ifdef DEBUG_MD - printf("MD %p: type %d pa 0x%lx cnt 0x%lx\n", md, - md->md_type, md->md_phys, md->md_pages); -#endif - - pfn0 = ia64_btop(round_page(md->md_phys)); - pfn1 = ia64_btop(trunc_page(md->md_phys + md->md_pages * 4096)); - if (pfn1 <= pfn0) - continue; - - if (md->md_type != EFI_MD_TYPE_FREE) - continue; - - /* - * We have a memory descriptor that describes conventional - * memory that is for general use. We must determine if the - * loader has put the kernel in this region. - */ - physmem += (pfn1 - pfn0); - if (pfn0 <= kernendpfn && kernstartpfn <= pfn1) { - /* - * Must compute the location of the kernel - * within the segment. - */ -#ifdef DEBUG_MD - printf("Descriptor %p contains kernel\n", mp); -#endif - if (pfn0 < kernstartpfn) { - /* - * There is a chunk before the kernel. - */ -#ifdef DEBUG_MD - printf("Loading chunk before kernel: " - "0x%lx / 0x%lx\n", pfn0, kernstartpfn); -#endif - phys_avail[phys_avail_cnt] = ia64_ptob(pfn0); - phys_avail[phys_avail_cnt+1] = ia64_ptob(kernstartpfn); - phys_avail_cnt += 2; - } - if (kernendpfn < pfn1) { - /* - * There is a chunk after the kernel. - */ -#ifdef DEBUG_MD - printf("Loading chunk after kernel: " - "0x%lx / 0x%lx\n", kernendpfn, pfn1); -#endif - phys_avail[phys_avail_cnt] = ia64_ptob(kernendpfn); - phys_avail[phys_avail_cnt+1] = ia64_ptob(pfn1); - phys_avail_cnt += 2; - } - } else { - /* - * Just load this cluster as one chunk. - */ -#ifdef DEBUG_MD - printf("Loading descriptor %d: 0x%lx / 0x%lx\n", i, - pfn0, pfn1); -#endif - phys_avail[phys_avail_cnt] = ia64_ptob(pfn0); - phys_avail[phys_avail_cnt+1] = ia64_ptob(pfn1); - phys_avail_cnt += 2; - - } - } - phys_avail[phys_avail_cnt] = 0; - - Maxmem = physmem; init_param2(physmem); /* Copied: stable/9/sys/ia64/ia64/physmem.c (from r238184, head/sys/ia64/ia64/physmem.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/9/sys/ia64/ia64/physmem.c Tue Jun 18 21:14:05 2013 (r251962, copy of r238184, head/sys/ia64/ia64/physmem.c) @@ -0,0 +1,195 @@ +/*- + * Copyright (c) 2012 Marcel Moolenaar + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include + +#include +#include + +static u_int phys_avail_segs; + +vm_paddr_t phys_avail[2 * VM_PHYSSEG_MAX + 2]; + +vm_paddr_t paddr_max; + +long realmem; + +static u_int +ia64_physmem_find(vm_paddr_t base, vm_paddr_t lim) +{ + u_int idx; + + for (idx = 0; phys_avail[idx + 1] != 0; idx += 2) { + if (phys_avail[idx] >= lim || + phys_avail[idx + 1] > base) + break; + } + return (idx); +} + +static int +ia64_physmem_insert(u_int idx, vm_paddr_t base, vm_paddr_t lim) +{ + u_int ridx; + + if (phys_avail_segs == VM_PHYSSEG_MAX) + return (ENOMEM); + + ridx = phys_avail_segs * 2; + while (idx < ridx) { + phys_avail[ridx + 1] = phys_avail[ridx - 1]; + phys_avail[ridx] = phys_avail[ridx - 2]; + ridx -= 2; + } + phys_avail[idx] = base; + phys_avail[idx + 1] = lim; + phys_avail_segs++; + return (0); +} + +static int +ia64_physmem_remove(u_int idx) +{ + + if (phys_avail_segs == 0) + return (ENOENT); + do { + phys_avail[idx] = phys_avail[idx + 2]; + phys_avail[idx + 1] = phys_avail[idx + 3]; + idx += 2; + } while (phys_avail[idx + 1] != 0); + phys_avail_segs--; + return (0); +} + +int +ia64_physmem_add(vm_paddr_t base, vm_size_t len) +{ + vm_paddr_t lim; + u_int idx; + + realmem += len; + + lim = base + len; + idx = ia64_physmem_find(base, lim); + if (phys_avail[idx] == lim) { + phys_avail[idx] = base; + return (0); + } + if (idx > 0 && phys_avail[idx - 1] == base) { + phys_avail[idx - 1] = lim; + return (0); + } + return (ia64_physmem_insert(idx, base, lim)); +} + +int +ia64_physmem_delete(vm_paddr_t base, vm_size_t len) +{ + vm_paddr_t lim; + u_int idx; + + lim = base + len; + idx = ia64_physmem_find(base, lim); + if (phys_avail[idx] >= lim || phys_avail[idx + 1] == 0) + return (ENOENT); + if (phys_avail[idx] < base && phys_avail[idx + 1] > lim) { + len = phys_avail[idx + 1] - lim; + phys_avail[idx + 1] = base; + base = lim; + lim = base + len; + return (ia64_physmem_insert(idx + 2, base, lim)); + } else { + if (phys_avail[idx] == base) + phys_avail[idx] = lim; + if (phys_avail[idx + 1] == lim) + phys_avail[idx + 1] = base; + if (phys_avail[idx] >= phys_avail[idx + 1]) + return (ia64_physmem_remove(idx)); + } + return (0); +} + +int +ia64_physmem_fini(void) +{ + vm_paddr_t base, lim, size; + u_int idx; + + idx = 0; + while (phys_avail[idx + 1] != 0) { + base = round_page(phys_avail[idx]); + lim = trunc_page(phys_avail[idx + 1]); + if (base < lim) { + phys_avail[idx] = base; + phys_avail[idx + 1] = lim; + size = lim - base; + physmem += atop(size); + paddr_max = lim; + idx += 2; + } else + ia64_physmem_remove(idx); + } + + /* + * Round realmem to a multple of 128MB. Hopefully that compensates + * for any loss of DRAM that isn't accounted for in the memory map. + * I'm thinking legacy BIOS or VGA here. In any case, it's ok if + * we got it wrong, because we don't actually use realmem. It's + * just for show... + */ + size = 1U << 27; + realmem = (realmem + size - 1) & ~(size - 1); + realmem = atop(realmem); + return (0); +} + +int +ia64_physmem_init(void) +{ + + /* Nothing to do just yet. */ + return (0); +} + +int +ia64_physmem_track(vm_paddr_t base, vm_size_t len) +{ + + realmem += len; + return (0); +} + +vm_paddr_t +ia64_physmem_alloc(vm_size_t len, vm_size_t align) +{ + + return (0); +} Modified: stable/9/sys/ia64/include/md_var.h ============================================================================== --- stable/9/sys/ia64/include/md_var.h Tue Jun 18 20:19:09 2013 (r251961) +++ stable/9/sys/ia64/include/md_var.h Tue Jun 18 21:14:05 2013 (r251962) @@ -73,8 +73,7 @@ struct ia64_init_return { }; extern uint64_t ia64_lapic_addr; - -extern long Maxmem; +extern vm_paddr_t paddr_max; extern u_int busdma_swi_pending; void *acpi_find_table(const char *sig); @@ -93,6 +92,12 @@ int ia64_highfp_save(struct thread *); int ia64_highfp_save_ipi(void); struct ia64_init_return ia64_init(void); u_int ia64_itc_freq(void); +int ia64_physmem_add(vm_paddr_t, vm_size_t); +vm_paddr_t ia64_physmem_alloc(vm_size_t, vm_size_t); +int ia64_physmem_delete(vm_paddr_t, vm_size_t); +int ia64_physmem_fini(void); +int ia64_physmem_init(void); +int ia64_physmem_track(vm_paddr_t, vm_size_t); void ia64_probe_sapics(void); void ia64_sync_icache(vm_offset_t, vm_size_t); void interrupt(struct trapframe *); Modified: stable/9/sys/ia64/include/param.h ============================================================================== --- stable/9/sys/ia64/include/param.h Tue Jun 18 20:19:09 2013 (r251961) +++ stable/9/sys/ia64/include/param.h Tue Jun 18 21:14:05 2013 (r251962) @@ -110,9 +110,6 @@ #define atop(x) ((unsigned long)(x) >> PAGE_SHIFT) #define ptoa(x) ((unsigned long)(x) << PAGE_SHIFT) -#define ia64_btop(x) ((unsigned long)(x) >> PAGE_SHIFT) -#define ia64_ptob(x) ((unsigned long)(x) << PAGE_SHIFT) - #define pgtok(x) ((x) * (PAGE_SIZE / 1024)) #endif /* !_IA64_INCLUDE_PARAM_H_ */ From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 21:24:09 2013 Return-Path: Delivered-To: svn-src-all@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 32593AEF; Tue, 18 Jun 2013 21:24:09 +0000 (UTC) (envelope-from marius@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 102581478; Tue, 18 Jun 2013 21: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 r5ILO86t019234; Tue, 18 Jun 2013 21:24:08 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5ILO8rd019226; Tue, 18 Jun 2013 21:24:08 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201306182124.r5ILO8rd019226@svn.freebsd.org> From: Marius Strobl Date: Tue, 18 Jun 2013 21:24:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251963 - in stable/9/sys/ia64: ia64 include X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 21:24:09 -0000 Author: marius Date: Tue Jun 18 21:24:07 2013 New Revision: 251963 URL: http://svnweb.freebsd.org/changeset/base/251963 Log: MFC: r238190 Implement ia64_physmem_alloc() and use it consistently to get memory before VM has been initialized. Modified: stable/9/sys/ia64/ia64/machdep.c stable/9/sys/ia64/ia64/physmem.c stable/9/sys/ia64/ia64/pmap.c stable/9/sys/ia64/include/md_var.h Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/ia64/ia64/machdep.c ============================================================================== --- stable/9/sys/ia64/ia64/machdep.c Tue Jun 18 21:14:05 2013 (r251962) +++ stable/9/sys/ia64/ia64/machdep.c Tue Jun 18 21:24:07 2013 (r251963) @@ -691,7 +691,6 @@ ia64_init(void) struct efi_md *md; pt_entry_t *pbvm_pgtbl_ent, *pbvm_pgtbl_lim; char *p; - vm_offset_t kernend; vm_size_t mdlen; int metadata_missing; @@ -789,20 +788,6 @@ ia64_init(void) bootverbose = 1; /* - * Find the end of the kernel. - */ -#ifdef DDB - ksym_start = bootinfo->bi_symtab; - ksym_end = bootinfo->bi_esymtab; - kernend = (vm_offset_t)round_page(ksym_end); -#else - kernend = (vm_offset_t)round_page(_end); -#endif - /* But if the bootstrap tells us otherwise, believe it! */ - if (bootinfo->bi_kernend) - kernend = round_page(bootinfo->bi_kernend); - - /* * Wire things up so we can call the firmware. */ map_pal_code(); @@ -821,9 +806,8 @@ ia64_init(void) pcpup = &pcpu0; ia64_set_k4((u_int64_t)pcpup); pcpu_init(pcpup, 0, sizeof(pcpu0)); - dpcpu_init((void *)kernend, 0); + dpcpu_init(ia64_physmem_alloc(DPCPU_SIZE, PAGE_SIZE), 0); PCPU_SET(md.lid, ia64_get_lid()); - kernend += DPCPU_SIZE; PCPU_SET(curthread, &thread0); /* @@ -854,14 +838,15 @@ ia64_init(void) /* * Initialize error message buffer (at end of core). */ - msgbufp = (struct msgbuf *)pmap_steal_memory(msgbufsize); + msgbufp = ia64_physmem_alloc(msgbufsize, PAGE_SIZE); msgbufinit(msgbufp, msgbufsize); proc_linkup0(&proc0, &thread0); /* * Init mapping for kernel stack for proc 0 */ - thread0.td_kstack = pmap_steal_memory(KSTACK_PAGES * PAGE_SIZE); + p = ia64_physmem_alloc(KSTACK_PAGES * PAGE_SIZE, PAGE_SIZE); + thread0.td_kstack = (uintptr_t)p; thread0.td_kstack_pages = KSTACK_PAGES; mutex_init(); @@ -887,6 +872,11 @@ ia64_init(void) /* * Initialize debuggers, and break into them if appropriate. */ +#ifdef DDB + ksym_start = bootinfo->bi_symtab; + ksym_end = bootinfo->bi_esymtab; +#endif + kdb_init(); #ifdef KDB Modified: stable/9/sys/ia64/ia64/physmem.c ============================================================================== --- stable/9/sys/ia64/ia64/physmem.c Tue Jun 18 21:14:05 2013 (r251962) +++ stable/9/sys/ia64/ia64/physmem.c Tue Jun 18 21:24:07 2013 (r251963) @@ -187,9 +187,72 @@ ia64_physmem_track(vm_paddr_t base, vm_s return (0); } -vm_paddr_t +void * ia64_physmem_alloc(vm_size_t len, vm_size_t align) { + vm_paddr_t base, lim, pa; + void *ptr; + u_int idx; - return (0); + if (phys_avail_segs == 0) + return (NULL); + + len = round_page(len); + + /* + * Try and allocate with least effort. + */ + idx = phys_avail_segs * 2; + while (idx > 0) { + idx -= 2; + base = phys_avail[idx]; + lim = phys_avail[idx + 1]; + + if (lim - base < len) + continue; + + /* First try from the end. */ + pa = lim - len; + if ((pa & (align - 1)) == 0) { + if (pa == base) + ia64_physmem_remove(idx); + else + phys_avail[idx + 1] = pa; + goto gotit; + } + + /* Try from the start next. */ + pa = base; + if ((pa & (align - 1)) == 0) { + if (pa + len == lim) + ia64_physmem_remove(idx); + else + phys_avail[idx] += len; + goto gotit; + } + } + + /* + * Find a good segment and split it up. + */ + idx = phys_avail_segs * 2; + while (idx > 0) { + idx -= 2; + base = phys_avail[idx]; + lim = phys_avail[idx + 1]; + + pa = (base + align - 1) & ~(align - 1); + if (pa + len <= lim) { + ia64_physmem_delete(pa, len); + goto gotit; + } + } + + /* Out of luck. */ + return (NULL); + + gotit: + ptr = (void *)IA64_PHYS_TO_RR7(pa); + bzero(ptr, len); + return (ptr); } Modified: stable/9/sys/ia64/ia64/pmap.c ============================================================================== --- stable/9/sys/ia64/ia64/pmap.c Tue Jun 18 21:14:05 2013 (r251962) +++ stable/9/sys/ia64/ia64/pmap.c Tue Jun 18 21:24:07 2013 (r251963) @@ -244,36 +244,6 @@ static int pmap_remove_vhpt(vm_offset_t static boolean_t pmap_try_insert_pv_entry(pmap_t pmap, vm_offset_t va, vm_page_t m); -vm_offset_t -pmap_steal_memory(vm_size_t size) -{ - vm_size_t bank_size; - vm_offset_t pa, va; - - size = round_page(size); - - bank_size = phys_avail[1] - phys_avail[0]; - while (size > bank_size) { - int i; - for (i = 0; phys_avail[i+2]; i+= 2) { - phys_avail[i] = phys_avail[i+2]; - phys_avail[i+1] = phys_avail[i+3]; - } - phys_avail[i] = 0; - phys_avail[i+1] = 0; - if (!phys_avail[0]) - panic("pmap_steal_memory: out of memory"); - bank_size = phys_avail[1] - phys_avail[0]; - } - - pa = phys_avail[0]; - phys_avail[0] += size; - - va = IA64_PHYS_TO_RR7(pa); - bzero((caddr_t) va, size); - return va; -} - static void pmap_initialize_vhpt(vm_offset_t vhpt) { @@ -317,7 +287,7 @@ pmap_bootstrap() struct ia64_pal_result res; vm_offset_t base; size_t size; - int i, j, count, ridbits; + int i, ridbits; /* * Query the PAL Code to find the loop parameters for the @@ -379,7 +349,7 @@ pmap_bootstrap() pmap_ridmax = (1 << ridbits); pmap_ridmapsz = pmap_ridmax / 64; - pmap_ridmap = (uint64_t *)pmap_steal_memory(pmap_ridmax / 8); + pmap_ridmap = ia64_physmem_alloc(pmap_ridmax / 8, PAGE_SIZE); pmap_ridmap[0] |= 0xff; pmap_rididx = 0; pmap_ridcount = 8; @@ -388,14 +358,10 @@ pmap_bootstrap() /* * Allocate some memory for initial kernel 'page tables'. */ - ia64_kptdir = (void *)pmap_steal_memory(PAGE_SIZE); + ia64_kptdir = ia64_physmem_alloc(PAGE_SIZE, PAGE_SIZE); nkpt = 0; kernel_vm_end = VM_MIN_KERNEL_ADDRESS; - for (i = 0; phys_avail[i+2]; i+= 2) - ; - count = i+2; - /* * Determine a valid (mappable) VHPT size. */ @@ -409,35 +375,18 @@ pmap_bootstrap() if (pmap_vhpt_log2size & 1) pmap_vhpt_log2size--; - base = 0; size = 1UL << pmap_vhpt_log2size; - for (i = 0; i < count; i += 2) { - base = (phys_avail[i] + size - 1) & ~(size - 1); - if (base + size <= phys_avail[i+1]) - break; - } - if (!phys_avail[i]) + base = (uintptr_t)ia64_physmem_alloc(size, size); + if (base == 0) panic("Unable to allocate VHPT"); - if (base != phys_avail[i]) { - /* Split this region. */ - for (j = count; j > i; j -= 2) { - phys_avail[j] = phys_avail[j-2]; - phys_avail[j+1] = phys_avail[j-2+1]; - } - phys_avail[i+1] = base; - phys_avail[i+2] = base + size; - } else - phys_avail[i] = base + size; - - base = IA64_PHYS_TO_RR7(base); PCPU_SET(md.vhpt, base); if (bootverbose) printf("VHPT: address=%#lx, size=%#lx\n", base, size); pmap_vhpt_nbuckets = size / sizeof(struct ia64_lpte); - pmap_vhpt_bucket = (void *)pmap_steal_memory(pmap_vhpt_nbuckets * - sizeof(struct ia64_bucket)); + pmap_vhpt_bucket = ia64_physmem_alloc(pmap_vhpt_nbuckets * + sizeof(struct ia64_bucket), PAGE_SIZE); for (i = 0; i < pmap_vhpt_nbuckets; i++) { /* Stolen memory is zeroed. */ mtx_init(&pmap_vhpt_bucket[i].mutex, "VHPT bucket lock", NULL, Modified: stable/9/sys/ia64/include/md_var.h ============================================================================== --- stable/9/sys/ia64/include/md_var.h Tue Jun 18 21:14:05 2013 (r251962) +++ stable/9/sys/ia64/include/md_var.h Tue Jun 18 21:24:07 2013 (r251963) @@ -93,7 +93,7 @@ int ia64_highfp_save_ipi(void); struct ia64_init_return ia64_init(void); u_int ia64_itc_freq(void); int ia64_physmem_add(vm_paddr_t, vm_size_t); -vm_paddr_t ia64_physmem_alloc(vm_size_t, vm_size_t); +void *ia64_physmem_alloc(vm_size_t, vm_size_t); int ia64_physmem_delete(vm_paddr_t, vm_size_t); int ia64_physmem_fini(void); int ia64_physmem_init(void); From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 21:25:16 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 21:28:20 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 21:29:07 2013 Return-Path: Delivered-To: svn-src-all@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 6B1B6427 for ; Tue, 18 Jun 2013 21:29:07 +0000 (UTC) (envelope-from jroberson@jroberson.net) Received: from mail-pa0-x22f.google.com (mail-pa0-x22f.google.com [IPv6:2607:f8b0:400e:c03::22f]) by mx1.freebsd.org (Postfix) with ESMTP id 2D6D21605 for ; Tue, 18 Jun 2013 21:29:07 +0000 (UTC) Received: by mail-pa0-f47.google.com with SMTP id kl14so4391358pab.6 for ; Tue, 18 Jun 2013 14:29:06 -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=OeZqbnV19xbn9yKdk0NFU2FBFBXXlhFeU3kxjsQmLU3lH4I3xyNQ9Vr66uIMF4f+7a fgLekxduWx0biA0Q4qEQ8/TWHjeHzvwRbaoetd+D1F83OE8pfKwJtHRNe/mRh8oGDHiY p3FySCKxQwoM7f+5EIbpHqySqWMoK1+ZmFyfVjThpFEn5r35NU0LtD1bfBppyJ7GwAFe tkeYI118OMqxo0zId0QLC+Z63pFIhGRda1zHa0Y4Ajm8Bx3w3eICF15+ADzbEYNV+s0a 4QLjayAm1Yc1jiIVtzQPamJhI0aUowaQsmo8cyrE0Ajpp7+Iv3EO6WAwh64MQIvwwYOr UyZQ== 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: ALoCoQmv05eieITVUKcbizyAXryMb/TwmQcX7kp0Ed2NYMGkNMl6HL3TGa2qeYa+5V0NyKXp/6Mf 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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 21:35:38 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 21:41:07 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 21:44:36 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 22:10:39 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 22:22:00 2013 Return-Path: Delivered-To: svn-src-all@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 6D45DC04; Tue, 18 Jun 2013 22:22:00 +0000 (UTC) (envelope-from marius@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 45BCE1821; Tue, 18 Jun 2013 22:22: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 r5IMM0SJ038752; Tue, 18 Jun 2013 22:22:00 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5IMM0Zl038751; Tue, 18 Jun 2013 22:22:00 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201306182222.r5IMM0Zl038751@svn.freebsd.org> From: Marius Strobl Date: Tue, 18 Jun 2013 22:22:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251971 - stable/9/sys/dev/bce X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 22:22:00 -0000 Author: marius Date: Tue Jun 18 22:21:59 2013 New Revision: 251971 URL: http://svnweb.freebsd.org/changeset/base/251971 Log: Now that r251221 has been MFC'ed to stable/9 in r251939, merge the remainder of r251146 previously partially MFC'ed in r251573: In bce_get_pg_buf(), take advantage of bus_dmamap_load_mbuf_sg(9). Modified: stable/9/sys/dev/bce/if_bce.c Modified: stable/9/sys/dev/bce/if_bce.c ============================================================================== --- stable/9/sys/dev/bce/if_bce.c Tue Jun 18 22:21:59 2013 (r251970) +++ stable/9/sys/dev/bce/if_bce.c Tue Jun 18 22:21:59 2013 (r251971) @@ -5466,10 +5466,10 @@ bce_get_rx_buf_exit: static int bce_get_pg_buf(struct bce_softc *sc, u16 prod, u16 prod_idx) { - bus_addr_t busaddr; + bus_dma_segment_t segs[1]; struct mbuf *m_new = NULL; struct rx_bd *pgbd; - int error, rc = 0; + int error, nsegs, rc = 0; #ifdef BCE_DEBUG u16 debug_prod_idx = prod_idx; #endif @@ -5512,12 +5512,11 @@ bce_get_pg_buf(struct bce_softc *sc, u16 /* ToDo: Consider calling m_fragment() to test error handling. */ /* Map the mbuf cluster into device memory. */ - error = bus_dmamap_load(sc->pg_mbuf_tag, sc->pg_mbuf_map[prod_idx], - mtod(m_new, void *), MCLBYTES, bce_dma_map_addr, &busaddr, - BUS_DMA_NOWAIT); + error = bus_dmamap_load_mbuf_sg(sc->pg_mbuf_tag, + sc->pg_mbuf_map[prod_idx], m_new, segs, &nsegs, BUS_DMA_NOWAIT); /* Handle any mapping errors. */ - if (error || busaddr == 0) { + if (error) { BCE_PRINTF("%s(%d): Error mapping mbuf into page chain!\n", __FILE__, __LINE__); @@ -5528,6 +5527,10 @@ bce_get_pg_buf(struct bce_softc *sc, u16 goto bce_get_pg_buf_exit; } + /* All mbufs must map to a single segment. */ + KASSERT(nsegs == 1, ("%s(): Too many segments returned (%d)!", + __FUNCTION__, nsegs)); + /* ToDo: Do we need bus_dmamap_sync(,,BUS_DMASYNC_PREREAD) here? */ /* @@ -5536,8 +5539,8 @@ bce_get_pg_buf(struct bce_softc *sc, u16 */ pgbd = &sc->pg_bd_chain[PG_PAGE(prod_idx)][PG_IDX(prod_idx)]; - pgbd->rx_bd_haddr_lo = htole32(BCE_ADDR_LO(busaddr)); - pgbd->rx_bd_haddr_hi = htole32(BCE_ADDR_HI(busaddr)); + pgbd->rx_bd_haddr_lo = htole32(BCE_ADDR_LO(segs[0].ds_addr)); + pgbd->rx_bd_haddr_hi = htole32(BCE_ADDR_HI(segs[0].ds_addr)); pgbd->rx_bd_len = htole32(MCLBYTES); pgbd->rx_bd_flags = htole32(RX_BD_FLAGS_START | RX_BD_FLAGS_END); From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 22:35:05 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 22:38:21 2013 Return-Path: Delivered-To: svn-src-all@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 1999B27E for ; Tue, 18 Jun 2013 22:38:21 +0000 (UTC) (envelope-from lists@eitanadler.com) Received: from mail-pb0-x236.google.com (mail-pb0-x236.google.com [IPv6:2607:f8b0:400e:c01::236]) by mx1.freebsd.org (Postfix) with ESMTP id E534318AF for ; Tue, 18 Jun 2013 22:38:20 +0000 (UTC) Received: by mail-pb0-f54.google.com with SMTP id ro2so4360324pbb.27 for ; Tue, 18 Jun 2013 15:38:20 -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=Z6gKHj41Ea2lTWZ8PwJ1SsCpsfRZLYqAjPD7XofsKfjKpPFkSL+/qbXzN0Gj+quTm/ Gi1eKoWhOLT8KtrvihfbtnhoNH7VpIgpSO+OMTDSXaf9GsAodxuenGOxyHG1eg2z0Wq8 pMK8qA22FQsW9eouJjwT0Cj4GyZ8D85qWOieWIM84DLfYSyk0QrGUUpnVGSJEfnS9Kyw PeQrGbLfThB+gCFG3y1uZC9oYL/nFPZwZCStOpjmrUDOykNRRkQztOVzLWC7CkPScYsA 6dJ4VV1O1LLcO0c0KRCWiEkVo8nA11iOT0o9NZ1du+3ehKOPNV9/iatGGI1D5+lBdP2Y dY3Q== 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: ALoCoQmLleU3E2ZtP+KgnpIYeHWdgka6p/j0q15rUBIuErq0tNW1WEWIX7oGxsr/lDF+I2fEcnxF 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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 22:38:21 -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-all@FreeBSD.ORG Tue Jun 18 23:11:36 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 23:14:22 2013 Return-Path: Delivered-To: svn-src-all@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 C46B5C88; Tue, 18 Jun 2013 23:14:22 +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 A5FA119E5; Tue, 18 Jun 2013 23:14: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 r5INEMMR056037; Tue, 18 Jun 2013 23:14:22 GMT (envelope-from gibbs@svn.freebsd.org) Received: (from gibbs@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5INELKj056032; Tue, 18 Jun 2013 23:14:21 GMT (envelope-from gibbs@svn.freebsd.org) Message-Id: <201306182314.r5INELKj056032@svn.freebsd.org> From: "Justin T. Gibbs" Date: Tue, 18 Jun 2013 23:14:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251973 - in stable/9/sys: dev/xen/blkfront dev/xen/netfront xen/xenbus xen/xenstore X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 23:14:22 -0000 Author: gibbs Date: Tue Jun 18 23:14:21 2013 New Revision: 251973 URL: http://svnweb.freebsd.org/changeset/base/251973 Log: MFC Xen fixes: svn rev 250081 Author:gibbs Date:2013-04-29T23:08:13.552620Z ============== xenstore/xenstore.c: Prevent access to invalid memory region when listing an empty directory in the XenStore. Reported by: Bei Guan svn rev 250913 Author:gibbs Date:2013-05-22T17:13:03.545339Z ============== Correct panic on detach of Xen PV network interfaces. dev/xen/netfront: In netif_free(), properly stop the interface and drain any pending timers prior to disconnecting from the backend device. Remove all media and detach our interface object from the system prior to deleting it. PR: kern/176471 Submitted by: Roger Pau Monne Reviewed by: gibbs svn rev 250917 Author:gibbs Date:2013-05-22T19:22:44.923351Z ============== Fix loss of the emulated keyboard on Xen PV HVM domains. xen/xenbus/xenbusb.c: In xenbusb_probe_children(), do not modify the XenBus state of devices for which we have no PV driver support. An emulated device we do support may share this backend. Hide the node from XenBus instead. This prevents closing the vkbd device, which Qemu's emulated keyboard device is using as the source for keyboard events. Tested with qemu-xen-traditional, qemu-xen and qemu stubdomains, all working as expected. Submitted by: Roger Pau Monne Reviewed by: gibbs MFC after: 1 week svn rev 251175 Author:gibbs Date:2013-05-31T04:43:19.944993Z ============== Apply the ad* => ada* IDE device name transition to the Xen block front driver. Submitted by: Bei Guan Reviewed by: gibbs MFC after: 1 week svn rev 251176 Author:gibbs Date:2013-05-31T04:45:59.563195Z ============== Make netif_free() safe to call on a partially initialized softc. Sponsored by: Spectra Logic Corporation MFC after: 1 week svn rev 251729 Author:gibbs Date:2013-06-14T03:31:11.033200Z ============== sys/dev/xen/netfront/netfront.c: In netif_free(), call ifmedia_removeall() after ether_ifdetach() so that bpf listeners are detached, any link state processing is completed, and there is no chance for external reference to media information. Suggested by: yongari Modified: stable/9/sys/dev/xen/blkfront/blkfront.c stable/9/sys/dev/xen/netfront/netfront.c stable/9/sys/xen/xenbus/xenbusb.c stable/9/sys/xen/xenstore/xenstore.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/xen/blkfront/blkfront.c ============================================================================== --- stable/9/sys/dev/xen/blkfront/blkfront.c Tue Jun 18 23:11:36 2013 (r251972) +++ stable/9/sys/dev/xen/blkfront/blkfront.c Tue Jun 18 23:14:21 2013 (r251973) @@ -148,16 +148,16 @@ blkfront_vdevice_to_unit(uint32_t vdevic int base; const char *name; } info[] = { - {3, 6, 0, "ad"}, /* ide0 */ - {22, 6, 2, "ad"}, /* ide1 */ - {33, 6, 4, "ad"}, /* ide2 */ - {34, 6, 6, "ad"}, /* ide3 */ - {56, 6, 8, "ad"}, /* ide4 */ - {57, 6, 10, "ad"}, /* ide5 */ - {88, 6, 12, "ad"}, /* ide6 */ - {89, 6, 14, "ad"}, /* ide7 */ - {90, 6, 16, "ad"}, /* ide8 */ - {91, 6, 18, "ad"}, /* ide9 */ + {3, 6, 0, "ada"}, /* ide0 */ + {22, 6, 2, "ada"}, /* ide1 */ + {33, 6, 4, "ada"}, /* ide2 */ + {34, 6, 6, "ada"}, /* ide3 */ + {56, 6, 8, "ada"}, /* ide4 */ + {57, 6, 10, "ada"}, /* ide5 */ + {88, 6, 12, "ada"}, /* ide6 */ + {89, 6, 14, "ada"}, /* ide7 */ + {90, 6, 16, "ada"}, /* ide8 */ + {91, 6, 18, "ada"}, /* ide9 */ {8, 4, 0, "da"}, /* scsi disk0 */ {65, 4, 16, "da"}, /* scsi disk1 */ Modified: stable/9/sys/dev/xen/netfront/netfront.c ============================================================================== --- stable/9/sys/dev/xen/netfront/netfront.c Tue Jun 18 23:11:36 2013 (r251972) +++ stable/9/sys/dev/xen/netfront/netfront.c Tue Jun 18 23:14:21 2013 (r251973) @@ -2172,10 +2172,17 @@ netfront_detach(device_t dev) static void netif_free(struct netfront_info *info) { + XN_LOCK(info); + xn_stop(info); + XN_UNLOCK(info); + callout_drain(&info->xn_stat_ch); netif_disconnect_backend(info); -#if 0 - close_netdev(info); -#endif + if (info->xn_ifp != NULL) { + ether_ifdetach(info->xn_ifp); + if_free(info->xn_ifp); + info->xn_ifp = NULL; + } + ifmedia_removeall(&info->sc_media); } static void Modified: stable/9/sys/xen/xenbus/xenbusb.c ============================================================================== --- stable/9/sys/xen/xenbus/xenbusb.c Tue Jun 18 23:11:36 2013 (r251972) +++ stable/9/sys/xen/xenbus/xenbusb.c Tue Jun 18 23:14:21 2013 (r251973) @@ -404,6 +404,31 @@ xenbusb_device_sysctl_init(device_t dev) } /** + * \brief Decrement the number of XenBus child devices in the + * connecting state by one and release the xbs_attch_ch + * interrupt configuration hook if the connecting count + * drops to zero. + * + * \param xbs XenBus Bus device softc of the owner of the bus to enumerate. + */ +static void +xenbusb_release_confighook(struct xenbusb_softc *xbs) +{ + mtx_lock(&xbs->xbs_lock); + KASSERT(xbs->xbs_connecting_children > 0, + ("Connecting device count error\n")); + xbs->xbs_connecting_children--; + if (xbs->xbs_connecting_children == 0 + && (xbs->xbs_flags & XBS_ATTACH_CH_ACTIVE) != 0) { + xbs->xbs_flags &= ~XBS_ATTACH_CH_ACTIVE; + mtx_unlock(&xbs->xbs_lock); + config_intrhook_disestablish(&xbs->xbs_attach_ch); + } else { + mtx_unlock(&xbs->xbs_lock); + } +} + +/** * \brief Verify the existance of attached device instances and perform * probe/attach processing for newly arrived devices. * @@ -417,7 +442,7 @@ xenbusb_probe_children(device_t dev) { device_t *kids; struct xenbus_device_ivars *ivars; - int i, count; + int i, count, error; if (device_get_children(dev, &kids, &count) == 0) { for (i = 0; i < count; i++) { @@ -430,7 +455,30 @@ xenbusb_probe_children(device_t dev) continue; } - if (device_probe_and_attach(kids[i])) { + error = device_probe_and_attach(kids[i]); + if (error == ENXIO) { + struct xenbusb_softc *xbs; + + /* + * We don't have a PV driver for this device. + * However, an emulated device we do support + * may share this backend. Hide the node from + * XenBus until the next rescan, but leave it's + * state unchanged so we don't inadvertently + * prevent attachment of any emulated device. + */ + xenbusb_delete_child(dev, kids[i]); + + /* + * Since the XenStore state of this device + * still indicates a pending attach, manually + * release it's hold on the boot process. + */ + xbs = device_get_softc(dev); + xenbusb_release_confighook(xbs); + + continue; + } else if (error) { /* * Transition device to the closed state * so the world knows that attachment will @@ -579,31 +627,6 @@ xenbusb_nop_confighook_cb(void *arg __un { } -/** - * \brief Decrement the number of XenBus child devices in the - * connecting state by one and release the xbs_attch_ch - * interrupt configuration hook if the connecting count - * drops to zero. - * - * \param xbs XenBus Bus device softc of the owner of the bus to enumerate. - */ -static void -xenbusb_release_confighook(struct xenbusb_softc *xbs) -{ - mtx_lock(&xbs->xbs_lock); - KASSERT(xbs->xbs_connecting_children > 0, - ("Connecting device count error\n")); - xbs->xbs_connecting_children--; - if (xbs->xbs_connecting_children == 0 - && (xbs->xbs_flags & XBS_ATTACH_CH_ACTIVE) != 0) { - xbs->xbs_flags &= ~XBS_ATTACH_CH_ACTIVE; - mtx_unlock(&xbs->xbs_lock); - config_intrhook_disestablish(&xbs->xbs_attach_ch); - } else { - mtx_unlock(&xbs->xbs_lock); - } -} - /*--------------------------- Public Functions -------------------------------*/ /*--------- API comments for these methods can be found in xenbusb.h ---------*/ void Modified: stable/9/sys/xen/xenstore/xenstore.c ============================================================================== --- stable/9/sys/xen/xenstore/xenstore.c Tue Jun 18 23:11:36 2013 (r251972) +++ stable/9/sys/xen/xenstore/xenstore.c Tue Jun 18 23:14:21 2013 (r251973) @@ -307,7 +307,8 @@ split(char *strings, u_int len, u_int *n const char **ret; /* Protect against unterminated buffers. */ - strings[len - 1] = '\0'; + if (len > 0) + strings[len - 1] = '\0'; /* Count the strings. */ *num = extract_strings(strings, /*dest*/NULL, len); From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 23:14:46 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 23:15:18 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 37337F6B for ; Tue, 18 Jun 2013 23:15:18 +0000 (UTC) (envelope-from gibbs@FreeBSD.org) Received: from aslan.scsiguy.com (www.scsiguy.com [70.89.174.89]) by mx1.freebsd.org (Postfix) with ESMTP id 11CE419F1 for ; Tue, 18 Jun 2013 23:15:17 +0000 (UTC) Received: from ryanguthrielt.sldomain.com (207-225-98-3.dia.static.qwest.net [207.225.98.3]) (authenticated bits=0) by aslan.scsiguy.com (8.14.7/8.14.5) with ESMTP id r5INF7AK012291 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO); Tue, 18 Jun 2013 23:15:09 GMT (envelope-from gibbs@FreeBSD.org) Content-Type: text/plain; charset=windows-1252 Mime-Version: 1.0 (Mac OS X Mail 6.5 \(1508\)) Subject: Re: svn commit: r250913 - head/sys/dev/xen/netfront From: "Justin T. Gibbs" In-Reply-To: <51C06038.5060604@egr.msu.edu> Date: Tue, 18 Jun 2013 17:15:02 -0600 Content-Transfer-Encoding: quoted-printable Message-Id: <4533E96F-2D84-4C37-BA74-3391A41EA418@FreeBSD.org> References: <201305221713.r4MHD3n7083573@svn.freebsd.org> <51C06038.5060604@egr.msu.edu> To: Adam McDougall X-Mailer: Apple Mail (2.1508) X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.4.3 (aslan.scsiguy.com [70.89.174.89]); Tue, 18 Jun 2013 23:15:09 +0000 (UTC) Cc: svn-src-all@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 23:15:18 -0000 On Jun 18, 2013, at 7:27 AM, Adam McDougall = wrote: > On 05/22/13 13:13, Justin T. Gibbs wrote: >> Author: gibbs >> Date: Wed May 22 17:13:03 2013 >> New Revision: 250913 >> URL: http://svnweb.freebsd.org/changeset/base/250913 >>=20 >> Log: >> Correct panic on detach of Xen PV network interfaces. =85 > Can this be MFC'ed soon? Thinking ahead to my next build. Thanks. Done. -- Justin= From owner-svn-src-all@FreeBSD.ORG Tue Jun 18 23:18:32 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 23:31:09 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 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-all@FreeBSD.ORG Tue Jun 18 23:48:05 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 18 Jun 2013 23:48:05 -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-all@FreeBSD.ORG Wed Jun 19 00:08:29 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 00:09:21 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 00:13:55 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 00:24:09 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 00:26:29 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 01:14:54 2013 Return-Path: Delivered-To: svn-src-all@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 88C055F1; Wed, 19 Jun 2013 01:14:54 +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 5D58C1F9F; Wed, 19 Jun 2013 01:14:54 +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 D34A323F840; Tue, 18 Jun 2013 21:14:52 -0400 (EDT) DKIM-Filter: OpenDKIM Filter v2.8.3 onyx.glenbarber.us D34A323F840 Authentication-Results: onyx.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Tue, 18 Jun 2013 21:14:50 -0400 From: Glen Barber To: Scott Long Subject: Re: svn commit: r251874 - in stable/9/sys: arm/arm cam cam/ctl cam/scsi conf dev/aac dev/advansys dev/aha dev/ahb dev/ahci dev/aic dev/aic7xxx dev/amr dev/arcmsr dev/ata dev/buslogic dev/ciss dev/dpt d... Message-ID: <20130619011450.GA1876@glenbarber.us> References: <201306180036.r5I0askx009647@svn.freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="IS0zKkzwUGydFO0o" Content-Disposition: inline In-Reply-To: <201306180036.r5I0askx009647@svn.freebsd.org> X-Operating-System: FreeBSD 10.0-CURRENT amd64 User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-stable@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, svn-src-stable-9@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 01:14:54 -0000 --IS0zKkzwUGydFO0o Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Jun 18, 2013 at 12:36:54AM +0000, Scott Long wrote: > Author: scottl > Date: Tue Jun 18 00:36:53 2013 > New Revision: 251874 > URL: http://svnweb.freebsd.org/changeset/base/251874 >=20 > Log: > Big MFC of the physbio changes necessary for unmapped I/O. These chang= es > have been in production at Netflix for several months with significant > success. > =20 I think this breaks stable/9. cc -c -O2 -pipe -fno-strict-aliasing -std=3Dc99 -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 -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/ia64/libuwx/src -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=3D15000 --param inline-unit-growth=3D100 --param large-function-growth=3D1000 -fno-builtin -mconstant-gp -ffixed-r13 -mfixed-range=3Df32-f127 -fpic -ffreestanding -Werror /src/sys/ia64/ia32/ia32_trap.c cc -c -O2 -pipe -fno-strict-aliasing -std=3Dc99 -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 -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/ia64/libuwx/src -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=3D15000 --param inline-unit-growth=3D100 --param large-function-growth=3D1000 -fno-builtin -mconstant-gp -ffixed-r13 -mfixed-range=3Df32-f127 -fpic -ffreestanding -Werror /src/sys/ia64/ia64/autoconf.c cc -c -O2 -pipe -fno-strict-aliasing -std=3Dc99 -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 -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/ia64/libuwx/src -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=3D15000 --param inline-unit-growth=3D100 --param large-function-growth=3D1000 -fno-builtin -mconstant-gp -ffixed-r13 -mfixed-range=3Df32-f127 -fpic -ffreestanding -Werror /src/sys/ia64/ia64/bus_machdep.c cc -c -O2 -pipe -fno-strict-aliasing -std=3Dc99 -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 -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/ia64/libuwx/src -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=3D15000 --param inline-unit-growth=3D100 --param large-function-growth=3D1000 -fno-builtin -mconstant-gp -ffixed-r13 -mfixed-range=3Df32-f127 -fpic -ffreestanding -Werror /src/sys/ia64/ia64/busdma_machdep.c /src/sys/ia64/ia64/busdma_machdep.c: In function '_bus_dmamap_count_phys': /src/sys/ia64/ia64/busdma_machdep.c:490: error: 'paddr_max' undeclared (first use in this function) /src/sys/ia64/ia64/busdma_machdep.c:490: error: (Each undeclared identifier is reported only once /src/sys/ia64/ia64/busdma_machdep.c:490: error: for each function it appears in.) *** Error code 1 Stop in /obj/ia64.ia64/src/sys/LINT. *** Error code 1 Stop in /src. *** Error code 1 Glen --IS0zKkzwUGydFO0o Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iQEcBAEBCAAGBQJRwQYKAAoJEFJPDDeguUajj8IH+gLGOY/dRfP5m/EmVTXXEs68 un/ankkw2MBYoe6VjO6bkvEK2suO6xssK6mkGXW+TfprjMFxl5KRFMWE0+IgQGie BFU2+uCHx6tonOS1ZxRrVevVa1WVsJ6gjb9KVZ+QEQEdyodWGQSP9S7/3pqqUX/t wr2sh1k9n8KcM+wESmXqWd7BF+e2Zfv38woyHodMa9X+LBkNz6rJecaCp1lZYzPA dW2T8Qxg5ZBiFADRrnHIjpfOYV3JPi1wYn/oNoFNL559qN4GZpmq2bxnw3KYlOz+ UbIxV78xbM5JEAGYo4dPW2ZhDyY9CYlNmk3sReQUuVa5tl6+dMrBR8YMRuZIy50= =GCr9 -----END PGP SIGNATURE----- --IS0zKkzwUGydFO0o-- From owner-svn-src-all@FreeBSD.ORG Wed Jun 19 01:37:15 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 7B44E866 for ; Wed, 19 Jun 2013 01:37:15 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from mail-pb0-x22f.google.com (mail-pb0-x22f.google.com [IPv6:2607:f8b0:400e:c01::22f]) by mx1.freebsd.org (Postfix) with ESMTP id 53140102C for ; Wed, 19 Jun 2013 01:37:15 +0000 (UTC) Received: by mail-pb0-f47.google.com with SMTP id rr13so4464651pbb.6 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=azAK+VNL5abw0z5Vb8UfaVS8rqshfBo3qS+Aanun61f/Ju5rnt+QDxabR6SGSMbfz1 dvHkwph/yCODPZhP+ZYSfg75ybOrr0KLi8XcsuIKMHFY0MxQ4hx+xbzTymUOAfCmKxHF U8pOZ8w/CjDcxyyD3t/PMpsQ0/75xqh3lQjW5bd1w2+5gGxLXJJMoRzD8z0sdzmIejML 4tQ/H3Cq7K27M1w0QXCGxTcgTZI35JAVEGrdarrqjIYcnoHWTRs3cY/8PB3tCPGBpJ5j GJLbUjYekg36EWFgPCi2/81/mf9ckDQAoeKTf4zqfUAfzXYI1M0oPM3J+85ngYQpH6y1 3Wrw== 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: ALoCoQnzUWcX0efsW2kvuG6jwXhoZzMaawz4WYqIl7GWrp2c7nNaObx3oCybrF5b9lYpr+35OZxV Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Tijl Coosemans , Andre Oppermann , src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 01:37:15 -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-all@FreeBSD.ORG Wed Jun 19 01:55:43 2013 Return-Path: Delivered-To: svn-src-all@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 E9603CC0; Wed, 19 Jun 2013 01:55:43 +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 BECBE10D7; Wed, 19 Jun 2013 01:55:43 +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 987CF23F840; Tue, 18 Jun 2013 21:55:41 -0400 (EDT) DKIM-Filter: OpenDKIM Filter v2.8.3 onyx.glenbarber.us 987CF23F840 Authentication-Results: onyx.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Tue, 18 Jun 2013 21:55:39 -0400 From: Glen Barber To: Scott Long Subject: Re: svn commit: r251874 - in stable/9/sys: arm/arm cam cam/ctl cam/scsi conf dev/aac dev/advansys dev/aha dev/ahb dev/ahci dev/aic dev/aic7xxx dev/amr dev/arcmsr dev/ata dev/buslogic dev/ciss dev/dpt d... Message-ID: <20130619015539.GB1876@glenbarber.us> References: <201306180036.r5I0askx009647@svn.freebsd.org> <20130619011450.GA1876@glenbarber.us> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="dTy3Mrz/UPE2dbVg" Content-Disposition: inline In-Reply-To: <20130619011450.GA1876@glenbarber.us> X-Operating-System: FreeBSD 10.0-CURRENT amd64 User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-stable@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, svn-src-stable-9@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 01:55:44 -0000 --dTy3Mrz/UPE2dbVg Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Jun 18, 2013 at 09:14:50PM -0400, Glen Barber wrote: > On Tue, Jun 18, 2013 at 12:36:54AM +0000, Scott Long wrote: > > Author: scottl > > Date: Tue Jun 18 00:36:53 2013 > > New Revision: 251874 > > URL: http://svnweb.freebsd.org/changeset/base/251874 > >=20 > > Log: > > Big MFC of the physbio changes necessary for unmapped I/O. These cha= nges > > have been in production at Netflix for several months with significant > > success. > > =20 >=20 > I think this breaks stable/9. >=20 > cc -c -O2 -pipe -fno-strict-aliasing -std=3Dc99 -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 > -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq > -I/src/sys/contrib/ia64/libuwx/src -D_KERNEL > -DHAVE_KERNEL_OPTION_HEADERS -include > opt_global.h -fno-common -finline-limit=3D15000 --param > inline-unit-growth=3D100 --param large-function-growth=3D1000 -fno-builtin > -mconstant-gp -ffixed-r13 -mfixed-range=3Df32-f127 -fpic -ffreestanding > -Werror /src/sys/ia64/ia32/ia32_trap.c > cc -c -O2 -pipe -fno-strict-aliasing -std=3Dc99 -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 > -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq > -I/src/sys/contrib/ia64/libuwx/src -D_KERNEL > -DHAVE_KERNEL_OPTION_HEADERS -include > opt_global.h -fno-common -finline-limit=3D15000 --param > inline-unit-growth=3D100 --param large-function-growth=3D1000 -fno-builtin > -mconstant-gp -ffixed-r13 -mfixed-range=3Df32-f127 -fpic -ffreestanding > -Werror /src/sys/ia64/ia64/autoconf.c > cc -c -O2 -pipe -fno-strict-aliasing -std=3Dc99 -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 > -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq > -I/src/sys/contrib/ia64/libuwx/src -D_KERNEL > -DHAVE_KERNEL_OPTION_HEADERS -include > opt_global.h -fno-common -finline-limit=3D15000 --param > inline-unit-growth=3D100 --param large-function-growth=3D1000 -fno-builtin > -mconstant-gp -ffixed-r13 -mfixed-range=3Df32-f127 -fpic -ffreestanding > -Werror /src/sys/ia64/ia64/bus_machdep.c > cc -c -O2 -pipe -fno-strict-aliasing -std=3Dc99 -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 > -nostdinc -I. -I/src/sys -I/src/sys/contrib/altq > -I/src/sys/contrib/ia64/libuwx/src -D_KERNEL > -DHAVE_KERNEL_OPTION_HEADERS -include > opt_global.h -fno-common -finline-limit=3D15000 --param > inline-unit-growth=3D100 --param large-function-growth=3D1000 -fno-builtin > -mconstant-gp -ffixed-r13 -mfixed-range=3Df32-f127 -fpic -ffreestanding > -Werror /src/sys/ia64/ia64/busdma_machdep.c > /src/sys/ia64/ia64/busdma_machdep.c: In function > '_bus_dmamap_count_phys': > /src/sys/ia64/ia64/busdma_machdep.c:490: error: 'paddr_max' undeclared > (first use in this function) > /src/sys/ia64/ia64/busdma_machdep.c:490: error: (Each undeclared > identifier is reported only once > /src/sys/ia64/ia64/busdma_machdep.c:490: error: for each function it > appears in.) > *** Error code 1 >=20 > Stop in /obj/ia64.ia64/src/sys/LINT. > *** Error code 1 >=20 > Stop in /src. > *** Error code 1 >=20 Looks like this is fixed, and tinderbox is lagging behind reality. Sorry for the noise. Glen --dTy3Mrz/UPE2dbVg Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.20 (FreeBSD) iQEcBAEBCAAGBQJRwQ+bAAoJEFJPDDeguUaj8DUH/3yrDl9xq39yKS0snJYsx3LF MXYUZS1QY9VGV/KxdKet+AGVfp9i9ZMmC+yuwX8fVTI+hhLb5f97SmstY96uaMsM /RfUXBUditGUFIfKIo9H9d8anDppdbb5LiqBuOCpo5JeliAFsMH0Ls3e+FzWiFk7 OWlhoSL20Mn6CdHqIAwT1d/dLObbwuJ2QsxSC4Ekc3Do+buKIB/P9gpiP7G+ao+v 3GyJmluBK22tNRkYgXu+31QvlCFvpfM9iM5FHp80D4MzQeyYUYMxD1QcTK8gbZnG nFur96HN1MRnZU0DsLyp+vU/sGbm5sWnVvIsMFZZ3aXawNjnCxBnQ4OlnjwPGoI= =n1O7 -----END PGP SIGNATURE----- --dTy3Mrz/UPE2dbVg-- From owner-svn-src-all@FreeBSD.ORG Wed Jun 19 02:16:05 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 02:30:33 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 02:55:33 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 03:08:02 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 04:47:42 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 04:57:48 2013 Return-Path: Delivered-To: svn-src-all@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 6684EB50; Wed, 19 Jun 2013 04:57:48 +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 3EA9419A3; Wed, 19 Jun 2013 04:57: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 r5J4vmJ7064111; Wed, 19 Jun 2013 04:57:48 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5J4vm9a064110; Wed, 19 Jun 2013 04:57:48 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306190457.r5J4vm9a064110@svn.freebsd.org> From: Scott Long Date: Wed, 19 Jun 2013 04:57:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251986 - stable/9/sys/cam X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 04:57:48 -0000 Author: scottl Date: Wed Jun 19 04:57:47 2013 New Revision: 251986 URL: http://svnweb.freebsd.org/changeset/base/251986 Log: Tweak the CAM_DATA flags that were added with r251874 to allow source compatibility and almost 100% binary compatibility. The old CAM_SG_LIST_PHYS flag is essentially lost in binary compatibility for legacy SIM drivers. The use of this flag is excedingly rare. Obtained from: Netflix Modified: stable/9/sys/cam/cam_ccb.h Modified: stable/9/sys/cam/cam_ccb.h ============================================================================== --- stable/9/sys/cam/cam_ccb.h Wed Jun 19 04:47:41 2013 (r251985) +++ stable/9/sys/cam/cam_ccb.h Wed Jun 19 04:57:47 2013 (r251986) @@ -63,7 +63,7 @@ typedef enum { * Perform transport negotiation * with this command. */ - CAM_DATA_ISPHYS = 0x00000010,/* Data type with physical addrs */ + CAM_DATA_ISPHYS = 0x00200000,/* Data type with physical addrs */ CAM_DIS_AUTOSENSE = 0x00000020,/* Disable autosense feature */ CAM_DIR_BOTH = 0x00000000,/* Data direction (00:IN/OUT) */ CAM_DIR_IN = 0x00000040,/* Data direction (01:DATA IN) */ @@ -71,10 +71,10 @@ typedef enum { CAM_DIR_NONE = 0x000000C0,/* Data direction (11:no data) */ CAM_DIR_MASK = 0x000000C0,/* Data direction Mask */ CAM_DATA_VADDR = 0x00000000,/* Data type (000:Virtual) */ - CAM_DATA_PADDR = 0x00000010,/* Data type (001:Physical) */ - CAM_DATA_SG = 0x00040000,/* Data type (010:sglist) */ - CAM_DATA_SG_PADDR = 0x00040010,/* Data type (011:sglist phys) */ - CAM_DATA_BIO = 0x00200000,/* Data type (100:bio) */ + CAM_DATA_PADDR = 0x00200000,/* Data type (001:Physical) */ + CAM_DATA_SG = 0x00000010,/* Data type (010:sglist) */ + CAM_DATA_SG_PADDR = 0x00200010,/* Data type (011:sglist phys) */ + CAM_DATA_BIO = 0x00040000,/* Data type (100:bio) */ CAM_DATA_MASK = 0x00240010,/* Data type mask */ CAM_SOFT_RST_OP = 0x00000100,/* Use Soft reset alternative */ CAM_ENG_SYNC = 0x00000200,/* Flush resid bytes on complete */ @@ -91,6 +91,11 @@ typedef enum { CAM_CDB_PHYS = 0x00400000,/* CDB poiner is physical */ CAM_ENG_SGLIST = 0x00800000,/* SG list is for the HBA engine */ +/* Compatibility for FreeBSD 9.x*/ + CAM_SCATTER_VALID = 0x00000010,/* These exist for src compat for*/ + CAM_SG_LIST_PHYS = 0x00200010,/* old drivers. Hardly anything */ + CAM_DATA_PHYS = 0x00200000,/* uses them. */ + /* Phase cognizant mode flags */ CAM_DIS_AUTOSRP = 0x01000000,/* Disable autosave/restore ptrs */ CAM_DIS_AUTODISC = 0x02000000,/* Disable auto disconnect */ From owner-svn-src-all@FreeBSD.ORG Wed Jun 19 05:02:26 2013 Return-Path: Delivered-To: svn-src-all@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 7D48ED07; Wed, 19 Jun 2013 05:02:26 +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 6FCEE19CB; Wed, 19 Jun 2013 05:02: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 r5J52Q4j066568; Wed, 19 Jun 2013 05:02:26 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5J52QmE066567; Wed, 19 Jun 2013 05:02:26 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306190502.r5J52QmE066567@svn.freebsd.org> From: Scott Long Date: Wed, 19 Jun 2013 05:02:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251987 - stable/9/sys/sys X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 05:02:26 -0000 Author: scottl Date: Wed Jun 19 05:02:25 2013 New Revision: 251987 URL: http://svnweb.freebsd.org/changeset/base/251987 Log: Poor man's binary compatibility of the struct bio: move the added structure members to the end of the structure. Obtained from: Netflix Modified: stable/9/sys/sys/bio.h Modified: stable/9/sys/sys/bio.h ============================================================================== --- stable/9/sys/sys/bio.h Wed Jun 19 04:57:47 2013 (r251986) +++ stable/9/sys/sys/bio.h Wed Jun 19 05:02:25 2013 (r251987) @@ -81,9 +81,6 @@ struct bio { off_t bio_offset; /* Offset into file. */ long bio_bcount; /* Valid bytes in buffer. */ caddr_t bio_data; /* Memory, superblocks, indirect etc. */ - struct vm_page **bio_ma; /* Or unmapped. */ - int bio_ma_offset; /* Offset in the first page of bio_ma. */ - int bio_ma_n; /* Number of pages in bio_ma. */ int bio_error; /* Errno for BIO_ERROR. */ long bio_resid; /* Remaining I/O in bytes. */ void (*bio_done)(struct bio *); @@ -116,6 +113,11 @@ struct bio { /* XXX: these go away when bio chaining is introduced */ daddr_t bio_pblkno; /* physical block number */ + + /* Unmapped i/o. Placed at the end in 9.x for binary compatibility. */ + struct vm_page **bio_ma; /* Physical page array. */ + int bio_ma_offset; /* Offset in first page of bio_ma. */ + int bio_ma_n; /* Number of pages in bio_ma. */ }; struct uio; From owner-svn-src-all@FreeBSD.ORG Wed Jun 19 05:05:17 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 05:11:30 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 05:12:32 2013 Return-Path: Delivered-To: svn-src-all@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 EF9FF30A; Wed, 19 Jun 2013 05:12:31 +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 E22711A04; Wed, 19 Jun 2013 05:12: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 r5J5CVgS069717; Wed, 19 Jun 2013 05:12:31 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5J5CVcS069716; Wed, 19 Jun 2013 05:12:31 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306190512.r5J5CVcS069716@svn.freebsd.org> From: Scott Long Date: Wed, 19 Jun 2013 05:12:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251990 - stable/9/sys/cam X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 05:12:32 -0000 Author: scottl Date: Wed Jun 19 05:12:31 2013 New Revision: 251990 URL: http://svnweb.freebsd.org/changeset/base/251990 Log: MFC r251989: Fix an unfortunate typo with the compat shims Obtained from: Netflix Modified: stable/9/sys/cam/cam_compat.h Modified: stable/9/sys/cam/cam_compat.h ============================================================================== --- stable/9/sys/cam/cam_compat.h Wed Jun 19 05:11:30 2013 (r251989) +++ stable/9/sys/cam/cam_compat.h Wed Jun 19 05:12:31 2013 (r251990) @@ -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-all@FreeBSD.ORG Wed Jun 19 05:38:58 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 05:50:19 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 06:14:45 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 06:26:28 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 06:32:54 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 07:28:24 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 14:14:20 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 15:01:32 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 15:12:11 2013 Return-Path: Delivered-To: svn-src-all@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 0EABCFE0; Wed, 19 Jun 2013 15:12:11 +0000 (UTC) (envelope-from marius@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 00A2F1950; Wed, 19 Jun 2013 15:12: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 r5JFCA8d060869; Wed, 19 Jun 2013 15:12:10 GMT (envelope-from marius@svn.freebsd.org) Received: (from marius@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5JFCAo9060868; Wed, 19 Jun 2013 15:12:10 GMT (envelope-from marius@svn.freebsd.org) Message-Id: <201306191512.r5JFCAo9060868@svn.freebsd.org> From: Marius Strobl Date: Wed, 19 Jun 2013 15:12:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251994 - stable/9/sys/dev/agp X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 15:12:11 -0000 Author: marius Date: Wed Jun 19 15:12:10 2013 New Revision: 251994 URL: http://svnweb.freebsd.org/changeset/base/251994 Log: MFC: r238172 (partial) Don't use Maxmem when the amount of memory is meant. Use realmem instead. Maxmem is not only a MD variable, it represents the highest physical memory address in use. On systems where memory is sparsely layed-out the highest memory address and the amount of memory are not interchangeable. Scaling the AGP aperture based on the actual amount of memory (= realmem) rather than the available memory (= physmem) makes sure there's consistent behaviour across architectures. Modified: stable/9/sys/dev/agp/agp.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/agp/agp.c ============================================================================== --- stable/9/sys/dev/agp/agp.c Wed Jun 19 13:37:29 2013 (r251993) +++ stable/9/sys/dev/agp/agp.c Wed Jun 19 15:12:10 2013 (r251994) @@ -56,7 +56,6 @@ __FBSDID("$FreeBSD$"); #include #include -#include #include #include #include @@ -235,7 +234,7 @@ agp_generic_attach(device_t dev) * Work out an upper bound for agp memory allocation. This * uses a heurisitc table from the Linux driver. */ - memsize = ptoa(Maxmem) >> 20; + memsize = ptoa(realmem) >> 20; for (i = 0; i < agp_max_size; i++) { if (memsize <= agp_max[i][0]) break; From owner-svn-src-all@FreeBSD.ORG Wed Jun 19 15:59:22 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 17:13:17 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 17:14:59 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 17:58:46 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 18:00:00 2013 Return-Path: Delivered-To: svn-src-all@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 955C5C59; Wed, 19 Jun 2013 18:00:00 +0000 (UTC) (envelope-from jh@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 87A0E1482; Wed, 19 Jun 2013 18:00: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 r5JI00QB013423; Wed, 19 Jun 2013 18:00:00 GMT (envelope-from jh@svn.freebsd.org) Received: (from jh@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5JI002h013421; Wed, 19 Jun 2013 18:00:00 GMT (envelope-from jh@svn.freebsd.org) Message-Id: <201306191800.r5JI002h013421@svn.freebsd.org> From: Jaakko Heinonen Date: Wed, 19 Jun 2013 18:00:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r251998 - stable/9/sbin/mount X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 18:00:00 -0000 Author: jh Date: Wed Jun 19 18:00:00 2013 New Revision: 251998 URL: http://svnweb.freebsd.org/changeset/base/251998 Log: MFC r251485: Revert r238399. The "failok" option doesn't have any effect at all unless specified in fstab(5) and combined with the -a flag. The "failok" option is already documented in fstab(5). PR: 177630 Modified: stable/9/sbin/mount/mount.8 Directory Properties: stable/9/sbin/mount/ (props changed) Modified: stable/9/sbin/mount/mount.8 ============================================================================== --- stable/9/sbin/mount/mount.8 Wed Jun 19 17:14:59 2013 (r251997) +++ stable/9/sbin/mount/mount.8 Wed Jun 19 18:00:00 2013 (r251998) @@ -28,7 +28,7 @@ .\" @(#)mount.8 8.8 (Berkeley) 6/16/94 .\" $FreeBSD$ .\" -.Dd July 12, 2012 +.Dd June 6, 2011 .Dt MOUNT 8 .Os .Sh NAME @@ -145,11 +145,6 @@ When used with the .Fl u flag, this is the same as specifying the options currently in effect for the mounted file system. -.It Cm failok -If this option is specified, -.Nm -will return 0 even if an error occurs -during the mount of the filesystem. .It Cm force The same as .Fl f ; From owner-svn-src-all@FreeBSD.ORG Wed Jun 19 18:01:38 2013 Return-Path: Delivered-To: svn-src-all@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 EF9C6F06; Wed, 19 Jun 2013 18:01:37 +0000 (UTC) (envelope-from jh@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 DC31A15D2; Wed, 19 Jun 2013 18:01: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 r5JI1bUZ015547; Wed, 19 Jun 2013 18:01:37 GMT (envelope-from jh@svn.freebsd.org) Received: (from jh@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5JI1bu8015546; Wed, 19 Jun 2013 18:01:37 GMT (envelope-from jh@svn.freebsd.org) Message-Id: <201306191801.r5JI1bu8015546@svn.freebsd.org> From: Jaakko Heinonen Date: Wed, 19 Jun 2013 18:01:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r251999 - stable/8/sbin/mount X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 18:01:38 -0000 Author: jh Date: Wed Jun 19 18:01:37 2013 New Revision: 251999 URL: http://svnweb.freebsd.org/changeset/base/251999 Log: MFC r251485: Revert r238399. The "failok" option doesn't have any effect at all unless specified in fstab(5) and combined with the -a flag. The "failok" option is already documented in fstab(5). PR: 177630 Modified: stable/8/sbin/mount/mount.8 Directory Properties: stable/8/sbin/mount/ (props changed) Modified: stable/8/sbin/mount/mount.8 ============================================================================== --- stable/8/sbin/mount/mount.8 Wed Jun 19 18:00:00 2013 (r251998) +++ stable/8/sbin/mount/mount.8 Wed Jun 19 18:01:37 2013 (r251999) @@ -28,7 +28,7 @@ .\" @(#)mount.8 8.8 (Berkeley) 6/16/94 .\" $FreeBSD$ .\" -.Dd July 12, 2012 +.Dd June 6, 2011 .Dt MOUNT 8 .Os .Sh NAME @@ -145,11 +145,6 @@ When used with the .Fl u flag, this is the same as specifying the options currently in effect for the mounted file system. -.It Cm failok -If this option is specified, -.Nm -will return 0 even if an error occurs -during the mount of the filesystem. .It Cm force The same as .Fl f ; From owner-svn-src-all@FreeBSD.ORG Wed Jun 19 18:14:00 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 18:32:19 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 18:44:55 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 19:44:58 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 20:48:35 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 20:56:46 2013 Return-Path: Delivered-To: svn-src-all@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 01F3ABDA; Wed, 19 Jun 2013 20:56:46 +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 E784C1E4B; Wed, 19 Jun 2013 20:56: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 r5JKujKD073972; Wed, 19 Jun 2013 20:56:45 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5JKuid4073966; Wed, 19 Jun 2013 20:56:44 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201306192056.r5JKuid4073966@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Wed, 19 Jun 2013 20:56:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252008 - stable/9/sys/fs/ext2fs X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 20:56:46 -0000 Author: pfg Date: Wed Jun 19 20:56:44 2013 New Revision: 252008 URL: http://svnweb.freebsd.org/changeset/base/252008 Log: MFC r251658, 251823: Turn DIAGNOSTICs to INVARIANTS in ext2fs. following other filesystems. Modified: stable/9/sys/fs/ext2fs/ext2_alloc.c stable/9/sys/fs/ext2fs/ext2_balloc.c stable/9/sys/fs/ext2fs/ext2_bmap.c stable/9/sys/fs/ext2fs/ext2_inode.c stable/9/sys/fs/ext2fs/ext2_lookup.c stable/9/sys/fs/ext2fs/ext2_vnops.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/fs/ (props changed) Modified: stable/9/sys/fs/ext2fs/ext2_alloc.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_alloc.c Wed Jun 19 20:48:34 2013 (r252007) +++ stable/9/sys/fs/ext2fs/ext2_alloc.c Wed Jun 19 20:56:44 2013 (r252008) @@ -91,7 +91,7 @@ ext2_alloc(struct inode *ip, int32_t lbn fs = ip->i_e2fs; ump = ip->i_ump; mtx_assert(EXT2_MTX(ump), MA_OWNED); -#ifdef DIAGNOSTIC +#ifdef INVARIANTS if ((u_int)size > fs->e2fs_bsize || blkoff(fs, size) != 0) { vn_printf(ip->i_devvp, "bsize = %lu, size = %d, fs = %s\n", (long unsigned int)fs->e2fs_bsize, size, fs->e2fs_fsmnt); @@ -99,7 +99,7 @@ ext2_alloc(struct inode *ip, int32_t lbn } if (cred == NOCRED) panic("ext2_alloc: missing credential"); -#endif /* DIAGNOSTIC */ +#endif /* INVARIANTS */ if (size == fs->e2fs_bsize && fs->e2fs->e2fs_fbcount == 0) goto nospace; if (cred->cr_uid != 0 && @@ -183,7 +183,7 @@ ext2_reallocblks(struct vop_reallocblks_ len = buflist->bs_nchildren; start_lbn = buflist->bs_children[0]->b_lblkno; end_lbn = start_lbn + len - 1; -#ifdef DIAGNOSTIC +#ifdef INVARIANTS for (i = 1; i < len; i++) if (buflist->bs_children[i]->b_lblkno != start_lbn + i) panic("ext2_reallocblks: non-cluster"); @@ -232,7 +232,7 @@ ext2_reallocblks(struct vop_reallocblks_ if (end_lvl == 0 || (idp = &end_ap[end_lvl - 1])->in_off + 1 >= len) { ssize = len; } else { -#ifdef DIAGNOSTIC +#ifdef INVARIANTS if (start_ap[start_lvl-1].in_lbn == idp->in_lbn) panic("ext2_reallocblks: start == end"); #endif @@ -271,7 +271,7 @@ ext2_reallocblks(struct vop_reallocblks_ bap = ebap; soff = -i; } -#ifdef DIAGNOSTIC +#ifdef INVARIANTS if (buflist->bs_children[i]->b_blkno != fsbtodb(fs, *bap)) panic("ext2_reallocblks: alloc mismatch"); #endif @@ -748,7 +748,7 @@ retry: return (0); } gotit: -#ifdef DIAGNOSTIC +#ifdef INVARIANTS if (isset(bbp, bno)) { printf("ext2fs_alloccgblk: cg=%d bno=%jd fs=%s\n", cg, (intmax_t)bno, fs->e2fs_fsmnt); Modified: stable/9/sys/fs/ext2fs/ext2_balloc.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_balloc.c Wed Jun 19 20:48:34 2013 (r252007) +++ stable/9/sys/fs/ext2fs/ext2_balloc.c Wed Jun 19 20:56:44 2013 (r252008) @@ -152,7 +152,7 @@ ext2_balloc(struct inode *ip, int32_t lb pref = 0; if ((error = ext2_getlbns(vp, lbn, indirs, &num)) != 0) return (error); -#ifdef DIAGNOSTIC +#ifdef INVARIANTS if (num < 1) panic ("ext2_balloc: ext2_getlbns returned indirect block"); #endif Modified: stable/9/sys/fs/ext2fs/ext2_bmap.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_bmap.c Wed Jun 19 20:48:34 2013 (r252007) +++ stable/9/sys/fs/ext2fs/ext2_bmap.c Wed Jun 19 20:56:44 2013 (r252008) @@ -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 Modified: stable/9/sys/fs/ext2fs/ext2_inode.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_inode.c Wed Jun 19 20:48:34 2013 (r252007) +++ stable/9/sys/fs/ext2fs/ext2_inode.c Wed Jun 19 20:56:44 2013 (r252008) @@ -132,7 +132,7 @@ ext2_truncate(struct vnode *vp, off_t le if (ovp->v_type == VLNK && oip->i_size < ovp->v_mount->mnt_maxsymlinklen) { -#ifdef DIAGNOSTIC +#ifdef INVARIANTS if (length != 0) panic("ext2_truncate: partial truncate of symlink"); #endif @@ -318,7 +318,7 @@ ext2_truncate(struct vnode *vp, off_t le } } done: -#ifdef DIAGNOSTIC +#ifdef INVARIANTS for (level = SINGLE; level <= TRIPLE; level++) if (newblks[NDADDR + level] != oip->i_ib[level]) panic("itrunc1"); @@ -330,7 +330,7 @@ done: bo->bo_clean.bv_cnt != 0)) panic("itrunc3"); BO_UNLOCK(bo); -#endif /* DIAGNOSTIC */ +#endif /* INVARIANTS */ /* * Put back the real size. */ Modified: stable/9/sys/fs/ext2fs/ext2_lookup.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_lookup.c Wed Jun 19 20:48:34 2013 (r252007) +++ stable/9/sys/fs/ext2fs/ext2_lookup.c Wed Jun 19 20:56:44 2013 (r252008) @@ -62,7 +62,7 @@ #include #include -#ifdef DIAGNOSTIC +#ifdef INVARIANTS static int dirchk = 1; #else static int dirchk = 0; @@ -790,7 +790,7 @@ ext2_direnter(struct inode *ip, struct v int DIRBLKSIZ = ip->i_e2fs->e2fs_bsize; -#ifdef DIAGNOSTIC +#ifdef INVARIANTS if ((cnp->cn_flags & SAVENAME) == 0) panic("ext2_direnter: missing name"); #endif Modified: stable/9/sys/fs/ext2fs/ext2_vnops.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_vnops.c Wed Jun 19 20:48:34 2013 (r252007) +++ stable/9/sys/fs/ext2fs/ext2_vnops.c Wed Jun 19 20:56:44 2013 (r252008) @@ -663,7 +663,7 @@ ext2_link(struct vop_link_args *ap) struct inode *ip; int error; -#ifdef DIAGNOSTIC +#ifdef INVARIANTS if ((cnp->cn_flags & HASBUF) == 0) panic("ext2_link: no name"); #endif @@ -732,7 +732,7 @@ ext2_rename(struct vop_rename_args *ap) int error = 0; u_char namlen; -#ifdef DIAGNOSTIC +#ifdef INVARIANTS if ((tcnp->cn_flags & HASBUF) == 0 || (fcnp->cn_flags & HASBUF) == 0) panic("ext2_rename: no name"); @@ -1083,7 +1083,7 @@ ext2_mkdir(struct vop_mkdir_args *ap) struct dirtemplate dirtemplate, *dtp; int error, dmode; -#ifdef DIAGNOSTIC +#ifdef INVARIANTS if ((cnp->cn_flags & HASBUF) == 0) panic("ext2_mkdir: no name"); #endif @@ -1492,7 +1492,7 @@ ext2_makeinode(int mode, struct vnode *d int error; pdir = VTOI(dvp); -#ifdef DIAGNOSTIC +#ifdef INVARIANTS if ((cnp->cn_flags & HASBUF) == 0) panic("ext2_makeinode: no name"); #endif From owner-svn-src-all@FreeBSD.ORG Wed Jun 19 21:50:17 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 21:52:32 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 22:50:07 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 23:09:11 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Wed Jun 19 23:10:09 2013 Return-Path: Delivered-To: svn-src-all@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 9EC85BF7 for ; Wed, 19 Jun 2013 23:10:09 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from mail-ye0-f171.google.com (mail-ye0-f171.google.com [209.85.213.171]) by mx1.freebsd.org (Postfix) with ESMTP id 6142C1635 for ; Wed, 19 Jun 2013 23:10:09 +0000 (UTC) Received: by mail-ye0-f171.google.com with SMTP id q14so1965320yen.2 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=R8VCeJw6j0/jJvBLzIFbPH97R6oVPLMSUHwCEtdGr8VJvxoHicNwH/OpskOTwKgPd3 a/AZ1xSzOawGNt5keXrL749Vs1SoQbH5YY4qfzioMLYk6etBOyWkLA8E87r0OI3OACKH S4JaVJtoUh14Nt9dDSMIBTTvVrpBQrSjtxtMwvvPEUpK2KzQnlwDVpK71whwzYeoFJw3 t4bEIO6kteobv7ffPTJoz/929z03f4ptfGRXUXqBuCj1WKN/aB4ha3zTeUzh/hu8YlYe 9ThpCxCteCIDENm0loZwL/JXLQtth6/96vkb2KKc0nZqp9SOm0/HQStdHdYJemdAigVS kmwA== 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: ALoCoQlRpag30/OQ7X0qDIaGhfdYQGI0KZ2DUpLC3ThGb83IUAYbZ4oLOD3i6jnB62fzrVdVvvzD 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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Jun 2013 23:10:09 -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-all@FreeBSD.ORG Thu Jun 20 00:00:34 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 02:22:02 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 02:26:33 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 02:29:49 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 03:55:42 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 6B18EC3E; Thu, 20 Jun 2013 03:55:42 +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 5DB281690; Thu, 20 Jun 2013 03:55: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 r5K3tgtv035374; Thu, 20 Jun 2013 03:55:42 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5K3tgp5035373; Thu, 20 Jun 2013 03:55:42 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201306200355.r5K3tgp5035373@svn.freebsd.org> From: Peter Wemm Date: Thu, 20 Jun 2013 03:55:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-svnadmin@freebsd.org Subject: svn commit: r252016 - svnadmin/hooks/scripts X-SVN-Group: svnadmin MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 03:55:42 -0000 Author: peter Date: Thu Jun 20 03:55:41 2013 New Revision: 252016 URL: http://svnweb.freebsd.org/changeset/base/252016 Log: Move /usr/local/bin in front of /usr/bin, just to be sure. Modified: svnadmin/hooks/scripts/env.sh Modified: svnadmin/hooks/scripts/env.sh ============================================================================== --- svnadmin/hooks/scripts/env.sh Thu Jun 20 02:29:49 2013 (r252015) +++ svnadmin/hooks/scripts/env.sh Thu Jun 20 03:55:41 2013 (r252016) @@ -1,6 +1,6 @@ # source this file # $FreeBSD$ -PATH=/s/svn/base/hooks/scripts:/usr/bin:/bin:/usr/local/bin:/usr/sbin:/sbin:/usr/local/sbin +PATH=/s/svn/base/hooks/scripts:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin export PATH cd /s/svn/base umask 002 From owner-svn-src-all@FreeBSD.ORG Thu Jun 20 05:40:12 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 05:42:21 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 05:48:10 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 05:51:45 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 07:23:06 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 2740F3B3; Thu, 20 Jun 2013 07:23:06 +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 093181EE1; Thu, 20 Jun 2013 07:23:06 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5K7N5J6062693; Thu, 20 Jun 2013 07:23:05 GMT (envelope-from hrs@svn.freebsd.org) Received: (from hrs@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5K7N4rd062682; Thu, 20 Jun 2013 07:23:04 GMT (envelope-from hrs@svn.freebsd.org) Message-Id: <201306200723.r5K7N4rd062682@svn.freebsd.org> From: Hiroki Sato Date: Thu, 20 Jun 2013 07:23:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252021 - in stable/9: sbin/ping6 sys/netinet sys/netinet6 X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 07:23:06 -0000 Author: hrs Date: Thu Jun 20 07:23:04 2013 New Revision: 252021 URL: http://svnweb.freebsd.org/changeset/base/252021 Log: MFC r250251: Use FF02:0:0:0:0:2:FF00::/104 prefix for IPv6 Node Information Group Address. Although KAME implementation used FF02:0:0:0:0:2::/96 based on older versions of draft-ietf-ipngwg-icmp-name-lookup, it has been changed in RFC 4620. The kernel always joins the /104-prefixed address, and additionally does /96-prefixed one only when net.inet6.icmp6.nodeinfo_oldmcprefix=1. The default value of the sysctl is 1. ping6(8) -N flag now uses /104-prefixed one. When this flag is specified twice, it uses /96-prefixed one instead. Reviewed by: ume Based on work by: Thomas Scheffler PR: conf/174957 Modified: stable/9/sbin/ping6/ping6.8 stable/9/sbin/ping6/ping6.c stable/9/sys/netinet/icmp6.h stable/9/sys/netinet6/in6.c stable/9/sys/netinet6/in6_ifattach.c stable/9/sys/netinet6/in6_ifattach.h stable/9/sys/netinet6/in6_proto.c Modified: stable/9/sbin/ping6/ping6.8 ============================================================================== --- stable/9/sbin/ping6/ping6.8 Thu Jun 20 05:51:44 2013 (r252020) +++ stable/9/sbin/ping6/ping6.8 Thu Jun 20 07:23:04 2013 (r252021) @@ -29,7 +29,7 @@ .\" .\" $FreeBSD$ .\" -.Dd April 20, 2010 +.Dd May 5, 2013 .Dt PING6 8 .Os .Sh NAME @@ -215,8 +215,8 @@ unicast and multicast packets. Numeric output only. No attempt will be made to lookup symbolic names from addresses in the reply. .It Fl N -Probe node information multicast group -.Pq Li ff02::2:xxxx:xxxx . +Probe node information multicast group address +.Pq Li ff02::2:ffxx:xxxx . .Ar host must be string hostname of the target (must not be a numeric IPv6 address). @@ -227,6 +227,15 @@ Since node information multicast group i outgoing interface needs to be specified by .Fl I option. +.Pp +When specified twice, the address +.Pq Li ff02::2:xxxx:xxxx +is used instead. +The former is in RFC 4620, the latter is in an old Internet Draft +draft-ietf-ipngwg-icmp-name-lookup. +Note that KAME-derived implementations including +.Fx +use the latter. .It Fl o Exit successfully after receiving one reply packet. .It Fl p Ar pattern Modified: stable/9/sbin/ping6/ping6.c ============================================================================== --- stable/9/sbin/ping6/ping6.c Thu Jun 20 05:51:44 2013 (r252020) +++ stable/9/sbin/ping6/ping6.c Thu Jun 20 07:23:04 2013 (r252021) @@ -287,7 +287,7 @@ void pr_retip(struct ip6_hdr *, u_char void summary(void); void tvsub(struct timeval *, struct timeval *); int setpolicy(int, char *); -char *nigroup(char *); +char *nigroup(char *, int); void usage(void); int @@ -306,6 +306,7 @@ main(int argc, char *argv[]) struct addrinfo hints; int cc, i; int ch, hold, packlen, preload, optval, ret_ga; + int nig_oldmcprefix = -1; u_char *datap; char *e, *target, *ifname = NULL, *gateway = NULL; int ip6optlen = 0; @@ -490,6 +491,7 @@ main(int argc, char *argv[]) break; case 'N': options |= F_NIGROUP; + nig_oldmcprefix++; break; case 'o': options |= F_ONCE; @@ -605,7 +607,7 @@ main(int argc, char *argv[]) } if (options & F_NIGROUP) { - target = nigroup(argv[argc - 1]); + target = nigroup(argv[argc - 1], nig_oldmcprefix); if (target == NULL) { usage(); /*NOTREACHED*/ @@ -2721,7 +2723,7 @@ setpolicy(int so __unused, char *policy) #endif char * -nigroup(char *name) +nigroup(char *name, int nig_oldmcprefix) { char *p; char *q; @@ -2731,6 +2733,7 @@ nigroup(char *name) size_t l; char hbuf[NI_MAXHOST]; struct in6_addr in6; + int valid; p = strchr(name, '.'); if (!p) @@ -2746,7 +2749,7 @@ nigroup(char *name) *q = tolower(*(unsigned char *)q); } - /* generate 8 bytes of pseudo-random value. */ + /* generate 16 bytes of pseudo-random value. */ memset(&ctxt, 0, sizeof(ctxt)); MD5Init(&ctxt); c = l & 0xff; @@ -2754,9 +2757,23 @@ nigroup(char *name) MD5Update(&ctxt, (unsigned char *)name, l); MD5Final(digest, &ctxt); - if (inet_pton(AF_INET6, "ff02::2:0000:0000", &in6) != 1) + if (nig_oldmcprefix) { + /* draft-ietf-ipngwg-icmp-name-lookup */ + valid = inet_pton(AF_INET6, "ff02::2:0000:0000", &in6); + } else { + /* RFC 4620 */ + valid = inet_pton(AF_INET6, "ff02::2:ff00:0000", &in6); + } + if (valid != 1) return NULL; /*XXX*/ - bcopy(digest, &in6.s6_addr[12], 4); + + if (nig_oldmcprefix) { + /* draft-ietf-ipngwg-icmp-name-lookup */ + bcopy(digest, &in6.s6_addr[12], 4); + } else { + /* RFC 4620 */ + bcopy(digest, &in6.s6_addr[13], 3); + } if (inet_ntop(AF_INET6, &in6, hbuf, sizeof(hbuf)) == NULL) return NULL; Modified: stable/9/sys/netinet/icmp6.h ============================================================================== --- stable/9/sys/netinet/icmp6.h Thu Jun 20 05:51:44 2013 (r252020) +++ stable/9/sys/netinet/icmp6.h Thu Jun 20 07:23:04 2013 (r252021) @@ -659,7 +659,8 @@ void kmod_icmp6stat_inc(int statnum); #define ICMPV6CTL_MLD_SOMAXSRC 22 #define ICMPV6CTL_MLD_VERSION 23 #define ICMPV6CTL_ND6_MAXQLEN 24 -#define ICMPV6CTL_MAXID 25 +#define ICMPV6CTL_NODEINFO_OLDMCPREFIX 25 +#define ICMPV6CTL_MAXID 26 #define RTF_PROBEMTU RTF_PROTO1 Modified: stable/9/sys/netinet6/in6.c ============================================================================== --- stable/9/sys/netinet6/in6.c Thu Jun 20 05:51:44 2013 (r252020) +++ stable/9/sys/netinet6/in6.c Thu Jun 20 07:23:04 2013 (r252021) @@ -105,6 +105,9 @@ __FBSDID("$FreeBSD$"); #include #include +VNET_DECLARE(int, icmp6_nodeinfo_oldmcprefix); +#define V_icmp6_nodeinfo_oldmcprefix VNET(icmp6_nodeinfo_oldmcprefix) + /* * Definitions of some costant IP6 addresses. */ @@ -921,6 +924,17 @@ in6_update_ifa_join_mc(struct ifnet *ifp else LIST_INSERT_HEAD(&ia->ia6_memberships, imm, i6mm_chain); } + if (V_icmp6_nodeinfo_oldmcprefix && + in6_nigroup_oldmcprefix(ifp, NULL, -1, &mltaddr.sin6_addr) == 0) { + imm = in6_joingroup(ifp, &mltaddr.sin6_addr, &error, delay); + if (imm == NULL) + nd6log((LOG_WARNING, "%s: addmulti failed for %s on %s " + "(errno=%d)\n", __func__, ip6_sprintf(ip6buf, + &mltaddr.sin6_addr), if_name(ifp), error)); + /* XXX not very fatal, go on... */ + else + LIST_INSERT_HEAD(&ia->ia6_memberships, imm, i6mm_chain); + } /* * Join interface-local all-nodes address. Modified: stable/9/sys/netinet6/in6_ifattach.c ============================================================================== --- stable/9/sys/netinet6/in6_ifattach.c Thu Jun 20 05:51:44 2013 (r252020) +++ stable/9/sys/netinet6/in6_ifattach.c Thu Jun 20 07:23:04 2013 (r252021) @@ -616,13 +616,16 @@ in6_ifattach_loopback(struct ifnet *ifp) /* * compute NI group address, based on the current hostname setting. - * see draft-ietf-ipngwg-icmp-name-lookup-* (04 and later). + * see RFC 4620. * * when ifp == NULL, the caller is responsible for filling scopeid. + * + * If oldmcprefix == 1, FF02:0:0:0:0:2::/96 is used for NI group address + * while it is FF02:0:0:0:0:2:FF00::/104 in RFC 4620. */ -int -in6_nigroup(struct ifnet *ifp, const char *name, int namelen, - struct in6_addr *in6) +static int +in6_nigroup0(struct ifnet *ifp, const char *name, int namelen, + struct in6_addr *in6, int oldmcprefix) { struct prison *pr; const char *p; @@ -667,7 +670,7 @@ in6_nigroup(struct ifnet *ifp, const cha *q = *q - 'A' + 'a'; } - /* generate 8 bytes of pseudo-random value. */ + /* generate 16 bytes of pseudo-random value. */ bzero(&ctxt, sizeof(ctxt)); MD5Init(&ctxt); MD5Update(&ctxt, &l, sizeof(l)); @@ -677,13 +680,36 @@ in6_nigroup(struct ifnet *ifp, const cha bzero(in6, sizeof(*in6)); in6->s6_addr16[0] = IPV6_ADDR_INT16_MLL; in6->s6_addr8[11] = 2; - bcopy(digest, &in6->s6_addr32[3], sizeof(in6->s6_addr32[3])); + if (oldmcprefix == 0) { + in6->s6_addr8[12] = 0xff; + /* Copy the first 24 bits of 128-bit hash into the address. */ + bcopy(digest, &in6->s6_addr8[13], 3); + } else { + /* Copy the first 32 bits of 128-bit hash into the address. */ + bcopy(digest, &in6->s6_addr32[3], sizeof(in6->s6_addr32[3])); + } if (in6_setscope(in6, ifp, NULL)) return (-1); /* XXX: should not fail */ return 0; } +int +in6_nigroup(struct ifnet *ifp, const char *name, int namelen, + struct in6_addr *in6) +{ + + return (in6_nigroup0(ifp, name, namelen, in6, 0)); +} + +int +in6_nigroup_oldmcprefix(struct ifnet *ifp, const char *name, int namelen, + struct in6_addr *in6) +{ + + return (in6_nigroup0(ifp, name, namelen, in6, 1)); +} + /* * XXX multiple loopback interface needs more care. for instance, * nodelocal address needs to be configured onto only one of them. Modified: stable/9/sys/netinet6/in6_ifattach.h ============================================================================== --- stable/9/sys/netinet6/in6_ifattach.h Thu Jun 20 05:51:44 2013 (r252020) +++ stable/9/sys/netinet6/in6_ifattach.h Thu Jun 20 07:23:04 2013 (r252021) @@ -40,6 +40,7 @@ int in6_get_tmpifid(struct ifnet *, u_in void in6_tmpaddrtimer(void *); int in6_get_hw_ifid(struct ifnet *, struct in6_addr *); int in6_nigroup(struct ifnet *, const char *, int, struct in6_addr *); +int in6_nigroup_oldmcprefix(struct ifnet *, const char *, int, struct in6_addr *); #endif /* _KERNEL */ #endif /* _NETINET6_IN6_IFATTACH_H_ */ Modified: stable/9/sys/netinet6/in6_proto.c ============================================================================== --- stable/9/sys/netinet6/in6_proto.c Thu Jun 20 05:51:44 2013 (r252020) +++ stable/9/sys/netinet6/in6_proto.c Thu Jun 20 07:23:04 2013 (r252021) @@ -448,6 +448,7 @@ VNET_DEFINE(int, icmp6errppslim) = 100; /* control how to respond to NI queries */ VNET_DEFINE(int, icmp6_nodeinfo) = (ICMP6_NODEINFO_FQDNOK|ICMP6_NODEINFO_NODEADDROK); +VNET_DEFINE(int, icmp6_nodeinfo_oldmcprefix) = 1; /* UDP on IP6 parameters */ VNET_DEFINE(int, udp6_sendspace) = 9216;/* really max datagram size */ @@ -617,6 +618,11 @@ SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6 CTLFLAG_RW, &VNET_NAME(nd6_useloopback), 0, ""); SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_NODEINFO, nodeinfo, CTLFLAG_RW, &VNET_NAME(icmp6_nodeinfo), 0, ""); +SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_NODEINFO_OLDMCPREFIX, + nodeinfo_oldmcprefix, CTLFLAG_RW, + &VNET_NAME(icmp6_nodeinfo_oldmcprefix), 0, + "Join old IPv6 NI group address in draft-ietf-ipngwg-icmp-name-lookup" + " for compatibility with KAME implememtation."); SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_ERRPPSLIMIT, errppslimit, CTLFLAG_RW, &VNET_NAME(icmp6errppslim), 0, ""); SYSCTL_VNET_INT(_net_inet6_icmp6, ICMPV6CTL_ND6_MAXNUDHINT, nd6_maxnudhint, From owner-svn-src-all@FreeBSD.ORG Thu Jun 20 07:29:43 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 07:30:13 2013 Return-Path: Delivered-To: svn-src-all@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 E656A7CC; Thu, 20 Jun 2013 07:30:13 +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 D8C801F5C; Thu, 20 Jun 2013 07:30: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 r5K7UDOm063873; Thu, 20 Jun 2013 07:30:13 GMT (envelope-from hrs@svn.freebsd.org) Received: (from hrs@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5K7UDAU063871; Thu, 20 Jun 2013 07:30:13 GMT (envelope-from hrs@svn.freebsd.org) Message-Id: <201306200730.r5K7UDAU063871@svn.freebsd.org> From: Hiroki Sato Date: Thu, 20 Jun 2013 07:30:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252023 - in stable/9/sys: net netinet X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 07:30:14 -0000 Author: hrs Date: Thu Jun 20 07:30:13 2013 New Revision: 252023 URL: http://svnweb.freebsd.org/changeset/base/252023 Log: MFC r250523: Add IFF_MONITOR support to gre(4). Tested by: Chip Marshall Modified: stable/9/sys/net/if_gre.c stable/9/sys/netinet/ip_gre.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/net/if_gre.c ============================================================================== --- stable/9/sys/net/if_gre.c Thu Jun 20 07:29:42 2013 (r252022) +++ stable/9/sys/net/if_gre.c Thu Jun 20 07:30:13 2013 (r252023) @@ -343,6 +343,12 @@ gre_output(struct ifnet *ifp, struct mbu bpf_mtap2(ifp->if_bpf, &af, sizeof(af), m); } + if ((ifp->if_flags & IFF_MONITOR) != 0) { + m_freem(m); + error = ENETDOWN; + goto end; + } + m->m_flags &= ~(M_BCAST|M_MCAST); if (sc->g_proto == IPPROTO_MOBILE) { Modified: stable/9/sys/netinet/ip_gre.c ============================================================================== --- stable/9/sys/netinet/ip_gre.c Thu Jun 20 07:29:42 2013 (r252022) +++ stable/9/sys/netinet/ip_gre.c Thu Jun 20 07:30:13 2013 (r252023) @@ -205,6 +205,11 @@ gre_input2(struct mbuf *m ,int hlen, u_c bpf_mtap2(GRE2IFP(sc)->if_bpf, &af, sizeof(af), m); } + if ((GRE2IFP(sc)->if_flags & IFF_MONITOR) != 0) { + m_freem(m); + return(NULL); + } + m->m_pkthdr.rcvif = GRE2IFP(sc); netisr_queue(isr, m); @@ -289,6 +294,11 @@ gre_mobile_input(struct mbuf *m, int hle bpf_mtap2(GRE2IFP(sc)->if_bpf, &af, sizeof(af), m); } + if ((GRE2IFP(sc)->if_flags & IFF_MONITOR) != 0) { + m_freem(m); + return; + } + m->m_pkthdr.rcvif = GRE2IFP(sc); netisr_queue(NETISR_IP, m); From owner-svn-src-all@FreeBSD.ORG Thu Jun 20 07:56:06 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 483F82AA; Thu, 20 Jun 2013 07:56:06 +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 20DB61120; Thu, 20 Jun 2013 07:56:06 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5K7u5h7072351; Thu, 20 Jun 2013 07:56:05 GMT (envelope-from hrs@svn.freebsd.org) Received: (from hrs@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5K7u5Lt072350; Thu, 20 Jun 2013 07:56:05 GMT (envelope-from hrs@svn.freebsd.org) Message-Id: <201306200756.r5K7u5Lt072350@svn.freebsd.org> From: Hiroki Sato Date: Thu, 20 Jun 2013 07:56:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252024 - in stable/9: sbin/ping6 sys X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 07:56:06 -0000 Author: hrs Date: Thu Jun 20 07:56:05 2013 New Revision: 252024 URL: http://svnweb.freebsd.org/changeset/base/252024 Log: Fix mergeinfo. Modified: Directory Properties: stable/9/sbin/ping6/ (props changed) stable/9/sys/ (props changed) From owner-svn-src-all@FreeBSD.ORG Thu Jun 20 08:19:30 2013 Return-Path: Delivered-To: svn-src-all@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 7EED9C64; Thu, 20 Jun 2013 08:19: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 7168D123F; Thu, 20 Jun 2013 08:19: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 r5K8JUww079706; Thu, 20 Jun 2013 08:19:30 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5K8JU6M079705; Thu, 20 Jun 2013 08:19:30 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306200819.r5K8JU6M079705@svn.freebsd.org> From: Devin Teske Date: Thu, 20 Jun 2013 08:19:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252025 - stable/9/usr.sbin/sysinstall X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 08:19:30 -0000 Author: dteske Date: Thu Jun 20 08:19:29 2013 New Revision: 252025 URL: http://svnweb.freebsd.org/changeset/base/252025 Log: Fix a copy/paste error introduced by r248313 (s/ftp/http/ in menu text). MFC after: 3 days Modified: stable/9/usr.sbin/sysinstall/menus.c Modified: stable/9/usr.sbin/sysinstall/menus.c ============================================================================== --- stable/9/usr.sbin/sysinstall/menus.c Thu Jun 20 07:56:05 2013 (r252024) +++ stable/9/usr.sbin/sysinstall/menus.c Thu Jun 20 08:19:29 2013 (r252025) @@ -891,7 +891,7 @@ DMenu MenuMediaHTTPDirect = { "guaranteed to carry the full range of possible distributions.", "Select a site that's close!", NULL, - { { "URL", "Specify some other ftp site by URL", NULL, dmenuSetVariable, NULL, + { { "URL", "Specify some other http site by URL", NULL, dmenuSetVariable, NULL, VAR_HTTP_PATH "=other" }, { NULL } } From owner-svn-src-all@FreeBSD.ORG Thu Jun 20 08:41:01 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 09:55:55 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 11:24:39 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 80E7DBD1; Thu, 20 Jun 2013 11:24:39 +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 70B7B1DF1; Thu, 20 Jun 2013 11:24: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 r5KBOdl8090116; Thu, 20 Jun 2013 11:24:39 GMT (envelope-from smh@svn.freebsd.org) Received: (from smh@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KBOdJF090115; Thu, 20 Jun 2013 11:24:39 GMT (envelope-from smh@svn.freebsd.org) Message-Id: <201306201124.r5KBOdJF090115@svn.freebsd.org> From: Steven Hartland Date: Thu, 20 Jun 2013 11:24:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252027 - stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 11:24:39 -0000 Author: smh Date: Thu Jun 20 11:24:38 2013 New Revision: 252027 URL: http://svnweb.freebsd.org/changeset/base/252027 Log: MFC r248573: Don't register repair writes in the trim map. Modified: stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/cddl/contrib/opensolaris/ (props changed) Modified: stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c ============================================================================== --- stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c Thu Jun 20 09:55:53 2013 (r252026) +++ stable/9/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c Thu Jun 20 11:24:38 2013 (r252027) @@ -2553,7 +2553,13 @@ zio_vdev_io_start(zio_t *zio) } } - if (vd->vdev_ops->vdev_op_leaf && zio->io_type == ZIO_TYPE_WRITE) { + /* + * Note that we ignore repair writes for TRIM because they can conflict + * with normal writes. This isn't an issue because, by definition, we + * only repair blocks that aren't freed. + */ + if (vd->vdev_ops->vdev_op_leaf && zio->io_type == ZIO_TYPE_WRITE && + !(zio->io_flags & ZIO_FLAG_IO_REPAIR)) { if (!trim_map_write_start(zio)) return (ZIO_PIPELINE_STOP); } @@ -2575,13 +2581,12 @@ zio_vdev_io_done(zio_t *zio) zio->io_type == ZIO_TYPE_WRITE || zio->io_type == ZIO_TYPE_FREE); if (vd != NULL && vd->vdev_ops->vdev_op_leaf && - zio->io_type == ZIO_TYPE_WRITE) { - trim_map_write_done(zio); - } - - if (vd != NULL && vd->vdev_ops->vdev_op_leaf && (zio->io_type == ZIO_TYPE_READ || zio->io_type == ZIO_TYPE_WRITE)) { + if (zio->io_type == ZIO_TYPE_WRITE && + !(zio->io_flags & ZIO_FLAG_IO_REPAIR)) + trim_map_write_done(zio); + vdev_queue_io_done(zio); if (zio->io_type == ZIO_TYPE_WRITE) From owner-svn-src-all@FreeBSD.ORG Thu Jun 20 11:29:50 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 8C4B6DE3; Thu, 20 Jun 2013 11:29:50 +0000 (UTC) (envelope-from ronald-freebsd8@klop.yi.org) Received: from smarthost1.greenhost.nl (smarthost1.greenhost.nl [195.190.28.81]) by mx1.freebsd.org (Postfix) with ESMTP id 3ED751E3E; Thu, 20 Jun 2013 11:29:46 +0000 (UTC) Received: from smtp.greenhost.nl ([213.108.104.138]) by smarthost1.greenhost.nl with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.69) (envelope-from ) id 1Upd3g-0005bJ-Br; Thu, 20 Jun 2013 13:29:44 +0200 Received: from [81.21.138.17] (helo=ronaldradial.versatec.local) by smtp.greenhost.nl with esmtpsa (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.72) (envelope-from ) id 1Upd3g-0004Mp-PM; Thu, 20 Jun 2013 13:29:44 +0200 Content-Type: text/plain; charset=us-ascii; format=flowed; delsp=yes To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-svnadmin@freebsd.org, "Peter Wemm" Subject: Re: svn commit: r252016 - svnadmin/hooks/scripts References: <201306200355.r5K3tgp5035373@svn.freebsd.org> Date: Thu, 20 Jun 2013 13:29:41 +0200 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit From: "Ronald Klop" Message-ID: In-Reply-To: <201306200355.r5K3tgp5035373@svn.freebsd.org> User-Agent: Opera Mail/12.15 (Win32) X-Virus-Scanned: by clamav at smarthost1.samage.net X-Spam-Level: / X-Spam-Score: -0.0 X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_20 autolearn=disabled version=3.3.1 X-Scan-Signature: 258bd43c1b7c380ff6f1b27dffaa1ebc X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 11:29:50 -0000 On Thu, 20 Jun 2013 05:55:42 +0200, Peter Wemm wrote: > Author: peter > Date: Thu Jun 20 03:55:41 2013 > New Revision: 252016 > URL: http://svnweb.freebsd.org/changeset/base/252016 > > Log: > Move /usr/local/bin in front of /usr/bin, just to be sure. And remove /usr/local/sbin. Is this a typo or intended? Ronald. > > Modified: > svnadmin/hooks/scripts/env.sh > > Modified: svnadmin/hooks/scripts/env.sh > ============================================================================== > --- svnadmin/hooks/scripts/env.sh Thu Jun 20 02:29:49 2013 (r252015) > +++ svnadmin/hooks/scripts/env.sh Thu Jun 20 03:55:41 2013 (r252016) > @@ -1,6 +1,6 @@ > # source this file > # $FreeBSD$ > -PATH=/s/svn/base/hooks/scripts:/usr/bin:/bin:/usr/local/bin:/usr/sbin:/sbin:/usr/local/sbin > +PATH=/s/svn/base/hooks/scripts:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin > export PATH > cd /s/svn/base > umask 002 > _______________________________________________ > svn-src-all@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/svn-src-all > To unsubscribe, send any mail to "svn-src-all-unsubscribe@freebsd.org" From owner-svn-src-all@FreeBSD.ORG Thu Jun 20 11:44:19 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 13:09:59 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 13:34:05 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 14:30:04 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 14:30:16 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 13:13:59 2013 Return-Path: Delivered-To: svn-src-all@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:25:52 +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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 13:37:16 2013 Return-Path: Delivered-To: svn-src-all@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:37 +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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 14:19:46 2013 Return-Path: Delivered-To: svn-src-all@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:43:46 +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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 16:25:12 2013 Return-Path: Delivered-To: svn-src-all@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: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 , Julian Elischer , Warner Losh X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 16:50:06 2013 Return-Path: Delivered-To: svn-src-all@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 3264786F; Thu, 20 Jun 2013 16:50:06 +0000 (UTC) (envelope-from gahr@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 0904C1672; Thu, 20 Jun 2013 16:50:06 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5KGo5Zv094217; Thu, 20 Jun 2013 16:50:05 GMT (envelope-from gahr@svn.freebsd.org) Received: (from gahr@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KGo5oF094216; Thu, 20 Jun 2013 16:50:05 GMT (envelope-from gahr@svn.freebsd.org) Message-Id: <201306201650.r5KGo5oF094216@svn.freebsd.org> From: Pietro Cerutti Date: Thu, 20 Jun 2013 16:50:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r252034 - stable/8/usr.bin/at X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 16:50:06 -0000 Author: gahr (ports committer) Date: Thu Jun 20 16:50:05 2013 New Revision: 252034 URL: http://svnweb.freebsd.org/changeset/base/252034 Log: MFC: r249406 - Do not bail out if stat(2) fails with ENOENT in the spool directory. This happens if another atrm process removes a job while we're scanning through the directory. - While at it, optimize a bit the directory scanning, so that we quit looping as soon as all jobs specified in argv have been dealt with. Approved by: cognet Modified: stable/8/usr.bin/at/at.c Directory Properties: stable/8/usr.bin/at/ (props changed) Modified: stable/8/usr.bin/at/at.c ============================================================================== --- stable/8/usr.bin/at/at.c Thu Jun 20 14:30:16 2013 (r252033) +++ stable/8/usr.bin/at/at.c Thu Jun 20 16:50:05 2013 (r252034) @@ -533,6 +533,10 @@ process_jobs(int argc, char **argv, int /* Delete every argument (job - ID) given */ int i; + int rc; + int nofJobs; + int nofDone; + int statErrno; struct stat buf; DIR *spool; struct dirent *dirent; @@ -540,6 +544,9 @@ process_jobs(int argc, char **argv, int char queue; long jobno; + nofJobs = argc - optind; + nofDone = 0; + PRIV_START if (chdir(ATJOB_DIR) != 0) @@ -555,9 +562,20 @@ process_jobs(int argc, char **argv, int while((dirent = readdir(spool)) != NULL) { PRIV_START - if (stat(dirent->d_name, &buf) != 0) - perr("cannot stat in " ATJOB_DIR); + rc = stat(dirent->d_name, &buf); + statErrno = errno; PRIV_END + /* There's a race condition between readdir above and stat here: + * another atrm process could have removed the file from the spool + * directory under our nose. If this happens, stat will set errno to + * ENOENT, which we shouldn't treat as fatal. + */ + if (rc != 0) { + if (statErrno == ENOENT) + continue; + else + perr("cannot stat in " ATJOB_DIR); + } if(sscanf(dirent->d_name, "%c%5lx%8lx", &queue, &jobno, &ctm)!=3) continue; @@ -603,9 +621,15 @@ process_jobs(int argc, char **argv, int errx(EXIT_FAILURE, "internal error, process_jobs = %d", what); } + + /* All arguments have been processed + */ + if (++nofDone == nofJobs) + goto end; } } } +end: closedir(spool); } /* delete_jobs */ From owner-svn-src-all@FreeBSD.ORG Thu Jun 20 16:51:26 2013 Return-Path: Delivered-To: svn-src-all@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 9B2019E0; Thu, 20 Jun 2013 16:51:26 +0000 (UTC) (envelope-from gahr@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 7287A167F; Thu, 20 Jun 2013 16:51: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 r5KGpQWa095895; Thu, 20 Jun 2013 16:51:26 GMT (envelope-from gahr@svn.freebsd.org) Received: (from gahr@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KGpQFp095894; Thu, 20 Jun 2013 16:51:26 GMT (envelope-from gahr@svn.freebsd.org) Message-Id: <201306201651.r5KGpQFp095894@svn.freebsd.org> From: Pietro Cerutti Date: Thu, 20 Jun 2013 16:51:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252035 - stable/9/usr.bin/at X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 16:51:26 -0000 Author: gahr (ports committer) Date: Thu Jun 20 16:51:25 2013 New Revision: 252035 URL: http://svnweb.freebsd.org/changeset/base/252035 Log: MFC: r249406 - Do not bail out if stat(2) fails with ENOENT in the spool directory. This happens if another atrm process removes a job while we're scanning through the directory. - While at it, optimize a bit the directory scanning, so that we quit looping as soon as all jobs specified in argv have been dealt with. Approved by: cognet Modified: stable/9/usr.bin/at/at.c Directory Properties: stable/9/usr.bin/at/ (props changed) Modified: stable/9/usr.bin/at/at.c ============================================================================== --- stable/9/usr.bin/at/at.c Thu Jun 20 16:50:05 2013 (r252034) +++ stable/9/usr.bin/at/at.c Thu Jun 20 16:51:25 2013 (r252035) @@ -533,6 +533,10 @@ process_jobs(int argc, char **argv, int /* Delete every argument (job - ID) given */ int i; + int rc; + int nofJobs; + int nofDone; + int statErrno; struct stat buf; DIR *spool; struct dirent *dirent; @@ -540,6 +544,9 @@ process_jobs(int argc, char **argv, int char queue; long jobno; + nofJobs = argc - optind; + nofDone = 0; + PRIV_START if (chdir(ATJOB_DIR) != 0) @@ -555,9 +562,20 @@ process_jobs(int argc, char **argv, int while((dirent = readdir(spool)) != NULL) { PRIV_START - if (stat(dirent->d_name, &buf) != 0) - perr("cannot stat in " ATJOB_DIR); + rc = stat(dirent->d_name, &buf); + statErrno = errno; PRIV_END + /* There's a race condition between readdir above and stat here: + * another atrm process could have removed the file from the spool + * directory under our nose. If this happens, stat will set errno to + * ENOENT, which we shouldn't treat as fatal. + */ + if (rc != 0) { + if (statErrno == ENOENT) + continue; + else + perr("cannot stat in " ATJOB_DIR); + } if(sscanf(dirent->d_name, "%c%5lx%8lx", &queue, &jobno, &ctm)!=3) continue; @@ -603,9 +621,15 @@ process_jobs(int argc, char **argv, int errx(EXIT_FAILURE, "internal error, process_jobs = %d", what); } + + /* All arguments have been processed + */ + if (++nofDone == nofJobs) + goto end; } } } +end: closedir(spool); } /* delete_jobs */ From owner-svn-src-all@FreeBSD.ORG Thu Jun 20 17:01:02 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 17:26:26 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 17:45:29 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 89A6CE81; Thu, 20 Jun 2013 17:45:29 +0000 (UTC) (envelope-from jkim@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 7B7A218CA; Thu, 20 Jun 2013 17:45: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 r5KHjTb9012855; Thu, 20 Jun 2013 17:45:29 GMT (envelope-from jkim@svn.freebsd.org) Received: (from jkim@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KHjTYi012854; Thu, 20 Jun 2013 17:45:29 GMT (envelope-from jkim@svn.freebsd.org) Message-Id: <201306201745.r5KHjTYi012854@svn.freebsd.org> From: Jung-uk Kim Date: Thu, 20 Jun 2013 17:45:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252038 - stable/9/sys/dev/mfi X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 17:45:29 -0000 Author: jkim Date: Thu Jun 20 17:45:29 2013 New Revision: 252038 URL: http://svnweb.freebsd.org/changeset/base/252038 Log: Fix two swapped definitions. Note it is directly committed to this branch because it fixes r250496, i.e., MFC of r247369 to stable/9. Modified: stable/9/sys/dev/mfi/mfivar.h Modified: stable/9/sys/dev/mfi/mfivar.h ============================================================================== --- stable/9/sys/dev/mfi/mfivar.h Thu Jun 20 17:26:25 2013 (r252037) +++ stable/9/sys/dev/mfi/mfivar.h Thu Jun 20 17:45:29 2013 (r252038) @@ -106,8 +106,8 @@ struct mfi_command { #define MFI_CMD_CCB (1<<6) #define MFI_CMD_TBOLT (1<<7) #define MFI_ON_MFIQ_FREE (1<<8) -#define MFI_ON_MFIQ_BUSY (1<<9) -#define MFI_ON_MFIQ_READY (1<<10) +#define MFI_ON_MFIQ_READY (1<<9) +#define MFI_ON_MFIQ_BUSY (1<<10) #define MFI_ON_MFIQ_MASK (MFI_ON_MFIQ_FREE | MFI_ON_MFIQ_READY| \ MFI_ON_MFIQ_BUSY) #define MFI_CMD_FLAGS_FMT "\20" \ From owner-svn-src-all@FreeBSD.ORG Thu Jun 20 18:16:29 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 18:25:11 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 19:08:13 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 19:34:42 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id AFF41D28 for ; Thu, 20 Jun 2013 19:34:42 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from mail-ie0-x235.google.com (mail-ie0-x235.google.com [IPv6:2607:f8b0:4001:c03::235]) by mx1.freebsd.org (Postfix) with ESMTP id 7C4BD11AC for ; Thu, 20 Jun 2013 19:34:42 +0000 (UTC) Received: by mail-ie0-f181.google.com with SMTP id x12so16389591ief.26 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=mnPprHTjwWDMnAnFsNPacrS+QZKg4xgRvR8S//8uh/5Khu/0x/OK+eKHf0bpFIX2Nh +UGk32VtM6SLpVaTuAAViF82kFXPxdrZUZ43/3Qi3LQ2gmz61PmqOVA5wYy50iVYoW5N 7hKz3fOWr1J+RJJMKbSprbrco7zd5BAbBhPBe8RHOCcw2ykkCpy3ZDcf7QeUpj6kzscd e4VMZyXpr51l/JZnOO8V4PempsKvAkoHucmvC6qnXsH3ZgUJH1J6ze3sPT9YqRZkf0IU FAnsR/lGzVnIkhOTer7iZofC3sxDUaZ+2G/xnYe9oTQGWHuFpydPZroOHZ44VCA2DSG3 1l+w== 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: ALoCoQlaxYwtsVpFuCHwn7Zk+X4lOgPqOljEZ4XgnW/SgDpGdmhEBor5WfDUn3LXDeqOuacGi/4r 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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 19:56:27 2013 Return-Path: Delivered-To: svn-src-all@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 46E566C5; Thu, 20 Jun 2013 19:56:27 +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 1F2BF1286; Thu, 20 Jun 2013 19:56:27 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5KJuRe3054356; Thu, 20 Jun 2013 19:56:27 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KJuQcI054354; Thu, 20 Jun 2013 19:56:26 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201306201956.r5KJuQcI054354@svn.freebsd.org> From: John Baldwin Date: Thu, 20 Jun 2013 19:56:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252041 - stable/9/sys/ofed/include/linux X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 19:56:27 -0000 Author: jhb Date: Thu Jun 20 19:56:26 2013 New Revision: 252041 URL: http://svnweb.freebsd.org/changeset/base/252041 Log: MFC 251617: Store a reference to the vnode associated with a file descriptor in the linux_file structure and use it instead of directly accessing td_fpop when destroying the linux_file structure. The td_fpop pointer is not valid when a cdevpriv destructor is run, and the type-specific close method has already been called, so f_vnode may not be valid (and the vnode might have been recycled without our own reference). Modified: stable/9/sys/ofed/include/linux/fs.h stable/9/sys/ofed/include/linux/linux_compat.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/ofed/include/linux/fs.h ============================================================================== --- stable/9/sys/ofed/include/linux/fs.h Thu Jun 20 19:08:12 2013 (r252040) +++ stable/9/sys/ofed/include/linux/fs.h Thu Jun 20 19:56:26 2013 (r252041) @@ -73,6 +73,7 @@ struct linux_file { struct dentry f_dentry_store; struct selinfo f_selinfo; struct sigio *f_sigio; + struct vnode *f_vnode; }; #define file linux_file Modified: stable/9/sys/ofed/include/linux/linux_compat.c ============================================================================== --- stable/9/sys/ofed/include/linux/linux_compat.c Thu Jun 20 19:08:12 2013 (r252040) +++ stable/9/sys/ofed/include/linux/linux_compat.c Thu Jun 20 19:56:26 2013 (r252041) @@ -211,7 +211,8 @@ linux_file_dtor(void *cdp) struct linux_file *filp; filp = cdp; - filp->f_op->release(curthread->td_fpop->f_vnode, filp); + filp->f_op->release(filp->f_vnode, filp); + vdrop(filp->f_vnode); kfree(filp); } @@ -231,6 +232,8 @@ linux_dev_open(struct cdev *dev, int ofl filp->f_dentry = &filp->f_dentry_store; filp->f_op = ldev->ops; filp->f_flags = file->f_flag; + vhold(file->f_vnode); + filp->f_vnode = file->f_vnode; if (filp->f_op->open) { error = -filp->f_op->open(file->f_vnode, filp); if (error) { From owner-svn-src-all@FreeBSD.ORG Thu Jun 20 20:00:53 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 21:16:46 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 21:19:49 2013 Return-Path: Delivered-To: svn-src-all@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 43565599; Thu, 20 Jun 2013 21:19:49 +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 1BAC217B8; Thu, 20 Jun 2013 21:19: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 r5KLJmTP080930; Thu, 20 Jun 2013 21:19:49 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KLJmno080921; Thu, 20 Jun 2013 21:19:48 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201306202119.r5KLJmno080921@svn.freebsd.org> From: Xin LI Date: Thu, 20 Jun 2013 21:19:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252043 - stable/9/usr.sbin/kldxref X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 21:19:49 -0000 Author: delphij Date: Thu Jun 20 21:19:47 2013 New Revision: 252043 URL: http://svnweb.freebsd.org/changeset/base/252043 Log: MFC r251439: Remove unneeded reference to link.h (sys/link_elf.h). Modified: stable/9/usr.sbin/kldxref/ef.c stable/9/usr.sbin/kldxref/ef_amd64.c stable/9/usr.sbin/kldxref/ef_i386.c stable/9/usr.sbin/kldxref/ef_obj.c stable/9/usr.sbin/kldxref/kldxref.c Directory Properties: stable/9/usr.sbin/kldxref/ (props changed) Modified: stable/9/usr.sbin/kldxref/ef.c ============================================================================== --- stable/9/usr.sbin/kldxref/ef.c Thu Jun 20 21:16:46 2013 (r252042) +++ stable/9/usr.sbin/kldxref/ef.c Thu Jun 20 21:19:47 2013 (r252043) @@ -42,7 +42,6 @@ #include #include #define FREEBSD_ELF -#include #include Modified: stable/9/usr.sbin/kldxref/ef_amd64.c ============================================================================== --- stable/9/usr.sbin/kldxref/ef_amd64.c Thu Jun 20 21:16:46 2013 (r252042) +++ stable/9/usr.sbin/kldxref/ef_amd64.c Thu Jun 20 21:19:47 2013 (r252043) @@ -32,7 +32,6 @@ #include #include -#include #include "ef.h" Modified: stable/9/usr.sbin/kldxref/ef_i386.c ============================================================================== --- stable/9/usr.sbin/kldxref/ef_i386.c Thu Jun 20 21:16:46 2013 (r252042) +++ stable/9/usr.sbin/kldxref/ef_i386.c Thu Jun 20 21:19:47 2013 (r252043) @@ -32,7 +32,6 @@ #include #include -#include #include "ef.h" Modified: stable/9/usr.sbin/kldxref/ef_obj.c ============================================================================== --- stable/9/usr.sbin/kldxref/ef_obj.c Thu Jun 20 21:16:46 2013 (r252042) +++ stable/9/usr.sbin/kldxref/ef_obj.c Thu Jun 20 21:19:47 2013 (r252043) @@ -44,7 +44,6 @@ #include #include #define FREEBSD_ELF -#include #include Modified: stable/9/usr.sbin/kldxref/kldxref.c ============================================================================== --- stable/9/usr.sbin/kldxref/kldxref.c Thu Jun 20 21:16:46 2013 (r252042) +++ stable/9/usr.sbin/kldxref/kldxref.c Thu Jun 20 21:19:47 2013 (r252043) @@ -42,7 +42,6 @@ #include #include #define FREEBSD_ELF -#include #include #include #include From owner-svn-src-all@FreeBSD.ORG Thu Jun 20 21:29:04 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 1E458C1B; Thu, 20 Jun 2013 21:29: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 0FD471845; Thu, 20 Jun 2013 21:29: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 r5KLT3tt084040; Thu, 20 Jun 2013 21:29:03 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KLT387084039; Thu, 20 Jun 2013 21:29:03 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201306202129.r5KLT387084039@svn.freebsd.org> From: Xin LI Date: Thu, 20 Jun 2013 21:29:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252044 - stable/9/usr.sbin/kldxref X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 21:29:04 -0000 Author: delphij Date: Thu Jun 20 21:29:03 2013 New Revision: 252044 URL: http://svnweb.freebsd.org/changeset/base/252044 Log: MFC r251440: use calloc(). Modified: stable/9/usr.sbin/kldxref/ef_obj.c Directory Properties: stable/9/usr.sbin/kldxref/ (props changed) Modified: stable/9/usr.sbin/kldxref/ef_obj.c ============================================================================== --- stable/9/usr.sbin/kldxref/ef_obj.c Thu Jun 20 21:19:47 2013 (r252043) +++ stable/9/usr.sbin/kldxref/ef_obj.c Thu Jun 20 21:29:03 2013 (r252044) @@ -343,7 +343,7 @@ ef_obj_open(const char *filename, struct if ((fd = open(filename, O_RDONLY)) == -1) return errno; - ef = malloc(sizeof(*ef)); + ef = calloc(1, sizeof(*ef)); if (ef == NULL) { close(fd); return (ENOMEM); @@ -352,7 +352,6 @@ ef_obj_open(const char *filename, struct efile->ef_ef = ef; efile->ef_ops = &ef_obj_file_ops; - bzero(ef, sizeof(*ef)); ef->ef_verbose = verbose; ef->ef_fd = fd; ef->ef_name = strdup(filename); From owner-svn-src-all@FreeBSD.ORG Thu Jun 20 21:38:09 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 22:05:52 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 22:45:43 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Thu Jun 20 22:50:11 2013 Return-Path: Delivered-To: svn-src-all@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 09EA0362; Thu, 20 Jun 2013 22:50:11 +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 EF7F11B30; Thu, 20 Jun 2013 22:50: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 r5KMoArT011341; Thu, 20 Jun 2013 22:50:10 GMT (envelope-from sjg@svn.freebsd.org) Received: (from sjg@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5KMo8ag010730; Thu, 20 Jun 2013 22:50:08 GMT (envelope-from sjg@svn.freebsd.org) Message-Id: <201306202250.r5KMo8ag010730@svn.freebsd.org> From: "Simon J. Gerraty" Date: Thu, 20 Jun 2013 22:50:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252048 - in stable/9: . share/mk X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Jun 2013 22:50:11 -0000 Author: sjg Date: Thu Jun 20 22:50:08 2013 New Revision: 252048 URL: http://svnweb.freebsd.org/changeset/base/252048 Log: share/mk: merge: r241298,243393,249057,251506 from head for bmake support. Makefile: buildworld etc will be done with make from src tree, make sure that bmake's -J 15,16 are not passed to it. Reviewed by: obrien Modified: stable/9/Makefile stable/9/share/mk/bsd.crunchgen.mk stable/9/share/mk/bsd.dep.mk stable/9/share/mk/bsd.obj.mk stable/9/share/mk/bsd.own.mk stable/9/share/mk/bsd.subdir.mk stable/9/share/mk/bsd.sys.mk (contents, props changed) stable/9/share/mk/sys.mk Directory Properties: stable/9/share/mk/ (props changed) Modified: stable/9/Makefile ============================================================================== --- stable/9/Makefile Thu Jun 20 22:01:36 2013 (r252047) +++ stable/9/Makefile Thu Jun 20 22:50:08 2013 (r252048) @@ -127,7 +127,13 @@ MAKEPATH= ${MAKEOBJDIRPREFIX}${.CURDIR}/ BINMAKE= \ `if [ -x ${MAKEPATH}/make ]; then echo ${MAKEPATH}/make; else echo ${MAKE}; fi` \ -m ${.CURDIR}/share/mk + +.if defined(.PARSEDIR) +# don't pass -J to fmake +_MAKE= PATH=${PATH} MAKEFLAGS="${MAKEFLAGS:N-J:N1*,1*}" ${BINMAKE} -f Makefile.inc1 TARGET=${_TARGET} TARGET_ARCH=${_TARGET_ARCH} +.else _MAKE= PATH=${PATH} ${BINMAKE} -f Makefile.inc1 TARGET=${_TARGET} TARGET_ARCH=${_TARGET_ARCH} +.endif # Guess machine architecture from machine type, and vice versa. .if !defined(TARGET_ARCH) && defined(TARGET) Modified: stable/9/share/mk/bsd.crunchgen.mk ============================================================================== --- stable/9/share/mk/bsd.crunchgen.mk Thu Jun 20 22:01:36 2013 (r252047) +++ stable/9/share/mk/bsd.crunchgen.mk Thu Jun 20 22:50:08 2013 (r252048) @@ -36,6 +36,8 @@ OUTPUTS=$(OUTMK) $(OUTC) $(PROG).cache CRUNCHOBJS= ${.OBJDIR} .if defined(MAKEOBJDIRPREFIX) CANONICALOBJDIR:= ${MAKEOBJDIRPREFIX}${.CURDIR} +.elif defined(MAKEOBJDIR) && ${MAKEOBJDIR:M/*} != "" +CANONICALOBJDIR:=${MAKEOBJDIR} .else CANONICALOBJDIR:= /usr/obj${.CURDIR} .endif Modified: stable/9/share/mk/bsd.dep.mk ============================================================================== --- stable/9/share/mk/bsd.dep.mk Thu Jun 20 22:01:36 2013 (r252047) +++ stable/9/share/mk/bsd.dep.mk Thu Jun 20 22:50:08 2013 (r252048) @@ -123,6 +123,9 @@ ${_YC:R}.o: ${_YC} .if defined(SRCS) depend: beforedepend ${DEPENDFILE} afterdepend +# Tell bmake not to look for generated files via .PATH +.NOPATH: ${DEPENDFILE} + # Different types of sources are compiled with slightly different flags. # Split up the sources, and filter out headers and non-applicable flags. MKDEP_CFLAGS= ${CFLAGS:M-nostdinc*} ${CFLAGS:M-[BIDU]*} ${CFLAGS:M-std=*} \ Modified: stable/9/share/mk/bsd.obj.mk ============================================================================== --- stable/9/share/mk/bsd.obj.mk Thu Jun 20 22:01:36 2013 (r252047) +++ stable/9/share/mk/bsd.obj.mk Thu Jun 20 22:50:08 2013 (r252048) @@ -44,6 +44,8 @@ ____: .if defined(MAKEOBJDIRPREFIX) CANONICALOBJDIR:=${MAKEOBJDIRPREFIX}${.CURDIR} +.elif defined(MAKEOBJDIR) && ${MAKEOBJDIR:M/*} != "" +CANONICALOBJDIR:=${MAKEOBJDIR} .else CANONICALOBJDIR:=/usr/obj${.CURDIR} .endif @@ -116,6 +118,11 @@ cleanobj: clean cleandepend .endif @if [ -L ${.CURDIR}/obj ]; then rm -f ${.CURDIR}/obj; fi +# Tell bmake not to look for generated files via .PATH +.if !empty(CLEANFILES) +.NOPATH: ${CLEANFILES} +.endif + .if !target(clean) clean: .if defined(CLEANFILES) && !empty(CLEANFILES) Modified: stable/9/share/mk/bsd.own.mk ============================================================================== --- stable/9/share/mk/bsd.own.mk Thu Jun 20 22:01:36 2013 (r252047) +++ stable/9/share/mk/bsd.own.mk Thu Jun 20 22:50:08 2013 (r252048) @@ -652,7 +652,7 @@ MK_${vv:H}:= ${MK_${vv:T}} .if ${MK_CTF} != "no" CTFCONVERT_CMD= ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} -.elif ${MAKE_VERSION} >= 9201210220 +.elif defined(.PARSEDIR) || ${MAKE_VERSION} >= 9201210220 CTFCONVERT_CMD= .else CTFCONVERT_CMD= @: Modified: stable/9/share/mk/bsd.subdir.mk ============================================================================== --- stable/9/share/mk/bsd.subdir.mk Thu Jun 20 22:01:36 2013 (r252047) +++ stable/9/share/mk/bsd.subdir.mk Thu Jun 20 22:50:08 2013 (r252048) @@ -42,7 +42,7 @@ distribute: _SUBDIR: .USE .if defined(SUBDIR) && !empty(SUBDIR) && !defined(NO_SUBDIR) - @${_+_}for entry in ${SUBDIR}; do \ + @${_+_}set -e; for entry in ${SUBDIR}; do \ if test -d ${.CURDIR}/$${entry}.${MACHINE_ARCH}; then \ ${ECHODIR} "===> ${DIRPRFX}$${entry}.${MACHINE_ARCH} (${.TARGET:realinstall=install})"; \ edir=$${entry}.${MACHINE_ARCH}; \ @@ -79,7 +79,7 @@ ${__stage}${__target}: _SUBDIR .endif .endfor ${__target}: - ${_+_}cd ${.CURDIR}; ${MAKE} build${__target}; ${MAKE} install${__target} + ${_+_}set -e; cd ${.CURDIR}; ${MAKE} build${__target}; ${MAKE} install${__target} .endfor .if !target(install) Modified: stable/9/share/mk/bsd.sys.mk ============================================================================== --- stable/9/share/mk/bsd.sys.mk Thu Jun 20 22:01:36 2013 (r252047) +++ stable/9/share/mk/bsd.sys.mk Thu Jun 20 22:50:08 2013 (r252048) @@ -126,3 +126,18 @@ CFLAGS+= ${SSP_CFLAGS} # Allow user-specified additional warning flags CFLAGS+= ${CWARNFLAGS} + + +# Tell bmake not to mistake standard targets for things to be searched for +# or expect to ever be up-to-date. +PHONY_NOTMAIN = afterdepend afterinstall all beforedepend beforeinstall \ + beforelinking build build-tools buildfiles buildincludes \ + checkdpadd clean cleandepend cleandir cleanobj configure \ + depend dependall distclean distribute exe extract fetch \ + html includes install installfiles installincludes lint \ + obj objlink objs objwarn patch realall realdepend \ + realinstall regress subdir-all subdir-depend subdir-install \ + tags whereobj + +.PHONY: ${PHONY_NOTMAIN} +.NOTMAIN: ${PHONY_NOTMAIN} Modified: stable/9/share/mk/sys.mk ============================================================================== --- stable/9/share/mk/sys.mk Thu Jun 20 22:01:36 2013 (r252047) +++ stable/9/share/mk/sys.mk Thu Jun 20 22:50:08 2013 (r252048) @@ -16,6 +16,10 @@ unix ?= We run FreeBSD, not UNIX. MACHINE_CPUARCH=${MACHINE_ARCH:C/mips.*e[lb]/mips/:C/armeb/arm/:C/powerpc64/powerpc/} .endif +# Set any local definitions first. Place this early, but it needs +# MACHINE_CPUARCH to be defined. +.sinclude + # If the special target .POSIX appears (without prerequisites or # commands) before the first noncomment line in the makefile, make shall # process the makefile as specified by the Posix 1003.2 specification. @@ -320,8 +324,22 @@ SHELL= ${__MAKE_SHELL} # XXX hint for bsd.port.mk OBJFORMAT?= elf +# Tell bmake to expand -V VAR by default +.MAKE.EXPAND_VARIABLES= yes + +# Tell bmake the makefile preference +.MAKE.MAKEFILE_PREFERENCE= BSDmakefile makefile Makefile + +.if !defined(.PARSEDIR) +# We are not bmake, which is more aggressive about searching .PATH +# It is sometime necessary to curb its enthusiasm with .NOPATH +# The following allows us to quietly ignore .NOPATH when not using bmake. +.NOTMAIN: .NOPATH +.NOPATH: + # Toggle on warnings .WARN: dirsyntax +.endif .endif From owner-svn-src-all@FreeBSD.ORG Thu Jun 20 23:04:42 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 01:47:23 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 02:15:28 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 03:37:36 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 06:28:55 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id A4AC193A; Fri, 21 Jun 2013 06:28:55 +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 96DF61BD2; Fri, 21 Jun 2013 06:28: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 r5L6StPe058255; Fri, 21 Jun 2013 06:28:55 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5L6StWe058254; Fri, 21 Jun 2013 06:28:55 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201306210628.r5L6StWe058254@svn.freebsd.org> From: Konstantin Belousov Date: Fri, 21 Jun 2013 06:28:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252054 - stable/9/sys/dev/drm2/i915 X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 06:28:55 -0000 Author: kib Date: Fri Jun 21 06:28:55 2013 New Revision: 252054 URL: http://svnweb.freebsd.org/changeset/base/252054 Log: MFC r251959: Remove stray empty line. Modified: stable/9/sys/dev/drm2/i915/i915_gem.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/drm2/i915/i915_gem.c ============================================================================== --- stable/9/sys/dev/drm2/i915/i915_gem.c Fri Jun 21 06:11:03 2013 (r252053) +++ stable/9/sys/dev/drm2/i915/i915_gem.c Fri Jun 21 06:28:55 2013 (r252054) @@ -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-all@FreeBSD.ORG Fri Jun 21 06:32:52 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 06:36:27 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 06:49:10 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 11:09:04 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 12:02:10 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 13:54:37 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 15:17:45 2013 Return-Path: Delivered-To: svn-src-all@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 7D32676B; Fri, 21 Jun 2013 15:17:45 +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 6FC5E1623; Fri, 21 Jun 2013 15:17: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 r5LFHjH7025555; Fri, 21 Jun 2013 15:17:45 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LFHj69025554; Fri, 21 Jun 2013 15:17:45 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201306211517.r5LFHj69025554@svn.freebsd.org> From: John Baldwin Date: Fri, 21 Jun 2013 15:17:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252057 - stable/9/sys/boot/pc98/libpc98 X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 15:17:45 -0000 Author: jhb Date: Fri Jun 21 15:17:44 2013 New Revision: 252057 URL: http://svnweb.freebsd.org/changeset/base/252057 Log: MFC 250333: Don't pad disk partition sizes with leading zeros. Modified: stable/9/sys/boot/pc98/libpc98/biosdisk.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/boot/ (props changed) Modified: stable/9/sys/boot/pc98/libpc98/biosdisk.c ============================================================================== --- stable/9/sys/boot/pc98/libpc98/biosdisk.c Fri Jun 21 12:02:09 2013 (r252056) +++ stable/9/sys/boot/pc98/libpc98/biosdisk.c Fri Jun 21 15:17:44 2013 (r252057) @@ -296,7 +296,7 @@ display_size(uint64_t size) size /= 1024; unit = 'M'; } - sprintf(buf, "%.6ld%cB", (long)size, unit); + sprintf(buf, "%6ld%cB", (long)size, unit); return (buf); } From owner-svn-src-all@FreeBSD.ORG Fri Jun 21 15:30:18 2013 Return-Path: Delivered-To: svn-src-all@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 E7118C63; Fri, 21 Jun 2013 15:30:18 +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 D997816D1; Fri, 21 Jun 2013 15:30: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 r5LFUIVt029263; Fri, 21 Jun 2013 15:30:18 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LFUIvZ029261; Fri, 21 Jun 2013 15:30:18 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201306211530.r5LFUIvZ029261@svn.freebsd.org> From: John Baldwin Date: Fri, 21 Jun 2013 15:30:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r252058 - in stable/8/sys/boot: i386/libi386 pc98/libpc98 X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 15:30:19 -0000 Author: jhb Date: Fri Jun 21 15:30:18 2013 New Revision: 252058 URL: http://svnweb.freebsd.org/changeset/base/252058 Log: MFC 250333: Don't pad disk partition sizes with leading zeros. Modified: stable/8/sys/boot/i386/libi386/biosdisk.c stable/8/sys/boot/pc98/libpc98/biosdisk.c Directory Properties: stable/8/sys/ (props changed) stable/8/sys/boot/ (props changed) Modified: stable/8/sys/boot/i386/libi386/biosdisk.c ============================================================================== --- stable/8/sys/boot/i386/libi386/biosdisk.c Fri Jun 21 15:17:44 2013 (r252057) +++ stable/8/sys/boot/i386/libi386/biosdisk.c Fri Jun 21 15:30:18 2013 (r252058) @@ -349,7 +349,7 @@ display_size(uint64_t size) size /= 1024; unit = 'M'; } - sprintf(buf, "%.6ld%cB", (long)size, unit); + sprintf(buf, "%6ld%cB", (long)size, unit); return (buf); } Modified: stable/8/sys/boot/pc98/libpc98/biosdisk.c ============================================================================== --- stable/8/sys/boot/pc98/libpc98/biosdisk.c Fri Jun 21 15:17:44 2013 (r252057) +++ stable/8/sys/boot/pc98/libpc98/biosdisk.c Fri Jun 21 15:30:18 2013 (r252058) @@ -296,7 +296,7 @@ display_size(uint64_t size) size /= 1024; unit = 'M'; } - sprintf(buf, "%.6ld%cB", (long)size, unit); + sprintf(buf, "%6ld%cB", (long)size, unit); return (buf); } From owner-svn-src-all@FreeBSD.ORG Fri Jun 21 15:30:47 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 15:47:11 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 15:55:03 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 17:23:20 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 17:36:34 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 3888BA4A; Fri, 21 Jun 2013 17:36:34 +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 2893A1BFE; Fri, 21 Jun 2013 17:36: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 r5LHaYIw070053; Fri, 21 Jun 2013 17:36:34 GMT (envelope-from scottl@svn.freebsd.org) Received: (from scottl@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LHaYPN070052; Fri, 21 Jun 2013 17:36:34 GMT (envelope-from scottl@svn.freebsd.org) Message-Id: <201306211736.r5LHaYPN070052@svn.freebsd.org> From: Scott Long Date: Fri, 21 Jun 2013 17:36:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252063 - stable/9/sys/geom/mirror X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 17:36:34 -0000 Author: scottl Date: Fri Jun 21 17:36:33 2013 New Revision: 252063 URL: http://svnweb.freebsd.org/changeset/base/252063 Log: MFC r252010, r252011: Mark geom_mirror as capable of unmapped i/o Obtained from: Netflix Modified: stable/9/sys/geom/mirror/g_mirror.c Modified: stable/9/sys/geom/mirror/g_mirror.c ============================================================================== --- stable/9/sys/geom/mirror/g_mirror.c Fri Jun 21 17:23:19 2013 (r252062) +++ stable/9/sys/geom/mirror/g_mirror.c Fri Jun 21 17:36:33 2013 (r252063) @@ -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-all@FreeBSD.ORG Fri Jun 21 18:16:55 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 19:28:58 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id B6FAAF2C; Fri, 21 Jun 2013 19:28:58 +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 A86121125; Fri, 21 Jun 2013 19:28: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 r5LJSwUT006612; Fri, 21 Jun 2013 19:28:58 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LJSwn7006611; Fri, 21 Jun 2013 19:28:58 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201306211928.r5LJSwn7006611@svn.freebsd.org> From: John Baldwin Date: Fri, 21 Jun 2013 19:28:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252065 - stable/9/lib/libprocstat X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 19:28:58 -0000 Author: jhb Date: Fri Jun 21 19:28:58 2013 New Revision: 252065 URL: http://svnweb.freebsd.org/changeset/base/252065 Log: MFC 251637: Borrow the algorithm from kvm_getprocs() to fix procstat_getprocs() to handle the case where the process tables grows in between the calls to fetch the size and fetch the table. Modified: stable/9/lib/libprocstat/libprocstat.c Directory Properties: stable/9/lib/libprocstat/ (props changed) Modified: stable/9/lib/libprocstat/libprocstat.c ============================================================================== --- stable/9/lib/libprocstat/libprocstat.c Fri Jun 21 18:16:54 2013 (r252064) +++ stable/9/lib/libprocstat/libprocstat.c Fri Jun 21 19:28:58 2013 (r252065) @@ -248,7 +248,7 @@ procstat_getprocs(struct procstat *procs unsigned int *count) { struct kinfo_proc *p0, *p; - size_t len; + size_t len, olen; int name[4]; int cnt; int error; @@ -285,12 +285,16 @@ procstat_getprocs(struct procstat *procs warnx("no processes?"); goto fail; } - p = malloc(len); - if (p == NULL) { - warnx("malloc(%zu)", len); - goto fail; - } - error = sysctl(name, 4, p, &len, NULL, 0); + do { + len += len / 10; + p = reallocf(p, len); + if (p == NULL) { + warnx("reallocf(%zu)", len); + goto fail; + } + olen = len; + error = sysctl(name, 4, p, &len, NULL, 0); + } while (error < 0 && errno == ENOMEM && olen == len); if (error < 0 && errno != EPERM) { warn("sysctl(kern.proc)"); goto fail; From owner-svn-src-all@FreeBSD.ORG Fri Jun 21 19:30:33 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 33454135; Fri, 21 Jun 2013 19:30:33 +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 0B52C1132; Fri, 21 Jun 2013 19: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 r5LJUWpv007110; Fri, 21 Jun 2013 19:30:32 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LJUWIv007109; Fri, 21 Jun 2013 19:30:32 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201306211930.r5LJUWIv007109@svn.freebsd.org> From: John Baldwin Date: Fri, 21 Jun 2013 19:30:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r252066 - stable/8/usr.bin/procstat X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 19:30:33 -0000 Author: jhb Date: Fri Jun 21 19:30:32 2013 New Revision: 252066 URL: http://svnweb.freebsd.org/changeset/base/252066 Log: MFC 251637: Borrow the algorithm from kvm_getprocs() to fix procstat(1) to handle the case where the process tables grows in between the calls to fetch the size and fetch the table. Note that this is not a true MFC as the libprocstat library doesn't exist in 8.x and the relevant code is in the procstat binary instead. Modified: stable/8/usr.bin/procstat/procstat.c Modified: stable/8/usr.bin/procstat/procstat.c ============================================================================== --- stable/8/usr.bin/procstat/procstat.c Fri Jun 21 19:28:58 2013 (r252065) +++ stable/8/usr.bin/procstat/procstat.c Fri Jun 21 19:30:32 2013 (r252066) @@ -107,7 +107,7 @@ main(int argc, char *argv[]) int ch, interval, name[4], tmp; unsigned int i; struct kinfo_proc *kipp; - size_t len; + size_t len, olen; long l; pid_t pid; char *dummy; @@ -204,13 +204,21 @@ main(int argc, char *argv[]) if (sysctl(name, 3, NULL, &len, NULL, 0) < 0) err(-1, "sysctl: kern.proc.all"); - kipp = malloc(len); - if (kipp == NULL) - err(-1, "malloc"); - - if (sysctl(name, 3, kipp, &len, NULL, 0) < 0) { - free(kipp); - err(-1, "sysctl: kern.proc.all"); + kipp = NULL; + for (;;) { + len += len / 10; + kipp = reallocf(kipp, len); + if (kipp == NULL) + err(-1, "malloc"); + + olen = len; + if (sysctl(name, 3, kipp, &len, NULL, 0) < 0) { + if (errno == ENOMEM && olen == len) + continue; + free(kipp); + err(-1, "sysctl: kern.proc.all"); + } + break; } if (len % sizeof(*kipp) != 0) err(-1, "kinfo_proc mismatch"); @@ -242,13 +250,22 @@ main(int argc, char *argv[]) if (sysctl(name, 4, NULL, &len, NULL, 0) < 0) err(-1, "sysctl: kern.proc.pid: %d", pid); - kipp = malloc(len); - if (kipp == NULL) - err(-1, "malloc"); - - if (sysctl(name, 4, kipp, &len, NULL, 0) < 0) { - free(kipp); - err(-1, "sysctl: kern.proc.pid: %d", pid); + kipp = NULL; + for (;;) { + len += len / 10; + kipp = reallocf(kipp, len); + if (kipp == NULL) + err(-1, "malloc"); + + olen = len; + if (sysctl(name, 4, kipp, &len, NULL, 0) < 0) { + if (errno == ENOMEM && olen == len) + continue; + free(kipp); + err(-1, "sysctl: kern.proc.pid: %d", + pid); + } + break; } if (len != sizeof(*kipp)) err(-1, "kinfo_proc mismatch"); From owner-svn-src-all@FreeBSD.ORG Fri Jun 21 19:41:31 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 20:16:42 2013 Return-Path: Delivered-To: svn-src-all@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 77F71CB4; Fri, 21 Jun 2013 20:16:42 +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 5797712B0; Fri, 21 Jun 2013 20:16: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 r5LKGgLx022787; Fri, 21 Jun 2013 20:16:42 GMT (envelope-from rmacklem@svn.freebsd.org) Received: (from rmacklem@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LKGghD022786; Fri, 21 Jun 2013 20:16:42 GMT (envelope-from rmacklem@svn.freebsd.org) Message-Id: <201306212016.r5LKGghD022786@svn.freebsd.org> From: Rick Macklem Date: Fri, 21 Jun 2013 20:16:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252068 - stable/9/usr.sbin/gssd X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 20:16:42 -0000 Author: rmacklem Date: Fri Jun 21 20:16:41 2013 New Revision: 252068 URL: http://svnweb.freebsd.org/changeset/base/252068 Log: MFC: r251444, r251476 Add a "-v" (verbose) option to the gssd daemon, to help with diagnosis of kerberized NFS mount problems. When set, messages are sent to syslog() (or fprintf(stderr,...) if "-d" is also specified) to indicate activity/results of kgssapi upcalls. Modified: stable/9/usr.sbin/gssd/gssd.c Directory Properties: stable/9/usr.sbin/gssd/ (props changed) Modified: stable/9/usr.sbin/gssd/gssd.c ============================================================================== --- stable/9/usr.sbin/gssd/gssd.c Fri Jun 21 19:41:30 2013 (r252067) +++ stable/9/usr.sbin/gssd/gssd.c Fri Jun 21 20:16:41 2013 (r252068) @@ -42,6 +42,7 @@ __FBSDID("$FreeBSD$"); #include #endif #include +#include #include #include #include @@ -71,10 +72,12 @@ uint32_t gss_start_time; int debug_level; static char ccfile_dirlist[PATH_MAX + 1], ccfile_substring[NAME_MAX + 1]; static char pref_realm[1024]; +static int verbose; static void gssd_load_mech(void); static int find_ccache_file(const char *, uid_t, char *); static int is_a_valid_tgt_cache(const char *, uid_t, int *, time_t *); +static void gssd_verbose_out(const char *, ...); extern void gssd_1(struct svc_req *rqstp, SVCXPRT *transp); extern int gssd_syscall(char *path); @@ -99,11 +102,15 @@ main(int argc, char **argv) ccfile_dirlist[0] = '\0'; pref_realm[0] = '\0'; debug = 0; - while ((ch = getopt(argc, argv, "ds:c:r:")) != -1) { + verbose = 0; + while ((ch = getopt(argc, argv, "dvs:c:r:")) != -1) { switch (ch) { case 'd': debug_level++; break; + case 'v': + verbose = 1; + break; case 's': #ifndef WITHOUT_KERBEROS /* @@ -299,10 +306,26 @@ gssd_delete_resource(uint64_t id) } } +static void +gssd_verbose_out(const char *fmt, ...) +{ + va_list ap; + + if (verbose != 0) { + va_start(ap, fmt); + if (debug_level == 0) + vsyslog(LOG_INFO | LOG_DAEMON, fmt, ap); + else + vfprintf(stderr, fmt, ap); + va_end(ap); + } +} + bool_t gssd_null_1_svc(void *argp, void *result, struct svc_req *rqstp) { + gssd_verbose_out("gssd_null: done\n"); return (TRUE); } @@ -337,6 +360,9 @@ gssd_init_sec_context_1_svc(init_sec_con } while (cp != NULL && *cp != '\0'); if (gotone == 0) { result->major_status = GSS_S_CREDENTIALS_EXPIRED; + gssd_verbose_out("gssd_init_sec_context: -s no" + " credential cache file found for uid=%d\n", + (int)argp->uid); return (TRUE); } } else { @@ -362,6 +388,8 @@ gssd_init_sec_context_1_svc(init_sec_con cred = gssd_find_resource(argp->cred); if (!cred) { result->major_status = GSS_S_CREDENTIALS_EXPIRED; + gssd_verbose_out("gssd_init_sec_context: cred" + " resource not found\n"); return (TRUE); } } @@ -369,6 +397,8 @@ gssd_init_sec_context_1_svc(init_sec_con ctx = gssd_find_resource(argp->ctx); if (!ctx) { result->major_status = GSS_S_CONTEXT_EXPIRED; + gssd_verbose_out("gssd_init_sec_context: context" + " resource not found\n"); return (TRUE); } } @@ -376,6 +406,8 @@ gssd_init_sec_context_1_svc(init_sec_con name = gssd_find_resource(argp->name); if (!name) { result->major_status = GSS_S_BAD_NAME; + gssd_verbose_out("gssd_init_sec_context: name" + " resource not found\n"); return (TRUE); } } @@ -385,6 +417,9 @@ gssd_init_sec_context_1_svc(init_sec_con argp->req_flags, argp->time_req, argp->input_chan_bindings, &argp->input_token, &result->actual_mech_type, &result->output_token, &result->ret_flags, &result->time_rec); + gssd_verbose_out("gssd_init_sec_context: done major=0x%x minor=%d" + " uid=%d\n", (unsigned int)result->major_status, + (int)result->minor_status, (int)argp->uid); if (result->major_status == GSS_S_COMPLETE || result->major_status == GSS_S_CONTINUE_NEEDED) { @@ -410,6 +445,8 @@ gssd_accept_sec_context_1_svc(accept_sec ctx = gssd_find_resource(argp->ctx); if (!ctx) { result->major_status = GSS_S_CONTEXT_EXPIRED; + gssd_verbose_out("gssd_accept_sec_context: ctx" + " resource not found\n"); return (TRUE); } } @@ -417,6 +454,8 @@ gssd_accept_sec_context_1_svc(accept_sec cred = gssd_find_resource(argp->cred); if (!cred) { result->major_status = GSS_S_CREDENTIALS_EXPIRED; + gssd_verbose_out("gssd_accept_sec_context: cred" + " resource not found\n"); return (TRUE); } } @@ -427,6 +466,8 @@ gssd_accept_sec_context_1_svc(accept_sec &src_name, &result->mech_type, &result->output_token, &result->ret_flags, &result->time_rec, &delegated_cred_handle); + gssd_verbose_out("gssd_accept_sec_context: done major=0x%x minor=%d\n", + (unsigned int)result->major_status, (int)result->minor_status); if (result->major_status == GSS_S_COMPLETE || result->major_status == GSS_S_CONTINUE_NEEDED) { @@ -455,6 +496,8 @@ gssd_delete_sec_context_1_svc(delete_sec result->major_status = GSS_S_COMPLETE; result->minor_status = 0; } + gssd_verbose_out("gssd_delete_sec_context: done major=0x%x minor=%d\n", + (unsigned int)result->major_status, (int)result->minor_status); return (TRUE); } @@ -476,6 +519,8 @@ gssd_export_sec_context_1_svc(export_sec result->interprocess_token.length = 0; result->interprocess_token.value = NULL; } + gssd_verbose_out("gssd_export_sec_context: done major=0x%x minor=%d\n", + (unsigned int)result->major_status, (int)result->minor_status); return (TRUE); } @@ -487,6 +532,8 @@ gssd_import_name_1_svc(import_name_args result->major_status = gss_import_name(&result->minor_status, &argp->input_name_buffer, argp->input_name_type, &name); + gssd_verbose_out("gssd_import_name: done major=0x%x minor=%d\n", + (unsigned int)result->major_status, (int)result->minor_status); if (result->major_status == GSS_S_COMPLETE) result->output_name = gssd_make_resource(name); @@ -510,6 +557,8 @@ gssd_canonicalize_name_1_svc(canonicaliz result->major_status = gss_canonicalize_name(&result->minor_status, name, argp->mech_type, &output_name); + gssd_verbose_out("gssd_canonicalize_name: done major=0x%x minor=%d\n", + (unsigned int)result->major_status, (int)result->minor_status); if (result->major_status == GSS_S_COMPLETE) result->output_name = gssd_make_resource(output_name); @@ -527,11 +576,14 @@ gssd_export_name_1_svc(export_name_args memset(result, 0, sizeof(*result)); if (!name) { result->major_status = GSS_S_BAD_NAME; + gssd_verbose_out("gssd_export_name: name resource not found\n"); return (TRUE); } result->major_status = gss_export_name(&result->minor_status, name, &result->exported_name); + gssd_verbose_out("gssd_export_name: done major=0x%x minor=%d\n", + (unsigned int)result->major_status, (int)result->minor_status); return (TRUE); } @@ -549,6 +601,8 @@ gssd_release_name_1_svc(release_name_arg result->major_status = GSS_S_COMPLETE; result->minor_status = 0; } + gssd_verbose_out("gssd_release_name: done major=0x%x minor=%d\n", + (unsigned int)result->major_status, (int)result->minor_status); return (TRUE); } @@ -600,17 +654,27 @@ gssd_pname_to_uid_1_svc(pname_to_uid_arg mem_alloc(len * sizeof(int)); memcpy(result->gidlist.gidlist_val, groups, len * sizeof(int)); + gssd_verbose_out("gssd_pname_to_uid: mapped" + " to uid=%d, gid=%d\n", (int)result->uid, + (int)result->gid); } else { result->gid = 65534; result->gidlist.gidlist_len = 0; result->gidlist.gidlist_val = NULL; + gssd_verbose_out("gssd_pname_to_uid: mapped" + " to uid=%d, but no groups\n", + (int)result->uid); } if (bufp != NULL && buflen > sizeof(buf)) free(bufp); - } + } else + gssd_verbose_out("gssd_pname_to_uid: failed major=0x%x" + " minor=%d\n", (unsigned int)result->major_status, + (int)result->minor_status); } else { result->major_status = GSS_S_BAD_NAME; result->minor_status = 0; + gssd_verbose_out("gssd_pname_to_uid: no name\n"); } return (TRUE); @@ -646,6 +710,8 @@ gssd_acquire_cred_1_svc(acquire_cred_arg } while (cp != NULL && *cp != '\0'); if (gotone == 0) { result->major_status = GSS_S_CREDENTIALS_EXPIRED; + gssd_verbose_out("gssd_acquire_cred: no cred cache" + " file found\n"); return (TRUE); } } else { @@ -672,6 +738,8 @@ gssd_acquire_cred_1_svc(acquire_cred_arg desired_name = gssd_find_resource(argp->desired_name); if (!desired_name) { result->major_status = GSS_S_BAD_NAME; + gssd_verbose_out("gssd_acquire_cred: no desired name" + " found\n"); return (TRUE); } } @@ -679,6 +747,8 @@ gssd_acquire_cred_1_svc(acquire_cred_arg result->major_status = gss_acquire_cred(&result->minor_status, desired_name, argp->time_req, argp->desired_mechs, argp->cred_usage, &cred, &result->actual_mechs, &result->time_rec); + gssd_verbose_out("gssd_acquire_cred: done major=0x%x minor=%d\n", + (unsigned int)result->major_status, (int)result->minor_status); if (result->major_status == GSS_S_COMPLETE) result->output_cred = gssd_make_resource(cred); @@ -696,11 +766,14 @@ gssd_set_cred_option_1_svc(set_cred_opti memset(result, 0, sizeof(*result)); if (!cred) { result->major_status = GSS_S_CREDENTIALS_EXPIRED; + gssd_verbose_out("gssd_set_cred: no credentials\n"); return (TRUE); } result->major_status = gss_set_cred_option(&result->minor_status, &cred, argp->option_name, &argp->option_value); + gssd_verbose_out("gssd_set_cred: done major=0x%x minor=%d\n", + (unsigned int)result->major_status, (int)result->minor_status); return (TRUE); } @@ -718,6 +791,8 @@ gssd_release_cred_1_svc(release_cred_arg result->major_status = GSS_S_COMPLETE; result->minor_status = 0; } + gssd_verbose_out("gssd_release_cred: done major=0x%x minor=%d\n", + (unsigned int)result->major_status, (int)result->minor_status); return (TRUE); } @@ -730,6 +805,8 @@ gssd_display_status_1_svc(display_status result->major_status = gss_display_status(&result->minor_status, argp->status_value, argp->status_type, argp->mech_type, &result->message_context, &result->status_string); + gssd_verbose_out("gssd_display_status: done major=0x%x minor=%d\n", + (unsigned int)result->major_status, (int)result->minor_status); return (TRUE); } From owner-svn-src-all@FreeBSD.ORG Fri Jun 21 20:21:14 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id DE6E21FD; Fri, 21 Jun 2013 20:21:14 +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 CDC9C12D3; Fri, 21 Jun 2013 20:21: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 r5LKLEPf025166; Fri, 21 Jun 2013 20:21:14 GMT (envelope-from rmacklem@svn.freebsd.org) Received: (from rmacklem@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LKLE3Y025165; Fri, 21 Jun 2013 20:21:14 GMT (envelope-from rmacklem@svn.freebsd.org) Message-Id: <201306212021.r5LKLE3Y025165@svn.freebsd.org> From: Rick Macklem Date: Fri, 21 Jun 2013 20:21:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252069 - stable/9/usr.sbin/gssd X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 20:21:15 -0000 Author: rmacklem Date: Fri Jun 21 20:21:14 2013 New Revision: 252069 URL: http://svnweb.freebsd.org/changeset/base/252069 Log: MFC: r251445 Document the new "-v" option for the gssd daemon. This is a content change. Modified: stable/9/usr.sbin/gssd/gssd.8 Directory Properties: stable/9/usr.sbin/gssd/ (props changed) Modified: stable/9/usr.sbin/gssd/gssd.8 ============================================================================== --- stable/9/usr.sbin/gssd/gssd.8 Fri Jun 21 20:16:41 2013 (r252068) +++ stable/9/usr.sbin/gssd/gssd.8 Fri Jun 21 20:21:14 2013 (r252069) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 30, 2012 +.Dd June 5, 2013 .Dt GSSD 8 .Os .Sh NAME @@ -34,6 +34,7 @@ .Sh SYNOPSIS .Nm .Op Fl d +.Op Fl v .Op Fl s Ar dir-list .Op Fl c Ar file-substring .Op Fl r Ar preferred-realm @@ -49,6 +50,16 @@ Run in debug mode. In this mode, .Nm will not fork when it starts. +.It Fl v +Run in verbose mode. +In this mode, +.Nm +will log activity messages to syslog using LOG_INFO | LOG_DAEMON or to +stderr, if the +.Fl d +option has also been specified. +The minor status is logged as a decimal number, since it is actually a +Kerberos return status, which is signed. .It Fl s Ar dir-list Look for an appropriate credential cache file in this list of directories. The list should be full pathnames from root, separated by ':' characters. @@ -79,7 +90,8 @@ by kernel GSS-API services. .Sh EXIT STATUS .Ex -std .Sh SEE ALSO -.Xr gssapi 3 +.Xr gssapi 3 , +.Xr syslog 3 .Sh HISTORY The .Nm From owner-svn-src-all@FreeBSD.ORG Fri Jun 21 21:38:49 2013 Return-Path: Delivered-To: svn-src-all@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 F25F59E; Fri, 21 Jun 2013 21:38:48 +0000 (UTC) (envelope-from gnn@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 E32451752; Fri, 21 Jun 2013 21:38: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 r5LLcmK2048021; Fri, 21 Jun 2013 21:38:48 GMT (envelope-from gnn@svn.freebsd.org) Received: (from gnn@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LLcmed048020; Fri, 21 Jun 2013 21:38:48 GMT (envelope-from gnn@svn.freebsd.org) Message-Id: <201306212138.r5LLcmed048020@svn.freebsd.org> From: "George V. Neville-Neil" Date: Fri, 21 Jun 2013 21:38:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252070 - stable/9/sys/kern X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 21:38:49 -0000 Author: gnn Date: Fri Jun 21 21:38:48 2013 New Revision: 252070 URL: http://svnweb.freebsd.org/changeset/base/252070 Log: MFC: 249514 Point args[0] not at the thread that is ending but at the one that is starting. This is in line with practice in OpenSolaris. Note that this change is only in ULE and not in the 4BSD scheduler. Once this change settles in (MFC timeout has expired) we'll try it out on 4BSD as well. PR: 177706 Submitted by: Tiwei Bie Modified: stable/9/sys/kern/sched_ule.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/kern/sched_ule.c ============================================================================== --- stable/9/sys/kern/sched_ule.c Fri Jun 21 20:21:14 2013 (r252069) +++ stable/9/sys/kern/sched_ule.c Fri Jun 21 21:38:48 2013 (r252070) @@ -1896,7 +1896,7 @@ sched_switch(struct thread *td, struct t if (PMC_PROC_IS_USING_PMCS(td->td_proc)) PMC_SWITCH_CONTEXT(td, PMC_FN_CSW_OUT); #endif - SDT_PROBE2(sched, , , off_cpu, td, td->td_proc); + SDT_PROBE2(sched, , , off_cpu, newtd, newtd->td_proc); lock_profile_release_lock(&TDQ_LOCKPTR(tdq)->lock_object); TDQ_LOCKPTR(tdq)->mtx_lock = (uintptr_t)newtd; sched_pctcpu_update(newtd->td_sched, 0); From owner-svn-src-all@FreeBSD.ORG Fri Jun 21 21:59:58 2013 Return-Path: Delivered-To: svn-src-all@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 E50C61D0; Fri, 21 Jun 2013 21:59:58 +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 BC29E1BCD; Fri, 21 Jun 2013 21:59: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 r5LLxwsB054217; Fri, 21 Jun 2013 21:59:58 GMT (envelope-from dteske@svn.freebsd.org) Received: (from dteske@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LLxwUj054216; Fri, 21 Jun 2013 21:59:58 GMT (envelope-from dteske@svn.freebsd.org) Message-Id: <201306212159.r5LLxwUj054216@svn.freebsd.org> From: Devin Teske Date: Fri, 21 Jun 2013 21:59:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r252071 - stable/8/usr.sbin/sysinstall X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 21:59:59 -0000 Author: dteske Date: Fri Jun 21 21:59:58 2013 New Revision: 252071 URL: http://svnweb.freebsd.org/changeset/base/252071 Log: MFS9->8 r249822: Update error messages when processing the INDEX file to display the given path rather than a static string. This makes the error messages consistent with the rest of the functions which already do the same thing (assumed to be an oversight of r47055, 13+ years ago). A direct commit to stable/9. This is a direct commit to stable/8. Reviewed by: eadler Modified: stable/8/usr.sbin/sysinstall/index.c Modified: stable/8/usr.sbin/sysinstall/index.c ============================================================================== --- stable/8/usr.sbin/sysinstall/index.c Fri Jun 21 21:38:48 2013 (r252070) +++ stable/8/usr.sbin/sysinstall/index.c Fri Jun 21 21:59:58 2013 (r252071) @@ -865,11 +865,11 @@ index_initialize(char *path) msgNotify("Attempting to fetch %s file from selected media.", path); fp = DEVICE_GET(mediaDevice, path, TRUE); if (!fp) { - msgConfirm("Unable to get packages/INDEX file from selected media.\n\n" + msgConfirm("Unable to get %s file from selected media.\n\n" "This may be because the packages collection is not available\n" "on the distribution media you've chosen, most likely an FTP site\n" "without the packages collection mirrored. Please verify that\n" - "your media, or your path to the media, is correct and try again."); + "your media, or your path to the media, is correct and try again.", path); DEVICE_SHUTDOWN(mediaDevice); restorescr(w); return DITEM_FAILURE; @@ -878,8 +878,9 @@ index_initialize(char *path) msgNotify("Located INDEX, now reading package data from it..."); index_init(&Top, &Plist); if (index_read(fp, &Top)) { - msgConfirm("I/O or format error on packages/INDEX file.\n" - "Please verify media (or path to media) and try again."); + msgConfirm("I/O or format error on %s file.\n" + "Please verify media (or path to media) and try again.", + path); fclose(fp); restorescr(w); return DITEM_FAILURE; From owner-svn-src-all@FreeBSD.ORG Fri Jun 21 22:26:19 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 22:45:04 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id E89718ED; Fri, 21 Jun 2013 22:45:04 +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 D92561D43; Fri, 21 Jun 2013 22:45: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 r5LMj4BM069836; Fri, 21 Jun 2013 22:45:04 GMT (envelope-from sjg@svn.freebsd.org) Received: (from sjg@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5LMj3uF069827; Fri, 21 Jun 2013 22:45:03 GMT (envelope-from sjg@svn.freebsd.org) Message-Id: <201306212245.r5LMj3uF069827@svn.freebsd.org> From: "Simon J. Gerraty" Date: Fri, 21 Jun 2013 22:45:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r252073 - in stable/8: . share/mk X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 21 Jun 2013 22:45:05 -0000 Author: sjg Date: Fri Jun 21 22:45:03 2013 New Revision: 252073 URL: http://svnweb.freebsd.org/changeset/base/252073 Log: share/mk: merge: r241298,243393,249057,251506 from head for bmake support. merge: r252048 from stable/9 Makefile: merge: r252048 from stable/9 for bmake support. Reviewed by: obrien Modified: stable/8/Makefile stable/8/share/mk/bsd.dep.mk stable/8/share/mk/bsd.obj.mk stable/8/share/mk/bsd.own.mk stable/8/share/mk/bsd.subdir.mk stable/8/share/mk/bsd.sys.mk stable/8/share/mk/sys.mk Directory Properties: stable/8/ (props changed) stable/8/share/ (props changed) stable/8/share/mk/ (props changed) Modified: stable/8/Makefile ============================================================================== --- stable/8/Makefile Fri Jun 21 22:26:18 2013 (r252072) +++ stable/8/Makefile Fri Jun 21 22:45:03 2013 (r252073) @@ -117,7 +117,13 @@ MAKEPATH= ${MAKEOBJDIRPREFIX}${.CURDIR}/ BINMAKE= \ `if [ -x ${MAKEPATH}/make ]; then echo ${MAKEPATH}/make; else echo ${MAKE}; fi` \ -m ${.CURDIR}/share/mk + +.if defined(.PARSEDIR) +# don't pass -J to fmake +_MAKE= PATH=${PATH} MAKEFLAGS="${MAKEFLAGS:N-J:N1*,1*}" ${BINMAKE} -f Makefile.inc1 +.else _MAKE= PATH=${PATH} ${BINMAKE} -f Makefile.inc1 +.endif # # Make sure we have an up-to-date make(1). Only world and buildworld @@ -175,7 +181,7 @@ ${TGTS}: .MAIN: all STARTTIME!= LC_ALL=C date -CHECK_TIME!= find ${.CURDIR}/sys/sys/param.h -mtime -0s +CHECK_TIME!= find ${.CURDIR}/sys/sys/param.h -mtime -0s; echo .if !empty(CHECK_TIME) .error check your date/time: ${STARTTIME} .endif Modified: stable/8/share/mk/bsd.dep.mk ============================================================================== --- stable/8/share/mk/bsd.dep.mk Fri Jun 21 22:26:18 2013 (r252072) +++ stable/8/share/mk/bsd.dep.mk Fri Jun 21 22:45:03 2013 (r252073) @@ -123,6 +123,9 @@ ${_YC:R}.o: ${_YC} .if defined(SRCS) depend: beforedepend ${DEPENDFILE} afterdepend +# Tell bmake not to look for generated files via .PATH +.NOPATH: ${DEPENDFILE} + # Different types of sources are compiled with slightly different flags. # Split up the sources, and filter out headers and non-applicable flags. .if ${CC} == "icc" Modified: stable/8/share/mk/bsd.obj.mk ============================================================================== --- stable/8/share/mk/bsd.obj.mk Fri Jun 21 22:26:18 2013 (r252072) +++ stable/8/share/mk/bsd.obj.mk Fri Jun 21 22:45:03 2013 (r252073) @@ -44,6 +44,8 @@ ____: .if defined(MAKEOBJDIRPREFIX) CANONICALOBJDIR:=${MAKEOBJDIRPREFIX}${.CURDIR} +.elif defined(MAKEOBJDIR) && ${MAKEOBJDIR:M/*} != "" +CANONICALOBJDIR:=${MAKEOBJDIR} .else CANONICALOBJDIR:=/usr/obj${.CURDIR} .endif @@ -116,6 +118,11 @@ cleanobj: clean cleandepend .endif @if [ -L ${.CURDIR}/obj ]; then rm -f ${.CURDIR}/obj; fi +# Tell bmake not to look for generated files via .PATH +.if !empty(CLEANFILES) +.NOPATH: ${CLEANFILES} +.endif + .if !target(clean) clean: .if defined(CLEANFILES) && !empty(CLEANFILES) Modified: stable/8/share/mk/bsd.own.mk ============================================================================== --- stable/8/share/mk/bsd.own.mk Fri Jun 21 22:26:18 2013 (r252072) +++ stable/8/share/mk/bsd.own.mk Fri Jun 21 22:45:03 2013 (r252073) @@ -573,6 +573,8 @@ MK_${vv:H}:= ${MK_${vv:T}} .if ${MK_CTF} != "no" CTFCONVERT_CMD= ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} +.elif defined(.PARSEDIR) || ${MAKE_VERSION} >= 9201210220 +CTFCONVERT_CMD= .else CTFCONVERT_CMD= @: .endif Modified: stable/8/share/mk/bsd.subdir.mk ============================================================================== --- stable/8/share/mk/bsd.subdir.mk Fri Jun 21 22:26:18 2013 (r252072) +++ stable/8/share/mk/bsd.subdir.mk Fri Jun 21 22:45:03 2013 (r252073) @@ -42,7 +42,7 @@ distribute: _SUBDIR: .USE .if defined(SUBDIR) && !empty(SUBDIR) && !defined(NO_SUBDIR) - @${_+_}for entry in ${SUBDIR}; do \ + @${_+_}set -e; for entry in ${SUBDIR}; do \ if test -d ${.CURDIR}/$${entry}.${MACHINE_ARCH}; then \ ${ECHODIR} "===> ${DIRPRFX}$${entry}.${MACHINE_ARCH} (${.TARGET:realinstall=install})"; \ edir=$${entry}.${MACHINE_ARCH}; \ @@ -80,7 +80,7 @@ ${__stage}${__target}: _SUBDIR .endif .endfor ${__target}: - ${_+_}cd ${.CURDIR}; ${MAKE} build${__target}; ${MAKE} install${__target} + ${_+_}set -e; cd ${.CURDIR}; ${MAKE} build${__target}; ${MAKE} install${__target} .endfor .if !target(install) Modified: stable/8/share/mk/bsd.sys.mk ============================================================================== --- stable/8/share/mk/bsd.sys.mk Fri Jun 21 22:26:18 2013 (r252072) +++ stable/8/share/mk/bsd.sys.mk Fri Jun 21 22:45:03 2013 (r252073) @@ -87,3 +87,18 @@ CFLAGS += ${SSP_CFLAGS} # Allow user-specified additional warning flags CFLAGS += ${CWARNFLAGS} + + +# Tell bmake not to mistake standard targets for things to be searched for +# or expect to ever be up-to-date. +PHONY_NOTMAIN = afterdepend afterinstall all beforedepend beforeinstall \ + beforelinking build build-tools buildfiles buildincludes \ + checkdpadd clean cleandepend cleandir cleanobj configure \ + depend dependall distclean distribute exe extract fetch \ + html includes install installfiles installincludes lint \ + obj objlink objs objwarn patch realall realdepend \ + realinstall regress subdir-all subdir-depend subdir-install \ + tags whereobj + +.PHONY: ${PHONY_NOTMAIN} +.NOTMAIN: ${PHONY_NOTMAIN} Modified: stable/8/share/mk/sys.mk ============================================================================== --- stable/8/share/mk/sys.mk Fri Jun 21 22:26:18 2013 (r252072) +++ stable/8/share/mk/sys.mk Fri Jun 21 22:45:03 2013 (r252073) @@ -4,6 +4,10 @@ unix ?= We run FreeBSD, not UNIX. .FreeBSD ?= true +# Set any local definitions first. Place this early, but it needs +# MACHINE_CPUARCH to be defined. +.sinclude + # If the special target .POSIX appears (without prerequisites or # commands) before the first noncomment line in the makefile, make shall # process the makefile as specified by the Posix 1003.2 specification. @@ -304,8 +308,22 @@ SHELL= ${__MAKE_SHELL} # XXX hint for bsd.port.mk OBJFORMAT?= elf +# Tell bmake to expand -V VAR by default +.MAKE.EXPAND_VARIABLES= yes + +# Tell bmake the makefile preference +.MAKE.MAKEFILE_PREFERENCE= BSDmakefile makefile Makefile + +.if !defined(.PARSEDIR) +# We are not bmake, which is more aggressive about searching .PATH +# It is sometime necessary to curb its enthusiasm with .NOPATH +# The following allows us to quietly ignore .NOPATH when not using bmake. +.NOTMAIN: .NOPATH +.NOPATH: + # Toggle on warnings .WARN: dirsyntax +.endif .endif From owner-svn-src-all@FreeBSD.ORG Fri Jun 21 22:46:17 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 22:47:32 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 22:53:52 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 23:13:59 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 23:18:30 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Fri Jun 21 23:21:16 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 02:22:14 2013 Return-Path: Delivered-To: svn-src-all@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 03B3CC3C; Sat, 22 Jun 2013 02:22:14 +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 E81C0167D; Sat, 22 Jun 2013 02:22: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 r5M2MDax040357; Sat, 22 Jun 2013 02:22:13 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5M2MD47040349; Sat, 22 Jun 2013 02:22:13 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201306220222.r5M2MD47040349@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Sat, 22 Jun 2013 02:22:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252080 - in stable/9: contrib/gcc contrib/gcc/config/i386 contrib/gcc/doc gnu/usr.bin/cc/include X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 02:22:14 -0000 Author: pfg Date: Sat Jun 22 02:22:12 2013 New Revision: 252080 URL: http://svnweb.freebsd.org/changeset/base/252080 Log: MFC r251212, r251480: GCC: bring back experimental support for amdfam10/barcelona CPUs. This is a revised subset of the support initially brought in in r236962 and later reverted. The collateral efects seem to have disappeared but it is still recommended to set the CPUTYPE with caution. While here also install AMD intrinsics header ammintrin.h Reviewed by: jkim (ages ago) Added: stable/9/contrib/gcc/config/i386/ammintrin.h - copied unchanged from r251212, head/contrib/gcc/config/i386/ammintrin.h Modified: stable/9/contrib/gcc/ChangeLog.gcc43 stable/9/contrib/gcc/config.gcc stable/9/contrib/gcc/config/i386/athlon.md stable/9/contrib/gcc/config/i386/driver-i386.c stable/9/contrib/gcc/config/i386/emmintrin.h stable/9/contrib/gcc/config/i386/i386.c stable/9/contrib/gcc/config/i386/i386.h stable/9/contrib/gcc/config/i386/i386.md stable/9/contrib/gcc/config/i386/i386.opt stable/9/contrib/gcc/config/i386/pmmintrin.h stable/9/contrib/gcc/config/i386/sse.md stable/9/contrib/gcc/config/i386/tmmintrin.h stable/9/contrib/gcc/doc/extend.texi stable/9/contrib/gcc/doc/invoke.texi stable/9/gnu/usr.bin/cc/include/Makefile Directory Properties: stable/9/ (props changed) stable/9/contrib/gcc/ (props changed) stable/9/gnu/usr.bin/cc/include/ (props changed) Modified: stable/9/contrib/gcc/ChangeLog.gcc43 ============================================================================== --- stable/9/contrib/gcc/ChangeLog.gcc43 Fri Jun 21 23:21:16 2013 (r252079) +++ stable/9/contrib/gcc/ChangeLog.gcc43 Sat Jun 22 02:22:12 2013 (r252080) @@ -1,3 +1,8 @@ +2007-05-01 Dwarakanath Rajagopal (r124341) + + * doc/invoke.texi: Fix typo, 'AMD Family 10h core' instead of + 'AMD Family 10 core'. + 2007-05-01 Dwarakanath Rajagopal (r124339) * config/i386/i386.c (override_options): Accept k8-sse3, opteron-sse3 @@ -5,6 +10,12 @@ with SSE3 instruction set support. * doc/invoke.texi: Likewise. +2007-05-01 Dwarakanath Rajagopal (r124330) + + * config/i386/i386.c (override_options): Tuning 32-byte loop + alignment for amdfam10 architecture. Increasing the max loop + alignment to 24 bytes. + 2007-04-12 Richard Guenther (r123736) PR tree-optimization/24689 @@ -21,6 +32,17 @@ * config/i386/i386.c (ix86_handle_option): Handle SSSE3. +2007-03-28 Dwarakanath Rajagopal (r123313) + + * config.gcc: Accept barcelona as a variant of amdfam10. + * config/i386/i386.c (override_options): Likewise. + * doc/invoke.texi: Likewise. + +2007-02-09 Dwarakanath Rajagopal (r121763) + + * config/i386/driver-i386.c: Turn on -mtune=native for AMDFAM10. + (bit_SSE4a): New. + 2007-02-08 Harsha Jagasia (r121726) * config/i386/xmmintrin.h: Make inclusion of emmintrin.h @@ -38,6 +60,168 @@ * config/i386/i386.c (override_options): Set PTA_SSSE3 for core2. +2007-02-05 Harsha Jagasia (r121625) + + * config/i386/athlon.md (athlon_fldxf_k8, athlon_fld_k8, + athlon_fstxf_k8, athlon_fst_k8, athlon_fist, athlon_fmov, + athlon_fadd_load, athlon_fadd_load_k8, athlon_fadd, athlon_fmul, + athlon_fmul_load, athlon_fmul_load_k8, athlon_fsgn, + athlon_fdiv_load, athlon_fdiv_load_k8, athlon_fdiv_k8, + athlon_fpspc_load, athlon_fpspc, athlon_fcmov_load, + athlon_fcmov_load_k8, athlon_fcmov_k8, athlon_fcomi_load_k8, + athlon_fcomi, athlon_fcom_load_k8, athlon_fcom): Added amdfam10. + +2007-02-05 Harsha Jagasia (r121625) + + * config/i386/i386.md (x86_sahf_1, cmpfp_i_mixed, cmpfp_i_sse, + cmpfp_i_i387, cmpfp_iu_mixed, cmpfp_iu_sse, cmpfp_iu_387, + swapsi, swaphi_1, swapqi_1, swapdi_rex64, fix_truncsfdi_sse, + fix_truncdfdi_sse, fix_truncsfsi_sse, fix_truncdfsi_sse, + x86_fldcw_1, floatsisf2_mixed, floatsisf2_sse, floatdisf2_mixed, + floatdisf2_sse, floatsidf2_mixed, floatsidf2_sse, + floatdidf2_mixed, floatdidf2_sse, muldi3_1_rex64, mulsi3_1, + mulsi3_1_zext, mulhi3_1, mulqi3_1, umulqihi3_1, mulqihi3_insn, + umulditi3_insn, umulsidi3_insn, mulditi3_insn, mulsidi3_insn, + umuldi3_highpart_rex64, umulsi3_highpart_insn, + umulsi3_highpart_zext, smuldi3_highpart_rex64, + smulsi3_highpart_insn, smulsi3_highpart_zext, x86_64_shld, + x86_shld_1, x86_64_shrd, sqrtsf2_mixed, sqrtsf2_sse, + sqrtsf2_i387, sqrtdf2_mixed, sqrtdf2_sse, sqrtdf2_i387, + sqrtextendsfdf2_i387, sqrtxf2, sqrtextendsfxf2_i387, + sqrtextenddfxf2_i387): Added amdfam10_decode. + + * config/i386/athlon.md (athlon_idirect_amdfam10, + athlon_ivector_amdfam10, athlon_idirect_load_amdfam10, + athlon_ivector_load_amdfam10, athlon_idirect_both_amdfam10, + athlon_ivector_both_amdfam10, athlon_idirect_store_amdfam10, + athlon_ivector_store_amdfam10): New define_insn_reservation. + (athlon_idirect_loadmov, athlon_idirect_movstore): Added + amdfam10. + +2007-02-05 Harsha Jagasia (r121625) + + * config/i386/athlon.md (athlon_call_amdfam10, + athlon_pop_amdfam10, athlon_lea_amdfam10): New + define_insn_reservation. + (athlon_branch, athlon_push, athlon_leave_k8, athlon_imul_k8, + athlon_imul_k8_DI, athlon_imul_mem_k8, athlon_imul_mem_k8_DI, + athlon_idiv, athlon_idiv_mem, athlon_str): Added amdfam10. + +2007-02-05 Harsha Jagasia (r121625) + + * config/i386/athlon.md (athlon_sseld_amdfam10, + athlon_mmxld_amdfam10, athlon_ssest_amdfam10, + athlon_mmxssest_short_amdfam10): New define_insn_reservation. + +2007-02-05 Harsha Jagasia (r121625) + + * config/i386/athlon.md (athlon_sseins_amdfam10): New + define_insn_reservation. + * config/i386/i386.md (sseins): Added sseins to define_attr type + and define_attr unit. + * config/i386/sse.md: Set type attribute to sseins for insertq + and insertqi. + +2007-02-05 Harsha Jagasia (r121625) + + * config/i386/athlon.md (sselog_load_amdfam10, sselog_amdfam10, + ssecmpvector_load_amdfam10, ssecmpvector_amdfam10, + ssecomi_load_amdfam10, ssecomi_amdfam10, + sseaddvector_load_amdfam10, sseaddvector_amdfam10): New + define_insn_reservation. + (ssecmp_load_k8, ssecmp, sseadd_load_k8, seadd): Added amdfam10. + +2007-02-05 Harsha Jagasia (r121625) + + * config/i386/athlon.md (cvtss2sd_load_amdfam10, + cvtss2sd_amdfam10, cvtps2pd_load_amdfam10, cvtps2pd_amdfam10, + cvtsi2sd_load_amdfam10, cvtsi2ss_load_amdfam10, + cvtsi2sd_amdfam10, cvtsi2ss_amdfam10, cvtsd2ss_load_amdfam10, + cvtsd2ss_amdfam10, cvtpd2ps_load_amdfam10, cvtpd2ps_amdfam10, + cvtsX2si_load_amdfam10, cvtsX2si_amdfam10): New + define_insn_reservation. + + * config/i386/sse.md (cvtsi2ss, cvtsi2ssq, cvtss2si, + cvtss2siq, cvttss2si, cvttss2siq, cvtsi2sd, cvtsi2sdq, + cvtsd2si, cvtsd2siq, cvttsd2si, cvttsd2siq, + cvtpd2dq, cvttpd2dq, cvtsd2ss, cvtss2sd, + cvtpd2ps, cvtps2pd): Added amdfam10_decode attribute. + +2007-02-05 Harsha Jagasia (r121625) + + * config/i386/athlon.md (athlon_ssedivvector_amdfam10, + athlon_ssedivvector_load_amdfam10, athlon_ssemulvector_amdfam10, + athlon_ssemulvector_load_amdfam10): New define_insn_reservation. + (athlon_ssediv, athlon_ssediv_load_k8, athlon_ssemul, + athlon_ssemul_load_k8): Added amdfam10. + +2007-02-05 Harsha Jagasia (r121625) + + * config/i386/i386.h (TARGET_SSE_UNALIGNED_MOVE_OPTIMAL): New macro. + (x86_sse_unaligned_move_optimal): New variable. + + * config/i386/i386.c (x86_sse_unaligned_move_optimal): Enable for + m_AMDFAM10. + (ix86_expand_vector_move_misalign): Add code to generate movupd/movups + for unaligned vector SSE double/single precision loads for AMDFAM10. + +2007-02-05 Harsha Jagasia (r121625) + + * config/i386/i386.h (TARGET_AMDFAM10): New macro. + (TARGET_CPU_CPP_BUILTINS): Add code for amdfam10. + Define TARGET_CPU_DEFAULT_amdfam10. + (TARGET_CPU_DEFAULT_NAMES): Add amdfam10. + (processor_type): Add PROCESSOR_AMDFAM10. + + * config/i386/i386.md: Add amdfam10 as a new cpu attribute to match + processor_type in config/i386/i386.h. + Enable imul peepholes for TARGET_AMDFAM10. + + * config.gcc: Add support for --with-cpu option for amdfam10. + + * config/i386/i386.c (amdfam10_cost): New variable. + (m_AMDFAM10): New macro. + (m_ATHLON_K8_AMDFAM10): New macro. + (x86_use_leave, x86_push_memory, x86_movx, x86_unroll_strlen, + x86_cmove, x86_3dnow_a, x86_deep_branch, x86_use_simode_fiop, + x86_promote_QImode, x86_integer_DFmode_moves, + x86_partial_reg_dependency, x86_memory_mismatch_stall, + x86_accumulate_outgoing_args, x86_arch_always_fancy_math_387, + x86_sse_partial_reg_dependency, x86_sse_typeless_stores, + x86_use_ffreep, x86_use_incdec, x86_four_jump_limit, + x86_schedule, x86_use_bt, x86_cmpxchg16b, x86_pad_returns): + Enable/disable for amdfam10. + (override_options): Add amdfam10_cost to processor_target_table. + Set up PROCESSOR_AMDFAM10 for amdfam10 entry in + processor_alias_table. + (ix86_issue_rate): Add PROCESSOR_AMDFAM10. + (ix86_adjust_cost): Add code for amdfam10. + +2007-02-05 Harsha Jagasia (r121625) + + * config/i386/i386.opt: Add new Advanced Bit Manipulation (-mabm) + instruction set feature flag. Add new (-mpopcnt) flag for popcnt + instruction. Add new SSE4A (-msse4a) instruction set feature flag. + * config/i386/i386.h: Add builtin definition for SSE4A. + * config/i386/i386.md: Add support for ABM instructions + (popcnt and lzcnt). + * config/i386/sse.md: Add support for SSE4A instructions + (movntss, movntsd, extrq, insertq). + * config/i386/i386.c: Add support for ABM and SSE4A builtins. + Add -march=amdfam10 flag. + * config/i386/ammintrin.h: Add support for SSE4A intrinsics. + * doc/invoke.texi: Add documentation on flags for sse4a, abm, popcnt + and amdfam10. + * doc/extend.texi: Add documentation for SSE4A builtins. + +2007-01-24 Jakub Jelinek (r121140) + + * config/i386/i386.h (x86_cmpxchg16b): Remove const. + (TARGET_CMPXCHG16B): Define to x86_cmpxchg16b. + * config/i386/i386.c (x86_cmpxchg16b): Remove const. + (override_options): Add PTA_CX16 flag. Set x86_cmpxchg16b + for CPUs that have PTA_CX16 set. + 2007-01-17 Eric Christopher (r120846) * config.gcc: Support core2 processor. @@ -47,6 +231,11 @@ PR target/30040 * config/i386/driver-i386.c (bit_SSSE3): New. +2006-11-27 Uros Bizjak (r119260) + + * config/i386/i386.c (x86_ext_80387_constants): Add m_K8, m_CORE2 + and m_GENERIC64. + 2006-11-18 Vladimir Makarov (r118973) * doc/invoke.texi (core2): Add item. @@ -182,7 +371,7 @@ * doc/invoke.texi: Document -mssse3/-mno-ssse3 switches. -2006-10-22 H.J. Lu +2006-10-22 H.J. Lu (r117959) * config/i386/tmmintrin.h: Remove the duplicated content. Modified: stable/9/contrib/gcc/config.gcc ============================================================================== --- stable/9/contrib/gcc/config.gcc Fri Jun 21 23:21:16 2013 (r252079) +++ stable/9/contrib/gcc/config.gcc Sat Jun 22 02:22:12 2013 (r252080) @@ -269,12 +269,12 @@ xscale-*-*) i[34567]86-*-*) cpu_type=i386 extra_headers="mmintrin.h mm3dnow.h xmmintrin.h emmintrin.h - pmmintrin.h tmmintrin.h" + pmmintrin.h tmmintrin.h ammintrin.h" ;; x86_64-*-*) cpu_type=i386 extra_headers="mmintrin.h mm3dnow.h xmmintrin.h emmintrin.h - pmmintrin.h tmmintrin.h" + pmmintrin.h tmmintrin.h ammintrin.h" need_64bit_hwint=yes ;; ia64-*-*) @@ -1209,14 +1209,14 @@ i[34567]86-*-solaris2*) # FIXME: -m64 for i[34567]86-*-* should be allowed just # like -m32 for x86_64-*-*. case X"${with_cpu}" in - Xgeneric|Xcore2|Xnocona|Xx86-64|Xk8|Xopteron|Xathlon64|Xathlon-fx) + Xgeneric|Xcore2|Xnocona|Xx86-64|Xamdfam10|Xbarcelona|Xk8|Xopteron|Xathlon64|Xathlon-fx) ;; X) with_cpu=generic ;; *) echo "Unsupported CPU used in --with-cpu=$with_cpu, supported values:" 1>&2 - echo "generic core2 nocona x86-64 k8 opteron athlon64 athlon-fx" 1>&2 + echo "generic core2 nocona x86-64 amdfam10 barcelona k8 opteron athlon64 athlon-fx" 1>&2 exit 1 ;; esac @@ -2515,6 +2515,9 @@ if test x$with_cpu = x ; then ;; i686-*-* | i786-*-*) case ${target_noncanonical} in + amdfam10-*|barcelona-*) + with_cpu=amdfam10 + ;; k8-*|opteron-*|athlon_64-*) with_cpu=k8 ;; @@ -2555,6 +2558,9 @@ if test x$with_cpu = x ; then ;; x86_64-*-*) case ${target_noncanonical} in + amdfam10-*|barcelona-*) + with_cpu=amdfam10 + ;; k8-*|opteron-*|athlon_64-*) with_cpu=k8 ;; @@ -2795,7 +2801,7 @@ case "${target}" in esac # OK ;; - "" | k8 | opteron | athlon64 | athlon-fx | nocona | core2 | generic) + "" | amdfam10 | barcelona | k8 | opteron | athlon64 | athlon-fx | nocona | core2 | generic) # OK ;; *) Copied: stable/9/contrib/gcc/config/i386/ammintrin.h (from r251212, head/contrib/gcc/config/i386/ammintrin.h) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ stable/9/contrib/gcc/config/i386/ammintrin.h Sat Jun 22 02:22:12 2013 (r252080, copy of r251212, head/contrib/gcc/config/i386/ammintrin.h) @@ -0,0 +1,73 @@ +/* Copyright (C) 2007 Free Software Foundation, Inc. + + This file is part of GCC. + + GCC is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2, or (at your option) + any later version. + + GCC is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with GCC; see the file COPYING. If not, write to + the Free Software Foundation, 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. */ + +/* As a special exception, if you include this header file into source + files compiled by GCC, this header file does not by itself cause + the resulting executable to be covered by the GNU General Public + License. This exception does not however invalidate any other + reasons why the executable file might be covered by the GNU General + Public License. */ + +/* Implemented from the specification included in the AMD Programmers + Manual Update, version 2.x */ + +#ifndef _AMMINTRIN_H_INCLUDED +#define _AMMINTRIN_H_INCLUDED + +#ifndef __SSE4A__ +# error "SSE4A instruction set not enabled" +#else + +/* We need definitions from the SSE3, SSE2 and SSE header files*/ +#include + +static __inline void __attribute__((__always_inline__)) +_mm_stream_sd (double * __P, __m128d __Y) +{ + __builtin_ia32_movntsd (__P, (__v2df) __Y); +} + +static __inline void __attribute__((__always_inline__)) +_mm_stream_ss (float * __P, __m128 __Y) +{ + __builtin_ia32_movntss (__P, (__v4sf) __Y); +} + +static __inline __m128i __attribute__((__always_inline__)) +_mm_extract_si64 (__m128i __X, __m128i __Y) +{ + return (__m128i) __builtin_ia32_extrq ((__v2di) __X, (__v16qi) __Y); +} + +#define _mm_extracti_si64(X, I, L) \ +((__m128i) __builtin_ia32_extrqi ((__v2di)(X), I, L)) + +static __inline __m128i __attribute__((__always_inline__)) +_mm_insert_si64 (__m128i __X,__m128i __Y) +{ + return (__m128i) __builtin_ia32_insertq ((__v2di)__X, (__v2di)__Y); +} + +#define _mm_inserti_si64(X, Y, I, L) \ +((__m128i) __builtin_ia32_insertqi ((__v2di)(X), (__v2di)(Y), I, L)) + + +#endif /* __SSE4A__ */ + +#endif /* _AMMINTRIN_H_INCLUDED */ Modified: stable/9/contrib/gcc/config/i386/athlon.md ============================================================================== --- stable/9/contrib/gcc/config/i386/athlon.md Fri Jun 21 23:21:16 2013 (r252079) +++ stable/9/contrib/gcc/config/i386/athlon.md Sat Jun 22 02:22:12 2013 (r252080) @@ -29,6 +29,8 @@ (const_string "vector")] (const_string "direct"))) +(define_attr "amdfam10_decode" "direct,vector,double" + (const_string "direct")) ;; ;; decode0 decode1 decode2 ;; \ | / @@ -131,18 +133,22 @@ ;; Jump instructions are executed in the branch unit completely transparent to us (define_insn_reservation "athlon_branch" 0 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (eq_attr "type" "ibr")) "athlon-direct,athlon-ieu") (define_insn_reservation "athlon_call" 0 (and (eq_attr "cpu" "athlon,k8,generic64") (eq_attr "type" "call,callv")) "athlon-vector,athlon-ieu") +(define_insn_reservation "athlon_call_amdfam10" 0 + (and (eq_attr "cpu" "amdfam10") + (eq_attr "type" "call,callv")) + "athlon-double,athlon-ieu") ;; Latency of push operation is 3 cycles, but ESP value is available ;; earlier (define_insn_reservation "athlon_push" 2 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (eq_attr "type" "push")) "athlon-direct,athlon-agu,athlon-store") (define_insn_reservation "athlon_pop" 4 @@ -153,12 +159,16 @@ (and (eq_attr "cpu" "k8,generic64") (eq_attr "type" "pop")) "athlon-double,(athlon-ieu+athlon-load)") +(define_insn_reservation "athlon_pop_amdfam10" 3 + (and (eq_attr "cpu" "amdfam10") + (eq_attr "type" "pop")) + "athlon-direct,(athlon-ieu+athlon-load)") (define_insn_reservation "athlon_leave" 3 (and (eq_attr "cpu" "athlon") (eq_attr "type" "leave")) "athlon-vector,(athlon-ieu+athlon-load)") (define_insn_reservation "athlon_leave_k8" 3 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (eq_attr "type" "leave")) "athlon-double,(athlon-ieu+athlon-load)") @@ -167,6 +177,11 @@ (and (eq_attr "cpu" "athlon,k8,generic64") (eq_attr "type" "lea")) "athlon-direct,athlon-agu,nothing") +;; Lea executes in AGU unit with 1 cycle latency on AMDFAM10 +(define_insn_reservation "athlon_lea_amdfam10" 1 + (and (eq_attr "cpu" "amdfam10") + (eq_attr "type" "lea")) + "athlon-direct,athlon-agu,nothing") ;; Mul executes in special multiplier unit attached to IEU0 (define_insn_reservation "athlon_imul" 5 @@ -176,29 +191,35 @@ "athlon-vector,athlon-ieu0,athlon-mult,nothing,nothing,athlon-ieu0") ;; ??? Widening multiply is vector or double. (define_insn_reservation "athlon_imul_k8_DI" 4 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "imul") (and (eq_attr "mode" "DI") (eq_attr "memory" "none,unknown")))) "athlon-direct0,athlon-ieu0,athlon-mult,nothing,athlon-ieu0") (define_insn_reservation "athlon_imul_k8" 3 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "imul") (eq_attr "memory" "none,unknown"))) "athlon-direct0,athlon-ieu0,athlon-mult,athlon-ieu0") +(define_insn_reservation "athlon_imul_amdfam10_HI" 4 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "type" "imul") + (and (eq_attr "mode" "HI") + (eq_attr "memory" "none,unknown")))) + "athlon-vector,athlon-ieu0,athlon-mult,nothing,athlon-ieu0") (define_insn_reservation "athlon_imul_mem" 8 (and (eq_attr "cpu" "athlon") (and (eq_attr "type" "imul") (eq_attr "memory" "load,both"))) "athlon-vector,athlon-load,athlon-ieu,athlon-mult,nothing,nothing,athlon-ieu") (define_insn_reservation "athlon_imul_mem_k8_DI" 7 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "imul") (and (eq_attr "mode" "DI") (eq_attr "memory" "load,both")))) "athlon-vector,athlon-load,athlon-ieu,athlon-mult,nothing,athlon-ieu") (define_insn_reservation "athlon_imul_mem_k8" 6 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "imul") (eq_attr "memory" "load,both"))) "athlon-vector,athlon-load,athlon-ieu,athlon-mult,athlon-ieu") @@ -209,21 +230,23 @@ ;; other instructions. ;; ??? Experiments show that the idiv can overlap with roughly 6 cycles ;; of the other code +;; Using the same heuristics for amdfam10 as K8 with idiv (define_insn_reservation "athlon_idiv" 6 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (and (eq_attr "type" "idiv") (eq_attr "memory" "none,unknown"))) "athlon-vector,(athlon-ieu0*6+(athlon-fpsched,athlon-fvector))") (define_insn_reservation "athlon_idiv_mem" 9 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (and (eq_attr "type" "idiv") (eq_attr "memory" "load,both"))) "athlon-vector,((athlon-load,athlon-ieu0*6)+(athlon-fpsched,athlon-fvector))") ;; The parallelism of string instructions is not documented. Model it same way ;; as idiv to create smaller automata. This probably does not matter much. +;; Using the same heuristics for amdfam10 as K8 with idiv (define_insn_reservation "athlon_str" 6 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (and (eq_attr "type" "str") (eq_attr "memory" "load,both,store"))) "athlon-vector,athlon-load,athlon-ieu0*6") @@ -234,34 +257,62 @@ (and (eq_attr "unit" "integer,unknown") (eq_attr "memory" "none,unknown")))) "athlon-direct,athlon-ieu") +(define_insn_reservation "athlon_idirect_amdfam10" 1 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "amdfam10_decode" "direct") + (and (eq_attr "unit" "integer,unknown") + (eq_attr "memory" "none,unknown")))) + "athlon-direct,athlon-ieu") (define_insn_reservation "athlon_ivector" 2 (and (eq_attr "cpu" "athlon,k8,generic64") (and (eq_attr "athlon_decode" "vector") (and (eq_attr "unit" "integer,unknown") (eq_attr "memory" "none,unknown")))) "athlon-vector,athlon-ieu,athlon-ieu") +(define_insn_reservation "athlon_ivector_amdfam10" 2 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "amdfam10_decode" "vector") + (and (eq_attr "unit" "integer,unknown") + (eq_attr "memory" "none,unknown")))) + "athlon-vector,athlon-ieu,athlon-ieu") + (define_insn_reservation "athlon_idirect_loadmov" 3 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (and (eq_attr "type" "imov") (eq_attr "memory" "load"))) "athlon-direct,athlon-load") + (define_insn_reservation "athlon_idirect_load" 4 (and (eq_attr "cpu" "athlon,k8,generic64") (and (eq_attr "athlon_decode" "direct") (and (eq_attr "unit" "integer,unknown") (eq_attr "memory" "load")))) "athlon-direct,athlon-load,athlon-ieu") +(define_insn_reservation "athlon_idirect_load_amdfam10" 4 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "amdfam10_decode" "direct") + (and (eq_attr "unit" "integer,unknown") + (eq_attr "memory" "load")))) + "athlon-direct,athlon-load,athlon-ieu") (define_insn_reservation "athlon_ivector_load" 6 (and (eq_attr "cpu" "athlon,k8,generic64") (and (eq_attr "athlon_decode" "vector") (and (eq_attr "unit" "integer,unknown") (eq_attr "memory" "load")))) "athlon-vector,athlon-load,athlon-ieu,athlon-ieu") +(define_insn_reservation "athlon_ivector_load_amdfam10" 6 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "amdfam10_decode" "vector") + (and (eq_attr "unit" "integer,unknown") + (eq_attr "memory" "load")))) + "athlon-vector,athlon-load,athlon-ieu,athlon-ieu") + (define_insn_reservation "athlon_idirect_movstore" 1 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (and (eq_attr "type" "imov") (eq_attr "memory" "store"))) "athlon-direct,athlon-agu,athlon-store") + (define_insn_reservation "athlon_idirect_both" 4 (and (eq_attr "cpu" "athlon,k8,generic64") (and (eq_attr "athlon_decode" "direct") @@ -270,6 +321,15 @@ "athlon-direct,athlon-load, athlon-ieu,athlon-store, athlon-store") +(define_insn_reservation "athlon_idirect_both_amdfam10" 4 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "amdfam10_decode" "direct") + (and (eq_attr "unit" "integer,unknown") + (eq_attr "memory" "both")))) + "athlon-direct,athlon-load, + athlon-ieu,athlon-store, + athlon-store") + (define_insn_reservation "athlon_ivector_both" 6 (and (eq_attr "cpu" "athlon,k8,generic64") (and (eq_attr "athlon_decode" "vector") @@ -279,6 +339,16 @@ athlon-ieu, athlon-ieu, athlon-store") +(define_insn_reservation "athlon_ivector_both_amdfam10" 6 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "amdfam10_decode" "vector") + (and (eq_attr "unit" "integer,unknown") + (eq_attr "memory" "both")))) + "athlon-vector,athlon-load, + athlon-ieu, + athlon-ieu, + athlon-store") + (define_insn_reservation "athlon_idirect_store" 1 (and (eq_attr "cpu" "athlon,k8,generic64") (and (eq_attr "athlon_decode" "direct") @@ -286,6 +356,14 @@ (eq_attr "memory" "store")))) "athlon-direct,(athlon-ieu+athlon-agu), athlon-store") +(define_insn_reservation "athlon_idirect_store_amdfam10" 1 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "amdfam10_decode" "direct") + (and (eq_attr "unit" "integer,unknown") + (eq_attr "memory" "store")))) + "athlon-direct,(athlon-ieu+athlon-agu), + athlon-store") + (define_insn_reservation "athlon_ivector_store" 2 (and (eq_attr "cpu" "athlon,k8,generic64") (and (eq_attr "athlon_decode" "vector") @@ -293,6 +371,13 @@ (eq_attr "memory" "store")))) "athlon-vector,(athlon-ieu+athlon-agu),athlon-ieu, athlon-store") +(define_insn_reservation "athlon_ivector_store_amdfam10" 2 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "amdfam10_decode" "vector") + (and (eq_attr "unit" "integer,unknown") + (eq_attr "memory" "store")))) + "athlon-vector,(athlon-ieu+athlon-agu),athlon-ieu, + athlon-store") ;; Athlon floatin point unit (define_insn_reservation "athlon_fldxf" 12 @@ -302,7 +387,7 @@ (eq_attr "mode" "XF")))) "athlon-vector,athlon-fpload2,athlon-fvector*9") (define_insn_reservation "athlon_fldxf_k8" 13 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "fmov") (and (eq_attr "memory" "load") (eq_attr "mode" "XF")))) @@ -314,7 +399,7 @@ (eq_attr "memory" "load"))) "athlon-direct,athlon-fpload,athlon-fany") (define_insn_reservation "athlon_fld_k8" 2 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "fmov") (eq_attr "memory" "load"))) "athlon-direct,athlon-fploadk8,athlon-fstore") @@ -326,7 +411,7 @@ (eq_attr "mode" "XF")))) "athlon-vector,(athlon-fpsched+athlon-agu),(athlon-store2+(athlon-fvector*7))") (define_insn_reservation "athlon_fstxf_k8" 8 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "fmov") (and (eq_attr "memory" "store,both") (eq_attr "mode" "XF")))) @@ -337,16 +422,16 @@ (eq_attr "memory" "store,both"))) "athlon-direct,(athlon-fpsched+athlon-agu),(athlon-fstore+athlon-store)") (define_insn_reservation "athlon_fst_k8" 2 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "fmov") (eq_attr "memory" "store,both"))) "athlon-direct,(athlon-fpsched+athlon-agu),(athlon-fstore+athlon-store)") (define_insn_reservation "athlon_fist" 4 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (eq_attr "type" "fistp,fisttp")) "athlon-direct,(athlon-fpsched+athlon-agu),(athlon-fstore+athlon-store)") (define_insn_reservation "athlon_fmov" 2 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (eq_attr "type" "fmov")) "athlon-direct,athlon-fpsched,athlon-faddmul") (define_insn_reservation "athlon_fadd_load" 4 @@ -355,12 +440,12 @@ (eq_attr "memory" "load"))) "athlon-direct,athlon-fpload,athlon-fadd") (define_insn_reservation "athlon_fadd_load_k8" 6 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "fop") (eq_attr "memory" "load"))) "athlon-direct,athlon-fploadk8,athlon-fadd") (define_insn_reservation "athlon_fadd" 4 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (eq_attr "type" "fop")) "athlon-direct,athlon-fpsched,athlon-fadd") (define_insn_reservation "athlon_fmul_load" 4 @@ -369,16 +454,16 @@ (eq_attr "memory" "load"))) "athlon-direct,athlon-fpload,athlon-fmul") (define_insn_reservation "athlon_fmul_load_k8" 6 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "fmul") (eq_attr "memory" "load"))) "athlon-direct,athlon-fploadk8,athlon-fmul") (define_insn_reservation "athlon_fmul" 4 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (eq_attr "type" "fmul")) "athlon-direct,athlon-fpsched,athlon-fmul") (define_insn_reservation "athlon_fsgn" 2 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (eq_attr "type" "fsgn")) "athlon-direct,athlon-fpsched,athlon-fmul") (define_insn_reservation "athlon_fdiv_load" 24 @@ -387,7 +472,7 @@ (eq_attr "memory" "load"))) "athlon-direct,athlon-fpload,athlon-fmul") (define_insn_reservation "athlon_fdiv_load_k8" 13 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "fdiv") (eq_attr "memory" "load"))) "athlon-direct,athlon-fploadk8,athlon-fmul") @@ -396,16 +481,16 @@ (eq_attr "type" "fdiv")) "athlon-direct,athlon-fpsched,athlon-fmul") (define_insn_reservation "athlon_fdiv_k8" 11 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (eq_attr "type" "fdiv")) "athlon-direct,athlon-fpsched,athlon-fmul") (define_insn_reservation "athlon_fpspc_load" 103 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (and (eq_attr "type" "fpspc") (eq_attr "memory" "load"))) "athlon-vector,athlon-fpload,athlon-fvector") (define_insn_reservation "athlon_fpspc" 100 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (eq_attr "type" "fpspc")) "athlon-vector,athlon-fpsched,athlon-fvector") (define_insn_reservation "athlon_fcmov_load" 7 @@ -418,12 +503,12 @@ (eq_attr "type" "fcmov")) "athlon-vector,athlon-fpsched,athlon-fvector") (define_insn_reservation "athlon_fcmov_load_k8" 17 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "fcmov") (eq_attr "memory" "load"))) "athlon-vector,athlon-fploadk8,athlon-fvector") (define_insn_reservation "athlon_fcmov_k8" 15 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (eq_attr "type" "fcmov")) "athlon-vector,athlon-fpsched,athlon-fvector") ;; fcomi is vector decoded by uses only one pipe. @@ -434,13 +519,13 @@ (eq_attr "memory" "load")))) "athlon-vector,athlon-fpload,athlon-fadd") (define_insn_reservation "athlon_fcomi_load_k8" 5 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "fcmp") (and (eq_attr "athlon_decode" "vector") (eq_attr "memory" "load")))) "athlon-vector,athlon-fploadk8,athlon-fadd") (define_insn_reservation "athlon_fcomi" 3 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (and (eq_attr "athlon_decode" "vector") (eq_attr "type" "fcmp"))) "athlon-vector,athlon-fpsched,athlon-fadd") @@ -450,18 +535,18 @@ (eq_attr "memory" "load"))) "athlon-direct,athlon-fpload,athlon-fadd") (define_insn_reservation "athlon_fcom_load_k8" 4 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "fcmp") (eq_attr "memory" "load"))) "athlon-direct,athlon-fploadk8,athlon-fadd") (define_insn_reservation "athlon_fcom" 2 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (eq_attr "type" "fcmp")) "athlon-direct,athlon-fpsched,athlon-fadd") ;; Never seen by the scheduler because we still don't do post reg-stack ;; scheduling. ;(define_insn_reservation "athlon_fxch" 2 -; (and (eq_attr "cpu" "athlon,k8,generic64") +; (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") ; (eq_attr "type" "fxch")) ; "athlon-direct,athlon-fpsched,athlon-fany") @@ -516,6 +601,23 @@ (and (eq_attr "type" "mmxmov,ssemov") (eq_attr "memory" "load"))) "athlon-direct,athlon-fploadk8,athlon-fstore") +;; On AMDFAM10 all double, single and integer packed and scalar SSEx data +;; loads generated are direct path, latency of 2 and do not use any FP +;; executions units. No seperate entries for movlpx/movhpx loads, which +;; are direct path, latency of 4 and use the FADD/FMUL FP execution units, +;; as they will not be generated. +(define_insn_reservation "athlon_sseld_amdfam10" 2 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "type" "ssemov") + (eq_attr "memory" "load"))) + "athlon-direct,athlon-fploadk8") +;; On AMDFAM10 MMX data loads generated are direct path, latency of 4 +;; and can use any FP executions units +(define_insn_reservation "athlon_mmxld_amdfam10" 4 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "type" "mmxmov") + (eq_attr "memory" "load"))) + "athlon-direct,athlon-fploadk8, athlon-fany") (define_insn_reservation "athlon_mmxssest" 3 (and (eq_attr "cpu" "k8,generic64") (and (eq_attr "type" "mmxmov,ssemov") @@ -533,6 +635,25 @@ (and (eq_attr "type" "mmxmov,ssemov") (eq_attr "memory" "store,both"))) "athlon-direct,(athlon-fpsched+athlon-agu),(athlon-fstore+athlon-store)") +;; On AMDFAM10 all double, single and integer packed SSEx data stores +;; generated are all double path, latency of 2 and use the FSTORE FP +;; execution unit. No entries seperate for movupx/movdqu, which are +;; vector path, latency of 3 and use the FSTORE*2 FP execution unit, +;; as they will not be generated. +(define_insn_reservation "athlon_ssest_amdfam10" 2 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "type" "ssemov") + (and (eq_attr "mode" "V4SF,V2DF,TI") + (eq_attr "memory" "store,both")))) + "athlon-double,(athlon-fpsched+athlon-agu),((athlon-fstore+athlon-store)*2)") +;; On AMDFAM10 all double, single and integer scalar SSEx and MMX +;; data stores generated are all direct path, latency of 2 and use +;; the FSTORE FP execution unit +(define_insn_reservation "athlon_mmxssest_short_amdfam10" 2 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "type" "mmxmov,ssemov") + (eq_attr "memory" "store,both"))) + "athlon-direct,(athlon-fpsched+athlon-agu),(athlon-fstore+athlon-store)") (define_insn_reservation "athlon_movaps_k8" 2 (and (eq_attr "cpu" "k8,generic64") (and (eq_attr "type" "ssemov") @@ -578,6 +699,11 @@ (and (eq_attr "type" "sselog,sselog1") (eq_attr "memory" "load"))) "athlon-double,athlon-fpload2k8,(athlon-fmul*2)") +(define_insn_reservation "athlon_sselog_load_amdfam10" 4 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "type" "sselog,sselog1") + (eq_attr "memory" "load"))) + "athlon-direct,athlon-fploadk8,(athlon-fadd|athlon-fmul)") (define_insn_reservation "athlon_sselog" 3 (and (eq_attr "cpu" "athlon") (eq_attr "type" "sselog,sselog1")) @@ -586,6 +712,11 @@ (and (eq_attr "cpu" "k8,generic64") (eq_attr "type" "sselog,sselog1")) "athlon-double,athlon-fpsched,athlon-fmul") +(define_insn_reservation "athlon_sselog_amdfam10" 2 + (and (eq_attr "cpu" "amdfam10") + (eq_attr "type" "sselog,sselog1")) + "athlon-direct,athlon-fpsched,(athlon-fadd|athlon-fmul)") + ;; ??? pcmp executes in addmul, probably not worthwhile to bother about that. (define_insn_reservation "athlon_ssecmp_load" 2 (and (eq_attr "cpu" "athlon") @@ -594,13 +725,13 @@ (eq_attr "memory" "load")))) "athlon-direct,athlon-fpload,athlon-fadd") (define_insn_reservation "athlon_ssecmp_load_k8" 4 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "ssecmp") (and (eq_attr "mode" "SF,DF,DI,TI") (eq_attr "memory" "load")))) "athlon-direct,athlon-fploadk8,athlon-fadd") (define_insn_reservation "athlon_ssecmp" 2 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (and (eq_attr "type" "ssecmp") (eq_attr "mode" "SF,DF,DI,TI"))) "athlon-direct,athlon-fpsched,athlon-fadd") @@ -614,6 +745,11 @@ (and (eq_attr "type" "ssecmp") (eq_attr "memory" "load"))) "athlon-double,athlon-fpload2k8,(athlon-fadd*2)") +(define_insn_reservation "athlon_ssecmpvector_load_amdfam10" 4 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "type" "ssecmp") + (eq_attr "memory" "load"))) + "athlon-direct,athlon-fploadk8,athlon-fadd") (define_insn_reservation "athlon_ssecmpvector" 3 (and (eq_attr "cpu" "athlon") (eq_attr "type" "ssecmp")) @@ -622,6 +758,10 @@ (and (eq_attr "cpu" "k8,generic64") (eq_attr "type" "ssecmp")) "athlon-double,athlon-fpsched,(athlon-fadd*2)") +(define_insn_reservation "athlon_ssecmpvector_amdfam10" 2 + (and (eq_attr "cpu" "amdfam10") + (eq_attr "type" "ssecmp")) + "athlon-direct,athlon-fpsched,athlon-fadd") (define_insn_reservation "athlon_ssecomi_load" 4 (and (eq_attr "cpu" "athlon") (and (eq_attr "type" "ssecomi") @@ -632,10 +772,20 @@ (and (eq_attr "type" "ssecomi") (eq_attr "memory" "load"))) "athlon-vector,athlon-fploadk8,athlon-fadd") +(define_insn_reservation "athlon_ssecomi_load_amdfam10" 5 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "type" "ssecomi") + (eq_attr "memory" "load"))) + "athlon-direct,athlon-fploadk8,athlon-fadd") (define_insn_reservation "athlon_ssecomi" 4 (and (eq_attr "cpu" "athlon,k8,generic64") (eq_attr "type" "ssecmp")) "athlon-vector,athlon-fpsched,athlon-fadd") +(define_insn_reservation "athlon_ssecomi_amdfam10" 3 + (and (eq_attr "cpu" "amdfam10") +;; It seems athlon_ssecomi has a bug in the attr_type, fixed for amdfam10 + (eq_attr "type" "ssecomi")) + "athlon-direct,athlon-fpsched,athlon-fadd") (define_insn_reservation "athlon_sseadd_load" 4 (and (eq_attr "cpu" "athlon") (and (eq_attr "type" "sseadd") @@ -643,13 +793,13 @@ (eq_attr "memory" "load")))) "athlon-direct,athlon-fpload,athlon-fadd") (define_insn_reservation "athlon_sseadd_load_k8" 6 - (and (eq_attr "cpu" "k8,generic64") + (and (eq_attr "cpu" "k8,generic64,amdfam10") (and (eq_attr "type" "sseadd") (and (eq_attr "mode" "SF,DF,DI") (eq_attr "memory" "load")))) "athlon-direct,athlon-fploadk8,athlon-fadd") (define_insn_reservation "athlon_sseadd" 4 - (and (eq_attr "cpu" "athlon,k8,generic64") + (and (eq_attr "cpu" "athlon,k8,generic64,amdfam10") (and (eq_attr "type" "sseadd") (eq_attr "mode" "SF,DF,DI"))) "athlon-direct,athlon-fpsched,athlon-fadd") @@ -663,6 +813,11 @@ (and (eq_attr "type" "sseadd") (eq_attr "memory" "load"))) "athlon-double,athlon-fpload2k8,(athlon-fadd*2)") +(define_insn_reservation "athlon_sseaddvector_load_amdfam10" 6 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "type" "sseadd") + (eq_attr "memory" "load"))) + "athlon-direct,athlon-fploadk8,athlon-fadd") (define_insn_reservation "athlon_sseaddvector" 5 (and (eq_attr "cpu" "athlon") (eq_attr "type" "sseadd")) @@ -671,6 +826,10 @@ (and (eq_attr "cpu" "k8,generic64") (eq_attr "type" "sseadd")) "athlon-double,athlon-fpsched,(athlon-fadd*2)") +(define_insn_reservation "athlon_sseaddvector_amdfam10" 4 + (and (eq_attr "cpu" "amdfam10") + (eq_attr "type" "sseadd")) + "athlon-direct,athlon-fpsched,athlon-fadd") ;; Conversions behaves very irregularly and the scheduling is critical here. ;; Take each instruction separately. Assume that the mode is always set to the @@ -684,12 +843,25 @@ (and (eq_attr "mode" "DF") (eq_attr "memory" "load"))))) "athlon-direct,athlon-fploadk8,athlon-fstore") +(define_insn_reservation "athlon_ssecvt_cvtss2sd_load_amdfam10" 7 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "type" "ssecvt") + (and (eq_attr "amdfam10_decode" "double") + (and (eq_attr "mode" "DF") + (eq_attr "memory" "load"))))) + "athlon-double,athlon-fploadk8,(athlon-faddmul+athlon-fstore)") (define_insn_reservation "athlon_ssecvt_cvtss2sd" 2 (and (eq_attr "cpu" "athlon,k8,generic64") (and (eq_attr "type" "ssecvt") (and (eq_attr "athlon_decode" "direct") (eq_attr "mode" "DF")))) "athlon-direct,athlon-fpsched,athlon-fstore") +(define_insn_reservation "athlon_ssecvt_cvtss2sd_amdfam10" 7 + (and (eq_attr "cpu" "amdfam10") + (and (eq_attr "type" "ssecvt") + (and (eq_attr "amdfam10_decode" "vector") + (eq_attr "mode" "DF")))) + "athlon-vector,athlon-fpsched,athlon-faddmul,(athlon-fstore*2)") ;; cvtps2pd. Model same way the other double decoded FP conversions. (define_insn_reservation "athlon_ssecvt_cvtps2pd_load_k8" 5 (and (eq_attr "cpu" "k8,athlon,generic64") @@ -698,12 +870,25 @@ (and (eq_attr "mode" "V2DF,V4SF,TI") (eq_attr "memory" "load"))))) "athlon-double,athlon-fpload2k8,(athlon-fstore*2)") +(define_insn_reservation "athlon_ssecvt_cvtps2pd_load_amdfam10" 4 + (and (eq_attr "cpu" "amdfam10") *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Sat Jun 22 02:35:44 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 02:47:55 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 02:51:22 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 02:57:53 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 03:38:01 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 03:44:49 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 03:50:15 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 03:54:18 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 04:03:58 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id BB9AF615; Sat, 22 Jun 2013 04:03:58 +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 ADBDD1A29; Sat, 22 Jun 2013 04:03: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 r5M43w0Z067689; Sat, 22 Jun 2013 04:03:58 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5M43w9H067687; Sat, 22 Jun 2013 04:03:58 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201306220403.r5M43w9H067687@svn.freebsd.org> From: Mark Johnston Date: Sat, 22 Jun 2013 04:03:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252087 - stable/9/share/man/man9 X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 04:03:58 -0000 Author: markj Date: Sat Jun 22 04:03:57 2013 New Revision: 252087 URL: http://svnweb.freebsd.org/changeset/base/252087 Log: MFC r251723: The functions are called pci_{msi,msix}_count(), not pci_count_{msi,msix}(). Modified: stable/9/share/man/man9/pci.9 Directory Properties: stable/9/share/man/man9/ (props changed) Modified: stable/9/share/man/man9/pci.9 ============================================================================== --- stable/9/share/man/man9/pci.9 Sat Jun 22 03:54:17 2013 (r252086) +++ stable/9/share/man/man9/pci.9 Sat Jun 22 04:03:57 2013 (r252087) @@ -436,13 +436,13 @@ A driver is only allowed to use either M but not both. .Pp The -.Fn pci_count_msi +.Fn pci_msi_count function returns the maximum number of MSI messages supported by the device .Fa dev . If the device does not support MSI, then -.Fn pci_count_msi +.Fn pci_msi_count returns zero. .Pp The @@ -489,13 +489,13 @@ The function returns zero on success and an error on failure. .Pp The -.Fn pci_count_msix +.Fn pci_msix_count function returns the maximum number of MSI-X messages supported by the device .Fa dev . If the device does not support MSI-X, then -.Fn pci_count_msix +.Fn pci_msix_count returns zero. .Pp The From owner-svn-src-all@FreeBSD.ORG Sat Jun 22 04:04:34 2013 Return-Path: Delivered-To: svn-src-all@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 CEC97781; Sat, 22 Jun 2013 04:04:34 +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 C0C941A2F; Sat, 22 Jun 2013 04:04: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 r5M44Y4Q067854; Sat, 22 Jun 2013 04:04:34 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5M44YI4067853; Sat, 22 Jun 2013 04:04:34 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201306220404.r5M44YI4067853@svn.freebsd.org> From: Mark Johnston Date: Sat, 22 Jun 2013 04:04:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r252088 - stable/8/share/man/man9 X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 04:04:34 -0000 Author: markj Date: Sat Jun 22 04:04:34 2013 New Revision: 252088 URL: http://svnweb.freebsd.org/changeset/base/252088 Log: MFC r251723: The functions are called pci_{msi,msix}_count(), not pci_count_{msi,msix}(). Modified: stable/8/share/man/man9/pci.9 Directory Properties: stable/8/share/man/man9/ (props changed) Modified: stable/8/share/man/man9/pci.9 ============================================================================== --- stable/8/share/man/man9/pci.9 Sat Jun 22 04:03:57 2013 (r252087) +++ stable/8/share/man/man9/pci.9 Sat Jun 22 04:04:34 2013 (r252088) @@ -436,13 +436,13 @@ A driver is only allowed to use either M but not both. .Pp The -.Fn pci_count_msi +.Fn pci_msi_count function returns the maximum number of MSI messages supported by the device .Fa dev . If the device does not support MSI, then -.Fn pci_count_msi +.Fn pci_msi_count returns zero. .Pp The @@ -489,13 +489,13 @@ The function returns zero on success and an error on failure. .Pp The -.Fn pci_count_msix +.Fn pci_msix_count function returns the maximum number of MSI-X messages supported by the device .Fa dev . If the device does not support MSI-X, then -.Fn pci_count_msix +.Fn pci_msix_count returns zero. .Pp The From owner-svn-src-all@FreeBSD.ORG Sat Jun 22 04:22:24 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 04:50:26 2013 Return-Path: Delivered-To: svn-src-all@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 78BA4142; Sat, 22 Jun 2013 04:50:26 +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 6BB191C11; Sat, 22 Jun 2013 04:50: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 r5M4oQAW080047; Sat, 22 Jun 2013 04:50:26 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5M4oQV3080046; Sat, 22 Jun 2013 04:50:26 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201306220450.r5M4oQV3080046@svn.freebsd.org> From: Mark Johnston Date: Sat, 22 Jun 2013 04:50:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252089 - stable/9/sys/sys X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 04:50:26 -0000 Author: markj Date: Sat Jun 22 04:50:25 2013 New Revision: 252089 URL: http://svnweb.freebsd.org/changeset/base/252089 Log: MFC r251166: Add macros which allow one to define SDT probes with six or seven arguments; they are needed when porting some of the Solaris providers (ip, iscsi, and tcp in particular). dtrace_probe() only takes five arguments from the probe site, so we need to add the appropriate cast to allow for more than five arguments. The extra arguments are later copied out of dtrace_probe()'s stack frame by dtrace_getarg() (or the provider-specific getarg method) as needed. Modified: stable/9/sys/sys/sdt.h Directory Properties: stable/9/sys/ (props changed) stable/9/sys/sys/ (props changed) Modified: stable/9/sys/sys/sdt.h ============================================================================== --- stable/9/sys/sys/sdt.h Sat Jun 22 04:04:34 2013 (r252088) +++ stable/9/sys/sys/sdt.h Sat Jun 22 04:50:25 2013 (r252089) @@ -91,6 +91,10 @@ #define SDT_PROBE_DEFINE3(prov, mod, func, name, sname, arg0, arg1, arg2) #define SDT_PROBE_DEFINE4(prov, mod, func, name, sname, arg0, arg1, arg2, arg3) #define SDT_PROBE_DEFINE5(prov, mod, func, name, sname, arg0, arg1, arg2, arg3, arg4) +#define SDT_PROBE_DEFINE6(prov, mod, func, name, snamp, arg0, arg1, arg2, \ + arg3, arg4, arg5) +#define SDT_PROBE_DEFINE7(prov, mod, func, name, snamp, arg0, arg1, arg2, \ + arg3, arg4, arg5, arg6) #define SDT_PROBE0(prov, mod, func, name) #define SDT_PROBE1(prov, mod, func, name, arg0) @@ -98,6 +102,9 @@ #define SDT_PROBE3(prov, mod, func, name, arg0, arg1, arg2) #define SDT_PROBE4(prov, mod, func, name, arg0, arg1, arg2, arg3) #define SDT_PROBE5(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4) +#define SDT_PROBE6(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4, arg5) +#define SDT_PROBE7(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4, arg5, \ + arg6) #else @@ -232,6 +239,27 @@ struct sdt_provider { SDT_PROBE_ARGTYPE(prov, mod, func, name, 3, arg3); \ SDT_PROBE_ARGTYPE(prov, mod, func, name, 4, arg4) +#define SDT_PROBE_DEFINE6(prov, mod, func, name, sname, arg0, arg1, arg2, arg3,\ + arg4, arg5) \ + SDT_PROBE_DEFINE(prov, mod, func, name, sname); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 0, arg0); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 1, arg1); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 2, arg2); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 3, arg3); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 4, arg4); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 5, arg5); + +#define SDT_PROBE_DEFINE7(prov, mod, func, name, sname, arg0, arg1, arg2, arg3,\ + arg4, arg5, arg6) \ + SDT_PROBE_DEFINE(prov, mod, func, name, sname); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 0, arg0); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 1, arg1); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 2, arg2); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 3, arg3); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 4, arg4); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 5, arg5); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 6, arg6); + #define SDT_PROBE0(prov, mod, func, name) \ SDT_PROBE(prov, mod, func, name, 0, 0, 0, 0, 0) #define SDT_PROBE1(prov, mod, func, name, arg0) \ @@ -244,6 +272,27 @@ struct sdt_provider { SDT_PROBE(prov, mod, func, name, arg0, arg1, arg2, arg3, 0) #define SDT_PROBE5(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4) \ SDT_PROBE(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4) +#define SDT_PROBE6(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4, arg5) \ + do { \ + if (sdt_##prov##_##mod##_##func##_##name->id) \ + (*(void (*)(uint32_t, uintptr_t, uintptr_t, uintptr_t, \ + uintptr_t, uintptr_t, uintptr_t))sdt_probe_func)( \ + sdt_##prov##_##mod##_##func##_##name->id, \ + (uintptr_t)arg0, (uintptr_t)arg1, (uintptr_t)arg2, \ + (uintptr_t)arg3, (uintptr_t)arg4, (uintptr_t)arg5);\ + } while (0) +#define SDT_PROBE7(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4, arg5, \ + arg6) \ + do { \ + if (sdt_##prov##_##mod##_##func##_##name->id) \ + (*(void (*)(uint32_t, uintptr_t, uintptr_t, uintptr_t, \ + uintptr_t, uintptr_t, uintptr_t, uintptr_t)) \ + sdt_probe_func)( \ + sdt_##prov##_##mod##_##func##_##name->id, \ + (uintptr_t)arg0, (uintptr_t)arg1, (uintptr_t)arg2, \ + (uintptr_t)arg3, (uintptr_t)arg4, (uintptr_t)arg5, \ + (uintptr_t)arg6); \ + } while (0) typedef int (*sdt_argtype_listall_func_t)(struct sdt_argtype *, void *); typedef int (*sdt_probe_listall_func_t)(struct sdt_probe *, void *); From owner-svn-src-all@FreeBSD.ORG Sat Jun 22 04:52:12 2013 Return-Path: Delivered-To: svn-src-all@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 DBAA82BC; Sat, 22 Jun 2013 04:52:12 +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 CE7481C1C; Sat, 22 Jun 2013 04:52: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 r5M4qCRj080333; Sat, 22 Jun 2013 04:52:12 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5M4qCje080332; Sat, 22 Jun 2013 04:52:12 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201306220452.r5M4qCje080332@svn.freebsd.org> From: Mark Johnston Date: Sat, 22 Jun 2013 04:52:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r252090 - stable/8/sys/sys X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 04:52:12 -0000 Author: markj Date: Sat Jun 22 04:52:12 2013 New Revision: 252090 URL: http://svnweb.freebsd.org/changeset/base/252090 Log: MFC r251166: Add macros which allow one to define SDT probes with six or seven arguments; they are needed when porting some of the Solaris providers (ip, iscsi, and tcp in particular). dtrace_probe() only takes five arguments from the probe site, so we need to add the appropriate cast to allow for more than five arguments. The extra arguments are later copied out of dtrace_probe()'s stack frame by dtrace_getarg() (or the provider-specific getarg method) as needed. Modified: stable/8/sys/sys/sdt.h Directory Properties: stable/8/sys/ (props changed) stable/8/sys/sys/ (props changed) Modified: stable/8/sys/sys/sdt.h ============================================================================== --- stable/8/sys/sys/sdt.h Sat Jun 22 04:50:25 2013 (r252089) +++ stable/8/sys/sys/sdt.h Sat Jun 22 04:52:12 2013 (r252090) @@ -91,6 +91,10 @@ #define SDT_PROBE_DEFINE3(prov, mod, func, name, sname, arg0, arg1, arg2) #define SDT_PROBE_DEFINE4(prov, mod, func, name, sname, arg0, arg1, arg2, arg3) #define SDT_PROBE_DEFINE5(prov, mod, func, name, sname, arg0, arg1, arg2, arg3, arg4) +#define SDT_PROBE_DEFINE6(prov, mod, func, name, snamp, arg0, arg1, arg2, \ + arg3, arg4, arg5) +#define SDT_PROBE_DEFINE7(prov, mod, func, name, snamp, arg0, arg1, arg2, \ + arg3, arg4, arg5, arg6) #define SDT_PROBE0(prov, mod, func, name) #define SDT_PROBE1(prov, mod, func, name, arg0) @@ -98,6 +102,9 @@ #define SDT_PROBE3(prov, mod, func, name, arg0, arg1, arg2) #define SDT_PROBE4(prov, mod, func, name, arg0, arg1, arg2, arg3) #define SDT_PROBE5(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4) +#define SDT_PROBE6(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4, arg5) +#define SDT_PROBE7(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4, arg5, \ + arg6) #else @@ -232,6 +239,27 @@ struct sdt_provider { SDT_PROBE_ARGTYPE(prov, mod, func, name, 3, arg3); \ SDT_PROBE_ARGTYPE(prov, mod, func, name, 4, arg4) +#define SDT_PROBE_DEFINE6(prov, mod, func, name, sname, arg0, arg1, arg2, arg3,\ + arg4, arg5) \ + SDT_PROBE_DEFINE(prov, mod, func, name, sname); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 0, arg0); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 1, arg1); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 2, arg2); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 3, arg3); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 4, arg4); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 5, arg5); + +#define SDT_PROBE_DEFINE7(prov, mod, func, name, sname, arg0, arg1, arg2, arg3,\ + arg4, arg5, arg6) \ + SDT_PROBE_DEFINE(prov, mod, func, name, sname); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 0, arg0); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 1, arg1); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 2, arg2); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 3, arg3); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 4, arg4); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 5, arg5); \ + SDT_PROBE_ARGTYPE(prov, mod, func, name, 6, arg6); + #define SDT_PROBE0(prov, mod, func, name) \ SDT_PROBE(prov, mod, func, name, 0, 0, 0, 0, 0) #define SDT_PROBE1(prov, mod, func, name, arg0) \ @@ -244,6 +272,27 @@ struct sdt_provider { SDT_PROBE(prov, mod, func, name, arg0, arg1, arg2, arg3, 0) #define SDT_PROBE5(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4) \ SDT_PROBE(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4) +#define SDT_PROBE6(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4, arg5) \ + do { \ + if (sdt_##prov##_##mod##_##func##_##name->id) \ + (*(void (*)(uint32_t, uintptr_t, uintptr_t, uintptr_t, \ + uintptr_t, uintptr_t, uintptr_t))sdt_probe_func)( \ + sdt_##prov##_##mod##_##func##_##name->id, \ + (uintptr_t)arg0, (uintptr_t)arg1, (uintptr_t)arg2, \ + (uintptr_t)arg3, (uintptr_t)arg4, (uintptr_t)arg5);\ + } while (0) +#define SDT_PROBE7(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4, arg5, \ + arg6) \ + do { \ + if (sdt_##prov##_##mod##_##func##_##name->id) \ + (*(void (*)(uint32_t, uintptr_t, uintptr_t, uintptr_t, \ + uintptr_t, uintptr_t, uintptr_t, uintptr_t)) \ + sdt_probe_func)( \ + sdt_##prov##_##mod##_##func##_##name->id, \ + (uintptr_t)arg0, (uintptr_t)arg1, (uintptr_t)arg2, \ + (uintptr_t)arg3, (uintptr_t)arg4, (uintptr_t)arg5, \ + (uintptr_t)arg6); \ + } while (0) typedef int (*sdt_argtype_listall_func_t)(struct sdt_argtype *, void *); typedef int (*sdt_probe_listall_func_t)(struct sdt_probe *, void *); From owner-svn-src-all@FreeBSD.ORG Sat Jun 22 05:24:30 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 45D7D560; Sat, 22 Jun 2013 05:24:30 +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 1EBCD1CC4; Sat, 22 Jun 2013 05:24: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 r5M5OT37088082; Sat, 22 Jun 2013 05:24:29 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5M5OTXg088081; Sat, 22 Jun 2013 05:24:29 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201306220524.r5M5OTXg088081@svn.freebsd.org> From: Mark Johnston Date: Sat, 22 Jun 2013 05:24:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252091 - stable/9/sys/dev/coretemp X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 05:24:30 -0000 Author: markj Date: Sat Jun 22 05:24:29 2013 New Revision: 252091 URL: http://svnweb.freebsd.org/changeset/base/252091 Log: MFC r246951: Mark the coretemp(4) sysctls as MPSAFE, ensuring that Giant won't be held unnecessarily by a user thread waiting to run on a specific CPU after calling sched_bind(). Modified: stable/9/sys/dev/coretemp/coretemp.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/coretemp/coretemp.c ============================================================================== --- stable/9/sys/dev/coretemp/coretemp.c Sat Jun 22 04:52:12 2013 (r252090) +++ stable/9/sys/dev/coretemp/coretemp.c Sat Jun 22 05:24:29 2013 (r252091) @@ -274,23 +274,23 @@ coretemp_attach(device_t dev) * Add the MIBs to dev.cpu.N and dev.cpu.N.coretemp. */ SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(device_get_sysctl_tree(pdev)), - OID_AUTO, "temperature", CTLTYPE_INT | CTLFLAG_RD, dev, - CORETEMP_TEMP, coretemp_get_val_sysctl, "IK", + OID_AUTO, "temperature", CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_MPSAFE, + dev, CORETEMP_TEMP, coretemp_get_val_sysctl, "IK", "Current temperature"); SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(oid), OID_AUTO, "delta", - CTLTYPE_INT | CTLFLAG_RD, dev, CORETEMP_DELTA, + CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_MPSAFE, dev, CORETEMP_DELTA, coretemp_get_val_sysctl, "I", "Delta between TCC activation and current temperature"); SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(oid), OID_AUTO, "resolution", - CTLTYPE_INT | CTLFLAG_RD, dev, CORETEMP_RESOLUTION, + CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_MPSAFE, dev, CORETEMP_RESOLUTION, coretemp_get_val_sysctl, "I", "Resolution of CPU thermal sensor"); SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(oid), OID_AUTO, "tjmax", - CTLTYPE_INT | CTLFLAG_RD, dev, CORETEMP_TJMAX, + CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_MPSAFE, dev, CORETEMP_TJMAX, coretemp_get_val_sysctl, "IK", "TCC activation temperature"); SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(oid), OID_AUTO, - "throttle_log", CTLTYPE_INT | CTLFLAG_RW, dev, 0, + "throttle_log", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, dev, 0, coretemp_throttle_log_sysctl, "I", "Set to 1 if the thermal sensor has tripped"); From owner-svn-src-all@FreeBSD.ORG Sat Jun 22 05:25:13 2013 Return-Path: Delivered-To: svn-src-all@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 637CC6CA; Sat, 22 Jun 2013 05:25:13 +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 3B7341CC8; Sat, 22 Jun 2013 05:25: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 r5M5PDk0088246; Sat, 22 Jun 2013 05:25:13 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5M5PDDG088245; Sat, 22 Jun 2013 05:25:13 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201306220525.r5M5PDDG088245@svn.freebsd.org> From: Mark Johnston Date: Sat, 22 Jun 2013 05:25:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r252092 - stable/8/sys/dev/coretemp X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 05:25:13 -0000 Author: markj Date: Sat Jun 22 05:25:12 2013 New Revision: 252092 URL: http://svnweb.freebsd.org/changeset/base/252092 Log: MFC r246951: Mark the coretemp(4) sysctls as MPSAFE, ensuring that Giant won't be held unnecessarily by a user thread waiting to run on a specific CPU after calling sched_bind(). Modified: stable/8/sys/dev/coretemp/coretemp.c Directory Properties: stable/8/sys/ (props changed) stable/8/sys/dev/ (props changed) stable/8/sys/dev/coretemp/ (props changed) Modified: stable/8/sys/dev/coretemp/coretemp.c ============================================================================== --- stable/8/sys/dev/coretemp/coretemp.c Sat Jun 22 05:24:29 2013 (r252091) +++ stable/8/sys/dev/coretemp/coretemp.c Sat Jun 22 05:25:12 2013 (r252092) @@ -274,23 +274,23 @@ coretemp_attach(device_t dev) * Add the MIBs to dev.cpu.N and dev.cpu.N.coretemp. */ SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(device_get_sysctl_tree(pdev)), - OID_AUTO, "temperature", CTLTYPE_INT | CTLFLAG_RD, dev, - CORETEMP_TEMP, coretemp_get_val_sysctl, "IK", + OID_AUTO, "temperature", CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_MPSAFE, + dev, CORETEMP_TEMP, coretemp_get_val_sysctl, "IK", "Current temperature"); SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(oid), OID_AUTO, "delta", - CTLTYPE_INT | CTLFLAG_RD, dev, CORETEMP_DELTA, + CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_MPSAFE, dev, CORETEMP_DELTA, coretemp_get_val_sysctl, "I", "Delta between TCC activation and current temperature"); SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(oid), OID_AUTO, "resolution", - CTLTYPE_INT | CTLFLAG_RD, dev, CORETEMP_RESOLUTION, + CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_MPSAFE, dev, CORETEMP_RESOLUTION, coretemp_get_val_sysctl, "I", "Resolution of CPU thermal sensor"); SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(oid), OID_AUTO, "tjmax", - CTLTYPE_INT | CTLFLAG_RD, dev, CORETEMP_TJMAX, + CTLTYPE_INT | CTLFLAG_RD | CTLFLAG_MPSAFE, dev, CORETEMP_TJMAX, coretemp_get_val_sysctl, "IK", "TCC activation temperature"); SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(oid), OID_AUTO, - "throttle_log", CTLTYPE_INT | CTLFLAG_RW, dev, 0, + "throttle_log", CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE, dev, 0, coretemp_throttle_log_sysctl, "I", "Set to 1 if the thermal sensor has tripped"); From owner-svn-src-all@FreeBSD.ORG Sat Jun 22 05:32:11 2013 Return-Path: Delivered-To: svn-src-all@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 BF271A60; Sat, 22 Jun 2013 05:32:11 +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 B28211D09; Sat, 22 Jun 2013 05:32: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 r5M5WBxR090192; Sat, 22 Jun 2013 05:32:11 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5M5WBsq090191; Sat, 22 Jun 2013 05:32:11 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201306220532.r5M5WBsq090191@svn.freebsd.org> From: Mark Johnston Date: Sat, 22 Jun 2013 05:32:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252093 - stable/9/usr.sbin/mfiutil X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 05:32:11 -0000 Author: markj Date: Sat Jun 22 05:32:11 2013 New Revision: 252093 URL: http://svnweb.freebsd.org/changeset/base/252093 Log: MFC r250599: Add a remark to the effect that a manually started relearn will always result in the battery being completely drained, even in transparent learning mode. Modified: stable/9/usr.sbin/mfiutil/mfiutil.8 Directory Properties: stable/9/usr.sbin/mfiutil/ (props changed) Modified: stable/9/usr.sbin/mfiutil/mfiutil.8 ============================================================================== --- stable/9/usr.sbin/mfiutil/mfiutil.8 Sat Jun 22 05:25:12 2013 (r252092) +++ stable/9/usr.sbin/mfiutil/mfiutil.8 Sat Jun 22 05:32:11 2013 (r252093) @@ -573,6 +573,10 @@ Updates the flash on the controller with A reboot is required for the new firmware to take effect. .It Cm start learn Start a battery relearn. +Note that this seems to always result in the battery being completely drained, +regardless of the BBU mode. +In particular, the controller write cache will be disabled during the relearn +even if transparent learning mode is enabled. .It Cm bbu Ar setting Ar value Update battery backup unit (BBU) properties related to battery relearning. The following settings are configurable: From owner-svn-src-all@FreeBSD.ORG Sat Jun 22 05:32:46 2013 Return-Path: Delivered-To: svn-src-all@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 8571DBC7; Sat, 22 Jun 2013 05:32:46 +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 77DA31D0C; Sat, 22 Jun 2013 05:32: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 r5M5WkPl090292; Sat, 22 Jun 2013 05:32:46 GMT (envelope-from markj@svn.freebsd.org) Received: (from markj@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5M5Wkv0090291; Sat, 22 Jun 2013 05:32:46 GMT (envelope-from markj@svn.freebsd.org) Message-Id: <201306220532.r5M5Wkv0090291@svn.freebsd.org> From: Mark Johnston Date: Sat, 22 Jun 2013 05:32:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r252094 - stable/8/usr.sbin/mfiutil X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 05:32:46 -0000 Author: markj Date: Sat Jun 22 05:32:45 2013 New Revision: 252094 URL: http://svnweb.freebsd.org/changeset/base/252094 Log: MFC r250599: Add a remark to the effect that a manually started relearn will always result in the battery being completely drained, even in transparent learning mode. Modified: stable/8/usr.sbin/mfiutil/mfiutil.8 Directory Properties: stable/8/usr.sbin/mfiutil/ (props changed) Modified: stable/8/usr.sbin/mfiutil/mfiutil.8 ============================================================================== --- stable/8/usr.sbin/mfiutil/mfiutil.8 Sat Jun 22 05:32:11 2013 (r252093) +++ stable/8/usr.sbin/mfiutil/mfiutil.8 Sat Jun 22 05:32:45 2013 (r252094) @@ -573,6 +573,10 @@ Updates the flash on the controller with A reboot is required for the new firmware to take effect. .It Cm start learn Start a battery relearn. +Note that this seems to always result in the battery being completely drained, +regardless of the BBU mode. +In particular, the controller write cache will be disabled during the relearn +even if transparent learning mode is enabled. .It Cm bbu Ar setting Ar value Update battery backup unit (BBU) properties related to battery relearning. The following settings are configurable: From owner-svn-src-all@FreeBSD.ORG Sat Jun 22 08:58:21 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 17:28:57 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id D3D02B3A; Sat, 22 Jun 2013 17:28:57 +0000 (UTC) (envelope-from jilles@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 C4222166F; Sat, 22 Jun 2013 17:28: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 r5MHSvp0009958; Sat, 22 Jun 2013 17:28:57 GMT (envelope-from jilles@svn.freebsd.org) Received: (from jilles@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5MHSvXD009957; Sat, 22 Jun 2013 17:28:57 GMT (envelope-from jilles@svn.freebsd.org) Message-Id: <201306221728.r5MHSvXD009957@svn.freebsd.org> From: Jilles Tjoelker Date: Sat, 22 Jun 2013 17:28:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252098 - stable/9 X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 17:28:57 -0000 Author: jilles Date: Sat Jun 22 17:28:57 2013 New Revision: 252098 URL: http://svnweb.freebsd.org/changeset/base/252098 Log: MFC r251443: release: Allow empty extra distributions. For example, WITHOUT_SHAREDOCS= in src.conf creates an empty doc distribution. Submitted by: Kurt Lidl Tested by: Kurt Lidl Modified: stable/9/Makefile.inc1 (contents, props changed) Modified: stable/9/Makefile.inc1 ============================================================================== --- stable/9/Makefile.inc1 Sat Jun 22 16:10:57 2013 (r252097) +++ stable/9/Makefile.inc1 Sat Jun 22 17:28:57 2013 (r252098) @@ -754,7 +754,7 @@ distributeworld installworld: installche ${IMAKEENV} rm -rf ${INSTALLTMP} .if make(distributeworld) .for dist in ${EXTRA_DISTRIBUTIONS} - find ${DESTDIR}/${DISTDIR}/${dist} -empty -delete + find ${DESTDIR}/${DISTDIR}/${dist} -mindepth 1 -empty -delete .endfor .if defined(NO_ROOT) .for dist in base ${EXTRA_DISTRIBUTIONS} From owner-svn-src-all@FreeBSD.ORG Sat Jun 22 18:16:34 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 18:22:32 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 18:35:09 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 18:38:34 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 21:32:01 2013 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id 476E494F; Sat, 22 Jun 2013 21:32:01 +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 38BB01F05; Sat, 22 Jun 2013 21:32:01 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id r5MLW1hb079427; Sat, 22 Jun 2013 21:32:01 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r5MLVx1W079408; Sat, 22 Jun 2013 21:31:59 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201306222131.r5MLVx1W079408@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Sat, 22 Jun 2013 21:31:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r252099 - stable/9/sys/fs/ext2fs X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 22 Jun 2013 21:32:01 -0000 Author: pfg Date: Sat Jun 22 21:31:59 2013 New Revision: 252099 URL: http://svnweb.freebsd.org/changeset/base/252099 Log: MFC r251809, r251952, r252012: 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. Also - Set MAXMNTLEN nearer to where it is used. - Move EXT2_LINK_MAX to ext2_dir.h . - Rename some prefixes in the Block Group Descriptor fields. Modified: stable/9/sys/fs/ext2fs/ext2_alloc.c stable/9/sys/fs/ext2fs/ext2_balloc.c stable/9/sys/fs/ext2fs/ext2_dinode.h stable/9/sys/fs/ext2fs/ext2_dir.h stable/9/sys/fs/ext2fs/ext2fs.h stable/9/sys/fs/ext2fs/fs.h stable/9/sys/fs/ext2fs/inode.h Directory Properties: stable/9/sys/ (props changed) stable/9/sys/fs/ (props changed) Modified: stable/9/sys/fs/ext2fs/ext2_alloc.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_alloc.c Sat Jun 22 17:28:57 2013 (r252098) +++ stable/9/sys/fs/ext2fs/ext2_alloc.c Sat Jun 22 21:31:59 2013 (r252099) @@ -46,10 +46,10 @@ #include #include +#include #include #include #include -#include #include static daddr_t ext2_alloccg(struct inode *, int, daddr_t, int); Modified: stable/9/sys/fs/ext2fs/ext2_balloc.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_balloc.c Sat Jun 22 17:28:57 2013 (r252098) +++ stable/9/sys/fs/ext2fs/ext2_balloc.c Sat Jun 22 21:31:59 2013 (r252099) @@ -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: stable/9/sys/fs/ext2fs/ext2_dinode.h ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_dinode.h Sat Jun 22 17:28:57 2013 (r252098) +++ stable/9/sys/fs/ext2fs/ext2_dinode.h Sat Jun 22 21:31:59 2013 (r252099) @@ -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: stable/9/sys/fs/ext2fs/ext2_dir.h ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_dir.h Sat Jun 22 17:28:57 2013 (r252098) +++ stable/9/sys/fs/ext2fs/ext2_dir.h Sat Jun 22 21:31:59 2013 (r252099) @@ -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: stable/9/sys/fs/ext2fs/ext2fs.h ============================================================================== --- stable/9/sys/fs/ext2fs/ext2fs.h Sat Jun 22 17:28:57 2013 (r252098) +++ stable/9/sys/fs/ext2fs/ext2fs.h Sat Jun 22 21:31:59 2013 (r252099) @@ -40,38 +40,6 @@ #include /* - * Maximal count of links to a file - */ -#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. - */ -#define MAXMNTLEN 512 - -/* * Super block for an ext2fs file system. */ struct ext2fs { @@ -141,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 @@ -175,11 +149,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 +167,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 +223,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 */ @@ -282,20 +237,14 @@ 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 */ }; -/* 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: stable/9/sys/fs/ext2fs/fs.h ============================================================================== --- stable/9/sys/fs/ext2fs/fs.h Sat Jun 22 17:28:57 2013 (r252098) +++ stable/9/sys/fs/ext2fs/fs.h Sat Jun 22 21:31:59 2013 (r252099) @@ -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: stable/9/sys/fs/ext2fs/inode.h ============================================================================== --- stable/9/sys/fs/ext2fs/inode.h Sat Jun 22 17:28:57 2013 (r252098) +++ stable/9/sys/fs/ext2fs/inode.h Sat Jun 22 21:31:59 2013 (r252099) @@ -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-all@FreeBSD.ORG Sat Jun 22 21:58:21 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 22:05:24 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 22:12:24 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 22:39:45 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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-all@FreeBSD.ORG Sat Jun 22 22:51:09 2013 Return-Path: Delivered-To: svn-src-all@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-all@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" 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--