Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 256820 - kernel directory corrupts if directory exists
Summary: kernel directory corrupts if directory exists
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Kernel Bug Wranglers and Kernel Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-01-29 18:51 UTC by Caleb Cushing
Modified: 2009-03-02 01:06 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Caleb Cushing 2009-01-29 18:51:42 UTC
plainly speaking the declared missing files are not on the system, I tried re-installing gentoo-sources to no avail, they seem to have been removed in gentoo-sources-2.6.28-r1

          CCCMD =  x86_64-pc-linux-gnu-gcc -DPERL_CORE -c -fno-strict-aliasing -pipe -I/usr/src/linux/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm  -std=c89 -march=core2 -O2 -pipe  -Wall -ansi -pedantic -W -Wextra -Wdeclaration-after-statement -Wendif-labels -Wc++-compat -DPERL_GCC_PEDANTIC   
In file included from /usr/include/sys/param.h:28,                              
                 from perl.h:653,                                               
                 from miniperlmain.c:36:                                        
/usr/src/linux/include/linux/param.h:4:23: error: /usr/src/linux/include/asm/param.h: Permission denied                                                         
In file included from /usr/include/sys/socket.h:40,                             
                 from /usr/include/netinet/in.h:25,                             
                 from perl.h:1123,                                              
                 from miniperlmain.c:36:                                        
/usr/include/bits/socket.h:354:24: error: /usr/src/linux/include/asm/socket.h: Permission denied                                                                
In file included from /usr/include/bits/errno.h:25,                             
                 from /usr/include/errno.h:36,                                  
                 from perl.h:1180,                                              
                 from miniperlmain.c:36:                                        
/usr/src/linux/include/linux/errno.h:4:23: error: /usr/src/linux/include/asm/errno.h: Permission denied                                                         
In file included from /usr/include/sys/ioctl.h:27,                              
                 from perl.h:1328,                                              
                 from miniperlmain.c:36:                                        
/usr/include/bits/ioctls.h:24:24: error: /usr/src/linux/include/asm/ioctls.h: Permission denied                                                                 
make: *** [miniperlmain.o] Error 1   

@bug-wrangler please cc perl & kernel herd

Reproducible: Always
Comment 1 SpanKY gentoo-dev 2009-01-29 20:44:58 UTC
your /usr/src/linux/ tree needs to be world readable or plenty of emerge processes are going to fail
Comment 2 Caleb Cushing 2009-01-29 20:53:11 UTC
it is, I checked that first, but an ls /usr/src/linux/include/linux/param.h (as root) shows that the file simply does not exist. I checked the previous version and it is there.
Comment 3 Caleb Cushing 2009-01-29 21:14:20 UTC
very strange... I guess I'll resolve cantfix because the very nature of what the problem was is indeterminable. rm -r /usr/src/linux-2.6.28-gentoo-r1 and re-emerging it created the file, however just re-emerge-ing that same version (without deleting first) did not.

if anyone has any idea what would cause this feel free to re-open. because it's obviously not supposed to behave this way.
Comment 4 Caleb Cushing 2009-02-09 08:48:14 UTC
I'm re-opening because I can reproduce this bug 100% I also know how to fix it.

rm -rf /usr/src/linux-whavever-version-being-extracted must be done before emerging an existing version of the kernel, or files will disappear.

I've no idea why they dissappear or what. it's reproducible with both gentoo-sources and vanilla-sources. dmesg shows know errors and this comp is new, I'm also not experiencing this with anything other than the kernel (that I'm aware of), otherwise I'd suspect my fs, ext4. 

I'm currently running a vanilla-sources-2.6.28.4 kernel. and portage 2.2_rc23.

further steps to troubleshoot would be appreciated. this is likely either a kernel (zmedico suggested the eclass) or portage issue, imho.
Comment 5 Caleb Cushing 2009-03-02 01:06:26 UTC
finally tracked this bug down a few days ago. the files the error said it couldn't find were missing. But they weren't the only files possible for it to use. The other files didn't have loose enough permissions. so it's my own fault. I'm debating on an appropriate workaround.