netdev
[Top] [All Lists]

[HELP] Packet scheduler

To: Alexey Kuznetsov <kuznet@xxxxxxxxxxxxx>
Subject: [HELP] Packet scheduler
From: Hanak David <dhanak@xxxxxxxxxx>
Date: 09 Dec 1999 11:45:10 +0100
Cc: IP Networking <netdev@xxxxxxxxxxxxxxxxxxxxxxx>
In-reply-to: Hanak David's message of "08 Dec 1999 17:24:30 +0100"
Sender: owner-netdev@xxxxxxxxxxx
User-agent: Gnus/5.0802 (Gnus v5.8.2) Emacs/20.4
Hi!

I'm writing a WFQ packet scheduling algorithm for the Linux kernel.
Based on scheduler sources shipped with the kernel, I managed to get
the hang of it and it works fine.  Only I get warnings saying:

   kmem_grow: Called nonatomically from int - size-64

This most probably happens in the enqueue or the dequeue function,
since this happens only when there is heavy traffic, and also stops
after a while.  (When enough memory is already allocated, I figure.)
I don't use any other sub-schedulers (sub-classes, if you like), so
everything inside these two functions is my own code.  (Apart from few
kfree_skb calls.)

My question is: what should I add to avoid this?  Is a pair of
start_bh_atomic() end_bh_atomic() calls missing?  What should be
protected with these functions at all?  (And what needn't?)

If you need a part of code, I gladly send it...  Could you please
answer in private mail, beacuse I'm not subscribed to the list.

Thanks a lot,

David Hanak

<Prev in Thread] Current Thread [Next in Thread>