From: Jens Axboe <axboe@kernel.dk>
To: Sitsofe Wheeler <sitsofe@yahoo.com>
Cc: fio@vger.kernel.org
Subject: Re: Mutex destruction, invalid memory accesses, leaks
Date: Fri, 07 Feb 2014 09:11:20 -0700 [thread overview]
Message-ID: <52F505A8.30004@kernel.dk> (raw)
In-Reply-To: <20140207034439.GA17588@sucs.org>
On 2014-02-06 20:44, Sitsofe Wheeler wrote:
> On Thu, Feb 06, 2014 at 12:21:35PM -0700, Jens Axboe wrote:
>>
>> Similarly, if you know of bugs (particularly regressions from previous
>> releases), speak up now so we can get them fixed before 2.1.5 is cut.
>
> I think there is a problem with how mutexes are being destroyed and it's
> manifesting as a reproducible segfault in libwinpthread-1.dll on
> Windows. From
> http://thread.gmane.org/gmane.comp.storage.fio/97/focus=136 :
>
>> I've finally had time to reproduce this on a Windows 7 box. I use a
>> different command line:
>>
>> ./fio.exe --debug=all --filename=fiojob --thread --size=512 --rw=read --bs=512 --ioengine=sync --verify_pattern=0xdeadbeef --name=fiojobname
>>
>> The problem appears to be that the mutex is being destroyed while it
>> is still being held by a different thread. Adding return; to the first
>> line of fio_mutex_remove in mutex.c papers over the problem...
>
> This issue hasn't seen much interest since it was raised a few weeks ago
> and I haven't had time to come up with a proper fix but it looks similar
> to the issue described in https://lwn.net/Articles/575460/ (A surprise
> with mutexes and reference counts).
Does this still happen in current -git? The bug is a weird one - it
looks like it's crashing in bringing up the thread, but the
synchronization around that should ensure that it never gets to touch
td->mutex. If the mutexes are broken somehow and the thread doesn't
properly wait for the main thread to bring it up, then I can see it
happening. Hence my question whether it's still happening after Bruce
fixed the pthread linkage in current -git.
> Additionally Dr Memory is also flagging up an invalid memory access on
> the Windows version of fio (one is in a macro which makes a for loop but
> I only have a non-macro fix for it at the moment) and some memory leaks
> around string_to_cpu and init_io_u.
I'm going to need more info on the invalid mem access. Not surprised
there are a few leaks around the init functions. Would be nice to get
fixed up, but not a ship-stopper.
--
Jens Axboe
next prev parent reply other threads:[~2014-02-07 16:11 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-06 19:21 Fio 2.1.5 release upcoming Jens Axboe
2014-02-07 3:44 ` Mutex destruction, invalid memory accesses, leaks Sitsofe Wheeler
2014-02-07 16:11 ` Jens Axboe [this message]
2014-02-09 19:50 ` Sitsofe Wheeler
2014-02-09 20:49 ` Jens Axboe
2014-02-10 9:55 ` Sitsofe Wheeler
2014-02-10 19:25 ` Bruce Cran
2014-02-10 20:22 ` Sitsofe Wheeler
2014-02-10 20:48 ` Jens Axboe
2014-02-10 20:56 ` Jens Axboe
2014-02-11 0:12 ` Elliott, Robert (Server Storage)
2014-02-11 7:07 ` Sitsofe Wheeler
2014-02-11 15:30 ` Elliott, Robert (Server Storage)
2014-02-11 15:38 ` Jens Axboe
2014-02-11 22:51 ` Sitsofe Wheeler
2014-02-12 6:32 ` Sitsofe Wheeler
2014-02-08 19:52 ` Fio 2.1.5 release upcoming Matthew Eaton
2014-02-09 20:57 ` Jens Axboe
2014-02-10 0:26 ` Matthew Eaton
2014-02-10 22:14 ` Jens Axboe
2014-02-10 23:11 ` Matthew Eaton
2014-02-10 23:15 ` Jens Axboe
2014-02-11 0:00 ` Matthew Eaton
2014-02-11 15:09 ` Jens Axboe
2014-02-11 15:27 ` Jens Axboe
2014-02-11 19:18 ` Matthew Eaton
2014-02-11 19:29 ` Jens Axboe
2014-02-11 20:52 ` Matthew Eaton
2014-02-11 21:21 ` Jens Axboe
2014-02-11 21:38 ` Matthew Eaton
2014-02-11 21:42 ` Jens Axboe
2014-02-12 0:01 ` Matthew Eaton
2014-02-12 1:46 ` Jens Axboe
2014-02-12 2:30 ` Matthew Eaton
2014-02-11 11:22 ` Paul Alcorn
2014-02-11 15:39 ` 'Jens Axboe'
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=52F505A8.30004@kernel.dk \
--to=axboe@kernel.dk \
--cc=fio@vger.kernel.org \
--cc=sitsofe@yahoo.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.