]> asedeno.scripts.mit.edu Git - linux.git/blobdiff - include/net/pkt_cls.h
nfsd: Allow nfsd_vfs_write() to take the nfsd_file as an argument
[linux.git] / include / net / pkt_cls.h
index 98be18ef1ed3400739120e354ba1c5082bc94770..e553fc80eb230ec4dade970629de72fd9fde3652 100644 (file)
@@ -70,15 +70,6 @@ static inline struct Qdisc *tcf_block_q(struct tcf_block *block)
        return block->q;
 }
 
-int __tc_indr_block_cb_register(struct net_device *dev, void *cb_priv,
-                               tc_indr_block_bind_cb_t *cb, void *cb_ident);
-int tc_indr_block_cb_register(struct net_device *dev, void *cb_priv,
-                             tc_indr_block_bind_cb_t *cb, void *cb_ident);
-void __tc_indr_block_cb_unregister(struct net_device *dev,
-                                  tc_indr_block_bind_cb_t *cb, void *cb_ident);
-void tc_indr_block_cb_unregister(struct net_device *dev,
-                                tc_indr_block_bind_cb_t *cb, void *cb_ident);
-
 int tcf_classify(struct sk_buff *skb, const struct tcf_proto *tp,
                 struct tcf_result *res, bool compat_mode);
 
@@ -137,32 +128,6 @@ void tc_setup_cb_block_unregister(struct tcf_block *block, flow_setup_cb_t *cb,
 {
 }
 
-static inline
-int __tc_indr_block_cb_register(struct net_device *dev, void *cb_priv,
-                               tc_indr_block_bind_cb_t *cb, void *cb_ident)
-{
-       return 0;
-}
-
-static inline
-int tc_indr_block_cb_register(struct net_device *dev, void *cb_priv,
-                             tc_indr_block_bind_cb_t *cb, void *cb_ident)
-{
-       return 0;
-}
-
-static inline
-void __tc_indr_block_cb_unregister(struct net_device *dev,
-                                  tc_indr_block_bind_cb_t *cb, void *cb_ident)
-{
-}
-
-static inline
-void tc_indr_block_cb_unregister(struct net_device *dev,
-                                tc_indr_block_bind_cb_t *cb, void *cb_ident)
-{
-}
-
 static inline int tcf_classify(struct sk_buff *skb, const struct tcf_proto *tp,
                               struct tcf_result *res, bool compat_mode)
 {
@@ -539,9 +504,26 @@ tcf_match_indev(struct sk_buff *skb, int ifindex)
 }
 
 int tc_setup_flow_action(struct flow_action *flow_action,
-                        const struct tcf_exts *exts);
+                        const struct tcf_exts *exts, bool rtnl_held);
+void tc_cleanup_flow_action(struct flow_action *flow_action);
+
 int tc_setup_cb_call(struct tcf_block *block, enum tc_setup_type type,
-                    void *type_data, bool err_stop);
+                    void *type_data, bool err_stop, bool rtnl_held);
+int tc_setup_cb_add(struct tcf_block *block, struct tcf_proto *tp,
+                   enum tc_setup_type type, void *type_data, bool err_stop,
+                   u32 *flags, unsigned int *in_hw_count, bool rtnl_held);
+int tc_setup_cb_replace(struct tcf_block *block, struct tcf_proto *tp,
+                       enum tc_setup_type type, void *type_data, bool err_stop,
+                       u32 *old_flags, unsigned int *old_in_hw_count,
+                       u32 *new_flags, unsigned int *new_in_hw_count,
+                       bool rtnl_held);
+int tc_setup_cb_destroy(struct tcf_block *block, struct tcf_proto *tp,
+                       enum tc_setup_type type, void *type_data, bool err_stop,
+                       u32 *flags, unsigned int *in_hw_count, bool rtnl_held);
+int tc_setup_cb_reoffload(struct tcf_block *block, struct tcf_proto *tp,
+                         bool add, flow_setup_cb_t *cb,
+                         enum tc_setup_type type, void *type_data,
+                         void *cb_priv, u32 *flags, unsigned int *in_hw_count);
 unsigned int tcf_exts_num_actions(struct tcf_exts *exts);
 
 struct tc_cls_u32_knode {