Advanced Communications Controller B.03.32.00 Release Notes

Advanced Communications Controller B.03.32.00 Release Notes
Patches and Fixes for this Version
Chapter 1 19
JAGae00972
Symptoms: ACC X.25 IP/X25 no longer works after the second x25init.
Defect/Fix: If multiple X.25 links are used concurrently on a system, then the following
symptoms happen:
—'IP over x25' works with the 'x25init -c config_file -a ip_to_x121_map'
command, if it was issued before ‘sx25d process' startup.
If we restart the x.25 link with the same command while sx25d is still running, then
'IP over X25' does not work while all the svc and pvc operations for the link work
normally.
If we stop all the x.25 links via x25stop -K or x25stop -d individually, which causes
sx25d process stop, and then with the above x25init command, IP over X.25 works.
In N2z_stop_link processing, we scan through all the VC structures and cleanup all that
are not in idle state. In this process, we check to see if there is any stream associated with
the VC. If so, stype of stream context was set as N2Z_ERROR_STRM for the duration till
the x25 upper layers release the previous connection established by ping. So, when
x25init is done for the second time within this duration, x25init path identifies that VC
stream context type as ERROR stream and ping doesn’t go through. The fix is to change
the N2Z_ERROR_STRM to N2Z_UNKNOWN_STRM, so that the ping will go through.
JAGad97577
Symptoms: When there is a lot of opening and closing of X.25 sockets and the ACC kernel
limit n2z_max_devs is reached, X.25 socket creation with a socket() call returns invalid
errno 65535(-1).
The following message is logged in nettl log:
Network NS_LS_N2Z Error 2001, pid 486745
N2Z: Too many streams used! Increase the size of the kernel tunable
n2z_max_devs in /stand/system and rebuild your kernel.
Defect/Fix: This problem has been noticed with PVCs and while detaching the PVC in
N2Z_F_pvc_detach_up() routine, the VC Stream q_ptr field was made NULL. However
in VC Stream close routine N2Z_F0_close(), if q_ptr is NULL, then the further closing
and clean-up of the VC stream was not complete, and hence VC Streams were not
returned to the free pool. This caused the driver to run out of available VC Streams and
the socket() call returns errno. 65535 after the kernel n2z_max_devs is reached.