From owner-svn-src-head@freebsd.org Thu Nov 23 03:16:12 2017 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 051A6DBBA53 for ; Thu, 23 Nov 2017 03:16:12 +0000 (UTC) (envelope-from shawn.webb@hardenedbsd.org) Received: from mail-pf0-x236.google.com (mail-pf0-x236.google.com [IPv6:2607:f8b0:400e:c00::236]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id C46EE78805 for ; Thu, 23 Nov 2017 03:16:11 +0000 (UTC) (envelope-from shawn.webb@hardenedbsd.org) Received: by mail-pf0-x236.google.com with SMTP id t69so12944850pfg.4 for ; Wed, 22 Nov 2017 19:16:11 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=hardenedbsd-org.20150623.gappssmtp.com; s=20150623; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=pEBKhBaJuDrXBmQlcSrharvfp0C6gSA1I2JMHtJT/Ks=; b=oOxlcf6bN6mxMSNgrZbdTK1TCwqWv+wT5hyshrao5Yknj4LcwhOjwRR39WmhOsXfkE /7mDX3Dfyfl83+D/1LAXxrQ8F1UROBbibQhp0aRiY02iY3uaCyA/UGFK0mEYiEckGFMy RFFKln51BTdudXehT0txvNE3AivMd0FuN7u7qrtcpQG2wKRMvPD9aB/FFQpSP+xgCvjE fov7tdOoKEik6D4O1f3DaXBRJYn17mOebpJFX7luD6rutLF7OprcWV//fVFikv5QS/eF hVDSoMjdfrb4kSa68cLqdkqCGeoUPH1dYp+0CuS+SvILNrS4bvhXuxZ3P8qjwFRPPDIh F2Kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=pEBKhBaJuDrXBmQlcSrharvfp0C6gSA1I2JMHtJT/Ks=; b=czIyjMAFIQM5JH6/mq4CCgltdsgpI0LlcXNFQEfg5MogqCDsGBwF/XggVe9g6HZhpA cao5WsFKIWcF2JmYPDgsgSiD4wuvvhlXbSnx7RASjvvtTkKTgDIFswsBA+gz5IyHR607 7zv5KdwAsDJj66r9ZX6Eksd7+yFaEV+qidorikkMyl4PirFoFhTE6Pyr/NUNkjRj2ijt M7EEVF3vhzKsNhRxw3Y2JoTxSsJsJjByI55YjCddEI0aIqGB8g6kE7wUGmtMLjTez+DG 4dtLErK/thMQYHiRiueLhS8aQSBUa2SKnnnElaDLR2R5SM3FfqjtWvHZ2sBrdYCfTe5N GqoA== X-Gm-Message-State: AJaThX7MYH//MZuHEaWOLIXEixTg54Oee5mgIc9RL3fTGC+1yXrnPnY7 mG34ALc0DXKa0hYw4BLHdhpICOwAH0B+RQ== X-Google-Smtp-Source: AGs4zMaZaTO056UfWWTJAwqj8pJldCLPmfyDg2ZZxYDe3TwjfRBSzgxPfCxlW3D7T33Cd47sdTqu1A== X-Received: by 10.98.133.65 with SMTP id u62mr21117000pfd.22.1511406970935; Wed, 22 Nov 2017 19:16:10 -0800 (PST) Received: from mutt-hbsd (62-210-37-82.rev.poneytelecom.eu. [62.210.37.82]) by smtp.gmail.com with ESMTPSA id t4sm27915954pfd.110.2017.11.22.19.16.07 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 22 Nov 2017 19:16:10 -0800 (PST) Date: Wed, 22 Nov 2017 22:15:48 -0500 From: Shawn Webb To: Mateusz Guzik Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r326110 - head/sys/kern Message-ID: <20171123031548.rd5vmsgghsmuvjs4@mutt-hbsd> References: <201711222352.vAMNq5Bh071788@repo.freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="cgmojfw26kqwmzra" Content-Disposition: inline In-Reply-To: <201711222352.vAMNq5Bh071788@repo.freebsd.org> X-Operating-System: FreeBSD mutt-hbsd 12.0-CURRENT FreeBSD 12.0-CURRENT X-PGP-Key: http://pgp.mit.edu/pks/lookup?op=vindex&search=0x6A84658F52456EEE User-Agent: NeoMutt/20171027 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Nov 2017 03:16:12 -0000 --cgmojfw26kqwmzra Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Nov 22, 2017 at 11:52:05PM +0000, Mateusz Guzik wrote: > Author: mjg > Date: Wed Nov 22 23:52:05 2017 > New Revision: 326110 > URL: https://svnweb.freebsd.org/changeset/base/326110 >=20 > Log: > rwlock: don't check for curthread's read lock count in the fast path >=20 > Modified: > head/sys/kern/kern_rwlock.c >=20 > Modified: head/sys/kern/kern_rwlock.c > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > --- head/sys/kern/kern_rwlock.c Wed Nov 22 23:10:20 2017 (r326109) > +++ head/sys/kern/kern_rwlock.c Wed Nov 22 23:52:05 2017 (r326110) > @@ -364,12 +364,20 @@ _rw_wunlock_cookie(volatile uintptr_t *c, const cha= r * > * is unlocked and has no writer waiters or spinners. Failing otherwise > * prioritizes writers before readers. > */ > -#define RW_CAN_READ(td, _rw) \ > - (((_rw) & (RW_LOCK_READ | RW_LOCK_WRITE_WAITERS | RW_LOCK_WRITE_SPIN= NER)) =3D=3D\ > - RW_LOCK_READ || ((td)->td_rw_rlocks && (_rw) & RW_LOCK_READ)) > +static bool __always_inline > +__rw_can_read(struct thread *td, uintptr_t v, bool fp) > +{ > =20 > + if ((v & (RW_LOCK_READ | RW_LOCK_WRITE_WAITERS | RW_LOCK_WRITE_SPINNER)) > + =3D=3D RW_LOCK_READ) > + return (true); > + if (!fp && td->td_rw_rlocks && (v & RW_LOCK_READ)) > + return (true); > + return (false); > +} This bit of the patch breaks buildkernel. You left a consumer of RW_CAN_READ on line 554: MPASS(!RW_CAN_READ(td, v)); Thanks, --=20 Shawn Webb Cofounder and Security Engineer HardenedBSD GPG Key ID: 0x6A84658F52456EEE GPG Key Fingerprint: 2ABA B6BD EF6A F486 BE89 3D9E 6A84 658F 5245 6EEE --cgmojfw26kqwmzra Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEKrq2ve9q9Ia+iT2eaoRlj1JFbu4FAloWPWIACgkQaoRlj1JF bu5Lfg/9Fv0BENwM2MgPc7RQnzn9wvjQzFVWrXq+oWHZJ4SQtutULA6epLvX3psG JXt9HeOkPP5GqKA92LUO06kb9NAenZe8EsrkjL/J09KLVjS7Xa8qSw+B56uBIXeW kv1+ufv3uCN9Q4mxVbNmbwLryuwKKuZxSvIFjo2a+Zmu5G5dObF3w9JALl8K74KU cNQXlzaMQ8tLxRhtwaiGTSi7yB/pXdwg0B6WfLvLz5YVrH1XDkq7Zvl793bl+a7G O+TOF00R8vTYYb0KQpGQn8knfrTpdQc/5nDAnm4XoMtpl1/uW+3utcNqMGYd9Hbk vwPC9e4EOUZw1sVFzjDs0zRxuZ+7zQ6Dlo319gnM41RqPPyLH6HcrErNL3Fq5WPk 8f3lAyVU7TjUxztvzDpP1CZmYgLOBzi9gdK8byLiuQCBe7WqhE7ThXwrWaQHpYrs /s8jvdb5wGur3WFi1vXWHboxfIRI/tnv6c6QFt7fMVFUDa2pPC4I6d9u6bmI7eKM jBw126iBuum05yp8HARfoSDWkd89iZ9Wb1Y/sXhNQ3mnHkHdVVunZI26620ikvF3 yfHjXmHkY5kChpiJmJ+bOfjPQ0TLr6CR/S0clFfqvQUVNGBGxJ3ZceA+uLkgS4k+ VQ+liQ8q+x1y+KuHcN04ol271wmbnua7Wd4BsZQ7uBP5mID2QX4= =W5Wx -----END PGP SIGNATURE----- --cgmojfw26kqwmzra--