Re: JITs and 52-bit VA

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

 



On Wed, Jun 22, 2016 at 01:41:40PM -0700, Dave Hansen wrote:
> >>
> >> Yeah, cgroups don't make a lot of sense.
> >>
> >> On x86, the 48-bit virtual address is even hard-coded in the ABI[1].  So
> >> we can't change *any* program's layout without either breaking the ABI
> >> or having it opt in.
> >>
> >> But, we're also lucky to only have one VA layout since day one.
> >>
> >> 1. www.x86-64.org/documentation/abi.pdf - “... Therefore, conforming
> >> processes may only use addresses from 0x00000000 00000000 to 0x00007fff
> >> ffffffff .”
> > 
> > Yes, but noone forces you to write conforming programs ;)
> > After all while hw allows you to run VA with bits > than
> > 48 it's fine, all side effects of breaking abi is up to
> > program author (iirc on x86 there is up to 52 bits on
> > hw level allowed, don't have specs under my hands?)
> 
> My point was that you can't restrict the vaddr space without breaking
> the ABI because apps expect to be able to use 0x00007fffffffffff.  You
> also can't extend the vaddr space because apps can *also* expect that
> there are no valid vaddrs past 0x00007fffffffffff.
> 
> So, whatever happens here, at least on x86, we can't do anything to the
> vaddr space without it being an opt-in for *each* *app*.

The main problem is not abi on its own, because the abi stands for
"conforming" programs, if this feature will be controlled by some
flag in mm struct (or cgroup, of whatever) it won't affect regular
programs which follow the abi. But the problem is that if we allow
this wide addresses right now may not we clash with future abi extensions?

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>



[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]