summaryrefslogtreecommitdiffstats
path: root/sys/tools
diff options
context:
space:
mode:
authored <ed@FreeBSD.org>2011-11-08 15:38:21 +0000
committered <ed@FreeBSD.org>2011-11-08 15:38:21 +0000
commit85414e79bdef94068b56fcf8ff45df665f2cbfd7 (patch)
treefc5b9970d963124a81d318347c4ce8c458b60540 /sys/tools
parentae7b6414d5691d7d65c5b698558cb8a8f1e5b8de (diff)
downloadFreeBSD-src-85414e79bdef94068b56fcf8ff45df665f2cbfd7.zip
FreeBSD-src-85414e79bdef94068b56fcf8ff45df665f2cbfd7.tar.gz
Make kobj_methods constant.
These structures hold no information that is modified during runtime. By marking this constant, we see approximately 600 symbols become read-only (amd64 GENERIC). While there, also mark the kobj_method structures generated by makeobjops.awk static. They are only referenced by the kobjop_desc structures within the same file. Before: $ ls -l kernel -rwxr-xr-x 1 ed wheel 15937309 Nov 8 16:29 kernel* $ size kernel text data bss dec hex filename 12260854 1358468 2848832 16468154 fb48ba kernel $ nm kernel | fgrep -c ' r ' 8240 After: $ ls -l kernel -rwxr-xr-x 1 ed wheel 15922469 Nov 8 16:25 kernel* $ size kernel text data bss dec hex filename 12302869 1302660 2848704 16454233 fb1259 kernel $ nm kernel | fgrep -c ' r ' 8838
Diffstat (limited to 'sys/tools')
-rw-r--r--sys/tools/makeobjops.awk2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/tools/makeobjops.awk b/sys/tools/makeobjops.awk
index 0406b85..4e3bd04 100644
--- a/sys/tools/makeobjops.awk
+++ b/sys/tools/makeobjops.awk
@@ -307,7 +307,7 @@ function handle_method (static, doc)
line_width, length(prototype)));
# Print out the method desc
- printc("struct kobj_method " mname "_method_default = {");
+ printc("static const struct kobj_method " mname "_method_default = {");
printc("\t&" mname "_desc, (kobjop_t) " default_function);
printc("};\n");
OpenPOWER on IntegriCloud