Reinclude gdb-dlopen-stap-probe.patch (missing in Fedora glibc - BZ 752476).
This commit is contained in:
parent
191f4d2883
commit
e6cdbfd018
@ -2,11 +2,11 @@ From: Gary Benson <gbenson@redhat.com>
|
||||
To: Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||
Message-ID: <20110810133605.GB7294@redhat.com>
|
||||
|
||||
diff --git a/gdb/infrun.c b/gdb/infrun.c
|
||||
index 4296d3a..fd5e9c3 100644
|
||||
--- a/gdb/infrun.c
|
||||
+++ b/gdb/infrun.c
|
||||
@@ -321,6 +323,13 @@ static struct symbol *step_start_function;
|
||||
Index: gdb-7.4.50.20120103/gdb/infrun.c
|
||||
===================================================================
|
||||
--- gdb-7.4.50.20120103.orig/gdb/infrun.c 2012-01-04 00:26:15.000000000 +0100
|
||||
+++ gdb-7.4.50.20120103/gdb/infrun.c 2012-01-04 00:26:21.960833391 +0100
|
||||
@@ -354,6 +354,13 @@ static struct symbol *step_start_functio
|
||||
/* Nonzero if we want to give control to the user when we're notified
|
||||
of shared library events by the dynamic linker. */
|
||||
int stop_on_solib_events;
|
||||
@ -20,7 +20,7 @@ index 4296d3a..fd5e9c3 100644
|
||||
static void
|
||||
show_stop_on_solib_events (struct ui_file *file, int from_tty,
|
||||
struct cmd_list_element *c, const char *value)
|
||||
@@ -7153,7 +7162,7 @@ Show stopping for shared library events."), _("\
|
||||
@@ -7304,7 +7311,7 @@ Show stopping for shared library events.
|
||||
If nonzero, gdb will give control to the user when the dynamic linker\n\
|
||||
notifies gdb of shared library events. The most common event of interest\n\
|
||||
to the user would be loading/unloading of a new library."),
|
||||
@ -29,10 +29,10 @@ index 4296d3a..fd5e9c3 100644
|
||||
show_stop_on_solib_events,
|
||||
&setlist, &showlist);
|
||||
|
||||
diff --git a/gdb/solib-svr4.c b/gdb/solib-svr4.c
|
||||
index dffc621..73cbe1c 100644
|
||||
--- a/gdb/solib-svr4.c
|
||||
+++ b/gdb/solib-svr4.c
|
||||
Index: gdb-7.4.50.20120103/gdb/solib-svr4.c
|
||||
===================================================================
|
||||
--- gdb-7.4.50.20120103.orig/gdb/solib-svr4.c 2012-01-04 00:26:15.000000000 +0100
|
||||
+++ gdb-7.4.50.20120103/gdb/solib-svr4.c 2012-01-04 00:29:56.303014562 +0100
|
||||
@@ -48,6 +48,8 @@
|
||||
#include "auxv.h"
|
||||
#include "exceptions.h"
|
||||
@ -42,7 +42,7 @@ index dffc621..73cbe1c 100644
|
||||
static struct link_map_offsets *svr4_fetch_link_map_offsets (void);
|
||||
static int svr4_have_link_map_offsets (void);
|
||||
static void svr4_relocate_main_executable (void);
|
||||
@@ -92,6 +94,32 @@ static const char * const solib_break_names[] =
|
||||
@@ -93,6 +95,32 @@ static const char * const solib_break_na
|
||||
NULL
|
||||
};
|
||||
|
||||
@ -75,7 +75,7 @@ index dffc621..73cbe1c 100644
|
||||
static const char * const bkpt_names[] =
|
||||
{
|
||||
"_start",
|
||||
@@ -335,6 +363,12 @@ struct svr4_info
|
||||
@@ -314,6 +342,12 @@ struct svr4_info
|
||||
CORE_ADDR interp_text_sect_high;
|
||||
CORE_ADDR interp_plt_sect_low;
|
||||
CORE_ADDR interp_plt_sect_high;
|
||||
@ -88,7 +88,7 @@ index dffc621..73cbe1c 100644
|
||||
};
|
||||
|
||||
/* Per-program-space data key. */
|
||||
@@ -344,8 +378,15 @@ static void
|
||||
@@ -323,8 +357,15 @@ static void
|
||||
svr4_pspace_data_cleanup (struct program_space *pspace, void *arg)
|
||||
{
|
||||
struct svr4_info *info;
|
||||
@ -104,7 +104,7 @@ index dffc621..73cbe1c 100644
|
||||
xfree (info);
|
||||
}
|
||||
|
||||
@@ -1321,6 +1362,126 @@ exec_entry_point (struct bfd *abfd, struct target_ops *targ)
|
||||
@@ -1445,6 +1486,126 @@ exec_entry_point (struct bfd *abfd, stru
|
||||
targ);
|
||||
}
|
||||
|
||||
@ -127,7 +127,7 @@ index dffc621..73cbe1c 100644
|
||||
+ {
|
||||
+ if (!probe_info[i].mandatory)
|
||||
+ {
|
||||
+ const struct stap_probe *probe;
|
||||
+ struct stap_probe *probe;
|
||||
+ int ix;
|
||||
+
|
||||
+ for (ix = 0;
|
||||
@ -211,7 +211,7 @@ index dffc621..73cbe1c 100644
|
||||
+
|
||||
+ for (i = 0; i < NUM_PROBES; i++)
|
||||
+ {
|
||||
+ const struct stap_probe *probe;
|
||||
+ struct stap_probe *probe;
|
||||
+ int ix;
|
||||
+
|
||||
+ for (ix = 0;
|
||||
@ -228,10 +228,10 @@ index dffc621..73cbe1c 100644
|
||||
+ create_solib_event_breakpoint (gdbarch, address);
|
||||
+}
|
||||
+
|
||||
/*
|
||||
/* Helper function for gdb_bfd_lookup_symbol. */
|
||||
|
||||
LOCAL FUNCTION
|
||||
@@ -1372,10 +1533,18 @@ enable_break (struct svr4_info *info, int from_tty)
|
||||
static int
|
||||
@@ -1493,10 +1654,18 @@ enable_break (struct svr4_info *info, in
|
||||
asection *interp_sect;
|
||||
gdb_byte *interp_name;
|
||||
CORE_ADDR sym_addr;
|
||||
@ -250,7 +250,7 @@ index dffc621..73cbe1c 100644
|
||||
/* If we already have a shared library list in the target, and
|
||||
r_debug contains r_brk, set the breakpoint there - this should
|
||||
mean r_brk has already been relocated. Assume the dynamic linker
|
||||
@@ -1407,7 +1576,7 @@ enable_break (struct svr4_info *info, int from_tty)
|
||||
@@ -1528,7 +1697,7 @@ enable_break (struct svr4_info *info, in
|
||||
That knowledge is encoded in the address, if it's Thumb the low bit
|
||||
is 1. However, we've stripped that info above and it's not clear
|
||||
what all the consequences are of passing a non-addr_bits_remove'd
|
||||
@ -259,7 +259,7 @@ index dffc621..73cbe1c 100644
|
||||
find_pc_section verifies we know about the address and have some
|
||||
hope of computing the right kind of breakpoint to use (via
|
||||
symbol info). It does mean that GDB needs to be pointed at a
|
||||
@@ -1445,7 +1614,7 @@ enable_break (struct svr4_info *info, int from_tty)
|
||||
@@ -1566,7 +1735,7 @@ enable_break (struct svr4_info *info, in
|
||||
+ bfd_section_size (tmp_bfd, interp_sect);
|
||||
}
|
||||
|
||||
@ -268,7 +268,7 @@ index dffc621..73cbe1c 100644
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
@@ -1599,7 +1768,8 @@ enable_break (struct svr4_info *info, int from_tty)
|
||||
@@ -1721,7 +1890,8 @@ enable_break (struct svr4_info *info, in
|
||||
|
||||
if (sym_addr != 0)
|
||||
{
|
||||
@ -278,7 +278,7 @@ index dffc621..73cbe1c 100644
|
||||
xfree (interp_name);
|
||||
return 1;
|
||||
}
|
||||
@@ -1625,7 +1795,7 @@ enable_break (struct svr4_info *info, int from_tty)
|
||||
@@ -1747,7 +1917,7 @@ enable_break (struct svr4_info *info, in
|
||||
sym_addr = gdbarch_convert_from_func_ptr_addr (target_gdbarch,
|
||||
sym_addr,
|
||||
¤t_target);
|
||||
@ -287,7 +287,7 @@ index dffc621..73cbe1c 100644
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
@@ -1641,7 +1811,7 @@ enable_break (struct svr4_info *info, int from_tty)
|
||||
@@ -1763,7 +1933,7 @@ enable_break (struct svr4_info *info, in
|
||||
sym_addr = gdbarch_convert_from_func_ptr_addr (target_gdbarch,
|
||||
sym_addr,
|
||||
¤t_target);
|
||||
@ -296,17 +296,17 @@ index dffc621..73cbe1c 100644
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
@@ -2470,4 +2640,5 @@ _initialize_svr4_solib (void)
|
||||
@@ -2539,4 +2709,5 @@ _initialize_svr4_solib (void)
|
||||
svr4_so_ops.lookup_lib_global_symbol = elf_lookup_lib_symbol;
|
||||
svr4_so_ops.same = svr4_same;
|
||||
svr4_so_ops.keep_data_in_core = svr4_keep_data_in_core;
|
||||
+ svr4_so_ops.update_breakpoints = svr4_update_solib_event_breakpoints;
|
||||
}
|
||||
diff --git a/gdb/solib.c b/gdb/solib.c
|
||||
index 3296ed4..7ba70ce 100644
|
||||
--- a/gdb/solib.c
|
||||
+++ b/gdb/solib.c
|
||||
@@ -1313,6 +1313,18 @@ no_shared_libraries (char *ignored, int from_tty)
|
||||
Index: gdb-7.4.50.20120103/gdb/solib.c
|
||||
===================================================================
|
||||
--- gdb-7.4.50.20120103.orig/gdb/solib.c 2012-01-04 00:26:15.000000000 +0100
|
||||
+++ gdb-7.4.50.20120103/gdb/solib.c 2012-01-04 00:29:07.751200038 +0100
|
||||
@@ -1214,6 +1214,18 @@ no_shared_libraries (char *ignored, int
|
||||
objfile_purge_solibs ();
|
||||
}
|
||||
|
||||
@ -325,24 +325,24 @@ index 3296ed4..7ba70ce 100644
|
||||
/* Reload shared libraries, but avoid reloading the same symbol file
|
||||
we already have loaded. */
|
||||
|
||||
diff --git a/gdb/solib.h b/gdb/solib.h
|
||||
index c473d85..7b3881c 100644
|
||||
--- a/gdb/solib.h
|
||||
+++ b/gdb/solib.h
|
||||
@@ -78,4 +78,8 @@ extern void set_solib_ops (struct gdbarch *gdbarch,
|
||||
|
||||
extern int libpthread_name_p (const char *name);
|
||||
Index: gdb-7.4.50.20120103/gdb/solib.h
|
||||
===================================================================
|
||||
--- gdb-7.4.50.20120103.orig/gdb/solib.h 2011-08-30 04:48:05.000000000 +0200
|
||||
+++ gdb-7.4.50.20120103/gdb/solib.h 2012-01-04 00:27:40.415533686 +0100
|
||||
@@ -91,4 +91,8 @@ extern CORE_ADDR bfd_lookup_symbol_from_
|
||||
void *),
|
||||
void *data);
|
||||
|
||||
+/* Enable or disable optional solib event breakpoints as appropriate. */
|
||||
+
|
||||
+extern void update_solib_breakpoints (void);
|
||||
+
|
||||
#endif /* SOLIB_H */
|
||||
diff --git a/gdb/solist.h b/gdb/solist.h
|
||||
index dad11be..14ede10 100644
|
||||
--- a/gdb/solist.h
|
||||
+++ b/gdb/solist.h
|
||||
@@ -137,6 +137,13 @@ struct target_so_ops
|
||||
Index: gdb-7.4.50.20120103/gdb/solist.h
|
||||
===================================================================
|
||||
--- gdb-7.4.50.20120103.orig/gdb/solist.h 2011-08-09 14:51:47.000000000 +0200
|
||||
+++ gdb-7.4.50.20120103/gdb/solist.h 2012-01-04 00:26:21.962833383 +0100
|
||||
@@ -149,6 +149,13 @@ struct target_so_ops
|
||||
core file (in particular, for readonly sections). */
|
||||
int (*keep_data_in_core) (CORE_ADDR vaddr,
|
||||
unsigned long size);
|
||||
|
@ -15,7 +15,7 @@ But there is a problem with testsuite.unix non-unique subdir name and also
|
||||
a problem with make -j parallelization of the testsuite.
|
||||
|
||||
--- gdb-7.3.50.20110722/gdb/testsuite/lib/future.exp 2011-10-11 16:44:05.000000000 +0200
|
||||
+++ gdb-7.3.50.20110722/gdb/testsuite/lib/future.exp2 2011-10-11 16:44:10.000000000 +0200
|
||||
+++ gdb-7.3.50.20110722/gdb/testsuite/lib/future.exp 2011-10-11 16:44:10.000000000 +0200
|
||||
@@ -77,6 +77,10 @@ proc gdb_default_target_compile {source
|
||||
set ldflags ""
|
||||
set dest [target_info name]
|
||||
|
25
gdb.spec
25
gdb.spec
@ -27,7 +27,7 @@ Version: 7.4.50.20120103
|
||||
|
||||
# The release always contains a leading reserved number, start it at 1.
|
||||
# `upstream' is not a part of `name' to stay fully rpm dependencies compatible for the testing.
|
||||
Release: 2%{?_with_upstream:.upstream}%{?dist}
|
||||
Release: 3%{?_with_upstream:.upstream}%{?dist}
|
||||
|
||||
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ and GPLv2+ with exceptions and GPL+ and LGPLv2+ and BSD and Public Domain
|
||||
Group: Development/Debuggers
|
||||
@ -369,12 +369,7 @@ Patch348: gdb-6.8-bz466901-backtrace-full-prelinked.patch
|
||||
|
||||
# The merged branch `archer-jankratochvil-fedora15' of:
|
||||
# http://sourceware.org/gdb/wiki/ProjectArcher
|
||||
#=push
|
||||
#archer-jankratochvil-vla
|
||||
#=push
|
||||
#archer-jankratochvil-watchpoint3
|
||||
#=push
|
||||
#archer-jankratochvil-ifunc
|
||||
#=push+work
|
||||
Patch349: gdb-archer.patch
|
||||
|
||||
# Fix parsing elf64-i386 files for kdump PAE vmcore dumps (BZ 457187).
|
||||
@ -487,11 +482,11 @@ Patch526: gdb-bz634108-solib_address.patch
|
||||
Patch542: gdb-test-pid0-core.patch
|
||||
|
||||
# [archer-tromey-delayed-symfile] New test gdb.dwarf2/dw2-aranges.exp.
|
||||
# =fedoratest
|
||||
#=fedoratest
|
||||
Patch547: gdb-test-dw2-aranges.patch
|
||||
|
||||
# [archer-keiths-expr-cumulative+upstream] Import C++ testcases.
|
||||
# =fedoratest
|
||||
#=fedoratest
|
||||
Patch548: gdb-test-expr-cumulative-archer.patch
|
||||
|
||||
# Toolchain on sparc is slightly broken and debuginfo files are generated
|
||||
@ -505,19 +500,24 @@ Patch548: gdb-test-expr-cumulative-archer.patch
|
||||
#
|
||||
# While we figure out what's wrong in the toolchain and do a full archive
|
||||
# rebuild to fix it, we need to be able to use gdb :)
|
||||
#=push+work
|
||||
Patch579: gdb-7.2.50-sparc-add-workaround-to-broken-debug-files.patch
|
||||
|
||||
# Fix dlopen of libpthread.so, patched glibc required (Gary Benson, BZ 669432).
|
||||
#FIXME:Patch618: gdb-dlopen-stap-probe.patch
|
||||
#=push
|
||||
Patch618: gdb-dlopen-stap-probe.patch
|
||||
Patch619: gdb-dlopen-stap-probe-test.patch
|
||||
|
||||
# Work around PR libc/13097 "linux-vdso.so.1" warning message.
|
||||
#=push
|
||||
Patch627: gdb-glibc-vdso-workaround.patch
|
||||
|
||||
# Hack for proper PIE run of the testsuite.
|
||||
#=push+work
|
||||
Patch634: gdb-runtest-pie-override.patch
|
||||
|
||||
# Fix zero registers core files w/gcc-4.7.
|
||||
#=push
|
||||
Patch638: gdb-gcc47-gcore-zero.patch
|
||||
|
||||
BuildRequires: ncurses-devel%{?_isa} texinfo gettext flex bison expat-devel%{?_isa}
|
||||
@ -777,7 +777,7 @@ rm -f gdb/jv-exp.c gdb/m2-exp.c gdb/objc-exp.c gdb/p-exp.c
|
||||
%patch547 -p1
|
||||
%patch548 -p1
|
||||
%patch579 -p1
|
||||
#FIXME:patch618 -p1
|
||||
%patch618 -p1
|
||||
%patch619 -p1
|
||||
%patch627 -p1
|
||||
%patch634 -p1
|
||||
@ -1197,6 +1197,9 @@ fi
|
||||
%{_infodir}/gdb.info*
|
||||
|
||||
%changelog
|
||||
* Wed Jan 4 2012 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.4.50.20120103-3.fc17
|
||||
- Reinclude gdb-dlopen-stap-probe.patch (missing in Fedora glibc - BZ 752476).
|
||||
|
||||
* Tue Jan 3 2012 Jan Kratochvil <jan.kratochvil@redhat.com> - 7.4.50.20120103-2.fc17
|
||||
- Fix SystemTap support regression on i686 (Sergio Durigan Junior).
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user