With ARMv7 apparently the ASID is part of the TLB lookup - if the current contents of the global ContextID register (c13, c0) don't match the TLB ASID, then the TLB entry won't be a match.
Unfortunately, Linux seems to change the ASID whenever it rolls over to 0