Linux emulation on FreeBSD AMD64

Roman Divacky rdivacky at freebsd.org
Sun Oct 28 11:43:27 PDT 2007


On Sun, Oct 28, 2007 at 08:49:00PM +0200, Valery V.Chikalov wrote:
> Valery V.Chikalov wrote:
> >Roman Divacky wrote:
> >>>
> >>>and got something like:
> >>>
> >>>Oct 27 19:42:59 tiger kernel: mprotect addr:2a27d000, return 0
> >>>Oct 27 19:42:59 tiger kernel: mprotect addr:2a7c1000, return 0
> >>>Oct 27 19:42:59 tiger kernel: mprotect addr:2a7cd000, return 0
> >>>Oct 27 19:42:59 tiger kernel: mprotect addr:2a7e2000, return 0
> >>>Oct 27 19:42:59 tiger kernel: mprotect addr:2a7ef000, return 0
> >>>Oct 27 19:43:09 tiger kernel: mprotect addr:55c00000, return 13
> >>>Oct 27 19:43:09 tiger kernel: mprotect addr:55c81000, return 13
> >>>
> >>>where 13 is EACCES.
> >>
> >>can you show what are the "prot" and "len" arguments?

Index: linux_machdep.c
===================================================================
RCS file: /home/ncvs/src/sys/i386/linux/linux_machdep.c,v
retrieving revision 1.78
diff -u -r1.78 linux_machdep.c
--- linux_machdep.c     20 Jul 2007 08:35:18 -0000      1.78
+++ linux_machdep.c     28 Oct 2007 18:42:15 -0000
@@ -803,8 +803,10 @@
        bsd_args.addr = uap->addr;
        bsd_args.len = uap->len;
        bsd_args.prot = uap->prot;
+#if 0
        if (bsd_args.prot & (PROT_READ | PROT_WRITE | PROT_EXEC))
                bsd_args.prot |= PROT_READ | PROT_EXEC;
+#endif
        return (mprotect(td, &bsd_args));
 }


does this help?


More information about the freebsd-emulation mailing list