G06F12/0882

Security for address translation services

A processor receives, from a requestor, a first request containing a virtual address. Based on the first request, the processor determines a real address corresponding to the virtual address, encrypts at least a portion of the real address to obtain a cryptographic secure real address, and returns the cryptographic secure real address to the requestor. Based on receiving a second request specifying a request address, the processor decrypts the request address to validate the request address as the cryptographic secure real address. Based on validating the request address as the cryptographic secure real address, the processor allows access to a resource of the data processing system identified by the real address.

Security for address translation services

A processor receives, from a requestor, a first request containing a virtual address. Based on the first request, the processor determines a real address corresponding to the virtual address, encrypts at least a portion of the real address to obtain a cryptographic secure real address, and returns the cryptographic secure real address to the requestor. Based on receiving a second request specifying a request address, the processor decrypts the request address to validate the request address as the cryptographic secure real address. Based on validating the request address as the cryptographic secure real address, the processor allows access to a resource of the data processing system identified by the real address.

Optimizing garbage collection that uses a logical-to-physical table search
11556467 · 2023-01-17 · ·

A method is described that includes determining, by a memory subsystem, that a garbage collection process is to be performed on a memory device and selecting a first candidate block stripe for folding into a first target block stripe in response to determining that the garbage collection process is to be performed. The method further includes determining, by the memory subsystem, that a physical-to-logical table stored in the first candidate block stripe is unavailable; reducing a write command rate, which controls a rate at which writes are fulfilled by the memory subsystem, in response to determining that the physical-to-logical table stored in the first candidate block stripe is unavailable; and performing folding of the first candidate block stripe into the first target block stripe using a logical-to-physical table.

Optimizing garbage collection that uses a logical-to-physical table search
11556467 · 2023-01-17 · ·

A method is described that includes determining, by a memory subsystem, that a garbage collection process is to be performed on a memory device and selecting a first candidate block stripe for folding into a first target block stripe in response to determining that the garbage collection process is to be performed. The method further includes determining, by the memory subsystem, that a physical-to-logical table stored in the first candidate block stripe is unavailable; reducing a write command rate, which controls a rate at which writes are fulfilled by the memory subsystem, in response to determining that the physical-to-logical table stored in the first candidate block stripe is unavailable; and performing folding of the first candidate block stripe into the first target block stripe using a logical-to-physical table.

METHOD OF EFFICIENTLY RECEIVING FILES OVER A NETWORK WITH A RECEIVE FILE COMMAND

The method of some embodiments receives a file from a server. The method is implemented at a client machine. The method creates a page fragment cache, including multiple page fragments, for receiving file data from the server. The method allocates page fragments from the page fragment cache to a dedicated receiving (RX) ring. The method sends a request file packet over a TCP connection to the server. The method receives multiple data packets, each data packet including a header and file data. The method stores the file data for the multiple data packets sequentially in the page fragment cache.

METHOD OF EFFICIENTLY RECEIVING FILES OVER A NETWORK WITH A RECEIVE FILE COMMAND

The method of some embodiments receives a file from a server. The method is implemented at a client machine. The method creates a page fragment cache, including multiple page fragments, for receiving file data from the server. The method allocates page fragments from the page fragment cache to a dedicated receiving (RX) ring. The method sends a request file packet over a TCP connection to the server. The method receives multiple data packets, each data packet including a header and file data. The method stores the file data for the multiple data packets sequentially in the page fragment cache.

REINFORCING HIGH AVAILABILITY OF DISTRIBUTED RELATIONAL DATABASES
20230222070 · 2023-07-13 ·

Systems and methods for high availability distributed data storage are provided. In embodiments, a method includes: receiving, by a remote direct memory access (RDMA) switch operatively coupled to a computing device, a request to access a page of a database; determining, by the RDMA switch, a validation state of the page; determining, by the RDMA switch, a status of the page; updating, by the RDMA switch, the status of the page based on the validation state and the request; and reporting, by the RDMA switch, the validation state.

REINFORCING HIGH AVAILABILITY OF DISTRIBUTED RELATIONAL DATABASES
20230222070 · 2023-07-13 ·

Systems and methods for high availability distributed data storage are provided. In embodiments, a method includes: receiving, by a remote direct memory access (RDMA) switch operatively coupled to a computing device, a request to access a page of a database; determining, by the RDMA switch, a validation state of the page; determining, by the RDMA switch, a status of the page; updating, by the RDMA switch, the status of the page based on the validation state and the request; and reporting, by the RDMA switch, the validation state.

Selective sampling of a data unit during a program erase cycle based on error rate change patterns

A processing device, operatively coupled with the memory device, is configured to determine a first error rate associated a first set of pages of a plurality of pages of a data unit of a memory device, and a second error rate associated with a second set of pages of the plurality of pages of the data unit, determine a first pattern of error rate change for the data unit based on the first error rate and the second error rate, and responsive to determining that the first pattern of error rate change corresponds to a predetermined second pattern of error rate change, perform an action pertaining to defect remediation with respect to the data unit.

Selective sampling of a data unit during a program erase cycle based on error rate change patterns

A processing device, operatively coupled with the memory device, is configured to determine a first error rate associated a first set of pages of a plurality of pages of a data unit of a memory device, and a second error rate associated with a second set of pages of the plurality of pages of the data unit, determine a first pattern of error rate change for the data unit based on the first error rate and the second error rate, and responsive to determining that the first pattern of error rate change corresponds to a predetermined second pattern of error rate change, perform an action pertaining to defect remediation with respect to the data unit.