Warm reload

The Warm Reload functionality introduced in IOS release 12.3(2)T significantly reduces the reload time. In my test lab, the reload time of a Cisco 2800 router booting from flash was reduced from 135 to 54 seconds as measured by the %SYS-6-BOOTTIME: Time taken to reboot after reload ... syslog message.

The theory behind warm reload is simple: the router saves initial data (as stored in IOS image) in a separate memory region and reuses saved data together with IOS code already residing in RAM to restart IOS. Of course, the IOS code (depending on platform's memory management capabilities) or saved data could get corrupted, therefore the warm reload cannot be used continuously (and the router falls back to traditional reload if the router crashes before a specified time interval).

Warm reload is configured with the warm-reboot count number uptime minutes configuration commands. After it has been configured, a router reload (or power-up) is needed to initialize the saved data region. When the warm reboot is operational (as verified with the show warm-reboot command), you can use reload warm command to start it. The output of the show warm-reboot command displays all the relevant setup parameters as well as the amount of memory used by this feature:
a2#show warm-reboot
Warm Reboot is enabled
Maximum warm reboot count is 5
Uptime after which warm reboot is safe in case of a crash is 2 (min)


0 warm reboots due to crashes and 0 warm reboots due to requests
have taken place since the last cold reboot
2823 KB taken up by warm reboot storage
The saved data region is also displayed with the show region command:
a2#show region
Region Manager:

Start End Size(b) Class Media Name
0x0F400000 0x0FFFFFFF 12582912 Iomem R/W iomem:(uncached_iomem_region)
0x3F400000 0x3FFFFFFF 12582912 Iomem R/W iomem
0x40000000 0x4F3FFFFF 255852544 Local R/W main
0x4000F000 0x431DFFFF 52236288 IText R/O main:text
0x431E0000 0x45F8C25F 47891040 IData R/W main:data
0x45F8C260 0x465FFA5F 6764544 IBss R/W main:bss
0x465FFA60 0x468C19AF 2891600 Local R/W main:saved-data
0x468C19B0 0x4F3FFFFF 146007632 Local R/W main:heap
0x80000000 0x8F3FFFFF 255852544 Local R/W main:(main_k0)
0xA0000000 0xAF3FFFFF 255852544 Local R/W main:(main_k1)


  1. I get mine down from 155 seconds to 43 seconds:

    *Jun 12 16:29:46.679: %SYS-6-BOOTTIME: Time taken to reboot after reload = 155 seconds

    after 'reload warm' command:

    *Jun 12 16:30:56.587: %SYS-6-BOOTTIME: Time taken to reboot after reload = 43 seconds

    BTW, You should also take a look @ a feature introduced in 12.4(15)T called IOS Auto-Upgrade Manager (aka ida)

Add comment