Re: next: Build failure in drivers/s390/block/dcssblk.c due to 'dax: enable dax ...'

From: Guenter Roeck
Date: Wed May 18 2016 - 18:12:27 EST


On Wed, May 18, 2016 at 12:32:56PM -0600, Vishal Verma wrote:
> On Wed, May 18, 2016 at 06:30:16AM -0700, Guenter Roeck wrote:
> > drivers/s390/block/dcssblk.c:43:2: warning: initialization from incompatible pointer type [enabled by default]
> > drivers/s390/block/dcssblk.c:43:2: warning: (near initialization for 'dcssblk_devops.direct_access') [enabled by default]
> > drivers/s390/block/dcssblk.c:886:1: error: conflicting types for 'dcssblk_direct_access'
> > drivers/s390/block/dcssblk.c:33:13: note: previous declaration of 'dcssblk_direct_access' was here
> > drivers/s390/block/dcssblk.c:33:13: warning: 'dcssblk_direct_access' used but never defined [enabled by default]
> > drivers/s390/block/dcssblk.c:886:1: warning: 'dcssblk_direct_access' defined but not used [-Wunused-function]
> > scripts/Makefile.build:295: recipe for target 'drivers/s390/block/dcssblk.o' failed
> > make[2]: *** [drivers/s390/block/dcssblk.o] Error 1
> >
> > Bisect points to commit 2b954df309078 ("dax: enable dax in the presence of known media errors (badblocks)".
> > Bisect log is attached.
> >
> > Guenter
> >
> Hi Guenter,
>
> Thanks for the report.
> The following incremental patch should fix the problem. I'll fold it in

Yes, it does.

Guenter

> to dax-misc (to prevent the bisect regression), and it should get picked
> by -next in the next build.
> -Vishal
>
>
> 8<-----
>
> From 56f2a2a270b853263704d5b8fa6a6a898fe313ca Mon Sep 17 00:00:00 2001
> From: Vishal Verma <vishal.l.verma@xxxxxxxxx>
> Date: Wed, 18 May 2016 12:12:23 -0600
> Subject: [PATCH] dcssblk: fix the direct_access prototype to add 'size'
>
> Fixes 2b954df309078 dax: enable dax in the presence of known media
> errors (badblocks)
>
> When 'size' was added to the direct_access arguments, I neglected to
> update the prototype declaration for dcssblk.
>
> Reported-by: Guenter Roeck <linux@xxxxxxxxxxxx>
> Signed-off-by: Vishal Verma <vishal.l.verma@xxxxxxxxx>

Tested-by: Guenter Roeck <linux@xxxxxxxxxxxx>

> ---
> drivers/s390/block/dcssblk.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/s390/block/dcssblk.c b/drivers/s390/block/dcssblk.c
> index c45d538..bed53c4 100644
> --- a/drivers/s390/block/dcssblk.c
> +++ b/drivers/s390/block/dcssblk.c
> @@ -31,7 +31,7 @@ static void dcssblk_release(struct gendisk *disk, fmode_t mode);
> static blk_qc_t dcssblk_make_request(struct request_queue *q,
> struct bio *bio);
> static long dcssblk_direct_access(struct block_device *bdev, sector_t secnum,
> - void __pmem **kaddr, pfn_t *pfn);
> + void __pmem **kaddr, pfn_t *pfn, long size);
>
> static char dcssblk_segments[DCSSBLK_PARM_LEN] = "\0";
>
> --
> 2.5.5
>