Commit Graph

34758 Commits

Author SHA1 Message Date
Ingo Weinhold
3b0c1b5227 * VMArea: Made memory_type private and added setter and getter methods.
* Don't set the VMArea's memory type in arch_vm_set_memory_type(), but let the
  callers do that.
* vm_set_area_memory_type(): Does nothing, if the memory type doesn't change.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36573 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-01 20:41:57 +00:00
Ingo Weinhold
907886143f * Changed some parameters of VM syscalls from int to uint32, mostly for sake
of consistency.
* Moved the B_OVERCOMMITTING_AREA flag from B_KERNEL_AREA_FLAGS to
  B_USER_AREA_FLAGS, since we really allow it to be passed from userland.
* Most VM syscalls check the provided protection against B_USER_AREA_FLAGS
  instead of B_USER_PROTECTION, now. This way they allow for
  B_OVERCOMMITTING_AREA as well.
* _user_map_file(), _user_set_memory_protection(): Check the protection like
  the other syscalls do and use fix_protection() instead of doing that
  manually.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36572 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-01 19:47:39 +00:00
Ingo Weinhold
a5de454f45 VM{Kernel,User}Area::Create(): On error free the area's memory heeding the
given allocation flags. Could deadlock otherwise.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36571 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-01 18:50:21 +00:00
Ingo Weinhold
40f1dd8443 arch_vm_supports_protection(): Fixed broken check.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36570 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-01 18:31:12 +00:00
Fredrik Holmqvist
d52ea9c90e Trying to fix #5861. As we are now so early in the boot process, we should really avoid functions that wait. The change in r36565 from waiting on condvar seems to have moved the problems over to the snooze method.
We now use spinlocks instead of snoozing while booting.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36569 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-01 18:25:33 +00:00
Stephan Aßmus
42c982a76b Changed default application of text/html and http and https URLs to
WebPositive. Gopher URL type remains the only one to refer Firefox.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36568 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-01 14:04:44 +00:00
Stephan Aßmus
b5fa58c9d8 New icons for OpenGL, Touchpad and Locale (revised previous version, which was
not committed as icon before).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36567 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-01 13:11:03 +00:00
Joachim Seemer
f60438dea7 Spanish translator César Ortiz Pantoja (ccortiz). +alpha2
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36566 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-01 11:28:45 +00:00
Fredrik Holmqvist
30653a9ed0 Use polling in embedded controller while booting. Might fix #5861. Is this usage of the flag ok?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36565 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-01 07:59:48 +00:00
Scott McCreary
f296d61c82 Updated the opensound OptionalPackage.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36564 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-01 05:16:19 +00:00
Matt Madia
09552695d7 Added "Haiku and the Haiku logo are trademarks of Haiku, Inc."
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36563 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-01 04:30:23 +00:00
Matt Madia
5cbd53f648 Unified the spelling of licence/license.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36562 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-05-01 04:25:07 +00:00
Oliver Tappe
68a1479cc6 Fix #5788 by overhauling the Locale preflet a bit:
* InitiateDrag() now makes sure that either a number of top-level items
  or a group of subitems sharing the parent is being dragged - anything
  else doesn't really make sense and results in mayhem and/or crashes
* LocaleWindow now tries harder to keep the language listview sorted
* when moving around items between the two listviews, they are no longer
  copied (and partly leaked), but the same items are now just moved over
* cleanup here and there
This is still somewhat of a mess - I recommend splitting the two listviews at least (as they actually behave differently) - maybe it would be better to pick the available languages from a popup-menu instead of keeping them in a listview?

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36561 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 22:52:03 +00:00
Ingo Weinhold
f651548ee6 scheduler_reschedule_no_op(): panic() when the calling thread is not
continuing to run. This must not happen since the thread is the boot CPU's
idle thread performing the early kernel initialization (before the scheduler
is started).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36560 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 19:40:20 +00:00
Ingo Weinhold
26f1dd2708 Added a third rendez-vous point for the call_all_cpus() MTRR functions. This
fixes the problem that the CPU initiating the call could make the next call
and reset sCpuRendezvous2 before the other CPUs have returned from their
smp_cpu_rendezvous(). Probably virtually impossible on real hardware, but I
could almost reliably reproduce it with qemu -smp 2 (would hang the late boot
process without ability to enter KDL).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36559 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 19:37:19 +00:00
Ingo Weinhold
7f987e49d7 Added a rendez-vous variable parameter to smp_trap_non_boot_cpus() and make
boot CPU wait until all other CPUs are ready to wait. This solves a
theoretical problem in main(): The boot CPU could run fully through the early
initialization and reset sCpuRendezvous2 before the other CPUs left
smp_cpu_rendezvous(). It's very unlikely on real hardware that the non-boot
CPUs are so much slower, but it might be a concern in emulation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36558 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 19:32:12 +00:00
Matt Madia
7846d91843 Reorganized BeZillaBrowser's if/else statements. Switched to a hardcoded url
for bezilla's and NetSurf's source archives, instead of defining a local
variable (as installoptionalpackage didn't like it). No functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36557 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 19:06:46 +00:00
Ingo Weinhold
4d6b1f03da Documented smp_cpu_rendezvous().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36556 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 18:33:25 +00:00
Matt Madia
cf8a79a2a1 Updated cdrtools, built by scottmc
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36555 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 16:09:54 +00:00
Stephan Aßmus
15f297ef5f Patch by Humdinger to improve some strings in Touchpad. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36554 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 14:05:32 +00:00
Matt Madia
a924435c3e Updated OpenSSH to a newer version built by scottmc.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36553 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 13:39:26 +00:00
Ingo Weinhold
0ef0e3cfa0 Map read-only segments over-committing for the relocation. This prevents the
kernel from committing memory for all read-only segments until we're done
relocating. This allows Haiku to boot on machines with less RAM and swap
disabled. At least in qemu I could boot with 100 MB and start WebPositive.
Probably fixed #5822.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36552 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 12:09:43 +00:00
Ingo Weinhold
fe5ea7b4d2 VMAnonymous[NoSwap]Cache, overcommitting mode:
* Commit(): Unreserve memory when asked to shrink the commitment.
* Fault(): The whole logic is flawed, since this is always called by
  vm_soft_fault(), even, if the page is finally mapped from a lower cache.
  Now we do at least limit our commitment to (page_count + 1) * B_PAGE_SIZE
  instead of always reserving memory for another page.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36551 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 12:02:33 +00:00
Ingo Weinhold
278f7e57cd map_backing_store(): Also consider the B_OVERCOMMITTING_AREA for private
maps. The new cache will be created in over-committing mode.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36550 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 11:55:27 +00:00
Stephan Aßmus
59d0c2e45e * Introduced PaletteConverter::IndexForRGBA32() which checks if the alpha
component of a 32 bit color is below 128 and returns the special CMAP8 index
   for indicating transparency.
 * Changed the WriteCMAP() color conversion function to expext a 32bit RGBA
   value and use IndexForRGBA32().
 * Adapted B_CMAP8 target color space case of ConvertBits() to the new
   semantics.

This allows transparency in bitmaps when converting B_RGBA32 bitmaps to
B_CMAP8, tested only for this case and working as expected.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36549 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 11:29:14 +00:00
Ingo Weinhold
8cd3dac13e Reintroduced sigwait(), sigsuspend(), and sigpending(). There are obviously
drivers using those.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36548 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 10:00:44 +00:00
Axel Dörfler
c71183bc8b * Added the text "(Do you have ACPI enabled?)" in case -q failed.
* Minor coding style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36547 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 07:13:21 +00:00
Matt Madia
2b1246262d fixed the horrible typos.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36546 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 04:31:56 +00:00
Matt Madia
1ecdca7b7f Forgot to update NetSurf's source url
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36545 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 03:42:16 +00:00
Matt Madia
22cd332999 Manually the .OptionalPackageDescription file of many packages, to add
SourceURL: Text <URL> lines. InstallSourceArchive commands have been added,
where source archives provided. The baseSourceURL has been updated to
http://haiku-files.org/files/releases/r1alpha2/sources


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36544 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-30 03:36:07 +00:00
Rene Gollent
f7cf319589 PoseView::MoveSelectionInto() needs to check for the case that the source
window actually has a selection list to use. Certain actions can render it 
possible to empty out the selection in mid drag-and-drop, which MoveSelectionInto
wasn't taking into account, leading to a crash.

Fixes ticket #5860.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36543 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 23:57:50 +00:00
Ingo Weinhold
612721376c Create the gcc4 cpp headers symlink also for the gcc2 hybrid build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36541 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 21:42:21 +00:00
Ingo Weinhold
aa0872e069 Fixed lib{sup,std}c++.so symlinks for the new gcc4 package.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36540 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 21:22:14 +00:00
Ingo Weinhold
523d310585 * get_emulation_buffer(): Don't replace the request data. Both callers
(scsi_start_mode_sense_6(), scsi_start_mode_select_6()) also call
  replace_request_data(), which does the same. Therefore the original request
  data were lost. scsi_start_mode_select_6() also copied the wrong data due
  to this.
* scsi_finish_mode_sense_10_6(): In case of error also call
  restore_request_data() to restore the request data.

Fixes #5855 -- since the request data length was changed, unlock_memory() was
called with a different length than lock_memory(), thus triggering the
panic(). After starting CDPlayer the syslog is still spammed with failing
requests, so obviously something is still not OK.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36539 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 20:26:19 +00:00
Scott McCreary
4dc89bc259 Updated subversion, cvs, and libpcre optionalpackages.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36538 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 20:13:28 +00:00
Ingo Weinhold
2dbf8cd728 Source SetupEnvironment with the more portable ".".
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36537 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 18:15:41 +00:00
Ingo Weinhold
f1a61cda9a Typo-fixed patch by mjw: Include SetupEnvironment from /etc/profile, so
shells started by remote login daemons (sshd, telnetd) also get the
environmental variables defined there. Closes #5789 and #2468.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36536 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 16:47:05 +00:00
Matt Madia
199ad3daa6 Automatic whitespace cleanup. No functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36535 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 16:04:29 +00:00
Matt Madia
2731f156ed Added support for case-insensitive recognition of package names. Fixes #5854.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36534 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 15:56:46 +00:00
Matt Madia
ac8e7456e6 Automatic whitespace cleanup. No functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36533 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 15:50:22 +00:00
Ingo Weinhold
73f4184b7b Unset sSyslogBuffer in all error cases in which we disable syslog output.
Spotted by Axel.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36532 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 15:32:54 +00:00
Ingo Weinhold
d3166e469c Replaced no longer necessary send_signal_etc() work-arounds for
resume_thread().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36531 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 15:23:29 +00:00
Ingo Weinhold
28d05e026f Make scheduler_reschedule() an no-op until we're ready to start the
scheduler. This avoids the need to use the send_signal_etc() work-around for
resume_thread() during the early kernel initialization. Might fix #5851.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36530 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 15:10:37 +00:00
Axel Dörfler
d3a302aae8 * embedded_controller_support() now actually checks all entries of the
supporting ID array (just that it only contains one entry).
* Fixed missing malloc() result check in embedded_controller_init_driver().
* Style fixes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36529 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 15:09:38 +00:00
Ingo Weinhold
7b8344c61e syslog_init_post_vm(): If the syslog is disabled, clear sSyslogBuffer. It is
already initialized in syslog_init(), if the debug syslog feature is enabled.
Since the area would never be created, the pointer becomes invalid, however,
and could cause a double fault on entering KDL.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36528 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 14:16:25 +00:00
Oliver Tappe
8ffd908216 * updated Beam to work with newer version of openssl
* cleanup with respect to 80-chars width

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36527 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 12:23:30 +00:00
Ithamar R. Adema
037e8a50ff * Switch from using BMenuField to BTabView for panel selection
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36526 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 11:59:50 +00:00
Axel Dörfler
5151639147 * The window is now centered on screen when opened for the first time.
* Simplified and cleaned up the "window not on screen" code.
* Enlarged the default window size a bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36525 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 08:37:12 +00:00
Axel Dörfler
0230fc14ea * Neither ours nor BeOS' find_directory() will return an error if the directory
does not exist yet.
* Therefore, only BDirectory::SetTo() will fail if the trash does not exist
  yet. Changed the code to actually work as expected, now.
* Fixed old and new style violations.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36524 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-29 07:37:06 +00:00
Ingo Weinhold
d62afe7ab0 VMUserAddressSpace::LookupArea(): Although only a read-lock is the
precondition for calling the function it read/write accessed the fAreaHint
attribute in a non-atomic manner. I.e. if executed concurrently by two
threads of the same team one could return the wrong area. The most likely
problem could be caused in vm_soft_fault(), leading to pages being added to
the wrong caches.
The bug itself is inherited from NewOS, but is triggered way more likely
since the page daemon unmaps inactive pages (r35485). Probably fixes #5413.
Might also fix the sporadically occurring crashes/asserts in the hoard
allocator -- at least inactive pages being replaced by zeroed ones would be
an excellent explanation.
[Thanks to Matt for providing remote debug access to his machine.]


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36523 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-28 22:06:40 +00:00