Hibernate with Samsung 870 EVO SSD

Hi!

I just installed a new 1 TB Samsung 870 EVO SSD in a Thinkpad X120e laptop and installed openSUSE Leap 15.2 on it.

I wonder whether anyone has any experience with openSUSE 15.2 on the Samsung 870 EVO SSD concerning hibernating. After installation and a couple of clean reboots, I clicked on “Sleep” in the display manager (SSDM). The screen went blank and the power button kept blinking for a few minutes. I had to press the power button for more than 10 seconds to reboot and even then the laptop would not start properly and I had to press the power button again for 10 seconds after which it finally booted properly. I normally don’t use “Sleep” (suspend to RAM) anyway, but I do often use “Hibernate” (suspend to disk), but because of my bad experience with “Sleep” I am nervous trying out hibernating. My questions are:

  1. Does anybody have experience hibernating with Samsung 870 EVO SSD and openSUSE 15.2?

  2. Is there any way that I can perform a “safe” hibernate, i.e., turn off features that may cause problems?

  3. What is the best way to troubleshoot sleep/hibernate problems, i.e., where do I find log files and what configuration files can I tweak?

I normally use TDE as my desktop environment although I have not tried hibernating from TDE. My attempt to use “Sleep” was from the SSDM (KDE/plasma default) display manager.

Any help would be greatly appreciated.

Thanks!

I cannot rule out problems with the 870 series, but seeing no such problems with a Samsung 840 EVO here I would check other things first, for instance how you formatted or configured your new disk or if you correctly updated your GRUB command line.
To check the basic hibernate process you can switch to a virtual console (e.g. by CTRL+ALT+F1), login as superuser (root) and then issue:

systemctl hibernate

If the hibernate and resume processes succeed, you should be able to see logs in the journal at the time of the hibernate command, something near the end of:

journalctl -b

If the process doesn’t succeed and you are forced to reboot, you should be able to see what happened in the previous boot with:

journalctl -b -1

Hope this helps.

To get help you have to describe your hardware:

inxi -Fxxxz

IDK about Samsung 870 Evo, but 860 Evo have troubles with old AMD south bridge - check it with

dmesg

SSDs with Phison controllers work OK with it.

Hi!

This it the output from the two commands that Svyatko suggested:


/home/gianluca> inxi -Fxxxz
System:
  Kernel: 5.3.18-lp152.75-default x86_64 bits: 64 compiler: gcc v: 7.5.0
  Desktop: Trinity R14.0.10 tk: Qt 3.5.0 info: kicker wm: Twin 3.0 dm: SDDM
  Distro: openSUSE Leap 15.2
Machine:
  Type: Laptop System: LENOVO product: 05962RU v: ThinkPad X120e
  serial: <filter> Chassis: type: 10 serial: <filter>
  Mobo: LENOVO model: 05962RU serial: <filter> UEFI [Legacy]: LENOVO
  v: 8FET29WW (1.13 ) date: 05/06/2011
Battery:
  ID-1: BAT1 charge: 46.0 Wh condition: 47.3/47.5 Wh (99%) volts: 12.0/10.8
  model: LGC 42T4855 type: Li-ion serial: <filter> status: Unknown
CPU:
  Topology: Dual Core model: AMD E-350 bits: 64 type: MCP arch: Bobcat
  L2 cache: 512 KiB
  flags: lm nx pae sse sse2 sse3 sse4a ssse3 svm bogomips: 6386
  Speed: 801 MHz min/max: 800/1600 MHz Core speeds (MHz): 1: 800 2: 802
Graphics:
  Device-1: AMD Wrestler [Radeon HD 6310] vendor: Lenovo driver: radeon
  v: kernel bus ID: 00:01.0 chip ID: 1002:9802
  Device-2: Acer Lenovo Integrated Webcam type: USB driver: uvcvideo
  bus ID: 2-5:3 chip ID: 5986:01a6 serial: <filter>
  Display: x11 server: X.Org 1.20.3 driver: ati,radeon
  unloaded: fbdev,modesetting,vesa resolution: 1366x768~60Hz s-dpi: 96
  OpenGL:
  renderer: AMD PALM (DRM 2.50.0 / 5.3.18-lp152.75-default LLVM 9.0.1)
  v: 3.3 Mesa 19.3.4 compat-v: 3.1 direct render: Yes
Audio:
  Device-1: AMD Wrestler HDMI Audio driver: snd_hda_intel v: kernel
  bus ID: 00:01.1 chip ID: 1002:1314
  Device-2: AMD SBx00 Azalia vendor: Lenovo driver: snd_hda_intel v: kernel
  bus ID: 00:14.2 chip ID: 1002:4383
  Sound Server: ALSA v: k5.3.18-lp152.75-default
Network:
  Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
  vendor: Lenovo driver: r8169 v: kernel port: 3000 bus ID: 01:00.0
  chip ID: 10ec:8168
  IF: eth0 state: down mac: <filter>
  Device-2: Realtek RTL8188CE 802.11b/g/n WiFi Adapter driver: rtl8192ce
  v: kernel port: 2000 bus ID: 04:00.0 chip ID: 10ec:8176
  IF: wlan1 state: up mac: <filter>
Drives:
  Local Storage: total: 931.51 GiB used: 10.84 GiB (1.2%)
  ID-1: /dev/sda vendor: Samsung model: SSD 870 EVO 1TB size: 931.51 GiB
  speed: 3.0 Gb/s serial: <filter> rev: 1B6Q scheme: MBR
Partition:
  ID-1: / size: 19.56 GiB used: 9.77 GiB (49.9%) fs: ext4 dev: /dev/sda6
  ID-2: /boot size: 503.9 MiB used: 44.0 MiB (8.7%) fs: ext2 dev: /dev/sda1
  ID-3: /home size: 882.91 GiB used: 484.9 MiB (0.1%) fs: ext4
  dev: /dev/sda4
  ID-4: /var size: 4.86 GiB used: 564.0 MiB (11.3%) fs: ext4 dev: /dev/sda5
Swap:
  ID-1: swap-1 type: partition size: 8.00 GiB used: 0 KiB (0.0%)
  priority: -2 dev: /dev/sda2
Sensors:
  System Temperatures: cpu: 68.4 C mobo: 0.0 C gpu: radeon temp: 68 C
  Fan Speeds (RPM): cpu: 441
Info:
  Processes: 176 Uptime: N/A Memory: 5.41 GiB used: 561.3 MiB (10.1%)
  Init: systemd v: 234 runlevel: 5 target: graphical.target Compilers:
  gcc: 7.5.0 alt: 7 Shell: tcsh v: 6.20.00 running in: konsole inxi: 3.1.00


/home/gianluca> dmesg | grep -i south
/home/gianluca> dmesg | grep -i bridge
    0.626258] PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug
    0.648443] ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff])
    0.650069] acpi PNP0A08:00: [Firmware Info]: MMCONFIG for domain 0000 [bus 00-1f] only partially covers this bridge
    0.652056] acpi PNP0A08:00: ignoring host bridge window [mem 0x000ce000-0x000cffff window] (conflicts with Video ROM [mem 0x000c0000-0x000ce1ff])
    0.652720] PCI host bridge to bus 0000:00
    0.673463] pci 0000:00:06.0: PCI bridge to [bus 01]
    0.673479] pci 0000:00:06.0:   bridge window [io  0x3000-0x3fff]
    0.673488] pci 0000:00:06.0:   bridge window [mem 0xf0000000-0xf00fffff 64bit pref]
    0.673749] pci 0000:00:14.4: PCI bridge to [bus 02] (subtractive decode)
    0.673762] pci 0000:00:14.4:   bridge window [mem 0x000a0000-0x000bffff window] (subtractive decode)
    0.673765] pci 0000:00:14.4:   bridge window [mem 0x000c0000-0x000c1fff window] (subtractive decode)
    0.673768] pci 0000:00:14.4:   bridge window [mem 0x000c2000-0x000c3fff window] (subtractive decode)
    0.673771] pci 0000:00:14.4:   bridge window [mem 0x000c4000-0x000c5fff window] (subtractive decode)
    0.673774] pci 0000:00:14.4:   bridge window [mem 0x000c6000-0x000c7fff window] (subtractive decode)
    0.673777] pci 0000:00:14.4:   bridge window [mem 0x000c8000-0x000c9fff window] (subtractive decode)
    0.673780] pci 0000:00:14.4:   bridge window [mem 0x000ca000-0x000cbfff window] (subtractive decode)
    0.673782] pci 0000:00:14.4:   bridge window [mem 0x000cc000-0x000cdfff window] (subtractive decode)
    0.673785] pci 0000:00:14.4:   bridge window [mem 0x000d0000-0x000d1fff window] (subtractive decode)
    0.673788] pci 0000:00:14.4:   bridge window [mem 0x000d2000-0x000d3fff window] (subtractive decode)
    0.673791] pci 0000:00:14.4:   bridge window [mem 0x000d4000-0x000d5fff window] (subtractive decode)
    0.673793] pci 0000:00:14.4:   bridge window [mem 0x000d6000-0x000d7fff window] (subtractive decode)
    0.673796] pci 0000:00:14.4:   bridge window [mem 0x000d8000-0x000d9fff window] (subtractive decode)
    0.673799] pci 0000:00:14.4:   bridge window [mem 0x000da000-0x000dbfff window] (subtractive decode)
    0.673802] pci 0000:00:14.4:   bridge window [mem 0x000dc000-0x000ddfff window] (subtractive decode)
    0.673805] pci 0000:00:14.4:   bridge window [mem 0x000de000-0x000dffff window] (subtractive decode)
    0.673808] pci 0000:00:14.4:   bridge window [mem 0x000e0000-0x000e1fff window] (subtractive decode)
    0.673811] pci 0000:00:14.4:   bridge window [mem 0x000e2000-0x000e3fff window] (subtractive decode)
    0.673814] pci 0000:00:14.4:   bridge window [mem 0x000e4000-0x000e5fff window] (subtractive decode)
    0.673817] pci 0000:00:14.4:   bridge window [mem 0x000e6000-0x000e7fff window] (subtractive decode)
    0.673820] pci 0000:00:14.4:   bridge window [mem 0x000e8000-0x000e9fff window] (subtractive decode)
    0.673822] pci 0000:00:14.4:   bridge window [mem 0x000ea000-0x000ebfff window] (subtractive decode)
    0.673825] pci 0000:00:14.4:   bridge window [mem 0x000ec000-0x000edfff window] (subtractive decode)
    0.673828] pci 0000:00:14.4:   bridge window [mem 0x000ee000-0x000effff window] (subtractive decode)
    0.673831] pci 0000:00:14.4:   bridge window [mem 0xe0000000-0xf7ffffff window] (subtractive decode)
    0.673834] pci 0000:00:14.4:   bridge window [mem 0xf8000000-0xffffffff window] (subtractive decode)
    0.673837] pci 0000:00:14.4:   bridge window [io  0x0000-0x0cf7 window] (subtractive decode)
    0.673840] pci 0000:00:14.4:   bridge window [io  0x0d00-0xffff window] (subtractive decode)
    0.674056] pci 0000:00:15.0: PCI bridge to [bus 03]
    0.689505] pci 0000:00:15.1: PCI bridge to [bus 04]
    0.689522] pci 0000:00:15.1:   bridge window [io  0x2000-0x2fff]
    0.689527] pci 0000:00:15.1:   bridge window [mem 0xf0100000-0xf01fffff]
    0.697465] pci 0000:00:01.0: vgaarb: bridge control possible
    0.754207] pci 0000:01:00.0: can't claim BAR 6 [mem 0xfffe0000-0xffffffff pref]: no compatible bridge window
    0.754226] pci 0000:00:15.1: bridge window [mem 0x00100000-0x000fffff 64bit pref] to [bus 04] add_size 200000 add_align 100000
    0.754316] pci 0000:00:06.0: PCI bridge to [bus 01]
    0.754321] pci 0000:00:06.0:   bridge window [io  0x3000-0x3fff]
    0.754328] pci 0000:00:06.0:   bridge window [mem 0xf0300000-0xf03fffff]
    0.754333] pci 0000:00:06.0:   bridge window [mem 0xf0000000-0xf00fffff 64bit pref]
    0.754341] pci 0000:00:14.4: PCI bridge to [bus 02]
    0.754373] pci 0000:00:15.0: PCI bridge to [bus 03]
    0.754388] pci 0000:00:15.1: PCI bridge to [bus 04]
    0.754392] pci 0000:00:15.1:   bridge window [io  0x2000-0x2fff]
    0.754399] pci 0000:00:15.1:   bridge window [mem 0xf0100000-0xf01fffff]
    0.754404] pci 0000:00:15.1:   bridge window [mem 0xf0400000-0xf05fffff 64bit pref]

Thanks for your help!

I am not familiar with south/north bridge. I post here also the output of dmesg | grep -i acpi


/home/gianluca> dmesg | grep -i acpi
    0.000000] BIOS-e820: [mem 0x00000000c730f000-0x00000000c738efff] ACPI NVS
    0.000000] BIOS-e820: [mem 0x00000000c738f000-0x00000000c73eefff] ACPI data
    0.012804] ACPI: Early table checksum verification disabled
    0.012814] ACPI: RSDP 0x00000000000F00E0 000024 (v02 LENOVO)
    0.012821] ACPI: XSDT 0x00000000C73EE120 000074 (v01 LENOVO TP-8F    00000003 PTEC 00000002)
    0.012835] ACPI: FACP 0x00000000C73DC000 0000F4 (v04 LENOVO TP-8F    00001130 PTL  00000002)
    0.012848] ACPI: DSDT 0x00000000C73DE000 00E9A9 (v01 LENOVO TP-8F    00001000 PTEC 00001130)
    0.012855] ACPI: FACS 0x00000000C737A000 000040
    0.012860] ACPI: FACS 0x00000000C737A000 000040
    0.012865] ACPI: SLIC 0x00000000C73ED000 000176 (v01 LENOVO TP-8F    00001130 PTEC 00000001)
    0.012872] ACPI: HPET 0x00000000C73DB000 000038 (v01 LENOVO TP-8F    00001130 PTL  00000002)
    0.012878] ACPI: APIC 0x00000000C73DA000 00005E (v02 LENOVO TP-8F    00001130 PTL  00000002)
    0.012884] ACPI: MCFG 0x00000000C73D9000 00003C (v01 LENOVO TP-8F    00001130 PTL  00000002)
    0.012890] ACPI: UEFI 0x00000000C73D8000 00003E (v01 LENOVO TP-8F    00001130 PTL  00000002)
    0.012895] ACPI: UEFI 0x00000000C73D7000 000042 (v01 PTL    COMBUF   00000001 PTL  00000001)
    0.012901] ACPI: SSDT 0x00000000C73D6000 0003DE (v01 AMD    POWERNOW 00000001 AMD  00000001)
    0.012907] ACPI: SSDT 0x00000000C73D4000 0012FA (v02 AMD    ALIB     00000001 MSFT 04000000)
    0.012914] ACPI: UEFI 0x00000000C73D3000 00012A (v01 LENOVO TP-8F    00001130 PTL  00000002)
    0.012930] ACPI: Local APIC address 0xfee00000
    0.061562] ACPI: PM-Timer IO Port: 0x808
    0.061568] ACPI: Local APIC address 0xfee00000
    0.061584] ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1])
    0.061586] ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1])
    0.061653] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
    0.061658] ACPI: IRQ0 used by override.
    0.061660] ACPI: IRQ9 used by override.
    0.061664] Using ACPI (MADT) for SMP configuration information
    0.061668] ACPI: HPET id: 0x43538210 base: 0xfed00000
    0.484952] ACPI: Core revision 20190703
    0.570274] PM: Registering ACPI NVS region [mem 0xc730f000-0xc738efff] (524288 bytes)
    0.574616] ACPI: bus type PCI registered
    0.574616] acpiphp: ACPI Hot Plug PCI Controller Driver version: 0.5
    0.581612] ACPI: Added _OSI(Module Device)
    0.581612] ACPI: Added _OSI(Processor Device)
    0.581612] ACPI: Added _OSI(3.0 _SCP Extensions)
    0.581612] ACPI: Added _OSI(Processor Aggregator Device)
    0.581612] ACPI: Added _OSI(Linux-Dell-Video)
    0.581612] ACPI: Added _OSI(Linux-Lenovo-NV-HDMI-Audio)
    0.581612] ACPI: Added _OSI(Linux-HPI-Hybrid-Graphics)
    0.614762] ACPI: 3 ACPI AML tables successfully acquired and loaded
    0.618110] ACPI: [Firmware Bug]: BIOS _OSI(Linux) query ignored
    0.622211] ACPI: EC: EC started
    0.622213] ACPI: EC: interrupt blocked
    0.624770] ACPI: \_SB_.PCI0.LPC0.EC__: Used as first EC
    0.624775] ACPI: \_SB_.PCI0.LPC0.EC__: GPE=0x3, EC_CMD/EC_SC=0x66, EC_DATA=0x62
    0.624778] ACPI: \_SB_.PCI0.LPC0.EC__: Boot DSDT EC used to handle transactions
    0.624779] ACPI: Interpreter enabled
    0.624825] ACPI: (supports S0 S3 S4 S5)
    0.624828] ACPI: Using IOAPIC for interrupt routing
    0.626233] PCI: MMCONFIG at [mem 0xf8000000-0xf9ffffff] reserved in ACPI motherboard resources
    0.626258] PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug
    0.626891] ACPI: Enabled 3 GPEs in block 00 to 1F
    0.648443] ACPI: PCI Root Bridge [PCI0] (domain 0000 [bus 00-ff])
    0.648460] acpi PNP0A08:00: _OSC: OS supports [ExtendedConfig ASPM ClockPM Segments MSI EDR HPX-Type3]
    0.649227] acpi PNP0A08:00: _OSC: platform does not support [SHPCHotplug LTR DPC]
    0.650041] acpi PNP0A08:00: _OSC: OS now controls [PCIeHotplug PME AER PCIeCapability]
    0.650069] acpi PNP0A08:00: [Firmware Info]: MMCONFIG for domain 0000 [bus 00-1f] only partially covers this bridge
    0.652056] acpi PNP0A08:00: ignoring host bridge window [mem 0x000ce000-0x000cffff window] (conflicts with Video ROM [mem 0x000c0000-0x000ce1ff])
    0.691026] ACPI: PCI Interrupt Link [LNKA] (IRQs 10 11) *0
    0.691355] ACPI: PCI Interrupt Link [LNKB] (IRQs 10 11) *0
    0.691675] ACPI: PCI Interrupt Link [LNKC] (IRQs 10 11) *0
    0.692002] ACPI: PCI Interrupt Link [LNKD] (IRQs 10 11) *0
    0.692311] ACPI: PCI Interrupt Link [LNKE] (IRQs 10 11) *0
    0.692577] ACPI: PCI Interrupt Link [LNKF] (IRQs 10 11) *0
    0.692832] ACPI: PCI Interrupt Link [LNKG] (IRQs 10 11) *0
    0.693017] ACPI: PCI Interrupt Link [LNKH] (IRQs 10 11) *0
    0.694938] ACPI: EC: interrupt unblocked
    0.694954] ACPI: EC: event unblocked
    0.694964] ACPI: \_SB_.PCI0.LPC0.EC__: GPE=0x3, EC_CMD/EC_SC=0x66, EC_DATA=0x62
    0.694968] ACPI: \_SB_.PCI0.LPC0.EC__: Boot DSDT EC used to handle transactions and events
    0.697992] PCI: Using ACPI for IRQ routing
    0.738301] pnp: PnP ACPI init
    0.738871] system 00:00: Plug and Play ACPI device, IDs PNP0c02 (active)
    0.740913] pnp 00:01: Plug and Play ACPI device, IDs PNP0b00 (active)
    0.741002] pnp 00:02: Plug and Play ACPI device, IDs PNP0303 (active)
    0.741124] pnp 00:03: Plug and Play ACPI device, IDs LEN0017 PNP0f13 (active)
    0.741372] system 00:04: Plug and Play ACPI device, IDs PNP0c02 (active)
    0.741806] system 00:05: Plug and Play ACPI device, IDs PNP0c01 (active)
    0.742762] pnp: PnP ACPI: found 6 devices
    0.754110] clocksource: acpi_pm: mask: 0xffffff max_cycles: 0xffffff, max_idle_ns: 2085701024 ns
    7.497708] ACPI: Video Device [VGA1] (multi-head: yes  rom: no  post: no)
    7.553770] acpi device:37: registered as cooling_device2
    7.559409] acpi PNP0C14:01: duplicate WMI GUID 05901221-D566-11D1-B2F0-00A0C9062910 (first instance was on PNP0C14:00)
    7.743728] ACPI: bus type USB registered
   13.543152] acpi_cpufreq: overriding BIOS provided _PSD data
   13.550194] ACPI: Power Button [PWRB]
   13.552721] ACPI: AC Adapter [ACAD] (on-line)
   13.576856] ACPI: Sleep Button [SLPB]
   13.580211] ACPI: Lid Switch [LID]
   13.586829] ACPI: Power Button [PWRF]
   13.764710] ACPI: Thermal Zone [THZ0] (65 C)
   13.855282] battery: ACPI: Battery Slot [BAT1] (battery present)
   13.860192] ACPI Warning: SystemIO range 0x0000000000000B00-0x0000000000000B08 conflicts with OpRegion 0x0000000000000B00-0x0000000000000B0F (\_SB.PCI0.SMB.SMB0) (20190703/utaddress-213)
   13.860211] ACPI: If an ACPI driver is available for this device, you should use it instead of the native driver
   14.188299] thinkpad_acpi: ThinkPad ACPI Extras v0.26
   14.188304] thinkpad_acpi: http://ibm-acpi.sf.net/
   14.188306] thinkpad_acpi: ThinkPad BIOS 8FET29WW (1.13 ), EC unknown
   14.188309] thinkpad_acpi: Lenovo ThinkPad X120e, model 05962RU
   14.226511] thinkpad_acpi: radio switch found; radios are enabled
   14.226593] thinkpad_acpi: Tablet mode switch found (type: MHKG), currently in laptop mode
   14.226639] thinkpad_acpi: This ThinkPad has standard ACPI backlight brightness control, supported by the ACPI video driver
   14.226641] thinkpad_acpi: Disabling thinkpad-acpi brightness events by default...
   14.269322] thinkpad_acpi: rfkill switch tpacpi_bluetooth_sw: radio is unblocked
   14.409129] ACPI: \_SB_.PCI0.LPC0.EC__.HKEY: BCTG evaluated but flagged as error
   14.409134] thinkpad_acpi: Error probing battery 2
   14.409448] input: ThinkPad Extra Buttons as /devices/platform/thinkpad_acpi/input/input16

Thanks!

Hi!

I tried out the suggestion by OrsoBruno above with


systemctl hibernate

Hibernating failed. As soon as I hit the ENTER key I hear a beep, the power button LED and the “Sleep” LED blink, the screen goes blank and nothing else happens for over 1 minute. I have to press the power button for 20 seconds until it reboots properly. I didn’t have any problems hibernating with the mechanical hard drive that came with the laptop, a WD Scorpio Black. Also,


journalctl -b -1

shows errors related to the SSD:


Jun 30 10:30:51 demetra kernel: ata1.00: exception Emask 0x0 SAct 0x9fffffff SErr 0>
Jun 30 10:30:51 demetra kernel: ata1.00: irq_stat 0x40000009
Jun 30 10:30:51 demetra kernel: ata1: SError: { CommWake 10B8B }
Jun 30 10:30:51 demetra kernel: ata1.00: failed command: READ FPDMA QUEUED
Jun 30 10:30:51 demetra kernel: ata1.00: cmd 60/08:10:e0:2b:30/00:00:02:00:00/40 ta>
                                         res 41/84:08:18:2b:30/00:00:02:00:00/00 Em>
Jun 30 10:30:51 demetra kernel: ata1.00: status: { DRDY ERR }
Jun 30 10:30:51 demetra kernel: ata1.00: error: { ICRC ABRT }

These error messages appear also during normal boot. According to this thread:

https://forums.unraid.net/topic/102160-solved-failed-command-read-fpdma-queued-bad-new-ssd/

this may lead to data loss. It seems that the Samsung 870 EVO may have problems with this AMD chipset. This is too bad since everything else works flawlessly otherwise. I need to decide whether I should go back to a mechanical hard drive. If anybody has any advice, please let me know!

Thanks!

Given the problems with the Samsung 870 EVO on this system, I decided that it would be wise to replace the hard disk with a mechanical one. I am considering the following hard disk:
https://shop.westerndigital.com/products/internal-drives/wd-black-mobile-sata-hdd#WD10SPSX

Are there any potential problems using this hard drive with an older AMD chipset in Linux?

Thanks!

You need not

dmesg | grep -i south
dmesg | grep -i bridge

but

dmesg | grep -i ata

Then you’ll see errors with “READ FPDMA QUEUED” or “WRITE FPDMA QUEUED”.

For laptop use SSD, not HDD. Change your Samsung to non-Samsung SSD drive. Hope you have a warranty case.
SSDs with Phison controllers work OK, also maybe others non-Samsung.

Problems with ATA:

/* Devices with DMA related problems under Linux */

Check upgrade to APU: List of AMD processors with 3D graphics - Wikipedia
Socket FT1 (BGA-413), possibly E-450 or E2-2000 are suitable.

Thanks Svyatko,

In between, I disabled NCQ since it is buggy in this chipset:

https://bbs.archlinux.org/viewtopic.php?id=267211

I added


libata.force=noncq

to the kernel parameters and all errors related to ATA have disappeared:


/home/gianluca> dmesg | grep -i ata
    0.000000] Command line: BOOT_IMAGE=/vmlinuz-5.3.18-lp152.75-default root=UUID=84f98e9f-c451-4ad6-b760-198fb02a8ab9 splash=silent resume=/dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part2 quiet libata.force=noncq mitigations=auto
    0.000000] BIOS-e820: [mem 0x00000000c738f000-0x00000000c73eefff] ACPI data
    0.013527] NODE_DATA(0) allocated [mem 0x19efea000-0x19effffff]
    0.348732] Kernel command line: BOOT_IMAGE=/vmlinuz-5.3.18-lp152.75-default root=UUID=84f98e9f-c451-4ad6-b760-198fb02a8ab9 splash=silent resume=/dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part2 quiet libata.force=noncq mitigations=auto
    0.446039] Memory: 3321844K/5874352K available (12291K kernel code, 1483K rwdata, 4240K rodata, 2164K init, 12972K bss, 225108K reserved, 0K cma-reserved)
    0.624730] ACPI: \_SB_.PCI0.LPC0.EC__: GPE=0x3, EC_CMD/EC_SC=0x66, EC_DATA=0x62
    0.686182] ACPI: \_SB_.PCI0.LPC0.EC__: GPE=0x3, EC_CMD/EC_SC=0x66, EC_DATA=0x62
    0.686959] libata version 3.00 loaded.
    3.620247] ahci 0000:00:11.0: AHCI 0001.0200 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
    3.621505] ata1: SATA max UDMA/133 abar m1024@0xf024a000 port 0xf024a100 irq 19
    4.096805] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
    4.097340] ata1.00: FORCE: horkage modified (noncq)
    4.097448] ata1.00: supports DRM functions and may not be fully accessible
    4.097452] ata1.00: ATA-11: Samsung SSD 870 EVO 1TB, SVT01B6Q, max UDMA/133
    4.097456] ata1.00: 1953525168 sectors, multi 1: LBA48 NCQ (not used)
    4.099792] ata1.00: supports DRM functions and may not be fully accessible
    4.101650] ata1.00: configured for UDMA/133
    4.101971] scsi 0:0:0:0: Direct-Access     ATA      Samsung SSD 870  1B6Q PQ: 0 ANSI: 5
    4.102572] ata1.00: Enabling discard_zeroes_data
    4.103612] ata1.00: Enabling discard_zeroes_data
    4.108758] ata1.00: Enabling discard_zeroes_data
    4.124619] Write protecting the kernel read-only data: 20480k
    8.502646] EXT4-fs (sda6): mounted filesystem with ordered data mode. Opts: (null)
   11.182944] acpi_cpufreq: overriding BIOS provided _PSD data
   12.314926] cfg80211: Loading compiled-in X.509 certificates for regulatory database
   14.589272] EXT4-fs (sda5): mounted filesystem with ordered data mode. Opts: data=ordered
   14.625101] EXT4-fs (sda4): mounted filesystem with ordered data mode. Opts: data=ordered

However, hibernate still fails:


systemctl hibernate

causes the screen to go blank while the button and Sleep LEDs blink for over one minute and I need to press the power button to reboot.

I found the following lines related to ACPI:


   11.818285] thinkpad_acpi: rfkill switch tpacpi_bluetooth_sw: radio is unblocked
   11.891346] ACPI: \_SB_.PCI0.LPC0.EC__.HKEY: BCTG evaluated but flagged as error 
   11.891351] thinkpad_acpi: Error probing battery 2 
   11.894826] battery: extension failed to load: ThinkPad Battery Extension
   11.894833] battery: extension unregistered: ThinkPad Battery Extension 
   11.936703] input: ThinkPad Extra Buttons as /devices/platform/thinkpad_acpi/input/input16

Not sure whether those messages are related to the hibernation problem though.

I’m not sure it’s worth it for me upgrading the APU (if this is what you meant). Do you think that for example the WDC SSD Blue would work better and would allow me to hibernate?

https://www.newegg.com/western-digital-blue-1tb/p/N82E16820250088?Description=wd

Or is there any solution to fix the hibernate problem with the Samsung 870 EVO (given that the “FPDMA QUEUED” problems seem to be resolved)?

Thanks!

I have a hard time finding a SSD with a SATA interface that has the Phison controller.

Thanks!

I did find Verbatim with Phison controller and the reviews on amazon seem positive:

https://www.newegg.com/verbatim-vi550-1tb/p/0D9-002W-00016?quicklink=true

Can this be recommended with the E-350 chipset?

Thanks!

If hibernate still fails and you are forced to reboot, the last few lines of

journalctl -b -1

should show where the process stopped and possibly if that is related to the disk at all.

Is there a way to go back to more than the last reboot? I have already rebooted about 4 times from the last attempt.

Yes

journalctl -b -4

or other numbers as you please.

I followed the directions in this link:

https://www.kernel.org/doc/html/latest/power/basic-pm-debugging.html


echo shutdown > /sys/power/disk
echo disk > /sys/power/state

This seems to work. The system hibernates and powers off. Upon powering it back on, it resumes to where it was before hibernation. However,


systemctl hibernate

still has the same issue where the screen goes blank and the power button LED blinks and I have to press the power button to reboot.


journalctl -b -l

shows only the log of the boot process after I pressed the power button to force reboot:


-- Logs begin at Fri 2021-07-02 10:42:36 PDT, end at Fri 2021-07-02 10:43:12 PDT. --
Jul 02 10:42:36 localhost kernel: Linux version 5.3.18-lp152.75-default (geeko@buildhost) (gcc version 7.5.0 (SUSE Linux)) #1 SMP Wed May 5 09:22:56 UTC 2021 (16c42c8)
Jul 02 10:42:36 localhost kernel: Command line: BOOT_IMAGE=/vmlinuz-5.3.18-lp152.75-default root=UUID=84f98e9f-c451-4ad6-b760-198fb02a8ab9 splash=silent resume=/dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part2 quiet libata.force=noncq mitigations=auto
Jul 02 10:42:36 localhost kernel: x86/fpu: x87 FPU will use FXSAVE
Jul 02 10:42:36 localhost kernel: BIOS-provided physical RAM map:
Jul 02 10:42:36 localhost kernel: BIOS-e820: [mem 0x0000000000000000-0x000000000009d7ff] usable
Jul 02 10:42:36 localhost kernel: BIOS-e820: [mem 0x000000000009d800-0x000000000009ffff] reserved
Jul 02 10:42:36 localhost kernel: BIOS-e820: [mem 0x00000000000e0000-0x00000000000fffff] reserved
Jul 02 10:42:36 localhost kernel: BIOS-e820: [mem 0x0000000000100000-0x00000000c6efefff] usable
Jul 02 10:42:36 localhost kernel: BIOS-e820: [mem 0x00000000c6eff000-0x00000000c730efff] reserved
Jul 02 10:42:36 localhost kernel: BIOS-e820: [mem 0x00000000c730f000-0x00000000c738efff] ACPI NVS
Jul 02 10:42:36 localhost kernel: BIOS-e820: [mem 0x00000000c738f000-0x00000000c73eefff] ACPI data
Jul 02 10:42:36 localhost kernel: BIOS-e820: [mem 0x00000000c73ef000-0x00000000c7dfffff] usable
Jul 02 10:42:36 localhost kernel: BIOS-e820: [mem 0x00000000c7e00000-0x00000000c7ffffff] reserved
Jul 02 10:42:36 localhost kernel: BIOS-e820: [mem 0x00000000fec00000-0x00000000fecfffff] reserved
Jul 02 10:42:36 localhost kernel: BIOS-e820: [mem 0x00000000fed80000-0x00000000fed80fff] reserved
Jul 02 10:42:36 localhost kernel: BIOS-e820: [mem 0x00000000ffe00000-0x00000000ffffffff] reserved
Jul 02 10:42:36 localhost kernel: BIOS-e820: [mem 0x0000000100000000-0x000000019effffff] usable

I do not see any error messages related to ata:


/home/gianluca> journalctl -b -l | grep -i ata
Jul 02 10:42:36 localhost kernel: Command line: BOOT_IMAGE=/vmlinuz-5.3.18-lp152.75-default root=UUID=84f98e9f-c451-4ad6-b760-198fb02a8ab9 splash=silent resume=/dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part2 quiet libata.force=noncq mitigations=auto
Jul 02 10:42:36 localhost kernel: BIOS-e820: [mem 0x00000000c738f000-0x00000000c73eefff] ACPI data
Jul 02 10:42:36 localhost kernel: NODE_DATA(0) allocated [mem 0x19efea000-0x19effffff]
Jul 02 10:42:36 localhost kernel: Kernel command line: BOOT_IMAGE=/vmlinuz-5.3.18-lp152.75-default root=UUID=84f98e9f-c451-4ad6-b760-198fb02a8ab9 splash=silent resume=/dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part2 quiet libata.force=noncq mitigations=auto
Jul 02 10:42:36 localhost kernel: Memory: 3321844K/5874352K available (12291K kernel code, 1483K rwdata, 4240K rodata, 2164K init, 12972K bss, 225108K reserved, 0K cma-reserved)
Jul 02 10:42:36 localhost kernel: ACPI: \_SB_.PCI0.LPC0.EC__: GPE=0x3, EC_CMD/EC_SC=0x66, EC_DATA=0x62
Jul 02 10:42:36 localhost kernel: ACPI: \_SB_.PCI0.LPC0.EC__: GPE=0x3, EC_CMD/EC_SC=0x66, EC_DATA=0x62
Jul 02 10:42:36 localhost kernel: libata version 3.00 loaded.
Jul 02 10:42:36 localhost kernel: ahci 0000:00:11.0: AHCI 0001.0200 32 slots 1 ports 3 Gbps 0x1 impl SATA mode
Jul 02 10:42:36 localhost kernel: ata1: SATA max UDMA/133 abar m1024@0xf024a000 port 0xf024a100 irq 19
Jul 02 10:42:36 localhost kernel: ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
Jul 02 10:42:36 localhost kernel: ata1.00: FORCE: horkage modified (noncq)
Jul 02 10:42:36 localhost kernel: ata1.00: supports DRM functions and may not be fully accessible
Jul 02 10:42:36 localhost kernel: ata1.00: ATA-11: Samsung SSD 870 EVO 1TB, SVT01B6Q, max UDMA/133
Jul 02 10:42:36 localhost kernel: ata1.00: 1953525168 sectors, multi 1: LBA48 NCQ (not used)
Jul 02 10:42:36 localhost kernel: ata1.00: supports DRM functions and may not be fully accessible
Jul 02 10:42:36 localhost kernel: ata1.00: configured for UDMA/133
Jul 02 10:42:36 localhost kernel: scsi 0:0:0:0: Direct-Access     ATA      Samsung SSD 870  1B6Q PQ: 0 ANSI: 5
Jul 02 10:42:36 localhost kernel: ata1.00: Enabling discard_zeroes_data
Jul 02 10:42:36 localhost kernel: ata1.00: Enabling discard_zeroes_data
Jul 02 10:42:36 localhost kernel: ata1.00: Enabling discard_zeroes_data
Jul 02 10:42:36 localhost kernel: Write protecting the kernel read-only data: 20480k
Jul 02 10:42:36 localhost dracut-cmdline[177]: Using kernel command line parameters: resume=UUID=6bd7148c-4afe-4cea-8034-2bc13bde5de7 root=UUID=84f98e9f-c451-4ad6-b760-198fb02a8ab9 rootfstype=ext4 rootflags=rw,relatime BOOT_IMAGE=/vmlinuz-5.3.18-lp152.75-default root=UUID=84f98e9f-c451-4ad6-b760-198fb02a8ab9 splash=silent resume=/dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part2 quiet libata.force=noncq mitigations=auto
Jul 02 10:42:38 localhost systemd[1]: Starting Resume from hibernation using device /dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part2...
Jul 02 10:42:38 localhost systemd-hibernate-resume[309]: Could not resume from '/dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part2' (8:2).
Jul 02 10:42:38 localhost systemd[1]: Started Resume from hibernation using device /dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part2.
Jul 02 10:42:40 localhost kernel: EXT4-fs (sda6): mounted filesystem with ordered data mode. Opts: (null)
Jul 02 10:42:42 demetra kernel: acpi_cpufreq: overriding BIOS provided _PSD data
Jul 02 10:42:44 demetra kernel: cfg80211: Loading compiled-in X.509 certificates for regulatory database
Jul 02 10:42:45 demetra systemd[1]: Activating swap /dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part2...
Jul 02 10:42:45 demetra systemd[1]: Starting File System Check on /dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part5...
Jul 02 10:42:45 demetra systemd[1]: Starting File System Check on /dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part4...
Jul 02 10:42:45 demetra systemd[1]: Starting File System Check on /dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part1...
Jul 02 10:42:46 demetra systemd[1]: Activated swap /dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part2.
Jul 02 10:42:46 demetra systemd[1]: Started File System Check on /dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part4.
Jul 02 10:42:46 demetra systemd[1]: Started File System Check on /dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part1.
Jul 02 10:42:46 demetra kernel: EXT4-fs (sda4): mounted filesystem with ordered data mode. Opts: data=ordered
Jul 02 10:42:46 demetra systemd[1]: Started File System Check on /dev/disk/by-id/ata-Samsung_SSD_870_EVO_1TB_S625NJ0R170295A-part5.
Jul 02 10:42:46 demetra kernel: EXT4-fs (sda5): mounted filesystem with ordered data mode. Opts: data=ordered
Jul 02 10:42:46 demetra systemd[1]: Starting Tell Plymouth To Write Out Runtime Data...
Jul 02 10:42:46 demetra systemd[1]: Started Tell Plymouth To Write Out Runtime Data.
Jul 02 10:42:49 demetra smartd[1218]: Device: /dev/sda [SAT], not found in smartd database.
Jul 02 10:42:49 demetra smartd[1218]: Device: /dev/sda [SAT], state read from /var/lib/smartmontools/smartd.Samsung_SSD_870_EVO_1TB-S625NJ0R170295A.ata.state
Jul 02 10:42:49 demetra smartd[1218]: Monitoring 1 ATA/SATA, 0 SCSI/SAS and 0 NVMe devices
Jul 02 10:42:49 demetra smartd[1218]: Device: /dev/sda [SAT], state written to /var/lib/smartmontools/smartd.Samsung_SSD_870_EVO_1TB-S625NJ0R170295A.ata.state
Jul 02 10:42:49 demetra systemd[1]: Started Backup of RPM database.
Jul 02 10:42:49 demetra systemd[1]: Started Defragment file data and/or directory metadata.
Jul 02 10:42:50 demetra systemd[1]: Started Daily locate database update.

Does systemctl hibernate recognize that “shutdown” is set as the default in /sys/power/disk?

Thanks!

I just found out that systemd overwrites /sys/power/disk and resets “platform” as the default.

This link:

https://superuser.com/questions/1442634/systemctl-hibernate-and-reboot

describes that you can modify the content of /etc/systemd/sleep.conf, but there is no such file in my current system. Can I just create it and will systemd read it?

I don’t see that file in Leap 15.2 but I have it on Tumbleweed (all commented out), I think it is safe to create one.

A lot of cheap SSDs have Phison controller. They are manufacturing by Phison and selling with different brands.

??? the option “-l” has no effect, so you are seeing the last boot. A typing mistake?

Cheap and slow. IMHO will work OK.

Faster solution: https://www.goodram.com/en/products/ssd-irdm-pro-gen-2-sata-iii-25/

Controller
Phison PS3112-S12