Summary: | emerge hangs when ccache volume is automounted | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Dirk Heinrichs <dirk.heinrichs.ext> |
Component: | [OLD] Core system | Assignee: | Gentoo Kernel Bug Wranglers and Kernel Maintainers <kernel> |
Status: | RESOLVED UPSTREAM | ||
Severity: | normal | CC: | swegener |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Dirk Heinrichs
2005-05-11 00:27:02 UTC
and what would you propose be done to 'fix' this ? This is an autofs cache issue. The first time after autofs is set up, the chgrp call works. Afterwards it fails. chown and chgrp use the fts functions to traverse a directory structure. These functions are optimizing this task by doing a chdir in every directory and then reading the entries. We can modify chown and chgrp to not do this chdir stuff, this makes the chown and chgrp call work, but this is no real solution. We're losing speed and this chown/chgrp issue is in my oppinion a minor one that does not qualify for such a change. I'm currently debugging the kernel side to see if we can fix it this way. For reference, after a fresh autofs setup: luna ~ # stat /misc/ccache File: `/misc/ccache' Size: 149 Blocks: 0 IO Block: 4096 directory Device: 301h/769d Inode: 128 Links: 5 Access: (2775/drwxrwsr-x) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2005-05-11 20:11:17.573339798 +0000 Modify: 2005-05-11 18:17:03.377099379 +0000 Change: 2005-05-11 19:57:55.832619548 +0000 luna ~ # umount /misc/ccache luna ~ # stat /misc/ccache File: `/misc/ccache' Size: 0 Blocks: 0 IO Block: 4096 directory Device: fh/15d Inode: 6779354 Links: 2 Access: (0555/dr-xr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2005-05-11 20:19:01.460390231 +0000 Modify: 2005-05-11 20:18:53.670480792 +0000 Change: 2005-05-11 20:18:53.670480792 +0000 luna ~ # stat /misc/ccache File: `/misc/ccache' Size: 149 Blocks: 0 IO Block: 4096 directory Device: 301h/769d Inode: 128 Links: 5 Access: (2775/drwxrwsr-x) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2005-05-11 20:11:17.573339798 +0000 Modify: 2005-05-11 18:17:03.377099379 +0000 Change: 2005-05-11 19:57:55.832619548 +0000 The 301h/769d device is the correct one. As you can see the second stat call returns the virtual ccache directory that autofs created to serve as a mountpoint. And the chdir call from chgrp fails because it is doesn't really exist. No portage issue, re-assigning to kernel team. Looks like an upstream issue, we don't modify autofs at all. If you have finished investigating the problem, the best bet would be to file a bug at http://bugzilla.kernel.org for it. |