diff options
| -rw-r--r-- | arch/mips/kernel/kspd.c | 5 | ||||
| -rw-r--r-- | arch/mips/kernel/rtlx.c | 7 |
2 files changed, 5 insertions, 7 deletions
diff --git a/arch/mips/kernel/kspd.c b/arch/mips/kernel/kspd.c index 29eadd404fa..c6580018c94 100644 --- a/arch/mips/kernel/kspd.c +++ b/arch/mips/kernel/kspd.c | |||
| @@ -17,6 +17,7 @@ | |||
| 17 | */ | 17 | */ |
| 18 | #include <linux/kernel.h> | 18 | #include <linux/kernel.h> |
| 19 | #include <linux/module.h> | 19 | #include <linux/module.h> |
| 20 | #include <linux/sched.h> | ||
| 20 | #include <linux/unistd.h> | 21 | #include <linux/unistd.h> |
| 21 | #include <linux/file.h> | 22 | #include <linux/file.h> |
| 22 | #include <linux/fs.h> | 23 | #include <linux/fs.h> |
| @@ -198,7 +199,6 @@ void sp_work_handle_request(void) | |||
| 198 | int cmd; | 199 | int cmd; |
| 199 | 200 | ||
| 200 | char *vcwd; | 201 | char *vcwd; |
| 201 | mm_segment_t old_fs; | ||
| 202 | int size; | 202 | int size; |
| 203 | 203 | ||
| 204 | ret.retval = -1; | 204 | ret.retval = -1; |
| @@ -241,8 +241,6 @@ void sp_work_handle_request(void) | |||
| 241 | if ((ret.retval = sp_syscall(__NR_gettimeofday, (int)&tv, | 241 | if ((ret.retval = sp_syscall(__NR_gettimeofday, (int)&tv, |
| 242 | (int)&tz, 0,0)) == 0) | 242 | (int)&tz, 0,0)) == 0) |
| 243 | ret.retval = tv.tv_sec; | 243 | ret.retval = tv.tv_sec; |
| 244 | |||
| 245 | ret.errno = errno; | ||
| 246 | break; | 244 | break; |
| 247 | 245 | ||
| 248 | case MTSP_SYSCALL_EXIT: | 246 | case MTSP_SYSCALL_EXIT: |
| @@ -279,7 +277,6 @@ void sp_work_handle_request(void) | |||
| 279 | if (cmd >= 0) { | 277 | if (cmd >= 0) { |
| 280 | ret.retval = sp_syscall(cmd, generic.arg0, generic.arg1, | 278 | ret.retval = sp_syscall(cmd, generic.arg0, generic.arg1, |
| 281 | generic.arg2, generic.arg3); | 279 | generic.arg2, generic.arg3); |
| 282 | ret.errno = errno; | ||
| 283 | } else | 280 | } else |
| 284 | printk(KERN_WARNING | 281 | printk(KERN_WARNING |
| 285 | "KSPD: Unknown SP syscall number %d\n", sc.cmd); | 282 | "KSPD: Unknown SP syscall number %d\n", sc.cmd); |
diff --git a/arch/mips/kernel/rtlx.c b/arch/mips/kernel/rtlx.c index e6e3047151a..bfc8ca168f8 100644 --- a/arch/mips/kernel/rtlx.c +++ b/arch/mips/kernel/rtlx.c | |||
| @@ -289,7 +289,7 @@ unsigned int rtlx_write_poll(int index) | |||
| 289 | return write_spacefree(chan->rt_read, chan->rt_write, chan->buffer_size); | 289 | return write_spacefree(chan->rt_read, chan->rt_write, chan->buffer_size); |
| 290 | } | 290 | } |
| 291 | 291 | ||
| 292 | ssize_t rtlx_read(int index, void __user *buff, size_t count, int user) | 292 | ssize_t rtlx_read(int index, void __user *buff, size_t count) |
| 293 | { | 293 | { |
| 294 | size_t lx_write, fl = 0L; | 294 | size_t lx_write, fl = 0L; |
| 295 | struct rtlx_channel *lx; | 295 | struct rtlx_channel *lx; |
| @@ -331,9 +331,10 @@ out: | |||
| 331 | return count; | 331 | return count; |
| 332 | } | 332 | } |
| 333 | 333 | ||
| 334 | ssize_t rtlx_write(int index, const void __user *buffer, size_t count, int user) | 334 | ssize_t rtlx_write(int index, const void __user *buffer, size_t count) |
| 335 | { | 335 | { |
| 336 | struct rtlx_channel *rt; | 336 | struct rtlx_channel *rt; |
| 337 | unsigned long failed; | ||
| 337 | size_t rt_read; | 338 | size_t rt_read; |
| 338 | size_t fl; | 339 | size_t fl; |
| 339 | 340 | ||
| @@ -363,7 +364,7 @@ ssize_t rtlx_write(int index, const void __user *buffer, size_t count, int user) | |||
| 363 | } | 364 | } |
| 364 | 365 | ||
| 365 | out: | 366 | out: |
| 366 | count -= cailed; | 367 | count -= failed; |
| 367 | 368 | ||
| 368 | smp_wmb(); | 369 | smp_wmb(); |
| 369 | rt->rt_write = (rt->rt_write + count) % rt->buffer_size; | 370 | rt->rt_write = (rt->rt_write + count) % rt->buffer_size; |
