[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[altq 736] Re: two calls




Lucio Mina wrote:
> In the scheduler en_start() function make two calls to cbq_dequeue(): POLL
> and REMOVE in altq3.0 or PEEK and DEQUEUE in altq2.2.
> What is not sufficient the REMOVE/DEQUE call?
> What is the POLL/PEEK call purpose?

The DEQUEUE operation is a normal dequeue but the POLL operation
doesn't remove the returned packet from the queue.

Some network device drivers try to check if there are enough resources
(e.g., buffer space or DMA descriptors) for the next packet, and
need a mechanism to poll the next packet to dequeue.

-Kenjiro