  Node repair is a crucial problem in erasure-code-based distributed storage
systems. An important metric for repair efficiency is the I/O cost which equals
the total amount of data accessed at helper nodes to repair a failed node. In
this work, a general formula for computing the I/O cost of linear repair
schemes is derived from a new perspective, i.e., by investigating the Hamming
weight of a related linear space. Applying the formula to Reed-Solomon (RS)
codes, we obtain lower bounds on the I/O cost for full-length RS codes with two
and three parities. Furthermore, we build linear repair schemes for the RS
codes with improved I/O cost. For full-length RS codes with two parities, our
scheme meets the lower bound on the I/O cost.
