Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
This avoids a considerable amount of gpfs_winattr calls
|
|
With newer GPFS releases, libgpfs contains a function
gpfs_lib_init(). It marks the pseudo-device the lib uses
as interface to the GPFS kernel module to not be to
destroyed after each call to GPFS.
This saves us some microseconds creating and removing the device
each time we do a call to libgpfs.
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Tue Apr 26 20:52:36 CEST 2011 on sn-devel-104
|
|
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Mon Apr 18 14:40:07 CEST 2011 on sn-devel-104
|
|
as pointed out by Metze in bug #8031
Autobuild-User: Björn Jacke <bj@sernet.de>
Autobuild-Date: Tue Apr 5 18:08:42 CEST 2011 on sn-devel-104
|
|
Guenther
|
|
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Wed Mar 2 19:24:27 CET 2011 on sn-devel-104
|
|
|
|
|
|
In getrealfilename, avoid calling the GPFS function
|
|
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Fri Feb 25 14:56:51 CET 2011 on sn-devel-104
|
|
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Wed Feb 23 14:12:39 CET 2011 on sn-devel-104
|
|
On my autocluster setup, it's not set. Maybe it should be? Otherwise
smbclient and some Windows client programs will get errors like:
# smbclient //localhost/data -Uadministrator%XXX
Domain=[VSOFS1] OS=[Unix] Server=[Samba 3.4.2-ctdb-10]
smb: \> put /etc/resolv.conf resolv.conf
NT_STATUS_ACCESS_DENIED closing remote file \resolv.conf
smb: \>
Caused by attempting to update the time on close.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Michael Adam <obnox@samba.org>
|
|
|
|
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Wed Oct 27 15:32:00 UTC 2010 on sn-devel-104
|
|
ported from the v3-4-ctdb branch to master
This used to be commit 1f138cc9f4a
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Wed Oct 13 13:34:25 UTC 2010 on sn-devel-104
|
|
convert gpfs:sharemodes and gpfs:leases parameters from a global setting
to a per share setting
|
|
Guenther
|
|
|
|
|
|
|
|
Not sure whether it works in this state :-)
|
|
<achirmul@in.ibm.com>
|
|
This adds a parameter "gpfs:refuse_dacl_protected" that defaults to false.
GPFS has no place to store the SEC_DESC_DACL_PROTECTED ACL bit. With this
parameter we give customers an option to either ignore this bit or refuse
setting an ACL with it.
|
|
|
|
|
|
as GPFS does not support the ACE4_FLAG_NO_PROPAGATE NFSv4 flag (which would be the mapping for the DESC_DACL_PROTECTED flag), the status of this flag is currently silently ignored by Samba. That means that if you deselect the "Allow inheritable permissions..." checkbox in Windows' ACL dialog and then apply the ACL, the flag will be back immediately.
To make sure that automatic migration with e.g. robocopy does not lead to ACLs silently (and unintentionally) changed, this patch adds an explicit check for this flag and if set, it will return NT_STATUS_NOT_SUPPORTED so errors are shown up on the Windows side and the Administrator is aware of the ACLs not being settable like intended
Signed-off-by: Christian Ambach <christian.ambach@de.ibm.com>
|
|
This patch introduces two new temporary helper functions
vfs_stat_smb_fname and vfs_lstat_smb_fname. They basically allowed me
to call the new smb_filename version of stat, while avoiding plumbing
it through callers that are still too inconvenient. As the conversion
moves along, I will be able to remove callers of this, with the goal
being to remove all callers.
There was also a bug in create_synthetic_smb_fname_split (also a
temporary utility function) that caused it to incorrectly handle
filenames with ':'s in them when in posix mode. This is now fixed.
|
|
|
|
1. Store win attributes in gpfs instead of posix bits.
2. use of path based winattr calls of gpfs.
Signed-off-by: Mathias Dietz <mdietz@de.ibm.com>
|
|
This patch introduces
struct stat_ex {
dev_t st_ex_dev;
ino_t st_ex_ino;
mode_t st_ex_mode;
nlink_t st_ex_nlink;
uid_t st_ex_uid;
gid_t st_ex_gid;
dev_t st_ex_rdev;
off_t st_ex_size;
struct timespec st_ex_atime;
struct timespec st_ex_mtime;
struct timespec st_ex_ctime;
struct timespec st_ex_btime; /* birthtime */
blksize_t st_ex_blksize;
blkcnt_t st_ex_blocks;
};
typedef struct stat_ex SMB_STRUCT_STAT;
It is really large because due to the friendly libc headers playing macro
tricks with fields like st_ino, so I renamed them to st_ex_xxx.
Why this change? To support birthtime, we already have quite a few #ifdef's at
places where it does not really belong. With a stat struct that we control, we
can consolidate the nanosecond timestamps and the birthtime deep in the VFS
stat calls.
At this moment it is triggered by a request to support the birthtime field for
GPFS. GPFS does not extend the system level struct stat, but instead has a
separate call that gets us the additional information beyond posix. Without
being able to do that within the VFS stat calls, that support would have to be
scattered around the main smbd code.
It will very likely break all the onefs modules, but I think the changes will
be reasonably easy to do.
|
|
Thanks Michael to provide some transparency :-)
|
|
We have to drop the gpfs level share modes, regardless of whether we put
the file into the pending close queue.
|
|
|
|
|
|
|
|
(cherry picked from commit b37684ffcec4ba0beada55d37bcaf4f5e79bcd58)
Signed-off-by: Michael Adam <obnox@samba.org>
|
|
Signed-off-by: Michael Adam <obnox@samba.org>
|
|
This reverts commit a0efc4cffbd84898c454d27eaf946d073dfdad0f.
This one should have been done with careful cherry-picks, sorry.
Volker
|
|
This reverts commit a4b52118d44906882677ed1234428d8025134036.
|
|
This reverts commit b37684ffcec4ba0beada55d37bcaf4f5e79bcd58.
|
|
This reverts commit c044b09572631cbdd686e5dbbdfbcc731145533a.
|
|
Crap, too many trees and no instant, infinitely fast rebuild
|
|
|
|
|
|
|
|
|
|
in fset_nt_acl().
Need to watch the build farm to make sure I haven't broken the AIX or Solaris ACL modules.
Jeremy.
|
|
this can only be done via fset_nt_acl() using an open
file/directory handle. I'd like to do the same with
get_nt_acl() but am concerned about efficiency
problems with "hide unreadable/hide unwritable" when
doing a directory listing (this would mean opening
every file in the dir on list).
Moving closer to rationalizing the ACL model and
maybe moving the POSIX calls into a posix_acl VFS
module rather than having them as first class citizens
of the VFS.
Jeremy.
(This used to be commit f487f742cb903a06fbf2be006ddc9ce9063339ed)
|