Race condition in tdb_runtime_check_for_robust_mutexes()

Uri Simchoni uri at samba.org
Tue Mar 29 09:52:36 UTC 2016


On 03/29/2016 12:27 PM, Ralph Boehme wrote:
> On Mon, Mar 28, 2016 at 07:47:13PM +0200, Ralph Boehme wrote:
>> On Mon, Mar 28, 2016 at 10:38:09AM -0700, Jeremy Allison wrote:
>>> On Mon, Mar 28, 2016 at 09:28:34AM -0700, Jeremy Allison wrote:
>>>> On Mon, Mar 28, 2016 at 09:23:48AM -0700, Jeremy Allison wrote:
>>>>> On Sun, Mar 27, 2016 at 09:34:38AM +0200, Ralph Boehme wrote:
>>>>>>
>>>>>>> but to be honest I'd much prefer it if you moved those calls outside
>>>>>>> and back to just before/after the calls to
>>>>>>> tdb_robust_mutex_setup_sigchild(), and leave that call as-is. That
>>>>>>> way I can *see* they're there at the right point in the code.
>>>>>>
>>>>>> attached. :)
>>>>>
>>>>> Thanks Ralph, I can actually understand your code
>>>>> changes now :-).
>>>>>
>>>>> Pushed !
>>>>
>>>> With one minor change to remove the now-unused
>>>> 'status' variable :-).
>>>
>>> Oh. I'm getting a reproducible fail on :
>>>
>>> UNEXPECTED(error): samba3.smbtorture_s3.plain(nt4_dc).CLEANUP1.smbtorture(nt4_dc)
>>> REASON: Exception: Exception: reason (failure) interrupted
>>>
>>> command: /home/jeremy/src/samba/git/master/source3/script/tests/test_smbtorture_s3.sh CLEANUP1 //$SERVER_IP/tmp $USERNAME $PASSWORD /home/jeremy/src/samba/git/master/bin/smbtorture3  -l $LOCAL_PATH 2>&1  | /home/jeremy/src/samba/git/master/selftest/filter-subunit --fail-on-empty --prefix="samba3.smbtorture_s3.plain(nt4_dc).CLEANUP1." --suffix="(nt4_dc)"
>>> expanded command: /home/jeremy/src/samba/git/master/source3/script/tests/test_smbtorture_s3.sh CLEANUP1 //127.0.0.3/tmp jeremy localntdc2pass /home/jeremy/src/samba/git/master/bin/smbtorture3  -l /home/jeremy/src/samba/git/master/st/nt4_dc/share 2>&1  | /home/jeremy/src/samba/git/master/selftest/filter-subunit --fail-on-empty --prefix="samba3.smbtorture_s3.plain(nt4_dc).CLEANUP1." --suffix="(nt4_dc)"
>>> ERROR: Testsuite[samba3.smbtorture_s3.plain(nt4_dc).CLEANUP1]
>>> REASON: Exit code was 1
>>>
>>> with this patchset. Ralph, can you
>>> take a look please ? I'm off to a
>>> conference (lasts most of the week)
>>> today so I won't be able to check
>>> immediately what this breaks.
>>
>> hm, I'll take a look.
> 
> ok, I forgot to update the goto hell, so when the test succeeded the
> signal mask was not reset. Updated patchset attached.
> 
> Cheerio!
> -slow
> 
... And it passed two reviewers. Sigh.
Pushed with my RB+
Thanks,
Uri.



More information about the samba-technical mailing list