From: domen@coderock.org
To: linux-ppp@vger.kernel.org
Subject: [patch 1/1] list_for_each_entry: drivers-net-ppp_generic.c
Date: Tue, 11 Jan 2005 22:57:49 +0000 [thread overview]
Message-ID: <20050111225749.B7AFD1F225@trashy.coderock.org> (raw)
Make code more readable with list_for_each_entry.
Compile tested.
Signed-off-by: Domen Puncer <domen@coderock.org>
Signed-off-by: Maximilian Attems <janitor@sternwelten.at>
Signed-off-by: Domen Puncer <domen@coderock.org>
---
kj-domen/drivers/net/ppp_generic.c | 21 ++++++---------------
1 files changed, 6 insertions(+), 15 deletions(-)
diff -puN drivers/net/ppp_generic.c~list-for-each-entry-drivers_net_ppp_generic drivers/net/ppp_generic.c
--- kj/drivers/net/ppp_generic.c~list-for-each-entry-drivers_net_ppp_generic 2005-01-10 17:59:43.000000000 +0100
+++ kj-domen/drivers/net/ppp_generic.c 2005-01-10 17:59:43.000000000 +0100
@@ -1228,8 +1228,7 @@ static int ppp_mp_explode(struct ppp *pp
nch = 0;
hdrlen = (ppp->flags & SC_MP_XSHORTSEQ)? MPHDRLEN_SSN: MPHDRLEN;
- list = &ppp->channels;
- while ((list = list->next) != &ppp->channels) {
+ list_for_each(list, &ppp->channels) {
pch = list_entry(list, struct channel, clist);
nch += pch->avail = (skb_queue_len(&pch->file.xq) = 0);
/*
@@ -1688,7 +1687,7 @@ static void
ppp_receive_mp_frame(struct ppp *ppp, struct sk_buff *skb, struct channel *pch)
{
u32 mask, seq;
- struct list_head *l;
+ struct channel *ch;
int mphdrlen = (ppp->flags & SC_MP_SHORTSEQ)? MPHDRLEN_SSN: MPHDRLEN;
if (!pskb_may_pull(skb, mphdrlen + 1) || ppp->mrru = 0)
@@ -1742,8 +1741,7 @@ ppp_receive_mp_frame(struct ppp *ppp, st
* The list of channels can't change because we have the receive
* side of the ppp unit locked.
*/
- for (l = ppp->channels.next; l != &ppp->channels; l = l->next) {
- struct channel *ch = list_entry(l, struct channel, clist);
+ list_for_each_entry(ch, &ppp->channels, clist) {
if (seq_before(ch->lastseq, seq))
seq = ch->lastseq;
}
@@ -2229,10 +2227,8 @@ static struct compressor_entry *
find_comp_entry(int proto)
{
struct compressor_entry *ce;
- struct list_head *list = &compressor_list;
- while ((list = list->next) != &compressor_list) {
- ce = list_entry(list, struct compressor_entry, list);
+ list_for_each_entry(ce, &compressor_list, list) {
if (ce->comp->compress_proto = proto)
return ce;
}
@@ -2502,20 +2498,15 @@ static struct channel *
ppp_find_channel(int unit)
{
struct channel *pch;
- struct list_head *list;
- list = &new_channels;
- while ((list = list->next) != &new_channels) {
- pch = list_entry(list, struct channel, list);
+ list_for_each_entry(pch, &new_channels, list) {
if (pch->file.index = unit) {
list_del(&pch->list);
list_add(&pch->list, &all_channels);
return pch;
}
}
- list = &all_channels;
- while ((list = list->next) != &all_channels) {
- pch = list_entry(list, struct channel, list);
+ list_for_each_entry(pch, &all_channels, list) {
if (pch->file.index = unit)
return pch;
}
_
next reply other threads:[~2005-01-11 22:57 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-01-11 22:57 domen [this message]
-- strict thread matches above, loose matches on Subject: below --
2005-03-06 22:23 [patch 1/1] list_for_each_entry: drivers-net-ppp_generic.c domen
2005-06-20 21:53 domen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20050111225749.B7AFD1F225@trashy.coderock.org \
--to=domen@coderock.org \
--cc=linux-ppp@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).