Date: Sat, 14 Feb 2004 09:40:25 -0500 (EST) From: Christopher Sean Hilton <chris@vindaloo.com> To: FreeBSD-gnats-submit@FreeBSD.org Subject: java/62837: linux-sun-jdk14 executables hang with COMPAT_LINUX in the the kernel. Message-ID: <200402141440.i1EEePGX003181@dagobah.pvt.vindaloo.com> Resent-Message-ID: <200402141450.i1EEoI3L060775@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 62837 >Category: java >Synopsis: linux-sun-jdk14 executables hang with COMPAT_LINUX in the the kernel. >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-java >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Sat Feb 14 06:50:18 PST 2004 >Closed-Date: >Last-Modified: >Originator: Christopher Sean Hilton >Release: FreeBSD 4.9-STABLE i386 >Organization: Vindaloo.Com >Environment: System: FreeBSD dagobah.pvt.vindaloo.com 4.9-STABLE FreeBSD 4.9-STABLE #1: Wed Jan 28 17:07:24 EST 2004 chris@hoth.pvt.vindaloo.com:/usr/obj/usr/src/sys/GATEWAY-M450 i386 FreeBSD 4.9 Stable, Custom kernel with COMPAT_LINUX Specified. Kernel config: # Kernel Configuration for GATEWAY-M450 Laptop machine i386 cpu I586_CPU cpu I686_CPU ident GATEWAY-M450 maxusers 0 options INET #InterNETworking options FFS #Berkeley Fast Filesystem options FFS_ROOT #FFS usable as root device [keep this!] options SOFTUPDATES #Enable FFS soft updates support options UFS_DIRHASH options NFS #Network Filesystem options MSDOSFS #MSDOS Filesystem options EXT2FS options CD9660 #ISO 9660 Filesystem options PROCFS #Process filesystem options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!] options SCSI_DELAY=5000 #Delay (in ms) before probing SCSI options UCONSOLE #Allow users to grab the console options USERCONFIG #boot -c editor options VISUAL_USERCONFIG #visual boot -c editor options KTRACE #ktrace(1) support options SYSVSHM #SYSV-style shared memory options SYSVMSG #SYSV-style message queues options SYSVSEM #SYSV-style semaphores options ICMP_BANDLIM #Rate limit bad replies options KBD_INSTALL_CDEV # install a CDEV entry in /dev options COMPAT_LINUX options USER_LDT options IPSEC options IPSEC_ESP options DDB options DDB_UNATTENDED options GDB_REMOTE_CHAT device isa device eisa device pci device apm0 # ATA and ATAPI devices device ata0 device ata1 device ata device atadisk # ATA disk drives device atapicd # ATAPI CDROM drives device atapifd # ATAPI floppy drives device atapist # ATAPI tape drives # SCSI peripherals device scbus # SCSI bus (required) device da # Direct Access (disks) device sa # Sequential Access (tape etc) device cd # CD device pass # Passthrough device (direct SCSI access) # atkbdc0 controls both the keyboard and the PS/2 mouse device atkbdc0 at isa? port IO_KBD device atkbd0 at atkbdc? irq 1 flags 0x1 device psm0 at atkbdc? irq 12 flags 0x6100 # syscons is the default console driver, resembling an SCO console device vga0 at isa? device sc0 at isa? flags 0x100 pseudo-device splash options VESA options SC_PIXEL_MODE # Floating point support - do not disable. device npx0 at nexus? port IO_NPX irq 13 # PCCARD (PCMCIA) support device card device pcic0 at isa? irq 10 port 0x3e0 iomem 0xd0000 # Server Management Bus Supported interfaces: device smbus device intpm # Intel PIIX4 Power Management Unit device iicbus # Bus support, required for ic/iic/iicsmb below. device iicbb device ic device iic device iicsmb # smb over i2c bridge # Serial ports device sio0 at isa? port IO_COM1 flags 0x10 irq 4 device sio1 at isa? disable port IO_COM2 irq 3 # Parallel port device ppc0 at isa? irq 7 device ppbus # Parallel port bus (required) device lpt # Printer device plip # TCP/IP over parallel device ppi # Parallel port interface device device vpo # Requires scbus and da device miibus # MII bus support device em device wi device pcm # Pseudo devices - the number indicates how many units to allocated. pseudo-device loop # Network loopback pseudo-device ether # Ethernet support pseudo-device ppp 2 # Kernel PPP pseudo-device tun # Packet tunnel. pseudo-device pty # Pseudo-ttys (telnet etc) # The `bpf' pseudo-device enables the Berkeley Packet Filter. # Be aware of the administrative consequences of enabling this! pseudo-device bpf 4 #Berkeley packet filter # USB support device uhci # UHCI PCI->USB interface device ohci # OHCI PCI->USB interface device usb # USB Bus (required) device ugen # Generic device uhid # "Human Interface Devices" device ukbd # Keyboard device ulpt # Printer device umass # Disks/Mass storage - Requires scbus and da device ums # Mouse device uvisor # Visor USB PDA device ucom # More Visor # USB Ethernet, requires mii device aue # ADMtek USB ethernet device cue # CATC USB ethernet device kue # Kawasaki LSI USB ethernet >Description: On systems with a custom kernel with COMPAT_LINUX compiled in and linprocfs loaded as a module the Linux Sun jdk executables hang and need to be killed with kill -9. >How-To-Repeat: Compile a 4.9 Stable kernel with COMPAT_LINUX. Load linprocfs with with kldload. Add linux-sun-jdk from the ports collection. Run the Linux Java compiler. $ kldstat Id Refs Address Size Name 1 3 0xc0100000 3359b4 kernel 2 1 0xc2346000 7000 linprocfs.ko 3 1 0xc23c3000 2000 green_saver.ko $ uname -a FreeBSD dagobah.pvt.vindaloo.com 4.9-STABLE FreeBSD 4.9-STABLE #1: Wed Jan 28 17:07:24 EST 2004 chris@hoth.pvt.vindaloo.com:/usr/obj/usr/src/sys/GATEWAY-M450 i386 $ kldstat Id Refs Address Size Name 1 3 0xc0100000 3359b4 kernel 2 1 0xc2346000 7000 linprocfs.ko 3 1 0xc23c3000 2000 green_saver.ko $ pkg_info -aI | grep linux-sun linux-sun-jdk-1.4.2.02 Sun Java Development Kit 1.4 for Linux >Fix: Using the GENERIC kernel and loading both the linux compatibility and the linprocfs works around this problem. I assume that loading linux from the module is the fix. I will test this this afternoon and post a follow-up. -- Chris >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200402141440.i1EEePGX003181>