[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 1/3] swiotlb: don't panic when the swiotlb buffer can't be allocated
On Wed, 11 May 2022, Christoph Hellwig wrote: > For historical reasons the switlb code paniced when the metadata could > not be allocated, but just printed a warning when the actual main > swiotlb buffer could not be allocated. Restore this somewhat unexpected > behavior as changing it caused a boot failure on the Microchip RISC-V > PolarFire SoC Icicle kit. > > Fixes: 6424e31b1c05 ("swiotlb: remove swiotlb_init_with_tbl and > swiotlb_init_late_with_tbl") > Reported-by: Conor Dooley <Conor.Dooley@xxxxxxxxxxxxx> > Signed-off-by: Christoph Hellwig <hch@xxxxxx> > Tested-by: Conor Dooley <Conor.Dooley@xxxxxxxxxxxxx> Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx> > --- > kernel/dma/swiotlb.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/kernel/dma/swiotlb.c b/kernel/dma/swiotlb.c > index e2ef0864eb1e5..3e992a308c8a1 100644 > --- a/kernel/dma/swiotlb.c > +++ b/kernel/dma/swiotlb.c > @@ -254,8 +254,10 @@ void __init swiotlb_init_remap(bool addressing_limit, > unsigned int flags, > tlb = memblock_alloc(bytes, PAGE_SIZE); > else > tlb = memblock_alloc_low(bytes, PAGE_SIZE); > - if (!tlb) > - panic("%s: failed to allocate tlb structure\n", __func__); > + if (!tlb) { > + pr_warn("%s: failed to allocate tlb structure\n", __func__); > + return; > + } > > if (remap && remap(tlb, nslabs) < 0) { > memblock_free(tlb, PAGE_ALIGN(bytes)); > -- > 2.30.2 >
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |