Messages in this thread | | | Subject | Re: [PATCH] ocfs2: fix the oops problem when write cloned file | From | Joseph Qi <> | Date | Mon, 3 Feb 2020 16:15:12 +0800 |
| |
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@linux.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@linux.alibaba.com> > Sent: Monday, February 3, 2020 1:15 PM > To: Gang He; mark@fasheh.com; jlbec@evilplan.org; gechangwei@live.cn; Shuning Zhang > Cc: linux-kernel@vger.kernel.org; ocfs2-devel@oss.oracle.com; akpm@linux-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 >
| |