Bug #79637 Hard-coded cache line size
Submitted: 14 Dec 2015 16:55 Modified: 15 Dec 2015 5:06
Reporter: Alexey Kopytov (OCA) Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: InnoDB storage engine Severity:S5 (Performance)
Version:5.6, 5.7 OS:Any
Assigned to: CPU Architecture:Any

[14 Dec 2015 16:55] Alexey Kopytov
Description:
There's a number of places in the InnoDB code where the cache line size
is hard-coded to 64. Instead, the CACHE_LINE_SIZE define should be used,
which is not necessarily 64 after the fix for bug #72718 has been
merged:

$ grep -Ir 'pad.*64' storage/innobase
storage/innobase/btr/btr0sea.cc:65:byte		btr_sea_pad1[64];
storage/innobase/btr/btr0sea.cc:77:byte		btr_sea_pad2[64];
storage/innobase/include/read0types.h:327:	byte		pad1[64 - sizeof(node_t)];
storage/innobase/include/trx0sys.h:582:	char		pad1[64];	/*!< To avoid false sharing */
storage/innobase/include/trx0sys.h:588:	char		pad2[64];	/*!< To avoid false sharing */
storage/innobase/include/trx0sys.h:608:	char		pad3[64];	/*!< To avoid false sharing */
storage/innobase/srv/srv0conc.cc:72:	char		pad[64  - (sizeof(ulint) + sizeo

How to repeat:
grep -Ir 'pad.*64' storage/innobase
[15 Dec 2015 5:06] MySQL Verification Team
Hello Alexey,

Thank you for the report.

Thanks,
Umesh