Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 67de7924 authored by Li Zefan's avatar Li Zefan Committed by David S. Miller
Browse files

net: atm: use seq_list_foo() helpers



Simplify seq_file code.

Signed-off-by: default avatarLi Zefan <lizf@cn.fujitsu.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent a2b79b41
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -238,7 +238,7 @@ static int atm_dev_seq_show(struct seq_file *seq, void *v)
		"Itf Type    ESI/\"MAC\"addr "
		"AAL(TX,err,RX,err,drop) ...               [refcnt]\n";

	if (v == SEQ_START_TOKEN)
	if (v == &atm_devs)
		seq_puts(seq, atm_dev_banner);
	else {
		struct atm_dev *dev = list_entry(v, struct atm_dev, dev_list);
+2 −16
Original line number Diff line number Diff line
@@ -444,21 +444,10 @@ int atm_dev_ioctl(unsigned int cmd, void __user *arg, int compat)
	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)
{
	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)
@@ -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)
{
	++*pos;
	v = (v == SEQ_START_TOKEN)
		? atm_devs.next : ((struct list_head *)v)->next;
	return (v == &atm_devs) ? NULL : v;
	return seq_list_next(v, &atm_devs, pos);
}