All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vladimir Oltean <vladimir.oltean@nxp.com>
To: Roger Quadros <rogerq@kernel.org>
Cc: davem@davemloft.net, edumazet@google.com, kuba@kernel.org,
	pabeni@redhat.com, shuah@kernel.org, s-vadapalli@ti.com,
	r-gunasekaran@ti.com, vigneshr@ti.com, srk@ti.com,
	horms@kernel.org, p-varis@ti.com, netdev@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v8 net-next 05/11] net: ethernet: am65-cpsw: cleanup TAPRIO handling
Date: Thu, 14 Dec 2023 13:23:52 +0200	[thread overview]
Message-ID: <20231214112352.iaomw3apleewkdfz@skbuf> (raw)
In-Reply-To: <20231213110721.69154-6-rogerq@kernel.org>

On Wed, Dec 13, 2023 at 01:07:15PM +0200, Roger Quadros wrote:
> +static int am65_cpsw_taprio_replace(struct net_device *ndev,
> +				    struct tc_taprio_qopt_offload *taprio)
>  {
>  	struct am65_cpsw_common *common = am65_ndev_to_common(ndev);
> +	struct netlink_ext_ack *extack = taprio->mqprio.extack;
> +	struct am65_cpsw_port *port = am65_ndev_to_port(ndev);
>  	struct am65_cpts *cpts = common->cpts;
> -	int ret = 0, tact = TACT_PROG;
> +	struct am65_cpsw_est *est_new;
> +	int ret, tact;
>  
> -	am65_cpsw_est_update_state(ndev);
> +	if (!netif_running(ndev)) {
> +		NL_SET_ERR_MSG_MOD(extack, "interface is down, link speed unknown");
> +		return -ENETDOWN;
> +	}

I haven't used the runtime PM API that this driver uses. I don't know
much about how it works. What are the rules here? By checking for
netif_running(), are you intending to rely on the pm_runtime_resume_and_get()
call from ndo_open(), which is released with pm_runtime_put() at
ndo_stop() time?

I see some inconsistencies I don't quite understand.

am65_cpsw_nuss_ndo_slave_add_vid() checks for netif_running() then calls
pm_runtime_resume_and_get() anyway.

am65_cpsw_setup_mqprio() allows changing the offload even when the link
is down (which is more user-friendly anyway) and performs the pm_runtime_get_sync()
call itself.

> -}

  reply	other threads:[~2023-12-14 11:24 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-13 11:07 [PATCH v8 net-next 00/11] net: ethernet: am65-cpsw: Add mqprio, frame pre-emption & coalescing Roger Quadros
2023-12-13 11:07 ` [PATCH v8 net-next 01/11] selftests: forwarding: ethtool_mm: support devices with higher rx-min-frag-size Roger Quadros
2023-12-13 11:07 ` [PATCH v8 net-next 02/11] selftests: forwarding: ethtool_mm: fall back to aggregate if device does not report pMAC stats Roger Quadros
2023-12-14 14:16   ` Vladimir Oltean
2023-12-14 17:16     ` Roger Quadros
2023-12-13 11:07 ` [PATCH v8 net-next 03/11] net: ethernet: am65-cpsw: Build am65-cpsw-qos only if required Roger Quadros
2023-12-13 11:07 ` [PATCH v8 net-next 04/11] net: ethernet: am65-cpsw: Rename TI_AM65_CPSW_TAS to TI_AM65_CPSW_QOS Roger Quadros
2023-12-13 11:07 ` [PATCH v8 net-next 05/11] net: ethernet: am65-cpsw: cleanup TAPRIO handling Roger Quadros
2023-12-14 11:23   ` Vladimir Oltean [this message]
2023-12-14 13:36     ` Roger Quadros
2023-12-14 13:41       ` Vladimir Oltean
2023-12-14 13:50         ` Roger Quadros
2023-12-13 11:07 ` [PATCH v8 net-next 06/11] net: ethernet: ti: am65-cpsw: Move code to avoid forward declaration Roger Quadros
2023-12-14 11:09   ` Vladimir Oltean
2023-12-13 11:07 ` [PATCH v8 net-next 07/11] net: ethernet: am65-cpsw: Move register definitions to header file Roger Quadros
2023-12-14 11:08   ` Vladimir Oltean
2023-12-13 11:07 ` [PATCH v8 net-next 08/11] net: ethernet: ti: am65-cpsw: add mqprio qdisc offload in channel mode Roger Quadros
2023-12-14 11:06   ` Vladimir Oltean
2023-12-13 11:07 ` [PATCH v8 net-next 09/11] net: ethernet: ti: am65-cpsw-qos: Add Frame Preemption MAC Merge support Roger Quadros
2023-12-14 11:04   ` Vladimir Oltean
2023-12-14 13:44     ` Roger Quadros
2023-12-14 13:50       ` Vladimir Oltean
2023-12-14 13:53         ` Roger Quadros
2023-12-13 11:07 ` [PATCH v8 net-next 10/11] net: ethernet: ti: am65-cpsw: add sw tx/rx irq coalescing based on hrtimers Roger Quadros
2023-12-13 11:07 ` [PATCH v8 net-next 11/11] net: ethernet: ti: am65-cpsw: Fix get_eth_mac_stats Roger Quadros
2023-12-13 13:54   ` Vladimir Oltean
2023-12-14 10:04     ` Roger Quadros
2023-12-15 11:31       ` Roger Quadros

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231214112352.iaomw3apleewkdfz@skbuf \
    --to=vladimir.oltean@nxp.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=horms@kernel.org \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=p-varis@ti.com \
    --cc=pabeni@redhat.com \
    --cc=r-gunasekaran@ti.com \
    --cc=rogerq@kernel.org \
    --cc=s-vadapalli@ti.com \
    --cc=shuah@kernel.org \
    --cc=srk@ti.com \
    --cc=vigneshr@ti.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.