I have 14 Seagate ST31500541AS drives, and one them started reporting only 500GB size instead of 1.5TB. This means that both in the BIOS it shows only 500GB, and both in my linux every tool (fdisk, blockdev etc) show the smaller size.
Please note that this is not a partitioning bug.
Does anyone have an idea how to fix it? Why does it happen? How can I prevent it in the future? Is it a firmware bug?