1. 14 12月, 2021 1 次提交
    • J
      scsi: pm8001: Fix phys_to_virt() usage on dma_addr_t · 2fe24343
      John Garry 提交于
      The driver supports a "direct" mode of operation, where the SMP req frame
      is directly copied into the command payload (and vice-versa for the SMP
      resp).
      
      To get at the SMP req frame data in the scatterlist the driver uses
      phys_to_virt() on the DMA mapped memory dma_addr_t . This is broken, and
      subsequently crashes as follows when an IOMMU is enabled:
      
       Unable to handle kernel paging request at virtual address
      ffff0000fcebfb00
      	...
       pc : pm80xx_chip_smp_req+0x2d0/0x3d0
       lr : pm80xx_chip_smp_req+0xac/0x3d0
       pm80xx_chip_smp_req+0x2d0/0x3d0
       pm8001_task_exec.constprop.0+0x368/0x520
       pm8001_queue_command+0x1c/0x30
       smp_execute_task_sg+0xdc/0x204
       sas_discover_expander.part.0+0xac/0x6cc
       sas_discover_root_expander+0x8c/0x150
       sas_discover_domain+0x3ac/0x6a0
       process_one_work+0x1d0/0x354
       worker_thread+0x13c/0x470
       kthread+0x17c/0x190
       ret_from_fork+0x10/0x20
       Code: 371806e1 910006d6 6b16033f 54000249 (38766b05)
       ---[ end trace b91d59aaee98ea2d ]---
      note: kworker/u192:0[7] exited with preempt_count 1
      
      Instead use kmap_atomic().
      
      --
      Difference to v1:
      - use kmap_atomic() in both locations
      Difference to  v2:
      - add whitespace around arithmetic (Damien)
      
      Link: https://lore.kernel.org/r/1639390248-213603-1-git-send-email-john.garry@huawei.comReviewed-by: NDamien Le Moal <damien.lemoal@opensource.wdc.com>
      Signed-off-by: NJohn Garry <john.garry@huawei.com>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      2fe24343
  2. 05 10月, 2021 1 次提交
  3. 15 9月, 2021 2 次提交
  4. 13 7月, 2021 1 次提交
    • R
      scsi: pm8001: Clean up kernel-doc and comments · bb6beabf
      Randy Dunlap 提交于
      Fix kernel-doc warnings then test again, wash, rinse, find more, then
      repeat more/again.
      
      Also fix spellos, some grammar, and some punctuation.
      
      ../drivers/scsi/pm8001/pm8001_ctl.c:557: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
       ** pm8001_ctl_fatal_log_show - fatal error logging
      ../drivers/scsi/pm8001/pm8001_ctl.c:577: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
       ** non_fatal_log_show - non fatal error logging
      ../drivers/scsi/pm8001/pm8001_ctl.c:622: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
       ** pm8001_ctl_gsm_log_show - gsm dump collection
      
      Link: https://lore.kernel.org/r/20210708165723.8594-1-rdunlap@infradead.org
      Cc: Jack Wang <jinpu.wang@cloud.ionos.com>
      Cc: linux-scsi@vger.kernel.org
      Cc: "James E.J. Bottomley" <jejb@linux.ibm.com>
      Cc: "Martin K. Petersen" <martin.petersen@oracle.com>
      Acked-by: NJack Wang <jinpu.wang@ionos.com>
      Signed-off-by: NRandy Dunlap <rdunlap@infradead.org>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      bb6beabf
  5. 03 6月, 2021 1 次提交
  6. 16 5月, 2021 1 次提交
  7. 16 4月, 2021 3 次提交
  8. 13 4月, 2021 3 次提交
  9. 16 3月, 2021 1 次提交
    • L
      scsi: pm8001: Fix a bunch of doc-rotted function headers · 7cdaf12e
      Lee Jones 提交于
      Fixes the following W=1 kernel build warning(s):
      
       drivers/scsi/pm8001/pm80xx_hwi.c:1427: warning: expecting prototype for pm8001_chip_init(). Prototype was for pm80xx_chip_init() instead
       drivers/scsi/pm8001/pm80xx_hwi.c:1584: warning: expecting prototype for pm8001_chip_soft_rst(). Prototype was for pm80xx_chip_soft_rst() instead
       drivers/scsi/pm8001/pm80xx_hwi.c:1711: warning: expecting prototype for pm8001_chip_interrupt_enable(). Prototype was for pm80xx_chip_intx_interrupt_enable() instead
       drivers/scsi/pm8001/pm80xx_hwi.c:1722: warning: expecting prototype for pm8001_chip_intx_interrupt_disable(). Prototype was for pm80xx_chip_intx_interrupt_disable() instead
       drivers/scsi/pm8001/pm80xx_hwi.c:1733: warning: expecting prototype for pm8001_chip_interrupt_enable(). Prototype was for pm80xx_chip_interrupt_enable() instead
       drivers/scsi/pm8001/pm80xx_hwi.c:1752: warning: expecting prototype for pm8001_chip_interrupt_disable(). Prototype was for pm80xx_chip_interrupt_disable() instead
       drivers/scsi/pm8001/pm80xx_hwi.c:4192: warning: expecting prototype for pm8001_chip_smp_req(). Prototype was for pm80xx_chip_smp_req() instead
       drivers/scsi/pm8001/pm80xx_hwi.c:4775: warning: expecting prototype for pm8001_chip_phy_stop_req(). Prototype was for pm80xx_chip_phy_stop_req() instead
       drivers/scsi/pm8001/pm80xx_hwi.c:4907: warning: expecting prototype for pm8001_chip_isr(). Prototype was for pm80xx_chip_isr() instead
      
      Link: https://lore.kernel.org/r/20210303144631.3175331-23-lee.jones@linaro.org
      Cc: Jack Wang <jinpu.wang@cloud.ionos.com>
      Cc: "James E.J. Bottomley" <jejb@linux.ibm.com>
      Cc: "Martin K. Petersen" <martin.petersen@oracle.com>
      Cc: linux-scsi@vger.kernel.org
      Acked-by: NJack Wang <jinpu.wang@cloud.ionos.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      7cdaf12e
  10. 23 1月, 2021 3 次提交
  11. 21 1月, 2021 1 次提交
  12. 13 1月, 2021 6 次提交
  13. 01 12月, 2020 1 次提交
  14. 24 11月, 2020 1 次提交
  15. 05 11月, 2020 3 次提交
  16. 08 10月, 2020 2 次提交
  17. 25 7月, 2020 2 次提交
    • L
      scsi: pm8001: Staticify 'pm80xx_pci_mem_copy' and 'mpi_set_phy_profile_req' · ea310f57
      Lee Jones 提交于
      These are not invoked externally.
      
      Fixes the following W=1 kernel build warning(s):
      
       drivers/scsi/pm8001/pm80xx_hwi.c:69:6: warning: no previous prototype for ‘pm80xx_pci_mem_copy’ [-Wmissing-prototypes]
       69 | void pm80xx_pci_mem_copy(struct pm8001_hba_info *pm8001_ha, u32 soffset,
       | ^~~~~~~~~~~~~~~~~~~
       drivers/scsi/pm8001/pm80xx_hwi.c:5016:6: warning: no previous prototype for ‘mpi_set_phy_profile_req’ [-Wmissing-prototypes]
       5016 | void mpi_set_phy_profile_req(struct pm8001_hba_info *pm8001_ha,
       | ^~~~~~~~~~~~~~~~~~~~~~~
      
      Link: https://lore.kernel.org/r/20200721164148.2617584-26-lee.jones@linaro.org
      Cc: Jack Wang <jinpu.wang@cloud.ionos.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      ea310f57
    • L
      scsi: pm8001: Fix some function documentation issues · 6ad4a517
      Lee Jones 提交于
      Fixes the following W=1 kernel build warning(s):
      
       drivers/scsi/pm8001/pm80xx_hwi.c:918: warning: Function parameter or member 'number' not described in 'update_inbnd_queue_table'
       drivers/scsi/pm8001/pm80xx_hwi.c:954: warning: Function parameter or member 'number' not described in 'update_outbnd_queue_table'
       drivers/scsi/pm8001/pm80xx_hwi.c:1717: warning: Function parameter or member 'vec' not described in 'pm80xx_chip_interrupt_enable'
       drivers/scsi/pm8001/pm80xx_hwi.c:1735: warning: Function parameter or member 'vec' not described in 'pm80xx_chip_interrupt_disable'
       drivers/scsi/pm8001/pm80xx_hwi.c:4830: warning: Excess function parameter 'num' description in 'pm80xx_chip_phy_start_req'
       drivers/scsi/pm8001/pm80xx_hwi.c:4872: warning: Excess function parameter 'num' description in 'pm80xx_chip_phy_stop_req'
       drivers/scsi/pm8001/pm80xx_hwi.c:4892: warning: Function parameter or member 'pm8001_ha' not described in 'pm80xx_chip_reg_dev_req'
       drivers/scsi/pm8001/pm80xx_hwi.c:4892: warning: Function parameter or member 'pm8001_dev' not described in 'pm80xx_chip_reg_dev_req'
       drivers/scsi/pm8001/pm80xx_hwi.c:4892: warning: Function parameter or member 'flag' not described in 'pm80xx_chip_reg_dev_req'
       drivers/scsi/pm8001/pm80xx_hwi.c:4966: warning: Function parameter or member 'phyId' not described in 'pm80xx_chip_phy_ctl_req'
       drivers/scsi/pm8001/pm80xx_hwi.c:4966: warning: Function parameter or member 'phy_op' not described in 'pm80xx_chip_phy_ctl_req'
       drivers/scsi/pm8001/pm80xx_hwi.c:4966: warning: Excess function parameter 'num' description in 'pm80xx_chip_phy_ctl_req'
       drivers/scsi/pm8001/pm80xx_hwi.c:4966: warning: Excess function parameter 'phy_id' description in 'pm80xx_chip_phy_ctl_req'
       drivers/scsi/pm8001/pm80xx_hwi.c:5006: warning: Function parameter or member 'vec' not described in 'pm80xx_chip_isr'
       drivers/scsi/pm8001/pm80xx_hwi.c:5006: warning: Excess function parameter 'irq' description in 'pm80xx_chip_isr'
       drivers/scsi/pm8001/pm80xx_hwi.c:5006: warning: Excess function parameter 'stat' description in 'pm80xx_chip_isr'
      
      Link: https://lore.kernel.org/r/20200721164148.2617584-18-lee.jones@linaro.org
      Cc: Jack Wang <jinpu.wang@cloud.ionos.com>
      Signed-off-by: NLee Jones <lee.jones@linaro.org>
      Signed-off-by: NMartin K. Petersen <martin.petersen@oracle.com>
      6ad4a517
  18. 17 7月, 2020 1 次提交
  19. 18 3月, 2020 3 次提交
  20. 30 1月, 2020 1 次提交
  21. 27 11月, 2019 2 次提交