On 02.08.2005 [02:03:59 +0200], Patrick McHardy wrote:
> Nishanth Aravamudan wrote:
> > On 01.08.2005 [15:11:48 -0600], Josip Loncaric wrote:
> >
> >>Line 589 of linux-2.6.11.10/net/sunrpc/svcsock.c is obviously wrong:
> >>
> >> skb->stamp.tv_usec = xtime.tv_nsec * 1000;
> >>
> >>To convert nsec to usec, one should divide instead of multiplying:
> >>
> >> skb->stamp.tv_usec = xtime.tv_nsec / 1000;
> >>
> >>The same bug could be present in the latest kernels, although I haven't
> >>checked. This bug makes svc_udp_recvfrom() timestamps incorrect.
> >
> >
> > Agreed, the conversion is wrong. I think the code is buggy period, as it
> > accesses xtime without grabbing the xtime_lock first. Following patch
> > should fix both issues.
> >
> > Description: This function incorrectly multiplies a nanosecond value by
> > 1000, instead of dividing by 1000, to obtain a corresponding microsecond
> > value. Fix the math. Also, the function incorrectly accesses xtime
> > without using the xtime_lock. Fixed as well. Patch is compile-tested.
>
> Depending on in which release you want this patch included, you might
> want to redo it against Dave's net-2.6.14 tree. It includes a patch that
> changes skb->stamp to an offset against a base timestamp.
Ok, I'll try and get around to rediff'ing tonight or tomorrow. Thanks
for the feedback!
<snip>
> PS: I'll submit the patch to break compilation for unconverted users
> ASAP.
Thanks,
Nish
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
|
|