* [PATCH] ibmtr - get rid of MOD_INC/DEC
@ 2003-08-14 0:46 Stephen Hemminger
2003-08-15 3:57 ` David S. Miller
0 siblings, 1 reply; 4+ messages in thread
From: Stephen Hemminger @ 2003-08-14 0:46 UTC (permalink / raw)
To: Mike Phillips, David S. Miller; +Cc: linux-tr, netdev
With the new module system MOD_INC/MOD_DEC are no longer necessary.
Also changed to new module init/exit macros for function setup.
The module exit code can sleep, so calling schedule_timeout is better
than spinning.
Don't have real hardware, so I tested it by short circuiting the probe().
diff -Nru a/drivers/net/tokenring/ibmtr.c b/drivers/net/tokenring/ibmtr.c
--- a/drivers/net/tokenring/ibmtr.c Wed Aug 13 17:44:49 2003
+++ b/drivers/net/tokenring/ibmtr.c Wed Aug 13 17:44:49 2003
@@ -876,7 +876,6 @@
if (i==0) break;
if (ti->open_status == OPEN && ti->sap_status==OPEN) {
netif_start_queue(dev);
- MOD_INC_USE_COUNT;
DPRINTK("Adapter is up and running\n");
return 0;
}
@@ -1041,7 +1040,6 @@
netif_stop_queue(dev);
DPRINTK("Adapter is closed.\n");
- MOD_DEC_USE_COUNT;
return 0;
}
@@ -1918,7 +1916,7 @@
MODULE_PARM(irq, "1-" __MODULE_STRING(IBMTR_MAX_ADAPTERS) "i");
MODULE_PARM(mem, "1-" __MODULE_STRING(IBMTR_MAX_ADAPTERS) "i");
-int init_module(void)
+static int __init ibmtr_init(void)
{
int i;
int count=0;
@@ -1948,21 +1946,24 @@
if (count) return 0;
printk("ibmtr: register_netdev() returned non-zero.\n");
return -EIO;
-} /*init_module */
+}
+module_init(ibmtr_init);
-void cleanup_module(void)
+static void __exit ibmtr_cleanup(void)
{
- int i,j;
+ int i;
for (i = 0; i < IBMTR_MAX_ADAPTERS; i++){
if (!dev_ibmtr[i])
continue;
if (dev_ibmtr[i]->base_addr) {
outb(0,dev_ibmtr[i]->base_addr+ADAPTRESET);
- for(j=jiffies+TR_RST_TIME;
- time_before_eq(jiffies,j);) ;
+
+ schedule_timeout(TR_RST_TIME); /* wait 50ms */
+
outb(0,dev_ibmtr[i]->base_addr+ADAPTRESETREL);
}
+
unregister_netdev(dev_ibmtr[i]);
free_irq(dev_ibmtr[i]->irq, dev_ibmtr[i]);
release_region(dev_ibmtr[i]->base_addr, IBMTR_IO_EXTENT);
@@ -1978,4 +1979,5 @@
dev_ibmtr[i] = NULL;
}
}
-#endif /* MODULE */
+module_exit(ibmtr_cleanup);
+#endif
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] ibmtr - get rid of MOD_INC/DEC
2003-08-14 0:46 [PATCH] ibmtr - get rid of MOD_INC/DEC Stephen Hemminger
@ 2003-08-15 3:57 ` David S. Miller
2003-08-15 13:30 ` Jeff Garzik
0 siblings, 1 reply; 4+ messages in thread
From: David S. Miller @ 2003-08-15 3:57 UTC (permalink / raw)
To: Stephen Hemminger; +Cc: mikep, linux-tr, netdev
On Wed, 13 Aug 2003 17:46:58 -0700
Stephen Hemminger <shemminger@osdl.org> wrote:
> With the new module system MOD_INC/MOD_DEC are no longer necessary.
> Also changed to new module init/exit macros for function setup.
>
> The module exit code can sleep, so calling schedule_timeout is better
> than spinning.
Can't we lose the MODULE ifdefs too?
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] ibmtr - get rid of MOD_INC/DEC
2003-08-15 3:57 ` David S. Miller
@ 2003-08-15 13:30 ` Jeff Garzik
2003-08-16 14:38 ` David S. Miller
0 siblings, 1 reply; 4+ messages in thread
From: Jeff Garzik @ 2003-08-15 13:30 UTC (permalink / raw)
To: David S. Miller; +Cc: Stephen Hemminger, mikep, linux-tr, netdev
David S. Miller wrote:
> On Wed, 13 Aug 2003 17:46:58 -0700
> Stephen Hemminger <shemminger@osdl.org> wrote:
>
>
>>With the new module system MOD_INC/MOD_DEC are no longer necessary.
>>Also changed to new module init/exit macros for function setup.
>>
>>The module exit code can sleep, so calling schedule_timeout is better
>>than spinning.
>
>
> Can't we lose the MODULE ifdefs too?
Doubtful for ibmtr, which requires some of them for ibmtr_cs (which
#includes it).
Jeff
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] ibmtr - get rid of MOD_INC/DEC
2003-08-15 13:30 ` Jeff Garzik
@ 2003-08-16 14:38 ` David S. Miller
0 siblings, 0 replies; 4+ messages in thread
From: David S. Miller @ 2003-08-16 14:38 UTC (permalink / raw)
To: Jeff Garzik; +Cc: shemminger, mikep, linux-tr, netdev
On Fri, 15 Aug 2003 09:30:05 -0400
Jeff Garzik <jgarzik@pobox.com> wrote:
> David S. Miller wrote:
> > Can't we lose the MODULE ifdefs too?
>
> Doubtful for ibmtr, which requires some of them for ibmtr_cs (which
> #includes it).
Indeed.
Patch applied, thanks Stephen.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2003-08-16 14:38 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-08-14 0:46 [PATCH] ibmtr - get rid of MOD_INC/DEC Stephen Hemminger
2003-08-15 3:57 ` David S. Miller
2003-08-15 13:30 ` Jeff Garzik
2003-08-16 14:38 ` David S. Miller
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).