Recently, I encounter a btrfs snapshots remove/cleanup issue with a huge snapshots list. if you have over hundreds snapshots, remove snapshot would let the system freezing for a while by btrfs-transaction 100% cpu cost. it is quota unrelated. According the upstream explication: http://www.spinics.net/lists/linux-btrfs/msg57956.html. it reasonable that as a result of this, the work to create a snapshot only depends on the complexity of the directory structure within the subvolume, while the work to delete it depends on both that and how much the snapshot has changed from the parent subvolume.