lst_ho...@kwsoft.de: > >> > Can you please try the two #define statements at the top of > >> > postscreen.h > >> > > >> > #define psc_check_queue_length_hiwat psc_hiwat > >> > #define psc_check_queue_length_lowat psc_lowat > >> > > >> > Then recompile. > >> > >> Sorry, no. Both values stay at "0" after "make clean, make tidy, make > >> install" and editing the file like this: > > > > OK, time for radical measures. > > > > 1) Remove the two lines that you added to postscreen.h. > > > > 2) In the postscreen directory: > > > > $ perl -pi -e 's/psc_check_queue_length_hiwat/psc_hiwat/g' *.[hc] > > $ perl -pi -e 's/psc_check_queue_length_lowat/psc_lowat/g' *.[hc] > > > > That makes them different within 6 characters. > > > > 3) Recompile, install, etc. > > Still no joy... The result is still the same. > Maybe some other problem as root case? Some over-eagerly optimizing compiler?
Well this is the code: psc_lowat_check_queue_length = .7 * var_psc_pre_queue_limit; psc_hiwat_check_queue_length = .9 * var_psc_pre_queue_limit; if (msg_verbose) msg_info(VAR_PSC_CMD_TIME ": stress=%d normal=%d lowat=%d hiwat=%d", psc_stress_cmd_time_limit, psc_normal_cmd_time_limit, psc_lowat_check_queue_length, psc_hiwat_check_queue_length); The lowat/hiwat variables will be zero when var_psc_pre_queue_limit is left at zero, which you can check by adding an msg_info() statement. Here's the home work: please add msg_info("var_psc_pre_queue_limit = %d", var_psc_pre_queue_limit); just before the code that uses var_psc_pre_queue_limit. This means the code that handles this initialization is not working as expected: static const CONFIG_NINT_TABLE nint_table[] = { VAR_PSC_POST_QLIMIT, DEF_PSC_POST_QLIMIT, &var_psc_post_queue_limit, 5, 0, VAR_PSC_PRE_QLIMIT, DEF_PSC_PRE_QLIMIT, &var_psc_pre_queue_limit, 10, 0, VAR_PSC_CCONN_LIMIT, DEF_PSC_CCONN_LIMIT, &var_psc_cconn_limit, 0, 0, 0, }; Before I dive into that, let's see what your home work produces. Wietse