On Mon, Aug 7, 2017 at 9:12 AM, Byungchul Park <byungchul.park@xxxxxxx> wrote: > Although wait_for_completion() and its family can cause deadlock, the > lock correctness validator could not be applied to them until now, > because things like complete() are usually called in a different context > from the waiting context, which violates lockdep's assumption. > > Thanks to CONFIG_LOCKDEP_CROSSRELEASE, we can now apply the lockdep > detector to those completion operations. Applied it. > > Signed-off-by: Byungchul Park <byungchul.park@xxxxxxx> This patch introduced a significant growth in kernel stack usage for a small set of functions. I see two new warnings for functions that get tipped over the 1024 or 2048 byte frame size limit in linux-next (with a few other patches applied): Before: drivers/md/dm-integrity.c: In function 'write_journal': drivers/md/dm-integrity.c:827:1: error: the frame size of 504 bytes is larger than xxx bytes [-Werror=frame-larger-than=] drivers/mmc/core/mmc_test.c: In function 'mmc_test_area_io_seq': drivers/mmc/core/mmc_test.c:1491:1: error: the frame size of 680 bytes is larger than 104 bytes [-Werror=frame-larger-than=] After: drivers/md/dm-integrity.c: In function 'write_journal': drivers/md/dm-integrity.c:827:1: error: the frame size of 1280 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] drivers/mmc/core/mmc_test.c: In function 'mmc_test_area_io_seq': drivers/mmc/core/mmc_test.c:1491:1: error: the frame size of 1072 bytes is larger than 1024 bytes [-Werror=frame-larger-than=] I have not checked in detail why this happens, but I'm guessing that there is an overall increase in stack usage with CONFIG_LOCKDEP_COMPLETE in functions using completions, and I think it would be good to try to come up with a version that doesn't add as much. Arnd -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>