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>] [day] [month] [year] [list]
Date:	Sun, 24 Jul 2016 16:43:06 +0900
From:	Tetsuo Handa <penguin-kernel@...ove.SAKURA.ne.jp>
To:	jhansen@...are.com
Cc:	linux-kernel@...r.kernel.org,
	Tetsuo Handa <penguin-kernel@...ove.SAKURA.ne.jp>
Subject: [PATCH] VMCI: fix kmemcheck warning.

kmemcheck complains that some of struct vmci_resource_query_msg members
allocated at vmci_check_host_caps() are not initialized before
vmci_send_datagram() is called. Add __GFP_ZERO to initialize explicitly.

[  362.182231] vmw_vmci 0000:00:07.7: Found VMCI PCI device at 0x11080, irq 16
[  362.188484] vmw_vmci 0000:00:07.7: Using capabilities 0xc
[  362.191853] WARNING: kmemcheck: Caught 8-bit read from uninitialized memory (ffff88003adb799c)
[  362.193582] 0000000000000000ffffffffffffffff0c00000000000000010000000088ffff
[  362.196224]  i i i i i i i i i i i i i i i i i i i i i i i i i i i i u u u u
[  362.198800]                                                          ^
[  362.200065] RIP: 0010:[<ffffffff812969f6>]  [<ffffffff812969f6>] iowrite8_rep+0x36/0x50
[  362.201685] RSP: 0018:ffff88003f5abca0  EFLAGS: 00010006
[  362.202696] RAX: 000000000000000c RBX: 0000000000000282 RCX: 0000000000000008
[  362.204111] RDX: 0000000000001090 RSI: ffff88003adb799c RDI: 0000000000001090
[  362.205456] RBP: ffff88003f5abcb0 R08: 0000000000000067 R09: 0000000000000000
[  362.206785] R10: ffff88003adb8980 R11: 0000000000000000 R12: ffff88003ee520a0
[  362.208079] R13: ffff88003adb7980 R14: ffff88003ae0d798 R15: ffff88003ae0d7f0
[  362.209520] FS:  0000000000000000(0000) GS:ffffffff8182c000(0000) knlGS:0000000000000000
[  362.211143] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  362.212201] CR2: ffff88003f429240 CR3: 000000003ad71000 CR4: 00000000001406f0
[  362.213552]  [<ffffffff81394d72>] vmci_guest_probe_device+0x1e2/0x7b0
[  362.214826]  [<ffffffff812b2d64>] pci_device_probe+0x84/0xf0
[  362.215952]  [<ffffffff8137abd2>] driver_probe_device+0x182/0x2c0
[  362.217118]  [<ffffffff8137ad9e>] __driver_attach+0x8e/0xa0
[  362.218246]  [<ffffffff81378bfb>] bus_for_each_dev+0x6b/0xb0
[  362.219387]  [<ffffffff8137a5a9>] driver_attach+0x19/0x20
[  362.220498]  [<ffffffff8137a18b>] bus_add_driver+0x1ab/0x220
[  362.221566]  [<ffffffff8137b5db>] driver_register+0x5b/0xe0
[  362.222695]  [<ffffffff812b14aa>] __pci_register_driver+0x3a/0x40
[  362.223885]  [<ffffffff818cc767>] vmci_guest_init+0x19/0x1b
[  362.224944]  [<ffffffff818cc68f>] vmci_drv_init+0x35/0xd2
[  362.226110]  [<ffffffff8100041a>] do_one_initcall+0x4a/0x180
[  362.227333]  [<ffffffff818991d0>] kernel_init_freeable+0x15b/0x201
[  362.228535]  [<ffffffff815a6ff9>] kernel_init+0x9/0x100
[  362.229547]  [<ffffffff815b1c0f>] ret_from_fork+0x1f/0x40
[  362.230580]  [<ffffffffffffffff>] 0xffffffffffffffff
[  362.231885] Guest personality initialized and is active
[  362.233034] VMCI host device registered (name=vmci, major=10, minor=62)
[  362.234278] Initialized host personality

Signed-off-by: Tetsuo Handa <penguin-kernel@...ove.SAKURA.ne.jp>
---
 drivers/misc/vmw_vmci/vmci_guest.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/misc/vmw_vmci/vmci_guest.c b/drivers/misc/vmw_vmci/vmci_guest.c
index 189b325..21707a9 100644
--- a/drivers/misc/vmw_vmci/vmci_guest.c
+++ b/drivers/misc/vmw_vmci/vmci_guest.c
@@ -172,7 +172,7 @@ static int vmci_check_host_caps(struct pci_dev *pdev)
 				VMCI_UTIL_NUM_RESOURCES * sizeof(u32);
 	struct vmci_datagram *check_msg;
 
-	check_msg = kmalloc(msg_size, GFP_KERNEL);
+	check_msg = kmalloc(msg_size, GFP_KERNEL | __GFP_ZERO);
 	if (!check_msg) {
 		dev_err(&pdev->dev, "%s: Insufficient memory\n", __func__);
 		return -ENOMEM;
-- 
1.8.3.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ