qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] PING: [PATCH] backends/hostmem: Ignore ENOSYS while set


From: Paolo Bonzini
Subject: Re: [Qemu-devel] PING: [PATCH] backends/hostmem: Ignore ENOSYS while setting MPOL_DEFAULT
Date: Mon, 23 Nov 2015 11:11:28 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0


On 23/11/2015 11:09, Paolo Bonzini wrote:
> On 23/11/2015 07:41, Pavel Fedin wrote:
>>  Hello! No news for a long time, we are at RC stage. Could we get this in?
> 
> Yes, queued for -rc2.

... doh, Eduardo applied it to the NUMA tree already.  I missed that
backends/hostmem* is under NUMA and not memory.

Paolo

> Paolo
> 
>> Kind regards,
>> Pavel Fedin
>> Expert Engineer
>> Samsung Electronics Research center Russia
>>
>>> -----Original Message-----
>>> From: address@hidden [mailto:qemu-devel-
>>> address@hidden On Behalf Of Eduardo Habkost
>>> Sent: Tuesday, October 27, 2015 8:32 PM
>>> To: Pavel Fedin
>>> Cc: 'Paolo Bonzini'; address@hidden
>>> Subject: Re: [Qemu-devel] [PATCH] backends/hostmem: Ignore ENOSYS while 
>>> setting MPOL_DEFAULT
>>>
>>> On Tue, Oct 27, 2015 at 03:51:31PM +0300, Pavel Fedin wrote:
>>>> Currently hostmem backend fails if CONFIG_NUMA is enabled for the qemu
>>>> (default), but NUMA is not supported by the kernel. This makes it
>>>> impossible to use ivshmem in such configurations.
>>>>
>>>> This patch fixes the problem by ignoring ENOSYS error if policy is set to
>>>> MPOL_DEFAULT. This way the code behaves in the same way as if CONFIG_NUMA
>>>> was not defined. qemu will still fail if the user specifies some other
>>>> policy, so that the user knows it.
>>>>
>>>> Signed-off-by: Pavel Fedin <address@hidden>
>>>
>>> Reviewed-by: Eduardo Habkost <address@hidden>
>>>
>>> Thanks. Applied to numa tree, with the following indentation fix:
>>>
>>> diff --git a/backends/hostmem.c b/backends/hostmem.c
>>> index 94a4ac0..1b4eb45 100644
>>> --- a/backends/hostmem.c
>>> +++ b/backends/hostmem.c
>>> @@ -315,7 +315,7 @@ host_memory_backend_memory_complete(UserCreatable *uc, 
>>> Error **errp)
>>>                    maxnode ? backend->host_nodes : NULL, maxnode + 1, 
>>> flags)) {
>>>              if (backend->policy != MPOL_DEFAULT || errno != ENOSYS) {
>>>                  error_setg_errno(errp, errno,
>>> -                             "cannot bind memory to host NUMA nodes");
>>> +                                 "cannot bind memory to host NUMA nodes");
>>>                  return;
>>>              }
>>>          }
>>>
>>>> ---
>>>>  backends/hostmem.c | 6 ++++--
>>>>  1 file changed, 4 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/backends/hostmem.c b/backends/hostmem.c
>>>> index 41ba2af..94a4ac0 100644
>>>> --- a/backends/hostmem.c
>>>> +++ b/backends/hostmem.c
>>>> @@ -313,9 +313,11 @@ host_memory_backend_memory_complete(UserCreatable 
>>>> *uc, Error **errp)
>>>>          assert(maxnode <= MAX_NODES);
>>>>          if (mbind(ptr, sz, backend->policy,
>>>>                    maxnode ? backend->host_nodes : NULL, maxnode + 1, 
>>>> flags)) {
>>>> -            error_setg_errno(errp, errno,
>>>> +            if (backend->policy != MPOL_DEFAULT || errno != ENOSYS) {
>>>> +                error_setg_errno(errp, errno,
>>>>                               "cannot bind memory to host NUMA nodes");
>>>> -            return;
>>>> +                return;
>>>> +            }
>>>>          }
>>>>  #endif
>>>>          /* Preallocate memory after the NUMA policy has been instantiated.
>>>> --
>>>> 1.9.5.msysgit.0
>>>>
>>>>
>>>
>>> --
>>> Eduardo
>>
>>
>>
> 
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]