[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH for 2.1 2/2] memory-backend-file: improve error
From: |
Hu Tao |
Subject: |
Re: [Qemu-devel] [PATCH for 2.1 2/2] memory-backend-file: improve error handling |
Date: |
Fri, 4 Jul 2014 15:43:20 +0800 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Thu, Jul 03, 2014 at 10:05:56PM -0600, Eric Blake wrote:
> On 07/03/2014 08:56 PM, Hu Tao wrote:
> > On Thu, Jul 03, 2014 at 06:33:28AM -0600, Eric Blake wrote:
> >> On 07/03/2014 12:10 AM, Hu Tao wrote:
> >>> This patch fixes two problems of memory-backend-file:
> >>>
> >>> 1. If user adds a memory-backend-file object using object_add command,
> >>> specifying a non-existing directory for property mem-path, qemu
> >>> will core dump with message:
> >>>
> >>> /nonexistingdir: No such file or directory
> >>> Bad ram offset fffffffffffff000
> >>> Aborted (core dumped)
> >>>
> >>> 2. If user adds a memory-backend-file object using object_add command,
> >>> specifying a size that is less than huge page size, qemu
> >>> will core dump with message:
> >>>
> >>> Bad ram offset fffffffffffff000
> >>> Aborted (core dumped)
> >>>
> >>
> >> Might be nice if the commit message also shows the new message issued
> >> for the same cases after the patch is applied.
> >
> > OK.
> >
>
> >>>
> >>> if (memory < hpagesize) {
> >>> - return NULL;
> >>> + error_setg(errp, "memory size 0x" RAM_ADDR_FMT " should be
> >>> larger "
> >>> + "than huge page size 0x%" PRIx64, memory, hpagesize);
> >>> + goto error;
> >>
> >> Isn't exactly equal also allowed? Maybe a better wording is "should be
> >> a multiple of the huge page size"
> >
> > Yes. I'll change the error message.
> >
>
> Thinking about it more, should you also enforce that it is a multiple?
>
> As in: if (!memory || memory % hpageszie) { error... }
The memory size is rounded up to hpagesize when allocating memory, we
can waste at most hpagesize-1 bytes memory. I don't think it's a
problem.
In the other side, do you think we should give an error in the case like
-object memory-backend-ram,size=1111M(given 2M hpagesize)?
Regards,
Hu
- [Qemu-devel] [PATCH for 2.1 0/2] bug fixs for memory backend, Hu Tao, 2014/07/03
- [Qemu-devel] [PATCH for 2.1 1/2] memory: introduce memory_region_init_ram_nofail() and memory_region_init_ram_ptr_nofail(), Hu Tao, 2014/07/03
- [Qemu-devel] [PATCH for 2.1 2/2] memory-backend-file: improve error handling, Hu Tao, 2014/07/03
- Re: [Qemu-devel] [PATCH for 2.1 2/2] memory-backend-file: improve error handling, Eric Blake, 2014/07/03
- Re: [Qemu-devel] [PATCH for 2.1 2/2] memory-backend-file: improve error handling, Hu Tao, 2014/07/03
- Re: [Qemu-devel] [PATCH for 2.1 2/2] memory-backend-file: improve error handling, Eric Blake, 2014/07/04
- Re: [Qemu-devel] [PATCH for 2.1 2/2] memory-backend-file: improve error handling,
Hu Tao <=
- Re: [Qemu-devel] [PATCH for 2.1 2/2] memory-backend-file: improve error handling, Paolo Bonzini, 2014/07/04
- Re: [Qemu-devel] [PATCH for 2.1 2/2] memory-backend-file: improve error handling, Michael S. Tsirkin, 2014/07/06
- Re: [Qemu-devel] [PATCH for 2.1 2/2] memory-backend-file: improve error handling, Hu Tao, 2014/07/06