[lkml]   [2019]   [Dec]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[PATCH 0/5] Support hot-unbind in IOAT

This patchset creates some common infrastructure which I will use in the
next version of the PLX driver. It adds a reference count to the
dma_device struct which is taken and released every time a channel
is allocated or freed. A call back is used to allow the driver to
free the underlying memory and do any final cleanup.

For a use-case, I've adjusted the ioat driver to properly support
hot-unbind. The driver was already pretty close as it already had
a shutdown state; so it mostly only required freeing the memory
correctly and calling ioat_shutdown at the correct time.

This patchset is based on v5.5-rc2 and a git branch is available here: ioat-hot-unbind




Logan Gunthorpe (5):
dmaengine: Store module owner in dma_device struct
dmaengine: Call module_put() after device_free_chan_resources()
dmaengine: Move dma_channel_rebalance() infrastructure up in code
dmaengine: Add reference counting to dma_device struct
dmaengine: ioat: Support in-use unbind

drivers/dma/dmaengine.c | 352 +++++++++++++++++++++-----------------
drivers/dma/ioat/init.c | 38 ++--
include/linux/dmaengine.h | 10 +-
3 files changed, 233 insertions(+), 167 deletions(-)


 \ /
  Last update: 2019-12-16 20:01    [W:0.144 / U:2.604 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site