Isn't ext2/3 almost as broken with respect to this pathological case? If it's created with mke2fs defaults, it runs out of inodes when the space is 25% used (bytes/inode = 8192). If it's created to maximise the number of small files, it reaches a shade under 50% utilized (one 4K block per file plus overheads). And I shudder to think about fscking it. (offline!)
Ext2 simply can't store a file using less than 4K. Btrfs can. Am I right to think that a filesystem full of 2Kb files is something close to Btrfs's worst case, and that Btrfs would handle a vaster number of really tiny files (hundreds or tens of bytes) rather well? (After the bug is fixed, of course).