lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Tue, 12 Mar 2019 07:49:42 +0000
From:   Boris Pismenny <borisp@...lanox.com>
To:     Vakul Garg <vakul.garg@....com>,
        "netdev@...r.kernel.org" <netdev@...r.kernel.org>
CC:     Aviad Yehezkel <aviadye@...lanox.com>,
        "davejwatson@...com" <davejwatson@...com>,
        "davem@...emloft.net" <davem@...emloft.net>,
        "doronrk@...com" <doronrk@...com>
Subject: Re: [PATCH net] net/tls: Inform user space about send buffer
 availability

Hi Vakul,

On 3/12/2019 9:09 AM, Vakul Garg wrote:
> A previous fix ("tls: Fix write space handling") assumed that
> user space application gets informed about the socket send buffer
> availability when tls_push_sg() gets called. Inside tls_push_sg(), in
> case do_tcp_sendpages() returns 0, the function returns without calling
> ctx->sk_write_space. Further, the new function tls_sw_write_space()
> did not invoke ctx->sk_write_space. This leads to situation that user
> space application encounters a lockup always waiting for socket send
> buffer to become available.
> 
> Rather than call ctx->sk_write_space from tls_push_sg(), it should be
> called from tls_sw_write_space. So whenever tcp stack invokes
> sk->sk_write_space after freeing socket send buffer, we always declare
> the same to user space by the way of invoking ctx->sk_write_space. The
> function tls_device_write_space() already invokes ctx->sk_write_space.
> 

Thanks for your patch. Since both tls_device and tls_sw call this. I 
suggest we remove the if condition in tls_device, then unify the code 
and place the call in tls_main.

Reviewed-by: Boris Pismenny <borisp@...lanox.com>

Powered by blists - more mailing lists