All of lore.kernel.org
 help / color / mirror / Atom feed
From: Simon Horman <horms@kernel.org>
To: Breno Leitao <leitao@debian.org>
Cc: kuba@kernel.org, davem@davemloft.net, edumazet@google.com,
	pabeni@redhat.com, thepacketgeek@gmail.com,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	davej@codemonkey.org.uk, thevlad@meta.com, max@kutsevol.com
Subject: Re: [PATCH net-next 6/9] net: netconsole: track explicitly if msgbody was written to buffer
Date: Wed, 4 Sep 2024 12:07:26 +0100	[thread overview]
Message-ID: <20240904110726.GT4792@kernel.org> (raw)
In-Reply-To: <20240903140757.2802765-7-leitao@debian.org>

On Tue, Sep 03, 2024 at 07:07:49AM -0700, Breno Leitao wrote:
> The current check to determine if the message body was fully sent is
> difficult to follow. To improve clarity, introduce a variable that
> explicitly tracks whether the message body (msgbody) has been completely
> sent, indicating when it's time to begin sending userdata.
> 
> Additionally, add comments to make the code more understandable for
> others who may work with it.
> 
> Signed-off-by: Breno Leitao <leitao@debian.org>

Thanks,

The nit below notwithstanding this looks good to me.

Reviewed-by: Simon Horman <horms@kernel.org>

> ---
>  drivers/net/netconsole.c | 15 +++++++++++++--
>  1 file changed, 13 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/netconsole.c b/drivers/net/netconsole.c
> index 22ccd9aa016a..c8a23a7684e5 100644
> --- a/drivers/net/netconsole.c
> +++ b/drivers/net/netconsole.c
> @@ -1102,6 +1102,7 @@ static void send_msg_fragmented(struct netconsole_target *nt,
>  	 */
>  	while (offset < body_len) {
>  		int this_header = header_len;
> +		bool msgbody_written = false;
>  		int this_offset = 0;
>  		int this_chunk = 0;
>  
> @@ -1119,12 +1120,22 @@ static void send_msg_fragmented(struct netconsole_target *nt,
>  			memcpy(buf + this_header, msgbody + offset, this_chunk);
>  			this_offset += this_chunk;
>  		}
> +
> +		if (offset + this_offset >= msgbody_len)
> +			/* msgbody was finally written, either in the previous messages
> +			 * and/or in the current buf. Time to write the userdata.
> +			 */

Please consider keeping comments <= 80 columns wide.
Likewise in other patches of this series.

checkpatch can be run with an option to check for this.

> +			msgbody_written = true;
> +
>  		/* Msg body is fully written and there is pending userdata to write,
>  		 * append userdata in this chunk
>  		 */
> -		if (offset + this_offset >= msgbody_len &&
> -		    offset + this_offset < body_len) {
> +		if (msgbody_written && offset + this_offset < body_len) {
> +			/* Track how much user data was already sent. First time here, sent_userdata
> +			 * is zero
> +			 */
>  			int sent_userdata = (offset + this_offset) - msgbody_len;
> +			/* offset of bytes used in current buf */
>  			int preceding_bytes = this_chunk + this_header;
>  
>  			if (WARN_ON_ONCE(sent_userdata < 0))
> -- 
> 2.43.5
> 

  reply	other threads:[~2024-09-04 11:07 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-03 14:07 [PATCH net-next 0/9] netconsole refactoring and warning fix Breno Leitao
2024-09-03 14:07 ` [PATCH net-next 1/9] net: netconsole: remove msg_ready variable Breno Leitao
2024-09-04 10:56   ` Simon Horman
2024-09-03 14:07 ` [PATCH net-next 2/9] net: netconsole: split send_ext_msg_udp() function Breno Leitao
2024-09-04 10:55   ` Simon Horman
2024-09-03 14:07 ` [PATCH net-next 3/9] net: netconsole: separate fragmented message handling in send_ext_msg Breno Leitao
2024-09-04 10:59   ` Simon Horman
2024-09-06  8:33     ` Breno Leitao
2024-09-03 14:07 ` [PATCH net-next 4/9] net: netconsole: rename body to msg_body Breno Leitao
2024-09-04 11:02   ` Simon Horman
2024-09-03 14:07 ` [PATCH net-next 5/9] net: netconsole: introduce variable to track body length Breno Leitao
2024-09-04 11:04   ` Simon Horman
2024-09-03 14:07 ` [PATCH net-next 6/9] net: netconsole: track explicitly if msgbody was written to buffer Breno Leitao
2024-09-04 11:07   ` Simon Horman [this message]
2024-09-06  8:37     ` Breno Leitao
2024-09-03 14:07 ` [PATCH net-next 7/9] net: netconsole: extract release appending into separate function Breno Leitao
2024-09-04 11:08   ` Simon Horman
2024-09-03 14:07 ` [PATCH net-next 8/9] net: netconsole: split send_msg_fragmented Breno Leitao
2024-09-04 11:16   ` Simon Horman
2024-09-06  8:48     ` Breno Leitao
2024-09-03 14:07 ` [PATCH net-next 9/9] net: netconsole: Fix a wrong warning 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=20240904110726.GT4792@kernel.org \
    --to=horms@kernel.org \
    --cc=davej@codemonkey.org.uk \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=kuba@kernel.org \
    --cc=leitao@debian.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=max@kutsevol.com \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=thepacketgeek@gmail.com \
    --cc=thevlad@meta.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.