From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751677AbdFAQ6Z (ORCPT ); Thu, 1 Jun 2017 12:58:25 -0400 Received: from mail-eopbgr40103.outbound.protection.outlook.com ([40.107.4.103]:19948 "EHLO EUR03-DB5-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751130AbdFAQ6V (ORCPT ); Thu, 1 Jun 2017 12:58:21 -0400 Authentication-Results: lists.infradead.org; dkim=none (message not signed) header.d=none;lists.infradead.org; dmarc=none action=none header.from=virtuozzo.com; Subject: Re: [PATCH 3/4] arm64/kasan: don't allocate extra shadow memory To: Mark Rutland , Dmitry Vyukov References: <20170601162338.23540-1-aryabinin@virtuozzo.com> <20170601162338.23540-3-aryabinin@virtuozzo.com> <20170601163442.GC17711@leverpostej> <20170601165205.GA8191@leverpostej> <75ea368f-9268-44fd-f3f6-2a48dc8d2fe8@virtuozzo.com> CC: Andrew Morton , Catalin Marinas , Will Deacon , LKML , kasan-dev , "linux-mm@kvack.org" , Alexander Potapenko , From: Andrey Ryabinin Message-ID: <31a41822-35e1-1b4a-09f7-0a99571ee89a@virtuozzo.com> Date: Thu, 1 Jun 2017 20:00:09 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <75ea368f-9268-44fd-f3f6-2a48dc8d2fe8@virtuozzo.com> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit X-Originating-IP: [195.214.232.6] X-ClientProxiedBy: DB6PR02CA0034.eurprd02.prod.outlook.com (10.170.218.175) To DB5PR0801MB2728.eurprd08.prod.outlook.com (10.166.176.24) X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DB5PR0801MB2728: X-MS-Office365-Filtering-Correlation-Id: 2b11edb4-7f4d-46ec-e141-08d4a90f6356 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(201703131423075)(201703031133081);SRVR:DB5PR0801MB2728; X-Microsoft-Exchange-Diagnostics: 1;DB5PR0801MB2728;3:KL67OyiJrucoI4VhDkHP/gU83g5UXsQmfAHTfH1IsXuXzxScapo5/Likglxv4sCRPaqV/oiHJXrSKJW5dtye13KSl6pYBI3Ge0PDGuJ7/bmnB25KC8rx+aNyIxSxpmbNcDjH1yIuEOYVd/NJLpRAYr7sqS/pe5eVU2/j7Mfnum9XBO0ZaTVNYmJ9SCNwA7esLiCTFR3CGq0UGspUTgdnZuHLqeMaGq21/H3fOp0CX/OEoYLYHhB8Mazv9LPNs3dhkc8N7Jih1xPIjdaWAmSD0aZDlVRedVVFViL/jw5kSKlom1FYYeToDTJ+KdmydzbqpoWyOW6onitpETUkWCCQlg==;25:OW7KaSMwGHwOWx7FjqDyBksefv74aYby4x/uGvmP5hZ83lVI0RBtjuoxUoqmsoKZZ2aSMzCAkObtGxxrqFdCBWoh9OVr+ko2Ir/4HldE1Nk1iGm8X9B+e4LhCTgwixYRAXACL9RhMjfEKiHMe0qt2P0XvBlZ/43DgrjPKZlxcHeC5Xov8IGJDpwuiVraXeRcUJauR/qtWyRfcOJzFiDd6FLH7GmMKoC4t8bYMqvdiZYYT1TrVHkII1UiIIsGR7wvsLTX2YXSjqPNPnFFCM4L531X9MczviAnl8XCqpQqF7sVp3G+dSMUXhLQEjTW9uh5x2wNieag/XMrgOulIt2aOwQjhkg7dPrtPVPP77cp4Mbl/lgSBY88GTrBW0jeqDAZuTMnc25uXbGChQcFRlXLEQMwg5pszaRi9hTl6ncVpaxhnoQ7g5uDCddaq8hXmUoJQzqDLNk6/aOFq3ZprqYUYd6vU9BjgynU//2g7mXXJ5k= X-Microsoft-Exchange-Diagnostics: 1;DB5PR0801MB2728;31:UG5Ha9fHm9JKec0ijEZ64aAseG+H5noeFsdcK1HyB2PywknWbRVTGnbLCiXDuRZ/O6MWAjilmJszM5mpLe4rZA9iiwMRdl96iRI1dH+HAKK5HkiyLC8cwUfDvEwBZaQTXXqi8Dy2ysZHXwcSMi+ZUzDDHo56tKv6FVv2tI5X4QdcdWssMkGGLRIjdh8sLEm17LQvqClTVopPN8BKUU7XR6AFaFdokZnE2fjsnflIaAHAE2nJQVprhiRthPOnCRb3tAHuzjfDQGBlwuIqcHFbLg==;20:znldcBl5vmCwwpZ1BQJwl+NkfWNwt60G8ENvV0AxhztYgUdrevdkTtbfKqEO/z0iRLPIYVtZTjV+LSIyObCurWENB/xG3Dfq6RysbangVll/2bjPXxjYyDDandiCwdbX1BFKyx77KSmxRf7ZtWcq3CRYB02UkLV6MO658aM0ybIzOB4aWhFKqG96qK4/eESQrzUCJ4dl4yNDN5+lRvdipIT7d4AnrXo6GWDb/zgQpZK9qhPsXBBwkavpk0mwaFM8LYRYZ5+SFlQHdwqnSHnu3BblW5h1wLZT2NOM+X9Dz6HTEemFYkF2eMd3f9eZW0AKgK7FbG2SZ7BoUAaoIcA68ennqMTeTGnHdfXerN15OTj74931u3wHBgnqavvffOTn2EgN1xg2oa51FF9buD2LLJ9002Q1ky5XuTUMAFaqT/w= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(180628864354917)(166708455590820); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(8121501046)(5005006)(3002001)(100000703101)(100105400095)(93006095)(93001095)(10201501046)(6041248)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123558100)(20161123562025)(20161123564025)(20161123560025)(6072148)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:DB5PR0801MB2728;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:DB5PR0801MB2728; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;DB5PR0801MB2728;4:jwJOqk/CqRsiLpP+yTG8AIl5v0C5OW3Ba6AP?= =?Windows-1252?Q?Bn8CT9rlsqz6mLu3Xa3nm72dyCBGnmWQ18GZ+LiMixb4lBHkhGkEbfFh?= =?Windows-1252?Q?MXtJHkPqxxnYJvwvxB9BEejt+KBjfIS/qtmx+XRF55Rg8oP99DSAzk8+?= =?Windows-1252?Q?Ih9dWEape6qySAhxOYkD4Bl3WunIX6XtDQggY7DXCp7TcHrdy1GzVa0p?= =?Windows-1252?Q?2T/2nrzlKz2ByqwCK4CrCDIYlRVM5oi3ooUAeW/0eOANIzEjrJaob2nV?= =?Windows-1252?Q?9ixBxQaah4H/hsxURc01Y4W0AsZMIW/Fh/ZEEXyAZUgOCZMJLzTC4JmK?= =?Windows-1252?Q?Ld6bs9oCtStetSovFugACGfICSb3YERKncaUbJ+cV4nIkJsdAb27cmMa?= =?Windows-1252?Q?yGuvn8WdNS/eDgg67LHLJpnp71BE8UC8YtQsKx7OAmYQMFOpehA2VUQv?= =?Windows-1252?Q?yup9FWOwfqhtSNMmhY3o9ATmtv6/qciKvCDneKCFQa5CPGyIMDWTv65t?= =?Windows-1252?Q?umKqT2n1B2z3gtbYJPnxg5alOVIKW+HC61TNVI2XP0pMlJatEfgCMIIN?= =?Windows-1252?Q?ts8bmWQon79UexS/YIrrWJQO78LwDcq/3mgODZ1hrf/sF5evOSMj56IC?= =?Windows-1252?Q?no4J0kgL6eJInnUs72kLu9hhpRpdvCo5uZd7S3gmLSaiWHd+zKAnpJ0Z?= =?Windows-1252?Q?gLcHSnkmRg08tA4E/q7xtUN5TOHmDHPf3cWGsbprRMf3PSGtNlVyTLYL?= =?Windows-1252?Q?0jrWVcceBuKQPJ2SluPYoILrXXn1z+Rt493Z89wUdhgioU50v5MEte7Q?= =?Windows-1252?Q?qtUUOy5XIee1DJyx08eXgDkWG2LTwbDdTnTyO0/1cnPlDKzYkikqbWPY?= =?Windows-1252?Q?VU37YIacE4U5WDU/EfV1kZuvGBMLTLFad9FGrfvz9flkrn+A1bmGBLSf?= =?Windows-1252?Q?NPdQNy1nEMtIM90J9sFWrdrOx/MJkLLdK1oHUmoM4Fqjfv//1FeqSi4T?= =?Windows-1252?Q?tvIDfIPTht8G0EVbs6I2oJWmpGfz1xNzw3xqQ1J3pAkMogedMb6SzUIK?= =?Windows-1252?Q?K8SQg2hD7oqpZxhUj6DH9PAv8R7fWART/loi3DEAP0kGv9fk+YNb42Iw?= =?Windows-1252?Q?6xsRLxJVAckbxIdAQ6nv4pdrS8IBzu2KH+L7AYGtx8jDtDWWm/KSZYQO?= =?Windows-1252?Q?wrII8OjwF9RKrp6nUk1EvrHGFiPhIvx9a52DKbXyDokknRiQFAeePQhj?= =?Windows-1252?Q?1eO0p03FbeGXGVjzfhnNpnltyrPH4NsMYv0RwiJesSfKPnahSzDNSylk?= =?Windows-1252?Q?0uqdVgSNMPn8Q4BVUpBUDSuz8Q=3D=3D?= X-Forefront-PRVS: 0325F6C77B X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(4630300001)(6009001)(6049001)(39450400003)(39830400002)(39400400002)(39410400002)(24454002)(377454003)(65826007)(6306002)(23746002)(2950100002)(25786009)(7416002)(966005)(50466002)(6246003)(4326008)(189998001)(2906002)(3846002)(83506001)(53936002)(53546009)(54906002)(38730400002)(90366009)(6116002)(229853002)(81166006)(42186005)(4001350100001)(8676002)(77096006)(230700001)(478600001)(86362001)(6486002)(47776003)(33646002)(5660300001)(50986999)(54356999)(76176999)(66066001)(31686004)(7736002)(93886004)(305945005)(31696002)(36756003);DIR:OUT;SFP:1102;SCL:1;SRVR:DB5PR0801MB2728;H:[172.16.25.12];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;DB5PR0801MB2728;23:2ONhqTbFGNMow9AEk+LHVGx18UErHZAZCjb?= =?Windows-1252?Q?6c6BjTAyCQkTjCWPyss2u5NErs5RRqMavia7h/dZTxFqwFMkAmK1MLdS?= =?Windows-1252?Q?/ba+dEF0SWPIm5Fvww6u6vLgHFsY3dPLl3GY0Ot00SOoKMLy1yhYel+P?= =?Windows-1252?Q?1Y1DK2JbTLYDqycwC7Be+Nw70vu0rp1dndQpNalP6+lQhD74HCsF1Fi8?= =?Windows-1252?Q?kHXJelNE4O6aGqS421dbSIXLNuRwrJYmSdJwtPw7t8cSCrYlPs2foBR8?= =?Windows-1252?Q?aJzwkVPyOQZTtmWSiut2TA/PeRNZTydNlEfHHUK7PIlDcFpRkDDZ5bKR?= =?Windows-1252?Q?g+dFOkorDom78uCDVtA8JYGfStnJBwrCxj3VrRNU8P5/5U3WUlCamkFY?= =?Windows-1252?Q?hwzjc95X/a+RjRpspTdjccrqFPjDc1b81lBfwrqSW+apWVK/aP6Vt/Ds?= =?Windows-1252?Q?04OWgjvlA6hLTF+KWX8lEykZODf6fMh9+6xOYfzEHHUvI0giOSK+4GzC?= =?Windows-1252?Q?ocDZkrnQTbtrFD/nUmBdLI1v6mvOhJa5qwkJ6D7I99AUW4UeKmPBnH0X?= =?Windows-1252?Q?CAFSZuEa9dY+1/1e3YOXNhXPrSOrz3eUXXPSrSXPLRMqBR5xGUZBxeAJ?= =?Windows-1252?Q?3et6/3tWTkDqp4JEWkd3eSQuqfILsDLcxGNtO07Xr09+q01EEMlg1/Tu?= =?Windows-1252?Q?nzII/9XG4YKWe6P6ViHPwaJjwzOjczV6lQEYYIlMMyv7QEOxD+YSKiDN?= =?Windows-1252?Q?WbpDRZHqa+zeTmLNRBhJVEEHTygLCfaUkDCoOxPYK5sCTrxL4XYta+rK?= =?Windows-1252?Q?99vrTrukAaNMQHcbLRFgDC6mBukbU7b+Mi1UC2L0rqkv+BRpVtc4brm7?= =?Windows-1252?Q?r5CZ7Adjc5IiCUR2/k+RBGrGYzZH8HzsN2evbns5F8f1VBvFG11nyjy6?= =?Windows-1252?Q?1zLHIfDbi7Bydl/vUQ5pmo2AAQLHqji06SL4tvTX23w5ZZq+clB8oQdZ?= =?Windows-1252?Q?2xCMMZXUZsR1WQCxIvQK+OaiqRkS756HVBZhFiB8+H6Eg0UqLHX5bw1H?= =?Windows-1252?Q?pF9fzMOJu72bUbFd7nyMEiDOhHBSFJbSeOnHtRMgJSYQyrFLfpmf67ZF?= =?Windows-1252?Q?HyYmt/pznHmCKKvQkPv05XXlJ1U/IeRfDNnoQfvT7/7zx+85XPrOK6tw?= =?Windows-1252?Q?5b/PsJ/deVGTwVB4sUMs+a60X3NKry/13OtZ8mRX7XC3/8r2E98Ls83q?= =?Windows-1252?Q?DiPkF2mQ5UjBJAGAWbNKYTEkVLynCZD8XhmlpLxHHrBByxV+NeoAQc2l?= =?Windows-1252?Q?bJLO2lL5UmjgEyUhdAwhzkCx1uTjGnEoLtJsHmgm+3sbZj6ilB6CztJA?= =?Windows-1252?Q?x2w3Hh5aSTtkG?= X-Microsoft-Exchange-Diagnostics: 1;DB5PR0801MB2728;6:hl9PMSYlw+2HehOLoyEakZ7HzfZM1B8QSTmItDTGuO57e7/Ba2mA3nczWJY0rxVLVe5FFGwujzHRh9RZ+FNIAKaX1ffC8+Y+dUBwSpZaaTrqV/nBcQouEV23FhITJ60K2jLYIbXnrNslxVDgaGLZspo4JQx/8RAtRbksTQwygQu0ekLJ097krc/+qwgtNpRKvdgRKajK960x6sbC5brbqiBFHxthEw1Tpc0sI5+9e89Z/0XqiRxACTxdX36UYsajAa09lkIyz/o6HzRQrEKapm8AjjoGY/VXlhI4WREzi/givSo0+0ZUFE1SQEks6dhJnKVvO4zEnnk6DV3eeYeS99ZpL5kzpS6R2TBaehdEpu3VEWIul8fD23WF0lAmMQluJKLQ7h5yUqW5v5ZTntzYUAhWWuEuhPJP0WNb+tdR99hAE3ehoFPcIY4O9KVFs6VT3zBVDzI8hh2jj7+ySi4sjodCgodtkseq9d7lUO50yPkqTF+U6ghDBy0xq0ynUzHSBexwIVA+L5lquXhYRSOqUg== X-Microsoft-Exchange-Diagnostics: 1;DB5PR0801MB2728;5:5pHv5w75x8pmlNEcJ1s1RNlDlSakWuMmlO5UMENjHtm2H0IJu0CQqUcpce8RyXzKD2VSjXxSIwFVuhTsVCMfPpcpzkAHsxNyEcn3VCKWERdGgOsi6rA6Jb6Pmy9F2elUjd9BF9Ul1Rjz6+LTMjkFfKX4uhQcbLrDBjn8T8ghGzdQjezhGmvZhOxBxkQADjbQoHdeaxsa2IWN32CfBQLPMiNyGTOzoY2CAHNqS1RB2gHhh3DUyp0xqom7O19h71NBiI3IXgOwgPxoVbrS4QYP7fRHIj2Yy4IFCbXwrhOIbBW6mdpJx5/QKGeOl36dvy0ntIgygtEXIaRRhiLE7VcbtDk8HX879IK3YUnAakAW7IO8Qr5H82MJ+CixGWpoFk0wQxnVp4vPZApGZjFveSdU5YS1C7/hdoEkl9sB+kvrDIfnFYGxu3yKLMy2Iu9z1/iWDDoxJVife7wIkbJylwxRShh7yoDY3dKpJSf/NQ3iQNvJJ0jJb4XCDijAoZH03l6N;24:+4Gte0Pm0BkRiwrEvFD3nmWQy6JxyfYbEi/Mi/BjWvMNzWhRmsxd4oKzCvxOSVUj7WIvUW1W8e684PAMSw2ItjGodkgyrn39U/ZmnLpazds= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;DB5PR0801MB2728;7:TViz2udqmP2z+akvcvlo4vrLkUWWM6UPyNSguYu5B7fBxPe76nMq0f9b1ydmRwOfBVSPJ4GbgSormJJRz6NMe7/vkCzLcGBTEaZx3FTyu6b3LNHz5hZMSikmtxseULROnaRzPl7n5SuBPAMDsZ9TVDsE7znP0i6ZWDUV2jp+LvFvQfshZScr1H6GggoLntByU1pX/8lxeiqopoALwKq4y9mlYqaBZXP+y2JhM65AqUkRzLXAKBs1GZmNAYnM5XbJmJgvIj4xg99BbmciPpmFVyBYrCVh9Uo5hO7PKnAz9LNuEDgeidMFLDQH0gA047Bt+N/vgkA7ds/wITWfaaynEw==;20:UOGl9XHC2DEa2W4uDNIAjE/4kpryhFFhDNS7kZbf8wsazBL5/GNPfj/PD796v/aFHFgA22K19clXYCGi5xYi6AQeSz9HplTajWrabU7eu7A8PXJL7xkNO3ep5LlAslCr7er6RA+cxjO2EmsDGG417TGHdf5nQ2Aoavp0xrqyuzg= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Jun 2017 16:58:11.4824 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB5PR0801MB2728 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 06/01/2017 07:59 PM, Andrey Ryabinin wrote: > > > On 06/01/2017 07:52 PM, Mark Rutland wrote: >> On Thu, Jun 01, 2017 at 06:45:32PM +0200, Dmitry Vyukov wrote: >>> On Thu, Jun 1, 2017 at 6:34 PM, Mark Rutland wrote: >>>> On Thu, Jun 01, 2017 at 07:23:37PM +0300, Andrey Ryabinin wrote: >>>>> We used to read several bytes of the shadow memory in advance. >>>>> Therefore additional shadow memory mapped to prevent crash if >>>>> speculative load would happen near the end of the mapped shadow memory. >>>>> >>>>> Now we don't have such speculative loads, so we no longer need to map >>>>> additional shadow memory. >>>> >>>> I see that patch 1 fixed up the Linux helpers for outline >>>> instrumentation. >>>> >>>> Just to check, is it also true that the inline instrumentation never >>>> performs unaligned accesses to the shadow memory? >>> > > Correct, inline instrumentation assumes that all accesses are properly aligned as it > required by C standard. I knew that the kernel violates this rule in many places, > therefore I decided to add checks for unaligned accesses in outline case. > > >>> Inline instrumentation generally accesses only a single byte. >> >> Sorry to be a little pedantic, but does that mean we'll never access the >> additional shadow, or does that mean it's very unlikely that we will? >> >> I'm guessing/hoping it's the former! >> > > Outline will never access additional shadow byte: https://github.com/google/sanitizers/wiki/AddressSanitizerAlgorithm#unaligned-accesses s/Outline/inline of course. > >> Thanks, >> Mark. >>