Daniel, don't reply anything to Damien just yet. Can you please run a simple test on Monday. Try "tcpbench -u -n 2 <ip>" (as in multi- connection test) without your patch and then with the patch and see if behavior is changed.
Thanks On 29 August 2014 18:01, Damien Miller <d...@mindrot.org> wrote: > On Fri, 29 Aug 2014, Daniel Jakots wrote: > >> Hi, >> >> When running tcpbench -su, a lot of them are counted as "missed PCB >> cache". > ... >> + n = recvfrom(fd, ptb->dummybuf, ptb->dummybuf_len, 0, >> + (struct sockaddr *)&ss, &slen); >> + if (n > 0 && connect(fd, (const struct sockaddr *)&ss, slen)) >> + warn("fail to connect"); > > What's the benefit of this? I've never seen an application do this; > wouldn't it be better to improve the PCB cache so it caught this case > (which seems the usual way UDP applications behave) instead? > > -d >