RemixVSL / iomemory-vsl

Updated Fusion-io iomemory VSL Linux (version 3.2.16) driver for recent kernels.
150 stars 27 forks source link

new_generation dkms build fails on Arch w kernel 5.3.8 #50

Closed sotiris-bos closed 4 years ago

sotiris-bos commented 4 years ago

Bug description

DKMS build fails.

Does it not work with kernels > 4.19 with the gcc changes?

How to reproduce

sudo dkms build -m iomemory-vsl -v 3.2.16

Kernel preparation unnecessary for this kernel.  Skipping...

Building module:
cleaning build area...
'make' DKMS_KERNEL_VERSION=5.3.8-arch1-1.........(bad exit status: 2)
Error! Bad return status for module build on kernel: 5.3.8-arch1-1 (x86_64)
Consult /var/lib/dkms/iomemory-vsl/3.2.16/build/make.log for more information.

Environment information

  1. uname -r: 5.3.8-arch1-1
  2. The C compiler version used: gcc (GCC) 9.2.0
  3. Arch Linux
  4. next_generation

make log:

cat /var/lib/dkms/iomemory-vsl/3.2.16/build/make.log 
DKMS make.log for iomemory-vsl-3.2.16 for kernel 5.3.8-arch1-1 (x86_64)
Tue  5 Nov 21:09:02 EET 2019
if [ "92" -gt "63" ];then \
        if [ ! -f "kfio/x86_64_cc92_libkfio.o_shipped" ];then \
                cp kfio/x86_64_cc63_libkfio.o_shipped kfio/x86_64_cc92_libkfio.o_shipped; \
        fi \
fi
./kfio_config.sh -a x86_64 -o include/fio/port/linux/kfio_config.h -k /lib/modules/5.3.8-arch1-1/build -p -d /var/lib/dkms/iomemory-vsl/3.2.16/build/kfio_config -l 0
Detecting Kernel Flags
Config dir         : /var/lib/dkms/iomemory-vsl/3.2.16/build/kfio_config
Output file        : include/fio/port/linux/kfio_config.h
Kernel output dir  : /lib/modules/5.3.8-arch1-1/build
Kernel source dir  : 
Starting tests:
  1572980942.565  KFIOC_MISSING_WORK_FUNC_T...
  1572980942.575  KFIOC_WORKDATA_PASSED_IN_WORKSTRUCT...
  1572980942.586  KFIOC_HAS_PCI_ERROR_HANDLERS...
  1572980942.595  KFIOC_HAS_GLOBAL_REGS_POINTER...
  1572980942.604  KFIOC_HAS_SYSRQ_KEY_OP_ENABLE_MASK...
  1572980942.614  KFIOC_HAS_DISK_STATS_READ_WRITE_ARRAYS...
  1572980942.624  KFIOC_HAS_LINUX_SCATTERLIST_H...
  1572980942.634  KFIOC_KMEM_CACHE_CREATE_REMOVED_DTOR...
  1572980942.645  KFIOC_BIO_ENDIO_HAS_BYTES_DONE...
  1572980942.659  KFIOC_INVALIDATE_BDEV_REMOVED_DESTROY_DIRTY_BUFFERS...
  1572980942.669  KFIOC_NEEDS_VIRT_TO_PHYS...
  1572980942.680  KFIOC_HAS_BLK_UNPLUG...
  1572980942.692  KFIOC_HAS_BLK_DELAY_QUEUE...
  1572980942.705  KFIOC_REQUEST_QUEUE_HAS_UNPLUG_FN...
  1572980942.718  KFIOC_REQUEST_QUEUE_UNPLUG_FN_HAS_EXTRA_BOOL_PARAM...
  1572980942.732  KFIOC_BACKING_DEV_INFO_HAS_UNPLUG_IO_FN...
  1572980942.748  KFIOC_HAS_KMEM_CACHE...
  1572980942.763  KFIOC_HAS_MUTEX_SUBSYSTEM...
  1572980942.778  KFIOC_STRUCT_FILE_HAS_PATH...
  1572980942.793  KFIOC_HAS_PATH_LOOKUP...
  1572980942.812  KFIOC_UNREGISTER_BLKDEV_RETURNS_VOID...
  1572980942.828  KFIOC_PARTITION_STATS...
  1572980942.854  KFIOC_HAS_NEW_BLOCK_METHODS...
  1572980942.873  KFIOC_BLOCK_DEVICE_RELEASE_RETURNS_INT...
  1572980942.892  KFIOC_HAS_NEW_BLKDEV_METHODS...
  1572980942.911  KFIOC_HAS_COMPAT_IOCTL_METHOD...
  1572980942.929  KFIOC_COMPAT_IOCTL_RETURNS_LONG...
  1572980942.951  KFIOC_DISCARD...
  1572980942.974  KFIOC_DISCARD_ZEROES_IN_LIMITS...
  1572980942.995  KFIOC_HAS_REQ_UNPLUG...
  1572980943.020  KFIOC_HAS_BIO_RW_SYNC...
  1572980943.043  KFIOC_HAS_BIO_RW_UNPLUG...
  1572980943.065  KFIOC_HAS_BIOVEC_ITERATORS...
  1572980943.088  KFIOC_DISCARD_GRANULARITY_IN_LIMITS...
  1572980943.111  KFIOC_BARRIER...
  1572980943.138  KFIOC_USE_LINUX_UACCESS_H...
  1572980943.160  KFIOC_HAS_SPIN_LOCK_IRQSAVE_NESTED...
  1572980943.187  KFIOC_MODULE_PARAM_ARRAY_NUMP...
  1572980943.212  KFIOC_OWNER_IN_STRUCT_PROC_DIR_ENTRY...
  1572980943.238  KFIOC_CONFIG_PREEMPT_RT...
  1572980943.267  KFIOC_CONFIG_TREE_PREEMPT_RCU...
  1572980943.287  KFIOC_HAS_BLK_QUEUE_HARDSECT_SIZE...
  1572980943.314  KFIOC_HAS_END_REQUEST...
  1572980943.337  KFIOC_USE_IO_SCHED...
  1572980943.368  KFIOC_USE_NEW_IO_SCHED...
  1572980943.393  KFIOC_HAS_ELV_DEQUEUE_REQUEST...
  1572980943.431  KFIOC_HAS_BIO_RW_FLAGGED...
  1572980943.463  KFIOC_HAS_INFLIGHT_RW...
  1572980943.501  KFIOC_HAS_INFLIGHT_RW_ATOMIC...
  1572980944.498  KFIOC_HAS_BLK_LIMITS_IO_MIN...
  1572980944.769  KFIOC_HAS_BLK_LIMITS_IO_OPT...
  1572980944.798  KFIOC_HAS_BLK_QUEUE_MAX_SEGMENTS...
  1572980944.826  KFIOC_HAS_UNIFIED_BLKTYPES...
  1572980944.872  KFIOC_HAS_BIO_RW_DISCARD...
  1572980944.904  KFIOC_HAS_SEPARATE_OP_FLAGS...
  1572980944.944  KFIOC_SYSRQ_HANDLER_NEEDS_TTY_STRUCT...
  1572980944.979  KFIOC_PCI_REQUEST_REGIONS_CONST_CHAR...
  1572980945.004  KFIOC_FOPS_USE_LOCKED_IOCTL...
  1572980945.029  KFIOC_HAS_RQ_POS_BYTES...
  1572980945.060  KFIOC_HAS_RQ_IS_SYNC...
  1572980945.099  KFIOC_HAS_RQ_FOR_EACH_BIO...
  1572980945.133  KFIOC_HAS_REQ_RW_SYNC...
  1572980945.160  KFIOC_BIOSET_CREATE_HAS_THIRD_ARG...
  1572980945.195  KFIOC_QUEUE_HAS_NONROT_FLAG...
  1572980945.229  KFIOC_QUEUE_HAS_RANDOM_FLAG...
  1572980945.257  KFIOC_KBLOCKD_SCHEDULE_HAS_QUEUE_ARG...
  1572980945.284  KFIOC_TASK_HAS_NR_CPUS_ALLOWED...
  1572980945.335  KFIOC_TASK_HAS_BOUND_FLAG...
  1572980945.372  KFIOC_NUMA_MAPS...
  1572980945.635  KFIOC_PCI_HAS_NUMA_INFO...
  1572980945.663  KFIOC_CACHE_ALLOC_NODE_TAKES_FLAGS...
  1572980945.705  KFIOC_NEW_BARRIER_SCHEME...
  1572980945.733  KFIOC_NEWER_BARRIER_SCHEME...
  1572980945.766  KFIOC_HAS_QUEUE_FLAG_CLUSTER...
  1572980945.804  KFIOC_HAS_QUEUE_LIMITS_CLUSTER...
  1572980945.853  KFIOC_HAS_QUEUE_FLAG_CLEAR_UNLOCKED...
  1572980945.879  KFIOC_HAS_BIO_COMP_CPU...
  1572980945.926  KFIOC_BVEC_KMAP_IRQ_HAS_LONG_FLAGS...
  1572980945.969  KFIOC_MAKE_REQUEST_FN_VOID...
  1572980946.012  KFIOC_HAS_BLK_FS_REQUEST...
  1572980946.044  KFIOC_REQUEST_HAS_CMD_TYPE...
  1572980946.080  KFIOC_KMAP_ATOMIC_NEEDS_TYPE...
  1572980946.107  KFIOC_HAS_BLK_ALLOC_QUEUE_NODE...
  1572980946.136  KFIOC_SGLIST_NEW_API...
  1572980946.158  KFIOC_HAS_SCSI_QD_CHANGE_FN...
  1572980946.189  KFIOC_HAS_SCSI_LUNID_UINT...
  1572980946.216  KFIOC_HAS_PROCFS_PDE_DATA...
  1572980946.243  KFIOC_HAS_PROC_CREATE_DATA...
  1572980946.275  KFIOC_HAS_NEW_QUEUECOMMAND_SIGNATURE...
  1572980946.306  KFIOC_HAS_SCSI_SG_FNS...
  1572980946.331  KFIOC_HAS_SCSI_SG_COPY_FNS...
  1572980946.357  KFIOC_HAS_SCSI_RESID_FNS...
  1572980946.398  KFIOC_ACPI_EVAL_INT_TAKES_UNSIGNED_LONG_LONG...
  1572980946.423  KFIOC_BIO_HAS_HW_SEGMENTS...
  1572980946.462  KFIOC_BIO_HAS_SEG_SIZE...
  1572980946.488  KFIOC_BIO_HAS_DESTRUCTOR...
  1572980946.530  KFIOC_BIO_HAS_ATOMIC_REMAINING...
  1572980947.502  KFIOC_BIO_HAS_INTEGRITY...
  1572980947.769  KFIOC_BIO_HAS_SPECIAL...
  1572980947.800  KFIOC_HAS_FILE_INODE_HELPER...
  1572980948.075  KFIOC_HAS_CPUMASK_WEIGHT...
  1572980948.100  KFIOC_BIO_HAS_USCORE_BI_CNT...
  1572980948.129  KFIOC_BIO_ENDIO_REMOVED_ERROR...
  1572980948.155  KFIOC_BIO_ERROR_CHANGED_TO_STATUS...
  1572980948.185  KFIOC_MAKE_REQUEST_FN_UINT...
  1572980948.212  KFIOC_GET_USER_PAGES_REQUIRES_TASK...
  1572980948.254  KFIOC_BARRIER_USES_QUEUE_FLAGS...
  1572980948.281  KFIOC_GET_USER_PAGES_HAS_GUP_FLAGS...
  1572980948.312  KFIOC_HAS_HOTPLUG_STATE_MACHINE...
  1572980948.343  KFIOC_HAS_HOTPLUG_BP_PREPARE_DYN_STATES...
  1572980948.382  KFIOC_HAS_HOTPLUG_AP_ONLINE_DYN_STATES...
  1572980948.415  KFIOC_HAS_HOTPLUG_STATES_REMOVAL_BUG...
  1572980948.447  KFIOC_HAS_PCI_ENABLE_MSIX_EXACT...
  1572980948.478  KFIOC_ELEVATOR_EXIT_HAS_REQQ_PARAM...
  1572980948.514  KFIOC_HAS_BLK_RQ_IS_PASSTHROUGH...
  1572980948.547  KFIOC_HAS_BLK_QUEUE_BOUNCE...
  1572980948.570  KFIOC_HAS_BLK_QUEUE_SPLIT2...
  1572980948.599  KFIOC_HAS_BLK_QUEUE_FLAG_OPS...
  1572980948.635  KFIOC_BIO_HAS_ERROR...
  1572980948.674  KFIOC_REQ_HAS_ERRORS...
  1572980948.717  KFIOC_REQ_HAS_ERROR_COUNT...
  1572980948.745  KFIOC_BOUNCE_H...
  1572980948.778  KFIOC_HAS_TIMER_SETUP...
  1572980948.816  KFIOC_HAS_DISK_STATS_NSECS...
  1572980948.853  KFIOC_HAS_COARSE_REAL_TS...
  1572980948.881  KFIOC_HAS_ELEVATOR_INIT...
Started tests, waiting for completions...
  1572980949.034  KFIOC_MISSING_WORK_FUNC_T=0
  1572980949.234  KFIOC_WORKDATA_PASSED_IN_WORKSTRUCT=1
  1572980949.416  KFIOC_HAS_PCI_ERROR_HANDLERS=1
  1572980949.587  KFIOC_HAS_GLOBAL_REGS_POINTER=1
  1572980949.742  KFIOC_HAS_SYSRQ_KEY_OP_ENABLE_MASK=1
  1572980949.876  KFIOC_HAS_DISK_STATS_READ_WRITE_ARRAYS=1
  1572980950.009  KFIOC_HAS_LINUX_SCATTERLIST_H=0
  1572980950.142  KFIOC_KMEM_CACHE_CREATE_REMOVED_DTOR=1
  1572980950.273  KFIOC_BIO_ENDIO_HAS_BYTES_DONE=0
  1572980950.400  KFIOC_INVALIDATE_BDEV_REMOVED_DESTROY_DIRTY_BUFFERS=1
  1572980950.548  KFIOC_NEEDS_VIRT_TO_PHYS=0
  1572980950.675  KFIOC_HAS_BLK_UNPLUG=0
  1572980950.786  KFIOC_HAS_BLK_DELAY_QUEUE=0
  1572980950.888  KFIOC_REQUEST_QUEUE_HAS_UNPLUG_FN=0
  1572980950.968  KFIOC_REQUEST_QUEUE_UNPLUG_FN_HAS_EXTRA_BOOL_PARAM=1
  1572980951.057  KFIOC_BACKING_DEV_INFO_HAS_UNPLUG_IO_FN=0
  1572980951.140  KFIOC_HAS_KMEM_CACHE=1
  1572980951.219  KFIOC_HAS_MUTEX_SUBSYSTEM=1
  1572980951.304  KFIOC_STRUCT_FILE_HAS_PATH=0
  1572980951.383  KFIOC_HAS_PATH_LOOKUP=0
  1572980951.463  KFIOC_UNREGISTER_BLKDEV_RETURNS_VOID=1
  1572980951.543  KFIOC_PARTITION_STATS=1
  1572980951.622  KFIOC_HAS_NEW_BLOCK_METHODS=1
  1572980951.701  KFIOC_BLOCK_DEVICE_RELEASE_RETURNS_INT=0
  1572980951.782  KFIOC_HAS_NEW_BLKDEV_METHODS=1
  1572980951.862  KFIOC_HAS_COMPAT_IOCTL_METHOD=1
  1572980951.943  KFIOC_COMPAT_IOCTL_RETURNS_LONG=1
  1572980952.023  KFIOC_DISCARD=1
  1572980952.103  KFIOC_DISCARD_ZEROES_IN_LIMITS=0
  1572980952.182  KFIOC_HAS_REQ_UNPLUG=0
  1572980952.261  KFIOC_HAS_BIO_RW_SYNC=0
  1572980952.341  KFIOC_HAS_BIO_RW_UNPLUG=0
  1572980952.421  KFIOC_HAS_BIOVEC_ITERATORS=1
  1572980952.501  KFIOC_DISCARD_GRANULARITY_IN_LIMITS=1
  1572980952.584  KFIOC_BARRIER=0
  1572980952.666  KFIOC_USE_LINUX_UACCESS_H=1
  1572980952.748  KFIOC_HAS_SPIN_LOCK_IRQSAVE_NESTED=1
  1572980952.830  KFIOC_MODULE_PARAM_ARRAY_NUMP=1
  1572980952.910  KFIOC_OWNER_IN_STRUCT_PROC_DIR_ENTRY=0
  1572980952.991  KFIOC_CONFIG_PREEMPT_RT=0
  1572980953.072  KFIOC_CONFIG_TREE_PREEMPT_RCU=0
  1572980953.152  KFIOC_HAS_BLK_QUEUE_HARDSECT_SIZE=0
  1572980953.233  KFIOC_HAS_END_REQUEST=0
  1572980953.313  KFIOC_USE_IO_SCHED=0
  1572980953.393  KFIOC_USE_NEW_IO_SCHED=0
  1572980953.474  KFIOC_HAS_ELV_DEQUEUE_REQUEST=0
  1572980953.555  KFIOC_HAS_BIO_RW_FLAGGED=0
  1572980953.634  KFIOC_HAS_INFLIGHT_RW=0
  1572980953.713  KFIOC_HAS_INFLIGHT_RW_ATOMIC=0
  1572980953.794  KFIOC_HAS_BLK_LIMITS_IO_MIN=1
  1572980953.874  KFIOC_HAS_BLK_LIMITS_IO_OPT=1
  1572980953.954  KFIOC_HAS_BLK_QUEUE_MAX_SEGMENTS=1
  1572980954.035  KFIOC_HAS_UNIFIED_BLKTYPES=1
  1572980954.114  KFIOC_HAS_BIO_RW_DISCARD=0
  1572980954.194  KFIOC_HAS_SEPARATE_OP_FLAGS=1
  1572980954.274  KFIOC_SYSRQ_HANDLER_NEEDS_TTY_STRUCT=0
  1572980954.353  KFIOC_PCI_REQUEST_REGIONS_CONST_CHAR=1
  1572980954.434  KFIOC_FOPS_USE_LOCKED_IOCTL=0
  1572980954.513  KFIOC_HAS_RQ_POS_BYTES=1
  1572980954.592  KFIOC_HAS_RQ_IS_SYNC=1
  1572980954.673  KFIOC_HAS_RQ_FOR_EACH_BIO=1
  1572980954.753  KFIOC_HAS_REQ_RW_SYNC=0
  1572980954.834  KFIOC_BIOSET_CREATE_HAS_THIRD_ARG=0
  1572980954.913  KFIOC_QUEUE_HAS_NONROT_FLAG=1
  1572980954.994  KFIOC_QUEUE_HAS_RANDOM_FLAG=1
  1572980955.074  KFIOC_KBLOCKD_SCHEDULE_HAS_QUEUE_ARG=0
  1572980955.153  KFIOC_TASK_HAS_NR_CPUS_ALLOWED=0
  1572980955.234  KFIOC_TASK_HAS_BOUND_FLAG=0
  1572980955.314  KFIOC_NUMA_MAPS=1
  1572980955.395  KFIOC_PCI_HAS_NUMA_INFO=1
  1572980955.475  KFIOC_CACHE_ALLOC_NODE_TAKES_FLAGS=1
  1572980955.554  KFIOC_NEW_BARRIER_SCHEME=0
  1572980955.634  KFIOC_NEWER_BARRIER_SCHEME=1
  1572980955.718  KFIOC_HAS_QUEUE_FLAG_CLUSTER=0
  1572980955.797  KFIOC_HAS_QUEUE_LIMITS_CLUSTER=0
  1572980955.876  KFIOC_HAS_QUEUE_FLAG_CLEAR_UNLOCKED=0
  1572980955.955  KFIOC_HAS_BIO_COMP_CPU=0
  1572980956.035  KFIOC_BVEC_KMAP_IRQ_HAS_LONG_FLAGS=1
  1572980956.114  KFIOC_MAKE_REQUEST_FN_VOID=0
  1572980956.195  KFIOC_HAS_BLK_FS_REQUEST=0
  1572980956.275  KFIOC_REQUEST_HAS_CMD_TYPE=0
  1572980956.355  KFIOC_KMAP_ATOMIC_NEEDS_TYPE=0
  1572980956.434  KFIOC_HAS_BLK_ALLOC_QUEUE_NODE=1
  1572980956.514  KFIOC_SGLIST_NEW_API=1
  1572980956.594  KFIOC_HAS_SCSI_QD_CHANGE_FN=1
  1572980956.674  KFIOC_HAS_SCSI_LUNID_UINT=0
  1572980956.753  KFIOC_HAS_PROCFS_PDE_DATA=1
  1572980956.833  KFIOC_HAS_PROC_CREATE_DATA=1
  1572980956.913  KFIOC_HAS_NEW_QUEUECOMMAND_SIGNATURE=1
  1572980956.993  KFIOC_HAS_SCSI_SG_FNS=1
  1572980957.073  KFIOC_HAS_SCSI_SG_COPY_FNS=1
  1572980957.154  KFIOC_HAS_SCSI_RESID_FNS=1
  1572980957.235  KFIOC_ACPI_EVAL_INT_TAKES_UNSIGNED_LONG_LONG=1
  1572980957.315  KFIOC_BIO_HAS_HW_SEGMENTS=0
  1572980957.396  KFIOC_BIO_HAS_SEG_SIZE=0
  1572980957.476  KFIOC_BIO_HAS_DESTRUCTOR=0
  1572980957.556  KFIOC_BIO_HAS_ATOMIC_REMAINING=0
  1572980957.635  KFIOC_BIO_HAS_INTEGRITY=0
  1572980957.722  KFIOC_BIO_HAS_SPECIAL=0
  1572980957.802  KFIOC_HAS_FILE_INODE_HELPER=1
  1572980957.884  KFIOC_HAS_CPUMASK_WEIGHT=1
  1572980957.966  KFIOC_BIO_HAS_USCORE_BI_CNT=1
  1572980958.047  KFIOC_BIO_ENDIO_REMOVED_ERROR=1
  1572980958.126  KFIOC_BIO_ERROR_CHANGED_TO_STATUS=1
  1572980958.204  KFIOC_MAKE_REQUEST_FN_UINT=1
  1572980958.285  KFIOC_GET_USER_PAGES_REQUIRES_TASK=0
  1572980958.367  KFIOC_BARRIER_USES_QUEUE_FLAGS=1
  1572980958.446  KFIOC_GET_USER_PAGES_HAS_GUP_FLAGS=1
  1572980958.526  KFIOC_HAS_HOTPLUG_STATE_MACHINE=1
  1572980958.606  KFIOC_HAS_HOTPLUG_BP_PREPARE_DYN_STATES=1
  1572980958.687  KFIOC_HAS_HOTPLUG_AP_ONLINE_DYN_STATES=1
  1572980958.766  KFIOC_HAS_HOTPLUG_STATES_REMOVAL_BUG=0
  1572980958.847  KFIOC_HAS_PCI_ENABLE_MSIX_EXACT=1
  1572980958.927  KFIOC_ELEVATOR_EXIT_HAS_REQQ_PARAM=0
  1572980959.007  KFIOC_HAS_BLK_RQ_IS_PASSTHROUGH=1
  1572980959.087  KFIOC_HAS_BLK_QUEUE_BOUNCE=0
  1572980959.167  KFIOC_HAS_BLK_QUEUE_SPLIT2=1
  1572980959.246  KFIOC_HAS_BLK_QUEUE_FLAG_OPS=1
  1572980959.330  KFIOC_BIO_HAS_ERROR=0
  1572980959.409  KFIOC_REQ_HAS_ERRORS=0
  1572980959.488  KFIOC_REQ_HAS_ERROR_COUNT=1
  1572980959.569  KFIOC_BOUNCE_H=0
  1572980959.649  KFIOC_HAS_TIMER_SETUP=1
  1572980959.728  KFIOC_HAS_DISK_STATS_NSECS=1
  1572980959.808  KFIOC_HAS_COARSE_REAL_TS=1
  1572980959.887  KFIOC_HAS_ELEVATOR_INIT=0
Finished
1572980959.916  Exiting
Preserving configdir due to '-p' option: /var/lib/dkms/iomemory-vsl/3.2.16/build/kfio_config
make \
    -j24 \
-C /lib/modules/5.3.8-arch1-1/build \
FIO_DRIVER_NAME=iomemory-vsl \
FIO_SCSI_DEVICE=0 \
FUSION_DRIVER_DIR=/var/lib/dkms/iomemory-vsl/3.2.16/build \
SUBDIRS=/var/lib/dkms/iomemory-vsl/3.2.16/build \
EXTRA_CFLAGS+="-I/var/lib/dkms/iomemory-vsl/3.2.16/build/include -DBUILDING_MODULE -DLINUX_IO_SCHED" \
INSTALL_MOD_DIR=extra/fio \
INSTALL_MOD_PATH= \
KFIO_LIB=kfio/x86_64_cc92_libkfio.o_shipped \
modules
make[1]: Entering directory '/usr/lib/modules/5.3.8-arch1-1/build'
Makefile:213: ================= WARNING ================
Makefile:214: 'SUBDIRS' will be removed after Linux 5.3
Makefile:215: 
Makefile:216: If you are building an individual subdirectory
Makefile:217: in the kernel tree, you can do like this:
Makefile:218: $ make path/to/dir/you/want/to/build/
Makefile:219: (Do not forget the trailing slash)
Makefile:220: 
Makefile:221: If you are building an external module,
Makefile:222: Please use 'M=' or 'KBUILD_EXTMOD' instead
Makefile:223: ==========================================
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/main.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/license.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/pci.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/sysrq.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/driver_init.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/errno.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/kfio.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/state.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/kcache.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/kfile.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/kmem.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/kfio_common.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/kcpu.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/sched.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/kscatter.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/ktime.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/cdev.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/kcondvar.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/kinfo.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/kexports.o
  SHIPPED /var/lib/dkms/iomemory-vsl/3.2.16/build/kfio/x86_64_cc92_libkfio.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/khotplug.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/kcsr.o
  CC [M]  /var/lib/dkms/iomemory-vsl/3.2.16/build/module_param.o
/var/lib/dkms/iomemory-vsl/3.2.16/build/kcpu.c: In function ‘__kfio_bind_task_to_cpumask’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kcpu.c:133:10: error: ‘struct task_struct’ has no member named ‘cpus_allowed’; did you mean ‘nr_cpus_allowed’?
  133 |     tsk->cpus_allowed = *mask;
      |          ^~~~~~~~~~~~
      |          nr_cpus_allowed
make[2]: *** [scripts/Makefile.build:281: /var/lib/dkms/iomemory-vsl/3.2.16/build/kcpu.o] Error 1
make[2]: *** Waiting for unfinished jobs....
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c: In function ‘kfio_fetch_next_bio’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:449:24: error: incompatible type for argument 1 of ‘spin_lock_irq’
  449 |         spin_lock_irq(q->queue_lock);
      |                       ~^~~~~~~~~~~~
      |                        |
      |                        spinlock_t {aka struct spinlock}
In file included from ./include/linux/mmzone.h:8,
                 from ./include/linux/gfp.h:6,
                 from ./include/linux/slab.h:15,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/include/fio/port/linux/kfio_config.h:158,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/include/fio/port/kfio_config.h:40,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/port-internal.h:62,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:58:
./include/linux/spinlock.h:361:55: note: expected ‘spinlock_t *’ {aka ‘struct spinlock *’} but argument is of type ‘spinlock_t’ {aka ‘struct spinlock’}
  361 | static __always_inline void spin_lock_irq(spinlock_t *lock)
      |                                           ~~~~~~~~~~~~^~~~
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:456:26: error: incompatible type for argument 1 of ‘spin_unlock_irq’
  456 |         spin_unlock_irq(q->queue_lock);
      |                         ~^~~~~~~~~~~~
      |                          |
      |                          spinlock_t {aka struct spinlock}
In file included from ./include/linux/mmzone.h:8,
                 from ./include/linux/gfp.h:6,
                 from ./include/linux/slab.h:15,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/include/fio/port/linux/kfio_config.h:158,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/include/fio/port/kfio_config.h:40,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/port-internal.h:62,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:58:
./include/linux/spinlock.h:386:57: note: expected ‘spinlock_t *’ {aka ‘struct spinlock *’} but argument is of type ‘spinlock_t’ {aka ‘struct spinlock’}
  386 | static __always_inline void spin_unlock_irq(spinlock_t *lock)
      |                                             ~~~~~~~~~~~~^~~~
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c: In function ‘kfio_create_disk’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:618:4: error: #error "Do not know how to disable request queue clustering for this kernel."
  618 | #  error "Do not know how to disable request queue clustering for this kernel."
      |    ^~~~~
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c: In function ‘kfio_destroy_disk’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:824:9: error: implicit declaration of function ‘blk_stop_queue’; did you mean ‘blk_sync_queue’? [-Werror=implicit-function-declaration]
  824 |         blk_stop_queue(disk->rq);
      |         ^~~~~~~~~~~~~~
      |         blk_sync_queue
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c: In function ‘kfio_disk_stat_write_update’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:913:46: error: macro "part_stat_inc" passed 3 arguments, but takes just 2
  913 |         part_stat_inc(cpu, &gd->part0, ios[1]);
      |                                              ^
In file included from ./include/linux/blkdev.h:11,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/port-internal.h:63,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:58:
./include/linux/genhd.h:387: note: macro "part_stat_inc" defined here
  387 | #define part_stat_inc(gendiskp, field)     \
      | 
/var/lib/dkms/iomemory-vsl/3.2.16/build/kscatter.c: In function ‘kfio_sgl_map_bio’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kscatter.c:405:32: error: ‘struct bio’ has no member named ‘bi_phys_segments’
  405 |     if (lsg->num_entries + pbio->bi_phys_segments > lsg->max_entries)
      |                                ^~
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:913:9: error: ‘part_stat_inc’ undeclared (first use in this function); did you mean ‘part_stat_show’?
  913 |         part_stat_inc(cpu, &gd->part0, ios[1]);
      |         ^~~~~~~~~~~~~
      |         part_stat_show
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:913:9: note: each undeclared identifier is reported only once for each function it appears in
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:914:66: error: macro "part_stat_add" passed 4 arguments, but takes just 3
  914 |         part_stat_add(cpu, &gd->part0, sectors[1], totalsize >> 9);
      |                                                                  ^
In file included from ./include/linux/blkdev.h:11,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/port-internal.h:63,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:58:
./include/linux/genhd.h:378: note: macro "part_stat_add" defined here
  378 | #define part_stat_add(part, field, addnd) do {   \
      | 
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:914:9: error: ‘part_stat_add’ undeclared (first use in this function); did you mean ‘part_stat_show’?
  914 |         part_stat_add(cpu, &gd->part0, sectors[1], totalsize >> 9);
      |         ^~~~~~~~~~~~~
      |         part_stat_show
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:916:67: error: macro "part_stat_add" passed 4 arguments, but takes just 3
  916 |         part_stat_add(cpu, &gd->part0, nsecs[1],   duration * 1000);
      |                                                                   ^
In file included from ./include/linux/blkdev.h:11,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/port-internal.h:63,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:58:
./include/linux/genhd.h:378: note: macro "part_stat_add" defined here
  378 | #define part_stat_add(part, field, addnd) do {   \
      | 
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:902:25: warning: unused variable ‘gd’ [-Wunused-variable]
  902 |         struct gendisk *gd = fgd->gd;
      |                         ^~
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c: In function ‘kfio_disk_stat_read_update’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:961:46: error: macro "part_stat_inc" passed 3 arguments, but takes just 2
  961 |         part_stat_inc(cpu, &gd->part0, ios[0]);
      |                                              ^
In file included from ./include/linux/blkdev.h:11,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/port-internal.h:63,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:58:
./include/linux/genhd.h:387: note: macro "part_stat_inc" defined here
  387 | #define part_stat_inc(gendiskp, field)     \
      | 
make[2]: *** [scripts/Makefile.build:281: /var/lib/dkms/iomemory-vsl/3.2.16/build/kscatter.o] Error 1
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:961:9: error: ‘part_stat_inc’ undeclared (first use in this function); did you mean ‘part_stat_show’?
  961 |         part_stat_inc(cpu, &gd->part0, ios[0]);
      |         ^~~~~~~~~~~~~
      |         part_stat_show
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:962:66: error: macro "part_stat_add" passed 4 arguments, but takes just 3
  962 |         part_stat_add(cpu, &gd->part0, sectors[0], totalsize >> 9);
      |                                                                  ^
In file included from ./include/linux/blkdev.h:11,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/port-internal.h:63,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:58:
./include/linux/genhd.h:378: note: macro "part_stat_add" defined here
  378 | #define part_stat_add(part, field, addnd) do {   \
      | 
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:962:9: error: ‘part_stat_add’ undeclared (first use in this function); did you mean ‘part_stat_show’?
  962 |         part_stat_add(cpu, &gd->part0, sectors[0], totalsize >> 9);
      |         ^~~~~~~~~~~~~
      |         part_stat_show
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:964:67: error: macro "part_stat_add" passed 4 arguments, but takes just 3
  964 |         part_stat_add(cpu, &gd->part0, nsecs[0],   duration * 1000);
      |                                                                   ^
In file included from ./include/linux/blkdev.h:11,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/port-internal.h:63,
                 from /var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:58:
./include/linux/genhd.h:378: note: macro "part_stat_add" defined here
  378 | #define part_stat_add(part, field, addnd) do {   \
      | 
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:952:25: warning: unused variable ‘gd’ [-Wunused-variable]
  952 |         struct gendisk *gd = fgd->gd;
      |                         ^~
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c: In function ‘kfio_get_gd_in_flight’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:1015:21: error: ‘struct hd_struct’ has no member named ‘in_flight’
 1015 |     return gd->part0.in_flight;
      |                     ^
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c: In function ‘kfio_set_gd_in_flight’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:1045:18: error: ‘struct hd_struct’ has no member named ‘in_flight’
 1045 |         gd->part0.in_flight = in_flight;
      |                  ^
In file included from /var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:59:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c: In function ‘kfio_dump_bio’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:1101:35: error: ‘const struct bio’ has no member named ‘bi_phys_segments’
 1101 |              msg, BI_IDX(bio), bio->bi_phys_segments, BI_SIZE(bio));
      |                                   ^~
/var/lib/dkms/iomemory-vsl/3.2.16/build/include/fio/port/dbgset.h:204:58: note: in definition of macro ‘infprint’
  204 | #define infprint(...)  kfio_print(KERN_INFO "fioinf " AT __VA_ARGS__)
      |                                                          ^~~~~~~~~~~
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c: In function ‘kfio_alloc_queue’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:1687:26: error: incompatible types when assigning to type ‘spinlock_t’ {aka ‘struct spinlock’} from type ‘spinlock_t *’ {aka ‘struct spinlock *’}
 1687 |         rq->queue_lock = (spinlock_t *)dp->queue_lock;
      |                          ^
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c: In function ‘kfio_clear_write_holdoff’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:1721:12: error: ‘struct request_queue’ has no member named ‘request_fn’; did you mean ‘make_request_fn’?
 1721 |     if (q->request_fn)
      |            ^~~~~~~~~~
      |            make_request_fn
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c: In function ‘kfio_mark_lock_pending’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:1766:12: error: ‘struct request_queue’ has no member named ‘request_fn’; did you mean ‘make_request_fn’?
 1766 |     if (q->request_fn)
      |            ^~~~~~~~~~
      |            make_request_fn
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c: In function ‘kfio_unmark_lock_pending’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:1784:12: error: ‘struct request_queue’ has no member named ‘request_fn’; did you mean ‘make_request_fn’?
 1784 |     if (q->request_fn)
      |            ^~~~~~~~~~
      |            make_request_fn
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c: In function ‘kfio_make_request’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:1971:9: error: implicit declaration of function ‘bio_phys_segments’; did you mean ‘bio_segments’? [-Werror=implicit-function-declaration]
 1971 |     if (bio_phys_segments(queue, bio) > queue_max_segments(queue))
      |         ^~~~~~~~~~~~~~~~~
      |         bio_segments
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c: At top level:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:175:13: warning: ‘kfio_blk_complete_request’ declared ‘static’ but never defined [-Wunused-function]
  175 | static void kfio_blk_complete_request(struct request *req, int error);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~~
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:176:20: warning: ‘kfio_request_to_bio’ declared ‘static’ but never defined [-Wunused-function]
  176 | static kfio_bio_t *kfio_request_to_bio(kfio_disk_t *disk, struct request *req,
      |                    ^~~~~~~~~~~~~~~~~~~
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c: In function ‘kfio_get_gd_in_flight’:
/var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.c:1020:1: warning: control reaches end of non-void function [-Wreturn-type]
 1020 | }
      | ^
cc1: some warnings being treated as errors
make[2]: *** [scripts/Makefile.build:281: /var/lib/dkms/iomemory-vsl/3.2.16/build/kblock.o] Error 1
make[1]: *** [Makefile:1626: _module_/var/lib/dkms/iomemory-vsl/3.2.16/build] Error 2
make[1]: Leaving directory '/usr/lib/modules/5.3.8-arch1-1/build'
make: *** [Makefile:101: modules] Error 2
snuf commented 4 years ago

@sotiris-bos thanks for the report, could you check out the 5.1.28 branch, it contains the required fixes for all kernels up to 5.4.x.

Let me know if that helps?

sotiris-bos commented 4 years ago

@sotiris-bos thanks for the report, could you check out the 5.1.28 branch, it contains the required fixes for all kernels up to 5.4.x.

Let me know if that helps?

Yes it does work!

Your README in the 5.1.28 branch needs some updating (3.2.16 instead of 3.2.15). I thought the next_generation was the 3.2.16 version and the latest version.

Thank you so much for your work!

snuf commented 4 years ago

Welcome, I'll merge the 5.1.28 and next_generation when I have some spare cycles. Thanks for getting back!