Linux / Net
File Size

The distribution of size of files (measured in lines of code).

Intro
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
File Size Overall
  • There are 1,714 files with 885,875 lines of code.
    • 242 very long files (496,723 lines of code)
    • 261 long files (184,627 lines of code)
    • 408 medium size files (131,235 lines of codeclsfd_ftr_w_mp_ins)
    • 336 small files (49,081 lines of code)
    • 467 very small files (24,209 lines of code)
56% | 20% | 14% | 5% | 2%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: zoomable circles | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
c56% | 21% | 14% | 5% | 2%
h35% | 12% | 20% | 13% | 18%
asn10% | 0% | 0% | 100% | 0%
S0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
core80% | 8% | 7% | 2% | <1%
ipv464% | 16% | 11% | 5% | 2%
netfilter41% | 20% | 24% | 8% | 4%
mac8021170% | 16% | 7% | 3% | 1%
bluetooth79% | 10% | 5% | 3% | 1%
ipv663% | 12% | 15% | 5% | 2%
wireless83% | 7% | 4% | 2% | 1%
sched42% | 26% | 28% | 1% | <1%
sctp60% | 27% | 9% | 2% | <1%
sunrpc48% | 30% | 14% | 4% | <1%
ceph69% | 15% | 5% | 6% | 2%
bridge44% | 28% | 14% | 7% | 4%
tipc56% | 27% | 5% | 5% | 4%
batman-adv50% | 31% | 9% | 3% | 5%
xfrm61% | 28% | 7% | 1% | 1%
openvswitch65% | 18% | 4% | 7% | 4%
mptcp70% | 17% | 5% | 2% | 3%
smc43% | 24% | 27% | 1% | 2%
llc58% | 24% | 5% | 6% | 5%
nfc35% | 46% | 11% | 3% | 2%
can59% | 26% | 9% | 4% | <1%
decnet55% | 25% | 14% | 3% | <1%
dsa52% | 13% | 19% | 5% | 8%
vmw_vsock62% | 17% | 11% | 4% | 4%
packet91% | 0% | 5% | 2% | 0%
netlink84% | 0% | 13% | 0% | 1%
key100% | 0% | 0% | 0% | 0%
tls68% | 17% | 7% | 3% | 3%
ieee80215444% | 13% | 32% | 4% | 4%
iucv100% | 0% | 0% | 0% | 0%
atm33% | 31% | 24% | 4% | 5%
ethtool28% | 21% | 28% | 19% | 1%
unix78% | 0% | 8% | 12% | 1%
ROOT80% | 0% | 13% | 3% | 1%
l2tp44% | 27% | 23% | 3% | 0%
mpls83% | 0% | 8% | 4% | 2%
rxrpc19% | 42% | 28% | 4% | 5%
9p35% | 49% | 8% | 6% | <1%
dcb98% | 0% | 0% | 0% | 1%
ncsi35% | 36% | 23% | 4% | <1%
ax2530% | 0% | 35% | 32% | 1%
kcm82% | 0% | 17% | 0% | 0%
x2541% | 0% | 33% | 23% | 2%
appletalk59% | 29% | 0% | 8% | 2%
rose33% | 27% | 18% | 18% | 1%
netrom37% | 25% | 14% | 21% | 1%
xdp43% | 20% | 19% | 14% | 3%
phonet34% | 19% | 38% | 4% | 2%
netlabel21% | 57% | 7% | 6% | 6%
rfkill71% | 0% | 18% | 8% | <1%
rds8% | 56% | 19% | 9% | 6%
dccp0% | 58% | 23% | 9% | 8%
qrtr0% | 83% | 0% | 6% | 10%
caif0% | 30% | 42% | 19% | 7%
mac8021540% | 42% | 33% | 16% | 7%
8020% | 72% | 0% | 5% | 21%
8021q0% | 51% | 29% | 14% | 5%
mctp0% | 46% | 53% | 0% | 0%
6lowpan0% | 45% | 10% | 31% | 12%
switchdev0% | 100% | 0% | 0% | 0%
hsr0% | 0% | 79% | 11% | 9%
lapb0% | 0% | 78% | 21% | 0%
psample0% | 0% | 100% | 0% | 0%
strparser0% | 0% | 100% | 0% | 0%
ethernet0% | 0% | 100% | 0% | 0%
dns_resolver0% | 0% | 69% | 0% | 30%
l3mdev0% | 0% | 0% | 100% | 0%
bpf0% | 0% | 0% | 100% | 0%
nsh0% | 0% | 0% | 100% | 0%
ife0% | 0% | 0% | 100% | 0%
bpfilter0% | 0% | 0% | 60% | 39%
Longest Files (Top 50)
File# lines# units
nl80211.c
in wireless
14993 289
devlink.c
in core
9077 273
filter.c
in core
8798 131
nf_tables_api.c
in netfilter
8097 261
mgmt.c
in bluetooth
7316 270
dev.c
in core
7250 336
socket.c
in sctp
6248 190
l2cap_core.c
in bluetooth
6218 213
addrconf.c
in ipv6
5762 172
route.c
in ipv6
5294 170
hci_event.c
in bluetooth
4836 189
4551 144
mlme.c
in mac80211
4478 92
4443 198
4429 178
tx.c
in mac80211
4206 79
skbuff.c
in core
4172 136
3996 155
3973 -
af_packet.c
in packet
3582 116
util.c
in mac80211
3549 90
cfg.c
in mac80211
3544 113
3542 89
rx.c
in mac80211
3535 50
trace.h
in wireless
3478 -
hci_sync.c
in bluetooth
3349 184
3347 106
ip_vs_ctl.c
in netfilter/ipvs
3304 68
tcp.c
in ipv4
3290 101
3208 72
af_key.c
in key
3184 100
3080 93
pktgen.c
in core
3064 63
reg.c
in wireless
3036 137
cls_api.c
in sched
2990 107
2979 116
route.c
in ipv4
2924 82
nexthop.c
in ipv4
2914 120
flow_netlink.c
in openvswitch
2896 73
socket.c
in tipc
2871 104
sock.c
in core
2848 143
protocol.c
in mptcp
2753 127
smp.c
in bluetooth
2734 83
hci_core.c
in bluetooth
2732 114
2724 128
cls_flower.c
in sched
2709 77
ioctl.c
in ethtool
2665 81
translation-table.c
in batman-adv
2625 82
2615 108
af_unix.c
in unix
2595 101
Files With Most Units (Top 50)
File# lines# units
dev.c
in core
7250 336
nl80211.c
in wireless
14993 289
devlink.c
in core
9077 273
mgmt.c
in bluetooth
7316 270
nf_tables_api.c
in netfilter
8097 261
l2cap_core.c
in bluetooth
6218 213
4443 198
socket.c
in sctp
6248 190
hci_event.c
in bluetooth
4836 189
hci_sync.c
in bluetooth
3349 184
4429 178
addrconf.c
in ipv6
5762 172
route.c
in ipv6
5294 170
msg.h
in tipc
940 168
3996 155
4551 144
sock.c
in core
2848 143
reg.c
in wireless
3036 137
skbuff.c
in core
4172 136
filter.c
in core
8798 131
2724 128
protocol.c
in mptcp
2753 127
nexthop.c
in ipv4
2914 120
br_private.h
in bridge
1688 116
2979 116
af_packet.c
in packet
3582 116
hci_core.c
in bluetooth
2732 114
cfg.c
in mac80211
3544 113
br_sysfs_br.c
in bridge
902 112
2615 108
cls_api.c
in sched
2990 107
3347 106
socket.c
in tipc
2871 104
tcp.c
in ipv4
3290 101
af_unix.c
in unix
2595 101
af_key.c
in key
3184 100
socket.c
in root
2445 100
mcast.c
in ipv6
2502 100
2059 95
3080 93
slave.c
in dsa
1983 93
mlme.c
in mac80211
4478 92
osdmap.c
in ceph
2312 91
1582 90
xprtsock.c
in sunrpc
2347 90
af_smc.c
in smc
2387 90
util.c
in mac80211
3549 90
1112 89
3542 89
af_netlink.c
in netlink
2218 88
Files With Long Lines (Top 50)

There are 53 files with lines longer than 120 characters. In total, there are 73 long lines.

File# lines# units# long lines
nl802154.c
in ieee802154
1960 34 5
dev.c
in core
7250 336 4
2724 128 3
ipconfig.c
in ipv4
1310 31 3
hard-interface.c
in batman-adv
609 22 2
bat_iv_ogm.c
in batman-adv
1685 29 2
translation-table.c
in batman-adv
2625 82 2
transport.c
in can/j1939
1677 59 2
pktgen.c
in core
3064 63 2
af_decnet.c
in decnet
1798 47 2
nl80211.c
in wireless
14993 289 2
276 - 2
openvswitch_trace.h
in openvswitch
139 - 2
af_ax25.c
in ax25
1533 28 1
ax25_out.c
in ax25
259 6 1
bat_v_ogm.c
in batman-adv
653 22 1
bat_v_elp.c
in batman-adv
323 10 1
1490 38 1
1069 36 1
1774 45 1
4551 144 1
devlink.c
in core
9077 273 1
3080 93 1
dn_nsp_in.c
in decnet
622 18 1
debugfs.c
in ceph
382 23 1
mapper.c
in ceph/crush
794 18 1
231 8 1
mpc.c
in atm
1219 33 1
act_pedit.c
in sched
471 15 1
cls_flower.c
in sched
2709 77 1
sch_cbq.c
in sched
1315 35 1
af_rose.c
in rose
1215 29 1
200 15 1
xt_set.c
in netfilter
595 2 1
xt_physdev.c
in netfilter
104 3 1
ip_vs_ctl.c
in netfilter/ipvs
3304 68 1
1114 27 1
route.c
in ipv4
2924 82 1
2979 116 1
socklib.c
in sunrpc
234 8 1
reg.c
in wireless
3036 137 1
345 11 1
smc_llc.c
in smc
1969 67 1
smc_cdc.c
in smc
362 18 1
af_netrom.c
in netrom
1145 26 1
ndisc.c
in ipv6
1571 43 1
util.c
in mac80211
3549 90 1
ibss.c
in mac80211
1432 28 1
debugfs_sta.c
in mac80211
905 15 1
ib_send.c
in rds
671 16 1