Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752406AbeAJWUo (ORCPT + 1 other); Wed, 10 Jan 2018 17:20:44 -0500 Received: from mail-wm0-f68.google.com ([74.125.82.68]:45938 "EHLO mail-wm0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751097AbeAJWUm (ORCPT ); Wed, 10 Jan 2018 17:20:42 -0500 X-Google-Smtp-Source: ACJfBotbviDi82K/9/brUSaq4JYBk8Hhve78f2OnHQE6wMzRngo577RTqHzG/S15d6A8tu6L5R8+nw== Subject: Re: [PATCH v3 0/5] x86: SME: BSP/SME microcode update fix To: Tom Lendacky , x86@kernel.org Cc: Brijesh Singh , linux-kernel@vger.kernel.org, Ingo Molnar , Borislav Petkov , "H. Peter Anvin" , Thomas Gleixner References: <20180110192544.6026.17285.stgit@tlendack-t1.amdoffice.net> <39709df3-fd62-28d6-9e78-94681b393ac9@amd.com> From: Gabriel C Message-ID: <6b3740ef-78b9-8936-3244-e016c04768fa@gmail.com> Date: Wed, 10 Jan 2018 23:20:39 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 MIME-Version: 1.0 In-Reply-To: <39709df3-fd62-28d6-9e78-94681b393ac9@amd.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: On 10.01.2018 22:26, Tom Lendacky wrote: > On 1/10/2018 3:14 PM, Gabriel C wrote: >> On 10.01.2018 20:25, Tom Lendacky wrote: >> >> Hi Tom , >> >>> This patch series addresses an issue when SME is active and the BSP >>> is attempting to check for and load microcode during load_ucode_bsp(). >>> Since the initrd has not been decrypted (yet) and the virtual address >>> of the initrd treats the memory as encrypted, the CPIO archive parsing >>> fails to locate the microcode. >>> >>> This series moves the encryption of the initrd into the early boot code >>> and encrypts it at the same time that the kernel is encrypted.  Since >>> the initrd is now encrypted, the CPIO archive parsing succeeds in >>> properly locating the microcode. >>> >>> The following patches are included in this fix: >>> - Cleanup register saving in arch/x86/mm/mem_encrypt_boot.S >>> - Reduce parameters and complexity for creating the SME PGD mappings >>> - Centralize the use of the PMD flags used in sme_encrypt_kernel() in >>>    preparation for using PTE flags also. >>> - Prepare sme_encrypt_kernel() to handle PAGE aligned encryption, not >>>    just 2MB large page aligned encryption. >>> - Encrypt the initrd in sme_encrypt_kernel() when the kernel is being >>>    encrypted. >>> >>> This patch series is based on tip/master. >> >> Is something in tip/master the patch serie need ? > > That's just how I have to submit the patches. You could try applying them > onto whatever tree you like, I don't imagine any conflicts would be too > difficult to resolve if you encounter any. > I've tested your patches on current linus/master and all is working fine for me. With mem_encrypt=on microcode gets updated on all CPUs now. You can add my Tested-by: if you wish. Tested-by: Gabriel Craciunescu Regards, Gabriel C