On 14/12/20 12:53, Igor Mammedov wrote:
On Sat, 12 Dec 2020 00:24:25 +0100
Paolo Bonzini <pbonz...@redhat.com> wrote:

On 07/12/20 17:43, Igor Mammedov wrote:
       mc->default_ram_size = 0;
-    mc->default_ram_id = "ram";
+    mc->default_ram_id = NULL;
probably that will break:

   QEMU -m X -M none

No, it works.  "-m" is simply ignored, because the default memdev is
created here:
you mean it doesn't explode.
By default with current code memdev should not be created,
but it is created if users asks for it with -m.

Oh ok, got it. I'll leave this patch aside for now and later, when I get round to posting the ram_memdev_id cleanup, try to remember why I added it.

I'm not sure that any RAM on null machine is of any use at all
but the if we decide to get rid of it completely, then we need
to clean up
     /* RAM at address zero */
     if (mch->ram) {
         memory_region_add_subregion(get_system_memory(), 0, mch->ram);
     }

This would still be needed because you _can_ get a non-null mch->ram (via "-M memdev") even if mc->default_ram_id == NULL.

Paolo

and commit title/message should match what patch does and why.


      if (machine_class->default_ram_id && current_machine->ram_size &&
          numa_uses_legacy_mem() && !current_machine->ram_memdev_id) {
          create_default_memdev(current_machine, mem_path);
      }

and is thus skipped for -M none.

Paolo


maybe there is  a bug over there but
      "mc->default_ram_size = 0"
above, should result in
      current_machine->ram_size == 0
in case user hasn't provided "-m"
and hence memdev shouldn't be created




Reply via email to