On 16:02 Wed 17 Mar , Ralf Baechle wrote: > The workaround in http://sourceware.org/ml/binutils/2009-11/msg00387.html > will also cause problems calling functions with bits 28..29 set, that is Yes. If all functions address doesn't have 28..29 set, this patch will not have any side effect. That means all functions should reside in two ranges: 0x80000000..0x8fffffff 0xc0000000..0xcfffffff > in the ranges 0x81000000..0xbffffff and 0xd0000000..0xffffffff. The ^^^^^^^^^^ I think you mean 0x90000000, right? > first range is not much of a problem as only the kernel proper resides > there and the kernel load address is manually selected in the Makefile. > The 2nd range might be used for under certain circumstances. It seems the Loongson kernel I compiled satisfies the requirement I listed above: ffffffff80200000 A _text ... ffffffff8089bbe0 A _end So, if I understand it correctly, as long as the kernel size is smaller than 254MB, the patch should be ok. Is there anything I overlooked? Zhang, Le