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
Kirill Smelkov
linux
Commits
efa04bfd
Commit
efa04bfd
authored
Dec 16, 2002
by
Jeff Dike
Browse files
Options
Browse Files
Download
Plain Diff
Merge jdike.wstearns.org:/home/jdike/linux/linus-2.5
into jdike.wstearns.org:/home/jdike/linux/updates-2.5
parents
91ec8aa9
0d371e5a
Changes
11
Show 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 @
efa04bfd
...
@@ -128,6 +128,7 @@ source "net/Kconfig"
...
@@ -128,6 +128,7 @@ source "net/Kconfig"
source "fs/Kconfig"
source "fs/Kconfig"
source "lib/Kconfig"
menu "SCSI support"
menu "SCSI support"
...
...
arch/um/drivers/line.c
View file @
efa04bfd
...
@@ -13,6 +13,7 @@
...
@@ -13,6 +13,7 @@
#include "line.h"
#include "line.h"
#include "kern.h"
#include "kern.h"
#include "user_util.h"
#include "user_util.h"
#include "kern_util.h"
#include "os.h"
#include "os.h"
#define LINE_BUFSIZE 4096
#define LINE_BUFSIZE 4096
...
...
arch/um/kernel/process_kern.c
View file @
efa04bfd
...
@@ -190,7 +190,7 @@ int kernel_thread(int (*fn)(void *), void * arg, unsigned long flags)
...
@@ -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
.
proc
=
fn
;
current
->
thread
.
request
.
u
.
thread
.
arg
=
arg
;
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"
);
if
(
IS_ERR
(
p
))
panic
(
"do_fork failed in kernel_thread"
);
return
(
p
->
pid
);
return
(
p
->
pid
);
}
}
...
...
arch/um/kernel/ptrace.c
View file @
efa04bfd
...
@@ -33,8 +33,7 @@ int sys_ptrace(long request, long pid, long addr, long data)
...
@@ -33,8 +33,7 @@ int sys_ptrace(long request, long pid, long addr, long data)
if
(
current
->
ptrace
&
PT_PTRACED
)
if
(
current
->
ptrace
&
PT_PTRACED
)
goto
out
;
goto
out
;
ret
=
security_ptrace
(
current
->
parent
,
current
);
if
((
ret
=
security_ptrace
(
current
->
parent
,
current
)))
if
(
ret
)
goto
out
;
goto
out
;
/* set the ptrace bit in the process flags. */
/* set the ptrace bit in the process flags. */
...
...
arch/um/kernel/sys_call_table.c
View file @
efa04bfd
...
@@ -8,6 +8,7 @@
...
@@ -8,6 +8,7 @@
#include "linux/version.h"
#include "linux/version.h"
#include "linux/sys.h"
#include "linux/sys.h"
#include "linux/swap.h"
#include "linux/swap.h"
#include "linux/sysctl.h"
#include "asm/signal.h"
#include "asm/signal.h"
#include "sysdep/syscalls.h"
#include "sysdep/syscalls.h"
#include "kern_util.h"
#include "kern_util.h"
...
@@ -125,10 +126,8 @@ extern syscall_handler_t sys_ni_syscall;
...
@@ -125,10 +126,8 @@ extern syscall_handler_t sys_ni_syscall;
extern
syscall_handler_t
sys_adjtimex
;
extern
syscall_handler_t
sys_adjtimex
;
extern
syscall_handler_t
sys_mprotect
;
extern
syscall_handler_t
sys_mprotect
;
extern
syscall_handler_t
sys_sigprocmask
;
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_init_module
;
extern
syscall_handler_t
sys_delete_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_quotactl
;
extern
syscall_handler_t
sys_getpgid
;
extern
syscall_handler_t
sys_getpgid
;
extern
syscall_handler_t
sys_fchdir
;
extern
syscall_handler_t
sys_fchdir
;
...
@@ -162,7 +161,6 @@ extern syscall_handler_t sys_mremap;
...
@@ -162,7 +161,6 @@ extern syscall_handler_t sys_mremap;
extern
syscall_handler_t
sys_setresuid16
;
extern
syscall_handler_t
sys_setresuid16
;
extern
syscall_handler_t
sys_getresuid16
;
extern
syscall_handler_t
sys_getresuid16
;
extern
syscall_handler_t
sys_ni_syscall
;
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_poll
;
extern
syscall_handler_t
sys_nfsservctl
;
extern
syscall_handler_t
sys_nfsservctl
;
extern
syscall_handler_t
sys_setresgid16
;
extern
syscall_handler_t
sys_setresgid16
;
...
@@ -235,9 +233,10 @@ extern syscall_handler_t sys_epoll_create;
...
@@ -235,9 +233,10 @@ extern syscall_handler_t sys_epoll_create;
extern
syscall_handler_t
sys_epoll_ctl
;
extern
syscall_handler_t
sys_epoll_ctl
;
extern
syscall_handler_t
sys_epoll_wait
;
extern
syscall_handler_t
sys_epoll_wait
;
extern
syscall_handler_t
sys_remap_file_pages
;
extern
syscall_handler_t
sys_remap_file_pages
;
extern
syscall_handler_t
sys_set_tid_address
;
#if CONFIG_NFSD
#if CONFIG_NFSD
#define NFSSERVCTL sys_nfsserctl
#define NFSSERVCTL sys_nfsser
v
ctl
#else
#else
#define NFSSERVCTL sys_ni_syscall
#define NFSSERVCTL sys_ni_syscall
#endif
#endif
...
@@ -246,7 +245,7 @@ extern syscall_handler_t um_mount;
...
@@ -246,7 +245,7 @@ extern syscall_handler_t um_mount;
extern
syscall_handler_t
um_time
;
extern
syscall_handler_t
um_time
;
extern
syscall_handler_t
um_stime
;
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
#if LAST_GENERIC_SYSCALL > LAST_ARCH_SYSCALL
#define LAST_SYSCALL LAST_GENERIC_SYSCALL
#define LAST_SYSCALL LAST_GENERIC_SYSCALL
...
@@ -384,10 +383,10 @@ syscall_handler_t *sys_call_table[] = {
...
@@ -384,10 +383,10 @@ syscall_handler_t *sys_call_table[] = {
[
__NR_adjtimex
]
=
sys_adjtimex
,
[
__NR_adjtimex
]
=
sys_adjtimex
,
[
__NR_mprotect
]
=
sys_mprotect
,
[
__NR_mprotect
]
=
sys_mprotect
,
[
__NR_sigprocmask
]
=
sys_sigprocmask
,
[
__NR_sigprocmask
]
=
sys_sigprocmask
,
[
__NR_create_module
]
=
sys_
create_module
,
[
__NR_create_module
]
=
sys_
ni_syscall
,
[
__NR_init_module
]
=
sys_init_module
,
[
__NR_init_module
]
=
sys_init_module
,
[
__NR_delete_module
]
=
sys_delete_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_quotactl
]
=
sys_quotactl
,
[
__NR_getpgid
]
=
sys_getpgid
,
[
__NR_getpgid
]
=
sys_getpgid
,
[
__NR_fchdir
]
=
sys_fchdir
,
[
__NR_fchdir
]
=
sys_fchdir
,
...
@@ -424,7 +423,7 @@ syscall_handler_t *sys_call_table[] = {
...
@@ -424,7 +423,7 @@ syscall_handler_t *sys_call_table[] = {
[
__NR_setresuid
]
=
sys_setresuid16
,
[
__NR_setresuid
]
=
sys_setresuid16
,
[
__NR_getresuid
]
=
sys_getresuid16
,
[
__NR_getresuid
]
=
sys_getresuid16
,
[
__NR_vm86
]
=
sys_ni_syscall
,
[
__NR_vm86
]
=
sys_ni_syscall
,
[
__NR_query_module
]
=
sys_
query_module
,
[
__NR_query_module
]
=
sys_
ni_syscall
,
[
__NR_poll
]
=
sys_poll
,
[
__NR_poll
]
=
sys_poll
,
[
__NR_nfsservctl
]
=
NFSSERVCTL
,
[
__NR_nfsservctl
]
=
NFSSERVCTL
,
[
__NR_setresgid
]
=
sys_setresgid16
,
[
__NR_setresgid
]
=
sys_setresgid16
,
...
@@ -489,6 +488,7 @@ syscall_handler_t *sys_call_table[] = {
...
@@ -489,6 +488,7 @@ syscall_handler_t *sys_call_table[] = {
[
__NR_epoll_ctl
]
=
sys_epoll_ctl
,
[
__NR_epoll_ctl
]
=
sys_epoll_ctl
,
[
__NR_epoll_wait
]
=
sys_epoll_wait
,
[
__NR_epoll_wait
]
=
sys_epoll_wait
,
[
__NR_remap_file_pages
]
=
sys_remap_file_pages
,
[
__NR_remap_file_pages
]
=
sys_remap_file_pages
,
[
__NR_set_tid_address
]
=
sys_set_tid_address
,
ARCH_SYSCALLS
ARCH_SYSCALLS
[
LAST_SYSCALL
+
1
...
NR_syscalls
]
=
[
LAST_SYSCALL
+
1
...
NR_syscalls
]
=
...
...
arch/um/kernel/syscall_kern.c
View file @
efa04bfd
...
@@ -33,7 +33,7 @@ long sys_fork(void)
...
@@ -33,7 +33,7 @@ long sys_fork(void)
struct
task_struct
*
p
;
struct
task_struct
*
p
;
current
->
thread
.
forking
=
1
;
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
;
current
->
thread
.
forking
=
0
;
return
(
IS_ERR
(
p
)
?
PTR_ERR
(
p
)
:
p
->
pid
);
return
(
IS_ERR
(
p
)
?
PTR_ERR
(
p
)
:
p
->
pid
);
}
}
...
@@ -43,7 +43,7 @@ long sys_clone(unsigned long clone_flags, unsigned long newsp)
...
@@ -43,7 +43,7 @@ long sys_clone(unsigned long clone_flags, unsigned long newsp)
struct
task_struct
*
p
;
struct
task_struct
*
p
;
current
->
thread
.
forking
=
1
;
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
;
current
->
thread
.
forking
=
0
;
return
(
IS_ERR
(
p
)
?
PTR_ERR
(
p
)
:
p
->
pid
);
return
(
IS_ERR
(
p
)
?
PTR_ERR
(
p
)
:
p
->
pid
);
}
}
...
@@ -53,7 +53,7 @@ long sys_vfork(void)
...
@@ -53,7 +53,7 @@ long sys_vfork(void)
struct
task_struct
*
p
;
struct
task_struct
*
p
;
current
->
thread
.
forking
=
1
;
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
;
current
->
thread
.
forking
=
0
;
return
(
IS_ERR
(
p
)
?
PTR_ERR
(
p
)
:
p
->
pid
);
return
(
IS_ERR
(
p
)
?
PTR_ERR
(
p
)
:
p
->
pid
);
}
}
...
...
arch/um/kernel/sysrq.c
View file @
efa04bfd
...
@@ -19,8 +19,8 @@
...
@@ -19,8 +19,8 @@
#ifdef CONFIG_MODULES
#ifdef CONFIG_MODULES
extern
struct
module
*
module_list
;
/* FIXME: Accessed without a lock --RR */
extern
struct
module
kernel_module
;
extern
struct
list_head
modules
;
static
inline
int
kernel_text_address
(
unsigned
long
addr
)
static
inline
int
kernel_text_address
(
unsigned
long
addr
)
{
{
...
@@ -31,11 +31,11 @@ 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
)
addr
<=
(
unsigned
long
)
&
_etext
)
return
1
;
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
/* mod_bound tests for addr being inside the vmalloc'ed
* module area. Of course it'd be better to test only
* module area. Of course it'd be better to test only
* for the .text subset... */
* for the .text subset... */
if
(
mod_bound
(
addr
,
0
,
mod
))
{
if
(
mod_bound
(
(
void
*
)
addr
,
0
,
mod
))
{
retval
=
1
;
retval
=
1
;
break
;
break
;
}
}
...
...
arch/um/sys-i386/Makefile
View file @
efa04bfd
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
ptrace.o ptrace_user.o semaphore.o sigcontext.o syscalls.o sysrq.o
obj-$(CONFIG_HIGHMEM)
+=
highmem.o
obj-$(CONFIG_HIGHMEM)
+=
highmem.o
...
@@ -6,28 +6,26 @@ obj-$(CONFIG_HIGHMEM) += highmem.o
...
@@ -6,28 +6,26 @@ obj-$(CONFIG_HIGHMEM) += highmem.o
export-objs
=
ksyms.o
export-objs
=
ksyms.o
USER_OBJS
:=
bugs.o ptrace_user.o sigcontext.o fault.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
semaphore.c-dir
=
kernel
$(CC)
$
(
CFLAGS_
$@
)
$(USER_CFLAGS)
-c
-o
$@
$<
extable.c-dir
=
mm
highmem.c-dir
=
mm
module.c-dir
=
kernel
arch/um/sys-i386/checksum.S
:
define
make_link
-
rm
-f
$@
-rm
-f
$1
-
ln
-s
$(TOPDIR)
/arch/i386/lib/
$(
notdir
$@
)
$@
ln
-sf
$(TOPDIR)/arch/i386/$($(notdir
$1)-dir)/$(notdir
$1)
$1
endef
arch/um/sys-i386/semaphore.c
:
$(USER_OBJS)
:
%.o: %.c
-
rm
-f
$@
$(CC)
$
(
CFLAGS_
$(
notdir
$@
)
)
$(USER_CFLAGS)
-c
-o
$@
$<
-
ln
-s
$(TOPDIR)
/arch/i386/kernel/
$(
notdir
$@
)
$@
arch/um/sys-i386/extable.c
:
$(foreach f,$(SYMLINKS),$(src)/$f)
:
-
rm
-f
$@
$(
call
make_link,
$@
)
-
ln
-s
$(TOPDIR)
/arch/i386/mm/
$(
notdir
$@
)
$@
arch/um/sys-i386/highmem.c
:
-
rm
-f
$@
-
ln
-s
$(TOPDIR)
/arch/i386/mm/
$(
notdir
$@
)
$@
clean
:
clean
:
$(MAKE)
-C
util clean
$(MAKE)
-C
util clean
...
...
arch/um/uml.lds.S
View file @
efa04bfd
...
@@ -38,6 +38,7 @@ SECTIONS
...
@@ -38,6 +38,7 @@ SECTIONS
__ex_table
:
{
*(
__ex_table
)
}
__ex_table
:
{
*(
__ex_table
)
}
__stop___ex_table
=
.
;
__stop___ex_table
=
.
;
.
=
ALIGN
(
64
)
;
__start___ksymtab
=
.
; /* Kernel symbol table */
__start___ksymtab
=
.
; /* Kernel symbol table */
__ksymtab
:
{
*(
__ksymtab
)
}
__ksymtab
:
{
*(
__ksymtab
)
}
__stop___ksymtab
=
.
;
__stop___ksymtab
=
.
;
...
...
include/asm-um/pgtable.h
View file @
efa04bfd
...
@@ -373,15 +373,15 @@ static inline pmd_t * pmd_offset(pgd_t * dir, unsigned long address)
...
@@ -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.. */
/* 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) \
#define pte_offset_kernel(dir, address) \
((pte_t *) pmd_page_kernel(*(dir)) + __pte_offset(address))
((pte_t *) pmd_page_kernel(*(dir)) + __pte_offset(address))
#define pte_offset_map(dir, address) \
#define pte_offset_map(dir, address) \
((pte_t *)kmap_atomic(pmd_page(*(dir)),KM_PTE0) + __pte_offset(address))
((pte_t *)kmap_atomic(pmd_page(*(dir)),KM_PTE0) + __pte_offset(address))
#define pte_offset_map_nested(dir, address) \
#define pte_offset_map_nested(dir, address) \
((pte_t *)kmap_atomic(pmd_page(*(dir)),KM_PTE1) + __pte_offset(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(pte) kunmap_atomic(
(pte)
, KM_PTE0)
#define pte_unmap_nested(pte) kunmap_atomic(
pte
, KM_PTE1)
#define pte_unmap_nested(pte) kunmap_atomic(
(pte)
, KM_PTE1)
#if defined(CONFIG_HIGHPTE) && defined(CONFIG_HIGHMEM4G)
#if defined(CONFIG_HIGHPTE) && defined(CONFIG_HIGHMEM4G)
typedef
u32
pte_addr_t
;
typedef
u32
pte_addr_t
;
...
...
include/asm-um/uaccess.h
View file @
efa04bfd
...
@@ -164,7 +164,7 @@ static inline int clear_user(void *mem, int len)
...
@@ -164,7 +164,7 @@ static inline int clear_user(void *mem, int len)
extern
int
__do_strnlen_user
(
const
char
*
str
,
unsigned
long
n
,
extern
int
__do_strnlen_user
(
const
char
*
str
,
unsigned
long
n
,
void
**
fault_addr
,
void
**
fault_catcher
);
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
,
return
(
__do_strnlen_user
(
str
,
len
,
&
current
->
thread
.
fault_addr
,
&
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