On 08/26/2012 09:34 PM, oliver@xxxxxxxxxx wrote:
diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c index c34452a..dcc10ac 100644 --- a/drivers/usb/dwc3/core.c +++ b/drivers/usb/dwc3/core.c @@ -99,6 +99,7 @@ void dwc3_put_device_id(int id) ret = test_bit(id, dwc3_devs); WARN(!ret, "dwc3: ID %d not in use\n", id); + smp_mb__before_clear_bit(); clear_bit(id, dwc3_devs);
Why before and not after? This has more a locking semantic. Would test_and_clear_bit() make the mb obsolete?
} EXPORT_SYMBOL_GPL(dwc3_put_device_id);
Sebastian -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html