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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 06F9DC433F5 for ; Thu, 3 Mar 2022 03:31:36 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 60CAA8D0002; Wed, 2 Mar 2022 22:31:36 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 5BAA08D0001; Wed, 2 Mar 2022 22:31:36 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4829F8D0002; Wed, 2 Mar 2022 22:31:36 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0238.hostedemail.com [216.40.44.238]) by kanga.kvack.org (Postfix) with ESMTP id 361718D0001 for ; Wed, 2 Mar 2022 22:31:36 -0500 (EST) Received: from smtpin16.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay02.hostedemail.com (Postfix) with ESMTP id DC8829CD61 for ; Thu, 3 Mar 2022 03:31:35 +0000 (UTC) X-FDA: 79201650150.16.E9E1811 Received: from mail-pj1-f49.google.com (mail-pj1-f49.google.com [209.85.216.49]) by imf21.hostedemail.com (Postfix) with ESMTP id 708061C000A for ; Thu, 3 Mar 2022 03:31:35 +0000 (UTC) Received: by mail-pj1-f49.google.com with SMTP id gj15-20020a17090b108f00b001bef86c67c1so3531835pjb.3 for ; Wed, 02 Mar 2022 19:31:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=pGBvvXv0+bIemEpOMWx5hDUzr2X3HaovG9ODW4Gck18=; b=howYcMrVhW/d8Do6Nlm4w4Jt7BHLOLV+2YwJgPe7YI2G3oBIPY6NNsjLmmzuUE11IW s/AWRMmIFli6RvC1P9MjBDurn+s2BLxshmG0WYZdG1sX5zdBg7R8gzkacLFq+PWjbMS7 deH/AMz5iLaIP69PXbUtgGA4iJtFfyTiCa1O6dwgawKp329pJUx5boFzPPTviUUartB5 usR9YAwoJ/ZU8CSd5U+oQlFjZIufd/wtVhWz4jdcENMMZBfyKD2OQaJRgaqtiRzb6Alj Q+IIrg72P8uUE19PrSWFqvXu18a6k4+/UwEf6Cs8SNddraR4zLPcZcNi+5Sf+2nLNela pzSA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=pGBvvXv0+bIemEpOMWx5hDUzr2X3HaovG9ODW4Gck18=; b=GQwRw9tmS71kKc6c6Uq0yKW3vTo56C9EWXMWZlqxb4JM9ZfG0uU24r7ITX2ksHd1nn /tVriAI2SK24t4TtMTE8zINNlDb0uxfdMwh17oOasW17BSnKO6JaXemeEGjZRR9CxI2l 9Wzujnpl+h4pMT4Vd7I5a4xEKf1oXOGc5Ndbi8husaeAJ9OQLINCzHN0Gm1uFTa2qFBl WR7axBEO5OoKAqAKLBsMaqJRg0Vy5CVuUv005n0KxWYaFCOoGMavleUi7MtV7439Lfds mtpYyaq6zJICgLiQt296S4ssmhxeFb4pgS/yAU8hmQVNDyNTgwowd6oUgsqYZWUvZN7/ NzFA== X-Gm-Message-State: AOAM532DhB9gqGJPlkZ+bGe/KakH4wUKdaCBigIxOxrwLvOwvS0dlCg8 GAr8vq9eab+VyxO6g0X7H+s= X-Google-Smtp-Source: ABdhPJwVQjxrQ0+UJfpvvM58vmsnYjycON6psaMhdHTnaETmUhm7UVpWWj7w8EURRXPSwTwHGXSXjg== X-Received: by 2002:a17:90a:7147:b0:1bd:24ac:13bd with SMTP id g7-20020a17090a714700b001bd24ac13bdmr3147872pjs.70.1646278294550; Wed, 02 Mar 2022 19:31:34 -0800 (PST) Received: from ubuntu.huawei.com ([119.3.119.19]) by smtp.googlemail.com with ESMTPSA id ot13-20020a17090b3b4d00b001bf0b8a1ee7sm566981pjb.11.2022.03.02.19.31.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 02 Mar 2022 19:31:33 -0800 (PST) From: Xiaomeng Tong To: james.bottomley@hansenpartnership.com Cc: arnd@arndb.de, gregkh@linuxfoundation.org, jakobkoschel@gmail.com, jannh@google.com, keescook@chromium.org, linux-kbuild@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, netdev@vger.kernel.org, torvalds@linux-foundation.org, xiam0nd.tong@gmail.com Subject: Re: [PATCH 2/6] list: add new MACROs to make iterator invisiable outside the loop Date: Thu, 3 Mar 2022 11:31:22 +0800 Message-Id: <20220303033122.10028-1-xiam0nd.tong@gmail.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: References: X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: 708061C000A X-Stat-Signature: f3dby3gei3bf1aqpr5xei88e35zqn4mt Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b=howYcMrV; spf=pass (imf21.hostedemail.com: domain of xiam0nd.tong@gmail.com designates 209.85.216.49 as permitted sender) smtp.mailfrom=xiam0nd.tong@gmail.com; dmarc=pass (policy=none) header.from=gmail.com X-Rspam-User: X-HE-Tag: 1646278295-249586 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: On Wed, 02 Mar 2022 08:02:23 -0500, James Bottomley wrote: > pos shouldn't be an input to the macro since it's being declared inside > it. All that will do will set up confusion about the shadowing of pos. > The macro should still work as > > #define list_for_each_entry_inside(type, head, member) \ > ... > > For safety, you could > > #define POS __UNIQUE_ID(pos) > > and use POS as the loop variable .. you'll have to go through an > intermediate macro to get it to be stable. There are examples in > linux/rcupdate.h The outer "pos" variable is no longer needed and thus the declare statement before the loop is removed, see the demostration in PATCH 3~6. Now, there is only one inner "pos" variable left. Thus, there should be no such *shadow* problem. Please remind me if i missed something, thanks. -- Xiaomeng Tong