• John Hubbard's avatar
    selftests/vm: use a common gup_test.h · b9dcfdff
    John Hubbard authored
    Avoid the need to copy-paste the gup_test ioctl commands and the struct
    gup_test definition, between the kernel and the user space application, by
    providing a new header file for these.  This allows easier and safer
    adding of new ioctl calls, as well as reducing the overall line count.
    
    Details: The header file has to be able to compile independently, because
    of the arguably unfortunate way that the Makefile is written: the Makefile
    tries to build all of its prerequisites, when really it should be only
    building the .c files, and leaving the other prerequisites (LOCAL_HDRS) as
    pure dependencies.
    
    That Makefile limitation is probably not worth fixing, but it explains why
    one of the includes had to be moved into the new header file.
    
    Also: simplify the ioctl struct (struct gup_test), by deleting the unused
    __expansion[10] field.  This sort of thing is what you might see in a
    stable ABI, but this low-level, kernel-developer-oriented selftests/vm
    system is very much not subject to ABI stability.  So "expansion" and
    "reserved" fields are unnecessary here.
    
    Link: https://lkml.kernel.org/r/20201026064021.3545418-3-jhubbard@nvidia.comSigned-off-by: default avatarJohn Hubbard <jhubbard@nvidia.com>
    Cc: Jérôme Glisse <jglisse@redhat.com>
    Cc: Jonathan Corbet <corbet@lwn.net>
    Cc: Ralph Campbell <rcampbell@nvidia.com>
    Cc: Shuah Khan <shuah@kernel.org>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    b9dcfdff
gup_test.c 2.29 KB