From eec4852543e4e6edbb6cab512fd1edc70c1f7a18 Mon Sep 17 00:00:00 2001 From: Ross Zwisler Date: Tue, 11 Oct 2016 13:51:21 -0700 Subject: radix-tree tests: add iteration test There are four cases I can see where we could end up with a NULL 'slot' in radix_tree_next_slot(). This unit test exercises all four of them, making sure that if in the future we have an unsafe path through radix_tree_next_slot(), we'll catch it. Here are details on the four cases: 1) radix_tree_iter_retry() via a non-tagged iteration like radix_tree_for_each_slot(). In this case we currently aren't seeing a bug because radix_tree_iter_retry() sets iter->next_index = iter->index; which means that in in the else case in radix_tree_next_slot(), 'count' is zero, so we skip over the while() loop and effectively just return NULL without ever dereferencing 'slot'. 2) radix_tree_iter_retry() via tagged iteration like radix_tree_for_each_tagged(). This case was giving us NULL pointer dereferences in testing, and was fixed with this commit: commit 3cb9185c6730 ("radix-tree: fix radix_tree_iter_retry() for tagged iterators.") This fix doesn't explicitly check for 'slot' being NULL, though, it works around the NULL pointer dereference by instead zeroing iter->tags in radix_tree_iter_retry(), which makes us bail out of the if() case in radix_tree_next_slot() before we dereference 'slot'. 3) radix_tree_iter_next() via via a non-tagged iteration like radix_tree_for_each_slot(). This currently happens in shmem_tag_pins() and shmem_partial_swap_usage(). As with non-tagged iteration, 'count' in the else case of radix_tree_next_slot() is zero, so we skip over the while() loop and effectively just return NULL without ever dereferencing 'slot'. 4) radix_tree_iter_next() via tagged iteration like radix_tree_for_each_tagged(). This happens in shmem_wait_for_pins(). radix_tree_iter_next() zeros out iter->tags, so we end up exiting radix_tree_next_slot() here: if (flags & RADIX_TREE_ITER_TAGGED) { void *canon = slot; iter->tags >>= 1; if (unlikely(!iter->tags)) return NULL; Link: http://lkml.kernel.org/r/20160815194237.25967-3-ross.zwisler@linux.intel.com Signed-off-by: Ross Zwisler Cc: Konstantin Khlebnikov Cc: Andrey Ryabinin Cc: Dmitry Vyukov Cc: Shuah Khan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- tools/testing/radix-tree/Makefile | 3 +- tools/testing/radix-tree/iteration_check.c | 180 +++++++++++++++++++++++++++++ tools/testing/radix-tree/main.c | 1 + tools/testing/radix-tree/test.h | 1 + 4 files changed, 184 insertions(+), 1 deletion(-) create mode 100644 tools/testing/radix-tree/iteration_check.c (limited to 'tools') diff --git a/tools/testing/radix-tree/Makefile b/tools/testing/radix-tree/Makefile index 9d0919ed52a4..f2e07f2fd4b4 100644 --- a/tools/testing/radix-tree/Makefile +++ b/tools/testing/radix-tree/Makefile @@ -3,7 +3,8 @@ CFLAGS += -I. -g -O2 -Wall -D_LGPL_SOURCE LDFLAGS += -lpthread -lurcu TARGETS = main OFILES = main.o radix-tree.o linux.o test.o tag_check.o find_next_bit.o \ - regression1.o regression2.o regression3.o multiorder.o + regression1.o regression2.o regression3.o multiorder.o \ + iteration_check.o targets: $(TARGETS) diff --git a/tools/testing/radix-tree/iteration_check.c b/tools/testing/radix-tree/iteration_check.c new file mode 100644 index 000000000000..9adb8e7415a6 --- /dev/null +++ b/tools/testing/radix-tree/iteration_check.c @@ -0,0 +1,180 @@ +/* + * iteration_check.c: test races having to do with radix tree iteration + * Copyright (c) 2016 Intel Corporation + * Author: Ross Zwisler + * + * This program is free software; you can redistribute it and/or modify it + * under the terms and conditions of the GNU General Public License, + * version 2, as published by the Free Software Foundation. + * + * This program is distributed in the hope it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + */ +#include +#include +#include "test.h" + +#define NUM_THREADS 4 +#define TAG 0 +static pthread_mutex_t tree_lock = PTHREAD_MUTEX_INITIALIZER; +static pthread_t threads[NUM_THREADS]; +RADIX_TREE(tree, GFP_KERNEL); +bool test_complete; + +/* relentlessly fill the tree with tagged entries */ +static void *add_entries_fn(void *arg) +{ + int pgoff; + + while (!test_complete) { + for (pgoff = 0; pgoff < 100; pgoff++) { + pthread_mutex_lock(&tree_lock); + if (item_insert(&tree, pgoff) == 0) + item_tag_set(&tree, pgoff, TAG); + pthread_mutex_unlock(&tree_lock); + } + } + + return NULL; +} + +/* + * Iterate over the tagged entries, doing a radix_tree_iter_retry() as we find + * things that have been removed and randomly resetting our iteration to the + * next chunk with radix_tree_iter_next(). Both radix_tree_iter_retry() and + * radix_tree_iter_next() cause radix_tree_next_slot() to be called with a + * NULL 'slot' variable. + */ +static void *tagged_iteration_fn(void *arg) +{ + struct radix_tree_iter iter; + void **slot; + + while (!test_complete) { + rcu_read_lock(); + radix_tree_for_each_tagged(slot, &tree, &iter, 0, TAG) { + void *entry; + int i; + + /* busy wait to let removals happen */ + for (i = 0; i < 1000000; i++) + ; + + entry = radix_tree_deref_slot(slot); + if (unlikely(!entry)) + continue; + + if (radix_tree_deref_retry(entry)) { + slot = radix_tree_iter_retry(&iter); + continue; + } + + if (rand() % 50 == 0) + slot = radix_tree_iter_next(&iter); + } + rcu_read_unlock(); + } + + return NULL; +} + +/* + * Iterate over the entries, doing a radix_tree_iter_retry() as we find things + * that have been removed and randomly resetting our iteration to the next + * chunk with radix_tree_iter_next(). Both radix_tree_iter_retry() and + * radix_tree_iter_next() cause radix_tree_next_slot() to be called with a + * NULL 'slot' variable. + */ +static void *untagged_iteration_fn(void *arg) +{ + struct radix_tree_iter iter; + void **slot; + + while (!test_complete) { + rcu_read_lock(); + radix_tree_for_each_slot(slot, &tree, &iter, 0) { + void *entry; + int i; + + /* busy wait to let removals happen */ + for (i = 0; i < 1000000; i++) + ; + + entry = radix_tree_deref_slot(slot); + if (unlikely(!entry)) + continue; + + if (radix_tree_deref_retry(entry)) { + slot = radix_tree_iter_retry(&iter); + continue; + } + + if (rand() % 50 == 0) + slot = radix_tree_iter_next(&iter); + } + rcu_read_unlock(); + } + + return NULL; +} + +/* + * Randomly remove entries to help induce radix_tree_iter_retry() calls in the + * two iteration functions. + */ +static void *remove_entries_fn(void *arg) +{ + while (!test_complete) { + int pgoff; + + pgoff = rand() % 100; + + pthread_mutex_lock(&tree_lock); + item_delete(&tree, pgoff); + pthread_mutex_unlock(&tree_lock); + } + + return NULL; +} + +/* This is a unit test for a bug found by the syzkaller tester */ +void iteration_test(void) +{ + int i; + + printf("Running iteration tests for 10 seconds\n"); + + srand(time(0)); + test_complete = false; + + if (pthread_create(&threads[0], NULL, tagged_iteration_fn, NULL)) { + perror("pthread_create"); + exit(1); + } + if (pthread_create(&threads[1], NULL, untagged_iteration_fn, NULL)) { + perror("pthread_create"); + exit(1); + } + if (pthread_create(&threads[2], NULL, add_entries_fn, NULL)) { + perror("pthread_create"); + exit(1); + } + if (pthread_create(&threads[3], NULL, remove_entries_fn, NULL)) { + perror("pthread_create"); + exit(1); + } + + sleep(10); + test_complete = true; + + for (i = 0; i < NUM_THREADS; i++) { + if (pthread_join(threads[i], NULL)) { + perror("pthread_join"); + exit(1); + } + } + + item_kill_tree(&tree); +} diff --git a/tools/testing/radix-tree/main.c b/tools/testing/radix-tree/main.c index b7619ff3b552..daa9010693e8 100644 --- a/tools/testing/radix-tree/main.c +++ b/tools/testing/radix-tree/main.c @@ -332,6 +332,7 @@ int main(int argc, char **argv) regression1_test(); regression2_test(); regression3_test(); + iteration_test(); single_thread_tests(long_run); sleep(1); diff --git a/tools/testing/radix-tree/test.h b/tools/testing/radix-tree/test.h index e85131369723..217fb2403f09 100644 --- a/tools/testing/radix-tree/test.h +++ b/tools/testing/radix-tree/test.h @@ -27,6 +27,7 @@ void item_kill_tree(struct radix_tree_root *root); void tag_check(void); void multiorder_checks(void); +void iteration_test(void); struct item * item_tag_set(struct radix_tree_root *root, unsigned long index, int tag); -- cgit v1.2.3 From e0176a2f1e131294824d0e50e719cd12290cf06c Mon Sep 17 00:00:00 2001 From: Ross Zwisler Date: Tue, 11 Oct 2016 13:51:24 -0700 Subject: radix-tree tests: properly initialize mutex The pthread_mutex_t in regression1.c wasn't being initialized properly. Link: http://lkml.kernel.org/r/20160815194237.25967-4-ross.zwisler@linux.intel.com Signed-off-by: Ross Zwisler Cc: Konstantin Khlebnikov Cc: Andrey Ryabinin Cc: Dmitry Vyukov Cc: Shuah Khan Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- tools/testing/radix-tree/regression1.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tools') diff --git a/tools/testing/radix-tree/regression1.c b/tools/testing/radix-tree/regression1.c index 2d03a63bb79c..0d6813a61b37 100644 --- a/tools/testing/radix-tree/regression1.c +++ b/tools/testing/radix-tree/regression1.c @@ -43,7 +43,7 @@ #include "regression.h" static RADIX_TREE(mt_tree, GFP_KERNEL); -static pthread_mutex_t mt_lock; +static pthread_mutex_t mt_lock = PTHREAD_MUTEX_INITIALIZER; struct page { pthread_mutex_t lock; -- cgit v1.2.3 From 97139d4a6f26445de47b378cddd5192c0278f863 Mon Sep 17 00:00:00 2001 From: Masahiro Yamada Date: Tue, 11 Oct 2016 13:55:58 -0700 Subject: treewide: remove redundant #include Kernel source files need not include explicitly because the top Makefile forces to include it with: -include $(srctree)/include/linux/kconfig.h This commit removes explicit includes except the following: * arch/s390/include/asm/facilities_src.h * tools/testing/radix-tree/linux/kernel.h These two are used for host programs. Link: http://lkml.kernel.org/r/1473656164-11929-1-git-send-email-yamada.masahiro@socionext.com Signed-off-by: Masahiro Yamada Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- arch/arm/include/asm/trusted_foundations.h | 1 - arch/arm64/include/asm/alternative.h | 1 - arch/mips/include/asm/mach-loongson64/loongson.h | 1 - arch/mips/math-emu/cp1emu.c | 1 - arch/mips/net/bpf_jit.c | 1 - drivers/char/virtio_console.c | 1 - drivers/input/rmi4/rmi_bus.c | 1 - drivers/input/rmi4/rmi_driver.c | 1 - drivers/input/rmi4/rmi_f01.c | 1 - drivers/input/rmi4/rmi_f11.c | 1 - drivers/irqchip/irq-bcm6345-l1.c | 1 - drivers/irqchip/irq-bcm7038-l1.c | 1 - drivers/irqchip/irq-bcm7120-l2.c | 1 - drivers/irqchip/irq-brcmstb-l2.c | 1 - drivers/media/dvb-frontends/af9013.h | 1 - drivers/media/dvb-frontends/af9033.h | 2 -- drivers/media/dvb-frontends/ascot2e.h | 1 - drivers/media/dvb-frontends/atbm8830.h | 1 - drivers/media/dvb-frontends/au8522.h | 1 - drivers/media/dvb-frontends/cx22702.h | 1 - drivers/media/dvb-frontends/cx24113.h | 2 -- drivers/media/dvb-frontends/cx24116.h | 1 - drivers/media/dvb-frontends/cx24117.h | 1 - drivers/media/dvb-frontends/cx24120.h | 1 - drivers/media/dvb-frontends/cx24123.h | 1 - drivers/media/dvb-frontends/cxd2820r.h | 1 - drivers/media/dvb-frontends/cxd2841er.h | 1 - drivers/media/dvb-frontends/dib3000mc.h | 2 -- drivers/media/dvb-frontends/dib7000m.h | 2 -- drivers/media/dvb-frontends/dib7000p.h | 2 -- drivers/media/dvb-frontends/drxd.h | 1 - drivers/media/dvb-frontends/drxk.h | 1 - drivers/media/dvb-frontends/ds3000.h | 1 - drivers/media/dvb-frontends/dvb_dummy_fe.h | 1 - drivers/media/dvb-frontends/ec100.h | 1 - drivers/media/dvb-frontends/hd29l2.h | 1 - drivers/media/dvb-frontends/helene.h | 1 - drivers/media/dvb-frontends/horus3a.h | 1 - drivers/media/dvb-frontends/ix2505v.h | 1 - drivers/media/dvb-frontends/lg2160.h | 1 - drivers/media/dvb-frontends/lgdt3305.h | 1 - drivers/media/dvb-frontends/lgs8gl5.h | 1 - drivers/media/dvb-frontends/lgs8gxx.h | 1 - drivers/media/dvb-frontends/lnbh24.h | 2 -- drivers/media/dvb-frontends/lnbh25.h | 1 - drivers/media/dvb-frontends/lnbp21.h | 2 -- drivers/media/dvb-frontends/lnbp22.h | 2 -- drivers/media/dvb-frontends/m88rs2000.h | 1 - drivers/media/dvb-frontends/mb86a20s.h | 1 - drivers/media/dvb-frontends/s5h1409.h | 1 - drivers/media/dvb-frontends/s5h1411.h | 1 - drivers/media/dvb-frontends/s5h1432.h | 1 - drivers/media/dvb-frontends/s921.h | 1 - drivers/media/dvb-frontends/si21xx.h | 1 - drivers/media/dvb-frontends/sp2.h | 1 - drivers/media/dvb-frontends/stb6000.h | 1 - drivers/media/dvb-frontends/stv0288.h | 1 - drivers/media/dvb-frontends/stv0367.h | 1 - drivers/media/dvb-frontends/stv0900.h | 1 - drivers/media/dvb-frontends/stv6110.h | 1 - drivers/media/dvb-frontends/tda10048.h | 1 - drivers/media/dvb-frontends/tda18271c2dd.h | 2 -- drivers/media/dvb-frontends/ts2020.h | 1 - drivers/media/dvb-frontends/zl10036.h | 1 - drivers/media/dvb-frontends/zl10039.h | 2 -- drivers/media/pci/cx23885/altera-ci.h | 2 -- drivers/media/tuners/fc0011.h | 1 - drivers/media/tuners/fc0012.h | 1 - drivers/media/tuners/fc0013.h | 1 - drivers/media/tuners/max2165.h | 2 -- drivers/media/tuners/mc44s803.h | 2 -- drivers/media/tuners/mxl5005s.h | 2 -- drivers/media/tuners/r820t.h | 1 - drivers/media/tuners/si2157.h | 1 - drivers/media/tuners/tda18212.h | 1 - drivers/media/tuners/tda18218.h | 1 - drivers/media/tuners/xc5000.h | 1 - drivers/media/usb/dvb-usb-v2/mxl111sf-demod.h | 1 - drivers/media/usb/dvb-usb-v2/mxl111sf-tuner.h | 1 - drivers/media/usb/dvb-usb/dibusb-common.c | 1 - drivers/media/usb/hdpvr/hdpvr-video.c | 1 - drivers/mtd/mtdcore.c | 1 - drivers/mtd/mtdpart.c | 1 - drivers/net/dsa/b53/b53_mmap.c | 1 - drivers/net/ethernet/sun/ldmvsw.c | 1 - drivers/net/ethernet/wiznet/w5100.c | 1 - drivers/net/ethernet/wiznet/w5300.c | 1 - drivers/usb/early/ehci-dbgp.c | 1 - drivers/usb/gadget/udc/bcm63xx_udc.c | 1 - drivers/usb/host/pci-quirks.c | 1 - fs/lockd/procfs.h | 2 -- include/linux/export.h | 1 - include/linux/gpio/driver.h | 1 - net/batman-adv/debugfs.h | 2 -- sound/soc/intel/common/sst-acpi.h | 1 - tools/testing/nvdimm/config_check.c | 1 - 96 files changed, 112 deletions(-) (limited to 'tools') diff --git a/arch/arm/include/asm/trusted_foundations.h b/arch/arm/include/asm/trusted_foundations.h index 624e1d436c6c..00748350cf72 100644 --- a/arch/arm/include/asm/trusted_foundations.h +++ b/arch/arm/include/asm/trusted_foundations.h @@ -26,7 +26,6 @@ #ifndef __ASM_ARM_TRUSTED_FOUNDATIONS_H #define __ASM_ARM_TRUSTED_FOUNDATIONS_H -#include #include #include #include diff --git a/arch/arm64/include/asm/alternative.h b/arch/arm64/include/asm/alternative.h index 55101bd86b98..39feb85a6931 100644 --- a/arch/arm64/include/asm/alternative.h +++ b/arch/arm64/include/asm/alternative.h @@ -7,7 +7,6 @@ #ifndef __ASSEMBLY__ #include -#include #include #include #include diff --git a/arch/mips/include/asm/mach-loongson64/loongson.h b/arch/mips/include/asm/mach-loongson64/loongson.h index d1ff774ac4b6..c68c0cc879c6 100644 --- a/arch/mips/include/asm/mach-loongson64/loongson.h +++ b/arch/mips/include/asm/mach-loongson64/loongson.h @@ -14,7 +14,6 @@ #include #include #include -#include #include /* loongson internal northbridge initialization */ diff --git a/arch/mips/math-emu/cp1emu.c b/arch/mips/math-emu/cp1emu.c index 36775d20b0e7..f8b7bf836437 100644 --- a/arch/mips/math-emu/cp1emu.c +++ b/arch/mips/math-emu/cp1emu.c @@ -35,7 +35,6 @@ */ #include #include -#include #include #include diff --git a/arch/mips/net/bpf_jit.c b/arch/mips/net/bpf_jit.c index 39e7b472f0d8..49a2e2226fee 100644 --- a/arch/mips/net/bpf_jit.c +++ b/arch/mips/net/bpf_jit.c @@ -14,7 +14,6 @@ #include #include #include -#include #include #include #include diff --git a/drivers/char/virtio_console.c b/drivers/char/virtio_console.c index 8114744bf30c..d433b1db1fdd 100644 --- a/drivers/char/virtio_console.c +++ b/drivers/char/virtio_console.c @@ -38,7 +38,6 @@ #include #include #include -#include #include "../tty/hvc/hvc_console.h" #define is_rproc_enabled IS_ENABLED(CONFIG_REMOTEPROC) diff --git a/drivers/input/rmi4/rmi_bus.c b/drivers/input/rmi4/rmi_bus.c index a73580654c6b..e0b5a45e2b15 100644 --- a/drivers/input/rmi4/rmi_bus.c +++ b/drivers/input/rmi4/rmi_bus.c @@ -9,7 +9,6 @@ #include #include -#include #include #include #include diff --git a/drivers/input/rmi4/rmi_driver.c b/drivers/input/rmi4/rmi_driver.c index c83bce89028b..4a88312fbd25 100644 --- a/drivers/input/rmi4/rmi_driver.c +++ b/drivers/input/rmi4/rmi_driver.c @@ -17,7 +17,6 @@ #include #include #include -#include #include #include #include diff --git a/drivers/input/rmi4/rmi_f01.c b/drivers/input/rmi4/rmi_f01.c index fac81fc9bcf6..b5d2dfc23bad 100644 --- a/drivers/input/rmi4/rmi_f01.c +++ b/drivers/input/rmi4/rmi_f01.c @@ -8,7 +8,6 @@ */ #include -#include #include #include #include diff --git a/drivers/input/rmi4/rmi_f11.c b/drivers/input/rmi4/rmi_f11.c index 20c7134b3d3b..f798f427a46f 100644 --- a/drivers/input/rmi4/rmi_f11.c +++ b/drivers/input/rmi4/rmi_f11.c @@ -12,7 +12,6 @@ #include #include #include -#include #include #include #include diff --git a/drivers/irqchip/irq-bcm6345-l1.c b/drivers/irqchip/irq-bcm6345-l1.c index b844c89a9506..daa4ae89e466 100644 --- a/drivers/irqchip/irq-bcm6345-l1.c +++ b/drivers/irqchip/irq-bcm6345-l1.c @@ -52,7 +52,6 @@ #include #include -#include #include #include #include diff --git a/drivers/irqchip/irq-bcm7038-l1.c b/drivers/irqchip/irq-bcm7038-l1.c index 0fea985ef1dc..353c54986211 100644 --- a/drivers/irqchip/irq-bcm7038-l1.c +++ b/drivers/irqchip/irq-bcm7038-l1.c @@ -12,7 +12,6 @@ #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt #include -#include #include #include #include diff --git a/drivers/irqchip/irq-bcm7120-l2.c b/drivers/irqchip/irq-bcm7120-l2.c index 0ec92631e23c..64c2692070ef 100644 --- a/drivers/irqchip/irq-bcm7120-l2.c +++ b/drivers/irqchip/irq-bcm7120-l2.c @@ -13,7 +13,6 @@ #include #include #include -#include #include #include #include diff --git a/drivers/irqchip/irq-brcmstb-l2.c b/drivers/irqchip/irq-brcmstb-l2.c index 1d4a5b46d9ae..bddf169c4b37 100644 --- a/drivers/irqchip/irq-brcmstb-l2.c +++ b/drivers/irqchip/irq-brcmstb-l2.c @@ -18,7 +18,6 @@ #include #include #include -#include #include #include #include diff --git a/drivers/media/dvb-frontends/af9013.h b/drivers/media/dvb-frontends/af9013.h index 1dcc936e1661..dcdd163ace85 100644 --- a/drivers/media/dvb-frontends/af9013.h +++ b/drivers/media/dvb-frontends/af9013.h @@ -25,7 +25,6 @@ #ifndef AF9013_H #define AF9013_H -#include #include /* AF9013/5 GPIOs (mostly guessed) diff --git a/drivers/media/dvb-frontends/af9033.h b/drivers/media/dvb-frontends/af9033.h index 6ad22b69a636..5b83e4f96297 100644 --- a/drivers/media/dvb-frontends/af9033.h +++ b/drivers/media/dvb-frontends/af9033.h @@ -22,8 +22,6 @@ #ifndef AF9033_H #define AF9033_H -#include - /* * I2C address (TODO: are these in 8-bit format?) * 0x38, 0x3a, 0x3c, 0x3e diff --git a/drivers/media/dvb-frontends/ascot2e.h b/drivers/media/dvb-frontends/ascot2e.h index 6da4ae6d6cc3..dc61bf7d1b09 100644 --- a/drivers/media/dvb-frontends/ascot2e.h +++ b/drivers/media/dvb-frontends/ascot2e.h @@ -22,7 +22,6 @@ #ifndef __DVB_ASCOT2E_H__ #define __DVB_ASCOT2E_H__ -#include #include #include diff --git a/drivers/media/dvb-frontends/atbm8830.h b/drivers/media/dvb-frontends/atbm8830.h index 5446d13fdfe8..bb862387080f 100644 --- a/drivers/media/dvb-frontends/atbm8830.h +++ b/drivers/media/dvb-frontends/atbm8830.h @@ -22,7 +22,6 @@ #ifndef __ATBM8830_H__ #define __ATBM8830_H__ -#include #include #include diff --git a/drivers/media/dvb-frontends/au8522.h b/drivers/media/dvb-frontends/au8522.h index 78bf3f73e58d..21c51a4c519a 100644 --- a/drivers/media/dvb-frontends/au8522.h +++ b/drivers/media/dvb-frontends/au8522.h @@ -22,7 +22,6 @@ #ifndef __AU8522_H__ #define __AU8522_H__ -#include #include enum au8522_if_freq { diff --git a/drivers/media/dvb-frontends/cx22702.h b/drivers/media/dvb-frontends/cx22702.h index 68b69a7660d2..a1956a9ba406 100644 --- a/drivers/media/dvb-frontends/cx22702.h +++ b/drivers/media/dvb-frontends/cx22702.h @@ -28,7 +28,6 @@ #ifndef CX22702_H #define CX22702_H -#include #include struct cx22702_config { diff --git a/drivers/media/dvb-frontends/cx24113.h b/drivers/media/dvb-frontends/cx24113.h index 962919b9b6e6..194c703611b4 100644 --- a/drivers/media/dvb-frontends/cx24113.h +++ b/drivers/media/dvb-frontends/cx24113.h @@ -22,8 +22,6 @@ #ifndef CX24113_H #define CX24113_H -#include - struct dvb_frontend; struct cx24113_config { diff --git a/drivers/media/dvb-frontends/cx24116.h b/drivers/media/dvb-frontends/cx24116.h index f6dbabc1d62b..9ff8df8d44b8 100644 --- a/drivers/media/dvb-frontends/cx24116.h +++ b/drivers/media/dvb-frontends/cx24116.h @@ -21,7 +21,6 @@ #ifndef CX24116_H #define CX24116_H -#include #include struct cx24116_config { diff --git a/drivers/media/dvb-frontends/cx24117.h b/drivers/media/dvb-frontends/cx24117.h index 1648ab432168..445f13faf63a 100644 --- a/drivers/media/dvb-frontends/cx24117.h +++ b/drivers/media/dvb-frontends/cx24117.h @@ -22,7 +22,6 @@ #ifndef CX24117_H #define CX24117_H -#include #include struct cx24117_config { diff --git a/drivers/media/dvb-frontends/cx24120.h b/drivers/media/dvb-frontends/cx24120.h index f0970423e16f..de4ca9aa0923 100644 --- a/drivers/media/dvb-frontends/cx24120.h +++ b/drivers/media/dvb-frontends/cx24120.h @@ -20,7 +20,6 @@ #ifndef CX24120_H #define CX24120_H -#include #include #include diff --git a/drivers/media/dvb-frontends/cx24123.h b/drivers/media/dvb-frontends/cx24123.h index 975f3c926fe8..aac23444aa9a 100644 --- a/drivers/media/dvb-frontends/cx24123.h +++ b/drivers/media/dvb-frontends/cx24123.h @@ -21,7 +21,6 @@ #ifndef CX24123_H #define CX24123_H -#include #include struct cx24123_config { diff --git a/drivers/media/dvb-frontends/cxd2820r.h b/drivers/media/dvb-frontends/cxd2820r.h index 56d42760263d..297a71a671f5 100644 --- a/drivers/media/dvb-frontends/cxd2820r.h +++ b/drivers/media/dvb-frontends/cxd2820r.h @@ -22,7 +22,6 @@ #ifndef CXD2820R_H #define CXD2820R_H -#include #include #define CXD2820R_GPIO_D (0 << 0) /* disable */ diff --git a/drivers/media/dvb-frontends/cxd2841er.h b/drivers/media/dvb-frontends/cxd2841er.h index 62ad5f07390b..7f1acfb8f4f5 100644 --- a/drivers/media/dvb-frontends/cxd2841er.h +++ b/drivers/media/dvb-frontends/cxd2841er.h @@ -22,7 +22,6 @@ #ifndef CXD2841ER_H #define CXD2841ER_H -#include #include enum cxd2841er_xtal { diff --git a/drivers/media/dvb-frontends/dib3000mc.h b/drivers/media/dvb-frontends/dib3000mc.h index b37e69e6a58c..67a6d50865fb 100644 --- a/drivers/media/dvb-frontends/dib3000mc.h +++ b/drivers/media/dvb-frontends/dib3000mc.h @@ -13,8 +13,6 @@ #ifndef DIB3000MC_H #define DIB3000MC_H -#include - #include "dibx000_common.h" struct dib3000mc_config { diff --git a/drivers/media/dvb-frontends/dib7000m.h b/drivers/media/dvb-frontends/dib7000m.h index 6468c278cc4d..8f84dfa9bb58 100644 --- a/drivers/media/dvb-frontends/dib7000m.h +++ b/drivers/media/dvb-frontends/dib7000m.h @@ -1,8 +1,6 @@ #ifndef DIB7000M_H #define DIB7000M_H -#include - #include "dibx000_common.h" struct dib7000m_config { diff --git a/drivers/media/dvb-frontends/dib7000p.h b/drivers/media/dvb-frontends/dib7000p.h index baa278928cf3..205fbbff632b 100644 --- a/drivers/media/dvb-frontends/dib7000p.h +++ b/drivers/media/dvb-frontends/dib7000p.h @@ -1,8 +1,6 @@ #ifndef DIB7000P_H #define DIB7000P_H -#include - #include "dibx000_common.h" struct dib7000p_config { diff --git a/drivers/media/dvb-frontends/drxd.h b/drivers/media/dvb-frontends/drxd.h index a47c22d6667e..f0507cdbb503 100644 --- a/drivers/media/dvb-frontends/drxd.h +++ b/drivers/media/dvb-frontends/drxd.h @@ -24,7 +24,6 @@ #ifndef _DRXD_H_ #define _DRXD_H_ -#include #include #include diff --git a/drivers/media/dvb-frontends/drxk.h b/drivers/media/dvb-frontends/drxk.h index 8f0b9eec528f..a629897eb905 100644 --- a/drivers/media/dvb-frontends/drxk.h +++ b/drivers/media/dvb-frontends/drxk.h @@ -1,7 +1,6 @@ #ifndef _DRXK_H_ #define _DRXK_H_ -#include #include #include diff --git a/drivers/media/dvb-frontends/ds3000.h b/drivers/media/dvb-frontends/ds3000.h index 153169da9017..82e8c2531f26 100644 --- a/drivers/media/dvb-frontends/ds3000.h +++ b/drivers/media/dvb-frontends/ds3000.h @@ -22,7 +22,6 @@ #ifndef DS3000_H #define DS3000_H -#include #include struct ds3000_config { diff --git a/drivers/media/dvb-frontends/dvb_dummy_fe.h b/drivers/media/dvb-frontends/dvb_dummy_fe.h index 15e4ceab869a..50f1af512b62 100644 --- a/drivers/media/dvb-frontends/dvb_dummy_fe.h +++ b/drivers/media/dvb-frontends/dvb_dummy_fe.h @@ -22,7 +22,6 @@ #ifndef DVB_DUMMY_FE_H #define DVB_DUMMY_FE_H -#include #include #include "dvb_frontend.h" diff --git a/drivers/media/dvb-frontends/ec100.h b/drivers/media/dvb-frontends/ec100.h index 9544bab5cd1d..e894bdcf35a3 100644 --- a/drivers/media/dvb-frontends/ec100.h +++ b/drivers/media/dvb-frontends/ec100.h @@ -22,7 +22,6 @@ #ifndef EC100_H #define EC100_H -#include #include struct ec100_config { diff --git a/drivers/media/dvb-frontends/hd29l2.h b/drivers/media/dvb-frontends/hd29l2.h index 48e9ab74c883..a14d6f36dbf6 100644 --- a/drivers/media/dvb-frontends/hd29l2.h +++ b/drivers/media/dvb-frontends/hd29l2.h @@ -23,7 +23,6 @@ #ifndef HD29L2_H #define HD29L2_H -#include #include struct hd29l2_config { diff --git a/drivers/media/dvb-frontends/helene.h b/drivers/media/dvb-frontends/helene.h index e1b9224cfc55..333615491d9e 100644 --- a/drivers/media/dvb-frontends/helene.h +++ b/drivers/media/dvb-frontends/helene.h @@ -21,7 +21,6 @@ #ifndef __DVB_HELENE_H__ #define __DVB_HELENE_H__ -#include #include #include diff --git a/drivers/media/dvb-frontends/horus3a.h b/drivers/media/dvb-frontends/horus3a.h index c1e2d1834b78..672a556df71a 100644 --- a/drivers/media/dvb-frontends/horus3a.h +++ b/drivers/media/dvb-frontends/horus3a.h @@ -22,7 +22,6 @@ #ifndef __DVB_HORUS3A_H__ #define __DVB_HORUS3A_H__ -#include #include #include diff --git a/drivers/media/dvb-frontends/ix2505v.h b/drivers/media/dvb-frontends/ix2505v.h index af107a2dd357..5eab39744b23 100644 --- a/drivers/media/dvb-frontends/ix2505v.h +++ b/drivers/media/dvb-frontends/ix2505v.h @@ -20,7 +20,6 @@ #ifndef DVB_IX2505V_H #define DVB_IX2505V_H -#include #include #include "dvb_frontend.h" diff --git a/drivers/media/dvb-frontends/lg2160.h b/drivers/media/dvb-frontends/lg2160.h index d20bd909de39..8c74ddc6b88a 100644 --- a/drivers/media/dvb-frontends/lg2160.h +++ b/drivers/media/dvb-frontends/lg2160.h @@ -22,7 +22,6 @@ #ifndef _LG2160_H_ #define _LG2160_H_ -#include #include #include "dvb_frontend.h" diff --git a/drivers/media/dvb-frontends/lgdt3305.h b/drivers/media/dvb-frontends/lgdt3305.h index f91a1b49ce2f..e7dceb60e572 100644 --- a/drivers/media/dvb-frontends/lgdt3305.h +++ b/drivers/media/dvb-frontends/lgdt3305.h @@ -22,7 +22,6 @@ #ifndef _LGDT3305_H_ #define _LGDT3305_H_ -#include #include #include "dvb_frontend.h" diff --git a/drivers/media/dvb-frontends/lgs8gl5.h b/drivers/media/dvb-frontends/lgs8gl5.h index a5b3faf121f0..f36a7fd0b102 100644 --- a/drivers/media/dvb-frontends/lgs8gl5.h +++ b/drivers/media/dvb-frontends/lgs8gl5.h @@ -23,7 +23,6 @@ #ifndef LGS8GL5_H #define LGS8GL5_H -#include #include struct lgs8gl5_config { diff --git a/drivers/media/dvb-frontends/lgs8gxx.h b/drivers/media/dvb-frontends/lgs8gxx.h index 368c9928ef7f..7519c0210399 100644 --- a/drivers/media/dvb-frontends/lgs8gxx.h +++ b/drivers/media/dvb-frontends/lgs8gxx.h @@ -26,7 +26,6 @@ #ifndef __LGS8GXX_H__ #define __LGS8GXX_H__ -#include #include #include diff --git a/drivers/media/dvb-frontends/lnbh24.h b/drivers/media/dvb-frontends/lnbh24.h index a088b8ec1e53..24431dfdce1f 100644 --- a/drivers/media/dvb-frontends/lnbh24.h +++ b/drivers/media/dvb-frontends/lnbh24.h @@ -23,8 +23,6 @@ #ifndef _LNBH24_H #define _LNBH24_H -#include - /* system register bits */ #define LNBH24_OLF 0x01 #define LNBH24_OTF 0x02 diff --git a/drivers/media/dvb-frontends/lnbh25.h b/drivers/media/dvb-frontends/lnbh25.h index 1f329ef05acc..f13fd0308b3e 100644 --- a/drivers/media/dvb-frontends/lnbh25.h +++ b/drivers/media/dvb-frontends/lnbh25.h @@ -22,7 +22,6 @@ #define LNBH25_H #include -#include #include /* 22 kHz tone enabled. Tone output controlled by DSQIN pin */ diff --git a/drivers/media/dvb-frontends/lnbp21.h b/drivers/media/dvb-frontends/lnbp21.h index cd9101f6e579..4bb6439068ec 100644 --- a/drivers/media/dvb-frontends/lnbp21.h +++ b/drivers/media/dvb-frontends/lnbp21.h @@ -27,8 +27,6 @@ #ifndef _LNBP21_H #define _LNBP21_H -#include - /* system register bits */ /* [RO] 0=OK; 1=over current limit flag */ #define LNBP21_OLF 0x01 diff --git a/drivers/media/dvb-frontends/lnbp22.h b/drivers/media/dvb-frontends/lnbp22.h index 5d01d92814c2..0cb72126c498 100644 --- a/drivers/media/dvb-frontends/lnbp22.h +++ b/drivers/media/dvb-frontends/lnbp22.h @@ -28,8 +28,6 @@ #ifndef _LNBP22_H #define _LNBP22_H -#include - /* Enable */ #define LNBP22_EN 0x10 /* Voltage selection */ diff --git a/drivers/media/dvb-frontends/m88rs2000.h b/drivers/media/dvb-frontends/m88rs2000.h index de7430178e9e..1a313b0f5875 100644 --- a/drivers/media/dvb-frontends/m88rs2000.h +++ b/drivers/media/dvb-frontends/m88rs2000.h @@ -20,7 +20,6 @@ #ifndef M88RS2000_H #define M88RS2000_H -#include #include #include "dvb_frontend.h" diff --git a/drivers/media/dvb-frontends/mb86a20s.h b/drivers/media/dvb-frontends/mb86a20s.h index a113282d6956..dfb02db2126c 100644 --- a/drivers/media/dvb-frontends/mb86a20s.h +++ b/drivers/media/dvb-frontends/mb86a20s.h @@ -16,7 +16,6 @@ #ifndef MB86A20S_H #define MB86A20S_H -#include #include /** diff --git a/drivers/media/dvb-frontends/s5h1409.h b/drivers/media/dvb-frontends/s5h1409.h index f58b9ca5557a..b38557c451b9 100644 --- a/drivers/media/dvb-frontends/s5h1409.h +++ b/drivers/media/dvb-frontends/s5h1409.h @@ -22,7 +22,6 @@ #ifndef __S5H1409_H__ #define __S5H1409_H__ -#include #include struct s5h1409_config { diff --git a/drivers/media/dvb-frontends/s5h1411.h b/drivers/media/dvb-frontends/s5h1411.h index f3a87f7ec360..791bab0e16e9 100644 --- a/drivers/media/dvb-frontends/s5h1411.h +++ b/drivers/media/dvb-frontends/s5h1411.h @@ -22,7 +22,6 @@ #ifndef __S5H1411_H__ #define __S5H1411_H__ -#include #include #define S5H1411_I2C_TOP_ADDR (0x32 >> 1) diff --git a/drivers/media/dvb-frontends/s5h1432.h b/drivers/media/dvb-frontends/s5h1432.h index f490c5ee5801..b81c9bd4e422 100644 --- a/drivers/media/dvb-frontends/s5h1432.h +++ b/drivers/media/dvb-frontends/s5h1432.h @@ -22,7 +22,6 @@ #ifndef __S5H1432_H__ #define __S5H1432_H__ -#include #include #define S5H1432_I2C_TOP_ADDR (0x02 >> 1) diff --git a/drivers/media/dvb-frontends/s921.h b/drivers/media/dvb-frontends/s921.h index f5b722d8081b..a47ed894d4ae 100644 --- a/drivers/media/dvb-frontends/s921.h +++ b/drivers/media/dvb-frontends/s921.h @@ -17,7 +17,6 @@ #ifndef S921_H #define S921_H -#include #include struct s921_config { diff --git a/drivers/media/dvb-frontends/si21xx.h b/drivers/media/dvb-frontends/si21xx.h index ef5f351ca68e..b1be62f1983a 100644 --- a/drivers/media/dvb-frontends/si21xx.h +++ b/drivers/media/dvb-frontends/si21xx.h @@ -1,7 +1,6 @@ #ifndef SI21XX_H #define SI21XX_H -#include #include #include "dvb_frontend.h" diff --git a/drivers/media/dvb-frontends/sp2.h b/drivers/media/dvb-frontends/sp2.h index 6cceea022d49..3901cd74b3f7 100644 --- a/drivers/media/dvb-frontends/sp2.h +++ b/drivers/media/dvb-frontends/sp2.h @@ -17,7 +17,6 @@ #ifndef SP2_H #define SP2_H -#include #include "dvb_ca_en50221.h" /* diff --git a/drivers/media/dvb-frontends/stb6000.h b/drivers/media/dvb-frontends/stb6000.h index da581b652cb9..78e75dfc317f 100644 --- a/drivers/media/dvb-frontends/stb6000.h +++ b/drivers/media/dvb-frontends/stb6000.h @@ -23,7 +23,6 @@ #ifndef __DVB_STB6000_H__ #define __DVB_STB6000_H__ -#include #include #include "dvb_frontend.h" diff --git a/drivers/media/dvb-frontends/stv0288.h b/drivers/media/dvb-frontends/stv0288.h index b58603c00c80..803acb917282 100644 --- a/drivers/media/dvb-frontends/stv0288.h +++ b/drivers/media/dvb-frontends/stv0288.h @@ -27,7 +27,6 @@ #ifndef STV0288_H #define STV0288_H -#include #include #include "dvb_frontend.h" diff --git a/drivers/media/dvb-frontends/stv0367.h b/drivers/media/dvb-frontends/stv0367.h index 92b3e85fb818..b88166a9716f 100644 --- a/drivers/media/dvb-frontends/stv0367.h +++ b/drivers/media/dvb-frontends/stv0367.h @@ -26,7 +26,6 @@ #ifndef STV0367_H #define STV0367_H -#include #include #include "dvb_frontend.h" diff --git a/drivers/media/dvb-frontends/stv0900.h b/drivers/media/dvb-frontends/stv0900.h index c90bf00ea9ce..9ca2da90c7d7 100644 --- a/drivers/media/dvb-frontends/stv0900.h +++ b/drivers/media/dvb-frontends/stv0900.h @@ -26,7 +26,6 @@ #ifndef STV0900_H #define STV0900_H -#include #include #include "dvb_frontend.h" diff --git a/drivers/media/dvb-frontends/stv6110.h b/drivers/media/dvb-frontends/stv6110.h index f3c8a5c6b77d..4604f793d954 100644 --- a/drivers/media/dvb-frontends/stv6110.h +++ b/drivers/media/dvb-frontends/stv6110.h @@ -25,7 +25,6 @@ #ifndef __DVB_STV6110_H__ #define __DVB_STV6110_H__ -#include #include #include "dvb_frontend.h" diff --git a/drivers/media/dvb-frontends/tda10048.h b/drivers/media/dvb-frontends/tda10048.h index bc77a7311de1..a2cebb0cceba 100644 --- a/drivers/media/dvb-frontends/tda10048.h +++ b/drivers/media/dvb-frontends/tda10048.h @@ -22,7 +22,6 @@ #ifndef TDA10048_H #define TDA10048_H -#include #include #include diff --git a/drivers/media/dvb-frontends/tda18271c2dd.h b/drivers/media/dvb-frontends/tda18271c2dd.h index 7ebd8eaff4eb..e6ccf240f54c 100644 --- a/drivers/media/dvb-frontends/tda18271c2dd.h +++ b/drivers/media/dvb-frontends/tda18271c2dd.h @@ -1,8 +1,6 @@ #ifndef _TDA18271C2DD_H_ #define _TDA18271C2DD_H_ -#include - #if IS_REACHABLE(CONFIG_DVB_TDA18271C2DD) struct dvb_frontend *tda18271c2dd_attach(struct dvb_frontend *fe, struct i2c_adapter *i2c, u8 adr); diff --git a/drivers/media/dvb-frontends/ts2020.h b/drivers/media/dvb-frontends/ts2020.h index 9220e5cf0d21..facc54f0a6af 100644 --- a/drivers/media/dvb-frontends/ts2020.h +++ b/drivers/media/dvb-frontends/ts2020.h @@ -22,7 +22,6 @@ #ifndef TS2020_H #define TS2020_H -#include #include struct ts2020_config { diff --git a/drivers/media/dvb-frontends/zl10036.h b/drivers/media/dvb-frontends/zl10036.h index 670e76a654ee..c568d8d59de3 100644 --- a/drivers/media/dvb-frontends/zl10036.h +++ b/drivers/media/dvb-frontends/zl10036.h @@ -21,7 +21,6 @@ #ifndef DVB_ZL10036_H #define DVB_ZL10036_H -#include #include #include "dvb_frontend.h" diff --git a/drivers/media/dvb-frontends/zl10039.h b/drivers/media/dvb-frontends/zl10039.h index 070929444e71..66e708569375 100644 --- a/drivers/media/dvb-frontends/zl10039.h +++ b/drivers/media/dvb-frontends/zl10039.h @@ -22,8 +22,6 @@ #ifndef ZL10039_H #define ZL10039_H -#include - #if IS_REACHABLE(CONFIG_DVB_ZL10039) struct dvb_frontend *zl10039_attach(struct dvb_frontend *fe, u8 i2c_addr, diff --git a/drivers/media/pci/cx23885/altera-ci.h b/drivers/media/pci/cx23885/altera-ci.h index 6c511723fd1b..57a40c84b46e 100644 --- a/drivers/media/pci/cx23885/altera-ci.h +++ b/drivers/media/pci/cx23885/altera-ci.h @@ -20,8 +20,6 @@ #ifndef __ALTERA_CI_H #define __ALTERA_CI_H -#include - #define ALT_DATA 0x000000ff #define ALT_TDI 0x00008000 #define ALT_TDO 0x00004000 diff --git a/drivers/media/tuners/fc0011.h b/drivers/media/tuners/fc0011.h index 81bb568d6943..438cf897acd1 100644 --- a/drivers/media/tuners/fc0011.h +++ b/drivers/media/tuners/fc0011.h @@ -1,7 +1,6 @@ #ifndef LINUX_FC0011_H_ #define LINUX_FC0011_H_ -#include #include "dvb_frontend.h" diff --git a/drivers/media/tuners/fc0012.h b/drivers/media/tuners/fc0012.h index 9ad32859bab0..4a23e418daf0 100644 --- a/drivers/media/tuners/fc0012.h +++ b/drivers/media/tuners/fc0012.h @@ -21,7 +21,6 @@ #ifndef _FC0012_H_ #define _FC0012_H_ -#include #include "dvb_frontend.h" #include "fc001x-common.h" diff --git a/drivers/media/tuners/fc0013.h b/drivers/media/tuners/fc0013.h index e130bd7a3230..8c34105c9383 100644 --- a/drivers/media/tuners/fc0013.h +++ b/drivers/media/tuners/fc0013.h @@ -22,7 +22,6 @@ #ifndef _FC0013_H_ #define _FC0013_H_ -#include #include "dvb_frontend.h" #include "fc001x-common.h" diff --git a/drivers/media/tuners/max2165.h b/drivers/media/tuners/max2165.h index 5054f01a78fb..aadd9fea59e4 100644 --- a/drivers/media/tuners/max2165.h +++ b/drivers/media/tuners/max2165.h @@ -22,8 +22,6 @@ #ifndef __MAX2165_H__ #define __MAX2165_H__ -#include - struct dvb_frontend; struct i2c_adapter; diff --git a/drivers/media/tuners/mc44s803.h b/drivers/media/tuners/mc44s803.h index b3e614be657d..6b40df339284 100644 --- a/drivers/media/tuners/mc44s803.h +++ b/drivers/media/tuners/mc44s803.h @@ -22,8 +22,6 @@ #ifndef MC44S803_H #define MC44S803_H -#include - struct dvb_frontend; struct i2c_adapter; diff --git a/drivers/media/tuners/mxl5005s.h b/drivers/media/tuners/mxl5005s.h index 5764b12c5c7c..d842734f2dcd 100644 --- a/drivers/media/tuners/mxl5005s.h +++ b/drivers/media/tuners/mxl5005s.h @@ -23,8 +23,6 @@ #ifndef __MXL5005S_H #define __MXL5005S_H -#include - #include #include "dvb_frontend.h" diff --git a/drivers/media/tuners/r820t.h b/drivers/media/tuners/r820t.h index b1e5661af1c7..fdcab91405de 100644 --- a/drivers/media/tuners/r820t.h +++ b/drivers/media/tuners/r820t.h @@ -21,7 +21,6 @@ #ifndef R820T_H #define R820T_H -#include #include "dvb_frontend.h" enum r820t_chip { diff --git a/drivers/media/tuners/si2157.h b/drivers/media/tuners/si2157.h index 5f1a60bf7ced..76807f5b3cf8 100644 --- a/drivers/media/tuners/si2157.h +++ b/drivers/media/tuners/si2157.h @@ -17,7 +17,6 @@ #ifndef SI2157_H #define SI2157_H -#include #include #include "dvb_frontend.h" diff --git a/drivers/media/tuners/tda18212.h b/drivers/media/tuners/tda18212.h index e58c9096d79c..6391dafd0c9d 100644 --- a/drivers/media/tuners/tda18212.h +++ b/drivers/media/tuners/tda18212.h @@ -21,7 +21,6 @@ #ifndef TDA18212_H #define TDA18212_H -#include #include "dvb_frontend.h" struct tda18212_config { diff --git a/drivers/media/tuners/tda18218.h b/drivers/media/tuners/tda18218.h index 1eacb4f84e93..076b5f2e888d 100644 --- a/drivers/media/tuners/tda18218.h +++ b/drivers/media/tuners/tda18218.h @@ -21,7 +21,6 @@ #ifndef TDA18218_H #define TDA18218_H -#include #include "dvb_frontend.h" struct tda18218_config { diff --git a/drivers/media/tuners/xc5000.h b/drivers/media/tuners/xc5000.h index 00ba29e21fb9..336bd49eb09b 100644 --- a/drivers/media/tuners/xc5000.h +++ b/drivers/media/tuners/xc5000.h @@ -22,7 +22,6 @@ #ifndef __XC5000_H__ #define __XC5000_H__ -#include #include struct dvb_frontend; diff --git a/drivers/media/usb/dvb-usb-v2/mxl111sf-demod.h b/drivers/media/usb/dvb-usb-v2/mxl111sf-demod.h index 7065aca81252..e6eae9d88e9f 100644 --- a/drivers/media/usb/dvb-usb-v2/mxl111sf-demod.h +++ b/drivers/media/usb/dvb-usb-v2/mxl111sf-demod.h @@ -21,7 +21,6 @@ #ifndef __MXL111SF_DEMOD_H__ #define __MXL111SF_DEMOD_H__ -#include #include "dvb_frontend.h" #include "mxl111sf.h" diff --git a/drivers/media/usb/dvb-usb-v2/mxl111sf-tuner.h b/drivers/media/usb/dvb-usb-v2/mxl111sf-tuner.h index 509b55071218..e96d9a444ed1 100644 --- a/drivers/media/usb/dvb-usb-v2/mxl111sf-tuner.h +++ b/drivers/media/usb/dvb-usb-v2/mxl111sf-tuner.h @@ -21,7 +21,6 @@ #ifndef __MXL111SF_TUNER_H__ #define __MXL111SF_TUNER_H__ -#include #include "dvb_frontend.h" #include "mxl111sf.h" diff --git a/drivers/media/usb/dvb-usb/dibusb-common.c b/drivers/media/usb/dvb-usb/dibusb-common.c index 6eea4e68891d..9e94b17e1336 100644 --- a/drivers/media/usb/dvb-usb/dibusb-common.c +++ b/drivers/media/usb/dvb-usb/dibusb-common.c @@ -9,7 +9,6 @@ * see Documentation/dvb/README.dvb-usb for more information */ -#include #include "dibusb.h" /* Max transfer size done by I2C transfer functions */ diff --git a/drivers/media/usb/hdpvr/hdpvr-video.c b/drivers/media/usb/hdpvr/hdpvr-video.c index 6d43d75493ea..474c11e1d495 100644 --- a/drivers/media/usb/hdpvr/hdpvr-video.c +++ b/drivers/media/usb/hdpvr/hdpvr-video.c @@ -10,7 +10,6 @@ */ #include -#include #include #include #include diff --git a/drivers/mtd/mtdcore.c b/drivers/mtd/mtdcore.c index 4f270482cfd0..d46e4adf6d2b 100644 --- a/drivers/mtd/mtdcore.c +++ b/drivers/mtd/mtdcore.c @@ -39,7 +39,6 @@ #include #include #include -#include #include #include diff --git a/drivers/mtd/mtdpart.c b/drivers/mtd/mtdpart.c index c1f34f04e338..fccdd49bb964 100644 --- a/drivers/mtd/mtdpart.c +++ b/drivers/mtd/mtdpart.c @@ -30,7 +30,6 @@ #include #include #include -#include #include "mtdcore.h" diff --git a/drivers/net/dsa/b53/b53_mmap.c b/drivers/net/dsa/b53/b53_mmap.c index cc9e6bd83e0e..76fb8552c9d9 100644 --- a/drivers/net/dsa/b53/b53_mmap.c +++ b/drivers/net/dsa/b53/b53_mmap.c @@ -17,7 +17,6 @@ */ #include -#include #include #include #include diff --git a/drivers/net/ethernet/sun/ldmvsw.c b/drivers/net/ethernet/sun/ldmvsw.c index e15bf84fc6b2..0ac449acaf5b 100644 --- a/drivers/net/ethernet/sun/ldmvsw.c +++ b/drivers/net/ethernet/sun/ldmvsw.c @@ -11,7 +11,6 @@ #include #include #include -#include #include #include #include diff --git a/drivers/net/ethernet/wiznet/w5100.c b/drivers/net/ethernet/wiznet/w5100.c index 37ab46cdbec4..d2349a1bc6ba 100644 --- a/drivers/net/ethernet/wiznet/w5100.c +++ b/drivers/net/ethernet/wiznet/w5100.c @@ -9,7 +9,6 @@ #include #include -#include #include #include #include diff --git a/drivers/net/ethernet/wiznet/w5300.c b/drivers/net/ethernet/wiznet/w5300.c index 0b37ce9f28f1..ca31a57dbc86 100644 --- a/drivers/net/ethernet/wiznet/w5300.c +++ b/drivers/net/ethernet/wiznet/w5300.c @@ -10,7 +10,6 @@ #include #include -#include #include #include #include diff --git a/drivers/usb/early/ehci-dbgp.c b/drivers/usb/early/ehci-dbgp.c index 12731e67d2c7..ea73afb026d8 100644 --- a/drivers/usb/early/ehci-dbgp.c +++ b/drivers/usb/early/ehci-dbgp.c @@ -20,7 +20,6 @@ #include #include #include -#include #include #include #include diff --git a/drivers/usb/gadget/udc/bcm63xx_udc.c b/drivers/usb/gadget/udc/bcm63xx_udc.c index f5fccb3e4152..f78503203f42 100644 --- a/drivers/usb/gadget/udc/bcm63xx_udc.c +++ b/drivers/usb/gadget/udc/bcm63xx_udc.c @@ -21,7 +21,6 @@ #include #include #include -#include #include #include #include diff --git a/drivers/usb/host/pci-quirks.c b/drivers/usb/host/pci-quirks.c index 35af36253440..d793f548dfe2 100644 --- a/drivers/usb/host/pci-quirks.c +++ b/drivers/usb/host/pci-quirks.c @@ -9,7 +9,6 @@ */ #include -#include #include #include #include diff --git a/fs/lockd/procfs.h b/fs/lockd/procfs.h index 2257a1311027..184a15edd18d 100644 --- a/fs/lockd/procfs.h +++ b/fs/lockd/procfs.h @@ -6,8 +6,6 @@ #ifndef _LOCKD_PROCFS_H #define _LOCKD_PROCFS_H -#include - #if IS_ENABLED(CONFIG_PROC_FS) int lockd_create_procfs(void); void lockd_remove_procfs(void); diff --git a/include/linux/export.h b/include/linux/export.h index c565f87f005e..d7df4922da1d 100644 --- a/include/linux/export.h +++ b/include/linux/export.h @@ -78,7 +78,6 @@ extern struct module __this_module; #elif defined(CONFIG_TRIM_UNUSED_KSYMS) -#include #include #define __EXPORT_SYMBOL(sym, sec) \ diff --git a/include/linux/gpio/driver.h b/include/linux/gpio/driver.h index 1f0be7213e6d..24e2cc56beb1 100644 --- a/include/linux/gpio/driver.h +++ b/include/linux/gpio/driver.h @@ -8,7 +8,6 @@ #include #include #include -#include struct gpio_desc; struct of_phandle_args; diff --git a/net/batman-adv/debugfs.h b/net/batman-adv/debugfs.h index c68ff3dcb926..e49121ee55f6 100644 --- a/net/batman-adv/debugfs.h +++ b/net/batman-adv/debugfs.h @@ -20,8 +20,6 @@ #include "main.h" -#include - struct net_device; #define BATADV_DEBUGFS_SUBDIR "batman_adv" diff --git a/sound/soc/intel/common/sst-acpi.h b/sound/soc/intel/common/sst-acpi.h index 5d2949324d0e..012742299dd5 100644 --- a/sound/soc/intel/common/sst-acpi.h +++ b/sound/soc/intel/common/sst-acpi.h @@ -12,7 +12,6 @@ * */ -#include #include #include diff --git a/tools/testing/nvdimm/config_check.c b/tools/testing/nvdimm/config_check.c index 878daf3429e8..7dc5a0af9b54 100644 --- a/tools/testing/nvdimm/config_check.c +++ b/tools/testing/nvdimm/config_check.c @@ -1,4 +1,3 @@ -#include #include void check(void) -- cgit v1.2.3