Badblocks: Value too large for defined data type invalid end block
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| MAAS |
High
|
Lee Trager | ||
| 2.2 |
High
|
Lee Trager |
Bug Description
With Maas 2.2 when doing the hardware badblocks test during commissioning you get the following error when the tested disks are too large
-------
Model: LSI
Serial: xxx
Badblocks exited with 1!
badblocks: Value too large for defined data type invalid end block (4684569600): must be 32-bit value
The disk is 4.8TB in size
How to reproduce:
Let a new system be discovered via Maas.
Commission new system and select "Badblocks" at the Hardware tests scripts.
Then the error occurs.
Expected Result:
The test is performed with this size of disks.
dpkg -l '*maas*'|cat
Desired=
| Status=
|/ Err?=(none)
||/ Name Version Architecture Description
+++-===
hi maas 2.2.0+bzr6054-
ii maas-cli 2.2.0+bzr6054-
un maas-cluster-
ii maas-common 2.2.0+bzr6054-
ii maas-dhcp 2.2.0+bzr6054-
ii maas-dns 2.2.0+bzr6054-
ii maas-proxy 2.2.0+bzr6054-
ii maas-rack-
ii maas-region-api 2.2.0+bzr6054-
ii maas-region-
un maas-region-
un python-django-maas <none> <none> (no description available)
un python-maas-client <none> <none> (no description available)
un python-
ii python3-django-maas 2.2.0+bzr6054-
ii python3-maas-client 2.2.0+bzr6054-
ii python3-
Related branches
- Andres Rodriguez (community): Approve on 2017-07-03
-
Diff: 84 lines (+21/-6)2 files modifiedsrc/metadataserver/builtin_scripts/badblocks.py (+9/-2)
src/metadataserver/builtin_scripts/tests/test_badblocks.py (+12/-4)
Chenjun Shen (cshen) wrote : | #1 |
Changed in maas: | |
milestone: | none → 2.3.0 |
assignee: | nobody → Lee Trager (ltrager) |
importance: | Undecided → High |
status: | New → In Progress |
Lee Trager (ltrager) wrote : | #2 |
The related branch passes the physical block size to badblocks. Could you please verify this will work for you? You can either test the related branch or boot into rescue mode and run
blocksize=$(sudo -n blockdev --getbsz /dev/disk)
sudo -n badblocks -b $blocksize -v -w /dev/disk
Changed in maas: | |
status: | In Progress → Fix Committed |
Changed in maas: | |
milestone: | 2.3.0 → 2.3.0alpha1 |
Changed in maas: | |
status: | Fix Committed → Fix Released |
According to https:/ /bugzilla. redhat. com/show_ bug.cgi? id=1306522 and https:/ /unix.stackexch ange.com/ questions/ 152171/ badblocks- only-takes- 32-bit- integer- as-start- end-values, 32bit limit seems to be intentional.
One quick fix will be to use "badblocks -b 4096" instead of default "1024".