Loading arch/mips/kernel/linux32.c +0 −54 Original line number Diff line number Diff line Loading @@ -161,60 +161,6 @@ out: return error; } struct dirent32 { unsigned int d_ino; unsigned int d_off; unsigned short d_reclen; char d_name[NAME_MAX + 1]; }; static void xlate_dirent(void *dirent64, void *dirent32, long n) { long off; struct dirent *dirp; struct dirent32 *dirp32; off = 0; while (off < n) { dirp = (struct dirent *)(dirent64 + off); dirp32 = (struct dirent32 *)(dirent32 + off); off += dirp->d_reclen; dirp32->d_ino = dirp->d_ino; dirp32->d_off = (unsigned int)dirp->d_off; dirp32->d_reclen = dirp->d_reclen; strncpy(dirp32->d_name, dirp->d_name, dirp->d_reclen - ((3 * 4) + 2)); } return; } asmlinkage long sys32_getdents(unsigned int fd, void * dirent32, unsigned int count) { long n; void *dirent64; dirent64 = (void *)((unsigned long)(dirent32 + (sizeof(long) - 1)) & ~(sizeof(long) - 1)); if ((n = sys_getdents(fd, dirent64, count - (dirent64 - dirent32))) < 0) return(n); xlate_dirent(dirent64, dirent32, n); return(n); } asmlinkage int old_readdir(unsigned int fd, void * dirent, unsigned int count); asmlinkage int sys32_readdir(unsigned int fd, void * dirent32, unsigned int count) { int n; struct dirent dirent64; if ((n = old_readdir(fd, &dirent64, count)) < 0) return(n); xlate_dirent(&dirent64, dirent32, dirent64.d_reclen); return(n); } asmlinkage int sys32_waitpid(compat_pid_t pid, unsigned int *stat_addr, int options) { Loading arch/mips/kernel/scall64-n32.S +1 −1 Original line number Diff line number Diff line Loading @@ -195,7 +195,7 @@ EXPORT(sysn32_call_table) PTR sys_fdatasync PTR sys_truncate PTR sys_ftruncate /* 6075 */ PTR sys32_getdents PTR compat_sys_getdents PTR sys_getcwd PTR sys_chdir PTR sys_fchdir Loading arch/mips/kernel/scall64-o32.S +2 −2 Original line number Diff line number Diff line Loading @@ -293,7 +293,7 @@ sys_call_table: PTR sys_uselib PTR sys_swapon PTR sys_reboot PTR sys32_readdir PTR compat_sys_old_readdir PTR old_mmap /* 4090 */ PTR sys_munmap PTR sys_truncate Loading Loading @@ -345,7 +345,7 @@ sys_call_table: PTR sys_setfsuid PTR sys_setfsgid PTR sys32_llseek /* 4140 */ PTR sys32_getdents PTR compat_sys_getdents PTR compat_sys_select PTR sys_flock PTR sys_msync Loading arch/mips/kernel/setup.c +3 −0 Original line number Diff line number Diff line Loading @@ -540,6 +540,9 @@ void __init setup_arch(char **cmdline_p) sparse_init(); paging_init(); resource_init(); #ifdef CONFIG_SMP plat_smp_setup(); #endif } int __init fpu_disable(char *s) Loading arch/mips/kernel/smp.c +1 −1 Original line number Diff line number Diff line Loading @@ -236,7 +236,7 @@ void __init smp_prepare_cpus(unsigned int max_cpus) init_new_context(current, &init_mm); current_thread_info()->cpu = 0; smp_tune_scheduling(); prom_prepare_cpus(max_cpus); plat_prepare_cpus(max_cpus); } /* preload SMP state for boot cpu */ Loading Loading
arch/mips/kernel/linux32.c +0 −54 Original line number Diff line number Diff line Loading @@ -161,60 +161,6 @@ out: return error; } struct dirent32 { unsigned int d_ino; unsigned int d_off; unsigned short d_reclen; char d_name[NAME_MAX + 1]; }; static void xlate_dirent(void *dirent64, void *dirent32, long n) { long off; struct dirent *dirp; struct dirent32 *dirp32; off = 0; while (off < n) { dirp = (struct dirent *)(dirent64 + off); dirp32 = (struct dirent32 *)(dirent32 + off); off += dirp->d_reclen; dirp32->d_ino = dirp->d_ino; dirp32->d_off = (unsigned int)dirp->d_off; dirp32->d_reclen = dirp->d_reclen; strncpy(dirp32->d_name, dirp->d_name, dirp->d_reclen - ((3 * 4) + 2)); } return; } asmlinkage long sys32_getdents(unsigned int fd, void * dirent32, unsigned int count) { long n; void *dirent64; dirent64 = (void *)((unsigned long)(dirent32 + (sizeof(long) - 1)) & ~(sizeof(long) - 1)); if ((n = sys_getdents(fd, dirent64, count - (dirent64 - dirent32))) < 0) return(n); xlate_dirent(dirent64, dirent32, n); return(n); } asmlinkage int old_readdir(unsigned int fd, void * dirent, unsigned int count); asmlinkage int sys32_readdir(unsigned int fd, void * dirent32, unsigned int count) { int n; struct dirent dirent64; if ((n = old_readdir(fd, &dirent64, count)) < 0) return(n); xlate_dirent(&dirent64, dirent32, dirent64.d_reclen); return(n); } asmlinkage int sys32_waitpid(compat_pid_t pid, unsigned int *stat_addr, int options) { Loading
arch/mips/kernel/scall64-n32.S +1 −1 Original line number Diff line number Diff line Loading @@ -195,7 +195,7 @@ EXPORT(sysn32_call_table) PTR sys_fdatasync PTR sys_truncate PTR sys_ftruncate /* 6075 */ PTR sys32_getdents PTR compat_sys_getdents PTR sys_getcwd PTR sys_chdir PTR sys_fchdir Loading
arch/mips/kernel/scall64-o32.S +2 −2 Original line number Diff line number Diff line Loading @@ -293,7 +293,7 @@ sys_call_table: PTR sys_uselib PTR sys_swapon PTR sys_reboot PTR sys32_readdir PTR compat_sys_old_readdir PTR old_mmap /* 4090 */ PTR sys_munmap PTR sys_truncate Loading Loading @@ -345,7 +345,7 @@ sys_call_table: PTR sys_setfsuid PTR sys_setfsgid PTR sys32_llseek /* 4140 */ PTR sys32_getdents PTR compat_sys_getdents PTR compat_sys_select PTR sys_flock PTR sys_msync Loading
arch/mips/kernel/setup.c +3 −0 Original line number Diff line number Diff line Loading @@ -540,6 +540,9 @@ void __init setup_arch(char **cmdline_p) sparse_init(); paging_init(); resource_init(); #ifdef CONFIG_SMP plat_smp_setup(); #endif } int __init fpu_disable(char *s) Loading
arch/mips/kernel/smp.c +1 −1 Original line number Diff line number Diff line Loading @@ -236,7 +236,7 @@ void __init smp_prepare_cpus(unsigned int max_cpus) init_new_context(current, &init_mm); current_thread_info()->cpu = 0; smp_tune_scheduling(); prom_prepare_cpus(max_cpus); plat_prepare_cpus(max_cpus); } /* preload SMP state for boot cpu */ Loading