Re: patch: Action repeat
From: jamal <hidden>
Date: 2005-05-04 11:46:34
On Mon, 2005-02-05 at 17:06 +0200, Thomas Graf wrote:
* jamal [ref] 2005-05-02 08:10
[..]
quoted
I am beginning to think that perhaps classid should stay as a local scope metadata and what Patrick suggested maybe the way out. Although i have to admit I dont like a generic function to have a parameter that only a very small set of users find useful. If we are going to allow a structure to be passed back and forth, perhaps it should also carry other things (in addition to _result). Need to think a little.What about if we introduce something like struct tcf_pkt_info as we have it for ematches? I'm using it intensly to share information from the classifier to ematches to extend and customize existing classifier.
Basically, something along those lines (eg struct tca_pkt_info) in which the tcf_result is one of the components should do it. I would be satisfied with this being the structure in the ->act() parameters because then it could also be used to pass action-metadata around (no action written so far needs such coordination, but its been one of those things i have been thinking of for some dynamic creations for example where the return code is insufficient to describe things). Patrick, either you or i could do it. It doesnt matter if at the moment the structure only contains tcf_result or elements of tcf_result because i will add more to it later. Then we could kill access to tc_classid in exec()
We could declare tc_classid as being global by definition and hide the current use in the API? I'd really like to be able to transfer classification results from one device to another.
since tc_classid suddenly becomes available theres no question about the need for it being global - which is selectable at the meta action. Global I believe means you dont reset it when you clone/copy. skb->tc_verd is only cleared when we free the skb at the moment and transfered when we clone or copy. A bit or two could be reserved in the tc_verd to say "clear tc_classid" and have the meta action decide if it is global(dont clear) or not(clear - current behavior) during clone/copy . Does this sound reasonable? cheers, jamal