(In reply to Bernhard Wiedemann from comment #1) > could it be that the subvolume is mounted? > or any information in dmesg|tail Yes, /opt is mounted. The error is different when /opt is not mount, # btrfs subvolume delete opt ERROR: 'opt' is not a subvolume There isn���t anything in dmesg. getcwd("/", 4096) = 2 lstat("/opt", {st_mode=S_IFDIR|0755, st_size=28, ...}) = 0 stat("/", {st_mode=S_IFDIR|0755, st_size=176, ...}) = 0 openat(AT_FDCWD, "/", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3 fstat(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f6a1ddf6000 write(1, "Delete subvolume (no-commit): '/"..., 38Delete subvolume (no-commit): '//opt' ) = 38 ioctl(3, BTRFS_IOC_SNAP_DESTROY, 0x7ffd5c2d2770) = -1 EINVAL (Invalid argument) write(2, "ERROR: cannot delete '//opt' - I"..., 48ERROR: cannot delete '//opt' - Invalid argument ) = 48 brk(0xd42000) = 0xd42000 close(3) = 0