diff options
author | Sergey Vojtovich <svoj@mariadb.org> | 2016-05-03 12:21:17 +0400 |
---|---|---|
committer | Sergey Vojtovich <svoj@mariadb.org> | 2016-06-07 13:02:31 +0400 |
commit | 9de6708390885415dc6737fcdb96a53ce565a7c2 (patch) | |
tree | 6a3d770bf5c5f83f257c036c834a88ded55d5222 | |
parent | 49ad08450369dbf7ee85759786b6b844e1460471 (diff) | |
download | mariadb-git-9de6708390885415dc6737fcdb96a53ce565a7c2.tar.gz |
MDEV-9857 - CACHE_LINE_SIZE in innodb should be 128 on POWER
Replaced hard-coded cache line size.
Changes based on Daniel Black's work.
-rw-r--r-- | include/lf.h | 7 | ||||
-rw-r--r-- | mysys/lf_alloc-pin.c | 1 | ||||
-rw-r--r-- | storage/perfschema/pfs_global.h | 2 |
3 files changed, 3 insertions, 7 deletions
diff --git a/include/lf.h b/include/lf.h index 19bdafce647..1825de62b43 100644 --- a/include/lf.h +++ b/include/lf.h @@ -68,11 +68,8 @@ typedef struct { void *purgatory; uint32 purgatory_count; uint32 volatile link; -/* we want sizeof(LF_PINS) to be 128 to avoid false sharing */ - char pad[128-sizeof(uint32)*2 - -sizeof(LF_PINBOX *) - -sizeof(void*) - -sizeof(void *)*(LF_PINBOX_PINS+1)]; + /* avoid false sharing */ + char pad[CPU_LEVEL1_DCACHE_LINESIZE]; } LF_PINS; /* compile-time assert to make sure we have enough pins. */ diff --git a/mysys/lf_alloc-pin.c b/mysys/lf_alloc-pin.c index b349ef88ed1..932dfe0f254 100644 --- a/mysys/lf_alloc-pin.c +++ b/mysys/lf_alloc-pin.c @@ -121,7 +121,6 @@ void lf_pinbox_init(LF_PINBOX *pinbox, uint free_ptr_offset, lf_pinbox_free_func *free_func, void *free_func_arg) { DBUG_ASSERT(free_ptr_offset % sizeof(void *) == 0); - compile_time_assert(sizeof(LF_PINS) == 128); lf_dynarray_init(&pinbox->pinarray, sizeof(LF_PINS)); pinbox->pinstack_top_ver= 0; pinbox->pins_in_array= 0; diff --git a/storage/perfschema/pfs_global.h b/storage/perfschema/pfs_global.h index f3326c5589f..7373f459599 100644 --- a/storage/perfschema/pfs_global.h +++ b/storage/perfschema/pfs_global.h @@ -31,7 +31,7 @@ extern bool pfs_initialized; extern size_t pfs_allocated_memory; #if defined(HAVE_POSIX_MEMALIGN) || defined(HAVE_MEMALIGN) || defined(HAVE_ALIGNED_MALLOC) -#define PFS_ALIGNEMENT 64 +#define PFS_ALIGNEMENT CPU_LEVEL1_DCACHE_LINESIZE #define PFS_ALIGNED MY_ALIGNED(PFS_ALIGNEMENT) #else /* |