As the name implies, spall liners aren't primarily about stopping penetrating projectiles, but fragments knocked off the inside surface of the armor (spalling) by hard but not necessarily penetrating impacts (say from HESH or HE).
While this is not my area, I seem to recall reading about this.
HESH (high explosive squash head) munitions are designed to defeat homogeneous steel armor. A plastic explosive warhead flattens against the outer armor, explodes, and causes a shock wave to resonate between the inner and outer surfaces of the armor. The armor eventually fails on the inner surface, sending large scabs of relatively low-velocity metal to smash everything inside the armor shell. Spall liners protect the crew against this material.
However, HESH is not effective against against heterogenious armor, such as spaced armor or laminates. HEAT (high explosive antitank, or shaped charge) warheads are at least somewhat effective and are thus now more commonly used. These munitions focus blast energy on a specially shaped copper liner, projecting a long, thin, high velocity jet of vaporized metal that can penetrate large thicknesses of armor. Spall liners can't stop the jets. But they can catch any fragments that break off the inside layer of the armor when the jet penetrates. The jet is relatively light, so anything that reduces the number of heavier fragments presumably limits damage.
In much the same way, spall liners also limit fragments when solid shot (APDS or APFSDS) penetrates armor. Since the shot is heavier, though, I imagine that fragmentation is more extensive and spall liners are proportionately less effective.