Page MenuHomeFreeBSD

D21874.id62826.diff
No OneTemporary

D21874.id62826.diff

Index: libexec/rc/rc.d/linux
===================================================================
--- libexec/rc/rc.d/linux
+++ libexec/rc/rc.d/linux
@@ -14,9 +14,9 @@
start_cmd="${name}_start"
stop_cmd=":"
-linux_start()
+abi_start()
{
- local _tmpdir
+ local _emul_path _tmpdir
load_kld -e 'linux(aout|elf)' linux
case `sysctl -n hw.machine_arch` in
@@ -32,6 +32,26 @@
fi
rm -rf ${_tmpdir}
fi
+
+ # Linux uses the pre-pts(4) tty naming scheme.
+ load_kld pty
+
+ # Handle unbranded ELF executables by defaulting to ELFOSABI_LINUX.
+ if [ `sysctl -ni kern.elf64.fallback_brand` -eq "-1" ]; then
+ sysctl kern.elf64.fallback_brand=3 > /dev/null
+ fi
+
+ if [ `sysctl -ni kern.elf32.fallback_brand` -eq "-1" ]; then
+ sysctl kern.elf32.fallback_brand=3 > /dev/null
+ fi
+
+ _emul_path="/compat/linux"
+ mount -o nocover -t linprocfs linprocfs "${_emul_path}/proc" 2> /dev/null
+ mount -o nocover -t linsysfs linsysfs "${_emul_path}/sys" 2> /dev/null
+ mount -o nocover -t devfs devfs "${_emul_path}/dev" 2> /dev/null
+ mount -o nocover -t fdescfs fdescfs "${_emul_path}/dev/fd" 2> /dev/null
+
+ echo
}
load_rc_config $name

File Metadata

Mime Type
text/plain
Expires
Fri, Jan 23, 10:35 PM (1 h, 45 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
27890245
Default Alt Text
D21874.id62826.diff (1 KB)

Event Timeline