Re: Linux 2.6.6-rc3

From: Florian Schirmer
Date: Wed Apr 28 2004 - 04:17:39 EST


Hi,

> Armin Schindler:
> o ISDN CAPI: add ncci list semaphore

This looks broken for !CONFIG_ISDN_CAPI_MIDDLEWARE configs. Note the up()
inside the #ifdef.

@@ -904,13 +917,17 @@
if (copy_from_user((void *)&ncci, (void *)arg,
sizeof(ncci)))
return -EFAULT;
- nccip = capincci_find(cdev, (u32) ncci);
- if (!nccip)
+
+ down(&cdev->ncci_list_sem);
+ if ((nccip = capincci_find(cdev, (u32) ncci)) == 0) {
+ up(&cdev->ncci_list_sem);
return 0;
+ }
#ifdef CONFIG_ISDN_CAPI_MIDDLEWARE
if ((mp = nccip->minorp) != 0) {
count += atomic_read(&mp->ttyopencount);
}
+ up(&cdev->ncci_list_sem);
#endif /* CONFIG_ISDN_CAPI_MIDDLEWARE */
return count;
}


Regards,
Florian

-
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/