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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 25C8DC001DF for ; Tue, 1 Aug 2023 15:12:40 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231709AbjHAPMj (ORCPT ); Tue, 1 Aug 2023 11:12:39 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41330 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231416AbjHAPMi (ORCPT ); Tue, 1 Aug 2023 11:12:38 -0400 Received: from out-110.mta1.migadu.com (out-110.mta1.migadu.com [IPv6:2001:41d0:203:375::6e]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 55F8E10FE for ; Tue, 1 Aug 2023 08:12:37 -0700 (PDT) Message-ID: <092b8bd3-e24d-4be2-0a7d-22b845ba069a@linux.dev> DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1690902753; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=FN9V8XQ7ny8iOhMwulo6jvLHZzXxY6GfaAvXHYKvoZs=; b=Up6YV6vXulLtFQflo/SJ44XC+vBzvR3hbWWVaqRdN4mVbN0QSC61YLYuYoJgkqtLNAqWcG 1CTOjmlCkGYQfveAupmZEuP3TveUMk/fBzxm8lUuRnC6zbCt3eEbNz98mExwsVpxYcne4T uB5+E+C1mbde1Te843Z6MzzAUuHvduk= Date: Tue, 1 Aug 2023 16:12:27 +0100 MIME-Version: 1.0 Subject: Re: [PATCH net-next 07/11] netdev: expose DPLL pin handle for netdevice Content-Language: en-US X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Vadim Fedorenko To: Jiri Pirko , Jiri Pirko Cc: Milena Olech , Michal Michalik , linux-arm-kernel@lists.infradead.org, poros@redhat.com, mschmidt@redhat.com, netdev@vger.kernel.org, linux-clk@vger.kernel.org, Bart Van Assche , Jakub Kicinski , Arkadiusz Kubalewski , Paolo Abeni , Jonathan Lemon References: <20230720091903.297066-1-vadim.fedorenko@linux.dev> <20230720091903.297066-8-vadim.fedorenko@linux.dev> <4f2e91c7-e2e8-6b3a-fc14-8f44503fb6be@linux.dev> In-Reply-To: <4f2e91c7-e2e8-6b3a-fc14-8f44503fb6be@linux.dev> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT Precedence: bulk List-ID: X-Mailing-List: linux-clk@vger.kernel.org On 01/08/2023 14:23, Vadim Fedorenko wrote: > On 20/07/2023 10:18, Vadim Fedorenko wrote: >> From: Jiri Pirko >> >> In case netdevice represents a SyncE port, the user needs to understand >> the connection between netdevice and associated DPLL pin. There might me >> multiple netdevices pointing to the same pin, in case of VF/SF >> implementation. >> >> Add a IFLA Netlink attribute to nest the DPLL pin handle, similar to >> how it is implemented for devlink port. Add a struct dpll_pin pointer >> to netdev and protect access to it by RTNL. Expose netdev_dpll_pin_set() >> and netdev_dpll_pin_clear() helpers to the drivers so they can set/clear >> the DPLL pin relationship to netdev. >> >> Note that during the lifetime of struct dpll_pin the pin handle does not >> change. Therefore it is save to access it lockless. It is drivers >> responsibility to call netdev_dpll_pin_clear() before dpll_pin_put(). >> >> Signed-off-by: Jiri Pirko >> Signed-off-by: Arkadiusz Kubalewski >> Signed-off-by: Vadim Fedorenko >> --- >> RFC v9->v0: >> - rearrange function definition according to usage >> v8->v9: >> - net_device->dpll_pin is only valid if IS_ENABLED(CONFIG_DPLL) fix the >>    code in net/core/rtnetlink.c to respect that. >> - move dpll_msg_add_pin_handle to "dpll: netlink" patch + export the >>    function with this patch >> >>   drivers/dpll/dpll_netlink.c  | 19 ++++++++++++++++--- >>   include/linux/dpll.h         | 20 ++++++++++++++++++++ >>   include/linux/netdevice.h    | 20 ++++++++++++++++++++ >>   include/uapi/linux/if_link.h |  2 ++ >>   net/core/dev.c               | 22 ++++++++++++++++++++++ >>   net/core/rtnetlink.c         | 35 +++++++++++++++++++++++++++++++++++ >>   6 files changed, 115 insertions(+), 3 deletions(-) >> >> diff --git a/drivers/dpll/dpll_netlink.c b/drivers/dpll/dpll_netlink.c >> index c44dda78737d..e4a9bd767b92 100644 >> --- a/drivers/dpll/dpll_netlink.c >> +++ b/drivers/dpll/dpll_netlink.c >> @@ -37,6 +37,18 @@ dpll_msg_add_dev_handle(struct sk_buff *msg, struct >> dpll_device *dpll) >>       return 0; >>   } >> +/** >> + * dpll_msg_pin_handle_size - get size of pin handle attribute for >> given pin >> + * @pin: pin pointer >> + * >> + * Return: byte size of pin handle attribute for given pin. >> + */ >> +size_t dpll_msg_pin_handle_size(struct dpll_pin *pin) >> +{ >> +    return pin ? nla_total_size(4) : 0; /* DPLL_A_PIN_ID */ >> +} >> +EXPORT_SYMBOL_GPL(dpll_msg_pin_handle_size); >> + >>   /** >>    * dpll_msg_add_pin_handle - attach pin handle attribute to a given >> message >>    * @msg: pointer to sk_buff message to attach a pin handle >> @@ -54,6 +66,7 @@ int dpll_msg_add_pin_handle(struct sk_buff *msg, >> struct dpll_pin *pin) >>           return -EMSGSIZE; >>       return 0; >>   } >> +EXPORT_SYMBOL_GPL(dpll_msg_add_pin_handle); > > Jiri, could you please remind me what is the reason to export this > function? Because I cannot > any usage of this function in drivers. > Ah, found it, sorry for the noise. > > [....] 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.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 C7DFCC0015E for ; Tue, 1 Aug 2023 15:13:10 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:References:Cc:To:From:Subject: MIME-Version:Date:Message-ID:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=gsFO+P/Z1MrlNXoE3JSco0oSr6oR5Igzx9u1Batyt98=; b=UXY5XpWkvnEtNV 5HWz/i45+cmcY5uUQ9XRNP06e6NHjMycnR8o57y77lFDWNZ7uhmcg61ODovHiJmcMs/wcTeQWaJFc el2S0q9TyvhDcQ7C+xWZp/eiGvE6qowpuVF0KNyBS0AAekjUVvk1ulYlz9Zekv6vzxBvX8m/L088R SdjRaENpsUjOQVx1ZPWwhEH1E2a9Jamlu8OLFv38gtXKADex5mQ1/gcRyOUl4qmNnNKqv41zuI/+F yporFUMiuDGptAaTe3RCsZxGJrpWFfEf3kypsPbQO7KGLsZuDm5JS6opd1hBONd35mb0dBfGZeXwK 2w/lr9C2GbMIy1S+clAw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qQr3D-002ghK-1O; Tue, 01 Aug 2023 15:12:43 +0000 Received: from out-70.mta1.migadu.com ([95.215.58.70]) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qQr39-002gfh-1k for linux-arm-kernel@lists.infradead.org; Tue, 01 Aug 2023 15:12:41 +0000 Message-ID: <092b8bd3-e24d-4be2-0a7d-22b845ba069a@linux.dev> DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1690902753; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=FN9V8XQ7ny8iOhMwulo6jvLHZzXxY6GfaAvXHYKvoZs=; b=Up6YV6vXulLtFQflo/SJ44XC+vBzvR3hbWWVaqRdN4mVbN0QSC61YLYuYoJgkqtLNAqWcG 1CTOjmlCkGYQfveAupmZEuP3TveUMk/fBzxm8lUuRnC6zbCt3eEbNz98mExwsVpxYcne4T uB5+E+C1mbde1Te843Z6MzzAUuHvduk= Date: Tue, 1 Aug 2023 16:12:27 +0100 MIME-Version: 1.0 Subject: Re: [PATCH net-next 07/11] netdev: expose DPLL pin handle for netdevice Content-Language: en-US X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Vadim Fedorenko To: Jiri Pirko , Jiri Pirko Cc: Milena Olech , Michal Michalik , linux-arm-kernel@lists.infradead.org, poros@redhat.com, mschmidt@redhat.com, netdev@vger.kernel.org, linux-clk@vger.kernel.org, Bart Van Assche , Jakub Kicinski , Arkadiusz Kubalewski , Paolo Abeni , Jonathan Lemon References: <20230720091903.297066-1-vadim.fedorenko@linux.dev> <20230720091903.297066-8-vadim.fedorenko@linux.dev> <4f2e91c7-e2e8-6b3a-fc14-8f44503fb6be@linux.dev> In-Reply-To: <4f2e91c7-e2e8-6b3a-fc14-8f44503fb6be@linux.dev> X-Migadu-Flow: FLOW_OUT X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20230801_081239_976570_DCC1D1C7 X-CRM114-Status: GOOD ( 21.28 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gMDEvMDgvMjAyMyAxNDoyMywgVmFkaW0gRmVkb3JlbmtvIHdyb3RlOgo+IE9uIDIwLzA3LzIw MjMgMTA6MTgsIFZhZGltIEZlZG9yZW5rbyB3cm90ZToKPj4gRnJvbTogSmlyaSBQaXJrbyA8amly aUBudmlkaWEuY29tPgo+Pgo+PiBJbiBjYXNlIG5ldGRldmljZSByZXByZXNlbnRzIGEgU3luY0Ug cG9ydCwgdGhlIHVzZXIgbmVlZHMgdG8gdW5kZXJzdGFuZAo+PiB0aGUgY29ubmVjdGlvbiBiZXR3 ZWVuIG5ldGRldmljZSBhbmQgYXNzb2NpYXRlZCBEUExMIHBpbi4gVGhlcmUgbWlnaHQgbWUKPj4g bXVsdGlwbGUgbmV0ZGV2aWNlcyBwb2ludGluZyB0byB0aGUgc2FtZSBwaW4sIGluIGNhc2Ugb2Yg VkYvU0YKPj4gaW1wbGVtZW50YXRpb24uCj4+Cj4+IEFkZCBhIElGTEEgTmV0bGluayBhdHRyaWJ1 dGUgdG8gbmVzdCB0aGUgRFBMTCBwaW4gaGFuZGxlLCBzaW1pbGFyIHRvCj4+IGhvdyBpdCBpcyBp bXBsZW1lbnRlZCBmb3IgZGV2bGluayBwb3J0LiBBZGQgYSBzdHJ1Y3QgZHBsbF9waW4gcG9pbnRl cgo+PiB0byBuZXRkZXYgYW5kIHByb3RlY3QgYWNjZXNzIHRvIGl0IGJ5IFJUTkwuIEV4cG9zZSBu ZXRkZXZfZHBsbF9waW5fc2V0KCkKPj4gYW5kIG5ldGRldl9kcGxsX3Bpbl9jbGVhcigpIGhlbHBl cnMgdG8gdGhlIGRyaXZlcnMgc28gdGhleSBjYW4gc2V0L2NsZWFyCj4+IHRoZSBEUExMIHBpbiBy ZWxhdGlvbnNoaXAgdG8gbmV0ZGV2Lgo+Pgo+PiBOb3RlIHRoYXQgZHVyaW5nIHRoZSBsaWZldGlt ZSBvZiBzdHJ1Y3QgZHBsbF9waW4gdGhlIHBpbiBoYW5kbGUgZG9lcyBub3QKPj4gY2hhbmdlLiBU aGVyZWZvcmUgaXQgaXMgc2F2ZSB0byBhY2Nlc3MgaXQgbG9ja2xlc3MuIEl0IGlzIGRyaXZlcnMK Pj4gcmVzcG9uc2liaWxpdHkgdG8gY2FsbCBuZXRkZXZfZHBsbF9waW5fY2xlYXIoKSBiZWZvcmUg ZHBsbF9waW5fcHV0KCkuCj4+Cj4+IFNpZ25lZC1vZmYtYnk6IEppcmkgUGlya28gPGppcmlAbnZp ZGlhLmNvbT4KPj4gU2lnbmVkLW9mZi1ieTogQXJrYWRpdXN6IEt1YmFsZXdza2kgPGFya2FkaXVz ei5rdWJhbGV3c2tpQGludGVsLmNvbT4KPj4gU2lnbmVkLW9mZi1ieTogVmFkaW0gRmVkb3Jlbmtv IDx2YWRpbS5mZWRvcmVua29AbGludXguZGV2Pgo+PiAtLS0KPj4gUkZDIHY5LT52MDoKPj4gLSBy ZWFycmFuZ2UgZnVuY3Rpb24gZGVmaW5pdGlvbiBhY2NvcmRpbmcgdG8gdXNhZ2UKPj4gdjgtPnY5 Ogo+PiAtIG5ldF9kZXZpY2UtPmRwbGxfcGluIGlzIG9ubHkgdmFsaWQgaWYgSVNfRU5BQkxFRChD T05GSUdfRFBMTCkgZml4IHRoZQo+PiDCoMKgIGNvZGUgaW4gbmV0L2NvcmUvcnRuZXRsaW5rLmMg dG8gcmVzcGVjdCB0aGF0Lgo+PiAtIG1vdmUgZHBsbF9tc2dfYWRkX3Bpbl9oYW5kbGUgdG8gImRw bGw6IG5ldGxpbmsiIHBhdGNoICsgZXhwb3J0IHRoZQo+PiDCoMKgIGZ1bmN0aW9uIHdpdGggdGhp cyBwYXRjaAo+Pgo+PiDCoCBkcml2ZXJzL2RwbGwvZHBsbF9uZXRsaW5rLmPCoCB8IDE5ICsrKysr KysrKysrKysrKystLS0KPj4gwqAgaW5jbHVkZS9saW51eC9kcGxsLmjCoMKgwqDCoMKgwqDCoMKg IHwgMjAgKysrKysrKysrKysrKysrKysrKysKPj4gwqAgaW5jbHVkZS9saW51eC9uZXRkZXZpY2Uu aMKgwqDCoCB8IDIwICsrKysrKysrKysrKysrKysrKysrCj4+IMKgIGluY2x1ZGUvdWFwaS9saW51 eC9pZl9saW5rLmggfMKgIDIgKysKPj4gwqAgbmV0L2NvcmUvZGV2LmPCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgIHwgMjIgKysrKysrKysrKysrKysrKysrKysrKwo+PiDCoCBuZXQvY29yZS9y dG5ldGxpbmsuY8KgwqDCoMKgwqDCoMKgwqAgfCAzNSArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKwo+PiDCoCA2IGZpbGVzIGNoYW5nZWQsIDExNSBpbnNlcnRpb25zKCspLCAzIGRl bGV0aW9ucygtKQo+Pgo+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9kcGxsL2RwbGxfbmV0bGluay5j IGIvZHJpdmVycy9kcGxsL2RwbGxfbmV0bGluay5jCj4+IGluZGV4IGM0NGRkYTc4NzM3ZC4uZTRh OWJkNzY3YjkyIDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2RwbGwvZHBsbF9uZXRsaW5rLmMKPj4g KysrIGIvZHJpdmVycy9kcGxsL2RwbGxfbmV0bGluay5jCj4+IEBAIC0zNyw2ICszNywxOCBAQCBk cGxsX21zZ19hZGRfZGV2X2hhbmRsZShzdHJ1Y3Qgc2tfYnVmZiAqbXNnLCBzdHJ1Y3QgCj4+IGRw bGxfZGV2aWNlICpkcGxsKQo+PiDCoMKgwqDCoMKgIHJldHVybiAwOwo+PiDCoCB9Cj4+ICsvKioK Pj4gKyAqIGRwbGxfbXNnX3Bpbl9oYW5kbGVfc2l6ZSAtIGdldCBzaXplIG9mIHBpbiBoYW5kbGUg YXR0cmlidXRlIGZvciAKPj4gZ2l2ZW4gcGluCj4+ICsgKiBAcGluOiBwaW4gcG9pbnRlcgo+PiAr ICoKPj4gKyAqIFJldHVybjogYnl0ZSBzaXplIG9mIHBpbiBoYW5kbGUgYXR0cmlidXRlIGZvciBn aXZlbiBwaW4uCj4+ICsgKi8KPj4gK3NpemVfdCBkcGxsX21zZ19waW5faGFuZGxlX3NpemUoc3Ry dWN0IGRwbGxfcGluICpwaW4pCj4+ICt7Cj4+ICvCoMKgwqAgcmV0dXJuIHBpbiA/IG5sYV90b3Rh bF9zaXplKDQpIDogMDsgLyogRFBMTF9BX1BJTl9JRCAqLwo+PiArfQo+PiArRVhQT1JUX1NZTUJP TF9HUEwoZHBsbF9tc2dfcGluX2hhbmRsZV9zaXplKTsKPj4gKwo+PiDCoCAvKioKPj4gwqDCoCAq IGRwbGxfbXNnX2FkZF9waW5faGFuZGxlIC0gYXR0YWNoIHBpbiBoYW5kbGUgYXR0cmlidXRlIHRv IGEgZ2l2ZW4gCj4+IG1lc3NhZ2UKPj4gwqDCoCAqIEBtc2c6IHBvaW50ZXIgdG8gc2tfYnVmZiBt ZXNzYWdlIHRvIGF0dGFjaCBhIHBpbiBoYW5kbGUKPj4gQEAgLTU0LDYgKzY2LDcgQEAgaW50IGRw bGxfbXNnX2FkZF9waW5faGFuZGxlKHN0cnVjdCBza19idWZmICptc2csIAo+PiBzdHJ1Y3QgZHBs bF9waW4gKnBpbikKPj4gwqDCoMKgwqDCoMKgwqDCoMKgIHJldHVybiAtRU1TR1NJWkU7Cj4+IMKg wqDCoMKgwqAgcmV0dXJuIDA7Cj4+IMKgIH0KPj4gK0VYUE9SVF9TWU1CT0xfR1BMKGRwbGxfbXNn X2FkZF9waW5faGFuZGxlKTsKPiAKPiBKaXJpLCBjb3VsZCB5b3UgcGxlYXNlIHJlbWluZCBtZSB3 aGF0IGlzIHRoZSByZWFzb24gdG8gZXhwb3J0IHRoaXMgCj4gZnVuY3Rpb24/IEJlY2F1c2UgSSBj YW5ub3QKPiBhbnkgdXNhZ2Ugb2YgdGhpcyBmdW5jdGlvbiBpbiBkcml2ZXJzLgo+IAoKQWgsIGZv dW5kIGl0LCBzb3JyeSBmb3IgdGhlIG5vaXNlLgoKPiAKPiBbLi4uLl0KCgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpsaW51eC1hcm0ta2VybmVsIG1haWxp bmcgbGlzdApsaW51eC1hcm0ta2VybmVsQGxpc3RzLmluZnJhZGVhZC5vcmcKaHR0cDovL2xpc3Rz LmluZnJhZGVhZC5vcmcvbWFpbG1hbi9saXN0aW5mby9saW51eC1hcm0ta2VybmVsCg==