lkml.org 
[lkml]   [2022]   [Aug]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.19 319/365] swiotlb: panic if nslabs is too small
    Date
    From: Dongli Zhang <dongli.zhang@oracle.com>

    [ Upstream commit 0bf28fc40d89b1a3e00d1b79473bad4e9ca20ad1 ]

    Panic on purpose if nslabs is too small, in order to sync with the remap
    retry logic.

    In addition, print the number of bytes for tlb alloc failure.

    Signed-off-by: Dongli Zhang <dongli.zhang@oracle.com>
    Signed-off-by: Christoph Hellwig <hch@lst.de>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    kernel/dma/swiotlb.c | 6 +++++-
    1 file changed, 5 insertions(+), 1 deletion(-)

    diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c
    index 5830dce6081b..f5304e2f6a35 100644
    --- a/kernel/dma/swiotlb.c
    +++ b/kernel/dma/swiotlb.c
    @@ -242,6 +242,9 @@ void __init swiotlb_init_remap(bool addressing_limit, unsigned int flags,
    if (swiotlb_force_disable)
    return;

    + if (nslabs < IO_TLB_MIN_SLABS)
    + panic("%s: nslabs = %lu too small\n", __func__, nslabs);
    +
    /*
    * By default allocate the bounce buffer memory from low memory, but
    * allow to pick a location everywhere for hypervisors with guest
    @@ -254,7 +257,8 @@ void __init swiotlb_init_remap(bool addressing_limit, unsigned int flags,
    else
    tlb = memblock_alloc_low(bytes, PAGE_SIZE);
    if (!tlb) {
    - pr_warn("%s: failed to allocate tlb structure\n", __func__);
    + pr_warn("%s: Failed to allocate %zu bytes tlb structure\n",
    + __func__, bytes);
    return;
    }

    --
    2.35.1


    \
     
     \ /
      Last update: 2022-08-23 11:22    [W:4.027 / U:0.212 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site