You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by mt...@apache.org on 2010/05/27 07:03:13 UTC

svn commit: r948670 - in /trafficserver/traffic/trunk: iocore/cache/ iocore/cluster/ iocore/dns/ iocore/eventsystem/ libinktomi++/ proxy/ proxy/logging/

Author: mturk
Date: Thu May 27 05:03:12 2010
New Revision: 948670

URL: http://svn.apache.org/viewvc?rev=948670&view=rev
Log:
TS-376: Fix align_forward and unify the alignment usage.

Add a new macros INK_ALIGN and INK_ALIGN_DEFAULT as well as using INK_MIN_ALIGN
replacing MIN_ALIGN. There are few other places in the code having weird alignmet
math which should be reviewed as well

Modified:
    trafficserver/traffic/trunk/iocore/cache/Cache.cc
    trafficserver/traffic/trunk/iocore/cluster/ClusterHandlerBase.cc
    trafficserver/traffic/trunk/iocore/dns/DNS.cc
    trafficserver/traffic/trunk/iocore/eventsystem/SocketManager.cc
    trafficserver/traffic/trunk/libinktomi++/ink_align.h
    trafficserver/traffic/trunk/libinktomi++/ink_resource.cc
    trafficserver/traffic/trunk/proxy/AbstractBuffer.cc
    trafficserver/traffic/trunk/proxy/logging/LogAccess.cc
    trafficserver/traffic/trunk/proxy/logging/LogAccess.h
    trafficserver/traffic/trunk/proxy/logging/LogAccessHttp.cc
    trafficserver/traffic/trunk/proxy/logging/LogAccessICP.cc
    trafficserver/traffic/trunk/proxy/logging/LogBuffer.cc
    trafficserver/traffic/trunk/proxy/logging/LogBuffer.h
    trafficserver/traffic/trunk/proxy/logging/LogField.cc
    trafficserver/traffic/trunk/proxy/logging/LogFormat.cc
    trafficserver/traffic/trunk/proxy/logging/LogObject.cc
    trafficserver/traffic/trunk/proxy/logstats.cc

Modified: trafficserver/traffic/trunk/iocore/cache/Cache.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/cache/Cache.cc?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/cache/Cache.cc (original)
+++ trafficserver/traffic/trunk/iocore/cache/Cache.cc Thu May 27 05:03:12 2010
@@ -1004,7 +1004,7 @@ Part::init(char *s, off_t blocks, off_t 
   size_t alignment = getpagesize();
   size_t mem_to_alloc = part_dirlen(this) + (alignment - 1);
   raw_dir = (char *) malloc(mem_to_alloc);
-  raw_dir = (char *) (((unsigned int) ((char *) (raw_dir) + (alignment - 1))) & ~(alignment - 1));
+  raw_dir = (char *) align_pointer_forward(raw_dir, alignment);
 #endif
 
   dir = (Dir *) (raw_dir + part_headerlen(this));

Modified: trafficserver/traffic/trunk/iocore/cluster/ClusterHandlerBase.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/cluster/ClusterHandlerBase.cc?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/cluster/ClusterHandlerBase.cc (original)
+++ trafficserver/traffic/trunk/iocore/cluster/ClusterHandlerBase.cc Thu May 27 05:03:12 2010
@@ -262,19 +262,16 @@ n_byte_bank(0), byte_bank_size(0), misse
   //////////////////////////////////////////////////
   // Place an invalid page in front of iovec data.
   //////////////////////////////////////////////////
-  int pagesize = getpagesize();
+  size_t pagesize = (size_t) getpagesize();
   size = ((MAX_TCOUNT + 1) * sizeof(IOVec)) + (2 * pagesize);
   iob_iov = new_IOBufferData(BUFFER_SIZE_FOR_XMALLOC(size));
-  iov = (IOVec *) iob_iov->data();
-  // TODO: This is align_pointer_forward
-  ptrdiff_t page_addr = ((ptrdiff_t) iov + (ptrdiff_t) pagesize) & ~((ptrdiff_t) pagesize - 1);
-  iov = (IOVec *) ((ptrdiff_t) page_addr);
+  char *addr = (char *) align_pointer_forward(iob_iov->data(), pagesize);
 
 #if (defined(__sparc) || defined(__alpha))
-  if (mprotect((char *) page_addr, pagesize, PROT_NONE))
+  if (mprotect(addr, pagesize, PROT_NONE))
     perror("ClusterState mprotect0 failed");
 #endif
-  iov = (IOVec *) ((char *) iov + pagesize);
+  iov = (IOVec *) (addr + pagesize);
 
   ///////////////////////////////////////////////////
   // Place an invalid page in front of message data.
@@ -284,16 +281,15 @@ n_byte_bank(0), byte_bank_size(0), misse
   msg.iob_descriptor_block = new_IOBufferBlock();
   msg.iob_descriptor_block->alloc(BUFFER_SIZE_FOR_XMALLOC(size));
 
-  char *a = msg.iob_descriptor_block->data->data();
-  page_addr = ((ptrdiff_t) a + (ptrdiff_t) pagesize) & ~((ptrdiff_t) pagesize - 1);
+  addr = (char *) align_pointer_forward(msg.iob_descriptor_block->data->data(), pagesize);
 
 #if (defined(__sparc) || defined(__alpha))
-  if (mprotect((char *) page_addr, pagesize, PROT_NONE))
+  if (mprotect(addr, pagesize, PROT_NONE))
     perror("ClusterState mprotect failed");
 #endif
-  a = (char *) ((ptrdiff_t) page_addr + (ptrdiff_t) pagesize);
-  memset(a, 0, size - (2 * pagesize));
-  msg.descriptor = (Descriptor *) (a + sizeof(ClusterMsgHeader));
+  addr = addr + pagesize;
+  memset(addr, 0, size - (2 * pagesize));
+  msg.descriptor = (Descriptor *) (addr + sizeof(ClusterMsgHeader));
 
   mbuf = new_empty_MIOBuffer();
 }

Modified: trafficserver/traffic/trunk/iocore/dns/DNS.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/dns/DNS.cc?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/dns/DNS.cc (original)
+++ trafficserver/traffic/trunk/iocore/dns/DNS.cc Thu May 27 05:03:12 2010
@@ -1438,7 +1438,7 @@ dns_process(DNSHandler * handler, HostEn
           *hap++ = cp;
           cp += n;
         } else {
-          bp = (unsigned char *) align_pointer_forward(bp, INK_ALIGN_INT);
+          bp = (unsigned char *) align_pointer_forward(bp, sizeof(int));
           if (bp + n >= buf->hostbuf + DNS_HOSTBUF_SIZE) {
             ++error;
             break;

Modified: trafficserver/traffic/trunk/iocore/eventsystem/SocketManager.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/iocore/eventsystem/SocketManager.cc?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/iocore/eventsystem/SocketManager.cc (original)
+++ trafficserver/traffic/trunk/iocore/eventsystem/SocketManager.cc Thu May 27 05:03:12 2010
@@ -81,6 +81,7 @@ int
 safe_msync(caddr_t addr, size_t len, caddr_t end, int flags)
 {
   (void) end;
+  // TODO: This is some sort of alignment
   caddr_t a = (caddr_t) (((unsigned long) addr) & ~(socketManager.pagesize - 1));
   size_t l = (len + (addr - a) + socketManager.pagesize - 1)
     & ~(socketManager.pagesize - 1);

Modified: trafficserver/traffic/trunk/libinktomi++/ink_align.h
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/libinktomi%2B%2B/ink_align.h?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/libinktomi++/ink_align.h (original)
+++ trafficserver/traffic/trunk/libinktomi++/ink_align.h Thu May 27 05:03:12 2010
@@ -25,47 +25,51 @@
 #ifndef _ink_align_h_
 #define _ink_align_h_
 
-#define INK_ALIGN_LONG (sizeof(long) - 1)
-#define INK_ALIGN_DOUBLE (sizeof(double) - 1)
-#define INK_ALIGN_INT (sizeof(int) - 1)
-#define INK_ALIGN_SHORT (sizeof(short)-1)
+/**
+ * Alignment macros
+ */
+
+#define INK_MIN_ALIGN 8
+/* INK_ALIGN() is only to be used to align on a power of 2 boundary */
+#define INK_ALIGN(size, boundary) \
+    (((size) + ((boundary) - 1)) & ~((boundary) - 1))
+
+/** Default alignment */
+#define INK_ALIGN_DEFAULT(size) INK_ALIGN(size, INK_MIN_ALIGN)
 
 //
-// Move a pointer forward until it meets the alignment width
-// specified (as a mask).
+// Move a pointer forward until it meets the alignment width.
 //
-
 static inline void *
-align_pointer_forward(const void *pointer_, int widthmask)
+align_pointer_forward(const void *pointer_, size_t alignment)
 {
   char *pointer = (char *) pointer_;
   //
   // Round up alignment..
   //
-  pointer = (char *)
-    (((unsigned long) pointer + widthmask) & (~widthmask));
+  pointer = (char *) INK_ALIGN((ptrdiff_t) pointer, alignment);
 
   return (void *) pointer;
 }
 
 //
-// Move a pointer forward until it meets the alignment width specified
-// (as a mask), and zero out the contents of the space you're skipping
-// over.
+// Move a pointer forward until it meets the alignment width specified,
+// and zero out the contents of the space you're skipping over.
 //
 static inline void *
-align_pointer_forward_and_zero(const void *pointer_, int widthmask)
+align_pointer_forward_and_zero(const void *pointer_, size_t alignment)
 {
   char *pointer = (char *) pointer_;
+  char *aligned = (char *) INK_ALIGN((ptrdiff_t) pointer, alignment);
   //
-  // Round up alignment..
+  // Fill the skippings..
   //
-  while ((((unsigned long) pointer) & widthmask) != 0) {
+  while (pointer < aligned) {
     *pointer = 0;
     pointer++;
   }
 
-  return (void *) pointer;
+  return (void *) aligned;
 }
 
 //

Modified: trafficserver/traffic/trunk/libinktomi++/ink_resource.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/libinktomi%2B%2B/ink_resource.cc?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/libinktomi++/ink_resource.cc (original)
+++ trafficserver/traffic/trunk/libinktomi++/ink_resource.cc Thu May 27 05:03:12 2010
@@ -36,7 +36,9 @@ volatile int res_track_memory = RES_TRAC
 
 #define FENCE_POST_SIZE   16
 
+// TODO: Move this to ink_align.h
 #define ADJUST(mem,x)  (((char*) (mem)) + x)
+// TODO: Use INK_ALIGN instead
 #define ROUND(x,l)     (((x) + ((l) - 1L)) & ~((l) - 1L))
 #define TSIZE          16387
 

Modified: trafficserver/traffic/trunk/proxy/AbstractBuffer.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/AbstractBuffer.cc?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/AbstractBuffer.cc (original)
+++ trafficserver/traffic/trunk/proxy/AbstractBuffer.cc Thu May 27 05:03:12 2010
@@ -40,7 +40,7 @@ ABError AbstractBuffer::checkout_write(i
   VolatileState
     new_vs;
 
-  write_size = (write_size + (alignment - 1)) & ~(alignment - 1);
+  write_size = INK_ALIGN(write_size, alignment);
 
   // Initialize the buffer if it currently isn't in use.
   old_vs = vs;
@@ -192,7 +192,7 @@ AbstractBuffer::initialize()
 
   if (!unaligned_buffer) {
     unaligned_buffer = NEW(new char[size + 511]);
-    buffer = (char *) align_pointer_forward(unaligned_buffer, 511);
+    buffer = (char *) align_pointer_forward(unaligned_buffer, 512);
   }
 
   vs_history[AB_STATE_READ_WRITE] = vs;

Modified: trafficserver/traffic/trunk/proxy/logging/LogAccess.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/logging/LogAccess.cc?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/logging/LogAccess.cc (original)
+++ trafficserver/traffic/trunk/proxy/logging/LogAccess.cc Thu May 27 05:03:12 2010
@@ -180,9 +180,9 @@ LogAccess::marshal_client_req_http_versi
     LOG_INT major = 0;
     LOG_INT minor = 0;
     marshal_int(buf, major);
-    marshal_int((buf + MIN_ALIGN), minor);
+    marshal_int((buf + INK_MIN_ALIGN), minor);
   }
-  return (2 * MIN_ALIGN);
+  return (2 * INK_MIN_ALIGN);
 }
 
 /*-------------------------------------------------------------------------
@@ -463,9 +463,9 @@ LogAccess::marshal_server_resp_http_vers
     LOG_INT major = 0;
     LOG_INT minor = 0;
     marshal_int(buf, major);
-    marshal_int((buf + MIN_ALIGN), minor);
+    marshal_int((buf + INK_MIN_ALIGN), minor);
   }
-  return (2 * MIN_ALIGN);
+  return (2 * INK_MIN_ALIGN);
 }
 
 int
@@ -771,7 +771,7 @@ LogAccess::marshal_entry_type(char *buf)
     LOG_INT val = (LOG_INT) entry_type();
     marshal_int(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -784,7 +784,7 @@ LogAccess::marshal_config_int_var(char *
     LOG_INT val = (LOG_INT) LOG_ConfigReadInteger(config_var);
     marshal_int(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -968,7 +968,7 @@ LogAccess::marshal_record(char *record, 
   LogAccess::marshal_int
 
   Place the given value into the buffer.  Note that the buffer needs to be
-  aligned with the size of MIN_ALIGN for this to succeed.  We also convert
+  aligned with the size of INK_MIN_ALIGN for this to succeed.  We also convert
   to network byte order, just in case we read the data on a different
   machine; unmarshal_int() will convert back to host byte order.
 
@@ -1100,7 +1100,7 @@ LOG_INT LogAccess::unmarshal_int(char **
     val;
 
   val = ntohl(*((LOG_INT *) (*buf)));
-  *buf += MIN_ALIGN;
+  *buf += INK_MIN_ALIGN;
   return val;
 }
 

Modified: trafficserver/traffic/trunk/proxy/logging/LogAccess.h
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/logging/LogAccess.h?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/logging/LogAccess.h (original)
+++ trafficserver/traffic/trunk/proxy/logging/LogAccess.h Thu May 27 05:03:12 2010
@@ -66,7 +66,7 @@
 	      LOG_INT val = what_the_value_should_be;
               marshal_int (buf, val);
 	  }
-	  return MIN_ALIGN;
+	  return INK_MIN_ALIGN;
       }
 
   String values don't need byte swapping, but we do want to ensure things
@@ -91,27 +91,24 @@
 
 #include "ink_bool.h"
 
-#define LOG_ACCESS_ROUND_TO(x,l)   (((x) + ((l) - 1L)) & ~((l) - 1L))
-
 #define LOG_INT 	unsigned
-#define MIN_ALIGN	8
-// DEFAULT_STR_LEN MUST be less than MIN_ALIGN
+// DEFAULT_STR_LEN MUST be less than INK_MIN_ALIGN
 #define DEFAULT_STR	"-"
 #define DEFAULT_STR_LEN 1
 
 #define DEFAULT_INT_FIELD {\
     if (buf) { \
-	LOG_INT i = 0; \
-	marshal_int (buf, i); \
+      LOG_INT i = 0; \
+      marshal_int (buf, i); \
     } \
-    return MIN_ALIGN; \
+    return INK_MIN_ALIGN; \
 }
 
 #define DEFAULT_STR_FIELD {\
     char * str = NULL; \
-    int len = MIN_ALIGN; \
+    int len = INK_MIN_ALIGN; \
     if (buf) { \
-	marshal_str (buf, str, len); \
+      marshal_str (buf, str, len); \
     } \
     return (len); \
 }
@@ -121,7 +118,7 @@
 // ints + sign + eos, and enough for %e floating point representation
 // + eos
 //
-#define MARSHAL_RECORD_LENGTH LOG_ACCESS_ROUND_TO(32, MIN_ALIGN)
+#define MARSHAL_RECORD_LENGTH 32
 
 enum LogEntryType
 {
@@ -340,7 +337,7 @@ private:
 inline int
 LogAccess::round_strlen(int len)
 {
-  return LOG_ACCESS_ROUND_TO(len, MIN_ALIGN);
+  return INK_ALIGN_DEFAULT(len);
 }
 
 /*-------------------------------------------------------------------------

Modified: trafficserver/traffic/trunk/proxy/logging/LogAccessHttp.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/logging/LogAccessHttp.cc?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/logging/LogAccessHttp.cc (original)
+++ trafficserver/traffic/trunk/proxy/logging/LogAccessHttp.cc Thu May 27 05:03:12 2010
@@ -146,7 +146,7 @@ LogAccessHttp::marshal_client_host_ip(ch
     // is needed
     marshal_int_no_byte_order_conversion(buf, ip);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -157,7 +157,7 @@ int
 LogAccessHttp::marshal_client_auth_user_name(char *buf)
 {
   char *str = NULL;
-  int len = MIN_ALIGN;
+  int len = INK_MIN_ALIGN;
 
   // Jira TS-40:
   // NOTE: Authentication related code and modules were removed/disabled.
@@ -261,7 +261,7 @@ LogAccessHttp::marshal_client_req_http_m
 {
   char *str = NULL;
   int alen = 0;
-  int plen = MIN_ALIGN;
+  int plen = INK_MIN_ALIGN;
 
   if (m_client_request) {
     str = (char *) m_client_request->method_get(&alen);
@@ -361,7 +361,7 @@ LogAccessHttp::marshal_client_req_url_sc
 {
   char *str = NULL;
   int alen = 0;
-  int plen = MIN_ALIGN;
+  int plen = INK_MIN_ALIGN;
 
   if (m_url) {
     str = (char *) m_url->scheme_get(&alen);
@@ -400,9 +400,9 @@ LogAccessHttp::marshal_client_req_http_v
       minor = HTTP_MINOR(versionObject.m_version);
     }
     marshal_int(buf, major);
-    marshal_int((buf + MIN_ALIGN), minor);
+    marshal_int((buf + INK_MIN_ALIGN), minor);
   }
-  return (2 * MIN_ALIGN);
+  return (2 * INK_MIN_ALIGN);
 }
 
 /*-------------------------------------------------------------------------
@@ -418,7 +418,7 @@ LogAccessHttp::marshal_client_req_header
     }
     marshal_int(buf, len);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -434,7 +434,7 @@ LogAccessHttp::marshal_client_req_body_l
     }
     marshal_int(buf, len);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 int
@@ -455,7 +455,7 @@ LogAccessHttp::marshal_client_finish_sta
     }
     marshal_int(buf, code);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -482,7 +482,7 @@ LogAccessHttp::marshal_proxy_resp_squid_
     LOG_INT val = m_http_sm->client_response_hdr_bytes + m_http_sm->client_response_body_bytes;
     marshal_int(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -495,7 +495,7 @@ LogAccessHttp::marshal_proxy_resp_conten
     LOG_INT val = m_http_sm->client_response_body_bytes;
     marshal_int(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -523,7 +523,7 @@ LogAccessHttp::marshal_proxy_resp_status
     }
     marshal_int(buf, (LOG_INT) status);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -539,7 +539,7 @@ LogAccessHttp::marshal_proxy_resp_header
     }
     marshal_int(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 int
@@ -570,7 +570,7 @@ LogAccessHttp::marshal_proxy_finish_stat
     marshal_int(buf, code);
   }
 
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -583,7 +583,7 @@ LogAccessHttp::marshal_cache_result_code
     SquidLogCode code = m_http_sm->t_state.squid_codes.log_code;
     marshal_int(buf, (LOG_INT) code);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -599,7 +599,7 @@ LogAccessHttp::marshal_proxy_req_header_
     }
     marshal_int(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -615,14 +615,14 @@ LogAccessHttp::marshal_proxy_req_body_le
     }
     marshal_int(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 int
 LogAccessHttp::marshal_proxy_req_server_name(char *buf)
 {
   char *str = NULL;
-  int len = MIN_ALIGN;
+  int len = INK_MIN_ALIGN;
 
   if (m_http_sm->t_state.current.server) {
     str = m_http_sm->t_state.current.server->name;
@@ -647,7 +647,7 @@ LogAccessHttp::marshal_proxy_req_server_
     // is needed
     marshal_int_no_byte_order_conversion(buf, (LOG_INT) the_ip);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -660,7 +660,7 @@ LogAccessHttp::marshal_proxy_hierarchy_r
     SquidHierarchyCode code = m_http_sm->t_state.squid_codes.hier_code;
     marshal_int(buf, (LOG_INT) code);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -681,7 +681,7 @@ LogAccessHttp::marshal_server_host_ip(ch
     // is needed
     marshal_int_no_byte_order_conversion(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 
@@ -692,7 +692,7 @@ int
 LogAccessHttp::marshal_server_host_name(char *buf)
 {
   char *str = NULL;
-  int padded_len = MIN_ALIGN;
+  int padded_len = INK_MIN_ALIGN;
   int actual_len = 0;
 
   if (m_client_request) {
@@ -708,7 +708,7 @@ LogAccessHttp::marshal_server_host_name(
     } else {
       str = NULL;
       actual_len = 0;
-      padded_len = MIN_ALIGN;
+      padded_len = INK_MIN_ALIGN;
     }
   }
   if (buf) {
@@ -725,7 +725,7 @@ int
 LogAccessHttp::marshal_client_accelerator_id(char *buf)
 {
   char *str = NULL;
-  int padded_len = MIN_ALIGN;
+  int padded_len = INK_MIN_ALIGN;
   int actual_len = 0;
 
   if (Log::config->xuid_logging_enabled) {
@@ -740,13 +740,13 @@ LogAccessHttp::marshal_client_accelerato
       } else {
         str = NULL;
         actual_len = 0;
-        padded_len = MIN_ALIGN;
+        padded_len = INK_MIN_ALIGN;
       }
     }
   } else {
     str = NULL;
     actual_len = 0;
-    padded_len = MIN_ALIGN;
+    padded_len = INK_MIN_ALIGN;
   }
 
   if (buf) {
@@ -771,7 +771,7 @@ LogAccessHttp::marshal_server_resp_statu
     }
     marshal_int(buf, (LOG_INT) status);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -787,7 +787,7 @@ LogAccessHttp::marshal_server_resp_conte
     }
     marshal_int(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -803,7 +803,7 @@ LogAccessHttp::marshal_server_resp_heade
     }
     marshal_int(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 int
@@ -817,9 +817,9 @@ LogAccessHttp::marshal_server_resp_http_
       minor = HTTP_MINOR(m_server_response->version_get().m_version);
     }
     marshal_int(buf, major);
-    marshal_int((buf + MIN_ALIGN), minor);
+    marshal_int((buf + INK_MIN_ALIGN), minor);
   }
-  return (2 * MIN_ALIGN);
+  return (2 * INK_MIN_ALIGN);
 }
 
 int
@@ -829,7 +829,7 @@ LogAccessHttp::marshal_client_retry_afte
     LOG_INT crat = m_http_sm->t_state.congestion_control_crat;
     marshal_int(buf, crat);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 static LogCacheWriteCodeType
@@ -877,7 +877,7 @@ LogAccessHttp::marshal_cache_write_code(
     marshal_int(buf, code);
   }
 
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 int
@@ -890,7 +890,7 @@ LogAccessHttp::marshal_cache_write_trans
     marshal_int(buf, code);
   }
 
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 
@@ -906,7 +906,7 @@ LogAccessHttp::marshal_transfer_time_ms(
     LOG_INT val = (LOG_INT) elapsed;
     marshal_int(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 int
@@ -918,7 +918,7 @@ LogAccessHttp::marshal_transfer_time_s(c
     LOG_INT val = (LOG_INT) elapsed;
     marshal_int(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -928,7 +928,7 @@ int
 LogAccessHttp::marshal_http_header_field(LogField::Container container, char *field, char *buf)
 {
   char *str = NULL;
-  int padded_len = MIN_ALIGN;
+  int padded_len = INK_MIN_ALIGN;
   int actual_len = 0;
   bool valid_field = false;
   HTTPHdr *header;
@@ -1012,7 +1012,7 @@ LogAccessHttp::marshal_http_header_field
   }
 
   if (valid_field == false) {
-    padded_len = MIN_ALIGN;
+    padded_len = INK_MIN_ALIGN;
     if (buf) {
       marshal_str(buf, NULL, padded_len);
     }
@@ -1025,7 +1025,7 @@ int
 LogAccessHttp::marshal_http_header_field_escapify(LogField::Container container, char *field, char *buf)
 {
   char *str = NULL, *new_str = NULL;
-  int padded_len = MIN_ALIGN;
+  int padded_len = INK_MIN_ALIGN;
   int actual_len = 0, new_len = 0;
   bool valid_field = false;
   HTTPHdr *header;
@@ -1110,7 +1110,7 @@ LogAccessHttp::marshal_http_header_field
   }
 
   if (valid_field == false) {
-    padded_len = MIN_ALIGN;
+    padded_len = INK_MIN_ALIGN;
     if (buf) {
       marshal_str(buf, NULL, padded_len);
     }

Modified: trafficserver/traffic/trunk/proxy/logging/LogAccessICP.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/logging/LogAccessICP.cc?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/logging/LogAccessICP.cc (original)
+++ trafficserver/traffic/trunk/proxy/logging/LogAccessICP.cc Thu May 27 05:03:12 2010
@@ -73,7 +73,7 @@ LogAccessICP::marshal_client_host_ip(cha
     // ip is already in network order
     marshal_int_no_byte_order_conversion(buf, ip);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -189,7 +189,7 @@ LogAccessICP::marshal_proxy_resp_squid_l
     LOG_INT val = m_icp_log->GetSize();
     marshal_int(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -202,7 +202,7 @@ LogAccessICP::marshal_proxy_resp_content
     LOG_INT val = m_icp_log->GetSize();
     marshal_int(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -215,7 +215,7 @@ LogAccessICP::marshal_proxy_resp_status_
     LOG_INT status = 0;         // '000' for ICP
     marshal_int(buf, status);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -228,7 +228,7 @@ LogAccessICP::marshal_cache_result_code(
     SquidLogCode code = m_icp_log->GetAction();
     marshal_int(buf, (LOG_INT) code);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -241,7 +241,7 @@ LogAccessICP::marshal_proxy_hierarchy_ro
     SquidHierarchyCode code = m_icp_log->GetHierarchy();
     marshal_int(buf, (LOG_INT) code);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -270,7 +270,7 @@ LogAccessICP::marshal_transfer_time_ms(c
     LOG_INT val = (LOG_INT) elapsed;
     marshal_int(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 int
@@ -282,6 +282,6 @@ LogAccessICP::marshal_transfer_time_s(ch
     LOG_INT val = (LOG_INT) elapsed;
     marshal_int(buf, val);
   }
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 #endif // TS_MICRO

Modified: trafficserver/traffic/trunk/proxy/logging/LogBuffer.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/logging/LogBuffer.cc?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/logging/LogBuffer.cc (original)
+++ trafficserver/traffic/trunk/proxy/logging/LogBuffer.cc Thu May 27 05:03:12 2010
@@ -265,26 +265,26 @@ LogBufferHeader::log_filename()
   zero it inside 'operator new', Save CPU resources! :)
   -------------------------------------------------------------------------*/
 
-LogBuffer::LogBuffer(LogObject * owner, size_t size, int buf_align_mask, int write_align_mask):
+LogBuffer::LogBuffer(LogObject * owner, size_t size, size_t buf_align, size_t write_align):
   sign(CLASS_SIGN_LOGBUFFER),
   next_flush(NULL),
   next_list(NULL),
   m_new_buffer(NULL),
   m_size(size),
-  m_buf_align_mask(buf_align_mask),
-  m_write_align_mask(write_align_mask), m_max_entries(Log::config->max_entries_per_buffer), m_owner(owner)
+  m_buf_align(buf_align),
+  m_write_align(write_align), m_max_entries(Log::config->max_entries_per_buffer), m_owner(owner)
 {
   size_t hdr_size;
 
-//    Debug("log2-logbuffer","LogBuffer::LogBuffer(owner,size=%ld, buf_align_mask=%d,write_align_mask=%d)",
-//          size,buf_align_mask,write_align_mask);
+//    Debug("log2-logbuffer","LogBuffer::LogBuffer(owner,size=%ld, buf_align=%ld,write_align=%ld)",
+//          size,buf_align,write_align);
 
-  // create the buffer: size + LB_DEFAULT_ALIGN_MASK(511)
-  m_bb = iLogBufferBuffer::New_iLogBufferBuffer(size + buf_align_mask);
+  // create the buffer: size + LB_DEFAULT_ALIGN(512)
+  m_bb = iLogBufferBuffer::New_iLogBufferBuffer(size + buf_align);
   ink_assert(m_bb != NULL);
 
   m_unaligned_buffer = m_bb->buf;
-  m_buffer = (char *) align_pointer_forward(m_unaligned_buffer, buf_align_mask);
+  m_buffer = (char *) align_pointer_forward(m_unaligned_buffer, buf_align);
 
   // add the header
   hdr_size = _add_buffer_header();
@@ -310,8 +310,8 @@ LogBuffer::LogBuffer(LogObject * owner, 
   m_unaligned_buffer(NULL),
   m_buffer((char *) header),
   m_size(0),
-  m_buf_align_mask(LB_DEFAULT_ALIGN_MASK),
-  m_write_align_mask(MIN_ALIGN - 1), m_max_entries(0), m_expiration_time(0), m_owner(owner), m_header(header)
+  m_buf_align(LB_DEFAULT_ALIGN),
+  m_write_align(INK_MIN_ALIGN), m_max_entries(0), m_expiration_time(0), m_owner(owner), m_header(header)
 {
   // This constructor does not allocate a buffer because it gets it as
   // an argument. We set m_unaligned_buffer to NULL, which means that
@@ -372,8 +372,7 @@ LogBuffer::LB_ResultCode LogBuffer::chec
     new_s;
   size_t
     offset = 0;
-  size_t
-    actual_write_size = (write_size + sizeof(LogEntryHeader) + m_write_align_mask) & ~m_write_align_mask;
+  size_t actual_write_size = INK_ALIGN(write_size + sizeof(LogEntryHeader), m_write_align);
 
   uint64
     retries = (uint64) - 1;
@@ -586,9 +585,7 @@ LogBuffer::_add_buffer_header()
   // alignment mark.
   //
 
-#define __ROUND_TO(x,l)   (((x) + ((l) - 1L)) & ~((l) - 1L))
-  header_len = __ROUND_TO(header_len, MIN_ALIGN);
-#undef __ROUND_TO
+  header_len = INK_ALIGN_DEFAULT(header_len);
 
   m_header->byte_count = header_len;
   m_header->data_offset = header_len;
@@ -705,7 +702,7 @@ LogBuffer::resolve_custom_entry(LogField
             res = LogAccess::unmarshal_int_to_str(&ptr, to, write_to_len - bytes_written);
             if (buffer_version > 1) {
               // space was reserved in read buffer; remove it
-              read_from += MIN_ALIGN;
+              read_from += INK_MIN_ALIGN;
             }
 
             non_aggregate_timestamp = true;
@@ -719,7 +716,7 @@ LogBuffer::resolve_custom_entry(LogField
             res = LogAccess::unmarshal_int_to_str_hex(&ptr, to, write_to_len - bytes_written);
             if (buffer_version > 1) {
               // space was reserved in read buffer; remove it
-              read_from += MIN_ALIGN;
+              read_from += INK_MIN_ALIGN;
             }
 
             non_aggregate_timestamp = true;
@@ -732,7 +729,7 @@ LogBuffer::resolve_custom_entry(LogField
 
             if (buffer_version > 1) {
               // space was reserved in read buffer; remove it
-              read_from += MIN_ALIGN;
+              read_from += INK_MIN_ALIGN;
             }
 
             non_aggregate_timestamp = true;
@@ -748,7 +745,7 @@ LogBuffer::resolve_custom_entry(LogField
             }
             if (buffer_version > 1) {
               // space was reserved in read buffer; remove it
-              read_from += MIN_ALIGN;
+              read_from += INK_MIN_ALIGN;
             }
 
             non_aggregate_timestamp = true;
@@ -764,7 +761,7 @@ LogBuffer::resolve_custom_entry(LogField
             }
             if (buffer_version > 1) {
               // space was reserved in read buffer; remove it
-              read_from += MIN_ALIGN;
+              read_from += INK_MIN_ALIGN;
             }
 
             non_aggregate_timestamp = true;
@@ -780,7 +777,7 @@ LogBuffer::resolve_custom_entry(LogField
             }
             if (buffer_version > 1) {
               // space was reserved in read buffer; remove it
-              read_from += MIN_ALIGN;
+              read_from += INK_MIN_ALIGN;
             }
 
             non_aggregate_timestamp = true;

Modified: trafficserver/traffic/trunk/proxy/logging/LogBuffer.h
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/logging/LogBuffer.h?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/logging/LogBuffer.h (original)
+++ trafficserver/traffic/trunk/proxy/logging/LogBuffer.h Thu May 27 05:03:12 2010
@@ -40,9 +40,9 @@ class LogBufferIterator;
 #define LOG_SEGMENT_VERSION 2
 
 #if defined(linux)
-#define LB_DEFAULT_ALIGN_MASK 511
+#define LB_DEFAULT_ALIGN 512
 #else
-#define LB_DEFAULT_ALIGN_MASK INK_ALIGN_INT
+#define LB_DEFAULT_ALIGN 8
 #endif
 
 /*-------------------------------------------------------------------------
@@ -243,7 +243,7 @@ public:
   };
 
     LogBuffer(LogObject * owner, size_t size,
-              int buf_align_mask = LB_DEFAULT_ALIGN_MASK, int write_align_mask = MIN_ALIGN - 1);
+              size_t buf_align = LB_DEFAULT_ALIGN, size_t write_align = INK_MIN_ALIGN);
     LogBuffer(LogObject * owner, LogBufferHeader * header);
    ~LogBuffer();
   char &operator [] (int idx)
@@ -309,8 +309,8 @@ private:
   char *m_unaligned_buffer;     // the unaligned buffer
   char *m_buffer;               // the buffer
   size_t m_size;                // the buffer size
-  int m_buf_align_mask;         // the buffer alignment mask
-  int m_write_align_mask;       // the write alignment mask
+  size_t m_buf_align;           // the buffer alignment
+  size_t m_write_align;         // the write alignment mask
 
   volatile LB_State m_state;    // buffer state
 

Modified: trafficserver/traffic/trunk/proxy/logging/LogField.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/logging/LogField.cc?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/logging/LogField.cc (original)
+++ trafficserver/traffic/trunk/proxy/logging/LogField.cc Thu May 27 05:03:12 2010
@@ -334,7 +334,7 @@ LogField::marshal_agg(char *buf)
   m_agg_val = 0;
   m_agg_cnt = 0;
 
-  return MIN_ALIGN;
+  return INK_MIN_ALIGN;
 }
 
 /*-------------------------------------------------------------------------
@@ -502,7 +502,7 @@ LogFieldList::add(LogField * field, bool
   }
 
   if (field->type() == LogField::sINT) {
-    m_marshal_len += MIN_ALIGN;
+    m_marshal_len += INK_MIN_ALIGN;
   }
 }
 
@@ -559,7 +559,7 @@ LogFieldList::marshal(LogAccess * lad, c
   for (LogField * f = first(); f; f = next(f)) {
     ptr = &buf[bytes];
     bytes += f->marshal(lad, ptr);
-    ink_debug_assert(bytes % MIN_ALIGN == 0);
+    ink_debug_assert(bytes % INK_MIN_ALIGN == 0);
   }
   return bytes;
 }

Modified: trafficserver/traffic/trunk/proxy/logging/LogFormat.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/logging/LogFormat.cc?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/logging/LogFormat.cc (original)
+++ trafficserver/traffic/trunk/proxy/logging/LogFormat.cc Thu May 27 05:03:12 2010
@@ -154,7 +154,7 @@ LogFormat::init_variables(const char *na
     m_valid = false;
   } else {
     if (m_aggregate) {
-      m_agg_marshal_space = (char *) xmalloc(m_field_count * MIN_ALIGN);
+      m_agg_marshal_space = (char *) xmalloc(m_field_count * INK_MIN_ALIGN);
     }
 
     if (m_name_str) {

Modified: trafficserver/traffic/trunk/proxy/logging/LogObject.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/logging/LogObject.cc?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/logging/LogObject.cc (original)
+++ trafficserver/traffic/trunk/proxy/logging/LogObject.cc Thu May 27 05:03:12 2010
@@ -500,7 +500,7 @@ LogObject::log(LogAccess * lad, char *te
       // convert to host order to do computations
       val = (f->is_time_field())? time_now : ntohl(*((LOG_INT *) data_ptr));
       f->update_aggregate(val);
-      data_ptr += MIN_ALIGN;
+      data_ptr += INK_MIN_ALIGN;
     }
 
     if (time_now < m_format->m_interval_next) {
@@ -509,8 +509,8 @@ LogObject::log(LogAccess * lad, char *te
       return Log::LOG_OK;
     }
     // can easily compute bytes_needed because all fields are INTs
-    // and will use MIN_ALIGN each
-    bytes_needed = m_format->field_count() * MIN_ALIGN;
+    // and will use INK_MIN_ALIGN each
+    bytes_needed = m_format->field_count() * INK_MIN_ALIGN;
   } else if (lad) {
     bytes_needed = m_format->m_field_list.marshal_len(lad);
   } else if (text_entry) {

Modified: trafficserver/traffic/trunk/proxy/logstats.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/logstats.cc?rev=948670&r1=948669&r2=948670&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/logstats.cc (original)
+++ trafficserver/traffic/trunk/proxy/logstats.cc Thu May 27 05:03:12 2010
@@ -684,7 +684,7 @@ parse_log_buff(LogBufferHeader * buf_hea
     read_from = (char *) entry + sizeof(LogEntryHeader);
     // We read and skip over the first field, which is the timestamp.
     if ((field = fieldlist->first()))
-      read_from += MIN_ALIGN;
+      read_from += INK_MIN_ALIGN;
     else                        // This shouldn't happen, buffer must be messed up.
       break;
 
@@ -699,7 +699,7 @@ parse_log_buff(LogBufferHeader * buf_hea
       case P_STATE_ELAPSED:
         state = P_STATE_IP;
         elapsed = ntohl(*((LOG_INT *) (read_from)));
-        read_from += MIN_ALIGN;
+        read_from += INK_MIN_ALIGN;
         break;
 
       case P_STATE_IP:
@@ -714,7 +714,7 @@ parse_log_buff(LogBufferHeader * buf_hea
       case P_STATE_RESULT:
         state = P_STATE_CODE;
         result = ntohl(*((LOG_INT *) (read_from)));
-        read_from += MIN_ALIGN;
+        read_from += INK_MIN_ALIGN;
         if ((result<32) || (result> 255)) {
           flag = 1;
           state = P_STATE_END;
@@ -724,7 +724,7 @@ parse_log_buff(LogBufferHeader * buf_hea
       case P_STATE_CODE:
         state = P_STATE_SIZE;
         http_code = ntohl(*((LOG_INT *) (read_from)));
-        read_from += MIN_ALIGN;
+        read_from += INK_MIN_ALIGN;
         if ((http_code<0) || (http_code> 999)) {
           flag = 1;
           state = P_STATE_END;
@@ -737,7 +737,7 @@ parse_log_buff(LogBufferHeader * buf_hea
         // this needs to be fixed as well.
         state = P_STATE_METHOD;
         size = ntohl(*((LOG_INT *) (read_from)));
-        read_from += MIN_ALIGN;
+        read_from += INK_MIN_ALIGN;
         //printf("Size == %d\n", size)
         break;
 
@@ -907,7 +907,7 @@ parse_log_buff(LogBufferHeader * buf_hea
           }
           break;
         }
-        read_from += MIN_ALIGN;
+        read_from += INK_MIN_ALIGN;
         break;
 
       case P_STATE_PEER: