From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id B34CAC282C6 for ; Tue, 4 Mar 2025 14:08:45 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3E18E28000B; Tue, 4 Mar 2025 09:08:45 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 369C4280004; Tue, 4 Mar 2025 09:08:45 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 120D328000B; Tue, 4 Mar 2025 09:08:45 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id DF449280004 for ; Tue, 4 Mar 2025 09:08:44 -0500 (EST) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 9B875A0423 for ; Tue, 4 Mar 2025 14:08:44 +0000 (UTC) X-FDA: 83184049368.02.9F018CC Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.16]) by imf20.hostedemail.com (Postfix) with ESMTP id 3B3811C001E for ; Tue, 4 Mar 2025 14:08:40 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=QK6Duca4; dmarc=pass (policy=none) header.from=intel.com; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); spf=pass (imf20.hostedemail.com: domain of maciej.wieczor-retman@intel.com designates 192.198.163.16 as permitted sender) smtp.mailfrom=maciej.wieczor-retman@intel.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1741097321; a=rsa-sha256; cv=fail; b=As1oC4cVUt41xRFsKv4MK0Pq8Pahd4OCofeuwkvefHUrTHtgzUzdnVG6uXiV8Bksij1Hnc hHVtLzpEr5xIxH2ms+ztplOhg592hdKtvLhchZW+pw+dI4XB3YkYhiSWRASZOEGZ6xhzBX QXYc5VVrs/TFwmbTqUZTti3LrFnw4YY= ARC-Authentication-Results: i=2; imf20.hostedemail.com; dkim=pass header.d=intel.com header.s=Intel header.b=QK6Duca4; dmarc=pass (policy=none) header.from=intel.com; arc=reject ("signature check failed: fail, {[1] = sig:microsoft.com:reject}"); spf=pass (imf20.hostedemail.com: domain of maciej.wieczor-retman@intel.com designates 192.198.163.16 as permitted sender) smtp.mailfrom=maciej.wieczor-retman@intel.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1741097321; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=OlsZN0ueo1ClOTg8p4vIZPRmwYVb3yEyebfGzGqFo58=; b=g9UVq5y0+Q51tCsXEd2LlTUh3cn8+HgRs9DndXzc23BBuuuRnvyBkIh+2Ui9EGM5/RWrB7 DzKNAO9AXzZsrcCIVWv7LpcW/nsHzZwzXKKWWoysHXwbuELcclHKwGWyXCAB7KafNASiOB teYgnpYsgO5GpUakGyItcaHdf6UEgD4= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1741097320; x=1772633320; h=date:from:to:cc:subject:message-id:references: content-transfer-encoding:in-reply-to:mime-version; bh=1ZWav+lWKLf2tmmoGPYj8piCv9+hOAY0f10YIfHP0Nk=; b=QK6Duca4Ju8lz0pMZu4RkFtPzD4ebMM5DgblLKzgH1zBNSQyAkOWf9Ym gFlx/pCsqmU0faxjAapwhLpcAl0XPY8p693Fq3hr1HslKMo65JPGsdp0X sEubyNzeITKDUOzgsRseSm2TMmdBddKazFd4Aaaf2S2JC3+3r6DjfMHFX 57DMSVIXhmYifYZrUjvU6M/RCeTEjGLZJdba/RmX7ZqCySNHCYY1M8C4W wqzkdGi15+/HfXop+fJYrlAnEciH84thnmI+JY7me0Z9MJeflGRzHw++6 3+7E/rH34JLzWr7zoI5ONjA4276cnk0ZNyAzJfjXpw+SUzmtrCrwFsQ3K Q==; X-CSE-ConnectionGUID: 5d30Pxn9RkWWiyf60o+P2A== X-CSE-MsgGUID: DTwCDpZnRu+UOEK96nQ9Hg== X-IronPort-AV: E=McAfee;i="6700,10204,11363"; a="29604019" X-IronPort-AV: E=Sophos;i="6.14,220,1736841600"; d="scan'208";a="29604019" Received: from orviesa003.jf.intel.com ([10.64.159.143]) by fmvoesa110.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Mar 2025 06:08:36 -0800 X-CSE-ConnectionGUID: 9qgOOcg4Q46q7hssHs1PzA== X-CSE-MsgGUID: R4e+DAXDQUqJsHWLlvrRVg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.14,220,1736841600"; d="scan'208";a="123321534" Received: from orsmsx901.amr.corp.intel.com ([10.22.229.23]) by orviesa003.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 04 Mar 2025 06:08:36 -0800 Received: from orsmsx601.amr.corp.intel.com (10.22.229.14) by ORSMSX901.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.2.1544.14; Tue, 4 Mar 2025 06:08:34 -0800 Received: from ORSEDG602.ED.cps.intel.com (10.7.248.7) by orsmsx601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.44 via Frontend Transport; Tue, 4 Mar 2025 06:08:34 -0800 Received: from NAM02-BN1-obe.outbound.protection.outlook.com (104.47.51.47) by edgegateway.intel.com (134.134.137.103) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.44; Tue, 4 Mar 2025 06:08:08 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=N7PWNTolHkyZn6Ls4LVbKEALIko8muiacjYgeuN0ACFN2Y6g+T3l+ooEbKqfwKe06HLkb2Tmv803ntSH/cijdD3f1nOfGMvQRDjkKZ0sJqCHe57XBEOOHHHXmcFSNYnfms9Kin4beqd2kZUJnD/KKbv4ArSRoufObWtqPWF3shBkJSXDt3w0iuSwwqOj9f9Z73jpqMk/532PZIACoFssLmpJmPqpRyCJSDlIovy4b/Kbl4LjMNDLrSETRKzIqmcuyUXbk4dBjR6yb/tzWPB2O4E3wSs1W70DeD+zrkb6eg/B9icYHfvweS8sk5v47Vxg8Elf1tTeXJAGcDrzurFoUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=OlsZN0ueo1ClOTg8p4vIZPRmwYVb3yEyebfGzGqFo58=; b=EoCSTbIcGzLGyq6drSIvU6lbKJmaxB12Pt0NMDBAr3ey9Ooa5D1YTq/mpOoWx+sK0UGXzCAsS1AoOr85OlXgvgdwe4hjViwvBD5k7LzAiCbWHwn8QN6ZoDVOJ4WF7PAYXNunmBAKSjThIuFAjCwtBvZHtnGuMzbXQT5HiAw+4W2h8I7aaW5XWVZglCcjIK/JWFbfdTh7d5KLhbgMt9rSimnDMP6YLgooH+eRIoYkyVKP08ovVD8VARB7dQD3x3wYKwo6K94Le+Pc/hWarKDlLSwD2Akso90w7A2yvmd1d/CiaxRwUCVFC72RMSVCNQtZyKdBCMzgjGQXIafAmJzkYQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from MN0PR11MB6231.namprd11.prod.outlook.com (2603:10b6:208:3c4::15) by MN0PR11MB6087.namprd11.prod.outlook.com (2603:10b6:208:3cd::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8489.28; Tue, 4 Mar 2025 14:07:33 +0000 Received: from MN0PR11MB6231.namprd11.prod.outlook.com ([fe80::a137:ffd0:97a3:1db4]) by MN0PR11MB6231.namprd11.prod.outlook.com ([fe80::a137:ffd0:97a3:1db4%4]) with mapi id 15.20.8489.025; Tue, 4 Mar 2025 14:07:33 +0000 Date: Tue, 4 Mar 2025 15:06:54 +0100 From: Maciej Wieczor-Retman To: Andrey Konovalov CC: Vitaly Buka , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: Re: [PATCH v2 01/14] kasan: sw_tags: Use arithmetic shift for shadow computation Message-ID: References: <6wdzi5lszeaycdfjjowrbsnniks35zhatavknktskslwop5fne@uv5wzotu4ri4> Content-Type: text/plain; charset="utf-8" Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: CWLP123CA0177.GBRP123.PROD.OUTLOOK.COM (2603:10a6:400:19b::14) To MN0PR11MB6231.namprd11.prod.outlook.com (2603:10b6:208:3c4::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN0PR11MB6231:EE_|MN0PR11MB6087:EE_ X-MS-Office365-Filtering-Correlation-Id: 4b2df622-f31c-472c-8f21-08dd5b25e889 X-LD-Processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|1800799024|366016; X-Microsoft-Antispam-Message-Info: =?utf-8?B?S0dyZVIxV2NhaTYvU0p2RkM5OHNtMU43MG1iemQ1OFZ4NzBEUU02ZnozRVpW?= =?utf-8?B?R2hIUXljN2NPbUxMbnFRU0RGOVhMK1MzcWZiT2Q5cnQyd25sUGRRMlJGMkh0?= =?utf-8?B?SnlkbFFQaGp5dXFCRW10S1B6UGE5eXd6c0dNV1pHSUxqUnlpUW5la0dpY0xw?= =?utf-8?B?b1pmTDlPbEZXTnVoS3BzOVJhYVo2Q1N2VW1oaWVic0pMTzIySGU2ZUQzWW1l?= =?utf-8?B?cnBuZFA3V1hpeDNNZHZXOU04U3E4R3FBN2VYeXBmVzlPWStZeWhZdTd4ZkJo?= =?utf-8?B?aFFWdTRMNlFWUkh1Wjh6U0VuNEdPSGQ0Qkh4ZXk4eGxTMEtIQWlEZlMyRGFW?= =?utf-8?B?MkJUZklLaU5sWU52TSt1Y215V0FibHd2VGxCcHVzQSs0V0psYVdTM2NlSEZn?= =?utf-8?B?bms3cWRPZHV5VkFEY0pMNm1DeDM1L0lKTnZYLytCenNHMFhNUWlFTzk4a2tl?= =?utf-8?B?aVlvMDA3RHpqREJ5a2tnakFhRHk2aWoxTnQzam82dTJGd2FqS1NBeFlRckRX?= =?utf-8?B?aFZSVVdCK0NwdUVZTGhKY2t3NzFtRTVJQUhoTm5MSnkxVkh5RlpRY2Ftd0J6?= =?utf-8?B?eUZrVjVqcW50cnpiMUp4WXVreWN2ZHQwb1NuVEhVMWdCdmNaT0kxTXllanAw?= =?utf-8?B?N3BvQVV4bkRVYkt0UXd6c0ZzRzJYMjAycFJYaDIwa09pUElENWtRdzJYeVFO?= =?utf-8?B?azE1K29XR1pTajRDYmlnTlArZ0FwaEtwNmM2dVFXYXhEazFIVUsyTmE0UVhZ?= =?utf-8?B?SVFiYWlzVkt3ajFvR2lsNlNPNFcrbk9NNWxXLzN3aWRtR2NIWVZYNXV0R09B?= =?utf-8?B?UklrdC81dVc1MWxXRGlTazUzQ0FGR09QbEREdWNTMFdMZ3ArckFkQnpGdFQ5?= =?utf-8?B?TzBEQk8xamZnNUpMdXlSaEtqTlN0UGNqTStuODJPSmRNZU14dVF6Q25lQ3Bi?= =?utf-8?B?SjlnbkdFY2p3QzRBMkVxY2FVOHdSTExIVXZ4MzN2WU13ak1lMzVWQ1dyQk9T?= =?utf-8?B?dEhZWDVCRHAzbFVwZ0NpTEVYRHdObWh6QkZuNDk5WUFBTVUvdW85MHdnUDd6?= =?utf-8?B?aU5MWUFPSWZGZTduQ2lBcndPcU9kUWlwR21mMUZ3Y1ZoRU9mSytPZmpOeTN0?= =?utf-8?B?eTZvbkFhQ1NnMXp5ZktSWXdOS0poWnNHcU9HMGRvTzhRYVVIWWVXRWlFeDNF?= =?utf-8?B?RTZicEZ1NkZGSnFrTGlRbzNjTEtwYVVWMXdBcW9KSHpuVDBCWnI1ajFtTXNV?= =?utf-8?B?Q1BudVVlaXJ2QnJ2SWJ6S3pRK2x4ZitoNXJ0eFBISVJGYVVrdEhmUEpNSG5U?= =?utf-8?B?MFFzeEZyYkJoZjlRS0lVdFdzZXNmb3NXSjE2TnBpVnhJT0NiUVgwREpwTnd1?= =?utf-8?B?d1l5d080Q05ZNTd6WWk4WWgrdWVYRGV2S3dab0VWbTJMNXZsdWZEZElFSm5y?= =?utf-8?B?dTR1Z1NJcUJPNStUZVQ1bTBwL1NOWTRFTTZjUlcvZWYwbzU1NnBwampGbS90?= =?utf-8?B?bTVycXJIamRya3RGTytFYkx0QmhBZ0RlZ1NYSnNjdnRidHdmZ3EvSWtoYy8w?= =?utf-8?B?a21TL0IvczNWTTlLeXV5S0FsbngxbjlGQ3pmdDJOeTRoSE1BNXloNjFoRWRr?= =?utf-8?B?VDVGU2Z1WnN2SGl2UWdnRHVjRStBUm44bk5tTzBvUjN2QUNEZWpmdUxlOHhh?= =?utf-8?B?Z1RnNmQwVFAxZENpNTR5ckJNdk53dkRnOHJROEtMd2l1d0tKOTQwbUNrNldq?= =?utf-8?B?ekFuUUdvRHI2STV0TXBTb1lGSmlOSnRwN1pOMTNsYmY5RSs4UXFlRDRxTUtM?= =?utf-8?B?UUpXaXdGQXJ3TWljSmx1WGFvTjNBYXQ0RWxnd2xPQ1NMc3lKS2kyVUY3Y05S?= =?utf-8?Q?V9Uockl1XXRcG?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN0PR11MB6231.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(1800799024)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?aDUwQU13ckNvcGg5dEltOGRqeU5LTkY1TVpFamhOS1dtbUREYjlucmJHTkxS?= =?utf-8?B?QXo0TGFtV3FIc1RxVFVzVzVvc0FzNEJ5cUpDWExVdFQ0UkpmNnJNeS95eHRP?= =?utf-8?B?aVpGQzlKU0hySHk1YmdZc3ZpL1hwSUtFZlM3M25VQzhIeCtBb0RSM000TFdn?= =?utf-8?B?SDhKUjVubm5OZWkrZmpEVHI5eDJkamxvSDhNUjhRYUh6dlh1VDcvUlZkWjgz?= =?utf-8?B?blE5aE41eWM1Q0V1QjIzMjJWbFRuZWhxbi9sYjVkeXNYTHlLWVlpem5XSXJP?= =?utf-8?B?NXo2bTNDMWhheUxmZEF3bzRTd3JKenIwTUxUNEFWME5IcUFtZnJNYkxra1VZ?= =?utf-8?B?UjhpQnNGSmhZNnVxUzRKUmdYRWF0dWdqejJ1TzJYSWt3ZWhoY3JwZGtRNWZk?= =?utf-8?B?czF4Q01xcGNUZjZHcHpVYnBqbTZTaGhvYlNIdDJzOU9UZVZSd3N2MWVraUhz?= =?utf-8?B?bVhwaGdvbTJPYmhRc1hmWmNESVI0S0hXNmg2UFZ0Y2pZYnFkSzFDQ0diMW5z?= =?utf-8?B?eTZhcUlpOWhya0NRNjNtU2x6dTVlMFJIV0M0cWs2YlJjQ2xSSlZlc1F3L2k4?= =?utf-8?B?clpaVjMwZjN6aTM3RDIxS0FqWTlxdGwrajBWbnI3U1BVQ3VJR3RNTFNVbmRt?= =?utf-8?B?RzN0K3krblQ3MFM0d0puelZ6dUVoOTRrNVdRMkpncVRLVElTbFVFcU84cFp2?= =?utf-8?B?djdSL1hSVVdQUVhSUjZhSkdnVjhXSHlTaXRuckgvL1g3UVMwOU02VUl2SXVi?= =?utf-8?B?dVZxNjZxYTZVdVZraUZ1MjdLam0rTThNMDVld085U1NCbElxRkxMRXJkNGMr?= =?utf-8?B?WlBKeGRUV2pibHRFOUN3MVdoMTlNMjF0dDZzaVd4bzRRaXlOL2p3dnpmQ2xS?= =?utf-8?B?SmpFVkZRMlBiOVRGQzg0cC9rME1QUVJVMzhkeXlJRGlPcVlFNU5oeEpQMDEy?= =?utf-8?B?SWp3b0duSGdkU2RzRVVGUE0rVUZXcmNldXlwVXFiM0tYdHdiMktKckZ2UCtP?= =?utf-8?B?M1l2SDlFbkZlVnhxTmFpQ29nTVQxaWNjbnNFN1MwQlluS2R0RUpRZnhJdWoz?= =?utf-8?B?VDJNdTlGb3E4UjJkUTl6YkFUdUIxTkRUTjd4UzRyZkpJd2xoTlBCZ0s3WlRt?= =?utf-8?B?bUk0dW10eDcyakdDSWFIUVZYV3JhcTZCZnZ1eEttSnFpRjNPdElSNytKRXFM?= =?utf-8?B?d3d3MHB2anRsb2NCVS81allTQ0QxcXV4WkRjczJITjZPYS9kZlVrcEtySUxK?= =?utf-8?B?Y0xYYzlnYnpkVCtOaFFWQXdPTE53dEpxQ0VYYTR2RW1UdlVlWTcybFpWNmND?= =?utf-8?B?Wkgzd3BhSWNPNmNJUVhoMkxXMzl2ZU1DUTl2dkhJRjlacXNvbkxMQkFtK1hR?= =?utf-8?B?UURlUXBpRFR1U05DUWNKOHozM2VBZ25tUFZoWXdUaGw5M2xMVktObmwzMllw?= =?utf-8?B?UUV0SVJMdWd2NlJyRmVBaEF2RUdMS0J0YWp3bWZQTzZIYnNDdHhWekJqbFN6?= =?utf-8?B?ZGVyb0hHbWc5WEhXUXR3R3FiejBQWTVoeWtUd0J0Y1J6MEYxSmFlaHF1MVY0?= =?utf-8?B?ZmtiRlBpMTY3QVB6Q1VUVDBhZXhYTjAvM3BpN3ZUYWZiMkMza00rV3d0M0sr?= =?utf-8?B?MGx5WEpoQytNZkVuOS96Q1NTS3BkM2x3RFQveXFjK1pUVU9qN3RiRktvVldt?= =?utf-8?B?TmFQYWVRM2swQkZ5YVdIWUNDWjlCMjBzTEpFV0hrbzM4a1FPeGc2Rk5PMlBs?= =?utf-8?B?aWFzZFpzL0lWdFJUM3VxdVZtMlMrcEN1RVYwRjgxN0RSaDdYeDBSTzFITHU4?= =?utf-8?B?QjNNLzNjTVROQnFvWFdyRkFpcGFlNy9jWUxidlk5Y20zT3ZqbHVaOG9MVHRo?= =?utf-8?B?eEZTemxkSU1UVWtZNjFxZ0pXRm44N0hoT0xPNnlTcG5BMm9idkdYV2tnM2o3?= =?utf-8?B?U3lhVlZ2eDlxaEl0eHVRaUZJc3JaTVR1WlYrSi8xaEJmK25lQjBKKzFpSERS?= =?utf-8?B?SnBBei81eWdpaUZWVmdyN0J1eWEvQ3oxUmMvKzloN0luZm05NU5iTVNZeHRX?= =?utf-8?B?WTZzVE91eVp2RHJReWdyejhVcE1pbU4xNk4xQmxjdXFlS0RJTHhjd1lpMlZh?= =?utf-8?B?Ync2blMrTVV4ZDFJSHkreUhmcm95MHAyWTVXRUJmQVBuc1dhTm5pb2N3WnZK?= =?utf-8?Q?6kpPCTorYszaKVMVv6fVpYg=3D?= X-MS-Exchange-CrossTenant-Network-Message-Id: 4b2df622-f31c-472c-8f21-08dd5b25e889 X-MS-Exchange-CrossTenant-AuthSource: MN0PR11MB6231.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Mar 2025 14:07:33.1756 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: VmKwmjxZwEFw1JPnhPBbeceWTbIFdY6wj221xUQS58NA8zgu7pkqGf09OtCZ35T+1q8t8UqRtnZ+WfNerUasJSGpX9YM9gGNxJrRMH2ps0U= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN0PR11MB6087 X-OriginatorOrg: intel.com X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 3B3811C001E X-Stat-Signature: ymeyhj7mq9d9z9c9af1twjdff6hxw8it X-Rspam-User: X-HE-Tag: 1741097320-706637 X-HE-Meta: U2FsdGVkX1/3krlpUSw3+daOPVsTH0pYg1nlszHpiHVwBU1SdhOwxxm1UMPx5AE+flNl+rhLV0lT5lTlWekr7Xh1LUSz3IdFwWp4FCSRk/eUPgtj25OM+/GZLf34VixHYxO8hGOGHMbdu1NuZWPpuovSB6lxI2TvTVisNIlE9UueisizGmk+rqkUvU3OdXWBoyRFUcpUfiX94b+xxzB76Oz2Pz2B9qaSmOJ7Y1fgLF53yWdEcUNj0s432K+y2TFMg6FIkIZzO+CXxoIosY26efYoggHE4ilYn7hf7JtwV7Vo493b2uB775WHJafO8054yfaUonGM4hITWlMcfPUwssAZ77eeGSjLKfAkke2+LPSCRl+DcTRuPVS1hsfyx6vmifKUnzG1eK7Mx8sl5HnAq7s/NaKv4lswRhaDR9kBObhx2/OeWbGuum6N7puFoxyOAa9UF3VXHPAnpxZmEzK/4YFUGc/nxByHtNsJBZqjB9xjG3KLOWEdYehNVasP6DUzeOxJSwVbaV4Bn4IuagvRXG+FtFoajyGm2VBbtFWJtA1w9jobAdPLT7keYJte6DDo9TxPiJgSG6caTHdBc8kyNlUZAr54l08ydelz48FwYco3oijP+OK5IL4+InJfWt7LzU6RHFeRvRspk0B2j0nuarmlWTiyzuhZxbMh4ZXyXWyGYNdrTx8WZkEGPpjcTpw0YYt/uWeqpqXCy2bKsyL23pj38ZYLTL4EGUMEHnC7FqlnGrJMQL+bwrxeDWykcRwLd53aV2NieflASQUAI4B+KsyOlVdS8W528vZ7qigf5CDvuVPzqz2wUaDavPBu75hD43waBgGBDVcpwJ5A4wQJEVVSUp/CFCqaiySWPGS0P+DLcwtxvzaHPpZlS5MJMgt6bfG9ejnCszg+b2GdwzSdfwzlhBwHHzL1a0AjnWvE3IvJGllS4QxvKUR8ZK7zMwZUPaSKBlQqbILgp9bAjUD ZWbloKCF tVYXS/XdxNOHf9N8S7l7tuDuoNkZnHkK2vMUYaGBll632WaYmZ8kb2/ecKVrA8eBU5l2WNYZvz76u599A6fsSUPj1Ne2EUL6PJoTORWtEWL/yUtFTH4o0NuePQUk0SroPT4Z8+jT+6oQoqdPVwd0PJpcSRURvIaGxhz0VLOAnOB18gLN7dYBkBKcNO3DejPmfKxdHTS9dHHfj7Aht3FbrIRPlbgjJ1K583tBCk4+S+6UTsOgaM7HDd/5b/2ucCLfyboT8rFeDOIxHCg5OM4ChO7f4lQs0PPQXjHKXVJAnzRcfB3e0oT0Qq20zDHADd+vfk6WXONLGzw7qJid8PeHka2i/wmqoDAFF9d3Ee+Wh4gHVWIbJjjhKR9Bwfe53vQ+bXAMtgZLN8HDSk9efPEolj7jJYqqy48+dDD+TolcCCnsnsAHHPjPJAfhY7yudG8z5627XjcVUzxcdQxMdg8Y3eYDXCi0q5TQguGtPSMbBI8Uo1w2XRddaU2I5GpA2h0NfGjps/nAlUYdISuIE6U/cKWbJZOH6I6AXghiXFlderDGzTgN1ZTZhLlAfEu3oy9p4oQ/wxYXpPQ/TsFg/+D7BYrApoEvaI5RaSkkxnNKSJif36ZwxEYktFhsE/A+M19tO9kWP X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On 2025-03-01 at 01:21:52 +0100, Andrey Konovalov wrote: >On Fri, Feb 28, 2025 at 5:13 PM Maciej Wieczor-Retman > wrote: >> >> I was applying your other comments to the series and came up with something like >> this. What do you think? >> >> /* >> * With the default kasan_mem_to_shadow() algorithm, all addresses >> * returned by the memory-to-shadow mapping (even for bogus pointers) >> * must be within a certain displacement from KASAN_SHADOW_OFFSET. >> * >> * For Generic KASAN the displacement is unsigned so the mapping from zero >> * to the last kernel address needs checking. >> */ >> if (IS_ENABLED(CONFIG_KASAN_GENERIC)) { >> if (addr < KASAN_SHADOW_OFFSET || >> addr >= KASAN_SHADOW_OFFSET + max_shadow_size) >> return; >> } else { >> /* >> * For the tag-based mode the compiler resets tags in addresses at >> * the start of kasan_mem_to_shadow(). Because of this it's not >> * necessary to check a mapping of the entire address space but only >> * whether a range of [0xFF00000000000000 - 0xFFFFFFFFFFFFFFFF] is a >> * valid memory-to-shadow mapping. On x86, tags are located in bits >> * 62:57 so the range becomes [0x7E00000000000000 - 0xFFFFFFFFFFFFFFFF]. >> * The check below tries to exclude invalid addresses by >> * checking spaces between [0x7E00000000000000 - 0x7FFFFFFFFFFFFFFF] >> * (which are positive and will overflow the memory-to-shadow >> * mapping) and [0xFE00000000000000 - 0xFFFFFFFFFFFFFFFF] >> */ >> if (addr > KASAN_SHADOW_OFFSET || >> (addr < (u64)kasan_mem_to_shadow((void *)(0xFEUL << 56)) && >> addr > (u64)kasan_mem_to_shadow((void *)(~0UL >> 1))) || >> addr < (u64)kasan_mem_to_shadow((void *)(0x7EUL << 56))) >> return; >> } >> >> The comment is a bit long and has a lot of hexes but maybe it's good to leave a >> longer explanation so no one has to dig through the mailing archives to >> understand the logic :b > >Explaining the logic sounds good to me! > >I think your patch is close to what would look good, but I think the >parentheses in the long if condition look suspicious. > >Please check the attached diff (Gmail makes it hard to inline code): I >fixed the parentheses (if I'm right about them being wrong), made the >checks look uniform, added an arm-specific check, and reworked the >comments (please check if they make sense). > >If the diff looks good to you, let's use that. > >It also would be great, if you could test this: add some code that >dereferences various bad addresses and see if the extra KASAN message >line gets printed during the GPF. Sure, I'll do these tests :) For now I found my code has some issue with inline mode so I'll first try to track down what's wrong there. But looking at the patch you sent I'm wondering - are we treating the arithmetic in kasan_mem_to_shadow() as unsigned? You wrote that all the ranges will overflow but I thought we're interpreting the arithmetic as signed - so only positive addresses will overflow and negative addresses (with bit 63 set) will only be more negative thus not causing an overflow. That was my assumption when writing the previous checks - we need to check below the overflown range, above the negative (not overflown) range, and between the two. -- Kind regards Maciej Wieczór-Retman