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: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CFE4847AFB257A49B523694D002FF03A118B5D47@SHSMSX104.ccr.corp.intel.com>
Date:	Fri, 12 Jun 2015 07:47:52 +0000
From:	"Zhang, Dongxing" <dongxing.zhang@...el.com>
To:	"gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
	"peter@...leysoftware.com" <peter@...leysoftware.com>,
	"alan@...ux.intel.com" <alan@...ux.intel.com>,
	"jslaby@...e.cz" <jslaby@...e.cz>,
	"Deak, Imre" <imre.deak@...el.com>,
	"daniel.vetter@...ll.ch" <daniel.vetter@...ll.ch>,
	"van.freenix@...il.com" <van.freenix@...il.com>,
	"joe@...ches.com" <joe@...ches.com>,
	"tiwai@...e.de" <tiwai@...e.de>,
	"nicolas.pitre@...aro.org" <nicolas.pitre@...aro.org>,
	"prabhakar.csengg@...il.com" <prabhakar.csengg@...il.com>
CC:	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
	"Wang, Xiaoming" <xiaoming.wang@...el.com>
Subject: RE: [PATCH] tty/vt: Fix the memory leak in visual_init

Add more reviewers

> -----Original Message-----
> From: Zhang, Dongxing
> Sent: Wednesday, June 10, 2015 3:21 PM
> To: gregkh@...uxfoundation.org; peter@...leysoftware.com;
> alan@...ux.intel.com
> Cc: linux-kernel@...r.kernel.org; Zhang, Dongxing; Wang, Xiaoming
> Subject: [PATCH] tty/vt: Fix the memory leak in visual_init
> 
> If vc->vc_uni_pagedir_loc is not NULL, its refcount needs to be decreased before
> vc_uni_pagedir_loc is re-assigned.
> 
> unreferenced object 0xffff88002cdd13b0 (size 512):
>   comm "setfont", pid 503, jiffies 4294896503 (age 722.828s)
>   hex dump (first 32 bytes):
>     40 92 61 2b 00 88 ff ff 00 00 00 00 00 00 00 00  @.a+............
>     00 00 00 00 00 00 00 00 a0 ad 61 2b 00 88 ff ff  ..........a+....
>   backtrace:
>     [<ffffffff817b755e>] kmemleak_alloc+0x4e/0xb0
>     [<ffffffff811d4898>] kmem_cache_alloc_trace+0x1c8/0x240
>     [<ffffffff814ae7d3>] con_do_clear_unimap.isra.2+0x83/0xe0
>     [<ffffffff814ae9b2>] con_clear_unimap+0x22/0x40
>     [<ffffffff814a8db8>] vt_ioctl+0xeb8/0x1170
>     [<ffffffff8149b458>] tty_ioctl+0x208/0xca0
>     [<ffffffff81207858>] do_vfs_ioctl+0x2f8/0x510
>     [<ffffffff81207af1>] SyS_ioctl+0x81/0xa0
>     [<ffffffff817ca2b2>] system_call_fastpath+0x16/0x75
>     [<ffffffffffffffff>] 0xffffffffffffffff unreferenced object 0xffff88002b619240
> (size 256):
>   comm "setfont", pid 503, jiffies 4294896503 (age 722.828s)
>   hex dump (first 32 bytes):
>     90 bc 84 d5 00 88 ff ff 58 85 84 d5 00 88 ff ff  ........X.......
>     88 ac 84 d5 00 88 ff ff e0 b1 84 d5 00 88 ff ff  ................
>   backtrace:
>     [<ffffffff817b755e>] kmemleak_alloc+0x4e/0xb0
>     [<ffffffff811d4898>] kmem_cache_alloc_trace+0x1c8/0x240
>     [<ffffffff814ae286>] con_insert_unipair+0x86/0x170
>     [<ffffffff814af107>] con_set_unimap+0x1b7/0x280
>     [<ffffffff814a8d65>] vt_ioctl+0xe65/0x1170
>     [<ffffffff8149b458>] tty_ioctl+0x208/0xca0
>     [<ffffffff81207858>] do_vfs_ioctl+0x2f8/0x510
>     [<ffffffff81207af1>] SyS_ioctl+0x81/0xa0
>     [<ffffffff817ca2b2>] system_call_fastpath+0x16/0x75
>     [<ffffffffffffffff>] 0xffffffffffffffff
> 
> Signed-off-by: Dongxing Zhang <dongxing.zhang@...el.com>
> Signed-off-by: Xiaoming Wang <xiaoming.wang@...el.com>
> ---
>  drivers/tty/vt/vt.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/tty/vt/vt.c b/drivers/tty/vt/vt.c index 4a24eb2..334c502
> 100644
> --- a/drivers/tty/vt/vt.c
> +++ b/drivers/tty/vt/vt.c
> @@ -738,6 +738,8 @@ static void visual_init(struct vc_data *vc, int num, int init)
>  	__module_get(vc->vc_sw->owner);
>  	vc->vc_num = num;
>  	vc->vc_display_fg = &master_display_fg;
> +	if (vc->vc_uni_pagedir_loc)
> +		con_free_unimap(vc);
>  	vc->vc_uni_pagedir_loc = &vc->vc_uni_pagedir;
>  	vc->vc_uni_pagedir = NULL;
>  	vc->vc_hi_font_mask = 0;
> --
> 1.9.1

--
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