[PATCH] RFC: clean up mmap decoding
Dmitry V. Levin
ldv at altlinux.org
Wed Feb 20 23:08:16 UTC 2013
On Mon, Feb 18, 2013 at 09:27:19PM +0100, Denys Vlasenko wrote:
> mmap handling is a mess. We try to merge too many similar,
> but different ways of decoding it. For example, sys_old_mmap
> is "params in memory" API... except SH[64], where it is
> "params in regs", i.e. what *sys_mmap* ("new mmap")
> does on other arches!
>
> It's much simpler when mmap handlers are cleanly split
> by API (whether params are in regs or in memory,
> and whether offset is byte or page).
>
> Then we just insert correct function pointers into
> arch syscall tables.
>
> It turns out there are only three common mmap APIs over
> all architectures which exist in Linux kernel,
> and two outliers (for SH and S390).
>
> A number of mmap decoders were plain wrong in arch tables.
> For example, BFIN has no old_mmap. It returns ENOSYS.
> I checked kernel sources.
>
> There was dead code for x86_64 for old_mmap:
> x86_64 has no old_mmap.
>
> I will polish this change a bit more, but it is largely complete.
> However, it is not that simple. Dmitry, can you look over this patch?
From a glance it looks good, but I haven't got enough time this week to
have a good look at the patch. As you've already merged it, I suppose it
won't harm if I do it a bit later.
--
ldv
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://lists.strace.io/pipermail/strace-devel/attachments/20130221/aca93edc/attachment.bin>
More information about the Strace-devel
mailing list