[DRBD-user] compilation error: unregister_ioctl32_conversion amd64

gueniche gueniche at grenoble.cnrs.fr
Thu Jun 9 09:38:14 CEST 2005

Note: "permalinks" may not be as permanent as we would like,
direct links of old sources may well be a few messages off.


Lars Ellenberg wrote:

>/ 2005-06-08 13:17:54 +0200
>\ gueniche:
>  
>
>>hello,
>>On an Linux AMD64 Debian Machine, with 2.6.12-rc4-mm2 kernel, the drbd 0.7.11 version compile with a warning :
>>*** Warning: "unregister_ioctl32_conversion" [/usr/src/drbd-0.7.11/drbd/drbd.ko] undefined!
>>*** Warning: "register_ioctl32_conversion" [/usr/src/drbd-0.7.11/drbd/drbd.ko] undefined!
>>    
>>
>>What can I do to have a correct compile of drbd ?
>>    
>>
>
>kernel api changed.
>you options:
> - don't use a bleeding edge kernel,
> - wait for the developers (me) to ifdef drbd code to support
>   ->compat_ioctl interface in addition to register_ioctl32_conversion interface
> - patch the now deprecated register_ioctl32_conversion interface back
>   into the kernel source (or just drop the remove from the patchset,
>   and hope for the best)
> - patch drbd yourself, add ->compat_ioctl support, and send patch to me
>   [ my favorite ]
>
>thanks,
>
>  
>
Hello,

Many thanks for your answer.
I have try to remove the section concerning this problem in drbd_main.c :

        lock_kernel();
        unregister_ioctl32_conversion(DRBD_IOCTL_GET_VERSION);
        unregister_ioctl32_conversion(DRBD_IOCTL_SET_STATE);
        unregister_ioctl32_conversion(DRBD_IOCTL_SET_DISK_CONFIG);
        unregister_ioctl32_conversion(DRBD_IOCTL_SET_NET_CONFIG);
        unregister_ioctl32_conversion(DRBD_IOCTL_UNCONFIG_NET);
        unregister_ioctl32_conversion(DRBD_IOCTL_GET_CONFIG);
        unregister_ioctl32_conversion(DRBD_IOCTL_INVALIDATE);
        unregister_ioctl32_conversion(DRBD_IOCTL_INVALIDATE_REM);
        unregister_ioctl32_conversion(DRBD_IOCTL_SET_SYNC_CONFIG);
        unregister_ioctl32_conversion(DRBD_IOCTL_SET_DISK_SIZE);
        unregister_ioctl32_conversion(DRBD_IOCTL_WAIT_CONNECT);
        unregister_ioctl32_conversion(DRBD_IOCTL_WAIT_SYNC);
        unregister_ioctl32_conversion(DRBD_IOCTL_UNCONFIG_DISK);
        unlock_kernel();
and
        lock_kernel();
        register_ioctl32_conversion(DRBD_IOCTL_GET_VERSION,NULL);
        register_ioctl32_conversion(DRBD_IOCTL_SET_STATE,NULL);
        register_ioctl32_conversion(DRBD_IOCTL_SET_DISK_CONFIG,NULL);
        register_ioctl32_conversion(DRBD_IOCTL_SET_NET_CONFIG,NULL);
        register_ioctl32_conversion(DRBD_IOCTL_UNCONFIG_NET,NULL);
        register_ioctl32_conversion(DRBD_IOCTL_GET_CONFIG,NULL);
        register_ioctl32_conversion(DRBD_IOCTL_INVALIDATE,NULL);
        register_ioctl32_conversion(DRBD_IOCTL_INVALIDATE_REM,NULL);
        register_ioctl32_conversion(DRBD_IOCTL_SET_SYNC_CONFIG,NULL);
        register_ioctl32_conversion(DRBD_IOCTL_SET_DISK_SIZE,NULL);
        register_ioctl32_conversion(DRBD_IOCTL_WAIT_CONNECT,NULL);
        register_ioctl32_conversion(DRBD_IOCTL_WAIT_SYNC,NULL);
        register_ioctl32_conversion(DRBD_IOCTL_UNCONFIG_DISK,NULL);
        unlock_kernel();

The module compile now correctely, without error/warning.
When I insert it, no error.

But please I have a question :
But does-it mean ? Is it important ?

Thanks

Daniel



More information about the drbd-user mailing list