memset(&bp, 0, sizeof(bp));
        bp.size = size;
        bp.domain = AMDGPU_GEM_DOMAIN_GTT;
-       bp.flags = AMDGPU_GEM_CREATE_CPU_GTT_USWC |
-               AMDGPU_GEM_CREATE_SHADOW;
+       bp.flags = AMDGPU_GEM_CREATE_CPU_GTT_USWC;
        bp.type = ttm_bo_type_kernel;
        bp.resv = bo->tbo.base.resv;
        bp.bo_ptr_size = sizeof(struct amdgpu_bo);
        struct amdgpu_bo *bo_ptr;
        int r;
 
-       bp->flags = bp->flags & ~AMDGPU_GEM_CREATE_SHADOW;
        bp->bo_ptr_size = sizeof(struct amdgpu_bo_user);
        r = amdgpu_bo_create(adev, bp, &bo_ptr);
        if (r)
        amdgpu_bo_print_flag(m, bo, NO_CPU_ACCESS);
        amdgpu_bo_print_flag(m, bo, CPU_GTT_USWC);
        amdgpu_bo_print_flag(m, bo, VRAM_CLEARED);
-       amdgpu_bo_print_flag(m, bo, SHADOW);
        amdgpu_bo_print_flag(m, bo, VRAM_CONTIGUOUS);
        amdgpu_bo_print_flag(m, bo, VM_ALWAYS_VALID);
        amdgpu_bo_print_flag(m, bo, EXPLICIT_SYNC);
 
 #define AMDGPU_GEM_CREATE_CPU_GTT_USWC         (1 << 2)
 /* Flag that the memory should be in VRAM and cleared */
 #define AMDGPU_GEM_CREATE_VRAM_CLEARED         (1 << 3)
-/* Flag that create shadow bo(GTT) while allocating vram bo */
-#define AMDGPU_GEM_CREATE_SHADOW               (1 << 4)
 /* Flag that allocating the BO should use linear VRAM */
 #define AMDGPU_GEM_CREATE_VRAM_CONTIGUOUS      (1 << 5)
 /* Flag that BO is always valid in this VM */