Messages in this thread | | | From | OGAWA Hirofumi <> | Subject | Re: [PATCH 5/5] fat: add mutex lock to fat_build_inode | Date | Wed, 31 Oct 2012 09:46:49 +0900 |
| |
Namjae Jeon <linkinjeon@gmail.com> writes:
> 2012/10/30, Andrew Morton <akpm@linux-foundation.org>: >> On Sun, 28 Oct 2012 10:53:43 +0900 >> Namjae Jeon <linkinjeon@gmail.com> wrote: >> >>> From: Namjae Jeon <namjae.jeon@samsung.com> >>> >>> fat_nfs_get_inode does not hold i_mutex of parent directory.So add >>> lock to fat_build_inode. >> > Hi. Andrew. >> Well.. why? Presumably this patch fixes some race. A good >> description of that race would be useful - partly because others may >> then be able to suggest alternative ways of fixing that bug. > We are making use of fat_build_inode to build the inode using 'i_pos'. > Since, this function is local to FAT and when mounted over NFS. We can > make use of FAT parallely from local NFS Server and mounted from NFS > client. So, in order to avoid race to multiple regeneration for the > same 'i_pos' - we have introduced this locking.
This lock fixes the NFS patches. FAT inode is embedded into directory. So usual local ->lookup path is exclusive by inode->i_mutex. But NFS patches (current -mm, IIRC) introduce the new path for FH => inode lookup.
So, this lock is introduced. -- OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
| |