Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge tag 'xtensa-20230327' of https://github.com/jcmvbkbc/linux-xtensa

Pull xtensa fixes from Max Filippov:

- fix KASAN report in show_stack

- drop linux-xtensa mailing list from the MAINTAINERS file

* tag 'xtensa-20230327' of https://github.com/jcmvbkbc/linux-xtensa:
MAINTAINERS: xtensa: drop linux-xtensa@linux-xtensa.org mailing list
xtensa: fix KASAN report for show_stack

+12 -6
-2
MAINTAINERS
··· 20645 20645 TENSILICA XTENSA PORT (xtensa) 20646 20646 M: Chris Zankel <chris@zankel.net> 20647 20647 M: Max Filippov <jcmvbkbc@gmail.com> 20648 - L: linux-xtensa@linux-xtensa.org 20649 20648 S: Maintained 20650 20649 T: git https://github.com/jcmvbkbc/linux-xtensa.git 20651 20650 F: arch/xtensa/ ··· 23037 23038 23038 23039 XTENSA XTFPGA PLATFORM SUPPORT 23039 23040 M: Max Filippov <jcmvbkbc@gmail.com> 23040 - L: linux-xtensa@linux-xtensa.org 23041 23041 S: Maintained 23042 23042 F: drivers/spi/spi-xtensa-xtfpga.c 23043 23043 F: sound/soc/xtensa/xtfpga-i2s.c
+12 -4
arch/xtensa/kernel/traps.c
··· 539 539 540 540 void show_stack(struct task_struct *task, unsigned long *sp, const char *loglvl) 541 541 { 542 - size_t len; 542 + size_t len, off = 0; 543 543 544 544 if (!sp) 545 545 sp = stack_pointer(task); ··· 548 548 kstack_depth_to_print * STACK_DUMP_ENTRY_SIZE); 549 549 550 550 printk("%sStack:\n", loglvl); 551 - print_hex_dump(loglvl, " ", DUMP_PREFIX_NONE, 552 - STACK_DUMP_LINE_SIZE, STACK_DUMP_ENTRY_SIZE, 553 - sp, len, false); 551 + while (off < len) { 552 + u8 line[STACK_DUMP_LINE_SIZE]; 553 + size_t line_len = len - off > STACK_DUMP_LINE_SIZE ? 554 + STACK_DUMP_LINE_SIZE : len - off; 555 + 556 + __memcpy(line, (u8 *)sp + off, line_len); 557 + print_hex_dump(loglvl, " ", DUMP_PREFIX_NONE, 558 + STACK_DUMP_LINE_SIZE, STACK_DUMP_ENTRY_SIZE, 559 + line, line_len, false); 560 + off += STACK_DUMP_LINE_SIZE; 561 + } 554 562 show_trace(task, sp, loglvl); 555 563 } 556 564