mirror of
https://github.com/apache/nuttx.git
synced 2026-10-07 06:15:20 +00:00
rptun: handle uint16_t overflow
Signed-off-by: ligd <liguiding1@xiaomi.com>
This commit is contained in:
parent
e368ce6c07
commit
c2c1358fc7
1 changed files with 3 additions and 3 deletions
|
|
@ -1262,15 +1262,15 @@ int rptun_panic(FAR const char *cpuname)
|
|||
int rptun_buffer_nused(FAR struct rpmsg_virtio_device *rvdev, bool rx)
|
||||
{
|
||||
FAR struct virtqueue *vq = rx ? rvdev->rvq : rvdev->svq;
|
||||
uint16_t nused = vq->vq_ring.avail->idx - vq->vq_ring.used->idx;
|
||||
|
||||
if ((rpmsg_virtio_get_role(rvdev) == RPMSG_MASTER) ^ rx)
|
||||
{
|
||||
return vq->vq_ring.avail->idx - vq->vq_ring.used->idx;
|
||||
return nused;
|
||||
}
|
||||
else
|
||||
{
|
||||
return vq->vq_nentries -
|
||||
(vq->vq_ring.avail->idx - vq->vq_ring.used->idx);
|
||||
return vq->vq_nentries - nused;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue