Re: HPMC in lba_pat_out8 on rp3440

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Nov 17, 2010 at 09:38:08AM -0500, John David Anglin wrote:
> I also agree that the kernel shouldn't fix unaligned accesses occuring
> in the kernel.  It allows for sloppy coding and the fixup can be a
> major performance hit on strict alignment machines like sparc and hppa.
> 
> It would appear handle_unaligned can't always fixup kernel accesses.
> At least, emulate_ldd causes a hpmc attempting to fixup the ldd in
> init_page_buffers.  This may be because this is a wrong code error
> and the address is in someway invalid.  Maybe more address checking
> is needed.
> 

I'll take a look at emulate_ldd. It's entirely possible that it's broken
and we just haven't noticed because we would so rarely hit one in
userspace. (The only PA2.0 code I know of was the code Thibaut wrote to
do ffmpeg in pa2.0 asm. I imagine something like that wouldn't take
unaligned traps if performance was desired... ;-)

> The unaligned access in __tcp_v6_send_check seems to be caused by
> saddr being misaligned.  It's possible daddr is also misaligned.
> I was going to add a BUG_ON or two to try and get more info.  Don't
> know if emulate_ldd can fix this access.
> 
> In the case of ipv4, it's possible to pad/start packets in a manner
> to make it easier to access the ip header.  Don't know about ipv6.
> This may be what Kyle is suggesting.
> 

Right, I'll take a look at what other arches do and get back to you.

No arch should be taking unaligned traps in the packet recv path, as
that would just add unimaginable amounts of overhead...

--Kyle

> Dave
> -- 
> J. David Anglin                                  dave.anglin@xxxxxxxxxxxxxx
> National Research Council of Canada              (613) 990-0752 (FAX: 952-6602)
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-parisc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux SoC]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux