Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
L
linux-imx
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux-kernel
linux-imx
Commits
90dd7f5a
Commit
90dd7f5a
authored
Feb 08, 2010
by
Li Zefan
Committed by
David S. Miller
Feb 10, 2010
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
net: netrom: use seq_hlist_foo() helpers
Simplify seq_file code. Signed-off-by:
Li Zefan
<
lizf@cn.fujitsu.com
>
Signed-off-by:
David S. Miller
<
davem@davemloft.net
>
parent
b7ceabd9
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
12 additions
and
62 deletions
+12
-62
af_netrom.c
net/netrom/af_netrom.c
+3
-18
nr_route.c
net/netrom/nr_route.c
+9
-44
No files found.
net/netrom/af_netrom.c
View file @
90dd7f5a
...
...
@@ -1267,28 +1267,13 @@ static int nr_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
static
void
*
nr_info_start
(
struct
seq_file
*
seq
,
loff_t
*
pos
)
{
struct
sock
*
s
;
struct
hlist_node
*
node
;
int
i
=
1
;
spin_lock_bh
(
&
nr_list_lock
);
if
(
*
pos
==
0
)
return
SEQ_START_TOKEN
;
sk_for_each
(
s
,
node
,
&
nr_list
)
{
if
(
i
==
*
pos
)
return
s
;
++
i
;
}
return
NULL
;
return
seq_hlist_start_head
(
&
nr_list
,
*
pos
);
}
static
void
*
nr_info_next
(
struct
seq_file
*
seq
,
void
*
v
,
loff_t
*
pos
)
{
++*
pos
;
return
(
v
==
SEQ_START_TOKEN
)
?
sk_head
(
&
nr_list
)
:
sk_next
((
struct
sock
*
)
v
);
return
seq_hlist_next
(
v
,
&
nr_list
,
pos
);
}
static
void
nr_info_stop
(
struct
seq_file
*
seq
,
void
*
v
)
...
...
@@ -1298,7 +1283,7 @@ static void nr_info_stop(struct seq_file *seq, void *v)
static
int
nr_info_show
(
struct
seq_file
*
seq
,
void
*
v
)
{
struct
sock
*
s
=
v
;
struct
sock
*
s
=
sk_entry
(
v
)
;
struct
net_device
*
dev
;
struct
nr_sock
*
nr
;
const
char
*
devname
;
...
...
net/netrom/nr_route.c
View file @
90dd7f5a
...
...
@@ -863,33 +863,13 @@ int nr_route_frame(struct sk_buff *skb, ax25_cb *ax25)
static
void
*
nr_node_start
(
struct
seq_file
*
seq
,
loff_t
*
pos
)
{
struct
nr_node
*
nr_node
;
struct
hlist_node
*
node
;
int
i
=
1
;
spin_lock_bh
(
&
nr_node_list_lock
);
if
(
*
pos
==
0
)
return
SEQ_START_TOKEN
;
nr_node_for_each
(
nr_node
,
node
,
&
nr_node_list
)
{
if
(
i
==
*
pos
)
return
nr_node
;
++
i
;
}
return
NULL
;
return
seq_hlist_start_head
(
&
nr_node_list
,
*
pos
);
}
static
void
*
nr_node_next
(
struct
seq_file
*
seq
,
void
*
v
,
loff_t
*
pos
)
{
struct
hlist_node
*
node
;
++*
pos
;
node
=
(
v
==
SEQ_START_TOKEN
)
?
nr_node_list
.
first
:
((
struct
nr_node
*
)
v
)
->
node_node
.
next
;
return
hlist_entry
(
node
,
struct
nr_node
,
node_node
);
return
seq_hlist_next
(
v
,
&
nr_node_list
,
pos
);
}
static
void
nr_node_stop
(
struct
seq_file
*
seq
,
void
*
v
)
...
...
@@ -906,7 +886,9 @@ static int nr_node_show(struct seq_file *seq, void *v)
seq_puts
(
seq
,
"callsign mnemonic w n qual obs neigh qual obs neigh qual obs neigh
\n
"
);
else
{
struct
nr_node
*
nr_node
=
v
;
struct
nr_node
*
nr_node
=
hlist_entry
(
v
,
struct
nr_node
,
node_node
);
nr_node_lock
(
nr_node
);
seq_printf
(
seq
,
"%-9s %-7s %d %d"
,
ax2asc
(
buf
,
&
nr_node
->
callsign
),
...
...
@@ -949,31 +931,13 @@ const struct file_operations nr_nodes_fops = {
static
void
*
nr_neigh_start
(
struct
seq_file
*
seq
,
loff_t
*
pos
)
{
struct
nr_neigh
*
nr_neigh
;
struct
hlist_node
*
node
;
int
i
=
1
;
spin_lock_bh
(
&
nr_neigh_list_lock
);
if
(
*
pos
==
0
)
return
SEQ_START_TOKEN
;
nr_neigh_for_each
(
nr_neigh
,
node
,
&
nr_neigh_list
)
{
if
(
i
==
*
pos
)
return
nr_neigh
;
}
return
NULL
;
return
seq_hlist_start_head
(
&
nr_neigh_list
,
*
pos
);
}
static
void
*
nr_neigh_next
(
struct
seq_file
*
seq
,
void
*
v
,
loff_t
*
pos
)
{
struct
hlist_node
*
node
;
++*
pos
;
node
=
(
v
==
SEQ_START_TOKEN
)
?
nr_neigh_list
.
first
:
((
struct
nr_neigh
*
)
v
)
->
neigh_node
.
next
;
return
hlist_entry
(
node
,
struct
nr_neigh
,
neigh_node
);
return
seq_hlist_next
(
v
,
&
nr_neigh_list
,
pos
);
}
static
void
nr_neigh_stop
(
struct
seq_file
*
seq
,
void
*
v
)
...
...
@@ -989,8 +953,9 @@ static int nr_neigh_show(struct seq_file *seq, void *v)
if
(
v
==
SEQ_START_TOKEN
)
seq_puts
(
seq
,
"addr callsign dev qual lock count failed digipeaters
\n
"
);
else
{
struct
nr_neigh
*
nr_neigh
=
v
;
struct
nr_neigh
*
nr_neigh
;
nr_neigh
=
hlist_entry
(
v
,
struct
nr_neigh
,
neigh_node
);
seq_printf
(
seq
,
"%05d %-9s %-4s %3d %d %3d %3d"
,
nr_neigh
->
number
,
ax2asc
(
buf
,
&
nr_neigh
->
callsign
),
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment