Commit Graph

58149 Commits

Author SHA1 Message Date
Jérôme Duval c676a5c19e Make the Haiku package not depends on noto_sans_cjk_jp ...
except for regular builds.
2018-01-29 15:59:00 +01:00
Jérôme Duval 86ae71e8ee bootstrap: add missing curl and less packages for x86_gcc2. 2018-01-29 15:58:39 +01:00
Andrew Lindesay 80a272eed8 HaikuDepot : Changelog, Remove old API and Version Bump
This change re-instates the change-log function (TRAC#13827) that was
dropped in earlier changes.  Also now-disused API handling logic is
removed.  A small code-style fix is made and the version of the
application has been incremented so that this version's logic can later
be detected by the HDS application server.
2018-01-28 12:43:26 +01:00
Jérôme Duval 1603eec4a4 kernel: vm: allow mmapping of the last page of the userspace. 2018-01-27 17:15:52 +01:00
Jérôme Duval 3bcf027203 auich: use user_memcpy to read/write the user buffers.
* also check buffer addresses passed through structures.
* map registers kernel only.
* alloc dma descriptors kernel only.
2018-01-25 20:35:39 +01:00
Jérôme Duval 13daa9299e Fix initial stack alignment on 64-bit systems.
gcc does re-align the stack in the main() function prologue, however,
we still need to set the right alignment for other cases: thread entry,
.init and .fini code that is executed before main() is called or after
it has returned, and signal handlers which may use a separate stack.

Part of #10509
2018-01-24 07:59:55 +00:00
Jérôme Duval 34cdda1dd5 kernel: x86: enable writes before patching.
Follow up for commit a2021292d4.
Binary patching would otherwise fail after the kernel text area
becomes read-only.
2018-01-23 17:59:41 +01:00
Jérôme Duval c8fcb2a04e udis86: Add clac/stac instructions for SMAP.
still in a PR:
e9dfa2d79a
2018-01-22 20:06:55 +01:00
Fredrik Holmqvist ff2e2f8198 Upgrade to ACPICA 20180105
Tested on x86_64 and x86_gcc2, works on my machine and most likely fixes
that was most likely due to missing lock sync in previous ACPI upgrade.

 * Redid some of kallisti5's work as it was easier to start from earlier
   version.

 * Evaluating 64 bit physical addressing on 32 bit Haiku again as this
   was likely the cause of pagefaults (#12377):
"Implemented internal support for full 64-bit addresses that appear in all
Generic Address Structure (GAS) structures. Previously, only the lower 32
bits were used. Affects the use of GAS structures in the FADT and other
tables, as well as the GAS structures passed to the AcpiRead and
AcpiWrite public external interfaces that are used by drivers. Lv Zheng."

 * Mostly bugfixes in ACPICA
2018-01-21 20:09:45 +01:00
Fredrik Holmqvist 3f04c8352e Revert "acpica: Upgrade to 20170303"
This reverts commit 0bc647d605.
2018-01-21 20:09:45 +01:00
Ho Tuan Kiet 9c1f9724c2 Fix various unsafe usages of strcat/strcpy
Coverity ID: 608930, 743872, 743873, 743874, 608932, 608933, 1424961, 609034
Change-Id: I2702dfb402df7eee500617cb9b8d6f567296fc13
2018-01-19 06:32:43 +00:00
Jérôme Duval 4f2fac067d hda: use user_memcpy to read/write the user buffers.
also check buffer addresses passed through structures.

Sponsored-by:	https://liberapay.com/korli
2018-01-18 21:19:03 +01:00
Jérôme Duval 755bade8ba Factorize multi audio drivers control function.
With user buffer checks and copies about the same for every driver, it seems logical
to avoid duplicate this code.

Sponsored-by:	https://liberapay.com/korli
2018-01-18 21:19:03 +01:00
Leorize 1a59e1d91c gnu: introduce memmem(3)
Implementation imported from OpenBSD

Change-Id: If2620dc7ed373650bb3dabb0f22c2cd84b9e0ef9
2018-01-17 19:39:18 +00:00
Jérôme Duval 964fb0c378 kernel: make arch_kernel.h for x86 C safe. 2018-01-17 19:20:59 +01:00
Jérôme Duval 8d794763d5 dprintf: remove redondant user address check.
check user_memcpy success.
2018-01-17 19:19:36 +01:00
Jérôme Duval 181bcc8c78 Include libedit by default for Debugger. 2018-01-16 20:48:05 +01:00
hyche 3f43dd8710 btrfs: Fix btrfs_dir_entry doesn't read data from disk correctly. 2018-01-16 16:21:46 +00:00
Jérôme Duval 483c45843d kernel: x86: add some more cpuid flags. 2018-01-15 20:18:43 +01:00
Jérôme Duval 05a859ebd7 usb: map registers or allocate area for the kernel only. 2018-01-15 19:52:13 +01:00
hyche ce029df2d8 btrfs: Fix wrong function name in log error 2018-01-14 15:02:20 +00:00
hyche 5686d4e190 btrfs: Init status, prevent from unitialized check 2018-01-14 15:02:20 +00:00
hyche b568492fbd btrfs: Make SearchSlot() look cleaner 2018-01-14 15:02:20 +00:00
Leorize cedb0e1179 uchar: Introduce C11 uchar.h
Currently this implementation only supports UTF-32
2018-01-14 14:42:34 +00:00
Jérôme Duval a2021292d4 kernel: Binary code patches on x86.
This will be used to support SMAP.

Sponsored-by:	https://liberapay.com/korli
2018-01-14 13:20:38 +01:00
Jérôme Duval e6168b4ffe Set the image size for debug releases to 900MB. 2018-01-14 10:08:05 +01:00
Rene Gollent 7082366900 Debugger: Fix crash in teams window.
- Some of the recent changes for memory management exposed a race
  condition, where the teams window would potentially try to access
  already freed objects on quit. Ensure we acquire references to the target
  host so this doesn't happen.
2018-01-13 15:36:22 -05:00
Jérôme Duval 813b6c656f disasm: add to the image on x86_64. 2018-01-13 15:54:21 +01:00
Jérôme Duval 0291f00909 udis86: update to current version. 2018-01-13 15:54:21 +01:00
Jérôme Duval 9409021432 kernel: x86: add cpuid feature 7 flags. 2018-01-13 09:33:47 +01:00
Rene Gollent ac9e464b78 Debugger: Fix various issues in the DWARF subsystem.
AttributeClasses:
- Fix typo in get_attribute_name_classes which resulted in us not
  handling DW_AT_linkage_name properly.
- Fix incorrect class specification for DW_AT_default_value due
  to inconsistencies in the DWARF documentation (the table of attribute
  classes indicates it is only a reference, but the detailed description
  indicates it also being possible to be a flag or constant, both of
  which gcc outputs).

DebugInfoEntries:
- Add accessor for DIEClassBaseType's inner types.

DwarfImageDebugInfo:
- When looking up types, create a basic target interface to pass on
  to the type context. Otherwise, type lookups that required DWARF
  expression evaluation would crash.
- When building the type name table, we now recursively walk a class's
  inner types, and add them to the list as well. This omission would
  cause the debugger to lack the type description for such classes,
  and consequently be unable to display their details in the variables
  view.
2018-01-12 22:23:57 -05:00
Andrew Aldridge f6d25a3a81 strtod: Do not consume "x" in incomplete hex input
Adapted from upstream glibc commits:
* 405698e946dbed472491f85867eb511eb080e05a
* 43b9d657408fbf47a47934f9e7c84ed87f7f5a18

Fixes #13949
2018-01-12 16:45:14 +00:00
Jérôme Duval a820f1f01d WebPositive: disable debug code.
should fix the debug build for WebPositive.
2018-01-12 16:46:08 +01:00
Rene Gollent c0936b5a03 Debugger: Another set of #13800 fixes.
AbstractTable/Table/TreeTable:
- Let BColumnListView take care of deleting columns. The previous
  approach was resulting in the columns being leaked.

Debugger:
- Don't detach the UI reference, as TeamDebugger will acquire its own.

GraphicalUserInterface:
- Cleanup of file panel handler.

SourceView:
- Clean up marker manager.

*Roster:
- Clean up registered objects in destructors.

GlobalTypeLookup:
- Clean up hash tables.

NetworkTargetHostInterfaceInfo:
- Fix reference handling for settings.
2018-01-11 22:39:55 -05:00
Rene Gollent ffe684b96c Debugger: Fix type issue in BList handler.
BListValueNode:
- BList's item count member is an int32. However, when the handler was reading
  said variable, it was mistakenly reading the number of bytes corresponding to
  to the address size of the architecture instead.This would cause the read to
  fail, and consequently BList and/or BObjectList variables to not display
  their contents properly on x86-64.
2018-01-11 22:39:55 -05:00
Jérôme Duval bbb5a50f9b kernel: debug: map the frame_buffer for the kernel only. 2018-01-11 19:59:10 +01:00
Rene Gollent 3995592cdf Debugger: Fix #13939, more work on #13800.
- Fix various cases where OpenHashTables weren't being cleared properly.
- Fix various reference counting errors.
- Simplify FileManager reference handling.
- Fix bug in LocatableDirectory where the directory named '/' would have its
  name returned as empty. This would lead to failed lookups for entries already
  in the table, and ultimately corrupted the hash table when deleting unused
  entries, leading to #13939. This was previously never noticed due to the
  entries not being freed properly.
- AbbreviationTable wasn't clearing its entries.
2018-01-10 19:29:36 -05:00
Augustin Cavalier e56d7050a3 docs/develop/packages: Update links and rename index.wiki to README.wiki.
Now this page is rendered when you open the directory on GitHub,
and you can use the links to open any of the files.
2018-01-10 16:54:32 -05:00
Augustin Cavalier 7a988ea15b docs/develop/packages: More fixes to syntax. 2018-01-10 16:48:08 -05:00
Augustin Cavalier fc2b04e7e4 docs/develop/packages: Convert wiki files to MediaWiki syntax.
This is what GitHub actually is rendering pages as.
2018-01-10 16:37:28 -05:00
Augustin Cavalier 5492447a60 docs/develop: Migrate Package Management docs from Trac.
Still in Trac Wiki format (GitHub renders this well enough.)
2018-01-10 16:19:41 -05:00
Augustin Cavalier 42877d24cf makefile-engine.html: Does not belong in docs/develop.
docs/develop is for documentation about Haiku's internals. The Makefile-Engine
is public API. For now, put it in docs/misc.
2018-01-10 16:12:15 -05:00
Augustin Cavalier e81a954787 docs/develop: Mass directory restructure.
Now vaguely follows the tree structure of "src", with the exception of
directories that described subsystems spanning more than one "kit" or
"server" (e.g. "media", "midi", "bluetooth") -- these have been left as their
own top-level directory within docs/develop.
2018-01-10 16:12:14 -05:00
Augustin Cavalier cdf0ad6a80 docs/develop: Delete some more old/obsolete directories. 2018-01-10 16:12:14 -05:00
Augustin Cavalier 96efe3b3c0 docs/user: Migrate Axel's "Introduction to the Launch Daemon" from Trac. 2018-01-10 16:12:14 -05:00
Augustin Cavalier 4241437c83 docs/misc: Add BeIDE_ProjFileFormat.
This is the beginning of a large "move developer docs from the wiki
to the tree" operation, which will probably take some time to complete.

The general goal is to consolidate all docs that would be used by developers
(i.e., anyone working on the Haiku tree) into the tree itself. Docs on
getting started contributing, or for translators, designers, etc. will remain
on Trac and on the website.
2018-01-10 16:12:14 -05:00
Jérôme Duval 144f03cda1 random: use user_memcpy/user_strlcpy to read/write the user buffer.
* also check the user buffer address.
2018-01-10 20:57:59 +01:00
Jérôme Duval d9e4ef3f76 dprintf: use user_memcpy/user_strlcpy to read the user buffer.
* also check the user buffer address.
2018-01-10 19:08:30 +00:00
Augustin Cavalier a31e05bb68 MediaPlayer: Compare return value of FindMatch against B_ERROR.
Thanks Rene for the review!
2018-01-10 13:49:32 -05:00
Jérôme Duval 79707fefe0 bfs: INode::ReadAttribute() and WriteAttribute() used the user buffer directly
They now use user_memcpy(). Also copy the user buffer used to update the index.
2018-01-10 18:28:14 +00:00