Messages in this thread | | | Date | 9 Sep 2006 17:52:57 +0200 | Date | Sat, 9 Sep 2006 17:52:57 +0200 | From | Andi Kleen <> | Subject | Re: [PATCH] i386-pda updates |
| |
On Sat, Sep 09, 2006 at 01:15:30AM -0700, Jeremy Fitzhardinge wrote: > > -/* Make sure %gs it initialized properly in idle threads */ > +/* Make sure %gs is initialized properly in idle threads */
Merged
> }; > @@ -20,7 +22,14 @@ extern struct i386_pda _proxy_pda; > #define pda_to_op(op,field,val) \ > do { \ > typedef typeof(_proxy_pda.field) T__; \ > + if (0) { T__ tmp__; tmp__ = (val); } \
Merged into original patch
> switch (sizeof(_proxy_pda.field)) { \ > + case 1: \ > + asm(op "b %1,%%gs:%c2" \ > + : "+m" (_proxy_pda.field) \ > + :"ri" ((T__)val), \ > + "i"(pda_offset(field))); \ > + break; \ > case 2: \ > asm(op "w %1,%%gs:%c2" \ > : "+m" (_proxy_pda.field) \ > @@ -41,6 +50,12 @@ extern struct i386_pda _proxy_pda; > ({ \ > typeof(_proxy_pda.field) ret__; \ > switch (sizeof(_proxy_pda.field)) { \ > + case 1: \ > + asm(op "b %%gs:%c1,%0" \ > + : "=r" (ret__) \ > + : "i" (pda_offset(field)), \ > + "m" (_proxy_pda.field)); \ > + break; \ > case 2: \ > asm(op "w %%gs:%c1,%0" \ > : "=r" (ret__) \ > @@ -57,6 +72,10 @@ extern struct i386_pda _proxy_pda; > } \ > ret__; }) > > +/* Return a pointer to a pda field */ > +#define pda_addr(field) \ > + ((typeof(_proxy_pda.field) *)((unsigned char *)read_pda(_pda) + \ > + pda_offset(field)))
I think i would prefer to merge that and the 1 byte one only with actual users (x86-64 hasn't needed either for a long time)
-Andi - 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/
| |