linux-mips
[Top] [All Lists]

Re: MIPS32 cache functions now using c-r4k?

To: "Kevin D. Kissell" <kevink@mips.com>
Subject: Re: MIPS32 cache functions now using c-r4k?
From: Ralf Baechle <ralf@linux-mips.org>
Date: Wed, 16 Apr 2003 16:08:19 +0200
Cc: Hartvig Ekner <hartvig@ekner.info>, Linux MIPS mailing list <linux-mips@linux-mips.org>
In-reply-to: <00c401c30418$0d9d1370$10eca8c0@grendel>; from kevink@mips.com on Wed, Apr 16, 2003 at 02:59:30PM +0200
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <3E9D0C34.38FE2749@ekner.info> <00c401c30418$0d9d1370$10eca8c0@grendel>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Mutt/1.2.5.1i
On Wed, Apr 16, 2003 at 02:59:30PM +0200, Kevin D. Kissell wrote:

> The whole point of creating the generic MIPS32 MMU and cache
> routines was to have something that would run on both 32-bit and
> 64-bit processors.  Who decided to throw them away and abandon 
> support for 32-bit-only CPUs other than the R3000, and why?

Nobody did dump support for 32-bit only processors.

The read behind all this was in part that the pile of c-*.c files had
turned into some sort of barbed wire fence.  Code from c-r4k.c had been
replicated several times - including hundreds (conservative estimate) of
lines of dead code, plenty of bugs and lack of understanding how caches
are working.  At the same time that meant there was no way the old code
could have supported all available processor configurations on some
platforms.

So when I was doing some work related to signal handling I finally gave
up and started cleaning the the mess instead of doing the same change
to 42 copies of a function.

The result of the changes aside of a bunch of bugs - at less than 50% of
the binary size and hundreds of kilobytes of less sources a more generic
kernel with for most people dramatically improved performance.  Yes, a
few bugs crept in but I'd do it again at any time.

  Ralf

<Prev in Thread] Current Thread [Next in Thread>