From: Avi Kivity <avi@qumranet.com>
To: Dave Hansen <dave@linux.vnet.ibm.com>
Cc: Roland Dreier <rdreier@cisco.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
kvm-devel <kvm@vger.kernel.org>,
"Anthony N. Liguori [imap]" <aliguori@us.ibm.com>
Subject: Re: KVM overflows the stack
Date: Thu, 17 Jul 2008 17:15:23 +0300 [thread overview]
Message-ID: <487F53FB.20708@qumranet.com> (raw)
In-Reply-To: <1216303561.11664.52.camel@nimitz>
Dave Hansen wrote:
> On Wed, 2008-07-16 at 23:08 -0700, Roland Dreier wrote:
>
>> > Yes, things like kvm_lapic_state are way too big to be on the
>> stack.
>>
>> I had a quick look at the code, and my worry about dynamic allocation
>> would be that handling allocation failure seems like it might get
>> tricky. Eg for handling struct kvm_pv_mmu_op_buffer (which is 528 bytes
>> on the stack in kvm_pv_mmu_op()) can you deal with an mmu op failing?
>>
>
> Well, you *better* be able to deal with it. :)
>
> This code is also doing a *ton* of copy_to/from_user(). If userspace
> had one of its input buffers swapped out (or one of its output buffers
> not faulted in yet) and we're out of memory enough to be failing
> kmallocs() then we're sure as heck also going to failing the user
> copies.
>
> I think it's a non-issue.
>
>
Yes, it's designed to be restartable. Returning 0 should be fine.
We can reduce the buffer size to 256 though. I wouldn't want an
allocation in this hot path.
--
error compiling committee.c: too many arguments to function
next prev parent reply other threads:[~2008-07-17 14:15 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-25 21:12 kvm causing memory corruption? ~2.6.25-rc6 Dave Hansen
2008-03-25 21:12 ` Dave Hansen
2008-03-26 9:50 ` [kvm-devel] " Avi Kivity
2008-03-26 16:52 ` Dave Hansen
2008-03-26 16:58 ` Avi Kivity
2008-03-26 16:58 ` Avi Kivity
2008-03-26 17:16 ` [kvm-devel] " Dave Hansen
2008-03-26 17:16 ` Dave Hansen
2008-03-27 9:36 ` [kvm-devel] " Avi Kivity
2008-03-27 9:36 ` Avi Kivity
2008-03-27 10:10 ` [kvm-devel] " Avi Kivity
2008-03-27 14:55 ` Dave Hansen
2008-03-27 14:59 ` Avi Kivity
2008-03-27 14:59 ` Avi Kivity
2008-03-27 16:30 ` [kvm-devel] " Dave Hansen
2008-06-02 22:30 ` kvm causing memory corruption? now 2.6.26-rc4 Dave Hansen
2008-06-03 0:59 ` Dave Hansen
2008-06-04 13:42 ` Avi Kivity
2008-06-06 7:41 ` Dave Hansen
2008-06-12 13:10 ` Avi Kivity
2008-06-16 18:07 ` Dave Hansen
2008-07-15 18:57 ` kvm causing memory corruption? now 2.6.26-rc8 Dave Hansen
2008-07-16 21:44 ` kvm causing memory corruption? now 2.6.26 Dave Hansen
2008-07-16 22:48 ` KVM overflows the stack Dave Hansen
2008-07-17 5:52 ` Avi Kivity
2008-07-17 6:08 ` Roland Dreier
2008-07-17 14:06 ` Dave Hansen
2008-07-17 14:15 ` Avi Kivity [this message]
2008-07-17 6:14 ` Dave Hansen
2008-07-17 6:42 ` Avi Kivity
2008-07-17 6:45 ` [PATCH] update kvm's anon_inodes.c for r/o bind mounts Dave Hansen
2008-07-19 7:33 ` Avi Kivity
2008-07-17 6:27 ` KVM overflows the stack Dave Hansen
2008-07-17 5:38 ` kvm causing memory corruption? now 2.6.26 Avi Kivity
2008-03-27 15:50 ` [kvm-devel] kvm causing memory corruption? ~2.6.25-rc6 Dave Hansen
2008-03-27 15:50 ` Dave Hansen
2008-03-27 15:53 ` [kvm-devel] " Avi Kivity
2008-03-27 15:53 ` Avi Kivity
2008-03-27 16:30 ` [kvm-devel] " Dave Hansen
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=487F53FB.20708@qumranet.com \
--to=avi@qumranet.com \
--cc=aliguori@us.ibm.com \
--cc=dave@linux.vnet.ibm.com \
--cc=kvm@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=rdreier@cisco.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.