Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp6425490pxb; Wed, 17 Feb 2021 04:22:55 -0800 (PST) X-Google-Smtp-Source: ABdhPJyaCICSuZKDGYsBgQaofTaG+8RTwY6TV/1Zo2csTWU8lh2PXrFEM//OWbQ8q3DCtfjbJ1kD X-Received: by 2002:a05:6402:4253:: with SMTP id g19mr26219912edb.343.1613564575588; Wed, 17 Feb 2021 04:22:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1613564575; cv=none; d=google.com; s=arc-20160816; b=hMmmVx0OrpNNi6wr2EjHeT25X4hOw7seEn9dOty2TfMaq0OOUrrJyg1a8piQFAqtXa iCXrpYTAwgJ0EHp27QlO/iwrZ3cWtTKO0GeHAfC3UzX9+Y0G4QpRrgVusHwDlatCKXdJ Pisl4fFzPonX7egKKOKtIN+/AiE2fNSgP7LdEvrBeX1T6uq4M7Ox8VyzTRGOE+Koilzr WxiWif8uzuTqcxHXRdtHr85SLujziFhfaD7bXBqlzoSG+tg87cyBn6C5W/PNUzoyF6g+ nVCiu6e/aPjxwCy2wJHQQ9YqQ4QmUL+zqsskfCqyGaSfmB2gtvVx8eTJ6mpJDpBn1JtU T6eg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from; bh=VWJklSCveqxfojwTcBxOkR9OnT+zut9GKDpRQwvWbU4=; b=jU3C2W6tGPR3JoHsK7cbHld1wbb0NMNmldiSASY7F6QD6OrQOQnNcJ8ma4EjTjEImT 3Z16tLYNS0SaUqALxOMtHLKAti+utzaAam9zn8BGEW2yRr5EyxvQGFTZ58d4vi4BhkC5 sK5jhYmHNWSnYv2CfkesgYI+QAXtibsd2aPKhAUAX1Ir3Od7NdrqXepNgRNyJlK0E+oG WDyPj69YdpkbMFG1mbKxj/KAF5s9EhYDDIDuIfFLGCdj729EDlv78kGFdSqeMC/IndKK 7GXJbdKtp7hWKQnzK81+i6jGkl4XjeyS1KmAnyY8qWmGD+pGRuADFF28R5QgvlDQsjs4 zqYQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id bs1si1145273edb.502.2021.02.17.04.22.29; Wed, 17 Feb 2021 04:22:55 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231868AbhBQMTI (ORCPT + 99 others); Wed, 17 Feb 2021 07:19:08 -0500 Received: from mout.kundenserver.de ([212.227.126.130]:48061 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231336AbhBQMTG (ORCPT ); Wed, 17 Feb 2021 07:19:06 -0500 Received: from orion.localdomain ([95.118.154.137]) by mrelayeu.kundenserver.de (mreue010 [212.227.15.167]) with ESMTPSA (Nemesis) id 1MiJEc-1lpYdo0EI2-00fOZf; Wed, 17 Feb 2021 13:15:46 +0100 From: "Enrico Weigelt, metux IT consult" To: linux-kernel@vger.kernel.org Cc: pmladek@suse.com, rostedt@goodmis.org, sergey.senozhatsky@gmail.com, andriy.shevchenko@linux.intel.com, linux@rasmusvillemoes.dk, kafai@fb.com, songliubraving@fb.com, yhs@fb.com, john.fastabend@gmail.com, kpsingh@kernel.org, netdev@vger.kernel.org, bpf@vger.kernel.org Subject: [PATCH] lib: vsprintf: check for NULL device_node name in device_node_string() Date: Wed, 17 Feb 2021 13:15:43 +0100 Message-Id: <20210217121543.13010-1-info@metux.net> X-Mailer: git-send-email 2.11.0 X-Provags-ID: V03:K1:lX09z2OoKzZLBm5KCTp8eKEKKIAbQ3PWN5cSgh2b5SM7vTW9J6D Jx4o3WWQRKDWpASJZ/q/yX2rerpr7SfpJ7I5sPWZmLeWQqAyarPEgpIFmoSyLHSLGzYPFSr 16ALY5ooHN2e9MphJmmIu6PqyqAM5bcpG49YSvKZiBiBmlkY8tdhrcI4ExKhkOkejFCHkB5 iw9zZEYDEt26VPxwehKRQ== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:ZUoFaR7AFa0=:RJFlRmGPAc7ycfOpmRAIle cMzNhDSuMu9TSlh8eCMHJ475rVdWbmpPVW1xcPE6IlT0SoceiQvBRj7wYCYXsgqFpb3dImzik 8qP5jXIn/tVqg4mgxGVoykPaHYAFk2BHKOOcWHX2lcAFaTrKFbH78PEYEUyYvSoBOqDopaOLO rjYyktnUn1bYPXU4Zv3HsgIyxHT6TPqbkuF3xG8IgnxVjdnRLlBWIc15L50FU7b/yi6IPOZUn xeO5h+ZOMKki2tJRgzPgyTyIq9GyiD4rG4CdVn6flM0BHNetvOoxWg40lzilr+f35qMXduI5X U83RFBVO6chUdc0mhiamE+ELVsOZHXCGsRsnrH70dZ/Jkr4eEH68IPHlMuIIdXj+1OCnVdrTi EN3QsitbiWZeKcdMcgdmMcpW7q12dLuT3snZpB9XllaN1RBCjqRkWJcnhHW+h Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Under rare circumstances it may happen that a device node's name is NULL (most likely kernel bug in some other place). In such situations anything but helpful, if the debug printout crashes, and nobody knows what actually happened here. Therefore protect it by an explicit NULL check and print out an extra warning. Signed-off-by: Enrico Weigelt, metux IT consult --- lib/vsprintf.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/vsprintf.c b/lib/vsprintf.c index 3b53c73580c5..050a60b88073 100644 --- a/lib/vsprintf.c +++ b/lib/vsprintf.c @@ -2013,6 +2013,10 @@ char *device_node_string(char *buf, char *end, struct device_node *dn, break; case 'n': /* name */ p = fwnode_get_name(of_fwnode_handle(dn)); + if (!p) { + pr_warn("device_node without name. Kernel bug ?\n"); + p = ""; + } precision = str_spec.precision; str_spec.precision = strchrnul(p, '@') - p; buf = string(buf, end, p, str_spec); -- 2.11.0