lkml.org 
[lkml]   [2005]   [Jun]   [6]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateMon, 6 Jun 2005 10:16:26 +0200
FromIngo Molnar <>
SubjectRe: [PATCH] struct thread_struct, asm-i386/processor.h: wrong datatype?

* Herbert Rosmanith <kernel@wildsau.enemy.org> wrote:

>
> or better:
>
> > - unsigned long fs;
> > - unsigned long gs;
> > + unsigned short fs;
> > + unsigned short gs;
> > /* Hardware debugging registers */
> > unsigned long debugreg[8]; /* %%db0-7 debug registers */
> > /* fault info */
>
> + unsigned short fs, __fsh;
> + unsigned short gs, __gsh;
>
> which is also done this way the structure above, the TSS. I don't know
> why it's done this way, but I guess it's probably better pad with 16
> bits to avoid potential problems with 32bit movl which might overwrite
> portions of the next field.

no. 'struct thread_struct' is the 'soft' thread-state structure. We
store data in the most convenient (and best performing) format - word
size in this case. The 'hard' data structure is 'struct tss_struct' -
where we of course define things in the way the CPU expects it.

Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-06-06 10:21    [from the cache]
©2003-2009