Hi,

On 09/24/2013 09:43 PM, Alan Stern wrote:
This patch straightens out some locking issues in the USB sysfs
interface:

        Deauthorization will destroy existing configurations.
        Attributes that read from udev->actconfig need to lock the
        device to prevent races.  Likewise for the rawdescriptor
        values.

        Attributes that access an interface's current alternate
        setting should use ACCESS_ONCE() to obtain the cur_altsetting
        pointer, to protect against concurrent altsetting changes.

        The supports_autosuspend() attribute routine accesses values
        from an interface's driver, so it should lock the interface
        (rather than the usb_device) to protect against concurrent
        unbinds.  Once this is done, the routine can be simplified
        considerably.

Scalar values that are stored directly in the usb_device structure are
always available.  They do not require any locking.  The same is true
of the cached interface string descriptor, because it is not
deallocated until the usb_host_interface structure is destroyed.

Signed-off-by: Alan Stern <st...@rowland.harvard.edu>
CC: Hans de Goede <hdego...@redhat.com>

Looks good, thanks for fixing this!

Regards,

Hans
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to