dmcrypt+btrfs Out of bounds

Bug #2022901 reported by adam furtenbach
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux-signed (Ubuntu)
New
Undecided
Unassigned

Bug Description

Getting this IO error when using btrfs + dmcrypt (5 times so far, reformat between each try) on a DDR5 system w/ built in ECC.

[82228.951950] Buffer I/O error on dev sda1, logical block 35156653829, async page read

35156653829*512=18000206760448

This value 18000206760448 is between /dev/sda1 partition size and /dev/mapper/ARCHIVE(btrfs volume) size, but is still slightly out of bounds of btrfs partition geometry, causing an out of bounds error.

# lsblk -b

sda 8:0 0 18000207937536 0 disk
└─sda1 8:1 0 18000206872064 0 part
  └─ARCHIVE 253:1 0 18000190094848 0 crypt /mnt/archive

# btrfs filesystem show --raw
         devid 1 size 18000190091264 used 416628604928 path /dev/mapper/ARCHIVE

Linux oblivion 6.2.0-20-generic #20-Ubuntu SMP PREEMPT_DYNAMIC Thu Apr 6 07:48:48 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 23.04
Release: 23.04
Codename: lunar

Revision history for this message
adam furtenbach (zmoosh) wrote :

System has been running stable for the entire time when not using dmcrypt on that disk.
dmcrypt+btrfs has been working perfectly on OS disk since the beginning.

> lsblk
nvme0n1 259:0 0 2000398934016 0 disk
├─nvme0n1p1 259:1 0 805306368 0 part
│ └─LUKS_BOOT 253:1 0 803209216 0 crypt /boot
├─nvme0n1p2 259:2 0 134217728 0 part /boot/efi
├─nvme0n1p3 259:3 0 1099511627776 0 part
│ └─ROOT 253:0 0 1099494850560 0 crypt /home
│ /
...

# CPU model
> cat /proc/cpuinfo | grep "model name" | head -n 1
model name : AMD Ryzen 9 7950X3D 16-Core Processor

# System running at stock speed
> dmidecode --type 17 | grep Speed: | head -n 1
        Speed: 4800 MT/s

# no issues with scrubbing
> btrfs scrub status /mnt/grid/
UUID: b1dc5510-5ecc-4bdb-b464-0ac09ffad89f
Scrub started: Sat Jun 10 11:13:39 2023
Status: finished
Duration: 9:03:05
Total to scrub: 6.74TiB
Rate: 209.78MiB/s
Error summary: no errors found

# smart table looks good
> smartctl -A /dev/sda
smartctl 7.3 2022-02-28 r5338 [x86_64-linux-6.2.0-20-generic] (local build)
Copyright (C) 2002-22, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate 0x000b 100 100 001 Pre-fail Always - 0
  2 Throughput_Performance 0x0005 149 149 054 Pre-fail Offline - 44
  3 Spin_Up_Time 0x0007 084 084 001 Pre-fail Always - 337 (Average 310)
  4 Start_Stop_Count 0x0012 100 100 000 Old_age Always - 21
  5 Reallocated_Sector_Ct 0x0033 100 100 001 Pre-fail Always - 0
  7 Seek_Error_Rate 0x000b 100 100 001 Pre-fail Always - 0
  8 Seek_Time_Performance 0x0005 140 140 020 Pre-fail Offline - 15
  9 Power_On_Hours 0x0012 100 100 000 Old_age Always - 267
 10 Spin_Retry_Count 0x0013 100 100 001 Pre-fail Always - 0
 12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 15
 22 Helium_Level 0x0023 100 100 025 Pre-fail Always - 100
192 Power-Off_Retract_Count 0x0032 100 100 000 Old_age Always - 33
193 Load_Cycle_Count 0x0012 100 100 000 Old_age Always - 33
194 Temperature_Celsius 0x0002 059 059 000 Old_age Always - 35 (Min/Max 22/37)
196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 0
197 Current_Pending_Sector 0x0022 100 100 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0008 100 100 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x000a 100 100 000 Old_age Always - 0

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.