On Wed, Sep 15, 2021 at 08:45:56AM +0000, Johannes Thumshirn wrote: > > index 5259edacde380..066a9118c3748 100644 > > --- a/drivers/gpu/drm/i915/i915_utils.h > > +++ b/drivers/gpu/drm/i915/i915_utils.h > > @@ -30,6 +30,7 @@ > > #include <linux/sched.h> > > #include <linux/types.h> > > #include <linux/workqueue.h> > > +#include <linux/sched/clock.h> > > > > struct drm_i915_private; > > struct timer_list; > > This one > > > diff --git a/lib/random32.c b/lib/random32.c > > index 4d0e05e471d72..a57a0e18819d0 100644 > > --- a/lib/random32.c > > +++ b/lib/random32.c > > @@ -39,6 +39,7 @@ > > #include <linux/random.h> > > #include <linux/sched.h> > > #include <linux/bitops.h> > > +#include <linux/slab.h> > > #include <asm/unaligned.h> > > #include <trace/events/random.h> > > > > > > and this one look unrelated. .. but they aren't. All these headers indirectl pulled these headers in before and now don't. random32.c pulls in writeback.h through trace/events/random.h, which pulls in blk-cgroup.h, which pull in blkdev.h, which pulls in slab.h through some other weird twist of fate. The drm code also somehow manages to pull in writeback.h