Tried the hibernation by systemd, and saw the same result as manual hibernation: "kernel: PM: Cannot find swap device, try swapon -a." I do have swap file, not the swap partition. I guess hibernation requires the partition. So the OP bug seems to be resolved in the kernel 4.9.5.