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: <46DFC964.9090008@bull.net>
Date:	Thu, 06 Sep 2007 11:33:24 +0200
From:	Nadia Derbey <Nadia.Derbey@...l.net>
To:	Andi Kleen <andi@...stfloor.org>
Cc:	linux-kernel@...r.kernel.org, matthltc@...ibm.com
Subject: Re: [RFC][PATCH 1/6] Storing ipcs into IDRs

Andi Kleen wrote:
> Nadia.Derbey@...l.net writes:
> 
> 
>>This patch introduces ipcs storage into IDRs. The main changes are:
>>  . This ipc_ids structure is changed: the entries array is changed into a
>>    root idr structure.
>>  . The grow_ary() routine is removed: it is not needed anymore when adding
>>    an ipc structure, since we are now using the IDR facility.
>>  . The ipc_rmid() routine interface is changed:
>>       . there is no need for this routine to return the pointer passed in as
>>         argument: it is now declared as a void
>>       . since the id is now part of the kern_ipc_perm structure, no need to
>>         have it as an argument to the routine
>>
> 
> 
> Thanks for doing this work. It was long overdue.
> 
> Do you have any data how this changes memory consumption with 
> many objects? 
> 
> -Andi
> 

Andi,

Here are the results I got when creating 32768 (IPCMNI) msg queues with 
the patched kernel:

http://akt.sourceforge.net/results/2.6.23-rc2-idr/msg11/output.new

It's the output from msg11.c. This script does what follows:
     . gets sysinfo(2) results
     . captures /proc/meminfo
     . captures /proc/slabinfo
     . creates XX msg queues (XX given as parameter)
     . captures /proc/meminfo
     . captures /proc/slabinfo
     . gets sysinfo results
     . outputs all the results
     . removes the created ipcs

sysinfo results: a BEFORE and an AFTER column are output where necessary.
BEFORE means "before creating the objects"
AFTER means "after the objects have been created"

meminfo results: the BEFORE and AFTER files are pasted

slabinfo results: only the differences between the BEFORE and the AFTER 
are output.


Here are also the sizes for the ref and the patched kernel:

size linux-2.6.23-rc2.ref/vmlinux linux-2.6.23-rc2/vmlinux
    text    data     bss     dec     hex filename
4432697  496450  602112 5531259  54667b linux-2.6.23-rc2.ref/vmlinux
4430747  496450  602112 5529309  545edd linux-2.6.23-rc2/vmlinux



The http://akt.sourceforge.net/results/2.6.23-rc2-idr/msg11 directory is 
structured as follows:

msg11.c: the script I used to generate the results
output.ref: the output from msg11 with the ref kernel
output.new: the output from msg11 with the patched kernel
size: the output from the size command
ref: directory with the results files for the ref kernel
new: directory with the results files for the patched kernel
In these 2 directories:
*_mem_*before: /proc/meminfo before creating the msg queues
*_mem_*after: /proc/meminfo after creating the msg queues
*_slab_*before: /proc/slabinfo before creating the msg queues
*_slab_*after: /proc/slabinfo after creating the msg queues

Regards,
Nadia

-
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