* [PATCH libdrm 1/2] amdpgu: fix coding style in amdgpu_vamgr.c @ 2017-11-04 14:43 Christian König [not found] ` <20171104144331.1464-1-christian.koenig-5C7GfCeVMHo@public.gmane.org> 0 siblings, 1 reply; 4+ messages in thread From: Christian König @ 2017-11-04 14:43 UTC (permalink / raw) To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW No functional change. Signed-off-by: Christian König <christian.koenig@amd.com> --- amdgpu/amdgpu_vamgr.c | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/amdgpu/amdgpu_vamgr.c b/amdgpu/amdgpu_vamgr.c index 2b1388ed..8516b594 100644 --- a/amdgpu/amdgpu_vamgr.c +++ b/amdgpu/amdgpu_vamgr.c @@ -34,18 +34,19 @@ #include "util_math.h" int amdgpu_va_range_query(amdgpu_device_handle dev, - enum amdgpu_gpu_va_range type, uint64_t *start, uint64_t *end) + enum amdgpu_gpu_va_range type, + uint64_t *start, uint64_t *end) { - if (type == amdgpu_gpu_va_range_general) { - *start = dev->dev_info.virtual_address_offset; - *end = dev->dev_info.virtual_address_max; - return 0; - } - return -EINVAL; + if (type != amdgpu_gpu_va_range_general) + return -EINVAL; + + *start = dev->dev_info.virtual_address_offset; + *end = dev->dev_info.virtual_address_max; + return 0; } drm_private void amdgpu_vamgr_init(struct amdgpu_bo_va_mgr *mgr, uint64_t start, - uint64_t max, uint64_t alignment) + uint64_t max, uint64_t alignment) { mgr->va_offset = start; mgr->va_max = max; @@ -83,8 +84,8 @@ amdgpu_vamgr_find_va(struct amdgpu_bo_va_mgr *mgr, uint64_t size, /* first look for a hole */ LIST_FOR_EACH_ENTRY_SAFE(hole, n, &mgr->va_holes, list) { if (base_required) { - if(hole->offset > base_required || - (hole->offset + hole->size) < (base_required + size)) + if (hole->offset > base_required || + (hole->offset + hole->size) < (base_required + size)) continue; waste = base_required - hole->offset; offset = base_required; @@ -192,9 +193,9 @@ amdgpu_vamgr_free_va(struct amdgpu_bo_va_mgr *mgr, uint64_t va, uint64_t size) hole->offset = va; hole->size += size; /* Merge lower hole if it's adjacent */ - if (next != hole - && &next->list != &mgr->va_holes - && (next->offset + next->size) == va) { + if (next != hole && + &next->list != &mgr->va_holes && + (next->offset + next->size) == va) { next->size += hole->size; list_del(&hole->list); free(hole); -- 2.11.0 _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply related [flat|nested] 4+ messages in thread
[parent not found: <20171104144331.1464-1-christian.koenig-5C7GfCeVMHo@public.gmane.org>]
* [PATCH libdrm 2/2] amdgpu: sanitize 64bit VA manager [not found] ` <20171104144331.1464-1-christian.koenig-5C7GfCeVMHo@public.gmane.org> @ 2017-11-04 14:43 ` Christian König [not found] ` <20171104144331.1464-2-christian.koenig-5C7GfCeVMHo@public.gmane.org> 2017-11-07 18:03 ` [PATCH libdrm 1/2] amdpgu: fix coding style in amdgpu_vamgr.c Alex Deucher 1 sibling, 1 reply; 4+ messages in thread From: Christian König @ 2017-11-04 14:43 UTC (permalink / raw) To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW Adding the extra reservation of the 32bit space to the 64bit manager is complete nonsense and just a waste of memory and CPU cycles. Signed-off-by: Christian König <christian.koenig@amd.com> --- amdgpu/amdgpu_device.c | 24 ++++++------------------ amdgpu/amdgpu_internal.h | 7 ------- amdgpu/amdgpu_vamgr.c | 4 ++-- 3 files changed, 8 insertions(+), 27 deletions(-) diff --git a/amdgpu/amdgpu_device.c b/amdgpu/amdgpu_device.c index 2b31c45b..344e87ed 100644 --- a/amdgpu/amdgpu_device.c +++ b/amdgpu/amdgpu_device.c @@ -270,22 +270,16 @@ int amdgpu_device_initialize(int fd, goto cleanup; } - amdgpu_vamgr_init(&dev->vamgr, dev->dev_info.virtual_address_offset, - dev->dev_info.virtual_address_max, - dev->dev_info.virtual_address_alignment); - + start = dev->dev_info.virtual_address_offset; max = MIN2(dev->dev_info.virtual_address_max, 0xffffffff); - start = amdgpu_vamgr_find_va(&dev->vamgr, - max - dev->dev_info.virtual_address_offset, - dev->dev_info.virtual_address_alignment, 0); - if (start > 0xffffffff) { - fprintf(stderr, "%s: amdgpu_vamgr_find_va failed\n", __func__); - goto free_va; /* shouldn't get here */ - } - amdgpu_vamgr_init(&dev->vamgr_32, start, max, dev->dev_info.virtual_address_alignment); + start = MAX2(dev->dev_info.virtual_address_offset, 0x100000000ULL); + max = MAX2(dev->dev_info.virtual_address_max, 0x100000000ULL); + amdgpu_vamgr_init(&dev->vamgr, start, max, + dev->dev_info.virtual_address_alignment); + r = amdgpu_parse_asic_ids(&dev->asic_ids); if (r) { fprintf(stderr, "%s: Cannot parse ASIC IDs, 0x%x.", @@ -300,12 +294,6 @@ int amdgpu_device_initialize(int fd, return 0; -free_va: - r = -ENOMEM; - amdgpu_vamgr_free_va(&dev->vamgr, start, - max - dev->dev_info.virtual_address_offset); - amdgpu_vamgr_deinit(&dev->vamgr); - cleanup: if (dev->fd >= 0) close(dev->fd); diff --git a/amdgpu/amdgpu_internal.h b/amdgpu/amdgpu_internal.h index 56d15112..e26e5190 100644 --- a/amdgpu/amdgpu_internal.h +++ b/amdgpu/amdgpu_internal.h @@ -148,13 +148,6 @@ drm_private void amdgpu_vamgr_init(struct amdgpu_bo_va_mgr *mgr, uint64_t start, drm_private void amdgpu_vamgr_deinit(struct amdgpu_bo_va_mgr *mgr); -drm_private uint64_t -amdgpu_vamgr_find_va(struct amdgpu_bo_va_mgr *mgr, uint64_t size, - uint64_t alignment, uint64_t base_required); - -drm_private void -amdgpu_vamgr_free_va(struct amdgpu_bo_va_mgr *mgr, uint64_t va, uint64_t size); - drm_private int amdgpu_parse_asic_ids(struct amdgpu_asic_id **asic_ids); drm_private int amdgpu_query_gpu_info_init(amdgpu_device_handle dev); diff --git a/amdgpu/amdgpu_vamgr.c b/amdgpu/amdgpu_vamgr.c index 8516b594..ab425ef7 100644 --- a/amdgpu/amdgpu_vamgr.c +++ b/amdgpu/amdgpu_vamgr.c @@ -66,7 +66,7 @@ drm_private void amdgpu_vamgr_deinit(struct amdgpu_bo_va_mgr *mgr) pthread_mutex_destroy(&mgr->bo_va_mutex); } -drm_private uint64_t +static drm_private uint64_t amdgpu_vamgr_find_va(struct amdgpu_bo_va_mgr *mgr, uint64_t size, uint64_t alignment, uint64_t base_required) { @@ -155,7 +155,7 @@ amdgpu_vamgr_find_va(struct amdgpu_bo_va_mgr *mgr, uint64_t size, return offset; } -drm_private void +static drm_private void amdgpu_vamgr_free_va(struct amdgpu_bo_va_mgr *mgr, uint64_t va, uint64_t size) { struct amdgpu_bo_va_hole *hole; -- 2.11.0 _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply related [flat|nested] 4+ messages in thread
[parent not found: <20171104144331.1464-2-christian.koenig-5C7GfCeVMHo@public.gmane.org>]
* Re: [PATCH libdrm 2/2] amdgpu: sanitize 64bit VA manager [not found] ` <20171104144331.1464-2-christian.koenig-5C7GfCeVMHo@public.gmane.org> @ 2017-11-07 18:38 ` Alex Deucher 0 siblings, 0 replies; 4+ messages in thread From: Alex Deucher @ 2017-11-07 18:38 UTC (permalink / raw) To: Christian König; +Cc: amd-gfx list On Sat, Nov 4, 2017 at 10:43 AM, Christian König <ckoenig.leichtzumerken@gmail.com> wrote: > Adding the extra reservation of the 32bit space to the 64bit manager is > complete nonsense and just a waste of memory and CPU cycles. > > Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> > --- > amdgpu/amdgpu_device.c | 24 ++++++------------------ > amdgpu/amdgpu_internal.h | 7 ------- > amdgpu/amdgpu_vamgr.c | 4 ++-- > 3 files changed, 8 insertions(+), 27 deletions(-) > > diff --git a/amdgpu/amdgpu_device.c b/amdgpu/amdgpu_device.c > index 2b31c45b..344e87ed 100644 > --- a/amdgpu/amdgpu_device.c > +++ b/amdgpu/amdgpu_device.c > @@ -270,22 +270,16 @@ int amdgpu_device_initialize(int fd, > goto cleanup; > } > > - amdgpu_vamgr_init(&dev->vamgr, dev->dev_info.virtual_address_offset, > - dev->dev_info.virtual_address_max, > - dev->dev_info.virtual_address_alignment); > - > + start = dev->dev_info.virtual_address_offset; > max = MIN2(dev->dev_info.virtual_address_max, 0xffffffff); > - start = amdgpu_vamgr_find_va(&dev->vamgr, > - max - dev->dev_info.virtual_address_offset, > - dev->dev_info.virtual_address_alignment, 0); > - if (start > 0xffffffff) { > - fprintf(stderr, "%s: amdgpu_vamgr_find_va failed\n", __func__); > - goto free_va; /* shouldn't get here */ > - } > - > amdgpu_vamgr_init(&dev->vamgr_32, start, max, > dev->dev_info.virtual_address_alignment); > > + start = MAX2(dev->dev_info.virtual_address_offset, 0x100000000ULL); > + max = MAX2(dev->dev_info.virtual_address_max, 0x100000000ULL); > + amdgpu_vamgr_init(&dev->vamgr, start, max, > + dev->dev_info.virtual_address_alignment); > + > r = amdgpu_parse_asic_ids(&dev->asic_ids); > if (r) { > fprintf(stderr, "%s: Cannot parse ASIC IDs, 0x%x.", > @@ -300,12 +294,6 @@ int amdgpu_device_initialize(int fd, > > return 0; > > -free_va: > - r = -ENOMEM; > - amdgpu_vamgr_free_va(&dev->vamgr, start, > - max - dev->dev_info.virtual_address_offset); > - amdgpu_vamgr_deinit(&dev->vamgr); > - > cleanup: > if (dev->fd >= 0) > close(dev->fd); > diff --git a/amdgpu/amdgpu_internal.h b/amdgpu/amdgpu_internal.h > index 56d15112..e26e5190 100644 > --- a/amdgpu/amdgpu_internal.h > +++ b/amdgpu/amdgpu_internal.h > @@ -148,13 +148,6 @@ drm_private void amdgpu_vamgr_init(struct amdgpu_bo_va_mgr *mgr, uint64_t start, > > drm_private void amdgpu_vamgr_deinit(struct amdgpu_bo_va_mgr *mgr); > > -drm_private uint64_t > -amdgpu_vamgr_find_va(struct amdgpu_bo_va_mgr *mgr, uint64_t size, > - uint64_t alignment, uint64_t base_required); > - > -drm_private void > -amdgpu_vamgr_free_va(struct amdgpu_bo_va_mgr *mgr, uint64_t va, uint64_t size); > - > drm_private int amdgpu_parse_asic_ids(struct amdgpu_asic_id **asic_ids); > > drm_private int amdgpu_query_gpu_info_init(amdgpu_device_handle dev); > diff --git a/amdgpu/amdgpu_vamgr.c b/amdgpu/amdgpu_vamgr.c > index 8516b594..ab425ef7 100644 > --- a/amdgpu/amdgpu_vamgr.c > +++ b/amdgpu/amdgpu_vamgr.c > @@ -66,7 +66,7 @@ drm_private void amdgpu_vamgr_deinit(struct amdgpu_bo_va_mgr *mgr) > pthread_mutex_destroy(&mgr->bo_va_mutex); > } > > -drm_private uint64_t > +static drm_private uint64_t > amdgpu_vamgr_find_va(struct amdgpu_bo_va_mgr *mgr, uint64_t size, > uint64_t alignment, uint64_t base_required) > { > @@ -155,7 +155,7 @@ amdgpu_vamgr_find_va(struct amdgpu_bo_va_mgr *mgr, uint64_t size, > return offset; > } > > -drm_private void > +static drm_private void > amdgpu_vamgr_free_va(struct amdgpu_bo_va_mgr *mgr, uint64_t va, uint64_t size) > { > struct amdgpu_bo_va_hole *hole; > -- > 2.11.0 > > _______________________________________________ > amd-gfx mailing list > amd-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/amd-gfx _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH libdrm 1/2] amdpgu: fix coding style in amdgpu_vamgr.c [not found] ` <20171104144331.1464-1-christian.koenig-5C7GfCeVMHo@public.gmane.org> 2017-11-04 14:43 ` [PATCH libdrm 2/2] amdgpu: sanitize 64bit VA manager Christian König @ 2017-11-07 18:03 ` Alex Deucher 1 sibling, 0 replies; 4+ messages in thread From: Alex Deucher @ 2017-11-07 18:03 UTC (permalink / raw) To: Christian König; +Cc: amd-gfx list On Sat, Nov 4, 2017 at 10:43 AM, Christian König <ckoenig.leichtzumerken@gmail.com> wrote: > No functional change. > > Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> > --- > amdgpu/amdgpu_vamgr.c | 27 ++++++++++++++------------- > 1 file changed, 14 insertions(+), 13 deletions(-) > > diff --git a/amdgpu/amdgpu_vamgr.c b/amdgpu/amdgpu_vamgr.c > index 2b1388ed..8516b594 100644 > --- a/amdgpu/amdgpu_vamgr.c > +++ b/amdgpu/amdgpu_vamgr.c > @@ -34,18 +34,19 @@ > #include "util_math.h" > > int amdgpu_va_range_query(amdgpu_device_handle dev, > - enum amdgpu_gpu_va_range type, uint64_t *start, uint64_t *end) > + enum amdgpu_gpu_va_range type, > + uint64_t *start, uint64_t *end) > { > - if (type == amdgpu_gpu_va_range_general) { > - *start = dev->dev_info.virtual_address_offset; > - *end = dev->dev_info.virtual_address_max; > - return 0; > - } > - return -EINVAL; > + if (type != amdgpu_gpu_va_range_general) > + return -EINVAL; > + > + *start = dev->dev_info.virtual_address_offset; > + *end = dev->dev_info.virtual_address_max; > + return 0; > } > > drm_private void amdgpu_vamgr_init(struct amdgpu_bo_va_mgr *mgr, uint64_t start, > - uint64_t max, uint64_t alignment) > + uint64_t max, uint64_t alignment) > { > mgr->va_offset = start; > mgr->va_max = max; > @@ -83,8 +84,8 @@ amdgpu_vamgr_find_va(struct amdgpu_bo_va_mgr *mgr, uint64_t size, > /* first look for a hole */ > LIST_FOR_EACH_ENTRY_SAFE(hole, n, &mgr->va_holes, list) { > if (base_required) { > - if(hole->offset > base_required || > - (hole->offset + hole->size) < (base_required + size)) > + if (hole->offset > base_required || > + (hole->offset + hole->size) < (base_required + size)) > continue; > waste = base_required - hole->offset; > offset = base_required; > @@ -192,9 +193,9 @@ amdgpu_vamgr_free_va(struct amdgpu_bo_va_mgr *mgr, uint64_t va, uint64_t size) > hole->offset = va; > hole->size += size; > /* Merge lower hole if it's adjacent */ > - if (next != hole > - && &next->list != &mgr->va_holes > - && (next->offset + next->size) == va) { > + if (next != hole && > + &next->list != &mgr->va_holes && > + (next->offset + next->size) == va) { > next->size += hole->size; > list_del(&hole->list); > free(hole); > -- > 2.11.0 > > _______________________________________________ > amd-gfx mailing list > amd-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/amd-gfx _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2017-11-07 18:38 UTC | newest] Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2017-11-04 14:43 [PATCH libdrm 1/2] amdpgu: fix coding style in amdgpu_vamgr.c Christian König [not found] ` <20171104144331.1464-1-christian.koenig-5C7GfCeVMHo@public.gmane.org> 2017-11-04 14:43 ` [PATCH libdrm 2/2] amdgpu: sanitize 64bit VA manager Christian König [not found] ` <20171104144331.1464-2-christian.koenig-5C7GfCeVMHo@public.gmane.org> 2017-11-07 18:38 ` Alex Deucher 2017-11-07 18:03 ` [PATCH libdrm 1/2] amdpgu: fix coding style in amdgpu_vamgr.c Alex Deucher
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.