haiku/headers/private
Michael Lotz 79f0056002 Fix virtual 8086 mode to properly account for TLS.
* The vm86 code or the code running in virtual 8086 mode may clobber the
  %fs register that we use for the CPU dependent thread local storage
  (TLS). Previously the vm86 code would simply restore %fs on exit, but
  this doesn't always work. If the thread got unscheduled while running
  in virtual 8086 mode and was then rescheduled on a different CPU, the
  vm86 exit code would restore the %fs register with the TLS value of
  the old CPU, causing anything using TLS in userland to crash later on.
  Instead we skip the %fs register restore on exit (as do the other
  interrupt return functions) and explicitly update the potentially
  clobbered %fs by calling x86_set_tls_context(). This will repopulate
  the %fs register with the TLS value for the right CPU. Fixes #8068.

* Made the static set_tls_context() into x86_set_tls_context() and made
  it available to others to faciliate the above.

* Sync the vm86 specific interrupt code with the changes from hrev23370,
  using the iframe pop macro to properly return. Previously what was
  pushed in int_bottom wasn't poped on return.

* Account for the time update macro resetting the in_kernel flag and
  reset it to 1, as we aren't actually returning to userland. This
  didn't cause any harm though as only the time tracking is using that
  flag so far.

* Some minor cleanup.
2011-11-25 16:10:19 +01:00
..
app 80 char limit fix. 2011-11-13 15:47:27 -05:00
audio Move this to media/, seems audio/ is only for old stuff. 2007-08-29 12:31:55 +00:00
binary_compatibility Patch by Alex Wilson (minor changes by myself) related to the new archiving 2010-07-16 16:49:42 +00:00
bluetooth Fix #6373, second try 2010-08-19 15:29:02 +00:00
debug Revert r39846 and r39847. 2010-12-14 17:55:38 +00:00
device Tiny comment cleanup. 2011-06-21 12:35:50 +00:00
drivers * add missed header file that goes along with r42725 2011-09-08 18:30:28 +00:00
file_systems Move B_MIME_STRING_TYPE to <TypeConstants.h> 2011-11-25 06:19:24 +01:00
firewire Merged the signals branch into trunk, with these changes: 2011-01-10 21:54:38 +00:00
fs_shell Move B_MIME_STRING_TYPE to <TypeConstants.h> 2011-11-25 06:19:24 +01:00
graphics Add support for thermal status queries on newer chipsets 2011-11-24 19:42:45 -06:00
index_server Add a CLucene full-text add-on. 2010-10-28 15:22:52 +00:00
input Implemented the patch on #7963 in a different way. 2011-10-31 18:09:24 +00:00
interface Changes the menu key bitmap from CTL to CTRL and SHFT to SHIFT. 2011-11-07 01:46:42 +00:00
kernel Fix virtual 8086 mode to properly account for TLS. 2011-11-25 16:10:19 +01:00
libbe olta+pulkomandy: 2010-04-12 18:07:09 +00:00
libroot Move <directories.h> to headers/private/system 2011-11-25 06:19:32 +01:00
locale * Use const references instead of pointers for the read from/write to 2011-11-01 10:13:34 +00:00
mail * Put ServerConnection into the BPrivate namespace as it should have been. 2011-11-02 22:56:50 +00:00
media Set of patches by Pete Goodeve to imrpove the handling of audio latency. 2011-11-03 14:26:03 +00:00
midi Made all server version and signatures consistent, and thus closing bug #909. 2006-10-22 17:56:02 +00:00
mount * Removed now obsolete notification (this was not even used in Tracker 2009-10-07 19:31:57 +00:00
net * Remove the BNetworkDevice::AddPersistentNetwork() again and instead introduce 2011-10-09 19:56:19 +00:00
notification * revert '43157 as the files are actually needed. I still don't understand how I managed to build everything without them ... 2011-11-03 12:49:18 +00:00
package Add a package info "install-path" attribute 2011-11-25 06:19:35 +01:00
print * Renamed files, classes and constants from 2010-11-08 18:43:55 +00:00
runtime_loader * Implemented dladdr() in the runtime loader. This is like a gazillion times 2011-08-07 21:01:23 +00:00
screen_saver Fixed various errors/warnings reported by cppcheck: 2010-02-08 22:50:38 +00:00
shared Add RangeArray utility class 2011-11-25 06:18:53 +01:00
storage added exFAT partition type 2011-02-09 20:30:00 +00:00
support BString::Private class to access BString internals 2011-11-25 06:19:45 +01:00
syslog_daemon Implemented syslog support for the kernel debug output. Not fancy at all yet, but 2006-01-24 20:28:52 +00:00
system Rename the package links directory 2011-11-25 06:19:33 +01:00
textencoding missing comment tokens 2007-06-20 21:20:11 +00:00
tracker Overlooked this with my previous Trash-related changes: updated NavMenu to be 2010-01-17 17:35:06 +00:00
usb_vision some copyright headers clean up 2010-04-12 21:02:09 +00:00
userlandfs Should have been part of r37678. io_request_is_vip() support. 2010-07-22 11:09:32 +00:00
vmdk Moved vmdkimage.h to a shareable place, cleaned it up a bit, and renamed it to 2009-10-01 03:08:46 +00:00