* [RFC] vfs generic subtree support
@ 2010-02-16 10:52 Dmitry Monakhov
2010-02-16 12:20 ` Al Viro
0 siblings, 1 reply; 12+ messages in thread
From: Dmitry Monakhov @ 2010-02-16 10:52 UTC (permalink / raw)
To: Al Viro, linux-fsdevel
Initially i've posted RFC patch-set which add subtree support for ext4.
http://marc.info/?l=linux-ext4&m=126563931215496&w=2
But in fact this is rather generic feature which may be implemented
in vfs layer similar to namespace or security feature.
A subtree of a directory tree T is a tree consisting of a directory
(the subtree root) in T and all of its descendants in T.
Subtree assumptions:
* Each inode has subtree id (this id is stored inside inode).
* Subtree id is inherent from parent directory if corresponding flag is set
* Inode can not belongs to different subtrees
i've ommit subtree_type feature in order to simplify brief explanation.
Subtree with id == 0 has special meaning. It may contains roots of
other subtrees (this feature is used for cross subtree renames)
This feature has much in common with XFS project_id.
There are many usecases for such subtrees
1) Choroot environment or Containers on common file-system
administrator creates a subtree,and setup quota
#mkdir chroot-env
#chattr -Q ${subtree_id} chroot-env
#tar jxf /tmp/fedora-x86_64.tar.bz2 -C chroot-env
#### as soon as subtree id inherented from parent untared content
#### automatically belongs to ${subtree_id}
#quotactl --type=subtree --id=${subtree_id} --bsoft=1000000 --bhard=1000000
###
#chroot chroot-env /bin/bash
2) NFS quota on server side
Administrator perform exactly the same stages, but instead of chroot
hi just export result subtree to nfs server
One may imagine it's own usecase.
Usually we already have some content which we want to see as subtree
In this case we have to in-depth traverse it from the subtree root.
add_to_subtree(dir, subtree_id) /* in-depth tree traversal */
{
while(de = getdents(dir)) {
if (IS_DIR(de))
add_to_subtree(de, subtree_id)
else
set_subtree_id(de, subtree);
}
set_subtree_id(de, subtree);
}
It is possible to manipulate subtree content
For example we have following hierarchy
/root/subtree-1/a/b/c/d/e/f/g
/root/subtree-2/dir/
want rename /root/subtree-1/a to /root/subtree-2/dir/AA
first we have to move "a" to default tree "root"
#rename /root/subtree-1/a /root/a-1
Then we have assign to default subtree. Do it in width traverse order
Because otherwise this result in subtree assumptions violation.
#walk_in_width(/root/AA, 0 /* default subtree */)
Then assign target subtree_id
#walk_in_depth(/root/AA, 2)
Ok now all content from /root/a-1 belongs to subtree_id == 2 so it is possible
rename it in to target place
#rename /root/a-1 /root/subtree-2/dir/AA
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [RFC] vfs generic subtree support
2010-02-16 10:52 [RFC] vfs generic subtree support Dmitry Monakhov
@ 2010-02-16 12:20 ` Al Viro
2010-02-16 12:37 ` Dmitry Monakhov
0 siblings, 1 reply; 12+ messages in thread
From: Al Viro @ 2010-02-16 12:20 UTC (permalink / raw)
To: Dmitry Monakhov; +Cc: linux-fsdevel
On Tue, Feb 16, 2010 at 01:52:43PM +0300, Dmitry Monakhov wrote:
> Initially i've posted RFC patch-set which add subtree support for ext4.
> http://marc.info/?l=linux-ext4&m=126563931215496&w=2
> But in fact this is rather generic feature which may be implemented
> in vfs layer similar to namespace or security feature.
>
> A subtree of a directory tree T is a tree consisting of a directory
> (the subtree root) in T and all of its descendants in T.
>
> Subtree assumptions:
> * Each inode has subtree id (this id is stored inside inode).
> * Subtree id is inherent from parent directory if corresponding flag is set
> * Inode can not belongs to different subtrees
>
> i've ommit subtree_type feature in order to simplify brief explanation.
>
> Subtree with id == 0 has special meaning. It may contains roots of
> other subtrees (this feature is used for cross subtree renames)
> This feature has much in common with XFS project_id.
Um. Just how is it different from having normal subtrees mounted separately?
And what's the ID for?
We already can mount arbitrary subtrees of directory tree from given fs,
as many times as we want and in as many places as we like. With each
mountpoint acting as barrier to link() and rename().
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [RFC] vfs generic subtree support
2010-02-16 12:20 ` Al Viro
@ 2010-02-16 12:37 ` Dmitry Monakhov
2010-02-16 13:38 ` Al Viro
0 siblings, 1 reply; 12+ messages in thread
From: Dmitry Monakhov @ 2010-02-16 12:37 UTC (permalink / raw)
To: Al Viro; +Cc: linux-fsdevel
Al Viro <viro@ZenIV.linux.org.uk> writes:
> On Tue, Feb 16, 2010 at 01:52:43PM +0300, Dmitry Monakhov wrote:
>> Initially i've posted RFC patch-set which add subtree support for ext4.
>> http://marc.info/?l=linux-ext4&m=126563931215496&w=2
>> But in fact this is rather generic feature which may be implemented
>> in vfs layer similar to namespace or security feature.
>>
>> A subtree of a directory tree T is a tree consisting of a directory
>> (the subtree root) in T and all of its descendants in T.
>>
>> Subtree assumptions:
>> * Each inode has subtree id (this id is stored inside inode).
>> * Subtree id is inherent from parent directory if corresponding flag is set
>> * Inode can not belongs to different subtrees
>>
>> i've ommit subtree_type feature in order to simplify brief explanation.
>>
>> Subtree with id == 0 has special meaning. It may contains roots of
>> other subtrees (this feature is used for cross subtree renames)
>> This feature has much in common with XFS project_id.
>
> Um. Just how is it different from having normal subtrees mounted separately?
> And what's the ID for?
For example for quota needs. With subtree support we can account some
subtree in to corresponding quota_subtree id.
>
> We already can mount arbitrary subtrees of directory tree from given fs,
> as many times as we want and in as many places as we like. With each
> mountpoint acting as barrier to link() and rename().
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [RFC] vfs generic subtree support
2010-02-16 12:37 ` Dmitry Monakhov
@ 2010-02-16 13:38 ` Al Viro
2010-02-16 14:01 ` Dmitry Monakhov
0 siblings, 1 reply; 12+ messages in thread
From: Al Viro @ 2010-02-16 13:38 UTC (permalink / raw)
To: Dmitry Monakhov; +Cc: linux-fsdevel
On Tue, Feb 16, 2010 at 03:37:58PM +0300, Dmitry Monakhov wrote:
> > Um. Just how is it different from having normal subtrees mounted separately?
> > And what's the ID for?
> For example for quota needs. With subtree support we can account some
> subtree in to corresponding quota_subtree id.
What does that have to do with tree topology? Having it inherited from
parent is fine, but the rest... If you want to prevent renames/links
across an arbitrary subtree boundary, you can already have such policy
without any kernel changes; just mount them separately. I'm afraid
I still don't get it...
I certainly see a point in having some kind of "quota group ID" assigned
to fs objects, but that seems to be completely independent from any
tree topology considerations.
Again, setting up a barrier is as simple as adding
/foo/bar /foo/bar none bind,rw 0 0
in /etc/fstab or doing
mount --bind /foo/bar /foo/bar
when (or after) you've mounted your fs. Or
for i in /foo/*; do mount --bind $i $i; done
if you want all top-level subdirectories in /foo to be barriers, etc.
Either will prevent objects from one subtree to be renamable/linkable
from another. Can be arbitrary nested as well...
IOW, that looks like a trivially implemented policy that might or might not
be desirable for specific setup, but I don't see the reason to tie this quota
groups stuff to it or to its reimplementation...
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [RFC] vfs generic subtree support
2010-02-16 13:38 ` Al Viro
@ 2010-02-16 14:01 ` Dmitry Monakhov
2010-02-16 14:21 ` Al Viro
0 siblings, 1 reply; 12+ messages in thread
From: Dmitry Monakhov @ 2010-02-16 14:01 UTC (permalink / raw)
To: Al Viro; +Cc: linux-fsdevel
Al Viro <viro@ZenIV.linux.org.uk> writes:
> On Tue, Feb 16, 2010 at 03:37:58PM +0300, Dmitry Monakhov wrote:
>
>> > Um. Just how is it different from having normal subtrees mounted separately?
>> > And what's the ID for?
>> For example for quota needs. With subtree support we can account some
>> subtree in to corresponding quota_subtree id.
>
> What does that have to do with tree topology? Having it inherited from
> parent is fine, but the rest... If you want to prevent renames/links
> across an arbitrary subtree boundary, you can already have such policy
> without any kernel changes; just mount them separately. I'm afraid
> I still don't get it...
>
> I certainly see a point in having some kind of "quota group ID" assigned
> to fs objects, but that seems to be completely independent from any
> tree topology considerations.
Agree "subtree" is not really good word this. Because it may be useful
not only for subtrees. Also "quota group id" IMHO not really good (at
leas it is ambiguous).
Let's call it "metagroup" id. If you know better (more descriptive) word
for this purpose i please make your suggestion.
- Such metagroup may be assigned to inode. And this id is stored on
inode.
- It may be inherent from parent, if corresponding flag is set
on parent dir.
- metagroup id may be used by generic quota.
- metagroup id has no in common with link/rename behavior,
bind mount is responsible for such behavior.
Are you agree with following conception?
>
> Again, setting up a barrier is as simple as adding
> /foo/bar /foo/bar none bind,rw 0 0
> in /etc/fstab or doing
> mount --bind /foo/bar /foo/bar
> when (or after) you've mounted your fs. Or
> for i in /foo/*; do mount --bind $i $i; done
> if you want all top-level subdirectories in /foo to be barriers, etc.
> Either will prevent objects from one subtree to be renamable/linkable
> from another. Can be arbitrary nested as well...
>
> IOW, that looks like a trivially implemented policy that might or might not
> be desirable for specific setup, but I don't see the reason to tie this quota
> groups stuff to it or to its reimplementation...
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [RFC] vfs generic subtree support
2010-02-16 14:01 ` Dmitry Monakhov
@ 2010-02-16 14:21 ` Al Viro
2010-02-16 15:00 ` Dmitry Monakhov
0 siblings, 1 reply; 12+ messages in thread
From: Al Viro @ 2010-02-16 14:21 UTC (permalink / raw)
To: Dmitry Monakhov; +Cc: linux-fsdevel
On Tue, Feb 16, 2010 at 05:01:36PM +0300, Dmitry Monakhov wrote:
> Let's call it "metagroup" id. If you know better (more descriptive) word
> for this purpose i please make your suggestion.
>
> - Such metagroup may be assigned to inode. And this id is stored on
> inode.
> - It may be inherent from parent, if corresponding flag is set
> on parent dir.
> - metagroup id may be used by generic quota.
I would probably like to see example with fewer "may" and more details ;-)
Seriously, what kind of rules and uses for it do you have in mind? More
specific example would be nice...
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [RFC] vfs generic subtree support
2010-02-16 14:21 ` Al Viro
@ 2010-02-16 15:00 ` Dmitry Monakhov
2010-02-16 15:12 ` Matthew Wilcox
0 siblings, 1 reply; 12+ messages in thread
From: Dmitry Monakhov @ 2010-02-16 15:00 UTC (permalink / raw)
To: Al Viro; +Cc: linux-fsdevel
Al Viro <viro@ZenIV.linux.org.uk> writes:
> On Tue, Feb 16, 2010 at 05:01:36PM +0300, Dmitry Monakhov wrote:
>
>> Let's call it "metagroup" id. If you know better (more descriptive) word
>> for this purpose i please make your suggestion.
>>
>> - Such metagroup may be assigned to inode. And this id is stored on
>> inode.
>> - It may be inherent from parent, if corresponding flag is set
>> on parent dir.
- if inherent flag is not set, then inherent metagroup id
from mnt_root
>> - metagroup id may be used by generic quota.
>
> I would probably like to see example with fewer "may" and more details ;-)
> Seriously, what kind of rules and uses for it do you have in mind? More
> specific example would be nice...
Use-cases:
*Assing maximum disc space consumption for some hierarchy *
1) Create chroot environment
# tar xf chroot_env.tar /var/xxx/chroot
2) Assign some metagroup id to the chroot content (via not yet
existent ./metagroup cmd-tool)
# find /var/xxx/chroot | xargs ./metagroup --set 1000
3) Setup quota limits
# quota-set --type metagroup --blk_soft=1024M blk_hard=1024M /var
4) Export this tree (it may be more complex)
# mount /var/xxx/chroot /mnt/chroot -obound
5)Now we may use this /mnt/chroot as:
5A) A regular chroot envirement, user is unable to exceed metagroup
quota, regardless to real available space on /var/
5B) As a container's (namespace) root.
5C) export this /mnt/chroot to nfs server and nfs client can not
overcome given metagroup quota limit.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [RFC] vfs generic subtree support
2010-02-16 15:00 ` Dmitry Monakhov
@ 2010-02-16 15:12 ` Matthew Wilcox
2010-02-16 15:32 ` Dmitry Monakhov
0 siblings, 1 reply; 12+ messages in thread
From: Matthew Wilcox @ 2010-02-16 15:12 UTC (permalink / raw)
To: Dmitry Monakhov; +Cc: Al Viro, linux-fsdevel
On Tue, Feb 16, 2010 at 06:00:32PM +0300, Dmitry Monakhov wrote:
> Use-cases:
> *Assing maximum disc space consumption for some hierarchy *
>
> 1) Create chroot environment
> # tar xf chroot_env.tar /var/xxx/chroot
> 2) Assign some metagroup id to the chroot content (via not yet
> existent ./metagroup cmd-tool)
> # find /var/xxx/chroot | xargs ./metagroup --set 1000
>
> 3) Setup quota limits
> # quota-set --type metagroup --blk_soft=1024M blk_hard=1024M /var
>
> 4) Export this tree (it may be more complex)
> # mount /var/xxx/chroot /mnt/chroot -obound
>
> 5)Now we may use this /mnt/chroot as:
> 5A) A regular chroot envirement, user is unable to exceed metagroup
> quota, regardless to real available space on /var/
> 5B) As a container's (namespace) root.
> 5C) export this /mnt/chroot to nfs server and nfs client can not
> overcome given metagroup quota limit.
This all seems quota-related ... do you envisage uses that aren't
quota-related?
--
Matthew Wilcox Intel Open Source Technology Centre
"Bill, look, we understand that you're interested in selling us this
operating system, but compare it to ours. We can't possibly take such
a retrograde step."
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [RFC] vfs generic subtree support
2010-02-16 15:12 ` Matthew Wilcox
@ 2010-02-16 15:32 ` Dmitry Monakhov
2010-02-16 19:25 ` J. Bruce Fields
0 siblings, 1 reply; 12+ messages in thread
From: Dmitry Monakhov @ 2010-02-16 15:32 UTC (permalink / raw)
To: Matthew Wilcox; +Cc: Al Viro, linux-fsdevel
Matthew Wilcox <matthew@wil.cx> writes:
> On Tue, Feb 16, 2010 at 06:00:32PM +0300, Dmitry Monakhov wrote:
>> Use-cases:
>> *Assing maximum disc space consumption for some hierarchy *
>>
>> 1) Create chroot environment
>> # tar xf chroot_env.tar /var/xxx/chroot
>> 2) Assign some metagroup id to the chroot content (via not yet
>> existent ./metagroup cmd-tool)
>> # find /var/xxx/chroot | xargs ./metagroup --set 1000
>>
>> 3) Setup quota limits
>> # quota-set --type metagroup --blk_soft=1024M blk_hard=1024M /var
>>
>> 4) Export this tree (it may be more complex)
>> # mount /var/xxx/chroot /mnt/chroot -obound
>>
>> 5)Now we may use this /mnt/chroot as:
>> 5A) A regular chroot envirement, user is unable to exceed metagroup
>> quota, regardless to real available space on /var/
>> 5B) As a container's (namespace) root.
>> 5C) export this /mnt/chroot to nfs server and nfs client can not
>> overcome given metagroup quota limit.
>
> This all seems quota-related ... do you envisage uses that aren't
> quota-related?
Yes. Since link/rename behavior is no longer depends on metagroup
I'm consider it as quota related only.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [RFC] vfs generic subtree support
2010-02-16 15:32 ` Dmitry Monakhov
@ 2010-02-16 19:25 ` J. Bruce Fields
2010-02-16 19:32 ` Christoph Hellwig
0 siblings, 1 reply; 12+ messages in thread
From: J. Bruce Fields @ 2010-02-16 19:25 UTC (permalink / raw)
To: Dmitry Monakhov; +Cc: Matthew Wilcox, Al Viro, linux-fsdevel
On Tue, Feb 16, 2010 at 06:32:47PM +0300, Dmitry Monakhov wrote:
> Matthew Wilcox <matthew@wil.cx> writes:
>
> > On Tue, Feb 16, 2010 at 06:00:32PM +0300, Dmitry Monakhov wrote:
> >> Use-cases:
> >> *Assing maximum disc space consumption for some hierarchy *
> >>
> >> 1) Create chroot environment
> >> # tar xf chroot_env.tar /var/xxx/chroot
> >> 2) Assign some metagroup id to the chroot content (via not yet
> >> existent ./metagroup cmd-tool)
> >> # find /var/xxx/chroot | xargs ./metagroup --set 1000
> >>
> >> 3) Setup quota limits
> >> # quota-set --type metagroup --blk_soft=1024M blk_hard=1024M /var
> >>
> >> 4) Export this tree (it may be more complex)
> >> # mount /var/xxx/chroot /mnt/chroot -obound
> >>
> >> 5)Now we may use this /mnt/chroot as:
> >> 5A) A regular chroot envirement, user is unable to exceed metagroup
> >> quota, regardless to real available space on /var/
> >> 5B) As a container's (namespace) root.
> >> 5C) export this /mnt/chroot to nfs server and nfs client can not
> >> overcome given metagroup quota limit.
> >
> > This all seems quota-related ... do you envisage uses that aren't
> > quota-related?
> Yes. Since link/rename behavior is no longer depends on metagroup
> I'm consider it as quota related only.
It'd allow nfsd to implement export subtrees safely.
(The current problem: there's not an easy way to determine whether an
inode (looked up from a filehandle) is reachable from a given directory.
So if you export a directory that isn't the root of a filesystem, you
have an unfortunate choice:
- turn on the "subtree_check" export option: add information
sufficient to lookup the parent directory to each filehandle.
But then filehandles change (and clients get ESTALE) on
cross-directory rename.
- Accept the possibility that someone could fake up a filehandle
that grants access to files outside the exported subtree. OK
if you're exporting the subtree just for convenience, but bad
if you're exporting /usr/local and think /etc/some-secret is
safe without /usr/local being on a separate partition.
With subtrees presumably we could stick the subtree-id in the
filehandle, and the subtree would provide a security boundary that's
easy to check on filehandle lookup (by comparing the subtree-id in the
filehandle to the one in the inode you find). And subtrees would be
simpler to manage than separate partitions.)
--b.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [RFC] vfs generic subtree support
2010-02-16 19:25 ` J. Bruce Fields
@ 2010-02-16 19:32 ` Christoph Hellwig
2010-02-16 19:39 ` J. Bruce Fields
0 siblings, 1 reply; 12+ messages in thread
From: Christoph Hellwig @ 2010-02-16 19:32 UTC (permalink / raw)
To: J. Bruce Fields; +Cc: Dmitry Monakhov, Matthew Wilcox, Al Viro, linux-fsdevel
On Tue, Feb 16, 2010 at 02:25:40PM -0500, J. Bruce Fields wrote:
> It'd allow nfsd to implement export subtrees safely.
>
> (The current problem: there's not an easy way to determine whether an
> inode (looked up from a filehandle) is reachable from a given directory.
> So if you export a directory that isn't the root of a filesystem, you
> have an unfortunate choice:
>
> - turn on the "subtree_check" export option: add information
> sufficient to lookup the parent directory to each filehandle.
> But then filehandles change (and clients get ESTALE) on
> cross-directory rename.
>
> - Accept the possibility that someone could fake up a filehandle
> that grants access to files outside the exported subtree. OK
> if you're exporting the subtree just for convenience, but bad
> if you're exporting /usr/local and think /etc/some-secret is
> safe without /usr/local being on a separate partition.
>
> With subtrees presumably we could stick the subtree-id in the
> filehandle, and the subtree would provide a security boundary that's
> easy to check on filehandle lookup (by comparing the subtree-id in the
> filehandle to the one in the inode you find). And subtrees would be
> simpler to manage than separate partitions.)
NFS exporting is in fact the reason why the XFS hierachial project
quotas were added, but only for space usage accounting and enforcement
reason. Adding the project ID to the file handles does indeed sound
like a good idea, I'll see if it's easily implementable.
Note that in the end the best idea would be to simply allow mounting
multiple of these roots inside a single superblock. David Howell's
infrastructure for sharing a nfs superblock for multiple blocks
allows this, and I even implemented prototypes of this for ext2 and
xfs, and a rather mutilated version of my patches is still in btrfs.
>
> --b.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
---end quoted text---
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [RFC] vfs generic subtree support
2010-02-16 19:32 ` Christoph Hellwig
@ 2010-02-16 19:39 ` J. Bruce Fields
0 siblings, 0 replies; 12+ messages in thread
From: J. Bruce Fields @ 2010-02-16 19:39 UTC (permalink / raw)
To: Christoph Hellwig; +Cc: Dmitry Monakhov, Matthew Wilcox, Al Viro, linux-fsdevel
On Tue, Feb 16, 2010 at 02:32:05PM -0500, Christoph Hellwig wrote:
> On Tue, Feb 16, 2010 at 02:25:40PM -0500, J. Bruce Fields wrote:
> > It'd allow nfsd to implement export subtrees safely.
> >
> > (The current problem: there's not an easy way to determine whether an
> > inode (looked up from a filehandle) is reachable from a given directory.
> > So if you export a directory that isn't the root of a filesystem, you
> > have an unfortunate choice:
> >
> > - turn on the "subtree_check" export option: add information
> > sufficient to lookup the parent directory to each filehandle.
> > But then filehandles change (and clients get ESTALE) on
> > cross-directory rename.
> >
> > - Accept the possibility that someone could fake up a filehandle
> > that grants access to files outside the exported subtree. OK
> > if you're exporting the subtree just for convenience, but bad
> > if you're exporting /usr/local and think /etc/some-secret is
> > safe without /usr/local being on a separate partition.
> >
> > With subtrees presumably we could stick the subtree-id in the
> > filehandle, and the subtree would provide a security boundary that's
> > easy to check on filehandle lookup (by comparing the subtree-id in the
> > filehandle to the one in the inode you find). And subtrees would be
> > simpler to manage than separate partitions.)
>
> NFS exporting is in fact the reason why the XFS hierachial project
> quotas were added, but only for space usage accounting and enforcement
> reason. Adding the project ID to the file handles does indeed sound
> like a good idea, I'll see if it's easily implementable.
>
> Note that in the end the best idea would be to simply allow mounting
> multiple of these roots inside a single superblock.
I lost you there.
--b.
> David Howell's
> infrastructure for sharing a nfs superblock for multiple blocks
> allows this, and I even implemented prototypes of this for ext2 and
> xfs, and a rather mutilated version of my patches is still in btrfs.
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2010-02-16 19:39 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-02-16 10:52 [RFC] vfs generic subtree support Dmitry Monakhov
2010-02-16 12:20 ` Al Viro
2010-02-16 12:37 ` Dmitry Monakhov
2010-02-16 13:38 ` Al Viro
2010-02-16 14:01 ` Dmitry Monakhov
2010-02-16 14:21 ` Al Viro
2010-02-16 15:00 ` Dmitry Monakhov
2010-02-16 15:12 ` Matthew Wilcox
2010-02-16 15:32 ` Dmitry Monakhov
2010-02-16 19:25 ` J. Bruce Fields
2010-02-16 19:32 ` Christoph Hellwig
2010-02-16 19:39 ` J. Bruce Fields
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).