kern/100519: Suboptimal network polling
glebius at FreeBSD.org
Fri Aug 11 13:40:39 UTC 2006
The following reply was made to PR kern/100519; it has been noted by GNATS.
From: Gleb Smirnoff <glebius at FreeBSD.org>
To: Arthur Hartwig <arthur.hartwig at nokia.com>
Cc: freebsd-gnats-submit at FreeBSD.org
Subject: Re: kern/100519: Suboptimal network polling
Date: Fri, 11 Aug 2006 17:35:10 +0400
On Wed, Jul 19, 2006 at 07:49:59AM +0000, Arthur Hartwig wrote:
A> Since the netisr is running when netisr_pollmore() is executing and swi_net() the main netisr despatcher loops until netisr is zero, it is sufficient in netisr_pollmore() to just set the bits in netisr and not also call legacy_setsoftnet():
A> replace the two instances of:
A> schednetisrbits(1 << NETISR_POLL | 1 << NETISR_POLLMORE);
A> in netisr_pollmore() by:
A> atomic_set_rel_int(&netisr, (1 << NETISR_POLL | 1 << NETISR_POLLMORE));
Hmm, interesting. Have you done any profiling?
Totus tuus, Glebius.
More information about the freebsd-bugs