Re: [Qemu-devel] [PATCH v5 05/11] linux-user: fix mmap/munmap/mprotect/mremap/shmat

2018-03-07 Thread Laurent Vivier
Le 07/03/2018 à 18:45, Max Filippov a écrit : > On Wed, Mar 7, 2018 at 2:08 AM, Laurent Vivier wrote: >>> +static inline int guest_range_valid(unsigned long start, unsigned long len) >>> +{ >>> +if (len) >>> +return guest_addr_valid(len - 1) && start <=

Re: [Qemu-devel] [PATCH v5 05/11] linux-user: fix mmap/munmap/mprotect/mremap/shmat

2018-03-07 Thread Max Filippov
On Wed, Mar 7, 2018 at 2:08 AM, Laurent Vivier wrote: >> +static inline int guest_range_valid(unsigned long start, unsigned long len) >> +{ >> +if (len) >> +return guest_addr_valid(len - 1) && start <= GUEST_ADDR_MAX - len + >> 1; >> +else >> +return

Re: [Qemu-devel] [PATCH v5 05/11] linux-user: fix mmap/munmap/mprotect/mremap/shmat

2018-03-07 Thread Laurent Vivier
Le 07/03/2018 à 07:36, Max Filippov a écrit : > In linux-user QEMU that runs for a target with TARGET_ABI_BITS bigger > than L1_MAP_ADDR_SPACE_BITS an assertion in page_set_flags fires when > mmap, munmap, mprotect, mremap or shmat is called for an address outside > the guest address space. mmap

[Qemu-devel] [PATCH v5 05/11] linux-user: fix mmap/munmap/mprotect/mremap/shmat

2018-03-06 Thread Max Filippov
In linux-user QEMU that runs for a target with TARGET_ABI_BITS bigger than L1_MAP_ADDR_SPACE_BITS an assertion in page_set_flags fires when mmap, munmap, mprotect, mremap or shmat is called for an address outside the guest address space. mmap and mprotect should return ENOMEM in such case. Change