Commit Graph

35242 Commits

Author SHA1 Message Date
Stephan Aßmus
84b55e19b6 * Previously uncommitted icon by zuMi for Device_Clipboard.
* Add original Poorman icon as second version.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37146 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-15 10:56:23 +00:00
Stephan Aßmus
549aa8651d Found the original WonderBrush icon (i.e. with names for all objects).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37145 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-15 10:51:50 +00:00
Philippe Houdoin
6985b0a46f USB devices should report better than generic B_ERROR in order to
help the stack to detect and handle hotplug device removal.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37144 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-15 01:29:20 +00:00
Ingo Weinhold
ce97aa1274 DMAResource::Init(): Also evaluate the device node's B_DMA_LOW_ADDRESS and
B_DMA_HIGH_ADDRESS attributes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37143 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-15 00:09:51 +00:00
Ingo Weinhold
d6e307aed9 Until the adapter interface has been changed, play it safe and restrict the
high address for DMA to 4 GB.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37142 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-15 00:08:27 +00:00
Ingo Weinhold
f8e263c184 Slipped by in r37138: Added VMCache::Dump() and removed GetLock().
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37141 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-15 00:07:18 +00:00
Ingo Weinhold
9f134a3a2e * compute_state(): Fixed computation of the low resource state for the address
space (missing elses). The state would never get higher than "note". There
  still seems to be an issue (probably vm_kernel_address_space_left() not
  returning the correct value), since even at 2021 MB (as reported by "aspaces")
  the state is still only "note", while the heap grower is not able to allocate
  heap areas anymore.
* "low_resource" command: The address space flag was not printed for hooks.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37140 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-15 00:06:19 +00:00
Ingo Weinhold
0d46b36584 VMAddressSpace::_DumpListCommand(): Sum up also null-cache areas. Those are
used e.g. by the slab allocator. The interesting part is the address space
usage anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-14 23:59:38 +00:00
Ingo Weinhold
377ecfe797 * Renamed cache_type_to_string() to vm_cache_type_to_string() and made in
kernel private.
* Moved dumping code from dump_cache() to new VMCache::Dump().
* Override VMCache::Dump() in VMVnodeCache to also print the vnode.
* Removed no longer needed VMCache::GetLock().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37138 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-14 23:57:00 +00:00
Ingo Weinhold
0f48aa877a The ConstIterator only needs a const tree.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37137 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-14 23:51:54 +00:00
Philippe Houdoin
1b1ad0b951 Implemented interfaces monitoring and disabled state introduced last week.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37136 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-14 22:15:38 +00:00
Philippe Houdoin
2aab101928 Register for only supported devices, which reduce a bit overhead when unrelated USB device is plugged-in.
Applied patch for #5209 by oruizdorantes for usb_asix, do the same for usb_davicom.
Will eventually rework it in order to remove duplicated IDs list.
The usb_serial driver also needs the same optimization, 
but gathering the IDs list will take more time than refactor the code and since 
usb_serial is not yet included in haiku image neither ready (no tty module), there is less user experience immediate gain...



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37135 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-14 21:43:29 +00:00
Ingo Weinhold
14a322f332 IORequest::_Copy*(): Resolved TODO: Don't cast the generic_addr_t to void*
anymore as that truncates physical addresses when PAE is enabled.
Now, if a 4 GB physical address limit is forced in DMAResource, the system
continues to work fine when the physical memory > 4 GB is used. Otherwise it
hangs or crashes.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37134 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-14 21:33:11 +00:00
Oliver Ruiz Dorantes
0559013789 Commit initial version for a l2cap client test
(Style pending)



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37133 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-14 20:41:18 +00:00
Oliver Ruiz Dorantes
a5bf12376d *Incorrect endianess handling from bdaddr at parsing from string.
*Remove bluetooth_util deprecated header
*Issue conn_req for socket connect() call



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37132 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-14 20:04:10 +00:00
Ingo Weinhold
a8ad734f1c * Introduced structures {virtual,physical}_address_restrictions, which specify
restrictions for virtual/physical addresses.
* vm_page_allocate_page_run():
  - Fixed conversion of base/limit to array indexes. sPhysicalPageOffset was not
    taken into account.
  - Takes a physical_address_restrictions instead of base/limit and also
    supports alignment and boundary restrictions, now.
* map_backing_store(), VM[User,Kernel]AddressSpace::InsertArea()/
  ReserveAddressRange() take a virtual_address_restrictions parameter, now. They
  also support an alignment independent from the range size.
* create_area_etc(), vm_create_anonymous_area(): Take
  {virtual,physical}_address_restrictions parameters, now.
* Removed no longer needed B_PHYSICAL_BASE_ADDRESS.
* DMAResources:
  - Fixed potential overflows of uint32 when initializing from device node
    attributes.
  - Fixed bounce buffer creation TODOs: By using create_area_etc() with the
    new restrictions parameters we can directly support physical high address,
    boundary, and alignment.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-14 16:25:14 +00:00
Ingo Weinhold
8d2572165b X86PagingMethodPAE::PutPageTableEntryInTable(): Incorrectly used 32 bit type,
which caused the upper 32 bit of the address to be ignored, thus mapping to
the wrong page.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37130 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-13 19:58:43 +00:00
Ingo Weinhold
9e93cc9ab7 X86PagingMethodPAE::MemoryTypeToPageTableEntryFlags(): Return value must be
uint64, since that's the width of the page table entry. Was harmless, though,
since the flags are in the lower 32 bits anyway.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-13 19:56:04 +00:00
Ingo Weinhold
96732e8650 X86VMTranslationMap{32bit,PAE}::UnmapPage(): Added some helpful output to
asserts.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37128 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-13 19:54:13 +00:00
Ingo Weinhold
8a8043dce6 vm_page_get_stats(): Forgot to added sIgnoredPages to system_info::max_pages
in r37117 as well, which was really the main point of introducing it.
Improves #6124 (reported memory lower than installed).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37127 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-13 18:59:11 +00:00
Axel Dörfler
35f8d08009 * Fixed the good old operator& precedence bug I noticed while looking over a
patch by Ziusudra.
* Use new(std::nothrow) instead of new.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37126 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-13 16:52:21 +00:00
Axel Dörfler
05b7510980 * Applied patch by Andreas to use RECEIVE_BUFFER_SIZE where it should be used.
* This closes ticket #6165.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37125 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-13 16:17:23 +00:00
Axel Dörfler
fd43517b2c * Renamed "mio" to mallocIO.
* Don't define status in CopyToClipboard() before it's actually used.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37124 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-13 10:48:09 +00:00
Jérôme Duval
30dabe8cd9 added missing return, noticed by stippi. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37123 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 19:00:11 +00:00
Stephan Aßmus
ef0522d296 * Fixed coding style violations in CopyToClipboard.
* Fixed compiler warnings.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37122 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 18:06:27 +00:00
Stephan Aßmus
70b0ca3910 ShowImage no longer uses the weird direct bitmap storage in the clipboard.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37121 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 17:55:52 +00:00
Jérôme Duval
3f0827a2d1 * fixes a warning
* try to launch screen_blanker by path when a launch by signature fails.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37120 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 17:47:47 +00:00
Matt Madia
8dbd2b6cea Updated the optional packages : Git, OpenSSH, and Python.
Archives provided by Chris Roberts.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37119 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 17:34:47 +00:00
Stephan Aßmus
5ab8434cae * Fixed storage of image data in the system clipboard. According to the
comments in the code, different programs do it differently. However, I
   believe we should follow the BeBook documentation. This is the method which
   WonderBrush uses as well, and that one had been tested with other apps like
   Refraction. Potentially, copy&paste could work across GoBe Productive now
   also, but I didn't test.
 * Handle the case where the selection bitmap that gets restored from the
   clipboard has a bounds rectangle with an offset. Use this offset as an
   alternative to the "be:location" hack.
 * Fix the drag bitmap to be semi-transparent on Haiku. B_OP_SELECT does not
   affect the alpha channel on Haiku like it apparently did on BeOS, though
   I am not inclined to change that behavior.
 * Fixed some coding style violations, but tried to mix as little cleanup as
   possible.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37118 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 17:03:53 +00:00
Ingo Weinhold
03732070d7 * vm_page_init_num_pages(): Sum up the number of pages between the usable
physical memory ranges.
* vm_page_num_pages(), vm_page_get_stats(): Report the actually existing
  memory, count memory ignored by the boot loader as used.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37117 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 16:04:49 +00:00
Ingo Weinhold
84e9db7fb7 x86 mmu_init(): Sum up the physical memory we ignore for whatever reason --
stored in kernel_args::ignored_physical_memory.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37116 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 15:57:21 +00:00
Ingo Weinhold
61d2b06c40 Use PAE only when there's memory beyond the 4G limit.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37115 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 15:11:53 +00:00
Jérôme Duval
b14ae02b95 some verbs use a 16 bits payload
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37114 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 14:16:30 +00:00
Jérôme Duval
9a0a4979d5 * add some helper functions to read/write verbs.
* try at support realtek alc888. alsa uses this init sequence.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37113 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 14:02:50 +00:00
Scott McCreary
9b9c5a1b8b Updated libtool to 2.2.10
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37112 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 09:34:17 +00:00
Stefano Ceccherini
b47e904c1f Add to the build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37111 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 07:09:57 +00:00
Stefano Ceccherini
372eb8749c Fix the build
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37110 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 07:09:45 +00:00
Stefano Ceccherini
3f28966548 Imported MenuWorld beos sample code into the repository.
Wrote a jamfile and did some build fix (but doesn't build yet).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37109 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 07:03:01 +00:00
Travis Geiselbrecht
9623c48284 SMP: remove the tracking of apic id -> cpu id. Don't pass between bootloader and kernel.
Kernel doesn't use it, and it could be regenerated in the kernel if it did need it.

This also unlocks the apic range the bios can use. Previously the apic ids would have
to fit within 0..MAX_CPUS or it'd reject the cpu. Some boxes (mine in particular)
seem to sparsely populate the apic id so that the range is pretty large.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37108 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 01:01:54 +00:00
Ingo Weinhold
977ffe5233 No longer ignore the physical memory beyond 4 GB, if we have a 64 bit
phys_addr_t. IOW, if PAE is enabled, that memory should be put to use now.
Apparently we report an incorrect amount of total memory (also counting
memory gaps), which also suggests that we need another method to manage the
vm_page structures (currently a huge array with indexes proportional to
physical page addresses, i.e. wasting memory for the gaps).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37107 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 00:36:44 +00:00
Ingo Weinhold
4d2b2dc4d2 Enable PAE on all CPUs.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37106 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 00:13:54 +00:00
Ingo Weinhold
bd4454cb95 * Simplified smp_trap_non_boot_cpus() and smp_wake_up_non_boot_cpus(): We don't
need a spinlock per CPU; a single variable suffices.
* Extended call_all_cpus[_sync]() to work before smp_wake_up_non_boot_cpus()
  (even before smp_init()).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37105 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-12 00:13:30 +00:00
Ingo Weinhold
4bdc89aa14 * Implemented X86PagingMethodPAE::PhysicalPageSlotPool::AllocatePool().
* Implemented X86PagingMethodPAE::IsKernelPageAccessible().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37104 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 23:23:44 +00:00
Ingo Weinhold
83c3e7d3ba Added kPAEPageDirRange constant.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37103 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 23:21:02 +00:00
Ingo Weinhold
bdc4a73afc Disable debug output also in C++ mode.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37102 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 18:04:25 +00:00
Ingo Weinhold
d382fc3a8e Added commented line to enable PAE.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37101 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 16:26:11 +00:00
Ingo Weinhold
68b53104ba * Implemented X86VMTranslationMapPAE and X86PagingStructuresPAE destruction.
* Implemented X86VMTranslationMapPAE::QueryInterrupt().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37100 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 16:21:13 +00:00
Matt Madia
99f806cc7f Corrected the leaves. After a closer look, the gradients of all 3 leaves are
different based on the background color.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37099 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 15:35:07 +00:00
François Revol
c1c42eb1c5 Use bilinear filtering for Haiku.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37098 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 12:59:57 +00:00
Wim van der Meer
46f84134a9 Use B_PAGE_SIZE for calculating memory size in the AboutSystem app.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37097 a95241bf-73f2-0310-859d-f6bbb57e9c96
2010-06-11 10:56:39 +00:00