On 31 May 2002, Michel Dänzer wrote:
>
> Kernel modules may rely on kernel internal data structures, which may be
> laid out differently in memory by different compilers. I don't think you
> can expect this to work, but if I'm wrong I'm sure Linus will LART me.
> :)

Different compilers may indeed have different layout rules, but I haven't 
heard of any such changes in gcc-3.x, and it would be fairly unexpected. 
Now, if the kernel was compiled with C++ and used virtual inheritance, 
that would be a different issue ;)

There was some discussion on the gcc lists about the proper way to pad 
structures with variable arrays at the end, but as far as I can tell that 
shouldn't affect Linux anyway, and I don't think the behaviour had 
actually changed.

So I think it's more likely that it's either a gcc-3.x bug, or a latent
kernel bug that is exposed by a better compiler (they do happen: places
where parts of the kernel depend on unspecified behaviour. They get fixed
when noticed, but they can be hard to find).

It would probably be a good idea to do a full "strace" on the successful 
and failing cases, and try to see what the difference is in order to hunt 
it down a bit.

                        Linus


_______________________________________________________________

Don't miss the 2002 Sprint PCS Application Developer's Conference
August 25-28 in Las Vegas -- http://devcon.sprintpcs.com/adp/index.cfm

_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to