Received: by 2002:a25:c593:0:0:0:0:0 with SMTP id v141csp968053ybe; Mon, 2 Sep 2019 12:04:05 -0700 (PDT) X-Google-Smtp-Source: APXvYqxWikixZZb+6l3lpwnEziB+geOoqZLmYpR8cPyUA7p95RFAYdNQaMlaXl0RdtpGa6tNlzqs X-Received: by 2002:a17:90a:b104:: with SMTP id z4mr14601973pjq.120.1567451045197; Mon, 02 Sep 2019 12:04:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1567451045; cv=none; d=google.com; s=arc-20160816; b=mOQv+1nPcq6TjoJaZTv6/Nx6k564sg3hJ7ii8yUHQdYtWmt7KsWCeRgFzwcteG22Hg mMILkCYnFdr7ScYkEofjbJMpygzsoiLRVUHICC5+O5pZCBqt7Wk6VFJUMbgY4nt8siL0 LUjEgbHwAuUX6LwxMbM6Xp/WlXB4rbWePdSOKtBLmeYN9EcFszwmVVhq+aqN3hPQ4lFm HXUN5IGqSpwFOCe18QHiHC6K4NloGo2w3UF8fXNniirLR4g5V1cX1FQxCU2F5R7H975K wvruEwXRawFP/PgexM3DN+MBzqwUWOrGZ9ii2WmnY/tC/8cuoOVwMCNJYm2Tjw7u5prW BIKQ== 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 :references:in-reply-to:from:subject:cc:to:message-id:date; bh=qV7fNLem6w0XHxbqSxeNkIHm11tbQ/fG+uZvEyhRnk8=; b=j5mpWCpEAsz6VrKY1HgCLYZnYup9Z2jLI1fLmB5wMxlZCG7A6Qa8+6U+lpLXFVJXv3 isxmtiHMBepCgg5K5XpCXRq2T2Mb946mnLS2vE618SXMTzPrxmHsIupImmFMIBW6L0bh 9mxlAp7YjXaAfeAS3BSkEx5rg7Y7Dz41MAnAoNq4O7lzxo/w0hGVaIuKMDryyWDL0OT9 jdqcwKxGQF8hpf1CDEHZXUsB9ItTa6/3Khj8qwOZ4pzeqo7/9/tC7b+Ok8GnP1B2Evi9 7WAg2E1+bkr22dIQjf+p7aLMRqH06dXjEjfMNV0PWhJjrfkl5vKdX/1mnxaw9kLm2zWz h9Vw== ARC-Authentication-Results: i=1; mx.google.com; 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 cp3si12698337plb.390.2019.09.02.12.03.48; Mon, 02 Sep 2019 12:04:05 -0700 (PDT) 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; 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 S1727002AbfIBTDB (ORCPT + 99 others); Mon, 2 Sep 2019 15:03:01 -0400 Received: from shards.monkeyblade.net ([23.128.96.9]:35780 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726773AbfIBTDB (ORCPT ); Mon, 2 Sep 2019 15:03:01 -0400 Received: from localhost (unknown [63.64.162.234]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: davem-davemloft) by shards.monkeyblade.net (Postfix) with ESMTPSA id A571C15404E28; Mon, 2 Sep 2019 12:03:00 -0700 (PDT) Date: Mon, 02 Sep 2019 12:03:00 -0700 (PDT) Message-Id: <20190902.120300.174900457187536042.davem@davemloft.net> To: benwei@fb.com Cc: sam@mendozajonas.com, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, openbmc@lists.ozlabs.org Subject: Re: [PATCH net-next] net/ncsi: support unaligned payload size in NC-SI cmd handler From: David Miller In-Reply-To: References: X-Mailer: Mew version 6.8 on Emacs 26.2 Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.5.12 (shards.monkeyblade.net [149.20.54.216]); Mon, 02 Sep 2019 12:03:00 -0700 (PDT) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Ben Wei Date: Mon, 2 Sep 2019 02:46:52 +0000 > Update NC-SI command handler (both standard and OEM) to take into > account of payload paddings in allocating skb (in case of payload > size is not 32-bit aligned). > > The checksum field follows payload field, without taking payload > padding into account can cause checksum being truncated, leading to > dropped packets. > > Signed-off-by: Ben Wei If you have to align and add padding, I do not see where you are clearing out that padding memory to make sure it is initialized. You do comparisons with 'payload' but make adjustments to 'len'. The logic is very confusing.