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=-8.5 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,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 66119C433E0 for ; Wed, 24 Jun 2020 12:42:44 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 4C8A020836 for ; Wed, 24 Jun 2020 12:42:44 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389633AbgFXMmn (ORCPT ); Wed, 24 Jun 2020 08:42:43 -0400 Received: from helcar.hmeau.com ([216.24.177.18]:48474 "EHLO fornost.hmeau.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2389197AbgFXMmn (ORCPT ); Wed, 24 Jun 2020 08:42:43 -0400 Received: from gwarestrin.arnor.me.apana.org.au ([192.168.0.7]) by fornost.hmeau.com with smtp (Exim 4.92 #5 (Debian)) id 1jo4jE-0001yO-Ix; Wed, 24 Jun 2020 22:42:13 +1000 Received: by gwarestrin.arnor.me.apana.org.au (sSMTP sendmail emulation); Wed, 24 Jun 2020 22:42:12 +1000 Date: Wed, 24 Jun 2020 22:42:12 +1000 From: Herbert Xu To: Petr Mladek Cc: Stephen Rothwell , Linux Next Mailing List , Linux Kernel Mailing List , Andy Shevchenko , Sergey Senozhatsky , "Steven Rostedt (VMware)" , Heiko Carstens , Peter Zijlstra Subject: [PATCH] lockdep: Move list.h inclusion into lockdep.h Message-ID: <20200624124212.GA17350@gondor.apana.org.au> References: <20200621131554.5a662afe@canb.auug.org.au> <20200623102655.6d16e610@canb.auug.org.au> <20200623121637.GA8444@alley> <20200623121937.GA9671@gondor.apana.org.au> <20200623142858.GB8444@alley> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200623142858.GB8444@alley> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-next-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-next@vger.kernel.org On Tue, Jun 23, 2020 at 04:28:58PM +0200, Petr Mladek wrote: > > My "allmodconfig" build has successfully finished with the following extra > fix on top of the two patches: > > diff --git a/include/linux/list.h b/include/linux/list.h > index aff44d34f4e4..6d606c4036ce 100644 > --- a/include/linux/list.h > +++ b/include/linux/list.h > @@ -6,7 +6,7 @@ > #include > #include > #include > -#include > +#include Unfortunately this doesn't work because list.h actually does need kernel.h for container_of. However, we can easily fix the loop another way by removing list.h from lockdep.h as it doesn't actually use any list macros/functions but only the list type which is now in linux/types.h. We could either fold this into the lockdep_types patch, or fold it into the printk patch, or just leave it as a standalone patch. What do you guys think? ---8<--- Currently lockdep_types.h includes list.h without actually using any of its macros or functions. All it needs are the type definitions which were moved into types.h long ago. This potentially causes inclusion loops because both are included by many core header files. This patch moves the list.h inclusion into lockdep.h. Note that we could probably remove it completely but that could potentially result in compile failures should any end users not include list.h directly and also be unlucky enough to not get list.h via some other header file. Reported-by: Petr Mladek Signed-off-by: Herbert Xu diff --git a/include/linux/lockdep.h b/include/linux/lockdep.h index 3b73cf84f77d..b1ad5c045353 100644 --- a/include/linux/lockdep.h +++ b/include/linux/lockdep.h @@ -21,6 +21,7 @@ extern int lock_stat; #ifdef CONFIG_LOCKDEP #include +#include #include #include diff --git a/include/linux/lockdep_types.h b/include/linux/lockdep_types.h index 7b9350624577..bb35b449f533 100644 --- a/include/linux/lockdep_types.h +++ b/include/linux/lockdep_types.h @@ -32,8 +32,6 @@ enum lockdep_wait_type { #ifdef CONFIG_LOCKDEP -#include - /* * We'd rather not expose kernel/lockdep_states.h this wide, but we do need * the total number of states... :-( -- Email: Herbert Xu Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt