Received: by 2002:ac0:a679:0:0:0:0:0 with SMTP id p54csp558047imp; Thu, 21 Feb 2019 06:49:56 -0800 (PST) X-Google-Smtp-Source: AHgI3IarKUBLGWyL0VNvEDb3Gg7wrpTghH3d1cwxVnz4ZbjBiSssPp1uhJdOMCR8ZBWJZtxvSRh1 X-Received: by 2002:aa7:8497:: with SMTP id u23mr41226154pfn.253.1550760596452; Thu, 21 Feb 2019 06:49:56 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1550760596; cv=none; d=google.com; s=arc-20160816; b=YV9KQJMklP1wfLom7jlDRKx8PacPzr7xrxZjqUraLbAceOaREH4pw/SzZWyimk9EeY Buq61EZEgu/FvA9ULxS4Idin/SJ2GkXmQqyc0CZ6JpEABI0AZz6DkGtcSPp95nZkokfO ZQKtjrvEh5wKdaB1raFp7FcpaTORmkWpm3mJl6AW2mDrrgOY9G/bl9rL4X6SkpLuGY5Z lXVgc6W5EOnStpDViR/Vp1l6IIx41R79QHIB3iJ/+NWOwiMl0P3o64I9dZ+Y+qOZKzVC /bldbTwQ0WoUuOSi/IBqHM521XT30p84X/46voAVcOef1eNSpB8wS0fQa6GR1RMLyxFS k96Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=glsIoyax4URdjlSnEgjCYKzephdT8zpy7XJ+QDN5YkY=; b=kv62x/IpGo4yrxqGeZ4T/zADP9nrFoVrIW2dGBeNMo7KTtAjcu62eAlFvHHCBShz4/ JXTjprYtJoREiI5ILK3AvuZz1YUPapx/0z3tVKZF2qWMrAjwzaM8lSRU4rhC+CIAaMk0 XIpKYonmqwhd/EDYiNJia6jnM8/twECLG2rhyNRfVObHtJisSbqL18YsxTfUWRZoV2n6 9iBceunOJJIJ4pH5k3JF8Y0KCL12U6nuEGGo7pWuRuL8tGROOQ7cbW9Cbe1E7ZAtSdQB KPhmA1w0h9Al343k1sBXcIwEHHg/2VcRYi5PVtzi9wYHDUjvV+vTfhiBEXjS65HsQfAQ NnYA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=kIit28Vv; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h189si5256323pge.152.2019.02.21.06.49.41; Thu, 21 Feb 2019 06:49:56 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=kIit28Vv; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728958AbfBUOsw (ORCPT + 99 others); Thu, 21 Feb 2019 09:48:52 -0500 Received: from mail.kernel.org ([198.145.29.99]:34232 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728515AbfBUOj6 (ORCPT ); Thu, 21 Feb 2019 09:39:58 -0500 Received: from localhost (5356596B.cm-6-7b.dynamic.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 71BA22084D; Thu, 21 Feb 2019 14:39:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1550759997; bh=ayb26v0SisjBjHz4fVKtALDQCalQ3VVzMAAvHDD64yA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=kIit28VvdUrZFfUnoEIcqyT2Bm79LLQG04lwbHqfxu9zG/CTj531PJ53JH+aj7rjL Z1GQ+F5/8vTNbdamgrchRmvavTSJBIHDOyupGM2EBYHz/BIYjtu+XuavkQTSQiWjxD pdtomEJiJjo7fZMn2TMgY8Jq8uKghX0mgsulIx7k= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Jann Horn , Alexander Duyck , "David S. Miller" Subject: [PATCH 4.14 18/23] net: Do not allocate page fragments that are not skb aligned Date: Thu, 21 Feb 2019 15:36:00 +0100 Message-Id: <20190221125247.664264080@linuxfoundation.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190221125246.162644302@linuxfoundation.org> References: <20190221125246.162644302@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review X-Patchwork-Hint: ignore MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Alexander Duyck [ Upstream commit 3bed3cc4156eedf652b4df72bdb35d4f1a2a739d ] This patch addresses the fact that there are drivers, specifically tun, that will call into the network page fragment allocators with buffer sizes that are not cache aligned. Doing this could result in data alignment and DMA performance issues as these fragment pools are also shared with the skb allocator and any other devices that will use napi_alloc_frags or netdev_alloc_frags. Fixes: ffde7328a36d ("net: Split netdev_alloc_frag into __alloc_page_frag and add __napi_alloc_frag") Reported-by: Jann Horn Signed-off-by: Alexander Duyck Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- net/core/skbuff.c | 4 ++++ 1 file changed, 4 insertions(+) --- a/net/core/skbuff.c +++ b/net/core/skbuff.c @@ -353,6 +353,8 @@ static void *__netdev_alloc_frag(unsigne */ void *netdev_alloc_frag(unsigned int fragsz) { + fragsz = SKB_DATA_ALIGN(fragsz); + return __netdev_alloc_frag(fragsz, GFP_ATOMIC | __GFP_COLD); } EXPORT_SYMBOL(netdev_alloc_frag); @@ -366,6 +368,8 @@ static void *__napi_alloc_frag(unsigned void *napi_alloc_frag(unsigned int fragsz) { + fragsz = SKB_DATA_ALIGN(fragsz); + return __napi_alloc_frag(fragsz, GFP_ATOMIC | __GFP_COLD); } EXPORT_SYMBOL(napi_alloc_frag);