From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Miller Subject: Re: [PATCH net-next v2] net: remove redundant input checks in SIOCSIFTXQLEN case of dev_ifsioc Date: Tue, 24 Jul 2018 11:36:50 -0700 (PDT) Message-ID: <20180724.113650.740665928630154623.davem@davemloft.net> References: <1532429580-9710-1-git-send-email-tariqt@mellanox.com> Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: netdev@vger.kernel.org, eranbe@mellanox.com, xiyou.wangcong@gmail.com To: tariqt@mellanox.com Return-path: Received: from shards.monkeyblade.net ([23.128.96.9]:36156 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388366AbeGXTol (ORCPT ); Tue, 24 Jul 2018 15:44:41 -0400 In-Reply-To: <1532429580-9710-1-git-send-email-tariqt@mellanox.com> Sender: netdev-owner@vger.kernel.org List-ID: From: Tariq Toukan Date: Tue, 24 Jul 2018 13:53:00 +0300 > The cited patch added a call to dev_change_tx_queue_len in > SIOCSIFTXQLEN case. > This obsoletes the new len comparison check done before the function call. > Remove it here. > > For the desicion of keep/remove the negative value check, we examine the > range check in dev_change_tx_queue_len. > On 64-bit we will fail with -ERANGE. The 32-bit int ifr_qlen will be sign > extended to 64-bits when it is passed into dev_change_tx_queue_len(). And > then for negative values this test triggers: > > if (new_len != (unsigned int)new_len) > return -ERANGE; > > because: > if (0xffffffffWHATEVER != 0x00000000WHATEVER) > > On 32-bit the signed value will be accepted, changing behavior. > > Therefore, the negative value check is kept. > > Fixes: 3f76df198288 ("net: use dev_change_tx_queue_len() for SIOCSIFTXQLEN") > Signed-off-by: Tariq Toukan > Reviewed-by: Eran Ben Elisha Applied, thank you.