aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/include/asm/paravirt.h
diff options
context:
space:
mode:
authorJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>2009-04-07 16:34:16 -0400
committerJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>2009-04-07 16:34:16 -0400
commit38f4b8c0da01ae7cd9b93386842ce272d6fde9ab (patch)
tree3c8c52201aac038094bfea7efdd0984a8f62045e /arch/x86/include/asm/paravirt.h
parenta811454027352c762e0d5bba1b1d8f7d26bf96ae (diff)
parent8e2c4f2844c0e8dcdfe312e5f2204854ca8532c6 (diff)
Merge commit 'origin/master' into for-linus/xen/master
* commit 'origin/master': (4825 commits) Fix build errors due to CONFIG_BRANCH_TRACER=y parport: Use the PCI IRQ if offered tty: jsm cleanups Adjust path to gpio headers KGDB_SERIAL_CONSOLE check for module Change KCONFIG name tty: Blackin CTS/RTS Change hardware flow control from poll to interrupt driven Add support for the MAX3100 SPI UART. lanana: assign a device name and numbering for MAX3100 serqt: initial clean up pass for tty side tty: Use the generic RS485 ioctl on CRIS tty: Correct inline types for tty_driver_kref_get() splice: fix deadlock in splicing to file nilfs2: support nanosecond timestamp nilfs2: introduce secondary super block nilfs2: simplify handling of active state of segments nilfs2: mark minor flag for checkpoint created by internal operation nilfs2: clean up sketch file nilfs2: super block operations fix endian bug ... Conflicts: arch/x86/include/asm/thread_info.h arch/x86/lguest/boot.c drivers/xen/manage.c
Diffstat (limited to 'arch/x86/include/asm/paravirt.h')
-rw-r--r--arch/x86/include/asm/paravirt.h19
1 files changed, 2 insertions, 17 deletions
diff --git a/arch/x86/include/asm/paravirt.h b/arch/x86/include/asm/paravirt.h
index dfdee0ca57d3..bc384be6aa44 100644
--- a/arch/x86/include/asm/paravirt.h
+++ b/arch/x86/include/asm/paravirt.h
@@ -319,8 +319,6 @@ struct pv_mmu_ops {
319#if PAGETABLE_LEVELS >= 3 319#if PAGETABLE_LEVELS >= 3
320#ifdef CONFIG_X86_PAE 320#ifdef CONFIG_X86_PAE
321 void (*set_pte_atomic)(pte_t *ptep, pte_t pteval); 321 void (*set_pte_atomic)(pte_t *ptep, pte_t pteval);
322 void (*set_pte_present)(struct mm_struct *mm, unsigned long addr,
323 pte_t *ptep, pte_t pte);
324 void (*pte_clear)(struct mm_struct *mm, unsigned long addr, 322 void (*pte_clear)(struct mm_struct *mm, unsigned long addr,
325 pte_t *ptep); 323 pte_t *ptep);
326 void (*pmd_clear)(pmd_t *pmdp); 324 void (*pmd_clear)(pmd_t *pmdp);
@@ -391,7 +389,7 @@ extern struct pv_lock_ops pv_lock_ops;
391 389
392#define paravirt_type(op) \ 390#define paravirt_type(op) \
393 [paravirt_typenum] "i" (PARAVIRT_PATCH(op)), \ 391 [paravirt_typenum] "i" (PARAVIRT_PATCH(op)), \
394 [paravirt_opptr] "m" (op) 392 [paravirt_opptr] "i" (&(op))
395#define paravirt_clobber(clobber) \ 393#define paravirt_clobber(clobber) \
396 [paravirt_clobber] "i" (clobber) 394 [paravirt_clobber] "i" (clobber)
397 395
@@ -445,7 +443,7 @@ int paravirt_disable_iospace(void);
445 * offset into the paravirt_patch_template structure, and can therefore be 443 * offset into the paravirt_patch_template structure, and can therefore be
446 * freely converted back into a structure offset. 444 * freely converted back into a structure offset.
447 */ 445 */
448#define PARAVIRT_CALL "call *%[paravirt_opptr];" 446#define PARAVIRT_CALL "call *%c[paravirt_opptr];"
449 447
450/* 448/*
451 * These macros are intended to wrap calls through one of the paravirt 449 * These macros are intended to wrap calls through one of the paravirt
@@ -1367,13 +1365,6 @@ static inline void set_pte_atomic(pte_t *ptep, pte_t pte)
1367 pte.pte, pte.pte >> 32); 1365 pte.pte, pte.pte >> 32);
1368} 1366}
1369 1367
1370static inline void set_pte_present(struct mm_struct *mm, unsigned long addr,
1371 pte_t *ptep, pte_t pte)
1372{
1373 /* 5 arg words */
1374 pv_mmu_ops.set_pte_present(mm, addr, ptep, pte);
1375}
1376
1377static inline void pte_clear(struct mm_struct *mm, unsigned long addr, 1368static inline void pte_clear(struct mm_struct *mm, unsigned long addr,
1378 pte_t *ptep) 1369 pte_t *ptep)
1379{ 1370{
@@ -1390,12 +1381,6 @@ static inline void set_pte_atomic(pte_t *ptep, pte_t pte)
1390 set_pte(ptep, pte); 1381 set_pte(ptep, pte);
1391} 1382}
1392 1383
1393static inline void set_pte_present(struct mm_struct *mm, unsigned long addr,
1394 pte_t *ptep, pte_t pte)
1395{
1396 set_pte(ptep, pte);
1397}
1398
1399static inline void pte_clear(struct mm_struct *mm, unsigned long addr, 1384static inline void pte_clear(struct mm_struct *mm, unsigned long addr,
1400 pte_t *ptep) 1385 pte_t *ptep)
1401{ 1386{