Re: [XEN PATCH v8 1/5] xen/vpci: Clear all vpci status of device

2024-05-17 Thread Stewart Hildebrand
On 5/17/24 04:08, Chen, Jiqian wrote: > On 2024/5/16 21:08, Jan Beulich wrote: >> On 16.05.2024 11:52, Jiqian Chen wrote: >>> @@ -67,6 +68,41 @@ ret_t pci_physdev_op(int cmd, >>> XEN_GUEST_HANDLE_PARAM(void) arg) >>> +pcidevs_lock(); >>> +pdev = pci_get_pdev(NULL, sbdf); >>> +

Re: [XEN PATCH v8 1/5] xen/vpci: Clear all vpci status of device

2024-05-17 Thread Jan Beulich
On 17.05.2024 13:01, Chen, Jiqian wrote: > On 2024/5/17 18:31, Jan Beulich wrote: >> On 17.05.2024 12:00, Chen, Jiqian wrote: >>> On 2024/5/17 17:50, Jan Beulich wrote: On 17.05.2024 11:28, Chen, Jiqian wrote: > On 2024/5/17 16:20, Jan Beulich wrote: >> On 17.05.2024 10:08, Chen,

Re: [XEN PATCH v8 1/5] xen/vpci: Clear all vpci status of device

2024-05-17 Thread Chen, Jiqian
On 2024/5/17 18:31, Jan Beulich wrote: > On 17.05.2024 12:00, Chen, Jiqian wrote: >> On 2024/5/17 17:50, Jan Beulich wrote: >>> On 17.05.2024 11:28, Chen, Jiqian wrote: On 2024/5/17 16:20, Jan Beulich wrote: > On 17.05.2024 10:08, Chen, Jiqian wrote: >> On 2024/5/16 21:08, Jan Beulich

Re: [XEN PATCH v8 1/5] xen/vpci: Clear all vpci status of device

2024-05-17 Thread Jan Beulich
On 17.05.2024 12:00, Chen, Jiqian wrote: > On 2024/5/17 17:50, Jan Beulich wrote: >> On 17.05.2024 11:28, Chen, Jiqian wrote: >>> On 2024/5/17 16:20, Jan Beulich wrote: On 17.05.2024 10:08, Chen, Jiqian wrote: > On 2024/5/16 21:08, Jan Beulich wrote: >> On 16.05.2024 11:52, Jiqian

Re: [XEN PATCH v8 1/5] xen/vpci: Clear all vpci status of device

2024-05-17 Thread Chen, Jiqian
Hi Juergen: On 2024/5/17 18:03, Jürgen Groß wrote: > On 17.05.24 11:50, Jan Beulich wrote: >> On 17.05.2024 11:28, Chen, Jiqian wrote: >>> On 2024/5/17 16:20, Jan Beulich wrote: On 17.05.2024 10:08, Chen, Jiqian wrote: > On 2024/5/16 21:08, Jan Beulich wrote: >> On 16.05.2024 11:52,

Re: [XEN PATCH v8 1/5] xen/vpci: Clear all vpci status of device

2024-05-17 Thread Jürgen Groß
On 17.05.24 11:50, Jan Beulich wrote: On 17.05.2024 11:28, Chen, Jiqian wrote: On 2024/5/17 16:20, Jan Beulich wrote: On 17.05.2024 10:08, Chen, Jiqian wrote: On 2024/5/16 21:08, Jan Beulich wrote: On 16.05.2024 11:52, Jiqian Chen wrote: struct physdev_pci_device { /* IN */

Re: [XEN PATCH v8 1/5] xen/vpci: Clear all vpci status of device

2024-05-17 Thread Chen, Jiqian
On 2024/5/17 17:50, Jan Beulich wrote: > On 17.05.2024 11:28, Chen, Jiqian wrote: >> On 2024/5/17 16:20, Jan Beulich wrote: >>> On 17.05.2024 10:08, Chen, Jiqian wrote: On 2024/5/16 21:08, Jan Beulich wrote: > On 16.05.2024 11:52, Jiqian Chen wrote: >> struct physdev_pci_device {

Re: [XEN PATCH v8 1/5] xen/vpci: Clear all vpci status of device

2024-05-17 Thread Jan Beulich
On 17.05.2024 11:28, Chen, Jiqian wrote: > On 2024/5/17 16:20, Jan Beulich wrote: >> On 17.05.2024 10:08, Chen, Jiqian wrote: >>> On 2024/5/16 21:08, Jan Beulich wrote: On 16.05.2024 11:52, Jiqian Chen wrote: > struct physdev_pci_device { > /* IN */ > uint16_t seg;

Re: [XEN PATCH v8 1/5] xen/vpci: Clear all vpci status of device

2024-05-17 Thread Chen, Jiqian
On 2024/5/17 16:20, Jan Beulich wrote: > On 17.05.2024 10:08, Chen, Jiqian wrote: >> On 2024/5/16 21:08, Jan Beulich wrote: >>> On 16.05.2024 11:52, Jiqian Chen wrote: struct physdev_pci_device { /* IN */ uint16_t seg; >>> >>> Is re-using this struct for this new sub-op

Re: [XEN PATCH v8 1/5] xen/vpci: Clear all vpci status of device

2024-05-17 Thread Jan Beulich
On 17.05.2024 10:08, Chen, Jiqian wrote: > On 2024/5/16 21:08, Jan Beulich wrote: >> On 16.05.2024 11:52, Jiqian Chen wrote: >>> struct physdev_pci_device { >>> /* IN */ >>> uint16_t seg; >> >> Is re-using this struct for this new sub-op sufficient? IOW are all >> possible resets equal,

Re: [XEN PATCH v8 1/5] xen/vpci: Clear all vpci status of device

2024-05-17 Thread Chen, Jiqian
On 2024/5/16 21:08, Jan Beulich wrote: > On 16.05.2024 11:52, Jiqian Chen wrote: >> @@ -67,6 +68,41 @@ ret_t pci_physdev_op(int cmd, >> XEN_GUEST_HANDLE_PARAM(void) arg) >> break; >> } >> >> +case PHYSDEVOP_pci_device_state_reset: { >> +struct physdev_pci_device dev;

Re: [XEN PATCH v8 1/5] xen/vpci: Clear all vpci status of device

2024-05-16 Thread Jan Beulich
On 16.05.2024 11:52, Jiqian Chen wrote: > @@ -67,6 +68,41 @@ ret_t pci_physdev_op(int cmd, XEN_GUEST_HANDLE_PARAM(void) > arg) > break; > } > > +case PHYSDEVOP_pci_device_state_reset: { > +struct physdev_pci_device dev; > +struct pci_dev *pdev; > +

[XEN PATCH v8 1/5] xen/vpci: Clear all vpci status of device

2024-05-16 Thread Jiqian Chen
When a device has been reset on dom0 side, the vpci on Xen side won't get notification, so the cached state in vpci is all out of date compare with the real device state. To solve that problem, add a new hypercall to clear all vpci device state. When the state of device is reset on dom0 side, dom0