linux-mips
[Top] [All Lists]

RE: 2.6.28 will not boot on 24K processor, ebase incorrectly modified in

To: "Kevin D. Kissell" <kevink@paralogos.com>
Subject: RE: 2.6.28 will not boot on 24K processor, ebase incorrectly modified in set_uncached_handler
From: "David VomLehn (dvomlehn)" <dvomlehn@cisco.com>
Date: Sun, 25 Jan 2009 16:50:25 -0500
Authentication-results: rtp-dkim-1; header.From=dvomlehn@cisco.com; dkim=pass ( sig from cisco.com/rtpdkim1001 verified; );
Cc: <linux-mips@linux-mips.org>, "Dezhong Diao (dediao)" <dediao@cisco.com>, "Victor Williams Jr (williavi)" <williavi@cisco.com>, "Michael Sundius -X (msundius - Yoh Services LLC at Cisco)" <msundius@cisco.com>
Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; l=1754; t=1232920227; x=1233784227; c=relaxed/simple; s=rtpdkim1001; h=Content-Type:From:Subject:Content-Transfer-Encoding:MIME-Version; d=cisco.com; i=dvomlehn@cisco.com; z=From:=20=22David=20VomLehn=20(dvomlehn)=22=20<dvomlehn@cis co.com> |Subject:=20RE=3A=202.6.28=20will=20not=20boot=20on=2024K=2 0processor,=20ebase=20incorrectly=20modified=20in=20set_unca ched_handler |Sender:=20 |To:=20=22Kevin=20D.=20Kissell=22=20<kevink@paralogos.com>; bh=BXqohsHEWbPE2dT/MTS0xpFkavViVUpDSf92xFRsphQ=; b=rdKPFDedOx+xMcc/4pslfCUjlcnoyQAlA6US4sXVWZyiEjMPHtROV8hpt4 cSqI+tPKvycp7wCHIv4TVQR4RMTkC930fUyIu6QrqG0raIyO2QB5AmQfSJTL gnyb4mAM8q;
In-reply-to: <497C3C6F.3000209@paralogos.com>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <FF038EB85946AA46B18DFEE6E6F8A28976825D@xmb-rtp-218.amer.cisco.com> <497C3C6F.3000209@paralogos.com>
Sender: linux-mips-bounce@linux-mips.org
Thread-index: Acl+1kXP3jArc75MQT+Qvx8eRtjzGgAYEbsQ
Thread-topic: 2.6.28 will not boot on 24K processor, ebase incorrectly modified in set_uncached_handler
> From: Kevin D. Kissell [mailto:kevink@paralogos.com] 
> Sent: Sunday, January 25, 2009 2:18 AM
> To: David VomLehn (dvomlehn)
> Cc: linux-mips@linux-mips.org; Dezhong Diao (dediao); Victor 
> Williams Jr (williavi); Michael Sundius -X (msundius - Yoh 
> Services LLC at Cisco)
> Subject: Re: 2.6.28 will not boot on 24K processor, ebase 
> incorrectly modified in set_uncached_handler
> 
> David VomLehn (dvomlehn) wrote:
> > 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.
> >   
> 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"...

Just adding uncached_ to the ebase doesn't appear to work. Looking at
the git
log makes it a bit unclear as to exactly who made this change, but it
would
be helpful to know what was intended.

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