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

Re: [PATCH v3 03/11] x86/vlapic: introduce an EOI callback mechanism


  • To: Jan Beulich <jbeulich@xxxxxxxx>
  • From: Roger Pau Monné <roger.pau@xxxxxxxxxx>
  • Date: Wed, 7 Apr 2021 18:27:57 +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-SenderADCheck; bh=2SgnrrbGxNg8GvtC9yLBXB21bEd7IUu1/IWiIiF3+Pc=; b=oVmRukdnlbNGDSa3Oq4letmzH9PL32PiOHDMXMPmMgUMSzUoYH+dZEe/c4vAqGmJ/RKAow6M5Jvd6lEQww9CoCb/qx3u+NkOCfEB2i9OH0dYEdbbkqALA16BM4A2fI5FXS2lSU9LIIIxFknTZLGQooaISgKTnBZT+XD0w1cKx9+MbN61geJuUFNWOIeU76jVl/XcxxJAP1dtsAslB9/N4QGlAQ55jdPED1wJFZ2gh/4d/KE79TNQcZ4HY1ZLNq37hG9soSriGPeQexWIUKcGqEJvXCYKWCf13Rji9PUglOgl6HkXbX/U/C3TneWkjqoedfy/SAmspJGjqzknS6pGwA==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Q5MDO/qSsvmyUix2jjoML3aUy8s1dhqh21k4CkLtKErR1iknKZz2iGh9Tt9aztdT7H4iCaRNH4PVjy3+nA+O9VAls/nbZGaiSW0NMtE8jYw4JSviTJAesFXFgiHCJKWAsazIuM7uulJoVbHkug4nUQoYuX/weIuRwCgWA7oX3x5/tGyUpMVDcuVBopuXZtKw6WqwuvNFtIriUvAzf9IMcWn1eVyR+53j8ZPnNmULSA9S3bKTcvBjg11rM72jWrSCScDQjswxy16YOzl8IMy5kjIttDJn2yGx/BiKDFsNrO1EbWN0d5hq1/QO6EF7t51u6Ow4OtYLKkBzppJN83rLJw==
  • Authentication-results: esa2.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
  • Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Wei Liu <wl@xxxxxxx>, <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Wed, 07 Apr 2021 16:28:24 +0000
  • Ironport-hdrordr: A9a23:GQdgT6MeJ/Z4msBcTj6jsMiAIKoaSvp033AA0UdtRRtJNvGJjs zGppgm/DLXqBJUYnEvnticJLKNKEm2ybdZ6ZQcVI3MYCDIo22tRbsN0aLHzyf7EyPzss5xvJ 0QEJRWLN31ARxEgd3h4A++euxA/PC9/KqlhfjTwh5WJGkBBp1I1RtzCQqQDyRNNWt7LKc+fa D92uN34xamZHQLfoCaKxA+Loz+juyOrryjTT4qbiRXjTWzsQ==
  • Ironport-sdr: 5n03gKApZPmIYFN8e5L2rUMhUpYAK7NazbEDuhPYaKKXRYuRbGMeDfcbZE+dwRCZP+Xag2ElnN FuFwk5rvSoCfGzie7BfC6EGtOhrDxfGnG6OTQJgMO0Aas19Px1kh3yRJfkM5BOsAqkiijyHO6b yTQVLSjnl3rRCRDBcJGtxL6xNTMTdxhJBQuVVyv/aFxEvcjcqf4vNWbqsr7ZQpNcsLy2Ynzmqx DtVkcsj1KEBqH4vjv29jKuGeXCAwfBxalYIeHaUpre0dZ6N7qgQi4Y2yf3gtl2Ync2oDdeYqQ2 YpY=
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Wed, Apr 07, 2021 at 04:55:43PM +0200, Jan Beulich wrote:
> On 31.03.2021 12:32, Roger Pau Monne wrote:
> > Add a new vlapic_set_irq_callback helper in order to inject a vector
> > and set a callback to be executed when the guest performs the end of
> > interrupt acknowledgment.
> > 
> > Such functionality will be used to migrate the current ad hoc handling
> > done in vlapic_handle_EOI for the vectors that require some logic to
> > be executed when the end of interrupt is performed.
> > 
> > The setter of the callback will be in charge for setting the callback
> > again on resume. That is the reason why vlapic_set_callback is not a
> > static function.
> 
> I'm struggling with your use of "resume" here: Resuming from S3
> doesn't require re-doing anything that's kept in memory, does it?
> So what meaning does the word have here?

Right, I can see the confusion. Resume here means a guest being
migrated or restored, not Xen itself being resumed. Callbacks are not
part of the exported guest state, and hence any emulated device that
requires a callback will have to register it as part of loading the
saved state.

> Apart from this, and with the xzalloc_array() change requested
> by Andrew, this looks good to me.

Thanks, Roger.



 


Rackspace

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