From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr0-f193.google.com (mail-wr0-f193.google.com [209.85.128.193]) by dpdk.org (Postfix) with ESMTP id D5FBE2BBD for ; Wed, 23 May 2018 16:34:13 +0200 (CEST) Received: by mail-wr0-f193.google.com with SMTP id 94-v6so26911124wrf.5 for ; Wed, 23 May 2018 07:34:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=BFVQMezbPB5GDjG4gOgXAeK2Y9GEQMWD8PxvoRzfOmQ=; b=i/NlV7PvTth56T1fia6W6XFIYciZJr2cERWEzstOs4BZDVbFMdgLcmXwTb5JlbN5I7 8jpegBRiODb+/6zZSoB5K3FRD3omULPa7H+Qexb8KMrYaRApHeJRkmm2cvEt5l47yq+Y LAcswHQLGQ6oXHbSug7O2BPqN304ZM+iHS5ME2P8lM9n9s/XMylLV1XvVZOgcQ5RxaCg CmmbEP7zyOtTYYLRw4np37GxXosxrT35xAh/NEKFo+xGC+rXsHzfh1OUqHOR6mNKTn6G jnm+Lqb9KeZUlBHS8X8l1MvZIRwZ0r2lqZclWHAc5Yodj4xCtk5SOlH3bKeixh11+JkE +S8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=BFVQMezbPB5GDjG4gOgXAeK2Y9GEQMWD8PxvoRzfOmQ=; b=iTVtviJQjAb1kQ/bodTnIaNPIey4YL4F1PqC1YeJusJQTT3r/+LUimFAuXHYOdVFpS dhjKjdyGr4yyq4FJT2ang6yHpLOVs8AV6Ollk8u6kNPhuKDQ3WeUgkarWqUcpmrLrBTE wdgE49TRnrAMibASp727YOio5N25uddWJtYQvn6Ww6mhCMVUykdw3rz1BzubR2JowxH9 FXCa+Cmgt1DJRgMcbeADbxBaLvH/oz8udZnsSEG/GCOnM9mJmRIaKcT7OYTu8fIlI8sG ZC30WGInCIe4aB9lMTmHgh0IGf2C3OkUJOCYqo85VzP5mdALvGzdmqj2NkNykSbK8QUh nE2Q== X-Gm-Message-State: ALKqPwfMUmEQPsyjMk6qsbhQEq81wgpdvNy5Y1fwvph+ZgJ80ixyxAZp GiGZgU9hg0NpuCiwF6Ox9Xk= X-Google-Smtp-Source: AB8JxZrNvs1XK7FnuD6YaszHnd9Hw83U+NxxnoDtDCN8/uIgOkeQm7EGODYcWDA1LwRcYLwC4b0PQA== X-Received: by 2002:adf:c109:: with SMTP id r9-v6mr2951240wre.84.1527086053613; Wed, 23 May 2018 07:34:13 -0700 (PDT) Received: from localhost ([2a00:23c5:be9a:5200:ce4c:82c0:d567:ecbb]) by smtp.gmail.com with ESMTPSA id 72-v6sm4173998wrb.22.2018.05.23.07.34.12 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 23 May 2018 07:34:12 -0700 (PDT) From: luca.boccassi@gmail.com To: Andy Green Cc: Bruce Richardson , dpdk stable Date: Wed, 23 May 2018 15:33:35 +0100 Message-Id: <20180523143344.16885-14-luca.boccassi@gmail.com> X-Mailer: git-send-email 2.14.2 In-Reply-To: <20180523143344.16885-1-luca.boccassi@gmail.com> References: <20180516100945.4449-2-luca.boccassi@gmail.com> <20180523143344.16885-1-luca.boccassi@gmail.com> Subject: [dpdk-stable] patch 'net: explicit cast in L4 checksum' has been queued to LTS release 16.11.7 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 May 2018 14:34:14 -0000 Hi, FYI, your patch has been queued to LTS release 16.11.7 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 05/25/18. So please shout if anyone has objections. Thanks. Luca Boccassi --- >>From d50a05251b3d59d177ce952e1677c88282580b6c Mon Sep 17 00:00:00 2001 From: Andy Green Date: Tue, 22 May 2018 09:24:22 +0800 Subject: [PATCH] net: explicit cast in L4 checksum [ upstream commit f37a2e7c747b0758fcd8390482aeeac490f688b5 ] GCC 8.1 warned: In function 'rte_ipv4_udptcp_cksum': rte_byteorder.h:51:24: warning: conversion from 'long unsigned int' to 'uint32_t' {aka 'unsigned int'} may change value [-Wconversion] #define rte_bswap16(x) ((uint16_t) (__builtin_constant_p(x) ? \ ^ rte_byteorder.h:85:29: note: in expansion of macro 'rte_bswap16' #define rte_be_to_cpu_16(x) rte_bswap16(x) ^~~~~~~~~~~ rte_ip.h:321:11: note: in expansion of macro 'rte_be_to_cpu_16' l4_len = rte_be_to_cpu_16(ipv4_hdr->total_length) - ^~~~~~~~~~~~~~~~ Also with this one, it is a cast that always occurred and is just being done explicitly, with no changes to the generated code. The warning stack is misleading, it points to the last element in the macro that produced the lhs of the subtraction above. But the only "unsigned long int" in the expression is the result of the sizeof() on the rhs, it promotes the subtraction result to unsigned long. So the error actually relates to the result of the outer subtraction. The actual error is "you are trying to put an unsigned long into a uint32_t". We always did so, the fix is just to inform the compiler it is intentional with an explicit cast. Fixes: 6006818cfb ("net: new checksum functions") Signed-off-by: Andy Green Acked-by: Bruce Richardson --- lib/librte_net/rte_ip.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/librte_net/rte_ip.h b/lib/librte_net/rte_ip.h index 32ee38461..19d6c95c8 100644 --- a/lib/librte_net/rte_ip.h +++ b/lib/librte_net/rte_ip.h @@ -380,8 +380,8 @@ rte_ipv4_udptcp_cksum(const struct ipv4_hdr *ipv4_hdr, const void *l4_hdr) uint32_t cksum; uint32_t l4_len; - l4_len = rte_be_to_cpu_16(ipv4_hdr->total_length) - - sizeof(struct ipv4_hdr); + l4_len = (uint32_t)(rte_be_to_cpu_16(ipv4_hdr->total_length) - + sizeof(struct ipv4_hdr)); cksum = rte_raw_cksum(l4_hdr, l4_len); cksum += rte_ipv4_phdr_cksum(ipv4_hdr, 0); -- 2.14.2