2012/10/14, OGAWA Hirofumi <hirof...@mail.parknet.co.jp>:
> Namjae Jeon <linkinj...@gmail.com> writes:
>
>>>>>> +     if (!fat_get_dotdot_entry(child_dir->d_inode, &dotdot_bh, &de))
>>>>>> {
>>>>>> +             parent_logstart = fat_get_start(sbi, de);
>>>>>>               parent_inode = fat_dget(sb, parent_logstart);
>>>>>> +             if (parent_inode || sbi->options.nfs !=
>>>>>> FAT_NFS_NOSTALE_RO)
>>>>>> +                     goto out;
>>>>>> +             if (!parent_logstart)
>>>>>> +                     /*logstart of dotdot entry is zero if
>>>>>> +                     * if the directory's parent is root
>>>>>> +                     */
>>>>>> +                     parent_inode = sb->s_root->d_inode;
>>>>>
>>>>> get_parent() should not be called for root dir, right?
>>>> Yes.
>>>
>>> Ah, actual question was - subdir of root can be passed to this? I guess
>>> it is possible...
>> Yes, you're right.
>
> OK, I think I got where is wrong. If it is the subdir of rootdir,
> fat_dget() should get the inode of root?
That is correct. Whenever fat_dget() is called for sub-directories
which is in root folder, we assign root inode as parent inode.
>
> So, I guess if parent_logstart == 0, it is BUG().
Would you explain more why you think it is BUG() ?

Thanks.
> --
> OGAWA Hirofumi <hirof...@mail.parknet.co.jp>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to