]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - tools/test/stress2/misc/linux.sh
wpa: Import wpa_supplicant/hostapd commit f91680c15
[FreeBSD/FreeBSD.git] / tools / test / stress2 / misc / linux.sh
1 #!/bin/sh
2
3 #
4 # SPDX-License-Identifier: BSD-2-Clause-FreeBSD
5 #
6 # Copyright (c) 2018 Dell EMC Isilon
7 #
8 # Redistribution and use in source and binary forms, with or without
9 # modification, are permitted provided that the following conditions
10 # are met:
11 # 1. Redistributions of source code must retain the above copyright
12 #    notice, this list of conditions and the following disclaimer.
13 # 2. Redistributions in binary form must reproduce the above copyright
14 #    notice, this list of conditions and the following disclaimer in the
15 #    documentation and/or other materials provided with the distribution.
16 #
17 # THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
18 # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20 # ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
21 # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22 # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23 # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24 # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26 # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27 # SUCH DAMAGE.
28 #
29
30 # Bug 230144 - Linux emulator does not work on Ryzen / Epic processors
31 # No problems seen.
32
33 [ -x /compat/linux/bin/date ] || exit 0
34 kldstat | grep -q linux.ko && exit 0
35
36 set -e
37 kldload linux.ko
38 mount -t linprocfs linprocfs /compat/linux/proc
39 mount -t linsysfs linsysfs /compat/linux/sys
40 mount -t tmpfs -o rw,mode=1777 tmpfs /compat/linux/dev/shm
41 [ `uname -m` = amd64 ] && kldload linux64.ko
42 set +e
43 [ -x /compat/linux/bin/bash ] &&
44     /compat/linux/bin/bash -c "/compat/linux/bin/date"
45
46 [ `uname -m` = amd64 ] && kldunload linux64.ko
47 umount /compat/linux/dev/shm
48 kldstat | grep -q tmpfs.ko && kldunload tmpfs.ko
49 umount /compat/linux/sys
50 kldunload linsysfs.ko
51 umount /compat/linux/proc
52 kldunload linprocfs.ko
53 kldunload linux.ko
54
55 exit 0