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: <20100207105448.GA6623@fancy-poultry.org>
Date:	Sun, 7 Feb 2010 11:54:48 +0100
From:	Heinz Diehl <htd@...cy-poultry.org>
To:	Xiaotian Feng <xtfeng@...il.com>
Cc:	"Rafael J. Wysocki" <rjw@...k.pl>,
	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
	Kernel Testers List <kernel-testers@...r.kernel.org>,
	nhorman@...driver.com, davem@...emloft.net
Subject: Re: [Bug #15196] kmem_cache_create: duplicate cache ccid2_h

On 01.02.2010, Heinz Diehl wrote: 

[....]

Quoting myself here...

> The patch was completely malformed, don't know what happened on the way,
> but I applied it by hand. Yes, it fixes the problem for me.

Xiaotiangs patch quoted in the thread listed here (coming via kernel.org's
bugtracker)

 http://patchwork.kernel.org/patch/76023/
 
is missing some lines, and the patch attached at the end of the
thread is incomplete and malformed, as reported earlier. I guess this is
how it should have looked like (please correct me if I'm wrong):


--- /a/ccid.c	2010-02-06 23:17:12.000000000 +0100
+++ /b/ccid.c	2010-02-07 09:50:40.000000000 +0100
@@ -77,13 +77,13 @@
 	return err;
 }
 
-static struct kmem_cache *ccid_kmem_cache_create(int obj_size, char *slab_name_fmt, const char *fmt,...)
+static struct kmem_cache *ccid_kmem_cache_create(int obj_size, char *slab_name_fmt, int length, const char *fmt,...)
 {
 	struct kmem_cache *slab;
 	va_list args;
 
 	va_start(args, fmt);
-	vsnprintf(slab_name_fmt, sizeof(slab_name_fmt), fmt, args);
+	vsnprintf(slab_name_fmt, length, fmt, args);
 	va_end(args);
 
 	slab = kmem_cache_create(slab_name_fmt, sizeof(struct ccid) + obj_size, 0,
@@ -104,6 +104,7 @@
 	ccid_ops->ccid_hc_rx_slab =
 			ccid_kmem_cache_create(ccid_ops->ccid_hc_rx_obj_size,
 					       ccid_ops->ccid_hc_rx_slab_name,
+					       sizeof(ccid_ops->ccid_hc_rx_slab_name),
 					       "ccid%u_hc_rx_sock",
 					       ccid_ops->ccid_id);
 	if (ccid_ops->ccid_hc_rx_slab == NULL)
@@ -112,6 +113,7 @@
 	ccid_ops->ccid_hc_tx_slab =
 			ccid_kmem_cache_create(ccid_ops->ccid_hc_tx_obj_size,
 					       ccid_ops->ccid_hc_tx_slab_name,
+					       sizeof(ccid_ops->ccid_hc_tx_slab_name),
 					       "ccid%u_hc_tx_sock",
 					       ccid_ops->ccid_id);
 	if (ccid_ops->ccid_hc_tx_slab == NULL)

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