Commit Graph

49201 Commits

Author SHA1 Message Date
Pawel Dziepak 082d3c1015 scheduler: Increase thread penalty at fork 2014-01-09 03:50:54 +01:00
Pawel Dziepak a2634874ed scheduler: Estimate the load thread is able to produce
Previous implementation based on the actual load of each core and share
each thread has in that load turned up to be very problematic when
balancing load on very heavily loaded systems (i.e. more threads
consuming all available CPU time than there is logical CPUs).

The new approach is to estimate how much load would a thread produce
if it had all CPU time only for itself. Summing such load estimations
of each thread assigned to a given core we get a rank that contains
much more information than just simple actual core load.
2014-01-09 03:50:54 +01:00
Gordon JC Pearce a19c04e6a3 Fix modeline being read incorrectly.
Signed-off-by: Rene Gollent <rene@gollent.com>
2014-01-08 18:28:06 -05:00
Jérôme Duval 2bc399a932 x86_64: Update haikuwebkit to 1.2.2 and add/update...
various dependent packages.
2014-01-08 20:07:27 +01:00
Pawel Dziepak 772331c7cd scheduler: Introduce strong and weak priority penalties 2014-01-08 07:16:19 +01:00
Pawel Dziepak d36098e043 scheduler: Keep track of the number of the ready threads 2014-01-08 05:05:25 +01:00
Pawel Dziepak 9c465cc83b scheduler: Improve recognition of CPU bound threads 2014-01-08 05:05:25 +01:00
Alexander von Gluck IV aa4b5749d6 runtime_loader: Detect and trigger on PE binaries
* Previously PE binaries would trigger the "incorrectly
  executable" dialog. Now we get a special message for
  B_LEGACY_EXECUTABLE and B_UNKNOWN_EXECUTABLE
* Legacy at the moment is a R3 x86 PE binary. This could
  be extended to gcc2 binaries someday far, far, down the
  road though
* The check for legacy is based on a PE flag I see
  set on every R3 binary (that isn't set on dos ones)
* Unknown is something we know *is* an executable, but
  can't do anything with (such as an MSDOS or Windows
  application)
* No performance drops as we do the PE scan last
* Tested on x86 and x86_gcc2
2014-01-07 19:38:07 -06:00
Rene Gollent 868c3d95cc Add updated libxml2 and zlib packages. 2014-01-07 18:03:09 -05:00
Rene Gollent baec9c1bf3 Update x86 webkit package to 1.2.2 + dependencies. 2014-01-06 21:35:39 -05:00
Pawel Dziepak c2a02dee65 kernel: Relax cpu_ent::interrupt_time locking
The value isn't accessed by the other CPUs and all writes and reads are
done with interrupts disabled.
2014-01-07 02:12:39 +01:00
Pawel Dziepak c37c2aa45f scheduler: Improve should_rebalance 2014-01-07 01:11:42 +01:00
Alexander von Gluck IV a72cc0a9b7 radeon_hd: Add missing cedar chipset
* May fix #10373
2014-01-06 17:14:14 -06:00
Pawel Dziepak 4ca31ac964 kernel: Fix ABA problem in try_acquire_read_spinlock() 2014-01-06 21:03:42 +01:00
Adrien Destugues 5bdd4157d3 SecureSocket: avoid crash on close
Deleting the BIO while it's still waiting on a read() in another thread
will lead to a crash when the socket is eventually closed. Close the
socket first, so the read() is unlocked, then safely delete the BIO.
2014-01-06 12:48:46 +01:00
Adrien Destugues 27b702f11a Update haikuwebkit to latest version.
* Also update dependencies cmake and libxml2
* Bonus package: Milkytracker

This is for gcc2hybrids only. gcc4 and x86_64 users are welcome to
contribute an haikuwebkit package for their architectures using the
haikuporter recipe.
2014-01-06 11:20:57 +01:00
Pawel Dziepak bae6d7196a scheduler: Fix SchedulerModeLocker 2014-01-06 09:08:53 +01:00
Pawel Dziepak a5f45afa6c scheduler: Remove unnecessary check against disabled CPU 2014-01-06 09:08:53 +01:00
Pawel Dziepak 8cf8e53774 kernel/x86: Inline atomic functions and memory barriers 2014-01-06 09:08:53 +01:00
Alexander von Gluck IV 465610acdc joystick: Don't crash when 0 joysticks exist on a port
* Interestingly, my SIXAXIS controller shows up in
  the window as usb/0 when plugged.
2014-01-05 23:35:05 -06:00
Pawel Dziepak 8235bbc996 scheduler: Improve thread creation performance 2014-01-06 01:22:53 +01:00
Pawel Dziepak cb66faef24 scheduler: Work around GCC2 limitations in function inlining
GCC2 won't inline a function if it is used before its definition.
2014-01-06 01:22:53 +01:00
autonielx de81fde11c Update translations from Pootle 2014-01-04 06:15:30 +01:00
Pawel Dziepak 9e99bf6085 scheduler: SCHEDULER_EXIT_FUNCTION() is not needed 2014-01-03 20:15:13 +01:00
Pawel Dziepak 81e04d7b97 kernel: Remove cpu_info::load
This field forces kernel to track each CPU load all the time. It is not
a problem with the current scheduler on a multicore systems, but on
single core machnies or with any other future scheduler this field may
become just an unnecessary burden. It isn't difficult for an application
to compute CPU load by itself when it needs it.
2014-01-03 19:44:57 +01:00
Pawel Dziepak e4ea637227 scheduler: Disable load tracking when not needed 2014-01-03 19:44:56 +01:00
Humdinger f6c5dbf81c Some more code style corrections of Keymap. 2014-01-03 19:44:12 +01:00
Murai Takashi 7727da7d3d Fix mismatching allocation and deallocation 2014-01-03 13:57:03 +01:00
Humdinger 346c992352 Cleanup of KeymapWindow.cpp 2014-01-03 10:39:06 +01:00
Humdinger 4a3268e14f Replaced "makefile" Tracker template. Fixes #10366.
* copied the correct, up-to-date makefile template from data/develop/
2014-01-03 10:25:08 +01:00
Matt Madia de5c16f10a Do not create the hpkg from within the directory to package. 2014-01-02 21:39:41 -05:00
Alexander von Gluck IV 64d7ff778b BuildSetup: Refactor 5e97cd45cf to better detect b.e.
* Looking back, we should not assume little endian if
  we see armv* as armv7l is little endian while armv7b
  is big endian
2014-01-02 10:26:34 -07:00
Humdinger 803fab4fac Slightly improved layout of Keymap prefs
* use the templated BLayoutBuilder
* reduced top inset to be the same as to all sides
* SetExplicitMinSize of the LayoutView so it can't shrink to
  illegibility
* set slightly smaller window default size (on small screens)
2014-01-02 10:11:00 +01:00
Adrien Destugues 5b53e2e516 HttpRequest: close the connection on Stop()
When calling Stop(), we expect the request thread to exit as soon as
possible. Closing the connection unlocks it from any blocking read() or
write(), avoiding some lockup situations.
2014-01-02 08:38:03 +01:00
Alexander von Gluck IV f8da8f3477 ARM: Be aware of ARMEL and ARMEL
* My BeagleBone gcc defines __ARMEL__ but not
  __ARM__ which breaks the native tool builds
* As ARM was originally Little Endian, we assume
  __ARM__ means as such.
* Look for Big Endian ARM and define the needed big
  endian preprocessors
2014-01-01 23:41:02 -07:00
Alexander von Gluck IV 5e97cd45cf BuildSetup: Add better arm host detection
* rather unlikely... unless you're insane like me
* BeagleBoard is armv7l-, so lets look for armv*
  (I don't want to do arm* as it is less precise)
2014-01-01 22:20:12 -07:00
Humdinger 482f0f771a Corrected type from hrev46630. Sorry... 2014-01-01 19:29:56 +01:00
Humdinger f1227e7220 Updated WebPositiveBookmarks optional package
Changed a few icons so they're not all the same...
Added a link to the "Community links" on the website.
2014-01-01 18:52:55 +01:00
Humdinger 080cf3be91 Corrected typo in overwrite alert. 2014-01-01 18:37:26 +01:00
Humdinger 047dc3356d Improved sniffer rule of I-O-M files.
The "keyword" at the start of I-O-M files has changed some
time ago. Now sniffing for both possibilities.
2014-01-01 18:35:10 +01:00
Alexander von Gluck IV d068e94ca1 mesa: Update Mesa 10.0.1 package
* Resolves #10360 for Mesa 10.0.1 (gcc4)
* The changes in this revision are queued for upstream
2013-12-31 16:44:15 -06:00
Stephan Aßmus f31a2f68cc Icon-O-Matic: Forget fMessageAfterSave when FilePanel was cancelled.
fMessageAfterSave capture what was to be done after a file panel was
used. For example, picking up quitting the app after the user saved
unsaved changes. The bug was that when trying to quit IOM, deciding to
save, but then cancelling the file panel, the quitting stopped (as expected).
But then the next time the document was saved, IOM quit unexpectedly.
2013-12-31 10:31:54 +01:00
Alexander von Gluck IV 852730f036 mesa: Update Mesa 7.9.2 package
* Resolves #10360 for Mesa 7.9.2 (gcc2)
2013-12-30 23:33:29 -06:00
Alexander von Gluck IV 39509da7de radeon_hd: Fix non-gcc2 pragma statement
* I'll ping the linux radeon guys to see if
  we can get this adjustment made as we use
  stock atombios headers
2013-12-30 21:54:10 -06:00
Pawel Dziepak db1ddabfd0 scheduler: Thread can not stay on CPU if it has been disabled 2013-12-31 04:49:45 +01:00
Alexander von Gluck IV 096413dbce radeon_hd: Upgrade AtomBIOS parser
* Bring inline to current Linux version
* Apply upstream bug fixes to AtomBIOS
* Update atombios headers to latest version
2013-12-30 21:38:14 -06:00
Pawel Dziepak 135bb9c959 kernel: Do not attempt to interrupt a thread that is not waiting 2013-12-31 03:53:56 +01:00
Pawel Dziepak 2d52abbd5d scheduler: Inherit penalty and core from creator thread 2013-12-31 03:53:55 +01:00
Pawel Dziepak 7c92dffeef scheduler: Fix order of the includes
Thanks Jérôme!
2013-12-31 03:53:55 +01:00
Pawel Dziepak 265927509d scheduler: Protect per CPU run queue with its own lock 2013-12-31 03:53:55 +01:00