I have been upgraded dovecot today and I get following errors:
Jun 14 12:08:54 [dovecot] IMAP(adnae at xxxxxx.xxx): inotify_init() failed: Function not implemented Jun 14 12:08:54 [dovecot] IMAP(auftrag at xxxxxxx.xxx): inotify_init() failed: Function not implemented Jun 14 12:08:54 [dovecot] IMAP(swolf at xxxxxx.xxx): inotify_init() failed: Function not implemented
I have a 64 bit system (Gentoo [amd64]) and I have enabled this function on my kernel:
Kernel: 2.6.16-gentoo-r9: [*] Inotify file change notification support
One of our developers wanted inotify support in dovecot, and look what happens - lol.
The error is that you have glibc-2.4 which triggers inotify support in dovecot on linux boxes (in the Gentoo ebuild). However, glibc-2.4 needs to be compiled against linux-headers-2.6.13 or later as they provide the linux/inotify.h header which glibc needs. I've spoken to our toolchain guys and they don't want to remove glibc's inotify.h so they keep their ABI which makes perfect sense to them.
So I've hacked up a patch to dovecots configure.in that only enables inotify if it really works :) It also tests for inotify, then kqueue, then dnotify if no notify method is specified. Seems to work well.
If upstream (Timo) accepts it then I'll roll it into beta9's ebuild ASAP
A better solution would be to have something in the code though as if the kernel suddenly drops to <2.6.13 then you'll get the same errors.
In the meantime, I've forced the beta9 ebuild to only use inotify if
=glibc-2.4 and >=linux-headers-2.6.16 are present, and I hope glibc has been compiled against them - lol.
Thanks
-- Roy Marples uberlord@gentoo.org Gentoo/Linux Developer (baselayout, networking)