Commit Graph

9856 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
04c79aa160 Removed KEEP_WRONG_DIRENT_RECLEN support.
Fixed endian issue.
Changed due to new inode code.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10052 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 20:30:48 +00:00
Axel Dörfler
8f60d4cdba Removed dumb put BeOS compatible cache implementation - it's not needed anymore.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10051 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 20:29:17 +00:00
Axel Dörfler
fe58583daa Now defines BFS_NATIVE_ENDIAN if BFS is compiled only for native endians.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10050 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 20:27:14 +00:00
Axel Dörfler
9351856593 Removed support for the Metrowerks compiler; it's not needed under Haiku (the
R5 compatible version still has this support).
Added a missing const to block_run::IsZero().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10049 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 20:26:23 +00:00
Axel Dörfler
10b8d84f32 Added empty file_cache_sync().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10048 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 20:24:27 +00:00
Axel Dörfler
86c3e70cd9 Some changes to the transaction API: the prefix is now only cache_*().
Added API for sub transactions (not yet implemented).
Added file_cache_sync() function.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10047 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 20:23:58 +00:00
Axel Dörfler
583565f02a Added unistd/sync.c to the kernel.
Removed unneeded source grist.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10046 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 20:19:53 +00:00
Axel Dörfler
5987043c75 Added new shutdown() function that at least does a sync() before rebooting
the system. Should shutdown all other things, too.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10045 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 20:18:27 +00:00
Axel Dörfler
fc5fb64131 Implemented arch_cpu_shutdown().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10044 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 20:16:52 +00:00
Axel Dörfler
4cf2317767 Replaced reboot() by arch_cpu_shutdown().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10043 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 20:16:20 +00:00
Axel Dörfler
3780fc858b Now uses new shutdown() function instead of reboot() directly.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10042 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 20:15:13 +00:00
Axel Dörfler
7b380c5b9f Added a comment why debugging kernel stacks doesn't work like one would expect.
Added prototype for new shutdown() function.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10041 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 20:13:58 +00:00
shatty
787b9abf8a we have mktime (in libroot.so), so do not include the missing mktime, which defines an extraneous main function when DEBUG is defined
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10040 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 19:59:07 +00:00
Axel Dörfler
b4727c735c Added the "date" command to the image.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10039 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 19:49:40 +00:00
Jérôme Duval
4105e5170e Added zic and zdump from ftp://elsie.nci.nih.gov/pub/tzcode2004g.tar.gz
Used to compile timezone source files


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10038 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 19:46:05 +00:00
Axel Dörfler
137270c9e6 Readded our ctime.c - removed equivalent versions from localtime.c, so that
not everything is in this one file.
Removed definition of STD_INSPIRED: this not only fixes some warnings, it
also removes functions that are not exported under BeOS, and there is no
reason to change that.
Added weak export of timelocal() in case STD_INSPIRED is not defined in
localtime.c.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10037 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 19:44:09 +00:00
Axel Dörfler
6a689590ce Removed unneeded includes of ktypes.h.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10036 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 19:40:05 +00:00
Jérôme Duval
424ecf02b2 added zic
build top and tput against libroot.so


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10035 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 19:36:29 +00:00
Jérôme Duval
8142662e09 added timezone source files from ftp://elsie.nci.nih.gov/pub/tzdata2004g.tar.gz
build with zic
needs to run 'configure' after new timezone files or new timezones are added


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10034 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 19:34:35 +00:00
Jérôme Duval
8103070483 added etc directory
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10033 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 19:27:56 +00:00
Axel Dörfler
affaac6cca Removed some unnecessary includes, added Marcus as author of this file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10032 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 19:26:39 +00:00
Jérôme Duval
5067c6cfef Added data directory, it should contain generated data files
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10031 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 19:25:44 +00:00
Jérôme Duval
4c74bde8e5 Added support for timezone files which are parsed at configure time.
This allows jam to know which targets are expected.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10030 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 19:24:10 +00:00
Axel Dörfler
d9dd2139b1 Removed misc.c from the build for now.
Removed unneeded grist from source files.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10029 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 19:12:21 +00:00
Axel Dörfler
48d914c9ce Disabled some unneeded checksum code (cbuf is still "abused" in our ports
and pipefs implementation, but was originally thought for a network stack).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10028 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 19:11:04 +00:00
Jérôme Duval
4cd2feb7fa from ftp://elsie.nci.nih.gov/pub/tzcode2004g.tar.gz
private.h and tzfile.h are in common with timezone compiler, so we put them in headers
Sorry to not use cvs import


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10027 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 15:42:10 +00:00
Ingo Weinhold
081debe878 Fixed treatment of source files in UseArchObjectHeaders and SourceHdrs. Grist/object suffix were not set correctly.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10026 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 15:42:06 +00:00
Axel Dörfler
83c97032ee Now use the BFS R5 for now. Might get moved to the Haiku one later on.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10025 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 15:35:51 +00:00
Jérôme Duval
9b51d2f8fb Added implementation localtime.c strftime.c
from ftp://elsie.nci.nih.gov/pub/tzcode2004g.tar.gz
private.h and tzfile.h are in common with timezone compiler, so we put them in headers
Sorry to not use cvs import


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10024 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 15:35:23 +00:00
Axel Dörfler
efce0b7346 Initial revision
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10020 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 15:23:44 +00:00
François Revol
f9081c794e Some more meat, by Oscar Lesta <BiPolar AT SoftHome.net>
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10019 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-19 14:08:06 +00:00
Axel Dörfler
90bd2971cb Added mkdir and sleep.
The mount directory is now removed after unmounting the image.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10018 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 20:46:16 +00:00
Rudolf Cornelissen
221081060b Changed OS name from Haiku-OS to Haiku, as requested.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10017 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 19:42:30 +00:00
Axel Dörfler
0db0e9aaa2 KSTACK_SIZE, STACK_SIZE, and MAIN_THREAD_STACK_SIZE were all renamed.
Fixed a bug in the team thread start: it did not set sizeLeft correctly
before copying the arguments - shouldn't have had any consequences, though,
as the size of the arguments is known before.
Added a comment explaining the current layout of the main thread stack area.
Now makes use of B_STACK_AREA and B_KERNEL_STACK_AREA.
fill_thread_info() did not correctly set thread_info::stack_end.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10016 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 18:15:39 +00:00
Axel Dörfler
b139f2481d Renamed KSTACK_SIZE to KERNEL_STACK_SIZE.
Fixed a bug in arch_init_tls() that did not support different stack sizes
(ie. didn't use the thread::user_stack_size variable).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10015 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 18:11:19 +00:00
Axel Dörfler
8bde4cf98c vm_store::fault() can now decide not to handle the fault - when it returns
B_BAD_HANDLER, vm_soft_fault() will just continue as if there is no fault()
function.
There is now support for the B_STACK_AREA and B_KERNEL_STACK_AREA protection
values: if the former is used, or the latter in combination with DEBUG_KERNEL_STACKS,
a number of guard pages is inserted at the bottom of the stack (depending on
the STACK_GROWS_DOWNWARDS/UPWARDS arch config).
In addition, user stacks are no longer committed completely, ie. they don't
reserve memory for their whole size, only as much as is needed. That may
result in applications crashing when they need a lot of stack and there is
no memory left. Before this change, you could not even run that application.
Since BeOS has a 16 MB stack for the main thread, you could only run about
2 applications with 64 MB before.
Due to these changes, we've now switched to the standard BeOS stack sizes.
Some minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10014 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 18:03:34 +00:00
Axel Dörfler
9ebc403c77 Renamed KSTACK_SIZE to KERNEL_STACK_SIZE, STACK_SIZE to USER_STACK_SIZE,
MAIN_THREAD_STACK_SIZE to USER_MAIN_THREAD_STACK_SIZE.
Added support for stack overflow debugging: in userspace, the lower (on x86)
4 pages will be used to detect stack overflows. It's disabled for kernel
stacks by default.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10013 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 17:49:12 +00:00
Axel Dörfler
704d6e100b Added stack special case to the anonymous store.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 17:46:39 +00:00
Axel Dörfler
d55026c2d5 Added empty implementation of mknod() - should be pretty much what BeOS does.
The "mv" command needed it.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10011 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 16:56:10 +00:00
Ingo Weinhold
94a49b214b Fixed SetupKernel. SourceHdrs is best invoked on source files, otherwise
HDRSEARCH won't be set on the sources which may cause header dependencies
to be missing.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10010 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 15:59:02 +00:00
Rudolf Cornelissen
d7c3880880 added / updated PCI config space register defines.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10008 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 14:47:11 +00:00
Axel Dörfler
99daf65959 Added definitions that describe the stack direction.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10007 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 14:43:28 +00:00
Rudolf Cornelissen
12072d7934 fixed PCI config space dump.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10006 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 14:41:58 +00:00
Axel Dörfler
893e0713fb vm_store::fault() now returns a status_t.
Some cleanup.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10005 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 14:35:40 +00:00
Axel Dörfler
4eaf08ab83 Added B_STACK_AREA and B_KERNEL_STACK_AREA protection values.
vm_store::fault() now returns a status_t.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10004 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 14:33:13 +00:00
Rudolf Cornelissen
35bf46ca8d fixed PCI config space dump.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10003 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 14:14:03 +00:00
Rudolf Cornelissen
ff9044fac0 fixed PCI config space dump
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 14:10:36 +00:00
Rudolf Cornelissen
202732a089 driver is now Haiku driver.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10001 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 13:32:03 +00:00
Rudolf Cornelissen
e7a8a8c8e3 driver is now Haiku-driver
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10000 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-18 13:30:52 +00:00