NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: port-arm/54199: arm bus_dmamap_sync assertion failure
The following reply was made to PR port-arm/54199; it has been noted by GNATS.
From: Izumi Tsutsui <tsutsui%ceres.dti.ne.jp@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: thorpej%me.com@localhost, tsutsui%ceres.dti.ne.jp@localhost
Subject: Re: port-arm/54199: arm bus_dmamap_sync assertion failure
Date: Tue, 14 May 2019 00:02:14 +0900
> System was copying a large amount of data (comprised mostly of small files) from one USB-attached SSD to another. "tar" command output was being relayed over an ssh session. At some point, the kernel panic'd:
>
> [ 1735156.504667] panic: kernel diagnostic assertion "offset < map->dm_mapsize" failed: file "../../../../arch/arm/arm32/bus_dma.c", line 1051 offset 0 mapsize 0
I have a question:
Is it a valid operation to call bus_dmamap_load(9) and bus_dmamap_sync(9)
with dmamap dm_mapsize == 0?
In that case, the assertion "offset < map->dm_mapsize" always fails
even in case of offset==0.
Back in 2011 there was a report that src/sys/dev/ic/ahcisata_core.c
could cause zero-sized dmamap:
http://www.re.soum.co.jp/~fukaumi/ml/netbsd/201101/msg00003.html
and I committed a fix to avoid such calls.
http://mail-index.netbsd.org/source-changes/2011/01/10/msg017063.html
Maybe some other drivers have the similar ops, but if it's vaild ops
all assertion should be fixed.
---
Izumi Tsutsui
Home |
Main Index |
Thread Index |
Old Index