From patchwork Wed Mar 13 06:26:27 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 160200 Delivered-To: patch@linaro.org Received: by 2002:a02:5cc1:0:0:0:0:0 with SMTP id w62csp13953111jad; Tue, 12 Mar 2019 23:30:00 -0700 (PDT) X-Google-Smtp-Source: APXvYqxCBZdCewDM7+geXG5Ewu7v7+pO2xTWY/QaKIHWg2zAoIOziw0n9j6EVQIYcJKfyJ7CHyqj X-Received: by 2002:a81:5c56:: with SMTP id q83mr32692ywb.497.1552458599766; Tue, 12 Mar 2019 23:29:59 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1552458599; cv=none; d=google.com; s=arc-20160816; b=KM7MpmmHsnMUNMlYtC0xyFJ5wGuULSMR9o2J51bLO1c4UoPDGeQBh755vjrKTqPgCi K3AsFRSJTK2gTwYVXPtVTqBE9i8FXCqWMrGm2F8SaYkpb4fsfbZ+XOQDAJheQqj3PpFt S+qBRLbKB4xib/39oZNFGkUTd35M1TWwcJ7BnQAnFsWIGOKGc1ekixTX95kSi0qnoM0n TnW7X+TxPz2xK4IDIiv7izhu6+gbjAXbkz6QJ6fElRp2YZ/px4aP7v84vSYxjxTw0rYr Rnrhsc4CfmfAz3eXnClXCxUonZQObmZR2+As0eNH22rT7yGl/YHZCYx9q1wSY5M33WZE 2Yfg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:subject:references:in-reply-to :message-id:date:to:from:dkim-signature; bh=gpelhTrFHIRILhcge+m6UkRTeSiVlbqBCdoqAwCZgvk=; b=nGr+oIX/sQjYQRqSGgLS7r7ms5523t7VHOeE5OIfbSoYl6vtlMq8biDmuV2abPNp+E zqFRV9hdvgFVxhGpGAympFAxjdUIUYspSIjdVIhd9DU7KUrQV9rDRbyMskyUlw9TMvxt DqLsyNkIqxj0R6XG9fJm3ZVflwfw9wSUvqIfxqsEOwoiW9Cp4YySkR77pQv+WeNVTHdi eY1LajmMo8TV5AofJruSssHkTbrXdVKSIlYEEBDBsI1kegpOiTrOUH7s/ijGc08/4UJu gs6T9kxQdDnxsEAwfzMRaceouH5T+utJFpM+JLjvrKSqjdc52xO1WbjdUR1+uTG4vt16 Pxig== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=UJUiu3Mj; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id 204si6190058ybs.210.2019.03.12.23.29.59 for (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 12 Mar 2019 23:29:59 -0700 (PDT) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=UJUiu3Mj; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([127.0.0.1]:39180 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h3xOp-00029p-Aq for patch@linaro.org; Wed, 13 Mar 2019 02:29:59 -0400 Received: from eggs.gnu.org ([209.51.188.92]:53884) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h3xLg-0000f1-UD for qemu-devel@nongnu.org; Wed, 13 Mar 2019 02:26:45 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h3xLd-00020O-Ph for qemu-devel@nongnu.org; Wed, 13 Mar 2019 02:26:44 -0400 Received: from mail-pg1-x543.google.com ([2607:f8b0:4864:20::543]:45424) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1h3xLb-0001zb-2y for qemu-devel@nongnu.org; Wed, 13 Mar 2019 02:26:40 -0400 Received: by mail-pg1-x543.google.com with SMTP id 125so770710pgc.12 for ; Tue, 12 Mar 2019 23:26:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=gpelhTrFHIRILhcge+m6UkRTeSiVlbqBCdoqAwCZgvk=; b=UJUiu3MjA//pbGAQqYY3Hhn1Bj/L3YPaBdYg1kaOQqB9hF7OvaeUgTFTDByKdPNcxL bc6Q1dE6z+u2xsUCtFNFMTtQpH07pYyc8KcSTImqAU0QoUPX2zFcqEVnQqJksF6QJo38 SDEUsA/ds6UuEj8sHx15IN2dZsFmM0qTce8flhmWb2KzsoaW350EgUgt9rPgg0J4/Zv+ 3AGV5TgYKLJhAN/CUj4HUrrDU5oC73lqLxVW1gy0I0CUPpqlqH801l4/NmB2HTU09l9J lxl+X7JbvERkQcnfjBrnbP6ht3BJg9D+R8+T3uA2+fuT365eX6YhS1r/hHbgJi36NcFZ E9gA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=gpelhTrFHIRILhcge+m6UkRTeSiVlbqBCdoqAwCZgvk=; b=LhZkFjg8OIvra2faMLDlgEyr8y725ArJQnkenA+VlmHvpOFpHp9/Bn5Ut/0fV1Sjx5 aDCwu+bsUN4xWRM4l53RxZ305sJTtuh/n9QRIPQ8SJk/cJdJUTvhK2vHPtdh5OnV/Jgb xB9HqIoTXug9fYnsYHBsfRnJgEMQpjrwcSoyUbfhiR5EQKR3WdiIdhZ4KETk9uVFvpFD 702QeDKSIZx+9XFZ9gAXGhzmL//naKGN0y7nKsyzmsq0X58VrWaGgaUcMMjm/Ma1pmaM 6fNeT+pqYzzb7kDyWD6ZENMP2I0w1/rMK4rgwJcr6xjJGFJarNI+gv3KKojj/QyjTpp7 3BXg== X-Gm-Message-State: APjAAAWSRs+oxG0on6aHTqVLVHMrLHFfrevPjreotrW9buODKJHSO5Yf PDACO3B/zCyZ8rqaG3oDdOh0n5iuPF4= X-Received: by 2002:a17:902:8203:: with SMTP id x3mr43823533pln.159.1552458397416; Tue, 12 Mar 2019 23:26:37 -0700 (PDT) Received: from localhost.localdomain (97-113-188-82.tukw.qwest.net. [97.113.188.82]) by smtp.gmail.com with ESMTPSA id m64sm25593889pfi.149.2019.03.12.23.26.36 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 12 Mar 2019 23:26:36 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Date: Tue, 12 Mar 2019 23:26:27 -0700 Message-Id: <20190313062630.30568-5-richard.henderson@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20190313062630.30568-1-richard.henderson@linaro.org> References: <20190313062630.30568-1-richard.henderson@linaro.org> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::543 Subject: [Qemu-devel] [PATCH for-4.1 4/7] linux-user/aarch64: Use qemu_getrandom for arm_init_pauth_key X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: peter.maydell@linaro.org, david@redhat.com, laurent@vivier.eu, armbru@redhat.com, kraxel@redhat.com, pbonzini@redhat.com, david@gibson.dropbear.id.au Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Use a better interface for random numbers than rand * 3. Signed-off-by: Richard Henderson --- linux-user/aarch64/cpu_loop.c | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) -- 2.17.1 diff --git a/linux-user/aarch64/cpu_loop.c b/linux-user/aarch64/cpu_loop.c index d75fd9d3e2..ad30cab52d 100644 --- a/linux-user/aarch64/cpu_loop.c +++ b/linux-user/aarch64/cpu_loop.c @@ -20,6 +20,7 @@ #include "qemu/osdep.h" #include "qemu.h" #include "cpu_loop-common.h" +#include "qemu/random.h" #define get_user_code_u32(x, gaddr, env) \ ({ abi_long __r = get_user_u32((x), (gaddr)); \ @@ -147,22 +148,9 @@ void cpu_loop(CPUARMState *env) } } -static uint64_t arm_rand64(void) -{ - int shift = 64 - clz64(RAND_MAX); - int i, n = 64 / shift + (64 % shift != 0); - uint64_t ret = 0; - - for (i = 0; i < n; i++) { - ret = (ret << shift) | rand(); - } - return ret; -} - void arm_init_pauth_key(ARMPACKey *key) { - key->lo = arm_rand64(); - key->hi = arm_rand64(); + qemu_getrandom(key, sizeof(*key), false); } void target_cpu_copy_regs(CPUArchState *env, struct target_pt_regs *regs)