From: Roel Kluin <roel.kluin@gmail.com> Date: Fri, 22 May 2009 11:04:53 +0000 (+0000) Subject: mISDN: get_free_devid() failure ignored X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=ddacd14e8db9b9c4434d00545f6483fe01f02991;p=GitHub%2FLineageOS%2Fandroid_kernel_samsung_universal7580.git mISDN: get_free_devid() failure ignored dev->id is unsigned so a get_free_devid() error is ignored. Signed-off-by: Roel Kluin <roel.kluin@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Karsten Keil <keil@b1-systems.de> Signed-off-by: David S. Miller <davem@davemloft.net> --- diff --git a/drivers/isdn/mISDN/core.c b/drivers/isdn/mISDN/core.c index 9426c9827e4..21d34be5af6 100644 --- a/drivers/isdn/mISDN/core.c +++ b/drivers/isdn/mISDN/core.c @@ -214,7 +214,7 @@ get_free_devid(void) if (!test_and_set_bit(i, (u_long *)&device_ids)) break; if (i > MAX_DEVICE_ID) - return -1; + return -EBUSY; return i; } @@ -224,10 +224,10 @@ mISDN_register_device(struct mISDNdevice *dev, { int err; - dev->id = get_free_devid(); - err = -EBUSY; - if (dev->id < 0) + err = get_free_devid(); + if (err < 0) goto error1; + dev->id = err; device_initialize(&dev->dev); if (name && name[0])