From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pf1-f175.google.com ([209.85.210.175]:40211 "EHLO mail-pf1-f175.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726807AbeH1WZo (ORCPT ); Tue, 28 Aug 2018 18:25:44 -0400 Received: by mail-pf1-f175.google.com with SMTP id s13-v6so1091358pfi.7 for ; Tue, 28 Aug 2018 11:32:50 -0700 (PDT) MIME-Version: 1.0 References: <20180825144745.GQ6515@ZenIV.linux.org.uk> <20180825155150.GA3581@bombadil.infradead.org> <20180825180026.GR6515@ZenIV.linux.org.uk> <20180825205716.GA2664@bombadil.infradead.org> <20180825223615.GS6515@ZenIV.linux.org.uk> <20180827170531.GC217636@jra3> <20180827182143.GB24544@bombadil.infradead.org> <20180828004523.GB2304@thunk.org> <20180828181245.GE41380@jra3> In-Reply-To: <20180828181245.GE41380@jra3> From: Steve French Date: Tue, 28 Aug 2018 13:32:39 -0500 Message-ID: Subject: Re: Streams support in Linux To: Jeremy Allison Cc: Theodore Tso , Matthew Wilcox , Al Viro , linux-fsdevel , ebiggers@kernel.org, samba-technical Content-Type: text/plain; charset="UTF-8" Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Tue, Aug 28, 2018 at 1:12 PM Jeremy Allison wrote: > > On Mon, Aug 27, 2018 at 08:07:35PM -0500, Steve French wrote: > > > > Given that streams need to be read to backup Macs and Windows > > (and for a few features of these servers mentioned earlier) > > and would be exposed in ntfs (and SMB3 remotely) locally on Linux, > > seems useful to me to have some consistent way to open and read > > them on Linux even if we don't want to generalize it to other local fs. > > The protocol supports it fine (just a file with a reserved character > > ':' in it) but a little tricky to avoid name conflict with posix ':' > > in filenames > > This sounds like a case for a couple of ioctls. One to enumerate > the streams on an open fd, one to open a given stream name on an > open fd. We already have a (cifs.ko) ioctl to enumerate streams, but I was less comfortable with how to structure an ioctl to read/write a stream (other than $DATA of course). Ideas on what a "read stream" ioctl might look like? -- Thanks, Steve