{"push_id":2557247828,"size":9,"distinct_size":9,"ref":"refs/heads/gdb-8.1-branch","head":"45fbad572709649ce413ecdde43b0217f48c6c9e","before":"198cb09f9b831bd8d7f6f02b94385f74b8411183","commits":[{"sha":"759942c2bfa13a8fad247e9c2f40eec850f62f31","author":{"name":"GDB Administrator","email":"46ff6e41b02a6ff6bd50cc64faab96b75208d63d@sourceware.org"},"message":"Automatic date update in version.in","distinct":true,"url":"https://api.github.com/repos/abusalimov/binutils-gdb/commits/759942c2bfa13a8fad247e9c2f40eec850f62f31"},{"sha":"cffab82a0b43f5f3e7ab9084f5c1160e0eb8d084","author":{"name":"GDB Administrator","email":"46ff6e41b02a6ff6bd50cc64faab96b75208d63d@sourceware.org"},"message":"Automatic date update in version.in","distinct":true,"url":"https://api.github.com/repos/abusalimov/binutils-gdb/commits/cffab82a0b43f5f3e7ab9084f5c1160e0eb8d084"},{"sha":"08501113d5f697ab35ef871e344715eedcdf09e8","author":{"name":"GDB Administrator","email":"46ff6e41b02a6ff6bd50cc64faab96b75208d63d@sourceware.org"},"message":"Automatic date update in version.in","distinct":true,"url":"https://api.github.com/repos/abusalimov/binutils-gdb/commits/08501113d5f697ab35ef871e344715eedcdf09e8"},{"sha":"aee78e11cf510224628c2d1b866f4e8845b36035","author":{"name":"GDB Administrator","email":"46ff6e41b02a6ff6bd50cc64faab96b75208d63d@sourceware.org"},"message":"Automatic date update in version.in","distinct":true,"url":"https://api.github.com/repos/abusalimov/binutils-gdb/commits/aee78e11cf510224628c2d1b866f4e8845b36035"},{"sha":"8a620990c7634e872b31718a8411a90a6f384457","author":{"name":"Omair Javaid","email":"d42e4c3a8f01536f9456e3fc6714027bb5875da8@linaro.org"},"message":"Fix tagged pointer support\n\nThis patch fixes tagged pointer support for AArch64 GDB. Linux kernel\ndebugging failure was reported after tagged pointer support was committed.\n\nAfter a discussion around best path forward to manage tagged pointers\non GDB side we are going to disable tagged pointers support for\naarch64-none-elf-gdb because for non-linux applications we cant be\nsure if tagged pointers will be used by MMU or not.\n\nAlso for aarch64-linux-gdb we are going to sign extend user-space\naddress after clearing tag bits. This will help debug both kernel\nand user-space addresses based on information from linux kernel\ndocumentation given below:\n\nAccording to AArch64 memory map:\nhttps://www.kernel.org/doc/Documentation/arm64/memory.txt\n\n\"User addresses have bits 63:48 set to 0 while the kernel addresses have\nthe same bits set to 1.\"\n\nAccording to AArch64 tagged pointers document:\nhttps://www.kernel.org/doc/Documentation/arm64/tagged-pointers.txt\n\nThe kernel configures the translation tables so that translations made\nvia TTBR0 (i.e. userspace mappings) have the top byte (bits 63:56) of\nthe virtual address ignored by the translation hardware. This frees up\nthis byte for application use.\n\nRunning gdb testsuite after applying this patch introduces no regressions\nand tagged pointer test cases still pass.\n\ngdb/ChangeLog:\n2018-05-10  Omair Javaid  <omair.javaid@linaro.org>\n\n\tPR gdb/23127\n\t* aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to\n\tset_gdbarch_significant_addr_bit.\n\t* aarch64-tdep.c (aarch64_gdbarch_init): Remove call to\n\tset_gdbarch_significant_addr_bit.\n\t* utils.c (address_significant): Update to sign extend addr.","distinct":true,"url":"https://api.github.com/repos/abusalimov/binutils-gdb/commits/8a620990c7634e872b31718a8411a90a6f384457"},{"sha":"e378993dd341b10571a7cb6e98d5d3b48a06e24c","author":{"name":"Joel Brobecker","email":"c7e71725c97f9c37b4edbe71d193d6b3659aa171@adacore.com"},"message":"[gdbserver/win32] fatal \"glob could not process pattern '(null)'\" error\n\nTrying to start GDBserver on Windows currently yields the following\nerror...\n\n    $ gdbserver.exe --once :4444 simple_main.exe\n    glob could not process pattern '(null)'.\n    Exiting\n\n... after which GDB terminates with a nonzero status.\n\nThis is because create_process in win32-low.c calls gdb_tilde_expand\nwith the result of a call to get_inferior_cwd without verifying that\nthe returned directory is not NULL:\n\n    | static BOOL\n    | create_process (const char *program, char *args,\n    |                 DWORD flags, PROCESS_INFORMATION *pi)\n    | {\n    |   const char *inferior_cwd = get_inferior_cwd ();\n    |   std::string expanded_infcwd = gdb_tilde_expand (inferior_cwd);\n\nThis patch avoids this by only calling gdb_tilde_expand when\nINFERIOR_CWD is not NULL, which is similar to what is done on\nGNU/Linux for instance.\n\ngdb/gdbserver/ChangeLog:\n\n        PR server/23158:\n        * win32-low.c (create_process): Only call gdb_tilde_expand if\n        inferior_cwd is not NULL.","distinct":true,"url":"https://api.github.com/repos/abusalimov/binutils-gdb/commits/e378993dd341b10571a7cb6e98d5d3b48a06e24c"},{"sha":"c0c0270a9a38e1e888e9d6f0185b465d3751f518","author":{"name":"Joel Brobecker","email":"c7e71725c97f9c37b4edbe71d193d6b3659aa171@adacore.com"},"message":"gdbserver/Windows: Fix \"no program to debug\" error\n\nTrying to start a program with GDBserver on Windows yields\nthe following error:\n\n    $ gdbserver.exe --once :4444 simple_main.exe\n    Killing process(es): 5008\n    No program to debug\n    Exiting\n\nThe error itself comes from the following code shortly after\ncreate_inferior gets called (in server.c::main):\n\n    /* Wait till we are at first instruction in program.  */\n    create_inferior (program_path.get (), program_args);\n    [...]\n\n    if (last_status.kind == TARGET_WAITKIND_EXITED\n        || last_status.kind == TARGET_WAITKIND_SIGNALLED)\n      was_running = 0;\n    else\n      was_running = 1;\n\n    if (!was_running && !multi_mode)\n      error (\"No program to debug\");\n\nWhat happens is that the \"last_status\" global starts initialized\nas zeroes, which means last_status.kind == TARGET_WAITKIND_EXITED,\nand we expect create_inferior to be waiting for the inferior to\nstart until reaching the SIGTRAP, and to set the \"last_status\"\nglobal to match that last event we received.\n\nI suspect this is an unintended side-effect of the following change...\n\n    commit 2090129c36c7e582943b7d300968d19b46160d84\n    Date:   Thu Dec 22 21:11:11 2016 -0500\n    Subject: Share fork_inferior et al with gdbserver\n\n... which removes some code in server.c that was responsible for\nstarting the inferior in a functin that was named start_inferior,\nand looked like this:\n\n   signal_pid = create_inferior (new_argv[0], &new_argv[0]);\n   [...]\n   /* Wait till we are at 1st instruction in program, return new pid\n      (assuming success).  */\n   last_ptid = mywait (pid_to_ptid (signal_pid), &last_status, 0, 0);\n\nThe code has been transitioned to using fork_inferior, but sadly,\nonly for the targets that support it. On Windows, the calls to wait\nsetting \"last_status\" simply disappeared.\n\nThis patch adds it back in the Windows-specific implementation of\ncreate_inferior.\n\ngdb/gdbserver/ChangeLog:\n\n        PR server/23158:\n        * win32-low.c (win32_create_inferior): Add call to my_wait\n        setting last_status global.","distinct":true,"url":"https://api.github.com/repos/abusalimov/binutils-gdb/commits/c0c0270a9a38e1e888e9d6f0185b465d3751f518"},{"sha":"572797ce5f4dc697120cfd07e95553118b4f105e","author":{"name":"Joel Brobecker","email":"c7e71725c97f9c37b4edbe71d193d6b3659aa171@adacore.com"},"message":"gdbserver/Windows: crash during connection establishment phase\n\nOn Windows, starting a new process with GDBserver seems to work,\nin the sense that the program does get started, and GDBserver\nconfirms that it is listening for GDB to connect. However, as soon as\nGDB establishes the connection with GDBserver, and starts discussing\nwith it, GDBserver crashes, with a SEGV.\n\nThis SEGV occurs in remote-utils.c::prepare_resume_reply...\n\n  | regp = current_target_desc ()->expedite_regs;\n  | [...]\n  | while (*regp)\n\n... because, in our case, REGP is NULL.\n\nThis patches fixes the issues by adding a parameter to init_target_desc,\nin order to make sure that we always provide the list of registers when\nwe initialize a target description.\n\ngdb/ChangeLog:\n\n        PR server/23158:\n        * regformats/regdat.sh: Adjust script, following the addition\n        of the new expedite_regs parameter to init_target_desc.\n\ngdb/gdbserver/ChangeLog:\n\n        PR server/23158:\n        * tdesc.h (init_target_desc) <expedite_regs>: New parameter.\n        * tdesc.c (init_target_desc) <expedite_regs>: New parameter.\n        Use it to set the expedite_regs field in the given tdesc.\n        * x86-tdesc.h: New file.\n        * linux-aarch64-tdesc.c (aarch64_linux_read_description):\n        Adjust following the addition of the new expedite_regs parameter\n        to init_target_desc.\n        * linux-tic6x-low.c (tic6x_read_description): Likewise.\n        * linux-x86-tdesc.c: #include \"x86-tdesc.h\".\n        (i386_linux_read_description, amd64_linux_read_description):\n        Adjust following the addition of the new expedite_regs parameter\n        to init_target_desc.\n        * lynx-i386-low.c: #include \"x86-tdesc.h\".\n        (lynx_i386_arch_setup): Adjust following the addition of the new\n        expedite_regs parameter to init_target_desc.\n        * nto-x86-low.c: #include \"x86-tdesc.h\".\n        (nto_x86_arch_setup): Adjust following the addition of the new\n        expedite_regs parameter to init_target_desc.\n        * win32-i386-low.c: #include \"x86-tdesc.h\".\n        (i386_arch_setup): Adjust following the addition of the new\n        expedite_regs parameter to init_target_desc.","distinct":true,"url":"https://api.github.com/repos/abusalimov/binutils-gdb/commits/572797ce5f4dc697120cfd07e95553118b4f105e"},{"sha":"45fbad572709649ce413ecdde43b0217f48c6c9e","author":{"name":"GDB Administrator","email":"46ff6e41b02a6ff6bd50cc64faab96b75208d63d@sourceware.org"},"message":"Automatic date update in version.in","distinct":true,"url":"https://api.github.com/repos/abusalimov/binutils-gdb/commits/45fbad572709649ce413ecdde43b0217f48c6c9e"}]}
{"actor":{"display_login":"abusalimov"}}