6e99f5741f
New in this release: =================== * Initial support for Trusted Platform Module (TPM) version 2.0 * Several USB XHCI timing fixes on real hardware * Support for "LSI MPT Fusion" scsi controllers on QEMU * Support for virtio devices mapped above 4GB * Several bug fixes and code cleanups git shortlog rel-1.9.3..rel-1.10.0 ================================== Alex Williamson (1): fw/pci: Add support for mapping Intel IGD via QEMU Cao jin (1): Fix comment typo Cole Robinson (1): biostables: Support SMBIOS 2.6+ UUID format Dana Rubin (2): pvscsi: Fix incorrect arguments order in call to memalign_low pvscsi: Use high memory for rings Don Slutz (1): Support for booting from LSI Logic LSI53C1030, SAS1068, SAS1068e Gerd Hoffmann (4): ahci: set transfer mode according to the capabilities of connected drive virtio: uninline _vp_{read,write} virtio: pci cfg access virtio: fix virtio-pci Haozhong Zhang (1): fw/msr_feature_control: add support to set MSR_IA32_FEATURE_CONTROL Igor Mammedov (3): paravirt: disable legacy bios tables in case of more than 255 CPUs add helpers to read etc/boot-cpus at resume time support booting with more than 255 CPUs Kevin O'Connor (124): usb: Allow configuration of sigatt time (in etc/usb-time-sigatt) xhci: Check for device disconnects during USB2 reset polling sdcard: Only enable error_irq_enable for bits defined in SDHCI v1 spec sdcard: fix typo causing 32bit write to 16bit block_size field sdcard: Enable extra debugging on sdcard_waitw() timeout acpi_extract: Move main code to new function main() acpi_extract: Make the generated .hex files more human readable acpi_extract: Don't generate unused (and empty) q35-acpi-dsdt.hex file acpi: Don't build SSDT files on every build; store them in git acpi: Remove build check for iasl tpm: Move standard definitions from tcgbios.h to new file std/tcg.h util.h: Minor - HaveRunPost is in misc.c not resume.c tpm: Add "static" declaration to functions not used outside tcgbios.c tpm: Move code around in tcgbios.c tpm: Move error recovery from tpm_extend_acpi_log() to only caller tpm: Open code tpm_ipl() into callers tpm: Change tpm_add_measurement() to tpm_add_action() tpm: Move tpm_add_bootdevice() into callers tpm: Move tpm_start_option_rom_scan() and tpm_calling_int19h() into callers tpm: pcpes->event is a variable length array tpm: Don't pass entry_count around in parameters to/from tpm_extend_acpi_log() tpm: There is no need to pass pcrindex to hash_log_extend_event() tpm: Perform hashing separately from logging tpm: There is no need to pass event_length to hash/extend functions tpm: Avoid scatter-gather copying in build_and_send_cmd() tpm: Don't implement scatter-gather in transmit() tpm: Merge tpm_log_event() and tpm_extend_acpi_log() tpm: Merge tpm_log_extend_event() and tpm_extend(); extend before logging xhci: Wait for port enable even for USB3 devices xhci: Improve port status change debugging xhci: Disable slot on failed set_address command nmi: Don't try to switch onto extra stack in NMI handler scsi: Do not call printf() from scsi_is_ready() block: Report drive->sectors using "%u" instead of "%d" tpm: Add banner separating the TCG bios interface code from TCG menu code tpm: Avoid macro expansion of tpm request / response structs tpm: Simplify hardware probe and detection checks tpm: Add wrapper function tpmhw_set_timeouts() tpm: Move TPM hardware functions from tcgbios.c to hw/tpm_drivers.c tpm: Rework TPM interface shutdown support tpm: Simplify tcpa probe tpm: Introduce tpm_get_capability() helper function tpm: Eliminate response buffer parameter from build_and_send_cmd() tpm: Don't return a status from external bios measurement functions tpm: No need to check the return status of measurements tpm: Don't call tpm_set_failure() from tpm_log_extend_event() tpm: Don't use 16bit BIOS return codes in build_and_send_cmd() tpm: Don't use 16bit BIOS return codes in tpm_log_event() tpm: Don't use 16bit BIOS return codes in tpmhw_* functions tpm: Don't use 16bit BIOS return codes in TPM menu functions usb: Remove usbdev->slotid field coreboot: Check for unaligned cbfs header resume: Make KVM soft reboot loop detection more flexible post: Always set HaveRunPost prior to setting any other global variable kbd: Don't treat scancode and asciicode as separate values kbd: Refactor capslock and numlock handling ehci: Only delay UHCI/OHCI port scan until after EHCI setup completes usb: Eliminate USB controller setup thread pci: Add helper functions for internal driver BAR handling ahci: Convert to new PCI BAR helper functions ata: Convert to new PCI BAR helper functions esp-scsi: Convert to new PCI BAR helper functions lsi-scsi: Convert to new PCI BAR helper functions megasas: Convert to new PCI BAR helper functions pvscsi: Convert to new PCI BAR helper functions sdcard: Convert to new PCI BAR helper functions ehci: Convert to new PCI BAR helper functions ohci: Convert to new PCI BAR helper functions uhci: Convert to new PCI BAR helper functions xhci: Convert to new PCI BAR helper functions virtio: Convert to new PCI BAR helper functions pci: Consistently set pci->have_drivers for devices with internal drivers pci: Implement '%pP' printf handler for 'struct pci_device' pointers pci: Move code in pci.c that is specific to pciinit.c to pciinit.c pci: Split low-level pci code from higher-level 'struct pci_device' code scsi: Always use MAXDESCSIZE when building drive description block: Move drive setup to new function block_setup() tpm: Unify tpm_fill_hash()/tpm_log_extend_event() and use in BIOS interface docs: Note release date of 1.9.1 build: fix .text section address alignment tpm: Write logs in TPM 2 format mpt-scsi: Declare 'int i' outside of for loop for older compilers block: Move send_disk_op() from block.c to disk.c disk: Avoid stack_hop() path if already on the extra stack optionroms: Drop support for CONFIG_OPTIONROMS_DEPLOYED shadow: Batch PCI config writes virtio: Use threads when scanning for virtio devices scsi: Launch a thread when scanning for drives in the scsi drivers docs: Note release date of 1.9.2 usb-xhci: Remove unused const variables tcgbios: Remove unused const variable vgabios: Remove special case of dh==0xff in handle_1013() vgabios: Don't check for special case of page==0xff on external calls vgabios: Simplify set_cursor_pos() docs: Note release date of 1.9.3 vgabios: Simplify scroll logic blockcmd: CMD_SCSI op is only used in 32bit mode swcursor: Move swcursor code from vgafb.c to new file swcursor.c swcursor: Concentrate swcursor logic in swcursor.c vgafb: Move header definitions from vgabios.h to new file vgafb.h vgainit: Move video param setup to stdvga_build_video_param() vgautil: Add new header file with misc function and variable definitions vgautil: Move generic definitions from stdvga.h to vgautil.h vgautil: Move definitions from cbvga.h and clext.h to vgautil.h version: Update header files now that version.c is not auto generated checkstack: Handle conditional checks at start of functions tpm: Append to TPM2 log the hashes used for PCR extension ps2: Remove stale check for timeout warning on reset pic: The default hardware interrupt handlers should not take a parameter kbd: Implement 101-key keyboard keycode mapping kbd: Implement extended keycode mappings for keypad-enter and keypad-/ kbd: Suppress keys without mappings kbd: Merge bda->kbd_flag0 and bda->kbd_flag1 kbd: Extract out shift flag setting into new function kbd: Move checking for special keys in __process_keys() into switch kbd: Ignore fake shift keys usb-hid: Generate Ctrl+Break and Alt+SysReq keys kbd: Generate interrupt events for SysReq, PrtScr, and Break post: Map int 0x05 to entry point kbd: Move extended and release events out of special key detection switch build: Be sure to also include out/*.d in Makefile smp: consolidate CPU APIC ID detection and accounting build: Add -fno-pie to the gcc flags when available docs: Note v1.10.0 release Marcel Apfelbaum (2): fw/pci: do not automatically allocate IO region for PCIe bridges fw/pci: add Q35 S3 support Matt DeVillier (1): sdcard: skip detection of PCI sdhci controllers if etc/sdcard used Paolo Bonzini (1): smp: restore MSRs on S3 resume Piotr Król (1): docs: fix various typos and inconsistency Roger Pau Monne (1): build: fix typo in buildversion.py Stefan Berger (34): tpm: Temporarily deactivate the TPM in case of failure tpm: Refactor function building TPM commands tpm: Refactor the parameters being passed to tpm_extend_acpi_log tpm: Refactor hash_log_event BIOS interface function tpm: Refactor hash_log_extend_event tpm: fix compiler warning with older gcc versions tpm: Drop code using the TPM for sha1 tpm: Set timeouts and durations to microsecond values tpm: Cache all log related pointers in tpm_state tpm: Refactor pass_through_to_tpm tpm: Rename remaining interrupt functions tpm: Remove check for working TPM from TPM interrupt handler tpm: Check length parameter of the array tpm: Add a menu for TPM configuration tpm: Copy digest into HashLogExentEvent response tpm: Move assert_physical_presence and dependencies tpm: Add support for harware physical presence tpm: Rework the assertion of physical presence tpm: Remove usage of PP_CMD_ENABLE from all but one place tpm: Do not set TPM in failure mode if menu command fails tpm: Extend TPM TIS with TPM 2 support. tpm: Factor out tpm_extend tpm: Prepare code for TPM 2 functions tpm: Implement tpm20_startup and tpm20_s3_resume tpm: Implement tpm20_set_timeouts tpm: Implement tpm20_prepboot tpm: Implement tpm20_extend tpm: Implement tpm20_menu tpm: Implement TPM 2's tpm_set_failure part tpm: Filter TPM commands in passthrough API tpm: Retrieve the PCR Bank configuration tpm: Restructure tpm20_extend to use buffer and take hash as parameter tpm: Refactor tpml_digest_values_sha1 structure tpm: Extend tpm20_extend to support extending to multiple PCR banks Zheng Bao (1): splash: Skip the RGB555 mode Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> |
||
---|---|---|
audio | ||
backends | ||
block | ||
bsd-user | ||
contrib | ||
crypto | ||
default-configs | ||
disas | ||
docs | ||
dtc@65cc4d2748 | ||
fpu | ||
fsdev | ||
gdb-xml | ||
hw | ||
include | ||
io | ||
libdecnumber | ||
linux-headers | ||
linux-user | ||
migration | ||
nbd | ||
net | ||
pc-bios | ||
pixman@87eea99e44 | ||
po | ||
qapi | ||
qga | ||
qobject | ||
qom | ||
replay | ||
roms | ||
scripts | ||
slirp | ||
stubs | ||
target-alpha | ||
target-arm | ||
target-cris | ||
target-i386 | ||
target-lm32 | ||
target-m68k | ||
target-microblaze | ||
target-mips | ||
target-moxie | ||
target-openrisc | ||
target-ppc | ||
target-s390x | ||
target-sh4 | ||
target-sparc | ||
target-tilegx | ||
target-tricore | ||
target-unicore32 | ||
target-xtensa | ||
tcg | ||
tests | ||
trace | ||
ui | ||
util | ||
.dir-locals.el | ||
.exrc | ||
.gitignore | ||
.gitmodules | ||
.mailmap | ||
.travis.yml | ||
accel.c | ||
aio-posix.c | ||
aio-win32.c | ||
arch_init.c | ||
async.c | ||
balloon.c | ||
block.c | ||
blockdev-nbd.c | ||
blockdev.c | ||
blockjob.c | ||
bootdevice.c | ||
bt-host.c | ||
bt-vhci.c | ||
Changelog | ||
CODING_STYLE | ||
configure | ||
COPYING | ||
COPYING.LIB | ||
cpu-exec-common.c | ||
cpu-exec.c | ||
cpus-common.c | ||
cpus.c | ||
cputlb.c | ||
device_tree.c | ||
device-hotplug.c | ||
disas.c | ||
dma-helpers.c | ||
dump.c | ||
exec.c | ||
gdbstub.c | ||
HACKING | ||
hmp-commands-info.hx | ||
hmp-commands.hx | ||
hmp.c | ||
hmp.h | ||
iohandler.c | ||
ioport.c | ||
iothread.c | ||
kvm-all.c | ||
kvm-stub.c | ||
LICENSE | ||
main-loop.c | ||
MAINTAINERS | ||
Makefile | ||
Makefile.objs | ||
Makefile.target | ||
memory_mapping.c | ||
memory.c | ||
module-common.c | ||
monitor.c | ||
numa.c | ||
os-posix.c | ||
os-win32.c | ||
page_cache.c | ||
qapi-schema.json | ||
qdev-monitor.c | ||
qdict-test-data.txt | ||
qemu-bridge-helper.c | ||
qemu-char.c | ||
qemu-doc.texi | ||
qemu-ga.texi | ||
qemu-img-cmds.hx | ||
qemu-img.c | ||
qemu-img.texi | ||
qemu-io-cmds.c | ||
qemu-io.c | ||
qemu-nbd.c | ||
qemu-nbd.texi | ||
qemu-option-trace.texi | ||
qemu-options-wrapper.h | ||
qemu-options.h | ||
qemu-options.hx | ||
qemu-seccomp.c | ||
qemu-tech.texi | ||
qemu-timer.c | ||
qemu.nsi | ||
qemu.sasl | ||
qmp.c | ||
qtest.c | ||
README | ||
replication.c | ||
replication.h | ||
rules.mak | ||
softmmu_template.h | ||
spice-qemu-char.c | ||
tcg-runtime.c | ||
tci.c | ||
thread-pool.c | ||
thunk.c | ||
tpm.c | ||
trace-events | ||
translate-all.c | ||
translate-all.h | ||
translate-common.c | ||
user-exec.c | ||
VERSION | ||
version.rc | ||
vl.c | ||
xen-common-stub.c | ||
xen-common.c | ||
xen-hvm-stub.c | ||
xen-hvm.c | ||
xen-mapcache.c |
QEMU README =========== QEMU is a generic and open source machine & userspace emulator and virtualizer. QEMU is capable of emulating a complete machine in software without any need for hardware virtualization support. By using dynamic translation, it achieves very good performance. QEMU can also integrate with the Xen and KVM hypervisors to provide emulated hardware while allowing the hypervisor to manage the CPU. With hypervisor support, QEMU can achieve near native performance for CPUs. When QEMU emulates CPUs directly it is capable of running operating systems made for one machine (e.g. an ARMv7 board) on a different machine (e.g. an x86_64 PC board). QEMU is also capable of providing userspace API virtualization for Linux and BSD kernel interfaces. This allows binaries compiled against one architecture ABI (e.g. the Linux PPC64 ABI) to be run on a host using a different architecture ABI (e.g. the Linux x86_64 ABI). This does not involve any hardware emulation, simply CPU and syscall emulation. QEMU aims to fit into a variety of use cases. It can be invoked directly by users wishing to have full control over its behaviour and settings. It also aims to facilitate integration into higher level management layers, by providing a stable command line interface and monitor API. It is commonly invoked indirectly via the libvirt library when using open source applications such as oVirt, OpenStack and virt-manager. QEMU as a whole is released under the GNU General Public License, version 2. For full licensing details, consult the LICENSE file. Building ======== QEMU is multi-platform software intended to be buildable on all modern Linux platforms, OS-X, Win32 (via the Mingw64 toolchain) and a variety of other UNIX targets. The simple steps to build QEMU are: mkdir build cd build ../configure make Additional information can also be found online via the QEMU website: http://qemu-project.org/Hosts/Linux http://qemu-project.org/Hosts/W32 Submitting patches ================== The QEMU source code is maintained under the GIT version control system. git clone git://git.qemu-project.org/qemu.git When submitting patches, the preferred approach is to use 'git format-patch' and/or 'git send-email' to format & send the mail to the qemu-devel@nongnu.org mailing list. All patches submitted must contain a 'Signed-off-by' line from the author. Patches should follow the guidelines set out in the HACKING and CODING_STYLE files. Additional information on submitting patches can be found online via the QEMU website http://qemu-project.org/Contribute/SubmitAPatch http://qemu-project.org/Contribute/TrivialPatches Bug reporting ============= The QEMU project uses Launchpad as its primary upstream bug tracker. Bugs found when running code built from QEMU git or upstream released sources should be reported via: https://bugs.launchpad.net/qemu/ If using QEMU via an operating system vendor pre-built binary package, it is preferable to report bugs to the vendor's own bug tracker first. If the bug is also known to affect latest upstream code, it can also be reported via launchpad. For additional information on bug reporting consult: http://qemu-project.org/Contribute/ReportABug Contact ======= The QEMU community can be contacted in a number of ways, with the two main methods being email and IRC - qemu-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/qemu-devel - #qemu on irc.oftc.net Information on additional methods of contacting the community can be found online via the QEMU website: http://qemu-project.org/Contribute/StartHere -- End