[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 3/3] x86/monitor: Add new monitor event to catch all vmexits


  • To: Tamas K Lengyel <tamas.lengyel@xxxxxxxxx>
  • From: Roger Pau Monné <roger.pau@xxxxxxxxxx>
  • Date: Thu, 28 Apr 2022 15:55:41 +0200
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=831BCFKGRs77SzyJAQwsYxavlgU7q1opZXsFukVE0JY=; b=kmZ3U+7IqQDukWr1sxmmiq1x7qsXqSjS7j2TjTlrYi9OIZpkWH63De+/yCeDNLrkabqzVE72HQ10N6JvAc9Piaw4S4I1q33wKTQZTulWRSlUGURbYmlPiZxc2+erWMw9SNd1bnhFkYrYv0s4Ob3GFuYoOfjPqeWXYzxJOECobZ+4s4rUI6eRQkMLDZw4g70G5mBg+eWkKRAH1VqjrR7jZOtqT/fQFvfd6Lgl3R89IBJGMX//ATJYU8lKcuffVPXhc6u5J8KnejInH06JXng/f9IfP0VGpqC7/Sn3tZaPyUqJjHu4Pe+hbzu2NmEz3DM22WM9prep3qrcvtwtNWw+5A==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=e2h/cxzUS/6rY2fO03OR8yODD+z0Ctg7He74iyD6yIo8mUHjOhug4H30AIWCDq521PmFF22bMv0pqBRYUP/mbynR1+qms+pF9gR2iQL8gVdC48yyyG4CD4N7brJA1w3g64dJhSSVpTEbiwq4MQRtVefoGQ5/XOdDVWhs+0moVh9xxAHb0u7Nq655xv1EmdZwhi88lTT6ev14opaA6tyabtQDO915yY5v8fI5/lca5QQ9SZDK9l1TNV4ClrxSfEQMCvuaomNwGtloJ2/uAQwzSv4Hgr59ieiAtV7CIcYlpYa75aGaT8j1VFANKRTLRpe6gJNhLPp/cN8bJXq2xxethw==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com;
  • Cc: xen-devel@xxxxxxxxxxxxxxxxxxxx, Wei Liu <wl@xxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Juergen Gross <jgross@xxxxxxxx>, Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, George Dunlap <george.dunlap@xxxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Julien Grall <julien@xxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, Tamas K Lengyel <tamas@xxxxxxxxxxxxx>, Alexandru Isaila <aisaila@xxxxxxxxxxxxxxx>, Petre Pircalabu <ppircalabu@xxxxxxxxxxxxxxx>, Jun Nakajima <jun.nakajima@xxxxxxxxx>, Kevin Tian <kevin.tian@xxxxxxxxx>
  • Delivery-date: Thu, 28 Apr 2022 13:55:56 +0000
  • Ironport-data: A9a23:gpNeXqDkMof0DxVW/5fiw5YqxClBgxIJ4kV8jS/XYbTApGlz0mBUm zBMWmvVPv2LNGvze9gjPYzg9htX6pfTm9M3QQY4rX1jcSlH+JHPbTi7wuYcHM8wwunrFh8PA xA2M4GYRCwMZiaA4E/raNANlFEkvU2ybuOU5NXsZ2YgHGeIdA970Ug5w7Jj0tYx6TSEK1jlV e3a8pW31GCNg1aYAkpMg05UgEoy1BhakGpwUm0WPZinjneH/5UmJMt3yZWKB2n5WuFp8tuSH I4v+l0bElTxpH/BAvv9+lryn9ZjrrT6ZWBigVIOM0Sub4QrSoXfHc/XOdJFAXq7hQllkPhLz c9i6L6WTzwpFZ3x274bbhVTLj9HaPguFL/veRBTsOS15mifKz7G5aorC0s7e4oF5uxwHGdCs +QCLywAZQyCgOTwx6+nTu5rhYIoK8yD0IE34yk8i22GS6l+B8mbE80m5vcBtNs0rtpJEvvEI dIQdBJkbQjaYg0JMVASYH47tLjw3yWmK2cEwL6TjfYI7TfI3DBO6YPsa4vVdeSKGtcPk1nN8 woq+Ey8WHn2Lue31TOA+2nqguLJkjL2XKoTEqG18rhhh1j77nweDlgaWEW2pdG9i1WiQJRPJ koM4C0soKMuskuxQbHVQBmQsHOC+BkGVLJ4EeIg7xqW4rHJ+AvfDW8BJhZDYtE7sM49RRQxy 0SE2djuAFRHsqCRSH+b3qeZq3W1Iyd9BXQZeSYOQA8B4t/iiII+lBTCSpBkCqHdpsH8HDjr6 yyJqCU4iKQeiYgA0KDT1VnGmDutopHhRA8p6gjZU2Sp4xk/b4mgD6Sw8VnB5v9EJYyEZlOAo HQJlcWY4O0US5qKkUSlQvgLWreg5P+HMTjVqV9pA5QlsT+q/haLfo1O4Tc4OEZgNO4FfyPkZ AnYvgY52XNIFH6jbKsyaYTuDc0vlPDkDY68DqCSacdSaJ9scgPB5DtpeUObw2Hqlg4rjL07P pCYN82rCB72FJha8dZ/fM9FuZdD+8z07Tq7qUzTp/h/7YejWQ==
  • Ironport-hdrordr: A9a23:NUKg4aFalbjIIkW1pLqFYZHXdLJyesId70hD6qkvc3Fom52j/f xGws5x6faVslkssb8b6LW90Y27MAvhHPlOkPIs1NaZLXDbUQ6TQL2KgrGD/9SNIVycygcZ79 YbT0EcMqyOMbEZt7ec3ODQKb9Jrri6GeKT9IHjJh9WPH1XgspbnmNE42igYy9LrF4sP+tFKH PQ3LsOm9LmEk5nHfiTNz0gZazuttfLnJXpbVovAAMm0hCHiXeN5KThGxaV8x8CW3cXqI1Su1 Ttokjc3OGOovu7whjT2yv66IlXosLozp9mCNaXgsYYBz3wgkKDZZhnWZeFoDcpydvfo2oCoZ 3pmVMNLs5z43TeciWcpgbs4RDp1HIU53rr2Taj8AzeiP28YAh/J9tKhIpffBecwVEnpstA3K VC2H/cn4ZLDDvb9R6NqeTgZlVPrA6ZsHAimekcgzh0So0FcoJcqoQZ4Qd8DIoAJiTn84oqed MeQ/003MwmMW9yUkqp/VWGmLeXLzYO91a9MwQ/U/WuonlrdCsT9Tpc+CQd9k1wgK7VBaM0o9 gsCZ4Y5Y2mfvVmE56VO91xMfdfKla9Ny4kY1jiaGgOKsk8SgDwgq+yxokJz8eXX7FN5KcOuf 36ISZlXCgJCg/TNfE=
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Wed, Apr 27, 2022 at 11:34:20AM -0400, Tamas K Lengyel wrote:
> Add monitor event that hooks the vmexit handler allowing for both sync and
> async monitoring of events. With async monitoring an event is placed on the
> monitor ring for each exit and the rest of the vmexit handler resumes 
> normally.
> If there are additional monitor events configured those will also place their
> respective events on the monitor ring.
> 
> With the sync version an event is placed on the monitor ring but the handler
> does not get resumed, thus the sync version is only useful when the VM is not
> expected to resume normally after the vmexit. Our use-case is primarily with
> the sync version with VM forks where the fork gets reset after sync vmexit
> event, thus the rest of the vmexit handler can be safely skipped. This is
> very useful when we want to avoid Xen crashing the VM under any circumstance,
> for example during fuzzing. Collecting all vmexit information regardless of
> the root cause makes it easier to reason about the state of the VM on the
> monitor side, hence we opt to receive all events, even for external interrupt
> and NMI exits and let the monitor agent decide how to proceed.
> 
> Signed-off-by: Tamas K Lengyel <tamas.lengyel@xxxxxxxxx>

Reviewed-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>

Thanks, Roger.



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.