---

 sound/core/oss/pcm_plugin.c |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletion(-)

diff -puN sound/core/oss/pcm_plugin.c~gcc-35-pcm_plugin-warnings sound/core/oss/pcm_plugin.c
--- 25/sound/core/oss/pcm_plugin.c~gcc-35-pcm_plugin-warnings	2004-01-17 14:08:45.000000000 -0800
+++ 25-akpm/sound/core/oss/pcm_plugin.c	2004-01-17 14:09:59.000000000 -0800
@@ -857,11 +857,14 @@ int snd_pcm_area_silence(const snd_pcm_c
 	silence = snd_pcm_format_silence_64(format);
 	if (dst_area->step == (unsigned int) width) {
 		size_t dwords = samples * width / 64;
+		u_int64_t *dst64 = (u_int64_t *)dst;
+
 		samples -= dwords * 64 / width;
 		while (dwords-- > 0)
-			*((u_int64_t*)dst)++ = silence;
+			*dst64++ = silence;
 		if (samples == 0)
 			return 0;
+		dst = (char *)dst64;
 	}
 	dst_step = dst_area->step / 8;
 	switch (width) {

_