Commit 277cbadc authored by Poul-Henning Kamp's avatar Poul-Henning Kamp

A couple of stylistisc FlexeLint v9 nits, and some additions to the .lnt

file.

Unfortunately the thread support in FlexeLint is not quite up to our
standards of creative locking.



git-svn-id: http://www.varnish-cache.org/svn/trunk/varnish-cache@3365 d4fa192b-c00b-0410-8231-f00ffab90ce4
parent 36be3b36
......@@ -615,6 +615,22 @@ void SMS_Finish(struct object *obj);
#define MTX pthread_mutex_t
#define MTX_INIT(foo) AZ(pthread_mutex_init(foo, NULL))
#define MTX_DESTROY(foo) AZ(pthread_mutex_destroy(foo))
#ifdef __flexelint_v9__
#define TRYLOCK(foo, r) \
do { \
(r) = pthread_mutex_trylock(foo); \
} while (0)
#define LOCK(foo) \
do { \
AZ(pthread_mutex_lock(foo)); \
} while (0)
#define UNLOCK(foo) \
do { \
AZ(pthread_mutex_unlock(foo)); \
} while (0)
#else
#define TRYLOCK(foo, r) \
do { \
(r) = pthread_mutex_trylock(foo); \
......@@ -652,6 +668,7 @@ do { \
"MTX_UNLOCK(%s,%s,%d," #foo ")", \
__func__, __FILE__, __LINE__); \
} while (0)
#endif
#if defined(HAVE_PTHREAD_MUTEX_ISOWNED_NP)
#define ALOCKED(mutex) AN(pthread_mutex_isowned_np((mutex)))
......@@ -693,8 +710,7 @@ Tlen(const txt t)
{
Tcheck(t);
return
((unsigned)(t.e - t.b));
return ((unsigned)(t.e - t.b));
}
static inline void
......
......@@ -55,7 +55,7 @@ static void
vca_pollspace(unsigned fd)
{
struct pollfd *newpollfd = pollfd;
unsigned newnpoll = npoll;
unsigned newnpoll;
if (fd < npoll)
return;
......
-passes=3
-d__flexelint_v9__=1
//-sem (pthread_mutex_lock, thread_lock)
-sem (pthread_mutex_trylock, thread_lock)
-sem (VBE_DropRefLocked, thread_unlock)
-e459 // unlocked access from func-ptr
-e454 // mutex not released (...ReleaseLocked)
-e457 // unprotected access
-esym(458, lbv_assert) // unlocked access
-esym(458, params) // unlocked access
-emacro(835, HTTPH) // Info 835: A zero has been given as left argument to operator '&'
-emacro(845, HTTPH) // Info 845: The left argument to operator '&&' is certain to be 0
//////////////
-efunc(1791, pdiff) // return last on line
//////////////
-efile(451, "sys/*.h") // No include guard
-efile(451, "machine/*.h") // No include guard
-efile(451, "vcl_returns.h") // No include guard
-efile(451, "cache_backend_poll.h") // No include guard
-efile(451, "steps.h") // No include guard
-efile(451, "http_headers.h") // No include guard
-efile(451, "stat_field.h") // No include guard
-efile(451, "acct_fields.h") // No include guard
-efile(451, "config.h") // No include guard
//////////////
// -e458 // unprotected access
// -e456 // merged locking paths
-sem(vca_thread_acct, thread_mono)
-sem(vca_epoll_thread, thread_mono)
-sem(vca_kqueue_thread, thread_mono)
-sem(vca_poll_thread, thread_mono)
-sem(vca_ports_thread, thread_mono)
-sem(exp_timer, thread_mono)
-sem(wrk_herdtimer_thread, thread_mono)
-sem(wrk_herder_thread, thread_mono)
-esym(458, VSL_stats)
-esym(458, heritage)
-esym(458, name_key)
//////////////
-passes=1
+libh mgt_event.h
+libh ../../config.h
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment