diff options
| -rw-r--r-- | net/atm/proc.c | 2 | ||||
| -rw-r--r-- | net/atm/resources.c | 18 | 
2 files changed, 3 insertions, 17 deletions
diff --git a/net/atm/proc.c b/net/atm/proc.c index 476779d845e..7a96b2376bd 100644 --- a/net/atm/proc.c +++ b/net/atm/proc.c @@ -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); diff --git a/net/atm/resources.c b/net/atm/resources.c index 447ed89205d..90082904f20 100644 --- a/net/atm/resources.c +++ b/net/atm/resources.c @@ -444,21 +444,10 @@ done:  	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);  }  |