lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 29 Mar 2018 03:00:58 -0700
From:   Wang Dongsheng <dongsheng.wang@...-semitech.com>
To:     <rjw@...ysocki.net>, <lorenzo.pieralisi@....com>
CC:     <gregkh@...uxfoundation.org>, <hanjun.guo@...aro.org>,
        <sudeep.holla@....com>, <yu.zheng@...-semitech.com>,
        <linux-acpi@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
        Wang Dongsheng <dongsheng.wang@...-semitech.com>
Subject: [RFC PATCH 0/2] driver core: add new dl device status DL_DEV_PROBE_FAILED

Recently we found the master of SMMU retries to probe endlessly.

[    3.658956] pci 0000:00:00.0: Retrying from deferred list
[    3.658969] pci 0000:00:00.0: Added to deferred list
[    3.658987] pci 0004:00:00.0: Retrying from deferred list
[    3.658994] pci 0004:00:00.0: Added to deferred list
[    3.659003] pci 0005:00:00.0: Retrying from deferred list
[    3.659010] pci 0005:00:00.0: Added to deferred list
[    3.659019] pci 0004:01:00.0: Retrying from deferred list
[    3.659029] pci 0004:01:00.0: Added to deferred list

The retrying should only happen when the IOMMU instance hasn't been
probed yet.
However, dma_configure() simply return -EPROBE_DEFER when failed to get
an IOMMU instance even if the IOMMU instance is failed to probe.

This patchset tries to fix the issue by distinguishing probe failures and
haven't-been-probed-yet state.

Wang Dongsheng (2):
  driver core: add new dl device status DL_DEV_PROBE_FAILED
  ACPI/IORT: use swiotlb_dma_ops when smmu probe failed

 Documentation/driver-api/device_link.rst |  2 +-
 drivers/acpi/arm64/iort.c                | 39 +++++++++++++++++++++++++++-----
 drivers/base/base.h                      |  2 +-
 drivers/base/core.c                      | 22 ++++++++++++++++--
 drivers/base/dd.c                        |  2 +-
 include/linux/device.h                   |  1 +
 6 files changed, 57 insertions(+), 11 deletions(-)

-- 
2.7.4

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ