On Fri, Feb 10, 2023 at 10:18 PM <andrey.konovalov@xxxxxxxxx> wrote: > > From: Andrey Konovalov <andreyknvl@xxxxxxxxxx> > > Clean up comments in include/linux/stackdepot.h and lib/stackdepot.c: > > 1. Rework the initialization comment in stackdepot.h. > 2. Rework the header comment in stackdepot.c. > 3. Various clean-ups for other comments. > > Also adjust whitespaces for find_stack and depot_alloc_stack call sites. > > No functional changes. > > Signed-off-by: Andrey Konovalov <andreyknvl@xxxxxxxxxx> Reviewed-by: Alexander Potapenko <glider@xxxxxxxxxx> > - * Instead, stack depot maintains a hashtable of unique stacktraces. Since alloc > - * and free stacks repeat a lot, we save about 100x space. > - * Stacks are never removed from depot, so we store them contiguously one after > - * another in a contiguous memory allocation. > + * For example, KASAN needs to save allocation and free stack traces for each s/free/deallocation, maybe? (Here and below) > + * object. Storing two stack traces per object requires a lot of memory (e.g. > + * SLUB_DEBUG needs 256 bytes per object for that). Since allocation and free > + * stack traces often repeat, using stack depot allows to save about 100x space.