From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Steve French" Subject: Support for applications which need NFS or CIFS "share_deny" flags on open Date: Tue, 2 Dec 2008 10:31:20 -0600 Message-ID: <524f69650812020831q4e089b87k9a8306ac37f4234a@mail.gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit To: linux-fsdevel , LKML , "linux-cifs-client@lists.samba.org" Return-path: Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org Some of the Wine community posted last month to the cifs mailing list asking about a change needed for Wine for working properly over network mounts, but the change is not really cifs specific and would help other file systems as well so I wanted to mention it here. The original post was: http://marc.info/?l=linux-cifs-client&m=122505569315992&w=2 Support for the flags they suggest would be easy for cifs (the protocol has a field for this, and cifs clients on various other OS set it), and should be fairly easy for NFSv4 (the RFC for NFSv4 specifies the "share_deny" field within the NFS open request, and various clients, but not Linux, set it), and would allow WINE to function properly over a network mount. >we proffer to add into the file /usr/include/asm-generic/fcntl.h > following flags: > >#define O_DENYREAD 004000000 /* Do not permit read access */ >#define O_DENYWRITE 010000000 /* Do not permit write access */ >#define O_DENYDELETE 020000000 /* Do not permit delete or rename > operations*/ Presumably for applications on local mounts, wine mediates their own mandatory locks, but this is impossible on network mounts without this change (and can lead to data corruption). -- Thanks, Steve