Linux / Arch / Arm
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 13% duplication:
    • 204,247 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 26,775 duplicated lines
  • 5,355 duplicates
system13% (26,775 lines)
Duplication per Extension
c11% (16,365 lines)
S23% (9,707 lines)
h3% (498 lines)
pl10% (205 lines)
Duplication per Component (primary)
mm27% (5,594 lines)
mach-pxa14% (3,264 lines)
mach-omap211% (3,121 lines)
crypto22% (2,656 lines)
mach-s3c15% (2,363 lines)
mach-davinci16% (1,803 lines)
mach-omap112% (1,236 lines)
kernel6% (901 lines)
lib18% (757 lines)
mach-orion5x19% (735 lines)
mach-spear40% (579 lines)
nwfpe17% (555 lines)
include6% (472 lines)
mach-mmp16% (408 lines)
vfp12% (274 lines)
mach-imx4% (160 lines)
mach-ep93xx7% (145 lines)
probes2% (135 lines)
common4% (121 lines)
mach-dove16% (110 lines)
mach-exynos7% (107 lines)
mach-mv78xx016% (106 lines)
mach-tegra4% (99 lines)
mach-mvebu6% (99 lines)
mach-iop32x6% (95 lines)
mach-at914% (78 lines)
plat-orion5% (74 lines)
mach-meson27% (66 lines)
mach-sa11001% (63 lines)
boot2% (62 lines)
mach-cns3xxx8% (60 lines)
mach-footbridge4% (51 lines)
net3% (45 lines)
mach-socfpga8% (39 lines)
mach-qcom13% (33 lines)
mach-rpc2% (32 lines)
plat-omap4% (32 lines)
plat-versatile30% (31 lines)
mach-bcm3% (26 lines)
mach-vt850024% (24 lines)
mach-shmobile2% (23 lines)
mach-ixp4xx1% (22 lines)
mach-integrator8% (18 lines)
mach-sunxi2% (16 lines)
plat-pxa2% (14 lines)
mach-s5pv2107% (12 lines)
mach-lpc32xx2% (8 lines)
mach-mxs2% (7 lines)
mach-rockchip1% (7 lines)
mach-actions9% (7 lines)
mach-zynq2% (6 lines)
mach-gemini26% (6 lines)
mach-vexpress1% (6 lines)
mach-hisi1% (6 lines)
mach-highbank3% (6 lines)
mach-mstar0% (0 lines)
xen0% (0 lines)
mach-realview0% (0 lines)
mach-nomadik0% (0 lines)
mach-berlin0% (0 lines)
vdso0% (0 lines)
mach-sti0% (0 lines)
mach-moxart0% (0 lines)
mach-artpec0% (0 lines)
mach-milbeaut0% (0 lines)
mach-digicolor0% (0 lines)
mach-aspeed0% (0 lines)
mach-versatile0% (0 lines)
mach-realtek0% (0 lines)
mach-clps711x0% (0 lines)
mach-stm320% (0 lines)
mach-npcm0% (0 lines)
mach-nspire0% (0 lines)
mach-oxnas0% (0 lines)
mach-mediatek0% (0 lines)
mach-keystone0% (0 lines)
mach-axxia0% (0 lines)
mach-ux5000% (0 lines)
mach-alpine0% (0 lines)
mach-lpc18xx0% (0 lines)

Duplication Between Components (50+ lines)

G mach-mmp mach-mmp mach-pxa mach-pxa mach-mmp--mach-pxa 135 mach-sa1100 mach-sa1100 mach-pxa--mach-sa1100 100 mach-dove mach-dove mach-mv78xx0 mach-mv78xx0 mach-dove--mach-mv78xx0 124 mach-omap1 mach-omap1 mach-omap2 mach-omap2 mach-omap1--mach-omap2 104 mach-davinci mach-davinci mach-davinci--mach-omap1 83 mach-exynos mach-exynos mach-exynos--mach-omap2 60 mach-imx mach-imx mach-exynos--mach-imx 58 plat-versatile plat-versatile mach-exynos--plat-versatile 58 mach-imx--mach-omap2 58

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 50 longest duplicates.
See data for all 5,355 duplicates...
Size#FoldersFilesLinesCode
187 x 2 crypto
crypto
797:983 (9%)
1259:1445 (9%)
view
129 x 2 crypto
crypto
543:671 (6%)
855:983 (6%)
view
129 x 2 crypto
crypto
543:671 (6%)
1317:1445 (6%)
view
108 x 2 crypto
crypto
289:396 (5%)
1048:1155 (5%)
view
108 x 2 mach-spear
mach-spear
72:179 (59%)
117:224 (30%)
view
61 x 2 mach-pxa
mach-pxa
469:529 (8%)
849:909 (8%)
view
60 x 2 crypto
crypto
673:732 (2%)
985:1044 (2%)
view
60 x 2 mach-spear
mach-spear
25:84 (32%)
32:91 (27%)
view
58 x 2 crypto
crypto
987:1044 (2%)
1449:1506 (2%)
view
58 x 2 crypto
crypto
400:457 (2%)
1159:1216 (2%)
view
58 x 2 crypto
crypto
675:732 (2%)
1449:1506 (2%)
view
57 x 2 crypto
crypto
485:541 (2%)
1259:1315 (2%)
view
57 x 2 crypto
crypto
485:541 (2%)
797:853 (2%)
view
55 x 2 mach-pxa
mach-pxa
626:693 (9%)
341:408 (18%)
view
48 x 2 mach-davinci
mach-davinci
1227:1284 (4%)
25:82 (31%)
view
46 x 2 mach-davinci
mach-davinci
1311:1362 (4%)
127:178 (30%)
view
46 x 2 mach-omap1
mach-omap1
71:118 (20%)
38:85 (21%)
view
44 x 2 mach-orion5x
mach-orion5x
40:108 (91%)
111:179 (30%)
view
43 x 2 mach-omap2
mach-omap2
47:96 (15%)
47:96 (15%)
view
43 x 2 mach-omap1
mach-omap1
129:185 (19%)
87:143 (20%)
view
43 x 2 mach-dove
mach-mv78xx0
79:154 (34%)
123:198 (26%)
view
42 x 2 mach-spear
mach-spear
140:181 (22%)
147:188 (19%)
view
41 x 2 mach-omap1
mach-omap1
190:234 (18%)
148:192 (19%)
view
41 x 2 mach-davinci
mach-davinci
200:255 (14%)
380:435 (7%)
view
40 x 2 mach-spear
mach-spear
147:186 (18%)
185:224 (11%)
view
39 x 2 mm
mm
11:56 (8%)
11:56 (8%)
view
39 x 2 mm
mm
11:56 (8%)
11:56 (9%)
view
39 x 2 mm
mm
11:56 (9%)
11:56 (9%)
view
39 x 2 mm
mm
11:56 (8%)
11:56 (9%)
view
39 x 2 mm
mm
11:56 (8%)
11:56 (9%)
view
39 x 2 mm
mm
11:56 (8%)
11:56 (9%)
view
36 x 2 mach-omap1
mach-omap1
57:92 (12%)
59:94 (11%)
view
36 x 2 mach-davinci
mach-davinci
489:533 (4%)
244:288 (7%)
view
35 x 2 mach-spear
mach-spear
36:70 (19%)
81:115 (9%)
view
35 x 2 mm
mm
190:225 (7%)
153:188 (7%)
view
35 x 2 mach-spear
mach-spear
43:77 (16%)
81:115 (9%)
view
34 x 2 crypto
crypto
1703:1736 (1%)
1894:1927 (1%)
view
34 x 2 mach-davinci
mach-davinci
1155:1198 (3%)
79:122 (11%)
view
32 x 2 mach-davinci
mach-davinci
48:85 (11%)
42:79 (19%)
view
31 x 2 crypto
crypto
446:485 (6%)
518:557 (6%)
view
31 x 2 mm
mm
157:188 (6%)
135:166 (8%)
view
31 x 2 lib
lib
1:38 (70%)
1:38 (70%)
view
31 x 2 lib
lib
1:38 (70%)
1:38 (70%)
view
31 x 2 lib
lib
1:38 (70%)
1:38 (70%)
view
31 x 2 mm
mm
194:225 (6%)
135:166 (8%)
view
30 x 2 mach-pxa
mach-pxa
169:202 (8%)
228:261 (8%)
view
29 x 2 mach-pxa
mach-pxa
299:332 (9%)
364:397 (9%)
view
29 x 2 mach-s3c
mach-s3c
52:80 (11%)
51:79 (13%)
view
29 x 2 mach-spear
mach-spear
56:84 (15%)
64:92 (13%)
view
29 x 2 mach-mmp
mach-mmp
36:70 (17%)
33:67 (23%)
view
Duplicated Units
The list of top 42 duplicated units.
See data for all 42 unit duplicates...
Size#FoldersFilesLinesCode
32 x 2 nwfpe
nwfpe
1680:1714 
1753:1786 
view
27 x 2 mach-orion5x
mach-orion5x
40:72 
111:143 
view
24 x 2 mach-sunxi
mach-sunxi
40:69 
125:154 
view
16 x 2 mach-orion5x
mach-orion5x
186:207 
161:182 
view
16 x 2 mach-orion5x
mach-orion5x
74:98 
145:169 
view
15 x 3 mach-omap2
mach-imx
mach-exynos
487:506 
172:191 
136:155 
view
15 x 2 mach-mv78xx0
mach-dove
140:158 
96:114 
view
13 x 2 probes/kprobes
probes/kprobes
935:948 
952:965 
view
13 x 2 mach-mv78xx0
mach-dove
160:176 
116:132 
view
13 x 2 kernel
kernel
19:43 
58:82 
view
12 x 2 mm
mm
41:56 
151:166 
view
12 x 2 mm
mm
73:92 
104:123 
view
11 x 2 vfp
vfp
44:55 
57:68 
view
11 x 2 mm
mm
84:101 
64:81 
view
11 x 2 kernel
kernel
1984:1995 
1997:2008 
view
10 x 2 include/asm
include/asm
90:100 
106:116 
view
10 x 3 mach-mv78xx0
mach-orion5x
mach-dove
183:197 
518:532 
139:153 
view
10 x 2 mach-cns3xxx
mach-cns3xxx
298:317 
126:145 
view
10 x 2 mach-s3c
mach-s3c
82:96 
269:283 
view
10 x 2 mach-orion5x
mach-orion5x
132:151 
220:239 
view
9 x 2 mach-omap2
mach-davinci
525:534 
191:200 
view
9 x 2 include/asm
include/asm
253:264 
275:286 
view
9 x 2 mach-orion5x
mach-orion5x
209:220 
184:195 
view
9 x 2 mach-orion5x
mach-orion5x
179:191 
52:64 
view
8 x 2 mm
mm
120:128 
130:138 
view
8 x 2 mach-orion5x
mach-orion5x
121:137 
119:135 
view
8 x 2 mach-imx
mach-imx
47:55 
206:214 
view
8 x 2 mach-pxa
mach-pxa
517:526 
555:564 
view
7 x 2 mach-omap2
mach-omap2
43:51 
32:40 
view
7 x 2 include/asm
include/asm
537:545 
547:555 
view
7 x 2 include/asm
include/asm
37:44 
47:54 
view
7 x 2 mach-omap1
mach-omap1
120:127 
228:235 
view
7 x 2 mach-mmp
mach-mmp
20:27 
29:36 
view
7 x 2 mach-orion5x
mach-orion5x
74:86 
27:39 
view
7 x 2 kernel
kernel
50:58 
90:99 
view
6 x 2 probes/kprobes
probes/kprobes
452:458 
460:466 
view
6 x 2 include/asm
include/asm
94:101 
108:115 
view
6 x 2 mach-mv78xx0
mach-dove
410:424 
440:454 
view
6 x 2 mach-s5pv210
mach-s3c
41:47 
27:33 
view
6 x 2 mm
mm
180:186 
189:195 
view
6 x 2 mach-exynos
mach-vexpress
206:212 
194:200 
view
6 x 2 mach-pxa
mach-pxa
161:167 
368:374 
view