On Fri, Apr 19, 2024 at 4:44 AM <[email protected]> wrote:
>
> From: Jeff Xu <[email protected]>
>
> fix compile warning reported by test robot
>
> Signed-off-by: Jeff Xu <[email protected]>
> Reported-by: kernel test robot <[email protected]>
> Closes: https://lore.kernel.org/r/[email protected]/
> ---
> tools/testing/selftests/mm/mseal_test.c | 3 +--
> tools/testing/selftests/mm/seal_elf.c | 3 +--
> 2 files changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/tools/testing/selftests/mm/mseal_test.c
> b/tools/testing/selftests/mm/mseal_test.c
> index 4a326334726d..35cdae93e580 100644
> --- a/tools/testing/selftests/mm/mseal_test.c
> +++ b/tools/testing/selftests/mm/mseal_test.c
> @@ -79,7 +79,7 @@ static unsigned long get_vma_size(void *addr, int *prot)
> return 0;
>
> while (fgets(line, sizeof(line), maps)) {
> - if (sscanf(line, "%lx-%lx %4s", &addr_start, &addr_end,
> &protstr) == 3) {
> + if (sscanf(line, "%lx-%lx %4s", &addr_start, &addr_end, (char
> *) &protstr) == 3) {
This fix is wrong. You can simply do:
+ if (sscanf(line, "%lx-%lx %4s", &addr_start,
&addr_end, protstr) == 3) {
and it'll just work (arrays decay to pointers when required).
> if (addr_start == (uintptr_t) addr) {
> size = addr_end - addr_start;
> if (protstr[0] == 'r')
> @@ -208,7 +208,6 @@ static u64 set_pkey_bits(u64 reg, int pkey, u64 flags)
>
> static void set_pkey(int pkey, unsigned long pkey_value)
> {
> - unsigned long mask = (PKEY_DISABLE_ACCESS | PKEY_DISABLE_WRITE);
> u64 new_pkey_reg;
>
> new_pkey_reg = set_pkey_bits(__read_pkey_reg(), pkey, pkey_value);
> diff --git a/tools/testing/selftests/mm/seal_elf.c
> b/tools/testing/selftests/mm/seal_elf.c
> index 7143dc4f1b10..b7e72f9804f8 100644
> --- a/tools/testing/selftests/mm/seal_elf.c
> +++ b/tools/testing/selftests/mm/seal_elf.c
> @@ -105,7 +105,6 @@ static void test_seal_elf(void)
> int ret;
> FILE *maps;
> char line[512];
> - int size = 0;
> uintptr_t addr_start, addr_end;
> char prot[5];
> char filename[256];
> @@ -136,7 +135,7 @@ static void test_seal_elf(void)
> */
> while (fgets(line, sizeof(line), maps)) {
> if (sscanf(line, "%lx-%lx %4s %*x %*x:%*x %*u %255[^\n]",
> - &addr_start, &addr_end, &prot, &filename) == 4) {
> + &addr_start, &addr_end, (char *)&prot, (char
> *)&filename) == 4) {
aaand same here.
--
Pedro