* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
@ 2004-07-29 11:42 Domen Puncer
2004-07-29 11:43 ` Domen Puncer
` (15 more replies)
0 siblings, 16 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:42 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 705 bytes --]
Hi.
Make code more readable with list_for_each_entry*
Compile tested.
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/arch/i386/mm/pageattr.c Wed Jul 14 19:14:46 2004
+++ list_for_each/arch/i386/mm/pageattr.c Thu Aug 15 18:08:02 2002
@@ -178,7 +178,7 @@
void global_flush_tlb(void)
{
LIST_HEAD(l);
- struct list_head* n;
+ struct page *pg, *next;
BUG_ON(irqs_disabled());
@@ -186,12 +186,8 @@
list_splice_init(&df_list, &l);
spin_unlock_irq(&cpa_lock);
flush_map();
- n = l.next;
- while (n != &l) {
- struct page *pg = list_entry(n, struct page, lru);
- n = n->next;
+ list_for_each_entry_safe(pg, next, &l, lru)
__free_page(pg);
- }
}
#ifdef CONFIG_DEBUG_PAGEALLOC
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
@ 2004-07-29 11:43 ` Domen Puncer
2004-07-29 11:43 ` Domen Puncer
` (14 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:43 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 832 bytes --]
Make code more readable with list_for_each_reverse.
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/arch/um/drivers/chan_kern.c Wed Jun 16 07:20:21 2004
+++ list_for_each/arch/um/drivers/chan_kern.c Wed Jul 28 18:15:01 2004
@@ -166,7 +166,6 @@
void close_chan(struct list_head *chans)
{
- struct list_head *ele;
struct chan *chan;
/* Close in reverse order as open in case more than one of them
@@ -174,8 +173,7 @@
* state. Then, the first one opened will have the original state,
* so it must be the last closed.
*/
- for(ele = chans->prev; ele != chans; ele = ele->prev){
- chan = list_entry(ele, struct chan, list);
+ list_for_each_entry_reverse(chan, chans, list) {
if(!chan->opened) continue;
if(chan->ops->close != NULL)
(*chan->ops->close)(chan->fd, chan->data);
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
2004-07-29 11:43 ` Domen Puncer
@ 2004-07-29 11:43 ` Domen Puncer
2004-07-29 11:44 ` Domen Puncer
` (13 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:43 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 896 bytes --]
Make code more readable with list_for_each_entry.
(Note that break follows that list_del, so we don't need to use _safe)
Compile tested.
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/drivers/atm/he.c Fri Jul 23 16:00:17 2004
+++ list_for_each/drivers/atm/he.c Wed Jul 28 18:20:14 2004
@@ -1962,7 +1962,7 @@
struct he_tpd *tpd;
int slot, updated = 0;
#ifdef USE_TPD_POOL
- struct list_head *p;
+ struct he_tpd *__tpd;
#endif
/* 2.1.6 transmit buffer return queue */
@@ -1977,8 +1977,7 @@
TBRQ_MULTIPLE(he_dev->tbrq_head) ? " MULTIPLE" : "");
#ifdef USE_TPD_POOL
tpd = NULL;
- list_for_each(p, &he_dev->outstanding_tpds) {
- struct he_tpd *__tpd = list_entry(p, struct he_tpd, entry);
+ list_for_each_entry(__tpd, &he_dev->outstanding_tpds, entry) {
if (TPD_ADDR(__tpd->status) == TBRQ_TPD(he_dev->tbrq_head)) {
tpd = __tpd;
list_del(&__tpd->entry);
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
2004-07-29 11:43 ` Domen Puncer
2004-07-29 11:43 ` Domen Puncer
@ 2004-07-29 11:44 ` Domen Puncer
2004-07-29 11:44 ` Domen Puncer
` (12 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:44 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 1975 bytes --]
Make code more readable with list_for_each_entry.
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/drivers/macintosh/via-pmu.c Wed Jun 16 07:20:03 2004
+++ list_for_each/drivers/macintosh/via-pmu.c Wed Jul 28 18:29:26 2004
@@ -2052,12 +2052,9 @@
int
pmu_register_sleep_notifier(struct pmu_sleep_notifier *n)
{
- struct list_head *list;
struct pmu_sleep_notifier *notifier;
- for (list = sleep_notifiers.next; list != &sleep_notifiers;
- list = list->next) {
- notifier = list_entry(list, struct pmu_sleep_notifier, list);
+ list_for_each_entry(notifier, &sleep_notifiers, list) {
if (n->priority > notifier->priority)
break;
}
@@ -2083,8 +2080,7 @@
struct list_head *list;
struct pmu_sleep_notifier *notifier;
- for (list = sleep_notifiers.prev; list != &sleep_notifiers;
- list = list->prev) {
+ list_for_each_prev(list, &sleep_notifiers) {
notifier = list_entry(list, struct pmu_sleep_notifier, list);
ret = notifier->notifier_call(notifier, when);
if (ret != PBOOK_SLEEP_OK) {
@@ -2105,14 +2101,10 @@
broadcast_wake(void)
{
int ret = PBOOK_SLEEP_OK;
- struct list_head *list;
struct pmu_sleep_notifier *notifier;
- for (list = sleep_notifiers.next; list != &sleep_notifiers;
- list = list->next) {
- notifier = list_entry(list, struct pmu_sleep_notifier, list);
+ list_for_each_entry(notifier, &sleep_notifiers, list)
notifier->notifier_call(notifier, PBOOK_WAKE);
- }
return ret;
}
@@ -2725,15 +2717,13 @@
pmu_pass_intr(unsigned char *data, int len)
{
struct pmu_private *pp;
- struct list_head *list;
int i;
unsigned long flags;
if (len > sizeof(pp->rb_buf[0].data))
len = sizeof(pp->rb_buf[0].data);
spin_lock_irqsave(&all_pvt_lock, flags);
- for (list = &all_pmu_pvt; (list = list->next) != &all_pmu_pvt; ) {
- pp = list_entry(list, struct pmu_private, list);
+ list_for_each_entry(pp, &all_pmu_pvt, list) {
spin_lock(&pp->lock);
i = pp->rb_put + 1;
if (i >= RB_SIZE)
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
` (2 preceding siblings ...)
2004-07-29 11:44 ` Domen Puncer
@ 2004-07-29 11:44 ` Domen Puncer
2004-07-29 11:45 ` Domen Puncer
` (11 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:44 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 2233 bytes --]
Make code more readable with list_for_each_entry.
Compile tested.
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/drivers/net/ppp_generic.c Wed Jul 14 19:14:59 2004
+++ list_for_each/drivers/net/ppp_generic.c Wed Jul 28 18:34:36 2004
@@ -1213,8 +1213,7 @@
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);
/*
@@ -1676,7 +1675,7 @@
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)
@@ -1730,8 +1729,7 @@
* 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;
}
@@ -2217,10 +2215,8 @@
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;
}
@@ -2490,20 +2486,15 @@
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;
}
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
` (3 preceding siblings ...)
2004-07-29 11:44 ` Domen Puncer
@ 2004-07-29 11:45 ` Domen Puncer
2004-07-29 11:45 ` Domen Puncer
` (10 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:45 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 2592 bytes --]
Make code more readable with list_for_each_entry.
Compile tested.
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/drivers/usb/class/audio.c Wed Jul 14 19:15:07 2004
+++ list_for_each/drivers/usb/class/audio.c Wed Jul 28 18:41:07 2004
@@ -1949,15 +1949,12 @@
static int usb_audio_open_mixdev(struct inode *inode, struct file *file)
{
unsigned int minor = iminor(inode);
- struct list_head *devs, *mdevs;
struct usb_mixerdev *ms;
struct usb_audio_state *s;
down(&open_sem);
- for (devs = audiodevs.next; devs != &audiodevs; devs = devs->next) {
- s = list_entry(devs, struct usb_audio_state, audiodev);
- for (mdevs = s->mixerlist.next; mdevs != &s->mixerlist; mdevs = mdevs->next) {
- ms = list_entry(mdevs, struct usb_mixerdev, list);
+ list_for_each_entry(s, &audiodevs, audiodev) {
+ list_for_each_entry(ms, &s->mixerlist, list) {
if (ms->dev_mixer == minor)
goto mixer_found;
}
@@ -2638,16 +2635,13 @@
{
unsigned int minor = iminor(inode);
DECLARE_WAITQUEUE(wait, current);
- struct list_head *devs, *adevs;
struct usb_audiodev *as;
struct usb_audio_state *s;
for (;;) {
down(&open_sem);
- for (devs = audiodevs.next; devs != &audiodevs; devs = devs->next) {
- s = list_entry(devs, struct usb_audio_state, audiodev);
- for (adevs = s->audiolist.next; adevs != &s->audiolist; adevs = adevs->next) {
- as = list_entry(adevs, struct usb_audiodev, list);
+ list_for_each_entry(s, &audiodevs, audiodev) {
+ list_for_each_entry(as, &s->audiolist, list) {
if (!((as->dev_audio ^ minor) & ~0xf))
goto device_found;
}
@@ -3813,7 +3807,6 @@
static void usb_audio_disconnect(struct usb_interface *intf)
{
struct usb_audio_state *s = usb_get_intfdata (intf);
- struct list_head *list;
struct usb_audiodev *as;
struct usb_mixerdev *ms;
@@ -3835,8 +3828,7 @@
usb_set_intfdata (intf, NULL);
/* deregister all audio and mixer devices, so no new processes can open this device */
- for(list = s->audiolist.next; list != &s->audiolist; list = list->next) {
- as = list_entry(list, struct usb_audiodev, list);
+ list_for_each_entry(as, &s->audiolist, list) {
usbin_disc(as);
usbout_disc(as);
wake_up(&as->usbin.dma.wait);
@@ -3847,8 +3839,7 @@
}
as->dev_audio = -1;
}
- for(list = s->mixerlist.next; list != &s->mixerlist; list = list->next) {
- ms = list_entry(list, struct usb_mixerdev, list);
+ list_for_each_entry(ms, &s->mixerlist, list) {
if (ms->dev_mixer >= 0) {
unregister_sound_mixer(ms->dev_mixer);
printk(KERN_INFO "usbaudio: unregister mixer 14,%d\n", ms->dev_mixer);
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
` (4 preceding siblings ...)
2004-07-29 11:45 ` Domen Puncer
@ 2004-07-29 11:45 ` Domen Puncer
2004-07-29 11:46 ` Domen Puncer
` (9 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:45 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 1523 bytes --]
Make code more readable with list_for_each_entry.
Compile tested.
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/drivers/usb/class/usb-midi.c Fri Jul 23 16:00:24 2004
+++ list_for_each/drivers/usb/class/usb-midi.c Wed Jul 28 18:47:02 2004
@@ -811,7 +811,6 @@
{
int minor = iminor(inode);
DECLARE_WAITQUEUE(wait, current);
- struct list_head *devs, *mdevs;
struct usb_midi_state *s;
struct usb_mididev *m;
unsigned long flags;
@@ -823,10 +822,8 @@
for(;;) {
down(&open_sem);
- for (devs = mididevs.next; devs != &mididevs; devs = devs->next) {
- s = list_entry(devs, struct usb_midi_state, mididev);
- for (mdevs = s->midiDevList.next; mdevs != &s->midiDevList; mdevs = mdevs->next) {
- m = list_entry(mdevs, struct usb_mididev, list);
+ list_for_each_entry(s, &mididevs, mididev) {
+ list_for_each_entry(m, &s->midiDevList, list) {
if ( !((m->dev_midi ^ minor) & ~0xf) )
goto device_found;
}
@@ -2000,7 +1997,6 @@
static void usb_midi_disconnect(struct usb_interface *intf)
{
struct usb_midi_state *s = usb_get_intfdata (intf);
- struct list_head *list;
struct usb_mididev *m;
if ( !s )
@@ -2018,8 +2014,7 @@
s->usbdev = NULL;
usb_set_intfdata (intf, NULL);
- for ( list = s->midiDevList.next; list != &s->midiDevList; list = list->next ) {
- m = list_entry(list, struct usb_mididev, list);
+ list_for_each_entry(m, &s->midiDevList, list) {
wake_up(&(m->min.ep->wait));
wake_up(&(m->mout.ep->wait));
if ( m->dev_midi >= 0 ) {
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
` (5 preceding siblings ...)
2004-07-29 11:45 ` Domen Puncer
@ 2004-07-29 11:46 ` Domen Puncer
2004-07-29 11:46 ` Domen Puncer
` (8 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:46 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 990 bytes --]
Make code more readable with list_for_each_entry.
Compile tested.
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/drivers/usb/core/devices.c Wed Jul 14 19:15:07 2004
+++ list_for_each/drivers/usb/core/devices.c Wed Jul 28 18:49:26 2004
@@ -570,7 +570,6 @@
static ssize_t usb_device_read(struct file *file, char __user *buf, size_t nbytes, loff_t *ppos)
{
- struct list_head *buslist;
struct usb_bus *bus;
ssize_t ret, total_written = 0;
loff_t skip_bytes = *ppos;
@@ -582,12 +581,9 @@
if (!access_ok(VERIFY_WRITE, buf, nbytes))
return -EFAULT;
- /* enumerate busses */
down (&usb_bus_list_lock);
- for (buslist = usb_bus_list.next; buslist != &usb_bus_list; buslist = buslist->next) {
- /* print devices for this bus */
- bus = list_entry(buslist, struct usb_bus, bus_list);
-
+ /* print devices for all busses */
+ list_for_each_entry(bus, &usb_bus_list, bus_list) {
/* recurse through all children of the root hub */
if (!bus->root_hub)
continue;
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
` (6 preceding siblings ...)
2004-07-29 11:46 ` Domen Puncer
@ 2004-07-29 11:46 ` Domen Puncer
2004-07-29 11:47 ` Domen Puncer
` (7 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:46 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 784 bytes --]
Make code more readable with list_for_each_entry_safe.
(Is this a non i386? I can't compile it.)
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/drivers/usb/host/hc_sl811.c Wed Jun 16 07:19:43 2004
+++ list_for_each/drivers/usb/host/hc_sl811.c Wed Jul 28 18:53:01 2004
@@ -1343,15 +1343,11 @@
*****************************************************************/
static void __exit hci_hcd_cleanup (void)
{
- struct list_head *hci_l;
- hci_t *hci;
+ hci_t *hci, *tmp;
DBGFUNC ("Enter hci_hcd_cleanup\n");
- for (hci_l = hci_hcd_list.next; hci_l != &hci_hcd_list;) {
- hci = list_entry (hci_l, hci_t, hci_hcd_list);
- hci_l = hci_l->next;
+ list_for_each_entry_safe(hci, tmp, &hci_hcd_list, hci_hcd_list)
hc_release_hci (hci);
- }
}
module_init (hci_hcd_init);
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
` (7 preceding siblings ...)
2004-07-29 11:46 ` Domen Puncer
@ 2004-07-29 11:47 ` Domen Puncer
2004-07-29 11:47 ` Domen Puncer
` (6 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:47 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 10905 bytes --]
Make code more readable with list_for_each_entry.
Compile tested.
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/drivers/usb/host/uhci-hcd.c Fri Jul 23 16:00:25 2004
+++ list_for_each/drivers/usb/host/uhci-hcd.c Wed Jul 28 23:43:05 2004
@@ -330,7 +330,7 @@
static void uhci_insert_qh(struct uhci_hcd *uhci, struct uhci_qh *skelqh, struct urb *urb)
{
struct urb_priv *urbp = (struct urb_priv *)urb->hcpriv;
- struct list_head *tmp;
+ struct urb_priv *turbp;
struct uhci_qh *lqh;
/* Grab the last QH */
@@ -358,12 +358,8 @@
*/
lqh->link = cpu_to_le32(urbp->qh->dma_handle) | UHCI_PTR_QH;
if (lqh->urbp) {
- list_for_each (tmp, &lqh->urbp->queue_list) {
- struct urb_priv *turbp =
- list_entry(tmp, struct urb_priv, queue_list);
-
+ list_for_each_entry(turbp, &lqh->urbp->queue_list, queue_list)
turbp->qh->link = lqh->link;
- }
}
list_add_tail(&urbp->qh->list, &skelqh->list);
@@ -405,18 +401,11 @@
pqh = list_entry(qh->list.prev, struct uhci_qh, list);
pqh->link = newlink;
if (pqh->urbp) {
- struct list_head *head, *tmp;
-
- head = &pqh->urbp->queue_list;
- tmp = head->next;
- while (head != tmp) {
- struct urb_priv *turbp =
- list_entry(tmp, struct urb_priv, queue_list);
-
- tmp = tmp->next;
+ struct urb_priv *turbp;
+ list_for_each_entry(turbp, &pqh->urbp->queue_list,
+ queue_list)
turbp->qh->link = newlink;
- }
}
wmb();
@@ -447,21 +436,14 @@
static int uhci_fixup_toggle(struct urb *urb, unsigned int toggle)
{
struct urb_priv *urbp = (struct urb_priv *)urb->hcpriv;
- struct list_head *head, *tmp;
-
- head = &urbp->td_list;
- tmp = head->next;
- while (head != tmp) {
- struct uhci_td *td = list_entry(tmp, struct uhci_td, list);
-
- tmp = tmp->next;
+ struct uhci_td *td;
+ list_for_each_entry(td, &urbp->td_list, list) {
if (toggle)
td->token |= cpu_to_le32(TD_TOKEN_TOGGLE);
else
td->token &= ~cpu_to_le32(TD_TOKEN_TOGGLE);
-
toggle ^= 1;
}
@@ -481,17 +463,12 @@
/* Find the first URB in the queue */
if (eurbp->queued) {
- struct list_head *head = &eurbp->queue_list;
-
- tmp = head->next;
- while (tmp != head) {
+ list_for_each(tmp, &eurbp->queue_list) {
struct urb_priv *turbp =
list_entry(tmp, struct urb_priv, queue_list);
if (!turbp->queued)
break;
-
- tmp = tmp->next;
}
} else
tmp = &eurbp->queue_list;
@@ -522,9 +499,7 @@
static void uhci_delete_queued_urb(struct uhci_hcd *uhci, struct urb *urb)
{
- struct urb_priv *urbp, *nurbp;
- struct list_head *head, *tmp;
- struct urb_priv *purbp;
+ struct urb_priv *urbp, *nurbp, *purbp, *turbp;
struct uhci_td *pltd;
unsigned int toggle;
@@ -556,14 +531,7 @@
toggle = uhci_toggle(td_token(pltd)) ^ 1;
}
- head = &urbp->queue_list;
- tmp = head->next;
- while (head != tmp) {
- struct urb_priv *turbp;
-
- turbp = list_entry(tmp, struct urb_priv, queue_list);
- tmp = tmp->next;
-
+ list_for_each_entry(turbp, &urbp->queue_list, queue_list) {
if (!turbp->queued)
break;
toggle = uhci_fixup_toggle(turbp->urb, toggle);
@@ -637,7 +605,7 @@
static void uhci_destroy_urb_priv(struct uhci_hcd *uhci, struct urb *urb)
{
- struct list_head *head, *tmp;
+ struct uhci_td *td, *tmp;
struct urb_priv *urbp;
unsigned int age;
@@ -660,13 +628,7 @@
if (list_empty(&uhci->td_remove_list))
uhci_set_next_interrupt(uhci);
- head = &urbp->td_list;
- tmp = head->next;
- while (tmp != head) {
- struct uhci_td *td = list_entry(tmp, struct uhci_td, list);
-
- tmp = tmp->next;
-
+ list_for_each_entry_safe(td, tmp, &urbp->td_list, list) {
uhci_remove_td_from_urb(td);
uhci_remove_td(uhci, td);
list_add(&td->remove_list, &uhci->td_remove_list);
@@ -1083,21 +1045,14 @@
*/
static int uhci_result_common(struct uhci_hcd *uhci, struct urb *urb)
{
- struct list_head *tmp, *head;
struct urb_priv *urbp = urb->hcpriv;
- struct uhci_td *td;
+ struct uhci_td *td, *tmp;
unsigned int status = 0;
int ret = 0;
urb->actual_length = 0;
- head = &urbp->td_list;
- tmp = head->next;
- while (tmp != head) {
- td = list_entry(tmp, struct uhci_td, list);
-
- tmp = tmp->next;
-
+ list_for_each_entry_safe(td, tmp, &urbp->td_list, list) {
status = uhci_status_bits(td_status(td));
if (status & TD_CTRL_ACTIVE)
return -EINPROGRESS;
@@ -1180,17 +1135,12 @@
static int isochronous_find_limits(struct uhci_hcd *uhci, struct urb *urb, unsigned int *start, unsigned int *end)
{
struct urb *last_urb = NULL;
- struct list_head *tmp, *head;
+ struct urb_priv *up;
int ret = 0;
- head = &uhci->urb_list;
- tmp = head->next;
- while (tmp != head) {
- struct urb_priv *up = list_entry(tmp, struct urb_priv, urb_list);
+ list_for_each_entry(up, &uhci->urb_list, urb_list) {
struct urb *u = up->urb;
- tmp = tmp->next;
-
/* look for pending URB's with identical pipe handle */
if ((urb->pipe == u->pipe) && (urb->dev == u->dev) &&
(u->status == -EINPROGRESS) && (u != urb)) {
@@ -1276,7 +1226,7 @@
static int uhci_result_isochronous(struct uhci_hcd *uhci, struct urb *urb)
{
- struct list_head *tmp, *head;
+ struct uhci_td *td, *tmp;
struct urb_priv *urbp = (struct urb_priv *)urb->hcpriv;
int status;
int i, ret = 0;
@@ -1284,14 +1234,9 @@
urb->actual_length = 0;
i = 0;
- head = &urbp->td_list;
- tmp = head->next;
- while (tmp != head) {
- struct uhci_td *td = list_entry(tmp, struct uhci_td, list);
+ list_for_each_entry_safe(td, tmp, &urbp->td_list, list) {
int actlength;
- tmp = tmp->next;
-
if (td_status(td) & TD_CTRL_ACTIVE)
return -EINPROGRESS;
@@ -1315,20 +1260,15 @@
static struct urb *uhci_find_urb_ep(struct uhci_hcd *uhci, struct urb *urb)
{
- struct list_head *tmp, *head;
+ struct urb_priv *up, *tmp;
/* We don't match Isoc transfers since they are special */
if (usb_pipeisoc(urb->pipe))
return NULL;
- head = &uhci->urb_list;
- tmp = head->next;
- while (tmp != head) {
- struct urb_priv *up = list_entry(tmp, struct urb_priv, urb_list);
+ list_for_each_entry_safe(up, tmp, &uhci->urb_list, urb_list) {
struct urb *u = up->urb;
- tmp = tmp->next;
-
if (u->dev == urb->dev && u->status == -EINPROGRESS) {
/* For control, ignore the direction */
if (usb_pipecontrol(urb->pipe) &&
@@ -1478,7 +1418,7 @@
static void uhci_unlink_generic(struct uhci_hcd *uhci, struct urb *urb)
{
- struct list_head *head, *tmp;
+ struct list_head *head, *tmp, *next;
struct urb_priv *urbp = (struct urb_priv *)urb->hcpriv;
int prevactive = 1;
@@ -1498,15 +1438,12 @@
* for all types
*/
head = &urbp->td_list;
- tmp = head->next;
- while (tmp != head) {
+ list_for_each_safe(tmp, next, head) {
struct uhci_td *td = list_entry(tmp, struct uhci_td, list);
- tmp = tmp->next;
-
if (!(td_status(td) & TD_CTRL_ACTIVE) &&
(uhci_actual_length(td_status(td)) < uhci_expected_length(td_token(td)) ||
- tmp == head))
+ next == head))
usb_settoggle(urb->dev, uhci_endpoint(td_token(td)),
uhci_packetout(td_token(td)),
uhci_toggle(td_token(td)) ^ 1);
@@ -1573,18 +1510,15 @@
*/
head = &urbp->td_list;
- tmp = head->next;
- while (tmp != head) {
+ list_for_each(tmp, head) {
struct uhci_td *td = list_entry(tmp, struct uhci_td, list);
- tmp = tmp->next;
-
/*
* Make sure we don't do the last one (since it'll have the
* TERM bit set) as well as we skip every so many TD's to
* make sure it doesn't hog the bandwidth
*/
- if (tmp != head && (count % DEPTH_INTERVAL) == (DEPTH_INTERVAL - 1))
+ if (tmp->next != head && (count % DEPTH_INTERVAL) == (DEPTH_INTERVAL - 1))
td->link |= UHCI_PTR_DEPTH;
count++;
@@ -1609,7 +1543,8 @@
{
struct usb_hcd *hcd = (struct usb_hcd *)ptr;
struct uhci_hcd *uhci = hcd_to_uhci(hcd);
- struct list_head list, *tmp, *head;
+ struct urb_priv *up, *tmp;
+ struct list_head list;
unsigned long flags;
int called_uhci_finish_completion = 0;
@@ -1623,14 +1558,9 @@
called_uhci_finish_completion = 1;
}
- head = &uhci->urb_list;
- tmp = head->next;
- while (tmp != head) {
- struct urb_priv *up = list_entry(tmp, struct urb_priv, urb_list);
+ list_for_each_entry_safe(up, tmp, &uhci->urb_list, urb_list) {
struct urb *u = up->urb;
- tmp = tmp->next;
-
spin_lock(&u->lock);
/* Check if the FSBR timed out */
@@ -1652,14 +1582,9 @@
if (called_uhci_finish_completion)
wake_up_all(&uhci->waitqh);
- head = &list;
- tmp = head->next;
- while (tmp != head) {
- struct urb_priv *up = list_entry(tmp, struct urb_priv, urb_list);
+ list_for_each_entry_safe(up, tmp, &list, urb_list) {
struct urb *u = up->urb;
- tmp = tmp->next;
-
uhci_urb_dequeue(hcd, u);
}
@@ -1690,15 +1615,9 @@
static void uhci_free_pending_qhs(struct uhci_hcd *uhci)
{
- struct list_head *tmp, *head;
-
- head = &uhci->qh_remove_list;
- tmp = head->next;
- while (tmp != head) {
- struct uhci_qh *qh = list_entry(tmp, struct uhci_qh, remove_list);
-
- tmp = tmp->next;
+ struct uhci_qh *qh, *tmp;
+ list_for_each_entry_safe(qh, tmp, &uhci->qh_remove_list, remove_list) {
list_del_init(&qh->remove_list);
uhci_free_qh(uhci, qh);
@@ -1707,15 +1626,9 @@
static void uhci_free_pending_tds(struct uhci_hcd *uhci)
{
- struct list_head *tmp, *head;
-
- head = &uhci->td_remove_list;
- tmp = head->next;
- while (tmp != head) {
- struct uhci_td *td = list_entry(tmp, struct uhci_td, remove_list);
-
- tmp = tmp->next;
+ struct uhci_td *td, *tmp;
+ list_for_each_entry_safe(td, tmp, &uhci->td_remove_list, remove_list) {
list_del_init(&td->remove_list);
uhci_free_td(uhci, td);
@@ -1736,19 +1649,13 @@
static void uhci_finish_completion(struct usb_hcd *hcd, struct pt_regs *regs)
{
struct uhci_hcd *uhci = hcd_to_uhci(hcd);
- struct list_head *tmp, *head;
+ struct urb_priv *urbp, *tmp;
- head = &uhci->complete_list;
- tmp = head->next;
- while (tmp != head) {
- struct urb_priv *urbp = list_entry(tmp, struct urb_priv, urb_list);
+ list_for_each_entry_safe(urbp, tmp, &uhci->complete_list, urb_list) {
struct urb *urb = urbp->urb;
list_del_init(&urbp->urb_list);
uhci_finish_urb(hcd, urb, regs);
-
- head = &uhci->complete_list;
- tmp = head->next;
}
}
@@ -1764,7 +1671,7 @@
struct uhci_hcd *uhci = hcd_to_uhci(hcd);
unsigned long io_addr = uhci->io_addr;
unsigned short status;
- struct list_head *tmp, *head;
+ struct urb_priv *urbp;
unsigned int age;
/*
@@ -1812,13 +1719,8 @@
uhci_set_next_interrupt(uhci);
/* Walk the list of pending URB's to see which ones completed */
- head = &uhci->urb_list;
- tmp = head->next;
- while (tmp != head) {
- struct urb_priv *urbp = list_entry(tmp, struct urb_priv, urb_list);
+ list_for_each_entry(urbp, &uhci->urb_list, urb_list) {
struct urb *urb = urbp->urb;
-
- tmp = tmp->next;
/* Checks the status and does all of the magic necessary */
uhci_transfer_result(uhci, urb);
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
` (8 preceding siblings ...)
2004-07-29 11:47 ` Domen Puncer
@ 2004-07-29 11:47 ` Domen Puncer
2004-07-29 11:48 ` Domen Puncer
` (5 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:47 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 646 bytes --]
Use list_for_each_entry to make code more readable.
Compile tested.
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/drivers/usb/media/dabusb.c Wed Jul 14 19:15:08 2004
+++ list_for_each/drivers/usb/media/dabusb.c Wed Jul 28 19:58:04 2004
@@ -109,16 +109,13 @@
static int dabusb_cancel_queue (pdabusb_t s, struct list_head *q)
{
unsigned long flags;
- struct list_head *p;
pbuff_t b;
dbg("dabusb_cancel_queue");
spin_lock_irqsave (&s->lock, flags);
- for (p = q->next; p != q; p = p->next) {
- b = list_entry (p, buff_t, buff_list);
-
+ list_for_each_entry(b, q, buff_list) {
#ifdef DEBUG
dump_urb(b->purb);
#endif
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
` (9 preceding siblings ...)
2004-07-29 11:47 ` Domen Puncer
@ 2004-07-29 11:48 ` Domen Puncer
2004-07-29 11:48 ` Domen Puncer
` (4 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:48 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 1701 bytes --]
Use list_for_each_entry_safe to make code more readable.
Compile tested.
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/drivers/usb/serial/ipaq.c Fri Jul 23 16:00:26 2004
+++ list_for_each/drivers/usb/serial/ipaq.c Wed Jul 28 20:02:38 2004
@@ -417,9 +417,8 @@
struct ipaq_private *priv = usb_get_serial_port_data(port);
struct usb_serial *serial = port->serial;
int count, room;
- struct ipaq_packet *pkt;
+ struct ipaq_packet *pkt, *tmp;
struct urb *urb = port->write_urb;
- struct list_head *tmp;
if (urb->status == -EINPROGRESS) {
/* Should never happen */
@@ -427,9 +426,7 @@
return;
}
room = URBDATA_SIZE;
- for (tmp = priv->queue.next; tmp != &priv->queue;) {
- pkt = list_entry(tmp, struct ipaq_packet, list);
- tmp = tmp->next;
+ list_for_each_entry_safe(pkt, tmp, &priv->queue, list) {
count = min(room, (int)(pkt->len - pkt->written));
memcpy(urb->transfer_buffer + (URBDATA_SIZE - room),
pkt->data + pkt->written, count);
@@ -501,22 +498,16 @@
static void ipaq_destroy_lists(struct usb_serial_port *port)
{
struct ipaq_private *priv = usb_get_serial_port_data(port);
- struct list_head *tmp;
- struct ipaq_packet *pkt;
+ struct ipaq_packet *pkt, *tmp;
- for (tmp = priv->queue.next; tmp != &priv->queue;) {
- pkt = list_entry(tmp, struct ipaq_packet, list);
- tmp = tmp->next;
+ list_for_each_entry_safe(pkt, tmp, &priv->queue, list) {
kfree(pkt->data);
kfree(pkt);
}
- for (tmp = priv->freelist.next; tmp != &priv->freelist;) {
- pkt = list_entry(tmp, struct ipaq_packet, list);
- tmp = tmp->next;
+ list_for_each_entry_safe(pkt, tmp, &priv->freelist, list) {
kfree(pkt->data);
kfree(pkt);
}
- return;
}
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
` (10 preceding siblings ...)
2004-07-29 11:48 ` Domen Puncer
@ 2004-07-29 11:48 ` Domen Puncer
2004-07-29 11:49 ` [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: fs-dquot.c Domen Puncer
` (3 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:48 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 937 bytes --]
Use list_for_each_entry_safe to make code more readable.
Compile tested.
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/fs/coda/psdev.c Fri Jul 23 16:00:27 2004
+++ list_for_each/fs/coda/psdev.c Wed Jul 28 20:10:31 2004
@@ -310,8 +310,7 @@
static int coda_psdev_release(struct inode * inode, struct file * file)
{
struct venus_comm *vcp = (struct venus_comm *) file->private_data;
- struct upc_req *req;
- struct list_head *lh, *next;
+ struct upc_req *req, *tmp;
lock_kernel();
if ( !vcp->vc_inuse ) {
@@ -326,8 +325,7 @@
}
/* Wakeup clients so they can return. */
- list_for_each_safe(lh, next, &vcp->vc_pending) {
- req = list_entry(lh, struct upc_req, uc_chain);
+ list_for_each_entry_safe(req, tmp, &vcp->vc_pending, uc_chain) {
/* Async requests need to be freed here */
if (req->uc_flags & REQ_ASYNC) {
CODA_FREE(req->uc_data, sizeof(struct coda_in_hdr));
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: fs-dquot.c
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
` (11 preceding siblings ...)
2004-07-29 11:48 ` Domen Puncer
@ 2004-07-29 11:49 ` Domen Puncer
2004-07-29 11:49 ` [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
` (2 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:49 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 744 bytes --]
Make code more readable with list_for_each_entry_safe.
(Didn't compile before, doesn't compile now)
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/fs/dquot.c Wed Jul 14 19:15:11 2004
+++ list_for_each/fs/dquot.c Wed Jul 28 20:20:52 2004
@@ -406,13 +406,10 @@
* for this sb+type at all. */
static void invalidate_dquots(struct super_block *sb, int type)
{
- struct dquot *dquot;
- struct list_head *head;
+ struct dquot *dquot, *tmp;
spin_lock(&dq_list_lock);
- for (head = inuse_list.next; head != &inuse_list;) {
- dquot = list_entry(head, struct dquot, dq_inuse);
- head = head->next;
+ list_for_each_entry_safe(dquot, tmp, &inuse_list, dq_inuse) {
if (dquot->dq_sb != sb)
continue;
if (dquot->dq_type != type)
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
` (12 preceding siblings ...)
2004-07-29 11:49 ` [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: fs-dquot.c Domen Puncer
@ 2004-07-29 11:49 ` Domen Puncer
2004-07-29 11:50 ` Domen Puncer
2004-07-29 11:50 ` Domen Puncer
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:49 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 1728 bytes --]
Use list_for_each_entry to make code more readable.
Compile tested.
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/fs/jffs/intrep.c Wed Jul 14 19:15:11 2004
+++ list_for_each/fs/jffs/intrep.c Wed Jul 28 20:34:06 2004
@@ -1619,12 +1619,10 @@
{
struct jffs_file *f;
int i = ino % c->hash_len;
- struct list_head *tmp;
D3(printk("jffs_find_file(): ino: %u\n", ino));
- for (tmp = c->hash[i].next; tmp != &c->hash[i]; tmp = tmp->next) {
- f = list_entry(tmp, struct jffs_file, hash);
+ list_for_each_entry(f, &c->hash[i], hash) {
if (ino != f->ino)
continue;
D3(printk("jffs_find_file(): Found file with ino "
@@ -2020,13 +2018,12 @@
int result = 0;
for (pos = 0; pos < c->hash_len; pos++) {
- struct list_head *p, *next;
- for (p = c->hash[pos].next; p != &c->hash[pos]; p = next) {
- /* We need a reference to the next file in the
- list because `func' might remove the current
- file `f'. */
- next = p->next;
- r = func(list_entry(p, struct jffs_file, hash));
+ struct jffs_file *f, *next;
+
+ /* We must do _safe, because 'func' might remove the
+ current file 'f' from the list. */
+ list_for_each_entry_safe(f, next, &c->hash[pos], hash) {
+ r = func(f);
if (r < 0)
return r;
result += r;
@@ -2589,9 +2586,8 @@
printk("JFFS: Dumping the file system's hash table...\n");
for (i = 0; i < c->hash_len; i++) {
- struct list_head *p;
- for (p = c->hash[i].next; p != &c->hash[i]; p = p->next) {
- struct jffs_file *f=list_entry(p,struct jffs_file,hash);
+ struct jffs_file *f;
+ list_for_each_entry(f, &c->hash[i], hash) {
printk("*** c->hash[%u]: \"%s\" "
"(ino: %u, pino: %u)\n",
i, (f->name ? f->name : ""),
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
` (13 preceding siblings ...)
2004-07-29 11:49 ` [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
@ 2004-07-29 11:50 ` Domen Puncer
2004-07-29 11:50 ` Domen Puncer
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:50 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 777 bytes --]
Make code more readable with list_for_each_entry.
Compile tested.
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/fs/namespace.c Fri Jul 23 16:00:27 2004
+++ list_for_each/fs/namespace.c Wed Jul 28 20:37:11 2004
@@ -536,7 +536,6 @@
static struct vfsmount *copy_tree(struct vfsmount *mnt, struct dentry *dentry)
{
struct vfsmount *res, *p, *q, *r, *s;
- struct list_head *h;
struct nameidata nd;
res = q = clone_mnt(mnt, dentry);
@@ -545,8 +544,7 @@
q->mnt_mountpoint = mnt->mnt_mountpoint;
p = mnt;
- for (h = mnt->mnt_mounts.next; h != &mnt->mnt_mounts; h = h->next) {
- r = list_entry(h, struct vfsmount, mnt_child);
+ list_for_each_entry(r, &mnt->mnt_mounts, mnt_child) {
if (!lives_below_in_same_fs(r->mnt_mountpoint, dentry))
continue;
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry:
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
` (14 preceding siblings ...)
2004-07-29 11:50 ` Domen Puncer
@ 2004-07-29 11:50 ` Domen Puncer
15 siblings, 0 replies; 17+ messages in thread
From: Domen Puncer @ 2004-07-29 11:50 UTC (permalink / raw)
To: kernel-janitors
[-- Attachment #1: Type: text/plain, Size: 1309 bytes --]
Use list_for_each_entry_reverse to make code more readable
Compile tested.
Signed-off-by: Domen Puncer <domen@coderock.org>
--- c/sound/core/memory.c Wed Jun 16 07:18:57 2004
+++ list_for_each/sound/core/memory.c Wed Jul 28 20:41:32 2004
@@ -64,25 +64,20 @@
void snd_memory_done(void)
{
- struct list_head *head;
struct snd_alloc_track *t;
if (snd_alloc_kmalloc > 0)
snd_printk(KERN_ERR "Not freed snd_alloc_kmalloc = %li\n", snd_alloc_kmalloc);
if (snd_alloc_vmalloc > 0)
snd_printk(KERN_ERR "Not freed snd_alloc_vmalloc = %li\n", snd_alloc_vmalloc);
- for (head = snd_alloc_kmalloc_list.prev;
- head != &snd_alloc_kmalloc_list; head = head->prev) {
- t = list_entry(head, struct snd_alloc_track, list);
+ list_for_each_entry_reverse(t, &snd_alloc_kmalloc_list, list) {
if (t->magic != KMALLOC_MAGIC) {
snd_printk(KERN_ERR "Corrupted kmalloc\n");
break;
}
snd_printk(KERN_ERR "kmalloc(%ld) from %p not freed\n", (long) t->size, t->caller);
}
- for (head = snd_alloc_vmalloc_list.prev;
- head != &snd_alloc_vmalloc_list; head = head->prev) {
- t = list_entry(head, struct snd_alloc_track, list);
+ list_for_each_entry_reverse(t, &snd_alloc_vmalloc_list, list) {
if (t->magic != VMALLOC_MAGIC) {
snd_printk(KERN_ERR "Corrupted vmalloc\n");
break;
[-- Attachment #2: Type: text/plain, Size: 167 bytes --]
_______________________________________________
Kernel-janitors mailing list
Kernel-janitors@lists.osdl.org
http://lists.osdl.org/mailman/listinfo/kernel-janitors
^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2004-07-29 11:50 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-07-29 11:42 [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
2004-07-29 11:43 ` Domen Puncer
2004-07-29 11:43 ` Domen Puncer
2004-07-29 11:44 ` Domen Puncer
2004-07-29 11:44 ` Domen Puncer
2004-07-29 11:45 ` Domen Puncer
2004-07-29 11:45 ` Domen Puncer
2004-07-29 11:46 ` Domen Puncer
2004-07-29 11:46 ` Domen Puncer
2004-07-29 11:47 ` Domen Puncer
2004-07-29 11:47 ` Domen Puncer
2004-07-29 11:48 ` Domen Puncer
2004-07-29 11:48 ` Domen Puncer
2004-07-29 11:49 ` [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: fs-dquot.c Domen Puncer
2004-07-29 11:49 ` [Kernel-janitors] [patch 2.6.8-rc2] list_for_each_entry: Domen Puncer
2004-07-29 11:50 ` Domen Puncer
2004-07-29 11:50 ` Domen Puncer
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.