unsigned char curgdt[6];
struct Xgt_desc_struct curgdt;
static void set_gdt(void *newgdt, __u16 limit){	unsigned char curgdt[6];	/* ia32 supports unaligned loads & stores */	(*(__u16 *)(curgdt)) = limit;	(*(__u32 *)(curgdt +2)) = (unsigned long)(newgdt);	__asm__ __volatile__ (		"lgdt %0\n"		: "=m" (curgdt)		);};