[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v8 38/45] target/arm: Complete TBI clearing for user-only for
From: |
Peter Maydell |
Subject: |
Re: [PATCH v8 38/45] target/arm: Complete TBI clearing for user-only for SVE |
Date: |
Thu, 25 Jun 2020 18:07:59 +0100 |
On Thu, 25 Jun 2020 at 17:54, Richard Henderson
<richard.henderson@linaro.org> wrote:
>
> On 6/25/20 5:52 AM, Peter Maydell wrote:
> > On Tue, 23 Jun 2020 at 20:37, Richard Henderson
> > <richard.henderson@linaro.org> wrote:
> >>
> >> There are a number of paths by which the TBI is still intact
> >> for user-only in the SVE helpers.
> >>
> >> Because we currently always set TBI for user-only, we do not
> >> need to pass down the actual TBI setting from above, and we
> >> can remove the top byte in the inner-most primitives, so that
> >> none are forgotten. Moreover, this keeps the "dirty" pointer
> >> around at the higher levels, where we need it for any MTE checking.
> >>
> >> Since the normal case, especially for user-only, goes through
> >> RAM, this clearing merely adds two insns per page lookup, which
> >> will be completely in the noise.
> >
> > Can we have an assert() somewhere suitable that TBI is set?
> > That way if we ever do have an SVE-capable linux-user which
> > doesn't set TBI for some reason we'll get a useful reminder
> > that we need to fix something.
>
> At what level would you like such an assert?
I don't particularly care, as long as we get notified if our
assumption that TBI is always set gets broken (ie we change
that bit of CPU reset code for some reason).
thanks
-- PMM
- Re: [PATCH v8 34/45] target/arm: Add mte helpers for sve scalar + int stores, (continued)
- [PATCH v8 40/45] target/arm: Set PSTATE.TCO on exception entry, Richard Henderson, 2020/06/23
- [PATCH v8 39/45] target/arm: Implement data cache set allocation tags, Richard Henderson, 2020/06/23
- [PATCH v8 37/45] target/arm: Add mte helpers for sve scatter/gather memory ops, Richard Henderson, 2020/06/23
- [PATCH v8 42/45] target/arm: Cache the Tagged bit for a page in MemTxAttrs, Richard Henderson, 2020/06/23
- [PATCH v8 41/45] target/arm: Always pass cacheattr to get_phys_addr, Richard Henderson, 2020/06/23
- [PATCH v8 43/45] target/arm: Create tagged ram when MTE is enabled, Richard Henderson, 2020/06/23