Current-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
COMPAT_40 broken in current amd64 kernel?
I've got this one old, statically-linked image that works just fine on a
5.99.24 -current kernel built on Jan 21st
{129} file ~/dnetc/dnetc.x86_64
/home/paul/dnetc/dnetc.x86_64: ELF 64-bit LSB executable, x86-64,
version 1 (SYSV), statically linked, for NetBSD 4.0, stripped
{130}
However, on a kernel built today, it gives me a core dump due to a "bad
system call". The backtrace shows that this is the code leading up to
the bad syscall:
(gdb) x/10i 0x47a598
0x47a598: jmpq 0x490ba0
0x47a59d: data16
0x47a59e: data16
0x47a59f: nop
0x47a5a0: mov $0x74,%eax
0x47a5a5: mov %rcx,%r10
0x47a5a8: syscall
0x47a5aa: jb 0x47a598
0x47a5ac: retq
0x47a5ad: nop
(gdb)
Both kernels are custom kernels, both build from the identical config
file, and both containing COMPAT_40 built-in (ie, NOT is a loadable
module).
{130} grep COMPAT_ src/sys/arch/amd64/conf/COMMON
options COMPAT_40
options COMPAT_50
options COMPAT_BSDPTY # /dev/[pt]ty?? ptys.
options WSDISPLAY_COMPAT_PCVT # emulate some ioctls
options WSDISPLAY_COMPAT_SYSCONS # emulate some ioctls
options WSDISPLAY_COMPAT_USL # VT handling
options WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes
{131}
Any clue as to what broke this?
-------------------------------------------------------------------------
| Paul Goyette | PGP DSS Key fingerprint: | E-mail addresses: |
| Customer Service | FA29 0E3B 35AF E8AE 6651 | paul at whooppee.com |
| Network Engineer | 0786 F758 55DE 53BA 7731 | pgoyette at juniper.net |
| Kernel Developer | | pgoyette at netbsd.org |
-------------------------------------------------------------------------
Home |
Main Index |
Thread Index |
Old Index