public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* ns558 pci/isa change
@ 2000-11-13 23:15 Pete Wyckoff
  2000-11-13 23:52 ` Jeff Garzik
  0 siblings, 1 reply; 2+ messages in thread
From: Pete Wyckoff @ 2000-11-13 23:15 UTC (permalink / raw)
  To: vojtech; +Cc: linux-kernel

My joystick stopped working at 2.4.0-test10 due to a patch to
drivers/char/joystick/ns558.c that moves pci probing ahead of
isa probing.

The problem is that pci_module_init can return -ENODEV into i,
which is then used to index the ISA portlist.  ISA probing assumes
that i is initialized to zero.

Trivial fix attached, with plenty of context.

		-- Pete

--- drivers/char/joystick/ns558.c.orig	Mon Nov 13 18:04:16 2000
+++ drivers/char/joystick/ns558.c	Mon Nov 13 18:11:41 2000
@@ -299,37 +299,38 @@
 deactivate:
 	if (dev->deactivate)
 		dev->deactivate(dev);
 	return next;
 }
 #endif
 
 int __init ns558_init(void)
 {
-	int i = 0;
+	int i;
 #ifdef NSS558_ISAPNP
 	struct pci_dev *dev = NULL;
 	struct pnp_devid *devid;
 #endif
 
 /*
  * Probe for PCI ports.  Always probe for PCI first,
  * it is the least-invasive probe.
  */
 
 	i = pci_module_init(&ns558_pci_driver);
 	if (i == 0)
 		have_pci_devices = 1;
 
 /*
  * Probe for ISA ports.
  */
 
+	i = 0;
 	while (ns558_isa_portlist[i]) 
 		ns558 = ns558_isa_probe(ns558_isa_portlist[i++], ns558);
 
 /*
  * Probe for PnP ports.
  */
 
 #ifdef NSS558_ISAPNP
 	for (devid = pnp_devids; devid->vendor; devid++) {
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

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

end of thread, other threads:[~2000-11-14  0:22 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2000-11-13 23:15 ns558 pci/isa change Pete Wyckoff
2000-11-13 23:52 ` Jeff Garzik

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox