Re: Reading/changing projid of a symlink

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

 



So the only way to remove a symlink from a project is to remove it?

Here's my use case. In Apache Mesos we use XFS project quotas for disk
space isolation. Every container sandbox is allocated its own project
ID. When the container terminates its project ID is unset from the
sandbox and files inside it, and can be used for other containers.
Sandboxes of terminated containers stay on the host for some time for
debugging, etc. With such approach the inability to remove projid from
symlinks presents a small problem: when a project ID is reused for a
new container, any lingering symlinks that still have that project ID
will contribute to disk usage of the new container. Typically not
much, but still that's inaccurate. I guess we'll need to change when
we "deallocate" projids.

On Tue, Jun 12, 2018 at 7:36 AM, Carlos Maiolino <cmaiolino@xxxxxxxxxx> wrote:
> On Wed, May 30, 2018 at 05:26:46PM -0700, Ilya Pronin wrote:
>> Hello,
>>
>> I am trying to recursively check/change projid on a directory that
>> contains symlinks among other files. The way I do it is like this
>> (attributes reading part as an example, modulo error handling):
>>
>> oflags = O_NOFOLLOW | O_RDONLY;
>> if (S_ISDIR(stat->st_mode))
>>         oflags |= O_DIRECTORY;
>> if (S_ISLNK(stat->st_mode))
>>         oflags |= O_PATH;
>> fd = open(path, oflags, 0);
>> xfsctl(NULL, fd, XFS_IOC_FSGETXATTR, &attr);
>>
>> The xfsctl() call fails with EBADF. Apparently this is because
>> xfsctl() is implemented as ioctl(), at least on Linux, which doesn't
>> work with file descriptors obtained with O_PATH. Is there any way to
>> manipulate projid on symlinks?
>>
>
> Not sure if somebody already replied you, I couldn't find anything in my mbox,
> but you can't.
>
> Out of curiosity, why would you do that though?
>
>
>> Thanks!
>>
>> --
>> Ilya Pronin
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-xfs" in
>> the body of a message to majordomo@xxxxxxxxxxxxxxx
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
> --
> Carlos



-- 
Ilya Pronin
--
To unsubscribe from this list: send the line "unsubscribe linux-xfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux