Re: [RFC PATCH 0/4] [RESEND] Change default MSGMNI tunable to scalewith lowmem

From: Nadia Derbey
Date: Tue Jan 15 2008 - 10:32:20 EST


Resending with the right address for the containers mailing list.
So sorry...


Nadia Derbey wrote:
Hi,

Yesterday, I posted to lkml a series of patches that make the ipc tunable msgmni scale with lowmem (see thread http://lkml.org/lkml/2008/1/14/196).

Since these patches watch for memory hotplug notifications, I thought that comments from linux-mm people would be interesting.

Also, since these patches change the ipc_namespace structure, comments from people subscribed at the containers mailing list would be welcome too.

Notes:
1) please, Cc me since I'm not subscribed to linux-mm.
2) sorry for lkml subsribers who are receiving this mail for the 2nd time, but I wanted all the comments to be shared.


Here is patch 0, the complete series can be found in the thread mentioned above.

-----------------

On large systems we'd like to allow a larger number of message queues. In some cases up to 32K. However simply setting MSGMNI to a larger value may cause problems for smaller systems.

The first patch of this series introduces a default maximum number of message queue ids that scales with the amount of lowmem.

Since msgmni is per namespace and there is no amount of memory dedicated to each namespace so far, the second patch of this series scales msgmni to the number of ipc namespaces.

In the last patch, a notifier block is added to the ipc namespace structure to manage memory hotplug. The callback routine is activated upon memory add/remove and it recomputes msgmni. One callback routine is added to the memory notifier chain each time an ipc namespace is allocated. It is removed when the coresponding ipc namespace is freed.

I still have 1 issue that I'll try to solve next:
. use the notification mechanism to recompute all the msg_ctlmni each
time an ipc namespace is created / removed.


These patches should be applied to 2.6.24-rc7, in the following order:

[PATCH 1/4]: ipc_scale_msgmni_with_lowmem.patch
[PATCH 2/4]: ipc_scale_msgmni_with_namespaces.patch
[PATCH 3/4]: ipc_slab_memory_callback_prio_to_const.patch
[PATCH 4/4]: ipc_recompute_msgmni_on_memory_hotplug.patch


Regards,
Nadia




--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/