Description of problem: While working on an upstream backport that required the creation of a new include/asm-x86_64/mach-xen/asm file, binary rpm builds were failing with ***** ***** HEADER EXPORT WARNINGS: ***** asm-x86_64/msr.h requires asm/msr-index.h, which does not exist in exported headers ***** ***** After some investigation I was able to reproduce this by doing the following 1. checkout a git tree of RHEL5. 2. make rh-configs-prep, cp configs/kernel-2.6.18-x86_64-xen.config .config; make -j32 3. 1552 mkdir /tmp/includes 1553 make INSTALL_HDR_PATH=/tmp/includes headers_install 1554 make INSTALL_HDR_PATH=/tmp/includes headers_check The headers_check command will fail in the *exact* same way as above. After some further investigation I decided to diff files in /tmp/includes and the git tree. I discovered that included files were not from includes/asm-x86_64/mach-xen/asm but were from includes/asm-x86_64. For an example of this variance see the exported ptrace.h file and the one in the includes/asm-x86_64/mach-xen/asm directory. Bottom line: 1. We're exporting the wrong things. I don't know how often customers compile against the xen tree ... but I don't want to be around when it does happen. 2. We cannot add new files to includes that require dependencies without getting an error in rpm builds. ie) this prevents us from continuing development. Version-Release number of selected component (if applicable): 2.6.18-165.el5 How reproducible: 100% Steps to Reproduce: see above.
Created attachment 359801 [details] Patch that causes the described problem Please note that this patch is a beta only (I'm no where near done ...) <sigh> P.
Xen build failure: https://brewweb.devel.redhat.com/getfile?taskID=1972057&name=build.log P.
Created attachment 359802 [details] diff of ptrace.h in exported and tree These should be the same. P.
So, I'm dumb when it comes to the build process. dzickus filled me in on two critical things here. 1. There are kbuild files which indicate what headers are exported, and, 2. The headers that do get exported have the __KERNEL__ sections stripped out so they are different from what is in include/asm... NOTABUG. Operator error :) If only I knew someone who could code... P.
Clearing out old flags for reporting purposes. Chris Lalancette