Commit Graph
10 Commits
Author SHA1 Message Date
Axel Dörfler fb02804a89 Big update while moving over completely to the Haiku kernel:
- Ported over BFS to the new cache API
- Inode no longer inherits from CachedBlock, and therefore, no longer
  keeps the whole inode block in memory. It now has a copy of the bfs_inode
  structure in memory instead. This has a number of advantages but also some
  disadvantages, so it might be reverted later, even if it's unlikely.
- Added a NodeGetter class that can be used whenever the real block needs
  to be accessed (ie. for attributes)
- Changed *transaction to &transaction where possible
- Removed support for KEEP_WRONG_DIRENT_RECLEN
- Removed support for uncached file access since that's no longer needed
- Fixed some endian issues in bfs_write_stat()
- Removed the install BFS rules, since they don't make any sense anymore
  (unless you are running Haiku ;-))

Note, logged streams are not supported anymore right now. Also, the
transaction code is pretty simple and slow - it will be improved later
on. Attribute code is pretty much untested in the new environment.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10053 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 20:53:45 +00:00
Axel Dörfler dca5d901c7 Added missing include.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7820 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-07 22:50:31 +00:00
Axel Dörfler feec20d64b It's now <util/kernel_cpp.h> rather than <kernel_cpp.h>.
Forgot to commit that...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7442 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-05-07 11:13:17 +00:00
Axel Dörfler a49b150fff Removed the fOwningThread functionality from the Journal class; it now
just uses a RecursiveLock instead.
Changed Journal::CurrentTransaction() so that it returns the current
transaction only if it's valid for the thread asking for it.
That doesn't fix the bug, but changed its timing a bit.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6356 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-27 11:19:05 +00:00
Axel Dörfler 54343bbc2d Switched to kernel_cpp.h/cpp.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6291 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-25 14:48:40 +00:00
Nathan Whitehorn 1a49a0986b Bunches of changes to make mwcc like the code. I also coded an _atomic_set() and _atomic_test_and_set() for PowerPC. Of course, there's already one in the kernel tree, but mine's better. :P Now builds (and works, after a fashion) on R5 PowerPC.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5280 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-08 04:39:58 +00:00
Axel Dörfler 24d6529a93 Journal::LogBlocks() now calls cache_write() if the block is already in the
log entry - this is only necessary if the buffer is not the one of the
CachedBlock object.
Journal::TransactionDone() now properly aborts transactions if possible,
instead of just writing them to disk (does only work if the log entry
was not used by other transactions already).
Added a comment about how to speed up writing the log entries a bit more
(though it's not so easy to do, and might not be much faster).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-05-28 01:10:22 +00:00
Axel Dörfler 98b972c906 Fixed all warnings that appeared with DEBUG=1 set.
Also fixed missing return codes in BufferPool::ReleaseBuffer() and Journal::WriteLogEntry().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2845 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-25 15:07:26 +00:00
Axel Dörfler ceeb00d41a Fixed a possibly crashing bug (missing strerror() with %s format).
Fixed many warnings (due to -Wall). Some style cleanups.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2843 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-02-25 03:03:30 +00:00
Axel Dörfler c42ee13401 Initial revision
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@639 a95241bf-73f2-0310-859d-f6bbb57e9c96
2002-08-07 23:14:13 +00:00