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

Re: [PATCH 1/5] x86/pv: Fix the determiniation of whether to inject #DB


  • To: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
  • From: Jan Beulich <jbeulich@xxxxxxxx>
  • Date: Thu, 14 Sep 2023 16:40:38 +0200
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=suse.com; dmarc=pass action=none header.from=suse.com; dkim=pass header.d=suse.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=KHv3yHWZZrTBuVfh8r2NRgME6gfRGnDR8FYkJl5K53A=; b=XUTZ85T7V65EQDvqUT0PWzg+NLYt2Bsr/U2/GgRzLBsBYxzd0bSAQ/vdBAU5YoNb1gO6E/xbMDCesabnE9obzr3ACNj0aA3ozESzFadAunqTb6rzV0G2l+KQKeYD9FTLXAq2RnpN+b/cKMw06gfoY+Yk1VliwEx4UDR8+hqpgnKXQONzG07b6RC/zLj4LLqvN5HbWPbNuhjrIEdPRXfHoeb9rHkg7e4YTUk3LXwse7Lxh13DlAE5LhKXzTmCmAbL8i4G79D4BCdcdOoiAX+FCG9uC4T6HSIK3whpiH4tiNJvjmck4P1ithspnvHVLqkyxpDWDj80TLupmxL48DhO7Q==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cGCz81+CviWBEnWnSiP5b9I9MU0Gtjh1ha8nl83lCGbjoiWUSniMHsk1WE21AkNA/hikhQaS5rx0r+ON30C2c1CEWoOcIpNRGRrSykMp3UNGA81/lwkQ3vwAYIepate60a2FAExssGsFmmSYVp/5t8T5o4fP077T0EYLCGncBOFXpDrYnBNe7enED1mA4lVSC3QTWf968mXnJdsJPKBIY1oWXZf2LahsQr3EzfUJSSXeU6494om1FlWu1ufXwXdF4aXdVE/KZe6PIm2gESqCmLGc28YrmLoRKTlXrHfagkFmEJCX1K6TfvR22+QKHVvSfgn9C6QxpqxD23TgspxIFg==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=suse.com;
  • Cc: Roger Pau Monné <roger.pau@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, Jinoh Kang <jinoh.kang.kr@xxxxxxxxx>, Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Thu, 14 Sep 2023 14:40:51 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 13.09.2023 01:21, Andrew Cooper wrote:
> We long ago fixed the emulator to not inject exceptions behind our back.
> Therefore, assert that that a PV event (including interrupts, because that
> would be buggy too) isn't pending, rather than skipping the #DB injection if
> one is.
> 
> On the other hand, the io_emul() stubs which use X86EMUL_DONE rather than
> X86EMUL_OKAY may have pending breakpoints to inject after the IO access is
> complete, not to mention a pending singlestep.

If you look at the uses of X86EMUL_DONE you'll see that this error code is
not intended to ever come back from the emulator. It's solely used to
communicate between hooks and the core emulator. Therefore I think this
part of the description and the added case label are wrong here. With them
dropped again ...

> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>

Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx>

Jan




 


Rackspace

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