summaryrefslogtreecommitdiff
path: root/libre/linux-libre
diff options
context:
space:
mode:
authorNicolás Reynolds <fauno@kiwwwi.com.ar>2013-01-20 11:58:19 -0300
committerNicolás Reynolds <fauno@kiwwwi.com.ar>2013-01-20 11:58:19 -0300
commiteefed5e3db847eccce0207f89c7430b9ec4994b7 (patch)
tree95f51b20a40ad67959cc9be5cdd7f0a5831a99d5 /libre/linux-libre
parentc822e72767a8f7f3e97aa44f9c57d0d92fd98070 (diff)
parent24633b6f6af8dc77ca77224448d226d8e99c9ce1 (diff)
Merge branch 'master' of gparabola:abslibre-mips64el
Conflicts: extra/graphite/PKGBUILD
Diffstat (limited to 'libre/linux-libre')
-rw-r--r--libre/linux-libre/PKGBUILD14
-rw-r--r--libre/linux-libre/fix-watchdog-3.7.patch38
-rw-r--r--libre/linux-libre/linux-libre.install2
3 files changed, 49 insertions, 5 deletions
diff --git a/libre/linux-libre/PKGBUILD b/libre/linux-libre/PKGBUILD
index 2c24f3883..162169e03 100644
--- a/libre/linux-libre/PKGBUILD
+++ b/libre/linux-libre/PKGBUILD
@@ -12,8 +12,8 @@ pkgbase=linux-libre # Build stock -LIBRE kernel
_basekernel=3.7
_sublevel=1
pkgver=${_basekernel}.${_sublevel}
-pkgrel=1
-_lxopkgver=${_basekernel}.0 # nearly always the same as pkgver
+pkgrel=2.1
+_lxopkgver=${_basekernel}.1 # nearly always the same as pkgver
arch=('i686' 'x86_64' 'mips64el')
url="http://linux-libre.fsfla.org/"
license=('GPL2')
@@ -30,6 +30,7 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_basekernel}-gn
'boot-logo.patch'
'change-default-console-loglevel.patch'
'fat-3.6.x.patch'
+ 'fix-watchdog-3.7.patch'
"http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}-gnu_0loongsonlibre_mipsel.tar.bz2")
md5sums=('06bf9601d859531e7378eb43d4ca7dd3'
'6f4bb80d3d91b69daf5ccfea836d02df'
@@ -41,7 +42,8 @@ md5sums=('06bf9601d859531e7378eb43d4ca7dd3'
'04b21c79df0a952c22d681dd4f4562df'
'9d3c56a4b999c8bfbd4018089a62f662'
'88d501404f172dac6fcb248978251560'
- '0a74f8d9c640daabb774c25cb74db512')
+ '3485d6c7ae3af35d16e09d6d9a7ed32a'
+ 'b56c33eaee920970151fffdfc7df0766')
if [ "$CARCH" != "mips64el" ]; then
# Don't use the Loongson-specific patches on non-mips64el arches.
unset source[${#source[@]}-1]
@@ -70,6 +72,10 @@ build() {
# https://bugs.archlinux.org/task/32916
patch -Np1 -i "${srcdir}/fat-3.6.x.patch"
+ # fix watchdog enable/disable regression
+ # https://bugs.archlinux.org/task/33095
+ patch -Np1 -i "${srcdir}/fix-watchdog-3.7.patch"
+
if [ "$CARCH" == "mips64el" ]; then
sed -i "s|^EXTRAVERSION.*|EXTRAVERSION =-libre|" Makefile
sed -r "s|^( SUBLEVEL = ).*|\1$_sublevel|" \
@@ -387,7 +393,7 @@ _package-headers() {
}
_package-docs() {
- pkgdesc="Kernel libre hackers manual - HTML documentation that comes with the ${pkgbase} kernel"
+ pkgdesc="Kernel hackers manual - HTML documentation that comes with the ${pkgbase} kernel"
provides=("kernel26${_kernelname}-docs=${pkgver}" "linux${_kernelname}-docs=${pkgver}")
conflicts=("kernel26${_kernelname}-docs" "kernel26-libre${_kernelname}-docs" "linux${_kernelname}-docs")
replaces=("kernel26${_kernelname}-docs" "kernel26-libre${_kernelname}-docs" "linux${_kernelname}-docs")
diff --git a/libre/linux-libre/fix-watchdog-3.7.patch b/libre/linux-libre/fix-watchdog-3.7.patch
new file mode 100644
index 000000000..fe4431604
--- /dev/null
+++ b/libre/linux-libre/fix-watchdog-3.7.patch
@@ -0,0 +1,38 @@
+X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux.git;a=blobdiff_plain;f=kernel%2Fwatchdog.c;h=75a2ab3d0b0208dfa51e40339ffd00206622732e;hp=997c6a16ec2278969a10f251f63f237e7559d42e;hb=3935e89505a1c3ab3f3b0c7ef0eae54124f48905;hpb=74779e22261172ea728b989310f6ecc991b57d62
+
+diff --git a/kernel/watchdog.c b/kernel/watchdog.c
+index 997c6a1..75a2ab3 100644
+--- a/kernel/watchdog.c
++++ b/kernel/watchdog.c
+@@ -344,6 +344,10 @@ static void watchdog_enable(unsigned int cpu)
+ {
+ struct hrtimer *hrtimer = &__raw_get_cpu_var(watchdog_hrtimer);
+
++ /* kick off the timer for the hardlockup detector */
++ hrtimer_init(hrtimer, CLOCK_MONOTONIC, HRTIMER_MODE_REL);
++ hrtimer->function = watchdog_timer_fn;
++
+ if (!watchdog_enabled) {
+ kthread_park(current);
+ return;
+@@ -352,10 +356,6 @@ static void watchdog_enable(unsigned int cpu)
+ /* Enable the perf event */
+ watchdog_nmi_enable(cpu);
+
+- /* kick off the timer for the hardlockup detector */
+- hrtimer_init(hrtimer, CLOCK_MONOTONIC, HRTIMER_MODE_REL);
+- hrtimer->function = watchdog_timer_fn;
+-
+ /* done here because hrtimer_start can only pin to smp_processor_id() */
+ hrtimer_start(hrtimer, ns_to_ktime(sample_period),
+ HRTIMER_MODE_REL_PINNED);
+@@ -369,9 +369,6 @@ static void watchdog_disable(unsigned int cpu)
+ {
+ struct hrtimer *hrtimer = &__raw_get_cpu_var(watchdog_hrtimer);
+
+- if (!watchdog_enabled)
+- return;
+-
+ watchdog_set_prio(SCHED_NORMAL, 0);
+ hrtimer_cancel(hrtimer);
+ /* disable the perf event */
diff --git a/libre/linux-libre/linux-libre.install b/libre/linux-libre/linux-libre.install
index e8f8b6979..61aa977c0 100644
--- a/libre/linux-libre/linux-libre.install
+++ b/libre/linux-libre/linux-libre.install
@@ -2,7 +2,7 @@
# arg 2: the old package version
KERNEL_NAME=
-KERNEL_VERSION=3.7.1-1-LIBRE
+KERNEL_VERSION=3.7.1-2.1-LIBRE
# set a sane PATH to ensure that critical utils like depmod will be found
export PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'