Alex deVries writes:
>
> The modutils in the CVS appears to work; I'll get an RPM out tonight for
> others.
>
> But, I use the term 'work' with a grain of salt; the modules appear to
> load, but I get errors like:
> Illegal instruction at c000c0d0 ra=88034ed4
> Unable to handle kernel paging request at virtual address c0008113, epc ==
> c000c0d8, ra == 88034ed4
> Killed
...
I wonder if the kernel is properly synchronzing the I-cache with
the D-cache after loading the module. In general, you need to
writeback the primary D-cache and invalidate the primary I-cache for
the range of addresses occupied by the driver (or simply
index-writeback-invalidate all of the D-cache and index-invalidate all
of the I-cache, if the driver is larger than the cache size).
|