alsa-driver-1.0.10_rc2 fails to build saying ../alsa-kernel/core/memory.c:37: error: syntax error before '*' token [...] using ALSA_CARDS="via82xx" and 2.4.26-gentoo-r9 Reproducible: Always Steps to Reproduce: 1. emerge -u world (or maybe also emerge alsa-driver) Actual Results: i686-pc-linux-gnu-gcc -D__KERNEL__ -DMODULE=1 -I/var/tmp/portage/alsa-driver-1.0.10_rc2/work/alsa-driver-1.0.10rc2/include -I/usr/src/linux/include -I/usr/src/linux/include -O2 -DLINUX -Wall -Wstrict-prototypes -fomit-frame-pointer -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -DALSA_BUILD -nostdinc -iwithprefix include -DKBUILD_BASENAME=memory -c -o memory.o memory.c In file included from memory.c:2: ../alsa-kernel/core/memory.c:37: error: syntax error before '*' token ../alsa-kernel/core/memory.c:38: warning: function declaration isn't a prototype ../alsa-kernel/core/memory.c: In function `copy_to_user_fromio': ../alsa-kernel/core/memory.c:40: error: `count' undeclared (first use in this function) ../alsa-kernel/core/memory.c:40: error: (Each undeclared identifier is reported only once ../alsa-kernel/core/memory.c:40: error: for each function it appears in.) ../alsa-kernel/core/memory.c:40: error: `dst' undeclared (first use in this function) ../alsa-kernel/core/memory.c:40: error: syntax error before "__force" ../alsa-kernel/core/memory.c:40: error: syntax error before "__force" ../alsa-kernel/core/memory.c: At top level: ../alsa-kernel/core/memory.c:68: error: syntax error before '*' token ../alsa-kernel/core/memory.c:69: warning: function declaration isn't a prototype ../alsa-kernel/core/memory.c: In function `copy_from_user_toio': ../alsa-kernel/core/memory.c:71: error: `count' undeclared (first use in this function) ../alsa-kernel/core/memory.c:71: error: syntax error before "__force" ../alsa-kernel/core/memory.c:71: error: `src' undeclared (first use in this function) ../alsa-kernel/core/memory.c:71: error: syntax error before "__force" make[1]: *** [memory.o] Error 1 make[1]: Leaving directory `/var/tmp/portage/alsa-driver-1.0.10_rc2/work/alsa-driver-1.0.10rc2/acore' make: *** [compile] Error 1 Expected Results: alsa-driver should build :-) Portage 2.0.51.22-r3 (default-linux/x86/2005.0/2.4, gcc-3.3.6, glibc-2.3.5-r2, 2.4.26-gentoo-r9 i686) ================================================================= System uname: 2.4.26-gentoo-r9 i686 mobile AMD Athlon(tm) XP-M 2600+ Gentoo Base System version 1.6.13 dev-lang/python: 2.4.2 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.15.92.0.2-r10 sys-devel/libtool: 1.5.20 virtual/os-headers: 2.4.22-r1 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-O3 -march=athlon-xp -fomit-frame-pointer -pipe" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/afs/C /etc/afs/afsws /etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O3 -march=athlon-xp -fomit-frame-pointer -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="http://pandemonium.tiscali.de/pub/gentoo/ http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ http://mirrors.sec.informatik.tu-darmstadt.de/gentoo/" LANG="de_DE@euro" LC_ALL="de_DE@euro" LINGUAS="de" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="x86 3dnow X a52 aac acpi afs alsa arts audiofile avi bash-completion berkdb bidi bitmap-fonts bl bonobo bootsplash browserplugin bzip2 bzlib cdda cddb cdio cdparanoia cdr cpudetection crypt cups curl dga divx4linux doc dts dvd dvdr dvdread edl eds emboss encode esd ethereal exif expat extras faad fam fame ffmpeg flac font-server foomaticdb fortran freetype ftp gd gdbm ggi gif gimpprint glut gnome gnutls gpm gstreamer gtk gtk2 gtkhtml httpd icq idn ieee1394 imagemagick imlib ipv6 jabber java jikes jpeg kde kerberos kqemu krb4 lcms ldap libcaca libg++ libwww live lua lzo mad matroska mikmod mjpeg mmx mng motif mozilla mp3 mpeg mppe-mppc ncurses network nls nsplugin ogg oggvorbis opengl oscar pam pcmcia pcre pdflib perl png pnp ppds python qt quicktime readline real recode samba sdl slang speex spell sse ssl stream svg svga tcltk tcpd tetex theora tiff truetype truetype-fonts type1-fonts usb utf8 v4l v4l2 vcd videos vidix vlm vorbis win32codecs wmf wxwindows xanim xine xml xml2 xmms xosd xv xvid xvmc zlib linguas_de userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LDFLAGS, PORTDIR_OVERLAY
Try with some kernel that is actually still in portage at least...
Reopened because it is a bug. alsa-driver-1.0.10_rc3 works. --- >>> Merging media-sound/alsa-driver-1.0.10_rc3 to / [...] >>> media-sound/alsa-driver-1.0.10_rc3 merged. --- even "Takashi Iwai" says this is a bug. see: http://article.gmane.org/gmane.linux.alsa.devel/27757 http://article.gmane.org/gmane.linux.alsa.devel/27732
I see the exact same output, and I am using kernel 2.4.26-win4lin-r13. It also occurs if I try to just emerge this package, and a revdep-rebuild doesn't help.
2.4.28-gentoo-r9 In file included from memory.c:2: ../alsa-kernel/core/memory.c: In function `copy_to_user_fromio': ../alsa-kernel/core/memory.c:40: error: parse error before "__force" ../alsa-kernel/core/memory.c:40: error: parse error before "__force" ../alsa-kernel/core/memory.c: In function `copy_from_user_toio': ../alsa-kernel/core/memory.c:71: error: parse error before "__force" ../alsa-kernel/core/memory.c:71: error: parse error before "__force" make[1]: *** [memory.o] Error 1
I don't consider that major. Use rc3 in the mean time, the rc2 stabilization was an emergency way to fix the 2.6.14 problem, as soon as the final version of alsa is released, I'll push to mark that stable.
(In reply to comment #5) > I don't consider that major. Use rc3 in the mean time, the rc2 stabilization > was an emergency way to fix the 2.6.14 problem Such a bug is a major one, when ebuilds which are marked stable are affected. It just shouldn't happen. The advice to test yet another rc is not a good idea in this context, since there is a stable working version. There're obviously no efforts upstream to keep the alsa-driver releases consistent with kernel releases, so it's probably better to keep it only for 2.4.x and drop supporting the alsa-driver for linux 2.6, than being forced creating such a mess.
Erm... alsa-driver *does* fix for 2.6 as this is a newer version than the one 2.6.14 ships. Also, alsa-lib *must* be in sync with the kernel or we got problems. And as I said on IRC, too, go talk with arch teams and kernel devs to find a new solution. Go for rc3 that should work if you're still on 2.4, I can't really do anything about this. Should I patch rc2 to add the code in rc3? that would require a version bump and an ~arch bump.
(In reply to comment #7) > Erm... alsa-driver *does* fix for 2.6 as this is a newer version than the one > 2.6.14 ships. Also, alsa-lib *must* be in sync with the kernel or we got > problems. Yes. Would warrant a blocker in that rc2 lib for 2.4.x kernels. > And as I said on IRC, too, go talk with arch teams and kernel devs to find a > new solution. Go for rc3 that should work if you're still on 2.4, I can't > really do anything about this. Should I patch rc2 to add the code in rc3? that > would require a version bump and an ~arch bump. Kernel 2.4 is still supported, so it should work. Saying "I can't do anything for you" is really bullshit. The proper advise would be stay with 1.0.9 (afaik there's not a vulnerability to fix) and adding blockers for 2.4.x kernels in rc2. But you're right, the only ones who can really fix the issue are the alsa/kernel developers.
we could also block _rc2 for the 2.4 kernel profiles. fyi, i am running 2.4.31 on x86 and see this problem.
Blocking on sources is not correct. If you really want to do something, contact the arch teams using 2.4 subprofiles and let them p.mask on that subprofile this version.
Of course, I understand the implications of this but the best forward approach is to stabalise this across each arch to fix the 2.4 compatibility issues, and still accomodate for the recent security fixes. Can all arch teams which use alsa please test rc3 against both 2.6.31 and 2.6.14.2 and mark stable ASAP. I understand there is no real stabalisation period here, but this is an unfortunate situation. May I also just comment on the code changes I viewed between rc3 and rc2, by saying that rc3 should be mre stable than rc2 :)
(In reply to comment #11) > > Can all arch teams which use alsa please test rc3 against both 2.6.31 and > 2.6.14.2 and mark stable ASAP. I understand there is no real stabalisation > period here, but this is an unfortunate situation. May I also just comment on > the code changes I viewed between rc3 and rc2, by saying that rc3 should be mre > stable than rc2 :) Did you also view all the other alsa-* packages we need to stabilize?
Yep, with the exception of alsa-driver there is little change, the problem it appears is ppc with rc3 and the beep being re-written which flameeyes is aware of. ppc should be on 2.6 almost exclusively though, since 2.4 is very problematic if at all working on most ppc machines (as of my last update :))
Actually, I fixed rc3 for ppc :)
(In reply to comment #13) > ppc should be on 2.6 almost exclusively though, since 2.4 is very problematic if > at all working on most ppc machines (as of my last update :)) The Gentoo/ppc team doesn't support 2.4.x anymore on ppc, so Gentoo on PowerPC should be on 2.6.x exclusively. Beside of that, 2.4.x on ppc isn't very easy in these days.
Done... compile tested against gentoo-sources-2.4.31-r1...
PPC already have rc3 stable.
ppc64 does not support kernel 2.4.
removing amd64 since we don't support 2.4 too.
The only one to have stabled rc2 was x86 and now it's fixed.