[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAK8P3a3Uy0k+SnWYqz7FMsQsu14VzivMJcjGDRBLv17adFYywA@mail.gmail.com>
Date: Wed, 8 Dec 2021 09:55:47 +0100
From: Arnd Bergmann <arnd@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Arnd Bergmann <arnd@...db.de>,
Al Viro <viro@...iv.linux.org.uk>,
Andrew Morton <akpm@...ux-foundation.org>,
Guenter Roeck <groeck@...omium.org>,
Kees Cook <keescook@...omium.org>,
Masahiro Yamada <masahiroy@...nel.org>,
Matthew Wilcox <willy@...radead.org>,
Nathan Chancellor <nathan@...nel.org>,
Nick Desaulniers <ndesaulniers@...gle.com>,
Stephen Rothwell <sfr@...b.auug.org.au>,
kernel test robot <lkp@...el.com>,
Ingo Molnar <mingo@...nel.org>,
Peter Zijlstra <peterz@...radead.org>,
Will Deacon <will@...nel.org>,
Waiman Long <longman@...hat.com>,
Boqun Feng <boqun.feng@...il.com>,
Thomas Gleixner <tglx@...utronix.de>,
Tejun Heo <tj@...nel.org>, kernelci@...ups.io,
linux-fsdevel <linux-fsdevel@...r.kernel.org>,
Linux Kbuild mailing list <linux-kbuild@...r.kernel.org>,
llvm@...ts.linux.dev
Subject: Re: [RFC 2/3] headers: introduce linux/struct_types.h
On Tue, Dec 7, 2021 at 7:17 PM Linus Torvalds
<torvalds@...ux-foundation.org> wrote:
>
> On Tue, Dec 7, 2021 at 7:10 AM Arnd Bergmann <arnd@...nel.org> wrote:
> >
> > From: Arnd Bergmann <arnd@...db.de>
> >
> > Working towards a cleaner header structure, start by moving the most
> > commonly embedded structures into a single header file that itself
> > has only a minimum set of indirect includes. At this moment, this
> > include structures for
>
> Ugh. I liked your 1/3 patch, but I absolutely detest this one.
>
> It makes no sense to me, and just makes that header file a completely
> random collection of some random structure types.
>
> And I absolutely hate how it splits out the definition of the struct
> from basic core infrastructure (initializers etc random inline
> functions) for said structures.
>
> So no. NAK on this one. I think it's a disaster.
Ok, thank you for taking a look!
Here is what I'd try next based on the feedback:
- reduce patch 1 somewhat to only include the types that have a strong reason
to get moved to linux/types.h, describing them individually but leaving them
it as a single combined patch
- keep patch 3, but leave 'struct super_block' in linux/fs.h for the moment
because of 'struct list_lru'.
- drop patch 2, but instead find a new home for each structure (along with
its initializers) if needed for defining the types in the new linux/fs_types.h
without too many indirect includes. I'll skip the structs that would be needed
later for mm.h/sched.h/device.h/.... for the moment.
For the added headers, do you have a preference for whether to try grouping
them logically or not? I could either split them out individually into many new
headers (xarray_types.h, idr_types.h, percpu_rwsem_types.h, rwsem_types.h,
...), or combine some of them when they define related types.
Arnd
Powered by blists - more mailing lists