2020-11-09 13:23:58 +09:00
|
|
|
# SPDX-License-Identifier: LGPL-2.1-or-later
|
2020-01-07 14:33:29 +00:00
|
|
|
#
|
|
|
|
|
# This file is part of systemd.
|
|
|
|
|
#
|
|
|
|
|
# systemd is free software; you can redistribute it and/or modify it
|
|
|
|
|
# under the terms of the GNU Lesser General Public License as published by
|
|
|
|
|
# the Free Software Foundation; either version 2.1 of the License, or
|
|
|
|
|
# (at your option) any later version.
|
|
|
|
|
|
2025-01-23 14:47:03 +01:00
|
|
|
# This unit loads a specific kernel module explicitly and synchronizes on its
|
|
|
|
|
# initialization to be complete. This unit should only be used as dependency
|
|
|
|
|
# if automatic module loading cannot be used for a module, i.e. in exceptional
|
|
|
|
|
# cases. These cases may include:
|
|
|
|
|
#
|
|
|
|
|
# 1. The primary API exposed by the module is a device node that is normally
|
|
|
|
|
# managed by systemd-tmpfiles-setup-dev-early.service (and thus auto-loading
|
|
|
|
|
# is generally supported), but some service already needs the functionality
|
|
|
|
|
# during even earlier boot.
|
|
|
|
|
#
|
|
|
|
|
# 2. The primary API exposed by the module is some directory in /sys/, /proc/
|
|
|
|
|
# or configfs, where simple access generally is not sufficient to load the
|
|
|
|
|
# module.
|
|
|
|
|
|
2020-01-07 14:33:29 +00:00
|
|
|
[Unit]
|
2020-01-07 18:54:24 +01:00
|
|
|
Description=Load Kernel Module %i
|
|
|
|
|
DefaultDependencies=no
|
|
|
|
|
Before=sysinit.target
|
2020-01-07 14:33:29 +00:00
|
|
|
Documentation=man:modprobe(8)
|
2020-01-07 18:54:24 +01:00
|
|
|
ConditionCapability=CAP_SYS_MODULE
|
2024-11-28 13:00:34 +01:00
|
|
|
ConditionKernelModuleLoaded=!%i
|
2022-06-15 13:12:46 +02:00
|
|
|
StartLimitIntervalSec=0
|
2020-01-07 14:33:29 +00:00
|
|
|
|
|
|
|
|
[Service]
|
|
|
|
|
Type=oneshot
|
2023-10-20 16:25:15 +02:00
|
|
|
ExecStart=-/sbin/modprobe -abq %i
|