|To:||"David VomLehn (dvomlehn)" <firstname.lastname@example.org>|
|Subject:||Re: 2.6.28 will not boot on 24K processor, ebase incorrectly modified in set_uncached_handler|
|From:||"Kevin D. Kissell" <email@example.com>|
|Date:||Sun, 25 Jan 2009 04:18:23 -0600|
|Cc:||firstname.lastname@example.org, "Dezhong Diao (dediao)" <email@example.com>, "Victor Williams Jr (williavi)" <firstname.lastname@example.org>, "Michael Sundius -X (msundius - Yoh Services LLC at Cisco)" <email@example.com>|
|User-agent:||Thunderbird 126.96.36.199 (Windows/20081209)|
David VomLehn (dvomlehn) wrote:
I remember worrying about why it was "+=" and not "=" when others had problems with that patch. See the thread "NXP STB225 board support" from January 8 or so. When I asked about that, I got a comment that the add operation was correct, but that patch *should* have said "uncached_ebase += (read_c0_ebase() & 0x3ffff000);" I guess uncache_ebase is assumed to contain something interesting in some non-address bits. Try pre-pending "uncached_" to that "ebase"...The 2.6.28 kernel dies in memcpy when called from set_vi_srs_handler on a 24K processor. The problem is that ebase has an invalid value. The original value of ebase comes from a bootmem allocation, but the following code in set_uncached_handler takes a perfectly good kseg0 address and turns it into an invalid kseg1 address. if (cpu_has_mips_r2) ebase += (read_c0_ebase() & 0x3ffff000); This code was added in commit 566f74f6b2f8b85d5b8d6caaf97e5672cecd3e3e.
Regards, Kevin K.
|<Prev in Thread]||Current Thread||[Next in Thread>|
|Previous by Date:||Re: Au1550 with kernel linux-188.8.131.52 (SOLVED), Frank Neuber|
|Next by Date:||Re: [PATCH][MIPS] fix oops in r4k_dma_cache_inv, Shane McDonald|
|Previous by Thread:||2.6.28 will not boot on 24K processor, ebase incorrectly modified in set_uncached_handler, David VomLehn (dvomlehn)|
|Next by Thread:||RE: 2.6.28 will not boot on 24K processor, ebase incorrectly modified in set_uncached_handler, David VomLehn (dvomlehn)|
|Indexes:||[Date] [Thread] [Top] [All Lists]|