On Mon, Dec 20, 2010 at 5:46 PM, Mark Kettenis <[email protected]>
wrote:
>> Date: Mon, 20 Dec 2010 17:29:36 +0100
>> From: Mike Belopuhov <[email protected]>
>>
>> On Mon, Dec 20, 2010 at 5:11 PM, Mark Kettenis <[email protected]>
wrote:
>> >> Date: Mon, 20 Dec 2010 16:12:24 +0100
>> >> From: Claudio Jeker <[email protected]>
>> >>
>> >> With the change in rev. 1.99 of subr_pool() changing the limit
>> >> will no longer set the high watermark as well.
>> >> This causes i386 to stop forwading packets on very busy systems because
>> >> the pool thread is not fast enough to replenish the pool. So
reintroduce
>> >> the pool_sethiwat() in this particular case as a workaround.
>> >
>> > Sorry, claudio, but I think you need to fix the driver(s) that have
>> > this issue.  Even with adjusting the pool limits you may still end up
>> > with an empty ring, and the driver should be able to restart itself if
>> > mbufs come available again.  A potential way to fix this is to start a
>> > timeout if you end up with an empty ring because of mbug allocation
>> > failures, and attempt to refill the ring when the timout fires.
>> >
>>
>> i think we should restore the behavior to what it was before until
>> we'll have drivers fixed.
>
> Probably; but shouldn't we just revert the subr_pool.c change in that case?
>

no, that change is correct in any case :)

Reply via email to