Re: [RFC PATCH v3 0/9] fsdax: introduce fs query to support reflink

From: Darrick J. Wong
Date: Thu Dec 17 2020 - 22:55:21 EST


On Fri, Dec 18, 2020 at 10:44:26AM +0800, Ruan Shiyang wrote:
>
>
> On 2020/12/17 上午4:55, Jane Chu wrote:
> > Hi, Shiyang,
> >
> > On 12/15/2020 4:14 AM, Shiyang Ruan wrote:
> > > The call trace is like this:
> > > memory_failure()
> > >   pgmap->ops->memory_failure()      => pmem_pgmap_memory_failure()
> > >    gendisk->fops->corrupted_range() => - pmem_corrupted_range()
> > >                                        - md_blk_corrupted_range()
> > >     sb->s_ops->currupted_range()    => xfs_fs_corrupted_range()
> > >      xfs_rmap_query_range()
> > >       xfs_currupt_helper()
> > >        * corrupted on metadata
> > >            try to recover data, call xfs_force_shutdown()
> > >        * corrupted on file data
> > >            try to recover data, call mf_dax_mapping_kill_procs()
> > >
> > > The fsdax & reflink support for XFS is not contained in this patchset.
> > >
> > > (Rebased on v5.10)
> >
> > So I tried the patchset with pmem error injection, the SIGBUS payload
> > does not look right -
> >
> > ** SIGBUS(7): **
> > ** si_addr(0x(nil)), si_lsb(0xC), si_code(0x4, BUS_MCEERR_AR) **
> >
> > I expect the payload looks like
> >
> > ** si_addr(0x7f3672e00000), si_lsb(0x15), si_code(0x4, BUS_MCEERR_AR) **
>
> Thanks for testing. I test the SIGBUS by writing a program which calls
> madvise(... ,MADV_HWPOISON) to inject memory-failure. It just shows that
> the program is killed by SIGBUS. I cannot get any detail from it. So,
> could you please show me the right way(test tools) to test it?

I'm assuming that Jane is using a program that calls sigaction to
install a SIGBUS handler, and dumps the entire siginfo_t structure
whenever it receives one...

--D

>
> --
> Thanks,
> Ruan Shiyang.
>
> >
> > thanks,
> > -jane
> >
> >
> >
> >
> >
> >
>
>