lkml.org 
[lkml]   [2023]   [Jul]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    Subject[PATCH v4 04/34] KVM: selftests: Add strnlen() to the string overrides
    From
    From: Aaron Lewis <aaronlewis@google.com>

    Add strnlen() to the string overrides to allow it to be called in the
    guest.

    The implementation for strnlen() was taken from the kernel's generic
    version, lib/string.c.

    This will be needed when printf() is introduced.

    Signed-off-by: Aaron Lewis <aaronlewis@google.com>
    Signed-off-by: Sean Christopherson <seanjc@google.com>
    ---
    tools/testing/selftests/kvm/Makefile | 1 +
    tools/testing/selftests/kvm/lib/string_override.c | 9 +++++++++
    2 files changed, 10 insertions(+)

    diff --git a/tools/testing/selftests/kvm/Makefile b/tools/testing/selftests/kvm/Makefile
    index c692cc86e7da..f6c14ab476ac 100644
    --- a/tools/testing/selftests/kvm/Makefile
    +++ b/tools/testing/selftests/kvm/Makefile
    @@ -204,6 +204,7 @@ endif
    CFLAGS += -Wall -Wstrict-prototypes -Wuninitialized -O2 -g -std=gnu99 \
    -Wno-gnu-variable-sized-type-not-at-end -MD\
    -fno-builtin-memcmp -fno-builtin-memcpy -fno-builtin-memset \
    + -fno-builtin-strnlen \
    -fno-stack-protector -fno-PIE -I$(LINUX_TOOL_INCLUDE) \
    -I$(LINUX_TOOL_ARCH_INCLUDE) -I$(LINUX_HDR_PATH) -Iinclude \
    -I$(<D) -Iinclude/$(ARCH_DIR) -I ../rseq -I.. $(EXTRA_CFLAGS) \
    diff --git a/tools/testing/selftests/kvm/lib/string_override.c b/tools/testing/selftests/kvm/lib/string_override.c
    index 632398adc229..5d1c87277c49 100644
    --- a/tools/testing/selftests/kvm/lib/string_override.c
    +++ b/tools/testing/selftests/kvm/lib/string_override.c
    @@ -37,3 +37,12 @@ void *memset(void *s, int c, size_t count)
    *xs++ = c;
    return s;
    }
    +
    +size_t strnlen(const char *s, size_t count)
    +{
    + const char *sc;
    +
    + for (sc = s; count-- && *sc != '\0'; ++sc)
    + /* nothing */;
    + return sc - s;
    +}
    --
    2.41.0.487.g6d72f3e995-goog
    \
     
     \ /
      Last update: 2023-07-29 02:38    [W:4.094 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site