From 73c38454383e0daeb72d08b990e49bf4bd42ba87 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Wed, 18 Dec 2019 14:44:12 +0100 Subject: pkg/compiler: fix incorrect alignment calculation for padding We assumed that for ConstType alignment is equal to size, which is perfectly reasonable for normal int8/16/32/64/ptr. However, padding is also represented by ConstType of arbitrary size, so if we added 157 bytes of padding that becomes alignment of the padding field and as the result of the whole struct. This affects very few structs, but quite radically and quite important structs. Discovered thanks to syz-check. Update #590 --- executor/defs.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'executor') diff --git a/executor/defs.h b/executor/defs.h index 20c1223ff..b637bcb31 100644 --- a/executor/defs.h +++ b/executor/defs.h @@ -70,7 +70,7 @@ #if GOARCH_386 #define GOARCH "386" -#define SYZ_REVISION "5e4b3b3d03a0ebf9fb79fa5ae1adee14a3bf14ec" +#define SYZ_REVISION "1443f5f5330352de86eeee0f03a1bbc84040fef0" #define SYZ_EXECUTOR_USES_FORK_SERVER 1 #define SYZ_EXECUTOR_USES_SHMEM 1 #define SYZ_PAGE_SIZE 4096 @@ -80,7 +80,7 @@ #if GOARCH_amd64 #define GOARCH "amd64" -#define SYZ_REVISION "4346583baf5116b1cfa606e8601b04f06965fe49" +#define SYZ_REVISION "e7e07864a5c13610f5724a4d923f68f8dcd28537" #define SYZ_EXECUTOR_USES_FORK_SERVER 1 #define SYZ_EXECUTOR_USES_SHMEM 1 #define SYZ_PAGE_SIZE 4096 @@ -90,7 +90,7 @@ #if GOARCH_arm #define GOARCH "arm" -#define SYZ_REVISION "0b7857bb67c023f76def02a1ed05cff0e6f3d589" +#define SYZ_REVISION "4a8d402c7ca920debef67315eb8ea87d547691b1" #define SYZ_EXECUTOR_USES_FORK_SERVER 1 #define SYZ_EXECUTOR_USES_SHMEM 1 #define SYZ_PAGE_SIZE 4096 @@ -100,7 +100,7 @@ #if GOARCH_arm64 #define GOARCH "arm64" -#define SYZ_REVISION "9542cd85bb9de7e51ee67d7cef0aed3ea44af23d" +#define SYZ_REVISION "2e69e3900c941cf2334bbbde51a893e8a20fbcbc" #define SYZ_EXECUTOR_USES_FORK_SERVER 1 #define SYZ_EXECUTOR_USES_SHMEM 1 #define SYZ_PAGE_SIZE 4096 @@ -110,7 +110,7 @@ #if GOARCH_mips64le #define GOARCH "mips64le" -#define SYZ_REVISION "f9abba262e2a0c7118f3a819b9366a77a8d20da8" +#define SYZ_REVISION "7eeabb3ef0749276943c37a73437ab047e289302" #define SYZ_EXECUTOR_USES_FORK_SERVER 1 #define SYZ_EXECUTOR_USES_SHMEM 1 #define SYZ_PAGE_SIZE 4096 @@ -120,7 +120,7 @@ #if GOARCH_ppc64le #define GOARCH "ppc64le" -#define SYZ_REVISION "583359a6e1b1e011d4fe2597eef6f1636894fe19" +#define SYZ_REVISION "d33b40bd4bc465cb612df65c897b4021c87bd2f1" #define SYZ_EXECUTOR_USES_FORK_SERVER 1 #define SYZ_EXECUTOR_USES_SHMEM 1 #define SYZ_PAGE_SIZE 4096 -- cgit mrf-deployment