[Ocfs2-devel] ocfs2: fix sparse file & data ordering issue in direct io

Eric Ren zren at suse.com
Wed Nov 16 19:08:08 PST 2016


Hi,

On 11/16/2016 06:45 PM, Dan Carpenter wrote:
> On Wed, Nov 16, 2016 at 10:33:49AM +0800, Eric Ren wrote:
> That silences the warning, of course, but I feel like the code is buggy.
> How do we know that we don't hit that exit path?
Sorry, I missed your point. Do you mean the below?

"1817 goto out_quota; " will free (*wc), but with "ret = 0". Thus, the caller
think it's OK to use (*wc), but...

Do I understand you correctly?

Eric
>
> fs/ocfs2/aops.c
>    1808          /*
>    1809           * ocfs2_grab_pages_for_write() returns -EAGAIN if it could not lock
>    1810           * the target page. In this case, we exit with no error and no target
>    1811           * page. This will trigger the caller, page_mkwrite(), to re-try
>    1812           * the operation.
>    1813           */
>    1814          if (ret == -EAGAIN) {
>    1815                  BUG_ON(wc->w_target_page);
>    1816                  ret = 0;
>    1817                  goto out_quota;
>    1818          }
>
> regards,
> dan carpenter
>
>
>




More information about the Ocfs2-devel mailing list