Re: [PATCH] cifs: mark CONFIG_CIFS_NFSD_EXPORT as BROKEN

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

 



On Mon, May 23, 2011 at 8:42 AM, Steve French <smfrench@xxxxxxxxx> wrote:
> On Mon, May 23, 2011 at 6:12 AM, Jeff Layton <jlayton@xxxxxxxxxx> wrote:
>> On Sun, 22 May 2011 20:12:04 -0500
>> Steve French <smfrench@xxxxxxxxx> wrote:
>>
>>> On Sun, May 22, 2011 at 7:17 AM, Jeff Layton <jlayton@xxxxxxxxxx> wrote:
>>> > On Sun, 22 May 2011 07:59:38 -0400
>>> > Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote:
>>> >
>>> >> On Sun, May 22, 2011 at 07:55:24AM -0400, Jeff Layton wrote:
>>> >> > This will never work properly with CIFS, as the protocol has no ability
>>> >> > whatsoever for looking up files by filehandle. It *might* be possible to
>>> >> > eventually do this with SMB2, but that remains to be seen.
>
> Shirish had done some experiments (and AFAIK has a small patch
> that fixed NFS export over CIFS which works, with the usual restrictions
> about having to return ESTALE if the NFS client tries to access
> an inode which has been flushed from the cache on the server side).
>
>>> For nfs v3 clients that can't handle ESTALE, we are probably
>>> stuck with having to wait for Samba to implement the flag
>> Flag?
>
> NTCreateX:  FILE_OPEN_BY_FILE_ID
>
> IIRC Shirish verified that the Windows client will emit this flag, but their
> server had not gotten around to implementing it (although Samba could
> implement it now that their is an open-by-handle syscall).

Steve, I am not sure whether Windows client would emit this flag or not.
This is the failure on the Windows client with a test program.

The very same program works fine on the Windows server i.e. the API
is OK with a local program opening a local file by fileid but I think Windows
client does not even transmit such a request to the server.

 ULONG status = NtCreatefile(&f, GENERIC_ALL, &oa, iosb, NULL,
FILE_ATTRIBUTE_NORMAL, FILE_SHARE_READ | FILE_SHARE_WRITE, FILE_OPEN,
FILE_OPEN_BY_FILE_ID | FILE_NON_DIRECTORY_FILE, NULL, 0);

returns error status: C0000008, handle: 0

if the file is remote but no error if the file is local.

>
>
>
> --
> Thanks,
>
> Steve
> --
> 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
>
--
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