|
@@ -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;
|
|
|
|
- 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);
|
|
}
|
|
}
|