All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/4 v3] Introduce device assignment flag operation helper function
@ 2014-07-29  4:06 Ethan Zhao
  2014-07-29  4:06 ` [PATCH 1/4 v3] PCI: introduce helper functions for device flag operation Ethan Zhao
                   ` (7 more replies)
  0 siblings, 8 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29  4:06 UTC (permalink / raw)
  To: bhelgaas, linux-pci, linux-kernel, gleb, pbonzini, kvm,
	konrad.wilk, boris.ostrovsky, david.vrabel, xen-devel
  Cc: alex.williamson, alexander.h.duyck, ethan.kernel

This patch set introduces three PCI device flag operation helper functions
when set pci device PF/VF to assigned or deassigned status also check it.
and patch 2,3,4 apply these helper functions to KVM,XEN and PCI.

v2: simplify unnecessory ternary operation in function pci_is_dev_assigned().
v3: amend helper function naming. 

Appreciate suggestion from
alex.williamson@redhat.com,
david.vrabel@citrix.com,
alexander.h.duyck@intel.com


BR,
Ethan



^ permalink raw reply	[flat|nested] 18+ messages in thread

* [PATCH 1/4 v3] PCI: introduce helper functions for device flag operation
  2014-07-29  4:06 [PATCH 0/4 v3] Introduce device assignment flag operation helper function Ethan Zhao
@ 2014-07-29  4:06 ` Ethan Zhao
  2014-07-29  4:06 ` Ethan Zhao
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29  4:06 UTC (permalink / raw)
  To: bhelgaas, linux-pci, linux-kernel, gleb, pbonzini, kvm,
	konrad.wilk, boris.ostrovsky, david.vrabel, xen-devel
  Cc: alex.williamson, alexander.h.duyck, ethan.kernel

This patch introduced three helper functions to hide direct
device flag operation.

void pci_set_dev_assigned(struct pci_dev *pdev);
void pci_clear_dev_assigned(struct pci_dev *pdev);
bool pci_is_dev_assigned(struct pci_dev *pdev);

Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
---
 v2: simplify unnecessory ternary operation in function pci_is_dev_assigned();
 v3: amend helper functions naming.
 include/linux/pci.h |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/include/linux/pci.h b/include/linux/pci.h
index aab57b4..5f6f8fa 100644
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -1129,6 +1129,19 @@ resource_size_t pcibios_window_alignment(struct pci_bus *bus,
 
 int pci_set_vga_state(struct pci_dev *pdev, bool decode,
 		      unsigned int command_bits, u32 flags);
+/* helper functions for operation of device flag */
+static inline void pci_set_dev_assigned(struct pci_dev *pdev)
+{
+	pdev->dev_flags |= PCI_DEV_FLAGS_ASSIGNED;
+}
+static inline void pci_clear_dev_assigned(struct pci_dev *pdev)
+{
+	pdev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
+}
+static inline bool pci_is_dev_assigned(struct pci_dev *pdev)
+{
+	return pdev->dev_flags & PCI_DEV_FLAGS_ASSIGNED;
+}
 /* kmem_cache style wrapper around pci_alloc_consistent() */
 
 #include <linux/pci-dma.h>
-- 
1.7.1


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 1/4 v3] PCI: introduce helper functions for device flag operation
  2014-07-29  4:06 [PATCH 0/4 v3] Introduce device assignment flag operation helper function Ethan Zhao
  2014-07-29  4:06 ` [PATCH 1/4 v3] PCI: introduce helper functions for device flag operation Ethan Zhao
@ 2014-07-29  4:06 ` Ethan Zhao
  2014-07-29  4:06 ` [PATCH 2/4 v3] KVM: use pci device flag operation helper functions Ethan Zhao
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29  4:06 UTC (permalink / raw)
  To: bhelgaas, linux-pci, linux-kernel, gleb, pbonzini, kvm,
	konrad.wilk, boris.ostrovsky, david.vrabel, xen-devel
  Cc: alexander.h.duyck, alex.williamson, ethan.kernel

This patch introduced three helper functions to hide direct
device flag operation.

void pci_set_dev_assigned(struct pci_dev *pdev);
void pci_clear_dev_assigned(struct pci_dev *pdev);
bool pci_is_dev_assigned(struct pci_dev *pdev);

Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
---
 v2: simplify unnecessory ternary operation in function pci_is_dev_assigned();
 v3: amend helper functions naming.
 include/linux/pci.h |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)

diff --git a/include/linux/pci.h b/include/linux/pci.h
index aab57b4..5f6f8fa 100644
--- a/include/linux/pci.h
+++ b/include/linux/pci.h
@@ -1129,6 +1129,19 @@ resource_size_t pcibios_window_alignment(struct pci_bus *bus,
 
 int pci_set_vga_state(struct pci_dev *pdev, bool decode,
 		      unsigned int command_bits, u32 flags);
+/* helper functions for operation of device flag */
+static inline void pci_set_dev_assigned(struct pci_dev *pdev)
+{
+	pdev->dev_flags |= PCI_DEV_FLAGS_ASSIGNED;
+}
+static inline void pci_clear_dev_assigned(struct pci_dev *pdev)
+{
+	pdev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
+}
+static inline bool pci_is_dev_assigned(struct pci_dev *pdev)
+{
+	return pdev->dev_flags & PCI_DEV_FLAGS_ASSIGNED;
+}
 /* kmem_cache style wrapper around pci_alloc_consistent() */
 
 #include <linux/pci-dma.h>
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 2/4 v3] KVM: use pci device flag operation helper functions
  2014-07-29  4:06 [PATCH 0/4 v3] Introduce device assignment flag operation helper function Ethan Zhao
                   ` (2 preceding siblings ...)
  2014-07-29  4:06 ` [PATCH 2/4 v3] KVM: use pci device flag operation helper functions Ethan Zhao
@ 2014-07-29  4:06 ` Ethan Zhao
  2014-07-29 12:21   ` Ethan Zhao
                     ` (2 more replies)
  2014-07-29  4:06 ` [PATCH 3/4 v3] xen-pciback: use pci device flag operation helper function Ethan Zhao
                   ` (3 subsequent siblings)
  7 siblings, 3 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29  4:06 UTC (permalink / raw)
  To: bhelgaas, linux-pci, linux-kernel, gleb, pbonzini, kvm,
	konrad.wilk, boris.ostrovsky, david.vrabel, xen-devel
  Cc: alex.williamson, alexander.h.duyck, ethan.kernel

Use helper function instead of direct operation to pci device
flag when set device to assigned or deassigned.

Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
---
 v3: amend helper functions naming.
 virt/kvm/assigned-dev.c |    2 +-
 virt/kvm/iommu.c        |    4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/virt/kvm/assigned-dev.c b/virt/kvm/assigned-dev.c
index bf06577..d122bda 100644
--- a/virt/kvm/assigned-dev.c
+++ b/virt/kvm/assigned-dev.c
@@ -302,7 +302,7 @@ static void kvm_free_assigned_device(struct kvm *kvm,
 	else
 		pci_restore_state(assigned_dev->dev);
 
-	assigned_dev->dev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
+	pci_clear_dev_assigned(assigned_dev->dev);
 
 	pci_release_regions(assigned_dev->dev);
 	pci_disable_device(assigned_dev->dev);
diff --git a/virt/kvm/iommu.c b/virt/kvm/iommu.c
index 0df7d4b..8cfe021 100644
--- a/virt/kvm/iommu.c
+++ b/virt/kvm/iommu.c
@@ -194,7 +194,7 @@ int kvm_assign_device(struct kvm *kvm,
 			goto out_unmap;
 	}
 
-	pdev->dev_flags |= PCI_DEV_FLAGS_ASSIGNED;
+	pci_set_dev_assigned(pdev);
 
 	dev_info(&pdev->dev, "kvm assign device\n");
 
@@ -220,7 +220,7 @@ int kvm_deassign_device(struct kvm *kvm,
 
 	iommu_detach_device(domain, &pdev->dev);
 
-	pdev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
+	pci_clear_dev_assigned(pdev);
 
 	dev_info(&pdev->dev, "kvm deassign device\n");
 
-- 
1.7.1


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 2/4 v3] KVM: use pci device flag operation helper functions
  2014-07-29  4:06 [PATCH 0/4 v3] Introduce device assignment flag operation helper function Ethan Zhao
  2014-07-29  4:06 ` [PATCH 1/4 v3] PCI: introduce helper functions for device flag operation Ethan Zhao
  2014-07-29  4:06 ` Ethan Zhao
@ 2014-07-29  4:06 ` Ethan Zhao
  2014-07-29  4:06 ` Ethan Zhao
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29  4:06 UTC (permalink / raw)
  To: bhelgaas, linux-pci, linux-kernel, gleb, pbonzini, kvm,
	konrad.wilk, boris.ostrovsky, david.vrabel, xen-devel
  Cc: alexander.h.duyck, alex.williamson, ethan.kernel

Use helper function instead of direct operation to pci device
flag when set device to assigned or deassigned.

Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
---
 v3: amend helper functions naming.
 virt/kvm/assigned-dev.c |    2 +-
 virt/kvm/iommu.c        |    4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/virt/kvm/assigned-dev.c b/virt/kvm/assigned-dev.c
index bf06577..d122bda 100644
--- a/virt/kvm/assigned-dev.c
+++ b/virt/kvm/assigned-dev.c
@@ -302,7 +302,7 @@ static void kvm_free_assigned_device(struct kvm *kvm,
 	else
 		pci_restore_state(assigned_dev->dev);
 
-	assigned_dev->dev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
+	pci_clear_dev_assigned(assigned_dev->dev);
 
 	pci_release_regions(assigned_dev->dev);
 	pci_disable_device(assigned_dev->dev);
diff --git a/virt/kvm/iommu.c b/virt/kvm/iommu.c
index 0df7d4b..8cfe021 100644
--- a/virt/kvm/iommu.c
+++ b/virt/kvm/iommu.c
@@ -194,7 +194,7 @@ int kvm_assign_device(struct kvm *kvm,
 			goto out_unmap;
 	}
 
-	pdev->dev_flags |= PCI_DEV_FLAGS_ASSIGNED;
+	pci_set_dev_assigned(pdev);
 
 	dev_info(&pdev->dev, "kvm assign device\n");
 
@@ -220,7 +220,7 @@ int kvm_deassign_device(struct kvm *kvm,
 
 	iommu_detach_device(domain, &pdev->dev);
 
-	pdev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
+	pci_clear_dev_assigned(pdev);
 
 	dev_info(&pdev->dev, "kvm deassign device\n");
 
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 3/4 v3] xen-pciback: use pci device flag operation helper function
  2014-07-29  4:06 [PATCH 0/4 v3] Introduce device assignment flag operation helper function Ethan Zhao
                   ` (3 preceding siblings ...)
  2014-07-29  4:06 ` Ethan Zhao
@ 2014-07-29  4:06 ` Ethan Zhao
  2014-07-29 10:07   ` David Vrabel
  2014-07-29 10:07   ` David Vrabel
  2014-07-29  4:06 ` Ethan Zhao
                   ` (2 subsequent siblings)
  7 siblings, 2 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29  4:06 UTC (permalink / raw)
  To: bhelgaas, linux-pci, linux-kernel, gleb, pbonzini, kvm,
	konrad.wilk, boris.ostrovsky, david.vrabel, xen-devel
  Cc: alex.williamson, alexander.h.duyck, ethan.kernel

Use pci device flag operation helper functions when set device
to assigned or deassigned state.

Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
---
 v3: amend helper functions naming.
 drivers/xen/xen-pciback/pci_stub.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/xen/xen-pciback/pci_stub.c b/drivers/xen/xen-pciback/pci_stub.c
index 62fcd48..71f69f1 100644
--- a/drivers/xen/xen-pciback/pci_stub.c
+++ b/drivers/xen/xen-pciback/pci_stub.c
@@ -133,7 +133,7 @@ static void pcistub_device_release(struct kref *kref)
 	xen_pcibk_config_free_dyn_fields(dev);
 	xen_pcibk_config_free_dev(dev);
 
-	dev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
+	pci_clear_dev_assigned(dev);
 	pci_dev_put(dev);
 
 	kfree(psdev);
@@ -404,7 +404,7 @@ static int pcistub_init_device(struct pci_dev *dev)
 	dev_dbg(&dev->dev, "reset device\n");
 	xen_pcibk_reset_device(dev);
 
-	dev->dev_flags |= PCI_DEV_FLAGS_ASSIGNED;
+	pci_set_dev_assigned(dev);
 	return 0;
 
 config_release:
-- 
1.7.1


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 3/4 v3] xen-pciback: use pci device flag operation helper function
  2014-07-29  4:06 [PATCH 0/4 v3] Introduce device assignment flag operation helper function Ethan Zhao
                   ` (4 preceding siblings ...)
  2014-07-29  4:06 ` [PATCH 3/4 v3] xen-pciback: use pci device flag operation helper function Ethan Zhao
@ 2014-07-29  4:06 ` Ethan Zhao
  2014-07-29  4:06 ` [PATCH 4/4 v3] PCI: use device flag operation helper function in iov.c Ethan Zhao
  2014-07-29  4:06 ` Ethan Zhao
  7 siblings, 0 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29  4:06 UTC (permalink / raw)
  To: bhelgaas, linux-pci, linux-kernel, gleb, pbonzini, kvm,
	konrad.wilk, boris.ostrovsky, david.vrabel, xen-devel
  Cc: alexander.h.duyck, alex.williamson, ethan.kernel

Use pci device flag operation helper functions when set device
to assigned or deassigned state.

Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
---
 v3: amend helper functions naming.
 drivers/xen/xen-pciback/pci_stub.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/xen/xen-pciback/pci_stub.c b/drivers/xen/xen-pciback/pci_stub.c
index 62fcd48..71f69f1 100644
--- a/drivers/xen/xen-pciback/pci_stub.c
+++ b/drivers/xen/xen-pciback/pci_stub.c
@@ -133,7 +133,7 @@ static void pcistub_device_release(struct kref *kref)
 	xen_pcibk_config_free_dyn_fields(dev);
 	xen_pcibk_config_free_dev(dev);
 
-	dev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
+	pci_clear_dev_assigned(dev);
 	pci_dev_put(dev);
 
 	kfree(psdev);
@@ -404,7 +404,7 @@ static int pcistub_init_device(struct pci_dev *dev)
 	dev_dbg(&dev->dev, "reset device\n");
 	xen_pcibk_reset_device(dev);
 
-	dev->dev_flags |= PCI_DEV_FLAGS_ASSIGNED;
+	pci_set_dev_assigned(dev);
 	return 0;
 
 config_release:
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 4/4 v3] PCI: use device flag operation helper function in iov.c
  2014-07-29  4:06 [PATCH 0/4 v3] Introduce device assignment flag operation helper function Ethan Zhao
                   ` (5 preceding siblings ...)
  2014-07-29  4:06 ` Ethan Zhao
@ 2014-07-29  4:06 ` Ethan Zhao
  2014-07-29  4:06 ` Ethan Zhao
  7 siblings, 0 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29  4:06 UTC (permalink / raw)
  To: bhelgaas, linux-pci, linux-kernel, gleb, pbonzini, kvm,
	konrad.wilk, boris.ostrovsky, david.vrabel, xen-devel
  Cc: alex.williamson, alexander.h.duyck, ethan.kernel

Use device flag operation helper functions when check device
assignment status.

Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
---
 v3: amend helper functions naming.
 drivers/pci/iov.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/pci/iov.c b/drivers/pci/iov.c
index de7a747..61fad36 100644
--- a/drivers/pci/iov.c
+++ b/drivers/pci/iov.c
@@ -633,7 +633,7 @@ int pci_vfs_assigned(struct pci_dev *dev)
 		 * our dev as the physical function and the assigned bit is set
 		 */
 		if (vfdev->is_virtfn && (vfdev->physfn == dev) &&
-		    (vfdev->dev_flags & PCI_DEV_FLAGS_ASSIGNED))
+		    pci_is_dev_assigned(vfdev))
 			vfs_assigned++;
 
 		vfdev = pci_get_device(dev->vendor, dev_id, vfdev);
-- 
1.7.1


^ permalink raw reply related	[flat|nested] 18+ messages in thread

* [PATCH 4/4 v3] PCI: use device flag operation helper function in iov.c
  2014-07-29  4:06 [PATCH 0/4 v3] Introduce device assignment flag operation helper function Ethan Zhao
                   ` (6 preceding siblings ...)
  2014-07-29  4:06 ` [PATCH 4/4 v3] PCI: use device flag operation helper function in iov.c Ethan Zhao
@ 2014-07-29  4:06 ` Ethan Zhao
  7 siblings, 0 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29  4:06 UTC (permalink / raw)
  To: bhelgaas, linux-pci, linux-kernel, gleb, pbonzini, kvm,
	konrad.wilk, boris.ostrovsky, david.vrabel, xen-devel
  Cc: alexander.h.duyck, alex.williamson, ethan.kernel

Use device flag operation helper functions when check device
assignment status.

Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
---
 v3: amend helper functions naming.
 drivers/pci/iov.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/pci/iov.c b/drivers/pci/iov.c
index de7a747..61fad36 100644
--- a/drivers/pci/iov.c
+++ b/drivers/pci/iov.c
@@ -633,7 +633,7 @@ int pci_vfs_assigned(struct pci_dev *dev)
 		 * our dev as the physical function and the assigned bit is set
 		 */
 		if (vfdev->is_virtfn && (vfdev->physfn == dev) &&
-		    (vfdev->dev_flags & PCI_DEV_FLAGS_ASSIGNED))
+		    pci_is_dev_assigned(vfdev))
 			vfs_assigned++;
 
 		vfdev = pci_get_device(dev->vendor, dev_id, vfdev);
-- 
1.7.1

^ permalink raw reply related	[flat|nested] 18+ messages in thread

* Re: [PATCH 3/4 v3] xen-pciback: use pci device flag operation helper function
  2014-07-29  4:06 ` [PATCH 3/4 v3] xen-pciback: use pci device flag operation helper function Ethan Zhao
  2014-07-29 10:07   ` David Vrabel
@ 2014-07-29 10:07   ` David Vrabel
  2014-07-29 12:16     ` Ethan Zhao
                       ` (3 more replies)
  1 sibling, 4 replies; 18+ messages in thread
From: David Vrabel @ 2014-07-29 10:07 UTC (permalink / raw)
  To: Ethan Zhao, bhelgaas, linux-pci, linux-kernel, gleb, pbonzini,
	kvm, konrad.wilk, boris.ostrovsky, xen-devel
  Cc: alex.williamson, alexander.h.duyck, ethan.kernel

On 29/07/14 05:06, Ethan Zhao wrote:
> Use pci device flag operation helper functions when set device
> to assigned or deassigned state.
> 
> Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>

Konrad already reviewed this but you've not included his reviewed-by tag.

I don't understand why we bother with this flag on Xen since we never
use it but:

Acked-by: David Vrabel <david.vrabel@citrix.com>

I'm expecting this to go via the PCI tree.

David

> --- a/drivers/xen/xen-pciback/pci_stub.c
> +++ b/drivers/xen/xen-pciback/pci_stub.c
> @@ -133,7 +133,7 @@ static void pcistub_device_release(struct kref *kref)
>  	xen_pcibk_config_free_dyn_fields(dev);
>  	xen_pcibk_config_free_dev(dev);
>  
> -	dev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
> +	pci_clear_dev_assigned(dev);
>  	pci_dev_put(dev);
>  
>  	kfree(psdev);
> @@ -404,7 +404,7 @@ static int pcistub_init_device(struct pci_dev *dev)
>  	dev_dbg(&dev->dev, "reset device\n");
>  	xen_pcibk_reset_device(dev);
>  
> -	dev->dev_flags |= PCI_DEV_FLAGS_ASSIGNED;
> +	pci_set_dev_assigned(dev);
>  	return 0;
>  
>  config_release:
> 


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 3/4 v3] xen-pciback: use pci device flag operation helper function
  2014-07-29  4:06 ` [PATCH 3/4 v3] xen-pciback: use pci device flag operation helper function Ethan Zhao
@ 2014-07-29 10:07   ` David Vrabel
  2014-07-29 10:07   ` David Vrabel
  1 sibling, 0 replies; 18+ messages in thread
From: David Vrabel @ 2014-07-29 10:07 UTC (permalink / raw)
  To: Ethan Zhao, bhelgaas, linux-pci, linux-kernel, gleb, pbonzini,
	kvm, konrad.wilk, boris.ostrovsky, xen-devel
  Cc: alexander.h.duyck, alex.williamson, ethan.kernel

On 29/07/14 05:06, Ethan Zhao wrote:
> Use pci device flag operation helper functions when set device
> to assigned or deassigned state.
> 
> Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>

Konrad already reviewed this but you've not included his reviewed-by tag.

I don't understand why we bother with this flag on Xen since we never
use it but:

Acked-by: David Vrabel <david.vrabel@citrix.com>

I'm expecting this to go via the PCI tree.

David

> --- a/drivers/xen/xen-pciback/pci_stub.c
> +++ b/drivers/xen/xen-pciback/pci_stub.c
> @@ -133,7 +133,7 @@ static void pcistub_device_release(struct kref *kref)
>  	xen_pcibk_config_free_dyn_fields(dev);
>  	xen_pcibk_config_free_dev(dev);
>  
> -	dev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
> +	pci_clear_dev_assigned(dev);
>  	pci_dev_put(dev);
>  
>  	kfree(psdev);
> @@ -404,7 +404,7 @@ static int pcistub_init_device(struct pci_dev *dev)
>  	dev_dbg(&dev->dev, "reset device\n");
>  	xen_pcibk_reset_device(dev);
>  
> -	dev->dev_flags |= PCI_DEV_FLAGS_ASSIGNED;
> +	pci_set_dev_assigned(dev);
>  	return 0;
>  
>  config_release:
> 

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 3/4 v3] xen-pciback: use pci device flag operation helper function
  2014-07-29 10:07   ` David Vrabel
  2014-07-29 12:16     ` Ethan Zhao
@ 2014-07-29 12:16     ` Ethan Zhao
  2014-07-29 12:34     ` Ethan Zhao
  2014-07-29 12:34     ` Ethan Zhao
  3 siblings, 0 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29 12:16 UTC (permalink / raw)
  To: David Vrabel
  Cc: Ethan Zhao, <bhelgaas@google.com>,
	<linux-pci@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>, <gleb@kernel.org>,
	<pbonzini@redhat.com>, <kvm@vger.kernel.org>,
	<konrad.wilk@oracle.com>,
	<boris.ostrovsky@oracle.com>,
	<xen-devel@lists.xenproject.org>,
	<alex.williamson@redhat.com>,
	<alexander.h.duyck@intel.com>



> 在 2014年7月29日,下午6:07,David Vrabel <david.vrabel@citrix.com> 写道:
> 
>> On 29/07/14 05:06, Ethan Zhao wrote:
>> Use pci device flag operation helper functions when set device
>> to assigned or deassigned state.
>> 
>> Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
> 
> Konrad already reviewed this but you've not included his reviewed-by tag.
> 
yep,I lost Konrad's reviewed-by tag.
Thanks.
> I don't understand why we bother with this flag on Xen since we never
> use it but:
> 
> Acked-by: David Vrabel <david.vrabel@citrix.com>
> 
> I'm expecting this to go via the PCI tree.
> 
> David
> 
>> --- a/drivers/xen/xen-pciback/pci_stub.c
>> +++ b/drivers/xen/xen-pciback/pci_stub.c
>> @@ -133,7 +133,7 @@ static void pcistub_device_release(struct kref *kref)
>>    xen_pcibk_config_free_dyn_fields(dev);
>>    xen_pcibk_config_free_dev(dev);
>> 
>> -    dev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
>> +    pci_clear_dev_assigned(dev);
>>    pci_dev_put(dev);
>> 
>>    kfree(psdev);
>> @@ -404,7 +404,7 @@ static int pcistub_init_device(struct pci_dev *dev)
>>    dev_dbg(&dev->dev, "reset device\n");
>>    xen_pcibk_reset_device(dev);
>> 
>> -    dev->dev_flags |= PCI_DEV_FLAGS_ASSIGNED;
>> +    pci_set_dev_assigned(dev);
>>    return 0;
>> 
>> config_release:
>> 
> 

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 3/4 v3] xen-pciback: use pci device flag operation helper function
  2014-07-29 10:07   ` David Vrabel
@ 2014-07-29 12:16     ` Ethan Zhao
  2014-07-29 12:16     ` Ethan Zhao
                       ` (2 subsequent siblings)
  3 siblings, 0 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29 12:16 UTC (permalink / raw)
  To: David Vrabel
  Cc: <alexander.h.duyck@intel.com>,
	Ethan Zhao, <kvm@vger.kernel.org>, <gleb@kernel.org>,
	<linux-pci@vger.kernel.org>,
	<linux-kernel@vger.kernel.org>,
	<alex.williamson@redhat.com>,
	<xen-devel@lists.xenproject.org>,
	<bhelgaas@google.com>, <pbonzini@redhat.com>,
	<boris.ostrovsky@oracle.com>



> 在 2014年7月29日,下午6:07,David Vrabel <david.vrabel@citrix.com> 写道:
> 
>> On 29/07/14 05:06, Ethan Zhao wrote:
>> Use pci device flag operation helper functions when set device
>> to assigned or deassigned state.
>> 
>> Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
> 
> Konrad already reviewed this but you've not included his reviewed-by tag.
> 
yep,I lost Konrad's reviewed-by tag.
Thanks.
> I don't understand why we bother with this flag on Xen since we never
> use it but:
> 
> Acked-by: David Vrabel <david.vrabel@citrix.com>
> 
> I'm expecting this to go via the PCI tree.
> 
> David
> 
>> --- a/drivers/xen/xen-pciback/pci_stub.c
>> +++ b/drivers/xen/xen-pciback/pci_stub.c
>> @@ -133,7 +133,7 @@ static void pcistub_device_release(struct kref *kref)
>>    xen_pcibk_config_free_dyn_fields(dev);
>>    xen_pcibk_config_free_dev(dev);
>> 
>> -    dev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
>> +    pci_clear_dev_assigned(dev);
>>    pci_dev_put(dev);
>> 
>>    kfree(psdev);
>> @@ -404,7 +404,7 @@ static int pcistub_init_device(struct pci_dev *dev)
>>    dev_dbg(&dev->dev, "reset device\n");
>>    xen_pcibk_reset_device(dev);
>> 
>> -    dev->dev_flags |= PCI_DEV_FLAGS_ASSIGNED;
>> +    pci_set_dev_assigned(dev);
>>    return 0;
>> 
>> config_release:
>> 
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 2/4 v3] KVM: use pci device flag operation helper functions
  2014-07-29  4:06 ` Ethan Zhao
@ 2014-07-29 12:21   ` Ethan Zhao
  2014-07-29 12:26   ` Ethan Zhao
  2014-07-29 12:26   ` Ethan Zhao
  2 siblings, 0 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29 12:21 UTC (permalink / raw)
  To: Ethan Zhao
  Cc: alexander.h.duyck, kvm, gleb, linux-pci, linux-kernel,
	alex.williamson, david.vrabel, xen-devel, bhelgaas, pbonzini,
	boris.ostrovsky


[-- Attachment #1.1: Type: text/plain, Size: 1743 bytes --]

this patch was already 
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
I forgot to add the Ack tag.

Thanks,
Ethan

> 在 2014年7月29日,下午12:06,Ethan Zhao <ethan.zhao@oracle.com> 写道:
> 
> Use helper function instead of direct operation to pci device
> flag when set device to assigned or deassigned.
> 
> Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
> ---
> v3: amend helper functions naming.
> virt/kvm/assigned-dev.c |    2 +-
> virt/kvm/iommu.c        |    4 ++--
> 2 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/virt/kvm/assigned-dev.c b/virt/kvm/assigned-dev.c
> index bf06577..d122bda 100644
> --- a/virt/kvm/assigned-dev.c
> +++ b/virt/kvm/assigned-dev.c
> @@ -302,7 +302,7 @@ static void kvm_free_assigned_device(struct kvm *kvm,
>    else
>        pci_restore_state(assigned_dev->dev);
> 
> -    assigned_dev->dev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
> +    pci_clear_dev_assigned(assigned_dev->dev);
> 
>    pci_release_regions(assigned_dev->dev);
>    pci_disable_device(assigned_dev->dev);
> diff --git a/virt/kvm/iommu.c b/virt/kvm/iommu.c
> index 0df7d4b..8cfe021 100644
> --- a/virt/kvm/iommu.c
> +++ b/virt/kvm/iommu.c
> @@ -194,7 +194,7 @@ int kvm_assign_device(struct kvm *kvm,
>            goto out_unmap;
>    }
> 
> -    pdev->dev_flags |= PCI_DEV_FLAGS_ASSIGNED;
> +    pci_set_dev_assigned(pdev);
> 
>    dev_info(&pdev->dev, "kvm assign device\n");
> 
> @@ -220,7 +220,7 @@ int kvm_deassign_device(struct kvm *kvm,
> 
>    iommu_detach_device(domain, &pdev->dev);
> 
> -    pdev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
> +    pci_clear_dev_assigned(pdev);
> 
>    dev_info(&pdev->dev, "kvm deassign device\n");
> 
> -- 
> 1.7.1
> 

[-- Attachment #1.2: Type: text/html, Size: 3610 bytes --]

[-- Attachment #2: Type: text/plain, Size: 126 bytes --]

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 2/4 v3] KVM: use pci device flag operation helper functions
  2014-07-29  4:06 ` Ethan Zhao
  2014-07-29 12:21   ` Ethan Zhao
@ 2014-07-29 12:26   ` Ethan Zhao
  2014-07-29 12:26   ` Ethan Zhao
  2 siblings, 0 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29 12:26 UTC (permalink / raw)
  To: Ethan Zhao
  Cc: Bjorn Helgaas, linux-pci, LKML, <gleb@kernel.org>,
	<pbonzini@redhat.com>, <kvm@vger.kernel.org>,
	Konrad Rzeszutek Wilk, <boris.ostrovsky@oracle.com>,
	David Vrabel, <xen-devel@lists.xenproject.org>,
	<alex.williamson@redhat.com>,
	<alexander.h.duyck@intel.com>

This patch was already
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
I forgot to add the Ack tag.

Thanks,
Ethan

Sorry for last post in HTML format with ipad.

On Tue, Jul 29, 2014 at 12:06 PM, Ethan Zhao <ethan.zhao@oracle.com> wrote:
> Use helper function instead of direct operation to pci device
> flag when set device to assigned or deassigned.
>
> Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
> ---
>  v3: amend helper functions naming.
>  virt/kvm/assigned-dev.c |    2 +-
>  virt/kvm/iommu.c        |    4 ++--
>  2 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/virt/kvm/assigned-dev.c b/virt/kvm/assigned-dev.c
> index bf06577..d122bda 100644
> --- a/virt/kvm/assigned-dev.c
> +++ b/virt/kvm/assigned-dev.c
> @@ -302,7 +302,7 @@ static void kvm_free_assigned_device(struct kvm *kvm,
>         else
>                 pci_restore_state(assigned_dev->dev);
>
> -       assigned_dev->dev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
> +       pci_clear_dev_assigned(assigned_dev->dev);
>
>         pci_release_regions(assigned_dev->dev);
>         pci_disable_device(assigned_dev->dev);
> diff --git a/virt/kvm/iommu.c b/virt/kvm/iommu.c
> index 0df7d4b..8cfe021 100644
> --- a/virt/kvm/iommu.c
> +++ b/virt/kvm/iommu.c
> @@ -194,7 +194,7 @@ int kvm_assign_device(struct kvm *kvm,
>                         goto out_unmap;
>         }
>
> -       pdev->dev_flags |= PCI_DEV_FLAGS_ASSIGNED;
> +       pci_set_dev_assigned(pdev);
>
>         dev_info(&pdev->dev, "kvm assign device\n");
>
> @@ -220,7 +220,7 @@ int kvm_deassign_device(struct kvm *kvm,
>
>         iommu_detach_device(domain, &pdev->dev);
>
> -       pdev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
> +       pci_clear_dev_assigned(pdev);
>
>         dev_info(&pdev->dev, "kvm deassign device\n");
>
> --
> 1.7.1
>

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 2/4 v3] KVM: use pci device flag operation helper functions
  2014-07-29  4:06 ` Ethan Zhao
  2014-07-29 12:21   ` Ethan Zhao
  2014-07-29 12:26   ` Ethan Zhao
@ 2014-07-29 12:26   ` Ethan Zhao
  2 siblings, 0 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29 12:26 UTC (permalink / raw)
  To: Ethan Zhao
  Cc: <alexander.h.duyck@intel.com>, <kvm@vger.kernel.org>,
	<gleb@kernel.org>,
	linux-pci, LKML, <alex.williamson@redhat.com>,
	David Vrabel, <xen-devel@lists.xenproject.org>,
	Bjorn Helgaas, <pbonzini@redhat.com>,
	<boris.ostrovsky@oracle.com>

This patch was already
Acked-by: Paolo Bonzini <pbonzini@redhat.com>
I forgot to add the Ack tag.

Thanks,
Ethan

Sorry for last post in HTML format with ipad.

On Tue, Jul 29, 2014 at 12:06 PM, Ethan Zhao <ethan.zhao@oracle.com> wrote:
> Use helper function instead of direct operation to pci device
> flag when set device to assigned or deassigned.
>
> Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
> ---
>  v3: amend helper functions naming.
>  virt/kvm/assigned-dev.c |    2 +-
>  virt/kvm/iommu.c        |    4 ++--
>  2 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/virt/kvm/assigned-dev.c b/virt/kvm/assigned-dev.c
> index bf06577..d122bda 100644
> --- a/virt/kvm/assigned-dev.c
> +++ b/virt/kvm/assigned-dev.c
> @@ -302,7 +302,7 @@ static void kvm_free_assigned_device(struct kvm *kvm,
>         else
>                 pci_restore_state(assigned_dev->dev);
>
> -       assigned_dev->dev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
> +       pci_clear_dev_assigned(assigned_dev->dev);
>
>         pci_release_regions(assigned_dev->dev);
>         pci_disable_device(assigned_dev->dev);
> diff --git a/virt/kvm/iommu.c b/virt/kvm/iommu.c
> index 0df7d4b..8cfe021 100644
> --- a/virt/kvm/iommu.c
> +++ b/virt/kvm/iommu.c
> @@ -194,7 +194,7 @@ int kvm_assign_device(struct kvm *kvm,
>                         goto out_unmap;
>         }
>
> -       pdev->dev_flags |= PCI_DEV_FLAGS_ASSIGNED;
> +       pci_set_dev_assigned(pdev);
>
>         dev_info(&pdev->dev, "kvm assign device\n");
>
> @@ -220,7 +220,7 @@ int kvm_deassign_device(struct kvm *kvm,
>
>         iommu_detach_device(domain, &pdev->dev);
>
> -       pdev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
> +       pci_clear_dev_assigned(pdev);
>
>         dev_info(&pdev->dev, "kvm deassign device\n");
>
> --
> 1.7.1
>

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 3/4 v3] xen-pciback: use pci device flag operation helper function
  2014-07-29 10:07   ` David Vrabel
  2014-07-29 12:16     ` Ethan Zhao
  2014-07-29 12:16     ` Ethan Zhao
@ 2014-07-29 12:34     ` Ethan Zhao
  2014-07-29 12:34     ` Ethan Zhao
  3 siblings, 0 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29 12:34 UTC (permalink / raw)
  To: David Vrabel
  Cc: Ethan Zhao, Bjorn Helgaas, linux-pci, LKML,
	<gleb@kernel.org>, <pbonzini@redhat.com>,
	<kvm@vger.kernel.org>,
	Konrad Rzeszutek Wilk, <boris.ostrovsky@oracle.com>,
	<xen-devel@lists.xenproject.org>,
	<alex.williamson@redhat.com>,
	<alexander.h.duyck@intel.com>

On Tue, Jul 29, 2014 at 6:07 PM, David Vrabel <david.vrabel@citrix.com> wrote:
> On 29/07/14 05:06, Ethan Zhao wrote:
>> Use pci device flag operation helper functions when set device
>> to assigned or deassigned state.
>>
>> Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
>
> Konrad already reviewed this but you've not included his reviewed-by tag.
>
> I don't understand why we bother with this flag on Xen since we never
> use it but:
>
> Acked-by: David Vrabel <david.vrabel@citrix.com>
>
> I'm expecting this to go via the PCI tree.

  Seems Bjorn still holds his bullet for last shot :)
>
> David
>
>> --- a/drivers/xen/xen-pciback/pci_stub.c
>> +++ b/drivers/xen/xen-pciback/pci_stub.c
>> @@ -133,7 +133,7 @@ static void pcistub_device_release(struct kref *kref)
>>       xen_pcibk_config_free_dyn_fields(dev);
>>       xen_pcibk_config_free_dev(dev);
>>
>> -     dev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
>> +     pci_clear_dev_assigned(dev);
>>       pci_dev_put(dev);
>>
>>       kfree(psdev);
>> @@ -404,7 +404,7 @@ static int pcistub_init_device(struct pci_dev *dev)
>>       dev_dbg(&dev->dev, "reset device\n");
>>       xen_pcibk_reset_device(dev);
>>
>> -     dev->dev_flags |= PCI_DEV_FLAGS_ASSIGNED;
>> +     pci_set_dev_assigned(dev);
>>       return 0;
>>
>>  config_release:
>>
>

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [PATCH 3/4 v3] xen-pciback: use pci device flag operation helper function
  2014-07-29 10:07   ` David Vrabel
                       ` (2 preceding siblings ...)
  2014-07-29 12:34     ` Ethan Zhao
@ 2014-07-29 12:34     ` Ethan Zhao
  3 siblings, 0 replies; 18+ messages in thread
From: Ethan Zhao @ 2014-07-29 12:34 UTC (permalink / raw)
  To: David Vrabel
  Cc: <alexander.h.duyck@intel.com>,
	Ethan Zhao, <kvm@vger.kernel.org>, <gleb@kernel.org>,
	linux-pci, LKML, <alex.williamson@redhat.com>,
	<xen-devel@lists.xenproject.org>,
	Bjorn Helgaas, <pbonzini@redhat.com>,
	<boris.ostrovsky@oracle.com>

On Tue, Jul 29, 2014 at 6:07 PM, David Vrabel <david.vrabel@citrix.com> wrote:
> On 29/07/14 05:06, Ethan Zhao wrote:
>> Use pci device flag operation helper functions when set device
>> to assigned or deassigned state.
>>
>> Signed-off-by: Ethan Zhao <ethan.zhao@oracle.com>
>
> Konrad already reviewed this but you've not included his reviewed-by tag.
>
> I don't understand why we bother with this flag on Xen since we never
> use it but:
>
> Acked-by: David Vrabel <david.vrabel@citrix.com>
>
> I'm expecting this to go via the PCI tree.

  Seems Bjorn still holds his bullet for last shot :)
>
> David
>
>> --- a/drivers/xen/xen-pciback/pci_stub.c
>> +++ b/drivers/xen/xen-pciback/pci_stub.c
>> @@ -133,7 +133,7 @@ static void pcistub_device_release(struct kref *kref)
>>       xen_pcibk_config_free_dyn_fields(dev);
>>       xen_pcibk_config_free_dev(dev);
>>
>> -     dev->dev_flags &= ~PCI_DEV_FLAGS_ASSIGNED;
>> +     pci_clear_dev_assigned(dev);
>>       pci_dev_put(dev);
>>
>>       kfree(psdev);
>> @@ -404,7 +404,7 @@ static int pcistub_init_device(struct pci_dev *dev)
>>       dev_dbg(&dev->dev, "reset device\n");
>>       xen_pcibk_reset_device(dev);
>>
>> -     dev->dev_flags |= PCI_DEV_FLAGS_ASSIGNED;
>> +     pci_set_dev_assigned(dev);
>>       return 0;
>>
>>  config_release:
>>
>

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2014-07-29 12:34 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-07-29  4:06 [PATCH 0/4 v3] Introduce device assignment flag operation helper function Ethan Zhao
2014-07-29  4:06 ` [PATCH 1/4 v3] PCI: introduce helper functions for device flag operation Ethan Zhao
2014-07-29  4:06 ` Ethan Zhao
2014-07-29  4:06 ` [PATCH 2/4 v3] KVM: use pci device flag operation helper functions Ethan Zhao
2014-07-29  4:06 ` Ethan Zhao
2014-07-29 12:21   ` Ethan Zhao
2014-07-29 12:26   ` Ethan Zhao
2014-07-29 12:26   ` Ethan Zhao
2014-07-29  4:06 ` [PATCH 3/4 v3] xen-pciback: use pci device flag operation helper function Ethan Zhao
2014-07-29 10:07   ` David Vrabel
2014-07-29 10:07   ` David Vrabel
2014-07-29 12:16     ` Ethan Zhao
2014-07-29 12:16     ` Ethan Zhao
2014-07-29 12:34     ` Ethan Zhao
2014-07-29 12:34     ` Ethan Zhao
2014-07-29  4:06 ` Ethan Zhao
2014-07-29  4:06 ` [PATCH 4/4 v3] PCI: use device flag operation helper function in iov.c Ethan Zhao
2014-07-29  4:06 ` Ethan Zhao

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.