On Tue, 17 Jun 2014, Dan Williams wrote: > In the case where platform firmware has specified conflicting values for > port locations it is confusing and otherwise not helpful to throw a > backtrace. Instead, include enough information to determine that > firmware has done something wrong and globally disable port poweroff. > @@ -251,6 +264,7 @@ static void link_peers_report(struct usb_port *left, struct usb_port *right) > dev_warn(&left->dev, "failed to peer to %s (%d)\n", > dev_name(&right->dev), rc); > pr_warn_once("usb: port power management may be unreliable\n"); > + usb_port_block_power_off = 1; > } > } Ironically, since you've got usb_port_block_power_off, you don't need to make this pr_warn_once(). Instead, you can do if (!usb_port_block_power_off) { usb_port_block_power_off = 1; pr_warn(...); } which is pretty much what pr_warn_once() does. Furthermore, since power poweroff is now globally disabled, you can say something stronger than "may be unreliable", such as "has been disabled". Alan Stern -- 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