From: "H. Peter Anvin" <hpa@zytor.com>
To: Nicholas Miell <nmiell@comcast.net>
Cc: linux-kernel@vger.kernel.org
Subject: Re: [PATCH] get/set FAT filesystem attribute bits
Date: Mon, 03 Jan 2005 15:22:48 -0800 [thread overview]
Message-ID: <41D9D3C8.1040602@zytor.com> (raw)
In-Reply-To: <1104794219.3604.29.camel@localhost.localdomain>
[Pruning the Cc: list.]
Nicholas Miell wrote:
> On Mon, 2005-01-03 at 14:25 -0800, H. Peter Anvin wrote:
>
>>I'm honestly not sure that using an ASCII string in an xattr is the sane
>>way of doing this. Even a binary byte in an xattr would make more sense
>>in some ways.
>
> ASCII strings require no special tools to manipulate from shell scripts.
>
You need some kind of special tool anyway, i.e. getfattr/setfattr. What
tool you use isn't really important.
The fact that getfattr/setfattr can't deal with attributes that aren't
ASCII strings seem like flaws in these tools.
>
>>I think the xattr mechanism is ignored largely because it's painfully
>>complex.
>>
>>A plus with using xattr is that in theory (but of course not in
>>practice!) it would let one store a copy of a DOS filesystem on an ext3
>>(or xfs, or...) filesystem and have it restored, all using standard (but
>>by necessity, xattr-aware) tools. However, the splitting of xattr into
>>namespaces may very well make that impossible, since what's a "system"
>>attribute to one filesystem is a "user" attribute to another. Classic
>>design flaw, by the way.
>
> The design does allow users to store whatever they want as an xattr
> without having to worry about how the kernel chooses to interpret it,
> though. (i.e. the user namespace is just a byte array that the kernel
> stores for you, while the system/security namespaces are probably
> generated and interpreted on demand.)
>
Exactly, and that's a total screwup. It makes something that would
otherwise be possible -- for some filesystems to have an attribute (call
it "system.dosattrib") which is used, and for others which is stored.
The problem is that with the current design, that won't happen.
Encoding this in the namespace, therefore preventing this kind of
compatiblity, is daft. From the looks of it, the CIFS people were
planning to do the "put everything in user.*" workaround for this design
error.
-hpa
next prev parent reply other threads:[~2005-01-03 23:27 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-01-03 20:57 [PATCH] get/set FAT filesystem attribute bits H. Peter Anvin
2005-01-03 21:24 ` Nicholas Miell
2005-01-03 21:35 ` H. Peter Anvin
2005-01-03 21:46 ` Nicholas Miell
2005-01-03 22:02 ` H. Peter Anvin
2005-01-03 22:10 ` Nicholas Miell
2005-01-03 22:25 ` H. Peter Anvin
2005-01-03 23:16 ` Nicholas Miell
2005-01-03 23:22 ` H. Peter Anvin [this message]
2005-01-03 23:46 ` Nicholas Miell
2005-01-04 10:09 ` Anton Altaparmakov
2005-01-04 21:45 ` Nicholas Miell
2005-01-04 8:34 ` OGAWA Hirofumi
2005-01-04 9:41 ` H. Peter Anvin
[not found] <fa.ea9o20r.kje5qn@ifi.uio.no>
[not found] ` <fa.lub44op.a2ec2d@ifi.uio.no>
2005-01-04 11:57 ` Bodo Eggert
2005-01-04 21:26 ` H. Peter Anvin
[not found] <fa.i537e7s.1d6m90c@ifi.uio.no>
[not found] ` <fa.ihdqkec.1i5umji@ifi.uio.no>
2005-01-06 0:07 ` Bodo Eggert
2005-01-06 1:35 ` H. Peter Anvin
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=41D9D3C8.1040602@zytor.com \
--to=hpa@zytor.com \
--cc=linux-kernel@vger.kernel.org \
--cc=nmiell@comcast.net \
/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