Messages in this thread | | | Date | Tue, 15 Jan 2008 18:40:52 +0900 | From | Yasunori Goto <> | Subject | Re: [RFC PATCH 4/4] [RESEND] Recomputing msgmni on memory add / remove |
| |
> Yasunori Goto wrote: > > Hello Nadia-san. > > > > > >>@@ -118,6 +122,10 @@ struct ipc_namespace { > >> size_t shm_ctlall; > >> int shm_ctlmni; > >> int shm_tot; > >>+ > >>+#ifdef CONFIG_MEMORY_HOTPLUG > >>+ struct notifier_block ipc_memory_hotplug; > >>+#endif > >> }; > > > > > > I'm sorry, but I don't see why each ipc namespace must have each callbacks > > of memory hotplug. > > I prefer only one callback for each subsystem, not for each namespace. > > In addition, the recompute_msgmni() calculation looks very similar for > > all ipc namespace. > > Or do you wish each ipc namespace have different callback for the future? > > > > Actually, this is what I wanted to do at the very beginning: have a > single callback that would recompute the msgmni for each ipc namespace. > But the issue here is that the namespaces are not linked to each other, > so I had no simple way to go through all the namespaces. > I solved the issue by having a callback for any single ipc namespace and > make it recompute the msgmni value for itslef.
The recompute_msg() must be called when new ipc_namespace is created/removed as you mentioned. I think namespaces should be linked each other for it in the end....
> > > > BTW, have you ever tested this patch? If you don't have any test environment > > for memory hotplug code, then I'll check it. :-) > > Well, I tested it but not in "real configuration": what I did is that I > changed the status by hand under sysfs to offline. I also changed > remove_memory() in mm/memory_hotplug.c in the following way (instead of > returninf EINVAL): > 1) decrease the total_ram pages > 2) call memory_notify(MEM_OFFLINE, NULL) > > and checked that the msgmni was recomputed.
You can also online again after offline by writing sysfs.
> But sure, if you are candidate to test it, that would be great!
Ok. I'll check it too. Bye.
-- Yasunori Goto
| |