qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Fabien Chouteau <chouteau@adacore.com>
To: Scott Wood <scottwood@freescale.com>
Cc: qemu-ppc@nongnu.org, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [Qemu-ppc] [PATCH 2/2] Add Enhanced Three-Speed Ethernet Controller (eTSEC)
Date: Mon, 22 Jul 2013 11:00:15 +0200	[thread overview]
Message-ID: <51ECF49F.8070201@adacore.com> (raw)
In-Reply-To: <1374254353.5357.17@snotra>

On 07/19/2013 07:19 PM, Scott Wood wrote:
> On 07/19/2013 04:22:46 AM, Fabien Chouteau wrote:
>> On 07/18/2013 10:37 PM, Scott Wood wrote:
>> > On 07/18/2013 04:27:50 AM, Fabien Chouteau wrote:
>> >> The BD is full, we will have to put the rest of padding in the next one.
>> >
>> > What rest of padding?  I thought you said rx_padding was 2 somehow?  If that were true, then it would be zero at the end.
>> >
>>
>> Read my description again.
>
> OK, I was confused by your answering "yes" to "wouldn't *size be 2
> here" -- I thought it was clear from the context that I was talking
> about at the time of the "if (*size == etsec->rx_padding)" statement.
> Maybe you thought I was talking about what would happen at that
> if-statement in the next descriptor?
>
> In any case, it's a bit hard to follow this code.

I agree it's a little bit hard, I will add some comments to make it
clearer.

> rx_fcb_size is included in to_write, but not in *size.

FCB is not considered as part of the packet, so not in remaining_data.

> rx_padding is included in *size, but not in to_write.

Padding on the other side is considered as part of the packet but not
allocated in the buffer.

> And it generally makes me nervous to see code that will go into an
> infinite loop (or other odd behavior) unless an exact-equality
> terminating condition is met, especially when it's as complicated as
> this, without an assertion to check for the bad case (even if it looks
> like it could never happen).
>

For me it is more confusing to see a less-or-equal when equal is the
necessary and sufficient condition. It will be even harder to understand
the code...

I will modify the code a bit, tell me if it's clearer.

Regards,

-- 
Fabien Chouteau

      reply	other threads:[~2013-07-22  9:01 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-10 17:10 [Qemu-devel] [PATCH 0/2] Enhanced Three Speed Ethernet Controller (eTSEC) Fabien Chouteau
2013-07-10 17:10 ` [Qemu-devel] [PATCH 1/2] Add be16_to_cpupu function Fabien Chouteau
2013-07-10 17:25   ` Peter Maydell
2013-07-12  9:57     ` Fabien Chouteau
2013-07-10 17:10 ` [Qemu-devel] [PATCH 2/2] Add Enhanced Three-Speed Ethernet Controller (eTSEC) Fabien Chouteau
     [not found]   ` <201307110955092430409@cn.fujitsu.com>
2013-07-15  1:25     ` [Qemu-devel] Fw: [PATCH 2/2] Add Enhanced Three-Speed EthernetController (eTSEC) Yao Xingtao
2013-07-15 10:19       ` Fabien Chouteau
2013-07-15  2:00   ` [Qemu-devel] [PATCH 2/2] Add Enhanced Three-Speed Ethernet Controller (eTSEC) Peter Crosthwaite
2013-07-15 14:23     ` Fabien Chouteau
2013-07-16  1:06       ` Peter Crosthwaite
2013-07-16  8:35         ` Fabien Chouteau
2013-07-16  2:06   ` [Qemu-devel] [Qemu-ppc] " Scott Wood
2013-07-16 15:28     ` Fabien Chouteau
2013-07-16 15:37       ` Alexander Graf
2013-07-16 16:15         ` Fabien Chouteau
2013-07-16 16:54           ` Scott Wood
2013-07-17  8:24             ` Fabien Chouteau
2013-07-17  8:29               ` Alexander Graf
2013-07-17 10:27                 ` Fabien Chouteau
2013-07-16 17:50       ` Scott Wood
2013-07-17 10:17         ` Fabien Chouteau
2013-07-17 10:22           ` Alexander Graf
2013-07-17 10:43             ` Fabien Chouteau
2013-07-17 21:02           ` Scott Wood
2013-07-18  9:27             ` Fabien Chouteau
2013-07-18 20:37               ` Scott Wood
2013-07-19  9:22                 ` Fabien Chouteau
2013-07-19 17:19                   ` Scott Wood
2013-07-22  9:00                     ` Fabien Chouteau [this message]

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=51ECF49F.8070201@adacore.com \
    --to=chouteau@adacore.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@nongnu.org \
    --cc=scottwood@freescale.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).