Commit Graph

23633 Commits

Author SHA1 Message Date
Axel Dörfler
62f892990b * Fixed several occasions of bugs with respect to the handling of
overcommitting stores:
  - has_precommitted was incorrectly set to true in the constructor
  - when a precommitted page was committed, vm_store::committed_size
    was still changed.
  - unreserving memory did not update vm_store::committed_size.
  - when precommitted pages were committed, their page count instead of their
    size was reserved.
* All this lead to bug #1970 which should be fixed now.
* Cleanup of vm_cache.cpp, no functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24742 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 12:19:28 +00:00
Stephan Aßmus
ace2d5ee37 HWInterface::Cursor() and therefor Desktop::Cursor() accessed the
current cursor without locking, and did not add a reference while
using the cursor. I have tried to solve both problems by introducing
a simple ServerCursorReference class, which makes sure that the
reference count is properly maintained. There are only two places
where this code was even used, from within ServerApp and when taking
screenshots. Axel, you mentioned in #837 that the code is unsafe, is
this what you meant? This hopefully fixes #837, but it is very hard
to reproduce in the first place, I will close the ticket, but it should
just be reopened if ever encountered again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24741 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 11:12:39 +00:00
Stephan Aßmus
42cf275606 The scale of a state does not influence the origin. Only previous states
and their origin and scale influences the current state's origin, since
they can be regarded as within the parent state's coordinate system.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24740 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 11:04:03 +00:00
Axel Dörfler
0aee496bd0 * block_cache_private.h is no longer needed, moved its contents into
block_cache.cpp.
* Fixed warning.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24739 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 10:44:08 +00:00
Axel Dörfler
3c78c04589 Resolved a TODO in Journal::Lock() that Urias reminded me about:
* BFS now uses a transaction listener that flushes the current transaction
  in case it is idle; before, transactions would always be kept open when
  they weren't large, so that the block writer could not write back the blocks
  (they were busy from its POV).
* This solves the described problem of the screen resolution not being written
  back even after minutes of inactivity.
* Renamed _TransactionNotify() to _TransactionWritten() to differentiate it
  a bit more from the new _TransactionListener().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24738 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 09:46:34 +00:00
Axel Dörfler
16d8ff2dad * Added a TRANSACTION_IDLE notification that is sent when the transaction
hasn't been used for more than 2 seconds.
* Replaced the block_cache::lock benaphore with a recursive lock, so that
  you can call cache functions from within the notification listeners.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24737 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 09:37:22 +00:00
Ingo Weinhold
de73100825 Also check whether the supplied vnode is a directory, if there's only
one path component.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24736 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 01:55:37 +00:00
Ingo Weinhold
0cc0b6fc8f * Fixed resolution of symlinks path components, broken since
r24721/r24722. After resolving a symlink we weren't updating the local
  type variable to the type of the link target, so that the directory
  check in the next iteration would always fail.
* Added TODO.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24735 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-02 00:51:43 +00:00
François Revol
b9044f36d9 Was missing BFilePanel class declaration.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24734 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 23:09:21 +00:00
Oliver Ruiz Dorantes
4b7428b564 - Implement the server understand the Inquiry complete, and the Inquiry result.
- With this, we should be able to discover other devices, but not tested yet. No application to use this part of the kit



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24733 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 21:59:23 +00:00
Oliver Ruiz Dorantes
1ba54b5b31 Fix correct handling of more than one event wanted in a single request
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24732 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 21:51:31 +00:00
Oliver Ruiz Dorantes
1f3aa49890 Complete asking the server all the events needed to perform a complete(basic) discovery process
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24731 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 21:48:05 +00:00
Michael Lotz
ec6da14fee Adding device ids for the i965GM chipset present in my laptop to the
intel_extreme driver and agp_gart. These worked for me for quite some time now.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24730 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 20:48:14 +00:00
Michael Lotz
4ad0015d56 * Retry some times when the device reports it is not ready
* Use the CBW_SIGNATURE define instead of the numeric value

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24729 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 20:43:45 +00:00
Michael Lotz
111522f174 When initializing a UHCI controller, ensure that the interrupts are disabled
before routing them from the BIOS. Also clear pending SMIs when disabling
legacy support. Might help with some legacy support issues and probably
introduces others instead...

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24728 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 20:40:45 +00:00
Michael Lotz
a93bd0c452 Cutting down on unnecessary per-controller delays when starting up the USB
stack. The root hubs do not really need a powerup delay and as they are not
used until all initialization is done, this gives plenty of time to stabilize
the power. Therefore remove the powerup delay for root hubs and reduce the
stabilization time to zero. Also remove the define for the first explore delay
as it is not used.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24727 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 20:37:57 +00:00
Michael Pfeiffer
1059b4e746 Added Haiku, Inc. to copyrigth text.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24726 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 18:52:51 +00:00
Michael Pfeiffer
72497a44d7 Read partition table using BDiskDevice from first disk.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24725 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 18:45:30 +00:00
Axel Dörfler
ebe5326de3 * Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24724 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 18:21:47 +00:00
Axel Dörfler
3dacc609c5 Applied patch by Euan Kirkhope:
* Imported FreeBSD driver "sk" as syskonnect into the Haiku tree, and
  wrote the necessary glue code to let it run.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24723 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 18:17:28 +00:00
Axel Dörfler
b987779d7f Revised my previous patch as outlined in the previous one:
* No longer checks for the path delimiter twice.
* Now also checks if the first part of the path is a directory.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24722 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 17:59:51 +00:00
Axel Dörfler
6800e4f8ba Reverted r24720, and at least fixed the problematic return code after the
first loop - the vnode passed in would still need to be checked, though.
Eventually, it would be nice to move the check to the top, though, so that
we don't need to search for the patch delimiter twice.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24721 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 17:39:52 +00:00
Bruno G. Albuquerque
b48c7f231a - vnode_path_to_vnode() now returns B_NOT_A_DIRECTORY instead of B_NOT_ALLOWED
as expected by POSIX programs. This allowed be to compile Haiku under itself
  without any hacks at all, so I guess this means that now we are officially
  self-hosting!



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24720 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 15:38:01 +00:00
Stephan Aßmus
c397aae3cc * Again, I forgot to svn add some files. Sorry. Build should be fixed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24719 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 13:49:39 +00:00
Axel Dörfler
c41a74e8f3 pthread_detach() no longer fails, as we currently have all threads
detached. We would need to have a hash that contains the thread data to 
be able to comply with the specs AFAICT.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24718 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 12:17:02 +00:00
Axel Dörfler
10f0fc8f20 * Implemented sigwait().
* Not sure if it works as intended, as the specs are a bit vague.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24717 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 12:15:14 +00:00
Stephan Aßmus
4d3ebacc42 Argh! Forgot to svn add these files. Should have been part of last commit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24716 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 08:06:39 +00:00
Stephan Aßmus
1b7f76bcfc Applied Patch by Frederik Modeen with some changes by myself:
* Created Settings window similar to R5 MediaPlayer.
* Prepared loading and saving of settings.
* Settings menu entry is hidden for the time being, since these new settings
  do not actually have any effect yet.
* Prepared loading and saving of Playlists.
* ZETA Playlists can be dropped on the Player and should load fine.
Myself:
* Cleanup in MainWindow.cpp for line width limit.

To Frederik: I removed the buttons again from the Playlist window, since they
don't do anything yet, and the features are available from the menu as well.
An icon bar would be better, IMHO.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24715 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-04-01 07:42:35 +00:00
Maurice Kalinowski
fb16552f1d * get reader.media_addon compiling (both gcc2 and 4)(used for testing BFileInterface node kind)
* warning/style fixes
* removed some dubious comments :)
* no behaviour changes so far...



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24714 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-31 21:23:38 +00:00
Michael Lotz
01533b17a2 Introduce a simple usb_disk driver that supports USB mass storage devices of
the bulk-only class using transparent SCSI commands (i.e. most of the current
external harddrives and flash media). It emulates the few SCSI commands needed
to get this sort of devices working and does not interface with the SCSI
subsystem. This makes it far easier to get working and also far better fits
how the USB stack works (as drivers can be dynamically rescanned when device
changes occur). This will allow for easy dynamic un- and replugging at runtime.
Note that while the device is currently published when you plug something in at
runtime, the partitions are not scanned and published automatically. It works
however if you have the device plugged in at boot.
I haven't added this driver to the image yet, but if properly installed and
with boot module links to the driver and USB stack, it allows to boot Haiku
from USB media like memory sticks or external harddrives.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24713 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-31 20:01:57 +00:00
Michael Pfeiffer
5f96acc41e Forgot to remove debug code.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24712 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-31 19:48:03 +00:00
Michael Lotz
550f245a9d This was probably changed by accident in r22886. It caused all read/write
pages calls of the fat filesystem to return an error instead of the effective
result. Please shout if this was done on purpose. I tested a bit with a fat
volume and where it failed previously when opening files it now works as
expected.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24711 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-31 19:47:00 +00:00
Axel Dörfler
c80e610789 * Added start of an implementation of pthread_cancel().
* Implemented pthread_setcanceltype(), pthread_setcancelstate(), and
  pthread_testcancel().
* In the previous commit, I also made pthread_private.h self-contained.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24710 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-31 18:49:19 +00:00
Michael Pfeiffer
af134c1d5e Fixed typo in header guard.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24709 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-31 18:41:12 +00:00
Michael Pfeiffer
3c3b25a889 Replace partition size pretty printing with a version by Ingo copied
from file Partitioner.cpp.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24708 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-31 18:40:20 +00:00
Maurice Kalinowski
f4a2c0f945 put enum to appropiate place as pointed out by marcus
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24707 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-31 18:14:43 +00:00
Michael Pfeiffer
8e489f4889 Fixed jam build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24706 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-31 16:33:49 +00:00
Michael Pfeiffer
022152bc81 - Add shortcut for About window.
- Created 'bootman' directory in config/settings.
- Added file open/save dialog.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24705 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-31 16:28:36 +00:00
Axel Dörfler
a635399b07 * Rearranged pthread thread support a bit: there is now a pthread_thread
structure that is attached (via TLS) to each pthread.
* Implemented support for pthread_cleanup_{push|pop}().
* I haven't really been able to test these changes, yet, though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24704 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-31 15:10:00 +00:00
Stephan Aßmus
f946336faa * Better error output in LaunchButton
* Load both the app signature and the entry_ref from the settings
  in any case, but do not use the entry_ref if the entry does not exist
  anymore.
* Prefer the entry_ref when launch something. This make it much easier
  to launch a specific executable, especially if multiple copies exist on
  the harddrive. If launching via ref failed, or no ref is provided in the
  first place, fall back to launching by signature.
* Much improved error output when launching fails, now via BAlert.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24703 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-31 15:03:31 +00:00
Rene Gollent
7ca97741bd Clean up build break - library declaration line was doubled.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24702 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-31 01:01:11 +00:00
Ingo Weinhold
32122dc5c4 * Since writers also might have to wait when there is still some room
in the buffer, they need to be notified after a read when their
  minimal write size requirement has just become satisfied. We were
  notifying only when there was no space in the buffer before, which
  caused bug #1755.
* Removed Inode::NotifyWriteDone(). It's not needed anymore, since we
  don't queue writers. They are always all notified, so that one doesn't
  have to notify the next one, when it's done.
* Renamed *Request* to *ReadRequest, since we do have WriteRequests now
  as well.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24701 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 22:35:41 +00:00
Oliver Ruiz Dorantes
fd223db5ad - Add capability to the server to handle Command Status events
- Add capability to reply the inquiry started command status



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24700 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 21:53:37 +00:00
Oliver Ruiz Dorantes
d581ede6e2 - Implementation of the discovery classes & RemoteDevice
. Support for StartInquiry method



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24699 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 21:48:17 +00:00
Oliver Ruiz Dorantes
7976c871ff Add headers for the authentication and scan mode commands
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24698 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 21:43:59 +00:00
Oliver Ruiz Dorantes
b426fc0487 - Modify API be more be like
- Polish a bit the classes composing the Discovery process




git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24697 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 21:42:22 +00:00
Karsten Heimrich
dca967073f * fixed crash in case one tries to print a new composed mail
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24696 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 21:13:32 +00:00
Karsten Heimrich
1f604fd046 * should have been part of my last commit
* also renamed fCurrentHeader to fSpoolFileHeader


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24694 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 20:24:58 +00:00
Karsten Heimrich
fe1500eeaf * got rid of fPageNumber as we the information always around
* rewrote parts of Begin/CommitJob, _StartPage, SpoolPage, _EndLastPage and _AddPicture


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24693 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 20:23:24 +00:00
Ingo Weinhold
9fe0705bee My previous change to getgroups() broke the getgroups(0) special case,
which e.g. "awk" didn't like.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24691 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-03-30 20:02:38 +00:00