ExtremeTech has a news article about it. And from the sounds of it, a third party program onboard the rover wanted to shove some data from the non-volatile memory (like your hard drive) into the volatile memory (like your RAM) probably to speed up access times or something, but the program didn't take into account the size of the file allocation table. So it was then trying to access files in the volatile memory that weren't there, and hence the nasty error.
To me this is a school-boy error, but then I haven't ever worked on an embedded system like this so I have no idea what kind of technical limitations or challenges that throws at people.