Hide Forgot
Description of problem: 1) compile code When compiling rhel6.1 kernel from source rpm, using default conf, the compiling breaks: CC [M] fs/nfs/mount_clnt.o CC [M] fs/nfs/dns_resolve.o fs/nfs/dns_resolve.c:12:32: fatal error: linux/dns_resolver.h: No such file or directory compilation terminated. make[2]: *** [fs/nfs/dns_resolve.o] Error 1 2) check source vi fs/nfs/dns_resolve.c, see this: #ifdef CONFIG_NFS_USE_KERNEL_DNS #include <linux/sunrpc/clnt.h> #include <linux/dns_resolver.h> 3) find dns_resolver.h do not find dns_resolver.h in the uncompressed kernel tar file. Version-Release number of selected component (if applicable): linux-2.6.32-131.0.15.el6 How reproducible: Just compile the kernel source. Expected results: should pass compiling. Additional info:
Where are you getting the "default conf" from? FWIW -- works for me if I do rpm -ivh kernel.src.rpm rpmbuild -bp /root/rpmbuild/SPECS/kernel.spec cd /root/rpmbuild/BUILD/linux.../kernel... make -j oldconfig; make -j P.
The error is valid. You can see this if you disable legacy resolver. (CONFIG_NFS_USE_LEGACY_DNS) if this is not defined, dns_resolve.c includes linux/dns_resolve.h which does not exist.