summaryrefslogtreecommitdiff
path: root/NEWS
Commit message (Collapse)AuthorAgeFilesLines
* Prepare for 0.188elfutils-0.188Mark Wielaard2022-11-021-1/+1
| | | | | | | | Set version to 0.188 Update elfutils.spec.in Regenerate po/*.po files Signed-off-by: Mark Wielaard <mark@klomp.org>
* debuginfod: Support queries for ELF/DWARF sectionsAaron Merey2022-11-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | Add new function debuginfod_find_section which queries debuginfod servers for the raw binary contents of the specified ELF/DWARF section in a file matching the given build-id. Extend the server webapi to support section queries. Section query URLS have the following format: /buildid/BUILDID/section/SECTION The server will attempt to extract the section from a debuginfo file matching the given build-id. If the debuginfo file cannot be found or the section has type SHT_NOBITS, the server will attempt to extract the section from the executable file matching the build-id. If the server is built without section query support, the client will attempt to download the debuginfo matching the build-id and extract the section. If the debuginfo file cannot be found or the section has type SHT_NOBITS, the server will attempt to download the executable file matching the build-id and extract the section. Signed-off-by: Aaron Merey <amerey@redhat.com>
* debuginfod-client: Add DEBUGINFOD_HEADERS_FILE.Daniel Thornburgh2022-10-281-0/+3
| | | | | | | | This DEBUGINFOD_HEADERS_FILE environment variable names a file to supply HTTP headers to outgoing requests. Notably, this allows for Authorization headers to be added from a file under OS access control. Signed-off-by: Daniel Thornburgh <dthorn@google.com>
* libdwfl: add dwfl_report_offline_memoryAleksei Vetrov2022-10-161-0/+1
| | | | | | | | | | | | | This method allows to read and report ELF from memory instead of opening a file. That way arbitrary memory can be worked with, e.g. when coming from a stream without the need to persist. Another useful application is for fuzzing, because fuzzers might be able to track accesses to the memory and change the fuzzer input to cover more edge cases through more targeted input. Hence, add a new function along with a test case. Signed-off-by: Aleksei Vetrov <vvvvvv@google.com>
* readelf: Support --dynamic with --use-dynamicDi Chen2022-08-011-0/+2
| | | | | | | | | | | | Currently, eu-readelf is using section headers to dump the dynamic segment information (print_dynamic -> handle_dynamic). This patch adds new options to eu-readelf (-D, --use-dynamic) for (-d, --dynamic). https://sourceware.org/bugzilla/show_bug.cgi?id=28873 Signed-off-by: Di Chen <dichen@redhat.com>
* libdwfl: Add new function dwfl_frame_regDi Chen2022-07-311-0/+1
| | | | | | | | | | | | | | Dwfl has most of the infrastructure to keep the full unwind state, including the state of unwound registers per frame using Dwfl_Thread_Callbacks. But there is no public API to access the state, except for the PC (dwfl_frame_pc). This commit adds a new function dwfl_frame_reg to get the value of the DWARF register number in the given frame. https://sourceware.org/bugzilla/show_bug.cgi?id=28579 Signed-off-by: Di Chen <dichen@redhat.com>
* Move dwfl_get_debuginfod_client to ELFUTILS_0.188Mark Wielaard2022-07-131-0/+2
| | | | | | | 0.187 was already released, so add new function to 0.188. Also add NEWS entry and INTUSE. Signed-off-by: Mark Wielaard <mark@klomp.org>
* NEWS & ChangeLog: add debuginfod blurbsFrank Ch. Eigler2022-06-031-0/+4
| | | | Signed-off-by: Frank Ch. Eigler <fche@redhat.com>
* Prepare for 0.187elfutils-0.187Mark Wielaard2022-04-251-1/+12
| | | | | | | | | Set version to 0.187 Update NEWS and elfutils.spec.in Set copyright year in configure.ac and printversion. Regenerate po/*.po files. Signed-off-by: Mark Wielaard <mark@klomp.org>
* addr2line: Make --absolute the default, add --relative option.Mark Wielaard2022-03-141-0/+3
| | | | | | | | | | Make --absolute (including the compilation directory in file names) the default and add a new option --relative to get the previous default behavior. https://www.sourceware.org/bugzilla/show_bug.cgi?id=28951 Signed-off-by: Mark Wielaard <mark@klomp.org>
* PR28661: debuginfo connection thread pool supportFrank Ch. Eigler2021-12-101-0/+5
| | | | | | | | | | | | Add an option -C, which activates libmicrohttpd's thread-pool mode for handling incoming http connections. Add libmicrohttpd error-logging callback function so as to receive indication of its internal errors, and relay counts to our metrics. Some of these internal errors tipped us off to a microhttpd bug that thread pooling works around. Document in debuginfod.8 page. Hand-tested against "ulimit -u NNN" shells, and with a less strenuous new test case. Signed-off-by: Frank Ch. Eigler <fche@redhat.com>
* Prepare for 0.186elfutils-0.186Mark Wielaard2021-11-101-1/+3
| | | | | | | | Set version to 0.186 Update NEWS and elfutils.spec.in Regenerate po/*.po files Signed-off-by: Mark Wielaard <mark@klomp.org>
* PR28430: debuginfod: support --passive modeFrank Ch. Eigler2021-11-101-0/+1
| | | | | | | | Add support for a limited mode for debuginfod that uses a pure read-only sqlite index. This mode is useful for load spreading based on naively shared or replicated databases. Signed-off-by: Frank Ch. Eigler <fche@redhat.com>
* libdw, readelf: Read inlining info in NVIDIA extended line mapJohn M Mellor-Crummey2021-11-101-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As of CUDA 11.2, NVIDIA added extensions to the line map section of CUDA binaries to represent inlined functions. These extensions include - two new fields in a line table row to represent inline information: context, and functionname, - two new DWARF extended opcodes: DW_LNE_NVIDIA_inlined_call, DW_LNE_NVIDIA_set_function_name, - an additional word in the line table header that indicates the offset in the .debug_str function where the function names for this line table begin, and A line table row for an inlined function contains a non-zero "context" value. The “context” field indicates the index of the line table row that serves as the call site for an inlined context. The "functionname" field in a line table row is only meaningful if the "context" field of the row is non-zero. A meaningful "functionname" field contains an index into the .debug_str section relative to the base offset established in the line table header; the position in the .debug_str section indicates the name of the inlined function. These extensions resemble the proposed DWARF extensions (http://dwarfstd.org/ShowIssue.php?issue=140906.1) by Cary Coutant, but are not identical. This commit integrates support for handling NVIDIA's extended line maps into elfutil's libdw library, by adding two functions dwarf_linecontext and dwarf_linefunctionname, and the readelf --debug-dump=line command line utility. Signed-off-by: John M Mellor-Crummey <johnmc@rice.edu> Signed-off-by: Mark Wielaard <mark@klomp.org>
* PR28514: debuginfod: limit groom operation timesFrank Ch. Eigler2021-11-051-0/+1
| | | | | | | | | | | | | | | | | | | For large databases and many stale files, it was possible to starve rescan operations by numerous groom "nuke" (database delete ops). Under the theory that including new data is at least as important as aging old, we now impose a rough deadline on groom queries. In the process, we discovered that we were commiting some undefined-behaviour sqlite ops (deleting rows while iterating), which may explain some previous heisenbug occurrences. So the groom nuke operations are split into decision & action phases, with associated progress-tracking metrics. Testing the timeout facility requires hand-testing beyond the testsuite (since it requires LARGE databases to show measurable query times). So confirmed this part by hand. Signed-off-by: Frank Ch. Eigler <fche@redhat.com>
* NEWS: make automake check-news / dist happyFrank Ch. Eigler2021-11-041-1/+1
| | | | | | | automake's check-news option requires not too much new content before a line that includes the current version number. Signed-off-by: Frank Ch. Eigler <fche@redhat.com>
* NEWS: list some 0.186 debuginfod client & server featuresFrank Ch. Eigler2021-11-041-0/+11
| | | | Signed-off-by: Frank Ch. Eigler <fche@redhat.com>
* PR27783: switch default debuginfod-urls to drop-in style filesFrank Ch. Eigler2021-10-071-0/+6
| | | | | | | | | | Rewrote and commented the /etc/profile.d csh and sh script fragments to take the default $DEBUGINFOD_URLS from the union of drop-in files: /etc/debuginfod/*.urls. Hand-tested with csh and bash, with conditions including no prior $DEBUGINFOD_URLS, nonexistent .urls files, multiple entries in .urls files. Signed-off-by: Frank Ch. Eigler <fche@redhat.com>
* Prepare for 0.185elfutils-0.185Mark Wielaard2021-05-221-0/+8
| | | | | | | | Set version to 0.185 Update NEWS and elfutils.spec.in Regenerate po/*.po files Signed-off-by: Mark Wielaard <mark@klomp.org>
* Prepare for 0.184elfutils-0.184Mark Wielaard2021-05-101-3/+13
| | | | | | | | Set version to 0.184 Update NEWS and elfutils.spec.in Regenerate po/*.po files Signed-off-by: Mark Wielaard <mark@klomp.org>
* debuginfod: debuginfod client should cache negative results.Alice Zhang via Elfutils-devel2021-05-061-0/+5
| | | | | | | | | | | | | | | | | | | | | Add debuginfod_config_cache for reading and writing to cache configuration files, make use of the function within debuginfod_clean_cache and debuginfod_query_server. In debuginfod_query_server, create 000-permission file on failed queries. Before querying each BUILDID, if corresponding 000 file detected, compare its stat mtime with parameter from .cache/cache_miss_s. If mtime is fresher, then return ENOENT and exit; otherwise unlink the 000 file and proceed to a new query. tests: add test in run-debuginfod-find.sh test if the 000 file is created on failed query; if querying the same failed BUILDID, whether the query should proceed without going through server; set the cache_miss_s to 0 and query the same buildid, and this time should go through the server. Signed-off-by: Alice Zhang <alizhang@redhat.com>
* NEWS: add a debuginfod blurb re. bsdtarFrank Ch. Eigler2021-02-171-0/+4
| | | | Signed-off-by: Frank Ch. Eigler <fche@redhat.com>
* NEWS: add one more debuginfod bragelfutils-0.183Frank Ch. Eigler2021-02-051-0/+1
| | | | Signed-off-by: Frank Ch. Eigler <fche@redhat.com>
* Prepare for 0.183Mark Wielaard2021-02-051-0/+16
| | | | | | | | | Set version to 0.183 Update NEWS and elfutils.spec.in. Set copyright year in configure.ac and printversion. Regenerate po/*.po files. Signed-off-by: Mark Wielaard <mark@klomp.org>
* Fix spelling typos in NEWS, NOTES, TODO, and in comments of configure.acDmitry V. Levin2020-12-121-9/+9
| | | | | | | | | | | | | | | | | | | accidently -> accidentally approriate -> appropriate depencies -> dependencies endianess -> endianness funtions -> functions indeces -> indices indentified -> identified ist -> is mutliple -> multiple nessesary -> necessary optimze -> optimize severly -> severely suport -> support tranformation -> transformation Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
* Prepare for 0.182Mark Wielaard2020-10-311-0/+14
| | | | | | | | Set version to 0.182. Update NEWS and elfutils.spec.in. Regenerate po/*.po files. Signed-off-by: Mark Wielaard <mark@klomp.org>
* Prepare for 0.181elfutils-0.181Mark Wielaard2020-09-081-0/+17
| | | | | | | | Set version to 0.181. Update NEWS and elfutils.spec.in. Regenerate po/*.po files. Signed-off-by: Mark Wielaard <mark@klomp.org>
* Prepare for 0.180elfutils-0.180Mark Wielaard2020-06-111-0/+14
| | | | | | | | | | Set version to 0.180. Update NEWS and elfutils.spec.in. Set copyright year in printversion. Regenerate po/*.po files. Update .gitignore. Signed-off-by: Mark Wielaard <mark@klomp.org>
* Prepare for 0.179elfutils-0.179Mark Wielaard2020-03-301-0/+35
| | | | | | | | Set version to 0.179. Update NEWS and elfutils.spec.in. Regenerate po/*.po files. Signed-off-by: Mark Wielaard <mark@klomp.org>
* Prepare for 0.178Mark Wielaard2019-11-261-0/+22
| | | | | | | | Set version to 0.178. Update NEWS and elfutils.spec.in. Regenerate po/*.po files. Signed-off-by: Mark Wielaard <mark@klomp.org>
* Prepare for 0.177elfutils-0.177Mark Wielaard2019-08-131-0/+16
| | | | | | | | | Set version to 0.177. Update NEWS and elfutils.spec.in. Use git --get user.name and user.email for spec changelog. Regenerate po/*.po files. Signed-off-by: Mark Wielaard <mark@klomp.org>
* Prepare for 0.176Mark Wielaard2019-02-141-0/+10
| | | | | | | | | Set version to 0.176. Update NEWS and elfutils.spec.in. Update GPG-KEY. Regenerate po/*.po files. Signed-off-by: Mark Wielaard <mark@klomp.org>
* Prepare for 0.175Mark Wielaard2018-11-141-0/+18
| | | | | | | | Set version to 0.175 Update NEWS and elfutils.spec.in. Regenerate po/*.po files. Signed-off-by: Mark Wielaard <mark@klomp.org>
* Prepare for 0.174elfutils-0.174Mark Wielaard2018-09-141-0/+16
| | | | | | | | Set version to 0.174. Mention new functionality in NEWS. Update po/*.po files. Signed-off-by: Mark Wielaard <mark@klomp.org>
* Prepare for 0.173elfutils-0.173Mark Wielaard2018-06-291-0/+18
| | | | | | | | Set version to 0.173. Mention new functionality in NEWS. Update po/*.po files. Signed-off-by: Mark Wielaard <mark@klomp.org>
* Prepare for 0.172.elfutils-0.172Mark Wielaard2018-06-111-0/+9
| | | | | | | | | | It has been only 10 days since the previous release and there are no functional changes compared to 0.171. The speedup of eu-readelf -N is pretty nice. And ~25 patches fix various bugs (hangs and crashes) in dealing with bad DWARF5 data. Most have been found by running the afl fuzzer on eu-readelf and various testcases. Signed-off-by: Mark Wielaard <mark@klomp.org>
* Prepare for 0.171.elfutils-0.171Mark Wielaard2018-06-011-0/+38
| | | | | | | Set version to 0.171. Update po/*.po files. Mention DWARF5, split dwarf and GNU DebugFission support in NEWS. Signed-off-by: Mark Wielaard <mark@klomp.org>
* Prepare for 0.170.elfutils-0.170Mark Wielaard2017-08-021-1/+1
| | | | | | | Set version to 0.170. Update po/*.po files. Add some more user visible changes to NEWS. Signed-off-by: Mark Wielaard <mark@klomp.org>
* libdw: Add DW_MACRO constants and DW_MACRO_GNU compatibility defines.Mark Wielaard2017-08-021-1/+3
| | | | | | | | | | Accept version 5 .debug_macro format, which is identical to the GNU version 4 format. No real support yet for the new supplementary object file (sup) and indirect string references (strx). GCC doesn't generate them yet. readelf does recognize them, but doesn't try to decode them. dwarf_getmacros currently rejects the new formats. Signed-off-by: Mark Wielaard <mark@klomp.org>
* libdw: Handle DWARF5 immutable, packed and shared in dwarf_peel_type.Mark Wielaard2017-08-021-0/+1
| | | | | | | | | | Also update the documentation to explain that any type alias or modifier that doesn't modify, change the structural layout or the way to access the underlying type is peeled. Explicitly mention pointer and reference types as examples of modifiers that don't obey that rule and so aren't peeled. Signed-off-by: Mark Wielaard <mark@klomp.org>
* Handle DWARF5 defaulted member function encodings.Mark Wielaard2017-08-021-2/+2
| | | | | | | | | Add DW_DEFAULTED_no, DW_DEFAULTED_in_class and DW_DEFAULTED_out_of_class to dwarf.h. Print value (no, in_class or out_of_class) of DW_AT_defaulted in readelf. Signed-off-by: Mark Wielaard <mark@klomp.org>
* libdw: DWARF5 Add DW_CC_pass_by_reference and DW_CC_pass_by_reference.Mark Wielaard2017-08-021-2/+2
| | | | Signed-off-by: Mark Wielaard <mark@klomp.org>
* libdw: Add dwarf_default_lower_bound.Mark Wielaard2017-08-021-0/+1
| | | | | | | | | | Add dwarf_default_lower_bound to get the default lower bound for a language when not given as attribute for an subrange type. Implementation extracted from dwarf_aggregate_size. Add a test to check all known language codes are handled. Signed-off-by: Mark Wielaard <mark@klomp.org>
* libdw: DWARF5 Add new DW_LANG codes and default lower array bound.Mark Wielaard2017-08-021-2/+2
| | | | | | | | | | Add DW_LANG_OpenCL, DW_LANG_Modula3, DW_LANG_C_plus_plus_03, DW_LANG_OCaml, DW_LANG_Rust, DW_LANG_Swift, DW_LANG_Julia, DW_LANG_Dylan, DW_LANG_RenderScript and DW_LANG_BLISS to dwarf.h. Update default language array lower bounds in dwarf_aggregate_size.c. Signed-off-by: Mark Wielaard <mark@klomp.org>
* libdw: Add new DWARF5 character encodings.Mark Wielaard2017-08-021-1/+2
| | | | | | | Add DW_ATE_UCS and DW_ATE_ASCII for Fortran 2003 string kinds ASCII (ISO/IEC 646:1991) and ISO_10646 (UCS-4 in ISO/IEC 10646:2000). Signed-off-by: Mark Wielaard <mark@klomp.org>
* libdw: Add new DWARF5 tag constants.Mark Wielaard2017-08-021-1/+1
| | | | | | | | | | Add DW_TAG_coarray_type, DW_TAG_generic_subrange, DW_TAG_dynamic_type, DW_TAG_call_site, DW_TAG_call_site_parameter, DW_TAG_skeleton_unit, DW_TAG_immutable_type. Just the constants, no further interpretion yet. Signed-off-by: Mark Wielaard <mark@klomp.org>
* libdw: Add DWARF5 attributes.Mark Wielaard2017-08-021-0/+2
| | | | | | | | | | | | Add new DWARF5 attribute constant names to the attributes enum. Also add reserved comments between non-consecutive (reserved) numbers. Remove DW_AT_subscr_data, DW_AT_element_list and DW_AT_member from the enum list and turn them into compatibility defines because they are not part of DWARF2+. That way code that directly references them still compiles but they won't show up in known-dwarf.h. Signed-off-by: Mark Wielaard <mark@klomp.org>
* backends: Don't depend on linux/bpf.h to compile bpf disassembler.Mark Wielaard2017-07-241-0/+2
| | | | | | | | | We only need a few constants and one structure definition from linux/bpf. Just define those in a local lib/bpf.h file. This makes sure the bpf disassembler is always build and included even when elfutils is build on older GNU/Linux systems (and even on other platforms). Signed-off-by: Mark Wielaard <mark@klomp.org>
* strip: Add --keep-section=SECTION and --remove-section=SECTION.Mark Wielaard2017-07-171-0/+4
| | | | | | | | | | | | | | | | | | | | | Adds two new output options: --keep-section=SECTION Keep the named section. SECTION is an extended wildcard pattern. May be given more than once. --remove-section=SECTION Remove the named section. SECTION is an extended wildcard pattern. May be given more than once. Only non-allocated sections can be removed. The --remove-section was already partially implemented, but only for the .comment section. The short option -R is to be compatible with binutils. The new testcase makes sure that various combinations of kept/removed sections pull the correct dependencies into the output and/or debug files. https://bugzilla.redhat.com/show_bug.cgi?id=1465997 Signed-off-by: Mark Wielaard <mark@klomp.org>
* Prepare for 0.169.elfutils-0.169Mark Wielaard2017-05-051-0/+7
| | | | | | | Set version to 0.169. Update copyright year. Update po/*.po files. And add user visible changes to new 0.169 NEWS section. Signed-off-by: Mark Wielaard <mark@klomp.org>