Hi, I'm starting to see, on a pretty standard Debian Jessie installation, some error messages that are apparently related to the ETOOMANYREFS errno. Firstly, the mail log shows this: dovecot: pop3-login: Error: fd_send(pop3, 18) failed: Too many references: cannot splice And then the login process fails: dovecot: pop3-login: Internal login failure (pid=34388 id=1) (internal failure, 1 successful auths): user=<username>, method=PLAIN, rip=rip, lip=lip, session=<session> Is this something that Dovecot should be able to handle, or is it strictly Debian/libc/MySillyMistake related? #uname -a Linux server 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u3 (2016-01-17) x86_64 GNU/Linux #dovecot --version 2.2.13 #dpkg -l | grep -E 'dovecot-core|libc6|linux-image' ii dovecot-core 1:2.2.13-12~deb8u1 amd64 ii libc6:amd64 2.19-18+deb8u3 amd64 ii libc6-i386 2.19-18+deb8u3 amd64 ii linux-image-3.16.0-4-amd64 3.16.7-ckt20-1+deb8u3 amd64 Best Regards, Luis
On 11 Mar 2016, at 03:48, Luis Ugalde <forondarena at gmail.com> wrote:> > Hi, > > I'm starting to see, on a pretty standard Debian Jessie installation, some > error messages that are apparently related to the ETOOMANYREFS errno. > > Firstly, the mail log shows this: > dovecot: pop3-login: Error: fd_send(pop3, 18) failed: Too many references: > cannot spliceApparently because Linux thinks the same fd has been passed around recursively too many times: http://lkml.iu.edu/hypermail/linux/kernel/1101.0/01917.html But Dovecot doesn't pass it recursively. It's only passed once from pop3-login to pop3 process.> Is this something that Dovecot should be able to handle, or is it strictly > Debian/libc/MySillyMistake related? > > #uname -a > Linux server 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u3 > (2016-01-17) x86_64 GNU/LinuxI wonder if there's a new kernel change that started detecting the recursion wrong.
El vie., 11 mar. 2016 a las 2:08, Timo Sirainen (<tss at iki.fi>) escribi?:> On 11 Mar 2016, at 03:48, Luis Ugalde <forondarena at gmail.com> wrote: > > > > Hi, > > > > I'm starting to see, on a pretty standard Debian Jessie installation, > some > > error messages that are apparently related to the ETOOMANYREFS errno. > > > > Firstly, the mail log shows this: > > dovecot: pop3-login: Error: fd_send(pop3, 18) failed: Too many > references: > > cannot splice > > Apparently because Linux thinks the same fd has been passed around > recursively too many times: > http://lkml.iu.edu/hypermail/linux/kernel/1101.0/01917.html > > But Dovecot doesn't pass it recursively. It's only passed once from > pop3-login to pop3 process. > > > Is this something that Dovecot should be able to handle, or is it > strictly > > Debian/libc/MySillyMistake related? > > > > #uname -a > > Linux server 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u3 > > (2016-01-17) x86_64 GNU/Linux > > I wonder if there's a new kernel change that started detecting the > recursion wrong. > >Yes, It's started to happen with the latest kernels from the Stable branch. This is the latest I have installed: 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt20-1+deb8u3 (2016-01-17) x86_64 Older Debian kernels are not showing up anything. This one, for example: 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u6 (2015-11-09) x86_64 Regards.