From: tridge@samba.org
To: "H. Peter Anvin" <hpa@zytor.com>
Cc: sfrench@samba.org, linux-ntfs-dev@lists.sourceforge.net,
samba-technical@lists.samba.org, aia21@cantab.net,
hirofumi@mail.parknet.co.jp,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: FAT, NTFS, CIFS and DOS attributes
Date: Tue, 4 Jan 2005 11:58:18 +1100 [thread overview]
Message-ID: <16857.59946.683684.231658@samba.org> (raw)
In-Reply-To: <41D9E3AA.5050903@zytor.com>
> Oh geez. Couldn't you have split out the various data items into
> separate xattrs?
fetching and setting this stuff is _really_ common, so I have arranged
to store them in a way to make it as efficient as possible. For
example, when a remote client asks for a directory listing we need to
fetch just one xattr from the kernel per file (directory listings
in the windows world usually return the equivalent of a full stat
structure for every name).
Similarly, when these are set the client tends to set more than one at
a time. The most commonly used set call takes this structure:
/* RAW_SFILEINFO_BASIC_INFO and
RAW_SFILEINFO_BASIC_INFORMATION interfaces */
struct {
enum smb_setfileinfo_level level;
union setfileinfo_file file;
struct {
NTTIME create_time;
NTTIME access_time;
NTTIME write_time;
NTTIME change_time;
uint32_t attrib;
} in;
} basic_info;
Having the items that tend to get read/written together grouped
together allowed me to make it all quite efficient, while still having
a reasonable chance of the EAs all fitting in-inode on filesystems
that support that.
Obviously it is racy when dealt with from user space, but there really
is no way to avoid all these races without a user space accessible
"lock the files meta-data" call and that is why I'm looking forward to
having a Samba LSM module to avoid these races.
> Samba clearly has other needs than other users, although of course
> it would be unfortunate if Samba then can't export this
> information.
I think you'll find that all users of dos attributes on Linux will
have very similar needs to Samba, and will want these things grouped
together. For example:
- backup/restore apps will want to backup/restore these attributes as
lumps
- wine implements essentially the same APIs as Samba, just in a
different form, and so tends to get the same groupings of
attributes get/set calls that Samba does (the SMB protocol is to a
large degree a on-the-wire version of Win32).
Are there any other significant users of DOS attributes on Linux that
want something different?
Cheers, Tridge
next prev parent reply other threads:[~2005-01-04 1:10 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-01-03 22:24 FAT, NTFS, CIFS and DOS attributes H. Peter Anvin
2005-01-03 23:26 ` Michael B Allen
2005-01-03 23:33 ` H. Peter Anvin
2005-01-03 23:48 ` Michael B Allen
2005-01-03 23:55 ` H. Peter Anvin
2005-01-04 0:18 ` tridge
2005-01-04 0:24 ` H. Peter Anvin
2005-01-04 0:39 ` tridge
2005-01-04 0:57 ` H. Peter Anvin
2005-01-04 1:12 ` tridge
2005-01-04 1:31 ` Nicholas Miell
2005-01-04 1:48 ` H. Peter Anvin
2005-01-04 2:05 ` Nicholas Miell
2005-01-04 22:24 ` [Linux-NTFS-Dev] " Szakacsits Szabolcs
2005-01-04 1:21 ` tridge
2005-01-04 1:30 ` H. Peter Anvin
2005-01-03 23:28 ` Nicholas Miell
2005-01-04 0:05 ` tridge
2005-01-04 0:30 ` H. Peter Anvin
2005-01-04 0:58 ` tridge [this message]
2005-01-04 1:14 ` H. Peter Anvin
2005-01-04 1:36 ` tridge
2005-01-04 1:50 ` H. Peter Anvin
2005-01-04 2:05 ` tridge
2005-01-04 2:09 ` H. Peter Anvin
2005-01-04 2:23 ` Kyle Moffett
2005-01-04 2:49 ` tridge
2005-01-04 3:39 ` Kyle Moffett
2005-01-04 3:56 ` tridge
2005-01-04 4:50 ` Kyle Moffett
2005-01-04 4:05 ` Michael B Allen
2005-01-04 10:34 ` Anton Altaparmakov
2005-01-04 11:08 ` Anton Altaparmakov
2005-01-04 22:18 ` Nicholas Miell
2005-01-04 23:04 ` Anton Altaparmakov
2005-01-05 0:48 ` Nicholas Miell
2005-01-05 1:12 ` Nicholas Miell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=16857.59946.683684.231658@samba.org \
--to=tridge@samba.org \
--cc=aia21@cantab.net \
--cc=hirofumi@mail.parknet.co.jp \
--cc=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-ntfs-dev@lists.sourceforge.net \
--cc=samba-technical@lists.samba.org \
--cc=sfrench@samba.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox