Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753204AbcC2Lrb (ORCPT ); Tue, 29 Mar 2016 07:47:31 -0400 Received: from mail-bn1bon0071.outbound.protection.outlook.com ([157.56.111.71]:31648 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752365AbcC2Lr1 (ORCPT ); Tue, 29 Mar 2016 07:47:27 -0400 Authentication-Results: amd.com; dkim=none (message not signed) header.d=none;amd.com; dmarc=none action=none header.from=amd.com; Subject: Re: [PART1 RFC v3 02/12] KVM: x86: Introducing kvm_x86_ops VM init/uninit hooks To: Paolo Bonzini , , , , , References: <1458281388-14452-1-git-send-email-Suravee.Suthikulpanit@amd.com> <1458281388-14452-3-git-send-email-Suravee.Suthikulpanit@amd.com> <56EBD438.5000702@redhat.com> <56FA1240.2000600@amd.com> <56FA5737.2090406@redhat.com> CC: , , , From: Suravee Suthikulpanit Message-ID: <56FA6B36.4030607@amd.com> Date: Tue, 29 Mar 2016 18:47:02 +0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 MIME-Version: 1.0 In-Reply-To: <56FA5737.2090406@redhat.com> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [210.19.38.69] X-ClientProxiedBy: SIXPR04CA0054.apcprd04.prod.outlook.com (10.162.171.44) To SN1PR12MB0447.namprd12.prod.outlook.com (10.162.105.140) X-MS-Office365-Filtering-Correlation-Id: 7d068a0b-eb3d-42ad-cd9d-08d357c7e4c8 X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0447;2:nKI3q0zroC9Ki6NFtzzf47iKg4nyb36/p7pHLnxtvRArRRfFtqTv3io8rBN6cGMCw0k/VYN1lBnBgRhEMBFghEXqn4iZbcq4dZJtwzCaxm9bYw1CHRwWeQ6P/an4RBwXsUZrIM7i64kC4RbHle4YM2c9WXQ0/bW1CqO761adN5Heh+IQBtXaQt8x6f8M0x8M;3:Ws5mV7+bW0AVDYtUiiOZRDqqChw7xMOoDG971VRYPW6/OCnEnrOd1SiM+YenPeesB0+tQXX2hfClODagCKumOAUYAdm/cnQ0NE4+2Z5mijvVAQrS4inerRYNu7V1JYfu;25:nEjD9OgbAzyZSVP/SoEAAv6zYXPaDkpsPyZvyRtmLZf4E2D49HKoFHll8qylmBDGWj6gJ8A1sVznhlQV19ILLBRfssn6ZWPZzWyaAJcgUByAztEIwlFY0Z/S4Fdmobl9mzjlS5nEKa2SM/7GxoyPxW47QT5grvIe0UZCWipC0+15mDdkXpX6v6z5yzniCLjWgk6bxEZrk3WGvvqVGTO8cNL9n07A/JPjF39vZmhUegqr9wO2P6mfH/0SSjb/yV9YHXd9cjmwA7kkHMbQUVsKNF4Bt1ui/RnBnB4rFz12QMd+pcuDGl2NYOyOllf8IfMA2cXRGWJRlL+eCHVGcFK8Hgi1JShUj6EDf1fFDMMs3Aaleevy71W0VHhy8D1OfWwb/PfSuBo1VeqIgCEBWhxA5hKxU1zxul2axH+b4FzpWyZaVw7qjtEa19DrxvZ3pTRwjB1A/pzoouzhmyk4r9bgB8IH5/GxjGirFsqccw3b0mqMqzfHQPlF0+ipNysvV1md46gPNn1fo2LoY6PAE9JOOdAJKDwjUTZOybeD+6YGwVpxo1e1VruE2ekgWxu7QVhg X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:SN1PR12MB0447; X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0447;20:EmxCuYn+e2WrKsoW0qObS7AjxrJgzGh6SQALOun7mtkHKxxFaPGTlchbSwL5Y7CpvoRq/baBGaY3hiGkCiOIU4bcCIV5jyJxtF4i7pHD7qH2umOU6DW29EPjqv76hS0MSLtYNEjd77i3jFlgvlTHVy62fGTQS5VMBGEnPiRcEWusSGDcc6gjLVYS4EMvvWP7MVdt/epFqREJikSfU6E9/43/9bNah8VnNnLatSds7uc4xitt3Um+MtdTiTjOEU8PglWl+a83EJK74OXzhB2luMCI07pFduRLdkIcMN1TICk9yotIRIdK5MAB4EDURFOn8ZC4P3qWUNYsxXqCZFj/4OJK21pBRlotzfwsWeLl31Vl3kjVdqwRk/jArDj2oLXC7NPEheB+iNPnhrqdLARbiHa6B+KLw+h/nVm+pqDBp7L/M1F9Wr2se0eyrEj2LzK6kqEeX7eOSm6OmuVC8eJYoKyID5qLRAFZTOOzQabLdHIYciYzXGelLU3GUbUJcyqP;4:Enj0WMrhGE9hT1h8SYCIHtpVcul0oAc1aB5kaPT50VBYaGTsQ+rtqyIemRfmz0JsW4jizPrmMbEhwAsnOImYg8XLUOfpHHDotQTvFdv58IyIJNtUt9HkkyZkv4OjlCUOCWlNPAYx39vlmTrpN1sb5sNB/t1wgJZy63zG/Q5bhp8pKXXGNOyYMhk4yM8jxTxAZwiBzEoB561pcH/XZ7DwiikXvIAQJ893YnwhoI9Ir8IRHyq7MGK2GjBV2Bm6JQOJK3j6kNPbD4fNaSgfRfQOP/LFgAZLFc3eFvYnZBGSp6B/HrpLAOWB9AMX60R+E1gU56goMV3RLgJHMUaHCr1EifbN2IVG1s209w4K1eIFYt9WlzOQoYnOKYvDmaEIKx2h X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(8121501046)(3002001)(10201501046);SRVR:SN1PR12MB0447;BCL:0;PCL:0;RULEID:;SRVR:SN1PR12MB0447; X-Forefront-PRVS: 0896BFCE6C X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6009001)(6049001)(164054003)(377454003)(24454002)(83506001)(586003)(33656002)(2201001)(36756003)(77096005)(2950100001)(6116002)(1096002)(4001350100001)(5008740100001)(54356999)(87266999)(3846002)(76176999)(50986999)(93886004)(65816999)(5004730100002)(81166005)(65806001)(230700001)(66066001)(23746002)(64126003)(50466002)(47776003)(5001770100001)(4326007)(42186005)(65956001)(86362001)(2906002)(189998001)(92566002);DIR:OUT;SFP:1101;SCL:1;SRVR:SN1PR12MB0447;H:[10.224.24.94];FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;SN1PR12MB0447;23:P1tAQSeWjLSmauAJDIWNubcH1UJHooXI9s9Mg?= =?Windows-1252?Q?lP7rfloAeVpJz2t+Jw5Nhk9/3sc+3uJaP3BhqYjtaA1p4OMRzIz2wab4?= =?Windows-1252?Q?FADPMXWxwaqvsMGpnlm9xoOHNH/clsV7gJVpm0h6YcnJa8n/UvE618S3?= =?Windows-1252?Q?vTTWroe/Sv6D2aFPXD5gk7w93UEOlGFN/w7a6R/8ttc/pbgPSTPzFmkl?= =?Windows-1252?Q?Ttfms2jlZt7i27x7/ijeiVlHtRdCAF+fLzzO6XthoAo53UXDPAjnHSum?= =?Windows-1252?Q?EajtL2eE9Nr2OElwsklP3EisYYKyZ6KNTV691ZVVJRNLyv1oGlS1R5Fk?= =?Windows-1252?Q?vTvUlg+nfWTTcROUSM19b7s4OnngH9Uh6CYoa2nzS08/lsFcC+nR4Lkz?= =?Windows-1252?Q?6cHgg7O3j0jWexNML7xhvGFrlle7F8g6/lZpm2N+bDQRMPZQo4HI74/m?= =?Windows-1252?Q?l6ALqVNjCUn48q26D+FqpPsaDZrvDXGGmtDpN3nZ7YMpPIVk32FiCZff?= =?Windows-1252?Q?Q2LcmaVPpFuac3dJgPK4knCEi+kMwPv9XLZew2ihJ8bLcRcqU32Uk0bC?= =?Windows-1252?Q?hxgwHXhD1fQ4yz9obfXiR1l1TpA2Te1EuBfqEqtKXq6CGqnDT3ndHBO4?= =?Windows-1252?Q?yWBodTpJ2PYNlnNHJ1TLxmu2epTOIk8AiafryXgr8NWR43KicD1GruYc?= =?Windows-1252?Q?eNNecgsoam/kUi0hQIOGy2I782C+mIr/NHgR4bOQoCL8gWSv5nxM1SOI?= =?Windows-1252?Q?ZjtacC15dxbpMonsMO/SZZyMKH4eL8wy9XiC9izbm3qDV1UpfbKeEcP2?= =?Windows-1252?Q?g4vDLRPOurnIq83EEN8fwjuA+XfxO0E16u1efMFqzRKU9WrFu8xMU4KD?= =?Windows-1252?Q?p5VXOMtK57QvoxNfsxjUcsoANdjItyhS9oNmqdjAWtuDAaSucPjrdHqx?= =?Windows-1252?Q?Gd2FjY1Ke6vS/D4tdv5DFvdnxFfIdU6FRUh2FOV6/CaQS/zrx9keDyWw?= =?Windows-1252?Q?k6jQl9gmyG/+I1BfqvN/jFo3bMxk7pwy7NUvmsWAjIWrZF19OgFc1Ph2?= =?Windows-1252?Q?hDM7q+iMCqjwRXW6nlc42QQ2wgAUpjVO0N1VvyT0i5ZARmeGjxp+0Zov?= =?Windows-1252?Q?vsxSTpwHGUdFqQEQH0/R+UNbubLZIeDw4aGHdjaHVZ5?= X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0447;5:wdCm/BmPTOVp22rYa5+7Yx3Xt7IcgezWft/XhoAtsZX202rw/4/G2h5ovI/r77njJfPPxCGGZQp5P3cyjprT1L8EYHcdwYJm/UAZQzyPVpHI63IUXwpcZLVBz8p0e6l+FjC0UuJcyEok2ujo/n0ihw==;24:rpbJGfur9pLo4nqLcFix5fq+GQeQUmhZQTVEkY9JOBJVRi2qsZEQTB4tkXE0dPyDL8MSebQHT5+7rV3dudFTMVbLdqiA8v6BCrgJIAyFqV8=;20:lzPP/7O7tgfWo01AFyKOMDokgQvIECTO3p38GviKw07/HBNfOWL7myu4WVXgi2beDNgoSNVTNQGVNc+lewDhRcUVG8HF0JYKhz69DM2HiD6PqUzjfclmigFOVCcyF9f71QDfAaHybs0nm137sAViYawB7SxqxMvHLHHx8Lra0awBm8R2c6A2L7nrWkNIb8Yc+c2Qww0ZxgAK+JrUpQO3twellmhJTcyLkZ4+AScLcqivshvJer+mTz9/1tZusK93 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Mar 2016 11:47:20.7531 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR12MB0447 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1032 Lines: 35 Hi, On 03/29/2016 05:21 PM, Paolo Bonzini wrote: > > > On 29/03/2016 07:27, Suravee Suthikulpanit wrote: >>> >>>>> Adding function pointers in struct kvm_x86_ops for processor-specific >>>>> layer to provide hooks for when KVM initialize and un-initialize VM. >>> This is not the only thing your patch is doing, and the "other" change >>> definitely needs a lot more explanation about why you did it and how you >>> audited the code to ensure that it is safe. >>> >>> Paolo >>> >> >> Sorry, for not mentioning this earlier. I am moving the >> kvm_arch_init_vm() call mainly to go after mutex_init(&kvm->slots_lock) >> since I am calling the x86_set_memory_region() (which uses slots_lock) >> in the vm_init() hooks (for AVIC initialization). >> >> Lemme re-check if this would be safe for other code. > > No problem. In the meanwhile a patch got in ("KVM: fix spin_lock_init > order on x86") that should help you. > > Thanks, > > Paolo > Right.... that's just what I need :) I'll re-base to the latest tip then. Thanks, Suravee