On 23/02/11 09:26, Manohar Vanga wrote: > Fix a bug in vme_register_bridge that results in an infinite loop in > the event that device_register fails. > Good catch! Acked-by: Martyn Welch <martyn.welch@xxxxxx> > Signed-off-by: Manohar Vanga <manohar.vanga@xxxxxxx> > --- > drivers/staging/vme/vme.c | 5 +++++ > 1 files changed, 5 insertions(+), 0 deletions(-) > > diff --git a/drivers/staging/vme/vme.c b/drivers/staging/vme/vme.c > index 88bf455..e77d6a8 100644 > --- a/drivers/staging/vme/vme.c > +++ b/drivers/staging/vme/vme.c > @@ -1364,9 +1364,14 @@ int vme_register_bridge(struct vme_bridge *bridge) > return retval; > > err_reg: > + /* > + * Ignore the failed device and unregister the rest. > + */ > + i--; > while (i > -1) { > dev = &bridge->dev[i]; > device_unregister(dev); > + i--; > } > vme_free_bus_num(bridge->num); > return retval; -- Martyn Welch (Principal Software Engineer) | Registered in England and GE Intelligent Platforms | Wales (3828642) at 100 T +44(0)127322748 | Barbirolli Square, Manchester, E martyn.welch@xxxxxx | M2 3AB VAT:GB 927559189 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel