Actually, btfixup is self-modifying code, but the modification is done at
boot time and then are all I-caches flushed. From that time the kernel code
does not change.
We needed it a lot - sparc32 has two completely incompatible mmus, 3
incompatible IRQ handlings, etc. - and all that is done by one single image
kernel. We used indirect calls before, but it was way slower.
Cheers,
Jakub
___________________________________________________________________
Jakub Jelinek | jj@sunsite.mff.cuni.cz | http://sunsite.mff.cuni.cz
Administrator of SunSITE Czech Republic, MFF, Charles University
___________________________________________________________________
Ultralinux - first 64bit OS to take full power of the UltraSparc
Linux version 2.1.89 on a sparc64 machine (498.80 BogoMips).
___________________________________________________________________
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu