A three-dimensional self-consistent spin transport model is developed, which includes both tunnelling transport, leading to tunnelling magneto-resistance, as well as metallic transport, leading to giant magneto-resistance. An explicit solution to the drift-diffusion model is also derived, which allows analysing the effect of both the reference and free layer thickness on the spin-transfer torque polarization and field-like coefficient. It is shown the model developed here can be used to compute the signal-to-noise ratio in realistic magnetic read-heads, where spin torque-induced fluctuations and instabilities limit the maximum operating voltage. The effect of metallic pinhole defects in the insulator layer is also analysed. Increasing the area covered by pinholes results in a rapid degradation of the magneto-resistance, following an inverse dependence. Moreover, the spin torque angular dependence becomes skewed, similar to that obtained in fully metallic spin valves, and the spin-transfer torque polarization decreases. The same results are obtained when considering tunnel junctions with a single pinhole defect, but decreasing cross-sectional area, showing that even a single pinhole defect can significantly degrade the performance of tunnel junctions and magnetic read-heads below the 40 nm node.