Path: csiph.com!aioe.org!bofh.it!news.nic.it!robomod From: Sascha Silbe Newsgroups: linux.kernel Subject: [PATCH 1/2] fdt: correctly handle uncompressed node names Date: Sat, 13 May 2017 12:40:01 +0200 Message-ID: References: X-Original-To: Rob Herring , Frank Rowand X-Mailer: git-send-email 2.11.0 Sender: robomod@news.nic.it List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Approved: robomod@news.nic.it Lines: 24 Organization: linux.* mail to news gateway X-Original-Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org X-Original-Date: Sat, 13 May 2017 12:22:28 +0200 X-Original-Message-ID: <20170513102229.22579-2-x-linux@infra-silbe.de> X-Original-References: <20170513102229.22579-1-x-linux@infra-silbe.de> X-Original-Sender: linux-kernel-owner@vger.kernel.org Xref: csiph.com linux.kernel:1640870 When handling uncompressed node names, we need to compare the last component rather than the entire string. Signed-off-by: Sascha Silbe --- scripts/dtc/libfdt/fdt_ro.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/scripts/dtc/libfdt/fdt_ro.c b/scripts/dtc/libfdt/fdt_ro.c index 3d00d2eee0e3..ca03ff87429c 100644 --- a/scripts/dtc/libfdt/fdt_ro.c +++ b/scripts/dtc/libfdt/fdt_ro.c @@ -64,6 +64,9 @@ static int _fdt_nodename_eq(const void *fdt, int offset, /* short match */ return 0; + if (*p == '/') + /* Uncompressed node name. Only compare the last part. */ + p = strrchr(p, '/') + 1; if (memcmp(p, s, len) != 0) return 0; -- 2.11.0