Commit Graph

25644 Commits

Author SHA1 Message Date
David McPaul
086dbe90c8 limit no of retries to prevent infinite loop
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26914 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-10 13:54:03 +00:00
David McPaul
27c790c14c handle invalid tracks better
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26913 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-10 13:52:32 +00:00
David McPaul
1ac79e42f3 preparation for aac_decoder
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26912 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-10 13:51:39 +00:00
François Revol
0bdaf02821 Start of a file map disk driver for the bootloader.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26911 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-10 01:24:01 +00:00
Ingo Weinhold
2fc2b436d2 Another hard code (DMAResource::TranslateNext()) fix: In the write case
if after the main loop the transfer is already block aligned, we still
have to check whether the last vec is a bounce buffer that is shorter
than a complete block, but exceeds the original end of the request. If
so, we have to cut back to the previous block and add a block-sized
bounce buffer instead. Actually that's almost the same case as when the
transfer length is not yet block aligned, and thus we let the same code
handle it. Fixes bug #2584.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26910 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-10 00:44:30 +00:00
Ingo Weinhold
1bb2ad1ed8 Test case to reproduce bug #2584.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26909 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-10 00:25:53 +00:00
Ingo Weinhold
3656dc0d61 Removed debug tracing that obviously slipped in in a former commit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26908 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-10 00:24:32 +00:00
Ingo Weinhold
a3afb5ee0d Handy on-demand debug tracing, I've used a few times already. So I leave
it commented out in the code for the time being.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26907 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-10 00:23:35 +00:00
François Revol
0228d059a2 allow giving count of insn to disassemble, up to 50 for now as buffer is still fixed sized.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26906 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 22:36:34 +00:00
Axel Dörfler
ed0303d19d * When creating the physical vector array, we did not advance "base" in the
loop.
* This is probably the cause for file corruptions as well as bug #2595; will
  have another look tomorrow.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26905 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 21:27:24 +00:00
Axel Dörfler
96e0e6d137 * Applied patch by Justin O'Dell: the 8168 MMIO region is obviously in the
third range, not the first.
* This finally closes #1853 again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 20:57:46 +00:00
Oliver Ruiz Dorantes
696b8e46f3 Move header to private, is meant to be used by acl component as well
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 20:47:30 +00:00
Bruno G. Albuquerque
b407c416eb Force multi-device mode for JMicron controllers supporting SATA/PATA
interfaces. This fixes bug #2227.

Note that when the SATA interface is in AHCI mode it is still failing 
due to what seems to be a device manager problem. I will open a separate 
bug for it.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 20:32:18 +00:00
Jérôme Duval
ef0fc55562 use absolute path when launching makebootable as it seems unable to find its own path without it
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26901 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 16:15:04 +00:00
Jérôme Duval
9c83a65a77 update signatures
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 15:47:25 +00:00
Ingo Weinhold
4d121ec067 Patch by Andreas Faerber with changes by myself: Work towards Solaris
build platform support.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 15:36:24 +00:00
François Revol
8c57f7ed08 Apply the patch I made to have it build on BeOS, doesn't hurt and fixes a warning about missing inet_ntoa proto.
Patch at http://revolf.free.fr/beos/patches/wget-1.11.4-beos-haiku.diff.txt


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26898 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 14:16:54 +00:00
François Revol
88b1a3b340 - update to wget 1.11.4
- update config.h with one generated with the BONE devkit under Zeta, should be enough.
- fixed config.h so it builds (we do have socklen_t, and stdbool.h)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26897 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 14:14:06 +00:00
Ingo Weinhold
730798eb99 Test case for bug #2586 (more given physical vecs than max segment
count).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26896 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 12:58:09 +00:00
François Revol
52646494cd Remove unneeded files. Configure line was:
./configure --prefix=/boot/home/config/wget/ --without-ssl -disable-nls --disable-ipv6 --disable-rpath


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26893 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 12:02:37 +00:00
Axel Dörfler
46b2c7efd3 * Now uses different base addresses for mapping the registers depending on the
chipset. This should now finally fix bug #1853.
* Instead of reading values directly from the PCI config space, we now just use
  the pci_info structure to retrieve them (interrupt, and base address).
* Renamed alloc_mem() to alloc_contiguous() to make clearer what it does.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26886 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 09:43:19 +00:00
Karsten Heimrich
4d2724ae1a * fix warning
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26885 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 09:05:24 +00:00
Salvatore Benedetto
70081c0dfc * Clean up continues
* Removing _IMPEXP_KERNEL macro along with the COMPILE_FOR_R5 macro
* Also removing Udf namespace


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26884 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 08:32:48 +00:00
Salvatore Benedetto
90b73f5f3f * Applied our coding guidelines
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26883 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-09 08:14:40 +00:00
Salvatore Benedetto
d9409b5cda * Clean up
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26882 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-08 23:27:23 +00:00
Ingo Weinhold
b328324d19 DMAResource::TranslateNext(), in case of given physical vecs:
* segmentCount was potentially set incorrectly. It could be too big,
  since we considered all vecs, not only those remaining.
* The main loop condition was incorrect. This would lead to too few
  DMABuffer vecs (or none at all) for any but the first IOOperation of a
  request. Should fix #2586.
* Correctly offset by vecIndex in debug output.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26881 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-08 23:15:21 +00:00
Salvatore Benedetto
4ef471dec0 Start porting udf
- Cleaning up AllocationDescriptorList in order to follow our coding guidelines
- Moving methods implentation outside the class

I've already ported udf but I'm going to commit it one file at the time
so it's easier to review, plus I still have to clean up the code.

Please review.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26880 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-08 22:53:36 +00:00
Axel Dörfler
8c5620e78f * Reverted last commit - not a good idea to provide untested patches. With the
patch applied, the card didn't work at all anymore.
* Minor 80-column/white space cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-08 15:37:43 +00:00
Axel Dörfler
ae9067b364 * Fixed PXE boot loader build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-08 15:23:44 +00:00
Stephan Aßmus
5ef86fce1f * Rename the private structs to use the same scheme as for classes, which seems
to be the habbit now.
* Improve PathHandler::Quit() to delete the object in case the BMessenger was
  not valid or failed to send the Quit message. This should handle the corner
  case that the PathHandler's looper was already Quit(). There could still be
  a race condition, although I don't know if it affects local message targets
  in Haiku. I added a TODO note for that, but I believe it can be neglected.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26877 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-08 14:22:00 +00:00
Ingo Weinhold
90cd1b25e1 vm_remove_all_page_mappings(): Decrement the mapped pages count only, if
the page was really mapped before. Fixes bug #2585.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26876 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-08 14:01:09 +00:00
Ingo Weinhold
e387dd151b "page_stats" does now also print the number of mapped pages.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26875 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-08 14:00:07 +00:00
Axel Dörfler
626599ea23 * scsi_cd/scsi_disk are new drivers, and therefore they need to use a different
rule.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26874 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-08 11:26:58 +00:00
Stephan Aßmus
95d27b2afd Applied patch by "anxiety":
* Tracked down the problem[1] to the wrong offset being read from the pci config.
  Now matches Realtek's Linux driver. I couldn't find why it worked before as
  the value hasn't changed since the original version added to the repository.
  This is only verified with my own 8168 but I found no special logic in other
  drivers for 8167 or 8169.
[1] See #1853, "RTL8168 recognized but not working"
I don't have the hardware myself to test.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26873 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-08 10:43:08 +00:00
Ingo Weinhold
3521e43f97 Small test for mprotect().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26872 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-08 01:00:40 +00:00
Ingo Weinhold
a9d7be0708 * Implemented mprotect(). A vm_area does now have an optional array
specifying the protection of each page (4 bits per page).
* Added no-op implementation of posix_madvise().
* Replaced a few "addr_t size" parameters by "size_t size".


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26871 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-08 01:00:06 +00:00
Stephan Aßmus
f72ed717b4 The previous loop to remove all the BHandlers in the destructor was really quite
inefficient. And while it did check if the handler was not NULL, it would have
resulted in an endless loop if it was. I think we can safely assume we have no
NULL BHandlers in that list though.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26870 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 21:42:02 +00:00
Stephan Aßmus
39c564f1e7 * Turn the debug output for node monitoring optional tracing.
* Output something if the node monitor message does not contain the expected
  fields (Haiku node monitoring is soo much easier...)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26869 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 21:37:32 +00:00
Stephan Aßmus
5c1147db87 * Apply the same trick to the acceleration value, too.
* When reading the settings, get smoother values also.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26868 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 19:03:06 +00:00
Jérôme Duval
8715a6ad9c * style cleanup
* avoid using read/write and block flags for mapping register memory


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26867 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 18:59:07 +00:00
Stephan Aßmus
6ee854cbde Patch by Alexandro D. Almeida:
* Cast the slider value to double before dividing by 1000 in order to apply
  a smooth speed value. Fixes #1470. Thanks!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26866 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 18:58:38 +00:00
Axel Dörfler
e6679f9d0d * Since we're using ASSERT macros, still lock/unlock the nodes when
initializing the file system.
* This fixes bug #2580.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26865 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 17:37:07 +00:00
Axel Dörfler
f93c785026 * FlushAndRemoveAllPages() cannot call WriteModified(), as it must be called
with the VMCache lock held, and WriteModified() locks itself.
* Added an assertion that the lock is held when calling that method.
* This fixes a KDL as soon as you would have used O_NOCACHE with a file that
  had already some pages read in.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26864 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 17:36:01 +00:00
Bruno G. Albuquerque
7c7dc861e8 Work in progress while trying to fix ticket #2227:
- Ooops. Copy and paste bug.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26863 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 17:05:12 +00:00
Bruno G. Albuquerque
2f1be5703c Work in progress while trying to fix ticket #2227:
- Added skeleton code for setting device mode.
- Next, figure out which bits to set!



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26862 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 16:09:45 +00:00
Axel Dörfler
df6394aee1 * cdda_read_dir() did not correctly report the number of entries put into
the dirent buffer. This fixes Rene's comment about "ls" entering an endless
  loop.
* It also didn't access the buffer passed in correctly if it came from userland.
* It now also fills in as many entries in the buffer as fit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26861 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 14:29:12 +00:00
Axel Dörfler
ed7c4a3e9a * Added simple test app for readdir() to see how it fills out the dirent
and the private DIR parts.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26860 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 14:25:06 +00:00
Axel Dörfler
49a7b6198d * fix_dirent() now correctly handles buffers from userland.
* dir_read() now takes into account that we may have read more than one dir
  entry, and calls fix_dirent() for each of them.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26859 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 14:23:44 +00:00
Axel Dörfler
b0884f0cb8 * Fixed a ton of wrong usages of B_CONTIGUOUS + B_FULL_LOCK.
* The use of B_{READ|WRITE}_AREA throughout the drivers is surely alarming.
  Defining these flags means that *every user* application can access these
  buffers read/write, it becomes visible in userspace like any other memory
  (just shared among all apps). I would like to ask each driver maintainer
  to see if that is really wished here. If you only need one app to be able
  to access it, cloning the area would be more appropriate.
* I came across the use of B_ANY_KERNEL_BLOCK_ADDRESS a number of times. This
  is almost completely useless for most usages, as it tries to align the
  virtual to a multiple of the size of the area. It just makes the allocation
  more likely to fail. Please only use where appropriate, and please review
  your code.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 13:00:36 +00:00
Axel Dörfler
9372d6969b * White space cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@26857 a95241bf-73f2-0310-859d-f6bbb57e9c96
2008-08-07 12:29:32 +00:00