Whamcloud - gitweb
LU-16634 misc: replace obsolete ioctl numbers 90/50390/10
authorAndreas Dilger <adilger@whamcloud.com>
Thu, 23 Mar 2023 08:01:53 +0000 (02:01 -0600)
committerOleg Drokin <green@whamcloud.com>
Wed, 31 May 2023 19:01:22 +0000 (19:01 +0000)
commit594b780062db7e015837faefa75f7352293f54ae
tree8a3615c21c3116bf2aca0ca53c802fd86b3c97c4
parentad4b65c6850ea82a54a751c5be630f16922114ae
LU-16634 misc: replace obsolete ioctl numbers

Renumber the OBD_IOC_BARRIER and IOC_OSC_SET_ACTIVE ioctl numbers
to use IOC type 'f' instead of 'g' and 'h', respectively.  Add
compatibility code to handle their deprecation in the future.

Move already-deprecated ioctls OBD_IOC_GETNAME_OLD, OBD_GET_VERSION,
IOC_LIBCFS_GET_NI, and IOC_LIBCFS_PING to lustre_ioctl_old.h also.
Remove other already obsolete ioctl number definitions.

Add new llapi_ioctl() and llapi_ioctl_dev() helper functions to
handle fallback of ioctl commands to older versions when needed.

Signed-off-by: Andreas Dilger <adilger@whamcloud.com>
Change-Id: I519f23d34ce6197f3430a3825c5190cedb00cf14
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/50390
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Vitaliy Kuznetsov <vkuznetsov@ddn.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
22 files changed:
lnet/include/uapi/linux/lnet/libcfs_ioctl.h
lustre/doc/Makefile.am
lustre/doc/llapi_ioctl.3 [new file with mode: 0644]
lustre/include/Makefile.am
lustre/include/lustre/lustreapi.h
lustre/include/lustre_ioctl_old.h [new file with mode: 0644]
lustre/include/uapi/linux/lustre/lustre_ioctl.h
lustre/include/uapi/linux/lustre/lustre_user.h
lustre/llite/llite_lib.c
lustre/lmv/lmv_obd.c
lustre/lov/lov_obd.c
lustre/mdc/mdc_request.c
lustre/mgs/mgs_handler.c
lustre/obdclass/class_obd.c
lustre/osc/osc_request.c
lustre/osp/osp_dev.c
lustre/utils/Makefile.am
lustre/utils/liblustreapi.c
lustre/utils/liblustreapi_ioctl.c [new file with mode: 0644]
lustre/utils/lustreapi_internal.h
lustre/utils/obd.c
lustre/utils/portals.c