aboutsummaryrefslogtreecommitdiffstats
path: root/arch/um/os-Linux/aio.c
diff options
context:
space:
mode:
authorAnton Altaparmakov <aia21@cantab.net>2005-09-19 04:47:49 -0400
committerAnton Altaparmakov <aia21@cantab.net>2005-09-19 04:47:49 -0400
commit044a500e46742d39d22f1781cfb64ba93b463e39 (patch)
treeb0313211ea7ba26b90c1083ade0e4c9f486b87db /arch/um/os-Linux/aio.c
parentf6098cf449b81c14a51e48dd22ae47d03126a1de (diff)
parent6c0741fbdee5bd0f8ed13ac287c4ab18e8ba7d83 (diff)
Merge branch 'master' of /home/src/linux-2.6/
Diffstat (limited to 'arch/um/os-Linux/aio.c')
-rw-r--r--arch/um/os-Linux/aio.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/arch/um/os-Linux/aio.c b/arch/um/os-Linux/aio.c
index b04897cd995d..298d5632128b 100644
--- a/arch/um/os-Linux/aio.c
+++ b/arch/um/os-Linux/aio.c
@@ -117,6 +117,8 @@ static int do_aio(aio_context_t ctx, struct aio_context *aio)
117 err = io_submit(ctx, 1, &iocbp); 117 err = io_submit(ctx, 1, &iocbp);
118 if(err > 0) 118 if(err > 0)
119 err = 0; 119 err = 0;
120 else
121 err = -errno;
120 122
121 out: 123 out:
122 return err; 124 return err;
@@ -142,7 +144,7 @@ static int aio_thread(void *arg)
142 "errno = %d\n", errno); 144 "errno = %d\n", errno);
143 } 145 }
144 else { 146 else {
145 aio = (struct aio_context *) event.data; 147 aio = (struct aio_context *) (long) event.data;
146 if(update_aio(aio, event.res)){ 148 if(update_aio(aio, event.res)){
147 do_aio(ctx, aio); 149 do_aio(ctx, aio);
148 continue; 150 continue;
@@ -313,15 +315,16 @@ static int init_aio_26(void)
313 int err; 315 int err;
314 316
315 if(io_setup(256, &ctx)){ 317 if(io_setup(256, &ctx)){
318 err = -errno;
316 printk("aio_thread failed to initialize context, err = %d\n", 319 printk("aio_thread failed to initialize context, err = %d\n",
317 errno); 320 errno);
318 return -errno; 321 return err;
319 } 322 }
320 323
321 err = run_helper_thread(aio_thread, NULL, 324 err = run_helper_thread(aio_thread, NULL,
322 CLONE_FILES | CLONE_VM | SIGCHLD, &stack, 0); 325 CLONE_FILES | CLONE_VM | SIGCHLD, &stack, 0);
323 if(err < 0) 326 if(err < 0)
324 return -errno; 327 return err;
325 328
326 aio_pid = err; 329 aio_pid = err;
327 330