blob: 0a015e76d2f2c3024b249c45743304b8cab76425 [file] [log] [blame]
Roland McGrathe47ab762005-11-17 03:16:00 +000012005-11-15 Roland McGrath <roland@redhat.com>
2
3 * libdwfl.h: Comment fixes.
4
5 * dwfl_module_return_value_location.c: Add unlikely for error case.
6
72005-11-13 Roland McGrath <roland@redhat.com>
8
9 * dwfl_return_value_location.c: New file.
10 * Makefile.am (libdwfl_a_SOURCES): Add it.
11 * libdwfl.h: Declare dwfl_module_return_value_location.
12 * libdwflP.h (DWFL_ERRORS): Add DWFL_E_WEIRD_TYPE.
13
Roland McGrath07d4f2f2005-10-28 06:56:24 +0000142005-10-20 Roland McGrath <roland@redhat.com>
15
16 * libdwflP.h (DWFL_ERRORS): New error UNKNOWN_MACHINE.
17 * relocate.c (__libdwfl_relocate): Return DWFL_E_UNKNOWN_MACHINE
18 instead of DWFL_E_BADRELTYPE if ebl_get_elfmachine yields EM_NONE.
19
202005-10-01 Roland McGrath <roland@redhat.com>
21
22 * linux-kernel-modules.c (report_kernel): Return ENOENT if we fail
23 with errno 0.
24
252005-09-19 Roland McGrath <roland@redhat.com>
26
27 * linux-kernel-modules.c (dwfl_linux_kernel_report_modules): Use
28 PRIx64 instead of PRIi64, lest addresses with high bits set overflow
29 the signed integer reading; they will just have to be in hexadecimal.
30 (dwfl_linux_kernel_module_section_address): Likewise.
31
Ulrich Drepperfbe998a2005-08-29 16:27:10 +0000322005-08-28 Ulrich Drepper <drepper@redhat.com>
33
34 * Makefile.am (%.os): Use COMPILE.os.
35 (COMPILE.os): Filter out gconv options.
36
Roland McGrath995f92d2005-08-26 05:55:04 +0000372005-08-25 Roland McGrath <roland@redhat.com>
38
39 * cu.c (__libdwfl_nextcu): Return success when dwarf_nextcu hits end.
40 * dwfl_nextcu.c (dwfl_nextcu): Skip modules with no dwarf info.
41
Roland McGrath80e43a72005-08-24 21:12:15 +0000422005-08-24 Roland McGrath <roland@redhat.com>
43
Roland McGrathefb5caa2005-08-25 01:49:53 +000044 * dwfl_lineinfo.c (dwfl_lineinfo): Add bias, don't subtract it.
45
Roland McGrath80e43a72005-08-24 21:12:15 +000046 * argp-std.c [_MUDFLAP] (__libdwfl_argp_mudflap_options): New function,
47 magic initializer to set -heur-stack-bound option.
48
Roland McGrath3712b282005-08-23 05:58:42 +0000492005-08-22 Roland McGrath <roland@redhat.com>
50
Roland McGrathd17fac72005-08-23 08:20:21 +000051 * dwfl_validate_address.c: New file.
52 * Makefile.am (libdwfl_a_SOURCES): Add it.
53 * libdwfl.h: Declare dwfl_validate_address.
54
55 * derelocate.c (dwfl_module_relocate_address): Add INTDEF.
56 * libdwflP.h: Add INTDECL.
57
Roland McGrath3712b282005-08-23 05:58:42 +000058 * dwfl_module_getdwarf.c (find_symtab): Use elf_getdata instead of
59 elf_rawdata for symbol-related sections.
60
Roland McGrathd17fac72005-08-23 08:20:21 +000061 * offline.c (dwfl_report_offline): Move offline_next_address outside
62 module's range, in case it's an ET_EXEC using fixed segment locations.
63 * libdwfl.h: Update comment.
64
65 * dwfl_report_elf.c (dwfl_report_elf): Align BASE to first segment's
66 required alignment.
67
682005-08-20 Roland McGrath <roland@redhat.com>
69
70 * linux-kernel-modules.c (report_kernel): Take new argument PREDICATE,
71 function to choose whether to report.
72 (dwfl_linux_kernel_report_offline): Likewise.
73 * libdwfl.h: Update decl.
74 * argp-std.c (parse_opt): Update caller.
75
76 * dwfl_getsrclines.c: New file.
77 * dwfl_onesrcline.c: New file.
78 * Makefile.am (libdwfl_a_SOURCES): Add them.
79 * libdwfl.h: Declare dwfl_getsrclines, dwfl_onesrcline.
80
81 * linux-kernel-modules.c (dwfl_linux_kernel_find_elf): Don't leak
82 MODULESDIR[0]. Call fts_close on failure.
83
84 * dwfl_module_getdwarf.c (load_dw): Take dwfl_file * instead of Elf *.
85 Close ET_REL file descriptors after relocation.
86 (find_dw): Update caller.
87 * offline.c (dwfl_report_offline): Get the file into memory and close
88 the file descriptor.
89
90 * dwfl_module_getdwarf.c (find_debuginfo): Do nothing when
91 MOD->debug.elf is already set.
92
93 * find-debuginfo.c (try_open): Use TEMP_FAILURE_RETRY.
94 (dwfl_standard_find_debuginfo): Fail on errors not ENOENT or ENOTDIR.
95
96 * argp-std.c (options, parse_opt): Grok -K/--offline-kernel, use
97 dwfl_linux_kernel_report_offline with offline_callbacks.
98
99 * linux-kernel-modules.c (report_kernel): New function, broken out of
100 ...
101 (dwfl_linux_kernel_report_kernel): ... here. Use it.
102 (dwfl_linux_kernel_report_offline): New function.
103 * libdwfl.h: Declare it.
104 * libdwflP.h: Add INTDECL.
105
1062005-08-19 Roland McGrath <roland@redhat.com>
107
108 Use standard debuginfo search path to look for vmlinux.
109 * find-debuginfo.c (dwfl_standard_find_debuginfo): Don't check CRC if
110 passed zero.
111 * linux-kernel-modules.c (try_kernel_name): New function, broken out
112 of ...
113 (dwfl_linux_kernel_report_kernel): ... here. Use it.
114
115 * argp-std.c (offline_callbacks): New variable.
116 (parse_opt): Use it for -e. Allow multiple -e options.
117
118 * offline.c: New file.
119 * Makefile.am (libdwfl_a_SOURCES): Add it.
120 * libdwfl.h: Declare dwfl_offline_section_address, dwfl_report_offline.
121 * libdwflP.h: Add INTDECLs.
122 (OFFLINE_REDZONE): New macro.
123 (struct Dwfl): New member `offline_next_address'.
124 * dwfl_begin.c (dwfl_begin): Initialize it.
125 * dwfl_module.c (dwfl_report_begin): Likewise.
126
127 * dwfl_report_elf.c (dwfl_report_elf): Accept all types. When ET_REL,
128 do a nominal absolute section layout starting at BASE.
129 * libdwfl.h: Update comment.
130
1312005-08-18 Roland McGrath <roland@redhat.com>
132
133 * dwfl_module_getsrc_file.c (dwfl_module_getsrc_file): Do
134 dwfl_module_getdwarf if necessary.
135
136 * dwfl_report_elf.c (dwfl_report_elf): Permit ET_REL with BASE==0.
137 * libdwfl.h: Update comment.
138
139 * derelocate.c: New file.
140 * Makefile.am (libdwfl_a_SOURCES): Add it.
141
142 * libdwflP.h (struct Dwfl_Module): isrel -> e_type.
143 * dwfl_report_elf.c (dwfl_report_elf): Initialize it.
144 * dwfl_module_getdwarf.c (open_elf): Update initialization.
145 (load_dw, dwfl_module_addrname): Update uses.
146 * relocate.c (__libdwfl_relocate): Likewise.
147
1482005-08-04 Roland McGrath <roland@redhat.com>
149
150 * libdwfl.h (Dwfl_Callbacks.section_address): Take additional
151 arguments SHNDX, SHDR.
152 (dwfl_linux_kernel_module_section_address): Update prototype.
153 * relocate.c (__libdwfl_relocate_value): Update caller.
154 * linux-kernel-modules.c (dwfl_linux_kernel_module_section_address):
155 Take the new arguments.
156
Roland McGrathd2c59962005-08-10 22:13:57 +00001572005-08-10 Roland McGrath <roland@redhat.com>
158
159 * relocate.c (__libdwfl_relocate): Take argument DEBUGFILE,
160 use it instead of MOD->debug.file.
161 * libdwflP.h: Update decl.
162 * dwfl_module_getdwarf.c (load_dw): Update caller.
163 Fixes bug #165598.
164
Roland McGrath4959bf82005-08-09 10:31:08 +00001652005-08-09 Roland McGrath <roland@redhat.com>
166
167 * libdwflP.h: Include ../libdw/libdwP.h for its INTDECLs.
168 * cu.c: Use INTUSE on dwarf_* calls.
169 * dwfl_error.c: Likewise.
170 * dwfl_module.c: Likewise.
171 * dwfl_module_getdwarf.c: Likewise.
172 * dwfl_module_getsrc_file.c: Likewise.
173 * lines.c: Likewise.
174
Roland McGrath5678f872005-08-07 21:42:56 +00001752005-08-07 Roland McGrath <roland@redhat.com>
176
177 * linux-kernel-modules.c (dwfl_linux_kernel_find_elf): When module
178 names contain '_' or '-', look for files named either "foo-bar.ko"
179 or "foo_bar.ko".
180
Roland McGrath83fcb482005-08-02 00:58:33 +00001812005-07-29 Roland McGrath <roland@redhat.com>
182
183 * loc2c.c: File removed.
184 * loc2c.h: File removed.
185 * loc2c-runtime.h: File removed.
186 * test2.c: File removed.
187 * Makefile.am (EXTRA_DIST): Variable removed.
188 (noinst_HEADERS): Remove loc2c.h from here.
189
Ulrich Drepper18618fd2005-07-28 21:29:22 +00001902005-07-28 Ulrich Drepper <drepper@redhat.com>
191
Ulrich Drepper4d527362005-07-28 22:32:58 +0000192 * libdwfl.h: Add a few missing extern for function prototypes.
193
Ulrich Drepper18618fd2005-07-28 21:29:22 +0000194 * libdwfl_crc32.c: New file.
195 * libdwfl_crc32_file.c: New file.
196 * libdwflP.h: Declare the new functions.
197 * Makefile.am (libdwfl_a_SOURCES): Add libdwfl_crc32.c and
198 libdwfl_crc32_file.c.
199 * libdwfl/find-debuginfo.c (check_crc): Use __libdwfl_crc32_file
200 instead of crc32_file.
201
Roland McGrathd89bbe42005-07-28 07:08:01 +00002022005-07-28 Roland McGrath <roland@redhat.com>
203
Roland McGrath244501f2005-07-28 09:15:47 +0000204 * ptest.c: Moved to ../tests/dwflmodtest.c.
205
Roland McGrath18385902005-07-28 07:12:38 +0000206 * Makefile.am (noinst_PROGRAMS): Variable removed.
207 (libdwfl_so_SOURCES, libdwfl_LIBS, libdwfl_so_LDADD): Likewise.
208 (EXTRA_DIST, ptest_LDADD, test2_LDADD): Likewise.
209 (libdwfl): Don't use libdwfl.so any more.
210 (libdwfl.so, install, uninstall): Targets removed.
211 (test2_SOURCES): Define EXTRA_DIST instead of this.
212 * libdwfl.map: File removed.
213
Roland McGrathd89bbe42005-07-28 07:08:01 +0000214 * libdwfl.h: Use "" for libdw.h #include.
215
Roland McGrath5bab2442005-07-28 00:44:29 +00002162005-07-27 Roland McGrath <roland@redhat.com>
217
218 * libdwfl.map: Add dwfl_getmodules.
219
Ulrich Drepperb08d5a82005-07-26 05:00:05 +00002202005-07-23 Ulrich Drepper <drepper@redhat.com>
221
222 * Makefile.am: Fix rules to allow building with mudflap.
223
2242005-07-21 Roland McGrath <roland@redhat.com>
225
226 * Makefile.am (noinst_HEADERS): Add loc2c.c.
227
228 * test2.c (main): Check sscanf result to quiet warning.
229
2302005-07-20 Roland McGrath <roland@redhat.com>
231
232 * libdwfl-branch merged, creating this direcotry.