All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paolo Bonzini <pbonzini@redhat.com>
To: Blue Swirl <blauwirbel@gmail.com>
Cc: qemu-devel <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] directory hierarchy
Date: Fri, 14 Sep 2012 23:28:45 +0200	[thread overview]
Message-ID: <5053A18D.10304@redhat.com> (raw)
In-Reply-To: <CAAu8pHvU=-m6+dPcZ2-nst-pX=nrB-btDcxmqK0RO8nS4KK7Xw@mail.gmail.com>

Il 14/09/2012 21:51, Blue Swirl ha scritto:
> On Fri, Sep 14, 2012 at 1:17 PM, Paolo Bonzini <pbonzini@redhat.com> wrote:
>> Hi all,
>>
>> here is a proposal for moving around 150 C files currently in the
>> toplevel directory to separate, well-delimited subdirectories.  Header
>> files would be moved for now in include/, preparing for subsequent
>> reorganization of headers.
>>
>> Usually the files would keep their names, but I loathe names starting
>> with qemu-* so I took the occasion to rename those.
>>
>> This does not touch the hw/ directory, which is its own mess and worth a
>> separate discussion.  Cleaning it up may require introducing more
>> CONFIG_* symbols and moving stuff to libhw whenever possible (for
>> example if we want all NICs in hw/net, all RTCs in hw/rtc, etc. perhaps
>> with some exceptions for USB).
>>
>> Opinions, flames, "stop this guy"s are welcome as usual.
> 
> Good idea.

>> exec:
> 
> These files need cleanup so that TCG code gets into tcg/. Maybe also
> TB and CPUTLB handling.
> 
>> cpu-exec.c
>> disas.c
>> exec.c
>> gdbstub.c
>> tci.c (note: TCI can't go in tcg/ for licensing reasons)
> 
> The directory organization should not be affected by licensing issues,
> it's licenses of each file that counts. We could create a new
> directory and move code from TCG to that.

exec/ is basically the common parts of user- and system-mode emulation.
 It's unrelated to separating TCG from other accelerators.

>> translate-all.c

>> sysemu:
>> arch_init.c
>> balloon.c
>> cpus.c
>> cputlb.c
>> cursor.c
>> device_tree.c
>> dump-stub.c
>> dump.c
>> ioport.c
>> kvm-all.c
>> kvm-stub.c
> 
> How about kvm and xen as top level directories?

Note sure, it's just 2-3 files each for now.

>> memory.c
>> memory_mapping-stub.c
>> memory_mapping.c
>> os-posix.c
>> os-win32.c
>> pflib.c
>> qemu-error.c                    sysemu/error.c
>> qemu-seccomp.c                  sysemu/seccomp.c
>> qtest.c
>> vl.c
>> xen-all.c
>> xen-mapcache.c
>> xen-stub.c
>> qemu-options.hx
>>
>> sysemu/block:
> 
> This distinction is not so clear to me. For example, why do block/ and
> qobject/ reside in the top level?

Because they are used by tools.  sysemu/ is not going to be used by
tools nor user-mode emulation.

>> block/stream.c
>> blockdev.c
>>
>> sysemu/bt:
>> bt-host.c               sysemu/bt/host.c
>> bt-vhci.c               sysemu/bt/vhci.c
>>
>> sysemu/char:
>> qemu-char.c                     sysemu/char/chardev.c
>> qemu-sockets.c                  sysemu/char/sockets.c
>> spice-qemu-char.c               sysemu/char/spice.c
>>
>> sysemu/migration:
>> block-migration.c       migration/block.c
>> buffered_file.c
>> migration-exec.c
>> migration-fd.c
>> migration-tcp.c
>> migration-unix.c
>> migration.c
>> page_cache.c
>> savevm.c
>>
>> sysemu/monitor:
>> hmp.c
>> monitor.c
>> qmp.c
>> readline.c
>> hmp-commands.hx
>> qmp-commands.hx
> 
> I think audio and maybe net could also fit here as subdirectories of sysemu.

Yes, also ui/, fsdev/, slirp/, but I omitted those for simplicity.

Paolo

  reply	other threads:[~2012-09-14 21:28 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-14 13:17 [Qemu-devel] directory hierarchy Paolo Bonzini
2012-09-14 13:36 ` Peter Maydell
2012-09-14 13:53   ` Paolo Bonzini
2012-09-16 14:40     ` Anthony Liguori
2012-09-17  7:47       ` Paolo Bonzini
2012-09-14 13:44 ` Luiz Capitulino
2012-09-14 14:03   ` Paolo Bonzini
2012-09-14 13:47 ` Daniel P. Berrange
2012-09-14 13:57   ` Paolo Bonzini
2012-09-14 13:48 ` Peter Maydell
2012-09-14 13:55   ` Paolo Bonzini
2012-09-14 14:00     ` Peter Maydell
2012-09-14 14:37 ` Stefan Weil
2012-09-14 16:36   ` Paolo Bonzini
2012-09-14 16:09 ` Kevin Wolf
2012-09-14 16:45   ` Paolo Bonzini
2012-09-14 19:51 ` Blue Swirl
2012-09-14 21:28   ` Paolo Bonzini [this message]
2012-09-19 12:54   ` Avi Kivity
2012-09-19 19:57     ` Blue Swirl
2012-09-20 11:31       ` Avi Kivity
2012-09-22 13:15         ` Blue Swirl
2012-09-23  8:25           ` Avi Kivity
2012-09-23 16:07             ` Blue Swirl
2012-09-24  9:54               ` Avi Kivity
2012-09-16 14:44 ` Anthony Liguori
2012-09-17  7:52   ` Paolo Bonzini
2012-09-17 13:04     ` Anthony Liguori

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=5053A18D.10304@redhat.com \
    --to=pbonzini@redhat.com \
    --cc=blauwirbel@gmail.com \
    --cc=qemu-devel@nongnu.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 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.