mturk 2005/02/21 02:31:08 Modified: jk/native/common jk_shm.h Log: Use volatile to supress (hopefully) caching in registers the data that can be changed in multi cpu systems. Revision Changes Path 1.16 +13 -13 jakarta-tomcat-connectors/jk/native/common/jk_shm.h Index: jk_shm.h =================================================================== RCS file: /home/cvs/jakarta-tomcat-connectors/jk/native/common/jk_shm.h,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- jk_shm.h 20 Feb 2005 18:31:21 -0000 1.15 +++ jk_shm.h 21 Feb 2005 10:31:08 -0000 1.16 @@ -55,7 +55,7 @@ { int id; /* Number of currently busy channels */ - int busy; + volatile int busy; /* worker name */ char name[JK_SHM_STR_SIZ+1]; /* worker domain */ @@ -63,28 +63,28 @@ /* worker redirect route */ char redirect[JK_SHM_STR_SIZ+1]; /* current status of the worker */ - int is_disabled; - int is_busy; + volatile int is_disabled; + volatile int is_busy; /* Current lb factor */ - int lb_factor; + volatile int lb_factor; /* Current lb value */ - int lb_value; - int in_error_state; - int in_recovering; + volatile int lb_value; + volatile int in_error_state; + volatile int in_recovering; int sticky_session; int sticky_session_force; int recover_wait_time; int retries; /* Statistical data */ - time_t error_time; + volatile time_t error_time; /* Number of bytes read from remote */ - size_t readed; + volatile size_t readed; /* Number of bytes transferred to remote */ - size_t transferred; + volatile size_t transferred; /* Number of times the worker was elected */ - size_t elected; + volatile size_t elected; /* Number of non 200 responses */ - size_t errors; + volatile size_t errors; }; typedef struct jk_shm_worker jk_shm_worker_t;
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]