Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
8ca27771
Commit
8ca27771
authored
Dec 16, 2002
by
Jeff Dike
Browse files
Options
Browse Files
Download
Plain Diff
Merge uml.karaya.com:/home/jdike/linux/2.5/linus-2.5
into uml.karaya.com:/home/jdike/linux/2.5/updates-2.5
parents
91ec8aa9
0d371e5a
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
39 additions
and
39 deletions
+39
-39
arch/um/Kconfig
arch/um/Kconfig
+1
-0
arch/um/drivers/line.c
arch/um/drivers/line.c
+1
-0
arch/um/kernel/process_kern.c
arch/um/kernel/process_kern.c
+1
-1
arch/um/kernel/ptrace.c
arch/um/kernel/ptrace.c
+1
-2
arch/um/kernel/sys_call_table.c
arch/um/kernel/sys_call_table.c
+8
-8
arch/um/kernel/syscall_kern.c
arch/um/kernel/syscall_kern.c
+3
-3
arch/um/kernel/sysrq.c
arch/um/kernel/sysrq.c
+4
-4
arch/um/sys-i386/Makefile
arch/um/sys-i386/Makefile
+15
-17
arch/um/uml.lds.S
arch/um/uml.lds.S
+1
-0
include/asm-um/pgtable.h
include/asm-um/pgtable.h
+3
-3
include/asm-um/uaccess.h
include/asm-um/uaccess.h
+1
-1
No files found.
arch/um/Kconfig
View file @
8ca27771
...
...
@@ -128,6 +128,7 @@ source "net/Kconfig"
source "fs/Kconfig"
source "lib/Kconfig"
menu "SCSI support"
...
...
arch/um/drivers/line.c
View file @
8ca27771
...
...
@@ -13,6 +13,7 @@
#include "line.h"
#include "kern.h"
#include "user_util.h"
#include "kern_util.h"
#include "os.h"
#define LINE_BUFSIZE 4096
...
...
arch/um/kernel/process_kern.c
View file @
8ca27771
...
...
@@ -190,7 +190,7 @@ int kernel_thread(int (*fn)(void *), void * arg, unsigned long flags)
current
->
thread
.
request
.
u
.
thread
.
proc
=
fn
;
current
->
thread
.
request
.
u
.
thread
.
arg
=
arg
;
p
=
do_fork
(
CLONE_VM
|
flags
,
0
,
NULL
,
0
,
NULL
);
p
=
do_fork
(
CLONE_VM
|
flags
,
0
,
NULL
,
0
,
NULL
,
NULL
);
if
(
IS_ERR
(
p
))
panic
(
"do_fork failed in kernel_thread"
);
return
(
p
->
pid
);
}
...
...
arch/um/kernel/ptrace.c
View file @
8ca27771
...
...
@@ -33,8 +33,7 @@ int sys_ptrace(long request, long pid, long addr, long data)
if
(
current
->
ptrace
&
PT_PTRACED
)
goto
out
;
ret
=
security_ptrace
(
current
->
parent
,
current
);
if
(
ret
)
if
((
ret
=
security_ptrace
(
current
->
parent
,
current
)))
goto
out
;
/* set the ptrace bit in the process flags. */
...
...
arch/um/kernel/sys_call_table.c
View file @
8ca27771
...
...
@@ -8,6 +8,7 @@
#include "linux/version.h"
#include "linux/sys.h"
#include "linux/swap.h"
#include "linux/sysctl.h"
#include "asm/signal.h"
#include "sysdep/syscalls.h"
#include "kern_util.h"
...
...
@@ -125,10 +126,8 @@ extern syscall_handler_t sys_ni_syscall;
extern
syscall_handler_t
sys_adjtimex
;
extern
syscall_handler_t
sys_mprotect
;
extern
syscall_handler_t
sys_sigprocmask
;
extern
syscall_handler_t
sys_create_module
;
extern
syscall_handler_t
sys_init_module
;
extern
syscall_handler_t
sys_delete_module
;
extern
syscall_handler_t
sys_get_kernel_syms
;
extern
syscall_handler_t
sys_quotactl
;
extern
syscall_handler_t
sys_getpgid
;
extern
syscall_handler_t
sys_fchdir
;
...
...
@@ -162,7 +161,6 @@ extern syscall_handler_t sys_mremap;
extern
syscall_handler_t
sys_setresuid16
;
extern
syscall_handler_t
sys_getresuid16
;
extern
syscall_handler_t
sys_ni_syscall
;
extern
syscall_handler_t
sys_query_module
;
extern
syscall_handler_t
sys_poll
;
extern
syscall_handler_t
sys_nfsservctl
;
extern
syscall_handler_t
sys_setresgid16
;
...
...
@@ -235,9 +233,10 @@ extern syscall_handler_t sys_epoll_create;
extern
syscall_handler_t
sys_epoll_ctl
;
extern
syscall_handler_t
sys_epoll_wait
;
extern
syscall_handler_t
sys_remap_file_pages
;
extern
syscall_handler_t
sys_set_tid_address
;
#if CONFIG_NFSD
#define NFSSERVCTL sys_nfsserctl
#define NFSSERVCTL sys_nfsser
v
ctl
#else
#define NFSSERVCTL sys_ni_syscall
#endif
...
...
@@ -246,7 +245,7 @@ extern syscall_handler_t um_mount;
extern
syscall_handler_t
um_time
;
extern
syscall_handler_t
um_stime
;
#define LAST_GENERIC_SYSCALL __NR_
remap_file_page
s
#define LAST_GENERIC_SYSCALL __NR_
set_tid_addres
s
#if LAST_GENERIC_SYSCALL > LAST_ARCH_SYSCALL
#define LAST_SYSCALL LAST_GENERIC_SYSCALL
...
...
@@ -384,10 +383,10 @@ syscall_handler_t *sys_call_table[] = {
[
__NR_adjtimex
]
=
sys_adjtimex
,
[
__NR_mprotect
]
=
sys_mprotect
,
[
__NR_sigprocmask
]
=
sys_sigprocmask
,
[
__NR_create_module
]
=
sys_
create_module
,
[
__NR_create_module
]
=
sys_
ni_syscall
,
[
__NR_init_module
]
=
sys_init_module
,
[
__NR_delete_module
]
=
sys_delete_module
,
[
__NR_get_kernel_syms
]
=
sys_
get_kernel_syms
,
[
__NR_get_kernel_syms
]
=
sys_
ni_syscall
,
[
__NR_quotactl
]
=
sys_quotactl
,
[
__NR_getpgid
]
=
sys_getpgid
,
[
__NR_fchdir
]
=
sys_fchdir
,
...
...
@@ -424,7 +423,7 @@ syscall_handler_t *sys_call_table[] = {
[
__NR_setresuid
]
=
sys_setresuid16
,
[
__NR_getresuid
]
=
sys_getresuid16
,
[
__NR_vm86
]
=
sys_ni_syscall
,
[
__NR_query_module
]
=
sys_
query_module
,
[
__NR_query_module
]
=
sys_
ni_syscall
,
[
__NR_poll
]
=
sys_poll
,
[
__NR_nfsservctl
]
=
NFSSERVCTL
,
[
__NR_setresgid
]
=
sys_setresgid16
,
...
...
@@ -489,6 +488,7 @@ syscall_handler_t *sys_call_table[] = {
[
__NR_epoll_ctl
]
=
sys_epoll_ctl
,
[
__NR_epoll_wait
]
=
sys_epoll_wait
,
[
__NR_remap_file_pages
]
=
sys_remap_file_pages
,
[
__NR_set_tid_address
]
=
sys_set_tid_address
,
ARCH_SYSCALLS
[
LAST_SYSCALL
+
1
...
NR_syscalls
]
=
...
...
arch/um/kernel/syscall_kern.c
View file @
8ca27771
...
...
@@ -33,7 +33,7 @@ long sys_fork(void)
struct
task_struct
*
p
;
current
->
thread
.
forking
=
1
;
p
=
do_fork
(
SIGCHLD
,
0
,
NULL
,
0
,
NULL
);
p
=
do_fork
(
SIGCHLD
,
0
,
NULL
,
0
,
NULL
,
NULL
);
current
->
thread
.
forking
=
0
;
return
(
IS_ERR
(
p
)
?
PTR_ERR
(
p
)
:
p
->
pid
);
}
...
...
@@ -43,7 +43,7 @@ long sys_clone(unsigned long clone_flags, unsigned long newsp)
struct
task_struct
*
p
;
current
->
thread
.
forking
=
1
;
p
=
do_fork
(
clone_flags
,
newsp
,
NULL
,
0
,
NULL
);
p
=
do_fork
(
clone_flags
,
newsp
,
NULL
,
0
,
NULL
,
NULL
);
current
->
thread
.
forking
=
0
;
return
(
IS_ERR
(
p
)
?
PTR_ERR
(
p
)
:
p
->
pid
);
}
...
...
@@ -53,7 +53,7 @@ long sys_vfork(void)
struct
task_struct
*
p
;
current
->
thread
.
forking
=
1
;
p
=
do_fork
(
CLONE_VFORK
|
CLONE_VM
|
SIGCHLD
,
0
,
NULL
,
0
,
NULL
);
p
=
do_fork
(
CLONE_VFORK
|
CLONE_VM
|
SIGCHLD
,
0
,
NULL
,
0
,
NULL
,
NULL
);
current
->
thread
.
forking
=
0
;
return
(
IS_ERR
(
p
)
?
PTR_ERR
(
p
)
:
p
->
pid
);
}
...
...
arch/um/kernel/sysrq.c
View file @
8ca27771
...
...
@@ -19,8 +19,8 @@
#ifdef CONFIG_MODULES
extern
struct
module
*
module_list
;
extern
struct
module
kernel_module
;
/* FIXME: Accessed without a lock --RR */
extern
struct
list_head
modules
;
static
inline
int
kernel_text_address
(
unsigned
long
addr
)
{
...
...
@@ -31,11 +31,11 @@ static inline int kernel_text_address(unsigned long addr)
addr
<=
(
unsigned
long
)
&
_etext
)
return
1
;
for
(
mod
=
module_list
;
mod
!=
&
kernel_module
;
mod
=
mod
->
nex
t
)
{
list_for_each_entry
(
mod
,
&
modules
,
lis
t
)
{
/* mod_bound tests for addr being inside the vmalloc'ed
* module area. Of course it'd be better to test only
* for the .text subset... */
if
(
mod_bound
(
addr
,
0
,
mod
))
{
if
(
mod_bound
(
(
void
*
)
addr
,
0
,
mod
))
{
retval
=
1
;
break
;
}
...
...
arch/um/sys-i386/Makefile
View file @
8ca27771
obj-y
=
bugs.o checksum.o extable.o fault.o ksyms.o ldt.o
\
obj-y
=
bugs.o checksum.o extable.o fault.o ksyms.o ldt.o
module.o
\
ptrace.o ptrace_user.o semaphore.o sigcontext.o syscalls.o sysrq.o
obj-$(CONFIG_HIGHMEM)
+=
highmem.o
...
...
@@ -6,28 +6,26 @@ obj-$(CONFIG_HIGHMEM) += highmem.o
export-objs
=
ksyms.o
USER_OBJS
:=
bugs.o ptrace_user.o sigcontext.o fault.o
USER_OBJS
:=
$(
foreach
file,
$(USER_OBJS)
,
arch/um/sys-i386
/
$(file)
)
USER_OBJS
:=
$(
foreach
file,
$(USER_OBJS)
,
$(obj)
/
$(file)
)
SYMLINKS
=
semaphore.c
checksum.S extable.c highmem
.c
SYMLINKS
=
semaphore.c
extable.c highmem.c module
.c
$(USER_OBJS)
:
%.o: %.c
$(CC)
$
(
CFLAGS_
$@
)
$(USER_CFLAGS)
-c
-o
$@
$<
semaphore.c-dir
=
kernel
extable.c-dir
=
mm
highmem.c-dir
=
mm
module.c-dir
=
kernel
arch/um/sys-i386/checksum.S
:
-
rm
-f
$@
-
ln
-s
$(TOPDIR)
/arch/i386/lib/
$(
notdir
$@
)
$@
define
make_link
-rm
-f
$1
ln
-sf
$(TOPDIR)/arch/i386/$($(notdir
$1)-dir)/$(notdir
$1)
$1
endef
arch/um/sys-i386/semaphore.c
:
-
rm
-f
$@
-
ln
-s
$(TOPDIR)
/arch/i386/kernel/
$(
notdir
$@
)
$@
$(USER_OBJS)
:
%.o: %.c
$(CC)
$
(
CFLAGS_
$(
notdir
$@
)
)
$(USER_CFLAGS)
-c
-o
$@
$<
arch/um/sys-i386/extable.c
:
-
rm
-f
$@
-
ln
-s
$(TOPDIR)
/arch/i386/mm/
$(
notdir
$@
)
$@
$(foreach f,$(SYMLINKS),$(src)/$f)
:
$(
call
make_link,
$@
)
arch/um/sys-i386/highmem.c
:
-
rm
-f
$@
-
ln
-s
$(TOPDIR)
/arch/i386/mm/
$(
notdir
$@
)
$@
clean
:
$(MAKE)
-C
util clean
...
...
arch/um/uml.lds.S
View file @
8ca27771
...
...
@@ -38,6 +38,7 @@ SECTIONS
__ex_table
:
{
*(
__ex_table
)
}
__stop___ex_table
=
.
;
.
=
ALIGN
(
64
)
;
__start___ksymtab
=
.
; /* Kernel symbol table */
__ksymtab
:
{
*(
__ksymtab
)
}
__stop___ksymtab
=
.
;
...
...
include/asm-um/pgtable.h
View file @
8ca27771
...
...
@@ -373,15 +373,15 @@ static inline pmd_t * pmd_offset(pgd_t * dir, unsigned long address)
}
/* Find an entry in the third-level page table.. */
#define __pte_offset(address) ((
address
>> PAGE_SHIFT) & (PTRS_PER_PTE - 1))
#define __pte_offset(address) ((
(address)
>> PAGE_SHIFT) & (PTRS_PER_PTE - 1))
#define pte_offset_kernel(dir, address) \
((pte_t *) pmd_page_kernel(*(dir)) + __pte_offset(address))
#define pte_offset_map(dir, address) \
((pte_t *)kmap_atomic(pmd_page(*(dir)),KM_PTE0) + __pte_offset(address))
#define pte_offset_map_nested(dir, address) \
((pte_t *)kmap_atomic(pmd_page(*(dir)),KM_PTE1) + __pte_offset(address))
#define pte_unmap(pte) kunmap_atomic(
pte
, KM_PTE0)
#define pte_unmap_nested(pte) kunmap_atomic(
pte
, KM_PTE1)
#define pte_unmap(pte) kunmap_atomic(
(pte)
, KM_PTE0)
#define pte_unmap_nested(pte) kunmap_atomic(
(pte)
, KM_PTE1)
#if defined(CONFIG_HIGHPTE) && defined(CONFIG_HIGHMEM4G)
typedef
u32
pte_addr_t
;
...
...
include/asm-um/uaccess.h
View file @
8ca27771
...
...
@@ -164,7 +164,7 @@ static inline int clear_user(void *mem, int len)
extern
int
__do_strnlen_user
(
const
char
*
str
,
unsigned
long
n
,
void
**
fault_addr
,
void
**
fault_catcher
);
static
inline
int
strnlen_user
(
void
*
str
,
int
len
)
static
inline
int
strnlen_user
(
const
void
*
str
,
int
len
)
{
return
(
__do_strnlen_user
(
str
,
len
,
&
current
->
thread
.
fault_addr
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment