From patchwork Thu Jan 28 02:19:45 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yafang Shao X-Patchwork-Id: 12051637 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.5 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id DBB53C433E0 for ; Thu, 28 Jan 2021 02:20:20 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 0098164DCC for ; Thu, 28 Jan 2021 02:20:19 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 0098164DCC Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 840A96B006C; Wed, 27 Jan 2021 21:20:19 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 7EF826B006E; Wed, 27 Jan 2021 21:20:19 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 708B66B0070; Wed, 27 Jan 2021 21:20:19 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0025.hostedemail.com [216.40.44.25]) by kanga.kvack.org (Postfix) with ESMTP id 5CE0D6B006C for ; Wed, 27 Jan 2021 21:20:19 -0500 (EST) Received: from smtpin25.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay04.hostedemail.com (Postfix) with ESMTP id 219041EE6 for ; Thu, 28 Jan 2021 02:20:19 +0000 (UTC) X-FDA: 77753579358.25.mouth21_121027b2759c Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin25.hostedemail.com (Postfix) with ESMTP id EC4361804E3A1 for ; Thu, 28 Jan 2021 02:20:18 +0000 (UTC) X-HE-Tag: mouth21_121027b2759c X-Filterd-Recvd-Size: 4349 Received: from mail-oo1-f54.google.com (mail-oo1-f54.google.com [209.85.161.54]) by imf39.hostedemail.com (Postfix) with ESMTP for ; Thu, 28 Jan 2021 02:20:18 +0000 (UTC) Received: by mail-oo1-f54.google.com with SMTP id r199so1077340oor.2 for ; Wed, 27 Jan 2021 18:20:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=zYH+mxvn2A3dJD0z4OcS09UkAKI7HiExMGSeLtKn4tM=; b=tiLdanme9ZPBFmKmUuqRLeH0jzl1towtFwyue+W036MJ4w7Q0h3Sm2QCo4P1rIaIlk 7D4SLMuAhkyYviCcoDpfvA0uOU8oaZTxj+tLUOr5WubWXhJ4SsIB0Ydz+Io8iLcPYytW ePgTpOJp/AbNutt5hSSVtiPIy5WrR2pb4kS5ZQ0451wXIFLnSWmApDHyVIAkKTcVWFQk POsFMp4eMdPSfwh4Vd2fRDnImdpCIULirez05hpHBCakb89KyHRO5WN6xhtZjQOKoUHA CX65q8qxcvc7z5zyn3y7QQHf3CDBv+f4wcbyD54+hg68pHuxvXdbbDwtSX4TyJrkDlrt 8QVw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=zYH+mxvn2A3dJD0z4OcS09UkAKI7HiExMGSeLtKn4tM=; b=StsK1194ns7AfTbgUfFrI36HVYnIa860O3Sr+RoLUzumnh7ml2dA1yldh2kgIDmMIb oKV4/RTAldmfM8gtsVYByTdUZXKc1jSWJUkaYKDvWAZ1+7I1L2N2zwroxmLuqthDRNSu Lu5j9+XviTBDUXwdnQpFUJsPN5XSwqE/qr9O7OIiWE/QJ3vX6fJOkTElmQfz7undd6Kp 7ZFPUeLZK+x01alVTxcWOBorO00cBedV4RAnYJPEMOhOE6uSLNhF1vaktVjb89p+Y2+m SlpJlr5bMaO8lEe7a9Nv7oCiI47riKJPDZ5ZYTCO1dwPhTJw6okRzxr7M5jt5JUrSSfB SjHw== X-Gm-Message-State: AOAM531y2I+dLJLnDNF4VcJV65T4Ty9V1HBakeBGzMSPwAi129gssH7d uKO8Ian0tECOxQixj8YRfC8= X-Google-Smtp-Source: ABdhPJwfIyMxrySXxF9sSW16i+roO96QXXqk46k4/giZAvfnNk8o1ICwull2rDWtQmj+ARrMwaG5kg== X-Received: by 2002:a4a:646:: with SMTP id 67mr9826383ooj.33.1611800417909; Wed, 27 Jan 2021 18:20:17 -0800 (PST) Received: from localhost.localdomain ([50.236.19.102]) by smtp.gmail.com with ESMTPSA id m10sm731246otp.19.2021.01.27.18.20.12 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 27 Jan 2021 18:20:17 -0800 (PST) From: Yafang Shao To: david@redhat.com, vbabka@suse.cz, cl@linux.com, penberg@kernel.org, rientjes@google.com, iamjoonsoo.kim@lge.com, akpm@linux-foundation.org, pmladek@suse.com, rostedt@goodmis.org, sergey.senozhatsky@gmail.com, andriy.shevchenko@linux.intel.com, linux@rasmusvillemoes.dk Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, Yafang Shao Subject: [PATCH 1/3] mm, slub: use pGp to print page flags Date: Thu, 28 Jan 2021 10:19:45 +0800 Message-Id: <20210128021947.22877-2-laoar.shao@gmail.com> X-Mailer: git-send-email 2.24.3 (Apple Git-128) In-Reply-To: <20210128021947.22877-1-laoar.shao@gmail.com> References: <20210128021947.22877-1-laoar.shao@gmail.com> MIME-Version: 1.0 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: As pGp has been already introduced in printk, we'd better use it to make the output human readable. Before this change, the output is, [ 6155.716018] INFO: Slab 0x000000004027dd4f objects=33 used=3 fp=0x000000008cd1579c flags=0x17ffffc0010200 While after this change, the output is, [ 8846.517809] INFO: Slab 0x00000000f42a2c60 objects=33 used=3 fp=0x0000000060d32ca8 flags=0x17ffffc0010200(slab|head) Reviewed-by: David Hildenbrand Signed-off-by: Yafang Shao Reviewed-by: Vlastimil Babka Acked-by: David Rientjes --- mm/slub.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mm/slub.c b/mm/slub.c index 69742ab9a21d..4b9ab267afbc 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -641,8 +641,9 @@ void print_tracking(struct kmem_cache *s, void *object) static void print_page_info(struct page *page) { - pr_err("INFO: Slab 0x%p objects=%u used=%u fp=0x%p flags=0x%04lx\n", - page, page->objects, page->inuse, page->freelist, page->flags); + pr_err("INFO: Slab 0x%p objects=%u used=%u fp=0x%p flags=%#lx(%pGp)\n", + page, page->objects, page->inuse, page->freelist, + page->flags, &page->flags); } From patchwork Thu Jan 28 02:19:46 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yafang Shao X-Patchwork-Id: 12051639 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.5 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 5F951C433DB for ; Thu, 28 Jan 2021 02:20:26 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id F39A864DCD for ; Thu, 28 Jan 2021 02:20:25 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org F39A864DCD Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 901816B006E; Wed, 27 Jan 2021 21:20:25 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 8B2C36B0070; Wed, 27 Jan 2021 21:20:25 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 7C8DB6B0071; Wed, 27 Jan 2021 21:20:25 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0250.hostedemail.com [216.40.44.250]) by kanga.kvack.org (Postfix) with ESMTP id 67D3F6B006E for ; Wed, 27 Jan 2021 21:20:25 -0500 (EST) Received: from smtpin16.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay01.hostedemail.com (Postfix) with ESMTP id 31760180AD830 for ; Thu, 28 Jan 2021 02:20:25 +0000 (UTC) X-FDA: 77753579610.16.ant51_16100342759c Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin16.hostedemail.com (Postfix) with ESMTP id 0D5C9100E6903 for ; Thu, 28 Jan 2021 02:20:25 +0000 (UTC) X-HE-Tag: ant51_16100342759c X-Filterd-Recvd-Size: 5762 Received: from mail-ot1-f44.google.com (mail-ot1-f44.google.com [209.85.210.44]) by imf36.hostedemail.com (Postfix) with ESMTP for ; Thu, 28 Jan 2021 02:20:24 +0000 (UTC) Received: by mail-ot1-f44.google.com with SMTP id f6so3785612ots.9 for ; Wed, 27 Jan 2021 18:20:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=E1OYii8qckcq3S4gy4A47ko/gHa9BnhGIgmWAQqpg/M=; b=lb/j1XcyuwWJe7Zai31RMj1jc53IDDwwGEpjbhzP/USvR95gA71GKXbDkcXvtrdoGw ILKKhge9urM+lLMMprP/r658rPFYW577v+tIy7h6UdUt1+WcbExLye4FbJNDWjiAM1nj fzElQ1h/coZWpRrZSbZq9FaD+JsZMZfYuJke9knxlxoTAHWmmH1LrmJPAhZ0w8Fzpc0k ary9eAAScmaaq7v4nzdFc4BxKBcZm6EZthSOPLlo1ddCCV/CRjdnPyoLtveON8Z6Abcd paKYTDA3eD/Fiq/18zEe1IVHrEu3OhmLHcAvhhbGmEaScwWOkjOzYOIrEGy0b+lYdA0t XMLw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=E1OYii8qckcq3S4gy4A47ko/gHa9BnhGIgmWAQqpg/M=; b=Ds6kTs4tqwdtp5vyW+ORvI/9RkRCPrQBvg7k759pEH8gitWrtPyoLBJ72FvpuAxgIN QpU93cM03bjxh+hTCtAY2C8uS71OBuTHpyxPznOw3lN2FyaGtEYomvTPDhTokDrPgHg/ sdcdsuxi6IPaYmqJ7eJEypdLeuIU7o7dlzC7jXOE8ysnYDGPlaRYRmK6oyrqaLBxy8Ta TG6KfJ9DFwB8WMIbGmRXHjnVxMRaDRUWUijzP8JBeyCIgH7Ta1gMK2beUrrKblsMhDjY yeeVkykbK/DyY5S4PgSXASpUieCbtQTSUocmQSSxc6P2i0ylw6N5+jklTwNfiaIDyM56 EoWQ== X-Gm-Message-State: AOAM530o/reC1Xx8T042p5lclBxvZ+5Q3YBxRi5UXwQzbD8qQzcFg4kY PeOabFiOeFbGeU8NBjwigwU= X-Google-Smtp-Source: ABdhPJy/5gSK2bRCKJPk6p1+J1Yppy/v2zByLpU1b0adu5bjtUcBkyhg2AnC+OSyMCu9aAHlMkrWOg== X-Received: by 2002:a9d:2035:: with SMTP id n50mr9470077ota.44.1611800424005; Wed, 27 Jan 2021 18:20:24 -0800 (PST) Received: from localhost.localdomain ([50.236.19.102]) by smtp.gmail.com with ESMTPSA id m10sm731246otp.19.2021.01.27.18.20.18 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 27 Jan 2021 18:20:23 -0800 (PST) From: Yafang Shao To: david@redhat.com, vbabka@suse.cz, cl@linux.com, penberg@kernel.org, rientjes@google.com, iamjoonsoo.kim@lge.com, akpm@linux-foundation.org, pmladek@suse.com, rostedt@goodmis.org, sergey.senozhatsky@gmail.com, andriy.shevchenko@linux.intel.com, linux@rasmusvillemoes.dk Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, Yafang Shao Subject: [PATCH 2/3] mm, slub: don't combine pr_err with INFO Date: Thu, 28 Jan 2021 10:19:46 +0800 Message-Id: <20210128021947.22877-3-laoar.shao@gmail.com> X-Mailer: git-send-email 2.24.3 (Apple Git-128) In-Reply-To: <20210128021947.22877-1-laoar.shao@gmail.com> References: <20210128021947.22877-1-laoar.shao@gmail.com> MIME-Version: 1.0 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: It is strange to combine "pr_err" with "INFO", so let's clean them up. This patch is motivated by David's comment[1]. - before the patch [ 8846.517809] INFO: Slab 0x00000000f42a2c60 objects=33 used=3 fp=0x0000000060d32ca8 flags=0x17ffffc0010200(slab|head) - after the patch [ 6312.639698] ERR: Slab 0x000000006d1133b9 objects=33 used=3 fp=0x000000006d0779d1 flags=0x17ffffc0010200(slab|head) [1]. https://lore.kernel.org/linux-mm/b9c0f2b6-e9b0-0c36-ebdd-2bc684c5a762@redhat.com/#t Cc: David Hildenbrand Signed-off-by: Yafang Shao --- mm/slub.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/mm/slub.c b/mm/slub.c index 4b9ab267afbc..18b4474c8fa2 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -615,7 +615,7 @@ static void print_track(const char *s, struct track *t, unsigned long pr_time) if (!t->addr) return; - pr_err("INFO: %s in %pS age=%lu cpu=%u pid=%d\n", + pr_err("ERR: %s in %pS age=%lu cpu=%u pid=%d\n", s, (void *)t->addr, pr_time - t->when, t->cpu, t->pid); #ifdef CONFIG_STACKTRACE { @@ -641,7 +641,7 @@ void print_tracking(struct kmem_cache *s, void *object) static void print_page_info(struct page *page) { - pr_err("INFO: Slab 0x%p objects=%u used=%u fp=0x%p flags=%#lx(%pGp)\n", + pr_err("ERR: Slab 0x%p objects=%u used=%u fp=0x%p flags=%#lx(%pGp)\n", page, page->objects, page->inuse, page->freelist, page->flags, &page->flags); @@ -698,7 +698,7 @@ static void print_trailer(struct kmem_cache *s, struct page *page, u8 *p) print_page_info(page); - pr_err("INFO: Object 0x%p @offset=%tu fp=0x%p\n\n", + pr_err("ERR: Object 0x%p @offset=%tu fp=0x%p\n\n", p, p - addr, get_freepointer(s, p)); if (s->flags & SLAB_RED_ZONE) @@ -791,7 +791,7 @@ static int check_bytes_and_report(struct kmem_cache *s, struct page *page, end--; slab_bug(s, "%s overwritten", what); - pr_err("INFO: 0x%p-0x%p @offset=%tu. First byte 0x%x instead of 0x%x\n", + pr_err("ERR: 0x%p-0x%p @offset=%tu. First byte 0x%x instead of 0x%x\n", fault, end - 1, fault - addr, fault[0], value); print_trailer(s, page, object); @@ -3855,7 +3855,7 @@ static void list_slab_objects(struct kmem_cache *s, struct page *page, for_each_object(p, s, addr, page->objects) { if (!test_bit(__obj_to_index(s, addr, p), map)) { - pr_err("INFO: Object 0x%p @offset=%tu\n", p, p - addr); + pr_err("ERR: Object 0x%p @offset=%tu\n", p, p - addr); print_tracking(s, p); } } From patchwork Thu Jan 28 02:19:47 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yafang Shao X-Patchwork-Id: 12051641 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-13.5 required=3.0 tests=BAYES_00, DKIM_ADSP_CUSTOM_MED,DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER, INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 36551C433E0 for ; Thu, 28 Jan 2021 02:20:32 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id C4BB064DCD for ; Thu, 28 Jan 2021 02:20:31 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C4BB064DCD Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 4E3726B0070; Wed, 27 Jan 2021 21:20:31 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 494366B0071; Wed, 27 Jan 2021 21:20:31 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 383BD6B0072; Wed, 27 Jan 2021 21:20:31 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0139.hostedemail.com [216.40.44.139]) by kanga.kvack.org (Postfix) with ESMTP id 222966B0070 for ; Wed, 27 Jan 2021 21:20:31 -0500 (EST) Received: from smtpin25.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id E32068249980 for ; Thu, 28 Jan 2021 02:20:30 +0000 (UTC) X-FDA: 77753579820.25.sand77_440dc5b2759c Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin25.hostedemail.com (Postfix) with ESMTP id BF2881804E3A1 for ; Thu, 28 Jan 2021 02:20:30 +0000 (UTC) X-HE-Tag: sand77_440dc5b2759c X-Filterd-Recvd-Size: 5688 Received: from mail-ot1-f52.google.com (mail-ot1-f52.google.com [209.85.210.52]) by imf09.hostedemail.com (Postfix) with ESMTP for ; Thu, 28 Jan 2021 02:20:30 +0000 (UTC) Received: by mail-ot1-f52.google.com with SMTP id 36so3810790otp.2 for ; Wed, 27 Jan 2021 18:20:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=WaWfUsxlwLjtJJJs7BCjaV3recgbn4DsBXlNrfMz+oo=; b=saVXRoDxBhtwjjEtBk2HabAxNFKMEVhPljlcyyH0GwrH+q8TICzDWdY3SaYxc38oH9 Pv1Fw9vG0xUXjxezCkklUNGxZ7Gm5ExDHgbB+GHD3MQZaLwt/XZbx8IJjOdl8T8NrArm nDB6kSOaONxbI3tAboDMfz7RGL+tk46gIncXAJDcGiuoWsn7qC3G+yqIrj5TO2qYq1EE yf2gMyivcRViM57zTQ04U6OsGxhoXsdIp/yNn+6Qwfis5YZErsV5IQ1vhKxSuh3Ztr3p 4Ph6WA4XvPV4fCWUP0WxFkZ0w9lPyPs1Lvs2S8UqsFflgTWvUOFunDseoEdKCuwF1dy7 Jmag== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=WaWfUsxlwLjtJJJs7BCjaV3recgbn4DsBXlNrfMz+oo=; b=psDmdqE7K0QRNJEzlzyyfYDLZs4IA8s9cwfezM3UObdSVDxF5kcfM7+tPGYg82nwhj KTSyNYbiyLY4DW6eKcsdvklHLbp9dWw98DJEUdYrXWUuh6gS9zFiNQt3v4D6l72Z/u2I SCuDo4j39jMAi3IfvT8wL0VBiT2/LBwXKggYISwQEJolG/sUyf3th4zsBNX4viLtMm73 prQHnCvcIs5pjH+ud8eoqNkRvRfZE8QSAyEJ0bUjmYFk3nViofBwG+uIb1RAhr/LFKum 28gmeAWRX7Z5NQwzv4LQq+KHAjpQyFpkyo8SBklNLqd6L0tSEYNbJjBDajdMcYb8XFTE vlAw== X-Gm-Message-State: AOAM530cVe3Dq37uyOXx/xSW/hfIsjWK1TtSHv3mibOe6ScKe479GdA4 1WHWt4HzJcemwnvQUTRJCw8= X-Google-Smtp-Source: ABdhPJz8AWLveugxt8Vw+jfjDoAFWZOcLN/f5niUp0wrxR0UbOYISJvgKpGp5cnvecembCJTwQdczA== X-Received: by 2002:a05:6830:2f3:: with SMTP id r19mr9873087ote.299.1611800429873; Wed, 27 Jan 2021 18:20:29 -0800 (PST) Received: from localhost.localdomain ([50.236.19.102]) by smtp.gmail.com with ESMTPSA id m10sm731246otp.19.2021.01.27.18.20.24 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 27 Jan 2021 18:20:29 -0800 (PST) From: Yafang Shao To: david@redhat.com, vbabka@suse.cz, cl@linux.com, penberg@kernel.org, rientjes@google.com, iamjoonsoo.kim@lge.com, akpm@linux-foundation.org, pmladek@suse.com, rostedt@goodmis.org, sergey.senozhatsky@gmail.com, andriy.shevchenko@linux.intel.com, linux@rasmusvillemoes.dk Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, Yafang Shao Subject: [PATCH 3/3] printk: dump full information of page flags in pGp Date: Thu, 28 Jan 2021 10:19:47 +0800 Message-Id: <20210128021947.22877-4-laoar.shao@gmail.com> X-Mailer: git-send-email 2.24.3 (Apple Git-128) In-Reply-To: <20210128021947.22877-1-laoar.shao@gmail.com> References: <20210128021947.22877-1-laoar.shao@gmail.com> MIME-Version: 1.0 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: Currently the pGp only shows the names of page flags, rather than the full information including section, node, zone, last cpupid and kasan tag. While it is not easy to parse these information manually because there're so many flavors. Let's interpret them in pGp as well. - Before the patch, [ 6312.639698] ERR: Slab 0x000000006d1133b9 objects=33 used=3 fp=0x000000006d0779d1 flags=0x17ffffc0010200(slab|head) - After the patch, [ 6315.235783] ERR: Slab 0x000000006d1133b9 objects=33 used=3 fp=0x000000006d0779d1 flags=0x17ffffc0010200(Node 0x0,Zone 0x2,Lastcpupid 0x1fffff,slab|head) Cc: David Hildenbrand Signed-off-by: Yafang Shao --- lib/vsprintf.c | 42 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/lib/vsprintf.c b/lib/vsprintf.c index 3b53c73580c5..bd809f4f1b82 100644 --- a/lib/vsprintf.c +++ b/lib/vsprintf.c @@ -1916,6 +1916,46 @@ char *format_flags(char *buf, char *end, unsigned long flags, return buf; } +struct page_flags_layout { + int width; + int shift; + int mask; + char *name; +}; + +struct page_flags_layout pfl[] = { + {SECTIONS_WIDTH, SECTIONS_PGSHIFT, SECTIONS_MASK, "Section "}, + {NODES_WIDTH, NODES_PGSHIFT, NODES_MASK, "Node "}, + {ZONES_WIDTH, ZONES_PGSHIFT, ZONES_MASK, "Zone "}, + {LAST_CPUPID_WIDTH, LAST_CPUPID_PGSHIFT, LAST_CPUPID_MASK, "Lastcpupid "}, + {KASAN_TAG_WIDTH, KASAN_TAG_PGSHIFT, KASAN_TAG_MASK, "Kasantag "}, +}; + +static +char *format_layout(char *buf, char *end, unsigned long flags) +{ + int i; + + for (i = 0; i < sizeof(pfl) / sizeof(struct page_flags_layout) && buf < end; i++) { + if (pfl[i].width == 0) + continue; + + buf = string(buf, end, pfl[i].name, default_str_spec); + + if (buf >= end) + break; + buf = number(buf, end, (flags >> pfl[i].shift) & pfl[i].mask, + default_flag_spec); + + if (buf >= end) + break; + *buf = ','; + buf++; + } + + return buf; +} + static noinline_for_stack char *flags_string(char *buf, char *end, void *flags_ptr, struct printf_spec spec, const char *fmt) @@ -1929,7 +1969,7 @@ char *flags_string(char *buf, char *end, void *flags_ptr, switch (fmt[1]) { case 'p': flags = *(unsigned long *)flags_ptr; - /* Remove zone id */ + buf = format_layout(buf, end, flags & ~((1UL << NR_PAGEFLAGS) - 1)); flags &= (1UL << NR_PAGEFLAGS) - 1; names = pageflag_names; break;