|
@@ -30,31 +30,13 @@ static const char *rxrpc_conn_states[] = {
|
|
|
*/
|
|
|
static void *rxrpc_call_seq_start(struct seq_file *seq, loff_t *_pos)
|
|
|
{
|
|
|
- struct list_head *_p;
|
|
|
- loff_t pos = *_pos;
|
|
|
-
|
|
|
read_lock(&rxrpc_call_lock);
|
|
|
- if (!pos)
|
|
|
- return SEQ_START_TOKEN;
|
|
|
- pos--;
|
|
|
-
|
|
|
- list_for_each(_p, &rxrpc_calls)
|
|
|
- if (!pos--)
|
|
|
- break;
|
|
|
-
|
|
|
- return _p != &rxrpc_calls ? _p : NULL;
|
|
|
+ return seq_list_start_head(&rxrpc_calls, *_pos);
|
|
|
}
|
|
|
|
|
|
static void *rxrpc_call_seq_next(struct seq_file *seq, void *v, loff_t *pos)
|
|
|
{
|
|
|
- struct list_head *_p;
|
|
|
-
|
|
|
- (*pos)++;
|
|
|
-
|
|
|
- _p = v;
|
|
|
- _p = (v == SEQ_START_TOKEN) ? rxrpc_calls.next : _p->next;
|
|
|
-
|
|
|
- return _p != &rxrpc_calls ? _p : NULL;
|
|
|
+ return seq_list_next(v, &rxrpc_calls, pos);
|
|
|
}
|
|
|
|
|
|
static void rxrpc_call_seq_stop(struct seq_file *seq, void *v)
|
|
@@ -68,7 +50,7 @@ static int rxrpc_call_seq_show(struct seq_file *seq, void *v)
|
|
|
struct rxrpc_call *call;
|
|
|
char lbuff[4 + 4 + 4 + 4 + 5 + 1], rbuff[4 + 4 + 4 + 4 + 5 + 1];
|
|
|
|
|
|
- if (v == SEQ_START_TOKEN) {
|
|
|
+ if (v == &rxrpc_calls) {
|
|
|
seq_puts(seq,
|
|
|
"Proto Local Remote "
|
|
|
" SvID ConnID CallID End Use State Abort "
|
|
@@ -129,32 +111,14 @@ struct file_operations rxrpc_call_seq_fops = {
|
|
|
*/
|
|
|
static void *rxrpc_connection_seq_start(struct seq_file *seq, loff_t *_pos)
|
|
|
{
|
|
|
- struct list_head *_p;
|
|
|
- loff_t pos = *_pos;
|
|
|
-
|
|
|
read_lock(&rxrpc_connection_lock);
|
|
|
- if (!pos)
|
|
|
- return SEQ_START_TOKEN;
|
|
|
- pos--;
|
|
|
-
|
|
|
- list_for_each(_p, &rxrpc_connections)
|
|
|
- if (!pos--)
|
|
|
- break;
|
|
|
-
|
|
|
- return _p != &rxrpc_connections ? _p : NULL;
|
|
|
+ return seq_list_start_head(&rxrpc_connections, *_pos);
|
|
|
}
|
|
|
|
|
|
static void *rxrpc_connection_seq_next(struct seq_file *seq, void *v,
|
|
|
loff_t *pos)
|
|
|
{
|
|
|
- struct list_head *_p;
|
|
|
-
|
|
|
- (*pos)++;
|
|
|
-
|
|
|
- _p = v;
|
|
|
- _p = (v == SEQ_START_TOKEN) ? rxrpc_connections.next : _p->next;
|
|
|
-
|
|
|
- return _p != &rxrpc_connections ? _p : NULL;
|
|
|
+ return seq_list_next(v, &rxrpc_connections, pos);
|
|
|
}
|
|
|
|
|
|
static void rxrpc_connection_seq_stop(struct seq_file *seq, void *v)
|
|
@@ -168,7 +132,7 @@ static int rxrpc_connection_seq_show(struct seq_file *seq, void *v)
|
|
|
struct rxrpc_transport *trans;
|
|
|
char lbuff[4 + 4 + 4 + 4 + 5 + 1], rbuff[4 + 4 + 4 + 4 + 5 + 1];
|
|
|
|
|
|
- if (v == SEQ_START_TOKEN) {
|
|
|
+ if (v == &rxrpc_connections) {
|
|
|
seq_puts(seq,
|
|
|
"Proto Local Remote "
|
|
|
" SvID ConnID Calls End Use State Key "
|