Commit 6475df78 authored by Anton Blanchard's avatar Anton Blanchard

ppc64: updates for 2.5.7-pre1 - futexes,

parent 99f35d56
...@@ -780,7 +780,7 @@ void hpte_init_pSeries(void) ...@@ -780,7 +780,7 @@ void hpte_init_pSeries(void)
*/ */
int hash_page(unsigned long ea, unsigned long access) int hash_page(unsigned long ea, unsigned long access)
{ {
void * pgdir = NULL; void *pgdir;
unsigned long va, vsid, vpn; unsigned long va, vsid, vpn;
unsigned long newpp, hash_ind, prpn; unsigned long newpp, hash_ind, prpn;
unsigned long hpteflags; unsigned long hpteflags;
...@@ -870,8 +870,6 @@ int hash_page(unsigned long ea, unsigned long access) ...@@ -870,8 +870,6 @@ int hash_page(unsigned long ea, unsigned long access)
* pte we fetch will not change * pte we fetch will not change
*/ */
spin_lock(&hash_table_lock); spin_lock(&hash_table_lock);
old_pte = *ptep;
/* /*
* At this point we have found a pte (which was present). * At this point we have found a pte (which was present).
...@@ -894,6 +892,7 @@ int hash_page(unsigned long ea, unsigned long access) ...@@ -894,6 +892,7 @@ int hash_page(unsigned long ea, unsigned long access)
* page is currently not DIRTY. * page is currently not DIRTY.
*/ */
old_pte = *ptep;
new_pte = old_pte; new_pte = old_pte;
/* If the attempted access was a store */ /* If the attempted access was a store */
if (access & _PAGE_RW) if (access & _PAGE_RW)
......
...@@ -728,7 +728,20 @@ _GLOBAL(sys_call_table32) ...@@ -728,7 +728,20 @@ _GLOBAL(sys_call_table32)
.llong .sys_mincore /* 206 */ .llong .sys_mincore /* 206 */
.llong .sys_gettid /* 207 */ .llong .sys_gettid /* 207 */
.llong .sys_tkill /* 208 */ .llong .sys_tkill /* 208 */
.rept NR_syscalls-208 .llong .sys_setxattr
.llong .sys_lsetxattr /* 210 */
.llong .sys_fsetxattr
.llong .sys_getxattr
.llong .sys_lgetxattr
.llong .sys_fgetxattr
.llong .sys_listxattr /* 215 */
.llong .sys_llistxattr
.llong .sys_flistxattr
.llong .sys_removexattr
.llong .sys_lremovexattr
.llong .sys_fremovexattr /* 220 */
.llong .sys_futex
.rept NR_syscalls-221
.llong .sys_ni_syscall .llong .sys_ni_syscall
.endr .endr
#endif #endif
...@@ -944,6 +957,19 @@ _GLOBAL(sys_call_table) ...@@ -944,6 +957,19 @@ _GLOBAL(sys_call_table)
.llong .sys_mincore /* 206 */ .llong .sys_mincore /* 206 */
.llong .sys_gettid /* 207 */ .llong .sys_gettid /* 207 */
.llong .sys_tkill /* 208 */ .llong .sys_tkill /* 208 */
.rept NR_syscalls-208 .llong .sys_setxattr
.llong .sys_lsetxattr /* 210 */
.llong .sys_fsetxattr
.llong .sys_getxattr
.llong .sys_lgetxattr
.llong .sys_fgetxattr
.llong .sys_listxattr /* 215 */
.llong .sys_llistxattr
.llong .sys_flistxattr
.llong .sys_removexattr
.llong .sys_lremovexattr
.llong .sys_fremovexattr /* 220 */
.llong .sys_futex
.rept NR_syscalls-221
.llong .sys_ni_syscall .llong .sys_ni_syscall
.endr .endr
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
#define PROT_READ 0x1 /* page can be read */ #define PROT_READ 0x1 /* page can be read */
#define PROT_WRITE 0x2 /* page can be written */ #define PROT_WRITE 0x2 /* page can be written */
#define PROT_EXEC 0x4 /* page can be executed */ #define PROT_EXEC 0x4 /* page can be executed */
#define PROT_SEM 0x8 /* page may be used for atomic ops */
#define PROT_NONE 0x0 /* page can not be accessed */ #define PROT_NONE 0x0 /* page can not be accessed */
#define MAP_SHARED 0x01 /* Share changes */ #define MAP_SHARED 0x01 /* Share changes */
......
...@@ -87,7 +87,6 @@ pte_free(pte_t *pte) ...@@ -87,7 +87,6 @@ pte_free(pte_t *pte)
#define pte_free_kernel(pte) pte_free(pte) #define pte_free_kernel(pte) pte_free(pte)
#endif /* _PPC64_PGALLOC_H */ #define check_pgt_cache() do { } while (0)
#endif /* _PPC64_PGALLOC_H */
...@@ -217,22 +217,24 @@ ...@@ -217,22 +217,24 @@
#define __NR_mincore 206 #define __NR_mincore 206
#define __NR_gettid 207 #define __NR_gettid 207
#define __NR_tkill 208 #define __NR_tkill 208
#define __NR_setxattr 209
#define __NR_lsetxattr 210
#define __NR_fsetxattr 211
#define __NR_getxattr 212
#define __NR_lgetxattr 213
#define __NR_fgetxattr 214
#define __NR_listxattr 215
#define __NR_llistxattr 216
#define __NR_flistxattr 217
#define __NR_removexattr 218
#define __NR_lremovexattr 219
#define __NR_fremovexattr 220
#define __NR_futex 221
#if 0 /* Remind paulus to add these into ppc32 */ #if 0
/* Remind paulus to add these into ppc32 */
__NR_security __NR_security
__NR_readahead __NR_readahead
__NR_setxattr
__NR_lsetxattr
__NR_fsetxattr
__NR_getxattr
__NR_lgetxattr
__NR_fgetxattr
__NR_listxattr
__NR_llistxattr
__NR_flistxattr
__NR_removexattr
__NR_lremovexattr
__NR_fremovexattr
#endif #endif
#define __NR(n) #n #define __NR(n) #n
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment