1. 20 Aug, 2019 39 commits
  2. 13 Aug, 2019 1 commit
    • Masahiro Yamada's avatar
      scsi: use __u{8,16,32,64} instead of uint{8,16,32,64}_t in uapi headers · 075c2b6b
      Masahiro Yamada authored
      When CONFIG_UAPI_HEADER_TEST=y, exported headers are compile-tested to make
      sure they can be included from user-space.
      
      Currently, scsi_bsg_fc.h, scsi_netlink.h, and scsi_netlink_fc.h are
      excluded from the test coverage. To make them join the compile-test, we
      need to fix the build errors attached below.
      
      For a case like this, we decided to use __u{8,16,32,64} variable types in
      this discussion:
      
        https://lkml.org/lkml/2019/6/5/18
      
      Build log:
      
        CC      usr/include/scsi/scsi_netlink_fc.h.s
        CC      usr/include/scsi/scsi_netlink.h.s
        CC      usr/include/scsi/scsi_bsg_fc.h.s
      In file included from ./usr/include/scsi/scsi_netlink_fc.h:10:0,
                       from <command-line>:32:
      ./usr/include/scsi/scsi_netlink.h:29:2: error: unknown type name  uint8_t
        uint8_t version;
        ^~~~~~~
      ./usr/include/scsi/scsi_netlink.h:30:2: error: unknown type name  uint8_t
        uint8_t transport;
        ^~~~~~~
      ./usr/include/scsi/scsi_netlink.h:31:2: error: unknown type name  uint16_t
        uint16_t magic;
        ^~~~~~~~
      ./usr/include/scsi/scsi_netlink.h:32:2: error: unknown type name  uint16_t
        uint16_t msgtype;
        ^~~~~~~~
        CC      usr/include/rdma/vmw_pvrdma-abi.h.s
      ./usr/include/scsi/scsi_netlink.h:33:2: error: unknown type name  uint16_t
        uint16_t msglen;
        ^~~~~~~~
      ./usr/include/scsi/scsi_netlink.h:34:33: error:  uint64_t  undeclared here (not in a function); did you mean  __uint128_t ?
       } __attribute__((aligned(sizeof(uint64_t))));
                                       ^~~~~~~~
                                       __uint128_t
      ./usr/include/scsi/scsi_netlink.h:78:2: error: expected specifier-qualifier-list before  uint64_t
        uint64_t vendor_id;
        ^~~~~~~~
      In file included from <command-line>:32:0:
      ./usr/include/scsi/scsi_netlink_fc.h:46:2: error: expected specifier-qualifier-list before  uint64_t
        uint64_t seconds;
        ^~~~~~~~
      make[2]: *** [scripts/Makefile.build;302: usr/include/scsi/scsi_netlink_fc.h.s] Error 1
      make[2]: *** Waiting for unfinished jobs....
      In file included from <command-line>:32:0:
      ./usr/include/scsi/scsi_netlink.h:29:2: error: unknown type name  uint8_t
        uint8_t version;
        ^~~~~~~
      ./usr/include/scsi/scsi_netlink.h:30:2: error: unknown type name  uint8_t
        uint8_t transport;
        ^~~~~~~
      ./usr/include/scsi/scsi_netlink.h:31:2: error: unknown type name  uint16_t
        uint16_t magic;
        ^~~~~~~~
      ./usr/include/scsi/scsi_netlink.h:32:2: error: unknown type name  uint16_t
        uint16_t msgtype;
        ^~~~~~~~
      ./usr/include/scsi/scsi_netlink.h:33:2: error: unknown type name  uint16_t
        uint16_t msglen;
        ^~~~~~~~
      ./usr/include/scsi/scsi_netlink.h:34:33: error:  uint64_t  undeclared here (not in a function); did you mean  __uint128_t ?
       } __attribute__((aligned(sizeof(uint64_t))));
                                       ^~~~~~~~
                                       __uint128_t
      ./usr/include/scsi/scsi_netlink.h:78:2: error: expected specifier-qualifier-list before  uint64_t
        uint64_t vendor_id;
        ^~~~~~~~
      make[2]: *** [scripts/Makefile.build;302: usr/include/scsi/scsi_netlink.h.s] Error 1
      In file included from <command-line>:32:0:
      ./usr/include/scsi/scsi_bsg_fc.h:69:2: error: unknown type name  uint8_t
        uint8_t  reserved;
        ^~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:72:2: error: unknown type name  uint8_t
        uint8_t  port_id[3];
        ^~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:90:2: error: unknown type name  uint8_t
        uint8_t  reserved;
        ^~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:93:2: error: unknown type name  uint8_t
        uint8_t  port_id[3];
        ^~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:114:2: error: unknown type name  uint8_t
        uint8_t  command_code;
        ^~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:117:2: error: unknown type name  uint8_t
        uint8_t  port_id[3];
        ^~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:154:2: error: unknown type name  uint32_t
        uint32_t status;  /* See FC_CTELS_STATUS_xxx */
        ^~~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:158:3: error: unknown type name  uint8_t
         uint8_t action;  /* fragment_id for CT REJECT */
         ^~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:159:3: error: unknown type name  uint8_t
         uint8_t reason_code;
         ^~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:160:3: error: unknown type name  uint8_t
         uint8_t reason_explanation;
         ^~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:161:3: error: unknown type name  uint8_t
         uint8_t vendor_unique;
         ^~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:177:2: error: unknown type name  uint8_t
        uint8_t  reserved;
        ^~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:180:2: error: unknown type name  uint8_t
        uint8_t  port_id[3];
        ^~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:185:2: error: unknown type name  uint32_t
        uint32_t preamble_word0; /* revision & IN_ID */
        ^~~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:186:2: error: unknown type name  uint32_t
        uint32_t preamble_word1; /* GS_Type, GS_SubType, Options, Rsvd */
        ^~~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:187:2: error: unknown type name  uint32_t
        uint32_t preamble_word2; /* Cmd Code, Max Size */
        ^~~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:207:2: error: unknown type name  uint64_t
        uint64_t vendor_id;
        ^~~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:210:2: error: unknown type name  uint32_t
        uint32_t vendor_cmd[0];
        ^~~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:217:2: error: unknown type name  uint32_t
        uint32_t vendor_rsp[0];
        ^~~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:236:2: error: unknown type name  uint8_t
        uint8_t els_code;
        ^~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:254:2: error: unknown type name  uint32_t
        uint32_t preamble_word0; /* revision & IN_ID */
        ^~~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:255:2: error: unknown type name  uint32_t
        uint32_t preamble_word1; /* GS_Type, GS_SubType, Options, Rsvd */
        ^~~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:256:2: error: unknown type name  uint32_t
        uint32_t preamble_word2; /* Cmd Code, Max Size */
        ^~~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:268:2: error: unknown type name  uint32_t
        uint32_t msgcode;
        ^~~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:292:2: error: unknown type name  uint32_t
        uint32_t result;
        ^~~~~~~~
      ./usr/include/scsi/scsi_bsg_fc.h:295:2: error: unknown type name  uint32_t
        uint32_t reply_payload_rcv_len;
        ^~~~~~~~
      Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
      Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
      075c2b6b