Lines Matching refs:port
27 struct hsr_port *port;
40 port = hsr_port_get_rcu(skb->dev);
41 if (!port)
43 hsr = port->hsr;
45 if (hsr_addr_is_self(port->hsr, eth_hdr(skb)->h_source)) {
67 hsr_forward_skb(skb, port);
124 struct hsr_port *port,
143 res = netdev_rx_handler_register(dev, hsr_handle_frame, port);
160 struct hsr_port *port, *master;
169 port = hsr_port_get_hsr(hsr, type);
170 if (port)
171 return -EBUSY; /* This port already exists */
173 port = kzalloc(sizeof(*port), GFP_KERNEL);
174 if (!port)
177 port->hsr = hsr;
178 port->dev = dev;
179 port->type = type;
182 res = hsr_portdev_setup(hsr, dev, port, extack);
187 list_add_tail_rcu(&port->port_list, &hsr->ports);
197 kfree(port);
201 void hsr_del_port(struct hsr_port *port)
206 hsr = port->hsr;
208 list_del_rcu(&port->port_list);
210 if (port != master) {
213 netdev_rx_handler_unregister(port->dev);
214 dev_set_promiscuity(port->dev, -1);
215 netdev_upper_dev_unlink(port->dev, master->dev);
220 kfree(port);