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

Bug#1085425: linux-image-6.10.12-riscv64: dwmmc_starfive causes filesystem corruption on emmc



Package: src:linux
Version: 6.10.12-1
Severity: critical
Tags: upstream
Justification: causes serious data loss

Hi,

The dwmmc_starfive module causes serious filesystem corruption when debian
is installed to emmc with linux-image-6.10.12-riscv64. The board in question
is Starfive Visionfive 2. The system tested on uses upstream u-boot and the
rootfs uses ext4. Please see the attached kernel log. The emmc was written
garbage even under light I/O.

Also: the vendor kernel doesn't have this issue. The latest 6.11.2-1 is not
tested yet because I could not get it to boot (another bug?).


-- Package-specific info:
** Version:
Linux version 6.10.12-riscv64 (debian-kernel@lists.debian.org) (riscv64-linux-gnu-gcc-13 (Debian 13.3.0-6) 13.3.0, GNU ld (GNU Binutils for Debian) 2.43.1) #1 SMP Debian 6.10.12-1 (2024-10-01)

** Command line:
root=UUID=1aed1397-d718-47ae-8529-5e03e17b1d21 ro console=tty0 console=ttyS0,115200 earlycon rootwait stmmaceth=chain_mode:1

** Not tainted

** Kernel log:
[  512.192643] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 614400 bytes), total 32768 (slots), used 0 (slots)
[  512.204997] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 614400 bytes), total 32768 (slots), used 0 (slots)
[  512.206286] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 831488 bytes), total 32768 (slots), used 106 (slots)
[  512.232594] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 831488 bytes), total 32768 (slots), used 108 (slots)
[  512.278731] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 663552 bytes), total 32768 (slots), used 0 (slots)
[  512.291361] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 663552 bytes), total 32768 (slots), used 0 (slots)
[  512.292383] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 327680 bytes), total 32768 (slots), used 0 (slots)
[  512.320057] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 327680 bytes), total 32768 (slots), used 0 (slots)
[  512.320792] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 266240 bytes), total 32768 (slots), used 8 (slots)
[  512.355186] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 266240 bytes), total 32768 (slots), used 8 (slots)
[  665.350199] swiotlb_tbl_map_single: 18 callbacks suppressed
[  665.350219] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 421888 bytes), total 32768 (slots), used 68 (slots)
[  665.367528] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 421888 bytes), total 32768 (slots), used 74 (slots)
[  665.433198] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 438272 bytes), total 32768 (slots), used 48 (slots)
[  665.444754] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 438272 bytes), total 32768 (slots), used 158 (slots)
[  676.968278] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 270336 bytes), total 32768 (slots), used 86 (slots)
[  676.981186] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 270336 bytes), total 32768 (slots), used 22 (slots)
[  676.981940] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 266240 bytes), total 32768 (slots), used 146 (slots)
[  677.040277] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 266240 bytes), total 32768 (slots), used 200 (slots)
[  677.113321] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 425984 bytes), total 32768 (slots), used 76 (slots)
[  677.125360] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 425984 bytes), total 32768 (slots), used 32 (slots)
[  677.202543] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 471040 bytes), total 32768 (slots), used 0 (slots)
[  677.213920] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 471040 bytes), total 32768 (slots), used 0 (slots)
[  677.214022] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 299008 bytes), total 32768 (slots), used 0 (slots)
[  677.295062] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 299008 bytes), total 32768 (slots), used 0 (slots)
[  685.267871] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 286720 bytes), total 32768 (slots), used 0 (slots)
[  685.280135] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 286720 bytes), total 32768 (slots), used 0 (slots)
[  685.280785] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 303104 bytes), total 32768 (slots), used 0 (slots)
[  685.344354] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 303104 bytes), total 32768 (slots), used 2 (slots)
[  691.052408] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 421888 bytes), total 32768 (slots), used 68 (slots)
[  691.064052] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 421888 bytes), total 32768 (slots), used 68 (slots)
[  691.064696] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 438272 bytes), total 32768 (slots), used 116 (slots)
[  691.090171] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 438272 bytes), total 32768 (slots), used 48 (slots)
[  691.116865] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 266240 bytes), total 32768 (slots), used 202 (slots)
[  691.129884] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 266240 bytes), total 32768 (slots), used 124 (slots)
[  691.130375] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 425984 bytes), total 32768 (slots), used 124 (slots)
[  691.154893] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 425984 bytes), total 32768 (slots), used 0 (slots)
[  691.156348] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 471040 bytes), total 32768 (slots), used 0 (slots)
[  691.218718] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 471040 bytes), total 32768 (slots), used 0 (slots)
[  700.376529] swiotlb_tbl_map_single: 14 callbacks suppressed
[  700.376549] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 282624 bytes), total 32768 (slots), used 110 (slots)
[  700.395627] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 282624 bytes), total 32768 (slots), used 110 (slots)
[  700.396116] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 454656 bytes), total 32768 (slots), used 110 (slots)
[  700.459907] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 454656 bytes), total 32768 (slots), used 2 (slots)
[  707.288416] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 475136 bytes), total 32768 (slots), used 78 (slots)
[  707.299807] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 475136 bytes), total 32768 (slots), used 0 (slots)
[  707.300617] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 466944 bytes), total 32768 (slots), used 60 (slots)
[  707.323914] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 466944 bytes), total 32768 (slots), used 60 (slots)
[  707.325463] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 524288 bytes), total 32768 (slots), used 142 (slots)
[  707.350091] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 524288 bytes), total 32768 (slots), used 82 (slots)
[  707.388716] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 282624 bytes), total 32768 (slots), used 110 (slots)
[  707.400367] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 282624 bytes), total 32768 (slots), used 110 (slots)
[  707.400779] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 454656 bytes), total 32768 (slots), used 110 (slots)
[  707.424435] dwmmc_starfive 16010000.mmc: swiotlb buffer is full (sz: 454656 bytes), total 32768 (slots), used 0 (slots)
[  855.775422] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 774144 bytes), total 32768 (slots), used 646 (slots)
[  855.825186] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 774144 bytes), total 32768 (slots), used 144 (slots)
[  855.927165] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 901120 bytes), total 32768 (slots), used 0 (slots)
[  855.939247] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 901120 bytes), total 32768 (slots), used 0 (slots)
[  856.032189] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 303104 bytes), total 32768 (slots), used 0 (slots)
[  856.043493] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 303104 bytes), total 32768 (slots), used 0 (slots)
[  856.043496] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 868352 bytes), total 32768 (slots), used 0 (slots)
[  856.116070] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 868352 bytes), total 32768 (slots), used 0 (slots)
[  856.142370] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 483328 bytes), total 32768 (slots), used 0 (slots)
[  856.169061] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 483328 bytes), total 32768 (slots), used 0 (slots)
[  862.024233] swiotlb_tbl_map_single: 10 callbacks suppressed
[  862.024252] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 724992 bytes), total 32768 (slots), used 464 (slots)
[  862.079594] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 724992 bytes), total 32768 (slots), used 24 (slots)
[  862.081596] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 585728 bytes), total 32768 (slots), used 24 (slots)
[  862.143269] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 585728 bytes), total 32768 (slots), used 0 (slots)
[  862.143291] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 1048576 bytes), total 32768 (slots), used 0 (slots)
[  862.204437] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 1048576 bytes), total 32768 (slots), used 62 (slots)
[  869.445841] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 323584 bytes), total 32768 (slots), used 0 (slots)
[  869.457172] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 323584 bytes), total 32768 (slots), used 0 (slots)
[  869.526512] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 356352 bytes), total 32768 (slots), used 20 (slots)
[  869.538078] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 356352 bytes), total 32768 (slots), used 0 (slots)
[  870.510777] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 430080 bytes), total 32768 (slots), used 90 (slots)
[  870.522516] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 430080 bytes), total 32768 (slots), used 90 (slots)
[  878.958459] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 397312 bytes), total 32768 (slots), used 0 (slots)
[  878.969774] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 397312 bytes), total 32768 (slots), used 0 (slots)
[  879.206563] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 421888 bytes), total 32768 (slots), used 0 (slots)
[  879.217877] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 421888 bytes), total 32768 (slots), used 0 (slots)
[  879.313591] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 307200 bytes), total 32768 (slots), used 0 (slots)
[  879.325047] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 307200 bytes), total 32768 (slots), used 0 (slots)
[  879.401112] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 307200 bytes), total 32768 (slots), used 0 (slots)
[  879.412460] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 307200 bytes), total 32768 (slots), used 0 (slots)
[  879.456338] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 335872 bytes), total 32768 (slots), used 100 (slots)
[  879.469372] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 335872 bytes), total 32768 (slots), used 100 (slots)
[  919.221951] swiotlb_tbl_map_single: 20 callbacks suppressed
[  919.221970] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 290816 bytes), total 32768 (slots), used 120 (slots)
[  919.239542] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 290816 bytes), total 32768 (slots), used 30 (slots)
[  946.033078] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 557056 bytes), total 32768 (slots), used 512 (slots)
[  946.098151] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 557056 bytes), total 32768 (slots), used 512 (slots)
[  946.110302] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 540672 bytes), total 32768 (slots), used 248 (slots)
[  946.152903] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 540672 bytes), total 32768 (slots), used 248 (slots)
[  946.164603] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 507904 bytes), total 32768 (slots), used 0 (slots)
[  946.225338] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 507904 bytes), total 32768 (slots), used 0 (slots)
[  946.236644] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 1048576 bytes), total 32768 (slots), used 0 (slots)
[  946.298244] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 1048576 bytes), total 32768 (slots), used 0 (slots)
[  946.309634] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 1048576 bytes), total 32768 (slots), used 0 (slots)
[  946.369583] dwmmc_starfive 16020000.mmc: swiotlb buffer is full (sz: 1048576 bytes), total 32768 (slots), used 0 (slots)

** Model information
Device Tree model: StarFive VisionFive 2 v1.3B

** Loaded modules:
tls
binfmt_misc
cfg80211
rfkill
8021q
garp
stp
mrp
llc
cdns3
snd_soc_simple_card
udc_core
snd_soc_simple_card_utils
jh7110_pwmdac
snd_soc_spdif_tx
cdns_usb_common
snd_soc_core
roles
usbcore
ofpart
snd_pcm_dmaengine
spi_nor
snd_pcm
mtd
snd_timer
dw_axi_dmac_platform
cdns3_starfive
usb_common
snd
starfive_wdt
sfctemp
watchdog
virt_dma
jh7110_trng
soundcore
cpufreq_dt
drm
drm_panel_orientation_quirks
configfs
nfnetlink
ip_tables
x_tables
autofs4
ext4
crc16
mbcache
jbd2
crc32c_generic
motorcomm
mmc_block
dwmac_starfive
stmmac_platform
stmmac
axp20x_regulator
dw_mmc_starfive
pcs_xpcs
dw_mmc_pltfm
axp20x_i2c
axp20x
dw_mmc
of_mdio
mfd_core
fixed_phy
regmap_i2c
phylink
mmc_core
fwnode_mdio
libphy
phy_jh7110_dphy_rx
clk_starfive_jh7110_isp
clk_starfive_jh7110_vout
spi_cadence_quadspi
i2c_designware_platform
clk_starfive_jh7110_aon
i2c_designware_core
phy_jh7110_pcie
clk_starfive_jh7110_stg
phy_jh7110_usb

** Network interface configuration:
*** /etc/network/interfaces:
source /etc/network/interfaces.d/*

auto end0
iface end0 inet dhcp

auto end1
iface end1 inet dhcp

** Network status:
*** IP interfaces and addresses:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host noprefixroute 
       valid_lft forever preferred_lft forever
2: end0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN group default qlen 1000
    link/ether 6c:cf:39:00:84:c6 brd ff:ff:ff:ff:ff:ff
3: end1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 6c:cf:39:00:84:c7 brd ff:ff:ff:ff:ff:ff
    inet6 240b:10:f00:1b00::2:462e/128 scope global dynamic noprefixroute 
       valid_lft 1208314sec preferred_lft 1208314sec
    inet6 fe80::99a4:3cc4:a449:ecb0/64 scope link 
       valid_lft forever preferred_lft forever

*** Device statistics:
Inter-|   Receive                                                |  Transmit
 face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
    lo:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
  end0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0
  end1: 16268036   18384    0 1287    0     0          0         0   166065    1273    0    0    0     0       0          0


** PCI devices:
not available

** USB devices:
not available


-- System Information:
Debian Release: trixie/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: riscv64

Kernel: Linux 6.10.12-riscv64 (SMP w/4 CPU threads)
Locale: LANG=C.UTF-8, LC_CTYPE=C.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages linux-image-6.10.12-riscv64 depends on:
ii  initramfs-tools [linux-initramfs-tool]  0.145
ii  kmod                                    33+20240816-2
ii  linux-base                              4.10.1

Versions of packages linux-image-6.10.12-riscv64 recommends:
ii  apparmor  3.1.7-1+b1

Versions of packages linux-image-6.10.12-riscv64 suggests:
pn  debian-kernel-handbook  <none>
pn  firmware-linux-free     <none>
pn  linux-doc-6.10          <none>

Versions of packages linux-image-6.10.12-riscv64 is related to:
pn  firmware-amd-graphics     <none>
pn  firmware-atheros          <none>
pn  firmware-bnx2             <none>
pn  firmware-bnx2x            <none>
pn  firmware-brcm80211        <none>
pn  firmware-cavium           <none>
pn  firmware-intel-sound      <none>
pn  firmware-intelwimax       <none>
pn  firmware-ipw2x00          <none>
pn  firmware-ivtv             <none>
pn  firmware-iwlwifi          <none>
pn  firmware-libertas         <none>
pn  firmware-linux-nonfree    <none>
pn  firmware-misc-nonfree     <none>
pn  firmware-myricom          <none>
pn  firmware-netxen           <none>
pn  firmware-qlogic           <none>
pn  firmware-realtek          <none>
pn  firmware-samsung          <none>
pn  firmware-siano            <none>
pn  firmware-ti-connectivity  <none>
pn  xen-hypervisor            <none>

-- no debconf information


Reply to: