All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/1] systemtap 'crosstap' fix
@ 2013-02-02  0:34 tom.zanussi
  2013-02-02  0:34 ` [PATCH 1/1] systemtap: make session copy constructor pick up kernel builddir tom.zanussi
  2013-02-02 13:12 ` [PATCH 0/1] systemtap 'crosstap' fix Tom Zanussi
  0 siblings, 2 replies; 4+ messages in thread
From: tom.zanussi @ 2013-02-02  0:34 UTC (permalink / raw)
  To: openembedded-core; +Cc: Tom Zanussi

From: Tom Zanussi <tom.zanussi@linux.intel.com>

This is a patch to systemtap and fixes a problem where a passed-in
builddir gets lost in the session copy constructor when connecting
to remote hosts, resulting in failed script compilation.

The patch has been submitted upstream but no feedback yet.

The following changes since commit 75f470cd18d693a9a96d9849291c2c8de4dcbeb8:

  qt4: Add space for _appends (2013-02-01 22:49:47 +0000)

are available in the git repository at:

  git://git.yoctoproject.org/poky-contrib.git tzanussi/systemtap-constructor-fix
  http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/log/?h=tzanussi/systemtap-constructor-fix

Tom Zanussi (1):
  systemtap: make session copy constructor pick up kernel builddir

 .../systemtap/systemtap/copy-constructor-builddir.patch | 17 +++++++++++++++++
 meta/recipes-kernel/systemtap/systemtap_git.bb          |  2 +-
 meta/recipes-kernel/systemtap/systemtap_git.inc         |  1 +
 3 files changed, 19 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-kernel/systemtap/systemtap/copy-constructor-builddir.patch

-- 
1.7.11.4




^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH 1/1] systemtap: make session copy constructor pick up kernel builddir
  2013-02-02  0:34 [PATCH 0/1] systemtap 'crosstap' fix tom.zanussi
@ 2013-02-02  0:34 ` tom.zanussi
  2013-02-02 13:12 ` [PATCH 0/1] systemtap 'crosstap' fix Tom Zanussi
  1 sibling, 0 replies; 4+ messages in thread
From: tom.zanussi @ 2013-02-02  0:34 UTC (permalink / raw)
  To: openembedded-core; +Cc: Tom Zanussi

From: Tom Zanussi <tom.zanussi@linux.intel.com>

When using the stap -r option with a full path to a kernel build tree
(i.e. one starting with /) along with --remote to execute the script
on a remote system, the build tree that I passed in was ignored and it
used some default locally-constructed location instead:

Checking "/lib/modules/3.4.24-yocto-standard/build/.config" failed
with error: No such file or directory

I traced it down to the s->clone() call in the path
ssh_remote->connect()->set_child_fds(), which unconditionally invokes
the following in the systemtap_session copy constructor:

   kernel_build_tree = "/lib/modules/" + kernel_release + "/build";

That doesn't seem correct - it seems to me it should be preserving the
value from the passed-in session object, which is what this does.

Fixes [YOCTO #3756]

Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
---
 .../systemtap/systemtap/copy-constructor-builddir.patch | 17 +++++++++++++++++
 meta/recipes-kernel/systemtap/systemtap_git.bb          |  2 +-
 meta/recipes-kernel/systemtap/systemtap_git.inc         |  1 +
 3 files changed, 19 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-kernel/systemtap/systemtap/copy-constructor-builddir.patch

diff --git a/meta/recipes-kernel/systemtap/systemtap/copy-constructor-builddir.patch b/meta/recipes-kernel/systemtap/systemtap/copy-constructor-builddir.patch
new file mode 100644
index 0000000..27a569b
--- /dev/null
+++ b/meta/recipes-kernel/systemtap/systemtap/copy-constructor-builddir.patch
@@ -0,0 +1,17 @@
+Upstream-Status: Pending
+
+Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
+
+Index: git/session.cxx
+===================================================================
+--- git.orig/session.cxx
++++ git/session.cxx
+@@ -254,7 +254,7 @@ systemtap_session::systemtap_session (co
+   last_token (0)
+ {
+   release = kernel_release = kern;
+-  kernel_build_tree = "/lib/modules/" + kernel_release + "/build";
++  kernel_build_tree = other.kernel_build_tree;
+   architecture = machine = normalize_machine(arch);
+   setup_kernel_release(kern.c_str());
+   native_build = false; // assumed; XXX: could be computed as in check_options()
diff --git a/meta/recipes-kernel/systemtap/systemtap_git.bb b/meta/recipes-kernel/systemtap/systemtap_git.bb
index a490a2e..7fc92c8 100644
--- a/meta/recipes-kernel/systemtap/systemtap_git.bb
+++ b/meta/recipes-kernel/systemtap/systemtap_git.bb
@@ -6,7 +6,7 @@ DEPENDS = "elfutils sqlite3 systemtap-native"
 DEPENDS_class-native = "elfutils-native sqlite3-native gettext-native"
 DEPENDS_class-nativesdk = "nativesdk-elfutils nativesdk-sqlite3 nativesdk-gettext"
 
-PR = "r0"
+PR = "r1"
 
 EXTRA_OECONF += "--with-libelf=${STAGING_DIR_TARGET} --without-rpm \
             --without-nss --without-avahi \
diff --git a/meta/recipes-kernel/systemtap/systemtap_git.inc b/meta/recipes-kernel/systemtap/systemtap_git.inc
index 3e7bc7b..731b755 100644
--- a/meta/recipes-kernel/systemtap/systemtap_git.inc
+++ b/meta/recipes-kernel/systemtap/systemtap_git.inc
@@ -6,6 +6,7 @@ PV = "1.8+git${SRCPV}"
 
 SRC_URI = "git://sourceware.org/git/systemtap.git;protocol=git \
            file://docproc-build-fix.patch \
+           file://copy-constructor-builddir.patch \
           "
 
 FILESPATH = "${FILE_DIRNAME}/systemtap"
-- 
1.7.11.4




^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH 0/1] systemtap 'crosstap' fix
  2013-02-02  0:34 [PATCH 0/1] systemtap 'crosstap' fix tom.zanussi
  2013-02-02  0:34 ` [PATCH 1/1] systemtap: make session copy constructor pick up kernel builddir tom.zanussi
@ 2013-02-02 13:12 ` Tom Zanussi
  1 sibling, 0 replies; 4+ messages in thread
From: Tom Zanussi @ 2013-02-02 13:12 UTC (permalink / raw)
  To: openembedded-core

On Fri, 2013-02-01 at 18:34 -0600, tom.zanussi@linux.intel.com wrote:
> From: Tom Zanussi <tom.zanussi@linux.intel.com>
> 
> This is a patch to systemtap and fixes a problem where a passed-in
> builddir gets lost in the session copy constructor when connecting
> to remote hosts, resulting in failed script compilation.
> 
> The patch has been submitted upstream but no feedback yet.
> 

Please hold off on this - it works but there may be a better way...

Thanks,

Tom

> The following changes since commit 75f470cd18d693a9a96d9849291c2c8de4dcbeb8:
> 
>   qt4: Add space for _appends (2013-02-01 22:49:47 +0000)
> 
> are available in the git repository at:
> 
>   git://git.yoctoproject.org/poky-contrib.git tzanussi/systemtap-constructor-fix
>   http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/log/?h=tzanussi/systemtap-constructor-fix
> 
> Tom Zanussi (1):
>   systemtap: make session copy constructor pick up kernel builddir
> 
>  .../systemtap/systemtap/copy-constructor-builddir.patch | 17 +++++++++++++++++
>  meta/recipes-kernel/systemtap/systemtap_git.bb          |  2 +-
>  meta/recipes-kernel/systemtap/systemtap_git.inc         |  1 +
>  3 files changed, 19 insertions(+), 1 deletion(-)
>  create mode 100644 meta/recipes-kernel/systemtap/systemtap/copy-constructor-builddir.patch
> 





^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH 0/1] systemtap 'crosstap' fix
@ 2013-02-05 14:26 tom.zanussi
  0 siblings, 0 replies; 4+ messages in thread
From: tom.zanussi @ 2013-02-05 14:26 UTC (permalink / raw)
  To: openembedded-core; +Cc: Tom Zanussi

From: Tom Zanussi <tom.zanussi@linux.intel.com>

This is a patch to crosstap which fixes a problem where a passed-in
builddir gets lost in the session copy constructor when connecting
to remote hosts, resulting in failed script compilation.

The problem turned out to be simple hyphen/underscore confusion.

The following changes since commit 7e9cb437b1b720e656f4a33f73c07c5dc7356a2c:

  dropbear: fix RPROVIDES (2013-02-04 23:31:02 +0000)

are available in the git repository at:

  git://git.yoctoproject.org/poky-contrib.git tzanussi/crosstap-x86-64-fix
  http://git.yoctoproject.org/cgit.cgi//log/?h=tzanussi/crosstap-x86-64-fix

Tom Zanussi (1):
  crosstap: handle hyphenated x86_64 target arch

 scripts/crosstap | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

-- 
1.7.11.4




^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-02-05 14:42 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-02-02  0:34 [PATCH 0/1] systemtap 'crosstap' fix tom.zanussi
2013-02-02  0:34 ` [PATCH 1/1] systemtap: make session copy constructor pick up kernel builddir tom.zanussi
2013-02-02 13:12 ` [PATCH 0/1] systemtap 'crosstap' fix Tom Zanussi
2013-02-05 14:26 tom.zanussi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.