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

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

    Details

    • Type: Bug
    • Status: In Progress
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None
    • Severity:
      3
    • Rank (Obsolete):
      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

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

                Dates

                • Created:
                  Updated: