On Thu, Jan 09, 2014 at 01:07:56AM +0000, Elliott, Robert (Server Storage)
wrote:
> I've seen something similar:
> - 2.1.4 on a Windows Server 2008 R2 system: crash
>
> This is this error for 2.1.4 on Windows Server 2008 R2:
<snip>
> (gdb) f 2
> #2 0x0000000000421599 in fio_mutex_up (mutex=0x2f5b10) at mutex.c:151
> 151 mutex.c: No such file or directory.
> (gdb) p mutex
> $1 = (struct fio_mutex *) 0x2f5b10
> (gdb) p *mutex
> $2 = {lock = 0x1bab1f00d, cond = 0x100000000, value = 0, waiters = 0, magic =
> 172}
This is crazy - the magic value is 172 rather than 1297437765 but the
fio_mutex_up() function is protected by an assert that checks to see if
the mutex's magic number is wrong. Could you can insert something like
the following after line 149:
assert(mutex->magic == FIO_MUTEX_MAGIC);
to prove that the value has not been stomped on before
pthread_cond_signal is run?
--
Sitsofe | http://sucs.org/~sits/
--
To unsubscribe from this list: send the line "unsubscribe fio" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html