Hi, Kazu Thanks for your review. Sorry, I forgot to send to the mailing list. So send it again. On 12/13/23 12:58, HAGIO KAZUHITO(萩尾 一仁) wrote: > On 2023/11/08 10:39, Ming Wang wrote: >> Changes between v1 and v2: >> - Simplified the LoongArch64 gdb's backport patch and appended it to the gdb-10.2.patch. >> - Add building the loongarch crash binary on an X86 64 host support. >> - Fix offset_table format issues. >> - Move private definitions code to loongarch64.c. > The following compilation warnings are observed with the patch set, > could you fix them? > > # make target=LOONGARCH64 > ... > cc -c -g -DLOONGARCH64 -DGDB_10_2 loongarch64.c -Wall -O2 -Wstrict-prototypes -Wmissing-prototypes -fstack-protector -Wformat-security > loongarch64.c: In function 'loongarch64_analyze_function': > loongarch64.c:557:11: warning: unused variable 'reg' [-Wunused-variable] > ulong i, reg; > ^~~ > loongarch64.c: In function 'loongarch64_dump_exception_stack': > loongarch64.c:683:2: warning: 'regs' is used uninitialized in this function [-Wuninitialized] > value_to_symstr(regs->csr_epc, buf, 16); > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > loongarch64.c: In function 'loongarch64_get_stack_frame': > loongarch64.c:813:18: warning: array subscript 32 is above array bounds of 'long unsigned int[32]' [-Warray-bounds] > epc = regs->regs[LOONGARCH64_EF_CSR_EPC]; > ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ > loongarch64.c: In function 'loongarch64_back_trace_cmd': > loongarch64.c:517:28: warning: 'regs' may be used uninitialized in this function [-Wmaybe-uninitialized] > previous.sp = regs->regs[LOONGARCH64_EF_SP]; > ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ > loongarch64.c: In function 'loongarch64_display_regs_from_elf_notes': > loongarch64.c:1294:51: warning: array subscript 32 is above array bounds of 'long unsigned int[32]' [-Warray-bounds] > if (!regs->regs[LOONGARCH64_EF_SP] && !regs->regs[LOONGARCH64_EF_CSR_EPC]) { > ~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~ > loongarch64.c:1299:2: warning: array subscript 36 is above array bounds of 'long unsigned int[32]' [-Warray-bounds] > fprintf(ofp, > ^~~~~~~~~~~~ > " R0: %016lx R1: %016lx R2: %016lx\n" > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > " R3: %016lx R4: %016lx R5: %016lx\n" > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > " R6: %016lx R7: %016lx R8: %016lx\n" > ... > > regs->regs[LOONGARCH64_EF_CSR_ECFG], > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > regs->regs[LOONGARCH64_EF_CSR_ESTAT], > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > regs->regs[LOONGARCH64_EF_CSR_EUEN]); > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > loongarch64.c:1299:2: warning: array subscript 38 is above array bounds of 'long unsigned int[32]' [-Warray-bounds] > loongarch64.c:1299:2: warning: array subscript 37 is above array bounds of 'long unsigned int[32]' [-Warray-bounds] > loongarch64.c:1299:2: warning: array subscript 35 is above array bounds of 'long unsigned int[32]' [-Warray-bounds] > loongarch64.c:1299:2: warning: array subscript 34 is above array bounds of 'long unsigned int[32]' [-Warray-bounds] > loongarch64.c:1299:2: warning: array subscript 33 is above array bounds of 'long unsigned int[32]' [-Warray-bounds] > loongarch64.c:1299:2: warning: array subscript 32 is above array bounds of 'long unsigned int[32]' [-Warray-bounds] > > otherwise, looks fine to me. Sorry, I will fix compilation warnings in V3. Thanks, Ming >> >> This patch set are for Crash-utility tool, it make crash tool support on >> loongarch64 architecture and the common commands(bt, p, rd, mod, log, set, >> dis, and so on). >> >> The patch sets were tested on a loongArch64 Loongson-3C5000 processor. Can >> successfully enter the crash command line and support for common command. >> >> ... >> KERNEL: vmlinux >> DUMPFILE: /proc/kcore >> CPUS: 16 >> DATE: Thu Jul 27 19:51:21 CST 2023 >> UPTIME: 06:35:11 >> LOAD AVERAGE: 0.15, 0.03, 0.01 >> TASKS: 257 >> NODENAME: localhost.localdomain >> RELEASE: 5.10.0-60.102.0.128.oe2203.loongarch64 >> VERSION: #1 SMP Fri Jul 14 04:17:09 UTC 2023 >> MACHINE: loongarch64 (2200 Mhz) >> MEMORY: 64 GB >> PID: 2964 >> COMMAND: "crash" >> TASK: 9000000098805500 [THREAD_INFO: 9000000094d48000] >> CPU: 6 >> STATE: TASK_RUNNING (ACTIVE) >> crash> >> crash> dis -l start_kernel >> /linux-loongarch64/init/main.c: 883 >> 0x9000000001030818 <start_kernel>: 0x0141ee40 >> /linux-loongarch64/init/main.c: 879 >> 0x900000000103081c <start_kernel+4>: 0x90000000 >> /linux-loongarch64/init/main.c: 883 >> 0x9000000001030820 <start_kernel+8>: addu16i.d $zero, $t8, 8179(0x1ff3) >> /linux-loongarch64/init/main.c: 879 >> ... >> >> About the LoongArch64 Architecture: >> https://www.kernel.org/doc/html/latest/loongarch/index.html >> >> >> Thanks and regards, >> Ming >> -- Crash-utility mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxxxxxx https://${domain_name}/admin/lists/devel.lists.crash-utility.osci.io/ Contribution Guidelines: https://github.com/crash-utility/crash/wiki