Lines Matching defs:p
48 static ssize_t show_##_name(struct net_bridge_port *p, char *buf) \
50 return sprintf(buf, "%d\n", !!(p->flags & _mask)); \
52 static int store_##_name(struct net_bridge_port *p, unsigned long v) \
54 return store_flag(p, v, _mask); \
59 static int store_flag(struct net_bridge_port *p, unsigned long v,
63 unsigned long flags = p->flags;
71 if (flags != p->flags) {
72 err = br_switchdev_set_port_flag(p, flags, mask, &extack);
74 netdev_err(p->dev, "%s\n", extack._msg);
78 p->flags = flags;
79 br_port_flags_change(p, mask);
84 static ssize_t show_path_cost(struct net_bridge_port *p, char *buf)
86 return sprintf(buf, "%d\n", p->path_cost);
92 static ssize_t show_priority(struct net_bridge_port *p, char *buf)
94 return sprintf(buf, "%d\n", p->priority);
100 static ssize_t show_designated_root(struct net_bridge_port *p, char *buf)
102 return br_show_bridge_id(buf, &p->designated_root);
106 static ssize_t show_designated_bridge(struct net_bridge_port *p, char *buf)
108 return br_show_bridge_id(buf, &p->designated_bridge);
112 static ssize_t show_designated_port(struct net_bridge_port *p, char *buf)
114 return sprintf(buf, "%d\n", p->designated_port);
118 static ssize_t show_designated_cost(struct net_bridge_port *p, char *buf)
120 return sprintf(buf, "%d\n", p->designated_cost);
124 static ssize_t show_port_id(struct net_bridge_port *p, char *buf)
126 return sprintf(buf, "0x%x\n", p->port_id);
130 static ssize_t show_port_no(struct net_bridge_port *p, char *buf)
132 return sprintf(buf, "0x%x\n", p->port_no);
137 static ssize_t show_change_ack(struct net_bridge_port *p, char *buf)
139 return sprintf(buf, "%d\n", p->topology_change_ack);
143 static ssize_t show_config_pending(struct net_bridge_port *p, char *buf)
145 return sprintf(buf, "%d\n", p->config_pending);
149 static ssize_t show_port_state(struct net_bridge_port *p, char *buf)
151 return sprintf(buf, "%d\n", p->state);
155 static ssize_t show_message_age_timer(struct net_bridge_port *p,
158 return sprintf(buf, "%ld\n", br_timer_value(&p->message_age_timer));
162 static ssize_t show_forward_delay_timer(struct net_bridge_port *p,
165 return sprintf(buf, "%ld\n", br_timer_value(&p->forward_delay_timer));
169 static ssize_t show_hold_timer(struct net_bridge_port *p,
172 return sprintf(buf, "%ld\n", br_timer_value(&p->hold_timer));
176 static int store_flush(struct net_bridge_port *p, unsigned long v)
178 br_fdb_delete_by_port(p->br, p, 0, 0); // Don't delete local entry
183 static ssize_t show_group_fwd_mask(struct net_bridge_port *p, char *buf)
185 return sprintf(buf, "%#x\n", p->group_fwd_mask);
188 static int store_group_fwd_mask(struct net_bridge_port *p,
193 p->group_fwd_mask = v;
200 static ssize_t show_backup_port(struct net_bridge_port *p, char *buf)
206 backup_p = rcu_dereference(p->backup_port);
214 static int store_backup_port(struct net_bridge_port *p, char *buf)
223 backup_dev = __dev_get_by_name(dev_net(p->dev), buf);
228 return nbp_backup_change(p, backup_dev);
245 static ssize_t show_multicast_router(struct net_bridge_port *p, char *buf)
247 return sprintf(buf, "%d\n", p->multicast_ctx.multicast_router);
250 static int store_multicast_router(struct net_bridge_port *p,
253 return br_multicast_set_port_router(&p->multicast_ctx, v);
305 struct net_bridge_port *p = kobj_to_brport(kobj);
310 return brport_attr->show(p, buf);
318 struct net_bridge_port *p = kobj_to_brport(kobj);
323 if (!ns_capable(dev_net(p->dev)->user_ns, CAP_NET_ADMIN))
337 spin_lock_bh(&p->br->lock);
338 ret = brport_attr->store_raw(p, buf_copy);
339 spin_unlock_bh(&p->br->lock);
345 spin_lock_bh(&p->br->lock);
346 ret = brport_attr->store(p, val);
347 spin_unlock_bh(&p->br->lock);
351 br_ifinfo_notify(RTM_NEWLINK, NULL, p);
370 int br_sysfs_addif(struct net_bridge_port *p)
372 struct net_bridge *br = p->br;
376 err = sysfs_create_link(&p->kobj, &br->dev->dev.kobj,
382 err = sysfs_create_file(&p->kobj, &((*a)->attr));
387 strscpy(p->sysfs_name, p->dev->name, IFNAMSIZ);
388 return sysfs_create_link(br->ifobj, &p->kobj, p->sysfs_name);
392 int br_sysfs_renameif(struct net_bridge_port *p)
394 struct net_bridge *br = p->br;
400 if (!strncmp(p->sysfs_name, p->dev->name, IFNAMSIZ))
403 err = sysfs_rename_link(br->ifobj, &p->kobj,
404 p->sysfs_name, p->dev->name);
407 p->sysfs_name, p->dev->name);
409 strscpy(p->sysfs_name, p->dev->name, IFNAMSIZ);