Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-8330

Incorrect ioctl definitions declaring a pointer to buffer instead of buffer argument.

Details

    • Bug
    • Resolution: Unresolved
    • Minor
    • None
    • None
    • 3
    • 9223372036854775807

    Description

      There are no visible effects from this bug just yet, but the mechanism for declaring ioctls is used improperly with the below ones.

      The structure ioctl is supposedly operates on is passed in as a pointer therefore breaking versioning.

      We cannot just change the definition or it would break the old tools, but we can declare an old and new ones alongside and handle them both the same I guess.

      #define LL_IOC_HSM_COPY_START           _IOW('f', 214, struct hsm_copy *)
      #define LL_IOC_HSM_COPY_END             _IOW('f', 215, struct hsm_copy *)
      #define IOC_OBD_STATFS                  _IOWR('f', 164, struct obd_statfs *)
      #define IOC_MDC_LOOKUP          _IOWR(IOC_MDC_TYPE, 20, struct obd_device *)
      #define IOC_MDC_GETFILESTRIPE   _IOWR(IOC_MDC_TYPE, 21, struct lov_user_md *)
      #define IOC_MDC_GETFILEINFO     _IOWR(IOC_MDC_TYPE, 22, struct lov_user_mds_data *)
      #define LL_IOC_MDC_GETINFO      _IOWR(IOC_MDC_TYPE, 23, struct lov_user_mds_data *)
      

      Attachments

        Issue Links

          Activity

            People

              utopiabound Nathaniel Clark
              green Oleg Drokin
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

                Created:
                Updated: