diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2007-04-25 10:08:57 -0400 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2007-04-27 11:20:23 -0400 |
commit | 7f5a7716dc0b380fd3c85ca5a5841969555feaa7 (patch) | |
tree | b5e64de8cd6d83dd04f83020a5369aac6dd909d2 /arch/mips/kernel/rtlx.c | |
parent | de46c33745f5e2ad594c72f2cf5f490861b16ce1 (diff) |
[MIPS] Fix AP/SP to work in the reality of modern kernels.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/kernel/rtlx.c')
-rw-r--r-- | arch/mips/kernel/rtlx.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/arch/mips/kernel/rtlx.c b/arch/mips/kernel/rtlx.c index e6e3047151a6..bfc8ca168f83 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; |