lkml.org 
[lkml]   [2003]   [Feb]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [Bug 352] New: Unneccessary includes of linux/version.h
From
Date
On Thu, 13 Feb 2003 12:13:08 PST, "Martin J. Bligh" <mbligh@aracnet.com>  said:

> There appears to be a large number of kernel files (267) that #include
> <linux/version.h>, but do not use any of the three things defined in it.
> This causes these files to be needlessly(I think) recompiled during a
> kernel rebuild if only the version.h file changes. Would a patch to remove
> these extra includes be accepted?
>
> Here is the list (generated with a script, so it could be wrong..)

Did your script include tracing of second-order effects?

The following reference one of the 3 version.h variables but don't include
linux/version.h themselves:

include/linux/coda.h
include/linux/compile.h
include/linux/cyclomx.h
include/linux/istallion.h
include/linux/mtd/cfi.h
include/linux/netfilter_ipv4/ipchains_core.h
include/linux/serialP.h
include/linux/stallion.h
include/linux/videodev2.h
include/net/irda/vlsi_ir.h


So for instance, the ipchains_core.h may explain these files in your list:

/net/ipv4/netfilter/ip_conntrack_core.c
/net/ipv4/netfilter/ip_nat_core.c
/net/ipv4/netfilter/ip_nat_helper.c
/net/ipv4/netfilter/ipt_ULOG.c
/net/ipv4/netfilter/ip_nat_rule.c
/net/ipv4/netfilter/ip_conntrack_standalone.c
/net/ipv4/netfilter/ip_nat_standalone.c
/net/ipv4/netfilter/ip_fw_compat_masq.c

because *somebody* needs to include version.h.

So a patch may be needed, but it should add the #include to the .h file while
cleaning up the .c files. On the other hand, I'll let somebody who understands
the kernel build system better than I comment on what happens to dependencies
and whether the files that *appear* to be gratuitously rebuilt in fact do need
to be rebuilt....
[unhandled content-type:application/pgp-signature]
\
 
 \ /
  Last update: 2005-03-22 13:33    [W:0.028 / U:0.216 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site