[PATCH] examples/vm_power: replace list foreach with while loop
    Thomas Monjalon 
    thomas at monjalon.net
       
    Tue Mar  8 14:26:10 CET 2022
    
    
  
01/03/2022 15:53, Shibin Koikkara Reeny:
> Linux header files don't support LIST_FOREACH_SAFE so replacing
> LIST_FOREACH with while loop.
What is the original issue you are trying to solve?
> -	struct virtual_machine_info *vm_info;
> -
> -	LIST_FOREACH(vm_info, &vm_list_head, vms_info) {
> +	struct virtual_machine_info *vm_info = LIST_FIRST(&vm_list_head);
>  
> +	/* No LIST_FOREACH_SAFE, using while instead. */
> +	while (vm_info) {
>  		rte_spinlock_lock(&(vm_info->config_spinlock));
>  
>  		memcpy(mask, (char *)vm_info->channel_mask, RTE_MAX_LCORE);
> @@ -1024,6 +1024,8 @@ channel_manager_exit(void)
>  
>  		LIST_REMOVE(vm_info, vms_info);
>  		rte_free(vm_info);
> +
> +		vm_info = LIST_NEXT((vm_info), vms_info);
>  	}
    
    
More information about the dev
mailing list