Cover Letter Detail
Show a cover letter.
GET /api/covers/817723/?format=api
{ "id": 817723, "url": "http://patchwork.ozlabs.org/api/covers/817723/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netdev/cover/20170922212930.620249-1-arnd@arndb.de/", "project": { "id": 7, "url": "http://patchwork.ozlabs.org/api/projects/7/?format=api", "name": "Linux network development", "link_name": "netdev", "list_id": "netdev.vger.kernel.org", "list_email": "netdev@vger.kernel.org", "web_url": null, "scm_url": null, "webscm_url": null, "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20170922212930.620249-1-arnd@arndb.de>", "list_archive_url": null, "date": "2017-09-22T21:29:11", "name": "[v4,0/9] bring back stack frame warning with KASAN", "submitter": { "id": 30, "url": "http://patchwork.ozlabs.org/api/people/30/?format=api", "name": "Arnd Bergmann", "email": "arnd@arndb.de" }, "mbox": "http://patchwork.ozlabs.org/project/netdev/cover/20170922212930.620249-1-arnd@arndb.de/mbox/", "series": [ { "id": 4712, "url": "http://patchwork.ozlabs.org/api/series/4712/?format=api", "web_url": "http://patchwork.ozlabs.org/project/netdev/list/?series=4712", "date": "2017-09-22T21:29:16", "name": "bring back stack frame warning with KASAN", "version": 4, "mbox": "http://patchwork.ozlabs.org/series/4712/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/covers/817723/comments/", "headers": { "Return-Path": "<netdev-owner@vger.kernel.org>", "X-Original-To": "patchwork-incoming@ozlabs.org", "Delivered-To": "patchwork-incoming@ozlabs.org", "Authentication-Results": "ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=vger.kernel.org\n\t(client-ip=209.132.180.67; helo=vger.kernel.org;\n\tenvelope-from=netdev-owner@vger.kernel.org;\n\treceiver=<UNKNOWN>)", "Received": [ "from vger.kernel.org (vger.kernel.org [209.132.180.67])\n\tby ozlabs.org (Postfix) with ESMTP id 3xzRZx6Nc4z9s9Y\n\tfor <patchwork-incoming@ozlabs.org>;\n\tSat, 23 Sep 2017 07:34:49 +1000 (AEST)", "(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n\tid S1752276AbdIVVad (ORCPT <rfc822;patchwork-incoming@ozlabs.org>);\n\tFri, 22 Sep 2017 17:30:33 -0400", "from mout.kundenserver.de ([212.227.126.131]:60649 \"EHLO\n\tmout.kundenserver.de\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n\twith ESMTP id S1752071AbdIVVaa (ORCPT\n\t<rfc822;netdev@vger.kernel.org>); Fri, 22 Sep 2017 17:30:30 -0400", "from wuerfel.lan ([95.208.190.237]) by mrelayeu.kundenserver.de\n\t(mreue002 [212.227.15.129]) with ESMTPA (Nemesis) id\n\t0MFUkm-1e7f913CCq-00EL1O; Fri, 22 Sep 2017 23:29:52 +0200" ], "From": "Arnd Bergmann <arnd@arndb.de>", "Cc": "Arnd Bergmann <arnd@arndb.de>,\n\tMauro Carvalho Chehab <mchehab@kernel.org>, Jiri Pirko\n\t<jiri@resnulli.us>, Arend van Spriel <arend.vanspriel@broadcom.com>,\n\tKalle Valo <kvalo@codeaurora.org>, \n\t\"David S. Miller\" <davem@davemloft.net>, Andrey Ryabinin\n\t<aryabinin@virtuozzo.com>, Alexander Potapenko <glider@google.com>,\n\tDmitry Vyukov <dvyukov@google.com>, \n\tMasahiro Yamada <yamada.masahiro@socionext.com>, Michal Marek\n\t<mmarek@suse.com>, Andrew Morton <akpm@linux-foundation.org>,\n\tKees Cook <keescook@chromium.org>, \n\tGeert Uytterhoeven <geert@linux-m68k.org>, Greg Kroah-Hartman\n\t<gregkh@linuxfoundation.org>, linux-media@vger.kernel.org,\n\tlinux-kernel@vger.kernel.org, netdev@vger.kernel.org,\n\tlinux-wireless@vger.kernel.org, brcm80211-dev-list.pdl@broadcom.com,\n\tbrcm80211-dev-list@cypress.com, kasan-dev@googlegroups.com, \n\tlinux-kbuild@vger.kernel.org, Jakub Jelinek <jakub@gcc.gnu.org>, \n\t=?utf-8?q?Martin_Li=C5=A1ka?= <marxin@gcc.gnu.org>", "Subject": "[PATCH v4 0/9] bring back stack frame warning with KASAN", "Date": "Fri, 22 Sep 2017 23:29:11 +0200", "Message-Id": "<20170922212930.620249-1-arnd@arndb.de>", "X-Mailer": "git-send-email 2.9.0", "MIME-Version": "1.0", "Content-Type": "text/plain; charset=UTF-8", "Content-Transfer-Encoding": "8bit", "X-Provags-ID": "V03:K0:aTMspNE49LrMRPPNHR8VGYynyMNIecsxrjjkOAVi0VQtBwmer1K\n\ty2nVZ/Pi2gHFZtFLbE4z6/xJIyG7mrFRxB1xhkcTwODGhRKe3ho+leipkBmm6MP5ZnTD12A\n\tNmkK1ktqcI7RtCIr8e/eaTDEOseKYsvbCHD0PLKbd+y+2dDyF2Qg/z4GVGDpDTo2EC1GM9M\n\toS7eLfYBFKjjfcm/tMn3w==", "X-UI-Out-Filterresults": "notjunk:1; V01:K0:6BuojKK1HbM=:WZNwzwOUv2i8uDfGj1Du+j\n\t5MVKlx3QyKyLywbe0p8E8/7H1DlhuQgdstTOtcI6c9lmfLgpN44jEyRykvR7+X+ON9t8bkFru\n\t9Kqlh5vk4jdz3rf06bpQCalYwngDRgVin9cY9rZ9JEEby70mP0358tLWkbZEoVeVQcsIf7lgr\n\tDn/yzsVG9q8trgg+FBdFvsfpTexbVCXbxfcAsBF+e/KAr0YUtfG7PAi6ZBmJdV489oqB61u1q\n\ta5FVBowx9Kx3WhotcDkUCMi6yJCG5wvr8pXEhSlOLP7JD2cPUXj5JlRzRvh4wJjNU9iYF59G+\n\tcoruTtqY+6kbca2THeq0I7qeND66SOT5hvE9i86cRrmWiTC7hVaTEqXs2L81twNXnISdbm5fF\n\tvevrt73kIXNVrXgbuiEbE3JEDVTtcpQNlG+LVnYSDGp8dpbcgvfAAQYa5cmJoxsMr55xMZBkb\n\t/58WqJen4B39pp2mfKcB4htNgoJzaOJvLD2hKXxwhqXRT770MQbptH4Y8a/anRettn9wN7BjJ\n\tD4W9IjY6Y3NSyikKEL5/ppbHm2fAZynZ7p8gypBGICZ6XecydGqLKI4WCum52TtusGePBABzU\n\toV3p19IASj8zpZ2fctRQDQmfNUCdNkiTbQm1fkR5aNUJg7S5sjVtwJ5hOn481f3TMCLKIg5jg\n\t2q2/mDeG398fxkVt8mMBEuzr/vSiGHpwgUmwC7Q0yQuPiQD5Sar1FRifwwZJsrvSk6iq7fwo0\n\taXPDdH9z4lEF0KNgUA7KIFAiQShA/TVQUsNDHuU91+MC2tyRvxAi64pKfbU=", "To": "unlisted-recipients:; (no To-header on input)", "Sender": "netdev-owner@vger.kernel.org", "Precedence": "bulk", "List-ID": "<netdev.vger.kernel.org>", "X-Mailing-List": "netdev@vger.kernel.org" }, "content": "This is a new version of patches I originally submitted back in March\n[1], and last time in June [2]. This time I have basically rewritten\nthe entire patch series based on a new approach that came out of GCC\nPR81715 that I opened[3]. The upcoming gcc-8 release is now much better\nat consolidating stack slots for inline function arguments and would\nobsolete most of my workaround patches here, but we still need the\nworkarounds for gcc-5, gcc-6 and gcc-7. Many thanks to Jakub Jelinek\nfor the analysis and the gcc-8 patch!\n\nThis minimal set of patches only makes sure that we do get frame size\nwarnings in allmodconfig for x86_64 and arm64 again with a 2048 byte\nlimit, even with KASAN enabled, but without the new KASAN_EXTRA option.\n\nI set the warning limit with KASAN_EXTRA to 3072, limiting the\nallmodconfig+KASAN_EXTRA build output to around 50 legitimate warnings.\nThese are for stack frames up to 31KB that will cause an immediate stack\noverflow, and fixing them would require bringing back my older patches\nand more. We can debate whether we want to apply those as a follow-up,\nor instead remove the option entirely.\n\nAnother follow-up series I have reduces the warning limit with\nKASAN to 1536, and without KASAN to 1280 for 64-bit architectures.\n\nI hope we can get all patches merged for v4.14 and most of them\nbackported into stable kernels. Since we no longer have a dependency\non a preparation patch, my preference would be for the respective\nsubsystem maintainers to pick up the individual patches.\nThe last patch introduces a couple of \"allmodconfig\" build warnings\non x86 and arm64 unless the other patches get merged first, I'll\nsend that again separately once everything else has been taken\ncare of.\n\nThe remaining contents are:\n- -fsanitize-address-use-after-scope is moved to a separate\n CONFIG_KASAN_EXTRA option that increases the warning limit\n- CONFIG_KASAN_EXTRA is disabled with CONFIG_COMPILE_TEST,\n improving compile speed and disabling code that leads to\n valid warnings on gcc-7.0.1\n- KMEMCHECK conflicts with CONFIG_KASAN\n- my inline function workaround is applied to netlink, one\n ethernet driver and a few media drivers.\n- The rework for the brcmsmac driver from previous versions is\n still there.\n\nChanges since v3:\n- I dropped all \"noinline_if_stackbloat\" annotations and used\n a workaround that introduces additional local variables in the inline\n functions to copy the function arguments, resulting in much better\n object code at the expense of having rather odd-looking functions.\n- The v4 patches now don't help with KASAN_EXTRA any more at all,\n CONFIG_KASAN_EXTRA now depends on CONFIG_DEBUG_KERNEL, as it\n is more dangerous in production systems than it was before\n- Rewrote the \"em28xx\" patch to be small enough for a stable backport.\n- The rewritten vt-keyboard patches got merged and are now in\n stable kernels as well.\n\nChanges since v2:\n- rewrote the vt-keyboard patch based on feedback\n- and made KMEMCHECK mutually exclusive with KASAN\n (rather than KASAN_EXTRA)\n\nChanges since v1:\n- dropped patches to fix all the CONFIG_KASAN_EXTRA warnings:\n - READ_ONCE/WRITE_ONCE cause problems in lots of code\n - typecheck() causes huge problems in a few places\n - many more uses of noinline_if_stackbloat\n\n Arnd\n\n[1] https://www.spinics.net/lists/linux-wireless/msg159819.html\n[2] https://www.spinics.net/lists/netdev/msg441918.html\n[3] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81715\n\nArnd Bergmann (9):\n brcmsmac: make some local variables 'static const' to reduce stack\n size\n brcmsmac: split up wlc_phy_workarounds_nphy\n brcmsmac: reindent split functions\n em28xx: fix em28xx_dvb_init for KASAN\n r820t: fix r820t_write_reg for KASAN\n dvb-frontends: fix i2c access helpers for KASAN\n rocker: fix rocker_tlv_put_* functions for KASAN\n netlink: fix nla_put_{u8,u16,u32} for KASAN\n kasan: rework Kconfig settings\n\n drivers/media/dvb-frontends/ascot2e.c | 4 +-\n drivers/media/dvb-frontends/cxd2841er.c | 4 +-\n drivers/media/dvb-frontends/helene.c | 4 +-\n drivers/media/dvb-frontends/horus3a.c | 4 +-\n drivers/media/dvb-frontends/itd1000.c | 5 +-\n drivers/media/dvb-frontends/mt312.c | 4 +-\n drivers/media/dvb-frontends/stb0899_drv.c | 3 +-\n drivers/media/dvb-frontends/stb6100.c | 6 +-\n drivers/media/dvb-frontends/stv0367.c | 4 +-\n drivers/media/dvb-frontends/stv090x.c | 4 +-\n drivers/media/dvb-frontends/stv6110x.c | 4 +-\n drivers/media/dvb-frontends/zl10039.c | 4 +-\n drivers/media/tuners/r820t.c | 13 +-\n drivers/media/usb/em28xx/em28xx-dvb.c | 30 +-\n drivers/net/ethernet/rocker/rocker_tlv.h | 48 +-\n .../broadcom/brcm80211/brcmsmac/phy/phy_n.c | 1856 ++++++++++----------\n include/net/netlink.h | 73 +-\n lib/Kconfig.debug | 4 +-\n lib/Kconfig.kasan | 13 +-\n lib/Kconfig.kmemcheck | 1 +\n scripts/Makefile.kasan | 3 +\n 21 files changed, 1047 insertions(+), 1044 deletions(-)" }