Bug 2525909
| Summary: | disabling NFSv3 causes reads/writes to hang in D+ state | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | Benji Wiebe <benjiwiebe> | ||||||
| Component: | nfs-utils | Assignee: | Steve Dickson <steved> | ||||||
| Status: | NEW --- | QA Contact: | Fedora Extras Quality Assurance <extras-qa> | ||||||
| Severity: | unspecified | Docs Contact: | |||||||
| Priority: | unspecified | ||||||||
| Version: | 45 | CC: | benjiwiebe, luk.claes, mmalik, steved | ||||||
| Target Milestone: | --- | ||||||||
| Target Release: | --- | ||||||||
| Hardware: | x86_64 | ||||||||
| OS: | Unspecified | ||||||||
| Whiteboard: | |||||||||
| Fixed In Version: | Doc Type: | --- | |||||||
| Doc Text: | Story Points: | --- | |||||||
| Clone Of: | Environment: | ||||||||
| Last Closed: | Type: | Bug | |||||||
| Regression: | --- | Mount Type: | --- | ||||||
| Documentation: | --- | CRM: | |||||||
| Verified Versions: | Category: | --- | |||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||
| Embargoed: | |||||||||
| Attachments: |
|
||||||||
Created attachment 2156011 [details]
tcpdump from server side, vers3=y, reads/writes succeed
Turns out it's a server-side (not client side!) bug. I am doing all my testing now with client kernel version 7.2.1-300.fc45.x86_64, and only the server-side kernel version matters. So I've been "bisecting" kernel versions on the server side, downloading builds from Bodhi/Koji. The bug was introduced in 7.2.0-0.rc0.260622gef0c9f75a195.6.fc45. 7.1.0-55 is the last version that doesn't have the bug. I'm going to try to git bisect it, but it's been a long time since I've built a kernel. I've bisected it to 70b7e3526c53d9dd and reported it to upstream. |
Created attachment 2156010 [details] tcpdump from server side, vers3=n, reads/writes hang Description of problem: Disabling NFSv3 (vers3=n) on the server causes reads and writes on the client to hang in uninterruptible (D+) state. Re-enabling NFSv3 (vers3=y) and restarting nfs-server will un-hang the client and the read/write will then succeed. Version-Release number of selected component (if applicable): Kernel 7.2.1-300.fc45.x86_64 nfs-utils 2.9.2-1.rc1.fc45 How reproducible: Every time. Steps to Reproduce: 1. Install a minimal Fedora 45 into two VMs on the same network; disable firewalld on both to ensure no firewall configuration issues. 2. Start nfs-server on one of them, and export a filesystem. 3. On the other VM, mount the filesystem (default mount options). At this point, reads and writes work fine. 4. Now on the server, edit /etc/nfs.conf and add/change vers3=n to disable NFSv3. Restart nfs-server. 5. Attempt reads/writes on the client; they will hang in D+ state. 6. Change vers3 back to y on the server to re-enable NFSv3. 7. The client reads and writes will now resume. Usually instantly, but I've seen it take some seconds. At this point all reads/writes work as normal again. Actual results: Reads/writes hang in D+ when NFSv3 is disabled. Expected results: Reads/writes succeed when NFSv3 is disabled. Additional info: I've tested it with both btrfs and ext4 as the underlying filesystem, with no change in behavior.