Skip to contentSkip to conversation

drivers/ieee1394/: schedule unused EXPORT_SYMBOL's for removal (fwd)

PATCH In review Adrian Bunk 4 participants 13 messages Jul 3, 2005 – Jul 9, 2005 Documentation

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 drivers/ieee1394/: schedule unused EXPORT_SYMBOL's for removal (fwd)

This patch I sent on 13 May 2005 is still not in Linus' tree, and now it's July.

What shall I do?
- resend this patch with the removal date set to August or
- send a patch to remove these symbols

cu
Adrian

<-- snip -->

This patch schedules unused EXPORT_SYMBOL's for removal.

---

 Documentation/feature-removal-schedule.txt |   21 ++++++++++++++
 drivers/ieee1394/ieee1394_core.c           |   31 +++++++++++++++++++++
 2 files changed, 52 insertions(+)
Documentation/feature-removal-schedule.txt renamed from Documentation/feature-removal-schedule.txt.old +21 -0
@@ -93,0 +94,21 @@
+
+---------------------------
+
+What:	remove the following ieee1394 EXPORT_SYMBOL's:
+	- hpsb_send_phy_config
+	- hpsb_send_packet_and_wait
+	- highlevel_add_host
+	- highlevel_remove_host
+	- nodemgr_for_each_host
+	- csr1212_create_csr
+	- csr1212_init_local_csr
+	- csr1212_new_immediate
+	- csr1212_associate_keyval
+	- csr1212_new_string_descriptor_leaf
+	- csr1212_destroy_csr
+	- csr1212_generate_csr_image
+	- csr1212_parse_csr
+When:	July 2005
+Files:	drivers/ieee1394/ieee1394_core.c
+Why:	No modular usage in the kernel.
+Who:	Adrian Bunk <[email protected]>
drivers/ieee1394/ieee1394_core.c renamed from drivers/ieee1394/ieee1394_core.c.old +31 -0
@@ -1226,7 +1226,13 @@
 EXPORT_SYMBOL(hpsb_alloc_packet);
 EXPORT_SYMBOL(hpsb_free_packet);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(hpsb_send_phy_config);
+
 EXPORT_SYMBOL(hpsb_send_packet);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(hpsb_send_packet_and_wait);
+
 EXPORT_SYMBOL(hpsb_reset_bus);
 EXPORT_SYMBOL(hpsb_bus_reset);
@@ -1265,6 +1271,11 @@
 EXPORT_SYMBOL(hpsb_get_hostinfo_bykey);
 EXPORT_SYMBOL(hpsb_set_hostinfo);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(highlevel_add_host);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(highlevel_remove_host);
+
 EXPORT_SYMBOL(highlevel_host_reset);
 
@@ -1275,4 +1286,6 @@
 EXPORT_SYMBOL(hpsb_unregister_protocol);
 EXPORT_SYMBOL(ieee1394_bus_type);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(nodemgr_for_each_host);
 
@@ -1312,18 +1325,36 @@
 
 /** csr1212.c **/
+
+/* EXPORT_SYMBOLs scheduled for removal */
 EXPORT_SYMBOL(csr1212_create_csr);
 EXPORT_SYMBOL(csr1212_init_local_csr);
 EXPORT_SYMBOL(csr1212_new_immediate);
+
 EXPORT_SYMBOL(csr1212_new_directory);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_associate_keyval);
+
 EXPORT_SYMBOL(csr1212_attach_keyval_to_directory);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_new_string_descriptor_leaf);
+
 EXPORT_SYMBOL(csr1212_detach_keyval_from_directory);
 EXPORT_SYMBOL(csr1212_release_keyval);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_destroy_csr);
+
 EXPORT_SYMBOL(csr1212_read);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_generate_csr_image);
+
 EXPORT_SYMBOL(csr1212_parse_keyval);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_parse_csr);
+
 EXPORT_SYMBOL(_csr1212_read_keyval);
 EXPORT_SYMBOL(_csr1212_destroy_keyval);

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

----- End forwarded message -----

cu
Adrian

Signature · 4 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed
#1 lore raw
Quoted 2 lines · Adrian Bunk

This patch I sent on 13 May 2005 is still not in Linus' tree, and now it's July.

Sorry, I missed the original thread. Feel free to CC me in future.

Quoted 2 lines

What shall I do?
- resend this patch with the removal date set to August or

That should be fine. I'll watch for it this time. August isn't much time though; isn't the "standard" 6 months to a year?

Cheers,
Jody

Quoted 143 lines

- send a patch to remove these symbols

cu
Adrian

<-- snip -->

This patch schedules unused EXPORT_SYMBOL's for removal.

---

 Documentation/feature-removal-schedule.txt |   21 ++++++++++++++
 drivers/ieee1394/ieee1394_core.c           |   31 +++++++++++++++++++++
 2 files changed, 52 insertions(+)
Documentation/feature-removal-schedule.txt renamed from Documentation/feature-removal-schedule.txt.old +21 -0
@@ -93,0 +94,21 @@
+
+---------------------------
+
+What:	remove the following ieee1394 EXPORT_SYMBOL's:
+	- hpsb_send_phy_config
+	- hpsb_send_packet_and_wait
+	- highlevel_add_host
+	- highlevel_remove_host
+	- nodemgr_for_each_host
+	- csr1212_create_csr
+	- csr1212_init_local_csr
+	- csr1212_new_immediate
+	- csr1212_associate_keyval
+	- csr1212_new_string_descriptor_leaf
+	- csr1212_destroy_csr
+	- csr1212_generate_csr_image
+	- csr1212_parse_csr
+When:	July 2005
+Files:	drivers/ieee1394/ieee1394_core.c
+Why:	No modular usage in the kernel.
+Who:	Adrian Bunk <[email protected]>
drivers/ieee1394/ieee1394_core.c renamed from drivers/ieee1394/ieee1394_core.c.old +31 -1
@@ -1226,7 +1226,13 @@
 EXPORT_SYMBOL(hpsb_alloc_packet);
 EXPORT_SYMBOL(hpsb_free_packet);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(hpsb_send_phy_config);
+
 EXPORT_SYMBOL(hpsb_send_packet);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(hpsb_send_packet_and_wait);
+
 EXPORT_SYMBOL(hpsb_reset_bus);
 EXPORT_SYMBOL(hpsb_bus_reset);
@@ -1265,6 +1271,11 @@
 EXPORT_SYMBOL(hpsb_get_hostinfo_bykey);
 EXPORT_SYMBOL(hpsb_set_hostinfo);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(highlevel_add_host);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(highlevel_remove_host);
+
 EXPORT_SYMBOL(highlevel_host_reset);
 
@@ -1275,4 +1286,6 @@
 EXPORT_SYMBOL(hpsb_unregister_protocol);
 EXPORT_SYMBOL(ieee1394_bus_type);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(nodemgr_for_each_host);
 
@@ -1312,18 +1325,36 @@
 
 /** csr1212.c **/
+
+/* EXPORT_SYMBOLs scheduled for removal */
 EXPORT_SYMBOL(csr1212_create_csr);
 EXPORT_SYMBOL(csr1212_init_local_csr);
 EXPORT_SYMBOL(csr1212_new_immediate);
+
 EXPORT_SYMBOL(csr1212_new_directory);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_associate_keyval);
+
 EXPORT_SYMBOL(csr1212_attach_keyval_to_directory);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_new_string_descriptor_leaf);
+
 EXPORT_SYMBOL(csr1212_detach_keyval_from_directory);
 EXPORT_SYMBOL(csr1212_release_keyval);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_destroy_csr);
+
 EXPORT_SYMBOL(csr1212_read);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_generate_csr_image);
+
 EXPORT_SYMBOL(csr1212_parse_keyval);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_parse_csr);
+
 EXPORT_SYMBOL(_csr1212_read_keyval);
 EXPORT_SYMBOL(_csr1212_destroy_keyval);
 
-

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

----- End forwarded message -----

cu
Adrian

Signature · 15 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed



-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
_______________________________________________
mailing list [email protected]
https://lists.sourceforge.net/lists/listinfo/linux1394-devel
#2 lore raw
Quoted 6 lines · Jody McIntyre
Quoted 2 lines · Adrian Bunk

What shall I do?
- resend this patch with the removal date set to August or

That should be fine. I'll watch for it this time. August isn't much time though; isn't the "standard" 6 months to a year?

August is fine; it's our sloppiness that the remove announcement did not go in earlier. People who run external projects that use such symbols might have had forewarning by the previous discussion rounds on linux1394-devel.

Quoted 6 lines
Quoted 6 lines
Documentation/feature-removal-schedule.txt renamed from Documentation/feature-removal-schedule.txt.old +6 -0
+What:	remove the following ieee1394 EXPORT_SYMBOL's:
+	- hpsb_send_phy_config
+	- hpsb_send_packet_and_wait
+	- highlevel_add_host
+	- highlevel_remove_host
+	- nodemgr_for_each_host
Quoted 8 lines

Documentation/feature-removal-schedule.txt line 110

Quoted 8 lines
Documentation/feature-removal-schedule.txt renamed from Documentation/feature-removal-schedule.txt.old +8 -0
+	- csr1212_create_csr
+	- csr1212_init_local_csr
+	- csr1212_new_immediate
+	- csr1212_associate_keyval
+	- csr1212_new_string_descriptor_leaf
+	- csr1212_destroy_csr
+	- csr1212_generate_csr_image
+	- csr1212_parse_csr

Now that we are at it, the following EXPORT_SYMBOLs should be removed too...

	_csr1212_read_keyval
	_csr1212_destroy_keyval
Quoted 2 lines

Documentation/feature-removal-schedule.txt line 113

Quoted 2 lines
Documentation/feature-removal-schedule.txt renamed from Documentation/feature-removal-schedule.txt.old +2 -0
+Files:	drivers/ieee1394/ieee1394_core.c
+Why:	No modular usage in the kernel.

...at the same place and for the same reason.

Signature · 3 lines
Stefan Richter
-=====-=-=-= -=== --===
http://arcgraph.de/sr/
#3 lore raw

PATCH 1/1 drivers/ieee1394/: schedule unused EXPORT_SYMBOL's for removal

Quoted 5 lines · Stefan Richter
Quoted 4 lines · Jody McIntyre
Quoted 2 lines · Adrian Bunk

What shall I do?
- resend this patch with the removal date set to August or

Quoted 7 lines
Quoted 2 lines

That should be fine. I'll watch for it this time. August isn't much time though; isn't the "standard" 6 months to a year?

August is fine; it's our sloppiness that the remove announcement did not go in earlier. People who run external projects that use such symbols might have had forewarning by the previous discussion rounds on linux1394-devel.

Updated patch below.

Quoted 16 lines
Quoted 6 lines
Quoted 6 lines
(quoted diff) +6 -0
+What:	remove the following ieee1394 EXPORT_SYMBOL's:
+	- hpsb_send_phy_config
+	- hpsb_send_packet_and_wait
+	- highlevel_add_host
+	- highlevel_remove_host
+	- nodemgr_for_each_host
Quoted 8 lines

Review

Quoted 8 lines
(quoted diff) +8 -0
+	- csr1212_create_csr
+	- csr1212_init_local_csr
+	- csr1212_new_immediate
+	- csr1212_associate_keyval
+	- csr1212_new_string_descriptor_leaf
+	- csr1212_destroy_csr
+	- csr1212_generate_csr_image
+	- csr1212_parse_csr

Now that we are at it, the following EXPORT_SYMBOLs should be removed too...

Quoted 1 line
	_csr1212_read_keyval

used in sbp2.c

Quoted 1 line
	_csr1212_destroy_keyval

used in raw1394.c

Quoted 2 lines

...
Stefan Richter

cu
Adrian

<-- snip -->

This patch schedules unused EXPORT_SYMBOL's for removal.

---

 Documentation/feature-removal-schedule.txt |   21 ++++++++++++++
 drivers/ieee1394/ieee1394_core.c           |   31 +++++++++++++++++++++
 2 files changed, 52 insertions(+)
Documentation/feature-removal-schedule.txt renamed from Documentation/feature-removal-schedule.txt.old +21 -0
@@ -93,0 +94,21 @@
+
+---------------------------
+
+What:	remove the following ieee1394 EXPORT_SYMBOL's:
+	- hpsb_send_phy_config
+	- hpsb_send_packet_and_wait
+	- highlevel_add_host
+	- highlevel_remove_host
+	- nodemgr_for_each_host
+	- csr1212_create_csr
+	- csr1212_init_local_csr
+	- csr1212_new_immediate
+	- csr1212_associate_keyval
+	- csr1212_new_string_descriptor_leaf
+	- csr1212_destroy_csr
+	- csr1212_generate_csr_image
+	- csr1212_parse_csr
+When:	August 2005
+Files:	drivers/ieee1394/ieee1394_core.c
+Why:	No modular usage in the kernel.
+Who:	Adrian Bunk <[email protected]>
drivers/ieee1394/ieee1394_core.c renamed from drivers/ieee1394/ieee1394_core.c.old +31 -0
@@ -1226,7 +1226,13 @@
 EXPORT_SYMBOL(hpsb_alloc_packet);
 EXPORT_SYMBOL(hpsb_free_packet);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(hpsb_send_phy_config);
+
 EXPORT_SYMBOL(hpsb_send_packet);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(hpsb_send_packet_and_wait);
+
 EXPORT_SYMBOL(hpsb_reset_bus);
 EXPORT_SYMBOL(hpsb_bus_reset);
@@ -1265,6 +1271,11 @@
 EXPORT_SYMBOL(hpsb_get_hostinfo_bykey);
 EXPORT_SYMBOL(hpsb_set_hostinfo);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(highlevel_add_host);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(highlevel_remove_host);
+
 EXPORT_SYMBOL(highlevel_host_reset);
 
@@ -1275,4 +1286,6 @@
 EXPORT_SYMBOL(hpsb_unregister_protocol);
 EXPORT_SYMBOL(ieee1394_bus_type);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(nodemgr_for_each_host);
 
@@ -1312,18 +1325,36 @@
 
 /** csr1212.c **/
+
+/* EXPORT_SYMBOLs scheduled for removal */
 EXPORT_SYMBOL(csr1212_create_csr);
 EXPORT_SYMBOL(csr1212_init_local_csr);
 EXPORT_SYMBOL(csr1212_new_immediate);
+
 EXPORT_SYMBOL(csr1212_new_directory);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_associate_keyval);
+
 EXPORT_SYMBOL(csr1212_attach_keyval_to_directory);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_new_string_descriptor_leaf);
+
 EXPORT_SYMBOL(csr1212_detach_keyval_from_directory);
 EXPORT_SYMBOL(csr1212_release_keyval);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_destroy_csr);
+
 EXPORT_SYMBOL(csr1212_read);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_generate_csr_image);
+
 EXPORT_SYMBOL(csr1212_parse_keyval);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_parse_csr);
+
 EXPORT_SYMBOL(_csr1212_read_keyval);
 EXPORT_SYMBOL(_csr1212_destroy_keyval);
#4 lore raw

Re: [2.6 patch] drivers/ieee1394/: schedule unused EXPORT_SYMBOL's for removal

Quoted 6 lines · Adrian Bunk
Quoted 2 lines · Stefan Richter

Now that we are at it, the following EXPORT_SYMBOLs should be removed too...

	_csr1212_read_keyval

used in sbp2.c

Quoted 1 line
	_csr1212_destroy_keyval

used in raw1394.c

You are right.

<-- snip -->

This patch schedules unused EXPORT_SYMBOL's for removal.

---

 Documentation/feature-removal-schedule.txt |   21 ++++++++++++++
 drivers/ieee1394/ieee1394_core.c           |   31 +++++++++++++++++++++
 2 files changed, 52 insertions(+)
Documentation/feature-removal-schedule.txt renamed from Documentation/feature-removal-schedule.txt.old +21 -0
@@ -93,0 +94,21 @@
+
+---------------------------
+
+What:	remove the following ieee1394 EXPORT_SYMBOL's:
+	- hpsb_send_phy_config
+	- hpsb_send_packet_and_wait
+	- highlevel_add_host
+	- highlevel_remove_host
+	- nodemgr_for_each_host
+	- csr1212_create_csr
+	- csr1212_init_local_csr
+	- csr1212_new_immediate
+	- csr1212_associate_keyval
+	- csr1212_new_string_descriptor_leaf
+	- csr1212_destroy_csr
+	- csr1212_generate_csr_image
+	- csr1212_parse_csr
+When:	August 2005
+Files:	drivers/ieee1394/ieee1394_core.c
+Why:	No modular usage in the kernel.
+Who:	Adrian Bunk <[email protected]>
drivers/ieee1394/ieee1394_core.c renamed from drivers/ieee1394/ieee1394_core.c.old +31 -0
@@ -1226,7 +1226,13 @@
 EXPORT_SYMBOL(hpsb_alloc_packet);
 EXPORT_SYMBOL(hpsb_free_packet);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(hpsb_send_phy_config);
+
 EXPORT_SYMBOL(hpsb_send_packet);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(hpsb_send_packet_and_wait);
+
 EXPORT_SYMBOL(hpsb_reset_bus);
 EXPORT_SYMBOL(hpsb_bus_reset);
@@ -1265,6 +1271,11 @@
 EXPORT_SYMBOL(hpsb_get_hostinfo_bykey);
 EXPORT_SYMBOL(hpsb_set_hostinfo);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(highlevel_add_host);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(highlevel_remove_host);
+
 EXPORT_SYMBOL(highlevel_host_reset);
 
@@ -1275,4 +1286,6 @@
 EXPORT_SYMBOL(hpsb_unregister_protocol);
 EXPORT_SYMBOL(ieee1394_bus_type);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(nodemgr_for_each_host);
 
@@ -1312,18 +1325,36 @@
 
 /** csr1212.c **/
+
+/* EXPORT_SYMBOLs scheduled for removal */
 EXPORT_SYMBOL(csr1212_create_csr);
 EXPORT_SYMBOL(csr1212_init_local_csr);
 EXPORT_SYMBOL(csr1212_new_immediate);
+
 EXPORT_SYMBOL(csr1212_new_directory);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_associate_keyval);
+
 EXPORT_SYMBOL(csr1212_attach_keyval_to_directory);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_new_string_descriptor_leaf);
+
 EXPORT_SYMBOL(csr1212_detach_keyval_from_directory);
 EXPORT_SYMBOL(csr1212_release_keyval);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_destroy_csr);
+
 EXPORT_SYMBOL(csr1212_read);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_generate_csr_image);
+
 EXPORT_SYMBOL(csr1212_parse_keyval);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_parse_csr);
+
 EXPORT_SYMBOL(_csr1212_read_keyval);
 EXPORT_SYMBOL(_csr1212_destroy_keyval);
#5 lore raw

Re: [2.6 patch] drivers/ieee1394/: schedule unused EXPORT_SYMBOL's for removal

Can we, instead of removing these, wrap then in a "Export full API" config option? I've already got several reports from external projects that are using most of these exported symbols, and I'd hate to make it harder on them to use our drivers (for internal projects or otherwise).

Quoted 134 lines · Stefan Richter
Quoted 6 lines · Adrian Bunk
Quoted 2 lines · Stefan Richter

Now that we are at it, the following EXPORT_SYMBOLs should be removed too...

	_csr1212_read_keyval

used in sbp2.c

Quoted 1 line
	_csr1212_destroy_keyval

used in raw1394.c

You are right.

<-- snip -->

This patch schedules unused EXPORT_SYMBOL's for removal.

---

 Documentation/feature-removal-schedule.txt |   21 ++++++++++++++
 drivers/ieee1394/ieee1394_core.c           |   31 +++++++++++++++++++++
 2 files changed, 52 insertions(+)
Documentation/feature-removal-schedule.txt renamed from Documentation/feature-removal-schedule.txt.old +21 -0
@@ -93,0 +94,21 @@
+
+---------------------------
+
+What:	remove the following ieee1394 EXPORT_SYMBOL's:
+	- hpsb_send_phy_config
+	- hpsb_send_packet_and_wait
+	- highlevel_add_host
+	- highlevel_remove_host
+	- nodemgr_for_each_host
+	- csr1212_create_csr
+	- csr1212_init_local_csr
+	- csr1212_new_immediate
+	- csr1212_associate_keyval
+	- csr1212_new_string_descriptor_leaf
+	- csr1212_destroy_csr
+	- csr1212_generate_csr_image
+	- csr1212_parse_csr
+When:	August 2005
+Files:	drivers/ieee1394/ieee1394_core.c
+Why:	No modular usage in the kernel.
+Who:	Adrian Bunk <[email protected]>
drivers/ieee1394/ieee1394_core.c renamed from drivers/ieee1394/ieee1394_core.c.old +31 -1
@@ -1226,7 +1226,13 @@
 EXPORT_SYMBOL(hpsb_alloc_packet);
 EXPORT_SYMBOL(hpsb_free_packet);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(hpsb_send_phy_config);
+
 EXPORT_SYMBOL(hpsb_send_packet);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(hpsb_send_packet_and_wait);
+
 EXPORT_SYMBOL(hpsb_reset_bus);
 EXPORT_SYMBOL(hpsb_bus_reset);
@@ -1265,6 +1271,11 @@
 EXPORT_SYMBOL(hpsb_get_hostinfo_bykey);
 EXPORT_SYMBOL(hpsb_set_hostinfo);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(highlevel_add_host);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(highlevel_remove_host);
+
 EXPORT_SYMBOL(highlevel_host_reset);
 
@@ -1275,4 +1286,6 @@
 EXPORT_SYMBOL(hpsb_unregister_protocol);
 EXPORT_SYMBOL(ieee1394_bus_type);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(nodemgr_for_each_host);
 
@@ -1312,18 +1325,36 @@
 
 /** csr1212.c **/
+
+/* EXPORT_SYMBOLs scheduled for removal */
 EXPORT_SYMBOL(csr1212_create_csr);
 EXPORT_SYMBOL(csr1212_init_local_csr);
 EXPORT_SYMBOL(csr1212_new_immediate);
+
 EXPORT_SYMBOL(csr1212_new_directory);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_associate_keyval);
+
 EXPORT_SYMBOL(csr1212_attach_keyval_to_directory);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_new_string_descriptor_leaf);
+
 EXPORT_SYMBOL(csr1212_detach_keyval_from_directory);
 EXPORT_SYMBOL(csr1212_release_keyval);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_destroy_csr);
+
 EXPORT_SYMBOL(csr1212_read);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_generate_csr_image);
+
 EXPORT_SYMBOL(csr1212_parse_keyval);
+
+/* EXPORT_SYMBOL scheduled for removal */
 EXPORT_SYMBOL(csr1212_parse_csr);
+
 EXPORT_SYMBOL(_csr1212_read_keyval);
 EXPORT_SYMBOL(_csr1212_destroy_keyval);
 
 
 
 
-------------------------------------------------------

This SF.Net email is sponsored by the 'Do More With Dual!' webinar happening July 14 at 8am PDT/11am EDT. We invite you to explore the latest in dual core and dual graphics technology at this free one hour event hosted by HP, AMD, and NVIDIA. To register visit http://www.hp.com/go/dualwebinar
_______________________________________________
mailing list [email protected]
https://lists.sourceforge.net/lists/listinfo/linux1394-devel

Signature · 4 lines
Debian     - http://www.debian.org/
Linux 1394 - http://www.linux1394.org/
Subversion - http://subversion.tigris.org/
SwissDisk  - http://www.swissdisk.com/
#6 lore raw

alternative [PATCH] 1/2) drivers/ieee1394/: schedule unused EXPORT_SYMBOL's for removal

Quoted 4 lines · Ben Collins

Can we, instead of removing these, wrap then in a "Export full API" config option? I've already got several reports from external projects that are using most of these exported symbols, and I'd hate to make it harder on them to use our drivers (for internal projects or otherwise).

OK, why not. Here is an alternative patch, split in two parts. The first part is independent of the second, although the 2nd motivates the 1st. 2nd part follows in a separate posting.

- - - - - - - - - - - - 8< - - - - - - - - - - - -

IEEE 1394 subsystem: Wrap symbols that are neither used by the 1394 drivers in the mainline kernel (a.k.a. Linux1394) nor by dfg1394 (a.k.a the video-2-1394 project) into a new configuration option. Switch this option on by default.

drivers/ieee1394/Kconfig +12 -0
diff -ru linux-2.6.13-rc2.old/drivers/ieee1394/Kconfig linux-2.6.13-rc2/drivers/ieee1394/Kconfig
@@ -66,6 +66,18 @@
 	  with MacOSX and WinXP IP-over-1394), enable this option and the
 	  eth1394 option below.
 
+config IEEE1394_EXPORT_FULL_API
+	bool "Export all symbols of ieee1394's API"
+	depends on IEEE1394
+	default y
+	help
+	  Export all symbols of ieee1394's driver programming interface, even
+	  those that are not currently used by the standard IEEE 1394 drivers.
+
+	  This option does not affect the interface to userspace applications.
+	  Say Y here if you want to compile externally developed drivers that
+	  make extended use of ieee1394's API. It is otherwise safe to say N.
+
 comment "Device Drivers"
 	depends on IEEE1394
 
drivers/ieee1394/ieee1394_core.c +19 -11
diff -ru linux-2.6.13-rc2.old/drivers/ieee1394/ieee1394_core.c linux-2.6.13-rc2/drivers/ieee1394/ieee1394_core.c
@@ -1223,9 +1223,7 @@
 EXPORT_SYMBOL(hpsb_set_packet_complete_task);
 EXPORT_SYMBOL(hpsb_alloc_packet);
 EXPORT_SYMBOL(hpsb_free_packet);
-EXPORT_SYMBOL(hpsb_send_phy_config);
 EXPORT_SYMBOL(hpsb_send_packet);
-EXPORT_SYMBOL(hpsb_send_packet_and_wait);
 EXPORT_SYMBOL(hpsb_reset_bus);
 EXPORT_SYMBOL(hpsb_bus_reset);
 EXPORT_SYMBOL(hpsb_selfid_received);
@@ -1233,6 +1231,10 @@
 EXPORT_SYMBOL(hpsb_packet_sent);
 EXPORT_SYMBOL(hpsb_packet_received);
 EXPORT_SYMBOL_GPL(hpsb_disable_irm);
+#ifdef CONFIG_IEEE1394_EXPORT_FULL_API
+EXPORT_SYMBOL(hpsb_send_phy_config);
+EXPORT_SYMBOL(hpsb_send_packet_and_wait);
+#endif
 
 /** ieee1394_transactions.c **/
 EXPORT_SYMBOL(hpsb_get_tlabel);
@@ -1262,9 +1264,11 @@
 EXPORT_SYMBOL(hpsb_set_hostinfo_key);
 EXPORT_SYMBOL(hpsb_get_hostinfo_bykey);
 EXPORT_SYMBOL(hpsb_set_hostinfo);
+EXPORT_SYMBOL(highlevel_host_reset);
+#ifdef CONFIG_IEEE1394_EXPORT_FULL_API
 EXPORT_SYMBOL(highlevel_add_host);
 EXPORT_SYMBOL(highlevel_remove_host);
-EXPORT_SYMBOL(highlevel_host_reset);
+#endif
 
 /** nodemgr.c **/
 EXPORT_SYMBOL(hpsb_node_fill_packet);
@@ -1272,7 +1276,9 @@
 EXPORT_SYMBOL(hpsb_register_protocol);
 EXPORT_SYMBOL(hpsb_unregister_protocol);
 EXPORT_SYMBOL(ieee1394_bus_type);
+#ifdef CONFIG_IEEE1394_EXPORT_FULL_API
 EXPORT_SYMBOL(nodemgr_for_each_host);
+#endif
 
 /** csr.c **/
 EXPORT_SYMBOL(hpsb_update_config_rom);
@@ -1309,19 +1315,21 @@
 EXPORT_SYMBOL(hpsb_iso_recv_flush);
 
 /** csr1212.c **/
-EXPORT_SYMBOL(csr1212_create_csr);
-EXPORT_SYMBOL(csr1212_init_local_csr);
-EXPORT_SYMBOL(csr1212_new_immediate);
 EXPORT_SYMBOL(csr1212_new_directory);
-EXPORT_SYMBOL(csr1212_associate_keyval);
 EXPORT_SYMBOL(csr1212_attach_keyval_to_directory);
-EXPORT_SYMBOL(csr1212_new_string_descriptor_leaf);
 EXPORT_SYMBOL(csr1212_detach_keyval_from_directory);
 EXPORT_SYMBOL(csr1212_release_keyval);
-EXPORT_SYMBOL(csr1212_destroy_csr);
 EXPORT_SYMBOL(csr1212_read);
-EXPORT_SYMBOL(csr1212_generate_csr_image);
 EXPORT_SYMBOL(csr1212_parse_keyval);
-EXPORT_SYMBOL(csr1212_parse_csr);
 EXPORT_SYMBOL(_csr1212_read_keyval);
 EXPORT_SYMBOL(_csr1212_destroy_keyval);
+#ifdef CONFIG_IEEE1394_EXPORT_FULL_API
+EXPORT_SYMBOL(csr1212_create_csr);
+EXPORT_SYMBOL(csr1212_init_local_csr);
+EXPORT_SYMBOL(csr1212_new_immediate);
+EXPORT_SYMBOL(csr1212_associate_keyval);
+EXPORT_SYMBOL(csr1212_new_string_descriptor_leaf);
+EXPORT_SYMBOL(csr1212_destroy_csr);
+EXPORT_SYMBOL(csr1212_generate_csr_image);
+EXPORT_SYMBOL(csr1212_parse_csr);
+#endif
#7 lore raw

Re: alternative [PATCH] 1/2) drivers/ieee1394/: schedule unused EXPORT_SYMBOL's for removal

Now that I can live with. If everyone else is ok with it, I'll apply it to our tree for when I sync to Linus.

Quoted 119 lines · Stefan Richter
Quoted 4 lines · Ben Collins

Can we, instead of removing these, wrap then in a "Export full API" config option? I've already got several reports from external projects that are using most of these exported symbols, and I'd hate to make it harder on them to use our drivers (for internal projects or otherwise).

OK, why not. Here is an alternative patch, split in two parts. The first part is independent of the second, although the 2nd motivates the 1st. 2nd part follows in a separate posting.

- - - - - - - - - - - - 8< - - - - - - - - - - - -

IEEE 1394 subsystem: Wrap symbols that are neither used by the 1394 drivers in the mainline kernel (a.k.a. Linux1394) nor by dfg1394 (a.k.a the video-2-1394 project) into a new configuration option. Switch this option on by default.

diff -ru linux-2.6.13-rc2.old/drivers/ieee1394/Kconfig linux-2.6.13-rc2/drivers/ieee1394/Kconfig

drivers/ieee1394/Kconfig +12 -0
@@ -66,6 +66,18 @@
 	  with MacOSX and WinXP IP-over-1394), enable this option and the
 	  eth1394 option below.
 
+config IEEE1394_EXPORT_FULL_API
+	bool "Export all symbols of ieee1394's API"
+	depends on IEEE1394
+	default y
+	help
+	  Export all symbols of ieee1394's driver programming interface, even
+	  those that are not currently used by the standard IEEE 1394 drivers.
+
+	  This option does not affect the interface to userspace applications.
+	  Say Y here if you want to compile externally developed drivers that
+	  make extended use of ieee1394's API. It is otherwise safe to say N.
+
 comment "Device Drivers"
 	depends on IEEE1394
 

diff -ru linux-2.6.13-rc2.old/drivers/ieee1394/ieee1394_core.c linux-2.6.13-rc2/drivers/ieee1394/ieee1394_core.c

drivers/ieee1394/ieee1394_core.c +19 -11
@@ -1223,9 +1223,7 @@
 EXPORT_SYMBOL(hpsb_set_packet_complete_task);
 EXPORT_SYMBOL(hpsb_alloc_packet);
 EXPORT_SYMBOL(hpsb_free_packet);
-EXPORT_SYMBOL(hpsb_send_phy_config);
 EXPORT_SYMBOL(hpsb_send_packet);
-EXPORT_SYMBOL(hpsb_send_packet_and_wait);
 EXPORT_SYMBOL(hpsb_reset_bus);
 EXPORT_SYMBOL(hpsb_bus_reset);
 EXPORT_SYMBOL(hpsb_selfid_received);
@@ -1233,6 +1231,10 @@
 EXPORT_SYMBOL(hpsb_packet_sent);
 EXPORT_SYMBOL(hpsb_packet_received);
 EXPORT_SYMBOL_GPL(hpsb_disable_irm);
+#ifdef CONFIG_IEEE1394_EXPORT_FULL_API
+EXPORT_SYMBOL(hpsb_send_phy_config);
+EXPORT_SYMBOL(hpsb_send_packet_and_wait);
+#endif
 
 /** ieee1394_transactions.c **/
 EXPORT_SYMBOL(hpsb_get_tlabel);
@@ -1262,9 +1264,11 @@
 EXPORT_SYMBOL(hpsb_set_hostinfo_key);
 EXPORT_SYMBOL(hpsb_get_hostinfo_bykey);
 EXPORT_SYMBOL(hpsb_set_hostinfo);
+EXPORT_SYMBOL(highlevel_host_reset);
+#ifdef CONFIG_IEEE1394_EXPORT_FULL_API
 EXPORT_SYMBOL(highlevel_add_host);
 EXPORT_SYMBOL(highlevel_remove_host);
-EXPORT_SYMBOL(highlevel_host_reset);
+#endif
 
 /** nodemgr.c **/
 EXPORT_SYMBOL(hpsb_node_fill_packet);
@@ -1272,7 +1276,9 @@
 EXPORT_SYMBOL(hpsb_register_protocol);
 EXPORT_SYMBOL(hpsb_unregister_protocol);
 EXPORT_SYMBOL(ieee1394_bus_type);
+#ifdef CONFIG_IEEE1394_EXPORT_FULL_API
 EXPORT_SYMBOL(nodemgr_for_each_host);
+#endif
 
 /** csr.c **/
 EXPORT_SYMBOL(hpsb_update_config_rom);
@@ -1309,19 +1315,21 @@
 EXPORT_SYMBOL(hpsb_iso_recv_flush);
 
 /** csr1212.c **/
-EXPORT_SYMBOL(csr1212_create_csr);
-EXPORT_SYMBOL(csr1212_init_local_csr);
-EXPORT_SYMBOL(csr1212_new_immediate);
 EXPORT_SYMBOL(csr1212_new_directory);
-EXPORT_SYMBOL(csr1212_associate_keyval);
 EXPORT_SYMBOL(csr1212_attach_keyval_to_directory);
-EXPORT_SYMBOL(csr1212_new_string_descriptor_leaf);
 EXPORT_SYMBOL(csr1212_detach_keyval_from_directory);
 EXPORT_SYMBOL(csr1212_release_keyval);
-EXPORT_SYMBOL(csr1212_destroy_csr);
 EXPORT_SYMBOL(csr1212_read);
-EXPORT_SYMBOL(csr1212_generate_csr_image);
 EXPORT_SYMBOL(csr1212_parse_keyval);
-EXPORT_SYMBOL(csr1212_parse_csr);
 EXPORT_SYMBOL(_csr1212_read_keyval);
 EXPORT_SYMBOL(_csr1212_destroy_keyval);
+#ifdef CONFIG_IEEE1394_EXPORT_FULL_API
+EXPORT_SYMBOL(csr1212_create_csr);
+EXPORT_SYMBOL(csr1212_init_local_csr);
+EXPORT_SYMBOL(csr1212_new_immediate);
+EXPORT_SYMBOL(csr1212_associate_keyval);
+EXPORT_SYMBOL(csr1212_new_string_descriptor_leaf);
+EXPORT_SYMBOL(csr1212_destroy_csr);
+EXPORT_SYMBOL(csr1212_generate_csr_image);
+EXPORT_SYMBOL(csr1212_parse_csr);
+#endif
Signature · 4 lines
Debian     - http://www.debian.org/
Linux 1394 - http://www.linux1394.org/
Subversion - http://subversion.tigris.org/
SwissDisk  - http://www.swissdisk.com/
Applied
#8 lore raw

Re: alternative [PATCH] 1/2) drivers/ieee1394/: schedule unused EXPORT_SYMBOL's for removal

In reply to Stefan Richter

Applied, but I set the default to "N". No reason to prolong doing it, since it doesn't break anything in the kernel or in our tree. It's an easy pointer to the option for anyone inquiring about the change.

Quoted 9 lines · Stefan Richter
Quoted 4 lines · Ben Collins

Can we, instead of removing these, wrap then in a "Export full API" config option? I've already got several reports from external projects that are using most of these exported symbols, and I'd hate to make it harder on them to use our drivers (for internal projects or otherwise).

OK, why not. Here is an alternative patch, split in two parts. The first part is independent of the second, although the 2nd motivates the 1st. 2nd part follows in a separate posting.

Signature · 4 lines
Debian     - http://www.debian.org/
Linux 1394 - http://www.linux1394.org/
Subversion - http://subversion.tigris.org/
SwissDisk  - http://www.swissdisk.com/
#9 lore raw

alternative [PATCH] 2/2) drivers/ieee1394/: schedule unused EXPORT_SYMBOL's for removal

In reply to Ben Collins

IEEE 1394 subsystem: Unused EXPORT_SYMBOLs will be disabled as of August. Based on a proposal by Adrian Bunk <[email protected]>.
May affect external FireWire driver projects.

Documentation/feature-removal-schedule.txt +16 -0
diff -ru linux-2.6.13-rc2.old/Documentation/feature-removal-schedule.txt linux-2.6.13-rc2/Documentation/feature-removal-schedule.txt
@@ -102,6 +102,22 @@
 
 ---------------------------
 
+What:	Make IEEE1394_EXPORT_FULL_API=n the default. Will disable the
+	following EXPORT_SYMBOLs in drivers/ieee1394/ieee1394_core.c:
+	hpsb_send_phy_config,     hpsb_send_packet_and_wait,
+	highlevel_add_host,       highlevel_remove_host,
+	nodemgr_for_each_host,    csr1212_create_csr,
+	csr1212_init_local_csr,   csr1212_new_immediate,
+	csr1212_associate_keyval, csr1212_new_string_descriptor_leaf,
+	csr1212_destroy_csr,      csr1212_generate_csr_image,
+	csr1212_parse_csr
+When:	August 2005
+Files:	drivers/ieee1394/Kconfig
+Why:	No modular usage in the kernel.
+Who:	Stefan Richter <[email protected]>
+
+---------------------------
+
 What:	register_serial/unregister_serial
 When:	December 2005
 Why:	This interface does not allow serial ports to be registered against
#10 lore raw

Re: [2.6 patch] drivers/ieee1394/: schedule unused EXPORT_SYMBOL's for removal

In reply to Ben Collins
Quoted 2 lines · Ben Collins

Can we, instead of removing these, wrap then in a "Export full API" config option? I've already got several reports from external projects that are

This will end in all distributions having this option enabled resulting in no change compared to todays status quo.

Quoted 2 lines

using most of these exported symbols, and I'd hate to make it harder on them to use our drivers (for internal projects or otherwise).

What are these external projects?

Is they are internal projects, re-adding the EXPORT_SYMBOL's should be trivial for them.

If they aren't only internal internal project, why can't they simply be merged (making all discussions about removal of the EXPORT_SYMBOL's they use obsolete)?

cu
Adrian

Signature · 4 lines
       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed
#11 lore raw

Re: [2.6 patch] drivers/ieee1394/: schedule unused EXPORT_SYMBOL's for removal

Quoted 6 lines · Adrian Bunk
Quoted 2 lines · Ben Collins

Can we, instead of removing these, wrap then in a "Export full API" config option? I've already got several reports from external projects that are

This will end in all distributions having this option enabled resulting in no change compared to todays status quo.

I disagree. Distributors, especially those oriented towards private/ SOHO/ big commercial customers, don't need to care much for classroom projects or the hacker next door. Distributors will not enable this option once it defaults to off in mainline. This config option is ultimately *no* solution for commercial support of external drivers, regardless whether they are free software or unfree. The patch does not attempt to establish a warranted managed API.

Quoted 4 lines
Quoted 2 lines

using most of these exported symbols, and I'd hate to make it harder on them to use our drivers (for internal projects or otherwise).

What are these external projects?

There are countless FireWire related projects, especially in academia. For example, FireWire seems to be a hit in robotics. We at linux1394-devel may not even hear about what they are doing in particular but we do get feedback, bugfixes, and improvements from them. For them, Linux' IEEE 1394 stack may be only one choice out of several, including stacks in the big desktop operating systems or in various embedded OSs. So in my personal opinion, it is in best interest for Linux' 1394 stack if we can keep these people motivated to stick with Linux.

Quoted 2 lines

Is they are internal projects, re-adding the EXPORT_SYMBOL's should be trivial for them.

We make it even more trivial by providing a compile option for that. The cost is minimal.

Signature · 3 lines
Stefan Richter
-=====-=-=-= -=== -=--=
http://arcgraph.de/sr/
#12 lore raw

Re: [2.6 patch] drivers/ieee1394/: schedule unused EXPORT_SYMBOL's for removal

In reply to Adrian Bunk
Quoted 7 lines · Adrian Bunk
Quoted 2 lines · Ben Collins

Can we, instead of removing these, wrap then in a "Export full API" config option? I've already got several reports from external projects that are

This will end in all distributions having this option enabled resulting in no change compared to todays status quo.

Yeah, I've heard this over and over, but as someone who works with distributing Linux, I can say it is utterly incorrect. Distributors are looking to support as little as possible and make things as tight and stable as possible. THe API is only there for people doing development work of some sort, and those people are going to be building kernels from scratch anyway. That's the people that will enable this option.

And if it's as you suggest, that there is so much demand on the distributions by users to enable this option, then by all means that should show that it needs to be there anyway, don't you think? Not only that, the distributions could just as easily add patches to put them back, in order to support it, so taking it out completely doesn't help anything.

Quoted 11 lines
Quoted 2 lines

using most of these exported symbols, and I'd hate to make it harder on them to use our drivers (for internal projects or otherwise).

What are these external projects?

Is they are internal projects, re-adding the EXPORT_SYMBOL's should be trivial for them.

If they aren't only internal internal project, why can't they simply be merged (making all discussions about removal of the EXPORT_SYMBOL's they use obsolete)?

These projects all fall in a lot of categories, from hobbyist, to acedemics, to companies doing embedded systems (I've gotten feedback from someone using linux1394 in next generation US fighter planes, and they have some custom modules).

Allowing them to do as little changing to the kernel as possible makes their life easier, and ensures that changes we get back are cleaner and more useful. Plus for two of those three examples, they may be distributing their work to classmates or other hobbyists. THis might be in the way of a single driver file that can be compiled with a stock kernel, and no one wants to say "oh, and you need to patch the ieee1394 drivers before you can use my driver".

Signature · 4 lines
Debian     - http://www.debian.org/
Linux 1394 - http://www.linux1394.org/
Subversion - http://subversion.tigris.org/
SwissDisk  - http://www.swissdisk.com/