From f7a657d37579c26645d5e745ac7d71ad3fe2fa72 Mon Sep 17 00:00:00 2001 From: Alessio Sergi Date: Wed, 22 Apr 2015 10:01:55 +0200 Subject: [PATCH] powertop: add upstream patch to fix crash when running with --auto-tune --- .../powertop/patches/powertop-autotune.patch | 49 +++++++++++++++++++ srcpkgs/powertop/template | 13 ++--- 2 files changed, 54 insertions(+), 8 deletions(-) create mode 100644 srcpkgs/powertop/patches/powertop-autotune.patch diff --git a/srcpkgs/powertop/patches/powertop-autotune.patch b/srcpkgs/powertop/patches/powertop-autotune.patch new file mode 100644 index 00000000000..cf843662c6e --- /dev/null +++ b/srcpkgs/powertop/patches/powertop-autotune.patch @@ -0,0 +1,49 @@ +From 6fd9ecebd3bc277bd91ce057f85f8e54b09bb0a9 Mon Sep 17 00:00:00 2001 +From: Michael Mullin +Date: Thu, 22 Jan 2015 16:50:10 -0500 +Subject: [PATCH] Powertop crashes with 'powertop --auto-tune' + +-----BEGIN PGP SIGNED MESSAGE----- +Hash: SHA256 + +Please see the following patch to address the reported crash +- --- +- From e994a414f619410877023fce35ade12d1cfce68d Mon Sep 17 00:00:00 2001 +From: Michael Mullin +Date: Thu, 22 Jan 2015 16:33:31 -0500 +Subject: [PATCH] If "dir" is closed early inside create_add_devfreq_devices() + then there is a potential double free due to a second close during the + cleanup phase in clear_all_devfreq() + +Signed-off-by: Michael Mullin + +- --- + src/devices/devfreq.cpp | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) +--- + src/devices/devfreq.cpp | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git src/devices/devfreq.cpp src/devices/devfreq.cpp +index d2e56e3..f652a57 100644 +--- src/devices/devfreq.cpp ++++ src/devices/devfreq.cpp +@@ -247,6 +247,7 @@ void create_all_devfreq_devices(void) + fprintf(stderr, "Devfreq not enabled\n"); + is_enabled = false; + closedir(dir); ++ dir = NULL; + return; + } + +@@ -327,6 +328,8 @@ void clear_all_devfreq() + } + all_devfreq.clear(); + /* close /sys/class/devfreq */ +- if (dir != NULL) ++ if (dir != NULL) { + closedir(dir); ++ dir = NULL; ++ } + } + diff --git a/srcpkgs/powertop/template b/srcpkgs/powertop/template index 04649340435..5f5a86a28a6 100644 --- a/srcpkgs/powertop/template +++ b/srcpkgs/powertop/template @@ -1,17 +1,14 @@ # Template file for 'powertop' pkgname=powertop version=2.7 -revision=1 +revision=2 build_style=gnu-configure -hostmakedepends="automake gettext-devel libtool pkg-config" +configure_args="--sbindir=/usr/bin" +hostmakedepends="pkg-config" makedepends="ncurses-devel pciutils-devel libnl3-devel" short_desc="Linux tool to find out what is using power on computer" maintainer="Juan RP " license="GPL-2" homepage="https://01.org/powertop/" -distfiles="https://github.com/fenrus75/powertop/archive/v${version}.tar.gz" -checksum=1a0ef64764a1ce9e2c8940a925f886a67ca61ca432adcd8c25b32a1abbc889e1 - -pre_configure() { - ./autogen.sh -} +distfiles="https://01.org/sites/default/files/downloads/powertop/powertop-${version}.tar.gz" +checksum=8d4b1490e2baad4467c0ded3c423db4472dcbf7b2dd8f8f2a928f54047c678ca