Commit Graph

34429 Commits

Author SHA1 Message Date
Ingo Weinhold
86875ad9d1 Added VMCache::DebugHasPage() and DebugLookupPage() for use in the kernel
debugger.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36228 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 17:18:57 +00:00
Ingo Weinhold
09418c869b Added DebugGet() method for use in the kernel debugger.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 17:16:42 +00:00
Axel Dörfler
780d7cab55 * Removed extra space in the about window.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36226 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 15:28:41 +00:00
Michael Lotz
2b5b2e045a Implement MSI support using the x86 specific PCI module in the FreeBSD
compatibility layer. This should make some network and wireless hardware use
MSIs and therefore solve issues related to interrupt sharing and wrongly
advertised interrupt lines.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36225 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 15:24:18 +00:00
Axel Dörfler
be982b9cd5 * Only restore the previous playing position when there is a file that is
currently playing; this fixes the the problem I mentioned in a comment in
  bug #3855.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36224 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 15:23:03 +00:00
Michael Lotz
2548ea219a * Add the framework for adding an arch specific module to the PCI bus_manager.
* Implement such a module for x86 which currently exports only an MSI API.
* Implement the PCI part for configuring and enabling MSIs.
* Some automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36223 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 15:18:46 +00:00
Axel Dörfler
bafcab9265 * Minor cleanup, no functional changes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36222 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 15:11:39 +00:00
Michael Lotz
33fbe25496 * Add code to allocate and free interrupt vectors for message signaled
interrupts (MSI).
* Add the remaining IDT entries and redirection functions in the interrupt code.
* Make the PIC end_of_interrupt() return a result to indicate whether the vector
  was handled by this PIC. If it isn't we now issue a apic_end_of_interrupt()
  in the assumption of apic local interrupt, MSI or IPI. This also removes
  the need for the gUsingIOAPIC global and doing manual apic_end_of_interrupt()
  calls in the SMP and timer code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36221 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 14:46:09 +00:00
Michael Lotz
aeae7bf4dc Add ffs() (find first set bit, starting at least significant) to the kernel.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36220 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 14:34:06 +00:00
Axel Dörfler
72d2b96592 * Cleanup, no functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36219 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 14:23:10 +00:00
Axel Dörfler
ef9dbf80c1 * Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36218 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 13:36:53 +00:00
Stephan Aßmus
c944d11f7e bonefish+stippi:
All views which cache layout information need to call ResetLayoutInvalidation()
when they have updated the cached information. Otherwise calling
InvalidateLayout() once they are already attached to a layout may not have any
effect.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36217 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 13:36:49 +00:00
Stephan Aßmus
26fe41417d Small coding style fixes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36216 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 13:35:22 +00:00
Axel Dörfler
fefe246c70 * Set the exit status for the main thread as well in _user_exit_team().
* This closes bug #5713.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 13:29:56 +00:00
Stephan Aßmus
a66b66ff5a * When inside a layouted environment, InvalidateLayout() in MakeDefault()
instead of just resizing.
* When the view thinks it knows the correct size, it needs to
  ResetLayoutInvalidation(). TODO: Actually all views that cache layout size
  info need to do this.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 13:19:49 +00:00
Axel Dörfler
d2e28b603d * Cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36213 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 13:14:10 +00:00
Axel Dörfler
15c81466c4 * Reverted part of r34474 that broke binary compatibility.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36212 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 13:01:56 +00:00
Axel Dörfler
69bffde17e * The AccelerantHWInterface now prints a message to syslog if an accelerant
doesn't have the correct interface.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36211 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 12:27:05 +00:00
Axel Dörfler
f735ce7d79 * Make sure Shutdown() can be called more than once (ie. reset the members as
needed).
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36210 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 12:23:01 +00:00
Axel Dörfler
2e7bd0169f * The kernel daemon no longer hold its lock when calling the registered hooks.
* This fixes bug #5421.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 12:09:56 +00:00
Stephan Aßmus
0d84b31334 Patch by Shisui: Automatic filename basename selection and "Save" as default
button for Screenshot. Fixes #5626. Thanks a lot!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36208 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 11:25:15 +00:00
Adrien Destugues
5dcec7802a Build the setdecor command in the test_app_server/libbe_test platform so one can test decorators in the test_app_server
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 10:01:22 +00:00
Axel Dörfler
f46308c92a * More header cleanup, continuing korli's work.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36206 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-13 09:48:02 +00:00
Axel Dörfler
2d4ce06468 * Changed the latency computation a bit to make it somewhat clearer.
* Only report lateness if it is beyond the accepted jitter.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36205 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 21:51:40 +00:00
Matt Madia
ad81683e48 Improves the jam-to-bash conversion in ReplaceComparators(). Fixes the
"[: 5: unary operator" aspect of #5685.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 21:48:18 +00:00
Jérôme Duval
d25dd4b920 some copyright headers clean up
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36203 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 21:02:09 +00:00
Jérôme Duval
29fb2094bd added bsd lib tests to the build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36202 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 20:57:20 +00:00
Adrien Destugues
55ed5b8ed9 libbe_test needs the locale backend too.
This make the test_app_server run again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 20:54:06 +00:00
Axel Dörfler
d0085d25d1 * We now limit the maximum latency in MediaPlayer and the audio mixer, as a
latency can easily get annoying if too high.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36200 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 20:53:15 +00:00
Axel Dörfler
8dd3060da4 * The AudioProducer now correctly handles late producer notices by ignoring
extra notices for buffers already scheduled.
* Also, the AudioSupplier/AudioReader classes now know their initial latency,
  and the AudioProducer is now using that one to advertize its own initial
  latency - this fixes late buffers on start, causing the latency to grow
  too large.
* Cleanup here and there.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36199 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 20:36:19 +00:00
Jérôme Duval
02af02f93a partial clean up
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 20:34:04 +00:00
Ingo Weinhold
50e4dd9328 axeld + bonefish: X86VMTranslationMap::Protect():
* Removed rounding up the end address to page alignment. It's not necessary
  and could cause an overflow.
* Fixed possible infinite loop triggered by a rare race condition: When two
  threads of a team were accessing the same unmapped page at the same time
  each would trigger a page fault. One thread would map the page again, the
  second would wait until the first one was done and update the page
  protection (unnecessarily but harmlessly). If the first thread accessed the
  page again at an unfortunate time, it would implicitly change the
  accessed/dirty flags of the page's PTE, which was a situation the loop in
  Protect() didn't consider and thus run forever.
  Seen the problem twice today in form of an app server freeze.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 20:30:49 +00:00
Jérôme Duval
ac8b5878d7 clean up
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 20:13:40 +00:00
Adrien Destugues
8f2d34d9e0 Fix test_app_server again due to Coding Sprint changes
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36195 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 20:02:43 +00:00
Matt Madia
de202917dc moved myself to the active contributors list.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36194 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 20:01:25 +00:00
Oliver Tappe
ab1a4bef4f cleaning up after myself 4 years later:
* remove matches_broadcast_address slot in address module, as it
  doesn't exist anywhere
* automatic whitespace cleanup



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36193 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 19:06:46 +00:00
Oliver Tappe
56f097ebd9 Applying patch by Atis Elsts:
* fix connecting to INADDR_ANY work for tcp (effectively will
  connect to INADDR_LOOPBACK)
* add same behaviour to udp
* move some ipv4-specific code out of tcp into ipv4 address module
* bind() and connect() now reject addresses from non-matching 
  families
* myself: minor cleanup in udp.cpp with respect to 80 chars limit
Closes #5716 - many thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36192 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 18:39:34 +00:00
Adrien Destugues
5608589f03 * Remove leftover debug printf()s
* Fix the layouting of BColorControl so it is now locale aware


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36191 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 18:21:59 +00:00
Adrien Destugues
4343960f55 olta+pulkomandy:
* Introduce an add-on system to allow libbe to call things living inside liblocale (as liblocale depends on libbe, it can't be linked the usual way)
 * This allows localizing the BColorControl class that had some text inside it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36190 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 18:07:09 +00:00
Michael Lotz
3d310bd5f4 * Fix build, the APIC definitions are used in the bootloader too.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36189 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 15:59:40 +00:00
Ingo Weinhold
aa26d10790 delete_area(): When the address space is the kernel address space, we need to
pass stricter allocation flags to VMAddressSpace::{Remove,Delete}Area() or
could deadlock otherwise.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36188 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 15:25:08 +00:00
Stephan Aßmus
846cb93278 Fix my strlcpy() adventure with a much simpler version of the code that should
also perform better for the usual case of inserting one char at a time. Using
strpbrk() on non-terminated strings was probably also not too healthy.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36187 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 14:41:44 +00:00
Axel Dörfler
99e658c3e9 * Accidently replaced the copyright incorrectly; I got the permission from
Marcus to change the copyright to MIT, not to reassign it to someone else.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36186 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 14:32:56 +00:00
Stephan Aßmus
a68045b367 strlcpy() takes buffer size and will copy buffer size - 1 chars at max and then
use the remaining byte to terminate the buffer. Thanks for the heads up!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36185 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 14:18:13 +00:00
Axel Dörfler
b289aaf66b * A BBuffer does not know where it came from, so
BBufferConsumer::BufferReceived() cannot know whom to send the "buffer is
  late" notification (unless we only have a single input). To solve this, the
  media_header now contains extra fields that can be used to create a
  media_source object.
* Unfortunately, BBufferProducer::SendBuffer() cannot know the output either in
  case there is more than one. Hence, I deprecated the existing SendBuffer()
  call and moved it into "private" - IOW old sources using it won't compile
  anymore under Haiku.
* I introduced a new SendBuffer() variant that also gets the media_source as
  argument.
* Updated all sources (that are part of the image) to use the new variant.
* Removed some purposely commented out code in the audio mixer.
* Implemented late buffer notification, as well as late buffer handling in the
  audio mixer; this is a bit of work in progress, so the debug output is left
  in there.
* Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36184 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 13:15:46 +00:00
Michael Lotz
5819c3f9ff Forgot to remove these in the previous commit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36183 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 13:07:21 +00:00
Michael Lotz
655f3b4161 Seperate the generic (local) APIC stuff into it's own file and use it from the
other places where previously the same functionality was duplicated. Also
seperated the header which was originally arch_smp.h into apic.h and arch_smp.h
again as some of it is MP and not actually APIC.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36182 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 12:56:13 +00:00
Adrien Destugues
fec7283a28 Sync lithuanian translations from hta.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36180 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 07:36:21 +00:00
Rene Gollent
0d6b5aa1ea Fix build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36179 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 01:17:15 +00:00
François Revol
4b19582754 First implementation of attribute support on NTFS. Currently lists and reads named streams as such, but the name mapping is not yet correct.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36178 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-04-12 00:07:52 +00:00