[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] session: skip timestamp init for non-blocking case
[Thread Prev] | [Thread Next]
- Subject: [PATCH] session: skip timestamp init for non-blocking case
- From: Jon Simons <jon@xxxxxxxxxxxxx>
- Reply-to: libssh@xxxxxxxxxx
- Date: Tue, 04 Feb 2014 23:51:42 -0800
- To: libssh@xxxxxxxxxx
Attached is a patch which skips ssh_timestamp_init in the ssh_handle_packets_termination loop for the non-blocking case. This avoids a syscall for every ssh_channel_flush for example. -Jon
From 33cf8c9400bdb58f2bedea3517844742c64351a5 Mon Sep 17 00:00:00 2001 From: Jon Simons <jon@xxxxxxxxxxxxx> Date: Tue, 4 Feb 2014 19:04:16 -0800 Subject: [PATCH] session: skip timestamp init for non-blocking case --- src/session.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/session.c b/src/session.c index 4d63a19..65fb4b1 100644 --- a/src/session.c +++ b/src/session.c @@ -567,7 +567,11 @@ int ssh_handle_packets_termination(ssh_session session, } } - ssh_timestamp_init(&ts); + /* avoid unnecessary syscall for the SSH_TIMEOUT_NONBLOCKING case */ + if (timeout != SSH_TIMEOUT_NONBLOCKING) { + ssh_timestamp_init(&ts); + } + tm = timeout; while(!fct(user)) { ret = ssh_handle_packets(session, tm); -- 1.8.4.21.g992c386
Archive administrator: postmaster@lists.cynapses.org