lkml.org 
[lkml]   [2018]   [Jan]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v10 07/24] selftests/vm: fixed bugs in pkey_disable_clear()
    Date
    instead of clearing the bits, pkey_disable_clear() was setting
    the bits. Fixed it.

    Also fixed a wrong assertion in that function. When bits are
    cleared, the resulting bit value will be less than the original.

    Signed-off-by: Ram Pai <linuxram@us.ibm.com>
    ---
    tools/testing/selftests/vm/protection_keys.c | 4 ++--
    1 files changed, 2 insertions(+), 2 deletions(-)

    diff --git a/tools/testing/selftests/vm/protection_keys.c b/tools/testing/selftests/vm/protection_keys.c
    index 0109388..ca54a95 100644
    --- a/tools/testing/selftests/vm/protection_keys.c
    +++ b/tools/testing/selftests/vm/protection_keys.c
    @@ -461,7 +461,7 @@ void pkey_disable_clear(int pkey, int flags)
    pkey, pkey, pkey_rights);
    pkey_assert(pkey_rights >= 0);

    - pkey_rights |= flags;
    + pkey_rights &= ~flags;

    ret = pkey_set(pkey, pkey_rights, 0);
    /* pkey_reg and flags have the same format */
    @@ -475,7 +475,7 @@ void pkey_disable_clear(int pkey, int flags)
    dprintf1("%s(%d) pkey_reg: 0x%016lx\n", __func__,
    pkey, rdpkey_reg());
    if (flags)
    - assert(rdpkey_reg() > orig_pkey_reg);
    + assert(rdpkey_reg() < orig_pkey_reg);
    }

    void pkey_write_allow(int pkey)
    --
    1.7.1
    \
     
     \ /
      Last update: 2018-01-22 19:59    [W:4.452 / U:1.716 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site