Jon Turney writes:
> per POSIX, limits.h may define PAGE_SIZE when the value is not indeterminate
>
> v2: just change the variable name, since there's no intended correlation
> here between this value and the machine's actual page size.
>
> Cc: Scott D Phillips
> Sign
Jason Ekstrand writes:
> It's safer to set them there because we have the opportunity to properly
> handle combining flags if a BO is imported more than once.
Reviewed-by: Scott D Phillips
___
mesa-dev mailing list
mesa-dev@lists.freedeskt
Jason Ekstrand writes:
> ---
> src/intel/vulkan/anv_allocator.c | 54
> +++-
> 1 file changed, 53 insertions(+), 1 deletion(-)
>
> diff --git a/src/intel/vulkan/anv_allocator.c
> b/src/intel/vulkan/anv_allocator.c
> index 697da5f..f18e015 100644
> ---
Jason Ekstrand writes:
> From: Scott D Phillips
>
> Co-authored-by: Jason Ekstrand
Reviewed-by: Scott D Phillips
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
+gen_48b_address(uint64_t v)
> +{
> + const int shift = 63 - 47;
> + return (uint64_t)(v << shift) >> shift;
The cast from uint64_t to uint64_t seems like a bit of unnecessary
distraction, but it's like the other one so either way:
Reviewed-by: Scott D Phillips
> +}
>
Jason Ekstrand writes:
> Now that we've done all that refactoring, addresses are now being
> directly written into surface states by ISL and BLORP whenever a BO is
> pinned so there's really nothing to do besides enable it.
Reviewed-by: Scott D
Jason Ekstrand writes:
Reviewed-by: Scott D Phillips
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Jason Ekstrand writes:
> From: Scott D Phillips
>
> v2 (Jason Ekstrand):
> - Break up Scott's mega-patch
>
> Reviewed-by: Jason Ekstrand
Reviewed-by: Scott D Phillips
___
mesa-dev mailing list
mesa-dev@lists.fre
inish is called in a sensible
> location.
Reviewed-by: Scott D Phillips
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
e.
Reviewed-by: Scott D Phillips
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
he addresses in the surface
> state and doesn't really need the image view anymore.
Reviewed-by: Scott D Phillips
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Jason Ekstrand writes:
> This is better than having BO and offset fields.
Reviewed-by: Scott D Phillips
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Jason Ekstrand writes:
> From: Scott D Phillips
>
> These will be used to assign virtual addresses to soft pinned
> buffers in a later patch.
>
> Two allocators are added for separate 'low' and 'high' virtual
> memory areas. Another alternative would have been to add a
>
Jason Ekstrand writes:
Reviewed-by: Scott D Phillips
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Jason Ekstrand writes:
> Instead of storing a BO and offset separately, use an anv_address. This
> changes anv_fill_buffer_surface_state to use anv_address and we now call
> anv_address_physical and pass that into ISL.
Reviewed-by: Scott D
Reviewed-by: Scott D Phillips
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
om secondaries. The new helper doesn't
> actually modify the batch in any way but instead just adjusts the
> relocation as needed.
Reviewed-by: Scott D Phillips
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev
Jason Ekstrand writes:
> From: Scott D Phillips
>
> v2 (Jason Ekstrand):
> - Split the blorp bit into it's own patch and re-order a bit
> - Use anv_address helpers
>
> Reviewed-by: Jason Ekstrand
Reviewed-by: Scott D Phillips
___
Jason Ekstrand <ja...@jlekstrand.net> writes:
> On Tue, May 8, 2018 at 10:58 AM, Jordan Justen <jordan.l.jus...@intel.com>
> wrote:
>
>> On 2018-05-07 17:30:43, Scott D Phillips wrote:
>> > From: Jason Ekstrand <jason.ekstr...@intel.com>
>> >
ew features.
I think the discussion about aliasing ppgtt won't impact this bit of
code where we've already checked for gtt_size > 4 GiB. Maybe we should
warn about aliasing ppgtt on newer gens? Either way,
Reviewed-by: Scott D Phillips <scott.d.phill...@intel.com>
> ---
> src/mesa/drivers
Good idea, thanks! Fixed for v2.
I think the ALIASING_PPGTT test is actually redundant with the
I915_CONTEXT_PARAM_GTT_SIZE > 4 GiB test that you're already doing. So
patch v1 is
Reviewed-by: Scott D Phillips <scott.d.phill...@intel.com>
> --Ken
> _
the bottom 32 bits of memory addresses.
You mentioned it in the thread here, but I think it's important to
mention in the comment too that the cache is considering the tuple of
the bottom 32 bits and the vertex buffer's index in the state
message. Otherwise it would look like an individual set of verti
emory we're
wasting due to overallocation, either here or by bucketing.
I don't quite understand Chris's comment so this isn't meant to be an
assertion that I think what he's saying isn't an issue, but fwiw:
Reviewed-by: Scott D Phillips <scott.d.phill...@intel.com>
___
mgr *bufmgr,
> + enum brw_memory_zone memzone,
> + uint64_t size,
> + uint64_t alignment)
> +{
> + uint64_t addr = __vma_alloc(bufmgr, memzone, size, alignment);
> +
> + /* Canonicalize the address.
> +*
> +* The Br
like ANY,
where it allocates from either the high or low vma ranges. That's only
relevant though because I apply a size restriction to the 'high'
range. There's no such restriction here, so no need to have high
allocations try the low range if they fail.
Reviewed-by: Scott D Phillips <scott.d.phi
With submit, it's still easy to grep for
> the older information, and the new information is nice too.
Reviewed-by: Scott D Phillips <scott.d.phill...@intel.com>
> ---
> src/mesa/drivers/dri/i965/intel_batchbuffer.c | 4 +++-
> 1 file
Kenneth Graunke <kenn...@whitecape.org> writes:
> I want to use this in a bucketing allocator for i965.
Reviewed-by: Scott D Phillips <scott.d.phill...@intel.com>
> ---
> src/util/vma.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/s
ses so that the canonicalization code
gets better testing.
Reviewed-by: Scott D Phillips <scott.d.phill...@intel.com>
Tested-by: Scott D Phillips <scott.d.phill...@intel.com>
---
src/util/Makefile.sources | 4 +-
src/util/meson.build | 2 +
src/util/vma.
These will be used to assign virtual addresses to soft pinned
buffers in a later patch.
Two allocators are added for separate 'low' and 'high' virtual
memory areas. Another alternative would have been to add a
double-sided allocator, which wasn't done here just because it
didn't appear to give
---
src/intel/vulkan/anv_allocator.c | 16 +++-
src/intel/vulkan/anv_batch_chain.c | 27 +--
src/intel/vulkan/anv_device.c | 32
src/intel/vulkan/anv_private.h | 16
src/intel/vulkan/anv_queue.c
The state_pools reserve virtual address space of the full
BLOCK_POOL_MEMFD_SIZE, but maintain the current behavior of
growing from the middle.
v2: - rename block_pool::offset to block_pool::start_address (Jason)
- assign state pool start_address statically (Jason)
---
References to pinned bos won't need relocated, so just write the
final value of the reference into the bo. Add a `set` to the
relocation lists for tracking dependencies that were previously
tracked by relocations.
v2: - visit bos from the dependency set in a deterministic order (Jason)
---
A later patch will make use of this in other places. Also, remove
dependency on undefined behavior of left-shifting a signed value.
---
src/intel/vulkan/anv_batch_chain.c | 12 +---
src/intel/vulkan/anv_private.h | 15 +++
2 files changed, 16 insertions(+), 11 deletions(-)
Soft pinning lets us satisfy the binding table address
requirements without using both sides of a growing state_pool.
If you do use both sides of a state pool, then you need to read
the state pool's center_bo_offset (with the device mutex held) to
know the final offset of relocations that target
The test pseudo-randomly makes allocations and deallocations with
the virtual memory allocator and checks that the results are
consistent. Specifically, we test that:
* no result from the allocator overlaps an already allocated range
* allocated memory fulfills the stated alignment requirement
Round two of anv softpin. The only notable feedback not incorporated in
the series is Chris's suggestion about embedding the vma's allocation
node in struct anv_bo; I'm leaving the allocator bit to Jason.
Jason Ekstrand (1):
util: Add a virtual memory allocator
Scott D Phillips (7):
util
Jason Ekstrand writes:
> If I'm honest, I don't really like the way this patch worked out. It has
> the virtue of being fairly simple and a nice incremental change. However,
> it seems to me like we should be able to do better. That said, I don't
> really know how
Jason Ekstrand <ja...@jlekstrand.net> writes:
> On Wed, May 2, 2018 at 9:01 AM, Scott D Phillips <scott.d.phill...@intel.com
>> wrote:
>
>> These will be used to assign virtual addresses to soft pinned
>> buffers in a later patch.
>> ---
Scott D Phillips <scott.d.phill...@intel.com> writes:
> The test pseudo-randomly makes allocations and deallocations with
> the virtual memory allocator and checks that the results are
> consistent. Specifically, we test that:
>
> * no result from the allocator overlaps
The test pseudo-randomly makes allocations and deallocations with
the virtual memory allocator and checks that the results are
consistent. Specifically, we test that:
* no result from the allocator overlaps an already allocated range
* allocated memory fulfills the stated alignment requirement
Chris Wilson <ch...@chris-wilson.co.uk> writes:
> Quoting Scott D Phillips (2018-05-02 17:01:05)
>> +bool
>> +anv_vma_alloc(struct anv_device *device, struct anv_bo *bo)
>> +{
>> + if (!(bo->flags & EXEC_OBJECT_PINNED))
>> + return t
Clear a set back to the state of having zero entries.
---
src/util/set.c | 23 +++
src/util/set.h | 3 +++
2 files changed, 26 insertions(+)
diff --git a/src/util/set.c b/src/util/set.c
index d71f771807f..2c9b09319ff 100644
--- a/src/util/set.c
+++ b/src/util/set.c
@@ -155,6
Soft pinning lets us satisfy the binding table address
requirements without using both sides of a growing state_pool.
If you do use both sides of a state pool, then you need to read
the state pool's center_bo_offset (with the device mutex held) to
know the final offset of relocations that target
The last use of the field was removed in 2015's ("48a87f4ba06
anv/queue: Get rid of the serial")
---
src/intel/vulkan/anv_device.c | 1 -
src/intel/vulkan/anv_private.h | 2 --
2 files changed, 3 deletions(-)
diff --git a/src/intel/vulkan/anv_device.c b/src/intel/vulkan/anv_device.c
index
References to pinned bos won't need relocated, so just write the
final value of the reference into the bo. Add a `set` to the
relocation lists for tracking dependencies that were previously
tracked by relocations.
---
src/intel/vulkan/anv_batch_chain.c | 36
---
src/intel/vulkan/anv_allocator.c | 16 +++-
src/intel/vulkan/anv_batch_chain.c | 27 +--
src/intel/vulkan/anv_device.c | 32
src/intel/vulkan/anv_private.h | 16
src/intel/vulkan/anv_queue.c
These will be used to assign virtual addresses to soft pinned
buffers in a later patch.
---
src/intel/vulkan/anv_device.c | 75 ++
src/intel/vulkan/anv_private.h | 11 +++
2 files changed, 86 insertions(+)
diff --git a/src/intel/vulkan/anv_device.c
The state_pools reserve virtual address space of the full
BLOCK_POOL_MEMFD_SIZE, but maintain the current behavior of
growing from the middle.
---
src/intel/vulkan/anv_allocator.c | 25 +
src/intel/vulkan/anv_device.c| 13 +
src/intel/vulkan/anv_private.h
A later patch will make use of this in other places. Also, remove
dependency on undefined behavior of left-shifting a signed value.
---
src/intel/vulkan/anv_batch_chain.c | 12 +---
src/intel/vulkan/anv_private.h | 15 +++
2 files changed, 16 insertions(+), 11 deletions(-)
From: Jason Ekstrand
This is simple linear-walk first-fit allocator roughly based on the
allocator in the radeon winsys code. This allocator has two primary
functional differences:
1) It cleanly returns 0 on allocation failure
2) It allocates addresses top-down
This series teaches anv how to pick its own virtual graphics addresses
instead of using the relocation facility provided by the kernel.
Jason Ekstrand (1):
util: Add a virtual memory allocator
Scott D Phillips (8):
util/set: add a set_clear function
anv: remove unused field anv_queue::pool
Kenneth Graunke <kenn...@whitecape.org> writes:
> On Monday, April 30, 2018 10:25:50 AM PDT Scott D Phillips wrote:
>> Removes a place where gtt mapping is used.
>>
>> Reviewed-by: Nanley Chery <nanley.g.ch...@intel.com>
>> Reviewed-by: Chris Wilson <ch.
Kenneth Graunke <kenn...@whitecape.org> writes:
> On Monday, April 30, 2018 10:25:39 AM PDT Scott D Phillips wrote:
>> Here is a v2 of the 86 gtt maps series with the refactor
>> suggestions by Chris folded in.
>>
>> Chris Wilson (8):
>> i965: Move u
Kenneth Graunke <kenn...@whitecape.org> writes:
> On Monday, April 30, 2018 10:25:49 AM PDT Scott D Phillips wrote:
>> Rename the (un)map_gtt functions to (un)map_map (map by
>> returning a map) and add new functions (un)map_tiled_memcpy that
>> retur
Matt Turner <matts...@gmail.com> writes:
> On Mon, Apr 30, 2018 at 10:25 AM, Scott D Phillips
> <scott.d.phill...@intel.com> wrote:
>> The reference for MOVNTDQA says:
>>
>> For WC memory type, the nontemporal hint may be implemented by
>&g
o make recursive
use of the map function without running afoul of the state
management.
Reviewed-by: Scott D Phillips <scott.d.phill...@intel.com>
---
src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 96 ++-
1 file changed, 64 insertions(+), 32 deletions(-)
diff --gi
Similar to the transformation applied to linear_to_ytiled, also align
each readback from the ytiled source to a cacheline (i.e. transfer a
whole cacheline from the source before moving on to the next column).
This will allow us to utilize movntqda (_mm_stream_si128) in a
subsequent patch to obtain
From: Chris Wilson
Reorder code to avoid a forward declaration in the next patch.
Signed-off-by: Chris Wilson
---
src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 24
1 file changed, 12 insertions(+), 12 deletions(-)
before map_etc
i965: Move unmap_depthstencil before map_depthstencil
i965: Record mipmap resolver for unmapping
i965/miptree: Split miptree_{,un}map logic and state management
Scott D Phillips (5):
i965/tiled_memcpy: ytiled_to_linear a cache line at a time
i965/tiled_memcpy: inline movntdqa
Rename the (un)map_gtt functions to (un)map_map (map by
returning a map) and add new functions (un)map_tiled_memcpy that
return a shadow buffer populated with the intel_tiled_memcpy
functions.
Tiling/detiling with the cpu will be the only way to handle Yf/Ys
tiling, when support is added for
From: Chris Wilson
Reorder code to avoid a forward declaration in the next patch.
Signed-off-by: Chris Wilson
---
src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 114 +-
1 file changed, 57 insertions(+), 57
From: Chris Wilson
Reorder code to avoid a forward declaration in the next patch.
Signed-off-by: Chris Wilson
---
src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 42 +--
1 file changed, 21 insertions(+), 21
The reference for MOVNTDQA says:
For WC memory type, the nontemporal hint may be implemented by
loading a temporary internal buffer with the equivalent of an
aligned cache line without filling this data to the cache.
[...] Subsequent MOVNTDQA reads to unread portions of the WC
Call back to intel_miptree_map when mapping the separate depth
miptree in map_depthstencil. This brings us back to the mapping
method decision tree in miptree_map where we will then find the
best mapping method for depth.
---
src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 58
From: Chris Wilson
Reorder code to avoid a forward declaration in the next patch.
Signed-off-by: Chris Wilson
Reviewed-by: Samuel Iglesias Gonsálvez
---
src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 12 ++--
he two if-chains become out of
sync.
Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk>
Cc: Kenneth Graunke <kenn...@whitecape.org>
Cc: Scott D Phillips <scott.d.phill...@intel.com>
Reviewed-by: Scott D Phillips <scott.d.phill...@intel.com>
---
src/mesa/drivers/dri
Removes a place where gtt mapping is used.
Reviewed-by: Nanley Chery
Reviewed-by: Chris Wilson
---
src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git
From: Chris Wilson
Reorder code to avoid a forward declaration in the next patch.
Signed-off-by: Chris Wilson
---
src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 44 +--
1 file changed, 22 insertions(+), 22
From: Chris Wilson
Reorder code to avoid a forward declaration in the next patch.
Signed-off-by: Chris Wilson
---
src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 60 +--
1 file changed, 30 insertions(+), 30
Dylan Baker <dy...@pnwbakers.com> writes:
> It turns out that the blocking target we had was hiding some race
> conditions in the anv driver with anv_extensions.h generation, we should
> fix those.
>
> CC: Scott D Phillips <scott.d.phill...@intel.com>
> CC: Mark
tion here based on .end, the old size, seems like it would
have to be wrong because we're trying to satisfy the post condition that
there is enough room for .next on each side. So,
Reviewed-by: Scott D Phillips <scott.d.phill...@intel.com>
> }
>
> assert(center_b
The previous logic of the supports_48b_addresses wasn't actually
checking if i915.ko was running with full_48bit_ppgtt. The ENOENT
it was checking for was actually coming from the invalid context
id provided in the test execbuffer. There is no path in the
kernel driver where the presence of
Chris Wilson <ch...@chris-wilson.co.uk> writes:
> Quoting Scott D Phillips (2018-04-12 15:17:16)
>> Chris Wilson <ch...@chris-wilson.co.uk> writes:
>>
>> > When mapping a region of the mipmap_tree, record which complementary
>> > method to use to
Chris Wilson writes:
> Splitting intel_miptree_map() like so should help with the yuck factor.
> Though don't we also need to treat the stencil_mt to a similar treatment
> to avoid slow reads?
I didn't do that because stencil_mt is W tiled and our tiling functions
can be introduced if the two if-chains become out of
> sync.
>
> Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk>
> Cc: Kenneth Graunke <kenn...@whitecape.org>
> Cc: Scott D Phillips <scott.d.phill...@intel.com>
for the series
Review
Call back to intel_miptree_map when mapping the separate depth
miptree in map_depthstencil. This brings us back to the mapping
method decision tree in miptree_map where we hopefully find the
most performant mapping method for depth.
---
Here's an idea for a replacement of patch 5. Squirreling the
Chris Wilson <ch...@chris-wilson.co.uk> writes:
> Quoting Scott D Phillips (2018-04-03 21:05:45)
>> Instead of gtt mapping, call out to other map functions (map_map
>> or map_tiled_memcpy) for the depth surface. Removes a place where
>> gtt mapping is used.
>>
Chris Wilson <ch...@chris-wilson.co.uk> writes:
> Quoting Scott D Phillips (2018-04-03 21:05:43)
>> Rename the (un)map_gtt functions to (un)map_map (map by
>> returning a map) and add new functions (un)map_tiled_memcpy that
>> return a shadow buffer populated
Chris Wilson <ch...@chris-wilson.co.uk> writes:
> Quoting Chris Wilson (2018-04-05 20:54:54)
> > Quoting Scott D Phillips (2018-04-03 21:05:42)
[...]
> > Ok, was hoping to see how you choose to use the streaming load, but I
> > guess that's the next patch.
> >
%08x\n", p[0]);
> + fprintf(ctx->fp, "%s0x%08"PRIx64": unknown instruction %08x%s\n",
> + RED_COLOR, offset, p[0], reset_color);
I guess the RED_COLOR here should conditionally be "" when
!GEN_BATCH_DECODE_IN_COLOR, otherwise we'll pri
Jason Ekstrand <ja...@jlekstrand.net> writes:
> This gets the stub working again with meson builds of Mesa
works,
Reviewed-by: Scott D Phillips <scott.d.phill...@intel.com>
> ---
> intel_stub.c | 51 +++
> 1 fil
Instead of gtt mapping, call out to other map functions (map_map
or map_tiled_memcpy) for the depth surface. Removes a place where
gtt mapping is used.
v2: add level, slice to debug print (Nanley)
---
src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 52 ---
1 file changed,
Here is a resend of the series to remove gtt maps, with the addition of
using MOVNTDQA when detiling which should help if we happen to detile
from a WC map.
Scott D Phillips (5):
i965/tiled_memcpy: ytiled_to_linear a cache line at a time
i965/tiled_memcpy: inline movntdqa loads
The reference for MOVNTDQA says:
For WC memory type, the nontemporal hint may be implemented by
loading a temporary internal buffer with the equivalent of an
aligned cache line without filling this data to the cache.
[...] Subsequent MOVNTDQA reads to unread portions of the WC
Rename the (un)map_gtt functions to (un)map_map (map by
returning a map) and add new functions (un)map_tiled_memcpy that
return a shadow buffer populated with the intel_tiled_memcpy
functions.
Tiling/detiling with the cpu will be the only way to handle Yf/Ys
tiling, when support is added for
Removes a place where gtt mapping is used.
Reviewed-by: Nanley Chery
---
src/mesa/drivers/dri/i965/intel_mipmap_tree.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/mesa/drivers/dri/i965/intel_mipmap_tree.c
Similar to the transformation applied to linear_to_ytiled, also align
each readback from the ytiled source to a cacheline (i.e. transfer a
whole cacheline from the source before moving on to the next column).
This will allow us to utilize movntqda (_mm_stream_si128) in a
subsequent patch to obtain
Nanley Chery <nanleych...@gmail.com> writes:
> On Tue, Jan 09, 2018 at 11:17:02PM -0800, Scott D Phillips wrote:
>> Instead of gtt mapping, call out to other map functions (map_map
>> or map_tiled_memcpy) for the depth surface. Removes a place where
>> gtt mapping is us
> intel: genxml: add preemption control instructions
> intel: error_decode: add an option to decode all buffers
> intel: gen-decoder: don't decode fields beyond a dword length
> intel: genxml: decode variable length MI_LRI
> intel: gen-decoder: print all dword a field belo
Chris Wilson <ch...@chris-wilson.co.uk> writes:
> Quoting Scott D Phillips (2018-03-20 20:39:25)
>> When building intel_tiled_memcpy for i686, the stack will only be
>> 4-byte aligned. This isn't sufficient for SSE temporaries which
>> require 16-byte alignment. Use
When building intel_tiled_memcpy for i686, the stack will only be
4-byte aligned. This isn't sufficient for SSE temporaries which
require 16-byte alignment. Use the force_align_arg_pointer
function attribute in that case to ensure sufficient alignment.
---
Loop was accessing one more than bindingCount elements from
pBindings, accessing uninitialized memory.
Fixes: ddc4069122 ("anv: Implement VK_KHR_maintenance3")
---
src/intel/vulkan/anv_descriptor_set.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git
Rename the (un)map_gtt functions to (un)map_map (map by
returning a map) and add new functions (un)map_tiled_memcpy that
return a shadow buffer populated with the intel_tiled_memcpy
functions.
Tiling/detiling with the cpu will be the only way to handle Yf/Ys
tiling, when support is added for
Different registers are used for execlist submission in gen11, so
also watch those. This code only watches element zero of the
submit queue, which is all aubdump currently writes.
---
src/intel/tools/aubinator.c | 26 --
1 file changed, 20 insertions(+), 6 deletions(-)
Jason Ekstrand <ja...@jlekstrand.net> writes:
> On Mon, Mar 5, 2018 at 11:39 AM, Nanley Chery <nanleych...@gmail.com> wrote:
>
>> On Tue, Jan 09, 2018 at 11:16:59PM -0800, Scott D Phillips wrote:
>> > Rename the (un)map_gtt functions to (un)map_map (map by
Ilia Mirkin <imir...@alum.mit.edu> writes:
> On Feb 27, 2018 11:22 PM, "Scott D Phillips" <scott.d.phill...@intel.com>
> wrote:
>
> > Yf and Ys are a family of tilings similar to Y. The actual address
> > bit interleavings for Yf* and Ys* depend upon
Replace the calculation of the individual tile address with a call
through a function pointer to the calculation. This will be
important with Ys tiling where a more complicated calculation is
needed to derive the 4 kbyte sub-tile address.
---
src/mesa/drivers/dri/i965/intel_tiled_memcpy.c | 29
As preparation for doing Yf/Ys tiling, pass the image's cpp into
this tiling/untiling functions. The layout of Yf/Ys differ
depending on cpp.
Also plumb tiling and cpp through to the per-tile functions for
ytile.
---
src/mesa/drivers/dri/i965/intel_pixel_read.c | 1 +
Similar to the transformation applied to linear_to_ytiled, also align
each readback from the ytiled source to a cacheline (i.e. transfer a
whole cacheline from the source before moving on to the next column).
This will allow us to utilize movntqda (_mm_stream_si128) in a
subsequent patch to obtain
Yf and Ys are a family of tilings similar to Y. The actual address
bit interleavings for Yf* and Ys* depend upon the bits-per-pixel
value of the surface, where 128-, 32-, and 8-bpp tiles are square
and 64- and 16-bpp tiles have a 2:1 aspect ratio.
The address bit layout of Yf and Ys are the same
1 - 100 of 176 matches
Mail list logo