Fix partition initialization bug. #10702
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
After creating a partition, the toolkit must wait for the partition device to be created (under /dev). However, the naming scheme of partitions is inconsistent, with both
/dev/<name>XX
and/dev/<name>pXX
being used, depending on the device driver. So, the toolkit checks for both.However, a problem occurs when the device name itself ends in a digit. If the disk device path is say
/dev/loop1
, then/dev/loop11
is also a valid disk device path. For such disks, the/dev/<name>pXX
form must be used for partitions.While the toolkit prioritizes
/dev/loop1p1
over/dev/loop11
, if the/dev/loop1p1
device doesn't exist yet and/dev/loop11
is in use, then the toolkit may pick the wrong device path for the partition.This change fixes this by ignoring the
/dev/<name>XX
variant if the disk device path ends in a digit.Merge Checklist
All boxes should be checked before merging the PR (just tick any boxes which don't apply to this PR)
*-static
subpackages, etc.) have had theirRelease
tag incremented../cgmanifest.json
,./toolkit/scripts/toolchain/cgmanifest.json
,.github/workflows/cgmanifest.json
)./LICENSES-AND-NOTICES/SPECS/data/licenses.json
,./LICENSES-AND-NOTICES/SPECS/LICENSES-MAP.md
,./LICENSES-AND-NOTICES/SPECS/LICENSE-EXCEPTIONS.PHOTON
)*.signatures.json
filessudo make go-tidy-all
andsudo make go-test-coverage
passDoes this affect the toolchain?
NO
Test Methodology