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=-2.3 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, USER_AGENT_MUTT 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 1A56AC04AB4 for ; Mon, 20 May 2019 01:26:20 +0000 (UTC) Received: from shelob.surriel.com (shelob.surriel.com [96.67.55.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 9BA8F20656 for ; Mon, 20 May 2019 01:26:19 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=tobin.cc header.i=@tobin.cc header.b="Nmwp+bNx"; dkim=fail reason="signature verification failed" (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="soJI+dU+" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 9BA8F20656 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=tobin.cc Authentication-Results: mail.kernel.org; spf=fail smtp.mailfrom=kernelnewbies-bounces+kernelnewbies=archiver.kernel.org@kernelnewbies.org Received: from localhost ([::1] helo=shelob.surriel.com) by shelob.surriel.com with esmtp (Exim 4.91) (envelope-from ) id 1hSX4E-0001a0-AL for kernelnewbies@archiver.kernel.org; Sun, 19 May 2019 21:26:18 -0400 Received: from out3-smtp.messagingengine.com ([66.111.4.27]) by shelob.surriel.com with esmtps (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.91) (envelope-from ) id 1hSX2Y-0007ne-5k for kernelnewbies@kernelnewbies.org; Sun, 19 May 2019 21:24:34 -0400 Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id 7FA0B23967; Sun, 19 May 2019 21:24:32 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute5.internal (MEProxy); Sun, 19 May 2019 21:24:32 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tobin.cc; h=date :from:to:cc:subject:message-id:references:mime-version :content-type:in-reply-to; s=fm3; bh=Y7wH8XxzV8rUAIQggCheCZkjx/+ B12dVoWgXIA5rjWU=; b=Nmwp+bNxXbFmPecFk7BjYfbFr214Hg6SXLJ+J5lODVl roPerifal1pH+V8GXYUmfY4QV/XlNPtjJvcDu7SSwxJyU9IACzxBBFxthU+vIcCy q45p8Csadgg/VwoSe1o/wNfMP2VvzFePgKGdOdEQrogSjT5LCYOgQOnAGYQn8180 ZOCavjUMbVy0jaSZZo7H2zXD1YDksqpNFrujDu1qGVJrBdG+9gVVTB8PWhGJ50cB Jqv/RKxad9g55mFolwCFpJr4PIpmwhRCdqWqhGARu9eepFf94IwHHFTAbLM4iPfu SlZLzlNVCIXYgRqmMqLH1VL0/IUXC0iBtSHx0Dl+MRw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm2; bh=Y7wH8X xzV8rUAIQggCheCZkjx/+B12dVoWgXIA5rjWU=; b=soJI+dU+YobLC25yumeg/o cp58WJyXVvec6lYlBG53ivkM2SUhNmSAKF+fDrvnHwAhvFaiyvvAzUV3V93wZshA 24/0QfSoqx0mid5vclmq/7s7EYLXA+hTNtgLkXvE10QH1m8lEYGWP8vDViSC/nKF WKWnTL+1fitMEOq7xN6RgeAH6pjg9axUKMph4BQD6f11SU38+LtbiSYMWKj4uKtZ CPajJcyETrVjSpB7ejpJZULKa/2rbJiILSEvOVGeRMu9GNAkIAkiAA0JxbtgUKzE gULqhEg3s67s9Yq3kIW0f3xi3Jg575dBzBJr3rqW6VIfhhrPZ4SPWkIkIGRL6FVg == X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduuddruddtjedggeejucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne gfrhhlucfvnfffucdlfedtmdenucfjughrpeffhffvuffkfhggtggujgfofgesthdtredt ofervdenucfhrhhomhepfdfvohgsihhnucevrdcujfgrrhguihhnghdfuceomhgvsehtoh gsihhnrdgttgeqnecuffhomhgrihhnpehinhhithhirghlihiivggurdhmmhenucfkphep uddvgedrudeiledrudehiedrvddtfeenucfrrghrrghmpehmrghilhhfrhhomhepmhgvse htohgsihhnrdgttgenucevlhhushhtvghrufhiiigvpedt X-ME-Proxy: Received: from localhost (124-169-156-203.dyn.iinet.net.au [124.169.156.203]) by mail.messagingengine.com (Postfix) with ESMTPA id 6F7228005B; Sun, 19 May 2019 21:24:31 -0400 (EDT) Date: Mon, 20 May 2019 11:23:51 +1000 From: "Tobin C. Harding" To: Amit Kumar Subject: Re: Unable to understand a piece of code Message-ID: <20190520012351.GA13083@eros.localdomain> References: MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-Mailer: Mutt 1.11.4 (2019-03-13) User-Agent: Mutt/1.11.4 (2019-03-13) Cc: linux-newbie@vger.kernel.org, Kernel Newbies X-BeenThere: kernelnewbies@kernelnewbies.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Learn about the Linux kernel List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: kernelnewbies-bounces+kernelnewbies=archiver.kernel.org@kernelnewbies.org On Mon, May 20, 2019 at 05:37:41AM +0530, Amit Kumar wrote: > HI, > > mm/slub.c: line 3973 > int __kmem_cache_shrink(struct kmem_cache *s) > { > int node; > int i; > struct kmem_cache_node *n; > struct page *page; > struct page *t; > struct list_head discard; > struct list_head promote[SHRINK_PROMOTE_MAX]; > unsigned long flags; > int ret = 0; > > flush_all(s); > for_each_kmem_cache_node(s, node, n) { > > How uninitialized variable node is being used in macro for_each_kmem_cache_node? > > node is a local variable with no extern and not initialized. > > mm/slab.h: line 490 > #define for_each_kmem_cache_node(__s, __node, __n) \ > for (__node = 0; __node < nr_node_ids; __node++) \ This _is_ the initialization of node. Macros are kinda funky, there isn't much more to say about that other than perhaps read up some more about how macros work in C and read a bunch more macros in the kernel e.g. include/linux/list.h Good luck, Tobin. _______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies