zoulasc [Thu, 3 Mar 2016 18:24:10 +0000 (13:24 -0500)]
The nfs_quick_reply() function needs to know the current RPC transport
outside of the NFS LOOKUP method call. It needs this to reply to the
NFS LOOKUP call that initiated the mount.
Now there are functions that avoid transport corruption if another
request comes in during the backgroud mount make nfs_quick_reply()
use them.
From: Ian Kent
zoulasc [Thu, 3 Mar 2016 18:21:13 +0000 (13:21 -0500)]
The nfs_quick_reply() functionality relies on taking a copy of the
current transport for later use.
The problem with this is the context of the RPC message is kept in
the transport and if any RPC message arrives before nfs_quick_reply()
is called that context will be corrupted.
So add a function get_nfs_xprt() to replace the current transport
with a new one returning the passed in transort so nfs_quick_reply()
can use it later.
A function put_nfs_xprt() is also added (although not really needed
since it just destroys the now unused transport) for completeness.
From: Ian Kent
zoulasc [Thu, 3 Mar 2016 18:18:21 +0000 (13:18 -0500)]
Recent Linux NFS uses a simulated attibute cache change detection
method based on ctime. Consequenty the amd use of mtime for this
doesn't work properly for some kernel versions.
The problem seen with some kernel versions is a failure to recognize
umounts.
Updating the parent ctime in step with mtime during umount appears
to fix the problem.
From: Ian Kent
zoulasc [Fri, 22 Jan 2016 15:21:46 +0000 (10:21 -0500)]
today's fixes
zoulasc [Fri, 22 Jan 2016 15:20:21 +0000 (10:20 -0500)]
The function unlink3_or_rmdir3() is called by both NFSv3 remove and
rmdir methods. Both these methods require post op wcc attributes
to be returned but unlink3_or_rmdir3() was returning only the pre op
wcc attributes. (Ian Kent)
zoulasc [Fri, 22 Jan 2016 15:18:52 +0000 (10:18 -0500)]
The NFSv3 readdir method is expected to return the attributes of the
directory being read for both the success and failure cases. (Ian Kent)
zoulasc [Fri, 22 Jan 2016 15:16:31 +0000 (10:16 -0500)]
The NFSv3 lookup method, which returns attributes for the directory
containing the object to be looked up, used incorrect mount point
attributes. This was causing unusual file system object visibility
problems. (Ian Kent)
zoulasc [Fri, 22 Jan 2016 15:12:52 +0000 (10:12 -0500)]
When the NFSv3 access method is called and there is no correspoding
mount point for the path we requested, we need to return ESTALE so
that the kernel will then perform an NFSv3 lookup and the mount point
will be re-mounted.
If there is no map entry to mount, the NFSv3 lookup method will
return the failure.
(Ian Kent)
zoulasc [Fri, 22 Jan 2016 15:12:00 +0000 (10:12 -0500)]
Add log trace print to NFSv3 readdirplus for debugging purposes (Ian Kent)
zoulasc [Thu, 30 Apr 2015 18:24:39 +0000 (14:24 -0400)]
Fix nfs args setting code (raven at the maw dot net)
Christos Zoulas [Thu, 22 Jan 2015 04:28:46 +0000 (23:28 -0500)]
don't use logical && when & is meant
Christos Zoulas [Thu, 22 Jan 2015 04:28:33 +0000 (23:28 -0500)]
make sure variables are initialized
Christos Zoulas [Sun, 18 Jan 2015 23:03:37 +0000 (18:03 -0500)]
32 bit fixes
Christos Zoulas [Sat, 17 Jan 2015 17:45:22 +0000 (12:45 -0500)]
remove set but not used variable
Christos Zoulas [Sat, 17 Jan 2015 17:43:32 +0000 (12:43 -0500)]
remove unused function
Christos Zoulas [Sat, 17 Jan 2015 17:42:55 +0000 (12:42 -0500)]
remove set but not used variable
Christos Zoulas [Sat, 17 Jan 2015 17:29:03 +0000 (12:29 -0500)]
remove set but not used variable
Christos Zoulas [Sat, 17 Jan 2015 17:27:56 +0000 (12:27 -0500)]
uid_t might be a different size than unsigned int, so XXX: truncate.
Christos Zoulas [Sat, 17 Jan 2015 17:21:24 +0000 (12:21 -0500)]
print_nfs_common_args() is only needed with DEBUG
Christos Zoulas [Sat, 17 Jan 2015 14:24:30 +0000 (09:24 -0500)]
Move libtool macro functions from m4/macros to m4 and delete
the repository copies. Makes am-utils work with libtool-2.4.4
and fixes the serial number warnings (raven at themaw.net)
Erez Zadok [Thu, 30 Oct 2014 15:03:30 +0000 (11:03 -0400)]
bootstrap and release 6.2
Christos Zoulas [Tue, 28 Oct 2014 18:24:41 +0000 (14:24 -0400)]
remove ylwrap patching
Christos Zoulas [Tue, 28 Oct 2014 18:24:31 +0000 (14:24 -0400)]
call it 6.2
Christos Zoulas [Tue, 28 Oct 2014 18:23:52 +0000 (14:23 -0400)]
call it 6.2
Christos Zoulas [Tue, 28 Oct 2014 18:23:19 +0000 (14:23 -0400)]
welcome to 6.2
Christos Zoulas [Tue, 28 Oct 2014 18:23:09 +0000 (14:23 -0400)]
extra files
Christos Zoulas [Tue, 28 Oct 2014 18:22:42 +0000 (14:22 -0400)]
Use our own ylwrap.
Christos Zoulas [Tue, 28 Oct 2014 18:22:05 +0000 (14:22 -0400)]
local copy instead of patching
zoulasc [Fri, 5 Sep 2014 09:56:16 +0000 (05:56 -0400)]
factor out the size check for both readdir methods (raven at themaw dot net)
zoulasc [Wed, 3 Sep 2014 13:04:04 +0000 (09:04 -0400)]
Configure test for 64 bit xdr quad function (Ian Kent)
zoulasc [Mon, 1 Sep 2014 08:19:43 +0000 (04:19 -0400)]
From Ian Kent (raven at themaw) dot net:
In amfs_mount() the function get_root_nfs_fh() is assumed to return an
NFSv2 handle but, if nfs_dispatcher != 2 it will write an NFSv3 handle
to the NFSv2 structure, possibly overflowing the variable.
Christos Zoulas [Sun, 20 Jul 2014 19:27:24 +0000 (15:27 -0400)]
Today's change
Christos Zoulas [Sun, 20 Jul 2014 19:26:31 +0000 (15:26 -0400)]
more debugging
Christos Zoulas [Sun, 20 Jul 2014 19:26:13 +0000 (15:26 -0400)]
more debugging, fix access
Christos Zoulas [Sun, 20 Jul 2014 14:55:33 +0000 (10:55 -0400)]
fix debugging string truncation
Christos Zoulas [Sun, 20 Jul 2014 09:59:41 +0000 (05:59 -0400)]
mention today's real changes
Christos Zoulas [Sun, 20 Jul 2014 09:55:12 +0000 (05:55 -0400)]
Changes from raven at themaw.net to support NFSv3 for automounted
toplevel filesystems presented to the list in May. A few bug fixes
and integration changes by me. The code now works well enough to
mount the filesystem with NFSv3 and automount children but readdir
does not work yet (so no listing of automounted filesystems). The
new code is not enabled by default. To enable use auto_nfs_version = 3
in your configuration file.
Christos Zoulas [Sun, 20 Jul 2014 09:52:50 +0000 (05:52 -0400)]
mention changes
Christos Zoulas [Sun, 20 Jul 2014 09:46:28 +0000 (05:46 -0400)]
force the autoconf version instead of just reporting it.
Christos Zoulas [Sun, 20 Jul 2014 09:44:02 +0000 (05:44 -0400)]
newer version
Christos Zoulas [Sun, 20 Jul 2014 09:41:11 +0000 (05:41 -0400)]
newer version
Christos Zoulas [Sun, 20 Jul 2014 09:40:40 +0000 (05:40 -0400)]
newer version
Christos Zoulas [Sun, 20 Jul 2014 09:40:08 +0000 (05:40 -0400)]
newer version
Christos Zoulas [Sun, 20 Jul 2014 09:37:29 +0000 (05:37 -0400)]
newer version
Erez Zadok [Mon, 12 May 2014 15:54:20 +0000 (11:54 -0400)]
allow user to pass RMTAB file name from environment
zoulasc [Mon, 12 May 2014 15:15:00 +0000 (11:15 -0400)]
move initialization of RMTAB before it is used (Ian Kent)
Erez Zadok [Sat, 10 May 2014 02:45:40 +0000 (22:45 -0400)]
update additional autoconf/automake files
Erez Zadok [Sat, 10 May 2014 02:45:13 +0000 (22:45 -0400)]
update libtool files
Erez Zadok [Sat, 10 May 2014 02:43:03 +0000 (22:43 -0400)]
update bootstrap and ylwrap
Erez Zadok [Sat, 10 May 2014 02:41:31 +0000 (22:41 -0400)]
comment out duplicate var definition
zoulasc [Wed, 26 Mar 2014 20:21:40 +0000 (16:21 -0400)]
today's changes
zoulasc [Wed, 26 Mar 2014 20:18:55 +0000 (16:18 -0400)]
Use only the standard cflags for hardened builds (Ian Kent)
zoulasc [Wed, 26 Mar 2014 20:18:12 +0000 (16:18 -0400)]
add ext4 (Ian Kent)
zoulasc [Wed, 26 Mar 2014 20:17:48 +0000 (16:17 -0400)]
Fix version dependency (Ian Kent); there is no more configure.in
zoulasc [Wed, 26 Mar 2014 20:06:11 +0000 (16:06 -0400)]
With certain hosts.{allow,deny} rules, expected host access control
restrictions may not be applied correctly. The problem does not
affect configurations that has deny:ALL and only allow access for
specific hosts / networks. (Ian Kent)
zoulasc [Wed, 26 Mar 2014 20:05:13 +0000 (16:05 -0400)]
fix return value from main (Ian Kent)
zoulasc [Wed, 26 Mar 2014 20:03:39 +0000 (16:03 -0400)]
Add ext2, ext3, ext4 specific options (Ian Kent)
XXX: Merge
zoulasc [Wed, 26 Mar 2014 20:01:29 +0000 (16:01 -0400)]
add missing uplinks (Ian Kent)
zoulasc [Wed, 26 Mar 2014 20:00:07 +0000 (16:00 -0400)]
fix SP arg. (Ian Kent)
zoulasc [Wed, 26 Mar 2014 19:58:28 +0000 (15:58 -0400)]
partially from Ian Kent: use mktemp for better security.
zoulasc [Fri, 21 Mar 2014 00:59:48 +0000 (20:59 -0400)]
today's changes from Ian Kent
zoulasc [Fri, 21 Mar 2014 00:59:25 +0000 (20:59 -0400)]
Default to autofs version 4
zoulasc [Fri, 21 Mar 2014 00:57:07 +0000 (20:57 -0400)]
Ian Kent: Handle failed umount on exit
zoulasc [Fri, 21 Mar 2014 00:54:09 +0000 (20:54 -0400)]
From: Ian Kent <ikent@redhat.com>
For some reason, when umounting autofs mounts after closing the ioctl
file handle, the kernel can return EBUSY for some small amount of time.
This can cause umounts to incorrectly fail when in fact they should
succeed.
Retrying for about a second and a half seems to work quite well.
zoulasc [Fri, 21 Mar 2014 00:52:54 +0000 (20:52 -0400)]
From: Ian Kent <raven@themaw.net>
It's possible (and likely) a SIGCHLD signal can arrive while in syslog(2)
and also attempt log log a message leading to deadlock.
zoulasc [Fri, 21 Mar 2014 00:51:28 +0000 (20:51 -0400)]
From: Ian Kent <ikent@redhat.com>
Fix a error message formating mistake in get_nfs_version().
While here tidy up and use __func__
zoulasc [Fri, 21 Mar 2014 00:29:18 +0000 (20:29 -0400)]
From: Ian Kent <ikent@redhat.com>
An ENOENT return from umount(2) means the kernel path walk couldn't
resolve the path of the mount to a dentry. In that case there can't
be an autofs waitq entry waiting for notification, since there's no
dentry, so don't even try to notify the kernel.
zoulasc [Fri, 21 Mar 2014 00:26:49 +0000 (20:26 -0400)]
From: Ian Kent <raven@themaw.net>
Avoid NULL dereference on umount
zoulasc [Fri, 21 Mar 2014 00:25:01 +0000 (20:25 -0400)]
From: Ian Kent <ikent@redhat.com>
When using an autofs multi-level mount map amd can fail to umount
NFS leaf mounts causing shutdown to fail. It also can cause amd to
SEGV because, even though umounts fail, the autofs mount control
structure is freed and a later umount attempt doesn't check if this
struct is valid before using it.
The cause of the umount failure appears to be the background umount
of NFS mounts at the leaf of the tree not finishing before the autofs
file system mounts above are attempted.
It isn't worth adding a patch to check if the autofs mount control
structure is valid because if it isn't, in this case, amd doesn't
crash but still becomes unresponsive.
zoulasc [Sun, 9 Mar 2014 22:17:36 +0000 (18:17 -0400)]
Remove expn program and man page. It is not used by anything. Last
comment in ChangeLog said it was used by hlfsd, but that should not
be the case; nothing should depend on expanded mail aliases. This is
a function of the mail sub-system.
zoulasc [Sun, 9 Mar 2014 20:27:39 +0000 (16:27 -0400)]
Remove the BSD advertising clause. As mentioned in the ChangeLog only
one left is in scripts/expn.* and I am not sure why this is distributed
as part of am-utils.
Erez Zadok [Tue, 21 Jan 2014 01:42:48 +0000 (20:42 -0500)]
happy new year
Christos Zoulas [Thu, 5 Dec 2013 17:24:48 +0000 (12:24 -0500)]
Change the way we handle multiple lex scanners and yacc parsers
in a single program. Our old patch to ylwrap does not work anymore
because the bison parsers need shared symbols that start with yy
and we can't easily select which ones work. So now we use -P and
-p to let lex and yacc do the work for us. This requires a patch
to ylwrap, but it is smaller.
Yoram Bar-Haim [Sun, 22 Sep 2013 13:06:33 +0000 (16:06 +0300)]
fix flaw when kernel version is 3.x
Erez Zadok [Mon, 3 Jun 2013 01:44:42 +0000 (21:44 -0400)]
update copyright notice for 2013
Christos Zoulas [Wed, 15 May 2013 00:13:53 +0000 (20:13 -0400)]
Regen, and recent changes
Christos Zoulas [Wed, 15 May 2013 00:12:06 +0000 (20:12 -0400)]
adjust to new autoconf requirements
Christos Zoulas [Wed, 15 May 2013 00:09:00 +0000 (20:09 -0400)]
INCLUDES -> AM_CPPFLAGS in new autoconf
Christos Zoulas [Wed, 15 May 2013 00:04:51 +0000 (20:04 -0400)]
Fix macro names
Christos Zoulas [Fri, 23 Nov 2012 17:13:55 +0000 (12:13 -0500)]
Mention new changes
Christos Zoulas [Fri, 23 Nov 2012 17:12:34 +0000 (12:12 -0500)]
Regen from newer autoconf
Christos Zoulas [Fri, 23 Nov 2012 17:12:21 +0000 (12:12 -0500)]
recognize noacl
Christos Zoulas [Fri, 23 Nov 2012 17:10:47 +0000 (12:10 -0500)]
Instead of calling each autoconf program individually to regen files,
blow everything away and start clean using autoreconf -f -i. We apply
our patch to ylwrap once we are done. This is because different versions
of libtool don't interoperate well.
Christos Zoulas [Fri, 23 Nov 2012 17:10:07 +0000 (12:10 -0500)]
recognize a few more nfs flags; specifically noacl amongst others.
Christos Zoulas [Fri, 23 Nov 2012 17:09:41 +0000 (12:09 -0500)]
add a bit of debugging for the mount port
Christos Zoulas [Fri, 23 Nov 2012 17:09:04 +0000 (12:09 -0500)]
recognize the mountport= that specifies an explicit port to contact for mountd,
instead of resolving it via RPC.
Christos Zoulas [Thu, 4 Oct 2012 03:06:09 +0000 (23:06 -0400)]
mention Makefile change
Christos Zoulas [Thu, 4 Oct 2012 03:05:26 +0000 (23:05 -0400)]
add ops_nfs4.c
Christos Zoulas [Fri, 14 Sep 2012 18:17:58 +0000 (14:17 -0400)]
- add handling for noatime,nodiratime,mandlock for linux
- add locking keyword support for lustre
Christos Zoulas [Wed, 25 Jul 2012 20:09:49 +0000 (16:09 -0400)]
Merge branch 'master' of ssh://git.fsl.cs.sunysb.edu/scm/git/am-utils-6.2
Conflicts:
ChangeLog
Christos Zoulas [Wed, 25 Jul 2012 20:03:11 +0000 (16:03 -0400)]
today's change
Christos Zoulas [Wed, 25 Jul 2012 19:38:59 +0000 (15:38 -0400)]
fixed bugs parsing lustre mount strings.
Christos Zoulas [Thu, 28 Jun 2012 00:20:01 +0000 (20:20 -0400)]
mention sun map change
Christos Zoulas [Thu, 28 Jun 2012 00:18:57 +0000 (20:18 -0400)]
disable sun maps to avoid segmentation fault.
Erez Zadok [Mon, 25 Jun 2012 20:39:58 +0000 (16:39 -0400)]
update release announce text
Christos Zoulas [Tue, 19 Jun 2012 13:13:17 +0000 (09:13 -0400)]
add information pertinent to 6.2-rc1
Erez Zadok [Mon, 18 Jun 2012 17:23:09 +0000 (13:23 -0400)]
release announcement template
Christos Zoulas [Sun, 17 Jun 2012 14:41:21 +0000 (10:41 -0400)]
add more info
Christos Zoulas [Sun, 17 Jun 2012 14:40:53 +0000 (10:40 -0400)]
Update with reality.
Christos Zoulas [Sun, 17 Jun 2012 14:40:30 +0000 (10:40 -0400)]
Update with recent versions of the auto tools