LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Nadia Derbey <Nadia.Derbey@bull.net>
To: Nadia Derbey <Nadia.Derbey@bull.net>
Cc: Andrew Morton <akpm@linux-foundation.org>,
	containers@lists.linux-foundation.org,
	linux-kernel@vger.kernel.org, linux-mm@kvack.org, cmm@us.ibm.com,
	matthltc@us.ibm.com
Subject: Re: [PATCH 7/8] Do not recompute msgmni anymore if explicitely set by user
Date: Tue, 12 Feb 2008 10:45:27 +0100	[thread overview]
Message-ID: <47B16AB7.1050100@bull.net> (raw)
In-Reply-To: <47B167AF.6010008@bull.net>

[-- Attachment #1: Type: text/plain, Size: 1937 bytes --]

Nadia Derbey wrote:
> Andrew Morton wrote:
> 
>> On Mon, 11 Feb 2008 15:16:53 +0100
>> Nadia.Derbey@bull.net wrote:
>>
>>
>>> [PATCH 07/08]
>>>
>>> This patch makes msgmni not recomputed anymore upon ipc namespace 
>>> creation /
>>> removal or memory add/remove, as soon as it has been set from userland.
>>>
>>> As soon as msgmni is explicitely set via procfs or sysctl(), the 
>>> associated
>>> callback routine is unregistered from the ipc namespace notifier chain.
>>>
>>
>>
>> The patch series looks pretty good.
>>
>>
>>> ===================================================================
>>> --- linux-2.6.24-mm1.orig/ipc/ipc_sysctl.c    2008-02-08 
>>> 16:07:15.000000000 +0100
>>> +++ linux-2.6.24-mm1/ipc/ipc_sysctl.c    2008-02-08 
>>> 16:08:32.000000000 +0100
>>> @@ -35,6 +35,24 @@ static int proc_ipc_dointvec(ctl_table *
>>>     return proc_dointvec(&ipc_table, write, filp, buffer, lenp, ppos);
>>> }
>>>
>>> +static int proc_ipc_callback_dointvec(ctl_table *table, int write,
>>> +    struct file *filp, void __user *buffer, size_t *lenp, loff_t *ppos)
>>> +{
>>> +    size_t lenp_bef = *lenp;
>>> +    int rc;
>>> +
>>> +    rc = proc_ipc_dointvec(table, write, filp, buffer, lenp, ppos);
>>> +
>>> +    if (write && !rc && lenp_bef == *lenp)
>>> +        /*
>>> +         * Tunable has successfully been changed from userland:
>>> +         * disable its automatic recomputing.
>>> +         */
>>> +        unregister_ipcns_notifier(current->nsproxy->ipc_ns);
>>> +
>>> +    return rc;
>>> +}
>>
>>
>>
>> If you haven't done so, could you please check that it all builds cleanly
>> with CONFIG_PROCFS=n, and that all code which isn't needed if procfs is
>> disabled is not present in the final binary?
>>
>>
>>
>>
> 
> Andrew,
> 
> it builds fine, modulo some changes in ipv4 and ipv6 (see attached patch 
> - didn't find it in the hot fixes).
> 
> Regards,
> Nadia
> 
> 

Oops, forgot the patch. Thx Benjamin!




[-- Attachment #2: ip_v4_v6_procfs.patch --]
[-- Type: text/x-patch, Size: 1957 bytes --]

Fix header files to let IPV4 and IPV6 build if CONFIG_PROC_FS=n

Signed-off-by: Nadia Derbey <Nadia.Derbey@bull.net>

---
 include/net/ip_fib.h |   13 ++++++++++++-
 include/net/ipv6.h   |    6 +++---
 2 files changed, 15 insertions(+), 4 deletions(-)

Index: linux-2.6.24-mm1/include/net/ip_fib.h
===================================================================
--- linux-2.6.24-mm1.orig/include/net/ip_fib.h	2008-02-12 11:03:40.000000000 +0100
+++ linux-2.6.24-mm1/include/net/ip_fib.h	2008-02-12 11:09:40.000000000 +0100
@@ -266,6 +266,17 @@ static inline void fib_res_put(struct fi
 #ifdef CONFIG_PROC_FS
 extern int __net_init  fib_proc_init(struct net *net);
 extern void __net_exit fib_proc_exit(struct net *net);
-#endif
+#else /* CONFIG_PROC_FS */
+static inline int fib_proc_init(struct net *net)
+{
+	return 0;
+}
+
+static inline int fib_proc_exit(struct net *net)
+{
+	return 0;
+}
+
+#endif /* CONFIG_PROC_FS */
 
 #endif  /* _NET_FIB_H */
Index: linux-2.6.24-mm1/include/net/ipv6.h
===================================================================
--- linux-2.6.24-mm1.orig/include/net/ipv6.h	2008-02-07 13:40:38.000000000 +0100
+++ linux-2.6.24-mm1/include/net/ipv6.h	2008-02-12 11:16:27.000000000 +0100
@@ -586,9 +586,6 @@ extern int ip6_mc_msfget(struct sock *sk
 			 int __user *optlen);
 
 #ifdef CONFIG_PROC_FS
-extern struct ctl_table *ipv6_icmp_sysctl_init(struct net *net);
-extern struct ctl_table *ipv6_route_sysctl_init(struct net *net);
-
 extern int  ac6_proc_init(void);
 extern void ac6_proc_exit(void);
 extern int  raw6_proc_init(void);
@@ -621,6 +618,9 @@ static inline int snmp6_unregister_dev(s
 extern ctl_table ipv6_route_table_template[];
 extern ctl_table ipv6_icmp_table_template[];
 
+extern struct ctl_table *ipv6_icmp_sysctl_init(struct net *net);
+extern struct ctl_table *ipv6_route_sysctl_init(struct net *net);
+
 extern int ipv6_sysctl_register(void);
 extern void ipv6_sysctl_unregister(void);
 #endif

  parent reply	other threads:[~2008-02-12  9:47 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-11 14:16 [PATCH 0/8] Change default MSGMNI tunable to scale with lowmem (v3) Nadia.Derbey
2008-02-11 14:16 ` [PATCH 1/8] Scaling msgmni to the amount of lowmem Nadia.Derbey
2008-02-16  5:59   ` Andrew Morton
2008-02-18  9:19     ` Nadia Derbey
2008-02-18 13:08       ` Nadia Derbey
2008-02-19  8:50         ` [LTP] " Subrata Modak
2008-02-19 17:16           ` Nadia Derbey
2008-02-19 22:16             ` Matt Helsley
2008-02-21  8:39               ` Nadia Derbey
2008-02-21 12:36               ` Nadia Derbey
2008-02-21 13:02                 ` Nadia Derbey
2008-02-21 13:39                   ` Subrata Modak
2008-02-22  6:25                     ` Nadia Derbey
2008-02-22  8:41                       ` Subrata Modak
2008-02-20  9:44             ` Subrata Modak
2008-04-29 20:28   ` Tony Luck
2008-05-05  8:45     ` Nadia Derbey
2008-05-06 16:42       ` Luck, Tony
2008-05-06 18:05         ` Serge E. Hallyn
2008-05-07  5:37           ` Nadia Derbey
2008-05-07 13:17             ` Serge E. Hallyn
2008-05-07 18:12               ` Matt Helsley
2008-05-07  5:13         ` Nadia Derbey
2008-02-11 14:16 ` [PATCH 2/8] Scaling msgmni to the number of ipc namespaces Nadia.Derbey
2008-02-11 14:16 ` [PATCH 3/8] Defining the slab_memory_callback priority as a constant Nadia.Derbey
2008-02-11 14:16 ` [PATCH 4/8] Recomputing msgmni on memory add / remove Nadia.Derbey
2008-02-11 14:16 ` [PATCH 5/8] Invoke the ipcns notifier chain as a work item Nadia.Derbey
2008-02-11 14:16 ` [PATCH 6/8] Recomputing msgmni on ipc namespace creation/removal Nadia.Derbey
2008-02-11 14:16 ` [PATCH 7/8] Do not recompute msgmni anymore if explicitely set by user Nadia.Derbey
2008-02-11 20:24   ` Andrew Morton
2008-02-12  9:32     ` Nadia Derbey
2008-02-12  9:44       ` Andrew Morton
2008-02-12 15:15         ` Nadia Derbey
2008-02-12 19:44           ` Andrew Morton
2008-02-14 11:47             ` Nadia Derbey
2008-02-12  9:45       ` Nadia Derbey [this message]
2008-02-11 14:16 ` [PATCH 8/8] Re-enable msgmni automatic recomputing msgmni if set to negative Nadia.Derbey
2008-02-11 20:27   ` Andrew Morton
2008-02-12 11:38     ` Nadia Derbey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=47B16AB7.1050100@bull.net \
    --to=nadia.derbey@bull.net \
    --cc=akpm@linux-foundation.org \
    --cc=cmm@us.ibm.com \
    --cc=containers@lists.linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=matthltc@us.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).