No idea what has changed. The changelog matches the one for the previous driver.
Ran diff on it.
Added the official support for:
+ NVIDIA T1000 8GB 1FF0 1028 1612 J
+ NVIDIA T1000 8GB 1FF0 103C 1612 J
+ NVIDIA T1000 8GB 1FF0 10DE 1612 J
+ NVIDIA T1000 8GB 1FF0 17AA 1612 J
+ NVIDIA T400 4GB 1FF2 1028 1613 J
+ NVIDIA T400 4GB 1FF2 103C 1613 J
+ NVIDIA T400 4GB 1FF2 10DE 1613 J
+ NVIDIA T400 4GB 1FF2 17AA 1613 J
+ NVIDIA RTX A4500 2232 1028 163C K
+ NVIDIA RTX A4500 2232 103C 163C K
+ NVIDIA RTX A4500 2232 10DE 163C K
+ NVIDIA RTX A4500 2232 17AA 163C K
+ NVIDIA RTX A2000 12GB 2571 1028 1611 K
+ NVIDIA RTX A2000 12GB 2571 103C 1611 K
+ NVIDIA RTX A2000 12GB 2571 10DE 1611 K
+ NVIDIA RTX A2000 12GB 2571 17AA 1611 K
+ NVIDIA A2 25B6 10DE 157E K
There’s a small change in nv-dma.c:
--- a/NVIDIA-Linux-x86_64-495.44/kernel/nvidia/nv-dma.c
+++ b/NVIDIA-Linux-x86_64-495.46/kernel/nvidia/nv-dma.c
@@ -224,10 +224,13 @@ NV_STATUS nv_map_dma_map_scatterlist(nv_dma_map_t *dma_map)
NV_FOR_EACH_DMA_SUBMAP(dma_map, submap, i)
{
- submap->sg_map_count = dma_map_sg(dma_map->dev,
- submap->sgt.sgl,
- submap->sgt.orig_nents,
- DMA_BIDIRECTIONAL);
+ /* Imported SGTs will have already been mapped by the exporter. */
+ submap->sg_map_count = submap->imported ?
+ submap->sgt.orig_nents :
+ dma_map_sg(dma_map->dev,
+ submap->sgt.sgl,
+ submap->sgt.orig_nents,
+ DMA_BIDIRECTIONAL);
if (submap->sg_map_count == 0)
{
status = NV_ERR_OPERATING_SYSTEM;
@@ -254,6 +257,13 @@ void nv_unmap_dma_map_scatterlist(nv_dma_map_t *dma_map)
{
break;
}
+
+ if (submap->imported)
+ {
+ /* Imported SGTs will be unmapped by the exporter. */
+ continue;
+ }
+
dma_unmap_sg(dma_map->dev, submap->sgt.sgl,
submap->sgt.orig_nents,
DMA_BIDIRECTIONAL);
In short it’s safe not to update.