net: atm: use seq_list_foo() helpers
Simplify seq_file code. Signed-off-by: Li Zefan <lizf@cn.fujitsu.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
a2b79b414d
commit
67de792420
@@ -238,7 +238,7 @@ static int atm_dev_seq_show(struct seq_file *seq, void *v)
|
|||||||
"Itf Type ESI/\"MAC\"addr "
|
"Itf Type ESI/\"MAC\"addr "
|
||||||
"AAL(TX,err,RX,err,drop) ... [refcnt]\n";
|
"AAL(TX,err,RX,err,drop) ... [refcnt]\n";
|
||||||
|
|
||||||
if (v == SEQ_START_TOKEN)
|
if (v == &atm_devs)
|
||||||
seq_puts(seq, atm_dev_banner);
|
seq_puts(seq, atm_dev_banner);
|
||||||
else {
|
else {
|
||||||
struct atm_dev *dev = list_entry(v, struct atm_dev, dev_list);
|
struct atm_dev *dev = list_entry(v, struct atm_dev, dev_list);
|
||||||
|
@@ -444,21 +444,10 @@ done:
|
|||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void *dev_get_idx(loff_t left)
|
|
||||||
{
|
|
||||||
struct list_head *p;
|
|
||||||
|
|
||||||
list_for_each(p, &atm_devs) {
|
|
||||||
if (!--left)
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
return (p != &atm_devs) ? p : NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
void *atm_dev_seq_start(struct seq_file *seq, loff_t *pos)
|
void *atm_dev_seq_start(struct seq_file *seq, loff_t *pos)
|
||||||
{
|
{
|
||||||
mutex_lock(&atm_dev_mutex);
|
mutex_lock(&atm_dev_mutex);
|
||||||
return *pos ? dev_get_idx(*pos) : SEQ_START_TOKEN;
|
return seq_list_start_head(&atm_devs, *pos);
|
||||||
}
|
}
|
||||||
|
|
||||||
void atm_dev_seq_stop(struct seq_file *seq, void *v)
|
void atm_dev_seq_stop(struct seq_file *seq, void *v)
|
||||||
@@ -468,8 +457,5 @@ void atm_dev_seq_stop(struct seq_file *seq, void *v)
|
|||||||
|
|
||||||
void *atm_dev_seq_next(struct seq_file *seq, void *v, loff_t *pos)
|
void *atm_dev_seq_next(struct seq_file *seq, void *v, loff_t *pos)
|
||||||
{
|
{
|
||||||
++*pos;
|
return seq_list_next(v, &atm_devs, pos);
|
||||||
v = (v == SEQ_START_TOKEN)
|
|
||||||
? atm_devs.next : ((struct list_head *)v)->next;
|
|
||||||
return (v == &atm_devs) ? NULL : v;
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user