ChanServ changed the topic of #armlinux to: ARM kernel talk [Upstream kernel, find your vendor forums for questions about their kernels] | https://libera.irclog.whitequark.org/armlinux
nsaenz has joined #armlinux
nsaenz has quit [Ping timeout: 265 seconds]
rvalue- has joined #armlinux
rvalue has quit [Ping timeout: 252 seconds]
rvalue- is now known as rvalue
heat has quit [Read error: Connection reset by peer]
heat has joined #armlinux
rvalue- has joined #armlinux
rvalue has quit [Ping timeout: 252 seconds]
rvalue- is now known as rvalue
heat has quit [Ping timeout: 260 seconds]
sihloo has quit [Quit: ZNC 1.9.1 - https://znc.in]
sihloo has joined #armlinux
sihloo has quit [Changing host]
sihloo has joined #armlinux
mvaittin has joined #armlinux
System_Error has joined #armlinux
monstr has joined #armlinux
gclement has joined #armlinux
headless has joined #armlinux
rvalue has quit [Read error: Connection reset by peer]
rvalue has joined #armlinux
headless has quit [Ping timeout: 260 seconds]
headless has joined #armlinux
cbeznea has joined #armlinux
mripard has joined #armlinux
nsaenz has joined #armlinux
nsaenz has quit [Ping timeout: 272 seconds]
System_Error has quit [Ping timeout: 260 seconds]
System_Error has joined #armlinux
headless has quit [Quit: Konversation terminated!]
heat has joined #armlinux
nsaenz has joined #armlinux
nsaenz has quit [Remote host closed the connection]
nsaenz has joined #armlinux
sszy has joined #armlinux
nsaenz has quit [Remote host closed the connection]
nsaenz has joined #armlinux
frieder has joined #armlinux
headless has joined #armlinux
aneesh has joined #armlinux
mvaittin has quit [Ping timeout: 265 seconds]
headless has quit [Quit: Konversation terminated!]
heat has quit [Read error: Connection reset by peer]
heat has joined #armlinux
nsaenz has quit [Remote host closed the connection]
nsaenz has joined #armlinux
<aneesh> maz, with respect to MTE_PERM usecase, one of the goals for MTE_PERM was to allow support for smaller pool of allocation tagged memory. But supporting such a pool will require wider MM changes and there was no consensus w.r.t the usefulness of supporting that usecase. We can also use MTE_PERM for another usecase. ie, supporting usage of MTE in a guest where we don't allow MTE now.
<aneesh> I am looking at implementing that specific use case such a way that future updates are possible for smaller allocation tagged memory pool.
headless has joined #armlinux
<maz> aneesh: what are these use-cases, and why don't they currently work?
<aneesh> The two i listed in my email were. "libkrun and virtiofs
<aneesh> They don't support MTE now because we don't support MTE with page cache and some of the memory regions back guest memory are from page cache
<aneesh> in both the case, these memory regions are special in that user space allocation will not come from these regions and we can be sure there will not be a tag access check against those pfns
heat_ has joined #armlinux
heat has quit [Read error: Connection reset by peer]
<maz> and what does it mean for that memory that is now tagged for VMs only? what guarantees that there will not be a tagged access outside of the VM? How do you transition a page back from tagged to non-tagged?
<maz> and crucially, what is the userspace ABI for managing these transition?
<maz> you need to have clear answers to these points before we can even start reviewing patches.
<aneesh> sure. I understand the confusion. It is also that i am may be explaining all the details in my cover letter. For the usecase i am trying to address, there will not be a conversion from tagged to non-tagged. For ex: we can look at guest memory made of two vmas , one anon and one pagecache.
<aneesh> the guest usage of its memory is such that the memory backed by page cache is considered special and will never be allocatable by userspace. Hence there won't be a tag access check on this pfns. In both the examples, these pfns are not part of buddy for any sort of page allocation from that.
<aneesh> Considering there will be no transition between tagged to non-tagged, there is no user API for that.
fvincenzo has quit [Remote host closed the connection]
<aneesh> on the host all pfns are considered access tagged. on guest since some of the guest pfns are backed by pagcache, we deny the MTE usage in guest now. (kvm_arch_prepare_memory_regions()) . The changes allow the usage of MTE and if the guest break the rule that no tag access to those "special" pfns, we get a tag access check fault
<aneesh> the VM get terminated on such event.
fvincenzo has joined #armlinux
dmart has joined #armlinux
heat_ has quit [Read error: Connection reset by peer]
heat_ has joined #armlinux
<aneesh> maz, ^
socksins1 has quit [Quit: WeeChat 3.8]
socksinspace has quit [Remote host closed the connection]
nsaenz has quit [Ping timeout: 260 seconds]
<maz> aneesh: I really think that lacking the reverse conversion is short-sighted. you *really* want it in.
nsaenz has joined #armlinux
<aneesh> maz, what do you mean by reverse conversion?
socksinspace has joined #armlinux
socksinspace has quit [Remote host closed the connection]
nsaenz_ has joined #armlinux
nsaenz has quit [Ping timeout: 264 seconds]
<maz> from tagged to non-tagged.
<aneesh> for supporting an allocation from a special pool and making it useful as a general page allocator requires large MM changes ( possibly a separate zone, or a custom device, identifying lru pages to swap things out etc).
<aneesh> if the goal is to reduce the memory wastage , there could be other approaches. I am not sure we will have a smaller special pool of allocation tag pages soon.
<aneesh> considering such a facility doesn't exit, it didn't make sense to look at converting from tagged to non-tagged.
heat_ is now known as heat
socksinspace has joined #armlinux
socksins1 has joined #armlinux
frieder has quit [Remote host closed the connection]
headless_ has joined #armlinux
headless has quit [Ping timeout: 265 seconds]
gclement has quit [Quit: Leaving.]
jclsn has joined #armlinux
sszy has quit [Quit: http://quassel-irc.org - Chat comfortably. Anywhere.]
monstr has quit [Remote host closed the connection]
rgallaispou has joined #armlinux
nsaenz_ has quit [Remote host closed the connection]
nsaenz has joined #armlinux
nsaenz has quit [Ping timeout: 272 seconds]
milkylainen has quit [Quit: meh]
Saalim has quit [Ping timeout: 252 seconds]
rgallaispou has quit [Ping timeout: 260 seconds]
Saalim has joined #armlinux
rvalue has quit [Read error: Connection reset by peer]
rvalue has joined #armlinux
headless_ is now known as headless
rgallaispou has joined #armlinux
heat has quit [Read error: Connection reset by peer]
heat_ has joined #armlinux
headless has quit [Quit: Konversation terminated!]
cbeznea has quit [Ping timeout: 252 seconds]
milkylainen has joined #armlinux
amitk_ has quit [Ping timeout: 252 seconds]
tlwoerner has quit [Ping timeout: 248 seconds]
tlwoerner has joined #armlinux
heat_ is now known as heat
rgallaispou has quit [Read error: Connection reset by peer]
System_Error has quit [Ping timeout: 260 seconds]
rgallaispou has joined #armlinux
rgallaispou has quit [Ping timeout: 252 seconds]
heat has quit [Read error: Connection reset by peer]
heat has joined #armlinux