• Takashi Sakamoto's avatar
    ALSA: fireworks: serialize transactions to update connections at bus reset · 99d73559
    Takashi Sakamoto authored
    In IEC 61883-1, at bus-reset, applications can continue isochronous
    streaming by updating connections. In ALSA fireworks driver, the
    operation is executed in 'update' handler for bus driver.
    
    The connection resources are also changed in process contexts of PCM/MIDI
    applications. Therefore, bus-reset handling has race condition
    against connection. Current ALSA fireworks driver has a bug for the
    condition.
    
    This commit fixes the bug, by expand critical section with mutex. As a
    result, connection updating operation in bus-reset handler and connection
    changing operation in process context are serialized.
    Signed-off-by: default avatarTakashi Sakamoto <o-takashi@sakamocchi.jp>
    Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    99d73559
fireworks.c 11.2 KB