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

Re: [PATCH 3/4] vpci: shrink critical section in vpci_{read/write}


  • To: Oleksandr Andrushchenko <andr2000@xxxxxxxxx>, <jbeulich@xxxxxxxx>
  • From: Roger Pau Monné <roger.pau@xxxxxxxxxx>
  • Date: Wed, 2 Feb 2022 09:44:57 +0100
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; 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=IFcgdBGfb4DtEg6ovNwaYcvVpsSukS5gpllFSMMnfyk=; b=D6B1KVED2cm4OyOfd9plLG80WjLefnfCUwoKwSNn7WnRBGGjVb2ToBdZ75SjjyLPJjruCtnJ5yGwgI0xhg80r1DJwkmc5gUpEnsvBtmalQrQWXEB2FZDgEfssQi7u8SwD5NKDJj2MBKunY4w8yVO6nVZEF/CYDOxWM2uNclxeAQFIUd7xdfCAKu1XgXWKD0IdQcw2V+tlSjpg7ZonJsYbGMczu6v4KZArpRYsmYeJCAh8gWiecUTRr14RclRGnR5hakA7lonCbW3+z2c49Uxjd8TjO2cGzpedLrA1Ik+4AvmHmkwfoLh3qRHgyrbs5tSsUl4zE4WJvIOB+vNngneug==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jr5dkQRWswLmcCAgy00CaKQzCxjHXxcHk1vr/JmZkFqUy9+UeDR5dFHZc0oAHa/mvG1ueFwgQdcRAdId35PK+tKt6p3FlKaF18EN16eS2qCe6+XQxsMfhh/HDnmpZUjsWhS1RMyHmlQxnNf7Z/J/fsFzISF5cqPdWPM3jnouLJ1WSu/xeijOa9RA4CIqEIi70P1X0aEsPdwwlgZ1mT7BrKdKt377P+UjaJ6czEwMLl8SPBHIhKcMi+oQPhZI5kDbKCHdRwEmNYOMPJeo+m6ToCxpgBS7ghVbrn5YzRR8YkZmx140pnDlKWpTtMIHh8uMQD3+sHYhYy1/9B41mOHB5w==
  • Authentication-results: esa6.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
  • Cc: <xen-devel@xxxxxxxxxxxxxxxxxxxx>, <julien@xxxxxxx>, <sstabellini@xxxxxxxxxx>, <oleksandr_tyshchenko@xxxxxxxx>, <volodymyr_babchuk@xxxxxxxx>, <george.dunlap@xxxxxxxxxx>, <paul@xxxxxxx>, <bertrand.marquis@xxxxxxx>, <rahul.singh@xxxxxxx>, Oleksandr Andrushchenko <oleksandr_andrushchenko@xxxxxxxx>
  • Delivery-date: Wed, 02 Feb 2022 08:45:19 +0000
  • Ironport-data: A9a23:0eq5Ea7FuB7v6WwjtYut4QxRtBzBchMFZxGqfqrLsTDasY5as4F+v mcfCDiFbvuMNDT2eI8nPY3nph4OvZOGnYJgTlRs+S4wHi5G8cbLO4+Ufxz6V8+wwmwvb67FA +E2MISowBUcFyeEzvuV3zyIQUBUjclkfJKlYAL/En03FV8MpBsJ00o5wbZj2tQw2LBVPivW0 T/Mi5yHULOa82Yc3lI8s8pvfzs24ZweEBtB1rAPTagjUG32zhH5P7pGTU2FFFPqQ5E8IwKPb 72rIIdVXI/u10xF5tuNyt4Xe6CRK1LYFVDmZnF+A8BOjvXez8CbP2lS2Pc0MC9qZzu1c99Zk NhgpJnhV1kQGJaQ38UBAhRkPQJbFPgTkFPHCSDXXc27ykTHdz3nwul0DVFwNoodkgp1KTgQr 7pCcmlLN03dwbLtqF64YrAEasALNs7kMZlZonh95TrYEewnUdbIRKCiCdpwgmxq35wSQay2i 8wxQGdtdgjeQwd2G1ocVblgpvXzuiLNbGgNwL6SjfVuuDWCpOBr65D1OcfRUsyHQ4NShEnwj nzB+2P1ExQLLuuVwDCO8m+vruLXlCa9U4UXfJWy++R2mlSVyioWAQcPSFqgifCjjwi1XNc3A 0sQ9yk1pK4+7nuiSNXnQga4q36JuB0bc9dIGuh84waIooLO6gaEAi4fTzhOaPQvrspwTjsvv neOm97qHjVpvKeiVWOG9ryUoDWxPgAYNWYHIyQDSGMt4dPuvYUyhRLnVct4Hei+ididMTj2z yrQ9HBmr7oWhM8Pka68+Djvkz+q45TEUAMxzgHWRX6+qBN0Ypa/YI6l4kSd6uxPRK6CVUWIt nUAn8mY7cgNAIuLmSjLR/8CdJmr+vKEPTv0kVNpWZ47+FyQF2WLJN4KpmskfQEwb5hCKWSBj FLvVR15vJJ+LX77c/FORbntTOU2nKXcO/fAf6WBBjZRWaRZeAiC9SBoQEef2WHxjUQh+Z0C1 YenndWEVihDV/k+pNaib6JEiOJwmHhirY/Gbc2jl3yaPayiiGl5oFvvGH+HdagH4ayNu205G P4PZpLRm32zvAATCxQ7ELL/z3hWfBDX5ris8qS7k9JvxSI9QAkc5wf5m+9JRmCct/09eh301 n+8QFRE71H0mGfKLw6HAlg6Nu+0Asom/CNmZHJ8VbpN55TESd33hJrzirNtJeV3nACd5aIco wY5lzWoXa0UF2WvF8U1Zpjhto1yHClHdirVVxdJlAMXJsY6LySQo4eMVlK2qEEmU3Tr3eNj/ ezI/l6LEPIrGlU5ZO6LOa3H8r9ElSVH8A6EdxGWcoA7lYSF2NUCFhEdeddscpxVdEWemmDHv +tUaD9BzdTwT0YO2IChrYiPrpuzEvs4GUxfHmLB6q2xOzWc9W2mqbKsms7RFdwEfG+rqqike 8tPyPTwbK8OkFpQ6tIuGLd316MuodDoouYCnAhjGXzKaXWtC69hfSbajZUe6PUVy+8LoxayV 2KO5sJeZeeDNvT6HQNDPwEidOmCi60Zw2GA8fQvLUzmzyZr577bA15KNhyBhXUFfrt4OY8o2 8k7v8sS51DtgxYmKI/e3CtV636NPjoLVKB+7sMWB4riiwwKzFBeYMODVn+qsc/XM9gVaxskO D6ZgqbGlo9w/EuafiphD2XJ0MpcmY8K5EJAwmgdKgnbgdHCnPI2gkFcqGxlUgRPwxxb+OtvI Ww3ZVZtLKCD8jo01shOW2egR1NICBGDoxGjzlIIkCvSTlWyV3yLJ2o4YL7f8Ecc+mNaXz5a4 LDHlzq1DWe0JJn8jnkoREpoi/3/VtggpATNlfeuE9mBA5RnMyHuhbWjZDZQphbqaS/raJYre QW+ED5MVJDG
  • Ironport-hdrordr: A9a23:X2yfma2gS0XPFZC+Kz6L0AqjBShyeYIsimQD101hICG9Lfb3qy n+ppsmPEHP5Ar5OEtBpTiBUJPwJ0800aQFnLX5Wo3SIDUO2VHYVr2KiLGC/9SOIVyaygcw79 YFT0E6MqyOMbEYt7eL3ODbKadZ/DDvysnB7o2yvhQdLz2CKZsQlDuRYjzrY3GeLzM2fKbReq Dsgfau8FGbCAoqh4mAdzM4dtmGg+eOuIPtYBYACRJiwA6SjQmw4Lq/NxSDxB8RXx5G3L9nqA H+4kDEz5Tml8v+5g7X1mfV4ZgTsNz9yuFbDMjJrsQOMD3jhiuheYwkcbyfuzIepv2p9T8R4Z TxiiZlG/42x2Laf2mzrxeo8w780Aw243un8lOciWuLm72xeBsKT+56wa5JeBrQ7EQt+Ptm1r hQ4m6fv51LSTvdgSXU/bHzJlBXv3vxhUBnvf8YjnRZX4dbQqRWt5Yj8ERcF4pFND7m6bogDP JlAKjnlbhrmGuhHjPkV1RUsZ6RtixZJGbCfqFCgL3b79FupgE486NCr/Zv2kvp9/oGOu95Dq r/Q+NVfYp1P70rhJRGdZA8qPuMex/wqC33QRevyHTcZek60iH22tXKCItc3pDfRHVP9up1pK j8
  • Ironport-sdr: LdmeYZvTmsolQRO6kAXOFtIinXGVr4kt+acDfSkSF6UvZNQaJRlpl02T16DQcMWqX1bFZc2f1P S2UmfniOytnDEBKYimTUk6dP+E2Muq7vz475p4wxJ3zKD2nPWLfYvM3HoJru5pNZfMXO3OBa37 cGbbgiwKpNbo7MdEDmUr/JIqzeCsrUS0ZHdyj9d1G+jxH3tiRlWeZq221FKxvLFjBWRzTkyuqv AURMHmJELLlEYCXgxku/sPjoYf4CF0tdoVb1wpTV6YYoQcdm1Sm+xlqH7TU0NfcXWSy3Kf4pa4 ashCZsh1lea0TGFwqFg96DJI
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Tue, Feb 01, 2022 at 06:25:07PM +0200, Oleksandr Andrushchenko wrote:
> From: Oleksandr Andrushchenko <oleksandr_andrushchenko@xxxxxxxx>
> 
> Shrink critical section in vpci_{read/write} as racing calls to
> vpci_{read,write}_hw() shouldn't be a problem. Those are just wrappers
> around pci_conf_{read,write} functions, and the required locking (in
> case of using the IO ports) is already taken care in pci_conf_{read,write}.
> 
> Please note, that we anyways split 64bit writes into two 32bit ones
> without taking the lock for the whole duration of the access, so it is
> possible to see a partially updated state as a result of a 64bit write:
> the PCI(e) specification don't seem to specify whether the ECAM is allowed
> to split memory transactions into multiple Configuration Requests and
> whether those could then interleave with requests from a different CPU.
> 
> Signed-off-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
> Signed-off-by: Oleksandr Andrushchenko <oleksandr_andrushchenko@xxxxxxxx>

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

Would like to make sure whether Jan still have concerns about
splitting accesses though. Also since I'm the maintainer we need a
Reviewed-by from someone else.

Thanks, Roger.



 


Rackspace

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