Bug ID 1234668
Summary Kernel compilation with activated DRBD support fails with linux-6.4.0-150600.23.30
Classification openSUSE
Product openSUSE Distribution
Version Leap 15.6
Hardware Other
OS Other
Status NEW
Severity Normal
Priority P5 - None
Component Kernel:Drivers
Assignee kernel-bugs@suse.de
Reporter susebugzilla@engert-netzwerkdienste.de
QA Contact qa-bugs@suse.de
Target Milestone ---
Found By ---
Blocker ---

I tried to include DRBD support into the kernel, but compilation failed.

How to replicate this bug:
Activate DRBD support by setting CONFIG_BLK_DEV_DRBD=y or CONFIG_BLK_DEV_DRBD=m

Expected result:
Get a successfully compiled kernel with DRBD support.

Actual result:
Got this error messages instead:

my_system:/usr/src/linux-6.4.0-150600.23.30-default # make
  SYNC    include/config/auto.conf.cmd
  GEN     Makefile
  [... Lots of successful stuff deleted ...]
  CC      drivers/block/drbd/drbd_buildtag.o
  CC      drivers/block/drbd/drbd_bitmap.o
  CC      drivers/block/drbd/drbd_proc.o
  CC      drivers/block/drbd/drbd_worker.o
  CC      drivers/block/drbd/drbd_receiver.o
  CC      drivers/block/drbd/drbd_req.o
  CC      drivers/block/drbd/drbd_actlog.o
  CC      drivers/block/drbd/drbd_main.o
  CC      drivers/block/drbd/drbd_strings.o
  CC      drivers/block/drbd/drbd_nl.o
/usr/src/linux-6.4.0-150600.23.30/drivers/block/drbd/drbd_nl.c: In function
‘open_backing_dev’:
/usr/src/linux-6.4.0-150600.23.30/drivers/block/drbd/drbd_nl.c:1644:11: error:
implicit declaration of function ‘bdev_open_by_path’; did you mean
‘blkdev_get_by_path’? [-Werror=implicit-function-declaration]
  handle = bdev_open_by_path(bdev_path, BLK_OPEN_READ | BLK_OPEN_WRITE,
           ^~~~~~~~~~~~~~~~~
           blkdev_get_by_path
/usr/src/linux-6.4.0-150600.23.30/drivers/block/drbd/drbd_nl.c:1644:9: warning:
assignment makes pointer from integer without a cast [-Wint-conversion]
  handle = bdev_open_by_path(bdev_path, BLK_OPEN_READ | BLK_OPEN_WRITE,
         ^
/usr/src/linux-6.4.0-150600.23.30/drivers/block/drbd/drbd_nl.c:1655:34: error:
dereferencing pointer to incomplete type ‘struct bdev_handle’
  err = bd_link_disk_holder(handle->bdev, device->vdisk);
                                  ^~
/usr/src/linux-6.4.0-150600.23.30/drivers/block/drbd/drbd_nl.c:1657:3: error:
implicit declaration of function ‘bdev_release’; did you mean ‘dst_release’?
[-Werror=implicit-function-declaration]
   bdev_release(handle);
   ^~~~~~~~~~~~
   dst_release
/usr/src/linux-6.4.0-150600.23.30/drivers/block/drbd/drbd_nl.c: In function
‘open_backing_devices’:
/usr/src/linux-6.4.0-150600.23.30/drivers/block/drbd/drbd_nl.c:1671:7: error:
assignment from incompatible pointer type [-Werror=incompatible-pointer-types]
  bdev = open_backing_dev(device, new_disk_conf->backing_dev, device, true);
       ^
/usr/src/linux-6.4.0-150600.23.30/drivers/block/drbd/drbd_nl.c:1684:2: error:
‘handle’ undeclared (first use in this function); did you mean ‘halt’?
  handle = open_backing_dev(device, new_disk_conf->meta_dev,
  ^~~~~~
  halt
/usr/src/linux-6.4.0-150600.23.30/drivers/block/drbd/drbd_nl.c:1684:2: note:
each undeclared identifier is reported only once for each function it appears
in
cc1: some warnings being treated as errors
make[4]: *** [/usr/src/linux-6.4.0-150600.23.30/scripts/Makefile.build:252:
drivers/block/drbd/drbd_nl.o] Fehler 1
make[3]: *** [/usr/src/linux-6.4.0-150600.23.30/scripts/Makefile.build:497:
drivers/block/drbd] Fehler 2
make[2]: *** [/usr/src/linux-6.4.0-150600.23.30/scripts/Makefile.build:497:
drivers/block] Fehler 2
make[1]: *** [/usr/src/linux-6.4.0-150600.23.30/scripts/Makefile.build:497:
drivers] Fehler 2
make: *** [/usr/src/linux-6.4.0-150600.23.30/Makefile:2064: .] Fehler 2

The reason for this problem looks to me like an incomplete backport from kernel
version 6.7 to kernel version 6.4.0. The error messages refer to code added
with the Git-commit 75e27d373425c349954c3770bee659a1bbdb3cc0 ("drdb: Convert to
use bdev_open_by_path()") to kernel-source, but the referred structures and
functions in bdev.c are still missing. It could be this patch:

 https://lore.kernel.org/all/20230823104857.11437-1-jack@suse.cz/


You are receiving this mail because: