From patchwork Thu Jul 15 03:15:29 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Justin He X-Patchwork-Id: 12378379 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=-16.8 required=3.0 tests=BAYES_00, 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 00CD9C12002 for ; Thu, 15 Jul 2021 03:16:28 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id A5AA361396 for ; Thu, 15 Jul 2021 03:16:27 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org A5AA361396 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=arm.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 0027E6B00B7; Wed, 14 Jul 2021 23:16:28 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id EF4DA6B00BA; Wed, 14 Jul 2021 23:16:27 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DBC8E6B00BB; Wed, 14 Jul 2021 23:16:27 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0050.hostedemail.com [216.40.44.50]) by kanga.kvack.org (Postfix) with ESMTP id B0E426B00B7 for ; Wed, 14 Jul 2021 23:16:27 -0400 (EDT) Received: from smtpin39.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay02.hostedemail.com (Postfix) with ESMTP id 98D7C1AECB for ; Thu, 15 Jul 2021 03:16:26 +0000 (UTC) X-FDA: 78363359172.39.C023590 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf22.hostedemail.com (Postfix) with ESMTP id 2D36B1909 for ; Thu, 15 Jul 2021 03:16:26 +0000 (UTC) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 4418B11FB; Wed, 14 Jul 2021 20:16:25 -0700 (PDT) Received: from entos-ampere-02.shanghai.arm.com (entos-ampere-02.shanghai.arm.com [10.169.214.103]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id E4B873F7D8; Wed, 14 Jul 2021 20:16:22 -0700 (PDT) From: Jia He To: linux-kernel@vger.kernel.org Cc: Linus Torvalds , Christoph Hellwig , nd@arm.com, Jia He , Andrew Morton , linux-mm@kvack.org Subject: [PATCH RFC 09/13] mm/filemap: simplify the printing with '%pD' specifier Date: Thu, 15 Jul 2021 11:15:29 +0800 Message-Id: <20210715031533.9553-10-justin.he@arm.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210715031533.9553-1-justin.he@arm.com> References: <20210715031533.9553-1-justin.he@arm.com> X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 2D36B1909 X-Stat-Signature: hd8cm3nyyw3tcjn8a3acfbjnraz8ubee Authentication-Results: imf22.hostedemail.com; dkim=none; dmarc=pass (policy=none) header.from=arm.com; spf=pass (imf22.hostedemail.com: domain of justin.he@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=justin.he@arm.com X-HE-Tag: 1626318986-715181 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: After the behavior of '%pD' is changed to print the full path of file, the log printing in dio_warn_stale_pagecache() can be simplified. Given that the error case is well handled in d_path_unsafe(), the error string would be copied in '%pD' buffer, no need to additionally handle IS_ERR(). Cc: Andrew Morton Cc: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Jia He --- mm/filemap.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/mm/filemap.c b/mm/filemap.c index d1458ecf2f51..477288017765 100644 --- a/mm/filemap.c +++ b/mm/filemap.c @@ -3497,16 +3497,11 @@ EXPORT_SYMBOL(pagecache_write_end); void dio_warn_stale_pagecache(struct file *filp) { static DEFINE_RATELIMIT_STATE(_rs, 86400 * HZ, DEFAULT_RATELIMIT_BURST); - char pathname[128]; - char *path; errseq_set(&filp->f_mapping->wb_err, -EIO); if (__ratelimit(&_rs)) { - path = file_path(filp, pathname, sizeof(pathname)); - if (IS_ERR(path)) - path = "(unknown)"; pr_crit("Page cache invalidation failure on direct I/O. Possible data corruption due to collision with buffered I/O!\n"); - pr_crit("File: %s PID: %d Comm: %.20s\n", path, current->pid, + pr_crit("File: %pD PID: %d Comm: %.20s\n", filp, current->pid, current->comm); } } From patchwork Thu Jul 15 03:15:32 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Justin He X-Patchwork-Id: 12378381 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=-16.8 required=3.0 tests=BAYES_00, 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 D09DDC12002 for ; Thu, 15 Jul 2021 03:16:36 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 9FA0A61374 for ; Thu, 15 Jul 2021 03:16:36 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9FA0A61374 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=arm.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 003376B00BB; Wed, 14 Jul 2021 23:16:37 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id F1BBE6B00BC; Wed, 14 Jul 2021 23:16:36 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DBD6E6B00BE; Wed, 14 Jul 2021 23:16:36 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0084.hostedemail.com [216.40.44.84]) by kanga.kvack.org (Postfix) with ESMTP id B82E66B00BB for ; Wed, 14 Jul 2021 23:16:36 -0400 (EDT) Received: from smtpin26.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay02.hostedemail.com (Postfix) with ESMTP id A69EB1D5AE for ; Thu, 15 Jul 2021 03:16:35 +0000 (UTC) X-FDA: 78363359550.26.0E745B4 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by imf23.hostedemail.com (Postfix) with ESMTP id 4577E90000BD for ; Thu, 15 Jul 2021 03:16:35 +0000 (UTC) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 9F9651042; Wed, 14 Jul 2021 20:16:34 -0700 (PDT) Received: from entos-ampere-02.shanghai.arm.com (entos-ampere-02.shanghai.arm.com [10.169.214.103]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 4535B3F7D8; Wed, 14 Jul 2021 20:16:32 -0700 (PDT) From: Jia He To: linux-kernel@vger.kernel.org Cc: Linus Torvalds , Christoph Hellwig , nd@arm.com, Jia He , Andrew Morton , linux-mm@kvack.org Subject: [PATCH RFC 12/13] mm: simplify the printing with '%pd' specifier Date: Thu, 15 Jul 2021 11:15:32 +0800 Message-Id: <20210715031533.9553-13-justin.he@arm.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210715031533.9553-1-justin.he@arm.com> References: <20210715031533.9553-1-justin.he@arm.com> X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 4577E90000BD X-Stat-Signature: gwc6nzzmz4ujxcrnrufpqw9ffsotda6e Authentication-Results: imf23.hostedemail.com; dkim=none; spf=pass (imf23.hostedemail.com: domain of justin.he@arm.com designates 217.140.110.172 as permitted sender) smtp.mailfrom=justin.he@arm.com; dmarc=pass (policy=none) header.from=arm.com X-HE-Tag: 1626318995-831515 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: Use '%pd' to simplify the printing since kbasename(file_path()) is to get the last dentry of the full path. Cc: Andrew Morton Cc: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Jia He --- mm/memory.c | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/mm/memory.c b/mm/memory.c index 747a01d495f2..350692ada6f7 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -5217,18 +5217,14 @@ void print_vma_addr(char *prefix, unsigned long ip) vma = find_vma(mm, ip); if (vma && vma->vm_file) { struct file *f = vma->vm_file; - char *buf = (char *)__get_free_page(GFP_NOWAIT); - if (buf) { - char *p; - - p = file_path(f, buf, PAGE_SIZE); - if (IS_ERR(p)) - p = "?"; - printk("%s%s[%lx+%lx]", prefix, kbasename(p), + + if (f) + printk("%s%pd[%lx+%lx]", prefix, f->f_path.dentry, vma->vm_start, vma->vm_end - vma->vm_start); - free_page((unsigned long)buf); - } + else + printk("%s?[%lx+%lx]", prefix, vma->vm_start, + vma->vm_end - vma->vm_start); } mmap_read_unlock(mm); }