Prosecution Insights
Last updated: April 19, 2026
Application No. 18/597,029

Method and Apparatus for Upgrading Client Software

Non-Final OA §103
Filed
Mar 06, 2024
Examiner
WU, DAXIN
Art Unit
2191
Tech Center
2100 — Computer Architecture & Software
Assignee
Huawei Technologies Co., Ltd.
OA Round
1 (Non-Final)
85%
Grant Probability
Favorable
1-2
OA Rounds
2y 6m
To Grant
99%
With Interview

Examiner Intelligence

Grants 85% — above average
85%
Career Allow Rate
529 granted / 620 resolved
+30.3% vs TC avg
Strong +19% interview lift
Without
With
+18.6%
Interview Lift
resolved cases with interview
Typical timeline
2y 6m
Avg Prosecution
26 currently pending
Career history
646
Total Applications
across all art units

Statute-Specific Performance

§101
14.8%
-25.2% vs TC avg
§103
55.4%
+15.4% vs TC avg
§102
4.9%
-35.1% vs TC avg
§112
13.2%
-26.8% vs TC avg
Black line = Tech Center average estimate • Based on career data from 620 resolved cases

Office Action

§103
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 . DETAILED ACTION This is the initial Office action based on the application filed on March 3, 2024. Claims 1-20 are presently pending in the application have been examined below, of which, claims 1, 6, and 11 are presented in independent form. This application is a continuation of International Application PCT/CN2022/091774, filed on May 9, 2022, which claims priority to Chinese Patent Application No. 202111052072.7, filed on September 8, 2021. In the Preliminary Amendment filed on April 1, 2024, the Specification, claims 1-15 have been amended, and claims 16-20 have been added. Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claims 1, 4, 6, 9, 11, and 14 are rejected under 35 U.S.C. 103 as being unpatentable over US 9,798,534 (hereinafter "Yi”) in view of US 2019/0332308 (hereinafter “Feng”). In the following claim analysis, bold text denotes claim language; bold text with underlines and strikethroughs indicates claim amendments; underlining in Examiner’s claim mappings is used for emphasis; and the Examiner’s detailed interpretations are provided in square brackets. As to claim 1, Yi discloses a method (Yi, Abstract, a method of online storage device firmware upgrades by suspending input/output (I/O) operations) comprising: receiving a first input/output (I/O) instruction to access one or more storage nodes of a storage system (Yi, claim 1, input/output (I/O) operations to the storage device comprising a RAID array upon notification of a firmware upgrade to the storage device); receiving an upgrade instruction for [the firmware] (Yi, claim 1, a RAID array upon notification of a firmware upgrade to the storage device); performing I/O suspension on the received first I/O instruction in response to the upgrade instruction(Yi, claim 1, suspending input/output (I/O) operations to the storage device comprising a RAID array upon notification of a firmware upgrade to the storage device); and upgrading the [firmware] based on the upgrade instruction (Yi, col. 8, ln. 52-56, the disk manager 210 triggers the disk firmware commands to download the target firmware image to the disk, reactivate the disk new firmware). Yi does not appear to explicitly disclose receiving, by a client software, a first input/output (I/O) instruction to access one or more storage nodes of a storage system; an upgrade instruction for the client software; and upgrading the client software. However, in an analogous art to the claimed invention in the field of firmware update, Feng teaches receiving, by a client software, a first input/output (I/O) instruction to access one or more storage nodes of a storage system (Feng, Fig. 5, ¶ 48, Customized MPIO Plugin 506 [client software] operates in part by processing host I/O requests that are received from Host Application 502 and directed by Host Application 502 to Source Volume 408), an upgrade instruction for the client software (Feng, Fig. 8, ¶ 62, an example of steps [upgrade instructions] performed during operation of some embodiments. … by updating the multi-pathing software on each one of the host computers in Cluster 400 to include a copy of Customized MPIO Plugin 506 … The software components that may be updated at step 800 may include a Host Agent 508 and a Customized MPIO Plugin 506 on each host computer. Other software components that maybe updated at step 800 may include), and upgrading the client software (Feng, ¶ 62, The software components that may be updated at step 800 may include a Host Agent 508 and a Customized MPIO Plugin 506 … Other software components that maybe updated at step 800 may include Migration Aware SCSI Semantics Driver 516 and Migration Aware Management Components 520 on Source Storage Array 406). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the teaching of Yi with the teaching of Feng. The modification would be obvious because one of ordinary skill in the art would be motivated to use a customized plugin component, which can be used to update multi-pathing software components in a non-disruptive manner, without interrupting the flow of host I/O requests from applications passing through the multi-pathing software (Feng, ¶ 20). As to claim 4, the rejection of claim 1 is incorporated. Yi as modified further discloses The method of claim 1, further comprising: determining that the client software has completed being upgraded to obtain an upgraded client software (Yi, col. 8, ln. 52-56, With regard to the firmware upgrade step 406, the disk manager 210 triggers the disk firmware commands to download the target firmware image to the disk, reactivate the disk new firmware, and also issue some read I/O requests to the disk to verify that the disk works well); canceling the I/O suspension (Yi, col. 8, ln. 64-66, With regard to the cleanup step 408, this operation could be either resuming the suspended disk if the firmware upgrade is successful); and processing, based on the upgraded client software, the first I/O instruction (Yi, col. 8, ln. 64-66, resuming the suspended [i.e., processing the I/O instruction] disk if the firmware upgrade is successful). As to claims 6 and 9, the claims are computing node claims corresponding to method claims 1 and 4. Therefore, they are rejected under the same rational set forth in the rejections of claims 1 and 4. Further, Yi discloses A computing node (Yi, claim 10); comprising: one or more memories configured to store instructions; and one or more processors configured to execute the instructions (Yi, claim 15) as disclosed in claims 6 and 9. As to claims 11 and 14, the claims are computer program product claims corresponding to method claims 1 and 4. Therefore, they are rejected under the same rational set forth in the rejections of claims 1 and 4. Further, Yi discloses A computer program product comprising computer-executable instructions stored on a non-transitory computer-readable storage medium, wherein the computer- executable instructions when executed by a processor of an apparatus (Yi, claim 15) as disclosed in claims 11 and 14. Claims 2-3, 7-8, 12-13 are rejected under 35 U.S.C. 103 as being unpatentable over US 9,798,534 (hereinafter "Yi”) in view of US 2019/0332308 (hereinafter “Feng”), and further in view of US 2011/0019774 (hereinafter “Furuta”). As to claim 2, the rejection of claim 1 is incorporated. Yi as modified does not appear to explicitly disclose The method of claim 1, further comprising: generating buffered data in response to the first I/O instruction; sending the buffered data to the one or more storage nodes; and performing, in response to the upgrade instruction, the I/O suspension after sending the buffered data. However, in an analogous art to the claimed invention in the field of Electric Digital Data Processing, Furuta teaches The method of claim 1, further comprising: generating buffered data in response to the first I/O instruction (Furuta, ¶ 91, generates a wireless function update program or data by assembling the packet stored in the IP packet buffer 223d); sending the buffered data to the one or more storage nodes (Furuta, ¶ 91, stores the generated wireless function update program or data in the update-program storage buffer 223e); and performing, in response to the upgrade instruction, the I/O suspension after sending the buffered data (Furuta, ¶ 108, When receiving the signal "XOFF", the terminal adaptation function unit 221 makes the transition to the state of "Off Line Command Mode", and outputs a signal "XOFF" to the application function unit 400 (Step S112). Then, the application function unit 400 suspends a process of transferring data). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the teaching of Yi as modified with the teaching of Furuta. The modification would be obvious because one of ordinary skill in the art would be motivated to detect reception of wireless function update information for updating a function of the wireless processing unit when update information for updating any function of the wireless communication apparatus is received, then the wireless processing unit updates the function of the wireless processing unit, if reception of wireless function update information is detected, by performing an update process specified in the wireless function update information without involving the application processing unit (Furuta, Abstract). As to claim 3, the rejection of claim 2 is incorporated. Yi as modified further discloses The method of claim 2, further comprising: receiving a second I/O instruction while sending the buffered data to the one or more storage nodes (Furuta, ¶ 108, generated the wireless function update program or wireless function update data, outputs [while sending the buffered data] a signal "XOFF" for deactivating the wireless function); processing the second I/O instruction in a manner of synchronously accessing the one or more storage nodes (Furuta, ¶ 108, When receiving the signal "XOFF", the terminal adaptation function unit 221 makes the transition [in a manner of synchronously accessing the storage node] to the state of "Off Line Command Mode"). The motivation to combine the references is the same as set forth in the rejection of claim 2. As to claims 7-8, the claims are computing node claims corresponding to method claims 2-3. Therefore, they are rejected under the same rational set forth in the rejections of claims 2-3. As to claims 12-13, the claims are computer program product claims corresponding to method claims 2-3. Therefore, they are rejected under the same rational set forth in the rejections of claims 2-3. Claims 5, 10, and 15-16 are rejected under 35 U.S.C. 103 as being unpatentable over US 9,798,534 (hereinafter "Yi”) in view of US 2019/0332308 (hereinafter “Feng”), and further in view of US 10,353,714 (hereinafter “Gokam”). As to claim 5, the rejection of claim 1 is incorporated. Yi as modified does not appear to explicitly disclose The method of claim 1, wherein upgrading the client software comprises upgrading a core module of the client software. However, in an analogous art to the claimed invention in the field of Electric Digital Data Processing, Gokam teaches The method of claim 1, wherein upgrading the client software comprises upgrading a core module of the client software (Gokam, col. 5, ln. 43-46, during an upgrade operation wherein the core module 140 is unloaded and replaced with a new core module, the instances of the multipath device 132 are maintained). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the teaching of Yi as modified with the teaching of Gokam. The modification would be obvious because one of ordinary skill in the art would be motivated to provide techniques to enable non-disruptive upgrades of multipath device drivers, including a core module and a thin module so that I/O operation requests are routed to the thin module during an upgrade operation of the core module (Gokam, Abstract). As to claim 10, the claim is a computing node claim corresponding to method claim 5. Therefore, it is rejected under the same rational set forth in the rejection of claim 5. As to claim 15, the claim is a computing node claim corresponding to method claim 5. Therefore, it is rejected under the same rational set forth in the rejection of claim 5. As to claim 16, the rejection of claim 15 is incorporated. Yi as modified further discloses The computer program product of claim 15, wherein the computer-executable instructions when executed by the processor of the apparatus, further cause the apparatus to: receive the first I/O instruction at an interface module of the client software (Yi, col. 6, ln. 46-48, The user space 202 includes a firmware update command line interface or interpreter (CLI) 208); and transmit the first I/O instruction to the core module (Gokam, col. 5, ln.9-14, During normal operation, when a given application 115 sends an I/O operation request to the multipath device driver 120, the core multipath device driver module 140 will select an I/O path for the I/O operation request, and send the I/O operation request to the appropriate instance of the storage interface driver 150). The motivation to combine the references is the same as set forth in the rejection of claim 5. Claim 17 is rejected under 35 U.S.C. 103 as being unpatentable over US 9,798,534 (hereinafter "Yi”) in view of US 2019/0332308 (hereinafter “Feng”), in view of US 10,353,714 (hereinafter “Gokam”), and further in view of CN 103793181 (hereinafter “Shu”). As to claim 17, the rejection of claim 16 is incorporated. Yi as modified does not appear to explicitly disclose The computer program product of claim 16, wherein the computer-executable instructions when executed by the processor of the apparatus, further cause the core module to synchronously access storage data in the one or more storage nodes. However, in an analogous art to the claimed invention in the field of Electric Digital Data Processing, Shu teaches The computer program product of claim 16, wherein the computer-executable instructions when executed by the processor of the apparatus, further cause the core module to synchronously access storage data in the one or more storage nodes (Shu, claim 2, a synchronous method of storage, wherein said main module used for processing the external operation of the write request and the read request). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the teaching of Yi as modified with the teaching of Shu. The modification would be obvious because one of ordinary skill in the art would be motivated to synchronize slave module each time with a write operation so as to ensure the data module can be updated in real time, and data consistent with the main module (Shu, ¶ 2). Claim 18 is rejected under 35 U.S.C. 103 as being unpatentable over US 9,798,534 (hereinafter "Yi”) in view of US 2019/0332308 (hereinafter “Feng”), in view of US 10,353,714 (hereinafter “Gokam”), in view of CN 103793181b (hereinafter “Shu”), and further in view of Furuta. As to claim 18, the rejection of claim 17 is incorporated. Yi as modified does not appear to explicitly disclose The computer program product of claim 17, wherein the computer-executable instructions when executed by the processor of the apparatus, further cause a control module of the client software to send the buffered data to the one or more storage nodes. However, in an analogous art to the claimed invention in the field of Electric Digital Data Processing, Furuta teaches The computer program product of claim 17, wherein the computer-executable instructions when executed by the processor of the apparatus, further cause a control module of the client software to send the buffered data to the one or more storage nodes (Furuta, ¶ 91, When detecting that the over-the-air download has started, the over-the-air download analyzing unit 223f [a control module] generates a wireless function update program or data by assembling the packet stored in the IP packet buffer 223d, and stores the generated wireless function update program or data in the update-program storage buffer 223e). The motivation to combine the references is the same as set forth in the rejection of claim 2. As to claim 19, the rejection of claim 17 is incorporated. Yi as modified further discloses The computer program product of claim 18, wherein the computer-executable instructions when executed by the processor of the apparatus, further cause the control module to send, in response to the upgrade instruction, a control command to the interface module to perform I/O suspension on the first I/O instruction (Yi, col. 7, ln. 1-35, The disk manager 210 controls the performance of the online disk firmware upgrade process. … it will interact with software RAID controller to suspend/resume the disk). As to claim 20, the rejection of claim 17 is incorporated. Yi as modified further discloses The computer program product of claim 19, wherein the computer-executable instructions when executed by the processor of the apparatus, further cause the interface module to execute the control command to perform I/O suspension on the first I/O instruction (Yi, Yi, col. 7, ln. 1-35, The disk manager 210 controls the performance of the online disk firmware upgrade process. … it will interact with software RAID controller to suspend/resume the disk; col. 7, ln. 16-25, The software RAID component 212 is instrumental in implanting the online disk firmware upgrade process. It provides an interface to suspend disks to be upgraded one disk at a time from the RAID Array. For a suspended disk, the software RAID component will not send Read/Write I/O requests to the disk). Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. US 2018/0365001 teaches execution of the application program is suspended before update of the firmware of the input apparatus and suspended execution of the application program is resumed after update of the firmware of the input apparatus; and US 2011/0225117 teaches that before a program migration, when the I/O control program 12109 receives an I/O request from the application 21001, the segment migration program 12112 requests that the I/O control program 12109 temporarily suspend write operations to the virtual area to which the migration-source segment is allocated. Contact Information Any inquiry concerning this communication or earlier communications from the examiner should be directed to DAXIN WU whose telephone number is (571) 270-7721. The examiner can normally be reached on M-F (7 am - 11:30 am; 1:30- 5 pm). If attempts to reach the examiner by telephone are unsuccessful, the examiner' s supervisor, Wei Mui can be reached at (571) 272-3708. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of an application may be obtained from Patent Center. Status information for published applications may be obtained from Patent Center. Status information for unpublished applications is available through Patent Center for authorized users only. Should you have questions about access to Patent Center, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). 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) Form at https://www.uspto.gov/patents/uspto-automated- interview-request-air-form. /DAXIN WU/ Primary Examiner, Art Unit 2191
Read full office action

Prosecution Timeline

Mar 06, 2024
Application Filed
Jan 15, 2026
Non-Final Rejection — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12585451
SOFTWARE UPDATES BASED ON TRANSPORT-RELATED ACTIONS
2y 5m to grant Granted Mar 24, 2026
Patent 12578949
DEVICE AND METHOD FOR EXCHANGING A PUBLIC KEY IN THE COURSE OF A FIRMWARE UPDATE FOR LEVEL SENSORS
2y 5m to grant Granted Mar 17, 2026
Patent 12555079
VERSION MAINTENANCE SERVICE FOR ANALYTICS COMPUTING
2y 5m to grant Granted Feb 17, 2026
Patent 12547391
Mobile Application Updates for Analyte Data Receiving Devices
2y 5m to grant Granted Feb 10, 2026
Patent 12547395
MOBILE TERMINAL AND SOFTWARE DISTRIBUTION SYSTEM
2y 5m to grant Granted Feb 10, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

1-2
Expected OA Rounds
85%
Grant Probability
99%
With Interview (+18.6%)
2y 6m
Median Time to Grant
Low
PTA Risk
Based on 620 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month