Fork us on GitHub Follow us on Google+ Follow us on Facebook Follow us on Twitter

Opened 2 months ago

Closed 2 months ago

#727 closed defect (invalid)

pt_mapping_remove needs TLB shootdown before freeing frames

Reported by: Jiří Zárevúcky Owned by:
Priority: major Milestone:
Component: helenos/unspecified Version: mainline
Keywords: Cc:
Blocker for: Depends on:
See also:

Description

pt_mapping_remove frees page table frames without any synchronization. This is incorrect on SMP systems. On some platfroms, intermediate page table addresses may be cached in TLB. On all platforms, a concurrent page table walk on another CPU could access page table contents after the frame has been recycled.

To solve this issue, the function needs to perform TLB shootdown after the empty page table is removed from the tree, but before it is freed.

Change History (1)

comment:1 Changed 2 months ago by Jiří Zárevúcky

Resolution: invalid
Status: newclosed

Nope, I just misunderstood how TLB shootdown works. Ignore this.

Note: See TracTickets for help on using tickets.