This is what we have now: Large inlines with multiple callers: Size Uses Wasted Name and definition ===== ==== ====== ================================================ 322 5 1208 drm_core_ioremap drivers/char/drm/drmP.h 258 5 952 drm_core_ioremapfree drivers/char/drm/drmP.h 148 4 384 drm_ioremapfree drivers/char/drm/drm_memory.h 147 3 254 drm_ioremap drivers/char/drm/drm_memory.h This patch moves a few large functions from drm_memory.h to drm_memory.c, with the following effect: # size org/*.ko new/*.ko | sort -t/ -k2 text data bss dec hex filename 46305 1304 20 47629 ba0d new/drm.ko 46367 1304 20 47691 ba4b org/drm.ko 12969 1372 0 14341 3805 new/i810.ko 14712 1372 0 16084 3ed4 org/i810.ko 16447 1364 0 17811 4593 new/i830.ko 18198 1364 0 19562 4c6a org/i830.ko 11875 1324 0 13199 338f new/i915.ko 13025 1324 0 14349 380d org/i915.ko 23936 29288 0 53224 cfe8 new/mga.ko 27280 29288 0 56568 dcf8 org/mga.ko Please apply. Signed-off-by: Denis Vlasenko -- vda