similar to: [PATCH 6/14] i386 / Add some segment convenience functions

Displaying 20 results from an estimated 1000 matches similar to: "[PATCH 6/14] i386 / Add some segment convenience functions"

2007 Apr 18
1
[PATCH 7/14] i386 / Add some descriptor convenience functions
Add some convenient descriptor access functions and move them all into desc.h Patch-base: 2.6.13-rc5-mm1 Patch-keys: i386 desc cleanup Signed-off-by: Zachary Amsden <zach@vmware.com> Index: linux-2.6.13/include/asm-i386/desc.h =================================================================== --- linux-2.6.13.orig/include/asm-i386/desc.h 2005-08-09 19:43:38.000000000 -0700 +++
2007 Apr 18
1
[PATCH 7/14] i386 / Add some descriptor convenience functions
Add some convenient descriptor access functions and move them all into desc.h Patch-base: 2.6.13-rc5-mm1 Patch-keys: i386 desc cleanup Signed-off-by: Zachary Amsden <zach@vmware.com> Index: linux-2.6.13/include/asm-i386/desc.h =================================================================== --- linux-2.6.13.orig/include/asm-i386/desc.h 2005-08-09 19:43:38.000000000 -0700 +++
2007 Apr 18
2
[PATCH 19/21] i386 Kprobes semaphore fix
IA-32 linear address translation is loads of fun. While cleaning up the LDT code, I noticed that kprobes code was very bogus with respect to segment handling. Many, many bugs are fixed here. I chose to combine the three separate functions that try to do linear address conversion into one, nice and working functions. All of the versions had bugs. 1) Taking an int3 from v8086 mode could cause
2007 Apr 18
2
[PATCH 19/21] i386 Kprobes semaphore fix
IA-32 linear address translation is loads of fun. While cleaning up the LDT code, I noticed that kprobes code was very bogus with respect to segment handling. Many, many bugs are fixed here. I chose to combine the three separate functions that try to do linear address conversion into one, nice and working functions. All of the versions had bugs. 1) Taking an int3 from v8086 mode could cause
2007 Apr 18
2
[PATCH 3/6] i386 virtualization - Make ldt a desc struct
* zach@vmware.com (zach@vmware.com) wrote: > Make the LDT a desc_struct pointer, since this is what it actually is. I like that plan. > There is code which relies on the fact that LDTs are allocated in page > chunks, and it is both cleaner and more convenient to keep the rather > poorly named "size" variable from the LDT in terms of LDT pages. I noticed it's replaced
2007 Apr 18
2
[PATCH 3/6] i386 virtualization - Make ldt a desc struct
* zach@vmware.com (zach@vmware.com) wrote: > Make the LDT a desc_struct pointer, since this is what it actually is. I like that plan. > There is code which relies on the fact that LDTs are allocated in page > chunks, and it is both cleaner and more convenient to keep the rather > poorly named "size" variable from the LDT in terms of LDT pages. I noticed it's replaced
2007 Apr 18
1
[PATCH 2/12] ldt-accessors
Introduce a write acessor for updating the current LDT. This is required for hypervisors like Xen that do not allow LDT pages to be directly written. Testing - here's a fun little LDT test that can be trivially modified to test limits as well. /* * Copyright (c) 2005, Zachary Amsden (zach@vmware.com) * This is licensed under the GPL. */ #include <stdio.h> #include <signal.h>
2007 Apr 18
1
[PATCH 2/12] ldt-accessors
Introduce a write acessor for updating the current LDT. This is required for hypervisors like Xen that do not allow LDT pages to be directly written. Testing - here's a fun little LDT test that can be trivially modified to test limits as well. /* * Copyright (c) 2005, Zachary Amsden (zach@vmware.com) * This is licensed under the GPL. */ #include <stdio.h> #include <signal.h>
2007 Apr 18
0
[PATCH 9/14] i386 / Typecheck and optimize base and limit accessors
Found some stray descriptor table accessors that had non-optimal assembler constraints. Use "q" to get word, high and low byte access without forcing a specific register constraint. Add desc as a memory output operand. Also, get_base was completely unused. Deprecate it. The function get_limit is also unused, but I did not deprecate it; it could be used in arch/i386/mm/fault.c.
2007 Apr 18
0
[PATCH 9/14] i386 / Typecheck and optimize base and limit accessors
Found some stray descriptor table accessors that had non-optimal assembler constraints. Use "q" to get word, high and low byte access without forcing a specific register constraint. Add desc as a memory output operand. Also, get_base was completely unused. Deprecate it. The function get_limit is also unused, but I did not deprecate it; it could be used in arch/i386/mm/fault.c.
2007 Apr 18
2
[PATCH 8/14] i386 / Add a per cpu gdt accessor
Add an accessor function for getting the per-CPU gdt. Callee must already have the CPU. Patch-base: 2.6.13-rc5-mm1 Patch-keys: i386 desc xen Signed-off-by: Zachary Amsden <zach@vmware.com> Index: linux-2.6.13/include/asm-i386/desc.h =================================================================== --- linux-2.6.13.orig/include/asm-i386/desc.h 2005-08-09 20:17:21.000000000 -0700 +++
2007 Apr 18
2
[PATCH 8/14] i386 / Add a per cpu gdt accessor
Add an accessor function for getting the per-CPU gdt. Callee must already have the CPU. Patch-base: 2.6.13-rc5-mm1 Patch-keys: i386 desc xen Signed-off-by: Zachary Amsden <zach@vmware.com> Index: linux-2.6.13/include/asm-i386/desc.h =================================================================== --- linux-2.6.13.orig/include/asm-i386/desc.h 2005-08-09 20:17:21.000000000 -0700 +++
2007 Apr 18
0
[PATCH 17/21] i386 Ldt cleanups 1
Big cleanup of LDT code. This code has very little type checking and is not frequently used, so I audited the code, added type checking and size optimizations to generate smaller assembly code. First, just introduce some small definitions that will be used later. Signed-off-by: Zachary Amsden <zach@vmware.com> Index: linux-2.6.14-zach-work/arch/i386/kernel/entry.S
2007 Apr 18
0
[PATCH 17/21] i386 Ldt cleanups 1
Big cleanup of LDT code. This code has very little type checking and is not frequently used, so I audited the code, added type checking and size optimizations to generate smaller assembly code. First, just introduce some small definitions that will be used later. Signed-off-by: Zachary Amsden <zach@vmware.com> Index: linux-2.6.14-zach-work/arch/i386/kernel/entry.S
2007 Apr 18
0
[PATCH 18/21] i386 Ldt cleanups 2
Add an acessor function to get a pointer to an LDT descriptor. Add one for the GDT too, while we are here, and a function to tell the difference. Turns out on some GCC versions, converting to char * and back gives better code output than gdt[seg >> 3]. Lets keep that trick in the header file so the C-code can be clean. Not used yet, but soon. Signed-off-by: Zachary Amsden
2007 Apr 18
0
[PATCH 18/21] i386 Ldt cleanups 2
Add an acessor function to get a pointer to an LDT descriptor. Add one for the GDT too, while we are here, and a function to tell the difference. Turns out on some GCC versions, converting to char * and back gives better code output than gdt[seg >> 3]. Lets keep that trick in the header file so the C-code can be clean. Not used yet, but soon. Signed-off-by: Zachary Amsden
2007 Apr 18
1
[PATCH] Slight cleanups for x86 ring macros (against rc3-mm2)
Clean up of patch for letting kernel run other than ring 0: a. Add some comments about the SEGMENT_IS_*_CODE() macros. b. Add a USER_RPL macro. (Code was comparing a value to a mask in some places and to the magic number 3 in other places.) c. Add macros for table indicator field and use them. d. Change the entry.S tests for LDT stack segment to use the macros. Signed-off-by: Chuck Ebbert
2007 Apr 18
1
[PATCH] Slight cleanups for x86 ring macros (against rc3-mm2)
Clean up of patch for letting kernel run other than ring 0: a. Add some comments about the SEGMENT_IS_*_CODE() macros. b. Add a USER_RPL macro. (Code was comparing a value to a mask in some places and to the magic number 3 in other places.) c. Add macros for table indicator field and use them. d. Change the entry.S tests for LDT stack segment to use the macros. Signed-off-by: Chuck Ebbert
2007 Apr 18
2
[patch 3/8] Allow a kernel to not be in ring 0.
In-Reply-To: <20060803002518.190834642@xensource.com> On Wed, 02 Aug 2006 17:25:13 -0700, Jeremy Fitzhardinge wrote: > We allow for the fact that the guest kernel may not run in ring 0. > This requires some abstraction in a few places when setting %cs or > checking privilege level (user vs kernel). I made some changes: a. Added some comments about the SEGMENT_IS_*_CODE() macros.
2007 Apr 18
2
[patch 3/8] Allow a kernel to not be in ring 0.
In-Reply-To: <20060803002518.190834642@xensource.com> On Wed, 02 Aug 2006 17:25:13 -0700, Jeremy Fitzhardinge wrote: > We allow for the fact that the guest kernel may not run in ring 0. > This requires some abstraction in a few places when setting %cs or > checking privilege level (user vs kernel). I made some changes: a. Added some comments about the SEGMENT_IS_*_CODE() macros.