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]

Reply via email to