From: Al Viro cast is not an lvalue Signed-off-by: Al Viro Cc: Roman Zippel Signed-off-by: Andrew Morton --- sound/oss/dmasound/dmasound_atari.c | 54 +++++++++++++++++--------- 1 files changed, 36 insertions(+), 18 deletions(-) diff -puN sound/oss/dmasound/dmasound_atari.c~m68k-lvalues-abuse-in-dmasound sound/oss/dmasound/dmasound_atari.c --- devel/sound/oss/dmasound/dmasound_atari.c~m68k-lvalues-abuse-in-dmasound 2006-01-04 22:24:15.000000000 -0800 +++ devel-akpm/sound/oss/dmasound/dmasound_atari.c 2006-01-04 22:24:15.000000000 -0800 @@ -217,8 +217,9 @@ static ssize_t ata_ct_u8(const u_char *u used = count*2; while (count > 0) { u_short data; - if (get_user(data, ((u_short *)userPtr)++)) + if (get_user(data, (u_short *)userPtr)) return -EFAULT; + userPtr += 2; *p++ = data ^ 0x8080; count--; } @@ -240,8 +241,9 @@ static ssize_t ata_ct_s16be(const u_char used = count*2; while (count > 0) { u_short data; - if (get_user(data, ((u_short *)userPtr)++)) + if (get_user(data, (u_short *)userPtr)) return -EFAULT; + userPtr += 2; *p++ = data; *p++ = data; count--; @@ -271,8 +273,9 @@ static ssize_t ata_ct_u16be(const u_char used = count*2; while (count > 0) { u_short data; - if (get_user(data, ((u_short *)userPtr)++)) + if (get_user(data, (u_short *)userPtr)) return -EFAULT; + userPtr += 2; data ^= 0x8000; *p++ = data; *p++ = data; @@ -285,8 +288,9 @@ static ssize_t ata_ct_u16be(const u_char used = count*4; while (count > 0) { u_long data; - if (get_user(data, ((u_int *)userPtr)++)) + if (get_user(data, (u_int *)userPtr)) return -EFAULT; + userPtr += 4; *p++ = data ^ 0x80008000; count--; } @@ -309,8 +313,9 @@ static ssize_t ata_ct_s16le(const u_char used = count*2; while (count > 0) { u_short data; - if (get_user(data, ((u_short *)userPtr)++)) + if (get_user(data, (u_short *)userPtr)) return -EFAULT; + userPtr += 2; data = le2be16(data); *p++ = data; *p++ = data; @@ -323,8 +328,9 @@ static ssize_t ata_ct_s16le(const u_char used = count*4; while (count > 0) { u_long data; - if (get_user(data, ((u_int *)userPtr)++)) + if (get_user(data, (u_int *)userPtr)) return -EFAULT; + userPtr += 4; data = le2be16dbl(data); *p++ = data; count--; @@ -348,8 +354,9 @@ static ssize_t ata_ct_u16le(const u_char used = count*2; while (count > 0) { u_short data; - if (get_user(data, ((u_short *)userPtr)++)) + if (get_user(data, (u_short *)userPtr)) return -EFAULT; + userPtr += 2; data = le2be16(data) ^ 0x8000; *p++ = data; *p++ = data; @@ -361,8 +368,9 @@ static ssize_t ata_ct_u16le(const u_char used = count; while (count > 0) { u_long data; - if (get_user(data, ((u_int *)userPtr)++)) + if (get_user(data, (u_int *)userPtr)) return -EFAULT; + userPtr += 4; data = le2be16dbl(data) ^ 0x80008000; *p++ = data; count--; @@ -470,8 +478,9 @@ static ssize_t ata_ctx_s8(const u_char * if (bal < 0) { if (userCount < 2) break; - if (get_user(data, ((u_short *)userPtr)++)) + if (get_user(data, (u_short *)userPtr)) return -EFAULT; + userPtr += 2; userCount -= 2; bal += hSpeed; } @@ -524,8 +533,9 @@ static ssize_t ata_ctx_u8(const u_char * if (bal < 0) { if (userCount < 2) break; - if (get_user(data, ((u_short *)userPtr)++)) + if (get_user(data, (u_short *)userPtr)) return -EFAULT; + userPtr += 2; data ^= 0x8080; userCount -= 2; bal += hSpeed; @@ -561,8 +571,9 @@ static ssize_t ata_ctx_s16be(const u_cha if (bal < 0) { if (userCount < 2) break; - if (get_user(data, ((u_short *)userPtr)++)) + if (get_user(data, (u_short *)userPtr)) return -EFAULT; + userPtr += 2; userCount -= 2; bal += hSpeed; } @@ -579,8 +590,9 @@ static ssize_t ata_ctx_s16be(const u_cha if (bal < 0) { if (userCount < 4) break; - if (get_user(data, ((u_int *)userPtr)++)) + if (get_user(data, (u_int *)userPtr)) return -EFAULT; + userPtr += 4; userCount -= 4; bal += hSpeed; } @@ -615,8 +627,9 @@ static ssize_t ata_ctx_u16be(const u_cha if (bal < 0) { if (userCount < 2) break; - if (get_user(data, ((u_short *)userPtr)++)) + if (get_user(data, (u_short *)userPtr)) return -EFAULT; + userPtr += 2; data ^= 0x8000; userCount -= 2; bal += hSpeed; @@ -634,8 +647,9 @@ static ssize_t ata_ctx_u16be(const u_cha if (bal < 0) { if (userCount < 4) break; - if (get_user(data, ((u_int *)userPtr)++)) + if (get_user(data, (u_int *)userPtr)) return -EFAULT; + userPtr += 4; data ^= 0x80008000; userCount -= 4; bal += hSpeed; @@ -671,8 +685,9 @@ static ssize_t ata_ctx_s16le(const u_cha if (bal < 0) { if (userCount < 2) break; - if (get_user(data, ((u_short *)userPtr)++)) + if (get_user(data, (u_short *)userPtr)) return -EFAULT; + userPtr += 2; data = le2be16(data); userCount -= 2; bal += hSpeed; @@ -690,8 +705,9 @@ static ssize_t ata_ctx_s16le(const u_cha if (bal < 0) { if (userCount < 4) break; - if (get_user(data, ((u_int *)userPtr)++)) + if (get_user(data, (u_int *)userPtr)) return -EFAULT; + userPtr += 4; data = le2be16dbl(data); userCount -= 4; bal += hSpeed; @@ -727,8 +743,9 @@ static ssize_t ata_ctx_u16le(const u_cha if (bal < 0) { if (userCount < 2) break; - if (get_user(data, ((u_short *)userPtr)++)) + if (get_user(data, (u_short *)userPtr)) return -EFAULT; + userPtr += 2; data = le2be16(data) ^ 0x8000; userCount -= 2; bal += hSpeed; @@ -746,8 +763,9 @@ static ssize_t ata_ctx_u16le(const u_cha if (bal < 0) { if (userCount < 4) break; - if (get_user(data, ((u_int *)userPtr)++)) + if (get_user(data, (u_int *)userPtr)) return -EFAULT; + userPtr += 4; data = le2be16dbl(data) ^ 0x80008000; userCount -= 4; bal += hSpeed; _