- 17 3月, 2010 32 次提交
-
-
由 Shahar Havivi 提交于
Signed-off-by: NShahar Havivi <shaharh@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Shahar Havivi 提交于
Signed-off-by: NShahar Havivi <shaharh@redhat.com> Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
-
由 Anthony Liguori 提交于
-
由 Anthony Liguori 提交于
-
由 Paul Brook 提交于
QEMU uses a fixed page size for the CPU TLB. If the guest uses large pages then we effectively split these into multiple smaller pages, and populate the corresponding TLB entries on demand. When the guest invalidates the TLB by virtual address we must invalidate all entries covered by the large page. However the address used to invalidate the entry may not be present in the QEMU TLB, so we do not know which regions to clear. Implementing a full vaiable size TLB is hard and slow, so just keep a simple address/mask pair to record which addresses may have been mapped by large pages. If the guest invalidates this region then flush the whole TLB. Signed-off-by: NPaul Brook <paul@codesourcery.com>
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
While there, improve the params help text.
-
由 Markus Armbruster 提交于
In the human monitor, it declares a single optional argument to be parsed according to the QemuOptsList given by its name. In QMP, it declares an optional argument for each member of the QemuOptsList. Restriction: only lists with empty desc are supported for now. Good enough for the job at hand. We'll lift the restriction when we need that.
-
由 Markus Armbruster 提交于
Next commit wants to use it.
-
由 Markus Armbruster 提交于
We sometimes permit omitting the first option name, for example -device foo is short for -device driver=foo. The name to use ("driver" in the example) is passed as argument to qemu_opts_parse(). For each QemuOptsList, we use at most one such name. Move the name into QemuOptsList, and pass whether to permit the abbreviation. This ensures continued consistency, and simplifies the commit after next in this series.
-
由 Markus Armbruster 提交于
The functions are somewhat restricted. Good enough for the job at hand. We'll extend them when we need more.
-
由 Markus Armbruster 提交于
Conversion to QObject is still missing.
-
由 Markus Armbruster 提交于
This reverts commit 3ced9f7a. The next commit will convert all of qdev_device_add() to QError, and it'll be clearer with this partial conversion reverted.
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
Treat multiple successive slashes as a one slash. Ignore trailing slashes. This is how POSIX pathnames work.
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
Also put error definitions in alphabetical order
-
由 Markus Armbruster 提交于
While fully converted handlers are not supposed to print anything when running in a QMP monitor, they are free to print in a human monitor. For instance, device_add (not yet converted) prints help, and will continue to do so after conversion. Moreover, utility functions converted to QError should remain usable from unconverted handlers. Two problems: * handler_audit() complains when a converted handler prints. Limit that to QMP monitors. * With QMP, handlers need to pass the error object by way of monitor_set_error(). However, we do that both for QMP and for the human monitor. The human monitor prints the error object after the handler returns. If the handler prints anything else, that output "overtakes" the error message. Limit use of monitor_set_error() to QMP monitors. Update handler_audit() accordingly.
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
Users can't set them, so qdev_device_help() shouldn't list them. Fix that. Also make qdev_prop_parse() hide them instead of printing a meaningless "has no parser" error message. Their value means nothing to users, so qdev_print_props() shouldn't print it. Fix by removing their print method. Their only use is dirty hacks. Document that.
-
- 16 3月, 2010 8 次提交
-
-
由 Markus Armbruster 提交于
Users can't create them, so qdev_device_help() shouldn't list them. Fix that. Also make qdev_device_add() pretend they don't exist. Before, it rejected them with a "can't be added via command line" message, which wasn't quite right for monitor command device_add.
-
由 Markus Armbruster 提交于
To make it obvious that -device and device_add can't die in hw_error().
-
由 Markus Armbruster 提交于
"device_add isa-serial,bus=pci.0" kills QEMU. Not good.
-
由 Markus Armbruster 提交于
New LOC_CMDLINE. Use it for tracking option with argument in lookup_opt(). We now report errors like this qemu: -device smbus-eeprom: Did not find I2C bus for smbus-eeprom
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
New LOC_FILE. Use it for tracking file name and line number in qemu_config_parse(). We now report errors like qemu:foo.conf:42: Did not find I2C bus for smbus-eeprom In particular, gems like this message: -device: no driver specified become almost nice now: qemu:foo.conf:44: -device: no driver specified (A later commit will get rid of the bogus -device:)
-
由 Markus Armbruster 提交于
-
由 Markus Armbruster 提交于
New struct Location holds a location. So far, the only location is LOC_NONE, so this doesn't do anything useful yet. Passing the current location all over the place would be too cumbersome. Hide it away in static cur_loc instead, and provide accessors. Print it in error_report(). Store it in QError, and print it in qerror_print(). Store it in QemuOpt, for use by qemu_opts_foreach(). This makes error_report() do the right thing when it runs within qemu_opts_foreach(). We may still have to store it in other data structures holding user input for better error messages. Left for another day.
-