From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id B7D68C021A4 for ; Mon, 24 Feb 2025 14:09:01 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E7D536B0082; Mon, 24 Feb 2025 09:09:00 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id E2D326B0083; Mon, 24 Feb 2025 09:09:00 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CA6506B0085; Mon, 24 Feb 2025 09:09:00 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id AAE106B0082 for ; Mon, 24 Feb 2025 09:09:00 -0500 (EST) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 31CFEA30DD for ; Mon, 24 Feb 2025 14:09:00 +0000 (UTC) X-FDA: 83155019640.18.D86AEED Received: from smtp-out2.suse.de (smtp-out2.suse.de [195.135.223.131]) by imf26.hostedemail.com (Postfix) with ESMTP id B5AC514000D for ; Mon, 24 Feb 2025 14:08:57 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=mH8GCZ3U; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=AYPGVfSt; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=WP+6ygUB; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=QlpSMHRo; spf=pass (imf26.hostedemail.com: domain of vbabka@suse.cz designates 195.135.223.131 as permitted sender) smtp.mailfrom=vbabka@suse.cz; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740406138; a=rsa-sha256; cv=none; b=zu5UHda5IQalgQUelJvcY8+CDUKiwwCTBuZGpCyuIB9Vm1KC+xJfUQD2qH4LPC06Oupv6V jrnYIdTtHWnXlca+oviWcB2PGYD5cjalLVEKfFTO5XBxrmfL0JCL+3g+0chycGsMBTPEH0 drlGDjB1lw/cbqahqocXSPA1+x8OxYA= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=mH8GCZ3U; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=AYPGVfSt; dkim=pass header.d=suse.cz header.s=susede2_rsa header.b=WP+6ygUB; dkim=pass header.d=suse.cz header.s=susede2_ed25519 header.b=QlpSMHRo; spf=pass (imf26.hostedemail.com: domain of vbabka@suse.cz designates 195.135.223.131 as permitted sender) smtp.mailfrom=vbabka@suse.cz; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740406138; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=PJR6cxjc6nT2mQRF4wpwYFdBd4uWHFlc6Sghszo4W9s=; b=QyJaiE1+GslgbYUfIgFSdVbzpnFR5DscNE0zGjKNzLiXrRR4JMH+h6mlghJRXsl5iUm2vs vYbyVoZXgGt8XhosSZzMPzIpIJ0FyJxFScrO31xuD0EDoBxrEAixjNpkAU//YtxfthuapM wjwRRf/gwmOocvKY+7deDpkRkn+X3Pc= Received: from imap1.dmz-prg2.suse.org (imap1.dmz-prg2.suse.org [IPv6:2a07:de40:b281:104:10:150:64:97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp-out2.suse.de (Postfix) with ESMTPS id E40361F395; Mon, 24 Feb 2025 14:08:55 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1740406136; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=PJR6cxjc6nT2mQRF4wpwYFdBd4uWHFlc6Sghszo4W9s=; b=mH8GCZ3UonDbjty1DLnuO0nTZXzuL2c5sfGdbflzPnXOBowY3sPJmvAXusjVlP6tk/YQMJ 0k1k6gXnz4nAo+P9UBg5rQmjwNgEi9l0CH0RLuGUQSXpB+TSzT6caED9B0n1WvCcMd3gfy xUA53xN1yZKdQ6CYk6nO3hsOPw4lqKw= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1740406136; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=PJR6cxjc6nT2mQRF4wpwYFdBd4uWHFlc6Sghszo4W9s=; b=AYPGVfSt7QV4PnDTGjhuRzY+A07fqcHiasxlhmW/I7c9Yl4r0If0WwdAp5fSCFT/U85Me3 q2NbeBdmaXFhCECg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_rsa; t=1740406135; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=PJR6cxjc6nT2mQRF4wpwYFdBd4uWHFlc6Sghszo4W9s=; b=WP+6ygUBL0W+SfETyxi+HjwrclftWv+PFpg6ZnLUz48o6YmCSeTGUvGDMlT21aXYP+aZ+1 NanA1ODOuLZLdz+PTWvAf2ZRZZDvHFYFJDd8y7gD+UTGcUeBx73o/2Gu0ojq4dc7QROUsR 8cOeAviSdl5DwwebXoF99PMbKHH+Xa0= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.cz; s=susede2_ed25519; t=1740406135; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:autocrypt:autocrypt; bh=PJR6cxjc6nT2mQRF4wpwYFdBd4uWHFlc6Sghszo4W9s=; b=QlpSMHRoaRJ+zBI/YefB95gc9THj3HfKpsaZnt95/X2dUibDLrFMZQ7KdrDsPomZ30JyBP w63c0jqxuaymE0Dw== Received: from imap1.dmz-prg2.suse.org (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by imap1.dmz-prg2.suse.org (Postfix) with ESMTPS id C789613707; Mon, 24 Feb 2025 14:08:55 +0000 (UTC) Received: from dovecot-director2.suse.de ([2a07:de40:b281:106:10:150:64:167]) by imap1.dmz-prg2.suse.org with ESMTPSA id aAEsMHd9vGdxPwAAD6G6ig (envelope-from ); Mon, 24 Feb 2025 14:08:55 +0000 Message-ID: <746be93d-7e62-4260-9b3e-0d7c1780c9c7@suse.cz> Date: Mon, 24 Feb 2025 15:08:55 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v3 1/2] mm: slub: Print the broken data before restoring slub. To: Hyesoo Yu , Harry Yoo Cc: janghyuck.kim@samsung.com, Christoph Lameter , Pekka Enberg , David Rientjes , Joonsoo Kim , Andrew Morton , Roman Gushchin , Hyeonggon Yoo <42.hyeyoo@gmail.com>, linux-mm@kvack.org, linux-kernel@vger.kernel.org References: <20250220033953.1606820-1-hyesoo.yu@samsung.com> <20250220033953.1606820-2-hyesoo.yu@samsung.com> <20250224024323.GA2153960@tiffany> Content-Language: en-US From: Vlastimil Babka Autocrypt: addr=vbabka@suse.cz; keydata= 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 EP+ylKVEKb0Q2A== In-Reply-To: <20250224024323.GA2153960@tiffany> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Rspamd-Action: no action X-Rspamd-Queue-Id: B5AC514000D X-Stat-Signature: g6d6ijtigmf4rtbga9peg9q1js77rhj3 X-Rspam-User: X-Rspamd-Server: rspam10 X-HE-Tag: 1740406137-481717 X-HE-Meta: U2FsdGVkX1+vqa1mQTdYwygpNPx1aJVk+vUZsFnkX/w6f1sLozvOYs/HDb94ELGC4n2fOR3HuTqk26dtb5+Krhy8Ts+iUSBhNLLZo0U3+vAT30WVPjIftsbHfP78lwKu20J/eTqvqCxLR6KasYhFjhkLp3cbhxsrTGj8KniXjoo2NaTgk9nQI03t547Ad18vzkLzV+uXHxblZDJRzY1Z9XOjmF4P/6PHLmxkaoLPhuw7fI+BUDrcGZVZzdEY5qjdnlN+mZUy3XETbNkwrCbyHy5uT40hhYmKMEnFrPWiqYcRh9goMDN6T9P0/YL0vbqpCmIe9cixdgy+hRurJ/oZaTP64PzlhLVt/5m9zqMjsDomgWI2e7gSOJID4CGkbQ8e6DpcgZia2s8hqugx6Tbj66FfPwB3FLSt+oP6BTU9xXtZHwCDhUHhEldsxw0fACYNM4J6I1WTkZ/guL4tnGjhHdiIPVsRjnbEOpMvM0yAqToljZ2DAjqWOOTSmmb/z52lmui62/VOr/MRE0Ifqolc8lz47t9uswFxXv7gjfQPLmVVE0wfhYro2hvTylTiIqmPhaKTFjLNpDxjEUiidLjlFhScab2vvU4NhGTZLKMIFYRqVSleibMgyyaSndNaRS+IGSGUQcgs+GNvpDdHtbQYQlYmZlASC2F1Vf99Pcb/Onn9ooIcjNtUe4IuCXeYIO+Ing+eiNoVfZ85X1XYSQXiyHq3hVWE9dnMr1uBNkdFa7mrKaVoA39kmvO8eMjKm1igmlnGcWsVkKbyVSN2m7OLQLqEn7Vr1jkhh/Yniqk6bFKbbY/brXhNlhvvAQSHgAz0crTcXltT8zh+k5PH4+G8Pq8AWSRTWDLY6/5r0T8eutiutQRGeLTVjn4fDzFmA5VgMSM77dX7RboiQ/K5g/Y1KS5SMa0WhIjUEiwEH/NEEEH5T3TAtH6RNN8+VDmvpbc821n3Z3HA36VHvHtGCoi 0U+ju9np J8hMlKMOh/zUlTWrN1tZiaqznDKfPuMMVkVsxu6edcIZOgvmZbpXaE2MbS6MJsb07FZuCGEEz1F1P3fVytJKC8YDpJNbwU1el0iiO1k7f0XUkds2C2Nv27GbM4o79zHlBoCAH6suvRZh4OkzS2RrkiXo4538pvKAg43fEaWbPi+clRBUwnGIjUa78AX7+aonsVsRr2TPWg1XYavVuo1n9VR8sp+F+b+tnW0dYdd8emMc6/7fV+ndBYC36XHX8gj+epyF2cmrSfVa0039sK7fbVrjgrItFmiUgS0E11RQIcPzwPyD/9Vvt++Lg3fyWdva2IpeHRZEcOQxZ/K6kuZ2HE/MFX2Swiz7HwZRVoVtaGMFfp0SMjNKSJBUCgmyjN8ViV8+nuwceQZA0kh3NhCO1FX3gNg== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On 2/24/25 03:43, Hyesoo Yu wrote: > On Fri, Feb 21, 2025 at 05:16:01PM +0900, Harry Yoo wrote: >> On Thu, Feb 20, 2025 at 12:39:43PM +0900, Hyesoo Yu wrote: >> > Previously, the restore occured after printing the object in slub. >> > After commit 47d911b02cbe ("slab: make check_object() more consistent"), >> > the bytes are printed after the restore. This information about the bytes >> > before the restore is highly valuable for debugging purpose. >> > For instance, in a event of cache issue, it displays byte patterns >> > by breaking them down into 64-bytes units. Without this information, >> > we can only speculate on how it was broken. Hence the corrupted regions >> > should be printed prior to the restoration process. However if an object >> > breaks in multiple places, the same log may be output multiple times. >> > Therefore the slub log is reported only once to prevent redundant printing, >> > by sending a parameter indicating whether an error has occurred previously. >> > >> > Changes in v3: >> > - Change the parameter type of check_bytes_and_report. >> > >> > Changes in v2: >> > - Instead of using print_section every time on check_bytes_and_report, >> > just print it once for the entire slub object before the restore. >> > >> > Signed-off-by: Hyesoo Yu >> > Change-Id: I73cf76c110eed62506643913517c957c05a29520 >> > --- >> > mm/slub.c | 29 ++++++++++++++--------------- >> > 1 file changed, 14 insertions(+), 15 deletions(-) >> > >> >> > @@ -1212,11 +1213,14 @@ check_bytes_and_report(struct kmem_cache *s, struct slab *slab, >> > if (slab_add_kunit_errors()) >> > goto skip_bug_print; >> > >> > - slab_bug(s, "%s overwritten", what); >> > pr_err("0x%p-0x%p @offset=%tu. First byte 0x%x instead of 0x%x\n", >> > fault, end - 1, fault - addr, >> > fault[0], value); >> > >> > + scnprintf(buf, 100, "%s overwritten", what); >> > + if (slab_obj_print) >> > + object_err(s, slab, object, buf); >> >> >> Wait, I think it's better to keep printing "%s overwritten" regardless >> of slab_obj_print and only call __slab_err() if slab_obj_print == true >> as discussed here [1]? Becuase in case there are multiple errors, >> users should know. >> >> [1] https://lore.kernel.org/all/2ff52c5e-4b6b-4b3d-9047-f00967315d3e@suse.cz >> > > Hi, > > __slab_err() doesn't include print_trainer(). It needs object_err(). print_trailer() could be used directly? > How about including the specific error name 'what' to pr_err ? > And then object_err would print "Object corrupt" at the beginning once > without buf like below. Could also work. > if (slab_obj_print) > object_err(s, slab, object, "Object corrupt"); > > pr_err("[%s] 0x%p-0x%p @offset=%tu. First byte 0x%x instead of 0x%x\n", > what, fault, end - 1, fault - addr, fault[0], value); Probably in opposite order so object_err doesn't panic_on_warn before the pr_err? > Thanks, > Regards. >> -- >> Cheers, >> Harry >> > >