hc
2024-05-10 9999e48639b3cecb08ffb37358bcba3b48161b29
kernel/drivers/gpu/drm/vmwgfx/vmwgfx_blit.c
....@@ -27,6 +27,7 @@
2727 **************************************************************************/
2828
2929 #include "vmwgfx_drv.h"
30
+#include <linux/highmem.h>
3031
3132 /*
3233 * Template that implements find_first_diff() for a generic
....@@ -374,12 +375,12 @@
374375 copy_size = min_t(u32, copy_size, PAGE_SIZE - src_page_offset);
375376
376377 if (unmap_src) {
377
- ttm_kunmap_atomic_prot(d->src_addr, d->src_prot);
378
+ kunmap_atomic(d->src_addr);
378379 d->src_addr = NULL;
379380 }
380381
381382 if (unmap_dst) {
382
- ttm_kunmap_atomic_prot(d->dst_addr, d->dst_prot);
383
+ kunmap_atomic(d->dst_addr);
383384 d->dst_addr = NULL;
384385 }
385386
....@@ -388,8 +389,8 @@
388389 return -EINVAL;
389390
390391 d->dst_addr =
391
- ttm_kmap_atomic_prot(d->dst_pages[dst_page],
392
- d->dst_prot);
392
+ kmap_atomic_prot(d->dst_pages[dst_page],
393
+ d->dst_prot);
393394 if (!d->dst_addr)
394395 return -ENOMEM;
395396
....@@ -401,8 +402,8 @@
401402 return -EINVAL;
402403
403404 d->src_addr =
404
- ttm_kmap_atomic_prot(d->src_pages[src_page],
405
- d->src_prot);
405
+ kmap_atomic_prot(d->src_pages[src_page],
406
+ d->src_prot);
406407 if (!d->src_addr)
407408 return -ENOMEM;
408409
....@@ -459,18 +460,18 @@
459460
460461 /* Buffer objects need to be either pinned or reserved: */
461462 if (!(dst->mem.placement & TTM_PL_FLAG_NO_EVICT))
462
- lockdep_assert_held(&dst->resv->lock.base);
463
+ dma_resv_assert_held(dst->base.resv);
463464 if (!(src->mem.placement & TTM_PL_FLAG_NO_EVICT))
464
- lockdep_assert_held(&src->resv->lock.base);
465
+ dma_resv_assert_held(src->base.resv);
465466
466
- if (dst->ttm->state == tt_unpopulated) {
467
- ret = dst->ttm->bdev->driver->ttm_tt_populate(dst->ttm, &ctx);
467
+ if (!ttm_tt_is_populated(dst->ttm)) {
468
+ ret = dst->bdev->driver->ttm_tt_populate(dst->bdev, dst->ttm, &ctx);
468469 if (ret)
469470 return ret;
470471 }
471472
472
- if (src->ttm->state == tt_unpopulated) {
473
- ret = src->ttm->bdev->driver->ttm_tt_populate(src->ttm, &ctx);
473
+ if (!ttm_tt_is_populated(src->ttm)) {
474
+ ret = src->bdev->driver->ttm_tt_populate(src->bdev, src->ttm, &ctx);
474475 if (ret)
475476 return ret;
476477 }
....@@ -499,9 +500,9 @@
499500 }
500501 out:
501502 if (d.src_addr)
502
- ttm_kunmap_atomic_prot(d.src_addr, d.src_prot);
503
+ kunmap_atomic(d.src_addr);
503504 if (d.dst_addr)
504
- ttm_kunmap_atomic_prot(d.dst_addr, d.dst_prot);
505
+ kunmap_atomic(d.dst_addr);
505506
506507 return ret;
507508 }