]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
buffer: use alignof for raw_combined allocation arithmetic 7612/head
authorSage Weil <sage@redhat.com>
Thu, 11 Feb 2016 19:59:43 +0000 (14:59 -0500)
committerSage Weil <sage@redhat.com>
Tue, 1 Mar 2016 14:09:23 +0000 (09:09 -0500)
Signed-off-by: Sage Weil <sage@redhat.com>
src/common/buffer.cc

index ee274a019f45cf70d1cd275a596f2c46c29e5d51..ae1ffbe4b3f3d97675a561120da6fd4fcc854c7f 100644 (file)
@@ -261,8 +261,9 @@ static simple_spinlock_t buffer_debug_lock = SIMPLE_SPINLOCK_INITIALIZER;
     static raw_combined *create(unsigned len, unsigned align=0) {
       if (!align)
        align = sizeof(size_t);
-      size_t rawlen = ROUND_UP_TO(sizeof(buffer::raw_combined), sizeof(size_t));
-      size_t datalen = ROUND_UP_TO(len, sizeof(size_t));
+      size_t rawlen = ROUND_UP_TO(sizeof(buffer::raw_combined),
+                                 alignof(buffer::raw_combined));
+      size_t datalen = ROUND_UP_TO(len, alignof(buffer::raw_combined));
 
 #ifdef DARWIN
       char *ptr = (char *) valloc(rawlen + datalen);