[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Summary of the Arm ports BoF at DC17

On Mon, 2017-09-18 at 10:15 +0100, Edmund Grimley Evans wrote:
> > But it did remind me that on some platforms writing "2" to
> > /proc/sys/abi/cp15_barrier will enable hw support for these
> > instructions, since some platforms do support them even thought
> > they
> > are deprecated. It's certainly worth investigating what your
> > hardware
> > supports.
> Not necessarily disagreeing with the content of that but the
> terminology seems wrong: I don't have a reference to hand but I'm
> fairly sure that hardware is *required* to support a "deprecated"
> instruction. "Deprecated" usually means something like: unless you
> know what you're doing you probably shouldn't use this feature
> because
> it might perform badly and it might not be available in a future
> version (of the Arm architecture in this case).

In principal I agree with your interpretation of "Deprecated" but the
wording in Linux's Documentation/arm64/legacy_instructions.txt which
documents this stuff is:

* Hardware Execution
  Value: 2
  Although marked as deprecated, some implementations may support the
  enabling/disabling of hardware support for the execution of these
  instructions. Using hardware execution generally provides better
  performance, but at the loss of ability to gather runtime statistics
  about the use of the deprecated instructions.

Which in "some implementations may" at least implies the possibility
that some hardware may not support these instructions. I don't seem to
be able to download an ARM ARM right now to see what the actual wording
used there is.


Reply to: