No matter whether UTC is set to yes or no, the system always think hardware time is UTC.
However, sudo "hwclock --systohc --localtime" can correctly make the system regard hardware time as local time.
I am really confused. Linux is joking me? Have any one encounter such problem?