broken mandatory locking behavior

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi all!

Now I have been working on lock cache capability for cifs module and
simplification of lock code. So, I faced with a such an interesting
place - mandatory style unlock code.

The problem is that mandatory semantic doesn't allow to specify a
range and remove all locks from there. But cifs module allows it. The
reason why it is so can be that cifs module tries to follow posix
semantic for mandatory locks. I think it's not what we want at all.

We have two lock mode for cifs module: posix and mandatory. And as for
me, we should follow posix semantic for posix locks and mandatory for
mandatory locks. If we mix these two semantic for mandatory lock mode,
we reach nothing: no posix (because mandatory locks doesn't allow to
perform io ops on the locked region by other processes) and no
mandatory (because we can setup unlock from 0 to infinity and remove
all locks at once).

The another problem is that this 'broken' code lives on kernel for a
long time. So, I suggest to discuss it now - while I am here I can
include this fix into my patchset as well.

Thoughts?

-- 
Best regards,
Pavel Shilovsky.
--
To unsubscribe from this list: send the line "unsubscribe linux-cifs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux