From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-wm1-f54.google.com (mail-wm1-f54.google.com [209.85.128.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6089824A066 for ; Tue, 18 Nov 2025 09:05:58 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.54 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763456760; cv=none; b=JOQKgRrpm3FGY4uXUC0ri1xzarVc9w7r25XSijbveObAyRV6U0mtu0fCOuAbDKL01dg3ACGrgSte/mCfGlZKBe+dD/uPBAj9kr4BphThhkt+woJGYx8hGdzq3HTteE5PL5ZPXa63tBL4JeyTGTT/mZAN07i+IevtowegDaI/qcQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763456760; c=relaxed/simple; bh=l5hU9L5Yj7VZJj97kMh6UZz+7GJNWFi2weoykB0U5Ic=; h=Message-ID:Date:MIME-Version:Subject:To:References:From: In-Reply-To:Content-Type; b=dCnkHa9JVM52AgQFmxIUPkd25eKtLJJTMrva6oFo5BylnCCaqr+ckgJsRl5CyWffUtGNwXWhKFD7oIT0ut67K742y94XHSlQGrQN9cu50MmobD+2iITDHae7hNisgAxUvleXWBXITrVjzSGaGXqW46IyFxCPO0f1HSjgBwNSq2g= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=6wind.com; spf=pass smtp.mailfrom=6wind.com; dkim=pass (2048-bit key) header.d=6wind.com header.i=@6wind.com header.b=HbPg9acu; arc=none smtp.client-ip=209.85.128.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=6wind.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=6wind.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=6wind.com header.i=@6wind.com header.b="HbPg9acu" Received: by mail-wm1-f54.google.com with SMTP id 5b1f17b1804b1-4779cd413b4so1884515e9.2 for ; Tue, 18 Nov 2025 01:05:58 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind.com; s=google; t=1763456757; x=1764061557; darn=vger.kernel.org; h=content-transfer-encoding:in-reply-to:organization:content-language :from:references:to:subject:reply-to:user-agent:mime-version:date :message-id:from:to:cc:subject:date:message-id:reply-to; bh=4Vv8b30UPdNYBhUDR5IJHjoXKKpsIjJNO+tgtc+hFsc=; b=HbPg9acuGWFCf6hatvVN0fq8aR/3tMekJ8vSeK+n2YzTB0NneGOiAyRYwKifSpFBjN VD0K3rwfBp6I9wOypDhiKaVcu3RoWxAq+NroIBD45zsoOoZSWMVpC3Um9lxRlbLuMVvR go1gaStJrgHCe/b55OpVSZKya6+BQR6CMNwGvSGeIinJgW5084tBi4ZNZfRSqaPBn/8l FFfWsrN4suEvSZnAghR7otQcOkVRc2MIKomWgl09zmeO9+DrrJAITprh4XECo87c5Lfn KAMw0MeUpaxkv5X0N8cDEgcRrw6BEnxVf60G3UbitVUpFQO4sk82Ul3GyMFneq5jboFH meCg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763456757; x=1764061557; h=content-transfer-encoding:in-reply-to:organization:content-language :from:references:to:subject:reply-to:user-agent:mime-version:date :message-id:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=4Vv8b30UPdNYBhUDR5IJHjoXKKpsIjJNO+tgtc+hFsc=; b=sthXQRimiFeorYZctzTnLLm5RJPhrP7odqwx0QAYpYJTBnp8d6Dh8YhEV02LuJ70M0 yoDw19Kd0nZq/niDSpAUe6MZRc0Na181xir+RCR7ibcnQuVhyvh5BwcGU50ABSZCGA7b xWaeLEMEWnaWaxavibZKxTZK7Zbh/ezsJuW3gsLXYEj/5qlDF5Se4KCmmQ6bDBb/2pdD zuC+pnJ+Zk1tEQ6Z8SWWJ0toH08zj7+tYJeK3xLOYD/gZy4Q6bVKAeTlhO3BttTk56if oXIwEvRAgvqXjrdy7wE29MVnQf3q+3d7VsRQe9vE6HcpWC1i/e9ob28ONv0CMdYI9x5o UdXA== X-Forwarded-Encrypted: i=1; AJvYcCUsTMGDaZUg0edHGKnPLtz1qaFHTmFFGmUuQWyOPg9Pg6W0Xw16U+wBwfRTc09Qgl66lHDLcZZCys9/hNI=@vger.kernel.org X-Gm-Message-State: AOJu0YwkHUoHC1oQ+6cKfWRmxjTrfzqMMchTIWW1rathPKqPzGX17JOx 9UKSs7vBM74eDQfexyqepqTsyc7cTS/mcgwmlXnKkTZeFUkZPVCwfXLblzvfudLbL2Y= X-Gm-Gg: ASbGncvQkBQ2d7upOJhzbpMWqF+btG/xt2tqN4n4X2vdzPvPvnIcG1+OYqG37322ndB zoki6EYkrbx8KZMRuIyZkDA0imSJZoHMSpHxA6DMyI7h2DGs7lWSj1Om67eJWwj9KjLtyYsBUPb PMZZklb/+hZ9CKGZjJ2aIs2Q1tGXnPx2iFqG4tnzu4A2cqbq5Ot86gm/SRliS3+F5Z8BkFnmvJC FFiEumI+FEXaE4YDFvLWH5Sd+wPtmZcC1gcaLMhsoX05Sv6sqSp5Swulfa2/9CTmHec/CcTqDzN kvivbgvNAK9BjP7IJOqAqIacuQ/Jynux/BTVBq0WjSG028t1cdSYJRG8hLmn8uZBlshMnXMphPh i8QRGdcNkbeKOBDPslo2WRKk8TPcQO9Bvzj+aHhd2mVYdo4lcdW8pz8iAK6UuvmraXhXn+MxAK4 HgNG7SfqlZQQZ19a4HXQCDjt883U18EyGNF+WIa+4mQCez4iP08CHC2FAd/1K+IqQ= X-Google-Smtp-Source: AGHT+IE+bZDiXeOa0QOmpZlV9zGUl0nc6P6rVY9AZ9mOcMwPfj9WJ7rj7K8GQtY6HIyEMxOUWFMBcQ== X-Received: by 2002:a05:600c:19cd:b0:46e:43f0:6181 with SMTP id 5b1f17b1804b1-4778feb5ae7mr80092035e9.7.1763456756632; Tue, 18 Nov 2025 01:05:56 -0800 (PST) Received: from ?IPV6:2a01:e0a:b41:c160:6a1d:efff:fe52:1959? ([2a01:e0a:b41:c160:6a1d:efff:fe52:1959]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-477a97412e3sm12877915e9.5.2025.11.18.01.05.55 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 18 Nov 2025 01:05:56 -0800 (PST) Message-ID: Date: Tue, 18 Nov 2025 10:05:55 +0100 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Reply-To: nicolas.dichtel@6wind.com Subject: Re: [PATCH] net/ipv6: allow device-only routes via the multipath API To: David Ahern , azey , "David S. Miller" , Eric Dumazet , Jakub Kicinski , Paolo Abeni , Simon Horman , netdev@vger.kernel.org, linux-kernel@vger.kernel.org References: <7a4ebf5d-1815-44b6-bf77-bc7b32f39984@kernel.org> From: Nicolas Dichtel Content-Language: en-US Organization: 6WIND In-Reply-To: <7a4ebf5d-1815-44b6-bf77-bc7b32f39984@kernel.org> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Le 17/11/2025 à 02:57, David Ahern a écrit : > On 11/16/25 11:31 AM, azey wrote: >> At some point after b5d2d75e079a ("net/ipv6: Do not allow device only >> routes via the multipath API"), the IPv6 stack was updated such that >> device-only multipath routes can be installed and work correctly, but >> still weren't allowed in the code. >> >> This change removes the has_gateway check from rtm_to_fib6_multipath_config() >> and the fib_nh_gw_family check from rt6_qualify_for_ecmp(), allowing >> device-only multipath routes to be installed again. >> > > My recollection is that device only legs of an ECMP route is only valid > with the separate nexthop code. Added Nicholas (author of the original > IPv4 multipath code) to keep me honest. If I remember well, it was to avoid merging connected routes to ECMP routes. For example, fe80:: but also if two interfaces have an address in the same prefix. With the current code, the last route will always be used. With this patch, packets will be distributed across the two interfaces, right? If yes, it may cause regression on some setups. Regards, Nicolas