On 7/5/2019 12:01 AM, Logan Gunthorpe wrote:

On 2019-07-04 3:00 p.m., Max Gurtovoy wrote:
Hi Logan,

On 7/4/2019 2:03 AM, Logan Gunthorpe wrote:
When a port is removed through configfs, any connected controllers
are still active and can still send commands. This causes a
use-after-free bug which is detected by KASAN for any admin command
that dereferences req->port (like in nvmet_execute_identify_ctrl).

To fix this, disconnect all active controllers when a subsystem is
removed from a port. This ensures there are no active controllers
when the port is eventually removed.
so now we are enforcing controller existence with port configfs, right ?
sounds reasonable.
Correct.

Did you run your patches with other transport (RDMA/TCP/FC) ?
Just RDMA and loop. I suppose I could test with TCP but I don't have FC
hardware.

Great.

the code looks good:

Reviewed-by: Max Gurtovoy <[email protected]>


Logan

Reply via email to