All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jakub Kicinski <kuba@kernel.org>
To: Maksym Kutsevol <max@kutsevol.com>
Cc: "David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Paolo Abeni <pabeni@redhat.com>, Breno Leitao <leitao@debian.org>,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/2] netcons: Add udp send fail statistics to netconsole
Date: Mon, 26 Aug 2024 14:35:46 -0700	[thread overview]
Message-ID: <20240826143546.77669b47@kernel.org> (raw)
In-Reply-To: <20240824215130.2134153-2-max@kutsevol.com>

On Sat, 24 Aug 2024 14:50:24 -0700 Maksym Kutsevol wrote:
> Enhance observability of netconsole. UDP sends can fail. Start tracking at

nit: "UDP sends" sounds a bit too much like it's using sockets
maybe "packet sends"?

> least two failure possibilities: ENOMEM and NET_XMIT_DROP for every target.
> Stats are exposed via an additional attribute in CONFIGFS.

Please provide a reference to another configfs user in the kernel which
exposes stats. To help reviewers validate it's a legit use case.

> +#ifdef CONFIG_NETCONSOLE_DYNAMIC
> +struct netconsole_target_stats  {
> +	size_t xmit_drop_count;
> +	size_t enomem_count;
> +};
> +#endif

Don't hide types under ifdefs
In fact I'm not sure if hiding stats if DYNAMIC isn't enabled makes
sense. They don't take up much space.

> +static ssize_t stats_show(struct config_item *item, char *buf)
> +{
> +	struct netconsole_target *nt = to_target(item);
> +
> +	return sysfs_emit(buf, "xmit_drop: %lu enomem: %lu\n",
> +		nt->stats.xmit_drop_count, nt->stats.enomem_count);

does configfs require value per file like sysfs or this is okay?

>  /**
>   * send_ext_msg_udp - send extended log message to target
>   * @nt: target to send message to
> @@ -1063,7 +1102,9 @@ static void send_ext_msg_udp(struct netconsole_target *nt, const char *msg,
>  					     "%s", userdata);
>  
>  		msg_ready = buf;
> -		netpoll_send_udp(&nt->np, msg_ready, msg_len);
> +		count_udp_send_stats(nt, netpoll_send_udp(&nt->np,
> +							  msg_ready,
> +							  msg_len));

Please add a wrapper which calls netpoll_send_udp() and counts the
stats. This sort of nested function calls are unlikely to meet kernel
coding requirements.
-- 
pw-bot: cr

  reply	other threads:[~2024-08-26 21:35 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-24 21:50 [PATCH 1/2] netpoll: Make netpoll_send_udp return status instead of void Maksym Kutsevol
2024-08-24 21:50 ` [PATCH 2/2] netcons: Add udp send fail statistics to netconsole Maksym Kutsevol
2024-08-26 21:35   ` Jakub Kicinski [this message]
2024-08-26 23:55     ` Maksym Kutsevol
2024-08-27 13:59       ` Jakub Kicinski
2024-08-28 15:03         ` Maksym Kutsevol
2024-08-28 15:24           ` Breno Leitao
2024-08-28 15:33             ` Maksym Kutsevol
2024-08-27  6:32   ` kernel test robot
2024-08-27  9:36   ` kernel test robot
2024-08-27 12:18   ` Breno Leitao
2024-08-28 15:04     ` Maksym Kutsevol
     [not found]     ` <CAO6EAnVXXfQRK1xWoxO+dQwQsftw3bhOz27cQPNX=TzCutkrQQ@mail.gmail.com>
     [not found]       ` <Zs8//o3EDLtt+eTY@gmail.com>
2024-08-28 15:31         ` Maksym Kutsevol
2024-08-28 21:33 ` [PATCH v2 1/2] netpoll: Make netpoll_send_udp return status instead of void Maksym Kutsevol
2024-08-28 21:33   ` [PATCH v2 2/2] netcons: Add udp send fail statistics to netconsole Maksym Kutsevol
2024-08-30  8:45     ` Breno Leitao
2024-08-30 12:58       ` Maksym Kutsevol
2024-08-30 14:12         ` Breno Leitao
2024-08-30 15:37           ` Maksym Kutsevol
2024-08-28 22:57   ` [PATCH v2 1/2] netpoll: Make netpoll_send_udp return status instead of void Jakub Kicinski
2024-08-28 23:16     ` Maksym Kutsevol
2024-08-30  8:46   ` Breno Leitao

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=20240826143546.77669b47@kernel.org \
    --to=kuba@kernel.org \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=leitao@debian.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=max@kutsevol.com \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.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.