Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.

Bug 659556

Summary: cannot build kernel modules against kernel-rt-devel, missing includes
Product: Red Hat Enterprise MRG Reporter: Joshua Aune <luken>
Component: realtime-kernelAssignee: Red Hat Real Time Maintenance <rt-maint>
Status: CLOSED DUPLICATE QA Contact: David Sommerseth <davids>
Severity: urgent Docs Contact:
Priority: low    
Version: 1.3CC: bhu, lgoncalv, ovasik
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-12-03 01:24:12 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Joshua Aune 2010-12-03 00:40:15 UTC
Description of problem:
A joint customer of ours can not build our driver using the kernel-rt-devel-2.6.33.7-rt29.45.el5rt.x86_64.rpm package.  It is missing at least the include/generated and include/trace directories.

Version-Release number of selected component (if applicable):
kernel-rt-devel-2.6.33.7-rt29.45.el5rt.x86_64.rpm
Previous RT kernels have not had this issue.

How reproducible:
Every time


Steps to Reproduce:
1. Install above kernel-rt-devel and associated kernel packages
2. Grab iomemory-vsl-2.2.0.82-1.0.src.rpm from http://support.fusionio.com
3. rpmbuild --rebuild /home/rt/iomemory-vsl-2.2.0.82-1.0.src.rpm --define 'rpm_kernel_version 2.6.33.7-rt29.45.el5rt'
  
Actual results:
### Missing include/generated directory yields:

make: Entering directory /tmp/t/usr/src/kernels/2.6.33.7-rt29.45.el5rt-x86_64'

ERROR: Kernel configuration is invalid.
include/generated/autoconf.h or include/config/auto.conf are missing.
Run 'make oldconfig && make prepare' on kernel src to fix it.



Running oldconfig worked, prepare errors with:

scripts/kconfig/conf -s arch/x86/Kconfig
Error count: 0
  CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
  UPD     include/generated/utsrelease.h
make[1]: *** No rule to make target `missing-syscalls'.  Stop.
make: *** [prepare0] Error 2


### Missing include/trace directory yields:

include/linux/kmemtrace.h:12:31: error: trace/events/kmem.h: No such file or directory


Expected results:

Successful compile.

Wrote: /usr/src/redhat/RPMS/x86_64/iomemory-vsl-2.6.33.7-rt29.45.el5rt-2.2.0.82-1.0.x86_64.rpm



Additional info:

I grabbed the kernel src.rpm rpmbuild -bp'd it, copied in the config, etc and then copied over the include/trace and include/generated directories from the kernel build tree to the /usr/src/kernels/2.6.33.7-rt29.45.el5rt-x86_64/include/ directory and our driver built normally.

Comment 1 Luis Claudio R. Goncalves 2010-12-03 01:24:12 UTC
That was fixed on kernel kernel-rt-2.6.33.7-rt29.46.el5rt (released as a Hotfix). We are about to release an Errata kernel (-rt29.47) that contains these fixes as well.

*** This bug has been marked as a duplicate of bug 608784 ***