On Thu, Sep 17, 2009 at 4:28 PM, Joerg Schilling <[email protected]> wrote: > After a long time, I tried again to load/run an own Solaris driver and > failed with the following messages: > > Sep 17 15:24:44 opt genunix: [ID 286029 kern.notice] relocation error: > R_AMD64_32: > Sep 17 15:24:44 opt genunix: [ID 720415 kern.notice] file > /kernel/drv/amd64/scg: > Sep 17 15:24:44 opt genunix: [ID 370954 kern.notice] symbol : > Sep 17 15:24:44 opt genunix: [ID 780480 kern.notice] value 0xfffffffff7e9e370 > does not fit > Sep 17 15:24:44 opt genunix: [ID 286029 kern.notice] relocation error: > R_AMD64_32: > Sep 17 15:24:44 opt genunix: [ID 720415 kern.notice] file > /kernel/drv/amd64/scg: > Sep 17 15:24:44 opt genunix: [ID 370954 kern.notice] symbol scgintr: > Sep 17 15:24:44 opt genunix: [ID 780480 kern.notice] value 0xfffffffff7e9dbd0 > does not fit > Sep 17 15:24:44 opt genunix: [ID 286029 kern.notice] relocation error: > R_AMD64_32: > Sep 17 15:24:44 opt genunix: [ID 720415 kern.notice] file > /kernel/drv/amd64/scg: > Sep 17 15:24:44 opt genunix: [ID 370954 kern.notice] symbol scgintr: > Sep 17 15:24:44 opt genunix: [ID 780480 kern.notice] value 0xfffffffff7e9dbd0 > does not fit > Sep 17 15:24:44 opt genunix: [ID 286029 kern.notice] relocation error: > R_AMD64_32: > Sep 17 15:24:44 opt genunix: [ID 720415 kern.notice] file > /kernel/drv/amd64/scg: > Sep 17 15:24:44 opt genunix: [ID 370954 kern.notice] symbol : > Sep 17 15:24:44 opt genunix: [ID 780480 kern.notice] value 0xffffffffc00da6a0 > does not fit > Sep 17 15:24:44 opt genunix: [ID 286029 kern.notice] relocation error: > R_AMD64_32: > Sep 17 15:24:44 opt genunix: [ID 720415 kern.notice] file > /kernel/drv/amd64/scg: > Sep 17 15:24:44 opt genunix: [ID 370954 kern.notice] symbol : > Sep 17 15:24:44 opt genunix: [ID 780480 kern.notice] value 0xffffffffc00da688 > does not fit > Sep 17 15:24:44 opt genunix: [ID 286029 kern.notice] relocation error: > R_AMD64_32: > Sep 17 15:24:44 opt genunix: [ID 720415 kern.notice] file > /kernel/drv/amd64/scg: > Sep 17 15:24:44 opt genunix: [ID 370954 kern.notice] symbol sense_keys: > Sep 17 15:24:44 opt genunix: [ID 780480 kern.notice] value 0xfffffffffbcef478 > does not fit > Sep 17 15:24:44 opt genunix: [ID 286029 kern.notice] relocation error: > R_AMD64_32: > Sep 17 15:24:44 opt genunix: [ID 720415 kern.notice] file > /kernel/drv/amd64/scg: > Sep 17 15:24:44 opt genunix: [ID 370954 kern.notice] symbol sense_keys: > Sep 17 15:24:44 opt genunix: [ID 780480 kern.notice] value 0xfffffffffbcef478 > does not fit > Sep 17 15:24:44 opt genunix: [ID 399259 kern.notice] do_relocations: > /kernel/drv/amd64/scg do_relocate failed > Sep 17 15:24:44 opt genunix: [ID 603676 kern.notice] scg error doing > relocations > > the compilation was done with: > > cc -m64 -Xa -m64 -v -O -Wu,-xmodel=kernel -xildoff > -W0,-noglobal -Qn -DSCHILY_BUILD -IOBJ/i386-sunos5-cc64 > -I../../incs/i386-sunos5-cc64 -I../../include -D__SVR4 -D__SVR4 -DSVR4 > -DDEBUG > -DKERNEL -D_KERNEL -c -o OBJ/i386-sunos5-cc64/scg.o scg.c > > ld -r -o OBJ/i386-sunos5-cc64/scg OBJ/i386-sunos5-cc64/scg.o > > This did work a long time, so it seems that something did change. > > BTW: I cannot see and significant difference to how the Solaris SCSI drivers > like > e.g. sd.c are compiled. > > Jörg
Hello Joerg, this looks like you missed an amd64 (kernel module-) specific compiler flag. Please try, if it helps after you added the following to CFLAGS: for gcc: -mcmodel=kernel for Studio: I don't know the translation from memory, because I always prefer gcc and hardly use SUNWspro at all. -- %martin _______________________________________________ opensolaris-discuss mailing list [email protected]
