]> git.ipfire.org Git - thirdparty/apache/httpd.git/commitdiff
Align proxy_worker_shared in slotmem shm
authorRainer Jung <rjung@apache.org>
Mon, 17 Jan 2011 22:16:51 +0000 (22:16 +0000)
committerRainer Jung <rjung@apache.org>
Mon, 17 Jan 2011 22:16:51 +0000 (22:16 +0000)
using default APR alignment.

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1060112 13f79535-47bb-0310-9956-ffa450edef68

modules/proxy/mod_proxy.h
modules/proxy/mod_proxy_balancer.c

index b66d524e1af568fd63e0112788a6a16e02a7316a..8e4b608800208dd042d4248f25944dacdbe90a9d 100644 (file)
@@ -336,6 +336,8 @@ typedef struct {
     unsigned int     disablereuse_set:1;
 } proxy_worker_shared;
 
+#define ALIGNED_PROXY_WORKER_SHARED_SIZE (APR_ALIGN_DEFAULT(sizeof(proxy_worker_shared)))
+
 /* Worker configuration */
 struct proxy_worker {
     int             index;      /* shm array index */
index fb4cc788f863e596599f967f0e3f8424d17bb3f0..677ab7402399ba0e5f1ee16f3949b10608c4c4c3 100644 (file)
@@ -753,11 +753,12 @@ static int balancer_post_config(apr_pool_t *pconf, apr_pool_t *plog,
 
             ap_log_error(APLOG_MARK, APLOG_DEBUG, 0, s, "Doing create: %s (%s), %d, %d",
                          balancer->name, balancer->sname,
-                         (int)sizeof(proxy_worker_shared),
+                         (int)ALIGNED_PROXY_WORKER_SHARED_SIZE,
                          (int)balancer->max_workers);
 
-            rv = storage->create(&new, balancer->sname, sizeof(proxy_worker_shared),
-                            balancer->max_workers, AP_SLOTMEM_TYPE_PREGRAB, pconf);
+            rv = storage->create(&new, balancer->sname,
+                                 ALIGNED_PROXY_WORKER_SHARED_SIZE,
+                                 balancer->max_workers, AP_SLOTMEM_TYPE_PREGRAB, pconf);
             if (rv != APR_SUCCESS) {
                 ap_log_error(APLOG_MARK, APLOG_EMERG, rv, s, "slotmem_create failed");
                 return !OK;