All of lore.kernel.org
 help / color / mirror / Atom feed
From: Denis Kenzior <denkenz@gmail.com>
To: ofono@ofono.org
Subject: Re: [PATCH] hfp_hf: Fix modifying hash table while iterating
Date: Wed, 18 Apr 2012 10:55:13 -0500	[thread overview]
Message-ID: <4F8EE3E1.4070502@gmail.com> (raw)
In-Reply-To: <1334762376-24124-1-git-send-email-mikel.astiz.oss@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1023 bytes --]

Hi Mikel,

On 04/18/2012 10:19 AM, Mikel Astiz wrote:
> Calling ofono_remove_modem() while iterating the hash table is not safe
> given that it can modify the table in hfp_remove().
> 
> A simple way to reproduce the problem is to pair some Bluetooth phones
> and remove the Bluetooth adapter, triggering a GLib-CRITICAL assertion.
> 
> This approach proposes a two-step removal: first, the hash table is
> iterated and all modems to be removed are marked as pending (thus
> removed from the hash table and put in a temporary list), and afterwards
> all pending modems are actually removed.
> ---
>  plugins/hfp_hf.c |   11 ++++++++++-
>  1 files changed, 10 insertions(+), 1 deletions(-)
> 

The patch looks absolutely fine, however can you check whether removing
g_hashtable_remove from hfp_remove would do the trick as well?  We don't
seem to be doing this in the sap driver, and I no longer recall whether
this was done in hfp_hf to keep valgrind happy or is simply a mistake.

Regards,
-Denis

  reply	other threads:[~2012-04-18 15:55 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-18 15:19 [PATCH] hfp_hf: Fix modifying hash table while iterating Mikel Astiz
2012-04-18 15:55 ` Denis Kenzior [this message]
2012-04-19  6:54   ` Mikel Astiz
2012-04-19  0:55     ` Denis Kenzior
2012-04-19 17:15       ` Mikel Astiz

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=4F8EE3E1.4070502@gmail.com \
    --to=denkenz@gmail.com \
    --cc=ofono@ofono.org \
    /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.