netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC] [PATCH 2/3] tg3 netpoll hook
@ 2003-10-03  1:45 Matt Mackall
  2003-10-05  2:44 ` Jeff Garzik
  0 siblings, 1 reply; 6+ messages in thread
From: Matt Mackall @ 2003-10-03  1:45 UTC (permalink / raw)
  To: netdev; +Cc: Andrew Morton, Jeff Garzik

 l-mpm/drivers/net/tg3.c |   16 ++++++++++++++++
 1 files changed, 16 insertions(+)

diff -puN drivers/net/tg3.c~tg3-poll drivers/net/tg3.c
--- l/drivers/net/tg3.c~tg3-poll	2003-09-25 11:47:30.000000000 -0500
+++ l-mpm/drivers/net/tg3.c	2003-09-25 11:56:37.000000000 -0500
@@ -2475,6 +2475,15 @@ static irqreturn_t tg3_interrupt(int irq
 static int tg3_init_hw(struct tg3 *);
 static int tg3_halt(struct tg3 *);
 
+#ifdef HAVE_POLL_CONTROLLER
+static void tg3_poll_controller(struct net_device *dev)
+{
+	disable_irq(dev->irq);
+	tg3_interrupt (dev->irq, dev, NULL);
+	enable_irq(dev->irq);
+}
+#endif
+
 static void tg3_reset_task(void *_data)
 {
 	struct tg3 *tp = _data;
@@ -7482,6 +7491,10 @@ static struct pci_dev * __devinit tg3_fi
 	return peer;
 }
 
+#ifdef HAVE_POLL_CONTROLLER
+static void tg3_poll_controller(struct net_device *dev);
+#endif
+
 static int __devinit tg3_init_one(struct pci_dev *pdev,
 				  const struct pci_device_id *ent)
 {
@@ -7632,6 +7645,9 @@ static int __devinit tg3_init_one(struct
 	dev->watchdog_timeo = TG3_TX_TIMEOUT;
 	dev->change_mtu = tg3_change_mtu;
 	dev->irq = pdev->irq;
+#ifdef HAVE_POLL_CONTROLLER
+	dev->poll_controller = tg3_poll_controller;
+#endif
 
 	err = tg3_get_invariants(tp);
 	if (err) {

_


-- 
Matt Mackall : http://www.selenic.com : of or relating to the moon

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

* Re: [RFC] [PATCH 2/3] tg3 netpoll hook
  2003-10-03  1:45 [RFC] [PATCH 2/3] tg3 netpoll hook Matt Mackall
@ 2003-10-05  2:44 ` Jeff Garzik
  2003-10-05  2:55   ` Matt Mackall
  0 siblings, 1 reply; 6+ messages in thread
From: Jeff Garzik @ 2003-10-05  2:44 UTC (permalink / raw)
  To: Matt Mackall; +Cc: netdev, Andrew Morton

Matt Mackall wrote:
>  l-mpm/drivers/net/tg3.c |   16 ++++++++++++++++
>  1 files changed, 16 insertions(+)
> 
> diff -puN drivers/net/tg3.c~tg3-poll drivers/net/tg3.c
> --- l/drivers/net/tg3.c~tg3-poll	2003-09-25 11:47:30.000000000 -0500
> +++ l-mpm/drivers/net/tg3.c	2003-09-25 11:56:37.000000000 -0500
> @@ -2475,6 +2475,15 @@ static irqreturn_t tg3_interrupt(int irq
>  static int tg3_init_hw(struct tg3 *);
>  static int tg3_halt(struct tg3 *);
>  
> +#ifdef HAVE_POLL_CONTROLLER
> +static void tg3_poll_controller(struct net_device *dev)
> +{
> +	disable_irq(dev->irq);
> +	tg3_interrupt (dev->irq, dev, NULL);
> +	enable_irq(dev->irq);
> +}
> +#endif
> +
>  static void tg3_reset_task(void *_data)
>  {
>  	struct tg3 *tp = _data;
> @@ -7482,6 +7491,10 @@ static struct pci_dev * __devinit tg3_fi
>  	return peer;
>  }
>  
> +#ifdef HAVE_POLL_CONTROLLER
> +static void tg3_poll_controller(struct net_device *dev);
> +#endif

This prototype is pointless.


> @@ -7632,6 +7645,9 @@ static int __devinit tg3_init_one(struct
>  	dev->watchdog_timeo = TG3_TX_TIMEOUT;
>  	dev->change_mtu = tg3_change_mtu;
>  	dev->irq = pdev->irq;
> +#ifdef HAVE_POLL_CONTROLLER
> +	dev->poll_controller = tg3_poll_controller;
> +#endif
>  
>  	err = tg3_get_invariants(tp);
>  	if (err) {
> 
> _
> 
> 

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

* Re: [RFC] [PATCH 2/3] tg3 netpoll hook
  2003-10-05  2:44 ` Jeff Garzik
@ 2003-10-05  2:55   ` Matt Mackall
  2003-10-05  3:11     ` Jeff Garzik
  0 siblings, 1 reply; 6+ messages in thread
From: Matt Mackall @ 2003-10-05  2:55 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: netdev, Andrew Morton

On Sat, Oct 04, 2003 at 10:44:13PM -0400, Jeff Garzik wrote:
> Matt Mackall wrote:
> > l-mpm/drivers/net/tg3.c |   16 ++++++++++++++++
> > 1 files changed, 16 insertions(+)
> >
> >diff -puN drivers/net/tg3.c~tg3-poll drivers/net/tg3.c
> >+++ l-mpm/drivers/net/tg3.c	2003-09-25 11:56:37.000000000 -0500
> >@@ -2475,6 +2475,15 @@ static irqreturn_t tg3_interrupt(int irq
> > static int tg3_init_hw(struct tg3 *);
> > static int tg3_halt(struct tg3 *);
> > 
> >+#ifdef HAVE_POLL_CONTROLLER
> >+static void tg3_poll_controller(struct net_device *dev)
> >+{
> >+	disable_irq(dev->irq);
> >+	tg3_interrupt (dev->irq, dev, NULL);
> >+	enable_irq(dev->irq);
> >+}
> >+#endif
> >+
> > static void tg3_reset_task(void *_data)
> > {
> > 	struct tg3 *tp = _data;
> >@@ -7482,6 +7491,10 @@ static struct pci_dev * __devinit tg3_fi
> > 	return peer;
> > }
> > 
> >+#ifdef HAVE_POLL_CONTROLLER
> >+static void tg3_poll_controller(struct net_device *dev);
> >+#endif
> 
> This prototype is pointless.

Indeed. 

Have an opinion on s/->poll_controller/->netpoll/?

-- 
Matt Mackall : http://www.selenic.com : of or relating to the moon

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

* Re: [RFC] [PATCH 2/3] tg3 netpoll hook
  2003-10-05  2:55   ` Matt Mackall
@ 2003-10-05  3:11     ` Jeff Garzik
  2003-10-05  3:16       ` Keith Owens
  0 siblings, 1 reply; 6+ messages in thread
From: Jeff Garzik @ 2003-10-05  3:11 UTC (permalink / raw)
  To: Matt Mackall; +Cc: netdev, Andrew Morton

Matt Mackall wrote:
> Have an opinion on s/->poll_controller/->netpoll/?


I have an opinion, yes :)  which I despise myself for holding...

I don't like either name, but don't have any better suggestions either, 
besides something extremely verbose like ->process_hw_events().

"poll_controller" is annoying because (a) it's way too close to NAPI, 
but (b) it's a reasonably accurate description of what it does.

I think "netpoll" is even worse...  It describes who calls it, not what 
it does.

	Jeff

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

* Re: [RFC] [PATCH 2/3] tg3 netpoll hook
  2003-10-05  3:11     ` Jeff Garzik
@ 2003-10-05  3:16       ` Keith Owens
  2003-10-05  3:21         ` Jeff Garzik
  0 siblings, 1 reply; 6+ messages in thread
From: Keith Owens @ 2003-10-05  3:16 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: Matt Mackall, netdev, Andrew Morton

On Sat, 04 Oct 2003 23:11:27 -0400, 
Jeff Garzik <jgarzik@pobox.com> wrote:
>Matt Mackall wrote:
>> Have an opinion on s/->poll_controller/->netpoll/?
>I don't like either name, but don't have any better suggestions either, 
>besides something extremely verbose like ->process_hw_events().
>
>"poll_controller" is annoying because (a) it's way too close to NAPI, 
>but (b) it's a reasonably accurate description of what it does.
>
>I think "netpoll" is even worse...  It describes who calls it, not what 
>it does.

->polled_io ?

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

* Re: [RFC] [PATCH 2/3] tg3 netpoll hook
  2003-10-05  3:16       ` Keith Owens
@ 2003-10-05  3:21         ` Jeff Garzik
  0 siblings, 0 replies; 6+ messages in thread
From: Jeff Garzik @ 2003-10-05  3:21 UTC (permalink / raw)
  To: Keith Owens; +Cc: Matt Mackall, netdev, Andrew Morton

Keith Owens wrote:
> On Sat, 04 Oct 2003 23:11:27 -0400, 
> Jeff Garzik <jgarzik@pobox.com> wrote:
> 
>>Matt Mackall wrote:
>>
>>>Have an opinion on s/->poll_controller/->netpoll/?
>>
>>I don't like either name, but don't have any better suggestions either, 
>>besides something extremely verbose like ->process_hw_events().
>>
>>"poll_controller" is annoying because (a) it's way too close to NAPI, 
>>but (b) it's a reasonably accurate description of what it does.
>>
>>I think "netpoll" is even worse...  It describes who calls it, not what 
>>it does.
> 
> 
> ->polled_io ?


Not too bad...   Better than any suggestion of mine, at any rate :)

	Jeff

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

end of thread, other threads:[~2003-10-05  3:21 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-10-03  1:45 [RFC] [PATCH 2/3] tg3 netpoll hook Matt Mackall
2003-10-05  2:44 ` Jeff Garzik
2003-10-05  2:55   ` Matt Mackall
2003-10-05  3:11     ` Jeff Garzik
2003-10-05  3:16       ` Keith Owens
2003-10-05  3:21         ` Jeff Garzik

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).