lib/stackdepot: simplify __stack_depot_save

The retval local variable in __stack_depot_save has the union type
handle_parts, but the function never uses anything but the union's handle
field.

Define retval simply as depot_stack_handle_t to simplify the code.

Link: https://lkml.kernel.org/r/3b0763c8057a1cf2f200ff250a5f9580ee36a28c.1700502145.git.andreyknvl@google.com
Signed-off-by: Andrey Konovalov <andreyknvl@google.com>
Reviewed-by: Alexander Potapenko <glider@google.com>
Cc: Dmitry Vyukov <dvyukov@google.com>
Cc: Evgenii Stepanov <eugenis@google.com>
Cc: Marco Elver <elver@google.com>
Cc: Oscar Salvador <osalvador@suse.de>
Cc: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
Andrey Konovalov 2023-11-20 18:47:01 +01:00 committed by Andrew Morton
parent 0c5d44a814
commit 603c000c11

View file

@ -366,7 +366,7 @@ depot_stack_handle_t __stack_depot_save(unsigned long *entries,
gfp_t alloc_flags, bool can_alloc) gfp_t alloc_flags, bool can_alloc)
{ {
struct stack_record *found = NULL, **bucket; struct stack_record *found = NULL, **bucket;
union handle_parts retval = { .handle = 0 }; depot_stack_handle_t handle = 0;
struct page *page = NULL; struct page *page = NULL;
void *prealloc = NULL; void *prealloc = NULL;
unsigned long flags; unsigned long flags;
@ -383,7 +383,7 @@ depot_stack_handle_t __stack_depot_save(unsigned long *entries,
nr_entries = filter_irq_stacks(entries, nr_entries); nr_entries = filter_irq_stacks(entries, nr_entries);
if (unlikely(nr_entries == 0) || stack_depot_disabled) if (unlikely(nr_entries == 0) || stack_depot_disabled)
goto fast_exit; return 0;
hash = hash_stack(entries, nr_entries); hash = hash_stack(entries, nr_entries);
bucket = &stack_table[hash & stack_hash_mask]; bucket = &stack_table[hash & stack_hash_mask];
@ -449,9 +449,8 @@ depot_stack_handle_t __stack_depot_save(unsigned long *entries,
free_pages((unsigned long)prealloc, DEPOT_POOL_ORDER); free_pages((unsigned long)prealloc, DEPOT_POOL_ORDER);
} }
if (found) if (found)
retval.handle = found->handle.handle; handle = found->handle.handle;
fast_exit: return handle;
return retval.handle;
} }
EXPORT_SYMBOL_GPL(__stack_depot_save); EXPORT_SYMBOL_GPL(__stack_depot_save);