[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <9dfcde60-f8da-6458-4992-ae1d5dcc1ec1@linux.alibaba.com>
Date: Mon, 3 Feb 2020 16:15:12 +0800
From: Joseph Qi <joseph.qi@...ux.alibaba.com>
To: Gang He <GHe@...e.com>, "mark@...heh.com" <mark@...heh.com>,
"jlbec@...lplan.org" <jlbec@...lplan.org>,
"gechangwei@...e.cn" <gechangwei@...e.cn>,
Shuning Zhang <sunny.s.zhang@...cle.com>
Cc: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"ocfs2-devel@....oracle.com" <ocfs2-devel@....oracle.com>,
"akpm@...ux-foundation.org" <akpm@...ux-foundation.org>
Subject: Re: [PATCH] ocfs2: fix the oops problem when write cloned file
On 20/2/3 13:32, Gang He wrote:
> Hi Joseph,
>
> before calling ocfs2_refcount_cow() in the function ocfs2_prepare_inode_for_write(), we do not use inode buffer_head.
> So, we can let buffer_head is NULL.
> But, when we invoke ocfs2_refcount_cow() function, we have to pass inode buffer_head without NULL pointer.
> That is why writing clone file will cause oops and kill the user-space process.
>
Okay, so before commit e74540b28556, we will always get a valid buffer
head in ocfs2_prepare_inode_for_refcount().
You can feel free to add:
Reviewed-by: Joseph Qi <joseph.qi@...ux.alibaba.com>
BTW, you'd better resend the patch in a single thread, for the
convenience of merging by akpm.
>
> ________________________________________
> From: Joseph Qi <joseph.qi@...ux.alibaba.com>
> Sent: Monday, February 3, 2020 1:15 PM
> To: Gang He; mark@...heh.com; jlbec@...lplan.org; gechangwei@...e.cn; Shuning Zhang
> Cc: linux-kernel@...r.kernel.org; ocfs2-devel@....oracle.com; akpm@...ux-foundation.org
> Subject: Re: [PATCH] ocfs2: fix the oops problem when write cloned file
>
>
>
> On 20/2/3 10:17, Gang He wrote:
>> Hello Joseph, Changwei, Sunny and all,
>>
>> Could you help to review this patch?
>> This patch will fix the oops problem caused by write ocfs2 clone files.
>> The root cause is inode buffer head is NULL when calling ocfs2_refcount_cow.
>> Secondly, we should use EX meta lock when calling ocfs2_refcount_cow.
>>
> Before commit e74540b28556, we may also use NULL buffer head in case of
> overwrite, so why there is no such issue before?
>
> Thanks,
> Joseph
>
Powered by blists - more mailing lists