nfsiostat broken and exits with traceback
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
NFS-Utils |
Unknown
|
Unknown
|
|||
nfs-utils (Debian) |
Fix Released
|
Unknown
|
|||
nfs-utils (Ubuntu) |
Fix Released
|
Medium
|
Matthew Ruffell | ||
Bionic |
Fix Released
|
Medium
|
Matthew Ruffell | ||
Cosmic |
Fix Released
|
Medium
|
Matthew Ruffell | ||
Disco |
Fix Released
|
Medium
|
Matthew Ruffell |
Bug Description
[Impact]
* nfsiostat, in nfs-common-1.3.4-2, is broken in bionic, cosmic and disco.
* nfsiostat will not run at all, and is unusuable when users run the command. Users should be able to run the command and see output of their nfs mounts.
* The bug is caused by the 'list' reserved word being used as a variable name in list_nfs_mounts(), and is explained here: https:/
[Test Case]
* When you run the command nfsiostat, either as root or a regular user, the following traceback is printed:
$ nfsiostat
Traceback (most recent call last):
File "/usr/sbin/
iostat_
File "/usr/sbin/
devices = list_nfs_
File "/usr/sbin/
for device, descr in list(mountstats
TypeError: 'list' object is not callable
* Instead, the correct behaviour is not crash, and do something like the following on a system with no current nfs mounts:
$ nfsiostat
No NFS mount points were found
[Regression Potential]
* There is only one file modified, which is the nfsiostat python script. There is no other changes to any other executable in the package. Since nfsiostat was in complete failure before, the fix makes it work again, there should not be any cause for concern regarding regressions.
* In the event of a regression, worst case scenario is that users are impacted in getting the status of their nfs mounts, while still being able to freely mount and use such devices, since they are handled by other packages.
* I have built and tested all versions of packages in a ppa, which you can find here:
https:/
[Other Info]
* The impacted code is present in xenial and trusty, since it was merged into upstream in 2009. However, due to how the function works, the program executes fine and does not crash.
* Upstream commit:
http://
description: | updated |
Changed in nfs-utils (Ubuntu): | |
assignee: | nobody → Matthew Ruffell (mruffell) |
importance: | Undecided → Medium |
status: | New → In Progress |
tags: | added: sts |
tags: | added: sts-sponsor-slashd |
description: | updated |
Changed in nfs-utils (Ubuntu Cosmic): | |
assignee: | nobody → Matthew Ruffell (mruffell) |
Changed in nfs-utils (Ubuntu Bionic): | |
assignee: | nobody → Matthew Ruffell (mruffell) |
Changed in nfs-utils (Ubuntu Cosmic): | |
importance: | Undecided → Medium |
Changed in nfs-utils (Ubuntu Bionic): | |
importance: | Undecided → Medium |
status: | New → In Progress |
Changed in nfs-utils (Ubuntu Cosmic): | |
status: | New → In Progress |
Changed in nfs-utils (Debian): | |
status: | Unknown → Confirmed |
tags: | removed: sts-sponsor |
Changed in nfs-utils (Debian): | |
status: | Confirmed → Fix Released |
Upstream bug: https:/ /bugzilla. linux-nfs. org/show_ bug.cgi? id=334
Attached is the patch that was sent upstream