ns2: nse: add a uptime/downtime to track the last state change

To show adminstrator the last state change of a nse add a timestamp and
show it on the vty

> show ns nse 1234

NSEI 01234: UDP, ALIVE since 0d 0h 0m 16s
 FSM Instance Name: 'GPRS-NS2-SNS-SGSN(NSE01234-SNS)[0x6120000012a0]', ID: 'NSE01234-SNS'
  Log-Level: 'DEBUG', State: 'CONFIGURED'
  Timer: 4
 Maximum number of remote  NS-VCs: 8, IPv4 Endpoints: 2, IPv6 Endpoints: 0
 [...]

Related: OS#5028
Change-Id: I8143080a3c5c9a55d37dfad44ba2ac6561daa216
diff --git a/src/gb/gprs_ns2_vty.c b/src/gb/gprs_ns2_vty.c
index 52ce207..86471b8 100644
--- a/src/gb/gprs_ns2_vty.c
+++ b/src/gb/gprs_ns2_vty.c
@@ -1900,8 +1900,10 @@
 	if (persistent_only && !nse->persistent)
 		return;
 
-	vty_out(vty, "NSEI %05u: %s, %s%s", nse->nsei, gprs_ns2_lltype_str(nse->ll),
-		nse->alive ? "ALIVE" : "DEAD", VTY_NEWLINE);
+	vty_out(vty, "NSEI %05u: %s, %s since ", nse->nsei, gprs_ns2_lltype_str(nse->ll),
+		nse->alive ? "ALIVE" : "DEAD");
+	vty_out_uptime(vty, &nse->ts_alive_change);
+	vty_out_newline(vty);
 
 	ns2_sns_dump_vty(vty, " ", nse, stats);
 	llist_for_each_entry(nsvc, &nse->nsvc, list) {