From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f174.google.com (mail-pl1-f174.google.com [209.85.214.174]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C632C3DFC68 for ; Wed, 27 May 2026 17:00:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.174 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779901261; cv=none; b=do6HXdHJTtalIap9eRRg2T94EMB8idJotTLDbhsz30DGa86g4ecPBDbhUKaUAyBu+/RrCxM/Nwe/DI0iKQ7LL66dSqsWueEYrQZUhcabfA5BD0x4sa1kWD8EycGmF2d/kCG+1w9Qqcu8ZlaC6T8wq1VuftkVPf/190Ii2YTUPgg= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779901261; c=relaxed/simple; bh=IC03rV44yx8SbaDtxThdFCvVl5fVz1TnoYNrddEg7m8=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=rxuSmTNyDcSj+c7iSpkn92QOJRKdg1UdMQJJ4loakRdMcTfzXiOcTjpMieqZZGRtrq+E8Ec0Bcmlf0hnVnsARZVMTMx3Jcss18faU3fKtAtWCsbu+JGQHhMgfYxrhn/t7iPUMt2SJ++JV7OxbJhhowytfpCAoiVApN7cL0l//1I= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=GDxCEQSd; arc=none smtp.client-ip=209.85.214.174 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="GDxCEQSd" Received: by mail-pl1-f174.google.com with SMTP id d9443c01a7336-2ba3b9bcf69so145ad.0 for ; Wed, 27 May 2026 10:00:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20251104; t=1779901259; x=1780506059; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=7Og5FR/9qWtaybmoKawxFptjk13+mvY5AZnqWPtKcDM=; b=GDxCEQSdMC0hubLsATO5WComY3s4aOxIvo8zo5MBQcddD0s2rbrd8T/SRY42mlbEAX mGAM/d47Lk34RE1vmQRvMbeyoTNLrlRloFv1yvixSD1FgwZUdLk9SS9RfNm9HZW7M5rk xyAbZRM6JHq6pQvp5ZeOsNNIzTf4ieP0xceKeCD71HSF/ITKratMsvfj8eux72jnQcV7 yt0bf0D3eNGPijaVycsEfGqjkE1CqjMNgoKt2X52HQksuDw0b3PorZX4o7Lgv6zQEpFB TmeZk2HHoBpqd+zUsuKdmyto6LCiYETfp3mjhGoMnONEFi2FdEzpA/T79bjAUhYWUD2R DXZQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779901259; x=1780506059; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=7Og5FR/9qWtaybmoKawxFptjk13+mvY5AZnqWPtKcDM=; b=aeO2fcIDgkeOsx0zAd20GckEao2KSBDPyA+JF0hrdcORrGDn81T3f66OOS7tIlUjWy wSNTgJ8wWmcfoxoN3/tewvtBhOmkfWdvUDwUoXUtlw/BBUTZzCZqPQwagRRTdt+urqwO kTzAbmH38HG5XiDNePbM2c2urvu6bHdhf0SZYiHSpUkdtXT/+o5cMYQwvdDznXHidiUJ LBkjR46BexlVEI7/5aln+u8a+RzSiEKXL6Jd1uJCm5okBp+3jbDmZOsShTX0korHlZdK q3mAsrX9yIBpntGEBFMA1JM7VeNYSZeXf+m7vor/vFgE7PqoICqlsG3mARn4jQ6T8KH0 yhZg== X-Forwarded-Encrypted: i=1; AFNElJ8wGFc/NqQYxYQ7748nsBS+c8FJ/1JJEryyR+ZSlyT9h9IvlRWHcoM8OH5w+Qsz1gq3Hl64MiJYux0zfkA=@vger.kernel.org X-Gm-Message-State: AOJu0YwANbqYSQouS9ozwIQNLF9wNgnsi9Dg8MU0ioPPFUgdv7CvbE8l 3H+7U+CvG5X/J0taHu5Q2DAALb3LWqNBjeEGDZkf5bu4hm6i0m6xrZbvnTj+nAXouA== X-Gm-Gg: Acq92OGhl4NGsqu+rWWqx1GsojkpWfIzYtFOJNQ0zxH9naBaITBOABFurgq0Of/qN/i PyplMbsk8LBKHFQhhOsSKBHJQBIV9x67u2Qqxzx7EncO06XGguUJVj9Ku3vWWKrBOzacIyq/uZX P2hUCQ7ATJ8A0HGA5IhMFhBb4uuAfjEw8ATzZfceSUlPXrdi8ndo9xX+rI+PZKeYd3170/Swpvy 0lLV59xG4kU6OkbTGnYDmQZvXZuquwrNd2Ec9TQafPSk8ORN8GJFE0vcKcR86DSHgYQ1SBXVOBW 5y06u4TE4XX+McOJfbOx4uOOfZxE29L9Q3GBw7esjDpBEQQN6HE2mK4944W0bd/feTzG8Sdsnk4 si6kfumSyW2Zw8uPTch697z4XzZd3fFzJjJDJq3LW2iuumhAjQrRA3VU7vC3bC0t2G3Y1yJARDN BMBMy6xa34BJTT+Xd5uhZORWsSAaQpAoFJ/Ap7oPtVidq2uSp4KbuRwIQgsaQWv5XRCxI= X-Received: by 2002:a17:902:e551:b0:2bd:7e8e:ad56 with SMTP id d9443c01a7336-2bebe9feb6emr8862045ad.6.1779901258238; Wed, 27 May 2026 10:00:58 -0700 (PDT) Received: from google.com (230.0.127.34.bc.googleusercontent.com. [34.127.0.230]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-36b7653c9ffsm334915a91.4.2026.05.27.10.00.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 27 May 2026 10:00:56 -0700 (PDT) Date: Wed, 27 May 2026 17:00:52 +0000 From: Lisa Wang To: Miaohe Lin 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 , Andrew Morton , Paolo Bonzini , Shuah Khan , Hugh Dickins , Baolin Wang , David Hildenbrand , Lorenzo Stoakes , linux-kselftest@vger.kernel.org, "Liam R. Howlett" , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , 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 Message-ID: References: <20260408-memory-failure-mf-delayed-fix-rfc-v3-v3-0-718f45eb7c75@google.com> <20260408-memory-failure-mf-delayed-fix-rfc-v3-v3-5-718f45eb7c75@google.com> <9effbeca-3453-f0fe-571f-85f8923e1385@huawei.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline 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...]