On Wed, Nov 14, 2012 at 10:52 AM, Ansis Atteka <aatt...@nicira.com> wrote:
> On Tue, Nov 13, 2012 at 11:55 PM, Jesse Gross <je...@nicira.com> wrote: > > On Tue, Nov 13, 2012 at 9:52 AM, Ansis Atteka <aatt...@nicira.com> > wrote: > >> > >> diff --git a/datapath/datapath.c b/datapath/datapath.c > >> index e359ac0..44828c6 100644 > >> --- a/datapath/datapath.c > >> +++ b/datapath/datapath.c > >> @@ -590,6 +590,7 @@ static int validate_set(const struct nlattr *a, > >> const struct ovs_key_ipv4_tunnel *tun_key; > >> const struct ovs_key_ipv6 *ipv6_key; > >> > >> + case OVS_KEY_ATTR_SKB_MARK: > >> case OVS_KEY_ATTR_PRIORITY: > >> case OVS_KEY_ATTR_TUN_ID: > >> case OVS_KEY_ATTR_ETHERNET: > > > > > > Father down in this file, in ovs_packet_cmd_execute(), we should also > mark > > the skb with anything that we receive in the metadata. > > Do you mean something like this in the ovs_packet_cmd_execute() function: > > OVS_CB(packet)->flow = flow; > packet->priority = flow->key.phy.priority; > + packet->mark = flow->key.phy.mark; Yes, that's right. > > > > Can you also plumb skb_mark through userspace a little more? We don't > need > > to be able to match on it using OpenFlow but internally we should be > able to > > store the value in the flow and translate to and from the kernel. This > > should be very similar to the code for skb_priority (excluding any logic > > that is actually related to QoS priorities, of course). > > I guess you meant to add it to the struct flow in lib/flow.h, right? > Yes and then also the infrastructure in odp-util.c to convert between the userspace version in lib/flow.h and the kernel Netlink attributes.
_______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev