49672 Commits

Author SHA1 Message Date
John Scipione
65423794de Touchpad: Obligatory style fixes 2013-11-21 23:52:26 -05:00
John Scipione
5632a8f0de Touchpad: Update copyright header 2013-11-21 23:51:03 -05:00
Pawel Dziepak
a04b7d9f96 power: Remove old cpufreq interface 2013-11-22 05:30:14 +01:00
Pawel Dziepak
208f76e578 preferences: Remove CPUFrequency
We can't reliably set contemporary processors to an arbitrary frequency.
There are dependencies between cores and thechnologies like Turbo Boost
which may make actual frequency significantly different than the requested.

Moreover, it is the scheduler job to decide how much CPU performance is
needed and user shouldn't interfere with that.
2013-11-22 05:24:44 +01:00
Pawel Dziepak
99a2e56579 drivers: Remove Intel Enhanced SpeedStep driver
In current state this driver is useless anyway. It's not MP safe.
The P-state values stored in hardcoded tables are only for processors
on which we can't use SpeedStep, because of lack of invariant TSC.

Proper driver should get P-states from ACPI, ensure that the CPU offers
invariant TSC and obviouslt be MP safe.
2013-11-22 05:11:03 +01:00
Pawel Dziepak
7c7b9b795b scheduler: Return time stolen by irq and ipi handlers 2013-11-22 04:25:37 +01:00
Pawel Dziepak
1a7eb50254 scheduler: Calculate correct load on SMT processors 2013-11-22 03:20:19 +01:00
Pawel Dziepak
65741c8b56 scheduler: Improve locking 2013-11-22 03:00:08 +01:00
Pawel Dziepak
4ec76fd89d libroot: {g,s}et_scheduler_mode(): Avoid name clash
Thanks Ingo for pointing this out.
2013-11-21 21:51:46 +01:00
Ingo Weinhold
fc198cc3e4 PackageWriteImpl: Report error when failing to read .PackageInfo
Fixes #10228.
hrev46404
2013-11-21 21:11:07 +01:00
Scott McCreary
64c8d8c126 Updated cdrtools to 3.01~a18, and added _devel package hrev46403 2013-11-21 08:32:48 -08:00
Ingo Weinhold
73254051b1 makefile engine: Improve template makefile
Use findpaths to find the makefile-engine to include. This addresses the
remaining aspect of #10011. I.e. the package can now also be installed
in home.
hrev46402
2013-11-21 13:47:53 +01:00
Ingo Weinhold
676481a5f6 BPathFinder: Fix resolvable expression support
We need to use the package's .self symlink, since that does point to
the package's installation location. The containing directory lives in
/boot/system/package-links and would therefore always resolve to the
system installation location.
2013-11-21 13:45:37 +01:00
Ingo Weinhold
556e8b250a Update BPathFinder API docs
* Update FindPath() wrt. B_FIND_PATH_PACKAGE_PATH handling.
* Add documentation for BResolvableExpression version of constructor and
  SetTo().
hrev46401
2013-11-21 13:29:21 +01:00
Ingo Weinhold
0122bbf08b findpaths: Add '-r' option
It allows finding a path for a resolvable expression.
2013-11-21 13:29:21 +01:00
Ingo Weinhold
62b164bd71 BPathFinder: Add BPackageResolvableExpression initialization
Add a constructor and a SetTo() method with a
BPackageResolvableExpression parameter instead of a path. The path of
the package satisfying the expression is used.

The new functionality lives in libpackage as it uses the package kit.
2013-11-21 13:29:21 +01:00
Ingo Weinhold
ee8e91583e BPackageManager::UserInteractionHandler: Make non-abstract
Most of the hooks don't strictly need a non-empty implementation. The
defaults now simply throw exceptions in those that do. This allows the
class to be instantiated, which is useful when a BPackageManager is only
used for finding packages.
2013-11-21 13:29:21 +01:00
Ingo Weinhold
6722e1ae43 BPackageManager: Add mandatory constructor parameters
Require the installation interface and the user interaction handle to
be passed to the constructor. Formerly, derived classes set them
manually in their constructors. This makes using the class without
having to subclass it possible.
2013-11-21 13:29:20 +01:00
Ingo Weinhold
88706cfaa5 package kit: Add API for parsing resolvable expression strings
* Add BPackageInfo::ParseResolvableExpressionString().
* Add BPackageResolvableExpression constructor and SetTo() taking an
  expression string.
2013-11-21 13:29:20 +01:00
Ingo Weinhold
23c521cf5e find_path*(): Improve B_FIND_PATH_IMAGE_PATH handling
* get_file_attribute(): Use O_NOTRAVERSE, so we correctly read the
  attribute from symlinks.
* internal_path_for_path(): Shuffle things around a bit: The dependency
  is resolved before handling B_FIND_PATH_PACKAGE_PATH, now. This adds
  support for getting the package file for a dependency. The dependency
  was ignored in this case before.
* Use kSystemPackageLinksDirectory instead of hard-coding "/packages".
2013-11-21 13:29:20 +01:00
Ingo Weinhold
d0126238fd packagefs: Automatic package attributes for packages symlinks
Add automatically generated attributes "SYS:PACKAGE" and
"SYS:PACKAGE_FILE" to the /packages/... directories and symlinks.
2013-11-21 13:29:20 +01:00
Ingo Weinhold
4c61288e73 packagefs: Refactor UnpackingAttributeDirectoryCookie
Pull out a reusable base class AutoPackageAttributeDirectoryCookie.
2013-11-21 13:29:19 +01:00
Pawel Dziepak
14e36af649 kernel[/util]: Fix debug builds 2013-11-21 03:24:54 +01:00
Pawel Dziepak
024541a4c8 kernel: Improve rw_spinlock implementation
* Add more debug checks
 * Reduce the number of executed instructions that lock the bus.
2013-11-21 02:25:03 +01:00
Rene Gollent
79b1f63e81 Fix SerialConnect gcc4 build.
- Add missing forward declaration for BFilePanel.
hrev46400
2013-11-20 19:37:55 -05:00
Rene Gollent
3cfd6956e9 Revert "serialconnect: Fix gcc4 build"
This reverts commit 1eb5facaf43e5423e39cae752817f2d68881593e.
2013-11-20 19:36:56 -05:00
John Scipione
22d7435282 screen_blanker: Check if be_app is NULL
... before using it after dynamic_cast. Fixes CID 1130496
hrev46399
2013-11-20 19:04:14 -05:00
Alexander von Gluck IV
1eb5facaf4 serialconnect: Fix gcc4 build
* SerialWindow.h mentions BFilePanel and needs the
  include statement
* Patch submitted by Urias McCullough
hrev46398
2013-11-20 18:03:54 -06:00
Pawel Dziepak
6fb61d001a scheduler: Preallocate temporary heaps for debug commands 2013-11-21 00:59:40 +01:00
Pawel Dziepak
308f594e2a kernel, libroot: Make scheduler modes interface public 2013-11-20 23:32:40 +01:00
Adrien Destugues
3d5714e20d Add SerialConnect to HaikuImage.
It's now complete enough.
hrev46397
2013-11-20 22:39:17 +01:00
Adrien Destugues
ccc6b9be5b Make SerialConnect more complete
* Mark the current connected device, or disable "Disconnect" menu when
there is no connection.
* Save and restore serial port settings
* Improve drawing code: make sure the border around the termview is
repainted, and do not leave a 1px space between lines unpainted.
2013-11-20 22:39:16 +01:00
Adrien Destugues
5c4dd6047b Remove debug print. 2013-11-20 22:39:14 +01:00
Pawel Dziepak
cd1e7814a9 scheduler: Reduce scheduler mode lock cache bouncing 2013-11-20 21:49:31 +01:00
Pawel Dziepak
683b9bbf07 scheduler: Improve power saving mode, part 2
Consequences of committing & pushing too quickly...
2013-11-20 21:21:31 +01:00
Pawel Dziepak
ecfd444935 scheduler: Improve power saving mode
* Remove possibility to temporarily disable small task packing.
 * When small task packing target gets overloaded continue packing
   threads on another core, but avoid migrating the already packed
   ones.

Scheduler still tends to needlessly migrate threads to another cores
when under heavier load, but it is now much better than before.
2013-11-20 20:52:11 +01:00
Pawel Dziepak
3eb4224bf6 kernel: Make sure mutex::holder is set to a valid value 2013-11-20 17:53:39 +01:00
Pawel Dziepak
57d5d678f2 x86_64: Fix atomic functions 2013-11-20 17:02:51 +01:00
Ingo Weinhold
5fc2757a74 Add user settable HAIKU_REVISION build variable
Can be set to a revision string (hrev4...) to override the revision
determined via git. Useful when the repository doesn't have tags.
hrev46396
2013-11-20 16:42:05 +01:00
Ezo
1329152b52 Fixed possible bug resulting in not null-terminated string
Signed-off-by: Ingo Weinhold <ingo_weinhold@gmx.de>
hrev46395
2013-11-20 16:07:07 +01:00
Ingo Weinhold
c04f3a625a boot loader: Add safe mode blacklist submenu
It's a browser for the system package content, where entries can be
selected to blacklist them. The selected entries are removed from the
packagefs instance in the boot loader, so that e.g. selected drivers
won't be picked up. The paths are also added to the safe mode driver
settings and will be interpreted when the system packagefs instance is
mounted by the kernel.
hrev46394
2013-11-20 16:00:35 +01:00
Ingo Weinhold
f2620e4714 boot loader: add_safe_mode_settings(): Make parameter const 2013-11-20 16:00:34 +01:00
Ingo Weinhold
6c7abe9829 boot loader: Menu[Item] API improvements
* Make Menu and MenuItem polymorphic.
* MenuItem:
  - Make SetMarked() virtual, so it can be overridden.
  - Add SetSubmenu() and Supermenu().
  - Delete the submenu in the destructor.
* Menu:
  - Add Entered()/Exited() hooks. They frame the time the user navigates
    the menu or any of its submenus. The hooks allow for subclasses
    populating their item list dynamically.
  - Add SortItems().
* Update boot loader menu copyright text to include 2013, now that it is
  over soon. :-)
2013-11-20 16:00:34 +01:00
Ingo Weinhold
435fb01509 DoublyLinkedList: Add Sort() 2013-11-20 16:00:34 +01:00
Ingo Weinhold
7e7f482590 SinglyLinkedList: Missing include 2013-11-20 16:00:34 +01:00
Pawel Dziepak
c4ac37a35e scheduler: Try to pack IRQs in power saving mode 2013-11-20 12:52:05 +01:00
Pawel Dziepak
9c2e74da04 scheduler: Move mode specific logic to separate files 2013-11-20 09:46:59 +01:00
Puck Meerburg
658491b898 Fixed #9952.
* Delay of the password lock for a few seconds

Signed-off-by: Jérôme Duval <jerome.duval@gmail.com>
hrev46393
2013-11-19 20:34:06 +01:00
Jérôme Duval
72950e7c15 runtime_loader: fixes the 64-bit build.
1/ error: no matching function for call to 'min(long unsigned int,
uint32&)'.
2/ error: comparison between signed and unsigned integer expressions.
hrev46392
2013-11-19 20:17:08 +01:00
Ingo Weinhold
3a7e0b0014 packagefs: Support blacklisting entries in packages
In each installation location, it is now possible to create a settings
file "packages" that allows to blacklist entries contained in packages.
The format is:

Package <package name> {
	EntryBlacklist {
		<entry path>
		...
	}
}
...

<package name> is the base name (no version) of the respective package
(e.g. "haiku"), <entry path> is an installation location relative path
(e.g. "add-ons/Translators/FooTranslator").

Blacklisted entries will be ignored by packagefs, i.e. they won't appear
in the file system. This addresses the issue that it may be necessary to
remove a problematic file (e.g. driver, add-on, or library), which would
otherwise require editing the containing package file.

The settings file is not not "live". Changes take effect only after
reboot (respectively when remounting the concerned packagefs volume).
hrev46391
2013-11-19 15:30:34 +01:00