Lines Matching refs:ids
338 int ovs_vport_set_upcall_portids(struct vport *vport, const struct nlattr *ids) in ovs_vport_set_upcall_portids() argument
342 if (!nla_len(ids) || nla_len(ids) % sizeof(u32)) in ovs_vport_set_upcall_portids()
347 vport_portids = kmalloc(sizeof(*vport_portids) + nla_len(ids), in ovs_vport_set_upcall_portids()
352 vport_portids->n_ids = nla_len(ids) / sizeof(u32); in ovs_vport_set_upcall_portids()
354 nla_memcpy(vport_portids->ids, ids, nla_len(ids)); in ovs_vport_set_upcall_portids()
380 struct vport_portids *ids; in ovs_vport_get_upcall_portids() local
382 ids = rcu_dereference_ovsl(vport->upcall_portids); in ovs_vport_get_upcall_portids()
386 ids->n_ids * sizeof(u32), (void *)ids->ids); in ovs_vport_get_upcall_portids()
388 return nla_put_u32(skb, OVS_VPORT_ATTR_UPCALL_PID, ids->ids[0]); in ovs_vport_get_upcall_portids()
405 struct vport_portids *ids; in ovs_vport_find_upcall_portid() local
409 ids = rcu_dereference(vport->upcall_portids); in ovs_vport_find_upcall_portid()
412 if (ids->n_ids == 1) in ovs_vport_find_upcall_portid()
413 return ids->ids[0]; in ovs_vport_find_upcall_portid()
416 ids_index = hash - ids->n_ids * reciprocal_divide(hash, ids->rn_ids); in ovs_vport_find_upcall_portid()
417 return ids->ids[ids_index]; in ovs_vport_find_upcall_portid()