From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id E93E6C43334 for ; Mon, 27 Jun 2022 16:54:09 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp2.osuosl.org (Postfix) with ESMTP id 79C20400C1; Mon, 27 Jun 2022 16:54:09 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org 79C20400C1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=osuosl.org; s=default; t=1656348849; bh=1t+AOB9qsLrYe0n7eEkvpGIzgcMedGu5b9Q+1PLeTHk=; h=From:To:Date:Subject:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From; b=VCHqzz7SZNNh0aYOVlG+njRAkJJlPz3uryFPPVogMUTcHhDqBl5H2mHm4knEF7aQ+ dfgy/mMf34Uf31BUOnNRbUzckVLxoZYcTQc7WsXjc2IwRd/uScLqjQLJrIDOkvjGEg PvpyNomOvhrgU2pDtXYsFH4yNaE2vFXUP1sgiprOcgaEMNnIC85KiGruBlb7tOZ5ho 0DG5Bk1mEqi2ruK8VdSzuMlSvRSSutqVQdf6TnMqDay7vigKt7ChTcBFoa7a7r1XIJ R4OOSM8DIvlcw+52rYHvHyW+l7qP/JCRxcsGenU77tHWtQOHrQ8kZJf9ehRtFyjeDV fKLaRK4FCruGA== X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp2.osuosl.org ([127.0.0.1]) by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mhHlss0fb885; Mon, 27 Jun 2022 16:54:08 +0000 (UTC) Received: from ash.osuosl.org (ash.osuosl.org [140.211.166.34]) by smtp2.osuosl.org (Postfix) with ESMTP id 820394010C; Mon, 27 Jun 2022 16:54:08 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org 820394010C Received: from smtp3.osuosl.org (smtp3.osuosl.org [140.211.166.136]) by ash.osuosl.org (Postfix) with ESMTP id 5F6A31BF3C5 for ; Mon, 27 Jun 2022 16:54:06 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp3.osuosl.org (Postfix) with ESMTP id 46AEE605EE for ; Mon, 27 Jun 2022 16:54:06 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org 46AEE605EE X-Virus-Scanned: amavisd-new at osuosl.org Received: from smtp3.osuosl.org ([127.0.0.1]) by localhost (smtp3.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id JQtAAjI_Jrgu for ; Mon, 27 Jun 2022 16:54:05 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.8.0 DKIM-Filter: OpenDKIM Filter v2.11.0 smtp3.osuosl.org A64E9607C0 Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by smtp3.osuosl.org (Postfix) with ESMTPS id A64E9607C0 for ; Mon, 27 Jun 2022 16:54:05 +0000 (UTC) X-IronPort-AV: E=McAfee;i="6400,9594,10391"; a="261305871" X-IronPort-AV: E=Sophos;i="5.92,226,1650956400"; d="scan'208";a="261305871" Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Jun 2022 09:54:04 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.92,226,1650956400"; d="scan'208";a="679654349" Received: from dev1-atbrady.jf.intel.com ([10.166.241.16]) by FMSMGA003.fm.intel.com with ESMTP; 27 Jun 2022 09:54:03 -0700 From: Alan Brady To: intel-wired-lan@osuosl.org Date: Mon, 27 Jun 2022 09:53:10 -0700 Message-Id: <20220627165310.2935617-1-alan.brady@intel.com> X-Mailer: git-send-email 2.36.1 MIME-Version: 1.0 X-Mailman-Original-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1656348845; x=1687884845; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=E8zGVWzFj28G9WmxwIIH2u5q+9jCnC+HnYCJ84Q2BcM=; b=bw/joSgmz6F159IgC28dypZCIci3saE0bkPjoeO0WiYcalmXwl33WKXX Xvv4qCy4LVNvwyNXywOpWeTVXLE+tUVmY2+slvp1urClwu2jnpkUi2Zr+ c+2iivFGGN9Mv2BlDH2FcJkYEijm+r+qciSDv7CJztNtUOPB9Lc97ohTn i4A3KDDi12TAeiYOgP5IK4pmXvA59VnDduYvkac+eHisuuRNKC++hlYkl p2gP5dalkehr4ADm5JOw3xvxAXmirQRfcUy1sYrTEFgUdYFitY5HAxSLf 3k/PxI8dM42//BggqlNzqRTbtpgO3AD0ZMuH6qdaaPjoaFg0SVwLK+Ngi Q==; X-Mailman-Original-Authentication-Results: smtp3.osuosl.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.a=rsa-sha256 header.s=Intel header.b=bw/joSgm Subject: [Intel-wired-lan] [PATCH net-next] ping: fix ipv6 ping socket flow labels X-BeenThere: intel-wired-lan@osuosl.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel Wired Ethernet Linux Kernel Driver Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: intel-wired-lan-bounces@osuosl.org Sender: "Intel-wired-lan" Ping sockets don't appear to make any attempt to preserve flow labels created and set by userspace. Instead they are always clobbered by autolabels (if enabled) or zero. This grabs the flowlabel out of the msghdr similar to how rawv6_sendmsg does it and moves the memset up so we don't zero it. Signed-off-by: Alan Brady --- net/ipv6/ping.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/net/ipv6/ping.c b/net/ipv6/ping.c index ecf3a553a0dc..b1179f62bd23 100644 --- a/net/ipv6/ping.c +++ b/net/ipv6/ping.c @@ -64,6 +64,8 @@ static int ping_v6_sendmsg(struct sock *sk, struct msghdr *msg, size_t len) if (err) return err; + memset(&fl6, 0, sizeof(fl6)); + if (msg->msg_name) { DECLARE_SOCKADDR(struct sockaddr_in6 *, u, msg->msg_name); if (msg->msg_namelen < sizeof(*u)) @@ -72,12 +74,15 @@ static int ping_v6_sendmsg(struct sock *sk, struct msghdr *msg, size_t len) return -EAFNOSUPPORT; } daddr = &(u->sin6_addr); + if (np->sndflow) + fl6.flowlabel = u->sin6_flowinfo & IPV6_FLOWINFO_MASK; if (__ipv6_addr_needs_scope_id(ipv6_addr_type(daddr))) oif = u->sin6_scope_id; } else { if (sk->sk_state != TCP_ESTABLISHED) return -EDESTADDRREQ; daddr = &sk->sk_v6_daddr; + fl6.flowlabel = np->flow_label; } if (!oif) @@ -101,7 +106,6 @@ static int ping_v6_sendmsg(struct sock *sk, struct msghdr *msg, size_t len) ipc6.sockc.tsflags = sk->sk_tsflags; ipc6.sockc.mark = sk->sk_mark; - memset(&fl6, 0, sizeof(fl6)); fl6.flowi6_oif = oif; if (msg->msg_controllen) { -- 2.36.1 _______________________________________________ Intel-wired-lan mailing list Intel-wired-lan@osuosl.org https://lists.osuosl.org/mailman/listinfo/intel-wired-lan