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 X-Spam-Level: X-Spam-Status: No, score=-15.5 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 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 2C712C433DB for ; Tue, 5 Jan 2021 19:09:29 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id E77A322D6E for ; Tue, 5 Jan 2021 19:09:28 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730816AbhAETJO (ORCPT ); Tue, 5 Jan 2021 14:09:14 -0500 Received: from gecko.sbs.de ([194.138.37.40]:42433 "EHLO gecko.sbs.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730703AbhAETJO (ORCPT ); Tue, 5 Jan 2021 14:09:14 -0500 Received: from mail2.sbs.de (mail2.sbs.de [192.129.41.66]) by gecko.sbs.de (8.15.2/8.15.2) with ESMTPS id 105J8N2F006362 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 5 Jan 2021 20:08:23 +0100 Received: from [167.87.32.120] ([167.87.32.120]) by mail2.sbs.de (8.15.2/8.15.2) with ESMTP id 105J8MIv030651; Tue, 5 Jan 2021 20:08:22 +0100 Subject: Re: [PATCH v2] scripts/gdb: fix list_for_each To: George Prekas , Kieran Bingham , Andrew Morton Cc: linux-kernel@vger.kernel.org References: <4ae23bb1-c333-f669-da2d-fa35c4f49018@amazon.com> <04baeb3e-4b46-ae3a-b4e1-4663d1510b05@amazon.com> From: Jan Kiszka Message-ID: Date: Tue, 5 Jan 2021 20:08:22 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 In-Reply-To: <04baeb3e-4b46-ae3a-b4e1-4663d1510b05@amazon.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 05.01.21 17:51, George Prekas wrote: > On 9/24/2020 9:20 AM, George Prekas wrote: >> If the list is uninitialized (next pointer is NULL), list_for_each gets >> stuck in an infinite loop. Print a message and treat list as empty. >> >> Signed-off-by: George Prekas >> --- >>  scripts/gdb/linux/lists.py | 5 +++++ >>  1 file changed, 5 insertions(+) >> >> diff --git a/scripts/gdb/linux/lists.py b/scripts/gdb/linux/lists.py >> index c487ddf09d38..bae4d70b7eae 100644 >> --- a/scripts/gdb/linux/lists.py >> +++ b/scripts/gdb/linux/lists.py >> @@ -27,6 +27,11 @@ def list_for_each(head): >>          raise TypeError("Must be struct list_head not {}" >>                             .format(head.type)) >> >> +    if head['next'] == 0: >> +        gdb.write("list_for_each: Uninitialized list '{}' treated as >> empty\n" >> +                     .format(head.address)) >> +        return >> + >>      node = head['next'].dereference() >>      while node.address != head.address: >>          yield node.address > > Happy New Year! Same to you! > > Any updates on this? > Sorry, slipped through. Reviewed-by: Jan Kiszka Andrew, please pick this up. Jan -- Siemens AG, T RDA IOT Corporate Competence Center Embedded Linux