lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1337392560.7562.21.camel@gandalf.stny.rr.com>
Date:	Fri, 18 May 2012 21:56:00 -0400
From:	Steven Rostedt <rostedt@...dmis.org>
To:	Vaibhav Nagarnaik <vnagarnaik@...gle.com>
Cc:	Laurent Chavey <chavey@...gle.com>,
	Justin Teravest <teravest@...gle.com>,
	David Sharp <dhsharp@...gle.com>, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] tracing: Merge separate resize loops

On Fri, 2012-05-18 at 13:29 -0700, Vaibhav Nagarnaik wrote:
>  
>  		/* wait for all the updates to complete */
>  		for_each_buffer_cpu(buffer, cpu) {
>  			cpu_buffer = buffer->buffers[cpu];
> -			if (!cpu_buffer->nr_pages_to_update||
> -			    !cpu_online(cpu))
> +			if (!cpu_buffer->nr_pages_to_update)
>  				continue;
>  

Why did you make this change? As we only need to wait for completions.

> -			wait_for_completion(&cpu_buffer->update_completion);
> -			/* reset this value */
> +			if (cpu_online(cpu))
> +				wait_for_completion(&cpu_buffer->update_done);
>  			cpu_buffer->nr_pages_to_update = 0;

Or was the original patch buggy, where we never set nr_page_to_update to
zero for the offline case?

-- Steve

>  		}
>  
>  		put_online_cpus();
>  	} else {
>  		cpu_buffer = buffer->buffers[cpu_id];
> +
>  		if (nr_pages == cpu_buffer->nr_pages)
>  			goto out;
>  
> @@ -1588,13 +1579,12 @@ int ring_buffer_resize(struct ring_buffer *buffer, unsigned long size,
>  		if (cpu_online(cpu_id)) {
>  			schedule_work_on(cpu_id,
>  					 &cpu_buffer->update_pages_work);
> -			wait_for_completion(&cpu_buffer->update_completion);
> +			wait_for_completion(&cpu_buffer->update_done);
>  		} else
>  			rb_update_pages(cpu_buffer);
>  
> -		put_online_cpus();
> -		/* reset this value */
>  		cpu_buffer->nr_pages_to_update = 0;
> +		put_online_cpus();
>  	}
>  
>   out:


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ