#
528d5321 |
|
24-Jul-2023 |
Augustin Cavalier <waddlesplash@gmail.com> |
userlandfs: Adjust path to Notifications.cpp.
|
#
899e0ef8 |
|
01-Jul-2023 |
PulkoMandy <pulkomandy@pulkomandy.tk> |
userlandfs: use std::bitset for FSCapabilities gcc 13 is confused by the custom bitset implementation, so use the C++ standard one instead. However, this results in including the C++ <string> header in kernel code. This doesn't work for gcc2, because of two problems: - That header includes a declaration of atomic_add that doesn't match the one in SupportsDefs.h (which can in some cases replace the function with a #define for an inline version). Adjust the header to use the be a problem because it creates a risk of circular inclusions. Standard C++ headers shouldn't depend on BeAPI ones. - It also leads to the inclusion of iostream which defined lock and unlock functions in the global namespace. We don't want these, and they are not part of the C++ standard, so just remove them. Ideally we could use std::hash for the GetHashCode implementation, but that doesn't work because it depends on an helper function that's in libstdc++, and we can't link that from kernel add-ons. Change-Id: Iee07280beb4dddf7a9b6160e37f3b816e4de89ae Reviewed-on: https://review.haiku-os.org/c/haiku/+/6663 Reviewed-by: Niels Sascha Reedijk <niels.reedijk@gmail.com> Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
|
#
ace74964 |
|
13-Jan-2015 |
Adrien Destugues <pulkomandy@gmail.com> |
Remove khash from the sources. Fixes #9552.
|
#
220d0402 |
|
31-Jul-2014 |
Oliver Tappe <zooey@hirschkaefer.de> |
Use libstdc++, libsupc++ and libgcc from gcc_syslibs. * Instead of faking libstdc++.so from libstdc++.a, use libstdc++.so from the gcc_syslibs build feature for everything except x86_gcc2. * Use libgcc_s.so from the gcc_syslibs build feature for everything but x86_gcc2 (which still carries libgcc as part of libroot.so). * Drop filtering of libgcc objects for libroot, as that is no longer necessary since we're only using libgcc-as-single-object for libroot with x86_gcc2, where the filtered object file doesn't exist. Should the objects that used to be filtered cause any problems as part of libgcc_s.so, we can always filter them as part of the gcc build. * Use libsupc++.so from the gcc_syslibs build feature for everything but x86_gcc2. * Adjust all Jamfiles accordingly. * Deactivate building of faked libstdc++.so for non-x86-gcc2. For x86_gcc2, we still build libstdc++.so from the sources in the Haiku source tree as part of the Haiku build . * Put gcc_syslibs package onto the image, when needed.
|
#
604770b3 |
|
11-Jul-2014 |
Julian Harnath <julian.harnath@rwth-aachen.de> |
Adapt kernelland_emu to kernel API changes * Adapt to changes in kernel synchronization APIs. * Makes userlandfs work again.
|
#
bd185b41 |
|
01-Dec-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
*.c -> *.cpp git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34417 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c77f643a |
|
20-Nov-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added support for in-kernel node monitoring ({add,remove}_node_listener()). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34147 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
cf17d269 |
|
17-Nov-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added Referenceable.cpp -- it's in the kernel, so we need it. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34086 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
16d5c24e |
|
07-Jul-2009 |
Oliver Tappe <zooey@hirschkaefer.de> |
* merged 32bit-wchar_t branches of buildtools and haiku back into the respective trunk git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31443 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4649fe05 |
|
17-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Haiku kernel interface emulation: Retrieve the capabilities for each vnode. We do some caching using a hash table indexed by the operations vector. * Pass the vnode capabilities to the kernel module. * In the kernel tailor the operation vectors for volumes and vnodes passed to the VFS according to the respective capabilities. This way those vectors look pretty much like those from the client FS. This saves unnecessary calls when hooks are not implemented and should also fix compatibility problems in cases where not implementing a hook and returning an error don't mean the same to the VFS. * Inlined some of the kernel module Volume class getters. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29572 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
42e53f97 |
|
08-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Added kernelland_emu vm.cpp (for user_{strlcpy,memcpy}()). * Added dummy entry cache functions. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29457 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
daa67478 |
|
08-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the khash, condition variable, lock, block cache, and slab implementations and instead use the kernel sources directly or the libkernelland_emu sources. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29456 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
484708d5 |
|
07-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the OpenHashTable implementation the UserlandFS used. Adjusted the HashMap and HashSet classes to use the kernel utils OpenHashTable instead. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29429 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
aa085ffe |
|
05-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Removed UserlandFS shared Locker class. Instead use BLocker in userland and RecursiveLock in the kernel. * Several adjustments according to UserlandFS header changes. * Re-added reiserfs to image. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29410 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c0509ccc |
|
05-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed several shared userlandfs classes that exist as Haiku shared or kernel util classes as well. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29404 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2f1f4f54 |
|
01-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Renamed UserlandFSServer to userlandfs_server. It is expected to live in /system/servers, now. * Got rid of the dispatcher application. It was the entity the kernel module talked to when mounting a yet unknown FS. It started the client FS server applications. Now the kernel module starts them directly. They use respectively named ports, so the kernel module can find them when already running. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29377 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3b8f138f |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the parent directory from the header directories again. Instead include the respective headers explicitly. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29352 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c12690b5 |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Some file renaming (removed the haiku_ prefix). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29351 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
67cf3a62 |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the file cache emulation and added implementation stubs for the file cache functions. We won't emulate the file cache in userland anymore, but forward the calls to the kernel. Besides that this will save quite a bit of emulation code, it will also make mmap()ing files on UserlandFS volumes possible. The drawback is that these calls will be slower. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29349 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
e4ec0a23 |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added the kernel file map implementation. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29348 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8f53cb42 |
|
27-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Missing include directory. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29346 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a7b34687 |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Reorganized the sources. Haiku and BeOS kernel interface each have their own subdirectory, now. * Moved all code specific to a kernel interface into the respective library. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29344 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
ace74964f1cc6cf459950ce03240d6b2b28cbb38 |
|
13-Jan-2015 |
Adrien Destugues <pulkomandy@gmail.com> |
Remove khash from the sources. Fixes #9552.
|
#
220d04022750f40f8bac8f01fa551211e28d04f2 |
|
31-Jul-2014 |
Oliver Tappe <zooey@hirschkaefer.de> |
Use libstdc++, libsupc++ and libgcc from gcc_syslibs. * Instead of faking libstdc++.so from libstdc++.a, use libstdc++.so from the gcc_syslibs build feature for everything except x86_gcc2. * Use libgcc_s.so from the gcc_syslibs build feature for everything but x86_gcc2 (which still carries libgcc as part of libroot.so). * Drop filtering of libgcc objects for libroot, as that is no longer necessary since we're only using libgcc-as-single-object for libroot with x86_gcc2, where the filtered object file doesn't exist. Should the objects that used to be filtered cause any problems as part of libgcc_s.so, we can always filter them as part of the gcc build. * Use libsupc++.so from the gcc_syslibs build feature for everything but x86_gcc2. * Adjust all Jamfiles accordingly. * Deactivate building of faked libstdc++.so for non-x86-gcc2. For x86_gcc2, we still build libstdc++.so from the sources in the Haiku source tree as part of the Haiku build . * Put gcc_syslibs package onto the image, when needed.
|
#
604770b31331951e0f9b44b368c21dc2b004d920 |
|
11-Jul-2014 |
Julian Harnath <julian.harnath@rwth-aachen.de> |
Adapt kernelland_emu to kernel API changes * Adapt to changes in kernel synchronization APIs. * Makes userlandfs work again.
|
#
bd185b4117e06c1674c4d214abc3917acedc560d |
|
01-Dec-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
*.c -> *.cpp git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34417 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c77f643a2b3f3990e6f355d6c333537b9cbfd88f |
|
20-Nov-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added support for in-kernel node monitoring ({add,remove}_node_listener()). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34147 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
cf17d2695dd4b86d303953ea6c486b725416688f |
|
17-Nov-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added Referenceable.cpp -- it's in the kernel, so we need it. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34086 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
16d5c24e533eb14b7b8a99ee9f3ec9ba66335b1e |
|
07-Jul-2009 |
Oliver Tappe <zooey@hirschkaefer.de> |
* merged 32bit-wchar_t branches of buildtools and haiku back into the respective trunk git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31443 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4649fe05ef03c9981231538121df35aab32f2bc0 |
|
17-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Haiku kernel interface emulation: Retrieve the capabilities for each vnode. We do some caching using a hash table indexed by the operations vector. * Pass the vnode capabilities to the kernel module. * In the kernel tailor the operation vectors for volumes and vnodes passed to the VFS according to the respective capabilities. This way those vectors look pretty much like those from the client FS. This saves unnecessary calls when hooks are not implemented and should also fix compatibility problems in cases where not implementing a hook and returning an error don't mean the same to the VFS. * Inlined some of the kernel module Volume class getters. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29572 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
42e53f97a21b778c57b2036e96df35b4cbb4563c |
|
08-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Added kernelland_emu vm.cpp (for user_{strlcpy,memcpy}()). * Added dummy entry cache functions. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29457 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
daa674789c7b247e3002a595bd53c4ef44caa8ab |
|
08-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the khash, condition variable, lock, block cache, and slab implementations and instead use the kernel sources directly or the libkernelland_emu sources. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29456 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
484708d5d6c234d7e282898eb05895d988569fc5 |
|
07-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the OpenHashTable implementation the UserlandFS used. Adjusted the HashMap and HashSet classes to use the kernel utils OpenHashTable instead. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29429 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
aa085ffef993707b59f861a32404f1fca50055e9 |
|
05-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Removed UserlandFS shared Locker class. Instead use BLocker in userland and RecursiveLock in the kernel. * Several adjustments according to UserlandFS header changes. * Re-added reiserfs to image. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29410 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c0509ccc2954628faa943034feab9e3fe15e3df1 |
|
05-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed several shared userlandfs classes that exist as Haiku shared or kernel util classes as well. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29404 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
2f1f4f54d64e2d0a04015de5c3788fabc1989aa0 |
|
01-Mar-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Renamed UserlandFSServer to userlandfs_server. It is expected to live in /system/servers, now. * Got rid of the dispatcher application. It was the entity the kernel module talked to when mounting a yet unknown FS. It started the client FS server applications. Now the kernel module starts them directly. They use respectively named ports, so the kernel module can find them when already running. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29377 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3b8f138f436bac5f2e97e136f6ced24e23d8ae24 |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the parent directory from the header directories again. Instead include the respective headers explicitly. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29352 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
c12690b58af593e40fe5cb7aff0aa1a942228bb2 |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Some file renaming (removed the haiku_ prefix). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29351 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
67cf3a62b49362a086ab35930b86d0f6eeec7531 |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Removed the file cache emulation and added implementation stubs for the file cache functions. We won't emulate the file cache in userland anymore, but forward the calls to the kernel. Besides that this will save quite a bit of emulation code, it will also make mmap()ing files on UserlandFS volumes possible. The drawback is that these calls will be slower. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29349 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
e4ec0a2364b3fe0b5f4b8ca0c7ea1b54ef8e8735 |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Added the kernel file map implementation. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29348 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8f53cb421d1082aaf94822d060af1f43342566a6 |
|
27-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Missing include directory. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29346 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
a7b346877023493472fc5c8ef0de99ed9043450f |
|
28-Feb-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
* Reorganized the sources. Haiku and BeOS kernel interface each have their own subdirectory, now. * Moved all code specific to a kernel interface into the respective library. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29344 a95241bf-73f2-0310-859d-f6bbb57e9c96
|