On Fri, 9 Nov 2012 10:29:13 +0000 Dan Van Der Ster <[email protected]> wrote:
> BTW, in fssync and salvsync and a couple other places in the code we > see: > #define FD_SETSIZE 65536 > > Naive question… would an alternative "fix" here be to do something > like: > > #ifdef LINUX > #define FD_SETSIZE 1024 > #endif > > then AFS would work independent of the ulimit, (at least until > select() is removed everywhere)? No, in fact, the way that the headers work, we're already effectively doing that. We define FD_SETSIZE to be 65536, and later on the headers redefine it to be 1024. And although there are other uses of select(), I think the fssync code seems to be the only place this can be a problem; the salvsync code should not involve high-numbered file descriptors. The only other uses are small utilities, like stuff that uses lwp. By the way, all other unixes I am aware of allow you to change FD_SETSIZE as the comments suggest; it is only on Linux where this is silently ignored, causing bit flips. This behavior change to expose "dangerous" applications seems to cause traditional unix programs possibily written decades ago to suddenly cause bit flips after that mentioned version. Not even, say, assert()... -- Andrew Deason [email protected] _______________________________________________ OpenAFS-info mailing list [email protected] https://lists.openafs.org/mailman/listinfo/openafs-info
