[RHEL7,COMMIT] sctp: suppress warnings on high order memory allocation on sctp chunk creation

Submitted by Konstantin Khorenko on Oct. 31, 2019, 11:50 a.m.

Details

Message ID 201910311150.x9VBoMvg016572@finist-ce7.sw.ru
State New
Series "sctp: suppress warnings on high order memory allocation on sctp chunk creation"
Headers show

Commit Message

Konstantin Khorenko Oct. 31, 2019, 11:50 a.m.
The commit is pushed to "branch-rh7-3.10.0-1062.4.1.vz7.115.x-ovz" and will appear at https://src.openvz.org/scm/ovz/vzkernel.git
after rh7-3.10.0-1062.4.1.vz7.115.5
------>
commit ba10a40a017e43a4686c0bbe28d84577e8bdef54
Author: Konstantin Khorenko <khorenko@virtuozzo.com>
Date:   Thu Oct 31 12:50:31 2019 +0300

    sctp: suppress warnings on high order memory allocation on sctp chunk creation
    
    _sctp_make_chunk() could allocate skbs up to 65K in size
    (4th order page), so we get complains about high order page
    allocations from our detection mechanizm while running sctp
    testsuite.
    
    It's not evident that substituting alloc_skb() with
    alloc_skb_with_frags() speeds up the sender performance.
    On another hand if the node's memory is highly fragmented
    and allocation of high order pages has noticable latency,
    it influences the sender most, not the node as a whole.
    
    And taking into account that sctp is not widely used,
    let's just shut up the warning in this place.
    
    https://jira.sw.ru/browse/PSBM-93798
    
    Signed-off-by: Konstantin Khorenko <khorenko@virtuozzo.com>
---
 net/sctp/sm_make_chunk.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Patch hide | download patch | download mbox

diff --git a/net/sctp/sm_make_chunk.c b/net/sctp/sm_make_chunk.c
index 8fef389dd2fa..4611e85ace9f 100644
--- a/net/sctp/sm_make_chunk.c
+++ b/net/sctp/sm_make_chunk.c
@@ -1408,7 +1408,7 @@  static struct sctp_chunk *_sctp_make_chunk(const struct sctp_association *asoc,
 		goto nodata;
 
 	/* No need to allocate LL here, as this is only a chunk. */
-	skb = alloc_skb(chunklen, gfp);
+	skb = alloc_skb(chunklen, gfp | __GFP_ORDER_NOWARN);
 	if (!skb)
 		goto nodata;