All of lore.kernel.org
 help / color / mirror / Atom feed
From: Souptick Joarder <jrdr.linux@gmail.com>
To: Jan Kara <jack@suse.cz>
Cc: syzbot+87a05ae4accd500f5242@syzkaller.appspotmail.com,
	ak@linux.intel.com, Andrew Morton <akpm@linux-foundation.org>,
	linux-kernel@vger.kernel.org, Linux-MM <linux-mm@kvack.org>,
	mawilcox@microsoft.com, mgorman@techsingularity.net,
	syzkaller-bugs@googlegroups.com, tim.c.chen@linux.intel.com,
	zwisler@kernel.org
Subject: Re: linux-next test error
Date: Thu, 6 Sep 2018 00:37:06 +0530	[thread overview]
Message-ID: <CAFqt6zaeOzrzMCqtnv=3gF4+K9HGtbB0C7bOeE+6YmBvvxBaxQ@mail.gmail.com> (raw)
In-Reply-To: <20180905085545.GD24902@quack2.suse.cz>

On Wed, Sep 5, 2018 at 2:25 PM Jan Kara <jack@suse.cz> wrote:
>
> On Wed 05-09-18 00:13:02, syzbot wrote:
> > Hello,
> >
> > syzbot found the following crash on:
> >
> > HEAD commit:    387ac6229ecf Add linux-next specific files for 20180905
> > git tree:       linux-next
> > console output: https://syzkaller.appspot.com/x/log.txt?x=149c67a6400000
> > kernel config:  https://syzkaller.appspot.com/x/.config?x=ad5163873ecfbc32
> > dashboard link: https://syzkaller.appspot.com/bug?extid=87a05ae4accd500f5242
> > compiler:       gcc (GCC) 8.0.1 20180413 (experimental)
> >
> > Unfortunately, I don't have any reproducer for this crash yet.
> >
> > IMPORTANT: if you fix the bug, please add the following tag to the commit:
> > Reported-by: syzbot+87a05ae4accd500f5242@syzkaller.appspotmail.com
> >
> > INFO: task hung in do_page_mkwriteINFO: task syz-fuzzer:4876 blocked for
> > more than 140 seconds.
> >       Not tainted 4.19.0-rc2-next-20180905+ #56
> > "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
> > syz-fuzzer      D21704  4876   4871 0x00000000
> > Call Trace:
> >  context_switch kernel/sched/core.c:2825 [inline]
> >  __schedule+0x87c/0x1df0 kernel/sched/core.c:3473
> >  schedule+0xfb/0x450 kernel/sched/core.c:3517
> >  io_schedule+0x1c/0x70 kernel/sched/core.c:5140
> >  wait_on_page_bit_common mm/filemap.c:1100 [inline]
> >  __lock_page+0x5b7/0x7a0 mm/filemap.c:1273
> >  lock_page include/linux/pagemap.h:483 [inline]
> >  do_page_mkwrite+0x429/0x520 mm/memory.c:2391
>
> Waiting for page lock after ->page_mkwrite callback. Which means
> ->page_mkwrite did not return VM_FAULT_LOCKED but 0. Looking into
> linux-next... indeed "fs: convert return type int to vm_fault_t" has busted
> block_page_mkwrite(). It has to return VM_FAULT_LOCKED and not 0 now.
> Souptick, can I ask you to run 'fstests' for at least common filesystems
> like ext4, xfs, btrfs when you change generic filesystem code please? That
> would catch a bug like this immediately. Thanks.

Looking into existing code block_page_mkwrite() returns 0, not VM_FAULT_LOCKED
in true path and this patch doesn't change any existing behaviour of
block_page_mkwrite()
except adding one new input parameter to return err value to caller function.

-int ext4_page_mkwrite(struct vm_fault *vmf)
+vm_fault_t ext4_page_mkwrite(struct vm_fault *vmf)

+       err = 0;
+       ret = block_page_mkwrite(vma, vmf, get_block, &err);
        if (!ret && ext4_should_journal_data(inode)) {
                if (ext4_walk_page_buffers(handle, page_buffers(page), 0,
                          PAGE_SIZE, NULL, do_journal_get_write_access)) {
                        unlock_page(page);
-                       ret = VM_FAULT_SIGBUS;

I think, this part has created problem where page_mkwrite()
end up with returning 0.

Correct me if I am wrong.

  parent reply	other threads:[~2018-09-05 19:04 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-09-05  7:13 linux-next test error syzbot
2018-09-05  7:17 ` Dmitry Vyukov
2018-09-05  8:55 ` Jan Kara
2018-09-05  9:50   ` Souptick Joarder
2018-09-05  9:53     ` Dmitry Vyukov
2018-09-05  9:57       ` Dmitry Vyukov
2018-09-05 13:34     ` Theodore Y. Ts'o
2018-09-05 18:44       ` Christoph Hellwig
2018-09-05 19:24       ` Souptick Joarder
2018-09-06  8:38         ` Jan Kara
2018-09-06 12:26           ` Souptick Joarder
2018-09-06 13:05             ` Matthew Wilcox
2018-09-06 13:12             ` Theodore Y. Ts'o
2018-09-06 14:07               ` Theodore Y. Ts'o
2018-09-06 16:00               ` Matthew Wilcox
2018-09-05 13:55     ` Jan Kara
2018-09-05 19:07   ` Souptick Joarder [this message]
2018-09-06  8:12     ` Jan Kara
2018-09-06 12:02       ` Souptick Joarder

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAFqt6zaeOzrzMCqtnv=3gF4+K9HGtbB0C7bOeE+6YmBvvxBaxQ@mail.gmail.com' \
    --to=jrdr.linux@gmail.com \
    --cc=ak@linux.intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=jack@suse.cz \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mawilcox@microsoft.com \
    --cc=mgorman@techsingularity.net \
    --cc=syzbot+87a05ae4accd500f5242@syzkaller.appspotmail.com \
    --cc=syzkaller-bugs@googlegroups.com \
    --cc=tim.c.chen@linux.intel.com \
    --cc=zwisler@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.