Re: [PATCH v5 7/8] fat (exportfs): rebuild directory-inode iffat_dget() fails
From: Namjae Jeon
Date: Wed Dec 05 2012 - 06:56:43 EST
2012/12/5, OGAWA Hirofumi <hirofumi@xxxxxxxxxxxxxxxxxx>:
> Namjae Jeon <linkinjeon@xxxxxxxxx> writes:
>
>>>>> This became much better than before. However, we have to consolidate
>>>>> the
>>>>> code with fat_search_long() finally.
>>>>>
>>>>> E.g. this version is having the issue already fixed. If there is
>>>>> corruption in fat cluster-chain, it lead to infinite
>>>>> loop. fat_get_cluster() checks infinite loop by limit.
>>>> since, the focus this time was for NFS functionality for FAT (removing
>>>> ESTALE error). The changes were made in that context.
>>>>
>>>> Later, we can make the changes as part of code reorganizing which can
>>>> be controlled via. Separate patches which do not have any impact on
>>>> default functionality and verification can be carried out in that
>>>> scope.
>>>
>>> Right. But non-production code shouldn't go into linus tree. I meant, we
>>> can test this patch series, but not yet production quality.
>> Is there any other thing which seems potential issue than offsetof()?
>> if yes, which problem didn't lead to production quality do you think ?
>>
>> +#define FAT_FID_SIZE_WITHOUT_PARENT (offsetof(struct fat_fid, \
>> + parent_i_pos_hi)/4)
>> Since this expression does not result proper integer value, so will it
>> be correct to directly put the value like
>> +#define FAT_FID_SIZE_WITHOUT_PARENT 3
>
> The issue is what I explained in the above "E.g.".
>
> Directory traversal logic should be consolidate with fat_search_log().
> Otherwise, like this nfs implement, we will introduce already-fixed-problem
> again. And we will be bothered to fix same issue in future.
Okay, We will check how we can consolidate the 2 paths to avoid any issue.
Thanks OGAWA!
> --
> 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/