[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20220311013238.3387227-1-pobrn@protonmail.com>
Date: Fri, 11 Mar 2022 01:32:44 +0000
From: Barnabás Pőcze <pobrn@...tonmail.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>,
linux-kernel@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Xiaomeng Tong <xiam0nd.tong@...il.com>,
Kees Cook <keescook@...omium.org>,
Jakob Koschel <jakobkoschel@...il.com>,
Arnd Bergmann <arnd@...db.de>
Subject: [RFC PATCH v1 0/2] add type-safer list_head wrapper
As there have been various discussions[1][2] about improving
the current `list_head` facilities, I would like to
propose a type-safe(r), lightweight wrapper: tlist.
The first commit goes into details as to how it works,
lists some of its advantages and disadvantages.
The second commit showcases it in the existing WMI platform driver.
NOTE: these changes are mostly untested! They are purely for showcasing
a possible implementation and API. And they depend on the switch to gnu11.
I would like to get some feedback as to whether/how acceptable this
approach is before going further: writing documentation, tests, and
adding more wrappers around existing `list_head` facilities
(e.g. reverse iteration is not implemented).
If this idea has already been proposed, I apologize,
I must have missed it when I searched for similar patches.
PS. I have tried to select those who may be interested
in this discussion, I may have missed people or added
people who aren't interested. Sorry.
[1]: https://lore.kernel.org/all/20220217184829.1991035-1-jakobkoschel@gmail.com/
[2]: https://lore.kernel.org/all/20220301075839.4156-1-xiam0nd.tong@gmail.com/
And see https://lwn.net/Articles/887097/ for a summary.
Barnabás Pőcze (2):
list: add type-safer list_head wrapper
platform/x86: wmi: use tlist for WMI blocks
drivers/platform/x86/wmi.c | 54 ++++++++++---------------
include/linux/tlist.h | 81 ++++++++++++++++++++++++++++++++++++++
2 files changed, 102 insertions(+), 33 deletions(-)
create mode 100644 include/linux/tlist.h
--
2.35.1
Powered by blists - more mailing lists