[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <46A181A5.5010203@cosmosbay.com>
Date: Sat, 21 Jul 2007 05:46:45 +0200
From: Eric Dumazet <dada1@...mosbay.com>
To: Chris Friesen <cfriesen@...tel.com>
CC: Lee Revell <rlrevell@...-job.com>, linux-kernel@...r.kernel.org,
linux-net@...r.kernel.org
Subject: Re: posible latency issues in seq_read
Chris Friesen a écrit :
> Lee Revell wrote:
>> On 7/20/07, Chris Friesen <cfriesen@...tel.com> wrote:
>
>>> We've run into an issue (on 2.6.10) where calling "lsof" triggers lost
>>> packets on our server. Preempt is disabled, and NAPI is enabled.
>
>> Can you reproduce with a recent kernel? Lots of latency issues have
>> been fixed since then.
>
> Unfortunately I have to fix it on this version (the bug was found on
> shipped product), so if there was a difference I'd have to isolate the
> changes and backport them. Also, I can't run the software that triggers
> the problem on a newer kernel as it has dependencies on various patches
> that are not in mainline.
>
> Basically what I'd like to know is whether calling schedule() in
> seq_read() is safe or whether it would break assumptions made by
> seq_file users.
>
It wont help much. seq_read() is fine in itself.
The problem is in established_get_next() and established_get_first() not
allowing softirq processing, while scanning a possibly huge hash table, even
if few sockets are hashed in.
As cond_resched_softirq() was added in linux-2.6.11, you probably *need* to
check the diffs between linux-2.6.10 & linux-2.6.11
files :
include/linux/sched.h
net/core/sock.c (__release_sock() latency)
net/ipv4/tcp_ipv4.c (/proc/net/tcp latency)
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists