rpms/kerneloops/devel kerneloops-performance.patch, NONE, 1.1 kerneloops.spec, 1.5, 1.6

Chuck Ebbert (cebbert) fedora-extras-commits at redhat.com
Mon Mar 17 17:23:52 UTC 2008


Author: cebbert

Update of /cvs/pkgs/rpms/kerneloops/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv30021

Modified Files:
	kerneloops.spec 
Added Files:
	kerneloops-performance.patch 
Log Message:
* Mon Mar 17 2008 Chuck Ebbert <cebbert at redhat.com>  0.10-7
- Fix high CPU usage on startup with large system logs (#435544)


kerneloops-performance.patch:

--- NEW FILE kerneloops-performance.patch ---
Index: kerneloops-0.10/dmesg.c
===================================================================
--- kerneloops-0.10.orig/dmesg.c
+++ kerneloops-0.10/dmesg.c
@@ -1,3 +1,4 @@
+#define _GNU_SOURCE
 /*
  * Copyright 2007, Intel Corporation
  *
@@ -52,20 +53,25 @@ static void fill_linepointers(char *buff
 	linecount = 0;
 	c = buffer;
 	while (c) {
+		int len = 0;
+		char *c9;
+
+		c9 = strchr(c, '\n');
+		if (c9)
+			len = c9 - c;
+
 		/* in /var/log/messages, we need to strip the first part off, upto the 3rd ':' */
 		if (remove_syslog) {
 			char *c2;
-			char *c3;
 
-			c3 = strchr(c, '\n');
 			/* skip non-kernel lines */
-			c2 = strstr(c, "kernel:");
-			if (!c2 || (c2 > c3))
-				c2 = strstr(c, "kerneloops:");
-			if (!c2 || (c2 > c3)) {
-				c2 = strchr(c, '\n');
+			c2 = memmem(c, len, "kernel:", 7);
+			if (!c2)
+				c2 = memmem(c, len, "kerneloops:", 11);
+			if (!c2) {
+				c2 = c9;
 				if (c2) {
-					c = c2+1;
+					c = c2 + 1;
 					continue;
 				} else
 					break;


Index: kerneloops.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kerneloops/devel/kerneloops.spec,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- kerneloops.spec	4 Mar 2008 22:27:04 -0000	1.5
+++ kerneloops.spec	17 Mar 2008 17:23:15 -0000	1.6
@@ -1,6 +1,6 @@
 Name:		kerneloops
 Version:	0.10
-Release:	6%{?dist}
+Release:	7%{?dist}
 Summary:	Tool to automatically collect and submit kernel crash signatures
 
 Group:		System Environment/Base
@@ -10,6 +10,7 @@
 Patch0:		kerneloops-fix-manfile-name.patch
 Patch1:		kerneloops-ignore-module-list.patch
 Patch2:		kerneloops-require-syslog-on-shutdown.patch
+Patch3:		kerneloops-performance.patch
 
 BuildRoot:	%(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
 
@@ -28,12 +29,12 @@
 crash signatures get collected and grouped for presentation to the
 Linux kernel developers.
 
-
 %prep
 %setup -q
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
+%patch0 -p1 -F1
+%patch1 -p1 -F1
+%patch2 -p1 -F1
+%patch3 -p1 -F1
 
 %build
 make CFLAGS="$RPM_OPT_FLAGS" %{?_smp_mflags}
@@ -61,7 +62,6 @@
 	/sbin/chkconfig --del %{name}
 fi
 
-
 %files -f %{name}.lang
 %defattr(-,root,root)
 %doc COPYING Changelog
@@ -75,6 +75,9 @@
 %doc %{_mandir}/man8/kerneloops.8.gz
 
 %changelog
+* Mon Mar 17 2008 Chuck Ebbert <cebbert at redhat.com>  0.10-7
+- Fix high CPU usage on startup with large system logs (#435544)
+
 * Tue Mar 04 2008 Chuck Ebbert <cebbert at redhat.com>  0.10-6
 - Fix the preun script to use a numeric comparison.
 - Require syslog to be running when shutting down. (#433413)




More information about the fedora-extras-commits mailing list