linux-next: build failure after merge of the tip tree
Hi all, After merging the tip tree, today's linux-next build (x86_64 allmodconfig) failed like this: ERROR: modpost: "sched_setscheduler" [drivers/gpu/drm/drm.ko] undefined! Caused by commit 616d91b68cd5 ("sched: Remove sched_setscheduler*() EXPORTs") interacting with commit 5e6c2b4f9161 ("drm/vblank: Add vblank works") from the drm tree. I have reverted commit 616d91b68cd5 again for now. -- Cheers, Stephen Rothwell pgpuu6fhUYGQJ.pgp Description: OpenPGP digital signature ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
Re: linux-next: build failure after merge of the tip tree
Hi all, On Wed, 6 Nov 2019 13:53:40 +1100 Stephen Rothwell wrote: > > Hi all, > > On Thu, 10 Oct 2019 13:14:48 +1100 Stephen Rothwell > wrote: > > > > I added the following merge fix patch for today: > > > > This patch is now just: > > From: Stephen Rothwell > Date: Thu, 10 Oct 2019 13:08:43 +1100 > Subject: [PATCH] drm/i915: update for mutex_release API change > > Signed-off-by: Stephen Rothwell > --- > drivers/gpu/drm/i915/i915_active.c| 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_active.c > b/drivers/gpu/drm/i915/i915_active.c > index aa37c07004b9..a47387174434 100644 > --- a/drivers/gpu/drm/i915/i915_active.c > +++ b/drivers/gpu/drm/i915/i915_active.c > @@ -385,7 +385,7 @@ void i915_active_set_exclusive(struct i915_active *ref, > struct dma_fence *f) > mutex_acquire(&ref->mutex.dep_map, 0, 0, _THIS_IP_); > if (!__i915_active_fence_set(&ref->excl, f)) > atomic_inc(&ref->count); > - mutex_release(&ref->mutex.dep_map, 0, _THIS_IP_); > + mutex_release(&ref->mutex.dep_map, _THIS_IP_); > } > > bool i915_active_acquire_if_busy(struct i915_active *ref) > -- > 2.23.0 This merge fix patch is now needed for the merge between the drm tree and Linus' tree. -- Cheers, Stephen Rothwell pgpnrITIKcsCc.pgp Description: OpenPGP digital signature ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
Re: linux-next: build failure after merge of the tip tree
On Wed, Nov 20, 2019 at 10:54 PM Stephen Rothwell wrote: > > Hi all, > > After merging the tip tree, today's linux-next build (x86_64 allmodconfig) > failed like this: > > In file included from include/trace/define_trace.h:102, > from drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h:502, > from drivers/gpu/drm/amd/amdgpu/amdgpu_trace_points.c:29: > include/trace/../../drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h:476:52: error: > expected expression before ';' token > 476 | __string(ring, sched_job->base.sched->name); > |^ > include/trace/trace_events.h:435:2: note: in definition of macro > 'DECLARE_EVENT_CLASS' > 435 | tstruct\ > | ^~~ > include/trace/trace_events.h:77:9: note: in expansion of macro 'PARAMS' >77 | PARAMS(tstruct), \ > | ^~ > include/trace/../../drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h:472:1: note: in > expansion of macro 'TRACE_EVENT' > 472 | TRACE_EVENT(amdgpu_ib_pipe_sync, > | ^~~ > include/trace/../../drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h:475:6: note: in > expansion of macro 'TP_STRUCT__entry' > 475 | TP_STRUCT__entry( > | ^~~~ > > Caused by commit > > 2c2fdb8bca29 ("drm/amdgpu: fix amdgpu trace event print string format > error") > > from the drm tree interacting with commit > > 60fdad00827c ("ftrace: Rework event_create_dir()") > > from the tip tree. > > I have added the following merge fix patch: Applied. Thanks! Alex > > From: Stephen Rothwell > Date: Thu, 21 Nov 2019 14:46:00 +1100 > Subject: [PATCH] merge fix for "ftrace: Rework event_create_dir()" > > Signed-off-by: Stephen Rothwell > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h > b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h > index f940526c5889..63e734a125fb 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h > @@ -473,7 +473,7 @@ TRACE_EVENT(amdgpu_ib_pipe_sync, > TP_PROTO(struct amdgpu_job *sched_job, struct dma_fence *fence), > TP_ARGS(sched_job, fence), > TP_STRUCT__entry( > -__string(ring, sched_job->base.sched->name); > +__string(ring, sched_job->base.sched->name) > __field(uint64_t, id) > __field(struct dma_fence *, fence) > __field(uint64_t, ctx) > -- > 2.23.0 > > -- > Cheers, > Stephen Rothwell > ___ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
Re: linux-next: build failure after merge of the tip tree
sure, this is a issue. but it wiil build succesed on local drm-next branch. and you can submit this patch to fix this issue. thanks. Reviewed-by: Kevin Wang From: Stephen Rothwell Sent: Thursday, November 21, 2019 11:54 AM To: Thomas Gleixner; Ingo Molnar; H. Peter Anvin; Peter Zijlstra; Dave Airlie; DRI Cc: Linux Next Mailing List; Linux Kernel Mailing List; Wang, Kevin(Yang); Deucher, Alexander Subject: linux-next: build failure after merge of the tip tree Hi all, After merging the tip tree, today's linux-next build (x86_64 allmodconfig) failed like this: In file included from include/trace/define_trace.h:102, from drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h:502, from drivers/gpu/drm/amd/amdgpu/amdgpu_trace_points.c:29: include/trace/../../drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h:476:52: error: expected expression before ';' token 476 | __string(ring, sched_job->base.sched->name); |^ include/trace/trace_events.h:435:2: note: in definition of macro 'DECLARE_EVENT_CLASS' 435 | tstruct\ | ^~~ include/trace/trace_events.h:77:9: note: in expansion of macro 'PARAMS' 77 | PARAMS(tstruct), \ | ^~ include/trace/../../drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h:472:1: note: in expansion of macro 'TRACE_EVENT' 472 | TRACE_EVENT(amdgpu_ib_pipe_sync, | ^~~ include/trace/../../drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h:475:6: note: in expansion of macro 'TP_STRUCT__entry' 475 | TP_STRUCT__entry( | ^~~~ Caused by commit 2c2fdb8bca29 ("drm/amdgpu: fix amdgpu trace event print string format error") from the drm tree interacting with commit 60fdad00827c ("ftrace: Rework event_create_dir()") from the tip tree. I have added the following merge fix patch: From: Stephen Rothwell Date: Thu, 21 Nov 2019 14:46:00 +1100 Subject: [PATCH] merge fix for "ftrace: Rework event_create_dir()" Signed-off-by: Stephen Rothwell --- drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h index f940526c5889..63e734a125fb 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h @@ -473,7 +473,7 @@ TRACE_EVENT(amdgpu_ib_pipe_sync, TP_PROTO(struct amdgpu_job *sched_job, struct dma_fence *fence), TP_ARGS(sched_job, fence), TP_STRUCT__entry( -__string(ring, sched_job->base.sched->name); +__string(ring, sched_job->base.sched->name) __field(uint64_t, id) __field(struct dma_fence *, fence) __field(uint64_t, ctx) -- 2.23.0 -- Cheers, Stephen Rothwell ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
Re: linux-next: build failure after merge of the tip tree
On Thu, Nov 21, 2019 at 02:54:03PM +1100, Stephen Rothwell wrote: > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h > b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h > index f940526c5889..63e734a125fb 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h > @@ -473,7 +473,7 @@ TRACE_EVENT(amdgpu_ib_pipe_sync, > TP_PROTO(struct amdgpu_job *sched_job, struct dma_fence *fence), > TP_ARGS(sched_job, fence), > TP_STRUCT__entry( > - __string(ring, sched_job->base.sched->name); > + __string(ring, sched_job->base.sched->name) >__field(uint64_t, id) >__field(struct dma_fence *, fence) >__field(uint64_t, ctx) Correct, ';' there is invalid and now results in very verbose compile errors :-) signature.asc Description: PGP signature ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
linux-next: build failure after merge of the tip tree
Hi all, After merging the tip tree, today's linux-next build (x86_64 allmodconfig) failed like this: In file included from include/trace/define_trace.h:102, from drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h:502, from drivers/gpu/drm/amd/amdgpu/amdgpu_trace_points.c:29: include/trace/../../drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h:476:52: error: expected expression before ';' token 476 | __string(ring, sched_job->base.sched->name); |^ include/trace/trace_events.h:435:2: note: in definition of macro 'DECLARE_EVENT_CLASS' 435 | tstruct\ | ^~~ include/trace/trace_events.h:77:9: note: in expansion of macro 'PARAMS' 77 | PARAMS(tstruct), \ | ^~ include/trace/../../drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h:472:1: note: in expansion of macro 'TRACE_EVENT' 472 | TRACE_EVENT(amdgpu_ib_pipe_sync, | ^~~ include/trace/../../drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h:475:6: note: in expansion of macro 'TP_STRUCT__entry' 475 | TP_STRUCT__entry( | ^~~~ Caused by commit 2c2fdb8bca29 ("drm/amdgpu: fix amdgpu trace event print string format error") from the drm tree interacting with commit 60fdad00827c ("ftrace: Rework event_create_dir()") from the tip tree. I have added the following merge fix patch: From: Stephen Rothwell Date: Thu, 21 Nov 2019 14:46:00 +1100 Subject: [PATCH] merge fix for "ftrace: Rework event_create_dir()" Signed-off-by: Stephen Rothwell --- drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h index f940526c5889..63e734a125fb 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h @@ -473,7 +473,7 @@ TRACE_EVENT(amdgpu_ib_pipe_sync, TP_PROTO(struct amdgpu_job *sched_job, struct dma_fence *fence), TP_ARGS(sched_job, fence), TP_STRUCT__entry( -__string(ring, sched_job->base.sched->name); +__string(ring, sched_job->base.sched->name) __field(uint64_t, id) __field(struct dma_fence *, fence) __field(uint64_t, ctx) -- 2.23.0 -- Cheers, Stephen Rothwell pgpfEbxIr6TYJ.pgp Description: OpenPGP digital signature ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
Re: linux-next: build failure after merge of the tip tree
Hi all, On Thu, 10 Oct 2019 13:14:48 +1100 Stephen Rothwell wrote: > > I added the following merge fix patch for today: > This patch is now just: From: Stephen Rothwell Date: Thu, 10 Oct 2019 13:08:43 +1100 Subject: [PATCH] drm/i915: update for mutex_release API change Signed-off-by: Stephen Rothwell --- drivers/gpu/drm/i915/i915_active.c| 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/gpu/drm/i915/i915_active.c b/drivers/gpu/drm/i915/i915_active.c index aa37c07004b9..a47387174434 100644 --- a/drivers/gpu/drm/i915/i915_active.c +++ b/drivers/gpu/drm/i915/i915_active.c @@ -385,7 +385,7 @@ void i915_active_set_exclusive(struct i915_active *ref, struct dma_fence *f) mutex_acquire(&ref->mutex.dep_map, 0, 0, _THIS_IP_); if (!__i915_active_fence_set(&ref->excl, f)) atomic_inc(&ref->count); - mutex_release(&ref->mutex.dep_map, 0, _THIS_IP_); + mutex_release(&ref->mutex.dep_map, _THIS_IP_); } bool i915_active_acquire_if_busy(struct i915_active *ref) -- 2.23.0 -- Cheers, Stephen Rothwell pgpxjgyTMS9eo.pgp Description: OpenPGP digital signature ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
Re: linux-next: build failure after merge of the tip tree
On Thu, Oct 10, 2019 at 10:23:21PM +1100, Stephen Rothwell wrote: > Hi Ingo, > > On Thu, 10 Oct 2019 10:02:07 +0200 Ingo Molnar wrote: > > > > I suspect -next will have to carry this semantic merge conflict > > resolution until the DRM tree is merged upstream. > > Yep, its not a real problem, I get a few like this every cycle. Yeah totally within expectations when I acked that cleanup patch. We'll probably have a few more lockdep annotation patches/changes that will conflict in drm. -Daniel -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
Re: linux-next: build failure after merge of the tip tree
Hi Ingo, On Thu, 10 Oct 2019 10:02:07 +0200 Ingo Molnar wrote: > > I suspect -next will have to carry this semantic merge conflict > resolution until the DRM tree is merged upstream. Yep, its not a real problem, I get a few like this every cycle. -- Cheers, Stephen Rothwell pgpT3QB8ifkyX.pgp Description: OpenPGP digital signature ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
Re: linux-next: build failure after merge of the tip tree
* Stephen Rothwell wrote: > Hi all, > > After merging the tip tree, today's linux-next build (x86_64 allmodconfig) > failed like this: > > drivers/gpu/drm/i915/gt/intel_gt_pm.c: In function 'intel_gt_resume': > drivers/gpu/drm/i915/gt/intel_gt_pm.c:183:54: error: macro "mutex_release" > passed 3 arguments, but takes just 2 > 183 |mutex_release(&ce->pin_mutex.dep_map, 0, _THIS_IP_); > | ^ > In file included from include/linux/spinlock_types.h:18, > from include/linux/spinlock.h:83, > from include/linux/mmzone.h:8, > from include/linux/gfp.h:6, > from include/linux/slab.h:15, > from include/linux/io-mapping.h:10, > from drivers/gpu/drm/i915/i915_drv.h:36, > from drivers/gpu/drm/i915/gt/intel_gt_pm.c:7: > include/linux/lockdep.h:605: note: macro "mutex_release" defined here > 605 | #define mutex_release(l, i) lock_release(l, i) > | > drivers/gpu/drm/i915/gt/intel_lrc.c: In function '__context_pin_release': > drivers/gpu/drm/i915/gt/intel_lrc.c:245:51: error: macro "mutex_release" > passed 3 arguments, but takes just 2 > 245 | mutex_release(&ce->pin_mutex.dep_map, 0, _RET_IP_); > | ^ > In file included from include/linux/hardirq.h:6, > from include/linux/interrupt.h:11, > from drivers/gpu/drm/i915/gt/intel_lrc.c:134: > include/linux/lockdep.h:605: note: macro "mutex_release" defined here > 605 | #define mutex_release(l, i) lock_release(l, i) > | > > Caused by commit > > 5facae4f3549 ("locking/lockdep: Remove unused @nested argument from > lock_release()") > > interacting with commits > > dffa8feb3084 ("drm/i915/perf: Assert locking for i915_init_oa_perf_state()") > fcde8c7eea60 ("drm/i915/selftests: Exercise potential false lite-restore") > b1e3177bd1d8 ("drm/i915: Coordinate i915_active with its own mutex") > > from the drm tree. > > I added the following merge fix patch for today: > > From: Stephen Rothwell > Date: Thu, 10 Oct 2019 13:08:43 +1100 > Subject: [PATCH] drm/i915: update for mutex_release API change > > Signed-off-by: Stephen Rothwell > --- > drivers/gpu/drm/i915/gt/intel_gt_pm.c | 2 +- > drivers/gpu/drm/i915/gt/intel_lrc.c | 2 +- > drivers/gpu/drm/i915/i915_active.c| 2 +- > 3 files changed, 3 insertions(+), 3 deletions(-) I suspect -next will have to carry this semantic merge conflict resolution until the DRM tree is merged upstream. Thanks, Ingo ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
linux-next: build failure after merge of the tip tree
Hi all, After merging the tip tree, today's linux-next build (x86_64 allmodconfig) failed like this: drivers/gpu/drm/i915/gt/intel_gt_pm.c: In function 'intel_gt_resume': drivers/gpu/drm/i915/gt/intel_gt_pm.c:183:54: error: macro "mutex_release" passed 3 arguments, but takes just 2 183 |mutex_release(&ce->pin_mutex.dep_map, 0, _THIS_IP_); | ^ In file included from include/linux/spinlock_types.h:18, from include/linux/spinlock.h:83, from include/linux/mmzone.h:8, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/io-mapping.h:10, from drivers/gpu/drm/i915/i915_drv.h:36, from drivers/gpu/drm/i915/gt/intel_gt_pm.c:7: include/linux/lockdep.h:605: note: macro "mutex_release" defined here 605 | #define mutex_release(l, i) lock_release(l, i) | drivers/gpu/drm/i915/gt/intel_lrc.c: In function '__context_pin_release': drivers/gpu/drm/i915/gt/intel_lrc.c:245:51: error: macro "mutex_release" passed 3 arguments, but takes just 2 245 | mutex_release(&ce->pin_mutex.dep_map, 0, _RET_IP_); | ^ In file included from include/linux/hardirq.h:6, from include/linux/interrupt.h:11, from drivers/gpu/drm/i915/gt/intel_lrc.c:134: include/linux/lockdep.h:605: note: macro "mutex_release" defined here 605 | #define mutex_release(l, i) lock_release(l, i) | Caused by commit 5facae4f3549 ("locking/lockdep: Remove unused @nested argument from lock_release()") interacting with commits dffa8feb3084 ("drm/i915/perf: Assert locking for i915_init_oa_perf_state()") fcde8c7eea60 ("drm/i915/selftests: Exercise potential false lite-restore") b1e3177bd1d8 ("drm/i915: Coordinate i915_active with its own mutex") from the drm tree. I added the following merge fix patch for today: From: Stephen Rothwell Date: Thu, 10 Oct 2019 13:08:43 +1100 Subject: [PATCH] drm/i915: update for mutex_release API change Signed-off-by: Stephen Rothwell --- drivers/gpu/drm/i915/gt/intel_gt_pm.c | 2 +- drivers/gpu/drm/i915/gt/intel_lrc.c | 2 +- drivers/gpu/drm/i915/i915_active.c| 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/i915/gt/intel_gt_pm.c b/drivers/gpu/drm/i915/gt/intel_gt_pm.c index b52e2ba3d092..d195e05a701f 100644 --- a/drivers/gpu/drm/i915/gt/intel_gt_pm.c +++ b/drivers/gpu/drm/i915/gt/intel_gt_pm.c @@ -180,7 +180,7 @@ int intel_gt_resume(struct intel_gt *gt) GEM_BUG_ON(!intel_context_is_pinned(ce)); mutex_acquire(&ce->pin_mutex.dep_map, 0, 0, _THIS_IP_); ce->ops->reset(ce); - mutex_release(&ce->pin_mutex.dep_map, 0, _THIS_IP_); + mutex_release(&ce->pin_mutex.dep_map, _THIS_IP_); } engine->serial++; /* kernel context lost */ diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c index a2155d6bcdd2..aa61b0101bf8 100644 --- a/drivers/gpu/drm/i915/gt/intel_lrc.c +++ b/drivers/gpu/drm/i915/gt/intel_lrc.c @@ -242,7 +242,7 @@ static void __context_pin_acquire(struct intel_context *ce) static void __context_pin_release(struct intel_context *ce) { - mutex_release(&ce->pin_mutex.dep_map, 0, _RET_IP_); + mutex_release(&ce->pin_mutex.dep_map, _RET_IP_); } static void mark_eio(struct i915_request *rq) diff --git a/drivers/gpu/drm/i915/i915_active.c b/drivers/gpu/drm/i915/i915_active.c index aa37c07004b9..a47387174434 100644 --- a/drivers/gpu/drm/i915/i915_active.c +++ b/drivers/gpu/drm/i915/i915_active.c @@ -385,7 +385,7 @@ void i915_active_set_exclusive(struct i915_active *ref, struct dma_fence *f) mutex_acquire(&ref->mutex.dep_map, 0, 0, _THIS_IP_); if (!__i915_active_fence_set(&ref->excl, f)) atomic_inc(&ref->count); - mutex_release(&ref->mutex.dep_map, 0, _THIS_IP_); + mutex_release(&ref->mutex.dep_map, _THIS_IP_); } bool i915_active_acquire_if_busy(struct i915_active *ref) -- 2.23.0 -- Cheers, Stephen Rothwell pgpdPXdsBdGmR.pgp Description: OpenPGP digital signature ___ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
linux-next: build failure after merge of the tip tree (from the drm-intel tree)
Hi all, After merging the tip tree, today's linux-next build (x86_64 allmodconfig) failed like this: In file included from include/uapi/linux/stddef.h:1:0, from include/linux/stddef.h:4, from include/uapi/linux/posix_types.h:4, from include/uapi/linux/types.h:13, from include/linux/types.h:5, from include/linux/sysrq.h:18, from drivers/gpu/drm/i915/i915_irq.c:31: drivers/gpu/drm/i915/i915_irq.c: In function 'i915_hangcheck_elapsed': include/linux/compiler.h:542:50: error: incompatible types when initializing type 'const void * const' using type 'bool {aka _Bool}' __maybe_unused const void * const _p2 = _p1; \ ^ drivers/gpu/drm/i915/i915_irq.c:3098:7: note: in expansion of macro 'lockless_dereference' if (!lockless_dereference(dev_priv->gt.awake)) ^ Caused by commit 67d97da34917 ("drm/i915: Only start retire worker when idle") from the drm-intel tree interacting with commit 331b6d8c7afc ("locking/barriers: Validate lockless_dereference() is used on a pointer type") from the tip tree.
linux-next: build failure after merge of the tip tree (from the drm-intel tree)
On Tue, Jul 05, 2016 at 10:25:12AM +0200, Peter Zijlstra wrote: > On Tue, Jul 05, 2016 at 01:53:03PM +1000, Stephen Rothwell wrote: > > diff --git a/drivers/gpu/drm/i915/i915_gem.c > > b/drivers/gpu/drm/i915/i915_gem.c > > index d3502c0603e5..1f91f187b2a8 100644 > > --- a/drivers/gpu/drm/i915/i915_gem.c > > +++ b/drivers/gpu/drm/i915/i915_gem.c > > @@ -3290,7 +3290,7 @@ i915_gem_retire_work_handler(struct work_struct *work) > > * We do not need to do this test under locking as in the worst-case > > * we queue the retire worker once too often. > > */ > > - if (lockless_dereference(dev_priv->gt.awake)) > > + if (/*lockless_dereference*/(dev_priv->gt.awake)) > > queue_delayed_work(dev_priv->wq, > >&dev_priv->gt.retire_work, > >round_jiffies_up_relative(HZ)); > > diff --git a/drivers/gpu/drm/i915/i915_irq.c > > b/drivers/gpu/drm/i915/i915_irq.c > > index f6de8dd567a2..2c1926418691 100644 > > --- a/drivers/gpu/drm/i915/i915_irq.c > > +++ b/drivers/gpu/drm/i915/i915_irq.c > > @@ -3095,7 +3095,7 @@ static void i915_hangcheck_elapsed(struct work_struct > > *work) > > if (!i915.enable_hangcheck) > > return; > > > > - if (!lockless_dereference(dev_priv->gt.awake)) > > + if (!/*lockless_dereference*/(dev_priv->gt.awake)) > > return; > > > > /* As enabling the GPU requires fairly extensive mmio access, > > Right, neither case appears to include a data dependency and thus > lockless_dereference() seems misguided. Agreed! At first glance, this code wants READ_ONCE() rather than lockless_dereference(). Thanx, Paul
linux-next: build failure after merge of the tip tree (from the drm-intel tree)
On Tue, Jul 05, 2016 at 01:53:03PM +1000, Stephen Rothwell wrote: > diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c > index d3502c0603e5..1f91f187b2a8 100644 > --- a/drivers/gpu/drm/i915/i915_gem.c > +++ b/drivers/gpu/drm/i915/i915_gem.c > @@ -3290,7 +3290,7 @@ i915_gem_retire_work_handler(struct work_struct *work) >* We do not need to do this test under locking as in the worst-case >* we queue the retire worker once too often. >*/ > - if (lockless_dereference(dev_priv->gt.awake)) > + if (/*lockless_dereference*/(dev_priv->gt.awake)) > queue_delayed_work(dev_priv->wq, > &dev_priv->gt.retire_work, > round_jiffies_up_relative(HZ)); > diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c > index f6de8dd567a2..2c1926418691 100644 > --- a/drivers/gpu/drm/i915/i915_irq.c > +++ b/drivers/gpu/drm/i915/i915_irq.c > @@ -3095,7 +3095,7 @@ static void i915_hangcheck_elapsed(struct work_struct > *work) > if (!i915.enable_hangcheck) > return; > > - if (!lockless_dereference(dev_priv->gt.awake)) > + if (!/*lockless_dereference*/(dev_priv->gt.awake)) > return; > > /* As enabling the GPU requires fairly extensive mmio access, Right, neither case appears to include a data dependency and thus lockless_dereference() seems misguided.