vserver 2.0 rc7
[linux-2.6.git] / sound / core / seq / seq_memory.c
index b668fbc..00d841e 100644 (file)
@@ -90,7 +90,7 @@ int snd_seq_dump_var_event(const snd_seq_event_t *event, snd_seq_dump_func_t fun
 
        if (event->data.ext.len & SNDRV_SEQ_EXT_USRPTR) {
                char buf[32];
-               char __user *curptr = event->data.ext.ptr;
+               char __user *curptr = (char __user *)event->data.ext.ptr;
                while (len > 0) {
                        int size = sizeof(buf);
                        if (len < size)
@@ -134,7 +134,7 @@ static int seq_copy_in_kernel(char **bufptr, const void *src, int size)
        return 0;
 }
 
-static int seq_copy_in_user(char **bufptr, const void *src, int size)
+static int seq_copy_in_user(char __user **bufptr, const void *src, int size)
 {
        if (copy_to_user(*bufptr, src, size))
                return -EFAULT;
@@ -158,7 +158,7 @@ int snd_seq_expand_var_event(const snd_seq_event_t *event, int count, char *buf,
        if (event->data.ext.len & SNDRV_SEQ_EXT_USRPTR) {
                if (! in_kernel)
                        return -EINVAL;
-               if (copy_from_user(buf, event->data.ext.ptr, len))
+               if (copy_from_user(buf, (void __user *)event->data.ext.ptr, len))
                        return -EFAULT;
                return newlen;
        }
@@ -336,7 +336,7 @@ int snd_seq_event_dup(pool_t *pool, snd_seq_event_t *event, snd_seq_event_cell_t
                                tmp->event = src->event;
                                src = src->next;
                        } else if (is_usrptr) {
-                               if (copy_from_user(&tmp->event, buf, size)) {
+                               if (copy_from_user(&tmp->event, (char __user *)buf, size)) {
                                        err = -EFAULT;
                                        goto __error;
                                }