All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Kuehling, Felix" <Felix.Kuehling-5C7GfCeVMHo@public.gmane.org>
To: "Zhao, Yong" <Yong.Zhao-5C7GfCeVMHo@public.gmane.org>,
	"amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org"
	<amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org>
Subject: Re: [PATCH 2/3] drm/amdkfd: only keep release_mem function for Hawaii
Date: Thu, 7 Nov 2019 04:45:17 +0000	[thread overview]
Message-ID: <31102345-20f7-1b0e-dd2a-f7984b253a07@amd.com> (raw)
In-Reply-To: <20191031001739.10764-2-Yong.Zhao-5C7GfCeVMHo@public.gmane.org>

On 2019-10-30 20:17, Zhao, Yong wrote:
> release_mem won't be used at all on GFX9 and GFX10, so delete it.

Hawaii was GFXv7. So we're not using the release_mem packet on GFXv8 
either. Why arbitrarily limit this change to GFXv9 and 10?

Regards,
   Felix

>
> Change-Id: I13787a8a29b83e7516c582a7401f2e14721edf5f
> Signed-off-by: Yong Zhao <Yong.Zhao@amd.com>
> ---
>   .../gpu/drm/amd/amdkfd/kfd_kernel_queue_v10.c | 35 ++-----------------
>   .../gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c  | 33 ++---------------
>   2 files changed, 4 insertions(+), 64 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v10.c b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v10.c
> index aed32ab7102e..bfd6221acae9 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v10.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v10.c
> @@ -298,37 +298,6 @@ static int pm_query_status_v10(struct packet_manager *pm, uint32_t *buffer,
>   	return 0;
>   }
>   
> -
> -static int pm_release_mem_v10(uint64_t gpu_addr, uint32_t *buffer)
> -{
> -	struct pm4_mec_release_mem *packet;
> -
> -	WARN_ON(!buffer);
> -
> -	packet = (struct pm4_mec_release_mem *)buffer;
> -	memset(buffer, 0, sizeof(struct pm4_mec_release_mem));
> -
> -	packet->header.u32All = pm_build_pm4_header(IT_RELEASE_MEM,
> -					sizeof(struct pm4_mec_release_mem));
> -
> -	packet->bitfields2.event_type = CACHE_FLUSH_AND_INV_TS_EVENT;
> -	packet->bitfields2.event_index = event_index__mec_release_mem__end_of_pipe;
> -	packet->bitfields2.tcl1_action_ena = 1;
> -	packet->bitfields2.tc_action_ena = 1;
> -	packet->bitfields2.cache_policy = cache_policy__mec_release_mem__lru;
> -
> -	packet->bitfields3.data_sel = data_sel__mec_release_mem__send_32_bit_low;
> -	packet->bitfields3.int_sel =
> -		int_sel__mec_release_mem__send_interrupt_after_write_confirm;
> -
> -	packet->bitfields4.address_lo_32b = (gpu_addr & 0xffffffff) >> 2;
> -	packet->address_hi = upper_32_bits(gpu_addr);
> -
> -	packet->data_lo = 0;
> -
> -	return sizeof(struct pm4_mec_release_mem) / sizeof(unsigned int);
> -}
> -
>   const struct packet_manager_funcs kfd_v10_pm_funcs = {
>   	.map_process			= pm_map_process_v10,
>   	.runlist			= pm_runlist_v10,
> @@ -336,13 +305,13 @@ const struct packet_manager_funcs kfd_v10_pm_funcs = {
>   	.map_queues			= pm_map_queues_v10,
>   	.unmap_queues			= pm_unmap_queues_v10,
>   	.query_status			= pm_query_status_v10,
> -	.release_mem			= pm_release_mem_v10,
> +	.release_mem			= NULL,
>   	.map_process_size		= sizeof(struct pm4_mes_map_process),
>   	.runlist_size			= sizeof(struct pm4_mes_runlist),
>   	.set_resources_size		= sizeof(struct pm4_mes_set_resources),
>   	.map_queues_size		= sizeof(struct pm4_mes_map_queues),
>   	.unmap_queues_size		= sizeof(struct pm4_mes_unmap_queues),
>   	.query_status_size		= sizeof(struct pm4_mes_query_status),
> -	.release_mem_size		= sizeof(struct pm4_mec_release_mem)
> +	.release_mem_size		= 0,
>   };
>   
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c
> index 3b5ca2b1d7a6..f0e4910a8865 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c
> @@ -336,35 +336,6 @@ static int pm_query_status_v9(struct packet_manager *pm, uint32_t *buffer,
>   	return 0;
>   }
>   
> -
> -static int pm_release_mem_v9(uint64_t gpu_addr, uint32_t *buffer)
> -{
> -	struct pm4_mec_release_mem *packet;
> -
> -	packet = (struct pm4_mec_release_mem *)buffer;
> -	memset(buffer, 0, sizeof(struct pm4_mec_release_mem));
> -
> -	packet->header.u32All = pm_build_pm4_header(IT_RELEASE_MEM,
> -					sizeof(struct pm4_mec_release_mem));
> -
> -	packet->bitfields2.event_type = CACHE_FLUSH_AND_INV_TS_EVENT;
> -	packet->bitfields2.event_index = event_index__mec_release_mem__end_of_pipe;
> -	packet->bitfields2.tcl1_action_ena = 1;
> -	packet->bitfields2.tc_action_ena = 1;
> -	packet->bitfields2.cache_policy = cache_policy__mec_release_mem__lru;
> -
> -	packet->bitfields3.data_sel = data_sel__mec_release_mem__send_32_bit_low;
> -	packet->bitfields3.int_sel =
> -		int_sel__mec_release_mem__send_interrupt_after_write_confirm;
> -
> -	packet->bitfields4.address_lo_32b = (gpu_addr & 0xffffffff) >> 2;
> -	packet->address_hi = upper_32_bits(gpu_addr);
> -
> -	packet->data_lo = 0;
> -
> -	return 0;
> -}
> -
>   const struct packet_manager_funcs kfd_v9_pm_funcs = {
>   	.map_process		= pm_map_process_v9,
>   	.runlist		= pm_runlist_v9,
> @@ -372,12 +343,12 @@ const struct packet_manager_funcs kfd_v9_pm_funcs = {
>   	.map_queues		= pm_map_queues_v9,
>   	.unmap_queues		= pm_unmap_queues_v9,
>   	.query_status		= pm_query_status_v9,
> -	.release_mem		= pm_release_mem_v9,
> +	.release_mem		= NULL,
>   	.map_process_size	= sizeof(struct pm4_mes_map_process),
>   	.runlist_size		= sizeof(struct pm4_mes_runlist),
>   	.set_resources_size	= sizeof(struct pm4_mes_set_resources),
>   	.map_queues_size	= sizeof(struct pm4_mes_map_queues),
>   	.unmap_queues_size	= sizeof(struct pm4_mes_unmap_queues),
>   	.query_status_size	= sizeof(struct pm4_mes_query_status),
> -	.release_mem_size	= sizeof(struct pm4_mec_release_mem)
> +	.release_mem_size	= 0,
>   };
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

WARNING: multiple messages have this Message-ID (diff)
From: "Kuehling, Felix" <Felix.Kuehling@amd.com>
To: "Zhao, Yong" <Yong.Zhao@amd.com>,
	"amd-gfx@lists.freedesktop.org" <amd-gfx@lists.freedesktop.org>
Subject: Re: [PATCH 2/3] drm/amdkfd: only keep release_mem function for Hawaii
Date: Thu, 7 Nov 2019 04:45:17 +0000	[thread overview]
Message-ID: <31102345-20f7-1b0e-dd2a-f7984b253a07@amd.com> (raw)
Message-ID: <20191107044517.-N1ihEQDkgWh5U2IYvw7EXAho1xXrgedX5aPObIHthY@z> (raw)
In-Reply-To: <20191031001739.10764-2-Yong.Zhao@amd.com>

On 2019-10-30 20:17, Zhao, Yong wrote:
> release_mem won't be used at all on GFX9 and GFX10, so delete it.

Hawaii was GFXv7. So we're not using the release_mem packet on GFXv8 
either. Why arbitrarily limit this change to GFXv9 and 10?

Regards,
   Felix

>
> Change-Id: I13787a8a29b83e7516c582a7401f2e14721edf5f
> Signed-off-by: Yong Zhao <Yong.Zhao@amd.com>
> ---
>   .../gpu/drm/amd/amdkfd/kfd_kernel_queue_v10.c | 35 ++-----------------
>   .../gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c  | 33 ++---------------
>   2 files changed, 4 insertions(+), 64 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v10.c b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v10.c
> index aed32ab7102e..bfd6221acae9 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v10.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v10.c
> @@ -298,37 +298,6 @@ static int pm_query_status_v10(struct packet_manager *pm, uint32_t *buffer,
>   	return 0;
>   }
>   
> -
> -static int pm_release_mem_v10(uint64_t gpu_addr, uint32_t *buffer)
> -{
> -	struct pm4_mec_release_mem *packet;
> -
> -	WARN_ON(!buffer);
> -
> -	packet = (struct pm4_mec_release_mem *)buffer;
> -	memset(buffer, 0, sizeof(struct pm4_mec_release_mem));
> -
> -	packet->header.u32All = pm_build_pm4_header(IT_RELEASE_MEM,
> -					sizeof(struct pm4_mec_release_mem));
> -
> -	packet->bitfields2.event_type = CACHE_FLUSH_AND_INV_TS_EVENT;
> -	packet->bitfields2.event_index = event_index__mec_release_mem__end_of_pipe;
> -	packet->bitfields2.tcl1_action_ena = 1;
> -	packet->bitfields2.tc_action_ena = 1;
> -	packet->bitfields2.cache_policy = cache_policy__mec_release_mem__lru;
> -
> -	packet->bitfields3.data_sel = data_sel__mec_release_mem__send_32_bit_low;
> -	packet->bitfields3.int_sel =
> -		int_sel__mec_release_mem__send_interrupt_after_write_confirm;
> -
> -	packet->bitfields4.address_lo_32b = (gpu_addr & 0xffffffff) >> 2;
> -	packet->address_hi = upper_32_bits(gpu_addr);
> -
> -	packet->data_lo = 0;
> -
> -	return sizeof(struct pm4_mec_release_mem) / sizeof(unsigned int);
> -}
> -
>   const struct packet_manager_funcs kfd_v10_pm_funcs = {
>   	.map_process			= pm_map_process_v10,
>   	.runlist			= pm_runlist_v10,
> @@ -336,13 +305,13 @@ const struct packet_manager_funcs kfd_v10_pm_funcs = {
>   	.map_queues			= pm_map_queues_v10,
>   	.unmap_queues			= pm_unmap_queues_v10,
>   	.query_status			= pm_query_status_v10,
> -	.release_mem			= pm_release_mem_v10,
> +	.release_mem			= NULL,
>   	.map_process_size		= sizeof(struct pm4_mes_map_process),
>   	.runlist_size			= sizeof(struct pm4_mes_runlist),
>   	.set_resources_size		= sizeof(struct pm4_mes_set_resources),
>   	.map_queues_size		= sizeof(struct pm4_mes_map_queues),
>   	.unmap_queues_size		= sizeof(struct pm4_mes_unmap_queues),
>   	.query_status_size		= sizeof(struct pm4_mes_query_status),
> -	.release_mem_size		= sizeof(struct pm4_mec_release_mem)
> +	.release_mem_size		= 0,
>   };
>   
> diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c
> index 3b5ca2b1d7a6..f0e4910a8865 100644
> --- a/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c
> +++ b/drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue_v9.c
> @@ -336,35 +336,6 @@ static int pm_query_status_v9(struct packet_manager *pm, uint32_t *buffer,
>   	return 0;
>   }
>   
> -
> -static int pm_release_mem_v9(uint64_t gpu_addr, uint32_t *buffer)
> -{
> -	struct pm4_mec_release_mem *packet;
> -
> -	packet = (struct pm4_mec_release_mem *)buffer;
> -	memset(buffer, 0, sizeof(struct pm4_mec_release_mem));
> -
> -	packet->header.u32All = pm_build_pm4_header(IT_RELEASE_MEM,
> -					sizeof(struct pm4_mec_release_mem));
> -
> -	packet->bitfields2.event_type = CACHE_FLUSH_AND_INV_TS_EVENT;
> -	packet->bitfields2.event_index = event_index__mec_release_mem__end_of_pipe;
> -	packet->bitfields2.tcl1_action_ena = 1;
> -	packet->bitfields2.tc_action_ena = 1;
> -	packet->bitfields2.cache_policy = cache_policy__mec_release_mem__lru;
> -
> -	packet->bitfields3.data_sel = data_sel__mec_release_mem__send_32_bit_low;
> -	packet->bitfields3.int_sel =
> -		int_sel__mec_release_mem__send_interrupt_after_write_confirm;
> -
> -	packet->bitfields4.address_lo_32b = (gpu_addr & 0xffffffff) >> 2;
> -	packet->address_hi = upper_32_bits(gpu_addr);
> -
> -	packet->data_lo = 0;
> -
> -	return 0;
> -}
> -
>   const struct packet_manager_funcs kfd_v9_pm_funcs = {
>   	.map_process		= pm_map_process_v9,
>   	.runlist		= pm_runlist_v9,
> @@ -372,12 +343,12 @@ const struct packet_manager_funcs kfd_v9_pm_funcs = {
>   	.map_queues		= pm_map_queues_v9,
>   	.unmap_queues		= pm_unmap_queues_v9,
>   	.query_status		= pm_query_status_v9,
> -	.release_mem		= pm_release_mem_v9,
> +	.release_mem		= NULL,
>   	.map_process_size	= sizeof(struct pm4_mes_map_process),
>   	.runlist_size		= sizeof(struct pm4_mes_runlist),
>   	.set_resources_size	= sizeof(struct pm4_mes_set_resources),
>   	.map_queues_size	= sizeof(struct pm4_mes_map_queues),
>   	.unmap_queues_size	= sizeof(struct pm4_mes_unmap_queues),
>   	.query_status_size	= sizeof(struct pm4_mes_query_status),
> -	.release_mem_size	= sizeof(struct pm4_mec_release_mem)
> +	.release_mem_size	= 0,
>   };
_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

  parent reply	other threads:[~2019-11-07  4:45 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-31  0:17 [PATCH 1/3] drm/amdkfd: Adjust function sequences to avoid unnecessary declarations Zhao, Yong
2019-10-31  0:17 ` Zhao, Yong
     [not found] ` <20191031001739.10764-1-Yong.Zhao-5C7GfCeVMHo@public.gmane.org>
2019-10-31  0:17   ` [PATCH 2/3] drm/amdkfd: only keep release_mem function for Hawaii Zhao, Yong
2019-10-31  0:17     ` Zhao, Yong
     [not found]     ` <20191031001739.10764-2-Yong.Zhao-5C7GfCeVMHo@public.gmane.org>
2019-11-07  4:45       ` Kuehling, Felix [this message]
2019-11-07  4:45         ` Kuehling, Felix
     [not found]         ` <31102345-20f7-1b0e-dd2a-f7984b253a07-5C7GfCeVMHo@public.gmane.org>
2019-11-07 16:57           ` Zhao, Yong
2019-11-07 16:57             ` Zhao, Yong
     [not found]             ` <DM6PR12MB2778C141CFEA0006DA2CEC6DF0780-lmeGfMZKVrFSet88YzIdmgdYzm3356FpvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2019-11-07 17:33               ` Russell, Kent
2019-11-07 17:33                 ` Russell, Kent
     [not found]                 ` <CY4PR1201MB2533087B346C4619F461FF3185780-1iTaO6aE1DCmssYNuJz6EmrFom/aUZj6nBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2019-11-07 17:39                   ` Zhao, Yong
2019-11-07 17:39                     ` Zhao, Yong
     [not found]                     ` <41a6b535-ab7a-44f4-2899-f211f5ddc296-5C7GfCeVMHo@public.gmane.org>
2019-11-07 17:47                       ` Kuehling, Felix
2019-11-07 17:47                         ` Kuehling, Felix
     [not found]                         ` <85fd399c-5fa9-bdef-cdf6-433e80ba6407-5C7GfCeVMHo@public.gmane.org>
2019-11-07 18:17                           ` Russell, Kent
2019-11-07 18:17                             ` Russell, Kent
2019-11-07 18:32                           ` Alex Deucher
2019-11-07 18:32                             ` Alex Deucher
     [not found]                             ` <CADnq5_Og4AWKdYFpa8hvmd2XXjr1Wzb_a26gqsq1H6c7NkWmMA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2019-11-07 18:54                               ` Zhao, Yong
2019-11-07 18:54                                 ` Zhao, Yong
     [not found]                                 ` <DM6PR12MB2778007D58A5332F6A030DA3F0780-lmeGfMZKVrFSet88YzIdmgdYzm3356FpvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2019-11-07 19:12                                   ` Kuehling, Felix
2019-11-07 19:12                                     ` Kuehling, Felix
     [not found]                                     ` <b4a76aeb-4d2c-c348-01bd-a40124930241-5C7GfCeVMHo@public.gmane.org>
2019-11-07 19:40                                       ` Zhao, Yong
2019-11-07 19:40                                         ` Zhao, Yong
     [not found]                                         ` <DM6PR12MB2778CD10620AEDD371AC088EF0780-lmeGfMZKVrFSet88YzIdmgdYzm3356FpvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2019-11-07 20:31                                           ` Kuehling, Felix
2019-11-07 20:31                                             ` Kuehling, Felix
     [not found]                                             ` <6e021a24-eeb0-e1e1-d467-87ab48a6c7bc-5C7GfCeVMHo@public.gmane.org>
2019-11-07 20:37                                               ` Zhao, Yong
2019-11-07 20:37                                                 ` Zhao, Yong
2019-11-07 20:42                               ` Kuehling, Felix
2019-11-07 20:42                                 ` Kuehling, Felix
2019-10-31  0:17   ` [PATCH 3/3] drm/amdkfd: Use kernel queue v9 functions for v10 Zhao, Yong
2019-10-31  0:17     ` Zhao, Yong
     [not found]     ` <20191031001739.10764-3-Yong.Zhao-5C7GfCeVMHo@public.gmane.org>
2019-11-07  4:52       ` Kuehling, Felix
2019-11-07  4:52         ` Kuehling, Felix
2019-11-07  4:45   ` [PATCH 1/3] drm/amdkfd: Adjust function sequences to avoid unnecessary declarations Kuehling, Felix
2019-11-07  4:45     ` Kuehling, Felix

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=31102345-20f7-1b0e-dd2a-f7984b253a07@amd.com \
    --to=felix.kuehling-5c7gfcevmho@public.gmane.org \
    --cc=Yong.Zhao-5C7GfCeVMHo@public.gmane.org \
    --cc=amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.