All of lore.kernel.org
 help / color / mirror / Atom feed
From: Qian Cai <quic_qiancai@quicinc.com>
To: Muchun Song <songmuchun@bytedance.com>
Cc: <dan.j.williams@intel.com>, <willy@infradead.org>, <jack@suse.cz>,
	<viro@zeniv.linux.org.uk>, <akpm@linux-foundation.org>,
	<apopple@nvidia.com>, <shy828301@gmail.com>,
	<rcampbell@nvidia.com>, <hughd@google.com>,
	<xiyuyang19@fudan.edu.cn>, <kirill.shutemov@linux.intel.com>,
	<zwisler@kernel.org>, <hch@infradead.org>,
	<linux-fsdevel@vger.kernel.org>, <nvdimm@lists.linux.dev>,
	<linux-kernel@vger.kernel.org>, <linux-mm@kvack.org>,
	<duanxiongchun@bytedance.com>, <smuchun@gmail.com>
Subject: Re: [PATCH v5 0/6] Fix some bugs related to ramp and dax
Date: Thu, 31 Mar 2022 11:55:47 -0400	[thread overview]
Message-ID: <YkXPA69iLBDHFtjn@qian> (raw)
In-Reply-To: <20220318074529.5261-1-songmuchun@bytedance.com>

On Fri, Mar 18, 2022 at 03:45:23PM +0800, Muchun Song wrote:
> This series is based on next-20220225.
> 
> Patch 1-2 fix a cache flush bug, because subsequent patches depend on
> those on those changes, there are placed in this series.  Patch 3-4
> are preparation for fixing a dax bug in patch 5.  Patch 6 is code cleanup
> since the previous patch remove the usage of follow_invalidate_pte().

Reverting this series fixed boot crashes.

 KASAN: null-ptr-deref in range [0x0000000000000018-0x000000000000001f]
 Mem abort info:
   ESR = 0x96000004
   EC = 0x25: DABT (current EL), IL = 32 bits
   SET = 0, FnV = 0
   EA = 0, S1PTW = 0
   FSC = 0x04: level 0 translation fault
 Data abort info:
   ISV = 0, ISS = 0x00000004
   CM = 0, WnR = 0
 [dfff800000000003] address between user and kernel address ranges
 Internal error: Oops: 96000004 [#1] PREEMPT SMP
 Modules linked in: cdc_ether usbnet ipmi_devintf ipmi_msghandler cppc_cpufreq fuse ip_tables x_tables ipv6 btrfs blake2b_generic libcrc32c xor xor_neon raid6_pq zstd_compress dm_mod nouveau crct10dif_ce drm_ttm_helper mlx5_core ttm drm_dp_helper drm_kms_helper nvme mpt3sas nvme_core xhci_pci raid_class drm xhci_pci_renesas
 CPU: 3 PID: 1707 Comm: systemd-udevd Not tainted 5.17.0-next-20220331-00004-g2d550916a6b9 #51
 pstate: 104000c9 (nzcV daIF +PAN -UAO -TCO -DIT -SSBS BTYPE=--)
 pc : __lock_acquire
 lr : lock_acquire.part.0
 sp : ffff800030a16fd0
 x29: ffff800030a16fd0 x28: ffffdd876c4e9f90 x27: 0000000000000018
 x26: 0000000000000000 x25: 0000000000000018 x24: 0000000000000000
 x23: ffff08022beacf00 x22: ffffdd8772507660 x21: 0000000000000000
 x20: 0000000000000000 x19: 0000000000000000 x18: ffffdd8772417d2c
 x17: ffffdd876c5bc2e0 x16: 1fffe100457d5b06 x15: 0000000000000094
 x14: 000000000000f1f1 x13: 00000000f3f3f3f3 x12: ffff08022beacf08
 x11: 1ffffbb0ee482fa5 x10: ffffdd8772417d28 x9 : 0000000000000000
 x8 : 0000000000000003 x7 : ffffdd876c4e9f90 x6 : 0000000000000000
 x5 : 0000000000000000 x4 : 0000000000000001 x3 : 0000000000000000
 x2 : 0000000000000000 x1 : 0000000000000003 x0 : dfff800000000000
 Call trace:
  __lock_acquire
  lock_acquire.part.0
  lock_acquire
  _raw_spin_lock
  page_vma_mapped_walk
  try_to_migrate_one
  rmap_walk_anon
  try_to_migrate
  __unmap_and_move
  unmap_and_move
  migrate_pages
  migrate_misplaced_page
  do_huge_pmd_numa_page
  __handle_mm_fault
  handle_mm_fault
  do_translation_fault
  do_mem_abort
  el0_da
  el0t_64_sync_handler
  el0t_64_sync
 Code: d65f03c0 d343ff61 d2d00000 f2fbffe0 (38e06820)
 ---[ end trace 0000000000000000 ]---
 Kernel panic - not syncing: Oops: Fatal exception
 SMP: stopping secondary CPUs
 Kernel Offset: 0x5d8763da0000 from 0xffff800008000000
 PHYS_OFFSET: 0x80000000
 CPU features: 0x000,00085c0d,19801c82
 Memory Limit: none
 ---[ end Kernel panic - not syncing: Oops: Fatal exception ]---
> 
> v5:
> - Collect Reviewed-by from Dan Williams.
> - Fix panic reported by kernel test robot <oliver.sang@intel.com>.
> - Remove pmdpp parameter from follow_invalidate_pte() and fold it into follow_pte().
> 
> v4:
> - Fix compilation error on riscv.
> 
> v3:
> - Based on next-20220225.
> 
> v2:
> - Avoid the overly long line in lots of places suggested by Christoph.
> - Fix a compiler warning reported by kernel test robot since pmd_pfn()
>   is not defined when !CONFIG_TRANSPARENT_HUGEPAGE on powerpc architecture.
> - Split a new patch 4 for preparation of fixing the dax bug.
> 
> Muchun Song (6):
>   mm: rmap: fix cache flush on THP pages
>   dax: fix cache flush on PMD-mapped pages
>   mm: rmap: introduce pfn_mkclean_range() to cleans PTEs
>   mm: pvmw: add support for walking devmap pages
>   dax: fix missing writeprotect the pte entry
>   mm: simplify follow_invalidate_pte()
> 
>  fs/dax.c             | 82 +++++-----------------------------------------------
>  include/linux/mm.h   |  3 --
>  include/linux/rmap.h |  3 ++
>  mm/internal.h        | 26 +++++++++++------
>  mm/memory.c          | 81 +++++++++++++++------------------------------------
>  mm/page_vma_mapped.c | 16 +++++-----
>  mm/rmap.c            | 68 +++++++++++++++++++++++++++++++++++--------
>  7 files changed, 114 insertions(+), 165 deletions(-)
> 
> -- 
> 2.11.0
> 

  parent reply	other threads:[~2022-03-31 15:58 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-18  7:45 [PATCH v5 0/6] Fix some bugs related to ramp and dax Muchun Song
2022-03-18  7:45 ` [PATCH v5 1/6] mm: rmap: fix cache flush on THP pages Muchun Song
2022-03-22  8:34   ` Christoph Hellwig
2022-03-18  7:45 ` [PATCH v5 2/6] dax: fix cache flush on PMD-mapped pages Muchun Song
2022-03-22  8:34   ` Christoph Hellwig
2022-03-18  7:45 ` [PATCH v5 3/6] mm: rmap: introduce pfn_mkclean_range() to cleans PTEs Muchun Song
2022-03-18  7:45 ` [PATCH v5 4/6] mm: pvmw: add support for walking devmap pages Muchun Song
2022-03-18  7:45 ` [PATCH v5 5/6] dax: fix missing writeprotect the pte entry Muchun Song
2022-03-22  8:37   ` Christoph Hellwig
2022-03-22  8:46     ` Muchun Song
2022-03-18  7:45 ` [PATCH v5 6/6] mm: simplify follow_invalidate_pte() Muchun Song
2022-03-22  8:35   ` Christoph Hellwig
2022-03-31 15:55 ` Qian Cai [this message]
2022-03-31 22:36   ` [PATCH v5 0/6] Fix some bugs related to ramp and dax Andrew Morton
2022-03-31 22:48     ` Stephen Rothwell
2022-04-01  3:44   ` Muchun Song
2022-04-01  8:50     ` Muchun Song
2022-04-01 11:07     ` Qian Cai
2022-04-02 15:22   ` Muchun Song

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=YkXPA69iLBDHFtjn@qian \
    --to=quic_qiancai@quicinc.com \
    --cc=akpm@linux-foundation.org \
    --cc=apopple@nvidia.com \
    --cc=dan.j.williams@intel.com \
    --cc=duanxiongchun@bytedance.com \
    --cc=hch@infradead.org \
    --cc=hughd@google.com \
    --cc=jack@suse.cz \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=nvdimm@lists.linux.dev \
    --cc=rcampbell@nvidia.com \
    --cc=shy828301@gmail.com \
    --cc=smuchun@gmail.com \
    --cc=songmuchun@bytedance.com \
    --cc=viro@zeniv.linux.org.uk \
    --cc=willy@infradead.org \
    --cc=xiyuyang19@fudan.edu.cn \
    --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.