[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <bcbb8ddc-3ddf-4a91-6e92-d5cee2722bad@paragon-software.com>
Date: Wed, 6 Oct 2021 17:47:03 +0300
From: Konstantin Komarov <almaz.alexandrovich@...agon-software.com>
To: Mohammad Rasim <mohammad.rasim96@...il.com>,
Kari Argillander <kari.argillander@...il.com>
CC: <ntfs3@...ts.linux.dev>, <linux-kernel@...r.kernel.org>,
<linux-fsdevel@...r.kernel.org>
Subject: Re: [PATCH] fs/ntfs3: Check for NULL if ATTR_EA_INFO is incorrect
On 04.10.2021 23:39, Mohammad Rasim wrote:
>
> On 10/3/21 20:50, Kari Argillander wrote:
>> On Wed, Sep 29, 2021 at 07:35:43PM +0300, Konstantin Komarov wrote:
>>> This can be reason for reported panic.
>>> Fixes: 4342306f0f0d ("fs/ntfs3: Add file operations and implementation")
>> I see that you have include this to devel branch but you did not send V2
>> [1]. I also included Mohammad Rasim to this thread. Maybe they can test
>> this patch. Rasim can you test [2] if your problem will be fixed with
>> this tree. Or just test this patch if you prefer that way.
>>
>> [1]: github.com/Paragon-Software-Group/linux-ntfs3/commit/35afb70dcfe4eb445060dd955e5b67d962869ce5
>> [2]: github.com/Paragon-Software-Group/linux-ntfs3/tree/devel
>
> Yeah unfortunately the problem still exist, moving the buildroot git tree from my nvme ext4 partition to my wd ntfs partition still causes the panic.
>
> Note that i used the master branch if that matters but it contains the same commit
>
>
> Regards
>
Is panic the same as old one?
BUG: kernel NULL pointer dereference, address: 000000000000000e
RIP: 0010:ni_write_inode+0xe6b/0xed0 [ntfs3]
etc.
>>> Signed-off-by: Konstantin Komarov <almaz.alexandrovich@...agon-software.com>
>>> ---
>>> fs/ntfs3/frecord.c | 4 +++-
>>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/fs/ntfs3/frecord.c b/fs/ntfs3/frecord.c
>>> index 9a53f809576d..007602badd90 100644
>>> --- a/fs/ntfs3/frecord.c
>>> +++ b/fs/ntfs3/frecord.c
>>> @@ -3080,7 +3080,9 @@ static bool ni_update_parent(struct ntfs_inode *ni, struct NTFS_DUP_INFO *dup,
>>> const struct EA_INFO *info;
>>> info = resident_data_ex(attr, sizeof(struct EA_INFO));
>>> - dup->ea_size = info->size_pack;
>>> + /* If ATTR_EA_INFO exists 'info' can't be NULL. */
>>> + if (info)
>>> + dup->ea_size = info->size_pack;
>>> }
>>> }
>>> --
>>> 2.33.0
>>>
Powered by blists - more mailing lists