This bug has been fixed by moonman in kernel 4.10.12-2
Reading block with address above 2^31 causes short read error starting from linux-kirkwood-dt-4.8.4-1. The bug is still present in 4.10.6
This has been checked rolling back to linux-kirkwood-dt-4.8.1-1. Also, I have verified that mdadm and e2fsprogs are not related to this issue. Please take a look at the code and I will try to go over this myself too when I figure how