lkml.org 
[lkml]   [2020]   [Jun]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH AUTOSEL 5.4 231/266] selftests/vm/pkeys: fix alloc_random_pkey() to make it really random
    Date
    From: Ram Pai <linuxram@us.ibm.com>

    [ Upstream commit 6e373263ce07eeaa6410843179535fbdf561fc31 ]

    alloc_random_pkey() was allocating the same pkey every time. Not all
    pkeys were geting tested. This fixes it.

    Signed-off-by: Ram Pai <linuxram@us.ibm.com>
    Signed-off-by: Sandipan Das <sandipan@linux.ibm.com>
    Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
    Acked-by: Dave Hansen <dave.hansen@intel.com>
    Cc: Dave Hansen <dave.hansen@intel.com>
    Cc: Florian Weimer <fweimer@redhat.com>
    Cc: "Desnes A. Nunes do Rosario" <desnesn@linux.vnet.ibm.com>
    Cc: Ingo Molnar <mingo@kernel.org>
    Cc: Thiago Jung Bauermann <bauerman@linux.ibm.com>
    Cc: "Aneesh Kumar K.V" <aneesh.kumar@linux.ibm.com>
    Cc: Michael Ellerman <mpe@ellerman.id.au>
    Cc: Michal Hocko <mhocko@kernel.org>
    Cc: Michal Suchanek <msuchanek@suse.de>
    Cc: Shuah Khan <shuah@kernel.org>
    Link: http://lkml.kernel.org/r/0162f55816d4e783a0d6e49e554d0ab9a3c9a23b.1585646528.git.sandipan@linux.ibm.com
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    tools/testing/selftests/x86/protection_keys.c | 3 ++-
    1 file changed, 2 insertions(+), 1 deletion(-)

    diff --git a/tools/testing/selftests/x86/protection_keys.c b/tools/testing/selftests/x86/protection_keys.c
    index 480995bceefa..47191af46617 100644
    --- a/tools/testing/selftests/x86/protection_keys.c
    +++ b/tools/testing/selftests/x86/protection_keys.c
    @@ -24,6 +24,7 @@
    #define _GNU_SOURCE
    #include <errno.h>
    #include <linux/futex.h>
    +#include <time.h>
    #include <sys/time.h>
    #include <sys/syscall.h>
    #include <string.h>
    @@ -612,10 +613,10 @@ int alloc_random_pkey(void)
    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)
    --
    2.25.1
    \
     
     \ /
      Last update: 2020-06-18 04:27    [W:4.087 / U:0.404 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site