Messages in this thread | | | Date | Wed, 5 Dec 2012 20:56:38 +0900 | Subject | Re: [PATCH v5 7/8] fat (exportfs): rebuild directory-inode if fat_dget() fails | From | Namjae Jeon <> |
| |
2012/12/5, OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>: > Namjae Jeon <linkinjeon@gmail.com> 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@mail.parknet.co.jp> >
| |