Project

General

Profile

Actions

Bug #21568

closed

arv-mount double free or corruption with many concurrent accesses

Added by Brett Smith 2 months ago. Updated about 1 month ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
FUSE
Story points:
-
Release relationship:
Auto

Description

Steps to reproduce:

  • Write Arvados settings.conf pointed at pirca with an admin token.
  • arv-mount --foreground --shared --directory-cache=SIZE MOUNT_PATH - I have been able to reproduce with sizes as low as 2MiB and high as 1GiB, I suspect it doesn't matter
  • Start a ~simultaneous ls -lR MOUNT_PATH/SUBDIR process for each SUBDIR under MOUNT_PATH - as I write this, I see 179

Reproduction script attached. I was trying to reproduce #21541 but instead arv-mount got SIGSEGV:

Mar 01 16:14:23 arv-mount[1131697]: double free or corruption (out)
Mar 01 16:14:23 systemd[2070]: arv-mount-stress-_hkr5ofm.service: Main process exited, code=killed, status=6/ABRT
Mar 01 16:14:23 systemd[2070]: arv-mount-stress-_hkr5ofm.service: Failed with result 'signal'.

Not attaching logs because they contain a lot of private data.


Files

arv-mount-stress-test.py (4.09 KB) arv-mount-stress-test.py Version 1 Brett Smith, 03/01/2024 09:35 PM
arv-mount-stress-test.py (5.44 KB) arv-mount-stress-test.py Version 2 Brett Smith, 03/01/2024 11:57 PM

Related issues

Related to Arvados - Bug #21541: arv-mount KeyError during cap_cache - Seemingly lost track of parent inodeResolvedPeter AmstutzActions
Actions

Also available in: Atom PDF