[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240821230539.168107-1-woodyzhang666@gmail.com>
Date: Thu, 22 Aug 2024 07:05:34 +0800
From: Woody Zhang <woodyzhang666@...il.com>
To: Thomas Gleixner <tglx@...utronix.de>,
Andrew Morton <akpm@...ux-foundation.org>
Cc: linux-kernel@...r.kernel.org,
Woody Zhang <woodyzhang666@...il.com>
Subject: [PATCH 0/5] Minor memory size optimization in debugobjects
As of now, debugobjects framework uses hlist_head and separate spinlock
as a hash table bucket. We have hlist_bl_head APIs which embeds a
bit_spinlock in head pointer and thus no separate spinlock is required.
This patchset first wraps irq variant API for bit_spinlock as well as
hlist_bl_lock and several other APIs and macros. Lastly, It replaces
hlist APIs with hlist_bl counterparts.
Woody Zhang (5):
bit_spinlock: add irq variant for bit spinlock API
list_bl: add irq variant for hlist_bl lock API
list_bl: remove lock check in hlist_bl_set_first
list_bl: add hlist_bl_move_list and two macros
debugobjects: use list_bl to save memory for hash slot spinlocks
include/linux/bit_spinlock.h | 37 +++++
include/linux/debugobjects.h | 4 +-
include/linux/list_bl.h | 40 ++++-
lib/debugobjects.c | 288 +++++++++++++++++------------------
4 files changed, 217 insertions(+), 152 deletions(-)
--
2.45.2
Powered by blists - more mailing lists