[LTP] [PATCH 1/1] mmap20: Fix invalid address
Petr Vorel
pvorel@suse.cz
Thu Apr 6 13:13:01 CEST 2023
Hi all,
> On Thu, Apr 6, 2023 at 5:49 PM Petr Vorel <pvorel@suse.cz> wrote:
> > Hi all,
> > > Hi Petr,
> > > (1<<9) is also used by another flag on alpha, but it said not
> > > linux-specific,
> > > so I guess it won't be a problem (at least for now).
> > > alpha/include/uapi/asm/mman.h:#define _MAP_HASSEMAPHORE 0x0200
> > Good point! I checked only glibc/musl headers, obviously checking kernel
> > sources
> > is better as it contains old archs. It affects alpha, ia64 and sparc
> > (well, they might not even compile current LTP, we were dropping ia64 fixes
> > anyway).
> Okay, I only noticed that alpha is not defined 0x0200 for Linux
> specifically.
> > $ git grep -w 0x0200 arch/*/include/uapi/asm/mman.h
> > arch/alpha/include/uapi/asm/mman.h:#define _MAP_HASSEMAPHORE 0x0200
> > arch/ia64/include/uapi/asm/mman.h:#define MAP_GROWSUP 0x0200 /*
> > register stack-like segment */
> > arch/sparc/include/uapi/asm/mman.h:#define MAP_GROWSDOWN 0x0200
> > /* stack-like segment */
> > But as 0x400 (1 << 10) is not used anywhere, I merged it with this value.
> Hmm, I didn't understand here why merged with 0x0400,
> aren't there still duplicated flags?
> $ git grep -w 0x0400 arch/*/include/uapi/asm/mman.h
> arch/alpha/include/uapi/asm/mman.h:#define _MAP_INHERIT 0x0400
> arch/mips/include/uapi/asm/mman.h:#define MAP_NORESERVE 0x0400 /*
> don't check for reservations */
> arch/xtensa/include/uapi/asm/mman.h:#define MAP_NORESERVE 0x0400
> /* don't check for reservations */
I'm sorry I now don't know what I greped, because there are results for 0x0400 :(.
Obviously last minute change without ack is a bad practise.
You're right, linux specific 0x0400 is in mips and xtensa (it's non-linux
specific on alpha). OTOH ia64 and sparc define:
arch/ia64/include/uapi/asm/mman.h
#define MAP_GROWSUP 0x0200 /* register stack-like segment */
arch/sparc/include/uapi/asm/mman.h
#define MAP_GROWSDOWN 0x0200 /* stack-like segment */
Are these used as flags? If yes none of the values is optimal as it breaks some
arch. If you agree, I'd keep 0x0400 and follow Jan's suggestion (don't map a
file, and then add MAP_SYNC to flags).
Kind regards,
Petr
More information about the ltp
mailing list