Skip to contentSkip to conversation

remove warning from drivers/net/hp100.c (240-test12-pre7)

PATCH In review Rasmus Andersen 3 participants 6 messages Dec 8, 2000 – Dec 12, 2000 Network drivers

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 remove warning from drivers/net/hp100.c (240-test12-pre7)

Hi.

The following patch removes a 'defined but not used' warning from drivers/ new/hp100.c when compiling without CONFIG_PCI (240t12p3). It should apply cleanly.

drivers/net/hp100.c +2 -0
@@ -265,12 +265,14 @@
 
 #define HP100_EISA_IDS_SIZE	(sizeof(hp100_eisa_ids)/sizeof(struct hp100_eisa_id))
 
+#ifdef CONFIG_PCI
 static struct hp100_pci_id hp100_pci_ids[] = {
   { PCI_VENDOR_ID_HP, 		PCI_DEVICE_ID_HP_J2585A },
   { PCI_VENDOR_ID_HP,		PCI_DEVICE_ID_HP_J2585B },
   { PCI_VENDOR_ID_COMPEX,	PCI_DEVICE_ID_COMPEX_ENET100VG4 },
   { PCI_VENDOR_ID_COMPEX2,	PCI_DEVICE_ID_COMPEX2_100VG }
 };
+#endif
 
 #define HP100_PCI_IDS_SIZE	(sizeof(hp100_pci_ids)/sizeof(struct hp100_pci_id))
 
Signature · 9 lines
Regards,
        Rasmus([email protected])

We're going to turn this team around 360 degrees.
-Jason Kidd, upon his drafting to the Dallas Mavericks
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
#1 lore raw

Hi!

Quoted 3 lines

The following patch removes a 'defined but not used' warning from drivers/ new/hp100.c when compiling without CONFIG_PCI (240t12p3). It should apply cleanly.

I'd say that warning is more acceptable than #ifdef... In cases where warnings can be eliminating without ifdefs, that's okay, but this...

Pavel

Quoted 16 lines
drivers/net/hp100.c +2 -0
@@ -265,12 +265,14 @@
 
 #define HP100_EISA_IDS_SIZE	(sizeof(hp100_eisa_ids)/sizeof(struct hp100_eisa_id))
 
+#ifdef CONFIG_PCI
 static struct hp100_pci_id hp100_pci_ids[] = {
   { PCI_VENDOR_ID_HP, 		PCI_DEVICE_ID_HP_J2585A },
   { PCI_VENDOR_ID_HP,		PCI_DEVICE_ID_HP_J2585B },
   { PCI_VENDOR_ID_COMPEX,	PCI_DEVICE_ID_COMPEX_ENET100VG4 },
   { PCI_VENDOR_ID_COMPEX2,	PCI_DEVICE_ID_COMPEX2_100VG }
 };
+#endif
 
 #define HP100_PCI_IDS_SIZE	(sizeof(hp100_pci_ids)/sizeof(struct hp100_pci_id))
Signature · 6 lines
I'm [email protected]. "In my country we have almost anarchy and I don't care."
Panos Katsaloulis describing me w.r.t. patents at [email protected]
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
#2 lore raw
In reply to Rasmus Andersen

[Pavel Machek]

Quoted 2 lines

I'd say that warning is more acceptable than #ifdef... In cases where warnings can be eliminating without ifdefs, that's okay, but this...

In this case it is dead weight in the object file -- and for machines that can least afford it (CONFIG_PCI=n is mostly for the low end, right?).

Peter
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/

#3 lore raw
In reply to Rasmus Andersen
Quoted 8 lines · Peter Samuelson

[Pavel Machek]

Quoted 2 lines

I'd say that warning is more acceptable than #ifdef... In cases where warnings can be eliminating without ifdefs, that's okay, but this...

In this case it is dead weight in the object file -- and for machines that can least afford it (CONFIG_PCI=n is mostly for the low end, right?).

How about this patch? It moves the offending struct to the __init function where it is used and inside an existing #ifdef CONFIG_PCI. This would be up to the maintainer but since this is the only place the struct is used I think it is acceptable to move it from the top of the file.

Comments?

drivers/net/hp100.c +7 -7
@@ -265,13 +265,6 @@
 
 #define HP100_EISA_IDS_SIZE	(sizeof(hp100_eisa_ids)/sizeof(struct hp100_eisa_id))
 
-static struct hp100_pci_id hp100_pci_ids[] = {
-  { PCI_VENDOR_ID_HP, 		PCI_DEVICE_ID_HP_J2585A },
-  { PCI_VENDOR_ID_HP,		PCI_DEVICE_ID_HP_J2585B },
-  { PCI_VENDOR_ID_COMPEX,	PCI_DEVICE_ID_COMPEX_ENET100VG4 },
-  { PCI_VENDOR_ID_COMPEX2,	PCI_DEVICE_ID_COMPEX2_100VG }
-};
-
 #define HP100_PCI_IDS_SIZE	(sizeof(hp100_pci_ids)/sizeof(struct hp100_pci_id))
 
 static int hp100_rx_ratio = HP100_DEFAULT_RX_RATIO;
@@ -335,6 +328,13 @@
   int ioaddr = 0;
 #ifdef CONFIG_PCI
   int pci_start_index = 0;
+
+  static struct hp100_pci_id hp100_pci_ids[] = {
+	  { PCI_VENDOR_ID_HP, 		PCI_DEVICE_ID_HP_J2585A },
+	  { PCI_VENDOR_ID_HP,		PCI_DEVICE_ID_HP_J2585B },
+	  { PCI_VENDOR_ID_COMPEX,	PCI_DEVICE_ID_COMPEX_ENET100VG4 },
+	  { PCI_VENDOR_ID_COMPEX2,	PCI_DEVICE_ID_COMPEX2_100VG }
+  };
 #endif
 
 #ifdef HP100_DEBUG_B
Signature · 9 lines
Regards,
        Rasmus([email protected])

It's a recession when your neighbour loses his job; it's a depression 
when you lose yours. -- Harry S. Truman 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/
#4 lore raw
In reply to Rasmus Andersen

[Rasmus Andersen]

Quoted 2 lines

How about this patch? It moves the offending struct to the __init function where it is used and inside an existing #ifdef CONFIG_PCI.

Hmmmm, if you're messing around with the pci device table, why not just convert it to use new-style PCI init? This is fairly easy to do (I did one driver myself, and that *proves* it's easy). The main points:

1) convert the device table to a 'struct pci_device_id' and reference this struct with a call to MODULE_DEVICE_TABLE(my_struct)
2) create a 'struct pci_driver' function table, rearranging the driver housekeeping functions to fit this table
3) convert your PCI probe loop inn your init function to use pci_module_init(my_pci_driver_struct), which does the looping for you

Thanks to Adam Richter's hard work, there are lots of examples of drivers that have already been converted to this scheme. I don't remember if Adam purposely skipped hp100.c or if it was an oversight.

Peter
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/

#5 lore raw
In reply to Rasmus Andersen
Quoted 8 lines · Peter Samuelson

[Rasmus Andersen]

Quoted 2 lines

How about this patch? It moves the offending struct to the __init function where it is used and inside an existing #ifdef CONFIG_PCI.

Hmmmm, if you're messing around with the pci device table, why not just convert it to use new-style PCI init? This is fairly easy to do (I did one driver myself, and that *proves* it's easy). The main points:

I was looking into that regarding another driver anyway, so I'll try my hand at that. Expect some b0rken patches soon :)

Regards,
Rasmus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
Please read the FAQ at http://www.tux.org/lkml/