[ACTIVITY] 26 Feb - 02 March
* Off on Friday afternoon. # Progress # * Fix non-gdbserver issue and GDB buildbot issue. Intel people committed a patch breaks every non-x86 gdbserver. Test with GDBserver is slowed down from 20~40 minutes to 6~12 hours. The fix is pushed in, requested upstream GDB buildbot maintainer to get rid of pending builds until the fix. # Plan # * Review Alan H.'s patches. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 19 - 23 Feb
* Off on Monday [1/5] # Progress # * GDB is confused by the line table generated by GCC with -gcolumn-info PR 22531. [2/5] Preparatory patches v2 are posted. * Merge my patches on removing MAX_REGISTER_SIZE. Done. [2/5] # Plan # * PR 22531, * Upstream patches review. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 12 - 16 Feb
# Progress # * GDB is confused by the line table generated by GCC with -gcolumn-info PR 22531. [2/5] Tested one patch again, committed. Keep going on the rest of them. * Fix one GDB issue with OpenOCD, which is a long standing issue. [2/5] Commit patch to both GDB master and 8.1 branch. Done. * Misc, patches review, meeting. [1/5] # Plan # * One day off on Monday, * PR 22531, * Resume my pending patches on removing MAX_REGISTER_SIZE. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 05 - 09 Feb
# Progress # * GDB is confused by the line table generated by GCC with -gcolumn-info PR 22531. [2/5] Override operator new/delete, patch is OK'ed but Tom still believes classes must be is_trivially_destructible. * Resume my pending patches on removing MAX_REGISTER_SIZE. [2/5] Patches v2 are updated and posted. * Fix one GDB issue with OpenOCD, which is a long standing issue. [1/5] Patch is tested, but not committed yet. # Plan # * PR 22531, * Resume my pending patches on removing MAX_REGISTER_SIZE. * More patches review, -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 29/01 -- 02/02
# Progress # * gfortran 7.2 vs 8.0 debug information difference. [2/5] Open GCC bug to get more attention, PR debug/84131. It is a GCC 8 regression. Jakub fixed it two hours after I opened the bug. Now, there is no gdb.fortran test fails with truk gcc. * GDB is confused by the line table generated by GCC with -gcolumn-info PR 22531. [2/5] Patches are done, to be posted for review. Investigate how to override new/delete operator in C++. * Resume my pending patches on removing MAX_REGISTER_SIZE. [1/5] Update patch series v2 per reviewers' comments. # Plan # * GDB 8.1 is released! Bump up GDB version in Linaro toolchain. * PR 22531, * Resume my pending patches on removing MAX_REGISTER_SIZE. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 22 - 26 Jan
# Progress # * GDB is confused by the line table generated by GCC with -gcolumn-info PR 22531. [2/5] My preparatory patches are reviewed, mostly on C++, get encouraged to use more fancy C++ features. * gfortran 7.2 vs 8.0 debug information difference. [2/5] Many gdb.fortran test fails with gfortran 8 but gfotran 7.2 is OK. I 'git bisect' gcc and find the commit causing the debug info change, it is like a bug to me, but my compiler/fortran knowledge is too few to claim it is a 7.2 -> 8.0 regression. Posted my analysis to gcc@ and fortran@ mail list. * TCWG-1040, SVE patches review. [1/5] Review Alan's patches. # Plan # * PR 22531, upstream preparatory patches, * Write patch series v2 for TCWG-1292. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 15 - 19 Jan
# Progress # * GDB is confused by the line table generated by GCC with -gcolumn-info PR 22531. [2/5] Chat with other two people who are changing the same file, and they are OK to get my changes first. Commit one obvious patch, and testing one patch series for refactor. * TCWG-181, GDB compile feature. [2/5] Many new test failures in gdb.compile, because it is not supported on arm and aarch64, but we have no way to disable them. Commit two fixes to get test better, but still many fails on arm-linux. I think I still need a patch to disable the test form arm-linux. * TCWG-1040, SVE patches review. [1/5] Review Alan's patches. # Plan # * PR 22531, upstream preparatory patches, * Answer questions to my pending patch series, TCWG-1292. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 08 - - 12 Jan 2018
# Progress # * GDB 8.1 release. 8.1 RC was created. 8.1 will be released soon, I think. * GDB is confused by the line table generated by GCC with -gcolumn-info PR 22531. [3/5] Get a working patch, but need to upstream my refactoring first. Other two people from upstream are also changing the same file, need to cooperate. * Upstream patches review, [2/5] ** Review changes to dwarf2read.c, ** Review one ARMv8 OpenOCD patch, # Plan # * PR 22531, * Resume my pending patches on removing MAX_REGISTER_SIZE. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 02 - - 05 Jan 2018
* New year holiday # Progress # * GDB 8.1 release. 8.1 branch is created. Fix GDB and GDBserver build failure in release mode. Patches are posted. Looking at several test fails caused by new GCC emitting multiple line entries for the same line but with different columns, like, i = 1; j = 2; GDB can't step over the whole source line, and program stops at the middle of the source line. # Plan # * GDB 8.1 release. * Resume my pending patches on removing MAX_REGISTER_SIZE. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 11th -- 15th Dec
# Progress # * GDB 8.1 release. [2/10] Triage regressions on aarch64 and arm. * PR 21698. [3/10] During the patch review, I doubt the patch fixes an invalid python use in gdb. The GDB doc is quite unclear on how that python api should be used. Ask the python api owner to clarify. * Misc, [5/10] Two days travel to Manchester. # Plan # * GDB 8.1 release. Fix regressions. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 4th -- 8th Dec
# Progress # * TCWG-1125, ARMv8 tagged address support in GDB. Finish v3, and committed. Done. [5/10] * TCWG-1040, Update my patches to remove the last use of MAX_REGISTER_SIZE. No response, people are busy on release. * GDB 8.1 release. [2/10] PR gdb/21698. It is a regression. Fixed. * Misc, [3/10] # Plan # * GDB 8.1 release, testing for ARM and AArch64. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 27th Nov -- 1st Dec
# Progress # * TCWG-1040, [6/10] Update my patches to remove the last use of MAX_REGISTER_SIZE. Post the whole patch series as an RFC. There are 15 patches, but I rewrote them in seven times. This version is quite satisfying. Targeting to GDB 8.2. One patch can't be merged until 8.1 is branched. * TCWG-1125, ARMv8 tagged address support in GDB. Writing v3. [2/10] * Misc, [2/10] # Plan # * TCWG-1125, * GDB 8.1 release. Testing for ARM and AArch64. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 20-24 Nov
# Progress # * TCWG-1040, [4/10] Update my patches to remove the last use of MAX_REGISTER_SIZE. Commit my 1/6 patch series. Prepare 2/6 patch series. Need to be sync'ed with GDB 8.1 release. * TCWG-1159, [4/10] GDB flexible target description conversion. Commit patch for tic6x, and ready to post patches for nios2. * Run GDB testsuite with CLANG. [1/10] Commit my patches, but leave some controversial patches in my tree. Now, I get some reasonable GDB test result with clang. * Upstream patches review. [1/10] Approved four Alan's patches. # Plan # * ARMv8 tagged pointer support in GDB. * Update my patches to remove the last use of MAX_REGISTER_SIZE. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] Nov 13 -- Nov 17
# Progress # * TCWG-1040, [4/10] Update my patches to remove the last use of MAX_REGISTER_SIZE. Get everything in shape. Post my 1/6 patch series. * TCWG-1159, [4/10] GDB flexible target description conversion. Post patch for tic6x, and write the patch for nios2. * ILP32 GDB. [1/10] Chat with Maxim, triage some test failures. * Open GCC PR 83010. AArch64 GCC doesn't generate DW_AT_location for TLS variable. It causes some GDB test failures. CLANG+GOLD can correctly generate DW_AT_location. * Run GDB testsuite with CLANG. [1/10] Post three patches to GDB testsuite to compile test cases with CLANG. # Plan # * TCWG-1125, ARMv8 tagged address support in GDB. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
Re: ILP32 toolchain status update
On 8 November 2017 at 16:56, Pinski, Andrew <andrew.pin...@cavium.com> wrote: > What env are you using? Are the glibc versions on the same between ILP32 and > LP64? Because when that was true I did not have any issues with libthread_db. > I didn't run gdb tests in ILP32 env, and I don't have such env. I got gdb.sum from Steve on 18 Oct. You are on the cc as well. All my analysis is based on that gdb.sum. > Anyways I did not see some of those failures listed below when using the > correct setup. OK, can you send me a gdb.sum? -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
Re: ILP32 toolchain status update
y.exp: NO: display a_static FAIL: gdb.base/solib-display.exp: NO: continue FAIL: gdb.base/solib-display.exp: IN: display (int) a_global FAIL: gdb.base/solib-display.exp: IN: display (int) b_global FAIL: gdb.base/solib-display.exp: IN: display (int) c_global FAIL: gdb.base/solib-display.exp: IN: after rerun FAIL: gdb.base/solib-display.exp: IN: after rerun (2) FAIL: gdb.base/solib-display.exp: IN: display main_global FAIL: gdb.base/solib-display.exp: IN: display a_local FAIL: gdb.base/solib-display.exp: IN: display a_static FAIL: gdb.base/solib-display.exp: IN: continue FAIL: gdb.base/solib-display.exp: SEP: display (int) a_global FAIL: gdb.base/solib-display.exp: SEP: display (int) b_global FAIL: gdb.base/solib-display.exp: SEP: display (int) c_global FAIL: gdb.base/solib-display.exp: SEP: after rerun FAIL: gdb.base/solib-display.exp: SEP: after rerun (2) FAIL: gdb.base/solib-display.exp: SEP: display main_global FAIL: gdb.base/solib-display.exp: SEP: display a_local FAIL: gdb.base/solib-display.exp: SEP: display a_static FAIL: gdb.base/solib-display.exp: SEP: continue FAIL: gdb.base/solib-symbol.exp: foo in libmd FAIL: gdb.base/solib-symbol.exp: foo2 in mdlib FAIL: gdb.base/solib-weak.exp: setting breakpoint at bar FAIL: gdb.base/solib-weak.exp: run to breakpoint - lib1 nodebug, lib2 nodebug, lib1 first (the program exited) FAIL: gdb.base/solib-weak.exp: setting breakpoint at bar FAIL: gdb.base/solib-weak.exp: run to breakpoint - lib1 nodebug, lib2 nodebug, lib2 first (the program exited) FAIL: gdb.base/solib-weak.exp: setting breakpoint at bar FAIL: gdb.base/solib-weak.exp: run to breakpoint - lib1 nodebug, lib2 debug, lib1 first (the program exited) FAIL: gdb.base/solib-weak.exp: setting breakpoint at bar FAIL: gdb.base/solib-weak.exp: run to breakpoint - lib1 nodebug, lib2 debug, lib2 first (the program exited) FAIL: gdb.base/solib-weak.exp: setting breakpoint at bar FAIL: gdb.base/solib-weak.exp: run to breakpoint - lib1 debug, lib2 nodebug, lib1 first (the program exited) FAIL: gdb.base/solib-weak.exp: setting breakpoint at bar FAIL: gdb.base/solib-weak.exp: run to breakpoint - lib1 debug, lib2 nodebug, lib2 first (the program exited) FAIL: gdb.base/solib-weak.exp: setting breakpoint at bar FAIL: gdb.base/solib-weak.exp: run to breakpoint - lib1 debug, lib2 debug, lib1 first (the program exited) FAIL: gdb.base/solib-weak.exp: setting breakpoint at bar FAIL: gdb.base/solib-weak.exp: run to breakpoint - lib1 debug, lib2 debug, lib2 first (the program exited) >>6. [GDB] GDB resolves ifunc functions, > The change to aarch64_gdbarch_init fixes that IIRC. > FAIL: gdb.base/gnu-ifunc.exp: p gnu_ifunc (3) FAIL: gdb.base/gnu-ifunc.exp: resolver received HWCAP FAIL: gdb.base/gnu-ifunc.exp: continue to break-at-nextcall FAIL: gdb.base/gnu-ifunc.exp: nextcall gnu_ifunc skipped FAIL: gdb.base/gnu-ifunc.exp: p gnu_ifunc executing FAIL: gdb.base/gnu-ifunc.exp: info sym gnu_ifunc executing FAIL: gdb.base/gnu-ifunc.exp: info sym > >>7. [GDB] Gdbserver support for ILP32. > The change to aarch64_linux_read_description fixes that. > That is not enough, GDBserver (LP64) needs to fix up siginfo for ILP32 program, like what GDB does. GDBserver uses libthread_db too. There is also tracepoint and fast tracepoint support in GDBserver. I don't expect them supported in ILP32. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] Oct 27 -- Nov 03
# Progress # * TCWG-1040, [6/10] Update my patches to remove the last use of MAX_REGISTER_SIZE. Commit clean up and refactor patches. Find more clean up patches in my tree. Keep upstreaming them. The design and implementation of removing MAX_REGISTER_SIZE becomes more and more clear. * TCWG-1125, [2/10] ARMv8 tagged address support in GDB. v2 patches were posted. No comments yet. * aarch64: PR 19806: watchpoints: false negatives + PR 20207 contiguous ones. Patch review. [1/10] * Think about the TODOs for GDB ILP32 support, write them down, and send it to Maxim. [1/10] # Plan # * TCWG-1040, TCWG-1125. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
Re: aarch64 toolchain support NEON and vfp features
On 2 November 2017 at 09:38, Joy Deng <joy.d...@nxp.com> wrote: > Hi, Qi > > Thanks a lot for your quick reply. > > As you said, in ARMv8, neon is deployed as asimd in cpuinfo, so we can > consider tool-chain will not affect the NEON function. > But, when build source code by enable neon, I can not find "-mfpu=neon" in > Makefile CFLAGS defaultly on ARMv8, while I can find it when build on ARMv7. ARMv8 is completely different from ARMv7, in many aspects. In GCC and Linux kernel, aarch64 (arm64) is different backend/port from armv7. Some options are not portable from v7 to v8. > Does it affect neon function enable? As I known, if we want enable neon, we > should build with "-mfpu=neon" flags. > In aarch64 (64-bit state in armv8), asimd is mandatory by the architecture, so aarch64 compiler can generate asimd instructions without any options. armv7 is different, because neon is optional, so you need an option to enable it. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
Re: aarch64 toolchain support NEON and vfp features
On 30 October 2017 at 07:52, Joy Deng <joy.d...@nxp.com> wrote: > Hi , > > I am a SW engineer that use Linaro-toolchain to build images, > > Recently, I encounter some issue about enable NEON features on ARMv8 > processor platform. > I cat cpuinfo, can not find neon and vfp feature enable in list, the image > was build with aarch-64 toolchian; In ARMv8, it should be "asimd". > While, the image built by armv7l toolchain can list "neon and vfp" in cpuinfo. > > I want to verify from your side, > > 1. if the toolchain of aarch64 version already enable" neon and vfp " in > default, Because I do not find some build items that related with "neon", > 2. If not supported defaultly, can you give some suggestion to enable it. > It has nothing to do with toolchain. The cpuinfo is retrieved from Linux kernel, and kernel returns something different for aarch64 process and aarch32 process, to order to be backward compatible. That is why your apps get different cpuinfo on the same kernel. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] Oct 23 - 27
* TCWG-1040, [4/10] Update my patches to remove the last use of MAX_REGISTER_SIZE. Post the clean up and refactor patches. * TCWG-1125, [4/10] ARMv8 tagged address support in GDB. v2 patches are posted. Take care of breakpoint and watchpoint on tagged address carefully. * ILP32 GDB branch. [1/10] Branch is created! Done. * Misc, meeting, [1/10] # Plan # * Update my patches to remove the last use of MAX_REGISTER_SIZE. * GDB flexible target description conversion. Upstream patches. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] Oct. 16 -- Oct 20
# Progress # * TCWG-1040, [4/10] Update my patches to remove the last use of MAX_REGISTER_SIZE. Before I send them upstream, I find some bits that I can improve, but finally, many things are changed. Need to get them in shape, and think about the design again. * TCWG-1125, [4/10] ARMv8 tagged address support in GDB. GDB/GDBserver needs to remove the top one byte of virtual address before pass it to kernel. Patch v1 was reviewed, and GDB internal caching needs updated for tagged address, because tagged address and non-tagged address should be mapped to the same cache entry in GDB. * GDB flexible target description conversion [1/10] Finished the conversion for tic6x and nios2. To be posted. * ILP32 GDB branch. [1/10] Got Steve Ellcey's patches, one bfd patch and one gdb patch. No GDBserver patches. Will create branch with them. # Plan # * ILP32 GDB branch. * ARMv8 tagged address support in GDB. * Update my patches to remove the last use of MAX_REGISTER_SIZE. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 02-06 Oct 2017
# Progress # * GDB SVE patches review. [4/10] Finished my patches to remove the last use of MAX_REGISTER_SIZE. Send them to Alan to review. * GDB flexible target description follow-up. [4/10] Committed some patches to improve GDB build, so that we can easily share code of target description between GDB and GDBserver. Done. * File Linaro Connect expense, and misc. [2/10] # Plan # * On holiday, Mon - Thu. * Either GDB target description work,or ILP32 GDB branch. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] Sep 04th -- Sep 15th
Two weeks * GNU Cauldron and vacation, [12/20] # Progress # * TCWG-1159, New design of GDB/GDBserver target description. [4/20] Commit my patches, and fix some build failures. Done. * Cauldron presentation and Linaro Connect SFO17 presentation. [3/20] Done. * Misc, catch up email, [1/20] # Plan # * Prepare a prototype about regcache, and compare with Alan's implementation. * Continue my target description work, for other non-actively-maintained target descriptions. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] Aug 21st -- Sep 01st
Status of two weeks. * Bank holiday on Monday and I am off on Tue and Wed. [6/20] # Progress # * TCWG-1159, New design of GDB/GDBserver target description. [4/20] Post my target description v4 patches. They should be ready to check in, however, I am sidetracked by GNU Cauldron presentation. * Cauldron presentation. [5/20] Write the presentation for my target description work above. Ongoing. latex+beamer+tikz is quite powerful to make presentation. * My Linaro Connect SFO17 presentation is accepted. Need to write it in google doc later. * Review Alan H.'s patches. [2/20] * Misc [3/20] # Plan # * Finish my Cauldron presentation, * Commit my target description v4 patches, if time allows, * Off on Wed, and fly to Prague. Back to office on 14th Sep. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 14 - 18 Aug
* Mon - Wed off [6/10] # Progress # * TCWG-1159,New design of GDB/GDBserver target description. [3/10] Commit another three patches, about GDBserver unit tests. Rebase patches, and prepare series v4. * Misc, [1/10] # Plan # * TCWG-1162, triage the aarch64-elf GDB test result with QEMU. * TCWG-1159, rebase my GDB target description patches, and post v4. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 07/08 - 11/08
# Progress # * TCWG-1159,New design of GDB/GDBserver target description. [3/10] Split the patch series, and post unrelated stuff first. Patches will be easily reviewed in this way. * TCWG-561, Handle unavailable memory during frame unwinding. [2/10] Committed the first 4 patches, and leave the rest 4 patches for review. * TCWG-1162, Test GDB+OpenOCD with AArch64 boards. [4/10] Resolved the newlib issue. Get my first newlib patch merged. Successfully run GDB testsuite with QEMU system mode. It should be similar to running with OpenOCD. * Upstream review. [1/10] ** Review some memory leaks fixes. ** One patch about armv8.3 pointer authentication. Next week: * On holiday, and back on Thu. * TCWG-1162, triage the aarch64-elf GDB test result with QEMU. * TCWG-1159, rebase my GDB target description patches, and post v4. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 31/07 - 04/08
# Progress # * TCWG-1159,New design of GDB/GDBserver target description. [3/10] Patches are still not reviewed. Keep going to change x86 target descriptions. Post two patches to clean up them first. * TCWG-561, Handle unavailable memory during frame unwinding. [3/10] Patches are posted. * PR 21818, GDB crashes with executable for armv5te. [1/10] Patch is tested, and to be posted. * Upstream review, [2/10] ** ADI patches review, advice on how to match the output in gdb tests, ** Some disassembly regression caused by my previous patches, ** Help people to triage their GDB issues because I don't have the env to reproduce them. * Misc, [1/10] # Plan # * TCWG-1162, Test GDB+OpenOCD with AArch64 boards. Post my newlib patches upstream, and continue to test with QEMU and OpenOCD respectively. * TCWG-1159, New design of GDB/GDBserver target description -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
Re: [ACTIVITY] 24 - 28 July
On 28 July 2017 at 18:21, Yao Qi <yao...@linaro.org> wrote: > > # Plan # > > * Mon and Tue off. My holiday plan is changed, due to some unexpected things. I am back to work. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 24 - 28 July
# Progress # * TCWG-1159,New design of GDB/GDBserver target description. [3/10] Looks people who can review my patches is on holiday, so I committed 7 patches and leave the rest 19 patches there. Need to think about how to make people more confident on these patches. * PR 21717, PR 21555, fixed. Pushed to master and 8.0 branch. [1/10] * TCWG-1162, Test GDB+OpenOCD with AArch64 boards. [3/10] I can run gdb regression tests with OpenOCD on HiKey. After I power cycle the board, the first several tests can run, but the following tests failed because the board goes to an odd state. Something wrong in OpenOCD side. Try GDB aarch64 bare-metal debugging with QEMU, and then find a bug in newlib which doesn't initialize FPU, so some FPU instruction will trigger und exception. * TCWG-561, Handle unavailable memory during frame unwinding. [2/10] Lear C++ move assignment and move constructor. Finish the code, and testing the patches. * Send my GDB target description talk abstract to Linaro SFO17. * Misc [1/10] # Plan # * Mon and Tue off. * TCWG-561, TCWG-1159. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 17 - 21 July
# Progress # * TCWG-1159,New design of GDB/GDBserver target description. [1/10] Commit one patch of v3. No review comments. Usually it means I don't review patches, so other people don't review my patches. * PR 21555. [3/10] Think it again, and fix it with a better approach. Patches are posted. * PR 21717. [2/10] Fix a bug on getting/setting FPSCR on VFPv2. I am surprised that we don't find it before. Testing patches. * TCWG-1162, Test GDB+OpenOCD with AArch64 boards. [1/10] Blocked by OpenOCD bugs. Chat with OpenOCD maintainer to make sure these bugs are opened in the right place. * TCWG-561, [3/10] I finish the patches, but not confident because I use copy-and-swap idiom for the first time. Need more time to bake it, write unit tests, etc. Maybe, still need to read "More effective C++" further. * TCWG-1162, Test GDB+OpenOCD with AArch64 boards. Blocked by OpenOCD bugs. Chat with OpenOCD maintainer to make sure these bugs are opened in the right place. Matthew (who contributed OpenOCD AArch64) pinged me on irc, but he lost connection immediately. Probably, he contact me for the OpenOCD bugs. * Think about presenting GDB target description work in Linaro SFO17, may add some SVE stuff if possible, to make it more attractive. # Plan # * TCWG-1159, * PR 21717, 21555, * TCWG-561, * Register the presentation for Linaro SFO17, -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 10 -14 July
# Progress # * TCWG-1159,New design of GDB/GDBserver target description. [2/10] v3 are posted, after fixing some regressions introduced by improper merge. No comments from upstream yet. * PR 21555. [2/10] Has already a fix, but I am not satisfied. Post an RFC for a discussion in general. My fix is to fix each GDB backend one by one, while my RFC is about fixing it in GDB core side. * TCWG-1162, Test GDB+OpenOCD with AArch64 boards. [4/10] OpenOCD doesn't support semi-hosting, so I pass --specs=nosys.specs to aarch64-none-elf gcc, but linker can't find a symbol from newlib. Looks nobody tests aarch64-none-elf gcc with --specs=nosys.specs before. Hack in newlib here and there, and get compiler/linker happy. I can download code to HiKey via OpenOCD, but "continue" becomes "single step". Open two OpenOCD bugs upstream. My work is blocked by OpenOCD bugs. * Upstream patches review. [2/10] ** Review sparc64 adi patch v3, ** Investigate and review the patch fixing GDB crashes on amd64-linux, ** Review Alan H.'s patch, and discuss on the design, ** Some conversation with Maciej on MIPS16 and microMIPS disassembler, because my disassembler rework breaks MIPS. # Plan # * PR 21555, * TCWG-1159 * TCWG-561, # Issue # * TCWG-1162 is blocked by OpenOCD bugs. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 26 - 30 June
# Progress # * TCWG-1159, New design of GDB/GDBserver target description. [4/10] People agree on the direction this patch series goes to! Still need to polish v3. Started to write v3 to address comments, split patches, and rebase patches, etc... My Cauldron talk "A flexible GDB target description for processor diversity " is registered. * TCWG-561, Handle unavailable memory during frame unwinding. [2/10] Decided how to do it, coding. * Investigate the usage of obstack in GNU toolchain. [1/10] We recently add a convenient class wrapper for obstack in GDB, and I think it is better to "upstream" it to inlcude/ so that GCC can use it as well. Did some archeology on C++ transition in GCC, find some difficulties. Still good to know some GCC maintainers' preference on C++. * Travel, [1/10] ** US EVUS enrollment, to update my US visa information. ** Figure out the Cauldron flight. * Misc, meeting, [2/10]. # Plan # * TCWG-1159, patch v3. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 19 -23 June
# Progress # * TCWG-1159, New design of GDB/GDBserver target description. [3/10] Update patches to address review comments. Commit three patches. Need to post V3. * TCWG-561, Handle unavailable memory during frame unwinding. [2/10] Think about the plan. * Upstream patches review. [3/10] ** Review IBM kernel-awareness patches. ** Review sparc64 adi patch. ** Review Alan's patch on removing MAX_REGISTER_SIZE. Evaluate other better but expensive approach. * Misc, [2/10] Write a STL container allocator which uses stack instead of heap. Underestimate the complexity of C++. Need to replace some std::vector with my vector with stack_allocator in GDB. It should be also useful to Alan. # Plan # * TCWG-1159, send v3. * TCWG-561, Handle unavailable memory during frame unwinding. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 12 - 16 June 2017
# Progress # * TCWG-1159, New design of GDB/GDBserver target description. [1/10] Finish writing the commit log and changelog. Patches are posted. * TCWG-1167, Test AArch32 GDB on AArch64 Linux kernel. [3/10] Such configuration shows one regression. It is whether condition checked failed UDF triggers Undefined Instruction Exception or not. GDB's assumption is NO, but Peter M. told me that it is implementation defined, so GDB has to handle both. * gdb/objdump disassembler unification. Done. [1/10] Commit the the left over patch. * Pick up Alan H.'s C++ template patch, and post it again. Learned a lot on C++ 11 default template parameter and SFINAE. Patch is committed. * Upstreams review. [3/10] ** Encourage people to build GDB with CLANG. Resist the objections from other people, and write the "policy" about using other compilers to build GDB. ** Review IBM's kernel-awareness v4 patches. * Misc, [2/10]. # Plan # Get chance to back to my interrupted works: * TCWG-333, Fix gdb.base/func-ptrs.exp fails in thumb mode. * TCWG-561, Handle unavailable memory during frame unwinding. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 05 - 09 June 2017
* One day off on Monday [2/10] # Progress # * GDB 8.0 is released! TCWG-1050. Done. * GDB target description changes. [5/10] It is needed for adding SVE in GDB. Change GDB target description, and start from x86-linux. The more I write the code, the more right I believe the change is. Patches are done, but still need to complete commit log, changelog, and polish the code. Write an abstract about it for GNU Cauldron. Spend some time thinking about a good title. * Upstreams review. [1/10] ** Review some Alan H.'s patches. ** Review the OpenRISC patches. * Misc, [2/10] ** Follow up the OpenOCD work. Create two epics for the following work. ** Meetings. # Plan # * Post my target descriptions changes upstreams. * Post some leftover patches about GDB and OBJDUMP disassembler unification. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 22 - 26 May 2017
# Progress # * GDB 8.0 release. TCWG-1050, [1/10] Blocked by one MingW build issue. Should be the last one. * gdb and objdump disassembler unification. [3/10] Patches are approved. Rebase them, re-test them, and push them in. Clean up some leftovers. * GDB target description changes. [5/10] Finish the design in GDBserver. Finish the prototype of both GDB and GDBserver. Re-org them to some extent. * GDB crossbuild w/ docker. [1/0] Inspired by QEMU build, take a look docker and think about how to use docker to build/test GDB for different targets. # Plan # * Holiday, and back to office on 6th June. * Post RFC v2 on GDB target description changes. * Upstream the patches of clean up to gdb and objdump disassembler unification. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 15 - 19 May 2017
# Progress # * TCWG-178, confirm that longjmp.exp fails disappear on glibc with --enable-systemtap. [1/10] * GDB 8.0 release. TCWG-1050, [3/10] ** Fix a regression that command "tty" is missing. ** Review Thomas's patch handling non-FPU tests. Suggested to merge it to 8.0 branch. * Post my patches on gdb and objdump disassembler unification. [1/10] All binutils patches are approved. I'll push them in if no comments gdb side. * GDB target description changes. [4/10] People like my RFC, but Pedro requested the design and plan in GDBserver, because he has concern that my patch seres put GDB into an intermediate state. It will last a long time if we can't provide the design in GDBserver. * Upstream patches review. [1/10] Review 10~ patches about dwarf pieces. * Take care of Linux kernel awareness upstreams. Sync with Omair, and ask to ping to IBM to update their patches. # Plan # * Continue the GDB target description change discussions. * Push my approved patches. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 08 - 12 May
# Progress # * GDB 8.0 release. TCWG-1050, [1/10] Nothing new. Make sure Linaro GCC 7 release can pick up GDB 8. * SVE GDB. TCWG-1040, [6/10] ** Finish sve gdb target description doc, and send it to Alan. The work needed in GDB side becomes more and more clear, however, it is still unclear in GDBserver side. ** Post my patches about unit test to value/register conversion gdbarch hooks. ** Post my RFCs to make GDB target descriptions more flexible. * Misc, [3/10] ** Learn C++ template. ** Some patches review upstream. # Plan # * Upstream my GDB disassembler patch, which unify the disassembler selection in both gdb and objdump. * Back to the work on handling function pointer assignment in thumb mode. TCWG-333. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 1-5 May
* Monday off. [2/10] # Progress # *GDB 8.0 release, TCWG-1050. [2/10] ** Intel btrace python api patches are pushed in, and all intel specific stuff are removed from the python apis before release, Phew! ** GDBserver arm-linux software single step. More issues are found, can't catch 8.0 release. ** 8.0 release candidate is created. * SVE, TCWG-1040, [5/10] ** All my regcache class-fy patches are committed. Unblock some Alan's patches. ** One patch review. ** Post preparatory patches for my value/register conversion unit test patches. ** Think about how to change GDB target descriptions for SVE, and write them down. Turns out these problems are not specific to SVE, they are already there but SVE make them worse that we should fix. Ongoing. * Upstream review, [1/10] ** Review one kernel-awareness patch. ** Review OpenRISC GDB patches. # Plan # * Finish the doc about GDB target description changes for SVE, and send it to Alan. * Upstream my patches about unit test to value/register conversion gdbarch hooks. * Upstream my GDB disassembler patch, which unify the disassembler selection in both gdb and objdump. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 24 - 28 April
# Progress # * TCWG-1050, GDB 8.0 release. [4/10] ** Fix the new fails about the size of wchar_t on aarch64, by setting it to 4 in default. Patch is pushed to master and 8.0 branch. ** Intel btrace python api patches are ready to commit. No idea why he doesn't push yet. * TCWG-1040, Review SVE patches. [4/10] ** Review some SVE GDB patches, and approved part of them. Leave the controversial part there. Some of them are blocked by my Class-fy regcache patches. ** Class-fy regcache. Patches are approved. Will push them in later. Then, I'll update my unit test to value/register conversion gdbarch hooks, and post them next week. ** GDB target description change, the preparation for adding more hardware features, like PAUTH and SVE, and their arbitrary combinations. GDB side changes are done, and take i386-linux as an example to demonstrate the the benefit of the changes. * Misc, [2/10] ** Rebase my GDB disassembler patch, which unify the disassembler selection in both gdb and objdump. ** Explain the GDB behavior to Linaro kernel guy who is working on single-step in kgdb. ** Read some paper on dynamic slicing, and think about how to do it on GDB for aarch64/arm. # Plan # * Holiday on Monday. * Review kernel-awareness patches, * Upstream my patches about unit test to value/register conversion gdbarch hooks. * Post my GDB target description change as an RFC, collect comments, and think about the changes in GDBserver side (which is harder). -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 17 - 21 April
* Two days off, Mon and Tue [4/10] # Progress # * TCWG-1050, GDB 8.0 release. [2/10] 8.0 branch is created. Intel btrace python api patches are almost OK push to master and 8.0 branch. Patches should be pushed in soon. * TCWG-1040, Review SVE patches. [3/10] Write unit test to value/register conversion gdbarch hooks. C++-fy regcache so that I can easily verify the result in unit test. Still some fails, need to investigate further. They are needed to prove SVE changes are correct. * Upstream patches review [1/10] ** arm software single step patch review. There is still an open issue that the author didn't realize, that is, GDB has to understand there may be different kind of breakpoints on the same address. * Propose deprecate arm fpa support in GDB. I need to post the proposal in gdb-annou...@sourceware.org this week, according to the deprecation process. # Plan # * Finish my unit test and post them for review (with regcache C++-fy patch). * Other issues on 8.0 release if any. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] April 03 -- April 07
~ Progress ~ * TCWG-1050, GDB 8.0 release. [4/10] Release branch is not created, but test result looks good. ** Fix PR 19942, patch v2 is OK. Need to fix some nits before check in. ** Intel btrace python interface discussion. Good to see that Intel people accept my suggested new interface, and finalize the details of the new interface. * TCWG-1040, Review SVE patches. [4/10] The overall goal is to remove MAX_REGISTER_SIZE. Reviewed some Alan's patches, and wrote two patches to remove MAX_REGISTER_SIZE in frame.c and regcache.c. * Misc, meeting, [2/10] ~ Plan ~ * More remote tests for GDB 8.0 release. * SVE patches review, and start to think about GDB target description changes for SVE. * Public holiday on Friday and next Monday. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 27-31 March 2017
~ Progress ~ * TCWG-1050, GDB 8.0 release. [7/10] ** Fix PR 19942, but looks my patch is completely wrong as I fully misunderstood the "reference count" in GDB. Writing the v2. ** Intel btrace python interface discussion, a marathon discussion about both the interface and implementation. Good thing is that we agree that we need to change the interface. This takes most of my time this week. * TCWG-1040, Review SVE patches. [2/10] Some discussions on avoid copying register contents to a local buffer again, which is from my review comments to Alan's patch and my suggested patch. Spend some time on understanding the zero initialization of union in C++. I'll update my suggested patch. * Update AArch32 GDB buildbot option, so we can get more reasonable test result. [1/10] ~ Plan ~ * More remote tests for GDB 8.0 release. * Fix PR 19942. * One day off on Thu. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 20th - 24th March
~ Progress ~ * TCWG-1050, GDB 8.0 release. [6/10] ** Pushed a fix to AArch64 process record bug on PRFM instruction. AArch64 native test looks good now. ** Start to look at ARM native test, triage the fails in watch-bitfields.exp. Test doesn't fail on old Linux kernel, likely a kernel bug. Further analysis is needed. ** Request reverting Intel btrace python interface before release, as they are too btrace-specific. ** Fixing a bug about thread_info refcount issue. Testing the patch. * Discussion on RTOS awareness in debugging. OpenOCD people want GDB aware more about different RTOSes. [1/10] * TCWG-1040, SVE patches review, [2/10] * Misc, [1/10] ~ Plan ~ * Take a look at native ARM testing, and cross testing. * Post my fix to thread_info refcount issue. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 13th Mar -- 17th Mar
~ Progress ~ * Three days off [6/10] * TCWG-1050, GDB 8.0 release. [2/10] Pushed in some patches fixing ARM reverse debugging bug. Investigating a GDB internal error. Review Python btrace stuff, still trying to make it more generic. * Misc, [2/10], catch up emails ~ Plan ~ * TCWG-1050. * Review IBM linux kernel awareness patches. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] Feb 28th -- March 03
~ Progress ~ * GDB 8.0 release, TCWG-1050, [5/10]. Release branch will be created on March 15th. Fixed some instruction decoding in reverse debugging. Tested. Added a unit test for arm process recording for some instructions. To be posted upstream. PR gdb/21165 is fixed. * SVE GDB patches review, TCWG-1035, [3/10] SVE patches review. One of Alan's patch is to remove some lines of code written 19 years ago, which was to fix a bug at that moment. A lot of archeology. Hopefully the author is still in RedHat, and get more information on the fix. Alan's patch is correct. * Upstream patches review. [2/10] ** Some python bindings on intel btrace. Make it more portable, hopefully these python apis can be used for CoreSight in the future. ~ Plan ~ * Linaro Connect. * March 13th -- 15th, holiday. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 13 - 17 Feb 2017
~ Progress ~ * AArch64 OpenOCD. TCWG-947 [4/10] AArch64 support is merged to mainline. Works with one Hikey I borrowed from Peter G. Still doesn't work with mine. * Upstream patch reviews. [2/10] ** Review Peter B.'s disassembly option patch. ** DWARF implicit_pointer big-endian patch. ** Python event before_prompt patch. * Off on Thur and Fri. [4/10] ~ Plan ~ * Go to London again on Tue for Schengen visa. * Back to GDB work, think about SVE GDB patches, 8.0 release, etc. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 6-10 February 2017
~ Progress ~ * AArch64 OpenOCD. TCWG-947, [2/10] After asking Peter G. about OpenOCD + Hikey, he sent me his working Hikey+Cable to me. * SVE GDB patches review. TCWG-1040, [4/10] Review some patches, and suggest Alan how to split the patch to easily make some progress. Think about the needed change to GDB target description. * Kernel awareness debugging patch review. [2/10] Manage to write a small test case so that we can somehow test the new feature in user space in gdb testsuite. Think about how does Linaro move on about this project. * Schengen visa application. [2/10] Visa application centre doesn't accept my documents because my documents copy are tow-side printed. Has to book another appointment and go to London again . ~ Plan ~ * TCWG-947, Try opencod with Peter G.'s board. * TCWG-1040, prototype of new GDB/GDBserver target description. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[Activity] 30 Jan - 3 Feb 2017
~ Progress ~ * AArch64 OpenOCD. [6/10] Solder and desolder the JTAG joint on HiKey. Tried different JTAG options, but still can't get OpenOCD working. * Patches review. [3/10] ** ILP32 GDB. Help cavium to reduce fails from 500 to 70. GDB patch is OK, but there are still some regressions on ilp32 vs. lp64 on aarch64. Steve is still investigating on them. ** SVE GDB. Remove MAX_REGISTER_SIZE. Look people tend to agree the way removing MAX_REGISTER_SIZE. Looking forward to Alan's patches :) ** Kernel awareness debugging. Reviewed the cover letter of IBM's patches. Want to share the common kernel debugging part between IBM and Linaro. * Schengen visa. [1/10] Fill in more in application form. Document preparation. ~ Plan ~ * Kernel awareness debugging. Continue reviewing IBM's patches, and figure out how to share the code. * Go to London for visa application on Friday. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] Jan 23 - Jan 27
# Progress # * TCWG-984, PR 20939, GDB aborts if there is an error in disassembly. Done. All patches are committed to mainline. [3/10] * Patch reviews, a lot, [5/10] ** Hold one of ILP32 BFD patch because it may affect aarch64 GDB, Reviewed ILP32 GDB patch, and convince them not to add new target descriptions for ILP32, to make our life easier in the future. Otherwise, we need two copies of target description for each new hardware feature, such as v8.3, SVE, etc. ** Try to hold one disassembler options patch, which affects ARM and GDB. Gave some comments on the interface design, but looks I am late. ** Finish the review on DW_OP_implicit_value. Met some grey area in DWARF spec. * Atomicity of concurrent modification on ptrace. [1/10] It is unclear weather debugging can modify memory for one thread while other threads are running. After the discussions with some kernel guy, PTRACE_POKETEXT is atomic, but GDB use it in a non-atomic way when writing 2-byte aligned 32-bit thumb-2 instruction. Suggested a workaround upstreams. * Misc, meeting [1/10] # Plan # * ILP32 patch review. * Carefully read IBM's kernel debugging patches. * Set up AArch64 bare debugging with GDB, OpenOCD, JTAG and HiKey. Soldering is needed. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] Jan 09 - Jan 13
~ Progress ~ * TCWG-984 Handle exception/error in disassembly, [4/10] Patches are posted and reviewed. Three patches to opcodes are approved and committed. V2 is done to address comments on C++ and unit tests. V2 are being tested. * Patches review, [4/10] ** Review some preparatory SVE patches from Alan. They are good to me, but I expect Joel or someone else to take a look as well. ** Linux kernel awareness debugging. Review the patch sent from linaro, but some one from IBM sends a similar patch series. These two patch sets look similar, but are different on some parts. * Conversation with Paul (openocd maintainer) on irc. [1/10] They really want me to look at some gdb+openocd issues. My Hikey will arrive soon, but they give me some explanations on why cortex-m board is better than cortex-a board in bare-metal, because of simplicity. I explained to them why Linaro focused on cortex-a devices so far. * Linaro Connect. [1/10] Register the connect, book flight and hotel. ~ Plan ~ * TCWG-984 and TCWG-333 * Carefully read Dave M's SVE user space VL control API. * Carefully read IBM's kernel debugging patches. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] Dec 12 - 16
~ Progress ~ * Fix foreign frame problem in C++ exception unwinding. PR 20939. [2/10] Being discussed. We agreed on the approach fixing the bug. Need a patch. Find other issues during the investigation, and fixed them. PR 20953, PR 20954, and PR 20955 are fixed. * GDB exception handling is broken on i686-w64-mingw32. PR 20977. [3/10] In short, we can't use longjmp in SJLJ exception handling. Need post an RFC. * Upstream patches review. [5/10] ** SVE GDB patches review. Carefully read the patches line by line for the first time. Find some issues on target descriptions, and post my comments upstreams. Hack GDBserver to get SVE on normal juno board. Need more time to think about how to move on. ** Review sparc target descriptions. ** 7.12.1 release discussion. ~ Plan ~ * PR 20939, PR 20977. * On Holiday from Wed. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] Dec 5 -- Dec 9
~ Progress ~ * TCWG-979, Use code cache in prologue analyzer. [3/10]. Done. Prologue analyser improvement patches are pushed in. Performance improvement is measured on both ARM and AArch64 with and without -fstack-protector. Wall time is reduced from 34s to 10s in one case! * TCWG-984, Handle exception/error in disassembly. [5/10] Need to fixed it before 7.12.1 release (Jan 2017). Find other issues during the investigation, and fixed them. PR 20953, PR 20954, PR 20955. Two opcodes patches are posted to binutils. Write a unit test for disassembly on memory error. Exposes some issues in opcodes. Whether upstream needs this unit test depends on the decision on how to fix foreign frame problem in disassembly. * TCWG-333, Fix gdb.base/func-ptrs.exp fails in thumb mode. No progress. * upstream patches review. [1/10] * Misc, meeting, [1/10] ~ Plan ~ * TCWG-984, Post the RFC and list three approaches fixing this problem. * TCWG-333 -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 07 Nov -- 11 Nov
# Progress # * TCWG-547. Change software_single_step interface to return a vector of address Patches are pushed in. Done. [1/10] * TCWG-923, Use regcache instead of frame in software_single_step. [3/10] Patches are finished. Tests are needed. * TCWG-333, Fix gdb.base/func-ptrs.exp fails in thumb mode. [4/10] Clean up val_print, remove one redundant parameter. Patches are committed. Deep diving in the gdb value objects. Much cleanup work should be done first. Ongoing. * More patches review, [2/10] ** C++ 11 patches, and learn C++ 11 in parallel, ** Review arm tracepoint patches. Insist that they (Ericsson) have to fix underlining bugs (intermittent fails) before getting patches in, ** Discuss on MIPS reconfigurable FP registers. Proposed two ways in public gdb mail list, MIPS people think the first one is a little better ** Hold Intel's fortran patch until a bug we found in gfortran is confirmed. # Plan # * TCWG-923, * Training from Tue to Friday. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 31 Oct -- 04 Nov
# Progress # * TCWG-547, Change software_single_step interface to return a vector of address. [3/10] Patches are reviewed. V2 are posted and committed. Follow-up patches are being tested. * TCWG-333, Fix gdb.base/func-ptrs.exp fails in thumb mode. [3/10] Clean up val_print, remove one redundant parameter. Patches are being tested. * Maintain upstream GDB, patches review, [2/10] * OpenOCD. [2/10] Various IRC chats with maintainer about ** multi-thread support in RTOS, and multi-thread debugging, ** Release 0.10.0 and aarch64 patches merging, ** Understand aarch64 OpenOCD reads DSPSR (32-bit), so don't have to update GDB target description now. * Short chat with Peter Griffin on thread ids in linux-kthread. # Plan # TCWG-547, TCWG-333. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
Re: [ACTIVITY] 31 Oct -- 04 Nov
On 4 November 2016 at 17:01, Yao Qi <yao...@linaro.org> wrote: > * Maintain upstream GDB, patches review, [2/10] Forgot this one. ** Get the GDB test coverage on x86_64 and aarch64. Line coverage is 60%+, better than my expectation. Some followup are needed later. http://people.linaro.org/~yao.qi/gdb/coverage/20161102/ -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 24 - 28 Oct
# Progress # * Fix GDBserver build on aarch64_be. [1/10] Done. Patch is pushed in to master and 7.12 branch. * TCWG-333, Fix gdb.base/func-ptrs.exp fails in thumb mode. [4/10] Get anther patch and fix all regressions. In the discussion with ppc64 and mips people on my approach. * TCWG-518, Range stepping in arm-linux. Done. [1/10] After pending for several months, patches are approved. Pushed them in! * Reproduce the GCC dwarf generation regression. [1/10] Reported to GCC and Jakub fixed it. * Sort out the license issue of new OCaml debugging support in gdb. Help to clarify a little bit. [1/10] * Discuss with OpenOCD people on supporting thread awareness for RTOS. [1/10] * Misc, meeting. [1/10] # Plan # * TCWG-333, TCWG-547 * Add new aarch64 target description for 64-bit xPSR. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 17 - 21 Oct
# Progress # * TCWG-333, Fix gdb.base/func-ptrs.exp fails in thumb mode. [4/10] Get review comments and suggestions. Tried to do what they suggested, but it doesn't work well due to some reasons. Preparing the the reply to address their comments. * TCWG-416, Improve GDB performance in remote debugging. [2/10] Patches for ARM and AArch64 are ready. Need to measure the performance improvement. * OpenOCD. [2/10] Chat with people working on AArch64 support on irc. Help him understanding GDB and GDB remote protocol. Patches are there, but need to figure out how to help to get these patches merged. * Misc, [2/10] Meeting, and various discussions. # Plan # * Continue all above. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 10 - 14 October 2016
# Progress # * TCWG-333, Fix gdb.base/func-ptrs.exp fails in thumb mode. [4/10] Finish the patch, tested it on arm and ppc64. Post patches for review. * TCWG-556, aarch32 GDB buildbot slave. In progress. [1/10] Sergio needs to adjust buildbot setting to customize my buildslave. * TCWG-547, [2/10] Ping the patch series, and commit some obvious ones. * Misc, [3/10] ** Ask two people about using OpenOCD with AArch64 board. ** Review kernel patch to fix kernel limitation of byte address select. Patches look good, but GDB needs to detect that such limitation is removed. ** Read "C++ Primer". Need more knowledge on C++. # Plan # * Other thing on OpenOCD, * TCWG-167, TCWG-416, -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 3 - 7 October 2016
# Progress # * TCWG-333, Fix gdb.base/func-ptrs.exp fails in thumb mode. [3/10] Recall some discussions on it in GNU Cauldron, and dig into GDB source. Unfortunately, GDB decides to track function address rather than function pointer in 2001, which makes harder to fix it. Still thinking about it. * TCWG-556, aarch32 GDB buildbot slave. [2/10] Build GDB and test cases in arm on an aarch64 machine. There are 1000+ test fails, but not triaged yet. Discussed upstream on how to set up buildbot slave with special configuration option and test board file. Ongoing. * TCWG-685, GDB 7.12 release, and patches review. [1/10]. All blocking issues are gone. 7.12 should be released soon. * Clean up arm xml files. Done. [3/10] * Misc, meetings. [1/10] # Plan # * TCWG-333, TCWG-556. * As 7.12 goes out, ping my pending patches on TCWG-518, and TCWG-547 -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[Activity] 19-23 September 2016
* Two days off [4/10] # Progress # * TCWG-685, GDB 7.12 release. [2/10] Patch "keep RES0 bits in CPSR" is pushed into mainline and 7.12. Find a GDBserver bug, and open PR 20627. It is target independent, but may block the release. :( * TCWG-518, Range stepping in ARM. [3/10] Regression test is done. Find some other issues exposed by my patches, and fix them. Need to post patches upstream for review. * Misc [1/10] Close gdbserver in mi_gdb_exit. The bug breaks the aarch64 multi-arch testing. Patch is pushed in. File expense for GNU Cauldron travel. # Plan # * Linaro Connect. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 30 Aug -2 Sep 2016
* Holiday on Monday. [2/10] # Progress # * TCWG-685, GDB 7.12 release. No new issue. [1/10] * TCWG-655, ARM linux kernel ptrace bug. [3/10] Teach GDB testsuite to detect such kernel bug, and skip all tests related to floating point. Patches are committed. On the other hand, upgrade my arm kernel to 4.7.2, on which the ptrace bug is fixed. * TCWG-518, range stepping on ARM. [2/10]. Turned it on, but it causes some threads starvation. Investigating. * Finish the reproducer to show odd behaviour of armv8 kernel in si_code after PTRACE_SINGLESTEP and Will Deacon fixed it http://lists.infradead.org/pipermail/linux-arm-kernel/2016-September/453289.html [1/10] * Think about the GDB plan, and write down a list of things I need to do. [1/10] # Plan # * TCWG-685, TCWG-518. * GNU Cauldron. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 22 - 26 August 2016
# Progress # * TCWG-685, GDB 7.12 release. [4/10] Finish all native testing on ARM. Triaged tests result. Only find one fail that test assumes HW watchpoint is always available. Reported it upstream, but need more thoughts on how to fix it. Both AArch64 and ARM GDB is in a good state, in terms of test results. * TCWG-533, Remove global variable arm_override_mode. [2/10] It is paused by 7.12 release, and work on it again. 10 patches are ready. Being regression tested. * Analyse the kernel behaviour on single step over fork. [4/10] Upgrade juno kernel to 4.7.0-rc4+, and verified Will Deacon's patch. http://lists.infradead.org/pipermail/linux-arm-kernel/2016-August/451711.html With the patch, GDB can correctly single step over fork, however, GDB is still broken if there is a breakpoint. Write a small reproducer, but doesn't trigger the problem. It might be a GDB bug or kernel bug. # Plan # * Resume works interrupted by 7.12 release. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 15 - 19 Aug
* Two days off [4/10] # Progress # * TCWG-685, GDB 7.12 release. [3/10] Fix one bug that AArch64 GDB doesn't recognize new "STP with base register" instruction in prologue. Recent GCC https://gcc.gnu.org/ml/gcc-patches/2016-07/msg01933.html starts to generate that instruction in prologue. Fix it in both master and 7.12. Successfully build armhf toolchain with latest gcc/glibc. Run GDB tests with the new toolchain. Test results are OK, except fails when tests are compiled with -march=cortex-a15. It isn't a release blocker. Open TCWG-756 for it and will look into these fails later. * GDBserver build failure. [1/10] Review the patch fixing GDBserver build failure with latest glibc. Patch is OK, but make sure it can be merged to master/7.12/7.11, as we are still using GDB 7.11. * Prelink. [1/10] prelink causes some GDB tests failures, so I look at it. prelink isn't active, because I can't see any mails in archive since 2013. ARM is supported, but AArch64 isn't. * Misc, [1/10]. Set up email 2fa. # Plan # * GDB 7.12 release. * Upgrade the linux kernel on my juno board. -- Yao Qi ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 01-05 Aug 2016
# Progress # * TCWG-685, GDB 7.12 release. [5/10] Release branch is created. Finished the test and triage for aarch64 native. Tests are good. Two patches are committed. Running regression tests for cross for arm and aarch64. Upgrade the native compiler to gcc mainline, and run aarch64 tests with the new compiler. * OpenOCD for aarch64. [3/10] Investigate OpenOCD support for aarch64. There was an openocd patch for aarch64 posted in Feb 2015, but never merged. * Misc, [2/10] # Plan # * TCWG-685. * Finish OpenOCD investigation. * US visa interview on Wed. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 25-29 July 2016
* Off on Tue and Wed [4/10] # Progress # * TCWG-655, workaround ARM linux kernel ptrace bug on setting VFP registers. Pedro isn't happy about the workaround, and inclined to upgrade kernel. * TCWG-685, GDB 7.12 release. [4/10] Fix a bug on threads are disappeared when gdb detach. GDB gets odd task state (disk sleep) from /proc//status, and takes some time understanding what does "disk sleep" mean for a thread to be exited. Patch is being tested. * US visa. [1/10] Get the visa photo, finish the DS-160 form, and make an interview appointment. * Misc, [1/10] # Plan # * TCWG-685, GDB 7.12 release. More testing on aarch32. * TCWG-655. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 18-22 July 2016
# Progress # * TCWG-518, ARM range stepping patches. [2/10] The last one is approved, and all patches are committed! Need to enable range stepping and collect the performance data. Range stepping should speed up remote debugging. * TCWG-655, Workaround ARM linux kernel ptrace bug on setting VFP registers. No response from upstreams. * TCWG-333, Thumb mode function pointer assignment in GDB. [3/10] Try a different approach, still causes regressions. I'll ask upstream how to do it. * TCWG-547, Change software_single_step interface to return a vector of address. [4/10]. Patches are done, but need to figure out how to hook them together. * TCWG-685, GDB 7.12 release. [1/10] The release will be in Sep, and hopefully it can be done before the Linaro Connect. Discuss on how/when to pick up 7.12 in Linaro toolchain release. I am inclined to upgrade GDB in linaro release from 7.11 to 7.12 in fall or winter. # Plan # * Off on Tue and Wed. * GDB 7.12 release testing for ARM and AArch64. * US visa application. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 4-15 July 2016
* On holiday [6/20] # Progress # * TCWG-655, Workaround ARM linux kernel ptrace bug. [2/20] After the discussion, patch is posted. Pedro is on holiday, so the patch is pending there for review. * TCWG-518, ARM range stepping patches. [3/20] The last "to-be-approved" patch is posted. Pending for review. * TCWG-333, Thumb mode function pointer assignment in GDB. [2/20] Working on a patch to handle both ARM/thumb and PPC64. * TCWG-179, TLS variables can't be resolved in aarch64 GDB. [4/20] GCC doesn't produce DW_AT_location for TLS variable, because target hook TARGET_ASM_OUTPUT_DWARF_DTPREL isn't defined for AArch64. Thanks to Jiong and Szabolcs's help, pick up knowledge on TLS descriptor and TLS modes quickly. Still need to figure out how to describe the location of TLS variable in debug info if they are unknown in compilation/link time. * Fix gdb.gdb/*.exp and gdb.mi/mi-reverse.exp test fails. [1/20] * Upstreams patch review. [1/20] * LAS16, sort out the invitation letter for US visa. [1/20] # Plan # * TCWG-333, TCWG-518, TCWG-655 and TCWG-179 * US visa application. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 27 June - 1 July 2016
# Progress # * TCWG-655, Workaround ARM linux kernel ptrace bug on setting VFP registers. [2/10] Think about different approaches to workaround the kernel bug, but can't work unfortunately. Propose an approach that workaround it in gdb testing by setting affinity if the kernel is known broken. People agree on this. * TCWG-333, Thumb mode function pointer assignment in GDB. [3/10] It is broken when you assign a function to a function pointer in thumb mode in GDB. My original attempt is to skip the test, because it is difficult to do what MIPS does nowadays. After some discussions, I realize it is a GDB bug, and we should fix it. Fortunately it is broken on ppc64 as well because of function descriptor :) * TCWG-518, ARM range stepping patches. [2/10] V3 are reviewed, but I misunderstood one comments to V2. I'll update patches, retest and post them. * ARM linux kernel raises SIGILL for unknown syscall number, while GDB expects kernel returns -ENOSYS. [2/10] The behaviour is different from other arch. The patch in GDB side is committed, but still need to kernel people why ARM kernel behaves this way. * Misc [1/10] # Plan # * All above, * Off on Thur and Fri. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 20 - 24 June 2016
# Progress # * TCWG-333, ISA bit treatment in ARM thumb mode. Got some comments from Maciej (MIPS) and need to address them. * TCWG-518, ARM range stepping patches. [2/10] Combine the path of "proceed" and "resume" so that we only change one place instead of two to support range stepping. Patches are being tested. * TCWG-655, Workaround ARM linux kernel ptrace bug... [2/10] by pining both program and debugger on the same core in the affected test cases. * Off on Wed to Fri. [6/10] # Plan # * Continue things above, -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 6 - 10 June 2016
* One day off on Thu [2/10] # Progress # * TCWG-639, non-8-byte-aligned watchpoint is missed on aarch64. [4/10]. It is caused by limited kernel BAS support. RedHat reports this problem and posts a patch. Good to see they start to contribute to aarch64 GDB, but I don't like the patch. Spend much time writing a prototype to prove their patch is not perfect. We agree to fix this problem by extend RSP fortunately. * TCWG-333, [3/10] I follow the way how mips does, and fix some bugs. * TCWG-547, TCWG-518, blocked in upstream review. * Misc, meetings. [1/10] # Plan # * TCWG-333, TCWG-556. * Ping TCWG-547, TCWG-518. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 02 - 06 May 2016
* Monday off [2/10] # Progress # * TCWG-518, arm linux range stepping patches. [5/10] Tried different ways to manage breakpoints, but the program still gets SIGILL from time to time. Post my WIP patches upstream to see if people have some ideas on this. * TCWG-547, [1/10]. Try two approaches but give up due to the quite aggressive interface changes. Fortunately, the change in the third approach is quite small, testing the patch. * Misc, meeting, [2/10] # Plan # * TCWG-518, TCWG-547 -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 25 - 29 April 2016
# Progress # * TCWG-518, range stepping on arm-linux. Rebase my patches, and choose a different approach which is better. However, GDBserver crashes in some cases, and I am investigating the crash. [5/10] * TCWG-547, make some progress on the upstream discussion. We agree to do it in a cleaner way but some GDB internal interface needs some changes. [2/10] * Read some articles about exception handling, this one is quite useful, https://gcc.gnu.org/ml/gcc/2002-07/msg00391.html [1/10] * Meeting, upstream patch review. [2/10] # Plan # * TCWG-518, TCWG-547 -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 11 - 15 April 2016
# Progress # * TCWG-545, 7 patches are approved, and 1 patch needs update, which needs the change somewhere else. [3/10] * TCWG-547, patch is pending. Pinged Pedro on IRC, to be reviewed, but no response. * TCWG-167, [3/10]. ARM reverse debugging fixes. Post one patch to fix test case. Testing another patch to give high priority of epilogue unwinder. * Upstream patch review, [2/10]. Spend more time on this due to long patch review backlog. The more I reviewed, the sooner my patches will be reviewed by others. * Misc, [2/10] ** Look at the slowness of gdb regression test in jekins validation, but can't reproduce it. ** Share some knowledge of watchpoint implementation in GDB to the people, who need the equivalent or similar things in LLDB. # Plan # * TCWG-545, TCWG-547, TCWG-167. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 20-24 March 2016
# Progress # * TCWG-532, done. [1/10] Canonicalize ARM syscall patch is committed. * TCWG-167, patch is posted for review. [4/10] Add ARM epilogue unwinder in GDB, which fixes many gdb.reverse test fails. * TCWG-545, V2 are posted. [1/10] * TCWG-547, [2/10] patches are reviewed, almost OK, but some changes are needed. * Talk with Jojo Ma. * Open tickets to install buildbot-slave on gcc compile farm for GDB buildbot setup. # Plan # * Holiday on Friday and next Monday. * TCWG-167, TCWG-545, TCWG-547. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 14 March -- 18 March
* Sick on Monday [2/10] # Progress # * AArch64/ARM linux syscall for process record. [2/10] TCWG-532 ARM patch (fixing the register for syscall arg pass) is committed. Canonicalize ARM syscall patch is posted for review. * Support range stepping on arm-linux. [4/10] TCWG-545 Preparatory patches fixing bugs when "single step the instruction branch to itself" are being reviewed. Pedro thinks my patches may not work in some rare cases, and I spend some time writing the case and prove it won't happen. * Misc [2/10] ** file expense, ** upstream patch review, # Plan # * TCWG-532 * TCWG-545 -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 29 Feb -- 04 Mar
# Progress # * TCWG-545, Handle "branch-to-self" instruction in single stepping. [5/10] Patches are posted upstream for review. * TCWG-532, one patch is committed and one patch is posted for review. [2/10] * Tweak ARM process record. [2/10] Two patches are pushed in. Many test fails are fixed. * FSF patches review. [1/10]. # Plan # * Linaro Connect. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 22-26 Feb 2016
# Progress # * Support range stepping on arm-linux. TCWG-518. [5/10] Post patch series about "the thread is stepping over breakpoint but it spawns child thread". The fix is OK but the test case changes are being reviewed. The more I test my range stepping patches, the more existing bugs I find. Looking at the bug "software single step the instruction branch to self." * AArch64 linux syscall for record/replay. TCWG-532. [1/10] Patch is out for review. * Fix some ARM reverse debugging bugs. TCWG-183. [1/10] Patch is pushed in. The original implementation wasn't carefully reviewed, so I am sure there are bugs somewhere else. * Patch review on arm tracepoint support. [1/10] One patch is approved but I insist that another patch should be done in generic part instead of ARM specific part, but the author wants do it in ARM specific part because he things it is simpler. * Misc [2/10] ** Go through the Linux kernel awareness GDB patches quickly, the first reaction is "split your patch, please". ** Go to London to collect my passport. # Plan # * Support range stepping on arm-linux. TCWG-518. * TCWG-167, TCWG-532. * Prepare for the Linaro Connect travel. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 15 - 19 February 2016
# Progress # * Support range stepping on arm-linux. TCWG-518. [4/10] My patches causes some regressions but my patches just expose the existing problem in GDBserver. Fix them and post patches upstream. * Linaro connect. [2/10] Go to London for visa application. * GDB 7.11 release. No issues from my side. The tentative date of release is Feb 26th. * Fix GDB reverse debugging tests failures. ** Add more test cases, TCWG-183/TCWG-174. [2/10] ** Fix syscall handling in reverse debugging on ARM and AArch64. TCWG-532/TCWG-167. [2/10] # Plan # * Support range stepping on arm-linux. Continue. * Fix GDB reverse debugging tests failures. Continue. * Review upstream patches. * Go to London to collect my passport. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 08 - 12 February
# Progress # * Support range stepping on arm-linux. TCWG-518. [4/10] Preparatory patches are pushed in. Patches are being tested. * Linaro connect. [3/10] ** Slides are done. ** Collect documents for visa application. * GDB 7.11 release. TCWG-509. [1/10] Release branch is created. Discuss on issue related to big endian, but ARM is the only user of that code. * Patch review, especially arm tracepoint support. [2/10]. # Plan # * TCWG-518, upstream patches if tests are OK. * TCWG-172, continue look at test parity between arm and x86_64. * Go to London on Wed for visa application. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 01-05 Feb 2016
* Off from Mon. to Wed. [6/10] # Progress # * TCWG-518. Support range stepping on arm-linux. Ongoing. [2/10] First do software single step in GDBserver side. * TCWG-509. GDB 7.11 release. [1/10] PR 19474, review Keith's patch. The patch is OK to mainline, but we don't want to take risk shipping this patch to 7.11 release. * Misc, register to Linaro Connect BKK16, and get clarifications on my visa to Thailand. [1/10] * Monitor the discussions on kenernel awareness upstreams, and comment on the display of CPSR register. # Plan # * Finish Linaro Connect slides. * TCWG-509. Anything needed for GDB 7.11 release. * TCWG-518. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 18 -- 22 January
# Progress # * Fix the arm software single step regression. [3/10]. Done. * TCWG-503 Done. * TCWG-491, have a patch to avoid GDB crash. Patch is pending for review. * TCWG-517. [2/10] Fix fail in gdb.base/interrupt-noterm.exp. Patch is posted. * TCWG-514. [3/10] Fix new fails in foll-exec.exp and foll-vfork.exp. Patch is pending for review. * TCWG-509, GDB 7.11 release. [2/10] GDB is in a good shape to create 7.11 branch except PR 19474. Go through GDB test results and no ARM or AArch64 specific issues. # Plan # * TCWG-509, GDB 7.11 release. * Upstream patch review. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 11-15 January 2016
# Progress # * Estimate the effort of GDB kernel-awareness work. Give comments on formal slides. [1/10] * GDB inserts breakpoints on the wrong place if these files' basename is the same. TCWG-491. At least, post a patch to avoid GDB crash. Reproduced with a simpler case, open PR 19474. [3/10] * Update document about input interrupt. [1/10] Done. Patch is committed. * TCWG-503, fix GDB test case by @progbits -> %progbits. Patch is posted. [1/10] * Clean up arm software single step code. [3/10] In progress. Some patches are committed, but some are still in my queue. The recent arm software single step change causes a regression on stepping out of signal handler. * Think about the GDB slides for Linaro Connect [1/10] # Plan # * Look into the arm software single step regression. * Post the rest of patches for arm software single step clean up. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 4-8 Jan 2016
# Progress # * Handle input interrupt in GDB. TCWG-424. Done. [3/10] Need to update GDB manual to clarify the expected behaviour of GDB. * Estimate the effort of GDB kernel-awareness work. Done. [1/10] * TCWG-491. Ongoing. [2/10]. Understand symbol handling in GDB. * Various patch review upstream. [2/10]. * Clean up code on arm software single step after some changes from Ericsson. Ongoing. [2/10]. # Plan # * TCWG-491. * Follow up of TCWG-424 to update GDB manual. * Clean up code on arm software single step. * Assess the ARM and AArch64 GDB test result, as 7.11 release is coming soon. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 14th-18th December
# Progress # * TCWG-156, GDB Test-Suite Parity Between Aarch64 and x86_64. Done. [4/10] After two patches are committed, except some tests written for x86_64 unnecessarily, the test results between aarch64 and x86_64 looks no difference. * TCWG-424, timeout when interrupt the inferior in remote debugging. [3/10] The fail is caused by different two problems. Two patches are ready, and being regression tested. * TCWG-171, Enable gdb core file tests when testing remotely. [1/10] Write down my conclusion as it can't be fixed. * Upstream review, [2/10] ** Review patch about handling ada aarch64 HVA array in GDB. ** Discuss target description of GDB for cortex-m device with openocd. # Plan # * Post patches upstream for TCWG-424, * Patches review. * On holiday since Wed. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 30th Nov - 04th Dec
* One day off on Monday. # Progress # * Answer ST questions about supporting multi-arch with ST jtag probe. [1/10] * TCWG-171, Enable gdb core file tests when testing remotely, [3/10]. Ongoing. * Run gdb.base/sizeof.exp with board having gdb,noinferiorio. Done. [1/10] * TCWG-460, mutli-arch follow-up work, teach AArch64 GDBserver understand ARM breakpoint instructions. Patch is approved. [2/10]. * TCWG-424, fail in gdb.base/random-signal.exp. [1/10] Root cause is identified, need to figure out how to fix it in next step. * Review ARM GDBserver software single step patch V4. # Plan # * TCWG-171, TCWG-156, TCWG-424. * Review ARM GDBserver software single step patch V5, which should be the final version, I hope. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 16-20 November 2015
# Progress # * TCWG-332, done. [1/10] Fix GDB bug on stepping over breakpoint on ARM. Patch is pushed in. * TCWG-423, patches are posted. [5/10]. Support gnu vector in inferior call in AArch64 GDB. Also correctly handle HVA (homogeneous vector aggregate) in inferior call. * TCWG-433, done. [2/10] All memory issues found by -fsanitize=address in GDB are fixed. * TCWG-447, done. [1/10] Fix GDB mainline build warnings and errors in C++ mode on ARM and AArch64. * Discussion on the approach of building GDB in C++. Need to test GDB built in C++ on both ARM and AArch64, from my side. [1/10] # Plan # * Understand ST's jtag probe and help them to make use of multi-arch in GDB. * Fix GDB internal error in gdb.thread/watchpoint-fork.exp on AArch64. * TCWG-156, GDB test parity between AArch64 and X86_64. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 9th -- 13th November
* Off on Wed afternoon [1/10]. # Progress # * Fails in gdb.threads/multiple-step-overs.exp, (TCWG-332) [1/10] Patch V2 is posted, pending for review. * TCWG-422, patch is committed. Done. [2/10]. * TCWG-423, patches are ready, being regression tested. [2/10] * TCWG-433, build GDB with -fsanitize=address, and exposes many memory issues. Some of them are fixed. [2/10]. * Upstream patch review, [1/10] * Misc, meeting, [1/10] # Plan # * TCWG-423, Post patches upstream. * Understand ST's jtag probe and help them to make use of multi-arch with GDB. * TCWG-433, Continue fixing memory issues exposed by -fsanitize=address. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 26-30 October 2015
# Progress # * TCWG-332, [1/10], patch is posted for review. * TCWG-187, [1/10], looks like a kernel (~3.4) bug on setting VFP registers through ptrace. Fails go away after I upgrade the kernel. * TCWG-387, [2/10], binutils patch is committed, while GDB patches are being reviewed. * TCWG-422, [3/10], Read AAPCS and gcc source code to understand the calling convention. On going. * FSF patch review, [2/10] ** Review patch set "all-stop on top of non-stop for remote". ** Review ARM fast tracepoint patches. ** Reopen PR 15564, as the fail isn't fixed. * Misc, meeting, [1/10] # Plan # * TCWG-422 * Support ST on using AArch64 multi-arch GDB if needed. * Review ARM GDBserver software single step patch. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 19 - 23 October 2015
* Two days (Tue and Thu) off. [4/10] # Progress # * TCWG-180, patch is committed by Andrew Stubs. [1/10] I review and approve it. * Review patch set "all-stop on top of non-stop for remote". [3/10] Test them on aarch64 and arm. Triage and fix one regression. Review is still on going. * Review patch set "ARM gdbserver software breakpoint". [2/10] Review and approve them. They are preparatory to ARM tracepoint. # Plan # * Patch review. * TCWG-387, Move GDB using libopcodes to decode instructions. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 12th - 16th October
# Progress # * TCWG-162, Aarch64 non-stop debugging (or displaced stepping). [1/10] Patches are committed. * TCWG-335, HW breakpoint on 2-byte aligned address, [3/10] patch is tested against most recent kernel. Everything works. Patch is committed. * TCWG-166, Review ARM software breakpoint in GDBserver patches. [1/10] Almost done. * Review various upstream patches. [2/10]. * Misc, [3/10] ** Meeting, ** Write up some slides about recent GDB development, and present them in ARM. # Plan # * TCWG-387, Move GDB using libopcodes to decode instructions. * More upstream patches review. * Two days off on Tue and Thu. Maybe off on Friday too. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 5th October -- 9th October
# Progress # * TCWG-162, Aarch64 non-stop debugging (or displaced stepping). [4/10] After testing, patches are posted upstream. * In order to review one c++ debugging patch, learn some C++ abi, vtable and VTT, etc. Understand gcc dump by -fdump-class-hierarchy. [3/10] * Fix GDB cxx build breakage caused by my patch. [1/10] * Ask the effect of -fstack-check=specific to AArch64 prologue. GDB needs update. [1/10] * Misc, email, meeting. [1/10]. # Plan # * TCWG-162, commit patches if no objections. * TCWG-387, use libopcodes to decode instructions in GDB. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 28 September-2 October 2015
# Progress # * TCWG-373, Aarch64 non-stop debugging (or displaced stepping). [2/10] Patches V1 are ready for upstream submission, but find opcodes has already interfaces to decode instructions, so decide to use opcodes for aarch64 GDB first. * TCWG-387, one patch exposing one opcode interface is pushed in. [4/10] Switch software single step code for aarch64 to using opcodes interface. Patch is pushed in. Rewriting prologue analyser to use opcode interface too. * TCWG-159, Kernel awareness in GDB. [1/10] Resume the work as Peter Griffin has cycles to do so. We are happy with the plan so far. * Review arm software breakpoint in GDBserver patches. [1/10] * Misc, [2/10] # Plan # * TCWG-387, TCWG-373 -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 21th-25th September
# Progress # * TCWG-189, Aarch64 fast tracepoint. [2/10] Done. Patches are committed. * TCWG-373, Support displaced stepping on aarch64-linux. [4/10] GDB works basically, still need to refactor and polish the code. * TCWG-374, Test displaced stepping on aarch64-linux. [1/10] Add new tests. * TCWG-166, gdbserver support for tracepoints on ARM. [3/10]. Review patches, play with patches, and investigate on some issues. Ongoing. # Plan # * TCWG-373, TCWG-374, and TCWG-166. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 14th-18th September
# Progress # * TCWG-188, aarch64 GDB multi-arch support. [2/10] All patches went upstream except that one is blocked by kernel patch. The work is done! * TCWG-189, aarch64 fast tracepoint support. [2/10] Update them and post V2 out. Pending for review. * TCWG-373, Aarch64 non-stop debugging (or displaced stepping). [2/10] Think about it, and break it into pieces. Refactor fast tracepoint code so that some can be reused for displaced stepping. * TCWG-375, Don't skip gdb.asm/asm-source.exp on aarch64. [1/10] Patch is pushed in. * TCWG-166, Review arm tracepoint patches from Ericsson upstream. [1/10] May have something wrong for permanent breakpoint on thumb code. Need to figure out a case to trigger that. * Misc, meeting and training. [2/10] # Plan # * TCWG-189, TCWG-373, TCWG-166. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 07 Sep -- 11 Sep
# Progress # * TCWG-857, [7/10] One patch is upstreamed. The rest of them are in the queue. Upgrade juno board linux kernel to 4.2.0-rc4+ to test some multi-arch kernel patches. It isn't easy to run that new kernel on juno board, takes much time on this. * Misc [3/10]. Meetings, online trainings, etc. # Plan # * Continue to upstream multi-arch patches. * Some upstream patch reviews on tracepoint. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 31th Aug - 04th Sep
# Progress # * Holiday on Monday [2/10] * TCWG-857, [4/10]. All the multi-arch work are done (I hope) but patches can't be sent out until kernel patches are pushed in upstream. ** Collect some arguments from kernel folks to defend my change "32-bit CPSR to 64-bit PSTATE". Patch is posted out. ** Finish the patch to convert siginfo_t between 32-bit debuggee and 64-bit debugger. Done. Will post it next week. ** Get right TLS base in multi-arch debugging. Patch is done. * Happen to see we can improve GDB performance in some case by avoid sending some packets. Patch is done, but need to collect some performance data. [2/10] * Misc [1/10] ** Close some tickets, TCWG-567, TCWG-876, as they are done. * TCWG-757 [1/10], many patches review. # Plan # * Continue to upstream multi-arch patches. * Upgrade my juno board kernel to git master to test kernel patches for multi-arch debugging work properly. * Collect some GDB performance data for my patch. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 24th - 28th August
# Progress # * TCWG-857 [3/10] With one kernel fix, HW breakpoint works for unaligned address (2-byte aligned). Debug linux kernel with KGDB. KGDB exposes an existing GDB bug, I fixed it, but need some time thinking about how to submit it upstream. * TCWG-567, arm watchpoint fixes [4/10]. All fails are fixed, but need another round of test to confirm. ARM HW watchpoint doesn't work on 4.0.0 kernel, but I don't investigate on it. * TCWG-757 [2/10], some patches review. * Misc, meeting, [1/10] # Plan # * TCWG-857. * Upstream the leftover of aarch64 multi-arch patches. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 17 - 21 August 2015
# Progress # * TCWG-806, aarch64 remote debugging multi-arch support. Patches are pushed in. Done. [2/10] * TCWG-857, HW breakpoint/watchpoint in multi-arch. [3/10] Both GDB and linux kernel needs some fixes. Fix one bug in GDB. Read ARMv8 manual about byte address select for thumb code (2-byte aligned instruction) and the implementation in kernel. * TCWG-757 some patches review, [1/10] * Misc [4/10] ** ARM new starter training on Wed. afternoon and Thu. ** Read early-debug https://gcc.gnu.org/wiki/early-debug # Plan # * TCWG-857. * Update the state of some old linaro tickets on GDB. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain
[ACTIVITY] 27th - 31th July
# Progress # * TCWG-806, aarch64 remote debugging multi-arch support. [4/10] Patches are posted upstream. * TCWG-860, aarch64 fast tracepoint. [1/10] Patch review and some discussions. * TCWG-757, upstream patch review. [2/10]. ** Review NIOS II R2 patches. ** Fix PR record/18691. * Misc, meeting. [3/10] # Plan # * TCWG-857, Investigate multi-arch HW watchpoint support in GDB and linux kernel. Clean up aarch64 HW watchpoint code. * GNU Tools Cauldron. -- Yao ___ linaro-toolchain mailing list linaro-toolchain@lists.linaro.org https://lists.linaro.org/mailman/listinfo/linaro-toolchain