29088 Commits

Author SHA1 Message Date
Ingo Weinhold
4db202f5f4 Defined a simple file format to store debug event streams as generated by the
system profiling interface and added classes BDebugEvent{Input,Ouput}Stream for
reading/writing those files.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30244 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30244
2009-04-18 17:38:21 +00:00
Ingo Weinhold
5b2f0f33f9 * Changed the interface of _kern_system_profiler_start(). The parameters are
passed in a structure now, so it is easier to extend it and ignore unused
  parameters.
* One can now select which system profiling events one is interested in.
* Added scheduling events to the system profiling interface. Those are pretty
  much the ones recorded when scheduler tracing is enabled. Still missing are
  the "wait object" events that allow to interpret what a thread is waiting
  for.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30243 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30243
2009-04-18 17:35:28 +00:00
Ingo Weinhold
79257a4ad6 Added a listener mechanism to the scheduler (ATM only for scheduler_simple).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30242 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30242
2009-04-18 17:24:58 +00:00
Rene Gollent
a7e67ab3f2 gcc4 build fix by Maxime Simon. Resolves ticket #3786. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30241 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30241
2009-04-18 16:58:28 +00:00
Rene Gollent
e451292ccd Patch by Matt Madia: Update to a newer (and Haiku-native) NetSurf build using the new libhubbub HTML parser. This should also fix the conflicts seen between Netsurf and BezillaBrowser optional packages, and closes tickets 3785 and 3449. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30240 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30240
2009-04-18 15:40:13 +00:00
Stephan Aßmus
ae24d23561 Updated VLC optional package to the one pointed to in ticket #3456 (0.8.6d).
I couldn't find any problems with this release so far. One certain improvement
is the now working MKV support. Thanks a lot!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30239 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30239
2009-04-18 15:01:25 +00:00
Jérôme Duval
d8c0f241b7 removed non applicable completion (linux, bsd)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30238 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30238
2009-04-18 14:22:28 +00:00
Ingo Weinhold
4452146628 Split into different source files. No functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30237 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30237
2009-04-18 10:49:53 +00:00
Ingo Weinhold
3c3d2b85cd * Moved the time_stats tool to src/bin/debug.
* Fixed some gcc 4 warnings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30236 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30236
2009-04-18 10:08:06 +00:00
François Revol
e03e54d1a8 Add a text/x-patch mime so diffs open in Pe.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30235 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30235
2009-04-18 09:54:55 +00:00
Clemens Zeidler
9d7af84b45 - Fix a bug in the speedstep driver, now the cookie is initialized in open so multiple watching clients don't interfere any more.
- Cleanup and smaller issues in the preferences app.
- Add driver and preferences to the image.

The driver supports some Pentium M and VIA Centaur CPUs (1000 to 2100 Mhz) and need acpi to detect the cpu device, so you have to enable acpi in the kernel setting file to test it.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30234 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30234
2009-04-18 08:42:33 +00:00
Jérôme Duval
07a283fec3 * added bash_completion 20060301, it should be cleaned up.
* enable bash_completion loading in etc/profile. this fixes on the second part #2886.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30233 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30233
2009-04-17 22:05:11 +00:00
Jérôme Duval
f1bd4cfe8c Patch from Raghu for 1st part of bug #2886. 'cd file' returns now "Not a directory".
The check is done in the same way in bash 3.2.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30232 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30232
2009-04-17 21:06:07 +00:00
David McPaul
a56942d497 correct the model calculations for intel processors
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30231 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30231
2009-04-17 20:59:14 +00:00
Ingo Weinhold
3539fc6e19 page writer:
* When writing a page failed it is not a good idea to re-enqueue it at the tail
  of the modified queue, since that is definitely behind the page writer's
  marker and the page would be picked up again before reaching the end of the
  queue. If that happened with more than 256 pages, the page writer would keep
  picking up only those non-writable pages and make no more progress.
* When selecting pages also skip temporary pages, if there's no more swap space
  available, since trying to write those pages would most likely fail anyway
  (triggering the first problem).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30230 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30230
2009-04-17 14:26:17 +00:00
Ingo Weinhold
644ab95496 Added support for providing a command line also for the system profiling mode.
Just as in the other mode the command is started and profiling stops when the
command terminates.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30229 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30229
2009-04-17 12:17:44 +00:00
Ingo Weinhold
f568799e1b Don't leak the Team objects for teams that are gone.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30228 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30228
2009-04-17 11:40:03 +00:00
Ingo Weinhold
adb0d19d56 Declared the function pointer parameter as such, thus making gcc 4 happy.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30227 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30227
2009-04-17 11:17:56 +00:00
David McPaul
718e31e37a display the DMA mode along with the theoretical transfer speed
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30226 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30226
2009-04-17 10:09:04 +00:00
David McPaul
4f797d0b59 return the actual dma mode on request
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30225 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30225
2009-04-17 10:07:15 +00:00
Stephan Aßmus
8152b7d177 Coding style consistency.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30224 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30224
2009-04-17 09:56:58 +00:00
Stephan Aßmus
b71c18c4e8 Revert the unintentional commit from r30222. Sorry.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30223 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30223
2009-04-17 09:55:38 +00:00
Stephan Aßmus
4970545477 Make header self-contained.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30222 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30222
2009-04-17 09:52:53 +00:00
Axel Dörfler
24b822d843 * No longer hold the write lock when calling Inode::FillGapWithZeros(), as this
potentially deadlocks as described in bug #3768. The system is still
  completely unresponsive, but gets back to a working state after some time now.
* Since the rw_lock is public, Transaction and InodeReadLocker no longer need to
  be friends with Inode.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30221 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30221
2009-04-17 09:51:42 +00:00
Axel Dörfler
e50b251243 * Applied patch by Olivier that fixes bug #1957. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30220 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30220
2009-04-17 09:15:46 +00:00
Philippe Houdoin
2ee8423101 Fixed altivec code compilation.
Unfortunatly, avcodec plugin don't build yet, llint and lrint symbols are missing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30219 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30219
2009-04-17 02:10:51 +00:00
Rene Gollent
5227a704f6 GCC4 build fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30218 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30218
2009-04-17 01:32:21 +00:00
Philippe Houdoin
40d058a628 Enabled ppc and sparc specific yuv2rgb convertion code. UNTESTED yet.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30214 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30214
2009-04-16 23:11:02 +00:00
Philippe Houdoin
7767db5a86 Quick fix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30213 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30213
2009-04-16 23:04:17 +00:00
Ingo Weinhold
8342d4cdd2 * Updated to use add_debugger_command_etc().
* Added "step" debugger command to single-step to the next instruction (of the
  topmost iframe).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30212 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30212
2009-04-16 22:56:53 +00:00
Philippe Houdoin
b0e6125616 When $(TARGET_ARCH) is obvious, stop checking it, start assume it :-)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30211 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30211
2009-04-16 22:56:50 +00:00
Ingo Weinhold
8753babd62 Handle kernel debug exceptions similar to those in userland. This allows to
continue kernel breakpoints -- we would just retrigger the breakpoint when
continuing before.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30210 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30210
2009-04-16 22:18:02 +00:00
Ingo Weinhold
31d9352ff6 Make sure kernel breakpoints are installed on all CPUs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30209 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30209
2009-04-16 21:57:52 +00:00
Ingo Weinhold
48b0c6f93a debug_trap_cpu_in_kdl(): If the CPU running the kernel debugger exited and
re-entered it fast enough, we wouldn't leave the loop and thus cause a
deadlock, since we wouldn't process the ICI message telling us to halt. We do
now call smp_intercpu_int_handler() in the loop and guard the function from
being re-entered. This also has the advantage that we can execute code on all
CPUs in the kernel debugger, if we have to.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30208 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30208
2009-04-16 21:55:40 +00:00
Stephan Aßmus
bd949d1715 Patch by Obaro Ogbo (nastee) with small changes by myself: The check of the
input_server filter if the screen saver should be run could be confused if
additional option flags were turned on. I've removed the SAVER_DISABLED
definition completely. Also, I renamed the confusing "fEnabled" member, which
really means "saver already running".

Thanks a lot! Fixes ticket #3474.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30207 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30207
2009-04-16 20:00:01 +00:00
Ingo Weinhold
b447670286 * Removed most of the special-casing for kernel breakpoints in the kernel
enter/exit code. There's no real reason not to keep kernel breakpoints
  enabled when in userland (unless there are breakpoints installed for the
  team, of course).
* Enabled kernel breakpoints by default (check your kernel_debug_config.h,
  if you have overridden it!), since they don't really add any overhead
  anymore.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30206 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30206
2009-04-16 19:56:11 +00:00
Stephan Aßmus
5e71c7b1e5 Patch by Obaro Ogbo (nastee) with small changes by myself:
* Added "Close All in Workspace" menu item in the Window menu. The shortcut
  is 'Q', which is usually the Quit shortcut. Since Tracker prevents quitting
  via this shortcut, overriding it like this is ok, this was also discussed
  in the ticket #2833. I've tested that the existing functionality is not
  disturbed (ie Quit in the Settings panel still works, as does quitting
  Tracker via "hey Tracker quit"). I did not add the "Close All" menu item,
  since that feature is already available via DeskBar and when pressing the
  shift key before opening the Window menu.
* I did change the additional short cut. As with "Clean Up" versus "Cleanup Up
  All", it's now consistently the shift key, which you have to press.

Note to Obaro: The only other change was that one can set the target of the
menu item to be "be_app", that way one avoids dispatching the message in the
window. Thanks a lot for your work, Obaro!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30205 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30205
2009-04-16 19:32:11 +00:00
Axel Dörfler
78e7cdaede * Removed the get_next_removed_vnode() call again - besides the problems Ingo
pointed out, there is also an unsolvable race condition with BFS that other
  file systems should share.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30204 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30204
2009-04-16 18:29:12 +00:00
Axel Dörfler
992fba36ee * There is now a list of removed vnodes in Volume - while asking the VFS for
this seemed to be a good idea, there is one race condition that cannot be
  solved otherwise (the vnode must be added/removed to that list while holding
  the transaction lock, and we cannot guarantee that in the VFS).
* We are using an unused area of the in-memory bfs_inode to store the list
  links (bfs_inode::pad - this will also work on 64 bit platforms).
* Inode no longer adds a singly linked list link - the transaction list now
  shares the doubly linked list with the removed vnodes list.
* Added an in-memory flag INODE_IN_TRANSACTION to avoid searching an inode
  to be added in the list.
* Removing an attribute directory did not hold its write lock.
* If removing an attribute failed for some reason, the INODE_DELETED flag
  was not removed (the transaction would not have failed because of that).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30203 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30203
2009-04-16 18:24:55 +00:00
Stephan Aßmus
71db5f0735 * Convert the preference window of Mail to use the layout-management. This is
a compile time option, the BeOS build should be unaffected. Axel can comment
  if he liked the version with the non-aligned/cluttered menu fields better...
* Many thanks to Francisco Castro, who submitted a similar patch in #3735.
  I had already done this work a couple of weeks ago, but never got around to
  commit it. Going to comment on a number of small issues with the patch in
  the ticket, otherwise it does pretty much the same thing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30202 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30202
2009-04-16 16:20:15 +00:00
Axel Dörfler
22e78d6e65 * Another error found by Romain: the socket's mutex could be destroyed twice
in socket_create(). Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30201 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30201
2009-04-16 12:51:49 +00:00
David McPaul
3da76c0bec added cache descriptions reported by Intel Atom processor
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30200 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30200
2009-04-16 11:50:12 +00:00
Axel Dörfler
4e5191e9c1 * struct family now uses a DoublyLinkedList instead of a struct list.
* Added but commented out adding/removing chains to its family: this would allow
  the stack to unload protocol modules as soon as they are no longer needed.
  However, it currently does not work yet (double lock, we need a recursive lock
  here to allow this).
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30199 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30199
2009-04-16 11:11:37 +00:00
Axel Dörfler
7caa5d430c * Now gets the net_socket module in init_stack() to make sure it's initialized
as long as the stack is loaded.
* This fixes another regression from moving the socket API into the kernel.
* Thanks to Romain for reporting this!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30198 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30198
2009-04-16 10:54:07 +00:00
Axel Dörfler
32537299cb * The "net_timer" command was never removed, causing sort_debugger_commands()
to hang when entering KDL, after having unloaded the stack.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30197 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30197
2009-04-16 10:50:38 +00:00
Axel Dörfler
09a60e4bd4 * Since we moved the socket stuff into the kernel, we lost the ability to
unload the network stack. This now works again, although I didn't manage to
  do it without another lock.
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30196 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30196
2009-04-16 10:49:21 +00:00
Axel Dörfler
7722096951 * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30195 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30195
2009-04-16 10:31:48 +00:00
Stephan Aßmus
5f700c9b7c Patch in large part by Philippe Saint-Pierre:
* Update Font preflet to use the layout-management. This already fixes a lot
  of issues.
* The were more issues with switching to default fonts and reverting fonts.
  Some fixed by Philippe and some fixed by myself.
* The preflet currently contains a work-arround for the problem that the window
  does not yet have it's final size until after BWindow::Show() has been
  completed. To be able to center itself anyways, it will open outside screen
  bounds and center itself then.

Note to Philippe: I had to fix some stuff in the Interface Kit to make this
more smoothly, so I was able to remove some calls to Invalidate() and such.
Also, the preview boxen and the menu fields align correctly now. Sorry if this
gave your gripes... :-)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30194 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30194
2009-04-16 10:11:06 +00:00
Ingo Weinhold
1b9d2885d3 * Also pass the team arguments and thread names with the respective system
profiling events.
* profile: Avoid using get_{team,thread}_info() in common code paths. The
  system profiling mode is asynchronous, so the team or thread in question
  could already be gone.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30193 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30193
2009-04-16 10:02:33 +00:00
Stephan Aßmus
1370f1b69e Of course it still needs to invalidate, d'oh. If the size isn't changed because
of invalidating the layout, we still need to draw...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30192 a95241bf-73f2-0310-859d-f6bbb57e9c96
hrev30192
2009-04-16 09:50:44 +00:00