1. 20 8月, 2019 37 次提交
  2. 13 8月, 2019 3 次提交
    • M
      scsi: use __u{8,16,32,64} instead of uint{8,16,32,64}_t in uapi headers · 075c2b6b
      Masahiro Yamada 提交于
      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: NMasahiro Yamada <yamada.masahiro@socionext.com>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      075c2b6b
    • F
      scsi: esas2r: Prefer pcie_capability_read_word() · 2b4f4cb9
      Frederick Lawler 提交于
      Commit 8c0d3a02 ("PCI: Add accessors for PCI Express Capability") added
      accessors for the PCI Express Capability so that drivers didn't need to be
      aware of differences between v1 and v2 of the PCI Express Capability.
      
      Replace pci_read_config_word() and pci_write_config_word() calls with
      pcie_capability_read_word() and pcie_capability_write_word().
      Signed-off-by: NFrederick Lawler <fred@fredlawl.com>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      2b4f4cb9
    • F
      scsi: csiostor: Prefer pcie_capability_read_word() · 3e76ca95
      Frederick Lawler 提交于
      Commit 8c0d3a02 ("PCI: Add accessors for PCI Express Capability") added
      accessors for the PCI Express Capability so that drivers didn't need to be
      aware of differences between v1 and v2 of the PCI Express Capability.
      
      Replace pci_read_config_word() and pci_write_config_word() calls with
      pcie_capability_read_word() and pcie_capability_write_word().
      Signed-off-by: NFrederick Lawler <fred@fredlawl.com>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      3e76ca95