#
9f81ca83 |
| 27-Sep-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Merge branch 'package-management'
Conflicts: src/preferences/network/Jamfile
|
#
372a6663 |
| 17-Sep-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
X86VMTranslationMapPAE: Add some ktracing for page (un)mapping
|
#
25a7b01d |
| 05-May-2013 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Merge branch 'master' into package-management
Additional changes: * Add src/system/kernel/lib/zlib, which builds a kernel version of zlib, needed by packagefs. * BuildFeatures: Add a build feature
Merge branch 'master' into package-management
Additional changes: * Add src/system/kernel/lib/zlib, which builds a kernel version of zlib, needed by packagefs. * BuildFeatures: Add a build feature "gcc2" to allow for easier checks. * Referenceable.cpp: Include <OS.h> instead of <debugger.h>. The latter is not needed and prevents building for the build platform. * zlib/zutil.h: Fix gcc 2 build. We really should use the external package instead.
Conflicts: .gitignore build/jam/BuildSetup build/jam/FileRules build/jam/FloppyBootImage build/jam/HaikuImage build/jam/ImageRules build/jam/KernelRules build/jam/NetBootArchive build/jam/OptionalBuildFeatures build/jam/OptionalLibPackages build/jam/OptionalPackageDependencies build/jam/OptionalPackages build/scripts/build_haiku_image configure data/bin/installoptionalpackage data/system/boot/Bootscript headers/os/app/Message.h headers/os/package/PackageInfo.h headers/os/package/PackageInfoAttributes.h headers/os/package/PackageInfoSet.h headers/os/package/PackageRoster.h headers/os/package/PackageVersion.h headers/os/package/hpkg/PackageInfoAttributeValue.h headers/os/storage/FindDirectory.h headers/os/storage/Node.h headers/os/support/StringList.h headers/private/system/directories.h src/add-ons/kernel/drivers/audio/ac97/es1370/Jamfile src/add-ons/kernel/file_systems/packagefs/AttributeIndex.cpp src/add-ons/kernel/file_systems/packagefs/Jamfile src/add-ons/kernel/file_systems/packagefs/Package.cpp src/add-ons/kernel/file_systems/packagefs/Package.h src/add-ons/kernel/file_systems/packagefs/PackageDomain.cpp src/add-ons/kernel/file_systems/packagefs/PackageDomain.h src/add-ons/kernel/file_systems/packagefs/PackageFSRoot.cpp src/add-ons/kernel/file_systems/packagefs/PackageLinkDirectory.cpp src/add-ons/kernel/file_systems/packagefs/PackageLinkDirectory.h src/add-ons/kernel/file_systems/packagefs/PackageLinkSymlink.cpp src/add-ons/kernel/file_systems/packagefs/PackageLinkSymlink.h src/add-ons/kernel/file_systems/packagefs/PackageLinksDirectory.cpp src/add-ons/kernel/file_systems/packagefs/PackageNode.h src/add-ons/kernel/file_systems/packagefs/ResolvableFamily.cpp src/add-ons/kernel/file_systems/packagefs/Version.cpp src/add-ons/kernel/file_systems/packagefs/Version.h src/add-ons/kernel/file_systems/packagefs/Volume.cpp src/add-ons/kernel/file_systems/packagefs/Volume.h src/add-ons/kernel/file_systems/packagefs/kernel_interface.cpp src/add-ons/kernel/file_systems/userlandfs/shared/driver_settings.c src/apps/deskbar/BarApp.cpp src/apps/deskbar/BarMenuBar.cpp src/apps/deskbar/BarMenuBar.h src/apps/deskbar/BarView.cpp src/apps/deskbar/BarView.h src/apps/deskbar/BarWindow.cpp src/apps/deskbar/BarWindow.h src/apps/deskbar/DeskbarMenu.cpp src/apps/deskbar/DeskbarMenu.h src/apps/deskbar/DeskbarUtils.cpp src/apps/deskbar/DeskbarUtils.h src/apps/deskbar/ExpandoMenuBar.cpp src/apps/deskbar/ExpandoMenuBar.h src/apps/deskbar/TeamMenu.cpp src/apps/processcontroller/ProcessController.cpp src/apps/remotedesktop/RemoteDesktop.cpp src/bin/bash/config-top.h src/bin/finddir.c src/bin/package/Jamfile src/bin/package/command_add.cpp src/bin/package/command_create.cpp src/bin/package/command_list.cpp src/bin/package_repo/command_list.cpp src/bin/pkgman/command_refresh.cpp src/build/libbe/support/Jamfile src/build/libpackage/Jamfile src/build/libroot/Jamfile src/build/libroot/fs.cpp src/build/libroot/remapped_functions.h src/kits/locale/MutableLocaleRoster.cpp src/kits/opengl/GLRendererRoster.cpp src/kits/package/PackageInfo.cpp src/kits/package/PackageInfoSet.cpp src/kits/package/PackageRoster.cpp src/kits/package/PackageVersion.cpp src/kits/package/RepositoryCache.cpp src/kits/package/hpkg/PackageWriterImpl.cpp src/kits/package/hpkg/ReaderImplBase.cpp src/kits/package/hpkg/WriterImplBase.cpp src/kits/print/PrintTransport.cpp src/kits/print/Printer.cpp src/kits/screensaver/ScreenSaverRunner.cpp src/kits/support/StringList.cpp src/kits/tracker/ContainerWindow.cpp src/kits/tracker/DeskWindow.cpp src/kits/tracker/PoseView.cpp src/libs/print/libprint/Transport.cpp src/preferences/printers/AddPrinterDialog.cpp src/preferences/screensaver/ScreenSaverWindow.cpp src/servers/debug/DebugServer.cpp src/servers/input/AddOnManager.cpp src/servers/media_addon/MediaAddonServer.cpp src/system/boot/Jamfile src/system/boot/loader/Jamfile src/system/boot/loader/loader.cpp src/system/boot/loader/vfs.cpp src/system/kernel/fs/vfs.cpp src/system/kernel/fs/vfs_boot.cpp src/system/libroot/os/find_directory.cpp src/system/runtime_loader/runtime_loader.cpp src/tools/package/Jamfile
show more ...
|
#
a84e14ca |
| 16-Dec-2011 |
Alex Wilson <yourpalal2@gmail.com> |
Merge branch 'master' of git://github.com/haiku/haiku
|
#
1fe24d0c |
| 03-Dec-2011 |
Michael Lotz <mmlr@mlotz.ch> |
Add heap with guard pages to detect out of bound reads/writes.
This is a very simple heap implementation that allocates memory so that the end of each allocation always coincides with a page end and
Add heap with guard pages to detect out of bound reads/writes.
This is a very simple heap implementation that allocates memory so that the end of each allocation always coincides with a page end and is followed by a guard page which is marked non-present. Out of bounds access (both read and write) therefore cause a crash (unhandled page fault).
Note that this allocator is neither speed nor space efficient, indeed it wastes huge amounts of pages and address space so it is quite easy to hit limits. It is intended as a pure debug feature.
show more ...
|
#
19ae20e6 |
| 05-Nov-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Merge branch 'master' into pm-flat
Conflicts: build/jam/HaikuImage build/jam/OptionalBuildFeatures build/jam/OptionalPackages build/jam/UserBuildConfig.sample data/bin/installoptionalpackage s
Merge branch 'master' into pm-flat
Conflicts: build/jam/HaikuImage build/jam/OptionalBuildFeatures build/jam/OptionalPackages build/jam/UserBuildConfig.sample data/bin/installoptionalpackage src/apps/deskbar/DeskbarMenu.cpp src/servers/debug/DebugServer.cpp src/system/kernel/fs/vfs.cpp
show more ...
|
#
865a0be1 |
| 04-Nov-2011 |
Michael Lotz <mmlr@mlotz.ch> |
Add optional stack traces to {Allocate|Free}Page[Run] tracing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43185 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
e1c6140e |
| 01-Nov-2011 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
mmlr + bonefish: * Add optional stack trace capturing for slab memory manager tracing. * Add allocation tracking for the slab allocator (enabled via SLAB_ALLOCATION_TRACKING). The allocation tracki
mmlr + bonefish: * Add optional stack trace capturing for slab memory manager tracing. * Add allocation tracking for the slab allocator (enabled via SLAB_ALLOCATION_TRACKING). The allocation tracking requires tracing with stack traces to be enabled for object caches and/or the memory manager. - Add class AllocationTrackingInfo that associates an allocation with its respective tracing entry. The structure is added to the end of an allocation done by the memory manager. For the object caches there's a separate array for each slab. - Add code range markers to the slab code, so that the first caller into the slab code can be retrieved from the stack traces. - Add KDL command "allocations_per_caller" that lists all allocations summarized by caller. * Move debug definitions from slab_private.h to slab_debug.h.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43072 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
72156a40 |
| 31-Oct-2011 |
Michael Lotz <mmlr@mlotz.ch> |
bonefish+mmlr: * Introduce "paranoid" malloc/free into the slab allocator (initializing allocated memory to 0xcc and setting freed memory to 0xdeadbeef). * Allow for optional stack traces for slab
bonefish+mmlr: * Introduce "paranoid" malloc/free into the slab allocator (initializing allocated memory to 0xcc and setting freed memory to 0xdeadbeef). * Allow for optional stack traces for slab object cache tracing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@43046 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
74fc3e9a |
| 14-Apr-2010 |
Michael Lotz <mmlr@mlotz.ch> |
bonefish+mmlr: * Add file descriptor and IO context tracing. * Some minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36272 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
bd7645a1 |
| 20-Feb-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Made vm_page::state private and added accessor methods. * Added kernel tracing for page state transitions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35538 a95241bf-73f2-0310-859d-f6bbb
* Made vm_page::state private and added accessor methods. * Added kernel tracing for page state transitions.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35538 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
b4e5e498 |
| 25-Jan-2010 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
MemoryManager: * Added support to do larger raw allocations (up to one large chunk (128 pages)) in the slab areas. For an even larger allocation an area is created (haven't seen that happen yet,
MemoryManager: * Added support to do larger raw allocations (up to one large chunk (128 pages)) in the slab areas. For an even larger allocation an area is created (haven't seen that happen yet, though). * Added kernel tracing (SLAB_MEMORY_MANAGER_TRACING). * _FreeArea(): Copy and paste bug: The meta chunks of the to be freed area would be added to the free lists instead of being removed from them. This would corrupt the lists and also lead to all kinds of misuse of meta chunks.
object caches: * Implemented CACHE_ALIGN_ON_SIZE. It is no longer set for all small object caches, but the block allocator sets it on all power of two size caches. * object_cache_reserve_internal(): Detect recursion and don't wait in such a case. The function could deadlock itself, since HashedObjectCache::CreateSlab() does allocate memory, thus potentially reentering. * object_cache_low_memory(): - I missed some returns when reworking that one in r35254, so the function might stop early and also leave the cache in maintenance mode, which would cause it to be ignored by object cache resizer and low memory handler from that point on. - Since ReturnSlab() potentially unlocks, the conditions weren't quite correct and too many slabs could be freed. - Simplified things a bit. * object_cache_alloc(): Since object_cache_reserve_internal() does potentially unlock the cache, the situation might have changed and their might not be an empty slab available, but a partial one. The function would crash. * Renamed the object cache tracing variable to SLAB_OBJECT_CACHE_TRACING. * Renamed debugger command "cache_info" to "slab_cache" to avoid confusion with the VMCache commands. * ObjectCache::usage was not maintained anymore since I introduced the MemoryManager. object_cache_get_usage() would thus always return 0 and the block cache would not be considered cached memory. This was only of informational relevance, though.
slab allocator misc.: * Disable the object depots of block allocator caches for object sizes > 2 KB. Allocations of those sizes aren't so common that the object depots yield any benefit. * The slab allocator is now fully self-sufficient. It allocates its bootstrap memory from the MemoryManager, and the hash tables for HashedObjectCaches use the block allocator instead of the heap, now. * Added option to use the slab allocator for malloc() and friends (USE_SLAB_ALLOCATOR_FOR_MALLOC). Currently disabled. Works in principle and has virtually no lock contention. Handling for low memory situations is yet missing, though. * Improved the output of some debugger commands.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35283 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
a38f8503 |
| 22-Dec-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* arch_debug_get_stack_trace(): - Replaced the "userOnly" parameter by a "flags" parameter, that allows to specify kernel and userland stack traces individually. - x86, m68k: Don't always ski
* arch_debug_get_stack_trace(): - Replaced the "userOnly" parameter by a "flags" parameter, that allows to specify kernel and userland stack traces individually. - x86, m68k: Don't always skip the first frame as that prevents the caller from being able to record its own address. * capture_tracing_stack_trace(): Replaced the "userOnly" parameter by "kernelOnly", since one is probably always interested in the kernel stack trace, but might not want the userland stack trace. * Added stack trace support for VM cache kernel tracing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34742 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
3ac4f1f2 |
| 27-Oct-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* I even had a second look, but didn't spot this one - thanks Urias!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33786 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4cadec3d |
| 23-Oct-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* Thanks for the heads up, David! :-))
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33738 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f28dd36b |
| 22-Oct-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* The alphabet is obviously hard, moved some tracing defines at their (hopefully) correct place. * It seems to be even harder to understand basic locking primitives: when you think about it, it s
* The alphabet is obviously hard, moved some tracing defines at their (hopefully) correct place. * It seems to be even harder to understand basic locking primitives: when you think about it, it shouldn't surprise you that conditional variables never return B_WOULD_BLOCK. This fixes gdb again. * Added tracing support to the ports subsystem. * get_port_message() will now resize the port heap if needed (but will also take timeouts into account while doing so, more or less). The initial port space is 4MB (as before), the growth rate is the same, and the system wide limit is arbitrarily set to 64 MB (all swappable). A team limit has been set to 8 MB, but is not enforced yet. Since ports are using up address space in the kernel, those seems to be proper limits. * This also fixes a strange, and rare lockup where the mouse cursor would still move, but everything else would basically hang, but look perfectly normal from KDL on the first look. As recently happened on Brecht's laptop, and debugged by mmlr and me: the cbuf space got used up when lots of windows wanted to redraw after a workspace switch. The app_server wouldn't answer anymore to client requests, but thought it would have done so, as LinkSender::Flush() doesn't care if it got a B_NO_MEMORY (the ports will now block until memory is available if possible, so that should not be a problem anymore). * Improved "port" KDL command, it now also prints the messages in the port.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33735 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
81f9115d |
| 10-Sep-2009 |
Marcus Overhagen <marcusoverhagen@gmail.com> |
added tracing of ATA DMA transfers
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33040 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b2cfc2b1 |
| 23-Oct-2008 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Added kernel tracing for page faults. * vm_clone_area() does now set the B_SHARED_AREA flag on both the source and the cloned area. This is necessary, since it would no longer be guaranteed tha
* Added kernel tracing for page faults. * vm_clone_area() does now set the B_SHARED_AREA flag on both the source and the cloned area. This is necessary, since it would no longer be guaranteed that areas are backed by leaf caches only (after fork()ing), which doesn't work with our cache merging strategy. Fixes #2605.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28296 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
d654f56a |
| 11-Oct-2008 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Added kernel tracing for the page daemon and the page writer. * Added some commented out debug output in vm.cpp.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27971 a95241bf-73f2-0310-859d
* Added kernel tracing for the page daemon and the page writer. * Added some commented out debug output in vm.cpp.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27971 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
886c05d0 |
| 03-Sep-2008 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Macro for additional scheduling analysis tracing.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27305 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
5b3feb86 |
| 01-Sep-2008 |
Marcus Overhagen <marcusoverhagen@gmail.com> |
Preparing support for ATA and ATAPI tracing
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27273 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
fa2fa606 |
| 23-Aug-2008 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added kernel tracing for the swap support.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@27178 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3d3fe5a5 |
| 11-Aug-2008 |
Axel Dörfler <axeld@pinc-software.de> |
* Added tracing support to our scheduler to be able to do better diagnosis with scheduling problems.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26929 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
58306fec |
| 03-Aug-2008 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Added tracing for vfs_{read,write}_pages). * {read,write}_pages() use vfs_{read,write}_pages() now, instead of invoking the FS {read,write}_pages() hooks.
git-svn-id: file:///srv/svn/repos/haik
* Added tracing for vfs_{read,write}_pages). * {read,write}_pages() use vfs_{read,write}_pages() now, instead of invoking the FS {read,write}_pages() hooks.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26750 a95241bf-73f2-0310-859d-f6bbb57e9c96
show more ...
|
#
0d066dea |
| 20-Jul-2008 |
Axel Dörfler <axeld@pinc-software.de> |
* Added block level tracing to the block cache.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26521 a95241bf-73f2-0310-859d-f6bbb57e9c96
|