Re: [PATCH 4/7] iommu: Add driver-not-bound notification

2017-06-14 Thread Auger Eric
Hi,
On 09/06/2017 23:59, Alex Williamson wrote:
> The driver core supports a BUS_NOTIFY_DRIVER_NOT_BOUND notification
> sent if a driver fails to bind to a device.  Extend IOMMU group
> notifications to include a version of this.
> 
> Signed-off-by: Alex Williamson 
> Cc: Joerg Roedel 
> ---
>  drivers/iommu/iommu.c |2 ++
>  include/linux/iommu.h |1 +
>  2 files changed, 3 insertions(+)
> 
> diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
> index 3b67144dead2..cf6051db4208 100644
> --- a/drivers/iommu/iommu.c
> +++ b/drivers/iommu/iommu.c
> @@ -1113,6 +1113,8 @@ static int iommu_bus_notifier(struct notifier_block *nb,
>   case BUS_NOTIFY_UNBOUND_DRIVER:
>   group_action = IOMMU_GROUP_NOTIFY_UNBOUND_DRIVER;
>   break;
> + case BUS_NOTIFY_DRIVER_NOT_BOUND:
> + group_action = IOMMU_GROUP_NOTIFY_DRIVER_NOT_BOUND;
so with the break ;-)

Reviewed-by: Eric Auger 

Thanks

Eric
>   }
>  
>   if (group_action)
> diff --git a/include/linux/iommu.h b/include/linux/iommu.h
> index 2e4de0deee53..54a0eb96da25 100644
> --- a/include/linux/iommu.h
> +++ b/include/linux/iommu.h
> @@ -268,6 +268,7 @@ static inline void iommu_device_set_fwnode(struct 
> iommu_device *iommu,
>  #define IOMMU_GROUP_NOTIFY_BOUND_DRIVER  4 /* Post Driver bind */
>  #define IOMMU_GROUP_NOTIFY_UNBIND_DRIVER 5 /* Pre Driver unbind */
>  #define IOMMU_GROUP_NOTIFY_UNBOUND_DRIVER6 /* Post Driver unbind */
> +#define IOMMU_GROUP_NOTIFY_DRIVER_NOT_BOUND  7 /* Driver bind failed */
>  
>  extern int bus_set_iommu(struct bus_type *bus, const struct iommu_ops *ops);
>  extern bool iommu_present(struct bus_type *bus);
> 


Re: [PATCH 4/7] iommu: Add driver-not-bound notification

2017-06-14 Thread Auger Eric
Hi,
On 09/06/2017 23:59, Alex Williamson wrote:
> The driver core supports a BUS_NOTIFY_DRIVER_NOT_BOUND notification
> sent if a driver fails to bind to a device.  Extend IOMMU group
> notifications to include a version of this.
> 
> Signed-off-by: Alex Williamson 
> Cc: Joerg Roedel 
> ---
>  drivers/iommu/iommu.c |2 ++
>  include/linux/iommu.h |1 +
>  2 files changed, 3 insertions(+)
> 
> diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
> index 3b67144dead2..cf6051db4208 100644
> --- a/drivers/iommu/iommu.c
> +++ b/drivers/iommu/iommu.c
> @@ -1113,6 +1113,8 @@ static int iommu_bus_notifier(struct notifier_block *nb,
>   case BUS_NOTIFY_UNBOUND_DRIVER:
>   group_action = IOMMU_GROUP_NOTIFY_UNBOUND_DRIVER;
>   break;
> + case BUS_NOTIFY_DRIVER_NOT_BOUND:
> + group_action = IOMMU_GROUP_NOTIFY_DRIVER_NOT_BOUND;
so with the break ;-)

Reviewed-by: Eric Auger 

Thanks

Eric
>   }
>  
>   if (group_action)
> diff --git a/include/linux/iommu.h b/include/linux/iommu.h
> index 2e4de0deee53..54a0eb96da25 100644
> --- a/include/linux/iommu.h
> +++ b/include/linux/iommu.h
> @@ -268,6 +268,7 @@ static inline void iommu_device_set_fwnode(struct 
> iommu_device *iommu,
>  #define IOMMU_GROUP_NOTIFY_BOUND_DRIVER  4 /* Post Driver bind */
>  #define IOMMU_GROUP_NOTIFY_UNBIND_DRIVER 5 /* Pre Driver unbind */
>  #define IOMMU_GROUP_NOTIFY_UNBOUND_DRIVER6 /* Post Driver unbind */
> +#define IOMMU_GROUP_NOTIFY_DRIVER_NOT_BOUND  7 /* Driver bind failed */
>  
>  extern int bus_set_iommu(struct bus_type *bus, const struct iommu_ops *ops);
>  extern bool iommu_present(struct bus_type *bus);
> 


Re: [PATCH 4/7] iommu: Add driver-not-bound notification

2017-06-10 Thread Joerg Roedel
On Fri, Jun 09, 2017 at 04:43:34PM -0600, Alex Williamson wrote:
> + case BUS_NOTIFY_DRIVER_NOT_BOUND:
> + group_action = IOMMU_GROUP_NOTIFY_DRIVER_NOT_BOUND;
> + break;

Ah yes, I missed that too when looking at the patch. Still Acked-by-Me
:)


Joerg



Re: [PATCH 4/7] iommu: Add driver-not-bound notification

2017-06-10 Thread Joerg Roedel
On Fri, Jun 09, 2017 at 04:43:34PM -0600, Alex Williamson wrote:
> + case BUS_NOTIFY_DRIVER_NOT_BOUND:
> + group_action = IOMMU_GROUP_NOTIFY_DRIVER_NOT_BOUND;
> + break;

Ah yes, I missed that too when looking at the patch. Still Acked-by-Me
:)


Joerg



Re: [PATCH 4/7] iommu: Add driver-not-bound notification

2017-06-09 Thread Alex Williamson
On Sat, 10 Jun 2017 00:21:33 +0200
Joerg Roedel  wrote:

> On Fri, Jun 09, 2017 at 03:59:59PM -0600, Alex Williamson wrote:
> > The driver core supports a BUS_NOTIFY_DRIVER_NOT_BOUND notification
> > sent if a driver fails to bind to a device.  Extend IOMMU group
> > notifications to include a version of this.
> > 
> > Signed-off-by: Alex Williamson 
> > Cc: Joerg Roedel   
> 
> Since this is part of a larger patch-set I assume it won't go through
> iommu-tree, so:
> 
>   Acked-by: Joerg Roedel 
> 

Thanks Joerg!  Yes, I was hoping for your ack so I could pull it
through the vfio tree.  I also note that I added a new case, but missed
the break.  It doesn't change the code, but I think it makes it more
maintainable to include it.  If there are no objections I'll make this
trivial update to the commit:

commit 95c30f6a55638edaf9673f451c0050441cf18ab8
Author: Alex Williamson 
Date:   Sat Jun 3 13:00:06 2017 -0600

iommu: Add driver-not-bound notification

The driver core supports a BUS_NOTIFY_DRIVER_NOT_BOUND notification
sent if a driver fails to bind to a device.  Extend IOMMU group
notifications to include a version of this.

Signed-off-by: Alex Williamson 
Acked-by: Joerg Roedel 

diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
index 3b67144dead2..7043f95ee43d 100644
--- a/drivers/iommu/iommu.c
+++ b/drivers/iommu/iommu.c
@@ -1113,6 +1113,9 @@ static int iommu_bus_notifier(struct notifier_block *nb,
case BUS_NOTIFY_UNBOUND_DRIVER:
group_action = IOMMU_GROUP_NOTIFY_UNBOUND_DRIVER;
break;
+   case BUS_NOTIFY_DRIVER_NOT_BOUND:
+   group_action = IOMMU_GROUP_NOTIFY_DRIVER_NOT_BOUND;
+   break;
}
 
if (group_action)
diff --git a/include/linux/iommu.h b/include/linux/iommu.h
index 2e4de0deee53..54a0eb96da25 100644
--- a/include/linux/iommu.h
+++ b/include/linux/iommu.h
@@ -268,6 +268,7 @@ static inline void iommu_device_set_fwnode(struct 
iommu_device *iommu,
 #define IOMMU_GROUP_NOTIFY_BOUND_DRIVER4 /* Post Driver bind */
 #define IOMMU_GROUP_NOTIFY_UNBIND_DRIVER   5 /* Pre Driver unbind */
 #define IOMMU_GROUP_NOTIFY_UNBOUND_DRIVER  6 /* Post Driver unbind */
+#define IOMMU_GROUP_NOTIFY_DRIVER_NOT_BOUND7 /* Driver bind failed */
 
 extern int bus_set_iommu(struct bus_type *bus, const struct iommu_ops *ops);
 extern bool iommu_present(struct bus_type *bus);


Re: [PATCH 4/7] iommu: Add driver-not-bound notification

2017-06-09 Thread Alex Williamson
On Sat, 10 Jun 2017 00:21:33 +0200
Joerg Roedel  wrote:

> On Fri, Jun 09, 2017 at 03:59:59PM -0600, Alex Williamson wrote:
> > The driver core supports a BUS_NOTIFY_DRIVER_NOT_BOUND notification
> > sent if a driver fails to bind to a device.  Extend IOMMU group
> > notifications to include a version of this.
> > 
> > Signed-off-by: Alex Williamson 
> > Cc: Joerg Roedel   
> 
> Since this is part of a larger patch-set I assume it won't go through
> iommu-tree, so:
> 
>   Acked-by: Joerg Roedel 
> 

Thanks Joerg!  Yes, I was hoping for your ack so I could pull it
through the vfio tree.  I also note that I added a new case, but missed
the break.  It doesn't change the code, but I think it makes it more
maintainable to include it.  If there are no objections I'll make this
trivial update to the commit:

commit 95c30f6a55638edaf9673f451c0050441cf18ab8
Author: Alex Williamson 
Date:   Sat Jun 3 13:00:06 2017 -0600

iommu: Add driver-not-bound notification

The driver core supports a BUS_NOTIFY_DRIVER_NOT_BOUND notification
sent if a driver fails to bind to a device.  Extend IOMMU group
notifications to include a version of this.

Signed-off-by: Alex Williamson 
Acked-by: Joerg Roedel 

diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
index 3b67144dead2..7043f95ee43d 100644
--- a/drivers/iommu/iommu.c
+++ b/drivers/iommu/iommu.c
@@ -1113,6 +1113,9 @@ static int iommu_bus_notifier(struct notifier_block *nb,
case BUS_NOTIFY_UNBOUND_DRIVER:
group_action = IOMMU_GROUP_NOTIFY_UNBOUND_DRIVER;
break;
+   case BUS_NOTIFY_DRIVER_NOT_BOUND:
+   group_action = IOMMU_GROUP_NOTIFY_DRIVER_NOT_BOUND;
+   break;
}
 
if (group_action)
diff --git a/include/linux/iommu.h b/include/linux/iommu.h
index 2e4de0deee53..54a0eb96da25 100644
--- a/include/linux/iommu.h
+++ b/include/linux/iommu.h
@@ -268,6 +268,7 @@ static inline void iommu_device_set_fwnode(struct 
iommu_device *iommu,
 #define IOMMU_GROUP_NOTIFY_BOUND_DRIVER4 /* Post Driver bind */
 #define IOMMU_GROUP_NOTIFY_UNBIND_DRIVER   5 /* Pre Driver unbind */
 #define IOMMU_GROUP_NOTIFY_UNBOUND_DRIVER  6 /* Post Driver unbind */
+#define IOMMU_GROUP_NOTIFY_DRIVER_NOT_BOUND7 /* Driver bind failed */
 
 extern int bus_set_iommu(struct bus_type *bus, const struct iommu_ops *ops);
 extern bool iommu_present(struct bus_type *bus);


Re: [PATCH 4/7] iommu: Add driver-not-bound notification

2017-06-09 Thread Joerg Roedel
On Fri, Jun 09, 2017 at 03:59:59PM -0600, Alex Williamson wrote:
> The driver core supports a BUS_NOTIFY_DRIVER_NOT_BOUND notification
> sent if a driver fails to bind to a device.  Extend IOMMU group
> notifications to include a version of this.
> 
> Signed-off-by: Alex Williamson 
> Cc: Joerg Roedel 

Since this is part of a larger patch-set I assume it won't go through
iommu-tree, so:

Acked-by: Joerg Roedel 



Re: [PATCH 4/7] iommu: Add driver-not-bound notification

2017-06-09 Thread Joerg Roedel
On Fri, Jun 09, 2017 at 03:59:59PM -0600, Alex Williamson wrote:
> The driver core supports a BUS_NOTIFY_DRIVER_NOT_BOUND notification
> sent if a driver fails to bind to a device.  Extend IOMMU group
> notifications to include a version of this.
> 
> Signed-off-by: Alex Williamson 
> Cc: Joerg Roedel 

Since this is part of a larger patch-set I assume it won't go through
iommu-tree, so:

Acked-by: Joerg Roedel 



[PATCH 4/7] iommu: Add driver-not-bound notification

2017-06-09 Thread Alex Williamson
The driver core supports a BUS_NOTIFY_DRIVER_NOT_BOUND notification
sent if a driver fails to bind to a device.  Extend IOMMU group
notifications to include a version of this.

Signed-off-by: Alex Williamson 
Cc: Joerg Roedel 
---
 drivers/iommu/iommu.c |2 ++
 include/linux/iommu.h |1 +
 2 files changed, 3 insertions(+)

diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
index 3b67144dead2..cf6051db4208 100644
--- a/drivers/iommu/iommu.c
+++ b/drivers/iommu/iommu.c
@@ -1113,6 +1113,8 @@ static int iommu_bus_notifier(struct notifier_block *nb,
case BUS_NOTIFY_UNBOUND_DRIVER:
group_action = IOMMU_GROUP_NOTIFY_UNBOUND_DRIVER;
break;
+   case BUS_NOTIFY_DRIVER_NOT_BOUND:
+   group_action = IOMMU_GROUP_NOTIFY_DRIVER_NOT_BOUND;
}
 
if (group_action)
diff --git a/include/linux/iommu.h b/include/linux/iommu.h
index 2e4de0deee53..54a0eb96da25 100644
--- a/include/linux/iommu.h
+++ b/include/linux/iommu.h
@@ -268,6 +268,7 @@ static inline void iommu_device_set_fwnode(struct 
iommu_device *iommu,
 #define IOMMU_GROUP_NOTIFY_BOUND_DRIVER4 /* Post Driver bind */
 #define IOMMU_GROUP_NOTIFY_UNBIND_DRIVER   5 /* Pre Driver unbind */
 #define IOMMU_GROUP_NOTIFY_UNBOUND_DRIVER  6 /* Post Driver unbind */
+#define IOMMU_GROUP_NOTIFY_DRIVER_NOT_BOUND7 /* Driver bind failed */
 
 extern int bus_set_iommu(struct bus_type *bus, const struct iommu_ops *ops);
 extern bool iommu_present(struct bus_type *bus);



[PATCH 4/7] iommu: Add driver-not-bound notification

2017-06-09 Thread Alex Williamson
The driver core supports a BUS_NOTIFY_DRIVER_NOT_BOUND notification
sent if a driver fails to bind to a device.  Extend IOMMU group
notifications to include a version of this.

Signed-off-by: Alex Williamson 
Cc: Joerg Roedel 
---
 drivers/iommu/iommu.c |2 ++
 include/linux/iommu.h |1 +
 2 files changed, 3 insertions(+)

diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c
index 3b67144dead2..cf6051db4208 100644
--- a/drivers/iommu/iommu.c
+++ b/drivers/iommu/iommu.c
@@ -1113,6 +1113,8 @@ static int iommu_bus_notifier(struct notifier_block *nb,
case BUS_NOTIFY_UNBOUND_DRIVER:
group_action = IOMMU_GROUP_NOTIFY_UNBOUND_DRIVER;
break;
+   case BUS_NOTIFY_DRIVER_NOT_BOUND:
+   group_action = IOMMU_GROUP_NOTIFY_DRIVER_NOT_BOUND;
}
 
if (group_action)
diff --git a/include/linux/iommu.h b/include/linux/iommu.h
index 2e4de0deee53..54a0eb96da25 100644
--- a/include/linux/iommu.h
+++ b/include/linux/iommu.h
@@ -268,6 +268,7 @@ static inline void iommu_device_set_fwnode(struct 
iommu_device *iommu,
 #define IOMMU_GROUP_NOTIFY_BOUND_DRIVER4 /* Post Driver bind */
 #define IOMMU_GROUP_NOTIFY_UNBIND_DRIVER   5 /* Pre Driver unbind */
 #define IOMMU_GROUP_NOTIFY_UNBOUND_DRIVER  6 /* Post Driver unbind */
+#define IOMMU_GROUP_NOTIFY_DRIVER_NOT_BOUND7 /* Driver bind failed */
 
 extern int bus_set_iommu(struct bus_type *bus, const struct iommu_ops *ops);
 extern bool iommu_present(struct bus_type *bus);