Re: [PATCH v2 0/3] Revised Renesas uPD72020x workaround for 32bit DMA issue

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

thanks a lot. In 4.16.9 that renesas USB3 controller is working again.

So the positive, it did work for some time - hours, and reading from the attached harddisk was all right.

Don't know if I'm allowed or requested to mention the remaining problems.

The first thing I want to mention is, that in 4.12.7 the SMART values came through with this command: smartctl -a -d sat /dev/sdc
.

Now, this does not work.

The second would be, now after some standby and resume cycles, it again fails. But working again after reboot, so  for me that's nothing to worry about.

____________________________________________________
% sudo smartctl -a -d sat -T permissive /dev/sdc
smartctl 6.6 2017-11-05 r4594 [x86_64-linux-4.16.9-1-ARCH] (local build)
Copyright (C) 2002-17, Bruce Allen, Christian Franke, www.smartmontools.org

Read Device Identity failed: scsi error unsupported field in scsi command

=== START OF INFORMATION SECTION ===
Device Model:     [No Information Found]
Serial Number:    [No Information Found]
Firmware Version: [No Information Found]
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   [No Information Found]
Local Time is:    Mon May 21 22:59:04 2018 CEST
SMART support is: Ambiguous - ATA IDENTIFY DEVICE words 82-83 don't show if SMART supported.
SMART support is: Ambiguous - ATA IDENTIFY DEVICE words 85-87 don't show if SMART is enabled.
A mandatory SMART command failed: exiting. To continue, add one or more '-T permissive' options.

% sudo smartctl -a -d sat -T permissive -T permissive -T permissive -s on /dev/sdc
smartctl 6.6 2017-11-05 r4594 [x86_64-linux-4.16.9-1-ARCH] (local build)
Copyright (C) 2002-17, Bruce Allen, Christian Franke, www.smartmontools.org

Read Device Identity failed: scsi error unsupported field in scsi command

=== START OF INFORMATION SECTION ===
Device Model:     [No Information Found]
Serial Number:    [No Information Found]
Firmware Version: [No Information Found]
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   [No Information Found]
Local Time is:    Mon May 21 22:59:39 2018 CEST
SMART support is: Ambiguous - ATA IDENTIFY DEVICE words 82-83 don't show if SMART supported.
SMART support is: Ambiguous - ATA IDENTIFY DEVICE words 85-87 don't show if SMART is enabled.
                  Checking to be sure by trying SMART RETURN STATUS command.
SMART support is: Unknown - Try option -s with argument 'on' to enable it.
=== START OF ENABLE/DISABLE COMMANDS SECTION ===
SMART Enable failed: scsi error unsupported field in scsi command

A mandatory SMART command failed: exiting. To continue, add one or more '-T permissive' options.


% sudo smartctl -a -d scsi /dev/sdc      
smartctl 6.6 2017-11-05 r4594 [x86_64-linux-4.16.9-1-ARCH] (local build)
Copyright (C) 2002-17, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Vendor:               Seagate
Product:              M3 Portable
Revision:             9300
Compliance:           SPC-4
User Capacity:        4,000,787,029,504 bytes [4.00 TB]
Logical block size:   512 bytes
Physical block size:  4096 bytes
Logical Unit id:      xxxxxx
Serial number:        xxxxxx
Device type:          disk
Local Time is:        Mon May 21 23:00:00 2018 CEST
SMART support is:     Available - device has SMART capability.
SMART support is:     Disabled
Temperature Warning:  Disabled or Not Supported

=== START OF READ SMART DATA SECTION ===
SMART Health Status: OK
Current Drive Temperature:     0 C
Drive Trip Temperature:        0 C

Error Counter logging not supported

Device does not support Self Test logging
####################################################
and here from 4.12.7:

sudo smartctl -a -d sat /dev/sdc
smartctl 6.6 2017-11-05 r4594 [x86_64-linux-4.12.7-1-ARCH] (local build)
Copyright (C) 2002-17, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Seagate Barracuda 2.5 5400
Device Model:     ST4000LM024-2AN17V
Serial Number:    xxxxx
LU WWN Device Id: 5 000c50 0a806a977
Firmware Version: 0001
User Capacity:    4,000,787,030,016 bytes [4.00 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    5526 rpm
Form Factor:      2.5 inches
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-3 T13/2161-D revision 5
SATA Version is:  SATA 3.1, 6.0 Gb/s (current: 3.0 Gb/s)
Local Time is:    Fri May 11 15:28:56 2018 CEST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

General SMART Values:
Offline data collection status:  (0x82)	Offline data collection activity
					was completed without error.
					Auto Offline Data Collection: Enabled.
Self-test execution status:      (   0)	The previous self-test routine completed
					without error or no self-test has ever 
					been run.
Total time to complete Offline 
data collection: 		(    0) seconds.
Offline data collection
capabilities: 			 (0x7b) SMART execute Offline immediate.
					Auto Offline data collection on/off support.
					Suspend Offline collection upon new
					command.
					Offline surface scan supported.
					Self-test supported.
					Conveyance Self-test supported.
					Selective Self-test supported.
SMART capabilities:            (0x0003)	Saves SMART data before entering
					power-saving mode.
					Supports SMART auto save timer.
Error logging capability:        (0x01)	Error logging supported.
					General Purpose Logging supported.
Short self-test routine 
recommended polling time: 	 (   1) minutes.
Extended self-test routine
recommended polling time: 	 ( 679) minutes.
Conveyance self-test routine
recommended polling time: 	 (   2) minutes.
SCT capabilities: 	       (0x30a5)	SCT Status supported.
					SCT Data Table supported.

SMART Attributes Data Structure revision number: 10
....

Thank you.

Christian

On Mon, 21 May 2018 00:40:34 +0200
Domenico Andreoli <domenico.andreoli@xxxxxxxxx> wrote:

> On Fri, May 18, 2018 at 05:29:40PM +0100, Marc Zyngier wrote:
> > Back around the 4.13 timeframe, we tried to address a rather bad issue
> > with the Renesas uPD72020x USB3 controller family. They have trouble
> > with the programming of the base addresses which tend to stick on XHCI
> > reset. This makes transitionning from 64bit to 32bit addresses
> > completely unsafe. This was observed on a fairly popular arm64
> > platform (AMD Opteron 1100, which has all of its memory above 4GB).
> > 
> > The fix was to perform a PCI reset of the device, but we have had
> > multiple reports that this generated regressions (the controller not
> > being usable after the patch was applied).
> 
> On my x86-64 the regression is gone with the removal of the PCI reset,
> can't say anything about the original issue it was supposed to fix.
> 
> Tested-by: Domenico Andreoli <domenico.andreoli@xxxxxxxxx>
> 
> Thank you.
> 
> Dom
> 
> > 
> > This series reverts the problematic patch, and tries to address it in
> > a more constrained way. If the controller is behind an IOMMU (and only
> > in that case), we zero its base addresses before reseting it. In the
> > affected configuration, this has the effect of putting the device in a
> > state where the XHCI reset will be effective.
> > 
> > It must be noted that in the absence of an IOMMU (and maybe even in
> > its presence), this device is completely unsafe, and may silently
> > corrupt memory.
> > 
> > * From v1:
> >   - Fixed stupid hunk misplacement, now properly moved back to patch 2
> >   - Converted all quirks to BIT_ULL()
> > 
> > Marc Zyngier (3):
> >   xhci: Allow more than 32 quirks
> >   xhci: Add quirk to zero 64bit registers on Renesas PCIe controllers
> >   Revert "xhci: Reset Renesas uPD72020x USB controller for 32-bit DMA
> >     issue"
> > 
> >  drivers/usb/host/pci-quirks.c | 20 -------------
> >  drivers/usb/host/pci-quirks.h |  1 -
> >  drivers/usb/host/xhci-pci.c   | 15 ++++------
> >  drivers/usb/host/xhci.c       | 65 +++++++++++++++++++++++++++++++++++++++--
> >  drivers/usb/host/xhci.h       | 67 ++++++++++++++++++++++---------------------
> >  5 files changed, 102 insertions(+), 66 deletions(-)
> > 
> > -- 
> > 2.14.2
> > 
> 
> -- 
> 3B10 0CA1 8674 ACBA B4FE  FCD2 CE5B CF17 9960 DE13


-- 
Christian Brauns <C.Brauns@xxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux