# git rev-parse -q --verify 598a597636f8618a0520fd3ccefedaed9e4709b0^{commit} 598a597636f8618a0520fd3ccefedaed9e4709b0 already have revision, skipping fetch # git checkout -q -f -B kisskb 598a597636f8618a0520fd3ccefedaed9e4709b0 # git clean -qxdf # < git log -1 # commit 598a597636f8618a0520fd3ccefedaed9e4709b0 # Merge: 58130a6cd062 2d9900f26ad6 # Author: Linus Torvalds # Date: Thu Oct 29 10:13:09 2020 -0700 # # Merge tag 'afs-fixes-20201029' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs # # Pull AFS fixes from David Howells: # # - Fix copy_file_range() to an afs file now returning EINVAL if the # splice_write file op isn't supplied. # # - Fix a deref-before-check in afs_unuse_cell(). # # - Fix a use-after-free in afs_xattr_get_acl(). # # - Fix afs to not try to clear PG_writeback when laundering a page. # # - Fix afs to take a ref on a page that it sets PG_private on and to # drop that ref when clearing PG_private. This is done through recently # added helpers. # # - Fix a page leak if write_begin() fails. # # - Fix afs_write_begin() to not alter the dirty region info stored in # page->private, but rather do this in afs_write_end() instead when we # know what we actually changed. # # - Fix afs_invalidatepage() to alter the dirty region info on a page # when partial page invalidation occurs so that we don't inadvertantly # include a span of zeros that will get written back if a page gets # laundered due to a remote 3rd-party induced invalidation. # # We mustn't, however, reduce the dirty region if the page has been # seen to be mapped (ie. we got called through the page_mkwrite vector) # as the page might still be mapped and we might lose data if the file # is extended again. # # - Fix the dirty region info to have a lower resolution if the size of # the page is too large for this to be encoded (e.g. powerpc32 with 64K # pages). # # Note that this might not be the ideal way to handle this, since it # may allow some leakage of undirtied zero bytes to the server's copy # in the case of a 3rd-party conflict. # # To aid the last two fixes, two additional changes: # # - Wrap the manipulations of the dirty region info stored in # page->private into helper functions. # # - Alter the encoding of the dirty region so that the region bounds can # be stored with one fewer bit, making a bit available for the # indication of mappedness. # # * tag 'afs-fixes-20201029' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs: # afs: Fix dirty-region encoding on ppc32 with 64K pages # afs: Fix afs_invalidatepage to adjust the dirty region # afs: Alter dirty range encoding in page->private # afs: Wrap page->private manipulations in inline functions # afs: Fix where page->private is set during write # afs: Fix page leak on afs_write_begin() failure # afs: Fix to take ref on page when PG_private is set # afs: Fix afs_launder_page to not clear PG_writeback # afs: Fix a use after free in afs_xattr_get_acl() # afs: Fix tracing deref-before-check # afs: Fix copy_file_range() # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/s390-linux/bin/s390-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-4.9.4-nolibc/s390-linux/bin/s390-linux-ld --version # < git log --format=%s --max-count=1 598a597636f8618a0520fd3ccefedaed9e4709b0 # < make -s -j 24 ARCH=s390 O=/kisskb/build/linus_s390-allyesconfig_s390x-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/s390-linux/bin/s390-linux- allyesconfig # Added to kconfig CONFIG_BUILD_DOCSRC=n # Added to kconfig CONFIG_MODULE_SIG=n # < make -s -j 24 ARCH=s390 O=/kisskb/build/linus_s390-allyesconfig_s390x-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/s390-linux/bin/s390-linux- help # make -s -j 24 ARCH=s390 O=/kisskb/build/linus_s390-allyesconfig_s390x-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/s390-linux/bin/s390-linux- olddefconfig # make -s -j 24 ARCH=s390 O=/kisskb/build/linus_s390-allyesconfig_s390x-gcc4.9 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-4.9.4-nolibc/s390-linux/bin/s390-linux- /kisskb/src/arch/s390/kernel/perf_cpum_sf.c: In function 'perf_push_sample': /kisskb/src/arch/s390/kernel/perf_cpum_sf.c:1145:1: warning: 'perf_push_sample' uses dynamic stack allocation } ^ /kisskb/src/arch/s390/kernel/perf_cpum_cf_diag.c: In function 'cf_diag_push_sample': /kisskb/src/arch/s390/kernel/perf_cpum_cf_diag.c:519:1: warning: 'cf_diag_push_sample' uses dynamic stack allocation } ^ /kisskb/src/mm/slub.c: In function '__slab_free': /kisskb/src/mm/slub.c:3073:1: warning: '__slab_free' uses dynamic stack allocation } ^ /kisskb/src/mm/slub.c: In function 'unfreeze_partials.isra.58': /kisskb/src/mm/slub.c:2363:1: warning: 'unfreeze_partials.isra.58' uses dynamic stack allocation } ^ /kisskb/src/mm/slub.c: In function 'get_partial_node.isra.59': /kisskb/src/mm/slub.c:1992:1: warning: 'get_partial_node.isra.59' uses dynamic stack allocation } ^ /kisskb/src/mm/slub.c: In function 'deactivate_slab.isra.60': /kisskb/src/mm/slub.c:2295:1: warning: 'deactivate_slab.isra.60' uses dynamic stack allocation } ^ /kisskb/src/mm/slub.c: In function '___slab_alloc': /kisskb/src/mm/slub.c:2759:1: warning: '___slab_alloc' uses dynamic stack allocation } ^ /kisskb/src/lib/crypto/chacha20poly1305.c: In function 'chacha20poly1305_crypt_sg_inplace': /kisskb/src/lib/crypto/chacha20poly1305.c:331:1: warning: 'chacha20poly1305_crypt_sg_inplace' uses dynamic stack allocation } ^ /kisskb/src/fs/nfs/super.c: In function 'nfs_show_stats': /kisskb/src/fs/nfs/super.c:704:1: warning: 'nfs_show_stats' uses dynamic stack allocation } ^ /kisskb/src/kernel/dma/debug.c: In function 'debug_dma_unmap_page': /kisskb/src/kernel/dma/debug.c:1290:1: warning: 'debug_dma_unmap_page' uses dynamic stack allocation } ^ /kisskb/src/kernel/dma/debug.c: In function 'debug_dma_unmap_sg': /kisskb/src/kernel/dma/debug.c:1378:1: warning: 'debug_dma_unmap_sg' uses dynamic stack allocation } ^ /kisskb/src/kernel/dma/debug.c: In function 'debug_dma_free_coherent': /kisskb/src/kernel/dma/debug.c:1439:1: warning: 'debug_dma_free_coherent' uses dynamic stack allocation } ^ /kisskb/src/kernel/dma/debug.c: In function 'debug_dma_unmap_resource': /kisskb/src/kernel/dma/debug.c:1480:1: warning: 'debug_dma_unmap_resource' uses dynamic stack allocation } ^ /kisskb/src/kernel/dma/debug.c: In function 'debug_dma_sync_single_for_cpu': /kisskb/src/kernel/dma/debug.c:1498:1: warning: 'debug_dma_sync_single_for_cpu' uses dynamic stack allocation } ^ /kisskb/src/kernel/dma/debug.c: In function 'debug_dma_sync_single_for_device': /kisskb/src/kernel/dma/debug.c:1517:1: warning: 'debug_dma_sync_single_for_device' uses dynamic stack allocation } ^ /kisskb/src/kernel/dma/debug.c: In function 'debug_dma_sync_sg_for_cpu': /kisskb/src/kernel/dma/debug.c:1549:1: warning: 'debug_dma_sync_sg_for_cpu' uses dynamic stack allocation } ^ /kisskb/src/kernel/dma/debug.c: In function 'debug_dma_sync_sg_for_device': /kisskb/src/kernel/dma/debug.c:1580:1: warning: 'debug_dma_sync_sg_for_device' uses dynamic stack allocation } ^ /kisskb/src/kernel/bpf/syscall.c: In function 'bpf_prog_show_fdinfo': /kisskb/src/kernel/bpf/syscall.c:1819:1: warning: 'bpf_prog_show_fdinfo' uses dynamic stack allocation } ^ /kisskb/src/kernel/bpf/syscall.c: In function 'bpf_prog_get_info_by_fd.isra.24': /kisskb/src/kernel/bpf/syscall.c:3667:1: warning: 'bpf_prog_get_info_by_fd.isra.24' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/ring_buffer.c: In function 'perf_output_begin_forward': /kisskb/src/kernel/events/ring_buffer.c:269:1: warning: 'perf_output_begin_forward' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/ring_buffer.c: In function 'perf_output_begin_backward': /kisskb/src/kernel/events/ring_buffer.c:275:1: warning: 'perf_output_begin_backward' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/ring_buffer.c: In function 'perf_output_begin': /kisskb/src/kernel/events/ring_buffer.c:283:1: warning: 'perf_output_begin' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_log_throttle': /kisskb/src/kernel/events/core.c:8474:1: warning: 'perf_log_throttle' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_event_bpf_output': /kisskb/src/kernel/events/core.c:8608:1: warning: 'perf_event_bpf_output' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_log_itrace_start': /kisskb/src/kernel/events/core.c:8798:1: warning: 'perf_log_itrace_start' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_event_switch_output': /kisskb/src/kernel/events/core.c:8403:1: warning: 'perf_event_switch_output' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_event_task_output': /kisskb/src/kernel/events/core.c:7563:1: warning: 'perf_event_task_output' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_event_namespaces_output': /kisskb/src/kernel/events/core.c:7756:1: warning: 'perf_event_namespaces_output' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_swevent_hrtimer': /kisskb/src/kernel/events/core.c:10284:1: warning: 'perf_swevent_hrtimer' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_event_ksymbol_output': /kisskb/src/kernel/events/core.c:8519:1: warning: 'perf_event_ksymbol_output' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_event_cgroup_output': /kisskb/src/kernel/events/core.c:7879:1: warning: 'perf_event_cgroup_output' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_event_comm_output': /kisskb/src/kernel/events/core.c:7657:1: warning: 'perf_event_comm_output' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_event_mmap_output': /kisskb/src/kernel/events/core.c:8020:1: warning: 'perf_event_mmap_output' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_event_read_event': /kisskb/src/kernel/events/core.c:7276:1: warning: 'perf_event_read_event' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_event_text_poke_output': /kisskb/src/kernel/events/core.c:8725:1: warning: 'perf_event_text_poke_output' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_event_aux_event': /kisskb/src/kernel/events/core.c:8311:1: warning: 'perf_event_aux_event' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_log_lost_samples': /kisskb/src/kernel/events/core.c:8344:1: warning: 'perf_log_lost_samples' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function 'perf_tp_event': /kisskb/src/kernel/events/core.c:9437:1: warning: 'perf_tp_event' uses dynamic stack allocation } ^ /kisskb/src/kernel/events/core.c: In function '___perf_sw_event': /kisskb/src/kernel/events/core.c:9123:1: warning: '___perf_sw_event' uses dynamic stack allocation } ^ /kisskb/src/kernel/smp.c: In function 'smp_call_function_single': /kisskb/src/kernel/smp.c:517:1: warning: 'smp_call_function_single' uses dynamic stack allocation } ^ /kisskb/src/kernel/bpf/cpumap.c: In function 'cpu_map_bpf_prog_run_xdp.isra.14': /kisskb/src/kernel/bpf/cpumap.c:295:1: warning: 'cpu_map_bpf_prog_run_xdp.isra.14' uses dynamic stack allocation } ^ /kisskb/src/lib/test_stackinit.c: In function 'leaf_big_hole_static_all': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'leaf_big_hole_static_all' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:168:2: note: in definition of macro 'DEFINE_TEST' var_type var INIT_ ## which ## _ ## init_level; \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:268:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(static_all); ^ /kisskb/src/lib/test_stackinit.c: In function 'test_big_hole_static_all': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'test_big_hole_static_all' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:101:2: note: in definition of macro 'DEFINE_TEST_DRIVER' var_type zero INIT_CLONE_ ## which; \ ^ /kisskb/src/lib/test_stackinit.c:254:3: note: in expansion of macro 'DEFINE_TEST' DEFINE_TEST(name ## _ ## init, \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:268:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(static_all); ^ /kisskb/src/lib/test_stackinit.c: In function 'leaf_big_hole_dynamic_all': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'leaf_big_hole_dynamic_all' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:168:2: note: in definition of macro 'DEFINE_TEST' var_type var INIT_ ## which ## _ ## init_level; \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:271:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(dynamic_all); ^ /kisskb/src/lib/test_stackinit.c: In function 'test_big_hole_dynamic_all': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'test_big_hole_dynamic_all' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:101:2: note: in definition of macro 'DEFINE_TEST_DRIVER' var_type zero INIT_CLONE_ ## which; \ ^ /kisskb/src/lib/test_stackinit.c:254:3: note: in expansion of macro 'DEFINE_TEST' DEFINE_TEST(name ## _ ## init, \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:271:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(dynamic_all); ^ /kisskb/src/lib/test_stackinit.c: In function 'leaf_big_hole_zero.isra.9': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'leaf_big_hole_zero.isra.9' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:168:2: note: in definition of macro 'DEFINE_TEST' var_type var INIT_ ## which ## _ ## init_level; \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:265:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(zero); ^ /kisskb/src/lib/test_stackinit.c: In function 'test_big_hole_zero': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'test_big_hole_zero' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:101:2: note: in definition of macro 'DEFINE_TEST_DRIVER' var_type zero INIT_CLONE_ ## which; \ ^ /kisskb/src/lib/test_stackinit.c:254:3: note: in expansion of macro 'DEFINE_TEST' DEFINE_TEST(name ## _ ## init, \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:265:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(zero); ^ /kisskb/src/lib/test_stackinit.c: In function 'leaf_big_hole_static_partial.isra.17': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'leaf_big_hole_static_partial.isra.17' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:168:2: note: in definition of macro 'DEFINE_TEST' var_type var INIT_ ## which ## _ ## init_level; \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:267:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(static_partial); ^ /kisskb/src/lib/test_stackinit.c: In function 'test_big_hole_static_partial': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'test_big_hole_static_partial' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:101:2: note: in definition of macro 'DEFINE_TEST_DRIVER' var_type zero INIT_CLONE_ ## which; \ ^ /kisskb/src/lib/test_stackinit.c:254:3: note: in expansion of macro 'DEFINE_TEST' DEFINE_TEST(name ## _ ## init, \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:267:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(static_partial); ^ /kisskb/src/lib/test_stackinit.c: In function 'leaf_big_hole_dynamic_partial.isra.29': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'leaf_big_hole_dynamic_partial.isra.29' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:168:2: note: in definition of macro 'DEFINE_TEST' var_type var INIT_ ## which ## _ ## init_level; \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:270:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(dynamic_partial); ^ /kisskb/src/lib/test_stackinit.c: In function 'test_big_hole_dynamic_partial': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'test_big_hole_dynamic_partial' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:101:2: note: in definition of macro 'DEFINE_TEST_DRIVER' var_type zero INIT_CLONE_ ## which; \ ^ /kisskb/src/lib/test_stackinit.c:254:3: note: in expansion of macro 'DEFINE_TEST' DEFINE_TEST(name ## _ ## init, \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:270:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(dynamic_partial); ^ /kisskb/src/lib/test_stackinit.c: In function 'leaf_big_hole_runtime_partial.isra.41': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'leaf_big_hole_runtime_partial.isra.41' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:168:2: note: in definition of macro 'DEFINE_TEST' var_type var INIT_ ## which ## _ ## init_level; \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:273:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(runtime_partial); ^ /kisskb/src/lib/test_stackinit.c: In function 'test_big_hole_runtime_partial': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'test_big_hole_runtime_partial' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:101:2: note: in definition of macro 'DEFINE_TEST_DRIVER' var_type zero INIT_CLONE_ ## which; \ ^ /kisskb/src/lib/test_stackinit.c:254:3: note: in expansion of macro 'DEFINE_TEST' DEFINE_TEST(name ## _ ## init, \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:273:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(runtime_partial); ^ /kisskb/src/lib/test_stackinit.c: In function 'leaf_big_hole_runtime_all.isra.49': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'leaf_big_hole_runtime_all.isra.49' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:168:2: note: in definition of macro 'DEFINE_TEST' var_type var INIT_ ## which ## _ ## init_level; \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:274:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(runtime_all); ^ /kisskb/src/lib/test_stackinit.c: In function 'test_big_hole_runtime_all': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'test_big_hole_runtime_all' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:101:2: note: in definition of macro 'DEFINE_TEST_DRIVER' var_type zero INIT_CLONE_ ## which; \ ^ /kisskb/src/lib/test_stackinit.c:254:3: note: in expansion of macro 'DEFINE_TEST' DEFINE_TEST(name ## _ ## init, \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:274:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(runtime_all); ^ /kisskb/src/lib/test_stackinit.c: In function 'leaf_big_hole_none.isra.63': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'leaf_big_hole_none.isra.63' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:168:2: note: in definition of macro 'DEFINE_TEST' var_type var INIT_ ## which ## _ ## init_level; \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:277:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(none); ^ /kisskb/src/lib/test_stackinit.c: In function 'test_big_hole_none': /kisskb/src/lib/test_stackinit.c:255:15: warning: 'test_big_hole_none' uses dynamic stack allocation struct test_ ## name, STRUCT, init) ^ /kisskb/src/lib/test_stackinit.c:101:2: note: in definition of macro 'DEFINE_TEST_DRIVER' var_type zero INIT_CLONE_ ## which; \ ^ /kisskb/src/lib/test_stackinit.c:254:3: note: in expansion of macro 'DEFINE_TEST' DEFINE_TEST(name ## _ ## init, \ ^ /kisskb/src/lib/test_stackinit.c:259:3: note: in expansion of macro 'DEFINE_STRUCT_TEST' DEFINE_STRUCT_TEST(big_hole, init); \ ^ /kisskb/src/lib/test_stackinit.c:277:1: note: in expansion of macro 'DEFINE_STRUCT_TESTS' DEFINE_STRUCT_TESTS(none); ^ /kisskb/src/drivers/s390/net/ism_drv.c: In function 'ism_del_vlan_id': /kisskb/src/drivers/s390/net/ism_drv.c:331:1: warning: 'ism_del_vlan_id' uses dynamic stack allocation } ^ /kisskb/src/drivers/s390/net/ism_drv.c: In function 'ism_signal_ieq': /kisskb/src/drivers/s390/net/ism_drv.c:359:1: warning: 'ism_signal_ieq' uses dynamic stack allocation } ^ /kisskb/src/drivers/s390/net/ism_drv.c: In function 'ism_add_vlan_id': /kisskb/src/drivers/s390/net/ism_drv.c:317:1: warning: 'ism_add_vlan_id' uses dynamic stack allocation } ^ /kisskb/src/drivers/s390/net/ism_drv.c: In function 'ism_query_rgid': /kisskb/src/drivers/s390/net/ism_drv.c:216:1: warning: 'ism_query_rgid' uses dynamic stack allocation } ^ /kisskb/src/drivers/s390/net/ism_drv.c: In function 'ism_unregister_dmb': /kisskb/src/drivers/s390/net/ism_drv.c:303:1: warning: 'ism_unregister_dmb' uses dynamic stack allocation } ^ /kisskb/src/drivers/s390/net/ism_drv.c: In function 'ism_register_dmb': /kisskb/src/drivers/s390/net/ism_drv.c:282:1: warning: 'ism_register_dmb' uses dynamic stack allocation } ^ /kisskb/src/drivers/s390/net/ism_drv.c: In function 'query_info': /kisskb/src/drivers/s390/net/ism_drv.c:85:1: warning: 'query_info' uses dynamic stack allocation } ^ /kisskb/src/drivers/s390/net/ism_drv.c: In function 'ism_probe': /kisskb/src/drivers/s390/net/ism_drv.c:590:1: warning: 'ism_probe' uses dynamic stack allocation } ^ /kisskb/src/net/bridge/netfilter/ebtables.c: In function 'compat_copy_everything_to_user': /kisskb/src/net/bridge/netfilter/ebtables.c:1767:1: warning: 'compat_copy_everything_to_user' uses dynamic stack allocation } ^ /kisskb/src/kernel/rseq.c: In function '__rseq_handle_notify_resume': /kisskb/src/kernel/rseq.c:281:1: warning: '__rseq_handle_notify_resume' uses dynamic stack allocation } ^ /kisskb/src/kernel/rseq.c: In function 'rseq_syscall': /kisskb/src/kernel/rseq.c:300:1: warning: 'rseq_syscall' uses dynamic stack allocation } ^ /kisskb/src/fs/btrfs/tree-checker.c: In function 'check_root_item': /kisskb/src/fs/btrfs/tree-checker.c:1038:9: warning: missing braces around initializer [-Wmissing-braces] struct btrfs_root_item ri = { 0 }; ^ /kisskb/src/fs/btrfs/tree-checker.c:1038:9: warning: (near initialization for 'ri.inode') [-Wmissing-braces] /kisskb/src/drivers/target/iscsi/cxgbit/cxgbit_target.c: In function 'cxgbit_tx_datain_iso.isra.40': /kisskb/src/drivers/target/iscsi/cxgbit/cxgbit_target.c:482:1: warning: 'cxgbit_tx_datain_iso.isra.40' uses dynamic stack allocation } ^ /kisskb/src/drivers/target/iscsi/iscsi_target.c: In function 'iscsit_send_datain': /kisskb/src/drivers/target/iscsi/iscsi_target.c:2887:1: warning: 'iscsit_send_datain' uses dynamic stack allocation } ^ /kisskb/src/drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/navi10_ppt.c: In function 'navi10_get_gpu_metrics': /kisskb/src/drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/navi10_ppt.c:2567:2: warning: missing braces around initializer [-Wmissing-braces] SmuMetrics_NV12_t nv12_metrics = { 0 }; ^ /kisskb/src/drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/navi10_ppt.c:2567:2: warning: (near initialization for 'nv12_metrics.CurrClock') [-Wmissing-braces] /kisskb/src/drivers/input/joystick/analog.c:160:2: warning: #warning Precise timer not defined for this architecture. [-Wcpp] #warning Precise timer not defined for this architecture. ^ /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c: In function 'amdgpu_dm_psr_enable': /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c:9082:9: warning: missing braces around initializer [-Wmissing-braces] struct dc_static_screen_params params = {0}; ^ /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c:9082:9: warning: (near initialization for 'params.triggers') [-Wmissing-braces] /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser2.c: In function 'bios_parser_get_i2c_info': /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser2.c:297:9: warning: missing braces around initializer [-Wmissing-braces] struct atom_i2c_record dummy_record = {0}; ^ /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser2.c:297:9: warning: (near initialization for 'dummy_record.record_header') [-Wmissing-braces] /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dmub_hw_lock_mgr.c: In function 'dmub_hw_lock_mgr_cmd': /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dmub_hw_lock_mgr.c:36:8: warning: missing braces around initializer [-Wmissing-braces] union dmub_rb_cmd cmd = { 0 }; ^ /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dmub_hw_lock_mgr.c:36:8: warning: (near initialization for 'cmd.lock_hw') [-Wmissing-braces] /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc.c: In function 'commit_planes_for_stream': /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc.c:2440:11: warning: missing braces around initializer [-Wmissing-braces] union dmub_hw_lock_flags hw_locks = { 0 }; ^ /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc.c:2440:11: warning: (near initialization for 'hw_locks.bits') [-Wmissing-braces] /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc.c:2622:11: warning: missing braces around initializer [-Wmissing-braces] union dmub_hw_lock_flags hw_locks = { 0 }; ^ /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc.c:2622:11: warning: (near initialization for 'hw_locks.bits') [-Wmissing-braces] /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_link_dp.c: In function 'dp_test_get_audio_test_data': /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_link_dp.c:2795:8: warning: missing braces around initializer [-Wmissing-braces] union audio_test_mode dpcd_test_mode = {0}; ^ /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_link_dp.c:2795:8: warning: (near initialization for 'dpcd_test_mode.bits') [-Wmissing-braces] /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_link_dp.c:2797:8: warning: missing braces around initializer [-Wmissing-braces] union audio_test_pattern_period dpcd_pattern_period[AUDIO_CHANNELS_COUNT] = {0}; ^ /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_link_dp.c:2797:8: warning: (near initialization for 'dpcd_pattern_period[0]') [-Wmissing-braces] /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_link_dp.c: In function 'dc_link_dp_set_test_pattern': /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_link_dp.c:4126:11: warning: missing braces around initializer [-Wmissing-braces] union dmub_hw_lock_flags hw_locks = { 0 }; ^ /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_link_dp.c:4126:11: warning: (near initialization for 'hw_locks.bits') [-Wmissing-braces] /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_link_dp.c:4170:11: warning: missing braces around initializer [-Wmissing-braces] union dmub_hw_lock_flags hw_locks = { 0 }; ^ /kisskb/src/drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_link_dp.c:4170:11: warning: (near initialization for 'hw_locks.bits') [-Wmissing-braces] /kisskb/src/drivers/gpu/drm/rockchip/cdn-dp-core.c:1124:12: warning: 'cdn_dp_resume' defined but not used [-Wunused-function] static int cdn_dp_resume(struct device *dev) ^ /kisskb/src/drivers/media/platform/marvell-ccic/mmp-driver.c:310:12: warning: 'mmpcam_runtime_resume' defined but not used [-Wunused-function] static int mmpcam_runtime_resume(struct device *dev) ^ /kisskb/src/drivers/media/platform/marvell-ccic/mmp-driver.c:324:12: warning: 'mmpcam_runtime_suspend' defined but not used [-Wunused-function] static int mmpcam_runtime_suspend(struct device *dev) ^ /kisskb/src/drivers/net/ethernet/chelsio/inline_crypto/chtls/chtls_cm.c: In function 'wait_for_states.constprop': /kisskb/src/drivers/net/ethernet/chelsio/inline_crypto/chtls/chtls_cm.c:441:1: warning: 'wait_for_states.constprop' uses dynamic stack allocation } ^ /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_aes_cbc_setkey': /kisskb/src/drivers/crypto/sa2ul.c:924:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:924:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_aes_ecb_setkey': /kisskb/src/drivers/crypto/sa2ul.c:944:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:944:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_3des_cbc_setkey': /kisskb/src/drivers/crypto/sa2ul.c:962:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:962:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_3des_ecb_setkey': /kisskb/src/drivers/crypto/sa2ul.c:976:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:976:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_sha1_cra_init': /kisskb/src/drivers/crypto/sa2ul.c:1601:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:1601:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_sha256_cra_init': /kisskb/src/drivers/crypto/sa2ul.c:1617:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:1617:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_sha512_cra_init': /kisskb/src/drivers/crypto/sa2ul.c:1633:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:1633:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_aead_cbc_sha1_setkey': /kisskb/src/drivers/crypto/sa2ul.c:1862:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:1862:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] /kisskb/src/drivers/crypto/sa2ul.c: In function 'sa_aead_cbc_sha256_setkey': /kisskb/src/drivers/crypto/sa2ul.c:1875:9: warning: missing braces around initializer [-Wmissing-braces] struct algo_data ad = { 0 }; ^ /kisskb/src/drivers/crypto/sa2ul.c:1875:9: warning: (near initialization for 'ad.enc_eng') [-Wmissing-braces] In file included from /kisskb/src/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c:42:0: /kisskb/src/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c: In function 'mvpp2_setup_bm_pool': /kisskb/src/drivers/net/ethernet/marvell/mvpp2/mvpp2.h:760:2: warning: overflow in implicit constant conversion [-Woverflow] ((total_size) - MVPP2_SKB_HEADROOM - MVPP2_SKB_SHINFO_SIZE) ^ /kisskb/src/drivers/net/ethernet/marvell/mvpp2/mvpp2.h:864:33: note: in expansion of macro 'MVPP2_RX_MAX_PKT_SIZE' #define MVPP2_BM_SHORT_PKT_SIZE MVPP2_RX_MAX_PKT_SIZE(MVPP2_BM_SHORT_FRAME_SIZE) ^ /kisskb/src/drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c:647:41: note: in expansion of macro 'MVPP2_BM_SHORT_PKT_SIZE' mvpp2_pools[MVPP2_BM_SHORT].pkt_size = MVPP2_BM_SHORT_PKT_SIZE; ^ /kisskb/src/drivers/gpu/drm/xlnx/zynqmp_dp.c: In function 'zynqmp_dp_update_vs_emph': /kisskb/src/drivers/gpu/drm/xlnx/zynqmp_dp.c:667:9: warning: missing braces around initializer [-Wmissing-braces] union phy_configure_opts opts = { 0 }; ^ /kisskb/src/drivers/gpu/drm/xlnx/zynqmp_dp.c:667:9: warning: (near initialization for 'opts.mipi_dphy') [-Wmissing-braces] /kisskb/src/drivers/net/ethernet/mscc/ocelot_vcap.c: In function 'is1_entry_set': /kisskb/src/drivers/net/ethernet/mscc/ocelot_vcap.c:755:11: warning: missing braces around initializer [-Wmissing-braces] struct ocelot_vcap_u16 etype = {0}; ^ /kisskb/src/drivers/net/ethernet/mscc/ocelot_vcap.c:755:11: warning: (near initialization for 'etype.value') [-Wmissing-braces] /kisskb/src/drivers/net/ethernet/neterion/vxge/vxge-config.c: In function 'vxge_hw_device_hw_info_get': /kisskb/src/drivers/net/ethernet/neterion/vxge/vxge-config.c:1092:1: warning: 'vxge_hw_device_hw_info_get' uses dynamic stack allocation } ^ /kisskb/src/arch/s390/boot/mem_detect.c: In function 'detect_memory': /kisskb/src/arch/s390/boot/mem_detect.c:175:1: warning: 'detect_memory' uses dynamic stack allocation } ^ Completed OK # rm -rf /kisskb/build/linus_s390-allyesconfig_s390x-gcc4.9 # Build took: 0:18:45.879357