Age | Commit message (Collapse) | Author | Files | Lines |
|
Signed-off-by: Jeremy Allison <jra@samba.org>
|
|
Signed-off-by: Jeremy Allison <jra@samba.org>
|
|
Signed-off-by: Jeremy Allison <jra@samba.org>
|
|
Signed-off-by: Jeremy Allison <jra@samba.org>
|
|
Signed-off-by: Jeremy Allison <jra@samba.org>
|
|
Signed-off-by: Jeremy Allison <jra@samba.org>
|
|
Signed-off-by: Jeremy Allison <jra@samba.org>
|
|
Should help by ensuring complete writes done in sub-thread, not in
the main thread.
|
|
Signed-off-by: Jeremy Allison <jra@samba.org>
Autobuild-User(master): Jeremy Allison <jra@samba.org>
Autobuild-Date(master): Thu Jul 12 21:28:19 CEST 2012 on sn-devel-104
|
|
eff3609 moved the async signal handler initialization to later in the process
to enable aio_fork and aio_pthread on platforms without realtime signals. This
commit broke the use of the native aio interface. aio_pending_size is
initialized to 0, so aio.c will not allow async i/0 at all if modules do not
set that variable correctly. Initialize to 100 right from the start.
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Autobuild-User(master): Stefan Metzmacher <metze@samba.org>
Autobuild-Date(master): Tue Jun 26 14:08:22 CEST 2012 on sn-devel-104
|
|
Signed-off-by: Stefan Metzmacher <metze@samba.org>
|
|
With this change, the define to check for AIO is HAVE_AIO, consistant
with other subsystems.
It is now also on by default in the autoconf build, as it has been for waf.
Andrew Bartlett
|
|
a value.
So pass_cancel is no longer needed.
|
|
corruption
as outstanding IO's complete. Also we never have any aio's on a call to close_normal_file()
with close_type ERROR_CLOSE.
|
|
aio_extra struct.
This way we can't end up with a mismatch between outstanding events and the counter.
We may still have problems with canceling and not correctly freeing the aio
struct, but at least the counter won't get out of sync anymore.
|
|
On platforms that don't have an RT signal space, signal initialization
fails. aio_fork and aio_pthread don't need the signal, so this would
block them from running as well.
|
|
Now that we always require a 64 bit off_t, we no longer need SMB_OFF_T.
Andrew Bartlett
Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Fri Apr 6 01:47:43 CEST 2012 on sn-devel-104
|
|
call out of smbd_aio_complete_aio_ex() and into the caller.
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Thu Jan 12 03:10:52 CET 2012 on sn-devel-104
|
|
|
|
metze
Autobuild-User: Stefan Metzmacher <metze@samba.org>
Autobuild-Date: Tue Nov 15 18:47:55 CET 2011 on sn-devel-104
|
|
metze
|
|
metze
|
|
Found when reading with aio_fork beyond the end of file.
Metze, Jeremy, please check!
Without this we get
[2011/08/02 21:02:54.082661, 0] lib/util.c:778(smb_panic_s3)
PANIC (pid 2302): smbd/smb2_read.c:593: Type mismatch: name[NULL] expected[struct smbd_smb2_read_state]
[2011/08/02 21:02:54.094316, 0] lib/util.c:882(log_stack_trace)
BACKTRACE: 23 stack frames:
#0 bin/smbd(log_stack_trace+0x2d) [0xb72873d8]
#1 bin/smbd(smb_panic_s3+0x7c) [0xb7287529]
#2 bin/smbd(smb_panic+0x2f) [0xb7277e1f]
#3 /root/git/s3-work/source3/bin/libtalloc.so.2 [0xb6c6bc48]
#4 /root/git/s3-work/source3/bin/libtalloc.so.2 [0xb6c6ec79]
#5 /root/git/s3-work/source3/bin/libtalloc.so.2(_talloc_get_type_abort+0x34) [0xb6c6ecb3]
#6 bin/smbd [0xb6fbc405]
#7 bin/smbd(_tevent_req_notify_callback+0x4a) [0xb729a85a]
#8 bin/smbd [0xb729a888]
#9 bin/smbd(_tevent_req_done+0x19) [0xb729aa73]
#10 bin/smbd [0xb6fae517]
#11 bin/smbd [0xb6fad258]
#12 bin/smbd(smbd_aio_complete_aio_ex+0xf5) [0xb6fad6e8]
#13 /root/git/inst/modules/vfs/aio_fork.so [0xb66d4992]
#14 bin/smbd(run_events_poll+0x400) [0xb7297df2]
#15 bin/smbd(smbd_process+0xd75) [0xb6f9d3a7]
#16 bin/smbd [0xb756f07b]
#17 bin/smbd(run_events_poll+0x400) [0xb7297df2]
#18 bin/smbd [0xb7298254]
#19 bin/smbd(_tevent_loop_once+0x9e) [0xb72986ac]
#20 bin/smbd(main+0x185c) [0xb7570e59]
#21 /lib/i686/cmov/libc.so.6(__libc_start_main+0xe5) [0xb6b08455]
#22 bin/smbd [0xb6f14e01]
Autobuild-User: Volker Lendecke <vlendec@samba.org>
Autobuild-Date: Tue Aug 2 22:33:15 CEST 2011 on sn-devel-104
|
|
Using the standard macro makes it easier to move code into common, as
TALLOC_ZERO_P isn't standard talloc.
|
|
This has been a wrapper around server_event_context() for some time
now, and removing this from dummmysmbd.c assists with library
dependencies.
Andrew Bartlett
|
|
Autobuild-User: Jeremy Allison <jra@samba.org>
Autobuild-Date: Thu May 5 21:38:23 CEST 2011 on sn-devel-104
|
|
|
|
Guenther
Autobuild-User: Günther Deschner <gd@samba.org>
Autobuild-Date: Fri Apr 29 14:00:30 CEST 2011 on sn-devel-104
|
|
Guenther
|
|
Change smb2_read code to allocate return DATA_BLOB just before the read.
Preparing for SMB2 sendfile change which will not need to allocate
return buffer.
Jeremy
|
|
|
|
|
|
|
|
|
|
|
|
Jeremy.
|
|
Refuse async I/O if we can't set up the signal handler
|
|
|
|
Jeremy.
|
|
|
|
|
|
|
|
|
|
the code and eliminates find_aio_ex().
Jeremy.
|
|
Will make using AIO in SMB2 easier.
Jeremy.
|
|
sigev_value.sival_ptr to store the private data structure.
This allows easier use from SMB2. Ensure aio is initialized before the
aio_pending_size check else aio will never be used.
Jeremy.
|
|
smblctx in our locking code. 2). Widens smblctx to 64-bits internally. Preparing to use the SMB2 handle as the locking context.
Jeremy.
|
|
This will allow us to share logic much easier between SMB1 and SMB2
servers.
Jeremy
|
|
Change schedule_aio_read_and_X/schedule_aio_write_and_X to
return NTSTATUS. Move the grant and release of the lock into
the aio code.
Jeremy
|
|
Call from actual aio read or write. No reason to call this globally on startup.
Jeremy.
|