* Add a VMArea* version of AddArea().
* AddAreaCacheAndLock(): Use the new AddArea() version. This not only
saves the ID hash table lookup, but also fixes a race condition with
delete_area(). delete_area() removes the area from the hash before
removing it from its cache, so iterating through the cache's areas
can turn up an area that no longer is in the hash. In that case we
would fail immediately. The new AddArea() won't fail in this
situation, though.
Fixes#9686: vm_copy_area() could fail for the "commpage" area. That's
an area all teams share, so any team terminating while another one was
fork()ing could trigger it.
We the meta data area couldn't be allocated in any of the supported
(reattachable) places, just use a static allocation. The tracing feature
wouldn't be available at all in such a case.
... more aggressively than before:
* Only use modifiers().
* Before forwarding any relevant event to the active state, first check
whether the modifiers have changed.
While the issues should really be fixed where they originate (app
server?), this hopefully fixes all situations where the hyperlink mode
gets stuck.
- MarkerView: If the view was resized, and the newly revealed region was
after the last source line, it wouldn't be redrawn properly.
- TextView: Reset low color for painting the region after the
source. Otherwise, if either the instruction pointer or a breakpoint
were at the last line of the current source, the empty space after would
be filled in that color rather than the background color.
- When switching between breaking on all images vs a custom list, rather
than enabling/disabling the controls individually, which wasn't
necessarily obvious from a visibility standpoint, simply show/hide the
entire group of controls as needed.
- Update state of add/remove buttons properly.
- Sanitize input for leading/trailing whitespace.
* fill it with HT MSI mapping capability information.
* enable/disable mapping on the device accordingly in enable_msi(),
disable_msi(), enable_msix(), disable_msix().
* untested. The mapping could instead be enabled/disabled on the HT PCI bus,
aka the parent device of the device passed to enable_msi/disable_msix().
* untested.
* as it's possible to have several HyperTransport capability blocks, the offset parameter
is used as the start pointer for the search in case it's non zero.
When reading a variable value from a register, if the value's size is
smaller than the size of the register and the architecture is little
endian, we need to adjust the bit offset we read from in addition to
byte swapping, otherwise we wind up reading the wrong bytes.
This was mainly noticeable in the case of functions that returned
boolean values, which would consequently sometimes show up incorrectly.
* They are all over the place.. I give up
* Going off of engineering names and DCE is more accurate
* A lot of this info came from the x.org wiki
* I'd like to transition some of the engineering
name checks to use DCE versions.. they tend to be more
accurate and exact. (in some cases we can't, but most of
the time we can)
...from orientation params. Elaborated type specifiers are not needed
for C++ code and removing them makes doxygen happy. Verified working
on both gcc2h and gcc4h builds.
- BreakConditionConfigWindow is now a team listener so it can watch for
the appropriate events.
- Implement reading/maintaining state in response to the various
notifications.
- Implement adding/removing names and enabling/disabling the use of the
name list.
...image load with name matching.
- Move the stop on image load setting to Team, along with a new setting
governing the use of the (also newly added) name list.
- Add accessors for maintaining the name list, and events/notifications
for listeners with regards to changes to all stop on image load
settings.
- Adjust user interface listener hooks for additional functionality.
- Place exception-related settings into their own BBox.
- Add another box for image load-related settings. This will eventually
allow one to constrain the stop on image load option to limit itself
to specific image names. Not yet functional.
* Older cards have to use the LVDS_Info table,
newer cards also have an ddc pin for EDID.
* Some buggy sbios don't inject the EDID into
the vbios as they should
* This corrects hrev45812 as we need to still
call connector_read_mode_lvds to obtain the
spread spectrum data for the lvds.
* Call connector_read_mode_lvds, bit-bang the
connector, choose the best outcome.
- Adjust ExpanderWindow to use BLayoutBuilder.
- Adjust content pane layout to explicitly use unlimited size, since
it no longer implicitly gets it due to the recent checkbox changes.
The Team menu now has a menu item allowing one to tell the debugger to
stop whenever a new executable image is loaded by the debugged team.
This setting is not currently persisted, though that can be changed if
desired.
In debug_cleanup(), if the debug syslog buffer is disabled (the default when
KDEBUG_LEVEL is 0), then a new buffer is allocated with kernel_args_malloc().
This is done after kernel_args addresses have been converted to 64-bit, so
the address the kernel gets will be 32-bit, resulting in the page fault seen
in #9842. Fixed by moving the call to debug_cleanup() to before
convert_kernel_args().
The post syscall debug events used for output capture have an
unfortunate side effect: when asked to debug a thread, the thread is
interrupted, which, if currently blocked in a syscall will cause it to
unblock and send a post syscall event indicating such. However, this
will also absorb the debug stop flag that was set by the initial debug
request, and so we won't actually get the separate event indicating
thread debugged.
Consequently, we now set a pending stop request flag on the
corresponding Thread object, and check if it's set when processing
syscall events. If so, we treat such an event as having triggered a
debug stop even though the received event type is not explicitly
B_DEBUGGER_MESSAGE_THREAD_DEBUGGED.
* Here is the Qemu command line option for Virtio SCSI devices:
-drive if=none,id=hd,file=haiku.image -device virtio-scsi-pci,id=scsi -device scsi-hd,drive=hd
* virtio_scsi.h is copied unchanged from FreeBSD, except for the _PACKED directive.