summaryrefslogtreecommitdiff
path: root/system/openrc/modules.initd
blob: d90a3e687a208595d704a7ce13187f10fc1e8cbe (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#!/sbin/openrc-run

description="Loads a user defined list of kernel modules."

depend()
{
	before hwclock hwdrivers
	keyword -openvz -prefix -vserver -lxc
}

start() {
	ebegin "Loading modules"
	for f in /etc/modules \
			/etc/modules-load.d/*.conf \
			/run/modules-load.d/*.conf \
			/usr/lib/modules-load.d/*.conf \
			/lib/modules-load.d/*.conf; do
		if ! [ -f "$f" ]; then
			continue
		fi

		sed -e 's/\#.*//g' -e '/^[[:space:]]*$/d' < "$f" \
			| while read module args; do
			modprobe -q $module $args
		done
	done
	eend $?
}