X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=datapath%2Fdatapath.c;h=3fa8cdc0af51cd9dc4a932ff728a595fba8b784d;hb=4d0a3296522f2695a6f8b769100615ada1a54315;hp=d84240bc24795110109dbc14f9de3197cbecc5cb;hpb=dece4bacae29e94c41430fb5dcdf6cbe5290b2b8;p=openvswitch diff --git a/datapath/datapath.c b/datapath/datapath.c index d84240bc..3fa8cdc0 100644 --- a/datapath/datapath.c +++ b/datapath/datapath.c @@ -533,17 +533,16 @@ output_all(struct datapath *dp, struct sk_buff *skb, int flood) /* Marks 'skb' as having originated from 'in_port' in 'dp'. FIXME: how are devices reference counted? */ -int dp_set_origin(struct datapath *dp, uint16_t in_port, +void dp_set_origin(struct datapath *dp, uint16_t in_port, struct sk_buff *skb) { struct net_bridge_port *p = (in_port < OFPP_MAX ? dp->ports[in_port] : in_port == OFPP_LOCAL ? dp->local_port : NULL); - if (p) { + if (p) skb->dev = p->dev; - return 0; - } - return -ENOENT; + else + skb->dev = NULL; } static int xmit_skb(struct sk_buff *skb)