Re: Re: problems compiling enbd-2.4.32pre and fr1-2.16 under kernel 2.6.8.1

edward mzj <[email protected]>
Newsgroups gmane.linux.enbd.general
Message-ID <[email protected]>
Hi, peter
> It is so. It is passing long division to an external routine written in
> assembler!

isn't that expected? do you mean that gcc should convert the code directly 
to assembler codes, instead of calling a external function?

i thought the later one was expected. and that's the __udivdi3. 

actually the kerenl src tree does have code to implement the __udivdi3, but
it's intended to be used under arm and other arch., not the i386 arch.

are you sure you haven't defined a custom __udivdi3 by yourself or by other 
kernel patches you applied to your kernel or by something else?

could you nm the md.o to make sure the __udivdi3 is not referenced in your md.o?

> Evidently my compiler (2.95.4) has no problem with the division with or
> without the cast. I'll add the cast into the patch. 

is it safe to add a cast there? i mean would the cast-first-then-divde cause
problems? what if the ignored dword is not equal to zero? could that happen?

> Doesn't the cast fix it??

i'm sure adding the cast to the realspeed line could fix it, it would be a pure
32-bit operation then. but i'm doubting should a cast be placed there, see above.
 
> But that's only because your fixdep has moved. Change the line in the
> Makefile to point to where it is in your src. Anyone know when it
> moved?
> 
> > 
> > make[1]: Entering directory `/usr/src/linux-2.6.8.1'
> > make -f /usr/src/nbd-2.4.32/kernel/linux-2.6.x/scripts/Makefile.build
> > obj=/usr/src/nbd-2.4.32/kernel/linux-2.6.x/scripts
> > make[2]: *** No rule to make target `/usr/src/nbd-2.4.32/kernel/linux-2.6.x/scripts/fixdep.c',
> > needed by `/usr/src/nbd-2.4.32/kernel/linux-2.6.x/scripts/fixdep'.  Stop.
>                                                     ^^^^^^^^^^^^^^^
>                                                     scripts/basic/fixdep.c
> 
what's suprising me is that it keeps looking for the src files in the scripts 
dir of the enbd src tree, instead of the kernel src tree.

> I thought I suggested what to last time! Point the Makefile at where
> yours is (throughout the file) and all should be OK (crosses fingers).
> Let me know what happens! I'd like very much to know.

i'm sorry, but i'm unable to do that 'cause i'm not a programmer. i just have
a tiny little knowledge of c. to me, touching the Makefile could be a nightmare.

i copied fixdep.c from kernel src dir, and restart the make progress. this time, 
the make stopped after the fixdep was built, complaining the missing getksyms.c.
i'll try to copy the other src files needed and re-build the enbd tonight.


edward

_________________________________________________________
Do You Yahoo!?
150万曲MP3疯狂搜,带您闯入音乐殿堂
http://cn.rd.yahoo.com/mail_cn/tag/yisou/music/*http://music.yisou.com/
美女明星应有尽有,搜遍美图、艳图和酷图
http://cn.rd.yahoo.com/mail_cn/tag/yisou/image/*http://image.yisou.com
1G就是1000兆,雅虎电邮自助扩容!
http://cn.rd.yahoo.com/mail_cn/tag/1g/*http://cn.mail.yahoo.com/event/mail_1g/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.