diff options
author | jdike <jdike> | 2004-01-19 21:02:47 +0000 |
---|---|---|
committer | jdike <jdike> | 2004-01-19 21:02:47 +0000 |
commit | e56437e14f27830e15202ba7e162a3eef0603f24 (patch) | |
tree | b4c78f21bd296c2190673cdb47caf369da0c2f91 | |
parent | 744f53dd89458c1a25cbfa4d053faa6f98775988 (diff) | |
download | uml-history-e56437e14f27830e15202ba7e162a3eef0603f24.tar.gz |
/dev/anon is now checked for correctly.
-rw-r--r-- | arch/um/include/mem_user.h | 1 | ||||
-rw-r--r-- | arch/um/kernel/mem_user.c | 11 | ||||
-rw-r--r-- | arch/um/kernel/um_arch.c | 1 |
3 files changed, 5 insertions, 8 deletions
diff --git a/arch/um/include/mem_user.h b/arch/um/include/mem_user.h index fe0c298..108b6a2 100644 --- a/arch/um/include/mem_user.h +++ b/arch/um/include/mem_user.h @@ -49,7 +49,6 @@ extern int iomem_size; extern unsigned long host_task_size; extern unsigned long task_size; -extern void check_devanon(void); extern int init_mem_user(void); extern int create_mem_file(unsigned long len); extern void setup_memory(void *entry); diff --git a/arch/um/kernel/mem_user.c b/arch/um/kernel/mem_user.c index 9ad1882..f110eb5 100644 --- a/arch/um/kernel/mem_user.c +++ b/arch/um/kernel/mem_user.c @@ -83,9 +83,7 @@ static int create_tmp_file(unsigned long len) return(fd); } -static int have_devanon = 0; - -void check_devanon(void) +static int have_devanon(void) { int fd; @@ -93,11 +91,11 @@ void check_devanon(void) fd = open("/dev/anon", O_RDWR); if(fd < 0){ printk("Not available (open failed with errno %d)\n", errno); - return; + return(0); } printk("OK\n"); - have_devanon = 1; + return(1); } static int create_anon_file(unsigned long len) @@ -125,7 +123,7 @@ int create_mem_file(unsigned long len) { int err, fd; - if(have_devanon) + if(have_devanon()) fd = create_anon_file(len); else fd = create_tmp_file(len); @@ -158,6 +156,7 @@ static int __init parse_iomem(char *str, int *add) os_print_error(fd, "parse_iomem - Couldn't open io file"); goto out; } + err = os_stat_fd(fd, &buf); if(err < 0){ os_print_error(err, "parse_iomem - cannot stat_fd file"); diff --git a/arch/um/kernel/um_arch.c b/arch/um/kernel/um_arch.c index e8aeb22..48f353c 100644 --- a/arch/um/kernel/um_arch.c +++ b/arch/um/kernel/um_arch.c @@ -417,7 +417,6 @@ void __init check_bugs(void) arch_check_bugs(); check_ptrace(); check_sigio(); - check_devanon(); } /* |