Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 16 Jan 2011 16:31:17 -0500
From:      Andrew Gallatin <gallatin@cs.duke.edu>
To:        freebsd-emulation@freebsd.org
Subject:   epoll workaround for linux java?
Message-ID:  <4D3363A5.9000207@cs.duke.edu>

next in thread | raw e-mail | index | archive | help
Hi,

I'm trying to run SageTV, which is a commercial, closed source
linux media server on -current.  It is a Java based application
that uses "native" linux JNI libs for accessing video tuner
cards, so unfortunately I must run the Linux JVM, and not
a native JVM.

I've installed the default linux_base-f10, and the
linux-sun-jdk-1.6.0.22.

When I start the application, it semi-works, but the
clients cannot connect.  Using kdump && linux-ktrace,
I think I've narrowed the problem to:


   9613 java     CALL  linux_epoll_create
   9613 java     RET   linux_epoll_create -1 errno 78 Function not 
implemented
   9613 java     CALL  gettimeofday(0x513c9ea0,0)
   9613 java     RET   gettimeofday 0
   9613 java     CALL  gettimeofday(0x513c9eb4,0)
   9613 java     RET   gettimeofday 0
   9613 java     CALL  write(0x4,0x513c7cb0,0x78)
   9613 java     GIO   fd 4 wrote 120 bytes
        "Sun 1/16 12:05:57.648 [MiniUIServer@14b5f4a] MiniUI 
ServerSocket died from:java.io.IOException: Function not impleme\
         nted"


I've done some googling, and it appears that epoll support
was worked on as a SOC project in 2007 by rdivacky.  Eg:
http://p4db.freebsd.org/fileLogView.cgi?FSPC=//depot/projects/soc2007/rdivacky/linux_epoll/sys/compat/linux/linux_epoll.c
Were there problems with this code?

Last, is there any workaround to be able to use a linux
jvm?  Perhaps by using a different linux base?  What
would I be giving up?


Thanks!

Drew



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4D3363A5.9000207>