﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
393	absentee_listener_ has a temp_segment leak	Gary Dixon	Eric Swenson	"While developing an exec_com to test dump_segment and ring_zero_dump,
I checked on status of temporary segments in my process directory.
My current stack shows only an interrupted emacs editing session.

{{{
ts -bf
quit condition:
234|13340   pl1_signal_$pl1_signal_from_ops_|776 (bound_library_1_|13712)
234|12320   lisp_fault_handler_$ioc|1265 (bound_lisp_intrprtr_|17521)
234|12240   lisp_subr_tv_$..lisp..|2652 (bound_lisp_intrprtr_|2652)
234|11760   lisp|1076 (bound_lisp_intrprtr_|35014)
234|11460   lisp$lisp|244 (bound_lisp_intrprtr_|34162)
234|11360   forward_command_|70 (bound_multics_emacs_|136514)
234|10260   emacs$emacs|2401 (bound_multics_emacs_|141121)
234|10140   emacs_tv_$emacs|37 (bound_emacs_full_|37)
234|5340    command_processor_$read_list|10312 (bound_multics_bce_|10312)
234|4360    command_processor_$complex_command_processor|2543 (bound_multics_bce_|2543)
234|3420    command_processor_$command_processor_|1227 (bound_multics_bce_|1227)
234|2700    abbrev$abbrev_processor|6105 (bound_command_loop_|14103)
234|2400    listen_$listen_|554 (bound_command_loop_|34522)
234|2000    initialize_process_$initialize_process_|704 (bound_process_init_|704)
}}}

However, past usage in my process shows 57 temp segments in existence, and only 6 are free.  The majority of them were claimed by ec_input_ operations.


{{{
list_temp_segments

          57 Segments,  6 Free

!BBBKbcHFWxfwjm.temp.0305  command_processor_
!BBBKbcHFXHQmDB.temp.0362  emacs
!BBBKbcHFXHWDLw.temp.0363  emacs
!BBBKbcHFXQKWkm.temp.0433  emacs
!BBBKbcHFXQKdqf.temp.0434  emacs
!BBBKbcHFXQQQJQ.temp.0440  emacs
!BBBKbcHFcglBfc.temp.0446  command_processor_
!BBBKbcHFcgzxdl.temp.0454  command_processor_
!BBBKbcHFchBGJp.temp.0455  command_processor_
!BBBKbcHFlpHmpB.temp.0457  ec_input_ (area)
!BBBKbcHKLmmBGD.temp.0477  ec_input_ (area)
!BBBKbcHKPddDbh.temp.0500  ec_input_ (area)
!BBBKbcHKXgkmXL.temp.0501  ec_input_ (area)
!BBBKbcHKhNnXgh.temp.0502  ec_input_ (area)
!BBBKbcHKjQFcQd.temp.0503  ec_input_ (area)
!BBBKbcHKmpMGcn.temp.0504  ec_input_ (area)
!BBBKbcHKwWbkBW.temp.0505  ec_input_ (area)
!BBBKbcHLHNqJkP.temp.0506  ec_input_ (area)
!BBBKbcHLHPLQnn.temp.0507  ec_input_ (area)
!BBBKbcHLHPLckF.temp.0510  ec_input_ (area)
!BBBKbcHLKqFlCh.temp.0511  ec_input_ (area)
!BBBKbcHLPCJbqp.temp.0512  ec_input_ (area)
!BBBKbcHLgXlKfK.temp.0565  ec_input_ (area)
!BBBKbcHLqdwQNd.temp.0566  ec_input_ (area)
!BBBKbcHLqfNBMP.temp.0570  ec_input_ (area)
!BBBKbcHMLDggcb.temp.0571  ec_input_ (area)
!BBBKbcHMcGgMgg.temp.0572  ec_input_ (area)
!BBBKbcHNQMKqkQ.temp.0573  ec_input_ (area)
!BBBKbcHNZhbKXd.temp.0574  ec_input_ (area)
!BBBKbcHNZhgHjJ.temp.0575  ec_input_ (area)
!BBBKbcHNbzlfqj.temp.0576  ec_input_ (area)
!BBBKbcHNbzqQFd.temp.0577  ec_input_ (area)
!BBBKbcHNhfZpxl.temp.0600  ec_input_ (area)
!BBBKbcHNhffjCx.temp.0601  ec_input_ (area)
!BBBKbcHNlznBFG.temp.0602  ec_input_ (area)
!BBBKbcHNlzwpKn.temp.0603  ec_input_ (area)
!BBBKbcHNpCHmNb.temp.0604  ec_input_ (area)
!BBBKbcHNpCPGCl.temp.0605  ec_input_ (area)
!BBBKbcHPGWJCbh.temp.0606  ec_input_ (area)
!BBBKbcHPGWNCQW.temp.0607  ec_input_ (area)
!BBBKbcHPJJFzxB.temp.0610  ec_input_ (area)
!BBBKbcHPJJKzpG.temp.0611  ec_input_ (area)
!BBBKbcHPMbmlQf.temp.0612  ec_input_ (area)
!BBBKbcHPMbwqnn.temp.0613  ec_input_ (area)
!BBBKbcHPPNqQCD.temp.0614  ec_input_ (area)
!BBBKbcHPPPBWHh.temp.0615  ec_input_ (area)
!BBBKbcHPccZcpJ.temp.0616  ec_input_ (area)
!BBBKbcHPccflDz.temp.0617  ring_zero_dump.1 (ring_zero_dump
!BBBKbcHQBdpnJK.temp.0624  ring_zero_dump.1 (ring_zero_dump
!BBBKbcHQgKCwQD.temp.0626  emacs
!BBBKbcHWnjHwKP.temp.0625  ring_zero_dump.1 (ring_zero_dump

ls [pd]>*.temp.* -records -dtem

Segments = 59, Records = 70.

06/21/26 10:47    1  !BBBKbcHFWxfwjm.temp.0305
06/21/26 10:47    1  !BBBKbcHFWzDFBB.temp.mail_system
06/21/26 10:47    3  !BBBKbcHFWzDZJW.temp.mail_system
06/21/26 10:47    1  !BBBKbcHFXHQmDB.temp.0362
06/21/26 10:47    1  !BBBKbcHFXHWDLw.temp.0363
06/21/26 10:47    1  !BBBKbcHFXQKWkm.temp.0433
06/21/26 10:47    1  !BBBKbcHFXQKdqf.temp.0434
06/21/26 10:47    2  !BBBKbcHFXQQQJQ.temp.0440
06/21/26 10:49    1  !BBBKbcHFcglBfc.temp.0446
06/21/26 10:49    1  !BBBKbcHFcgzxdl.temp.0454
06/21/26 10:49    1  !BBBKbcHFchBGJp.temp.0455
06/21/26 11:56    1  !BBBKbcHFlpHmpB.temp.0457
06/21/26 11:57    1  !BBBKbcHKLmmBGD.temp.0477
06/21/26 11:59    1  !BBBKbcHKPddDbh.temp.0500
06/21/26 12:03    1  !BBBKbcHKXgkmXL.temp.0501
06/21/26 12:03    1  !BBBKbcHKhNnXgh.temp.0502
06/21/26 12:05    1  !BBBKbcHKjQFcQd.temp.0503
06/21/26 12:07    1  !BBBKbcHKmpMGcn.temp.0504
06/21/26 12:12    1  !BBBKbcHKwWbkBW.temp.0505
06/21/26 12:13    1  !BBBKbcHLHNqJkP.temp.0506
06/21/26 12:15    1  !BBBKbcHLHPLQnn.temp.0507
06/21/26 12:20    1  !BBBKbcHLHPLckF.temp.0510
06/21/26 12:21    1  !BBBKbcHLKqFlCh.temp.0511
06/21/26 12:23    1  !BBBKbcHLPCJbqp.temp.0512
06/21/26 12:25    1  !BBBKbcHLgXlKfK.temp.0565
06/21/26 12:31    1  !BBBKbcHLqdwQNd.temp.0566
06/21/26 12:32    1  !BBBKbcHLqfNBMP.temp.0570
06/21/26 12:36    1  !BBBKbcHMLDggcb.temp.0571
06/21/26 12:52    1  !BBBKbcHMcGgMgg.temp.0572
06/21/26 12:53    1  !BBBKbcHNQMKqkQ.temp.0573
06/21/26 12:53    1  !BBBKbcHNZhbKXd.temp.0574
06/21/26 12:54    1  !BBBKbcHNZhgHjJ.temp.0575
06/21/26 12:54    1  !BBBKbcHNbzlfqj.temp.0576
06/21/26 12:57    1  !BBBKbcHNbzqQFd.temp.0577
06/21/26 12:57    1  !BBBKbcHNhfZpxl.temp.0600
06/21/26 12:59    1  !BBBKbcHNhffjCx.temp.0601
06/21/26 12:59    1  !BBBKbcHNlznBFG.temp.0602
06/21/26 13:00    1  !BBBKbcHNlzwpKn.temp.0603
06/21/26 13:00    1  !BBBKbcHNpCHmNb.temp.0604
06/21/26 13:05    1  !BBBKbcHNpCPGCl.temp.0605
06/21/26 13:05    1  !BBBKbcHPGWJCbh.temp.0606
06/21/26 13:06    1  !BBBKbcHPGWNCQW.temp.0607
06/21/26 13:06    1  !BBBKbcHPJJFzxB.temp.0610
06/21/26 13:08    1  !BBBKbcHPJJKzpG.temp.0611
06/21/26 13:08    1  !BBBKbcHPMbmlQf.temp.0612
06/21/26 13:09    1  !BBBKbcHPMbwqnn.temp.0613
06/21/26 13:09    1  !BBBKbcHPPNqQCD.temp.0614
06/21/26 13:12    1  !BBBKbcHPPPBWHh.temp.0615
06/21/26 13:12    1  !BBBKbcHPccZcpJ.temp.0616
06/21/26 13:12    2  !BBBKbcHPccflDz.temp.0617
06/21/26 13:21    2  !BBBKbcHQBdpnJK.temp.0624
06/21/26 13:32   13  !BBBKbcHQgKCwQD.temp.0626
06/21/26 13:53    1  !BBBKbcHWnjHwKP.temp.0625
06/21/26 13:54    0  !BBBKbcHWqwCdKj.temp.0627
06/21/26 14:14    0  !BBBKbcHZBblQlQ.temp.0632
06/21/26 14:14    0  !BBBKbcHZBblhmp.temp.0634
06/21/26 14:14    0  !BBBKbcHZBblpnZ.temp.0635
06/21/26 14:14    0  !BBBKbcHZBbwMxW.temp.0637
06/21/26 14:25    0  !BBBKbcHZdwmzKC.temp.0647
}}}

I suspect that:
 - one gets created each time the exec_com command is called; and
 - that temp seg isn't getting released correctly.

I have only the above proof of this suspicion at the moment, but I feel this temp segment releasing error should be documented.  While temp segment sizes in the process directory are small (usually 1 page long), the leak could cause the process to eventually run out of available segment numbers.  The highest user process segment number allowed is segno 1777_o = 1023_d (limited by the size of user process dseg: 2 pages with each SDW in the array occupying 2 words)."	defect	closed	major		Standard Library	MR12.5	fixed		
