lkml.org 
[lkml]   [2022]   [Aug]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v4 17/21] dma-buf: Move dma_buf_map_attachment() to dynamic locking specification
    Date
    Move dma-buf attachment mapping functions to the dynamic locking
    specification by asserting that the reservation lock is held.

    Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
    ---
    drivers/dma-buf/dma-buf.c | 10 ++--------
    1 file changed, 2 insertions(+), 8 deletions(-)

    diff --git a/drivers/dma-buf/dma-buf.c b/drivers/dma-buf/dma-buf.c
    index 073942bf5ae9..8e928fe6e8df 100644
    --- a/drivers/dma-buf/dma-buf.c
    +++ b/drivers/dma-buf/dma-buf.c
    @@ -1037,8 +1037,7 @@ struct sg_table *dma_buf_map_attachment(struct dma_buf_attachment *attach,
    if (WARN_ON(!attach || !attach->dmabuf))
    return ERR_PTR(-EINVAL);

    - if (dma_buf_attachment_is_dynamic(attach))
    - dma_resv_assert_held(attach->dmabuf->resv);
    + dma_resv_assert_held(attach->dmabuf->resv);

    if (attach->sgt) {
    /*
    @@ -1053,7 +1052,6 @@ struct sg_table *dma_buf_map_attachment(struct dma_buf_attachment *attach,
    }

    if (dma_buf_is_dynamic(attach->dmabuf)) {
    - dma_resv_assert_held(attach->dmabuf->resv);
    if (!IS_ENABLED(CONFIG_DMABUF_MOVE_NOTIFY)) {
    r = attach->dmabuf->ops->pin(attach);
    if (r)
    @@ -1142,15 +1140,11 @@ void dma_buf_unmap_attachment(struct dma_buf_attachment *attach,
    if (WARN_ON(!attach || !attach->dmabuf || !sg_table))
    return;

    - if (dma_buf_attachment_is_dynamic(attach))
    - dma_resv_assert_held(attach->dmabuf->resv);
    + dma_resv_assert_held(attach->dmabuf->resv);

    if (attach->sgt == sg_table)
    return;

    - if (dma_buf_is_dynamic(attach->dmabuf))
    - dma_resv_assert_held(attach->dmabuf->resv);
    -
    __unmap_dma_buf(attach, sg_table, direction);

    if (dma_buf_is_dynamic(attach->dmabuf) &&
    --
    2.37.2
    \
     
     \ /
      Last update: 2022-08-31 17:43    [W:4.046 / U:0.176 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site