Skip to content

Commit b9e3529

Browse files
committed
scripts: dbgbmap[d3].py: Limited block conflicts to mismatched types
Block conflict detection was originally implemented with non-dags in mind. But now that dags are allowed, we shouldn't treat them as errors! Instead, we only report blocks as conflicts if multiple references have mismatching types. This should still be very useful for debugging the upcoming bmap work.
1 parent 5fb7829 commit b9e3529

2 files changed

Lines changed: 12 additions & 2 deletions

File tree

scripts/dbgbmap.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4603,7 +4603,12 @@ def writeln(s=''):
46034603
# check for some common issues
46044604

46054605
# block conflict?
4606-
if b in bmap and bmap[b].type != 'unused':
4606+
#
4607+
# note we can't compare more than types due to different
4608+
# trunks, slicing, etc
4609+
if (b in bmap
4610+
and bmap[b].type != 'unused'
4611+
and bmap[b].type != type):
46074612
if bmap[b].type == 'conflict':
46084613
bmap[b].value.append(child)
46094614
else:

scripts/dbgbmapd3.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4322,7 +4322,12 @@ def main(disk, output, mroots=None, *,
43224322
# check for some common issues
43234323

43244324
# block conflict?
4325-
if b in bmap and bmap[b].type != 'unused':
4325+
#
4326+
# note we can't compare more than types due to different
4327+
# trunks, slicing, etc
4328+
if (b in bmap
4329+
and bmap[b].type != 'unused'
4330+
and bmap[b].type != type):
43264331
if bmap[b].type == 'conflict':
43274332
bmap[b].value.append(child)
43284333
else:

0 commit comments

Comments
 (0)