Re: [PATCH] f2fs: use list_for_each rather than list_for_each_safe,in remove_orphan_inode()

From: Gu Zheng
Date: Mon Jul 22 2013 - 21:09:46 EST


On 07/22/2013 11:36 PM, Nikola Pajkovsky wrote:

> Gu Zheng <guz.fnst@xxxxxxxxxxxxxx> writes:
>
>> As we remove the target single node, so list_for_each is enought, in order to
>> clean up, we use list_for_each_entry instead.
>>
>> Signed-off-by: Gu Zheng <guz.fnst@xxxxxxxxxxxxxx>
>> ---
>> fs/f2fs/checkpoint.c | 5 ++---
>> 1 files changed, 2 insertions(+), 3 deletions(-)
>>
>> diff --git a/fs/f2fs/checkpoint.c b/fs/f2fs/checkpoint.c
>> index 290db04..87f7bc2 100644
>> --- a/fs/f2fs/checkpoint.c
>> +++ b/fs/f2fs/checkpoint.c
>> @@ -237,13 +237,12 @@ out:
>>
>> void remove_orphan_inode(struct f2fs_sb_info *sbi, nid_t ino)
>> {
>> - struct list_head *this, *next, *head;
>> + struct list_head *head;
>> struct orphan_inode_entry *orphan;
>>
>> mutex_lock(&sbi->orphan_inode_mutex);
>> head = &sbi->orphan_inode_list;
>> - list_for_each_safe(this, next, head) {
>> - orphan = list_entry(this, struct orphan_inode_entry, list);
>> + list_for_each_entry(orphan, head, list) {
>> if (orphan->ino == ino) {
>> list_del(&orphan->list);
>> kmem_cache_free(orphan_entry_slab, orphan);
>
> you have meant list_for_each_entry_safe, haven't you?

No that, here list_for_each_entry is suitable, because we delete only one entry.

Thanks,
Gu

>


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/