Re: Hang / zombie process from Xarray page-fault conversion (bisected)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Mar 11, 2019 at 8:10 AM Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote:
>
> On Thu, Mar 07, 2019 at 10:16:17PM -0800, Dan Williams wrote:
> > Hi Willy,
> >
> > We're seeing a case where RocksDB hangs and becomes defunct when
> > trying to kill the process. v4.19 succeeds and v4.20 fails. Robert was
> > able to bisect this to commit b15cd800682f "dax: Convert page fault
> > handlers to XArray".
> >
> > I see some direct usage of xa_index and wonder if there are some more
> > pmd fixups to do?
> >
> > Other thoughts?
>
> I don't see why killing a process would have much to do with PMD
> misalignment.  The symptoms (hanging on a signal) smell much more like
> leaving a locked entry in the tree.  Is this easy to reproduce?  Can you
> get /proc/$pid/stack for a hung task?

It's fairly easy to reproduce, I'll see if I can package up all the
dependencies into something that fails in a VM.

It's limited to xfs, no failure on ext4 to date.

The hung process appears to be:

     kworker/53:1-xfs-sync/pmem0

...and then the rest of the database processes grind to a halt from there.

Robert was kind enough to capture /proc/$pid/stack, but nothing interesting:

[<0>] worker_thread+0xb2/0x380
[<0>] kthread+0x112/0x130
[<0>] ret_from_fork+0x1f/0x40
[<0>] 0xffffffffffffffff




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux