I suspect that df -P does not give you real OS block size. In below example df -P gives you count of 512 bytes blocks , but df -k gives you output in 1024 bytes blocks on the same system.
So , what is OS block size in this case?


% df -P
Filesystem 512-blocks Used Available Capacity Mounted on
/dev/hd4 262144 43224 218920 17% /
/dev/hd2 4194304 3789888 404416 91% /usr

% df -k
Filesystem 1024-blocks Free %Used Iused %Iused Mounted on
/dev/hd4 131072 109460 17% 2321 4% /
/dev/hd2 2097152 202208 91% 32232 7% /usr
/dev/hd9var 655360 483808 27% 911 1% /var
/dev/hd3 1179648 1116664 6% 295 1% /tmp