Missing syscall linux_base-f10 on 8.0-R (amd64)
Paul Schenkeveld
fb-emulation at psconsult.nl
Wed Dec 2 22:31:22 UTC 2009
On Wed, Dec 02, 2009 at 01:19:10PM -0500, Jung-uk Kim wrote:
> On Wednesday 02 December 2009 11:58 am, Paul Schenkeveld wrote:
> > Hi,
> >
> > I'm trying to run an old linux executable on 8.0-R amd64 under
> > linux_base-f10. The app (we have no sources) fails when trying to
> > open a pipe to the lp command. With truss I see the following:
> >
> > 70291: read(0,"\n",4096) = 1 (0x1)
> > 70291:
> > linux_socketcall(0x9,0xffffb424,0x81b0150,0x81b0150,0x81a5ac8,0x6)
> > = 4 (0x4) 70291:
> > linux_socketcall(0xa,0xffffb400,0x81afc08,0x4,0x81a5c9c,0x6) = 12
> > (0xc) 70291: linux_access(0x8187fc8,0x4,0x8187fc8,0x6,0x0,0x6)
> > ERR#2 'No such file or directory' 70291:
> > linux_access(0x8187fc8,0x4,0x8187fc8,0x6,0x0,0x6) ERR#2 'No such
> > file or directory' 70291:
> > linux_access(0x8187fc8,0x4,0x8187fc8,0x6,0x0,0x6) ERR#2 'No such
> > file or directory' 70291:
> > linux_access(0x8187fc8,0x4,0x8187fc8,0xe,0xb,0x6) ERR#2 'No such
> > file or directory' 70291:
> > linux_access(0x8187fc8,0x4,0x8187fc8,0xe,0xffffae84,0x6) ERR#2 'No
> > such file or directory' 70291:
> > linux_access(0x8187fc8,0x4,0x8187fc8,0xe,0xffffae84,0x6) ERR#2 'No
> > such file or directory' 70291:
> > linux_access(0x8187fc8,0x4,0x8187fc8,0xe,0xffffae84,0x6) ERR#2 'No
> > such file or directory' 70291:
> > linux_access(0x8187fc8,0x4,0x8187fc8,0xe,0xb,0x6) ERR#2 'No such
> > file or directory' 70291:
> > linux_access(0x8187fc8,0x4,0x8187fc8,0xe,0xffffae84,0x6) ERR#2 'No
> > such file or directory' 70291:
> > linux_access(0x8187fc8,0x4,0x8187fc8,0xffffae84,0xe,0x6) = 0 (0x0)
> > 70291: linux_open("/some/file",0x0,00) = 6 (0x6)
> > 70291: read(6,"xxxxxx",6) = 6 (0x6)
> > 70291: read(6,0xffffafbc,13) = 0 (0x0)
> > 70291: close(6) = 0 (0x0)
> > -- UNKNOWN SYSCALL 331 --
> > 70291: write(2,"\n ",5) = 5 (0x5)
> >
> > Is this a system call missing in linux_base-f10 or in the kernel
> > part of the linux emulation? The app user to run on 6.2-R i386
> > with linux_base-fc-4. We are trying to move to 8.0-R amd64 to get
> > stable ZFS support.
>
> Linux syscall 331 is pipe2(2) and it was added in Linux 2.6.27 and
> glibc 2.9 according to the Linux manual page:
>
> http://www.kernel.org/doc/man-pages/online/pages/man2/pipe.2.html
>
> Linuxulator in kernel does not support it. You may try older
> linux_base instead.
I replaced linux_base-f10 by -fc4 and now our app works fine.
Thanks a lot for your help!
> Jung-uk Kim
Paul Schenkeveld
More information about the freebsd-emulation
mailing list