Author: adconrad Date: 2013-08-17 23:38:38 +0000 (Sat, 17 Aug 2013) New Revision: 5685
Added: glibc-package/trunk/debian/patches/any/cvs-tst-cancel4-buf.diff Log: Actually add the patch from the previous commit Added: glibc-package/trunk/debian/patches/any/cvs-tst-cancel4-buf.diff =================================================================== --- glibc-package/trunk/debian/patches/any/cvs-tst-cancel4-buf.diff (rev 0) +++ glibc-package/trunk/debian/patches/any/cvs-tst-cancel4-buf.diff 2013-08-17 23:38:38 UTC (rev 5685) @@ -0,0 +1,56 @@ +commit e7074e4c5edb0acaa979ea08e533736f906a9d68 +Author: David S. Miller <da...@davemloft.net> +Date: Tue Jul 23 02:31:37 2013 -0700 + + Increase nptl test case buffer size so we really block on current Linux kernels. + + * tst-cancel4.c (WRITE_BUFFER_SIZE): Increase to 16384. + +diff --git a/nptl/ChangeLog b/nptl/ChangeLog +index fc2ef41..0e4747e 100644 +--- a/nptl/ChangeLog ++++ b/nptl/ChangeLog +@@ -1,3 +1,7 @@ ++2013-07-22 David S. Miller <da...@davemloft.net> ++ ++ * tst-cancel4.c (WRITE_BUFFER_SIZE): Increase to 16384. ++ + 2013-07-19 Dominik Vogt <v...@de.ibm.com> + + * pthread_mutex_lock.c: Fix whitespace. +diff --git a/nptl/tst-cancel4.c b/nptl/tst-cancel4.c +index 9ffd5d1..10b7c6e 100644 +--- a/nptl/tst-cancel4.c ++++ b/nptl/tst-cancel4.c +@@ -83,7 +83,30 @@ static pthread_barrier_t b2; + # define IPC_ADDVAL 0 + #endif + +-#define WRITE_BUFFER_SIZE 4096 ++/* The WRITE_BUFFER_SIZE value needs to be choosen such that if we set ++ the socket send buffer size to '1', a write of this size on that ++ socket will block. ++ ++ The Linux kernel imposes a minimum send socket buffer size ++ which has changed over the years. Currently the value is: ++ ++ 2 * (2048 + SKB_DATA_ALIGN(sizeof(struct sk_buff))) ++ ++ which is attempting to make sure that with standard MTUs, ++ TCP can always queue up at least 2 full sized packets. ++ ++ Furthermore, there is logic in the socket send paths that ++ will allow one more packet (of any size) to be queued up as ++ long as some socket buffer space remains. Blocking only ++ occurs when we try to queue up a new packet and the send ++ buffer space has already been fully consumed. ++ ++ Therefore we must set this value to the largest possible value of ++ the formula above (and since it depends upon the size of "struct ++ sk_buff", it is dependent upon machine word size etc.) plus some ++ slack space. */ ++ ++#define WRITE_BUFFER_SIZE 16384 + + /* Cleanup handling test. */ + static int cl_called; -- To UNSUBSCRIBE, email to debian-glibc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/e1vaq4t-0001h5...@vasks.debian.org