Atomic write command support in a solid state drive
US-9218279-B2 · Dec 22, 2015 · US
US10289563B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10289563-B2 |
| Application number | US-201715407368-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 17, 2017 |
| Priority date | Apr 14, 2014 |
| Publication date | May 14, 2019 |
| Grant date | May 14, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
For efficient reclamation of pre-allocated direct memory access (DMA) memory in a computing environment, hot-add random access memory (RAM) is emulated for a general purpose use by reclamation of pre-allocated DMA memory reserved at boot time by notifying a non-kernel use device user that the non-kernel use device has a smaller window, stopping and remapping to the smaller window, and notifying a kernel that new memory has been added, wherein the new memory is a region left after the remap. The hot-add RAM is split into at least two continuous parts.
Opening claim text (preview).
What is claimed is: 1. A method for efficient reclamation of pre-allocated direct memory access (DMA) memory using a processor device in a computing environment, the method comprising: emulating a hot-add RAM for a general purpose use by reclamation of pre-allocated DMA memory reserved at boot time by: notifying a non-kernel use device user that the non-kernel use device has a smaller window; stopping an application requiring the non-kernel use device; stopping hardware operations of the non-kernel use device by a device driver; splitting the hot-add RAM into at least two continuous parts; remapping the hot-add RAM to the smaller window; and notifying a kernel that new memory has been added, wherein the new memory is a region left after the remap. 2. The method of claim 1 , further including unmapping a buffer from a kernel virtual mapping system. 3. The method of claim 1 , further including remapping at least one of the two continuous parts of the hot-add RAM for use by DMA memory of the non-kernel use device, wherein the new memory is at least one of the two continuous parts. 4. The method of claim 3 , further including signaling the kernel of the addition of the hot-add RAM. 5. The method of claim 4 , further including performing at least one of: scanning the at least one of the two continuous parts of the hot-add RAM by the kernel, perceiving that the least one of the two continuous parts of the hot-add RAM is newly added, and adding the least one of the two continuous parts of the hot-add RAM to a pool of general purpose memory. 6. The method of claim 5 , further including configuring the non-kernel use device with the buffer of the least one of the two continuous parts of the hot-add RAM. 7. A system for efficient reclamation of pre-allocated direct memory access (DMA) memory in a computing environment, the system comprising: at least one processor device operable in the computing environment, wherein the at least one processor device: emulates a hot-add RAM for a general purpose use by reclamation of pre-allocated DMA memory reserved at boot time by: notifying a non-kernel use device user that the non-kernel use device has a smaller window; stopping an application requiring the non-kernel use device; stopping hardware operations of the non-kernel use device by a device driver; splitting the hot-add RAM into at least two continuous parts; remapping the hot-add RAM to the smaller window; and notifying a kernel that new memory has been added, wherein the new memory is a region left after the remap. 8. The system of claim 7 , wherein the at least one processor device unmaps a buffer from a kernel virtual mapping system. 9. The system of claim 7 , wherein the at least one processor device remaps at least one of the two continuous parts of the hot-add RAM for use by DMA memory of the non-kernel use device, wherein the new memory is at least one of the two continuous parts. 10. The system of claim 9 , wherein the at least one processor device signals the kernel of the addition of the hot-add RAM. 11. The system of claim 10 , wherein the at least one processor device performs at least one of: scanning the at least one of the two continuous parts of the hot-add RAM by the kernel, perceiving that the least one of the two continuous parts of the hot-add RAM is newly added, and adding the least one of the two continuous parts of the hot-add RAM to a pool of general purpose memory. 12. The system of claim 11 , wherein the at least one processor device configuring the non-kernel use device with the buffer of the least one of the two continuous parts of the hot-add RAM. 13. A computer program product for efficient reclamation of pre-allocated direct memory access (DMA) memory using a processor device, the computer program product comprising a non-transitory computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising: an executable portion that emulates a hot-add random access memory (RAM) for a general purpose use by reclamation of pre-allocated DMA memory reserved at boot time by: notifying a non-kernel use device user that the non-kernel use device has a smaller window; stopping an application requiring the non-kernel use device; stopping hardware operations of the non-kernel use device by a device driver; splitting the hot-add RAM into at least two continuous parts; remapping the hot-add RAM to the smaller window; and notifying a kernel that new memory has been added, wherein the new memory is a region left after the remap. 14. The computer program product of claim 13 , further including an executable portion that unmaps a buffer from a kernel virtual mapping system. 15. The computer program product of claim 13 , further including an executable portion that remaps at least one of the two continuous parts of the hot-add RAM for use by DMA memory of the non-kernel use device, wherein the new memory is at least one of the two continuous parts. 16. The computer program product of claim 15 , further including an executable portion that signals the kernel of the addition of the hot-add RAM. 17. The computer program product of claim 16 , further including an executable portion that performs at least one of: scanning the at least one of the two continuous parts of the hot-add RAM by the kernel, perceiving that the least one of the two continuous parts of the hot-add RAM is newly added, and adding the least one of the two continuous parts of the hot-add RAM to a pool of general purpose memory. 18. The computer program product of claim 17 , further including an executable portion that configures the non-kernel use device with the buffer of the least one of the two continuous parts of the hot-add RAM.
for peripheral access to main memory, e.g. direct memory access [DMA] · CPC title
Plurality of storage devices · CPC title
Bootstrapping (security arrangements therefor G06F21/57) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.