netdev
[Top] [All Lists]

Re: QoS _put, _get and _delete class ops semantic

To: jamal <hadi@xxxxxxxxxx>
Subject: Re: QoS _put, _get and _delete class ops semantic
From: Martin Devera <devik@xxxxxx>
Date: Thu, 11 Apr 2002 15:41:30 +0200 (CEST)
Cc: netdev@xxxxxxxxxxx, kuznet@xxxxxxxxxxxxx
In-reply-to: <Pine.GSO.4.30.0204101918200.24339-100000@xxxxxxxxxxxxxxxx>
Sender: owner-netdev@xxxxxxxxxxx
> > Unfortunately there is delete class op which seems to do
> > almost the same as put.
> > Do you know rationale behind it ? Why we have both put
> > and delete and what tc framework expect from qdisc ?
> 
> Alexey can give a better answer.

probably he could step in here ;)

> Typically put() is the backup for delete. Should delete fail
> to destroy because of reference counts being non-zero, put will catch it.

So that if I understand it correctly: delete can only assure
that class is "invisible" from now to subsequent gets/walks
and other uses and leave actual destroy to the last put.
Do you think that it is reasonable ?

> CBQ is an easier scheduler to see this. For a fun one look at the ATM
> scheduler.

I looked at them but I hate to blindly copy-n-paste code without
in-depth knowledge of interface's expectation. Especially when
yesterday (after year of flawless operation) someone made my
code oops during class deletion under high load ;-\

thanks, Martin


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