From patchwork Sun Jan 15 15:03:33 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: SF Markus Elfring X-Patchwork-Id: 9520913 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id ACB2E6020A for ; Tue, 17 Jan 2017 13:31:11 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5E649283BB for ; Tue, 17 Jan 2017 13:31:11 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 5028C2848D; Tue, 17 Jan 2017 13:31:11 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.2 required=2.0 tests=BAYES_00, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from emsm-gh1-uea11.nsa.gov (smtp.nsa.gov [8.44.101.9]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 57469205D6 for ; Tue, 17 Jan 2017 13:31:10 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.33,244,1477958400"; d="scan'208";a="2323389" IronPort-PHdr: =?us-ascii?q?9a23=3AiwL2LBLn+Jq5Y8PvDNmcpTZWNBhigK39O0sv0rFi?= =?us-ascii?q?tYgQL/r9rarrMEGX3/hxlliBBdydsKMYzbGJ+P25EUU7or+5+EgYd5JNUxJXwe?= =?us-ascii?q?43pCcHRPC/NEvgMfTxZDY7FskRHHVs/nW8LFQHUJ2mPw6arXK99yMdFQviPgRp?= =?us-ascii?q?OOv1BpTSj8Oq3Oyu5pHfeQtFiT6ybL9oIhi7rwrdu8kLjYB/Nqs/1xzFr2dSde?= =?us-ascii?q?9L321oP1WTnxj95se04pFu9jlbtuwi+cBdT6j0Zrw0QrNEAjsoNWA1/9DrugLY?= =?us-ascii?q?TQST/HscU34ZnQRODgPY8Rz1RJbxsi/9tupgxCmXOND9QL4oVTi+6apgVQTlgz?= =?us-ascii?q?kbOTEn7G7Xi9RwjKNFrxKnuxx/2JPfbIWMOPZjYq/RYdYWSGxPUcZLUyxKH52y?= =?us-ascii?q?YY0BAeEcOepUtpTxq0cLoRa4GAKiBv7gyiVQi3Hrw6M63eQvHwLI0gMuEN0Bsm?= =?us-ascii?q?zUodfoOKocTe+7w7fHzS7YYvNK2zrw8pTEfgwvrP2SW797bMrfyVMoFwPAllie?= =?us-ascii?q?tIzrNC6S2OsXqWib7PdgVfmygGAorwFxrCKvxsYqionGm4kYzU7L9SF3wIYvJN?= =?us-ascii?q?24TkF7bMW5EJtLqS6aLZB2Ttk5Q2FvpSY60KEJtoC1fCgN0pQnyADQZ+aBc4eW?= =?us-ascii?q?/hLuTeCcKip7inJ9YL+zmhm//Ee6xuD8S8W4ykhGoyVbntXWq3wBzx7e58udRv?= =?us-ascii?q?Zy+kqtwyuD2g/R5+1ePEw5ka7WJpg8ybAqjJUTq17MHirulUXzi6+Za1sr9/Cz?= =?us-ascii?q?6+TifrXmvpicN5Joig3mMqQhhMi/AeMgPwgSRWeb4+W81KD4/UHjXLVLjuE5kq?= =?us-ascii?q?nesJzAI8QUurW5DBNP3oYm6ha/Cy+q0NUenXYZMFJIYA+LgofmNl3UIP30EO2z?= =?us-ascii?q?j0qjnTt13fzKI6XtApDXIXjClLfhc6x960lZyAcr1tBQ+ZZUCrAHIPLuVU79rc?= =?us-ascii?q?fXDhgkMwyy3+noFs5925gCWWOPHqCZMKTSvUWO5uI0OeaAfoAVuDHjK/Q9/f7h?= =?us-ascii?q?kWc5mUMBfamuxZYXane4HvJ8LEWFYXrjmNEBHHwIvgo5SuzqjUeNUSVPZ3msRa?= =?us-ascii?q?I8/Ss3CIW8DYfMXoqtmqCO3D+nHp1KYWBLElKMEXXyeIqYWPcMcyWSIslgkjwa?= =?us-ascii?q?TrWhRYsh1QyhtQDh1rpnKPbU+jACuZLkzth16PXZlQsu+jxsE8Sdz2aNQnlsnm?= =?us-ascii?q?wWXDA5wqZ/oU1hyleEyqV4guJXGsJN6P9TVQc6L5HcxfRgC9/uQgLBYsuJSFG+?= =?us-ascii?q?T9q7BjExSNQxzMIQbEZ5GtWvlQrM0DSwA78SjbCLA4Y08q3E1XjrO8l902rG1L?= =?us-ascii?q?Umj1Q+X8RPKXephrRk+gfPAI7JllmWmLyxdaQAxiLN8nmMzXaWtkFCTAFwSbnF?= =?us-ascii?q?XWwYZkbOrNT54F/CQKGqCbs5NwtO19KCKrFKa9DyilVGXOnsONLbY22rmmewAQ?= =?us-ascii?q?2HxrSDbYbwfGUdxirdAlAekw8P5XaGKRQ+BiC5rmPeDT1uElTvbljp8el6sX+7?= =?us-ascii?q?T0k0wxuMb0J7zbq1+R8VheKCRP8J2LILpjshoS1uHFmhx9LWF8aApw15caRSYN?= =?us-ascii?q?M95FJH2nzDtwFmMJyvMb1thlkEcwttp0PuzRJ3Codensc2sHMm1g1yKbiX0FlZ?= =?us-ascii?q?bTOXwYjwOqHLKmn15B2vZbTW1UvY0NmK+6cP8+81q1D7vAGoD0Yi6Htm08JP33?= =?us-ascii?q?ub/JXKAxIYUYjtXUYv6xh6u7babzE+54zO1n1sNrS0vyTB290zB+slzQugc81Y?= =?us-ascii?q?MKOeGw/4C9caCNS2KOw2h1ipaQoJM/pP+64uPsOpaeGG1bWxM+l8mTKql2NH4J?= =?us-ascii?q?py0kiU7SpzVvbI34oZw/GfxgaISy3zjFO/vcDshYBFZTYSE3GkySf4BY5eeKty?= =?us-ascii?q?fZoKCWi0OcG3wMtxh4L1UX5C6FGjH08G2NOueReKb1zywwlQ1UAQoXG8nSu40i?= =?us-ascii?q?B0kzYsrqWFxiDOxP7idBUfMG5RWGZilUvsIZSzj90CR0ioYRIplBy+5Ubm3KVb?= =?us-ascii?q?v6J/L27dQEdNZSf2KXtuUq2uubqee8RP8o8nsT1LUOSgZlCXUrD8rAEe0yP/AW?= =?us-ascii?q?Re3is7eiq0uprnhRx1k3+dLHNpoHreY8Fwyg/V5MbASv5JwjoGWC54hCHLBleh?= =?us-ascii?q?Itap/M+bl5PYv++iUGKhU4FcfjPwzYOcrie743NlAQGnlfCphtLnCRQ60TP819?= =?us-ascii?q?RyUyXIrRL8Yo312KShKu9oZFdnBEX768ZgHYF+iIQwjokK2XcGnpWV4WYHkWDr?= =?us-ascii?q?PNVF2KLxcGYNRTkRw9LP/Afl2EpjLnSGx4/iUnWdw81haMOgYmMRwC496NpKCK?= =?us-ascii?q?iM5rxegSR1uka4rR7WYfVlmjcdyOAu6GIDj+ESpgUtyiSdArYPHUhXJiHsjAyI?= =?us-ascii?q?79G4rKVWeGmvaqK81ExgktC9FLuCuB1TWG7lepc+Gi999t9/MFXI0H339I7kYs?= =?us-ascii?q?XfbdUdtxCPiBfAkvRaKIkrmvoNnypnNnr3vWc5xO4jkRxuwZa6sZCfK2p34aK5?= =?us-ascii?q?BgRUOSfva8wI/THtibpensGQ3420G5VtBjMLXJz0Qv6yFjIdq+jnPR6UEDIgsn?= =?us-ascii?q?ebBabfHQiH5UdlsX3PFYurOmqUJHYHy9ViXx+dK1JDgAwOWzU6hJE5HBiwxMP9?= =?us-ascii?q?aEd5+iwR5lngpxtU0O1oKh3/XXnHpAiybDc0VIaQLABN4wFf/EfaL9ae7vlpEy?= =?us-ascii?q?FD+Z2hsRaNJXCFaARGCmEJQEOECE75Mrmo+9bA7/CSBvCiIPvWfbWOteteWu+W?= =?us-ascii?q?xZKpz4Rr5CiMNsOSMXliFfE73FRMXWxhEcTDhzoPUzAXlz7Kb8ODvBez4DB3rs?= =?us-ascii?q?Sk/fv3WQLv+YuOB6JcMdp1/RC6m6CDN/SfhCxhMzZXyosMxWPUyLgYxFMSiCFv?= =?us-ascii?q?dz2zHrkbsC7NS6zQmqFJAB4HdyNzNMxI76ci0QVXP87UlM/13KZijvEpE1dFSU?= =?us-ascii?q?DhmsaxaMwEOW69Mk/HBEGONLmdKz3E3dz4YaSmSbJKlOVUrRqwuTSFHED/IjSP?= =?us-ascii?q?jT7pVwqgMetUliGUIAReuJ2hchZqEWXsUdTmZQegPdBqiz0526c4hnTQNW4TKT?= =?us-ascii?q?J8aV9CrqWM7SNEhfVyA3ZB4mBrLOWeniaW9e3YKpEWsPZwGCt7i+da7G49y7tP?= =?us-ascii?q?4yFOXOZ1lzfKrt5yv1GmlfGCyjx9UBVUsjZLnJmGvUtjOaXD7ZlARXjE/BML7W?= =?us-ascii?q?qKDRQFu9plBcfru6xKzdjPjq3zIi9Y893I5cscG9TUKMWfPXU8KhrmBiTbDAQf?= =?us-ascii?q?TTGxK2HSnFddn+uR9n2ItJg1sILgmJ4TSr9dTlM1DOoWClhiHNwBIJZ3WSkokb?= =?us-ascii?q?iFg84U/XC+tgXeRN1GvpDbUfKfGe7gKDeWjblDYRsF2q73IpoIOY36wUNibEN2?= =?us-ascii?q?nIPQG0rfRdpNuDFubhcooEVR93hzVnc8203/ZQOz/nAeDvm0ngYohQt4ZOQi7j?= =?us-ascii?q?bs41MsKVrNqyo8ik4xmc/qgTqJaj7+ML+wXZ1KCyrzr0UxLpT7QwNvYQ2omkxl?= =?us-ascii?q?NSnLR7RKgLt6cmBklgzctIBTFv5bSK1LfAUfxeqLZ/ky11RTtDmnz1dd5eTZEZ?= =?us-ascii?q?tiiBcqcZm0onJGxQ1sdto1KLfTJKpO1VhQmriBvimz1uAywQ8SPUAN/32OeCQQ?= =?us-ascii?q?okwHKqEmJza0/uxr8QGCgSVMeHMSWPUwuPJl6kM9Nv+bwCLhyb5MN0exN+KHL6?= =?us-ascii?q?ODpWfBldSEQlUu2UMUj0NF56R50d8/c0qIUEAi1KaeGA4XNcrDNA5VdNFf+2LJ?= =?us-ascii?q?fSaUtuXMz4l1MJuhGeD1V++OtboUg0K+EAYvAYsM8twLHoOw30HAMcfnMLkFxA?= =?us-ascii?q?0j5ATxOlqKEe9JdwiNkDcbpMG/14R60pNBKTEYG2l9Nj+35rnPrA8wnPWDRMs2?= =?us-ascii?q?YmsdXoYcMnI2X9e6lDBfv3VBCzm6ye0ZyA6f7zPmoSTQFjb8ZcJ5ZPiIfRNsFM?= =?us-ascii?q?22+TIn/qitl1HX9pTeJ2fnNdVtodLA9eQap5ObBPxOVrl9r13Qm49GSHy2S2TP?= =?us-ascii?q?C8K6J4Dsa4kwatz5Emu1XUC6izIyScfxIMuhI7OWgQ72X4ZUsYia3DclNcOnED?= =?us-ascii?q?ERBQtwrfkZ5K1gfQ0Df4Y7YRnwugQ9Lay+IB2X0tOyQ2atMjZWQP5fzf2maLBN?= =?us-ascii?q?ySojcPO6wmM6Tp4m1+m37VINRJYSgxHCxPajYo5eUTTzGn1dYAjAuCs5lmh7Oe?= =?us-ascii?q?kp2Os/xg3HsUUEOTCRaONpcHBEv807BV6KLnV2EHA3R1mAjYfY4w6s2L4T/y1B?= =?us-ascii?q?n9ZUz+JFsX7+voPBbzK2QqCrr4vaszY4Z9g8v6JxKZDjIteBtJ7GhDPfSJjQvR?= =?us-ascii?q?GbXyGiEvpbmt5QICVeQPZSgmwqIs0GtpBH6UYoWMc+OqZDCK8yqbC2cTBkFzId?= =?us-ascii?q?zTcFV4Oc2zwPmvyz1KXclhqLapstLQIEv4tYgtsGSSF2eCMfqLWkV4XMmG+OUn?= =?us-ascii?q?ILLxsL7QRQ+AIAkZd9fvrj4IrJUJBMyzlWo/ZvUiXTD5dm6kH1R32Rj1XjVPqh?= =?us-ascii?q?lOmp0h5Iw/L3ztkXQhh/BlZBx+xOjEsnNKl3K7UMvo7NqjKHaUH6s3jxx+a9OF?= =?us-ascii?q?ZRzsnUd1n5DIXbr2r8TjMT9mEURYNVz3HfD5sSmRJjaKk3vFVMPJymekHm6jw+?= =?us-ascii?q?3YtpBb64WtuwylY5t3YJXTmqHMRFC+FntlLXVzllY5GkqJXlJ5VSTHVf+IeYq1?= =?us-ascii?q?tDlkViLTK5w4JGK85R+j4MQCRPoTKFsdq8UsFMxc92D54JItd+oXj9G7hJOJmP?= =?us-ascii?q?rHIopLPj0HjZ+yozsF2i3jW8B7e4T/5F/20ZAggpP2Oeqk01AOs2/GbS9VTNsl?= =?us-ascii?q?5v8udeAbiPil5xryhhEZBUATZJzmulL1V1THlJqelaL77Vc8NESfkoeRCvIwA+?= =?us-ascii?q?FeIh30GR5050h2r5YypougtZ4C3dXgg0VSgJgrj2gzEerN+oOSMCQZJScTohdz?= =?us-ascii?q?vFKx6cmS1PoBZfbERqVosFAtpZ/rEUxpFY/szcRkawMSsFRgBtNhok0fpDkk5O?= =?us-ascii?q?qEWYdjrHDQWycfbArwZ6ctqPo86xNPT24gNHhZ39sOwi8KUDXXKmkxW3Qd/Ct4?= =?us-ascii?q?/8qsGKtkyWeaf6NO2zf2TMQyXSghCrm7gkFYXK8DbOPwZBLZl112Yka4D7CWHX?= =?us-ascii?q?JRRGO74bJ01DWK9hZ9VJvvxWas15dKsH4qJiGhWHRhbzF4O1t/lGMkzfRTLAIC?= =?us-ascii?q?Wd6ua/u57c7aTBSej8YcyB32zHTLxqMZd68zb7B6zn0YtZ+kroxPhh6F91SV/b?= =?us-ascii?q?PC+fttjhIB0E5NW6fEv4opIpBS/WAIt3kHf13kFAbNYXTDe3/5QE055Z83HwSf?= =?us-ascii?q?9i0kfvruJS8aVk6ZMt7LBt08u0Ir3SKftCu099HheUHhlq9okqAGVnW2BRePEe?= =?us-ascii?q?J+nMcqkCkMDur/z3F7YN5x2L+uxZbt/HKF/dmsWlDTGcUxNElh8bqTEGNgucy+?= =?us-ascii?q?KFm6hsRMagv+f53kYt7EaiLh4a1r9i/5yJ+qyWq+/LdBve0aILWrD0Sc/pqLQj?= =?us-ascii?q?pV+S7+U+lLESYmx1fxGnEO8FW84f3Gjg16cqzTkoE8zZAbLt4/tDV289njL8mp?= =?us-ascii?q?ByA1QWFekSHbqQ54hemX04m+PBPN0Mbq9CgnqPFQKjErIay36k8S2XIGd/ghHJ?= =?us-ascii?q?zh7/X3i+7EPsoi9+WivMyM3vkkxLWbmrHU1SRTamOVdksDOTOwrlrNX3ubk07E?= =?us-ascii?q?EyNmzrqteNmXC8N7xJBML/JcaTIS8uqFIQlp0xScSl2ZoHFtqlPNcR7HZ+Y+PY?= =?us-ascii?q?62OviCJBoqFHh4/E7sGU/PXXE2OggLeBq7WR3jBY12Q3vU0i6tC6KP7C/dqKQ+?= =?us-ascii?q?6n12wJVSdwpxPBXwKpqrzct10UPEuL0EHXmIwFIN5Uxnw41kD86+glXt0z6Atf?= =?us-ascii?q?FoHaZ/MBvjD/Ij30zkiDY9gvTCmRzyNXHk7pEVl/AKU8wn//s9/SmHff/l0pSZ?= =?us-ascii?q?N8d0r5ihxrF484M14i6EALwiofFggAcRSbDKqtBUnlNoYEW1YMZgmA3LigYKg3?= =?us-ascii?q?xVdzwrSt5ODNceN8G7ABNvFHjg6BhFJbAI4ZsbUCQLJgfF9Q7LXXqRL8C4f9UP?= =?us-ascii?q?jpi2EwOOauQs9A78AWrXQi7RikRxa675dM8aobgoiSdqFYeZjMoNx870B/6D4N?= =?us-ascii?q?dyxNhQNyjxanXuEcuu/j+NnbsJyn6uq0UqYiWfkX/QAuB2til5vwnEwjodbP2u?= =?us-ascii?q?ddS4zak57w/xxWLn6RponazwdzJvYUJ4KsZrZg+G0NJzICKHIWIdqWd/487jd2?= =?us-ascii?q?PzXS/FxDDNkDZdEZPMrRgQBbkFDpWLVI+8XHHV+XFpl8eNo172rtzzA164EzXv?= =?us-ascii?q?zn6D+sKpDV90tNMO9bjCVwiNLCo/AYweLIBygL/XaZaxZ0wiSYy5mOEvrw5vuD?= =?us-ascii?q?yNXVV1MAAy43XJxQJCKY9gy7WuW1lJvoUgSO6s/wmp4+d1yfRma3nKsbtqZAC+?= =?us-ascii?q?lAij/03jJGDID6m+qVs8aw6GtQrlBHDJxz4gPBGKpFOJV0Jw/1mdSqRkhzByv/?= =?us-ascii?q?ZNvbdgE0t+qM2+cA+eN+OFXiZYUDOBIL16r66WZJTgtpULP2sUyWXfgPa9t6SP?= =?us-ascii?q?PJtXRV6YN8K6ARPFiSvoHqrixSpFAwHgApdKc6riZGeUnWgA1VR6H0taYPigQC?= =?us-ascii?q?V955pUhMGWW3NGIl+TXHUaVVjK+MCP0a6TiTSrIBU19oMyxkWR+13othe6exl/?= =?us-ascii?q?BdrmxGhj99oOQt0zF+Qhu8uDHjp6UJ2T0647G0rjQBuXtCTuWFiCfFElBDwfsF?= =?us-ascii?q?jKsGDHbi81O8amEZbITu+LlnOdjg9Y457nQwfRojZDYGUf29BS//ia2IA4qPsM?= =?us-ascii?q?9ThROWt8XOaKW8LS4MObgnzhLjXXd92BDEnBl06GsLXimg7Ng8KYW/PsYlxiyo?= =?us-ascii?q?FXLHe1YM5qNJrdb+tF8KTOswclNhw2Rj39OZRi0MWszAAWI1gRUlaWledpJM9w?= =?us-ascii?q?MaHbEygjmUpqlG4h0UYDDMH4Sk5Infh8HI1GI5Tdd3223Wp6qFhogw3H1igdN0?= =?us-ascii?q?4TaEuG4OeOzAT89sHn/z259dyePgafWtvOQHRZBoybu7Vv8NLNWj9XGw2Jp0Rk?= =?us-ascii?q?+v3q4eEEahMO8f2rfbVD+oSWKcWeSMfWmDgTI5Mkrp6BmzKV03bsZKoFMnPuvE?= =?us-ascii?q?mJFcixXrUaloSSWIuV/b0GsjPPsYdwI2uIanYwsKTOoQZ+iAO+cj2/g+CFoQb3?= =?us-ascii?q?/TAyR6Eei2sUSinIJjIXVv/V36Yfjx8gDhKNaSBhgEEYvBo55t+Py1WmGBNmFk?= =?us-ascii?q?zBFoOkl76fvfHUwrtuBAa5aRgcTQh9Nj3O4AdvdtMi49utkIl4Jh84aU08CKcR?= =?us-ascii?q?fPwZb0P93VpOaXA+HHxUQwZm5aSqYZYR/y54giJdE2RbvTHadCsBQHAag6R4Ah?= =?us-ascii?q?N3vv9K5qMQx/aAnRZK67gsPyvOKEeoNUp2PK7lI3NCrctQMMyvi1TQxjcZ+nnH?= =?us-ascii?q?TzIJE1RjJEsdJtEB9mE5VVF8MHtQqnDIaemLunhN+p50N6p+gKvLL+C/DSztS5?= =?us-ascii?q?3pl+UIZB6EyOPTbRGLNrjVp/guS1mPfA3YH7Cdn+dtMcSOh7XmnFZ6fBHoW7ND?= =?us-ascii?q?2DIdr8e0pc/L6HzLJ5UwmeZDzjX6WYqiKoLvNk7lsnyoZgZurc0CQt763H2Nv1?= =?us-ascii?q?f2xboiajrXiUNJpQ9VDKAe3eXwlISfqe62tlHLcYbY3z9OsUNtwi2tec6RFp7D?= =?us-ascii?q?teyMuFP7ShrkjU10Jga53bKErp2yAkWYgFJxixPlcsgW/HpXTHH3tcNtKrJNJu?= =?us-ascii?q?gNmLFBzt4Vd+mWU2aW5cFWrkX9CROXIU28imfg2F6BpLD8ofn+6wYUM4s7e9Rv?= =?us-ascii?q?VoOpVEn+Wqs64KkchoKyHJWsdaOyDQLLlrPjteFOnPo0IoYhEcubgvRog1fYSO?= =?us-ascii?q?IF8AMEqYyyP91wjC0UrveNG3yaaJJjoW8nVAz7LY3jhMpxW5teyfgsL9TLDTdI?= =?us-ascii?q?v2U+LKMCo5SjGaQiw/Hl2y9lujv/oEveGYIXsEolwOeSKdFhIcqrp0rdfOCm/T?= =?us-ascii?q?mOtjfIAFhf2BRy/xSDd4lLcpBipRu0GDWeYDFRLRb3/nmmZcvxaiJvBU93L/c7?= =?us-ascii?q?KY3rZVW/ARAoZUff2WWcDXeepfJzg2kjUUI/i8f9nGoLYi01LIUHEVE6/W+12C?= =?us-ascii?q?VESWWOCTxyr3XYUJuIg5oigo+tfXni9tCaTIPq2fqiWo8oGiiSaXp+zeWnMqY0?= =?us-ascii?q?wvj+IIGHOBzwVYKGEYF9EVv1ngQrWOZ0ZJyH0kiOFj1gQSeAttSH1u03xXnPG7?= =?us-ascii?q?GsFDT14bkn+uSuUcbF9rFDMw4VOK4grqbNwCvsDTQWte+6AJSYUDMfYo5o7XOL?= =?us-ascii?q?EMz/k3xj5mpjI1sznOR29a2waE9bfAWblxzaBY5HUpuvRxUlyLThvBfWXdjImr?= =?us-ascii?q?EcRCwWFpu3+gn9HZuuFrKatyu5ByAFBMBzl/YN/a43QJfHv100OKtgy6B3zKLS?= =?us-ascii?q?oQ+jcQDTQMbOdu1+tyuxuOcczOvwfYlaskpVDjLAGRELuvkMhJA8TkzkO8LyxM?= =?us-ascii?q?ay+qDLhxsP9GkNtUaqQiM8z2O1ncKkDbCQWCtmhY7BH3ppyzBNdOh2AZlb8hbt?= =?us-ascii?q?ruWt9ORZPi0St3zj5lgtIvxGmVE9WVLsni5tZ3CFkOP525WH+ta5XMaXG6j+wO?= =?us-ascii?q?ypcjEQ6pbeweOG9K+8otmnzCc0Kj+YC2+DSEaK6/a2r9cP4PNJCpgmwGuKHLO5?= =?us-ascii?q?ny/LQWFnsD+ak1jIXL82rZoDmGfc2ff3nizxFvPRqpP5e945Z4Z6UCJ5ZjC9h9?= =?us-ascii?q?QAojtxMle/Y4T5ajrDXx2BHMdf9ktSksPwjjA4mg3I1UbjF+o5apnwfAprnGXb?= =?us-ascii?q?2FApGIsMXYMgdy0/4wPYbJpg=3D=3D?= X-IPAS-Result: =?us-ascii?q?A2GvAwAzHH5Y/wHyM5BdGgEBAQECAQEBAQgBAQEBFQEBAQE?= =?us-ascii?q?CAQEBAQgBAQEBgw4BAQEBAR9igQaOSpEmlysrgk2FRVcBAQEBAQEBAQIBAmAog?= =?us-ascii?q?jMbAYIbBgECJBMUIAsDAwkBARcHASEICAMBLRURBgEHBQYCAQEBGASIYgSxEzo?= =?us-ascii?q?mAollAQEIAQEBASSIR4Z/EQGGAAEEmzqRX4ogCgUXhidIkiRYcTYoCjqGM3KGK?= =?us-ascii?q?oIuAQEB?= Received: from unknown (HELO tarius.tycho.ncsc.mil) ([144.51.242.1]) by emsm-gh1-uea11.nsa.gov with ESMTP; 17 Jan 2017 13:30:49 +0000 Received: from prometheus.infosec.tycho.ncsc.mil (prometheus [192.168.25.40]) by tarius.tycho.ncsc.mil (8.14.4/8.14.4) with ESMTP id v0HDUm8T014295; Tue, 17 Jan 2017 08:30:48 -0500 Received: from tarius.tycho.ncsc.mil (tarius.infosec.tycho.ncsc.mil [144.51.242.1]) by prometheus.infosec.tycho.ncsc.mil (8.15.2/8.15.2) with ESMTP id v0FF3pMf226264 for ; Sun, 15 Jan 2017 10:03:51 -0500 Received: from goalie.tycho.ncsc.mil (goalie [144.51.242.250]) by tarius.tycho.ncsc.mil (8.14.4/8.14.4) with ESMTP id v0FF3olL020583; Sun, 15 Jan 2017 10:03:50 -0500 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A1BoAwBMjntYhw4P49RdGwEBAQMBAQEJAQEBgzkBAQEBAYEBgQaDUZwZkx2EGoJsgzYCghhXAQIBAQEBAQITAQEBCA0JCh2FGgMDIwRSEB8BBQImAgJXBgEMBgIBAYkDr3eBazqJfAEBAQEGAQEBAQEjgQuHPIozgl4BBJs6kV+KIAoFhj5IkiSBfigKhQKBa3KIYgEBAQ X-IPAS-Result: A1BoAwBMjntYhw4P49RdGwEBAQMBAQEJAQEBgzkBAQEBAYEBgQaDUZwZkx2EGoJsgzYCghhXAQIBAQEBAQITAQEBCA0JCh2FGgMDIwRSEB8BBQImAgJXBgEMBgIBAYkDr3eBazqJfAEBAQEGAQEBAQEjgQuHPIozgl4BBJs6kV+KIAoFhj5IkiSBfigKhQKBa3KIYgEBAQ X-IronPort-AV: E=Sophos;i="5.33,233,1477972800"; d="scan'208";a="5907575" Received: from emsm-gh1-uea11.corp.nsa.gov (HELO emsm-gh1-uea11.nsa.gov) ([10.208.41.37]) by goalie.tycho.ncsc.mil with ESMTP; 15 Jan 2017 10:03:50 -0500 IronPort-PHdr: =?us-ascii?q?9a23=3AFk2k4hYxxLSM6FJhIHLwtsT/LSx+4OfEezUN459i?= =?us-ascii?q?sYplN5qZps25Yx7h7PlgxGXEQZ/co6odzbGH7+a7BSdZvMjJmUtBWaQEbwUCh8?= =?us-ascii?q?QSkl5oK+++Imq/EsTXaTcnFt9JTl5v8iLzG0FUHMHjew+a+SXqvnYdFRrlKAV6?= =?us-ascii?q?OPn+FJLMgMSrzeCy/IDYbxlViDanb75/KBq7oR/fu8QZjoduN6Y8xxrUqXZUZu?= =?us-ascii?q?pawn9lK0iOlBjm/Mew+5Bj8yVUu/0/8sNLTLv3caclQ7FGFToqK2866tHluhnF?= =?us-ascii?q?VguP+2ATUn4KnRpSAgjK9w/1U5HsuSbnrOV92S2aPcrrTbAoXDmp8qlmRAP0hC?= =?us-ascii?q?oBKjU063/chNBug61HoRKhvx1/zJDSYIGJL/p1Y6fRccoHSWZdQspdUipMCZ6+?= =?us-ascii?q?YYQSFeoMJftWoZfzp1UOrhWwCwejC+ztxTBUiXH7xrE63uY7HA3awAAtEdADvX?= =?us-ascii?q?LJp9v1LqcSVuW1wbHVwzvDcvhY3i3y6JLLchA8uvGHQL1+cc7fyUk1FgPFiFqQ?= =?us-ascii?q?opHiMjyL0uQNvXKb7+tmVeKgkGMnthpxrSa1xsc3kIXJnYUVyk3e9Spl3ok1K9?= =?us-ascii?q?q4SFR0YdG6CpdQsT+VN5dvT84kXmpmuz46x6UYtZKmYiQG0oorywDdZvCdboSF?= =?us-ascii?q?4gjvWPueLDtghn9oe6izihm2/ES61+HxWcu53ExXoidBltTBsG0G2QbJ5cidUP?= =?us-ascii?q?R9+1+s2TaR2ADX7eFJOUU0la3GK5492LIxmIQcvl/ZEiDrhkr6lK6WdkM69ei0?= =?us-ascii?q?8+nrfKjqqoGGO4NqlA3zML4iltG/DOgiLwQDUHCX+eGm273i+U35Tq9Kjvozkq?= =?us-ascii?q?TBrp/aIcobprS4Aw9T3YYu8Au/Dyy439QChnkLNklFeBWaj4jzJ17BPv74DfCl?= =?us-ascii?q?g1Sjjjhn3fbGMaP9ApnVNHjMjK/hfaph605b0Acz1s5Q55ZVCrEHPfLyVVT8tM?= =?us-ascii?q?DYDxAlMwy0xPzrCNNm1owEQ26PDaiZML3Ku1+S+u0vO/WMZJMSuDvlMPgq+uXu?= =?us-ascii?q?gGQlmV4dYaap3ZwXZGq+HvR9OUqVe3XsgtAfETRCgg1rSO3slU3HSjNYemyzQ7?= =?us-ascii?q?N54zY3FYarJZnMS5rrg7Gb2iq/WJpMaSQOEV2IEHH1Z62YSvwMb2SUOcYnnTsa?= =?us-ascii?q?EfCMUY4qnSmnrg7hg+5qNuPO+zYwrZv51cNt4+TYmFc17zMiS4y/2mSAVClRmX?= =?us-ascii?q?kSRiR+iKJ2pEFmjFPF1K9imf1DPdtJ7vhNX0ExMpuKi6RCAs32EifGec2EAAK+?= =?us-ascii?q?S8iiKSk4U9Z0xtgJeUs7ENKn2FSLlRGnGbAY35HNTLw99qbN2TK5c91w0XnL/K?= =?us-ascii?q?koi103RI1EMmjwwuZE6wXLB4PP236cnqKueLVUiDXB70+f3GGOuwdeSwc2XqLb?= =?us-ascii?q?CzRXWUrSqdXw4wv4SLWjE6g8el9eyMqGK6JPLNavl1JMSe3/I/zfZX68nyG7Ah?= =?us-ascii?q?PelZ2Wa4+/QEtV+SzHC1Uf2y0X82yHMwd2UiqlrXjfCjNGCEnieViq6u5jsni2?= =?us-ascii?q?QEguwAzMaUB9genmsiUJjOCRHqtAlokPvz0s/nAtRA6w?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0FvAwB4jntYhw4P49RdGwEBAQMBAQEJA?= =?us-ascii?q?QEBFgEBAQMBAQEJAQEBgw4BAQEBAYEBgQaDUZwZkx2EGoJsgzYCghhXAQEBAQE?= =?us-ascii?q?BAQECAQIQAQEBCA0JCh0wgjMbAYIbAwMjBFIQHwEFAiYCAlcGAQwGAgEBiQOvd?= =?us-ascii?q?4FrOol8AQEBAQYBAQEBASOBC4c8ijOCXgWbOpFfiiAKBYY+SJIkgX8oCoUCgWt?= =?us-ascii?q?yiGIBAQE?= X-IPAS-Result: =?us-ascii?q?A0FvAwB4jntYhw4P49RdGwEBAQMBAQEJAQEBFgEBAQMBAQE?= =?us-ascii?q?JAQEBgw4BAQEBAYEBgQaDUZwZkx2EGoJsgzYCghhXAQEBAQEBAQECAQIQAQEBC?= =?us-ascii?q?A0JCh0wgjMbAYIbAwMjBFIQHwEFAiYCAlcGAQwGAgEBiQOvd4FrOol8AQEBAQY?= =?us-ascii?q?BAQEBASOBC4c8ijOCXgWbOpFfiiAKBYY+SJIkgX8oCoUCgWtyiGIBAQE?= X-IronPort-AV: E=Sophos;i="5.33,233,1477958400"; d="scan'208";a="2302506" X-IronPort-Outbreak-Status: No, level 0, Unknown - Unknown Received: from mout.web.de ([212.227.15.14]) by emsm-gh1-uea11.nsa.gov with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 15 Jan 2017 15:03:49 +0000 Received: from [192.168.1.2] ([78.49.147.199]) by smtp.web.de (mrweb002 [213.165.67.108]) with ESMTPSA (Nemesis) id 0MF3Nr-1cCavr2c2t-00GGzJ; Sun, 15 Jan 2017 16:03:37 +0100 Subject: [PATCH 06/46] selinux: Use kcalloc() in policydb_index() To: linux-security-module@vger.kernel.org, selinux@tycho.nsa.gov, Eric Paris , James Morris , Paul Moore , "Serge E. Hallyn" , Stephen Smalley , William Roberts References: From: SF Markus Elfring Message-ID: <2c5e5708-72a3-954f-a773-e5716df174d1@users.sourceforge.net> Date: Sun, 15 Jan 2017 16:03:33 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.6.0 MIME-Version: 1.0 In-Reply-To: X-Provags-ID: V03:K0:o7oetZRSmqOVMyBLf0ez5557PSULPdcWPDp0dan3rKzYtKPN+bH ZW35iZ9/y3kClt5sP79sMtgdwMFDEHzmVtAZYADnY+98J632bpL5pnKleBPsZNTfRYOgJbb VWIq5W0GiULn0w7oIIPRcQ2QVs5D82+aGZYAKzJOuCKjk03a+FOM/jNvliIBHs6Upo7T4Kw p2RJUn3exEp5uT12uFJsA== X-UI-Out-Filterresults: notjunk:1; V01:K0:0eSNO0eLFfA=:9gjtBq5w8SdK7ees8Y3/2v HQj+L1dYjRsgQyVS1FnoYSRiVuqe9NbegNopdVMOpdXHz5AtE+wASYBgRfSkcmpz41wuBp4Un UhiiKwdCzCqeNcgTCARlbcDRCNjgWeQkcvo6aXgtOtGVB0oyXRFdU+siVyGqELFegWAA6tKLw VbsMOEUfQSi3CcRfPp+Xc2if/E1/vXGm7bE4duWH6k+bwU1vsAjYkMGSHOE8e1E9LKbi/Uzmm bEnIMEIW+W85KOxEMKtDOjSap0RwDlPC9WFzt8yUhVgS28xIXosguMpVIQVVB+N3Jccaom/Md /sm9grQzDaa3YzHqaLuvybxRpoY3strxrb60vWEFG9hJl9k9D1UT1Np55Tz5DaaCodOof3vg9 b7qkjXbMeBP8RX12qaSyOszciZiP4DHX+fnyeyXVW23Ztm/ALvMBiD+gvw6uCAjJE9jNVShtJ zbbzYqHFXUfC41KDYQ6gauknNW6JlBrUtkVKonXTrRqcDGPHcSiaJqhVOCBPFTFZwL5l5gSeK TV7mGyDm7IoBD5F8z4vosMF7u/87SsAc098OL7k5bw4hO3N1QD9nMAnhlSm0B74VDAB2NlR3x zM/Y2LPBLMx3LDwVo1IRxWF0pyUDxZbYUF5aJjThQMahKOiuf3CZYKr2tPRv6jt/kCXs2w5FP rd1O8jZ3OzYrkJ68FfM4tsQl65SmquP+gnWHlMRBC7K9hTB4cSpgZLnFu+Zemt4VDE2w4iFES td7UywrxGun4TVyI7cz7KMgR7irmAixMzqPoBGFO+0gR6my80RTWVFJo+dl3NU965DSyDeI7n SbtQYuJ X-Mailman-Approved-At: Tue, 17 Jan 2017 08:26:53 -0500 X-BeenThere: selinux@tycho.nsa.gov X-Mailman-Version: 2.1.20 Precedence: list List-Id: "Security-Enhanced Linux \(SELinux\) mailing list" List-Post: List-Help: Cc: kernel-janitors@vger.kernel.org, LKML Errors-To: selinux-bounces@tycho.nsa.gov Sender: "Selinux" X-Virus-Scanned: ClamAV using ClamSMTP From: Markus Elfring Date: Sat, 14 Jan 2017 13:08:59 +0100 Multiplications for the size determination of memory allocations indicated that array data structures should be processed. Thus use the corresponding function "kcalloc". This issue was detected by using the Coccinelle software. Signed-off-by: Markus Elfring --- security/selinux/ss/policydb.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/security/selinux/ss/policydb.c b/security/selinux/ss/policydb.c index d719db4219cd..21869b622c0c 100644 --- a/security/selinux/ss/policydb.c +++ b/security/selinux/ss/policydb.c @@ -540,23 +540,23 @@ static int policydb_index(struct policydb *p) #endif rc = -ENOMEM; - p->class_val_to_struct = - kzalloc(p->p_classes.nprim * sizeof(*(p->class_val_to_struct)), - GFP_KERNEL); + p->class_val_to_struct = kcalloc(p->p_classes.nprim, + sizeof(*p->class_val_to_struct), + GFP_KERNEL); if (!p->class_val_to_struct) goto out; rc = -ENOMEM; - p->role_val_to_struct = - kzalloc(p->p_roles.nprim * sizeof(*(p->role_val_to_struct)), - GFP_KERNEL); + p->role_val_to_struct = kcalloc(p->p_roles.nprim, + sizeof(*p->role_val_to_struct), + GFP_KERNEL); if (!p->role_val_to_struct) goto out; rc = -ENOMEM; - p->user_val_to_struct = - kzalloc(p->p_users.nprim * sizeof(*(p->user_val_to_struct)), - GFP_KERNEL); + p->user_val_to_struct = kcalloc(p->p_users.nprim, + sizeof(*p->user_val_to_struct), + GFP_KERNEL); if (!p->user_val_to_struct) goto out;