[gridsite/el5] added patch for segfault under high load.

Ricardo Rocha rocha at fedoraproject.org
Thu Sep 13 17:48:31 UTC 2012


commit a300f183962ae32da568e9a010d42329c7de0615
Author: rochaporto <rocha.porto at gmail.com>
Date:   Thu Sep 13 19:46:08 2012 +0200

    added patch for segfault under high load.

 gridsite-cred-segfault.patch |   24 ++++++++++++++++++++++++
 gridsite.spec                |   11 +++++++++--
 2 files changed, 33 insertions(+), 2 deletions(-)
---
diff --git a/gridsite-cred-segfault.patch b/gridsite-cred-segfault.patch
new file mode 100644
index 0000000..14973b0
--- /dev/null
+++ b/gridsite-cred-segfault.patch
@@ -0,0 +1,24 @@
+diff -rupN org.gridsite.core.ORIG/src/mod_gridsite.c org.gridsite.core/src/mod_gridsite.c
+--- org.gridsite.core.ORIG/src/mod_gridsite.c	2012-09-13 18:21:12.000000000 +0200
++++ org.gridsite.core/src/mod_gridsite.c	2012-09-13 18:21:24.000000000 +0200
+@@ -3237,12 +3237,14 @@ static int mod_gridsite_perm_handler(req
+     
+     apr_table_setn(r->notes, "GRST_PERM", apr_psprintf(r->pool, "%d", perm));
+ 
+-    cred = user->firstcred;
+-    if ((cred != NULL) && (strncmp(cred->auri, "dn:", 3) == 0))
+-      {
+-        apr_table_setn(r->notes, "GRST_CRED_AURI_0",
+-                       apr_psprintf(r->pool, "%s", cred->auri));
+-      }
++    if (user != NULL) {
++      cred = user->firstcred;
++      if ((cred != NULL) && (strncmp(cred->auri, "dn:", 3) == 0))
++        {
++          apr_table_setn(r->notes, "GRST_CRED_AURI_0",
++                         apr_psprintf(r->pool, "%s", cred->auri));
++        }
++    }
+         
+ 
+     if (((mod_gridsite_dir_cfg *) cfg)->envs)
diff --git a/gridsite.spec b/gridsite.spec
index 80f0f72..1e1f892 100644
--- a/gridsite.spec
+++ b/gridsite.spec
@@ -10,7 +10,7 @@
 
 Name:           gridsite
 Version:        1.7.21
-Release:        3%{?dist}
+Release:        4%{?dist}
 Summary:        Grid Security for the Web, Web platforms for Grids
 
 Group:          System Environment/Daemons
@@ -39,6 +39,9 @@ Patch2:         cgi-bin-location-1.5.20.patch
 #https://bugzilla.redhat.com/show_bug.cgi?id=612109
 #https://savannah.cern.ch/bugs/index.php?69632
 Patch3:         gridsite-include-1.5.20.patch
+# mod_gridsite segfaults randomly under high load
+# https://ggus.eu/tech/ticket_show.php?ticket=86044
+Patch4:         gridsite-cred-segfault.patch
 
 BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 
@@ -144,7 +147,7 @@ This package gridsite-doc, contains developer documentation for gridsite.
 Group:    System Environment/Daemons
 Summary:  Run time libraries for mod_gridsite and gridsite-clients
 Version:  %{vercompat}
-Release:  4%{?dist}
+Release:  5%{?dist}
 
 %description compat
 GridSite was originally a web application developed for managing and formatting 
@@ -175,6 +178,7 @@ cp -p %{SOURCE5} .
 
 ## Change installed path of cgi-bins.
 %patch1 -p1
+%patch4 -p1
 
 %build
 %if 0%{?compat}
@@ -350,6 +354,9 @@ rm -rf $RPM_BUILD_ROOT
 %doc src/doxygen LICENSE
 
 %changelog
+* Thu Sep 13 2012 Ricardo Rocha <ricardo.rocha at cern.ch> - 1.7.21-4
+- Added patch for segfault under high load
+
 * Thu Jul 19 2012 Ricardo Rocha <ricardo.rocha at cern.ch> - 1.7.21-3
 - Up release of compat package
 


More information about the scm-commits mailing list