From: Junio C Hamano Date: Tue, 30 Dec 2025 11:38:39 GMT Subject: Re: [PATCH] fsmonitor: implement filesystem change listener for Linux Message-ID: In-Reply-To: Exciting. It seems to die with leaks when "make SANITIZE=leak test" is run, though. Initialized empty Git repository in /home/gitster/w/git.git/t/trash directory.t7527-builtin-fsmonitor/test_implicit/.git/ fsmonitor-daemon is not watching '/home/gitster/w/git.git/t/trash directory.t7527-builtin-fsmonitor/test_implicit' builtin:0.145521.20251230T113644.793433Z:0Q/Q {"event":"data","sid":"20251230T113644.762195Z-H3cfff1b1-P0002386f","thread":"main","time":"2025-12-30T11:36:44.813131Z","file":"fsmonitor-ipc.c","line":99,"t_abs":0.052581,"t_rel":0.048830,"nesting":2,"category":"fsm_client","key":"query/response-length","value":"45"} fsmonitor-daemon is watching '/home/gitster/w/git.git/t/trash directory.t7527-builtin-fsmonitor/test_implicit' fsmonitor-daemon is not watching '/home/gitster/w/git.git/t/trash directory.t7527-builtin-fsmonitor/test_implicit' fatal: fsmonitor--daemon is not running not ok 2 - implicit daemon start # # test_when_finished "stop_daemon_delete_repo test_implicit" && # # git init test_implicit && # test_must_fail git -C test_implicit fsmonitor--daemon status && # # # query will implicitly start the daemon. # # # # for test-script simplicity, we send a V1 timestamp rather than # # a V2 token. either way, the daemon response to any query contains # # a new V2 token. (the daemon may complain that we sent a V1 request, # # but this test case is only concerned with whether the daemon was # # implicitly started.) # # GIT_TRACE2_EVENT="$PWD/.git/trace" \ # test-tool -C test_implicit fsmonitor-client query --token 0 >actual && # nul_to_q actual.filtered && # grep "builtin:" actual.filtered && # # # confirm that a daemon was started in the background. # # # # since the mechanism for starting the background daemon is platform # # dependent, just confirm that the foreground command received a # # response from the daemon. # # have_t2_data_event fsm_client query/response-length <.git/trace && # # git -C test_implicit fsmonitor--daemon status && # git -C test_implicit fsmonitor--daemon stop && # test_must_fail git -C test_implicit fsmonitor--daemon status # 1..2 ================================================================= ==git==145489==ERROR: LeakSanitizer: detected memory leaks Direct leak of 512 byte(s) in 1 object(s) allocated from: #0 0x56179e6ce042 in calloc (git+0x8c042) (BuildId: de5ce3c9d0b0c09380c910e6a9eb181e324abde6) #1 0x56179ea0aef4 in xcalloc wrapper.c:154:8 #2 0x56179e8b17b7 in alloc_table hashmap.c:79:2 #3 0x56179e8b174c in hashmap_init hashmap.c:168:2 #4 0x56179e73e6fe in fsmonitor_run_daemon builtin/fsmonitor--daemon.c:1288:2 #5 0x56179e73e141 in try_to_run_foreground_daemon builtin/fsmonitor--daemon.c:1448:11 #6 0x56179e73dc44 in cmd_fsmonitor__daemon builtin/fsmonitor--daemon.c:1584:12 #7 0x56179e6d2c8a in run_builtin git.c:506:11 #8 0x56179e6d1910 in handle_builtin git.c:779:9 #9 0x56179e6d2747 in run_argv git.c:862:4 #10 0x56179e6d169b in cmd_main git.c:984:19 #11 0x56179e7f7a7a in main common-main.c:9:11 #12 0x7f091ea66ca7 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16 #13 0x7f091ea66d64 in __libc_start_main csu/../csu/libc-start.c:360:3 #14 0x56179e69e280 in _start (git+0x5c280) (BuildId: de5ce3c9d0b0c09380c910e6a9eb181e324abde6)