From mboxrd@z Thu Jan 1 00:00:00 1970 In-Reply-To: <1068977831.681.8.camel@gaston> References: <20031115210449.GA10105@suse.de> <20031115222430.GA13820@suse.de> <200311152230.hAFMUwT32990@makai.watson.ibm.com> <20031115224342.GA16897@suse.de> <200311152259.hAFMxGT27464@makai.watson.ibm.com> <1068977831.681.8.camel@gaston> Mime-Version: 1.0 (Apple Message framework v606) Content-Type: text/plain; charset=US-ASCII; format=flowed Message-Id: <3C0F7C71-185D-11D8-976A-000393DBC2E8@motorola.com> Cc: Olaf Hering , linuxppc-dev list , Alan Modra , David Edelsohn From: Kumar Gala Subject: Re: kernel oops due to unaligned access with lswi Date: Sun, 16 Nov 2003 11:49:32 -0600 To: benh@kernel.crashing.org Sender: owner-linuxppc-dev@lists.linuxppc.org List-Id: If Ben's comments are correct simply removing -mstring as an option passed to the build should get the desired behavior. - kumar On Nov 16, 2003, at 4:17 AM, Benjamin Herrenschmidt wrote: > > On Sun, 2003-11-16 at 09:59, David Edelsohn wrote: >> I didn't mean that lswi cannot take an alignment exception on some >> PPC implementations, but that lswi is suppose to be able to handle >> block >> loads from addresses with arbitrary alignment > > I remember beeing regulary told (I think by Apple while I was still > doing MacOS hacking) that those string instructions were evil, > deprecated, and should be avoided as they weren't peforming better > than the equivalent set of load/store instructions... Is this > still true ? In which case we may want to avoid generating them > from gcc.. > > Also, if the 601 effectively gets alignement exceptions on these, > it's quite bad to have them implicitely generated by gcc for memcpy's > since our OFs seem to not implement the alignement handler for them, > thus breaking our boot wrappers. > > Finally, the pem32b at least seem to be clear about not encouraging > to use these especially on non-aligned accesses. It looks like a > weird optimisation to do for memcpy... > > Ben. > > ** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/