Re: [PATCH] Firmware class name collision

From: Jean Delvare
Date: Tue Aug 14 2007 - 09:33:24 EST


Hi Markus,

On Mon, 13 Aug 2007 19:20:43 +0200, Markus Rechberger wrote:
> Marcel Holtmann wrote:
> > I would prefer if we use "firmware-%s" since the "fw" might collide with
> > the new Firewire stack. Please change that and I agree.
>
> firmware-%s sounds more informative and cannot be mistaken with firewire
> yes.
>
> Signed-off-by: Markus Rechberger <markus.rechberger@xxxxxxx>
>
> http://mcentral.de/~mrec/patches/firmware_class_name_collision_2.diff
>
> diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
> index b24efd4..bfc54a1 100644
> --- a/drivers/base/firmware_class.c
> +++ b/drivers/base/firmware_class.c
> @@ -297,8 +297,7 @@ firmware_class_timeout(u_long data)
>
> static inline void fw_setup_device_id(struct device *f_dev, struct
> device *dev)
> {
> - /* XXX warning we should watch out for name collisions */
> - strlcpy(f_dev->bus_id, dev->bus_id, BUS_ID_SIZE);
> + snprintf(f_dev->bus_id, BUS_ID_SIZE, "firmware-%s", dev->bus_id);
> }

Please keep in mind that BUS_ID_SIZE is "only" 20. "firmware-" takes 9
characters, add one for the trailing zero and this only leaves room for
10 characters for the original bus id. While this will be enough for
the i2c case, I suspect that some other bus IDs won't fit.

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