Merge tag 'driver-core-4.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
Pull driver core updates from Greg KH: "Here is the "small" driver core patches for 4.11-rc1. Not much here, some firmware documentation and self-test updates, a debugfs code formatting issue, and a new feature for call_usermodehelper to make it more robust on systems that want to lock it down in a more secure way. All of these have been linux-next for a while now with no reported issues" * tag 'driver-core-4.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: kernfs: handle null pointers while printing node name and path Introduce STATIC_USERMODEHELPER to mediate call_usermodehelper() Make static usermode helper binaries constant kmod: make usermodehelper path a const string firmware: revamp firmware documentation selftests: firmware: send expected errors to /dev/null selftests: firmware: only modprobe if driver is missing platform: Print the resource range if device failed to claim kref: prefer atomic_inc_not_zero to atomic_add_unless debugfs: improve formatting of debugfs_real_fops()
This commit is contained in:
@@ -5,9 +5,24 @@
|
||||
# know so we can be sure we're not accidentally testing the user helper.
|
||||
set -e
|
||||
|
||||
modprobe test_firmware
|
||||
|
||||
DIR=/sys/devices/virtual/misc/test_firmware
|
||||
TEST_DIR=$(dirname $0)
|
||||
|
||||
test_modprobe()
|
||||
{
|
||||
if [ ! -d $DIR ]; then
|
||||
echo "$0: $DIR not present"
|
||||
echo "You must have the following enabled in your kernel:"
|
||||
cat $TEST_DIR/config
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
trap "test_modprobe" EXIT
|
||||
|
||||
if [ ! -d $DIR ]; then
|
||||
modprobe test_firmware
|
||||
fi
|
||||
|
||||
# CONFIG_FW_LOADER_USER_HELPER has a sysfs class under /sys/class/firmware/
|
||||
# These days no one enables CONFIG_FW_LOADER_USER_HELPER so check for that
|
||||
@@ -48,18 +63,18 @@ echo "ABCD0123" >"$FW"
|
||||
|
||||
NAME=$(basename "$FW")
|
||||
|
||||
if printf '\000' >"$DIR"/trigger_request; then
|
||||
if printf '\000' >"$DIR"/trigger_request 2> /dev/null; then
|
||||
echo "$0: empty filename should not succeed" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if printf '\000' >"$DIR"/trigger_async_request; then
|
||||
if printf '\000' >"$DIR"/trigger_async_request 2> /dev/null; then
|
||||
echo "$0: empty filename should not succeed (async)" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Request a firmware that doesn't exist, it should fail.
|
||||
if echo -n "nope-$NAME" >"$DIR"/trigger_request; then
|
||||
if echo -n "nope-$NAME" >"$DIR"/trigger_request 2> /dev/null; then
|
||||
echo "$0: firmware shouldn't have loaded" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
Reference in New Issue
Block a user