nvk: Drop most buffer tracking

If it's backed by an nvk_device_memory, we don't need to track it since
we always add all of those to every submit so that bindless works.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/24326>
This commit is contained in:
Faith Ekstrand 2023-01-30 20:11:56 -06:00 committed by Marge Bot
parent a43e3fc80b
commit e8183da71f
5 changed files with 0 additions and 41 deletions

View file

@ -5,7 +5,6 @@
#include "nvk_device_memory.h"
#include "nouveau_bo.h"
#include "nouveau_push.h"
#include "vulkan/runtime/vk_buffer.h"
struct nvk_device_memory;
@ -18,14 +17,6 @@ struct nvk_buffer {
VK_DEFINE_HANDLE_CASTS(nvk_buffer, vk.base, VkBuffer, VK_OBJECT_TYPE_BUFFER)
static void
nvk_push_buffer_ref(struct nouveau_ws_push *push,
const struct nvk_buffer *buffer,
enum nouveau_ws_bo_map_flags flags)
{
nouveau_ws_push_ref(push, buffer->mem->bo, flags);
}
static inline uint64_t
nvk_buffer_address(const struct nvk_buffer *buffer, uint64_t offset)
{

View file

@ -25,9 +25,6 @@ nvk_CmdBlitImage2(VkCommandBuffer commandBuffer,
assert(nvk_get_format(src->vk.format)->supports_2d_blit);
assert(nvk_get_format(dst->vk.format)->supports_2d_blit);
nvk_push_image_ref(p, src, NOUVEAU_WS_BO_RD);
nvk_push_image_ref(p, dst, NOUVEAU_WS_BO_WR);
P_IMMD(p, NV902D, SET_CLIP_ENABLE, V_FALSE);
P_IMMD(p, NV902D, SET_COLOR_KEY_ENABLE, V_FALSE);
P_IMMD(p, NV902D, SET_RENDER_ENABLE_C, MODE_TRUE);

View file

@ -289,9 +289,6 @@ nvk_CmdCopyBuffer2(VkCommandBuffer commandBuffer,
VK_FROM_HANDLE(nvk_buffer, src, pCopyBufferInfo->srcBuffer);
VK_FROM_HANDLE(nvk_buffer, dst, pCopyBufferInfo->dstBuffer);
nvk_push_buffer_ref(cmd->push, src, NOUVEAU_WS_BO_RD);
nvk_push_buffer_ref(cmd->push, dst, NOUVEAU_WS_BO_WR);
for (unsigned r = 0; r < pCopyBufferInfo->regionCount; r++) {
const VkBufferCopy2 *region = &pCopyBufferInfo->pRegions[r];
@ -337,9 +334,6 @@ nvk_CmdCopyBufferToImage2(VkCommandBuffer commandBuffer,
VK_FROM_HANDLE(nvk_buffer, src, pCopyBufferToImageInfo->srcBuffer);
VK_FROM_HANDLE(nvk_image, dst, pCopyBufferToImageInfo->dstImage);
nvk_push_buffer_ref(cmd->push, src, NOUVEAU_WS_BO_RD);
nvk_push_image_ref(cmd->push, dst, NOUVEAU_WS_BO_WR);
for (unsigned r = 0; r < pCopyBufferToImageInfo->regionCount; r++) {
const VkBufferImageCopy2 *region = &pCopyBufferToImageInfo->pRegions[r];
struct vk_image_buffer_layout buffer_layout =
@ -408,9 +402,6 @@ nvk_CmdCopyImageToBuffer2(VkCommandBuffer commandBuffer,
VK_FROM_HANDLE(nvk_image, src, pCopyImageToBufferInfo->srcImage);
VK_FROM_HANDLE(nvk_buffer, dst, pCopyImageToBufferInfo->dstBuffer);
nvk_push_image_ref(cmd->push, src, NOUVEAU_WS_BO_RD);
nvk_push_buffer_ref(cmd->push, dst, NOUVEAU_WS_BO_WR);
for (unsigned r = 0; r < pCopyImageToBufferInfo->regionCount; r++) {
const VkBufferImageCopy2 *region = &pCopyImageToBufferInfo->pRegions[r];
struct vk_image_buffer_layout buffer_layout =
@ -479,9 +470,6 @@ nvk_CmdCopyImage2(VkCommandBuffer commandBuffer,
VK_FROM_HANDLE(nvk_image, src, pCopyImageInfo->srcImage);
VK_FROM_HANDLE(nvk_image, dst, pCopyImageInfo->dstImage);
nvk_push_image_ref(cmd->push, src, NOUVEAU_WS_BO_RD);
nvk_push_image_ref(cmd->push, dst, NOUVEAU_WS_BO_WR);
for (unsigned r = 0; r < pCopyImageInfo->regionCount; r++) {
const VkImageCopy2 *region = &pCopyImageInfo->pRegions[r];
@ -547,8 +535,6 @@ nvk_CmdClearColorImage(VkCommandBuffer commandBuffer,
VK_FROM_HANDLE(nvk_image, dst, image);
struct nouveau_ws_push *p = cmd->push;
nvk_push_image_ref(p, dst, NOUVEAU_WS_BO_WR);
P_IMMD(p, NV902D, SET_OPERATION, V_SRCCOPY);
P_IMMD(p, NV902D, SET_CLIP_ENABLE, V_FALSE);
@ -676,8 +662,6 @@ nvk_CmdFillBuffer(VkCommandBuffer commandBuffer,
uint32_t pitch = 1 << 19;
uint32_t line = pitch / 4;
nvk_push_buffer_ref(p, dst, NOUVEAU_WS_BO_WR);
P_IMMD(p, NV902D, SET_OPERATION, V_SRCCOPY);
P_MTHD(p, NV902D, SET_DST_FORMAT);
@ -752,8 +736,6 @@ nvk_CmdUpdateBuffer(VkCommandBuffer commandBuffer,
VkDeviceSize dst_addr = nvk_buffer_address(dst, 0);
nvk_push_buffer_ref(p, dst, NOUVEAU_WS_BO_WR);
P_IMMD(p, NV902D, SET_OPERATION, V_SRCCOPY);
P_MTHD(p, NV902D, SET_DST_OFFSET_UPPER);

View file

@ -424,7 +424,6 @@ nvk_CmdBeginRendering(VkCommandBuffer commandBuffer,
assert(render->samples == 0 || render->samples == image->vk.samples);
render->samples |= image->vk.samples;
nvk_push_image_ref(cmd->push, image, NOUVEAU_WS_BO_WR);
uint64_t addr = nvk_image_base_address(image) + level->offset_B;
P_MTHD(p, NV9097, SET_COLOR_TARGET_A(i));
@ -491,7 +490,6 @@ nvk_CmdBeginRendering(VkCommandBuffer commandBuffer,
assert(render->samples == 0 || render->samples == image->vk.samples);
render->samples |= image->vk.samples;
nvk_push_image_ref(cmd->push, image, NOUVEAU_WS_BO_WR);
uint64_t addr = nvk_image_base_address(image) + level->offset_B;
P_MTHD(p, NV9097, SET_ZT_A);

View file

@ -6,7 +6,6 @@
#include "nil_image.h"
#include "nouveau_bo.h"
#include "nouveau_push.h"
#include "vulkan/runtime/vk_image.h"
struct nvk_physical_device;
@ -29,14 +28,6 @@ struct nvk_image {
VK_DEFINE_HANDLE_CASTS(nvk_image, vk.base, VkImage, VK_OBJECT_TYPE_IMAGE)
static void
nvk_push_image_ref(struct nouveau_ws_push *push,
const struct nvk_image *image,
enum nouveau_ws_bo_map_flags flags)
{
nouveau_ws_push_ref(push, image->mem->bo, flags);
}
static inline uint64_t
nvk_image_base_address(const struct nvk_image *image)
{