On Tue, Jun 12, 2012 at 12:47:49PM +0200, Mateusz Guzik wrote: > The problem is that fdalloc grows to at most fdp->fd_nfiles * 2, which > still may not be enough to have place for new fd with high number.
I was under impression that fd_first_free() can return at most fdp->fd_nfiles, but indeed I missed this: if (low >= size) return (low); So fd_first_free() can return number biffer than size... > This fixed the problem for me, although I'm not sure whether it's ok to > grow the table like this: > http://people.freebsd.org/~mjg/patches/fdalloc.patch The patch looks good to me, could you please commit it, preferably after David's trying it and also update fd_first_free() comment, so it is clear that returned value can exceed 'size -1'? David, can you try Mateusz's patch? Thanks. -- Pawel Jakub Dawidek http://www.wheelsystems.com FreeBSD committer http://www.FreeBSD.org Am I Evil? Yes, I Am! http://tupytaj.pl
pgpCJqSIRyyap.pgp
Description: PGP signature