linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 00/18] lib/stackdepot: fixes and clean-ups
@ 2023-02-10 21:15 andrey.konovalov
  2023-02-10 21:15 ` [PATCH v2 01/18] lib/stackdepot: put functions in logical order andrey.konovalov
                   ` (17 more replies)
  0 siblings, 18 replies; 32+ messages in thread
From: andrey.konovalov @ 2023-02-10 21:15 UTC (permalink / raw)
  To: Marco Elver, Alexander Potapenko
  Cc: Andrey Konovalov, Vlastimil Babka, kasan-dev, Evgenii Stepanov,
	Andrew Morton, linux-mm, linux-kernel, Andrey Konovalov

From: Andrey Konovalov <andreyknvl@google.com>

A set of fixes, comments, and clean-ups I came up with while reading
the stack depot code.

Changes v1->v2:
- Drop "lib/stackdepot: fix setting next_slab_inited in init_stack_slab",
  as there is no bug to fix.
- Use "pool" instead of "slab" for memory regions that store stack traces.
- Rename next_slab/pool_inited to next_slab/pool_required and annotate its
  uses with comments, see new patch #13.
- Use STACK_HASH_TABLE_SCALE as a new name for STACK_HASH_SCALE.
- Mark stack_depot_set_extra_bits as __must_check.
- Only assign extra bits in stack_depot_set_extra_bits for non-empty
  handles.
- Minor comment fixes.

Andrey Konovalov (18):
  lib/stackdepot: put functions in logical order
  lib/stackdepot: use pr_fmt to define message format
  lib/stackdepot, mm: rename stack_depot_want_early_init
  lib/stackdepot: rename stack_depot_disable
  lib/stackdepot: annotate init and early init functions
  lib/stackdepot: lower the indentation in stack_depot_init
  lib/stackdepot: reorder and annotate global variables
  lib/stackdepot: rename hash table constants and variables
  lib/stackdepot: rename slab to pool
  lib/stackdepot: rename handle and pool constants
  lib/stackdepot: rename init_stack_pool
  lib/stacktrace: drop impossible WARN_ON for depot_init_pool
  lib/stackdepot: annotate depot_init_pool and depot_alloc_stack
  lib/stackdepot: rename next_pool_inited to next_pool_required
  lib/stacktrace, kasan, kmsan: rework extra_bits interface
  lib/stackdepot: annotate racy pool_index accesses
  lib/stackdepot: various comments clean-ups
  lib/stackdepot: move documentation comments to stackdepot.h

 include/linux/stackdepot.h | 152 +++++++--
 lib/stackdepot.c           | 654 ++++++++++++++++++-------------------
 mm/kasan/common.c          |   2 +-
 mm/kmsan/core.c            |  10 +-
 mm/page_owner.c            |   2 +-
 mm/slub.c                  |   4 +-
 6 files changed, 457 insertions(+), 367 deletions(-)

-- 
2.25.1


^ permalink raw reply	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2023-02-17  9:50 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-02-10 21:15 [PATCH v2 00/18] lib/stackdepot: fixes and clean-ups andrey.konovalov
2023-02-10 21:15 ` [PATCH v2 01/18] lib/stackdepot: put functions in logical order andrey.konovalov
2023-02-10 21:15 ` [PATCH v2 02/18] lib/stackdepot: use pr_fmt to define message format andrey.konovalov
2023-02-10 21:15 ` [PATCH v2 03/18] lib/stackdepot, mm: rename stack_depot_want_early_init andrey.konovalov
2023-02-10 21:15 ` [PATCH v2 04/18] lib/stackdepot: rename stack_depot_disable andrey.konovalov
2023-02-10 21:15 ` [PATCH v2 05/18] lib/stackdepot: annotate init and early init functions andrey.konovalov
2023-02-10 21:15 ` [PATCH v2 06/18] lib/stackdepot: lower the indentation in stack_depot_init andrey.konovalov
2023-02-10 21:15 ` [PATCH v2 07/18] lib/stackdepot: reorder and annotate global variables andrey.konovalov
2023-02-13 10:33   ` Alexander Potapenko
2023-02-10 21:15 ` [PATCH v2 08/18] lib/stackdepot: rename hash table constants and variables andrey.konovalov
2023-02-13 10:34   ` Alexander Potapenko
2023-02-10 21:15 ` [PATCH v2 09/18] lib/stackdepot: rename slab to pool andrey.konovalov
2023-02-13 10:20   ` Vlastimil Babka
2023-02-13 10:35     ` Alexander Potapenko
2023-02-10 21:15 ` [PATCH v2 10/18] lib/stackdepot: rename handle and pool constants andrey.konovalov
2023-02-10 21:15 ` [PATCH v2 11/18] lib/stackdepot: rename init_stack_pool andrey.konovalov
2023-02-10 21:16 ` [PATCH v2 12/18] lib/stacktrace: drop impossible WARN_ON for depot_init_pool andrey.konovalov
2023-02-13 11:02   ` Alexander Potapenko
2023-02-10 21:16 ` [PATCH v2 13/18] lib/stackdepot: annotate depot_init_pool and depot_alloc_stack andrey.konovalov
2023-02-13 11:03   ` Alexander Potapenko
2023-02-10 21:16 ` [PATCH v2 14/18] lib/stackdepot: rename next_pool_inited to next_pool_required andrey.konovalov
2023-02-13 11:26   ` Alexander Potapenko
2023-02-10 21:16 ` [PATCH v2 15/18] lib/stacktrace, kasan, kmsan: rework extra_bits interface andrey.konovalov
2023-02-13 11:40   ` Alexander Potapenko
2023-02-10 21:16 ` [PATCH v2 16/18] lib/stackdepot: annotate racy pool_index accesses andrey.konovalov
2023-02-13 11:52   ` Alexander Potapenko
2023-02-10 21:16 ` [PATCH v2 17/18] lib/stackdepot: various comments clean-ups andrey.konovalov
2023-02-13 13:26   ` Alexander Potapenko
2023-02-17  9:46     ` Andrey Konovalov
2023-02-10 21:16 ` [PATCH v2 18/18] lib/stackdepot: move documentation comments to stackdepot.h andrey.konovalov
2023-02-13 13:27   ` Alexander Potapenko
2023-02-17  9:50     ` Andrey Konovalov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).