linux/drivers/watchdog
David Howells 5d1c93ce21 Annotate hardware config module parameters in drivers/watchdog/
When the kernel is running in secure boot mode, we lock down the kernel to
prevent userspace from modifying the running kernel image.  Whilst this
includes prohibiting access to things like /dev/mem, it must also prevent
access by means of configuring driver modules in such a way as to cause a
device to access or modify the kernel image.

To this end, annotate module_param* statements that refer to hardware
configuration and indicate for future reference what type of parameter they
specify.  The parameter parser in the core sees this information and can
skip such parameters with an error message if the kernel is locked down.
The module initialisation then runs as normal, but just sees whatever the
default values for those parameters is.

Note that we do still need to do the module initialisation because some
drivers have viable defaults set in case parameters aren't specified and
some drivers support automatic configuration (e.g. PNP or PCI) in addition
to manually coded parameters.

This patch annotates drivers in drivers/watchdog/.

Suggested-by: Alan Cox <gnomes@lxorguk.ukuu.org.uk>
Signed-off-by: David Howells <dhowells@redhat.com>
Reviewed-by: Guenter Roeck <linux@roeck-us.net>
cc: Wim Van Sebroeck <wim@iguana.be>
cc: Zwane Mwaikambo <zwanem@gmail.com>
cc: linux-watchdog@vger.kernel.org
2017-04-20 12:02:32 +01:00
..
acquirewdt.c
advantechwdt.c
alim1535_wdt.c
alim7101_wdt.c
ar7_wdt.c
asm9260_wdt.c watchdog: constify watchdog_ops structures 2017-02-24 14:00:23 -08:00
aspeed_wdt.c watchdog: aspeed_wdt: Convert to use device managed functions 2017-02-24 14:00:23 -08:00
at32ap700x_wdt.c
at91rm9200_wdt.c
at91sam9_wdt.c
at91sam9_wdt.h
ath79_wdt.c mips: separate extable.h, switch module.h to it 2016-10-05 18:36:18 -04:00
atlas7_wdt.c watchdog: constify watchdog_ops structures 2017-02-24 14:00:23 -08:00
bcm47xx_wdt.c watchdog: bcm47xx_wdt: Don't validate platform data on remove 2017-02-24 14:00:23 -08:00
bcm63xx_wdt.c
bcm2835_wdt.c scripts/spelling.txt: add "partiton" pattern and fix typo instances 2017-02-27 18:43:46 -08:00
bcm7038_wdt.c watchdog: constify watchdog_info structures 2017-02-24 14:00:23 -08:00
bcm_kona_wdt.c watchdog: constify watchdog_ops structures 2017-02-24 14:00:23 -08:00
bfin_wdt.c
booke_wdt.c watchdog: constify watchdog_ops structures 2017-02-24 14:00:23 -08:00
cadence_wdt.c watchdog: constify watchdog_info structures 2017-02-24 14:00:23 -08:00
coh901327_wdt.c watchdog: coh901327_wdt: Use dev variable instead of pdev->dev 2017-02-24 14:00:23 -08:00
cpu5wdt.c Annotate hardware config module parameters in drivers/watchdog/ 2017-04-20 12:02:32 +01:00
cpwd.c watchdog: cpwd: remove memory allocate failure message 2016-12-16 06:53:55 -08:00
da9052_wdt.c watchdog: da9052_wdt: Convert to use device managed functions 2017-02-24 14:00:23 -08:00
da9055_wdt.c watchdog: da9055_wdt: Convert to use device managed functions 2017-02-24 14:00:23 -08:00
da9062_wdt.c watchdog: da9062_wdt: Convert to use device managed functions 2017-02-24 14:00:23 -08:00
da9063_wdt.c watchdog: da9063_wdt: Convert to use device managed functions 2017-02-24 14:00:23 -08:00
davinci_wdt.c watchdog: davinci: add support for deferred probing 2016-12-16 06:53:53 -08:00
diag288_wdt.c watchdog: constify watchdog_ops structures 2017-02-24 14:00:23 -08:00
digicolor_wdt.c watchdog: constify watchdog_ops structures 2017-02-24 14:00:23 -08:00
dw_wdt.c watchdog: dw_wdt: Use watchdog core to install restart handler 2017-02-24 14:00:23 -08:00
ebc-c384_wdt.c watchdog: ebc-c384_wdt: Utilize devm_ functions in driver probe callback 2017-02-24 14:00:23 -08:00
ep93xx_wdt.c watchdog: ep93xx_wdt: cleanup and let the core handle the heartbeat 2017-02-24 14:00:23 -08:00
eurotechwdt.c Annotate hardware config module parameters in drivers/watchdog/ 2017-04-20 12:02:32 +01:00
f71808e_wdt.c watchdog: f71808e_wdt: Add F81866 support 2016-07-17 21:00:55 +02:00
gef_wdt.c
gemini_wdt.c watchdog: add driver for Cortina Gemini watchdog 2017-02-24 14:00:23 -08:00
geodewdt.c
gpio_wdt.c watchdog: gpio_wdt: Fix missing platform_set_drvdata() in gpio_wdt_probe() 2016-07-27 10:47:43 +02:00
hpwdt.c watchdog: hpwdt: add support for iLO5 2016-10-03 08:37:41 +02:00
i6300esb.c
ib700wdt.c
ibmasr.c
ie6xx_wdt.c
imgpdc_wdt.c watchdog: constify watchdog_info structures 2017-02-24 14:00:23 -08:00
imx2_wdt.c watchdog: imx2_wdt: add pretimeout function support 2016-10-08 10:27:30 +02:00
indydog.c
intel_scu_watchdog.c
intel_scu_watchdog.h
intel-mid_wdt.c watchdog: intel-mid_wdt: Convert to use device managed functions 2017-02-24 14:00:23 -08:00
iop_wdt.c
it87_wdt.c watchdog: it87_wdt: add IT8620E ID 2016-12-16 06:53:56 -08:00
it8712f_wdt.c
iTCO_vendor_support.c
iTCO_vendor.h
iTCO_wdt.c watchdog: iTCO_wdt: Replace shutdown function with call to watchdog_stop_on_reboot 2017-02-24 14:00:23 -08:00
ixp4xx_wdt.c
jz4740_wdt.c watchdog: jz4740: Fix modular build 2016-12-16 06:53:54 -08:00
Kconfig watchdog: retu: restore MFD dependency 2017-03-01 06:15:10 -08:00
kempld_wdt.c watchdog: kempld: fix gcc-4.3 build 2017-03-01 06:15:10 -08:00
ks8695_wdt.c
lantiq_wdt.c watchdog: update my email address 2017-02-24 14:00:23 -08:00
loongson1_wdt.c watchdog: loongson1: Add Loongson1 SoC watchdog driver 2016-12-16 06:53:55 -08:00
lpc18xx_wdt.c watchdog: constify watchdog_info structures 2017-02-24 14:00:23 -08:00
m54xx_wdt.c
machzwd.c
Makefile watchdog: zx2967: add watchdog controller driver for ZTE's zx2967 family 2017-02-24 14:00:23 -08:00
max63xx_wdt.c watchdog: max63xx: make module's license marker match the header 2016-01-31 16:51:56 +01:00
max77620_wdt.c watchdog: max77620_wdt: fix module autoload 2016-12-16 06:53:53 -08:00
mei_wdt.c Watchdog updates for v4.10 2016-12-24 11:27:45 -08:00
mena21_wdt.c watchdog: mena21_wdt: Convert to use device managed functions and other improvements 2017-02-24 14:00:23 -08:00
menf21bmc_wdt.c
meson_gxbb_wdt.c watchdog: meson: Remove unneeded platform MODULE_ALIAS 2016-12-16 06:53:53 -08:00
meson_wdt.c watchdog: meson_wdt: Convert to use device managed functions and other improvements 2017-02-24 14:00:23 -08:00
mixcomwd.c
moxart_wdt.c watchdog: Add 'action' and 'data' parameters to restart handler callback 2016-03-01 15:36:35 +01:00
mpc8xxx_wdt.c watchdog: mpc8xxx: Remove unneeded linux/miscdevice.h include 2016-12-16 06:53:55 -08:00
mt7621_wdt.c watchdog: constify watchdog_ops structures 2017-02-24 14:00:23 -08:00
mtk_wdt.c watchdog: Add 'action' and 'data' parameters to restart handler callback 2016-03-01 15:36:35 +01:00
mtx-1_wdt.c
mv64x60_wdt.c
ni903x_wdt.c watchdog: ni903x_wdt: Add NI 903x/913x watchdog driver 2016-03-01 16:25:39 +01:00
nic7018_wdt.c watchdog: nic7018_wdt: Add NIC7018 watchdog driver 2017-02-24 14:00:23 -08:00
nuc900_wdt.c
nv_tco.c watchdog: add support for MCP78S chipset in nv_tco 2016-07-17 21:04:13 +02:00
nv_tco.h
octeon-wdt-main.c Watchdog updates for v4.10 2016-12-24 11:27:45 -08:00
octeon-wdt-nmi.S
of_xilinx_wdt.c watchdog: xilinx: Add clock support 2016-09-23 22:04:09 +02:00
omap_wdt.c
omap_wdt.h
orion_wdt.c watchdog: orion: fix spelling mistake: "harcoded" -> "hardcoded" 2017-02-24 14:00:23 -08:00
pc87413_wdt.c Annotate hardware config module parameters in drivers/watchdog/ 2017-04-20 12:02:32 +01:00
pcwd_pci.c
pcwd_usb.c watchdog: pcwd_usb: don't print error when allocating urb fails 2016-09-23 08:43:06 +02:00
pcwd.c watchdog: pcwd: Utilize the module_isa_driver macro 2016-07-17 20:59:23 +02:00
pic32-dmt.c watchdog: pic32-dmt: Remove .owner field for driver 2016-07-25 12:02:32 +02:00
pic32-wdt.c watchdog: pic32-wdt: Fix return value check in pic32_wdt_drv_probe() 2016-07-25 12:02:43 +02:00
pika_wdt.c watchdog: pika_wdt: add __ro_after_init to ident 2017-02-24 14:00:23 -08:00
pnx833x_wdt.c
pnx4008_wdt.c watchdog: pnx4008: restart: support "cmd" from userspace 2016-03-16 21:09:42 +01:00
pretimeout_noop.c watchdog: pretimeout: add noop pretimeout governor 2016-10-08 10:27:13 +02:00
pretimeout_panic.c watchdog: pretimeout: add panic pretimeout governor 2016-10-08 10:27:17 +02:00
qcom-wdt.c watchdog: qcom: fix kernel panic due to external abort on non-linefetch 2016-12-16 06:53:54 -08:00
rc32434_wdt.c watchdog: rc32434_wdt: fix ioctl error handling 2016-03-01 15:29:42 +01:00
rdc321x_wdt.c
renesas_wdt.c watchdog: renesas-wdt: add driver 2016-05-14 18:15:40 +02:00
retu_wdt.c
riowd.c
rn5t618_wdt.c watchdog: constify watchdog_info structures 2017-02-24 14:00:23 -08:00
rt2880_wdt.c watchdog: constify watchdog_ops structures 2017-02-24 14:00:23 -08:00
s3c2410_wdt.c watchdog: s3c2410: Add prefix to local function 2017-02-24 14:00:23 -08:00
sa1100_wdt.c watchdog: sa11x0/pxa: fix error path of driver initialization 2017-02-24 14:00:23 -08:00
sama5d4_wdt.c watchdog: sama5d4: Implement resume hook 2017-02-24 14:00:23 -08:00
sb_wdog.c
sbc60xxwdt.c
sbc7240_wdt.c
sbc8360.c
sbc_epx_c3.c
sbc_fitpc2_wdt.c
sbsa_gwdt.c watchdog: constify watchdog_ops structures 2017-02-24 14:00:23 -08:00
sc520_wdt.c
sc1200wdt.c Annotate hardware config module parameters in drivers/watchdog/ 2017-04-20 12:02:32 +01:00
sch311x_wdt.c
scx200_wdt.c
shwdt.c watchdog: shwdt: Use setup_timer() 2016-05-14 18:25:56 +02:00
sirfsoc_wdt.c watchdog: constify watchdog_ops structures 2017-02-24 14:00:23 -08:00
smsc37b787_wdt.c
softdog.c watchdog: softdog: fire watchdog even if softirqs do not get to run 2017-03-01 06:15:10 -08:00
sp805_wdt.c watchdog: sp805: ping fails to abort wdt reset 2016-01-31 16:52:08 +01:00
sp5100_tco.c watchdog: sp5100_tco: properly check for new register layouts 2016-05-14 16:16:04 +02:00
sp5100_tco.h
st_lpc_wdt.c watchdog: st_wdt: Remove support for obsolete platforms 2016-09-24 08:59:49 +02:00
stmp3xxx_rtc_wdt.c
sun4v_wdt.c watchdog: constify watchdog_ops structures 2017-02-24 14:00:23 -08:00
sunxi_wdt.c watchdog: sunxi_wdt: Convert to use device managed functions and other improvements 2017-02-24 14:00:23 -08:00
tangox_wdt.c watchdog: tangox: Use watchdog core to install restart handler 2017-02-24 14:00:23 -08:00
tegra_wdt.c watchdog: tegra_wdt: Convert to use device managed functions 2017-02-24 14:00:23 -08:00
ts72xx_wdt.c watchdog: ts72xx_wdt: convert driver to watchdog core 2017-02-24 14:00:23 -08:00
ts4800_wdt.c
twl4030_wdt.c
txx9wdt.c watchdog: txx9wdt: Add missing clock (un)prepare calls for CCF 2016-09-23 22:36:32 +02:00
ux500_wdt.c
via_wdt.c
w83627hf_wdt.c watchdog: constify watchdog_info structures 2017-02-24 14:00:23 -08:00
w83877f_wdt.c
w83977f_wdt.c
wafer5823wdt.c
watchdog_core.c watchdog: core: Fix devres_alloc() allocation size 2016-09-23 08:37:14 +02:00
watchdog_core.h
watchdog_dev.c watchdog: Introduce watchdog_stop_on_unregister helper 2017-02-24 14:00:23 -08:00
watchdog_pretimeout.c watchdog: pretimeout: add pretimeout_available_governors attribute 2016-10-08 10:27:24 +02:00
watchdog_pretimeout.h watchdog: pretimeout: add pretimeout_available_governors attribute 2016-10-08 10:27:24 +02:00
wd501p.h
wdat_wdt.c watchdog: wdat_wdt: Ping the watchdog on resume 2016-10-21 01:28:33 +02:00
wdrtas.c
wdt285.c
wdt977.c
wdt_pci.c
wdt.c Annotate hardware config module parameters in drivers/watchdog/ 2017-04-20 12:02:32 +01:00
wm831x_wdt.c watchdog: wm831x_wdt: Convert to use device managed functions 2017-02-24 14:00:23 -08:00
wm8350_wdt.c
xen_wdt.c
ziirave_wdt.c watchdog: ziirave_wdt: Add support to upload the firmware. 2016-09-23 22:34:24 +02:00
zx2967_wdt.c watchdog: zx2967: add watchdog controller driver for ZTE's zx2967 family 2017-02-24 14:00:23 -08:00