From: Sudeep Holla <sudeep.holla@arm.com>
To: "Arnd Bergmann" <arnd@arndb.de>
Cc: "Yeoreum Yun" <yeoreum.yun@arm.com>,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, nd@arm.com
Subject: Re: [PATCH v2 2/2] firmware/arm_ffa: remove __le64_to_cpu() when set uuid for direct msg v2
Date: Tue, 10 Dec 2024 10:08:41 +0000 [thread overview]
Message-ID: <Z1gTKRZGyE7VuJo0@bogus> (raw)
In-Reply-To: <d750f114-8a25-4c84-912e-b6fb407a5150@app.fastmail.com>
On Tue, Dec 10, 2024 at 09:45:51AM +0100, Arnd Bergmann wrote:
> On Tue, Dec 10, 2024, at 08:36, Yeoreum Yun wrote:
> >> On Mon, Dec 9, 2024, at 17:59, Sudeep Holla wrote:
> >> > On Mon, Dec 09, 2024 at 04:27:14PM +0100, Arnd Bergmann wrote:
> >>
> >> Looking through the other functions in drivers/firmware/arm_ffa/driver.c,
> >> I see that most of them just match the specification. One exception
> >> is ffa_notification_info_get(), which incorrectly casts the
> >> argument response arguments to an array of 'u16' values. Using
> >> the correct bit shifts according to the specification would
> >> make that work on big-endian and also more readable and
> >> robust. Another one is __ffa_partition_info_get_regs(), which
> >> does an incorrect memcpy() instead of decoding the values.
> >>
> > Conclusionly, Yes. But the RFC 4122 said with network byte order.
> > to describe how uuid is saved.
> >
> > but I think the endianess to load the register is not a choice.
> > because the spec says:
> >
> > UUID Lo x2 Bytes[0...7] of UUID with byte 0 in the low-order bits.
> > UUID Hi x3 Bytes[8...15] of UUID with byte 8 in the low-order bits.
> >
> > this means UUID.bytes[0] should be loaded to x2.bytes[0].
> > UUID.bytes[1] should be loaded to x2,bytes[1]
> > ...
>
> I meant they had the choice and chose to specify little-endian
> 64-bit word to encode the sequence of bytes of the standard
> in-memory representation of UUIDs.
>
> > That's why other software spec (i.e tf-a) doesn't loads UUID from register
> > wihtout swapping byte with endianess but just copy it.
>
> If the uuid is transferred in memory, you obviously don't want to
> swap it. If they pass it in registers across different endianess
> code without specifying the byteorder in the caller, then they
> would have the same bug.
>
> > The bug is "not send UUID according to spec" in kernel side
> > That's why it fails when I send message with direct message version 2.
> > So, it''s not change code unportable to portable but it fixes according
> > to spec (load UUID as it is in register wihtout endianess).
>
> Sorry, but you are not making sense here.
>
Agreed. The patch is clearly wrong. Thanks for refreshing my knowledge and
helping me to clear my confusion.
> Sudeep, should I just cherry-pick your other fix from the pull
> request and ignore this patch?
>
I will remove the wrong patch and retag and send PR if that helps. It should
be quick.
--
Regards,
Sudeep
next prev parent reply other threads:[~2024-12-10 10:16 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-03 14:31 [PATCH v2 0/2] small fixes for arm_ffa driver Yeoreum Yun
2024-12-03 14:31 ` [PATCH v2 1/2] firmware/arm_ffa: change ffa_device_register()'s parameters and return Yeoreum Yun
2024-12-03 14:31 ` [PATCH v2 2/2] firmware/arm_ffa: remove __le64_to_cpu() when set uuid for direct msg v2 Yeoreum Yun
2024-12-09 15:27 ` Arnd Bergmann
2024-12-09 16:59 ` Sudeep Holla
2024-12-09 20:04 ` Arnd Bergmann
2024-12-10 7:36 ` Yeoreum Yun
2024-12-10 8:45 ` Arnd Bergmann
2024-12-10 10:08 ` Sudeep Holla [this message]
2024-12-10 9:49 ` Sudeep Holla
2024-12-05 10:35 ` [PATCH v2 0/2] small fixes for arm_ffa driver Sudeep Holla
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=Z1gTKRZGyE7VuJo0@bogus \
--to=sudeep.holla@arm.com \
--cc=arnd@arndb.de \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=nd@arm.com \
--cc=yeoreum.yun@arm.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).