DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Specification
The disclosure is objected to because of the following informalities: The title of the invention is not descriptive of the invention and is not technically accurate in such a way as to clearly convey what Applicant considers to be the novelty and assist readers in deciding whether there is a need for consulting the full patent text for details.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claim(s) 1-10, 12-16, 19, 21-23 is/are rejected under 35 U.S.C. 102(a1) as being anticipated by
CN115145492 (hereinafter CN492 Relying on the most Relevant portions of the PE2E English Translation).
Regarding claim 1, CN492 discloses a method for managing Redundant Array of Independent Disk (RAID), which is applied to a host connected with an RAID controller [FIG. 13; Abstract: management method under RAID controller], wherein the host comprises an RAID management tool based on a Non-Volatile Memory Express (NVMe) interface [FIG. 9 and 13 and related Description: RAID controller as shown in FIG. 13, the interface with the host follows NVMe protocol], and an NVMe device driver, the RAID controller is connected with an RAID [FIG. 9 and 13 and related Description: RAID management command on the NVMe host interface], and the method for managing RAID comprises: constructing an RAID management command by using the RAID management tool, and encapsulating the RAID management command into a Submission Queue Entry (SQE) format [FIG. 7, 8 and related description shows conversion from a physical disk transmission command SQE to a physical disk command SQE in a method for physical disk management under a RAID controller, sending the physical transmission command SQE to the RAID controller]; and writing encapsulated RAID management command into an Admin Submission Queue (SQ) of the RAID controller by using the NVMe device driver [FIG. 9 and related Description: FIG. 9 shows storage position in the physical disk transmission command SQE in the physical disk management method in the RAID controller], and sending notification information to the RAID controller via a doorbell register, so that the RAID controller executes the RAID management command in the Admin SQ after receiving the notification information [FIG. 7, 8 and related description shows conversion from a physical disk transmission command SQE to a physical disk command SQE in a method for physical disk management under a RAID controller, sending the physical transmission command SQE to the RAID controller].
Regarding claim 2, CN492 discloses the method for managing RAID as claimed in claim 1, further comprising: in response to that the NVMe device driver receives an interrupt notification, reading a command completion queue entry in an Admin Completion Queue (CQ), and returning the command completion queue entry to the RAID management tool, wherein the command completion queue entry is constructed by the RAID controller according to an execution result of the RAID management command [Description: SQE (submission queue entry) submits the queue entry for the command, each entry corresponds to the command of one host to the NVMe device, CQE (completion queue Entry) completes the queue entry for the command, each entry corresponding to the command reported by the NVMe controller finishes the data structure and sends each command to the host].
Regarding claim 3, CN492 discloses the method for managing RAID as claimed in claim 1, wherein constructing the RAID management command by using the RAID management tool comprises: constructing, by using the RAID management tool, the RAID management command comprising a command operation code, a command parameter and a data pointer, wherein the RAID controller is used for storing data to be returned, which is obtained after the RAID management command is executed, in an address space to which the data pointer points [Description: in the transmitted command in the data transmission stage according to the NVMe standard structure PRP data structure and filling the DW6 and DW9 field of the physical disk transmission command SQE, SQE submts the queue entry for the command, each entry corresponds to the command of one host to the NVMe device,each entry corresponding to the command reported by the NVMe controller finishes the data structure].
Regarding claim 4, the rationale in the rejection of claim 1 is herein incorporated.
Regarding claim 5, CN492 discloses the method for managing RAID as claimed in claim 4, wherein after executing the operation corresponding to the RAID management command on the RAID, the method further comprises: constructing a command completion queue entry according to an execution result of the RAID management command [FIG. 7, 8 and related description shows conversion from a physical disk transmission command SQE to a physical disk command SQE in a method for physical disk management under a RAID controller, sending the physical transmission command SQE to the RAID controller]; and writing the command completion queue entry into an Admin Completion Queue (CQ) of the host, and sending an interrupt notification to the NVMe device driver, so that the NVMe device driver reads the command completion queue entry in the Admin CQ and returns the command completion queue entry to the RAID management tool [Description: SQE (submission queue entry) submits the queue entry for the command, each entry corresponds to the command of one host to the NVMe device, CQE (completion queue Entry) completes the queue entry for the command, each entry corresponding to the command reported by the NVMe controller finishes the data structure and sends each command to the host].
Regarding claim 6, CN492 discloses the method for managing RAID as claimed in claim 4, wherein in- response to that the RAID management command comprises: an RAID controller discovery command; executing the operation corresponding to the RAID management command comprises: parsing the RAID controller discovery command to obtain a first data pointer [Description: Data Pointer: if the physical disc executes the command process, the data to be sent to the physical disc from the host, the pointer pointing to a section of buffer area of the host memory area for storing data]; and summarizing characteristic data of the RAID controller, and returning the characteristic data of the RAID controller to an address space to which the first data pointer points, wherein the characteristic data of the RAID controller comprises any one or a combination of any more of a ready state, a firmware version number, a serial number, a supported RAID level list, a physical disk number list supported by each RAID level, a supported RAID data arrangement mode list, a supported RAID level migration type list, a supported physical disk type list, supported data Cache characteristics, a supported power down protection feature, and a state of a standby power supply; and the data Cache characteristics comprise at least one of the following: a Cache capacity and/or a Cache policy type [Claim 10].
Regarding claim 7, CN492 discloses the method for managing RAID as claimed in claim 4, wherein in- response to that the RAID management command comprises: a physical disk discovery commands- executing the operation corresponding to the RAID management command comprises: parsing the physical disk discovery command to obtain a second data pointer [Claim 2]; acquiring a physical disk list data structure of all physical disks in the RAID, and returning the physical disk list data structure to an address space to which the second data pointer points, wherein the physical disk list data structure comprises an identifier of each physical disk [Claim 1]; or, determining a target physical disk corresponding to the physical disk discovery command, and returning physical disk information of the target physical disk to the address space to which the second data pointer points, wherein the physical disk information comprises any one or a combination of any more of an identifier of the target physical disk, a state of the physical disk, a type of the physical disk, a size of a logical block supported by the physical disk, a capacity of the physical disk, and topological information of the physical disk [Claim 10].
Regarding claim 8, CN492 discloses the method for managing RAID as claimed in claim 4, wherein in- response to that the RAID management command comprises: an RAID group discovery command, executing the operation corresponding to the RAID management command comprises: parsing the RAID group discovery command to obtain a third data pointer [Claim 4]; acquiring an RAID group list data structure of all RAID groups in the RAID, and returning the RAID group list data structure to an address space to which the third data pointer points, wherein the RAID group list data structure comprises an identifier of each RAID group [Claim 1]; or, determining a target RAID group corresponding to the RAID group discovery command, and returning RAID group information of the target RAID group to the address space to which the third data pointer points, wherein the RAID group information comprises any one or a combination of any more of an identifier of the target RAID group, a state of the RAID group, a level of the RAID group, a size of a logical block supported by the RAID group, a capacity of the RAID group, Cache attributes of the RAID group, a state and progress of a background task of the RAID group, and a physical disk list and state of the RAID group [Claim 10 ].
Regarding claim 9, CN492 discloses the method for managing RAID as claimed in claim 4, wherein in- response to that the RAID management command comprises: a logical volume discovery command [FIG. 13];executing the operation corresponding to the RAID management command comprises: parsing the logical volume discovery command to obtain a fourth data pointer and an identifier of an RAID group to be queried [Claim 4]; and according to the identifier of the RAID group to be queried, returning logical volume information of the RAID group to be queried to an address space to which the fourth data pointer points, wherein the logical volume information comprises any one or a combination of any more of an identifier of a logical volume, a capacity of the logical volume, a state of the logical volume, and an identifier of an NVM namespace bound to the logical volume [Claim 1].
Regarding claim 10, CN492 discloses the invention as claimed in claim 10 and the rationale in the rejection of claims 5-8 is herein incorporated.
Regarding claim 12, CN492 discloses the method for managing RAID as claimed in claim 4, wherein in- response to that the RAID management command comprises: a namespace IO read-write command [Claim 10]; executing the operation corresponding to the RAID management command comprises: determining a target namespace corresponding to the namespace IO read-write command, and determining a target logical volume bound to the target namespace; converting an operation parameter of the target namespace in the namespace IO read-write command into an operation parameter of the target logical volume, wherein the operation parameter comprises addresses of logical blocks and a number of logical blocks [Claim 10]; and executing an IO read-write operation on the target logical volume according to the operation parameter of the target logical volume [Claim 10, Abstract].
Regarding claim 13, CN492 discloses the method for managing RAID as claimed in claim 4, wherein in- response to that the RAID management command comprises: an asynchronous event reporting command [Claim 2]; executing the operation corresponding to the RAID management command comprises: detecting an RAID management event, and determining an event type corresponding to the RAID management event [Claim 3]; and reporting, to the host, a state code corresponding to the event type, so that the host acquires related data of the RAID management event from the RAID controller [Abstract, Claim 4].
Regarding claim 14, CN492 discloses the method for managing RAID as claimed in claim 4, wherein the RAID management command comprises a discovery class command, a disk management class command, and a task management class command [Abstract].
Regarding claim 15, CN492 discloses the method for managing RAID as claimed in claim 14, wherein the discovery class command comprises an RAID controller discovery command, a physical disk discovery command, an RAID group discovery command, and a logical volume discovery command; the disk management class command comprises an RAID group creation and deletion command, a logical volume creation and deletion command, and a command for binding and unbinding a logical volume and a namespace; and the task management class command comprises a start and stop command of a background task, and a parameter configuration command [Claim 1; Abstract].
Regarding claim 16, CN492 discloses the method for managing RAID as claimed in claim 5, wherein the Admin CQ is used for an NVMe controller to report command completion to the host, each command completion queue entry in the Admin CQ corresponds to a command completion data structure reported by one NVMe controller [Abstract].
17.-18. (Cancelled)
Regarding claim 19, CN492 discloses the invention as claimed in claim 19 and the rationale in the rejection of claim 1 is herein incorporated.
20. (Cancelled)
Regarding claim 21, CN492 discloses the method for managing RAID as claimed in claim 1, wherein the host send the NVMe RAID management command to the RAID controller via an NVMe host interface [Abstract].
Regarding claim 22, CN492 discloses the method for managing RAID as claimed in claim 4, wherein the host send the NVMe RAID management command to the RAID controller via an NVMe host interface [Abstract].
Regarding claim 23, CN492 discloses the electronic device as claimed in claim 19, wherein the processor is further configured to:in response to that the NVMe device driver receives an interrupt notification, read a command completion queue entry in an Admin Completion Queue (CQ), and return the command completion queue entry to the RAID management tool, wherein the command completion queue entry is constructed by the RAID controller according to an execution result of the RAID management command [Abstract; Claim 10].
Allowable Subject Matter
Claim 11 is objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Rajadnya (US10,007,443) discloses host to device I/O flow wherein functions are exposed via a shared communication interface and for each function a corresponding submission queue.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MARDOCHEE CHERY whose telephone number is (571)272-4246. The examiner can normally be reached 900-500.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Rocio del Mar Perez-Velez can be reached at (571) 270-5935. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/MARDOCHEE CHERY/Primary Examiner, Art Unit 2133