Subject: linux-next: build failure after merge of the drm tree

From: Stephen Rothwell <[email-masked]>
Date: Thu, 19 Jan 2023 13:12:22 +1100

Hi all,

After merging the drm tree, today's linux-next build (x86_64 allmodconfig)
failed like this:

In file included from drivers/gpu/drm/drm_fb_helper.c:33:
drivers/gpu/drm/drm_fb_helper.c: In function 'drm_fb_helper_single_fb_probe':
drivers/gpu/drm/drm_fb_helper.c:1968:24: error: 'dev' undeclared (first use in this function); did you mean 'cdev'?
 1968 |         if (dev_is_pci(dev->dev))
      |                        ^~~
include/linux/pci.h:1151:25: note: in definition of macro 'dev_is_pci'
 1151 | #define dev_is_pci(d) ((d)->bus == &pci_bus_type)
      |                         ^
drivers/gpu/drm/drm_fb_helper.c:1968:24: note: each undeclared identifier is reported only once for each function it appears in
 1968 |         if (dev_is_pci(dev->dev))
      |                        ^~~
include/linux/pci.h:1151:25: note: in definition of macro 'dev_is_pci'
 1151 | #define dev_is_pci(d) ((d)->bus == &pci_bus_type)
      |                         ^
In file included from include/linux/atomic/atomic-instrumented.h:20,
                 from include/linux/atomic.h:82,
                 from include/linux/console.h:17,
                 from drivers/gpu/drm/drm_fb_helper.c:32:
include/linux/compiler_types.h:299:27: error: expression in static assertion is not an integer
  299 | #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
      |                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/build_bug.h:78:56: note: in definition of macro '__static_assert'
   78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
      |                                                        ^~~~
include/linux/container_of.h:20:9: note: in expansion of macro 'static_assert'
   20 |         static_assert(__same_type(*(ptr), ((type *)0)->member) ||       \
      |         ^~~~~~~~~~~~~
include/linux/container_of.h:20:23: note: in expansion of macro '__same_type'
   20 |         static_assert(__same_type(*(ptr), ((type *)0)->member) ||       \
      |                       ^~~~~~~~~~~
include/linux/pci.h:541:23: note: in expansion of macro 'container_of'
  541 | #define to_pci_dev(n) container_of(n, struct pci_dev, dev)
      |                       ^~~~~~~~~~~~
drivers/gpu/drm/drm_fb_helper.c:1969:46: note: in expansion of macro 'to_pci_dev'
 1969 |                 vga_switcheroo_client_fb_set(to_pci_dev(dev->dev), fb_helper->info);
      |                                              ^~~~~~~~~~

Caused by commit

  cff84bac9922 ("drm/fh-helper: Split fbdev single-probe helper")

interacting with commit

  d1d5101452ab ("drm/fb-helper: Set framebuffer for vga-switcheroo clients")

from the drm-misc-fixes tree.

I have added the following merge fix patch.

From: Stephen Rothwell <[email-masked]>
Date: Thu, 19 Jan 2023 12:42:56 +1100
Subject: [PATCH] fix up for "drm/fb-helper: Set framebuffer for vga-switcheroo clients"

Signed-off-by: Stephen Rothwell <[email-masked]>
---
 drivers/gpu/drm/drm_fb_helper.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
index 97049a26fca2..5e445c61252d 100644
--- a/drivers/gpu/drm/drm_fb_helper.c
+++ b/drivers/gpu/drm/drm_fb_helper.c
@@ -1942,6 +1942,7 @@ static int drm_fb_helper_single_fb_probe(struct drm_fb_helper *fb_helper,
 					 int preferred_bpp)
 {
 	struct drm_client_dev *client = &fb_helper->client;
+	struct drm_device *dev = fb_helper->dev;
 	struct drm_fb_helper_surface_size sizes;
 	int ret;
 
-- 
2.35.1

-- 
Cheers,
Stephen Rothwell