From 720df354f9a43a3443e979f399f9db4ed1e03fd7 Mon Sep 17 00:00:00 2001 From: Ralph Boehme Date: Wed, 29 Apr 2015 20:48:08 +0200 Subject: [PATCH 1/2] vfp_gpfs: ensure END_PROFILE is always called MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bug: https://bugzilla.samba.org/show_bug.cgi?id=11244 Signed-off-by: Ralph Boehme Reviewed-by: Christof Schmitt Autobuild-User(master): Ralph Böhme Autobuild-Date(master): Thu Apr 30 19:34:41 CEST 2015 on sn-devel-104 (cherry picked from commit 5e65ae14ddb74c648f31b4dfbacd4af9c02ca058) --- source3/modules/vfs_gpfs.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/source3/modules/vfs_gpfs.c b/source3/modules/vfs_gpfs.c index e1e29fa..9d329cc 100644 --- a/source3/modules/vfs_gpfs.c +++ b/source3/modules/vfs_gpfs.c @@ -78,8 +78,6 @@ static int vfs_gpfs_kernel_flock(vfs_handle_struct *handle, files_struct *fsp, struct gpfs_config_data *config; int ret = 0; - START_PROFILE(syscall_kernel_flock); - SMB_VFS_HANDLE_GET_DATA(handle, config, struct gpfs_config_data, return -1); @@ -98,6 +96,8 @@ static int vfs_gpfs_kernel_flock(vfs_handle_struct *handle, files_struct *fsp, return 0; } + START_PROFILE(syscall_kernel_flock); + kernel_flock(fsp->fh->fd, share_mode, access_mask); if (!set_gpfs_sharemode(fsp, access_mask, fsp->share_access)) { @@ -131,14 +131,16 @@ static int vfs_gpfs_setlease(vfs_handle_struct *handle, files_struct *fsp, struct gpfs_config_data *config; int ret=0; - START_PROFILE(syscall_linux_setlease); - SMB_VFS_HANDLE_GET_DATA(handle, config, struct gpfs_config_data, return -1); - if (linux_set_lease_sighandler(fsp->fh->fd) == -1) - return -1; + START_PROFILE(syscall_linux_setlease); + + if (linux_set_lease_sighandler(fsp->fh->fd) == -1) { + ret = -1; + goto failure; + } if (config->leases) { /* @@ -152,6 +154,7 @@ static int vfs_gpfs_setlease(vfs_handle_struct *handle, files_struct *fsp, END_PROFILE(syscall_linux_setlease); +failure: return ret; } -- 2.1.0 From 4d64a13bdbb80430d77633a0cf0f1d1ae5540aa8 Mon Sep 17 00:00:00 2001 From: Ralph Boehme Date: Thu, 30 Apr 2015 12:29:57 +0200 Subject: [PATCH 2/2] vfs_gpfs: move failure label before END_PROFILE MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The label was added in 5e65ae14ddb74c648f31b4dfbacd4af9c02ca058 as part of fix for bug 11244, but was wrongly placed behind END_PROFILE. Bug: https://bugzilla.samba.org/show_bug.cgi?id=11244 Signed-off-by: Ralph Boehme Reviewed-by: Stefan Metzmacher Autobuild-User(master): Ralph Böhme Autobuild-Date(master): Thu May 7 19:22:00 CEST 2015 on sn-devel-104 (cherry picked from commit 3876e59826ad17466975ae9e9a65879c76737b2b) --- source3/modules/vfs_gpfs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source3/modules/vfs_gpfs.c b/source3/modules/vfs_gpfs.c index 9d329cc..4d64983 100644 --- a/source3/modules/vfs_gpfs.c +++ b/source3/modules/vfs_gpfs.c @@ -152,9 +152,9 @@ static int vfs_gpfs_setlease(vfs_handle_struct *handle, files_struct *fsp, unbecome_root(); } +failure: END_PROFILE(syscall_linux_setlease); -failure: return ret; } -- 2.1.0