Software Maintenance Upgrade package
The Software Maintenance Upgrade (SMU) is a package that can be installed on a system to provide a patch fix or security resolution to a released image for a specific defect in order to respond to immediate issues. It does not contain new features.
-
SMUs are provided on a per release, per component basis and are specific to the platform. SMU versions are synchronized to the package major, minor, and maintenance versions they upgrade.
-
SMUs are not an alternative to maintenance releases; all defects fixed by SMUs are automatically integrated into upcoming maintenance releases.
-
The Cisco IOS XE platform internally validates SMU compatibility and does not allow installation of non-compatible SMUs, based on rules and limitations for a SMU change-set.
-
An SMU allows you to address network issues quickly while reducing the time and scope of required testing compared to classic IOS software.
-
SMU is a method to fix bugs in an existing release and allows the application of a PSIRT fix in an existing release.
-
SMU is NOT an upgrade path from release X to release Y.
Hot Patching in SMU
The device only supports:
-
The running image is modified in-place or in-service.
-
This avoids downtime and interruption of service.
-
The updated code to fix the defect is written in a different location, and the patch redirects the program run.
SMU workflow requirements
The workflow for the patch requires that you complete these sequence of operations in exec mode:
-
Addition of the SMU to the file system.
-
Activation of the SMU onto the system.
-
Committing the SMU change.
-
Removal and uninstallation of the SMU.
The basic requirements for SMU are:
-
The image where the defect was discovered.
-
The patch file that contains the fix for the defect must be formatted as ir8100-image_name.release_version.CSCxxyyyyy.SPA.smu.bin.
Install a patch image
Before you begin
![]() Note |
Use this task as an example of a patch created as a test. Your patch will have a name associated with a CDET to be installed as a fix. |
Use these steps to install the patch image:
Procedure
|
Step 1 |
Use the enable command to enable the router and enter the privileged EXEC mode. Example:
|
|
Step 2 |
Use the show power command to verify the overall power consumption.
|
|
Step 3 |
Use the install add file bootflash:image-file command to add the image.
|
|
Step 4 |
Use the install activate file bootflash:image-file command to activate the patch image.
|
|
Step 5 |
Use the install commit command to commit the installation.
|
|
Step 6 |
Use the show install summary command to display the status summary of the installation.
|
|
Step 7 |
Use the show power command to verify the result of the patch by showing the same command.
|
Uninstall patch image using rollback
Procedure
|
Step 1 |
Use the enable command to enable the router and enter the privileged EXEC mode. Example:
|
||
|
Step 2 |
Use the show install summary command to display the install summary. Example:
|
||
|
Step 3 |
Use the install ? command to view all the available commands. Example:
|
||
|
Step 4 |
Use the install rollback to base command to restore the image to its original version. Example:
|
||
|
Step 5 |
Use the show install summary command to display the installed patches. Example:
|
||
|
Step 6 |
Use the show power command to verify the result of the patch. Example:
|
Uninstall the patch image using deactivate, commit, and remove commands
![]() Note |
In this task there are two patches installed on the devices: CSCvq11111 and CSCvt22222. but only CSCvt22222 will be removed. |
Procedure
|
Step 1 |
Use the show install summary command to display the installation and patch details. Example:
|
|
Step 2 |
Use the install deactivate file bootflash: patch-file command to deactivate the patch.
|
|
Step 3 |
Use the show install summary command to display the installed patches. Example:
|
|
Step 4 |
Use the install commit command to save.
|
|
Step 5 |
Use the show install summary command to display the installed patches. Example:
|
|
Step 6 |
Use the install remove file flash: patch-file command to remove the patch. Example:
Show what patches are installed: |
|
Step 7 |
Use the show install summary command to display the installed patches. Example:
|

Feedback