summaryrefslogtreecommitdiff
path: root/libdwfl/ChangeLog
blob: 2edaf6f91be81fca3173ce5c0c096fd7dd09ea00 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
2005-08-22  Roland McGrath  <roland@redhat.com>

	* dwfl_validate_address.c: New file.
	* Makefile.am (libdwfl_a_SOURCES): Add it.
	* libdwfl.h: Declare dwfl_validate_address.

	* derelocate.c (dwfl_module_relocate_address): Add INTDEF.
	* libdwflP.h: Add INTDECL.

	* dwfl_module_getdwarf.c (find_symtab): Use elf_getdata instead of
	elf_rawdata for symbol-related sections.

	* offline.c (dwfl_report_offline): Move offline_next_address outside
	module's range, in case it's an ET_EXEC using fixed segment locations.
	* libdwfl.h: Update comment.

	* dwfl_report_elf.c (dwfl_report_elf): Align BASE to first segment's
	required alignment.

2005-08-20  Roland McGrath  <roland@redhat.com>

	* linux-kernel-modules.c (report_kernel): Take new argument PREDICATE,
	function to choose whether to report.
	(dwfl_linux_kernel_report_offline): Likewise.
	* libdwfl.h: Update decl.
	* argp-std.c (parse_opt): Update caller.

	* dwfl_getsrclines.c: New file.
	* dwfl_onesrcline.c: New file.
	* Makefile.am (libdwfl_a_SOURCES): Add them.
	* libdwfl.h: Declare dwfl_getsrclines, dwfl_onesrcline.

	* linux-kernel-modules.c (dwfl_linux_kernel_find_elf): Don't leak
	MODULESDIR[0].  Call fts_close on failure.

	* dwfl_module_getdwarf.c (load_dw): Take dwfl_file * instead of Elf *.
	Close ET_REL file descriptors after relocation.
	(find_dw): Update caller.
	* offline.c (dwfl_report_offline): Get the file into memory and close
	the file descriptor.

	* dwfl_module_getdwarf.c (find_debuginfo): Do nothing when
	MOD->debug.elf is already set.

	* find-debuginfo.c (try_open): Use TEMP_FAILURE_RETRY.
	(dwfl_standard_find_debuginfo): Fail on errors not ENOENT or ENOTDIR.

	* argp-std.c (options, parse_opt): Grok -K/--offline-kernel, use
	dwfl_linux_kernel_report_offline with offline_callbacks.

	* linux-kernel-modules.c (report_kernel): New function, broken out of
	...
	(dwfl_linux_kernel_report_kernel): ... here.  Use it.
	(dwfl_linux_kernel_report_offline): New function.
	* libdwfl.h: Declare it.
	* libdwflP.h: Add INTDECL.

2005-08-19  Roland McGrath  <roland@redhat.com>

	Use standard debuginfo search path to look for vmlinux.
	* find-debuginfo.c (dwfl_standard_find_debuginfo): Don't check CRC if
	passed zero.
	* linux-kernel-modules.c (try_kernel_name): New function, broken out
	of ...
	(dwfl_linux_kernel_report_kernel): ... here.  Use it.

	* argp-std.c (offline_callbacks): New variable.
	(parse_opt): Use it for -e.  Allow multiple -e options.

	* offline.c: New file.
	* Makefile.am (libdwfl_a_SOURCES): Add it.
	* libdwfl.h: Declare dwfl_offline_section_address, dwfl_report_offline.
	* libdwflP.h: Add INTDECLs.
	(OFFLINE_REDZONE): New macro.
	(struct Dwfl): New member `offline_next_address'.
	* dwfl_begin.c (dwfl_begin): Initialize it.
	* dwfl_module.c (dwfl_report_begin): Likewise.

	* dwfl_report_elf.c (dwfl_report_elf): Accept all types.  When ET_REL,
	do a nominal absolute section layout starting at BASE.
	* libdwfl.h: Update comment.

2005-08-18  Roland McGrath  <roland@redhat.com>

	* dwfl_module_getsrc_file.c (dwfl_module_getsrc_file): Do
	dwfl_module_getdwarf if necessary.

	* dwfl_report_elf.c (dwfl_report_elf): Permit ET_REL with BASE==0.
	* libdwfl.h: Update comment.

	* derelocate.c: New file.
	* Makefile.am (libdwfl_a_SOURCES): Add it.

	* libdwflP.h (struct Dwfl_Module): isrel -> e_type.
	* dwfl_report_elf.c (dwfl_report_elf): Initialize it.
	* dwfl_module_getdwarf.c (open_elf): Update initialization.
	(load_dw, dwfl_module_addrname): Update uses.
	* relocate.c (__libdwfl_relocate): Likewise.

2005-08-04  Roland McGrath  <roland@redhat.com>

	* libdwfl.h (Dwfl_Callbacks.section_address): Take additional
	arguments SHNDX, SHDR.
	(dwfl_linux_kernel_module_section_address): Update prototype.
	* relocate.c (__libdwfl_relocate_value): Update caller.
	* linux-kernel-modules.c (dwfl_linux_kernel_module_section_address):
	Take the new arguments.

2005-08-10  Roland McGrath  <roland@redhat.com>

	* relocate.c (__libdwfl_relocate): Take argument DEBUGFILE,
	use it instead of MOD->debug.file.
	* libdwflP.h: Update decl.
	* dwfl_module_getdwarf.c (load_dw): Update caller.
	Fixes bug #165598.

2005-08-09  Roland McGrath  <roland@redhat.com>

	* libdwflP.h: Include ../libdw/libdwP.h for its INTDECLs.
	* cu.c: Use INTUSE on dwarf_* calls.
	* dwfl_error.c: Likewise.
	* dwfl_module.c: Likewise.
	* dwfl_module_getdwarf.c: Likewise.
	* dwfl_module_getsrc_file.c: Likewise.
	* lines.c: Likewise.

2005-08-07  Roland McGrath  <roland@redhat.com>

	* linux-kernel-modules.c (dwfl_linux_kernel_find_elf): When module
	names contain '_' or '-', look for files named either "foo-bar.ko"
	or "foo_bar.ko".

2005-07-29  Roland McGrath  <roland@redhat.com>

	* loc2c.c: File removed.
	* loc2c.h: File removed.
	* loc2c-runtime.h: File removed.
	* test2.c: File removed.
	* Makefile.am (EXTRA_DIST): Variable removed.
	(noinst_HEADERS): Remove loc2c.h from here.

2005-07-28  Ulrich Drepper  <drepper@redhat.com>

	* libdwfl.h: Add a few missing extern for function prototypes.

	* libdwfl_crc32.c: New file.
	* libdwfl_crc32_file.c: New file.
	* libdwflP.h: Declare the new functions.
	* Makefile.am (libdwfl_a_SOURCES): Add libdwfl_crc32.c and
	libdwfl_crc32_file.c.
	* libdwfl/find-debuginfo.c (check_crc): Use __libdwfl_crc32_file
	instead of crc32_file.

2005-07-28  Roland McGrath  <roland@redhat.com>

	* ptest.c: Moved to ../tests/dwflmodtest.c.

	* Makefile.am (noinst_PROGRAMS): Variable removed.
	(libdwfl_so_SOURCES, libdwfl_LIBS, libdwfl_so_LDADD): Likewise.
	(EXTRA_DIST, ptest_LDADD, test2_LDADD): Likewise.
	(libdwfl): Don't use libdwfl.so any more.
	(libdwfl.so, install, uninstall): Targets removed.
	(test2_SOURCES): Define EXTRA_DIST instead of this.
	* libdwfl.map: File removed.

	* libdwfl.h: Use "" for libdw.h #include.

2005-07-27  Roland McGrath  <roland@redhat.com>

	* libdwfl.map: Add dwfl_getmodules.

2005-07-23  Ulrich Drepper  <drepper@redhat.com>

	* Makefile.am: Fix rules to allow building with mudflap.

2005-07-21  Roland McGrath  <roland@redhat.com>

	* Makefile.am (noinst_HEADERS): Add loc2c.c.

	* test2.c (main): Check sscanf result to quiet warning.

2005-07-20  Roland McGrath  <roland@redhat.com>

	* libdwfl-branch merged, creating this direcotry.