diff mbox series

trace-cmd: Fix mmap error path in allocate_page_map()

Message ID 20210310152730.3661-1-vincent.donnefort@arm.com (mailing list archive)
State Accepted
Commit 48eb5aa312a3bae48a3c1c656ed4f770a38281dc
Headers show
Series trace-cmd: Fix mmap error path in allocate_page_map() | expand

Commit Message

Vincent Donnefort March 10, 2021, 3:27 p.m. UTC
A typo in allocate_page_map() led to not testing mmap failure and using
the defunct pointer as a valid one.

Signed-off-by: Vincent Donnefort <vincent.donnefort@arm.com>

Comments

Steven Rostedt March 10, 2021, 5:16 p.m. UTC | #1
On Wed, 10 Mar 2021 15:27:30 +0000
Vincent Donnefort <vincent.donnefort@arm.com> wrote:

> A typo in allocate_page_map() led to not testing mmap failure and using
> the defunct pointer as a valid one.
> 
> Signed-off-by: Vincent Donnefort <vincent.donnefort@arm.com>
> 
> diff --git a/lib/trace-cmd/trace-input.c b/lib/trace-cmd/trace-input.c
> index f9d09d2..2093a3d 100644
> --- a/lib/trace-cmd/trace-input.c
> +++ b/lib/trace-cmd/trace-input.c
> @@ -1004,7 +1004,7 @@ static void *allocate_page_map(struct tracecmd_input *handle,
>  	page_map->map = mmap(NULL, map_size, PROT_READ, MAP_PRIVATE,
>  			 handle->fd, map_offset);
>  
> -	if (page->map == MAP_FAILED) {
> +	if (page_map->map == MAP_FAILED) {
>  		/* Try a smaller map */
>  		map_size >>= 1;
>  		if (map_size < handle->page_size) {

Ouch. Nice catch!

I'll apply it to my next push to the tree.

-- Steve
diff mbox series

Patch

diff --git a/lib/trace-cmd/trace-input.c b/lib/trace-cmd/trace-input.c
index f9d09d2..2093a3d 100644
--- a/lib/trace-cmd/trace-input.c
+++ b/lib/trace-cmd/trace-input.c
@@ -1004,7 +1004,7 @@  static void *allocate_page_map(struct tracecmd_input *handle,
 	page_map->map = mmap(NULL, map_size, PROT_READ, MAP_PRIVATE,
 			 handle->fd, map_offset);
 
-	if (page->map == MAP_FAILED) {
+	if (page_map->map == MAP_FAILED) {
 		/* Try a smaller map */
 		map_size >>= 1;
 		if (map_size < handle->page_size) {