Thread (4 messages) 4 messages, 2 authors, 21h ago

[REGRESSION] vhost_iotlb: bound map allocation in add_range breaks vhost-vdpa on hosts with fragmented memory

flat view

From: Dragos Tatulea <dtatulea@nvidia.com>
Date: 2026-10-28 12:44:37

Hi,

We've started seeing regressions for a while in our verification CI for
vDPA Live Migration tests. Occasionally the FW returns a syndrome
related to invalid mappings during device reset.

We've narrowed this down to commit 1ed35ac7f3fe "vhost_iotlb: bound map
allocation in add_range" which limits the iotlbs to 2K by default. On a
host with fragmented memory you can get easily more than 2K entries.
This results in truncated/incomplete iotlbs mapped to the device and when
the rings happen to be outside of the first 2K mappings the FW will complain
because it got addresses that are not mapped.

I'm not sure how to fix this though:

- LLM suggests setting the 2K limit only in VA mode and using 0 as
  before in PA mode because PA mode is limited anyway. Does this
  work?

- Can we detect this and reject the device / stop the device at boot time?
  Probably not as this doesn't cover Live Migration.

Any thoughts?

Thanks,
Dragos
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help