[SCM] Samba Shared Repository - branch master updated
Stefan Metzmacher
metze at samba.org
Sat Jan 12 02:13:09 UTC 2019
The branch, master has been updated
via 168079b2c36 tevent: deprecate tevent_wrapper api again
via dcd0edfdc90 Revert "smbd: add smbd_server_connection->raw_ev_ctx pointer"
via 47c443b4795 vfs_aio_pthread: add sync fallback
via a307e798ddf vfs_aio_pthread: store conn instead of sconn in aio_open_private_data
via e2f46c9333e vfs_aio_pthread: use struct initializer for aio_open_private_data
via 2f406fee523 vfs_default: add sync fallback to fsync_send/recv
via 4673a8b9e36 vfs_default: add sync fallback to pwrite_send/recv
via bc539d8104f vfs_default: add sync fallback to pread_send/recv
via 57e2fb018f2 s3:smbd: don't use async dosmode if per-thread cwd is not available
via 5d8f495b01c s3:smbd: use passed in ev in smbd_smb2_query_directory_send()
via 6ec96ac7098 Revert "vfs_glusterfs: explain that/why we use the raw tevent_context in init_gluster_aio()"
via 46d3a1541a6 Revert "smbd: explain that/why we use the raw tevent_context for update_write_time_handler()"
via bcb4723aacd Revert "smbd: explain that/why we use the raw tevent_context for lease_timeout_handler()"
via 4036fc894f7 Revert "smbd: explain that/why we use the raw tevent_context for oplock_timeout_handler()"
via 5afd19198b8 Revert "smbd: explain that/why we use the raw tevent_context for do_break_to_none()"
via ac597b07069 Revert "smbd: explain that/why we use the raw tevent_context for linux_oplock_signal_handler()"
via 523a64e25d8 Revert "smbd: use raw_ev_ctx to clear the MSG_SMB_CONF_UPDATED registration"
via 296a15a00e4 Revert "smbd: add smbd_server_connection->{root,guest}_ev_ctx pointer"
via 50995917905 Revert "smbd: use sconn->root_ev_ctx for brl_timeout_fn()"
via 9d47128f7c9 Revert "smbd: use sconn->root_ev_ctx for smbd_sig_{term,hup}_handler()"
via de10c611053 Revert "smbd: add an effective connection_struct->user_ev_ctx that holds the event context used for the current user"
via 88016bac86a Revert "smbd: add an effective {smb,smbd_smb2}_request->ev_ctx that holds the event context used for the request processing"
via 122e141b465 Revert "smbd: remove unused smbd_server_connection->ev_ctx"
via 2a62a98f5c7 Revert "s3:messages: protect against usage of wrapper tevent_context objects for messaging"
via 1c3676f3aa9 Revert "s3:messages: allow messaging_{dgm,ctdb}_register_tevent_context() to use wrapper tevent_context"
via 26107832cd9 Revert "s3:messages: allow messaging_dgm_ref() to use wrapper tevent_context"
via e2a5272ac68 Revert "s3:messages: allow messaging_filtered_read_send() to use wrapper tevent_context"
via 0bd10a48e4c Revert "s4:messaging: make sure only imessaging_client_init() can be used with a wrapper tevent_context wrapper"
via 78fa4408321 Revert "smbd: add [un]become_guest() helper functions"
via 3aaf7c14706 Revert "smbd: add smbd_impersonate_debug_create() helper"
via e717c9035ef Revert "smbd: add simple noop smbd_impersonate_{conn_vuid,conn_sess,root,guest}_create() wrappers"
via 97a7f8864f3 Revert "smbd: make use of smbd_impersonate_{conn_vuid,conn_sess,root,guest}_create() wrappers"
via 864e985168d Revert "smbd: implement smbd_impersonate_{conn_vuid,conn_sess,root,guest}_create() wrappers"
via ac17919ae30 Revert "smbd: avoid explicit change_to_user() in defer_rename_done() already done by impersonation"
via 3747dcb41f1 Revert "smbd: remove unused change_to_root_user() from smbd_sig_hup_handler()"
via 718cc7a0d70 Revert "smbd: remove unused change_to_root_user() from brl_timeout_fn()"
via 8e03cbe868d Revert "pthreadpool: split out pthreadpool_tevent_job from pthreadpool_tevent_job_state"
via 44900b04338 Revert "pthreadpool: add pthreadpool_tevent_job_cancel()"
via 9e4bc1f4a9b Revert "pthreadpool: maintain a global list of orphaned pthreadpool_tevent_jobs"
via 991ca9b5646 Revert "pthreadpool: add some lockless coordination between the main and job threads"
via d818e51174e Revert "pthreadpool: add helgrind magic to PTHREAD_TEVENT_JOB_THREAD_FENCE_*()"
via 7882941b733 Revert "pthreadpool: maintain a list of job_states on each pthreadpool_tevent_glue"
via 42e2ab7e997 Revert "pthreadpool: add a comment about a further optimization in pthreadpool_tevent_job_destructor()"
via 7fd9bc3b6e5 Revert "pthreadpool: test cancelling and freeing pending pthreadpool_tevent jobs/pools"
via 622ba5191d9 Revert "pthreadpool: add pthreadpool_tevent_[current_job_]per_thread_cwd()"
via f4d6c48c65b Revert "pthreadpool: add tests for pthreadpool_tevent_[current_job_]per_thread_cwd()"
via e94cd84bbf8 Revert "pthreadpool: call unshare(CLONE_FS) if available"
via 67015e13ca2 Revert "pthreadpool: add pthreadpool_restart_check[_monitor_{fd,drain}]()"
via 9b7d2257996 Revert "pthreadpool: implement pthreadpool_tevent_wrapper_create() infrastructure"
via d032210d972 Revert "pthreadpool: test cancelling and freeing jobs of a wrapped pthreadpool_tevent"
via 29fc7c7db78 smbd: rename sconn->raw_thread_pool to sconn->pool
via 8074922c267 Revert "smbd: introduce sconn->sync_thread_pool"
via cedbfbd9b86 Revert "s3: vfs: add smb_vfs_ev_glue"
via 29dd6f3e590 Revert "s3: vfs: add user_vfs_evg to connection_struct"
via 56f76944817 Revert "vfs_aio_pthread: use event context and threadpool from user_vfs_evg"
via 96332ed1000 Revert "pthreadpool: we need to use pthreadpool_tevent_per_thread_cwd() on the callers pool"
via a75f5de15db Revert "pthreadpool: ignore the return value of poll(NULL, 0UL, 1)"
via 57c7aaa36d2 Revert "pthreadpool: reset monitor_fd after calling tevent_fd_set_auto_close()"
via edb75eeb56d s3:smbd: pass (raw) ev to fetch_dos_mode_send instead of smb_vfs_ev_glue
via 9f3d9ba49b0 s3:smbd: pass (raw) ev to dos_mode_at_send() instead of smb_vfs_ev_glue
via 56dee840e48 s3:smbd: pass (raw) ev to SMB_VFS_GET_DOS_ATTRIBUTES_SEND() instead of smb_vfs_ev_glue
via 7f7ce0ec2f3 s3:smbd: let SMB_VFS_GETXATTRAT_SEND() do explicit impersonation
via a62bc3f221b s3:torture: call per_thread_cwd_check() in vfstest.c main()
via 16166542753 s3:smbd: prepare the usage of per_thread_cwd_*() functions
via 92c2ed4db29 s3:lib: add per_thread_cwd_{check,supported,disable,activate}() helper functions
via ad04a6ce49f s3:lib: add root_unix_token()
from 8af4ec752a5 selftest: Improve an error message
https://git.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 168079b2c3693c08ac994e4ee61be101986a4bae
Author: Stefan Metzmacher <metze at samba.org>
Date: Tue Jan 8 15:25:22 2019 +0100
tevent: deprecate tevent_wrapper api again
Samba doesn't use it anymore and we don't want to
invite new users of that api without further discussion.
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Autobuild-User(master): Stefan Metzmacher <metze at samba.org>
Autobuild-Date(master): Sat Jan 12 03:12:09 CET 2019 on sn-devel-144
commit dcd0edfdc90a009a87fc8b0bafbd09e2711ebccb
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 15:26:15 2018 +0100
Revert "smbd: add smbd_server_connection->raw_ev_ctx pointer"
This reverts commit 6114f9545fa856717220658e87f2a60f6767b7f4.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 47c443b479566bafc01ec6e3f94f2481d9659806
Author: Ralph Boehme <slow at samba.org>
Date: Tue Jan 8 10:39:56 2019 +0100
vfs_aio_pthread: add sync fallback
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit a307e798ddfc4f8fa32e22827c39f5e1f0e87d47
Author: Ralph Boehme <slow at samba.org>
Date: Tue Jan 8 10:34:11 2019 +0100
vfs_aio_pthread: store conn instead of sconn in aio_open_private_data
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit e2f46c9333e2919fbdfddc1f6049478fe07765aa
Author: Ralph Boehme <slow at samba.org>
Date: Tue Jan 8 10:32:16 2019 +0100
vfs_aio_pthread: use struct initializer for aio_open_private_data
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 2f406fee523692e4dc4b11b13637dcbabaabe8c7
Author: Ralph Boehme <slow at samba.org>
Date: Tue Jan 8 07:38:53 2019 +0100
vfs_default: add sync fallback to fsync_send/recv
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 4673a8b9e36647500428a0283edb5ed645ff0da4
Author: Ralph Boehme <slow at samba.org>
Date: Tue Jan 8 07:38:42 2019 +0100
vfs_default: add sync fallback to pwrite_send/recv
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit bc539d8104fcf7954331df1d4385ad84343c919a
Author: Ralph Boehme <slow at samba.org>
Date: Tue Jan 8 07:38:04 2019 +0100
vfs_default: add sync fallback to pread_send/recv
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 57e2fb018f2040d1e2d487a4590f103022496b44
Author: Ralph Boehme <slow at samba.org>
Date: Mon Jan 7 21:10:19 2019 +0100
s3:smbd: don't use async dosmode if per-thread cwd is not available
The additional overhead for the async processing should be avoided when
we know the lower level has to fallback to sync processing anyway.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 5d8f495b01cb4d6797f9165b1e45dcaa31da7e44
Author: Ralph Boehme <slow at samba.org>
Date: Fri Dec 28 13:25:57 2018 +0100
s3:smbd: use passed in ev in smbd_smb2_query_directory_send()
The ev argument is also a raw ev.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 6ec96ac70989fcd65abbde04b233d2282f6bf398
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 15:26:08 2018 +0100
Revert "vfs_glusterfs: explain that/why we use the raw tevent_context in init_gluster_aio()"
This reverts commit b0af5715b0a7592a9728e0b76f653b9ab6228708.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 46d3a1541a62bf0b2ae4d4ebc5f615b679dd7335
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 15:26:03 2018 +0100
Revert "smbd: explain that/why we use the raw tevent_context for update_write_time_handler()"
This reverts commit 7cfafaf190643eb28fc95d21a02a4e5e529e16d1.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit bcb4723aacd165a3eb5d5bf3e9b68f444813f7f7
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 15:24:37 2018 +0100
Revert "smbd: explain that/why we use the raw tevent_context for lease_timeout_handler()"
This reverts commit 52f098d38da72d6eff3c4cac61487da897a8651c.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 4036fc894f7ebbad37607b8661aa064009f8e0d3
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 15:23:52 2018 +0100
Revert "smbd: explain that/why we use the raw tevent_context for oplock_timeout_handler()"
This reverts commit e73eaa3c8004d3d8aff316cdb26b0bef85eceaca.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 5afd19198b8605ad921777aed0c2f9c89a1305db
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 15:23:43 2018 +0100
Revert "smbd: explain that/why we use the raw tevent_context for do_break_to_none()"
This reverts commit 1d5210b615035e46b90758ac7aa4ceec9174bee5.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit ac597b0706926850f8d599c54077946b3a726a9a
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 15:21:06 2018 +0100
Revert "smbd: explain that/why we use the raw tevent_context for linux_oplock_signal_handler()"
This reverts commit dc517b20f60a156d73fdd551557eb1d4366dfdeb.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 523a64e25d88b9924f34ecb24925b400bac6d8d7
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 15:21:04 2018 +0100
Revert "smbd: use raw_ev_ctx to clear the MSG_SMB_CONF_UPDATED registration"
This reverts commit f5f9b719741465c7be3de20a6a69ec106ecc4568.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 296a15a00e4dc7a530cc8b895d767867ab8d4c12
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 15:21:01 2018 +0100
Revert "smbd: add smbd_server_connection->{root,guest}_ev_ctx pointer"
This reverts commit 146938217ed1ab9a7a9f38c055fec5513cbd5c4d.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 50995917905988843074b44d82e59a1f927ccb58
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 15:20:58 2018 +0100
Revert "smbd: use sconn->root_ev_ctx for brl_timeout_fn()"
This reverts commit 182991c26c8149c79b13a277b9822efc49fd1df0.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 9d47128f7c9346cc673e341967a1cd7a53ecabbc
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 15:20:54 2018 +0100
Revert "smbd: use sconn->root_ev_ctx for smbd_sig_{term,hup}_handler()"
This reverts commit c835ffa72ddfd2431d22909148913b50f0d829d1.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit de10c61105391940baecb9b4c6980e5e630550c1
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 15:19:20 2018 +0100
Revert "smbd: add an effective connection_struct->user_ev_ctx that holds the event context used for the current user"
This reverts commit f2df8be16be9dccd3d10ec060f1efbe5007a28c6.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 88016bac86a727de16af72766e859c5821a0b20c
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 15:18:55 2018 +0100
Revert "smbd: add an effective {smb,smbd_smb2}_request->ev_ctx that holds the event context used for the request processing"
This reverts commit 894e5001c747ce765dad5517778dda55d7d1f4d9.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 122e141b465d90b76334eaf75331949e34fd91d3
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 15:17:22 2018 +0100
Revert "smbd: remove unused smbd_server_connection->ev_ctx"
This reverts commit 721fbbfa7001b2788602106101f0407483894322.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 2a62a98f5c7107f2f83c0bfc2892243d83e2c88a
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 12:48:30 2018 +0100
Revert "s3:messages: protect against usage of wrapper tevent_context objects for messaging"
This reverts commit 7f2afc20e1b6397c364a98d1be006377c95e4665.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 1c3676f3aa9c1564eb140a24ced5ee72b859b87f
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 12:45:42 2018 +0100
Revert "s3:messages: allow messaging_{dgm,ctdb}_register_tevent_context() to use wrapper tevent_context"
This reverts commit 660cf86639753edaa7a7a21a5b5ae207ae7d4260.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 26107832cd9d200fb171ef1f991d7ef5478cac18
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 12:45:28 2018 +0100
Revert "s3:messages: allow messaging_dgm_ref() to use wrapper tevent_context"
This reverts commit 9dc332060cf5f249ea887dbc60ec7a39b6f91120.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit e2a5272ac6831b407a0c51bb8615252ec68be6a8
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 12:45:15 2018 +0100
Revert "s3:messages: allow messaging_filtered_read_send() to use wrapper tevent_context"
This reverts commit 2b05f1098187e00166649c8ea7c63e6901b9d242.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 0bd10a48e4c08d1eb3a20e79d952b3c0f12be46a
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 12:41:25 2018 +0100
Revert "s4:messaging: make sure only imessaging_client_init() can be used with a wrapper tevent_context wrapper"
This reverts commit e186d6a06b1b300256a2cb4138f0532d518d0597.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 78fa44083218adef59a27c35794be51b8bfd1caa
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 11:42:45 2018 +0100
Revert "smbd: add [un]become_guest() helper functions"
This reverts commit 7b5a47b84696e8e5c26207bd398742b883e598c2.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 3aaf7c1470644ad91b456125ee046333f1f051f1
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 11:41:57 2018 +0100
Revert "smbd: add smbd_impersonate_debug_create() helper"
This reverts commit 23319ef5a2eff4811b685d4ab54179efc49bac99.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit e717c9035ef643b8de97c0ee473670d693690900
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 11:38:36 2018 +0100
Revert "smbd: add simple noop smbd_impersonate_{conn_vuid,conn_sess,root,guest}_create() wrappers"
This reverts commit 5285966e67cbee8519015df12a15e938e85e6ee7.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 97a7f8864f34d3dcf3c31fb16b7f39f047580bd8
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 11:38:34 2018 +0100
Revert "smbd: make use of smbd_impersonate_{conn_vuid,conn_sess,root,guest}_create() wrappers"
This reverts commit 0dcaa0707bad67f7bfaa10ccaf167bfefbe87a0c.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 864e985168d0622c51b351974180c5b1dfd5dc60
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 11:38:27 2018 +0100
Revert "smbd: implement smbd_impersonate_{conn_vuid,conn_sess,root,guest}_create() wrappers"
This reverts commit 1b804f7ae23f54a6c1004e5ff17b9df1376b5adb.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit ac17919ae306514aeb668cf422ce46daa3897ae3
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 11:37:16 2018 +0100
Revert "smbd: avoid explicit change_to_user() in defer_rename_done() already done by impersonation"
This reverts commit e37e41b3cac52e3623f0c79f83733a51edb35c10.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 3747dcb41f1973f291b812343b3130619331210c
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 11:37:03 2018 +0100
Revert "smbd: remove unused change_to_root_user() from smbd_sig_hup_handler()"
This reverts commit d0b1f96f086bdd613644f64b3f75ee8c4388f674.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 718cc7a0d70e57b32db986e2cb3ae3007c4294c5
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 11:36:43 2018 +0100
Revert "smbd: remove unused change_to_root_user() from brl_timeout_fn()"
This reverts commit c310647e560abc2343ef2ff0ab15daab0fba2650.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 8e03cbe868de35055fa228af906330a3e0ac0c5e
Author: Ralph Boehme <slow at samba.org>
Date: Fri Dec 28 09:03:45 2018 +0100
Revert "pthreadpool: split out pthreadpool_tevent_job from pthreadpool_tevent_job_state"
This reverts commit 245d684d28dab630f3d47ff61006a1fe3e5eeefa.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 44900b043388461cc1777a57452848fd67d2892f
Author: Ralph Boehme <slow at samba.org>
Date: Fri Dec 28 09:03:34 2018 +0100
Revert "pthreadpool: add pthreadpool_tevent_job_cancel()"
This reverts commit 791c05144ee9296024cc0fdebe4afeaaf67e26bc.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 9e4bc1f4a9b0f9400e198680dfddfa8cd112ce2b
Author: Ralph Boehme <slow at samba.org>
Date: Fri Dec 28 09:02:54 2018 +0100
Revert "pthreadpool: maintain a global list of orphaned pthreadpool_tevent_jobs"
This reverts commit 25756425aaf5465e56ea809cd415b6a387848919.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 991ca9b56460912ff1024f9ff443200195e507fa
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:46:13 2018 +0100
Revert "pthreadpool: add some lockless coordination between the main and job threads"
This reverts commit 9656b8d8ee11ee351870286f16ea8fbe49112292.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit d818e51174e8d5684719b7e09dcd2d83c315944d
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:44:49 2018 +0100
Revert "pthreadpool: add helgrind magic to PTHREAD_TEVENT_JOB_THREAD_FENCE_*()"
This reverts commit 9b73fda926eb8493e80012794483039be66d4e6c.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 7882941b7336c97cc68c915e07c535d2b69f181c
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:44:32 2018 +0100
Revert "pthreadpool: maintain a list of job_states on each pthreadpool_tevent_glue"
This reverts commit aa9b64eccfd037941512bad108c4e3946714a502.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 42e2ab7e9973e271cd7df4a1a22feaac1b8c0fd7
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:44:22 2018 +0100
Revert "pthreadpool: add a comment about a further optimization in pthreadpool_tevent_job_destructor()"
This reverts commit f23cac39b36b026650e0922c78fe0fd3fe567e35.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 7fd9bc3b6e51b818a0c2e39631f6667a993081ff
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:44:07 2018 +0100
Revert "pthreadpool: test cancelling and freeing pending pthreadpool_tevent jobs/pools"
This reverts commit 40d15260d24d0071732f47873f395fce29b8a6f4.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 622ba5191d97409bd50f53169ebdadb2a4c2a84f
Author: Ralph Boehme <slow at samba.org>
Date: Mon Jan 7 21:27:19 2019 +0100
Revert "pthreadpool: add pthreadpool_tevent_[current_job_]per_thread_cwd()"
This reverts commit 12a45ee1a66379ba7562729b835ce0e2e4bfb3b3.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit f4d6c48c65bee34a6b4a433914008fe0a08e414d
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:43:25 2018 +0100
Revert "pthreadpool: add tests for pthreadpool_tevent_[current_job_]per_thread_cwd()"
This reverts commit fbafdc99ef2cef11a1a28e795ffe965cb53ef7fa.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit e94cd84bbf87ee42495286d6ab9712ba35eaf23d
Author: Ralph Boehme <slow at samba.org>
Date: Mon Jan 7 18:35:27 2019 +0100
Revert "pthreadpool: call unshare(CLONE_FS) if available"
This reverts commit 65e4742d168454df6507d9e74993749063435dd6.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 67015e13ca24a23d66ef4e465672288ba59fb889
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:43:07 2018 +0100
Revert "pthreadpool: add pthreadpool_restart_check[_monitor_{fd,drain}]()"
This reverts commit 3c4cdb290723432b00ff9ff88b892cb4e66e76cd.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 9b7d2257996c805e63b3d612141c1799f8eb2faa
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:42:53 2018 +0100
Revert "pthreadpool: implement pthreadpool_tevent_wrapper_create() infrastructure"
This reverts commit f9745d8b5234091c38e93ed57a255120b61f3ad7.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit d032210d9725a9fa267c34093f95def074dc22f3
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:42:37 2018 +0100
Revert "pthreadpool: test cancelling and freeing jobs of a wrapped pthreadpool_tevent"
This reverts commit fb6b6cf3e43165ced4b1039f2683d19f277c0792.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 29fc7c7db788b1bb200e3a4019d42c045ad0d582
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:34:20 2018 +0100
smbd: rename sconn->raw_thread_pool to sconn->pool
This is basically a revert of commit
2be7518ae5a3c046f5fca04ecc83f9f7044eac74.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 8074922c267677434e6174a2e74b2b7959762014
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:34:00 2018 +0100
Revert "smbd: introduce sconn->sync_thread_pool"
This reverts commit 0c97226356f2ba5f01a58d361371055caf11e2a7.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit cedbfbd9b86c9c4f915b19b341cada4c93db7cff
Author: Ralph Boehme <slow at samba.org>
Date: Fri Dec 28 13:08:14 2018 +0100
Revert "s3: vfs: add smb_vfs_ev_glue"
This reverts commit 1251a536df4b1df58d9ddacab03d3ebe6f4e5b60.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 29dd6f3e59055a17fa3d6a63619773f940e63374
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:25:32 2018 +0100
Revert "s3: vfs: add user_vfs_evg to connection_struct"
This reverts commit 2dd95c1c38b9e1ce32d3d1081b6ec177910087a4.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 56f7694481765d9f99311c381efe5261d7158d2d
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:24:51 2018 +0100
Revert "vfs_aio_pthread: use event context and threadpool from user_vfs_evg"
This reverts commit cd37badc02b3e56f974168b28447444cd54ee541.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 96332ed100013cb89e92ae3f01a2f46136af3bd2
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:23:48 2018 +0100
Revert "pthreadpool: we need to use pthreadpool_tevent_per_thread_cwd() on the callers pool"
This reverts commit ff863f2d98ac5e12073af824b794404c3d7198c5.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit a75f5de15dba1c9f41a2d86c4fa6573764d4cb8d
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:12:34 2018 +0100
Revert "pthreadpool: ignore the return value of poll(NULL, 0UL, 1)"
This reverts commit 6da0d68f49bbd82f5a08427779c9f5ebd6f755aa.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 57c7aaa36d2d146065cee78306cd38c0df34cd93
Author: Ralph Boehme <slow at samba.org>
Date: Sun Dec 23 09:12:10 2018 +0100
Revert "pthreadpool: reset monitor_fd after calling tevent_fd_set_auto_close()"
This reverts commit f68b5ee75f002ed542a8423070fb01e3b0e83f65.
See the discussion in
https://lists.samba.org/archive/samba-technical/2018-December/131731.html
for the reasoning behind this revert.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit edb75eeb56d97c9b8b47df731626984ae7553411
Author: Ralph Boehme <slow at samba.org>
Date: Fri Dec 28 12:19:08 2018 +0100
s3:smbd: pass (raw) ev to fetch_dos_mode_send instead of smb_vfs_ev_glue
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 9f3d9ba49b015e9958c5995e18300b396cadaf81
Author: Ralph Boehme <slow at samba.org>
Date: Fri Dec 28 12:16:27 2018 +0100
s3:smbd: pass (raw) ev to dos_mode_at_send() instead of smb_vfs_ev_glue
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 56dee840e48c327b0d2136f1d7dd36c63f439f7e
Author: Ralph Boehme <slow at samba.org>
Date: Fri Dec 28 12:12:20 2018 +0100
s3:smbd: pass (raw) ev to SMB_VFS_GET_DOS_ATTRIBUTES_SEND() instead of smb_vfs_ev_glue
This also removes smb_vfs_ev_glue_[push|pop]_use() as the only caller
got removed.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit 7f7ce0ec2f3e3cfb46314e5ad3ea6b5c49085f1d
Author: Ralph Boehme <slow at samba.org>
Date: Thu Dec 27 16:32:46 2018 +0100
s3:smbd: let SMB_VFS_GETXATTRAT_SEND() do explicit impersonation
SMB_VFS_GETXATTRAT_SEND() gets passed a raw event context and the
default implementation uses that as well a raw threadpool. Impersonation
is done explicitly instead of by the tevent and pthreadpool wrappers.
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
commit a62bc3f221bd7d9db6cdbeb89f2c03c6e81eb98d
Author: Stefan Metzmacher <metze at samba.org>
Date: Fri Jan 11 13:15:58 2019 +0100
s3:torture: call per_thread_cwd_check() in vfstest.c main()
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
commit 16166542753264ae21115790744af535e6f2c859
Author: Stefan Metzmacher <metze at samba.org>
Date: Fri Jan 11 13:13:04 2019 +0100
s3:smbd: prepare the usage of per_thread_cwd_*() functions
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
commit 92c2ed4db29c8fa4e5989b5f6d611752bdaa523d
Author: Stefan Metzmacher <metze at samba.org>
Date: Fri Jan 11 12:47:40 2019 +0100
s3:lib: add per_thread_cwd_{check,supported,disable,activate}() helper functions
Only Linux it's possible to have a per thread current working directory
using unshare(CLONE_FS).
Signed-off-by: Stefan Metzmacher <metze at samba.org>
Reviewed-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
commit ad04a6ce49fc3811a62a3c736305cc06fb2611b9
Author: Ralph Boehme <slow at samba.org>
Date: Fri Mar 16 19:01:20 2018 +0100
s3:lib: add root_unix_token()
Signed-off-by: Ralph Boehme <slow at samba.org>
Reviewed-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Stefan Metzmacher <metze at samba.org>
-----------------------------------------------------------------------
Summary of changes:
examples/VFS/skel_opaque.c | 6 +-
examples/VFS/skel_transparent.c | 10 +-
lib/pthreadpool/pthreadpool.c | 315 ------
lib/pthreadpool/pthreadpool.h | 81 --
lib/pthreadpool/pthreadpool_sync.c | 25 -
lib/pthreadpool/pthreadpool_tevent.c | 1082 ++----------------
lib/pthreadpool/pthreadpool_tevent.h | 55 -
lib/pthreadpool/tests_cmocka.c | 1151 -------------------
lib/tevent/testsuite.c | 1 +
lib/tevent/tevent.h | 17 +-
lib/tevent/tevent_fd.c | 1 +
lib/tevent/tevent_immediate.c | 1 +
lib/tevent/tevent_signal.c | 1 +
lib/tevent/tevent_timed.c | 1 +
lib/tevent/tevent_wrapper.c | 1 +
source3/include/proto.h | 8 +
source3/include/vfs.h | 47 +-
source3/include/vfs_macros.h | 8 +-
source3/lib/messages.c | 37 +-
source3/lib/messages_ctdb.c | 30 +-
source3/lib/messages_ctdb_ref.c | 12 -
source3/lib/messages_dgm.c | 36 +-
source3/lib/messages_dgm_ref.c | 12 -
source3/lib/per_thread_cwd.c | 156 +++
source3/lib/util.c | 33 +
source3/modules/vfs_aio_pthread.c | 96 +-
source3/modules/vfs_default.c | 247 ++++-
source3/modules/vfs_full_audit.c | 10 +-
source3/modules/vfs_glusterfs.c | 11 +-
source3/modules/vfs_not_implemented.c | 6 +-
source3/modules/vfs_readonly.c | 1 -
source3/modules/vfs_time_audit.c | 10 +-
source3/modules/vfs_xattr_tdb.c | 3 +-
source3/smbd/aio.c | 8 +-
source3/smbd/blocking.c | 9 +-
source3/smbd/conn.c | 9 -
source3/smbd/dosmode.c | 6 +-
source3/smbd/fileio.c | 12 +-
source3/smbd/globals.h | 10 +-
source3/smbd/ipc.c | 4 +-
source3/smbd/msdfs.c | 108 +-
source3/smbd/open.c | 8 +-
source3/smbd/oplock.c | 41 +-
source3/smbd/oplock_linux.c | 14 +-
source3/smbd/pipes.c | 8 +-
source3/smbd/process.c | 51 +-
source3/smbd/proto.h | 34 +-
source3/smbd/reply.c | 2 +-
source3/smbd/server.c | 7 +
source3/smbd/smb2_break.c | 4 +-
source3/smbd/smb2_close.c | 2 +-
source3/smbd/smb2_create.c | 6 +-
source3/smbd/smb2_flush.c | 2 +-
source3/smbd/smb2_getinfo.c | 2 +-
source3/smbd/smb2_glue.c | 1 -
source3/smbd/smb2_ioctl.c | 2 +-
source3/smbd/smb2_ioctl_named_pipe.c | 2 +-
source3/smbd/smb2_lock.c | 10 +-
source3/smbd/smb2_notify.c | 4 +-
source3/smbd/smb2_query_directory.c | 22 +-
source3/smbd/smb2_read.c | 2 +-
source3/smbd/smb2_server.c | 2 -
source3/smbd/smb2_sesssetup.c | 4 +-
source3/smbd/smb2_setinfo.c | 13 +-
source3/smbd/smb2_tcon.c | 4 +-
source3/smbd/smb2_write.c | 2 +-
source3/smbd/uid.c | 1952 ---------------------------------
source3/smbd/vfs.c | 906 +--------------
source3/torture/vfstest.c | 2 +
source3/wscript_build | 1 +
source4/lib/messaging/messaging.c | 28 +-
wscript | 12 +-
72 files changed, 696 insertions(+), 6131 deletions(-)
create mode 100644 source3/lib/per_thread_cwd.c
Changeset truncated at 500 lines:
diff --git a/examples/VFS/skel_opaque.c b/examples/VFS/skel_opaque.c
index 054de50197e..6510ef30d6f 100644
--- a/examples/VFS/skel_opaque.c
+++ b/examples/VFS/skel_opaque.c
@@ -714,12 +714,11 @@ struct skel_get_dos_attributes_state {
static struct tevent_req *skel_get_dos_attributes_send(
TALLOC_CTX *mem_ctx,
- const struct smb_vfs_ev_glue *evg,
+ struct tevent_context *ev,
struct vfs_handle_struct *handle,
files_struct *dir_fsp,
struct smb_filename *smb_fname)
{
- struct tevent_context *ev = smb_vfs_ev_glue_ev_ctx(evg);
struct tevent_req *req = NULL;
struct skel_get_dos_attributes_state *state = NULL;
@@ -873,14 +872,13 @@ struct skel_getxattrat_state {
static struct tevent_req *skel_getxattrat_send(
TALLOC_CTX *mem_ctx,
- const struct smb_vfs_ev_glue *evg,
+ struct tevent_context *ev,
struct vfs_handle_struct *handle,
files_struct *dir_fsp,
const struct smb_filename *smb_fname,
const char *xattr_name,
size_t alloc_hint)
{
- struct tevent_context *ev = smb_vfs_ev_glue_ev_ctx(evg);
struct tevent_req *req = NULL;
struct skel_getxattrat_state *state = NULL;
diff --git a/examples/VFS/skel_transparent.c b/examples/VFS/skel_transparent.c
index cff52fa185e..fc892a23208 100644
--- a/examples/VFS/skel_transparent.c
+++ b/examples/VFS/skel_transparent.c
@@ -895,12 +895,11 @@ static void skel_get_dos_attributes_done(struct tevent_req *subreq);
static struct tevent_req *skel_get_dos_attributes_send(
TALLOC_CTX *mem_ctx,
- const struct smb_vfs_ev_glue *evg,
+ struct tevent_context *ev,
struct vfs_handle_struct *handle,
files_struct *dir_fsp,
struct smb_filename *smb_fname)
{
- struct tevent_context *ev = smb_vfs_ev_glue_ev_ctx(evg);
struct tevent_req *req = NULL;
struct skel_get_dos_attributes_state *state = NULL;
struct tevent_req *subreq = NULL;
@@ -912,7 +911,7 @@ static struct tevent_req *skel_get_dos_attributes_send(
}
subreq = SMB_VFS_NEXT_GET_DOS_ATTRIBUTES_SEND(mem_ctx,
- evg,
+ ev,
handle,
dir_fsp,
smb_fname);
@@ -1094,14 +1093,13 @@ static void skel_getxattrat_done(struct tevent_req *subreq);
static struct tevent_req *skel_getxattrat_send(
TALLOC_CTX *mem_ctx,
- const struct smb_vfs_ev_glue *evg,
+ struct tevent_context *ev,
struct vfs_handle_struct *handle,
files_struct *dir_fsp,
const struct smb_filename *smb_fname,
const char *xattr_name,
size_t alloc_hint)
{
- struct tevent_context *ev = smb_vfs_ev_glue_ev_ctx(evg);
struct tevent_req *req = NULL;
struct skel_getxattrat_state *state = NULL;
struct tevent_req *subreq = NULL;
@@ -1113,7 +1111,7 @@ static struct tevent_req *skel_getxattrat_send(
}
subreq = SMB_VFS_NEXT_GETXATTRAT_SEND(state,
- evg,
+ ev,
handle,
dir_fsp,
smb_fname,
diff --git a/lib/pthreadpool/pthreadpool.c b/lib/pthreadpool/pthreadpool.c
index d482c159941..b6dad310b0d 100644
--- a/lib/pthreadpool/pthreadpool.c
+++ b/lib/pthreadpool/pthreadpool.c
@@ -24,7 +24,6 @@
#include "system/filesys.h"
#include "pthreadpool.h"
#include "lib/util/dlinklist.h"
-#include "lib/util/blocking.h"
#ifdef NDEBUG
#undef NDEBUG
@@ -54,8 +53,6 @@ struct pthreadpool {
*/
pthread_cond_t condvar;
- int check_pipefd[2];
-
/*
* Array of jobs
*/
@@ -116,13 +113,10 @@ struct pthreadpool {
* where the forking thread will unlock it again.
*/
pthread_mutex_t fork_mutex;
-
- bool per_thread_cwd;
};
static pthread_mutex_t pthreadpools_mutex = PTHREAD_MUTEX_INITIALIZER;
static struct pthreadpool *pthreadpools = NULL;
-static bool pthreadpool_support_thread_cwd = false;
static pthread_once_t pthreadpool_atfork_initialized = PTHREAD_ONCE_INIT;
static void pthreadpool_prep_atfork(void);
@@ -140,7 +134,6 @@ int pthreadpool_init(unsigned max_threads, struct pthreadpool **presult,
{
struct pthreadpool *pool;
int ret;
- bool ok;
pool = (struct pthreadpool *)malloc(sizeof(struct pthreadpool));
if (pool == NULL) {
@@ -158,52 +151,10 @@ int pthreadpool_init(unsigned max_threads, struct pthreadpool **presult,
return ENOMEM;
}
- ret = pipe(pool->check_pipefd);
- if (ret != 0) {
- free(pool->jobs);
- free(pool);
- return ENOMEM;
- }
-
- ok = smb_set_close_on_exec(pool->check_pipefd[0]);
- if (!ok) {
- close(pool->check_pipefd[0]);
- close(pool->check_pipefd[1]);
- free(pool->jobs);
- free(pool);
- return EINVAL;
- }
- ok = smb_set_close_on_exec(pool->check_pipefd[1]);
- if (!ok) {
- close(pool->check_pipefd[0]);
- close(pool->check_pipefd[1]);
- free(pool->jobs);
- free(pool);
- return EINVAL;
- }
- ret = set_blocking(pool->check_pipefd[0], true);
- if (ret == -1) {
- close(pool->check_pipefd[0]);
- close(pool->check_pipefd[1]);
- free(pool->jobs);
- free(pool);
- return EINVAL;
- }
- ret = set_blocking(pool->check_pipefd[1], false);
- if (ret == -1) {
- close(pool->check_pipefd[0]);
- close(pool->check_pipefd[1]);
- free(pool->jobs);
- free(pool);
- return EINVAL;
- }
-
pool->head = pool->num_jobs = 0;
ret = pthread_mutex_init(&pool->mutex, NULL);
if (ret != 0) {
- close(pool->check_pipefd[0]);
- close(pool->check_pipefd[1]);
free(pool->jobs);
free(pool);
return ret;
@@ -212,8 +163,6 @@ int pthreadpool_init(unsigned max_threads, struct pthreadpool **presult,
ret = pthread_cond_init(&pool->condvar, NULL);
if (ret != 0) {
pthread_mutex_destroy(&pool->mutex);
- close(pool->check_pipefd[0]);
- close(pool->check_pipefd[1]);
free(pool->jobs);
free(pool);
return ret;
@@ -223,8 +172,6 @@ int pthreadpool_init(unsigned max_threads, struct pthreadpool **presult,
if (ret != 0) {
pthread_cond_destroy(&pool->condvar);
pthread_mutex_destroy(&pool->mutex);
- close(pool->check_pipefd[0]);
- close(pool->check_pipefd[1]);
free(pool->jobs);
free(pool);
return ret;
@@ -236,19 +183,12 @@ int pthreadpool_init(unsigned max_threads, struct pthreadpool **presult,
pool->max_threads = max_threads;
pool->num_idle = 0;
pool->prefork_cond = NULL;
- if (max_threads != 0) {
- pool->per_thread_cwd = pthreadpool_support_thread_cwd;
- } else {
- pool->per_thread_cwd = false;
- }
ret = pthread_mutex_lock(&pthreadpools_mutex);
if (ret != 0) {
pthread_mutex_destroy(&pool->fork_mutex);
pthread_cond_destroy(&pool->condvar);
pthread_mutex_destroy(&pool->mutex);
- close(pool->check_pipefd[0]);
- close(pool->check_pipefd[1]);
free(pool->jobs);
free(pool);
return ret;
@@ -302,15 +242,6 @@ size_t pthreadpool_queued_jobs(struct pthreadpool *pool)
return ret;
}
-bool pthreadpool_per_thread_cwd(struct pthreadpool *pool)
-{
- if (pool->stopped) {
- return false;
- }
-
- return pool->per_thread_cwd;
-}
-
static void pthreadpool_prepare_pool(struct pthreadpool *pool)
{
int ret;
@@ -412,14 +343,6 @@ static void pthreadpool_child(void)
pool->head = 0;
pool->num_jobs = 0;
pool->stopped = true;
- if (pool->check_pipefd[0] != -1) {
- close(pool->check_pipefd[0]);
- pool->check_pipefd[0] = -1;
- }
- if (pool->check_pipefd[1] != -1) {
- close(pool->check_pipefd[1]);
- pool->check_pipefd[1] = -1;
- }
ret = pthread_cond_init(&pool->condvar, NULL);
assert(ret == 0);
@@ -437,16 +360,6 @@ static void pthreadpool_child(void)
static void pthreadpool_prep_atfork(void)
{
-#ifdef HAVE_UNSHARE_CLONE_FS
- int res;
-
- /* remember if unshare(CLONE_FS) works. */
- res = unshare(CLONE_FS);
- if (res == 0) {
- pthreadpool_support_thread_cwd = true;
- }
-#endif
-
pthread_atfork(pthreadpool_prepare, pthreadpool_parent,
pthreadpool_child);
}
@@ -482,14 +395,6 @@ static int pthreadpool_free(struct pthreadpool *pool)
return ret2;
}
- if (pool->check_pipefd[0] != -1) {
- close(pool->check_pipefd[0]);
- pool->check_pipefd[0] = -1;
- }
- if (pool->check_pipefd[1] != -1) {
- close(pool->check_pipefd[1]);
- pool->check_pipefd[1] = -1;
- }
free(pool->jobs);
free(pool);
@@ -506,15 +411,6 @@ static int pthreadpool_stop_locked(struct pthreadpool *pool)
pool->stopped = true;
- if (pool->check_pipefd[0] != -1) {
- close(pool->check_pipefd[0]);
- pool->check_pipefd[0] = -1;
- }
- if (pool->check_pipefd[1] != -1) {
- close(pool->check_pipefd[1]);
- pool->check_pipefd[1] = -1;
- }
-
if (pool->num_threads == 0) {
return 0;
}
@@ -599,33 +495,6 @@ static void pthreadpool_server_exit(struct pthreadpool *pool)
free_it = (pool->destroyed && (pool->num_threads == 0));
- while (true) {
- uint8_t c = 0;
- ssize_t nwritten = 0;
-
- if (pool->check_pipefd[1] == -1) {
- break;
- }
-
- nwritten = write(pool->check_pipefd[1], &c, 1);
- if (nwritten == -1) {
- if (errno == EINTR) {
- continue;
- }
- if (errno == EAGAIN) {
- break;
- }
-#ifdef EWOULDBLOCK
- if (errno == EWOULDBLOCK) {
- break;
- }
-#endif
- /* ignore ... */
- }
-
- break;
- }
-
ret = pthread_mutex_unlock(&pool->mutex);
assert(ret == 0);
@@ -703,13 +572,6 @@ static void *pthreadpool_server(void *arg)
struct pthreadpool *pool = (struct pthreadpool *)arg;
int res;
-#ifdef HAVE_UNSHARE_CLONE_FS
- if (pool->per_thread_cwd) {
- res = unshare(CLONE_FS);
- assert(res == 0);
- }
-#endif
-
res = pthread_mutex_lock(&pool->mutex);
if (res != 0) {
return NULL;
@@ -956,183 +818,6 @@ int pthreadpool_add_job(struct pthreadpool *pool, int job_id,
return res;
}
-int pthreadpool_restart_check(struct pthreadpool *pool)
-{
- int res;
- int unlock_res;
- unsigned possible_threads = 0;
- unsigned missing_threads = 0;
-
- assert(!pool->destroyed);
-
- res = pthread_mutex_lock(&pool->mutex);
- if (res != 0) {
- return res;
- }
-
- if (pool->stopped) {
- /*
- * Protect against the pool being shut down while
- * trying to add a job
- */
- unlock_res = pthread_mutex_unlock(&pool->mutex);
- assert(unlock_res == 0);
- return EINVAL;
- }
-
- if (pool->num_jobs == 0) {
- /*
- * This also handles the pool->max_threads == 0 case as it never
- * calls pthreadpool_put_job()
- */
- unlock_res = pthread_mutex_unlock(&pool->mutex);
- assert(unlock_res == 0);
- return 0;
- }
-
- if (pool->num_idle > 0) {
- /*
- * We have idle threads and pending jobs,
- * this means we better let all threads
- * start and check for pending jobs.
- */
- res = pthread_cond_broadcast(&pool->condvar);
- assert(res == 0);
- }
-
- if (pool->num_threads < pool->max_threads) {
- possible_threads = pool->max_threads - pool->num_threads;
- }
-
- if (pool->num_idle < pool->num_jobs) {
- missing_threads = pool->num_jobs - pool->num_idle;
- }
-
- missing_threads = MIN(missing_threads, possible_threads);
-
- while (missing_threads > 0) {
-
- res = pthreadpool_create_thread(pool);
- if (res != 0) {
- break;
- }
-
- missing_threads--;
- }
-
- if (missing_threads == 0) {
- /*
- * Ok, we recreated all thread we need.
- */
- unlock_res = pthread_mutex_unlock(&pool->mutex);
- assert(unlock_res == 0);
- return 0;
- }
-
- if (pool->num_threads != 0) {
- /*
- * At least one thread is still available, let
- * that one run the queued jobs.
- */
- unlock_res = pthread_mutex_unlock(&pool->mutex);
- assert(unlock_res == 0);
- return 0;
- }
-
- /*
- * There's no thread available to run any pending jobs.
- * The caller may want to cancel the jobs and destroy the pool.
- * But that's up to the caller.
- */
- unlock_res = pthread_mutex_unlock(&pool->mutex);
- assert(unlock_res == 0);
-
- return res;
-}
-
-int pthreadpool_restart_check_monitor_fd(struct pthreadpool *pool)
-{
- int fd;
- int ret;
- bool ok;
-
- if (pool->stopped) {
- errno = EINVAL;
- return -1;
- }
-
- if (pool->check_pipefd[0] == -1) {
- errno = ENOSYS;
- return -1;
- }
-
- fd = dup(pool->check_pipefd[0]);
- if (fd == -1) {
- return -1;
- }
-
- ok = smb_set_close_on_exec(fd);
- if (!ok) {
- int saved_errno = errno;
- close(fd);
- errno = saved_errno;
- return -1;
- }
-
- ret = set_blocking(fd, false);
- if (ret == -1) {
- int saved_errno = errno;
- close(fd);
- errno = saved_errno;
- return -1;
- }
-
- return fd;
-}
-
-int pthreadpool_restart_check_monitor_drain(struct pthreadpool *pool)
-{
- if (pool->stopped) {
- return EINVAL;
- }
-
- if (pool->check_pipefd[0] == -1) {
- return ENOSYS;
- }
-
- while (true) {
- uint8_t buf[128];
- ssize_t nread;
-
- nread = read(pool->check_pipefd[0], buf, sizeof(buf));
--
Samba Shared Repository
More information about the samba-cvs
mailing list