summaryrefslogtreecommitdiffstats
path: root/source3
Commit message (Collapse)AuthorAgeFilesLines
...
* s3-aio: Panic if we try to close a fsp with outstanding aio requestsVolker Lendecke2012-07-193-18/+15
| | | | | | | | | | | The core smbd must have taken care of this. If we don't do this properly, we have a race of the close(2) against a pwrite(2). We might end up writing to the wrong file. Signed-off-by: Jeremy Allison <jra@samba.org> Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Thu Jul 19 03:40:17 CEST 2012 on sn-devel-104
* s3-smb2: Postpone close_file until all aio is handledVolker Lendecke2012-07-181-0/+52
| | | | | | Thanks to Jeremy for this simple idea Signed-off-by: Jeremy Allison <jra@samba.org>
* s3-smb1: Postpone close_file until all aio is handledVolker Lendecke2012-07-183-1/+95
| | | | | | Thanks to Jeremy for this simple idea Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Add tevent_wait_send/recvVolker Lendecke2012-07-184-0/+122
| | | | | | | To me it seems that we might have this functionality already somewere... I just can't find it. Metze, do you have an idea? Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Slightly simplify reply_close()Volker Lendecke2012-07-181-25/+13
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Compile with pthreadpool by defaultVolker Lendecke2012-07-182-6/+4
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* config: The AIO engine is indepent of HAVE_AIO nowVolker Lendecke2012-07-183-30/+31
| | | | | | | | | Compile the basic aio engine always, it works via libasys/pthreadpool_sync in a sync fashion even if no pthreads are around. Everything else (linux aio, posix aio, aio fork) is now compiled as modules based on specific system capabilities Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Add aio_fsync to the aio_linux moduleVolker Lendecke2012-07-181-0/+44
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Add aio_fsync to the aio_fork moduleVolker Lendecke2012-07-181-1/+112
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3-aio-fork: make "read_cmd" an enumVolker Lendecke2012-07-181-7/+35
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Add aio_fsync to the aio_posix moduleVolker Lendecke2012-07-181-0/+57
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3-aio: Make the strict sync after write asyncVolker Lendecke2012-07-181-18/+103
| | | | | | | This restores cb405947caa9f4bdb962483860a9093a364ecbf2, which was lost during the refactoring of aio.c and vfs_aio_pthread.c. Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Add a _nosync version of smb2_write_completeVolker Lendecke2012-07-182-7/+25
| | | | | | This will be used in aio.c to avoid a second fsync after write Signed-off-by: Jeremy Allison <jra@samba.org>
* s3-vfs: async fsyncVolker Lendecke2012-07-186-0/+263
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Fix the buildVolker Lendecke2012-07-181-0/+1
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3-libasys: Add asys_fsync() implementationVolker Lendecke2012-07-181-0/+43
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Make us survive base-delaywrite with aio enabledVolker Lendecke2012-07-181-0/+4
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Move the aio_pthread read/write functionality to vfs_defaultVolker Lendecke2012-07-185-231/+146
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3-aio: Remove unused VFS functions and moreVolker Lendecke2012-07-1811-690/+0
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3-vfs: Add pwrite_send/recv to vfs modulesVolker Lendecke2012-07-182-0/+142
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3-vfs: Add pread_send/recv to vfs modulesVolker Lendecke2012-07-182-0/+145
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Convert aio_linux to pread/pwrite_send/recvVolker Lendecke2012-07-181-543/+100
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Convert aio_fork to pread/pwrite_send/recvVolker Lendecke2012-07-181-323/+174
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3-aio_fork: Convert get_idle_child from NTSTATUS to errnoVolker Lendecke2012-07-181-14/+17
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3-aio_fork: Convert create_aio_child from NTSTATUS to errnoVolker Lendecke2012-07-181-16/+20
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Add vfs_aio_posixVolker Lendecke2012-07-188-6/+264
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Make smbd/aio.c not depend on aio.h anymoreVolker Lendecke2012-07-185-76/+31
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3:vfs_aio_pthread: Convert to libasysVolker Lendecke2012-07-183-525/+124
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Remove the unused completion handling from aio.cVolker Lendecke2012-07-183-344/+1
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Properly handle shutdown with the _send/_recv based aioVolker Lendecke2012-07-186-119/+107
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Use SMB_VFS_PWRITE_SEND in schedule_smb2_aio_writeVolker Lendecke2012-07-181-5/+55
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Use SMB_VFS_PREAD_SEND in schedule_smb2_aio_readVolker Lendecke2012-07-181-5/+61
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Use SMB_VFS_PWRITE_SEND in schedule_aio_write_and_XVolker Lendecke2012-07-181-3/+113
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3: Use SMB_VFS_PREAD_SEND in schedule_aio_read_and_XVolker Lendecke2012-07-181-3/+76
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3-vfs: async preadVolker Lendecke2012-07-184-0/+131
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3-vfs: async pwriteVolker Lendecke2012-07-184-0/+135
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* libasysVolker Lendecke2012-07-185-0/+522
| | | | Signed-off-by: Jeremy Allison <jra@samba.org>
* s3:Really ignore unknown special ids in NFSv4 ACLs.Alexander Werth2012-07-181-0/+1
| | | | | | | Signed-off-by: Christian Ambach <ambi@samba.org> Autobuild-User(master): Christian Ambach <ambi@samba.org> Autobuild-Date(master): Wed Jul 18 17:45:05 CEST 2012 on sn-devel-104
* s3:smbstatus add --fast optionChristian Ambach2012-07-181-4/+11
| | | | | | this option skips all checks if the process for the record is still there using it gives a huge performance benefit on busy systems and clusters while it might display stale data if a smbd crashed
* s3:smbstatus don't check if process exists twiceChristian Ambach2012-07-181-4/+0
| | | | is_valid_share_mode_entry() already calls serverid_exists which calls process_exists()
* s3:smbstatus rename a function to make its purpose more clearChristian Ambach2012-07-181-4/+4
| | | | traverse_fn1 does not really intuitively make clear that it is used to traverse connections
* s3:smbstatus fix a compiler warningChristian Ambach2012-07-181-1/+1
| | | | about comparison of signed with unsigned
* source3/netapi: fix only caller which doesn't set up a talloc_stackframe()Rusty Russell2012-07-181-0/+4
| | | | | | | | libnetapi_free() needs a stackframe too; looked like Andrew and Günther missed this in a37de9a95974c138d264d9cb0c7829bb426bb2d6. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
* source3/passdb/py_passdb.c: wrap all calls in talloc_stackframe()Rusty Russell2012-07-181-519/+489
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | dbwrap needs it. Some calls were already wrapped, but they checked the talloc_stackframe() return unnecessarily: it can never be NULL. This is the coccinelle patch I used: // Add in a stackframe to every function: be sure to free it on (every) return @rule0@ identifier func; @@ func(...) { +TALLOC_CTX *frame = talloc_stackframe(); <... +talloc_free(frame); return ...; ...> } // Get rid of tframe allocation/frees, replace usage with frame. @rule1@ identifier func; identifier oldframe; @@ func(...) { ... -TALLOC_CTX *oldframe; ... -if ((oldframe = talloc_stackframe()) == NULL) { - ... -} <... -talloc_free(oldframe); ...> } // Get rid of tframe (variant 2) @rule2@ identifier func; identifier oldframe; @@ func(...) { ... -TALLOC_CTX *oldframe; ... -oldframe = talloc_stackframe(); -if (oldframe == NULL) { - ... -} <... -talloc_free(oldframe); ...> } // Change tframe to frame @rule3@ identifier func; @@ func(...) { <... -tframe +frame ...> } Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
* source3/passdb/py_passdb.c: don't steal from talloc_stackframe().Rusty Russell2012-07-181-15/+2
| | | | | | | | | | If you want a stack-style allocation, use talloc_stackframe(). If you don't, don't use it. In particular, talloc_stackframe() here is actually inside a pool, and stealing from pools is a bad idea. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
* source3/torture/pdbtest: allocate talloc_stackframe()Rusty Russell2012-07-181-2/+2
| | | | | | | Avoid talloc_tos() without a stackframe. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
* loadparm: make the source3/ lp_ functions take an explicit TALLOC_CTX *.Rusty Russell2012-07-1885-621/+660
| | | | | | | | | | They use talloc_tos() internally: hoist that up to the callers, some of whom don't want to us talloc_tos(). A simple patch, but hits a lot of files. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
* source3/utils/net_conf.c: fix stackframe leakRusty Russell2012-07-181-0/+2
| | | | | | | net_conf_wrap_function() doesn't free its stackframe. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
* source3/winbindd/winbindd_pam.c: fix stackframe leakRusty Russell2012-07-181-0/+1
| | | | | | | check_info3_in_group() doesn't always free its stackframe. Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
* source3/lib/smbconf/testsuite.c: fix stackframe leakRusty Russell2012-07-181-0/+1
| | | | | Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>