From patchwork Tue Jun 12 08:09:03 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Enderborg X-Patchwork-Id: 10460961 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 2BDD9601A0 for ; Tue, 12 Jun 2018 19:22:49 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 1620828956 for ; Tue, 12 Jun 2018 19:22:49 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 0815C2896D; Tue, 12 Jun 2018 19:22:49 +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=-5.2 required=2.0 tests=BAYES_00, MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from UCOL19PA10.eemsg.mail.mil (ucol19pa10.eemsg.mail.mil [214.24.24.83]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E30AF28956 for ; Tue, 12 Jun 2018 19:22:47 +0000 (UTC) X-IronPort-AV: E=Sophos;i="5.51,215,1526342400"; d="scan'208";a="532943757" Received: from emsm-gh1-uea11.ncsc.mil ([214.29.60.3]) by UCOL19PA10.eemsg.mail.mil with ESMTP/TLS/AES256-SHA; 12 Jun 2018 19:22:45 +0000 X-IronPort-AV: E=Sophos;i="5.51,215,1526342400"; d="scan'208";a="14489749" IronPort-PHdr: =?us-ascii?q?9a23=3AVLcSBBffW3wb+ksMefmfZ8Z7lGMj4u6mDksu8p?= =?us-ascii?q?Mizoh2WeGdxcm9bR2N2/xhgRfzUJnB7Loc0qyK6/2mATRIyK3CmUhKSIZLWR?= =?us-ascii?q?4BhJdetC0bK+nBN3fGKuX3ZTcxBsVIWQwt1Xi6NU9IBJS2PAWK8TW94jEIBx?= =?us-ascii?q?rwKxd+KPjrFY7OlcS30P2594HObwlSizexfbN/IA+qoQnNq8IbnZZsJqEtxx?= =?us-ascii?q?XTv3BGYf5WxWRmJVKSmxbz+MK994N9/ipTpvws6ddOXb31cKokQ7NYCi8mM3?= =?us-ascii?q?0u683wqRbDVwqP6WACXWgQjxFFHhLK7BD+Xpf2ryv6qu9w0zSUMMHqUbw5Xy?= =?us-ascii?q?mp4rx1QxH0ligIKz858HnWisNuiqJbvAmhrAF7z4LNfY2ZKOZycqbbcNwUX2?= =?us-ascii?q?pBWttaWTJHDI2ycoADC/MNMftEo4X4oVYFsBmwChS2BO73yjFGmHH406493e?= =?us-ascii?q?sjHwHJ0xEuH8oMvXjJotj6KKgcXv6uzKTT0TXObelb1Svn5YTUbBwsp+yHU7?= =?us-ascii?q?JqccrWzEkiDxnLgUuMqYP7JTOey+sDs26G4OV+T+KgkGknqxt+ojOywcoskp?= =?us-ascii?q?fGhp4LxVDe7yl23oA1KsCmR05hetGkF4FQty6BOottRcMiRWFptDwmxb0BvJ?= =?us-ascii?q?62ZS4Hw4kkyR7Hc/GLboeF7x35WOuRPDt0nmxpdb2hixqo7ESs0uPxW8uu3F?= =?us-ascii?q?pXoCdIlsPAum0N2hHS8MSLVP9w80G80jiVzQ/T8PtLIUUsmKreLJ4u36A/m4?= =?us-ascii?q?IIsUTGAi/2gEL2jLKKdkk8+uin9eDnYrL+q5+ALYB0kAD+Mrk1msClHeQ5Mh?= =?us-ascii?q?QBX2ic+eim0r3s4Vb5T6lQgv0zk6nZtIjWJcUdpqGnHw9Yypsv5hmwAju80N?= =?us-ascii?q?kUgGMLIExKdR6ZlYTlJknCIPXiAve+h1Ssni1rx/fDPrD5GZXCMHzDkLbnfb?= =?us-ascii?q?Zg5E9Q0RE8zddC55JSFr4OPunzV1TttN3YEhA5Mwu0z/zhCNVmzIwSQ22PAq?= =?us-ascii?q?iHMK/Kq1+H+vovI/WQZI8SoDv9Kf8l5/j0gn8lmV8SZ6+p0IAVaHC/GPRmJl?= =?us-ascii?q?+WYWHwgtgfC2cKpRAyTOvwiF2NSTRTfWq9X7og5jEnD4KrFYHDRpq3j7yZxC?= =?us-ascii?q?e2BZNWZmFcClCXDXfoeYSEW/EWZyKUPsBhkyYLVby7R48mzxGuuxfwy6B7Ie?= =?us-ascii?q?rM5i0YqZXj2cB35+3Rjx496T90D9+a02GLTmF0gHgFRzEy3KBirk1y0UqD0a?= =?us-ascii?q?5kg/xFD9BT4OlJUggiP57G0+N6E8zyWh7GftqRUFapXM6pDi83TtIw398OZF?= =?us-ascii?q?1wG9S8gR/dwSWmGbgVl6aEBJYs6KLTw2DxJ9phy3bBzKQukl4mQs1JNWK7mK?= =?us-ascii?q?F/8wnTCpXTnEqHjaaqcr4Q3CnX9GeM1WCOpl1XUBZsUaXZWnASflbZrcjj6U?= =?us-ascii?q?PYVLKhFbMnMg5dxsGYMatKdsfljVNYS/f/IN7eeX6+m3+sBRaUwbOBdIvqe2?= =?us-ascii?q?MB3CrDDEgLjQUT8miaNQgkBiasuGXeDCRwGlLpZkPj6+h+qHegQU8zwACGdU?= =?us-ascii?q?ph16C6+hQNn/yTV+sT3q4YuCcmszh1Ele939bTC9WevQpsZ6tcbs0g71dAz2?= =?us-ascii?q?LWrRR9PoanL6BgmFERbxh3s1np1xVtBYVKidIqo28yzApuNaKY10tMdz2C3Z?= =?us-ascii?q?/qPL3YNmjy/Au0Zq7TwlHe0c+a+rwB6fQjsVnjuxupFkU6+XV9z9ZVy2ec5o?= =?us-ascii?q?nNDAcKUpL+SEU39x9np7zBYSky/YDU1XpxMaWutT/Cwd0pDvM/yhm8Z9dfLL?= =?us-ascii?q?+EFAjqHsIAGseuMu0qlEazbh8fJu9d6Ks0M9mhd/uc166hJPxgky6+jWRb/I?= =?us-ascii?q?B91VqB+DZmRe7MwZkF2O2Y3wuAVzrnl1eursH3lp5CZTEOH2qw0zLoBIhPaa?= =?us-ascii?q?1uZYwLE3uhI9WrxtVigJ7gQ2RY+0O+CF4d18+pfBWTY0b73QJOyUQduWanlj?= =?us-ascii?q?egzzxojzEpqbKS3DfAw+T4cxoHIXJLSXJ5jVfqJoi1gdUaU1KubwQzkhuq+1?= =?us-ascii?q?r6zbBBpKtjN2nTXVtIfy/uImBsSKSwsqaCbNBV6JMzqihXTvqzYUqBRb7gph?= =?us-ascii?q?sWySTjH3FRxDojbTGlpo35nwBmiGKaNHtzsnvZdt1sxRfY/tzQX+Je3joBRC?= =?us-ascii?q?l+hjnaHVy8P9iv/dqOjZfDtfqyV2W7Vp1caSPr15+PtDOn5W12Bh2yh/Szmt?= =?us-ascii?q?z8EQgmyCP7zMdlVSHJrBb6f4nq2L+3Mfl/fklpAl/86tZ1Gppknos2mp4QxW?= =?us-ascii?q?AQho+J8nofjWfzLdJb1LrkbHoKQT4Lx8Da4BL5101kIHOE3Jn5VmiBzct6fd?= =?us-ascii?q?W6ZXkW2i0l5cBQFKiU9KBEnTdyolegrgLef/59niwGxPst9nEahfoJuAwzwS?= =?us-ascii?q?WBGLwSGlNYPSP0nRSS89++tLlXZHqocbWozEpxh82hDLWcrQFEQnn5fIsiEj?= =?us-ascii?q?Fq7shkLVLMy2P86pv/eNXKdtITsQCUkw3cgOdLJpIxkeAKhSV5Nm7nu30q1f?= =?us-ascii?q?I7hwR03Z6mpIiHN3lt/KWhDx5GMD36etge+i/rjalDnsaaxYavEYt9Gj8TRp?= =?us-ascii?q?vnUeqoEC4OtfTgLwuOCCczqmqfGbfEAQCf6VtmrnLWH5ClLX6XImMVzdJ4RB?= =?us-ascii?q?mSPEZfmhwbXC0mnp4lEQCn3M/hcUd95j8P/VP4rxxMyuxmNxbhTmffuAeoaj?= =?us-ascii?q?AxSJeBNhZW6B9N51vNO8yE8u1zBz1Y/oGmrAGVJGyUfQJIDX0OWkyBHF3jMK?= =?us-ascii?q?eh6sTH8+iCHOW+N+HOYbKMqeNAS/iI2Yij0ox8/zaDLs+PJGVtD+Un2kpfWn?= =?us-ascii?q?B0A8rZmy8RRCMKjCLCdcibpAu7+i1stc2w6ujkWAf16YuIEbtSPs1l+wqqjq?= =?us-ascii?q?ebK+6QmCF5JC5D2ZwXwnPIzLkf3EUOiyF1bTWtCqoPujLXQKLLhKBXCx8bay?= =?us-ascii?q?VuNMpH9K8zwglMOdTGitPuzLJ5gOQ6C0teVVzmnMGlf8sKI3uyNFnfHkaEKK?= =?us-ascii?q?yGJSHXw8Hwea68T7xQjOFQtxKuojaWCFXsMSqZlznuTRyvNvtMjC6DNhxEpI?= =?us-ascii?q?69agptCXTkTN/+cRK7MdB3jTowwbAvm3zFK3UTMTlmfENLtLGQ6jlYgvpnEW?= =?us-ascii?q?xb8nVlNfWEmzqe7+TAMJkWvuFkAjpqmO9B53Q606Va7CdBRPNvmSvSqsVho1?= =?us-ascii?q?apk+WVzTpnShVOoC5RhI2XpUViJbnZ9p5YVHbY+xIN6H+cCw4Np9pkFNLvvb?= =?us-ascii?q?tfysLIlK3tKzdP6M7b/cwZB8fIMs2HK2YhPQDvGDHKEAsPVSSrOn3Hh0xBjP?= =?us-ascii?q?GS8WWYrpo6qpnsgJoOTbtbVF0pFvwEEUllGd0CIIttXjw6i7Kbi9QI5XWmph?= =?us-ascii?q?nLWMpapozHVu6VAfj3LjaWk6NLZx8TzLP7KoQTLZH71FZkallhn4TKGlDcXd?= =?us-ascii?q?ZTrS19dgU0ullC8GBiTm0v3ELochmt72EIFfGqhBE2kBdxYeQ2+Tj34lc3PE?= =?us-ascii?q?fFpCw+kEkpg9XqnzCQfCT3LKiuQYFcEzD0uFQpMpPnXwZ1ahW/klF+OzfaRr?= =?us-ascii?q?JekqBgeHtxhw/Go5tPHvBdTbZabxAM2PGXffQo0Uhcqym9w09I+/fFA4N4lA?= =?us-ascii?q?Q2aZ6ss25A2wV7Yd4xIqzQPrRGzl5Rh6KJpSKo2eYxwBIEK0YK6mOSdzYCuF?= =?us-ascii?q?YUObk+Oyqo4uts5BSZmzRdfGgMVvwqou9l904mJ+uAyCfg3KJZJUCqK+yTNa?= =?us-ascii?q?WZtHbclcSQWFM/ylsIl1VZ/bhxycosblabV0UozLuXCxQFKNHPKR9LYMpI9X?= =?us-ascii?q?jSfCGOsePXzZJzIYq9CvjiTfWSu6YMnkKkAAEpEpwQ7sQAG5ms113YLcfnLb?= =?us-ascii?q?Me1Bot5QTqK0+eA/hTfhKEjisHqdmlzJBrxYldOi0dAWJlPCqt4rbXpxMlj+?= =?us-ascii?q?SbU9czYnYaWIwENnQsV8ChgCFZvm5PDD+u3uIX1QiO9Tn8qTrMDDPkddpseO?= =?us-ascii?q?+UZQ9wCNGx4Tgw6La5iVjM/5rEOm76K8ptusXU6ewAvZaGC+lYTb5ns0fTg4?= =?us-ascii?q?NYXWClU3bTEd6pIJj9c5Msbdr1CnmmUly/jDY1T9zpMti0M6aGmx3lS4FPvY?= =?us-ascii?q?aH2zAjMNOyGSsFGxdsve0D4rxzZREbaZohfRHorxg+N7C4IAqAztquQXyiJi?= =?us-ascii?q?dNQvZDyuW6Y7hXzysyYe+g1HsvUI01z+mt/U4KXpEKgQnUxey/aIlGTSjzBn?= =?us-ascii?q?tddh3VpSUjjWhhMf09z/wjwBPSq1YcLS6EdOhoaGxCsNE8AVKSIXp2CmokSV?= =?us-ascii?q?+Tl5DD4gu207AU4SRdg85e0fdZv3jmop/ffDWsVbSlqJnPryUgbdkmo6hwMY?= =?us-ascii?q?P5IcuLr5LekSLBQ5bOqAGFVzS6F/VCkNhKPC1YWOVImX0iOcEevIpO81AxVs?= =?us-ascii?q?QgKLxTCaksoL+qZCFqDCEIyy8WS4eA3DsfguihwLvWjBGQf4o+MBYcqpVNns?= =?us-ascii?q?MdUzJqYiMZvKKjT4LWl2ueRWgRLgYT6gBM5Awbm491eeDl55HIQ4FQxD5MpP?= =?us-ascii?q?J0STDLFphu91v0UG2WhkL4SPq5meyzwQ1S1O7s0sUcWBNnE0dd3ftWlk0yJL?= =?us-ascii?q?F0MKQQv4/Ksj6UdUzhpm7tzvWpJEVJw83Oa1L4FJbFtXb7UiAE5X0UQopPxW?= =?us-ascii?q?rDFZgOlgp2c7wnpFNSL4C6Ykz+/SArx5x1H7mkUsCm31QlrXEYSCqxDtVOFf?= =?us-ascii?q?pmv0zNWD15fZ+ktY/pO5NMTW9M4JedsUtWkF1xMy6lzppRM91N7SMRUzhOuz?= =?us-ascii?q?qduMC/R9FE2c9zE5ADOMx/u2vnFKNCJpeRv2U8uqbzxX/B5zA8rFC6yS2oFK?= =?us-ascii?q?+2U+1V428TFhgnKmmFtkYvCO4s/XvI/VDWrlB45eFbCaaTjU9pujZyAohOBi?= =?us-ascii?q?pV1XCiN1lzVmdJvPhaKKvPb8xRWP0yZRixOxMgC/Ipw0uJ8lxqknvjZSx9qB?= =?us-ascii?q?da8TjHXwYoTSkVnqvtmToGp8G/Ij8aV4hHYig9byreMAKbnj1XvAxDZE50XZ?= =?us-ascii?q?AZHsxF9Ksf3YdO+crCU0msIzkfXBN+LgI4zeZflUlbvUWEYyDSExSneuvUvx?= =?us-ascii?q?1qeceRsNSpI+7n/AdGjYPntP4397kZS32hgw2tTsjUr5Xgud2SqkuOaKD4Pv?= =?us-ascii?q?W5YXDbSDjMiQ6/has4D5bQ5SfeKwxbJIdmyXo/fZfuE3bLMgpcK6IdOUVbSb?= =?us-ascii?q?hwac9areBCe89kZKEJ9LdvBh2dXBPvH5evrP1cIVbNXjneKjiB8uijoYLS8b?= =?us-ascii?q?PdSPLvZsqXx3rdRKJ3JJh64yHhG7j2yY9e5lb22vB1+0N4U1fGNS6BrM7mJg?= =?us-ascii?q?wW+savbVfisYcvHTPNB5d8inztyV9cd8APWS2l7IwYyI9F6Hb3Ue943VXzsO?= =?us-ascii?q?xW97lg94Y35qtkxtqqKqjJKPRVq0lnDgKTBgVw+ZUnGHJ/SHxJYu8NNPfRer?= =?us-ascii?q?wUjcLvq+DyDKEX7QOa+uxHZtvdJkHBnMa/BiuaSRNagAcLsSQaIReE1/6Zh6?= =?us-ascii?q?90Tt6ope792k824li+KBsGwKps5YeC9KqIvvXYbwDNzbgeR6jlWt/zrqk2u0?= =?us-ascii?q?yM//Ekk6QOemNtaQ29DOcdTtIdxnvnza0yyCIsFMXDH67v+PFdTH85mzPglI?= =?us-ascii?q?p7H1oIBvMVE72L/Z5dnmcjgeDZMMMZcrxakGaVCRGkCqMCyWKs6yaPJGllmR?= =?us-ascii?q?TO3hHrTGO98lD5sCh4QTHWwNf7iEpVUbu3CllOUCq1I0N4tymPPAXwvtrtpa?= =?us-ascii?q?s19F02MnDjtN+VlWugOalYENfjK9GHOik7uk4Xg4MtSdC13oAbA9W9Ks8L8H?= =?us-ascii?q?5idvve93+rkyhZrqhchore+c+U9e/VHXmhk62as6+CxC1cynUjoV4/7c2vOe?= =?us-ascii?q?/U6N2XWfSo0HwRQD1ltwvGRR61paTRr0oINkyTzEfLhIsKM8lB3XYiykHp+O?= =?us-ascii?q?gjQdw09AVEFYbMfugCqi73ODv1x1afft02WzKG0zRNAlL6DVl4GaY72GLqv8?= =?us-ascii?q?LFj3TQ9EMyRol2aUPngQZ7D4IiKUIi8FIX2DYMERARaRCHC7GlHUvlIpEeVU?= =?us-ascii?q?cddRSH3KO3eqM23U1v3Lyv5PXcbfFnB6YXMPZSkBKOlkBBGp0Kqa0eXK58e1?= =?us-ascii?q?hF+a7YuAfiDZTnX//hlXY3Lv26XMRa8cEft3s/7QeyXB6g5olZ77cbkp+EbK?= =?us-ascii?q?hEbobQvMpk9Udo+SYPdjBRgBh4lx65V+Ecq/zk4tjfqpWo8fyiVKcqR+UQ7B?= =?us-ascii?q?g0HH9zj57/jVEsu93X0P1cSoLNg4Tl7A9NO2KKuJrd0xRkJuoBN5mrfK15+3?= =?us-ascii?q?saKCYQIXMOPdyLa/gz+CJtPzDT6EZEAswSf98YO9DNmQ9MgE3zRL5T7tbbGk?= =?us-ascii?q?OfC4prdcAo6Gr3yDYv/ZQgUubg7CK2Ko3e7lFMOfNDlyZslNPZqegLwPrSFj?= =?us-ascii?q?IY4X2EZBh02C+CzYeCC+ro9+WW1N7UT08GHjIxU4pFJTqC5xaoRuyumZXtTw?= =?us-ascii?q?Ob987zgJUldE6KQXyxhqsFuL5WEeFckiX7wiReFoftivKXrdWs5mVXtllcHY?= =?us-ascii?q?d99xLFHrtQPolhNRT+iMarWlB2BjHjd8HMahoupO2Wy/8D4+V6MEv/a5EUIh?= =?us-ascii?q?YAy7/h8npVSQ1uSL/qsVqDW+IeesdmQuvern9J8YJgN7MPPF+FqZzvrzdIq1?= =?us-ascii?q?M2AAgyZb8ytDNadU7OnAtLVKbyorIAjBUTUcJhs09WBW2wIH4+5ybAValNl6?= =?us-ascii?q?aeFvoV8imIQ6wVV0VoNT9+Qw+r2JpwZrSlh/dHsnlJnilluvglzyRmRAeguS?= =?us-ascii?q?3rv68N1ywv+LW5tDUZp3NIVeSfkybNCVVG0vsKl6McBGj45Vy7enkDY5P44K?= =?us-ascii?q?N7KsT46Ykh/3M/bA0tfi0eR+SgCj3/gL2TD4yKsdJcmASNt9vUYb+0NygSOa?= =?us-ascii?q?w3yQj/SHhlzgjegBFo/XMMQjWk8tApP529OcI/ySqzBWjbdUoD4r9TsMTvq1?= =?us-ascii?q?EHVu02Zk19wG97yMiIWjUNRNDTG2YylgUkbWREcJRe6R4VDqUohjeIvrJa/g?= =?us-ascii?q?EPezrUE56q+o/XncvS3nk9V9hqzHrMpqKZnpMqzGFlm9Rs4y6Lonsda+zYU8?= =?us-ascii?q?5qAnj0zYpf1+3+Z/OzveADSYtmzqmhUfAYPsmk42u2141gWlW5ybQGA1q5LO?= =?us-ascii?q?gDy6/ZUyi/Sm2YXv+EfnORnzY/Lk7y5R6oLkA4aMdKs08xKO3CiYBAlwf5S7?= =?us-ascii?q?N7Wj2QpUPHzGwkKe4abAw2uIK7dAELT+McfPacKvY0wP0/CVoMaHnJETFwC+?= =?us-ascii?q?CorV7+1LR8biF47Fn3e6Lg9AzrKtGVABYsConcv9h6/vnsAiq5MGJkhDh1O1?= =?us-ascii?q?N5v7PHHkk1nvdVbpLUmN/Xndk92ukAIbMlCjEwot4enMpY7ICQ1MqbOUXKwo?= =?us-ascii?q?3aOcDeov/eBebWiUstZDceGpcDYAi934wgP8VxD7DLFKFYpjwEDLI7W4QlPm?= =?us-ascii?q?z8sqZuI1U3OizYYbmvyuztvPiKfdMApXrR9EgxNw/ashgOy7qzVwMtK9iGjn?= =?us-ascii?q?PzLZR4ZC9boNBrEVMyEIJJGs4ErSKiDpqQkae8m5m6/EYs/6cmtrf/QtTH2N?= =?us-ascii?q?q+xYk5C5Re6ECFOyzdLLNmjkRskqK5hfKWltGlEs7meNUZRMBnU2XFbfnABY?= =?us-ascii?q?z5JTWQbIa0L0pH9aOMlal0WQiLZTzoGq+BuDCgOd167kghjI91ZuzeyHoq9b?= =?us-ascii?q?6NnJOmY2BduzfmrnOTMpZbxELFCPaYXB9OT/eBtmF/EvtTJcHP+f0BPJQPiJ?= =?us-ascii?q?7UwwB36CVEmoPROKW7oULk2kt/cYPdakDu3nBqd5MNJUGHPFchmyf0rHjQG3?= =?us-ascii?q?5bNMfsfdFgnNuPSBHr60Rrk2Y3aUZaHWz5A9yWPD5IiIqFeASW+VcTXJ44lO?= =?us-ascii?q?mtdBt97/TqE7M6M4hZmeisqLQMmMpoLCeKXsVBIiXMN+AtbAdpIs6Uj2ABOk?= =?us-ascii?q?VCvrUwQYhzYJGPJAUCMUPTrEG6wQjD1BjycNqhnOaMLT0N+3pKh7TCzXBXpg?= =?us-ascii?q?a/tPrYys3uWbzUdtf3CfjVNico?= X-IPAS-Result: =?us-ascii?q?A2D3AQDFHCBb/wHyM5BcGgEBAQEBAgEBAQEIAQEBAYNAA?= =?us-ascii?q?4EFXBYSjFuMCpZaFIFgJxMBhnQhNRcBAgEBAQEBAQIBbCiCNSQBgk8DAwECJ?= =?us-ascii?q?BMUIA4DCQEBPgIICAMBLRURBgEHCwUYBIMBggEDAa0kM4N5AQGEToFoiEiBV?= =?us-ascii?q?D+BD4dMARIBCYVsAoctGQiEaIEjiy0HAoFng1qJLQuNMo5whAoBNmFxTSNQg?= =?us-ascii?q?kOCIReNYQE3bXoBAYxcgjkBAQ?= Received: from tarius.tycho.ncsc.mil ([144.51.242.1]) by emsm-gh1-uea11.NCSC.MIL with ESMTP; 12 Jun 2018 19:22:44 +0000 Received: from prometheus.infosec.tycho.ncsc.mil (prometheus.infosec.tycho.ncsc.mil [192.168.25.40]) by tarius.tycho.ncsc.mil (8.14.4/8.14.4) with ESMTP id w5CJMbpa031342; Tue, 12 Jun 2018 15:22:41 -0400 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 w5C89lnD001222 for ; Tue, 12 Jun 2018 04:09:47 -0400 Received: from goalie.tycho.ncsc.mil (goalie.infosec.tycho.ncsc.mil [144.51.242.250]) by tarius.tycho.ncsc.mil (8.14.4/8.14.4) with ESMTP id w5C89o9l009785; Tue, 12 Jun 2018 04:09:51 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A1DhAQBwfx9blywbGNZcHAEBAQQBAQoBA?= =?us-ascii?q?YNAgWQWEphillqBeIR3AoJMITUXAQIBAQEBAQECFAEBAQEBBhgGhgEDAydiPxJ?= =?us-ascii?q?XBgESgyKCBAGsKzODeQEBhEyBaIhIgVQ/gQ+HaYVrAocsGQiEaIEjiysHAoFng?= =?us-ascii?q?1qJKQuNL45thAoBgghNI4MTgiEOCY1hATdtkDEBAQ?= X-IPAS-Result: =?us-ascii?q?A1DhAQBwfx9blywbGNZcHAEBAQQBAQoBAYNAgWQWEphillq?= =?us-ascii?q?BeIR3AoJMITUXAQIBAQEBAQECFAEBAQEBBhgGhgEDAydiPxJXBgESgyKCBAGsK?= =?us-ascii?q?zODeQEBhEyBaIhIgVQ/gQ+HaYVrAocsGQiEaIEjiysHAoFng1qJKQuNL45thAo?= =?us-ascii?q?BgghNI4MTgiEOCY1hATdtkDEBAQ?= X-IronPort-AV: E=Sophos;i="5.51,213,1526356800"; d="scan'208";a="298867" Received: from emsm-gh1-uea10.ncsc.mil ([214.29.60.34]) by goalie.tycho.ncsc.mil with ESMTP; 12 Jun 2018 04:09:51 -0400 IronPort-PHdr: =?us-ascii?q?9a23=3A5S4JZhRrnuT8UpvXjYGDlDAnUNpsv+yvbD5Q0Y?= =?us-ascii?q?Iujvd0So/mwa67ZhSGt8tkgFKBZ4jH8fUM07OQ7/i9HzRYqb+681k6OKRWUB?= =?us-ascii?q?EEjchE1ycBO+WiTXPBEfjxciYhF95DXlI2t1uyMExSBdqsLwaK+i764jEdAA?= =?us-ascii?q?jwOhRoLerpBIHSk9631+ev8JHPfglEnjWwba9yIRmssQndqtQdjJd/JKo21h?= =?us-ascii?q?bHuGZDdf5MxWNvK1KTnhL86dm18ZV+7SleuO8v+tBZX6nicKs2UbJXDDI9M2?= =?us-ascii?q?Ao/8LrrgXMTRGO5nQHTGoblAdDDhXf4xH7WpfxtTb6tvZ41SKHM8D6Uaw4VD?= =?us-ascii?q?K/5KpwVhTmlDkIOCI48GHPi8x/kqRboA66pxdix4LYeZyZOOZicq/Ye94RWG?= =?us-ascii?q?hPUdtLVyFZH42yb5UBAeQCM+hfrYb9qVQBogelCAmwGO/i0CNEi2Xq0aEm1e?= =?us-ascii?q?kqDAHI3BYnH9ILqHnatsv6NLsMXuCv0aLGwjPDYO5I1jfn84fIdQohof6RVr?= =?us-ascii?q?93acre11UvGB3fjlmKt4PlOS6a2foXs2eA6OpgT+2vhnU8qwF2pDiuxt0ghZ?= =?us-ascii?q?XOhoIQ013J8zhyzoUtJdCgVkJ3fNGpHIFOuyyVLYd6XMEvT3tntSs10rELt5?= =?us-ascii?q?y2cDIXxJkpwxPTceGLfoiJ7x75SuqcJTF1j29/dr2lnRa9602gx/X8Vsaq1F?= =?us-ascii?q?ZKqTJIndfWuH4DyRHe5NaKROFh80u92TuDzR7c5f9BIUAvmqrXMZshzaQxlp?= =?us-ascii?q?oXq0jDGy72mEHugK+XcEUr5PSo5vz5brn7qZKQLZF4hw7kPqgwmMGzG+s1Pw?= =?us-ascii?q?cWU2ie4+u81bnj/UPjQLVNi/07irPXv47GJcsFvK61GQBb0oA+5BmhFTepy9?= =?us-ascii?q?MYnWMILF9eYxKHiI7pOlHULP/kCve/hkygkC13yPDeIr3hHpLNI2DYkLj8Zr?= =?us-ascii?q?Zw8FJcyQovwtBf4JJYELcBIOnpVUPru9zYCQE5ORSuw+n7ENV9yp8eWWWXD6?= =?us-ascii?q?+CLqzStV6I5uQyI+iDf4IVpDb8JOQl5/7pl3M5n0QdcrOz0ZsYb3C4AKcuH0?= =?us-ascii?q?LMNWLhntobV2oMsgckRuvwh3WZVjhCIX21WvR4rgkyFYbuKIDEXI3l1KSIwS?= =?us-ascii?q?OTBpRLYiVDDVeWHDHjcIDSH783dC+KIsJn2gcBXLylRp5pgQqiryfm2rFnKa?= =?us-ascii?q?zS4SReupX9gpw9yvfSnlkK/CZ1FIzJ3nmEVWBvtnsBXT4txKR2qkE7zU2Mh+?= =?us-ascii?q?wwofVdGMcbwvRTSAYhfcreyutgEdHpcgTIe9qIDlG8TYPiSR04SNM8x5csfl?= =?us-ascii?q?xyFtO5xkTP1iyrDrsXv7mGAJg99KXMmXP2IpA5g1rByaZpq1QqTMxVOSXyiq?= =?us-ascii?q?py+wbUHYLhiUiVl6+2M68b2XiJvDOYwG6PulxIeBJhWqXCG3YEbw3Zqsqvog?= =?us-ascii?q?uWS76oFKRiKQZK1NSDNroPb9rlkFFLbOnsNc6YYG+rnWq0QxGSyeXIJN7uem?= =?us-ascii?q?MAzGDeBVICngQ743mLL049Cz2nrmaYCyZhQxanKXjh6+Zz4F7zCAcUxgWOfk?= =?us-ascii?q?srn+6u9wQaiNScQvcXz7RCsyAk/WZaBlG4iurbF9ea7ydncKhGa9Qn7x8TzW?= =?us-ascii?q?/FuhY7M5qsIrpogUQRWx9wuVKo3BJyXNYT2fM2pW8nmVIhYZmT10lMInbBhc?= =?us-ascii?q?iqYO/eN3Xy8RazaqXfxlDZ1pOM97wS7Ogj9AyxgTmFPREJy1w/iJ9Y3n6H6d?= =?us-ascii?q?PPBQsWF5fwVhV/+xt7ouTcZS8wr8PR2GZ3OKa5+jnFx5oyBeQjxxrhN9dSOa?= =?us-ascii?q?+JDknzRssdAcWj?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0B7AQA3fx9blywbGNZcHAEBAQQBAQo?= =?us-ascii?q?BAYNAgWQWEphillqBeIR3AoJMITUXAQIBAQEBAQECARMBAQEBAQYYBliCNSQ?= =?us-ascii?q?Bgk8DAydiPxJXBgESgyKCBAGsKzODeQEBhEyBaIhIgVQ/gQ+HaYVrAocsGQi?= =?us-ascii?q?EaIEjiysHAoFng1qJKQuNL45thAoBgghNI4MTgiEOCY1hATdtkDEBAQ?= X-IPAS-Result: =?us-ascii?q?A0B7AQA3fx9blywbGNZcHAEBAQQBAQoBAYNAgWQWEphil?= =?us-ascii?q?lqBeIR3AoJMITUXAQIBAQEBAQECARMBAQEBAQYYBliCNSQBgk8DAydiPxJXB?= =?us-ascii?q?gESgyKCBAGsKzODeQEBhEyBaIhIgVQ/gQ+HaYVrAocsGQiEaIEjiysHAoFng?= =?us-ascii?q?1qJKQuNL45thAoBgghNI4MTgiEOCY1hATdtkDEBAQ?= X-IronPort-AV: E=Sophos;i="5.51,213,1526342400"; d="scan'208";a="12725012" X-IronPort-Outbreak-Status: No, level 0, Unknown - Unknown Received: from updc3cpa05.eemsg.mail.mil ([214.24.27.44]) by EMSM-GH1-UEA10.NCSC.MIL with ESMTP; 12 Jun 2018 08:09:50 +0000 X-EEMSG-check-005: 0 X-EEMSG-check-006: 000-001;47a3a2d5-f234-4e6d-8025-0f50ab479c68 Received: from localhost.localdomain (localhost [127.0.0.1]) by UPDCF3IC06.oob.disa.mil (Postfix) with SMTP id 414jGj66ZKz19Yj1; Tue, 12 Jun 2018 08:09:49 +0000 (UTC) Received: from UPDC3CPA03.eemsg.mil (unknown [192.168.18.10]) by UPDCF3IC06.oob.disa.mil (Postfix) with ESMTP id 414jGj4ttCz19Yj0; Tue, 12 Jun 2018 08:09:49 +0000 (UTC) Authentication-Results: UPDC3CPA03.eemsg.mail.mil; dkim=none (message not signed) header.i=none X-EEMSG-check-008: 478786726|UPDC3CPA03_EEMSG_MP19.csd.disa.mil X-EEMSG-SBRS: 3.5 X-EEMSG-ORIG-IP: 37.139.156.29 X-EEMSG-check-002: true X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0C4AADAfR9bhx2ciyVcHAEBAQQBAQoBAYU6Eot7jGeWWoF4hHcCCIJNITQYAQIBAQEBAQECFAEBAQgNCQgpL4UpAwMnYj8SVwYBEoMiggWsKjODeQEBhEyBaAkBiD6BVD+BD4dphWsChywZCIRogSOLKwcCgWeNAwuNL45thAmCCk0jgxOCIQ4JjWEBNz0wkDEBAQ X-IPAS-Result: A0C4AADAfR9bhx2ciyVcHAEBAQQBAQoBAYU6Eot7jGeWWoF4hHcCCIJNITQYAQIBAQEBAQECFAEBAQgNCQgpL4UpAwMnYj8SVwYBEoMiggWsKjODeQEBhEyBaAkBiD6BVD+BD4dphWsChywZCIRogSOLKwcCgWeNAwuNL45thAmCCk0jgxOCIQ4JjWEBNz0wkDEBAQ Received: from seldsegrel01.sonyericsson.com ([37.139.156.29]) by UPDC3CPA03.eemsg.mail.mil with ESMTP; 12 Jun 2018 08:09:48 +0000 X-EEMSG-check-009: 444-444 From: Peter Enderborg To: , Paul Moore , Stephen Smalley , Eric Paris , James Morris , Daniel Jurgens , Doug Ledford , , , , "Serge E . Hallyn" Date: Tue, 12 Jun 2018 10:09:03 +0200 Message-ID: <20180612080912.7827-5-peter.enderborg@sony.com> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20180612080912.7827-1-peter.enderborg@sony.com> References: <20180612080912.7827-1-peter.enderborg@sony.com> MIME-Version: 1.0 X-Mailman-Approved-At: Tue, 12 Jun 2018 15:18:27 -0400 Subject: [PATCH 04/13] selinux: Cleanup printk logging in hooks X-BeenThere: selinux@tycho.nsa.gov X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Security-Enhanced Linux \(SELinux\) mailing list" List-Post: List-Help: Errors-To: selinux-bounces@tycho.nsa.gov Sender: "Selinux" X-Virus-Scanned: ClamAV using ClamSMTP Replace printk with pr_* to avoid checkpatch warnings. Signed-off-by: Peter Enderborg --- security/selinux/hooks.c | 68 +++++++++++++++++++++++------------------------- 1 file changed, 33 insertions(+), 35 deletions(-) diff --git a/security/selinux/hooks.c b/security/selinux/hooks.c index 4cafe6a19167..3ab9687ac4c8 100644 --- a/security/selinux/hooks.c +++ b/security/selinux/hooks.c @@ -531,7 +531,7 @@ static int sb_finish_set_opts(struct super_block *sb) the first boot of the SELinux kernel before we have assigned xattr values to the filesystem. */ if (!(root_inode->i_opflags & IOP_XATTR)) { - printk(KERN_WARNING "SELinux: (dev %s, type %s) has no " + pr_warn("SELinux: (dev %s, type %s) has no " "xattr support\n", sb->s_id, sb->s_type->name); rc = -EOPNOTSUPP; goto out; @@ -540,11 +540,11 @@ static int sb_finish_set_opts(struct super_block *sb) rc = __vfs_getxattr(root, root_inode, XATTR_NAME_SELINUX, NULL, 0); if (rc < 0 && rc != -ENODATA) { if (rc == -EOPNOTSUPP) - printk(KERN_WARNING "SELinux: (dev %s, type " + pr_warn("SELinux: (dev %s, type " "%s) has no security xattr handler\n", sb->s_id, sb->s_type->name); else - printk(KERN_WARNING "SELinux: (dev %s, type " + pr_warn("SELinux: (dev %s, type " "%s) getxattr errno %d\n", sb->s_id, sb->s_type->name, -rc); goto out; @@ -743,7 +743,7 @@ static int selinux_set_mnt_opts(struct super_block *sb, goto out; } rc = -EINVAL; - printk(KERN_WARNING "SELinux: Unable to set superblock options " + pr_warn("SELinux: Unable to set superblock options " "before the security server is initialized\n"); goto out; } @@ -785,7 +785,7 @@ static int selinux_set_mnt_opts(struct super_block *sb, mount_options[i], &sid, GFP_KERNEL); if (rc) { - printk(KERN_WARNING "SELinux: security_context_str_to_sid" + pr_warn("SELinux: security_context_str_to_sid" "(%s) failed for (dev %s, type %s) errno=%d\n", mount_options[i], sb->s_id, name, rc); goto out; @@ -861,8 +861,7 @@ static int selinux_set_mnt_opts(struct super_block *sb, */ rc = security_fs_use(&selinux_state, sb); if (rc) { - printk(KERN_WARNING - "%s: security_fs_use(%s) returned %d\n", + pr_warn("%s: security_fs_use(%s) returned %d\n", __func__, sb->s_type->name, rc); goto out; } @@ -948,7 +947,7 @@ static int selinux_set_mnt_opts(struct super_block *sb, if (sbsec->behavior != SECURITY_FS_USE_XATTR && sbsec->behavior != SECURITY_FS_USE_NATIVE) { rc = -EINVAL; - printk(KERN_WARNING "SELinux: defcontext option is " + pr_warn("SELinux: defcontext option is " "invalid for this filesystem type\n"); goto out; } @@ -970,7 +969,7 @@ static int selinux_set_mnt_opts(struct super_block *sb, return rc; out_double_mount: rc = -EINVAL; - printk(KERN_WARNING "SELinux: mount invalid. Same superblock, different " + pr_warn("SELinux: mount invalid. Same superblock, different " "security settings for (dev %s, type %s)\n", sb->s_id, name); goto out; } @@ -999,7 +998,7 @@ static int selinux_cmp_sb_context(const struct super_block *oldsb, } return 0; mismatch: - printk(KERN_WARNING "SELinux: mount invalid. Same superblock, " + pr_warn("SELinux: mount invalid. Same superblock, " "different security settings for (dev %s, " "type %s)\n", newsb->s_id, newsb->s_type->name); return -EBUSY; @@ -1107,7 +1106,7 @@ static int selinux_parse_opts_str(char *options, case Opt_context: if (context || defcontext) { rc = -EINVAL; - printk(KERN_WARNING SEL_MOUNT_FAIL_MSG); + pr_warn(SEL_MOUNT_FAIL_MSG); goto out_err; } context = match_strdup(&args[0]); @@ -1120,7 +1119,7 @@ static int selinux_parse_opts_str(char *options, case Opt_fscontext: if (fscontext) { rc = -EINVAL; - printk(KERN_WARNING SEL_MOUNT_FAIL_MSG); + pr_warn(SEL_MOUNT_FAIL_MSG); goto out_err; } fscontext = match_strdup(&args[0]); @@ -1133,7 +1132,7 @@ static int selinux_parse_opts_str(char *options, case Opt_rootcontext: if (rootcontext) { rc = -EINVAL; - printk(KERN_WARNING SEL_MOUNT_FAIL_MSG); + pr_warn(SEL_MOUNT_FAIL_MSG); goto out_err; } rootcontext = match_strdup(&args[0]); @@ -1146,7 +1145,7 @@ static int selinux_parse_opts_str(char *options, case Opt_defcontext: if (context || defcontext) { rc = -EINVAL; - printk(KERN_WARNING SEL_MOUNT_FAIL_MSG); + pr_warn(SEL_MOUNT_FAIL_MSG); goto out_err; } defcontext = match_strdup(&args[0]); @@ -1159,7 +1158,7 @@ static int selinux_parse_opts_str(char *options, break; default: rc = -EINVAL; - printk(KERN_WARNING "SELinux: unknown mount option\n"); + pr_warn("SELinux: unknown mount option\n"); goto out_err; } @@ -1615,7 +1614,7 @@ static int inode_doinit_with_dentry(struct inode *inode, struct dentry *opt_dent dput(dentry); if (rc < 0) { if (rc != -ENODATA) { - printk(KERN_WARNING "SELinux: %s: getxattr returned " + pr_warn("SELinux: %s: getxattr returned " "%d for dev=%s ino=%ld\n", __func__, -rc, inode->i_sb->s_id, inode->i_ino); kfree(context); @@ -1635,11 +1634,11 @@ static int inode_doinit_with_dentry(struct inode *inode, struct dentry *opt_dent if (rc == -EINVAL) { if (printk_ratelimit()) - printk(KERN_NOTICE "SELinux: inode=%lu on dev=%s was found to have an invalid " + pr_notice("SELinux: inode=%lu on dev=%s was found to have an invalid " "context=%s. This indicates you may need to relabel the inode or the " "filesystem in question.\n", ino, dev, context); } else { - printk(KERN_WARNING "SELinux: %s: context_to_sid(%s) " + pr_warn("SELinux: %s: context_to_sid(%s) " "returned %d for dev=%s ino=%ld\n", __func__, context, -rc, dev, ino); } @@ -1772,8 +1771,7 @@ static int cred_has_capability(const struct cred *cred, sclass = initns ? SECCLASS_CAPABILITY2 : SECCLASS_CAP2_USERNS; break; default: - printk(KERN_ERR - "SELinux: out of range capability %d\n", cap); + pr_err("SELinux: out of range capability %d\n", cap); BUG(); return -EINVAL; } @@ -2016,7 +2014,7 @@ static int may_link(struct inode *dir, av = DIR__RMDIR; break; default: - printk(KERN_WARNING "SELinux: %s: unrecognized kind %d\n", + pr_warn("SELinux: %s: unrecognized kind %d\n", __func__, kind); return 0; } @@ -2862,7 +2860,7 @@ static int selinux_sb_remount(struct super_block *sb, void *data) mount_options[i], &sid, GFP_KERNEL); if (rc) { - printk(KERN_WARNING "SELinux: security_context_str_to_sid" + pr_warn("SELinux: security_context_str_to_sid" "(%s) failed for (dev %s, type %s) errno=%d\n", mount_options[i], sb->s_id, sb->s_type->name, rc); goto out_free_opts; @@ -2901,7 +2899,7 @@ static int selinux_sb_remount(struct super_block *sb, void *data) free_secdata(secdata); return rc; out_bad_option: - printk(KERN_WARNING "SELinux: unable to change security options " + pr_warn("SELinux: unable to change security options " "during remount (dev %s, type=%s)\n", sb->s_id, sb->s_type->name); goto out_free_opts; @@ -3343,7 +3341,7 @@ static void selinux_inode_post_setxattr(struct dentry *dentry, const char *name, rc = security_context_to_sid_force(&selinux_state, value, size, &newsid); if (rc) { - printk(KERN_ERR "SELinux: unable to map context to SID" + pr_err("SELinux: unable to map context to SID" "for (%s, %lu), rc=%d\n", inode->i_sb->s_id, inode->i_ino, -rc); return; @@ -4406,7 +4404,7 @@ static int selinux_parse_skb(struct sk_buff *skb, struct common_audit_data *ad, } parse_error: - printk(KERN_WARNING + pr_warn( "SELinux: failure in selinux_parse_skb()," " unable to parse packet\n"); return ret; @@ -4449,7 +4447,7 @@ static int selinux_skb_peerlbl_sid(struct sk_buff *skb, u16 family, u32 *sid) err = security_net_peersid_resolve(&selinux_state, nlbl_sid, nlbl_type, xfrm_sid, sid); if (unlikely(err)) { - printk(KERN_WARNING + pr_warn( "SELinux: failure in selinux_skb_peerlbl_sid()," " unable to determine packet's peer label\n"); return -EACCES; @@ -7091,11 +7089,11 @@ static __init int selinux_init(void) } if (!selinux_enabled) { - printk(KERN_INFO "SELinux: Disabled at boot.\n"); + pr_info("SELinux: Disabled at boot.\n"); return 0; } - printk(KERN_INFO "SELinux: Initializing.\n"); + pr_info("SELinux: Initializing.\n"); memset(&selinux_state, 0, sizeof(selinux_state)); enforcing_set(&selinux_state, selinux_enforcing_boot); @@ -7131,9 +7129,9 @@ static __init int selinux_init(void) panic("SELinux: Unable to register AVC LSM notifier callback\n"); if (selinux_enforcing_boot) - printk(KERN_DEBUG "SELinux: Starting in enforcing mode\n"); + pr_debug("SELinux: Starting in enforcing mode\n"); else - printk(KERN_DEBUG "SELinux: Starting in permissive mode\n"); + pr_debug("SELinux: Starting in permissive mode\n"); return 0; } @@ -7145,10 +7143,10 @@ static void delayed_superblock_init(struct super_block *sb, void *unused) void selinux_complete_init(void) { - printk(KERN_DEBUG "SELinux: Completing initialization.\n"); + pr_debug("SELinux: Completing initialization.\n"); /* Set up any superblocks initialized prior to the policy load. */ - printk(KERN_DEBUG "SELinux: Setting up existing superblocks.\n"); + pr_debug("SELinux: Setting up existing superblocks.\n"); iterate_supers(delayed_superblock_init, NULL); } @@ -7223,7 +7221,7 @@ static int __init selinux_nf_ip_init(void) if (!selinux_enabled) return 0; - printk(KERN_DEBUG "SELinux: Registering netfilter hooks\n"); + pr_debug("SELinux: Registering netfilter hooks\n"); err = register_pernet_subsys(&selinux_net_ops); if (err) @@ -7236,7 +7234,7 @@ __initcall(selinux_nf_ip_init); #ifdef CONFIG_SECURITY_SELINUX_DISABLE static void selinux_nf_ip_exit(void) { - printk(KERN_DEBUG "SELinux: Unregistering netfilter hooks\n"); + pr_debug("SELinux: Unregistering netfilter hooks\n"); unregister_pernet_subsys(&selinux_net_ops); } @@ -7265,7 +7263,7 @@ int selinux_disable(struct selinux_state *state) state->disabled = 1; - printk(KERN_INFO "SELinux: Disabled at runtime.\n"); + pr_info("SELinux: Disabled at runtime.\n"); selinux_enabled = 0;