Skip to contentSkip to conversation

increase BUS_ID_SIZE to 20

PATCH In review Ben Collins 2 participants 3 messages Mar 18, 2003 – Mar 27, 2003

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 increase BUS_ID_SIZE to 20

I've tried to figure a way around this without adding back a lot of overhead, but I can't.

The reasoning, is the ieee1394 node's onyl way of a real unique identifier is the EUI (the 64bit GUID). It's represented as a 16 digit hex. However, each node additionally ca have unit directories.

Note that an ieee1394's node-id can change with each bus reset. The software has no control of this. So I cannot use the node-id as a unique identifier since the driver model has no way to rename a device once it has been registered. A bus reset should not require unregister/register for devices which did not change.

So, I want to use the format of "%016Lx" and "%016Lx-%d" for the formats of the bus ID in ieee1394. The second format would be used for unit directories of a node. However, current bus-id limit is 16 characters. The increase to 20 would give me 16 for the hex EUI, -, and 2 digits for the unit directories (I don't think it's even possible to have > 100 unit directories).

I looked at keeping an internal ID for the node internally, but that is just way too much overhead in our underlying system. As it is now, a driver can reference the GUID, which will never change, not even if the node moves to another bus, on a seperate physical ieee1394 card.

Please consider applying this patch.

Signature · 17 lines
Debian     - http://www.debian.org/
Linux 1394 - http://www.linux1394.org/
Subversion - http://subversion.tigris.org/
Deqo       - http://www.deqo.com/


--- linux-2.5.65.orig/include/linux/device.h	2003-03-17 19:16:02.000000000 -0500
+++ linux-2.5.65/include/linux/device.h	2003-03-17 21:50:05.000000000 -0500
@@ -35,7 +35,7 @@
 #define DEVICE_NAME_SIZE	50
 #define DEVICE_NAME_HALF	__stringify(20)	/* Less than half to accommodate slop */
 #define DEVICE_ID_SIZE		32
-#define BUS_ID_SIZE		16
+#define BUS_ID_SIZE		20
 
 
 enum {
#1 lore raw
Quoted 8 lines · Ben Collins

I've tried to figure a way around this without adding back a lot of overhead, but I can't.

The reasoning, is the ieee1394 node's onyl way of a real unique identifier is the EUI (the 64bit GUID). It's represented as a 16 digit hex. However, each node additionally ca have unit directories.

Please consider applying this patch.

Alright, you win. I'll add it to my tree.

-pat

#2 lore raw
Quoted 6 lines · Patrick Mochel
Quoted 3 lines · Ben Collins

I've tried to figure a way around this without adding back a lot of overhead, but I can't.

Quoted 7 lines
Quoted 5 lines

The reasoning, is the ieee1394 node's onyl way of a real unique identifier is the EUI (the 64bit GUID). It's represented as a 16 digit hex. However, each node additionally ca have unit directories.

Please consider applying this patch.

Alright, you win. I'll add it to my tree.

Much appreciated.

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