Hi,all
    In the openvswitch code file include\linux\openvswitch.h, there's 4
defined cmds, as
enum ovs_packet_cmd{
    OVS_PACKET_CMD_UNSPEC,
    OVS_PACKET_CMD_MISS,
    OVS_PACKET_CMD_ACTION,
    OVS_PACKET_CMD_EXECUTE
}

However, in datapath\datapath.c, there is only the handler for
the OVS_PACKET_CMD_EXECUTE command.
static struct genl_ops dp_packet_genl_ops[] = {
{ .cmd = OVS_PACKET_CMD_EXECUTE,
  .flags = GENL_ADMIN_PERM, /* Requires CAP_NET_ADMIN privilege. */
  .policy = packet_policy,
  .doit = ovs_packet_cmd_execute
}
};
Is anyone know where is the handler for other cmds, such as
the OVS_PACKET_CMD_MISS?
I also check the codes in the datapath.c, with the function
static int queue_userspace_packet(struct net *net, int dp_ifindex,
  struct sk_buff *skb,
  const struct dp_upcall_info *upcall_info)

However, it seems only generate and send the cmd
through dp_packet_genl_family channel.

Anyone could give some suggestion? Thanks a lot!



-- 
Best wishes!
Baohua
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to