Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 218169

Summary: sys-kernel/gentoo-sources-2.6.25 fails on squashfs compile
Product: Gentoo Linux Reporter: Marcin Kowalski <yoshi3>
Component: [OLD] Core systemAssignee: Daniel Drake (RETIRED) <dsd>
Status: RESOLVED FIXED    
Severity: normal CC: 96bd763529be62c7350d43e8ae67f9623c998ddc, a, alexanders83, betelgeuse, chad.simmons, daemon, esqualante, funtoos, gentoo, jarausch, kernel, leio, pesa, zeekec
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: updated squashfs patch
Patch I'm using since some RCs

Description Marcin Kowalski 2008-04-17 20:03:34 UTC
CC      fs/reiserfs/item_ops.o
  CC      fs/reiserfs/ioctl.o
  CC      fs/reiserfs/procfs.o
  LD      fs/reiserfs/reiserfs.o
  LD      fs/reiserfs/built-in.o
  LD      fs/squashfs/built-in.o
  CC [M]  fs/squashfs/inode.o
fs/squashfs/inode.c:86: error: unknown field ‘read_inode’ specified in initializer
fs/squashfs/inode.c:87: warning: initialization from incompatible pointer type
fs/squashfs/inode.c: In function ‘squashfs_get_parent’:
fs/squashfs/inode.c:650: error: implicit declaration of function ‘iget’
fs/squashfs/inode.c:650: warning: initialization makes pointer from integer without a cast
make[2]: *** [fs/squashfs/inode.o] Error 1
make[1]: *** [fs/squashfs] Error 2
make: *** [fs] Error 2

Reproducible: Always

Steps to Reproduce:
1. try with this config : http://pastebin.ca/988677
and gcc-4.2.3
2. see the failure



Expected Results:  
it should build fine instead

i'll provide extra info on request, if needed
Comment 1 Jeroen Roovers (RETIRED) gentoo-dev 2008-04-17 20:18:04 UTC
Please provide your emerge --info.
Comment 2 Marcin Kowalski 2008-04-17 20:36:57 UTC
here you go  : http://pastebin.ca/988714 
Comment 3 Mart Raudsepp gentoo-dev 2008-04-17 21:59:37 UTC
Same failure here (in addition to a fbcon and radeonfb related one)
Comment 4 Paul Hartman 2008-04-18 01:40:14 UTC
Exactly same error here. My emerge --info:

Portage 2.1.5_rc4 (default-linux/amd64/2007.0/desktop, gcc-4.2.3, glibc-2.7-r2, 2.6.24-gentoo-r5 x86_64)
=================================================================
System uname: 2.6.24-gentoo-r5 x86_64 Intel(R) Core(TM)2 CPU 6600 @ 2.40GHz
Timestamp of tree: Fri, 18 Apr 2008 00:30:01 +0000
distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
app-shells/bash:     3.2_p33
dev-java/java-config: 1.3.7, 2.1.5
dev-lang/python:     2.5.1-r5
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.2.2
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.62
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.26
virtual/os-headers:  2.6.24
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=nocona -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/svn/env /usr/kde/svn/share/config /usr/kde/svn/shutdown /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--nospinner"
FEATURES="ccache collision-protect distlocks fixpackages metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo"
LANG="en_US"
LC_ALL="en_US"
LDFLAGS=""
LINGUAS="en"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/dev/shm"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/sunrise /usr/portage/local/layman/nx /usr/portage/local/layman/mozilla /usr/portage/local/layman/kde /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="7zip X a52 aac aalib acl acpi aim alsa amd64 arts audiofile avi berkdb bluetooth bzip2 cairo captury cdparanoia cdr cli codecs cracklib crypt cups curl curlwrappers dbus device-mapper dri dvb dvd dvdr dvdread emboss encode ethereal evo exif fam flac flash fortran ftp gd gdbm gif glitz gphoto2 gpm gtk gtk2 h264 hal iconv ieee1394 imagemagick imap imlib innodb ipv6 isdnlog java joystick jpeg kde kdehiddenvisibility ldap lm_sensors mad midi mikmod mime mmx mng mp3 mpeg msn mudflap ncurses network networkmanager nls nptl nptlonly nsplugin nvidia offensive ogg oggvorbis openexr opengl openmp oscar pam pcre pdf perl png pppd python qt qt3 qt3support qt4 readline reflection samba scanner sdl session slang sndfile spell spl sse sse2 ssl svg tcpd tidy tiff truetype unicode usb v4l videos vorbis wmf x264 xcomposite xml xorg xpm xv xvid xvmc yahoo zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="canon ptp2" ELIBC="glibc" FOO2ZJS_DEVICES="hp1020" INPUT_DEVICES="joystick keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en" USERLAND="GNU" VIDEO_CARDS="vesa nv nvidia"
Unset:  CPPFLAGS, CTARGET, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 5 Alexey Charkov 2008-04-18 10:29:55 UTC
Same with GCC 4.3.0.

My emerge --info:
Portage 2.1.5_rc4 (default/linux/amd64/2008.0/desktop, gcc-4.3.0, glibc-2.7-r2, 2.6.24-gentoo-r5-alchark-u3s x86_64)                                                                
=================================================================                         
System uname: 2.6.24-gentoo-r5-alchark-u3s x86_64 Intel(R) Core(TM)2 Duo CPU T7500 @ 2.20GHz                                                                                        
Timestamp of tree: Thu, 17 Apr 2008 22:45:01 +0000                                        
app-shells/bash:     3.2_p33                                                              
dev-java/java-config: 1.3.7, 2.1.5                                                        
dev-lang/python:     2.5.1-r5                                                             
sys-apps/baselayout: 2.0.0                                                                
sys-apps/openrc:     0.2.2                                                                
sys-apps/sandbox:    1.2.18.1-r2                                                          
sys-devel/autoconf:  2.13, 2.62                                                           
sys-devel/automake:  1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1                          
sys-devel/binutils:  2.18-r1                                                              
sys-devel/gcc-config: 1.4.0-r4                                                            
sys-devel/libtool:   1.5.26                                                               
virtual/os-headers:  2.6.24                                                               
ACCEPT_KEYWORDS="amd64 ~amd64"                                                            
CBUILD="x86_64-pc-linux-gnu"                                                              
CFLAGS="-O2 -march=core2 -pipe"                                                           
CHOST="x86_64-pc-linux-gnu"                                                               
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/kde/svn/env /usr/kde/svn/share/config /usr/kde/svn/shutdown /usr/share/config"           
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"         
CXXFLAGS="-O2 -march=core2 -pipe"                                                         
DISTDIR="/usr/portage/distfiles"                                                          
FEATURES="distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"                                                                              
GENTOO_MIRRORS="http://mirror.yandex.ru/gentoo-distfiles http://distfiles.gentoo.org"     
LANG="ru_RU.UTF-8"                                                                        
LC_ALL="ru_RU.UTF-8"                                                                      
LDFLAGS=""                                                                                
LINGUAS="ru en"                                                                           
MAKEOPTS="-j4"                                                                            
PKGDIR="/usr/portage/packages"                                                            
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"                                                                                
PORTAGE_TMPDIR="/var/tmp"                                                                 
PORTDIR="/usr/portage"                                                                    
PORTDIR_OVERLAY="/usr/portage/local/layman/kde /usr/portage/local"                        
SYNC="rsync://rsync.ru.gentoo.org/gentoo-portage"                                         
USE="X a52 aac acl acpi alsa amd64 amr amrnb amrwb archive avahi bash-completion berkdb bluetooth branding bzip2 cairo cdparanoia cdr chm cli cracklib crypt cups curl dbus dhcp djvu dri dts dvd dvdr dvdread emboss encode evo exif fam fbcon ffmpeg firefox flac foomaticdb fortran ftp gdbm gif gimp gnutls gpm gs gstreamer gtk hal htmlhandbook iconv id3tag ieee1394 imagemagick imlib ipv6 ipw3945 isdnlog javascript jingle jpeg kde kerberos lame latexlcms ldap libnotify lm_sensors lzo mad matroska midi mikmod mmx mng mp3 mp4 mpeg mudflap multilib musepack ncurses networkmanager nls nptl nptlonly nsplugin ogg opengl openmp oscar pam pcre pdf perl png ppds ppp pppd python qt-copy qt3 qt3support qt4 quicktime rar readline reflection samba scanner sdl session smp spell spl sse sse2 ssl ssse3 startup-notification svg symlink taglib tcpd tetex theora tiff truetype unicode usb v4l v4l2 vnc vorbis wifi wmf x264 xcomposite xine xml xorg xv xvid xvmc zeroconf zip zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse synaptics evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="ru en" USERLAND="GNU" VIDEO_CARDS="nvidia i810"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 6 Daniel Drake (RETIRED) gentoo-dev 2008-04-18 11:20:28 UTC
*** Bug 218177 has been marked as a duplicate of this bug. ***
Comment 7 Daniel Drake (RETIRED) gentoo-dev 2008-04-18 11:53:29 UTC
Created attachment 150160 [details, diff]
updated squashfs patch

I've fixed squashfs to compile but I'm not a squashfs user. Can someone please test this with a real filesystem?

This patch replaces the squashfs patch found in gentoo-sources
Comment 8 Bernard Cafarelli gentoo-dev 2008-04-18 12:45:07 UTC
*** Bug 218230 has been marked as a duplicate of this bug. ***
Comment 9 Marcin Kowalski 2008-04-18 15:36:44 UTC
i'll test the patch in an hour or so.
Comment 10 Marcin Kowalski 2008-04-18 16:04:43 UTC
i'll test the patch in an hour or so.

fails again, this time on 
  CC      drivers/video/console/fbcondecor.o
  CC      drivers/video/console/cfbcondecor.o
drivers/video/console/cfbcondecor.c:382:42: error: macro "attr_bgcol_ec" requires 3 arguments, but only 2 given
drivers/video/console/cfbcondecor.c: In function ‘fbcon_decor_clear’:
drivers/video/console/cfbcondecor.c:382: error: ‘attr_bgcol_ec’ undeclared (first use in this function)
drivers/video/console/cfbcondecor.c:382: error: (Each undeclared identifier is reported only once
drivers/video/console/cfbcondecor.c:382: error: for each function it appears in.)
drivers/video/console/cfbcondecor.c:381: warning: unused variable ‘bgshift’
make[3]: *** [drivers/video/console/cfbcondecor.o] Error 1
make[2]: *** [drivers/video/console] Error 2


but this is material for another bug. 

i'll try without fb options soon.
Comment 11 Alexander Stein 2008-04-18 19:14:35 UTC
The updated squash patch is nearly perfect. Just a
#include <linux/sched.h>
is missing in fs/squashfs/inode.c is missing. After including that line it compiles without errors and works without problems.
Comment 12 Daniel Drake (RETIRED) gentoo-dev 2008-04-18 19:24:29 UTC
Thanks Alexander! I assume you actually tested a filesystem rather than just compiling it and loading the module?

Also, why is the include needed? (what was the compile error?)

I'll start the -r1 release process now
Comment 13 Alexander Stein 2008-04-18 21:04:31 UTC
Yup, i tested it. I use it as a faster portage filesystem. Works fine.
If this include is omitted there are compiler errors that TASK_UNINTERRUPTIBLE and TASK_NORMAL aren't defined.
Comment 14 Daniel Drake (RETIRED) gentoo-dev 2008-04-18 22:19:08 UTC
Great, thanks.

Can I see the full compile error please?
I cannot see any references to TASK_NORMAL or TASK_UNINTERRUPTIBLE in any of the squashfs code
Comment 15 Alexander Stein 2008-04-18 22:32:00 UTC
I was also surprised to see such errors as they aren't stated int he affected file. But here is the compiling output with that include line:
  CC [M]  fs/squashfs/inode.o
fs/squashfs/inode.c: In function 'squashfs_get_cached_block':
fs/squashfs/inode.c:366: error: 'TASK_UNINTERRUPTIBLE' undeclared (first use in this function)
fs/squashfs/inode.c:366: error: (Each undeclared identifier is reported only once
fs/squashfs/inode.c:366: error: for each function it appears in.)
fs/squashfs/inode.c:366: error: implicit declaration of function 'schedule'
fs/squashfs/inode.c:403: error: 'TASK_NORMAL' undeclared (first use in this function)
fs/squashfs/inode.c: In function 'release_cached_fragment':
fs/squashfs/inode.c:498: error: 'TASK_NORMAL' undeclared (first use in this function)
fs/squashfs/inode.c: In function 'get_cached_fragment':
fs/squashfs/inode.c:521: error: 'TASK_UNINTERRUPTIBLE' undeclared (first use in this function)
fs/squashfs/inode.c:558: error: 'TASK_NORMAL' undeclared (first use in this function)
Comment 16 Alexander Stein 2008-04-18 22:33:02 UTC
I mean without that include line, of course. It's late...
Comment 17 devsk 2008-04-19 01:00:37 UTC
(In reply to comment #15)
> I was also surprised to see such errors as they aren't stated int he affected
> file. But here is the compiling output with that include line:
>   CC [M]  fs/squashfs/inode.o
> fs/squashfs/inode.c: In function 'squashfs_get_cached_block':
> fs/squashfs/inode.c:366: error: 'TASK_UNINTERRUPTIBLE' undeclared (first use in
> this function)
> fs/squashfs/inode.c:366: error: (Each undeclared identifier is reported only
> once
> fs/squashfs/inode.c:366: error: for each function it appears in.)
> fs/squashfs/inode.c:366: error: implicit declaration of function 'schedule'
> fs/squashfs/inode.c:403: error: 'TASK_NORMAL' undeclared (first use in this
> function)
> fs/squashfs/inode.c: In function 'release_cached_fragment':
> fs/squashfs/inode.c:498: error: 'TASK_NORMAL' undeclared (first use in this
> function)
> fs/squashfs/inode.c: In function 'get_cached_fragment':
> fs/squashfs/inode.c:521: error: 'TASK_UNINTERRUPTIBLE' undeclared (first use in
> this function)
> fs/squashfs/inode.c:558: error: 'TASK_NORMAL' undeclared (first use in this
> function)
> 

I see these errors as well.
Comment 18 Bruno 2008-04-19 08:11:05 UTC
Created attachment 150257 [details, diff]
Patch I'm using since some RCs

This is my adjusted patch for squashfs for 2.6.25.
I'm using it since a few rc's of 2.6.25 without issue.

For comment #15 and comment #17, the include of 
  #include <linux/sched.h>
is missing in inode.c

In my patch I also include 
  #include <linux/exportfs.h>
though not sure if it's really needed.

No sure which approach regarding vfs API-change is more correct, Daniel's or mine. I think Daniel's is what was suggested with the commit that did change API and mine is without a few lines of code that looked non-necessary to me.
Comment 19 Daniel Drake (RETIRED) gentoo-dev 2008-04-19 08:27:43 UTC
Bruno, I'm surprised that your patch works, but then again I don't know much about this stuff. I just copied the changes that have been made to other filesystems. I think your version will run into problems when squashfs_get_parent() is called where the inode parent is not in the inode cache (i.e. has not recently been "seen" by squashfs).

Anyway, I'd already packaged up my version last night so that's what we'll stick with for now, until it breaks or upstream come up with a new version :)
Thanks anyway!

This is fixed in genpatches-2.6.25-2 / gentoo-sources-2.6.25-r1
Comment 20 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2008-04-19 10:54:45 UTC
*** Bug 218388 has been marked as a duplicate of this bug. ***
Comment 21 Vlastimil Babka (Caster) (RETIRED) gentoo-dev 2008-04-19 13:59:47 UTC
*** Bug 218412 has been marked as a duplicate of this bug. ***