Re: [PATCH v2 1/5] fat: allocate persistent inode numbers

From: Namjae Jeon
Date: Tue Sep 11 2012 - 11:13:23 EST


2012/9/11 OGAWA Hirofumi <hirofumi@xxxxxxxxxxxxxxxxxx>:
> Namjae Jeon <linkinjeon@xxxxxxxxx> writes:
>
>>> Since rename() will be disabled on stable ino patches, this will be
>>> unfixable, so rather maybe it is worse.
>> Currently with our patchset : only rename issue (could not find any
>> correct approach to ignore this. If we do not update this immediately
>> at i_pos change â it is just delaying the problem). And we can return
>> EBUSY when rename is called while process is opening file with rename
>> limitation. Without our patchset also - the rename issue can occur
>> over NFS file access - when the inode is evicted from the SERVER
>> cache.
>
> Important difference is whether rename issue is unfixable or not.
Currently I don't have any idea to fix rename issue in -mm.
>
>> I think that it is unfixable because we can not know i_pos of inode
>> changed by rename.
>> And even though we know it, there is no rebuild inode routine in -mm.
>> And It even can not fix in our patches.
>
>>> And are you tried https://lkml.org/lkml/2012/6/29/381 patches? It sounds
>>> like to improve performance by enabling lookupcache.
>> We checked this patches when facing estale issue in -mm.
>> But It is no use, these patches just retry system call one more when
>> estale error.
>
> What happens if client retried from lookup() after -ESTALE? (client NFS
> doesn't have the name of entry anymore?)
Need to rebuild inode routine because inode cache is already evicted on Server.
>
> I'm assuming the retry means - it restarts from building the NFS file
> handle. I might be just wrong here though.
As I remember, just retry in VFS of NFS client..I heard this patch is
needed for
a very specific set of circumstances where an entry goes stale once
between the lookup and the actual operation(s).
It is not related with current issues(inode cache eviction on server).
>
>>> I'd like to be knowing the critical reason we have to replace it.
>> I arrange to help your decision as the following.
>>
>> 1. lookup cache is enable at default in NFS. So estale error can be
>> easily occurred in -mm.
>> 2. If lookup cache is disable, there is rename issue and file lookup
>> performance is dropped in -mm.
>> 4. If we use our patches, there is rename issue. but we can use VFAT
>> over NFS with lookup cache enable.
>> 5. If we use read-only with our patches, there is no issue.
>
> Again, I'm care about whether rename issue is unfixable or not.
I think that It is unfixable in -mm.
>In stable ino patches, it will never be fixable.
>
>
> What do you think about this rename issue, Steven?
> --
> OGAWA Hirofumi <hirofumi@xxxxxxxxxxxxxxxxxx>
--
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/