From: Tom Rini Date: Mon, 24 May 2021 18:19:05 +0000 (-0400) Subject: stackprot: Make our test a bit more complex X-Git-Url: http://git.dujemihanovic.xyz/login.html?a=commitdiff_plain;h=2fc62f2991744dfeec65f8619092c359d8ecbcb0;p=u-boot.git stackprot: Make our test a bit more complex With better compiler optimizations available, a compiler may see we do nothing with our buffer after calling memset and omit the call, thus causing us to not smash the stack. Add a comment to explain why we now also have a printf call, so that the test will pass as the memset will not be omitted. Reported-by: Marek BehĂșn Signed-off-by: Tom Rini --- diff --git a/cmd/stackprot_test.c b/cmd/stackprot_test.c index 36f5bac8d2..1e26193e88 100644 --- a/cmd/stackprot_test.c +++ b/cmd/stackprot_test.c @@ -9,9 +9,16 @@ static int do_test_stackprot_fail(struct cmd_tbl *cmdtp, int flag, int argc, char *const argv[]) { + /* + * In order to avoid having the compiler optimize away the stack smashing + * we need to do a little something here. + */ char a[128]; memset(a, 0xa5, 512); + + printf("We have smashed our stack as this should not exceed 128: sizeof(a) = %ld\n", strlen(a)); + return 0; }