Thread (28 messages) 28 messages, 7 authors, 2011-03-30

Re: kmemleak for MIPS

From: Daniel Baluta <hidden>
Date: 2011-03-30 12:52:59
Also in: linux-mips, lkml

On Wed, Mar 30, 2011 at 3:27 PM, Eric Dumazet [off-list ref] wrote:
Le mercredi 30 mars 2011 à 13:17 +0100, Maxin John a écrit :
quoted
A quick observation from dmesg after placing printks in
"net/ipv4/udp.c" for MIPS-malta

CONFIG_BASE_SMALL : 0
table->mask : 127
UDP_HTABLE_SIZE_MIN :  256

dmesg:
....
...
TCP: Hash tables configured (established 8192 bind 8192)
TCP reno registered
CONFIG_BASE_SMALL : 0
UDP hash table entries: 128 (order: 0, 4096 bytes)
table->mask, UDP_HTABLE_SIZE_MIN : 127 256
CONFIG_BASE_SMALL : 0
UDP-Lite hash table entries: 128 (order: 0, 4096 bytes)
table->mask, UDP_HTABLE_SIZE_MIN : 127 256
NET: Registered protocol family 1
....
....

printk(s) are placed in udp.c as listed below:
diff --git a/net/ipv4/udp.c b/net/ipv4/udp.c
index 588f47a..ca7f6c6 100644
--- a/net/ipv4/udp.c
+++ b/net/ipv4/udp.c
@@ -2162,7 +2162,7 @@ __setup("uhash_entries=", set_uhash_entries);
 void __init udp_table_init(struct udp_table *table, const char *name)
 {
        unsigned int i;
-
+       printk("CONFIG_BASE_SMALL : %d \n", CONFIG_BASE_SMALL);
        if (!CONFIG_BASE_SMALL)
                table->hash = alloc_large_system_hash(name,
                        2 * sizeof(struct udp_hslot),
@@ -2175,6 +2175,8 @@ void __init udp_table_init(struct udp_table
*table, const char *name)
        /*
         * Make sure hash table has the minimum size
         */
+       printk("table->mask, UDP_HTABLE_SIZE_MIN : %d %d
\n",table->mask,UDP_HTABLE_SIZE_MIN);
+
        if (CONFIG_BASE_SMALL || table->mask < UDP_HTABLE_SIZE_MIN - 1) {
                table->hash = kmalloc(UDP_HTABLE_SIZE_MIN *
                                      2 * sizeof(struct udp_hslot), GFP_KERNEL);
~

How much memory do you have exactly on this machine ?

alloc_large_system_hash() has no parameter to specify a minimum hash
table, and UDP needs one.

If you care about losing 8192 bytes of memory, you could boot with
I can live with this, but is bad practice to have leaks even small ones.
Our concern was, to see if kmemleak with Maxin's patch
generates false positives.

So, I guess everything is fine regarding udp_init_table. We can move on,
integrating MIPS support for kmemleak :).

thanks,
Daniel.

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help