If cryptsetup is being emerged on a system using +systemd, the udev USE flag is not selected. This results in a boot hang when doing things such as attempting to have an encrypted swap. Therefore, udev should be selected if systemd is. Reproducible: Always Steps to Reproduce: 1. setup an encrypted swap via /etc/crypttab and /etc/fstab while using systemd. 2. emerge crypttab without the udev flag. 3. attempt to boot, watch it fail.
setting USE=-udev on a system running systemd seems pointless ... cryptsetup itself has no systemd flag. your report is a bit scant on details as to what is actually hanging and where. please post some boot logs.