Messages in this thread | | | Date | Fri, 11 Mar 2022 01:32:44 +0000 | From | Barnabás Pőcze <> | 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
| |