Message ID | 20240419034350.127838-2-jeffxu@chromium.org |
---|---|
State | Superseded |
Headers | show |
Series | selftest mm/mseal compile warning | expand |
On 4/19/24 8:43 AM, jeffxu@chromium.org wrote: > From: Jeff Xu <jeffxu@chromium.org> > > fix compile warning reported by test robot > > Signed-off-by: Jeff Xu <jeffxu@chromium.org> > Reported-by: kernel test robot <yujie.liu@intel.com> > Closes: https://lore.kernel.org/r/202404190226.OfJOewV8-lkp@intel.com/ Reviewed-by: Muhammad Usama Anjum <usama.anjum@collabora.com> > --- > 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) { > 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) { > if (strlen(filename)) { > /* > * seal the mapping if read only.
On Fri, Apr 19, 2024 at 4:44 AM <jeffxu@chromium.org> wrote: > > From: Jeff Xu <jeffxu@chromium.org> > > fix compile warning reported by test robot > > Signed-off-by: Jeff Xu <jeffxu@chromium.org> > Reported-by: kernel test robot <yujie.liu@intel.com> > Closes: https://lore.kernel.org/r/202404190226.OfJOewV8-lkp@intel.com/ > --- > 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.
On Fri, Apr 19, 2024 at 9:43 AM Pedro Falcato <pedro.falcato@gmail.com> wrote: > > On Fri, Apr 19, 2024 at 4:44 AM <jeffxu@chromium.org> wrote: > > > > From: Jeff Xu <jeffxu@chromium.org> > > > > fix compile warning reported by test robot > > > > Signed-off-by: Jeff Xu <jeffxu@chromium.org> > > Reported-by: kernel test robot <yujie.liu@intel.com> > > Closes: https://lore.kernel.org/r/202404190226.OfJOewV8-lkp@intel.com/ > > --- > > 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). > Ya, that is a better fix, I will change that. Thanks > > 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
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) { 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) { if (strlen(filename)) { /* * seal the mapping if read only.