This is how Windows does it too, as far as I know (I think %gs is the
thread-specific pointer).
This really is how the graphics context should be done: by a real
pointer. Whether that pointer is in a segment register or as a
"traditional C" pointer in the graphics context descriptor is fairly
secondary.
Of course, it can actually result in the process running out of virtual
address space (graphics need a LOT of address space), but that shouldn't
really be a problem for SGI as they are going Merced anyway. And in the
meantime you can actually use a shared area and a separate exclusive
locking mechanism - no kernel intervention required.
Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/