lkml.org 
[lkml]   [2007]   [Jul]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
SubjectRe: Build error with latest git
Date

[Adding needed CC's]

16 Tem 2007 Pts tarihinde, Larry Finger şunları yazmıştı:
> Using the latest git pull (commit
> abce891a10559343d8ac9f79b46d78afdba63a40), I get the following linker
> error:
>
> block/built-in.o: In function `bsg_init':
> bsg.c:(.init.text+0x43d): undefined reference to `scsi_register_interface'
>
> This is on an x86_64 system with the following .config:

I've hit that also (current git cannot compiled with CONFIG_BLK_DEV_BSG=y
), if i'm not wrongly interpret the Makefile it seems a ordering issue;

Makefile
...
ifeq ($(KBUILD_EXTMOD),)
core-y· · += kernel/ mm/ fs/ ipc/ security/ crypto/ block/
...
vmlinux-init := $(head-y) $(init-y)
vmlinux-main := $(core-y) $(libs-y) $(drivers-y) $(net-y)
...

but block block/bsg.c uses "scsi_register_interface" exported by
drivers/scsi/scsi_sysfs.c which lives in drivers-y. Moving bsg in
drivers/scsi seems solves this issues, see following

Signed-off-by: S.Çağlar Onur <caglar@pardus.org.tr>

block/Kconfig | 8 --------
block/Makefile | 1 -
drivers/scsi/Kconfig | 8 ++++++++
drivers/scsi/Makefile | 1 +
{block => drivers/scsi}/bsg.c | 0
5 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/block/Kconfig b/block/Kconfig
index 1d16b08..2859351 100644
--- a/block/Kconfig
+++ b/block/Kconfig
@@ -51,12 +51,4 @@ config LSF

endif # BLOCK

-config BLK_DEV_BSG
- bool "Block layer SG support"
- depends on SCSI && EXPERIMENTAL
- default y
- ---help---
- Saying Y here will enable generic SG (SCSI generic) v4
- support for any block device.
-
source block/Kconfig.iosched
diff --git a/block/Makefile b/block/Makefile
index 959feeb..4b84d0d 100644
--- a/block/Makefile
+++ b/block/Makefile
@@ -4,7 +4,6 @@

obj-$(CONFIG_BLOCK) := elevator.o ll_rw_blk.o ioctl.o genhd.o scsi_ioctl.o

-obj-$(CONFIG_BLK_DEV_BSG) += bsg.o
obj-$(CONFIG_IOSCHED_NOOP) += noop-iosched.o
obj-$(CONFIG_IOSCHED_AS) += as-iosched.o
obj-$(CONFIG_IOSCHED_DEADLINE) += deadline-iosched.o
diff --git a/drivers/scsi/Kconfig b/drivers/scsi/Kconfig
index 3727231..fbb06de 100644
--- a/drivers/scsi/Kconfig
+++ b/drivers/scsi/Kconfig
@@ -81,6 +81,14 @@ config BLK_DEV_SD
In this case, do not compile the driver for your SCSI host adapter
(below) as a module either.

+config BLK_DEV_BSG
+ bool "Block layer SG support"
+ depends on SCSI && EXPERIMENTAL
+ default y
+ ---help---
+ Saying Y here will enable generic SG (SCSI generic) v4
+ support for any block device.
+
config CHR_DEV_ST
tristate "SCSI tape support"
depends on SCSI
diff --git a/drivers/scsi/Makefile b/drivers/scsi/Makefile
index 0f86895..15de029 100644
--- a/drivers/scsi/Makefile
+++ b/drivers/scsi/Makefile
@@ -139,6 +139,7 @@ obj-$(CONFIG_CHR_DEV_ST) += st.o
obj-$(CONFIG_CHR_DEV_OSST) += osst.o
obj-$(CONFIG_BLK_DEV_SD) += sd_mod.o
obj-$(CONFIG_BLK_DEV_SR) += sr_mod.o
+obj-$(CONFIG_BLK_DEV_BSG) += bsg.o
obj-$(CONFIG_CHR_DEV_SG) += sg.o
obj-$(CONFIG_CHR_DEV_SCH) += ch.o

diff --git a/block/bsg.c b/drivers/scsi/bsg.c
similarity index 100%
rename from block/bsg.c
rename to drivers/scsi/bsg.c


Cheers
--
S.Çağlar Onur <caglar@pardus.org.tr>
http://cekirdek.pardus.org.tr/~caglar/

Linux is like living in a teepee. No Windows, no Gates and an Apache in house!
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2007-07-16 22:41    [from the cache]
©2003-2014 Jasper Spaans. Advertise on this site