1 --- linux-2.4.20-gw3/arch/i386/kernel/ioport.c 2003-05-16 23:42:47.000000000 +0100
2 +++ linux-2.4.20-gw4/arch/i386/kernel/ioport.c 2003-05-16 23:42:49.000000000 +0100
5 memset(t->io_bitmap,0xff,(IO_BITMAP_SIZE+1)*4);
8 - * this activates it in the TSS
10 - tss->bitmap = IO_BITMAP_OFFSET;
14 * do it in the per-thread copy and in the TSS ...
16 set_bitmap(t->io_bitmap, from, num, !turn_on);
17 - set_bitmap(tss->io_bitmap, from, num, !turn_on);
18 + if (tss->bitmap == IO_BITMAP_OFFSET) { /* already active? */
19 + set_bitmap(tss->io_bitmap, from, num, !turn_on);
21 + memcpy(tss->io_bitmap, t->io_bitmap, IO_BITMAP_SIZE);
22 + tss->bitmap = IO_BITMAP_OFFSET; /* Activate it in the TSS */