[PATCH v2 1/4] kselftest/arm64: Provide a helper binary and "library" for SVE RDVL
Mark Brown
broonie at kernel.org
Thu Jul 29 04:22:17 PDT 2021
On Thu, Jul 29, 2021 at 10:52:24AM +0100, Dave Martin wrote:
> On Wed, Jul 28, 2021 at 05:33:15PM +0100, Mark Brown wrote:
> > + return 0;
> For consistency with the changes in vec-syscfg, we could use
> EXIT_SUCCESS here.
0 and EXIT_SUCCESS are defined as equivalent (though they need not be
equal!) and 0 is much more idiomatic.
> Although it's hard to see what could go wrong I/O-wise that doesn't
> involve vec-syscfg itself having gone wrong, it's probably good
> practice to do the final error check:
> if (ferror(stdout) || fclose(stdout))
> return EXIT_FAILURE;
> return EXIT_SUCCESS;
> (In reality, people rarely seem to bother with this, so I'm not going
> to lose sleep if we don't do it...)
Yeah, I think this is one of those raising more questions than it
answers kind of things.
> > +.globl rdvl_sve
> Should we stick a
> .type rdvl_sve, @function
> here? This may avoid surprises with future toolchain behaviours.
> Probably doesn't matter, but I have bad memories of Thumb-2...
> Lacking this annotation is widespread though, as well as being de facto
> standard before awkward architectures came along.
Yeah, it doesn't seem to be in the slightest bit idiomatic for the arm64
asm code the kernel has. I don't know if you think it's worth adding
that to SYM_FUNC_START now we have it though?
> If the selftests have access to the ENTRY() macro we could use that, but
> I'm guessing that isn't exported for userspace.
We don't use that any more anyway, it's SYM_FUNC_START() and friends not
that those are outside the kernel either. We will have to do something
like that if anyone starts building userspace with BTI though (or I
might just shove a BTI C in there unconditionally, I'm sure we'll cope
with the overhead on older systems).
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20210729/5333859d/attachment.sig>
More information about the linux-arm-kernel
mailing list