Есть драйвер который для защиты структуры использует mutex'ы.
Существует проблема что возможна неопределённая по времени блокировка кода который освобождает эту структуру (скажем в случае отключения устройства - писателя), если части кода которые проверяют структуру на не равенство NULL (читатели) будут часто это делать.
У меня это реализовано через MUTEX (что не есть гуд).
Есть смысл перейти на rw-семафоры (тк я так понимаю писатель имеет преимущество перед читателем). Вопрос - mutex можно захватывать interruptible и не interruptible (down_interruptible() и down()). А у rw-семафоров такая возможность отстуствует - почему (только down_read() и down_write())?