it seems broken to manipulate xfer_mask after returning from the driver's ->mode_filter hook.
this patch is more than just a speed-limited warning printk, afaics
I actually suggested that order because the only way the printk can be
done correctly is for it to be the very last test made. Since the mode
filter is not told what mode will be used but just subtracts modes that
are not allowed this should be safe.