|
@@ -43,9 +43,7 @@ static ssize_t store_bridge_parm(struct device *d,
|
|
|
if (endp == buf)
|
|
|
return -EINVAL;
|
|
|
|
|
|
- spin_lock_bh(&br->lock);
|
|
|
err = (*set)(br, val);
|
|
|
- spin_unlock_bh(&br->lock);
|
|
|
return err ? err : len;
|
|
|
}
|
|
|
|
|
@@ -57,20 +55,11 @@ static ssize_t show_forward_delay(struct device *d,
|
|
|
return sprintf(buf, "%lu\n", jiffies_to_clock_t(br->forward_delay));
|
|
|
}
|
|
|
|
|
|
-static int set_forward_delay(struct net_bridge *br, unsigned long val)
|
|
|
-{
|
|
|
- unsigned long delay = clock_t_to_jiffies(val);
|
|
|
- br->forward_delay = delay;
|
|
|
- if (br_is_root_bridge(br))
|
|
|
- br->bridge_forward_delay = delay;
|
|
|
- return 0;
|
|
|
-}
|
|
|
-
|
|
|
static ssize_t store_forward_delay(struct device *d,
|
|
|
struct device_attribute *attr,
|
|
|
const char *buf, size_t len)
|
|
|
{
|
|
|
- return store_bridge_parm(d, buf, len, set_forward_delay);
|
|
|
+ return store_bridge_parm(d, buf, len, br_set_forward_delay);
|
|
|
}
|
|
|
static DEVICE_ATTR(forward_delay, S_IRUGO | S_IWUSR,
|
|
|
show_forward_delay, store_forward_delay);
|
|
@@ -82,24 +71,11 @@ static ssize_t show_hello_time(struct device *d, struct device_attribute *attr,
|
|
|
jiffies_to_clock_t(to_bridge(d)->hello_time));
|
|
|
}
|
|
|
|
|
|
-static int set_hello_time(struct net_bridge *br, unsigned long val)
|
|
|
-{
|
|
|
- unsigned long t = clock_t_to_jiffies(val);
|
|
|
-
|
|
|
- if (t < HZ)
|
|
|
- return -EINVAL;
|
|
|
-
|
|
|
- br->hello_time = t;
|
|
|
- if (br_is_root_bridge(br))
|
|
|
- br->bridge_hello_time = t;
|
|
|
- return 0;
|
|
|
-}
|
|
|
-
|
|
|
static ssize_t store_hello_time(struct device *d,
|
|
|
struct device_attribute *attr, const char *buf,
|
|
|
size_t len)
|
|
|
{
|
|
|
- return store_bridge_parm(d, buf, len, set_hello_time);
|
|
|
+ return store_bridge_parm(d, buf, len, br_set_hello_time);
|
|
|
}
|
|
|
static DEVICE_ATTR(hello_time, S_IRUGO | S_IWUSR, show_hello_time,
|
|
|
store_hello_time);
|
|
@@ -111,19 +87,10 @@ static ssize_t show_max_age(struct device *d, struct device_attribute *attr,
|
|
|
jiffies_to_clock_t(to_bridge(d)->max_age));
|
|
|
}
|
|
|
|
|
|
-static int set_max_age(struct net_bridge *br, unsigned long val)
|
|
|
-{
|
|
|
- unsigned long t = clock_t_to_jiffies(val);
|
|
|
- br->max_age = t;
|
|
|
- if (br_is_root_bridge(br))
|
|
|
- br->bridge_max_age = t;
|
|
|
- return 0;
|
|
|
-}
|
|
|
-
|
|
|
static ssize_t store_max_age(struct device *d, struct device_attribute *attr,
|
|
|
const char *buf, size_t len)
|
|
|
{
|
|
|
- return store_bridge_parm(d, buf, len, set_max_age);
|
|
|
+ return store_bridge_parm(d, buf, len, br_set_max_age);
|
|
|
}
|
|
|
static DEVICE_ATTR(max_age, S_IRUGO | S_IWUSR, show_max_age, store_max_age);
|
|
|
|