> Adrian Saileanu wrote:
>> I read the sched/qdiscs code from kernel source ... and I have some
>> questions :
>>
>> When the .enqueue, .dequeue, .drop, .requeue functions are called ?
>
> Do you mean in sfq.c - ie sfq_enqueue etc. Maybe you mean something else.
Yes, I ment the functions in the Qdisc_ops struct :
+static struct Qdisc_ops dup_qdisc_ops = {
+ .next = NULL,
+ .cl_ops = NULL,
+ .id = "sfq",
+ .priv_size = sizeof(struct sfq_sched_data),
+ .enqueue = sfq_enqueue,
+ .dequeue = sfq_dequeue,
+ .requeue = sfq_requeue,
+ .drop = sfq_drop,
+ .init = sfq_init,
+ .reset = sfq_reset,
+ .destroy = NULL,
+ .change = sfq_init,
+ .dump = sfq_dump,
+ .owner = THIS_MODULE,
+};
> What
>> is the event that triggers them and how often this event apears ( per
>> second ? ) ?
>
> I don't know as such, but always assumed that when attached to HTB - a
> packet gets enqueued if there aren't enough (c)tokens to send it and
> dequeued when there are. As for timing I don't think sfq uses any - it's
> up to whatever it is attached to.
>
Ok, the packet gets enqueued ... and the queue gets full. Then if a new
packet arrives and the queue is still full ( it has not been dequeued )
then this packet is dropped. My question is ... is the queue dequeued
when it is full ? Or t can be dequeued even when the maximum has not
been reatched ? When this .dequeue function is called ?
> sfq_drop is called from sfq_enqueue when the queue is full. It drops
> from the longest slot.
>
I know this ...
> requeue - don't know.
>
> Andy.
>
> _______________________________________________
> LARTC mailing list / [EMAIL PROTECTED]
> http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/
>
Adrian Saileanu
Netmaster Communications Srl
address: Str. Ion Brezoianu Nr. 20
Sector 1, Bucuresti, Romania
office: +40 21 315 92 00
mobile: +40 723 979 586
email: [EMAIL PROTECTED]
_______________________________________________
LARTC mailing list / [EMAIL PROTECTED]
http://mailman.ds9a.nl/mailman/listinfo/lartc HOWTO: http://lartc.org/