search for: cseg

Displaying 18 results from an estimated 18 matches for "cseg".

2007 Apr 18
1
[PATCH 14/21] i386 Apm is on cpu zero only
...* + * Note we only set APM segments on CPU zero, since we pin the APM + * code to that CPU. */ - for (i = 0; i < NR_CPUS; i++) { - struct desc_struct *gdt = get_cpu_gdt_table(i); - if (!gdt) - continue; - set_base(&gdt[APM_CS >> 3], - __va((unsigned long)apm_info.bios.cseg << 4)); - set_base(&gdt[APM_CS_16 >> 3], - __va((unsigned long)apm_info.bios.cseg_16 << 4)); - set_base(&gdt[APM_DS >> 3], - __va((unsigned long)apm_info.bios.dseg << 4)); - } + gdt = get_cpu_gdt_table(0); + set_base(&gdt[APM_CS >> 3], + __v...
2007 Apr 18
1
[PATCH 14/21] i386 Apm is on cpu zero only
...* + * Note we only set APM segments on CPU zero, since we pin the APM + * code to that CPU. */ - for (i = 0; i < NR_CPUS; i++) { - struct desc_struct *gdt = get_cpu_gdt_table(i); - if (!gdt) - continue; - set_base(&gdt[APM_CS >> 3], - __va((unsigned long)apm_info.bios.cseg << 4)); - set_base(&gdt[APM_CS_16 >> 3], - __va((unsigned long)apm_info.bios.cseg_16 << 4)); - set_base(&gdt[APM_DS >> 3], - __va((unsigned long)apm_info.bios.dseg << 4)); - } + gdt = get_cpu_gdt_table(0); + set_base(&gdt[APM_CS >> 3], + __v...
2007 Apr 18
0
[PATCH 13/21] i386 Gdt page isolation
...apm.c 2005-11-04 17:55:24.000000000 -0800 @@ -2256,6 +2256,8 @@ static int __init apm_init(void) */ for (i = 0; i < NR_CPUS; i++) { struct desc_struct *gdt = get_cpu_gdt_table(i); + if (!gdt) + continue; set_base(&gdt[APM_CS >> 3], __va((unsigned long)apm_info.bios.cseg << 4)); set_base(&gdt[APM_CS_16 >> 3], Index: linux-2.6.14-zach-work/arch/i386/kernel/cpu/common.c =================================================================== --- linux-2.6.14-zach-work.orig/arch/i386/kernel/cpu/common.c 2005-11-04 17:45:31.000000000 -0800 +++ linux-2.6.1...
2007 Apr 18
0
[PATCH 13/21] i386 Gdt page isolation
...apm.c 2005-11-04 17:55:24.000000000 -0800 @@ -2256,6 +2256,8 @@ static int __init apm_init(void) */ for (i = 0; i < NR_CPUS; i++) { struct desc_struct *gdt = get_cpu_gdt_table(i); + if (!gdt) + continue; set_base(&gdt[APM_CS >> 3], __va((unsigned long)apm_info.bios.cseg << 4)); set_base(&gdt[APM_CS_16 >> 3], Index: linux-2.6.14-zach-work/arch/i386/kernel/cpu/common.c =================================================================== --- linux-2.6.14-zach-work.orig/arch/i386/kernel/cpu/common.c 2005-11-04 17:45:31.000000000 -0800 +++ linux-2.6.1...
2007 Apr 18
0
[PATCH 8/12] base-limit-cleanup
...4)); apm_bios_entry.offset = apm_info.bios.offset; apm_bios_entry.segment = APM_CS; for (i = 0; i < NR_CPUS; i++) { struct desc_struct *gdt = get_cpu_gdt_table(i); - set_base(gdt[desc_number(APM_CS)], + set_base(&gdt[desc_number(APM_CS)], __va((unsigned long)apm_info.bios.cseg << 4)); - set_base(gdt[desc_number(APM_CS_16)], + set_base(&gdt[desc_number(APM_CS_16)], __va((unsigned long)apm_info.bios.cseg_16 << 4)); - set_base(gdt[desc_number(APM_DS)], + set_base(&gdt[desc_number(APM_DS)], __va((unsigned long)apm_info.bios.dseg << 4))...
2007 Apr 18
0
[PATCH 8/12] base-limit-cleanup
...4)); apm_bios_entry.offset = apm_info.bios.offset; apm_bios_entry.segment = APM_CS; for (i = 0; i < NR_CPUS; i++) { struct desc_struct *gdt = get_cpu_gdt_table(i); - set_base(gdt[desc_number(APM_CS)], + set_base(&gdt[desc_number(APM_CS)], __va((unsigned long)apm_info.bios.cseg << 4)); - set_base(gdt[desc_number(APM_CS_16)], + set_base(&gdt[desc_number(APM_CS_16)], __va((unsigned long)apm_info.bios.cseg_16 << 4)); - set_base(gdt[desc_number(APM_DS)], + set_base(&gdt[desc_number(APM_DS)], __va((unsigned long)apm_info.bios.dseg << 4))...
2007 Apr 18
0
[PATCH 9/14] i386 / Typecheck and optimize base and limit accessors
...apm_bios_entry.offset = apm_info.bios.offset; apm_bios_entry.segment = APM_CS; for (i = 0; i < NR_CPUS; i++) { struct desc_struct *gdt = get_cpu_gdt_table(i); - set_base(gdt[segment_index(APM_CS)], + set_base(&gdt[segment_index(APM_CS)], __va((unsigned long)apm_info.bios.cseg << 4)); - set_base(gdt[segment_index(APM_CS_16)], + set_base(&gdt[segment_index(APM_CS_16)], __va((unsigned long)apm_info.bios.cseg_16 << 4)); - set_base(gdt[segment_index(APM_DS)], + set_base(&gdt[segment_index(APM_DS)], __va((unsigned long)apm_info.bios.dseg <...
2007 Apr 18
0
[PATCH 9/14] i386 / Typecheck and optimize base and limit accessors
...apm_bios_entry.offset = apm_info.bios.offset; apm_bios_entry.segment = APM_CS; for (i = 0; i < NR_CPUS; i++) { struct desc_struct *gdt = get_cpu_gdt_table(i); - set_base(gdt[segment_index(APM_CS)], + set_base(&gdt[segment_index(APM_CS)], __va((unsigned long)apm_info.bios.cseg << 4)); - set_base(gdt[segment_index(APM_CS_16)], + set_base(&gdt[segment_index(APM_CS_16)], __va((unsigned long)apm_info.bios.cseg_16 << 4)); - set_base(gdt[segment_index(APM_DS)], + set_base(&gdt[segment_index(APM_DS)], __va((unsigned long)apm_info.bios.dseg <...
2007 Apr 18
0
[PATCH 7/12] gdt-accessor
...return error; @@ -2295,35 +2298,36 @@ apm_bios_entry.segment = APM_CS; for (i = 0; i < NR_CPUS; i++) { - set_base(per_cpu(cpu_gdt_table, i)[APM_CS >> 3], + struct desc_struct *gdt = get_cpu_gdt_table(i); + set_base(gdt[desc_number(APM_CS)], __va((unsigned long)apm_info.bios.cseg << 4)); - set_base(per_cpu(cpu_gdt_table, i)[APM_CS_16 >> 3], + set_base(gdt[desc_number(APM_CS_16)], __va((unsigned long)apm_info.bios.cseg_16 << 4)); - set_base(per_cpu(cpu_gdt_table, i)[APM_DS >> 3], + set_base(gdt[desc_number(APM_DS)], __va((unsigned long)a...
2007 Apr 18
0
[PATCH 7/12] gdt-accessor
...return error; @@ -2295,35 +2298,36 @@ apm_bios_entry.segment = APM_CS; for (i = 0; i < NR_CPUS; i++) { - set_base(per_cpu(cpu_gdt_table, i)[APM_CS >> 3], + struct desc_struct *gdt = get_cpu_gdt_table(i); + set_base(gdt[desc_number(APM_CS)], __va((unsigned long)apm_info.bios.cseg << 4)); - set_base(per_cpu(cpu_gdt_table, i)[APM_CS_16 >> 3], + set_base(gdt[desc_number(APM_CS_16)], __va((unsigned long)apm_info.bios.cseg_16 << 4)); - set_base(per_cpu(cpu_gdt_table, i)[APM_DS >> 3], + set_base(gdt[desc_number(APM_DS)], __va((unsigned long)a...
2007 Apr 18
1
[PATCH 2/3] Gdt_accessor
...98,36 @@ static int __init apm_init(void) apm_bios_entry.segment = APM_CS; for (i = 0; i < NR_CPUS; i++) { - set_base(per_cpu(cpu_gdt_table, i)[APM_CS >> 3], + struct desc_struct *gdt = get_cpu_gdt_table(i); + set_base(gdt[APM_CS >> 3], __va((unsigned long)apm_info.bios.cseg << 4)); - set_base(per_cpu(cpu_gdt_table, i)[APM_CS_16 >> 3], + set_base(gdt[APM_CS_16 >> 3], __va((unsigned long)apm_info.bios.cseg_16 << 4)); - set_base(per_cpu(cpu_gdt_table, i)[APM_DS >> 3], + set_base(gdt[APM_DS >> 3], __va((unsigned long)apm_i...
2007 Apr 18
1
[PATCH 2/3] Gdt_accessor
...98,36 @@ static int __init apm_init(void) apm_bios_entry.segment = APM_CS; for (i = 0; i < NR_CPUS; i++) { - set_base(per_cpu(cpu_gdt_table, i)[APM_CS >> 3], + struct desc_struct *gdt = get_cpu_gdt_table(i); + set_base(gdt[APM_CS >> 3], __va((unsigned long)apm_info.bios.cseg << 4)); - set_base(per_cpu(cpu_gdt_table, i)[APM_CS_16 >> 3], + set_base(gdt[APM_CS_16 >> 3], __va((unsigned long)apm_info.bios.cseg_16 << 4)); - set_base(per_cpu(cpu_gdt_table, i)[APM_DS >> 3], + set_base(gdt[APM_DS >> 3], __va((unsigned long)apm_i...
2007 Apr 18
2
[PATCH 8/14] i386 / Add a per cpu gdt accessor
...return error; @@ -2295,35 +2298,36 @@ apm_bios_entry.segment = APM_CS; for (i = 0; i < NR_CPUS; i++) { - set_base(per_cpu(cpu_gdt_table, i)[APM_CS >> 3], + struct desc_struct *gdt = get_cpu_gdt_table(i); + set_base(gdt[segment_index(APM_CS)], __va((unsigned long)apm_info.bios.cseg << 4)); - set_base(per_cpu(cpu_gdt_table, i)[APM_CS_16 >> 3], + set_base(gdt[segment_index(APM_CS_16)], __va((unsigned long)apm_info.bios.cseg_16 << 4)); - set_base(per_cpu(cpu_gdt_table, i)[APM_DS >> 3], + set_base(gdt[segment_index(APM_DS)], __va((unsigned lo...
2007 Apr 18
2
[PATCH 8/14] i386 / Add a per cpu gdt accessor
...return error; @@ -2295,35 +2298,36 @@ apm_bios_entry.segment = APM_CS; for (i = 0; i < NR_CPUS; i++) { - set_base(per_cpu(cpu_gdt_table, i)[APM_CS >> 3], + struct desc_struct *gdt = get_cpu_gdt_table(i); + set_base(gdt[segment_index(APM_CS)], __va((unsigned long)apm_info.bios.cseg << 4)); - set_base(per_cpu(cpu_gdt_table, i)[APM_CS_16 >> 3], + set_base(gdt[segment_index(APM_CS_16)], __va((unsigned long)apm_info.bios.cseg_16 << 4)); - set_base(per_cpu(cpu_gdt_table, i)[APM_DS >> 3], + set_base(gdt[segment_index(APM_DS)], __va((unsigned lo...
2007 Apr 18
3
[PATCH 12/21] i386 Deprecate descriptor asm
...5-11-05 00:28:07.000000000 -0800 @@ -2256,11 +2256,11 @@ static int __init apm_init(void) */ for (i = 0; i < NR_CPUS; i++) { struct desc_struct *gdt = get_cpu_gdt_table(i); - set_base(gdt[APM_CS >> 3], + set_base(&gdt[APM_CS >> 3], __va((unsigned long)apm_info.bios.cseg << 4)); - set_base(gdt[APM_CS_16 >> 3], + set_base(&gdt[APM_CS_16 >> 3], __va((unsigned long)apm_info.bios.cseg_16 << 4)); - set_base(gdt[APM_DS >> 3], + set_base(&gdt[APM_DS >> 3], __va((unsigned long)apm_info.bios.dseg << 4)); }...
2007 Apr 18
3
[PATCH 12/21] i386 Deprecate descriptor asm
...5-11-05 00:28:07.000000000 -0800 @@ -2256,11 +2256,11 @@ static int __init apm_init(void) */ for (i = 0; i < NR_CPUS; i++) { struct desc_struct *gdt = get_cpu_gdt_table(i); - set_base(gdt[APM_CS >> 3], + set_base(&gdt[APM_CS >> 3], __va((unsigned long)apm_info.bios.cseg << 4)); - set_base(gdt[APM_CS_16 >> 3], + set_base(&gdt[APM_CS_16 >> 3], __va((unsigned long)apm_info.bios.cseg_16 << 4)); - set_base(gdt[APM_DS >> 3], + set_base(&gdt[APM_DS >> 3], __va((unsigned long)apm_info.bios.dseg << 4)); }...
2023 Jun 08
3
[RFC PATCH 0/3] x86/paravirt: Get rid of paravirt patching
This is a small series getting rid of paravirt patching by switching completely to alternative patching for the same functionality. The basic idea is to add the capability to switch from indirect to direct calls via a special alternative patching option. This removes _some_ of the paravirt macro maze, but most of it needs to stay due to the need of hiding the call instructions from the compiler
2023 Jun 08
3
[RFC PATCH 0/3] x86/paravirt: Get rid of paravirt patching
This is a small series getting rid of paravirt patching by switching completely to alternative patching for the same functionality. The basic idea is to add the capability to switch from indirect to direct calls via a special alternative patching option. This removes _some_ of the paravirt macro maze, but most of it needs to stay due to the need of hiding the call instructions from the compiler