Lines Matching refs:ml
3520 struct packet_mclist *ml; in packet_dev_mclist_delete() local
3522 while ((ml = *mlp) != NULL) { in packet_dev_mclist_delete()
3523 if (ml->ifindex == dev->ifindex) { in packet_dev_mclist_delete()
3524 packet_dev_mc(dev, ml, -1); in packet_dev_mclist_delete()
3525 *mlp = ml->next; in packet_dev_mclist_delete()
3526 kfree(ml); in packet_dev_mclist_delete()
3528 mlp = &ml->next; in packet_dev_mclist_delete()
3535 struct packet_mclist *ml, *i; in packet_mc_add() local
3556 for (ml = po->mclist; ml; ml = ml->next) { in packet_mc_add()
3557 if (ml->ifindex == mreq->mr_ifindex && in packet_mc_add()
3558 ml->type == mreq->mr_type && in packet_mc_add()
3559 ml->alen == mreq->mr_alen && in packet_mc_add()
3560 memcmp(ml->addr, mreq->mr_address, ml->alen) == 0) { in packet_mc_add()
3561 ml->count++; in packet_mc_add()
3589 struct packet_mclist *ml, **mlp; in packet_mc_drop() local
3593 for (mlp = &pkt_sk(sk)->mclist; (ml = *mlp) != NULL; mlp = &ml->next) { in packet_mc_drop()
3594 if (ml->ifindex == mreq->mr_ifindex && in packet_mc_drop()
3595 ml->type == mreq->mr_type && in packet_mc_drop()
3596 ml->alen == mreq->mr_alen && in packet_mc_drop()
3597 memcmp(ml->addr, mreq->mr_address, ml->alen) == 0) { in packet_mc_drop()
3598 if (--ml->count == 0) { in packet_mc_drop()
3600 *mlp = ml->next; in packet_mc_drop()
3601 dev = __dev_get_by_index(sock_net(sk), ml->ifindex); in packet_mc_drop()
3603 packet_dev_mc(dev, ml, -1); in packet_mc_drop()
3604 kfree(ml); in packet_mc_drop()
3616 struct packet_mclist *ml; in packet_flush_mclist() local
3622 while ((ml = po->mclist) != NULL) { in packet_flush_mclist()
3625 po->mclist = ml->next; in packet_flush_mclist()
3626 dev = __dev_get_by_index(sock_net(sk), ml->ifindex); in packet_flush_mclist()
3628 packet_dev_mc(dev, ml, -1); in packet_flush_mclist()
3629 kfree(ml); in packet_flush_mclist()