[DRBD-user] Linux 5.0 type of queue_lock has been changed/ drbd module error
Roland Kammerer
roland.kammerer at linbit.com
Wed Mar 6 11:19:10 CET 2019
On Wed, Mar 06, 2019 at 12:03:31AM +0100, cbox at gmx.net wrote:
> Hello,
>
> Kernel 5.0.0
> File include/linux/blkdev.h
>
> queue_lock is no longer a pointer:
>
> struct request_queue {
> :
> spinlock_t queue_lock;
> :
> }
>
> Kernel 4.20.13
> struct request_queue {
> spinlock_t *queue_lock;
> }
>
> This triggers a type error/breaks building drbd 9.0.16 module
> drbd/drbd_main.c Line 3738
> q->queue_lock = &resource->req_lock;
>
> The question is what is wrong: Kernel or DRBD?
The answer is: nobody
DRBD9 is developed out of tree. Obviously code in Linux changes (all the
time). What we do is:
- Change our code that it reflects the changes in Linux upstream. We
want to use the new, cool features ourselves.
- Provide compat code so that the out of tree module builds for all the
older kernels we care about.
For 5.0 this has not happened yet. Upstream changed something, nobody is
wrong. There will be a new 9.0.17 "soon". Before we release it we make
sure it compiles with latest upstream (and the old kernels we care
about). For now your kernel is too new.
Regards, rck
More information about the drbd-user
mailing list