Linux-mm Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Lisa Wang <wyihan@google.com>
To: Miaohe Lin <linmiaohe@huawei.com>
Cc: rientjes@google.com, seanjc@google.com, ackerleytng@google.com,
	vannapurve@google.com, michael.roth@amd.com, jiaqiyan@google.com,
	tabba@google.com, dave.hansen@linux.intel.com,
	Naoya Horiguchi <nao.horiguchi@gmail.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Paolo Bonzini <pbonzini@redhat.com>,
	Shuah Khan <shuah@kernel.org>, Hugh Dickins <hughd@google.com>,
	Baolin Wang <baolin.wang@linux.alibaba.com>,
	David Hildenbrand <david@kernel.org>,
	Lorenzo Stoakes <lorenzo.stoakes@oracle.com>,
	linux-kselftest@vger.kernel.org,
	"Liam R. Howlett" <Liam.Howlett@oracle.com>,
	Vlastimil Babka <vbabka@kernel.org>,
	Mike Rapoport <rppt@kernel.org>,
	Suren Baghdasaryan <surenb@google.com>,
	Michal Hocko <mhocko@suse.com>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org,
	kvm@vger.kernel.org
Subject: Re: [PATCH RFC v3 5/7] mm: selftests: Add shmem into memory failure test
Date: Wed, 27 May 2026 17:00:52 +0000	[thread overview]
Message-ID: <ahcjRGwLFEN2NH3b@google.com> (raw)
In-Reply-To: <9effbeca-3453-f0fe-571f-85f8923e1385@huawei.com>

> On Mon, Apr 13, 2026 at 07:57:55PM +0800, Miaohe Lin wrote:
[...snip...]
> > -
> > +	case MADV_SOFT_DIRTY_SHMEM:
> >  		/* The page content should remain unchanged. */
> >  		ASSERT_TRUE(check_memory(vaddr, self->page_size));
> 
> Why we skip check_memory() for case MADV_SOFT_CLEAN_SHMEM?

Because we did not write 0xce to clean_shmem.
The difference between clean and dirty pagecache is whether we synced
the dirty pages to disk. However, the difference between clean and dirty
shmem is whether we initialized it with 0xce. Thus, we need to skip
check_memory(), which checking 0xce,  for clean_shmem.

> > +	case MADV_HARD_CLEAN_SHMEM:
> > +	case MADV_SOFT_CLEAN_SHMEM:
> > +		/* It is not expected to receive a SIGBUS signal. */
> > +		ASSERT_EQ(setjmp, 0);
[...snip...]
> > +   if (variant->type == MADV_HARD) {
> > +           check(_metadata, self, addr, MADV_HARD_DIRTY_SHMEM, ret);
> > +		ret = sigsetjmp(signal_jmp_buf, 1);
> > +		if (ret == 0)
> > +			FORCE_READ(*addr);
> > +		check(_metadata, self, addr, READ_ERROR, ret);
> > +	} else {
> 
> Should we always add a FORCE_READ() just after variant->inject to verify the accessibility
> to the addr for soft-offline case ?
> 
> Thanks.

In dirty_shmem, check() already verifies accessibility to the address
through memcmp(). Thus, we only need FORCE_READ() in clean_shmem. Will
add this in the next version. Thanks !

Lisa

> > +		check(_metadata, self, addr, MADV_SOFT_DIRTY_SHMEM, ret);> +	}
[...snip...]



  reply	other threads:[~2026-05-27 17:01 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-08 17:24 [PATCH RFC v3 0/7] mm: Fix MF_DELAYED handling on memory failure Lisa Wang
2026-04-08 17:24 ` [PATCH RFC v3 1/7] mm: memory_failure: Clarify the MF_DELAYED definition Lisa Wang
2026-04-08 17:24 ` [PATCH RFC v3 2/7] mm: memory_failure: Allow truncate_error_folio to return MF_DELAYED Lisa Wang
2026-04-08 17:24 ` [PATCH RFC v3 3/7] mm: shmem: Update shmem handler to the MF_DELAYED definition Lisa Wang
2026-04-08 17:24 ` [PATCH RFC v3 4/7] mm: memory_failure: Generalize extra_pins handling to all MF_DELAYED cases Lisa Wang
2026-04-08 17:24 ` [PATCH RFC v3 5/7] mm: selftests: Add shmem into memory failure test Lisa Wang
2026-04-13 11:57   ` Miaohe Lin
2026-05-27 17:00     ` Lisa Wang [this message]
2026-05-28  3:31       ` Miaohe Lin
2026-04-08 17:24 ` [PATCH RFC v3 6/7] KVM: selftests: Add memory failure tests in guest_memfd_test Lisa Wang
2026-04-13 20:25   ` Ackerley Tng
2026-04-13 21:08     ` Sean Christopherson
2026-04-08 17:24 ` [PATCH RFC v3 7/7] KVM: selftests: Test guest_memfd behavior with respect to stage 2 page tables Lisa Wang
2026-04-13 11:48 ` [PATCH RFC v3 0/7] mm: Fix MF_DELAYED handling on memory failure Miaohe Lin

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=ahcjRGwLFEN2NH3b@google.com \
    --to=wyihan@google.com \
    --cc=Liam.Howlett@oracle.com \
    --cc=ackerleytng@google.com \
    --cc=akpm@linux-foundation.org \
    --cc=baolin.wang@linux.alibaba.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=david@kernel.org \
    --cc=hughd@google.com \
    --cc=jiaqiyan@google.com \
    --cc=kvm@vger.kernel.org \
    --cc=linmiaohe@huawei.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=lorenzo.stoakes@oracle.com \
    --cc=mhocko@suse.com \
    --cc=michael.roth@amd.com \
    --cc=nao.horiguchi@gmail.com \
    --cc=pbonzini@redhat.com \
    --cc=rientjes@google.com \
    --cc=rppt@kernel.org \
    --cc=seanjc@google.com \
    --cc=shuah@kernel.org \
    --cc=surenb@google.com \
    --cc=tabba@google.com \
    --cc=vannapurve@google.com \
    --cc=vbabka@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox