qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] [PATCH 0/3] replace cpuid_*features fields with a featue wo


From: Eduardo Habkost
Subject: [Qemu-devel] [PATCH 0/3] replace cpuid_*features fields with a featue word array (v3)
Date: Tue, 18 Dec 2012 14:29:20 -0200

I would like to give emphasis to the following, from description of patch 3:

This should also help avoid bugs like the ones introduced when we added
cpuid_7_0_ebx_features. Today, adding a new feature word to the code
requires chaning 5 or 6 different places in the code, and it's very easy
to miss a problem when we forget to update one of those parts. See, for
example:

 * The bug solved by commit ffa8c11f0bbf47e1b7a3a62f97bc1da591c6734a;
 * The fact that check_features_against_host() still doesn't check all
   feature words as it is supposed to.


Changes in v3:
 - Removed the EXT2_PPRO_FEATURES patch
 - Rebased on top of:
   - afaerber's qom-cpu-next (commit cb97b7f), plus
   - Igor's "[PATCH 00/20 v2] x86 CPU cleanup (wave 2)"
     (but only patches 1-6 and 12)
   (See git tree below)
 - I tried to choose the patches that I find likely to be included soon,
   to try to reduce the need to rebase this patch again, but I know I
   probably haven't guessed correctly and a new rebase is probably going to
   be necessary.
 - Added "target-i386/cpu.c: remove last TAB character from the source"

Changes in v2:
 - Rebased on top of:
   Subject: [PATCH 0/2] target-i386: move CPU object creation to cpu.c (v2)
 - Wrote a sed script that can be used to reproduce exactly the same changes
   from patch 3:
   https://gist.github.com/4271991

Git tree for testing:
  git://github.com/ehabkost/qemu-hacks.git x86-cpu-feature-array.v3
  https://github.com/ehabkost/qemu-hacks/tree/x86-cpu-feature-array.v3


Original description:

I was planning to implement this only after we finished the rest of the work,
the changes are a bit intrusive. But now it looks like the CPUID feature bits
are getting into our way (e.g. the feature word array will allow us to simplify
the -cpu host and -cpu check/enforce code a lot, making it easier to convert
that code to use CPU subclasses), so I decided to submit it now.

Eduardo Habkost (3):
  target-i386/cpu.c: coding style fix
  target-i386/cpu.c: remove last TAB character from the source
  target-i386: replace cpuid_*features fields with a feature word array

 hw/kvm/clock.c            |   2 +-
 linux-user/elfload.c      |   2 +-
 linux-user/main.c         |   4 +-
 target-i386/cpu.c         | 586 ++++++++++++++++++++++++----------------------
 target-i386/cpu.h         |  30 ++-
 target-i386/helper.c      |   4 +-
 target-i386/kvm.c         |   5 +-
 target-i386/misc_helper.c |  14 +-
 target-i386/translate.c   |  10 +-
 9 files changed, 338 insertions(+), 319 deletions(-)

-- 
1.7.11.7




reply via email to

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