Recently some of our skinned meshes started to display incorrectly ( model looks squashed ) and debugging one such frame with a frame capture reveals that there’s some invalid OpenGL usage going on. The picture attached shows how Unity tries to upload too many bone matrices ( 408 registers or 136 bones ) into a shader that contains at most 8 bones. I checked the vertex buffer as well and the bone indices go beyond 8 as if the shader was supposed to contain 136 bones. Approximately 10% of our skinned meshes have this issue.
Switching to CPU skinning fixes this issue but introduces a bug on iOS ( https://fogbugz.unity3d.com/default.asp?797570_4pt0a2gm5fv1gqac )