Overview
The Exinda will encounter an error that can cause the device to crash and reboot.
When looking at Exinda appliances that have edge cache enabled, the following message (or something similar) can be seen in the logs just before the device ends up rebooting:
[798377.721975] [<ffffffffa01f5dd9>] find_listener_socket+0x1a9/0x4b0 [ex_tproxy]
Root Cause
The issue happens when squid enters interrupt context at find_listener_socket in en_tproxy_core. An exception happens, which causes the CPU core to hang. This causes a kernel panic - that is, the device will record pertinent information from the kernel and then restart to clear out the error.
Engineers are currently looking at the root cause of this.
Workaround
The most effective workaround for the time being to prevent unwanted reboots is to stop the edge cache process. However, there is also another workaround that Exinda TAC can apply. In order to investigate this workaround and determine if the application is correct, please contact Exinda TAC for assistance.
Resolution
Engineering team is working on this issue.
Defect ID
D-06520
Internal Notes
There is an internal fix created by Ming which stops or resolves the Kernel Panic portion of the problem. This does not fix the underlying squid crashes - even after applying this, squid will still crash, but it will not cause the device to reboot. The fix involves replacing the ex_tproxy.ko module file on the appliance. This fix also requires a reboot of the device.
This works only in 7.4.3 and 7.4.4 (0069) and (0076) ; do not apply it to any other versions as this was developed using the latest kernel we use. We do not know the effects of applying it to anything other than these versions.
The replacement file is located on both the NAS and Securesync.
\\nas-01\tac\ex_tproxy Fix
SecureSync\Shared Documents - Support\ex_tproxy fix
Instructions for Installation
1. Install a restricted command license
2. Go into the shell of the device.
3. Change the directory to the ex_tproxy directory
- cd /lib/modules/3.10.72-72EXINDAsmp/extra/ex_tproxy
4. Copy the original file to a backup file
- remountrw
- cp ./ex_tproxy.ko ./ex_tproxy.ko.orig
5. Use SFTP, scp, etc in order to get the new ex_tproxy.ko file onto the Exinda somewhere (such as in the root directory)
6. Copy the new file into the original place
- cd [directory_where_new_file_was_placed]
- cp ex_tproxy.ko /lib/modules/3.10.72-72EXINDAsmp/extra/ex_tproxy/
7. Reboot the device.