Message ID | 1466500235-21282-2-git-send-email-daniel.vetter@ffwll.ch (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Tue, Jun 21, 2016 at 12:10 PM, Daniel Vetter <daniel.vetter@ffwll.ch> wrote: > - inline functions need to be static inline, otherwise gcc can opt to > not inline and the linker gets unhappy. > - no forward decls for inline functions, just include the right headers. > > Cc: Oded Gabbay <oded.gabbay@gmail.com> > Cc: Ben Goz <ben.goz@amd.com> > Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> > --- > drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h | 4 ++-- > drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 3 --- > 2 files changed, 2 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h > index ec4036a09f3e..a625b9137da2 100644 > --- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h > +++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h > @@ -187,12 +187,12 @@ int init_pipelines(struct device_queue_manager *dqm, > unsigned int get_first_pipe(struct device_queue_manager *dqm); > unsigned int get_pipes_num(struct device_queue_manager *dqm); > > -extern inline unsigned int get_sh_mem_bases_32(struct kfd_process_device *pdd) > +static inline unsigned int get_sh_mem_bases_32(struct kfd_process_device *pdd) > { > return (pdd->lds_base >> 16) & 0xFF; > } > > -extern inline unsigned int > +static inline unsigned int > get_sh_mem_bases_nybble_64(struct kfd_process_device *pdd) > { > return (pdd->lds_base >> 60) & 0x0E; > diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h > index d0d5f4baf72d..80113c335966 100644 > --- a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h > +++ b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h > @@ -617,10 +617,7 @@ int kgd2kfd_resume(struct kfd_dev *kfd); > int kfd_init_apertures(struct kfd_process *process); > > /* Queue Context Management */ > -inline uint32_t lower_32(uint64_t x); > -inline uint32_t upper_32(uint64_t x); > struct cik_sdma_rlc_registers *get_sdma_mqd(void *mqd); > -inline uint32_t get_sdma_base_addr(struct cik_sdma_rlc_registers *m); > > int init_queue(struct queue **q, struct queue_properties properties); > void uninit_queue(struct queue *q); > -- > 2.8.1 > Hi Daniel, Minor comment, please change the commit message title to "drm/amdkfd: ..." (without the "-" between amd and kfd), to make this patch consistent with all amdkfd patches. With that change, this patch is: Reviewed-by: Oded Gabbay <oded.gabbay@gmail.com>
On Tue, Jun 21, 2016 at 10:11:13PM +0300, Oded Gabbay wrote: > On Tue, Jun 21, 2016 at 12:10 PM, Daniel Vetter <daniel.vetter@ffwll.ch> wrote: > > - inline functions need to be static inline, otherwise gcc can opt to > > not inline and the linker gets unhappy. > > - no forward decls for inline functions, just include the right headers. > > > > Cc: Oded Gabbay <oded.gabbay@gmail.com> > > Cc: Ben Goz <ben.goz@amd.com> > > Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> > > --- > > drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h | 4 ++-- > > drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 3 --- > > 2 files changed, 2 insertions(+), 5 deletions(-) > > > > diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h > > index ec4036a09f3e..a625b9137da2 100644 > > --- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h > > +++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h > > @@ -187,12 +187,12 @@ int init_pipelines(struct device_queue_manager *dqm, > > unsigned int get_first_pipe(struct device_queue_manager *dqm); > > unsigned int get_pipes_num(struct device_queue_manager *dqm); > > > > -extern inline unsigned int get_sh_mem_bases_32(struct kfd_process_device *pdd) > > +static inline unsigned int get_sh_mem_bases_32(struct kfd_process_device *pdd) > > { > > return (pdd->lds_base >> 16) & 0xFF; > > } > > > > -extern inline unsigned int > > +static inline unsigned int > > get_sh_mem_bases_nybble_64(struct kfd_process_device *pdd) > > { > > return (pdd->lds_base >> 60) & 0x0E; > > diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h > > index d0d5f4baf72d..80113c335966 100644 > > --- a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h > > +++ b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h > > @@ -617,10 +617,7 @@ int kgd2kfd_resume(struct kfd_dev *kfd); > > int kfd_init_apertures(struct kfd_process *process); > > > > /* Queue Context Management */ > > -inline uint32_t lower_32(uint64_t x); > > -inline uint32_t upper_32(uint64_t x); > > struct cik_sdma_rlc_registers *get_sdma_mqd(void *mqd); > > -inline uint32_t get_sdma_base_addr(struct cik_sdma_rlc_registers *m); > > > > int init_queue(struct queue **q, struct queue_properties properties); > > void uninit_queue(struct queue *q); > > -- > > 2.8.1 > > > > Hi Daniel, > Minor comment, please change the commit message title to "drm/amdkfd: > ..." (without the "-" between amd and kfd), to make this patch > consistent with all amdkfd patches. > > With that change, this patch is: > Reviewed-by: Oded Gabbay <oded.gabbay@gmail.com> Fixed up an applied to drm-misc, thanks for the review. -Daniel
On Tue, Jun 21, 2016 at 10:11:13PM +0300, Oded Gabbay wrote: > On Tue, Jun 21, 2016 at 12:10 PM, Daniel Vetter <daniel.vetter@ffwll.ch> wrote: > > - inline functions need to be static inline, otherwise gcc can opt to > > not inline and the linker gets unhappy. > > - no forward decls for inline functions, just include the right headers. > > > > Cc: Oded Gabbay <oded.gabbay@gmail.com> > > Cc: Ben Goz <ben.goz@amd.com> > > Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> > > --- > > drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h | 4 ++-- > > drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 3 --- > > 2 files changed, 2 insertions(+), 5 deletions(-) > > > > diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h > > index ec4036a09f3e..a625b9137da2 100644 > > --- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h > > +++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h > > @@ -187,12 +187,12 @@ int init_pipelines(struct device_queue_manager *dqm, > > unsigned int get_first_pipe(struct device_queue_manager *dqm); > > unsigned int get_pipes_num(struct device_queue_manager *dqm); > > > > -extern inline unsigned int get_sh_mem_bases_32(struct kfd_process_device *pdd) > > +static inline unsigned int get_sh_mem_bases_32(struct kfd_process_device *pdd) > > { > > return (pdd->lds_base >> 16) & 0xFF; > > } > > > > -extern inline unsigned int > > +static inline unsigned int > > get_sh_mem_bases_nybble_64(struct kfd_process_device *pdd) > > { > > return (pdd->lds_base >> 60) & 0x0E; > > diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h > > index d0d5f4baf72d..80113c335966 100644 > > --- a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h > > +++ b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h > > @@ -617,10 +617,7 @@ int kgd2kfd_resume(struct kfd_dev *kfd); > > int kfd_init_apertures(struct kfd_process *process); > > > > /* Queue Context Management */ > > -inline uint32_t lower_32(uint64_t x); > > -inline uint32_t upper_32(uint64_t x); > > struct cik_sdma_rlc_registers *get_sdma_mqd(void *mqd); > > -inline uint32_t get_sdma_base_addr(struct cik_sdma_rlc_registers *m); > > > > int init_queue(struct queue **q, struct queue_properties properties); > > void uninit_queue(struct queue *q); > > -- > > 2.8.1 > > > > Hi Daniel, > Minor comment, please change the commit message title to "drm/amdkfd: > ..." (without the "-" between amd and kfd), to make this patch > consistent with all amdkfd patches. > > With that change, this patch is: > Reviewed-by: Oded Gabbay <oded.gabbay@gmail.com> Fixed up and applied, thanks for the review. -Daniel
diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h index ec4036a09f3e..a625b9137da2 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h +++ b/drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h @@ -187,12 +187,12 @@ int init_pipelines(struct device_queue_manager *dqm, unsigned int get_first_pipe(struct device_queue_manager *dqm); unsigned int get_pipes_num(struct device_queue_manager *dqm); -extern inline unsigned int get_sh_mem_bases_32(struct kfd_process_device *pdd) +static inline unsigned int get_sh_mem_bases_32(struct kfd_process_device *pdd) { return (pdd->lds_base >> 16) & 0xFF; } -extern inline unsigned int +static inline unsigned int get_sh_mem_bases_nybble_64(struct kfd_process_device *pdd) { return (pdd->lds_base >> 60) & 0x0E; diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h index d0d5f4baf72d..80113c335966 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_priv.h +++ b/drivers/gpu/drm/amd/amdkfd/kfd_priv.h @@ -617,10 +617,7 @@ int kgd2kfd_resume(struct kfd_dev *kfd); int kfd_init_apertures(struct kfd_process *process); /* Queue Context Management */ -inline uint32_t lower_32(uint64_t x); -inline uint32_t upper_32(uint64_t x); struct cik_sdma_rlc_registers *get_sdma_mqd(void *mqd); -inline uint32_t get_sdma_base_addr(struct cik_sdma_rlc_registers *m); int init_queue(struct queue **q, struct queue_properties properties); void uninit_queue(struct queue *q);
- inline functions need to be static inline, otherwise gcc can opt to not inline and the linker gets unhappy. - no forward decls for inline functions, just include the right headers. Cc: Oded Gabbay <oded.gabbay@gmail.com> Cc: Ben Goz <ben.goz@amd.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> --- drivers/gpu/drm/amd/amdkfd/kfd_device_queue_manager.h | 4 ++-- drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 3 --- 2 files changed, 2 insertions(+), 5 deletions(-)