/* Description: Free all memory associated with dynamic quirks - called before module unload.  */
static void usbhid_remove_all_dquirks(void)
/* Description: Free all memory associated with dynamic quirks - called before module unload.  */
static void usbhid_remove_all_dquirks(void)
{
	struct quirks_list_struct *q, *temp;
	down_write(&dquirks_rwsem);
	list_for_each_entry_safe(q, temp, &dquirks_list, node) {
		list_del(&q->node);
		kfree(q);
	}
	up_write(&dquirks_rwsem);
}