From: Joe Korty <joe.korty@ccur.com>
To: KOSAKI Motohiro <kosaki.motohiro@gmail.com>
Cc: "dledford@redhat.com" <dledford@redhat.com>,
"akpm@linux-foundation.org" <akpm@linux-foundation.org>,
"torvalds@linux-foundation.org" <torvalds@linux-foundation.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"amwang@redhat.com" <amwang@redhat.com>
Subject: Re: [PATCH 6/4] ipc/mqueue: don't use kmalloc(KMALLOC_MAX_SIZE)
Date: Thu, 27 Oct 2011 12:41:40 -0400 [thread overview]
Message-ID: <20111027164140.GD21264@tsunami.ccur.com> (raw)
In-Reply-To: <4EA8294C.2050703@gmail.com>
On Wed, Oct 26, 2011 at 11:37:48AM -0400, KOSAKI Motohiro wrote:
>
> KMALLOC_MAX_SIZE is no good threshold. It is extream high and
> problematic. Unfortunately, some silly drivers depend on and
> we can't change it. but any new code don't use such extream
> ugly high order allocations. It bring us awful fragmentation
> issue and system slowdown.
>
> Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@gmail.com>
> Cc: Doug Ledford <dledford@redhat.com>
> Cc: Amerigo Wang <amwang@redhat.com>
> Cc: Serge E. Hallyn <serue@us.ibm.com>
> Cc: Jiri Slaby <jslaby@suse.cz>
> Cc: Joe Korty <joe.korty@ccur.com>
> ---
> ipc/mqueue.c | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/ipc/mqueue.c b/ipc/mqueue.c
> index 229a5fb..91ca145 100644
> --- a/ipc/mqueue.c
> +++ b/ipc/mqueue.c
> @@ -151,7 +151,7 @@ static struct inode *mqueue_get_inode(struct super_block *sb,
> info->attr.mq_msgsize = attr->mq_msgsize;
> }
> mq_msg_tblsz = info->attr.mq_maxmsg * sizeof(struct msg_msg *);
> - if (mq_msg_tblsz > KMALLOC_MAX_SIZE)
> + if (mq_msg_tblsz > PAGE_SIZE)
> info->messages = vmalloc(mq_msg_tblsz);
> else
> info->messages = kmalloc(mq_msg_tblsz, GFP_KERNEL);
> @@ -275,7 +275,7 @@ static void mqueue_evict_inode(struct inode *inode)
> spin_lock(&info->lock);
> for (i = 0; i < info->attr.mq_curmsgs; i++)
> free_msg(info->messages[i]);
> - if (info->attr.mq_maxmsg * sizeof(struct msg_msg *) > KMALLOC_MAX_SIZE)
> + if (is_vmalloc_addr(info->messages))
> vfree(info->messages);
> else
> kfree(info->messages);
> --
> 1.7.5.2
Acked-by: Joe Korty <joe.korty@ccur.com>
next prev parent reply other threads:[~2011-10-27 16:55 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-27 22:30 Various cleanups and a couple fixes to ipc/mqueue Doug Ledford
2011-09-27 22:30 ` [PATCH 1/4] ipc/mqueue: cleanup definition names and locations Doug Ledford
2011-09-27 22:30 ` [PATCH 2/4] ipc/mqueue: switch back to using non-max values on create Doug Ledford
2011-10-25 0:56 ` KOSAKI Motohiro
2011-10-26 15:36 ` KOSAKI Motohiro
[not found] ` <4EA828E4.1070409@gmail.com>
2011-10-26 15:37 ` [PATCH 5/4] ipc/mqueue: revert bump up DFLT_*MAX KOSAKI Motohiro
2011-10-26 17:28 ` Doug Ledford
2011-10-27 16:41 ` Joe Korty
2011-10-26 15:37 ` [PATCH 6/4] ipc/mqueue: don't use kmalloc(KMALLOC_MAX_SIZE) KOSAKI Motohiro
2011-10-26 17:29 ` Doug Ledford
2011-10-27 16:41 ` Joe Korty [this message]
2011-10-26 15:38 ` [PATCH 7/4] ipc/mqueue: separate mqueue default value from maximum value KOSAKI Motohiro
2011-10-26 17:31 ` Doug Ledford
2011-10-27 16:44 ` Joe Korty
2011-09-27 22:30 ` [PATCH 3/4] ipc/mqueue: enforce hard limits Doug Ledford
2011-09-27 22:30 ` [PATCH 4/4] ipc/mqueue: update maximums for the mqueue subsystem Doug Ledford
2011-10-25 1:00 ` KOSAKI Motohiro
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=20111027164140.GD21264@tsunami.ccur.com \
--to=joe.korty@ccur.com \
--cc=akpm@linux-foundation.org \
--cc=amwang@redhat.com \
--cc=dledford@redhat.com \
--cc=kosaki.motohiro@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
/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
Powered by JetHome