On Fri, Sep 19, 2008 at 11:12:22AM +0100, Maciej W. Rozycki wrote:
> > Which is a truely weird operation - but MIPS R2 happens to have a wonderful
> > instruction for this operation, WSBH / DSBH.
> Ah, finally a justification for the R2 ISA!
As you may recall the real reason is that this instruction was designed
not by engineers but patent law. Which is f*cked into the head but ...
> Seriously though, I smell a caller somewhere fails to call csum_fold() on
> the result obtained from csum_partial() where it should, so it would be
> good to fix the bug rather than trying to cover it. Bryan, would you be
> able to track down the caller?
Not quite. Internally the IP stack maintains the checksum as a 32-bit
value for performance sake. It only folds it to 16-bit when it has to.
> I can see you have done the microoptimisation I had in mind meanwhile --
> thanks for saving me the effort. ;) There is a delay slot to fill left
> though -- will you take care of it too?
Will do - just couldn't be bothered (too) late last night ...