Re: [PATCH] usbredirparser: prevent endless recursion if interface_count == 0

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hey,

I've pushed the patch now, thanks!

Christophe

On Tue, Jul 26, 2016 at 01:47:16PM +0300, Alon Levy wrote:
> On fedora 24 this function is tail optimized, resulting in a busy wait.
> 
> This happens to me with virt-manager running a win7 vm 
> 
> usbredir-0.7.1-2.fc24.x86_64
> ---
> Hi Guys!
> 
>  One liner to fix an issue I had with virt-manager - symptom is 100% cpu
>  taken in it, stack traced to the problem fixed by this patch.
> 
> Alon
> 
>  usbredirparser/usbredirfilter.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/usbredirparser/usbredirfilter.c
> b/usbredirparser/usbredirfilter.c
> index 02184ef..bdfbfc2 100644
> --- a/usbredirparser/usbredirfilter.c
> +++ b/usbredirparser/usbredirfilter.c
> @@ -205,7 +205,7 @@ int usbredirfilter_check(
>       * by recursively calling this function with a flag that forbids
>       * skipping (usbredirfilter_fl_dont_skip_non_boot_hid)
>       */
> -    if (num_skipped == interface_count) {
> +    if (interface_count > 0 && num_skipped == interface_count) {
>          rc = usbredirfilter_check(rules, rules_count,
>                                    device_class, device_subclass,
>                                    device_protocol,
>                                    interface_class, interface_subclass,
> -- 
> 2.7.4
> _______________________________________________
> Spice-devel mailing list
> Spice-devel@xxxxxxxxxxxxxxxxxxxxx
> https://lists.freedesktop.org/mailman/listinfo/spice-devel

Attachment: signature.asc
Description: PGP signature

_______________________________________________
Spice-devel mailing list
Spice-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/spice-devel

[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]     [Monitors]