Hi, The 0002 patch isn't appplying to 1.6.3. It seems to be against 1.7 and
not 1.6.

vagrant@precise:/tmp/haproxy/haproxy-1.6.3$ patch -p1  <
 0002-MEDIUM-pools-add-a-new-flag-to-avoid-rounding-pool-s.patch
(Stripping trailing CRs from patch.)
patching file include/common/memory.h
Hunk #1 FAILED at 33.
1 out of 1 hunk FAILED -- saving rejects to file include/common/memory.h.rej
(Stripping trailing CRs from patch.)
patching file src/memory.c
Hunk #2 FAILED at 43.
1 out of 2 hunks FAILED -- saving rejects to file src/memory.c.rej
vagrant@precise:/tmp/haproxy/haproxy-1.6.3$ cat include/common/memory.h.rej
--- include/common/memory.h
+++ include/common/memory.h
@@ -33,6 +33,7 @@
 #else
 #define MEM_F_SHARED 0
 #endif
+#define MEM_F_EXACT 0x2

 /* reserve an extra void* at the end of a pool for linking */
 #ifdef DEBUG_MEMORY_POOLS
vagrant@precise:/tmp/haproxy/haproxy-1.6.3$ cat src/memory.c.rej
--- src/memory.c
+++ src/memory.c
@@ -43,8 +45,10 @@
  * so that the visible parts outside are not affected.
  */

- align = 16;
- size  = ((size + POOL_EXTRA + align - 1) & -align) - POOL_EXTRA;
+ if (!(flags & MEM_F_EXACT)) {
+ align = 16;
+ size  = ((size + POOL_EXTRA + align - 1) & -align) - POOL_EXTRA;
+ }

  start = &pools;
  pool = NULL;


-gary

On Mon, Jan 25, 2016 at 8:48 AM, Gary Barrueto <[email protected]> wrote:

> Hi, I'll apply the patches and rerun our tests today. Thanks guys!
>
> -gary
>
> On Sun, Jan 24, 2016 at 5:49 PM, Willy Tarreau <[email protected]> wrote:
>
>> Hi again,
>>
>> On Sun, Jan 24, 2016 at 09:00:31PM +0100, Willy Tarreau wrote:
>> > OK so I'm having a preliminary patch for the performance regression
>> > causing incomplete buffers to be processed. It's not optimal yet,
>> > but it's safe and works for me. Now I can reproduce the tests and
>> > always observe the exact same performance between all runs +/- 0.2%.
>>
>> I've cleaned up the patch and implemented the enforcement of the exact
>> requested buffer size. Now the default setting being 16384, it leaves
>> in a single SSL_write() and the performance issue is gone. I'm getting
>> 416 req/s stable. I'll backport these patches to 1.6 but first I want
>> to understand why we're seeing a freeze at exactly 16000 bytes. We have
>> it in 1.5 too.
>>
>> I'm attaching the 3 patches to apply for Gary. They should apply
>> cleanly over 1.6. That's all for this evening or I'll start doing
>> stupid things.
>>
>> Willy
>>
>>
>

Reply via email to