[arch-commits] Commit in watchdog/trunk (3 files)

Thomas Bächler thomas at archlinux.org
Sun May 13 14:20:44 UTC 2012


    Date: Sunday, May 13, 2012 @ 10:20:44
  Author: thomas
Revision: 158940

upgpkg: watchdog 5.12-1: upstream update

Added:
  watchdog/trunk/watchdog-5.12-fix-oom-in-wd_keepalive.patch
Modified:
  watchdog/trunk/PKGBUILD
Deleted:
  watchdog/trunk/watchdog-5.9-use-oom_score_adj.patch

---------------------------------------------+
 PKGBUILD                                    |   12 +--
 watchdog-5.12-fix-oom-in-wd_keepalive.patch |   11 +++
 watchdog-5.9-use-oom_score_adj.patch        |   91 --------------------------
 3 files changed, 17 insertions(+), 97 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2012-05-13 13:55:33 UTC (rev 158939)
+++ PKGBUILD	2012-05-13 14:20:44 UTC (rev 158940)
@@ -2,8 +2,8 @@
 # Maintainer: Thomas Bächler <thomas at archlinux.org>
 
 pkgname=watchdog
-pkgver=5.9
-pkgrel=2
+pkgver=5.12
+pkgrel=1
 pkgdesc="Watchdog daemon"
 arch=(i686 x86_64)
 url="http://sourceforge.net/projects/watchdog"
@@ -15,16 +15,16 @@
 source=(http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz
         watchdog.sh
         watchdog.cf
-        watchdog-5.9-use-oom_score_adj.patch)
-md5sums=('d7cae3c9829f5d9a680764f314234867'
+        watchdog-5.12-fix-oom-in-wd_keepalive.patch)
+md5sums=('cea28bea70e54f3625062bc808aef9af'
          '854451f554718b55186599faaa8d85f6'
          '01c1e2e13f515131180b4ebe9b8b7cc3'
-         '9a1ab454e42a7f2969ef6bf2da8a4543')
+         'c90c2686975b5254f82b3de683f1f442')
 
 build() {
   cd "${srcdir}"/${pkgname}-${pkgver}
 
-  patch -p1 -i "${srcdir}"/watchdog-5.9-use-oom_score_adj.patch
+  patch -p1 -i "${srcdir}"/watchdog-5.12-fix-oom-in-wd_keepalive.patch
   ./configure \
 	--prefix=/usr \
 	--mandir=/usr/share/man \

Added: watchdog-5.12-fix-oom-in-wd_keepalive.patch
===================================================================
--- watchdog-5.12-fix-oom-in-wd_keepalive.patch	                        (rev 0)
+++ watchdog-5.12-fix-oom-in-wd_keepalive.patch	2012-05-13 14:20:44 UTC (rev 158940)
@@ -0,0 +1,11 @@
+diff -Nur watchdog-5.12.orig/src/wd_keepalive.c watchdog-5.12/src/wd_keepalive.c
+--- watchdog-5.12.orig/src/wd_keepalive.c	2012-04-05 12:16:33.000000000 +0200
++++ watchdog-5.12/src/wd_keepalive.c	2012-05-13 16:15:36.786543263 +0200
+@@ -26,6 +26,7 @@
+ #include <sys/mman.h>
+ #include <sys/ioctl.h>
+ #include <sys/wait.h>
++#include <linux/oom.h>
+ #include <linux/watchdog.h>
+ #include <libgen.h>
+ #include <string.h>

Deleted: watchdog-5.9-use-oom_score_adj.patch
===================================================================
--- watchdog-5.9-use-oom_score_adj.patch	2012-05-13 13:55:33 UTC (rev 158939)
+++ watchdog-5.9-use-oom_score_adj.patch	2012-05-13 14:20:44 UTC (rev 158940)
@@ -1,91 +0,0 @@
-diff -ur watchdog-5.9.orig/src/watchdog.c watchdog-5.9/src/watchdog.c
---- watchdog-5.9.orig/src/watchdog.c	2010-06-16 15:45:51.000000000 +0200
-+++ watchdog-5.9/src/watchdog.c	2011-10-23 15:51:58.631689778 +0200
-@@ -636,7 +636,7 @@
- 
-     /* allocate some memory to store a filename, this is needed later on even
-      * if the system runs out of memory */
--    filename_buf = (char*)malloc(max(strlen(logdir) + sizeof("/repair-bin.stdout") + 1, strlen("/proc//oom_adj") + sizeof(int) * CHAR_BIT * 10 / 3 + 1));
-+    filename_buf = (char*)malloc(max(strlen(logdir) + sizeof("/repair-bin.stdout") + 1, strlen("/proc//oom_score_adj") + sizeof(int) * CHAR_BIT * 10 / 3 + 1));
-     if (!filename_buf) {
- 	error(progname);
-         exit(1);
-@@ -886,11 +886,19 @@
- #endif
- 
-     /* tell oom killer to not kill this process */
--    sprintf(filename_buf, "/proc/%d/oom_adj", pid);
-+    sprintf(filename_buf, "/proc/%d/oom_score_adj", pid);
-     fp = fopen(filename_buf, "w");
-     if (fp != NULL) {
--	fprintf(fp, "-17\n");
--	(void) fclose(fp);
-+        fprintf(fp, "-1000\n");
-+        (void) fclose(fp);
-+    }
-+    else {
-+        sprintf(filename_buf, "/proc/%d/oom_adj", pid);
-+        fp = fopen(filename_buf, "w");
-+        if (fp != NULL) {
-+            fprintf(fp, "-17\n");
-+            (void) fclose(fp);
-+        }
-     }
- 
-     /* main loop: update after <tint> seconds */
-diff -ur watchdog-5.9.orig/src/wd_keepalive.c watchdog-5.9/src/wd_keepalive.c
---- watchdog-5.9.orig/src/wd_keepalive.c	2010-06-16 15:45:49.000000000 +0200
-+++ watchdog-5.9/src/wd_keepalive.c	2011-10-23 15:50:43.061563281 +0200
-@@ -212,7 +212,7 @@
-     FILE *fp;
-     char *configfile = CONFIG_FILENAME;
-     char *filename_buf;
--    pid_t child_pid;
-+    pid_t pid, child_pid;
-     int count = 0;
-     int c;
-     /* allow all options watchdog understands too */
-@@ -284,7 +284,7 @@
- 
-     /* allocate some memory to store a filename, this is needed later on even
-      * if the system runs out of memory */
--    filename_buf = (char*)malloc(strlen("/proc//oom_adj") + sizeof(int) * CHAR_BIT * 10 / 3 + 1);
-+    filename_buf = (char*)malloc(strlen("/proc//oom_score_adj") + sizeof(int) * CHAR_BIT * 10 / 3 + 1);
-     if (!filename_buf) {
-         error(progname);
-         exit(1);
-@@ -363,9 +363,10 @@
- #endif
- 
-     /* tuck my process id away */
-+    pid = getpid();
-     fp = fopen(KA_PIDFILE, "w");
-     if ( fp != NULL ) {
--        fprintf(fp, "%d\n", getpid());
-+        fprintf(fp, "%d\n", pid);
-         (void) fclose(fp);
-     }
- 
-@@ -403,12 +404,20 @@
- #endif
- 
-     /* tell oom killer to not kill this process */
--    sprintf(filename_buf, "/proc/%d/oom_adj", getpid());
-+    sprintf(filename_buf, "/proc/%d/oom_score_adj", pid);
-     fp = fopen(filename_buf, "w");
-     if (fp != NULL) {
--        fprintf(fp, "-17\n");
-+        fprintf(fp, "-1000\n");
-         (void) fclose(fp);
-     }
-+    else {
-+        sprintf(filename_buf, "/proc/%d/oom_adj", pid);
-+        fp = fopen(filename_buf, "w");
-+        if (fp != NULL) {
-+            fprintf(fp, "-17\n");
-+            (void) fclose(fp);
-+        }
-+    }
- 
-     /* main loop: update after <tint> seconds */
-     while ( _running ) {




More information about the arch-commits mailing list