Hi all, After merging the drm-intel tree, today's linux-next build (x86_64 allmodconfig) failed like this:
drivers/gpu/drm/i915/intel_display.c: In function 'intel_alloc_plane_obj': drivers/gpu/drm/i915/intel_display.c:2089:27: error: 'struct drm_crtc' has no member named 'fb' obj->stride = crtc->base.fb->pitches[0]; ^ drivers/gpu/drm/i915/intel_display.c:2092:36: error: 'struct drm_crtc' has no member named 'fb' mode_cmd.pixel_format = crtc->base.fb->pixel_format; ^ drivers/gpu/drm/i915/intel_display.c:2093:29: error: 'struct drm_crtc' has no member named 'fb' mode_cmd.width = crtc->base.fb->width; ^ drivers/gpu/drm/i915/intel_display.c:2094:30: error: 'struct drm_crtc' has no member named 'fb' mode_cmd.height = crtc->base.fb->height; ^ drivers/gpu/drm/i915/intel_display.c:2095:34: error: 'struct drm_crtc' has no member named 'fb' mode_cmd.pitches[0] = crtc->base.fb->pitches[0]; ^ In file included from arch/x86/include/asm/percpu.h:44:0, from arch/x86/include/asm/preempt.h:5, from include/linux/preempt.h:18, from include/linux/spinlock.h:50, from include/linux/seqlock.h:35, from include/linux/time.h:5, from include/linux/stat.h:18, from include/linux/module.h:10, from drivers/gpu/drm/i915/intel_display.c:28: drivers/gpu/drm/i915/intel_display.c:2099:65: error: 'struct drm_crtc' has no member named 'fb' if (intel_framebuffer_init(dev, to_intel_framebuffer(crtc->base.fb), ^ include/linux/kernel.h:833:49: note: in definition of macro 'container_of' const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/gpu/drm/i915/intel_display.c:2099:34: note: in expansion of macro 'to_intel_framebuffer' if (intel_framebuffer_init(dev, to_intel_framebuffer(crtc->base.fb), ^ drivers/gpu/drm/i915/intel_display.c: In function 'intel_find_plane_obj': drivers/gpu/drm/i915/intel_display.c:2124:23: error: 'struct drm_crtc' has no member named 'fb' if (!intel_crtc->base.fb) ^ drivers/gpu/drm/i915/intel_display.c:2130:24: error: 'struct drm_crtc' has no member named 'fb' kfree(intel_crtc->base.fb); ^ drivers/gpu/drm/i915/intel_display.c:2131:18: error: 'struct drm_crtc' has no member named 'fb' intel_crtc->base.fb = NULL; ^ drivers/gpu/drm/i915/intel_display.c:2143:23: error: 'struct drm_crtc' has no member named 'fb' if (!i->active || !c->fb) ^ In file included from arch/x86/include/asm/percpu.h:44:0, from arch/x86/include/asm/preempt.h:5, from include/linux/preempt.h:18, from include/linux/spinlock.h:50, from include/linux/seqlock.h:35, from include/linux/time.h:5, from include/linux/stat.h:18, from include/linux/module.h:10, from drivers/gpu/drm/i915/intel_display.c:28: drivers/gpu/drm/i915/intel_display.c:2146:30: error: 'struct drm_crtc' has no member named 'fb' fb = to_intel_framebuffer(c->fb); ^ include/linux/kernel.h:833:49: note: in definition of macro 'container_of' const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/gpu/drm/i915/intel_display.c:2146:8: note: in expansion of macro 'to_intel_framebuffer' fb = to_intel_framebuffer(c->fb); ^ drivers/gpu/drm/i915/intel_display.c:2148:31: error: 'struct drm_crtc' has no member named 'fb' drm_framebuffer_reference(c->fb); ^ drivers/gpu/drm/i915/intel_display.c:2149:20: error: 'struct drm_crtc' has no member named 'fb' intel_crtc->base.fb = c->fb; ^ drivers/gpu/drm/i915/intel_display.c:2149:27: error: 'struct drm_crtc' has no member named 'fb' intel_crtc->base.fb = c->fb; ^ drivers/gpu/drm/i915/intel_display.c: In function 'i9xx_get_plane_config': drivers/gpu/drm/i915/intel_display.c:5745:12: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb = kzalloc(sizeof(struct intel_framebuffer), GFP_KERNEL); ^ drivers/gpu/drm/i915/intel_display.c:5746:17: error: 'struct drm_crtc' has no member named 'fb' if (!crtc->base.fb) { ^ drivers/gpu/drm/i915/intel_display.c:5759:12: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->pixel_format = fourcc; ^ drivers/gpu/drm/i915/intel_display.c:5760:12: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->bits_per_pixel = ^ drivers/gpu/drm/i915/intel_display.c:5775:12: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->width = ((val >> 16) & 0xfff) + 1; ^ drivers/gpu/drm/i915/intel_display.c:5776:12: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->height = ((val >> 0) & 0xfff) + 1; ^ drivers/gpu/drm/i915/intel_display.c:5779:12: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->pitches[0] = val & 0xffffff80; ^ drivers/gpu/drm/i915/intel_display.c:5781:53: error: 'struct drm_crtc' has no member named 'fb' aligned_height = intel_align_height(dev, crtc->base.fb->height, ^ In file included from include/linux/cache.h:4:0, from include/linux/time.h:4, from include/linux/stat.h:18, from include/linux/module.h:10, from drivers/gpu/drm/i915/intel_display.c:28: drivers/gpu/drm/i915/intel_display.c:5784:39: error: 'struct drm_crtc' has no member named 'fb' plane_config->size = ALIGN(crtc->base.fb->pitches[0] * ^ include/uapi/linux/kernel.h:10:41: note: in definition of macro '__ALIGN_KERNEL_MASK' #define __ALIGN_KERNEL_MASK(x, mask) (((x) + (mask)) & ~(mask)) ^ include/linux/kernel.h:49:22: note: in expansion of macro '__ALIGN_KERNEL' #define ALIGN(x, a) __ALIGN_KERNEL((x), (a)) ^ drivers/gpu/drm/i915/intel_display.c:5784:23: note: in expansion of macro 'ALIGN' plane_config->size = ALIGN(crtc->base.fb->pitches[0] * ^ drivers/gpu/drm/i915/intel_display.c:5784:39: error: 'struct drm_crtc' has no member named 'fb' plane_config->size = ALIGN(crtc->base.fb->pitches[0] * ^ include/uapi/linux/kernel.h:10:47: note: in definition of macro '__ALIGN_KERNEL_MASK' #define __ALIGN_KERNEL_MASK(x, mask) (((x) + (mask)) & ~(mask)) ^ include/linux/kernel.h:49:22: note: in expansion of macro '__ALIGN_KERNEL' #define ALIGN(x, a) __ALIGN_KERNEL((x), (a)) ^ drivers/gpu/drm/i915/intel_display.c:5784:23: note: in expansion of macro 'ALIGN' plane_config->size = ALIGN(crtc->base.fb->pitches[0] * ^ drivers/gpu/drm/i915/intel_display.c:5784:39: error: 'struct drm_crtc' has no member named 'fb' plane_config->size = ALIGN(crtc->base.fb->pitches[0] * ^ include/uapi/linux/kernel.h:10:58: note: in definition of macro '__ALIGN_KERNEL_MASK' #define __ALIGN_KERNEL_MASK(x, mask) (((x) + (mask)) & ~(mask)) ^ include/linux/kernel.h:49:22: note: in expansion of macro '__ALIGN_KERNEL' #define ALIGN(x, a) __ALIGN_KERNEL((x), (a)) ^ drivers/gpu/drm/i915/intel_display.c:5784:23: note: in expansion of macro 'ALIGN' plane_config->size = ALIGN(crtc->base.fb->pitches[0] * ^ In file included from drivers/gpu/drm/i915/intel_display.c:35:0: drivers/gpu/drm/i915/intel_display.c:5788:32: error: 'struct drm_crtc' has no member named 'fb' pipe, plane, crtc->base.fb->width, ^ include/drm/drmP.h:222:41: note: in definition of macro 'DRM_DEBUG_KMS' drm_ut_debug_printk(__func__, fmt, ##args); \ ^ drivers/gpu/drm/i915/intel_display.c:5789:19: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->height, ^ include/drm/drmP.h:222:41: note: in definition of macro 'DRM_DEBUG_KMS' drm_ut_debug_printk(__func__, fmt, ##args); \ ^ drivers/gpu/drm/i915/intel_display.c:5790:19: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->bits_per_pixel, base, ^ include/drm/drmP.h:222:41: note: in definition of macro 'DRM_DEBUG_KMS' drm_ut_debug_printk(__func__, fmt, ##args); \ ^ drivers/gpu/drm/i915/intel_display.c:5791:19: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->pitches[0], ^ include/drm/drmP.h:222:41: note: in definition of macro 'DRM_DEBUG_KMS' drm_ut_debug_printk(__func__, fmt, ##args); \ ^ drivers/gpu/drm/i915/intel_display.c: In function 'ironlake_get_plane_config': drivers/gpu/drm/i915/intel_display.c:6753:12: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb = kzalloc(sizeof(struct intel_framebuffer), GFP_KERNEL); ^ drivers/gpu/drm/i915/intel_display.c:6754:17: error: 'struct drm_crtc' has no member named 'fb' if (!crtc->base.fb) { ^ drivers/gpu/drm/i915/intel_display.c:6767:12: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->pixel_format = fourcc; ^ drivers/gpu/drm/i915/intel_display.c:6768:12: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->bits_per_pixel = ^ drivers/gpu/drm/i915/intel_display.c:6783:12: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->width = ((val >> 16) & 0xfff) + 1; ^ drivers/gpu/drm/i915/intel_display.c:6784:12: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->height = ((val >> 0) & 0xfff) + 1; ^ drivers/gpu/drm/i915/intel_display.c:6787:12: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->pitches[0] = val & 0xffffff80; ^ drivers/gpu/drm/i915/intel_display.c:6789:53: error: 'struct drm_crtc' has no member named 'fb' aligned_height = intel_align_height(dev, crtc->base.fb->height, ^ In file included from include/linux/cache.h:4:0, from include/linux/time.h:4, from include/linux/stat.h:18, from include/linux/module.h:10, from drivers/gpu/drm/i915/intel_display.c:28: drivers/gpu/drm/i915/intel_display.c:6792:39: error: 'struct drm_crtc' has no member named 'fb' plane_config->size = ALIGN(crtc->base.fb->pitches[0] * ^ include/uapi/linux/kernel.h:10:41: note: in definition of macro '__ALIGN_KERNEL_MASK' #define __ALIGN_KERNEL_MASK(x, mask) (((x) + (mask)) & ~(mask)) ^ include/linux/kernel.h:49:22: note: in expansion of macro '__ALIGN_KERNEL' #define ALIGN(x, a) __ALIGN_KERNEL((x), (a)) ^ drivers/gpu/drm/i915/intel_display.c:6792:23: note: in expansion of macro 'ALIGN' plane_config->size = ALIGN(crtc->base.fb->pitches[0] * ^ drivers/gpu/drm/i915/intel_display.c:6792:39: error: 'struct drm_crtc' has no member named 'fb' plane_config->size = ALIGN(crtc->base.fb->pitches[0] * ^ include/uapi/linux/kernel.h:10:47: note: in definition of macro '__ALIGN_KERNEL_MASK' #define __ALIGN_KERNEL_MASK(x, mask) (((x) + (mask)) & ~(mask)) ^ include/linux/kernel.h:49:22: note: in expansion of macro '__ALIGN_KERNEL' #define ALIGN(x, a) __ALIGN_KERNEL((x), (a)) ^ drivers/gpu/drm/i915/intel_display.c:6792:23: note: in expansion of macro 'ALIGN' plane_config->size = ALIGN(crtc->base.fb->pitches[0] * ^ drivers/gpu/drm/i915/intel_display.c:6792:39: error: 'struct drm_crtc' has no member named 'fb' plane_config->size = ALIGN(crtc->base.fb->pitches[0] * ^ include/uapi/linux/kernel.h:10:58: note: in definition of macro '__ALIGN_KERNEL_MASK' #define __ALIGN_KERNEL_MASK(x, mask) (((x) + (mask)) & ~(mask)) ^ include/linux/kernel.h:49:22: note: in expansion of macro '__ALIGN_KERNEL' #define ALIGN(x, a) __ALIGN_KERNEL((x), (a)) ^ drivers/gpu/drm/i915/intel_display.c:6792:23: note: in expansion of macro 'ALIGN' plane_config->size = ALIGN(crtc->base.fb->pitches[0] * ^ In file included from drivers/gpu/drm/i915/intel_display.c:35:0: drivers/gpu/drm/i915/intel_display.c:6796:32: error: 'struct drm_crtc' has no member named 'fb' pipe, plane, crtc->base.fb->width, ^ include/drm/drmP.h:222:41: note: in definition of macro 'DRM_DEBUG_KMS' drm_ut_debug_printk(__func__, fmt, ##args); \ ^ drivers/gpu/drm/i915/intel_display.c:6797:19: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->height, ^ include/drm/drmP.h:222:41: note: in definition of macro 'DRM_DEBUG_KMS' drm_ut_debug_printk(__func__, fmt, ##args); \ ^ drivers/gpu/drm/i915/intel_display.c:6798:19: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->bits_per_pixel, base, ^ include/drm/drmP.h:222:41: note: in definition of macro 'DRM_DEBUG_KMS' drm_ut_debug_printk(__func__, fmt, ##args); \ ^ drivers/gpu/drm/i915/intel_display.c:6799:19: error: 'struct drm_crtc' has no member named 'fb' crtc->base.fb->pitches[0], ^ include/drm/drmP.h:222:41: note: in definition of macro 'DRM_DEBUG_KMS' drm_ut_debug_printk(__func__, fmt, ##args); \ ^ drivers/gpu/drm/i915/intel_display.c: In function 'intel_modeset_gem_init': drivers/gpu/drm/i915/intel_display.c:11783:9: error: 'struct drm_crtc' has no member named 'fb' if (!c->fb) ^ In file included from arch/x86/include/asm/percpu.h:44:0, from arch/x86/include/asm/preempt.h:5, from include/linux/preempt.h:18, from include/linux/spinlock.h:50, from include/linux/seqlock.h:35, from include/linux/time.h:5, from include/linux/stat.h:18, from include/linux/module.h:10, from drivers/gpu/drm/i915/intel_display.c:28: drivers/gpu/drm/i915/intel_display.c:11786:30: error: 'struct drm_crtc' has no member named 'fb' fb = to_intel_framebuffer(c->fb); ^ include/linux/kernel.h:833:49: note: in definition of macro 'container_of' const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/gpu/drm/i915/intel_display.c:11786:8: note: in expansion of macro 'to_intel_framebuffer' fb = to_intel_framebuffer(c->fb); ^ drivers/gpu/drm/i915/intel_display.c:11790:33: error: 'struct drm_crtc' has no member named 'fb' drm_framebuffer_unreference(c->fb); ^ drivers/gpu/drm/i915/intel_display.c:11791:5: error: 'struct drm_crtc' has no member named 'fb' c->fb = NULL; ^ drivers/gpu/drm/i915/intel_fbdev.c: In function 'intel_fbdev_init_bios': drivers/gpu/drm/i915/intel_fbdev.c:484:35: error: 'struct drm_crtc' has no member named 'fb' if (!intel_crtc->active || !crtc->fb) { ^ In file included from arch/x86/include/asm/percpu.h:44:0, from arch/x86/include/asm/preempt.h:5, from include/linux/preempt.h:18, from include/linux/spinlock.h:50, from include/linux/seqlock.h:35, from include/linux/time.h:5, from include/linux/stat.h:18, from include/linux/module.h:10, from drivers/gpu/drm/i915/intel_fbdev.c:27: drivers/gpu/drm/i915/intel_fbdev.c:494:34: error: 'struct drm_crtc' has no member named 'fb' fb = to_intel_framebuffer(crtc->fb); ^ include/linux/kernel.h:833:49: note: in definition of macro 'container_of' const typeof( ((type *)0)->member ) *__mptr = (ptr); \ ^ drivers/gpu/drm/i915/intel_fbdev.c:494:9: note: in expansion of macro 'to_intel_framebuffer' fb = to_intel_framebuffer(crtc->fb); ^ In file included from arch/x86/include/asm/bug.h:38:0, from include/linux/bug.h:4, from include/linux/thread_info.h:11, from arch/x86/include/asm/preempt.h:6, from include/linux/preempt.h:18, from include/linux/spinlock.h:50, from include/linux/seqlock.h:35, from include/linux/time.h:5, from include/linux/stat.h:18, from include/linux/module.h:10, from drivers/gpu/drm/i915/intel_fbdev.c:27: drivers/gpu/drm/i915/intel_fbdev.c:563:13: error: 'struct drm_crtc' has no member named 'fb' WARN(!crtc->fb, ^ include/asm-generic/bug.h:95:25: note: in definition of macro 'WARN' int __ret_warn_on = !!(condition); \ ^ Caused by commit f4510a2752b7 ("drm: Replace crtc fb with primary plane fb (v3)") from the drm tree interacting with various commits in the drm-intel tree. I applied this merge fix patch: