From nobody Mon Feb 21 08:07:46 2022 X-Original-To: dev-commits-src-branches@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 72AB419C91FA; Mon, 21 Feb 2022 08:07:47 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4K2FKG6Mmsz3qDd; Mon, 21 Feb 2022 08:07:46 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1645430867; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=y6yiHQlXtLMswcndaVV7CaxlAP8RfM/2mEC6HefS6Cc=; b=feXsUfrR4ZfYaM/gyZUDnsTdMEt0Yow5M1itEe74C7jahZAa2vVbjd/CaqOhKgtO/z5Ylb zy7Ia+jWv5tq7UvMEOUGONmKGQBjvu5edAtVpFHT+wdE5Daa/IfuW1REE6XODAkARRTiX4 wr7ESGKli5jZpV8eTA1SyONK+qlD3upEkM1I+eyQbONSuplSBAr3KSkHquNrxQRpJjIml4 4RUSrvw6cb5nX9DbJ5blOx+lhkUZWguZPgbprsylFCokJf2D6zk/5fcI7QY+2vXPQT5AGB O/OSoRQh89Ntko5HRlc3IZYMHR3HjACEcEf/Idhm0mMZcf9ezpnD8vBMBksSkg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 8329B483F; Mon, 21 Feb 2022 08:07:46 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 21L87kYR037022; Mon, 21 Feb 2022 08:07:46 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 21L87k1R037021; Mon, 21 Feb 2022 08:07:46 GMT (envelope-from git) Date: Mon, 21 Feb 2022 08:07:46 GMT Message-Id: <202202210807.21L87k1R037021@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "David E. O'Brien" Subject: git: 8553976d35dd - stable/12 - random/ivy: Trivial refactoring List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-branches@freebsd.org X-BeenThere: dev-commits-src-branches@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: obrien X-Git-Repository: src X-Git-Refname: refs/heads/stable/12 X-Git-Reftype: branch X-Git-Commit: 8553976d35ddd877fc3193447a643dbf87ced827 Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1645430867; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=y6yiHQlXtLMswcndaVV7CaxlAP8RfM/2mEC6HefS6Cc=; b=U/dRnEf9pOcyLfNILvFepKAACFVt/pcNlD1uPgHl7fmeICTsP1K3/9OPO+f1hYb65z3zOI a2aFgX2NhQ+fsdcZr4B+AH+nXhRWP2b2Ob42nYg9FEn+0JUbPKW7fXUiCy2ECgpHczGFle SZW/0TYjIwkiNTOrq4WC98Ol484jsqTlmNHMP+TzJE6kC4WErihCoOXMP8yXYM1OJP70HD QwUBpY+OCUyCep7cxn41Mmed8Ou4VOtlz7H9dJI1MkSmuHV26boMg1wibZlxtS13QPraYG VI84Ane+rC7zBLjcdS9MN0XbVD2IWK4zErHle6O7GyVoX/wXdiocM2UtXwVj4Q== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1645430867; a=rsa-sha256; cv=none; b=okXKWCWaR0vXYA+95FqH+k5IcYEYDGjQKpCZSFCEg/jSKbQf0RFdB39puFSh49wgXWE57T DEb9/Ilwt/aZ1n2i31SgPB29KaFGDrJ/HbnAsvZG66LVkuvw8/GS3hf9nRTn3FhtdPFwkV 72FKD3dilPs+8Rs/2+So8cMQ+83kzoKQJ60dcFK57fkd74RAAniWYgulNBHTlOsfWTIVWc 3tEDjrjXgPfvA9bgC+t/bIP4KJMdobrzJZHFmuHaEwmoOzQOfyBGiTOgt6BBhNKQAfR2GT ps0nwbI/3uEwu6guzNWD9UawM5Z++zyjtRPJet9rTMYOo1Any+GlqqyicrnngA== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch stable/12 has been updated by obrien: URL: https://cgit.FreeBSD.org/src/commit/?id=8553976d35ddd877fc3193447a643dbf87ced827 commit 8553976d35ddd877fc3193447a643dbf87ced827 Author: Conrad Meyer AuthorDate: 2019-11-20 19:55:43 +0000 Commit: David E. O'Brien CommitDate: 2022-02-21 05:56:43 +0000 random/ivy: Trivial refactoring It is clearer to me to return success/error (true/false) instead of some retry count linked to the inline assembly implementation. No functional change. (cherry picked from commit c41faf5591bdda3556d7616913381e98109bff15) --- sys/dev/random/ivy.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/sys/dev/random/ivy.c b/sys/dev/random/ivy.c index e45e6a2d1242..a33e6bb63327 100644 --- a/sys/dev/random/ivy.c +++ b/sys/dev/random/ivy.c @@ -59,7 +59,7 @@ static struct random_source random_ivy = { .rs_read = random_ivy_read }; -static int +static bool x86_rdrand_store(u_long *buf) { u_long rndval; @@ -75,10 +75,10 @@ x86_rdrand_store(u_long *buf) "2:" : "+r" (retry), "=r" (rndval) : : "cc"); *buf = rndval; - return (retry); + return (retry != 0); } -static int +static bool x86_rdseed_store(u_long *buf) { u_long rndval; @@ -94,17 +94,17 @@ x86_rdseed_store(u_long *buf) "2:" : "+r" (retry), "=r" (rndval) : : "cc"); *buf = rndval; - return (retry); + return (retry != 0); } -static int +static bool x86_unimpl_store(u_long *buf __unused) { panic("%s called", __func__); } -DEFINE_IFUNC(static, int, x86_rng_store, (u_long *buf), static) +DEFINE_IFUNC(static, bool, x86_rng_store, (u_long *buf), static) { has_rdrand = (cpu_feature2 & CPUID2_RDRAND); has_rdseed = (cpu_stdext_feature & CPUID_STDEXT_RDSEED); @@ -127,7 +127,7 @@ random_ivy_read(void *buf, u_int c) KASSERT(c % sizeof(*b) == 0, ("partial read %d", c)); b = buf; for (count = c; count > 0; count -= sizeof(*b)) { - if (x86_rng_store(&rndval) == 0) + if (!x86_rng_store(&rndval)) break; *b++ = rndval; }