Patent ID: 8255676

Claim:
A non-disruptive method for updating firmware in a storage subsystem so that said updating is transparent to a host system that sends a host request for data located in said storage subsystem, said method comprising: providing a redundant controller in said storage subsystem, said redundant controller comprising a first controller and a second controller; opening an inter-controller channel inside said redundant controller between said first controller and said second controller for communicating said host request and said data between said first controller and said second controller; receiving a firmware file in said first controller from a management system, said firmware file comprising: metadata describing the content of said firmware file and controller program instructions; routing said host request for data owned by said first controller to said second controller via said inter-controller channel after said receiving said firmware file; processing said host request with said second controller for said data owned by said first controller, which causes said data to be presented to said second controller, after said routing said host request for data owned by said first controller; transferring said data from said second controller to said first controller via said inter-controller channel; presenting said data from said first controller to said host system; and updating said firmware in said first controller according to said firmware file controller program instructions during at least one of said routing, said processing, said transferring, and said presenting processes.