Messages in this thread | | | Date | Tue, 23 Sep 2003 13:38:19 -0700 | From | Grant Grundler <> | Subject | Re: NS83820 2.6.0-test5 driver seems unstable on IA64 |
| |
On Tue, Sep 23, 2003 at 11:51:22AM -0700, David S. Miller wrote: > > Even x86 pays at least a one cycle penalty for every misaligned access. > > Yes, one cycle, and it's completely lost in the noise when it happens.
Depends on the app - for the networking stack, I agree.
To revisit Ben's comment: if we know something is likely to be misaligned, a RISC processor can efficiently load both parts and merge them (one cycle penalty vs a regular aligned load). Given misaligned accesses are infrequent enough to affect performance, it makes sense to do this in SW because it reduces cost of the HW design/test/mfg cycles.
... > It is an unavoidable axoim in the kernel networking. Unaligned accesses > will happen, and they aren't a bug and therefore not worthy of mention > in the kernel logs any more than "page was freed" :-)
Ok. If the kernel networking stack used get_unaligned() in the one place Peter originally found, x86/sparc64?/et al wouldn't see a difference. It would avoid traps on ia64 and parisc. Bad idea? Any other arches it might help/hurt on?
grant - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |