From patchwork Thu Jun 14 00:45:02 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ram Pai X-Patchwork-Id: 10463087 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id F2135603EE for ; Thu, 14 Jun 2018 00:47:27 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E330E28988 for ; Thu, 14 Jun 2018 00:47:27 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id D783928BA8; Thu, 14 Jun 2018 00:47:27 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 7DF2F28988 for ; Thu, 14 Jun 2018 00:47:27 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id F0B356B0274; Wed, 13 Jun 2018 20:47:07 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id E3BDC6B0276; Wed, 13 Jun 2018 20:47:07 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CEC6D6B0277; Wed, 13 Jun 2018 20:47:07 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-qt0-f199.google.com (mail-qt0-f199.google.com [209.85.216.199]) by kanga.kvack.org (Postfix) with ESMTP id 8CE856B0274 for ; Wed, 13 Jun 2018 20:47:07 -0400 (EDT) Received: by mail-qt0-f199.google.com with SMTP id j2-v6so3314958qtn.10 for ; Wed, 13 Jun 2018 17:47:07 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:sender:from:to:cc:subject:date :message-id:in-reply-to:references; bh=skdFtvuEd4XfN7iEwnmc0zziYX0losbSh01biLb02Y4=; b=PVa9dVUdQwsVlpiqkxtuPXUqSdRzoxMnZOy1vYd9ogTtXIM50mkopMedn/8i2jDWeq yACdyEU+KGhoUw3iMiFE1xQcU9THLnpCDfKAs1Mw4bTZI8woWf8w4mK0xxiExNixacQR C0uI7s9Mrqku/XKNvSY3exdlQyUfN4X7/yqSw8ImEdkONDeTFQDYYhFAM0MOLq/CN5CX pidbaf4nAHSBBhsIjA1L3H9czKOPtju6+QnFT9nbnZPY1Iaf6ZibNh62h/hUmf10ub86 gv3dDZDu/YoaJmdSFnsCLkUXQ9R5SOwrRWI+ZOVs5GaWWnHg1L+SJNqWngOCn0j7sTw3 elsg== X-Gm-Message-State: APt69E0SlcrxOnmDf5KR3ajmHGt52DauK0LkQTlO/a2vF6MxFDVwgUK4 y9YGpNYIBK8MvCA3uMmtJ1VEBwBV6h+9xY2UcSwVsVqkUIYjMMbYcAgC5i0CoMykPBG10Mh7HCZ Od37q0oojmPRalH0Tzhz/vv6le3SdU923XaaE+BXQkjslFTqeRXJxbCtYUEYYXSZq4QWFwVlLDa kJqXY23R6J8PCU0qH7ZBOBOvaD7Z0E58yrJxFKklIL2myIQP3OnvR8iS9HOJDc4nIkRwVJ/BQ+Q eUxo83aPXJGlU3bNB2LBCBiICY9TiG5lJ07/wNsoUiucNxOyXELvR4jYzJJv0OhLyPxJKYcNTsY 1NUeO+NRK1x02V23zEvma6yvBxDK22SjtlXni5DOCD1mPA8Te/mtmAWCTXDOFFJADa/OI5k/sA= = X-Received: by 2002:ac8:7208:: with SMTP id a8-v6mr400871qtp.222.1528937227377; Wed, 13 Jun 2018 17:47:07 -0700 (PDT) X-Received: by 2002:ac8:7208:: with SMTP id a8-v6mr400849qtp.222.1528937226859; Wed, 13 Jun 2018 17:47:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1528937226; cv=none; d=google.com; s=arc-20160816; b=lNRtzr3jtiKbZUg3Rbtcc6vgtmr3Ptm7qGTrJcZdhgc2QsaPfbTtDlS3/39E7ndmko 47ZEO8FIh6UE7b187WQOpD2BdJOcwtKXzgO5U2GYgUYH+FwqmO9QK605Lj+kE/TJsAc0 23bIjOCgP8hQia60g8jUHhld2sKoADUnBMSzY7EHV1X2pSBuyXkjEboVOgvI/CZRAeSF XM/ZdlFYrwUvYrUssWk2ZP9gmL2h5yPc/n7fVYMS/iSBNCtMdflAsQyNZrB6wthMfONq Hh28zXqYV+ZJVNEpKjRrW3d7JytQLhHtAZ3/ICYacDDLUuhF8sdGAWpwq2nINLxFoCvN doNw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from:sender :dkim-signature:arc-authentication-results; bh=skdFtvuEd4XfN7iEwnmc0zziYX0losbSh01biLb02Y4=; b=uFNMMdsUnGQMTY36ri2we/+6Cd2Dyn14V9hsMMgs1pzkuA9l6/S5UjIXBmKrm8oK6P FPzC+gCmHjTo+Wk6XOrDmF8Nk+GrRU9nD+iwzTU7uVYJnmYwyv6SGf8GG/hv5+jzqKjC p5fc5jMo9XEAwl9X4nzKmrk0W4/Bu3WVrmpw1FRM/cBm2JCbLSy0Zud6J8M2kQkuROFq lkDSw28PRgh1AOAliazTfCp+NHde2RwsISFP6OI8FF1ZZW1+Rb2peOS2rE4/9S4W35OR vPsF4DNqWdQpTPypAx2zXMwqsaLODYQHjPxSeyuA37vnC/4uxVD9rFEEhjgxTPl//2ln PXLg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=pReF+5q+; spf=pass (google.com: domain of ram.n.pai@gmail.com designates 209.85.220.65 as permitted sender) smtp.mailfrom=ram.n.pai@gmail.com; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Received: from mail-sor-f65.google.com (mail-sor-f65.google.com. [209.85.220.65]) by mx.google.com with SMTPS id 17-v6sor2076829qts.146.2018.06.13.17.47.06 for (Google Transport Security); Wed, 13 Jun 2018 17:47:06 -0700 (PDT) Received-SPF: pass (google.com: domain of ram.n.pai@gmail.com designates 209.85.220.65 as permitted sender) client-ip=209.85.220.65; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=pReF+5q+; spf=pass (google.com: domain of ram.n.pai@gmail.com designates 209.85.220.65 as permitted sender) smtp.mailfrom=ram.n.pai@gmail.com; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=skdFtvuEd4XfN7iEwnmc0zziYX0losbSh01biLb02Y4=; b=pReF+5q+V73VtKzG7qkyKTLTe+2od5e1jQthl2mX/R/5dQtxtcExDRJCbJQXqIhtF3 cat817BegCGSKDIX/1MhNcwc59m257lA/4kWF6h4ZN47Nrl20pKHpSwiniIgylPgW9I4 JqCl8KSNK5i4czGihbp7XA11VqDoEBAT1ENS+QushZS6iZ+nb2Ciys5wqfhtzUAIyIil L6Du4ZP0RySVLZzrbf31EnXZh5ZdVREc9g+SKIOSfDSGMW2xGK0/+trBsZouv0McQJs/ MjQVbeTy3gCv8Y495XJmA+a8sk/imyqIT8V0Y+/jE+qbwqb/uZq5RhycMi6VUuAmuhAI QKdw== X-Google-Smtp-Source: ADUXVKI+aeCSU0dGjGVNdfn81SmeTG0/qbCewlhDYT3WgP4fJCsPnbJ4IFAy+whlAubECXR/PQwqyg== X-Received: by 2002:ac8:43c7:: with SMTP id w7-v6mr355054qtn.371.1528937226665; Wed, 13 Jun 2018 17:47:06 -0700 (PDT) Received: from localhost.localdomain (50-39-100-161.bvtn.or.frontiernet.net. [50.39.100.161]) by smtp.gmail.com with ESMTPSA id u31-v6sm3225898qtc.28.2018.06.13.17.47.04 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 13 Jun 2018 17:47:06 -0700 (PDT) From: Ram Pai To: shuahkh@osg.samsung.com, linux-kselftest@vger.kernel.org Cc: mpe@ellerman.id.au, linuxppc-dev@lists.ozlabs.org, linux-mm@kvack.org, x86@kernel.org, linux-arch@vger.kernel.org, mingo@redhat.com, dave.hansen@intel.com, mhocko@kernel.org, bauerman@linux.vnet.ibm.com, linuxram@us.ibm.com, fweimer@redhat.com, msuchanek@suse.de, aneesh.kumar@linux.vnet.ibm.com Subject: [PATCH v13 11/24] selftests/vm: fix alloc_random_pkey() to make it really random Date: Wed, 13 Jun 2018 17:45:02 -0700 Message-Id: <1528937115-10132-12-git-send-email-linuxram@us.ibm.com> X-Mailer: git-send-email 1.7.1 In-Reply-To: <1528937115-10132-1-git-send-email-linuxram@us.ibm.com> References: <1528937115-10132-1-git-send-email-linuxram@us.ibm.com> X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: X-Virus-Scanned: ClamAV using ClamSMTP alloc_random_pkey() was allocating the same pkey every time. Not all pkeys were geting tested. fixed it. cc: Dave Hansen cc: Florian Weimer Signed-off-by: Ram Pai --- tools/testing/selftests/vm/protection_keys.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-) diff --git a/tools/testing/selftests/vm/protection_keys.c b/tools/testing/selftests/vm/protection_keys.c index 42a91c7..c5f9776 100644 --- a/tools/testing/selftests/vm/protection_keys.c +++ b/tools/testing/selftests/vm/protection_keys.c @@ -24,6 +24,7 @@ #define _GNU_SOURCE #include #include +#include #include #include #include @@ -576,13 +577,15 @@ int alloc_random_pkey(void) int alloced_pkeys[NR_PKEYS]; int nr_alloced = 0; int random_index; + memset(alloced_pkeys, 0, sizeof(alloced_pkeys)); + srand((unsigned int)time(NULL)); /* allocate every possible key and make a note of which ones we got */ max_nr_pkey_allocs = NR_PKEYS; - max_nr_pkey_allocs = 1; for (i = 0; i < max_nr_pkey_allocs; i++) { int new_pkey = alloc_pkey(); + if (new_pkey < 0) break; alloced_pkeys[nr_alloced++] = new_pkey; @@ -598,6 +601,7 @@ int alloc_random_pkey(void) /* go through the allocated ones that we did not want and free them */ for (i = 0; i < nr_alloced; i++) { int free_ret; + if (!alloced_pkeys[i]) continue; free_ret = sys_pkey_free(alloced_pkeys[i]);