[PATCH 1/2] Remove Kconfig setting CONFIG_DEBUG_SHIRQ

Fernando Luis Vázquez Cao fernando at oss.ntt.co.jp
Thu Jul 19 22:02:24 EDT 2007


request_irq() and setup_irq() are not fast paths and free_irq() much
less so. In fact, by enabling this feature unconditionally we would have
_everyone_ (unknowingly) testing devices drivers, which hopefully will
result in more bug-reports and, in turn, better drivers.

Signed-off-by: Fernando Luis Vazquez Cao <fernando at oss.ntt.co.jp>
---

diff -urNp linux-2.6.22-orig/arch/arm/configs/at91sam9rlek_defconfig linux-2.6.22-pendirq/arch/arm/configs/at91sam9rlek_defconfig
--- linux-2.6.22-orig/arch/arm/configs/at91sam9rlek_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/arm/configs/at91sam9rlek_defconfig	2007-07-19 16:49:54.000000000 +0900
@@ -906,7 +906,6 @@ CONFIG_ENABLE_MUST_CHECK=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_LOG_BUF_SHIFT=14
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
diff -urNp linux-2.6.22-orig/arch/arm/configs/picotux200_defconfig linux-2.6.22-pendirq/arch/arm/configs/picotux200_defconfig
--- linux-2.6.22-orig/arch/arm/configs/picotux200_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/arm/configs/picotux200_defconfig	2007-07-19 16:50:00.000000000 +0900
@@ -1293,7 +1293,6 @@ CONFIG_ENABLE_MUST_CHECK=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_LOG_BUF_SHIFT=14
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
diff -urNp linux-2.6.22-orig/arch/arm/configs/s3c2410_defconfig linux-2.6.22-pendirq/arch/arm/configs/s3c2410_defconfig
--- linux-2.6.22-orig/arch/arm/configs/s3c2410_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/arm/configs/s3c2410_defconfig	2007-07-19 16:50:06.000000000 +0900
@@ -1368,7 +1368,6 @@ CONFIG_MAGIC_SYSRQ=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_LOG_BUF_SHIFT=16
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
diff -urNp linux-2.6.22-orig/arch/avr32/configs/atngw100_defconfig linux-2.6.22-pendirq/arch/avr32/configs/atngw100_defconfig
--- linux-2.6.22-orig/arch/avr32/configs/atngw100_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/avr32/configs/atngw100_defconfig	2007-07-19 16:50:11.000000000 +0900
@@ -925,7 +925,6 @@ CONFIG_MAGIC_SYSRQ=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/avr32/configs/atstk1002_defconfig linux-2.6.22-pendirq/arch/avr32/configs/atstk1002_defconfig
--- linux-2.6.22-orig/arch/avr32/configs/atstk1002_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/avr32/configs/atstk1002_defconfig	2007-07-19 16:50:16.000000000 +0900
@@ -756,7 +756,6 @@ CONFIG_MAGIC_SYSRQ=y
 CONFIG_DEBUG_FS=y
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/i386/defconfig linux-2.6.22-pendirq/arch/i386/defconfig
--- linux-2.6.22-orig/arch/i386/defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/i386/defconfig	2007-07-19 16:50:21.000000000 +0900
@@ -1424,7 +1424,6 @@ CONFIG_UNUSED_SYMBOLS=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/ia64/configs/tiger_defconfig linux-2.6.22-pendirq/arch/ia64/configs/tiger_defconfig
--- linux-2.6.22-orig/arch/ia64/configs/tiger_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/ia64/configs/tiger_defconfig	2007-07-19 16:50:26.000000000 +0900
@@ -1318,7 +1318,6 @@ CONFIG_MAGIC_SYSRQ=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_LOG_BUF_SHIFT=20
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
diff -urNp linux-2.6.22-orig/arch/ia64/configs/zx1_defconfig linux-2.6.22-pendirq/arch/ia64/configs/zx1_defconfig
--- linux-2.6.22-orig/arch/ia64/configs/zx1_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/ia64/configs/zx1_defconfig	2007-07-19 16:50:31.000000000 +0900
@@ -1533,7 +1533,6 @@ CONFIG_MAGIC_SYSRQ=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_LOG_BUF_SHIFT=17
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
diff -urNp linux-2.6.22-orig/arch/ia64/defconfig linux-2.6.22-pendirq/arch/ia64/defconfig
--- linux-2.6.22-orig/arch/ia64/defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/ia64/defconfig	2007-07-19 16:50:36.000000000 +0900
@@ -1482,7 +1482,6 @@ CONFIG_MAGIC_SYSRQ=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_LOG_BUF_SHIFT=20
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
diff -urNp linux-2.6.22-orig/arch/mips/configs/bigsur_defconfig linux-2.6.22-pendirq/arch/mips/configs/bigsur_defconfig
--- linux-2.6.22-orig/arch/mips/configs/bigsur_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/mips/configs/bigsur_defconfig	2007-07-19 16:50:42.000000000 +0900
@@ -1003,7 +1003,6 @@ CONFIG_MAGIC_SYSRQ=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_LOG_BUF_SHIFT=16
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
diff -urNp linux-2.6.22-orig/arch/mips/configs/mipssim_defconfig linux-2.6.22-pendirq/arch/mips/configs/mipssim_defconfig
--- linux-2.6.22-orig/arch/mips/configs/mipssim_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/mips/configs/mipssim_defconfig	2007-07-19 16:50:54.000000000 +0900
@@ -855,7 +855,6 @@ CONFIG_ENABLE_MUST_CHECK=y
 # CONFIG_UNUSED_SYMBOLS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_LOG_BUF_SHIFT=14
 # CONFIG_DETECT_SOFTLOCKUP is not set
 # CONFIG_SCHEDSTATS is not set
diff -urNp linux-2.6.22-orig/arch/mips/configs/pnx8550-jbs_defconfig linux-2.6.22-pendirq/arch/mips/configs/pnx8550-jbs_defconfig
--- linux-2.6.22-orig/arch/mips/configs/pnx8550-jbs_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/mips/configs/pnx8550-jbs_defconfig	2007-07-19 16:51:08.000000000 +0900
@@ -1205,7 +1205,6 @@ CONFIG_MAGIC_SYSRQ=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_LOG_BUF_SHIFT=14
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
diff -urNp linux-2.6.22-orig/arch/mips/configs/pnx8550-stb810_defconfig linux-2.6.22-pendirq/arch/mips/configs/pnx8550-stb810_defconfig
--- linux-2.6.22-orig/arch/mips/configs/pnx8550-stb810_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/mips/configs/pnx8550-stb810_defconfig	2007-07-19 16:51:33.000000000 +0900
@@ -1195,7 +1195,6 @@ CONFIG_MAGIC_SYSRQ=y
 # CONFIG_DEBUG_FS is not set
 CONFIG_HEADERS_CHECK=y
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_LOG_BUF_SHIFT=14
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
diff -urNp linux-2.6.22-orig/arch/mips/configs/yosemite_defconfig linux-2.6.22-pendirq/arch/mips/configs/yosemite_defconfig
--- linux-2.6.22-orig/arch/mips/configs/yosemite_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/mips/configs/yosemite_defconfig	2007-07-19 16:51:38.000000000 +0900
@@ -816,7 +816,6 @@ CONFIG_ENABLE_MUST_CHECK=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_LOG_BUF_SHIFT=14
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/cell_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/cell_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/cell_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/cell_defconfig	2007-07-19 16:51:59.000000000 +0900
@@ -1468,7 +1468,6 @@ CONFIG_MAGIC_SYSRQ=y
 CONFIG_DEBUG_FS=y
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 # CONFIG_DETECT_SOFTLOCKUP is not set
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/celleb_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/celleb_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/celleb_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/celleb_defconfig	2007-07-19 16:52:06.000000000 +0900
@@ -1295,7 +1295,6 @@ CONFIG_MAGIC_SYSRQ=y
 CONFIG_DEBUG_FS=y
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/chrp32_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/chrp32_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/chrp32_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/chrp32_defconfig	2007-07-19 16:52:12.000000000 +0900
@@ -1454,7 +1454,6 @@ CONFIG_MAGIC_SYSRQ=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/ebony_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/ebony_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/ebony_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/ebony_defconfig	2007-07-19 16:52:16.000000000 +0900
@@ -772,7 +772,6 @@ CONFIG_MAGIC_SYSRQ=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/g5_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/g5_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/g5_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/g5_defconfig	2007-07-19 16:52:22.000000000 +0900
@@ -1645,7 +1645,6 @@ CONFIG_MAGIC_SYSRQ=y
 CONFIG_DEBUG_FS=y
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/holly_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/holly_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/holly_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/holly_defconfig	2007-07-19 16:52:26.000000000 +0900
@@ -985,7 +985,6 @@ CONFIG_MAGIC_SYSRQ=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/iseries_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/iseries_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/iseries_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/iseries_defconfig	2007-07-19 16:52:30.000000000 +0900
@@ -1147,7 +1147,6 @@ CONFIG_MAGIC_SYSRQ=y
 CONFIG_DEBUG_FS=y
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/linkstation_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/linkstation_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/linkstation_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/linkstation_defconfig	2007-07-19 16:52:34.000000000 +0900
@@ -1530,7 +1530,6 @@ CONFIG_MAGIC_SYSRQ=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/lite5200_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/lite5200_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/lite5200_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/lite5200_defconfig	2007-07-19 16:52:38.000000000 +0900
@@ -893,7 +893,6 @@ CONFIG_ENABLE_MUST_CHECK=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/maple_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/maple_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/maple_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/maple_defconfig	2007-07-19 16:52:43.000000000 +0900
@@ -1169,7 +1169,6 @@ CONFIG_MAGIC_SYSRQ=y
 CONFIG_DEBUG_FS=y
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/mpc8272_ads_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/mpc8272_ads_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/mpc8272_ads_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/mpc8272_ads_defconfig	2007-07-19 16:52:47.000000000 +0900
@@ -844,7 +844,6 @@ CONFIG_ENABLE_MUST_CHECK=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/mpc8313_rdb_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/mpc8313_rdb_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/mpc8313_rdb_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/mpc8313_rdb_defconfig	2007-07-19 16:52:51.000000000 +0900
@@ -1336,7 +1336,6 @@ CONFIG_ENABLE_MUST_CHECK=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/mpc8540_ads_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/mpc8540_ads_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/mpc8540_ads_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/mpc8540_ads_defconfig	2007-07-19 16:52:56.000000000 +0900
@@ -772,7 +772,6 @@ CONFIG_ENABLE_MUST_CHECK=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/mpc8544_ds_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/mpc8544_ds_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/mpc8544_ds_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/mpc8544_ds_defconfig	2007-07-19 16:53:00.000000000 +0900
@@ -963,7 +963,6 @@ CONFIG_ENABLE_MUST_CHECK=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/mpc8560_ads_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/mpc8560_ads_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/mpc8560_ads_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/mpc8560_ads_defconfig	2007-07-19 16:53:04.000000000 +0900
@@ -852,7 +852,6 @@ CONFIG_ENABLE_MUST_CHECK=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/mpc8568mds_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/mpc8568mds_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/mpc8568mds_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/mpc8568mds_defconfig	2007-07-19 16:53:08.000000000 +0900
@@ -890,7 +890,6 @@ CONFIG_ENABLE_MUST_CHECK=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/mpc85xx_cds_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/mpc85xx_cds_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/mpc85xx_cds_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/mpc85xx_cds_defconfig	2007-07-19 16:53:11.000000000 +0900
@@ -905,7 +905,6 @@ CONFIG_ENABLE_MUST_CHECK=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/mpc8641_hpcn_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/mpc8641_hpcn_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/mpc8641_hpcn_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/mpc8641_hpcn_defconfig	2007-07-19 16:53:15.000000000 +0900
@@ -962,7 +962,6 @@ CONFIG_ENABLE_MUST_CHECK=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/pasemi_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/pasemi_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/pasemi_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/pasemi_defconfig	2007-07-19 16:53:27.000000000 +0900
@@ -1646,7 +1646,6 @@ CONFIG_MAGIC_SYSRQ=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/pmac32_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/pmac32_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/pmac32_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/pmac32_defconfig	2007-07-19 16:53:30.000000000 +0900
@@ -1885,7 +1885,6 @@ CONFIG_MAGIC_SYSRQ=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/ppc64_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/ppc64_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/ppc64_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/ppc64_defconfig	2007-07-19 16:53:34.000000000 +0900
@@ -1801,7 +1801,6 @@ CONFIG_MAGIC_SYSRQ=y
 CONFIG_DEBUG_FS=y
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/ps3_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/ps3_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/ps3_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/ps3_defconfig	2007-07-19 16:53:40.000000000 +0900
@@ -1091,7 +1091,6 @@ CONFIG_ENABLE_MUST_CHECK=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/powerpc/configs/pseries_defconfig linux-2.6.22-pendirq/arch/powerpc/configs/pseries_defconfig
--- linux-2.6.22-orig/arch/powerpc/configs/pseries_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/powerpc/configs/pseries_defconfig	2007-07-19 16:54:16.000000000 +0900
@@ -1580,7 +1580,6 @@ CONFIG_MAGIC_SYSRQ=y
 CONFIG_DEBUG_FS=y
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/sh/configs/r7780rp_defconfig linux-2.6.22-pendirq/arch/sh/configs/r7780rp_defconfig
--- linux-2.6.22-orig/arch/sh/configs/r7780rp_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/sh/configs/r7780rp_defconfig	2007-07-19 16:54:27.000000000 +0900
@@ -1235,7 +1235,6 @@ CONFIG_MAGIC_SYSRQ=y
 CONFIG_DEBUG_FS=y
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_LOG_BUF_SHIFT=14
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
diff -urNp linux-2.6.22-orig/arch/sh/configs/r7785rp_defconfig linux-2.6.22-pendirq/arch/sh/configs/r7785rp_defconfig
--- linux-2.6.22-orig/arch/sh/configs/r7785rp_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/sh/configs/r7785rp_defconfig	2007-07-19 16:54:31.000000000 +0900
@@ -1238,7 +1238,6 @@ CONFIG_MAGIC_SYSRQ=y
 CONFIG_DEBUG_FS=y
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_LOG_BUF_SHIFT=14
 # CONFIG_DETECT_SOFTLOCKUP is not set
 # CONFIG_SCHEDSTATS is not set
diff -urNp linux-2.6.22-orig/arch/sh/configs/se7712_defconfig linux-2.6.22-pendirq/arch/sh/configs/se7712_defconfig
--- linux-2.6.22-orig/arch/sh/configs/se7712_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/sh/configs/se7712_defconfig	2007-07-19 16:54:34.000000000 +0900
@@ -993,7 +993,6 @@ CONFIG_ENABLE_MUST_CHECK=y
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_LOG_BUF_SHIFT=14
 # CONFIG_DETECT_SOFTLOCKUP is not set
 # CONFIG_SCHEDSTATS is not set
diff -urNp linux-2.6.22-orig/arch/sh64/configs/cayman_defconfig linux-2.6.22-pendirq/arch/sh64/configs/cayman_defconfig
--- linux-2.6.22-orig/arch/sh64/configs/cayman_defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/sh64/configs/cayman_defconfig	2007-07-19 16:54:22.000000000 +0900
@@ -999,7 +999,6 @@ CONFIG_MAGIC_SYSRQ=y
 CONFIG_DEBUG_FS=y
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 CONFIG_SCHEDSTATS=y
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/sparc64/defconfig linux-2.6.22-pendirq/arch/sparc64/defconfig
--- linux-2.6.22-orig/arch/sparc64/defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/sparc64/defconfig	2007-07-19 16:54:38.000000000 +0900
@@ -1463,7 +1463,6 @@ CONFIG_MAGIC_SYSRQ=y
 CONFIG_DEBUG_FS=y
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 CONFIG_SCHEDSTATS=y
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/arch/x86_64/defconfig linux-2.6.22-pendirq/arch/x86_64/defconfig
--- linux-2.6.22-orig/arch/x86_64/defconfig	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/arch/x86_64/defconfig	2007-07-19 16:54:43.000000000 +0900
@@ -1522,7 +1522,6 @@ CONFIG_UNUSED_SYMBOLS=y
 CONFIG_DEBUG_FS=y
 # CONFIG_HEADERS_CHECK is not set
 CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_SHIRQ is not set
 CONFIG_DETECT_SOFTLOCKUP=y
 # CONFIG_SCHEDSTATS is not set
 # CONFIG_TIMER_STATS is not set
diff -urNp linux-2.6.22-orig/drivers/char/cyclades.c linux-2.6.22-pendirq/drivers/char/cyclades.c
--- linux-2.6.22-orig/drivers/char/cyclades.c	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/drivers/char/cyclades.c	2007-07-19 17:11:48.000000000 +0900
@@ -1408,7 +1408,7 @@ static irqreturn_t cyy_interrupt(int irq
 	card_base_addr = cinfo->base_addr;
 	index = cinfo->bus_index;
 
-	/* card was not initialized yet (e.g. DEBUG_SHIRQ) */
+	/* card was not initialized yet (e.g. shared IRQ) */
 	if (unlikely(card_base_addr == NULL))
 		return IRQ_HANDLED;
 
diff -urNp linux-2.6.22-orig/drivers/net/e1000/e1000_main.c linux-2.6.22-pendirq/drivers/net/e1000/e1000_main.c
--- linux-2.6.22-orig/drivers/net/e1000/e1000_main.c	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/drivers/net/e1000/e1000_main.c	2007-07-19 17:23:55.000000000 +0900
@@ -1424,10 +1424,11 @@ e1000_open(struct net_device *netdev)
 	    e1000_check_mng_mode(&adapter->hw))
 		e1000_get_hw_control(adapter);
 
-	/* before we allocate an interrupt, we must be ready to handle it.
-	 * Setting DEBUG_SHIRQ in the kernel makes it fire an interrupt
-	 * as soon as we call pci_request_irq, so we have to setup our
-	 * clean_rx handler before we do so.  */
+	/* Before we allocate an interrupt, we must be ready to handle it.
+	 * Any pending interrupts (coming from a device sharing our IRQ line or
+	 * generated in the context of a previous kernel if this is a kdump
+	 * kernel, for example) will come in as soon as we call pci_request_irq,
+	 * so we have to setup our clean_rx handler before we do so.  */
 	e1000_configure(adapter);
 
 	err = e1000_request_irq(adapter);
diff -urNp linux-2.6.22-orig/kernel/irq/manage.c linux-2.6.22-pendirq/kernel/irq/manage.c
--- linux-2.6.22-orig/kernel/irq/manage.c	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/kernel/irq/manage.c	2007-07-19 17:04:50.000000000 +0900
@@ -374,14 +374,12 @@ int setup_irq(unsigned int irq, struct i
 	return 0;
 
 mismatch:
-#ifdef CONFIG_DEBUG_SHIRQ
 	if (!(new->flags & IRQF_PROBE_SHARED)) {
 		printk(KERN_ERR "IRQ handler type mismatch for IRQ %d\n", irq);
 		if (old_name)
 			printk(KERN_ERR "current handler: %s\n", old_name);
 		dump_stack();
 	}
-#endif
 	spin_unlock_irqrestore(&desc->lock, flags);
 	return -EBUSY;
 }
@@ -454,7 +452,6 @@ void free_irq(unsigned int irq, void *de
 		spin_unlock_irqrestore(&desc->lock, flags);
 		return;
 	}
-#ifdef CONFIG_DEBUG_SHIRQ
 	if (handler) {
 		/*
 		 * It's a shared IRQ -- the driver ought to be prepared for it
@@ -464,7 +461,6 @@ void free_irq(unsigned int irq, void *de
 		 */
 		handler(irq, dev_id);
 	}
-#endif
 }
 EXPORT_SYMBOL(free_irq);
 
@@ -537,7 +533,6 @@ int request_irq(unsigned int irq, irq_ha
 
 	select_smp_affinity(irq);
 
-#ifdef CONFIG_DEBUG_SHIRQ
 	if (irqflags & IRQF_SHARED) {
 		/*
 		 * It's a shared IRQ -- the driver ought to be prepared for it
@@ -554,7 +549,6 @@ int request_irq(unsigned int irq, irq_ha
 		} else
 			handler(irq, dev_id);
 	}
-#endif
 
 	retval = setup_irq(irq, action);
 	if (retval)
diff -urNp linux-2.6.22-orig/lib/Kconfig.debug linux-2.6.22-pendirq/lib/Kconfig.debug
--- linux-2.6.22-orig/lib/Kconfig.debug	2007-07-09 08:32:17.000000000 +0900
+++ linux-2.6.22-pendirq/lib/Kconfig.debug	2007-07-19 17:05:52.000000000 +0900
@@ -77,15 +77,6 @@ config DEBUG_KERNEL
 	  Say Y here if you are developing drivers or trying to debug and
 	  identify kernel problems.
 
-config DEBUG_SHIRQ
-	bool "Debug shared IRQ handlers"
-	depends on DEBUG_KERNEL && GENERIC_HARDIRQS
-	help
-	  Enable this to generate a spurious interrupt as soon as a shared
-	  interrupt handler is registered, and just before one is deregistered.
-	  Drivers ought to be able to handle interrupts coming in at those
-	  points; some don't and need to be caught.
-
 config DETECT_SOFTLOCKUP
 	bool "Detect Soft Lockups"
 	depends on DEBUG_KERNEL && !S390





More information about the kexec mailing list