If my understanding is not wrong, TLB stores not only virtual to physical address mappings, but also each page's flag such as writable flag(W), execute disable(XD) flag.
My question is what faults will be generated, if it tries to execute non-executable pages such as heap or stack? Is it a page fault?