diff options
author | Helge Deller <deller@gmx.de> | 2013-11-20 22:07:42 (GMT) |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2013-12-12 06:37:54 (GMT) |
commit | 527c106d547866865ec9368f913b25f530f9f2a5 (patch) | |
tree | b4c134145aa34d356cca49ba21b4506e5bdbeffa /drivers/xen | |
parent | 8dd478f2d7480ce2ba7e1fa89d00049fb03b6b94 (diff) | |
download | linux-fsl-qoriq-527c106d547866865ec9368f913b25f530f9f2a5.tar.xz |
parisc: fix mmap(MAP_FIXED|MAP_SHARED) to already mmapped address
commit 0576da2c08e3d332f1b0653030d28ab804585ab6 upstream.
locale-gen on Debian showed a strange problem on parisc:
mmap2(NULL, 536870912, PROT_NONE, MAP_SHARED, 3, 0) = 0x42a54000
mmap2(0x42a54000, 103860, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FIXED, 3, 0) = -1 EINVAL (Invalid argument)
Basically it was just trying to re-mmap() a file at the same address
which it was given by a previous mmap() call. But this remapping failed
with EINVAL.
The problem is, that when MAP_FIXED and MAP_SHARED flags were used, we didn't
included the mapping-based offset when we verified the alignment of the given
fixed address against the offset which we calculated it in the previous call.
Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/xen')
0 files changed, 0 insertions, 0 deletions