mbox series

[SRU,v2,B/C/D/U,0/1] build and install libperf-jvmti.so

Message ID 20190521135203.10944-1-cascardo@canonical.com
Headers show
Series build and install libperf-jvmti.so | expand

Message

Thadeu Lima de Souza Cascardo May 21, 2019, 1:52 p.m. UTC
BugLink: https://bugs.launchpad.net/bugs/1761379

Note that this introduces new build dependencies, and some builders might not
have them installed. This may cause test builds to fail, but that's because
some build scripts don't check for build dependencies. Please, make sure these
new build dependencies are installed when build testing.

Note that this has also been tested on derivatives. The same patch has been
applied, as if a rebase has been done, and it was verified that the build has
not failed. We may not want this new library on some derivatives, so the patch
has been written in a way that derivatives will need to opt-in. On the other
hand, they will not fail to build after a rebase that includes this patch.

[Impact]
File libperf-jvmti.so is missing in linux-tools-common deb making it
impossible to use perf for the JVM JITed methods.

[Test case]
$ sudo perf record -k 1 -e instructions:u ./java -agentpath:/usr/lib/linux-tools-5.0.0-8/libperf-jvmti.so crc32
$ sudo perf inject -i ./perf.data -j -o ./perf.data.jitted
$ sudo perf report -f -i ./perf.data.jitted

[Fix]
Include java build dependencies and install the library into linux-tools
package.

[Regression potential]
Small regression potential, an extra file is distributed and is not
automatically linked to anything. It could impact the build, which was
tested.

Thadeu Lima de Souza Cascardo (1):
  UBUNTU: [Packaging] Support building libperf-jvmti.so

 debian.master/control.stub.in    | 2 ++
 debian.master/rules.d/amd64.mk   | 1 +
 debian.master/rules.d/arm64.mk   | 1 +
 debian.master/rules.d/armhf.mk   | 1 +
 debian.master/rules.d/i386.mk    | 1 +
 debian.master/rules.d/ppc64el.mk | 1 +
 debian.master/rules.d/s390x.mk   | 1 +
 debian/rules                     | 1 +
 debian/rules.d/2-binary-arch.mk  | 6 ++++++
 9 files changed, 15 insertions(+)

Comments

Colin Ian King May 30, 2019, 2:52 p.m. UTC | #1
On 21/05/2019 14:52, Thadeu Lima de Souza Cascardo wrote:
> BugLink: https://bugs.launchpad.net/bugs/1761379
> 
> Note that this introduces new build dependencies, and some builders might not
> have them installed. This may cause test builds to fail, but that's because
> some build scripts don't check for build dependencies. Please, make sure these
> new build dependencies are installed when build testing.
> 
> Note that this has also been tested on derivatives. The same patch has been
> applied, as if a rebase has been done, and it was verified that the build has
> not failed. We may not want this new library on some derivatives, so the patch
> has been written in a way that derivatives will need to opt-in. On the other
> hand, they will not fail to build after a rebase that includes this patch.
> 
> [Impact]
> File libperf-jvmti.so is missing in linux-tools-common deb making it
> impossible to use perf for the JVM JITed methods.
> 
> [Test case]
> $ sudo perf record -k 1 -e instructions:u ./java -agentpath:/usr/lib/linux-tools-5.0.0-8/libperf-jvmti.so crc32
> $ sudo perf inject -i ./perf.data -j -o ./perf.data.jitted
> $ sudo perf report -f -i ./perf.data.jitted
> 
> [Fix]
> Include java build dependencies and install the library into linux-tools
> package.
> 
> [Regression potential]
> Small regression potential, an extra file is distributed and is not
> automatically linked to anything. It could impact the build, which was
> tested.
> 
> Thadeu Lima de Souza Cascardo (1):
>   UBUNTU: [Packaging] Support building libperf-jvmti.so
> 
>  debian.master/control.stub.in    | 2 ++
>  debian.master/rules.d/amd64.mk   | 1 +
>  debian.master/rules.d/arm64.mk   | 1 +
>  debian.master/rules.d/armhf.mk   | 1 +
>  debian.master/rules.d/i386.mk    | 1 +
>  debian.master/rules.d/ppc64el.mk | 1 +
>  debian.master/rules.d/s390x.mk   | 1 +
>  debian/rules                     | 1 +
>  debian/rules.d/2-binary-arch.mk  | 6 ++++++
>  9 files changed, 15 insertions(+)
> 

From what I can see this looks OK. Regression potential is acceptable.

Acked-by: Colin Ian King <colin.king@canonical.com>
Seth Forshee May 30, 2019, 8:17 p.m. UTC | #2
On Tue, May 21, 2019 at 10:52:01AM -0300, Thadeu Lima de Souza Cascardo wrote:
> BugLink: https://bugs.launchpad.net/bugs/1761379
> 
> Note that this introduces new build dependencies, and some builders might not
> have them installed. This may cause test builds to fail, but that's because
> some build scripts don't check for build dependencies. Please, make sure these
> new build dependencies are installed when build testing.
> 
> Note that this has also been tested on derivatives. The same patch has been
> applied, as if a rebase has been done, and it was verified that the build has
> not failed. We may not want this new library on some derivatives, so the patch
> has been written in a way that derivatives will need to opt-in. On the other
> hand, they will not fail to build after a rebase that includes this patch.
> 
> [Impact]
> File libperf-jvmti.so is missing in linux-tools-common deb making it
> impossible to use perf for the JVM JITed methods.
> 
> [Test case]
> $ sudo perf record -k 1 -e instructions:u ./java -agentpath:/usr/lib/linux-tools-5.0.0-8/libperf-jvmti.so crc32
> $ sudo perf inject -i ./perf.data -j -o ./perf.data.jitted
> $ sudo perf report -f -i ./perf.data.jitted
> 
> [Fix]
> Include java build dependencies and install the library into linux-tools
> package.
> 
> [Regression potential]
> Small regression potential, an extra file is distributed and is not
> automatically linked to anything. It could impact the build, which was
> tested.

Applied to unstable/master, thanks!
Khalid Elmously May 30, 2019, 8:36 p.m. UTC | #3
On 2019-05-21 10:52:01 , Thadeu Lima de Souza Cascardo wrote:
> BugLink: https://bugs.launchpad.net/bugs/1761379
> 
> Note that this introduces new build dependencies, and some builders might not
> have them installed. This may cause test builds to fail, but that's because
> some build scripts don't check for build dependencies. Please, make sure these
> new build dependencies are installed when build testing.
> 
> Note that this has also been tested on derivatives. The same patch has been
> applied, as if a rebase has been done, and it was verified that the build has
> not failed. We may not want this new library on some derivatives, so the patch
> has been written in a way that derivatives will need to opt-in. On the other
> hand, they will not fail to build after a rebase that includes this patch.
> 
> [Impact]
> File libperf-jvmti.so is missing in linux-tools-common deb making it
> impossible to use perf for the JVM JITed methods.
> 
> [Test case]
> $ sudo perf record -k 1 -e instructions:u ./java -agentpath:/usr/lib/linux-tools-5.0.0-8/libperf-jvmti.so crc32
> $ sudo perf inject -i ./perf.data -j -o ./perf.data.jitted
> $ sudo perf report -f -i ./perf.data.jitted
> 
> [Fix]
> Include java build dependencies and install the library into linux-tools
> package.
> 
> [Regression potential]
> Small regression potential, an extra file is distributed and is not
> automatically linked to anything. It could impact the build, which was
> tested.
> 
> Thadeu Lima de Souza Cascardo (1):
>   UBUNTU: [Packaging] Support building libperf-jvmti.so
> 
>  debian.master/control.stub.in    | 2 ++
>  debian.master/rules.d/amd64.mk   | 1 +
>  debian.master/rules.d/arm64.mk   | 1 +
>  debian.master/rules.d/armhf.mk   | 1 +
>  debian.master/rules.d/i386.mk    | 1 +
>  debian.master/rules.d/ppc64el.mk | 1 +
>  debian.master/rules.d/s390x.mk   | 1 +
>  debian/rules                     | 1 +
>  debian/rules.d/2-binary-arch.mk  | 6 ++++++
>  9 files changed, 15 insertions(+)
> 
> -- 
> 2.20.1
> 
> 
> -- 
> kernel-team mailing list
> kernel-team@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team