Skip to content

Morello copy_page cherry-pick#22

Open
heshamelmatary wants to merge 2 commits into
codasip-cheri-riscv-7.0from
morello_copy_pages
Open

Morello copy_page cherry-pick#22
heshamelmatary wants to merge 2 commits into
codasip-cheri-riscv-7.0from
morello_copy_pages

Conversation

@heshamelmatary
Copy link
Copy Markdown
Collaborator

No description provided.

Regular writes zero the capability tags in memory, which is exactly
what we want in clear_page(), but in copy_page() we want to preserve
the tags of the source page. We can achieve this by using capability
loads/stores to copy both data and tags.

Signed-off-by: Kevin Brodsky <kevin.brodsky@arm.com>
We have just done away with runtime detection for Morello in early
initialisation paths. As a result, standard runtime detection based
on the Morello CPU capability (ARM64_MORELLO) is now pointless (and
misleading).

Remove all uses of the ARM64_MORELLO capability. In assembly, this
allows us to simplify quite a few paths. In C, the CPU capability is
only used through the system_supports_morello() function. We
preserve that function for convenience, making it rely purely on the
CONFIG macro. Where it is used inside a code region that is already
 #ifdef'd on the macro, it becomes a no-op and we remove it.

The Morello CPU feature itself is preserved, as well as runtime
detection for it (based on the Morello and TTPBHA ID fields). This
is not essential, but makes it easy to keep HWCAP2_MORELLO exposed
to userspace, and reading the ID fields is marginally useful in case
Morello hardware somehow did not set them to the right value.

Signed-off-by: Kevin Brodsky <kevin.brodsky@arm.com>
@heshamelmatary
Copy link
Copy Markdown
Collaborator Author

Can probably squash both commits of @kevin-brodsky-arm would prefer that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants