[PATCH i-g-t 1/5] lib/xe/ioctl: introduce xe_bb_size() helper
Zbigniew Kempczyński
zbigniew.kempczynski at intel.com
Thu Jan 25 06:06:06 UTC 2024
On Wed, Jan 24, 2024 at 06:07:09PM +0000, Matthew Auld wrote:
> We have a number of tests open coding this, plus some tests lacking any
> handling for the prefetch size, leading to CAT errors due to overfetch
> hitting an invalid page. End goal is to fix all the tests that are
> missing the overfetch handling first, using the new helper, and then
> convert all the places that were open coding this.
>
> Signed-off-by: Matthew Auld <matthew.auld at intel.com>
> Cc: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
> ---
> lib/xe/xe_ioctl.c | 6 ++++++
> lib/xe/xe_ioctl.h | 1 +
> 2 files changed, 7 insertions(+)
>
> diff --git a/lib/xe/xe_ioctl.c b/lib/xe/xe_ioctl.c
> index d3f9905ee..da2a7af51 100644
> --- a/lib/xe/xe_ioctl.c
> +++ b/lib/xe/xe_ioctl.c
> @@ -51,6 +51,12 @@ uint32_t xe_cs_prefetch_size(int fd)
> return 4096;
> }
>
> +uint64_t xe_bb_size(int fd, uint64_t reqsize)
> +{
> + return ALIGN(reqsize + xe_cs_prefetch_size(fd),
> + xe_get_default_alignment(fd));
> +}
> +
> uint32_t xe_vm_create(int fd, uint32_t flags, uint64_t ext)
> {
> struct drm_xe_vm_create create = {
> diff --git a/lib/xe/xe_ioctl.h b/lib/xe/xe_ioctl.h
> index 03932561d..2b30f1d98 100644
> --- a/lib/xe/xe_ioctl.h
> +++ b/lib/xe/xe_ioctl.h
> @@ -18,6 +18,7 @@
> #define DRM_XE_UFENCE_WAIT_MASK_U64 0xffffffffffffffffu
>
> uint32_t xe_cs_prefetch_size(int fd);
> +uint64_t xe_bb_size(int fd, uint64_t reqsize);
> uint32_t xe_vm_create(int fd, uint32_t flags, uint64_t ext);
> int __xe_vm_bind(int fd, uint32_t vm, uint32_t exec_queue, uint32_t bo,
> uint64_t offset, uint64_t addr, uint64_t size, uint32_t op,
> --
> 2.43.0
>
LGTM:
Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski at intel.com>
--
Zbigniew
More information about the igt-dev
mailing list