mirror of
https://git.openafs.org/openafs.git
synced 2025-01-31 05:27:44 +00:00
Mark Vitale
eb07907582
volinfo: Correct 'volinfo -sizeonly' totals for partitions and server
Since the original IBM code import, the volinfo utility has reported incorrect size information totals for partitions and server (if there is more than one partition): # /usr/afs/bin/volinfo -sizeonly Processing Partition /vicepa: Volume-Id Volsize Auxsize Inodesize AVolsize SizeDiff (VolName) 536870915 5 17 2 19 14 root.cell 536870912 4 17 4 21 17 root.afs 536870913 2 1 6 7 5 root.afs.readonly 536870919 2 1 8 9 7 test.readonly 536870916 5 17 10 27 22 root.cell.readonly 536870918 2 1 12 13 11 test Part Totals 20 55856 43528 96 76 (6 volumes) Processing Partition /vicepb: Volume-Id Volsize Auxsize Inodesize AVolsize SizeDiff (VolName) Part Totals 20 55856 43528 96 76 (0 volumes) Processing Partition /vicepd: Volume-Id Volsize Auxsize Inodesize AVolsize SizeDiff (VolName) Part Totals 20 55856 43528 96 76 (0 volumes) Processing Partition /vicepz: Volume-Id Volsize Auxsize Inodesize AVolsize SizeDiff (VolName) Part Totals 20 55856 43528 96 76 (0 volumes) Processing Partition /vicepc: Volume-Id Volsize Auxsize Inodesize AVolsize SizeDiff (VolName) Part Totals 20 55856 43528 96 76 (0 volumes) Server Totals 100 279280 217640 480 380 This is because the partition totals are not zeroed for each partition. As you can see in the output above, each empty partitions is reported with the same totals as the first partition. The problem is then exacerbated by adding all the erroneous partition totals to arrive at an incorrect server total. Zero the partition counters after processing each partition so the totals are now reported correctly: sudo src/vol/volinfo -sizeonly Processing Partition /vicepa: Volume-Id Volsize Auxsize Inodesize AVolsize SizeDiff (VolName) 536870915 5 17 2 19 14 root.cell 536870912 4 17 4 21 17 root.afs 536870913 2 1 6 7 5 root.afs.readonly 536870919 2 1 8 9 7 test.readonly 536870916 5 17 10 27 22 root.cell.readonly 536870918 8 17 12 29 21 test Part Totals 26 72340 43533 112 86 (6 volumes) Processing Partition /vicepb: Volume-Id Volsize Auxsize Inodesize AVolsize SizeDiff (VolName) Part Totals 0 0 0 0 0 (0 volumes) Processing Partition /vicepd: Volume-Id Volsize Auxsize Inodesize AVolsize SizeDiff (VolName) Part Totals 0 0 0 0 0 (0 volumes) Processing Partition /vicepz: Volume-Id Volsize Auxsize Inodesize AVolsize SizeDiff (VolName) Part Totals 0 0 0 0 0 (0 volumes) Processing Partition /vicepc: Volume-Id Volsize Auxsize Inodesize AVolsize SizeDiff (VolName) Part Totals 0 0 0 0 0 (0 volumes) Server Totals 26 72340 43533 112 86 Change-Id: Iffe29a71d76b825365f99deeb36e59fda3707117 Reviewed-on: https://gerrit.openafs.org/15564 Tested-by: BuildBot <buildbot@rampaginggeek.com> Reviewed-by: gsvolt <gsvolt7@gmail.com> Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
AFS is a distributed file system that enables users to share and access all of the files stored in a network of computers as easily as they access the files stored on their local machines. The file system is called distributed for this exact reason: files can reside on many different machines, but are available to users on every machine. OpenAFS 1.0 was originally released by IBM under the terms of the IBM Public License 1.0 (IPL10). For details on IPL10 see the LICENSE file in this directory. The current OpenAFS distribution is licensed under a combination of the IPL10 and many other licenses as granted by the relevant copyright holders. The LICENSE file in this directory contains more details, thought it is not a comprehensive statement. See INSTALL for information about building and installing OpenAFS on various platforms. See CODING for developer information and guidelines. See NEWS for recent changes to OpenAFS.
Description
Languages
C
72.2%
C++
20.1%
Makefile
1.4%
Perl
1.2%
Rich Text Format
1%
Other
3.7%