From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751700AbdISNud (ORCPT ); Tue, 19 Sep 2017 09:50:33 -0400 Received: from mail-co1nam03on0062.outbound.protection.outlook.com ([104.47.40.62]:40384 "EHLO NAM03-CO1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751237AbdISNua (ORCPT ); Tue, 19 Sep 2017 09:50:30 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=brijesh.singh@amd.com; Cc: brijesh.singh@amd.com, linux-kernel@vger.kernel.org, x86@kernel.org, kvm@vger.kernel.org, Thomas Gleixner , Ingo Molnar , "H . Peter Anvin" , Andy Lutomirski , Tom Lendacky , Arnd Bergmann , Tejun Heo , Christoph Lameter , linux-arch@vger.kernel.org Subject: Re: [Part1 PATCH v4 15/17] percpu: introduce DEFINE_PER_CPU_UNENCRYPTED To: Borislav Petkov References: <20170916123418.37807-1-brijesh.singh@amd.com> <20170916123418.37807-16-brijesh.singh@amd.com> <20170919103906.GM4733@nazgul.tnic> From: Brijesh Singh Message-ID: Date: Tue, 19 Sep 2017 08:50:20 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 MIME-Version: 1.0 In-Reply-To: <20170919103906.GM4733@nazgul.tnic> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Originating-IP: [165.204.77.1] X-ClientProxiedBy: MWHPR1701CA0012.namprd17.prod.outlook.com (2603:10b6:301:14::22) To DM2PR12MB0154.namprd12.prod.outlook.com (2a01:111:e400:50ce::17) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 9ac94e39-826e-4bdb-0667-08d4ff65624d X-MS-Office365-Filtering-HT: Tenant X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(300000502095)(300135100095)(22001)(2017030254152)(48565401081)(300000503095)(300135400095)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095);SRVR:DM2PR12MB0154; X-Microsoft-Exchange-Diagnostics: 1;DM2PR12MB0154;3:0q/9+LQ2qGi1/bAj43eZCb4N42CqV00pDxqPyHdA5ZbtGsHoz2OV5TOi2Tv0TZFMaLUvmpIv7bTTfecjtwvrGXpgcS3cf96gV/l+nF+b3Z3EEavTGBwvW5rB+p5g+3R0sVcnSu1cRmHQ868xm8ZpWIeYEjjZrdKWt7SL5tRtYNnMK4LTiZUkaHJgXh0Rdl9AhWti8W3Lgg8JU1GNpSiI8Aofo3+w9upiIZnOhZv1JV1NyJvGzLl20qcx84vGp7K8;25:N7h/4DjH4V8MHjR/jij4dlHTimeM59O9QUh9X6c1NgamyF2iDNbLXrJDyJWg5MGsyhPAKsVW+8h5Ss5P6Kz0vQMzWTaKA40Ap2YgXSequj24f0rdxPduExPToP749Q0lm8je9AxhAIj7YrK+WF0Q9wjhVOltj3BUfW2Um/Z+slAOVCkL5j04WIWhcqakQG+XhFiRixCnLZ/Cjo6K2UBzOpm1Y84CzmEjYb39Q1pwvV2kktmB6EuXNM1wvHSDA5+LskBJtLTqZBGW7tOSPBJ2y6rSq3GHI9Hwb6UBhTSPkemXcE7+DYa5Uhxns6i9gQ5WyI8UkD/0sTYQ4XxeJLmgqg==;31:PaqvCjPRKQPJ1XcM5VRoYPWs8byfUd1tujHJjchtYZw4fScgB/RSfpL5wVHZYHJRjB0n5nhtjv1JE63RZ3zq6O+EOac0g0tUA3/EAdNexhYU1EUsRV6wlrptHfYyVggT14EZ7NtPvUrssLwPkUrFPF9v2uLi/t9SfC9qQj1LAM0nVL0VRrKHpRbjQWbIp+fxlixfM9DJAuB+oBW+Fes2JxTj5tryixObysjcCWMRRMA= X-MS-TrafficTypeDiagnostic: DM2PR12MB0154: X-Microsoft-Exchange-Diagnostics: 1;DM2PR12MB0154;20:zgMJm6BptkaVk55SeWrztnniFGJBGT4be8vwjnpTbG/WT69iDztUn8W7YyafRhZ2DOUbElCTqUz9FfEf1t5HlHKgEtMmKfWAjnAXJYkATAbA0xrQPpO9o6b02CUp7v+G/HPoQFm9JT0tOnL+IFFPvD8hkUmWLkUQz9i/L8399OtAlff2SBM4f7sWe+DTxp14rDYzo4yWzY6vRJfH815Kodi1na/Q6RtWbm0da/r8Clm/gkk5o24CbSEDM9zTKLN/Xvoj2NBVG0haz5/hvTyuA385swpsYw2I7B8Vf3qiztKRlcaRvqkCLl0v9pJY/Ma9imUcyrJee3C1W80+Fb49mYze70ZXWravWouLCPEACJjra5p+Y5TZS8T8RwuiiJaBkCCMVMlaHEH8Apma2KYKTxlj7Z7ZS9qjMJrQI+IEci00SrwjEEYAFl6VizIgcW5KEbRcHUxjChJXU8sU1RwUmtKuC35uG4lbS+4TTZgj8blkp1RRaBiBB+gJtOy3FkQT;4:TfF4SRKrS1jJ0Gzxe7/kaS39ier8u190ZxRgFt8Gx+iZfNTUQV7DZSvnZzZf5GxSn071bI5xEiHdx6UvH6Kb146ZkRtzD4pE4kLIgmytoHIHOX9NxBBFWqDzETLFG1k5vgv8iRFKzeEckrKL548VF1wYzeGBv5A6TGCMR+H/n0XguNIX9kMV6b/fJsK+QYlOK1gxj0f4LUa4hMHqrHqjucI2MD5+hlnJsYI2DReIWI8iqrZ7KpC4uESgGn8ua9rI X-Exchange-Antispam-Report-Test: UriScan:; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(5005006)(8121501046)(10201501046)(100000703101)(100105400095)(3002001)(93006095)(93001095)(6055026)(6041248)(20161123564025)(20161123558100)(20161123560025)(20161123562025)(20161123555025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:DM2PR12MB0154;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:DM2PR12MB0154; X-Forefront-PRVS: 04359FAD81 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6049001)(6009001)(346002)(39860400002)(376002)(24454002)(199003)(189002)(377454003)(7416002)(6916009)(7736002)(2950100002)(54356999)(8676002)(8936002)(5660300001)(50986999)(77096006)(81156014)(305945005)(68736007)(229853002)(81166006)(76176999)(54906002)(83506001)(53546010)(6486002)(65806001)(53936002)(65956001)(50466002)(478600001)(189998001)(6116002)(6666003)(64126003)(3846002)(16526017)(16576012)(106356001)(58126008)(230700001)(101416001)(31686004)(316002)(33646002)(66066001)(36756003)(6246003)(47776003)(97736004)(23676002)(65826007)(86362001)(2906002)(31696002)(25786009)(4326008)(105586002);DIR:OUT;SFP:1101;SCL:1;SRVR:DM2PR12MB0154;H:[10.236.136.62];FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtETTJQUjEyTUIwMTU0OzIzOi9qRUM5cHA1UkVBNkhaYVVIaG81OGVDMGZP?= =?utf-8?B?U2xYcURVNHRtcEp2RTVpdFJaMFlZMkN1eEV3dnc1dXZuVkkxUWxoYU9Wb1Zk?= =?utf-8?B?VnAvQlVORlR5WUZWc2hUQnJ4NXhqcnJHdDArV0R1NjNOYm9icEtSME9xeGVp?= =?utf-8?B?ZnNLYTFud3BHZHlYZS9GNW5kMjFsUi80QXhkenlkNmNFbjZvYkNGQjRlZzNI?= =?utf-8?B?dnYza0dkUkdVaFMrV2JPN2lZNUF2SUgzaUtyRWl6SVdiSmlOdHRwNnhSSjVN?= =?utf-8?B?T2FrYXhyWlY5U1pCVVBMN2ZyUmFacE01TGgyMlZNZTRYM2VieFYvZDc4YTRN?= =?utf-8?B?ZHFaLzFlWUd1dURqVGRBd1FSYVJLTjk2bGxYWEo1Mm5manQxRU1tY3NTUnpo?= =?utf-8?B?ZjJkM2NwSms3Z2JqR0t5MEtPT0FYRTRXWEFKRjhxVkpDS1pwNWNIS0xwMm43?= =?utf-8?B?blNZWHdVT0tPZ1pmYWc2dEFpZ2YxK0J5YXp3VTFHVXc4UnVNd1c4enZxNW9q?= =?utf-8?B?Y21TUDdNU09acXNrRjVwOG9SZDNoRmFVd1pmQzAxQ21SSnhNdm5CTnQ3N21X?= =?utf-8?B?bC9IbE1jMGJ6RSs3ZWJvMFdjdnJuRVJqZTZqQnFEbFMxSzdXd21pZjk4aVJ6?= =?utf-8?B?Q1NIRm43L2FobkJxd044YnhsaUtDRXg1L3dkaWJsSHhpRTJOQmVRc0dOZFls?= =?utf-8?B?T05sRzhYb1d5UXkrbXlWN2RZYmdrZCtvR3VIVTdyU2NlSnRBR2I0VzQvdU03?= =?utf-8?B?eXVlbVcvbFlCVWhxdEZ0ZzdkeWJJQXVGWGloWjBveldZcnlIS1o0bG9DaUhI?= =?utf-8?B?Y1dyZ3hPaFBEQU9UUE9abzUxbGtIVHlZL1UvVTNQaXp6K1V4VmRRNHJZRCtF?= =?utf-8?B?eFh3WnlnNTZKUFIxTUw4eXRxQVpIMFVySDZDUzhlc2Y2TmVZc1owZkpnKy9L?= =?utf-8?B?VzVsRnZGN3p4MEJFZm9DWDZvek43NnFpcWNhT0YveC9HdzZzZTZWM1ZtYlVr?= =?utf-8?B?TlFPRTE1eGJKbSs0V3dsQVRTVE13ZEpvNGxQclE1WGdXZUFmcGRvTUhXQlhQ?= =?utf-8?B?cjdTL1ZmNm9Qd1dhTy9TQ1pjNU9TR29yeXlsZUozczdOdUdwVTMxOE03S3M5?= =?utf-8?B?Y2VxbXVUSlE1OVJNNlVSeGdFYlBWVlNZY0hMbmxVWmZPVUYvbFlDSnFhd2hn?= =?utf-8?B?UHJiMHk3WXNzOUMxcmZzUWxuYmMyMlFWdjdWc0JrQ1M1NHI5eVdkK3NtV0JV?= =?utf-8?B?WEt5cDNXcXlMRW5OQjFhbDZCUWlQWlgwb2MxejcremI1cnE2bG5RL2g2U1pZ?= =?utf-8?B?aCsxNFRDak1tSzNYMmJUY0licDFFK0NaRnpyMVhkbzAwN3FyV0FRelpwVjJE?= =?utf-8?B?dUZCUk16TWNyckIyaVJTNlJGbElqY0F5UDhIMnpSbzAzcUlCRXFBa3M0RGtY?= =?utf-8?B?NGxSRUF6c0FtYlQ3eCtBSk5LNWV1OGJXdWpNNHJrcEVDdTcvcUJzSHlyMHoz?= =?utf-8?B?VFMxU3BFRmNhWUNRSHhGcExyVkdrc2wwVG5XSlpHdXdobjFPVlk0VmpWblJO?= =?utf-8?B?OWRWQUp5SVMrRlpsNFVRU3hPY0c0VjZGRkdYYWYycDQ3ZUUzTVBCUG0wdk5a?= =?utf-8?B?NmZhSmVSTXJuL2JzYkRDdmpUdVdCdk1BQU9lZERkT1RaNjFsT1pLWlRwSmVn?= =?utf-8?B?NHQycnVIWGNCVFhJaFBTNVJaRzRIL3pnUERrNld0UWQ4ek53akJBTmJpb0dy?= =?utf-8?B?L3Fvb21jeTNCRHBpeTJOQU1XNDVDa2tJblExWlA0Z25MWjBoUHdoL25sM3E0?= =?utf-8?B?a1VKUDhZSDR5Zjg1WGM2V0pXS2xGL2hqMllGS2tZZm1UTVR3MUNVdi85ZHhl?= =?utf-8?Q?n1wpOeXmgbl3Ylbco98g6Ok9xKnc71r2?= X-Microsoft-Exchange-Diagnostics: 1;DM2PR12MB0154;6:4U2QXmptepqPpQNBhHEsRiasVVui7E4xUOqZgSNtedBOBN+/bLKXHmblMwmyZpNRgcTfovX2MD/tVbvW5hg5t9EfUxzW9xpJaoCNsN8riyKPEll/+4nMeMqUi3dN0TqxcIPEAo9715tF4BM+D37yEGe4A06dxOIYmY8xK/mGEwHk21/dpDpzIxzTCQr/QZE6jkiewQEx6Qy0mL37zGvJswT/0n19JEmwFWas57KbKiFbLoemjXg6NIhcnENOADgKlRPWYbcaOtruSRy/WCPTwWdA7qRAl4z2TBHuMgvVty1Dyh3QR6UhTRVMFAIPLqvqujEs+bXGQfnLxVIjAEt3Kg==;5:JzSBO4Yh1J2DQ/t5u+zw40nGVuFz8yij9r8atNybrnn1HW65zywyG7OYi4fI+G0qcvvwcTBDmb06yTv3uDSPkIGWne3tugWEi+jOkYV5FIRL9PJp8EiRIgM2GnYeiLuKAVv7bMUvFMUEqDgt+w7V7A==;24:24trz19ZuWVaiNOHsLIpmVlLQwT47d7E5sJjpjib7SEKR7rmjzuc8oKe+ZrRf1khFp0Dw9gwy5/ys5eedrwgdSSgKouApfnWuhOBVNv7QnM=;7:H4v0MOBGZddVJpnfw+T7SMlTA+BVK8C+YCY9OYEQL+m464pGIRdt8xE1Ezen1OxF1rx/YSx4DVYR+MIG27Zq/FSrPLbYSdN2HzWOYXx35SZNzfqpFDC64GN5XmVTMh+A7je3rzKLauLPlWxk5yjL5Ol6xYnej3jzmn0nw5RPLyTv30O63cwvv8MumM3BGRzMHuylGV1AyRXGS8p1ixq3I27Uh9FkD3B2/nTaaygA4GI= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;DM2PR12MB0154;20:7bEgmLLKzWvnOYQXVNW9n4J+jbZjBjinvcB64Efmi0BXiLL3+9W7oRR/P64gzpbn/UXtgg/nhcEoq8VR8oOzYrxkYFLIfqCg5Q53iRWwZPfhT7qNKy1l7wHPUoI0wW1CCzapevmIZRDHZhNMzHs5XgDS053zlyJ5NWAjm0PsC1A9TekAdIwO3x2tXxKuHZebPsExej1T3v/e3vA0ANmI08m7jZMr0C6dAFxe87EzouE4yAziOMgfrz/oLQnMi9Fa X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 19 Sep 2017 13:50:25.3015 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR12MB0154 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Boris, On 09/19/2017 05:39 AM, Borislav Petkov wrote: ... >> @@ -815,6 +825,7 @@ >> . = ALIGN(cacheline); \ >> *(.data..percpu) \ >> *(.data..percpu..shared_aligned) \ >> + PERCPU_UNENCRYPTED_SECTION \ >> VMLINUX_SYMBOL(__per_cpu_end) = .; > > So looking at this more: I'm wondering if we can simply reuse the > PER_CPU_SHARED_ALIGNED_SECTION definition which is for shared per-CPU > sections. Instead of introducing a special section which is going to be > used only by SEV, practically. > > Because "shared" also kinda implies that it is shared by multiple agents > and those agents can just as well be guest and hypervisor. And then that > patch is gone too. > > Hmmm...? > "..shared_aligned" section does not start and end with page-size alignment. Since the C-bit works on PAGE_SIZE alignment hence the "..unencrypted" section starts and ends with page-size alignment. The closest I can find is "..page_aligned" but again it does not end with page-size alignment. Additionally, since we clear the C-bit from unencrypted section hence we should avoid overloading the existing section -- we don't want to expose more than we wish.