Commit Graph

35365 Commits

Author SHA1 Message Date
Joachim Seemer
bdf17d41a1 Of course I missed to adjust the bolding in About after renaming from RepliShow to OverlayImage.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37223 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-22 18:11:08 +00:00
Joachim Seemer
99b6a9f151 Added a new demo: OverlayImage is based on the code presented in this article:
http://www.haiku-os.org/documents/dev/replishow_a_replicable_image_viewer

I applied Haiku's code style, added support for transparent images, a tool tip and
limited localization (how does one make it work in the replicant's about alert?)
Since I'm a c++ newbie, corrections are probably needed and welcome.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37222 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-22 17:58:12 +00:00
Ingo Weinhold
c5e722714e Reimplemented _kernel_contigmalloc() to support the physical address
restrictions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37221 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-22 12:22:35 +00:00
Ingo Weinhold
06a6bec0c0 Force 32 bit physical addresses.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37220 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 23:22:59 +00:00
Ingo Weinhold
3553f1894d Use the correct type for physical addresses.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37219 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 23:22:19 +00:00
Ingo Weinhold
6a76b51960 * Force 32 bit physical addresses.
* Added TODO about apparently ignored 64 KB boundary.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37218 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 23:21:07 +00:00
Ingo Weinhold
24309cde24 Fixed more issues with 64 bit physical addresses. Mostly by restricting
allocations to 32 bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37217 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 22:54:42 +00:00
Ingo Weinhold
2c9f2dcb89 map_mem(): Fixed handling of physical address parameter.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37216 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 22:30:47 +00:00
Ingo Weinhold
34a662eda7 Force 32 bit physical addresses. Added TODOs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 22:02:31 +00:00
Ingo Weinhold
509c0b22d5 Radeon_PrepareDMA(): Fail when encountering physical addresses > 4 GB.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 21:48:02 +00:00
Ingo Weinhold
d108c41998 Force memory allocations to 32 bit physical addresses. The code using them
has implicit limitations (probably because the devices/controllers/... do).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37213 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 21:17:23 +00:00
Ingo Weinhold
2cbd922b91 Removed undead code.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37212 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 21:00:51 +00:00
Ingo Weinhold
fb2ec51289 Fixed build.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37211 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 21:00:28 +00:00
Ingo Weinhold
c53724f7bf Added work-arounds for intel_gart not being able to deal with physical
addresses > 4 GB.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37210 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 20:21:06 +00:00
Ingo Weinhold
160c9c661d scsi_alloc_dma_buffer():
* Use create_area_etc() instead of create_area() so we don't have to deal
  with the physical address restrictions by hand.
* Force physical addresses < 4 GB for the time being.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37209 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 19:25:50 +00:00
Adrien Destugues
6e608fa5fb Patch by Jorma Karvonen (#6075): translate Inspector application. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37208 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 19:10:46 +00:00
Ingo Weinhold
bf48aa4321 scsi_init_emulation_buffer():
* Use create_area_etc() instead of create_area(), so the alignment doesn't
  need to be ensured by hand.
* Use B_32_BIT_MEMORY for the time being.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37207 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 18:50:51 +00:00
Adrien Destugues
bb61af4f64 iPatch by Jorma Karvonen : fix warning about deprecated convertion in raw translator.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37206 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 18:49:53 +00:00
Ingo Weinhold
84161eb0da Removed useless code.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37205 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 18:26:41 +00:00
Ingo Weinhold
41ad209240 For the time being use B_32_BIT_MEMORY to allocate the auto-sense area.
Should rather use the device's DMA restrictions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37204 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 18:26:12 +00:00
Ingo Weinhold
91af25d302 vm_create_anonymous_area():
* Fixed check: If a low *or* high address restriction is given, we need to
  force B_CONTIGUOUS wiring.
* Optimization: Contiguous single-page allocation can be allocated as
  full-lock, if the no low/high address restrictions are given.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37203 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 18:22:42 +00:00
Ingo Weinhold
ae531e279d prepare_sleep_state():
* Use the respective error types for OS and ACPICA functions.
* Don't lock the memory. The caller must do that, since there's no balancing
  function that would unlock the memory again.
* Get the memory map of the given function, not of the on-stack variable.
* Added 64 bit support and a check for the PAE case.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37202 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 17:15:52 +00:00
Ingo Weinhold
64cf56f5cd Force allocation of physical memory < 4 GB until the related TODOs are fixed.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37201 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 16:47:29 +00:00
Ingo Weinhold
be87d0a03e * Added area creation "lock" constant B_32_BIT_MEMORY for physically
contiguous memory < 4 GB.
* vm_create_anonymous_area(): Implemented support for B_LOMEM and
  B_32_BIT_MEMORY.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37200 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 16:46:19 +00:00
Ingo Weinhold
02507604e7 read_write(): Consider a request created from an io_operation DMA safe. This
saves some checking in the bus manager.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37199 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 16:19:49 +00:00
Ingo Weinhold
1043be1d7c Fixed build -- code including <vm/vm.h> must be C++.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37198 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 16:14:31 +00:00
Ingo Weinhold
e7a5527b53 Some enum definitions were also defining variables.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37197 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 16:13:47 +00:00
Ingo Weinhold
0a35130cc6 Removed undead code.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37196 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 16:00:37 +00:00
Ingo Weinhold
13638944db Removed never read VMCache::scan_skip.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37195 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 15:10:37 +00:00
Ingo Weinhold
94226016cc Mark caches of null areas temporary, so we don't try to write back modified
pages when deleting the area.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37194 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 15:07:32 +00:00
Ingo Weinhold
2a81a99203 Optimized implementations for UnmapPages() and UnmapArea().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37193 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 14:43:42 +00:00
Ingo Weinhold
86b6de1fae UnmapPages(): Avoid potential integer overflow.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37192 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 14:28:07 +00:00
Ingo Weinhold
8bcc0694ad Simplifications and indentation correction.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37191 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 13:58:05 +00:00
Ingo Weinhold
a19f81b6c7 Unmap(),Protect(): Removed goto programming by a do {} while loop. Also fixed
problem with potential integer overflow at the end of the address space.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37190 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 13:57:00 +00:00
Ingo Weinhold
66f9974b06 Use InvalidatePage() instead of playing with the invalidation cache by hand.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37189 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 13:41:23 +00:00
Ingo Weinhold
c6f52e8328 Missed in r37187: Use the new VMTranslationMap::[Accessed]PageUnmapped()
helper methods to avoid code duplication.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37188 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 13:39:52 +00:00
Ingo Weinhold
0d5ab7a14d Moved duplicate code from the VMTranslationMap subclasses' UnmapPage() and
ClearAccessedAndModified() implementations into helper methods PageUnmapped()
and UnaccessedPageUnmapped() in the base class.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37187 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 13:32:33 +00:00
Adrien Destugues
e77e4cff3e Patch by Jorma Karvonen (#6080) : improve diskprobe localization.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37186 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 10:58:26 +00:00
Adrien Destugues
e8f533b27b Fix a bug in native version of collectcatkeys (not the one used in
buildtools) that prevented it from working at all. This fixes #4840


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37185 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 10:10:36 +00:00
Stephan Aßmus
14981b2126 Patch by Jorma Karvonen: Fix compiler warnings. Closes #6203, thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37184 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-21 10:03:15 +00:00
Wim van der Meer
eb161bde33 BCatalog was used in the wrong way. Fixes ticket #6198.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37183 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-20 04:31:37 +00:00
Wim van der Meer
16023f51f8 * Report inaccessible memory
* Use IEC binary prefixes


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37182 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-20 03:49:23 +00:00
Siarzhuk Zharski
f80ea08d71 - prefix for system include paths was changed from -I to -system;
- objects directories are separated for release and debug builds too.

Thanks to Axel for pointing those details!



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37178 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-19 20:26:04 +00:00
Matt Madia
60459bb752 Added the missing "Glow". Copied from HAIKU logo - white on blue - big,
with the colors from boot_splash/splash_logo


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37176 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-19 14:14:05 +00:00
Wim van der Meer
2a2b528e73 Report ignored memory pages seperately, thanks to bonefish for the patch review. Closes ticket #6178
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37175 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-19 14:07:26 +00:00
Siarzhuk Zharski
53c50a9d1a - separate object directories for different compiler versions. This prevent from link errors after compiler was switched between gcc2 and gcc4 versions;
- correspondently use "-iquote" instead of "-I-" that is treated as obsolete by GCC 4. This fixes warning messages mentioned in #6177;
- use $(TARGET) instead of $(OBJ_DIR)/$(NAME) in driverinstall: rules too. Patch by Evgeny Abdraimov.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37174 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-19 09:39:04 +00:00
Matt Madia
7c00dc0e35 From the libpng-1.2.x-to-1.4.x-summary.txt:
m. The function png_set_gray_1_2_4_to_8() was removed. It has been
      deprecated since libpng-1.0.18 and 1.2.9, when it was replaced with
      png_set_expand_gray_1_2_4_to_8() because the former function also
      expanded palette images.
This allows generate_boot_screen to compile.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37173 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-19 01:14:04 +00:00
Matt Madia
2e8db3436a Automatic whitespace cleanup. No functional change.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37172 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-19 00:58:05 +00:00
Ingo Weinhold
fa04c15cde object_cache_low_memory(): Reduce the cache pressure indicator even for the
"note" low resource state. Not doing so could result in a very high limit for
the number of empty slabs, which wouldn't change until reaching the "warning"
state.
Fixes #5816.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37171 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-18 21:24:34 +00:00
Ingo Weinhold
1cafaecaf5 * Introduced block_cache::unused_block_count, which counts the elements of
block_cache::unused_blocks.
* block_cache::Allocate(): No longer removes unused blocks when in a low
  resource state. That just removed too many blocks too quickly, when the
  cache was actively used for writing, seriously affecting performance.
* block_cache::_LowMemoryHandler(): Compute the number of unused blocks to
  remove depending on the total unused block number. This way we cull huge
  block caches with lots of old blocks much quicker.

Treats part of #5816.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37170 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-18 21:17:11 +00:00