Re: [PATCH v2] blktrace: Fix potentail deadlock between delete & sysfs ops

From: Steven Rostedt
Date: Thu Aug 17 2017 - 18:18:26 EST


On Thu, 17 Aug 2017 18:13:20 -0400
Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:

> On Thu, 17 Aug 2017 17:27:22 -0400
> Waiman Long <longman@xxxxxxxxxx> wrote:
>
>
> > It is actually what the patch is trying to do by checking for the
> > deletion flag in the mutex_trylock loop. Please note that mutex does not
> > guarantee FIFO ordering of lock acquisition. As a result, cpu1 may call
> > mutex_lock() and wait for it while cpu2 can set the deletion flag later
> > and get the mutex first before cpu1. So checking for the deletion flag
> > before taking the mutex isn't enough.
>
> Yeah, I figured that out already (crossed emails). BTW, how did you
> trigger this warning. I'm playing around with adding loop devices,
> volume groups, and logical volumes, and reading the trace files
> created in the sysfs directory, then removing those items, but it's
> not triggering the "delete" path. What operation deletes the partition?

I'm guessing that deleting an actual partition may work (unfortunately,
my test box has no partition to delete ;-) I'll find another box to
test on.

-- Steve