Commit Graph

490 Commits

Author SHA1 Message Date
Bruno G. Albuquerque
110d4031fb - Added AHCI port tracing (Only PRD table tracing for now).
- Added controller attribute to the AHCIPort class for debugging purposes.

AHCI is failing whenever the PRD table has an address above the 2048 Mb mark.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25291 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-05-02 14:34:20 +00:00
Ingo Weinhold
8e671b34c2 Introduced kernel tracing in wait_for_objects.cpp (in r25273), ATM only
for select(), though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25274 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-30 16:14:42 +00:00
Axel Dörfler
ec12806d2f Reverted r25258 - I didn't know that an undefined value defaults to 0.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25270 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-30 08:03:53 +00:00
Ingo Weinhold
8e4941e810 Forgot this one: Stack trace depth macro for net_buffer tracing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25259 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-29 20:47:15 +00:00
Axel Dörfler
6ad0d967f0 Fixed build when ENABLE_TRACING is 0.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25258 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-29 20:43:34 +00:00
Axel Dörfler
8e8edffce7 * Fixed at least the "dd" part of bug #2148: the second double indirect array
block would be incorrectly addressed when allocating a stream - this could
  cause random blocks to be overwritten, and therefore could cause many sorts
  of problems.
* Moved BFS_TRACING macro to the tracing_config.h file, and let it follow the
  new semantics of those other macros in there.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25249 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-29 16:15:35 +00:00
Axel Dörfler
5abeea69a5 * Added tracing for binds and connects as well.
* Introduced the TCP_TRACING macro in tracing_config.h.
* Enlarged the default trace size to something a tiny bit useful (but still
  acceptable for systems with little RAM).
* Cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25235 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-29 07:35:00 +00:00
Ingo Weinhold
2c88b9c82a Added kernel tracing for the interesting net buffer operations.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25216 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-27 16:34:23 +00:00
Ingo Weinhold
97c0a2b3f1 * Paranoia checks were accidentally globally enabled by default. Object
* cache paranoia was always enabled.
* Changed from paranoia on/off to levels. Adjusted the macros to take a
  level argument.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-27 15:13:31 +00:00
Ingo Weinhold
6bf15ffcdc * Changed macros that enable tracing for individual components from
defined/undefined to numeric values (0 for undefined). This allows for
  trace levels.
* Set SYSCALL_TRACING_IGNORE_KTRACE_OUTPUT default to 1, since this is
  what one usually wants.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25213 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-27 14:24:18 +00:00
Ingo Weinhold
2b8ae28a15 * Added kernel tracing. Even with optional stack traces.
* Added "mode" parameter to set_paranoia_check(), which specifies
  whether the check is supposed to already exist/not exist yet. This
  allows for, as it turns out, very useful additional tests. Added
  {ADD,UPDATE}_PARANOIA_CHECK macros that imply the used "mode"
  parameter.
* PARANOIA_SLOT_COUNT was accidentally redefined in the source file.
* Fixed remove_paranoia_check(). It didn't remove anything.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-27 03:14:36 +00:00
Ingo Weinhold
31b4f98f67 Increased the default paranoia slot count to a more realistic level.
We're a bit limited since that increases the kernel size the boot loader
needs to reserve. We should probably make that configurable as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25206 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-27 03:06:09 +00:00
Ingo Weinhold
67411c9d36 Added object cache kernel tracing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-26 20:32:41 +00:00
Ingo Weinhold
dfa611bb04 Added paranoia checks debug facility. It helps checking that data in
memory haven't changed behind one's back.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25193 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-26 20:25:02 +00:00
Ingo Weinhold
9c5c2d9d45 Added "which" script, so that the command can be invoked in shell
scripts, too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25190 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-26 17:41:53 +00:00
Ingo Weinhold
a47d979fc2 Added BSD compatibility headers to the image. They are not in the search
paths by default, but I guess we want to keep it that way.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-24 21:33:08 +00:00
Stephan Aßmus
2d581f8d95 Forgot to commit this, added Pairs to the image in the Demos folder. Sorry!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25115 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-23 09:51:22 +00:00
Ingo Weinhold
0970b97bed Added support_kit_config.h configuration header. ATM it only contains a
setting to force BLockers to be semaphore style. This may help with
debugging deadlocks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25096 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-22 15:04:01 +00:00
Ingo Weinhold
da63adf5ea Added HAIKU_IMAGE_HOST_NAME build system variable. Can be used to set
the host name of the Haiku installation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25078 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-20 14:00:31 +00:00
Ingo Weinhold
3e99f3e14f Wrong package name in error message. Spotted by Andreas Färber.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25077 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-20 12:53:40 +00:00
Jérôme Duval
0ea1e53a7d removed net_stack and socket from net boot image
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25076 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-20 12:42:01 +00:00
Ingo Weinhold
adfe1993eb Add --no-undefined for kernel add-ons, too.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25071 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-20 03:08:29 +00:00
Michael Lotz
de39891a3c Add the "-fno-tree-vrp" option when building with GCC4. It seems that the
value range propagation optimization results in broken code with the GCC4
version we are currently using. Added TODO to retest/remove this flag when we
update our GCC4 compiler.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25054 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-19 17:12:47 +00:00
Ingo Weinhold
bce94fa596 Repackaged jam and automake to contain an .OptionalPackageDescription.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25051 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-19 15:57:08 +00:00
Ingo Weinhold
eecbf4e78e * Copy licenses to the image (/etc/licenses).
* Whenever unzipping a zip archive to the image, we do first check, if
  it contains an .OptionalPackageDescription file. If so, its contents
  is appended to AboutSystem's "COPYRIGHTS" attribute, which will cause
  the respective info to be shown in the about view.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25050 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-19 15:55:54 +00:00
Axel Dörfler
45e95a057f * Removed the old net_stack driver code, and the kernel socket interface.
* Also removed the header files that belong to those files.
* Only kept the userland_ipc.h header for now, to remember us about the
  former userland server driver (that I also removed - it can always be
  resurrected from SVN if needed).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25045 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-19 12:42:25 +00:00
Ingo Weinhold
aa2d1d44f6 * Added useradd and passwd to the image.
* Enforced 80 columns limit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25042 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-19 00:18:00 +00:00
Jérôme Duval
1642048478 use <bin>zipgrep target
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25037 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-18 23:56:39 +00:00
Ingo Weinhold
f3d12d460b Execute chmod at least command or the set permissions might get lost
again. I'm not totally sure why that is, but the set-uid permission kept
disappearing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25036 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-18 23:51:21 +00:00
Axel Dörfler
2e5e52d6f1 * Simplified the Deskbar "Application" and "Desktop Applets" link creation
a bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25027 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-18 15:26:39 +00:00
Axel Dörfler
95230c2995 * Added ActivityMonitor to the list of apps in the Deskbar.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25026 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-18 15:00:33 +00:00
Michael Lotz
aa01c3e72e Disable strict aliasing on GCCs newer than 2 until we have analyzed and fixed all aliasing issues.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25016 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-18 09:40:53 +00:00
François Revol
274ee7ddf6 Add draggers to /bin/ in the image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@25015 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-18 00:34:05 +00:00
Michael Lotz
0eaadd30b2 * Applying patch by Dustin Howett that updates the iso9660 filesystem to the
new filesystem interface.
* Renamed sISO* to gISO* though as they are in fact not static.

Briefly tested and works as expected. Thanks for your work Dustin!
Closes enhancement #2089.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24994 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-17 06:26:43 +00:00
Michael Lotz
72010d4247 * Ported the FAT filesystem to the recent filesystem interface changes which
was, thanks to the detailed instructions from Ingo, quite doable.
* Ported the (deprecated and now publically removed) notify_listener() calls
  to the respective new notify_* calls.
* Fixed debug build.
* Added the FAT filesystem back to the image.

I only tested the filesystem briefly and everything seemed to work as expected
(mounted the FAT part of my bootable Haiku memory stick, opened a few files
and copied something to it). At least it should not be any more broken than
before the interface changes ;-).

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24987 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-16 20:24:22 +00:00
Ingo Weinhold
088fb3cd47 * Created OptionalTestPackages for optional packages that contain test
suites and the like, and moved the image jam code for PosixTestSuite
  and libMicro there.
* Some cleanup (line length, use grist).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24970 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-15 16:54:40 +00:00
Ingo Weinhold
b27b39f198 Added libMicro benchmark. Ported by Vasilis Kaoutsis.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24969 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-15 16:27:00 +00:00
Ingo Weinhold
59aca63f4c Simplified creation of the MIME DB. We create it in a directory first
and then copy it in one go instead of copying individual files. Also use
a single temp file instead of one for every entry.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24968 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-15 15:46:00 +00:00
Axel Dörfler
9c79200c6b Added ActivityMonitor to the image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24956 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-13 06:03:48 +00:00
Ingo Weinhold
f9ee0e634a Added unix sockets protocol module. There's still quite some debug
output enabled.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24950 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-12 18:42:12 +00:00
François Revol
3ee7fad0a9 export foo=bar doesn't seem to work with plain sh...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24923 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-12 02:45:21 +00:00
François Revol
a559f87af8 Remove use of bashisms since we use #!/bin/sh. This should help supporting solaris.
Added sunos to the list of platforms, but it needs more work.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24922 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-12 02:40:10 +00:00
Ingo Weinhold
df50f7a9b4 * Changed the way the socket functions work:
- The net_stack driver is no longer used. Instead we have a kernel
    module which is directly used by syscall implementations in the
    kernel. I.e. we no longer tunnel those functions through ioctls, but
    have normal syscalls.
  - Removed the superfluous net starter module.
  - Implemented the FDTYPE_SOCKET type file_descriptors, that is sockets
    are no longer vnode based.
  - Adjusted libnetwork (the socket function implementations)
    accordingly.
  - Adjusted netstat accordingly.
* Socket module:
  - Implemented socketpair().
  - Added "kernel" parameter to the control hook. Quite a few more hooks
    would actually need the parameter, but I didn't change those yet,
    since that would probably also require changes to the protocol
    module interface.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24908 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-11 04:12:23 +00:00
François Revol
c78985abf5 Replace spaces with tabs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24865 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-08 15:18:19 +00:00
Ingo Weinhold
335bf21834 Rebuilt libtool package, since the old one seemed to be missing files.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24848 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-06 23:28:50 +00:00
Ingo Weinhold
7ffafac8d7 * Reorganized the FS interface a little:
- Moved most file_system_module_info hooks into separate structures.
    Those that operate on mounted volumes to fs_volume_ops, those
    operating on a vnode to fs_vnode_ops.
  - Got rid of the fs_volume, fs_cookie, fs_vnode typedefs. We use void*
    again.
  - Instead of a void* volume and node cookie hooks are passed a
    fs_volume and fs_vnode structure pointer, which contain the cookie
    and an ops pointer (fs_volume a few more things).
  - The VFS {new,publish,get,...}_vnode() functions take a fs_volume*
    instead of the volume ID. So does vfs_get_fs_node_from_path().
  - Added type and flags arguments to publish_vnode() and the
    get_vnode() hook and removed the type argument from lookup() hook.
    Added vnode::type using formerly unused bits to store the node type.
    Simplified a few things in the VFS due to the now always available
    node type.
  - Added fs_volume_ops::{create,delete}_sub_vnode() and
    fs_vnode_ops::get_super_vnode() hooks. They are used to support file
    system layers, e.g. allowing to extend an FS not supporting BeOS
    attribute with attribute support. Needs some more work in the VFS.
  - Added fs_vnode_ops::create_special_node() hook for creating special
    nodes (e.g. FIFOs).
* Adjusted the built-in file systems and BFS according to the interface
  changes. Removed all other FSs from the image for the time being.
  We'll see whether further API changes are necessary before porting
  them.
* Adjusted the bfs_shell accordingly.
* Implemented create_special_node() in rootfs to support special nodes.
* Added support for FIFOs:
  - Added syscall _kern_create_fifo() (used by mkfifo()), which creates
    a special node (type S_IFIFO) in the respective file system.
  - When a special node is published the VFS creates a respective sub
    node. Currently only FIFOs are supported.
  - Added a little support for FIFO subnodes by using functionality from
    the pipefs.
  - Added mkfifo to the image. It can create FIFOs in the rootfs, but
    the FIFOs aren't really usable ATM, since they still work like
    pipes, i.e. readers and writers need to have them open at the same
    time.
* Some smaller changes in the VFS:
  - Made the *_CALL macros nicer to use (vargs).
  - Refactored FS entry lookup into new function lookup_dir_entry().
  - create_vnode() no longer just calls the FS create() hook. First it
    looks up the entry and uses open_vnode(), if it already exists. This
    is necessary for two reasons: 1) The FS might not support create()
    while still allowing to open() entries. 2) When the FS has other
    layers on to of it (or the respective node) it might not be
    responsible for opening the node.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24816 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-05 23:05:16 +00:00
Ingo Weinhold
3b9651f3fc Pass "--no-undefined" to the linker when building a shared library for
Haiku. Support for undefined symbols is nice in principle, but not
really needed for building Haiku itself, and can get little annoying, if
one really just forgot to link in a symbol or has a typo in a function
name in C code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24814 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-05 22:04:28 +00:00
Ingo Weinhold
7c529c2415 * Renamed vmdkheader to vmdkimage and changed it to create a full image
by default (new option "-H" will create the header only). Option "-c"
  will clear the image.
* Adjusted build_haiku_image accordingly. vmdkimage is way faster and
  more portable than the former vmdkheader+dd combo.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24784 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-03 21:18:18 +00:00
Ingo Weinhold
5b420b6d10 Replaced "echo -n >" by "touch" as it's more portable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24781 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-03 19:52:43 +00:00
Michael Lotz
463235a9a8 Add the usb_disk driver to the image.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24780 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-03 18:54:10 +00:00