Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp428779pxj; Wed, 2 Jun 2021 02:44:43 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxboVyJyaDUNfhgBffp66wR3uGgRmIFdztjT9ux6+OWqu+PcyCiLStrvzPjbes60nFRnNOG X-Received: by 2002:a17:907:20c6:: with SMTP id qq6mr5500559ejb.207.1622627083072; Wed, 02 Jun 2021 02:44:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1622627083; cv=none; d=google.com; s=arc-20160816; b=ASpONmnYlNo0t0p2ODJJBYtEfA8lMj5HFkwlkQOkRhGf+VQ9ZBZzfqBOn4krs36b7m cm673lzRY5n2D5MT/vpjE0RXqJx5mttHPJ85TOlzVLHPblffNTJRD0le9yypqx7rc+DY Qqqx8xlfx/rDHOujUJtMg4hRFoIdHdQAoQEg7RlWz+6kzDrIi5xzGHMBdgOLfw75OtVu PZgp6YAp4VxjlC1MGslG4GEbCsiGwttzhprwB0ip22f8gtr6wggbDkYZoVo7six3NBmM X8QOb+t8j/sVrMcOyTPdEzQCeqBZyHid8XwwzBPorfRlEqwrnm3wEZilZU1tufKIl+oe ZFKw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=GJ+1NMC7G3v5/FqG4L7WGRzWhMa+7FCABMfFf4wzAVQ=; b=skNJcg8srjlvfLcRaSksovoR6w8AOwrDQ2i0D4sUZNnDtcNE5vrXZbrKTI4JX+JxTs kuAR8DkvmpENO4fJ4z0pn7Yx79n0x7khSHCuour9WfjfthjXPJLl6w5OX0BS4/GPAziu D9Z0LZeFsHJ9TCxJ/C4HFXNGMISVVAPTa6/RyIzcnuqfxEcRX6fXawU2vozJJUv6FiUi G0ATC9W50sp+Lg3UJFXuC85rO8FrXUJ8zq0UtclX9aSrs1qNRF5v5TSZzAtze0ZBCuw8 v24O7GHlpsd4TCSO1jUQGn1lsM/L/RtCfQzINJJyI7m5TGNejeSiYGPtPbQQsdyYsYY5 ngQA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id y9si1722660edd.548.2021.06.02.02.44.20; Wed, 02 Jun 2021 02:44:43 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-wireless-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232608AbhFBIag (ORCPT + 99 others); Wed, 2 Jun 2021 04:30:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41378 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232583AbhFBIa3 (ORCPT ); Wed, 2 Jun 2021 04:30:29 -0400 Received: from sipsolutions.net (s3.sipsolutions.net [IPv6:2a01:4f8:191:4433::2]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B403EC061756; Wed, 2 Jun 2021 01:28:46 -0700 (PDT) Received: by sipsolutions.net with esmtpsa (TLS1.3:ECDHE_X25519__RSA_PSS_RSAE_SHA256__AES_256_GCM:256) (Exim 4.94.2) (envelope-from ) id 1loMF2-000xxd-R9; Wed, 02 Jun 2021 10:28:44 +0200 From: Johannes Berg To: linux-wireless@vger.kernel.org, netdev@vger.kernel.org Cc: m.chetan.kumar@intel.com, loic.poulain@linaro.org, Johannes Berg , Sergey Ryazanov Subject: [RFC v2 3/5] rtnetlink: add IFLA_PARENT_DEV_NAME Date: Wed, 2 Jun 2021 10:28:38 +0200 Message-Id: <20210602102653.9d5c4789824f.Ia98e333bba58bc6a0b1c8fa28ad0964fb9c918d6@changeid> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210602082840.85828-1-johannes@sipsolutions.net> References: <20210602082840.85828-1-johannes@sipsolutions.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org From: Johannes Berg In some cases, for example in the upcoming WWAN framework changes, there's no natural "parent netdev", so sometimes dummy netdevs are created or similar. IFLA_PARENT_DEV_NAME is a new attribute intended to contain a device (sysfs, struct device) name that can be used instead when creating a new netdev, if the rtnetlink family implements it. Suggested-by: Sergey Ryazanov Signed-off-by: Johannes Berg --- v2: * new patch --- include/uapi/linux/if_link.h | 6 ++++++ net/core/rtnetlink.c | 1 + 2 files changed, 7 insertions(+) diff --git a/include/uapi/linux/if_link.h b/include/uapi/linux/if_link.h index f7c3beebb074..3455780193a4 100644 --- a/include/uapi/linux/if_link.h +++ b/include/uapi/linux/if_link.h @@ -341,6 +341,12 @@ enum { IFLA_ALT_IFNAME, /* Alternative ifname */ IFLA_PERM_ADDRESS, IFLA_PROTO_DOWN_REASON, + + /* device (sysfs) name as parent, used instead + * of IFLA_LINK where there's no parent netdev + */ + IFLA_PARENT_DEV_NAME, + __IFLA_MAX }; diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c index 4975dd91407d..49a27bf6e4a7 100644 --- a/net/core/rtnetlink.c +++ b/net/core/rtnetlink.c @@ -1878,6 +1878,7 @@ static const struct nla_policy ifla_policy[IFLA_MAX+1] = { [IFLA_PERM_ADDRESS] = { .type = NLA_REJECT }, [IFLA_PROTO_DOWN_REASON] = { .type = NLA_NESTED }, [IFLA_NEW_IFINDEX] = NLA_POLICY_MIN(NLA_S32, 1), + [IFLA_PARENT_DEV_NAME] = { .type = NLA_NUL_STRING }, }; static const struct nla_policy ifla_info_policy[IFLA_INFO_MAX+1] = { -- 2.31.1