Cryptsetup was working flawlessly for months, but something I did today on my system now makes it hang:
# cryptsetup --debug --verbose luksOpen /dev/sdb home --key-file=/home.key --verbose
...
Key slot 1 unlocked.
...
# Udev cookie 0xd4d949a (semid 32768) decremented to 1
# Udev cookie 0xd4d949a (semid 32768) waiting for zero
Also when I do lsblk -f, I used to get UUIDs for all of the devices (including sdb) but now I only get a UUID and FSTYPE for the rootfs (every other device is listed, but FSTYPE, LABEL, and UUID are empty). blkid however does show the a UUID for all devices.
I also do not see any network devices - eth0 and wlp4s0 are missing from ip link and ifconfig.
When I boot from the original live USB, everything works perfectly - I can mount all partitions, connect to WiFi, and arch-chroot into the broken system. After doing so, I did pacman -Syuu, uninstalled all packages I installed today (f2fs-tools, exfat-utils, fuse-exfat) and updated my initramfs with mkinitcpio -p linux.