Bug 7454
| Summary: | elm/NFS-mounted spool locking problem | ||
|---|---|---|---|
| Product: | [Retired] Red Hat Linux | Reporter: | bonnevil |
| Component: | elm | Assignee: | Trond Eivind Glomsrxd <teg> |
| Status: | CLOSED RAWHIDE | QA Contact: | |
| Severity: | medium | Docs Contact: | |
| Priority: | low | ||
| Version: | 6.1 | ||
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2000-02-29 14:34:20 UTC | Type: | --- |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
Communicated with Bill Pemberton (elm maintainer, flash) and did further investigation. It appears that NFS locking had at some point been turned off on my clients; with statd/lockd running on the clients properly elm works. That fixes my main problem. He also told me that elm-2.5.3 (unreleased) has included a fix similar to the one I included above for the Configure script in 2.5.2. I did not look at the SRPM to see if the change is also there. Locking seems to have changed from RH 5.2 (dot-locks only) to fcntl only -- if there's no reason not to, it might be good to configure both dot-locking and fcntl support. The goal since Red Hat 5.2 has been to use *only* fcntl locking in MTA/MUA. elm-2.5.3 is in Raw Hide and will be in Red Hat 6.2, and contains a patch identical to yours above. |
I'm having a locking problem when attempting to use elm-2.5.1-1.i386.rpm (Red Hat 6.1) to read a spool file mounted via NFS. It looks like elm is trying to use flock to make the lock, which is probably wrong: Cannot flock folder "/var/spool/mail/jrandom"! [No locks available] The kernel syslogs: Nov 30 14:37:48 grun kernel: lockd: failed to monitor xxx.xx.x.xx (IP address of NFS server) -^^^^^^^^^^^ I've downloaded elm-2.5.2 source from ftp.virginia.edu and attempted to build it, but I noticed that the Configure script doesn't seem to be able to see fcntl locking support under RH 6.1. Here's that bit: Configure script looks for F_SETLK definition in /usr/include/sys/fcntl.h (file present on RH 6.1) /usr/include/sys/fcntlcom.h /usr/include/sys/file.h (file present on RH 6.1) /usr/include/fcntl.h (file present on RH 6.1) /usr/include/fcntlbits.h Under Red Hat 5.2, F_SETLK was defined in /usr/include/fcntlbits.h, but it's now defined in /usr/include/bits/fcntl.h instead, and the old file has been removed. I patched Configure so that it found F_SETLK, but I still get the same error once the program is compiled. I told Configure to compile with support for fcntl and dot-locking. Was not prompted for flock at all; saw "flock() found." then "flock locking not available" in Configure. I can reproduce the problem in Magic mode (-M) when reading any mail folder with (elm -M -f somemailfile) on a NFS mounted directory. If I move the same file to a local directory and try the same command, it works correctly. I'm open to suggestions to make this work -- I've got a lot of people using elm-2.4 to read mail via NFS with Red Hat 5.2 successfully, and I'd like to upgrade them to RH 6.1. Thanks. Steve Bonneville IMA System Administrator University of Minnesota --- Configure Tue Nov 30 13:34:07 1999 +++ Configure.orig Tue Nov 30 11:37:15 1999 @@ -2619,9 +2619,6 @@ elif $contains F_SETLK /usr/include/fcntlbits.h >/dev/null 2>&1; then echo 'F_SETLK found, fcntl locking available' has_fcntl="$define" -elif $contains F_SETLK /usr/include/bits/fcntl.h >/dev/null 2>&1; then - echo 'F_SETLK found, fcntl locking available' - has_fcntl="$define" else echo 'F_SETLK not found, fcntl locking not available' has_fcntl="$undef"