Messages in this thread | | | Date | Sun, 6 Dec 2009 08:39:58 +0000 | From | Al Viro <> | Subject | Re: [RFC 0/5] pathconf(3) with _PC_LINK_MAX |
| |
On Sun, Dec 06, 2009 at 04:58:58PM +0900, J. R. Okajima wrote: > The pathconf(_PC_LINK_MAX) cannot get the correct value, since linux > kernel doesn't provide such interface. And the current implementation in > GLibc issues statfs(2) first and then returns the predefined value > (EXT2_LINK_MAX, etc) based upoin the filesystem type. But GLibc doesn't > support all filesystem types. ie. when the target filesystem is unknown > to pathconf(3), it will return LINUX_LINK_MAX (127). > For GLibc, there is no way except implementing this poor method. > > This patch makes statfs(2) return the correct value via struct > statfs.f_spare[0].
Um... Why do we need that, again? Note that there is no way whatsoever for predicting whether link(2) will fail due to having too many existing links before you attempt the call - links can be created or removed between stat(2) and link(2). So any uses of that value are heuristical.
Can you actually show any use cases of that thing? Preferably - in existing code, but even a theoretical one would be interesting.
| |