Skip to contentSkip to conversation

fix CCISS with PROC_FS=n

PATCH In review Adrian Bunk 2 participants 3 messages Aug 9, 2004 Block layer

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 fix CCISS with PROC_FS=n

I got the following compile error in 2.6.8-rc3-mm2 with CONFIG_PROC_FS=n:

<-- snip -->

...
LD .tmp_vmlinux1
drivers/built-in.o(.text+0x1b221c): In function `do_cciss_intr':
: undefined reference to complete_scsi_command' drivers/built-in.o(.text+0x1b2d18): In function cciss_init_one':
: undefined reference to cciss_scsi_setup' drivers/built-in.o(.text+0x1b2fd3): In function cciss_remove_one':
: undefined reference to `cciss_unregister_scsi'
make: *** [.tmp_vmlinux1] Error 1

<-- snip -->

The following patch fixes this issue:

drivers/block/cciss.c renamed from drivers/block/cciss.c.old +2 -1
@@ -185,10 +185,11 @@
         }
         return c;
 }
-#ifdef CONFIG_PROC_FS
 
 #include "cciss_scsi.c"		/* For SCSI tape support */
 
+#ifdef CONFIG_PROC_FS
+
 /*
  * Report information about this controller.
  */
#1 lore raw
Quoted 26 lines · Adrian Bunk

I got the following compile error in 2.6.8-rc3-mm2 with CONFIG_PROC_FS=n:

<-- snip -->

...
LD .tmp_vmlinux1
drivers/built-in.o(.text+0x1b221c): In function `do_cciss_intr':
: undefined reference to complete_scsi_command' drivers/built-in.o(.text+0x1b2d18): In function cciss_init_one':
: undefined reference to cciss_scsi_setup' drivers/built-in.o(.text+0x1b2fd3): In function cciss_remove_one':
: undefined reference to `cciss_unregister_scsi'
make: *** [.tmp_vmlinux1] Error 1

<-- snip -->

The following patch fixes this issue:

drivers/block/cciss.c line 189

Quoted 6 lines
drivers/block/cciss.c renamed from drivers/block/cciss.c.old +0 -1
@@ -185,10 +185,11 @@
         }
         return c;
 }
-#ifdef CONFIG_PROC_FS
 
 #include "cciss_scsi.c"		/* For SCSI tape support */

We use /proc to hook into the SCSI subsystem. If you do not build /proc support into your kernel then you should also disable tape support in the driver.

Thanks,
mikem

Quoted 7 lines
drivers/block/cciss.c renamed from drivers/block/cciss.c.old +2 -0
+#ifdef CONFIG_PROC_FS
+
 /*
  * Report information about this controller.
  */
 
#2 lore raw
Quoted 8 lines · mikem

...

Quoted 3 lines

-#ifdef CONFIG_PROC_FS

#include "cciss_scsi.c" /* For SCSI tape support */

We use /proc to hook into the SCSI subsystem. If you do not build /proc support into your kernel then you should also disable tape support in the driver.
...

Thanks for this informaition. Better patch below.

drivers/block/Kconfig renamed from drivers/block/Kconfig.old +1 -1
@@ -166,7 +166,7 @@
 
 config CISS_SCSI_TAPE
 	bool "SCSI tape drive support for Smart Array 5xxx"
-	depends on BLK_CPQ_CISS_DA && SCSI
+	depends on BLK_CPQ_CISS_DA && SCSI && PROC_FS
 	help
 	  When enabled (Y), this option allows SCSI tape drives and SCSI medium
 	  changers (tape robots) to be accessed via a Compaq 5xxx array