20 Jul
2008
20 Jul
'08
6:01 p.m.
On Sun, 2008-07-06 at 18:41 +0200, Ralf Becker wrote:
Hi Timo,
I've added support for a static mtab buffer.
Unfortunately 256 Bytes are too small by far. In my case the required space is about 3 KByte. To avoid unnecessary memory allocation the static size is determined at configuration time by getting the current buffer size and adding space for about 5 mountpoints more. In addition 'configure' now checks for sys/vmount.h
Committed with a few changes, could you try if it still works? :) http://hg.dovecot.org/dovecot-1.1/rev/ecc57955b99d
- Some small coding style changes to make it more consistent with rest of Dovecot code
- Handle mntctl() returning failure
- Instead of just one mntctl() retry I added a while-loop. The required allocation size can change if more mounts are added, right? So there's otherwise a small race condition between the size checking and the actual allocation that could cause an unwanted failure. And I think it's pretty safe to assume that the kernel won't return values that will cause infinite looping. :)