US 12,242,428 B2
Freeing pages within persistent memory
Rupa Natarajan, Sunnyvale, CA (US); and Ananthan Subramanian, San Ramon, CA (US)
Assigned to NetApp, Inc., San Jose, CA (US)
Filed by NetApp Inc., San Jose, CA (US)
Filed on Nov. 20, 2023, as Appl. No. 18/514,529.
Application 18/514,529 is a continuation of application No. 17/958,497, filed on Oct. 3, 2022, granted, now 11,822,520.
Application 17/958,497 is a continuation of application No. 16/852,584, filed on Apr. 20, 2020, granted, now 11,461,281, issued on Oct. 4, 2022.
Prior Publication US 2024/0086374 A1, Mar. 14, 2024
Int. Cl. G06F 16/00 (2019.01); G06F 16/16 (2019.01); G06F 16/18 (2019.01); G06F 16/22 (2019.01)
CPC G06F 16/1805 (2019.01) [G06F 16/162 (2019.01); G06F 16/2246 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A computing device comprising:
a persistent memory file system;
a persistent memory into which the persistent memory file system stores data according to a byte-addressable format;
a frontend process that processes client operations directed to the data stored within the persistent memory, wherein the frontend process utilizes an application programming interface to:
insert, into a log, page block numbers of pages within the persistent memory based upon the pages storing data targeted by a delete operation, wherein the page block numbers are inserted into the log while the pages store the data to be deleted by the delete operation; and
in response to inserting the page block numbers into the log and before the pages have been freed from the persistent memory, transmit a response to a client that the delete operation was successfully performed, wherein the response is transmitted while the pages still store the data to be deleted by the delete operation; and
a backend worker that utilizes the log to determine whether to retain or free the pages from the persistent memory.