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:   Thu, 1 Jun 2017 09:00:32 -0400
From:   "Allen Hubbe" <Allen.Hubbe@...l.com>
To:     "'Jia-Ju Bai'" <baijiaju1990@....com>, <jdmason@...zu.us>,
        <dave.jiang@...el.com>
Cc:     <linux-ntb@...glegroups.com>,
        "'LKML'" <linux-kernel@...r.kernel.org>
Subject: RE: [BUG] ntb: Sleep in interrupt handling

From: Jia-Ju Bai 
> According to ntb_transport.c, the driver may sleep in interrupt handling.
> The function call path is:
> ntb_transport_rxc_db (tasklet_init indicates it handles interrupt)
>    ntb_process_rxc
>      ntb_async_rx
>        ntb_async_rx_submit
>          schedule_timeout --> may sleep
> 
> This bug is found by my static analysis tool and my code review.
> I hope to fix it, but I do not have a good solution.

Thanks! There is a recovery path if ntb_async_tx_submit fails.  It will do the transmission with memcpy instead of dma.  So, rather than retry in ntb_async_tx_submit, just fail to the recovery path.  Basically, replace the whole for(retries) loop with just txd = prep();  Would you like to work on the patch?

> 
> Thanks,
> Jia-Ju Bai


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ