[lkml]   [2006]   [Sep]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: Assignment of GDT entries
Zachary Amsden wrote:
> I believe 9,10,11 are reserved for future users like yourself or
> expanded TLS segments. I think a bank of 3 TLS segments in the GDT is
> working fine now (does NPTL even use more than one?).

Nope. And there's a comment that wine uses one more. I think the third
is completely unused.

Does this mean that "reserved" is actually synonymous with "unused" in

>> Otherwise line 1 would be ideal for putting 3 TLS, kernel+user
>> code+data and PDA into, thereby making 99.999% of GDT descriptor uses
>> come from one cache line.
> That change is visible to userspace, unfortunately.

Don't think it matters much. 32-bit processes on x86-64 seem perfectly
happy with the TLS being in a different place. I think the ABI is
defined in terms of "use the selector for the entry that
set_thread_area/clone returns", and so is not a constant. But I agree
it would be better not to.

Hm, moving user cs/ds would be pretty visible too... Hm, and it would
have a greater chance of breaking stuff if they changed, compared to
moving the TLS...

So is there any reason for "kernel entries start at 12"? If there's no
reason for it, then we can pack everything useful into 1-5.

>> But anyway, what breaks if I put the PDA in 11?
> Nothing.

OK then.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2006-09-13 23:17    [W:0.060 / U:3.340 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site