Skip to contentSkip to conversation

usb/xhci: unify parameter of xhci_msi_irq

PATCH In review Alex Shi 4 participants 14 messages Mar 15, 2012 – Aug 26, 2012

Subsystems (2)
lore
Share & tools
lore

Alex Shi

author
#0 lore raw

PATCH 1/1 usb/xhci: unify parameter of xhci_msi_irq

According to Felipe and Alan's comments the second parameter of irq handler should be 'void *' not a specific structure pointer. So change it.

---
 drivers/usb/host/xhci-ring.c |    2 +-
 drivers/usb/host/xhci.c      |    4 ++--
 drivers/usb/host/xhci.h      |    2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)
drivers/usb/host/xhci-ring.c +1 -1
index b62037b..c5caad3 100644
@@ -2396,7 +2396,7 @@ hw_died:
 	return IRQ_HANDLED;
 }
 
-irqreturn_t xhci_msi_irq(int irq, struct usb_hcd *hcd)
+irqreturn_t xhci_msi_irq(int irq, void *hcd)
 {
 	return xhci_irq(hcd);
 }
drivers/usb/host/xhci.c +2 -2
index c939f5f..84706cb 100644
@@ -204,7 +204,7 @@ static int xhci_setup_msi(struct xhci_hcd *xhci)
 		return ret;
 	}
 
-	ret = request_irq(pdev->irq, (irq_handler_t)xhci_msi_irq,
+	ret = request_irq(pdev->irq, xhci_msi_irq,
 				0, "xhci_hcd", xhci_to_hcd(xhci));
 	if (ret) {
 		xhci_dbg(xhci, "disable MSI interrupt\n");
@@ -276,7 +276,7 @@ static int xhci_setup_msix(struct xhci_hcd *xhci)
 
 	for (i = 0; i < xhci->msix_count; i++) {
 		ret = request_irq(xhci->msix_entries[i].vector,
-				(irq_handler_t)xhci_msi_irq,
+				xhci_msi_irq,
 				0, "xhci_hcd", xhci_to_hcd(xhci));
 		if (ret)
 			goto disable_msix;
drivers/usb/host/xhci.h +1 -1
index fb99c83..d82cbb6 100644
@@ -1669,7 +1669,7 @@ int xhci_resume(struct xhci_hcd *xhci, bool hibernated);
 
 int xhci_get_frame(struct usb_hcd *hcd);
 irqreturn_t xhci_irq(struct usb_hcd *hcd);
-irqreturn_t xhci_msi_irq(int irq, struct usb_hcd *hcd);
+irqreturn_t xhci_msi_irq(int irq, void *hcd);
 int xhci_alloc_dev(struct usb_hcd *hcd, struct usb_device *udev);
 void xhci_free_dev(struct usb_hcd *hcd, struct usb_device *udev);
 int xhci_alloc_tt_info(struct xhci_hcd *xhci,
Signature · 1 line
1.6.3.3
Acked-by on v1 1/1
#1 lore raw
Quoted 6 lines · Alex Shi

According to Felipe and Alan's comments the second parameter of irq handler should be 'void *' not a specific structure pointer. So change it.

after a quick look:

Quoted 59 lines
---
 drivers/usb/host/xhci-ring.c |    2 +-
 drivers/usb/host/xhci.c      |    4 ++--
 drivers/usb/host/xhci.h      |    2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)
drivers/usb/host/xhci-ring.c +1 -1
index b62037b..c5caad3 100644
@@ -2396,7 +2396,7 @@ hw_died:
 	return IRQ_HANDLED;
 }
 
-irqreturn_t xhci_msi_irq(int irq, struct usb_hcd *hcd)
+irqreturn_t xhci_msi_irq(int irq, void *hcd)
 {
 	return xhci_irq(hcd);
 }
drivers/usb/host/xhci.c +2 -2
index c939f5f..84706cb 100644
@@ -204,7 +204,7 @@ static int xhci_setup_msi(struct xhci_hcd *xhci)
 		return ret;
 	}
 
-	ret = request_irq(pdev->irq, (irq_handler_t)xhci_msi_irq,
+	ret = request_irq(pdev->irq, xhci_msi_irq,
 				0, "xhci_hcd", xhci_to_hcd(xhci));
 	if (ret) {
 		xhci_dbg(xhci, "disable MSI interrupt\n");
@@ -276,7 +276,7 @@ static int xhci_setup_msix(struct xhci_hcd *xhci)
 
 	for (i = 0; i < xhci->msix_count; i++) {
 		ret = request_irq(xhci->msix_entries[i].vector,
-				(irq_handler_t)xhci_msi_irq,
+				xhci_msi_irq,
 				0, "xhci_hcd", xhci_to_hcd(xhci));
 		if (ret)
 			goto disable_msix;
drivers/usb/host/xhci.h +1 -1
index fb99c83..d82cbb6 100644
@@ -1669,7 +1669,7 @@ int xhci_resume(struct xhci_hcd *xhci, bool hibernated);
 
 int xhci_get_frame(struct usb_hcd *hcd);
 irqreturn_t xhci_irq(struct usb_hcd *hcd);
-irqreturn_t xhci_msi_irq(int irq, struct usb_hcd *hcd);
+irqreturn_t xhci_msi_irq(int irq, void *hcd);
 int xhci_alloc_dev(struct usb_hcd *hcd, struct usb_device *udev);
 void xhci_free_dev(struct usb_hcd *hcd, struct usb_device *udev);
 int xhci_alloc_tt_info(struct xhci_hcd *xhci,
Signature · 1 line
1.6.3.3
Signature · 1 line
balbi
maintainer
#2 lore raw
In reply to Alex Shi
Quoted 11 lines · Alex Shi

According to Felipe and Alan's comments the second parameter of irq handler should be 'void *' not a specific structure pointer. So change it.

---
 drivers/usb/host/xhci-ring.c |    2 +-
 drivers/usb/host/xhci.c      |    4 ++--
 drivers/usb/host/xhci.h      |    2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

Is this needed in my -next tree now? Or is it something for later?

Any reason you did not put Sarah on the To: line here? She's the one that needs to ack it before I can accept it.

thanks,

greg k-h

author
#3 lore raw
Quoted 6 lines · gregkh
Quoted 5 lines · Alex Shi

According to Felipe and Alan's comments the second parameter of irq handler should be 'void *' not a specific structure pointer. So change it.

Quoted 8 lines
Quoted 6 lines
---
 drivers/usb/host/xhci-ring.c |    2 +-
 drivers/usb/host/xhci.c      |    4 ++--
 drivers/usb/host/xhci.h      |    2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

Is this needed in my -next tree now? Or is it something for later?

Appreciate if it can be in -next tree. :)

Quoted 3 lines

Any reason you did not put Sarah on the To: line here? She's the one that needs to ack it before I can accept it.

Sarah, would you like to give some comments here?

Thanks!

Quoted 4 lines

thanks,

greg k-h

#4 lore raw
Quoted 18 lines · Alex Shi
Quoted 6 lines · gregkh
Quoted 5 lines · Alex Shi

According to Felipe and Alan's comments the second parameter of irq handler should be 'void *' not a specific structure pointer. So change it.

Quoted 8 lines
Quoted 6 lines
---
 drivers/usb/host/xhci-ring.c |    2 +-
 drivers/usb/host/xhci.c      |    4 ++--
 drivers/usb/host/xhci.h      |    2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

Is this needed in my -next tree now? Or is it something for later?

Quoted 8 lines

Appreciate if it can be in -next tree. :)

Quoted 3 lines

Any reason you did not put Sarah on the To: line here? She's the one that needs to ack it before I can accept it.

Sarah, would you like to give some comments here?

Looks fine. I'll send a pull request to Greg with this patch after I verify it doesn't generate new warnings.

Sarah Sharp

author
#5 lore raw
Quoted 7 lines
Quoted 2 lines

Sarah, would you like to give some comments here?

Looks fine. I'll send a pull request to Greg with this patch after I verify it doesn't generate new warnings.

Sarah Sharp

Thanks!

author
#6 lore raw
In reply to Sarah Sharp
Quoted 7 lines
Quoted 7 lines
Quoted 2 lines

Is this needed in my -next tree now? Or is it something for later?

Appreciate if it can be in -next tree. :)

Quoted 1 line
Quoted 9 lines
Quoted 5 lines
Quoted 2 lines

Any reason you did not put Sarah on the To: line here? She's the one that needs to ack it before I can accept it.

Sarah, would you like to give some comments here?

Looks fine. I'll send a pull request to Greg with this patch after I verify it doesn't generate new warnings.

Sarah, any further comments for this patch? :)

author Acked-by Felipe Balbi
#7 lore raw
Quoted 11 lines · Alex Shi
Quoted 11 lines
Quoted 11 lines
Quoted 2 lines

Is this needed in my -next tree now? Or is it something for later?

Appreciate if it can be in -next tree. :)

Quoted 3 lines

Any reason you did not put Sarah on the To: line here? She's the one that needs to ack it before I can accept it.

Quoted 8 lines
Quoted 5 lines
Quoted 1 line

Sarah, would you like to give some comments here?

Looks fine. I'll send a pull request to Greg with this patch after I verify it doesn't generate new warnings.

Sarah, any further comments for this patch? :)

Just try on 3.5-rc2 kernel, find it still works. Sarah, do you mind to give some comments for this?

-------------

Quoted 1 line

From 6ae1b9e71f9b14be5774ae9c1b4cf57cd4e747ac Mon Sep 17 00:00:00 2001

From: Alex Shi <[email protected]>
Date: Mon, 11 Jun 2012 15:10:18 +0800
Subject: [PATCH] usb/xhci: unify parameter of xhci_msi_irq

According to Felipe and Alan's comments the second parameter of irq handler should be 'void *' not a specific structure pointer. So fix it.

---
 drivers/usb/host/xhci-ring.c |    2 +-
 drivers/usb/host/xhci.c      |    4 ++--
 drivers/usb/host/xhci.h      |    2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)
drivers/usb/host/xhci-ring.c +1 -1
index 23b4aef..cc8a52f 100644
@@ -2479,7 +2479,7 @@ hw_died:
 	return IRQ_HANDLED;
 }
 
-irqreturn_t xhci_msi_irq(int irq, struct usb_hcd *hcd)
+irqreturn_t xhci_msi_irq(int irq, void *hcd)
 {
 	return xhci_irq(hcd);
 }
drivers/usb/host/xhci.c +2 -2
index afdc73e..f7d40c1 100644
@@ -215,7 +215,7 @@ static int xhci_setup_msi(struct xhci_hcd *xhci)
 		return ret;
 	}
 
-	ret = request_irq(pdev->irq, (irq_handler_t)xhci_msi_irq,
+	ret = request_irq(pdev->irq, xhci_msi_irq,
 				0, "xhci_hcd", xhci_to_hcd(xhci));
 	if (ret) {
 		xhci_dbg(xhci, "disable MSI interrupt\n");
@@ -287,7 +287,7 @@ static int xhci_setup_msix(struct xhci_hcd *xhci)
 
 	for (i = 0; i < xhci->msix_count; i++) {
 		ret = request_irq(xhci->msix_entries[i].vector,
-				(irq_handler_t)xhci_msi_irq,
+				xhci_msi_irq,
 				0, "xhci_hcd", xhci_to_hcd(xhci));
 		if (ret)
 			goto disable_msix;
drivers/usb/host/xhci.h +1 -1
index de3d6e3..737ef54 100644
@@ -1710,7 +1710,7 @@ int xhci_resume(struct xhci_hcd *xhci, bool hibernated);
 
 int xhci_get_frame(struct usb_hcd *hcd);
 irqreturn_t xhci_irq(struct usb_hcd *hcd);
-irqreturn_t xhci_msi_irq(int irq, struct usb_hcd *hcd);
+irqreturn_t xhci_msi_irq(int irq, void *hcd);
 int xhci_alloc_dev(struct usb_hcd *hcd, struct usb_device *udev);
 void xhci_free_dev(struct usb_hcd *hcd, struct usb_device *udev);
 int xhci_alloc_tt_info(struct xhci_hcd *xhci,
Signature · 1 line
1.7.5.4
#8 lore raw

Hi Alex,

This got lost in the 3.5 push, but I think it's a good candidate for 3.6. I think Greg is accepting 3.6 patches now, and I'll send this off to him.

Sarah Sharp

Quoted 100 lines · Alex Shi
Quoted 11 lines · Alex Shi
Quoted 11 lines
Quoted 11 lines
Quoted 2 lines

Is this needed in my -next tree now? Or is it something for later?

Appreciate if it can be in -next tree. :)

Quoted 3 lines

Any reason you did not put Sarah on the To: line here? She's the one that needs to ack it before I can accept it.

Quoted 8 lines
Quoted 5 lines
Quoted 1 line

Sarah, would you like to give some comments here?

Looks fine. I'll send a pull request to Greg with this patch after I verify it doesn't generate new warnings.

Sarah, any further comments for this patch? :)

Just try on 3.5-rc2 kernel, find it still works. Sarah, do you mind to give some comments for this?

-------------

From 6ae1b9e71f9b14be5774ae9c1b4cf57cd4e747ac Mon Sep 17 00:00:00 2001
From: Alex Shi <[email protected]>
Date: Mon, 11 Jun 2012 15:10:18 +0800
Subject: [PATCH] usb/xhci: unify parameter of xhci_msi_irq

According to Felipe and Alan's comments the second parameter of irq handler should be 'void *' not a specific structure pointer. So fix it.

---
 drivers/usb/host/xhci-ring.c |    2 +-
 drivers/usb/host/xhci.c      |    4 ++--
 drivers/usb/host/xhci.h      |    2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)
drivers/usb/host/xhci-ring.c +1 -1
index 23b4aef..cc8a52f 100644
@@ -2479,7 +2479,7 @@ hw_died:
 	return IRQ_HANDLED;
 }
 
-irqreturn_t xhci_msi_irq(int irq, struct usb_hcd *hcd)
+irqreturn_t xhci_msi_irq(int irq, void *hcd)
 {
 	return xhci_irq(hcd);
 }
drivers/usb/host/xhci.c +2 -2
index afdc73e..f7d40c1 100644
@@ -215,7 +215,7 @@ static int xhci_setup_msi(struct xhci_hcd *xhci)
 		return ret;
 	}
 
-	ret = request_irq(pdev->irq, (irq_handler_t)xhci_msi_irq,
+	ret = request_irq(pdev->irq, xhci_msi_irq,
 				0, "xhci_hcd", xhci_to_hcd(xhci));
 	if (ret) {
 		xhci_dbg(xhci, "disable MSI interrupt\n");
@@ -287,7 +287,7 @@ static int xhci_setup_msix(struct xhci_hcd *xhci)
 
 	for (i = 0; i < xhci->msix_count; i++) {
 		ret = request_irq(xhci->msix_entries[i].vector,
-				(irq_handler_t)xhci_msi_irq,
+				xhci_msi_irq,
 				0, "xhci_hcd", xhci_to_hcd(xhci));
 		if (ret)
 			goto disable_msix;
drivers/usb/host/xhci.h +1 -1
index de3d6e3..737ef54 100644
@@ -1710,7 +1710,7 @@ int xhci_resume(struct xhci_hcd *xhci, bool hibernated);
 
 int xhci_get_frame(struct usb_hcd *hcd);
 irqreturn_t xhci_irq(struct usb_hcd *hcd);
-irqreturn_t xhci_msi_irq(int irq, struct usb_hcd *hcd);
+irqreturn_t xhci_msi_irq(int irq, void *hcd);
 int xhci_alloc_dev(struct usb_hcd *hcd, struct usb_device *udev);
 void xhci_free_dev(struct usb_hcd *hcd, struct usb_device *udev);
 int xhci_alloc_tt_info(struct xhci_hcd *xhci,
Signature · 1 line
1.7.5.4
maintainer
#9 lore raw
Quoted 5 lines · Sarah Sharp

Hi Alex,

This got lost in the 3.5 push, but I think it's a good candidate for 3.6. I think Greg is accepting 3.6 patches now, and I'll send this off to him.

Yes, I am taking 3.6 stuff now. In the future, once -rc1 is out, I can take patches for the next release at that point in time.

greg k-h

author
#10 lore raw
Quoted 9 lines · gregkh
Quoted 5 lines · Sarah Sharp

Hi Alex,

This got lost in the 3.5 push, but I think it's a good candidate for 3.6. I think Greg is accepting 3.6 patches now, and I'll send this off to him.

Yes, I am taking 3.6 stuff now. In the future, once -rc1 is out, I can take patches for the next release at that point in time.

I see. Thanks all.

Quoted 2 lines

greg k-h

author
#11 lore raw
In reply to gregkh
Quoted 12 lines · gregkh
Quoted 5 lines · Sarah Sharp

Hi Alex,

This got lost in the 3.5 push, but I think it's a good candidate for 3.6. I think Greg is accepting 3.6 patches now, and I'll send this off to him.

Yes, I am taking 3.6 stuff now. In the future, once -rc1 is out, I can take patches for the next release at that point in time.

greg k-h

Didn't find the patch in upstream 3.6-rc, but it is still workable for upstream kernel.
So, was you just going to apply it on 3.7 kernel? or just forget it?

Thanks
Alex

#12 lore raw
Quoted 12 lines · Alex Shi
Quoted 10 lines · gregkh
Quoted 5 lines · Sarah Sharp

Hi Alex,

This got lost in the 3.5 push, but I think it's a good candidate for 3.6. I think Greg is accepting 3.6 patches now, and I'll send this off to him.

Yes, I am taking 3.6 stuff now. In the future, once -rc1 is out, I can take patches for the next release at that point in time.

Quoted 7 lines
Quoted 2 lines

greg k-h

Didn't find the patch in upstream 3.6-rc, but it is still workable for upstream kernel.
So, was you just going to apply it on 3.7 kernel? or just forget it?

Hi Alex,

I am human, and trying my human best to keep up as a maintainer. Bug fixes and big features take priority over the small improvements, and I'm sorry that your patch (and other patches) have fallen by the wayside. It is not personal, I simply cannot be perfect.

I will be returning to full maintainership duties after the various Linux conferences next week, and I will do my best to get your patch merged.

Sarah Sharp

author
#13 lore raw
Quoted 23 lines · Sarah Sharp
Quoted 12 lines · Alex Shi
Quoted 10 lines · gregkh
Quoted 5 lines · Sarah Sharp

Hi Alex,

This got lost in the 3.5 push, but I think it's a good candidate for 3.6. I think Greg is accepting 3.6 patches now, and I'll send this off to him.

Yes, I am taking 3.6 stuff now. In the future, once -rc1 is out, I can take patches for the next release at that point in time.

Quoted 7 lines
Quoted 2 lines

greg k-h

Didn't find the patch in upstream 3.6-rc, but it is still workable for upstream kernel.
So, was you just going to apply it on 3.7 kernel? or just forget it?

Hi Alex,

Quoted 8 lines

I am human, and trying my human best to keep up as a maintainer. Bug fixes and big features take priority over the small improvements, and I'm sorry that your patch (and other patches) have fallen by the wayside. It is not personal, I simply cannot be perfect.

I will be returning to full maintainership duties after the various Linux conferences next week, and I will do my best to get your patch merged.

Thanks for your response, and pick up this small patch.

I am sorry, if you thought I want press you on a such small issue. Actually, I just went to have a kindly reminder.

Thanks again for your consideration and maintain job!

Quoted 2 lines

Sarah Sharp

Signature · 2 lines
Thanks
    Alex